From 8cf3c56044327c05b2594db48e81b0fb49f4a2fc Mon Sep 17 00:00:00 2001 From: Manuel Cillero Date: Tue, 25 Jul 2017 13:55:37 +0200 Subject: [PATCH] New theme base for SuiteDesk --- themes/README.txt | 8 - themes/zen/CHANGELOG.txt | 390 ++++ themes/zen/LICENSE.txt | 274 +++ themes/zen/README-FIRST.txt | 79 + themes/zen/STARTERKIT/README.txt | 127 ++ themes/zen/STARTERKIT/STARTERKIT.info.txt | 96 + themes/zen/STARTERKIT/css/README.txt | 134 ++ .../zen/STARTERKIT/css/block-editing-rtl.css | 10 + themes/zen/STARTERKIT/css/block-editing.css | 25 + themes/zen/STARTERKIT/css/blocks.css | 96 + themes/zen/STARTERKIT/css/comments.css | 79 + .../zen/STARTERKIT/css/drupal6-reference.css | 1983 +++++++++++++++++ themes/zen/STARTERKIT/css/fields.css | 44 + themes/zen/STARTERKIT/css/forms-rtl.css | 46 + themes/zen/STARTERKIT/css/forms.css | 134 ++ themes/zen/STARTERKIT/css/html-reset-rtl.css | 37 + themes/zen/STARTERKIT/css/html-reset.css | 291 +++ themes/zen/STARTERKIT/css/ie.css | 47 + themes/zen/STARTERKIT/css/ie6-rtl.css | 12 + themes/zen/STARTERKIT/css/ie6.css | 105 + .../zen/STARTERKIT/css/layout-fixed-rtl.css | 74 + themes/zen/STARTERKIT/css/layout-fixed.css | 212 ++ .../zen/STARTERKIT/css/layout-liquid-rtl.css | 68 + themes/zen/STARTERKIT/css/layout-liquid.css | 202 ++ themes/zen/STARTERKIT/css/messages-rtl.css | 13 + themes/zen/STARTERKIT/css/messages.css | 53 + themes/zen/STARTERKIT/css/navigation.css | 44 + themes/zen/STARTERKIT/css/nodes.css | 81 + .../zen/STARTERKIT/css/page-backgrounds.css | 38 + themes/zen/STARTERKIT/css/pages-rtl.css | 19 + themes/zen/STARTERKIT/css/pages.css | 314 +++ themes/zen/STARTERKIT/css/panels-styles.css | 6 + themes/zen/STARTERKIT/css/print.css | 73 + themes/zen/STARTERKIT/css/tabs-rtl.css | 22 + themes/zen/STARTERKIT/css/tabs.css | 128 ++ themes/zen/STARTERKIT/css/views-styles.css | 6 + themes/zen/STARTERKIT/css/wireframes.css | 24 + themes/zen/STARTERKIT/favicon.ico | Bin 0 -> 15086 bytes .../zen/STARTERKIT/images-source/messages.psd | Bin 0 -> 199810 bytes .../images-source/panels-layouts.psd | Bin 0 -> 78724 bytes .../STARTERKIT/images-source/screenshot.psd | Bin 0 -> 196125 bytes themes/zen/STARTERKIT/images-source/tabs.psd | Bin 0 -> 56436 bytes .../STARTERKIT/images/messages-error-ie6.png | Bin 0 -> 719 bytes .../zen/STARTERKIT/images/messages-error.png | Bin 0 -> 727 bytes .../STARTERKIT/images/messages-status-ie6.png | Bin 0 -> 610 bytes .../zen/STARTERKIT/images/messages-status.png | Bin 0 -> 560 bytes .../images/messages-warning-ie6.png | Bin 0 -> 693 bytes .../STARTERKIT/images/messages-warning.png | Bin 0 -> 664 bytes themes/zen/STARTERKIT/images/tab-bar.png | Bin 0 -> 160 bytes themes/zen/STARTERKIT/images/tab-left-ie6.png | Bin 0 -> 331 bytes themes/zen/STARTERKIT/images/tab-left.png | Bin 0 -> 303 bytes .../zen/STARTERKIT/images/tab-right-ie6.png | Bin 0 -> 473 bytes themes/zen/STARTERKIT/images/tab-right.png | Bin 0 -> 685 bytes .../STARTERKIT/images/tab-secondary-bg.png | Bin 0 -> 166 bytes .../zen/STARTERKIT/images/tab-secondary.png | Bin 0 -> 195 bytes themes/zen/STARTERKIT/js/README.txt | 14 + themes/zen/STARTERKIT/logo.png | Bin 0 -> 1027 bytes themes/zen/STARTERKIT/screenshot.png | Bin 0 -> 1119 bytes themes/zen/STARTERKIT/template.php | 155 ++ themes/zen/STARTERKIT/templates/README.txt | 82 + themes/zen/STARTERKIT/theme-settings.php | 43 + themes/zen/layouts/README.txt | 5 + .../one-sidebar-first-admin.css | 41 + .../one_sidebar_first/one-sidebar-first.css | 36 + .../one_sidebar_first/one-sidebar-first.png | Bin 0 -> 813 bytes .../one_sidebar_first/one_sidebar_first.inc | 20 + .../zen-one-sidebar-first-admin.tpl.php | 28 + .../zen-one-sidebar-first.tpl.php | 28 + .../one-sidebar-second-admin.css | 42 + .../one_sidebar_second/one-sidebar-second.css | 50 + .../one_sidebar_second/one-sidebar-second.png | Bin 0 -> 812 bytes .../one_sidebar_second/one_sidebar_second.inc | 20 + .../zen-one-sidebar-second-admin.tpl.php | 28 + .../zen-one-sidebar-second.tpl.php | 28 + .../two_sidebars/two-sidebars-admin.css | 53 + .../zen/layouts/two_sidebars/two-sidebars.css | 51 + .../zen/layouts/two_sidebars/two-sidebars.png | Bin 0 -> 817 bytes .../zen/layouts/two_sidebars/two_sidebars.inc | 21 + .../zen-two-sidebars-admin.tpl.php | 33 + .../two_sidebars/zen-two-sidebars.tpl.php | 33 + .../two-sidebars-first-admin.css | 53 + .../two_sidebars_first/two-sidebars-first.css | 51 + .../two_sidebars_first/two-sidebars-first.png | Bin 0 -> 812 bytes .../two_sidebars_first/two_sidebars_first.inc | 21 + .../zen-two-sidebars-first-admin.tpl.php | 33 + .../zen-two-sidebars-first.tpl.php | 33 + .../two-sidebars-second-admin.css | 55 + .../two-sidebars-second.css | 62 + .../two-sidebars-second.png | Bin 0 -> 814 bytes .../two_sidebars_second.inc | 21 + .../zen-two-sidebars-second-admin.tpl.php | 33 + .../zen-two-sidebars-second.tpl.php | 33 + themes/zen/logo.png | Bin 0 -> 1027 bytes themes/zen/template.php | 668 ++++++ themes/zen/templates/block.tpl.php | 66 + themes/zen/templates/comment-wrapper.tpl.php | 45 + themes/zen/templates/comment.tpl.php | 90 + themes/zen/templates/maintenance-page.tpl.php | 107 + themes/zen/templates/node.tpl.php | 104 + themes/zen/templates/page.tpl.php | 252 +++ themes/zen/templates/region-sidebar.tpl.php | 31 + themes/zen/templates/region.tpl.php | 31 + themes/zen/templates/views-view.tpl.php | 92 + themes/zen/theme-settings.php | 127 ++ themes/zen/zen-internals/TODO.txt | 7 + themes/zen/zen-internals/css/generate.sh | 80 + themes/zen/zen-internals/css/ie.css | 47 + themes/zen/zen-internals/css/ie6-rtl.css | 12 + themes/zen/zen-internals/css/ie6.css | 105 + themes/zen/zen-internals/css/print.css | 73 + .../zen-internals/css/theme-settings-rtl.css | 56 + .../zen/zen-internals/css/theme-settings.css | 69 + .../zen/zen-internals/css/zen-fixed-rtl.css | 243 ++ themes/zen/zen-internals/css/zen-fixed.css | 1615 ++++++++++++++ .../zen/zen-internals/css/zen-liquid-rtl.css | 237 ++ themes/zen/zen-internals/css/zen-liquid.css | 1605 +++++++++++++ .../images/messages-error-ie6.png | Bin 0 -> 719 bytes .../zen-internals/images/messages-error.png | Bin 0 -> 727 bytes .../images/messages-status-ie6.png | Bin 0 -> 610 bytes .../zen-internals/images/messages-status.png | Bin 0 -> 560 bytes .../images/messages-warning-ie6.png | Bin 0 -> 693 bytes .../zen-internals/images/messages-warning.png | Bin 0 -> 664 bytes themes/zen/zen-internals/images/tab-bar.png | Bin 0 -> 160 bytes .../zen/zen-internals/images/tab-left-ie6.png | Bin 0 -> 331 bytes themes/zen/zen-internals/images/tab-left.png | Bin 0 -> 303 bytes .../zen-internals/images/tab-right-ie6.png | Bin 0 -> 473 bytes themes/zen/zen-internals/images/tab-right.png | Bin 0 -> 685 bytes .../zen-internals/images/tab-secondary-bg.png | Bin 0 -> 166 bytes .../zen-internals/images/tab-secondary.png | Bin 0 -> 195 bytes themes/zen/zen-internals/js/theme-settings.js | 27 + themes/zen/zen-internals/screenshot.png | Bin 0 -> 3807 bytes .../zen-internals/template.block-editing.inc | 88 + themes/zen/zen-internals/template.comment.inc | 58 + .../template.conditional-styles.inc | 112 + .../zen-internals/template.theme-registry.inc | 137 ++ themes/zen/zen-internals/template.zen.inc | 41 + themes/zen/zen.info | 49 + 137 files changed, 12866 insertions(+), 8 deletions(-) delete mode 100644 themes/README.txt create mode 100644 themes/zen/CHANGELOG.txt create mode 100644 themes/zen/LICENSE.txt create mode 100644 themes/zen/README-FIRST.txt create mode 100644 themes/zen/STARTERKIT/README.txt create mode 100644 themes/zen/STARTERKIT/STARTERKIT.info.txt create mode 100644 themes/zen/STARTERKIT/css/README.txt create mode 100644 themes/zen/STARTERKIT/css/block-editing-rtl.css create mode 100644 themes/zen/STARTERKIT/css/block-editing.css create mode 100644 themes/zen/STARTERKIT/css/blocks.css create mode 100644 themes/zen/STARTERKIT/css/comments.css create mode 100644 themes/zen/STARTERKIT/css/drupal6-reference.css create mode 100644 themes/zen/STARTERKIT/css/fields.css create mode 100644 themes/zen/STARTERKIT/css/forms-rtl.css create mode 100644 themes/zen/STARTERKIT/css/forms.css create mode 100644 themes/zen/STARTERKIT/css/html-reset-rtl.css create mode 100644 themes/zen/STARTERKIT/css/html-reset.css create mode 100644 themes/zen/STARTERKIT/css/ie.css create mode 100644 themes/zen/STARTERKIT/css/ie6-rtl.css create mode 100644 themes/zen/STARTERKIT/css/ie6.css create mode 100644 themes/zen/STARTERKIT/css/layout-fixed-rtl.css create mode 100644 themes/zen/STARTERKIT/css/layout-fixed.css create mode 100644 themes/zen/STARTERKIT/css/layout-liquid-rtl.css create mode 100644 themes/zen/STARTERKIT/css/layout-liquid.css create mode 100644 themes/zen/STARTERKIT/css/messages-rtl.css create mode 100644 themes/zen/STARTERKIT/css/messages.css create mode 100644 themes/zen/STARTERKIT/css/navigation.css create mode 100644 themes/zen/STARTERKIT/css/nodes.css create mode 100644 themes/zen/STARTERKIT/css/page-backgrounds.css create mode 100644 themes/zen/STARTERKIT/css/pages-rtl.css create mode 100644 themes/zen/STARTERKIT/css/pages.css create mode 100644 themes/zen/STARTERKIT/css/panels-styles.css create mode 100644 themes/zen/STARTERKIT/css/print.css create mode 100644 themes/zen/STARTERKIT/css/tabs-rtl.css create mode 100644 themes/zen/STARTERKIT/css/tabs.css create mode 100644 themes/zen/STARTERKIT/css/views-styles.css create mode 100644 themes/zen/STARTERKIT/css/wireframes.css create mode 100644 themes/zen/STARTERKIT/favicon.ico create mode 100644 themes/zen/STARTERKIT/images-source/messages.psd create mode 100644 themes/zen/STARTERKIT/images-source/panels-layouts.psd create mode 100644 themes/zen/STARTERKIT/images-source/screenshot.psd create mode 100644 themes/zen/STARTERKIT/images-source/tabs.psd create mode 100644 themes/zen/STARTERKIT/images/messages-error-ie6.png create mode 100644 themes/zen/STARTERKIT/images/messages-error.png create mode 100644 themes/zen/STARTERKIT/images/messages-status-ie6.png create mode 100644 themes/zen/STARTERKIT/images/messages-status.png create mode 100644 themes/zen/STARTERKIT/images/messages-warning-ie6.png create mode 100644 themes/zen/STARTERKIT/images/messages-warning.png create mode 100644 themes/zen/STARTERKIT/images/tab-bar.png create mode 100644 themes/zen/STARTERKIT/images/tab-left-ie6.png create mode 100644 themes/zen/STARTERKIT/images/tab-left.png create mode 100644 themes/zen/STARTERKIT/images/tab-right-ie6.png create mode 100644 themes/zen/STARTERKIT/images/tab-right.png create mode 100644 themes/zen/STARTERKIT/images/tab-secondary-bg.png create mode 100644 themes/zen/STARTERKIT/images/tab-secondary.png create mode 100644 themes/zen/STARTERKIT/js/README.txt create mode 100644 themes/zen/STARTERKIT/logo.png create mode 100644 themes/zen/STARTERKIT/screenshot.png create mode 100644 themes/zen/STARTERKIT/template.php create mode 100644 themes/zen/STARTERKIT/templates/README.txt create mode 100644 themes/zen/STARTERKIT/theme-settings.php create mode 100644 themes/zen/layouts/README.txt create mode 100644 themes/zen/layouts/one_sidebar_first/one-sidebar-first-admin.css create mode 100644 themes/zen/layouts/one_sidebar_first/one-sidebar-first.css create mode 100644 themes/zen/layouts/one_sidebar_first/one-sidebar-first.png create mode 100644 themes/zen/layouts/one_sidebar_first/one_sidebar_first.inc create mode 100644 themes/zen/layouts/one_sidebar_first/zen-one-sidebar-first-admin.tpl.php create mode 100644 themes/zen/layouts/one_sidebar_first/zen-one-sidebar-first.tpl.php create mode 100644 themes/zen/layouts/one_sidebar_second/one-sidebar-second-admin.css create mode 100644 themes/zen/layouts/one_sidebar_second/one-sidebar-second.css create mode 100644 themes/zen/layouts/one_sidebar_second/one-sidebar-second.png create mode 100644 themes/zen/layouts/one_sidebar_second/one_sidebar_second.inc create mode 100644 themes/zen/layouts/one_sidebar_second/zen-one-sidebar-second-admin.tpl.php create mode 100644 themes/zen/layouts/one_sidebar_second/zen-one-sidebar-second.tpl.php create mode 100644 themes/zen/layouts/two_sidebars/two-sidebars-admin.css create mode 100644 themes/zen/layouts/two_sidebars/two-sidebars.css create mode 100644 themes/zen/layouts/two_sidebars/two-sidebars.png create mode 100644 themes/zen/layouts/two_sidebars/two_sidebars.inc create mode 100644 themes/zen/layouts/two_sidebars/zen-two-sidebars-admin.tpl.php create mode 100644 themes/zen/layouts/two_sidebars/zen-two-sidebars.tpl.php create mode 100644 themes/zen/layouts/two_sidebars_first/two-sidebars-first-admin.css create mode 100644 themes/zen/layouts/two_sidebars_first/two-sidebars-first.css create mode 100644 themes/zen/layouts/two_sidebars_first/two-sidebars-first.png create mode 100644 themes/zen/layouts/two_sidebars_first/two_sidebars_first.inc create mode 100644 themes/zen/layouts/two_sidebars_first/zen-two-sidebars-first-admin.tpl.php create mode 100644 themes/zen/layouts/two_sidebars_first/zen-two-sidebars-first.tpl.php create mode 100644 themes/zen/layouts/two_sidebars_second/two-sidebars-second-admin.css create mode 100644 themes/zen/layouts/two_sidebars_second/two-sidebars-second.css create mode 100644 themes/zen/layouts/two_sidebars_second/two-sidebars-second.png create mode 100644 themes/zen/layouts/two_sidebars_second/two_sidebars_second.inc create mode 100644 themes/zen/layouts/two_sidebars_second/zen-two-sidebars-second-admin.tpl.php create mode 100644 themes/zen/layouts/two_sidebars_second/zen-two-sidebars-second.tpl.php create mode 100644 themes/zen/logo.png create mode 100644 themes/zen/template.php create mode 100644 themes/zen/templates/block.tpl.php create mode 100644 themes/zen/templates/comment-wrapper.tpl.php create mode 100644 themes/zen/templates/comment.tpl.php create mode 100644 themes/zen/templates/maintenance-page.tpl.php create mode 100644 themes/zen/templates/node.tpl.php create mode 100644 themes/zen/templates/page.tpl.php create mode 100644 themes/zen/templates/region-sidebar.tpl.php create mode 100644 themes/zen/templates/region.tpl.php create mode 100644 themes/zen/templates/views-view.tpl.php create mode 100644 themes/zen/theme-settings.php create mode 100644 themes/zen/zen-internals/TODO.txt create mode 100644 themes/zen/zen-internals/css/generate.sh create mode 100644 themes/zen/zen-internals/css/ie.css create mode 100644 themes/zen/zen-internals/css/ie6-rtl.css create mode 100644 themes/zen/zen-internals/css/ie6.css create mode 100644 themes/zen/zen-internals/css/print.css create mode 100644 themes/zen/zen-internals/css/theme-settings-rtl.css create mode 100644 themes/zen/zen-internals/css/theme-settings.css create mode 100644 themes/zen/zen-internals/css/zen-fixed-rtl.css create mode 100644 themes/zen/zen-internals/css/zen-fixed.css create mode 100644 themes/zen/zen-internals/css/zen-liquid-rtl.css create mode 100644 themes/zen/zen-internals/css/zen-liquid.css create mode 100644 themes/zen/zen-internals/images/messages-error-ie6.png create mode 100644 themes/zen/zen-internals/images/messages-error.png create mode 100644 themes/zen/zen-internals/images/messages-status-ie6.png create mode 100644 themes/zen/zen-internals/images/messages-status.png create mode 100644 themes/zen/zen-internals/images/messages-warning-ie6.png create mode 100644 themes/zen/zen-internals/images/messages-warning.png create mode 100644 themes/zen/zen-internals/images/tab-bar.png create mode 100644 themes/zen/zen-internals/images/tab-left-ie6.png create mode 100644 themes/zen/zen-internals/images/tab-left.png create mode 100644 themes/zen/zen-internals/images/tab-right-ie6.png create mode 100644 themes/zen/zen-internals/images/tab-right.png create mode 100644 themes/zen/zen-internals/images/tab-secondary-bg.png create mode 100644 themes/zen/zen-internals/images/tab-secondary.png create mode 100644 themes/zen/zen-internals/js/theme-settings.js create mode 100644 themes/zen/zen-internals/screenshot.png create mode 100644 themes/zen/zen-internals/template.block-editing.inc create mode 100644 themes/zen/zen-internals/template.comment.inc create mode 100644 themes/zen/zen-internals/template.conditional-styles.inc create mode 100644 themes/zen/zen-internals/template.theme-registry.inc create mode 100644 themes/zen/zen-internals/template.zen.inc create mode 100644 themes/zen/zen.info diff --git a/themes/README.txt b/themes/README.txt deleted file mode 100644 index a4b7eb2..0000000 --- a/themes/README.txt +++ /dev/null @@ -1,8 +0,0 @@ -This directory is reserved for core theme files. Custom or contributed -themes should be placed in their own subdirectory of the sites/all/themes -directory. For multisite installations, they can also be placed in a subdirectory -under /sites/{sitename}/themes/, where {sitename} is the name of your site -(e.g., www.example.com). This will allow you to more easily update Drupal core files. - -For more details, see: http://drupal.org/node/176043 - diff --git a/themes/zen/CHANGELOG.txt b/themes/zen/CHANGELOG.txt new file mode 100644 index 0000000..4acfb06 --- /dev/null +++ b/themes/zen/CHANGELOG.txt @@ -0,0 +1,390 @@ +Zen 6.x-2.1, 2011-04-05 +----------------------- +- #774836 by hefox: Check if node $title is set before outputting +- #705264 by JohnAlbin, Jehu, mlncn and zenic: Allow Zen (and subthemes) to be used without a database +- #1046090 by daniels and JohnAlbin: $styles is destroyed by rare bug with APC +- #1083700: Add $submitted variable back into node.tpl +- #1086820 by tacituseu: Views classes redundant since Views 6.x-2.9 +- #1017062 by adrinux: Block edit links span entire block on RTL pages +- #774838 by bangpound, hefox and JohnAlbin: Add default case for build_mode +- #919838 by saem, rgbivens and JohnAlbin: Theme description links to wrong docs +- #992616 by JohnAlbin and adrinux: Comments in layout RTL stylesheets are incorrect +- #822570 by JohnAlbin and AaronCollier: Add focus styling to tabs +- #1072268: Zen theme doesn't load RTL styles +- #929630 by juan_g and akalata: URL for overriding stylesheets documentation has changed +- #742208: Conflict with domain theme module +- #1063226 by tacituseu, danillonunes and barraponto: Unpublished comment style is not applied +- #962356: Convert region template suggestions into theme hook suggestions +- #978640 by marcvangend: Whitespace before comment causes jQuery error +- #1046394 by n8tron and JohnAlbin: Add first and last classes to blocks +- #870080 by mverbaar: Correction to README.TXT for STARTERKIT +- #707410 by AdrianB: improve detection of Panels pages +- #634552 by JohnAlbin and tim.plunkett: Conflict with context module +- #941714: Modules setting $classes in preprocess functions breaks expected Zen classes +- #932826: mytheme_links__system_main_menu() doesn't work as expected +- Fix PHP warning on maintenance page +- #690026: Cannot override region.tpl.php + +Zen 6.x-2.0, 2010-06-26 +----------------------- +- #791056 by meatsack and JohnAlbin: Zen clobbers Views 3 classes +- #838338: element-invisible class doesn't fully hide elements +- #723514 by kmonty: Link in STARTERKIT description incorrect +- Skip navigation's ID changed from #skip-to-nav to #skip-link +- Added $block_html_id to block.tpl.php +- #772488 by andreiashu: Fatal error: Call to undefined function + ctools_menu_primary_local_tasks() +- #707410 by agentrickard and JohnAlbin: Add page-views and page-panels body classes +- #691426: Add D7-style named implementations of theme_links in page.tpl +- #683904: SUBTHEME_process functions do not work +- #552156: broken clearfix class causes overlapping containers in IE7 +- #593290 by sfyn and JohnAlbin: Chaos Tools/Panels edit tab not working with Zen +- #661628 by Jacine and JohnAlbin: Integration with Skinr module +- by Jacine: Added views-view.tpl.php with support for $classes variables +- by caroltron, gleroux02, _natron, and JohnAlbin: Add panels 3 layouts using + Zen layout method + +Zen 6.x-2.0-beta1, 2009-11-10 +----------------------------- +- #478134 by mithrill: Improve docs about sites/all/themes and sites/default/themes folders +- #628070 by Aren Cambre: Change "jquery" to "JavaScript" in STARTERKIT.info.txt +- #626868 by alefteris: Replace Bitstream Vera with DejaVu fonts +- #624818 by Aren Cambre and Garrett Albright: Tahoma shouldn't be first font pick +- #600344 by mgifford: Use of absolute font size in block editing links breaks WCAG 2.0 +- #546904 by Jennifer_M: List $node as available variable in page.tpl.php +- #583716 by droidenator: Empty title can cause breadcrumbs to display incorrectly +- #600920 by kto.3decb: Fix incorrect comment block class name +- #624046: Replace zen_id_safe() with drupal_html_class() and drupal_html_id() +- Renamed $closure_region region to $page_closure +- #622324: Update page.tpl to use ideas from D7 + - Renamed #page and #page-inner to #page-wrapper and #page + - Added around site name + - Moved #skip-to-nav styling to pages.css + - Removed #navigation link anchor + - Renamed div#header-inner to div.section which can be themed with #header .section + - Renamed #main and #main-inner to #main-wrapper and #main + - Renamed div#content-inner to div.section which can be themed with #content .section + - Removed #content-header div + - Added $highlight region + - Renamed #navbar div to #navigation + - Renamed $navbar region to $navigation + - Renamed .with-navbar class to .with-navigation + - Added #navigation .section div + - Removed #sidebar-first, #sidebar-first-inner, #sidebar-second, #sidebar-second-inner and moved styles to .region-sidebar-first, .region-sidebar-first .section, .region-sidebar-second, .region-sidebar-second .section + - Added #footer .section div +- Added region-sidebar.tpl.php template suggestion +- #308254: Make "skip to nav" styling more useful and less intrusive +- #621798: Change sidebar variables to be RTL friendly and $shows_blocks compatible +- #547696: Update node.tpl to use ideas from D7 + - Renamed $picture to $user_picture in node.tpl.php + - Renamed .sticky class to .node-sticky in node.tpl.php + - Removed #node-inner div + - Added $display_submitted variable and deprecated $submitted variable + - Renamed the .node-mine class to .node-by-viewer +- #620794: Update block.tpl to use ideas from D7 + - Removed .block-inner div + - Renamed $block->subject variable to $title + - Renamed $block->content variable to $content +- #548994: Update comment.tpl and comment-wrapper.tpl to use ideas from D7 + - Renamed comment-wrapper's h2#comments-title to #comments h2.title + - Added $created to comment.tpl and deprecated $submitted + - Removed #comment-inner div + - comment div classes changed: + - .comment-by-anon changed to .comment-by-anonymous + - .comment-by-author changed to .comment-by-node-author + - .comment-mine changed to .comment-by-viewer + - .comment-published was removed +- #311458: Search box gets disabled after arbitrary amount of time +- Added $classes and $classes_array to all templates, not just Zen's templates +- Renamed page.tpl's $body_classes and $body_classes_array to $classes and $classes_array +- #564068: Views classes are missing from $classes variable +- Simplified header, content_top, content_bottom, navbar, and footer region markup +- Add region.tpl.php template +- Render $edit_links_array in zen_process_block +- #546858: Add THEME_process_HOOK functions to Zen +- #317417 by JohnAlbin and quicksketch: Fix off-line maintenance page since drupal_get_path('theme', 'zen') won't work +- #549798 by caroltron: page-backgrounds.css missing from .info file +- Remove ie5.css from STARTERKIT and deprecate support for IE5 +- #547696: Update node.tpl to use ideas from D7 +- Renamed $picture to $user_picture in node.tpl.php +- Renamed sticky class to node-sticky in node.tpl.php +- Added $build_mode variable to node.tpl.php +- #445814: Change primary/secondary link rendering and move secondary menu to footer +- #445822: Simplify wrapper divs around logo, site name, slogan +- #546862: Add D7's element-hidden and element-invisible for accessibility features +- #547382: Rename Zen's reset stylesheet to html-reset.css from html-elements.css +- #527494: Follow Drupal's proposed CSS coding standards +- #480610 by kdebaas: css class .field-type-image does not exist anymore in 6.x version of the module +- #545320 by Deslack: Use of split() generate E_DEPRECATED warnings on PHP 5.3.0 +- #542818: Using alternate layout method causes .clearfix class to disappear +- #546828: Move tpl.php files to a templates folder in the root zen directory +- #546792: Remove box.tpl.php +- #513926: Sub-themes cannot reorder the stylesheets of the base theme +- #456136: Move zen stylesheets into STARTERKIT/css +- #544750 by kdebaas: Wrong sidebar class naming in maintenance-page.tpl.php +- #529796: Make block edit links easier to edit/turn off individually +- Added $classes_array variable to node, block and comment templates +- Add layout.css in Zen's .info file to properly position sub-theme's layout.css +- #379902: Make all stylesheets RTL compatible +- #472694: Drupal 6.11 broke Zen's OpenID overrides +- #375976 by JohnAlbin and Amitaibu: Flip sidebar positioning on RTL +- #375953 by Amitaibu and JohnAlbin: Change sidebar names to be RTL friendly +- Updated screenshot.png to use Zen logo since an actual screenshot is boring +- Changed "or" back to "||" in node.tpl.php since themers do need to learn a little PHP +- #254821: Sub-theme's .info file triggers incorrect "out of date" flag in update module +- Added blockquote indent stlying +- Removed navigation-top named anchor from page templates +- #382598: .node div.links ruleset doesn't match html in node template +- #452118: Removed redundant wrapper div around comment links +- #382480 by Ognyan Kulev: #block-menu-2 should be #block-menu-primary-links +- #374349: breadcrumb often broken when zen_breadcrumb_title is on +- #426750: Removed Zen Classic sub theme +- #445830: Rename clear-block CSS class to clearfix +- #445790: Move search box to header +- #445562: q0rban and JohnAlbin: Allow modules to declare their own block edit links +- Added optional node-type-specific preprocess functions +- Added notes about mobile stylesheets to STARTERKIT.info +- #200495 by JohnAlbin, caroltron, and Toe: Split up monolithic zen.css into smaller, logical stylesheets +- #328221 by kmonty and JohnAlbin: Split up ie.css to remove CSS hacks + +Zen 6.x-1.2, 2011-02-26 +----------------------- +- #593290 by sfyn and JohnAlbin: Chaos Tools/Panels edit tab not working with Zen + +Zen 6.x-1.1, 2009-11-10 +----------------------- +- #478134 by mithrill: Improve docs about sites/all/themes and sites/default/themes folders +- #600758 by mattyoung: Secondary links run together in one line with primary links +- #600344 by mgifford: Use of absolute font size in block editing links breaks WCAG 2.0 +- #546904 by Jennifer_M: List $node as available variable in page.tpl.php +- #583716 by droidenator: Empty title can cause breadcrumbs to display incorrectly +- #600920 by kto.3decb: Fix incorrect comment block class name +- #297084: Remove ctype_lower() from zen_id_safe() to prevent WSOD/Fatal error on some systems +- #317417 by JohnAlbin and quicksketch: Fix off-line maintenance page since drupal_get_path('theme', 'zen') won't work +- #545320 by Deslack: Use of split() generate E_DEPRECATED warnings on PHP 5.3.0 +- #472694: Drupal 6.11 broke Zen's OpenID overrides +- Updated screenshot.png to use Zen logo since an actual screenshot is boring +- Changed "or" back to "||" in node.tpl.php since themers do need to learn a little PHP +- #254821: Sub-theme's .info file triggers incorrect "out of date" flag in update module +- #327455 by grendzy and erifneerg: name and id mismatch in named anchor causing validation error +- #382598: .node div.links ruleset doesn't match html in node template +- #382480 by Ognyan Kulev: #block-menu-2 should be #block-menu-primary-links +- #374349: breadcrumb often broken when zen_breadcrumb_title is on +- #426750: Removed Zen Classic sub theme +- #445562: q0rban and JohnAlbin: Allow modules to declare their own block edit links + +Zen 6.x-1.0, 2009-02-14 +----------------------- +- #342004 by Amitaibu: Add css hint to prevent cramped-looking tables +- #290657: Liquid layout does not have min-width enforced +- #329769 by kmonty: Update zen_id_safe to remove underscores +- #275832: hook_theme implementation breaks maintenance page when database is down +- #362104: layout breaks on Zen-themed maintenance page +- Changed "or" back to "||" in template files since themers do need to learn a little PHP +- #346867 by debonator: navbar-inner is missing the "clear-block" class +- #325610 by Garrett Albright: Site name and logo don't link to frontpage on multilingual site +- #281106: Erroneous whitespace when div.clear-block touches bottom edge of viewport +- #365631: Zen's table-styling-fix breaks update module's styling +- #322480 by grendzy, mr.baileys, Bevan, and JohnAlbin: Make registry rebuild warning less obtrusive +- #325630: Broken link in "Theme registry rebuilt" warning when Clean URLs is off +- #324104 by JohnAlbin and dalin: Broken block editing link for Views 2 +- #365205: block editing link doesn't work with Menu Block 6.x-2.1 and later +- #308251 by Garrett Albright: Improve icon placement on status, warning, and error messages +- Added $body_classes_array variable to page template +- #343945: Fix zen_breadcrumb_title setting to use proper menu_get_active_item() +- #279896 by lutegrass: Help prevent double H1 tags on homepage that is not /node +- #310507 by MikeyLikesIt: Footer region not output in Zen Classic +- #347195: Remove theme registry fix that was needed for broken Drupal 6.0 - 6.6 +- #346706 by jsaints: Content clipped after page one when printing in Firefox +- #311529: Remove core's page-ARG0 body class, leaving zen's page-PATH +- Simplified body class generation code +- #334956 by hansrossel: Remove no-longer-needed fix for "Flash of Unstyled Content in IE" +- Fixed theme settings CSS for IE6 users +- Added Photoshop file for STARTERKIT screenshot +- Added Photoshop file for messages +- Allow easier CSS rule overriding by including THEMENAME.css file last +- Fixed message styling in Zen Classic +- #308957: html-elements.css not enabled in STARTERKIT +- #288213 by budda: Tabs in IE have a text select cursor rather than hand pointer +- #310818: Auto theme-registry rebuild warns themer multiple times + +Zen 6.x-1.0-beta3, 2008-09-15 +----------------------------- +- #308251: Add useful styling for status, warning, and error messages +- #307309: Add feature to rebuild theme registry during theme development +- Removed path_to_zentheme() since we're not conditionally including wireframes.css or block-editing.css +- #245832: Add IE conditional stylesheets to .info file +- #263228: Allow sub-themes to override wireframes.css +- #260605: Can't override block-editing.css +- #308266: Don't display footer if no footer message or footer blocks +- Changed $block_classes to $classes and $comment_classes to $classes and $node_classes to $classes +- #290838 by thehong: Only display comments block when comments content is not empty +- Don't display comment wrapper title on forums +- #299397: Synchronize Zen's tpl files with core's tpl files +- #281106 by kmonty: Erroneous whitespace when div.clear-block touches bottom edge of viewport +- Changed "||" to "or" in template files since its more intuitive to PHP newbies +- #279896: Help prevent double H1 tags on homepage that is not /node +- #279896: Moved styles to zen.css that should never have been in layout.css +- #255265 by kmonty: Don't "skip to nav" if there's no nav +- Re-arranged sidebar classes so they are in no-sidebars -> two-sidebars order in the layout CSS files +- #306856: Optimize code by adding conditional includes +- Moved some comments from zen to STARTERKIT where they belong +- Optimized zen_breadcrumb() +- Folded template-menus.php back into template.php since its not conditionally included +- Removed theme_username from STARTERKIT and zen_classic since it was fixed in Drupal 6.3 +- Optimized zen_menu_item_link() +- #305311: CSS files makes reference to to drupal5-reference.css +- #299419: Remove empty zen.css in sub-themes +- #284798: PHP warning when settings section of .info file is missing +- #272655: Make STARTERKIT_theme easier to extend + +Zen 6.x-1.0-beta2, 2008-05-20 +----------------------------- +- #260016: PHP 4 Parse error: syntax error, unexpected '&' + +Zen 6.x-1.0-beta1, 2008-05-15 +----------------------------- +- #253609 by jjeff: Add 'region' class to regions +- #258123 by jjeff: Rearrange placement of #site-name strong +- #248103: Allow themes to set defaults for settings in their .info files +- #249532: Allow subthemes to have preprocess hooks without tpl files +- #223518: Option to show page title in breadcrumbs +- #253249: zen_id_safe fails when first character is extended latin +- #251632: Make the closure region more useful +- #199682: 'Submitted by' text is shown for content even if setting is disabled +- #222339: Blocks in Zen Classic header and closure lack padding +- #248780: admin table styles override update_status styling +- #232840: OpenID login block displaying incorrectly +- #246110 by jjeff: zen.css breaks .container-inline +- #229661: Search Box doesn't return any results or warnings +- #244023 by jjeff: Make block editing links go to actual menu edit pages +- #245968 by jjeff: Put the word "Comments" above comments +- #238387: Update README on how to edit the .info file +- #227297 by Aragorn450: CSS Include for wireframes broken +- Prevented "notice: Undefined variable: edit_links" for anonymous users +- Made block-editing.css a "theme"-type CSS file +- #224416 by sykora: displaying on mouse over on block heading +- Added complete Drupal 6 CSS for easy reference by theme developers +- Added Photoshop file for tabs +- #222299: Block editing link in Zen Classic footer is white on white + +Zen 5.x-1.2, 2009-02-15 +----------------------- +- #342004 by Amitaibu: Add css hint to prevent cramped-looking tables +- #290657: Liquid layout does not have min-width enforced +- #279896 by lutegrass: Help prevent double H1 tags on homepage that is not /node +- #346706 by jsaints: Content clipped after page one when printing in Firefox +- Added $body_classes_array variable to page template +- Simplified body class generation code +- Fixed theme settings CSS for IE6 users +- #288213 by budda: Tabs in IE have a text select cursor rather than hand pointer +- #249823: Add options to toggle display of primary and secondary links +- #281106 by kmonty: Erroneous whitespace when div.clear-block touches bottom edge of viewport +- #279896: Help prevent double H1 tags on homepage that is not /node +- #279896: Moved styles to zen.css that should never have been in layout.css +- #255265 by kmonty: Don't "skip to nav" if there's no nav +- #263228: Allow sub-themes to override wireframes.css +- Added sample override template file for search block's form +- Fixed _zen_hook() to look in sub-theme directory when $hook is not valid PHP function name +- #223518: Option to show page title in breadcrumbs +- #255263: Don't call preprocess functions twice when Zen is active theme +- #253249: zen_id_safe fails when first character is extended latin + +Zen 5.x-1.1, 2008-04-21 +----------------------- +- #246109: Add MODULE_preprocess_HOOK functions to Zen +- #199682: 'Submitted by' text is shown for content even if setting is disabled +- #247960: Add THEME_preprocess() hook to Zen +- #222339: Blocks in Zen Classic header and closure lack padding +- #248720 by matt@antinomia: Only UPDATE {system} table WHERE type = 'theme' +- #248780: admin table styles override update_status styling +- #246110 by jjeff: zen.css breaks .container-inline +- Prevented "notice: Undefined variable: edit_links" for anonymous users +- Made block-editing.css a "theme"-type CSS file +- Added Photoshop file for tabs +- #222299: Block editing link in Zen Classic footer is white on white + +Zen 5.x-1.0, 2008-02-14 +----------------------- +- #220161: Change SUBTHEME to STARTERKIT to prevent accidental WSOD +- #221545 by jjeff: Add theme_comment_wrapper() and theme_username() from Zengine +- #220551: IE6: sidebars disappear when resizing window +- Added body classes: section-node-add, section-node-edit, section-node-delete +- Prevented display of empty help from node_help() +- #219401: Add theme override examples for all functions used in Zen core + +Zen 5.x-1.0-beta2, 2008-01-29 +----------------------------- +- #214777: sub-theme's search-theme-form.tpl is ignored +- #206707: tr.even/odd border-bottom is missing in IE +- #207743 by jjeff: Added translatable "Unpublished" text as background +- #207743 by jjeff: Added block editing links on hover +- Added extended block classes (zebra class by jjeff) +- #207743 by jjeff: Allow a sub-theme to add/alter block variables +- #110897: oversize content causes IE6 layout breakage (now fixed in Zen Classic) +- #211156 by jjeff: $subtheme_directory variable in page.tpl.php never gets populated +- #206060: changed inline styling method for navbar links from inline to float + +Zen 5.x-1.0-beta1, 2008-01-06 +----------------------------- +- Removed named anchors from doc flow to prevent any styles from appearing +- #203213 by kdebaas: Add node-teaser class to nodes displayed as teasers +- #203112 by kdebaas: Un-localizable string in search-theme-form.tpl.php +- #201793: Fixed fatal error when no settings are added to a sub-theme's settings +- #196181: _phptemplate_callback doesn't look in sub-theme folder for .tpl.php files +- Added sample override template file for drupal search form +- Added SUBTHEME directory as a starter sub-theme for developers +- #199036 by joachim: Make padding on #squeeze conditional +- #199578: Fatal error on Zen Classic theme settings when using admin theme +- #200380 by psynaptic: missing semi-colon in layout-fixed.css +- #196230: Tabs broken in IE5 and IE6 +- #199682: 'Submitted by' text is shown even if setting is disabled +- #171201: Remove un-localizable date/time format from base theme +- Added theme settings to control layout method and wireframes inclusion +- Added fixed layout stylesheet + +Zen 5.x-0.8, 2007-11-29 +----------------------- +- #196223: IE5 always loads @import print stylesheet +- #184232: Add README documentation +- #121991: Source rendering order needs adjustment +- #110897: oversize content causes IE6 layout breakage +- Added unique classes for each page and website section +- Added customizable breadcrumb settings +- Split template.php into multiple files to ease theme developer overload +- Add prettier tab styling +- #141784: Add conditional IE stylesheets +- Merge zen-fixed with zen_classic +- Add optional Theme Settings API integration +- #169359: Base CSS and tpl files don't get loaded (sub-theme with page.tpl.php) +- #171464: Create starter theme; migrate current style to a sub-theme +- Add ability to change regions in a sub-theme +- Add complete Drupal 5 CSS for easy reference by theme developers +- #183936: Backport Drupal 6 $body_classes + +Zen 5.x-0.7, 2007-10-15 +----------------------- +- #100894: For SEO, H1#site-name should be div#site-name strong +- #118467 by leandrosiow: Screen redraw errors with resizable textareas in Firefox +- #154937 by msonnabaum: add skip navigation for screen readers/mobility impaired +- #122592: Ability to theme each primary link +- #178560 by incognito: Shifting avatars in the comment blocks +- #110553 by rport: Use png instead of gif for images +- #120052: Add linux fonts +- #183360: Empty H2 appears on blocks with no titles +- #121101: zen.css does not validate +- #110902: IE6: text falls outside and to the left of content area +- #183354: Add a div around the feed icons +- #120341: Sidebar has unwanted 5em bottom margin +- #122938: Enabling CSS aggregation messes up the CSS in Safari +- #110897: oversize content causes IE6 layout breakage +- #119270: profile pictures indenting +- #118170 by mr700: blockquote css border has two widths +- #110810: change .submitted span to div +- #100899: don't use sidebar class for widths +- #182130 by joachim: links in h2 and h3 different sizes +- #182556: Added CHANGELOG + +Zen 5.x-0.6, 2007-01-17 +----------------------- +- Initial pre-release diff --git a/themes/zen/LICENSE.txt b/themes/zen/LICENSE.txt new file mode 100644 index 0000000..2c095c8 --- /dev/null +++ b/themes/zen/LICENSE.txt @@ -0,0 +1,274 @@ +GNU GENERAL PUBLIC LICENSE + + Version 2, June 1991 + +Copyright (C) 1989, 1991 Free Software Foundation, Inc. 675 Mass Ave, +Cambridge, MA 02139, USA. Everyone is permitted to copy and distribute +verbatim copies of this license document, but changing it is not allowed. + + Preamble + +The licenses for most software are designed to take away your freedom to +share and change it. By contrast, the GNU General Public License is +intended to guarantee your freedom to share and change free software--to +make sure the software is free for all its users. This General Public License +applies to most of the Free Software Foundation's software and to any other +program whose authors commit to using it. (Some other Free Software +Foundation software is covered by the GNU Library General Public License +instead.) You can apply it to your programs, too. + +When we speak of free software, we are referring to freedom, not price. Our +General Public Licenses are designed to make sure that you have the +freedom to distribute copies of free software (and charge for this service if +you wish), that you receive source code or can get it if you want it, that you +can change the software or use pieces of it in new free programs; and that +you know you can do these things. + +To protect your rights, we need to make restrictions that forbid anyone to +deny you these rights or to ask you to surrender the rights. These restrictions +translate to certain responsibilities for you if you distribute copies of the +software, or if you modify it. + +For example, if you distribute copies of such a program, whether gratis or for +a fee, you must give the recipients all the rights that you have. You must make +sure that they, too, receive or can get the source code. And you must show +them these terms so they know their rights. + +We protect your rights with two steps: (1) copyright the software, and (2) +offer you this license which gives you legal permission to copy, distribute +and/or modify the software. + +Also, for each author's protection and ours, we want to make certain that +everyone understands that there is no warranty for this free software. If the +software is modified by someone else and passed on, we want its recipients +to know that what they have is not the original, so that any problems +introduced by others will not reflect on the original authors' reputations. + +Finally, any free program is threatened constantly by software patents. We +wish to avoid the danger that redistributors of a free program will individually +obtain patent licenses, in effect making the program proprietary. To prevent +this, we have made it clear that any patent must be licensed for everyone's +free use or not licensed at all. + +The precise terms and conditions for copying, distribution and modification +follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND + MODIFICATION + +0. This License applies to any program or other work which contains a notice +placed by the copyright holder saying it may be distributed under the terms +of this General Public License. The "Program", below, refers to any such +program or work, and a "work based on the Program" means either the +Program or any derivative work under copyright law: that is to say, a work +containing the Program or a portion of it, either verbatim or with +modifications and/or translated into another language. (Hereinafter, translation +is included without limitation in the term "modification".) Each licensee is +addressed as "you". + +Activities other than copying, distribution and modification are not covered +by this License; they are outside its scope. The act of running the Program is +not restricted, and the output from the Program is covered only if its contents +constitute a work based on the Program (independent of having been made +by running the Program). Whether that is true depends on what the Program +does. + +1. You may copy and distribute verbatim copies of the Program's source +code as you receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice and +disclaimer of warranty; keep intact all the notices that refer to this License +and to the absence of any warranty; and give any other recipients of the +Program a copy of this License along with the Program. + +You may charge a fee for the physical act of transferring a copy, and you +may at your option offer warranty protection in exchange for a fee. + +2. You may modify your copy or copies of the Program or any portion of it, +thus forming a work based on the Program, and copy and distribute such +modifications or work under the terms of Section 1 above, provided that you +also meet all of these conditions: + +a) You must cause the modified files to carry prominent notices stating that +you changed the files and the date of any change. + +b) You must cause any work that you distribute or publish, that in whole or in +part contains or is derived from the Program or any part thereof, to be +licensed as a whole at no charge to all third parties under the terms of this +License. + +c) If the modified program normally reads commands interactively when run, +you must cause it, when started running for such interactive use in the most +ordinary way, to print or display an announcement including an appropriate +copyright notice and a notice that there is no warranty (or else, saying that +you provide a warranty) and that users may redistribute the program under +these conditions, and telling the user how to view a copy of this License. +(Exception: if the Program itself is interactive but does not normally print such +an announcement, your work based on the Program is not required to print +an announcement.) + +These requirements apply to the modified work as a whole. If identifiable +sections of that work are not derived from the Program, and can be +reasonably considered independent and separate works in themselves, then +this License, and its terms, do not apply to those sections when you distribute +them as separate works. But when you distribute the same sections as part +of a whole which is a work based on the Program, the distribution of the +whole must be on the terms of this License, whose permissions for other +licensees extend to the entire whole, and thus to each and every part +regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest your rights to +work written entirely by you; rather, the intent is to exercise the right to +control the distribution of derivative or collective works based on the +Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of a +storage or distribution medium does not bring the other work under the scope +of this License. + +3. You may copy and distribute the Program (or a work based on it, under +Section 2) in object code or executable form under the terms of Sections 1 +and 2 above provided that you also do one of the following: + +a) Accompany it with the complete corresponding machine-readable source +code, which must be distributed under the terms of Sections 1 and 2 above +on a medium customarily used for software interchange; or, + +b) Accompany it with a written offer, valid for at least three years, to give +any third party, for a charge no more than your cost of physically performing +source distribution, a complete machine-readable copy of the corresponding +source code, to be distributed under the terms of Sections 1 and 2 above on +a medium customarily used for software interchange; or, + +c) Accompany it with the information you received as to the offer to distribute +corresponding source code. (This alternative is allowed only for +noncommercial distribution and only if you received the program in object +code or executable form with such an offer, in accord with Subsection b +above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source code +means all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation and +installation of the executable. However, as a special exception, the source +code distributed need not include anything that is normally distributed (in +either source or binary form) with the major components (compiler, kernel, +and so on) of the operating system on which the executable runs, unless that +component itself accompanies the executable. + +If distribution of executable or object code is made by offering access to +copy from a designated place, then offering equivalent access to copy the +source code from the same place counts as distribution of the source code, +even though third parties are not compelled to copy the source along with the +object code. + +4. You may not copy, modify, sublicense, or distribute the Program except as +expressly provided under this License. Any attempt otherwise to copy, +modify, sublicense or distribute the Program is void, and will automatically +terminate your rights under this License. However, parties who have received +copies, or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + +5. You are not required to accept this License, since you have not signed it. +However, nothing else grants you permission to modify or distribute the +Program or its derivative works. These actions are prohibited by law if you +do not accept this License. Therefore, by modifying or distributing the +Program (or any work based on the Program), you indicate your acceptance +of this License to do so, and all its terms and conditions for copying, +distributing or modifying the Program or works based on it. + +6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the original +licensor to copy, distribute or modify the Program subject to these terms and +conditions. You may not impose any further restrictions on the recipients' +exercise of the rights granted herein. You are not responsible for enforcing +compliance by third parties to this License. + +7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), conditions +are imposed on you (whether by court order, agreement or otherwise) that +contradict the conditions of this License, they do not excuse you from the +conditions of this License. If you cannot distribute so as to satisfy +simultaneously your obligations under this License and any other pertinent +obligations, then as a consequence you may not distribute the Program at all. +For example, if a patent license would not permit royalty-free redistribution +of the Program by all those who receive copies directly or indirectly through +you, then the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply and +the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any patents or +other property right claims or to contest validity of any such claims; this +section has the sole purpose of protecting the integrity of the free software +distribution system, which is implemented by public license practices. Many +people have made generous contributions to the wide range of software +distributed through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing to +distribute software through any other system and a licensee cannot impose +that choice. + +This section is intended to make thoroughly clear what is believed to be a +consequence of the rest of this License. + +8. If the distribution and/or use of the Program is restricted in certain +countries either by patents or by copyrighted interfaces, the original copyright +holder who places the Program under this License may add an explicit +geographical distribution limitation excluding those countries, so that +distribution is permitted only in or among countries not thus excluded. In such +case, this License incorporates the limitation as if written in the body of this +License. + +9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will be +similar in spirit to the present version, but may differ in detail to address new +problems or concerns. + +Each version is given a distinguishing version number. If the Program specifies +a version number of this License which applies to it and "any later version", +you have the option of following the terms and conditions either of that +version or of any later version published by the Free Software Foundation. If +the Program does not specify a version number of this License, you may +choose any version ever published by the Free Software Foundation. + +10. If you wish to incorporate parts of the Program into other free programs +whose distribution conditions are different, write to the author to ask for +permission. For software which is copyrighted by the Free Software +Foundation, write to the Free Software Foundation; we sometimes make +exceptions for this. Our decision will be guided by the two goals of +preserving the free status of all derivatives of our free software and of +promoting the sharing and reuse of software generally. + + NO WARRANTY + +11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT +PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE +STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT +WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND +PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL +NECESSARY SERVICING, REPAIR OR CORRECTION. + +12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR +AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR +ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE +LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, +SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OR INABILITY TO USE THE +PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA +OR DATA BEING RENDERED INACCURATE OR LOSSES +SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE +PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN +IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF +THE POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS diff --git a/themes/zen/README-FIRST.txt b/themes/zen/README-FIRST.txt new file mode 100644 index 0000000..8c11896 --- /dev/null +++ b/themes/zen/README-FIRST.txt @@ -0,0 +1,79 @@ +WHERE TO START +-------------- + +Yay! You opened the correct file first. The first thing that people notice when +they download the Zen theme is that there are A LOT of files -- way more than +other themes. + +Don't worry! You don't need to learn everything all at once in order to make a +drupal theme. Zen will do the bits you haven't learned and patiently wait for +you to discover the documentation and inline comments about them. + + +SUGGESTED READING +----------------- + +Installation + If you don't know how to install a Drupal theme, there is a quick primer later + in this document. + +Building a sub-theme + See the STARTERKIT/README.txt file for full instructions. + +Theme .info file + Your sub-theme's .info file holds the basic information about your theme that + Drupal needs to know: its name, description, features, template regions, CSS + files, and JavaScript. Don't worry about all these lines just yet. + +CSS + Once you have created your sub-theme, look at the README.txt in your + sub-theme's css folder. + +Templates + Now take a look at the README.txt in your sub-theme's templates folder. + + +ONLINE READING +-------------- + +Full documentation on the Zen theme can be found in Drupal's Handbook: + http://drupal.org/node/193318 + +Excellent documentation on Drupal theming can be found in the Theme Guide: + http://drupal.org/theme-guide + + +INSTALLATION +------------ + + 1. Download Zen from http://drupal.org/project/zen + + 2. Unpack the downloaded file, take the entire zen folder and place it in your + Drupal installation under one of the following locations: + sites/all/themes + making it available to the default Drupal site and to all Drupal sites + in a multi-site configuration + sites/default/themes + making it available to only the default Drupal site + sites/example.com/themes + making it available to only the example.com site if there is a + sites/example.com/settings.php configuration file + + Please note: you will need to create the "theme" folder under "sites/all/" + or "sites/default/". + + For more information about acceptable theme installation directories, read + the sites/default/default.settings.php file in your Drupal installation. + + 3. Log in as an administrator on your Drupal site and go to Administer > Site + building > Themes (admin/build/themes). You will see the Zen theme there + with links on how to create your own sub-theme. You can optionally make Zen + the default theme. + + 4. Now build your own sub-theme by reading the STARTERKIT/README.txt file. + + 5. Internet explorer has a nasty bug that limits you to 31 stylsheets total. To + get around this limitation during theme development, download, install and + configure the "IE CSS Optimizer" module. + + http://drupal.org/project/ie_css_optimizer diff --git a/themes/zen/STARTERKIT/README.txt b/themes/zen/STARTERKIT/README.txt new file mode 100644 index 0000000..d5c3515 --- /dev/null +++ b/themes/zen/STARTERKIT/README.txt @@ -0,0 +1,127 @@ +BUILD YOUR OWN SUB-THEME +------------------------ + +*** IMPORTANT *** + +* In Drupal 6, the theme system caches template files and which theme functions + should be called. What that means is if you add a new theme or preprocess + function to your template.php file or add a new template (.tpl.php) file to + your sub-theme, you will need to rebuild the "theme registry." See + http://drupal.org/node/173880#theme-registry + +* Drupal 6 also stores a cache of the data in .info files. If you modify any + lines in your sub-theme's .info file, you MUST refresh Drupal 6's cache by + simply visiting the admin/build/themes page. + + +The base Zen theme is designed to be easily extended by its sub-themes. You +shouldn't modify any of the CSS or PHP files in the zen/ folder; but instead you +should create a sub-theme of zen which is located in a folder outside of the +root zen/ folder. The examples below assume zen and your sub-theme will be +installed in sites/all/themes/, but any valid theme directory is acceptable +(read the sites/default/default.settings.php for more info.) + + Why? To learn why you shouldn't modify any of the files in the zen/ folder, + see http://drupal.org/node/245802 + + 1. Copy the STARTERKIT folder out of the zen/ folder and rename it to be your + new sub-theme. IMPORTANT: The name of your sub-theme must start with an + alphabetic character and can only contain lowercase letters, numbers and + underscores. + + For example, copy the sites/all/themes/zen/STARTERKIT folder and rename it + as sites/all/themes/foo. + + Why? Each theme should reside in its own folder. To make it easier to + upgrade Zen, sub-themes should reside in a folder separate from their base + theme. + + 2. In your new sub-theme folder, rename the STARTERKIT.info.txt file to include + the name of your new sub-theme and remove the ".txt" extension. Then edit + the .info file by editing the name and description field. + + For example, rename the foo/STARTERKIT.info.txt file to foo/foo.info. Edit + the foo.info file and change "name = Zen Sub-theme Starter Kit" to + "name = Foo" and "description = Read..." to "description = A Zen sub-theme". + + Why? The .info file describes the basic things about your theme: its + name, description, features, template regions, CSS files, and JavaScript + files. See the Drupal 6 Theme Guide for more info: + http://drupal.org/node/171205 + + Then, visit your site's admin/build/themes to refresh Drupal 6's cache of + .info file data. + + 3. By default your new sub-theme is using a fixed-width layout. If you want a + liquid layout for your theme, delete the unneeded layout-fixed.css and + layout-fixed-rtl.css files and edit your sub-theme's .info file and replace + the reference to layout-fixed.css with layout-liquid.css. + + For example, edit foo/foo.info and change this line: + stylesheets[all][] = css/layout-fixed.css + to: + stylesheets[all][] = css/layout-liquid.css + + Why? The "stylesheets" lines in your .info file describe the media type + and path to the CSS file you want to include. The format for these lines + is: stylesheets[MEDIA][] = path/to/file.css + + Then, visit your site's admin/build/themes to refresh Drupal 6's cache of + .info file data. + + Alternatively, if you are more familiar with a different CSS layout method, + such as Blueprint or 960.gs, you can replace the "css/layout-fixed.css" line + in your .info file with a line pointing at your choice of layout CSS file. + + 4. Edit the template.php and theme-settings.php files in your sub-theme's + folder; replace ALL occurrences of "STARTERKIT" with the name of your + sub-theme. + + For example, edit foo/template.php and foo/theme-settings.php and replace + every occurrence of "STARTERKIT" with "foo". + + It is recommended to use a text editing application with search and + "replace all" functionality. + + 5. Log in as an administrator on your Drupal site and go to Administer > Site + building > Themes (admin/build/themes) and enable your new sub-theme. + + 6. Internet explorer has a nasty bug that limits you to 31 stylsheets total. To + get around this limitation during theme development, download, install and + configure the "IE CSS Optimizer" module. + + http://drupal.org/project/ie_css_optimizer + + On a production server, you should enable full optimization of the "Optimize + CSS files" option on the Admin Performance page at + admin/settings/performance. + + +Optional: + + 7. MODIFYING ZEN CORE TEMPLATE FILES: + If you decide you want to modify any of the .tpl.php template files in the + zen folder, copy them to your sub-theme's folder before making any changes. + And then rebuild the theme registry. + + For example, copy zen/templates/page.tpl.php to foo/templates/page.tpl.php. + + 8. THEMEING DRUPAL'S SEARCH FORM: + Copy the search-theme-form.tpl.php template file from the modules/search/ + folder and place it in your sub-theme's folder. And then rebuild the theme + registry. + + You can find a full list of Drupal templates that you can override in the + templates/README.txt file or http://drupal.org/node/190815 + + Why? In Drupal 6 theming, if you want to modify a template included by a + module, you should copy the template file from the module's directory to + your sub-theme's directory and then rebuild the theme registry. See the + Drupal 6 Theme Guide for more info: http://drupal.org/node/173880 + + 9. FURTHER EXTENSIONS OF YOUR SUB-THEME: + Discover further ways to extend your sub-theme by reading Zen's + documentation online at: + http://drupal.org/node/193318 + and Drupal 6's Theme Guide online at: + http://drupal.org/theme-guide diff --git a/themes/zen/STARTERKIT/STARTERKIT.info.txt b/themes/zen/STARTERKIT/STARTERKIT.info.txt new file mode 100644 index 0000000..4492544 --- /dev/null +++ b/themes/zen/STARTERKIT/STARTERKIT.info.txt @@ -0,0 +1,96 @@ + ; The name and description of the theme used on the admin/build/themes page. +name = Zen Sub-theme Starter Kit +description = Read the online docs or the included README.txt on how to create a Zen sub-theme. + + ; The screenshot used on the admin/build/themes page. +screenshot = screenshot.png + + ; "core" specifies the version of Drupal that this theme is compatible with. + ; "base theme" specifies that this is a theme that uses the "zen" theme as its + ; base theme. Its unlikely you will ever need to change these, but they are + ; required fields for a Zen sub-theme. The "engine" field is not used in a + ; sub-theme since the engine is inherited from its base theme. +core = 6.x +base theme = zen + + ; This section adds CSS files to your theme. The media type is specified in + ; the brackets. Typical CSS media types include "all", "screen", "print", and + ; "handheld". See http://www.w3.org/TR/CSS21/media.html#media-types for a full + ; list of stylesheet media types in CSS 2.1. The iPhone's preferred media type + ; is based on the CSS3 Media queries. http://www.w3.org/TR/css3-mediaqueries/ + ; + ; You can also override any of Zen's stylesheets or any module's stylesheets, + ; an /extremely/ useful feature. See the excellent Drupal 6 Theme Guide at + ; http://drupal.org/node/263967 for more details. +stylesheets[all][] = css/html-reset.css +stylesheets[all][] = css/wireframes.css +stylesheets[all][] = css/layout-fixed.css +stylesheets[all][] = css/page-backgrounds.css +stylesheets[all][] = css/tabs.css +stylesheets[all][] = css/messages.css +stylesheets[all][] = css/pages.css +stylesheets[all][] = css/block-editing.css +stylesheets[all][] = css/blocks.css +stylesheets[all][] = css/navigation.css +stylesheets[all][] = css/panels-styles.css +stylesheets[all][] = css/views-styles.css +stylesheets[all][] = css/nodes.css +stylesheets[all][] = css/comments.css +stylesheets[all][] = css/forms.css +stylesheets[all][] = css/fields.css +stylesheets[print][] = css/print.css +; stylesheets[handheld][] = css/mobile.css +; stylesheets[only screen and (max-device-width: 480px)][] = css/iphone.css + + ; Set the conditional stylesheets that are processed by IE. +conditional-stylesheets[if IE][all][] = css/ie.css +conditional-stylesheets[if lte IE 6][all][] = css/ie6.css + + ; Optionally add some JavaScripts to your theme. +; scripts[] = js/script.js + + ; The regions defined in Zen's default page.tpl.php file. The name in + ; brackets is the name of the variable in the page.tpl.php file, (e.g. + ; "[content_top]" in the .info file means there should be a $content_top + ; variable in the page.tpl.php file.) The text after the equals sign is a + ; descriptive text used on the admin/build/blocks page. + ; + ; To add a new region, copy Zen's page.tpl.php to your sub-theme's directory, + ; add a line line to this file, and then add the new variable to your + ; page.tpl.php template. +regions[sidebar_first] = First sidebar +regions[sidebar_second] = Second sidebar +regions[navigation] = Navigation bar +regions[highlight] = Highlighted content +regions[content_top] = Content top +regions[content_bottom] = Content bottom +regions[header] = Header +regions[footer] = Footer +regions[page_closure] = Page closure + + ; Various page elements output by the theme can be toggled on and off. The + ; "features" control which of these check boxes display on the + ; admin/build/themes config page. This is useful for suppressing check boxes + ; for elements not used by your sub-theme. To suppress a check box, omit the + ; entry for it below. See the Drupal 6 Theme Guide for more info: + ; http://drupal.org/node/171205#features +features[] = logo +features[] = name +features[] = slogan +features[] = mission +features[] = node_user_picture +features[] = comment_user_picture +features[] = search +features[] = favicon +features[] = primary_links +features[] = secondary_links + + ; Set the default settings to be used in theme-settings.php +settings[zen_block_editing] = 1 +settings[zen_breadcrumb] = yes +settings[zen_breadcrumb_separator] = ' › ' +settings[zen_breadcrumb_home] = 1 +settings[zen_breadcrumb_trailing] = 1 +settings[zen_breadcrumb_title] = 0 +settings[zen_rebuild_registry] = 1 +settings[zen_wireframes] = 0 diff --git a/themes/zen/STARTERKIT/css/README.txt b/themes/zen/STARTERKIT/css/README.txt new file mode 100644 index 0000000..3a128ae --- /dev/null +++ b/themes/zen/STARTERKIT/css/README.txt @@ -0,0 +1,134 @@ +ZEN'S STYLESHEETS +----------------- + +Don't panic! + +There are 28 CSS files in this sub-theme, but its not as bad as it first seems: +- The drupal6-reference.css is just a reference file and isn't used directly by + your sub-theme. See below. +- There are 9 CSS files whose names end in "-rtl.css". Those are CSS files + needed to style content written in Right-to-Left languages, such as Arabic and + Hebrew. If your website doesn't use such languages, you can safely delete all + of those CSS files. +- If you aren't using this theme while doing wireframes of the functionality of + your sub-theme, you can remove wireframes.css from your sub-theme's .info file + and delete the file as well. + +That leaves just 17 CSS files. (Okay, still quite a few, but better than 28.) + +- Instead of one monolithic stylesheet, your sub-theme's CSS files are organized + into several smaller stylesheets that are grouped to allow cascading across + common Drupal template files. +- The order of the stylesheets is designed to allow CSS authors to use the + lowest specificity possible to achieve the required styling. + + +ORDER AND PURPOSE OF DEFAULT STYLESHEETS +---------------------------------------- + +First off, if you find you don't like this organization of stylesheets, you are +free to change it; simply edit the stylesheet declarations in your sub-theme's +.info file. This structure was crafted based on several years of experience +theming Drupal websites. + +- html-reset.css: + This is the place where you should set the default styling for all HTML + elements and standardize the styling across browsers. If you prefer a specific + reset method, feel free to add it. + +- layout-fixed.css: +- layout-liquid.css: + Zen's default layout is based on the Zen Columns layout method. The + layout-fixed.css file is used by default and can be swapped with the + layout-liquid.css file. These files are designed to be easily replaced. If you + are more familiar with a different CSS layout method, such as Blueprint or + 960.gs, you can replace these files with your choice of layout CSS file. + +- page-backgrounds.css: + Layered backgrounds across scattered divs can be easier to manage if they are + centralized in one location. + +- tabs.css: +- messages.css: + While most of the CSS rulesets in your sub-theme are guidelines without any + actual properties, the tabs and messages stylesheets contain actual styling + for Drupal tabs and Drupal status messages; two common Drupal elements that + are often neglected by site desiners. Zen provides some basic styling which + you are free to use or to rip out and replace. + +- pages.css: + Page styling for the markup in the page.tpl.php template. + +- blocks.css: + Block styling for the markup in the block.tpl.php template. + +- navigation.css: + The styling for your site's menus can get quite bulky and its easier to see + all the styles if they are grouped together rather then across the + header/footer sections of pages.css and in blocks.css. + +- views-styles.css: + Views styling for the markup in various views templates. You'll notice this + stylesheet isn't called "views.css" as that would override (remove) the Views + module's stylesheet. + +- nodes.css: + Node styling for the markkup in the node.tpl.php template. + +- comments.css: + Comment styling for the markup in the comment-wrapper.tpl.php and + comments.tpl.php templates. + +- forms.css: + Form styling for the markup in various Drupal forms. + +- fields.css: + Field styling for the markup produced by theme_field(). + +- print.css: + The print styles for all markup. + +- ie.css: +- ie6.css: + The Internet Explorer stylesheets are added via conditional comments. Many CSS + authors find using IE "conditional stylesheets" much easier then writing + rulesets with CSS hacks that are known to only apply to various versions of + IE. An alternative method presented by Paul Irish can be found at + http://paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/ + +In these stylesheets, we have included all of the classes and IDs from this +theme's tpl.php files. We have also included many of the useful Drupal core +styles to make it easier for theme developers to see them. + + +DRUPAL CORE'S STYLESHEETS +------------------------- + +Many of these styles are over-riding Drupal's core stylesheets, so if you remove +a declaration from them, the styles may still not be what you want since +Drupal's core stylesheets are still styling the element. See the +drupal6-reference.css file for a complete list of all Drupal 6.x core styles. + +In addition to the style declarations in these stylesheets, other Drupal styles +that you might want to override or augment are those for: + + Book Navigation See line 74 of drupal6-reference.css file + Forum See line 197 of drupal6-reference.css file + Menus See line 667 of drupal6-reference.css file + News Aggregator See line 20 of drupal6-reference.css file + Polls See line 287 of drupal6-reference.css file + Search See line 320 of drupal6-reference.css file + User Profiles See line 945 of drupal6-reference.css file + + +INTERNET EXLORER HATES YOU +-------------------------- + +All versions of IE limit you to 31 stylesheets total. What that means is that +only the first 31 stylesheets will load, ignoring the others. So you'll have +missing styles in IE7 and later and a broken layout in IE6. + +This is a known bug in IE: http://support.microsoft.com/kb/262161 + +Please read http://john.albin.net/css/ie-stylesheets-not-loading for the gory +details. diff --git a/themes/zen/STARTERKIT/css/block-editing-rtl.css b/themes/zen/STARTERKIT/css/block-editing-rtl.css new file mode 100644 index 0000000..2b7cc47 --- /dev/null +++ b/themes/zen/STARTERKIT/css/block-editing-rtl.css @@ -0,0 +1,10 @@ +/** + * @file + * RTL companion for the block-editing.css file. + */ + + +div.block.with-block-editing div.edit { + left: 0; + right: auto; +} diff --git a/themes/zen/STARTERKIT/css/block-editing.css b/themes/zen/STARTERKIT/css/block-editing.css new file mode 100644 index 0000000..ba86d71 --- /dev/null +++ b/themes/zen/STARTERKIT/css/block-editing.css @@ -0,0 +1,25 @@ +/** + * @file + * Zen's rollover edit links for blocks. + */ + + +div.block.with-block-editing { + position: relative; +} + +div.block.with-block-editing div.edit { + display: none; + position: absolute; + right: 0; /* LTR */ + top: 0; + z-index: 40; + border: 1px solid #eee; + padding: 0 2px; + font-size: 0.75em; + background-color: #fff; +} + +div.block.with-block-editing:hover div.edit { + display: block; +} diff --git a/themes/zen/STARTERKIT/css/blocks.css b/themes/zen/STARTERKIT/css/blocks.css new file mode 100644 index 0000000..1a050be --- /dev/null +++ b/themes/zen/STARTERKIT/css/blocks.css @@ -0,0 +1,96 @@ +/** + * @file + * Block Styling + */ + + +.block /* Block wrapper */ { + margin-bottom: 1em; +} + +.block.first /* The first block in the region */ { +} + +.block.last /* The last block in the region */ { +} + +.block.region-odd /* Zebra striping for each block in the region */ { +} + +.block.region-even /* Zebra striping for each block in the region */ { +} + +.block.odd /* Zebra striping independent of each region */ { +} + +.block.even /* Zebra striping independent of each region */ { +} + +.region-count-1 /* Incremental count for each block in the region */ { +} + +.count-1 /* Incremental count independent of each region */ { +} + +.block h2.title /* Block title */ { +} + +.block .content /* Block's content wrapper */ { +} + +#block-aggregator-category-1 /* Block for the latest news items in the first category */ { +} + +#block-aggregator-feed-1 /* Block for the latest news items in the first feed */ { +} + +#block-block-1 /* First administrator-defined block */ { +} + +#block-blog-0 /* "Recent blog posts" block */ { +} + +#block-book-0 /* "Book navigation" block for the current book's table of contents */ { +} + +#block-comment-0 /* "Recent comments" block */ { +} + +#block-forum-0 /* "Active forum topics" block */ { +} + +#block-forum-1 /* "New forum topics" block */ { +} + +#block-menu-primary-links /* "Primary links" block */ { +} + +#block-menu-secondary-links /* "Secondary links" block */ { +} + +#block-node-0 /* "Syndicate" block for primary RSS feed */ { +} + +#block-poll-0 /* "Most recent poll" block */ { +} + +#block-profile-0 /* "Author information" block for the profile of the page's author */ { +} + +#block-search-0 /* "Search form" block */ { +} + +#block-statistics-0 /* "Popular content" block */ { +} + +#block-user-0 /* "User login form" block */ { +} + +#block-user-1 /* "Navigation" block for Drupal navigation menu */ { +} + +#block-user-2 /* "Who's new" block for a list of the newest users */ { +} + +#block-user-3 /* "Who's online" block for a list of the online users */ { +} diff --git a/themes/zen/STARTERKIT/css/comments.css b/themes/zen/STARTERKIT/css/comments.css new file mode 100644 index 0000000..0eed0cb --- /dev/null +++ b/themes/zen/STARTERKIT/css/comments.css @@ -0,0 +1,79 @@ +/** + * @file + * Comment Styling + */ + + +#comments /* Wrapper for the list of comments and its title */ { + margin: 1em 0; +} + +#comments h2.title /* Heading for the list of comments */ { +} + +.comment /* Wrapper for a single comment */ { +} + +.comment-preview /* Preview of the comment before submitting new or updated comment */ { +} + +.comment.new /* A new comment since the user last viewed the page. */ { +} + +.comment.first /* The first comment in the list of comments */ { +} + +.comment.last /* The last comment in the list of comments */ { +} + +.comment.odd /* An odd-numbered comment in the list of comments */ { +} + +.comment.even /* An even-numbered comment in the list of comments */ { +} + +.comment-unpublished /* Unpublished comments */ { + /* background-color: #fff4f4; */ /* Drupal core uses a #fff4f4 background */ +} + +.comment-unpublished div.unpublished /* The word "Unpublished" displayed underneath the content. See also the div.unpublished declaration in the nodes.css. */ { +} + +.comment-by-anonymous /* A comment created by an anonymous user */ { +} + +.comment-by-node-author /* A comment created by the node's author */ { +} + +.comment-by-viewer /* A comment created by the current user */ { +} + +.comment h3.title /* Comment title */ { +} + +.new /* "New" marker for comments that are new for the current user */ { + color: #c00; +} + +.comment .picture /* The picture of the comment author */ { +} + +.comment .submitted /* The "posted by" information */ { +} + +.comment .content /* Comment's content wrapper */ { +} + +.comment .user-signature /* The user's signature */ { +} + +.comment ul.links /* Comment links. See also the ul.links declaration in the pages.css. */ { +} + +.indented /* Nested comments are indented */ { + /* margin-left: 25px; */ /* Drupal core uses a 25px left margin */ +} + +.preview .comment /* Preview of the comment before submitting new or updated comment */ { + /* background-color: #ffffea; */ /* Drupal core uses a #ffffea background */ +} diff --git a/themes/zen/STARTERKIT/css/drupal6-reference.css b/themes/zen/STARTERKIT/css/drupal6-reference.css new file mode 100644 index 0000000..14df3ef --- /dev/null +++ b/themes/zen/STARTERKIT/css/drupal6-reference.css @@ -0,0 +1,1983 @@ +/** + * @file + * DRUPAL 6.x Reference CSS + * + * THIS FILE IS FOR REFERENCE ONLY AND IS NOT USED IN ANY WAY BY THE ZEN THEME. + * + * Drupal has very modular CSS. Which means that only the CSS that is needed + * for a particular page is loaded. This is a good thing. + * + * However, this makes it difficult for theme developers to discover how and + * where a particular style is coming from. So, here in all its glory is the + * complete CSS included with Drupal core 6.x. + * + * And, if you're not already, you should check out the free Firebug extension + * for Firefox. With it, you can inspect elements and easily view and play with + * its CSS styles. http://www.getfirebug.com + */ + + +/* + * modules/aggregator/aggregator-rtl.css + */ + +#aggregator .feed-source .feed-icon { + float: left; +} + + +/* + * modules/aggregator/aggregator.css + */ + +#aggregator .feed-source .feed-title { + margin-top: 0; +} +#aggregator .feed-source .feed-image img { + margin-bottom: 0.75em; +} +#aggregator .feed-source .feed-icon { + float: right; /* LTR */ + display: block; +} +#aggregator .feed-item { + margin-bottom: 1.5em; +} +#aggregator .feed-item-title { + margin-bottom: 0; + font-size: 1.3em; +} +#aggregator .feed-item-meta, #aggregator .feed-item-body { + margin-bottom: 0.5em; +} +#aggregator .feed-item-categories { + font-size: 0.9em; +} +#aggregator td { + vertical-align: bottom; +} +#aggregator td.categorize-item { + white-space: nowrap; +} +#aggregator .categorize-item .news-item .body { + margin-top: 0; +} +#aggregator .categorize-item h3 { + margin-bottom: 1em; + margin-top: 0; +} + + +/* + * modules/block/block.css + */ + +#blocks td.region { + font-weight: bold; +} +#blocks tr.region-message { + font-weight: normal; + color: #999; +} +#blocks tr.region-populated { + display: none; +} +.block-region { + background-color: #ff6; + margin-top: 4px; + margin-bottom: 4px; + padding: 3px; +} + + +/* + * modules/book/book-rtl.css + */ + +.book-navigation .page-previous { + float: right; +} +.book-navigation .page-up { + float: right; +} + + +/* + * modules/book/book.css + */ + +.book-navigation .menu { + border-top: 1px solid #888; + padding: 1em 0 0 3em; +} +.book-navigation .page-links { + border-top: 1px solid #888; + border-bottom: 1px solid #888; + text-align: center; + padding: 0.5em; +} +.book-navigation .page-previous { + text-align: left; + width: 42%; + display: block; + float: left; /* LTR */ +} +.book-navigation .page-up { + margin: 0 5%; + width: 4%; + display: block; + float: left; /* LTR */ +} +.book-navigation .page-next { + text-align: right; + width: 42%; + display: block; + float: right; +} +#book-outline { + min-width: 56em; +} +.book-outline-form .form-item { + margin-top: 0; + margin-bottom: 0; +} +#edit-book-bid-wrapper .description { + clear: both; +} +#book-admin-edit select { + margin-right: 24px; +} +#book-admin-edit select.progress-disabled { + margin-right: 0; +} +#book-admin-edit tr.ahah-new-content { + background-color: #ffd; +} +#book-admin-edit .form-item { + float: left; +} + + +/* + * modules/color/color-rtl.css + */ + +#placeholder { + left: 0; + right: auto; +} + +/* Palette */ +.color-form .form-item { + padding-left: 0; + padding-right: 1em; +} +.color-form label { + float: right; + clear: right; +} +.color-form .form-text, .color-form .form-select { + float: right; +} +.color-form .form-text { + margin-right: 0; + margin-left: 5px; +} + +#palette .hook { + float: right; +} +#palette .down, #palette .up, #palette .both { + background: url(images/hook-rtl.png) no-repeat 0 0; +} +#palette .up { + background-position: 0 -27px; +} +#palette .both { + background-position: 0 -54px; +} + +#palette .lock { + float: right; + right: -10px; +} +html.js #preview { + float: right; +} + + +/* + * modules/color/color.css + */ + +/* Farbtastic placement */ +.color-form { + max-width: 50em; + position: relative; +} +#placeholder { + position: absolute; + top: 0; + right: 0; /* LTR */ +} + +/* Palette */ +.color-form .form-item { + height: 2em; + line-height: 2em; + padding-left: 1em; /* LTR */ + margin: 0.5em 0; +} +.color-form label { + float: left; /* LTR */ + clear: left; /* LTR */ + width: 10em; +} +.color-form .form-text, .color-form .form-select { + float: left; /* LTR */ +} +.color-form .form-text { + text-align: center; + margin-right: 5px; /* LTR */ + cursor: pointer; +} + +#palette .hook { + float: left; /* LTR */ + margin-top: 3px; + width: 16px; + height: 16px; +} +#palette .down, #palette .up, #palette .both { + background: url(images/hook.png) no-repeat 100% 0; /* LTR */ +} +#palette .up { + background-position: 100% -27px; /* LTR */ +} +#palette .both { + background-position: 100% -54px; /* LTR */ +} + +#palette .lock { + float: left; /* LTR */ + position: relative; + top: -1.4em; + left: -10px; /* LTR */ + width: 20px; + height: 25px; + background: url(images/lock.png) no-repeat 50% 2px; + cursor: pointer; +} +#palette .unlocked { + background-position: 50% -22px; +} +#palette .form-item { + width: 20em; +} +#palette .item-selected { + background: #eee; +} + +/* Preview */ +#preview { + display: none; +} +html.js #preview { + display: block; + position: relative; + float: left; /* LTR */ +} + + +/* + * modules/comment/comment-rtl.css + */ + +.indented { + margin-left: 0; + margin-right: 25px; +} + + +/* + * modules/comment/comment.css + */ + +.indented { + margin-left: 25px; /* LTR */ +} +.comment-unpublished { + background-color: #fff4f4; +} +.preview .comment { + background-color: #ffffea; +} + + +/* + * modules/dblog/dblog-rtl.css + */ + +#edit-type-wrapper, #edit-severity-wrapper { + float: right; + padding-right: 0; + padding-left: .8em; +} + + +/* + * modules/dblog/dblog.css + */ + +#edit-type-wrapper, #edit-severity-wrapper { + float: left; /* LTR */ + padding-right: .8em; /* LTR */ + margin: 0.1em; + /** + * In Opera 9, DOM elements with the property of "overflow: auto" + * will partially hide its contents with unnecessary scrollbars when + * its immediate child is floated without an explicit width set. + */ + width: 15em; +} +#dblog-filter-form .form-item select.form-select { + width: 100%; +} +tr.dblog-user { + background: #ffd; +} +tr.dblog-user .active { + background: #eed; +} +tr.dblog-content { + background: #ddf; +} +tr.dblog-content .active { + background: #cce; +} +tr.dblog-page-not-found, tr.dblog-access-denied { + background: #dfd; +} +tr.dblog-page-not-found .active, tr.dblog-access-denied .active { + background: #cec; +} +tr.dblog-error { + background: #ffc9c9; +} +tr.dblog-error .active { + background: #eeb9b9; +} + + +/* + * modules/forum/forum-rtl.css + */ + +#forum tr td.forum { + padding-left: 0.5em; + padding-right: 25px; + background-position: 98% 2px; +} +.forum-topic-navigation { + padding: 1em 3em 0 0; +} +.forum-topic-navigation .topic-previous { + text-align: left; + float: right; +} +.forum-topic-navigation .topic-next { + text-align: right; + float: left; +} + + +/* + * modules/forum/forum.css + */ + +#forum .description { + font-size: 0.9em; + margin: 0.5em; +} +#forum td.created, #forum td.posts, #forum td.topics, #forum td.last-reply, #forum td.replies, #forum td.pager { + white-space: nowrap; +} +#forum td.posts, #forum td.topics, #forum td.replies, #forum td.pager { + text-align: center; +} +#forum tr td.forum { + padding-left: 25px; /* LTR */ + background-position: 2px 2px; /* LTR */ + background-image: url(../../misc/forum-default.png); + background-repeat: no-repeat; +} +#forum tr.new-topics td.forum { + background-image: url(../../misc/forum-new.png); +} +#forum div.indent { + margin-left: 20px; +} + +.forum-topic-navigation { + padding: 1em 0 0 3em; /* LTR */ + border-top: 1px solid #888; + border-bottom: 1px solid #888; + text-align: center; + padding: 0.5em; +} +.forum-topic-navigation .topic-previous { + text-align: right; /* LTR */ + float: left; /* LTR */ + width: 46%; +} +.forum-topic-navigation .topic-next { + text-align: left; /* LTR */ + float: right; /* LTR */ + width: 46%; +} + + +/* + * modules/help/help-rtl.css + */ + +.help-items { + float: right; + padding-right: 0; + padding-left: 3%; +} +.help-items-last { + padding-right: 0; + padding-left: 0; +} + + +/* + * modules/help/help.css + */ + +.help-items { + float: left; /* LTR */ + width: 22%; + padding-right: 3%; /* LTR */ +} +.help-items-last { + padding-right: 0; /* LTR */ +} + + +/* + * modules/locale/locale.css + */ + +.locale-untranslated { + font-style: normal; + text-decoration: line-through; +} + + +/* + * modules/node/node-rtl.css + */ + +#node-admin-buttons { + float: right; + margin-left: 0; + margin-right: 0.5em; + clear: left; +} + + +/* + * modules/node/node.css + */ + +.node-unpublished { + background-color: #fff4f4; +} +.preview .node { + background-color: #ffffea; +} +#node-admin-filter ul { + list-style-type: none; + padding: 0; + margin: 0; + width: 100%; +} +#node-admin-buttons { + float: left; /* LTR */ + margin-left: 0.5em; /* LTR */ + clear: right; /* LTR */ +} +td.revision-current { + background: #ffc; +} +.node-form .form-text { + display: block; + width: 95%; +} +.node-form .container-inline .form-text { + display: inline; + width: auto; +} +.node-form .standard { + clear: both; +} +.node-form textarea { + display: block; + width: 95%; +} +.node-form .attachments fieldset { + float: none; + display: block; +} +.terms-inline { + display: inline; +} + + +/* + * modules/openid/openid.css + */ + +#edit-openid-identifier { + background-image: url("login-bg.png"); + background-position: 0% 50%; + background-repeat: no-repeat; + padding-left: 20px; +} +div#edit-openid-identifier-wrapper { + display: block; +} +html.js #user-login-form div#edit-openid-identifier-wrapper, +html.js #user-login div#edit-openid-identifier-wrapper { + display: none; +} +html.js #user-login-form li.openid-link, +html.js #user-login li.openid-link { + display : block; + list-style: none; +} +#user-login-form ul { + margin-top: 0; +} +#user-login ul { + margin: 0 0 5px; +} +#user-login ul li { + margin: 0; +} +#user-login-form li.openid-link, +#user-login-form li.user-link, +#user-login li.openid-link, +#user-login li.user-link { + display: none; +} +#user-login-form li.openid-link a, +#user-login li.openid-link a { + background: transparent url("login-bg.png") no-repeat 0 2px; + padding: 0 20px; +} + + +/* + * modules/poll/poll-rtl.css + */ + +.poll .bar .foreground { + float: right; +} +.poll .percent { + text-align: left; +} +.poll .vote-form .choices { + text-align: right; +} + + +/* + * modules/poll/poll.css + */ + +.poll .bar { + height: 1em; + margin: 1px 0; + background-color: #ddd; +} +.poll .bar .foreground { + background-color: #000; + height: 1em; + float: left; /* LTR */ +} +.poll .links { + text-align: center; +} +.poll .percent { + text-align: right; /* LTR */ +} +.poll .total { + text-align: center; +} +.poll .vote-form { + text-align: center; +} +.poll .vote-form .choices { + text-align: left; /* LTR */ + margin: 0 auto; + display: table; +} +.poll .vote-form .choices .title { + font-weight: bold; +} +.node-form #edit-poll-more { + margin: 0; +} +td.poll-chtext { + width: 80%; +} +td.poll-chvotes .form-text { + width: 85%; +} + + +/* + * modules/profile/profile.css + */ + +#profile-fields td.category { + font-weight: bold; +} +#profile-fields tr.category-message { + color: #999; +} +#profile-fields tr.category-populated { + display: none; +} + + +/* + * modules/search/search-rtl.css + */ + +.search-advanced .criterion { + float: right; + margin-right: 0; + margin-left: 2em; +} +.search-advanced .action { + float: right; + clear: right; +} + + +/* + * modules/search/search.css + */ + +.search-form { + margin-bottom: 1em; +} +.search-form input { + margin-top: 0; + margin-bottom: 0; +} +.search-results p { + margin-top: 0; +} +.search-results dt { + font-size: 1.1em; +} +.search-results dd { + margin-bottom: 1em; +} +.search-results .search-info { + font-size: 0.85em; +} +.search-advanced .criterion { + float: left; /* LTR */ + margin-right: 2em; /* LTR */ +} +.search-advanced .action { + float: left; /* LTR */ + clear: left; /* LTR */ +} + + +/* + * modules/system/admin-rtl.css + */ + +div.admin-panel .body { + padding: 0 8px 2px 4px; +} + +div.admin .expert-link { + text-align: left; + margin-right: 0; + margin-left: 1em; + padding-right: 0; + padding-left: 4px; +} + +table.system-status-report th, table.system-status-report tr.merge-up td { + padding-right: 30px; +} + +table.system-status-report th { + background-position: 95% 50%; +} + +table.screenshot { + margin-left: 1em; +} + +.date-container { + clear: right; +} +.date-container .select-container, .date-container .custom-container { + float: right; +} +.date-container .custom-container { + margin-left: 0; + margin-right: 15px; +} + + +/* + * modules/system/admin.css + */ + +/* +** Formatting for administration page +*/ +div.admin-panel { + margin: 0; + padding: 5px 5px 15px 5px; +} + +div.admin-panel .description { + margin: 0 0 3px; + padding: 2px 0 3px 0; +} + +div.admin-panel .body { + padding: 0 4px 2px 8px; /* LTR */ +} + +div.admin { + padding-top: 15px; +} + +div.admin .left { + float: left; + width: 47%; + margin-left: 1em; +} +div.admin .right { + float: right; + width: 47%; + margin-right: 1em; +} + +div.admin .expert-link { + text-align: right; /* LTR */ + margin-right: 1em; /* LTR */ + padding-right: 4px; /* LTR */ +} + +table.package { + width: 100%; +} +table.package .description { + width: 100%; +} +table.package .version { + direction: ltr; +} +div.admin-dependencies, div.admin-required { + font-size: 0.9em; + color: #444; +} +span.admin-disabled { + color: #800; +} +span.admin-enabled { + color: #080; +} +span.admin-missing { + color: #f00; +} + +/** + * Formatting for status report + */ +table.system-status-report th { + border-bottom: 1px solid #ccc; +} +table.system-status-report th, table.system-status-report tr.merge-up td { + padding-left: 30px; /* LTR */ +} +table.system-status-report th { + background-repeat: no-repeat; + background-position: 5px 50%; /* LTR */ + padding-top: 6px; + padding-bottom: 6px; +} +table.system-status-report tr.error th { + background-image: url(../../misc/watchdog-error.png); +} +table.system-status-report tr.warning th { + background-image: url(../../misc/watchdog-warning.png); +} +table.system-status-report tr.ok th { + background-image: url(../../misc/watchdog-ok.png); +} + +/** + * Formatting for theme configuration + */ +.theme-settings-left { + float: left; + width: 49%; +} +.theme-settings-right { + float: right; + width: 49%; +} +.theme-settings-bottom { + clear: both; +} + +/** + * Formatting for theme overview + */ +table.screenshot { + margin-right: 1em; /* LTR */ +} +.theme-info h2 { + margin-bottom: 0; +} +.theme-info p { + margin-top: 0; +} + + +/** + * Date and time settings page + */ +.date-container { + overflow: auto; + clear: left; /* LTR */ +} +.date-container .form-item { + margin-top: 0; +} +.date-container .select-container, .date-container .custom-container { + float: left; /* LTR */ +} +.date-container .custom-container { + margin-left: 15px; /* LTR */ + width: 50%; +} +html.js .custom-container label { + visibility: hidden; +} + + +/* + * modules/system/defaults-rtl.css + */ + +th { + text-align: right; + padding-right: 0; + padding-left: 1em; +} + + +/* + * modules/system/defaults.css + */ + +/* +** HTML elements +*/ +fieldset { + margin-bottom: 1em; + padding: .5em; +} +form { + margin: 0; + padding: 0; +} +hr { + height: 1px; + border: 1px solid gray; +} +img { + border: 0; +} +table { + border-collapse: collapse; +} +th { + text-align: left; /* LTR */ + padding-right: 1em; /* LTR */ + border-bottom: 3px solid #ccc; +} + +/* +** Markup free clearing +** Details: http://www.positioniseverything.net/easyclearing.html +*/ +.clear-block:after { + content: "."; + display: block; + height: 0; + clear: both; + visibility: hidden; +} + +.clear-block { + display: inline-block; +} + +/* Hides from IE-mac \*/ +* html .clear-block { + height: 1%; +} +.clear-block { + display: block; +} +/* End hide from IE-mac */ + + +/* + * modules/system/maintenance.css + */ + +/* Update styles */ +#update-results { + margin-top: 3em; + padding: 0.25em; + border: 1px solid #ccc; + background: #eee; + font-size: smaller; +} +#update-results h2 { + margin-top: 0.25em; +} +#update-results h4 { + margin-bottom: 0.25em; +} +#update-results li.none { + color: #888; + font-style: italic; +} +#update-results li.failure strong { + color: #b63300; +} + + +/* + * modules/system/system-menus-rtl.css + */ + +ul.menu { + text-align:right; +} +ul.menu li { + margin: 0 0.5em 0 0; +} +li.expanded { + padding: 0.2em 0 0 0.5em; +} +li.collapsed { + list-style-image: url(../../misc/menu-collapsed-rtl.png); + padding: 0.2em 0 0 0.5em; +} +li.leaf { + padding: 0.2em 0 0 0.5em; +} + + +/* + * modules/system/system-menus.css + */ + +ul.menu { + list-style: none; + border: none; + text-align:left; /* LTR */ +} +ul.menu li { + margin: 0 0 0 0.5em; /* LTR */ +} +li.expanded { + list-style-type: circle; + list-style-image: url(../../misc/menu-expanded.png); + padding: 0.2em 0.5em 0 0; /* LTR */ + margin: 0; +} +li.collapsed { + list-style-type: disc; + list-style-image: url(../../misc/menu-collapsed.png); /* LTR */ + padding: 0.2em 0.5em 0 0; /* LTR */ + margin: 0; +} +li.leaf { + list-style-type: square; + list-style-image: url(../../misc/menu-leaf.png); + padding: 0.2em 0.5em 0 0; /* LTR */ + margin: 0; +} +li a.active { + color: #000; +} +td.menu-disabled { + background: #ccc; +} +ul.links { + margin: 0; + padding: 0; +} +ul.links.inline { + display: inline; +} +ul.links li { + display: inline; + list-style-type: none; + padding: 0 0.5em; +} +.block ul { + margin: 0; + padding: 0 0 0.25em 1em; /* LTR */ +} + + +/* + * modules/system/system-rtl.css + */ + +thead th { + text-align: right; + padding-left: 1em; + padding-right: 0.5em; +} + +.item-list .icon { + float: left; + padding-left: 0; + padding-right: 0.25em; + clear: left; +} +.item-list ul li { + margin: 0 1.5em 0.25em 0; +} + +.more-link { + text-align: left; +} +.more-help-link { + text-align: left; +} + +dl.multiselect dt, dl.multiselect dd { + float: right; + margin: 0 0 0 1em; +} + +.block ul { + padding: 0 1em 0.25em 0; +} + +ul.primary { + padding: 0 1em 0 0; +} +ul.primary li a { + margin-right: 5px; + margin-left: 0.5em; +} +ul.secondary li { + display: inline; + padding: 0 1em; + border-right: none; + border-left: 1px solid #ccc; +} +html.js input.form-autocomplete { + background-position: 0% 2px; +} +html.js input.throbbing { + background-position: 0% -18px; +} + +html.js fieldset.collapsible legend a { + padding-left: 0; + padding-right: 15px; + background-position: 98% 75%; +} +html.js fieldset.collapsed legend a { + background-image: url(../../misc/menu-collapsed-rtl.png); + background-position: 98% 50%; +} + +div.teaser-button-wrapper { + float: left; + padding-right: 0; + padding-left: 5%; +} +.teaser-checkbox div.form-item { + float: left; + margin: 0 0 0 5%; +} +.progress .percentage { + float: left; +} +.progess-disabled { + float: right; +} +.ahah-progress { + float: right; +} +.ahah-progress .throbber { + float: right; +} +input.password-field { + margin-left: 10px; + margin-right: 0; +} +input.password-confirm { + margin-left: 10px; + margin-right: 0; +} + +.draggable a.tabledrag-handle { + float: right; + margin: -0.4em -0.5em -0.4em 0; + padding: 0.42em 0.5em 0.42em 1.5em; +} +div.indentation { + margin: -0.4em -0.4em -0.4em 0.2em; + padding: 0.42em 0.6em 0.42em 0; + float: right; +} +div.tree-child, div.tree-child-last { + background-position: -65px center; +} + + +/* + * modules/system/system.css + */ + +/* +** HTML elements +*/ +body.drag { + cursor: move; +} +th.active img { + display: inline; +} +tr.even, tr.odd { + background-color: #eee; + border-bottom: 1px solid #ccc; + padding: 0.1em 0.6em; +} +tr.drag { + background-color: #fffff0; +} +tr.drag-previous { + background-color: #ffd; +} +td.active { + background-color: #ddd; +} +td.checkbox, th.checkbox { + text-align: center; +} +tbody { + border-top: 1px solid #ccc; +} +tbody th { + border-bottom: 1px solid #ccc; +} +thead th { + text-align: left; /* LTR */ + padding-right: 1em; /* LTR */ + border-bottom: 3px solid #ccc; +} + +/* +** Other common styles +*/ +.breadcrumb { + padding-bottom: .5em +} +div.indentation { + width: 20px; + height: 1.7em; + margin: -0.4em 0.2em -0.4em -0.4em; /* LTR */ + padding: 0.42em 0 0.42em 0.6em; /* LTR */ + float: left; /* LTR */ +} +div.tree-child { + background: url(../../misc/tree.png) no-repeat 11px center; /* LTR */ +} +div.tree-child-last { + background: url(../../misc/tree-bottom.png) no-repeat 11px center; /* LTR */ +} +div.tree-child-horizontal { + background: url(../../misc/tree.png) no-repeat -11px center; +} +.error { + color: #e55; +} +div.error { + border: 1px solid #d77; +} +div.error, tr.error { + background: #fcc; + color: #200; + padding: 2px; +} +.warning { + color: #e09010; +} +div.warning { + border: 1px solid #f0c020; +} +div.warning, tr.warning { + background: #ffd; + color: #220; + padding: 2px; +} +.ok { + color: #008000; +} +div.ok { + border: 1px solid #00aa00; +} +div.ok, tr.ok { + background: #dfd; + color: #020; + padding: 2px; +} +.item-list .icon { + color: #555; + float: right; /* LTR */ + padding-left: 0.25em; /* LTR */ + clear: right; /* LTR */ +} +.item-list .title { + font-weight: bold; +} +.item-list ul { + margin: 0 0 0.75em 0; + padding: 0; +} +.item-list ul li { + margin: 0 0 0.25em 1.5em; /* LTR */ + padding: 0; + list-style: disc; +} +ol.task-list li.active { + font-weight: bold; +} +.form-item { + margin-top: 1em; + margin-bottom: 1em; +} +tr.odd .form-item, tr.even .form-item { + margin-top: 0; + margin-bottom: 0; + white-space: nowrap; +} +tr.merge-down, tr.merge-down td, tr.merge-down th { + border-bottom-width: 0 !important; +} +tr.merge-up, tr.merge-up td, tr.merge-up th { + border-top-width: 0 !important; +} +.form-item input.error, .form-item textarea.error, .form-item select.error { + border: 2px solid red; +} +.form-item .description { + font-size: 0.85em; +} +.form-item label { + display: block; + font-weight: bold; +} +.form-item label.option { + display: inline; + font-weight: normal; +} +.form-checkboxes, .form-radios { + margin: 1em 0; +} +.form-checkboxes .form-item, .form-radios .form-item { + margin-top: 0.4em; + margin-bottom: 0.4em; +} +.marker, .form-required { + color: #f00; +} +.more-link { + text-align: right; /* LTR */ +} +.more-help-link { + font-size: 0.85em; + text-align: right; /* LTR */ +} +.nowrap { + white-space: nowrap; +} +.item-list .pager { + clear: both; + text-align: center; +} +.item-list .pager li { + background-image:none; + display:inline; + list-style-type:none; + padding: 0.5em; +} +.pager-current { + font-weight:bold; +} +.tips { + margin-top: 0; + margin-bottom: 0; + padding-top: 0; + padding-bottom: 0; + font-size: 0.9em; +} +dl.multiselect dd.b, dl.multiselect dd.b .form-item, dl.multiselect dd.b select { + font-family: inherit; + font-size: inherit; + width: 14em; +} +dl.multiselect dd.a, dl.multiselect dd.a .form-item { + width: 8em; +} +dl.multiselect dt, dl.multiselect dd { + float: left; /* LTR */ + line-height: 1.75em; + padding: 0; + margin: 0 1em 0 0; /* LTR */ +} +dl.multiselect .form-item { + height: 1.75em; + margin: 0; +} + +/* +** Inline items (need to override above) +*/ +.container-inline div, .container-inline label { + display: inline; +} + +/* +** Tab navigation +*/ +ul.primary { + border-collapse: collapse; + padding: 0 0 0 1em; /* LTR */ + white-space: nowrap; + list-style: none; + margin: 5px; + height: auto; + line-height: normal; + border-bottom: 1px solid #bbb; +} +ul.primary li { + display: inline; +} +ul.primary li a { + background-color: #ddd; + border-color: #bbb; + border-width: 1px; + border-style: solid solid none solid; + height: auto; + margin-right: 0.5em; /* LTR */ + padding: 0 1em; + text-decoration: none; +} +ul.primary li.active a { + background-color: #fff; + border: 1px solid #bbb; + border-bottom: #fff 1px solid; +} +ul.primary li a:hover { + background-color: #eee; + border-color: #ccc; + border-bottom-color: #eee; +} +ul.secondary { + border-bottom: 1px solid #bbb; + padding: 0.5em 1em; + margin: 5px; +} +ul.secondary li { + display: inline; + padding: 0 1em; + border-right: 1px solid #ccc; /* LTR */ +} +ul.secondary a { + padding: 0; + text-decoration: none; +} +ul.secondary a.active { + border-bottom: 4px solid #999; +} + +/* +** Autocomplete styles +*/ +/* Suggestion list */ +#autocomplete { + position: absolute; + border: 1px solid; + overflow: hidden; + z-index: 100; +} +#autocomplete ul { + margin: 0; + padding: 0; + list-style: none; +} +#autocomplete li { + background: #fff; + color: #000; + white-space: pre; + cursor: default; +} +#autocomplete li.selected { + background: #0072b9; + color: #fff; +} +/* Animated throbber */ +html.js input.form-autocomplete { + background-image: url(../../misc/throbber.gif); + background-repeat: no-repeat; + background-position: 100% 2px; /* LTR */ +} +html.js input.throbbing { + background-position: 100% -18px; /* LTR */ +} + +/* +** Collapsing fieldsets +*/ +html.js fieldset.collapsed { + border-bottom-width: 0; + border-left-width: 0; + border-right-width: 0; + margin-bottom: 0; + height: 1em; +} +html.js fieldset.collapsed * { + display: none; +} +html.js fieldset.collapsed legend { + display: block; +} +html.js fieldset.collapsible legend a { + padding-left: 15px; /* LTR */ + background: url(../../misc/menu-expanded.png) 5px 75% no-repeat; /* LTR */ +} +html.js fieldset.collapsed legend a { + background-image: url(../../misc/menu-collapsed.png); /* LTR */ + background-position: 5px 50%; /* LTR */ +} +/* Note: IE-only fix due to '* html' (breaks Konqueror otherwise). */ +* html.js fieldset.collapsed legend, +* html.js fieldset.collapsed legend *, +* html.js fieldset.collapsed table * { + display: inline; +} +/* For Safari 2 to prevent collapsible fieldsets containing tables from dissapearing due to tableheader.js. */ +html.js fieldset.collapsible { + position: relative; +} +html.js fieldset.collapsible legend a { + display: block; +} +/* Avoid jumping around due to margins collapsing into collapsible fieldset border */ +html.js fieldset.collapsible .fieldset-wrapper { + overflow: auto; +} + +/* +** Resizable text areas +*/ +.resizable-textarea { + width: 95%; +} +.resizable-textarea .grippie { + height: 9px; + overflow: hidden; + background: #eee url(../../misc/grippie.png) no-repeat center 2px; + border: 1px solid #ddd; + border-top-width: 0; + cursor: s-resize; +} +html.js .resizable-textarea textarea { + margin-bottom: 0; + width: 100%; + display: block; +} + +/* +** Table drag and drop. +*/ +.draggable a.tabledrag-handle { + cursor: move; + float: left; /* LTR */ + height: 1.7em; + margin: -0.4em 0 -0.4em -0.5em; /* LTR */ + padding: 0.42em 1.5em 0.42em 0.5em; /* LTR */ + text-decoration: none; +} +a.tabledrag-handle:hover { + text-decoration: none; +} +a.tabledrag-handle .handle { + margin-top: 4px; + height: 13px; + width: 13px; + background: url(../../misc/draggable.png) no-repeat 0 0; +} +a.tabledrag-handle-hover .handle { + background-position: 0 -20px; +} + +/* +** Teaser splitter +*/ +.joined + .grippie { + height: 5px; + background-position: center 1px; + margin-bottom: -2px; +} +/* Keeps inner content contained in Opera 9. */ +.teaser-checkbox { + padding-top: 1px; +} +div.teaser-button-wrapper { + float: right; /* LTR */ + padding-right: 5%; /* LTR */ + margin: 0; +} +.teaser-checkbox div.form-item { + float: right; /* LTR */ + margin: 0 5% 0 0; /* LTR */ + padding: 0; +} +textarea.teaser { + display: none; +} +html.js .no-js { + display: none; +} + +/* +** Progressbar styles +*/ +.progress { + font-weight: bold; +} +.progress .bar { + background: #fff url(../../misc/progress.gif); + border: 1px solid #00375a; + height: 1.5em; + margin: 0 0.2em; +} +.progress .filled { + background: #0072b9; + height: 1em; + border-bottom: 0.5em solid #004a73; + width: 0%; +} +.progress .percentage { + float: right; /* LTR */ +} +.progress-disabled { + float: left; /* LTR */ +} +.ahah-progress { + float: left; /* LTR */ +} +.ahah-progress .throbber { + width: 15px; + height: 15px; + margin: 2px; + background: transparent url(../../misc/throbber.gif) no-repeat 0px -18px; + float: left; /* LTR */ +} +tr .ahah-progress .throbber { + margin: 0 2px; +} +.ahah-progress-bar { + width: 16em; +} + +/* +** Formatting for welcome page +*/ +#first-time strong { + display: block; + padding: 1.5em 0 .5em; +} + +/* +** To be used with tableselect.js +*/ +tr.selected td { + background: #ffc; +} + +/* +** Floating header for tableheader.js +*/ +table.sticky-header { + margin-top: 0; + background: #fff; +} + +/* +** Installation clean URLs +*/ +#clean-url.install { + display: none; +} + +/* +** For anything you want to hide on page load when JS is enabled, so +** that you can use the JS to control visibility and avoid flicker. +*/ +html.js .js-hide { + display: none; +} + +/* +** Styles for the system modules page (admin/build/modules) +*/ +#system-modules div.incompatible { + font-weight: bold; +} + +/* +** Styles for the system themes page (admin/build/themes) +*/ +#system-themes-form div.incompatible { + font-weight: bold; +} + +/* +** Password strength indicator +*/ +span.password-strength { + visibility: hidden; +} +input.password-field { + margin-right: 10px; /* LTR */ +} +div.password-description { + padding: 0 2px; + margin: 4px 0 0 0; + font-size: 0.85em; + max-width: 500px; +} +div.password-description ul { + margin-bottom: 0; +} +.password-parent { + margin: 0 0 0 0; +} +/* +** Password confirmation checker +*/ +input.password-confirm { + margin-right: 10px; /* LTR */ +} +.confirm-parent { + margin: 5px 0 0 0; +} +span.password-confirm { + visibility: hidden; +} +span.password-confirm span { + font-weight: normal; +} + + +/* + * modules/taxonomy/taxonomy.css + */ + +tr.taxonomy-term-preview { + background-color: #EEE; +} +tr.taxonomy-term-divider-top { + border-bottom: none; +} +tr.taxonomy-term-divider-bottom { + border-top: 1px dotted #CCC; +} +.taxonomy-term-description { + margin: 5px 0 20px; +} + + +/* + * modules/tracker/tracker.css + */ + +#tracker td.replies { + text-align: center; +} +#tracker table { + width: 100%; +} + + +/* + * modules/update/update-rtl.css + */ + +.update .project { + padding-right: .25em; +} + +.update .version-status { + float: left; + padding-left: 10px; +} + +.update .version-status .icon { + padding-right: .5em; +} + +.update table.version .version-title { + padding-left: 1em; +} + +.update table.version .version-details { + padding-left: .5em; + direction: ltr; +} + +.update table.version .version-links { + text-align: left; + padding-left: 1em; +} + +.update .check-manually { + padding-right: 1em; +} + + +/* + * modules/update/update.css + */ + +.update .project { + font-weight: bold; + font-size: 110%; + padding-left: .25em; /* LTR */ + height: 22px; +} + +.update .version-status { + float: right; /* LTR */ + padding-right: 10px; /* LTR */ + font-size: 110%; + height: 20px; +} + +.update .version-status .icon { + padding-left: .5em; /* LTR */ +} + +.update .version-date { + white-space: nowrap; +} + +.update .info { + margin: 0; + padding: 1em 1em .25em 1em; +} + +.update tr td { + border-top: 1px solid #ccc; + border-bottom: 1px solid #ccc; +} + +.update tr.error { + background: #fcc; +} + +.update tr.error .version-recommended { + background: #fdd; +} + +.update tr.ok { + background: #dfd; +} + +.update tr.warning { + background: #ffd; +} + +.update tr.warning .version-recommended { + background: #ffe; +} + +.current-version, .new-version { + direction: ltr; /* Note: version numbers should always be LTR. */ +} + +.update tr.unknown { + background: #ddd; +} + +table.update, +.update table.version { + width: 100%; + margin-top: .5em; +} + +.update table.version tbody { + border: none; +} + +.update table.version tr, +.update table.version td { + line-height: .9em; + padding: 0; + margin: 0; + border: none; +} + +.update table.version .version-title { + padding-left: 1em; /* LTR */ + width: 14em; +} + +.update table.version .version-details { + padding-right: .5em; /* LTR */ +} + +.update table.version .version-links { + text-align: right; /* LTR */ + padding-right: 1em; /* LTR */ +} + +.update table.version-security .version-title { + color: #970F00; +} + +.update table.version-recommended-strong .version-title { + font-weight: bold; +} + +.update .security-error { + font-weight: bold; + color: #970F00; +} + +.update .check-manually { + padding-left: 1em; /* LTR */ +} + + +/* + * modules/user/user-rtl.css + */ + +#permissions td.permission { + padding-left: 0; + padding-right: 1.5em; +} +#access-rules .access-type, #access-rules .rule-type { + margin-right: 0; + margin-left: 1em; + float: right; +} +#user-admin-buttons { + float: right; + margin-left: 0; + margin-right: 0.5em; + clear: left; +} + +.profile .picture { + float: left; + margin: 0 0 1em 1em; +} + + +/* + * modules/user/user.css + */ + +#permissions td.module { + font-weight: bold; +} +#permissions td.permission { + padding-left: 1.5em; /* LTR */ +} +#access-rules .access-type, #access-rules .rule-type { + margin-right: 1em; /* LTR */ + float: left; /* LTR */ +} +#access-rules .access-type .form-item, #access-rules .rule-type .form-item { + margin-top: 0; +} +#access-rules .mask { + clear: both; +} +#user-login-form { + text-align: center; +} +#user-admin-filter ul { + list-style-type: none; + padding: 0; + margin: 0; + width: 100%; +} +#user-admin-buttons { + float: left; /* LTR */ + margin-left: 0.5em; /* LTR */ + clear: right; /* LTR */ +} +#user-admin-settings fieldset .description { + font-size: 0.85em; + padding-bottom: .5em; +} + +/* Generated by user.module but used by profile.module: */ +.profile { + clear: both; + margin: 1em 0; +} +.profile .picture { + float: right; /* LTR */ + margin: 0 1em 1em 0; /* LTR */ +} +.profile h3 { + border-bottom: 1px solid #ccc; +} +.profile dl { + margin: 0 0 1.5em 0; +} +.profile dt { + margin: 0 0 0.2em 0; + font-weight: bold; +} +.profile dd { + margin: 0 0 1em 0; +} diff --git a/themes/zen/STARTERKIT/css/fields.css b/themes/zen/STARTERKIT/css/fields.css new file mode 100644 index 0000000..a3d1c18 --- /dev/null +++ b/themes/zen/STARTERKIT/css/fields.css @@ -0,0 +1,44 @@ +/** + * @file + * Field Styling + */ + + +/* + * Field types + */ + +.field /* Wrapper for any CCK field. */ { +} + +.field-type-datetime /* Always use "datetime" when creating new CCK date fields. "date" and "datestamp" are legacy types. */ { +} + +.field-type-filefield /* Field from filefield module */ { +} + +.field-type-nodereference { +} + +.field-type-number-decimal { +} + +.field-type-number-float { +} + +.field-type-number-integer { +} + +.field-type-text { +} + +.field-type-userreference { +} + + +/* + * Named fields + */ + +.field-field-FIELDNAME /* Underscores in field name are replaced with dashes. */ { +} diff --git a/themes/zen/STARTERKIT/css/forms-rtl.css b/themes/zen/STARTERKIT/css/forms-rtl.css new file mode 100644 index 0000000..4e4318e --- /dev/null +++ b/themes/zen/STARTERKIT/css/forms-rtl.css @@ -0,0 +1,46 @@ +/** + * @file + * RTL companion for the forms.css file. + */ + + +/* + * Drupal's default login form block + */ +#user-login-form { + text-align: right; +} + + +/* + * OpenID + * + * The default styling for the OpenID login link seems to assume Garland's + * styling of list items. + */ + +#user-login-form li.openid-link /* The "Log in using OpenID" link. */ { + margin-left: 0; + margin-right: -20px; /* Un-do some of the padding on the ul list. */ +} + +#user-login li.openid-link, +#user-login li.user-link /* The OpenID links on the /user form. */ { + margin-left: 0; + margin-right: -2em; /* Un-do all of the padding on the ul list. */ +} + + +/* + * Drupal admin tables + * + * We overrode these styles in html-elements.css, but restore them for the admin + * section of the site. + */ + +form th, +form thead th { + text-align: right; + padding-left: 1em; + padding-right: 0; +} diff --git a/themes/zen/STARTERKIT/css/forms.css b/themes/zen/STARTERKIT/css/forms.css new file mode 100644 index 0000000..696702f --- /dev/null +++ b/themes/zen/STARTERKIT/css/forms.css @@ -0,0 +1,134 @@ +/** + * @file + * Form Styling + */ + + +.form-item, +.form-checkboxes, +.form-radios /* Wrapper for a form element (or group of form elements) and its label */ { + margin: 1em 0; +} + +.form-item input.error, +.form-item textarea.error, +.form-item select.error /* Highlight the form elements that caused a form submission error */ { + border: 2px solid #c00; +} + +.form-item label /* The label for a form element */ { + display: block; + font-weight: bold; +} + +.form-item label.option /* The label for a radio button or checkbox */ { + display: inline; + font-weight: normal; +} + +.form-required /* The part of the label that indicates a required field */ { + color: #c00; +} + +.form-item .description /* The descriptive help text (separate from the label) */ { + font-size: 0.85em; +} + +.form-checkboxes .form-item, +.form-radios .form-item /* Pack groups of checkboxes and radio buttons closer together */ { + margin: 0.4em 0; +} + +.form-submit /* The submit button */ { +} + +.container-inline div, +.container-inline label /* Inline labels and form divs */ { + display: inline; +} + +.tips /* Tips for Drupal's input formats */ { +} + + +/* + * Search (search-theme-form.tpl.php) + */ +#search-box /* Wrapper for the search form */ { +} + +#edit-search-theme-form-1-wrapper label /* Label that says "Search this site:" */ { + display: none; +} + + +/* + * Search (search-block-form.tpl.php) + */ +#search-block-form /* Wrapper for the search form */ { +} + +#edit-search-block-form-1-wrapper label /* Label that says "Search this site:" */ { + display: none; +} + + +/* + * Drupal's default login form block + */ +#user-login-form { + text-align: left; /* LTR */ +} + + +/* + * OpenID + * + * The default styling for the OpenID login link seems to assume Garland's + * styling of list items. + */ + +#user-login-form ul /* OpenID creates a new ul above the login form's links. */ { + margin-bottom: 0; /* Position OpenID's ul next to the rest of the links. */ +} + +#user-login-form li.openid-link /* The "Log in using OpenID" link. */ { + margin-top: 1em; + margin-left: -20px; /* LTR */ /* Un-do some of the padding on the ul list. */ +} + +#user-login-form li.user-link /* The "Cancel OpenID login" link. */ { + margin-top: 1em; +} + +#user-login ul { + margin: 1em 0; +} + +#user-login li.openid-link, +#user-login li.user-link /* The OpenID links on the /user form. */ { + margin-left: -2em; /* LTR */ /* Un-do all of the padding on the ul list. */ +} + + +/* + * Drupal admin tables + * + * We overrode these styles in html-elements.css, but restore them for the admin + * section of the site. + */ + +form tbody { + border-top: 1px solid #ccc; +} + +form th, +form thead th { + text-align: left; /* LTR */ + padding-right: 1em; /* LTR */ + border-bottom: 3px solid #ccc; +} + +form tbody th { + border-bottom: 1px solid #ccc; +} diff --git a/themes/zen/STARTERKIT/css/html-reset-rtl.css b/themes/zen/STARTERKIT/css/html-reset-rtl.css new file mode 100644 index 0000000..0260d5e --- /dev/null +++ b/themes/zen/STARTERKIT/css/html-reset-rtl.css @@ -0,0 +1,37 @@ +/** + * @file + * RTL companion for the html-reset.css file. + */ + + +/* + * Lists + * + * We need to standardize the list item indentation. + */ +ul, +ol { + padding-left: 0; + padding-right: 2em; +} + +.block ul, +.item-list ul /* Drupal overrides */ { + padding: 0 2em 0 0; +} + +dd { + margin: 0 2em 0 0; +} + +/* + * Tables + * + * Drupal provides table styling which is only useful for its admin section + * forms, so we override this default CSS. (We set it back in forms.css.) + */ +th, +thead th, +tbody th { + text-align: right; +} diff --git a/themes/zen/STARTERKIT/css/html-reset.css b/themes/zen/STARTERKIT/css/html-reset.css new file mode 100644 index 0000000..d57fa3a --- /dev/null +++ b/themes/zen/STARTERKIT/css/html-reset.css @@ -0,0 +1,291 @@ +/** + * @file + * HTML Element Styling + * + * Ok, I admit it. I fooled you. This isn't a "reset" stylesheet. Instead this + * is the place where you should set (not reset) the default styling for all + * HTML elements. + * + * @see http://meiert.com/en/blog/20080419/reset-style-sheets-are-bad/ + * @see http://snook.ca/archives/html_and_css/no_css_reset/ + */ + + +/* + * Fonts + * + * Our font size and line height declarations are based on the following ALA + * article: + * http://www.alistapart.com/articles/howtosizetextincss + * + * All modern browsrs use a 16px default font size. Specifying the font-size + * and line-height in ems (relative to the 16px default font) allows the user + * to resize the font in the browser and produces the most consistent results + * across different browsers. + */ +body { + font-size: 100%; /* Fixes exaggerated text resizing in IE6 and IE7 */ +} + +#skip-link, +#page { + /* + * To use a 12px font size on the page, delete the 14px declarations. + * to use a 14px font size on the page, delete the 12px declarations. + */ + + /* Use a 12px base font size with a 16px line height */ + font-size: 0.75em; /* 16px x .75 = 12px */ + line-height: 1.333em; /* 12px x 1.333 = 16px */ + + /* Use a 14px base font size with a 18px line height */ + font-size: 0.875em; /* 16px x .875 = 14px */ + line-height: 1.286em; /* 14px x 1.286 = 18px */ +} + +body, +caption, +th, +td, +input, +textarea, +select, +option, +legend, +fieldset { + /* The following font family declarations are based on the Microsoft core web + * fonts which are common fonts available on most computer systems. The DejaVu + * fonts are commonly available on Linux systems where the MS fonts are less + * common. Tahoma and Helvetica are also widely available. + * + * A user's web browser will look at the comma-separated list and will + * attempt to use each font in turn until it finds one that is available + * on the user's computer. The final "generic" font (sans-serif or serif) + * hints at what type of font to use if the web browser doesn't find any + * of the fonts in the list. + + font-family: "Times New Roman", Times, Georgia, "DejaVu Serif", serif; + font-family: Times, "Times New Roman", Georgia, "DejaVu Serif", serif; + font-family: Georgia, "Times New Roman", "DejaVu Serif", serif; + + font-family: Verdana, Tahoma, "DejaVu Sans", sans-serif; + font-family: Tahoma, Verdana, "DejaVu Sans", sans-serif; + font-family: Helvetica, Arial, "Nimbus Sans L", sans-serif; + font-family: Arial, Helvetica, "Nimbus Sans L", sans-serif; + + font-family: "Courier New", "DejaVu Sans Mono", monospace; + + */ + + font-family: Verdana, Tahoma, "DejaVu Sans", sans-serif; +} + +pre, +code { + font-size: 1.1em; /* Monospace fonts can be hard to read */ + font-family: "Courier New", "DejaVu Sans Mono", monospace; +} + +/* + * Headings + */ +h1 { + font-size: 2em; + line-height: 1.3em; + margin-top: 0; + margin-bottom: 0.5em; /* 0.5em is equavalent to 1em in the page's base font. + Remember, a margin specified in ems is relative to + the element's font-size, not to the pages' base + font size. So, for example, if we want a 1em margin + (relative to the base font), we have to divide that + length by the element's font-size: + 1em / 2em = 0.5em */ +} + +h2 { + font-size: 1.5em; + line-height: 1.3em; + margin-top: 0.667em; /* Equivalent to 1em in the page's base font: 1 / 1.5 = 0.667em */ + margin-bottom: 0.667em; +} + +h3 { + font-size: 1.3em; + line-height: 1.3em; + margin-top: 0.769em; /* Equivalent to 1em in the page's base font: 1 / 1.3 = 0.769 */ + margin-bottom: 0.769em; +} + +h4, +h5, +h6 { + font-size: 1.1em; + line-height: 1.3em; + margin-top: 0.909em; /* Equivalent to 1em in the page's base font: 1 / 1.1 = 0.909 */ + margin-bottom: 0.909em; +} + +/* + * Block-level elements + */ +p, +ul, +ol, +dl, +pre, +table, +fieldset { + margin: 1em 0; +} + +blockquote { + margin: 1em 2em; +} + +/* + * Lists + * + * We need to standardize the list item indentation. + */ +ul, +ol { + margin-left: 0; + padding-left: 2em; /* LTR */ +} + +.block ul, +.item-list ul /* Drupal overrides */ { + margin: 1em 0; + padding: 0 0 0 2em; /* LTR */ +} + +ul ul, ul ol, +ol ol, ol ul, +.block ul ul, .block ul ol, +.block ol ol, .block ol ul, +.item-list ul ul, .item-list ul ol, +.item-list ol ol, .item-list ol ul { + margin: 0; +} + +li { + margin: 0; + padding: 0; +} + +.item-list ul li /* Drupal override */ { + margin: 0; + padding: 0; + list-style: inherit; +} + +ul.menu li, +li.expanded, +li.collapsed, +li.leaf /* Drupal override */ { + margin: 0; + padding: 0; +} + +ul { list-style-type: disc; } +ul ul { list-style-type: circle; } +ul ul ul { list-style-type: square; } +ul ul ul ul { list-style-type: circle; } +ol { list-style-type: decimal; } +ol ol { list-style-type: lower-alpha; } +ol ol ol { list-style-type: decimal; } + +dt { + margin: 0; + padding: 0; +} + +dd { + margin: 0 0 0 2em; + padding: 0; +} + +/* + * Links + * + * The order of link states are based on Eric Meyer's article: + * http://meyerweb.com/eric/thoughts/2007/06/11/who-ordered-the-link-states + */ +a:link { +} + +a:visited { +} + +a:hover, +a:focus { +} + +a:active { +} + +/* + * Tables + * + * Drupal provides table styling which is only useful for its admin section + * forms, so we override this default CSS. (We set it back in forms.css.) + */ +table { + border-collapse: collapse; + /* width: 100%; */ /* Prevent cramped-looking tables */ +} + +th, +thead th, +tbody th { + text-align: left; /* LTR */ + padding: 0; + border-bottom: none; +} + +tbody { + border-top: none; +} + +/* + * Abbreviations + */ +abbr { + border-bottom: 1px dotted #666; + cursor: help; + white-space: nowrap; +} + +abbr.created /* Date-based "abbreviations" show computer-friendly timestamps which are not human-friendly. */ { + border: none; + cursor: auto; + white-space: normal; +} + +/* + * Images + */ +img { + border: 0; +} + +/* + * Horizontal rules + */ +hr { + height: 1px; + border: 1px solid #666; +} + +/* + * Forms + */ +form { + margin: 0; + padding: 0; +} + +fieldset { + margin: 1em 0; + padding: 0.5em; +} diff --git a/themes/zen/STARTERKIT/css/ie.css b/themes/zen/STARTERKIT/css/ie.css new file mode 100644 index 0000000..9eb0bb7 --- /dev/null +++ b/themes/zen/STARTERKIT/css/ie.css @@ -0,0 +1,47 @@ +/** + * @file + * CSS targeted specifically for Internet Explorer for Windows. + * + * Any CSS in this file will apply to all versions of IE. You can target + * specific versions of IE by using conditional comments. See your sub-theme's + * .info file for an easy way to use them. + * + * While building your theme, you should be aware that IE limits Drupal to 31 + * stylesheets total. The work-around for the bug is to enable CSS aggregation + * under: admin / settings / performance. + */ + + +/* + * Tabs + */ +ul.primary li a, +ul.primary li a .tab, +ul.secondary li a, +ul.secondary li a .tab { + cursor: pointer; +} + +/* + * Drupal nodes + */ +.node-unpublished .node-inner>* { + position: relative; /* Otherwise these elements will appear below the "Unpublished" text. */ +} + +/* + * Drupal admin tables + */ +tr.even th, +tr.even td, +tr.odd th, +tr.odd td { + border-bottom: 1px solid #ccc; /* IE doesn't display borders on table rows */ +} + +/* + * Markup free clearing + */ +.clearfix { + zoom: 1; +} diff --git a/themes/zen/STARTERKIT/css/ie6-rtl.css b/themes/zen/STARTERKIT/css/ie6-rtl.css new file mode 100644 index 0000000..4d6f40c --- /dev/null +++ b/themes/zen/STARTERKIT/css/ie6-rtl.css @@ -0,0 +1,12 @@ +/** + * @file + * RTL companion for the ie6.css file. + */ + + +/* + * Layout CSS + */ +#page { + text-align: right; /* 2nd part of IE5/IE6quirks centering hack */ +} diff --git a/themes/zen/STARTERKIT/css/ie6.css b/themes/zen/STARTERKIT/css/ie6.css new file mode 100644 index 0000000..4441e47 --- /dev/null +++ b/themes/zen/STARTERKIT/css/ie6.css @@ -0,0 +1,105 @@ +/** + * @file + * CSS targeted specifically for Internet Explorer 5 and 6 for Windows. + * + * Any CSS in this file will override the rules specified in the ie.css file. + */ + + +/* + * Layout CSS + */ + +body { + text-align: center; /* 1st part of IE5/IE6quirks centering hack */ +} + +#page { + text-align: left; /* LTR */ /* 2nd part of IE5/IE6quirks centering hack */ +} + +#main-wrapper { + zoom: 1; /* Otherwise with a liquid layout, sidebars disappear when resizing the windows in IE6 */ +} + +#content, +#navigation, +.region-sidebar-first, +.region-sidebar-second /* Floating divs */ { + display: inline; /* display inline or double your floated margin! [1] */ + overflow: hidden; /* in ie6, overflow auto is broken [2] and so is overflow visible [3] */ + overflow-y: visible; +} + +/* + * Tabs - IE 5 and 6 don't support PNGs with alpha transparency. + */ + +ul.primary li a, +ul.primary li a .tab, +ul.secondary li a, +ul.secondary li a .tab { + display: inline-block; /* Otherwise the blocks mistakenly get 100% width in IE6 */ +} + +ul.primary li a { + background: url(../images/tab-left-ie6.png) no-repeat left -38px; +} + +ul.primary li a .tab { + background: url(../images/tab-right-ie6.png) no-repeat right -38px; +} + +ul.primary li a:hover, +ul.primary li a:focus { + background: url(../images/tab-left-ie6.png) no-repeat left -76px; +} + +ul.primary li a:hover .tab, +ul.primary li a:focus .tab { + background: url(../images/tab-right-ie6.png) no-repeat right -76px; +} + +ul.primary li.active a, +ul.primary li.active a:hover, +ul.primary li.active a:focus { + background: url(../images/tab-left-ie6.png) no-repeat left 0; +} + +ul.primary li.active a .tab, +ul.primary li.active a:hover .tab, +ul.primary li.active a:focus .tab { + background: url(../images/tab-right-ie6.png) no-repeat right 0; +} + +/* + * Messages - IE 5 and 6 don't support PNGs with alpha transparency. + */ + +div.messages, +div.status, +div.warning, +div.error /* Important messages (status, warning, and error) for the user */ { + background-image: url(../images/messages-status-ie6.png); +} + +div.warning /* Medium priority messages */ { + background-image: url(../images/messages-warning-ie6.png); +} + +div.error /* High priority messages. See also the .error declaration below. */ { + background-image: url(../images/messages-error-ie6.png); +} + + +/* + * REFERENCES + * + +1. http://www.positioniseverything.net/explorer/doubled-margin.html +2. http://browservulsel.blogspot.com/2005/04/ie-overflow-auto-scrollbar-overlap.html +3. http://www.howtocreate.co.uk/wrongWithIE/?chapter=overflow%3Avisible%3B +4. http://www.ryanbrill.com/archives/multiple-classes-in-ie + + * + */ diff --git a/themes/zen/STARTERKIT/css/layout-fixed-rtl.css b/themes/zen/STARTERKIT/css/layout-fixed-rtl.css new file mode 100644 index 0000000..7e12e0b --- /dev/null +++ b/themes/zen/STARTERKIT/css/layout-fixed-rtl.css @@ -0,0 +1,74 @@ +/** + * @file + * RTL companion for the layout-fixed.css file. + */ + + +/* + * Content + */ +#content, +.no-sidebars #content { + float: right; + margin-left: -960px; /* Negative value of #content's width + right margin. */ + margin-right: 0; +} + +.sidebar-first #content { + margin-left: -960px; /* Negative value of #content's width + right margin. */ + margin-right: 200px; /* The width of .region-sidebar-first. */ +} + +.sidebar-second #content { + margin-left: -760px; /* Negative value of #content's width + right margin. */ + margin-right: 0; +} + +.two-sidebars #content { + margin-left: -760px; /* Negative value of #content's width + right margin. */ + margin-right: 200px; /* The width of .region-sidebar-first */ +} + +/* + * Navigation + */ +#navigation { + float: right; + margin-left: -100%; /* Negative value of #navigation's width + right margin. */ + margin-right: 0; +} + +#navigation ul /* Primary and secondary links */ { + text-align: right; +} + +#navigation li /* A simple method to get navigation links to appear in one line. */ { + float: right; + padding: 0 0 0 10px; +} + +/* + * First sidebar + */ +.region-sidebar-first { + float: right; + margin-left: -200px; /* Negative value of .region-sidebar-first's width + right margin. */ + margin-right: 0; +} + +.region-sidebar-first .section { + margin: 0 0 0 20px; +} + +/* + * Second sidebar + */ +.region-sidebar-second { + float: right; + margin-left: -960px; /* Negative value of .region-sidebar-second's width + right margin. */ + margin-right: 760px; /* Width of content + sidebar-first. */ +} + +.region-sidebar-second .section { + margin: 0 20px 0 0; +} diff --git a/themes/zen/STARTERKIT/css/layout-fixed.css b/themes/zen/STARTERKIT/css/layout-fixed.css new file mode 100644 index 0000000..4cf5b36 --- /dev/null +++ b/themes/zen/STARTERKIT/css/layout-fixed.css @@ -0,0 +1,212 @@ +/** + * @file + * Layout Styling (DIV Positioning) + * + * Define CSS classes to create a table-free, 3-column, 2-column, or single + * column layout depending on whether blocks are enabled in the left or right + * columns. + * + * This layout is based on the Zen Columns layout method. + * http://drupal.org/node/201428 + * + * Only CSS that affects the layout (positioning) of major elements should be + * listed here. Such as: + * display, position, float, clear, width, height, min-width, min-height + * margin, border, padding, overflow + */ + + +/* + * Body + */ +body { +} + +#page-wrapper, +.region-page-closure { + /* + * If you want to make the page a fixed width and centered in the viewport, + * this is the standards-compliant way to do that. See also the ie6.css file + * for the necessary IE5/IE6quirks hack to center a div. + */ + margin-left: auto; + margin-right: auto; + width: 960px; +} + +#page { +} + +/* + * Header + */ +#header { +} + +#header .section { +} + +#search-box { +} + +.region-header { + clear: both; /* Clear the logo */ +} + +/* + * Main (container for everything else) + */ +#main-wrapper { + position: relative; +} + +#main { +} + +/* + * Content + */ +#content, +.no-sidebars #content { + float: left; /* LTR */ + width: 960px; + margin-left: 0; /* LTR */ + margin-right: -960px; /* LTR */ /* Negative value of #content's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #content .section. */ +} + +.sidebar-first #content { + width: 760px; + margin-left: 200px; /* LTR */ /* The width of .region-sidebar-first. */ + margin-right: -960px; /* LTR */ /* Negative value of #content's width + left margin. */ +} + +.sidebar-second #content { + width: 760px; + margin-left: 0; /* LTR */ + margin-right: -760px; /* LTR */ /* Negative value of #content's width + left margin. */ +} + +.two-sidebars #content { + width: 560px; + margin-left: 200px; /* LTR */ /* The width of .region-sidebar-first */ + margin-right: -760px; /* LTR */ /* Negative value of #content's width + left margin. */ +} + +#content .section { + margin: 0; + padding: 0; +} + +/* + * Navigation + */ +#navigation { + float: left; /* LTR */ + width: 100%; + margin-left: 0; /* LTR */ + margin-right: -100%; /* LTR */ /* Negative value of #navigation's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #navigation .section. */ + height: 2.3em; /* The navigation can have any arbritrary height. We picked one + that is the line-height plus 1em: 1.3 + 1 = 2.3 + Set this to the same value as the margin-top below. */ +} + +.with-navigation #content, +.with-navigation .region-sidebar-first, +.with-navigation .region-sidebar-second { + margin-top: 2.3em; /* Set this to the same value as the navigation height above. */ +} + +#navigation .section { +} + +#navigation ul /* Primary and secondary links */ { + margin: 0; + padding: 0; + text-align: left; /* LTR */ +} + +#navigation li /* A simple method to get navigation links to appear in one line. */ { + float: left; /* LTR */ + padding: 0 10px 0 0; /* LTR */ +} + +/* + * First sidebar + */ +.region-sidebar-first { + float: left; /* LTR */ + width: 200px; + margin-left: 0; /* LTR */ + margin-right: -200px; /* LTR */ /* Negative value of .region-sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to .region-sidebar-first .section. */ +} + +.region-sidebar-first .section { + margin: 0 20px 0 0; /* LTR */ + padding: 0; +} + +/* + * Second sidebar + */ +.region-sidebar-second { + float: left; /* LTR */ + width: 200px; + margin-left: 760px; /* LTR */ /* Width of content + sidebar-first. */ + margin-right: -960px; /* LTR */ /* Negative value of .region-sidebar-second's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to .region-sidebar-second .section. */ +} + +.region-sidebar-second .section { + margin: 0 0 0 20px; /* LTR */ + padding: 0; +} + +/* + * Footer + */ +#footer { +} + +#footer .section { +} + +/* + * Closure + */ +.region-page-closure /* See also the #page-wrapper declaration above that this div shares. */ { +} + +/* + * Prevent overflowing content + */ +#header, +#content, +#navigation, +.region-sidebar-first, +.region-sidebar-second, +#footer, +.region-page-closure { + overflow: visible; + word-wrap: break-word; /* A very nice CSS3 property */ +} + +#navigation { + overflow: hidden; /* May need to be removed if using a dynamic drop-down menu */ +} + +/* + * If a div.clearfix doesn't have any content after it and its bottom edge + * touches the bottom of the viewport, Firefox and Safari will mistakenly + * place several pixels worth of space between the bottom of the div and the + * bottom of the viewport. Uncomment this CSS property to fix this. + * Note: with some over-large content, this property might cause scrollbars + * to appear on the #page-wrapper div. + */ +/* +#page-wrapper { + overflow-y: hidden; +} +*/ diff --git a/themes/zen/STARTERKIT/css/layout-liquid-rtl.css b/themes/zen/STARTERKIT/css/layout-liquid-rtl.css new file mode 100644 index 0000000..c3aed02 --- /dev/null +++ b/themes/zen/STARTERKIT/css/layout-liquid-rtl.css @@ -0,0 +1,68 @@ +/** + * @file + * RTL companion for the layout-liquid.css file. + */ + + +/* + * Content + */ +#content { + float: right; + margin-left: -100%; /* Negative value of #content's width + right margin. */ + margin-right: 0; +} + +.sidebar-first #content .section { + padding-left: 0; + padding-right: 200px; /* The width + right margin of .region-sidebar-first. */ +} + +.sidebar-second #content .section { + padding-left: 200px; /* The width + left margin of .region-sidebar-second. */ + padding-right: 0; +} + +/* + * Navigation + */ +#navigation { + float: right; + margin-left: -100%; /* Negative value of #navigation's width + right margin. */ + margin-right: 0; +} + +#navigation ul /* Primary and secondary links */ { + text-align: right; +} + +#navigation li /* A simple method to get navigation links to appear in one line. */ { + float: right; + padding: 0 0 0 10px; +} + +/* + * First sidebar + */ +.region-sidebar-first { + float: right; + margin-left: -200px; /* Negative value of .region-sidebar-first's width + right margin. */ + margin-right: 0; +} + +.region-sidebar-first .section { + margin: 0 0 0 20px; +} + +/* + * Second sidebar + */ +.region-sidebar-second { + float: left; + margin-left: 0; + margin-right: -200px; /* Negative value of .region-sidebar-second's width + left margin. */ +} + +.region-sidebar-second .section { + margin: 0 20px 0 0; +} diff --git a/themes/zen/STARTERKIT/css/layout-liquid.css b/themes/zen/STARTERKIT/css/layout-liquid.css new file mode 100644 index 0000000..e5aefad --- /dev/null +++ b/themes/zen/STARTERKIT/css/layout-liquid.css @@ -0,0 +1,202 @@ +/** + * @file + * Layout Styling (DIV Positioning) + * + * Define CSS classes to create a table-free, 3-column, 2-column, or single + * column layout depending on whether blocks are enabled in the left or right + * columns. + * + * This layout is based on the Zen Columns layout method. + * http://drupal.org/node/201428 + * + * Only CSS that affects the layout (positioning) of major elements should be + * listed here. Such as: + * display, position, float, clear, width, height, min-width, min-height + * margin, border, padding, overflow + */ + + +/* + * Body + */ +body { +} + +#page-wrapper, +.region-page-closure { + min-width: 960px; /* Don't allow the browser to make the site unreadable. */ +} + +#page { +} + +/* + * Header + */ +#header { +} + +#header .section { +} + +#search-box { +} + +.region-header { + clear: both; /* Clear the logo */ +} + +/* + * Main (container for everything else) + */ +#main-wrapper { + position: relative; +} + +#main { +} + +/* + * Content + */ +#content { + float: left; /* LTR */ + width: 100%; + margin-left: 0; /* LTR */ + margin-right: -100%; /* LTR */ /* Negative value of #content's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #content .section. */ +} + +#content .section, +.no-sidebars #content .section { + margin: 0; + padding: 0; +} + +.sidebar-first #content .section { + padding-left: 200px; /* LTR */ /* The width + left margin of .region-sidebar-first. */ + padding-right: 0; /* LTR */ +} + +.sidebar-second #content .section { + padding-left: 0; /* LTR */ + padding-right: 200px; /* LTR */ /* The width + right margin of .region-sidebar-second. */ +} + +.two-sidebars #content .section { + padding-left: 200px; /* The width + left margin of .region-sidebar-first. */ + padding-right: 200px; /* The width + right margin of .region-sidebar-second. */ +} + +/* + * Navigation + */ +#navigation { + float: left; /* LTR */ + width: 100%; + margin-left: 0; /* LTR */ + margin-right: -100%; /* LTR */ /* Negative value of #navigation's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #navigation .section. */ + height: 2.3em; /* The navigation can have any arbritrary height. We picked one + that is the line-height plus 1em: 1.3 + 1 = 2.3 + Set this to the same value as the margin-top below. */ +} + +.with-navigation #content, +.with-navigation .region-sidebar-first, +.with-navigation .region-sidebar-second { + margin-top: 2.3em; /* Set this to the same value as the navigation height above. */ +} + +#navigation .section { +} + +#navigation ul /* Primary and secondary links */ { + margin: 0; + padding: 0; + text-align: left; /* LTR */ +} + +#navigation li /* A simple method to get navigation links to appear in one line. */ { + float: left; /* LTR */ + padding: 0 10px 0 0; /* LTR */ +} + +/* + * First sidebar + */ +.region-sidebar-first { + float: left; /* LTR */ + width: 200px; + margin-left: 0; /* LTR */ + margin-right: -200px; /* LTR */ /* Negative value of .region-sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to .region-sidebar-first .section. */ +} + +.region-sidebar-first .section { + margin: 0 20px 0 0; /* LTR */ + padding: 0; +} + +/* + * Second sidebar + */ +.region-sidebar-second { + float: right; /* LTR */ + width: 200px; + margin-left: -200px; /* LTR */ /* Negative value of .region-sidebar-second's width + right margin. */ + margin-right: 0; /* LTR */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to .region-sidebar-second .section. */ +} + +.region-sidebar-second .section { + margin: 0 0 0 20px; /* LTR */ + padding: 0; +} + +/* + * Footer + */ +#footer { +} + +#footer .section { +} + +/* + * Closure + */ +.region-page-closure /* See also the #page-wrapper declaration above that this div shares. */ { +} + +/* + * Prevent overflowing content + */ +#header, +#content, +#navigation, +.region-sidebar-first, +.region-sidebar-second, +#footer, +.region-page-closure { + overflow: visible; + word-wrap: break-word; /* A very nice CSS3 property */ +} + +#navigation { + overflow: hidden; /* May need to be removed if using a dynamic drop-down menu */ +} + +/* + * If a div.clearfix doesn't have any content after it and its bottom edge + * touches the bottom of the viewport, Firefox and Safari will mistakenly + * place several pixels worth of space between the bottom of the div and the + * bottom of the viewport. Uncomment this CSS property to fix this. + * Note: with some over-large content, this property might cause scrollbars + * to appear on the #page-wrapper div. + */ +/* +#page-wrapper { + overflow-y: hidden; +} +*/ diff --git a/themes/zen/STARTERKIT/css/messages-rtl.css b/themes/zen/STARTERKIT/css/messages-rtl.css new file mode 100644 index 0000000..681f838 --- /dev/null +++ b/themes/zen/STARTERKIT/css/messages-rtl.css @@ -0,0 +1,13 @@ +/** + * @file + * RTL companion for the messages.css file. + */ + + +div.messages, +div.status, +div.warning, +div.error /* Important messages (status, warning, and error) for the user */ { + padding: 5px 35px 5px 5px; + background-position: 99.5% 5px; +} diff --git a/themes/zen/STARTERKIT/css/messages.css b/themes/zen/STARTERKIT/css/messages.css new file mode 100644 index 0000000..ed47ee0 --- /dev/null +++ b/themes/zen/STARTERKIT/css/messages.css @@ -0,0 +1,53 @@ +/** + * @file + * Message Styling + * + * Sensible styling for Drupal's error/warning/status messages. + */ + + +div.messages, +div.status, +div.warning, +div.error /* Important messages (status, warning, and error) for the user */ { + min-height: 21px; + margin: 0 1em 5px 1em; + border: 2px solid #ff7; + padding: 5px 5px 5px 35px; /* LTR */ + color: #000; + background-color: #ffc; + background-image: url(../images/messages-status.png); + background-repeat: no-repeat; + background-position: 5px 5px; /* LTR */ +} + +div.status /* Normal priority messages */ { +} + +div.warning /* Medium priority messages */ { + border-color: #fc0; + background-image: url(../images/messages-warning.png); +} + +div.warning, +tr.warning { + color: #000; /* Drupal core uses #220 */ + background-color: #ffc; +} + +div.error /* High priority messages. See also the .error declaration in pages.css. */ { + /* border: 1px solid #d77; */ /* Drupal core uses: 1px solid #d77 */ + border-color: #c00; + background-image: url(../images/messages-error.png); +} + +div.error, +tr.error { + color: #900; /* Drupal core uses #200 */ + background-color: #fee; +} + +div.messages ul { + margin-top: 0; + margin-bottom: 0; +} diff --git a/themes/zen/STARTERKIT/css/navigation.css b/themes/zen/STARTERKIT/css/navigation.css new file mode 100644 index 0000000..49d8f72 --- /dev/null +++ b/themes/zen/STARTERKIT/css/navigation.css @@ -0,0 +1,44 @@ +/** + * @file + * Navigation Styling + * + * Default menu styling (ul.menu) is defined in system-menus.css. + */ + + +/* + * The active item in a Drupal menu + */ +li a.active { + color: #000; +} + +/* + * Navigation bar + */ +#navigation { +} + +.region-navigation { +} + +/* + * Primary and Secondary menu links + */ +#main-menu { +} + +#secondary-menu { +} + +/* + * Menu blocks + */ +.block-menu { +} + +/* + * "Menu block" blocks. See http://drupal.org/project/menu_block + */ +.block-menu_block { +} diff --git a/themes/zen/STARTERKIT/css/nodes.css b/themes/zen/STARTERKIT/css/nodes.css new file mode 100644 index 0000000..c1e4929 --- /dev/null +++ b/themes/zen/STARTERKIT/css/nodes.css @@ -0,0 +1,81 @@ +/** + * @file + * Node Styling + * + * Style anything that isn't in the $content variable. + */ + + +.node /* Node wrapper */ { +} + +.node-sticky /* A sticky node (displayed before others in a list) */ { +} + +.node-unpublished /* Unpublished nodes */ { + /* background-color: #fff4f4; */ /* Drupal core uses a #fff4f4 background */ +} + +.node-unpublished div.unpublished, +.comment-unpublished div.unpublished /* The word "Unpublished" displayed underneath the content. */ { + height: 0; + overflow: visible; + color: #d8d8d8; + font-size: 75px; + line-height: 1; + font-family: Impact, "Arial Narrow", Helvetica, sans-serif; + font-weight: bold; + text-transform: uppercase; + text-align: center; + word-wrap: break-word; /* A very nice CSS3 property */ +} + +.node-by-viewer /* A node created by the current user */ { +} + +.node-teaser /* A node displayed as teaser */ { +} + +/* All nodes are given a node-type-FOO class that describes the type of + * content that it is. If you create a new content type called + * "my-custom-type", it will receive a "node-type-my-custom-type" class. + */ +.node-type-page /* Page content node */ { +} + +.node-type-story /* Story content node */ { +} + +.node h2.title /* Node title */ { +} + +.marker /* "New" or "Updated" marker for content that is new or updated for the current user */ { + color: #c00; +} + +.node .picture /* The picture of the node author */ { +} + +.node.node-unpublished .picture, +.comment.comment-unpublished .picture { + position: relative; /* Otherwise floated pictures will appear below the "Unpublished" text. */ +} + +.node .meta /* Wrapper for submitted and terms data */ { +} + +.node .submitted /* The "posted by" information */ { +} + +.node .terms /* Node terms (taxonomy) */ { +} + +.node .content /* Node's content wrapper */ { +} + +.node ul.links /* Node links. See also the ul.links declaration in the pages.css. */ { +} + +.preview .node /* Preview of the content before submitting new or updated content */ { + /* background-color: #ffffea; */ /* Drupal core uses a #ffffea background */ +} diff --git a/themes/zen/STARTERKIT/css/page-backgrounds.css b/themes/zen/STARTERKIT/css/page-backgrounds.css new file mode 100644 index 0000000..5a8559d --- /dev/null +++ b/themes/zen/STARTERKIT/css/page-backgrounds.css @@ -0,0 +1,38 @@ +/** + * @file + * Page Background Styling + * + * The default layout method of Zen doesn't give themers equal-height columns. + * However, equal-height columns are difficult to achieve and totally + * unnecessary. Instead, use the Faux Columns method described in the following + * ALA article: + * http://www.alistapart.com/articles/fauxcolumns/ + */ + + +body { +} + +#page-wrapper { +} + +#page { +} + +#header { +} + +#header .section { +} + +#main-wrapper { +} + +#main { +} + +#footer { +} + +#footer .section { +} diff --git a/themes/zen/STARTERKIT/css/pages-rtl.css b/themes/zen/STARTERKIT/css/pages-rtl.css new file mode 100644 index 0000000..08f35af --- /dev/null +++ b/themes/zen/STARTERKIT/css/pages-rtl.css @@ -0,0 +1,19 @@ +/** + * @file + * RTL companion for the pages.css file. + */ + + +/* + * Header + */ +#logo /* Wrapping link for logo */ { + float: right; +} + +/* + * Content + */ +.more-link /* Aggregator, blog, and forum more link */ { + text-align: left; +} diff --git a/themes/zen/STARTERKIT/css/pages.css b/themes/zen/STARTERKIT/css/pages.css new file mode 100644 index 0000000..3a59538 --- /dev/null +++ b/themes/zen/STARTERKIT/css/pages.css @@ -0,0 +1,314 @@ +/** + * @file + * Page Styling + * + * Style the markup found in page.tpl.php. Also includes some styling of + * miscellaneous Drupal elements that appear in the $content variable, such as + * ul.links, .pager, .more-link, etc. + */ + + +/* + * Body + */ +body { + margin: 0; + padding: 0; +} + +#page-wrapper { +} + +#page { +} + +/* + * The skip navigation link will be completely hidden until a user tabs to the + * link. See http://www.webaim.org/techniques/skipnav/ + */ +#skip-link a, +#skip-link a:visited { + position: absolute; + display: block; + left: 0; + top: -500px; + width: 1px; + height: 1px; + overflow: hidden; + text-align: center; + background-color: #666; + color: #fff; +} + +#skip-link a:hover, +#skip-link a:active, +#skip-link a:focus { + position: static; + width: 100%; + height: auto; + padding: 2px 0 3px 0; +} + +/* + * Header + */ +#header { +} + +#header .section { +} + +#logo /* Wrapping link for logo */ { + float: left; /* LTR */ + margin: 0; + padding: 0; +} + +#logo img { + vertical-align: bottom; +} + +#name-and-slogan /* Wrapper for website name and slogan */ { +} + +h1#site-name, +div#site-name /* The name of the website */ { + margin: 0; + font-size: 2em; + line-height: 1.3em; +} + +#site-name a:link, +#site-name a:visited { + color: #000; + text-decoration: none; +} + +#site-name a:hover, +#site-name a:focus { + text-decoration: underline; +} + +#site-slogan /* The slogan (or tagline) of a website */ { +} + +.region-header /* Wrapper for any blocks placed in the header region */ { +} + +/* + * Main (container for everything else) + */ +#main-wrapper { +} + +#main { +} + +/* + * Content + */ +#content { +} + +#content .section { +} + +#mission /* The mission statement of the site (displayed on homepage) */ { +} + +.region-content-top /* Wrapper for any blocks placed in the "content top" region */ { +} + +.breadcrumb /* The path to the current page in the form of a list of links */ { + padding-bottom: 0; /* Undo system.css */ +} + +h1.title, /* The title of the page */ +h2.title, /* Block title or the title of a piece of content when it is given in a list of content */ +h3.title /* Comment title */ { + margin: 0; +} + +tr.even /* Some tables have rows marked even or odd. */ { + /* background-color: #eee; */ /* Drupal core uses a #eee background */ +} + +tr.odd { + /* background-color: #eee; */ /* Drupal core uses a #eee background */ +} + +div.messages /* Important messages (status, warning, and error) for the user. See also the declarations in messages.css. */ { +} + +div.status /* Normal priority messages */ { +} + +div.warning, +tr.warning /* Medium priority messages */ { + /* border: 1px solid #f0c020; */ /* Drupal core uses: 1px solid #f0c020 */ +} + +div.error, +tr.error /* High priority messages. See also the .error declaration below. */ { +} + +.error /* Errors that are separate from div.messages status messages. */ { + /* color: #e55; */ /* Drupal core uses a #e55 background */ +} + +.warning /* Warnings that are separate from div.messages status messages. */ { + /* color: #e09010; */ /* Drupal core uses a #e09010 background */ +} + +div.tabs /* See also the tabs.css file. */ { +} + +.help /* Help text on a page */ { + margin: 1em 0; +} + +.more-help-link /* Link to more help */ { + font-size: 0.85em; + text-align: right; +} + +#content-area /* Wrapper for the actual page content */ { +} + +ul.links /* List of links */ { + margin: 1em 0; + padding: 0; +} + +ul.links.inline { + margin: 0; + display: inline; +} + +ul.links li { + display: inline; + list-style-type: none; + padding: 0 0.5em; +} + +.pager /* A list of page numbers when more than 1 page of content is available */ { + clear: both; + margin: 1em 0; + text-align: center; +} + +.pager a, +.pager strong.pager-current /* Each page number in the pager list */ { + padding: 0.5em; +} + +.feed-icons /* The links to the RSS or Atom feeds for the current list of content */ { + margin: 1em 0; +} + +.more-link /* Aggregator, blog, and forum more link */ { + text-align: right; /* LTR */ +} + +.region-content-bottom /* Wrapper for any blocks placed in the "content bottom" region */ { +} + +/* + * First sidebar (on left in LTR languages, on right in RTL) + * + * Remember to NOT add padding or margin to your .region-sidebar-first + * (see the layout.css file.) + */ +.region-sidebar-first { +} + +.region-sidebar-first .section { +} + +/* + * Second sidebar (on right in LTR languages, on left in RTL) + * + * Remember to NOT add padding or margin to your .region-sidebar-second + * (see the layout.css file.) + */ +.region-sidebar-second { +} + +.region-sidebar-second .section { +} + +/* + * Footer + */ +#footer { +} + +#footer .section { +} + +#footer-message /* Wrapper for the footer message from Drupal's "Site information" + and for any blocks placed in the footer region */ { +} + +.region-footer { +} + +/* + * Closure + */ +.region-page-closure /* Wrapper for any blocks placed in the closure region */ { +} + +/* + * Drupal boxes + * + * Wrapper for Comment form, Comment viewing options, Menu admin, and + * Search results. + */ +.box /* Wrapper for box */ { +} + +.box h2 /* Box title */ { +} + +.box .content /* Box's content wrapper */ { +} + +/* + * Markup free clearing (See: http://www.positioniseverything.net/easyclearing.html ) + */ +.clearfix:after { + content: "."; + display: block; + height: 0; + clear: both; + visibility: hidden; +} + +/** + * Hide elements from all users. + * + * Used for elements which should not be immediately displayed to any user. An + * example would be a collapsible fieldset that will be expanded with a click + * from a user. The effect of this class can be toggled with the jQuery show() + * and hide() functions. + */ +.element-hidden { + display: none; +} + +/** + * Hide elements visually, but keep them available for screen-readers. + * + * Used for information required for screen-reader users to understand and use + * the site where visual display is undesirable. Information provided in this + * manner should be kept concise, to avoid unnecessary burden on the user. Must + * not be used for focusable elements (such as links and form elements) as this + * causes issues for keyboard only or voice recognition users. "!important" is + * used to prevent unintentional overrides. + */ +.element-invisible { + position: absolute !important; + clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ + clip: rect(1px, 1px, 1px, 1px); +} diff --git a/themes/zen/STARTERKIT/css/panels-styles.css b/themes/zen/STARTERKIT/css/panels-styles.css new file mode 100644 index 0000000..df3475c --- /dev/null +++ b/themes/zen/STARTERKIT/css/panels-styles.css @@ -0,0 +1,6 @@ +/** + * @file + * Panels Styling + */ + + diff --git a/themes/zen/STARTERKIT/css/print.css b/themes/zen/STARTERKIT/css/print.css new file mode 100644 index 0000000..8e8cd30 --- /dev/null +++ b/themes/zen/STARTERKIT/css/print.css @@ -0,0 +1,73 @@ +/** + * @file + * Print styling + * + * We provide some sane print styling for Drupal using Zen's layout method. + */ + + +/* underline all links */ +a:link, +a:visited { + text-decoration: underline !important; +} + +/* Don't underline header */ +#site-name a:link, +#site-name a:visited { + text-decoration: none !important; +} + +/* CSS2 selector to add visible href after links */ +#content a:link:after, +#content a:visited:after { + content: " (" attr(href) ") "; + font-size: 0.8em; + font-weight: normal; +} + +/* Un-float the content */ +#content, +#content .section { + float: none; + width: 100%; + margin: 0 !important; + padding: 0 !important; +} + +/* Turn off any background colors or images */ +body, +#page-wrapper, +#page, +#main-wrapper, +#main, +#content, +#content .section { + color: #000; + background-color: transparent !important; + background-image: none !important; +} + +/* Hide sidebars and nav elements */ +#skip-link, +#navigation, +.region-sidebar-first, +.region-sidebar-second, +#footer, +.breadcrumb, +div.tabs, +.links, +.taxonomy, +.book-navigation, +.forum-topic-navigation, +.pager, +.feed-icons { + visibility: hidden; + display: none; +} + +/* If you un-comment the "page { overflow-y: hidden; }" ruleset, Firefox clips + the content after the first page. */ +#page-wrapper { + overflow-y: visible; +} diff --git a/themes/zen/STARTERKIT/css/tabs-rtl.css b/themes/zen/STARTERKIT/css/tabs-rtl.css new file mode 100644 index 0000000..6e7fb0e --- /dev/null +++ b/themes/zen/STARTERKIT/css/tabs-rtl.css @@ -0,0 +1,22 @@ +/** + * @file + * RTL companion for the tabs.css file. + */ + + +ul.primary { + padding: 0 10px 0 0; +} + +ul.primary li { + float: right; +} + +ul.secondary { + padding: 0 5px 0 0; +} + +ul.secondary li { + float: right; + border-left: none; +} diff --git a/themes/zen/STARTERKIT/css/tabs.css b/themes/zen/STARTERKIT/css/tabs.css new file mode 100644 index 0000000..db59568 --- /dev/null +++ b/themes/zen/STARTERKIT/css/tabs.css @@ -0,0 +1,128 @@ +/** + * @file + * Tabs Styling + * + * Adds styles for the primary and secondary tabs. + * + * Compare this with default CSS found in the system module's stylesheet (a copy + * of which is in drupal6-reference.css, line 510.) + */ + + +div.tabs { + margin: 0 0 5px 0; +} + +ul.primary { + margin: 0; + padding: 0 0 0 10px; /* LTR */ + border-width: 0; + list-style: none; + white-space: nowrap; + line-height: normal; + background: url(../images/tab-bar.png) repeat-x left bottom; +} + +ul.primary li { + float: left; /* LTR */ + margin: 0; + padding: 0; +} + +ul.primary li a { + display: block; + height: 24px; + margin: 0; + padding: 0 0 0 5px; /* width of tab-left.png */ + border-width: 0; + font-weight: bold; + text-decoration: none; + color: #777; + background-color: transparent; + background: url(../images/tab-left.png) no-repeat left -38px; +} + +ul.primary li a .tab { + display: block; + height: 20px; /* 24px (parent) - 4px (padding) */ + margin: 0; + padding: 4px 13px 0 6px; + border-width: 0; + line-height: 20px; + background: url(../images/tab-right.png) no-repeat right -38px; +} + +ul.primary li a:hover, +ul.primary li a:focus { + border-width: 0; + background-color: transparent; + background: url(../images/tab-left.png) no-repeat left -76px; +} + +ul.primary li a:hover .tab, +ul.primary li a:focus .tab { + background: url(../images/tab-right.png) no-repeat right -76px; +} + +ul.primary li.active a, +ul.primary li.active a:hover, +ul.primary li.active a:focus { + border-width: 0; + color: #000; + background-color: transparent; + background: url(../images/tab-left.png) no-repeat left 0; +} + +ul.primary li.active a .tab, +ul.primary li.active a:hover .tab, +ul.primary li.active a:focus .tab { + background: url(../images/tab-right.png) no-repeat right 0; +} + +ul.secondary { + margin: 0; + padding: 0 0 0 5px; /* LTR */ + border-bottom: 1px solid #c0c0c0; + list-style: none; + white-space: nowrap; + background: url(../images/tab-secondary-bg.png) repeat-x left bottom; +} + +ul.secondary li { + float: left; /* LTR */ + margin: 0 5px 0 0; + padding: 5px 0; + border-right: none; /* LTR */ +} + +ul.secondary a { + display: block; + height: 24px; + margin: 0; + padding: 0; + border: 1px solid #c0c0c0; + text-decoration: none; + color: #777; + background: url(../images/tab-secondary.png) repeat-x left -56px; +} + +ul.secondary a .tab { + display: block; + height: 18px; /* 24px (parent) - 6px (padding) */ + margin: 0; + padding: 3px 8px; + line-height: 18px; +} + +ul.secondary a:hover, +ul.secondary a:focus { + background: url(../images/tab-secondary.png) repeat-x left bottom; +} + +ul.secondary a.active, +ul.secondary a.active:hover, +ul.secondary a.active:focus { + border: 1px solid #c0c0c0; + color: #000; + background: url(../images/tab-secondary.png) repeat-x left top; +} diff --git a/themes/zen/STARTERKIT/css/views-styles.css b/themes/zen/STARTERKIT/css/views-styles.css new file mode 100644 index 0000000..909edd9 --- /dev/null +++ b/themes/zen/STARTERKIT/css/views-styles.css @@ -0,0 +1,6 @@ +/** + * @file + * Views Styling + */ + + diff --git a/themes/zen/STARTERKIT/css/wireframes.css b/themes/zen/STARTERKIT/css/wireframes.css new file mode 100644 index 0000000..0bf3058 --- /dev/null +++ b/themes/zen/STARTERKIT/css/wireframes.css @@ -0,0 +1,24 @@ +/** + * @file + * Wireframes Styling + * + * Add wireframes to the basic layout elements. + */ + + +.with-wireframes #header .section, +.with-wireframes #content .section, +.with-wireframes #navigation .section, +.with-wireframes .region-sidebar-first .section, +.with-wireframes .region-sidebar-second .section, +.with-wireframes #footer .section { + margin: 1px; + padding: 2px; + border: 1px solid #ccc; +} + +.with-wireframes .region-page-closure { + margin-top: 1px; + padding: 2px; + border: 1px solid #ccc; +} diff --git a/themes/zen/STARTERKIT/favicon.ico b/themes/zen/STARTERKIT/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..0f9909a60cb8c1e3ed435472068fee39e4652c96 GIT binary patch literal 15086 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 literal 0 HcmV?d00001 diff --git a/themes/zen/STARTERKIT/images-source/messages.psd b/themes/zen/STARTERKIT/images-source/messages.psd new file mode 100644 index 0000000000000000000000000000000000000000..a155d1cb64f2f34afe8b8c38911a32812defd9ba GIT binary patch literal 199810 zcmeG_2VfkOJX6W4ev8@zr&sPp>$ zGb*cQR9AWBziD$y;c8Ya*gIosOPgFK+|8cWpGXYO@cGuSUth7lsv;We^Hnx9H24I+ z&+jjXC(7d+BZ1@j1*v~hkW{n11; z-X9&D<m?uicgAOWf@uvG@&jOLgaNJL}Z z(P(&%)M=ecMZL{kRo;$3Pbh*FpM`lak84z$r6!3jfrK~*`m??q{#RCYS2oP>!*$&Z zLD1zOJ!Z(DBN`0#Zq#MaQ0}knuB@3+-7uqy$wT*~F%RIwU?365Di{5;d!Q#eI;{I* zU?8nKIyz>wM0=9RV(l$+lF3kTMtx&_Q&nAaYg%CC-cVSa6JI*N$=lxATwB>t zTU+k0sMKepdybpWf>0a;XQNM*)z3?a6QN#B$uUxlDd_}3=!_+?5HJl@I&+{IX)s+A zXxfUUVmum7qLP{e>KOifmG~{A>XVJAE3HxW$wpKSb6F&mm;;PPD`Nl~u@*zK)`=~l zJ~0kBHMP_IHFfZ*hfl+Ff31JIzpffS0IRQ_UQ;E&rxLCKUSBoc-%vZfN~oM(Rap<8 zhUqna_*D4;2Km$p@PTLR@V*Ap;Zs#z<)2wq+tLU*)m7HD*0xkt`kNd5b@lKOs+(#B zp|V=8I8!sZ+Mk;;7dM1V_yAMV`2e9aIzt=8@QRiYsE|1Jt-ofLkDH()vX;J5hX`E6 zO)w%-DeMA+LPW-+C_0ewX@+7|we_{t)2oGsT7iB;FV$80rEfolNZ(Zeuc?%tsh*Bl zb@Us06nYCF@C}ga`Wk_LLvO-0^d)>l@7GlUZ{RmP58n;=T@O#fHPr zegiIiQ(WMm>dIp-4Ny<`rq49gz;&G;;dQ`k@C_VUUD*J6;y2

2=fVr#DOo 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 F{6DhGP8|RM literal 0 HcmV?d00001 diff --git a/themes/zen/STARTERKIT/images-source/panels-layouts.psd b/themes/zen/STARTERKIT/images-source/panels-layouts.psd new file mode 100644 index 0000000000000000000000000000000000000000..1f0aecb93cf32d6cc472d7e2eb5e560838e71df3 GIT binary patch literal 78724 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 literal 0 HcmV?d00001 diff --git a/themes/zen/STARTERKIT/images-source/screenshot.psd b/themes/zen/STARTERKIT/images-source/screenshot.psd new file mode 100644 index 0000000000000000000000000000000000000000..6762e48e19869c432c96fa5264fc3bdf09723756 GIT binary patch literal 196125 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 literal 0 HcmV?d00001 diff --git a/themes/zen/STARTERKIT/images-source/tabs.psd b/themes/zen/STARTERKIT/images-source/tabs.psd new file mode 100644 index 0000000000000000000000000000000000000000..dfd82aa6350d11271230611d78b58d4f595b9be2 GIT binary patch literal 56436 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

wH53W}IFld3e2faoaNS$7Yf?qvD!8Fi%Pk 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 literal 0 HcmV?d00001 diff --git a/themes/zen/STARTERKIT/images/messages-error-ie6.png b/themes/zen/STARTERKIT/images/messages-error-ie6.png new file mode 100644 index 0000000000000000000000000000000000000000..054b9f28cc328f85b9f726aa46bf6223e10bd656 GIT binary patch literal 719 zcmeAS@N?(olHy`uVBq!ia0vp^l0YoV!3-o@zHZe536!`-lmzFem6RtIr7}3C%E z>-pisr%#>Q6CQpjE$wK2{*j!Vb1f~$ckbN1d-sEl8#_8WW-&3Xw6ih%Nl9saSlCuq*E46%>}qK-Ha6ZrYu1U~yLotc_C`gy zxVQ)i2wa&wdFITSr;i^$FlP=cE9=393m3}Ezc_YmTUpr-Kfevp(M$C7Hrm+Cmyme( z?%n$vH*POoy2i_EPha1i6)R@5v(FP2UT$uFf8DzEW@a-P7=RXW?(k;^hC+BrkY6w` zKxhCM_9dG>23qmg)5S5Q;#SGT^y(%9k=A0zX-zu{9v-mWm{l&jwv0b_?*ISGC47Ut zj(%2Eul#&x_MPT!%UfPV`G@X2wd_!6aH;r9jcpN+SXDl#UJTQ#^K?ArGGXzTwIK>B z7mQ8>3NENNaMRwPzDj7x^wSK!kD3%kCs*`M&19Og^6XK=hZSymjDN0tl2Nnk75w|K zFY@g7=|33VdQ?(`B&$@`l`;#$Mts0=4^SQz5dCq qzok2#O?_EfVrDt<+r}~`9)_z9p|6yue02l{1cRrmpUXO@geCxmXnWrP literal 0 HcmV?d00001 diff --git a/themes/zen/STARTERKIT/images/messages-error.png b/themes/zen/STARTERKIT/images/messages-error.png new file mode 100644 index 0000000000000000000000000000000000000000..012813b1dd5c802737475d4268de4c00cf50700d GIT binary patch literal 727 zcmV;|0x127P)P000#T1^@s6vnxdy0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!c}YY;RCwB~l~HI?Q5eU+o3o&VsZj_w z2qX|jHzY~+CWLqNWDuBRuZ1ue418@21`c|;y%dZMgq{Yz2nj}HinxnAy=_g-&x;HT%_d(QvQIp24_!>z-=wJ2kTV>km70SO^~gh#xH1?eLd zq=6KXG@4b-nnaLWPC*dPhC*=K?}rmS4=24|;4Btk{XTrHRNzOW0bhzm*iEOQRjrcA zZ8Y0Fq_%z#7m|AtiLlSx+ssVc%jMYC+#I9%q=TC zF*KiaNN;FzL|%{$Nli-Gc<46bfrbt&ElhS^vWVr7>pHJDYTCJu#mh?!MwrfH*_e^>`hWSn_v0AMV z2n2LjLQU2i{7j5{=*XbmZV&q5aM*A>rMY~bl$cZ~?~P1sHXGRO_OVPpW-|2mRBe*1 zC6l_7D4RN+&R{hTheLO4uiJ%pYircKqYnI0i($}9I!W@o*JJsG1q!;P zbr^SF#p8!2QYH-za21*cR3)fdpw3;yGRlPDk;fTPWFJzgu}ey`P+-raQ4-%nBI=St zXcb5ii5+t~uT0I)!=-rqz<$3^B&Z<5&t?;v`8@n;wO-(-`^Y91$nR!Ly%Q;1-`Vll zG4Clkwq|F$_%4A^)omhq6mIE>7@d=Ei0in^1+Q0E;pNg2JzqthnYpx#OfH`h#mR>= zGjwk}!snavMP;h#ZPzI|A83#7$v5C%UB7xO*+;Iye`tRM7yx9}O3%%U;y3^R002ov JPDHLkV1nHMO-29! literal 0 HcmV?d00001 diff --git a/themes/zen/STARTERKIT/images/messages-status-ie6.png b/themes/zen/STARTERKIT/images/messages-status-ie6.png new file mode 100644 index 0000000000000000000000000000000000000000..f9eb63f59c92011b84ffcb926dadc4e45458cbfe GIT binary patch literal 610 zcmb`C?MqVu6o;?Y&_*UKH4URx24)odq#+}kY`QJGjcrueh#6iZDTaD`a}cymOTtl2 zzbv6QMD4?30~;2ERL)jM+gRpWbBv)*%UW~J+1Pfv{trEH&JTVZ4m{m5vM!IklT8pr zok(dwl5%#l}C zuM{Ce9O7_b4a#s{>wy=TNyUJN>DUy!O~KYQuyL^mLzi&Dumq=)P=u*JKIp@UH44=s zXrG0yN%)w7Y)r4=^r0Yhpikt6mk|&|;OI0AVXzrzPrG4s9$IkW7P>eXdxtAyE_j0> zO#=3Q1M^=fo`i`IT*ZjR1+Ve<5C$3$2uyhWU|a@i8gg*Sv-xsdz z?e6V##IvZ<=5v!$`}*KB4qIUzD0*gWWc| v=1G4sNF~J~v%;(y>HJB54V1R|rWOv45p`uk)vh0^Fylo?M5NGCqt^WcG&63@ literal 0 HcmV?d00001 diff --git a/themes/zen/STARTERKIT/images/messages-status.png b/themes/zen/STARTERKIT/images/messages-status.png new file mode 100644 index 0000000000000000000000000000000000000000..9f07a4253e1e1b187187fe9c30249c4755f83c88 GIT binary patch literal 560 zcmV-00?+-4P)P000#T1^@s6vnxdy0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUz(n&-?RCwC7mCY+eQ5eRb@f8vxHJPoN zg{GA92dI%1WiwKCQc5XXHj1)gL&-u}DH{u=WFaDI8a0s;nGiEmWPA)tcs=hOqw8aQ z&GFXn-Z|a5&#yUi&U+jZKzdaz-+m?Qo97bNP^@98xBA3vy^S63UQ?P zB|g%FJdX#(bmY^KLq{GR4myO6J38)9fLl5)W;xzc$slD@AJSA}!%0?T-zRdlB)_Wb z6_HSjSnq3&2$I+Z735gLeUet``5`)^F)?7JK%Io zKMmVAV~(}tOf2E22d=D6U0Fk^Hshg$`~NP`E}`8bfDw}UnM84s1=;nA#AbdT9$ynV zXxH!v@!4C7lBz*^NjI`e>QUAKl=r`#@3RSQh`>V>h_CW~zRo9;WQq+k{?jg;tP-+@ z%ALeM(!~*KrUkS>yDlwQW$<}A=gB2;BHIZ>27qv{jvL9c$wR9ah2A3U)d4sDd5+tx ygX)*{)pV7SaiViPO8ozE{GO5~6MOSnfB^taqPaZqNj3BU0000IxAo6wStzhBzmIy!qD4hI6k$)=B+ z-*MqH)KW=0*TerFBHg8$;{2UrN|^D;tZp=g7P000#T1^@s6vnxdy0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!I!Q!9RCwC7m0w6xaTLeDOA`%ACuqy{ zGyO&`Kr zZcYg2>3gorF1X!4q(AuVa@qNPzxSSV?)e48!2hk7xP}B=Orqp5=_g_GfHaXR$&v45 zoh;C7!>>t-jH4|YMJGLO(4&POZS)AxL+Ei#kKgpD(BtOE%s4b5gRsHusK5LuCY zO5|`^e67-oNa3ki`&CB-f3X|fCA(65<*1d(WV8qpiA3rL=zi5vy_(6j+6%RlIowHy zaeKnCNZD-Gy2j)2`T@FMb%1$f1FCy&@(ewrQQR7H?UX{HU|snpje}IDXY`(>YpaPN zM~0`=$6{8`N#GA>lMg3i}*JMO?M&!~~wIZ@Lpy?X0*QAAP%6{5$uYMcWa~Tdza(W`x z0~<&;`WU}SakB1S?ItzQ!Z%zxC3IRCcuShjpm*}$Kc~mQk7*rn@kbS@w?gycqPa0rJV791Q-B4t`N6rur0*^0000{(JaZG%Q-e|yQz{EjrrH1%u?6^qxE?rg;Q#;s+L`TJfFevK zL4Lvi8J=!8@B;FLJY5_^DsCkuurRXyQITL^kzio@#ULLbV0soP%i!ti=d#Wzp$PzA CX)V71 literal 0 HcmV?d00001 diff --git a/themes/zen/STARTERKIT/images/tab-left-ie6.png b/themes/zen/STARTERKIT/images/tab-left-ie6.png new file mode 100644 index 0000000000000000000000000000000000000000..5c512aee020890613b029bf8fb5bbb1b2306b317 GIT binary patch literal 331 zcmeAS@N?(olHy`uVBq!ia0vp^tU#Q?!3-oTCAlZ=IPU?r%s)E{P^*&U%!qWJ9h8hy(34C z96EI9$B!S69zFW<<;#l~FaG@b^WnpXzkmNefByX2w{I_BzWo0E`|sbs|NZ;->C>kJ z2M+xI|Njga9F%Q41vFo#B*-rqD2NL%h;Mpy9jGqV)5S5Q;?|xEmSPPG0xk!|T<(+$ zeE9c$%C$4;9AyC?{~SE|P*ui5vUKTkcQwa{T<`O3?B1VD3-) z-1T-*@3n$E?|Y}+vR!y-UCtI;>F1rj$p_sO=NRCwC#luZhRFbsvGxRoBFTdy+L zm^*omIYHgmQxt@P`!4*+G!=(bJA(r*`yd299u$(k6o?2%75~Go>!>|^y-H>XKuQTf zPAa7o8e@>eogjn=y@Z4^Jg8z5kDOuRP18VK*BhmYkK>43#Z7z9@Cxkvo?7ec`3Zv7 zy7h(AG$DrpSZgu=d9QU{L#N?HaG%)8Nj-v8%d$Yl;V=x_jwl_c=h-^W59Jed3%r&N zzpFSM1e|j@9Y52N3-L1;Fyx1 zl&avFo0y&&l$w}QS$Hzl2B^p*z$e7@>C>lg-n@DK{Q13m_Z~fZ^y0;fFJHcV`}Xa_ zhY$b${rmm<_oq*vPMkP#>eQ(tM~)mibm-WzV~-y{K5*c`%a<>|fB$~w%$fiH{{zX% zJk~pbW=fO<`2_<-umOg%!g{ZOu4VRgaSW-r_2!PH&>;r_mV=_-6PAO+M-+$UFIHkl@_Ex93c;7BII&wGU`0(C)umHz=IFx$)i93+czJ!d=iT zy>Le?+BL-bTCdV7+1Gx8SNpaGyENC9`;@H-+{-G#V3V=&+QHjy8o(f9@O1TaS?83{ F1OQ)Q<2?WX literal 0 HcmV?d00001 diff --git a/themes/zen/STARTERKIT/images/tab-right.png b/themes/zen/STARTERKIT/images/tab-right.png new file mode 100644 index 0000000000000000000000000000000000000000..9ed9cb2baa29201199ebba5acd0f76c55d8d6195 GIT binary patch literal 685 zcmeAS@N?(olHy`uVBq!ia0y~yVC)96Q#jawWO=Jh29T00ag8Vm&QB{TPb^Aha7@Wh zN>%X8O-xS>N=;0uEIgTN!@$7g@9E+gQgQ3eUBj+N0Wt>??@u~*=u|d`QxSu|L3PhZ zzv7;`+$!uH3K^NHsfmfIPCjOZX)>mHDUuQq-+n8oZTw?yKdF6RKximG!>&IDObkbu z8uYt2>3o*sYKXRf{kYU<=ANTUeaXs<4|2BO{u;LW>iYhKIZ1{RJU(moa(Lc}#uiJ^m)A-?D6 s!vX_A2CHPjOD0i+ftNU@|l`Z_W&T)T0_Kf(yemn?CO zC<)F_D=AMbN@Z|N$xljE@XSq2PYp^h2vmpG@fv9YgTe~DWM4f0RlJ` literal 0 HcmV?d00001 diff --git a/themes/zen/STARTERKIT/images/tab-secondary.png b/themes/zen/STARTERKIT/images/tab-secondary.png new file mode 100644 index 0000000000000000000000000000000000000000..bf4e8d21a32551841e2728c5f224fbd580ea8cd3 GIT binary patch literal 195 zcmeAS@N?(olHy`uVBq!ia0vp^j6ht$!3-o>o@HzTQR$ApjtmUfZd~z?Faq)=OI#yL zg7ec#$`gxH85~pclTsBta}(23gHjVyDhp4h+5i=)1o(uwK7IQ1%aB^7(8A5T-G@yGywp$g-p@_ literal 0 HcmV?d00001 diff --git a/themes/zen/STARTERKIT/js/README.txt b/themes/zen/STARTERKIT/js/README.txt new file mode 100644 index 0000000..a8b446a --- /dev/null +++ b/themes/zen/STARTERKIT/js/README.txt @@ -0,0 +1,14 @@ +Your theme can add JavaScript files in two ways: + +1. To add a JavaScript file to all pages on your website, edit your sub-theme's + .info file and add a line like this one: + + scripts[] = js/my-jquery-script.js + +2. To add a JavaScript file depending on a certain condition, you can add it + using some PHP code in a preprocess function: + + drupal_add_js('js/my-jquery-script.js', 'theme'); + + For the full documentation of drupal_add_js(), see: + http://api.drupal.org/api/function/drupal_add_js diff --git a/themes/zen/STARTERKIT/logo.png b/themes/zen/STARTERKIT/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..a30644a095ada3d736521dadb62ded81ccde98a4 GIT binary patch literal 1027 zcmV+e1pNDnP)L3e9Ym=B zmEfx&q=J|V94c^90l5mC4$M^mR{^8~NCm{6tY*I1(eto<9MR6~jBR8|-@aEKW|zw) zyLWn*{RfmlCXfka0+~Q2kO`!nW&vaJjwRghJ3f!RucG6R9slY0r)|9{STutID&ZNYmI**k0aE)4Zdx&rCj%G_9G@@2Wc4#{{`&dO<{D#x)TX;5 zKrU@d%ci-R9}EJMj(H{l=_9@A!UB@})`pE2O&hE%AeBY?2ZQgLgcS{P zJ_5)`(v}3%`wYML*IT&f*ZTfxqMUq{$(|g6h*RbAz1J|;0&<$NjM+fZpvcc+DCnIr zKuXv=a%~w~MOHs01RSia#MmJ9;yX)F&=F8X0#YP|#u0D^E9+)p9!E;L{U#Rl4E^Lt zfj|PN{{De}(*Ohn5lQ?3=F8cfM;iMZ=8*;qS#|vVr3JclNKx0C!cd`{48fvwXhR2` zl9g*#YxG%5thp-Y4;xERsbP%G=XT6rg=5SqQ1EK1z=O5v&J!7Zf@onLMcOUFluKq! zlSS7mq@HA&Y7BxZ9Kl9wwsEysV}TTrePj(|bGo-hXzU}k@UVywQ-N$PL8+nIGdC0r z*e4dy3|FA3)>3Q)33N!11v96Mp@HT-U+(A=(eztSa9d6R5`#?*8kGj1Wk8?k1BvS$ zhAQiPN0JRK+$a4t+f09o_6ZXBd-m=g#$x0x0Jvm9=mg`}Q*;uwA?df4V-IC8%Mvu= zil!A=g(5zL9+F*au1kwww65fAN$3Z5^e8<(8GO`v4M^p1{1}kh8j8rkGk8BaH%MP6 z@Gs3m1V7kmf|uqDVCw-W2KIaH&kOh*Aw2681o9#FXk-bUf(Ymg zR3r!mg+Lq7Lx!-5F;`uUtX^oIC8ZD4fD8;EM_BVIV$Cz8sKLpk$;#7@HY`o#thSvz z@c2@KiPofruO#7TlJfQibB#jt$RJ^(ZEVDwl48CzFS0jEF(Ac=spKX>9tT?gd}|=b zp#80Z+)ur^*8uqlrh0x$Am@>q{FePY=^l!nvpc3X@Mv?A~s002ovPDHLkV1kfy(!l@# literal 0 HcmV?d00001 diff --git a/themes/zen/STARTERKIT/screenshot.png b/themes/zen/STARTERKIT/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..f6f3e708507eadc747bbf29e66952e6ee4d6e974 GIT binary patch literal 1119 zcmV-l1fctgP);9&`>)jM&E)gn z?e-0P!vIr{_xt=*k-1Tw(1^CtaIf1=t=h@m=zPcKJ$$D^h_4K0pJArcb+gsw^7qv4 z_K?8fTe;z6zT!ZX&cEC5fVkfPaK8Wl|E6k0%m4rbl}SWFRCwCVmkpDfAP|NT1Wi1W zy9@PfS>*r!%kD0sViI$icG@sw41~zze!L4}e90!pnA+j|)l^j-U!u)eeXUN_I95)* z5Z2**R__g)uNu^gU>(f4kNvNvN?g^Oc?B%f6NWy`@m7s*hZrGj8eEUzP^9~ipJ%9N z{sz{$KM>W=$yfgN+y>&*Bzo}C?QNN4vnhG=WJWX=k zr`HMPs_7AvF5ktHWQ-bDRX)-zy1YuCJ{id)nk=#8skvPMs>>mT?&75#EOzK^Cvpap zjRgw8D?_p`jPMonOSNdh1g>PcD?PpX>)lAy6$wWV6!6aUHv7+k&is6DK1?EDW zu(0EN{I<1PBXSb%V{uxbc)<;G<^lj^u~loGRiNWHv8uLhmn3|E#a6X@SWgz8J!7?( z&qXRTmhidR1uG5=^bfFFYF$pk{g9_{A>sndIPV@KvMcJkD4jc47sfi~Bz%aa*{$md zsO`qr6z{9%w^%eFJ0|!ZVVwq%TbR`Ob1dn3sElPngLe}1Z6Ea~rmnyoL zcWMa>k(y>)gH5&~<@z>OO2gFz=)BczH7)rz8a9q4fwLecCps>S0k%%8now(9zx%mj zGu7pY=K3h)V7syL1y<}ztW@mSnPv!G$YM(65bNRer%@`QZ(voYuSwHtku1hk7!l_9 z99Aj`8B4PN1z~|Rbjw&&4t2)z$=zG5>U5a92R>(TOz}3jzdVJN#4BUfq%2tVaDCeG zg&Av*?8F5tqC>Y>qAxbqf`dID7e9|rVZ}lqtO%AxLTapeSQ5D+Tcd=vUahg>;1COc zTJ5*W2v$EnF30(B{dWEnu~zfxL6rv$4G&fRYdhAjo^b5{*Ew;!a4(nRtCI0Gu+$p{ l{3Sc_-2XSMmu$ZU7yz__3>V!Da}xjn002ovPDHLkV1hF=8nyrc literal 0 HcmV?d00001 diff --git a/themes/zen/STARTERKIT/template.php b/themes/zen/STARTERKIT/template.php new file mode 100644 index 0000000..2c724b9 --- /dev/null +++ b/themes/zen/STARTERKIT/template.php @@ -0,0 +1,155 @@ +type; + if (function_exists($function)) { + $function($vars, $hook); + } +} +// */ + +/** + * Override or insert variables into the comment templates. + * + * @param $vars + * An array of variables to pass to the theme template. + * @param $hook + * The name of the template being rendered ("comment" in this case.) + */ +/* -- Delete this line if you want to use this function +function STARTERKIT_preprocess_comment(&$vars, $hook) { + $vars['sample_variable'] = t('Lorem ipsum.'); +} +// */ + +/** + * Override or insert variables into the block templates. + * + * @param $vars + * An array of variables to pass to the theme template. + * @param $hook + * The name of the template being rendered ("block" in this case.) + */ +/* -- Delete this line if you want to use this function +function STARTERKIT_preprocess_block(&$vars, $hook) { + $vars['sample_variable'] = t('Lorem ipsum.'); +} +// */ diff --git a/themes/zen/STARTERKIT/templates/README.txt b/themes/zen/STARTERKIT/templates/README.txt new file mode 100644 index 0000000..a97d7cc --- /dev/null +++ b/themes/zen/STARTERKIT/templates/README.txt @@ -0,0 +1,82 @@ +TEMPLATES +--------- + +Drupal 6 contains the following template files which you can override and modify +by copying them to your sub-theme. The Zen theme overrides a handful of Drupal's +templates. In order to override those templates, you should copy them from the +zen/templates folder to your sub-theme's templates folder. + +As always, when adding a new template file to your sub-theme, you will need to +rebuild the "theme registry" in order for Drupal to see it. For more info, see: + http://drupal.org/node/173880#theme-registry + +Located in zen/templates: + page.tpl.php + maintenance-page.tpl.php + node.tpl.php + block.tpl.php + comment-wrapper.tpl.php + comment.tpl.php + views-view.tpl.php + +Located in /modules/aggregator: + aggregator-feed-source.tpl.php + aggregator-item.tpl.php + aggregator-summary-item.tpl.php + aggregator-summary-items.tpl.php + aggregator-wrapper.tpl.php + +Located in /modules/block: + block-admin-display-form.tpl.php + +Located in /modules/book: + book-all-books-block.tpl.php + book-export-html.tpl.php + book-navigation.tpl.php + book-node-export-html.tpl.php + +Located in /modules/comment: + comment-folded.tpl.php + comment-wrapper.tpl.php (overridden by Zen) + comment.tpl.php (overridden by Zen) + +Located in /modules/forum: + forum-icon.tpl.php + forum-list.tpl.php + forum-submitted.tpl.php + forum-topic-list.tpl.php + forum-topic-navigation.tpl.php + forums.tpl.php + +Located in /modules/node: + node.tpl.php (overridden by Zen) + +Located in /modules/poll: + poll-bar-block.tpl.php + poll-bar.tpl.php + poll-results-block.tpl.php + poll-results.tpl.php + poll-vote.tpl.php + +Located in /modules/profile: + profile-block.tpl.php + profile-listing.tpl.php + profile-wrapper.tpl.php + +Located in /modules/search: + search-block-form.tpl.php + search-result.tpl.php + search-results.tpl.php + search-theme-form.tpl.php + +Located in /modules/system: + block.tpl.php (overridden by Zen) + box.tpl.php + maintenance-page.tpl.php (overridden by Zen) + page.tpl.php (overridden by Zen) + +Located in /modules/user: + user-picture.tpl.php + user-profile-category.tpl.php + user-profile-item.tpl.php + user-profile.tpl.php diff --git a/themes/zen/STARTERKIT/theme-settings.php b/themes/zen/STARTERKIT/theme-settings.php new file mode 100644 index 0000000..2879454 --- /dev/null +++ b/themes/zen/STARTERKIT/theme-settings.php @@ -0,0 +1,43 @@ + 'checkbox', + '#title' => t('Use this sample setting'), + '#default_value' => $settings['STARTERKIT_example'], + '#description' => t("This option doesn't do anything; it's just an example."), + ); + // */ + + // Add the base theme's settings. + $form += zen_settings($saved_settings, $defaults); + + // Remove some of the base theme's settings. + unset($form['themedev']['zen_layout']); // We don't need to select the base stylesheet. + + // Return the form + return $form; +} diff --git a/themes/zen/layouts/README.txt b/themes/zen/layouts/README.txt new file mode 100644 index 0000000..2784eba --- /dev/null +++ b/themes/zen/layouts/README.txt @@ -0,0 +1,5 @@ +To build your own Panels layout follow the documentation provided by Panels: + http://drupal.org/node/495654 + +* Please note: These panels layouts will only show up if Zen is enabled. A + bugfix is in the works for this issue: http://drupal.org/node/657720 diff --git a/themes/zen/layouts/one_sidebar_first/one-sidebar-first-admin.css b/themes/zen/layouts/one_sidebar_first/one-sidebar-first-admin.css new file mode 100644 index 0000000..eecec4c --- /dev/null +++ b/themes/zen/layouts/one_sidebar_first/one-sidebar-first-admin.css @@ -0,0 +1,41 @@ +/** + * @file + * Page manager layout + * + * We are using percentages in the admin instead of fixed widths so that the + * admin can work nicely in different admin themes. + */ + +#panels-dnd-main div.panels-display h2.label { + padding-left: 24px; + text-align: left; +} + +#page-manager-edit .zen-one-sidebar-first .panel-content { + float: left; /* LTR */ + width: 66%; + margin-left: 34%; /* LTR */ + margin-right: -100%; /* LTR */ /* Negative value of #content's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #content-inner. */ +} + +#page-manager-edit .zen-one-sidebar-first .panel-content .inside { + margin-right: 0px; +} + +#page-manager-edit .zen-one-sidebar-first .panel-header { + height: auto; + margin-bottom: 10px; +} + +#page-manager-edit .zen-one-sidebar-first .panel-sidebar-first { + float: left; /* LTR */ + width: 34%; + margin-left: 0px; /* LTR */ /* Width of #content. */ + margin-right: -34%; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +#page-manager-edit .zen-one-sidebar-first .panel-sidebar-first .panel-sidebar-first-inner { + margin-right: 10px; +} diff --git a/themes/zen/layouts/one_sidebar_first/one-sidebar-first.css b/themes/zen/layouts/one_sidebar_first/one-sidebar-first.css new file mode 100644 index 0000000..c5eba65 --- /dev/null +++ b/themes/zen/layouts/one_sidebar_first/one-sidebar-first.css @@ -0,0 +1,36 @@ +/** + * @file + * Zen panel layout + * + * This layout does include the standar Zen navbar, content and right sidebar + * layout. Markup has been reordered for Accessibility and SEO optimizations. + * The markup order is: content, sidebar but the display will show sidebar, + * content. + */ + +.zen-one-sidebar-first { +/* overflow: hidden; */ + position: relative; + margin-top: 0; + padding-top: 0; +} + +.zen-one-sidebar-first .panel-content { + float: left; /* LTR */ + width: 640px; + margin-left: 320px; /* LTR */ + margin-right: -960px; /* LTR */ /* Negative value of #content's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #content-inner. */ +} + +.zen-one-sidebar-first .panel-sidebar-first { + float: left; /* LTR */ + width: 320px; + margin-left: 0px; /* LTR */ /* Width of #content. */ + margin-right: -320px; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +.zen-one-sidebar-first .panel-sidebar-first .panel-sidebar-first-inner { + margin-right: 20px; +} diff --git a/themes/zen/layouts/one_sidebar_first/one-sidebar-first.png b/themes/zen/layouts/one_sidebar_first/one-sidebar-first.png new file mode 100644 index 0000000000000000000000000000000000000000..5b7b1de75d080a219ec0f544b796f86be5af7385 GIT binary patch literal 813 zcmV+|1JeA7P)A)0%*>?E zV(seF#_4@Gm z_xRY@&t_(300030|NohpnefUHp8x;?14%?dRCwC#mu+{NFcg3jNeEdX4Jb^8R^5DQ zwQColVdW+M|9`baYB%iMne(ilc)sL9c(}O%asp6i1O7>=U->0GNu%susDFkh>6A|C zluqfCPU)2YqEu&aQ2u_8aG~PZ0!FS)beQnhD}3SXTdE*^n}r6uiU3zf4B0k7zETBX zn<`QYg37KeB-@IdFft(?@Jv2mNz3eoDgY(33gy;_D`=6n0wZus7y`Cd991BsyQO7s z2w_-XXvTrq(ZG1Mix^UT=+5kAqyFkySKa zHg%>oZjxmR>dH%4LIi`-4)2*;z*gV=W)Cp2+nmHx*Bh{4-eyopU_f> zQ9RdO@%%`c4Tr<&bWoP1QRX_H&891(lx5F!&8D-q!o3D}pCvgQ t('Zen Layout: one sidebar before content'), + 'icon' => 'one-sidebar-first.png', + 'theme' => 'zen_one_sidebar_first', + 'admin theme' => 'zen_one_sidebar_first_admin', + 'css' => 'one-sidebar-first.css', + 'admin css' => 'one-sidebar-first-admin.css', + 'panels' => array( + 'content' => t('Content'), + 'sidebar_first' => t('First sidebar'), + ), + ); + + return $items; +} diff --git a/themes/zen/layouts/one_sidebar_first/zen-one-sidebar-first-admin.tpl.php b/themes/zen/layouts/one_sidebar_first/zen-one-sidebar-first-admin.tpl.php new file mode 100644 index 0000000..b1b8e37 --- /dev/null +++ b/themes/zen/layouts/one_sidebar_first/zen-one-sidebar-first-admin.tpl.php @@ -0,0 +1,28 @@ + + +

> + +
+ +
+ +
+ +
+ +
diff --git a/themes/zen/layouts/one_sidebar_first/zen-one-sidebar-first.tpl.php b/themes/zen/layouts/one_sidebar_first/zen-one-sidebar-first.tpl.php new file mode 100644 index 0000000..09fe40d --- /dev/null +++ b/themes/zen/layouts/one_sidebar_first/zen-one-sidebar-first.tpl.php @@ -0,0 +1,28 @@ + + +
> + +
+ +
+ +
+ +
+ +
diff --git a/themes/zen/layouts/one_sidebar_second/one-sidebar-second-admin.css b/themes/zen/layouts/one_sidebar_second/one-sidebar-second-admin.css new file mode 100644 index 0000000..8097908 --- /dev/null +++ b/themes/zen/layouts/one_sidebar_second/one-sidebar-second-admin.css @@ -0,0 +1,42 @@ +/** + * @file + * Page manager layout + * + * We are using percentages in the admin instead of fixed widths so that the + * admin can work nicely in different admin themes. + */ + +#page-manager-edit .zen-one-sidebar-second .panel-header { + height: auto; + margin-bottom: 10px; +} + +#page-manager-edit .zen-one-sidebar-second .panel-content { + float: left; /* LTR */ + width: 66%; + margin-left: 0; /* LTR */ + margin-right: -66%; /* LTR */ /* Negative value of #content's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #content-inner. */ + margin-top: 0px; +} + +#page-manager-edit .zen-one-sidebar-second .panel-content .inside { + margin-right: 10px; +} + +#page-manager-edit .zen-one-sidebar-second .with-panel-header .panel-content, +#page-manager-edit .zen-one-sidebar-second .with-panel-header .panel-sidebar-first { + margin-top: 0; /* Set this to the same value as the navbar height above. */ +} + +#page-manager-edit .zen-one-sidebar-second .panel-sidebar-first { + float: left; /* LTR */ + width: 34%; + margin-left: 66%; /* LTR */ /* Width of #content. */ + margin-right: -100%; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +.zen-one-sidebar-second .panel-sidebar-first .panel-sidebar-first-inner { + margin: 0 0 0 0; +} diff --git a/themes/zen/layouts/one_sidebar_second/one-sidebar-second.css b/themes/zen/layouts/one_sidebar_second/one-sidebar-second.css new file mode 100644 index 0000000..6eebc71 --- /dev/null +++ b/themes/zen/layouts/one_sidebar_second/one-sidebar-second.css @@ -0,0 +1,50 @@ +/** + * @file + * Zen panel layout + * + * This layout does include the standar Zen navbar, content and right sidebar + * layout. Markup has been reordered for Accessibility and SEO optimizations. + */ + +.zen-one-sidebar-second { +/* overflow: hidden; */ + position: relative; + margin-top: 0; + padding-top: 0; +} + +.zen-one-sidebar-second .panel-navbar { + width: 100%; + float: left; /* LTR */ + margin-left: 0; /* LTR */ + margin-right: -100%; /* LTR */ /* Negative value of #navbar's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to .region-navbar. */ + height: 8.3em; /* The navbar can have any arbritrary height. We picked one + that is the line-height plus 1em: 1.3 + 1 = 2.3 + Set this to the same value as the margin-top below. */ +} + +.zen-one-sidebar-second .with-panel-header .panel-content, +.zen-one-sidebar-second .with-panel-header .panel-sidebar-first { + margin-top: 8.3em; /* Set this to the same value as the navbar height above. */ +} + +.zen-one-sidebar-second .panel-content { + float: left; /* LTR */ + width: 640px; + margin-left: 0; /* LTR */ + margin-right: -640px; /* LTR */ /* Negative value of #content's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #content-inner. */ +} + +.zen-one-sidebar-second .panel-sidebar-first { + float: left; /* LTR */ + width: 320px; + margin-left: 640px; /* LTR */ /* Width of #content. */ + margin-right: -960px; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +.zen-one-sidebar-second .panel-sidebar-first .panel-sidebar-first-inner { + margin-left: 20px; +} diff --git a/themes/zen/layouts/one_sidebar_second/one-sidebar-second.png b/themes/zen/layouts/one_sidebar_second/one-sidebar-second.png new file mode 100644 index 0000000000000000000000000000000000000000..33be4169358a1b2476208a49f42edd775e1bf233 GIT binary patch literal 812 zcmV+{1JnG8P)A)0%*>?E zV(seF#_4@Gm z_xRY@&t_(300030|NohpnefUHp8x;?0!c(cRCwC#mu-8SAQXlng2<{AO>}W4G1>Cc zCS5zC#nmYJ|Np8Gmu;rox-8fF$>$5;Ik)E=P%Z%KY=M75>euy?PlN1VQ~krILpr2G zI;2B7q(lA-Qk|hA^7m(i3lYZ_Fmi38y9xj9;S1-`QU&SDC^Xnt1h~4#kZl9xD^&uv zsUoEysO-u@vW>`;k(7AAGx2;SEpryC0F=xsm0KgOphemUjKB?H2-q5NREdx_OUvF6 z!mxHUc_4O@7_asb0}M79Tc#D3Jf5X~g%lp)sV;^IQ%o%smI~JHpO8|qG>sT8^$cz5 zTw~k>%N5j>{U$L*^lSI(Py!-*fOH8Nsu3cNauM=M7ghY_QsTqhI~YS);KLK1n>NEZ za|$fwrK_KfwDLUXzMnw}zck_!W`$n_H;s}O;=OOw@Aq$)>*c3LUni3*t;Y|I9$Sce zclXigcDY=ySsw94wM=!!mLOrrQ+#H&wae~ z+Q?!R(_Bd2>xm$tVHihZ8@dS%IOij63S@6_g3Qq9n&rkpzN^^xJTB@sE5i qa{i{&?fh?poPXncgRAJX00RIpM@gxD=^T#$0000 t('Zen Layout: one sidebar after content'), + 'icon' => 'one-sidebar-second.png', + 'theme' => 'zen_one_sidebar_second', + 'admin theme' => 'zen_one_sidebar_second_admin', + 'css' => 'one-sidebar-second.css', + 'admin css' => 'one-sidebar-second-admin.css', + 'panels' => array( + 'content' => t('Content'), + 'sidebar_first' => t('First sidebar'), + ), + ); + + return $items; +} diff --git a/themes/zen/layouts/one_sidebar_second/zen-one-sidebar-second-admin.tpl.php b/themes/zen/layouts/one_sidebar_second/zen-one-sidebar-second-admin.tpl.php new file mode 100644 index 0000000..41dbe56 --- /dev/null +++ b/themes/zen/layouts/one_sidebar_second/zen-one-sidebar-second-admin.tpl.php @@ -0,0 +1,28 @@ + + +
> + +
+ +
+ +
+ +
+ +
diff --git a/themes/zen/layouts/one_sidebar_second/zen-one-sidebar-second.tpl.php b/themes/zen/layouts/one_sidebar_second/zen-one-sidebar-second.tpl.php new file mode 100644 index 0000000..bdb251e --- /dev/null +++ b/themes/zen/layouts/one_sidebar_second/zen-one-sidebar-second.tpl.php @@ -0,0 +1,28 @@ + + +
> + +
+ +
+ +
+ +
+ +
diff --git a/themes/zen/layouts/two_sidebars/two-sidebars-admin.css b/themes/zen/layouts/two_sidebars/two-sidebars-admin.css new file mode 100644 index 0000000..f7669b7 --- /dev/null +++ b/themes/zen/layouts/two_sidebars/two-sidebars-admin.css @@ -0,0 +1,53 @@ +/** + * @file + * Page manager layout + * + * We are using percentages in the admin instead of fixed widths so that the + * admin can work nicely in different admin themes. + */ + +#panels-dnd-main div.panels-display h2.label { + padding-left: 24px; + text-align: left; +} + +#page-manager-edit .zen-two-sidebars .panel-content .inside { + margin-right: 10px; +} + +#page-manager-edit .zen-two-sidebars .panel-content { + float: left; /* LTR */ + width: 50%; + margin-left: 25%; /* LTR */ + margin-right: -75%; /* LTR */ /* Negative value of #content's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #content-inner. */ +} + +#page-manager-edit .zen-two-sidebars .panel-header { + height: auto; + margin-bottom: 10px; +} + +#page-manager-edit .zen-two-sidebars .panel-sidebar-first { + float: left; /* LTR */ + width: 25%; + margin-left: 0px; /* LTR */ /* Width of #content. */ + margin-right: -25%; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +#page-manager-edit .zen-two-sidebars .panel-sidebar-first-inner { + margin-right: 10px; +} + +#page-manager-edit .zen-two-sidebars .panel-sidebar-second { + float: left; /* LTR */ + width: 25%; + margin-left: 75%; /* LTR */ /* Width of #content. */ + margin-right: -100%; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +#page-manager-edit .zen-two-sidebars .panel-sidebar-second-inner { + margin-left: 0px; +} diff --git a/themes/zen/layouts/two_sidebars/two-sidebars.css b/themes/zen/layouts/two_sidebars/two-sidebars.css new file mode 100644 index 0000000..10ddf5d --- /dev/null +++ b/themes/zen/layouts/two_sidebars/two-sidebars.css @@ -0,0 +1,51 @@ +/** + * @file + * Zen panel layout + * + * This layout does include the standar Zen navbar, content and right sidebar + * layout. Markup has been reordered for Accessibility and SEO optimizations. + * The markup order is: content, sidebar, sidebar but the display will show + * sidebar, content, sidebar. + */ + +.zen-two-sidebars { +/* overflow: hidden; */ + position: relative; + margin-top: 0; + padding-top: 0; +} + +.zen-two-sidebars .panel-sidebar-first { +} + +.zen-two-sidebars .panel-content { + float: left; /* LTR */ + width: 460px; + margin-left: 250px; /* LTR */ + margin-right: -960px; /* LTR */ /* Negative value of #content's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #content-inner. */ +} + +.zen-two-sidebars .panel-sidebar-first { + float: left; /* LTR */ + width: 250px; + margin-left: 0px; /* LTR */ /* Width of #content. */ + margin-right: -250px; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +.zen-two-sidebars .panel-sidebar-first .panel-sidebar-first-inner { + margin-right: 20px; +} + +.zen-two-sidebars .panel-sidebar-second { + float: left; /* LTR */ + width: 250px; + margin-left: 710px; /* LTR */ /* Width of #content. */ + margin-right: -960px; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +.zen-two-sidebars .panel-sidebar-second .panel-sidebar-second-inner { + margin-left: 20px; +} diff --git a/themes/zen/layouts/two_sidebars/two-sidebars.png b/themes/zen/layouts/two_sidebars/two-sidebars.png new file mode 100644 index 0000000000000000000000000000000000000000..23cc8d124667f5f26090d3e70ddce1fa94c07890 GIT binary patch literal 817 zcmV-11J3-3P)A)0%*>?E zV(seF#_4@Gm z_xRY@&t_(300030|NohpnefUHp8x;?2T4RhRCwC#muq*MAQ*rlg6OIgO>}W4HQ91$ zldc`n;_8L`|9>^mriK2B%C4^!%P|pL=lZmlvA5uVJJ7Yt)+z^Mo)UTA>B`i_JP_B!qxx_-k+WC`GNSY)e z#f4g-ZJjBN>13INsGUj t('Zen Layout: two sidebars with content'), + 'icon' => 'two-sidebars.png', + 'theme' => 'zen_two_sidebars', + 'admin theme' => 'zen_two_sidebars_admin', + 'css' => 'two-sidebars.css', + 'admin css' => 'two-sidebars-admin.css', + 'panels' => array( + 'content' => t('Content'), + 'sidebar_first' => t('First sidebar'), + 'sidebar_second' => t('Second sidebar'), + ), + ); + + return $items; +} diff --git a/themes/zen/layouts/two_sidebars/zen-two-sidebars-admin.tpl.php b/themes/zen/layouts/two_sidebars/zen-two-sidebars-admin.tpl.php new file mode 100644 index 0000000..5dbfd83 --- /dev/null +++ b/themes/zen/layouts/two_sidebars/zen-two-sidebars-admin.tpl.php @@ -0,0 +1,33 @@ + + +
> + +
+ +
+ +
+ +
+ +
+ +
+ +
diff --git a/themes/zen/layouts/two_sidebars/zen-two-sidebars.tpl.php b/themes/zen/layouts/two_sidebars/zen-two-sidebars.tpl.php new file mode 100644 index 0000000..f309c87 --- /dev/null +++ b/themes/zen/layouts/two_sidebars/zen-two-sidebars.tpl.php @@ -0,0 +1,33 @@ + + +
> + +
+ +
+ +
+ +
+ +
+ +
+ +
diff --git a/themes/zen/layouts/two_sidebars_first/two-sidebars-first-admin.css b/themes/zen/layouts/two_sidebars_first/two-sidebars-first-admin.css new file mode 100644 index 0000000..bfc8686 --- /dev/null +++ b/themes/zen/layouts/two_sidebars_first/two-sidebars-first-admin.css @@ -0,0 +1,53 @@ +/** + * @file + * Page manager layout + * + * Because we're using fixed widths and not percentages, we need to adjust the + * panel page editing layout to fit reasonably on screen. We're assuming a + * 960px page width, leaving the main panel manager content well at 769px. + */ +#panels-dnd-main div.panels-display h2.label { + padding-left: 24px; + text-align: left; +} + +#page-manager-edit .zen-two-sidebars-first .panel-content .inside { + margin-right: 0px; +} + +#page-manager-edit .zen-two-sidebars-first .panel-content { + float: left; /* LTR */ + width: 50%; + margin-left: 50%; /* LTR */ + margin-right: -100%; /* LTR */ /* Negative value of #content's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #content-inner. */ +} + +#page-manager-edit .zen-two-sidebars-first .panel-header { + height: auto; + margin-bottom: 10px; +} + +#page-manager-edit .zen-two-sidebars-first .panel-sidebar-first { + float: left; /* LTR */ + width: 25%; + margin-left: 0px; /* LTR */ /* Width of #content. */ + margin-right: -25%; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +#page-manager-edit .zen-two-sidebars-first .panel-sidebar-first-inner { + margin-right: 10px; +} + +#page-manager-edit .zen-two-sidebars-first .panel-sidebar-second { + float: left; /* LTR */ + width: 25%; + margin-left: 25%; /* LTR */ /* Width of #content. */ + margin-right: -50%; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +#page-manager-edit .zen-two-sidebars-first .panel-sidebar-second-inner { + margin-right: 10px; +} diff --git a/themes/zen/layouts/two_sidebars_first/two-sidebars-first.css b/themes/zen/layouts/two_sidebars_first/two-sidebars-first.css new file mode 100644 index 0000000..f763b08 --- /dev/null +++ b/themes/zen/layouts/two_sidebars_first/two-sidebars-first.css @@ -0,0 +1,51 @@ +/** + * @file + * Zen panel layout + * + * This layout does include the standar Zen navbar, content and right sidebar + * layout. Markup has been reordered for Accessibility and SEO optimizations. + * The markup order is: content, sidebar, sidebar but the display will show + * sidebar, sidebar, content. + */ + +.zen-two-sidebars-first { +/* overflow: hidden; */ + position: relative; + margin-top: 0; + padding-top: 0; +} + +.zen-two-sidebars-first .panel-sidebar-first { +} + +.zen-two-sidebars-first .panel-content { + float: left; /* LTR */ + width: 460px; + margin-left: 500px; /* LTR */ + margin-right: -960px; /* LTR */ /* Negative value of #content's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #content-inner. */ +} + +.zen-two-sidebars-first .panel-sidebar-first { + float: left; /* LTR */ + width: 250px; + margin-left: 0px; /* LTR */ /* Width of #content. */ + margin-right: -250px; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +.zen-two-sidebars-first .panel-sidebar-first .panel-sidebar-first-inner { + margin-right: 20px; +} + +.zen-two-sidebars-first .panel-sidebar-second { + float: left; /* LTR */ + width: 250px; + margin-left: 250px; /* LTR */ /* Width of #content. */ + margin-right: -500px; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +.zen-two-sidebars-first .panel-sidebar-second .panel-sidebar-second-inner { + margin-right: 20px; +} diff --git a/themes/zen/layouts/two_sidebars_first/two-sidebars-first.png b/themes/zen/layouts/two_sidebars_first/two-sidebars-first.png new file mode 100644 index 0000000000000000000000000000000000000000..79ec8d890456869d123ad199a9fe6f456d44117c GIT binary patch literal 812 zcmV+{1JnG8P)A)0%*>?E zV(seF#_4@Gm z_xRY@&t_(300030|NohpnefUHp8x;?0!c(cRCwC#mu+{NFcg3jNeEdX4Jb^8if+EN z+O><&up-3&|F4!v?KxPtGv`@9@qEdJ@Njbja$^+PU)0R z>6A|Clur3CN_7E8ZaEwdM@0F=xsm0KgOphemWjKCdX2-sS2REd!8mX^IC zgkgQ583$q~1LM^`Vt~PB#FlA=C69Zlb4uY6p6X(lFvZkDVX0v4{z)knOVfzqQqRz) z&b7u(vRpx3*>47>h`#M!9ZEoC50EY)Lp4IgQ7%GW>7t6if0Xzz_YTGo7Wi<6=cdgt z&YS{EdF|8BMw&d&x$kFC!XFJ>!mRL%;I1KQDco(K{ehH)gep_|Zvb3W2tf$S|#l=*rd$J>G6T&JO{@pk+8I9~V(-3c*@ z=ejGNpD458a5$X~cDtQX<~p9urYocDc0JQIo6gz__Zr+omgIO;B!S=}eLWmq{UKkf qT)rrEEC0tRm;dp7z^~{p0R{jhHb~0&Tv t('Zen Layout: two sidebars before content'), + 'icon' => 'two-sidebars-first.png', + 'theme' => 'zen_two_sidebars_first', + 'admin theme' => 'zen_two_sidebars_first_admin', + 'css' => 'two-sidebars-first.css', + 'admin css' => 'two-sidebars-first-admin.css', + 'panels' => array( + 'content' => t('Content'), + 'sidebar_first' => t('First sidebar'), + 'sidebar_second' => t('Second sidebar'), + ), + ); + + return $items; +} diff --git a/themes/zen/layouts/two_sidebars_first/zen-two-sidebars-first-admin.tpl.php b/themes/zen/layouts/two_sidebars_first/zen-two-sidebars-first-admin.tpl.php new file mode 100644 index 0000000..320a32f --- /dev/null +++ b/themes/zen/layouts/two_sidebars_first/zen-two-sidebars-first-admin.tpl.php @@ -0,0 +1,33 @@ + + +
> + +
+ +
+ +
+ +
+ +
+ +
+ +
diff --git a/themes/zen/layouts/two_sidebars_first/zen-two-sidebars-first.tpl.php b/themes/zen/layouts/two_sidebars_first/zen-two-sidebars-first.tpl.php new file mode 100644 index 0000000..b25010b --- /dev/null +++ b/themes/zen/layouts/two_sidebars_first/zen-two-sidebars-first.tpl.php @@ -0,0 +1,33 @@ + + +
> + +
+ +
+ +
+ +
+ +
+ +
+ +
diff --git a/themes/zen/layouts/two_sidebars_second/two-sidebars-second-admin.css b/themes/zen/layouts/two_sidebars_second/two-sidebars-second-admin.css new file mode 100644 index 0000000..91ccb52 --- /dev/null +++ b/themes/zen/layouts/two_sidebars_second/two-sidebars-second-admin.css @@ -0,0 +1,55 @@ +/** + * @file + * Page manager layout + * + * We are using percentages in the admin instead of fixed widths so that the + * admin can work nicely in different admin themes. + */ + +.zen-two-sidebars-second .admin-row { + float: left; + width: 100%; +} + +#panels-dnd-main div.panels-display h2.label { + padding-left: 24px; + padding-right: 0px; + text-align: left; +} + +#page-manager-edit .zen-two-sidebars-second .panel-content { + float: left; /* LTR */ + width: 51%; + margin-left: 0; /* LTR */ + margin-right: -51%; /* LTR */ /* Negative value of #content's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #content-inner. */ +} + +#page-manager-edit .zen-two-sidebars-second .panel-header { + height: auto; + margin-bottom: 10px; +} + +#page-manager-edit .zen-two-sidebars-second .panel-sidebar-first { + float: left; /* LTR */ + width: 24%; + margin-left: 51%; /* LTR */ /* Width of #content. */ + margin-right: -75%; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +#page-manager-edit .zen-two-sidebars-second .panel-sidebar-first-inner { + margin-left: 5px; +} + +#page-manager-edit .zen-two-sidebars-second .panel-sidebar-second { + float: left; /* LTR */ + width: 24%; + margin-left: 75%; /* LTR */ /* Width of #content. */ + margin-right: -99%; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +#page-manager-edit .zen-two-sidebars-second .panel-sidebar-second-inner { + margin-left: 5px; +} diff --git a/themes/zen/layouts/two_sidebars_second/two-sidebars-second.css b/themes/zen/layouts/two_sidebars_second/two-sidebars-second.css new file mode 100644 index 0000000..ee6a313 --- /dev/null +++ b/themes/zen/layouts/two_sidebars_second/two-sidebars-second.css @@ -0,0 +1,62 @@ +/** + * @file + * Zen panel layout + * + * This layout does include the standar Zen navbar, content and right sidebar + * layout. Markup has been reordered for Accessibility and SEO optimizations. + */ +.zen-two-sidebars-second { +/* overflow: hidden; */ + position: relative; + margin-top: 0; + padding-top: 0; +} + +.zen-two-sidebars-second .panel-content { + float: left; /* LTR */ + width: 460px; + margin-left: 0; /* LTR */ + margin-right: -460px; /* LTR */ /* Negative value of #content's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #content-inner. */ +} + +.zen-two-sidebars-second .panel-header { + float: left; /* LTR */ + width: 100%; + margin-left: 0; /* LTR */ + margin-right: -100%; /* LTR */ /* Negative value of #navigation's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #navigation .section. */ + height: 3.3em; /* The navigation can have any arbritrary height. We picked one + that is the line-height plus 1em: 1.3 + 1 = 2.3 + Set this to the same value as the margin-top below. */ +} + +.zen-two-sidebars-second .with-panel-header .panel-content, +.zen-two-sidebars-second .with-panel-header .panel-sidebar-first, +.zen-two-sidebars-second .with-panel-header .panel-sidebar-second { + margin-top: 3.3em; /* Set this to the same value as the navigation height above. */ +} + +.zen-two-sidebars-second .panel-sidebar-first { + float: left; /* LTR */ + width: 250px; + margin-left: 460px; /* LTR */ /* Width of #content. */ + margin-right: -710px; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +.zen-two-sidebars-second .panel-sidebar-first .panel-sidebar-first-inner { + margin-left: 20px; +} + +.zen-two-sidebars-second .panel-sidebar-second { + float: left; /* LTR */ + width: 250px; + margin-left: 710px; /* LTR */ /* Width of #content. */ + margin-right: -960px; /* LTR */ /* Negative value of #sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #sidebar-first-inner. */ +} + +.zen-two-sidebars-second .panel-sidebar-second .panel-sidebar-second-inner { + margin-left: 20px; +} diff --git a/themes/zen/layouts/two_sidebars_second/two-sidebars-second.png b/themes/zen/layouts/two_sidebars_second/two-sidebars-second.png new file mode 100644 index 0000000000000000000000000000000000000000..97a6f8ea9f35e86a7db49cf702e8d5dc3ef8675a GIT binary patch literal 814 zcmV+}1JV46P)A)0%*>?E zV(seF#_4@Gm z_xRY@&t_(300030|NohpnefUHp8x;?1W80eRCwC#mu+{OAQZ}W4G1>Ca zCS5zC#nlJ${lC>fm+hFQJIiv`SN`8{@$&QD3(5gQUM%CEkopbD^Jaq_&Z_?H=$Jjy zBR$e1J<=mR@*j}u0v(aRKOiyC z8QRsE!k7-0NuVlwBQc59YY(z10pf!JRS7AqA;h+HAan}{R_ygsqGs-GgaF7<^Mqx( zO%Y1%90_sl>ZcQ>EX$bZr9gmht(X95?&bbntGI)>A6pHF!~6Ai{iW6S+3ZH?`BSUs z4&ppKeAc>OueaN1`=QnD_I9Rp^HuBVY1c(IQ-lijrE#BlX&eM2DMzay&0|6ce|b@J zAFbUkvf4x>c2RL?Pb?PE35p*hIN}F<6}-%k46X_9M=i3PU#2{r>TBy7FRD zaz2Tc$`vh7ki~dBp3g^RS!!gd?8Rcf(MVYiv}-Y6bP?vZa+)adv6sg_XFU1Yom~AR sUy5A5DfK)5`yiL!_}<|v`a^&L06dyV%Jx#b2LJ#707*qoM6N<$f(p8>Z~y=R literal 0 HcmV?d00001 diff --git a/themes/zen/layouts/two_sidebars_second/two_sidebars_second.inc b/themes/zen/layouts/two_sidebars_second/two_sidebars_second.inc new file mode 100644 index 0000000..05e0add --- /dev/null +++ b/themes/zen/layouts/two_sidebars_second/two_sidebars_second.inc @@ -0,0 +1,21 @@ + t('Zen Layout: two sidebars after content'), + 'icon' => 'two-sidebars-second.png', + 'theme' => 'zen_two_sidebars_second', + 'admin theme' => 'zen_two_sidebars_second_admin', + 'css' => 'two-sidebars-second.css', + 'admin css' => 'two-sidebars-second-admin.css', + 'panels' => array( + 'content' => t('Content'), + 'sidebar_first' => t('First sidebar'), + 'sidebar_second' => t('Second sidebar'), + ), + ); + + return $items; +} diff --git a/themes/zen/layouts/two_sidebars_second/zen-two-sidebars-second-admin.tpl.php b/themes/zen/layouts/two_sidebars_second/zen-two-sidebars-second-admin.tpl.php new file mode 100644 index 0000000..b19f138 --- /dev/null +++ b/themes/zen/layouts/two_sidebars_second/zen-two-sidebars-second-admin.tpl.php @@ -0,0 +1,33 @@ + + +
> + +
+ +
+ +
+ +
+ +
+ +
+ +
diff --git a/themes/zen/layouts/two_sidebars_second/zen-two-sidebars-second.tpl.php b/themes/zen/layouts/two_sidebars_second/zen-two-sidebars-second.tpl.php new file mode 100644 index 0000000..9fb6e0b --- /dev/null +++ b/themes/zen/layouts/two_sidebars_second/zen-two-sidebars-second.tpl.php @@ -0,0 +1,33 @@ + + +
> + +
+ +
+ +
+ +
+ +
+ +
+ +
diff --git a/themes/zen/logo.png b/themes/zen/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..a30644a095ada3d736521dadb62ded81ccde98a4 GIT binary patch literal 1027 zcmV+e1pNDnP)L3e9Ym=B zmEfx&q=J|V94c^90l5mC4$M^mR{^8~NCm{6tY*I1(eto<9MR6~jBR8|-@aEKW|zw) zyLWn*{RfmlCXfka0+~Q2kO`!nW&vaJjwRghJ3f!RucG6R9slY0r)|9{STutID&ZNYmI**k0aE)4Zdx&rCj%G_9G@@2Wc4#{{`&dO<{D#x)TX;5 zKrU@d%ci-R9}EJMj(H{l=_9@A!UB@})`pE2O&hE%AeBY?2ZQgLgcS{P zJ_5)`(v}3%`wYML*IT&f*ZTfxqMUq{$(|g6h*RbAz1J|;0&<$NjM+fZpvcc+DCnIr zKuXv=a%~w~MOHs01RSia#MmJ9;yX)F&=F8X0#YP|#u0D^E9+)p9!E;L{U#Rl4E^Lt zfj|PN{{De}(*Ohn5lQ?3=F8cfM;iMZ=8*;qS#|vVr3JclNKx0C!cd`{48fvwXhR2` zl9g*#YxG%5thp-Y4;xERsbP%G=XT6rg=5SqQ1EK1z=O5v&J!7Zf@onLMcOUFluKq! zlSS7mq@HA&Y7BxZ9Kl9wwsEysV}TTrePj(|bGo-hXzU}k@UVywQ-N$PL8+nIGdC0r z*e4dy3|FA3)>3Q)33N!11v96Mp@HT-U+(A=(eztSa9d6R5`#?*8kGj1Wk8?k1BvS$ zhAQiPN0JRK+$a4t+f09o_6ZXBd-m=g#$x0x0Jvm9=mg`}Q*;uwA?df4V-IC8%Mvu= zil!A=g(5zL9+F*au1kwww65fAN$3Z5^e8<(8GO`v4M^p1{1}kh8j8rkGk8BaH%MP6 z@Gs3m1V7kmf|uqDVCw-W2KIaH&kOh*Aw2681o9#FXk-bUf(Ymg zR3r!mg+Lq7Lx!-5F;`uUtX^oIC8ZD4fD8;EM_BVIV$Cz8sKLpk$;#7@HY`o#thSvz z@c2@KiPofruO#7TlJfQibB#jt$RJ^(ZEVDwl48CzFS0jEF(Ac=spKX>9tT?gd}|=b zp#80Z+)ur^*8uqlrh0x$Am@>q{FePY=^l!nvpc3X@Mv?A~s002ovPDHLkV1kfy(!l@# literal 0 HcmV?d00001 diff --git a/themes/zen/template.php b/themes/zen/template.php new file mode 100644 index 0000000..0389d75 --- /dev/null +++ b/themes/zen/template.php @@ -0,0 +1,668 @@ +' . implode($breadcrumb_separator, $breadcrumb) . "$trailing_separator$title"; + } + } + // Otherwise, return an empty string. + return ''; +} + +/** + * Return a themed set of links. + * + * @param $links + * A keyed array of links to be themed. + * @param $attributes + * A keyed array of attributes + * @param $heading + * An optional keyed array or a string for a heading to precede the links. + * When using an array the following keys can be used: + * - text: the heading text + * - level: the heading level (e.g. 'h2', 'h3') + * - class: (optional) a string of the CSS classes for the heading + * When using a string it will be used as the text of the heading and the + * level will default to 'h2'. + * Headings should be used on navigation menus and any list of links that + * consistently appears on multiple pages. To make the heading invisible + * use the 'element-invisible' CSS class. Do not use 'display:none', which + * removes it from screen-readers and assistive technology. Headings allow + * screen-reader and keyboard only users to navigate to or skip the links. + * See http://juicystudio.com/article/screen-readers-display-none.php + * and http://www.w3.org/TR/WCAG-TECHS/H42.html for more information. + * @return + * A string containing an unordered list of links. + */ +function zen_links($links, $attributes = array('class' => 'links'), $heading = '') { + global $language; + $output = ''; + + if (count($links) > 0) { + // Treat the heading first if it is present to prepend it to the + // list of links. + if (!empty($heading)) { + if (is_string($heading)) { + // Prepare the array that will be used when the passed heading + // is a string. + $heading = array( + 'text' => $heading, + // Set the default level of the heading. + 'level' => 'h2', + ); + } + $output .= '<' . $heading['level']; + if (!empty($heading['class'])) { + $output .= drupal_attributes(array('class' => $heading['class'])); + } + $output .= '>' . check_plain($heading['text']) . ''; + } + + $output .= ''; + + $num_links = count($links); + $i = 1; + + foreach ($links as $key => $link) { + $class = $key; + + // Add first, last and active classes to the list of links to help out themers. + if ($i == 1) { + $class .= ' first'; + } + if ($i == $num_links) { + $class .= ' last'; + } + if (isset($link['href']) && ($link['href'] == $_GET['q'] || ($link['href'] == '' && drupal_is_front_page())) + && (empty($link['language']) || $link['language']->language == $language->language)) { + $class .= ' active'; + } + $output .= ' $class)) .'>'; + + if (isset($link['href'])) { + // Pass in $link as $options, they share the same keys. + $output .= l($link['title'], $link['href'], $link); + } + else if (!empty($link['title'])) { + // Some links are actually not links, but we wrap these in for adding title and class attributes + if (empty($link['html'])) { + $link['title'] = check_plain($link['title']); + } + $span_attributes = ''; + if (isset($link['attributes'])) { + $span_attributes = drupal_attributes($link['attributes']); + } + $output .= ''. $link['title'] .''; + } + + $i++; + $output .= "\n"; + } + + $output .= ''; + } + + return $output; +} + +/** + * Implements theme_menu_item_link() + */ +function zen_menu_item_link($link) { + if (empty($link['localized_options'])) { + $link['localized_options'] = array(); + } + + // If an item is a LOCAL TASK, render it as a tab + if ($link['type'] & MENU_IS_LOCAL_TASK) { + $link['title'] = '' . check_plain($link['title']) . ''; + $link['localized_options']['html'] = TRUE; + } + + return l($link['title'], $link['href'], $link['localized_options']); +} + +/** + * Duplicate of theme_menu_local_tasks() but adds clearfix to tabs. + */ +function zen_menu_local_tasks() { + $output = ''; + + // CTools requires a different set of local task functions. + if (module_exists('ctools')) { + ctools_include('menu'); + $primary = ctools_menu_primary_local_tasks(); + $secondary = ctools_menu_secondary_local_tasks(); + } + else { + $primary = menu_primary_local_tasks(); + $secondary = menu_secondary_local_tasks(); + } + + if ($primary) { + $output .= '
    ' . $primary . '
'; + } + if ($secondary) { + $output .= '
    ' . $secondary . '
'; + } + + return $output; +} + +/** + * Return a set of blocks available for the current user. + * + * @param $region + * Which set of blocks to retrieve. + * @param $show_blocks + * A boolean to determine whether to render sidebar regions or not. Should be + * the same value as passed to theme_page. + * @return + * A string containing the themed blocks for this region. + * + * @see zen_show_blocks_discovery() + */ +function zen_blocks($region, $show_blocks = NULL) { + // Since Drupal 6 doesn't pass $show_blocks to theme_blocks, we manually call + // theme('blocks', NULL, $show_blocks) so that this function can remember the + // value on later calls. + static $render_sidebars = TRUE; + if (!is_null($show_blocks)) { + $render_sidebars = $show_blocks; + } + + // If zen_blocks was called with a NULL region, its likely we were just + // setting the $render_sidebars static variable. + if ($region) { + $output = ''; + + // If $renders_sidebars is FALSE, don't render any region whose name begins + // with "sidebar_". + if ($render_sidebars || (strpos($region, 'sidebar_') !== 0)) { + // Allow context module to set blocks. + if (function_exists('context_blocks')) { + $output = context_blocks($region); + } + else { + foreach (block_list($region) as $key => $block) { + // $key == module_delta + $output .= theme('block', $block); + } + } + } + + // Add any content assigned to this region through drupal_set_content() calls. + $output .= drupal_get_content($region); + + $elements['#children'] = $output; + $elements['#region'] = $region; + + // Set the theme hook suggestions. + $hook = array('region_' . $region); + if (strpos($region, 'sidebar_') === 0) { + $hook[] = 'region_sidebar'; + } + $hook[] = 'region'; + return $output ? theme($hook, $elements) : ''; + } +} + +/** + * Examine the $show_blocks variable before template_preprocess_page() is called. + * + * @param $vars + * An array of variables to pass to the page template. + * + * @see zen_blocks() + */ +function zen_show_blocks_discovery(&$vars) { + if ($vars['show_blocks'] == FALSE) { + // Allow zen_blocks() to statically cache the $show_blocks variable. A TRUE + // value is assumed, so we only need to override when $show_blocks is FALSE. + theme('blocks', NULL, FALSE); + } +} + +/** + * Override or insert variables into templates before other preprocess functions have run. + * + * @param $vars + * An array of variables to pass to the theme template. + * @param $hook + * The name of the template being rendered. + */ +function zen_preprocess(&$vars, $hook) { + // In D6, the page.tpl uses a different variable name to hold the classes. + $key = ($hook == 'page' || $hook == 'maintenance_page') ? 'body_classes' : 'classes'; + + // Create a D7-standard classes_array variable. + if (array_key_exists($key, $vars)) { + // Views (and possibly other modules) have templates with a $classes + // variable that isn't a string, so we leave those variables alone. + if (is_string($vars[$key])) { + $vars['classes_array'] = explode(' ', $hook . ' ' . $vars[$key]); + unset($vars[$key]); + } + } + else { + $vars['classes_array'] = array($hook); + } + // Add support for Skinr + if (!empty($vars['skinr']) && array_key_exists('classes_array', $vars)) { + $vars['classes_array'][] = $vars['skinr']; + } +} + +/** + * Override or insert variables into the page templates. + * + * @param $vars + * An array of variables to pass to the theme template. + * @param $hook + * The name of the template being rendered ("page" in this case.) + */ +function zen_preprocess_page(&$vars, $hook) { + // If the user is silly and enables Zen as the theme, add some styles. + if ($GLOBALS['theme'] == 'zen') { + include_once './' . _zen_path() . '/zen-internals/template.zen.inc'; + _zen_preprocess_page($vars, $hook); + } + // Add conditional stylesheets. + elseif (!module_exists('conditional_styles')) { + $language = $GLOBALS['language']->direction == LANGUAGE_RTL ? '_rtl' : ''; + $vars['conditional_styles'] = variable_get('conditional_styles_' . $GLOBALS['theme'] . $language, ''); + $vars['styles'] .= $vars['conditional_styles']; + } + + // Classes for body element. Allows advanced theming based on context + // (home page, node of certain type, etc.) + // Remove the mostly useless page-ARG0 class. + if ($index = array_search(preg_replace('![^abcdefghijklmnopqrstuvwxyz0-9-_]+!s', '', 'page-'. drupal_strtolower(arg(0))), $vars['classes_array'])) { + unset($vars['classes_array'][$index]); + } + if (!$vars['is_front']) { + // Add unique class for each page. + $path = drupal_get_path_alias($_GET['q']); + $vars['classes_array'][] = drupal_html_class('page-' . $path); + // Add unique class for each website section. + list($section, ) = explode('/', $path, 2); + if (arg(0) == 'node') { + if (arg(1) == 'add') { + $section = 'node-add'; + } + elseif (is_numeric(arg(1)) && (arg(2) == 'edit' || arg(2) == 'delete')) { + $section = 'node-' . arg(2); + } + } + $vars['classes_array'][] = drupal_html_class('section-' . $section); + } + if (theme_get_setting('zen_wireframes')) { + $vars['classes_array'][] = 'with-wireframes'; // Optionally add the wireframes style. + } + // We need to re-do the $layout and body classes because + // template_preprocess_page() assumes sidebars are named 'left' and 'right'. + $vars['layout'] = 'none'; + if (!empty($vars['sidebar_first'])) { + $vars['layout'] = 'first'; + } + if (!empty($vars['sidebar_second'])) { + $vars['layout'] = ($vars['layout'] == 'first') ? 'both' : 'second'; + } + // If the layout is 'none', then template_preprocess_page() will already have + // set a 'no-sidebars' class since it won't find a 'left' or 'right' sidebar. + if ($vars['layout'] != 'none') { + // Remove the incorrect 'no-sidebars' class. + if ($index = array_search('no-sidebars', $vars['classes_array'])) { + unset($vars['classes_array'][$index]); + } + // Set the proper layout body classes. + if ($vars['layout'] == 'both') { + $vars['classes_array'][] = 'two-sidebars'; + } + else { + $vars['classes_array'][] = 'one-sidebar'; + $vars['classes_array'][] = 'sidebar-' . $vars['layout']; + } + } + // Store the menu item since it has some useful information. + $vars['menu_item'] = menu_get_item(); + switch ($vars['menu_item']['page_callback']) { + case 'views_page': + // Is this a Views page? + $vars['classes_array'][] = 'page-views'; + break; + case 'page_manager_page_execute': + case 'page_manager_node_view': + case 'page_manager_contact_site': + // Is this a Panels page? + $vars['classes_array'][] = 'page-panels'; + break; + } +} + +/** + * Override or insert variables into the maintenance page template. + * + * @param $vars + * An array of variables to pass to the theme template. + * @param $hook + * The name of the template being rendered ("maintenance_page" in this case.) + */ +function zen_preprocess_maintenance_page(&$vars, $hook) { + // If Zen is the maintenance theme, add some styles. + if ($GLOBALS['theme'] == 'zen') { + include_once './' . _zen_path() . '/zen-internals/template.zen.inc'; + _zen_preprocess_page($vars, $hook); + } + // Add conditional stylesheets. + elseif (!module_exists('conditional_styles')) { + $language = $GLOBALS['language']->direction == LANGUAGE_RTL ? '_rtl' : ''; + $vars['conditional_styles'] = variable_get('conditional_styles_' . $GLOBALS['theme'] . $language, ''); + $vars['styles'] .= $vars['conditional_styles']; + } +} + +/** + * Override or insert variables into the node templates. + * + * @param $vars + * An array of variables to pass to the theme template. + * @param $hook + * The name of the template being rendered ("node" in this case.) + */ +function zen_preprocess_node(&$vars, $hook) { + // Create the build_mode variable. + switch ($vars['node']->build_mode) { + case NODE_BUILD_NORMAL: + if ($vars['node']->build_mode === NODE_BUILD_NORMAL) { + $vars['build_mode'] = $vars['teaser'] ? 'teaser' : 'full'; + } + else { + $vars['build_mode'] = $vars['node']->build_mode; + } + break; + case NODE_BUILD_PREVIEW: + $vars['build_mode'] = 'preview'; + break; + case NODE_BUILD_SEARCH_INDEX: + $vars['build_mode'] = 'search_index'; + break; + case NODE_BUILD_SEARCH_RESULT: + $vars['build_mode'] = 'search_result'; + break; + case NODE_BUILD_RSS: + $vars['build_mode'] = 'rss'; + break; + case NODE_BUILD_PRINT: + $vars['build_mode'] = 'print'; + break; + default: + $vars['build_mode'] = $vars['node']->build_mode; + } + + // Create the user_picture variable. + $vars['user_picture'] = $vars['picture']; + + // Create the Drupal 7 $display_submitted variable. + $vars['display_submitted'] = theme_get_setting('toggle_node_info_' . $vars['node']->type); + + // Special classes for nodes. + // Class for node type: "node-type-page", "node-type-story", "node-type-my-custom-type", etc. + $vars['classes_array'][] = drupal_html_class('node-type-' . $vars['type']); + if ($vars['promote']) { + $vars['classes_array'][] = 'node-promoted'; + } + if ($vars['sticky']) { + $vars['classes_array'][] = 'node-sticky'; + } + if (!$vars['status']) { + $vars['classes_array'][] = 'node-unpublished'; + $vars['unpublished'] = TRUE; + } + else { + $vars['unpublished'] = FALSE; + } + if ($vars['uid'] && $vars['uid'] == $GLOBALS['user']->uid) { + $vars['classes_array'][] = 'node-by-viewer'; // Node is authored by current user. + } + if ($vars['teaser']) { + $vars['classes_array'][] = 'node-teaser'; // Node is displayed as teaser. + } + if (isset($vars['preview'])) { + $vars['classes_array'][] = 'node-preview'; + } + $vars['classes_array'][] = 'build-mode-' . $vars['build_mode'] ; +} + +/** + * Override or insert variables into the comment templates. + * + * @param $vars + * An array of variables to pass to the theme template. + * @param $hook + * The name of the template being rendered ("comment" in this case.) + */ +function zen_preprocess_comment(&$vars, $hook) { + include_once './' . _zen_path() . '/zen-internals/template.comment.inc'; + _zen_preprocess_comment($vars, $hook); +} + +/** + * Preprocess variables for region.tpl.php + * + * Prepare the values passed to the theme_region function to be passed into a + * pluggable template engine. + * + * @see region.tpl.php + */ +function zen_preprocess_region(&$vars, $hook) { + // Create the $content variable that templates expect. + $vars['content'] = $vars['elements']['#children']; + $vars['region'] = $vars['elements']['#region']; + + // Setup the default classes. + $vars['classes_array'] = array('region', 'region-' . str_replace('_', '-', $vars['region'])); + + // Sidebar regions get a couple extra classes. + if (strpos($vars['region'], 'sidebar_') === 0) { + $vars['classes_array'][] = 'column'; + $vars['classes_array'][] = 'sidebar'; + } +} + +/** + * Override or insert variables into the block templates. + * + * @param $vars + * An array of variables to pass to the theme template. + * @param $hook + * The name of the template being rendered ("block" in this case.) + */ +function zen_preprocess_block(&$vars, $hook) { + $block = $vars['block']; + + // Drupal 7 uses a $content variable instead of $block->content. + $vars['content'] = $block->content; + // Drupal 7 should use a $title variable instead of $block->subject. + $vars['title'] = $block->subject; + + // Special classes for blocks. + $vars['classes_array'][] = 'block-' . $block->module; + // Classes describing the position of the block within the region. + if ($vars['block_id'] == 1) { + $vars['classes_array'][] = 'first'; + } + if (!function_exists('context_blocks') && count(block_list($vars['block']->region)) == $vars['block_id']) { + $vars['classes_array'][] = 'last'; + } + $vars['classes_array'][] = 'region-' . $vars['block_zebra']; + $vars['classes_array'][] = $vars['zebra']; + $vars['classes_array'][] = 'region-count-' . $vars['block_id']; + $vars['classes_array'][] = 'count-' . $vars['id']; + + // Create the block ID. + $vars['block_html_id'] = 'block-' . $block->module . '-' . $block->delta; + + $vars['edit_links_array'] = array(); + if (theme_get_setting('zen_block_editing') && user_access('administer blocks')) { + include_once './' . _zen_path() . '/zen-internals/template.block-editing.inc'; + zen_preprocess_block_editing($vars, $hook); + $vars['classes_array'][] = 'with-block-editing'; + } +} + +/** + * Override or insert variables into templates after preprocess functions have run. + * + * @param $vars + * An array of variables to pass to the theme template. + * @param $hook + * The name of the template being rendered. + */ +function zen_process(&$vars, $hook) { + // Don't clobber Views 3 classes. + if (array_key_exists('classes_array', $vars) && !array_key_exists('classes', $vars)) { + $vars['classes'] = implode(' ', $vars['classes_array']); + } +} + +/** + * Override or insert variables into the block templates after preprocess functions have run. + * + * @param $vars + * An array of variables to pass to the theme template. + * @param $hook + * The name of the template being rendered ("block" in this case.) + */ +function zen_process_block(&$vars, $hook) { + $vars['edit_links'] = !empty($vars['edit_links_array']) ? '
' . implode(' ', $vars['edit_links_array']) . '
' : ''; +} + +if (!function_exists('drupal_html_class')) { + /** + * Prepare a string for use as a valid class name. + * + * Do not pass one string containing multiple classes as they will be + * incorrectly concatenated with dashes, i.e. "one two" will become "one-two". + * + * @param $class + * The class name to clean. + * @return + * The cleaned class name. + */ + function drupal_html_class($class) { + // By default, we filter using Drupal's coding standards. + $class = strtr(drupal_strtolower($class), array(' ' => '-', '_' => '-', '/' => '-', '[' => '-', ']' => '')); + + // http://www.w3.org/TR/CSS21/syndata.html#characters shows the syntax for valid + // CSS identifiers (including element names, classes, and IDs in selectors.) + // + // Valid characters in a CSS identifier are: + // - the hyphen (U+002D) + // - a-z (U+0030 - U+0039) + // - A-Z (U+0041 - U+005A) + // - the underscore (U+005F) + // - 0-9 (U+0061 - U+007A) + // - ISO 10646 characters U+00A1 and higher + // We strip out any character not in the above list. + $class = preg_replace('/[^\x{002D}\x{0030}-\x{0039}\x{0041}-\x{005A}\x{005F}\x{0061}-\x{007A}\x{00A1}-\x{FFFF}]/u', '', $class); + + return $class; + } +} /* End of drupal_html_class conditional definition. */ + +if (!function_exists('drupal_html_id')) { + /** + * Prepare a string for use as a valid HTML ID and guarantee uniqueness. + * + * @param $id + * The ID to clean. + * @return + * The cleaned ID. + */ + function drupal_html_id($id) { + $id = strtr(drupal_strtolower($id), array(' ' => '-', '_' => '-', '[' => '-', ']' => '')); + + // As defined in http://www.w3.org/TR/html4/types.html#type-name, HTML IDs can + // only contain letters, digits ([0-9]), hyphens ("-"), underscores ("_"), + // colons (":"), and periods ("."). We strip out any character not in that + // list. Note that the CSS spec doesn't allow colons or periods in identifiers + // (http://www.w3.org/TR/CSS21/syndata.html#characters), so we strip those two + // characters as well. + $id = preg_replace('/[^A-Za-z0-9\-_]/', '', $id); + + return $id; + } +} /* End of drupal_html_id conditional definition. */ + +/** + * Returns the path to the Zen theme. + * + * drupal_get_filename() is broken; see #341140. When that is fixed in Drupal 6, + * replace _zen_path() with drupal_get_path('theme', 'zen'). + */ +function _zen_path() { + static $path = FALSE; + if (!$path) { + $matches = drupal_system_listing('zen\.info$', 'themes', 'name', 0); + if (!empty($matches['zen']->filename)) { + $path = dirname($matches['zen']->filename); + } + } + return $path; +} diff --git a/themes/zen/templates/block.tpl.php b/themes/zen/templates/block.tpl.php new file mode 100644 index 0000000..607ae98 --- /dev/null +++ b/themes/zen/templates/block.tpl.php @@ -0,0 +1,66 @@ +module: Module that generated the block. + * - $block->delta: An ID for the block, unique within each module. + * - $block->region: The block region embedding the current block. + * - $edit_links: A list of contextual links for the block. It can be + * manipulated through the variable $edit_links_array from preprocess + * functions. + * - $classes: String of classes that can be used to style contextually through + * CSS. It can be manipulated through the variable $classes_array from + * preprocess functions. The default values can be one or more of the + * following: + * - block: The current template type, i.e., "theming hook". + * - block-[module]: The module generating the block. For example, the user + * module is responsible for handling the default user navigation block. In + * that case the class would be "block-user". + * - first: The first block in the region. + * - last: The last block in the region. + * - region-count-[x]: The position of the block in the list of blocks in the + * current region. + * - region-odd: An odd-numbered block of the list of blocks in the current + * region. + * - region-even: An even-numbered block of the list of blocks in the current + * region. + * - count-[x]: The position of the block in the list of blocks on the current + * page. + * - odd: An odd-numbered block of the list of blocks on the current page. + * - even: An even-numbered block of the list of blocks on the current page. + * + * Helper variables: + * - $classes_array: Array of html class attribute values. It is flattened + * into a string within the variable $classes. + * - $edit_links_array: An array of contextual links for the block. + * - $block_zebra: Outputs 'odd' and 'even' dependent on each block region. + * - $zebra: Same output as $block_zebra but independent of any block region. + * - $block_id: Counter dependent on each block region. + * - $id: Same output as $block_id but independent of any block region. + * - $is_front: Flags true when presented in the front page. + * - $logged_in: Flags true when the current user is a logged-in member. + * - $is_admin: Flags true when the current user is an administrator. + * - $block_html_id: A valid HTML ID and guaranteed unique. + * + * @see template_preprocess() + * @see zen_preprocess() + * @see template_preprocess_block() + * @see zen_preprocess_block() + * @see zen_process() + */ +?> +
+ +

+ + +
+ +
+ + +
diff --git a/themes/zen/templates/comment-wrapper.tpl.php b/themes/zen/templates/comment-wrapper.tpl.php new file mode 100644 index 0000000..3cc2cba --- /dev/null +++ b/themes/zen/templates/comment-wrapper.tpl.php @@ -0,0 +1,45 @@ + +
+ type != 'forum'): ?> +

+ + + +
diff --git a/themes/zen/templates/comment.tpl.php b/themes/zen/templates/comment.tpl.php new file mode 100644 index 0000000..ecfa136 --- /dev/null +++ b/themes/zen/templates/comment.tpl.php @@ -0,0 +1,90 @@ +timestamp variable. + * - $new: New comment marker. + * - $picture: Authors picture. + * - $signature: Authors signature. + * - $status: Comment status. Possible values are: + * comment-unpublished, comment-published or comment-preview. + * - $title: Linked title. + * - $links: Various operational links. + * - $unpublished: An unpublished comment visible only to administrators. + * - $classes: String of classes that can be used to style contextually through + * CSS. It can be manipulated through the variable $classes_array from + * preprocess functions. The default values can be one or more of the following: + * - comment: The current template type, i.e., "theming hook". + * - comment-by-anonymous: Comment by an unregistered user. + * - comment-by-node-author: Comment by the author of the parent node. + * - comment-preview: When previewing a new or edited comment. + * - first: The first comment in the list of displayed comments. + * - last: The last comment in the list of displayed comments. + * - odd: An odd-numbered comment in the list of displayed comments. + * - even: An even-numbered comment in the list of displayed comments. + * The following applies only to viewers who are registered users: + * - comment-by-viewer: Comment by the user currently viewing the page. + * - comment-unpublished: An unpublished comment visible only to administrators. + * - comment-new: New comment since the last visit. + * + * These two variables are provided for context: + * - $comment: Full comment object. + * - $node: Node object the comments are attached to. + * + * Other variables: + * - $classes_array: Array of html class attribute values. It is flattened + * into a string within the variable $classes. + * + * The following variables are deprecated and will be removed in Drupal 7: + * - $date: Formatted date and time for when the comment was created. + * - $submitted: By line with date and time. + * + * @see template_preprocess() + * @see template_preprocess_comment() + * @see zen_preprocess() + * @see zen_preprocess_comment() + * @see zen_process() + */ +?> +
+ + + +

+ + + + +

+ +
+ + + +
+ + + + +
+ + +
+ +
+ +
+ + +
diff --git a/themes/zen/templates/maintenance-page.tpl.php b/themes/zen/templates/maintenance-page.tpl.php new file mode 100644 index 0000000..5eff548 --- /dev/null +++ b/themes/zen/templates/maintenance-page.tpl.php @@ -0,0 +1,107 @@ + + + + + + <?php print $head_title; ?> + + + + + + +
+ + + +
+ +
+ + + + +

+ + + + + +
+ +
+ + + +
+ + + + + + + + + +
+ + + + + +
+ + + + + + + diff --git a/themes/zen/templates/node.tpl.php b/themes/zen/templates/node.tpl.php new file mode 100644 index 0000000..9aba644 --- /dev/null +++ b/themes/zen/templates/node.tpl.php @@ -0,0 +1,104 @@ + +
+ + + +

+ + + +
+ + + +
+ + + + + +
+ +
+ + +
+ +
+ + +
diff --git a/themes/zen/templates/page.tpl.php b/themes/zen/templates/page.tpl.php new file mode 100644 index 0000000..f29d7f5 --- /dev/null +++ b/themes/zen/templates/page.tpl.php @@ -0,0 +1,252 @@ +language contains its textual representation. + * $language->dir contains the language direction. It will either be 'ltr' or 'rtl'. + * - $head_title: A modified version of the page title, for use in the TITLE tag. + * - $head: Markup for the HEAD section (including meta tags, keyword tags, and + * so on). + * - $styles: Style tags necessary to import all CSS files for the page. + * - $scripts: Script tags necessary to load the JavaScript files and settings + * for the page. + * - $classes: String of classes that can be used to style contextually through + * CSS. It should be placed within the tag. When selecting through CSS + * it's recommended that you use the body tag, e.g., "body.front". It can be + * manipulated through the variable $classes_array from preprocess functions. + * The default values can be one or more of the following: + * - front: Page is the home page. + * - not-front: Page is not the home page. + * - logged-in: The current viewer is logged in. + * - not-logged-in: The current viewer is not logged in. + * - node-type-[node type]: When viewing a single node, the type of that node. + * For example, if the node is a "Blog entry" it would result in "node-type-blog". + * Note that the machine name will often be in a short form of the human readable label. + * - page-views: Page content is generated from Views. Note: a Views block + * will not cause this class to appear. + * - page-panels: Page content is generated from Panels. Note: a Panels block + * will not cause this class to appear. + * The following only apply with the default 'sidebar_first' and 'sidebar_second' block regions: + * - two-sidebars: When both sidebars have content. + * - no-sidebars: When no sidebar content exists. + * - one-sidebar and sidebar-first or sidebar-second: A combination of the + * two classes when only one of the two sidebars have content. + * - $node: Full node object. Contains data that may not be safe. This is only + * available if the current page is on the node's primary url. + * - $menu_item: (array) A page's menu item. This is only available if the + * current page is in the menu. + * + * Site identity: + * - $front_page: The URL of the front page. Use this instead of $base_path, + * when linking to the front page. This includes the language domain or prefix. + * - $logo: The path to the logo image, as defined in theme configuration. + * - $site_name: The name of the site, empty when display has been disabled + * in theme settings. + * - $site_slogan: The slogan of the site, empty when display has been disabled + * in theme settings. + * - $mission: The text of the site mission, empty when display has been disabled + * in theme settings. + * + * Navigation: + * - $search_box: HTML to display the search box, empty if search has been disabled. + * - $primary_links (array): An array containing the Primary menu links for the + * site, if they have been configured. + * - $secondary_links (array): An array containing the Secondary menu links for + * the site, if they have been configured. + * - $breadcrumb: The breadcrumb trail for the current page. + * + * Page content (in order of occurrence in the default page.tpl.php): + * - $title: The page title, for use in the actual HTML content. + * - $messages: HTML for status and error messages. Should be displayed prominently. + * - $tabs: Tabs linking to any sub-pages beneath the current page (e.g., the + * view and edit tabs when displaying a node). + * - $help: Dynamic help text, mostly for admin pages. + * - $content: The main content of the current page. + * - $feed_icons: A string of all feed icons for the current page. + * + * Footer/closing data: + * - $footer_message: The footer message as defined in the admin settings. + * - $closure: Final closing markup from any modules that have altered the page. + * This variable should always be output last, after all other dynamic content. + * + * Helper variables: + * - $classes_array: Array of html class attribute values. It is flattened + * into a string within the variable $classes. + * + * Regions: + * - $content_top: Items to appear above the main content of the current page. + * - $content_bottom: Items to appear below the main content of the current page. + * - $navigation: Items for the navigation bar. + * - $sidebar_first: Items for the first sidebar. + * - $sidebar_second: Items for the second sidebar. + * - $header: Items for the header region. + * - $footer: Items for the footer region. + * - $page_closure: Items to appear below the footer. + * + * The following variables are deprecated and will be removed in Drupal 7: + * - $body_classes: This variable has been renamed $classes in Drupal 7. + * + * @see template_preprocess() + * @see template_preprocess_page() + * @see zen_preprocess() + * @see zen_process() + */ +?> + + + + + <?php print $head_title; ?> + + + + + + + + + + +
+ + + +
+ + + + + +
+ + + + + + + diff --git a/themes/zen/templates/region-sidebar.tpl.php b/themes/zen/templates/region-sidebar.tpl.php new file mode 100644 index 0000000..77c8c42 --- /dev/null +++ b/themes/zen/templates/region-sidebar.tpl.php @@ -0,0 +1,31 @@ + +
+ +
diff --git a/themes/zen/templates/region.tpl.php b/themes/zen/templates/region.tpl.php new file mode 100644 index 0000000..b0cf3d9 --- /dev/null +++ b/themes/zen/templates/region.tpl.php @@ -0,0 +1,31 @@ + +
+ +
diff --git a/themes/zen/templates/views-view.tpl.php b/themes/zen/templates/views-view.tpl.php new file mode 100644 index 0000000..9d722a6 --- /dev/null +++ b/themes/zen/templates/views-view.tpl.php @@ -0,0 +1,92 @@ + +
+ + + + + +
+ +
+ + + +
+ +
+ + + +
+ +
+ + + +
+ +
+ +
+ +
+ + + + + + + +
+ +
+ + + + + + + + + + + +
+ +
+ + +
diff --git a/themes/zen/theme-settings.php b/themes/zen/theme-settings.php new file mode 100644 index 0000000..c769a44 --- /dev/null +++ b/themes/zen/theme-settings.php @@ -0,0 +1,127 @@ + '
', + ); + + $form['zen_block_editing'] = array( + '#type' => 'checkbox', + '#title' => t('Show block editing on hover'), + '#description' => t('When hovering over a block, privileged users will see block editing links.'), + '#default_value' => $settings['zen_block_editing'], + ); + + $form['breadcrumb'] = array( + '#type' => 'fieldset', + '#title' => t('Breadcrumb settings'), + '#attributes' => array('id' => 'zen-breadcrumb'), + ); + $form['breadcrumb']['zen_breadcrumb'] = array( + '#type' => 'select', + '#title' => t('Display breadcrumb'), + '#default_value' => $settings['zen_breadcrumb'], + '#options' => array( + 'yes' => t('Yes'), + 'admin' => t('Only in admin section'), + 'no' => t('No'), + ), + ); + $form['breadcrumb']['zen_breadcrumb_separator'] = array( + '#type' => 'textfield', + '#title' => t('Breadcrumb separator'), + '#description' => t('Text only. Don’t forget to include spaces.'), + '#default_value' => $settings['zen_breadcrumb_separator'], + '#size' => 5, + '#maxlength' => 10, + '#prefix' => '
', // jquery hook to show/hide optional widgets + ); + $form['breadcrumb']['zen_breadcrumb_home'] = array( + '#type' => 'checkbox', + '#title' => t('Show home page link in breadcrumb'), + '#default_value' => $settings['zen_breadcrumb_home'], + ); + $form['breadcrumb']['zen_breadcrumb_trailing'] = array( + '#type' => 'checkbox', + '#title' => t('Append a separator to the end of the breadcrumb'), + '#default_value' => $settings['zen_breadcrumb_trailing'], + '#description' => t('Useful when the breadcrumb is placed just before the title.'), + ); + $form['breadcrumb']['zen_breadcrumb_title'] = array( + '#type' => 'checkbox', + '#title' => t('Append the content title to the end of the breadcrumb'), + '#default_value' => $settings['zen_breadcrumb_title'], + '#description' => t('Useful when the breadcrumb is not placed just before the title.'), + '#suffix' => '
', // #div-zen-breadcrumb + ); + + $form['themedev'] = array( + '#type' => 'fieldset', + '#title' => t('Theme development settings'), + '#attributes' => array('id' => 'zen-themedev'), + ); + $form['themedev']['zen_rebuild_registry'] = array( + '#type' => 'checkbox', + '#title' => t('Rebuild theme registry on every page.'), + '#default_value' => $settings['zen_rebuild_registry'], + '#description' => t('During theme development, it can be very useful to continuously rebuild the theme registry. WARNING: this is a huge performance penalty and must be turned off on production websites.', array('!link' => 'http://drupal.org/node/173880#theme-registry')), + '#prefix' => '
' . t('Theme registry:') . '', + '#suffix' => '
', + ); + $form['themedev']['zen_layout'] = array( + '#type' => 'radios', + '#title' => t('Layout method'), + '#options' => array( + 'zen-columns-liquid' => t('Liquid layout') . ' (layout-liquid.css)', + 'zen-columns-fixed' => t('Fixed layout') . ' (layout-fixed.css)', + ), + '#default_value' => $settings['zen_layout'], + ); + $form['themedev']['zen_wireframes'] = array( + '#type' => 'checkbox', + '#title' => t('Display borders around main layout elements'), + '#default_value' => $settings['zen_wireframes'], + '#description' => t('Wireframes are useful when prototyping a website.', array('!link' => 'http://www.boxesandarrows.com/view/html_wireframes_and_prototypes_all_gain_and_no_pain')), + '#prefix' => '
' . t('Wireframes:') . '', + '#suffix' => '
', + ); + + $form['zen-div-closing'] = array( + '#value' => '
', + ); + + // Return the form + return $form; +} diff --git a/themes/zen/zen-internals/TODO.txt b/themes/zen/zen-internals/TODO.txt new file mode 100644 index 0000000..b5c91ef --- /dev/null +++ b/themes/zen/zen-internals/TODO.txt @@ -0,0 +1,7 @@ +Zen 6.x-2.0 @TODO +----------------- +- #: Add fix to auto-correct tabs broken by contrib modules +- #: Display "edit menu" only when Menu block is displaying menu.module links +- * confirm all the variables of every tpl are documented. +- #341140: drupal_get_filename() is broken in Drupal 6. When that is fixed, + replace _zen_path() with drupal_get_path('theme', 'zen'). diff --git a/themes/zen/zen-internals/css/generate.sh b/themes/zen/zen-internals/css/generate.sh new file mode 100644 index 0000000..ccde535 --- /dev/null +++ b/themes/zen/zen-internals/css/generate.sh @@ -0,0 +1,80 @@ +#!/bin/sh + +# This script is used by the MAINTAINER to generate composite stylesheets for +# the base Zen theme from the stylesheets in the STARTERKIT. + +FIXED=( \ + html-reset \ + wireframes \ + layout-fixed \ + page-backgrounds \ + tabs \ + messages \ + pages \ + block-editing \ + blocks \ + navigation \ + views-styles \ + nodes \ + comments \ + forms \ + fields \ + ); + +STYLESHEET='zen-fixed.css'; +RTL_STYLESHEET='zen-fixed-rtl.css'; +echo > $STYLESHEET; +echo > $RTL_STYLESHEET; +for FILENAME in ${FIXED[*]}; do + echo >> $STYLESHEET; + echo "/* $FILENAME.css */" >> $STYLESHEET; + echo >> $STYLESHEET; + cat ../../STARTERKIT/css/$FILENAME.css >> $STYLESHEET; + if [[ -e ../../STARTERKIT/css/$FILENAME-rtl.css ]]; then + echo >> $RTL_STYLESHEET; + echo "/* $FILENAME-rtl.css */" >> $RTL_STYLESHEET; + echo >> $RTL_STYLESHEET; + cat ../../STARTERKIT/css/$FILENAME-rtl.css >> $RTL_STYLESHEET; + fi +done + +LIQUID=( \ + html-reset \ + wireframes \ + layout-liquid \ + page-backgrounds \ + tabs \ + messages \ + pages \ + block-editing \ + blocks \ + navigation \ + views-styles \ + nodes \ + comments \ + forms \ + fields \ + ); + +STYLESHEET='zen-liquid.css'; +RTL_STYLESHEET='zen-liquid-rtl.css'; +echo > $STYLESHEET; +echo > $RTL_STYLESHEET; +for FILENAME in ${LIQUID[*]}; do + echo >> $STYLESHEET; + echo "/* $FILENAME.css */" >> $STYLESHEET; + echo >> $STYLESHEET; + cat ../../STARTERKIT/css/$FILENAME.css >> $STYLESHEET; + if [[ -e ../../STARTERKIT/css/$FILENAME-rtl.css ]]; then + echo >> $RTL_STYLESHEET; + echo "/* $FILENAME-rtl.css */" >> $RTL_STYLESHEET; + echo >> $RTL_STYLESHEET; + cat ../../STARTERKIT/css/$FILENAME-rtl.css >> $RTL_STYLESHEET; + fi +done + +cp ../../STARTERKIT/css/print.css .; + +cp ../../STARTERKIT/css/ie.css .; +cp ../../STARTERKIT/css/ie6.css .; +cp ../../STARTERKIT/css/ie6-rtl.css .; diff --git a/themes/zen/zen-internals/css/ie.css b/themes/zen/zen-internals/css/ie.css new file mode 100644 index 0000000..9eb0bb7 --- /dev/null +++ b/themes/zen/zen-internals/css/ie.css @@ -0,0 +1,47 @@ +/** + * @file + * CSS targeted specifically for Internet Explorer for Windows. + * + * Any CSS in this file will apply to all versions of IE. You can target + * specific versions of IE by using conditional comments. See your sub-theme's + * .info file for an easy way to use them. + * + * While building your theme, you should be aware that IE limits Drupal to 31 + * stylesheets total. The work-around for the bug is to enable CSS aggregation + * under: admin / settings / performance. + */ + + +/* + * Tabs + */ +ul.primary li a, +ul.primary li a .tab, +ul.secondary li a, +ul.secondary li a .tab { + cursor: pointer; +} + +/* + * Drupal nodes + */ +.node-unpublished .node-inner>* { + position: relative; /* Otherwise these elements will appear below the "Unpublished" text. */ +} + +/* + * Drupal admin tables + */ +tr.even th, +tr.even td, +tr.odd th, +tr.odd td { + border-bottom: 1px solid #ccc; /* IE doesn't display borders on table rows */ +} + +/* + * Markup free clearing + */ +.clearfix { + zoom: 1; +} diff --git a/themes/zen/zen-internals/css/ie6-rtl.css b/themes/zen/zen-internals/css/ie6-rtl.css new file mode 100644 index 0000000..4d6f40c --- /dev/null +++ b/themes/zen/zen-internals/css/ie6-rtl.css @@ -0,0 +1,12 @@ +/** + * @file + * RTL companion for the ie6.css file. + */ + + +/* + * Layout CSS + */ +#page { + text-align: right; /* 2nd part of IE5/IE6quirks centering hack */ +} diff --git a/themes/zen/zen-internals/css/ie6.css b/themes/zen/zen-internals/css/ie6.css new file mode 100644 index 0000000..4441e47 --- /dev/null +++ b/themes/zen/zen-internals/css/ie6.css @@ -0,0 +1,105 @@ +/** + * @file + * CSS targeted specifically for Internet Explorer 5 and 6 for Windows. + * + * Any CSS in this file will override the rules specified in the ie.css file. + */ + + +/* + * Layout CSS + */ + +body { + text-align: center; /* 1st part of IE5/IE6quirks centering hack */ +} + +#page { + text-align: left; /* LTR */ /* 2nd part of IE5/IE6quirks centering hack */ +} + +#main-wrapper { + zoom: 1; /* Otherwise with a liquid layout, sidebars disappear when resizing the windows in IE6 */ +} + +#content, +#navigation, +.region-sidebar-first, +.region-sidebar-second /* Floating divs */ { + display: inline; /* display inline or double your floated margin! [1] */ + overflow: hidden; /* in ie6, overflow auto is broken [2] and so is overflow visible [3] */ + overflow-y: visible; +} + +/* + * Tabs - IE 5 and 6 don't support PNGs with alpha transparency. + */ + +ul.primary li a, +ul.primary li a .tab, +ul.secondary li a, +ul.secondary li a .tab { + display: inline-block; /* Otherwise the blocks mistakenly get 100% width in IE6 */ +} + +ul.primary li a { + background: url(../images/tab-left-ie6.png) no-repeat left -38px; +} + +ul.primary li a .tab { + background: url(../images/tab-right-ie6.png) no-repeat right -38px; +} + +ul.primary li a:hover, +ul.primary li a:focus { + background: url(../images/tab-left-ie6.png) no-repeat left -76px; +} + +ul.primary li a:hover .tab, +ul.primary li a:focus .tab { + background: url(../images/tab-right-ie6.png) no-repeat right -76px; +} + +ul.primary li.active a, +ul.primary li.active a:hover, +ul.primary li.active a:focus { + background: url(../images/tab-left-ie6.png) no-repeat left 0; +} + +ul.primary li.active a .tab, +ul.primary li.active a:hover .tab, +ul.primary li.active a:focus .tab { + background: url(../images/tab-right-ie6.png) no-repeat right 0; +} + +/* + * Messages - IE 5 and 6 don't support PNGs with alpha transparency. + */ + +div.messages, +div.status, +div.warning, +div.error /* Important messages (status, warning, and error) for the user */ { + background-image: url(../images/messages-status-ie6.png); +} + +div.warning /* Medium priority messages */ { + background-image: url(../images/messages-warning-ie6.png); +} + +div.error /* High priority messages. See also the .error declaration below. */ { + background-image: url(../images/messages-error-ie6.png); +} + + +/* + * REFERENCES + * + +1. http://www.positioniseverything.net/explorer/doubled-margin.html +2. http://browservulsel.blogspot.com/2005/04/ie-overflow-auto-scrollbar-overlap.html +3. http://www.howtocreate.co.uk/wrongWithIE/?chapter=overflow%3Avisible%3B +4. http://www.ryanbrill.com/archives/multiple-classes-in-ie + + * + */ diff --git a/themes/zen/zen-internals/css/print.css b/themes/zen/zen-internals/css/print.css new file mode 100644 index 0000000..8e8cd30 --- /dev/null +++ b/themes/zen/zen-internals/css/print.css @@ -0,0 +1,73 @@ +/** + * @file + * Print styling + * + * We provide some sane print styling for Drupal using Zen's layout method. + */ + + +/* underline all links */ +a:link, +a:visited { + text-decoration: underline !important; +} + +/* Don't underline header */ +#site-name a:link, +#site-name a:visited { + text-decoration: none !important; +} + +/* CSS2 selector to add visible href after links */ +#content a:link:after, +#content a:visited:after { + content: " (" attr(href) ") "; + font-size: 0.8em; + font-weight: normal; +} + +/* Un-float the content */ +#content, +#content .section { + float: none; + width: 100%; + margin: 0 !important; + padding: 0 !important; +} + +/* Turn off any background colors or images */ +body, +#page-wrapper, +#page, +#main-wrapper, +#main, +#content, +#content .section { + color: #000; + background-color: transparent !important; + background-image: none !important; +} + +/* Hide sidebars and nav elements */ +#skip-link, +#navigation, +.region-sidebar-first, +.region-sidebar-second, +#footer, +.breadcrumb, +div.tabs, +.links, +.taxonomy, +.book-navigation, +.forum-topic-navigation, +.pager, +.feed-icons { + visibility: hidden; + display: none; +} + +/* If you un-comment the "page { overflow-y: hidden; }" ruleset, Firefox clips + the content after the first page. */ +#page-wrapper { + overflow-y: visible; +} diff --git a/themes/zen/zen-internals/css/theme-settings-rtl.css b/themes/zen/zen-internals/css/theme-settings-rtl.css new file mode 100644 index 0000000..f3de57f --- /dev/null +++ b/themes/zen/zen-internals/css/theme-settings-rtl.css @@ -0,0 +1,56 @@ +/** + * @file + * Theme settings styling + * + * This file is only loaded on the Theme Settings page for Zen and its + * subthemes: admin/build/themes/settings + */ + + +#zen-settings fieldset .form-item +{ + padding-left: 0; + padding-right: 200px; +} + +#zen-settings fieldset .form-checkboxes .form-item, +#zen-settings fieldset .form-radios .form-item +{ + padding-right: 0; +} + +#zen-settings fieldset .form-item label +{ + float: right; + margin-left: 10px; + margin-right: -200px; + text-align: left; +} + +#zen-settings fieldset .form-item label.option +{ + text-align: right; +} + +#div-zen-registry strong, +#div-zen-wireframes strong +{ + float: right; + margin-left: 10px; + margin-right: 0; + text-align: left; +} + +#div-zen-registry fieldset .form-item, +#div-zen-wireframes fieldset .form-item +{ + margin-right: 0; + padding-right: 0; +} + +#div-zen-registry fieldset .form-item .description, +#div-zen-wireframes fieldset .form-item .description +{ + margin-left: 0; + margin-right: 200px; +} diff --git a/themes/zen/zen-internals/css/theme-settings.css b/themes/zen/zen-internals/css/theme-settings.css new file mode 100644 index 0000000..567b6e3 --- /dev/null +++ b/themes/zen/zen-internals/css/theme-settings.css @@ -0,0 +1,69 @@ +/** + * @file + * Theme settings styling + * + * This file is only loaded on the Theme Settings page for Zen and its + * subthemes: admin/build/themes/settings + */ + + +#zen-settings fieldset .form-item +{ + padding-left: 200px; /* LTR */ +} + +#zen-settings fieldset .form-checkboxes .form-item, +#zen-settings fieldset .form-radios .form-item +{ + padding-left: 0; /* LTR */ +} + +#zen-settings fieldset .form-item label +{ + float: left; /* LTR */ + width: 190px; + margin-left: -200px; /* LTR */ + margin-right: 10px; /* LTR */ + text-align: right; /* LTR */ + _display: inline-block; /* IE6 is dumb. */ +} + +#zen-settings fieldset .form-item label.option +{ + float: none; + width: auto; + margin-left: 0; + margin-right: 0; + text-align: left; /* LTR */ +} + +#div-zen-registry, +#div-zen-wireframes +{ + margin: 1em 0; +} + +#div-zen-registry strong, +#div-zen-wireframes strong +{ + float: left; /* LTR */ + width: 190px; + margin-left: 0; /* LTR */ + margin-right: 10px; /* LTR */ + text-align: right; /* LTR */ +} + +#div-zen-registry fieldset .form-item, +#div-zen-wireframes fieldset .form-item +{ + display: inline; + margin-left: 0; /* LTR */ + padding-left: 0; /* LTR */ +} + +#div-zen-registry fieldset .form-item .description, +#div-zen-wireframes fieldset .form-item .description +{ + display: block; + margin-left: 200px; /* LTR */ +} diff --git a/themes/zen/zen-internals/css/zen-fixed-rtl.css b/themes/zen/zen-internals/css/zen-fixed-rtl.css new file mode 100644 index 0000000..6be9693 --- /dev/null +++ b/themes/zen/zen-internals/css/zen-fixed-rtl.css @@ -0,0 +1,243 @@ + + +/* html-reset-rtl.css */ + +/** + * @file + * RTL companion for the html-reset.css file. + */ + + +/* + * Lists + * + * We need to standardize the list item indentation. + */ +ul, +ol { + padding-left: 0; + padding-right: 2em; +} + +.block ul, +.item-list ul /* Drupal overrides */ { + padding: 0 2em 0 0; +} + +dd { + margin: 0 2em 0 0; +} + +/* + * Tables + * + * Drupal provides table styling which is only useful for its admin section + * forms, so we override this default CSS. (We set it back in forms.css.) + */ +th, +thead th, +tbody th { + text-align: right; +} + +/* layout-fixed-rtl.css */ + +/** + * @file + * RTL companion for the layout-fixed.css file. + */ + + +/* + * Content + */ +#content, +.no-sidebars #content { + float: right; + margin-left: -960px; /* Negative value of #content's width + right margin. */ + margin-right: 0; +} + +.sidebar-first #content { + margin-left: -960px; /* Negative value of #content's width + right margin. */ + margin-right: 200px; /* The width of .region-sidebar-first. */ +} + +.sidebar-second #content { + margin-left: -760px; /* Negative value of #content's width + right margin. */ + margin-right: 0; +} + +.two-sidebars #content { + margin-left: -760px; /* Negative value of #content's width + right margin. */ + margin-right: 200px; /* The width of .region-sidebar-first */ +} + +/* + * Navigation + */ +#navigation { + float: right; + margin-left: -100%; /* Negative value of #navigation's width + right margin. */ + margin-right: 0; +} + +#navigation ul /* Primary and secondary links */ { + text-align: right; +} + +#navigation li /* A simple method to get navigation links to appear in one line. */ { + float: right; + padding: 0 0 0 10px; +} + +/* + * First sidebar + */ +.region-sidebar-first { + float: right; + margin-left: -200px; /* Negative value of .region-sidebar-first's width + right margin. */ + margin-right: 0; +} + +.region-sidebar-first .section { + margin: 0 0 0 20px; +} + +/* + * Second sidebar + */ +.region-sidebar-second { + float: right; + margin-left: -960px; /* Negative value of .region-sidebar-second's width + right margin. */ + margin-right: 760px; /* Width of content + sidebar-first. */ +} + +.region-sidebar-second .section { + margin: 0 20px 0 0; +} + +/* tabs-rtl.css */ + +/** + * @file + * RTL companion for the tabs.css file. + */ + + +ul.primary { + padding: 0 10px 0 0; +} + +ul.primary li { + float: right; +} + +ul.secondary { + padding: 0 5px 0 0; +} + +ul.secondary li { + float: right; + border-left: none; +} + +/* messages-rtl.css */ + +/** + * @file + * RTL companion for the messages.css file. + */ + + +div.messages, +div.status, +div.warning, +div.error /* Important messages (status, warning, and error) for the user */ { + padding: 5px 35px 5px 5px; + background-position: 99.5% 5px; +} + +/* pages-rtl.css */ + +/** + * @file + * RTL companion for the pages.css file. + */ + + +/* + * Header + */ +#logo /* Wrapping link for logo */ { + float: right; +} + +/* + * Content + */ +.more-link /* Aggregator, blog, and forum more link */ { + text-align: left; +} + +/* block-editing-rtl.css */ + +/** + * @file + * RTL companion for the block-editing.css file. + */ + + +div.block.with-block-editing div.edit { + left: 0; + right: auto; +} + +/* forms-rtl.css */ + +/** + * @file + * RTL companion for the forms.css file. + */ + + +/* + * Drupal's default login form block + */ +#user-login-form { + text-align: right; +} + + +/* + * OpenID + * + * The default styling for the OpenID login link seems to assume Garland's + * styling of list items. + */ + +#user-login-form li.openid-link /* The "Log in using OpenID" link. */ { + margin-left: 0; + margin-right: -20px; /* Un-do some of the padding on the ul list. */ +} + +#user-login li.openid-link, +#user-login li.user-link /* The OpenID links on the /user form. */ { + margin-left: 0; + margin-right: -2em; /* Un-do all of the padding on the ul list. */ +} + + +/* + * Drupal admin tables + * + * We overrode these styles in html-elements.css, but restore them for the admin + * section of the site. + */ + +form th, +form thead th { + text-align: right; + padding-left: 1em; + padding-right: 0; +} diff --git a/themes/zen/zen-internals/css/zen-fixed.css b/themes/zen/zen-internals/css/zen-fixed.css new file mode 100644 index 0000000..29db6c2 --- /dev/null +++ b/themes/zen/zen-internals/css/zen-fixed.css @@ -0,0 +1,1615 @@ + + +/* html-reset.css */ + +/** + * @file + * HTML Element Styling + * + * Ok, I admit it. I fooled you. This isn't a "reset" stylesheet. Instead this + * is the place where you should set (not reset) the default styling for all + * HTML elements. + * + * @see http://meiert.com/en/blog/20080419/reset-style-sheets-are-bad/ + * @see http://snook.ca/archives/html_and_css/no_css_reset/ + */ + + +/* + * Fonts + * + * Our font size and line height declarations are based on the following ALA + * article: + * http://www.alistapart.com/articles/howtosizetextincss + * + * All modern browsrs use a 16px default font size. Specifying the font-size + * and line-height in ems (relative to the 16px default font) allows the user + * to resize the font in the browser and produces the most consistent results + * across different browsers. + */ +body { + font-size: 100%; /* Fixes exaggerated text resizing in IE6 and IE7 */ +} + +#skip-link, +#page { + /* + * To use a 12px font size on the page, delete the 14px declarations. + * to use a 14px font size on the page, delete the 12px declarations. + */ + + /* Use a 12px base font size with a 16px line height */ + font-size: 0.75em; /* 16px x .75 = 12px */ + line-height: 1.333em; /* 12px x 1.333 = 16px */ + + /* Use a 14px base font size with a 18px line height */ + font-size: 0.875em; /* 16px x .875 = 14px */ + line-height: 1.286em; /* 14px x 1.286 = 18px */ +} + +body, +caption, +th, +td, +input, +textarea, +select, +option, +legend, +fieldset { + /* The following font family declarations are based on the Microsoft core web + * fonts which are common fonts available on most computer systems. The DejaVu + * fonts are commonly available on Linux systems where the MS fonts are less + * common. Tahoma and Helvetica are also widely available. + * + * A user's web browser will look at the comma-separated list and will + * attempt to use each font in turn until it finds one that is available + * on the user's computer. The final "generic" font (sans-serif or serif) + * hints at what type of font to use if the web browser doesn't find any + * of the fonts in the list. + + font-family: "Times New Roman", Times, Georgia, "DejaVu Serif", serif; + font-family: Times, "Times New Roman", Georgia, "DejaVu Serif", serif; + font-family: Georgia, "Times New Roman", "DejaVu Serif", serif; + + font-family: Verdana, Tahoma, "DejaVu Sans", sans-serif; + font-family: Tahoma, Verdana, "DejaVu Sans", sans-serif; + font-family: Helvetica, Arial, "Nimbus Sans L", sans-serif; + font-family: Arial, Helvetica, "Nimbus Sans L", sans-serif; + + font-family: "Courier New", "DejaVu Sans Mono", monospace; + + */ + + font-family: Verdana, Tahoma, "DejaVu Sans", sans-serif; +} + +pre, +code { + font-size: 1.1em; /* Monospace fonts can be hard to read */ + font-family: "Courier New", "DejaVu Sans Mono", monospace; +} + +/* + * Headings + */ +h1 { + font-size: 2em; + line-height: 1.3em; + margin-top: 0; + margin-bottom: 0.5em; /* 0.5em is equavalent to 1em in the page's base font. + Remember, a margin specified in ems is relative to + the element's font-size, not to the pages' base + font size. So, for example, if we want a 1em margin + (relative to the base font), we have to divide that + length by the element's font-size: + 1em / 2em = 0.5em */ +} + +h2 { + font-size: 1.5em; + line-height: 1.3em; + margin-top: 0.667em; /* Equivalent to 1em in the page's base font: 1 / 1.5 = 0.667em */ + margin-bottom: 0.667em; +} + +h3 { + font-size: 1.3em; + line-height: 1.3em; + margin-top: 0.769em; /* Equivalent to 1em in the page's base font: 1 / 1.3 = 0.769 */ + margin-bottom: 0.769em; +} + +h4, +h5, +h6 { + font-size: 1.1em; + line-height: 1.3em; + margin-top: 0.909em; /* Equivalent to 1em in the page's base font: 1 / 1.1 = 0.909 */ + margin-bottom: 0.909em; +} + +/* + * Block-level elements + */ +p, +ul, +ol, +dl, +pre, +table, +fieldset { + margin: 1em 0; +} + +blockquote { + margin: 1em 2em; +} + +/* + * Lists + * + * We need to standardize the list item indentation. + */ +ul, +ol { + margin-left: 0; + padding-left: 2em; /* LTR */ +} + +.block ul, +.item-list ul /* Drupal overrides */ { + margin: 1em 0; + padding: 0 0 0 2em; /* LTR */ +} + +ul ul, ul ol, +ol ol, ol ul, +.block ul ul, .block ul ol, +.block ol ol, .block ol ul, +.item-list ul ul, .item-list ul ol, +.item-list ol ol, .item-list ol ul { + margin: 0; +} + +li { + margin: 0; + padding: 0; +} + +.item-list ul li /* Drupal override */ { + margin: 0; + padding: 0; + list-style: inherit; +} + +ul.menu li, +li.expanded, +li.collapsed, +li.leaf /* Drupal override */ { + margin: 0; + padding: 0; +} + +ul { list-style-type: disc; } +ul ul { list-style-type: circle; } +ul ul ul { list-style-type: square; } +ul ul ul ul { list-style-type: circle; } +ol { list-style-type: decimal; } +ol ol { list-style-type: lower-alpha; } +ol ol ol { list-style-type: decimal; } + +dt { + margin: 0; + padding: 0; +} + +dd { + margin: 0 0 0 2em; + padding: 0; +} + +/* + * Links + * + * The order of link states are based on Eric Meyer's article: + * http://meyerweb.com/eric/thoughts/2007/06/11/who-ordered-the-link-states + */ +a:link { +} + +a:visited { +} + +a:hover, +a:focus { +} + +a:active { +} + +/* + * Tables + * + * Drupal provides table styling which is only useful for its admin section + * forms, so we override this default CSS. (We set it back in forms.css.) + */ +table { + border-collapse: collapse; + /* width: 100%; */ /* Prevent cramped-looking tables */ +} + +th, +thead th, +tbody th { + text-align: left; /* LTR */ + padding: 0; + border-bottom: none; +} + +tbody { + border-top: none; +} + +/* + * Abbreviations + */ +abbr { + border-bottom: 1px dotted #666; + cursor: help; + white-space: nowrap; +} + +abbr.created /* Date-based "abbreviations" show computer-friendly timestamps which are not human-friendly. */ { + border: none; + cursor: auto; + white-space: normal; +} + +/* + * Images + */ +img { + border: 0; +} + +/* + * Horizontal rules + */ +hr { + height: 1px; + border: 1px solid #666; +} + +/* + * Forms + */ +form { + margin: 0; + padding: 0; +} + +fieldset { + margin: 1em 0; + padding: 0.5em; +} + +/* wireframes.css */ + +/** + * @file + * Wireframes Styling + * + * Add wireframes to the basic layout elements. + */ + + +.with-wireframes #header .section, +.with-wireframes #content .section, +.with-wireframes #navigation .section, +.with-wireframes .region-sidebar-first .section, +.with-wireframes .region-sidebar-second .section, +.with-wireframes #footer .section { + margin: 1px; + padding: 2px; + border: 1px solid #ccc; +} + +.with-wireframes .region-page-closure { + margin-top: 1px; + padding: 2px; + border: 1px solid #ccc; +} + +/* layout-fixed.css */ + +/** + * @file + * Layout Styling (DIV Positioning) + * + * Define CSS classes to create a table-free, 3-column, 2-column, or single + * column layout depending on whether blocks are enabled in the left or right + * columns. + * + * This layout is based on the Zen Columns layout method. + * http://drupal.org/node/201428 + * + * Only CSS that affects the layout (positioning) of major elements should be + * listed here. Such as: + * display, position, float, clear, width, height, min-width, min-height + * margin, border, padding, overflow + */ + + +/* + * Body + */ +body { +} + +#page-wrapper, +.region-page-closure { + /* + * If you want to make the page a fixed width and centered in the viewport, + * this is the standards-compliant way to do that. See also the ie6.css file + * for the necessary IE5/IE6quirks hack to center a div. + */ + margin-left: auto; + margin-right: auto; + width: 960px; +} + +#page { +} + +/* + * Header + */ +#header { +} + +#header .section { +} + +#search-box { +} + +.region-header { + clear: both; /* Clear the logo */ +} + +/* + * Main (container for everything else) + */ +#main-wrapper { + position: relative; +} + +#main { +} + +/* + * Content + */ +#content, +.no-sidebars #content { + float: left; /* LTR */ + width: 960px; + margin-left: 0; /* LTR */ + margin-right: -960px; /* LTR */ /* Negative value of #content's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #content .section. */ +} + +.sidebar-first #content { + width: 760px; + margin-left: 200px; /* LTR */ /* The width of .region-sidebar-first. */ + margin-right: -960px; /* LTR */ /* Negative value of #content's width + left margin. */ +} + +.sidebar-second #content { + width: 760px; + margin-left: 0; /* LTR */ + margin-right: -760px; /* LTR */ /* Negative value of #content's width + left margin. */ +} + +.two-sidebars #content { + width: 560px; + margin-left: 200px; /* LTR */ /* The width of .region-sidebar-first */ + margin-right: -760px; /* LTR */ /* Negative value of #content's width + left margin. */ +} + +#content .section { + margin: 0; + padding: 0; +} + +/* + * Navigation + */ +#navigation { + float: left; /* LTR */ + width: 100%; + margin-left: 0; /* LTR */ + margin-right: -100%; /* LTR */ /* Negative value of #navigation's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #navigation .section. */ + height: 2.3em; /* The navigation can have any arbritrary height. We picked one + that is the line-height plus 1em: 1.3 + 1 = 2.3 + Set this to the same value as the margin-top below. */ +} + +.with-navigation #content, +.with-navigation .region-sidebar-first, +.with-navigation .region-sidebar-second { + margin-top: 2.3em; /* Set this to the same value as the navigation height above. */ +} + +#navigation .section { +} + +#navigation ul /* Primary and secondary links */ { + margin: 0; + padding: 0; + text-align: left; /* LTR */ +} + +#navigation li /* A simple method to get navigation links to appear in one line. */ { + float: left; /* LTR */ + padding: 0 10px 0 0; /* LTR */ +} + +/* + * First sidebar + */ +.region-sidebar-first { + float: left; /* LTR */ + width: 200px; + margin-left: 0; /* LTR */ + margin-right: -200px; /* LTR */ /* Negative value of .region-sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to .region-sidebar-first .section. */ +} + +.region-sidebar-first .section { + margin: 0 20px 0 0; /* LTR */ + padding: 0; +} + +/* + * Second sidebar + */ +.region-sidebar-second { + float: left; /* LTR */ + width: 200px; + margin-left: 760px; /* LTR */ /* Width of content + sidebar-first. */ + margin-right: -960px; /* LTR */ /* Negative value of .region-sidebar-second's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to .region-sidebar-second .section. */ +} + +.region-sidebar-second .section { + margin: 0 0 0 20px; /* LTR */ + padding: 0; +} + +/* + * Footer + */ +#footer { +} + +#footer .section { +} + +/* + * Closure + */ +.region-page-closure /* See also the #page-wrapper declaration above that this div shares. */ { +} + +/* + * Prevent overflowing content + */ +#header, +#content, +#navigation, +.region-sidebar-first, +.region-sidebar-second, +#footer, +.region-page-closure { + overflow: visible; + word-wrap: break-word; /* A very nice CSS3 property */ +} + +#navigation { + overflow: hidden; /* May need to be removed if using a dynamic drop-down menu */ +} + +/* + * If a div.clearfix doesn't have any content after it and its bottom edge + * touches the bottom of the viewport, Firefox and Safari will mistakenly + * place several pixels worth of space between the bottom of the div and the + * bottom of the viewport. Uncomment this CSS property to fix this. + * Note: with some over-large content, this property might cause scrollbars + * to appear on the #page-wrapper div. + */ +/* +#page-wrapper { + overflow-y: hidden; +} +*/ + +/* page-backgrounds.css */ + +/** + * @file + * Page Background Styling + * + * The default layout method of Zen doesn't give themers equal-height columns. + * However, equal-height columns are difficult to achieve and totally + * unnecessary. Instead, use the Faux Columns method described in the following + * ALA article: + * http://www.alistapart.com/articles/fauxcolumns/ + */ + + +body { +} + +#page-wrapper { +} + +#page { +} + +#header { +} + +#header .section { +} + +#main-wrapper { +} + +#main { +} + +#footer { +} + +#footer .section { +} + +/* tabs.css */ + +/** + * @file + * Tabs Styling + * + * Adds styles for the primary and secondary tabs. + * + * Compare this with default CSS found in the system module's stylesheet (a copy + * of which is in drupal6-reference.css, line 510.) + */ + + +div.tabs { + margin: 0 0 5px 0; +} + +ul.primary { + margin: 0; + padding: 0 0 0 10px; /* LTR */ + border-width: 0; + list-style: none; + white-space: nowrap; + line-height: normal; + background: url(../images/tab-bar.png) repeat-x left bottom; +} + +ul.primary li { + float: left; /* LTR */ + margin: 0; + padding: 0; +} + +ul.primary li a { + display: block; + height: 24px; + margin: 0; + padding: 0 0 0 5px; /* width of tab-left.png */ + border-width: 0; + font-weight: bold; + text-decoration: none; + color: #777; + background-color: transparent; + background: url(../images/tab-left.png) no-repeat left -38px; +} + +ul.primary li a .tab { + display: block; + height: 20px; /* 24px (parent) - 4px (padding) */ + margin: 0; + padding: 4px 13px 0 6px; + border-width: 0; + line-height: 20px; + background: url(../images/tab-right.png) no-repeat right -38px; +} + +ul.primary li a:hover, +ul.primary li a:focus { + border-width: 0; + background-color: transparent; + background: url(../images/tab-left.png) no-repeat left -76px; +} + +ul.primary li a:hover .tab, +ul.primary li a:focus .tab { + background: url(../images/tab-right.png) no-repeat right -76px; +} + +ul.primary li.active a, +ul.primary li.active a:hover, +ul.primary li.active a:focus { + border-width: 0; + color: #000; + background-color: transparent; + background: url(../images/tab-left.png) no-repeat left 0; +} + +ul.primary li.active a .tab, +ul.primary li.active a:hover .tab, +ul.primary li.active a:focus .tab { + background: url(../images/tab-right.png) no-repeat right 0; +} + +ul.secondary { + margin: 0; + padding: 0 0 0 5px; /* LTR */ + border-bottom: 1px solid #c0c0c0; + list-style: none; + white-space: nowrap; + background: url(../images/tab-secondary-bg.png) repeat-x left bottom; +} + +ul.secondary li { + float: left; /* LTR */ + margin: 0 5px 0 0; + padding: 5px 0; + border-right: none; /* LTR */ +} + +ul.secondary a { + display: block; + height: 24px; + margin: 0; + padding: 0; + border: 1px solid #c0c0c0; + text-decoration: none; + color: #777; + background: url(../images/tab-secondary.png) repeat-x left -56px; +} + +ul.secondary a .tab { + display: block; + height: 18px; /* 24px (parent) - 6px (padding) */ + margin: 0; + padding: 3px 8px; + line-height: 18px; +} + +ul.secondary a:hover, +ul.secondary a:focus { + background: url(../images/tab-secondary.png) repeat-x left bottom; +} + +ul.secondary a.active, +ul.secondary a.active:hover, +ul.secondary a.active:focus { + border: 1px solid #c0c0c0; + color: #000; + background: url(../images/tab-secondary.png) repeat-x left top; +} + +/* messages.css */ + +/** + * @file + * Message Styling + * + * Sensible styling for Drupal's error/warning/status messages. + */ + + +div.messages, +div.status, +div.warning, +div.error /* Important messages (status, warning, and error) for the user */ { + min-height: 21px; + margin: 0 1em 5px 1em; + border: 2px solid #ff7; + padding: 5px 5px 5px 35px; /* LTR */ + color: #000; + background-color: #ffc; + background-image: url(../images/messages-status.png); + background-repeat: no-repeat; + background-position: 5px 5px; /* LTR */ +} + +div.status /* Normal priority messages */ { +} + +div.warning /* Medium priority messages */ { + border-color: #fc0; + background-image: url(../images/messages-warning.png); +} + +div.warning, +tr.warning { + color: #000; /* Drupal core uses #220 */ + background-color: #ffc; +} + +div.error /* High priority messages. See also the .error declaration in pages.css. */ { + /* border: 1px solid #d77; */ /* Drupal core uses: 1px solid #d77 */ + border-color: #c00; + background-image: url(../images/messages-error.png); +} + +div.error, +tr.error { + color: #900; /* Drupal core uses #200 */ + background-color: #fee; +} + +div.messages ul { + margin-top: 0; + margin-bottom: 0; +} + +/* pages.css */ + +/** + * @file + * Page Styling + * + * Style the markup found in page.tpl.php. Also includes some styling of + * miscellaneous Drupal elements that appear in the $content variable, such as + * ul.links, .pager, .more-link, etc. + */ + + +/* + * Body + */ +body { + margin: 0; + padding: 0; +} + +#page-wrapper { +} + +#page { +} + +/* + * The skip navigation link will be completely hidden until a user tabs to the + * link. See http://www.webaim.org/techniques/skipnav/ + */ +#skip-link a, +#skip-link a:visited { + position: absolute; + display: block; + left: 0; + top: -500px; + width: 1px; + height: 1px; + overflow: hidden; + text-align: center; + background-color: #666; + color: #fff; +} + +#skip-link a:hover, +#skip-link a:active, +#skip-link a:focus { + position: static; + width: 100%; + height: auto; + padding: 2px 0 3px 0; +} + +/* + * Header + */ +#header { +} + +#header .section { +} + +#logo /* Wrapping link for logo */ { + float: left; /* LTR */ + margin: 0; + padding: 0; +} + +#logo img { + vertical-align: bottom; +} + +#name-and-slogan /* Wrapper for website name and slogan */ { +} + +h1#site-name, +div#site-name /* The name of the website */ { + margin: 0; + font-size: 2em; + line-height: 1.3em; +} + +#site-name a:link, +#site-name a:visited { + color: #000; + text-decoration: none; +} + +#site-name a:hover, +#site-name a:focus { + text-decoration: underline; +} + +#site-slogan /* The slogan (or tagline) of a website */ { +} + +.region-header /* Wrapper for any blocks placed in the header region */ { +} + +/* + * Main (container for everything else) + */ +#main-wrapper { +} + +#main { +} + +/* + * Content + */ +#content { +} + +#content .section { +} + +#mission /* The mission statement of the site (displayed on homepage) */ { +} + +.region-content-top /* Wrapper for any blocks placed in the "content top" region */ { +} + +.breadcrumb /* The path to the current page in the form of a list of links */ { + padding-bottom: 0; /* Undo system.css */ +} + +h1.title, /* The title of the page */ +h2.title, /* Block title or the title of a piece of content when it is given in a list of content */ +h3.title /* Comment title */ { + margin: 0; +} + +tr.even /* Some tables have rows marked even or odd. */ { + /* background-color: #eee; */ /* Drupal core uses a #eee background */ +} + +tr.odd { + /* background-color: #eee; */ /* Drupal core uses a #eee background */ +} + +div.messages /* Important messages (status, warning, and error) for the user. See also the declarations in messages.css. */ { +} + +div.status /* Normal priority messages */ { +} + +div.warning, +tr.warning /* Medium priority messages */ { + /* border: 1px solid #f0c020; */ /* Drupal core uses: 1px solid #f0c020 */ +} + +div.error, +tr.error /* High priority messages. See also the .error declaration below. */ { +} + +.error /* Errors that are separate from div.messages status messages. */ { + /* color: #e55; */ /* Drupal core uses a #e55 background */ +} + +.warning /* Warnings that are separate from div.messages status messages. */ { + /* color: #e09010; */ /* Drupal core uses a #e09010 background */ +} + +div.tabs /* See also the tabs.css file. */ { +} + +.help /* Help text on a page */ { + margin: 1em 0; +} + +.more-help-link /* Link to more help */ { + font-size: 0.85em; + text-align: right; +} + +#content-area /* Wrapper for the actual page content */ { +} + +ul.links /* List of links */ { + margin: 1em 0; + padding: 0; +} + +ul.links.inline { + margin: 0; + display: inline; +} + +ul.links li { + display: inline; + list-style-type: none; + padding: 0 0.5em; +} + +.pager /* A list of page numbers when more than 1 page of content is available */ { + clear: both; + margin: 1em 0; + text-align: center; +} + +.pager a, +.pager strong.pager-current /* Each page number in the pager list */ { + padding: 0.5em; +} + +.feed-icons /* The links to the RSS or Atom feeds for the current list of content */ { + margin: 1em 0; +} + +.more-link /* Aggregator, blog, and forum more link */ { + text-align: right; /* LTR */ +} + +.region-content-bottom /* Wrapper for any blocks placed in the "content bottom" region */ { +} + +/* + * First sidebar (on left in LTR languages, on right in RTL) + * + * Remember to NOT add padding or margin to your .region-sidebar-first + * (see the layout.css file.) + */ +.region-sidebar-first { +} + +.region-sidebar-first .section { +} + +/* + * Second sidebar (on right in LTR languages, on left in RTL) + * + * Remember to NOT add padding or margin to your .region-sidebar-second + * (see the layout.css file.) + */ +.region-sidebar-second { +} + +.region-sidebar-second .section { +} + +/* + * Footer + */ +#footer { +} + +#footer .section { +} + +#footer-message /* Wrapper for the footer message from Drupal's "Site information" + and for any blocks placed in the footer region */ { +} + +.region-footer { +} + +/* + * Closure + */ +.region-page-closure /* Wrapper for any blocks placed in the closure region */ { +} + +/* + * Drupal boxes + * + * Wrapper for Comment form, Comment viewing options, Menu admin, and + * Search results. + */ +.box /* Wrapper for box */ { +} + +.box h2 /* Box title */ { +} + +.box .content /* Box's content wrapper */ { +} + +/* + * Markup free clearing (See: http://www.positioniseverything.net/easyclearing.html ) + */ +.clearfix:after { + content: "."; + display: block; + height: 0; + clear: both; + visibility: hidden; +} + +/** + * Hide elements from all users. + * + * Used for elements which should not be immediately displayed to any user. An + * example would be a collapsible fieldset that will be expanded with a click + * from a user. The effect of this class can be toggled with the jQuery show() + * and hide() functions. + */ +.element-hidden { + display: none; +} + +/** + * Hide elements visually, but keep them available for screen-readers. + * + * Used for information required for screen-reader users to understand and use + * the site where visual display is undesirable. Information provided in this + * manner should be kept concise, to avoid unnecessary burden on the user. Must + * not be used for focusable elements (such as links and form elements) as this + * causes issues for keyboard only or voice recognition users. "!important" is + * used to prevent unintentional overrides. + */ +.element-invisible { + position: absolute !important; + clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ + clip: rect(1px, 1px, 1px, 1px); +} + +/* block-editing.css */ + +/** + * @file + * Zen's rollover edit links for blocks. + */ + + +div.block.with-block-editing { + position: relative; +} + +div.block.with-block-editing div.edit { + display: none; + position: absolute; + right: 0; /* LTR */ + top: 0; + z-index: 40; + border: 1px solid #eee; + padding: 0 2px; + font-size: 0.75em; + background-color: #fff; +} + +div.block.with-block-editing:hover div.edit { + display: block; +} + +/* blocks.css */ + +/** + * @file + * Block Styling + */ + + +.block /* Block wrapper */ { + margin-bottom: 1em; +} + +.block.first /* The first block in the region */ { +} + +.block.last /* The last block in the region */ { +} + +.block.region-odd /* Zebra striping for each block in the region */ { +} + +.block.region-even /* Zebra striping for each block in the region */ { +} + +.block.odd /* Zebra striping independent of each region */ { +} + +.block.even /* Zebra striping independent of each region */ { +} + +.region-count-1 /* Incremental count for each block in the region */ { +} + +.count-1 /* Incremental count independent of each region */ { +} + +.block h2.title /* Block title */ { +} + +.block .content /* Block's content wrapper */ { +} + +#block-aggregator-category-1 /* Block for the latest news items in the first category */ { +} + +#block-aggregator-feed-1 /* Block for the latest news items in the first feed */ { +} + +#block-block-1 /* First administrator-defined block */ { +} + +#block-blog-0 /* "Recent blog posts" block */ { +} + +#block-book-0 /* "Book navigation" block for the current book's table of contents */ { +} + +#block-comment-0 /* "Recent comments" block */ { +} + +#block-forum-0 /* "Active forum topics" block */ { +} + +#block-forum-1 /* "New forum topics" block */ { +} + +#block-menu-primary-links /* "Primary links" block */ { +} + +#block-menu-secondary-links /* "Secondary links" block */ { +} + +#block-node-0 /* "Syndicate" block for primary RSS feed */ { +} + +#block-poll-0 /* "Most recent poll" block */ { +} + +#block-profile-0 /* "Author information" block for the profile of the page's author */ { +} + +#block-search-0 /* "Search form" block */ { +} + +#block-statistics-0 /* "Popular content" block */ { +} + +#block-user-0 /* "User login form" block */ { +} + +#block-user-1 /* "Navigation" block for Drupal navigation menu */ { +} + +#block-user-2 /* "Who's new" block for a list of the newest users */ { +} + +#block-user-3 /* "Who's online" block for a list of the online users */ { +} + +/* navigation.css */ + +/** + * @file + * Navigation Styling + * + * Default menu styling (ul.menu) is defined in system-menus.css. + */ + + +/* + * The active item in a Drupal menu + */ +li a.active { + color: #000; +} + +/* + * Navigation bar + */ +#navigation { +} + +.region-navigation { +} + +/* + * Primary and Secondary menu links + */ +#main-menu { +} + +#secondary-menu { +} + +/* + * Menu blocks + */ +.block-menu { +} + +/* + * "Menu block" blocks. See http://drupal.org/project/menu_block + */ +.block-menu_block { +} + +/* views-styles.css */ + +/** + * @file + * Views Styling + */ + + + +/* nodes.css */ + +/** + * @file + * Node Styling + * + * Style anything that isn't in the $content variable. + */ + + +.node /* Node wrapper */ { +} + +.node-sticky /* A sticky node (displayed before others in a list) */ { +} + +.node-unpublished /* Unpublished nodes */ { + /* background-color: #fff4f4; */ /* Drupal core uses a #fff4f4 background */ +} + +.node-unpublished div.unpublished, +.comment-unpublished div.unpublished /* The word "Unpublished" displayed underneath the content. */ { + height: 0; + overflow: visible; + color: #d8d8d8; + font-size: 75px; + line-height: 1; + font-family: Impact, "Arial Narrow", Helvetica, sans-serif; + font-weight: bold; + text-transform: uppercase; + text-align: center; + word-wrap: break-word; /* A very nice CSS3 property */ +} + +.node-by-viewer /* A node created by the current user */ { +} + +.node-teaser /* A node displayed as teaser */ { +} + +/* All nodes are given a node-type-FOO class that describes the type of + * content that it is. If you create a new content type called + * "my-custom-type", it will receive a "node-type-my-custom-type" class. + */ +.node-type-page /* Page content node */ { +} + +.node-type-story /* Story content node */ { +} + +.node h2.title /* Node title */ { +} + +.marker /* "New" or "Updated" marker for content that is new or updated for the current user */ { + color: #c00; +} + +.node .picture /* The picture of the node author */ { +} + +.node.node-unpublished .picture, +.comment.comment-unpublished .picture { + position: relative; /* Otherwise floated pictures will appear below the "Unpublished" text. */ +} + +.node .meta /* Wrapper for submitted and terms data */ { +} + +.node .submitted /* The "posted by" information */ { +} + +.node .terms /* Node terms (taxonomy) */ { +} + +.node .content /* Node's content wrapper */ { +} + +.node ul.links /* Node links. See also the ul.links declaration in the pages.css. */ { +} + +.preview .node /* Preview of the content before submitting new or updated content */ { + /* background-color: #ffffea; */ /* Drupal core uses a #ffffea background */ +} + +/* comments.css */ + +/** + * @file + * Comment Styling + */ + + +#comments /* Wrapper for the list of comments and its title */ { + margin: 1em 0; +} + +#comments h2.title /* Heading for the list of comments */ { +} + +.comment /* Wrapper for a single comment */ { +} + +.comment-preview /* Preview of the comment before submitting new or updated comment */ { +} + +.comment.new /* A new comment since the user last viewed the page. */ { +} + +.comment.first /* The first comment in the list of comments */ { +} + +.comment.last /* The last comment in the list of comments */ { +} + +.comment.odd /* An odd-numbered comment in the list of comments */ { +} + +.comment.even /* An even-numbered comment in the list of comments */ { +} + +.comment-unpublished /* Unpublished comments */ { + /* background-color: #fff4f4; */ /* Drupal core uses a #fff4f4 background */ +} + +.comment-unpublished div.unpublished /* The word "Unpublished" displayed underneath the content. See also the div.unpublished declaration in the nodes.css. */ { +} + +.comment-by-anonymous /* A comment created by an anonymous user */ { +} + +.comment-by-node-author /* A comment created by the node's author */ { +} + +.comment-by-viewer /* A comment created by the current user */ { +} + +.comment h3.title /* Comment title */ { +} + +.new /* "New" marker for comments that are new for the current user */ { + color: #c00; +} + +.comment .picture /* The picture of the comment author */ { +} + +.comment .submitted /* The "posted by" information */ { +} + +.comment .content /* Comment's content wrapper */ { +} + +.comment .user-signature /* The user's signature */ { +} + +.comment ul.links /* Comment links. See also the ul.links declaration in the pages.css. */ { +} + +.indented /* Nested comments are indented */ { + /* margin-left: 25px; */ /* Drupal core uses a 25px left margin */ +} + +.preview .comment /* Preview of the comment before submitting new or updated comment */ { + /* background-color: #ffffea; */ /* Drupal core uses a #ffffea background */ +} + +/* forms.css */ + +/** + * @file + * Form Styling + */ + + +.form-item, +.form-checkboxes, +.form-radios /* Wrapper for a form element (or group of form elements) and its label */ { + margin: 1em 0; +} + +.form-item input.error, +.form-item textarea.error, +.form-item select.error /* Highlight the form elements that caused a form submission error */ { + border: 2px solid #c00; +} + +.form-item label /* The label for a form element */ { + display: block; + font-weight: bold; +} + +.form-item label.option /* The label for a radio button or checkbox */ { + display: inline; + font-weight: normal; +} + +.form-required /* The part of the label that indicates a required field */ { + color: #c00; +} + +.form-item .description /* The descriptive help text (separate from the label) */ { + font-size: 0.85em; +} + +.form-checkboxes .form-item, +.form-radios .form-item /* Pack groups of checkboxes and radio buttons closer together */ { + margin: 0.4em 0; +} + +.form-submit /* The submit button */ { +} + +.container-inline div, +.container-inline label /* Inline labels and form divs */ { + display: inline; +} + +.tips /* Tips for Drupal's input formats */ { +} + + +/* + * Search (search-theme-form.tpl.php) + */ +#search-box /* Wrapper for the search form */ { +} + +#edit-search-theme-form-1-wrapper label /* Label that says "Search this site:" */ { + display: none; +} + + +/* + * Search (search-block-form.tpl.php) + */ +#search-block-form /* Wrapper for the search form */ { +} + +#edit-search-block-form-1-wrapper label /* Label that says "Search this site:" */ { + display: none; +} + + +/* + * Drupal's default login form block + */ +#user-login-form { + text-align: left; /* LTR */ +} + + +/* + * OpenID + * + * The default styling for the OpenID login link seems to assume Garland's + * styling of list items. + */ + +#user-login-form ul /* OpenID creates a new ul above the login form's links. */ { + margin-bottom: 0; /* Position OpenID's ul next to the rest of the links. */ +} + +#user-login-form li.openid-link /* The "Log in using OpenID" link. */ { + margin-top: 1em; + margin-left: -20px; /* LTR */ /* Un-do some of the padding on the ul list. */ +} + +#user-login-form li.user-link /* The "Cancel OpenID login" link. */ { + margin-top: 1em; +} + +#user-login ul { + margin: 1em 0; +} + +#user-login li.openid-link, +#user-login li.user-link /* The OpenID links on the /user form. */ { + margin-left: -2em; /* LTR */ /* Un-do all of the padding on the ul list. */ +} + + +/* + * Drupal admin tables + * + * We overrode these styles in html-elements.css, but restore them for the admin + * section of the site. + */ + +form tbody { + border-top: 1px solid #ccc; +} + +form th, +form thead th { + text-align: left; /* LTR */ + padding-right: 1em; /* LTR */ + border-bottom: 3px solid #ccc; +} + +form tbody th { + border-bottom: 1px solid #ccc; +} + +/* fields.css */ + +/** + * @file + * Field Styling + */ + + +/* + * Field types + */ + +.field /* Wrapper for any CCK field. */ { +} + +.field-type-datetime /* Always use "datetime" when creating new CCK date fields. "date" and "datestamp" are legacy types. */ { +} + +.field-type-filefield /* Field from filefield module */ { +} + +.field-type-nodereference { +} + +.field-type-number-decimal { +} + +.field-type-number-float { +} + +.field-type-number-integer { +} + +.field-type-text { +} + +.field-type-userreference { +} + + +/* + * Named fields + */ + +.field-field-FIELDNAME /* Underscores in field name are replaced with dashes. */ { +} diff --git a/themes/zen/zen-internals/css/zen-liquid-rtl.css b/themes/zen/zen-internals/css/zen-liquid-rtl.css new file mode 100644 index 0000000..2a44868 --- /dev/null +++ b/themes/zen/zen-internals/css/zen-liquid-rtl.css @@ -0,0 +1,237 @@ + + +/* html-reset-rtl.css */ + +/** + * @file + * RTL companion for the html-reset.css file. + */ + + +/* + * Lists + * + * We need to standardize the list item indentation. + */ +ul, +ol { + padding-left: 0; + padding-right: 2em; +} + +.block ul, +.item-list ul /* Drupal overrides */ { + padding: 0 2em 0 0; +} + +dd { + margin: 0 2em 0 0; +} + +/* + * Tables + * + * Drupal provides table styling which is only useful for its admin section + * forms, so we override this default CSS. (We set it back in forms.css.) + */ +th, +thead th, +tbody th { + text-align: right; +} + +/* layout-liquid-rtl.css */ + +/** + * @file + * RTL companion for the layout-liquid.css file. + */ + + +/* + * Content + */ +#content { + float: right; + margin-left: -100%; /* Negative value of #content's width + right margin. */ + margin-right: 0; +} + +.sidebar-first #content .section { + padding-left: 0; + padding-right: 200px; /* The width + right margin of .region-sidebar-first. */ +} + +.sidebar-second #content .section { + padding-left: 200px; /* The width + left margin of .region-sidebar-second. */ + padding-right: 0; +} + +/* + * Navigation + */ +#navigation { + float: right; + margin-left: -100%; /* Negative value of #navigation's width + right margin. */ + margin-right: 0; +} + +#navigation ul /* Primary and secondary links */ { + text-align: right; +} + +#navigation li /* A simple method to get navigation links to appear in one line. */ { + float: right; + padding: 0 0 0 10px; +} + +/* + * First sidebar + */ +.region-sidebar-first { + float: right; + margin-left: -200px; /* Negative value of .region-sidebar-first's width + right margin. */ + margin-right: 0; +} + +.region-sidebar-first .section { + margin: 0 0 0 20px; +} + +/* + * Second sidebar + */ +.region-sidebar-second { + float: left; + margin-left: 0; + margin-right: -200px; /* Negative value of .region-sidebar-second's width + left margin. */ +} + +.region-sidebar-second .section { + margin: 0 20px 0 0; +} + +/* tabs-rtl.css */ + +/** + * @file + * RTL companion for the tabs.css file. + */ + + +ul.primary { + padding: 0 10px 0 0; +} + +ul.primary li { + float: right; +} + +ul.secondary { + padding: 0 5px 0 0; +} + +ul.secondary li { + float: right; + border-left: none; +} + +/* messages-rtl.css */ + +/** + * @file + * RTL companion for the messages.css file. + */ + + +div.messages, +div.status, +div.warning, +div.error /* Important messages (status, warning, and error) for the user */ { + padding: 5px 35px 5px 5px; + background-position: 99.5% 5px; +} + +/* pages-rtl.css */ + +/** + * @file + * RTL companion for the pages.css file. + */ + + +/* + * Header + */ +#logo /* Wrapping link for logo */ { + float: right; +} + +/* + * Content + */ +.more-link /* Aggregator, blog, and forum more link */ { + text-align: left; +} + +/* block-editing-rtl.css */ + +/** + * @file + * RTL companion for the block-editing.css file. + */ + + +div.block.with-block-editing div.edit { + left: 0; + right: auto; +} + +/* forms-rtl.css */ + +/** + * @file + * RTL companion for the forms.css file. + */ + + +/* + * Drupal's default login form block + */ +#user-login-form { + text-align: right; +} + + +/* + * OpenID + * + * The default styling for the OpenID login link seems to assume Garland's + * styling of list items. + */ + +#user-login-form li.openid-link /* The "Log in using OpenID" link. */ { + margin-left: 0; + margin-right: -20px; /* Un-do some of the padding on the ul list. */ +} + +#user-login li.openid-link, +#user-login li.user-link /* The OpenID links on the /user form. */ { + margin-left: 0; + margin-right: -2em; /* Un-do all of the padding on the ul list. */ +} + + +/* + * Drupal admin tables + * + * We overrode these styles in html-elements.css, but restore them for the admin + * section of the site. + */ + +form th, +form thead th { + text-align: right; + padding-left: 1em; + padding-right: 0; +} diff --git a/themes/zen/zen-internals/css/zen-liquid.css b/themes/zen/zen-internals/css/zen-liquid.css new file mode 100644 index 0000000..0d4842b --- /dev/null +++ b/themes/zen/zen-internals/css/zen-liquid.css @@ -0,0 +1,1605 @@ + + +/* html-reset.css */ + +/** + * @file + * HTML Element Styling + * + * Ok, I admit it. I fooled you. This isn't a "reset" stylesheet. Instead this + * is the place where you should set (not reset) the default styling for all + * HTML elements. + * + * @see http://meiert.com/en/blog/20080419/reset-style-sheets-are-bad/ + * @see http://snook.ca/archives/html_and_css/no_css_reset/ + */ + + +/* + * Fonts + * + * Our font size and line height declarations are based on the following ALA + * article: + * http://www.alistapart.com/articles/howtosizetextincss + * + * All modern browsrs use a 16px default font size. Specifying the font-size + * and line-height in ems (relative to the 16px default font) allows the user + * to resize the font in the browser and produces the most consistent results + * across different browsers. + */ +body { + font-size: 100%; /* Fixes exaggerated text resizing in IE6 and IE7 */ +} + +#skip-link, +#page { + /* + * To use a 12px font size on the page, delete the 14px declarations. + * to use a 14px font size on the page, delete the 12px declarations. + */ + + /* Use a 12px base font size with a 16px line height */ + font-size: 0.75em; /* 16px x .75 = 12px */ + line-height: 1.333em; /* 12px x 1.333 = 16px */ + + /* Use a 14px base font size with a 18px line height */ + font-size: 0.875em; /* 16px x .875 = 14px */ + line-height: 1.286em; /* 14px x 1.286 = 18px */ +} + +body, +caption, +th, +td, +input, +textarea, +select, +option, +legend, +fieldset { + /* The following font family declarations are based on the Microsoft core web + * fonts which are common fonts available on most computer systems. The DejaVu + * fonts are commonly available on Linux systems where the MS fonts are less + * common. Tahoma and Helvetica are also widely available. + * + * A user's web browser will look at the comma-separated list and will + * attempt to use each font in turn until it finds one that is available + * on the user's computer. The final "generic" font (sans-serif or serif) + * hints at what type of font to use if the web browser doesn't find any + * of the fonts in the list. + + font-family: "Times New Roman", Times, Georgia, "DejaVu Serif", serif; + font-family: Times, "Times New Roman", Georgia, "DejaVu Serif", serif; + font-family: Georgia, "Times New Roman", "DejaVu Serif", serif; + + font-family: Verdana, Tahoma, "DejaVu Sans", sans-serif; + font-family: Tahoma, Verdana, "DejaVu Sans", sans-serif; + font-family: Helvetica, Arial, "Nimbus Sans L", sans-serif; + font-family: Arial, Helvetica, "Nimbus Sans L", sans-serif; + + font-family: "Courier New", "DejaVu Sans Mono", monospace; + + */ + + font-family: Verdana, Tahoma, "DejaVu Sans", sans-serif; +} + +pre, +code { + font-size: 1.1em; /* Monospace fonts can be hard to read */ + font-family: "Courier New", "DejaVu Sans Mono", monospace; +} + +/* + * Headings + */ +h1 { + font-size: 2em; + line-height: 1.3em; + margin-top: 0; + margin-bottom: 0.5em; /* 0.5em is equavalent to 1em in the page's base font. + Remember, a margin specified in ems is relative to + the element's font-size, not to the pages' base + font size. So, for example, if we want a 1em margin + (relative to the base font), we have to divide that + length by the element's font-size: + 1em / 2em = 0.5em */ +} + +h2 { + font-size: 1.5em; + line-height: 1.3em; + margin-top: 0.667em; /* Equivalent to 1em in the page's base font: 1 / 1.5 = 0.667em */ + margin-bottom: 0.667em; +} + +h3 { + font-size: 1.3em; + line-height: 1.3em; + margin-top: 0.769em; /* Equivalent to 1em in the page's base font: 1 / 1.3 = 0.769 */ + margin-bottom: 0.769em; +} + +h4, +h5, +h6 { + font-size: 1.1em; + line-height: 1.3em; + margin-top: 0.909em; /* Equivalent to 1em in the page's base font: 1 / 1.1 = 0.909 */ + margin-bottom: 0.909em; +} + +/* + * Block-level elements + */ +p, +ul, +ol, +dl, +pre, +table, +fieldset { + margin: 1em 0; +} + +blockquote { + margin: 1em 2em; +} + +/* + * Lists + * + * We need to standardize the list item indentation. + */ +ul, +ol { + margin-left: 0; + padding-left: 2em; /* LTR */ +} + +.block ul, +.item-list ul /* Drupal overrides */ { + margin: 1em 0; + padding: 0 0 0 2em; /* LTR */ +} + +ul ul, ul ol, +ol ol, ol ul, +.block ul ul, .block ul ol, +.block ol ol, .block ol ul, +.item-list ul ul, .item-list ul ol, +.item-list ol ol, .item-list ol ul { + margin: 0; +} + +li { + margin: 0; + padding: 0; +} + +.item-list ul li /* Drupal override */ { + margin: 0; + padding: 0; + list-style: inherit; +} + +ul.menu li, +li.expanded, +li.collapsed, +li.leaf /* Drupal override */ { + margin: 0; + padding: 0; +} + +ul { list-style-type: disc; } +ul ul { list-style-type: circle; } +ul ul ul { list-style-type: square; } +ul ul ul ul { list-style-type: circle; } +ol { list-style-type: decimal; } +ol ol { list-style-type: lower-alpha; } +ol ol ol { list-style-type: decimal; } + +dt { + margin: 0; + padding: 0; +} + +dd { + margin: 0 0 0 2em; + padding: 0; +} + +/* + * Links + * + * The order of link states are based on Eric Meyer's article: + * http://meyerweb.com/eric/thoughts/2007/06/11/who-ordered-the-link-states + */ +a:link { +} + +a:visited { +} + +a:hover, +a:focus { +} + +a:active { +} + +/* + * Tables + * + * Drupal provides table styling which is only useful for its admin section + * forms, so we override this default CSS. (We set it back in forms.css.) + */ +table { + border-collapse: collapse; + /* width: 100%; */ /* Prevent cramped-looking tables */ +} + +th, +thead th, +tbody th { + text-align: left; /* LTR */ + padding: 0; + border-bottom: none; +} + +tbody { + border-top: none; +} + +/* + * Abbreviations + */ +abbr { + border-bottom: 1px dotted #666; + cursor: help; + white-space: nowrap; +} + +abbr.created /* Date-based "abbreviations" show computer-friendly timestamps which are not human-friendly. */ { + border: none; + cursor: auto; + white-space: normal; +} + +/* + * Images + */ +img { + border: 0; +} + +/* + * Horizontal rules + */ +hr { + height: 1px; + border: 1px solid #666; +} + +/* + * Forms + */ +form { + margin: 0; + padding: 0; +} + +fieldset { + margin: 1em 0; + padding: 0.5em; +} + +/* wireframes.css */ + +/** + * @file + * Wireframes Styling + * + * Add wireframes to the basic layout elements. + */ + + +.with-wireframes #header .section, +.with-wireframes #content .section, +.with-wireframes #navigation .section, +.with-wireframes .region-sidebar-first .section, +.with-wireframes .region-sidebar-second .section, +.with-wireframes #footer .section { + margin: 1px; + padding: 2px; + border: 1px solid #ccc; +} + +.with-wireframes .region-page-closure { + margin-top: 1px; + padding: 2px; + border: 1px solid #ccc; +} + +/* layout-liquid.css */ + +/** + * @file + * Layout Styling (DIV Positioning) + * + * Define CSS classes to create a table-free, 3-column, 2-column, or single + * column layout depending on whether blocks are enabled in the left or right + * columns. + * + * This layout is based on the Zen Columns layout method. + * http://drupal.org/node/201428 + * + * Only CSS that affects the layout (positioning) of major elements should be + * listed here. Such as: + * display, position, float, clear, width, height, min-width, min-height + * margin, border, padding, overflow + */ + + +/* + * Body + */ +body { +} + +#page-wrapper, +.region-page-closure { + min-width: 960px; /* Don't allow the browser to make the site unreadable. */ +} + +#page { +} + +/* + * Header + */ +#header { +} + +#header .section { +} + +#search-box { +} + +.region-header { + clear: both; /* Clear the logo */ +} + +/* + * Main (container for everything else) + */ +#main-wrapper { + position: relative; +} + +#main { +} + +/* + * Content + */ +#content { + float: left; /* LTR */ + width: 100%; + margin-left: 0; /* LTR */ + margin-right: -100%; /* LTR */ /* Negative value of #content's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #content .section. */ +} + +#content .section, +.no-sidebars #content .section { + margin: 0; + padding: 0; +} + +.sidebar-first #content .section { + padding-left: 200px; /* LTR */ /* The width + left margin of .region-sidebar-first. */ + padding-right: 0; /* LTR */ +} + +.sidebar-second #content .section { + padding-left: 0; /* LTR */ + padding-right: 200px; /* LTR */ /* The width + right margin of .region-sidebar-second. */ +} + +.two-sidebars #content .section { + padding-left: 200px; /* The width + left margin of .region-sidebar-first. */ + padding-right: 200px; /* The width + right margin of .region-sidebar-second. */ +} + +/* + * Navigation + */ +#navigation { + float: left; /* LTR */ + width: 100%; + margin-left: 0; /* LTR */ + margin-right: -100%; /* LTR */ /* Negative value of #navigation's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to #navigation .section. */ + height: 2.3em; /* The navigation can have any arbritrary height. We picked one + that is the line-height plus 1em: 1.3 + 1 = 2.3 + Set this to the same value as the margin-top below. */ +} + +.with-navigation #content, +.with-navigation .region-sidebar-first, +.with-navigation .region-sidebar-second { + margin-top: 2.3em; /* Set this to the same value as the navigation height above. */ +} + +#navigation .section { +} + +#navigation ul /* Primary and secondary links */ { + margin: 0; + padding: 0; + text-align: left; /* LTR */ +} + +#navigation li /* A simple method to get navigation links to appear in one line. */ { + float: left; /* LTR */ + padding: 0 10px 0 0; /* LTR */ +} + +/* + * First sidebar + */ +.region-sidebar-first { + float: left; /* LTR */ + width: 200px; + margin-left: 0; /* LTR */ + margin-right: -200px; /* LTR */ /* Negative value of .region-sidebar-first's width + left margin. */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to .region-sidebar-first .section. */ +} + +.region-sidebar-first .section { + margin: 0 20px 0 0; /* LTR */ + padding: 0; +} + +/* + * Second sidebar + */ +.region-sidebar-second { + float: right; /* LTR */ + width: 200px; + margin-left: -200px; /* LTR */ /* Negative value of .region-sidebar-second's width + right margin. */ + margin-right: 0; /* LTR */ + padding: 0; /* DO NOT CHANGE. Add padding or margin to .region-sidebar-second .section. */ +} + +.region-sidebar-second .section { + margin: 0 0 0 20px; /* LTR */ + padding: 0; +} + +/* + * Footer + */ +#footer { +} + +#footer .section { +} + +/* + * Closure + */ +.region-page-closure /* See also the #page-wrapper declaration above that this div shares. */ { +} + +/* + * Prevent overflowing content + */ +#header, +#content, +#navigation, +.region-sidebar-first, +.region-sidebar-second, +#footer, +.region-page-closure { + overflow: visible; + word-wrap: break-word; /* A very nice CSS3 property */ +} + +#navigation { + overflow: hidden; /* May need to be removed if using a dynamic drop-down menu */ +} + +/* + * If a div.clearfix doesn't have any content after it and its bottom edge + * touches the bottom of the viewport, Firefox and Safari will mistakenly + * place several pixels worth of space between the bottom of the div and the + * bottom of the viewport. Uncomment this CSS property to fix this. + * Note: with some over-large content, this property might cause scrollbars + * to appear on the #page-wrapper div. + */ +/* +#page-wrapper { + overflow-y: hidden; +} +*/ + +/* page-backgrounds.css */ + +/** + * @file + * Page Background Styling + * + * The default layout method of Zen doesn't give themers equal-height columns. + * However, equal-height columns are difficult to achieve and totally + * unnecessary. Instead, use the Faux Columns method described in the following + * ALA article: + * http://www.alistapart.com/articles/fauxcolumns/ + */ + + +body { +} + +#page-wrapper { +} + +#page { +} + +#header { +} + +#header .section { +} + +#main-wrapper { +} + +#main { +} + +#footer { +} + +#footer .section { +} + +/* tabs.css */ + +/** + * @file + * Tabs Styling + * + * Adds styles for the primary and secondary tabs. + * + * Compare this with default CSS found in the system module's stylesheet (a copy + * of which is in drupal6-reference.css, line 510.) + */ + + +div.tabs { + margin: 0 0 5px 0; +} + +ul.primary { + margin: 0; + padding: 0 0 0 10px; /* LTR */ + border-width: 0; + list-style: none; + white-space: nowrap; + line-height: normal; + background: url(../images/tab-bar.png) repeat-x left bottom; +} + +ul.primary li { + float: left; /* LTR */ + margin: 0; + padding: 0; +} + +ul.primary li a { + display: block; + height: 24px; + margin: 0; + padding: 0 0 0 5px; /* width of tab-left.png */ + border-width: 0; + font-weight: bold; + text-decoration: none; + color: #777; + background-color: transparent; + background: url(../images/tab-left.png) no-repeat left -38px; +} + +ul.primary li a .tab { + display: block; + height: 20px; /* 24px (parent) - 4px (padding) */ + margin: 0; + padding: 4px 13px 0 6px; + border-width: 0; + line-height: 20px; + background: url(../images/tab-right.png) no-repeat right -38px; +} + +ul.primary li a:hover, +ul.primary li a:focus { + border-width: 0; + background-color: transparent; + background: url(../images/tab-left.png) no-repeat left -76px; +} + +ul.primary li a:hover .tab, +ul.primary li a:focus .tab { + background: url(../images/tab-right.png) no-repeat right -76px; +} + +ul.primary li.active a, +ul.primary li.active a:hover, +ul.primary li.active a:focus { + border-width: 0; + color: #000; + background-color: transparent; + background: url(../images/tab-left.png) no-repeat left 0; +} + +ul.primary li.active a .tab, +ul.primary li.active a:hover .tab, +ul.primary li.active a:focus .tab { + background: url(../images/tab-right.png) no-repeat right 0; +} + +ul.secondary { + margin: 0; + padding: 0 0 0 5px; /* LTR */ + border-bottom: 1px solid #c0c0c0; + list-style: none; + white-space: nowrap; + background: url(../images/tab-secondary-bg.png) repeat-x left bottom; +} + +ul.secondary li { + float: left; /* LTR */ + margin: 0 5px 0 0; + padding: 5px 0; + border-right: none; /* LTR */ +} + +ul.secondary a { + display: block; + height: 24px; + margin: 0; + padding: 0; + border: 1px solid #c0c0c0; + text-decoration: none; + color: #777; + background: url(../images/tab-secondary.png) repeat-x left -56px; +} + +ul.secondary a .tab { + display: block; + height: 18px; /* 24px (parent) - 6px (padding) */ + margin: 0; + padding: 3px 8px; + line-height: 18px; +} + +ul.secondary a:hover, +ul.secondary a:focus { + background: url(../images/tab-secondary.png) repeat-x left bottom; +} + +ul.secondary a.active, +ul.secondary a.active:hover, +ul.secondary a.active:focus { + border: 1px solid #c0c0c0; + color: #000; + background: url(../images/tab-secondary.png) repeat-x left top; +} + +/* messages.css */ + +/** + * @file + * Message Styling + * + * Sensible styling for Drupal's error/warning/status messages. + */ + + +div.messages, +div.status, +div.warning, +div.error /* Important messages (status, warning, and error) for the user */ { + min-height: 21px; + margin: 0 1em 5px 1em; + border: 2px solid #ff7; + padding: 5px 5px 5px 35px; /* LTR */ + color: #000; + background-color: #ffc; + background-image: url(../images/messages-status.png); + background-repeat: no-repeat; + background-position: 5px 5px; /* LTR */ +} + +div.status /* Normal priority messages */ { +} + +div.warning /* Medium priority messages */ { + border-color: #fc0; + background-image: url(../images/messages-warning.png); +} + +div.warning, +tr.warning { + color: #000; /* Drupal core uses #220 */ + background-color: #ffc; +} + +div.error /* High priority messages. See also the .error declaration in pages.css. */ { + /* border: 1px solid #d77; */ /* Drupal core uses: 1px solid #d77 */ + border-color: #c00; + background-image: url(../images/messages-error.png); +} + +div.error, +tr.error { + color: #900; /* Drupal core uses #200 */ + background-color: #fee; +} + +div.messages ul { + margin-top: 0; + margin-bottom: 0; +} + +/* pages.css */ + +/** + * @file + * Page Styling + * + * Style the markup found in page.tpl.php. Also includes some styling of + * miscellaneous Drupal elements that appear in the $content variable, such as + * ul.links, .pager, .more-link, etc. + */ + + +/* + * Body + */ +body { + margin: 0; + padding: 0; +} + +#page-wrapper { +} + +#page { +} + +/* + * The skip navigation link will be completely hidden until a user tabs to the + * link. See http://www.webaim.org/techniques/skipnav/ + */ +#skip-link a, +#skip-link a:visited { + position: absolute; + display: block; + left: 0; + top: -500px; + width: 1px; + height: 1px; + overflow: hidden; + text-align: center; + background-color: #666; + color: #fff; +} + +#skip-link a:hover, +#skip-link a:active, +#skip-link a:focus { + position: static; + width: 100%; + height: auto; + padding: 2px 0 3px 0; +} + +/* + * Header + */ +#header { +} + +#header .section { +} + +#logo /* Wrapping link for logo */ { + float: left; /* LTR */ + margin: 0; + padding: 0; +} + +#logo img { + vertical-align: bottom; +} + +#name-and-slogan /* Wrapper for website name and slogan */ { +} + +h1#site-name, +div#site-name /* The name of the website */ { + margin: 0; + font-size: 2em; + line-height: 1.3em; +} + +#site-name a:link, +#site-name a:visited { + color: #000; + text-decoration: none; +} + +#site-name a:hover, +#site-name a:focus { + text-decoration: underline; +} + +#site-slogan /* The slogan (or tagline) of a website */ { +} + +.region-header /* Wrapper for any blocks placed in the header region */ { +} + +/* + * Main (container for everything else) + */ +#main-wrapper { +} + +#main { +} + +/* + * Content + */ +#content { +} + +#content .section { +} + +#mission /* The mission statement of the site (displayed on homepage) */ { +} + +.region-content-top /* Wrapper for any blocks placed in the "content top" region */ { +} + +.breadcrumb /* The path to the current page in the form of a list of links */ { + padding-bottom: 0; /* Undo system.css */ +} + +h1.title, /* The title of the page */ +h2.title, /* Block title or the title of a piece of content when it is given in a list of content */ +h3.title /* Comment title */ { + margin: 0; +} + +tr.even /* Some tables have rows marked even or odd. */ { + /* background-color: #eee; */ /* Drupal core uses a #eee background */ +} + +tr.odd { + /* background-color: #eee; */ /* Drupal core uses a #eee background */ +} + +div.messages /* Important messages (status, warning, and error) for the user. See also the declarations in messages.css. */ { +} + +div.status /* Normal priority messages */ { +} + +div.warning, +tr.warning /* Medium priority messages */ { + /* border: 1px solid #f0c020; */ /* Drupal core uses: 1px solid #f0c020 */ +} + +div.error, +tr.error /* High priority messages. See also the .error declaration below. */ { +} + +.error /* Errors that are separate from div.messages status messages. */ { + /* color: #e55; */ /* Drupal core uses a #e55 background */ +} + +.warning /* Warnings that are separate from div.messages status messages. */ { + /* color: #e09010; */ /* Drupal core uses a #e09010 background */ +} + +div.tabs /* See also the tabs.css file. */ { +} + +.help /* Help text on a page */ { + margin: 1em 0; +} + +.more-help-link /* Link to more help */ { + font-size: 0.85em; + text-align: right; +} + +#content-area /* Wrapper for the actual page content */ { +} + +ul.links /* List of links */ { + margin: 1em 0; + padding: 0; +} + +ul.links.inline { + margin: 0; + display: inline; +} + +ul.links li { + display: inline; + list-style-type: none; + padding: 0 0.5em; +} + +.pager /* A list of page numbers when more than 1 page of content is available */ { + clear: both; + margin: 1em 0; + text-align: center; +} + +.pager a, +.pager strong.pager-current /* Each page number in the pager list */ { + padding: 0.5em; +} + +.feed-icons /* The links to the RSS or Atom feeds for the current list of content */ { + margin: 1em 0; +} + +.more-link /* Aggregator, blog, and forum more link */ { + text-align: right; /* LTR */ +} + +.region-content-bottom /* Wrapper for any blocks placed in the "content bottom" region */ { +} + +/* + * First sidebar (on left in LTR languages, on right in RTL) + * + * Remember to NOT add padding or margin to your .region-sidebar-first + * (see the layout.css file.) + */ +.region-sidebar-first { +} + +.region-sidebar-first .section { +} + +/* + * Second sidebar (on right in LTR languages, on left in RTL) + * + * Remember to NOT add padding or margin to your .region-sidebar-second + * (see the layout.css file.) + */ +.region-sidebar-second { +} + +.region-sidebar-second .section { +} + +/* + * Footer + */ +#footer { +} + +#footer .section { +} + +#footer-message /* Wrapper for the footer message from Drupal's "Site information" + and for any blocks placed in the footer region */ { +} + +.region-footer { +} + +/* + * Closure + */ +.region-page-closure /* Wrapper for any blocks placed in the closure region */ { +} + +/* + * Drupal boxes + * + * Wrapper for Comment form, Comment viewing options, Menu admin, and + * Search results. + */ +.box /* Wrapper for box */ { +} + +.box h2 /* Box title */ { +} + +.box .content /* Box's content wrapper */ { +} + +/* + * Markup free clearing (See: http://www.positioniseverything.net/easyclearing.html ) + */ +.clearfix:after { + content: "."; + display: block; + height: 0; + clear: both; + visibility: hidden; +} + +/** + * Hide elements from all users. + * + * Used for elements which should not be immediately displayed to any user. An + * example would be a collapsible fieldset that will be expanded with a click + * from a user. The effect of this class can be toggled with the jQuery show() + * and hide() functions. + */ +.element-hidden { + display: none; +} + +/** + * Hide elements visually, but keep them available for screen-readers. + * + * Used for information required for screen-reader users to understand and use + * the site where visual display is undesirable. Information provided in this + * manner should be kept concise, to avoid unnecessary burden on the user. Must + * not be used for focusable elements (such as links and form elements) as this + * causes issues for keyboard only or voice recognition users. "!important" is + * used to prevent unintentional overrides. + */ +.element-invisible { + position: absolute !important; + clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ + clip: rect(1px, 1px, 1px, 1px); +} + +/* block-editing.css */ + +/** + * @file + * Zen's rollover edit links for blocks. + */ + + +div.block.with-block-editing { + position: relative; +} + +div.block.with-block-editing div.edit { + display: none; + position: absolute; + right: 0; /* LTR */ + top: 0; + z-index: 40; + border: 1px solid #eee; + padding: 0 2px; + font-size: 0.75em; + background-color: #fff; +} + +div.block.with-block-editing:hover div.edit { + display: block; +} + +/* blocks.css */ + +/** + * @file + * Block Styling + */ + + +.block /* Block wrapper */ { + margin-bottom: 1em; +} + +.block.first /* The first block in the region */ { +} + +.block.last /* The last block in the region */ { +} + +.block.region-odd /* Zebra striping for each block in the region */ { +} + +.block.region-even /* Zebra striping for each block in the region */ { +} + +.block.odd /* Zebra striping independent of each region */ { +} + +.block.even /* Zebra striping independent of each region */ { +} + +.region-count-1 /* Incremental count for each block in the region */ { +} + +.count-1 /* Incremental count independent of each region */ { +} + +.block h2.title /* Block title */ { +} + +.block .content /* Block's content wrapper */ { +} + +#block-aggregator-category-1 /* Block for the latest news items in the first category */ { +} + +#block-aggregator-feed-1 /* Block for the latest news items in the first feed */ { +} + +#block-block-1 /* First administrator-defined block */ { +} + +#block-blog-0 /* "Recent blog posts" block */ { +} + +#block-book-0 /* "Book navigation" block for the current book's table of contents */ { +} + +#block-comment-0 /* "Recent comments" block */ { +} + +#block-forum-0 /* "Active forum topics" block */ { +} + +#block-forum-1 /* "New forum topics" block */ { +} + +#block-menu-primary-links /* "Primary links" block */ { +} + +#block-menu-secondary-links /* "Secondary links" block */ { +} + +#block-node-0 /* "Syndicate" block for primary RSS feed */ { +} + +#block-poll-0 /* "Most recent poll" block */ { +} + +#block-profile-0 /* "Author information" block for the profile of the page's author */ { +} + +#block-search-0 /* "Search form" block */ { +} + +#block-statistics-0 /* "Popular content" block */ { +} + +#block-user-0 /* "User login form" block */ { +} + +#block-user-1 /* "Navigation" block for Drupal navigation menu */ { +} + +#block-user-2 /* "Who's new" block for a list of the newest users */ { +} + +#block-user-3 /* "Who's online" block for a list of the online users */ { +} + +/* navigation.css */ + +/** + * @file + * Navigation Styling + * + * Default menu styling (ul.menu) is defined in system-menus.css. + */ + + +/* + * The active item in a Drupal menu + */ +li a.active { + color: #000; +} + +/* + * Navigation bar + */ +#navigation { +} + +.region-navigation { +} + +/* + * Primary and Secondary menu links + */ +#main-menu { +} + +#secondary-menu { +} + +/* + * Menu blocks + */ +.block-menu { +} + +/* + * "Menu block" blocks. See http://drupal.org/project/menu_block + */ +.block-menu_block { +} + +/* views-styles.css */ + +/** + * @file + * Views Styling + */ + + + +/* nodes.css */ + +/** + * @file + * Node Styling + * + * Style anything that isn't in the $content variable. + */ + + +.node /* Node wrapper */ { +} + +.node-sticky /* A sticky node (displayed before others in a list) */ { +} + +.node-unpublished /* Unpublished nodes */ { + /* background-color: #fff4f4; */ /* Drupal core uses a #fff4f4 background */ +} + +.node-unpublished div.unpublished, +.comment-unpublished div.unpublished /* The word "Unpublished" displayed underneath the content. */ { + height: 0; + overflow: visible; + color: #d8d8d8; + font-size: 75px; + line-height: 1; + font-family: Impact, "Arial Narrow", Helvetica, sans-serif; + font-weight: bold; + text-transform: uppercase; + text-align: center; + word-wrap: break-word; /* A very nice CSS3 property */ +} + +.node-by-viewer /* A node created by the current user */ { +} + +.node-teaser /* A node displayed as teaser */ { +} + +/* All nodes are given a node-type-FOO class that describes the type of + * content that it is. If you create a new content type called + * "my-custom-type", it will receive a "node-type-my-custom-type" class. + */ +.node-type-page /* Page content node */ { +} + +.node-type-story /* Story content node */ { +} + +.node h2.title /* Node title */ { +} + +.marker /* "New" or "Updated" marker for content that is new or updated for the current user */ { + color: #c00; +} + +.node .picture /* The picture of the node author */ { +} + +.node.node-unpublished .picture, +.comment.comment-unpublished .picture { + position: relative; /* Otherwise floated pictures will appear below the "Unpublished" text. */ +} + +.node .meta /* Wrapper for submitted and terms data */ { +} + +.node .submitted /* The "posted by" information */ { +} + +.node .terms /* Node terms (taxonomy) */ { +} + +.node .content /* Node's content wrapper */ { +} + +.node ul.links /* Node links. See also the ul.links declaration in the pages.css. */ { +} + +.preview .node /* Preview of the content before submitting new or updated content */ { + /* background-color: #ffffea; */ /* Drupal core uses a #ffffea background */ +} + +/* comments.css */ + +/** + * @file + * Comment Styling + */ + + +#comments /* Wrapper for the list of comments and its title */ { + margin: 1em 0; +} + +#comments h2.title /* Heading for the list of comments */ { +} + +.comment /* Wrapper for a single comment */ { +} + +.comment-preview /* Preview of the comment before submitting new or updated comment */ { +} + +.comment.new /* A new comment since the user last viewed the page. */ { +} + +.comment.first /* The first comment in the list of comments */ { +} + +.comment.last /* The last comment in the list of comments */ { +} + +.comment.odd /* An odd-numbered comment in the list of comments */ { +} + +.comment.even /* An even-numbered comment in the list of comments */ { +} + +.comment-unpublished /* Unpublished comments */ { + /* background-color: #fff4f4; */ /* Drupal core uses a #fff4f4 background */ +} + +.comment-unpublished div.unpublished /* The word "Unpublished" displayed underneath the content. See also the div.unpublished declaration in the nodes.css. */ { +} + +.comment-by-anonymous /* A comment created by an anonymous user */ { +} + +.comment-by-node-author /* A comment created by the node's author */ { +} + +.comment-by-viewer /* A comment created by the current user */ { +} + +.comment h3.title /* Comment title */ { +} + +.new /* "New" marker for comments that are new for the current user */ { + color: #c00; +} + +.comment .picture /* The picture of the comment author */ { +} + +.comment .submitted /* The "posted by" information */ { +} + +.comment .content /* Comment's content wrapper */ { +} + +.comment .user-signature /* The user's signature */ { +} + +.comment ul.links /* Comment links. See also the ul.links declaration in the pages.css. */ { +} + +.indented /* Nested comments are indented */ { + /* margin-left: 25px; */ /* Drupal core uses a 25px left margin */ +} + +.preview .comment /* Preview of the comment before submitting new or updated comment */ { + /* background-color: #ffffea; */ /* Drupal core uses a #ffffea background */ +} + +/* forms.css */ + +/** + * @file + * Form Styling + */ + + +.form-item, +.form-checkboxes, +.form-radios /* Wrapper for a form element (or group of form elements) and its label */ { + margin: 1em 0; +} + +.form-item input.error, +.form-item textarea.error, +.form-item select.error /* Highlight the form elements that caused a form submission error */ { + border: 2px solid #c00; +} + +.form-item label /* The label for a form element */ { + display: block; + font-weight: bold; +} + +.form-item label.option /* The label for a radio button or checkbox */ { + display: inline; + font-weight: normal; +} + +.form-required /* The part of the label that indicates a required field */ { + color: #c00; +} + +.form-item .description /* The descriptive help text (separate from the label) */ { + font-size: 0.85em; +} + +.form-checkboxes .form-item, +.form-radios .form-item /* Pack groups of checkboxes and radio buttons closer together */ { + margin: 0.4em 0; +} + +.form-submit /* The submit button */ { +} + +.container-inline div, +.container-inline label /* Inline labels and form divs */ { + display: inline; +} + +.tips /* Tips for Drupal's input formats */ { +} + + +/* + * Search (search-theme-form.tpl.php) + */ +#search-box /* Wrapper for the search form */ { +} + +#edit-search-theme-form-1-wrapper label /* Label that says "Search this site:" */ { + display: none; +} + + +/* + * Search (search-block-form.tpl.php) + */ +#search-block-form /* Wrapper for the search form */ { +} + +#edit-search-block-form-1-wrapper label /* Label that says "Search this site:" */ { + display: none; +} + + +/* + * Drupal's default login form block + */ +#user-login-form { + text-align: left; /* LTR */ +} + + +/* + * OpenID + * + * The default styling for the OpenID login link seems to assume Garland's + * styling of list items. + */ + +#user-login-form ul /* OpenID creates a new ul above the login form's links. */ { + margin-bottom: 0; /* Position OpenID's ul next to the rest of the links. */ +} + +#user-login-form li.openid-link /* The "Log in using OpenID" link. */ { + margin-top: 1em; + margin-left: -20px; /* LTR */ /* Un-do some of the padding on the ul list. */ +} + +#user-login-form li.user-link /* The "Cancel OpenID login" link. */ { + margin-top: 1em; +} + +#user-login ul { + margin: 1em 0; +} + +#user-login li.openid-link, +#user-login li.user-link /* The OpenID links on the /user form. */ { + margin-left: -2em; /* LTR */ /* Un-do all of the padding on the ul list. */ +} + + +/* + * Drupal admin tables + * + * We overrode these styles in html-elements.css, but restore them for the admin + * section of the site. + */ + +form tbody { + border-top: 1px solid #ccc; +} + +form th, +form thead th { + text-align: left; /* LTR */ + padding-right: 1em; /* LTR */ + border-bottom: 3px solid #ccc; +} + +form tbody th { + border-bottom: 1px solid #ccc; +} + +/* fields.css */ + +/** + * @file + * Field Styling + */ + + +/* + * Field types + */ + +.field /* Wrapper for any CCK field. */ { +} + +.field-type-datetime /* Always use "datetime" when creating new CCK date fields. "date" and "datestamp" are legacy types. */ { +} + +.field-type-filefield /* Field from filefield module */ { +} + +.field-type-nodereference { +} + +.field-type-number-decimal { +} + +.field-type-number-float { +} + +.field-type-number-integer { +} + +.field-type-text { +} + +.field-type-userreference { +} + + +/* + * Named fields + */ + +.field-field-FIELDNAME /* Underscores in field name are replaced with dashes. */ { +} diff --git a/themes/zen/zen-internals/images/messages-error-ie6.png b/themes/zen/zen-internals/images/messages-error-ie6.png new file mode 100644 index 0000000000000000000000000000000000000000..054b9f28cc328f85b9f726aa46bf6223e10bd656 GIT binary patch literal 719 zcmeAS@N?(olHy`uVBq!ia0vp^l0YoV!3-o@zHZe536!`-lmzFem6RtIr7}3C%E z>-pisr%#>Q6CQpjE$wK2{*j!Vb1f~$ckbN1d-sEl8#_8WW-&3Xw6ih%Nl9saSlCuq*E46%>}qK-Ha6ZrYu1U~yLotc_C`gy zxVQ)i2wa&wdFITSr;i^$FlP=cE9=393m3}Ezc_YmTUpr-Kfevp(M$C7Hrm+Cmyme( z?%n$vH*POoy2i_EPha1i6)R@5v(FP2UT$uFf8DzEW@a-P7=RXW?(k;^hC+BrkY6w` zKxhCM_9dG>23qmg)5S5Q;#SGT^y(%9k=A0zX-zu{9v-mWm{l&jwv0b_?*ISGC47Ut zj(%2Eul#&x_MPT!%UfPV`G@X2wd_!6aH;r9jcpN+SXDl#UJTQ#^K?ArGGXzTwIK>B z7mQ8>3NENNaMRwPzDj7x^wSK!kD3%kCs*`M&19Og^6XK=hZSymjDN0tl2Nnk75w|K zFY@g7=|33VdQ?(`B&$@`l`;#$Mts0=4^SQz5dCq qzok2#O?_EfVrDt<+r}~`9)_z9p|6yue02l{1cRrmpUXO@geCxmXnWrP literal 0 HcmV?d00001 diff --git a/themes/zen/zen-internals/images/messages-error.png b/themes/zen/zen-internals/images/messages-error.png new file mode 100644 index 0000000000000000000000000000000000000000..012813b1dd5c802737475d4268de4c00cf50700d GIT binary patch literal 727 zcmV;|0x127P)P000#T1^@s6vnxdy0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!c}YY;RCwB~l~HI?Q5eU+o3o&VsZj_w z2qX|jHzY~+CWLqNWDuBRuZ1ue418@21`c|;y%dZMgq{Yz2nj}HinxnAy=_g-&x;HT%_d(QvQIp24_!>z-=wJ2kTV>km70SO^~gh#xH1?eLd zq=6KXG@4b-nnaLWPC*dPhC*=K?}rmS4=24|;4Btk{XTrHRNzOW0bhzm*iEOQRjrcA zZ8Y0Fq_%z#7m|AtiLlSx+ssVc%jMYC+#I9%q=TC zF*KiaNN;FzL|%{$Nli-Gc<46bfrbt&ElhS^vWVr7>pHJDYTCJu#mh?!MwrfH*_e^>`hWSn_v0AMV z2n2LjLQU2i{7j5{=*XbmZV&q5aM*A>rMY~bl$cZ~?~P1sHXGRO_OVPpW-|2mRBe*1 zC6l_7D4RN+&R{hTheLO4uiJ%pYircKqYnI0i($}9I!W@o*JJsG1q!;P zbr^SF#p8!2QYH-za21*cR3)fdpw3;yGRlPDk;fTPWFJzgu}ey`P+-raQ4-%nBI=St zXcb5ii5+t~uT0I)!=-rqz<$3^B&Z<5&t?;v`8@n;wO-(-`^Y91$nR!Ly%Q;1-`Vll zG4Clkwq|F$_%4A^)omhq6mIE>7@d=Ei0in^1+Q0E;pNg2JzqthnYpx#OfH`h#mR>= zGjwk}!snavMP;h#ZPzI|A83#7$v5C%UB7xO*+;Iye`tRM7yx9}O3%%U;y3^R002ov JPDHLkV1nHMO-29! literal 0 HcmV?d00001 diff --git a/themes/zen/zen-internals/images/messages-status-ie6.png b/themes/zen/zen-internals/images/messages-status-ie6.png new file mode 100644 index 0000000000000000000000000000000000000000..f9eb63f59c92011b84ffcb926dadc4e45458cbfe GIT binary patch literal 610 zcmb`C?MqVu6o;?Y&_*UKH4URx24)odq#+}kY`QJGjcrueh#6iZDTaD`a}cymOTtl2 zzbv6QMD4?30~;2ERL)jM+gRpWbBv)*%UW~J+1Pfv{trEH&JTVZ4m{m5vM!IklT8pr zok(dwl5%#l}C zuM{Ce9O7_b4a#s{>wy=TNyUJN>DUy!O~KYQuyL^mLzi&Dumq=)P=u*JKIp@UH44=s zXrG0yN%)w7Y)r4=^r0Yhpikt6mk|&|;OI0AVXzrzPrG4s9$IkW7P>eXdxtAyE_j0> zO#=3Q1M^=fo`i`IT*ZjR1+Ve<5C$3$2uyhWU|a@i8gg*Sv-xsdz z?e6V##IvZ<=5v!$`}*KB4qIUzD0*gWWc| v=1G4sNF~J~v%;(y>HJB54V1R|rWOv45p`uk)vh0^Fylo?M5NGCqt^WcG&63@ literal 0 HcmV?d00001 diff --git a/themes/zen/zen-internals/images/messages-status.png b/themes/zen/zen-internals/images/messages-status.png new file mode 100644 index 0000000000000000000000000000000000000000..9f07a4253e1e1b187187fe9c30249c4755f83c88 GIT binary patch literal 560 zcmV-00?+-4P)P000#T1^@s6vnxdy0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUz(n&-?RCwC7mCY+eQ5eRb@f8vxHJPoN zg{GA92dI%1WiwKCQc5XXHj1)gL&-u}DH{u=WFaDI8a0s;nGiEmWPA)tcs=hOqw8aQ z&GFXn-Z|a5&#yUi&U+jZKzdaz-+m?Qo97bNP^@98xBA3vy^S63UQ?P zB|g%FJdX#(bmY^KLq{GR4myO6J38)9fLl5)W;xzc$slD@AJSA}!%0?T-zRdlB)_Wb z6_HSjSnq3&2$I+Z735gLeUet``5`)^F)?7JK%Io zKMmVAV~(}tOf2E22d=D6U0Fk^Hshg$`~NP`E}`8bfDw}UnM84s1=;nA#AbdT9$ynV zXxH!v@!4C7lBz*^NjI`e>QUAKl=r`#@3RSQh`>V>h_CW~zRo9;WQq+k{?jg;tP-+@ z%ALeM(!~*KrUkS>yDlwQW$<}A=gB2;BHIZ>27qv{jvL9c$wR9ah2A3U)d4sDd5+tx ygX)*{)pV7SaiViPO8ozE{GO5~6MOSnfB^taqPaZqNj3BU0000IxAo6wStzhBzmIy!qD4hI6k$)=B+ z-*MqH)KW=0*TerFBHg8$;{2UrN|^D;tZp=g7P000#T1^@s6vnxdy0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!I!Q!9RCwC7m0w6xaTLeDOA`%ACuqy{ zGyO&`Kr zZcYg2>3gorF1X!4q(AuVa@qNPzxSSV?)e48!2hk7xP}B=Orqp5=_g_GfHaXR$&v45 zoh;C7!>>t-jH4|YMJGLO(4&POZS)AxL+Ei#kKgpD(BtOE%s4b5gRsHusK5LuCY zO5|`^e67-oNa3ki`&CB-f3X|fCA(65<*1d(WV8qpiA3rL=zi5vy_(6j+6%RlIowHy zaeKnCNZD-Gy2j)2`T@FMb%1$f1FCy&@(ewrQQR7H?UX{HU|snpje}IDXY`(>YpaPN zM~0`=$6{8`N#GA>lMg3i}*JMO?M&!~~wIZ@Lpy?X0*QAAP%6{5$uYMcWa~Tdza(W`x z0~<&;`WU}SakB1S?ItzQ!Z%zxC3IRCcuShjpm*}$Kc~mQk7*rn@kbS@w?gycqPa0rJV791Q-B4t`N6rur0*^0000{(JaZG%Q-e|yQz{EjrrH1%u?6^qxE?rg;Q#;s+L`TJfFevK zL4Lvi8J=!8@B;FLJY5_^DsCkuurRXyQITL^kzio@#ULLbV0soP%i!ti=d#Wzp$PzA CX)V71 literal 0 HcmV?d00001 diff --git a/themes/zen/zen-internals/images/tab-left-ie6.png b/themes/zen/zen-internals/images/tab-left-ie6.png new file mode 100644 index 0000000000000000000000000000000000000000..5c512aee020890613b029bf8fb5bbb1b2306b317 GIT binary patch literal 331 zcmeAS@N?(olHy`uVBq!ia0vp^tU#Q?!3-oTCAlZ=IPU?r%s)E{P^*&U%!qWJ9h8hy(34C z96EI9$B!S69zFW<<;#l~FaG@b^WnpXzkmNefByX2w{I_BzWo0E`|sbs|NZ;->C>kJ z2M+xI|Njga9F%Q41vFo#B*-rqD2NL%h;Mpy9jGqV)5S5Q;?|xEmSPPG0xk!|T<(+$ zeE9c$%C$4;9AyC?{~SE|P*ui5vUKTkcQwa{T<`O3?B1VD3-) z-1T-*@3n$E?|Y}+vR!y-UCtI;>F1rj$p_sO=NRCwC#luZhRFbsvGxRoBFTdy+L zm^*omIYHgmQxt@P`!4*+G!=(bJA(r*`yd299u$(k6o?2%75~Go>!>|^y-H>XKuQTf zPAa7o8e@>eogjn=y@Z4^Jg8z5kDOuRP18VK*BhmYkK>43#Z7z9@Cxkvo?7ec`3Zv7 zy7h(AG$DrpSZgu=d9QU{L#N?HaG%)8Nj-v8%d$Yl;V=x_jwl_c=h-^W59Jed3%r&N zzpFSM1e|j@9Y52N3-L1;Fyx1 zl&avFo0y&&l$w}QS$Hzl2B^p*z$e7@>C>lg-n@DK{Q13m_Z~fZ^y0;fFJHcV`}Xa_ zhY$b${rmm<_oq*vPMkP#>eQ(tM~)mibm-WzV~-y{K5*c`%a<>|fB$~w%$fiH{{zX% zJk~pbW=fO<`2_<-umOg%!g{ZOu4VRgaSW-r_2!PH&>;r_mV=_-6PAO+M-+$UFIHkl@_Ex93c;7BII&wGU`0(C)umHz=IFx$)i93+czJ!d=iT zy>Le?+BL-bTCdV7+1Gx8SNpaGyENC9`;@H-+{-G#V3V=&+QHjy8o(f9@O1TaS?83{ F1OQ)Q<2?WX literal 0 HcmV?d00001 diff --git a/themes/zen/zen-internals/images/tab-right.png b/themes/zen/zen-internals/images/tab-right.png new file mode 100644 index 0000000000000000000000000000000000000000..9ed9cb2baa29201199ebba5acd0f76c55d8d6195 GIT binary patch literal 685 zcmeAS@N?(olHy`uVBq!ia0y~yVC)96Q#jawWO=Jh29T00ag8Vm&QB{TPb^Aha7@Wh zN>%X8O-xS>N=;0uEIgTN!@$7g@9E+gQgQ3eUBj+N0Wt>??@u~*=u|d`QxSu|L3PhZ zzv7;`+$!uH3K^NHsfmfIPCjOZX)>mHDUuQq-+n8oZTw?yKdF6RKximG!>&IDObkbu z8uYt2>3o*sYKXRf{kYU<=ANTUeaXs<4|2BO{u;LW>iYhKIZ1{RJU(moa(Lc}#uiJ^m)A-?D6 s!vX_A2CHPjOD0i+ftNU@|l`Z_W&T)T0_Kf(yemn?CO zC<)F_D=AMbN@Z|N$xljE@XSq2PYp^h2vmpG@fv9YgTe~DWM4f0RlJ` literal 0 HcmV?d00001 diff --git a/themes/zen/zen-internals/images/tab-secondary.png b/themes/zen/zen-internals/images/tab-secondary.png new file mode 100644 index 0000000000000000000000000000000000000000..bf4e8d21a32551841e2728c5f224fbd580ea8cd3 GIT binary patch literal 195 zcmeAS@N?(olHy`uVBq!ia0vp^j6ht$!3-o>o@HzTQR$ApjtmUfZd~z?Faq)=OI#yL zg7ec#$`gxH85~pclTsBta}(23gHjVyDhp4h+5i=)1o(uwK7IQ1%aB^7(8A5T-G@yGywp$g-p@_ literal 0 HcmV?d00001 diff --git a/themes/zen/zen-internals/js/theme-settings.js b/themes/zen/zen-internals/js/theme-settings.js new file mode 100644 index 0000000..04ce8b6 --- /dev/null +++ b/themes/zen/zen-internals/js/theme-settings.js @@ -0,0 +1,27 @@ +$(document).ready( function() { + // Hide the breadcrumb details, if no breadcrumb. + $('#edit-zen-breadcrumb').change( + function() { + div = $('#div-zen-breadcrumb-collapse'); + if ($('#edit-zen-breadcrumb').val() == 'no') { + div.slideUp('slow'); + } else if (div.css('display') == 'none') { + div.slideDown('slow'); + } + } + ); + if ($('#edit-zen-breadcrumb').val() == 'no') { + $('#div-zen-breadcrumb-collapse').css('display', 'none'); + } + $('#edit-zen-breadcrumb-title').change( + function() { + checkbox = $('#edit-zen-breadcrumb-trailing'); + if ($('#edit-zen-breadcrumb-title').attr('checked')) { + checkbox.attr('disabled', 'disabled'); + } else { + checkbox.removeAttr('disabled'); + } + } + ); + $('#edit-zen-breadcrumb-title').change(); +} ); diff --git a/themes/zen/zen-internals/screenshot.png b/themes/zen/zen-internals/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..3821461046e63a9de9330d7ce4fbfc652c27eb83 GIT binary patch literal 3807 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 == 'block') { + $vars['edit_links_array']['block-edit'] = 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 { + $vars['edit_links_array']['block-config'] = 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')) { + list($view_name, $view_block) = explode('-block', $block->delta); + $vars['edit_links_array']['block-edit-view'] = l('' . t('edit view') . '', 'admin/build/views/edit/' . $view_name, + array( + 'attributes' => array( + 'title' => t('edit the view that defines this block'), + 'class' => 'block-edit-view', + ), + 'query' => drupal_get_destination(), + 'fragment' => 'views-tab-block' . $view_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; + $vars['edit_links_array']['block-edit-menu'] = 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')) { + list($menu_name, ) = split(':', variable_get("menu_block_{$block->delta}_parent", 'navigation:0')); + $vars['edit_links_array']['block-edit-menu'] = 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, + ) + ); + } +} diff --git a/themes/zen/zen-internals/template.comment.inc b/themes/zen/zen-internals/template.comment.inc new file mode 100644 index 0000000..9578763 --- /dev/null +++ b/themes/zen/zen-internals/template.comment.inc @@ -0,0 +1,58 @@ +type, 1) == 0) { + $vars['title'] = ''; + } + + // New comment. + if ($vars['comment']->new) { + $vars['classes_array'][] = 'comment-new'; + } + // Add an "unpublished" flag. + if ($vars['comment']->status == COMMENT_NOT_PUBLISHED) { + $vars['unpublished'] = TRUE; + $vars['classes_array'][] = $vars['status']; + } + else { + $vars['unpublished'] = FALSE; + } + // Zebra striping. + if ($vars['id'] == 1) { + $vars['classes_array'][] = 'first'; + } + if ($vars['id'] == $vars['node']->comment_count) { + $vars['classes_array'][] = 'last'; + } + $vars['classes_array'][] = $vars['zebra']; + if ($vars['comment']->uid == 0) { + // Comment is by an anonymous user. + $vars['classes_array'][] = 'comment-by-anonymous'; + } + else { + if ($vars['comment']->uid == $vars['node']->uid) { + // Comment is by the node author. + $vars['classes_array'][] = 'comment-by-node-author'; + } + if ($vars['comment']->uid == $GLOBALS['user']->uid) { + // Comment was posted by current user. + $vars['classes_array'][] = 'comment-by-viewer'; + } + } +} diff --git a/themes/zen/zen-internals/template.conditional-styles.inc b/themes/zen/zen-internals/template.conditional-styles.inc new file mode 100644 index 0000000..fc4d04e --- /dev/null +++ b/themes/zen/zen-internals/template.conditional-styles.inc @@ -0,0 +1,112 @@ +base_theme)) { + $theme_paths[$theme] = conditional_styles_paths_to_basetheme($themes[$theme]->base_theme); + } + $theme_paths[$theme][$theme] = dirname($themes[$theme]->filename); + } + return $theme_paths[$theme]; +} + +/** + * When the theme registry is rebuilt, we also build the conditional stylesheets. + */ +function _conditional_styles_theme($existing, $type, $theme, $path) { + // Process the conditional stylesheets for every active theme. + $themes = list_themes(); + foreach (array_keys($themes) AS $theme) { + // We only need to process active themes. + if ($themes[$theme]->status || $GLOBALS['theme'] == $theme) { + $paths = conditional_styles_paths_to_basetheme($theme); + + // Grab all the conditional stylesheets. + $stylesheets = array(); + // Start with the base theme and travel up the chain to the active theme. + foreach ($paths AS $theme_name => $path) { + // Look at the conditional-stylesheets defined in the theme's .info file. + if (!empty($themes[$theme_name]->info['conditional-stylesheets'])) { + foreach ($themes[$theme_name]->info['conditional-stylesheets'] AS $condition => $css) { + // Allow the theme to override its base themes' styles. + foreach ($css AS $media => $files) { + foreach ($files AS $file) { + $stylesheets[$condition][$media][$file] = $path; + } + } + } + } + } + // Render the stylesheets to link elements. + $conditional_styles = $conditional_styles_rtl = ''; + if (!empty($stylesheets)) { + $query_string = '?'. substr(variable_get('css_js_query_string', '0'), 0, 1); + $base_path = base_path(); + foreach ($stylesheets AS $condition => $css) { + // Each condition requires its own set of links. + $output = $output_rtl = ''; + foreach ($css AS $media => $files) { + foreach ($files AS $file => $path) { + // Don't allow non-existent stylesheets to clutter the logs with 404. + if (file_exists("./$path/$file")) { + $link = "\n"; + $output .= $link; + $output_rtl .= $link; + $file_rtl = str_replace('.css', '-rtl.css', $file); + if (file_exists("./$path/$file_rtl")) { + $output_rtl .= "\n"; + } + } + } + } + if ($output) { + $conditional_styles .= "\n"; + $conditional_styles_rtl .= "\n"; + } + } + } + // Save the stylesheets for later retrieval. + if ($conditional_styles) { + if (db_is_active()) { + variable_set('conditional_styles_' . $theme, $conditional_styles); + variable_set('conditional_styles_' . $theme . '_rtl', $conditional_styles_rtl); + } + else { + $GLOBALS['conf']['conditional_styles_' . $theme] = $conditional_styles; + $GLOBALS['conf']['conditional_styles_' . $theme . '_rtl'] = $conditional_styles_rtl; + } + } + elseif (db_is_active()) { + variable_del('conditional_styles_' . $theme); + variable_del('conditional_styles_' . $theme . '_rtl'); + } + } + } + + // Return nothing. + return array(); +} diff --git a/themes/zen/zen-internals/template.theme-registry.inc b/themes/zen/zen-internals/template.theme-registry.inc new file mode 100644 index 0000000..b6fdf4c --- /dev/null +++ b/themes/zen/zen-internals/template.theme-registry.inc @@ -0,0 +1,137 @@ +extremely important to turn off this feature on production websites.', array('!link' => url('admin/build/themes/settings/' . $GLOBALS['theme']))), 'warning', FALSE); + } + + // Keep track of all the base themes. + static $base_themes = array(); + $base_themes[] = $theme; + + // Add a "process" phase to come after the "preprocess" functions. + if ($type == 'theme') { + foreach (array_keys($existing) as $hook) { + // Normally, preprocess functions are added to the registry after + // HOOK_theme() returns, but if we add them first, they won't be re-added. + if (function_exists($theme . '_preprocess')) { + $existing[$hook]['preprocess functions'][] = $theme . '_preprocess'; + } + if (function_exists($theme . '_preprocess_' . $hook)) { + $existing[$hook]['preprocess functions'][] = $theme . '_preprocess_' . $hook; + } + // Add base theme process functions. + foreach ($base_themes as $base_theme) { + if (function_exists($base_theme . '_process')) { + $existing[$hook]['preprocess functions'][] = $base_theme . '_process'; + } + if (function_exists($base_theme . '_process_' . $hook)) { + $existing[$hook]['preprocess functions'][] = $base_theme . '_process_' . $hook; + } + } + // Add the theme process functions. + if (function_exists($theme . '_process')) { + $existing[$hook]['preprocess functions'][] = $theme . '_process'; + } + if (function_exists($theme . '_process_' . $hook)) { + $existing[$hook]['preprocess functions'][] = $theme . '_process_' . $hook; + } + } + } + + // Manipulations only to be done by the base theme. + if ($theme == 'zen') { + // Insert zen_show_blocks_discovery() before template_preprocess_page(). + $existing['page']['preprocess functions'] = array_merge(array('zen_show_blocks_discovery'), $existing['page']['preprocess functions']); + + // Allow theme hook suggestions on theme_links. + $existing['links']['pattern'] = 'links__'; + + // The base theme registers region.tpl.php. + $templates = array( + 'region' => array( + 'arguments' => array('elements' => NULL), + 'pattern' => 'region_', + 'path' => drupal_get_path('theme', 'zen') . '/templates', + 'template' => 'region', + // drupal_find_theme_templates() requires this, so manually add it. + 'include files' => array(), + ), + ); + // We have to manually find template suggestions since phptemplate_theme() + // is in charge of that, but runs before zen_theme(). + $templates += drupal_find_theme_templates($templates, '.tpl.php', $path); + // We manually register the preprocess and process functions, since Drupal + // won't auto-register template_preprocess or process functions. + foreach (array_keys($templates) as $key) { + $templates[$key]['preprocess functions'] = array( + 'template_preprocess', + 'zen_preprocess', + 'zen_preprocess_region', + 'zen_process', + ); + } + return $templates; + } + + // Else return nothing. + return array(); +} + +/** + * Return the theme settings' default values from the .info and save them into the database. + * + * @param $theme + * The name of theme. + */ +function zen_theme_get_default_settings($theme) { + $themes = list_themes(); + + // Get the default values from the .info file. + $defaults = !empty($themes[$theme]->info['settings']) ? $themes[$theme]->info['settings'] : array(); + + if (!module_exists('domain_theme') && !empty($defaults)) { + // Merge the defaults with the theme settings saved in the database. + $settings = array_merge($defaults, variable_get('theme_'. $theme .'_settings', array())); + // Save the settings back to the database. + if (db_is_active()) { + variable_set('theme_'. $theme .'_settings', $settings); + } + else { + $GLOBALS['conf']['theme_'. $theme .'_settings'] = $settings; + } + // If the active theme has been loaded, force refresh of Drupal internals. + if (!empty($GLOBALS['theme_key'])) { + theme_get_setting('', TRUE); + } + } + + // Return the default settings. + return $defaults; +} diff --git a/themes/zen/zen-internals/template.zen.inc b/themes/zen/zen-internals/template.zen.inc new file mode 100644 index 0000000..390f6c7 --- /dev/null +++ b/themes/zen/zen-internals/template.zen.inc @@ -0,0 +1,41 @@ + + + +IE_STYLES; +} diff --git a/themes/zen/zen.info b/themes/zen/zen.info new file mode 100644 index 0000000..829b5aa --- /dev/null +++ b/themes/zen/zen.info @@ -0,0 +1,49 @@ +name = Zen +description = Zen sub-themes are the ultimate starting themes for Drupal 6. Read the online docs or the included README-FIRST.txt on how to create a theme with Zen. + +screenshot = zen-internals/screenshot.png + +core = 6.x +engine = phptemplate + +regions[sidebar_first] = First sidebar +regions[sidebar_second] = Second sidebar +regions[navigation] = Navigation bar +regions[highlight] = Highlighted content +regions[content_top] = Content top +regions[content_bottom] = Content bottom +regions[header] = Header +regions[footer] = Footer +regions[page_closure] = Page closure + +features[] = logo +features[] = name +features[] = slogan +features[] = mission +features[] = node_user_picture +features[] = comment_user_picture +features[] = search +features[] = favicon +features[] = primary_links +features[] = secondary_links + + ; Set the default settings to be used in theme-settings.php +settings[zen_block_editing] = 1 +settings[zen_breadcrumb] = yes +settings[zen_breadcrumb_separator] = ' › ' +settings[zen_breadcrumb_home] = 1 +settings[zen_breadcrumb_trailing] = 1 +settings[zen_breadcrumb_title] = 0 +settings[zen_layout] = zen-columns-liquid +settings[zen_rebuild_registry] = 0 +settings[zen_wireframes] = 0 + + ; Panels 3 layouts +plugins[panels][layouts] = layouts + +; Information added by drupal.org packaging script on 2011-04-05 +version = "6.x-2.1" +core = "6.x" +project = "zen" +datestamp = "1302017816" +