-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy paththeme-settings.php
More file actions
130 lines (127 loc) · 6.38 KB
/
Copy paththeme-settings.php
File metadata and controls
130 lines (127 loc) · 6.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
<?php
/**
* Implements hook_form_system_theme_settings_alter() function.
*
* @param $form
* Nested array of form elements that comprise the form.
* @param $form_state
* A keyed array containing the current state of the form.
*/
function zen_form_system_theme_settings_alter(&$form, $form_state, $form_id = NULL) {
// Work-around for a core bug affecting admin themes. See issue #943212.
if (isset($form_id)) {
return;
}
// Create the form using Forms API
$form['breadcrumb'] = array(
'#type' => 'fieldset',
'#title' => t('Breadcrumb settings'),
);
$form['breadcrumb']['zen_breadcrumb'] = array(
'#type' => 'select',
'#title' => t('Display breadcrumb'),
'#default_value' => theme_get_setting('zen_breadcrumb'),
'#options' => array(
'yes' => t('Yes'),
'admin' => t('Only in admin section'),
'no' => t('No'),
),
);
$form['breadcrumb']['breadcrumb_options'] = array(
'#type' => 'container',
'#states' => array(
'invisible' => array(
':input[name="zen_breadcrumb"]' => array('value' => 'no'),
),
),
);
$form['breadcrumb']['breadcrumb_options']['zen_breadcrumb_separator'] = array(
'#type' => 'textfield',
'#title' => t('Breadcrumb separator'),
'#description' => t('Text only. Don’t forget to include spaces.'),
'#default_value' => theme_get_setting('zen_breadcrumb_separator'),
'#size' => 5,
'#maxlength' => 10,
);
$form['breadcrumb']['breadcrumb_options']['zen_breadcrumb_home'] = array(
'#type' => 'checkbox',
'#title' => t('Show home page link in breadcrumb'),
'#default_value' => theme_get_setting('zen_breadcrumb_home'),
);
$form['breadcrumb']['breadcrumb_options']['zen_breadcrumb_trailing'] = array(
'#type' => 'checkbox',
'#title' => t('Append a separator to the end of the breadcrumb'),
'#default_value' => theme_get_setting('zen_breadcrumb_trailing'),
'#description' => t('Useful when the breadcrumb is placed just before the title.'),
'#states' => array(
'disabled' => array(
':input[name="zen_breadcrumb_title"]' => array('checked' => TRUE),
),
'unchecked' => array(
':input[name="zen_breadcrumb_title"]' => array('checked' => TRUE),
),
),
);
$form['breadcrumb']['breadcrumb_options']['zen_breadcrumb_title'] = array(
'#type' => 'checkbox',
'#title' => t('Append the content title to the end of the breadcrumb'),
'#default_value' => theme_get_setting('zen_breadcrumb_title'),
'#description' => t('Useful when the breadcrumb is not placed just before the title.'),
);
$form['support'] = array(
'#type' => 'fieldset',
'#title' => t('Accessibility and support settings'),
);
// Only toggle the layout for the main Zen theme.
if ($form['var']['#value'] == 'theme_zen_settings') {
$form['support']['zen_layout'] = array(
'#type' => 'radios',
'#title' => t('Layout'),
'#options' => array(
'zen-responsive-sidebars' => t('Responsive sidebar layout') . ' <small>(layouts/responsive-sidebars.css)</small>',
'zen-fixed-width' => t('Fixed width layout') . ' <small>(layouts/fixed-width.css)</small>',
),
'#default_value' => theme_get_setting('zen_layout'),
);
}
$form['support']['zen_skip_link_anchor'] = array(
'#type' => 'textfield',
'#title' => t('Anchor ID for the “skip link”'),
'#default_value' => theme_get_setting('zen_skip_link_anchor'),
'#field_prefix' => '#',
'#description' => t('Specify the HTML ID of the element that the accessible-but-hidden “skip link” should link to. (<a href="!link">Read more about skip links</a>.)', array('!link' => 'http://drupal.org/node/467976')),
);
$form['support']['zen_skip_link_text'] = array(
'#type' => 'textfield',
'#title' => t('Text for the “skip link”'),
'#default_value' => theme_get_setting('zen_skip_link_text'),
'#description' => t('For example: <em>Jump to navigation</em>, <em>Skip to content</em>'),
);
$form['support']['zen_html5_respond_meta'] = array(
'#type' => 'checkboxes',
'#title' => t('Add HTML5 and responsive scripts and meta tags to every page.'),
'#default_value' => theme_get_setting('zen_html5_respond_meta'),
'#options' => array(
'respond' => t('Add Respond.js JavaScript to add basic CSS3 media query support to IE 6-8.'),
'html5' => t('Add HTML5 shim JavaScript to add support to IE 6-8.'),
'meta' => t('Add meta tags to support responsive design on mobile devices.'),
),
'#description' => t('IE 6-8 require a JavaScript polyfill solution to add basic support of HTML5 and CSS3 media queries. If you prefer to use another polyfill solution, such as <a href="!link">Modernizr</a>, you can disable these options. Respond.js only works if <a href="@url">Aggregate CSS</a> is enabled. Mobile devices require a few meta tags for responsive designs.', array('!link' => 'http://www.modernizr.com/', '@url' => url('admin/config/development/performance'))),
);
$form['themedev'] = array(
'#type' => 'fieldset',
'#title' => t('Theme development settings'),
);
$form['themedev']['zen_rebuild_registry'] = array(
'#type' => 'checkbox',
'#title' => t('Rebuild theme registry on every page.'),
'#default_value' => theme_get_setting('zen_rebuild_registry'),
'#description' => t('During theme development, it can be very useful to continuously <a href="!link">rebuild the theme registry</a>. WARNING: this is a huge performance penalty and must be turned off on production websites.', array('!link' => 'http://drupal.org/node/173880#theme-registry')),
);
$form['themedev']['zen_wireframes'] = array(
'#type' => 'checkbox',
'#title' => t('Add wireframes around main layout elements'),
'#default_value' => theme_get_setting('zen_wireframes'),
'#description' => t('<a href="!link">Wireframes</a> are useful when prototyping a website.', array('!link' => 'http://www.boxesandarrows.com/view/html_wireframes_and_prototypes_all_gain_and_no_pain')),
);
}