123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502 |
- <?php
- function tao_css_alter(&$css) {
- $exclude = array(
- 'misc/vertical-tabs.css' => FALSE,
- 'modules/aggregator/aggregator.css' => FALSE,
- 'modules/block/block.css' => FALSE,
- 'modules/book/book.css' => FALSE,
- 'modules/comment/comment.css' => FALSE,
- 'modules/dblog/dblog.css' => FALSE,
- 'modules/file/file.css' => FALSE,
- 'modules/filter/filter.css' => FALSE,
- 'modules/forum/forum.css' => FALSE,
- 'modules/help/help.css' => FALSE,
- 'modules/menu/menu.css' => FALSE,
- 'modules/node/node.css' => FALSE,
- 'modules/openid/openid.css' => FALSE,
- 'modules/poll/poll.css' => FALSE,
- 'modules/profile/profile.css' => FALSE,
- 'modules/search/search.css' => FALSE,
- 'modules/statistics/statistics.css' => FALSE,
- 'modules/syslog/syslog.css' => FALSE,
- 'modules/system/admin.css' => FALSE,
- 'modules/system/maintenance.css' => FALSE,
- 'modules/system/system.css' => FALSE,
- 'modules/system/system.admin.css' => FALSE,
- 'modules/system/system.base.css' => FALSE,
- 'modules/system/system.maintenance.css' => FALSE,
- 'modules/system/system.menus.css' => FALSE,
- 'modules/system/system.theme.css' => FALSE,
- 'modules/taxonomy/taxonomy.css' => FALSE,
- 'modules/tracker/tracker.css' => FALSE,
- 'modules/update/update.css' => FALSE,
- 'modules/user/user.css' => FALSE,
- );
- $css = array_diff_key($css, $exclude);
- }
- function tao_theme() {
- $items = array();
-
- $items['block'] = array(
- 'arguments' => array('block' => NULL),
- 'template' => 'object',
- 'path' => drupal_get_path('theme', 'tao') .'/templates',
- );
- $items['comment'] = array(
- 'arguments' => array('comment' => NULL, 'node' => NULL, 'links' => array()),
- 'template' => 'object',
- 'path' => drupal_get_path('theme', 'tao') .'/templates',
- );
- $items['node'] = array(
- 'arguments' => array('node' => NULL, 'teaser' => FALSE, 'page' => FALSE),
- 'template' => 'node',
- 'path' => drupal_get_path('theme', 'tao') .'/templates',
- );
- $items['fieldset'] = array(
- 'arguments' => array('element' => array()),
- 'template' => 'fieldset',
- 'path' => drupal_get_path('theme', 'tao') .'/templates',
- );
-
- $items['pager_list'] = array('arguments' => array(
- 'tags' => array(),
- 'limit' => 10,
- 'element' => 0,
- 'parameters' => array(),
- 'quantity' => 9,
- ));
- return $items;
- }
- function tao_preprocess_html(&$vars) {
- $vars['classes_array'][] = 'tao';
-
- $tao_path = drupal_get_path('theme', 'tao');
- $info = drupal_parse_info_file($tao_path.'/tao.info');
- $ie = $info['stylesheets']['ie'];
- foreach ($ie as $key => $value) {
- drupal_add_css(
- $tao_path.'/'.$value,
- array(
- 'browsers' => array(
- 'IE' => $key,
- '!IE' => FALSE
- )
- )
- );
- }
- }
- function tao_preprocess_page(&$vars) {
-
- $vars['primary_local_tasks'] = menu_primary_local_tasks();
- $vars['secondary_local_tasks'] = menu_secondary_local_tasks();
-
- $vars['site_name'] = l($vars['site_name'], '<front>');
- }
- function tao_preprocess_block(&$vars) {
- $vars['hook'] = 'block';
- $vars['attributes_array']['id'] = $vars['block_html_id'];
- $vars['attributes_array']['class'] = $vars['classes_array'];
- $vars['title_attributes_array']['class'][] = $vars['hook'] . '-title';
- $vars['title_attributes_array']['class'][] = 'clearfix';
- $vars['content_attributes_array']['class'][] = $vars['hook'] . '-content';
- $vars['content_attributes_array']['class'][] = 'clearfix';
- if ($vars['block']->module == 'block') {
- $vars['content_attributes_array']['class'][] = 'prose';
- }
- $vars['title'] = !empty($vars['block']->subject) ? $vars['block']->subject : '';
-
-
-
-
-
- if ($vars['block']->module === 'system' && $vars['block']->delta === 'main') {
- $vars['classes_array'] = array_diff($vars['classes_array'], array('block'));
- $vars['classes_array'][] = 'block-page-content';
- }
- }
- function tao_preprocess_node(&$vars) {
- $vars['hook'] = 'node';
- $vars['classes_array'][] = 'clearfix';
- $vars['attributes_array']['id'] = "node-{$vars['node']->nid}";
- $vars['title_attributes_array']['class'][] = $vars['hook'] . '-title';
- $vars['title_attributes_array']['class'][] = 'clearfix';
- $vars['content_attributes_array']['class'][] = $vars['hook'] . '-content';
- $vars['content_attributes_array']['class'][] = 'clearfix';
- $vars['content_attributes_array']['class'][] = 'prose';
- if (isset($vars['content']['links'])) {
- $vars['links'] = $vars['content']['links'];
- unset($vars['content']['links']);
- }
- if (isset($vars['content']['comments'])) {
- $vars['post_object']['comments'] = $vars['content']['comments'];
- unset($vars['content']['comments']);
- }
- if ($vars['display_submitted']) {
- $vars['submitted'] = t('Submitted by !username on !datetime', array(
- '!username' => $vars['name'],
- '!datetime' => $vars['date'],
- ));
- }
- }
- function tao_preprocess_comment(&$vars) {
- $vars['hook'] = 'comment';
- $vars['classes_array'][] = 'clearfix';
- $vars['title_attributes_array']['class'][] = $vars['hook'] . '-title';
- $vars['title_attributes_array']['class'][] = 'clearfix';
- $vars['content_attributes_array']['class'][] = $vars['hook'] . '-content';
- $vars['content_attributes_array']['class'][] = 'clearfix';
- $vars['submitted'] = t('Submitted by !username on !datetime', array(
- '!username' => $vars['author'],
- '!datetime' => $vars['created'],
- ));
- if (isset($vars['content']['links'])) {
- $vars['links'] = $vars['content']['links'];
- unset($vars['content']['links']);
- }
- }
- function tao_preprocess_fieldset(&$vars) {
- $element = $vars['element'];
- _form_set_class($element, array('form-wrapper'));
- $vars['attributes'] = isset($element['#attributes']) ? $element['#attributes'] : array();
- $vars['attributes']['class'][] = 'fieldset';
- if (!empty($element['#title'])) {
- $vars['attributes']['class'][] = 'titled';
- }
- if (!empty($element['#id'])) {
- if (!empty($element["#attributes"]["id"])) {
- $vars['attributes']['id'] = $element["#attributes"]["id"];
- } else {
- $vars['attributes']['id'] = $element['#id'];
- }
- }
- $description = !empty($element['#description']) ? "<div class='description'>{$element['#description']}</div>" : '';
- $children = !empty($element['#children']) ? $element['#children'] : '';
- $value = !empty($element['#value']) ? $element['#value'] : '';
- $vars['content'] = $description . $children . $value;
- $vars['title'] = !empty($element['#title']) ? $element['#title'] : '';
- $vars['hook'] = 'fieldset';
- }
- function tao_preprocess_field(&$vars) {
-
- if ($vars['element']['#field_type'] === 'text_with_summary') {
- $vars['classes_array'][] = 'prose';
- }
- }
- function tao_textarea($vars) {
- $element = $vars['element'];
- $element['#attributes']['name'] = $element['#name'];
- $element['#attributes']['id'] = $element['#id'];
- $element['#attributes']['cols'] = $element['#cols'];
- $element['#attributes']['rows'] = $element['#rows'];
- _form_set_class($element, array('form-textarea'));
- $wrapper_attributes = array(
- 'class' => array('form-textarea-wrapper'),
- );
-
- if (!empty($element['#resizable'])) {
- $wrapper_attributes['class'][] = 'resizable';
- }
- $output = '<div' . drupal_attributes($wrapper_attributes) . '>';
- $output .= '<textarea' . drupal_attributes($element['#attributes']) . '>' . check_plain($element['#value']) . '</textarea>';
- $output .= '</div>';
- return $output;
- }
- function tao_pager($vars) {
- $tags = $vars['tags'];
- $element = $vars['element'];
- $parameters = $vars['parameters'];
- $quantity = $vars['quantity'];
- $pager_list = theme('pager_list', $vars);
- $links = array();
- $links['pager-first'] = theme('pager_first', array(
- 'text' => (isset($tags[0]) ? $tags[0] : t('First')),
- 'element' => $element,
- 'parameters' => $parameters
- ));
- $links['pager-previous'] = theme('pager_previous', array(
- 'text' => (isset($tags[1]) ? $tags[1] : t('Prev')),
- 'element' => $element,
- 'interval' => 1,
- 'parameters' => $parameters
- ));
- $links['pager-next'] = theme('pager_next', array(
- 'text' => (isset($tags[3]) ? $tags[3] : t('Next')),
- 'element' => $element,
- 'interval' => 1,
- 'parameters' => $parameters
- ));
- $links['pager-last'] = theme('pager_last', array(
- 'text' => (isset($tags[4]) ? $tags[4] : t('Last')),
- 'element' => $element,
- 'parameters' => $parameters
- ));
- $links = array_filter($links);
- $pager_links = theme('links', array(
- 'links' => $links,
- 'attributes' => array('class' => 'links pager pager-links')
- ));
- if ($pager_list) {
- return '<div class="pager clearfix">' . $pager_list . ' ' . $pager_links . '</div>';
- }
- }
- function tao_pager_list($vars) {
- $tags = $vars['tags'];
- $element = $vars['element'];
- $parameters = $vars['parameters'];
- $quantity = $vars['quantity'];
- global $pager_page_array, $pager_total;
- if ($pager_total[$element] > 1) {
-
-
- $pager_middle = ceil($quantity / 2);
-
- $pager_current = $pager_page_array[$element] + 1;
-
- $pager_first = $pager_current - $pager_middle + 1;
-
- $pager_last = $pager_current + $quantity - $pager_middle;
-
- $pager_max = $pager_total[$element];
-
-
- $i = $pager_first;
- if ($pager_last > $pager_max) {
-
- $i = $i + ($pager_max - $pager_last);
- $pager_last = $pager_max;
- }
- if ($i <= 0) {
-
- $pager_last = $pager_last + (1 - $i);
- $i = 1;
- }
-
- $links = array();
-
- if ($i != $pager_max) {
-
- for ($i; $i <= $pager_last && $i <= $pager_max; $i++) {
- if ($i < $pager_current) {
- $links["$i pager-item"] = theme('pager_previous', array(
- 'text' => $i,
- 'element' => $element,
- 'interval' => ($pager_current - $i),
- 'parameters' => $parameters
- ));
- }
- if ($i == $pager_current) {
- $links["$i pager-current"] = array('title' => $i);
- }
- if ($i > $pager_current) {
- $links["$i pager-item"] = theme('pager_next', array(
- 'text' => $i,
- 'element' => $element,
- 'interval' => ($i - $pager_current),
- 'parameters' => $parameters
- ));
- }
- }
- return theme('links', array(
- 'links' => $links,
- 'attributes' => array('class' => 'links pager pager-list')
- ));
- }
- }
- return '';
- }
- function tao_pager_link($vars) {
- $text = $vars['text'];
- $page_new = $vars['page_new'];
- $element = $vars['element'];
- $parameters = $vars['parameters'];
- $attributes = $vars['attributes'];
- $page = isset($_GET['page']) ? $_GET['page'] : '';
- if ($new_page = implode(',', pager_load_array($page_new[$element], $element, explode(',', $page)))) {
- $parameters['page'] = $new_page;
- }
- $query = array();
- if (count($parameters)) {
- $query = drupal_get_query_parameters($parameters, array());
- }
- if ($query_pager = pager_get_query_parameters()) {
- $query = array_merge($query, $query_pager);
- }
-
- if (!isset($attributes['title'])) {
- static $titles = NULL;
- if (!isset($titles)) {
- $titles = array(
- t('« first') => t('Go to first page'),
- t('‹ previous') => t('Go to previous page'),
- t('next ›') => t('Go to next page'),
- t('last »') => t('Go to last page'),
- );
- }
- if (isset($titles[$text])) {
- $attributes['title'] = $titles[$text];
- }
- else if (is_numeric($text)) {
- $attributes['title'] = t('Go to page @number', array('@number' => $text));
- }
- }
- return array(
- 'title' => $text,
- 'href' => $_GET['q'],
- 'attributes' => $attributes,
- 'query' => count($query) ? $query : NULL,
- );
- }
- function tao_views_mini_pager($vars) {
- $tags = $vars['tags'];
- $quantity = $vars['quantity'];
- $element = $vars['element'];
- $parameters = $vars['parameters'];
- global $pager_page_array, $pager_total;
-
-
- $pager_middle = ceil($quantity / 2);
-
- $pager_current = $pager_page_array[$element] + 1;
-
- $pager_max = $pager_total[$element];
-
- $links = array();
- if ($pager_total[$element] > 1) {
- $links['pager-previous'] = theme('pager_previous', array(
- 'text' => (isset($tags[1]) ? $tags[1] : t('Prev')),
- 'element' => $element,
- 'interval' => 1,
- 'parameters' => $parameters
- ));
- $links['pager-current'] = array(
- 'title' => t('@current of @max', array(
- '@current' => $pager_current,
- '@max' => $pager_max)
- )
- );
- $links['pager-next'] = theme('pager_next', array(
- 'text' => (isset($tags[3]) ? $tags[3] : t('Next')),
- 'element' => $element,
- 'interval' => 1,
- 'parameters' => $parameters
- ));
- return theme('links', array('links' => $links, 'attributes' => array('class' => array('links', 'pager', 'views-mini-pager'))));
- }
- }
|