function block_edit_preprocess_block in Block edit 6
Preprocess function to add the block edit links to blocks by concatenating with the content variable.
File
- ./
block_edit.module, line 58 - Adds edit links to blocks and nodes to make administration more intuitive.
Code
function block_edit_preprocess_block(&$vars) {
if (!block_edit_visible('block', $vars)) {
return;
}
$block = $vars['block'];
$vars['block_edit_links_array'] = array();
if (user_access('administer blocks')) {
// Display if not a Views block, or if Views is not already showing them.
if ($block->module != 'views' || variable_get('views_no_hover_links', FALSE)) {
$vars['block_edit_links_array'][] = array(
'title' => t('[Configure]'),
'href' => "admin/build/block/configure/{$block->module}/{$block->delta}",
'query' => drupal_get_destination(),
);
}
if ($block->module == 'nodeblock') {
$vars['block_edit_links_array'][] = array(
'title' => t('[Edit node]'),
'href' => "node/{$block->delta}/edit",
'query' => drupal_get_destination(),
);
}
}
if (user_access('administer menu')) {
if ($block->module == 'menu' || $block->module == 'user' && $block->delta == 1) {
$menu_name = $block->module == 'user' ? 'navigation' : $block->delta;
$vars['block_edit_links_array'][] = array(
'title' => t('[List links]'),
'href' => "admin/build/menu-customize/{$menu_name}",
'query' => drupal_get_destination(),
);
$vars['block_edit_links_array'][] = array(
'title' => t('[Edit menu]'),
'href' => "admin/build/menu-customize/{$menu_name}/edit",
'query' => drupal_get_destination(),
);
}
elseif ($block->module == 'menu_block' || $block->module == 'nice_menus') {
list($menu_name, ) = split(':', variable_get("menu_block_{$block->delta}_parent", 'navigation:0'));
$vars['block_edit_links_array'][] = array(
'title' => t('[List links]'),
'href' => "admin/build/menu-customize/{$menu_name}",
'query' => drupal_get_destination(),
);
$vars['block_edit_links_array'][] = array(
'title' => t('[Edit menu]'),
'href' => "admin/build/menu-customize/{$menu_name}/edit",
'query' => drupal_get_destination(),
);
}
}
drupal_alter('block_edit_links', $vars['block_edit_links_array'], $vars);
$edit_links = theme('links', $vars['block_edit_links_array']);
$id = 'block-edit-link-' . $block->module . '_' . $block->delta;
$original_content = $vars['block']->content;
$vars['block_edit_links'] = '<div class="block-edit-link" id="' . $id . '">' . $edit_links . '</div>';
$vars['block']->content = $vars['block_edit_links'] . $original_content;
}