diff --git a/zen/template.block-editing.inc b/zen/template.block-editing.inc
new file mode 100644
index 0000000000000000000000000000000000000000..9dc95c5637f32140783983edb473779597a3b4a8
--- /dev/null
+++ b/zen/template.block-editing.inc
@@ -0,0 +1,92 @@
+module == 'block') {
+ $edit_links[] = l('' . t('edit block') . '', 'admin/build/block/configure/' . $block->module . '/' . $block->delta,
+ array(
+ 'attributes' => array(
+ 'title' => t('edit the content of this block'),
+ 'class' => 'block-edit',
+ ),
+ 'query' => drupal_get_destination(),
+ 'html' => TRUE,
+ )
+ );
+ }
+ // Display 'configure' for other blocks.
+ else {
+ $edit_links[] = l('' . t('configure') . '', 'admin/build/block/configure/' . $block->module . '/' . $block->delta,
+ array(
+ 'attributes' => array(
+ 'title' => t('configure this block'),
+ 'class' => 'block-config',
+ ),
+ 'query' => drupal_get_destination(),
+ 'html' => TRUE,
+ )
+ );
+ }
+
+ // Display 'edit view' for Views blocks.
+ if ($block->module == 'views' && user_access('administer views')) {
+ $edit_links[] = l('' . t('edit view') . '', 'admin/build/views/' . $block->delta . '/edit',
+ array(
+ 'attributes' => array(
+ 'title' => t('edit the view that defines this block'),
+ 'class' => 'block-edit-view',
+ ),
+ 'query' => drupal_get_destination(),
+ 'fragment' => 'edit-block',
+ 'html' => TRUE,
+ )
+ );
+ }
+ // Display 'edit menu' for Menu blocks.
+ elseif (($block->module == 'menu' || ($block->module == 'user' && $block->delta == 1)) && user_access('administer menu')) {
+ $menu_name = ($block->module == 'user') ? 'navigation' : $block->delta;
+ $edit_links[] = l('' . t('edit menu') . '', 'admin/build/menu-customize/' . $menu_name,
+ array(
+ 'attributes' => array(
+ 'title' => t('edit the menu that defines this block'),
+ 'class' => 'block-edit-menu',
+ ),
+ 'query' => drupal_get_destination(),
+ 'html' => TRUE,
+ )
+ );
+ }
+ // Display 'edit menu' for Menu block blocks.
+ elseif ($block->module == 'menu_block' && user_access('administer menu')) {
+ $menu_name = variable_get('menu_block_' . $block->delta . '_menu_name', 'navigation');
+ $edit_links[] = l('' . t('edit menu') . '', 'admin/build/menu-customize/' . $menu_name,
+ array(
+ 'attributes' => array(
+ 'title' => t('edit the menu that defines this block'),
+ 'class' => 'block-edit-menu',
+ ),
+ 'query' => drupal_get_destination(),
+ 'html' => TRUE,
+ )
+ );
+ }
+
+ $vars['edit_links_array'] = $edit_links;
+ $vars['edit_links'] = '
' . implode(' ', $edit_links) . '
';
+}
diff --git a/zen/template.php b/zen/template.php
index d19da8c9ad3138c970cb609e2be92d65a52d3744..c9821f9d209a2b80313adb43e4cf26f81b490c57 100644
--- a/zen/template.php
+++ b/zen/template.php
@@ -266,65 +266,11 @@ function zen_preprocess_block(&$vars, $hook) {
$block_classes[] = 'count-' . $vars['id'];
$vars['block_classes'] = implode(' ', $block_classes);
+ $vars['edit_links_array'] = array();
$vars['edit_links'] = '';
if (theme_get_setting('zen_block_editing') && user_access('administer blocks')) {
- // Display 'edit block' for custom blocks
- if ($block->module == 'block') {
- $edit_links[] = l('' . t('edit block') . '', 'admin/build/block/configure/' . $block->module . '/' . $block->delta,
- array(
- 'attributes' => array(
- 'title' => t('edit the content of this block'),
- 'class' => 'block-edit',
- ),
- 'query' => drupal_get_destination(),
- 'html' => TRUE,
- )
- );
- }
- // Display 'configure' for other blocks
- else {
- $edit_links[] = l('' . t('configure') . '', 'admin/build/block/configure/' . $block->module . '/' . $block->delta,
- array(
- 'attributes' => array(
- 'title' => t('configure this block'),
- 'class' => 'block-config',
- ),
- 'query' => drupal_get_destination(),
- 'html' => TRUE,
- )
- );
- }
-
- // Display 'administer views' for views blocks
- if ($block->module == 'views' && user_access('administer views')) {
- $edit_links[] = l('' . t('edit view') . '', 'admin/build/views/' . $block->delta . '/edit',
- array(
- 'attributes' => array(
- 'title' => t('edit the view that defines this block'),
- 'class' => 'block-edit-view',
- ),
- 'query' => drupal_get_destination(),
- 'fragment' => 'edit-block',
- 'html' => TRUE,
- )
- );
- }
- // Display 'edit menu' for menu blocks
- elseif (($block->module == 'menu' || ($block->module == 'user' && $block->delta == 1)) && user_access('administer menu')) {
- $menu_name = ($block->module == 'user') ? 'navigation' : $block->delta;
- $edit_links[] = l('' . t('edit menu') . '', 'admin/build/menu-customize/' . $menu_name,
- array(
- 'attributes' => array(
- 'title' => t('edit the menu that defines this block'),
- 'class' => 'block-edit-menu',
- ),
- 'query' => drupal_get_destination(),
- 'html' => TRUE,
- )
- );
- }
- $vars['edit_links_array'] = $edit_links;
- $vars['edit_links'] = '' . implode(' ', $edit_links) . '
';
+ include_once './' . drupal_get_path('theme', 'zen') . '/template.block-editing.inc';
+ zen_preprocess_block_editing($vars, $hook);
}
}