1<?php 2 3/** 4 * Override or insert variables into the maintenance page template. 5 */ 6function seven_preprocess_maintenance_page(&$vars) { 7 // While markup for normal pages is split into page.tpl.php and html.tpl.php, 8 // the markup for the maintenance page is all in the single 9 // maintenance-page.tpl.php template. So, to have what's done in 10 // seven_preprocess_html() also happen on the maintenance page, it has to be 11 // called here. 12 seven_preprocess_html($vars); 13} 14 15/** 16 * Override or insert variables into the html template. 17 */ 18function seven_preprocess_html(&$vars) { 19 // Add conditional CSS for IE8 and below. 20 drupal_add_css(path_to_theme() . '/ie.css', array('group' => CSS_THEME, 'browsers' => array('IE' => 'lte IE 8', '!IE' => FALSE), 'weight' => 999, 'preprocess' => FALSE)); 21 // Add conditional CSS for IE7 and below. 22 drupal_add_css(path_to_theme() . '/ie7.css', array('group' => CSS_THEME, 'browsers' => array('IE' => 'lte IE 7', '!IE' => FALSE), 'weight' => 999, 'preprocess' => FALSE)); 23 // Add conditional CSS for IE6. 24 drupal_add_css(path_to_theme() . '/ie6.css', array('group' => CSS_THEME, 'browsers' => array('IE' => 'lte IE 6', '!IE' => FALSE), 'weight' => 999, 'preprocess' => FALSE)); 25} 26 27/** 28 * Override or insert variables into the page template. 29 */ 30function seven_preprocess_page(&$vars) { 31 $vars['primary_local_tasks'] = $vars['tabs']; 32 unset($vars['primary_local_tasks']['#secondary']); 33 $vars['secondary_local_tasks'] = array( 34 '#theme' => 'menu_local_tasks', 35 '#secondary' => $vars['tabs']['#secondary'], 36 ); 37} 38 39/** 40 * Display the list of available node types for node creation. 41 */ 42function seven_node_add_list($variables) { 43 $content = $variables['content']; 44 $output = ''; 45 if ($content) { 46 $output = '<ul class="admin-list">'; 47 foreach ($content as $item) { 48 $output .= '<li class="clearfix">'; 49 $output .= '<span class="label">' . l($item['title'], $item['href'], $item['localized_options']) . '</span>'; 50 $output .= '<div class="description">' . filter_xss_admin($item['description']) . '</div>'; 51 $output .= '</li>'; 52 } 53 $output .= '</ul>'; 54 } 55 else { 56 $output = '<p>' . t('You have not created any content types yet. Go to the <a href="@create-content">content type creation page</a> to add a new content type.', array('@create-content' => url('admin/structure/types/add'))) . '</p>'; 57 } 58 return $output; 59} 60 61/** 62 * Overrides theme_admin_block_content(). 63 * 64 * Use unordered list markup in both compact and extended mode. 65 */ 66function seven_admin_block_content($variables) { 67 $content = $variables['content']; 68 $output = ''; 69 if (!empty($content)) { 70 $output = system_admin_compact_mode() ? '<ul class="admin-list compact">' : '<ul class="admin-list">'; 71 foreach ($content as $item) { 72 $output .= '<li class="leaf">'; 73 $output .= l($item['title'], $item['href'], $item['localized_options']); 74 if (isset($item['description']) && !system_admin_compact_mode()) { 75 $output .= '<div class="description">' . filter_xss_admin($item['description']) . '</div>'; 76 } 77 $output .= '</li>'; 78 } 79 $output .= '</ul>'; 80 } 81 return $output; 82} 83 84/** 85 * Override of theme_tablesort_indicator(). 86 * 87 * Use our own image versions, so they show up as black and not gray on gray. 88 */ 89function seven_tablesort_indicator($variables) { 90 $style = $variables['style']; 91 $theme_path = drupal_get_path('theme', 'seven'); 92 if ($style == 'asc') { 93 return theme('image', array('path' => $theme_path . '/images/arrow-asc.png', 'alt' => t('sort ascending'), 'width' => 13, 'height' => 13, 'title' => t('sort ascending'))); 94 } 95 else { 96 return theme('image', array('path' => $theme_path . '/images/arrow-desc.png', 'alt' => t('sort descending'), 'width' => 13, 'height' => 13, 'title' => t('sort descending'))); 97 } 98} 99 100/** 101 * Implements hook_css_alter(). 102 */ 103function seven_css_alter(&$css) { 104 // Use Seven's vertical tabs style instead of the default one. 105 if (isset($css['misc/vertical-tabs.css'])) { 106 $css['misc/vertical-tabs.css']['data'] = drupal_get_path('theme', 'seven') . '/vertical-tabs.css'; 107 $css['misc/vertical-tabs.css']['type'] = 'file'; 108 } 109 if (isset($css['misc/vertical-tabs-rtl.css'])) { 110 $css['misc/vertical-tabs-rtl.css']['data'] = drupal_get_path('theme', 'seven') . '/vertical-tabs-rtl.css'; 111 $css['misc/vertical-tabs-rtl.css']['type'] = 'file'; 112 } 113 // Use Seven's jQuery UI theme style instead of the default one. 114 if (isset($css['misc/ui/jquery.ui.theme.css'])) { 115 $css['misc/ui/jquery.ui.theme.css']['data'] = drupal_get_path('theme', 'seven') . '/jquery.ui.theme.css'; 116 $css['misc/ui/jquery.ui.theme.css']['type'] = 'file'; 117 } 118} 119