1
|
<?php
|
2
|
/**
|
3
|
* @package yoo_solar
|
4
|
* @author YOOtheme http://www.yootheme.com
|
5
|
* @copyright Copyright (C) YOOtheme GmbH
|
6
|
* @license http://www.gnu.org/licenses/gpl.html GNU/GPL
|
7
|
*/
|
8
|
|
9
|
// generate css for layout
|
10
|
$css[] = sprintf('.wrapper { max-width: %dpx; }', $this['config']->get('template_width'));
|
11
|
|
12
|
// generate css for fixed header
|
13
|
if ($this['config']->get('header_fixed')) {
|
14
|
$css[] = '#page.fixed-header #block-top-a { height: '.intval($this['config']->get('header_height')).'px; }';
|
15
|
$css[] = '#page.fixed-header #block-main { margin-top: '.intval($this['config']->get('header_height')).'px; }';
|
16
|
}
|
17
|
|
18
|
// generate css for 3-column-layout
|
19
|
$sidebar_a = '';
|
20
|
$sidebar_b = '';
|
21
|
$maininner_width = 100;
|
22
|
$sidebar_a_width = intval($this['config']->get('sidebar-a_width'));
|
23
|
$sidebar_b_width = intval($this['config']->get('sidebar-b_width'));
|
24
|
$sidebar_classes = "";
|
25
|
$rtl = $this['config']->get('direction') == 'rtl';
|
26
|
$body_config = array();
|
27
|
|
28
|
// set widths
|
29
|
if ($this['modules']->count('sidebar-a')) {
|
30
|
$sidebar_a = $this['config']->get('sidebar-a');
|
31
|
$maininner_width -= $sidebar_a_width;
|
32
|
$css[] = sprintf('#sidebar-a { width: %d%%; }', $sidebar_a_width);
|
33
|
}
|
34
|
|
35
|
if ($this['modules']->count('sidebar-b')) {
|
36
|
$sidebar_b = $this['config']->get('sidebar-b');
|
37
|
$maininner_width -= $sidebar_b_width;
|
38
|
$css[] = sprintf('#sidebar-b { width: %d%%; }', $sidebar_b_width);
|
39
|
}
|
40
|
|
41
|
$css[] = sprintf('#maininner { width: %d%%; }', $maininner_width);
|
42
|
|
43
|
// all sidebars right
|
44
|
if (($sidebar_a == 'right' || !$sidebar_a) && ($sidebar_b == 'right' || !$sidebar_b)) {
|
45
|
$sidebar_classes .= ($sidebar_a) ? 'sidebar-a-right ' : '';
|
46
|
$sidebar_classes .= ($sidebar_b) ? 'sidebar-b-right ' : '';
|
47
|
|
48
|
// all sidebars left
|
49
|
} elseif (($sidebar_a == 'left' || !$sidebar_a) && ($sidebar_b == 'left' || !$sidebar_b)) {
|
50
|
$sidebar_classes .= ($sidebar_a) ? 'sidebar-a-left ' : '';
|
51
|
$sidebar_classes .= ($sidebar_b) ? 'sidebar-b-left ' : '';
|
52
|
$css[] = sprintf('#maininner { float: %s; }', $rtl ? 'left' : 'right');
|
53
|
|
54
|
// sidebar-a left and sidebar-b right
|
55
|
} elseif ($sidebar_a == 'left') {
|
56
|
$sidebar_classes .= 'sidebar-a-left sidebar-b-right ';
|
57
|
$css[] = '#maininner, #sidebar-a { position: relative; }';
|
58
|
$css[] = sprintf('#maininner { %s: %d%%; }', $rtl ? 'right' : 'left', $sidebar_a_width);
|
59
|
$css[] = sprintf('#sidebar-a { %s: -%d%%; }', $rtl ? 'right' : 'left', $maininner_width);
|
60
|
|
61
|
// sidebar-b left and sidebar-a right
|
62
|
} elseif ($sidebar_b == 'left') {
|
63
|
$sidebar_classes .= 'sidebar-a-right sidebar-b-left ';
|
64
|
$css[] = '#maininner, #sidebar-a, #sidebar-b { position: relative; }';
|
65
|
$css[] = sprintf('#maininner, #sidebar-a { %s: %d%%; }', $rtl ? 'right' : 'left', $sidebar_b_width);
|
66
|
$css[] = sprintf('#sidebar-b { %s: -%d%%; }', $rtl ? 'right' : 'left', $maininner_width + $sidebar_a_width);
|
67
|
}
|
68
|
|
69
|
// number of sidebars
|
70
|
if ($sidebar_a && $sidebar_b) {
|
71
|
$sidebar_classes .= 'sidebars-2 ';
|
72
|
} elseif ($sidebar_a || $sidebar_b) {
|
73
|
$sidebar_classes .= 'sidebars-1 ';
|
74
|
}
|
75
|
|
76
|
// generate css for dropdown menu
|
77
|
foreach (array(1 => '.dropdown', 2 => '.columns2', 3 => '.columns3', 4 => '.columns4') as $i => $class) {
|
78
|
$css[] = sprintf('#menu %s { width: %dpx; }', $class, $i * intval($this['config']->get('menu_width')));
|
79
|
}
|
80
|
|
81
|
// load css
|
82
|
$this['asset']->addFile('css', 'css:base.css');
|
83
|
$this['asset']->addFile('css', 'css:layout.css');
|
84
|
$this['asset']->addFile('css', 'css:menus.css');
|
85
|
$this['asset']->addString('css', implode("\n", $css));
|
86
|
$this['asset']->addFile('css', 'css:modules.css');
|
87
|
$this['asset']->addFile('css', 'css:tools.css');
|
88
|
$this['asset']->addFile('css', 'css:system.css');
|
89
|
$this['asset']->addFile('css', 'css:extensions.css');
|
90
|
$this['asset']->addFile('css', 'css:custom.css');
|
91
|
if ($this['config']->get('animation') == '1') $this['asset']->addFile('css', 'css:animation.css');
|
92
|
if (($texture = $this['config']->get('texture')) && $this['path']->path("css:/texture/$texture.css")) { $this['asset']->addFile('css', "css:/texture/$texture.css"); }
|
93
|
if (($color = $this['config']->get('color')) && $this['path']->path("css:/color/$color.css")) { $this['asset']->addFile('css', "css:/color/$color.css"); }
|
94
|
if (($font = $this['config']->get('font1')) && $this['path']->path("css:/font1/$font.css")) { $this['asset']->addFile('css', "css:/font1/$font.css"); }
|
95
|
if (($font = $this['config']->get('font2')) && $this['path']->path("css:/font2/$font.css")) { $this['asset']->addFile('css', "css:/font2/$font.css"); }
|
96
|
if (($font = $this['config']->get('font3')) && $this['path']->path("css:/font3/$font.css")) { $this['asset']->addFile('css', "css:/font3/$font.css"); }
|
97
|
$this['asset']->addFile('css', 'css:style.css');
|
98
|
if ($this['config']->get('direction') == 'rtl') {
|
99
|
$this['asset']->addFile('css', 'css:rtl.css');
|
100
|
if (($color = $this['config']->get('color')) && $this['path']->path("css:/color/$color-rtl.css")) { $this['asset']->addFile('css', "css:/color/$color-rtl.css"); }
|
101
|
}
|
102
|
$this['asset']->addFile('css', 'css:responsive.css');
|
103
|
$this['asset']->addFile('css', 'css:print.css');
|
104
|
|
105
|
// load fonts
|
106
|
$http = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') ? 'https' : 'http';
|
107
|
|
108
|
$fonts = array(
|
109
|
'droidsans' => 'template:fonts/droidsans.css',
|
110
|
'opensans' => 'template:fonts/opensans.css',
|
111
|
'yanonekaffeesatz' => 'template:fonts/yanonekaffeesatz.css',
|
112
|
'mavenpro' => 'template:fonts/mavenpro.css',
|
113
|
'kreon' => 'template:fonts/kreon.css',
|
114
|
'patuaone' => 'template:fonts/patuaone.css',
|
115
|
'robotoslab'=> 'template:fonts/robotoslab.css',
|
116
|
'robotoslabweb'=> 'template:fonts/robotoslabweb.css',
|
117
|
'robotocondensed'=> 'template:fonts/robotocondensed.css',
|
118
|
'opensanslightcond'=> 'template:fonts/opensanslightcond.css',
|
119
|
'ubuntucondensed'=> 'template:fonts/ubuntucondensed.css');
|
120
|
|
121
|
|
122
|
|
123
|
foreach (array_unique(array($this['config']->get('font1'), $this['config']->get('font2'), $this['config']->get('font3'))) as $font) {
|
124
|
if (isset($fonts[$font])) {
|
125
|
$this['asset']->addFile('css', $fonts[$font]);
|
126
|
}
|
127
|
}
|
128
|
|
129
|
// set body css classes
|
130
|
$body_classes = $sidebar_classes.' ';
|
131
|
$body_classes .= $this['system']->isBlog() ? 'isblog ' : 'noblog ';
|
132
|
$body_classes .= $this['config']->get('page_class');
|
133
|
|
134
|
// set fixed header body css class
|
135
|
if ($this['config']->get('header_fixed', 0)) {
|
136
|
$body_classes .= ($this['config']->get('header_fixed', 0)) ? ' fixed-header ' : '';
|
137
|
}
|
138
|
|
139
|
// check for toolbar
|
140
|
if ($this['modules']->count('toolbar-l + toolbar-r') || $this['config']->get('date')) {
|
141
|
$body_classes .= ' fixed-toolbar ';
|
142
|
}
|
143
|
|
144
|
$this['config']->set('body_classes', $body_classes);
|
145
|
|
146
|
// add social buttons
|
147
|
$body_config['twitter'] = (int) $this['config']->get('twitter', 0);
|
148
|
$body_config['plusone'] = (int) $this['config']->get('plusone', 0);
|
149
|
$body_config['facebook'] = (int) $this['config']->get('facebook', 0);
|
150
|
|
151
|
$this['config']->set('body_config', json_encode($body_config));
|
152
|
|
153
|
// add javascripts
|
154
|
$this['asset']->addFile('js', 'js:warp.js');
|
155
|
$this['asset']->addFile('js', 'js:responsive.js');
|
156
|
$this['asset']->addFile('js', 'js:accordionmenu.js');
|
157
|
$this['asset']->addFile('js', 'js:dropdownmenu.js');
|
158
|
|
159
|
if ($this['config']->get('fp_grid_status', 1)) {
|
160
|
$this['asset']->addFile('js', 'js:jquery.gridalicious.js');
|
161
|
}
|
162
|
|
163
|
$this['asset']->addFile('js', 'js:template.js');
|
164
|
|
165
|
// internet explorer
|
166
|
if ($this['useragent']->browser() == 'msie') {
|
167
|
|
168
|
// add conditional comments
|
169
|
$head[] = sprintf('<!--[if lte IE 8]><script src="%s"></script><![endif]-->', $this['path']->url('js:html5.js'));
|
170
|
$head[] = sprintf('<!--[if IE 8]><link rel="stylesheet" href="%s" /><![endif]-->', $this['path']->url('css:ie8.css'));
|
171
|
|
172
|
}
|
173
|
|
174
|
// add $head
|
175
|
if (isset($head)) {
|
176
|
$this['template']->set('head', implode("\n", $head));
|
177
|
}
|