function media_browser_plus_grid_view_form in Media Browser Plus 7
Same name and namespace in other branches
- 7.2 media_browser_plus.module \media_browser_plus_grid_view_form()
Appends main grid view form.
2 calls to media_browser_plus_grid_view_form()
- media_browser_plus_form_media_admin_alter in ./
media_browser_plus.module - Alter the media browser from to enable new UI
- media_browser_plus_library_browser in ./
media_browser_plus.module - Creates the Extended Library for the media browser popup.
File
- ./
media_browser_plus.module, line 1884 - Adds fields to the media browser forms for better UX
Code
function media_browser_plus_grid_view_form($library_mode = FALSE, $multiselect = FALSE) {
// Load the media folders.
$vocabulary = taxonomy_vocabulary_machine_name_load('media_folders');
$folders = taxonomy_get_tree($vocabulary->vid);
$folders = _media_browser_plus_filter_folders($folders);
$list = _media_browser_plus_create_relationship_list($folders, TRUE);
$folders = _media_browser_plus_folder_hierarchy_list($list);
// Build the folder form.
$form['admin']['folder'] = array(
'#type' => 'markup',
'#markup' => '<div id="folder" style="height:' . variable_get('media_grid_window_height') . 'px;">' . $folders . ' </div>',
);
$form['admin']['files']['#prefix'] = '<div class="media-display-thumbnails media-clear clearfix">' . '<ul class="media-list-thumbnails" style="height:' . variable_get('media_grid_window_height') . 'px;">';
// Aetting up the header.
$header = array(
array(
'data' => t('Folders'),
'width' => '200',
),
array(
'data' => t('Media Files'),
'width' => '*',
),
);
// and the data
$form['buttons'] = array();
$form['buttons']['selection_assets'] = array(
'#type' => 'markup',
'#markup' => '<a href="#media_folder_table" id="media_main_view_select_all" >' . t('Select All') . '</a>' . '<a href="#media_folder_table" id="media_main_view_deselect_all" >' . t('Deselect All') . '</a>',
);
if (!$library_mode) {
if (media_access('view')) {
$form['buttons']['view_media'] = array(
'#type' => 'button',
'#attributes' => array(
'id' => 'media_buttons_view',
),
'#value' => t('View'),
);
}
if (media_access('preview')) {
$form['buttons']['preview_media'] = array(
'#type' => 'button',
'#attributes' => array(
'id' => 'media_buttons_preview',
),
'#value' => t('Preview'),
);
}
if (media_access('edit')) {
$form['buttons']['edit_media'] = array(
'#type' => 'submit',
'#attributes' => array(
'id' => 'media_buttons_edit',
),
'#submit' => array(
'media_browser_plus_edit_multiple_redirect',
),
'#validate' => array(
'media_browser_plus_media_admin_validate',
),
'#value' => t('Edit'),
);
}
if (media_access('edit')) {
// edit-submit
$form['buttons']['delete_media'] = array(
'#type' => 'submit',
'#submit' => array(
'media_browser_plus_delete_multiple_redirect',
),
'#validate' => array(
'media_browser_plus_media_admin_validate',
),
'#value' => t('Delete'),
);
}
}
$form['buttons']['select_media'] = array(
'#type' => 'button',
'#attributes' => array(
'id' => 'media_buttons_select',
),
'#value' => t('Add to Media Basket'),
);
if ($library_mode && !$multiselect) {
// Remove select/deselect all.
unset($form['buttons']['selection_assets']);
// Change "Add to media basket" to process with selection.
$form['buttons']['select_media'] = _media_browser_plus_media_basket_select_button();
}
$options = array(
array(
'categories' => array(
'data' => drupal_render($form['admin']['folder']),
),
'media' => array(
'data' => '<div class="media-display-thumbnails media-clear clearfix">' . '<ul class="media-list-thumbnails" id="media-thumb-list" style="height: ' . variable_get('media_grid_window_height') . 'px;">' . '</ul></div>',
),
),
array(
'categories' => array(
'data' => '',
),
'media' => array(
'data' => '',
'id' => array(
'media_browser_plus_pages',
),
),
),
);
// If no library mode with single selection add media basket buttons.
if (!$library_mode || $multiselect) {
$options[] = array(
'categories' => array(
'data' => '',
),
'media' => array(
'data' => drupal_render($form['buttons']),
'id' => array(
'media_browser_plus_selection_panel',
),
),
);
}
// Table setup.
$table = array(
'header' => $header,
'rows' => $options,
'attributes' => array(
'id' => 'media_folder_table',
),
'empty' => t('No media added yet.'),
);
// Return themed table.
$output = array(
'#type' => 'markup',
'#markup' => theme('table', $table),
'buttons' => $form['buttons'],
);
if ($library_mode && !$multiselect) {
$output['#markup'] .= drupal_render($form['buttons']);
}
return $output;
}