function media_browser_plus_library_browser in Media Browser Plus 7.2
Same name and namespace in other branches
- 7 media_browser_plus.module \media_browser_plus_library_browser()
Creates the Extended Library for the media browser popup.
Parameters
array $form: The form structure.
array $form_state: The form state.
bool $multiselect: Allow multiple selection.
array $types: The allowed file types.
Return value
array The form extended with the necessary library stuff.
1 string reference to 'media_browser_plus_library_browser'
File
- ./
media_browser_plus.module, line 1667 - Adds fields to the media browser forms for better UX
Code
function media_browser_plus_library_browser($form, &$form_state, $multiselect, $types) {
$path = drupal_get_path('module', 'media_browser_plus');
// Assemble library from grid view.
$form['#attached']['library'][] = array(
'media_browser_plus',
'media_browser_plus',
);
$form['#attached']['library'][] = array(
'media_browser_plus',
'colorbox',
);
// Set base href for javascript requests.
$settings = media_browser_plus_main_view_javascript_settings();
$settings['media_browser_plus']['multiselect'] = $multiselect;
$settings['media_browser_plus']['folder_dnd_enabled'] = FALSE;
// Setting filter condition.
$filter = array(
array(
'property' => array(
'type',
$types,
'IN',
),
),
);
$settings['media_browser_plus']['filter'] = drupal_json_encode($filter);
// Attach settings.
$form['#attached']['js'][] = array(
'type' => 'setting',
'data' => $settings,
);
// Check access rights.
if (!media_browser_plus_access('media grid view')) {
drupal_access_denied();
return array();
}
// Adding grid view js and css.
$form['#attached']['js'][] = $path . '/js/media_browser_plus.admin.js';
$form['#attached']['js'][] = $path . '/js/media_browser_plus.library.js';
drupal_add_library('system', 'ui.draggable');
drupal_add_library('system', 'ui.droppable');
// Removing options form part.
unset($form['options']);
if (!media_browser_plus_access('media list view') || !media_browser_plus_access('media grid view')) {
unset($form['switch']);
}
// Add main grid view window.
$form['admin'] = media_browser_plus_grid_view_form(TRUE, $multiselect, $form_state);
// Append media basket only for multi select.
if ($multiselect) {
$form['media-basket'] = media_browser_plus_media_basket_form(TRUE, $form_state);
}
return $form;
}