Version Description
- Initial Commit
=
Download this release
Release Info
Developer | seedprod |
Plugin | Coming Soon Page & Maintenance Mode by SeedProd |
Version | 4.0.0 |
Comparing to | |
See all releases |
Version 4.0.0
- LICENSE.txt +281 -0
- README.txt +114 -0
- coming-soon.php +73 -0
- framework/field-types/checkbox.php +14 -0
- framework/field-types/color.php +14 -0
- framework/field-types/customsocialfollow.php +40 -0
- framework/field-types/date.php +32 -0
- framework/field-types/daterange.php +46 -0
- framework/field-types/export.php +31 -0
- framework/field-types/import.php +25 -0
- framework/field-types/js/color.js +6 -0
- framework/field-types/js/upload.js +31 -0
- framework/field-types/multiselect.php +18 -0
- framework/field-types/password.php +9 -0
- framework/field-types/radio.php +9 -0
- framework/field-types/select.php +22 -0
- framework/field-types/text.php +7 -0
- framework/field-types/textarea.php +9 -0
- framework/field-types/textbox.php +9 -0
- framework/field-types/upload.php +15 -0
- framework/field-types/wpeditor.php +15 -0
- framework/framework.php +525 -0
- framework/get-settings.php +20 -0
- framework/settings-scripts.js +8 -0
- framework/settings-style.css +9 -0
- framework/validations/color.php +15 -0
- framework/validations/email.php +11 -0
- framework/validations/escurlraw.php +12 -0
- framework/validations/number.php +13 -0
- framework/validations/required.php +11 -0
- inc/adminbar-style.css +8 -0
- inc/class-seed-csp4.php +217 -0
- inc/config-settings.php +381 -0
- inc/default-settings.php +6 -0
- languages/seedprod.pot +1643 -0
- lib/seed_csp4_lessc.inc.php +3359 -0
- themes/default/bootstrap/css/bootstrap.css +5958 -0
- themes/default/bootstrap/css/bootstrap.min.css +1 -0
- themes/default/bootstrap/js/bootstrap.js +2006 -0
- themes/default/bootstrap/js/bootstrap.min.js +7 -0
- themes/default/functions.php +291 -0
- themes/default/images/ajax-loader.gif +0 -0
- themes/default/images/seedprod-credit.png +0 -0
- themes/default/index.php +26 -0
- themes/default/js/jquery.fitvids.js +74 -0
- themes/default/js/modernizr.min.js +4 -0
- themes/default/js/script.js +12 -0
- themes/default/rtl.css +18 -0
- themes/default/style.css +141 -0
- themes/index.php +3 -0
LICENSE.txt
ADDED
@@ -0,0 +1,281 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
GNU GENERAL PUBLIC LICENSE
|
2 |
+
Version 2, June 1991
|
3 |
+
|
4 |
+
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
5 |
+
51 Franklin St, Fifth Floor, Boston, MA 02110, USA
|
6 |
+
|
7 |
+
Everyone is permitted to copy and distribute verbatim copies
|
8 |
+
of this license document, but changing it is not allowed.
|
9 |
+
|
10 |
+
Preamble
|
11 |
+
|
12 |
+
The licenses for most software are designed to take away your
|
13 |
+
freedom to share and change it. By contrast, the GNU General Public
|
14 |
+
License is intended to guarantee your freedom to share and change free
|
15 |
+
software--to make sure the software is free for all its users. This
|
16 |
+
General Public License applies to most of the Free Software
|
17 |
+
Foundation's software and to any other program whose authors commit to
|
18 |
+
using it. (Some other Free Software Foundation software is covered by
|
19 |
+
the GNU Library General Public License instead.) You can apply it to
|
20 |
+
your programs, too.
|
21 |
+
|
22 |
+
When we speak of free software, we are referring to freedom, not
|
23 |
+
price. Our General Public Licenses are designed to make sure that you
|
24 |
+
have the freedom to distribute copies of free software (and charge for
|
25 |
+
this service if you wish), that you receive source code or can get it
|
26 |
+
if you want it, that you can change the software or use pieces of it
|
27 |
+
in new free programs; and that you know you can do these things.
|
28 |
+
|
29 |
+
To protect your rights, we need to make restrictions that forbid
|
30 |
+
anyone to deny you these rights or to ask you to surrender the rights.
|
31 |
+
These restrictions translate to certain responsibilities for you if you
|
32 |
+
distribute copies of the software, or if you modify it.
|
33 |
+
|
34 |
+
For example, if you distribute copies of such a program, whether
|
35 |
+
gratis or for a fee, you must give the recipients all the rights that
|
36 |
+
you have. You must make sure that they, too, receive or can get the
|
37 |
+
source code. And you must show them these terms so they know their
|
38 |
+
rights.
|
39 |
+
|
40 |
+
We protect your rights with two steps: (1) copyright the software, and
|
41 |
+
(2) offer you this license which gives you legal permission to copy,
|
42 |
+
distribute and/or modify the software.
|
43 |
+
|
44 |
+
Also, for each author's protection and ours, we want to make certain
|
45 |
+
that everyone understands that there is no warranty for this free
|
46 |
+
software. If the software is modified by someone else and passed on, we
|
47 |
+
want its recipients to know that what they have is not the original, so
|
48 |
+
that any problems introduced by others will not reflect on the original
|
49 |
+
authors' reputations.
|
50 |
+
|
51 |
+
Finally, any free program is threatened constantly by software
|
52 |
+
patents. We wish to avoid the danger that redistributors of a free
|
53 |
+
program will individually obtain patent licenses, in effect making the
|
54 |
+
program proprietary. To prevent this, we have made it clear that any
|
55 |
+
patent must be licensed for everyone's free use or not licensed at all.
|
56 |
+
|
57 |
+
The precise terms and conditions for copying, distribution and
|
58 |
+
modification follow.
|
59 |
+
|
60 |
+
GNU GENERAL PUBLIC LICENSE
|
61 |
+
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
62 |
+
|
63 |
+
0. This License applies to any program or other work which contains
|
64 |
+
a notice placed by the copyright holder saying it may be distributed
|
65 |
+
under the terms of this General Public License. The "Program", below,
|
66 |
+
refers to any such program or work, and a "work based on the Program"
|
67 |
+
means either the Program or any derivative work under copyright law:
|
68 |
+
that is to say, a work containing the Program or a portion of it,
|
69 |
+
either verbatim or with modifications and/or translated into another
|
70 |
+
language. (Hereinafter, translation is included without limitation in
|
71 |
+
the term "modification".) Each licensee is addressed as "you".
|
72 |
+
|
73 |
+
Activities other than copying, distribution and modification are not
|
74 |
+
covered by this License; they are outside its scope. The act of
|
75 |
+
running the Program is not restricted, and the output from the Program
|
76 |
+
is covered only if its contents constitute a work based on the
|
77 |
+
Program (independent of having been made by running the Program).
|
78 |
+
Whether that is true depends on what the Program does.
|
79 |
+
|
80 |
+
1. You may copy and distribute verbatim copies of the Program's
|
81 |
+
source code as you receive it, in any medium, provided that you
|
82 |
+
conspicuously and appropriately publish on each copy an appropriate
|
83 |
+
copyright notice and disclaimer of warranty; keep intact all the
|
84 |
+
notices that refer to this License and to the absence of any warranty;
|
85 |
+
and give any other recipients of the Program a copy of this License
|
86 |
+
along with the Program.
|
87 |
+
|
88 |
+
You may charge a fee for the physical act of transferring a copy, and
|
89 |
+
you may at your option offer warranty protection in exchange for a fee.
|
90 |
+
|
91 |
+
2. You may modify your copy or copies of the Program or any portion
|
92 |
+
of it, thus forming a work based on the Program, and copy and
|
93 |
+
distribute such modifications or work under the terms of Section 1
|
94 |
+
above, provided that you also meet all of these conditions:
|
95 |
+
|
96 |
+
a) You must cause the modified files to carry prominent notices
|
97 |
+
stating that you changed the files and the date of any change.
|
98 |
+
|
99 |
+
b) You must cause any work that you distribute or publish, that in
|
100 |
+
whole or in part contains or is derived from the Program or any
|
101 |
+
part thereof, to be licensed as a whole at no charge to all third
|
102 |
+
parties under the terms of this License.
|
103 |
+
|
104 |
+
c) If the modified program normally reads commands interactively
|
105 |
+
when run, you must cause it, when started running for such
|
106 |
+
interactive use in the most ordinary way, to print or display an
|
107 |
+
announcement including an appropriate copyright notice and a
|
108 |
+
notice that there is no warranty (or else, saying that you provide
|
109 |
+
a warranty) and that users may redistribute the program under
|
110 |
+
these conditions, and telling the user how to view a copy of this
|
111 |
+
License. (Exception: if the Program itself is interactive but
|
112 |
+
does not normally print such an announcement, your work based on
|
113 |
+
the Program is not required to print an announcement.)
|
114 |
+
|
115 |
+
These requirements apply to the modified work as a whole. If
|
116 |
+
identifiable sections of that work are not derived from the Program,
|
117 |
+
and can be reasonably considered independent and separate works in
|
118 |
+
themselves, then this License, and its terms, do not apply to those
|
119 |
+
sections when you distribute them as separate works. But when you
|
120 |
+
distribute the same sections as part of a whole which is a work based
|
121 |
+
on the Program, the distribution of the whole must be on the terms of
|
122 |
+
this License, whose permissions for other licensees extend to the
|
123 |
+
entire whole, and thus to each and every part regardless of who wrote it.
|
124 |
+
Thus, it is not the intent of this section to claim rights or contest
|
125 |
+
your rights to work written entirely by you; rather, the intent is to
|
126 |
+
exercise the right to control the distribution of derivative or
|
127 |
+
collective works based on the Program.
|
128 |
+
|
129 |
+
In addition, mere aggregation of another work not based on the Program
|
130 |
+
with the Program (or with a work based on the Program) on a volume of
|
131 |
+
a storage or distribution medium does not bring the other work under
|
132 |
+
the scope of this License.
|
133 |
+
|
134 |
+
3. You may copy and distribute the Program (or a work based on it,
|
135 |
+
under Section 2) in object code or executable form under the terms of
|
136 |
+
Sections 1 and 2 above provided that you also do one of the following:
|
137 |
+
|
138 |
+
a) Accompany it with the complete corresponding machine-readable
|
139 |
+
source code, which must be distributed under the terms of Sections
|
140 |
+
1 and 2 above on a medium customarily used for software interchange; or,
|
141 |
+
|
142 |
+
b) Accompany it with a written offer, valid for at least three
|
143 |
+
years, to give any third party, for a charge no more than your
|
144 |
+
cost of physically performing source distribution, a complete
|
145 |
+
machine-readable copy of the corresponding source code, to be
|
146 |
+
distributed under the terms of Sections 1 and 2 above on a medium
|
147 |
+
customarily used for software interchange; or,
|
148 |
+
|
149 |
+
c) Accompany it with the information you received as to the offer
|
150 |
+
to distribute corresponding source code. (This alternative is
|
151 |
+
allowed only for noncommercial distribution and only if you
|
152 |
+
received the program in object code or executable form with such
|
153 |
+
an offer, in accord with Subsection b above.)
|
154 |
+
|
155 |
+
The source code for a work means the preferred form of the work for
|
156 |
+
making modifications to it. For an executable work, complete source
|
157 |
+
code means all the source code for all modules it contains, plus any
|
158 |
+
associated interface definition files, plus the scripts used to
|
159 |
+
control compilation and installation of the executable. However, as a
|
160 |
+
special exception, the source code distributed need not include
|
161 |
+
anything that is normally distributed (in either source or binary
|
162 |
+
form) with the major components (compiler, kernel, and so on) of the
|
163 |
+
operating system on which the executable runs, unless that component
|
164 |
+
itself accompanies the executable.
|
165 |
+
|
166 |
+
If distribution of executable or object code is made by offering
|
167 |
+
access to copy from a designated place, then offering equivalent
|
168 |
+
access to copy the source code from the same place counts as
|
169 |
+
distribution of the source code, even though third parties are not
|
170 |
+
compelled to copy the source along with the object code.
|
171 |
+
|
172 |
+
4. You may not copy, modify, sublicense, or distribute the Program
|
173 |
+
except as expressly provided under this License. Any attempt
|
174 |
+
otherwise to copy, modify, sublicense or distribute the Program is
|
175 |
+
void, and will automatically terminate your rights under this License.
|
176 |
+
However, parties who have received copies, or rights, from you under
|
177 |
+
this License will not have their licenses terminated so long as such
|
178 |
+
parties remain in full compliance.
|
179 |
+
|
180 |
+
5. You are not required to accept this License, since you have not
|
181 |
+
signed it. However, nothing else grants you permission to modify or
|
182 |
+
distribute the Program or its derivative works. These actions are
|
183 |
+
prohibited by law if you do not accept this License. Therefore, by
|
184 |
+
modifying or distributing the Program (or any work based on the
|
185 |
+
Program), you indicate your acceptance of this License to do so, and
|
186 |
+
all its terms and conditions for copying, distributing or modifying
|
187 |
+
the Program or works based on it.
|
188 |
+
|
189 |
+
6. Each time you redistribute the Program (or any work based on the
|
190 |
+
Program), the recipient automatically receives a license from the
|
191 |
+
original licensor to copy, distribute or modify the Program subject to
|
192 |
+
these terms and conditions. You may not impose any further
|
193 |
+
restrictions on the recipients' exercise of the rights granted herein.
|
194 |
+
You are not responsible for enforcing compliance by third parties to
|
195 |
+
this License.
|
196 |
+
|
197 |
+
7. If, as a consequence of a court judgment or allegation of patent
|
198 |
+
infringement or for any other reason (not limited to patent issues),
|
199 |
+
conditions are imposed on you (whether by court order, agreement or
|
200 |
+
otherwise) that contradict the conditions of this License, they do not
|
201 |
+
excuse you from the conditions of this License. If you cannot
|
202 |
+
distribute so as to satisfy simultaneously your obligations under this
|
203 |
+
License and any other pertinent obligations, then as a consequence you
|
204 |
+
may not distribute the Program at all. For example, if a patent
|
205 |
+
license would not permit royalty-free redistribution of the Program by
|
206 |
+
all those who receive copies directly or indirectly through you, then
|
207 |
+
the only way you could satisfy both it and this License would be to
|
208 |
+
refrain entirely from distribution of the Program.
|
209 |
+
|
210 |
+
If any portion of this section is held invalid or unenforceable under
|
211 |
+
any particular circumstance, the balance of the section is intended to
|
212 |
+
apply and the section as a whole is intended to apply in other
|
213 |
+
circumstances.
|
214 |
+
|
215 |
+
It is not the purpose of this section to induce you to infringe any
|
216 |
+
patents or other property right claims or to contest validity of any
|
217 |
+
such claims; this section has the sole purpose of protecting the
|
218 |
+
integrity of the free software distribution system, which is
|
219 |
+
implemented by public license practices. Many people have made
|
220 |
+
generous contributions to the wide range of software distributed
|
221 |
+
through that system in reliance on consistent application of that
|
222 |
+
system; it is up to the author/donor to decide if he or she is willing
|
223 |
+
to distribute software through any other system and a licensee cannot
|
224 |
+
impose that choice.
|
225 |
+
|
226 |
+
This section is intended to make thoroughly clear what is believed to
|
227 |
+
be a consequence of the rest of this License.
|
228 |
+
|
229 |
+
8. If the distribution and/or use of the Program is restricted in
|
230 |
+
certain countries either by patents or by copyrighted interfaces, the
|
231 |
+
original copyright holder who places the Program under this License
|
232 |
+
may add an explicit geographical distribution limitation excluding
|
233 |
+
those countries, so that distribution is permitted only in or among
|
234 |
+
countries not thus excluded. In such case, this License incorporates
|
235 |
+
the limitation as if written in the body of this License.
|
236 |
+
|
237 |
+
9. The Free Software Foundation may publish revised and/or new versions
|
238 |
+
of the General Public License from time to time. Such new versions will
|
239 |
+
be similar in spirit to the present version, but may differ in detail to
|
240 |
+
address new problems or concerns.
|
241 |
+
|
242 |
+
Each version is given a distinguishing version number. If the Program
|
243 |
+
specifies a version number of this License which applies to it and "any
|
244 |
+
later version", you have the option of following the terms and conditions
|
245 |
+
either of that version or of any later version published by the Free
|
246 |
+
Software Foundation. If the Program does not specify a version number of
|
247 |
+
this License, you may choose any version ever published by the Free Software
|
248 |
+
Foundation.
|
249 |
+
|
250 |
+
10. If you wish to incorporate parts of the Program into other free
|
251 |
+
programs whose distribution conditions are different, write to the author
|
252 |
+
to ask for permission. For software which is copyrighted by the Free
|
253 |
+
Software Foundation, write to the Free Software Foundation; we sometimes
|
254 |
+
make exceptions for this. Our decision will be guided by the two goals
|
255 |
+
of preserving the free status of all derivatives of our free software and
|
256 |
+
of promoting the sharing and reuse of software generally.
|
257 |
+
|
258 |
+
NO WARRANTY
|
259 |
+
|
260 |
+
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
261 |
+
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
262 |
+
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
263 |
+
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
264 |
+
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
265 |
+
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
266 |
+
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
267 |
+
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
268 |
+
REPAIR OR CORRECTION.
|
269 |
+
|
270 |
+
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
271 |
+
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
272 |
+
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
273 |
+
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
274 |
+
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
275 |
+
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
276 |
+
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
277 |
+
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
278 |
+
POSSIBILITY OF SUCH DAMAGES.
|
279 |
+
|
280 |
+
END OF TERMS AND CONDITIONS
|
281 |
+
|
README.txt
ADDED
@@ -0,0 +1,114 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
=== Plugin Name ===
|
2 |
+
Contributors: seedprod, johnnytee
|
3 |
+
Donate link: http://www.seedprod.com
|
4 |
+
Tags: wordpress coming soon, wordpress under construction, wordpress maintenance mode, maintenance mode, coming soon, under construction, launch page, launch, maintenance, construction, offline, unavailable, newsletter, coming soon page, landing page
|
5 |
+
Requires at least: 3.5.1
|
6 |
+
Tested up to: 3.8.0
|
7 |
+
Stable tag: 4.0.0
|
8 |
+
License: GPLv2 or later
|
9 |
+
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
+
|
11 |
+
Coming Soon and Maintenance Mode pages in minutes.
|
12 |
+
|
13 |
+
== Description ==
|
14 |
+
|
15 |
+
Create simple Coming Soon and Maintenance Mode pages. Work on your site while visitors see a "Coming Soon" or "Maintenance Mode" page.
|
16 |
+
|
17 |
+
### Benefits, Features and Options:
|
18 |
+
|
19 |
+
* Works with any WordPress Theme
|
20 |
+
* Responsive
|
21 |
+
* Customize the Look and Feel
|
22 |
+
* Easily add Custom CSS and HTML
|
23 |
+
* Uses HTML5 & CSS3
|
24 |
+
* Translation Ready, i18n Support
|
25 |
+
* Multisite Support
|
26 |
+
* BuddyPress Support
|
27 |
+
* Uses WordPress Best Practices
|
28 |
+
|
29 |
+
### Pro Version Features:
|
30 |
+
|
31 |
+
* Works with any WordPress theme
|
32 |
+
* Visible only to non logged in users
|
33 |
+
* Secret link for your clients to view the upcoming website without logging in
|
34 |
+
* Search Engine Optimized with customizable meta tags
|
35 |
+
* Mobile Ready responsive design and layout
|
36 |
+
* Maintenance Mode with Automatic Screenshot
|
37 |
+
* Custom Look & Feel with no coding
|
38 |
+
* Integrated Google and Typekit fonts
|
39 |
+
* Full Browser Backgrounds option
|
40 |
+
* Option to capture first and last name
|
41 |
+
* Videos can be embedded in the description just be entering the URL
|
42 |
+
* Display an Incentive after Sign Up
|
43 |
+
* Social Profiles & Social Sharing Buttons
|
44 |
+
* MailChimp, AWeber, Get Response, Constant Contact and Campaign Monitor integration
|
45 |
+
* Gravity Forms integration to collect info from visitors
|
46 |
+
* Built-in referral system to keep track referrered subscribers and how many of those convert
|
47 |
+
* Store Emails in the WordPress Database to export to any email service
|
48 |
+
* Progress bar with automatic completion calculation
|
49 |
+
* Google Analytics Support
|
50 |
+
* Automatic Easy Updates
|
51 |
+
* Shortcode Support
|
52 |
+
* Option to enable template responsiveness
|
53 |
+
* Option to control access by IP
|
54 |
+
* Custom Footer Branding
|
55 |
+
* Custom Favicon
|
56 |
+
* Custom CSS Support
|
57 |
+
* Import/Export Settings for backup or re-use purposes
|
58 |
+
* Multisite Support
|
59 |
+
* HTML5 & CSS3 which degrades gracefully for older browsers
|
60 |
+
* Translation Ready i18n Support
|
61 |
+
* Option to exclude specific URLs from displaying Coming Soon page
|
62 |
+
* Plus lots more...
|
63 |
+
|
64 |
+
* [Upgrade to the Pro Version Now!»](http://www.seedprod.com/?utm_source=wordpress.org&utm_medium=link&utm_campaign=coming-soon-from-wordpress.org)
|
65 |
+
|
66 |
+
|
67 |
+
== Installation ==
|
68 |
+
|
69 |
+
= Using The WordPress Dashboard =
|
70 |
+
|
71 |
+
1. Navigate to the 'Add New' in the plugins dashboard
|
72 |
+
2. Search for 'Coming Soon'
|
73 |
+
3. Click 'Install Now'
|
74 |
+
4. Activate the plugin on the Plugin dashboard
|
75 |
+
|
76 |
+
= Uploading in WordPress Dashboard =
|
77 |
+
|
78 |
+
1. Navigate to the 'Add New' in the plugins dashboard
|
79 |
+
2. Navigate to the 'Upload' area
|
80 |
+
3. Select `coming-soon.zip` from your computer
|
81 |
+
4. Click 'Install Now'
|
82 |
+
5. Activate the plugin in the Plugin dashboard
|
83 |
+
|
84 |
+
= Using FTP =
|
85 |
+
|
86 |
+
1. Download `coming-soon.zip`
|
87 |
+
2. Extract the `coming-soon` directory to your computer
|
88 |
+
3. Upload the `coming-soon` directory to the `/wp-content/plugins/` directory
|
89 |
+
4. Activate the plugin in the Plugin dashboard
|
90 |
+
|
91 |
+
|
92 |
+
== Frequently Asked Questions ==
|
93 |
+
|
94 |
+
= Disabled Coming Soon Plugin and it still shows =
|
95 |
+
|
96 |
+
This is always a caching issue. Go to the caching plugin's setting page and clear the cache.
|
97 |
+
|
98 |
+
== Screenshots ==
|
99 |
+
|
100 |
+
1. Coming Soon Page Example
|
101 |
+
2. Maintenance Mode Example
|
102 |
+
3. Content Page
|
103 |
+
4. Design Page
|
104 |
+
|
105 |
+
|
106 |
+
== Changelog ==
|
107 |
+
|
108 |
+
= 4.0.0 =
|
109 |
+
* Initial Commit
|
110 |
+
|
111 |
+
== Upgrade Notice ==
|
112 |
+
|
113 |
+
= 4.0.0 =
|
114 |
+
Initial Commit
|
coming-soon.php
ADDED
@@ -0,0 +1,73 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Plugin Name: Coming Soon
|
4 |
+
* Plugin URI: http://www.seedprod.com
|
5 |
+
* Description: Coming Soon, Maintenance Mode pages in minutes
|
6 |
+
* Version: 4.0.0
|
7 |
+
* Author: SeedProd
|
8 |
+
* Author URI: http://www.seedprod.com
|
9 |
+
* Text Domain: coming-soon
|
10 |
+
* License: GPL-2.0+
|
11 |
+
* License URI: http://www.gnu.org/licenses/gpl-2.0.txt
|
12 |
+
* Domain Path: /languages
|
13 |
+
* Copyright 2012 John Turner (email : john@seedprod.com, twitter : @johnturner)
|
14 |
+
*/
|
15 |
+
|
16 |
+
/**
|
17 |
+
* Default Constants
|
18 |
+
*/
|
19 |
+
define( 'SEED_CSP4_SHORTNAME', 'seed_csp4' ); // Used to reference namespace functions.
|
20 |
+
define( 'SEED_CSP4_SLUG', 'coming-soon/coming-soon.php' ); // Used for settings link.
|
21 |
+
define( 'SEED_CSP4_TEXTDOMAIN', 'coming-soon' ); // Your textdomain
|
22 |
+
define( 'SEED_CSP4_PLUGIN_NAME', __( 'Coming Soon', 'coming-soon' ) ); // Plugin Name shows up on the admin settings screen.
|
23 |
+
define( 'SEED_CSP4_VERSION', '4.0.0'); // Plugin Version Number. Recommend you use Semantic Versioning http://semver.org/
|
24 |
+
define( 'SEED_CSP4_PLUGIN_PATH', plugin_dir_path( __FILE__ ) ); // Example output: /Applications/MAMP/htdocs/wordpress/wp-content/plugins/seed_csp4/
|
25 |
+
define( 'SEED_CSP4_PLUGIN_URL', plugin_dir_url( __FILE__ ) ); // Example output: http://localhost:8888/wordpress/wp-content/plugins/seed_csp4/
|
26 |
+
define( 'SEED_CSP4_TABLENAME', 'seed_csp4_subscribers' );
|
27 |
+
|
28 |
+
|
29 |
+
/**
|
30 |
+
* Load Translation
|
31 |
+
*/
|
32 |
+
function seed_csp4_load_textdomain() {
|
33 |
+
load_plugin_textdomain( 'coming-soon', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' );
|
34 |
+
}
|
35 |
+
add_action('plugins_loaded', 'seed_csp4_load_textdomain');
|
36 |
+
|
37 |
+
|
38 |
+
/**
|
39 |
+
* Upon activation of the plugin, see if we are running the required version and deploy theme in defined.
|
40 |
+
*
|
41 |
+
* @since 0.1.0
|
42 |
+
*/
|
43 |
+
function seed_csp4_activation(){
|
44 |
+
require_once( 'inc/default-settings.php' );
|
45 |
+
add_option('seed_csp4_settings_content',unserialize($seed_csp4_settings_deafults['seed_csp4_settings_content']));
|
46 |
+
add_option('seed_csp4_settings_design',unserialize($seed_csp4_settings_deafults['seed_csp4_settings_design']));
|
47 |
+
add_option('seed_csp4_settings_advanced',unserialize($seed_csp4_settings_deafults['seed_csp4_settings_advanced']));
|
48 |
+
}
|
49 |
+
register_activation_hook( __FILE__, 'seed_csp4_activation' );
|
50 |
+
|
51 |
+
|
52 |
+
/***************************************************************************
|
53 |
+
* Load Required Files
|
54 |
+
***************************************************************************/
|
55 |
+
|
56 |
+
// Global
|
57 |
+
global $seed_csp4_settings;
|
58 |
+
|
59 |
+
require_once( 'framework/get-settings.php' );
|
60 |
+
$seed_csp4_settings = seed_csp4_get_settings();
|
61 |
+
|
62 |
+
require_once( 'inc/class-seed-csp4.php' );
|
63 |
+
add_action( 'plugins_loaded', array( 'SEED_CSP4', 'get_instance' ) );
|
64 |
+
|
65 |
+
if( is_admin() ) {
|
66 |
+
// Admin Only
|
67 |
+
require_once( 'inc/config-settings.php' );
|
68 |
+
require_once( 'framework/framework.php' );
|
69 |
+
add_action( 'plugins_loaded', array( 'SEED_CSP4_ADMIN', 'get_instance' ) );
|
70 |
+
} else {
|
71 |
+
// Public only
|
72 |
+
|
73 |
+
}
|
framework/field-types/checkbox.php
ADDED
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
|
7 |
+
$c = 0;
|
8 |
+
if(empty($options[ $id ]) || !is_array($options[ $id ])){
|
9 |
+
$options[ $id ] = array();
|
10 |
+
}
|
11 |
+
foreach ( $option_values as $k => $v ) {
|
12 |
+
echo "<input class='$id' type='checkbox' name='{$setting_id}[$id][]' value='$k' " . ( in_array( $k, ( empty( $options[ $id ] ) ? array( ) : $options[ $id ] ) ) ? 'checked' : '' ) . " /> $v<br/>";
|
13 |
+
$c++;
|
14 |
+
}
|
framework/field-types/color.php
ADDED
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
if(!isset($options[ $id ])){
|
7 |
+
$options[ $id ] = '';
|
8 |
+
}
|
9 |
+
|
10 |
+
echo "<input id='$id' class='pickcolor-field' type='text' name='{$setting_id}[$id]' value='" . esc_attr( $options[ $id ] ) . "' style='background-color:" . ( empty( $options[ $id ] ) ? $default_value : $options[ $id ] ) . ";' />";
|
11 |
+
|
12 |
+
wp_enqueue_script( 'seed_csp4-color-js', SEED_CSP4_PLUGIN_URL . 'framework/field-types/js/color.js', array(
|
13 |
+
'wp-color-picker'
|
14 |
+
),false, true );
|
framework/field-types/customsocialfollow.php
ADDED
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
|
7 |
+
$profiles = array(
|
8 |
+
'Facebook',
|
9 |
+
'Twitter',
|
10 |
+
'RSS',
|
11 |
+
'Email',
|
12 |
+
);
|
13 |
+
|
14 |
+
if(!empty($options[$id])){
|
15 |
+
$profiles = array();
|
16 |
+
foreach($options[$id] as $k=>$v){
|
17 |
+
$profiles[] = $k;
|
18 |
+
}
|
19 |
+
|
20 |
+
}
|
21 |
+
|
22 |
+
?>
|
23 |
+
<small class='description'><?php _e("Enter your social profile url's. Drag & Drop the icons to reorder. Remember to save your changes. <a href='https://seedprod.zendesk.com/entries/21778652-adding-custom-icons' target='_blank'>Learn how to add your own custom icons</a>.",'coming-soon'); ?></small>
|
24 |
+
<ul id="seed-csp4-social-profiles">
|
25 |
+
<?php foreach($profiles as $k=>$v){ ?>
|
26 |
+
<li class="ui-state-default"><img style="width:24px;vertical-align:middle;cursor:move" src="<?php echo SEED_CSP4_PLUGIN_URL.'themes/default/images/icons1/'.strtolower($v).'.png'; ?>"> <?php echo "<input autocomplete='off' placeholder='$v' class='regular-text' name='{$setting_id}[$id][$v]' type='text' value='" . esc_attr( $options[ $id ][$v] ) . "' />"; ?></li>
|
27 |
+
<?php } ?>
|
28 |
+
</ul>
|
29 |
+
<style>
|
30 |
+
#seed-csp4-social-profiles .ui-state-highlight { height: 1.5em; line-height: 1.2em; border:1px dotted #ccc; width:325px }
|
31 |
+
</style>
|
32 |
+
<script>
|
33 |
+
|
34 |
+
jQuery(document).ready(function($){
|
35 |
+
$( "#seed-csp4-social-profiles" ).sortable({
|
36 |
+
placeholder: "ui-state-highlight"
|
37 |
+
});
|
38 |
+
//$( "#seed-csp4-social-profiles" ).disableSelection();
|
39 |
+
});
|
40 |
+
</script>
|
framework/field-types/date.php
ADDED
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
|
7 |
+
$option_values = array(
|
8 |
+
'01'=>__('01-Jan','coming-soon'),
|
9 |
+
'02'=>__('02-Feb','coming-soon'),
|
10 |
+
'03'=>__('03-Mar','coming-soon'),
|
11 |
+
'04'=>__('04-Apr','coming-soon'),
|
12 |
+
'05'=>__('05-May','coming-soon'),
|
13 |
+
'06'=>__('06-Jun','coming-soon'),
|
14 |
+
'07'=>__('07-Jul','coming-soon'),
|
15 |
+
'08'=>__('08-Aug','coming-soon'),
|
16 |
+
'09'=>__('09-Sep','coming-soon'),
|
17 |
+
'10'=>__('10-Oct','coming-soon'),
|
18 |
+
'11'=>__('11-Nov','coming-soon'),
|
19 |
+
'12'=>__('12-Dec','coming-soon'),
|
20 |
+
);
|
21 |
+
|
22 |
+
|
23 |
+
echo "<select id='mm' name='{$setting_id}[$id][month]'>";
|
24 |
+
foreach ( $option_values as $k => $v ) {
|
25 |
+
echo "<option value='$k' " . selected( $options[ $id ]['month'], $k, false ) . ">$v</option>";
|
26 |
+
}
|
27 |
+
echo "</select>";
|
28 |
+
|
29 |
+
echo "<input id='jj' class='small-text' name='{$setting_id}[$id][day]' placeholder='".__('day','coming-soon')."' type='text' value='" . esc_attr( $options[ $id ]['day'] ) . "' />";
|
30 |
+
|
31 |
+
echo ',';
|
32 |
+
echo "<input id='aa' class='small-text' name='{$setting_id}[$id][year]' placeholder='".__('year','coming-soon')."' type='text' value='" . esc_attr( $options[ $id ]['year'] ) . "' /><br>";
|
framework/field-types/daterange.php
ADDED
@@ -0,0 +1,46 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
|
7 |
+
$option_values = array(
|
8 |
+
'01'=>__('01-Jan','coming-soon'),
|
9 |
+
'02'=>__('02-Feb','coming-soon'),
|
10 |
+
'03'=>__('03-Mar','coming-soon'),
|
11 |
+
'04'=>__('04-Apr','coming-soon'),
|
12 |
+
'05'=>__('05-May','coming-soon'),
|
13 |
+
'06'=>__('06-Jun','coming-soon'),
|
14 |
+
'07'=>__('07-Jul','coming-soon'),
|
15 |
+
'08'=>__('08-Aug','coming-soon'),
|
16 |
+
'09'=>__('09-Sep','coming-soon'),
|
17 |
+
'10'=>__('10-Oct','coming-soon'),
|
18 |
+
'11'=>__('11-Nov','coming-soon'),
|
19 |
+
'12'=>__('12-Dec','coming-soon'),
|
20 |
+
);
|
21 |
+
|
22 |
+
_e('Start Date', 'coming-soon');
|
23 |
+
echo "<select id='mm' name='{$setting_id}[$id][start_month]'>";
|
24 |
+
foreach ( $option_values as $k => $v ) {
|
25 |
+
echo "<option value='$k' " . selected( $options[ $id ]['start_month'], $k, false ) . ">$v</option>";
|
26 |
+
}
|
27 |
+
echo "</select>";
|
28 |
+
|
29 |
+
echo "<input id='jj' class='small-text' placeholder='".__('day','coming-soon')."' name='{$setting_id}[$id][start_day]' type='text' value='" . esc_attr( $options[ $id ]['start_day'] ) . "' />";
|
30 |
+
|
31 |
+
echo ',';
|
32 |
+
echo "<input id='aa' class='small-text' placeholder='".__('year','coming-soon')."' name='{$setting_id}[$id][start_year]' type='text' value='" . esc_attr( $options[ $id ]['start_year'] ) . "' />";
|
33 |
+
|
34 |
+
echo ' ';
|
35 |
+
_e('End Date', 'coming-soon');
|
36 |
+
echo "<select id='mm' name='{$setting_id}[$id][end_month]'>";
|
37 |
+
foreach ( $option_values as $k => $v ) {
|
38 |
+
echo "<option value='$k' " . selected( $options[ $id ]['end_month'], $k, false ) . ">$v</option>";
|
39 |
+
}
|
40 |
+
echo "</select>";
|
41 |
+
|
42 |
+
echo "<input id='jj' class='small-text' placeholder='".__('day','coming-soon')."' name='{$setting_id}[$id][end_day]' type='text' value='" . esc_attr( $options[ $id ]['end_day'] ) . "' />";
|
43 |
+
|
44 |
+
echo ',';
|
45 |
+
echo "<input id='aa' class='small-text' placeholder='".__('year','coming-soon')."' name='{$setting_id}[$id][end_year]' type='text' value='" . esc_attr( $options[ $id ]['end_year'] ) . "' /><br>";
|
46 |
+
|
framework/field-types/export.php
ADDED
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
|
7 |
+
$seed_csp4_s1 = get_option('seed_csp4_settings_1');
|
8 |
+
$seed_csp4_s2 = get_option('seed_csp4_settings_2');
|
9 |
+
$seed_csp4_s3 = get_option('seed_csp4_settings_4');
|
10 |
+
$settings = array( );
|
11 |
+
foreach ( $this->options as $k ) {
|
12 |
+
switch ( $k[ 'type' ] ) {
|
13 |
+
case 'setting':
|
14 |
+
$s = get_option( $k[ 'id' ]);
|
15 |
+
if(is_array($s)){
|
16 |
+
$settings[$k[ 'id' ]] = $s;
|
17 |
+
}
|
18 |
+
break;
|
19 |
+
}
|
20 |
+
}
|
21 |
+
|
22 |
+
$export = json_encode($settings);
|
23 |
+
|
24 |
+
echo "<textarea id='$id' class='large-text'>" . $export . "</textarea><br>";
|
25 |
+
|
26 |
+
echo '
|
27 |
+
<script>
|
28 |
+
jQuery(document).ready(function($) {
|
29 |
+
$("#export").click(function(){this.select()});
|
30 |
+
});
|
31 |
+
</script>';
|
framework/field-types/import.php
ADDED
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
|
7 |
+
$ajax_url = html_entity_decode(wp_nonce_url('admin-ajax.php?action=seed_csp4_import_settings','seed_csp4_import_settings'));
|
8 |
+
|
9 |
+
echo "<textarea id='import_settings' class='large-text'></textarea><br><button id='import-settings-btn' type='button' class='button-secondary'>Import</button>";
|
10 |
+
|
11 |
+
echo "<script>
|
12 |
+
jQuery(document).ready(function($) {
|
13 |
+
$('#import-settings-btn').click(function() {
|
14 |
+
if(confirm(seed_csp4_msgs.import_confirm)){
|
15 |
+
var settings = $('#import_settings').val();
|
16 |
+
$.post('{$ajax_url}',{settings: settings}, function(data) {
|
17 |
+
if(data == '1'){
|
18 |
+
$('#import-settings-btn').html('Import Successful').attr('disabled','disabled');
|
19 |
+
setTimeout('csp4_reload_page()',2000);
|
20 |
+
}
|
21 |
+
});
|
22 |
+
}
|
23 |
+
});
|
24 |
+
});
|
25 |
+
</script>";
|
framework/field-types/js/color.js
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// For Color Field Type
|
2 |
+
|
3 |
+
jQuery(document).ready(function($){
|
4 |
+
$('.pickcolor-field').wpColorPicker();
|
5 |
+
});
|
6 |
+
|
framework/field-types/js/upload.js
ADDED
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// For Upload Field Type
|
2 |
+
|
3 |
+
jQuery(document).ready(function($){
|
4 |
+
var _custom_media = true,
|
5 |
+
_orig_send_attachment = wp.media.editor.send.attachment;
|
6 |
+
|
7 |
+
$('.upload-button').click(function(e) {
|
8 |
+
var send_attachment_bkp = wp.media.editor.send.attachment;
|
9 |
+
var button = $(this);
|
10 |
+
var id = jQuery(this).prev('input');
|
11 |
+
_custom_media = true;
|
12 |
+
wp.media.editor.send.attachment = function(props, attachment){
|
13 |
+
var size = props.size;
|
14 |
+
var att =attachment.sizes[size];
|
15 |
+
|
16 |
+
//props.size
|
17 |
+
if ( _custom_media ) {
|
18 |
+
$(id).val(att.url);
|
19 |
+
} else {
|
20 |
+
return _orig_send_attachment.apply( this, [props, attachment] );
|
21 |
+
};
|
22 |
+
}
|
23 |
+
|
24 |
+
wp.media.editor.open(button);
|
25 |
+
return false;
|
26 |
+
});
|
27 |
+
|
28 |
+
$('.add_media').on('click', function(){
|
29 |
+
_custom_media = false;
|
30 |
+
});
|
31 |
+
});
|
framework/field-types/multiselect.php
ADDED
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
|
7 |
+
if(empty($options[$id])){
|
8 |
+
$options[$id] = array();
|
9 |
+
}
|
10 |
+
|
11 |
+
echo "<select multiple='multiple' id='$id' class='" . ( empty( $class ) ? 'all-options' : $class ) . "' name='{$setting_id}[$id][]'>";
|
12 |
+
|
13 |
+
foreach ( $option_values as $k => $v ) {
|
14 |
+
|
15 |
+
|
16 |
+
echo "<option value='$k' " . (in_array($k,$options[$id],true)?'selected':'') . ">$v</option>";
|
17 |
+
}
|
18 |
+
echo "</select><br>";
|
framework/field-types/password.php
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
if(empty($options[ $id ])){
|
7 |
+
$options[ $id ] = '';
|
8 |
+
}
|
9 |
+
echo "<input id='$id' class='" . ( empty( $class ) ? 'regular-text' : $class ) . "' name='{$setting_id}[$id]' type='password' value='" . esc_attr( $options[ $id ] ) . "' /><br>";
|
framework/field-types/radio.php
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
|
7 |
+
foreach ( $option_values as $k => $v ) {
|
8 |
+
echo "<input class='$id' type='radio' name='{$setting_id}[$id]' value='$k' " . checked( $options[ $id ], $k, false ) . " /> $v<br/>";
|
9 |
+
}
|
framework/field-types/select.php
ADDED
@@ -0,0 +1,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
|
7 |
+
echo "<select id='$id' class='" . ( empty( $class ) ? '' : $class ) . "' name='{$setting_id}[$id]'>";
|
8 |
+
foreach ( $option_values as $k => $v ) {
|
9 |
+
if(is_array($v)){
|
10 |
+
echo '<optgroup label="'.ucwords($k).'">';
|
11 |
+
foreach ( $v as $k1=>$v1 ) {
|
12 |
+
echo "<option value='$k1' " . selected( $options[ $id ], $k1, false ) . ">$v1</option>";
|
13 |
+
}
|
14 |
+
echo '</optgroup>';
|
15 |
+
}else{
|
16 |
+
if(!isset($options[ $id ])){
|
17 |
+
$options[ $id ] = '';
|
18 |
+
}
|
19 |
+
echo "<option value='$k' " . selected( $options[ $id ], $k, false ) . ">$v</option>";
|
20 |
+
}
|
21 |
+
}
|
22 |
+
echo "</select> ";
|
framework/field-types/text.php
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
if(!empty($options[ $id ]))
|
7 |
+
echo "<p id='$id' class='" . ( empty( $class ) ? '' : $class ) . "' >".$options[ $id ] ."</p>";
|
framework/field-types/textarea.php
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
if(empty($options[ $id ])){
|
7 |
+
$options[ $id ] = '';
|
8 |
+
}
|
9 |
+
echo "<textarea id='$id' class='" . ( empty( $class ) ? '' : $class ) . "' name='{$setting_id}[$id]'>" . $options[ $id ] . "</textarea><br>";
|
framework/field-types/textbox.php
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
if(empty($options[ $id ])){
|
7 |
+
$options[ $id ] = '';
|
8 |
+
}
|
9 |
+
echo "<input id='$id' class='" . ( empty( $class ) ? 'regular-text' : $class ) . "' name='{$setting_id}[$id]' type='text' value='" . esc_attr( $options[ $id ] ) . "' /><br>";
|
framework/field-types/upload.php
ADDED
@@ -0,0 +1,15 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
|
7 |
+
if(!isset($options[ $id ]))
|
8 |
+
$options[ $id ] = null;
|
9 |
+
|
10 |
+
|
11 |
+
echo "<input id='$id' class='" . ( empty( $class ) ? 'regular-text' : $class ) . "' name='{$setting_id}[$id]' type='text' value='" . esc_attr( $options[ $id ] ) . "' />";
|
12 |
+
echo "<input id='{$id}_upload_image_button' class='button-secondary upload-button' type='button' value='" . __( 'Media Image Library', 'coming-soon' ) . "' /><br>";
|
13 |
+
|
14 |
+
wp_enqueue_script( 'seed_csp4-upload-js', SEED_CSP4_PLUGIN_URL . 'framework/field-types/js/upload.js', array() );
|
15 |
+
wp_enqueue_media();
|
framework/field-types/wpeditor.php
ADDED
@@ -0,0 +1,15 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// {$setting_id}[$id] - Contains the setting id, this is what it will be stored in the db as.
|
3 |
+
// $class - optional class value
|
4 |
+
// $id - setting id
|
5 |
+
// $options[$id] value from the db
|
6 |
+
if(empty($options[ $id ])){
|
7 |
+
$options[ $id ] = '';
|
8 |
+
}
|
9 |
+
$content = $options[ $id ];
|
10 |
+
$editor_id = $id;
|
11 |
+
$args = array(
|
12 |
+
'textarea_name' => "{$setting_id}[$id]"
|
13 |
+
);
|
14 |
+
|
15 |
+
wp_editor( $content, $editor_id, $args );
|
framework/framework.php
ADDED
@@ -0,0 +1,525 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* seed_csp4 Admin
|
4 |
+
*
|
5 |
+
* @package WordPress
|
6 |
+
* @subpackage seed_csp4
|
7 |
+
* @since 0.1.0
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class SEED_CSP4_ADMIN
|
12 |
+
{
|
13 |
+
public $plugin_version = SEED_CSP4_VERSION;
|
14 |
+
public $plugin_name = SEED_CSP4_PLUGIN_NAME;
|
15 |
+
|
16 |
+
/**
|
17 |
+
* Instance of this class.
|
18 |
+
*
|
19 |
+
* @since 1.0.0
|
20 |
+
*
|
21 |
+
* @var object
|
22 |
+
*/
|
23 |
+
protected static $instance = null;
|
24 |
+
|
25 |
+
/**
|
26 |
+
* Slug of the plugin screen.
|
27 |
+
*
|
28 |
+
* @since 1.0.0
|
29 |
+
*
|
30 |
+
* @var string
|
31 |
+
*/
|
32 |
+
protected $plugin_screen_hook_suffix = null;
|
33 |
+
|
34 |
+
/**
|
35 |
+
* Load Hooks
|
36 |
+
*/
|
37 |
+
function __construct( )
|
38 |
+
{
|
39 |
+
if ( is_admin() && ( !defined( 'DOING_AJAX' ) || !DOING_AJAX ) ){
|
40 |
+
add_action( 'admin_enqueue_scripts', array( &$this, 'admin_enqueue_scripts' ) );
|
41 |
+
add_action( 'admin_menu', array( &$this, 'create_menus' ) );
|
42 |
+
add_action( 'admin_init', array( &$this, 'reset_defaults' ) );
|
43 |
+
add_action( 'admin_init', array( &$this, 'create_settings' ) );
|
44 |
+
add_filter( 'plugin_action_links', array( &$this, 'plugin_action_links' ), 10, 2 );
|
45 |
+
}
|
46 |
+
}
|
47 |
+
|
48 |
+
/**
|
49 |
+
* Return an instance of this class.
|
50 |
+
*
|
51 |
+
* @since 1.0.0
|
52 |
+
*
|
53 |
+
* @return object A single instance of this class.
|
54 |
+
*/
|
55 |
+
public static function get_instance() {
|
56 |
+
|
57 |
+
// If the single instance hasn't been set, set it now.
|
58 |
+
if ( null == self::$instance ) {
|
59 |
+
self::$instance = new self;
|
60 |
+
}
|
61 |
+
|
62 |
+
return self::$instance;
|
63 |
+
}
|
64 |
+
|
65 |
+
/**
|
66 |
+
* Reset the settings page. Reset works per settings id.
|
67 |
+
*
|
68 |
+
*/
|
69 |
+
function reset_defaults( )
|
70 |
+
{
|
71 |
+
if ( isset( $_POST[ 'seed_csp4_reset' ] ) ) {
|
72 |
+
$option_page = $_POST[ 'option_page' ];
|
73 |
+
check_admin_referer( $option_page . '-options' );
|
74 |
+
require_once(SEED_CSP4_PLUGIN_PATH.'inc/default-settings.php');
|
75 |
+
|
76 |
+
$_POST[ $_POST[ 'option_page' ] ] = $seed_csp4_settings_deafults[$_POST[ 'option_page' ]];
|
77 |
+
add_settings_error( 'general', 'seed_csp4-settings-reset', __( "Settings reset." ), 'updated' );
|
78 |
+
}
|
79 |
+
}
|
80 |
+
|
81 |
+
/**
|
82 |
+
* Properly enqueue styles and scripts for our theme options page.
|
83 |
+
*
|
84 |
+
* This function is attached to the admin_enqueue_scripts action hook.
|
85 |
+
*
|
86 |
+
* @since 0.1.0
|
87 |
+
* @param string $hook_suffix The name of the current page we are on.
|
88 |
+
*/
|
89 |
+
function admin_enqueue_scripts( $hook_suffix )
|
90 |
+
{
|
91 |
+
if ( $hook_suffix != $this->plugin_screen_hook_suffix )
|
92 |
+
return;
|
93 |
+
|
94 |
+
wp_enqueue_script( 'media-upload' );
|
95 |
+
wp_enqueue_script( 'jquery-ui-sortable' );
|
96 |
+
wp_enqueue_script( 'wp-lists' );
|
97 |
+
wp_enqueue_script( 'seed_csp4-framework-js', SEED_CSP4_PLUGIN_URL . 'framework/settings-scripts.js', array( 'jquery' ), $this->plugin_version );
|
98 |
+
wp_enqueue_script( 'theme-preview' );
|
99 |
+
wp_enqueue_style( 'thickbox' );
|
100 |
+
wp_enqueue_style( 'media-upload' );
|
101 |
+
wp_enqueue_style( 'wp-color-picker' );
|
102 |
+
wp_enqueue_style( 'seed_csp4-framework-css', SEED_CSP4_PLUGIN_URL . 'framework/settings-style.css', false, $this->plugin_version );
|
103 |
+
wp_enqueue_style( 'font-awesome', '//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css', false, $this->plugin_version );
|
104 |
+
}
|
105 |
+
|
106 |
+
/**
|
107 |
+
* Creates WordPress Menu pages from an array in the config file.
|
108 |
+
*
|
109 |
+
* This function is attached to the admin_menu action hook.
|
110 |
+
*
|
111 |
+
* @since 0.1.0
|
112 |
+
*/
|
113 |
+
function create_menus( )
|
114 |
+
{
|
115 |
+
$this->plugin_screen_hook_suffix = add_options_page(
|
116 |
+
__( "Coming Soon", 'coming-soon' ),
|
117 |
+
__( "Coming Soon", 'coming-soon' ),
|
118 |
+
'manage_options',
|
119 |
+
'seed_csp4',
|
120 |
+
array( &$this , 'option_page' )
|
121 |
+
);
|
122 |
+
}
|
123 |
+
|
124 |
+
/**
|
125 |
+
* Display settings link on plugin page
|
126 |
+
*/
|
127 |
+
function plugin_action_links( $links, $file )
|
128 |
+
{
|
129 |
+
$plugin_file = SEED_CSP4_SLUG;
|
130 |
+
|
131 |
+
if ( $file == $plugin_file ) {
|
132 |
+
$settings_link = '<a href="options-general.php?page=seed_csp4">Settings</a>';
|
133 |
+
array_unshift( $links, $settings_link );
|
134 |
+
}
|
135 |
+
return $links;
|
136 |
+
}
|
137 |
+
|
138 |
+
|
139 |
+
/**
|
140 |
+
* Allow Tabs on the Settings Page
|
141 |
+
*
|
142 |
+
*/
|
143 |
+
function plugin_options_tabs( )
|
144 |
+
{
|
145 |
+
$menu_slug = null;
|
146 |
+
$page = $_REQUEST[ 'page' ];
|
147 |
+
$uses_tabs = false;
|
148 |
+
$current_tab = isset( $_GET[ 'tab' ] ) ? $_GET[ 'tab' ] : false;
|
149 |
+
|
150 |
+
//Check if this config uses tabs
|
151 |
+
foreach ( seed_csp4_get_options() as $v ) {
|
152 |
+
if ( $v[ 'type' ] == 'tab' ) {
|
153 |
+
$uses_tabs = true;
|
154 |
+
break;
|
155 |
+
}
|
156 |
+
}
|
157 |
+
|
158 |
+
// If uses tabs then generate the tabs
|
159 |
+
if ( $uses_tabs ) {
|
160 |
+
echo '<h2 class="nav-tab-wrapper" style="padding-left:20px">';
|
161 |
+
$c = 1;
|
162 |
+
foreach ( seed_csp4_get_options() as $v ) {
|
163 |
+
if ( isset( $v[ 'menu_slug' ] ) ) {
|
164 |
+
$menu_slug = $v[ 'menu_slug' ];
|
165 |
+
}
|
166 |
+
if ( $menu_slug == $page && $v[ 'type' ] == 'tab' ) {
|
167 |
+
$active = '';
|
168 |
+
if ( $current_tab ) {
|
169 |
+
$active = $current_tab == $v[ 'id' ] ? 'nav-tab-active' : '';
|
170 |
+
} elseif ( $c == 1 ) {
|
171 |
+
$active = 'nav-tab-active';
|
172 |
+
}
|
173 |
+
echo '<a class="nav-tab ' . $active . '" href="?page=' . $menu_slug . '&tab=' . $v[ 'id' ] . '">' . $v[ 'label' ] . '</a>';
|
174 |
+
$c++;
|
175 |
+
}
|
176 |
+
}
|
177 |
+
echo '<a class="nav-tab seed_csp4-preview thickbox-preview" href="'.home_url().'?cs_preview=true&TB_iframe=true&width=640&height=632" title="'.__('← Close Window','coming-soon').'">'.__('Live Preview','coming-soon').'</a>';
|
178 |
+
if(defined('SEED_CSP_API_KEY') === false){
|
179 |
+
echo '<a class="nav-tab seed_csp4-support" style="color: #8a6d3b;background-color: #fcf8e3;float:right" href="http://www.seedprod.com/features/?utm_source=coming-soon-plugin&utm_medium=banner&utm_campaign=coming-soon-link-in-plugin" target="_blank"><i class="fa fa-star"></i> '.__('Upgrade to the Pro Version','coming-soon').'</a>';
|
180 |
+
}
|
181 |
+
echo '</h2>';
|
182 |
+
|
183 |
+
}
|
184 |
+
}
|
185 |
+
|
186 |
+
/**
|
187 |
+
* Get the layout for the page. classic|2-col
|
188 |
+
*
|
189 |
+
*/
|
190 |
+
function get_page_layout( )
|
191 |
+
{
|
192 |
+
$layout = 'classic';
|
193 |
+
foreach ( seed_csp4_get_options() as $v ) {
|
194 |
+
switch ( $v[ 'type' ] ) {
|
195 |
+
case 'menu';
|
196 |
+
$page = $_REQUEST[ 'page' ];
|
197 |
+
if ( $page == $v[ 'menu_slug' ] ) {
|
198 |
+
if ( isset( $v[ 'layout' ] ) ) {
|
199 |
+
$layout = $v[ 'layout' ];
|
200 |
+
}
|
201 |
+
}
|
202 |
+
break;
|
203 |
+
}
|
204 |
+
}
|
205 |
+
return $layout;
|
206 |
+
}
|
207 |
+
|
208 |
+
/**
|
209 |
+
* Render the option pages.
|
210 |
+
*
|
211 |
+
* @since 0.1.0
|
212 |
+
*/
|
213 |
+
function option_page( )
|
214 |
+
{
|
215 |
+
$menu_slug = null;
|
216 |
+
$page = $_REQUEST[ 'page' ];
|
217 |
+
$layout = $this->get_page_layout();
|
218 |
+
?>
|
219 |
+
<div class="wrap columns-2 seed-csp4">
|
220 |
+
<?php screen_icon(); ?>
|
221 |
+
<h2><?php echo $this->plugin_name; ?> <span class="seed_csp4-version"> <?php echo SEED_CSP4_VERSION; ?></span></h2>
|
222 |
+
<?php //settings_errors() ?>
|
223 |
+
<?php $this->plugin_options_tabs(); ?>
|
224 |
+
<?php if ( $layout == '2-col' ): ?>
|
225 |
+
<div id="poststuff">
|
226 |
+
<div id="post-body" class="metabox-holder columns-1">
|
227 |
+
<div id="post-body-content" >
|
228 |
+
<?php endif; ?>
|
229 |
+
<?php if(!empty($_GET['tab']))
|
230 |
+
do_action( 'seed_csp4_render_page', array('tab'=>$_GET['tab']));
|
231 |
+
?>
|
232 |
+
<form action="options.php" method="post">
|
233 |
+
<p>
|
234 |
+
<!-- <input name="submit" type="submit" value="<?php _e( 'Save All Changes', 'coming-soon' ); ?>" class="button-primary"/> -->
|
235 |
+
<?php if(!empty($_GET['tab']) && $_GET['tab'] != 'seed_csp4_tab_3') { ?>
|
236 |
+
<!-- <input id="reset" name="reset" type="submit" value="<?php _e( 'Reset Settings', 'coming-soon' ); ?>" class="button-secondary"/> -->
|
237 |
+
<?php } ?>
|
238 |
+
</p>
|
239 |
+
<?php
|
240 |
+
$show_submit = false;
|
241 |
+
foreach ( seed_csp4_get_options() as $v ) {
|
242 |
+
if ( isset( $v[ 'menu_slug' ] ) ) {
|
243 |
+
$menu_slug = $v[ 'menu_slug' ];
|
244 |
+
}
|
245 |
+
if ( $menu_slug == $page ) {
|
246 |
+
switch ( $v[ 'type' ] ) {
|
247 |
+
case 'menu';
|
248 |
+
break;
|
249 |
+
case 'tab';
|
250 |
+
$tab = $v;
|
251 |
+
if ( empty( $default_tab ) )
|
252 |
+
$default_tab = $v[ 'id' ];
|
253 |
+
break;
|
254 |
+
case 'setting':
|
255 |
+
$current_tab = isset( $_GET[ 'tab' ] ) ? $_GET[ 'tab' ] : $default_tab;
|
256 |
+
if ( $current_tab == $tab[ 'id' ] ) {
|
257 |
+
settings_fields( $v[ 'id' ] );
|
258 |
+
$show_submit = true;
|
259 |
+
}
|
260 |
+
|
261 |
+
break;
|
262 |
+
case 'section':
|
263 |
+
$current_tab = isset( $_GET[ 'tab' ] ) ? $_GET[ 'tab' ] : $default_tab;
|
264 |
+
if ( $current_tab == $tab[ 'id' ] or $current_tab === false ) {
|
265 |
+
if ( $layout == '2-col' ) {
|
266 |
+
echo '<div id="'.$v[ 'id' ].'" class="postbox seedprod-postbox">';
|
267 |
+
$this->do_settings_sections( $v[ 'id' ],$show_submit );
|
268 |
+
echo '</div>';
|
269 |
+
} else {
|
270 |
+
do_settings_sections( $v[ 'id' ] );
|
271 |
+
}
|
272 |
+
|
273 |
+
}
|
274 |
+
break;
|
275 |
+
|
276 |
+
}
|
277 |
+
|
278 |
+
}
|
279 |
+
}
|
280 |
+
?>
|
281 |
+
<?php if($show_submit): ?>
|
282 |
+
<p>
|
283 |
+
<!-- <input name="submit" type="submit" value="<?php _e( 'Save All Changes', 'coming-soon' ); ?>" class="button-primary"/> -->
|
284 |
+
<!-- <input id="reset" name="reset" type="submit" value="<?php _e( 'Reset Settings', 'coming-soon' ); ?>" class="button-secondary"/> -->
|
285 |
+
</p>
|
286 |
+
<?php endif; ?>
|
287 |
+
</form>
|
288 |
+
|
289 |
+
<?php if ( $layout == '2-col' ): ?>
|
290 |
+
</div> <!-- #post-body-content -->
|
291 |
+
|
292 |
+
|
293 |
+
</div> <!-- #post-body -->
|
294 |
+
</div> <!-- #poststuff -->
|
295 |
+
<?php endif; ?>
|
296 |
+
</div> <!-- .wrap -->
|
297 |
+
|
298 |
+
<!-- JS login to confirm setting resets. -->
|
299 |
+
<script>
|
300 |
+
jQuery(document).ready(function($) {
|
301 |
+
$('#reset').click(function(e){
|
302 |
+
if(!confirm('<?php _e( 'This tabs settings be deleted and reset to the defaults. Are you sure you want to reset?', 'coming-soon' ); ?>')){
|
303 |
+
e.preventDefault();
|
304 |
+
}
|
305 |
+
});
|
306 |
+
});
|
307 |
+
</script>
|
308 |
+
<?php
|
309 |
+
}
|
310 |
+
|
311 |
+
/**
|
312 |
+
* Create the settings options, sections and fields via the WordPress Settings API
|
313 |
+
*
|
314 |
+
* This function is attached to the admin_init action hook.
|
315 |
+
*
|
316 |
+
* @since 0.1.0
|
317 |
+
*/
|
318 |
+
function create_settings( )
|
319 |
+
{
|
320 |
+
foreach ( seed_csp4_get_options() as $k => $v ) {
|
321 |
+
|
322 |
+
switch ( $v[ 'type' ] ) {
|
323 |
+
case 'menu':
|
324 |
+
$menu_slug = $v[ 'menu_slug' ];
|
325 |
+
|
326 |
+
break;
|
327 |
+
case 'setting':
|
328 |
+
if ( empty( $v[ 'validate_function' ] ) ) {
|
329 |
+
$v[ 'validate_function' ] = array(
|
330 |
+
&$this,
|
331 |
+
'validate_machine'
|
332 |
+
);
|
333 |
+
}
|
334 |
+
register_setting( $v[ 'id' ], $v[ 'id' ], $v[ 'validate_function' ] );
|
335 |
+
$setting_id = $v[ 'id' ];
|
336 |
+
break;
|
337 |
+
case 'section':
|
338 |
+
if ( empty( $v[ 'desc_callback' ] ) ) {
|
339 |
+
$v[ 'desc_callback' ] = array(
|
340 |
+
&$this,
|
341 |
+
'__return_empty_string'
|
342 |
+
);
|
343 |
+
} else {
|
344 |
+
$v[ 'desc_callback' ] = $v[ 'desc_callback' ];
|
345 |
+
}
|
346 |
+
add_settings_section( $v[ 'id' ], $v[ 'label' ], $v[ 'desc_callback' ], $v[ 'id' ] );
|
347 |
+
$section_id = $v[ 'id' ];
|
348 |
+
break;
|
349 |
+
case 'tab':
|
350 |
+
break;
|
351 |
+
default:
|
352 |
+
if ( empty( $v[ 'callback' ] ) ) {
|
353 |
+
$v[ 'callback' ] = array(
|
354 |
+
&$this,
|
355 |
+
'field_machine'
|
356 |
+
);
|
357 |
+
}
|
358 |
+
|
359 |
+
add_settings_field( $v[ 'id' ], $v[ 'label' ], $v[ 'callback' ], $section_id, $section_id, array(
|
360 |
+
'id' => $v[ 'id' ],
|
361 |
+
'desc' => ( isset( $v[ 'desc' ] ) ? $v[ 'desc' ] : '' ),
|
362 |
+
'setting_id' => $setting_id,
|
363 |
+
'class' => ( isset( $v[ 'class' ] ) ? $v[ 'class' ] : '' ),
|
364 |
+
'type' => $v[ 'type' ],
|
365 |
+
'default_value' => ( isset( $v[ 'default_value' ] ) ? $v[ 'default_value' ] : '' ),
|
366 |
+
'option_values' => ( isset( $v[ 'option_values' ] ) ? $v[ 'option_values' ] : '' )
|
367 |
+
) );
|
368 |
+
|
369 |
+
}
|
370 |
+
}
|
371 |
+
}
|
372 |
+
|
373 |
+
/**
|
374 |
+
* Create a field based on the field type passed in.
|
375 |
+
*
|
376 |
+
* @since 0.1.0
|
377 |
+
*/
|
378 |
+
function field_machine( $args )
|
379 |
+
{
|
380 |
+
extract( $args ); //$id, $desc, $setting_id, $class, $type, $default_value, $option_values
|
381 |
+
|
382 |
+
// Load defaults
|
383 |
+
$defaults = array( );
|
384 |
+
foreach ( seed_csp4_get_options() as $k ) {
|
385 |
+
switch ( $k[ 'type' ] ) {
|
386 |
+
case 'setting':
|
387 |
+
case 'section':
|
388 |
+
case 'tab':
|
389 |
+
break;
|
390 |
+
default:
|
391 |
+
if ( isset( $k[ 'default_value' ] ) ) {
|
392 |
+
$defaults[ $k[ 'id' ] ] = $k[ 'default_value' ];
|
393 |
+
}
|
394 |
+
}
|
395 |
+
}
|
396 |
+
$options = get_option( $setting_id );
|
397 |
+
|
398 |
+
$options = wp_parse_args( $options, $defaults );
|
399 |
+
|
400 |
+
$path = SEED_CSP4_PLUGIN_PATH . 'framework/field-types/' . $type . '.php';
|
401 |
+
if ( file_exists( $path ) ) {
|
402 |
+
// Show Field
|
403 |
+
include( $path );
|
404 |
+
// Show description
|
405 |
+
if ( !empty( $desc ) ) {
|
406 |
+
echo "<small class='description'>{$desc}</small>";
|
407 |
+
}
|
408 |
+
}
|
409 |
+
|
410 |
+
}
|
411 |
+
|
412 |
+
/**
|
413 |
+
* Validates user input before we save it via the Options API. If error add_setting_error
|
414 |
+
*
|
415 |
+
* @since 0.1.0
|
416 |
+
* @param array $input Contains all the values submitted to the POST.
|
417 |
+
* @return array $input Contains sanitized values.
|
418 |
+
* @todo Figure out best way to validate values.
|
419 |
+
*/
|
420 |
+
function validate_machine( $input )
|
421 |
+
{
|
422 |
+
$option_page = $_POST['option_page'];
|
423 |
+
foreach ( seed_csp4_get_options() as $k ) {
|
424 |
+
switch ( $k[ 'type' ] ) {
|
425 |
+
case 'menu':
|
426 |
+
case 'setting':
|
427 |
+
if(isset($k['id']))
|
428 |
+
$setting_id = $k['id'];
|
429 |
+
case 'section':
|
430 |
+
case 'tab';
|
431 |
+
break;
|
432 |
+
default:
|
433 |
+
if ( !empty( $k[ 'validate' ] ) && $setting_id == $option_page ) {
|
434 |
+
$validation_rules = explode( ',', $k[ 'validate' ] );
|
435 |
+
|
436 |
+
foreach ( $validation_rules as $v ) {
|
437 |
+
$path = SEED_CSP4_PLUGIN_PATH . 'framework/validations/' . $v . '.php';
|
438 |
+
if ( file_exists( $path ) ) {
|
439 |
+
// Defaults Values
|
440 |
+
$is_valid = true;
|
441 |
+
$error_msg = '';
|
442 |
+
|
443 |
+
// Test Validation
|
444 |
+
include( $path );
|
445 |
+
|
446 |
+
// Is it valid?
|
447 |
+
if ( $is_valid === false ) {
|
448 |
+
add_settings_error( $k[ 'id' ], 'seedprod_error', $error_msg, 'error' );
|
449 |
+
// Unset invalids
|
450 |
+
unset( $input[ $k[ 'id' ] ] );
|
451 |
+
}
|
452 |
+
|
453 |
+
}
|
454 |
+
} //end foreach
|
455 |
+
|
456 |
+
}
|
457 |
+
}
|
458 |
+
}
|
459 |
+
|
460 |
+
return $input;
|
461 |
+
}
|
462 |
+
|
463 |
+
/**
|
464 |
+
* Dummy function to be called by all sections from the Settings API. Define a custom function in the config.
|
465 |
+
*
|
466 |
+
* @since 0.1.0
|
467 |
+
* @return string Empty
|
468 |
+
*/
|
469 |
+
function __return_empty_string( )
|
470 |
+
{
|
471 |
+
echo '';
|
472 |
+
}
|
473 |
+
|
474 |
+
|
475 |
+
/**
|
476 |
+
* SeedProd version of WP's do_settings_sections
|
477 |
+
*
|
478 |
+
* @since 0.1.0
|
479 |
+
*/
|
480 |
+
function do_settings_sections( $page, $show_submit )
|
481 |
+
{
|
482 |
+
global $wp_settings_sections, $wp_settings_fields;
|
483 |
+
|
484 |
+
if ( !isset( $wp_settings_sections ) || !isset( $wp_settings_sections[ $page ] ) )
|
485 |
+
return;
|
486 |
+
|
487 |
+
foreach ( (array) $wp_settings_sections[ $page ] as $section ) {
|
488 |
+
echo "<h3><span></span>{$section['title']}</h3>\n";
|
489 |
+
echo '<div class="inside">';
|
490 |
+
call_user_func( $section[ 'callback' ], $section );
|
491 |
+
if ( !isset( $wp_settings_fields ) || !isset( $wp_settings_fields[ $page ] ) || !isset( $wp_settings_fields[ $page ][ $section[ 'id' ] ] ) )
|
492 |
+
continue;
|
493 |
+
echo '<table class="form-table">';
|
494 |
+
$this->do_settings_fields( $page, $section[ 'id' ] );
|
495 |
+
echo '</table>';
|
496 |
+
if($show_submit): ?>
|
497 |
+
<p>
|
498 |
+
<input name="submit" type="submit" value="<?php _e( 'Save All Changes', 'coming-soon' ); ?>" class="button-primary"/>
|
499 |
+
</p>
|
500 |
+
<?php endif;
|
501 |
+
echo '</div>';
|
502 |
+
}
|
503 |
+
}
|
504 |
+
|
505 |
+
function do_settings_fields($page, $section) {
|
506 |
+
global $wp_settings_fields;
|
507 |
+
|
508 |
+
if ( !isset($wp_settings_fields) || !isset($wp_settings_fields[$page]) || !isset($wp_settings_fields[$page][$section]) )
|
509 |
+
return;
|
510 |
+
|
511 |
+
foreach ( (array) $wp_settings_fields[$page][$section] as $field ) {
|
512 |
+
echo '<tr valign="top">';
|
513 |
+
if ( !empty($field['args']['label_for']) )
|
514 |
+
echo '<th scope="row"><label for="' . $field['args']['label_for'] . '">' . $field['title'] . '</label></th>';
|
515 |
+
else
|
516 |
+
echo '<th scope="row"><strong>' . $field['title'] . '</strong><!--<br>'.$field['args']['desc'].'--></th>';
|
517 |
+
echo '<td>';
|
518 |
+
call_user_func($field['callback'], $field['args']);
|
519 |
+
echo '</td>';
|
520 |
+
echo '</tr>';
|
521 |
+
}
|
522 |
+
}
|
523 |
+
|
524 |
+
}
|
525 |
+
|
framework/get-settings.php
ADDED
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
function seed_csp4_get_settings(){
|
3 |
+
$s1 = get_option('seed_csp4_settings_content');
|
4 |
+
$s2 = get_option('seed_csp4_settings_design');
|
5 |
+
$s3 = get_option('seed_csp4_settings_advanced');
|
6 |
+
|
7 |
+
if(empty($s1))
|
8 |
+
$s1 = array();
|
9 |
+
|
10 |
+
if(empty($s2))
|
11 |
+
$s2 = array();
|
12 |
+
|
13 |
+
if(empty($s3))
|
14 |
+
$s3 = array();
|
15 |
+
|
16 |
+
$settings = $s1 + $s2 + $s3;
|
17 |
+
|
18 |
+
|
19 |
+
return apply_filters( 'seed_csp4_get_settings', $settings );;
|
20 |
+
}
|
framework/settings-scripts.js
ADDED
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// This is place for js you need to execute on the settings page. This file will only load on the menu pages you've define in the config file.
|
2 |
+
|
3 |
+
jQuery(document).ready(function($){
|
4 |
+
|
5 |
+
});
|
6 |
+
|
7 |
+
/*! http://mths.be/placeholder v2.0.7 by @mathias */
|
8 |
+
;(function(f,h,$){var a='placeholder' in h.createElement('input'),d='placeholder' in h.createElement('textarea'),i=$.fn,c=$.valHooks,k,j;if(a&&d){j=i.placeholder=function(){return this};j.input=j.textarea=true}else{j=i.placeholder=function(){var l=this;l.filter((a?'textarea':':input')+'[placeholder]').not('.placeholder').bind({'focus.placeholder':b,'blur.placeholder':e}).data('placeholder-enabled',true).trigger('blur.placeholder');return l};j.input=a;j.textarea=d;k={get:function(m){var l=$(m);return l.data('placeholder-enabled')&&l.hasClass('placeholder')?'':m.value},set:function(m,n){var l=$(m);if(!l.data('placeholder-enabled')){return m.value=n}if(n==''){m.value=n;if(m!=h.activeElement){e.call(m)}}else{if(l.hasClass('placeholder')){b.call(m,true,n)||(m.value=n)}else{m.value=n}}return l}};a||(c.input=k);d||(c.textarea=k);$(function(){$(h).delegate('form','submit.placeholder',function(){var l=$('.placeholder',this).each(b);setTimeout(function(){l.each(e)},10)})});$(f).bind('beforeunload.placeholder',function(){$('.placeholder').each(function(){this.value=''})})}function g(m){var l={},n=/^jQuery\d+$/;$.each(m.attributes,function(p,o){if(o.specified&&!n.test(o.name)){l[o.name]=o.value}});return l}function b(m,n){var l=this,o=$(l);if(l.value==o.attr('placeholder')&&o.hasClass('placeholder')){if(o.data('placeholder-password')){o=o.hide().next().show().attr('id',o.removeAttr('id').data('placeholder-id'));if(m===true){return o[0].value=n}o.focus()}else{l.value='';o.removeClass('placeholder');l==h.activeElement&&l.select()}}}function e(){var q,l=this,p=$(l),m=p,o=this.id;if(l.value==''){if(l.type=='password'){if(!p.data('placeholder-textinput')){try{q=p.clone().attr({type:'text'})}catch(n){q=$('<input>').attr($.extend(g(this),{type:'text'}))}q.removeAttr('name').data({'placeholder-password':true,'placeholder-id':o}).bind('focus.placeholder',b);p.data({'placeholder-textinput':q,'placeholder-id':o}).before(q)}p=p.removeAttr('id').hide().prev().attr('id',o).show()}p.addClass('placeholder');p[0].value=p.attr('placeholder')}else{p.removeClass('placeholder')}}}(this,document,jQuery));
|
framework/settings-style.css
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* This is place for css you need to execute on the settings page. This file will only load on the menu pages you've define in the config file. */
|
2 |
+
.seed-csp4 .seed_csp4-version{
|
3 |
+
font-size:10px;
|
4 |
+
}
|
5 |
+
|
6 |
+
.seed-csp4 .mceLayout{
|
7 |
+
background-color:#fff;
|
8 |
+
}
|
9 |
+
|
framework/validations/color.php
ADDED
@@ -0,0 +1,15 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Check to see if a value is a valid hex color
|
4 |
+
* Test $input[$k['id']]
|
5 |
+
* Set $k['error_msg'] and $is_valid
|
6 |
+
* Set $is_valid = true/false
|
7 |
+
*/
|
8 |
+
|
9 |
+
|
10 |
+
if ( !empty( $input[ $k[ 'id' ] ] ) ) {
|
11 |
+
if ( !preg_match( '/^#[a-f0-9]{6}$/i', $input[ $k[ 'id' ] ] ) ) {
|
12 |
+
$is_valid = false;
|
13 |
+
$error_msg = $k[ 'label' ] . ': ' . __( 'Please enter a valid color value.', 'coming-soon' );
|
14 |
+
}
|
15 |
+
}
|
framework/validations/email.php
ADDED
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Check to see if an email is valid.
|
4 |
+
* Test $input[$k['id']]
|
5 |
+
* Set $k['error_msg'] and $is_valid
|
6 |
+
*/
|
7 |
+
|
8 |
+
if ( !empty( $input[ $k[ 'id' ] ] ) ) {
|
9 |
+
$is_valid = is_email( $input[ $k[ 'id' ] ] );
|
10 |
+
$error_msg = $k[ 'label' ] . ': ' . __( 'Please enter a valid email.', 'coming-soon' );
|
11 |
+
}
|
framework/validations/escurlraw.php
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Check to see if an email is valid.
|
4 |
+
* Test $input[$k['id']]
|
5 |
+
* Set $k['error_msg'] and $is_valid
|
6 |
+
*/
|
7 |
+
|
8 |
+
if ( !empty( $input[ $k[ 'id' ] ] ) ) {
|
9 |
+
$input[ $k[ 'id' ] ]= esc_url_raw($input[ $k[ 'id' ] ]);
|
10 |
+
$is_valid = true;
|
11 |
+
$error_msg = $k[ 'label' ] . ': ' . __( 'Please enter a valid email.', 'coming-soon' );
|
12 |
+
}
|
framework/validations/number.php
ADDED
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Check to see if a value is a valid hex color
|
4 |
+
* Test $input[$k['id']]
|
5 |
+
* Set $k['error_msg'] and $is_valid
|
6 |
+
*/
|
7 |
+
|
8 |
+
if ( !empty( $input[ $k[ 'id' ] ] ) ) {
|
9 |
+
if ( !is_numeric( $input[ $k[ 'id' ] ] ) ) {
|
10 |
+
$is_valid = false;
|
11 |
+
$error_msg = $k[ 'label' ] . ': ' . __( 'Please enter a valid number.', 'coming-soon' );
|
12 |
+
}
|
13 |
+
}
|
framework/validations/required.php
ADDED
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Check to see if a value is required
|
4 |
+
* Test $input[$k['id']]
|
5 |
+
* Set $k['error_msg'] and $is_valid
|
6 |
+
*/
|
7 |
+
|
8 |
+
if ( empty( $input[ $k[ 'id' ] ] ) ) {
|
9 |
+
$is_valid = false;
|
10 |
+
$error_msg = $k[ 'label' ] . ' ' . __( 'is required.', 'coming-soon' );
|
11 |
+
}
|
inc/adminbar-style.css
ADDED
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#wpadminbar .csp4-mode-active > .ab-item{
|
2 |
+
color:#fff;
|
3 |
+
background-color: #f44;
|
4 |
+
}
|
5 |
+
|
6 |
+
#wpadminbar .csp4-mode-active:hover > .ab-item{
|
7 |
+
background-color: #a30 !important;
|
8 |
+
}
|
inc/class-seed-csp4.php
ADDED
@@ -0,0 +1,217 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Plugin class logic goes here
|
4 |
+
*/
|
5 |
+
class SEED_CSP4{
|
6 |
+
|
7 |
+
/**
|
8 |
+
* Instance of this class.
|
9 |
+
*
|
10 |
+
* @since 1.0.0
|
11 |
+
*
|
12 |
+
* @var object
|
13 |
+
*/
|
14 |
+
protected static $instance = null;
|
15 |
+
|
16 |
+
private $comingsoon_rendered = false;
|
17 |
+
|
18 |
+
function __construct(){
|
19 |
+
|
20 |
+
extract(seed_csp4_get_settings());
|
21 |
+
|
22 |
+
// Actions & Filters if the landing page is active or being previewed
|
23 |
+
if(((!empty($status) && $status === '1') || (!empty($status) && $status === '2')) || (isset($_GET['cs_preview']) && $_GET['cs_preview'] == 'true')){
|
24 |
+
if(function_exists('bp_is_active')){
|
25 |
+
add_action( 'template_redirect', array(&$this,'render_comingsoon_page'),9);
|
26 |
+
}else{
|
27 |
+
add_action( 'template_redirect', array(&$this,'render_comingsoon_page'));
|
28 |
+
}
|
29 |
+
add_action( 'admin_bar_menu',array( &$this, 'admin_bar_menu' ), 1000 );
|
30 |
+
}
|
31 |
+
|
32 |
+
// Add this script globally so we can view the notification across the admin area
|
33 |
+
add_action( 'admin_enqueue_scripts', array(&$this,'add_scripts') );
|
34 |
+
}
|
35 |
+
|
36 |
+
/**
|
37 |
+
* Return an instance of this class.
|
38 |
+
*
|
39 |
+
* @since 1.0.0
|
40 |
+
*
|
41 |
+
* @return object A single instance of this class.
|
42 |
+
*/
|
43 |
+
public static function get_instance() {
|
44 |
+
|
45 |
+
// If the single instance hasn't been set, set it now.
|
46 |
+
if ( null == self::$instance ) {
|
47 |
+
self::$instance = new self;
|
48 |
+
}
|
49 |
+
|
50 |
+
return self::$instance;
|
51 |
+
}
|
52 |
+
|
53 |
+
/**
|
54 |
+
* Get pages and put in assoc array
|
55 |
+
*/
|
56 |
+
function get_pages(){
|
57 |
+
$pages = get_pages();
|
58 |
+
$page_arr = array();
|
59 |
+
if(is_array($pages)){
|
60 |
+
foreach($pages as $k=>$v){
|
61 |
+
$page_arr[$v->ID] = $v->post_title;
|
62 |
+
}
|
63 |
+
}
|
64 |
+
return $page_arr;
|
65 |
+
}
|
66 |
+
|
67 |
+
/**
|
68 |
+
* Display admin bar when active
|
69 |
+
*/
|
70 |
+
function admin_bar_menu($str){
|
71 |
+
global $seed_csp4_settings,$wp_admin_bar;
|
72 |
+
extract($seed_csp4_settings);
|
73 |
+
|
74 |
+
if(!isset($status)){
|
75 |
+
return false;
|
76 |
+
}
|
77 |
+
|
78 |
+
$msg = '';
|
79 |
+
if($status == '1'){
|
80 |
+
$msg = __('Coming Soon Mode Active','coming-soon');
|
81 |
+
}elseif($status == '2'){
|
82 |
+
$msg = __('Maintenance Mode Active','coming-soon');
|
83 |
+
}
|
84 |
+
//Add the main siteadmin menu item
|
85 |
+
$wp_admin_bar->add_menu( array(
|
86 |
+
'id' => 'seed-csp4-notice',
|
87 |
+
'href' => admin_url().'options-general.php?page=seed_csp4',
|
88 |
+
'parent' => 'top-secondary',
|
89 |
+
'title' => $msg,
|
90 |
+
'meta' => array( 'class' => 'csp4-mode-active' ),
|
91 |
+
) );
|
92 |
+
}
|
93 |
+
|
94 |
+
/**
|
95 |
+
* Display the default template
|
96 |
+
*/
|
97 |
+
function get_default_template(){
|
98 |
+
$file = file_get_contents(SEED_CSP4_PLUGIN_PATH.'/themes/default/index.php');
|
99 |
+
return $file;
|
100 |
+
}
|
101 |
+
|
102 |
+
/**
|
103 |
+
* Load scripts
|
104 |
+
*/
|
105 |
+
function add_scripts($hook) {
|
106 |
+
wp_enqueue_style( 'seed-csp4-adminbar-notification', SEED_CSP4_PLUGIN_URL.'inc/adminbar-style.css', false, SEED_CSP4_VERSION, 'screen');
|
107 |
+
}
|
108 |
+
|
109 |
+
/**
|
110 |
+
* Get Font Family
|
111 |
+
*/
|
112 |
+
public static function get_font_family($font){
|
113 |
+
$fonts = array();
|
114 |
+
$fonts['_arial'] = 'Helvetica, Arial, sans-serif';
|
115 |
+
$fonts['_arial_black'] = 'Arial Black, Arial Black, Gadget, sans-serif';
|
116 |
+
$fonts['_georgia'] = 'Georgia,serif';
|
117 |
+
$fonts['_helvetica_neue'] = '"Helvetica Neue", Helvetica, Arial, sans-serif';
|
118 |
+
$fonts['_impact'] = 'Charcoal,Impact,sans-serif';
|
119 |
+
$fonts['_lucida'] = 'Lucida Grande,Lucida Sans Unicode, sans-serif';
|
120 |
+
$fonts['_palatino'] = 'Palatino,Palatino Linotype, Book Antiqua, serif';
|
121 |
+
$fonts['_tahoma'] = 'Geneva,Tahoma,sans-serif';
|
122 |
+
$fonts['_times'] = 'Times,Times New Roman, serif';
|
123 |
+
$fonts['_trebuchet'] = 'Trebuchet MS, sans-serif';
|
124 |
+
$fonts['_verdana'] = 'Verdana, Geneva, sans-serif';
|
125 |
+
|
126 |
+
if(!empty($fonts[$font])){
|
127 |
+
$font_family = $fonts[$font];
|
128 |
+
}else{
|
129 |
+
$font_family = 'Helvetica Neue, Arial, sans-serif';
|
130 |
+
}
|
131 |
+
|
132 |
+
echo $font_family;
|
133 |
+
}
|
134 |
+
|
135 |
+
|
136 |
+
/**
|
137 |
+
* Display the coming soon page
|
138 |
+
*/
|
139 |
+
function render_comingsoon_page() {
|
140 |
+
|
141 |
+
extract(seed_csp4_get_settings());
|
142 |
+
|
143 |
+
if(!isset($status)){
|
144 |
+
$err = new WP_Error('error', __("Please enter your settings.", 'coming-soon'));
|
145 |
+
echo $err->get_error_message();
|
146 |
+
exit();
|
147 |
+
}
|
148 |
+
|
149 |
+
|
150 |
+
if(empty($_GET['cs_preview'])){
|
151 |
+
$_GET['cs_preview'] = false;
|
152 |
+
}
|
153 |
+
|
154 |
+
// Check if Preview
|
155 |
+
$is_preview = false;
|
156 |
+
if ((isset($_GET['cs_preview']) && $_GET['cs_preview'] == 'true')) {
|
157 |
+
$is_preview = true;
|
158 |
+
}
|
159 |
+
|
160 |
+
// Exit if a custom login page
|
161 |
+
if(preg_match("/login/i",$_SERVER['REQUEST_URI']) > 0 && $is_preview == false){
|
162 |
+
return false;
|
163 |
+
}
|
164 |
+
|
165 |
+
if(preg_match("/account/i",$_SERVER['REQUEST_URI']) > 0 && $is_preview == false){
|
166 |
+
return false;
|
167 |
+
}
|
168 |
+
|
169 |
+
//Exit if wysija double opt-in
|
170 |
+
if(preg_match("/wysija/i",$_SERVER['REQUEST_URI']) > 0 && $is_preview == false){
|
171 |
+
return false;
|
172 |
+
}
|
173 |
+
|
174 |
+
|
175 |
+
|
176 |
+
// Finally check if we should show the coming soon page.
|
177 |
+
$this->comingsoon_rendered = true;
|
178 |
+
|
179 |
+
// set headers
|
180 |
+
if($status == '2'){
|
181 |
+
header('HTTP/1.1 503 Service Temporarily Unavailable');
|
182 |
+
header('Status: 503 Service Temporarily Unavailable');
|
183 |
+
header('Retry-After: 86400'); // retry in a day
|
184 |
+
$csp4_maintenance_file = WP_CONTENT_DIR."/maintenance.php";
|
185 |
+
if(!empty($enable_maintenance_php) and file_exists($csp4_maintenance_file)){
|
186 |
+
include_once( $csp4_maintenance_file );
|
187 |
+
exit();
|
188 |
+
}
|
189 |
+
}
|
190 |
+
|
191 |
+
// render template tags
|
192 |
+
|
193 |
+
$template = $this->get_default_template();
|
194 |
+
require_once( SEED_CSP4_PLUGIN_PATH.'/themes/default/functions.php' );
|
195 |
+
$template_tags = array(
|
196 |
+
'{Title}' => seed_csp4_title(),
|
197 |
+
'{MetaDescription}' => seed_csp4_metadescription(),
|
198 |
+
'{Privacy}' => seed_csp4_privacy(),
|
199 |
+
'{Favicon}' => seed_csp4_favicon(),
|
200 |
+
'{CustomCSS}' => seed_csp4_customcss(),
|
201 |
+
'{Head}' => seed_csp4_head(),
|
202 |
+
'{Footer}' => seed_csp4_footer(),
|
203 |
+
'{Logo}' => seed_csp4_logo(),
|
204 |
+
'{Headline}' => seed_csp4_headline(),
|
205 |
+
'{Description}' => seed_csp4_description(),
|
206 |
+
'{Credit}' => seed_csp4_credit(),
|
207 |
+
);
|
208 |
+
echo strtr($template, $template_tags);
|
209 |
+
exit();
|
210 |
+
|
211 |
+
}
|
212 |
+
|
213 |
+
}
|
214 |
+
|
215 |
+
|
216 |
+
|
217 |
+
|
inc/config-settings.php
ADDED
@@ -0,0 +1,381 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Config
|
4 |
+
*
|
5 |
+
* @package WordPress
|
6 |
+
* @subpackage seed_csp4
|
7 |
+
* @since 0.1.0
|
8 |
+
*/
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Config Settings
|
12 |
+
*/
|
13 |
+
function seed_csp4_get_options(){
|
14 |
+
|
15 |
+
/**
|
16 |
+
* Create new menus
|
17 |
+
*/
|
18 |
+
|
19 |
+
$seed_csp4_options[ ] = array(
|
20 |
+
"type" => "menu",
|
21 |
+
"menu_type" => "add_options_page",
|
22 |
+
"page_name" => __( "Coming Soon", 'coming-soon' ),
|
23 |
+
"menu_slug" => "seed_csp4",
|
24 |
+
"layout" => "2-col"
|
25 |
+
);
|
26 |
+
|
27 |
+
/**
|
28 |
+
* Settings Tab
|
29 |
+
*/
|
30 |
+
$seed_csp4_options[ ] = array(
|
31 |
+
"type" => "tab",
|
32 |
+
"id" => "seed_csp4_setting",
|
33 |
+
"label" => __( "Content", 'coming-soon' ),
|
34 |
+
);
|
35 |
+
|
36 |
+
$seed_csp4_options[ ] = array(
|
37 |
+
"type" => "setting",
|
38 |
+
"id" => "seed_csp4_settings_content",
|
39 |
+
);
|
40 |
+
|
41 |
+
$seed_csp4_options[ ] = array(
|
42 |
+
"type" => "section",
|
43 |
+
"id" => "seed_csp4_section_general",
|
44 |
+
"label" => __( "General", 'coming-soon' ),
|
45 |
+
);
|
46 |
+
|
47 |
+
$seed_csp4_options[ ] = array(
|
48 |
+
"type" => "radio",
|
49 |
+
"id" => "status",
|
50 |
+
"label" => __( "Status", 'coming-soon' ),
|
51 |
+
"option_values" => array(
|
52 |
+
'0' => __( 'Disabled', 'coming-soon' ),
|
53 |
+
'1' => __( 'Enable Coming Soon Mode', 'coming-soon' ),
|
54 |
+
'2' => __( 'Enable Maintenance Mode', 'coming-soon' )
|
55 |
+
),
|
56 |
+
"desc" => __( "When you are logged in you'll see your normal website. Logged out visitors will see the Coming Soon or Maintenance page. Coming Soon Mode will be available to search engines if your site is not private. Maintenance Mode will notify search engines that the site is unavailable.", 'coming-soon' ),
|
57 |
+
"default_value" => "0"
|
58 |
+
);
|
59 |
+
|
60 |
+
|
61 |
+
$csp4_maintenance_file = WP_CONTENT_DIR."/maintenance.php";
|
62 |
+
if (file_exists($csp4_maintenance_file)) {
|
63 |
+
$seed_csp4_options[ ] = array(
|
64 |
+
"type" => "checkbox",
|
65 |
+
"id" => "enable_maintenance_php",
|
66 |
+
"label" => __( "Use maintenance.php", 'coming-soon' ),
|
67 |
+
"desc" => __('maintenance.php detected, would you like to use this for your maintenance page?', 'coming-soon'),
|
68 |
+
"option_values" => array(
|
69 |
+
'name' => __( 'Yes', 'coming-soon' ),
|
70 |
+
//'required' => __( 'Make Name Required', 'coming-soon' ),
|
71 |
+
)
|
72 |
+
);
|
73 |
+
}
|
74 |
+
|
75 |
+
// Page Setttings
|
76 |
+
$seed_csp4_options[ ] = array(
|
77 |
+
"type" => "section",
|
78 |
+
"id" => "seed_csp4_section_page_settings",
|
79 |
+
"label" => __( "Page Settings", 'coming-soon' )
|
80 |
+
);
|
81 |
+
|
82 |
+
$seed_csp4_options[ ] = array(
|
83 |
+
"type" => "upload",
|
84 |
+
"id" => "logo",
|
85 |
+
"label" => __( "Logo", 'coming-soon' ),
|
86 |
+
"desc" => __('Upload a logo or teaser image (or) enter the url to your image.', 'coming-soon'),
|
87 |
+
);
|
88 |
+
|
89 |
+
$seed_csp4_options[ ] = array(
|
90 |
+
"type" => "textbox",
|
91 |
+
"id" => "headline",
|
92 |
+
"class" => "large-text",
|
93 |
+
"label" => __( "Headline", 'coming-soon' ),
|
94 |
+
"desc" => __( "Enter a headline for your page.", 'coming-soon' ),
|
95 |
+
);
|
96 |
+
|
97 |
+
$seed_csp4_options[ ] = array(
|
98 |
+
"type" => "wpeditor",
|
99 |
+
"id" => "description",
|
100 |
+
"label" => __( "Message", 'coming-soon' ),
|
101 |
+
"desc" => __( "Tell the visitor what to expect from your site.", 'coming-soon' ),
|
102 |
+
"class" => "large-text"
|
103 |
+
);
|
104 |
+
|
105 |
+
$seed_csp4_options[ ] = array( "type" => "radio",
|
106 |
+
"id" => "footer_credit",
|
107 |
+
"label" => __("Powered By SeedProd", 'ultimate-coming-soon-page'),
|
108 |
+
"option_values" => array('0'=>__('Nope - Got No Love', 'coming-soon'),'1'=>__('Yep - I Love You Man', 'coming-soon')),
|
109 |
+
"desc" => __("Can we show a <strong>cool stylish</strong> footer credit at the bottom the page.", 'coming-soon'),
|
110 |
+
"default_value" => "0",
|
111 |
+
);
|
112 |
+
|
113 |
+
|
114 |
+
// Header
|
115 |
+
$seed_csp4_options[ ] = array(
|
116 |
+
"type" => "section",
|
117 |
+
"id" => "seed_csp4_section_header",
|
118 |
+
"label" => __( "Header", 'coming-soon' )
|
119 |
+
);
|
120 |
+
|
121 |
+
$seed_csp4_options[ ] = array(
|
122 |
+
"type" => "upload",
|
123 |
+
"id" => "favicon",
|
124 |
+
"label" => __( "Favicon", 'coming-soon' ),
|
125 |
+
"desc" => __('Favicons are displayed in a browser tab. Need Help <a href="http://tools.dynamicdrive.com/favicon/" target="_blank">creating a favicon</a>?', 'coming-soon'),
|
126 |
+
);
|
127 |
+
|
128 |
+
$seed_csp4_options[ ] = array(
|
129 |
+
"type" => "textbox",
|
130 |
+
"id" => "seo_title",
|
131 |
+
"label" => __( "SEO Title", 'coming-soon' ),
|
132 |
+
);
|
133 |
+
|
134 |
+
$seed_csp4_options[ ] = array(
|
135 |
+
"type" => "textarea",
|
136 |
+
"id" => "seo_description",
|
137 |
+
"label" => __( "SEO Meta Description", 'coming-soon' ),
|
138 |
+
"class" => "large-text"
|
139 |
+
);
|
140 |
+
|
141 |
+
|
142 |
+
$seed_csp4_options[ ] = array(
|
143 |
+
"type" => "textarea",
|
144 |
+
"id" => "ga_analytics",
|
145 |
+
"class" => "large-text",
|
146 |
+
"label" => __( "Analytics Code", 'coming-soon' ),
|
147 |
+
"desc" => __('Paste in your Universal or Classic <a href="http://www.google.com/analytics/" target="_blank">Google Analytics</a> code.', 'coming-soon'),
|
148 |
+
);
|
149 |
+
|
150 |
+
|
151 |
+
/**
|
152 |
+
* Design Tab
|
153 |
+
*/
|
154 |
+
$seed_csp4_options[ ] = array(
|
155 |
+
"type" => "tab",
|
156 |
+
"id" => "seed_csp4_design",
|
157 |
+
"label" => __( "Design", 'coming-soon' )
|
158 |
+
);
|
159 |
+
|
160 |
+
$seed_csp4_options[ ] = array(
|
161 |
+
"type" => "setting",
|
162 |
+
"id" => "seed_csp4_settings_design"
|
163 |
+
);
|
164 |
+
|
165 |
+
|
166 |
+
// Background
|
167 |
+
$seed_csp4_options[ ] = array(
|
168 |
+
"type" => "section",
|
169 |
+
"id" => "seed_csp4_section_background",
|
170 |
+
"label" => __( "Background", 'coming-soon' )
|
171 |
+
);
|
172 |
+
|
173 |
+
|
174 |
+
$seed_csp4_options[ ] = array(
|
175 |
+
"type" => "color",
|
176 |
+
"id" => "bg_color",
|
177 |
+
"label" => __( "Background Color", 'coming-soon' ),
|
178 |
+
"default_value" => "#fafafa",
|
179 |
+
"validate" => 'color',
|
180 |
+
"desc" => __( "Choose between having a solid color background or uploading an image. By default images will cover the entire background.", 'coming-soon' )
|
181 |
+
);
|
182 |
+
|
183 |
+
|
184 |
+
$seed_csp4_options[ ] = array(
|
185 |
+
"type" => "upload",
|
186 |
+
"id" => "bg_image",
|
187 |
+
"label" => __( "Background Image", 'coming-soon' ),
|
188 |
+
);
|
189 |
+
|
190 |
+
$seed_csp4_options[ ] = array(
|
191 |
+
"type" => "checkbox",
|
192 |
+
"id" => "bg_cover",
|
193 |
+
"label" => __( "Responsive Background", 'coming-soon' ),
|
194 |
+
"desc" => __("Scale the background image to be as large as possible so that the background area is completely covered by the background image. Some parts of the background image may not be in view within the background positioning area.", 'coming-soon'),
|
195 |
+
"option_values" => array(
|
196 |
+
'1' => __( 'Yes', 'coming-soon' ),
|
197 |
+
),
|
198 |
+
"default" => "1",
|
199 |
+
);
|
200 |
+
|
201 |
+
$seed_csp4_options[ ] = array(
|
202 |
+
"type" => "select",
|
203 |
+
"id" => "bg_repeat",
|
204 |
+
"desc" => __('This setting is not applied if Responsive Background is checked', 'coming-soon' ),
|
205 |
+
"label" => __( "Background Repeat", 'coming-soon' ),
|
206 |
+
"option_values" => array(
|
207 |
+
'no-repeat' => __( 'No-Repeat', 'coming-soon' ),
|
208 |
+
'repeat' => __( 'Tile', 'coming-soon' ),
|
209 |
+
'repeat-x' => __( 'Tile Horizontally', 'coming-soon' ),
|
210 |
+
'repeat-y' => __( 'Tile Vertically', 'coming-soon' ),
|
211 |
+
)
|
212 |
+
);
|
213 |
+
|
214 |
+
|
215 |
+
$seed_csp4_options[ ] = array(
|
216 |
+
"type" => "select",
|
217 |
+
"id" => "bg_position",
|
218 |
+
"desc" => __('This setting is not applied if Responsive Background is checked', 'coming-soon' ),
|
219 |
+
"label" => __( "Background Position", 'coming-soon' ),
|
220 |
+
"option_values" => array(
|
221 |
+
'left top' => __( 'Left Top', 'coming-soon' ),
|
222 |
+
'left center' => __( 'Left Center', 'coming-soon' ),
|
223 |
+
'left bottom' => __( 'Left Bottom', 'coming-soon' ),
|
224 |
+
'right top' => __( 'Right Top', 'coming-soon' ),
|
225 |
+
'right center' => __( 'Right Center', 'coming-soon' ),
|
226 |
+
'right bottom' => __( 'Right Bottom', 'coming-soon' ),
|
227 |
+
'center top' => __( 'Center Top', 'coming-soon' ),
|
228 |
+
'center center' => __( 'Center Center', 'coming-soon' ),
|
229 |
+
'center bottom' => __( 'Center Bottom', 'coming-soon' ),
|
230 |
+
)
|
231 |
+
);
|
232 |
+
|
233 |
+
$seed_csp4_options[ ] = array(
|
234 |
+
"type" => "select",
|
235 |
+
"id" => "bg_attahcment",
|
236 |
+
"desc" => __('This setting is not applied if Responsive Background is checked', 'coming-soon' ),
|
237 |
+
"label" => __( "Background Attachment", 'coming-soon' ),
|
238 |
+
"option_values" => array(
|
239 |
+
'fixed' => __( 'Fixed', 'coming-soon' ),
|
240 |
+
'scroll' => __( 'Scroll', 'coming-soon' ),
|
241 |
+
)
|
242 |
+
);
|
243 |
+
|
244 |
+
// Background
|
245 |
+
$seed_csp4_options[ ] = array(
|
246 |
+
"type" => "section",
|
247 |
+
"id" => "seed_csp4_section_well",
|
248 |
+
"label" => __( "Content", 'coming-soon' )
|
249 |
+
);
|
250 |
+
|
251 |
+
$seed_csp4_options[ ] = array(
|
252 |
+
"type" => "textbox",
|
253 |
+
"id" => "max_width",
|
254 |
+
"class" => "text-small",
|
255 |
+
"label" => __( "Max Width", 'coming-soon' ),
|
256 |
+
"desc" => __("By default the max width of the content is set to 600px. Enter a number value if you need it bigger. Example: 900", 'coming-soon'), );
|
257 |
+
|
258 |
+
$seed_csp4_options[ ] = array(
|
259 |
+
"type" => "checkbox",
|
260 |
+
"id" => "enable_well",
|
261 |
+
"label" => __( "Enable Well", 'coming-soon' ),
|
262 |
+
"desc" => __("This will wrap your content in a box.", 'coming-soon'),
|
263 |
+
"option_values" => array(
|
264 |
+
'1' => __( 'Yes', 'coming-soon' ),
|
265 |
+
),
|
266 |
+
);
|
267 |
+
|
268 |
+
|
269 |
+
|
270 |
+
// Text
|
271 |
+
$seed_csp4_options[ ] = array(
|
272 |
+
"type" => "section",
|
273 |
+
"id" => "seed_csp4_section_text",
|
274 |
+
"label" => __( "Text", 'coming-soon' )
|
275 |
+
);
|
276 |
+
|
277 |
+
$seed_csp4_options[ ] = array(
|
278 |
+
"type" => "color",
|
279 |
+
"id" => "text_color",
|
280 |
+
"label" => __( "Text Color", 'coming-soon' ),
|
281 |
+
"default_value" => "#666666",
|
282 |
+
"validate" => 'required,color',
|
283 |
+
);
|
284 |
+
|
285 |
+
$seed_csp4_options[ ] = array(
|
286 |
+
"type" => "color",
|
287 |
+
"id" => "link_color",
|
288 |
+
"label" => __( "Link Color", 'coming-soon' ),
|
289 |
+
"default_value" => "#27AE60",
|
290 |
+
"validate" => 'required,color',
|
291 |
+
);
|
292 |
+
|
293 |
+
$seed_csp4_options[ ] = array(
|
294 |
+
"type" => "color",
|
295 |
+
"id" => "headline_color",
|
296 |
+
"label" => __( "Headline Color", 'coming-soon' ),
|
297 |
+
"validate" => 'color',
|
298 |
+
"default_value" => "#444444",
|
299 |
+
"desc" => __('If no Headline Color is chosen then the Link Color will be used. ','coming-soon'),
|
300 |
+
);
|
301 |
+
|
302 |
+
|
303 |
+
|
304 |
+
$seed_csp4_options[ ] = array(
|
305 |
+
"type" => "select",
|
306 |
+
"id" => "text_font",
|
307 |
+
"label" => __( "Text Font", 'coming-soon' ),
|
308 |
+
"option_values" => apply_filters('seed_csp4_fonts',array(
|
309 |
+
'_arial' => 'Arial',
|
310 |
+
'_arial_black' =>'Arial Black',
|
311 |
+
'_georgia' => 'Georgia',
|
312 |
+
'_helvetica_neue' => 'Helvetica Neue',
|
313 |
+
'_impact' => 'Impact',
|
314 |
+
'_lucida' => 'Lucida Grande',
|
315 |
+
'_palatino' => 'Palatino',
|
316 |
+
'_tahoma' => 'Tahoma',
|
317 |
+
'_times' => 'Times New Roman',
|
318 |
+
'_trebuchet' => 'Trebuchet',
|
319 |
+
'_verdana' => 'Verdana',
|
320 |
+
)),
|
321 |
+
);
|
322 |
+
|
323 |
+
|
324 |
+
// Template
|
325 |
+
$seed_csp4_options[ ] = array(
|
326 |
+
"type" => "section",
|
327 |
+
"id" => "seed_csp4_section_template",
|
328 |
+
"label" => __( "Template", 'coming-soon' )
|
329 |
+
);
|
330 |
+
|
331 |
+
|
332 |
+
$seed_csp4_options[ ] = array(
|
333 |
+
"type" => "textarea",
|
334 |
+
"id" => "custom_css",
|
335 |
+
"class" => "large-text",
|
336 |
+
"label" => __( "Custom CSS", 'coming-soon' ),
|
337 |
+
"desc" => __('Need to tweaks the styles? Add your custom CSS here.','coming-soon'),
|
338 |
+
);
|
339 |
+
|
340 |
+
/**
|
341 |
+
* Advanced Tab
|
342 |
+
*/
|
343 |
+
$seed_csp4_options[ ] = array(
|
344 |
+
"type" => "tab",
|
345 |
+
"id" => "seed_csp4_advanced",
|
346 |
+
"label" => __( "Advanced", 'coming-soon' )
|
347 |
+
);
|
348 |
+
|
349 |
+
$seed_csp4_options[ ] = array(
|
350 |
+
"type" => "setting",
|
351 |
+
"id" => "seed_csp4_settings_advanced"
|
352 |
+
);
|
353 |
+
|
354 |
+
|
355 |
+
// Scripts
|
356 |
+
$seed_csp4_options[ ] = array(
|
357 |
+
"type" => "section",
|
358 |
+
"id" => "seed_csp4_section_scripts",
|
359 |
+
"label" => __( "Scripts", 'coming-soon' )
|
360 |
+
);
|
361 |
+
|
362 |
+
$seed_csp4_options[ ] = array(
|
363 |
+
"type" => "textarea",
|
364 |
+
"id" => "header_scripts",
|
365 |
+
"label" => __( "Header Scripts", 'coming-soon' ),
|
366 |
+
"desc" => __('Enter any custom scripts. You can enter Javascript or CSS. This will be rendered before the closing head tag.', 'coming-soon'),
|
367 |
+
"class" => "large-text"
|
368 |
+
);
|
369 |
+
|
370 |
+
$seed_csp4_options[ ] = array(
|
371 |
+
"type" => "textarea",
|
372 |
+
"id" => "footer_scripts",
|
373 |
+
"label" => __( "Footer Scripts", 'coming-soon' ),
|
374 |
+
"desc" => __('Enter any custom scripts. This will be rendered before the closing body tag.', 'coming-soon'),
|
375 |
+
"class" => "large-text"
|
376 |
+
);
|
377 |
+
|
378 |
+
|
379 |
+
return $seed_csp4_options;
|
380 |
+
|
381 |
+
}
|
inc/default-settings.php
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
$seed_csp4_settings_deafults = array (
|
3 |
+
'seed_csp4_settings_content' => 'a:9:{s:6:"status";s:1:"0";s:4:"logo";s:0:"";s:8:"headline";s:0:"";s:11:"description";s:0:"";s:13:"footer_credit";s:1:"0";s:7:"favicon";s:0:"";s:9:"seo_title";s:0:"";s:15:"seo_description";s:0:"";s:12:"ga_analytics";s:0:"";}',
|
4 |
+
'seed_csp4_settings_design' => 'a:12:{s:8:"bg_color";s:7:"#fafafa";s:8:"bg_image";s:0:"";s:8:"bg_cover";a:1:{i:0;s:1:"1";}s:9:"bg_repeat";s:9:"no-repeat";s:11:"bg_position";s:8:"left top";s:13:"bg_attahcment";s:5:"fixed";s:9:"max_width";s:0:"";s:10:"text_color";s:7:"#666666";s:10:"link_color";s:7:"#27AE60";s:14:"headline_color";s:7:"#444444";s:9:"text_font";s:6:"_arial";s:10:"custom_css";s:0:"";}',
|
5 |
+
'seed_csp4_settings_advanced' => 'a:2:{s:14:"header_scripts";s:0:"";s:14:"footer_scripts";s:0:"";}',
|
6 |
+
);
|
languages/seedprod.pot
ADDED
@@ -0,0 +1,1643 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: Coming Soon Pro by SeedProd\n"
|
4 |
+
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2013-11-24 17:31-0500\n"
|
6 |
+
"PO-Revision-Date: 2013-11-24 17:31-0500\n"
|
7 |
+
"Last-Translator: \n"
|
8 |
+
"Language-Team: \n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Poedit-KeywordsList: __\n"
|
13 |
+
"X-Poedit-Basepath: ../\n"
|
14 |
+
"X-Generator: Poedit 1.5.7\n"
|
15 |
+
"X-Poedit-SearchPath-0: .\n"
|
16 |
+
|
17 |
+
#: seedprod-coming-soon-pro.php:34 inc/config.php:29
|
18 |
+
msgid "Coming Soon Pro"
|
19 |
+
msgstr ""
|
20 |
+
|
21 |
+
#: seedprod-coming-soon-pro.php:59
|
22 |
+
#, php-format
|
23 |
+
msgid ""
|
24 |
+
"WordPress %s and higher required. The plugin has now disabled itself. On a "
|
25 |
+
"side note why are you running an old version :( Upgrade!"
|
26 |
+
msgstr ""
|
27 |
+
|
28 |
+
#: framework/framework.php:72
|
29 |
+
msgid "Settings reset."
|
30 |
+
msgstr ""
|
31 |
+
|
32 |
+
#: framework/framework.php:226
|
33 |
+
msgid "← Close Window"
|
34 |
+
msgstr ""
|
35 |
+
|
36 |
+
#: framework/framework.php:226
|
37 |
+
msgid "Live Preview"
|
38 |
+
msgstr ""
|
39 |
+
|
40 |
+
#: framework/framework.php:228
|
41 |
+
msgid "Support"
|
42 |
+
msgstr ""
|
43 |
+
|
44 |
+
#: framework/field-types/customaweberauth.php:11
|
45 |
+
msgid "Save"
|
46 |
+
msgstr ""
|
47 |
+
|
48 |
+
#: framework/field-types/customaweberlists.php:25
|
49 |
+
#: framework/field-types/customcampaignmonitorclients.php:25
|
50 |
+
#: framework/field-types/customcampaignmonitorlists.php:26
|
51 |
+
#: framework/field-types/customconstantcontactlist.php:26
|
52 |
+
#: framework/field-types/customgetresponse.php:25
|
53 |
+
#: framework/field-types/customicontact.php:25
|
54 |
+
#: framework/field-types/custommadmini.php:25
|
55 |
+
#: framework/field-types/custommailchimplist.php:25
|
56 |
+
msgid "Refresh List"
|
57 |
+
msgstr ""
|
58 |
+
|
59 |
+
#: framework/field-types/customcontainereffects.php:21
|
60 |
+
msgid "Width"
|
61 |
+
msgstr ""
|
62 |
+
|
63 |
+
#: framework/field-types/customcontainereffects.php:33
|
64 |
+
msgid "Color"
|
65 |
+
msgstr ""
|
66 |
+
|
67 |
+
#: framework/field-types/customcontainereffects.php:44
|
68 |
+
msgid "Radius"
|
69 |
+
msgstr ""
|
70 |
+
|
71 |
+
#: framework/field-types/customcountdown.php:8
|
72 |
+
#: framework/field-types/date.php:8 framework/field-types/daterange.php:8
|
73 |
+
msgid "01-Jan"
|
74 |
+
msgstr ""
|
75 |
+
|
76 |
+
#: framework/field-types/customcountdown.php:9
|
77 |
+
#: framework/field-types/date.php:9 framework/field-types/daterange.php:9
|
78 |
+
msgid "02-Feb"
|
79 |
+
msgstr ""
|
80 |
+
|
81 |
+
#: framework/field-types/customcountdown.php:10
|
82 |
+
#: framework/field-types/date.php:10 framework/field-types/daterange.php:10
|
83 |
+
msgid "03-Mar"
|
84 |
+
msgstr ""
|
85 |
+
|
86 |
+
#: framework/field-types/customcountdown.php:11
|
87 |
+
#: framework/field-types/date.php:11 framework/field-types/daterange.php:11
|
88 |
+
msgid "04-Apr"
|
89 |
+
msgstr ""
|
90 |
+
|
91 |
+
#: framework/field-types/customcountdown.php:12
|
92 |
+
#: framework/field-types/date.php:12 framework/field-types/daterange.php:12
|
93 |
+
msgid "05-May"
|
94 |
+
msgstr ""
|
95 |
+
|
96 |
+
#: framework/field-types/customcountdown.php:13
|
97 |
+
#: framework/field-types/date.php:13 framework/field-types/daterange.php:13
|
98 |
+
msgid "06-Jun"
|
99 |
+
msgstr ""
|
100 |
+
|
101 |
+
#: framework/field-types/customcountdown.php:14
|
102 |
+
#: framework/field-types/date.php:14 framework/field-types/daterange.php:14
|
103 |
+
msgid "07-Jul"
|
104 |
+
msgstr ""
|
105 |
+
|
106 |
+
#: framework/field-types/customcountdown.php:15
|
107 |
+
#: framework/field-types/date.php:15 framework/field-types/daterange.php:15
|
108 |
+
msgid "08-Aug"
|
109 |
+
msgstr ""
|
110 |
+
|
111 |
+
#: framework/field-types/customcountdown.php:16
|
112 |
+
#: framework/field-types/date.php:16 framework/field-types/daterange.php:16
|
113 |
+
msgid "09-Sep"
|
114 |
+
msgstr ""
|
115 |
+
|
116 |
+
#: framework/field-types/customcountdown.php:17
|
117 |
+
#: framework/field-types/date.php:17 framework/field-types/daterange.php:17
|
118 |
+
msgid "10-Oct"
|
119 |
+
msgstr ""
|
120 |
+
|
121 |
+
#: framework/field-types/customcountdown.php:18
|
122 |
+
#: framework/field-types/date.php:18 framework/field-types/daterange.php:18
|
123 |
+
msgid "11-Nov"
|
124 |
+
msgstr ""
|
125 |
+
|
126 |
+
#: framework/field-types/customcountdown.php:19
|
127 |
+
#: framework/field-types/date.php:19 framework/field-types/daterange.php:19
|
128 |
+
msgid "12-Dec"
|
129 |
+
msgstr ""
|
130 |
+
|
131 |
+
#: framework/field-types/customcountdown.php:32
|
132 |
+
#: framework/field-types/date.php:29 framework/field-types/daterange.php:29
|
133 |
+
#: framework/field-types/daterange.php:42
|
134 |
+
msgid "day"
|
135 |
+
msgstr ""
|
136 |
+
|
137 |
+
#: framework/field-types/customcountdown.php:35
|
138 |
+
#: framework/field-types/date.php:32 framework/field-types/daterange.php:32
|
139 |
+
#: framework/field-types/daterange.php:45
|
140 |
+
msgid "year"
|
141 |
+
msgstr ""
|
142 |
+
|
143 |
+
#: framework/field-types/customcountdown.php:38
|
144 |
+
msgid "hh"
|
145 |
+
msgstr ""
|
146 |
+
|
147 |
+
#: framework/field-types/customcountdown.php:39
|
148 |
+
msgid "mm"
|
149 |
+
msgstr ""
|
150 |
+
|
151 |
+
#: framework/field-types/customlicensekey.php:16
|
152 |
+
msgid "Check License"
|
153 |
+
msgstr ""
|
154 |
+
|
155 |
+
#: framework/field-types/customsharebuttons.php:14
|
156 |
+
msgid "Optional Tweet Text"
|
157 |
+
msgstr ""
|
158 |
+
|
159 |
+
#: framework/field-types/customsharebuttons.php:18
|
160 |
+
msgid "Image for Facebook Like. Optimal Size: 200px x 200px"
|
161 |
+
msgstr ""
|
162 |
+
|
163 |
+
#: framework/field-types/customsharebuttons.php:19
|
164 |
+
#: framework/field-types/customsharebuttons.php:30
|
165 |
+
#: framework/field-types/upload.php:8
|
166 |
+
msgid "Media Image Library"
|
167 |
+
msgstr ""
|
168 |
+
|
169 |
+
#: framework/field-types/customsharebuttons.php:29
|
170 |
+
msgid "Image for Pinterest"
|
171 |
+
msgstr ""
|
172 |
+
|
173 |
+
#: framework/validations/color.php:13
|
174 |
+
msgid "Please enter a valid color value."
|
175 |
+
msgstr ""
|
176 |
+
|
177 |
+
#: framework/validations/email.php:10 framework/validations/escurlraw.php:11
|
178 |
+
#: inc/config.php:885
|
179 |
+
msgid "Please enter a valid email."
|
180 |
+
msgstr ""
|
181 |
+
|
182 |
+
#: framework/validations/number.php:11
|
183 |
+
msgid "Please enter a valid number."
|
184 |
+
msgstr ""
|
185 |
+
|
186 |
+
#: framework/validations/required.php:10
|
187 |
+
msgid "is required."
|
188 |
+
msgstr ""
|
189 |
+
|
190 |
+
#: inc/class-plugin.php:212
|
191 |
+
msgid "Super Admin"
|
192 |
+
msgstr ""
|
193 |
+
|
194 |
+
#: inc/class-plugin.php:225
|
195 |
+
msgid "Coming Soon Mode Active"
|
196 |
+
msgstr ""
|
197 |
+
|
198 |
+
#: inc/class-plugin.php:227
|
199 |
+
msgid "Maintenance Mode Active"
|
200 |
+
msgstr ""
|
201 |
+
|
202 |
+
#: inc/class-plugin.php:254
|
203 |
+
msgid "Are you sure you want to DELETE all subscribers?"
|
204 |
+
msgstr ""
|
205 |
+
|
206 |
+
#: inc/class-plugin.php:255
|
207 |
+
msgid ""
|
208 |
+
"Are you sure you want to IMPORT these settings? Current settings will be "
|
209 |
+
"erased!"
|
210 |
+
msgstr ""
|
211 |
+
|
212 |
+
#: inc/class-plugin.php:413 inc/class-plugin.php:469 inc/class-plugin.php:519
|
213 |
+
#: inc/class-plugin.php:561
|
214 |
+
msgid "No lists Found"
|
215 |
+
msgstr ""
|
216 |
+
|
217 |
+
#: inc/class-plugin.php:417
|
218 |
+
msgid "Unable to load MailChimp lists, check your API Key."
|
219 |
+
msgstr ""
|
220 |
+
|
221 |
+
#: inc/class-plugin.php:513
|
222 |
+
msgid "Unable to authenticate"
|
223 |
+
msgstr ""
|
224 |
+
|
225 |
+
#: inc/class-plugin.php:616
|
226 |
+
msgid "Unable to load Constant Contact lists"
|
227 |
+
msgstr ""
|
228 |
+
|
229 |
+
#: inc/class-plugin.php:669
|
230 |
+
msgid "Unable to load Campaign Monitor lists"
|
231 |
+
msgstr ""
|
232 |
+
|
233 |
+
#: inc/class-plugin.php:717
|
234 |
+
msgid "Unable to load Campaign Monitor clients"
|
235 |
+
msgstr ""
|
236 |
+
|
237 |
+
#: inc/class-plugin.php:775
|
238 |
+
msgid "Unable to load Aweber lists"
|
239 |
+
msgstr ""
|
240 |
+
|
241 |
+
#: inc/class-plugin.php:903
|
242 |
+
msgid "New Email Subscriber"
|
243 |
+
msgstr ""
|
244 |
+
|
245 |
+
#: inc/class-plugin.php:1650
|
246 |
+
msgid "Do not display an Email SignUp"
|
247 |
+
msgstr ""
|
248 |
+
|
249 |
+
#: inc/class-plugin.php:1651
|
250 |
+
msgid "Database"
|
251 |
+
msgstr ""
|
252 |
+
|
253 |
+
#: inc/class-plugin.php:1652
|
254 |
+
msgid "FeedBurner"
|
255 |
+
msgstr ""
|
256 |
+
|
257 |
+
#: inc/class-plugin.php:1739
|
258 |
+
msgid "All subscribers deleted."
|
259 |
+
msgstr ""
|
260 |
+
|
261 |
+
#: inc/class-plugin.php:1746
|
262 |
+
msgid "Selected subscribers deleted."
|
263 |
+
msgstr ""
|
264 |
+
|
265 |
+
#: inc/class-plugin.php:1869
|
266 |
+
msgid "Subscribed on: "
|
267 |
+
msgstr ""
|
268 |
+
|
269 |
+
#: inc/class-plugin.php:1923 inc/config.php:1518
|
270 |
+
msgid "Subscribers"
|
271 |
+
msgstr ""
|
272 |
+
|
273 |
+
#: inc/class-plugin.php:1924
|
274 |
+
msgid "Clicks"
|
275 |
+
msgstr ""
|
276 |
+
|
277 |
+
#: inc/class-plugin.php:1925
|
278 |
+
msgid "# People Signed Up"
|
279 |
+
msgstr ""
|
280 |
+
|
281 |
+
#: inc/class-plugin.php:1926
|
282 |
+
msgid "Conversion Rate"
|
283 |
+
msgstr ""
|
284 |
+
|
285 |
+
#: inc/class-plugin.php:1927
|
286 |
+
msgid "Created"
|
287 |
+
msgstr ""
|
288 |
+
|
289 |
+
#: inc/class-plugin.php:1963
|
290 |
+
msgid "Export All"
|
291 |
+
msgstr ""
|
292 |
+
|
293 |
+
#: inc/class-plugin.php:1964
|
294 |
+
msgid "Delete All"
|
295 |
+
msgstr ""
|
296 |
+
|
297 |
+
#: inc/class-plugin.php:1965
|
298 |
+
msgid "Delete Selected"
|
299 |
+
msgstr ""
|
300 |
+
|
301 |
+
#: inc/config.php:40
|
302 |
+
msgid "Settings"
|
303 |
+
msgstr ""
|
304 |
+
|
305 |
+
#: inc/config.php:51
|
306 |
+
msgid "General"
|
307 |
+
msgstr ""
|
308 |
+
|
309 |
+
#: inc/config.php:57
|
310 |
+
msgid "Status"
|
311 |
+
msgstr ""
|
312 |
+
|
313 |
+
#: inc/config.php:59
|
314 |
+
msgid "Disabled"
|
315 |
+
msgstr ""
|
316 |
+
|
317 |
+
#: inc/config.php:60
|
318 |
+
msgid "Enable Coming Soon Mode"
|
319 |
+
msgstr ""
|
320 |
+
|
321 |
+
#: inc/config.php:61
|
322 |
+
msgid "Enable Maintenance Mode"
|
323 |
+
msgstr ""
|
324 |
+
|
325 |
+
#: inc/config.php:63
|
326 |
+
msgid ""
|
327 |
+
"When you are logged in you'll see your normal website. Logged out visitors "
|
328 |
+
"will see the Coming Soon or Maintenance page. Coming Soon Mode will be "
|
329 |
+
"available to search engines if your site is not private. Maintenance Mode "
|
330 |
+
"will notify search engines that the site is unavailable."
|
331 |
+
msgstr ""
|
332 |
+
|
333 |
+
#: inc/config.php:73
|
334 |
+
msgid "Use maintenance.php"
|
335 |
+
msgstr ""
|
336 |
+
|
337 |
+
#: inc/config.php:74
|
338 |
+
msgid ""
|
339 |
+
"maintenance.php detected, would you like to use this for your maintenance "
|
340 |
+
"page?"
|
341 |
+
msgstr ""
|
342 |
+
|
343 |
+
#: inc/config.php:76 inc/config.php:189 inc/config.php:451 inc/config.php:519
|
344 |
+
#: inc/config.php:529 inc/config.php:539 inc/config.php:556 inc/config.php:598
|
345 |
+
#: inc/config.php:615 inc/config.php:661 inc/config.php:686 inc/config.php:902
|
346 |
+
#: inc/config.php:973 inc/config.php:1037 inc/config.php:1048
|
347 |
+
#: inc/config.php:1091 inc/config.php:1236 inc/config.php:1431
|
348 |
+
#: inc/config.php:1442 inc/config.php:1454 inc/config.php:1488
|
349 |
+
msgid "Yes"
|
350 |
+
msgstr ""
|
351 |
+
|
352 |
+
#: inc/config.php:87
|
353 |
+
msgid "License Key"
|
354 |
+
msgstr ""
|
355 |
+
|
356 |
+
#: inc/config.php:88
|
357 |
+
msgid ""
|
358 |
+
"Enter your <a href='http://www.seedprod.com/members' target='_blank'>License "
|
359 |
+
"Key</a> to receive automatic plugin updates."
|
360 |
+
msgstr ""
|
361 |
+
|
362 |
+
#: inc/config.php:97
|
363 |
+
msgid "Page Settings"
|
364 |
+
msgstr ""
|
365 |
+
|
366 |
+
#: inc/config.php:103
|
367 |
+
msgid "Logo"
|
368 |
+
msgstr ""
|
369 |
+
|
370 |
+
#: inc/config.php:104
|
371 |
+
msgid "Upload a logo or teaser image (or) enter the url to your image."
|
372 |
+
msgstr ""
|
373 |
+
|
374 |
+
#: inc/config.php:111
|
375 |
+
msgid "Headline"
|
376 |
+
msgstr ""
|
377 |
+
|
378 |
+
#: inc/config.php:112
|
379 |
+
msgid ""
|
380 |
+
"Enter a headline for your page. Replace the default headline if it exists."
|
381 |
+
msgstr ""
|
382 |
+
|
383 |
+
#: inc/config.php:118
|
384 |
+
msgid "Description"
|
385 |
+
msgstr ""
|
386 |
+
|
387 |
+
#: inc/config.php:119
|
388 |
+
msgid ""
|
389 |
+
"Tell the visitor what to expect from your site. Also supports WordPress "
|
390 |
+
"shortcodes and <a href='http://codex.wordpress.org/Embeds' "
|
391 |
+
"target='_target'>video embeds</a>."
|
392 |
+
msgstr ""
|
393 |
+
|
394 |
+
#: inc/config.php:135
|
395 |
+
msgid "Form Settings"
|
396 |
+
msgstr ""
|
397 |
+
|
398 |
+
#: inc/config.php:141
|
399 |
+
msgid "Save subscribers to:"
|
400 |
+
msgstr ""
|
401 |
+
|
402 |
+
#: inc/config.php:149
|
403 |
+
msgid "Name Field"
|
404 |
+
msgstr ""
|
405 |
+
|
406 |
+
#: inc/config.php:150
|
407 |
+
msgid "Ask for the visitors name."
|
408 |
+
msgstr ""
|
409 |
+
|
410 |
+
#: inc/config.php:152
|
411 |
+
msgid "Display Name Field"
|
412 |
+
msgstr ""
|
413 |
+
|
414 |
+
#: inc/config.php:180
|
415 |
+
msgid "Database Settings"
|
416 |
+
msgstr ""
|
417 |
+
|
418 |
+
#: inc/config.php:186
|
419 |
+
msgid "Enable New Subscriber Notifications"
|
420 |
+
msgstr ""
|
421 |
+
|
422 |
+
#: inc/config.php:187
|
423 |
+
msgid "Get an email notification when some subscribes."
|
424 |
+
msgstr ""
|
425 |
+
|
426 |
+
#: inc/config.php:196
|
427 |
+
msgid "Send Notifications to this Email"
|
428 |
+
msgstr ""
|
429 |
+
|
430 |
+
#: inc/config.php:197
|
431 |
+
msgid ""
|
432 |
+
"Separate multiple emails with a comma. If no email is defined, notifications "
|
433 |
+
"while be sent to the admin email."
|
434 |
+
msgstr ""
|
435 |
+
|
436 |
+
#: inc/config.php:204
|
437 |
+
msgid "FeedBurner Settings"
|
438 |
+
msgstr ""
|
439 |
+
|
440 |
+
#: inc/config.php:210
|
441 |
+
msgid "Address"
|
442 |
+
msgstr ""
|
443 |
+
|
444 |
+
#: inc/config.php:211
|
445 |
+
msgid "Enter your FeedBurner address."
|
446 |
+
msgstr ""
|
447 |
+
|
448 |
+
#: inc/config.php:217
|
449 |
+
msgid "Local"
|
450 |
+
msgstr ""
|
451 |
+
|
452 |
+
#: inc/config.php:220
|
453 |
+
msgid ""
|
454 |
+
"The language the FeedBurner form is displayed in. The default is English. <a "
|
455 |
+
"href=\"http://support.google.com/feedburner/bin/answer.py?"
|
456 |
+
"hl=en&answer=81423\">Learn more</a>."
|
457 |
+
msgstr ""
|
458 |
+
|
459 |
+
#: inc/config.php:227
|
460 |
+
msgid "Aweber Settings"
|
461 |
+
msgstr ""
|
462 |
+
|
463 |
+
#: inc/config.php:234
|
464 |
+
msgid ""
|
465 |
+
"<a href=\"https://auth.aweber.com/1.0/oauth/authorize_app/a662998e\" target="
|
466 |
+
"\"_blank\">Authorize App</a> ← Click the link to get you Authorization "
|
467 |
+
"Code."
|
468 |
+
msgstr ""
|
469 |
+
|
470 |
+
#: inc/config.php:240
|
471 |
+
msgid "Authorization Code"
|
472 |
+
msgstr ""
|
473 |
+
|
474 |
+
#: inc/config.php:241
|
475 |
+
msgid ""
|
476 |
+
"Paste in the Authorization Code you received when authorizing the app and "
|
477 |
+
"click <strong>Save</strong>."
|
478 |
+
msgstr ""
|
479 |
+
|
480 |
+
#: inc/config.php:247 inc/config.php:275 inc/config.php:304 inc/config.php:426
|
481 |
+
#: inc/config.php:465 inc/config.php:509
|
482 |
+
msgid "List"
|
483 |
+
msgstr ""
|
484 |
+
|
485 |
+
#: inc/config.php:255
|
486 |
+
msgid "Campaign Monitor Settings"
|
487 |
+
msgstr ""
|
488 |
+
|
489 |
+
#: inc/config.php:261 inc/config.php:318 inc/config.php:347 inc/config.php:375
|
490 |
+
#: inc/config.php:502
|
491 |
+
msgid "API Key"
|
492 |
+
msgstr ""
|
493 |
+
|
494 |
+
#: inc/config.php:262
|
495 |
+
msgid ""
|
496 |
+
"Get your <a target=\"_blank\" href=\"http://help.campaignmonitor.com/topic."
|
497 |
+
"aspx?t=206\">API key</a>"
|
498 |
+
msgstr ""
|
499 |
+
|
500 |
+
#: inc/config.php:268
|
501 |
+
msgid "Client"
|
502 |
+
msgstr ""
|
503 |
+
|
504 |
+
#: inc/config.php:284
|
505 |
+
msgid "Constant Contact Settings"
|
506 |
+
msgstr ""
|
507 |
+
|
508 |
+
#: inc/config.php:290 inc/config.php:412
|
509 |
+
msgid "Username"
|
510 |
+
msgstr ""
|
511 |
+
|
512 |
+
#: inc/config.php:291
|
513 |
+
msgid "Enter your Constant Contact username."
|
514 |
+
msgstr ""
|
515 |
+
|
516 |
+
#: inc/config.php:297
|
517 |
+
msgid "Password"
|
518 |
+
msgstr ""
|
519 |
+
|
520 |
+
#: inc/config.php:298
|
521 |
+
msgid "Enter your Constant Contact password."
|
522 |
+
msgstr ""
|
523 |
+
|
524 |
+
#: inc/config.php:312
|
525 |
+
msgid "GetResponse Settings"
|
526 |
+
msgstr ""
|
527 |
+
|
528 |
+
#: inc/config.php:319
|
529 |
+
msgid ""
|
530 |
+
"Enter your API Key. <a target=\"_blank\" href=\"https://app.getresponse.com/"
|
531 |
+
"my_account.html\" target=\"_blank\">Get your API key</a>"
|
532 |
+
msgstr ""
|
533 |
+
|
534 |
+
#: inc/config.php:325 inc/config.php:354
|
535 |
+
msgid "Campaign"
|
536 |
+
msgstr ""
|
537 |
+
|
538 |
+
#: inc/config.php:334
|
539 |
+
msgid "Mad Mimi Settings"
|
540 |
+
msgstr ""
|
541 |
+
|
542 |
+
#: inc/config.php:340
|
543 |
+
msgid "Username or Email"
|
544 |
+
msgstr ""
|
545 |
+
|
546 |
+
#: inc/config.php:341
|
547 |
+
msgid "Enter your username or email."
|
548 |
+
msgstr ""
|
549 |
+
|
550 |
+
#: inc/config.php:348
|
551 |
+
msgid ""
|
552 |
+
"Enter your API Key. <a target=\"_blank\" href=\"https://madmimi.com/user/"
|
553 |
+
"edit?set_api&account_info_tabs=account_info_personal\" target=\"_blank\">Get "
|
554 |
+
"your API key</a>"
|
555 |
+
msgstr ""
|
556 |
+
|
557 |
+
#: inc/config.php:362
|
558 |
+
msgid "Infusionsoft Settings"
|
559 |
+
msgstr ""
|
560 |
+
|
561 |
+
#: inc/config.php:368
|
562 |
+
msgid "App Name"
|
563 |
+
msgstr ""
|
564 |
+
|
565 |
+
#: inc/config.php:369
|
566 |
+
msgid "Enter your app name."
|
567 |
+
msgstr ""
|
568 |
+
|
569 |
+
#: inc/config.php:376
|
570 |
+
msgid ""
|
571 |
+
"Enter your api key. Learn how to <a href=\"http://ug.infusionsoft.com/"
|
572 |
+
"article/AA-00442/0/How-do-I-enable-the-Infusionsoft-API-and-generate-an-API-"
|
573 |
+
"Key.html\" target=\"_blank\">generate your Infusionsoft api key</a>."
|
574 |
+
msgstr ""
|
575 |
+
|
576 |
+
#: inc/config.php:383
|
577 |
+
msgid "HTML Web Form Settings"
|
578 |
+
msgstr ""
|
579 |
+
|
580 |
+
#: inc/config.php:390
|
581 |
+
msgid "HTML"
|
582 |
+
msgstr ""
|
583 |
+
|
584 |
+
#: inc/config.php:391
|
585 |
+
msgid "Enter the html provided from the 3rd party service."
|
586 |
+
msgstr ""
|
587 |
+
|
588 |
+
#: inc/config.php:399
|
589 |
+
msgid "iContact Settings"
|
590 |
+
msgstr ""
|
591 |
+
|
592 |
+
#: inc/config.php:405
|
593 |
+
msgid "Authorize App"
|
594 |
+
msgstr ""
|
595 |
+
|
596 |
+
#: inc/config.php:406
|
597 |
+
msgid ""
|
598 |
+
"<a href=\"https://app.icontact.com/icp/core/externallogin?"
|
599 |
+
"sAppId=puD4TZWs2kKlKZLZZgD7IAUiqPSYPIvd\" target=\"_blank\">Authorize the "
|
600 |
+
"App</a> and define the app password, then enter that information below."
|
601 |
+
msgstr ""
|
602 |
+
|
603 |
+
#: inc/config.php:413
|
604 |
+
msgid "Enter your username."
|
605 |
+
msgstr ""
|
606 |
+
|
607 |
+
#: inc/config.php:419
|
608 |
+
msgid "App Password"
|
609 |
+
msgstr ""
|
610 |
+
|
611 |
+
#: inc/config.php:420
|
612 |
+
msgid "Enter the password you defined for this app."
|
613 |
+
msgstr ""
|
614 |
+
|
615 |
+
#: inc/config.php:434
|
616 |
+
msgid "Gravity Forms Settings"
|
617 |
+
msgstr ""
|
618 |
+
|
619 |
+
#: inc/config.php:440
|
620 |
+
msgid "Form"
|
621 |
+
msgstr ""
|
622 |
+
|
623 |
+
#: inc/config.php:442
|
624 |
+
msgid "Select a form to display on your page."
|
625 |
+
msgstr ""
|
626 |
+
|
627 |
+
#: inc/config.php:448
|
628 |
+
msgid "Override Gravity Form's confirmation page"
|
629 |
+
msgstr ""
|
630 |
+
|
631 |
+
#: inc/config.php:449
|
632 |
+
msgid ""
|
633 |
+
"Redirect to this plugin's Thank You page instead of the default Gravity "
|
634 |
+
"Forms Confirmation page."
|
635 |
+
msgstr ""
|
636 |
+
|
637 |
+
#: inc/config.php:459
|
638 |
+
msgid "WYSIJA Settings"
|
639 |
+
msgstr ""
|
640 |
+
|
641 |
+
#: inc/config.php:467
|
642 |
+
msgid "Select a list to save your contacts to."
|
643 |
+
msgstr ""
|
644 |
+
|
645 |
+
#: inc/config.php:474
|
646 |
+
msgid "Sendy Settings"
|
647 |
+
msgstr ""
|
648 |
+
|
649 |
+
#: inc/config.php:480
|
650 |
+
msgid "Sendy Url"
|
651 |
+
msgstr ""
|
652 |
+
|
653 |
+
#: inc/config.php:482
|
654 |
+
msgid ""
|
655 |
+
"The url to where your Sendy is installed. Example: http://"
|
656 |
+
"your_sendy_installation"
|
657 |
+
msgstr ""
|
658 |
+
|
659 |
+
#: inc/config.php:488
|
660 |
+
msgid "List ID"
|
661 |
+
msgstr ""
|
662 |
+
|
663 |
+
#: inc/config.php:489
|
664 |
+
msgid ""
|
665 |
+
"The list id you want to subscribe a user to. This encrypted & hashed id can "
|
666 |
+
"be found under View all lists section named ID in Sendy"
|
667 |
+
msgstr ""
|
668 |
+
|
669 |
+
#: inc/config.php:496
|
670 |
+
msgid "MailChimp Settings"
|
671 |
+
msgstr ""
|
672 |
+
|
673 |
+
#: inc/config.php:503
|
674 |
+
msgid ""
|
675 |
+
"Enter your API Key. <a target=\"_blank\" href=\"http://admin.mailchimp.com/"
|
676 |
+
"account/api-key-popup\" target=\"_blank\">Get your API key</a>"
|
677 |
+
msgstr ""
|
678 |
+
|
679 |
+
#: inc/config.php:516
|
680 |
+
msgid "Enable Double Opt-In"
|
681 |
+
msgstr ""
|
682 |
+
|
683 |
+
#: inc/config.php:517
|
684 |
+
msgid ""
|
685 |
+
"Learn more about <a href=\"http://kb.mailchimp.com/article/how-does-"
|
686 |
+
"confirmed-optin-or-double-optin-work\">Double Opt-In</a>"
|
687 |
+
msgstr ""
|
688 |
+
|
689 |
+
#: inc/config.php:526
|
690 |
+
msgid "Send Welcome Email"
|
691 |
+
msgstr ""
|
692 |
+
|
693 |
+
#: inc/config.php:527
|
694 |
+
msgid ""
|
695 |
+
"If your Double Opt-in is false and this is true, MailChimp will send your "
|
696 |
+
"lists Welcome Email if this subscribe succeeds - this will not fire if "
|
697 |
+
"MailChimp ends up updating an existing subscriber. If Double Opt-in is true, "
|
698 |
+
"this has no effect. Learn more about <a href='http://blog.mailchimp.com/"
|
699 |
+
"sending-welcome-emails-with-mailchimp/' target='_blank'>Welcome Emails</a>."
|
700 |
+
msgstr ""
|
701 |
+
|
702 |
+
#: inc/config.php:536
|
703 |
+
msgid "Group Name"
|
704 |
+
msgstr ""
|
705 |
+
|
706 |
+
#: inc/config.php:537
|
707 |
+
msgid ""
|
708 |
+
"Optional: Enter the name of the group. Learn more about <a href=\"http://"
|
709 |
+
"mailchimp.com/features/groups/\" target=\"_blank\">Groups</a>"
|
710 |
+
msgstr ""
|
711 |
+
|
712 |
+
#: inc/config.php:546
|
713 |
+
msgid "Groups"
|
714 |
+
msgstr ""
|
715 |
+
|
716 |
+
#: inc/config.php:547
|
717 |
+
msgid "Optional: Comma delimited list of interest groups to add the email to."
|
718 |
+
msgstr ""
|
719 |
+
|
720 |
+
#: inc/config.php:553
|
721 |
+
msgid "Replace Interests"
|
722 |
+
msgstr ""
|
723 |
+
|
724 |
+
#: inc/config.php:554
|
725 |
+
msgid ""
|
726 |
+
"Whether MailChimp will replace the interest groups with the groups provided "
|
727 |
+
"or add the provided groups to the member's interest groups"
|
728 |
+
msgstr ""
|
729 |
+
|
730 |
+
#: inc/config.php:564
|
731 |
+
msgid "After Subscribe Settings"
|
732 |
+
msgstr ""
|
733 |
+
|
734 |
+
#: inc/config.php:570
|
735 |
+
msgid "Thank You or Incentive Message"
|
736 |
+
msgstr ""
|
737 |
+
|
738 |
+
#: inc/config.php:571
|
739 |
+
msgid ""
|
740 |
+
"Leave a thank you or incentive information after the user has subscribed. "
|
741 |
+
"This will override the default success message."
|
742 |
+
msgstr ""
|
743 |
+
|
744 |
+
#: inc/config.php:578
|
745 |
+
msgid "Share Buttons"
|
746 |
+
msgstr ""
|
747 |
+
|
748 |
+
#: inc/config.php:579
|
749 |
+
msgid ""
|
750 |
+
"Select the checkboxes above to display Social Share Buttons after you "
|
751 |
+
"capture an email."
|
752 |
+
msgstr ""
|
753 |
+
|
754 |
+
#: inc/config.php:581
|
755 |
+
msgid "Twitter"
|
756 |
+
msgstr ""
|
757 |
+
|
758 |
+
#: inc/config.php:582
|
759 |
+
msgid "Facebook"
|
760 |
+
msgstr ""
|
761 |
+
|
762 |
+
#: inc/config.php:583
|
763 |
+
msgid "Google Plus"
|
764 |
+
msgstr ""
|
765 |
+
|
766 |
+
#: inc/config.php:584
|
767 |
+
msgid "LinkedIn"
|
768 |
+
msgstr ""
|
769 |
+
|
770 |
+
#: inc/config.php:585
|
771 |
+
msgid "PinIt"
|
772 |
+
msgstr ""
|
773 |
+
|
774 |
+
#: inc/config.php:587
|
775 |
+
msgid "Tumblr"
|
776 |
+
msgstr ""
|
777 |
+
|
778 |
+
#: inc/config.php:595
|
779 |
+
msgid "Display Referrer Link"
|
780 |
+
msgstr ""
|
781 |
+
|
782 |
+
#: inc/config.php:596
|
783 |
+
msgid ""
|
784 |
+
"The referrer link is a special link that you can encourage your subscribers "
|
785 |
+
"to share so you track who referred who."
|
786 |
+
msgstr ""
|
787 |
+
|
788 |
+
#: inc/config.php:606
|
789 |
+
msgid "Progress Bar Settings"
|
790 |
+
msgstr ""
|
791 |
+
|
792 |
+
#: inc/config.php:612
|
793 |
+
msgid "Enable Progress Bar"
|
794 |
+
msgstr ""
|
795 |
+
|
796 |
+
#: inc/config.php:613
|
797 |
+
msgid "Displays a progress bar on your site."
|
798 |
+
msgstr ""
|
799 |
+
|
800 |
+
#: inc/config.php:622
|
801 |
+
msgid "Start and End Date"
|
802 |
+
msgstr ""
|
803 |
+
|
804 |
+
#: inc/config.php:623
|
805 |
+
msgid ""
|
806 |
+
"The percent complete will be automatically calculated if you enter a start "
|
807 |
+
"and end date."
|
808 |
+
msgstr ""
|
809 |
+
|
810 |
+
#: inc/config.php:630
|
811 |
+
msgid "Percent Complete Override"
|
812 |
+
msgstr ""
|
813 |
+
|
814 |
+
#: inc/config.php:631
|
815 |
+
msgid ""
|
816 |
+
"Enter the percentage complete without the percentage sign. This will "
|
817 |
+
"override the date calculation above."
|
818 |
+
msgstr ""
|
819 |
+
|
820 |
+
#: inc/config.php:638
|
821 |
+
msgid "Progress Bar Effect"
|
822 |
+
msgstr ""
|
823 |
+
|
824 |
+
#: inc/config.php:640
|
825 |
+
msgid "Basic"
|
826 |
+
msgstr ""
|
827 |
+
|
828 |
+
#: inc/config.php:641
|
829 |
+
msgid "Striped"
|
830 |
+
msgstr ""
|
831 |
+
|
832 |
+
#: inc/config.php:642
|
833 |
+
msgid "Animated"
|
834 |
+
msgstr ""
|
835 |
+
|
836 |
+
#: inc/config.php:645
|
837 |
+
msgid "Striped and Animated are not supported in Internet Explorer"
|
838 |
+
msgstr ""
|
839 |
+
|
840 |
+
#: inc/config.php:652
|
841 |
+
msgid "Countdown Settings"
|
842 |
+
msgstr ""
|
843 |
+
|
844 |
+
#: inc/config.php:658
|
845 |
+
msgid "Enable Countdown"
|
846 |
+
msgstr ""
|
847 |
+
|
848 |
+
#: inc/config.php:659
|
849 |
+
msgid "Displays a countdown on your site."
|
850 |
+
msgstr ""
|
851 |
+
|
852 |
+
#: inc/config.php:668
|
853 |
+
msgid "End DateTime"
|
854 |
+
msgstr ""
|
855 |
+
|
856 |
+
#: inc/config.php:669
|
857 |
+
msgid "Enter the datetime to countdown to."
|
858 |
+
msgstr ""
|
859 |
+
|
860 |
+
#: inc/config.php:683
|
861 |
+
msgid "Auto Launch"
|
862 |
+
msgstr ""
|
863 |
+
|
864 |
+
#: inc/config.php:684
|
865 |
+
msgid ""
|
866 |
+
"This will automatically launch your site when countdown reaches the end."
|
867 |
+
msgstr ""
|
868 |
+
|
869 |
+
#: inc/config.php:693 inc/config.php:836
|
870 |
+
msgid "Language Strings"
|
871 |
+
msgstr ""
|
872 |
+
|
873 |
+
#: inc/config.php:694
|
874 |
+
msgid "Translate the text strings below into your language if not English."
|
875 |
+
msgstr ""
|
876 |
+
|
877 |
+
#: inc/config.php:701
|
878 |
+
msgid "Days"
|
879 |
+
msgstr ""
|
880 |
+
|
881 |
+
#: inc/config.php:702 inc/config.php:710 inc/config.php:719 inc/config.php:728
|
882 |
+
msgid "Translate into your language."
|
883 |
+
msgstr ""
|
884 |
+
|
885 |
+
#: inc/config.php:709
|
886 |
+
msgid "Hours"
|
887 |
+
msgstr ""
|
888 |
+
|
889 |
+
#: inc/config.php:718
|
890 |
+
msgid "Minutes"
|
891 |
+
msgstr ""
|
892 |
+
|
893 |
+
#: inc/config.php:727
|
894 |
+
msgid "Seconds"
|
895 |
+
msgstr ""
|
896 |
+
|
897 |
+
#: inc/config.php:740
|
898 |
+
msgid "Header"
|
899 |
+
msgstr ""
|
900 |
+
|
901 |
+
#: inc/config.php:745
|
902 |
+
msgid "Favicon"
|
903 |
+
msgstr ""
|
904 |
+
|
905 |
+
#: inc/config.php:746
|
906 |
+
msgid ""
|
907 |
+
"Favicons are displayed in a browser tab. Need Help <a href=\"http://tools."
|
908 |
+
"dynamicdrive.com/favicon/\" target=\"_blank\">creating a favicon</a>?"
|
909 |
+
msgstr ""
|
910 |
+
|
911 |
+
#: inc/config.php:752
|
912 |
+
msgid "SEO Title"
|
913 |
+
msgstr ""
|
914 |
+
|
915 |
+
#: inc/config.php:753
|
916 |
+
msgid ""
|
917 |
+
"If left empty the <a href=\"http://www.seomoz.org/learn-seo/title-tag\" "
|
918 |
+
"target=\"_blank\">title tag</a> of your page will be: "
|
919 |
+
msgstr ""
|
920 |
+
|
921 |
+
#: inc/config.php:759
|
922 |
+
msgid "SEO Meta Description"
|
923 |
+
msgstr ""
|
924 |
+
|
925 |
+
#: inc/config.php:760
|
926 |
+
msgid ""
|
927 |
+
"If left empty the <a href=\"http://www.seomoz.org/learn-seo/meta-description"
|
928 |
+
"\" target=\"_blank\">meta description</a> of your page will be: "
|
929 |
+
msgstr ""
|
930 |
+
|
931 |
+
#: inc/config.php:768
|
932 |
+
msgid "Analytics Code"
|
933 |
+
msgstr ""
|
934 |
+
|
935 |
+
#: inc/config.php:769
|
936 |
+
msgid ""
|
937 |
+
"Paste in your <a href=\"http://www.google.com/analytics/\" target=\"_blank"
|
938 |
+
"\">Google Analytics</a> code. Example: UA-xxxxxxxxx"
|
939 |
+
msgstr ""
|
940 |
+
|
941 |
+
#: inc/config.php:776
|
942 |
+
msgid "Footer Credit"
|
943 |
+
msgstr ""
|
944 |
+
|
945 |
+
#: inc/config.php:788
|
946 |
+
msgid "Credit Image"
|
947 |
+
msgstr ""
|
948 |
+
|
949 |
+
#: inc/config.php:789
|
950 |
+
msgid "Use an image to add a footer credit."
|
951 |
+
msgstr ""
|
952 |
+
|
953 |
+
#: inc/config.php:795
|
954 |
+
msgid "Link to be used for your footer credit."
|
955 |
+
msgstr ""
|
956 |
+
|
957 |
+
#: inc/config.php:796
|
958 |
+
msgid "Credit Link"
|
959 |
+
msgstr ""
|
960 |
+
|
961 |
+
#: inc/config.php:811
|
962 |
+
msgid "Social Media Profiles"
|
963 |
+
msgstr ""
|
964 |
+
|
965 |
+
#: inc/config.php:817
|
966 |
+
msgid "Social Media Icons Size"
|
967 |
+
msgstr ""
|
968 |
+
|
969 |
+
#: inc/config.php:819
|
970 |
+
msgid "Small 16px"
|
971 |
+
msgstr ""
|
972 |
+
|
973 |
+
#: inc/config.php:820
|
974 |
+
msgid "Medium 24px"
|
975 |
+
msgstr ""
|
976 |
+
|
977 |
+
#: inc/config.php:821
|
978 |
+
msgid "Large 32px"
|
979 |
+
msgstr ""
|
980 |
+
|
981 |
+
#: inc/config.php:829
|
982 |
+
msgid "Social Profiles"
|
983 |
+
msgstr ""
|
984 |
+
|
985 |
+
#: inc/config.php:842
|
986 |
+
msgid "Subscribe Button"
|
987 |
+
msgstr ""
|
988 |
+
|
989 |
+
#: inc/config.php:843
|
990 |
+
msgid "Notify Me"
|
991 |
+
msgstr ""
|
992 |
+
|
993 |
+
#: inc/config.php:849
|
994 |
+
msgid "Subscribe Field"
|
995 |
+
msgstr ""
|
996 |
+
|
997 |
+
#: inc/config.php:850
|
998 |
+
msgid "Enter Your Email"
|
999 |
+
msgstr ""
|
1000 |
+
|
1001 |
+
#: inc/config.php:856
|
1002 |
+
msgid "First Name Field"
|
1003 |
+
msgstr ""
|
1004 |
+
|
1005 |
+
#: inc/config.php:857
|
1006 |
+
msgid "First Name"
|
1007 |
+
msgstr ""
|
1008 |
+
|
1009 |
+
#: inc/config.php:863
|
1010 |
+
msgid "Last Name Field"
|
1011 |
+
msgstr ""
|
1012 |
+
|
1013 |
+
#: inc/config.php:864
|
1014 |
+
msgid "Last Name"
|
1015 |
+
msgstr ""
|
1016 |
+
|
1017 |
+
#: inc/config.php:870
|
1018 |
+
msgid "Success"
|
1019 |
+
msgstr ""
|
1020 |
+
|
1021 |
+
#: inc/config.php:871
|
1022 |
+
msgid "You'll be notified soon!"
|
1023 |
+
msgstr ""
|
1024 |
+
|
1025 |
+
#: inc/config.php:877
|
1026 |
+
msgid "Already Subscribed"
|
1027 |
+
msgstr ""
|
1028 |
+
|
1029 |
+
#: inc/config.php:878
|
1030 |
+
msgid "You're already subscribed."
|
1031 |
+
msgstr ""
|
1032 |
+
|
1033 |
+
#: inc/config.php:884
|
1034 |
+
msgid "Invalid Email"
|
1035 |
+
msgstr ""
|
1036 |
+
|
1037 |
+
#: inc/config.php:891
|
1038 |
+
msgid "API Error"
|
1039 |
+
msgstr ""
|
1040 |
+
|
1041 |
+
#: inc/config.php:892
|
1042 |
+
msgid "Error, please try again."
|
1043 |
+
msgstr ""
|
1044 |
+
|
1045 |
+
#: inc/config.php:899
|
1046 |
+
msgid "Display WPML Language Switcher"
|
1047 |
+
msgstr ""
|
1048 |
+
|
1049 |
+
#: inc/config.php:901
|
1050 |
+
msgid "No"
|
1051 |
+
msgstr ""
|
1052 |
+
|
1053 |
+
#: inc/config.php:904
|
1054 |
+
msgid "This will display the WPML Language Switcher on the Coming Soon page."
|
1055 |
+
msgstr ""
|
1056 |
+
|
1057 |
+
#: inc/config.php:916
|
1058 |
+
msgid "Design"
|
1059 |
+
msgstr ""
|
1060 |
+
|
1061 |
+
#: inc/config.php:947
|
1062 |
+
msgid "Background"
|
1063 |
+
msgstr ""
|
1064 |
+
|
1065 |
+
#: inc/config.php:954
|
1066 |
+
msgid "Background Color"
|
1067 |
+
msgstr ""
|
1068 |
+
|
1069 |
+
#: inc/config.php:957
|
1070 |
+
msgid ""
|
1071 |
+
"Choose between having a solid color background or uploading an image. By "
|
1072 |
+
"default images will cover the entire background."
|
1073 |
+
msgstr ""
|
1074 |
+
|
1075 |
+
#: inc/config.php:964
|
1076 |
+
msgid "Background Image"
|
1077 |
+
msgstr ""
|
1078 |
+
|
1079 |
+
#: inc/config.php:970
|
1080 |
+
msgid "Cover or Stretch"
|
1081 |
+
msgstr ""
|
1082 |
+
|
1083 |
+
#: inc/config.php:971
|
1084 |
+
msgid ""
|
1085 |
+
"Cover will scale the image to the smallest size such that both its width and "
|
1086 |
+
"its height can fit inside the content area. The image will be stretched for "
|
1087 |
+
"older browsers."
|
1088 |
+
msgstr ""
|
1089 |
+
|
1090 |
+
#: inc/config.php:981
|
1091 |
+
msgid "Background Repeat"
|
1092 |
+
msgstr ""
|
1093 |
+
|
1094 |
+
#: inc/config.php:983
|
1095 |
+
msgid "No-Repeat"
|
1096 |
+
msgstr ""
|
1097 |
+
|
1098 |
+
#: inc/config.php:984
|
1099 |
+
msgid "Tile"
|
1100 |
+
msgstr ""
|
1101 |
+
|
1102 |
+
#: inc/config.php:985
|
1103 |
+
msgid "Tile Horizontally"
|
1104 |
+
msgstr ""
|
1105 |
+
|
1106 |
+
#: inc/config.php:986
|
1107 |
+
msgid "Tile Vertically"
|
1108 |
+
msgstr ""
|
1109 |
+
|
1110 |
+
#: inc/config.php:994
|
1111 |
+
msgid "Background Position"
|
1112 |
+
msgstr ""
|
1113 |
+
|
1114 |
+
#: inc/config.php:996
|
1115 |
+
msgid "Left Top"
|
1116 |
+
msgstr ""
|
1117 |
+
|
1118 |
+
#: inc/config.php:997
|
1119 |
+
msgid "Left Center"
|
1120 |
+
msgstr ""
|
1121 |
+
|
1122 |
+
#: inc/config.php:998
|
1123 |
+
msgid "Left Bottom"
|
1124 |
+
msgstr ""
|
1125 |
+
|
1126 |
+
#: inc/config.php:999
|
1127 |
+
msgid "Right Top"
|
1128 |
+
msgstr ""
|
1129 |
+
|
1130 |
+
#: inc/config.php:1000
|
1131 |
+
msgid "Right Center"
|
1132 |
+
msgstr ""
|
1133 |
+
|
1134 |
+
#: inc/config.php:1001
|
1135 |
+
msgid "Right Bottom"
|
1136 |
+
msgstr ""
|
1137 |
+
|
1138 |
+
#: inc/config.php:1002
|
1139 |
+
msgid "Center Top"
|
1140 |
+
msgstr ""
|
1141 |
+
|
1142 |
+
#: inc/config.php:1003
|
1143 |
+
msgid "Center Center"
|
1144 |
+
msgstr ""
|
1145 |
+
|
1146 |
+
#: inc/config.php:1004
|
1147 |
+
msgid "Center Bottom"
|
1148 |
+
msgstr ""
|
1149 |
+
|
1150 |
+
#: inc/config.php:1011
|
1151 |
+
msgid "Background Attachment"
|
1152 |
+
msgstr ""
|
1153 |
+
|
1154 |
+
#: inc/config.php:1013
|
1155 |
+
msgid "Fixed"
|
1156 |
+
msgstr ""
|
1157 |
+
|
1158 |
+
#: inc/config.php:1014
|
1159 |
+
msgid "Scroll"
|
1160 |
+
msgstr ""
|
1161 |
+
|
1162 |
+
#: inc/config.php:1021
|
1163 |
+
msgid "Background Effects"
|
1164 |
+
msgstr ""
|
1165 |
+
|
1166 |
+
#: inc/config.php:1023
|
1167 |
+
msgid "None"
|
1168 |
+
msgstr ""
|
1169 |
+
|
1170 |
+
#: inc/config.php:1024
|
1171 |
+
msgid "Noise"
|
1172 |
+
msgstr ""
|
1173 |
+
|
1174 |
+
#: inc/config.php:1026
|
1175 |
+
msgid ""
|
1176 |
+
"Background effects can be applied to Background Colors or Background Images."
|
1177 |
+
msgstr ""
|
1178 |
+
|
1179 |
+
#: inc/config.php:1034
|
1180 |
+
msgid "Background Slideshow"
|
1181 |
+
msgstr ""
|
1182 |
+
|
1183 |
+
#: inc/config.php:1035
|
1184 |
+
msgid "This will override the setting above and create a background slideshow."
|
1185 |
+
msgstr ""
|
1186 |
+
|
1187 |
+
#: inc/config.php:1045
|
1188 |
+
msgid "Slideshow Randomize"
|
1189 |
+
msgstr ""
|
1190 |
+
|
1191 |
+
#: inc/config.php:1046
|
1192 |
+
msgid ""
|
1193 |
+
"This will display a random slideshow each time as opposed to the order "
|
1194 |
+
"listed below."
|
1195 |
+
msgstr ""
|
1196 |
+
|
1197 |
+
#: inc/config.php:1056
|
1198 |
+
msgid "Slide Speed"
|
1199 |
+
msgstr ""
|
1200 |
+
|
1201 |
+
#: inc/config.php:1057
|
1202 |
+
msgid "This will determine how fast slides change in milliseconds."
|
1203 |
+
msgstr ""
|
1204 |
+
|
1205 |
+
#: inc/config.php:1064
|
1206 |
+
msgid "Slide Transition"
|
1207 |
+
msgstr ""
|
1208 |
+
|
1209 |
+
#: inc/config.php:1065
|
1210 |
+
msgid "This will determine the transition between slides."
|
1211 |
+
msgstr ""
|
1212 |
+
|
1213 |
+
#: inc/config.php:1067
|
1214 |
+
msgid "Fade"
|
1215 |
+
msgstr ""
|
1216 |
+
|
1217 |
+
#: inc/config.php:1068
|
1218 |
+
msgid "Slide Top"
|
1219 |
+
msgstr ""
|
1220 |
+
|
1221 |
+
#: inc/config.php:1069
|
1222 |
+
msgid "Slide Right"
|
1223 |
+
msgstr ""
|
1224 |
+
|
1225 |
+
#: inc/config.php:1070
|
1226 |
+
msgid "Slide Bottom"
|
1227 |
+
msgstr ""
|
1228 |
+
|
1229 |
+
#: inc/config.php:1071
|
1230 |
+
msgid "Slide Left"
|
1231 |
+
msgstr ""
|
1232 |
+
|
1233 |
+
#: inc/config.php:1072
|
1234 |
+
msgid "Carousel Right"
|
1235 |
+
msgstr ""
|
1236 |
+
|
1237 |
+
#: inc/config.php:1073
|
1238 |
+
msgid "Carousel Left"
|
1239 |
+
msgstr ""
|
1240 |
+
|
1241 |
+
#: inc/config.php:1080
|
1242 |
+
msgid "Slideshow Images"
|
1243 |
+
msgstr ""
|
1244 |
+
|
1245 |
+
#: inc/config.php:1081
|
1246 |
+
msgid ""
|
1247 |
+
"Paste in the urls to the images you like to use for your slideshow one per "
|
1248 |
+
"line. <a href=\"https://seedprod.zendesk.com/entries/22545416-how-to-create-"
|
1249 |
+
"a-background-slideshow\" target=\"_blank\">Learn How</a>"
|
1250 |
+
msgstr ""
|
1251 |
+
|
1252 |
+
#: inc/config.php:1088
|
1253 |
+
msgid "Background Video (Beta)"
|
1254 |
+
msgstr ""
|
1255 |
+
|
1256 |
+
#: inc/config.php:1089
|
1257 |
+
msgid "This will override the setting above and create a background video."
|
1258 |
+
msgstr ""
|
1259 |
+
|
1260 |
+
#: inc/config.php:1099
|
1261 |
+
msgid "Background Video URL"
|
1262 |
+
msgstr ""
|
1263 |
+
|
1264 |
+
#: inc/config.php:1100
|
1265 |
+
msgid "Enter the YouTube or Vimeo url."
|
1266 |
+
msgstr ""
|
1267 |
+
|
1268 |
+
#: inc/config.php:1107
|
1269 |
+
msgid "Text"
|
1270 |
+
msgstr ""
|
1271 |
+
|
1272 |
+
#: inc/config.php:1113
|
1273 |
+
msgid "Text Color"
|
1274 |
+
msgstr ""
|
1275 |
+
|
1276 |
+
#: inc/config.php:1123
|
1277 |
+
msgid "Link & Button Color"
|
1278 |
+
msgstr ""
|
1279 |
+
|
1280 |
+
#: inc/config.php:1131
|
1281 |
+
msgid "Headline Color"
|
1282 |
+
msgstr ""
|
1283 |
+
|
1284 |
+
#: inc/config.php:1133
|
1285 |
+
msgid ""
|
1286 |
+
"If no Headline Color is choosen then the Link & Button Color will be "
|
1287 |
+
"used. "
|
1288 |
+
msgstr ""
|
1289 |
+
|
1290 |
+
#: inc/config.php:1141
|
1291 |
+
msgid "Text Font"
|
1292 |
+
msgstr ""
|
1293 |
+
|
1294 |
+
#: inc/config.php:1162
|
1295 |
+
msgid "Headline Font"
|
1296 |
+
msgstr ""
|
1297 |
+
|
1298 |
+
#: inc/config.php:1178
|
1299 |
+
msgid ""
|
1300 |
+
"If you choose 'Inherit' as a headline font then the text font will be used."
|
1301 |
+
msgstr ""
|
1302 |
+
|
1303 |
+
#: inc/config.php:1184
|
1304 |
+
msgid "Button Font"
|
1305 |
+
msgstr ""
|
1306 |
+
|
1307 |
+
#: inc/config.php:1200
|
1308 |
+
msgid ""
|
1309 |
+
"If you choose 'Inherit' as a button font then the headline font will be used."
|
1310 |
+
msgstr ""
|
1311 |
+
|
1312 |
+
#: inc/config.php:1207
|
1313 |
+
msgid "Typekit Kit ID"
|
1314 |
+
msgstr ""
|
1315 |
+
|
1316 |
+
#: inc/config.php:1208
|
1317 |
+
msgid ""
|
1318 |
+
"Enter your <a href=\"https://typekit.com\" target=\"_blank\">Typekit</a> Kit "
|
1319 |
+
"ID. This will override the fonts above."
|
1320 |
+
msgstr ""
|
1321 |
+
|
1322 |
+
#: inc/config.php:1214
|
1323 |
+
msgid "Text Effects"
|
1324 |
+
msgstr ""
|
1325 |
+
|
1326 |
+
#: inc/config.php:1216
|
1327 |
+
msgid "Inset <small class=\"description\">: Adds a subtle inset shadow</small>"
|
1328 |
+
msgstr ""
|
1329 |
+
|
1330 |
+
#: inc/config.php:1227
|
1331 |
+
msgid "Container"
|
1332 |
+
msgstr ""
|
1333 |
+
|
1334 |
+
#: inc/config.php:1233
|
1335 |
+
msgid "Enable Container"
|
1336 |
+
msgstr ""
|
1337 |
+
|
1338 |
+
#: inc/config.php:1234
|
1339 |
+
msgid ""
|
1340 |
+
"A container is a wrapper that will encapsulate your coming soon content."
|
1341 |
+
msgstr ""
|
1342 |
+
|
1343 |
+
#: inc/config.php:1243
|
1344 |
+
msgid "Container Color"
|
1345 |
+
msgstr ""
|
1346 |
+
|
1347 |
+
#: inc/config.php:1251
|
1348 |
+
msgid "Container Position"
|
1349 |
+
msgstr ""
|
1350 |
+
|
1351 |
+
#: inc/config.php:1253
|
1352 |
+
msgid "Left"
|
1353 |
+
msgstr ""
|
1354 |
+
|
1355 |
+
#: inc/config.php:1254
|
1356 |
+
msgid "Center"
|
1357 |
+
msgstr ""
|
1358 |
+
|
1359 |
+
#: inc/config.php:1255
|
1360 |
+
msgid "Right"
|
1361 |
+
msgstr ""
|
1362 |
+
|
1363 |
+
#: inc/config.php:1263
|
1364 |
+
msgid "Container Effects"
|
1365 |
+
msgstr ""
|
1366 |
+
|
1367 |
+
#: inc/config.php:1265
|
1368 |
+
msgid "Fade In"
|
1369 |
+
msgstr ""
|
1370 |
+
|
1371 |
+
#: inc/config.php:1266
|
1372 |
+
msgid "Drop Shadow"
|
1373 |
+
msgstr ""
|
1374 |
+
|
1375 |
+
#: inc/config.php:1267
|
1376 |
+
msgid "Glow"
|
1377 |
+
msgstr ""
|
1378 |
+
|
1379 |
+
#: inc/config.php:1268
|
1380 |
+
msgid "Border"
|
1381 |
+
msgstr ""
|
1382 |
+
|
1383 |
+
#: inc/config.php:1269
|
1384 |
+
msgid "Rounded Corners"
|
1385 |
+
msgstr ""
|
1386 |
+
|
1387 |
+
#: inc/config.php:1270
|
1388 |
+
msgid "Opacity"
|
1389 |
+
msgstr ""
|
1390 |
+
|
1391 |
+
#: inc/config.php:1272
|
1392 |
+
msgid ""
|
1393 |
+
"These effects only work in modern browsers. Not sure what a <a target="
|
1394 |
+
"\"_blank\" href=\"http://browsehappy.com/\">modern browser</a> is?"
|
1395 |
+
msgstr ""
|
1396 |
+
|
1397 |
+
#: inc/config.php:1293
|
1398 |
+
msgid "Template"
|
1399 |
+
msgstr ""
|
1400 |
+
|
1401 |
+
#: inc/config.php:1301
|
1402 |
+
msgid "Custom CSS"
|
1403 |
+
msgstr ""
|
1404 |
+
|
1405 |
+
#: inc/config.php:1302
|
1406 |
+
msgid "Need to tweaks the styles? Add your custom CSS here."
|
1407 |
+
msgstr ""
|
1408 |
+
|
1409 |
+
#: inc/config.php:1309
|
1410 |
+
msgid "Code"
|
1411 |
+
msgstr ""
|
1412 |
+
|
1413 |
+
#: inc/config.php:1310
|
1414 |
+
msgid ""
|
1415 |
+
"If you need to make some advanced changes to the template you can edit the "
|
1416 |
+
"code above directly."
|
1417 |
+
msgstr ""
|
1418 |
+
|
1419 |
+
#: inc/config.php:1317
|
1420 |
+
msgid "Template Tags"
|
1421 |
+
msgstr ""
|
1422 |
+
|
1423 |
+
#: inc/config.php:1318
|
1424 |
+
msgid ""
|
1425 |
+
"\n"
|
1426 |
+
" <code>{Title}</code> - Display your title. Settings > Coming "
|
1427 |
+
"Soon Pro Settings > Header > SEO Title <br>\n"
|
1428 |
+
" <code>{MetaDescription}</code> - Displays your description along "
|
1429 |
+
"with the proper meta tags. Settings > Coming Soon Pro > Settings > Header > "
|
1430 |
+
"SEO Meta Description <br>\n"
|
1431 |
+
" <code>{Privacy}</code> - Displays noindex tag if set to private. "
|
1432 |
+
"Settings > Privacy <br>\n"
|
1433 |
+
" <code>{Favicon}</code> - Displays favicon tag. Settings > Coming "
|
1434 |
+
"Soon Pro > Settings > Header > Favicon <br>\n"
|
1435 |
+
" <code>{Head}</code> - Required in the <head> Displays custom "
|
1436 |
+
"scripts for the page. Settings > Coming Soon Pro > Advanced > Scripts<br>\n"
|
1437 |
+
" <code>{Custom CSS}</code> - Displays custom css page. Settings > "
|
1438 |
+
"Coming Soon Pro > Design > Template > Custom CSS<br>\n"
|
1439 |
+
" <code>{Logo}</code> - Displays your logo if set. Settings > "
|
1440 |
+
"Coming Soon Pro > Settings > Page Settings > Logo<br>\n"
|
1441 |
+
" <code>{Headline}</code> - Displays your headline if set. "
|
1442 |
+
"Settings > Coming Soon Pro > Settings > Page Settings > Headline<br>\n"
|
1443 |
+
" <code>{Description}</code> - Displays your description if set. "
|
1444 |
+
"Settings > Coming Soon Pro > Settings > Page Settings > Description<br>\n"
|
1445 |
+
" <code>{ProgressBar}</code> - Displays a progress bar if enabled. "
|
1446 |
+
"Settings > Coming Soon Pro > Settings > Progress Bar Settings<br>\n"
|
1447 |
+
" <code>{Countdown}</code> - Displays a countdown if enabled. "
|
1448 |
+
"Settings > Coming Soon Pro > Settings > Countdown Settings<br>\n"
|
1449 |
+
" <code>{Form}</code> - Displays signup form and thank you page. "
|
1450 |
+
"Settings > Coming Soon Pro > Settings<br>\n"
|
1451 |
+
" <code>{SocialProfiles}</code> - Displays your social profiles if "
|
1452 |
+
"set. Settings > Coming Soon Pro > Settings > Social Media Profiles<br>\n"
|
1453 |
+
" <code>{Credit}</code> - Displays your footer credit if set. "
|
1454 |
+
"Settings > Coming Soon Pro > Settings > Footer Credit<br>\n"
|
1455 |
+
" <code>{Footer}</code> - Displays required scripts for the page."
|
1456 |
+
"<br>\n"
|
1457 |
+
" "
|
1458 |
+
msgstr ""
|
1459 |
+
|
1460 |
+
#: inc/config.php:1344
|
1461 |
+
msgid "Advanced"
|
1462 |
+
msgstr ""
|
1463 |
+
|
1464 |
+
#: inc/config.php:1355
|
1465 |
+
msgid "Access"
|
1466 |
+
msgstr ""
|
1467 |
+
|
1468 |
+
#: inc/config.php:1362
|
1469 |
+
msgid "Client View URL"
|
1470 |
+
msgstr ""
|
1471 |
+
|
1472 |
+
#: inc/config.php:1363
|
1473 |
+
msgid ""
|
1474 |
+
"Enter a phrase above and give your client a secret url that will allow them "
|
1475 |
+
"to bypass the Coming Soon page. The cookie life is 6 hours. After the cookie "
|
1476 |
+
"expires they will need to revisit the client view url to regain access."
|
1477 |
+
msgstr ""
|
1478 |
+
|
1479 |
+
#: inc/config.php:1369
|
1480 |
+
msgid "Access by IP"
|
1481 |
+
msgstr ""
|
1482 |
+
|
1483 |
+
#: inc/config.php:1370
|
1484 |
+
msgid ""
|
1485 |
+
"All visitors from certain IP's to bypass the Coming Soon page. Put each IP "
|
1486 |
+
"on it's own line."
|
1487 |
+
msgstr ""
|
1488 |
+
|
1489 |
+
#: inc/config.php:1376
|
1490 |
+
msgid "Access by Role"
|
1491 |
+
msgstr ""
|
1492 |
+
|
1493 |
+
#: inc/config.php:1377
|
1494 |
+
msgid ""
|
1495 |
+
"By default anyone logged in will see the regular site and not the coming "
|
1496 |
+
"soon page. To override this select Roles that will be given access to see "
|
1497 |
+
"the regular site."
|
1498 |
+
msgstr ""
|
1499 |
+
|
1500 |
+
#: inc/config.php:1386
|
1501 |
+
msgid "Landing Page Mode"
|
1502 |
+
msgstr ""
|
1503 |
+
|
1504 |
+
#: inc/config.php:1387
|
1505 |
+
msgid ""
|
1506 |
+
"Only display the coming soon page on one page of your site and use it as a "
|
1507 |
+
"landing page. Leave unselected if you want the coming soon page to be "
|
1508 |
+
"display on your entire site."
|
1509 |
+
msgstr ""
|
1510 |
+
|
1511 |
+
#: inc/config.php:1395
|
1512 |
+
msgid "Include URL Pattern"
|
1513 |
+
msgstr ""
|
1514 |
+
|
1515 |
+
#: inc/config.php:1396
|
1516 |
+
msgid ""
|
1517 |
+
"Include certain urls to only diplay the coming soon page on a section of "
|
1518 |
+
"your site using <a href=\"http://en.wikipedia.org/wiki/Regex\" target="
|
1519 |
+
"\"_blank\">regular expressions</a>. For example enter \"blog\" will include "
|
1520 |
+
"pages with the url: http://example.org/blog/*. <a href=\"https://seedprod."
|
1521 |
+
"zendesk.com/entries/23050096-exclude-and-include-urls-pattern-examples\" "
|
1522 |
+
"target=\"_blank\">See more examples</a> and learn how to include multiple "
|
1523 |
+
"pages. This is useful if you are working on a new section of your site."
|
1524 |
+
msgstr ""
|
1525 |
+
|
1526 |
+
#: inc/config.php:1402
|
1527 |
+
msgid "Exclude URL Pattern"
|
1528 |
+
msgstr ""
|
1529 |
+
|
1530 |
+
#: inc/config.php:1403
|
1531 |
+
msgid ""
|
1532 |
+
"Exclude certain urls from displaying the Coming Soon page using <a href="
|
1533 |
+
"\"http://en.wikipedia.org/wiki/Regex\" target=\"_blank\">regular "
|
1534 |
+
"expressions</a>. For example enter \"blog\" will exclude the url: http://"
|
1535 |
+
"example.org/blog/. <a href=\"https://seedprod.zendesk.com/entries/23050096-"
|
1536 |
+
"exclude-and-include-urls-pattern-examples\" target=\"_blank\">See more "
|
1537 |
+
"examples</a> and learn how to exclue multiple pages. This is useful if a "
|
1538 |
+
"section of you site is ready to be viewed or you have a login page on the "
|
1539 |
+
"frontend."
|
1540 |
+
msgstr ""
|
1541 |
+
|
1542 |
+
#: inc/config.php:1411
|
1543 |
+
msgid "Scripts"
|
1544 |
+
msgstr ""
|
1545 |
+
|
1546 |
+
#: inc/config.php:1428
|
1547 |
+
msgid "Enable Responsiveness"
|
1548 |
+
msgstr ""
|
1549 |
+
|
1550 |
+
#: inc/config.php:1429
|
1551 |
+
msgid "Makes the page responsive."
|
1552 |
+
msgstr ""
|
1553 |
+
|
1554 |
+
#: inc/config.php:1439
|
1555 |
+
msgid "Enable FitVid"
|
1556 |
+
msgstr ""
|
1557 |
+
|
1558 |
+
#: inc/config.php:1440
|
1559 |
+
msgid "Makes your videos responsive."
|
1560 |
+
msgstr ""
|
1561 |
+
|
1562 |
+
#: inc/config.php:1451
|
1563 |
+
msgid "Enable wp_head & wp_footer"
|
1564 |
+
msgstr ""
|
1565 |
+
|
1566 |
+
#: inc/config.php:1452
|
1567 |
+
msgid ""
|
1568 |
+
"The <a href=\"http://codex.wordpress.org/Plugin_API/Action_Reference/wp_head"
|
1569 |
+
"\" target=\"_blank\">wp_head</a> and <a href=\"http://codex.wordpress.org/"
|
1570 |
+
"Plugin_API/Action_Reference/wp_footer\" target=\"_blank\">wp_footer</a> "
|
1571 |
+
"functions are required by some plugins. If you are unsure do not enable it. "
|
1572 |
+
"These functions can cause styling issues with the page."
|
1573 |
+
msgstr ""
|
1574 |
+
|
1575 |
+
#: inc/config.php:1461
|
1576 |
+
msgid "Header Scripts"
|
1577 |
+
msgstr ""
|
1578 |
+
|
1579 |
+
#: inc/config.php:1462
|
1580 |
+
msgid ""
|
1581 |
+
"Enter any custom scripts. You can enter Javascript or CSS. This will be "
|
1582 |
+
"rendered before the closing head tag."
|
1583 |
+
msgstr ""
|
1584 |
+
|
1585 |
+
#: inc/config.php:1469
|
1586 |
+
msgid "Footer Scripts"
|
1587 |
+
msgstr ""
|
1588 |
+
|
1589 |
+
#: inc/config.php:1470
|
1590 |
+
msgid ""
|
1591 |
+
"Enter any custom scripts. This will be rendered before the closing body tag."
|
1592 |
+
msgstr ""
|
1593 |
+
|
1594 |
+
#: inc/config.php:1477
|
1595 |
+
msgid "Conversion Scripts"
|
1596 |
+
msgstr ""
|
1597 |
+
|
1598 |
+
#: inc/config.php:1478
|
1599 |
+
msgid ""
|
1600 |
+
"This will render only after the form has been submitted. This will be "
|
1601 |
+
"rendered before the closing body tag."
|
1602 |
+
msgstr ""
|
1603 |
+
|
1604 |
+
#: inc/config.php:1485
|
1605 |
+
msgid "Disable Custom Code Template"
|
1606 |
+
msgstr ""
|
1607 |
+
|
1608 |
+
#: inc/config.php:1486
|
1609 |
+
msgid ""
|
1610 |
+
"Mod_security will cause false positive 400 error on some host. Disable the "
|
1611 |
+
"custom template to avoid this error and notify your host of the false "
|
1612 |
+
"positive."
|
1613 |
+
msgstr ""
|
1614 |
+
|
1615 |
+
#: inc/config.php:1495
|
1616 |
+
msgid "Import / Export"
|
1617 |
+
msgstr ""
|
1618 |
+
|
1619 |
+
#: inc/config.php:1501
|
1620 |
+
msgid "Import"
|
1621 |
+
msgstr ""
|
1622 |
+
|
1623 |
+
#: inc/config.php:1502
|
1624 |
+
msgid "Paste settings from another Coming Soon Pro instance to import."
|
1625 |
+
msgstr ""
|
1626 |
+
|
1627 |
+
#: inc/config.php:1508
|
1628 |
+
msgid "Export"
|
1629 |
+
msgstr ""
|
1630 |
+
|
1631 |
+
#: inc/config.php:1509
|
1632 |
+
msgid ""
|
1633 |
+
"Copy these settings and use the import them to another Coming Soon Pro "
|
1634 |
+
"instance."
|
1635 |
+
msgstr ""
|
1636 |
+
|
1637 |
+
#: themes/default/functions.php:666
|
1638 |
+
msgid "Your Referral URL is:"
|
1639 |
+
msgstr ""
|
1640 |
+
|
1641 |
+
#: themes/default/functions.php:667
|
1642 |
+
msgid "Your Referral Stats"
|
1643 |
+
msgstr ""
|
lib/seed_csp4_lessc.inc.php
ADDED
@@ -0,0 +1,3359 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* lessphp v0.3.8
|
5 |
+
* http://leafo.net/lessphp
|
6 |
+
*
|
7 |
+
* LESS css compiler, adapted from http://seed_csp4_lesscss.org
|
8 |
+
*
|
9 |
+
* Copyright 2012, Leaf Corcoran <leafot@gmail.com>
|
10 |
+
* Licensed under MIT or GPLv3, see LICENSE
|
11 |
+
*/
|
12 |
+
|
13 |
+
|
14 |
+
/**
|
15 |
+
* The less compiler and parser.
|
16 |
+
*
|
17 |
+
* Converting LESS to CSS is a three stage process. The incoming file is parsed
|
18 |
+
* by `seed_csp4_lessc_parser` into a syntax tree, then it is compiled into another tree
|
19 |
+
* representing the CSS structure by `seed_csp4_lessc`. The CSS tree is fed into a
|
20 |
+
* formatter, like `seed_csp4_lessc_formatter` which then outputs CSS as a string.
|
21 |
+
*
|
22 |
+
* During the first compile, all values are *reduced*, which means that their
|
23 |
+
* types are brought to the lowest form before being dump as strings. This
|
24 |
+
* handles math equations, variable dereferences, and the like.
|
25 |
+
*
|
26 |
+
* The `parse` function of `seed_csp4_lessc` is the entry point.
|
27 |
+
*
|
28 |
+
* In summary:
|
29 |
+
*
|
30 |
+
* The `seed_csp4_lessc` class creates an intstance of the parser, feeds it LESS code,
|
31 |
+
* then transforms the resulting tree to a CSS tree. This class also holds the
|
32 |
+
* evaluation context, such as all available mixins and variables at any given
|
33 |
+
* time.
|
34 |
+
*
|
35 |
+
* The `seed_csp4_lessc_parser` class is only concerned with parsing its input.
|
36 |
+
*
|
37 |
+
* The `seed_csp4_lessc_formatter` takes a CSS tree, and dumps it to a formatted string,
|
38 |
+
* handling things like indentation.
|
39 |
+
*/
|
40 |
+
class seed_csp4_lessc {
|
41 |
+
static public $VERSION = "v0.3.8";
|
42 |
+
static protected $TRUE = array("keyword", "true");
|
43 |
+
static protected $FALSE = array("keyword", "false");
|
44 |
+
|
45 |
+
protected $libFunctions = array();
|
46 |
+
protected $registeredVars = array();
|
47 |
+
protected $preserveComments = false;
|
48 |
+
|
49 |
+
public $vPrefix = '@'; // prefix of abstract properties
|
50 |
+
public $mPrefix = '$'; // prefix of abstract blocks
|
51 |
+
public $parentSelector = '&';
|
52 |
+
|
53 |
+
public $importDisabled = false;
|
54 |
+
public $importDir = '';
|
55 |
+
|
56 |
+
protected $numberPrecision = null;
|
57 |
+
|
58 |
+
// set to the parser that generated the current line when compiling
|
59 |
+
// so we know how to create error messages
|
60 |
+
protected $sourceParser = null;
|
61 |
+
protected $sourceLoc = null;
|
62 |
+
|
63 |
+
static public $defaultValue = array("keyword", "");
|
64 |
+
|
65 |
+
static protected $nextImportId = 0; // uniquely identify imports
|
66 |
+
|
67 |
+
// attempts to find the path of an import url, returns null for css files
|
68 |
+
protected function findImport($url) {
|
69 |
+
foreach ((array)$this->importDir as $dir) {
|
70 |
+
$full = $dir.(substr($dir, -1) != '/' ? '/' : '').$url;
|
71 |
+
if ($this->fileExists($file = $full.'.less') || $this->fileExists($file = $full)) {
|
72 |
+
return $file;
|
73 |
+
}
|
74 |
+
}
|
75 |
+
|
76 |
+
return null;
|
77 |
+
}
|
78 |
+
|
79 |
+
protected function fileExists($name) {
|
80 |
+
return is_file($name);
|
81 |
+
}
|
82 |
+
|
83 |
+
static public function compressList($items, $delim) {
|
84 |
+
if (!isset($items[1]) && isset($items[0])) return $items[0];
|
85 |
+
else return array('list', $delim, $items);
|
86 |
+
}
|
87 |
+
|
88 |
+
static public function preg_quote($what) {
|
89 |
+
return preg_quote($what, '/');
|
90 |
+
}
|
91 |
+
|
92 |
+
protected function tryImport($importPath, $parentBlock, $out) {
|
93 |
+
if ($importPath[0] == "function" && $importPath[1] == "url") {
|
94 |
+
$importPath = $this->flattenList($importPath[2]);
|
95 |
+
}
|
96 |
+
|
97 |
+
$str = $this->coerceString($importPath);
|
98 |
+
if ($str === null) return false;
|
99 |
+
|
100 |
+
$url = $this->compileValue($this->lib_e($str));
|
101 |
+
|
102 |
+
// don't import if it ends in css
|
103 |
+
if (substr_compare($url, '.css', -4, 4) === 0) return false;
|
104 |
+
|
105 |
+
$realPath = $this->findImport($url);
|
106 |
+
if ($realPath === null) return false;
|
107 |
+
|
108 |
+
if ($this->importDisabled) {
|
109 |
+
return array(false, "/* import disabled */");
|
110 |
+
}
|
111 |
+
|
112 |
+
$this->addParsedFile($realPath);
|
113 |
+
$parser = $this->makeParser($realPath);
|
114 |
+
$root = $parser->parse(file_get_contents($realPath));
|
115 |
+
|
116 |
+
// set the parents of all the block props
|
117 |
+
foreach ($root->props as $prop) {
|
118 |
+
if ($prop[0] == "block") {
|
119 |
+
$prop[1]->parent = $parentBlock;
|
120 |
+
}
|
121 |
+
}
|
122 |
+
|
123 |
+
// copy mixins into scope, set their parents
|
124 |
+
// bring blocks from import into current block
|
125 |
+
// TODO: need to mark the source parser these came from this file
|
126 |
+
foreach ($root->children as $childName => $child) {
|
127 |
+
if (isset($parentBlock->children[$childName])) {
|
128 |
+
$parentBlock->children[$childName] = array_merge(
|
129 |
+
$parentBlock->children[$childName],
|
130 |
+
$child);
|
131 |
+
} else {
|
132 |
+
$parentBlock->children[$childName] = $child;
|
133 |
+
}
|
134 |
+
}
|
135 |
+
|
136 |
+
$pi = pathinfo($realPath);
|
137 |
+
$dir = $pi["dirname"];
|
138 |
+
|
139 |
+
list($top, $bottom) = $this->sortProps($root->props, true);
|
140 |
+
$this->compileImportedProps($top, $parentBlock, $out, $parser, $dir);
|
141 |
+
|
142 |
+
return array(true, $bottom, $parser, $dir);
|
143 |
+
}
|
144 |
+
|
145 |
+
protected function compileImportedProps($props, $block, $out, $sourceParser, $importDir) {
|
146 |
+
$oldSourceParser = $this->sourceParser;
|
147 |
+
|
148 |
+
$oldImport = $this->importDir;
|
149 |
+
|
150 |
+
// TODO: this is because the importDir api is stupid
|
151 |
+
$this->importDir = (array)$this->importDir;
|
152 |
+
array_unshift($this->importDir, $importDir);
|
153 |
+
|
154 |
+
foreach ($props as $prop) {
|
155 |
+
$this->compileProp($prop, $block, $out);
|
156 |
+
}
|
157 |
+
|
158 |
+
$this->importDir = $oldImport;
|
159 |
+
$this->sourceParser = $oldSourceParser;
|
160 |
+
}
|
161 |
+
|
162 |
+
/**
|
163 |
+
* Recursively compiles a block.
|
164 |
+
*
|
165 |
+
* A block is analogous to a CSS block in most cases. A single LESS document
|
166 |
+
* is encapsulated in a block when parsed, but it does not have parent tags
|
167 |
+
* so all of it's children appear on the root level when compiled.
|
168 |
+
*
|
169 |
+
* Blocks are made up of props and children.
|
170 |
+
*
|
171 |
+
* Props are property instructions, array tuples which describe an action
|
172 |
+
* to be taken, eg. write a property, set a variable, mixin a block.
|
173 |
+
*
|
174 |
+
* The children of a block are just all the blocks that are defined within.
|
175 |
+
* This is used to look up mixins when performing a mixin.
|
176 |
+
*
|
177 |
+
* Compiling the block involves pushing a fresh environment on the stack,
|
178 |
+
* and iterating through the props, compiling each one.
|
179 |
+
*
|
180 |
+
* See seed_csp4_lessc::compileProp()
|
181 |
+
*
|
182 |
+
*/
|
183 |
+
protected function compileBlock($block) {
|
184 |
+
switch ($block->type) {
|
185 |
+
case "root":
|
186 |
+
$this->compileRoot($block);
|
187 |
+
break;
|
188 |
+
case null:
|
189 |
+
$this->compileCSSBlock($block);
|
190 |
+
break;
|
191 |
+
case "media":
|
192 |
+
$this->compileMedia($block);
|
193 |
+
break;
|
194 |
+
case "directive":
|
195 |
+
$name = "@" . $block->name;
|
196 |
+
if (!empty($block->value)) {
|
197 |
+
$name .= " " . $this->compileValue($this->reduce($block->value));
|
198 |
+
}
|
199 |
+
|
200 |
+
$this->compileNestedBlock($block, array($name));
|
201 |
+
break;
|
202 |
+
default:
|
203 |
+
$this->throwError("unknown block type: $block->type\n");
|
204 |
+
}
|
205 |
+
}
|
206 |
+
|
207 |
+
protected function compileCSSBlock($block) {
|
208 |
+
$env = $this->pushEnv();
|
209 |
+
|
210 |
+
$selectors = $this->compileSelectors($block->tags);
|
211 |
+
$env->selectors = $this->multiplySelectors($selectors);
|
212 |
+
$out = $this->makeOutputBlock(null, $env->selectors);
|
213 |
+
|
214 |
+
$this->scope->children[] = $out;
|
215 |
+
$this->compileProps($block, $out);
|
216 |
+
|
217 |
+
$block->scope = $env; // mixins carry scope with them!
|
218 |
+
$this->popEnv();
|
219 |
+
}
|
220 |
+
|
221 |
+
protected function compileMedia($media) {
|
222 |
+
$env = $this->pushEnv($media);
|
223 |
+
$parentScope = $this->mediaParent($this->scope);
|
224 |
+
|
225 |
+
$query = $this->compileMediaQuery($this->multiplyMedia($env));
|
226 |
+
|
227 |
+
$this->scope = $this->makeOutputBlock($media->type, array($query));
|
228 |
+
$parentScope->children[] = $this->scope;
|
229 |
+
|
230 |
+
$this->compileProps($media, $this->scope);
|
231 |
+
|
232 |
+
if (count($this->scope->lines) > 0) {
|
233 |
+
$orphanSelelectors = $this->findClosestSelectors();
|
234 |
+
if (!is_null($orphanSelelectors)) {
|
235 |
+
$orphan = $this->makeOutputBlock(null, $orphanSelelectors);
|
236 |
+
$orphan->lines = $this->scope->lines;
|
237 |
+
array_unshift($this->scope->children, $orphan);
|
238 |
+
$this->scope->lines = array();
|
239 |
+
}
|
240 |
+
}
|
241 |
+
|
242 |
+
$this->scope = $this->scope->parent;
|
243 |
+
$this->popEnv();
|
244 |
+
}
|
245 |
+
|
246 |
+
protected function mediaParent($scope) {
|
247 |
+
while (!empty($scope->parent)) {
|
248 |
+
if (!empty($scope->type) && $scope->type != "media") {
|
249 |
+
break;
|
250 |
+
}
|
251 |
+
$scope = $scope->parent;
|
252 |
+
}
|
253 |
+
|
254 |
+
return $scope;
|
255 |
+
}
|
256 |
+
|
257 |
+
protected function compileNestedBlock($block, $selectors) {
|
258 |
+
$this->pushEnv($block);
|
259 |
+
$this->scope = $this->makeOutputBlock($block->type, $selectors);
|
260 |
+
$this->scope->parent->children[] = $this->scope;
|
261 |
+
|
262 |
+
$this->compileProps($block, $this->scope);
|
263 |
+
|
264 |
+
$this->scope = $this->scope->parent;
|
265 |
+
$this->popEnv();
|
266 |
+
}
|
267 |
+
|
268 |
+
protected function compileRoot($root) {
|
269 |
+
$this->pushEnv();
|
270 |
+
$this->scope = $this->makeOutputBlock($root->type);
|
271 |
+
$this->compileProps($root, $this->scope);
|
272 |
+
$this->popEnv();
|
273 |
+
}
|
274 |
+
|
275 |
+
protected function compileProps($block, $out) {
|
276 |
+
foreach ($this->sortProps($block->props) as $prop) {
|
277 |
+
$this->compileProp($prop, $block, $out);
|
278 |
+
}
|
279 |
+
}
|
280 |
+
|
281 |
+
protected function sortProps($props, $split = false) {
|
282 |
+
$vars = array();
|
283 |
+
$imports = array();
|
284 |
+
$other = array();
|
285 |
+
|
286 |
+
foreach ($props as $prop) {
|
287 |
+
switch ($prop[0]) {
|
288 |
+
case "assign":
|
289 |
+
if (isset($prop[1][0]) && $prop[1][0] == $this->vPrefix) {
|
290 |
+
$vars[] = $prop;
|
291 |
+
} else {
|
292 |
+
$other[] = $prop;
|
293 |
+
}
|
294 |
+
break;
|
295 |
+
case "import":
|
296 |
+
$id = self::$nextImportId++;
|
297 |
+
$prop[] = $id;
|
298 |
+
$imports[] = $prop;
|
299 |
+
$other[] = array("import_mixin", $id);
|
300 |
+
break;
|
301 |
+
default:
|
302 |
+
$other[] = $prop;
|
303 |
+
}
|
304 |
+
}
|
305 |
+
|
306 |
+
if ($split) {
|
307 |
+
return array(array_merge($vars, $imports), $other);
|
308 |
+
} else {
|
309 |
+
return array_merge($vars, $imports, $other);
|
310 |
+
}
|
311 |
+
}
|
312 |
+
|
313 |
+
protected function compileMediaQuery($queries) {
|
314 |
+
$compiledQueries = array();
|
315 |
+
foreach ($queries as $query) {
|
316 |
+
$parts = array();
|
317 |
+
foreach ($query as $q) {
|
318 |
+
switch ($q[0]) {
|
319 |
+
case "mediaType":
|
320 |
+
$parts[] = implode(" ", array_slice($q, 1));
|
321 |
+
break;
|
322 |
+
case "mediaExp":
|
323 |
+
if (isset($q[2])) {
|
324 |
+
$parts[] = "($q[1]: " .
|
325 |
+
$this->compileValue($this->reduce($q[2])) . ")";
|
326 |
+
} else {
|
327 |
+
$parts[] = "($q[1])";
|
328 |
+
}
|
329 |
+
break;
|
330 |
+
}
|
331 |
+
}
|
332 |
+
|
333 |
+
if (count($parts) > 0) {
|
334 |
+
$compiledQueries[] = implode(" and ", $parts);
|
335 |
+
}
|
336 |
+
}
|
337 |
+
|
338 |
+
$out = "@media";
|
339 |
+
if (!empty($parts)) {
|
340 |
+
$out .= " " .
|
341 |
+
implode($this->formatter->selectorSeparator, $compiledQueries);
|
342 |
+
}
|
343 |
+
return $out;
|
344 |
+
}
|
345 |
+
|
346 |
+
protected function multiplyMedia($env, $childQueries = null) {
|
347 |
+
if (is_null($env) ||
|
348 |
+
!empty($env->block->type) && $env->block->type != "media")
|
349 |
+
{
|
350 |
+
return $childQueries;
|
351 |
+
}
|
352 |
+
|
353 |
+
// plain old block, skip
|
354 |
+
if (empty($env->block->type)) {
|
355 |
+
return $this->multiplyMedia($env->parent, $childQueries);
|
356 |
+
}
|
357 |
+
|
358 |
+
$out = array();
|
359 |
+
$queries = $env->block->queries;
|
360 |
+
if (is_null($childQueries)) {
|
361 |
+
$out = $queries;
|
362 |
+
} else {
|
363 |
+
foreach ($queries as $parent) {
|
364 |
+
foreach ($childQueries as $child) {
|
365 |
+
$out[] = array_merge($parent, $child);
|
366 |
+
}
|
367 |
+
}
|
368 |
+
}
|
369 |
+
|
370 |
+
return $this->multiplyMedia($env->parent, $out);
|
371 |
+
}
|
372 |
+
|
373 |
+
protected function expandParentSelectors(&$tag, $replace) {
|
374 |
+
$parts = explode("$&$", $tag);
|
375 |
+
$count = 0;
|
376 |
+
foreach ($parts as &$part) {
|
377 |
+
$part = str_replace($this->parentSelector, $replace, $part, $c);
|
378 |
+
$count += $c;
|
379 |
+
}
|
380 |
+
$tag = implode($this->parentSelector, $parts);
|
381 |
+
return $count;
|
382 |
+
}
|
383 |
+
|
384 |
+
protected function findClosestSelectors() {
|
385 |
+
$env = $this->env;
|
386 |
+
$selectors = null;
|
387 |
+
while ($env !== null) {
|
388 |
+
if (isset($env->selectors)) {
|
389 |
+
$selectors = $env->selectors;
|
390 |
+
break;
|
391 |
+
}
|
392 |
+
$env = $env->parent;
|
393 |
+
}
|
394 |
+
|
395 |
+
return $selectors;
|
396 |
+
}
|
397 |
+
|
398 |
+
|
399 |
+
// multiply $selectors against the nearest selectors in env
|
400 |
+
protected function multiplySelectors($selectors) {
|
401 |
+
// find parent selectors
|
402 |
+
|
403 |
+
$parentSelectors = $this->findClosestSelectors();
|
404 |
+
if (is_null($parentSelectors)) {
|
405 |
+
// kill parent reference in top level selector
|
406 |
+
foreach ($selectors as &$s) {
|
407 |
+
$this->expandParentSelectors($s, "");
|
408 |
+
}
|
409 |
+
|
410 |
+
return $selectors;
|
411 |
+
}
|
412 |
+
|
413 |
+
$out = array();
|
414 |
+
foreach ($parentSelectors as $parent) {
|
415 |
+
foreach ($selectors as $child) {
|
416 |
+
$count = $this->expandParentSelectors($child, $parent);
|
417 |
+
|
418 |
+
// don't prepend the parent tag if & was used
|
419 |
+
if ($count > 0) {
|
420 |
+
$out[] = trim($child);
|
421 |
+
} else {
|
422 |
+
$out[] = trim($parent . ' ' . $child);
|
423 |
+
}
|
424 |
+
}
|
425 |
+
}
|
426 |
+
|
427 |
+
return $out;
|
428 |
+
}
|
429 |
+
|
430 |
+
// reduces selector expressions
|
431 |
+
protected function compileSelectors($selectors) {
|
432 |
+
$out = array();
|
433 |
+
|
434 |
+
foreach ($selectors as $s) {
|
435 |
+
if (is_array($s)) {
|
436 |
+
list(, $value) = $s;
|
437 |
+
$out[] = $this->compileValue($this->reduce($value));
|
438 |
+
} else {
|
439 |
+
$out[] = $s;
|
440 |
+
}
|
441 |
+
}
|
442 |
+
|
443 |
+
return $out;
|
444 |
+
}
|
445 |
+
|
446 |
+
protected function eq($left, $right) {
|
447 |
+
return $left == $right;
|
448 |
+
}
|
449 |
+
|
450 |
+
protected function patternMatch($block, $callingArgs) {
|
451 |
+
// match the guards if it has them
|
452 |
+
// any one of the groups must have all its guards pass for a match
|
453 |
+
if (!empty($block->guards)) {
|
454 |
+
$groupPassed = false;
|
455 |
+
foreach ($block->guards as $guardGroup) {
|
456 |
+
foreach ($guardGroup as $guard) {
|
457 |
+
$this->pushEnv();
|
458 |
+
$this->zipSetArgs($block->args, $callingArgs);
|
459 |
+
|
460 |
+
$negate = false;
|
461 |
+
if ($guard[0] == "negate") {
|
462 |
+
$guard = $guard[1];
|
463 |
+
$negate = true;
|
464 |
+
}
|
465 |
+
|
466 |
+
$passed = $this->reduce($guard) == self::$TRUE;
|
467 |
+
if ($negate) $passed = !$passed;
|
468 |
+
|
469 |
+
$this->popEnv();
|
470 |
+
|
471 |
+
if ($passed) {
|
472 |
+
$groupPassed = true;
|
473 |
+
} else {
|
474 |
+
$groupPassed = false;
|
475 |
+
break;
|
476 |
+
}
|
477 |
+
}
|
478 |
+
|
479 |
+
if ($groupPassed) break;
|
480 |
+
}
|
481 |
+
|
482 |
+
if (!$groupPassed) {
|
483 |
+
return false;
|
484 |
+
}
|
485 |
+
}
|
486 |
+
|
487 |
+
$numCalling = count($callingArgs);
|
488 |
+
|
489 |
+
if (empty($block->args)) {
|
490 |
+
return $block->isVararg || $numCalling == 0;
|
491 |
+
}
|
492 |
+
|
493 |
+
$i = -1; // no args
|
494 |
+
// try to match by arity or by argument literal
|
495 |
+
foreach ($block->args as $i => $arg) {
|
496 |
+
switch ($arg[0]) {
|
497 |
+
case "lit":
|
498 |
+
if (empty($callingArgs[$i]) || !$this->eq($arg[1], $callingArgs[$i])) {
|
499 |
+
return false;
|
500 |
+
}
|
501 |
+
break;
|
502 |
+
case "arg":
|
503 |
+
// no arg and no default value
|
504 |
+
if (!isset($callingArgs[$i]) && !isset($arg[2])) {
|
505 |
+
return false;
|
506 |
+
}
|
507 |
+
break;
|
508 |
+
case "rest":
|
509 |
+
$i--; // rest can be empty
|
510 |
+
break 2;
|
511 |
+
}
|
512 |
+
}
|
513 |
+
|
514 |
+
if ($block->isVararg) {
|
515 |
+
return true; // not having enough is handled above
|
516 |
+
} else {
|
517 |
+
$numMatched = $i + 1;
|
518 |
+
// greater than becuase default values always match
|
519 |
+
return $numMatched >= $numCalling;
|
520 |
+
}
|
521 |
+
}
|
522 |
+
|
523 |
+
protected function patternMatchAll($blocks, $callingArgs) {
|
524 |
+
$matches = null;
|
525 |
+
foreach ($blocks as $block) {
|
526 |
+
if ($this->patternMatch($block, $callingArgs)) {
|
527 |
+
$matches[] = $block;
|
528 |
+
}
|
529 |
+
}
|
530 |
+
|
531 |
+
return $matches;
|
532 |
+
}
|
533 |
+
|
534 |
+
// attempt to find blocks matched by path and args
|
535 |
+
protected function findBlocks($searchIn, $path, $args, $seen=array()) {
|
536 |
+
if ($searchIn == null) return null;
|
537 |
+
if (isset($seen[$searchIn->id])) return null;
|
538 |
+
$seen[$searchIn->id] = true;
|
539 |
+
|
540 |
+
$name = $path[0];
|
541 |
+
|
542 |
+
if (isset($searchIn->children[$name])) {
|
543 |
+
$blocks = $searchIn->children[$name];
|
544 |
+
if (count($path) == 1) {
|
545 |
+
$matches = $this->patternMatchAll($blocks, $args);
|
546 |
+
if (!empty($matches)) {
|
547 |
+
// This will return all blocks that match in the closest
|
548 |
+
// scope that has any matching block, like lessjs
|
549 |
+
return $matches;
|
550 |
+
}
|
551 |
+
} else {
|
552 |
+
$matches = array();
|
553 |
+
foreach ($blocks as $subBlock) {
|
554 |
+
$subMatches = $this->findBlocks($subBlock,
|
555 |
+
array_slice($path, 1), $args, $seen);
|
556 |
+
|
557 |
+
if (!is_null($subMatches)) {
|
558 |
+
foreach ($subMatches as $sm) {
|
559 |
+
$matches[] = $sm;
|
560 |
+
}
|
561 |
+
}
|
562 |
+
}
|
563 |
+
|
564 |
+
return count($matches) > 0 ? $matches : null;
|
565 |
+
}
|
566 |
+
}
|
567 |
+
|
568 |
+
if ($searchIn->parent === $searchIn) return null;
|
569 |
+
return $this->findBlocks($searchIn->parent, $path, $args, $seen);
|
570 |
+
}
|
571 |
+
|
572 |
+
// sets all argument names in $args to either the default value
|
573 |
+
// or the one passed in through $values
|
574 |
+
protected function zipSetArgs($args, $values) {
|
575 |
+
$i = 0;
|
576 |
+
$assignedValues = array();
|
577 |
+
foreach ($args as $a) {
|
578 |
+
if ($a[0] == "arg") {
|
579 |
+
if ($i < count($values) && !is_null($values[$i])) {
|
580 |
+
$value = $values[$i];
|
581 |
+
} elseif (isset($a[2])) {
|
582 |
+
$value = $a[2];
|
583 |
+
} else $value = null;
|
584 |
+
|
585 |
+
$value = $this->reduce($value);
|
586 |
+
$this->set($a[1], $value);
|
587 |
+
$assignedValues[] = $value;
|
588 |
+
}
|
589 |
+
$i++;
|
590 |
+
}
|
591 |
+
|
592 |
+
// check for a rest
|
593 |
+
$last = end($args);
|
594 |
+
if ($last[0] == "rest") {
|
595 |
+
$rest = array_slice($values, count($args) - 1);
|
596 |
+
$this->set($last[1], $this->reduce(array("list", " ", $rest)));
|
597 |
+
}
|
598 |
+
|
599 |
+
$this->env->arguments = $assignedValues;
|
600 |
+
}
|
601 |
+
|
602 |
+
// compile a prop and update $lines or $blocks appropriately
|
603 |
+
protected function compileProp($prop, $block, $out) {
|
604 |
+
// set error position context
|
605 |
+
$this->sourceLoc = isset($prop[-1]) ? $prop[-1] : -1;
|
606 |
+
|
607 |
+
switch ($prop[0]) {
|
608 |
+
case 'assign':
|
609 |
+
list(, $name, $value) = $prop;
|
610 |
+
if ($name[0] == $this->vPrefix) {
|
611 |
+
$this->set($name, $value);
|
612 |
+
} else {
|
613 |
+
$out->lines[] = $this->formatter->property($name,
|
614 |
+
$this->compileValue($this->reduce($value)));
|
615 |
+
}
|
616 |
+
break;
|
617 |
+
case 'block':
|
618 |
+
list(, $child) = $prop;
|
619 |
+
$this->compileBlock($child);
|
620 |
+
break;
|
621 |
+
case 'mixin':
|
622 |
+
list(, $path, $args, $suffix) = $prop;
|
623 |
+
|
624 |
+
$args = array_map(array($this, "reduce"), (array)$args);
|
625 |
+
$mixins = $this->findBlocks($block, $path, $args);
|
626 |
+
|
627 |
+
if ($mixins === null) {
|
628 |
+
// fwrite(STDERR,"failed to find block: ".implode(" > ", $path)."\n");
|
629 |
+
break; // throw error here??
|
630 |
+
}
|
631 |
+
|
632 |
+
foreach ($mixins as $mixin) {
|
633 |
+
$haveScope = false;
|
634 |
+
if (isset($mixin->parent->scope)) {
|
635 |
+
$haveScope = true;
|
636 |
+
$mixinParentEnv = $this->pushEnv();
|
637 |
+
$mixinParentEnv->storeParent = $mixin->parent->scope;
|
638 |
+
}
|
639 |
+
|
640 |
+
$haveArgs = false;
|
641 |
+
if (isset($mixin->args)) {
|
642 |
+
$haveArgs = true;
|
643 |
+
$this->pushEnv();
|
644 |
+
$this->zipSetArgs($mixin->args, $args);
|
645 |
+
}
|
646 |
+
|
647 |
+
$oldParent = $mixin->parent;
|
648 |
+
if ($mixin != $block) $mixin->parent = $block;
|
649 |
+
|
650 |
+
foreach ($this->sortProps($mixin->props) as $subProp) {
|
651 |
+
if ($suffix !== null &&
|
652 |
+
$subProp[0] == "assign" &&
|
653 |
+
is_string($subProp[1]) &&
|
654 |
+
$subProp[1]{0} != $this->vPrefix)
|
655 |
+
{
|
656 |
+
$subProp[2] = array(
|
657 |
+
'list', ' ',
|
658 |
+
array($subProp[2], array('keyword', $suffix))
|
659 |
+
);
|
660 |
+
}
|
661 |
+
|
662 |
+
$this->compileProp($subProp, $mixin, $out);
|
663 |
+
}
|
664 |
+
|
665 |
+
$mixin->parent = $oldParent;
|
666 |
+
|
667 |
+
if ($haveArgs) $this->popEnv();
|
668 |
+
if ($haveScope) $this->popEnv();
|
669 |
+
}
|
670 |
+
|
671 |
+
break;
|
672 |
+
case 'raw':
|
673 |
+
$out->lines[] = $prop[1];
|
674 |
+
break;
|
675 |
+
case "directive":
|
676 |
+
list(, $name, $value) = $prop;
|
677 |
+
$out->lines[] = "@$name " . $this->compileValue($this->reduce($value)).';';
|
678 |
+
break;
|
679 |
+
case "comment":
|
680 |
+
$out->lines[] = $prop[1];
|
681 |
+
break;
|
682 |
+
case "import";
|
683 |
+
list(, $importPath, $importId) = $prop;
|
684 |
+
$importPath = $this->reduce($importPath);
|
685 |
+
|
686 |
+
if (!isset($this->env->imports)) {
|
687 |
+
$this->env->imports = array();
|
688 |
+
}
|
689 |
+
|
690 |
+
$result = $this->tryImport($importPath, $block, $out);
|
691 |
+
|
692 |
+
$this->env->imports[$importId] = $result === false ?
|
693 |
+
array(false, "@import " . $this->compileValue($importPath).";") :
|
694 |
+
$result;
|
695 |
+
|
696 |
+
break;
|
697 |
+
case "import_mixin":
|
698 |
+
list(,$importId) = $prop;
|
699 |
+
$import = $this->env->imports[$importId];
|
700 |
+
if ($import[0] === false) {
|
701 |
+
$out->lines[] = $import[1];
|
702 |
+
} else {
|
703 |
+
list(, $bottom, $parser, $importDir) = $import;
|
704 |
+
$this->compileImportedProps($bottom, $block, $out, $parser, $importDir);
|
705 |
+
}
|
706 |
+
|
707 |
+
break;
|
708 |
+
default:
|
709 |
+
$this->throwError("unknown op: {$prop[0]}\n");
|
710 |
+
}
|
711 |
+
}
|
712 |
+
|
713 |
+
|
714 |
+
/**
|
715 |
+
* Compiles a primitive value into a CSS property value.
|
716 |
+
*
|
717 |
+
* Values in lessphp are typed by being wrapped in arrays, their format is
|
718 |
+
* typically:
|
719 |
+
*
|
720 |
+
* array(type, contents [, additional_contents]*)
|
721 |
+
*
|
722 |
+
* The input is expected to be reduced. This function will not work on
|
723 |
+
* things like expressions and variables.
|
724 |
+
*/
|
725 |
+
protected function compileValue($value) {
|
726 |
+
switch ($value[0]) {
|
727 |
+
case 'list':
|
728 |
+
// [1] - delimiter
|
729 |
+
// [2] - array of values
|
730 |
+
return implode($value[1], array_map(array($this, 'compileValue'), $value[2]));
|
731 |
+
case 'raw_color':
|
732 |
+
if (!empty($this->formatter->compressColors)) {
|
733 |
+
return $this->compileValue($this->coerceColor($value));
|
734 |
+
}
|
735 |
+
return $value[1];
|
736 |
+
case 'keyword':
|
737 |
+
// [1] - the keyword
|
738 |
+
return $value[1];
|
739 |
+
case 'number':
|
740 |
+
list(, $num, $unit) = $value;
|
741 |
+
// [1] - the number
|
742 |
+
// [2] - the unit
|
743 |
+
if ($this->numberPrecision !== null) {
|
744 |
+
$num = round($num, $this->numberPrecision);
|
745 |
+
}
|
746 |
+
return $num . $unit;
|
747 |
+
case 'string':
|
748 |
+
// [1] - contents of string (includes quotes)
|
749 |
+
list(, $delim, $content) = $value;
|
750 |
+
foreach ($content as &$part) {
|
751 |
+
if (is_array($part)) {
|
752 |
+
$part = $this->compileValue($part);
|
753 |
+
}
|
754 |
+
}
|
755 |
+
return $delim . implode($content) . $delim;
|
756 |
+
case 'color':
|
757 |
+
// [1] - red component (either number or a %)
|
758 |
+
// [2] - green component
|
759 |
+
// [3] - blue component
|
760 |
+
// [4] - optional alpha component
|
761 |
+
list(, $r, $g, $b) = $value;
|
762 |
+
$r = round($r);
|
763 |
+
$g = round($g);
|
764 |
+
$b = round($b);
|
765 |
+
|
766 |
+
if (count($value) == 5 && $value[4] != 1) { // rgba
|
767 |
+
return 'rgba('.$r.','.$g.','.$b.','.$value[4].')';
|
768 |
+
}
|
769 |
+
|
770 |
+
$h = sprintf("#%02x%02x%02x", $r, $g, $b);
|
771 |
+
|
772 |
+
if (!empty($this->formatter->compressColors)) {
|
773 |
+
// Converting hex color to short notation (e.g. #003399 to #039)
|
774 |
+
if ($h[1] === $h[2] && $h[3] === $h[4] && $h[5] === $h[6]) {
|
775 |
+
$h = '#' . $h[1] . $h[3] . $h[5];
|
776 |
+
}
|
777 |
+
}
|
778 |
+
|
779 |
+
return $h;
|
780 |
+
|
781 |
+
case 'function':
|
782 |
+
list(, $name, $args) = $value;
|
783 |
+
return $name.'('.$this->compileValue($args).')';
|
784 |
+
default: // assumed to be unit
|
785 |
+
$this->throwError("unknown value type: $value[0]");
|
786 |
+
}
|
787 |
+
}
|
788 |
+
|
789 |
+
protected function lib_isnumber($value) {
|
790 |
+
return $this->toBool($value[0] == "number");
|
791 |
+
}
|
792 |
+
|
793 |
+
protected function lib_isstring($value) {
|
794 |
+
return $this->toBool($value[0] == "string");
|
795 |
+
}
|
796 |
+
|
797 |
+
protected function lib_iscolor($value) {
|
798 |
+
return $this->toBool($this->coerceColor($value));
|
799 |
+
}
|
800 |
+
|
801 |
+
protected function lib_iskeyword($value) {
|
802 |
+
return $this->toBool($value[0] == "keyword");
|
803 |
+
}
|
804 |
+
|
805 |
+
protected function lib_ispixel($value) {
|
806 |
+
return $this->toBool($value[0] == "number" && $value[2] == "px");
|
807 |
+
}
|
808 |
+
|
809 |
+
protected function lib_ispercentage($value) {
|
810 |
+
return $this->toBool($value[0] == "number" && $value[2] == "%");
|
811 |
+
}
|
812 |
+
|
813 |
+
protected function lib_isem($value) {
|
814 |
+
return $this->toBool($value[0] == "number" && $value[2] == "em");
|
815 |
+
}
|
816 |
+
|
817 |
+
protected function lib_rgbahex($color) {
|
818 |
+
$color = $this->coerceColor($color);
|
819 |
+
if (is_null($color))
|
820 |
+
$this->throwError("color expected for rgbahex");
|
821 |
+
|
822 |
+
return sprintf("#%02x%02x%02x%02x",
|
823 |
+
isset($color[4]) ? $color[4]*255 : 255,
|
824 |
+
$color[1],$color[2], $color[3]);
|
825 |
+
}
|
826 |
+
|
827 |
+
protected function lib_argb($color){
|
828 |
+
return $this->lib_rgbahex($color);
|
829 |
+
}
|
830 |
+
|
831 |
+
// utility func to unquote a string
|
832 |
+
protected function lib_e($arg) {
|
833 |
+
switch ($arg[0]) {
|
834 |
+
case "list":
|
835 |
+
$items = $arg[2];
|
836 |
+
if (isset($items[0])) {
|
837 |
+
return $this->lib_e($items[0]);
|
838 |
+
}
|
839 |
+
return self::$defaultValue;
|
840 |
+
case "string":
|
841 |
+
$arg[1] = "";
|
842 |
+
return $arg;
|
843 |
+
case "keyword":
|
844 |
+
return $arg;
|
845 |
+
default:
|
846 |
+
return array("keyword", $this->compileValue($arg));
|
847 |
+
}
|
848 |
+
}
|
849 |
+
|
850 |
+
protected function lib__sprintf($args) {
|
851 |
+
if ($args[0] != "list") return $args;
|
852 |
+
$values = $args[2];
|
853 |
+
$string = array_shift($values);
|
854 |
+
$template = $this->compileValue($this->lib_e($string));
|
855 |
+
|
856 |
+
$i = 0;
|
857 |
+
if (preg_match_all('/%[dsa]/', $template, $m)) {
|
858 |
+
foreach ($m[0] as $match) {
|
859 |
+
$val = isset($values[$i]) ?
|
860 |
+
$this->reduce($values[$i]) : array('keyword', '');
|
861 |
+
|
862 |
+
// lessjs compat, renders fully expanded color, not raw color
|
863 |
+
if ($color = $this->coerceColor($val)) {
|
864 |
+
$val = $color;
|
865 |
+
}
|
866 |
+
|
867 |
+
$i++;
|
868 |
+
$rep = $this->compileValue($this->lib_e($val));
|
869 |
+
$template = preg_replace('/'.self::preg_quote($match).'/',
|
870 |
+
$rep, $template, 1);
|
871 |
+
}
|
872 |
+
}
|
873 |
+
|
874 |
+
$d = $string[0] == "string" ? $string[1] : '"';
|
875 |
+
return array("string", $d, array($template));
|
876 |
+
}
|
877 |
+
|
878 |
+
protected function lib_floor($arg) {
|
879 |
+
$value = $this->assertNumber($arg);
|
880 |
+
return array("number", floor($value), $arg[2]);
|
881 |
+
}
|
882 |
+
|
883 |
+
protected function lib_ceil($arg) {
|
884 |
+
$value = $this->assertNumber($arg);
|
885 |
+
return array("number", ceil($value), $arg[2]);
|
886 |
+
}
|
887 |
+
|
888 |
+
protected function lib_round($arg) {
|
889 |
+
$value = $this->assertNumber($arg);
|
890 |
+
return array("number", round($value), $arg[2]);
|
891 |
+
}
|
892 |
+
|
893 |
+
/**
|
894 |
+
* Helper function to get arguments for color manipulation functions.
|
895 |
+
* takes a list that contains a color like thing and a percentage
|
896 |
+
*/
|
897 |
+
protected function colorArgs($args) {
|
898 |
+
if ($args[0] != 'list' || count($args[2]) < 2) {
|
899 |
+
return array(array('color', 0, 0, 0), 0);
|
900 |
+
}
|
901 |
+
list($color, $delta) = $args[2];
|
902 |
+
$color = $this->assertColor($color);
|
903 |
+
$delta = floatval($delta[1]);
|
904 |
+
|
905 |
+
return array($color, $delta);
|
906 |
+
}
|
907 |
+
|
908 |
+
protected function lib_darken($args) {
|
909 |
+
list($color, $delta) = $this->colorArgs($args);
|
910 |
+
|
911 |
+
$hsl = $this->toHSL($color);
|
912 |
+
$hsl[3] = $this->clamp($hsl[3] - $delta, 100);
|
913 |
+
return $this->toRGB($hsl);
|
914 |
+
}
|
915 |
+
|
916 |
+
protected function lib_lighten($args) {
|
917 |
+
list($color, $delta) = $this->colorArgs($args);
|
918 |
+
|
919 |
+
$hsl = $this->toHSL($color);
|
920 |
+
$hsl[3] = $this->clamp($hsl[3] + $delta, 100);
|
921 |
+
return $this->toRGB($hsl);
|
922 |
+
}
|
923 |
+
|
924 |
+
protected function lib_saturate($args) {
|
925 |
+
list($color, $delta) = $this->colorArgs($args);
|
926 |
+
|
927 |
+
$hsl = $this->toHSL($color);
|
928 |
+
$hsl[2] = $this->clamp($hsl[2] + $delta, 100);
|
929 |
+
return $this->toRGB($hsl);
|
930 |
+
}
|
931 |
+
|
932 |
+
protected function lib_desaturate($args) {
|
933 |
+
list($color, $delta) = $this->colorArgs($args);
|
934 |
+
|
935 |
+
$hsl = $this->toHSL($color);
|
936 |
+
$hsl[2] = $this->clamp($hsl[2] - $delta, 100);
|
937 |
+
return $this->toRGB($hsl);
|
938 |
+
}
|
939 |
+
|
940 |
+
protected function lib_spin($args) {
|
941 |
+
list($color, $delta) = $this->colorArgs($args);
|
942 |
+
|
943 |
+
$hsl = $this->toHSL($color);
|
944 |
+
|
945 |
+
$hsl[1] = $hsl[1] + $delta % 360;
|
946 |
+
if ($hsl[1] < 0) $hsl[1] += 360;
|
947 |
+
|
948 |
+
return $this->toRGB($hsl);
|
949 |
+
}
|
950 |
+
|
951 |
+
protected function lib_fadeout($args) {
|
952 |
+
list($color, $delta) = $this->colorArgs($args);
|
953 |
+
$color[4] = $this->clamp((isset($color[4]) ? $color[4] : 1) - $delta/100);
|
954 |
+
return $color;
|
955 |
+
}
|
956 |
+
|
957 |
+
protected function lib_fadein($args) {
|
958 |
+
list($color, $delta) = $this->colorArgs($args);
|
959 |
+
$color[4] = $this->clamp((isset($color[4]) ? $color[4] : 1) + $delta/100);
|
960 |
+
return $color;
|
961 |
+
}
|
962 |
+
|
963 |
+
protected function lib_hue($color) {
|
964 |
+
$hsl = $this->toHSL($this->assertColor($color));
|
965 |
+
return round($hsl[1]);
|
966 |
+
}
|
967 |
+
|
968 |
+
protected function lib_saturation($color) {
|
969 |
+
$hsl = $this->toHSL($this->assertColor($color));
|
970 |
+
return round($hsl[2]);
|
971 |
+
}
|
972 |
+
|
973 |
+
protected function lib_lightness($color) {
|
974 |
+
$hsl = $this->toHSL($this->assertColor($color));
|
975 |
+
return round($hsl[3]);
|
976 |
+
}
|
977 |
+
|
978 |
+
// get the alpha of a color
|
979 |
+
// defaults to 1 for non-colors or colors without an alpha
|
980 |
+
protected function lib_alpha($value) {
|
981 |
+
if (!is_null($color = $this->coerceColor($value))) {
|
982 |
+
return isset($color[4]) ? $color[4] : 1;
|
983 |
+
}
|
984 |
+
}
|
985 |
+
|
986 |
+
// set the alpha of the color
|
987 |
+
protected function lib_fade($args) {
|
988 |
+
list($color, $alpha) = $this->colorArgs($args);
|
989 |
+
$color[4] = $this->clamp($alpha / 100.0);
|
990 |
+
return $color;
|
991 |
+
}
|
992 |
+
|
993 |
+
protected function lib_percentage($arg) {
|
994 |
+
$num = $this->assertNumber($arg);
|
995 |
+
return array("number", $num*100, "%");
|
996 |
+
}
|
997 |
+
|
998 |
+
// mixes two colors by weight
|
999 |
+
// mix(@color1, @color2, @weight);
|
1000 |
+
// http://sass-lang.com/docs/yardoc/Sass/Script/Functions.html#mix-instance_method
|
1001 |
+
protected function lib_mix($args) {
|
1002 |
+
if ($args[0] != "list" || count($args[2]) < 3)
|
1003 |
+
$this->throwError("mix expects (color1, color2, weight)");
|
1004 |
+
|
1005 |
+
list($first, $second, $weight) = $args[2];
|
1006 |
+
$first = $this->assertColor($first);
|
1007 |
+
$second = $this->assertColor($second);
|
1008 |
+
|
1009 |
+
$first_a = $this->lib_alpha($first);
|
1010 |
+
$second_a = $this->lib_alpha($second);
|
1011 |
+
$weight = $weight[1] / 100.0;
|
1012 |
+
|
1013 |
+
$w = $weight * 2 - 1;
|
1014 |
+
$a = $first_a - $second_a;
|
1015 |
+
|
1016 |
+
$w1 = (($w * $a == -1 ? $w : ($w + $a)/(1 + $w * $a)) + 1) / 2.0;
|
1017 |
+
$w2 = 1.0 - $w1;
|
1018 |
+
|
1019 |
+
$new = array('color',
|
1020 |
+
$w1 * $first[1] + $w2 * $second[1],
|
1021 |
+
$w1 * $first[2] + $w2 * $second[2],
|
1022 |
+
$w1 * $first[3] + $w2 * $second[3],
|
1023 |
+
);
|
1024 |
+
|
1025 |
+
if ($first_a != 1.0 || $second_a != 1.0) {
|
1026 |
+
$new[] = $first_a * $weight + $second_a * ($weight - 1);
|
1027 |
+
}
|
1028 |
+
|
1029 |
+
return $this->fixColor($new);
|
1030 |
+
}
|
1031 |
+
|
1032 |
+
protected function assertColor($value, $error = "expected color value") {
|
1033 |
+
$color = $this->coerceColor($value);
|
1034 |
+
if (is_null($color)) $this->throwError($error);
|
1035 |
+
return $color;
|
1036 |
+
}
|
1037 |
+
|
1038 |
+
protected function assertNumber($value, $error = "expecting number") {
|
1039 |
+
if ($value[0] == "number") return $value[1];
|
1040 |
+
$this->throwError($error);
|
1041 |
+
}
|
1042 |
+
|
1043 |
+
protected function toHSL($color) {
|
1044 |
+
if ($color[0] == 'hsl') return $color;
|
1045 |
+
|
1046 |
+
$r = $color[1] / 255;
|
1047 |
+
$g = $color[2] / 255;
|
1048 |
+
$b = $color[3] / 255;
|
1049 |
+
|
1050 |
+
$min = min($r, $g, $b);
|
1051 |
+
$max = max($r, $g, $b);
|
1052 |
+
|
1053 |
+
$L = ($min + $max) / 2;
|
1054 |
+
if ($min == $max) {
|
1055 |
+
$S = $H = 0;
|
1056 |
+
} else {
|
1057 |
+
if ($L < 0.5)
|
1058 |
+
$S = ($max - $min)/($max + $min);
|
1059 |
+
else
|
1060 |
+
$S = ($max - $min)/(2.0 - $max - $min);
|
1061 |
+
|
1062 |
+
if ($r == $max) $H = ($g - $b)/($max - $min);
|
1063 |
+
elseif ($g == $max) $H = 2.0 + ($b - $r)/($max - $min);
|
1064 |
+
elseif ($b == $max) $H = 4.0 + ($r - $g)/($max - $min);
|
1065 |
+
|
1066 |
+
}
|
1067 |
+
|
1068 |
+
$out = array('hsl',
|
1069 |
+
($H < 0 ? $H + 6 : $H)*60,
|
1070 |
+
$S*100,
|
1071 |
+
$L*100,
|
1072 |
+
);
|
1073 |
+
|
1074 |
+
if (count($color) > 4) $out[] = $color[4]; // copy alpha
|
1075 |
+
return $out;
|
1076 |
+
}
|
1077 |
+
|
1078 |
+
protected function toRGB_helper($comp, $temp1, $temp2) {
|
1079 |
+
if ($comp < 0) $comp += 1.0;
|
1080 |
+
elseif ($comp > 1) $comp -= 1.0;
|
1081 |
+
|
1082 |
+
if (6 * $comp < 1) return $temp1 + ($temp2 - $temp1) * 6 * $comp;
|
1083 |
+
if (2 * $comp < 1) return $temp2;
|
1084 |
+
if (3 * $comp < 2) return $temp1 + ($temp2 - $temp1)*((2/3) - $comp) * 6;
|
1085 |
+
|
1086 |
+
return $temp1;
|
1087 |
+
}
|
1088 |
+
|
1089 |
+
/**
|
1090 |
+
* Converts a hsl array into a color value in rgb.
|
1091 |
+
* Expects H to be in range of 0 to 360, S and L in 0 to 100
|
1092 |
+
*/
|
1093 |
+
protected function toRGB($color) {
|
1094 |
+
if ($color == 'color') return $color;
|
1095 |
+
|
1096 |
+
$H = $color[1] / 360;
|
1097 |
+
$S = $color[2] / 100;
|
1098 |
+
$L = $color[3] / 100;
|
1099 |
+
|
1100 |
+
if ($S == 0) {
|
1101 |
+
$r = $g = $b = $L;
|
1102 |
+
} else {
|
1103 |
+
$temp2 = $L < 0.5 ?
|
1104 |
+
$L*(1.0 + $S) :
|
1105 |
+
$L + $S - $L * $S;
|
1106 |
+
|
1107 |
+
$temp1 = 2.0 * $L - $temp2;
|
1108 |
+
|
1109 |
+
$r = $this->toRGB_helper($H + 1/3, $temp1, $temp2);
|
1110 |
+
$g = $this->toRGB_helper($H, $temp1, $temp2);
|
1111 |
+
$b = $this->toRGB_helper($H - 1/3, $temp1, $temp2);
|
1112 |
+
}
|
1113 |
+
|
1114 |
+
// $out = array('color', round($r*255), round($g*255), round($b*255));
|
1115 |
+
$out = array('color', $r*255, $g*255, $b*255);
|
1116 |
+
if (count($color) > 4) $out[] = $color[4]; // copy alpha
|
1117 |
+
return $out;
|
1118 |
+
}
|
1119 |
+
|
1120 |
+
protected function clamp($v, $max = 1, $min = 0) {
|
1121 |
+
return min($max, max($min, $v));
|
1122 |
+
}
|
1123 |
+
|
1124 |
+
/**
|
1125 |
+
* Convert the rgb, rgba, hsl color literals of function type
|
1126 |
+
* as returned by the parser into values of color type.
|
1127 |
+
*/
|
1128 |
+
protected function funcToColor($func) {
|
1129 |
+
$fname = $func[1];
|
1130 |
+
if ($func[2][0] != 'list') return false; // need a list of arguments
|
1131 |
+
$rawComponents = $func[2][2];
|
1132 |
+
|
1133 |
+
if ($fname == 'hsl' || $fname == 'hsla') {
|
1134 |
+
$hsl = array('hsl');
|
1135 |
+
$i = 0;
|
1136 |
+
foreach ($rawComponents as $c) {
|
1137 |
+
$val = $this->reduce($c);
|
1138 |
+
$val = isset($val[1]) ? floatval($val[1]) : 0;
|
1139 |
+
|
1140 |
+
if ($i == 0) $clamp = 360;
|
1141 |
+
elseif ($i < 3) $clamp = 100;
|
1142 |
+
else $clamp = 1;
|
1143 |
+
|
1144 |
+
$hsl[] = $this->clamp($val, $clamp);
|
1145 |
+
$i++;
|
1146 |
+
}
|
1147 |
+
|
1148 |
+
while (count($hsl) < 4) $hsl[] = 0;
|
1149 |
+
return $this->toRGB($hsl);
|
1150 |
+
|
1151 |
+
} elseif ($fname == 'rgb' || $fname == 'rgba') {
|
1152 |
+
$components = array();
|
1153 |
+
$i = 1;
|
1154 |
+
foreach ($rawComponents as $c) {
|
1155 |
+
$c = $this->reduce($c);
|
1156 |
+
if ($i < 4) {
|
1157 |
+
if ($c[0] == "number" && $c[2] == "%") {
|
1158 |
+
$components[] = 255 * ($c[1] / 100);
|
1159 |
+
} else {
|
1160 |
+
$components[] = floatval($c[1]);
|
1161 |
+
}
|
1162 |
+
} elseif ($i == 4) {
|
1163 |
+
if ($c[0] == "number" && $c[2] == "%") {
|
1164 |
+
$components[] = 1.0 * ($c[1] / 100);
|
1165 |
+
} else {
|
1166 |
+
$components[] = floatval($c[1]);
|
1167 |
+
}
|
1168 |
+
} else break;
|
1169 |
+
|
1170 |
+
$i++;
|
1171 |
+
}
|
1172 |
+
while (count($components) < 3) $components[] = 0;
|
1173 |
+
array_unshift($components, 'color');
|
1174 |
+
return $this->fixColor($components);
|
1175 |
+
}
|
1176 |
+
|
1177 |
+
return false;
|
1178 |
+
}
|
1179 |
+
|
1180 |
+
protected function reduce($value, $forExpression = false) {
|
1181 |
+
switch ($value[0]) {
|
1182 |
+
case "variable":
|
1183 |
+
$key = $value[1];
|
1184 |
+
if (is_array($key)) {
|
1185 |
+
$key = $this->reduce($key);
|
1186 |
+
$key = $this->vPrefix . $this->compileValue($this->lib_e($key));
|
1187 |
+
}
|
1188 |
+
|
1189 |
+
$seen =& $this->env->seenNames;
|
1190 |
+
|
1191 |
+
if (!empty($seen[$key])) {
|
1192 |
+
$this->throwError("infinite loop detected: $key");
|
1193 |
+
}
|
1194 |
+
|
1195 |
+
$seen[$key] = true;
|
1196 |
+
$out = $this->reduce($this->get($key, self::$defaultValue));
|
1197 |
+
$seen[$key] = false;
|
1198 |
+
return $out;
|
1199 |
+
case "list":
|
1200 |
+
foreach ($value[2] as &$item) {
|
1201 |
+
$item = $this->reduce($item, $forExpression);
|
1202 |
+
}
|
1203 |
+
return $value;
|
1204 |
+
case "expression":
|
1205 |
+
return $this->evaluate($value);
|
1206 |
+
case "string":
|
1207 |
+
foreach ($value[2] as &$part) {
|
1208 |
+
if (is_array($part)) {
|
1209 |
+
$strip = $part[0] == "variable";
|
1210 |
+
$part = $this->reduce($part);
|
1211 |
+
if ($strip) $part = $this->lib_e($part);
|
1212 |
+
}
|
1213 |
+
}
|
1214 |
+
return $value;
|
1215 |
+
case "escape":
|
1216 |
+
list(,$inner) = $value;
|
1217 |
+
return $this->lib_e($this->reduce($inner));
|
1218 |
+
case "function":
|
1219 |
+
$color = $this->funcToColor($value);
|
1220 |
+
if ($color) return $color;
|
1221 |
+
|
1222 |
+
list(, $name, $args) = $value;
|
1223 |
+
if ($name == "%") $name = "_sprintf";
|
1224 |
+
$f = isset($this->libFunctions[$name]) ?
|
1225 |
+
$this->libFunctions[$name] : array($this, 'lib_'.$name);
|
1226 |
+
|
1227 |
+
if (is_callable($f)) {
|
1228 |
+
if ($args[0] == 'list')
|
1229 |
+
$args = self::compressList($args[2], $args[1]);
|
1230 |
+
|
1231 |
+
$ret = call_user_func($f, $this->reduce($args, true), $this);
|
1232 |
+
|
1233 |
+
if (is_null($ret)) {
|
1234 |
+
return array("string", "", array(
|
1235 |
+
$name, "(", $args, ")"
|
1236 |
+
));
|
1237 |
+
}
|
1238 |
+
|
1239 |
+
// convert to a typed value if the result is a php primitive
|
1240 |
+
if (is_numeric($ret)) $ret = array('number', $ret, "");
|
1241 |
+
elseif (!is_array($ret)) $ret = array('keyword', $ret);
|
1242 |
+
|
1243 |
+
return $ret;
|
1244 |
+
}
|
1245 |
+
|
1246 |
+
// plain function, reduce args
|
1247 |
+
$value[2] = $this->reduce($value[2]);
|
1248 |
+
return $value;
|
1249 |
+
case "unary":
|
1250 |
+
list(, $op, $exp) = $value;
|
1251 |
+
$exp = $this->reduce($exp);
|
1252 |
+
|
1253 |
+
if ($exp[0] == "number") {
|
1254 |
+
switch ($op) {
|
1255 |
+
case "+":
|
1256 |
+
return $exp;
|
1257 |
+
case "-":
|
1258 |
+
$exp[1] *= -1;
|
1259 |
+
return $exp;
|
1260 |
+
}
|
1261 |
+
}
|
1262 |
+
return array("string", "", array($op, $exp));
|
1263 |
+
}
|
1264 |
+
|
1265 |
+
if ($forExpression) {
|
1266 |
+
switch ($value[0]) {
|
1267 |
+
case "keyword":
|
1268 |
+
if ($color = $this->coerceColor($value)) {
|
1269 |
+
return $color;
|
1270 |
+
}
|
1271 |
+
break;
|
1272 |
+
case "raw_color":
|
1273 |
+
return $this->coerceColor($value);
|
1274 |
+
}
|
1275 |
+
}
|
1276 |
+
|
1277 |
+
return $value;
|
1278 |
+
}
|
1279 |
+
|
1280 |
+
|
1281 |
+
// coerce a value for use in color operation
|
1282 |
+
protected function coerceColor($value) {
|
1283 |
+
switch($value[0]) {
|
1284 |
+
case 'color': return $value;
|
1285 |
+
case 'raw_color':
|
1286 |
+
$c = array("color", 0, 0, 0);
|
1287 |
+
$colorStr = substr($value[1], 1);
|
1288 |
+
$num = hexdec($colorStr);
|
1289 |
+
$width = strlen($colorStr) == 3 ? 16 : 256;
|
1290 |
+
|
1291 |
+
for ($i = 3; $i > 0; $i--) { // 3 2 1
|
1292 |
+
$t = $num % $width;
|
1293 |
+
$num /= $width;
|
1294 |
+
|
1295 |
+
$c[$i] = $t * (256/$width) + $t * floor(16/$width);
|
1296 |
+
}
|
1297 |
+
|
1298 |
+
return $c;
|
1299 |
+
case 'keyword':
|
1300 |
+
$name = $value[1];
|
1301 |
+
if (isset(self::$cssColors[$name])) {
|
1302 |
+
list($r, $g, $b) = explode(',', self::$cssColors[$name]);
|
1303 |
+
return array('color', $r, $g, $b);
|
1304 |
+
}
|
1305 |
+
return null;
|
1306 |
+
}
|
1307 |
+
}
|
1308 |
+
|
1309 |
+
// make something string like into a string
|
1310 |
+
protected function coerceString($value) {
|
1311 |
+
switch ($value[0]) {
|
1312 |
+
case "string":
|
1313 |
+
return $value;
|
1314 |
+
case "keyword":
|
1315 |
+
return array("string", "", array($value[1]));
|
1316 |
+
}
|
1317 |
+
return null;
|
1318 |
+
}
|
1319 |
+
|
1320 |
+
// turn list of length 1 into value type
|
1321 |
+
protected function flattenList($value) {
|
1322 |
+
if ($value[0] == "list" && count($value[2]) == 1) {
|
1323 |
+
return $this->flattenList($value[2][0]);
|
1324 |
+
}
|
1325 |
+
return $value;
|
1326 |
+
}
|
1327 |
+
|
1328 |
+
protected function toBool($a) {
|
1329 |
+
if ($a) return self::$TRUE;
|
1330 |
+
else return self::$FALSE;
|
1331 |
+
}
|
1332 |
+
|
1333 |
+
// evaluate an expression
|
1334 |
+
protected function evaluate($exp) {
|
1335 |
+
list(, $op, $left, $right, $whiteBefore, $whiteAfter) = $exp;
|
1336 |
+
|
1337 |
+
$left = $this->reduce($left, true);
|
1338 |
+
$right = $this->reduce($right, true);
|
1339 |
+
|
1340 |
+
if ($leftColor = $this->coerceColor($left)) {
|
1341 |
+
$left = $leftColor;
|
1342 |
+
}
|
1343 |
+
|
1344 |
+
if ($rightColor = $this->coerceColor($right)) {
|
1345 |
+
$right = $rightColor;
|
1346 |
+
}
|
1347 |
+
|
1348 |
+
$ltype = $left[0];
|
1349 |
+
$rtype = $right[0];
|
1350 |
+
|
1351 |
+
// operators that work on all types
|
1352 |
+
if ($op == "and") {
|
1353 |
+
return $this->toBool($left == self::$TRUE && $right == self::$TRUE);
|
1354 |
+
}
|
1355 |
+
|
1356 |
+
if ($op == "=") {
|
1357 |
+
return $this->toBool($this->eq($left, $right) );
|
1358 |
+
}
|
1359 |
+
|
1360 |
+
if ($op == "+" && !is_null($str = $this->stringConcatenate($left, $right))) {
|
1361 |
+
return $str;
|
1362 |
+
}
|
1363 |
+
|
1364 |
+
// type based operators
|
1365 |
+
$fname = "op_${ltype}_${rtype}";
|
1366 |
+
if (is_callable(array($this, $fname))) {
|
1367 |
+
$out = $this->$fname($op, $left, $right);
|
1368 |
+
if (!is_null($out)) return $out;
|
1369 |
+
}
|
1370 |
+
|
1371 |
+
// make the expression look it did before being parsed
|
1372 |
+
$paddedOp = $op;
|
1373 |
+
if ($whiteBefore) $paddedOp = " " . $paddedOp;
|
1374 |
+
if ($whiteAfter) $paddedOp .= " ";
|
1375 |
+
|
1376 |
+
return array("string", "", array($left, $paddedOp, $right));
|
1377 |
+
}
|
1378 |
+
|
1379 |
+
protected function stringConcatenate($left, $right) {
|
1380 |
+
if ($strLeft = $this->coerceString($left)) {
|
1381 |
+
if ($right[0] == "string") {
|
1382 |
+
$right[1] = "";
|
1383 |
+
}
|
1384 |
+
$strLeft[2][] = $right;
|
1385 |
+
return $strLeft;
|
1386 |
+
}
|
1387 |
+
|
1388 |
+
if ($strRight = $this->coerceString($right)) {
|
1389 |
+
array_unshift($strRight[2], $left);
|
1390 |
+
return $strRight;
|
1391 |
+
}
|
1392 |
+
}
|
1393 |
+
|
1394 |
+
|
1395 |
+
// make sure a color's components don't go out of bounds
|
1396 |
+
protected function fixColor($c) {
|
1397 |
+
foreach (range(1, 3) as $i) {
|
1398 |
+
if ($c[$i] < 0) $c[$i] = 0;
|
1399 |
+
if ($c[$i] > 255) $c[$i] = 255;
|
1400 |
+
}
|
1401 |
+
|
1402 |
+
return $c;
|
1403 |
+
}
|
1404 |
+
|
1405 |
+
protected function op_number_color($op, $lft, $rgt) {
|
1406 |
+
if ($op == '+' || $op == '*') {
|
1407 |
+
return $this->op_color_number($op, $rgt, $lft);
|
1408 |
+
}
|
1409 |
+
}
|
1410 |
+
|
1411 |
+
protected function op_color_number($op, $lft, $rgt) {
|
1412 |
+
if ($rgt[0] == '%') $rgt[1] /= 100;
|
1413 |
+
|
1414 |
+
return $this->op_color_color($op, $lft,
|
1415 |
+
array_fill(1, count($lft) - 1, $rgt[1]));
|
1416 |
+
}
|
1417 |
+
|
1418 |
+
protected function op_color_color($op, $left, $right) {
|
1419 |
+
$out = array('color');
|
1420 |
+
$max = count($left) > count($right) ? count($left) : count($right);
|
1421 |
+
foreach (range(1, $max - 1) as $i) {
|
1422 |
+
$lval = isset($left[$i]) ? $left[$i] : 0;
|
1423 |
+
$rval = isset($right[$i]) ? $right[$i] : 0;
|
1424 |
+
switch ($op) {
|
1425 |
+
case '+':
|
1426 |
+
$out[] = $lval + $rval;
|
1427 |
+
break;
|
1428 |
+
case '-':
|
1429 |
+
$out[] = $lval - $rval;
|
1430 |
+
break;
|
1431 |
+
case '*':
|
1432 |
+
$out[] = $lval * $rval;
|
1433 |
+
break;
|
1434 |
+
case '%':
|
1435 |
+
$out[] = $lval % $rval;
|
1436 |
+
break;
|
1437 |
+
case '/':
|
1438 |
+
if ($rval == 0) $this->throwError("evaluate error: can't divide by zero");
|
1439 |
+
$out[] = $lval / $rval;
|
1440 |
+
break;
|
1441 |
+
default:
|
1442 |
+
$this->throwError('evaluate error: color op number failed on op '.$op);
|
1443 |
+
}
|
1444 |
+
}
|
1445 |
+
return $this->fixColor($out);
|
1446 |
+
}
|
1447 |
+
|
1448 |
+
// operator on two numbers
|
1449 |
+
protected function op_number_number($op, $left, $right) {
|
1450 |
+
$unit = empty($left[2]) ? $right[2] : $left[2];
|
1451 |
+
|
1452 |
+
$value = 0;
|
1453 |
+
switch ($op) {
|
1454 |
+
case '+':
|
1455 |
+
$value = $left[1] + $right[1];
|
1456 |
+
break;
|
1457 |
+
case '*':
|
1458 |
+
$value = $left[1] * $right[1];
|
1459 |
+
break;
|
1460 |
+
case '-':
|
1461 |
+
$value = $left[1] - $right[1];
|
1462 |
+
break;
|
1463 |
+
case '%':
|
1464 |
+
$value = $left[1] % $right[1];
|
1465 |
+
break;
|
1466 |
+
case '/':
|
1467 |
+
if ($right[1] == 0) $this->throwError('parse error: divide by zero');
|
1468 |
+
$value = $left[1] / $right[1];
|
1469 |
+
break;
|
1470 |
+
case '<':
|
1471 |
+
return $this->toBool($left[1] < $right[1]);
|
1472 |
+
case '>':
|
1473 |
+
return $this->toBool($left[1] > $right[1]);
|
1474 |
+
case '>=':
|
1475 |
+
return $this->toBool($left[1] >= $right[1]);
|
1476 |
+
case '=<':
|
1477 |
+
return $this->toBool($left[1] <= $right[1]);
|
1478 |
+
default:
|
1479 |
+
$this->throwError('parse error: unknown number operator: '.$op);
|
1480 |
+
}
|
1481 |
+
|
1482 |
+
return array("number", $value, $unit);
|
1483 |
+
}
|
1484 |
+
|
1485 |
+
|
1486 |
+
/* environment functions */
|
1487 |
+
|
1488 |
+
protected function makeOutputBlock($type, $selectors = null) {
|
1489 |
+
$b = new stdclass;
|
1490 |
+
$b->lines = array();
|
1491 |
+
$b->children = array();
|
1492 |
+
$b->selectors = $selectors;
|
1493 |
+
$b->type = $type;
|
1494 |
+
$b->parent = $this->scope;
|
1495 |
+
return $b;
|
1496 |
+
}
|
1497 |
+
|
1498 |
+
// the state of execution
|
1499 |
+
protected function pushEnv($block = null) {
|
1500 |
+
$e = new stdclass;
|
1501 |
+
$e->parent = $this->env;
|
1502 |
+
$e->store = array();
|
1503 |
+
$e->block = $block;
|
1504 |
+
|
1505 |
+
$this->env = $e;
|
1506 |
+
return $e;
|
1507 |
+
}
|
1508 |
+
|
1509 |
+
// pop something off the stack
|
1510 |
+
protected function popEnv() {
|
1511 |
+
$old = $this->env;
|
1512 |
+
$this->env = $this->env->parent;
|
1513 |
+
return $old;
|
1514 |
+
}
|
1515 |
+
|
1516 |
+
// set something in the current env
|
1517 |
+
protected function set($name, $value) {
|
1518 |
+
$this->env->store[$name] = $value;
|
1519 |
+
}
|
1520 |
+
|
1521 |
+
|
1522 |
+
// get the highest occurrence entry for a name
|
1523 |
+
protected function get($name, $default=null) {
|
1524 |
+
$current = $this->env;
|
1525 |
+
|
1526 |
+
$isArguments = $name == $this->vPrefix . 'arguments';
|
1527 |
+
while ($current) {
|
1528 |
+
if ($isArguments && isset($current->arguments)) {
|
1529 |
+
return array('list', ' ', $current->arguments);
|
1530 |
+
}
|
1531 |
+
|
1532 |
+
if (isset($current->store[$name]))
|
1533 |
+
return $current->store[$name];
|
1534 |
+
else {
|
1535 |
+
$current = isset($current->storeParent) ?
|
1536 |
+
$current->storeParent : $current->parent;
|
1537 |
+
}
|
1538 |
+
}
|
1539 |
+
|
1540 |
+
return $default;
|
1541 |
+
}
|
1542 |
+
|
1543 |
+
// inject array of unparsed strings into environment as variables
|
1544 |
+
protected function injectVariables($args) {
|
1545 |
+
$this->pushEnv();
|
1546 |
+
$parser = new seed_csp4_lessc_parser($this, __METHOD__);
|
1547 |
+
foreach ($args as $name => $strValue) {
|
1548 |
+
if ($name{0} != '@') $name = '@'.$name;
|
1549 |
+
$parser->count = 0;
|
1550 |
+
$parser->buffer = (string)$strValue;
|
1551 |
+
if (!$parser->propertyValue($value)) {
|
1552 |
+
throw new Exception("failed to parse passed in variable $name: $strValue");
|
1553 |
+
}
|
1554 |
+
|
1555 |
+
$this->set($name, $value);
|
1556 |
+
}
|
1557 |
+
}
|
1558 |
+
|
1559 |
+
/**
|
1560 |
+
* Initialize any static state, can initialize parser for a file
|
1561 |
+
* $opts isn't used yet
|
1562 |
+
*/
|
1563 |
+
public function __construct($fname = null) {
|
1564 |
+
if ($fname !== null) {
|
1565 |
+
// used for deprecated parse method
|
1566 |
+
$this->_parseFile = $fname;
|
1567 |
+
}
|
1568 |
+
}
|
1569 |
+
|
1570 |
+
public function compile($string, $name = null) {
|
1571 |
+
$locale = setlocale(LC_NUMERIC, 0);
|
1572 |
+
setlocale(LC_NUMERIC, "C");
|
1573 |
+
|
1574 |
+
$this->parser = $this->makeParser($name);
|
1575 |
+
$root = $this->parser->parse($string);
|
1576 |
+
|
1577 |
+
$this->env = null;
|
1578 |
+
$this->scope = null;
|
1579 |
+
|
1580 |
+
$this->formatter = $this->newFormatter();
|
1581 |
+
|
1582 |
+
if (!empty($this->registeredVars)) {
|
1583 |
+
$this->injectVariables($this->registeredVars);
|
1584 |
+
}
|
1585 |
+
|
1586 |
+
$this->sourceParser = $this->parser; // used for error messages
|
1587 |
+
$this->compileBlock($root);
|
1588 |
+
|
1589 |
+
ob_start();
|
1590 |
+
$this->formatter->block($this->scope);
|
1591 |
+
$out = ob_get_clean();
|
1592 |
+
setlocale(LC_NUMERIC, $locale);
|
1593 |
+
return $out;
|
1594 |
+
}
|
1595 |
+
|
1596 |
+
public function compileFile($fname, $outFname = null) {
|
1597 |
+
if (!is_readable($fname)) {
|
1598 |
+
throw new Exception('load error: failed to find '.$fname);
|
1599 |
+
}
|
1600 |
+
|
1601 |
+
$pi = pathinfo($fname);
|
1602 |
+
|
1603 |
+
$oldImport = $this->importDir;
|
1604 |
+
|
1605 |
+
$this->importDir = (array)$this->importDir;
|
1606 |
+
$this->importDir[] = $pi['dirname'].'/';
|
1607 |
+
|
1608 |
+
$this->allParsedFiles = array();
|
1609 |
+
$this->addParsedFile($fname);
|
1610 |
+
|
1611 |
+
$out = $this->compile(file_get_contents($fname), $fname);
|
1612 |
+
|
1613 |
+
$this->importDir = $oldImport;
|
1614 |
+
|
1615 |
+
if ($outFname !== null) {
|
1616 |
+
return file_put_contents($outFname, $out);
|
1617 |
+
}
|
1618 |
+
|
1619 |
+
return $out;
|
1620 |
+
}
|
1621 |
+
|
1622 |
+
// compile only if changed input has changed or output doesn't exist
|
1623 |
+
public function checkedCompile($in, $out) {
|
1624 |
+
if (!is_file($out) || filemtime($in) > filemtime($out)) {
|
1625 |
+
$this->compileFile($in, $out);
|
1626 |
+
return true;
|
1627 |
+
}
|
1628 |
+
return false;
|
1629 |
+
}
|
1630 |
+
|
1631 |
+
/**
|
1632 |
+
* Execute lessphp on a .less file or a lessphp cache structure
|
1633 |
+
*
|
1634 |
+
* The lessphp cache structure contains information about a specific
|
1635 |
+
* less file having been parsed. It can be used as a hint for future
|
1636 |
+
* calls to determine whether or not a rebuild is required.
|
1637 |
+
*
|
1638 |
+
* The cache structure contains two important keys that may be used
|
1639 |
+
* externally:
|
1640 |
+
*
|
1641 |
+
* compiled: The final compiled CSS
|
1642 |
+
* updated: The time (in seconds) the CSS was last compiled
|
1643 |
+
*
|
1644 |
+
* The cache structure is a plain-ol' PHP associative array and can
|
1645 |
+
* be serialized and unserialized without a hitch.
|
1646 |
+
*
|
1647 |
+
* @param mixed $in Input
|
1648 |
+
* @param bool $force Force rebuild?
|
1649 |
+
* @return array lessphp cache structure
|
1650 |
+
*/
|
1651 |
+
public function cachedCompile($in, $force = false) {
|
1652 |
+
// assume no root
|
1653 |
+
$root = null;
|
1654 |
+
|
1655 |
+
if (is_string($in)) {
|
1656 |
+
$root = $in;
|
1657 |
+
} elseif (is_array($in) and isset($in['root'])) {
|
1658 |
+
if ($force or ! isset($in['files'])) {
|
1659 |
+
// If we are forcing a recompile or if for some reason the
|
1660 |
+
// structure does not contain any file information we should
|
1661 |
+
// specify the root to trigger a rebuild.
|
1662 |
+
$root = $in['root'];
|
1663 |
+
} elseif (isset($in['files']) and is_array($in['files'])) {
|
1664 |
+
foreach ($in['files'] as $fname => $ftime ) {
|
1665 |
+
if (!file_exists($fname) or filemtime($fname) > $ftime) {
|
1666 |
+
// One of the files we knew about previously has changed
|
1667 |
+
// so we should look at our incoming root again.
|
1668 |
+
$root = $in['root'];
|
1669 |
+
break;
|
1670 |
+
}
|
1671 |
+
}
|
1672 |
+
}
|
1673 |
+
} else {
|
1674 |
+
// TODO: Throw an exception? We got neither a string nor something
|
1675 |
+
// that looks like a compatible lessphp cache structure.
|
1676 |
+
return null;
|
1677 |
+
}
|
1678 |
+
|
1679 |
+
if ($root !== null) {
|
1680 |
+
// If we have a root value which means we should rebuild.
|
1681 |
+
$out = array();
|
1682 |
+
$out['root'] = $root;
|
1683 |
+
$out['compiled'] = $this->compileFile($root);
|
1684 |
+
$out['files'] = $this->allParsedFiles();
|
1685 |
+
$out['updated'] = time();
|
1686 |
+
return $out;
|
1687 |
+
} else {
|
1688 |
+
// No changes, pass back the structure
|
1689 |
+
// we were given initially.
|
1690 |
+
return $in;
|
1691 |
+
}
|
1692 |
+
|
1693 |
+
}
|
1694 |
+
|
1695 |
+
// parse and compile buffer
|
1696 |
+
// This is deprecated
|
1697 |
+
public function parse($str = null, $initialVariables = null) {
|
1698 |
+
if (is_array($str)) {
|
1699 |
+
$initialVariables = $str;
|
1700 |
+
$str = null;
|
1701 |
+
}
|
1702 |
+
|
1703 |
+
$oldVars = $this->registeredVars;
|
1704 |
+
if ($initialVariables !== null) {
|
1705 |
+
$this->setVariables($initialVariables);
|
1706 |
+
}
|
1707 |
+
|
1708 |
+
if ($str == null) {
|
1709 |
+
if (empty($this->_parseFile)) {
|
1710 |
+
throw new exception("nothing to parse");
|
1711 |
+
}
|
1712 |
+
|
1713 |
+
$out = $this->compileFile($this->_parseFile);
|
1714 |
+
} else {
|
1715 |
+
$out = $this->compile($str);
|
1716 |
+
}
|
1717 |
+
|
1718 |
+
$this->registeredVars = $oldVars;
|
1719 |
+
return $out;
|
1720 |
+
}
|
1721 |
+
|
1722 |
+
protected function makeParser($name) {
|
1723 |
+
$parser = new seed_csp4_lessc_parser($this, $name);
|
1724 |
+
$parser->writeComments = $this->preserveComments;
|
1725 |
+
|
1726 |
+
return $parser;
|
1727 |
+
}
|
1728 |
+
|
1729 |
+
public function setFormatter($name) {
|
1730 |
+
$this->formatterName = $name;
|
1731 |
+
}
|
1732 |
+
|
1733 |
+
protected function newFormatter() {
|
1734 |
+
$className = "seed_csp4_lessc_formatter_lessjs";
|
1735 |
+
if (!empty($this->formatterName)) {
|
1736 |
+
if (!is_string($this->formatterName))
|
1737 |
+
return $this->formatterName;
|
1738 |
+
$className = "seed_csp4_lessc_formatter_$this->formatterName";
|
1739 |
+
}
|
1740 |
+
|
1741 |
+
return new $className;
|
1742 |
+
}
|
1743 |
+
|
1744 |
+
public function setPreserveComments($preserve) {
|
1745 |
+
$this->preserveComments = $preserve;
|
1746 |
+
}
|
1747 |
+
|
1748 |
+
public function registerFunction($name, $func) {
|
1749 |
+
$this->libFunctions[$name] = $func;
|
1750 |
+
}
|
1751 |
+
|
1752 |
+
public function unregisterFunction($name) {
|
1753 |
+
unset($this->libFunctions[$name]);
|
1754 |
+
}
|
1755 |
+
|
1756 |
+
public function setVariables($variables) {
|
1757 |
+
$this->registeredVars = array_merge($this->registeredVars, $variables);
|
1758 |
+
}
|
1759 |
+
|
1760 |
+
public function unsetVariable($name) {
|
1761 |
+
unset($this->registeredVars[$name]);
|
1762 |
+
}
|
1763 |
+
|
1764 |
+
public function setImportDir($dirs) {
|
1765 |
+
$this->importDir = (array)$dirs;
|
1766 |
+
}
|
1767 |
+
|
1768 |
+
public function addImportDir($dir) {
|
1769 |
+
$this->importDir = (array)$this->importDir;
|
1770 |
+
$this->importDir[] = $dir;
|
1771 |
+
}
|
1772 |
+
|
1773 |
+
public function allParsedFiles() {
|
1774 |
+
return $this->allParsedFiles;
|
1775 |
+
}
|
1776 |
+
|
1777 |
+
protected function addParsedFile($file) {
|
1778 |
+
$this->allParsedFiles[realpath($file)] = filemtime($file);
|
1779 |
+
}
|
1780 |
+
|
1781 |
+
/**
|
1782 |
+
* Uses the current value of $this->count to show line and line number
|
1783 |
+
*/
|
1784 |
+
protected function throwError($msg = null) {
|
1785 |
+
if ($this->sourceLoc >= 0) {
|
1786 |
+
$this->sourceParser->throwError($msg, $this->sourceLoc);
|
1787 |
+
}
|
1788 |
+
throw new exception($msg);
|
1789 |
+
}
|
1790 |
+
|
1791 |
+
// compile file $in to file $out if $in is newer than $out
|
1792 |
+
// returns true when it compiles, false otherwise
|
1793 |
+
public static function ccompile($in, $out, $less = null) {
|
1794 |
+
if ($less === null) {
|
1795 |
+
$less = new self;
|
1796 |
+
}
|
1797 |
+
return $less->checkedCompile($in, $out);
|
1798 |
+
}
|
1799 |
+
|
1800 |
+
public static function cexecute($in, $force = false, $less = null) {
|
1801 |
+
if ($less === null) {
|
1802 |
+
$less = new self;
|
1803 |
+
}
|
1804 |
+
return $less->cachedCompile($in, $force);
|
1805 |
+
}
|
1806 |
+
|
1807 |
+
static protected $cssColors = array(
|
1808 |
+
'aliceblue' => '240,248,255',
|
1809 |
+
'antiquewhite' => '250,235,215',
|
1810 |
+
'aqua' => '0,255,255',
|
1811 |
+
'aquamarine' => '127,255,212',
|
1812 |
+
'azure' => '240,255,255',
|
1813 |
+
'beige' => '245,245,220',
|
1814 |
+
'bisque' => '255,228,196',
|
1815 |
+
'black' => '0,0,0',
|
1816 |
+
'blanchedalmond' => '255,235,205',
|
1817 |
+
'blue' => '0,0,255',
|
1818 |
+
'blueviolet' => '138,43,226',
|
1819 |
+
'brown' => '165,42,42',
|
1820 |
+
'burlywood' => '222,184,135',
|
1821 |
+
'cadetblue' => '95,158,160',
|
1822 |
+
'chartreuse' => '127,255,0',
|
1823 |
+
'chocolate' => '210,105,30',
|
1824 |
+
'coral' => '255,127,80',
|
1825 |
+
'cornflowerblue' => '100,149,237',
|
1826 |
+
'cornsilk' => '255,248,220',
|
1827 |
+
'crimson' => '220,20,60',
|
1828 |
+
'cyan' => '0,255,255',
|
1829 |
+
'darkblue' => '0,0,139',
|
1830 |
+
'darkcyan' => '0,139,139',
|
1831 |
+
'darkgoldenrod' => '184,134,11',
|
1832 |
+
'darkgray' => '169,169,169',
|
1833 |
+
'darkgreen' => '0,100,0',
|
1834 |
+
'darkgrey' => '169,169,169',
|
1835 |
+
'darkkhaki' => '189,183,107',
|
1836 |
+
'darkmagenta' => '139,0,139',
|
1837 |
+
'darkolivegreen' => '85,107,47',
|
1838 |
+
'darkorange' => '255,140,0',
|
1839 |
+
'darkorchid' => '153,50,204',
|
1840 |
+
'darkred' => '139,0,0',
|
1841 |
+
'darksalmon' => '233,150,122',
|
1842 |
+
'darkseagreen' => '143,188,143',
|
1843 |
+
'darkslateblue' => '72,61,139',
|
1844 |
+
'darkslategray' => '47,79,79',
|
1845 |
+
'darkslategrey' => '47,79,79',
|
1846 |
+
'darkturquoise' => '0,206,209',
|
1847 |
+
'darkviolet' => '148,0,211',
|
1848 |
+
'deeppink' => '255,20,147',
|
1849 |
+
'deepskyblue' => '0,191,255',
|
1850 |
+
'dimgray' => '105,105,105',
|
1851 |
+
'dimgrey' => '105,105,105',
|
1852 |
+
'dodgerblue' => '30,144,255',
|
1853 |
+
'firebrick' => '178,34,34',
|
1854 |
+
'floralwhite' => '255,250,240',
|
1855 |
+
'forestgreen' => '34,139,34',
|
1856 |
+
'fuchsia' => '255,0,255',
|
1857 |
+
'gainsboro' => '220,220,220',
|
1858 |
+
'ghostwhite' => '248,248,255',
|
1859 |
+
'gold' => '255,215,0',
|
1860 |
+
'goldenrod' => '218,165,32',
|
1861 |
+
'gray' => '128,128,128',
|
1862 |
+
'green' => '0,128,0',
|
1863 |
+
'greenyellow' => '173,255,47',
|
1864 |
+
'grey' => '128,128,128',
|
1865 |
+
'honeydew' => '240,255,240',
|
1866 |
+
'hotpink' => '255,105,180',
|
1867 |
+
'indianred' => '205,92,92',
|
1868 |
+
'indigo' => '75,0,130',
|
1869 |
+
'ivory' => '255,255,240',
|
1870 |
+
'khaki' => '240,230,140',
|
1871 |
+
'lavender' => '230,230,250',
|
1872 |
+
'lavenderblush' => '255,240,245',
|
1873 |
+
'lawngreen' => '124,252,0',
|
1874 |
+
'lemonchiffon' => '255,250,205',
|
1875 |
+
'lightblue' => '173,216,230',
|
1876 |
+
'lightcoral' => '240,128,128',
|
1877 |
+
'lightcyan' => '224,255,255',
|
1878 |
+
'lightgoldenrodyellow' => '250,250,210',
|
1879 |
+
'lightgray' => '211,211,211',
|
1880 |
+
'lightgreen' => '144,238,144',
|
1881 |
+
'lightgrey' => '211,211,211',
|
1882 |
+
'lightpink' => '255,182,193',
|
1883 |
+
'lightsalmon' => '255,160,122',
|
1884 |
+
'lightseagreen' => '32,178,170',
|
1885 |
+
'lightskyblue' => '135,206,250',
|
1886 |
+
'lightslategray' => '119,136,153',
|
1887 |
+
'lightslategrey' => '119,136,153',
|
1888 |
+
'lightsteelblue' => '176,196,222',
|
1889 |
+
'lightyellow' => '255,255,224',
|
1890 |
+
'lime' => '0,255,0',
|
1891 |
+
'limegreen' => '50,205,50',
|
1892 |
+
'linen' => '250,240,230',
|
1893 |
+
'magenta' => '255,0,255',
|
1894 |
+
'maroon' => '128,0,0',
|
1895 |
+
'mediumaquamarine' => '102,205,170',
|
1896 |
+
'mediumblue' => '0,0,205',
|
1897 |
+
'mediumorchid' => '186,85,211',
|
1898 |
+
'mediumpurple' => '147,112,219',
|
1899 |
+
'mediumseagreen' => '60,179,113',
|
1900 |
+
'mediumslateblue' => '123,104,238',
|
1901 |
+
'mediumspringgreen' => '0,250,154',
|
1902 |
+
'mediumturquoise' => '72,209,204',
|
1903 |
+
'mediumvioletred' => '199,21,133',
|
1904 |
+
'midnightblue' => '25,25,112',
|
1905 |
+
'mintcream' => '245,255,250',
|
1906 |
+
'mistyrose' => '255,228,225',
|
1907 |
+
'moccasin' => '255,228,181',
|
1908 |
+
'navajowhite' => '255,222,173',
|
1909 |
+
'navy' => '0,0,128',
|
1910 |
+
'oldlace' => '253,245,230',
|
1911 |
+
'olive' => '128,128,0',
|
1912 |
+
'olivedrab' => '107,142,35',
|
1913 |
+
'orange' => '255,165,0',
|
1914 |
+
'orangered' => '255,69,0',
|
1915 |
+
'orchid' => '218,112,214',
|
1916 |
+
'palegoldenrod' => '238,232,170',
|
1917 |
+
'palegreen' => '152,251,152',
|
1918 |
+
'paleturquoise' => '175,238,238',
|
1919 |
+
'palevioletred' => '219,112,147',
|
1920 |
+
'papayawhip' => '255,239,213',
|
1921 |
+
'peachpuff' => '255,218,185',
|
1922 |
+
'peru' => '205,133,63',
|
1923 |
+
'pink' => '255,192,203',
|
1924 |
+
'plum' => '221,160,221',
|
1925 |
+
'powderblue' => '176,224,230',
|
1926 |
+
'purple' => '128,0,128',
|
1927 |
+
'red' => '255,0,0',
|
1928 |
+
'rosybrown' => '188,143,143',
|
1929 |
+
'royalblue' => '65,105,225',
|
1930 |
+
'saddlebrown' => '139,69,19',
|
1931 |
+
'salmon' => '250,128,114',
|
1932 |
+
'sandybrown' => '244,164,96',
|
1933 |
+
'seagreen' => '46,139,87',
|
1934 |
+
'seashell' => '255,245,238',
|
1935 |
+
'sienna' => '160,82,45',
|
1936 |
+
'silver' => '192,192,192',
|
1937 |
+
'skyblue' => '135,206,235',
|
1938 |
+
'slateblue' => '106,90,205',
|
1939 |
+
'slategray' => '112,128,144',
|
1940 |
+
'slategrey' => '112,128,144',
|
1941 |
+
'snow' => '255,250,250',
|
1942 |
+
'springgreen' => '0,255,127',
|
1943 |
+
'steelblue' => '70,130,180',
|
1944 |
+
'tan' => '210,180,140',
|
1945 |
+
'teal' => '0,128,128',
|
1946 |
+
'thistle' => '216,191,216',
|
1947 |
+
'tomato' => '255,99,71',
|
1948 |
+
'turquoise' => '64,224,208',
|
1949 |
+
'violet' => '238,130,238',
|
1950 |
+
'wheat' => '245,222,179',
|
1951 |
+
'white' => '255,255,255',
|
1952 |
+
'whitesmoke' => '245,245,245',
|
1953 |
+
'yellow' => '255,255,0',
|
1954 |
+
'yellowgreen' => '154,205,50'
|
1955 |
+
);
|
1956 |
+
}
|
1957 |
+
|
1958 |
+
// responsible for taking a string of LESS code and converting it into a
|
1959 |
+
// syntax tree
|
1960 |
+
class seed_csp4_lessc_parser {
|
1961 |
+
static protected $nextBlockId = 0; // used to uniquely identify blocks
|
1962 |
+
|
1963 |
+
static protected $precedence = array(
|
1964 |
+
'=<' => 0,
|
1965 |
+
'>=' => 0,
|
1966 |
+
'=' => 0,
|
1967 |
+
'<' => 0,
|
1968 |
+
'>' => 0,
|
1969 |
+
|
1970 |
+
'+' => 1,
|
1971 |
+
'-' => 1,
|
1972 |
+
'*' => 2,
|
1973 |
+
'/' => 2,
|
1974 |
+
'%' => 2,
|
1975 |
+
);
|
1976 |
+
|
1977 |
+
static protected $whitePattern;
|
1978 |
+
static protected $commentMulti;
|
1979 |
+
|
1980 |
+
static protected $commentSingle = "//";
|
1981 |
+
static protected $commentMultiLeft = "/*";
|
1982 |
+
static protected $commentMultiRight = "*/";
|
1983 |
+
|
1984 |
+
// regex string to match any of the operators
|
1985 |
+
static protected $operatorString;
|
1986 |
+
|
1987 |
+
// these properties will supress division unless it's inside parenthases
|
1988 |
+
static protected $supressDivisionProps =
|
1989 |
+
array('/border-radius$/i', '/^font$/i');
|
1990 |
+
|
1991 |
+
protected $blockDirectives = array("font-face", "keyframes", "page", "-moz-document");
|
1992 |
+
protected $lineDirectives = array("charset");
|
1993 |
+
|
1994 |
+
/**
|
1995 |
+
* if we are in parens we can be more liberal with whitespace around
|
1996 |
+
* operators because it must evaluate to a single value and thus is less
|
1997 |
+
* ambiguous.
|
1998 |
+
*
|
1999 |
+
* Consider:
|
2000 |
+
* property1: 10 -5; // is two numbers, 10 and -5
|
2001 |
+
* property2: (10 -5); // should evaluate to 5
|
2002 |
+
*/
|
2003 |
+
protected $inParens = false;
|
2004 |
+
|
2005 |
+
// caches preg escaped literals
|
2006 |
+
static protected $literalCache = array();
|
2007 |
+
|
2008 |
+
public function __construct($seed_csp4_lessc, $sourceName = null) {
|
2009 |
+
$this->eatWhiteDefault = true;
|
2010 |
+
// reference to less needed for vPrefix, mPrefix, and parentSelector
|
2011 |
+
$this->seed_csp4_lessc = $seed_csp4_lessc;
|
2012 |
+
|
2013 |
+
$this->sourceName = $sourceName; // name used for error messages
|
2014 |
+
|
2015 |
+
$this->writeComments = false;
|
2016 |
+
|
2017 |
+
if (!self::$operatorString) {
|
2018 |
+
self::$operatorString =
|
2019 |
+
'('.implode('|', array_map(array('seed_csp4_lessc', 'preg_quote'),
|
2020 |
+
array_keys(self::$precedence))).')';
|
2021 |
+
|
2022 |
+
$commentSingle = seed_csp4_lessc::preg_quote(self::$commentSingle);
|
2023 |
+
$commentMultiLeft = seed_csp4_lessc::preg_quote(self::$commentMultiLeft);
|
2024 |
+
$commentMultiRight = seed_csp4_lessc::preg_quote(self::$commentMultiRight);
|
2025 |
+
|
2026 |
+
self::$commentMulti = $commentMultiLeft.'.*?'.$commentMultiRight;
|
2027 |
+
self::$whitePattern = '/'.$commentSingle.'[^\n]*\s*|('.self::$commentMulti.')\s*|\s+/Ais';
|
2028 |
+
}
|
2029 |
+
}
|
2030 |
+
|
2031 |
+
public function parse($buffer) {
|
2032 |
+
$this->count = 0;
|
2033 |
+
$this->line = 1;
|
2034 |
+
|
2035 |
+
$this->env = null; // block stack
|
2036 |
+
$this->buffer = $this->writeComments ? $buffer : $this->removeComments($buffer);
|
2037 |
+
$this->pushSpecialBlock("root");
|
2038 |
+
$this->eatWhiteDefault = true;
|
2039 |
+
$this->seenComments = array();
|
2040 |
+
|
2041 |
+
// trim whitespace on head
|
2042 |
+
// if (preg_match('/^\s+/', $this->buffer, $m)) {
|
2043 |
+
// $this->line += substr_count($m[0], "\n");
|
2044 |
+
// $this->buffer = ltrim($this->buffer);
|
2045 |
+
// }
|
2046 |
+
$this->whitespace();
|
2047 |
+
|
2048 |
+
// parse the entire file
|
2049 |
+
$lastCount = $this->count;
|
2050 |
+
while (false !== $this->parseChunk());
|
2051 |
+
|
2052 |
+
if ($this->count != strlen($this->buffer))
|
2053 |
+
$this->throwError();
|
2054 |
+
|
2055 |
+
// TODO report where the block was opened
|
2056 |
+
if (!is_null($this->env->parent))
|
2057 |
+
throw new exception('parse error: unclosed block');
|
2058 |
+
|
2059 |
+
return $this->env;
|
2060 |
+
}
|
2061 |
+
|
2062 |
+
/**
|
2063 |
+
* Parse a single chunk off the head of the buffer and append it to the
|
2064 |
+
* current parse environment.
|
2065 |
+
* Returns false when the buffer is empty, or when there is an error.
|
2066 |
+
*
|
2067 |
+
* This function is called repeatedly until the entire document is
|
2068 |
+
* parsed.
|
2069 |
+
*
|
2070 |
+
* This parser is most similar to a recursive descent parser. Single
|
2071 |
+
* functions represent discrete grammatical rules for the language, and
|
2072 |
+
* they are able to capture the text that represents those rules.
|
2073 |
+
*
|
2074 |
+
* Consider the function seed_csp4_lessc::keyword(). (all parse functions are
|
2075 |
+
* structured the same)
|
2076 |
+
*
|
2077 |
+
* The function takes a single reference argument. When calling the
|
2078 |
+
* function it will attempt to match a keyword on the head of the buffer.
|
2079 |
+
* If it is successful, it will place the keyword in the referenced
|
2080 |
+
* argument, advance the position in the buffer, and return true. If it
|
2081 |
+
* fails then it won't advance the buffer and it will return false.
|
2082 |
+
*
|
2083 |
+
* All of these parse functions are powered by seed_csp4_lessc::match(), which behaves
|
2084 |
+
* the same way, but takes a literal regular expression. Sometimes it is
|
2085 |
+
* more convenient to use match instead of creating a new function.
|
2086 |
+
*
|
2087 |
+
* Because of the format of the functions, to parse an entire string of
|
2088 |
+
* grammatical rules, you can chain them together using &&.
|
2089 |
+
*
|
2090 |
+
* But, if some of the rules in the chain succeed before one fails, then
|
2091 |
+
* the buffer position will be left at an invalid state. In order to
|
2092 |
+
* avoid this, seed_csp4_lessc::seek() is used to remember and set buffer positions.
|
2093 |
+
*
|
2094 |
+
* Before parsing a chain, use $s = $this->seek() to remember the current
|
2095 |
+
* position into $s. Then if a chain fails, use $this->seek($s) to
|
2096 |
+
* go back where we started.
|
2097 |
+
*/
|
2098 |
+
protected function parseChunk() {
|
2099 |
+
if (empty($this->buffer)) return false;
|
2100 |
+
$s = $this->seek();
|
2101 |
+
|
2102 |
+
// setting a property
|
2103 |
+
if ($this->keyword($key) && $this->assign() &&
|
2104 |
+
$this->propertyValue($value, $key) && $this->end())
|
2105 |
+
{
|
2106 |
+
$this->append(array('assign', $key, $value), $s);
|
2107 |
+
return true;
|
2108 |
+
} else {
|
2109 |
+
$this->seek($s);
|
2110 |
+
}
|
2111 |
+
|
2112 |
+
|
2113 |
+
// look for special css blocks
|
2114 |
+
if ($this->literal('@', false)) {
|
2115 |
+
$this->count--;
|
2116 |
+
|
2117 |
+
// media
|
2118 |
+
if ($this->literal('@media')) {
|
2119 |
+
if (($this->mediaQueryList($mediaQueries) || true)
|
2120 |
+
&& $this->literal('{'))
|
2121 |
+
{
|
2122 |
+
$media = $this->pushSpecialBlock("media");
|
2123 |
+
$media->queries = is_null($mediaQueries) ? array() : $mediaQueries;
|
2124 |
+
return true;
|
2125 |
+
} else {
|
2126 |
+
$this->seek($s);
|
2127 |
+
return false;
|
2128 |
+
}
|
2129 |
+
}
|
2130 |
+
|
2131 |
+
if ($this->literal("@", false) && $this->keyword($dirName)) {
|
2132 |
+
if ($this->isDirective($dirName, $this->blockDirectives)) {
|
2133 |
+
if (($this->openString("{", $dirValue, null, array(";")) || true) &&
|
2134 |
+
$this->literal("{"))
|
2135 |
+
{
|
2136 |
+
$dir = $this->pushSpecialBlock("directive");
|
2137 |
+
$dir->name = $dirName;
|
2138 |
+
if (isset($dirValue)) $dir->value = $dirValue;
|
2139 |
+
return true;
|
2140 |
+
}
|
2141 |
+
} elseif ($this->isDirective($dirName, $this->lineDirectives)) {
|
2142 |
+
if ($this->propertyValue($dirValue) && $this->end()) {
|
2143 |
+
$this->append(array("directive", $dirName, $dirValue));
|
2144 |
+
return true;
|
2145 |
+
}
|
2146 |
+
}
|
2147 |
+
}
|
2148 |
+
|
2149 |
+
$this->seek($s);
|
2150 |
+
}
|
2151 |
+
|
2152 |
+
// setting a variable
|
2153 |
+
if ($this->variable($var) && $this->assign() &&
|
2154 |
+
$this->propertyValue($value) && $this->end())
|
2155 |
+
{
|
2156 |
+
$this->append(array('assign', $var, $value), $s);
|
2157 |
+
return true;
|
2158 |
+
} else {
|
2159 |
+
$this->seek($s);
|
2160 |
+
}
|
2161 |
+
|
2162 |
+
if ($this->import($importValue)) {
|
2163 |
+
$this->append($importValue, $s);
|
2164 |
+
return true;
|
2165 |
+
}
|
2166 |
+
|
2167 |
+
// opening parametric mixin
|
2168 |
+
if ($this->tag($tag, true) && $this->argumentDef($args, $isVararg) &&
|
2169 |
+
($this->guards($guards) || true) &&
|
2170 |
+
$this->literal('{'))
|
2171 |
+
{
|
2172 |
+
$block = $this->pushBlock($this->fixTags(array($tag)));
|
2173 |
+
$block->args = $args;
|
2174 |
+
$block->isVararg = $isVararg;
|
2175 |
+
if (!empty($guards)) $block->guards = $guards;
|
2176 |
+
return true;
|
2177 |
+
} else {
|
2178 |
+
$this->seek($s);
|
2179 |
+
}
|
2180 |
+
|
2181 |
+
// opening a simple block
|
2182 |
+
if ($this->tags($tags) && $this->literal('{')) {
|
2183 |
+
$tags = $this->fixTags($tags);
|
2184 |
+
$this->pushBlock($tags);
|
2185 |
+
return true;
|
2186 |
+
} else {
|
2187 |
+
$this->seek($s);
|
2188 |
+
}
|
2189 |
+
|
2190 |
+
// closing a block
|
2191 |
+
if ($this->literal('}', false)) {
|
2192 |
+
try {
|
2193 |
+
$block = $this->pop();
|
2194 |
+
} catch (exception $e) {
|
2195 |
+
$this->seek($s);
|
2196 |
+
$this->throwError($e->getMessage());
|
2197 |
+
}
|
2198 |
+
|
2199 |
+
$hidden = false;
|
2200 |
+
if (is_null($block->type)) {
|
2201 |
+
$hidden = true;
|
2202 |
+
if (!isset($block->args)) {
|
2203 |
+
foreach ($block->tags as $tag) {
|
2204 |
+
if (!is_string($tag) || $tag{0} != $this->seed_csp4_lessc->mPrefix) {
|
2205 |
+
$hidden = false;
|
2206 |
+
break;
|
2207 |
+
}
|
2208 |
+
}
|
2209 |
+
}
|
2210 |
+
|
2211 |
+
foreach ($block->tags as $tag) {
|
2212 |
+
if (is_string($tag)) {
|
2213 |
+
$this->env->children[$tag][] = $block;
|
2214 |
+
}
|
2215 |
+
}
|
2216 |
+
}
|
2217 |
+
|
2218 |
+
if (!$hidden) {
|
2219 |
+
$this->append(array('block', $block), $s);
|
2220 |
+
}
|
2221 |
+
|
2222 |
+
// this is done here so comments aren't bundled into he block that
|
2223 |
+
// was just closed
|
2224 |
+
$this->whitespace();
|
2225 |
+
return true;
|
2226 |
+
}
|
2227 |
+
|
2228 |
+
// mixin
|
2229 |
+
if ($this->mixinTags($tags) &&
|
2230 |
+
($this->argumentValues($argv) || true) &&
|
2231 |
+
($this->keyword($suffix) || true) && $this->end())
|
2232 |
+
{
|
2233 |
+
$tags = $this->fixTags($tags);
|
2234 |
+
$this->append(array('mixin', $tags, $argv, $suffix), $s);
|
2235 |
+
return true;
|
2236 |
+
} else {
|
2237 |
+
$this->seek($s);
|
2238 |
+
}
|
2239 |
+
|
2240 |
+
// spare ;
|
2241 |
+
if ($this->literal(';')) return true;
|
2242 |
+
|
2243 |
+
return false; // got nothing, throw error
|
2244 |
+
}
|
2245 |
+
|
2246 |
+
protected function isDirective($dirname, $directives) {
|
2247 |
+
// TODO: cache pattern in parser
|
2248 |
+
$pattern = implode("|",
|
2249 |
+
array_map(array("seed_csp4_lessc", "preg_quote"), $directives));
|
2250 |
+
$pattern = '/^(-[a-z-]+-)?(' . $pattern . ')$/i';
|
2251 |
+
|
2252 |
+
return preg_match($pattern, $dirname);
|
2253 |
+
}
|
2254 |
+
|
2255 |
+
protected function fixTags($tags) {
|
2256 |
+
// move @ tags out of variable namespace
|
2257 |
+
foreach ($tags as &$tag) {
|
2258 |
+
if ($tag{0} == $this->seed_csp4_lessc->vPrefix)
|
2259 |
+
$tag[0] = $this->seed_csp4_lessc->mPrefix;
|
2260 |
+
}
|
2261 |
+
return $tags;
|
2262 |
+
}
|
2263 |
+
|
2264 |
+
// a list of expressions
|
2265 |
+
protected function expressionList(&$exps) {
|
2266 |
+
$values = array();
|
2267 |
+
|
2268 |
+
while ($this->expression($exp)) {
|
2269 |
+
$values[] = $exp;
|
2270 |
+
}
|
2271 |
+
|
2272 |
+
if (count($values) == 0) return false;
|
2273 |
+
|
2274 |
+
$exps = seed_csp4_lessc::compressList($values, ' ');
|
2275 |
+
return true;
|
2276 |
+
}
|
2277 |
+
|
2278 |
+
/**
|
2279 |
+
* Attempt to consume an expression.
|
2280 |
+
* @link http://en.wikipedia.org/wiki/Operator-precedence_parser#Pseudo-code
|
2281 |
+
*/
|
2282 |
+
protected function expression(&$out) {
|
2283 |
+
if ($this->value($lhs)) {
|
2284 |
+
$out = $this->expHelper($lhs, 0);
|
2285 |
+
|
2286 |
+
// look for / shorthand
|
2287 |
+
if (!empty($this->env->supressedDivision)) {
|
2288 |
+
unset($this->env->supressedDivision);
|
2289 |
+
$s = $this->seek();
|
2290 |
+
if ($this->literal("/") && $this->value($rhs)) {
|
2291 |
+
$out = array("list", "",
|
2292 |
+
array($out, array("keyword", "/"), $rhs));
|
2293 |
+
} else {
|
2294 |
+
$this->seek($s);
|
2295 |
+
}
|
2296 |
+
}
|
2297 |
+
|
2298 |
+
return true;
|
2299 |
+
}
|
2300 |
+
return false;
|
2301 |
+
}
|
2302 |
+
|
2303 |
+
/**
|
2304 |
+
* recursively parse infix equation with $lhs at precedence $minP
|
2305 |
+
*/
|
2306 |
+
protected function expHelper($lhs, $minP) {
|
2307 |
+
$this->inExp = true;
|
2308 |
+
$ss = $this->seek();
|
2309 |
+
|
2310 |
+
while (true) {
|
2311 |
+
$whiteBefore = isset($this->buffer[$this->count - 1]) &&
|
2312 |
+
ctype_space($this->buffer[$this->count - 1]);
|
2313 |
+
|
2314 |
+
// If there is whitespace before the operator, then we require
|
2315 |
+
// whitespace after the operator for it to be an expression
|
2316 |
+
$needWhite = $whiteBefore && !$this->inParens;
|
2317 |
+
|
2318 |
+
if ($this->match(self::$operatorString.($needWhite ? '\s' : ''), $m) && self::$precedence[$m[1]] >= $minP) {
|
2319 |
+
if (!$this->inParens && isset($this->env->currentProperty) && $m[1] == "/" && empty($this->env->supressedDivision)) {
|
2320 |
+
foreach (self::$supressDivisionProps as $pattern) {
|
2321 |
+
if (preg_match($pattern, $this->env->currentProperty)) {
|
2322 |
+
$this->env->supressedDivision = true;
|
2323 |
+
break 2;
|
2324 |
+
}
|
2325 |
+
}
|
2326 |
+
}
|
2327 |
+
|
2328 |
+
|
2329 |
+
$whiteAfter = isset($this->buffer[$this->count - 1]) &&
|
2330 |
+
ctype_space($this->buffer[$this->count - 1]);
|
2331 |
+
|
2332 |
+
if (!$this->value($rhs)) break;
|
2333 |
+
|
2334 |
+
// peek for next operator to see what to do with rhs
|
2335 |
+
if ($this->peek(self::$operatorString, $next) && self::$precedence[$next[1]] > self::$precedence[$m[1]]) {
|
2336 |
+
$rhs = $this->expHelper($rhs, self::$precedence[$next[1]]);
|
2337 |
+
}
|
2338 |
+
|
2339 |
+
$lhs = array('expression', $m[1], $lhs, $rhs, $whiteBefore, $whiteAfter);
|
2340 |
+
$ss = $this->seek();
|
2341 |
+
|
2342 |
+
continue;
|
2343 |
+
}
|
2344 |
+
|
2345 |
+
break;
|
2346 |
+
}
|
2347 |
+
|
2348 |
+
$this->seek($ss);
|
2349 |
+
|
2350 |
+
return $lhs;
|
2351 |
+
}
|
2352 |
+
|
2353 |
+
// consume a list of values for a property
|
2354 |
+
public function propertyValue(&$value, $keyName = null) {
|
2355 |
+
$values = array();
|
2356 |
+
|
2357 |
+
if ($keyName !== null) $this->env->currentProperty = $keyName;
|
2358 |
+
|
2359 |
+
$s = null;
|
2360 |
+
while ($this->expressionList($v)) {
|
2361 |
+
$values[] = $v;
|
2362 |
+
$s = $this->seek();
|
2363 |
+
if (!$this->literal(',')) break;
|
2364 |
+
}
|
2365 |
+
|
2366 |
+
if ($s) $this->seek($s);
|
2367 |
+
|
2368 |
+
if ($keyName !== null) unset($this->env->currentProperty);
|
2369 |
+
|
2370 |
+
if (count($values) == 0) return false;
|
2371 |
+
|
2372 |
+
$value = seed_csp4_lessc::compressList($values, ', ');
|
2373 |
+
return true;
|
2374 |
+
}
|
2375 |
+
|
2376 |
+
protected function parenValue(&$out) {
|
2377 |
+
$s = $this->seek();
|
2378 |
+
|
2379 |
+
// speed shortcut
|
2380 |
+
if (isset($this->buffer[$this->count]) && $this->buffer[$this->count] != "(") {
|
2381 |
+
return false;
|
2382 |
+
}
|
2383 |
+
|
2384 |
+
$inParens = $this->inParens;
|
2385 |
+
if ($this->literal("(") &&
|
2386 |
+
($this->inParens = true) && $this->expression($exp) &&
|
2387 |
+
$this->literal(")"))
|
2388 |
+
{
|
2389 |
+
$out = $exp;
|
2390 |
+
$this->inParens = $inParens;
|
2391 |
+
return true;
|
2392 |
+
} else {
|
2393 |
+
$this->inParens = $inParens;
|
2394 |
+
$this->seek($s);
|
2395 |
+
}
|
2396 |
+
|
2397 |
+
return false;
|
2398 |
+
}
|
2399 |
+
|
2400 |
+
// a single value
|
2401 |
+
protected function value(&$value) {
|
2402 |
+
$s = $this->seek();
|
2403 |
+
|
2404 |
+
// speed shortcut
|
2405 |
+
if (isset($this->buffer[$this->count]) && $this->buffer[$this->count] == "-") {
|
2406 |
+
// negation
|
2407 |
+
if ($this->literal("-", false) &&
|
2408 |
+
(($this->variable($inner) && $inner = array("variable", $inner)) ||
|
2409 |
+
$this->unit($inner) ||
|
2410 |
+
$this->parenValue($inner)))
|
2411 |
+
{
|
2412 |
+
$value = array("unary", "-", $inner);
|
2413 |
+
return true;
|
2414 |
+
} else {
|
2415 |
+
$this->seek($s);
|
2416 |
+
}
|
2417 |
+
}
|
2418 |
+
|
2419 |
+
if ($this->parenValue($value)) return true;
|
2420 |
+
if ($this->unit($value)) return true;
|
2421 |
+
if ($this->color($value)) return true;
|
2422 |
+
if ($this->func($value)) return true;
|
2423 |
+
if ($this->string($value)) return true;
|
2424 |
+
|
2425 |
+
if ($this->keyword($word)) {
|
2426 |
+
$value = array('keyword', $word);
|
2427 |
+
return true;
|
2428 |
+
}
|
2429 |
+
|
2430 |
+
// try a variable
|
2431 |
+
if ($this->variable($var)) {
|
2432 |
+
$value = array('variable', $var);
|
2433 |
+
return true;
|
2434 |
+
}
|
2435 |
+
|
2436 |
+
// unquote string (should this work on any type?
|
2437 |
+
if ($this->literal("~") && $this->string($str)) {
|
2438 |
+
$value = array("escape", $str);
|
2439 |
+
return true;
|
2440 |
+
} else {
|
2441 |
+
$this->seek($s);
|
2442 |
+
}
|
2443 |
+
|
2444 |
+
// css hack: \0
|
2445 |
+
if ($this->literal('\\') && $this->match('([0-9]+)', $m)) {
|
2446 |
+
$value = array('keyword', '\\'.$m[1]);
|
2447 |
+
return true;
|
2448 |
+
} else {
|
2449 |
+
$this->seek($s);
|
2450 |
+
}
|
2451 |
+
|
2452 |
+
return false;
|
2453 |
+
}
|
2454 |
+
|
2455 |
+
// an import statement
|
2456 |
+
protected function import(&$out) {
|
2457 |
+
$s = $this->seek();
|
2458 |
+
if (!$this->literal('@import')) return false;
|
2459 |
+
|
2460 |
+
// @import "something.css" media;
|
2461 |
+
// @import url("something.css") media;
|
2462 |
+
// @import url(something.css) media;
|
2463 |
+
|
2464 |
+
if ($this->propertyValue($value)) {
|
2465 |
+
$out = array("import", $value);
|
2466 |
+
return true;
|
2467 |
+
}
|
2468 |
+
}
|
2469 |
+
|
2470 |
+
protected function mediaQueryList(&$out) {
|
2471 |
+
if ($this->genericList($list, "mediaQuery", ",", false)) {
|
2472 |
+
$out = $list[2];
|
2473 |
+
return true;
|
2474 |
+
}
|
2475 |
+
return false;
|
2476 |
+
}
|
2477 |
+
|
2478 |
+
protected function mediaQuery(&$out) {
|
2479 |
+
$s = $this->seek();
|
2480 |
+
|
2481 |
+
$expressions = null;
|
2482 |
+
$parts = array();
|
2483 |
+
|
2484 |
+
if (($this->literal("only") && ($only = true) || $this->literal("not") && ($not = true) || true) && $this->keyword($mediaType)) {
|
2485 |
+
$prop = array("mediaType");
|
2486 |
+
if (isset($only)) $prop[] = "only";
|
2487 |
+
if (isset($not)) $prop[] = "not";
|
2488 |
+
$prop[] = $mediaType;
|
2489 |
+
$parts[] = $prop;
|
2490 |
+
} else {
|
2491 |
+
$this->seek($s);
|
2492 |
+
}
|
2493 |
+
|
2494 |
+
|
2495 |
+
if (!empty($mediaType) && !$this->literal("and")) {
|
2496 |
+
// ~
|
2497 |
+
} else {
|
2498 |
+
$this->genericList($expressions, "mediaExpression", "and", false);
|
2499 |
+
if (is_array($expressions)) $parts = array_merge($parts, $expressions[2]);
|
2500 |
+
}
|
2501 |
+
|
2502 |
+
if (count($parts) == 0) {
|
2503 |
+
$this->seek($s);
|
2504 |
+
return false;
|
2505 |
+
}
|
2506 |
+
|
2507 |
+
$out = $parts;
|
2508 |
+
return true;
|
2509 |
+
}
|
2510 |
+
|
2511 |
+
protected function mediaExpression(&$out) {
|
2512 |
+
$s = $this->seek();
|
2513 |
+
$value = null;
|
2514 |
+
if ($this->literal("(") &&
|
2515 |
+
$this->keyword($feature) &&
|
2516 |
+
($this->literal(":") && $this->expression($value) || true) &&
|
2517 |
+
$this->literal(")"))
|
2518 |
+
{
|
2519 |
+
$out = array("mediaExp", $feature);
|
2520 |
+
if ($value) $out[] = $value;
|
2521 |
+
return true;
|
2522 |
+
}
|
2523 |
+
|
2524 |
+
$this->seek($s);
|
2525 |
+
return false;
|
2526 |
+
}
|
2527 |
+
|
2528 |
+
// an unbounded string stopped by $end
|
2529 |
+
protected function openString($end, &$out, $nestingOpen=null, $rejectStrs = null) {
|
2530 |
+
$oldWhite = $this->eatWhiteDefault;
|
2531 |
+
$this->eatWhiteDefault = false;
|
2532 |
+
|
2533 |
+
$stop = array("'", '"', "@{", $end);
|
2534 |
+
$stop = array_map(array("seed_csp4_lessc", "preg_quote"), $stop);
|
2535 |
+
// $stop[] = self::$commentMulti;
|
2536 |
+
|
2537 |
+
if (!is_null($rejectStrs)) {
|
2538 |
+
$stop = array_merge($stop, $rejectStrs);
|
2539 |
+
}
|
2540 |
+
|
2541 |
+
$patt = '(.*?)('.implode("|", $stop).')';
|
2542 |
+
|
2543 |
+
$nestingLevel = 0;
|
2544 |
+
|
2545 |
+
$content = array();
|
2546 |
+
while ($this->match($patt, $m, false)) {
|
2547 |
+
if (!empty($m[1])) {
|
2548 |
+
$content[] = $m[1];
|
2549 |
+
if ($nestingOpen) {
|
2550 |
+
$nestingLevel += substr_count($m[1], $nestingOpen);
|
2551 |
+
}
|
2552 |
+
}
|
2553 |
+
|
2554 |
+
$tok = $m[2];
|
2555 |
+
|
2556 |
+
$this->count-= strlen($tok);
|
2557 |
+
if ($tok == $end) {
|
2558 |
+
if ($nestingLevel == 0) {
|
2559 |
+
break;
|
2560 |
+
} else {
|
2561 |
+
$nestingLevel--;
|
2562 |
+
}
|
2563 |
+
}
|
2564 |
+
|
2565 |
+
if (($tok == "'" || $tok == '"') && $this->string($str)) {
|
2566 |
+
$content[] = $str;
|
2567 |
+
continue;
|
2568 |
+
}
|
2569 |
+
|
2570 |
+
if ($tok == "@{" && $this->interpolation($inter)) {
|
2571 |
+
$content[] = $inter;
|
2572 |
+
continue;
|
2573 |
+
}
|
2574 |
+
|
2575 |
+
if (in_array($tok, $rejectStrs)) {
|
2576 |
+
$count = null;
|
2577 |
+
break;
|
2578 |
+
}
|
2579 |
+
|
2580 |
+
|
2581 |
+
$content[] = $tok;
|
2582 |
+
$this->count+= strlen($tok);
|
2583 |
+
}
|
2584 |
+
|
2585 |
+
$this->eatWhiteDefault = $oldWhite;
|
2586 |
+
|
2587 |
+
if (count($content) == 0) return false;
|
2588 |
+
|
2589 |
+
// trim the end
|
2590 |
+
if (is_string(end($content))) {
|
2591 |
+
$content[count($content) - 1] = rtrim(end($content));
|
2592 |
+
}
|
2593 |
+
|
2594 |
+
$out = array("string", "", $content);
|
2595 |
+
return true;
|
2596 |
+
}
|
2597 |
+
|
2598 |
+
protected function string(&$out) {
|
2599 |
+
$s = $this->seek();
|
2600 |
+
if ($this->literal('"', false)) {
|
2601 |
+
$delim = '"';
|
2602 |
+
} elseif ($this->literal("'", false)) {
|
2603 |
+
$delim = "'";
|
2604 |
+
} else {
|
2605 |
+
return false;
|
2606 |
+
}
|
2607 |
+
|
2608 |
+
$content = array();
|
2609 |
+
|
2610 |
+
// look for either ending delim , escape, or string interpolation
|
2611 |
+
$patt = '([^\n]*?)(@\{|\\\\|' .
|
2612 |
+
seed_csp4_lessc::preg_quote($delim).')';
|
2613 |
+
|
2614 |
+
$oldWhite = $this->eatWhiteDefault;
|
2615 |
+
$this->eatWhiteDefault = false;
|
2616 |
+
|
2617 |
+
while ($this->match($patt, $m, false)) {
|
2618 |
+
$content[] = $m[1];
|
2619 |
+
if ($m[2] == "@{") {
|
2620 |
+
$this->count -= strlen($m[2]);
|
2621 |
+
if ($this->interpolation($inter, false)) {
|
2622 |
+
$content[] = $inter;
|
2623 |
+
} else {
|
2624 |
+
$this->count += strlen($m[2]);
|
2625 |
+
$content[] = "@{"; // ignore it
|
2626 |
+
}
|
2627 |
+
} elseif ($m[2] == '\\') {
|
2628 |
+
$content[] = $m[2];
|
2629 |
+
if ($this->literal($delim, false)) {
|
2630 |
+
$content[] = $delim;
|
2631 |
+
}
|
2632 |
+
} else {
|
2633 |
+
$this->count -= strlen($delim);
|
2634 |
+
break; // delim
|
2635 |
+
}
|
2636 |
+
}
|
2637 |
+
|
2638 |
+
$this->eatWhiteDefault = $oldWhite;
|
2639 |
+
|
2640 |
+
if ($this->literal($delim)) {
|
2641 |
+
$out = array("string", $delim, $content);
|
2642 |
+
return true;
|
2643 |
+
}
|
2644 |
+
|
2645 |
+
$this->seek($s);
|
2646 |
+
return false;
|
2647 |
+
}
|
2648 |
+
|
2649 |
+
protected function interpolation(&$out) {
|
2650 |
+
$oldWhite = $this->eatWhiteDefault;
|
2651 |
+
$this->eatWhiteDefault = true;
|
2652 |
+
|
2653 |
+
$s = $this->seek();
|
2654 |
+
if ($this->literal("@{") &&
|
2655 |
+
$this->keyword($var) &&
|
2656 |
+
$this->literal("}", false))
|
2657 |
+
{
|
2658 |
+
$out = array("variable", $this->seed_csp4_lessc->vPrefix . $var);
|
2659 |
+
$this->eatWhiteDefault = $oldWhite;
|
2660 |
+
if ($this->eatWhiteDefault) $this->whitespace();
|
2661 |
+
return true;
|
2662 |
+
}
|
2663 |
+
|
2664 |
+
$this->eatWhiteDefault = $oldWhite;
|
2665 |
+
$this->seek($s);
|
2666 |
+
return false;
|
2667 |
+
}
|
2668 |
+
|
2669 |
+
protected function unit(&$unit) {
|
2670 |
+
// speed shortcut
|
2671 |
+
if (isset($this->buffer[$this->count])) {
|
2672 |
+
$char = $this->buffer[$this->count];
|
2673 |
+
if (!ctype_digit($char) && $char != ".") return false;
|
2674 |
+
}
|
2675 |
+
|
2676 |
+
if ($this->match('([0-9]+(?:\.[0-9]*)?|\.[0-9]+)([%a-zA-Z]+)?', $m)) {
|
2677 |
+
$unit = array("number", $m[1], empty($m[2]) ? "" : $m[2]);
|
2678 |
+
return true;
|
2679 |
+
}
|
2680 |
+
return false;
|
2681 |
+
}
|
2682 |
+
|
2683 |
+
// a # color
|
2684 |
+
protected function color(&$out) {
|
2685 |
+
if ($this->match('(#(?:[0-9a-f]{8}|[0-9a-f]{6}|[0-9a-f]{3}))', $m)) {
|
2686 |
+
if (strlen($m[1]) > 7) {
|
2687 |
+
$out = array("string", "", array($m[1]));
|
2688 |
+
} else {
|
2689 |
+
$out = array("raw_color", $m[1]);
|
2690 |
+
}
|
2691 |
+
return true;
|
2692 |
+
}
|
2693 |
+
|
2694 |
+
return false;
|
2695 |
+
}
|
2696 |
+
|
2697 |
+
// consume a list of property values delimited by ; and wrapped in ()
|
2698 |
+
protected function argumentValues(&$args, $delim = ',') {
|
2699 |
+
$s = $this->seek();
|
2700 |
+
if (!$this->literal('(')) return false;
|
2701 |
+
|
2702 |
+
$values = array();
|
2703 |
+
while (true) {
|
2704 |
+
if ($this->expressionList($value)) $values[] = $value;
|
2705 |
+
if (!$this->literal($delim)) break;
|
2706 |
+
else {
|
2707 |
+
if ($value == null) $values[] = null;
|
2708 |
+
$value = null;
|
2709 |
+
}
|
2710 |
+
}
|
2711 |
+
|
2712 |
+
if (!$this->literal(')')) {
|
2713 |
+
$this->seek($s);
|
2714 |
+
return false;
|
2715 |
+
}
|
2716 |
+
|
2717 |
+
$args = $values;
|
2718 |
+
return true;
|
2719 |
+
}
|
2720 |
+
|
2721 |
+
// consume an argument definition list surrounded by ()
|
2722 |
+
// each argument is a variable name with optional value
|
2723 |
+
// or at the end a ... or a variable named followed by ...
|
2724 |
+
protected function argumentDef(&$args, &$isVararg, $delim = ',') {
|
2725 |
+
$s = $this->seek();
|
2726 |
+
if (!$this->literal('(')) return false;
|
2727 |
+
|
2728 |
+
$values = array();
|
2729 |
+
|
2730 |
+
$isVararg = false;
|
2731 |
+
while (true) {
|
2732 |
+
if ($this->literal("...")) {
|
2733 |
+
$isVararg = true;
|
2734 |
+
break;
|
2735 |
+
}
|
2736 |
+
|
2737 |
+
if ($this->variable($vname)) {
|
2738 |
+
$arg = array("arg", $vname);
|
2739 |
+
$ss = $this->seek();
|
2740 |
+
if ($this->assign() && $this->expressionList($value)) {
|
2741 |
+
$arg[] = $value;
|
2742 |
+
} else {
|
2743 |
+
$this->seek($ss);
|
2744 |
+
if ($this->literal("...")) {
|
2745 |
+
$arg[0] = "rest";
|
2746 |
+
$isVararg = true;
|
2747 |
+
}
|
2748 |
+
}
|
2749 |
+
$values[] = $arg;
|
2750 |
+
if ($isVararg) break;
|
2751 |
+
continue;
|
2752 |
+
}
|
2753 |
+
|
2754 |
+
if ($this->value($literal)) {
|
2755 |
+
$values[] = array("lit", $literal);
|
2756 |
+
}
|
2757 |
+
|
2758 |
+
if (!$this->literal($delim)) break;
|
2759 |
+
}
|
2760 |
+
|
2761 |
+
if (!$this->literal(')')) {
|
2762 |
+
$this->seek($s);
|
2763 |
+
return false;
|
2764 |
+
}
|
2765 |
+
|
2766 |
+
$args = $values;
|
2767 |
+
|
2768 |
+
return true;
|
2769 |
+
}
|
2770 |
+
|
2771 |
+
// consume a list of tags
|
2772 |
+
// this accepts a hanging delimiter
|
2773 |
+
protected function tags(&$tags, $simple = false, $delim = ',') {
|
2774 |
+
$tags = array();
|
2775 |
+
while ($this->tag($tt, $simple)) {
|
2776 |
+
$tags[] = $tt;
|
2777 |
+
if (!$this->literal($delim)) break;
|
2778 |
+
}
|
2779 |
+
if (count($tags) == 0) return false;
|
2780 |
+
|
2781 |
+
return true;
|
2782 |
+
}
|
2783 |
+
|
2784 |
+
// list of tags of specifying mixin path
|
2785 |
+
// optionally separated by > (lazy, accepts extra >)
|
2786 |
+
protected function mixinTags(&$tags) {
|
2787 |
+
$s = $this->seek();
|
2788 |
+
$tags = array();
|
2789 |
+
while ($this->tag($tt, true)) {
|
2790 |
+
$tags[] = $tt;
|
2791 |
+
$this->literal(">");
|
2792 |
+
}
|
2793 |
+
|
2794 |
+
if (count($tags) == 0) return false;
|
2795 |
+
|
2796 |
+
return true;
|
2797 |
+
}
|
2798 |
+
|
2799 |
+
// a bracketed value (contained within in a tag definition)
|
2800 |
+
protected function tagBracket(&$value) {
|
2801 |
+
// speed shortcut
|
2802 |
+
if (isset($this->buffer[$this->count]) && $this->buffer[$this->count] != "[") {
|
2803 |
+
return false;
|
2804 |
+
}
|
2805 |
+
|
2806 |
+
$s = $this->seek();
|
2807 |
+
if ($this->literal('[') && $this->to(']', $c, true) && $this->literal(']', false)) {
|
2808 |
+
$value = '['.$c.']';
|
2809 |
+
// whitespace?
|
2810 |
+
if ($this->whitespace()) $value .= " ";
|
2811 |
+
|
2812 |
+
// escape parent selector, (yuck)
|
2813 |
+
$value = str_replace($this->seed_csp4_lessc->parentSelector, "$&$", $value);
|
2814 |
+
return true;
|
2815 |
+
}
|
2816 |
+
|
2817 |
+
$this->seek($s);
|
2818 |
+
return false;
|
2819 |
+
}
|
2820 |
+
|
2821 |
+
protected function tagExpression(&$value) {
|
2822 |
+
$s = $this->seek();
|
2823 |
+
if ($this->literal("(") && $this->expression($exp) && $this->literal(")")) {
|
2824 |
+
$value = array('exp', $exp);
|
2825 |
+
return true;
|
2826 |
+
}
|
2827 |
+
|
2828 |
+
$this->seek($s);
|
2829 |
+
return false;
|
2830 |
+
}
|
2831 |
+
|
2832 |
+
// a single tag
|
2833 |
+
protected function tag(&$tag, $simple = false) {
|
2834 |
+
if ($simple)
|
2835 |
+
$chars = '^,:;{}\][>\(\) "\'';
|
2836 |
+
else
|
2837 |
+
$chars = '^,;{}["\'';
|
2838 |
+
|
2839 |
+
if (!$simple && $this->tagExpression($tag)) {
|
2840 |
+
return true;
|
2841 |
+
}
|
2842 |
+
|
2843 |
+
$tag = '';
|
2844 |
+
while ($this->tagBracket($first)) $tag .= $first;
|
2845 |
+
|
2846 |
+
while (true) {
|
2847 |
+
if ($this->match('(['.$chars.'0-9]['.$chars.']*)', $m)) {
|
2848 |
+
$tag .= $m[1];
|
2849 |
+
if ($simple) break;
|
2850 |
+
|
2851 |
+
while ($this->tagBracket($brack)) $tag .= $brack;
|
2852 |
+
continue;
|
2853 |
+
} elseif ($this->unit($unit)) { // for keyframes
|
2854 |
+
$tag .= $unit[1] . $unit[2];
|
2855 |
+
continue;
|
2856 |
+
}
|
2857 |
+
break;
|
2858 |
+
}
|
2859 |
+
|
2860 |
+
|
2861 |
+
$tag = trim($tag);
|
2862 |
+
if ($tag == '') return false;
|
2863 |
+
|
2864 |
+
return true;
|
2865 |
+
}
|
2866 |
+
|
2867 |
+
// a css function
|
2868 |
+
protected function func(&$func) {
|
2869 |
+
$s = $this->seek();
|
2870 |
+
|
2871 |
+
if ($this->match('(%|[\w\-_][\w\-_:\.]+|[\w_])', $m) && $this->literal('(')) {
|
2872 |
+
$fname = $m[1];
|
2873 |
+
|
2874 |
+
$sPreArgs = $this->seek();
|
2875 |
+
|
2876 |
+
$args = array();
|
2877 |
+
while (true) {
|
2878 |
+
$ss = $this->seek();
|
2879 |
+
// this ugly nonsense is for ie filter properties
|
2880 |
+
if ($this->keyword($name) && $this->literal('=') && $this->expressionList($value)) {
|
2881 |
+
$args[] = array("string", "", array($name, "=", $value));
|
2882 |
+
} else {
|
2883 |
+
$this->seek($ss);
|
2884 |
+
if ($this->expressionList($value)) {
|
2885 |
+
$args[] = $value;
|
2886 |
+
}
|
2887 |
+
}
|
2888 |
+
|
2889 |
+
if (!$this->literal(',')) break;
|
2890 |
+
}
|
2891 |
+
$args = array('list', ',', $args);
|
2892 |
+
|
2893 |
+
if ($this->literal(')')) {
|
2894 |
+
$func = array('function', $fname, $args);
|
2895 |
+
return true;
|
2896 |
+
} elseif ($fname == 'url') {
|
2897 |
+
// couldn't parse and in url? treat as string
|
2898 |
+
$this->seek($sPreArgs);
|
2899 |
+
if ($this->openString(")", $string) && $this->literal(")")) {
|
2900 |
+
$func = array('function', $fname, $string);
|
2901 |
+
return true;
|
2902 |
+
}
|
2903 |
+
}
|
2904 |
+
}
|
2905 |
+
|
2906 |
+
$this->seek($s);
|
2907 |
+
return false;
|
2908 |
+
}
|
2909 |
+
|
2910 |
+
// consume a less variable
|
2911 |
+
protected function variable(&$name) {
|
2912 |
+
$s = $this->seek();
|
2913 |
+
if ($this->literal($this->seed_csp4_lessc->vPrefix, false) &&
|
2914 |
+
($this->variable($sub) || $this->keyword($name)))
|
2915 |
+
{
|
2916 |
+
if (!empty($sub)) {
|
2917 |
+
$name = array('variable', $sub);
|
2918 |
+
} else {
|
2919 |
+
$name = $this->seed_csp4_lessc->vPrefix.$name;
|
2920 |
+
}
|
2921 |
+
return true;
|
2922 |
+
}
|
2923 |
+
|
2924 |
+
$name = null;
|
2925 |
+
$this->seek($s);
|
2926 |
+
return false;
|
2927 |
+
}
|
2928 |
+
|
2929 |
+
/**
|
2930 |
+
* Consume an assignment operator
|
2931 |
+
* Can optionally take a name that will be set to the current property name
|
2932 |
+
*/
|
2933 |
+
protected function assign($name = null) {
|
2934 |
+
if ($name) $this->currentProperty = $name;
|
2935 |
+
return $this->literal(':') || $this->literal('=');
|
2936 |
+
}
|
2937 |
+
|
2938 |
+
// consume a keyword
|
2939 |
+
protected function keyword(&$word) {
|
2940 |
+
if ($this->match('([\w_\-\*!"][\w\-_"]*)', $m)) {
|
2941 |
+
$word = $m[1];
|
2942 |
+
return true;
|
2943 |
+
}
|
2944 |
+
return false;
|
2945 |
+
}
|
2946 |
+
|
2947 |
+
// consume an end of statement delimiter
|
2948 |
+
protected function end() {
|
2949 |
+
if ($this->literal(';')) {
|
2950 |
+
return true;
|
2951 |
+
} elseif ($this->count == strlen($this->buffer) || $this->buffer{$this->count} == '}') {
|
2952 |
+
// if there is end of file or a closing block next then we don't need a ;
|
2953 |
+
return true;
|
2954 |
+
}
|
2955 |
+
return false;
|
2956 |
+
}
|
2957 |
+
|
2958 |
+
protected function guards(&$guards) {
|
2959 |
+
$s = $this->seek();
|
2960 |
+
|
2961 |
+
if (!$this->literal("when")) {
|
2962 |
+
$this->seek($s);
|
2963 |
+
return false;
|
2964 |
+
}
|
2965 |
+
|
2966 |
+
$guards = array();
|
2967 |
+
|
2968 |
+
while ($this->guardGroup($g)) {
|
2969 |
+
$guards[] = $g;
|
2970 |
+
if (!$this->literal(",")) break;
|
2971 |
+
}
|
2972 |
+
|
2973 |
+
if (count($guards) == 0) {
|
2974 |
+
$guards = null;
|
2975 |
+
$this->seek($s);
|
2976 |
+
return false;
|
2977 |
+
}
|
2978 |
+
|
2979 |
+
return true;
|
2980 |
+
}
|
2981 |
+
|
2982 |
+
// a bunch of guards that are and'd together
|
2983 |
+
// TODO rename to guardGroup
|
2984 |
+
protected function guardGroup(&$guardGroup) {
|
2985 |
+
$s = $this->seek();
|
2986 |
+
$guardGroup = array();
|
2987 |
+
while ($this->guard($guard)) {
|
2988 |
+
$guardGroup[] = $guard;
|
2989 |
+
if (!$this->literal("and")) break;
|
2990 |
+
}
|
2991 |
+
|
2992 |
+
if (count($guardGroup) == 0) {
|
2993 |
+
$guardGroup = null;
|
2994 |
+
$this->seek($s);
|
2995 |
+
return false;
|
2996 |
+
}
|
2997 |
+
|
2998 |
+
return true;
|
2999 |
+
}
|
3000 |
+
|
3001 |
+
protected function guard(&$guard) {
|
3002 |
+
$s = $this->seek();
|
3003 |
+
$negate = $this->literal("not");
|
3004 |
+
|
3005 |
+
if ($this->literal("(") && $this->expression($exp) && $this->literal(")")) {
|
3006 |
+
$guard = $exp;
|
3007 |
+
if ($negate) $guard = array("negate", $guard);
|
3008 |
+
return true;
|
3009 |
+
}
|
3010 |
+
|
3011 |
+
$this->seek($s);
|
3012 |
+
return false;
|
3013 |
+
}
|
3014 |
+
|
3015 |
+
/* raw parsing functions */
|
3016 |
+
|
3017 |
+
protected function literal($what, $eatWhitespace = null) {
|
3018 |
+
if ($eatWhitespace === null) $eatWhitespace = $this->eatWhiteDefault;
|
3019 |
+
|
3020 |
+
// shortcut on single letter
|
3021 |
+
if (!isset($what[1]) && isset($this->buffer[$this->count])) {
|
3022 |
+
if ($this->buffer[$this->count] == $what) {
|
3023 |
+
if (!$eatWhitespace) {
|
3024 |
+
$this->count++;
|
3025 |
+
return true;
|
3026 |
+
}
|
3027 |
+
// goes below...
|
3028 |
+
} else {
|
3029 |
+
return false;
|
3030 |
+
}
|
3031 |
+
}
|
3032 |
+
|
3033 |
+
if (!isset(self::$literalCache[$what])) {
|
3034 |
+
self::$literalCache[$what] = seed_csp4_lessc::preg_quote($what);
|
3035 |
+
}
|
3036 |
+
|
3037 |
+
return $this->match(self::$literalCache[$what], $m, $eatWhitespace);
|
3038 |
+
}
|
3039 |
+
|
3040 |
+
protected function genericList(&$out, $parseItem, $delim="", $flatten=true) {
|
3041 |
+
$s = $this->seek();
|
3042 |
+
$items = array();
|
3043 |
+
while ($this->$parseItem($value)) {
|
3044 |
+
$items[] = $value;
|
3045 |
+
if ($delim) {
|
3046 |
+
if (!$this->literal($delim)) break;
|
3047 |
+
}
|
3048 |
+
}
|
3049 |
+
|
3050 |
+
if (count($items) == 0) {
|
3051 |
+
$this->seek($s);
|
3052 |
+
return false;
|
3053 |
+
}
|
3054 |
+
|
3055 |
+
if ($flatten && count($items) == 1) {
|
3056 |
+
$out = $items[0];
|
3057 |
+
} else {
|
3058 |
+
$out = array("list", $delim, $items);
|
3059 |
+
}
|
3060 |
+
|
3061 |
+
return true;
|
3062 |
+
}
|
3063 |
+
|
3064 |
+
|
3065 |
+
// advance counter to next occurrence of $what
|
3066 |
+
// $until - don't include $what in advance
|
3067 |
+
// $allowNewline, if string, will be used as valid char set
|
3068 |
+
protected function to($what, &$out, $until = false, $allowNewline = false) {
|
3069 |
+
if (is_string($allowNewline)) {
|
3070 |
+
$validChars = $allowNewline;
|
3071 |
+
} else {
|
3072 |
+
$validChars = $allowNewline ? "." : "[^\n]";
|
3073 |
+
}
|
3074 |
+
if (!$this->match('('.$validChars.'*?)'.seed_csp4_lessc::preg_quote($what), $m, !$until)) return false;
|
3075 |
+
if ($until) $this->count -= strlen($what); // give back $what
|
3076 |
+
$out = $m[1];
|
3077 |
+
return true;
|
3078 |
+
}
|
3079 |
+
|
3080 |
+
// try to match something on head of buffer
|
3081 |
+
protected function match($regex, &$out, $eatWhitespace = null) {
|
3082 |
+
if ($eatWhitespace === null) $eatWhitespace = $this->eatWhiteDefault;
|
3083 |
+
|
3084 |
+
$r = '/'.$regex.($eatWhitespace && !$this->writeComments ? '\s*' : '').'/Ais';
|
3085 |
+
if (preg_match($r, $this->buffer, $out, null, $this->count)) {
|
3086 |
+
$this->count += strlen($out[0]);
|
3087 |
+
if ($eatWhitespace && $this->writeComments) $this->whitespace();
|
3088 |
+
return true;
|
3089 |
+
}
|
3090 |
+
return false;
|
3091 |
+
}
|
3092 |
+
|
3093 |
+
// match some whitespace
|
3094 |
+
protected function whitespace() {
|
3095 |
+
if ($this->writeComments) {
|
3096 |
+
$gotWhite = false;
|
3097 |
+
while (preg_match(self::$whitePattern, $this->buffer, $m, null, $this->count)) {
|
3098 |
+
if (isset($m[1]) && empty($this->commentsSeen[$this->count])) {
|
3099 |
+
$this->append(array("comment", $m[1]));
|
3100 |
+
$this->commentsSeen[$this->count] = true;
|
3101 |
+
}
|
3102 |
+
$this->count += strlen($m[0]);
|
3103 |
+
$gotWhite = true;
|
3104 |
+
}
|
3105 |
+
return $gotWhite;
|
3106 |
+
} else {
|
3107 |
+
$this->match("", $m);
|
3108 |
+
return strlen($m[0]) > 0;
|
3109 |
+
}
|
3110 |
+
}
|
3111 |
+
|
3112 |
+
// match something without consuming it
|
3113 |
+
protected function peek($regex, &$out = null, $from=null) {
|
3114 |
+
if (is_null($from)) $from = $this->count;
|
3115 |
+
$r = '/'.$regex.'/Ais';
|
3116 |
+
$result = preg_match($r, $this->buffer, $out, null, $from);
|
3117 |
+
|
3118 |
+
return $result;
|
3119 |
+
}
|
3120 |
+
|
3121 |
+
// seek to a spot in the buffer or return where we are on no argument
|
3122 |
+
protected function seek($where = null) {
|
3123 |
+
if ($where === null) return $this->count;
|
3124 |
+
else $this->count = $where;
|
3125 |
+
return true;
|
3126 |
+
}
|
3127 |
+
|
3128 |
+
/* misc functions */
|
3129 |
+
|
3130 |
+
public function throwError($msg = "parse error", $count = null) {
|
3131 |
+
$count = is_null($count) ? $this->count : $count;
|
3132 |
+
|
3133 |
+
$line = $this->line +
|
3134 |
+
substr_count(substr($this->buffer, 0, $count), "\n");
|
3135 |
+
|
3136 |
+
if (!empty($this->sourceName)) {
|
3137 |
+
$loc = "$this->sourceName on line $line";
|
3138 |
+
} else {
|
3139 |
+
$loc = "line: $line";
|
3140 |
+
}
|
3141 |
+
|
3142 |
+
// TODO this depends on $this->count
|
3143 |
+
if ($this->peek("(.*?)(\n|$)", $m, $count)) {
|
3144 |
+
throw new exception("$msg: failed at `$m[1]` $loc");
|
3145 |
+
} else {
|
3146 |
+
throw new exception("$msg: $loc");
|
3147 |
+
}
|
3148 |
+
}
|
3149 |
+
|
3150 |
+
protected function pushBlock($selectors=null, $type=null) {
|
3151 |
+
$b = new stdclass;
|
3152 |
+
$b->parent = $this->env;
|
3153 |
+
|
3154 |
+
$b->type = $type;
|
3155 |
+
$b->id = self::$nextBlockId++;
|
3156 |
+
|
3157 |
+
$b->isVararg = false; // TODO: kill me from here
|
3158 |
+
$b->tags = $selectors;
|
3159 |
+
|
3160 |
+
$b->props = array();
|
3161 |
+
$b->children = array();
|
3162 |
+
|
3163 |
+
$this->env = $b;
|
3164 |
+
return $b;
|
3165 |
+
}
|
3166 |
+
|
3167 |
+
// push a block that doesn't multiply tags
|
3168 |
+
protected function pushSpecialBlock($type) {
|
3169 |
+
return $this->pushBlock(null, $type);
|
3170 |
+
}
|
3171 |
+
|
3172 |
+
// append a property to the current block
|
3173 |
+
protected function append($prop, $pos = null) {
|
3174 |
+
if ($pos !== null) $prop[-1] = $pos;
|
3175 |
+
$this->env->props[] = $prop;
|
3176 |
+
}
|
3177 |
+
|
3178 |
+
// pop something off the stack
|
3179 |
+
protected function pop() {
|
3180 |
+
$old = $this->env;
|
3181 |
+
$this->env = $this->env->parent;
|
3182 |
+
return $old;
|
3183 |
+
}
|
3184 |
+
|
3185 |
+
// remove comments from $text
|
3186 |
+
// todo: make it work for all functions, not just url
|
3187 |
+
protected function removeComments($text) {
|
3188 |
+
$look = array(
|
3189 |
+
'url(', '//', '/*', '"', "'"
|
3190 |
+
);
|
3191 |
+
|
3192 |
+
$out = '';
|
3193 |
+
$min = null;
|
3194 |
+
while (true) {
|
3195 |
+
// find the next item
|
3196 |
+
foreach ($look as $token) {
|
3197 |
+
$pos = strpos($text, $token);
|
3198 |
+
if ($pos !== false) {
|
3199 |
+
if (!isset($min) || $pos < $min[1]) $min = array($token, $pos);
|
3200 |
+
}
|
3201 |
+
}
|
3202 |
+
|
3203 |
+
if (is_null($min)) break;
|
3204 |
+
|
3205 |
+
$count = $min[1];
|
3206 |
+
$skip = 0;
|
3207 |
+
$newlines = 0;
|
3208 |
+
switch ($min[0]) {
|
3209 |
+
case 'url(':
|
3210 |
+
if (preg_match('/url\(.*?\)/', $text, $m, 0, $count))
|
3211 |
+
$count += strlen($m[0]) - strlen($min[0]);
|
3212 |
+
break;
|
3213 |
+
case '"':
|
3214 |
+
case "'":
|
3215 |
+
if (preg_match('/'.$min[0].'.*?'.$min[0].'/', $text, $m, 0, $count))
|
3216 |
+
$count += strlen($m[0]) - 1;
|
3217 |
+
break;
|
3218 |
+
case '//':
|
3219 |
+
$skip = strpos($text, "\n", $count);
|
3220 |
+
if ($skip === false) $skip = strlen($text) - $count;
|
3221 |
+
else $skip -= $count;
|
3222 |
+
break;
|
3223 |
+
case '/*':
|
3224 |
+
if (preg_match('/\/\*.*?\*\//s', $text, $m, 0, $count)) {
|
3225 |
+
$skip = strlen($m[0]);
|
3226 |
+
$newlines = substr_count($m[0], "\n");
|
3227 |
+
}
|
3228 |
+
break;
|
3229 |
+
}
|
3230 |
+
|
3231 |
+
if ($skip == 0) $count += strlen($min[0]);
|
3232 |
+
|
3233 |
+
$out .= substr($text, 0, $count).str_repeat("\n", $newlines);
|
3234 |
+
$text = substr($text, $count + $skip);
|
3235 |
+
|
3236 |
+
$min = null;
|
3237 |
+
}
|
3238 |
+
|
3239 |
+
return $out.$text;
|
3240 |
+
}
|
3241 |
+
|
3242 |
+
}
|
3243 |
+
|
3244 |
+
class seed_csp4_lessc_formatter_classic {
|
3245 |
+
public $indentChar = " ";
|
3246 |
+
|
3247 |
+
public $break = "\n";
|
3248 |
+
public $open = " {";
|
3249 |
+
public $close = "}";
|
3250 |
+
public $selectorSeparator = ", ";
|
3251 |
+
public $assignSeparator = ":";
|
3252 |
+
|
3253 |
+
public $openSingle = " { ";
|
3254 |
+
public $closeSingle = " }";
|
3255 |
+
|
3256 |
+
public $disableSingle = false;
|
3257 |
+
public $breakSelectors = false;
|
3258 |
+
|
3259 |
+
public $compressColors = false;
|
3260 |
+
|
3261 |
+
public function __construct() {
|
3262 |
+
$this->indentLevel = 0;
|
3263 |
+
}
|
3264 |
+
|
3265 |
+
public function indentStr($n = 0) {
|
3266 |
+
return str_repeat($this->indentChar, max($this->indentLevel + $n, 0));
|
3267 |
+
}
|
3268 |
+
|
3269 |
+
public function property($name, $value) {
|
3270 |
+
return $name . $this->assignSeparator . $value . ";";
|
3271 |
+
}
|
3272 |
+
|
3273 |
+
protected function isEmpty($block) {
|
3274 |
+
if (empty($block->lines)) {
|
3275 |
+
foreach ($block->children as $child) {
|
3276 |
+
if (!$this->isEmpty($child)) return false;
|
3277 |
+
}
|
3278 |
+
|
3279 |
+
return true;
|
3280 |
+
}
|
3281 |
+
return false;
|
3282 |
+
}
|
3283 |
+
|
3284 |
+
public function block($block) {
|
3285 |
+
if ($this->isEmpty($block)) return;
|
3286 |
+
|
3287 |
+
$inner = $pre = $this->indentStr();
|
3288 |
+
|
3289 |
+
$isSingle = !$this->disableSingle &&
|
3290 |
+
is_null($block->type) && count($block->lines) == 1;
|
3291 |
+
|
3292 |
+
if (!empty($block->selectors)) {
|
3293 |
+
$this->indentLevel++;
|
3294 |
+
|
3295 |
+
if ($this->breakSelectors) {
|
3296 |
+
$selectorSeparator = $this->selectorSeparator . $this->break . $pre;
|
3297 |
+
} else {
|
3298 |
+
$selectorSeparator = $this->selectorSeparator;
|
3299 |
+
}
|
3300 |
+
|
3301 |
+
echo $pre .
|
3302 |
+
implode($selectorSeparator, $block->selectors);
|
3303 |
+
if ($isSingle) {
|
3304 |
+
echo $this->openSingle;
|
3305 |
+
$inner = "";
|
3306 |
+
} else {
|
3307 |
+
echo $this->open . $this->break;
|
3308 |
+
$inner = $this->indentStr();
|
3309 |
+
}
|
3310 |
+
|
3311 |
+
}
|
3312 |
+
|
3313 |
+
if (!empty($block->lines)) {
|
3314 |
+
$glue = $this->break.$inner;
|
3315 |
+
echo $inner . implode($glue, $block->lines);
|
3316 |
+
if (!$isSingle && !empty($block->children)) {
|
3317 |
+
echo $this->break;
|
3318 |
+
}
|
3319 |
+
}
|
3320 |
+
|
3321 |
+
foreach ($block->children as $child) {
|
3322 |
+
$this->block($child);
|
3323 |
+
}
|
3324 |
+
|
3325 |
+
if (!empty($block->selectors)) {
|
3326 |
+
if (!$isSingle && empty($block->children)) echo $this->break;
|
3327 |
+
|
3328 |
+
if ($isSingle) {
|
3329 |
+
echo $this->closeSingle . $this->break;
|
3330 |
+
} else {
|
3331 |
+
echo $pre . $this->close . $this->break;
|
3332 |
+
}
|
3333 |
+
|
3334 |
+
$this->indentLevel--;
|
3335 |
+
}
|
3336 |
+
}
|
3337 |
+
}
|
3338 |
+
|
3339 |
+
class seed_csp4_lessc_formatter_compressed extends seed_csp4_lessc_formatter_classic {
|
3340 |
+
public $disableSingle = true;
|
3341 |
+
public $open = "{";
|
3342 |
+
public $selectorSeparator = ",";
|
3343 |
+
public $assignSeparator = ":";
|
3344 |
+
public $break = "";
|
3345 |
+
public $compressColors = true;
|
3346 |
+
|
3347 |
+
public function indentStr($n = 0) {
|
3348 |
+
return "";
|
3349 |
+
}
|
3350 |
+
}
|
3351 |
+
|
3352 |
+
class seed_csp4_lessc_formatter_lessjs extends seed_csp4_lessc_formatter_classic {
|
3353 |
+
public $disableSingle = true;
|
3354 |
+
public $breakSelectors = true;
|
3355 |
+
public $assignSeparator = ": ";
|
3356 |
+
public $selectorSeparator = ",";
|
3357 |
+
}
|
3358 |
+
|
3359 |
+
|
themes/default/bootstrap/css/bootstrap.css
ADDED
@@ -0,0 +1,5958 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.seed-csp4 {
|
2 |
+
/*! normalize.css v2.1.3 | MIT License | git.io/normalize */
|
3 |
+
}
|
4 |
+
.seed-csp4 article,
|
5 |
+
.seed-csp4 aside,
|
6 |
+
.seed-csp4 details,
|
7 |
+
.seed-csp4 figcaption,
|
8 |
+
.seed-csp4 figure,
|
9 |
+
.seed-csp4 footer,
|
10 |
+
.seed-csp4 header,
|
11 |
+
.seed-csp4 hgroup,
|
12 |
+
.seed-csp4 main,
|
13 |
+
.seed-csp4 nav,
|
14 |
+
.seed-csp4 section,
|
15 |
+
.seed-csp4 summary {
|
16 |
+
display: block;
|
17 |
+
}
|
18 |
+
.seed-csp4 audio,
|
19 |
+
.seed-csp4 canvas,
|
20 |
+
.seed-csp4 video {
|
21 |
+
display: inline-block;
|
22 |
+
}
|
23 |
+
.seed-csp4 audio:not([controls]) {
|
24 |
+
display: none;
|
25 |
+
height: 0;
|
26 |
+
}
|
27 |
+
.seed-csp4 [hidden],
|
28 |
+
.seed-csp4 template {
|
29 |
+
display: none;
|
30 |
+
}
|
31 |
+
.seed-csp4 html {
|
32 |
+
font-family: sans-serif;
|
33 |
+
-ms-text-size-adjust: 100%;
|
34 |
+
-webkit-text-size-adjust: 100%;
|
35 |
+
}
|
36 |
+
.seed-csp4 body {
|
37 |
+
margin: 0;
|
38 |
+
}
|
39 |
+
.seed-csp4 a {
|
40 |
+
background: transparent;
|
41 |
+
}
|
42 |
+
.seed-csp4 a:focus {
|
43 |
+
outline: thin dotted;
|
44 |
+
}
|
45 |
+
.seed-csp4 a:active,
|
46 |
+
.seed-csp4 a:hover {
|
47 |
+
outline: 0;
|
48 |
+
}
|
49 |
+
.seed-csp4 h1 {
|
50 |
+
font-size: 2em;
|
51 |
+
margin: 0.67em 0;
|
52 |
+
}
|
53 |
+
.seed-csp4 abbr[title] {
|
54 |
+
border-bottom: 1px dotted;
|
55 |
+
}
|
56 |
+
.seed-csp4 b,
|
57 |
+
.seed-csp4 strong {
|
58 |
+
font-weight: bold;
|
59 |
+
}
|
60 |
+
.seed-csp4 dfn {
|
61 |
+
font-style: italic;
|
62 |
+
}
|
63 |
+
.seed-csp4 hr {
|
64 |
+
-moz-box-sizing: content-box;
|
65 |
+
box-sizing: content-box;
|
66 |
+
height: 0;
|
67 |
+
}
|
68 |
+
.seed-csp4 mark {
|
69 |
+
background: #ff0;
|
70 |
+
color: #000;
|
71 |
+
}
|
72 |
+
.seed-csp4 code,
|
73 |
+
.seed-csp4 kbd,
|
74 |
+
.seed-csp4 pre,
|
75 |
+
.seed-csp4 samp {
|
76 |
+
font-family: monospace, serif;
|
77 |
+
font-size: 1em;
|
78 |
+
}
|
79 |
+
.seed-csp4 pre {
|
80 |
+
white-space: pre-wrap;
|
81 |
+
}
|
82 |
+
.seed-csp4 q {
|
83 |
+
quotes: "\201C" "\201D" "\2018" "\2019";
|
84 |
+
}
|
85 |
+
.seed-csp4 small {
|
86 |
+
font-size: 80%;
|
87 |
+
}
|
88 |
+
.seed-csp4 sub,
|
89 |
+
.seed-csp4 sup {
|
90 |
+
font-size: 75%;
|
91 |
+
line-height: 0;
|
92 |
+
position: relative;
|
93 |
+
vertical-align: baseline;
|
94 |
+
}
|
95 |
+
.seed-csp4 sup {
|
96 |
+
top: -0.5em;
|
97 |
+
}
|
98 |
+
.seed-csp4 sub {
|
99 |
+
bottom: -0.25em;
|
100 |
+
}
|
101 |
+
.seed-csp4 img {
|
102 |
+
border: 0;
|
103 |
+
}
|
104 |
+
.seed-csp4 svg:not(:root) {
|
105 |
+
overflow: hidden;
|
106 |
+
}
|
107 |
+
.seed-csp4 figure {
|
108 |
+
margin: 0;
|
109 |
+
}
|
110 |
+
.seed-csp4 fieldset {
|
111 |
+
border: 1px solid #c0c0c0;
|
112 |
+
margin: 0 2px;
|
113 |
+
padding: 0.35em 0.625em 0.75em;
|
114 |
+
}
|
115 |
+
.seed-csp4 legend {
|
116 |
+
border: 0;
|
117 |
+
padding: 0;
|
118 |
+
}
|
119 |
+
.seed-csp4 button,
|
120 |
+
.seed-csp4 input,
|
121 |
+
.seed-csp4 select,
|
122 |
+
.seed-csp4 textarea {
|
123 |
+
font-family: inherit;
|
124 |
+
font-size: 100%;
|
125 |
+
margin: 0;
|
126 |
+
}
|
127 |
+
.seed-csp4 button,
|
128 |
+
.seed-csp4 input {
|
129 |
+
line-height: normal;
|
130 |
+
}
|
131 |
+
.seed-csp4 button,
|
132 |
+
.seed-csp4 select {
|
133 |
+
text-transform: none;
|
134 |
+
}
|
135 |
+
.seed-csp4 button,
|
136 |
+
.seed-csp4 html input[type="button"],
|
137 |
+
.seed-csp4 input[type="reset"],
|
138 |
+
.seed-csp4 input[type="submit"] {
|
139 |
+
-webkit-appearance: button;
|
140 |
+
cursor: pointer;
|
141 |
+
}
|
142 |
+
.seed-csp4 button[disabled],
|
143 |
+
.seed-csp4 html input[disabled] {
|
144 |
+
cursor: default;
|
145 |
+
}
|
146 |
+
.seed-csp4 input[type="checkbox"],
|
147 |
+
.seed-csp4 input[type="radio"] {
|
148 |
+
box-sizing: border-box;
|
149 |
+
padding: 0;
|
150 |
+
}
|
151 |
+
.seed-csp4 input[type="search"] {
|
152 |
+
-webkit-appearance: textfield;
|
153 |
+
-moz-box-sizing: content-box;
|
154 |
+
-webkit-box-sizing: content-box;
|
155 |
+
box-sizing: content-box;
|
156 |
+
}
|
157 |
+
.seed-csp4 input[type="search"]::-webkit-search-cancel-button,
|
158 |
+
.seed-csp4 input[type="search"]::-webkit-search-decoration {
|
159 |
+
-webkit-appearance: none;
|
160 |
+
}
|
161 |
+
.seed-csp4 button::-moz-focus-inner,
|
162 |
+
.seed-csp4 input::-moz-focus-inner {
|
163 |
+
border: 0;
|
164 |
+
padding: 0;
|
165 |
+
}
|
166 |
+
.seed-csp4 textarea {
|
167 |
+
overflow: auto;
|
168 |
+
vertical-align: top;
|
169 |
+
}
|
170 |
+
.seed-csp4 table {
|
171 |
+
border-collapse: collapse;
|
172 |
+
border-spacing: 0;
|
173 |
+
}
|
174 |
+
@media print {
|
175 |
+
.seed-csp4 * {
|
176 |
+
text-shadow: none !important;
|
177 |
+
color: #000 !important;
|
178 |
+
background: transparent !important;
|
179 |
+
box-shadow: none !important;
|
180 |
+
}
|
181 |
+
.seed-csp4 a,
|
182 |
+
.seed-csp4 a:visited {
|
183 |
+
text-decoration: underline;
|
184 |
+
}
|
185 |
+
.seed-csp4 a[href]:after {
|
186 |
+
content: " (" attr(href) ")";
|
187 |
+
}
|
188 |
+
.seed-csp4 abbr[title]:after {
|
189 |
+
content: " (" attr(title) ")";
|
190 |
+
}
|
191 |
+
.seed-csp4 a[href^="javascript:"]:after,
|
192 |
+
.seed-csp4 a[href^="#"]:after {
|
193 |
+
content: "";
|
194 |
+
}
|
195 |
+
.seed-csp4 pre,
|
196 |
+
.seed-csp4 blockquote {
|
197 |
+
border: 1px solid #999;
|
198 |
+
page-break-inside: avoid;
|
199 |
+
}
|
200 |
+
.seed-csp4 thead {
|
201 |
+
display: table-header-group;
|
202 |
+
}
|
203 |
+
.seed-csp4 tr,
|
204 |
+
.seed-csp4 img {
|
205 |
+
page-break-inside: avoid;
|
206 |
+
}
|
207 |
+
.seed-csp4 img {
|
208 |
+
max-width: 100% !important;
|
209 |
+
}
|
210 |
+
@page {
|
211 |
+
margin: 2cm .5cm;
|
212 |
+
}
|
213 |
+
.seed-csp4 p,
|
214 |
+
.seed-csp4 h2,
|
215 |
+
.seed-csp4 h3 {
|
216 |
+
orphans: 3;
|
217 |
+
widows: 3;
|
218 |
+
}
|
219 |
+
.seed-csp4 h2,
|
220 |
+
.seed-csp4 h3 {
|
221 |
+
page-break-after: avoid;
|
222 |
+
}
|
223 |
+
.seed-csp4 select {
|
224 |
+
background: #fff !important;
|
225 |
+
}
|
226 |
+
.seed-csp4 .navbar {
|
227 |
+
display: none;
|
228 |
+
}
|
229 |
+
.seed-csp4 .table td,
|
230 |
+
.seed-csp4 .table th {
|
231 |
+
background-color: #fff !important;
|
232 |
+
}
|
233 |
+
.seed-csp4 .btn > .caret,
|
234 |
+
.seed-csp4 .dropup > .btn > .caret {
|
235 |
+
border-top-color: #000 !important;
|
236 |
+
}
|
237 |
+
.seed-csp4 .label {
|
238 |
+
border: 1px solid #000;
|
239 |
+
}
|
240 |
+
.seed-csp4 .table {
|
241 |
+
border-collapse: collapse !important;
|
242 |
+
}
|
243 |
+
.seed-csp4 .table-bordered th,
|
244 |
+
.seed-csp4 .table-bordered td {
|
245 |
+
border: 1px solid #ddd !important;
|
246 |
+
}
|
247 |
+
}
|
248 |
+
.seed-csp4 *,
|
249 |
+
.seed-csp4 *:before,
|
250 |
+
.seed-csp4 *:after {
|
251 |
+
-webkit-box-sizing: border-box;
|
252 |
+
-moz-box-sizing: border-box;
|
253 |
+
box-sizing: border-box;
|
254 |
+
}
|
255 |
+
.seed-csp4 html {
|
256 |
+
font-size: 62.5%;
|
257 |
+
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
|
258 |
+
}
|
259 |
+
.seed-csp4 body {
|
260 |
+
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
261 |
+
font-size: 14px;
|
262 |
+
line-height: 1.428571429;
|
263 |
+
color: #333333;
|
264 |
+
background-color: #ffffff;
|
265 |
+
}
|
266 |
+
.seed-csp4 input,
|
267 |
+
.seed-csp4 button,
|
268 |
+
.seed-csp4 select,
|
269 |
+
.seed-csp4 textarea {
|
270 |
+
font-family: inherit;
|
271 |
+
font-size: inherit;
|
272 |
+
line-height: inherit;
|
273 |
+
}
|
274 |
+
.seed-csp4 a {
|
275 |
+
color: #428bca;
|
276 |
+
text-decoration: none;
|
277 |
+
}
|
278 |
+
.seed-csp4 a:hover,
|
279 |
+
.seed-csp4 a:focus {
|
280 |
+
color: #2a6496;
|
281 |
+
text-decoration: underline;
|
282 |
+
}
|
283 |
+
.seed-csp4 a:focus {
|
284 |
+
outline: thin dotted;
|
285 |
+
outline: 5px auto -webkit-focus-ring-color;
|
286 |
+
outline-offset: -2px;
|
287 |
+
}
|
288 |
+
.seed-csp4 img {
|
289 |
+
vertical-align: middle;
|
290 |
+
}
|
291 |
+
.seed-csp4 .img-responsive {
|
292 |
+
display: block;
|
293 |
+
max-width: 100%;
|
294 |
+
height: auto;
|
295 |
+
}
|
296 |
+
.seed-csp4 .img-rounded {
|
297 |
+
border-radius: 6px;
|
298 |
+
}
|
299 |
+
.seed-csp4 .img-thumbnail {
|
300 |
+
padding: 4px;
|
301 |
+
line-height: 1.428571429;
|
302 |
+
background-color: #ffffff;
|
303 |
+
border: 1px solid #dddddd;
|
304 |
+
border-radius: 4px;
|
305 |
+
-webkit-transition: all 0.2s ease-in-out;
|
306 |
+
transition: all 0.2s ease-in-out;
|
307 |
+
display: inline-block;
|
308 |
+
max-width: 100%;
|
309 |
+
height: auto;
|
310 |
+
}
|
311 |
+
.seed-csp4 .img-circle {
|
312 |
+
border-radius: 50%;
|
313 |
+
}
|
314 |
+
.seed-csp4 hr {
|
315 |
+
margin-top: 20px;
|
316 |
+
margin-bottom: 20px;
|
317 |
+
border: 0;
|
318 |
+
border-top: 1px solid #eeeeee;
|
319 |
+
}
|
320 |
+
.seed-csp4 .sr-only {
|
321 |
+
position: absolute;
|
322 |
+
width: 1px;
|
323 |
+
height: 1px;
|
324 |
+
margin: -1px;
|
325 |
+
padding: 0;
|
326 |
+
overflow: hidden;
|
327 |
+
clip: rect(0, 0, 0, 0);
|
328 |
+
border: 0;
|
329 |
+
}
|
330 |
+
.seed-csp4 h1,
|
331 |
+
.seed-csp4 h2,
|
332 |
+
.seed-csp4 h3,
|
333 |
+
.seed-csp4 h4,
|
334 |
+
.seed-csp4 h5,
|
335 |
+
.seed-csp4 h6,
|
336 |
+
.seed-csp4 .h1,
|
337 |
+
.seed-csp4 .h2,
|
338 |
+
.seed-csp4 .h3,
|
339 |
+
.seed-csp4 .h4,
|
340 |
+
.seed-csp4 .h5,
|
341 |
+
.seed-csp4 .h6 {
|
342 |
+
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
343 |
+
font-weight: 500;
|
344 |
+
line-height: 1.1;
|
345 |
+
color: inherit;
|
346 |
+
}
|
347 |
+
.seed-csp4 h1 small,
|
348 |
+
.seed-csp4 h2 small,
|
349 |
+
.seed-csp4 h3 small,
|
350 |
+
.seed-csp4 h4 small,
|
351 |
+
.seed-csp4 h5 small,
|
352 |
+
.seed-csp4 h6 small,
|
353 |
+
.seed-csp4 .h1 small,
|
354 |
+
.seed-csp4 .h2 small,
|
355 |
+
.seed-csp4 .h3 small,
|
356 |
+
.seed-csp4 .h4 small,
|
357 |
+
.seed-csp4 .h5 small,
|
358 |
+
.seed-csp4 .h6 small,
|
359 |
+
.seed-csp4 h1 .small,
|
360 |
+
.seed-csp4 h2 .small,
|
361 |
+
.seed-csp4 h3 .small,
|
362 |
+
.seed-csp4 h4 .small,
|
363 |
+
.seed-csp4 h5 .small,
|
364 |
+
.seed-csp4 h6 .small,
|
365 |
+
.seed-csp4 .h1 .small,
|
366 |
+
.seed-csp4 .h2 .small,
|
367 |
+
.seed-csp4 .h3 .small,
|
368 |
+
.seed-csp4 .h4 .small,
|
369 |
+
.seed-csp4 .h5 .small,
|
370 |
+
.seed-csp4 .h6 .small {
|
371 |
+
font-weight: normal;
|
372 |
+
line-height: 1;
|
373 |
+
color: #999999;
|
374 |
+
}
|
375 |
+
.seed-csp4 h1,
|
376 |
+
.seed-csp4 h2,
|
377 |
+
.seed-csp4 h3 {
|
378 |
+
margin-top: 20px;
|
379 |
+
margin-bottom: 10px;
|
380 |
+
}
|
381 |
+
.seed-csp4 h1 small,
|
382 |
+
.seed-csp4 h2 small,
|
383 |
+
.seed-csp4 h3 small,
|
384 |
+
.seed-csp4 h1 .small,
|
385 |
+
.seed-csp4 h2 .small,
|
386 |
+
.seed-csp4 h3 .small {
|
387 |
+
font-size: 65%;
|
388 |
+
}
|
389 |
+
.seed-csp4 h4,
|
390 |
+
.seed-csp4 h5,
|
391 |
+
.seed-csp4 h6 {
|
392 |
+
margin-top: 10px;
|
393 |
+
margin-bottom: 10px;
|
394 |
+
}
|
395 |
+
.seed-csp4 h4 small,
|
396 |
+
.seed-csp4 h5 small,
|
397 |
+
.seed-csp4 h6 small,
|
398 |
+
.seed-csp4 h4 .small,
|
399 |
+
.seed-csp4 h5 .small,
|
400 |
+
.seed-csp4 h6 .small {
|
401 |
+
font-size: 75%;
|
402 |
+
}
|
403 |
+
.seed-csp4 h1,
|
404 |
+
.seed-csp4 .h1 {
|
405 |
+
font-size: 36px;
|
406 |
+
}
|
407 |
+
.seed-csp4 h2,
|
408 |
+
.seed-csp4 .h2 {
|
409 |
+
font-size: 30px;
|
410 |
+
}
|
411 |
+
.seed-csp4 h3,
|
412 |
+
.seed-csp4 .h3 {
|
413 |
+
font-size: 24px;
|
414 |
+
}
|
415 |
+
.seed-csp4 h4,
|
416 |
+
.seed-csp4 .h4 {
|
417 |
+
font-size: 18px;
|
418 |
+
}
|
419 |
+
.seed-csp4 h5,
|
420 |
+
.seed-csp4 .h5 {
|
421 |
+
font-size: 14px;
|
422 |
+
}
|
423 |
+
.seed-csp4 h6,
|
424 |
+
.seed-csp4 .h6 {
|
425 |
+
font-size: 12px;
|
426 |
+
}
|
427 |
+
.seed-csp4 p {
|
428 |
+
margin: 0 0 10px;
|
429 |
+
}
|
430 |
+
.seed-csp4 .lead {
|
431 |
+
margin-bottom: 20px;
|
432 |
+
font-size: 16px;
|
433 |
+
font-weight: 200;
|
434 |
+
line-height: 1.4;
|
435 |
+
}
|
436 |
+
@media (min-width: 768px) {
|
437 |
+
.seed-csp4 .lead {
|
438 |
+
font-size: 21px;
|
439 |
+
}
|
440 |
+
}
|
441 |
+
.seed-csp4 small,
|
442 |
+
.seed-csp4 .small {
|
443 |
+
font-size: 85%;
|
444 |
+
}
|
445 |
+
.seed-csp4 cite {
|
446 |
+
font-style: normal;
|
447 |
+
}
|
448 |
+
.seed-csp4 .text-muted {
|
449 |
+
color: #999999;
|
450 |
+
}
|
451 |
+
.seed-csp4 .text-primary {
|
452 |
+
color: #428bca;
|
453 |
+
}
|
454 |
+
.seed-csp4 .text-primary:hover {
|
455 |
+
color: #3071a9;
|
456 |
+
}
|
457 |
+
.seed-csp4 .text-warning {
|
458 |
+
color: #8a6d3b;
|
459 |
+
}
|
460 |
+
.seed-csp4 .text-warning:hover {
|
461 |
+
color: #66512c;
|
462 |
+
}
|
463 |
+
.seed-csp4 .text-danger {
|
464 |
+
color: #a94442;
|
465 |
+
}
|
466 |
+
.seed-csp4 .text-danger:hover {
|
467 |
+
color: #843534;
|
468 |
+
}
|
469 |
+
.seed-csp4 .text-success {
|
470 |
+
color: #3c763d;
|
471 |
+
}
|
472 |
+
.seed-csp4 .text-success:hover {
|
473 |
+
color: #2b542c;
|
474 |
+
}
|
475 |
+
.seed-csp4 .text-info {
|
476 |
+
color: #31708f;
|
477 |
+
}
|
478 |
+
.seed-csp4 .text-info:hover {
|
479 |
+
color: #245269;
|
480 |
+
}
|
481 |
+
.seed-csp4 .text-left {
|
482 |
+
text-align: left;
|
483 |
+
}
|
484 |
+
.seed-csp4 .text-right {
|
485 |
+
text-align: right;
|
486 |
+
}
|
487 |
+
.seed-csp4 .text-center {
|
488 |
+
text-align: center;
|
489 |
+
}
|
490 |
+
.seed-csp4 .page-header {
|
491 |
+
padding-bottom: 9px;
|
492 |
+
margin: 40px 0 20px;
|
493 |
+
border-bottom: 1px solid #eeeeee;
|
494 |
+
}
|
495 |
+
.seed-csp4 ul,
|
496 |
+
.seed-csp4 ol {
|
497 |
+
margin-top: 0;
|
498 |
+
margin-bottom: 10px;
|
499 |
+
}
|
500 |
+
.seed-csp4 ul ul,
|
501 |
+
.seed-csp4 ol ul,
|
502 |
+
.seed-csp4 ul ol,
|
503 |
+
.seed-csp4 ol ol {
|
504 |
+
margin-bottom: 0;
|
505 |
+
}
|
506 |
+
.seed-csp4 .list-unstyled {
|
507 |
+
padding-left: 0;
|
508 |
+
list-style: none;
|
509 |
+
}
|
510 |
+
.seed-csp4 .list-inline {
|
511 |
+
padding-left: 0;
|
512 |
+
list-style: none;
|
513 |
+
}
|
514 |
+
.seed-csp4 .list-inline > li {
|
515 |
+
display: inline-block;
|
516 |
+
padding-left: 5px;
|
517 |
+
padding-right: 5px;
|
518 |
+
}
|
519 |
+
.seed-csp4 .list-inline > li:first-child {
|
520 |
+
padding-left: 0;
|
521 |
+
}
|
522 |
+
.seed-csp4 dl {
|
523 |
+
margin-top: 0;
|
524 |
+
margin-bottom: 20px;
|
525 |
+
}
|
526 |
+
.seed-csp4 dt,
|
527 |
+
.seed-csp4 dd {
|
528 |
+
line-height: 1.428571429;
|
529 |
+
}
|
530 |
+
.seed-csp4 dt {
|
531 |
+
font-weight: bold;
|
532 |
+
}
|
533 |
+
.seed-csp4 dd {
|
534 |
+
margin-left: 0;
|
535 |
+
}
|
536 |
+
@media (min-width: 768px) {
|
537 |
+
.seed-csp4 .dl-horizontal dt {
|
538 |
+
float: left;
|
539 |
+
width: 160px;
|
540 |
+
clear: left;
|
541 |
+
text-align: right;
|
542 |
+
overflow: hidden;
|
543 |
+
text-overflow: ellipsis;
|
544 |
+
white-space: nowrap;
|
545 |
+
}
|
546 |
+
.seed-csp4 .dl-horizontal dd {
|
547 |
+
margin-left: 180px;
|
548 |
+
}
|
549 |
+
.seed-csp4 .dl-horizontal dd:before,
|
550 |
+
.seed-csp4 .dl-horizontal dd:after {
|
551 |
+
content: " ";
|
552 |
+
display: table;
|
553 |
+
}
|
554 |
+
.seed-csp4 .dl-horizontal dd:after {
|
555 |
+
clear: both;
|
556 |
+
}
|
557 |
+
.seed-csp4 .dl-horizontal dd:before,
|
558 |
+
.seed-csp4 .dl-horizontal dd:after {
|
559 |
+
content: " ";
|
560 |
+
display: table;
|
561 |
+
}
|
562 |
+
.seed-csp4 .dl-horizontal dd:after {
|
563 |
+
clear: both;
|
564 |
+
}
|
565 |
+
}
|
566 |
+
.seed-csp4 abbr[title],
|
567 |
+
.seed-csp4 abbr[data-original-title] {
|
568 |
+
cursor: help;
|
569 |
+
border-bottom: 1px dotted #999999;
|
570 |
+
}
|
571 |
+
.seed-csp4 .initialism {
|
572 |
+
font-size: 90%;
|
573 |
+
text-transform: uppercase;
|
574 |
+
}
|
575 |
+
.seed-csp4 blockquote {
|
576 |
+
padding: 10px 20px;
|
577 |
+
margin: 0 0 20px;
|
578 |
+
border-left: 5px solid #eeeeee;
|
579 |
+
}
|
580 |
+
.seed-csp4 blockquote p {
|
581 |
+
font-size: 17.5px;
|
582 |
+
font-weight: 300;
|
583 |
+
line-height: 1.25;
|
584 |
+
}
|
585 |
+
.seed-csp4 blockquote p:last-child {
|
586 |
+
margin-bottom: 0;
|
587 |
+
}
|
588 |
+
.seed-csp4 blockquote small,
|
589 |
+
.seed-csp4 blockquote .small {
|
590 |
+
display: block;
|
591 |
+
line-height: 1.428571429;
|
592 |
+
color: #999999;
|
593 |
+
}
|
594 |
+
.seed-csp4 blockquote small:before,
|
595 |
+
.seed-csp4 blockquote .small:before {
|
596 |
+
content: '\2014 \00A0';
|
597 |
+
}
|
598 |
+
.seed-csp4 blockquote.pull-right {
|
599 |
+
padding-right: 15px;
|
600 |
+
padding-left: 0;
|
601 |
+
border-right: 5px solid #eeeeee;
|
602 |
+
border-left: 0;
|
603 |
+
}
|
604 |
+
.seed-csp4 blockquote.pull-right p,
|
605 |
+
.seed-csp4 blockquote.pull-right small,
|
606 |
+
.seed-csp4 blockquote.pull-right .small {
|
607 |
+
text-align: right;
|
608 |
+
}
|
609 |
+
.seed-csp4 blockquote.pull-right small:before,
|
610 |
+
.seed-csp4 blockquote.pull-right .small:before {
|
611 |
+
content: '';
|
612 |
+
}
|
613 |
+
.seed-csp4 blockquote.pull-right small:after,
|
614 |
+
.seed-csp4 blockquote.pull-right .small:after {
|
615 |
+
content: '\00A0 \2014';
|
616 |
+
}
|
617 |
+
.seed-csp4 blockquote:before,
|
618 |
+
.seed-csp4 blockquote:after {
|
619 |
+
content: "";
|
620 |
+
}
|
621 |
+
.seed-csp4 address {
|
622 |
+
margin-bottom: 20px;
|
623 |
+
font-style: normal;
|
624 |
+
line-height: 1.428571429;
|
625 |
+
}
|
626 |
+
.seed-csp4 code,
|
627 |
+
.seed-csp4 kbd,
|
628 |
+
.seed-csp4 pre,
|
629 |
+
.seed-csp4 samp {
|
630 |
+
font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
|
631 |
+
}
|
632 |
+
.seed-csp4 code {
|
633 |
+
padding: 2px 4px;
|
634 |
+
font-size: 90%;
|
635 |
+
color: #c7254e;
|
636 |
+
background-color: #f9f2f4;
|
637 |
+
white-space: nowrap;
|
638 |
+
border-radius: 4px;
|
639 |
+
}
|
640 |
+
.seed-csp4 pre {
|
641 |
+
display: block;
|
642 |
+
padding: 9.5px;
|
643 |
+
margin: 0 0 10px;
|
644 |
+
font-size: 13px;
|
645 |
+
line-height: 1.428571429;
|
646 |
+
word-break: break-all;
|
647 |
+
word-wrap: break-word;
|
648 |
+
color: #333333;
|
649 |
+
background-color: #f5f5f5;
|
650 |
+
border: 1px solid #cccccc;
|
651 |
+
border-radius: 4px;
|
652 |
+
}
|
653 |
+
.seed-csp4 pre code {
|
654 |
+
padding: 0;
|
655 |
+
font-size: inherit;
|
656 |
+
color: inherit;
|
657 |
+
white-space: pre-wrap;
|
658 |
+
background-color: transparent;
|
659 |
+
border-radius: 0;
|
660 |
+
}
|
661 |
+
.seed-csp4 .pre-scrollable {
|
662 |
+
max-height: 340px;
|
663 |
+
overflow-y: scroll;
|
664 |
+
}
|
665 |
+
.seed-csp4 .container {
|
666 |
+
margin-right: auto;
|
667 |
+
margin-left: auto;
|
668 |
+
padding-left: 15px;
|
669 |
+
padding-right: 15px;
|
670 |
+
}
|
671 |
+
.seed-csp4 .container:before,
|
672 |
+
.seed-csp4 .container:after {
|
673 |
+
content: " ";
|
674 |
+
display: table;
|
675 |
+
}
|
676 |
+
.seed-csp4 .container:after {
|
677 |
+
clear: both;
|
678 |
+
}
|
679 |
+
.seed-csp4 .container:before,
|
680 |
+
.seed-csp4 .container:after {
|
681 |
+
content: " ";
|
682 |
+
display: table;
|
683 |
+
}
|
684 |
+
.seed-csp4 .container:after {
|
685 |
+
clear: both;
|
686 |
+
}
|
687 |
+
@media (min-width: 768px) {
|
688 |
+
.seed-csp4 .container {
|
689 |
+
width: 750px;
|
690 |
+
}
|
691 |
+
}
|
692 |
+
@media (min-width: 992px) {
|
693 |
+
.seed-csp4 .container {
|
694 |
+
width: 970px;
|
695 |
+
}
|
696 |
+
}
|
697 |
+
@media (min-width: 1200px) {
|
698 |
+
.seed-csp4 .container {
|
699 |
+
width: 1170px;
|
700 |
+
}
|
701 |
+
}
|
702 |
+
.seed-csp4 .row {
|
703 |
+
margin-left: -15px;
|
704 |
+
margin-right: -15px;
|
705 |
+
}
|
706 |
+
.seed-csp4 .row:before,
|
707 |
+
.seed-csp4 .row:after {
|
708 |
+
content: " ";
|
709 |
+
display: table;
|
710 |
+
}
|
711 |
+
.seed-csp4 .row:after {
|
712 |
+
clear: both;
|
713 |
+
}
|
714 |
+
.seed-csp4 .row:before,
|
715 |
+
.seed-csp4 .row:after {
|
716 |
+
content: " ";
|
717 |
+
display: table;
|
718 |
+
}
|
719 |
+
.seed-csp4 .row:after {
|
720 |
+
clear: both;
|
721 |
+
}
|
722 |
+
.seed-csp4 .col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
|
723 |
+
position: relative;
|
724 |
+
min-height: 1px;
|
725 |
+
padding-left: 15px;
|
726 |
+
padding-right: 15px;
|
727 |
+
}
|
728 |
+
.seed-csp4 .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
|
729 |
+
float: left;
|
730 |
+
}
|
731 |
+
.seed-csp4 .col-xs-12 {
|
732 |
+
width: 100%;
|
733 |
+
}
|
734 |
+
.seed-csp4 .col-xs-11 {
|
735 |
+
width: 91.66666666666666%;
|
736 |
+
}
|
737 |
+
.seed-csp4 .col-xs-10 {
|
738 |
+
width: 83.33333333333334%;
|
739 |
+
}
|
740 |
+
.seed-csp4 .col-xs-9 {
|
741 |
+
width: 75%;
|
742 |
+
}
|
743 |
+
.seed-csp4 .col-xs-8 {
|
744 |
+
width: 66.66666666666666%;
|
745 |
+
}
|
746 |
+
.seed-csp4 .col-xs-7 {
|
747 |
+
width: 58.333333333333336%;
|
748 |
+
}
|
749 |
+
.seed-csp4 .col-xs-6 {
|
750 |
+
width: 50%;
|
751 |
+
}
|
752 |
+
.seed-csp4 .col-xs-5 {
|
753 |
+
width: 41.66666666666667%;
|
754 |
+
}
|
755 |
+
.seed-csp4 .col-xs-4 {
|
756 |
+
width: 33.33333333333333%;
|
757 |
+
}
|
758 |
+
.seed-csp4 .col-xs-3 {
|
759 |
+
width: 25%;
|
760 |
+
}
|
761 |
+
.seed-csp4 .col-xs-2 {
|
762 |
+
width: 16.666666666666664%;
|
763 |
+
}
|
764 |
+
.seed-csp4 .col-xs-1 {
|
765 |
+
width: 8.333333333333332%;
|
766 |
+
}
|
767 |
+
.seed-csp4 .col-xs-pull-12 {
|
768 |
+
right: 100%;
|
769 |
+
}
|
770 |
+
.seed-csp4 .col-xs-pull-11 {
|
771 |
+
right: 91.66666666666666%;
|
772 |
+
}
|
773 |
+
.seed-csp4 .col-xs-pull-10 {
|
774 |
+
right: 83.33333333333334%;
|
775 |
+
}
|
776 |
+
.seed-csp4 .col-xs-pull-9 {
|
777 |
+
right: 75%;
|
778 |
+
}
|
779 |
+
.seed-csp4 .col-xs-pull-8 {
|
780 |
+
right: 66.66666666666666%;
|
781 |
+
}
|
782 |
+
.seed-csp4 .col-xs-pull-7 {
|
783 |
+
right: 58.333333333333336%;
|
784 |
+
}
|
785 |
+
.seed-csp4 .col-xs-pull-6 {
|
786 |
+
right: 50%;
|
787 |
+
}
|
788 |
+
.seed-csp4 .col-xs-pull-5 {
|
789 |
+
right: 41.66666666666667%;
|
790 |
+
}
|
791 |
+
.seed-csp4 .col-xs-pull-4 {
|
792 |
+
right: 33.33333333333333%;
|
793 |
+
}
|
794 |
+
.seed-csp4 .col-xs-pull-3 {
|
795 |
+
right: 25%;
|
796 |
+
}
|
797 |
+
.seed-csp4 .col-xs-pull-2 {
|
798 |
+
right: 16.666666666666664%;
|
799 |
+
}
|
800 |
+
.seed-csp4 .col-xs-pull-1 {
|
801 |
+
right: 8.333333333333332%;
|
802 |
+
}
|
803 |
+
.seed-csp4 .col-xs-pull-0 {
|
804 |
+
right: 0%;
|
805 |
+
}
|
806 |
+
.seed-csp4 .col-xs-push-12 {
|
807 |
+
left: 100%;
|
808 |
+
}
|
809 |
+
.seed-csp4 .col-xs-push-11 {
|
810 |
+
left: 91.66666666666666%;
|
811 |
+
}
|
812 |
+
.seed-csp4 .col-xs-push-10 {
|
813 |
+
left: 83.33333333333334%;
|
814 |
+
}
|
815 |
+
.seed-csp4 .col-xs-push-9 {
|
816 |
+
left: 75%;
|
817 |
+
}
|
818 |
+
.seed-csp4 .col-xs-push-8 {
|
819 |
+
left: 66.66666666666666%;
|
820 |
+
}
|
821 |
+
.seed-csp4 .col-xs-push-7 {
|
822 |
+
left: 58.333333333333336%;
|
823 |
+
}
|
824 |
+
.seed-csp4 .col-xs-push-6 {
|
825 |
+
left: 50%;
|
826 |
+
}
|
827 |
+
.seed-csp4 .col-xs-push-5 {
|
828 |
+
left: 41.66666666666667%;
|
829 |
+
}
|
830 |
+
.seed-csp4 .col-xs-push-4 {
|
831 |
+
left: 33.33333333333333%;
|
832 |
+
}
|
833 |
+
.seed-csp4 .col-xs-push-3 {
|
834 |
+
left: 25%;
|
835 |
+
}
|
836 |
+
.seed-csp4 .col-xs-push-2 {
|
837 |
+
left: 16.666666666666664%;
|
838 |
+
}
|
839 |
+
.seed-csp4 .col-xs-push-1 {
|
840 |
+
left: 8.333333333333332%;
|
841 |
+
}
|
842 |
+
.seed-csp4 .col-xs-push-0 {
|
843 |
+
left: 0%;
|
844 |
+
}
|
845 |
+
.seed-csp4 .col-xs-offset-12 {
|
846 |
+
margin-left: 100%;
|
847 |
+
}
|
848 |
+
.seed-csp4 .col-xs-offset-11 {
|
849 |
+
margin-left: 91.66666666666666%;
|
850 |
+
}
|
851 |
+
.seed-csp4 .col-xs-offset-10 {
|
852 |
+
margin-left: 83.33333333333334%;
|
853 |
+
}
|
854 |
+
.seed-csp4 .col-xs-offset-9 {
|
855 |
+
margin-left: 75%;
|
856 |
+
}
|
857 |
+
.seed-csp4 .col-xs-offset-8 {
|
858 |
+
margin-left: 66.66666666666666%;
|
859 |
+
}
|
860 |
+
.seed-csp4 .col-xs-offset-7 {
|
861 |
+
margin-left: 58.333333333333336%;
|
862 |
+
}
|
863 |
+
.seed-csp4 .col-xs-offset-6 {
|
864 |
+
margin-left: 50%;
|
865 |
+
}
|
866 |
+
.seed-csp4 .col-xs-offset-5 {
|
867 |
+
margin-left: 41.66666666666667%;
|
868 |
+
}
|
869 |
+
.seed-csp4 .col-xs-offset-4 {
|
870 |
+
margin-left: 33.33333333333333%;
|
871 |
+
}
|
872 |
+
.seed-csp4 .col-xs-offset-3 {
|
873 |
+
margin-left: 25%;
|
874 |
+
}
|
875 |
+
.seed-csp4 .col-xs-offset-2 {
|
876 |
+
margin-left: 16.666666666666664%;
|
877 |
+
}
|
878 |
+
.seed-csp4 .col-xs-offset-1 {
|
879 |
+
margin-left: 8.333333333333332%;
|
880 |
+
}
|
881 |
+
.seed-csp4 .col-xs-offset-0 {
|
882 |
+
margin-left: 0%;
|
883 |
+
}
|
884 |
+
@media (min-width: 768px) {
|
885 |
+
.seed-csp4 .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
|
886 |
+
float: left;
|
887 |
+
}
|
888 |
+
.seed-csp4 .col-sm-12 {
|
889 |
+
width: 100%;
|
890 |
+
}
|
891 |
+
.seed-csp4 .col-sm-11 {
|
892 |
+
width: 91.66666666666666%;
|
893 |
+
}
|
894 |
+
.seed-csp4 .col-sm-10 {
|
895 |
+
width: 83.33333333333334%;
|
896 |
+
}
|
897 |
+
.seed-csp4 .col-sm-9 {
|
898 |
+
width: 75%;
|
899 |
+
}
|
900 |
+
.seed-csp4 .col-sm-8 {
|
901 |
+
width: 66.66666666666666%;
|
902 |
+
}
|
903 |
+
.seed-csp4 .col-sm-7 {
|
904 |
+
width: 58.333333333333336%;
|
905 |
+
}
|
906 |
+
.seed-csp4 .col-sm-6 {
|
907 |
+
width: 50%;
|
908 |
+
}
|
909 |
+
.seed-csp4 .col-sm-5 {
|
910 |
+
width: 41.66666666666667%;
|
911 |
+
}
|
912 |
+
.seed-csp4 .col-sm-4 {
|
913 |
+
width: 33.33333333333333%;
|
914 |
+
}
|
915 |
+
.seed-csp4 .col-sm-3 {
|
916 |
+
width: 25%;
|
917 |
+
}
|
918 |
+
.seed-csp4 .col-sm-2 {
|
919 |
+
width: 16.666666666666664%;
|
920 |
+
}
|
921 |
+
.seed-csp4 .col-sm-1 {
|
922 |
+
width: 8.333333333333332%;
|
923 |
+
}
|
924 |
+
.seed-csp4 .col-sm-pull-12 {
|
925 |
+
right: 100%;
|
926 |
+
}
|
927 |
+
.seed-csp4 .col-sm-pull-11 {
|
928 |
+
right: 91.66666666666666%;
|
929 |
+
}
|
930 |
+
.seed-csp4 .col-sm-pull-10 {
|
931 |
+
right: 83.33333333333334%;
|
932 |
+
}
|
933 |
+
.seed-csp4 .col-sm-pull-9 {
|
934 |
+
right: 75%;
|
935 |
+
}
|
936 |
+
.seed-csp4 .col-sm-pull-8 {
|
937 |
+
right: 66.66666666666666%;
|
938 |
+
}
|
939 |
+
.seed-csp4 .col-sm-pull-7 {
|
940 |
+
right: 58.333333333333336%;
|
941 |
+
}
|
942 |
+
.seed-csp4 .col-sm-pull-6 {
|
943 |
+
right: 50%;
|
944 |
+
}
|
945 |
+
.seed-csp4 .col-sm-pull-5 {
|
946 |
+
right: 41.66666666666667%;
|
947 |
+
}
|
948 |
+
.seed-csp4 .col-sm-pull-4 {
|
949 |
+
right: 33.33333333333333%;
|
950 |
+
}
|
951 |
+
.seed-csp4 .col-sm-pull-3 {
|
952 |
+
right: 25%;
|
953 |
+
}
|
954 |
+
.seed-csp4 .col-sm-pull-2 {
|
955 |
+
right: 16.666666666666664%;
|
956 |
+
}
|
957 |
+
.seed-csp4 .col-sm-pull-1 {
|
958 |
+
right: 8.333333333333332%;
|
959 |
+
}
|
960 |
+
.seed-csp4 .col-sm-pull-0 {
|
961 |
+
right: 0%;
|
962 |
+
}
|
963 |
+
.seed-csp4 .col-sm-push-12 {
|
964 |
+
left: 100%;
|
965 |
+
}
|
966 |
+
.seed-csp4 .col-sm-push-11 {
|
967 |
+
left: 91.66666666666666%;
|
968 |
+
}
|
969 |
+
.seed-csp4 .col-sm-push-10 {
|
970 |
+
left: 83.33333333333334%;
|
971 |
+
}
|
972 |
+
.seed-csp4 .col-sm-push-9 {
|
973 |
+
left: 75%;
|
974 |
+
}
|
975 |
+
.seed-csp4 .col-sm-push-8 {
|
976 |
+
left: 66.66666666666666%;
|
977 |
+
}
|
978 |
+
.seed-csp4 .col-sm-push-7 {
|
979 |
+
left: 58.333333333333336%;
|
980 |
+
}
|
981 |
+
.seed-csp4 .col-sm-push-6 {
|
982 |
+
left: 50%;
|
983 |
+
}
|
984 |
+
.seed-csp4 .col-sm-push-5 {
|
985 |
+
left: 41.66666666666667%;
|
986 |
+
}
|
987 |
+
.seed-csp4 .col-sm-push-4 {
|
988 |
+
left: 33.33333333333333%;
|
989 |
+
}
|
990 |
+
.seed-csp4 .col-sm-push-3 {
|
991 |
+
left: 25%;
|
992 |
+
}
|
993 |
+
.seed-csp4 .col-sm-push-2 {
|
994 |
+
left: 16.666666666666664%;
|
995 |
+
}
|
996 |
+
.seed-csp4 .col-sm-push-1 {
|
997 |
+
left: 8.333333333333332%;
|
998 |
+
}
|
999 |
+
.seed-csp4 .col-sm-push-0 {
|
1000 |
+
left: 0%;
|
1001 |
+
}
|
1002 |
+
.seed-csp4 .col-sm-offset-12 {
|
1003 |
+
margin-left: 100%;
|
1004 |
+
}
|
1005 |
+
.seed-csp4 .col-sm-offset-11 {
|
1006 |
+
margin-left: 91.66666666666666%;
|
1007 |
+
}
|
1008 |
+
.seed-csp4 .col-sm-offset-10 {
|
1009 |
+
margin-left: 83.33333333333334%;
|
1010 |
+
}
|
1011 |
+
.seed-csp4 .col-sm-offset-9 {
|
1012 |
+
margin-left: 75%;
|
1013 |
+
}
|
1014 |
+
.seed-csp4 .col-sm-offset-8 {
|
1015 |
+
margin-left: 66.66666666666666%;
|
1016 |
+
}
|
1017 |
+
.seed-csp4 .col-sm-offset-7 {
|
1018 |
+
margin-left: 58.333333333333336%;
|
1019 |
+
}
|
1020 |
+
.seed-csp4 .col-sm-offset-6 {
|
1021 |
+
margin-left: 50%;
|
1022 |
+
}
|
1023 |
+
.seed-csp4 .col-sm-offset-5 {
|
1024 |
+
margin-left: 41.66666666666667%;
|
1025 |
+
}
|
1026 |
+
.seed-csp4 .col-sm-offset-4 {
|
1027 |
+
margin-left: 33.33333333333333%;
|
1028 |
+
}
|
1029 |
+
.seed-csp4 .col-sm-offset-3 {
|
1030 |
+
margin-left: 25%;
|
1031 |
+
}
|
1032 |
+
.seed-csp4 .col-sm-offset-2 {
|
1033 |
+
margin-left: 16.666666666666664%;
|
1034 |
+
}
|
1035 |
+
.seed-csp4 .col-sm-offset-1 {
|
1036 |
+
margin-left: 8.333333333333332%;
|
1037 |
+
}
|
1038 |
+
.seed-csp4 .col-sm-offset-0 {
|
1039 |
+
margin-left: 0%;
|
1040 |
+
}
|
1041 |
+
}
|
1042 |
+
@media (min-width: 992px) {
|
1043 |
+
.seed-csp4 .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
|
1044 |
+
float: left;
|
1045 |
+
}
|
1046 |
+
.seed-csp4 .col-md-12 {
|
1047 |
+
width: 100%;
|
1048 |
+
}
|
1049 |
+
.seed-csp4 .col-md-11 {
|
1050 |
+
width: 91.66666666666666%;
|
1051 |
+
}
|
1052 |
+
.seed-csp4 .col-md-10 {
|
1053 |
+
width: 83.33333333333334%;
|
1054 |
+
}
|
1055 |
+
.seed-csp4 .col-md-9 {
|
1056 |
+
width: 75%;
|
1057 |
+
}
|
1058 |
+
.seed-csp4 .col-md-8 {
|
1059 |
+
width: 66.66666666666666%;
|
1060 |
+
}
|
1061 |
+
.seed-csp4 .col-md-7 {
|
1062 |
+
width: 58.333333333333336%;
|
1063 |
+
}
|
1064 |
+
.seed-csp4 .col-md-6 {
|
1065 |
+
width: 50%;
|
1066 |
+
}
|
1067 |
+
.seed-csp4 .col-md-5 {
|
1068 |
+
width: 41.66666666666667%;
|
1069 |
+
}
|
1070 |
+
.seed-csp4 .col-md-4 {
|
1071 |
+
width: 33.33333333333333%;
|
1072 |
+
}
|
1073 |
+
.seed-csp4 .col-md-3 {
|
1074 |
+
width: 25%;
|
1075 |
+
}
|
1076 |
+
.seed-csp4 .col-md-2 {
|
1077 |
+
width: 16.666666666666664%;
|
1078 |
+
}
|
1079 |
+
.seed-csp4 .col-md-1 {
|
1080 |
+
width: 8.333333333333332%;
|
1081 |
+
}
|
1082 |
+
.seed-csp4 .col-md-pull-12 {
|
1083 |
+
right: 100%;
|
1084 |
+
}
|
1085 |
+
.seed-csp4 .col-md-pull-11 {
|
1086 |
+
right: 91.66666666666666%;
|
1087 |
+
}
|
1088 |
+
.seed-csp4 .col-md-pull-10 {
|
1089 |
+
right: 83.33333333333334%;
|
1090 |
+
}
|
1091 |
+
.seed-csp4 .col-md-pull-9 {
|
1092 |
+
right: 75%;
|
1093 |
+
}
|
1094 |
+
.seed-csp4 .col-md-pull-8 {
|
1095 |
+
right: 66.66666666666666%;
|
1096 |
+
}
|
1097 |
+
.seed-csp4 .col-md-pull-7 {
|
1098 |
+
right: 58.333333333333336%;
|
1099 |
+
}
|
1100 |
+
.seed-csp4 .col-md-pull-6 {
|
1101 |
+
right: 50%;
|
1102 |
+
}
|
1103 |
+
.seed-csp4 .col-md-pull-5 {
|
1104 |
+
right: 41.66666666666667%;
|
1105 |
+
}
|
1106 |
+
.seed-csp4 .col-md-pull-4 {
|
1107 |
+
right: 33.33333333333333%;
|
1108 |
+
}
|
1109 |
+
.seed-csp4 .col-md-pull-3 {
|
1110 |
+
right: 25%;
|
1111 |
+
}
|
1112 |
+
.seed-csp4 .col-md-pull-2 {
|
1113 |
+
right: 16.666666666666664%;
|
1114 |
+
}
|
1115 |
+
.seed-csp4 .col-md-pull-1 {
|
1116 |
+
right: 8.333333333333332%;
|
1117 |
+
}
|
1118 |
+
.seed-csp4 .col-md-pull-0 {
|
1119 |
+
right: 0%;
|
1120 |
+
}
|
1121 |
+
.seed-csp4 .col-md-push-12 {
|
1122 |
+
left: 100%;
|
1123 |
+
}
|
1124 |
+
.seed-csp4 .col-md-push-11 {
|
1125 |
+
left: 91.66666666666666%;
|
1126 |
+
}
|
1127 |
+
.seed-csp4 .col-md-push-10 {
|
1128 |
+
left: 83.33333333333334%;
|
1129 |
+
}
|
1130 |
+
.seed-csp4 .col-md-push-9 {
|
1131 |
+
left: 75%;
|
1132 |
+
}
|
1133 |
+
.seed-csp4 .col-md-push-8 {
|
1134 |
+
left: 66.66666666666666%;
|
1135 |
+
}
|
1136 |
+
.seed-csp4 .col-md-push-7 {
|
1137 |
+
left: 58.333333333333336%;
|
1138 |
+
}
|
1139 |
+
.seed-csp4 .col-md-push-6 {
|
1140 |
+
left: 50%;
|
1141 |
+
}
|
1142 |
+
.seed-csp4 .col-md-push-5 {
|
1143 |
+
left: 41.66666666666667%;
|
1144 |
+
}
|
1145 |
+
.seed-csp4 .col-md-push-4 {
|
1146 |
+
left: 33.33333333333333%;
|
1147 |
+
}
|
1148 |
+
.seed-csp4 .col-md-push-3 {
|
1149 |
+
left: 25%;
|
1150 |
+
}
|
1151 |
+
.seed-csp4 .col-md-push-2 {
|
1152 |
+
left: 16.666666666666664%;
|
1153 |
+
}
|
1154 |
+
.seed-csp4 .col-md-push-1 {
|
1155 |
+
left: 8.333333333333332%;
|
1156 |
+
}
|
1157 |
+
.seed-csp4 .col-md-push-0 {
|
1158 |
+
left: 0%;
|
1159 |
+
}
|
1160 |
+
.seed-csp4 .col-md-offset-12 {
|
1161 |
+
margin-left: 100%;
|
1162 |
+
}
|
1163 |
+
.seed-csp4 .col-md-offset-11 {
|
1164 |
+
margin-left: 91.66666666666666%;
|
1165 |
+
}
|
1166 |
+
.seed-csp4 .col-md-offset-10 {
|
1167 |
+
margin-left: 83.33333333333334%;
|
1168 |
+
}
|
1169 |
+
.seed-csp4 .col-md-offset-9 {
|
1170 |
+
margin-left: 75%;
|
1171 |
+
}
|
1172 |
+
.seed-csp4 .col-md-offset-8 {
|
1173 |
+
margin-left: 66.66666666666666%;
|
1174 |
+
}
|
1175 |
+
.seed-csp4 .col-md-offset-7 {
|
1176 |
+
margin-left: 58.333333333333336%;
|
1177 |
+
}
|
1178 |
+
.seed-csp4 .col-md-offset-6 {
|
1179 |
+
margin-left: 50%;
|
1180 |
+
}
|
1181 |
+
.seed-csp4 .col-md-offset-5 {
|
1182 |
+
margin-left: 41.66666666666667%;
|
1183 |
+
}
|
1184 |
+
.seed-csp4 .col-md-offset-4 {
|
1185 |
+
margin-left: 33.33333333333333%;
|
1186 |
+
}
|
1187 |
+
.seed-csp4 .col-md-offset-3 {
|
1188 |
+
margin-left: 25%;
|
1189 |
+
}
|
1190 |
+
.seed-csp4 .col-md-offset-2 {
|
1191 |
+
margin-left: 16.666666666666664%;
|
1192 |
+
}
|
1193 |
+
.seed-csp4 .col-md-offset-1 {
|
1194 |
+
margin-left: 8.333333333333332%;
|
1195 |
+
}
|
1196 |
+
.seed-csp4 .col-md-offset-0 {
|
1197 |
+
margin-left: 0%;
|
1198 |
+
}
|
1199 |
+
}
|
1200 |
+
@media (min-width: 1200px) {
|
1201 |
+
.seed-csp4 .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
|
1202 |
+
float: left;
|
1203 |
+
}
|
1204 |
+
.seed-csp4 .col-lg-12 {
|
1205 |
+
width: 100%;
|
1206 |
+
}
|
1207 |
+
.seed-csp4 .col-lg-11 {
|
1208 |
+
width: 91.66666666666666%;
|
1209 |
+
}
|
1210 |
+
.seed-csp4 .col-lg-10 {
|
1211 |
+
width: 83.33333333333334%;
|
1212 |
+
}
|
1213 |
+
.seed-csp4 .col-lg-9 {
|
1214 |
+
width: 75%;
|
1215 |
+
}
|
1216 |
+
.seed-csp4 .col-lg-8 {
|
1217 |
+
width: 66.66666666666666%;
|
1218 |
+
}
|
1219 |
+
.seed-csp4 .col-lg-7 {
|
1220 |
+
width: 58.333333333333336%;
|
1221 |
+
}
|
1222 |
+
.seed-csp4 .col-lg-6 {
|
1223 |
+
width: 50%;
|
1224 |
+
}
|
1225 |
+
.seed-csp4 .col-lg-5 {
|
1226 |
+
width: 41.66666666666667%;
|
1227 |
+
}
|
1228 |
+
.seed-csp4 .col-lg-4 {
|
1229 |
+
width: 33.33333333333333%;
|
1230 |
+
}
|
1231 |
+
.seed-csp4 .col-lg-3 {
|
1232 |
+
width: 25%;
|
1233 |
+
}
|
1234 |
+
.seed-csp4 .col-lg-2 {
|
1235 |
+
width: 16.666666666666664%;
|
1236 |
+
}
|
1237 |
+
.seed-csp4 .col-lg-1 {
|
1238 |
+
width: 8.333333333333332%;
|
1239 |
+
}
|
1240 |
+
.seed-csp4 .col-lg-pull-12 {
|
1241 |
+
right: 100%;
|
1242 |
+
}
|
1243 |
+
.seed-csp4 .col-lg-pull-11 {
|
1244 |
+
right: 91.66666666666666%;
|
1245 |
+
}
|
1246 |
+
.seed-csp4 .col-lg-pull-10 {
|
1247 |
+
right: 83.33333333333334%;
|
1248 |
+
}
|
1249 |
+
.seed-csp4 .col-lg-pull-9 {
|
1250 |
+
right: 75%;
|
1251 |
+
}
|
1252 |
+
.seed-csp4 .col-lg-pull-8 {
|
1253 |
+
right: 66.66666666666666%;
|
1254 |
+
}
|
1255 |
+
.seed-csp4 .col-lg-pull-7 {
|
1256 |
+
right: 58.333333333333336%;
|
1257 |
+
}
|
1258 |
+
.seed-csp4 .col-lg-pull-6 {
|
1259 |
+
right: 50%;
|
1260 |
+
}
|
1261 |
+
.seed-csp4 .col-lg-pull-5 {
|
1262 |
+
right: 41.66666666666667%;
|
1263 |
+
}
|
1264 |
+
.seed-csp4 .col-lg-pull-4 {
|
1265 |
+
right: 33.33333333333333%;
|
1266 |
+
}
|
1267 |
+
.seed-csp4 .col-lg-pull-3 {
|
1268 |
+
right: 25%;
|
1269 |
+
}
|
1270 |
+
.seed-csp4 .col-lg-pull-2 {
|
1271 |
+
right: 16.666666666666664%;
|
1272 |
+
}
|
1273 |
+
.seed-csp4 .col-lg-pull-1 {
|
1274 |
+
right: 8.333333333333332%;
|
1275 |
+
}
|
1276 |
+
.seed-csp4 .col-lg-pull-0 {
|
1277 |
+
right: 0%;
|
1278 |
+
}
|
1279 |
+
.seed-csp4 .col-lg-push-12 {
|
1280 |
+
left: 100%;
|
1281 |
+
}
|
1282 |
+
.seed-csp4 .col-lg-push-11 {
|
1283 |
+
left: 91.66666666666666%;
|
1284 |
+
}
|
1285 |
+
.seed-csp4 .col-lg-push-10 {
|
1286 |
+
left: 83.33333333333334%;
|
1287 |
+
}
|
1288 |
+
.seed-csp4 .col-lg-push-9 {
|
1289 |
+
left: 75%;
|
1290 |
+
}
|
1291 |
+
.seed-csp4 .col-lg-push-8 {
|
1292 |
+
left: 66.66666666666666%;
|
1293 |
+
}
|
1294 |
+
.seed-csp4 .col-lg-push-7 {
|
1295 |
+
left: 58.333333333333336%;
|
1296 |
+
}
|
1297 |
+
.seed-csp4 .col-lg-push-6 {
|
1298 |
+
left: 50%;
|
1299 |
+
}
|
1300 |
+
.seed-csp4 .col-lg-push-5 {
|
1301 |
+
left: 41.66666666666667%;
|
1302 |
+
}
|
1303 |
+
.seed-csp4 .col-lg-push-4 {
|
1304 |
+
left: 33.33333333333333%;
|
1305 |
+
}
|
1306 |
+
.seed-csp4 .col-lg-push-3 {
|
1307 |
+
left: 25%;
|
1308 |
+
}
|
1309 |
+
.seed-csp4 .col-lg-push-2 {
|
1310 |
+
left: 16.666666666666664%;
|
1311 |
+
}
|
1312 |
+
.seed-csp4 .col-lg-push-1 {
|
1313 |
+
left: 8.333333333333332%;
|
1314 |
+
}
|
1315 |
+
.seed-csp4 .col-lg-push-0 {
|
1316 |
+
left: 0%;
|
1317 |
+
}
|
1318 |
+
.seed-csp4 .col-lg-offset-12 {
|
1319 |
+
margin-left: 100%;
|
1320 |
+
}
|
1321 |
+
.seed-csp4 .col-lg-offset-11 {
|
1322 |
+
margin-left: 91.66666666666666%;
|
1323 |
+
}
|
1324 |
+
.seed-csp4 .col-lg-offset-10 {
|
1325 |
+
margin-left: 83.33333333333334%;
|
1326 |
+
}
|
1327 |
+
.seed-csp4 .col-lg-offset-9 {
|
1328 |
+
margin-left: 75%;
|
1329 |
+
}
|
1330 |
+
.seed-csp4 .col-lg-offset-8 {
|
1331 |
+
margin-left: 66.66666666666666%;
|
1332 |
+
}
|
1333 |
+
.seed-csp4 .col-lg-offset-7 {
|
1334 |
+
margin-left: 58.333333333333336%;
|
1335 |
+
}
|
1336 |
+
.seed-csp4 .col-lg-offset-6 {
|
1337 |
+
margin-left: 50%;
|
1338 |
+
}
|
1339 |
+
.seed-csp4 .col-lg-offset-5 {
|
1340 |
+
margin-left: 41.66666666666667%;
|
1341 |
+
}
|
1342 |
+
.seed-csp4 .col-lg-offset-4 {
|
1343 |
+
margin-left: 33.33333333333333%;
|
1344 |
+
}
|
1345 |
+
.seed-csp4 .col-lg-offset-3 {
|
1346 |
+
margin-left: 25%;
|
1347 |
+
}
|
1348 |
+
.seed-csp4 .col-lg-offset-2 {
|
1349 |
+
margin-left: 16.666666666666664%;
|
1350 |
+
}
|
1351 |
+
.seed-csp4 .col-lg-offset-1 {
|
1352 |
+
margin-left: 8.333333333333332%;
|
1353 |
+
}
|
1354 |
+
.seed-csp4 .col-lg-offset-0 {
|
1355 |
+
margin-left: 0%;
|
1356 |
+
}
|
1357 |
+
}
|
1358 |
+
.seed-csp4 table {
|
1359 |
+
max-width: 100%;
|
1360 |
+
background-color: transparent;
|
1361 |
+
}
|
1362 |
+
.seed-csp4 th {
|
1363 |
+
text-align: left;
|
1364 |
+
}
|
1365 |
+
.seed-csp4 .table {
|
1366 |
+
width: 100%;
|
1367 |
+
margin-bottom: 20px;
|
1368 |
+
}
|
1369 |
+
.seed-csp4 .table > thead > tr > th,
|
1370 |
+
.seed-csp4 .table > tbody > tr > th,
|
1371 |
+
.seed-csp4 .table > tfoot > tr > th,
|
1372 |
+
.seed-csp4 .table > thead > tr > td,
|
1373 |
+
.seed-csp4 .table > tbody > tr > td,
|
1374 |
+
.seed-csp4 .table > tfoot > tr > td {
|
1375 |
+
padding: 8px;
|
1376 |
+
line-height: 1.428571429;
|
1377 |
+
vertical-align: top;
|
1378 |
+
border-top: 1px solid #dddddd;
|
1379 |
+
}
|
1380 |
+
.seed-csp4 .table > thead > tr > th {
|
1381 |
+
vertical-align: bottom;
|
1382 |
+
border-bottom: 2px solid #dddddd;
|
1383 |
+
}
|
1384 |
+
.seed-csp4 .table > caption + thead > tr:first-child > th,
|
1385 |
+
.seed-csp4 .table > colgroup + thead > tr:first-child > th,
|
1386 |
+
.seed-csp4 .table > thead:first-child > tr:first-child > th,
|
1387 |
+
.seed-csp4 .table > caption + thead > tr:first-child > td,
|
1388 |
+
.seed-csp4 .table > colgroup + thead > tr:first-child > td,
|
1389 |
+
.seed-csp4 .table > thead:first-child > tr:first-child > td {
|
1390 |
+
border-top: 0;
|
1391 |
+
}
|
1392 |
+
.seed-csp4 .table > tbody + tbody {
|
1393 |
+
border-top: 2px solid #dddddd;
|
1394 |
+
}
|
1395 |
+
.seed-csp4 .table .table {
|
1396 |
+
background-color: #ffffff;
|
1397 |
+
}
|
1398 |
+
.seed-csp4 .table-condensed > thead > tr > th,
|
1399 |
+
.seed-csp4 .table-condensed > tbody > tr > th,
|
1400 |
+
.seed-csp4 .table-condensed > tfoot > tr > th,
|
1401 |
+
.seed-csp4 .table-condensed > thead > tr > td,
|
1402 |
+
.seed-csp4 .table-condensed > tbody > tr > td,
|
1403 |
+
.seed-csp4 .table-condensed > tfoot > tr > td {
|
1404 |
+
padding: 5px;
|
1405 |
+
}
|
1406 |
+
.seed-csp4 .table-bordered {
|
1407 |
+
border: 1px solid #dddddd;
|
1408 |
+
}
|
1409 |
+
.seed-csp4 .table-bordered > thead > tr > th,
|
1410 |
+
.seed-csp4 .table-bordered > tbody > tr > th,
|
1411 |
+
.seed-csp4 .table-bordered > tfoot > tr > th,
|
1412 |
+
.seed-csp4 .table-bordered > thead > tr > td,
|
1413 |
+
.seed-csp4 .table-bordered > tbody > tr > td,
|
1414 |
+
.seed-csp4 .table-bordered > tfoot > tr > td {
|
1415 |
+
border: 1px solid #dddddd;
|
1416 |
+
}
|
1417 |
+
.seed-csp4 .table-bordered > thead > tr > th,
|
1418 |
+
.seed-csp4 .table-bordered > thead > tr > td {
|
1419 |
+
border-bottom-width: 2px;
|
1420 |
+
}
|
1421 |
+
.seed-csp4 .table-striped > tbody > tr:nth-child(odd) > td,
|
1422 |
+
.seed-csp4 .table-striped > tbody > tr:nth-child(odd) > th {
|
1423 |
+
background-color: #f9f9f9;
|
1424 |
+
}
|
1425 |
+
.seed-csp4 .table-hover > tbody > tr:hover > td,
|
1426 |
+
.seed-csp4 .table-hover > tbody > tr:hover > th {
|
1427 |
+
background-color: #f5f5f5;
|
1428 |
+
}
|
1429 |
+
.seed-csp4 table col[class*="col-"] {
|
1430 |
+
position: static;
|
1431 |
+
float: none;
|
1432 |
+
display: table-column;
|
1433 |
+
}
|
1434 |
+
.seed-csp4 table td[class*="col-"],
|
1435 |
+
.seed-csp4 table th[class*="col-"] {
|
1436 |
+
float: none;
|
1437 |
+
display: table-cell;
|
1438 |
+
}
|
1439 |
+
.seed-csp4 .table > thead > tr > .active,
|
1440 |
+
.seed-csp4 .table > tbody > tr > .active,
|
1441 |
+
.seed-csp4 .table > tfoot > tr > .active,
|
1442 |
+
.seed-csp4 .table > thead > .active > td,
|
1443 |
+
.seed-csp4 .table > tbody > .active > td,
|
1444 |
+
.seed-csp4 .table > tfoot > .active > td,
|
1445 |
+
.seed-csp4 .table > thead > .active > th,
|
1446 |
+
.seed-csp4 .table > tbody > .active > th,
|
1447 |
+
.seed-csp4 .table > tfoot > .active > th {
|
1448 |
+
background-color: #f5f5f5;
|
1449 |
+
}
|
1450 |
+
.seed-csp4 .table-hover > tbody > tr > .active:hover,
|
1451 |
+
.seed-csp4 .table-hover > tbody > .active:hover > td,
|
1452 |
+
.seed-csp4 .table-hover > tbody > .active:hover > th {
|
1453 |
+
background-color: #e8e8e8;
|
1454 |
+
}
|
1455 |
+
.seed-csp4 .table > thead > tr > .success,
|
1456 |
+
.seed-csp4 .table > tbody > tr > .success,
|
1457 |
+
.seed-csp4 .table > tfoot > tr > .success,
|
1458 |
+
.seed-csp4 .table > thead > .success > td,
|
1459 |
+
.seed-csp4 .table > tbody > .success > td,
|
1460 |
+
.seed-csp4 .table > tfoot > .success > td,
|
1461 |
+
.seed-csp4 .table > thead > .success > th,
|
1462 |
+
.seed-csp4 .table > tbody > .success > th,
|
1463 |
+
.seed-csp4 .table > tfoot > .success > th {
|
1464 |
+
background-color: #dff0d8;
|
1465 |
+
}
|
1466 |
+
.seed-csp4 .table-hover > tbody > tr > .success:hover,
|
1467 |
+
.seed-csp4 .table-hover > tbody > .success:hover > td,
|
1468 |
+
.seed-csp4 .table-hover > tbody > .success:hover > th {
|
1469 |
+
background-color: #d0e9c6;
|
1470 |
+
}
|
1471 |
+
.seed-csp4 .table > thead > tr > .danger,
|
1472 |
+
.seed-csp4 .table > tbody > tr > .danger,
|
1473 |
+
.seed-csp4 .table > tfoot > tr > .danger,
|
1474 |
+
.seed-csp4 .table > thead > .danger > td,
|
1475 |
+
.seed-csp4 .table > tbody > .danger > td,
|
1476 |
+
.seed-csp4 .table > tfoot > .danger > td,
|
1477 |
+
.seed-csp4 .table > thead > .danger > th,
|
1478 |
+
.seed-csp4 .table > tbody > .danger > th,
|
1479 |
+
.seed-csp4 .table > tfoot > .danger > th {
|
1480 |
+
background-color: #f2dede;
|
1481 |
+
}
|
1482 |
+
.seed-csp4 .table-hover > tbody > tr > .danger:hover,
|
1483 |
+
.seed-csp4 .table-hover > tbody > .danger:hover > td,
|
1484 |
+
.seed-csp4 .table-hover > tbody > .danger:hover > th {
|
1485 |
+
background-color: #ebcccc;
|
1486 |
+
}
|
1487 |
+
.seed-csp4 .table > thead > tr > .warning,
|
1488 |
+
.seed-csp4 .table > tbody > tr > .warning,
|
1489 |
+
.seed-csp4 .table > tfoot > tr > .warning,
|
1490 |
+
.seed-csp4 .table > thead > .warning > td,
|
1491 |
+
.seed-csp4 .table > tbody > .warning > td,
|
1492 |
+
.seed-csp4 .table > tfoot > .warning > td,
|
1493 |
+
.seed-csp4 .table > thead > .warning > th,
|
1494 |
+
.seed-csp4 .table > tbody > .warning > th,
|
1495 |
+
.seed-csp4 .table > tfoot > .warning > th {
|
1496 |
+
background-color: #fcf8e3;
|
1497 |
+
}
|
1498 |
+
.seed-csp4 .table-hover > tbody > tr > .warning:hover,
|
1499 |
+
.seed-csp4 .table-hover > tbody > .warning:hover > td,
|
1500 |
+
.seed-csp4 .table-hover > tbody > .warning:hover > th {
|
1501 |
+
background-color: #faf2cc;
|
1502 |
+
}
|
1503 |
+
@media (max-width: 767px) {
|
1504 |
+
.seed-csp4 .table-responsive {
|
1505 |
+
width: 100%;
|
1506 |
+
margin-bottom: 15px;
|
1507 |
+
overflow-y: hidden;
|
1508 |
+
overflow-x: scroll;
|
1509 |
+
-ms-overflow-style: -ms-autohiding-scrollbar;
|
1510 |
+
border: 1px solid #dddddd;
|
1511 |
+
-webkit-overflow-scrolling: touch;
|
1512 |
+
}
|
1513 |
+
.seed-csp4 .table-responsive > .table {
|
1514 |
+
margin-bottom: 0;
|
1515 |
+
}
|
1516 |
+
.seed-csp4 .table-responsive > .table > thead > tr > th,
|
1517 |
+
.seed-csp4 .table-responsive > .table > tbody > tr > th,
|
1518 |
+
.seed-csp4 .table-responsive > .table > tfoot > tr > th,
|
1519 |
+
.seed-csp4 .table-responsive > .table > thead > tr > td,
|
1520 |
+
.seed-csp4 .table-responsive > .table > tbody > tr > td,
|
1521 |
+
.seed-csp4 .table-responsive > .table > tfoot > tr > td {
|
1522 |
+
white-space: nowrap;
|
1523 |
+
}
|
1524 |
+
.seed-csp4 .table-responsive > .table-bordered {
|
1525 |
+
border: 0;
|
1526 |
+
}
|
1527 |
+
.seed-csp4 .table-responsive > .table-bordered > thead > tr > th:first-child,
|
1528 |
+
.seed-csp4 .table-responsive > .table-bordered > tbody > tr > th:first-child,
|
1529 |
+
.seed-csp4 .table-responsive > .table-bordered > tfoot > tr > th:first-child,
|
1530 |
+
.seed-csp4 .table-responsive > .table-bordered > thead > tr > td:first-child,
|
1531 |
+
.seed-csp4 .table-responsive > .table-bordered > tbody > tr > td:first-child,
|
1532 |
+
.seed-csp4 .table-responsive > .table-bordered > tfoot > tr > td:first-child {
|
1533 |
+
border-left: 0;
|
1534 |
+
}
|
1535 |
+
.seed-csp4 .table-responsive > .table-bordered > thead > tr > th:last-child,
|
1536 |
+
.seed-csp4 .table-responsive > .table-bordered > tbody > tr > th:last-child,
|
1537 |
+
.seed-csp4 .table-responsive > .table-bordered > tfoot > tr > th:last-child,
|
1538 |
+
.seed-csp4 .table-responsive > .table-bordered > thead > tr > td:last-child,
|
1539 |
+
.seed-csp4 .table-responsive > .table-bordered > tbody > tr > td:last-child,
|
1540 |
+
.seed-csp4 .table-responsive > .table-bordered > tfoot > tr > td:last-child {
|
1541 |
+
border-right: 0;
|
1542 |
+
}
|
1543 |
+
.seed-csp4 .table-responsive > .table-bordered > tbody > tr:last-child > th,
|
1544 |
+
.seed-csp4 .table-responsive > .table-bordered > tfoot > tr:last-child > th,
|
1545 |
+
.seed-csp4 .table-responsive > .table-bordered > tbody > tr:last-child > td,
|
1546 |
+
.seed-csp4 .table-responsive > .table-bordered > tfoot > tr:last-child > td {
|
1547 |
+
border-bottom: 0;
|
1548 |
+
}
|
1549 |
+
}
|
1550 |
+
.seed-csp4 fieldset {
|
1551 |
+
padding: 0;
|
1552 |
+
margin: 0;
|
1553 |
+
border: 0;
|
1554 |
+
}
|
1555 |
+
.seed-csp4 legend {
|
1556 |
+
display: block;
|
1557 |
+
width: 100%;
|
1558 |
+
padding: 0;
|
1559 |
+
margin-bottom: 20px;
|
1560 |
+
font-size: 21px;
|
1561 |
+
line-height: inherit;
|
1562 |
+
color: #333333;
|
1563 |
+
border: 0;
|
1564 |
+
border-bottom: 1px solid #e5e5e5;
|
1565 |
+
}
|
1566 |
+
.seed-csp4 label {
|
1567 |
+
display: inline-block;
|
1568 |
+
margin-bottom: 5px;
|
1569 |
+
font-weight: bold;
|
1570 |
+
}
|
1571 |
+
.seed-csp4 input[type="search"] {
|
1572 |
+
-webkit-box-sizing: border-box;
|
1573 |
+
-moz-box-sizing: border-box;
|
1574 |
+
box-sizing: border-box;
|
1575 |
+
}
|
1576 |
+
.seed-csp4 input[type="radio"],
|
1577 |
+
.seed-csp4 input[type="checkbox"] {
|
1578 |
+
margin: 4px 0 0;
|
1579 |
+
margin-top: 1px \9;
|
1580 |
+
/* IE8-9 */
|
1581 |
+
line-height: normal;
|
1582 |
+
}
|
1583 |
+
.seed-csp4 input[type="file"] {
|
1584 |
+
display: block;
|
1585 |
+
}
|
1586 |
+
.seed-csp4 select[multiple],
|
1587 |
+
.seed-csp4 select[size] {
|
1588 |
+
height: auto;
|
1589 |
+
}
|
1590 |
+
.seed-csp4 select optgroup {
|
1591 |
+
font-size: inherit;
|
1592 |
+
font-style: inherit;
|
1593 |
+
font-family: inherit;
|
1594 |
+
}
|
1595 |
+
.seed-csp4 input[type="file"]:focus,
|
1596 |
+
.seed-csp4 input[type="radio"]:focus,
|
1597 |
+
.seed-csp4 input[type="checkbox"]:focus {
|
1598 |
+
outline: thin dotted;
|
1599 |
+
outline: 5px auto -webkit-focus-ring-color;
|
1600 |
+
outline-offset: -2px;
|
1601 |
+
}
|
1602 |
+
.seed-csp4 input[type="number"]::-webkit-outer-spin-button,
|
1603 |
+
.seed-csp4 input[type="number"]::-webkit-inner-spin-button {
|
1604 |
+
height: auto;
|
1605 |
+
}
|
1606 |
+
.seed-csp4 output {
|
1607 |
+
display: block;
|
1608 |
+
padding-top: 7px;
|
1609 |
+
font-size: 14px;
|
1610 |
+
line-height: 1.428571429;
|
1611 |
+
color: #555555;
|
1612 |
+
vertical-align: middle;
|
1613 |
+
}
|
1614 |
+
.seed-csp4 .form-control {
|
1615 |
+
display: block;
|
1616 |
+
width: 100%;
|
1617 |
+
height: 34px;
|
1618 |
+
padding: 6px 12px;
|
1619 |
+
font-size: 14px;
|
1620 |
+
line-height: 1.428571429;
|
1621 |
+
color: #555555;
|
1622 |
+
vertical-align: middle;
|
1623 |
+
background-color: #ffffff;
|
1624 |
+
background-image: none;
|
1625 |
+
border: 1px solid #cccccc;
|
1626 |
+
border-radius: 4px;
|
1627 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
1628 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
1629 |
+
-webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
|
1630 |
+
transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
|
1631 |
+
}
|
1632 |
+
.seed-csp4 .form-control:focus {
|
1633 |
+
border-color: #66afe9;
|
1634 |
+
outline: 0;
|
1635 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
|
1636 |
+
box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
|
1637 |
+
}
|
1638 |
+
.seed-csp4 .form-control:-moz-placeholder {
|
1639 |
+
color: #999999;
|
1640 |
+
}
|
1641 |
+
.seed-csp4 .form-control::-moz-placeholder {
|
1642 |
+
color: #999999;
|
1643 |
+
opacity: 1;
|
1644 |
+
}
|
1645 |
+
.seed-csp4 .form-control:-ms-input-placeholder {
|
1646 |
+
color: #999999;
|
1647 |
+
}
|
1648 |
+
.seed-csp4 .form-control::-webkit-input-placeholder {
|
1649 |
+
color: #999999;
|
1650 |
+
}
|
1651 |
+
.seed-csp4 .form-control[disabled],
|
1652 |
+
.seed-csp4 .form-control[readonly],
|
1653 |
+
fieldset[disabled] .seed-csp4 .form-control {
|
1654 |
+
cursor: not-allowed;
|
1655 |
+
background-color: #eeeeee;
|
1656 |
+
}
|
1657 |
+
textarea.seed-csp4 .form-control {
|
1658 |
+
height: auto;
|
1659 |
+
}
|
1660 |
+
.seed-csp4 .form-group {
|
1661 |
+
margin-bottom: 15px;
|
1662 |
+
}
|
1663 |
+
.seed-csp4 .radio,
|
1664 |
+
.seed-csp4 .checkbox {
|
1665 |
+
display: block;
|
1666 |
+
min-height: 20px;
|
1667 |
+
margin-top: 10px;
|
1668 |
+
margin-bottom: 10px;
|
1669 |
+
padding-left: 20px;
|
1670 |
+
vertical-align: middle;
|
1671 |
+
}
|
1672 |
+
.seed-csp4 .radio label,
|
1673 |
+
.seed-csp4 .checkbox label {
|
1674 |
+
display: inline;
|
1675 |
+
margin-bottom: 0;
|
1676 |
+
font-weight: normal;
|
1677 |
+
cursor: pointer;
|
1678 |
+
}
|
1679 |
+
.seed-csp4 .radio input[type="radio"],
|
1680 |
+
.seed-csp4 .radio-inline input[type="radio"],
|
1681 |
+
.seed-csp4 .checkbox input[type="checkbox"],
|
1682 |
+
.seed-csp4 .checkbox-inline input[type="checkbox"] {
|
1683 |
+
float: left;
|
1684 |
+
margin-left: -20px;
|
1685 |
+
}
|
1686 |
+
.seed-csp4 .radio + .radio,
|
1687 |
+
.seed-csp4 .checkbox + .checkbox {
|
1688 |
+
margin-top: -5px;
|
1689 |
+
}
|
1690 |
+
.seed-csp4 .radio-inline,
|
1691 |
+
.seed-csp4 .checkbox-inline {
|
1692 |
+
display: inline-block;
|
1693 |
+
padding-left: 20px;
|
1694 |
+
margin-bottom: 0;
|
1695 |
+
vertical-align: middle;
|
1696 |
+
font-weight: normal;
|
1697 |
+
cursor: pointer;
|
1698 |
+
}
|
1699 |
+
.seed-csp4 .radio-inline + .radio-inline,
|
1700 |
+
.seed-csp4 .checkbox-inline + .checkbox-inline {
|
1701 |
+
margin-top: 0;
|
1702 |
+
margin-left: 10px;
|
1703 |
+
}
|
1704 |
+
.seed-csp4 input[type="radio"][disabled],
|
1705 |
+
.seed-csp4 input[type="checkbox"][disabled],
|
1706 |
+
.seed-csp4 .radio[disabled],
|
1707 |
+
.seed-csp4 .radio-inline[disabled],
|
1708 |
+
.seed-csp4 .checkbox[disabled],
|
1709 |
+
.seed-csp4 .checkbox-inline[disabled],
|
1710 |
+
fieldset[disabled] .seed-csp4 input[type="radio"],
|
1711 |
+
fieldset[disabled] .seed-csp4 input[type="checkbox"],
|
1712 |
+
fieldset[disabled] .seed-csp4 .radio,
|
1713 |
+
fieldset[disabled] .seed-csp4 .radio-inline,
|
1714 |
+
fieldset[disabled] .seed-csp4 .checkbox,
|
1715 |
+
fieldset[disabled] .seed-csp4 .checkbox-inline {
|
1716 |
+
cursor: not-allowed;
|
1717 |
+
}
|
1718 |
+
.seed-csp4 .input-sm {
|
1719 |
+
height: 30px;
|
1720 |
+
padding: 5px 10px;
|
1721 |
+
font-size: 12px;
|
1722 |
+
line-height: 1.5;
|
1723 |
+
border-radius: 3px;
|
1724 |
+
}
|
1725 |
+
select.seed-csp4 .input-sm {
|
1726 |
+
height: 30px;
|
1727 |
+
line-height: 30px;
|
1728 |
+
}
|
1729 |
+
textarea.seed-csp4 .input-sm {
|
1730 |
+
height: auto;
|
1731 |
+
}
|
1732 |
+
.seed-csp4 .input-lg {
|
1733 |
+
height: 46px;
|
1734 |
+
padding: 10px 16px;
|
1735 |
+
font-size: 18px;
|
1736 |
+
line-height: 1.33;
|
1737 |
+
border-radius: 6px;
|
1738 |
+
}
|
1739 |
+
select.seed-csp4 .input-lg {
|
1740 |
+
height: 46px;
|
1741 |
+
line-height: 46px;
|
1742 |
+
}
|
1743 |
+
textarea.seed-csp4 .input-lg {
|
1744 |
+
height: auto;
|
1745 |
+
}
|
1746 |
+
.seed-csp4 .has-warning .help-block,
|
1747 |
+
.seed-csp4 .has-warning .control-label,
|
1748 |
+
.seed-csp4 .has-warning .radio,
|
1749 |
+
.seed-csp4 .has-warning .checkbox,
|
1750 |
+
.seed-csp4 .has-warning .radio-inline,
|
1751 |
+
.seed-csp4 .has-warning .checkbox-inline {
|
1752 |
+
color: #8a6d3b;
|
1753 |
+
}
|
1754 |
+
.seed-csp4 .has-warning .form-control {
|
1755 |
+
border-color: #8a6d3b;
|
1756 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
1757 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
1758 |
+
}
|
1759 |
+
.seed-csp4 .has-warning .form-control:focus {
|
1760 |
+
border-color: #66512c;
|
1761 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
|
1762 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
|
1763 |
+
}
|
1764 |
+
.seed-csp4 .has-warning .input-group-addon {
|
1765 |
+
color: #8a6d3b;
|
1766 |
+
border-color: #8a6d3b;
|
1767 |
+
background-color: #fcf8e3;
|
1768 |
+
}
|
1769 |
+
.seed-csp4 .has-error .help-block,
|
1770 |
+
.seed-csp4 .has-error .control-label,
|
1771 |
+
.seed-csp4 .has-error .radio,
|
1772 |
+
.seed-csp4 .has-error .checkbox,
|
1773 |
+
.seed-csp4 .has-error .radio-inline,
|
1774 |
+
.seed-csp4 .has-error .checkbox-inline {
|
1775 |
+
color: #a94442;
|
1776 |
+
}
|
1777 |
+
.seed-csp4 .has-error .form-control {
|
1778 |
+
border-color: #a94442;
|
1779 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
1780 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
1781 |
+
}
|
1782 |
+
.seed-csp4 .has-error .form-control:focus {
|
1783 |
+
border-color: #843534;
|
1784 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
|
1785 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
|
1786 |
+
}
|
1787 |
+
.seed-csp4 .has-error .input-group-addon {
|
1788 |
+
color: #a94442;
|
1789 |
+
border-color: #a94442;
|
1790 |
+
background-color: #f2dede;
|
1791 |
+
}
|
1792 |
+
.seed-csp4 .has-success .help-block,
|
1793 |
+
.seed-csp4 .has-success .control-label,
|
1794 |
+
.seed-csp4 .has-success .radio,
|
1795 |
+
.seed-csp4 .has-success .checkbox,
|
1796 |
+
.seed-csp4 .has-success .radio-inline,
|
1797 |
+
.seed-csp4 .has-success .checkbox-inline {
|
1798 |
+
color: #3c763d;
|
1799 |
+
}
|
1800 |
+
.seed-csp4 .has-success .form-control {
|
1801 |
+
border-color: #3c763d;
|
1802 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
1803 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
1804 |
+
}
|
1805 |
+
.seed-csp4 .has-success .form-control:focus {
|
1806 |
+
border-color: #2b542c;
|
1807 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
|
1808 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
|
1809 |
+
}
|
1810 |
+
.seed-csp4 .has-success .input-group-addon {
|
1811 |
+
color: #3c763d;
|
1812 |
+
border-color: #3c763d;
|
1813 |
+
background-color: #dff0d8;
|
1814 |
+
}
|
1815 |
+
.seed-csp4 .form-control-static {
|
1816 |
+
margin-bottom: 0;
|
1817 |
+
}
|
1818 |
+
.seed-csp4 .help-block {
|
1819 |
+
display: block;
|
1820 |
+
margin-top: 5px;
|
1821 |
+
margin-bottom: 10px;
|
1822 |
+
color: #737373;
|
1823 |
+
}
|
1824 |
+
@media (min-width: 768px) {
|
1825 |
+
.seed-csp4 .form-inline .form-group {
|
1826 |
+
display: inline-block;
|
1827 |
+
margin-bottom: 0;
|
1828 |
+
vertical-align: middle;
|
1829 |
+
}
|
1830 |
+
.seed-csp4 .form-inline .form-control {
|
1831 |
+
display: inline-block;
|
1832 |
+
}
|
1833 |
+
.seed-csp4 .form-inline select.form-control {
|
1834 |
+
width: auto;
|
1835 |
+
}
|
1836 |
+
.seed-csp4 .form-inline .radio,
|
1837 |
+
.seed-csp4 .form-inline .checkbox {
|
1838 |
+
display: inline-block;
|
1839 |
+
margin-top: 0;
|
1840 |
+
margin-bottom: 0;
|
1841 |
+
padding-left: 0;
|
1842 |
+
}
|
1843 |
+
.seed-csp4 .form-inline .radio input[type="radio"],
|
1844 |
+
.seed-csp4 .form-inline .checkbox input[type="checkbox"] {
|
1845 |
+
float: none;
|
1846 |
+
margin-left: 0;
|
1847 |
+
}
|
1848 |
+
}
|
1849 |
+
.seed-csp4 .form-horizontal .control-label,
|
1850 |
+
.seed-csp4 .form-horizontal .radio,
|
1851 |
+
.seed-csp4 .form-horizontal .checkbox,
|
1852 |
+
.seed-csp4 .form-horizontal .radio-inline,
|
1853 |
+
.seed-csp4 .form-horizontal .checkbox-inline {
|
1854 |
+
margin-top: 0;
|
1855 |
+
margin-bottom: 0;
|
1856 |
+
padding-top: 7px;
|
1857 |
+
}
|
1858 |
+
.seed-csp4 .form-horizontal .radio,
|
1859 |
+
.seed-csp4 .form-horizontal .checkbox {
|
1860 |
+
min-height: 27px;
|
1861 |
+
}
|
1862 |
+
.seed-csp4 .form-horizontal .form-group {
|
1863 |
+
margin-left: -15px;
|
1864 |
+
margin-right: -15px;
|
1865 |
+
}
|
1866 |
+
.seed-csp4 .form-horizontal .form-group:before,
|
1867 |
+
.seed-csp4 .form-horizontal .form-group:after {
|
1868 |
+
content: " ";
|
1869 |
+
display: table;
|
1870 |
+
}
|
1871 |
+
.seed-csp4 .form-horizontal .form-group:after {
|
1872 |
+
clear: both;
|
1873 |
+
}
|
1874 |
+
.seed-csp4 .form-horizontal .form-group:before,
|
1875 |
+
.seed-csp4 .form-horizontal .form-group:after {
|
1876 |
+
content: " ";
|
1877 |
+
display: table;
|
1878 |
+
}
|
1879 |
+
.seed-csp4 .form-horizontal .form-group:after {
|
1880 |
+
clear: both;
|
1881 |
+
}
|
1882 |
+
.seed-csp4 .form-horizontal .form-control-static {
|
1883 |
+
padding-top: 7px;
|
1884 |
+
}
|
1885 |
+
@media (min-width: 768px) {
|
1886 |
+
.seed-csp4 .form-horizontal .control-label {
|
1887 |
+
text-align: right;
|
1888 |
+
}
|
1889 |
+
}
|
1890 |
+
.seed-csp4 .btn {
|
1891 |
+
display: inline-block;
|
1892 |
+
margin-bottom: 0;
|
1893 |
+
font-weight: normal;
|
1894 |
+
text-align: center;
|
1895 |
+
vertical-align: middle;
|
1896 |
+
cursor: pointer;
|
1897 |
+
background-image: none;
|
1898 |
+
border: 1px solid transparent;
|
1899 |
+
white-space: nowrap;
|
1900 |
+
padding: 6px 12px;
|
1901 |
+
font-size: 14px;
|
1902 |
+
line-height: 1.428571429;
|
1903 |
+
border-radius: 4px;
|
1904 |
+
-webkit-user-select: none;
|
1905 |
+
-moz-user-select: none;
|
1906 |
+
-ms-user-select: none;
|
1907 |
+
-o-user-select: none;
|
1908 |
+
user-select: none;
|
1909 |
+
}
|
1910 |
+
.seed-csp4 .btn:focus {
|
1911 |
+
outline: thin dotted;
|
1912 |
+
outline: 5px auto -webkit-focus-ring-color;
|
1913 |
+
outline-offset: -2px;
|
1914 |
+
}
|
1915 |
+
.seed-csp4 .btn:hover,
|
1916 |
+
.seed-csp4 .btn:focus {
|
1917 |
+
color: #333333;
|
1918 |
+
text-decoration: none;
|
1919 |
+
}
|
1920 |
+
.seed-csp4 .btn:active,
|
1921 |
+
.seed-csp4 .btn.active {
|
1922 |
+
outline: 0;
|
1923 |
+
background-image: none;
|
1924 |
+
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
|
1925 |
+
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
|
1926 |
+
}
|
1927 |
+
.seed-csp4 .btn.disabled,
|
1928 |
+
.seed-csp4 .btn[disabled],
|
1929 |
+
fieldset[disabled] .seed-csp4 .btn {
|
1930 |
+
cursor: not-allowed;
|
1931 |
+
pointer-events: none;
|
1932 |
+
opacity: 0.65;
|
1933 |
+
filter: alpha(opacity=65);
|
1934 |
+
-webkit-box-shadow: none;
|
1935 |
+
box-shadow: none;
|
1936 |
+
}
|
1937 |
+
.seed-csp4 .btn-default {
|
1938 |
+
color: #333333;
|
1939 |
+
background-color: #ffffff;
|
1940 |
+
border-color: #cccccc;
|
1941 |
+
}
|
1942 |
+
.seed-csp4 .btn-default:hover,
|
1943 |
+
.seed-csp4 .btn-default:focus,
|
1944 |
+
.seed-csp4 .btn-default:active,
|
1945 |
+
.seed-csp4 .btn-default.active,
|
1946 |
+
.open .dropdown-toggle.seed-csp4 .btn-default {
|
1947 |
+
color: #333333;
|
1948 |
+
background-color: #ebebeb;
|
1949 |
+
border-color: #adadad;
|
1950 |
+
}
|
1951 |
+
.seed-csp4 .btn-default:active,
|
1952 |
+
.seed-csp4 .btn-default.active,
|
1953 |
+
.open .dropdown-toggle.seed-csp4 .btn-default {
|
1954 |
+
background-image: none;
|
1955 |
+
}
|
1956 |
+
.seed-csp4 .btn-default.disabled,
|
1957 |
+
.seed-csp4 .btn-default[disabled],
|
1958 |
+
fieldset[disabled] .seed-csp4 .btn-default,
|
1959 |
+
.seed-csp4 .btn-default.disabled:hover,
|
1960 |
+
.seed-csp4 .btn-default[disabled]:hover,
|
1961 |
+
fieldset[disabled] .seed-csp4 .btn-default:hover,
|
1962 |
+
.seed-csp4 .btn-default.disabled:focus,
|
1963 |
+
.seed-csp4 .btn-default[disabled]:focus,
|
1964 |
+
fieldset[disabled] .seed-csp4 .btn-default:focus,
|
1965 |
+
.seed-csp4 .btn-default.disabled:active,
|
1966 |
+
.seed-csp4 .btn-default[disabled]:active,
|
1967 |
+
fieldset[disabled] .seed-csp4 .btn-default:active,
|
1968 |
+
.seed-csp4 .btn-default.disabled.active,
|
1969 |
+
.seed-csp4 .btn-default[disabled].active,
|
1970 |
+
fieldset[disabled] .seed-csp4 .btn-default.active {
|
1971 |
+
background-color: #ffffff;
|
1972 |
+
border-color: #cccccc;
|
1973 |
+
}
|
1974 |
+
.seed-csp4 .btn-default .badge {
|
1975 |
+
color: #ffffff;
|
1976 |
+
background-color: #fff;
|
1977 |
+
}
|
1978 |
+
.seed-csp4 .btn-primary {
|
1979 |
+
color: #ffffff;
|
1980 |
+
background-color: #428bca;
|
1981 |
+
border-color: #357ebd;
|
1982 |
+
}
|
1983 |
+
.seed-csp4 .btn-primary:hover,
|
1984 |
+
.seed-csp4 .btn-primary:focus,
|
1985 |
+
.seed-csp4 .btn-primary:active,
|
1986 |
+
.seed-csp4 .btn-primary.active,
|
1987 |
+
.open .dropdown-toggle.seed-csp4 .btn-primary {
|
1988 |
+
color: #ffffff;
|
1989 |
+
background-color: #3276b1;
|
1990 |
+
border-color: #285e8e;
|
1991 |
+
}
|
1992 |
+
.seed-csp4 .btn-primary:active,
|
1993 |
+
.seed-csp4 .btn-primary.active,
|
1994 |
+
.open .dropdown-toggle.seed-csp4 .btn-primary {
|
1995 |
+
background-image: none;
|
1996 |
+
}
|
1997 |
+
.seed-csp4 .btn-primary.disabled,
|
1998 |
+
.seed-csp4 .btn-primary[disabled],
|
1999 |
+
fieldset[disabled] .seed-csp4 .btn-primary,
|
2000 |
+
.seed-csp4 .btn-primary.disabled:hover,
|
2001 |
+
.seed-csp4 .btn-primary[disabled]:hover,
|
2002 |
+
fieldset[disabled] .seed-csp4 .btn-primary:hover,
|
2003 |
+
.seed-csp4 .btn-primary.disabled:focus,
|
2004 |
+
.seed-csp4 .btn-primary[disabled]:focus,
|
2005 |
+
fieldset[disabled] .seed-csp4 .btn-primary:focus,
|
2006 |
+
.seed-csp4 .btn-primary.disabled:active,
|
2007 |
+
.seed-csp4 .btn-primary[disabled]:active,
|
2008 |
+
fieldset[disabled] .seed-csp4 .btn-primary:active,
|
2009 |
+
.seed-csp4 .btn-primary.disabled.active,
|
2010 |
+
.seed-csp4 .btn-primary[disabled].active,
|
2011 |
+
fieldset[disabled] .seed-csp4 .btn-primary.active {
|
2012 |
+
background-color: #428bca;
|
2013 |
+
border-color: #357ebd;
|
2014 |
+
}
|
2015 |
+
.seed-csp4 .btn-primary .badge {
|
2016 |
+
color: #428bca;
|
2017 |
+
background-color: #fff;
|
2018 |
+
}
|
2019 |
+
.seed-csp4 .btn-warning {
|
2020 |
+
color: #ffffff;
|
2021 |
+
background-color: #f0ad4e;
|
2022 |
+
border-color: #eea236;
|
2023 |
+
}
|
2024 |
+
.seed-csp4 .btn-warning:hover,
|
2025 |
+
.seed-csp4 .btn-warning:focus,
|
2026 |
+
.seed-csp4 .btn-warning:active,
|
2027 |
+
.seed-csp4 .btn-warning.active,
|
2028 |
+
.open .dropdown-toggle.seed-csp4 .btn-warning {
|
2029 |
+
color: #ffffff;
|
2030 |
+
background-color: #ed9c28;
|
2031 |
+
border-color: #d58512;
|
2032 |
+
}
|
2033 |
+
.seed-csp4 .btn-warning:active,
|
2034 |
+
.seed-csp4 .btn-warning.active,
|
2035 |
+
.open .dropdown-toggle.seed-csp4 .btn-warning {
|
2036 |
+
background-image: none;
|
2037 |
+
}
|
2038 |
+
.seed-csp4 .btn-warning.disabled,
|
2039 |
+
.seed-csp4 .btn-warning[disabled],
|
2040 |
+
fieldset[disabled] .seed-csp4 .btn-warning,
|
2041 |
+
.seed-csp4 .btn-warning.disabled:hover,
|
2042 |
+
.seed-csp4 .btn-warning[disabled]:hover,
|
2043 |
+
fieldset[disabled] .seed-csp4 .btn-warning:hover,
|
2044 |
+
.seed-csp4 .btn-warning.disabled:focus,
|
2045 |
+
.seed-csp4 .btn-warning[disabled]:focus,
|
2046 |
+
fieldset[disabled] .seed-csp4 .btn-warning:focus,
|
2047 |
+
.seed-csp4 .btn-warning.disabled:active,
|
2048 |
+
.seed-csp4 .btn-warning[disabled]:active,
|
2049 |
+
fieldset[disabled] .seed-csp4 .btn-warning:active,
|
2050 |
+
.seed-csp4 .btn-warning.disabled.active,
|
2051 |
+
.seed-csp4 .btn-warning[disabled].active,
|
2052 |
+
fieldset[disabled] .seed-csp4 .btn-warning.active {
|
2053 |
+
background-color: #f0ad4e;
|
2054 |
+
border-color: #eea236;
|
2055 |
+
}
|
2056 |
+
.seed-csp4 .btn-warning .badge {
|
2057 |
+
color: #f0ad4e;
|
2058 |
+
background-color: #fff;
|
2059 |
+
}
|
2060 |
+
.seed-csp4 .btn-danger {
|
2061 |
+
color: #ffffff;
|
2062 |
+
background-color: #d9534f;
|
2063 |
+
border-color: #d43f3a;
|
2064 |
+
}
|
2065 |
+
.seed-csp4 .btn-danger:hover,
|
2066 |
+
.seed-csp4 .btn-danger:focus,
|
2067 |
+
.seed-csp4 .btn-danger:active,
|
2068 |
+
.seed-csp4 .btn-danger.active,
|
2069 |
+
.open .dropdown-toggle.seed-csp4 .btn-danger {
|
2070 |
+
color: #ffffff;
|
2071 |
+
background-color: #d2322d;
|
2072 |
+
border-color: #ac2925;
|
2073 |
+
}
|
2074 |
+
.seed-csp4 .btn-danger:active,
|
2075 |
+
.seed-csp4 .btn-danger.active,
|
2076 |
+
.open .dropdown-toggle.seed-csp4 .btn-danger {
|
2077 |
+
background-image: none;
|
2078 |
+
}
|
2079 |
+
.seed-csp4 .btn-danger.disabled,
|
2080 |
+
.seed-csp4 .btn-danger[disabled],
|
2081 |
+
fieldset[disabled] .seed-csp4 .btn-danger,
|
2082 |
+
.seed-csp4 .btn-danger.disabled:hover,
|
2083 |
+
.seed-csp4 .btn-danger[disabled]:hover,
|
2084 |
+
fieldset[disabled] .seed-csp4 .btn-danger:hover,
|
2085 |
+
.seed-csp4 .btn-danger.disabled:focus,
|
2086 |
+
.seed-csp4 .btn-danger[disabled]:focus,
|
2087 |
+
fieldset[disabled] .seed-csp4 .btn-danger:focus,
|
2088 |
+
.seed-csp4 .btn-danger.disabled:active,
|
2089 |
+
.seed-csp4 .btn-danger[disabled]:active,
|
2090 |
+
fieldset[disabled] .seed-csp4 .btn-danger:active,
|
2091 |
+
.seed-csp4 .btn-danger.disabled.active,
|
2092 |
+
.seed-csp4 .btn-danger[disabled].active,
|
2093 |
+
fieldset[disabled] .seed-csp4 .btn-danger.active {
|
2094 |
+
background-color: #d9534f;
|
2095 |
+
border-color: #d43f3a;
|
2096 |
+
}
|
2097 |
+
.seed-csp4 .btn-danger .badge {
|
2098 |
+
color: #d9534f;
|
2099 |
+
background-color: #fff;
|
2100 |
+
}
|
2101 |
+
.seed-csp4 .btn-success {
|
2102 |
+
color: #ffffff;
|
2103 |
+
background-color: #5cb85c;
|
2104 |
+
border-color: #4cae4c;
|
2105 |
+
}
|
2106 |
+
.seed-csp4 .btn-success:hover,
|
2107 |
+
.seed-csp4 .btn-success:focus,
|
2108 |
+
.seed-csp4 .btn-success:active,
|
2109 |
+
.seed-csp4 .btn-success.active,
|
2110 |
+
.open .dropdown-toggle.seed-csp4 .btn-success {
|
2111 |
+
color: #ffffff;
|
2112 |
+
background-color: #47a447;
|
2113 |
+
border-color: #398439;
|
2114 |
+
}
|
2115 |
+
.seed-csp4 .btn-success:active,
|
2116 |
+
.seed-csp4 .btn-success.active,
|
2117 |
+
.open .dropdown-toggle.seed-csp4 .btn-success {
|
2118 |
+
background-image: none;
|
2119 |
+
}
|
2120 |
+
.seed-csp4 .btn-success.disabled,
|
2121 |
+
.seed-csp4 .btn-success[disabled],
|
2122 |
+
fieldset[disabled] .seed-csp4 .btn-success,
|
2123 |
+
.seed-csp4 .btn-success.disabled:hover,
|
2124 |
+
.seed-csp4 .btn-success[disabled]:hover,
|
2125 |
+
fieldset[disabled] .seed-csp4 .btn-success:hover,
|
2126 |
+
.seed-csp4 .btn-success.disabled:focus,
|
2127 |
+
.seed-csp4 .btn-success[disabled]:focus,
|
2128 |
+
fieldset[disabled] .seed-csp4 .btn-success:focus,
|
2129 |
+
.seed-csp4 .btn-success.disabled:active,
|
2130 |
+
.seed-csp4 .btn-success[disabled]:active,
|
2131 |
+
fieldset[disabled] .seed-csp4 .btn-success:active,
|
2132 |
+
.seed-csp4 .btn-success.disabled.active,
|
2133 |
+
.seed-csp4 .btn-success[disabled].active,
|
2134 |
+
fieldset[disabled] .seed-csp4 .btn-success.active {
|
2135 |
+
background-color: #5cb85c;
|
2136 |
+
border-color: #4cae4c;
|
2137 |
+
}
|
2138 |
+
.seed-csp4 .btn-success .badge {
|
2139 |
+
color: #5cb85c;
|
2140 |
+
background-color: #fff;
|
2141 |
+
}
|
2142 |
+
.seed-csp4 .btn-info {
|
2143 |
+
color: #ffffff;
|
2144 |
+
background-color: #5bc0de;
|
2145 |
+
border-color: #46b8da;
|
2146 |
+
}
|
2147 |
+
.seed-csp4 .btn-info:hover,
|
2148 |
+
.seed-csp4 .btn-info:focus,
|
2149 |
+
.seed-csp4 .btn-info:active,
|
2150 |
+
.seed-csp4 .btn-info.active,
|
2151 |
+
.open .dropdown-toggle.seed-csp4 .btn-info {
|
2152 |
+
color: #ffffff;
|
2153 |
+
background-color: #39b3d7;
|
2154 |
+
border-color: #269abc;
|
2155 |
+
}
|
2156 |
+
.seed-csp4 .btn-info:active,
|
2157 |
+
.seed-csp4 .btn-info.active,
|
2158 |
+
.open .dropdown-toggle.seed-csp4 .btn-info {
|
2159 |
+
background-image: none;
|
2160 |
+
}
|
2161 |
+
.seed-csp4 .btn-info.disabled,
|
2162 |
+
.seed-csp4 .btn-info[disabled],
|
2163 |
+
fieldset[disabled] .seed-csp4 .btn-info,
|
2164 |
+
.seed-csp4 .btn-info.disabled:hover,
|
2165 |
+
.seed-csp4 .btn-info[disabled]:hover,
|
2166 |
+
fieldset[disabled] .seed-csp4 .btn-info:hover,
|
2167 |
+
.seed-csp4 .btn-info.disabled:focus,
|
2168 |
+
.seed-csp4 .btn-info[disabled]:focus,
|
2169 |
+
fieldset[disabled] .seed-csp4 .btn-info:focus,
|
2170 |
+
.seed-csp4 .btn-info.disabled:active,
|
2171 |
+
.seed-csp4 .btn-info[disabled]:active,
|
2172 |
+
fieldset[disabled] .seed-csp4 .btn-info:active,
|
2173 |
+
.seed-csp4 .btn-info.disabled.active,
|
2174 |
+
.seed-csp4 .btn-info[disabled].active,
|
2175 |
+
fieldset[disabled] .seed-csp4 .btn-info.active {
|
2176 |
+
background-color: #5bc0de;
|
2177 |
+
border-color: #46b8da;
|
2178 |
+
}
|
2179 |
+
.seed-csp4 .btn-info .badge {
|
2180 |
+
color: #5bc0de;
|
2181 |
+
background-color: #fff;
|
2182 |
+
}
|
2183 |
+
.seed-csp4 .btn-link {
|
2184 |
+
color: #428bca;
|
2185 |
+
font-weight: normal;
|
2186 |
+
cursor: pointer;
|
2187 |
+
border-radius: 0;
|
2188 |
+
}
|
2189 |
+
.seed-csp4 .btn-link,
|
2190 |
+
.seed-csp4 .btn-link:active,
|
2191 |
+
.seed-csp4 .btn-link[disabled],
|
2192 |
+
fieldset[disabled] .seed-csp4 .btn-link {
|
2193 |
+
background-color: transparent;
|
2194 |
+
-webkit-box-shadow: none;
|
2195 |
+
box-shadow: none;
|
2196 |
+
}
|
2197 |
+
.seed-csp4 .btn-link,
|
2198 |
+
.seed-csp4 .btn-link:hover,
|
2199 |
+
.seed-csp4 .btn-link:focus,
|
2200 |
+
.seed-csp4 .btn-link:active {
|
2201 |
+
border-color: transparent;
|
2202 |
+
}
|
2203 |
+
.seed-csp4 .btn-link:hover,
|
2204 |
+
.seed-csp4 .btn-link:focus {
|
2205 |
+
color: #2a6496;
|
2206 |
+
text-decoration: underline;
|
2207 |
+
background-color: transparent;
|
2208 |
+
}
|
2209 |
+
.seed-csp4 .btn-link[disabled]:hover,
|
2210 |
+
fieldset[disabled] .seed-csp4 .btn-link:hover,
|
2211 |
+
.seed-csp4 .btn-link[disabled]:focus,
|
2212 |
+
fieldset[disabled] .seed-csp4 .btn-link:focus {
|
2213 |
+
color: #999999;
|
2214 |
+
text-decoration: none;
|
2215 |
+
}
|
2216 |
+
.seed-csp4 .btn-lg {
|
2217 |
+
padding: 10px 16px;
|
2218 |
+
font-size: 18px;
|
2219 |
+
line-height: 1.33;
|
2220 |
+
border-radius: 6px;
|
2221 |
+
}
|
2222 |
+
.seed-csp4 .btn-sm {
|
2223 |
+
padding: 5px 10px;
|
2224 |
+
font-size: 12px;
|
2225 |
+
line-height: 1.5;
|
2226 |
+
border-radius: 3px;
|
2227 |
+
}
|
2228 |
+
.seed-csp4 .btn-xs {
|
2229 |
+
padding: 1px 5px;
|
2230 |
+
font-size: 12px;
|
2231 |
+
line-height: 1.5;
|
2232 |
+
border-radius: 3px;
|
2233 |
+
}
|
2234 |
+
.seed-csp4 .btn-block {
|
2235 |
+
display: block;
|
2236 |
+
width: 100%;
|
2237 |
+
padding-left: 0;
|
2238 |
+
padding-right: 0;
|
2239 |
+
}
|
2240 |
+
.seed-csp4 .btn-block + .btn-block {
|
2241 |
+
margin-top: 5px;
|
2242 |
+
}
|
2243 |
+
.seed-csp4 input[type="submit"].btn-block,
|
2244 |
+
.seed-csp4 input[type="reset"].btn-block,
|
2245 |
+
.seed-csp4 input[type="button"].btn-block {
|
2246 |
+
width: 100%;
|
2247 |
+
}
|
2248 |
+
.seed-csp4 .fade {
|
2249 |
+
opacity: 0;
|
2250 |
+
-webkit-transition: opacity 0.15s linear;
|
2251 |
+
transition: opacity 0.15s linear;
|
2252 |
+
}
|
2253 |
+
.seed-csp4 .fade.in {
|
2254 |
+
opacity: 1;
|
2255 |
+
}
|
2256 |
+
.seed-csp4 .collapse {
|
2257 |
+
display: none;
|
2258 |
+
}
|
2259 |
+
.seed-csp4 .collapse.in {
|
2260 |
+
display: block;
|
2261 |
+
}
|
2262 |
+
.seed-csp4 .collapsing {
|
2263 |
+
position: relative;
|
2264 |
+
height: 0;
|
2265 |
+
overflow: hidden;
|
2266 |
+
-webkit-transition: height 0.35s ease;
|
2267 |
+
transition: height 0.35s ease;
|
2268 |
+
}
|
2269 |
+
@font-face {
|
2270 |
+
font-family: 'Glyphicons Halflings';
|
2271 |
+
src: url('../fonts/glyphicons-halflings-regular.eot');
|
2272 |
+
src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg');
|
2273 |
+
}
|
2274 |
+
.seed-csp4 .glyphicon {
|
2275 |
+
position: relative;
|
2276 |
+
top: 1px;
|
2277 |
+
display: inline-block;
|
2278 |
+
font-family: 'Glyphicons Halflings';
|
2279 |
+
font-style: normal;
|
2280 |
+
font-weight: normal;
|
2281 |
+
line-height: 1;
|
2282 |
+
-webkit-font-smoothing: antialiased;
|
2283 |
+
-moz-osx-font-smoothing: grayscale;
|
2284 |
+
}
|
2285 |
+
.seed-csp4 .glyphicon:empty {
|
2286 |
+
width: 1em;
|
2287 |
+
}
|
2288 |
+
.seed-csp4 .glyphicon-asterisk:before {
|
2289 |
+
content: "\2a";
|
2290 |
+
}
|
2291 |
+
.seed-csp4 .glyphicon-plus:before {
|
2292 |
+
content: "\2b";
|
2293 |
+
}
|
2294 |
+
.seed-csp4 .glyphicon-euro:before {
|
2295 |
+
content: "\20ac";
|
2296 |
+
}
|
2297 |
+
.seed-csp4 .glyphicon-minus:before {
|
2298 |
+
content: "\2212";
|
2299 |
+
}
|
2300 |
+
.seed-csp4 .glyphicon-cloud:before {
|
2301 |
+
content: "\2601";
|
2302 |
+
}
|
2303 |
+
.seed-csp4 .glyphicon-envelope:before {
|
2304 |
+
content: "\2709";
|
2305 |
+
}
|
2306 |
+
.seed-csp4 .glyphicon-pencil:before {
|
2307 |
+
content: "\270f";
|
2308 |
+
}
|
2309 |
+
.seed-csp4 .glyphicon-glass:before {
|
2310 |
+
content: "\e001";
|
2311 |
+
}
|
2312 |
+
.seed-csp4 .glyphicon-music:before {
|
2313 |
+
content: "\e002";
|
2314 |
+
}
|
2315 |
+
.seed-csp4 .glyphicon-search:before {
|
2316 |
+
content: "\e003";
|
2317 |
+
}
|
2318 |
+
.seed-csp4 .glyphicon-heart:before {
|
2319 |
+
content: "\e005";
|
2320 |
+
}
|
2321 |
+
.seed-csp4 .glyphicon-star:before {
|
2322 |
+
content: "\e006";
|
2323 |
+
}
|
2324 |
+
.seed-csp4 .glyphicon-star-empty:before {
|
2325 |
+
content: "\e007";
|
2326 |
+
}
|
2327 |
+
.seed-csp4 .glyphicon-user:before {
|
2328 |
+
content: "\e008";
|
2329 |
+
}
|
2330 |
+
.seed-csp4 .glyphicon-film:before {
|
2331 |
+
content: "\e009";
|
2332 |
+
}
|
2333 |
+
.seed-csp4 .glyphicon-th-large:before {
|
2334 |
+
content: "\e010";
|
2335 |
+
}
|
2336 |
+
.seed-csp4 .glyphicon-th:before {
|
2337 |
+
content: "\e011";
|
2338 |
+
}
|
2339 |
+
.seed-csp4 .glyphicon-th-list:before {
|
2340 |
+
content: "\e012";
|
2341 |
+
}
|
2342 |
+
.seed-csp4 .glyphicon-ok:before {
|
2343 |
+
content: "\e013";
|
2344 |
+
}
|
2345 |
+
.seed-csp4 .glyphicon-remove:before {
|
2346 |
+
content: "\e014";
|
2347 |
+
}
|
2348 |
+
.seed-csp4 .glyphicon-zoom-in:before {
|
2349 |
+
content: "\e015";
|
2350 |
+
}
|
2351 |
+
.seed-csp4 .glyphicon-zoom-out:before {
|
2352 |
+
content: "\e016";
|
2353 |
+
}
|
2354 |
+
.seed-csp4 .glyphicon-off:before {
|
2355 |
+
content: "\e017";
|
2356 |
+
}
|
2357 |
+
.seed-csp4 .glyphicon-signal:before {
|
2358 |
+
content: "\e018";
|
2359 |
+
}
|
2360 |
+
.seed-csp4 .glyphicon-cog:before {
|
2361 |
+
content: "\e019";
|
2362 |
+
}
|
2363 |
+
.seed-csp4 .glyphicon-trash:before {
|
2364 |
+
content: "\e020";
|
2365 |
+
}
|
2366 |
+
.seed-csp4 .glyphicon-home:before {
|
2367 |
+
content: "\e021";
|
2368 |
+
}
|
2369 |
+
.seed-csp4 .glyphicon-file:before {
|
2370 |
+
content: "\e022";
|
2371 |
+
}
|
2372 |
+
.seed-csp4 .glyphicon-time:before {
|
2373 |
+
content: "\e023";
|
2374 |
+
}
|
2375 |
+
.seed-csp4 .glyphicon-road:before {
|
2376 |
+
content: "\e024";
|
2377 |
+
}
|
2378 |
+
.seed-csp4 .glyphicon-download-alt:before {
|
2379 |
+
content: "\e025";
|
2380 |
+
}
|
2381 |
+
.seed-csp4 .glyphicon-download:before {
|
2382 |
+
content: "\e026";
|
2383 |
+
}
|
2384 |
+
.seed-csp4 .glyphicon-upload:before {
|
2385 |
+
content: "\e027";
|
2386 |
+
}
|
2387 |
+
.seed-csp4 .glyphicon-inbox:before {
|
2388 |
+
content: "\e028";
|
2389 |
+
}
|
2390 |
+
.seed-csp4 .glyphicon-play-circle:before {
|
2391 |
+
content: "\e029";
|
2392 |
+
}
|
2393 |
+
.seed-csp4 .glyphicon-repeat:before {
|
2394 |
+
content: "\e030";
|
2395 |
+
}
|
2396 |
+
.seed-csp4 .glyphicon-refresh:before {
|
2397 |
+
content: "\e031";
|
2398 |
+
}
|
2399 |
+
.seed-csp4 .glyphicon-list-alt:before {
|
2400 |
+
content: "\e032";
|
2401 |
+
}
|
2402 |
+
.seed-csp4 .glyphicon-lock:before {
|
2403 |
+
content: "\e033";
|
2404 |
+
}
|
2405 |
+
.seed-csp4 .glyphicon-flag:before {
|
2406 |
+
content: "\e034";
|
2407 |
+
}
|
2408 |
+
.seed-csp4 .glyphicon-headphones:before {
|
2409 |
+
content: "\e035";
|
2410 |
+
}
|
2411 |
+
.seed-csp4 .glyphicon-volume-off:before {
|
2412 |
+
content: "\e036";
|
2413 |
+
}
|
2414 |
+
.seed-csp4 .glyphicon-volume-down:before {
|
2415 |
+
content: "\e037";
|
2416 |
+
}
|
2417 |
+
.seed-csp4 .glyphicon-volume-up:before {
|
2418 |
+
content: "\e038";
|
2419 |
+
}
|
2420 |
+
.seed-csp4 .glyphicon-qrcode:before {
|
2421 |
+
content: "\e039";
|
2422 |
+
}
|
2423 |
+
.seed-csp4 .glyphicon-barcode:before {
|
2424 |
+
content: "\e040";
|
2425 |
+
}
|
2426 |
+
.seed-csp4 .glyphicon-tag:before {
|
2427 |
+
content: "\e041";
|
2428 |
+
}
|
2429 |
+
.seed-csp4 .glyphicon-tags:before {
|
2430 |
+
content: "\e042";
|
2431 |
+
}
|
2432 |
+
.seed-csp4 .glyphicon-book:before {
|
2433 |
+
content: "\e043";
|
2434 |
+
}
|
2435 |
+
.seed-csp4 .glyphicon-bookmark:before {
|
2436 |
+
content: "\e044";
|
2437 |
+
}
|
2438 |
+
.seed-csp4 .glyphicon-print:before {
|
2439 |
+
content: "\e045";
|
2440 |
+
}
|
2441 |
+
.seed-csp4 .glyphicon-camera:before {
|
2442 |
+
content: "\e046";
|
2443 |
+
}
|
2444 |
+
.seed-csp4 .glyphicon-font:before {
|
2445 |
+
content: "\e047";
|
2446 |
+
}
|
2447 |
+
.seed-csp4 .glyphicon-bold:before {
|
2448 |
+
content: "\e048";
|
2449 |
+
}
|
2450 |
+
.seed-csp4 .glyphicon-italic:before {
|
2451 |
+
content: "\e049";
|
2452 |
+
}
|
2453 |
+
.seed-csp4 .glyphicon-text-height:before {
|
2454 |
+
content: "\e050";
|
2455 |
+
}
|
2456 |
+
.seed-csp4 .glyphicon-text-width:before {
|
2457 |
+
content: "\e051";
|
2458 |
+
}
|
2459 |
+
.seed-csp4 .glyphicon-align-left:before {
|
2460 |
+
content: "\e052";
|
2461 |
+
}
|
2462 |
+
.seed-csp4 .glyphicon-align-center:before {
|
2463 |
+
content: "\e053";
|
2464 |
+
}
|
2465 |
+
.seed-csp4 .glyphicon-align-right:before {
|
2466 |
+
content: "\e054";
|
2467 |
+
}
|
2468 |
+
.seed-csp4 .glyphicon-align-justify:before {
|
2469 |
+
content: "\e055";
|
2470 |
+
}
|
2471 |
+
.seed-csp4 .glyphicon-list:before {
|
2472 |
+
content: "\e056";
|
2473 |
+
}
|
2474 |
+
.seed-csp4 .glyphicon-indent-left:before {
|
2475 |
+
content: "\e057";
|
2476 |
+
}
|
2477 |
+
.seed-csp4 .glyphicon-indent-right:before {
|
2478 |
+
content: "\e058";
|
2479 |
+
}
|
2480 |
+
.seed-csp4 .glyphicon-facetime-video:before {
|
2481 |
+
content: "\e059";
|
2482 |
+
}
|
2483 |
+
.seed-csp4 .glyphicon-picture:before {
|
2484 |
+
content: "\e060";
|
2485 |
+
}
|
2486 |
+
.seed-csp4 .glyphicon-map-marker:before {
|
2487 |
+
content: "\e062";
|
2488 |
+
}
|
2489 |
+
.seed-csp4 .glyphicon-adjust:before {
|
2490 |
+
content: "\e063";
|
2491 |
+
}
|
2492 |
+
.seed-csp4 .glyphicon-tint:before {
|
2493 |
+
content: "\e064";
|
2494 |
+
}
|
2495 |
+
.seed-csp4 .glyphicon-edit:before {
|
2496 |
+
content: "\e065";
|
2497 |
+
}
|
2498 |
+
.seed-csp4 .glyphicon-share:before {
|
2499 |
+
content: "\e066";
|
2500 |
+
}
|
2501 |
+
.seed-csp4 .glyphicon-check:before {
|
2502 |
+
content: "\e067";
|
2503 |
+
}
|
2504 |
+
.seed-csp4 .glyphicon-move:before {
|
2505 |
+
content: "\e068";
|
2506 |
+
}
|
2507 |
+
.seed-csp4 .glyphicon-step-backward:before {
|
2508 |
+
content: "\e069";
|
2509 |
+
}
|
2510 |
+
.seed-csp4 .glyphicon-fast-backward:before {
|
2511 |
+
content: "\e070";
|
2512 |
+
}
|
2513 |
+
.seed-csp4 .glyphicon-backward:before {
|
2514 |
+
content: "\e071";
|
2515 |
+
}
|
2516 |
+
.seed-csp4 .glyphicon-play:before {
|
2517 |
+
content: "\e072";
|
2518 |
+
}
|
2519 |
+
.seed-csp4 .glyphicon-pause:before {
|
2520 |
+
content: "\e073";
|
2521 |
+
}
|
2522 |
+
.seed-csp4 .glyphicon-stop:before {
|
2523 |
+
content: "\e074";
|
2524 |
+
}
|
2525 |
+
.seed-csp4 .glyphicon-forward:before {
|
2526 |
+
content: "\e075";
|
2527 |
+
}
|
2528 |
+
.seed-csp4 .glyphicon-fast-forward:before {
|
2529 |
+
content: "\e076";
|
2530 |
+
}
|
2531 |
+
.seed-csp4 .glyphicon-step-forward:before {
|
2532 |
+
content: "\e077";
|
2533 |
+
}
|
2534 |
+
.seed-csp4 .glyphicon-eject:before {
|
2535 |
+
content: "\e078";
|
2536 |
+
}
|
2537 |
+
.seed-csp4 .glyphicon-chevron-left:before {
|
2538 |
+
content: "\e079";
|
2539 |
+
}
|
2540 |
+
.seed-csp4 .glyphicon-chevron-right:before {
|
2541 |
+
content: "\e080";
|
2542 |
+
}
|
2543 |
+
.seed-csp4 .glyphicon-plus-sign:before {
|
2544 |
+
content: "\e081";
|
2545 |
+
}
|
2546 |
+
.seed-csp4 .glyphicon-minus-sign:before {
|
2547 |
+
content: "\e082";
|
2548 |
+
}
|
2549 |
+
.seed-csp4 .glyphicon-remove-sign:before {
|
2550 |
+
content: "\e083";
|
2551 |
+
}
|
2552 |
+
.seed-csp4 .glyphicon-ok-sign:before {
|
2553 |
+
content: "\e084";
|
2554 |
+
}
|
2555 |
+
.seed-csp4 .glyphicon-question-sign:before {
|
2556 |
+
content: "\e085";
|
2557 |
+
}
|
2558 |
+
.seed-csp4 .glyphicon-info-sign:before {
|
2559 |
+
content: "\e086";
|
2560 |
+
}
|
2561 |
+
.seed-csp4 .glyphicon-screenshot:before {
|
2562 |
+
content: "\e087";
|
2563 |
+
}
|
2564 |
+
.seed-csp4 .glyphicon-remove-circle:before {
|
2565 |
+
content: "\e088";
|
2566 |
+
}
|
2567 |
+
.seed-csp4 .glyphicon-ok-circle:before {
|
2568 |
+
content: "\e089";
|
2569 |
+
}
|
2570 |
+
.seed-csp4 .glyphicon-ban-circle:before {
|
2571 |
+
content: "\e090";
|
2572 |
+
}
|
2573 |
+
.seed-csp4 .glyphicon-arrow-left:before {
|
2574 |
+
content: "\e091";
|
2575 |
+
}
|
2576 |
+
.seed-csp4 .glyphicon-arrow-right:before {
|
2577 |
+
content: "\e092";
|
2578 |
+
}
|
2579 |
+
.seed-csp4 .glyphicon-arrow-up:before {
|
2580 |
+
content: "\e093";
|
2581 |
+
}
|
2582 |
+
.seed-csp4 .glyphicon-arrow-down:before {
|
2583 |
+
content: "\e094";
|
2584 |
+
}
|
2585 |
+
.seed-csp4 .glyphicon-share-alt:before {
|
2586 |
+
content: "\e095";
|
2587 |
+
}
|
2588 |
+
.seed-csp4 .glyphicon-resize-full:before {
|
2589 |
+
content: "\e096";
|
2590 |
+
}
|
2591 |
+
.seed-csp4 .glyphicon-resize-small:before {
|
2592 |
+
content: "\e097";
|
2593 |
+
}
|
2594 |
+
.seed-csp4 .glyphicon-exclamation-sign:before {
|
2595 |
+
content: "\e101";
|
2596 |
+
}
|
2597 |
+
.seed-csp4 .glyphicon-gift:before {
|
2598 |
+
content: "\e102";
|
2599 |
+
}
|
2600 |
+
.seed-csp4 .glyphicon-leaf:before {
|
2601 |
+
content: "\e103";
|
2602 |
+
}
|
2603 |
+
.seed-csp4 .glyphicon-fire:before {
|
2604 |
+
content: "\e104";
|
2605 |
+
}
|
2606 |
+
.seed-csp4 .glyphicon-eye-open:before {
|
2607 |
+
content: "\e105";
|
2608 |
+
}
|
2609 |
+
.seed-csp4 .glyphicon-eye-close:before {
|
2610 |
+
content: "\e106";
|
2611 |
+
}
|
2612 |
+
.seed-csp4 .glyphicon-warning-sign:before {
|
2613 |
+
content: "\e107";
|
2614 |
+
}
|
2615 |
+
.seed-csp4 .glyphicon-plane:before {
|
2616 |
+
content: "\e108";
|
2617 |
+
}
|
2618 |
+
.seed-csp4 .glyphicon-calendar:before {
|
2619 |
+
content: "\e109";
|
2620 |
+
}
|
2621 |
+
.seed-csp4 .glyphicon-random:before {
|
2622 |
+
content: "\e110";
|
2623 |
+
}
|
2624 |
+
.seed-csp4 .glyphicon-comment:before {
|
2625 |
+
content: "\e111";
|
2626 |
+
}
|
2627 |
+
.seed-csp4 .glyphicon-magnet:before {
|
2628 |
+
content: "\e112";
|
2629 |
+
}
|
2630 |
+
.seed-csp4 .glyphicon-chevron-up:before {
|
2631 |
+
content: "\e113";
|
2632 |
+
}
|
2633 |
+
.seed-csp4 .glyphicon-chevron-down:before {
|
2634 |
+
content: "\e114";
|
2635 |
+
}
|
2636 |
+
.seed-csp4 .glyphicon-retweet:before {
|
2637 |
+
content: "\e115";
|
2638 |
+
}
|
2639 |
+
.seed-csp4 .glyphicon-shopping-cart:before {
|
2640 |
+
content: "\e116";
|
2641 |
+
}
|
2642 |
+
.seed-csp4 .glyphicon-folder-close:before {
|
2643 |
+
content: "\e117";
|
2644 |
+
}
|
2645 |
+
.seed-csp4 .glyphicon-folder-open:before {
|
2646 |
+
content: "\e118";
|
2647 |
+
}
|
2648 |
+
.seed-csp4 .glyphicon-resize-vertical:before {
|
2649 |
+
content: "\e119";
|
2650 |
+
}
|
2651 |
+
.seed-csp4 .glyphicon-resize-horizontal:before {
|
2652 |
+
content: "\e120";
|
2653 |
+
}
|
2654 |
+
.seed-csp4 .glyphicon-hdd:before {
|
2655 |
+
content: "\e121";
|
2656 |
+
}
|
2657 |
+
.seed-csp4 .glyphicon-bullhorn:before {
|
2658 |
+
content: "\e122";
|
2659 |
+
}
|
2660 |
+
.seed-csp4 .glyphicon-bell:before {
|
2661 |
+
content: "\e123";
|
2662 |
+
}
|
2663 |
+
.seed-csp4 .glyphicon-certificate:before {
|
2664 |
+
content: "\e124";
|
2665 |
+
}
|
2666 |
+
.seed-csp4 .glyphicon-thumbs-up:before {
|
2667 |
+
content: "\e125";
|
2668 |
+
}
|
2669 |
+
.seed-csp4 .glyphicon-thumbs-down:before {
|
2670 |
+
content: "\e126";
|
2671 |
+
}
|
2672 |
+
.seed-csp4 .glyphicon-hand-right:before {
|
2673 |
+
content: "\e127";
|
2674 |
+
}
|
2675 |
+
.seed-csp4 .glyphicon-hand-left:before {
|
2676 |
+
content: "\e128";
|
2677 |
+
}
|
2678 |
+
.seed-csp4 .glyphicon-hand-up:before {
|
2679 |
+
content: "\e129";
|
2680 |
+
}
|
2681 |
+
.seed-csp4 .glyphicon-hand-down:before {
|
2682 |
+
content: "\e130";
|
2683 |
+
}
|
2684 |
+
.seed-csp4 .glyphicon-circle-arrow-right:before {
|
2685 |
+
content: "\e131";
|
2686 |
+
}
|
2687 |
+
.seed-csp4 .glyphicon-circle-arrow-left:before {
|
2688 |
+
content: "\e132";
|
2689 |
+
}
|
2690 |
+
.seed-csp4 .glyphicon-circle-arrow-up:before {
|
2691 |
+
content: "\e133";
|
2692 |
+
}
|
2693 |
+
.seed-csp4 .glyphicon-circle-arrow-down:before {
|
2694 |
+
content: "\e134";
|
2695 |
+
}
|
2696 |
+
.seed-csp4 .glyphicon-globe:before {
|
2697 |
+
content: "\e135";
|
2698 |
+
}
|
2699 |
+
.seed-csp4 .glyphicon-wrench:before {
|
2700 |
+
content: "\e136";
|
2701 |
+
}
|
2702 |
+
.seed-csp4 .glyphicon-tasks:before {
|
2703 |
+
content: "\e137";
|
2704 |
+
}
|
2705 |
+
.seed-csp4 .glyphicon-filter:before {
|
2706 |
+
content: "\e138";
|
2707 |
+
}
|
2708 |
+
.seed-csp4 .glyphicon-briefcase:before {
|
2709 |
+
content: "\e139";
|
2710 |
+
}
|
2711 |
+
.seed-csp4 .glyphicon-fullscreen:before {
|
2712 |
+
content: "\e140";
|
2713 |
+
}
|
2714 |
+
.seed-csp4 .glyphicon-dashboard:before {
|
2715 |
+
content: "\e141";
|
2716 |
+
}
|
2717 |
+
.seed-csp4 .glyphicon-paperclip:before {
|
2718 |
+
content: "\e142";
|
2719 |
+
}
|
2720 |
+
.seed-csp4 .glyphicon-heart-empty:before {
|
2721 |
+
content: "\e143";
|
2722 |
+
}
|
2723 |
+
.seed-csp4 .glyphicon-link:before {
|
2724 |
+
content: "\e144";
|
2725 |
+
}
|
2726 |
+
.seed-csp4 .glyphicon-phone:before {
|
2727 |
+
content: "\e145";
|
2728 |
+
}
|
2729 |
+
.seed-csp4 .glyphicon-pushpin:before {
|
2730 |
+
content: "\e146";
|
2731 |
+
}
|
2732 |
+
.seed-csp4 .glyphicon-usd:before {
|
2733 |
+
content: "\e148";
|
2734 |
+
}
|
2735 |
+
.seed-csp4 .glyphicon-gbp:before {
|
2736 |
+
content: "\e149";
|
2737 |
+
}
|
2738 |
+
.seed-csp4 .glyphicon-sort:before {
|
2739 |
+
content: "\e150";
|
2740 |
+
}
|
2741 |
+
.seed-csp4 .glyphicon-sort-by-alphabet:before {
|
2742 |
+
content: "\e151";
|
2743 |
+
}
|
2744 |
+
.seed-csp4 .glyphicon-sort-by-alphabet-alt:before {
|
2745 |
+
content: "\e152";
|
2746 |
+
}
|
2747 |
+
.seed-csp4 .glyphicon-sort-by-order:before {
|
2748 |
+
content: "\e153";
|
2749 |
+
}
|
2750 |
+
.seed-csp4 .glyphicon-sort-by-order-alt:before {
|
2751 |
+
content: "\e154";
|
2752 |
+
}
|
2753 |
+
.seed-csp4 .glyphicon-sort-by-attributes:before {
|
2754 |
+
content: "\e155";
|
2755 |
+
}
|
2756 |
+
.seed-csp4 .glyphicon-sort-by-attributes-alt:before {
|
2757 |
+
content: "\e156";
|
2758 |
+
}
|
2759 |
+
.seed-csp4 .glyphicon-unchecked:before {
|
2760 |
+
content: "\e157";
|
2761 |
+
}
|
2762 |
+
.seed-csp4 .glyphicon-expand:before {
|
2763 |
+
content: "\e158";
|
2764 |
+
}
|
2765 |
+
.seed-csp4 .glyphicon-collapse-down:before {
|
2766 |
+
content: "\e159";
|
2767 |
+
}
|
2768 |
+
.seed-csp4 .glyphicon-collapse-up:before {
|
2769 |
+
content: "\e160";
|
2770 |
+
}
|
2771 |
+
.seed-csp4 .glyphicon-log-in:before {
|
2772 |
+
content: "\e161";
|
2773 |
+
}
|
2774 |
+
.seed-csp4 .glyphicon-flash:before {
|
2775 |
+
content: "\e162";
|
2776 |
+
}
|
2777 |
+
.seed-csp4 .glyphicon-log-out:before {
|
2778 |
+
content: "\e163";
|
2779 |
+
}
|
2780 |
+
.seed-csp4 .glyphicon-new-window:before {
|
2781 |
+
content: "\e164";
|
2782 |
+
}
|
2783 |
+
.seed-csp4 .glyphicon-record:before {
|
2784 |
+
content: "\e165";
|
2785 |
+
}
|
2786 |
+
.seed-csp4 .glyphicon-save:before {
|
2787 |
+
content: "\e166";
|
2788 |
+
}
|
2789 |
+
.seed-csp4 .glyphicon-open:before {
|
2790 |
+
content: "\e167";
|
2791 |
+
}
|
2792 |
+
.seed-csp4 .glyphicon-saved:before {
|
2793 |
+
content: "\e168";
|
2794 |
+
}
|
2795 |
+
.seed-csp4 .glyphicon-import:before {
|
2796 |
+
content: "\e169";
|
2797 |
+
}
|
2798 |
+
.seed-csp4 .glyphicon-export:before {
|
2799 |
+
content: "\e170";
|
2800 |
+
}
|
2801 |
+
.seed-csp4 .glyphicon-send:before {
|
2802 |
+
content: "\e171";
|
2803 |
+
}
|
2804 |
+
.seed-csp4 .glyphicon-floppy-disk:before {
|
2805 |
+
content: "\e172";
|
2806 |
+
}
|
2807 |
+
.seed-csp4 .glyphicon-floppy-saved:before {
|
2808 |
+
content: "\e173";
|
2809 |
+
}
|
2810 |
+
.seed-csp4 .glyphicon-floppy-remove:before {
|
2811 |
+
content: "\e174";
|
2812 |
+
}
|
2813 |
+
.seed-csp4 .glyphicon-floppy-save:before {
|
2814 |
+
content: "\e175";
|
2815 |
+
}
|
2816 |
+
.seed-csp4 .glyphicon-floppy-open:before {
|
2817 |
+
content: "\e176";
|
2818 |
+
}
|
2819 |
+
.seed-csp4 .glyphicon-credit-card:before {
|
2820 |
+
content: "\e177";
|
2821 |
+
}
|
2822 |
+
.seed-csp4 .glyphicon-transfer:before {
|
2823 |
+
content: "\e178";
|
2824 |
+
}
|
2825 |
+
.seed-csp4 .glyphicon-cutlery:before {
|
2826 |
+
content: "\e179";
|
2827 |
+
}
|
2828 |
+
.seed-csp4 .glyphicon-header:before {
|
2829 |
+
content: "\e180";
|
2830 |
+
}
|
2831 |
+
.seed-csp4 .glyphicon-compressed:before {
|
2832 |
+
content: "\e181";
|
2833 |
+
}
|
2834 |
+
.seed-csp4 .glyphicon-earphone:before {
|
2835 |
+
content: "\e182";
|
2836 |
+
}
|
2837 |
+
.seed-csp4 .glyphicon-phone-alt:before {
|
2838 |
+
content: "\e183";
|
2839 |
+
}
|
2840 |
+
.seed-csp4 .glyphicon-tower:before {
|
2841 |
+
content: "\e184";
|
2842 |
+
}
|
2843 |
+
.seed-csp4 .glyphicon-stats:before {
|
2844 |
+
content: "\e185";
|
2845 |
+
}
|
2846 |
+
.seed-csp4 .glyphicon-sd-video:before {
|
2847 |
+
content: "\e186";
|
2848 |
+
}
|
2849 |
+
.seed-csp4 .glyphicon-hd-video:before {
|
2850 |
+
content: "\e187";
|
2851 |
+
}
|
2852 |
+
.seed-csp4 .glyphicon-subtitles:before {
|
2853 |
+
content: "\e188";
|
2854 |
+
}
|
2855 |
+
.seed-csp4 .glyphicon-sound-stereo:before {
|
2856 |
+
content: "\e189";
|
2857 |
+
}
|
2858 |
+
.seed-csp4 .glyphicon-sound-dolby:before {
|
2859 |
+
content: "\e190";
|
2860 |
+
}
|
2861 |
+
.seed-csp4 .glyphicon-sound-5-1:before {
|
2862 |
+
content: "\e191";
|
2863 |
+
}
|
2864 |
+
.seed-csp4 .glyphicon-sound-6-1:before {
|
2865 |
+
content: "\e192";
|
2866 |
+
}
|
2867 |
+
.seed-csp4 .glyphicon-sound-7-1:before {
|
2868 |
+
content: "\e193";
|
2869 |
+
}
|
2870 |
+
.seed-csp4 .glyphicon-copyright-mark:before {
|
2871 |
+
content: "\e194";
|
2872 |
+
}
|
2873 |
+
.seed-csp4 .glyphicon-registration-mark:before {
|
2874 |
+
content: "\e195";
|
2875 |
+
}
|
2876 |
+
.seed-csp4 .glyphicon-cloud-download:before {
|
2877 |
+
content: "\e197";
|
2878 |
+
}
|
2879 |
+
.seed-csp4 .glyphicon-cloud-upload:before {
|
2880 |
+
content: "\e198";
|
2881 |
+
}
|
2882 |
+
.seed-csp4 .glyphicon-tree-conifer:before {
|
2883 |
+
content: "\e199";
|
2884 |
+
}
|
2885 |
+
.seed-csp4 .glyphicon-tree-deciduous:before {
|
2886 |
+
content: "\e200";
|
2887 |
+
}
|
2888 |
+
.seed-csp4 .caret {
|
2889 |
+
display: inline-block;
|
2890 |
+
width: 0;
|
2891 |
+
height: 0;
|
2892 |
+
margin-left: 2px;
|
2893 |
+
vertical-align: middle;
|
2894 |
+
border-top: 4px solid;
|
2895 |
+
border-right: 4px solid transparent;
|
2896 |
+
border-left: 4px solid transparent;
|
2897 |
+
}
|
2898 |
+
.seed-csp4 .dropdown {
|
2899 |
+
position: relative;
|
2900 |
+
}
|
2901 |
+
.seed-csp4 .dropdown-toggle:focus {
|
2902 |
+
outline: 0;
|
2903 |
+
}
|
2904 |
+
.seed-csp4 .dropdown-menu {
|
2905 |
+
position: absolute;
|
2906 |
+
top: 100%;
|
2907 |
+
left: 0;
|
2908 |
+
z-index: 1000;
|
2909 |
+
display: none;
|
2910 |
+
float: left;
|
2911 |
+
min-width: 160px;
|
2912 |
+
padding: 5px 0;
|
2913 |
+
margin: 2px 0 0;
|
2914 |
+
list-style: none;
|
2915 |
+
font-size: 14px;
|
2916 |
+
background-color: #ffffff;
|
2917 |
+
border: 1px solid #cccccc;
|
2918 |
+
border: 1px solid rgba(0, 0, 0, 0.15);
|
2919 |
+
border-radius: 4px;
|
2920 |
+
-webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
|
2921 |
+
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
|
2922 |
+
background-clip: padding-box;
|
2923 |
+
}
|
2924 |
+
.seed-csp4 .dropdown-menu.pull-right {
|
2925 |
+
right: 0;
|
2926 |
+
left: auto;
|
2927 |
+
}
|
2928 |
+
.seed-csp4 .dropdown-menu .divider {
|
2929 |
+
height: 1px;
|
2930 |
+
margin: 9px 0;
|
2931 |
+
overflow: hidden;
|
2932 |
+
background-color: #e5e5e5;
|
2933 |
+
}
|
2934 |
+
.seed-csp4 .dropdown-menu > li > a {
|
2935 |
+
display: block;
|
2936 |
+
padding: 3px 20px;
|
2937 |
+
clear: both;
|
2938 |
+
font-weight: normal;
|
2939 |
+
line-height: 1.428571429;
|
2940 |
+
color: #333333;
|
2941 |
+
white-space: nowrap;
|
2942 |
+
}
|
2943 |
+
.seed-csp4 .dropdown-menu > li > a:hover,
|
2944 |
+
.seed-csp4 .dropdown-menu > li > a:focus {
|
2945 |
+
text-decoration: none;
|
2946 |
+
color: #262626;
|
2947 |
+
background-color: #f5f5f5;
|
2948 |
+
}
|
2949 |
+
.seed-csp4 .dropdown-menu > .active > a,
|
2950 |
+
.seed-csp4 .dropdown-menu > .active > a:hover,
|
2951 |
+
.seed-csp4 .dropdown-menu > .active > a:focus {
|
2952 |
+
color: #ffffff;
|
2953 |
+
text-decoration: none;
|
2954 |
+
outline: 0;
|
2955 |
+
background-color: #428bca;
|
2956 |
+
}
|
2957 |
+
.seed-csp4 .dropdown-menu > .disabled > a,
|
2958 |
+
.seed-csp4 .dropdown-menu > .disabled > a:hover,
|
2959 |
+
.seed-csp4 .dropdown-menu > .disabled > a:focus {
|
2960 |
+
color: #999999;
|
2961 |
+
}
|
2962 |
+
.seed-csp4 .dropdown-menu > .disabled > a:hover,
|
2963 |
+
.seed-csp4 .dropdown-menu > .disabled > a:focus {
|
2964 |
+
text-decoration: none;
|
2965 |
+
background-color: transparent;
|
2966 |
+
background-image: none;
|
2967 |
+
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
2968 |
+
cursor: not-allowed;
|
2969 |
+
}
|
2970 |
+
.seed-csp4 .open > .dropdown-menu {
|
2971 |
+
display: block;
|
2972 |
+
}
|
2973 |
+
.seed-csp4 .open > a {
|
2974 |
+
outline: 0;
|
2975 |
+
}
|
2976 |
+
.seed-csp4 .dropdown-header {
|
2977 |
+
display: block;
|
2978 |
+
padding: 3px 20px;
|
2979 |
+
font-size: 12px;
|
2980 |
+
line-height: 1.428571429;
|
2981 |
+
color: #999999;
|
2982 |
+
}
|
2983 |
+
.seed-csp4 .dropdown-backdrop {
|
2984 |
+
position: fixed;
|
2985 |
+
left: 0;
|
2986 |
+
right: 0;
|
2987 |
+
bottom: 0;
|
2988 |
+
top: 0;
|
2989 |
+
z-index: 990;
|
2990 |
+
}
|
2991 |
+
.seed-csp4 .pull-right > .dropdown-menu {
|
2992 |
+
right: 0;
|
2993 |
+
left: auto;
|
2994 |
+
}
|
2995 |
+
.seed-csp4 .dropup .caret,
|
2996 |
+
.seed-csp4 .navbar-fixed-bottom .dropdown .caret {
|
2997 |
+
border-top: 0;
|
2998 |
+
border-bottom: 4px solid;
|
2999 |
+
content: "";
|
3000 |
+
}
|
3001 |
+
.seed-csp4 .dropup .dropdown-menu,
|
3002 |
+
.seed-csp4 .navbar-fixed-bottom .dropdown .dropdown-menu {
|
3003 |
+
top: auto;
|
3004 |
+
bottom: 100%;
|
3005 |
+
margin-bottom: 1px;
|
3006 |
+
}
|
3007 |
+
@media (min-width: 768px) {
|
3008 |
+
.seed-csp4 .navbar-right .dropdown-menu {
|
3009 |
+
right: 0;
|
3010 |
+
left: auto;
|
3011 |
+
}
|
3012 |
+
}
|
3013 |
+
.seed-csp4 .btn-group,
|
3014 |
+
.seed-csp4 .btn-group-vertical {
|
3015 |
+
position: relative;
|
3016 |
+
display: inline-block;
|
3017 |
+
vertical-align: middle;
|
3018 |
+
}
|
3019 |
+
.seed-csp4 .btn-group > .btn,
|
3020 |
+
.seed-csp4 .btn-group-vertical > .btn {
|
3021 |
+
position: relative;
|
3022 |
+
float: left;
|
3023 |
+
}
|
3024 |
+
.seed-csp4 .btn-group > .btn:hover,
|
3025 |
+
.seed-csp4 .btn-group-vertical > .btn:hover,
|
3026 |
+
.seed-csp4 .btn-group > .btn:focus,
|
3027 |
+
.seed-csp4 .btn-group-vertical > .btn:focus,
|
3028 |
+
.seed-csp4 .btn-group > .btn:active,
|
3029 |
+
.seed-csp4 .btn-group-vertical > .btn:active,
|
3030 |
+
.seed-csp4 .btn-group > .btn.active,
|
3031 |
+
.seed-csp4 .btn-group-vertical > .btn.active {
|
3032 |
+
z-index: 2;
|
3033 |
+
}
|
3034 |
+
.seed-csp4 .btn-group > .btn:focus,
|
3035 |
+
.seed-csp4 .btn-group-vertical > .btn:focus {
|
3036 |
+
outline: none;
|
3037 |
+
}
|
3038 |
+
.seed-csp4 .btn-group .btn + .btn,
|
3039 |
+
.seed-csp4 .btn-group .btn + .btn-group,
|
3040 |
+
.seed-csp4 .btn-group .btn-group + .btn,
|
3041 |
+
.seed-csp4 .btn-group .btn-group + .btn-group {
|
3042 |
+
margin-left: -1px;
|
3043 |
+
}
|
3044 |
+
.seed-csp4 .btn-toolbar:before,
|
3045 |
+
.seed-csp4 .btn-toolbar:after {
|
3046 |
+
content: " ";
|
3047 |
+
display: table;
|
3048 |
+
}
|
3049 |
+
.seed-csp4 .btn-toolbar:after {
|
3050 |
+
clear: both;
|
3051 |
+
}
|
3052 |
+
.seed-csp4 .btn-toolbar:before,
|
3053 |
+
.seed-csp4 .btn-toolbar:after {
|
3054 |
+
content: " ";
|
3055 |
+
display: table;
|
3056 |
+
}
|
3057 |
+
.seed-csp4 .btn-toolbar:after {
|
3058 |
+
clear: both;
|
3059 |
+
}
|
3060 |
+
.seed-csp4 .btn-toolbar .btn-group {
|
3061 |
+
float: left;
|
3062 |
+
}
|
3063 |
+
.seed-csp4 .btn-toolbar > .btn + .btn,
|
3064 |
+
.seed-csp4 .btn-toolbar > .btn-group + .btn,
|
3065 |
+
.seed-csp4 .btn-toolbar > .btn + .btn-group,
|
3066 |
+
.seed-csp4 .btn-toolbar > .btn-group + .btn-group {
|
3067 |
+
margin-left: 5px;
|
3068 |
+
}
|
3069 |
+
.seed-csp4 .btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
|
3070 |
+
border-radius: 0;
|
3071 |
+
}
|
3072 |
+
.seed-csp4 .btn-group > .btn:first-child {
|
3073 |
+
margin-left: 0;
|
3074 |
+
}
|
3075 |
+
.seed-csp4 .btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
|
3076 |
+
border-bottom-right-radius: 0;
|
3077 |
+
border-top-right-radius: 0;
|
3078 |
+
}
|
3079 |
+
.seed-csp4 .btn-group > .btn:last-child:not(:first-child),
|
3080 |
+
.seed-csp4 .btn-group > .dropdown-toggle:not(:first-child) {
|
3081 |
+
border-bottom-left-radius: 0;
|
3082 |
+
border-top-left-radius: 0;
|
3083 |
+
}
|
3084 |
+
.seed-csp4 .btn-group > .btn-group {
|
3085 |
+
float: left;
|
3086 |
+
}
|
3087 |
+
.seed-csp4 .btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
|
3088 |
+
border-radius: 0;
|
3089 |
+
}
|
3090 |
+
.seed-csp4 .btn-group > .btn-group:first-child > .btn:last-child,
|
3091 |
+
.seed-csp4 .btn-group > .btn-group:first-child > .dropdown-toggle {
|
3092 |
+
border-bottom-right-radius: 0;
|
3093 |
+
border-top-right-radius: 0;
|
3094 |
+
}
|
3095 |
+
.seed-csp4 .btn-group > .btn-group:last-child > .btn:first-child {
|
3096 |
+
border-bottom-left-radius: 0;
|
3097 |
+
border-top-left-radius: 0;
|
3098 |
+
}
|
3099 |
+
.seed-csp4 .btn-group .dropdown-toggle:active,
|
3100 |
+
.seed-csp4 .btn-group.open .dropdown-toggle {
|
3101 |
+
outline: 0;
|
3102 |
+
}
|
3103 |
+
.seed-csp4 .btn-group-xs > .btn {
|
3104 |
+
padding: 1px 5px;
|
3105 |
+
font-size: 12px;
|
3106 |
+
line-height: 1.5;
|
3107 |
+
border-radius: 3px;
|
3108 |
+
}
|
3109 |
+
.seed-csp4 .btn-group-sm > .btn {
|
3110 |
+
padding: 5px 10px;
|
3111 |
+
font-size: 12px;
|
3112 |
+
line-height: 1.5;
|
3113 |
+
border-radius: 3px;
|
3114 |
+
}
|
3115 |
+
.seed-csp4 .btn-group-lg > .btn {
|
3116 |
+
padding: 10px 16px;
|
3117 |
+
font-size: 18px;
|
3118 |
+
line-height: 1.33;
|
3119 |
+
border-radius: 6px;
|
3120 |
+
}
|
3121 |
+
.seed-csp4 .btn-group > .btn + .dropdown-toggle {
|
3122 |
+
padding-left: 8px;
|
3123 |
+
padding-right: 8px;
|
3124 |
+
}
|
3125 |
+
.seed-csp4 .btn-group > .btn-lg + .dropdown-toggle {
|
3126 |
+
padding-left: 12px;
|
3127 |
+
padding-right: 12px;
|
3128 |
+
}
|
3129 |
+
.seed-csp4 .btn-group.open .dropdown-toggle {
|
3130 |
+
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
|
3131 |
+
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
|
3132 |
+
}
|
3133 |
+
.seed-csp4 .btn-group.open .dropdown-toggle.btn-link {
|
3134 |
+
-webkit-box-shadow: none;
|
3135 |
+
box-shadow: none;
|
3136 |
+
}
|
3137 |
+
.seed-csp4 .btn .caret {
|
3138 |
+
margin-left: 0;
|
3139 |
+
}
|
3140 |
+
.seed-csp4 .btn-lg .caret {
|
3141 |
+
border-width: 5px 5px 0;
|
3142 |
+
border-bottom-width: 0;
|
3143 |
+
}
|
3144 |
+
.seed-csp4 .dropup .btn-lg .caret {
|
3145 |
+
border-width: 0 5px 5px;
|
3146 |
+
}
|
3147 |
+
.seed-csp4 .btn-group-vertical > .btn,
|
3148 |
+
.seed-csp4 .btn-group-vertical > .btn-group,
|
3149 |
+
.seed-csp4 .btn-group-vertical > .btn-group > .btn {
|
3150 |
+
display: block;
|
3151 |
+
float: none;
|
3152 |
+
width: 100%;
|
3153 |
+
max-width: 100%;
|
3154 |
+
}
|
3155 |
+
.seed-csp4 .btn-group-vertical > .btn-group:before,
|
3156 |
+
.seed-csp4 .btn-group-vertical > .btn-group:after {
|
3157 |
+
content: " ";
|
3158 |
+
display: table;
|
3159 |
+
}
|
3160 |
+
.seed-csp4 .btn-group-vertical > .btn-group:after {
|
3161 |
+
clear: both;
|
3162 |
+
}
|
3163 |
+
.seed-csp4 .btn-group-vertical > .btn-group:before,
|
3164 |
+
.seed-csp4 .btn-group-vertical > .btn-group:after {
|
3165 |
+
content: " ";
|
3166 |
+
display: table;
|
3167 |
+
}
|
3168 |
+
.seed-csp4 .btn-group-vertical > .btn-group:after {
|
3169 |
+
clear: both;
|
3170 |
+
}
|
3171 |
+
.seed-csp4 .btn-group-vertical > .btn-group > .btn {
|
3172 |
+
float: none;
|
3173 |
+
}
|
3174 |
+
.seed-csp4 .btn-group-vertical > .btn + .btn,
|
3175 |
+
.seed-csp4 .btn-group-vertical > .btn + .btn-group,
|
3176 |
+
.seed-csp4 .btn-group-vertical > .btn-group + .btn,
|
3177 |
+
.seed-csp4 .btn-group-vertical > .btn-group + .btn-group {
|
3178 |
+
margin-top: -1px;
|
3179 |
+
margin-left: 0;
|
3180 |
+
}
|
3181 |
+
.seed-csp4 .btn-group-vertical > .btn:not(:first-child):not(:last-child) {
|
3182 |
+
border-radius: 0;
|
3183 |
+
}
|
3184 |
+
.seed-csp4 .btn-group-vertical > .btn:first-child:not(:last-child) {
|
3185 |
+
border-top-right-radius: 4px;
|
3186 |
+
border-bottom-right-radius: 0;
|
3187 |
+
border-bottom-left-radius: 0;
|
3188 |
+
}
|
3189 |
+
.seed-csp4 .btn-group-vertical > .btn:last-child:not(:first-child) {
|
3190 |
+
border-bottom-left-radius: 4px;
|
3191 |
+
border-top-right-radius: 0;
|
3192 |
+
border-top-left-radius: 0;
|
3193 |
+
}
|
3194 |
+
.seed-csp4 .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
|
3195 |
+
border-radius: 0;
|
3196 |
+
}
|
3197 |
+
.seed-csp4 .btn-group-vertical > .btn-group:first-child > .btn:last-child,
|
3198 |
+
.seed-csp4 .btn-group-vertical > .btn-group:first-child > .dropdown-toggle {
|
3199 |
+
border-bottom-right-radius: 0;
|
3200 |
+
border-bottom-left-radius: 0;
|
3201 |
+
}
|
3202 |
+
.seed-csp4 .btn-group-vertical > .btn-group:last-child > .btn:first-child {
|
3203 |
+
border-top-right-radius: 0;
|
3204 |
+
border-top-left-radius: 0;
|
3205 |
+
}
|
3206 |
+
.seed-csp4 .btn-group-justified {
|
3207 |
+
display: table;
|
3208 |
+
width: 100%;
|
3209 |
+
table-layout: fixed;
|
3210 |
+
border-collapse: separate;
|
3211 |
+
}
|
3212 |
+
.seed-csp4 .btn-group-justified > .btn,
|
3213 |
+
.seed-csp4 .btn-group-justified > .btn-group {
|
3214 |
+
float: none;
|
3215 |
+
display: table-cell;
|
3216 |
+
width: 1%;
|
3217 |
+
}
|
3218 |
+
.seed-csp4 .btn-group-justified > .btn-group .btn {
|
3219 |
+
width: 100%;
|
3220 |
+
}
|
3221 |
+
.seed-csp4 [data-toggle="buttons"] > .btn > input[type="radio"],
|
3222 |
+
.seed-csp4 [data-toggle="buttons"] > .btn > input[type="checkbox"] {
|
3223 |
+
display: none;
|
3224 |
+
}
|
3225 |
+
.seed-csp4 .input-group {
|
3226 |
+
position: relative;
|
3227 |
+
display: table;
|
3228 |
+
border-collapse: separate;
|
3229 |
+
}
|
3230 |
+
.seed-csp4 .input-group[class*="col-"] {
|
3231 |
+
float: none;
|
3232 |
+
padding-left: 0;
|
3233 |
+
padding-right: 0;
|
3234 |
+
}
|
3235 |
+
.seed-csp4 .input-group .form-control {
|
3236 |
+
width: 100%;
|
3237 |
+
margin-bottom: 0;
|
3238 |
+
}
|
3239 |
+
.seed-csp4 .input-group-lg > .form-control,
|
3240 |
+
.seed-csp4 .input-group-lg > .input-group-addon,
|
3241 |
+
.seed-csp4 .input-group-lg > .input-group-btn > .btn {
|
3242 |
+
height: 46px;
|
3243 |
+
padding: 10px 16px;
|
3244 |
+
font-size: 18px;
|
3245 |
+
line-height: 1.33;
|
3246 |
+
border-radius: 6px;
|
3247 |
+
}
|
3248 |
+
select.seed-csp4 .input-group-lg > .form-control,
|
3249 |
+
select.seed-csp4 .input-group-lg > .input-group-addon,
|
3250 |
+
select.seed-csp4 .input-group-lg > .input-group-btn > .btn {
|
3251 |
+
height: 46px;
|
3252 |
+
line-height: 46px;
|
3253 |
+
}
|
3254 |
+
textarea.seed-csp4 .input-group-lg > .form-control,
|
3255 |
+
textarea.seed-csp4 .input-group-lg > .input-group-addon,
|
3256 |
+
textarea.seed-csp4 .input-group-lg > .input-group-btn > .btn {
|
3257 |
+
height: auto;
|
3258 |
+
}
|
3259 |
+
.seed-csp4 .input-group-sm > .form-control,
|
3260 |
+
.seed-csp4 .input-group-sm > .input-group-addon,
|
3261 |
+
.seed-csp4 .input-group-sm > .input-group-btn > .btn {
|
3262 |
+
height: 30px;
|
3263 |
+
padding: 5px 10px;
|
3264 |
+
font-size: 12px;
|
3265 |
+
line-height: 1.5;
|
3266 |
+
border-radius: 3px;
|
3267 |
+
}
|
3268 |
+
select.seed-csp4 .input-group-sm > .form-control,
|
3269 |
+
select.seed-csp4 .input-group-sm > .input-group-addon,
|
3270 |
+
select.seed-csp4 .input-group-sm > .input-group-btn > .btn {
|
3271 |
+
height: 30px;
|
3272 |
+
line-height: 30px;
|
3273 |
+
}
|
3274 |
+
textarea.seed-csp4 .input-group-sm > .form-control,
|
3275 |
+
textarea.seed-csp4 .input-group-sm > .input-group-addon,
|
3276 |
+
textarea.seed-csp4 .input-group-sm > .input-group-btn > .btn {
|
3277 |
+
height: auto;
|
3278 |
+
}
|
3279 |
+
.seed-csp4 .input-group-addon,
|
3280 |
+
.seed-csp4 .input-group-btn,
|
3281 |
+
.seed-csp4 .input-group .form-control {
|
3282 |
+
display: table-cell;
|
3283 |
+
}
|
3284 |
+
.seed-csp4 .input-group-addon:not(:first-child):not(:last-child),
|
3285 |
+
.seed-csp4 .input-group-btn:not(:first-child):not(:last-child),
|
3286 |
+
.seed-csp4 .input-group .form-control:not(:first-child):not(:last-child) {
|
3287 |
+
border-radius: 0;
|
3288 |
+
}
|
3289 |
+
.seed-csp4 .input-group-addon,
|
3290 |
+
.seed-csp4 .input-group-btn {
|
3291 |
+
width: 1%;
|
3292 |
+
white-space: nowrap;
|
3293 |
+
vertical-align: middle;
|
3294 |
+
}
|
3295 |
+
.seed-csp4 .input-group-addon {
|
3296 |
+
padding: 6px 12px;
|
3297 |
+
font-size: 14px;
|
3298 |
+
font-weight: normal;
|
3299 |
+
line-height: 1;
|
3300 |
+
color: #555555;
|
3301 |
+
text-align: center;
|
3302 |
+
background-color: #eeeeee;
|
3303 |
+
border: 1px solid #cccccc;
|
3304 |
+
border-radius: 4px;
|
3305 |
+
}
|
3306 |
+
.seed-csp4 .input-group-addon.input-sm {
|
3307 |
+
padding: 5px 10px;
|
3308 |
+
font-size: 12px;
|
3309 |
+
border-radius: 3px;
|
3310 |
+
}
|
3311 |
+
.seed-csp4 .input-group-addon.input-lg {
|
3312 |
+
padding: 10px 16px;
|
3313 |
+
font-size: 18px;
|
3314 |
+
border-radius: 6px;
|
3315 |
+
}
|
3316 |
+
.seed-csp4 .input-group-addon input[type="radio"],
|
3317 |
+
.seed-csp4 .input-group-addon input[type="checkbox"] {
|
3318 |
+
margin-top: 0;
|
3319 |
+
}
|
3320 |
+
.seed-csp4 .input-group .form-control:first-child,
|
3321 |
+
.seed-csp4 .input-group-addon:first-child,
|
3322 |
+
.seed-csp4 .input-group-btn:first-child > .btn,
|
3323 |
+
.seed-csp4 .input-group-btn:first-child > .dropdown-toggle,
|
3324 |
+
.seed-csp4 .input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle) {
|
3325 |
+
border-bottom-right-radius: 0;
|
3326 |
+
border-top-right-radius: 0;
|
3327 |
+
}
|
3328 |
+
.seed-csp4 .input-group-addon:first-child {
|
3329 |
+
border-right: 0;
|
3330 |
+
}
|
3331 |
+
.seed-csp4 .input-group .form-control:last-child,
|
3332 |
+
.seed-csp4 .input-group-addon:last-child,
|
3333 |
+
.seed-csp4 .input-group-btn:last-child > .btn,
|
3334 |
+
.seed-csp4 .input-group-btn:last-child > .dropdown-toggle,
|
3335 |
+
.seed-csp4 .input-group-btn:first-child > .btn:not(:first-child) {
|
3336 |
+
border-bottom-left-radius: 0;
|
3337 |
+
border-top-left-radius: 0;
|
3338 |
+
}
|
3339 |
+
.seed-csp4 .input-group-addon:last-child {
|
3340 |
+
border-left: 0;
|
3341 |
+
}
|
3342 |
+
.seed-csp4 .input-group-btn {
|
3343 |
+
position: relative;
|
3344 |
+
white-space: nowrap;
|
3345 |
+
}
|
3346 |
+
.seed-csp4 .input-group-btn:first-child > .btn {
|
3347 |
+
margin-right: -1px;
|
3348 |
+
}
|
3349 |
+
.seed-csp4 .input-group-btn:last-child > .btn {
|
3350 |
+
margin-left: -1px;
|
3351 |
+
}
|
3352 |
+
.seed-csp4 .input-group-btn > .btn {
|
3353 |
+
position: relative;
|
3354 |
+
}
|
3355 |
+
.seed-csp4 .input-group-btn > .btn + .btn {
|
3356 |
+
margin-left: -4px;
|
3357 |
+
}
|
3358 |
+
.seed-csp4 .input-group-btn > .btn:hover,
|
3359 |
+
.seed-csp4 .input-group-btn > .btn:active {
|
3360 |
+
z-index: 2;
|
3361 |
+
}
|
3362 |
+
.seed-csp4 .nav {
|
3363 |
+
margin-bottom: 0;
|
3364 |
+
padding-left: 0;
|
3365 |
+
list-style: none;
|
3366 |
+
}
|
3367 |
+
.seed-csp4 .nav:before,
|
3368 |
+
.seed-csp4 .nav:after {
|
3369 |
+
content: " ";
|
3370 |
+
display: table;
|
3371 |
+
}
|
3372 |
+
.seed-csp4 .nav:after {
|
3373 |
+
clear: both;
|
3374 |
+
}
|
3375 |
+
.seed-csp4 .nav:before,
|
3376 |
+
.seed-csp4 .nav:after {
|
3377 |
+
content: " ";
|
3378 |
+
display: table;
|
3379 |
+
}
|
3380 |
+
.seed-csp4 .nav:after {
|
3381 |
+
clear: both;
|
3382 |
+
}
|
3383 |
+
.seed-csp4 .nav > li {
|
3384 |
+
position: relative;
|
3385 |
+
display: block;
|
3386 |
+
}
|
3387 |
+
.seed-csp4 .nav > li > a {
|
3388 |
+
position: relative;
|
3389 |
+
display: block;
|
3390 |
+
padding: 10px 15px;
|
3391 |
+
}
|
3392 |
+
.seed-csp4 .nav > li > a:hover,
|
3393 |
+
.seed-csp4 .nav > li > a:focus {
|
3394 |
+
text-decoration: none;
|
3395 |
+
background-color: #eeeeee;
|
3396 |
+
}
|
3397 |
+
.seed-csp4 .nav > li.disabled > a {
|
3398 |
+
color: #999999;
|
3399 |
+
}
|
3400 |
+
.seed-csp4 .nav > li.disabled > a:hover,
|
3401 |
+
.seed-csp4 .nav > li.disabled > a:focus {
|
3402 |
+
color: #999999;
|
3403 |
+
text-decoration: none;
|
3404 |
+
background-color: transparent;
|
3405 |
+
cursor: not-allowed;
|
3406 |
+
}
|
3407 |
+
.seed-csp4 .nav .open > a,
|
3408 |
+
.seed-csp4 .nav .open > a:hover,
|
3409 |
+
.seed-csp4 .nav .open > a:focus {
|
3410 |
+
background-color: #eeeeee;
|
3411 |
+
border-color: #428bca;
|
3412 |
+
}
|
3413 |
+
.seed-csp4 .nav .nav-divider {
|
3414 |
+
height: 1px;
|
3415 |
+
margin: 9px 0;
|
3416 |
+
overflow: hidden;
|
3417 |
+
background-color: #e5e5e5;
|
3418 |
+
}
|
3419 |
+
.seed-csp4 .nav > li > a > img {
|
3420 |
+
max-width: none;
|
3421 |
+
}
|
3422 |
+
.seed-csp4 .nav-tabs {
|
3423 |
+
border-bottom: 1px solid #dddddd;
|
3424 |
+
}
|
3425 |
+
.seed-csp4 .nav-tabs > li {
|
3426 |
+
float: left;
|
3427 |
+
margin-bottom: -1px;
|
3428 |
+
}
|
3429 |
+
.seed-csp4 .nav-tabs > li > a {
|
3430 |
+
margin-right: 2px;
|
3431 |
+
line-height: 1.428571429;
|
3432 |
+
border: 1px solid transparent;
|
3433 |
+
border-radius: 4px 4px 0 0;
|
3434 |
+
}
|
3435 |
+
.seed-csp4 .nav-tabs > li > a:hover {
|
3436 |
+
border-color: #eeeeee #eeeeee #dddddd;
|
3437 |
+
}
|
3438 |
+
.seed-csp4 .nav-tabs > li.active > a,
|
3439 |
+
.seed-csp4 .nav-tabs > li.active > a:hover,
|
3440 |
+
.seed-csp4 .nav-tabs > li.active > a:focus {
|
3441 |
+
color: #555555;
|
3442 |
+
background-color: #ffffff;
|
3443 |
+
border: 1px solid #dddddd;
|
3444 |
+
border-bottom-color: transparent;
|
3445 |
+
cursor: default;
|
3446 |
+
}
|
3447 |
+
.seed-csp4 .nav-tabs.nav-justified {
|
3448 |
+
width: 100%;
|
3449 |
+
border-bottom: 0;
|
3450 |
+
}
|
3451 |
+
.seed-csp4 .nav-tabs.nav-justified > li {
|
3452 |
+
float: none;
|
3453 |
+
}
|
3454 |
+
.seed-csp4 .nav-tabs.nav-justified > li > a {
|
3455 |
+
text-align: center;
|
3456 |
+
margin-bottom: 5px;
|
3457 |
+
}
|
3458 |
+
.seed-csp4 .nav-tabs.nav-justified > .dropdown .dropdown-menu {
|
3459 |
+
top: auto;
|
3460 |
+
left: auto;
|
3461 |
+
}
|
3462 |
+
@media (min-width: 768px) {
|
3463 |
+
.seed-csp4 .nav-tabs.nav-justified > li {
|
3464 |
+
display: table-cell;
|
3465 |
+
width: 1%;
|
3466 |
+
}
|
3467 |
+
.seed-csp4 .nav-tabs.nav-justified > li > a {
|
3468 |
+
margin-bottom: 0;
|
3469 |
+
}
|
3470 |
+
}
|
3471 |
+
.seed-csp4 .nav-tabs.nav-justified > li > a {
|
3472 |
+
margin-right: 0;
|
3473 |
+
border-radius: 4px;
|
3474 |
+
}
|
3475 |
+
.seed-csp4 .nav-tabs.nav-justified > .active > a,
|
3476 |
+
.seed-csp4 .nav-tabs.nav-justified > .active > a:hover,
|
3477 |
+
.seed-csp4 .nav-tabs.nav-justified > .active > a:focus {
|
3478 |
+
border: 1px solid #dddddd;
|
3479 |
+
}
|
3480 |
+
@media (min-width: 768px) {
|
3481 |
+
.seed-csp4 .nav-tabs.nav-justified > li > a {
|
3482 |
+
border-bottom: 1px solid #dddddd;
|
3483 |
+
border-radius: 4px 4px 0 0;
|
3484 |
+
}
|
3485 |
+
.seed-csp4 .nav-tabs.nav-justified > .active > a,
|
3486 |
+
.seed-csp4 .nav-tabs.nav-justified > .active > a:hover,
|
3487 |
+
.seed-csp4 .nav-tabs.nav-justified > .active > a:focus {
|
3488 |
+
border-bottom-color: #ffffff;
|
3489 |
+
}
|
3490 |
+
}
|
3491 |
+
.seed-csp4 .nav-pills > li {
|
3492 |
+
float: left;
|
3493 |
+
}
|
3494 |
+
.seed-csp4 .nav-pills > li > a {
|
3495 |
+
border-radius: 4px;
|
3496 |
+
}
|
3497 |
+
.seed-csp4 .nav-pills > li + li {
|
3498 |
+
margin-left: 2px;
|
3499 |
+
}
|
3500 |
+
.seed-csp4 .nav-pills > li.active > a,
|
3501 |
+
.seed-csp4 .nav-pills > li.active > a:hover,
|
3502 |
+
.seed-csp4 .nav-pills > li.active > a:focus {
|
3503 |
+
color: #ffffff;
|
3504 |
+
background-color: #428bca;
|
3505 |
+
}
|
3506 |
+
.seed-csp4 .nav-stacked > li {
|
3507 |
+
float: none;
|
3508 |
+
}
|
3509 |
+
.seed-csp4 .nav-stacked > li + li {
|
3510 |
+
margin-top: 2px;
|
3511 |
+
margin-left: 0;
|
3512 |
+
}
|
3513 |
+
.seed-csp4 .nav-justified {
|
3514 |
+
width: 100%;
|
3515 |
+
}
|
3516 |
+
.seed-csp4 .nav-justified > li {
|
3517 |
+
float: none;
|
3518 |
+
}
|
3519 |
+
.seed-csp4 .nav-justified > li > a {
|
3520 |
+
text-align: center;
|
3521 |
+
margin-bottom: 5px;
|
3522 |
+
}
|
3523 |
+
.seed-csp4 .nav-justified > .dropdown .dropdown-menu {
|
3524 |
+
top: auto;
|
3525 |
+
left: auto;
|
3526 |
+
}
|
3527 |
+
@media (min-width: 768px) {
|
3528 |
+
.seed-csp4 .nav-justified > li {
|
3529 |
+
display: table-cell;
|
3530 |
+
width: 1%;
|
3531 |
+
}
|
3532 |
+
.seed-csp4 .nav-justified > li > a {
|
3533 |
+
margin-bottom: 0;
|
3534 |
+
}
|
3535 |
+
}
|
3536 |
+
.seed-csp4 .nav-tabs-justified {
|
3537 |
+
border-bottom: 0;
|
3538 |
+
}
|
3539 |
+
.seed-csp4 .nav-tabs-justified > li > a {
|
3540 |
+
margin-right: 0;
|
3541 |
+
border-radius: 4px;
|
3542 |
+
}
|
3543 |
+
.seed-csp4 .nav-tabs-justified > .active > a,
|
3544 |
+
.seed-csp4 .nav-tabs-justified > .active > a:hover,
|
3545 |
+
.seed-csp4 .nav-tabs-justified > .active > a:focus {
|
3546 |
+
border: 1px solid #dddddd;
|
3547 |
+
}
|
3548 |
+
@media (min-width: 768px) {
|
3549 |
+
.seed-csp4 .nav-tabs-justified > li > a {
|
3550 |
+
border-bottom: 1px solid #dddddd;
|
3551 |
+
border-radius: 4px 4px 0 0;
|
3552 |
+
}
|
3553 |
+
.seed-csp4 .nav-tabs-justified > .active > a,
|
3554 |
+
.seed-csp4 .nav-tabs-justified > .active > a:hover,
|
3555 |
+
.seed-csp4 .nav-tabs-justified > .active > a:focus {
|
3556 |
+
border-bottom-color: #ffffff;
|
3557 |
+
}
|
3558 |
+
}
|
3559 |
+
.seed-csp4 .tab-content > .tab-pane {
|
3560 |
+
display: none;
|
3561 |
+
}
|
3562 |
+
.seed-csp4 .tab-content > .active {
|
3563 |
+
display: block;
|
3564 |
+
}
|
3565 |
+
.seed-csp4 .nav-tabs .dropdown-menu {
|
3566 |
+
margin-top: -1px;
|
3567 |
+
border-top-right-radius: 0;
|
3568 |
+
border-top-left-radius: 0;
|
3569 |
+
}
|
3570 |
+
.seed-csp4 .navbar {
|
3571 |
+
position: relative;
|
3572 |
+
min-height: 50px;
|
3573 |
+
margin-bottom: 20px;
|
3574 |
+
border: 1px solid transparent;
|
3575 |
+
}
|
3576 |
+
.seed-csp4 .navbar:before,
|
3577 |
+
.seed-csp4 .navbar:after {
|
3578 |
+
content: " ";
|
3579 |
+
display: table;
|
3580 |
+
}
|
3581 |
+
.seed-csp4 .navbar:after {
|
3582 |
+
clear: both;
|
3583 |
+
}
|
3584 |
+
.seed-csp4 .navbar:before,
|
3585 |
+
.seed-csp4 .navbar:after {
|
3586 |
+
content: " ";
|
3587 |
+
display: table;
|
3588 |
+
}
|
3589 |
+
.seed-csp4 .navbar:after {
|
3590 |
+
clear: both;
|
3591 |
+
}
|
3592 |
+
@media (min-width: 768px) {
|
3593 |
+
.seed-csp4 .navbar {
|
3594 |
+
border-radius: 4px;
|
3595 |
+
}
|
3596 |
+
}
|
3597 |
+
.seed-csp4 .navbar-header:before,
|
3598 |
+
.seed-csp4 .navbar-header:after {
|
3599 |
+
content: " ";
|
3600 |
+
display: table;
|
3601 |
+
}
|
3602 |
+
.seed-csp4 .navbar-header:after {
|
3603 |
+
clear: both;
|
3604 |
+
}
|
3605 |
+
.seed-csp4 .navbar-header:before,
|
3606 |
+
.seed-csp4 .navbar-header:after {
|
3607 |
+
content: " ";
|
3608 |
+
display: table;
|
3609 |
+
}
|
3610 |
+
.seed-csp4 .navbar-header:after {
|
3611 |
+
clear: both;
|
3612 |
+
}
|
3613 |
+
@media (min-width: 768px) {
|
3614 |
+
.seed-csp4 .navbar-header {
|
3615 |
+
float: left;
|
3616 |
+
}
|
3617 |
+
}
|
3618 |
+
.seed-csp4 .navbar-collapse {
|
3619 |
+
max-height: 340px;
|
3620 |
+
overflow-x: visible;
|
3621 |
+
padding-right: 15px;
|
3622 |
+
padding-left: 15px;
|
3623 |
+
border-top: 1px solid transparent;
|
3624 |
+
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
|
3625 |
+
-webkit-overflow-scrolling: touch;
|
3626 |
+
}
|
3627 |
+
.seed-csp4 .navbar-collapse:before,
|
3628 |
+
.seed-csp4 .navbar-collapse:after {
|
3629 |
+
content: " ";
|
3630 |
+
display: table;
|
3631 |
+
}
|
3632 |
+
.seed-csp4 .navbar-collapse:after {
|
3633 |
+
clear: both;
|
3634 |
+
}
|
3635 |
+
.seed-csp4 .navbar-collapse:before,
|
3636 |
+
.seed-csp4 .navbar-collapse:after {
|
3637 |
+
content: " ";
|
3638 |
+
display: table;
|
3639 |
+
}
|
3640 |
+
.seed-csp4 .navbar-collapse:after {
|
3641 |
+
clear: both;
|
3642 |
+
}
|
3643 |
+
.seed-csp4 .navbar-collapse.in {
|
3644 |
+
overflow-y: auto;
|
3645 |
+
}
|
3646 |
+
@media (min-width: 768px) {
|
3647 |
+
.seed-csp4 .navbar-collapse {
|
3648 |
+
width: auto;
|
3649 |
+
border-top: 0;
|
3650 |
+
box-shadow: none;
|
3651 |
+
}
|
3652 |
+
.seed-csp4 .navbar-collapse.collapse {
|
3653 |
+
display: block !important;
|
3654 |
+
height: auto !important;
|
3655 |
+
padding-bottom: 0;
|
3656 |
+
overflow: visible !important;
|
3657 |
+
}
|
3658 |
+
.seed-csp4 .navbar-collapse.in {
|
3659 |
+
overflow-y: visible;
|
3660 |
+
}
|
3661 |
+
.navbar-fixed-top .seed-csp4 .navbar-collapse,
|
3662 |
+
.navbar-static-top .seed-csp4 .navbar-collapse,
|
3663 |
+
.navbar-fixed-bottom .seed-csp4 .navbar-collapse {
|
3664 |
+
padding-left: 0;
|
3665 |
+
padding-right: 0;
|
3666 |
+
}
|
3667 |
+
}
|
3668 |
+
.seed-csp4 .container > .navbar-header,
|
3669 |
+
.seed-csp4 .container > .navbar-collapse {
|
3670 |
+
margin-right: -15px;
|
3671 |
+
margin-left: -15px;
|
3672 |
+
}
|
3673 |
+
@media (min-width: 768px) {
|
3674 |
+
.seed-csp4 .container > .navbar-header,
|
3675 |
+
.seed-csp4 .container > .navbar-collapse {
|
3676 |
+
margin-right: 0;
|
3677 |
+
margin-left: 0;
|
3678 |
+
}
|
3679 |
+
}
|
3680 |
+
.seed-csp4 .navbar-static-top {
|
3681 |
+
z-index: 1000;
|
3682 |
+
border-width: 0 0 1px;
|
3683 |
+
}
|
3684 |
+
@media (min-width: 768px) {
|
3685 |
+
.seed-csp4 .navbar-static-top {
|
3686 |
+
border-radius: 0;
|
3687 |
+
}
|
3688 |
+
}
|
3689 |
+
.seed-csp4 .navbar-fixed-top,
|
3690 |
+
.seed-csp4 .navbar-fixed-bottom {
|
3691 |
+
position: fixed;
|
3692 |
+
right: 0;
|
3693 |
+
left: 0;
|
3694 |
+
z-index: 1030;
|
3695 |
+
}
|
3696 |
+
@media (min-width: 768px) {
|
3697 |
+
.seed-csp4 .navbar-fixed-top,
|
3698 |
+
.seed-csp4 .navbar-fixed-bottom {
|
3699 |
+
border-radius: 0;
|
3700 |
+
}
|
3701 |
+
}
|
3702 |
+
.seed-csp4 .navbar-fixed-top {
|
3703 |
+
top: 0;
|
3704 |
+
border-width: 0 0 1px;
|
3705 |
+
}
|
3706 |
+
.seed-csp4 .navbar-fixed-bottom {
|
3707 |
+
bottom: 0;
|
3708 |
+
margin-bottom: 0;
|
3709 |
+
border-width: 1px 0 0;
|
3710 |
+
}
|
3711 |
+
.seed-csp4 .navbar-brand {
|
3712 |
+
float: left;
|
3713 |
+
padding: 15px 15px;
|
3714 |
+
font-size: 18px;
|
3715 |
+
line-height: 20px;
|
3716 |
+
}
|
3717 |
+
.seed-csp4 .navbar-brand:hover,
|
3718 |
+
.seed-csp4 .navbar-brand:focus {
|
3719 |
+
text-decoration: none;
|
3720 |
+
}
|
3721 |
+
@media (min-width: 768px) {
|
3722 |
+
.navbar > .container .seed-csp4 .navbar-brand {
|
3723 |
+
margin-left: -15px;
|
3724 |
+
}
|
3725 |
+
}
|
3726 |
+
.seed-csp4 .navbar-toggle {
|
3727 |
+
position: relative;
|
3728 |
+
float: right;
|
3729 |
+
margin-right: 15px;
|
3730 |
+
padding: 9px 10px;
|
3731 |
+
margin-top: 8px;
|
3732 |
+
margin-bottom: 8px;
|
3733 |
+
background-color: transparent;
|
3734 |
+
background-image: none;
|
3735 |
+
border: 1px solid transparent;
|
3736 |
+
border-radius: 4px;
|
3737 |
+
}
|
3738 |
+
.seed-csp4 .navbar-toggle .icon-bar {
|
3739 |
+
display: block;
|
3740 |
+
width: 22px;
|
3741 |
+
height: 2px;
|
3742 |
+
border-radius: 1px;
|
3743 |
+
}
|
3744 |
+
.seed-csp4 .navbar-toggle .icon-bar + .icon-bar {
|
3745 |
+
margin-top: 4px;
|
3746 |
+
}
|
3747 |
+
@media (min-width: 768px) {
|
3748 |
+
.seed-csp4 .navbar-toggle {
|
3749 |
+
display: none;
|
3750 |
+
}
|
3751 |
+
}
|
3752 |
+
.seed-csp4 .navbar-nav {
|
3753 |
+
margin: 7.5px -15px;
|
3754 |
+
}
|
3755 |
+
.seed-csp4 .navbar-nav > li > a {
|
3756 |
+
padding-top: 10px;
|
3757 |
+
padding-bottom: 10px;
|
3758 |
+
line-height: 20px;
|
3759 |
+
}
|
3760 |
+
@media (max-width: 767px) {
|
3761 |
+
.seed-csp4 .navbar-nav .open .dropdown-menu {
|
3762 |
+
position: static;
|
3763 |
+
float: none;
|
3764 |
+
width: auto;
|
3765 |
+
margin-top: 0;
|
3766 |
+
background-color: transparent;
|
3767 |
+
border: 0;
|
3768 |
+
box-shadow: none;
|
3769 |
+
}
|
3770 |
+
.seed-csp4 .navbar-nav .open .dropdown-menu > li > a,
|
3771 |
+
.seed-csp4 .navbar-nav .open .dropdown-menu .dropdown-header {
|
3772 |
+
padding: 5px 15px 5px 25px;
|
3773 |
+
}
|
3774 |
+
.seed-csp4 .navbar-nav .open .dropdown-menu > li > a {
|
3775 |
+
line-height: 20px;
|
3776 |
+
}
|
3777 |
+
.seed-csp4 .navbar-nav .open .dropdown-menu > li > a:hover,
|
3778 |
+
.seed-csp4 .navbar-nav .open .dropdown-menu > li > a:focus {
|
3779 |
+
background-image: none;
|
3780 |
+
}
|
3781 |
+
}
|
3782 |
+
@media (min-width: 768px) {
|
3783 |
+
.seed-csp4 .navbar-nav {
|
3784 |
+
float: left;
|
3785 |
+
margin: 0;
|
3786 |
+
}
|
3787 |
+
.seed-csp4 .navbar-nav > li {
|
3788 |
+
float: left;
|
3789 |
+
}
|
3790 |
+
.seed-csp4 .navbar-nav > li > a {
|
3791 |
+
padding-top: 15px;
|
3792 |
+
padding-bottom: 15px;
|
3793 |
+
}
|
3794 |
+
.seed-csp4 .navbar-nav.navbar-right:last-child {
|
3795 |
+
margin-right: -15px;
|
3796 |
+
}
|
3797 |
+
}
|
3798 |
+
@media (min-width: 768px) {
|
3799 |
+
.seed-csp4 .navbar-left {
|
3800 |
+
float: left !important;
|
3801 |
+
}
|
3802 |
+
.seed-csp4 .navbar-right {
|
3803 |
+
float: right !important;
|
3804 |
+
}
|
3805 |
+
}
|
3806 |
+
.seed-csp4 .navbar-form {
|
3807 |
+
margin-left: -15px;
|
3808 |
+
margin-right: -15px;
|
3809 |
+
padding: 10px 15px;
|
3810 |
+
border-top: 1px solid transparent;
|
3811 |
+
border-bottom: 1px solid transparent;
|
3812 |
+
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
|
3813 |
+
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
|
3814 |
+
margin-top: 8px;
|
3815 |
+
margin-bottom: 8px;
|
3816 |
+
}
|
3817 |
+
@media (min-width: 768px) {
|
3818 |
+
.seed-csp4 .navbar-form .form-group {
|
3819 |
+
display: inline-block;
|
3820 |
+
margin-bottom: 0;
|
3821 |
+
vertical-align: middle;
|
3822 |
+
}
|
3823 |
+
.seed-csp4 .navbar-form .form-control {
|
3824 |
+
display: inline-block;
|
3825 |
+
}
|
3826 |
+
.seed-csp4 .navbar-form select.form-control {
|
3827 |
+
width: auto;
|
3828 |
+
}
|
3829 |
+
.seed-csp4 .navbar-form .radio,
|
3830 |
+
.seed-csp4 .navbar-form .checkbox {
|
3831 |
+
display: inline-block;
|
3832 |
+
margin-top: 0;
|
3833 |
+
margin-bottom: 0;
|
3834 |
+
padding-left: 0;
|
3835 |
+
}
|
3836 |
+
.seed-csp4 .navbar-form .radio input[type="radio"],
|
3837 |
+
.seed-csp4 .navbar-form .checkbox input[type="checkbox"] {
|
3838 |
+
float: none;
|
3839 |
+
margin-left: 0;
|
3840 |
+
}
|
3841 |
+
}
|
3842 |
+
@media (max-width: 767px) {
|
3843 |
+
.seed-csp4 .navbar-form .form-group {
|
3844 |
+
margin-bottom: 5px;
|
3845 |
+
}
|
3846 |
+
}
|
3847 |
+
@media (min-width: 768px) {
|
3848 |
+
.seed-csp4 .navbar-form {
|
3849 |
+
width: auto;
|
3850 |
+
border: 0;
|
3851 |
+
margin-left: 0;
|
3852 |
+
margin-right: 0;
|
3853 |
+
padding-top: 0;
|
3854 |
+
padding-bottom: 0;
|
3855 |
+
-webkit-box-shadow: none;
|
3856 |
+
box-shadow: none;
|
3857 |
+
}
|
3858 |
+
.seed-csp4 .navbar-form.navbar-right:last-child {
|
3859 |
+
margin-right: -15px;
|
3860 |
+
}
|
3861 |
+
}
|
3862 |
+
.seed-csp4 .navbar-nav > li > .dropdown-menu {
|
3863 |
+
margin-top: 0;
|
3864 |
+
border-top-right-radius: 0;
|
3865 |
+
border-top-left-radius: 0;
|
3866 |
+
}
|
3867 |
+
.seed-csp4 .navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
|
3868 |
+
border-bottom-right-radius: 0;
|
3869 |
+
border-bottom-left-radius: 0;
|
3870 |
+
}
|
3871 |
+
.seed-csp4 .navbar-nav.pull-right > li > .dropdown-menu,
|
3872 |
+
.seed-csp4 .navbar-nav > li > .dropdown-menu.pull-right {
|
3873 |
+
left: auto;
|
3874 |
+
right: 0;
|
3875 |
+
}
|
3876 |
+
.seed-csp4 .navbar-btn {
|
3877 |
+
margin-top: 8px;
|
3878 |
+
margin-bottom: 8px;
|
3879 |
+
}
|
3880 |
+
.seed-csp4 .navbar-btn.btn-sm {
|
3881 |
+
margin-top: 10px;
|
3882 |
+
margin-bottom: 10px;
|
3883 |
+
}
|
3884 |
+
.seed-csp4 .navbar-btn.btn-xs {
|
3885 |
+
margin-top: 14px;
|
3886 |
+
margin-bottom: 14px;
|
3887 |
+
}
|
3888 |
+
.seed-csp4 .navbar-text {
|
3889 |
+
margin-top: 15px;
|
3890 |
+
margin-bottom: 15px;
|
3891 |
+
}
|
3892 |
+
@media (min-width: 768px) {
|
3893 |
+
.seed-csp4 .navbar-text {
|
3894 |
+
float: left;
|
3895 |
+
margin-left: 15px;
|
3896 |
+
margin-right: 15px;
|
3897 |
+
}
|
3898 |
+
.seed-csp4 .navbar-text.navbar-right:last-child {
|
3899 |
+
margin-right: 0;
|
3900 |
+
}
|
3901 |
+
}
|
3902 |
+
.seed-csp4 .navbar-default {
|
3903 |
+
background-color: #f8f8f8;
|
3904 |
+
border-color: #e7e7e7;
|
3905 |
+
}
|
3906 |
+
.seed-csp4 .navbar-default .navbar-brand {
|
3907 |
+
color: #777777;
|
3908 |
+
}
|
3909 |
+
.seed-csp4 .navbar-default .navbar-brand:hover,
|
3910 |
+
.seed-csp4 .navbar-default .navbar-brand:focus {
|
3911 |
+
color: #5e5e5e;
|
3912 |
+
background-color: transparent;
|
3913 |
+
}
|
3914 |
+
.seed-csp4 .navbar-default .navbar-text {
|
3915 |
+
color: #777777;
|
3916 |
+
}
|
3917 |
+
.seed-csp4 .navbar-default .navbar-nav > li > a {
|
3918 |
+
color: #777777;
|
3919 |
+
}
|
3920 |
+
.seed-csp4 .navbar-default .navbar-nav > li > a:hover,
|
3921 |
+
.seed-csp4 .navbar-default .navbar-nav > li > a:focus {
|
3922 |
+
color: #333333;
|
3923 |
+
background-color: transparent;
|
3924 |
+
}
|
3925 |
+
.seed-csp4 .navbar-default .navbar-nav > .active > a,
|
3926 |
+
.seed-csp4 .navbar-default .navbar-nav > .active > a:hover,
|
3927 |
+
.seed-csp4 .navbar-default .navbar-nav > .active > a:focus {
|
3928 |
+
color: #555555;
|
3929 |
+
background-color: #e7e7e7;
|
3930 |
+
}
|
3931 |
+
.seed-csp4 .navbar-default .navbar-nav > .disabled > a,
|
3932 |
+
.seed-csp4 .navbar-default .navbar-nav > .disabled > a:hover,
|
3933 |
+
.seed-csp4 .navbar-default .navbar-nav > .disabled > a:focus {
|
3934 |
+
color: #cccccc;
|
3935 |
+
background-color: transparent;
|
3936 |
+
}
|
3937 |
+
.seed-csp4 .navbar-default .navbar-toggle {
|
3938 |
+
border-color: #dddddd;
|
3939 |
+
}
|
3940 |
+
.seed-csp4 .navbar-default .navbar-toggle:hover,
|
3941 |
+
.seed-csp4 .navbar-default .navbar-toggle:focus {
|
3942 |
+
background-color: #dddddd;
|
3943 |
+
}
|
3944 |
+
.seed-csp4 .navbar-default .navbar-toggle .icon-bar {
|
3945 |
+
background-color: #cccccc;
|
3946 |
+
}
|
3947 |
+
.seed-csp4 .navbar-default .navbar-collapse,
|
3948 |
+
.seed-csp4 .navbar-default .navbar-form {
|
3949 |
+
border-color: #e7e7e7;
|
3950 |
+
}
|
3951 |
+
.seed-csp4 .navbar-default .navbar-nav > .open > a,
|
3952 |
+
.seed-csp4 .navbar-default .navbar-nav > .open > a:hover,
|
3953 |
+
.seed-csp4 .navbar-default .navbar-nav > .open > a:focus {
|
3954 |
+
background-color: #e7e7e7;
|
3955 |
+
color: #555555;
|
3956 |
+
}
|
3957 |
+
@media (max-width: 767px) {
|
3958 |
+
.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu > li > a {
|
3959 |
+
color: #777777;
|
3960 |
+
}
|
3961 |
+
.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
|
3962 |
+
.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
|
3963 |
+
color: #333333;
|
3964 |
+
background-color: transparent;
|
3965 |
+
}
|
3966 |
+
.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu > .active > a,
|
3967 |
+
.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,
|
3968 |
+
.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
|
3969 |
+
color: #555555;
|
3970 |
+
background-color: #e7e7e7;
|
3971 |
+
}
|
3972 |
+
.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,
|
3973 |
+
.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,
|
3974 |
+
.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
|
3975 |
+
color: #cccccc;
|
3976 |
+
background-color: transparent;
|
3977 |
+
}
|
3978 |
+
}
|
3979 |
+
.seed-csp4 .navbar-default .navbar-link {
|
3980 |
+
color: #777777;
|
3981 |
+
}
|
3982 |
+
.seed-csp4 .navbar-default .navbar-link:hover {
|
3983 |
+
color: #333333;
|
3984 |
+
}
|
3985 |
+
.seed-csp4 .navbar-inverse {
|
3986 |
+
background-color: #222222;
|
3987 |
+
border-color: #080808;
|
3988 |
+
}
|
3989 |
+
.seed-csp4 .navbar-inverse .navbar-brand {
|
3990 |
+
color: #999999;
|
3991 |
+
}
|
3992 |
+
.seed-csp4 .navbar-inverse .navbar-brand:hover,
|
3993 |
+
.seed-csp4 .navbar-inverse .navbar-brand:focus {
|
3994 |
+
color: #ffffff;
|
3995 |
+
background-color: transparent;
|
3996 |
+
}
|
3997 |
+
.seed-csp4 .navbar-inverse .navbar-text {
|
3998 |
+
color: #999999;
|
3999 |
+
}
|
4000 |
+
.seed-csp4 .navbar-inverse .navbar-nav > li > a {
|
4001 |
+
color: #999999;
|
4002 |
+
}
|
4003 |
+
.seed-csp4 .navbar-inverse .navbar-nav > li > a:hover,
|
4004 |
+
.seed-csp4 .navbar-inverse .navbar-nav > li > a:focus {
|
4005 |
+
color: #ffffff;
|
4006 |
+
background-color: transparent;
|
4007 |
+
}
|
4008 |
+
.seed-csp4 .navbar-inverse .navbar-nav > .active > a,
|
4009 |
+
.seed-csp4 .navbar-inverse .navbar-nav > .active > a:hover,
|
4010 |
+
.seed-csp4 .navbar-inverse .navbar-nav > .active > a:focus {
|
4011 |
+
color: #ffffff;
|
4012 |
+
background-color: #080808;
|
4013 |
+
}
|
4014 |
+
.seed-csp4 .navbar-inverse .navbar-nav > .disabled > a,
|
4015 |
+
.seed-csp4 .navbar-inverse .navbar-nav > .disabled > a:hover,
|
4016 |
+
.seed-csp4 .navbar-inverse .navbar-nav > .disabled > a:focus {
|
4017 |
+
color: #444444;
|
4018 |
+
background-color: transparent;
|
4019 |
+
}
|
4020 |
+
.seed-csp4 .navbar-inverse .navbar-toggle {
|
4021 |
+
border-color: #333333;
|
4022 |
+
}
|
4023 |
+
.seed-csp4 .navbar-inverse .navbar-toggle:hover,
|
4024 |
+
.seed-csp4 .navbar-inverse .navbar-toggle:focus {
|
4025 |
+
background-color: #333333;
|
4026 |
+
}
|
4027 |
+
.seed-csp4 .navbar-inverse .navbar-toggle .icon-bar {
|
4028 |
+
background-color: #ffffff;
|
4029 |
+
}
|
4030 |
+
.seed-csp4 .navbar-inverse .navbar-collapse,
|
4031 |
+
.seed-csp4 .navbar-inverse .navbar-form {
|
4032 |
+
border-color: #101010;
|
4033 |
+
}
|
4034 |
+
.seed-csp4 .navbar-inverse .navbar-nav > .open > a,
|
4035 |
+
.seed-csp4 .navbar-inverse .navbar-nav > .open > a:hover,
|
4036 |
+
.seed-csp4 .navbar-inverse .navbar-nav > .open > a:focus {
|
4037 |
+
background-color: #080808;
|
4038 |
+
color: #ffffff;
|
4039 |
+
}
|
4040 |
+
@media (max-width: 767px) {
|
4041 |
+
.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
|
4042 |
+
border-color: #080808;
|
4043 |
+
}
|
4044 |
+
.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
|
4045 |
+
background-color: #080808;
|
4046 |
+
}
|
4047 |
+
.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
|
4048 |
+
color: #999999;
|
4049 |
+
}
|
4050 |
+
.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,
|
4051 |
+
.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
|
4052 |
+
color: #ffffff;
|
4053 |
+
background-color: transparent;
|
4054 |
+
}
|
4055 |
+
.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,
|
4056 |
+
.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,
|
4057 |
+
.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
|
4058 |
+
color: #ffffff;
|
4059 |
+
background-color: #080808;
|
4060 |
+
}
|
4061 |
+
.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,
|
4062 |
+
.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,
|
4063 |
+
.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
|
4064 |
+
color: #444444;
|
4065 |
+
background-color: transparent;
|
4066 |
+
}
|
4067 |
+
}
|
4068 |
+
.seed-csp4 .navbar-inverse .navbar-link {
|
4069 |
+
color: #999999;
|
4070 |
+
}
|
4071 |
+
.seed-csp4 .navbar-inverse .navbar-link:hover {
|
4072 |
+
color: #ffffff;
|
4073 |
+
}
|
4074 |
+
.seed-csp4 .breadcrumb {
|
4075 |
+
padding: 8px 15px;
|
4076 |
+
margin-bottom: 20px;
|
4077 |
+
list-style: none;
|
4078 |
+
background-color: #f5f5f5;
|
4079 |
+
border-radius: 4px;
|
4080 |
+
}
|
4081 |
+
.seed-csp4 .breadcrumb > li {
|
4082 |
+
display: inline-block;
|
4083 |
+
}
|
4084 |
+
.seed-csp4 .breadcrumb > li + li:before {
|
4085 |
+
content: "/\00a0";
|
4086 |
+
padding: 0 5px;
|
4087 |
+
color: #cccccc;
|
4088 |
+
}
|
4089 |
+
.seed-csp4 .breadcrumb > .active {
|
4090 |
+
color: #999999;
|
4091 |
+
}
|
4092 |
+
.seed-csp4 .pagination {
|
4093 |
+
display: inline-block;
|
4094 |
+
padding-left: 0;
|
4095 |
+
margin: 20px 0;
|
4096 |
+
border-radius: 4px;
|
4097 |
+
}
|
4098 |
+
.seed-csp4 .pagination > li {
|
4099 |
+
display: inline;
|
4100 |
+
}
|
4101 |
+
.seed-csp4 .pagination > li > a,
|
4102 |
+
.seed-csp4 .pagination > li > span {
|
4103 |
+
position: relative;
|
4104 |
+
float: left;
|
4105 |
+
padding: 6px 12px;
|
4106 |
+
line-height: 1.428571429;
|
4107 |
+
text-decoration: none;
|
4108 |
+
background-color: #ffffff;
|
4109 |
+
border: 1px solid #dddddd;
|
4110 |
+
margin-left: -1px;
|
4111 |
+
}
|
4112 |
+
.seed-csp4 .pagination > li:first-child > a,
|
4113 |
+
.seed-csp4 .pagination > li:first-child > span {
|
4114 |
+
margin-left: 0;
|
4115 |
+
border-bottom-left-radius: 4px;
|
4116 |
+
border-top-left-radius: 4px;
|
4117 |
+
}
|
4118 |
+
.seed-csp4 .pagination > li:last-child > a,
|
4119 |
+
.seed-csp4 .pagination > li:last-child > span {
|
4120 |
+
border-bottom-right-radius: 4px;
|
4121 |
+
border-top-right-radius: 4px;
|
4122 |
+
}
|
4123 |
+
.seed-csp4 .pagination > li > a:hover,
|
4124 |
+
.seed-csp4 .pagination > li > span:hover,
|
4125 |
+
.seed-csp4 .pagination > li > a:focus,
|
4126 |
+
.seed-csp4 .pagination > li > span:focus {
|
4127 |
+
background-color: #eeeeee;
|
4128 |
+
}
|
4129 |
+
.seed-csp4 .pagination > .active > a,
|
4130 |
+
.seed-csp4 .pagination > .active > span,
|
4131 |
+
.seed-csp4 .pagination > .active > a:hover,
|
4132 |
+
.seed-csp4 .pagination > .active > span:hover,
|
4133 |
+
.seed-csp4 .pagination > .active > a:focus,
|
4134 |
+
.seed-csp4 .pagination > .active > span:focus {
|
4135 |
+
z-index: 2;
|
4136 |
+
color: #ffffff;
|
4137 |
+
background-color: #428bca;
|
4138 |
+
border-color: #428bca;
|
4139 |
+
cursor: default;
|
4140 |
+
}
|
4141 |
+
.seed-csp4 .pagination > .disabled > span,
|
4142 |
+
.seed-csp4 .pagination > .disabled > span:hover,
|
4143 |
+
.seed-csp4 .pagination > .disabled > span:focus,
|
4144 |
+
.seed-csp4 .pagination > .disabled > a,
|
4145 |
+
.seed-csp4 .pagination > .disabled > a:hover,
|
4146 |
+
.seed-csp4 .pagination > .disabled > a:focus {
|
4147 |
+
color: #999999;
|
4148 |
+
background-color: #ffffff;
|
4149 |
+
border-color: #dddddd;
|
4150 |
+
cursor: not-allowed;
|
4151 |
+
}
|
4152 |
+
.seed-csp4 .pagination-lg > li > a,
|
4153 |
+
.seed-csp4 .pagination-lg > li > span {
|
4154 |
+
padding: 10px 16px;
|
4155 |
+
font-size: 18px;
|
4156 |
+
}
|
4157 |
+
.seed-csp4 .pagination-lg > li:first-child > a,
|
4158 |
+
.seed-csp4 .pagination-lg > li:first-child > span {
|
4159 |
+
border-bottom-left-radius: 6px;
|
4160 |
+
border-top-left-radius: 6px;
|
4161 |
+
}
|
4162 |
+
.seed-csp4 .pagination-lg > li:last-child > a,
|
4163 |
+
.seed-csp4 .pagination-lg > li:last-child > span {
|
4164 |
+
border-bottom-right-radius: 6px;
|
4165 |
+
border-top-right-radius: 6px;
|
4166 |
+
}
|
4167 |
+
.seed-csp4 .pagination-sm > li > a,
|
4168 |
+
.seed-csp4 .pagination-sm > li > span {
|
4169 |
+
padding: 5px 10px;
|
4170 |
+
font-size: 12px;
|
4171 |
+
}
|
4172 |
+
.seed-csp4 .pagination-sm > li:first-child > a,
|
4173 |
+
.seed-csp4 .pagination-sm > li:first-child > span {
|
4174 |
+
border-bottom-left-radius: 3px;
|
4175 |
+
border-top-left-radius: 3px;
|
4176 |
+
}
|
4177 |
+
.seed-csp4 .pagination-sm > li:last-child > a,
|
4178 |
+
.seed-csp4 .pagination-sm > li:last-child > span {
|
4179 |
+
border-bottom-right-radius: 3px;
|
4180 |
+
border-top-right-radius: 3px;
|
4181 |
+
}
|
4182 |
+
.seed-csp4 .pager {
|
4183 |
+
padding-left: 0;
|
4184 |
+
margin: 20px 0;
|
4185 |
+
list-style: none;
|
4186 |
+
text-align: center;
|
4187 |
+
}
|
4188 |
+
.seed-csp4 .pager:before,
|
4189 |
+
.seed-csp4 .pager:after {
|
4190 |
+
content: " ";
|
4191 |
+
display: table;
|
4192 |
+
}
|
4193 |
+
.seed-csp4 .pager:after {
|
4194 |
+
clear: both;
|
4195 |
+
}
|
4196 |
+
.seed-csp4 .pager:before,
|
4197 |
+
.seed-csp4 .pager:after {
|
4198 |
+
content: " ";
|
4199 |
+
display: table;
|
4200 |
+
}
|
4201 |
+
.seed-csp4 .pager:after {
|
4202 |
+
clear: both;
|
4203 |
+
}
|
4204 |
+
.seed-csp4 .pager li {
|
4205 |
+
display: inline;
|
4206 |
+
}
|
4207 |
+
.seed-csp4 .pager li > a,
|
4208 |
+
.seed-csp4 .pager li > span {
|
4209 |
+
display: inline-block;
|
4210 |
+
padding: 5px 14px;
|
4211 |
+
background-color: #ffffff;
|
4212 |
+
border: 1px solid #dddddd;
|
4213 |
+
border-radius: 15px;
|
4214 |
+
}
|
4215 |
+
.seed-csp4 .pager li > a:hover,
|
4216 |
+
.seed-csp4 .pager li > a:focus {
|
4217 |
+
text-decoration: none;
|
4218 |
+
background-color: #eeeeee;
|
4219 |
+
}
|
4220 |
+
.seed-csp4 .pager .next > a,
|
4221 |
+
.seed-csp4 .pager .next > span {
|
4222 |
+
float: right;
|
4223 |
+
}
|
4224 |
+
.seed-csp4 .pager .previous > a,
|
4225 |
+
.seed-csp4 .pager .previous > span {
|
4226 |
+
float: left;
|
4227 |
+
}
|
4228 |
+
.seed-csp4 .pager .disabled > a,
|
4229 |
+
.seed-csp4 .pager .disabled > a:hover,
|
4230 |
+
.seed-csp4 .pager .disabled > a:focus,
|
4231 |
+
.seed-csp4 .pager .disabled > span {
|
4232 |
+
color: #999999;
|
4233 |
+
background-color: #ffffff;
|
4234 |
+
cursor: not-allowed;
|
4235 |
+
}
|
4236 |
+
.seed-csp4 .label {
|
4237 |
+
display: inline;
|
4238 |
+
padding: .2em .6em .3em;
|
4239 |
+
font-size: 75%;
|
4240 |
+
font-weight: bold;
|
4241 |
+
line-height: 1;
|
4242 |
+
color: #ffffff;
|
4243 |
+
text-align: center;
|
4244 |
+
white-space: nowrap;
|
4245 |
+
vertical-align: baseline;
|
4246 |
+
border-radius: .25em;
|
4247 |
+
}
|
4248 |
+
.seed-csp4 .label[href]:hover,
|
4249 |
+
.seed-csp4 .label[href]:focus {
|
4250 |
+
color: #ffffff;
|
4251 |
+
text-decoration: none;
|
4252 |
+
cursor: pointer;
|
4253 |
+
}
|
4254 |
+
.seed-csp4 .label:empty {
|
4255 |
+
display: none;
|
4256 |
+
}
|
4257 |
+
.btn .seed-csp4 .label {
|
4258 |
+
position: relative;
|
4259 |
+
top: -1px;
|
4260 |
+
}
|
4261 |
+
.seed-csp4 .label-default {
|
4262 |
+
background-color: #999999;
|
4263 |
+
}
|
4264 |
+
.seed-csp4 .label-default[href]:hover,
|
4265 |
+
.seed-csp4 .label-default[href]:focus {
|
4266 |
+
background-color: #808080;
|
4267 |
+
}
|
4268 |
+
.seed-csp4 .label-primary {
|
4269 |
+
background-color: #428bca;
|
4270 |
+
}
|
4271 |
+
.seed-csp4 .label-primary[href]:hover,
|
4272 |
+
.seed-csp4 .label-primary[href]:focus {
|
4273 |
+
background-color: #3071a9;
|
4274 |
+
}
|
4275 |
+
.seed-csp4 .label-success {
|
4276 |
+
background-color: #5cb85c;
|
4277 |
+
}
|
4278 |
+
.seed-csp4 .label-success[href]:hover,
|
4279 |
+
.seed-csp4 .label-success[href]:focus {
|
4280 |
+
background-color: #449d44;
|
4281 |
+
}
|
4282 |
+
.seed-csp4 .label-info {
|
4283 |
+
background-color: #5bc0de;
|
4284 |
+
}
|
4285 |
+
.seed-csp4 .label-info[href]:hover,
|
4286 |
+
.seed-csp4 .label-info[href]:focus {
|
4287 |
+
background-color: #31b0d5;
|
4288 |
+
}
|
4289 |
+
.seed-csp4 .label-warning {
|
4290 |
+
background-color: #f0ad4e;
|
4291 |
+
}
|
4292 |
+
.seed-csp4 .label-warning[href]:hover,
|
4293 |
+
.seed-csp4 .label-warning[href]:focus {
|
4294 |
+
background-color: #ec971f;
|
4295 |
+
}
|
4296 |
+
.seed-csp4 .label-danger {
|
4297 |
+
background-color: #d9534f;
|
4298 |
+
}
|
4299 |
+
.seed-csp4 .label-danger[href]:hover,
|
4300 |
+
.seed-csp4 .label-danger[href]:focus {
|
4301 |
+
background-color: #c9302c;
|
4302 |
+
}
|
4303 |
+
.seed-csp4 .badge {
|
4304 |
+
display: inline-block;
|
4305 |
+
min-width: 10px;
|
4306 |
+
padding: 3px 7px;
|
4307 |
+
font-size: 12px;
|
4308 |
+
font-weight: bold;
|
4309 |
+
color: #ffffff;
|
4310 |
+
line-height: 1;
|
4311 |
+
vertical-align: baseline;
|
4312 |
+
white-space: nowrap;
|
4313 |
+
text-align: center;
|
4314 |
+
background-color: #999999;
|
4315 |
+
border-radius: 10px;
|
4316 |
+
}
|
4317 |
+
.seed-csp4 .badge:empty {
|
4318 |
+
display: none;
|
4319 |
+
}
|
4320 |
+
.btn .seed-csp4 .badge {
|
4321 |
+
position: relative;
|
4322 |
+
top: -1px;
|
4323 |
+
}
|
4324 |
+
.seed-csp4 a.badge:hover,
|
4325 |
+
.seed-csp4 a.badge:focus {
|
4326 |
+
color: #ffffff;
|
4327 |
+
text-decoration: none;
|
4328 |
+
cursor: pointer;
|
4329 |
+
}
|
4330 |
+
.seed-csp4 a.list-group-item.active > .badge,
|
4331 |
+
.seed-csp4 .nav-pills > .active > a > .badge {
|
4332 |
+
color: #428bca;
|
4333 |
+
background-color: #ffffff;
|
4334 |
+
}
|
4335 |
+
.seed-csp4 .nav-pills > li > a > .badge {
|
4336 |
+
margin-left: 3px;
|
4337 |
+
}
|
4338 |
+
.seed-csp4 .jumbotron {
|
4339 |
+
padding: 30px;
|
4340 |
+
margin-bottom: 30px;
|
4341 |
+
font-size: 21px;
|
4342 |
+
font-weight: 200;
|
4343 |
+
line-height: 2.1428571435;
|
4344 |
+
color: inherit;
|
4345 |
+
background-color: #eeeeee;
|
4346 |
+
}
|
4347 |
+
.seed-csp4 .jumbotron h1,
|
4348 |
+
.seed-csp4 .jumbotron .h1 {
|
4349 |
+
line-height: 1;
|
4350 |
+
color: inherit;
|
4351 |
+
}
|
4352 |
+
.seed-csp4 .jumbotron p {
|
4353 |
+
line-height: 1.4;
|
4354 |
+
}
|
4355 |
+
.container .seed-csp4 .jumbotron {
|
4356 |
+
border-radius: 6px;
|
4357 |
+
}
|
4358 |
+
.seed-csp4 .jumbotron .container {
|
4359 |
+
max-width: 100%;
|
4360 |
+
}
|
4361 |
+
@media screen and (min-width: 768px) {
|
4362 |
+
.seed-csp4 .jumbotron {
|
4363 |
+
padding-top: 48px;
|
4364 |
+
padding-bottom: 48px;
|
4365 |
+
}
|
4366 |
+
.container .seed-csp4 .jumbotron {
|
4367 |
+
padding-left: 60px;
|
4368 |
+
padding-right: 60px;
|
4369 |
+
}
|
4370 |
+
.seed-csp4 .jumbotron h1,
|
4371 |
+
.seed-csp4 .jumbotron .h1 {
|
4372 |
+
font-size: 63px;
|
4373 |
+
}
|
4374 |
+
}
|
4375 |
+
.seed-csp4 .thumbnail {
|
4376 |
+
display: block;
|
4377 |
+
padding: 4px;
|
4378 |
+
margin-bottom: 20px;
|
4379 |
+
line-height: 1.428571429;
|
4380 |
+
background-color: #ffffff;
|
4381 |
+
border: 1px solid #dddddd;
|
4382 |
+
border-radius: 4px;
|
4383 |
+
-webkit-transition: all 0.2s ease-in-out;
|
4384 |
+
transition: all 0.2s ease-in-out;
|
4385 |
+
}
|
4386 |
+
.seed-csp4 .thumbnail > img,
|
4387 |
+
.seed-csp4 .thumbnail a > img {
|
4388 |
+
display: block;
|
4389 |
+
max-width: 100%;
|
4390 |
+
height: auto;
|
4391 |
+
margin-left: auto;
|
4392 |
+
margin-right: auto;
|
4393 |
+
}
|
4394 |
+
a.seed-csp4 .thumbnail:hover,
|
4395 |
+
a.seed-csp4 .thumbnail:focus,
|
4396 |
+
a.seed-csp4 .thumbnail.active {
|
4397 |
+
border-color: #428bca;
|
4398 |
+
}
|
4399 |
+
.seed-csp4 .thumbnail .caption {
|
4400 |
+
padding: 9px;
|
4401 |
+
color: #333333;
|
4402 |
+
}
|
4403 |
+
.seed-csp4 .alert {
|
4404 |
+
padding: 15px;
|
4405 |
+
margin-bottom: 20px;
|
4406 |
+
border: 1px solid transparent;
|
4407 |
+
border-radius: 4px;
|
4408 |
+
}
|
4409 |
+
.seed-csp4 .alert h4 {
|
4410 |
+
margin-top: 0;
|
4411 |
+
color: inherit;
|
4412 |
+
}
|
4413 |
+
.seed-csp4 .alert .alert-link {
|
4414 |
+
font-weight: bold;
|
4415 |
+
}
|
4416 |
+
.seed-csp4 .alert > p,
|
4417 |
+
.seed-csp4 .alert > ul {
|
4418 |
+
margin-bottom: 0;
|
4419 |
+
}
|
4420 |
+
.seed-csp4 .alert > p + p {
|
4421 |
+
margin-top: 5px;
|
4422 |
+
}
|
4423 |
+
.seed-csp4 .alert-dismissable {
|
4424 |
+
padding-right: 35px;
|
4425 |
+
}
|
4426 |
+
.seed-csp4 .alert-dismissable .close {
|
4427 |
+
position: relative;
|
4428 |
+
top: -2px;
|
4429 |
+
right: -21px;
|
4430 |
+
color: inherit;
|
4431 |
+
}
|
4432 |
+
.seed-csp4 .alert-success {
|
4433 |
+
background-color: #dff0d8;
|
4434 |
+
border-color: #d6e9c6;
|
4435 |
+
color: #3c763d;
|
4436 |
+
}
|
4437 |
+
.seed-csp4 .alert-success hr {
|
4438 |
+
border-top-color: #c9e2b3;
|
4439 |
+
}
|
4440 |
+
.seed-csp4 .alert-success .alert-link {
|
4441 |
+
color: #2b542c;
|
4442 |
+
}
|
4443 |
+
.seed-csp4 .alert-info {
|
4444 |
+
background-color: #d9edf7;
|
4445 |
+
border-color: #bce8f1;
|
4446 |
+
color: #31708f;
|
4447 |
+
}
|
4448 |
+
.seed-csp4 .alert-info hr {
|
4449 |
+
border-top-color: #a6e1ec;
|
4450 |
+
}
|
4451 |
+
.seed-csp4 .alert-info .alert-link {
|
4452 |
+
color: #245269;
|
4453 |
+
}
|
4454 |
+
.seed-csp4 .alert-warning {
|
4455 |
+
background-color: #fcf8e3;
|
4456 |
+
border-color: #faebcc;
|
4457 |
+
color: #8a6d3b;
|
4458 |
+
}
|
4459 |
+
.seed-csp4 .alert-warning hr {
|
4460 |
+
border-top-color: #f7e1b5;
|
4461 |
+
}
|
4462 |
+
.seed-csp4 .alert-warning .alert-link {
|
4463 |
+
color: #66512c;
|
4464 |
+
}
|
4465 |
+
.seed-csp4 .alert-danger {
|
4466 |
+
background-color: #f2dede;
|
4467 |
+
border-color: #ebccd1;
|
4468 |
+
color: #a94442;
|
4469 |
+
}
|
4470 |
+
.seed-csp4 .alert-danger hr {
|
4471 |
+
border-top-color: #e4b9c0;
|
4472 |
+
}
|
4473 |
+
.seed-csp4 .alert-danger .alert-link {
|
4474 |
+
color: #843534;
|
4475 |
+
}
|
4476 |
+
@-webkit-keyframes progress-bar-stripes {
|
4477 |
+
from {
|
4478 |
+
background-position: 40px 0;
|
4479 |
+
}
|
4480 |
+
to {
|
4481 |
+
background-position: 0 0;
|
4482 |
+
}
|
4483 |
+
}
|
4484 |
+
@keyframes progress-bar-stripes {
|
4485 |
+
from {
|
4486 |
+
background-position: 40px 0;
|
4487 |
+
}
|
4488 |
+
to {
|
4489 |
+
background-position: 0 0;
|
4490 |
+
}
|
4491 |
+
}
|
4492 |
+
.seed-csp4 .progress {
|
4493 |
+
overflow: hidden;
|
4494 |
+
height: 20px;
|
4495 |
+
margin-bottom: 20px;
|
4496 |
+
background-color: #f5f5f5;
|
4497 |
+
border-radius: 4px;
|
4498 |
+
-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
|
4499 |
+
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
|
4500 |
+
}
|
4501 |
+
.seed-csp4 .progress-bar {
|
4502 |
+
float: left;
|
4503 |
+
width: 0%;
|
4504 |
+
height: 100%;
|
4505 |
+
font-size: 12px;
|
4506 |
+
line-height: 20px;
|
4507 |
+
color: #ffffff;
|
4508 |
+
text-align: center;
|
4509 |
+
background-color: #428bca;
|
4510 |
+
-webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
|
4511 |
+
box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
|
4512 |
+
-webkit-transition: width 0.6s ease;
|
4513 |
+
transition: width 0.6s ease;
|
4514 |
+
}
|
4515 |
+
.seed-csp4 .progress-striped .progress-bar {
|
4516 |
+
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4517 |
+
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4518 |
+
background-size: 40px 40px;
|
4519 |
+
}
|
4520 |
+
.seed-csp4 .progress.active .progress-bar {
|
4521 |
+
-webkit-animation: progress-bar-stripes 2s linear infinite;
|
4522 |
+
animation: progress-bar-stripes 2s linear infinite;
|
4523 |
+
}
|
4524 |
+
.seed-csp4 .progress-bar-success {
|
4525 |
+
background-color: #5cb85c;
|
4526 |
+
}
|
4527 |
+
.progress-striped .seed-csp4 .progress-bar-success {
|
4528 |
+
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4529 |
+
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4530 |
+
}
|
4531 |
+
.seed-csp4 .progress-bar-info {
|
4532 |
+
background-color: #5bc0de;
|
4533 |
+
}
|
4534 |
+
.progress-striped .seed-csp4 .progress-bar-info {
|
4535 |
+
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4536 |
+
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4537 |
+
}
|
4538 |
+
.seed-csp4 .progress-bar-warning {
|
4539 |
+
background-color: #f0ad4e;
|
4540 |
+
}
|
4541 |
+
.progress-striped .seed-csp4 .progress-bar-warning {
|
4542 |
+
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4543 |
+
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4544 |
+
}
|
4545 |
+
.seed-csp4 .progress-bar-danger {
|
4546 |
+
background-color: #d9534f;
|
4547 |
+
}
|
4548 |
+
.progress-striped .seed-csp4 .progress-bar-danger {
|
4549 |
+
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4550 |
+
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
4551 |
+
}
|
4552 |
+
.seed-csp4 .media,
|
4553 |
+
.seed-csp4 .media-body {
|
4554 |
+
overflow: hidden;
|
4555 |
+
zoom: 1;
|
4556 |
+
}
|
4557 |
+
.seed-csp4 .media,
|
4558 |
+
.seed-csp4 .media .media {
|
4559 |
+
margin-top: 15px;
|
4560 |
+
}
|
4561 |
+
.seed-csp4 .media:first-child {
|
4562 |
+
margin-top: 0;
|
4563 |
+
}
|
4564 |
+
.seed-csp4 .media-object {
|
4565 |
+
display: block;
|
4566 |
+
}
|
4567 |
+
.seed-csp4 .media-heading {
|
4568 |
+
margin: 0 0 5px;
|
4569 |
+
}
|
4570 |
+
.seed-csp4 .media > .pull-left {
|
4571 |
+
margin-right: 10px;
|
4572 |
+
}
|
4573 |
+
.seed-csp4 .media > .pull-right {
|
4574 |
+
margin-left: 10px;
|
4575 |
+
}
|
4576 |
+
.seed-csp4 .media-list {
|
4577 |
+
padding-left: 0;
|
4578 |
+
list-style: none;
|
4579 |
+
}
|
4580 |
+
.seed-csp4 .list-group {
|
4581 |
+
margin-bottom: 20px;
|
4582 |
+
padding-left: 0;
|
4583 |
+
}
|
4584 |
+
.seed-csp4 .list-group-item {
|
4585 |
+
position: relative;
|
4586 |
+
display: block;
|
4587 |
+
padding: 10px 15px;
|
4588 |
+
margin-bottom: -1px;
|
4589 |
+
background-color: #ffffff;
|
4590 |
+
border: 1px solid #dddddd;
|
4591 |
+
}
|
4592 |
+
.seed-csp4 .list-group-item:first-child {
|
4593 |
+
border-top-right-radius: 4px;
|
4594 |
+
border-top-left-radius: 4px;
|
4595 |
+
}
|
4596 |
+
.seed-csp4 .list-group-item:last-child {
|
4597 |
+
margin-bottom: 0;
|
4598 |
+
border-bottom-right-radius: 4px;
|
4599 |
+
border-bottom-left-radius: 4px;
|
4600 |
+
}
|
4601 |
+
.seed-csp4 .list-group-item > .badge {
|
4602 |
+
float: right;
|
4603 |
+
}
|
4604 |
+
.seed-csp4 .list-group-item > .badge + .badge {
|
4605 |
+
margin-right: 5px;
|
4606 |
+
}
|
4607 |
+
.seed-csp4 a.list-group-item {
|
4608 |
+
color: #555555;
|
4609 |
+
}
|
4610 |
+
.seed-csp4 a.list-group-item .list-group-item-heading {
|
4611 |
+
color: #333333;
|
4612 |
+
}
|
4613 |
+
.seed-csp4 a.list-group-item:hover,
|
4614 |
+
.seed-csp4 a.list-group-item:focus {
|
4615 |
+
text-decoration: none;
|
4616 |
+
background-color: #f5f5f5;
|
4617 |
+
}
|
4618 |
+
.seed-csp4 a.list-group-item.active,
|
4619 |
+
.seed-csp4 a.list-group-item.active:hover,
|
4620 |
+
.seed-csp4 a.list-group-item.active:focus {
|
4621 |
+
z-index: 2;
|
4622 |
+
color: #ffffff;
|
4623 |
+
background-color: #428bca;
|
4624 |
+
border-color: #428bca;
|
4625 |
+
}
|
4626 |
+
.seed-csp4 a.list-group-item.active .list-group-item-heading,
|
4627 |
+
.seed-csp4 a.list-group-item.active:hover .list-group-item-heading,
|
4628 |
+
.seed-csp4 a.list-group-item.active:focus .list-group-item-heading {
|
4629 |
+
color: inherit;
|
4630 |
+
}
|
4631 |
+
.seed-csp4 a.list-group-item.active .list-group-item-text,
|
4632 |
+
.seed-csp4 a.list-group-item.active:hover .list-group-item-text,
|
4633 |
+
.seed-csp4 a.list-group-item.active:focus .list-group-item-text {
|
4634 |
+
color: #e1edf7;
|
4635 |
+
}
|
4636 |
+
.seed-csp4 .list-group-item-heading {
|
4637 |
+
margin-top: 0;
|
4638 |
+
margin-bottom: 5px;
|
4639 |
+
}
|
4640 |
+
.seed-csp4 .list-group-item-text {
|
4641 |
+
margin-bottom: 0;
|
4642 |
+
line-height: 1.3;
|
4643 |
+
}
|
4644 |
+
.seed-csp4 .panel {
|
4645 |
+
margin-bottom: 20px;
|
4646 |
+
background-color: #ffffff;
|
4647 |
+
border: 1px solid transparent;
|
4648 |
+
border-radius: 4px;
|
4649 |
+
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
|
4650 |
+
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
|
4651 |
+
}
|
4652 |
+
.seed-csp4 .panel-body {
|
4653 |
+
padding: 15px;
|
4654 |
+
}
|
4655 |
+
.seed-csp4 .panel-body:before,
|
4656 |
+
.seed-csp4 .panel-body:after {
|
4657 |
+
content: " ";
|
4658 |
+
display: table;
|
4659 |
+
}
|
4660 |
+
.seed-csp4 .panel-body:after {
|
4661 |
+
clear: both;
|
4662 |
+
}
|
4663 |
+
.seed-csp4 .panel-body:before,
|
4664 |
+
.seed-csp4 .panel-body:after {
|
4665 |
+
content: " ";
|
4666 |
+
display: table;
|
4667 |
+
}
|
4668 |
+
.seed-csp4 .panel-body:after {
|
4669 |
+
clear: both;
|
4670 |
+
}
|
4671 |
+
.seed-csp4 .panel > .list-group {
|
4672 |
+
margin-bottom: 0;
|
4673 |
+
}
|
4674 |
+
.seed-csp4 .panel > .list-group .list-group-item {
|
4675 |
+
border-width: 1px 0;
|
4676 |
+
}
|
4677 |
+
.seed-csp4 .panel > .list-group .list-group-item:first-child {
|
4678 |
+
border-top-right-radius: 0;
|
4679 |
+
border-top-left-radius: 0;
|
4680 |
+
}
|
4681 |
+
.seed-csp4 .panel > .list-group .list-group-item:last-child {
|
4682 |
+
border-bottom: 0;
|
4683 |
+
}
|
4684 |
+
.seed-csp4 .panel-heading + .list-group .list-group-item:first-child {
|
4685 |
+
border-top-width: 0;
|
4686 |
+
}
|
4687 |
+
.seed-csp4 .panel > .table,
|
4688 |
+
.seed-csp4 .panel > .table-responsive > .table {
|
4689 |
+
margin-bottom: 0;
|
4690 |
+
}
|
4691 |
+
.seed-csp4 .panel > .panel-body + .table,
|
4692 |
+
.seed-csp4 .panel > .panel-body + .table-responsive {
|
4693 |
+
border-top: 1px solid #dddddd;
|
4694 |
+
}
|
4695 |
+
.seed-csp4 .panel > .table > tbody:first-child th,
|
4696 |
+
.seed-csp4 .panel > .table > tbody:first-child td {
|
4697 |
+
border-top: 0;
|
4698 |
+
}
|
4699 |
+
.seed-csp4 .panel > .table-bordered,
|
4700 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered {
|
4701 |
+
border: 0;
|
4702 |
+
}
|
4703 |
+
.seed-csp4 .panel > .table-bordered > thead > tr > th:first-child,
|
4704 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
|
4705 |
+
.seed-csp4 .panel > .table-bordered > tbody > tr > th:first-child,
|
4706 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
|
4707 |
+
.seed-csp4 .panel > .table-bordered > tfoot > tr > th:first-child,
|
4708 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
|
4709 |
+
.seed-csp4 .panel > .table-bordered > thead > tr > td:first-child,
|
4710 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
|
4711 |
+
.seed-csp4 .panel > .table-bordered > tbody > tr > td:first-child,
|
4712 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
|
4713 |
+
.seed-csp4 .panel > .table-bordered > tfoot > tr > td:first-child,
|
4714 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
|
4715 |
+
border-left: 0;
|
4716 |
+
}
|
4717 |
+
.seed-csp4 .panel > .table-bordered > thead > tr > th:last-child,
|
4718 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
|
4719 |
+
.seed-csp4 .panel > .table-bordered > tbody > tr > th:last-child,
|
4720 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
|
4721 |
+
.seed-csp4 .panel > .table-bordered > tfoot > tr > th:last-child,
|
4722 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
|
4723 |
+
.seed-csp4 .panel > .table-bordered > thead > tr > td:last-child,
|
4724 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
|
4725 |
+
.seed-csp4 .panel > .table-bordered > tbody > tr > td:last-child,
|
4726 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
|
4727 |
+
.seed-csp4 .panel > .table-bordered > tfoot > tr > td:last-child,
|
4728 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
|
4729 |
+
border-right: 0;
|
4730 |
+
}
|
4731 |
+
.seed-csp4 .panel > .table-bordered > thead > tr:last-child > th,
|
4732 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > thead > tr:last-child > th,
|
4733 |
+
.seed-csp4 .panel > .table-bordered > tbody > tr:last-child > th,
|
4734 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
|
4735 |
+
.seed-csp4 .panel > .table-bordered > tfoot > tr:last-child > th,
|
4736 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th,
|
4737 |
+
.seed-csp4 .panel > .table-bordered > thead > tr:last-child > td,
|
4738 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > thead > tr:last-child > td,
|
4739 |
+
.seed-csp4 .panel > .table-bordered > tbody > tr:last-child > td,
|
4740 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
|
4741 |
+
.seed-csp4 .panel > .table-bordered > tfoot > tr:last-child > td,
|
4742 |
+
.seed-csp4 .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td {
|
4743 |
+
border-bottom: 0;
|
4744 |
+
}
|
4745 |
+
.seed-csp4 .panel > .table-responsive {
|
4746 |
+
border: 0;
|
4747 |
+
margin-bottom: 0;
|
4748 |
+
}
|
4749 |
+
.seed-csp4 .panel-heading {
|
4750 |
+
padding: 10px 15px;
|
4751 |
+
border-bottom: 1px solid transparent;
|
4752 |
+
border-top-right-radius: 3px;
|
4753 |
+
border-top-left-radius: 3px;
|
4754 |
+
}
|
4755 |
+
.seed-csp4 .panel-heading > .dropdown .dropdown-toggle {
|
4756 |
+
color: inherit;
|
4757 |
+
}
|
4758 |
+
.seed-csp4 .panel-title {
|
4759 |
+
margin-top: 0;
|
4760 |
+
margin-bottom: 0;
|
4761 |
+
font-size: 16px;
|
4762 |
+
color: inherit;
|
4763 |
+
}
|
4764 |
+
.seed-csp4 .panel-title > a {
|
4765 |
+
color: inherit;
|
4766 |
+
}
|
4767 |
+
.seed-csp4 .panel-footer {
|
4768 |
+
padding: 10px 15px;
|
4769 |
+
background-color: #f5f5f5;
|
4770 |
+
border-top: 1px solid #dddddd;
|
4771 |
+
border-bottom-right-radius: 3px;
|
4772 |
+
border-bottom-left-radius: 3px;
|
4773 |
+
}
|
4774 |
+
.seed-csp4 .panel-group .panel {
|
4775 |
+
margin-bottom: 0;
|
4776 |
+
border-radius: 4px;
|
4777 |
+
overflow: hidden;
|
4778 |
+
}
|
4779 |
+
.seed-csp4 .panel-group .panel + .panel {
|
4780 |
+
margin-top: 5px;
|
4781 |
+
}
|
4782 |
+
.seed-csp4 .panel-group .panel-heading {
|
4783 |
+
border-bottom: 0;
|
4784 |
+
}
|
4785 |
+
.seed-csp4 .panel-group .panel-heading + .panel-collapse .panel-body {
|
4786 |
+
border-top: 1px solid #dddddd;
|
4787 |
+
}
|
4788 |
+
.seed-csp4 .panel-group .panel-footer {
|
4789 |
+
border-top: 0;
|
4790 |
+
}
|
4791 |
+
.seed-csp4 .panel-group .panel-footer + .panel-collapse .panel-body {
|
4792 |
+
border-bottom: 1px solid #dddddd;
|
4793 |
+
}
|
4794 |
+
.seed-csp4 .panel-default {
|
4795 |
+
border-color: #dddddd;
|
4796 |
+
}
|
4797 |
+
.seed-csp4 .panel-default > .panel-heading {
|
4798 |
+
color: #333333;
|
4799 |
+
background-color: #f5f5f5;
|
4800 |
+
border-color: #dddddd;
|
4801 |
+
}
|
4802 |
+
.seed-csp4 .panel-default > .panel-heading + .panel-collapse .panel-body {
|
4803 |
+
border-top-color: #dddddd;
|
4804 |
+
}
|
4805 |
+
.seed-csp4 .panel-default > .panel-footer + .panel-collapse .panel-body {
|
4806 |
+
border-bottom-color: #dddddd;
|
4807 |
+
}
|
4808 |
+
.seed-csp4 .panel-primary {
|
4809 |
+
border-color: #428bca;
|
4810 |
+
}
|
4811 |
+
.seed-csp4 .panel-primary > .panel-heading {
|
4812 |
+
color: #ffffff;
|
4813 |
+
background-color: #428bca;
|
4814 |
+
border-color: #428bca;
|
4815 |
+
}
|
4816 |
+
.seed-csp4 .panel-primary > .panel-heading + .panel-collapse .panel-body {
|
4817 |
+
border-top-color: #428bca;
|
4818 |
+
}
|
4819 |
+
.seed-csp4 .panel-primary > .panel-footer + .panel-collapse .panel-body {
|
4820 |
+
border-bottom-color: #428bca;
|
4821 |
+
}
|
4822 |
+
.seed-csp4 .panel-success {
|
4823 |
+
border-color: #d6e9c6;
|
4824 |
+
}
|
4825 |
+
.seed-csp4 .panel-success > .panel-heading {
|
4826 |
+
color: #3c763d;
|
4827 |
+
background-color: #dff0d8;
|
4828 |
+
border-color: #d6e9c6;
|
4829 |
+
}
|
4830 |
+
.seed-csp4 .panel-success > .panel-heading + .panel-collapse .panel-body {
|
4831 |
+
border-top-color: #d6e9c6;
|
4832 |
+
}
|
4833 |
+
.seed-csp4 .panel-success > .panel-footer + .panel-collapse .panel-body {
|
4834 |
+
border-bottom-color: #d6e9c6;
|
4835 |
+
}
|
4836 |
+
.seed-csp4 .panel-warning {
|
4837 |
+
border-color: #faebcc;
|
4838 |
+
}
|
4839 |
+
.seed-csp4 .panel-warning > .panel-heading {
|
4840 |
+
color: #8a6d3b;
|
4841 |
+
background-color: #fcf8e3;
|
4842 |
+
border-color: #faebcc;
|
4843 |
+
}
|
4844 |
+
.seed-csp4 .panel-warning > .panel-heading + .panel-collapse .panel-body {
|
4845 |
+
border-top-color: #faebcc;
|
4846 |
+
}
|
4847 |
+
.seed-csp4 .panel-warning > .panel-footer + .panel-collapse .panel-body {
|
4848 |
+
border-bottom-color: #faebcc;
|
4849 |
+
}
|
4850 |
+
.seed-csp4 .panel-danger {
|
4851 |
+
border-color: #ebccd1;
|
4852 |
+
}
|
4853 |
+
.seed-csp4 .panel-danger > .panel-heading {
|
4854 |
+
color: #a94442;
|
4855 |
+
background-color: #f2dede;
|
4856 |
+
border-color: #ebccd1;
|
4857 |
+
}
|
4858 |
+
.seed-csp4 .panel-danger > .panel-heading + .panel-collapse .panel-body {
|
4859 |
+
border-top-color: #ebccd1;
|
4860 |
+
}
|
4861 |
+
.seed-csp4 .panel-danger > .panel-footer + .panel-collapse .panel-body {
|
4862 |
+
border-bottom-color: #ebccd1;
|
4863 |
+
}
|
4864 |
+
.seed-csp4 .panel-info {
|
4865 |
+
border-color: #bce8f1;
|
4866 |
+
}
|
4867 |
+
.seed-csp4 .panel-info > .panel-heading {
|
4868 |
+
color: #31708f;
|
4869 |
+
background-color: #d9edf7;
|
4870 |
+
border-color: #bce8f1;
|
4871 |
+
}
|
4872 |
+
.seed-csp4 .panel-info > .panel-heading + .panel-collapse .panel-body {
|
4873 |
+
border-top-color: #bce8f1;
|
4874 |
+
}
|
4875 |
+
.seed-csp4 .panel-info > .panel-footer + .panel-collapse .panel-body {
|
4876 |
+
border-bottom-color: #bce8f1;
|
4877 |
+
}
|
4878 |
+
.seed-csp4 .well {
|
4879 |
+
min-height: 20px;
|
4880 |
+
padding: 19px;
|
4881 |
+
margin-bottom: 20px;
|
4882 |
+
background-color: #f5f5f5;
|
4883 |
+
border: 1px solid #e3e3e3;
|
4884 |
+
border-radius: 4px;
|
4885 |
+
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
|
4886 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
|
4887 |
+
}
|
4888 |
+
.seed-csp4 .well blockquote {
|
4889 |
+
border-color: #ddd;
|
4890 |
+
border-color: rgba(0, 0, 0, 0.15);
|
4891 |
+
}
|
4892 |
+
.seed-csp4 .well-lg {
|
4893 |
+
padding: 24px;
|
4894 |
+
border-radius: 6px;
|
4895 |
+
}
|
4896 |
+
.seed-csp4 .well-sm {
|
4897 |
+
padding: 9px;
|
4898 |
+
border-radius: 3px;
|
4899 |
+
}
|
4900 |
+
.seed-csp4 .close {
|
4901 |
+
float: right;
|
4902 |
+
font-size: 21px;
|
4903 |
+
font-weight: bold;
|
4904 |
+
line-height: 1;
|
4905 |
+
color: #000000;
|
4906 |
+
text-shadow: 0 1px 0 #ffffff;
|
4907 |
+
opacity: 0.2;
|
4908 |
+
filter: alpha(opacity=20);
|
4909 |
+
}
|
4910 |
+
.seed-csp4 .close:hover,
|
4911 |
+
.seed-csp4 .close:focus {
|
4912 |
+
color: #000000;
|
4913 |
+
text-decoration: none;
|
4914 |
+
cursor: pointer;
|
4915 |
+
opacity: 0.5;
|
4916 |
+
filter: alpha(opacity=50);
|
4917 |
+
}
|
4918 |
+
button.seed-csp4 .close {
|
4919 |
+
padding: 0;
|
4920 |
+
cursor: pointer;
|
4921 |
+
background: transparent;
|
4922 |
+
border: 0;
|
4923 |
+
-webkit-appearance: none;
|
4924 |
+
}
|
4925 |
+
.seed-csp4 .modal-open {
|
4926 |
+
overflow: hidden;
|
4927 |
+
}
|
4928 |
+
.seed-csp4 .modal {
|
4929 |
+
display: none;
|
4930 |
+
overflow: auto;
|
4931 |
+
overflow-y: scroll;
|
4932 |
+
position: fixed;
|
4933 |
+
top: 0;
|
4934 |
+
right: 0;
|
4935 |
+
bottom: 0;
|
4936 |
+
left: 0;
|
4937 |
+
z-index: 1040;
|
4938 |
+
}
|
4939 |
+
.seed-csp4 .modal.fade .modal-dialog {
|
4940 |
+
-webkit-transform: translate(0, -25%);
|
4941 |
+
-ms-transform: translate(0, -25%);
|
4942 |
+
transform: translate(0, -25%);
|
4943 |
+
-webkit-transition: -webkit-transform 0.3s ease-out;
|
4944 |
+
-moz-transition: -moz-transform 0.3s ease-out;
|
4945 |
+
-o-transition: -o-transform 0.3s ease-out;
|
4946 |
+
transition: transform 0.3s ease-out;
|
4947 |
+
}
|
4948 |
+
.seed-csp4 .modal.in .modal-dialog {
|
4949 |
+
-webkit-transform: translate(0, 0);
|
4950 |
+
-ms-transform: translate(0, 0);
|
4951 |
+
transform: translate(0, 0);
|
4952 |
+
}
|
4953 |
+
.seed-csp4 .modal-dialog {
|
4954 |
+
position: relative;
|
4955 |
+
width: auto;
|
4956 |
+
margin: 10px;
|
4957 |
+
z-index: 1050;
|
4958 |
+
}
|
4959 |
+
.seed-csp4 .modal-content {
|
4960 |
+
position: relative;
|
4961 |
+
background-color: #ffffff;
|
4962 |
+
border: 1px solid #999999;
|
4963 |
+
border: 1px solid rgba(0, 0, 0, 0.2);
|
4964 |
+
border-radius: 6px;
|
4965 |
+
-webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
|
4966 |
+
box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
|
4967 |
+
background-clip: padding-box;
|
4968 |
+
outline: none;
|
4969 |
+
}
|
4970 |
+
.seed-csp4 .modal-backdrop {
|
4971 |
+
position: fixed;
|
4972 |
+
top: 0;
|
4973 |
+
right: 0;
|
4974 |
+
bottom: 0;
|
4975 |
+
left: 0;
|
4976 |
+
z-index: 1030;
|
4977 |
+
background-color: #000000;
|
4978 |
+
}
|
4979 |
+
.seed-csp4 .modal-backdrop.fade {
|
4980 |
+
opacity: 0;
|
4981 |
+
filter: alpha(opacity=0);
|
4982 |
+
}
|
4983 |
+
.seed-csp4 .modal-backdrop.in {
|
4984 |
+
opacity: 0.5;
|
4985 |
+
filter: alpha(opacity=50);
|
4986 |
+
}
|
4987 |
+
.seed-csp4 .modal-header {
|
4988 |
+
padding: 15px;
|
4989 |
+
border-bottom: 1px solid #e5e5e5;
|
4990 |
+
min-height: 16.428571429px;
|
4991 |
+
}
|
4992 |
+
.seed-csp4 .modal-header .close {
|
4993 |
+
margin-top: -2px;
|
4994 |
+
}
|
4995 |
+
.seed-csp4 .modal-title {
|
4996 |
+
margin: 0;
|
4997 |
+
line-height: 1.428571429;
|
4998 |
+
}
|
4999 |
+
.seed-csp4 .modal-body {
|
5000 |
+
position: relative;
|
5001 |
+
padding: 20px;
|
5002 |
+
}
|
5003 |
+
.seed-csp4 .modal-footer {
|
5004 |
+
margin-top: 15px;
|
5005 |
+
padding: 19px 20px 20px;
|
5006 |
+
text-align: right;
|
5007 |
+
border-top: 1px solid #e5e5e5;
|
5008 |
+
}
|
5009 |
+
.seed-csp4 .modal-footer:before,
|
5010 |
+
.seed-csp4 .modal-footer:after {
|
5011 |
+
content: " ";
|
5012 |
+
display: table;
|
5013 |
+
}
|
5014 |
+
.seed-csp4 .modal-footer:after {
|
5015 |
+
clear: both;
|
5016 |
+
}
|
5017 |
+
.seed-csp4 .modal-footer:before,
|
5018 |
+
.seed-csp4 .modal-footer:after {
|
5019 |
+
content: " ";
|
5020 |
+
display: table;
|
5021 |
+
}
|
5022 |
+
.seed-csp4 .modal-footer:after {
|
5023 |
+
clear: both;
|
5024 |
+
}
|
5025 |
+
.seed-csp4 .modal-footer .btn + .btn {
|
5026 |
+
margin-left: 5px;
|
5027 |
+
margin-bottom: 0;
|
5028 |
+
}
|
5029 |
+
.seed-csp4 .modal-footer .btn-group .btn + .btn {
|
5030 |
+
margin-left: -1px;
|
5031 |
+
}
|
5032 |
+
.seed-csp4 .modal-footer .btn-block + .btn-block {
|
5033 |
+
margin-left: 0;
|
5034 |
+
}
|
5035 |
+
@media screen and (min-width: 768px) {
|
5036 |
+
.seed-csp4 .modal-dialog {
|
5037 |
+
width: 600px;
|
5038 |
+
margin: 30px auto;
|
5039 |
+
}
|
5040 |
+
.seed-csp4 .modal-content {
|
5041 |
+
-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
|
5042 |
+
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
|
5043 |
+
}
|
5044 |
+
}
|
5045 |
+
.seed-csp4 .tooltip {
|
5046 |
+
position: absolute;
|
5047 |
+
z-index: 1030;
|
5048 |
+
display: block;
|
5049 |
+
visibility: visible;
|
5050 |
+
font-size: 12px;
|
5051 |
+
line-height: 1.4;
|
5052 |
+
opacity: 0;
|
5053 |
+
filter: alpha(opacity=0);
|
5054 |
+
}
|
5055 |
+
.seed-csp4 .tooltip.in {
|
5056 |
+
opacity: 0.9;
|
5057 |
+
filter: alpha(opacity=90);
|
5058 |
+
}
|
5059 |
+
.seed-csp4 .tooltip.top {
|
5060 |
+
margin-top: -3px;
|
5061 |
+
padding: 5px 0;
|
5062 |
+
}
|
5063 |
+
.seed-csp4 .tooltip.right {
|
5064 |
+
margin-left: 3px;
|
5065 |
+
padding: 0 5px;
|
5066 |
+
}
|
5067 |
+
.seed-csp4 .tooltip.bottom {
|
5068 |
+
margin-top: 3px;
|
5069 |
+
padding: 5px 0;
|
5070 |
+
}
|
5071 |
+
.seed-csp4 .tooltip.left {
|
5072 |
+
margin-left: -3px;
|
5073 |
+
padding: 0 5px;
|
5074 |
+
}
|
5075 |
+
.seed-csp4 .tooltip-inner {
|
5076 |
+
max-width: 200px;
|
5077 |
+
padding: 3px 8px;
|
5078 |
+
color: #ffffff;
|
5079 |
+
text-align: center;
|
5080 |
+
text-decoration: none;
|
5081 |
+
background-color: #000000;
|
5082 |
+
border-radius: 4px;
|
5083 |
+
}
|
5084 |
+
.seed-csp4 .tooltip-arrow {
|
5085 |
+
position: absolute;
|
5086 |
+
width: 0;
|
5087 |
+
height: 0;
|
5088 |
+
border-color: transparent;
|
5089 |
+
border-style: solid;
|
5090 |
+
}
|
5091 |
+
.seed-csp4 .tooltip.top .tooltip-arrow {
|
5092 |
+
bottom: 0;
|
5093 |
+
left: 50%;
|
5094 |
+
margin-left: -5px;
|
5095 |
+
border-width: 5px 5px 0;
|
5096 |
+
border-top-color: #000000;
|
5097 |
+
}
|
5098 |
+
.seed-csp4 .tooltip.top-left .tooltip-arrow {
|
5099 |
+
bottom: 0;
|
5100 |
+
left: 5px;
|
5101 |
+
border-width: 5px 5px 0;
|
5102 |
+
border-top-color: #000000;
|
5103 |
+
}
|
5104 |
+
.seed-csp4 .tooltip.top-right .tooltip-arrow {
|
5105 |
+
bottom: 0;
|
5106 |
+
right: 5px;
|
5107 |
+
border-width: 5px 5px 0;
|
5108 |
+
border-top-color: #000000;
|
5109 |
+
}
|
5110 |
+
.seed-csp4 .tooltip.right .tooltip-arrow {
|
5111 |
+
top: 50%;
|
5112 |
+
left: 0;
|
5113 |
+
margin-top: -5px;
|
5114 |
+
border-width: 5px 5px 5px 0;
|
5115 |
+
border-right-color: #000000;
|
5116 |
+
}
|
5117 |
+
.seed-csp4 .tooltip.left .tooltip-arrow {
|
5118 |
+
top: 50%;
|
5119 |
+
right: 0;
|
5120 |
+
margin-top: -5px;
|
5121 |
+
border-width: 5px 0 5px 5px;
|
5122 |
+
border-left-color: #000000;
|
5123 |
+
}
|
5124 |
+
.seed-csp4 .tooltip.bottom .tooltip-arrow {
|
5125 |
+
top: 0;
|
5126 |
+
left: 50%;
|
5127 |
+
margin-left: -5px;
|
5128 |
+
border-width: 0 5px 5px;
|
5129 |
+
border-bottom-color: #000000;
|
5130 |
+
}
|
5131 |
+
.seed-csp4 .tooltip.bottom-left .tooltip-arrow {
|
5132 |
+
top: 0;
|
5133 |
+
left: 5px;
|
5134 |
+
border-width: 0 5px 5px;
|
5135 |
+
border-bottom-color: #000000;
|
5136 |
+
}
|
5137 |
+
.seed-csp4 .tooltip.bottom-right .tooltip-arrow {
|
5138 |
+
top: 0;
|
5139 |
+
right: 5px;
|
5140 |
+
border-width: 0 5px 5px;
|
5141 |
+
border-bottom-color: #000000;
|
5142 |
+
}
|
5143 |
+
.seed-csp4 .popover {
|
5144 |
+
position: absolute;
|
5145 |
+
top: 0;
|
5146 |
+
left: 0;
|
5147 |
+
z-index: 1010;
|
5148 |
+
display: none;
|
5149 |
+
max-width: 276px;
|
5150 |
+
padding: 1px;
|
5151 |
+
text-align: left;
|
5152 |
+
background-color: #ffffff;
|
5153 |
+
background-clip: padding-box;
|
5154 |
+
border: 1px solid #cccccc;
|
5155 |
+
border: 1px solid rgba(0, 0, 0, 0.2);
|
5156 |
+
border-radius: 6px;
|
5157 |
+
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
|
5158 |
+
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
|
5159 |
+
white-space: normal;
|
5160 |
+
}
|
5161 |
+
.seed-csp4 .popover.top {
|
5162 |
+
margin-top: -10px;
|
5163 |
+
}
|
5164 |
+
.seed-csp4 .popover.right {
|
5165 |
+
margin-left: 10px;
|
5166 |
+
}
|
5167 |
+
.seed-csp4 .popover.bottom {
|
5168 |
+
margin-top: 10px;
|
5169 |
+
}
|
5170 |
+
.seed-csp4 .popover.left {
|
5171 |
+
margin-left: -10px;
|
5172 |
+
}
|
5173 |
+
.seed-csp4 .popover-title {
|
5174 |
+
margin: 0;
|
5175 |
+
padding: 8px 14px;
|
5176 |
+
font-size: 14px;
|
5177 |
+
font-weight: normal;
|
5178 |
+
line-height: 18px;
|
5179 |
+
background-color: #f7f7f7;
|
5180 |
+
border-bottom: 1px solid #ebebeb;
|
5181 |
+
border-radius: 5px 5px 0 0;
|
5182 |
+
}
|
5183 |
+
.seed-csp4 .popover-content {
|
5184 |
+
padding: 9px 14px;
|
5185 |
+
}
|
5186 |
+
.seed-csp4 .popover .arrow,
|
5187 |
+
.seed-csp4 .popover .arrow:after {
|
5188 |
+
position: absolute;
|
5189 |
+
display: block;
|
5190 |
+
width: 0;
|
5191 |
+
height: 0;
|
5192 |
+
border-color: transparent;
|
5193 |
+
border-style: solid;
|
5194 |
+
}
|
5195 |
+
.seed-csp4 .popover .arrow {
|
5196 |
+
border-width: 11px;
|
5197 |
+
}
|
5198 |
+
.seed-csp4 .popover .arrow:after {
|
5199 |
+
border-width: 10px;
|
5200 |
+
content: "";
|
5201 |
+
}
|
5202 |
+
.seed-csp4 .popover.top .arrow {
|
5203 |
+
left: 50%;
|
5204 |
+
margin-left: -11px;
|
5205 |
+
border-bottom-width: 0;
|
5206 |
+
border-top-color: #999999;
|
5207 |
+
border-top-color: rgba(0, 0, 0, 0.25);
|
5208 |
+
bottom: -11px;
|
5209 |
+
}
|
5210 |
+
.seed-csp4 .popover.top .arrow:after {
|
5211 |
+
content: " ";
|
5212 |
+
bottom: 1px;
|
5213 |
+
margin-left: -10px;
|
5214 |
+
border-bottom-width: 0;
|
5215 |
+
border-top-color: #ffffff;
|
5216 |
+
}
|
5217 |
+
.seed-csp4 .popover.right .arrow {
|
5218 |
+
top: 50%;
|
5219 |
+
left: -11px;
|
5220 |
+
margin-top: -11px;
|
5221 |
+
border-left-width: 0;
|
5222 |
+
border-right-color: #999999;
|
5223 |
+
border-right-color: rgba(0, 0, 0, 0.25);
|
5224 |
+
}
|
5225 |
+
.seed-csp4 .popover.right .arrow:after {
|
5226 |
+
content: " ";
|
5227 |
+
left: 1px;
|
5228 |
+
bottom: -10px;
|
5229 |
+
border-left-width: 0;
|
5230 |
+
border-right-color: #ffffff;
|
5231 |
+
}
|
5232 |
+
.seed-csp4 .popover.bottom .arrow {
|
5233 |
+
left: 50%;
|
5234 |
+
margin-left: -11px;
|
5235 |
+
border-top-width: 0;
|
5236 |
+
border-bottom-color: #999999;
|
5237 |
+
border-bottom-color: rgba(0, 0, 0, 0.25);
|
5238 |
+
top: -11px;
|
5239 |
+
}
|
5240 |
+
.seed-csp4 .popover.bottom .arrow:after {
|
5241 |
+
content: " ";
|
5242 |
+
top: 1px;
|
5243 |
+
margin-left: -10px;
|
5244 |
+
border-top-width: 0;
|
5245 |
+
border-bottom-color: #ffffff;
|
5246 |
+
}
|
5247 |
+
.seed-csp4 .popover.left .arrow {
|
5248 |
+
top: 50%;
|
5249 |
+
right: -11px;
|
5250 |
+
margin-top: -11px;
|
5251 |
+
border-right-width: 0;
|
5252 |
+
border-left-color: #999999;
|
5253 |
+
border-left-color: rgba(0, 0, 0, 0.25);
|
5254 |
+
}
|
5255 |
+
.seed-csp4 .popover.left .arrow:after {
|
5256 |
+
content: " ";
|
5257 |
+
right: 1px;
|
5258 |
+
border-right-width: 0;
|
5259 |
+
border-left-color: #ffffff;
|
5260 |
+
bottom: -10px;
|
5261 |
+
}
|
5262 |
+
.seed-csp4 .carousel {
|
5263 |
+
position: relative;
|
5264 |
+
}
|
5265 |
+
.seed-csp4 .carousel-inner {
|
5266 |
+
position: relative;
|
5267 |
+
overflow: hidden;
|
5268 |
+
width: 100%;
|
5269 |
+
}
|
5270 |
+
.seed-csp4 .carousel-inner > .item {
|
5271 |
+
display: none;
|
5272 |
+
position: relative;
|
5273 |
+
-webkit-transition: 0.6s ease-in-out left;
|
5274 |
+
transition: 0.6s ease-in-out left;
|
5275 |
+
}
|
5276 |
+
.seed-csp4 .carousel-inner > .item > img,
|
5277 |
+
.seed-csp4 .carousel-inner > .item > a > img {
|
5278 |
+
display: block;
|
5279 |
+
max-width: 100%;
|
5280 |
+
height: auto;
|
5281 |
+
line-height: 1;
|
5282 |
+
}
|
5283 |
+
.seed-csp4 .carousel-inner > .active,
|
5284 |
+
.seed-csp4 .carousel-inner > .next,
|
5285 |
+
.seed-csp4 .carousel-inner > .prev {
|
5286 |
+
display: block;
|
5287 |
+
}
|
5288 |
+
.seed-csp4 .carousel-inner > .active {
|
5289 |
+
left: 0;
|
5290 |
+
}
|
5291 |
+
.seed-csp4 .carousel-inner > .next,
|
5292 |
+
.seed-csp4 .carousel-inner > .prev {
|
5293 |
+
position: absolute;
|
5294 |
+
top: 0;
|
5295 |
+
width: 100%;
|
5296 |
+
}
|
5297 |
+
.seed-csp4 .carousel-inner > .next {
|
5298 |
+
left: 100%;
|
5299 |
+
}
|
5300 |
+
.seed-csp4 .carousel-inner > .prev {
|
5301 |
+
left: -100%;
|
5302 |
+
}
|
5303 |
+
.seed-csp4 .carousel-inner > .next.left,
|
5304 |
+
.seed-csp4 .carousel-inner > .prev.right {
|
5305 |
+
left: 0;
|
5306 |
+
}
|
5307 |
+
.seed-csp4 .carousel-inner > .active.left {
|
5308 |
+
left: -100%;
|
5309 |
+
}
|
5310 |
+
.seed-csp4 .carousel-inner > .active.right {
|
5311 |
+
left: 100%;
|
5312 |
+
}
|
5313 |
+
.seed-csp4 .carousel-control {
|
5314 |
+
position: absolute;
|
5315 |
+
top: 0;
|
5316 |
+
left: 0;
|
5317 |
+
bottom: 0;
|
5318 |
+
width: 15%;
|
5319 |
+
opacity: 0.5;
|
5320 |
+
filter: alpha(opacity=50);
|
5321 |
+
font-size: 20px;
|
5322 |
+
color: #ffffff;
|
5323 |
+
text-align: center;
|
5324 |
+
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
|
5325 |
+
}
|
5326 |
+
.seed-csp4 .carousel-control.left {
|
5327 |
+
background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.5) 0%), color-stop(rgba(0, 0, 0, 0.0001) 100%));
|
5328 |
+
background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
|
5329 |
+
background-repeat: repeat-x;
|
5330 |
+
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
|
5331 |
+
}
|
5332 |
+
.seed-csp4 .carousel-control.right {
|
5333 |
+
left: auto;
|
5334 |
+
right: 0;
|
5335 |
+
background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.0001) 0%), color-stop(rgba(0, 0, 0, 0.5) 100%));
|
5336 |
+
background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
|
5337 |
+
background-repeat: repeat-x;
|
5338 |
+
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
|
5339 |
+
}
|
5340 |
+
.seed-csp4 .carousel-control:hover,
|
5341 |
+
.seed-csp4 .carousel-control:focus {
|
5342 |
+
outline: none;
|
5343 |
+
color: #ffffff;
|
5344 |
+
text-decoration: none;
|
5345 |
+
opacity: 0.9;
|
5346 |
+
filter: alpha(opacity=90);
|
5347 |
+
}
|
5348 |
+
.seed-csp4 .carousel-control .icon-prev,
|
5349 |
+
.seed-csp4 .carousel-control .icon-next,
|
5350 |
+
.seed-csp4 .carousel-control .glyphicon-chevron-left,
|
5351 |
+
.seed-csp4 .carousel-control .glyphicon-chevron-right {
|
5352 |
+
position: absolute;
|
5353 |
+
top: 50%;
|
5354 |
+
z-index: 5;
|
5355 |
+
display: inline-block;
|
5356 |
+
}
|
5357 |
+
.seed-csp4 .carousel-control .icon-prev,
|
5358 |
+
.seed-csp4 .carousel-control .glyphicon-chevron-left {
|
5359 |
+
left: 50%;
|
5360 |
+
}
|
5361 |
+
.seed-csp4 .carousel-control .icon-next,
|
5362 |
+
.seed-csp4 .carousel-control .glyphicon-chevron-right {
|
5363 |
+
right: 50%;
|
5364 |
+
}
|
5365 |
+
.seed-csp4 .carousel-control .icon-prev,
|
5366 |
+
.seed-csp4 .carousel-control .icon-next {
|
5367 |
+
width: 20px;
|
5368 |
+
height: 20px;
|
5369 |
+
margin-top: -10px;
|
5370 |
+
margin-left: -10px;
|
5371 |
+
font-family: serif;
|
5372 |
+
}
|
5373 |
+
.seed-csp4 .carousel-control .icon-prev:before {
|
5374 |
+
content: '\2039';
|
5375 |
+
}
|
5376 |
+
.seed-csp4 .carousel-control .icon-next:before {
|
5377 |
+
content: '\203a';
|
5378 |
+
}
|
5379 |
+
.seed-csp4 .carousel-indicators {
|
5380 |
+
position: absolute;
|
5381 |
+
bottom: 10px;
|
5382 |
+
left: 50%;
|
5383 |
+
z-index: 15;
|
5384 |
+
width: 60%;
|
5385 |
+
margin-left: -30%;
|
5386 |
+
padding-left: 0;
|
5387 |
+
list-style: none;
|
5388 |
+
text-align: center;
|
5389 |
+
}
|
5390 |
+
.seed-csp4 .carousel-indicators li {
|
5391 |
+
display: inline-block;
|
5392 |
+
width: 10px;
|
5393 |
+
height: 10px;
|
5394 |
+
margin: 1px;
|
5395 |
+
text-indent: -999px;
|
5396 |
+
border: 1px solid #ffffff;
|
5397 |
+
border-radius: 10px;
|
5398 |
+
cursor: pointer;
|
5399 |
+
background-color: #000 \9;
|
5400 |
+
background-color: rgba(0, 0, 0, 0);
|
5401 |
+
}
|
5402 |
+
.seed-csp4 .carousel-indicators .active {
|
5403 |
+
margin: 0;
|
5404 |
+
width: 12px;
|
5405 |
+
height: 12px;
|
5406 |
+
background-color: #ffffff;
|
5407 |
+
}
|
5408 |
+
.seed-csp4 .carousel-caption {
|
5409 |
+
position: absolute;
|
5410 |
+
left: 15%;
|
5411 |
+
right: 15%;
|
5412 |
+
bottom: 20px;
|
5413 |
+
z-index: 10;
|
5414 |
+
padding-top: 20px;
|
5415 |
+
padding-bottom: 20px;
|
5416 |
+
color: #ffffff;
|
5417 |
+
text-align: center;
|
5418 |
+
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
|
5419 |
+
}
|
5420 |
+
.seed-csp4 .carousel-caption .btn {
|
5421 |
+
text-shadow: none;
|
5422 |
+
}
|
5423 |
+
@media screen and (min-width: 768px) {
|
5424 |
+
.seed-csp4 .carousel-control .glyphicons-chevron-left,
|
5425 |
+
.seed-csp4 .carousel-control .glyphicons-chevron-right,
|
5426 |
+
.seed-csp4 .carousel-control .icon-prev,
|
5427 |
+
.seed-csp4 .carousel-control .icon-next {
|
5428 |
+
width: 30px;
|
5429 |
+
height: 30px;
|
5430 |
+
margin-top: -15px;
|
5431 |
+
margin-left: -15px;
|
5432 |
+
font-size: 30px;
|
5433 |
+
}
|
5434 |
+
.seed-csp4 .carousel-caption {
|
5435 |
+
left: 20%;
|
5436 |
+
right: 20%;
|
5437 |
+
padding-bottom: 30px;
|
5438 |
+
}
|
5439 |
+
.seed-csp4 .carousel-indicators {
|
5440 |
+
bottom: 20px;
|
5441 |
+
}
|
5442 |
+
}
|
5443 |
+
.seed-csp4 .clearfix:before,
|
5444 |
+
.seed-csp4 .clearfix:after {
|
5445 |
+
content: " ";
|
5446 |
+
display: table;
|
5447 |
+
}
|
5448 |
+
.seed-csp4 .clearfix:after {
|
5449 |
+
clear: both;
|
5450 |
+
}
|
5451 |
+
.seed-csp4 .center-block {
|
5452 |
+
display: block;
|
5453 |
+
margin-left: auto;
|
5454 |
+
margin-right: auto;
|
5455 |
+
}
|
5456 |
+
.seed-csp4 .pull-right {
|
5457 |
+
float: right !important;
|
5458 |
+
}
|
5459 |
+
.seed-csp4 .pull-left {
|
5460 |
+
float: left !important;
|
5461 |
+
}
|
5462 |
+
.seed-csp4 .hide {
|
5463 |
+
display: none !important;
|
5464 |
+
}
|
5465 |
+
.seed-csp4 .show {
|
5466 |
+
display: block !important;
|
5467 |
+
}
|
5468 |
+
.seed-csp4 .invisible {
|
5469 |
+
visibility: hidden;
|
5470 |
+
}
|
5471 |
+
.seed-csp4 .text-hide {
|
5472 |
+
font: 0/0 a;
|
5473 |
+
color: transparent;
|
5474 |
+
text-shadow: none;
|
5475 |
+
background-color: transparent;
|
5476 |
+
border: 0;
|
5477 |
+
}
|
5478 |
+
.seed-csp4 .hidden {
|
5479 |
+
display: none !important;
|
5480 |
+
visibility: hidden !important;
|
5481 |
+
}
|
5482 |
+
.seed-csp4 .affix {
|
5483 |
+
position: fixed;
|
5484 |
+
}
|
5485 |
+
@-ms-viewport {
|
5486 |
+
width: device-width;
|
5487 |
+
}
|
5488 |
+
.seed-csp4 .visible-xs,
|
5489 |
+
tr.seed-csp4 .visible-xs,
|
5490 |
+
th.seed-csp4 .visible-xs,
|
5491 |
+
td.seed-csp4 .visible-xs {
|
5492 |
+
display: none !important;
|
5493 |
+
}
|
5494 |
+
@media (max-width: 767px) {
|
5495 |
+
.seed-csp4 .visible-xs {
|
5496 |
+
display: block !important;
|
5497 |
+
}
|
5498 |
+
table.seed-csp4 .visible-xs {
|
5499 |
+
display: table;
|
5500 |
+
}
|
5501 |
+
tr.seed-csp4 .visible-xs {
|
5502 |
+
display: table-row !important;
|
5503 |
+
}
|
5504 |
+
th.seed-csp4 .visible-xs,
|
5505 |
+
td.seed-csp4 .visible-xs {
|
5506 |
+
display: table-cell !important;
|
5507 |
+
}
|
5508 |
+
}
|
5509 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
5510 |
+
.seed-csp4 .visible-xs.visible-sm {
|
5511 |
+
display: block !important;
|
5512 |
+
}
|
5513 |
+
table.seed-csp4 .visible-xs.visible-sm {
|
5514 |
+
display: table;
|
5515 |
+
}
|
5516 |
+
tr.seed-csp4 .visible-xs.visible-sm {
|
5517 |
+
display: table-row !important;
|
5518 |
+
}
|
5519 |
+
th.seed-csp4 .visible-xs.visible-sm,
|
5520 |
+
td.seed-csp4 .visible-xs.visible-sm {
|
5521 |
+
display: table-cell !important;
|
5522 |
+
}
|
5523 |
+
}
|
5524 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
5525 |
+
.seed-csp4 .visible-xs.visible-md {
|
5526 |
+
display: block !important;
|
5527 |
+
}
|
5528 |
+
table.seed-csp4 .visible-xs.visible-md {
|
5529 |
+
display: table;
|
5530 |
+
}
|
5531 |
+
tr.seed-csp4 .visible-xs.visible-md {
|
5532 |
+
display: table-row !important;
|
5533 |
+
}
|
5534 |
+
th.seed-csp4 .visible-xs.visible-md,
|
5535 |
+
td.seed-csp4 .visible-xs.visible-md {
|
5536 |
+
display: table-cell !important;
|
5537 |
+
}
|
5538 |
+
}
|
5539 |
+
@media (min-width: 1200px) {
|
5540 |
+
.seed-csp4 .visible-xs.visible-lg {
|
5541 |
+
display: block !important;
|
5542 |
+
}
|
5543 |
+
table.seed-csp4 .visible-xs.visible-lg {
|
5544 |
+
display: table;
|
5545 |
+
}
|
5546 |
+
tr.seed-csp4 .visible-xs.visible-lg {
|
5547 |
+
display: table-row !important;
|
5548 |
+
}
|
5549 |
+
th.seed-csp4 .visible-xs.visible-lg,
|
5550 |
+
td.seed-csp4 .visible-xs.visible-lg {
|
5551 |
+
display: table-cell !important;
|
5552 |
+
}
|
5553 |
+
}
|
5554 |
+
.seed-csp4 .visible-sm,
|
5555 |
+
tr.seed-csp4 .visible-sm,
|
5556 |
+
th.seed-csp4 .visible-sm,
|
5557 |
+
td.seed-csp4 .visible-sm {
|
5558 |
+
display: none !important;
|
5559 |
+
}
|
5560 |
+
@media (max-width: 767px) {
|
5561 |
+
.seed-csp4 .visible-sm.visible-xs {
|
5562 |
+
display: block !important;
|
5563 |
+
}
|
5564 |
+
table.seed-csp4 .visible-sm.visible-xs {
|
5565 |
+
display: table;
|
5566 |
+
}
|
5567 |
+
tr.seed-csp4 .visible-sm.visible-xs {
|
5568 |
+
display: table-row !important;
|
5569 |
+
}
|
5570 |
+
th.seed-csp4 .visible-sm.visible-xs,
|
5571 |
+
td.seed-csp4 .visible-sm.visible-xs {
|
5572 |
+
display: table-cell !important;
|
5573 |
+
}
|
5574 |
+
}
|
5575 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
5576 |
+
.seed-csp4 .visible-sm {
|
5577 |
+
display: block !important;
|
5578 |
+
}
|
5579 |
+
table.seed-csp4 .visible-sm {
|
5580 |
+
display: table;
|
5581 |
+
}
|
5582 |
+
tr.seed-csp4 .visible-sm {
|
5583 |
+
display: table-row !important;
|
5584 |
+
}
|
5585 |
+
th.seed-csp4 .visible-sm,
|
5586 |
+
td.seed-csp4 .visible-sm {
|
5587 |
+
display: table-cell !important;
|
5588 |
+
}
|
5589 |
+
}
|
5590 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
5591 |
+
.seed-csp4 .visible-sm.visible-md {
|
5592 |
+
display: block !important;
|
5593 |
+
}
|
5594 |
+
table.seed-csp4 .visible-sm.visible-md {
|
5595 |
+
display: table;
|
5596 |
+
}
|
5597 |
+
tr.seed-csp4 .visible-sm.visible-md {
|
5598 |
+
display: table-row !important;
|
5599 |
+
}
|
5600 |
+
th.seed-csp4 .visible-sm.visible-md,
|
5601 |
+
td.seed-csp4 .visible-sm.visible-md {
|
5602 |
+
display: table-cell !important;
|
5603 |
+
}
|
5604 |
+
}
|
5605 |
+
@media (min-width: 1200px) {
|
5606 |
+
.seed-csp4 .visible-sm.visible-lg {
|
5607 |
+
display: block !important;
|
5608 |
+
}
|
5609 |
+
table.seed-csp4 .visible-sm.visible-lg {
|
5610 |
+
display: table;
|
5611 |
+
}
|
5612 |
+
tr.seed-csp4 .visible-sm.visible-lg {
|
5613 |
+
display: table-row !important;
|
5614 |
+
}
|
5615 |
+
th.seed-csp4 .visible-sm.visible-lg,
|
5616 |
+
td.seed-csp4 .visible-sm.visible-lg {
|
5617 |
+
display: table-cell !important;
|
5618 |
+
}
|
5619 |
+
}
|
5620 |
+
.seed-csp4 .visible-md,
|
5621 |
+
tr.seed-csp4 .visible-md,
|
5622 |
+
th.seed-csp4 .visible-md,
|
5623 |
+
td.seed-csp4 .visible-md {
|
5624 |
+
display: none !important;
|
5625 |
+
}
|
5626 |
+
@media (max-width: 767px) {
|
5627 |
+
.seed-csp4 .visible-md.visible-xs {
|
5628 |
+
display: block !important;
|
5629 |
+
}
|
5630 |
+
table.seed-csp4 .visible-md.visible-xs {
|
5631 |
+
display: table;
|
5632 |
+
}
|
5633 |
+
tr.seed-csp4 .visible-md.visible-xs {
|
5634 |
+
display: table-row !important;
|
5635 |
+
}
|
5636 |
+
th.seed-csp4 .visible-md.visible-xs,
|
5637 |
+
td.seed-csp4 .visible-md.visible-xs {
|
5638 |
+
display: table-cell !important;
|
5639 |
+
}
|
5640 |
+
}
|
5641 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
5642 |
+
.seed-csp4 .visible-md.visible-sm {
|
5643 |
+
display: block !important;
|
5644 |
+
}
|
5645 |
+
table.seed-csp4 .visible-md.visible-sm {
|
5646 |
+
display: table;
|
5647 |
+
}
|
5648 |
+
tr.seed-csp4 .visible-md.visible-sm {
|
5649 |
+
display: table-row !important;
|
5650 |
+
}
|
5651 |
+
th.seed-csp4 .visible-md.visible-sm,
|
5652 |
+
td.seed-csp4 .visible-md.visible-sm {
|
5653 |
+
display: table-cell !important;
|
5654 |
+
}
|
5655 |
+
}
|
5656 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
5657 |
+
.seed-csp4 .visible-md {
|
5658 |
+
display: block !important;
|
5659 |
+
}
|
5660 |
+
table.seed-csp4 .visible-md {
|
5661 |
+
display: table;
|
5662 |
+
}
|
5663 |
+
tr.seed-csp4 .visible-md {
|
5664 |
+
display: table-row !important;
|
5665 |
+
}
|
5666 |
+
th.seed-csp4 .visible-md,
|
5667 |
+
td.seed-csp4 .visible-md {
|
5668 |
+
display: table-cell !important;
|
5669 |
+
}
|
5670 |
+
}
|
5671 |
+
@media (min-width: 1200px) {
|
5672 |
+
.seed-csp4 .visible-md.visible-lg {
|
5673 |
+
display: block !important;
|
5674 |
+
}
|
5675 |
+
table.seed-csp4 .visible-md.visible-lg {
|
5676 |
+
display: table;
|
5677 |
+
}
|
5678 |
+
tr.seed-csp4 .visible-md.visible-lg {
|
5679 |
+
display: table-row !important;
|
5680 |
+
}
|
5681 |
+
th.seed-csp4 .visible-md.visible-lg,
|
5682 |
+
td.seed-csp4 .visible-md.visible-lg {
|
5683 |
+
display: table-cell !important;
|
5684 |
+
}
|
5685 |
+
}
|
5686 |
+
.seed-csp4 .visible-lg,
|
5687 |
+
tr.seed-csp4 .visible-lg,
|
5688 |
+
th.seed-csp4 .visible-lg,
|
5689 |
+
td.seed-csp4 .visible-lg {
|
5690 |
+
display: none !important;
|
5691 |
+
}
|
5692 |
+
@media (max-width: 767px) {
|
5693 |
+
.seed-csp4 .visible-lg.visible-xs {
|
5694 |
+
display: block !important;
|
5695 |
+
}
|
5696 |
+
table.seed-csp4 .visible-lg.visible-xs {
|
5697 |
+
display: table;
|
5698 |
+
}
|
5699 |
+
tr.seed-csp4 .visible-lg.visible-xs {
|
5700 |
+
display: table-row !important;
|
5701 |
+
}
|
5702 |
+
th.seed-csp4 .visible-lg.visible-xs,
|
5703 |
+
td.seed-csp4 .visible-lg.visible-xs {
|
5704 |
+
display: table-cell !important;
|
5705 |
+
}
|
5706 |
+
}
|
5707 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
5708 |
+
.seed-csp4 .visible-lg.visible-sm {
|
5709 |
+
display: block !important;
|
5710 |
+
}
|
5711 |
+
table.seed-csp4 .visible-lg.visible-sm {
|
5712 |
+
display: table;
|
5713 |
+
}
|
5714 |
+
tr.seed-csp4 .visible-lg.visible-sm {
|
5715 |
+
display: table-row !important;
|
5716 |
+
}
|
5717 |
+
th.seed-csp4 .visible-lg.visible-sm,
|
5718 |
+
td.seed-csp4 .visible-lg.visible-sm {
|
5719 |
+
display: table-cell !important;
|
5720 |
+
}
|
5721 |
+
}
|
5722 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
5723 |
+
.seed-csp4 .visible-lg.visible-md {
|
5724 |
+
display: block !important;
|
5725 |
+
}
|
5726 |
+
table.seed-csp4 .visible-lg.visible-md {
|
5727 |
+
display: table;
|
5728 |
+
}
|
5729 |
+
tr.seed-csp4 .visible-lg.visible-md {
|
5730 |
+
display: table-row !important;
|
5731 |
+
}
|
5732 |
+
th.seed-csp4 .visible-lg.visible-md,
|
5733 |
+
td.seed-csp4 .visible-lg.visible-md {
|
5734 |
+
display: table-cell !important;
|
5735 |
+
}
|
5736 |
+
}
|
5737 |
+
@media (min-width: 1200px) {
|
5738 |
+
.seed-csp4 .visible-lg {
|
5739 |
+
display: block !important;
|
5740 |
+
}
|
5741 |
+
table.seed-csp4 .visible-lg {
|
5742 |
+
display: table;
|
5743 |
+
}
|
5744 |
+
tr.seed-csp4 .visible-lg {
|
5745 |
+
display: table-row !important;
|
5746 |
+
}
|
5747 |
+
th.seed-csp4 .visible-lg,
|
5748 |
+
td.seed-csp4 .visible-lg {
|
5749 |
+
display: table-cell !important;
|
5750 |
+
}
|
5751 |
+
}
|
5752 |
+
.seed-csp4 .hidden-xs {
|
5753 |
+
display: block !important;
|
5754 |
+
}
|
5755 |
+
table.seed-csp4 .hidden-xs {
|
5756 |
+
display: table;
|
5757 |
+
}
|
5758 |
+
tr.seed-csp4 .hidden-xs {
|
5759 |
+
display: table-row !important;
|
5760 |
+
}
|
5761 |
+
th.seed-csp4 .hidden-xs,
|
5762 |
+
td.seed-csp4 .hidden-xs {
|
5763 |
+
display: table-cell !important;
|
5764 |
+
}
|
5765 |
+
@media (max-width: 767px) {
|
5766 |
+
.seed-csp4 .hidden-xs,
|
5767 |
+
tr.seed-csp4 .hidden-xs,
|
5768 |
+
th.seed-csp4 .hidden-xs,
|
5769 |
+
td.seed-csp4 .hidden-xs {
|
5770 |
+
display: none !important;
|
5771 |
+
}
|
5772 |
+
}
|
5773 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
5774 |
+
.seed-csp4 .hidden-xs.hidden-sm,
|
5775 |
+
tr.seed-csp4 .hidden-xs.hidden-sm,
|
5776 |
+
th.seed-csp4 .hidden-xs.hidden-sm,
|
5777 |
+
td.seed-csp4 .hidden-xs.hidden-sm {
|
5778 |
+
display: none !important;
|
5779 |
+
}
|
5780 |
+
}
|
5781 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
5782 |
+
.seed-csp4 .hidden-xs.hidden-md,
|
5783 |
+
tr.seed-csp4 .hidden-xs.hidden-md,
|
5784 |
+
th.seed-csp4 .hidden-xs.hidden-md,
|
5785 |
+
td.seed-csp4 .hidden-xs.hidden-md {
|
5786 |
+
display: none !important;
|
5787 |
+
}
|
5788 |
+
}
|
5789 |
+
@media (min-width: 1200px) {
|
5790 |
+
.seed-csp4 .hidden-xs.hidden-lg,
|
5791 |
+
tr.seed-csp4 .hidden-xs.hidden-lg,
|
5792 |
+
th.seed-csp4 .hidden-xs.hidden-lg,
|
5793 |
+
td.seed-csp4 .hidden-xs.hidden-lg {
|
5794 |
+
display: none !important;
|
5795 |
+
}
|
5796 |
+
}
|
5797 |
+
.seed-csp4 .hidden-sm {
|
5798 |
+
display: block !important;
|
5799 |
+
}
|
5800 |
+
table.seed-csp4 .hidden-sm {
|
5801 |
+
display: table;
|
5802 |
+
}
|
5803 |
+
tr.seed-csp4 .hidden-sm {
|
5804 |
+
display: table-row !important;
|
5805 |
+
}
|
5806 |
+
th.seed-csp4 .hidden-sm,
|
5807 |
+
td.seed-csp4 .hidden-sm {
|
5808 |
+
display: table-cell !important;
|
5809 |
+
}
|
5810 |
+
@media (max-width: 767px) {
|
5811 |
+
.seed-csp4 .hidden-sm.hidden-xs,
|
5812 |
+
tr.seed-csp4 .hidden-sm.hidden-xs,
|
5813 |
+
th.seed-csp4 .hidden-sm.hidden-xs,
|
5814 |
+
td.seed-csp4 .hidden-sm.hidden-xs {
|
5815 |
+
display: none !important;
|
5816 |
+
}
|
5817 |
+
}
|
5818 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
5819 |
+
.seed-csp4 .hidden-sm,
|
5820 |
+
tr.seed-csp4 .hidden-sm,
|
5821 |
+
th.seed-csp4 .hidden-sm,
|
5822 |
+
td.seed-csp4 .hidden-sm {
|
5823 |
+
display: none !important;
|
5824 |
+
}
|
5825 |
+
}
|
5826 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
5827 |
+
.seed-csp4 .hidden-sm.hidden-md,
|
5828 |
+
tr.seed-csp4 .hidden-sm.hidden-md,
|
5829 |
+
th.seed-csp4 .hidden-sm.hidden-md,
|
5830 |
+
td.seed-csp4 .hidden-sm.hidden-md {
|
5831 |
+
display: none !important;
|
5832 |
+
}
|
5833 |
+
}
|
5834 |
+
@media (min-width: 1200px) {
|
5835 |
+
.seed-csp4 .hidden-sm.hidden-lg,
|
5836 |
+
tr.seed-csp4 .hidden-sm.hidden-lg,
|
5837 |
+
th.seed-csp4 .hidden-sm.hidden-lg,
|
5838 |
+
td.seed-csp4 .hidden-sm.hidden-lg {
|
5839 |
+
display: none !important;
|
5840 |
+
}
|
5841 |
+
}
|
5842 |
+
.seed-csp4 .hidden-md {
|
5843 |
+
display: block !important;
|
5844 |
+
}
|
5845 |
+
table.seed-csp4 .hidden-md {
|
5846 |
+
display: table;
|
5847 |
+
}
|
5848 |
+
tr.seed-csp4 .hidden-md {
|
5849 |
+
display: table-row !important;
|
5850 |
+
}
|
5851 |
+
th.seed-csp4 .hidden-md,
|
5852 |
+
td.seed-csp4 .hidden-md {
|
5853 |
+
display: table-cell !important;
|
5854 |
+
}
|
5855 |
+
@media (max-width: 767px) {
|
5856 |
+
.seed-csp4 .hidden-md.hidden-xs,
|
5857 |
+
tr.seed-csp4 .hidden-md.hidden-xs,
|
5858 |
+
th.seed-csp4 .hidden-md.hidden-xs,
|
5859 |
+
td.seed-csp4 .hidden-md.hidden-xs {
|
5860 |
+
display: none !important;
|
5861 |
+
}
|
5862 |
+
}
|
5863 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
5864 |
+
.seed-csp4 .hidden-md.hidden-sm,
|
5865 |
+
tr.seed-csp4 .hidden-md.hidden-sm,
|
5866 |
+
th.seed-csp4 .hidden-md.hidden-sm,
|
5867 |
+
td.seed-csp4 .hidden-md.hidden-sm {
|
5868 |
+
display: none !important;
|
5869 |
+
}
|
5870 |
+
}
|
5871 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
5872 |
+
.seed-csp4 .hidden-md,
|
5873 |
+
tr.seed-csp4 .hidden-md,
|
5874 |
+
th.seed-csp4 .hidden-md,
|
5875 |
+
td.seed-csp4 .hidden-md {
|
5876 |
+
display: none !important;
|
5877 |
+
}
|
5878 |
+
}
|
5879 |
+
@media (min-width: 1200px) {
|
5880 |
+
.seed-csp4 .hidden-md.hidden-lg,
|
5881 |
+
tr.seed-csp4 .hidden-md.hidden-lg,
|
5882 |
+
th.seed-csp4 .hidden-md.hidden-lg,
|
5883 |
+
td.seed-csp4 .hidden-md.hidden-lg {
|
5884 |
+
display: none !important;
|
5885 |
+
}
|
5886 |
+
}
|
5887 |
+
.seed-csp4 .hidden-lg {
|
5888 |
+
display: block !important;
|
5889 |
+
}
|
5890 |
+
table.seed-csp4 .hidden-lg {
|
5891 |
+
display: table;
|
5892 |
+
}
|
5893 |
+
tr.seed-csp4 .hidden-lg {
|
5894 |
+
display: table-row !important;
|
5895 |
+
}
|
5896 |
+
th.seed-csp4 .hidden-lg,
|
5897 |
+
td.seed-csp4 .hidden-lg {
|
5898 |
+
display: table-cell !important;
|
5899 |
+
}
|
5900 |
+
@media (max-width: 767px) {
|
5901 |
+
.seed-csp4 .hidden-lg.hidden-xs,
|
5902 |
+
tr.seed-csp4 .hidden-lg.hidden-xs,
|
5903 |
+
th.seed-csp4 .hidden-lg.hidden-xs,
|
5904 |
+
td.seed-csp4 .hidden-lg.hidden-xs {
|
5905 |
+
display: none !important;
|
5906 |
+
}
|
5907 |
+
}
|
5908 |
+
@media (min-width: 768px) and (max-width: 991px) {
|
5909 |
+
.seed-csp4 .hidden-lg.hidden-sm,
|
5910 |
+
tr.seed-csp4 .hidden-lg.hidden-sm,
|
5911 |
+
th.seed-csp4 .hidden-lg.hidden-sm,
|
5912 |
+
td.seed-csp4 .hidden-lg.hidden-sm {
|
5913 |
+
display: none !important;
|
5914 |
+
}
|
5915 |
+
}
|
5916 |
+
@media (min-width: 992px) and (max-width: 1199px) {
|
5917 |
+
.seed-csp4 .hidden-lg.hidden-md,
|
5918 |
+
tr.seed-csp4 .hidden-lg.hidden-md,
|
5919 |
+
th.seed-csp4 .hidden-lg.hidden-md,
|
5920 |
+
td.seed-csp4 .hidden-lg.hidden-md {
|
5921 |
+
display: none !important;
|
5922 |
+
}
|
5923 |
+
}
|
5924 |
+
@media (min-width: 1200px) {
|
5925 |
+
.seed-csp4 .hidden-lg,
|
5926 |
+
tr.seed-csp4 .hidden-lg,
|
5927 |
+
th.seed-csp4 .hidden-lg,
|
5928 |
+
td.seed-csp4 .hidden-lg {
|
5929 |
+
display: none !important;
|
5930 |
+
}
|
5931 |
+
}
|
5932 |
+
.seed-csp4 .visible-print,
|
5933 |
+
tr.seed-csp4 .visible-print,
|
5934 |
+
th.seed-csp4 .visible-print,
|
5935 |
+
td.seed-csp4 .visible-print {
|
5936 |
+
display: none !important;
|
5937 |
+
}
|
5938 |
+
@media print {
|
5939 |
+
.seed-csp4 .visible-print {
|
5940 |
+
display: block !important;
|
5941 |
+
}
|
5942 |
+
table.seed-csp4 .visible-print {
|
5943 |
+
display: table;
|
5944 |
+
}
|
5945 |
+
tr.seed-csp4 .visible-print {
|
5946 |
+
display: table-row !important;
|
5947 |
+
}
|
5948 |
+
th.seed-csp4 .visible-print,
|
5949 |
+
td.seed-csp4 .visible-print {
|
5950 |
+
display: table-cell !important;
|
5951 |
+
}
|
5952 |
+
.seed-csp4 .hidden-print,
|
5953 |
+
tr.seed-csp4 .hidden-print,
|
5954 |
+
th.seed-csp4 .hidden-print,
|
5955 |
+
td.seed-csp4 .hidden-print {
|
5956 |
+
display: none !important;
|
5957 |
+
}
|
5958 |
+
}
|
themes/default/bootstrap/css/bootstrap.min.css
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
.seed-csp4{/*! normalize.css v2.1.3 | MIT License | git.io/normalize */}.seed-csp4 article,.seed-csp4 aside,.seed-csp4 details,.seed-csp4 figcaption,.seed-csp4 figure,.seed-csp4 footer,.seed-csp4 header,.seed-csp4 hgroup,.seed-csp4 main,.seed-csp4 nav,.seed-csp4 section,.seed-csp4 summary{display:block}.seed-csp4 audio,.seed-csp4 canvas,.seed-csp4 video{display:inline-block}.seed-csp4 audio:not([controls]){display:none;height:0}.seed-csp4 [hidden],.seed-csp4 template{display:none}.seed-csp4 html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}.seed-csp4 body{margin:0}.seed-csp4 a{background:transparent}.seed-csp4 a:focus{outline:thin dotted}.seed-csp4 a:active,.seed-csp4 a:hover{outline:0}.seed-csp4 h1{font-size:2em;margin:.67em 0}.seed-csp4 abbr[title]{border-bottom:1px dotted}.seed-csp4 b,.seed-csp4 strong{font-weight:700}.seed-csp4 dfn{font-style:italic}.seed-csp4 hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}.seed-csp4 mark{background:#ff0;color:#000}.seed-csp4 code,.seed-csp4 kbd,.seed-csp4 pre,.seed-csp4 samp{font-family:monospace,serif;font-size:1em}.seed-csp4 pre{white-space:pre-wrap}.seed-csp4 q{quotes:"\201C" "\201D" "\2018" "\2019"}.seed-csp4 small{font-size:80%}.seed-csp4 sub,.seed-csp4 sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.seed-csp4 sup{top:-.5em}.seed-csp4 sub{bottom:-.25em}.seed-csp4 img{border:0}.seed-csp4 svg:not(:root){overflow:hidden}.seed-csp4 figure{margin:0}.seed-csp4 fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.seed-csp4 legend{border:0;padding:0}.seed-csp4 button,.seed-csp4 input,.seed-csp4 select,.seed-csp4 textarea{font-family:inherit;font-size:100%;margin:0}.seed-csp4 button,.seed-csp4 input{line-height:normal}.seed-csp4 button,.seed-csp4 select{text-transform:none}.seed-csp4 button,.seed-csp4 html input[type=button],.seed-csp4 input[type=reset],.seed-csp4 input[type=submit]{-webkit-appearance:button;cursor:pointer}.seed-csp4 button[disabled],.seed-csp4 html input[disabled]{cursor:default}.seed-csp4 input[type=checkbox],.seed-csp4 input[type=radio]{box-sizing:border-box;padding:0}.seed-csp4 input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}.seed-csp4 input[type=search]::-webkit-search-cancel-button,.seed-csp4 input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.seed-csp4 button::-moz-focus-inner,.seed-csp4 input::-moz-focus-inner{border:0;padding:0}.seed-csp4 textarea{overflow:auto;vertical-align:top}.seed-csp4 table{border-collapse:collapse;border-spacing:0}@media print{.seed-csp4 *{text-shadow:none!important;color:#000!important;background:transparent!important;box-shadow:none!important}.seed-csp4 a,.seed-csp4 a:visited{text-decoration:underline}.seed-csp4 a[href]:after{content:" (" attr(href) ")"}.seed-csp4 abbr[title]:after{content:" (" attr(title) ")"}.seed-csp4 a[href^="javascript:"]:after,.seed-csp4 a[href^="#"]:after{content:""}.seed-csp4 pre,.seed-csp4 blockquote{border:1px solid #999;page-break-inside:avoid}.seed-csp4 thead{display:table-header-group}.seed-csp4 tr,.seed-csp4 img{page-break-inside:avoid}.seed-csp4 img{max-width:100%!important}@page{margin:2cm .5cm}.seed-csp4 p,.seed-csp4 h2,.seed-csp4 h3{orphans:3;widows:3}.seed-csp4 h2,.seed-csp4 h3{page-break-after:avoid}.seed-csp4 select{background:#fff!important}.seed-csp4 .navbar{display:none}.seed-csp4 .table td,.seed-csp4 .table th{background-color:#fff!important}.seed-csp4 .btn>.caret,.seed-csp4 .dropup>.btn>.caret{border-top-color:#000!important}.seed-csp4 .label{border:1px solid #000}.seed-csp4 .table{border-collapse:collapse!important}.seed-csp4 .table-bordered th,.seed-csp4 .table-bordered td{border:1px solid #ddd!important}}.seed-csp4 *,.seed-csp4 :before,.seed-csp4 :after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.seed-csp4 html{font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}.seed-csp4 body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}.seed-csp4 input,.seed-csp4 button,.seed-csp4 select,.seed-csp4 textarea{font-family:inherit;font-size:inherit;line-height:inherit}.seed-csp4 a{color:#428bca;text-decoration:none}.seed-csp4 a:hover,.seed-csp4 a:focus{color:#2a6496;text-decoration:underline}.seed-csp4 a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.seed-csp4 img{vertical-align:middle}.seed-csp4 .img-responsive{display:block;max-width:100%;height:auto}.seed-csp4 .img-rounded{border-radius:6px}.seed-csp4 .img-thumbnail{padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;max-width:100%;height:auto}.seed-csp4 .img-circle{border-radius:50%}.seed-csp4 hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.seed-csp4 .sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.seed-csp4 h1,.seed-csp4 h2,.seed-csp4 h3,.seed-csp4 h4,.seed-csp4 h5,.seed-csp4 h6,.seed-csp4 .h1,.seed-csp4 .h2,.seed-csp4 .h3,.seed-csp4 .h4,.seed-csp4 .h5,.seed-csp4 .h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1;color:inherit}.seed-csp4 h1 small,.seed-csp4 h2 small,.seed-csp4 h3 small,.seed-csp4 h4 small,.seed-csp4 h5 small,.seed-csp4 h6 small,.seed-csp4 .h1 small,.seed-csp4 .h2 small,.seed-csp4 .h3 small,.seed-csp4 .h4 small,.seed-csp4 .h5 small,.seed-csp4 .h6 small,.seed-csp4 h1 .small,.seed-csp4 h2 .small,.seed-csp4 h3 .small,.seed-csp4 h4 .small,.seed-csp4 h5 .small,.seed-csp4 h6 .small,.seed-csp4 .h1 .small,.seed-csp4 .h2 .small,.seed-csp4 .h3 .small,.seed-csp4 .h4 .small,.seed-csp4 .h5 .small,.seed-csp4 .h6 .small{font-weight:400;line-height:1;color:#999}.seed-csp4 h1,.seed-csp4 h2,.seed-csp4 h3{margin-top:20px;margin-bottom:10px}.seed-csp4 h1 small,.seed-csp4 h2 small,.seed-csp4 h3 small,.seed-csp4 h1 .small,.seed-csp4 h2 .small,.seed-csp4 h3 .small{font-size:65%}.seed-csp4 h4,.seed-csp4 h5,.seed-csp4 h6{margin-top:10px;margin-bottom:10px}.seed-csp4 h4 small,.seed-csp4 h5 small,.seed-csp4 h6 small,.seed-csp4 h4 .small,.seed-csp4 h5 .small,.seed-csp4 h6 .small{font-size:75%}.seed-csp4 h1,.seed-csp4 .h1{font-size:36px}.seed-csp4 h2,.seed-csp4 .h2{font-size:30px}.seed-csp4 h3,.seed-csp4 .h3{font-size:24px}.seed-csp4 h4,.seed-csp4 .h4{font-size:18px}.seed-csp4 h5,.seed-csp4 .h5{font-size:14px}.seed-csp4 h6,.seed-csp4 .h6{font-size:12px}.seed-csp4 p{margin:0 0 10px}.seed-csp4 .lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width:768px){.seed-csp4 .lead{font-size:21px}}.seed-csp4 small,.seed-csp4 .small{font-size:85%}.seed-csp4 cite{font-style:normal}.seed-csp4 .text-muted{color:#999}.seed-csp4 .text-primary{color:#428bca}.seed-csp4 .text-primary:hover{color:#3071a9}.seed-csp4 .text-warning{color:#8a6d3b}.seed-csp4 .text-warning:hover{color:#66512c}.seed-csp4 .text-danger{color:#a94442}.seed-csp4 .text-danger:hover{color:#843534}.seed-csp4 .text-success{color:#3c763d}.seed-csp4 .text-success:hover{color:#2b542c}.seed-csp4 .text-info{color:#31708f}.seed-csp4 .text-info:hover{color:#245269}.seed-csp4 .text-left{text-align:left}.seed-csp4 .text-right{text-align:right}.seed-csp4 .text-center{text-align:center}.seed-csp4 .page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}.seed-csp4 ul,.seed-csp4 ol{margin-top:0;margin-bottom:10px}.seed-csp4 ul ul,.seed-csp4 ol ul,.seed-csp4 ul ol,.seed-csp4 ol ol{margin-bottom:0}.seed-csp4 .list-unstyled{padding-left:0;list-style:none}.seed-csp4 .list-inline{padding-left:0;list-style:none}.seed-csp4 .list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}.seed-csp4 .list-inline>li:first-child{padding-left:0}.seed-csp4 dl{margin-top:0;margin-bottom:20px}.seed-csp4 dt,.seed-csp4 dd{line-height:1.428571429}.seed-csp4 dt{font-weight:700}.seed-csp4 dd{margin-left:0}@media (min-width:768px){.seed-csp4 .dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.seed-csp4 .dl-horizontal dd{margin-left:180px}.seed-csp4 .dl-horizontal dd:before,.seed-csp4 .dl-horizontal dd:after{content:" ";display:table}.seed-csp4 .dl-horizontal dd:after{clear:both}.seed-csp4 .dl-horizontal dd:before,.seed-csp4 .dl-horizontal dd:after{content:" ";display:table}.seed-csp4 .dl-horizontal dd:after{clear:both}}.seed-csp4 abbr[title],.seed-csp4 abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}.seed-csp4 .initialism{font-size:90%;text-transform:uppercase}.seed-csp4 blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}.seed-csp4 blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}.seed-csp4 blockquote p:last-child{margin-bottom:0}.seed-csp4 blockquote small,.seed-csp4 blockquote .small{display:block;line-height:1.428571429;color:#999}.seed-csp4 blockquote small:before,.seed-csp4 blockquote .small:before{content:'\2014 \00A0'}.seed-csp4 blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}.seed-csp4 blockquote.pull-right p,.seed-csp4 blockquote.pull-right small,.seed-csp4 blockquote.pull-right .small{text-align:right}.seed-csp4 blockquote.pull-right small:before,.seed-csp4 blockquote.pull-right .small:before{content:''}.seed-csp4 blockquote.pull-right small:after,.seed-csp4 blockquote.pull-right .small:after{content:'\00A0 \2014'}.seed-csp4 blockquote:before,.seed-csp4 blockquote:after{content:""}.seed-csp4 address{margin-bottom:20px;font-style:normal;line-height:1.428571429}.seed-csp4 code,.seed-csp4 kbd,.seed-csp4 pre,.seed-csp4 samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.seed-csp4 code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;white-space:nowrap;border-radius:4px}.seed-csp4 pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}.seed-csp4 pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.seed-csp4 .pre-scrollable{max-height:340px;overflow-y:scroll}.seed-csp4 .container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.seed-csp4 .container:before,.seed-csp4 .container:after{content:" ";display:table}.seed-csp4 .container:after{clear:both}.seed-csp4 .container:before,.seed-csp4 .container:after{content:" ";display:table}.seed-csp4 .container:after{clear:both}@media (min-width:768px){.seed-csp4 .container{width:750px}}@media (min-width:992px){.seed-csp4 .container{width:970px}}@media (min-width:1200px){.seed-csp4 .container{width:1170px}}.seed-csp4 .row{margin-left:-15px;margin-right:-15px}.seed-csp4 .row:before,.seed-csp4 .row:after{content:" ";display:table}.seed-csp4 .row:after{clear:both}.seed-csp4 .row:before,.seed-csp4 .row:after{content:" ";display:table}.seed-csp4 .row:after{clear:both}.seed-csp4 .col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.seed-csp4 .col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.seed-csp4 .col-xs-12{width:100%}.seed-csp4 .col-xs-11{width:91.66666666666666%}.seed-csp4 .col-xs-10{width:83.33333333333334%}.seed-csp4 .col-xs-9{width:75%}.seed-csp4 .col-xs-8{width:66.66666666666666%}.seed-csp4 .col-xs-7{width:58.333333333333336%}.seed-csp4 .col-xs-6{width:50%}.seed-csp4 .col-xs-5{width:41.66666666666667%}.seed-csp4 .col-xs-4{width:33.33333333333333%}.seed-csp4 .col-xs-3{width:25%}.seed-csp4 .col-xs-2{width:16.666666666666664%}.seed-csp4 .col-xs-1{width:8.333333333333332%}.seed-csp4 .col-xs-pull-12{right:100%}.seed-csp4 .col-xs-pull-11{right:91.66666666666666%}.seed-csp4 .col-xs-pull-10{right:83.33333333333334%}.seed-csp4 .col-xs-pull-9{right:75%}.seed-csp4 .col-xs-pull-8{right:66.66666666666666%}.seed-csp4 .col-xs-pull-7{right:58.333333333333336%}.seed-csp4 .col-xs-pull-6{right:50%}.seed-csp4 .col-xs-pull-5{right:41.66666666666667%}.seed-csp4 .col-xs-pull-4{right:33.33333333333333%}.seed-csp4 .col-xs-pull-3{right:25%}.seed-csp4 .col-xs-pull-2{right:16.666666666666664%}.seed-csp4 .col-xs-pull-1{right:8.333333333333332%}.seed-csp4 .col-xs-pull-0{right:0}.seed-csp4 .col-xs-push-12{left:100%}.seed-csp4 .col-xs-push-11{left:91.66666666666666%}.seed-csp4 .col-xs-push-10{left:83.33333333333334%}.seed-csp4 .col-xs-push-9{left:75%}.seed-csp4 .col-xs-push-8{left:66.66666666666666%}.seed-csp4 .col-xs-push-7{left:58.333333333333336%}.seed-csp4 .col-xs-push-6{left:50%}.seed-csp4 .col-xs-push-5{left:41.66666666666667%}.seed-csp4 .col-xs-push-4{left:33.33333333333333%}.seed-csp4 .col-xs-push-3{left:25%}.seed-csp4 .col-xs-push-2{left:16.666666666666664%}.seed-csp4 .col-xs-push-1{left:8.333333333333332%}.seed-csp4 .col-xs-push-0{left:0}.seed-csp4 .col-xs-offset-12{margin-left:100%}.seed-csp4 .col-xs-offset-11{margin-left:91.66666666666666%}.seed-csp4 .col-xs-offset-10{margin-left:83.33333333333334%}.seed-csp4 .col-xs-offset-9{margin-left:75%}.seed-csp4 .col-xs-offset-8{margin-left:66.66666666666666%}.seed-csp4 .col-xs-offset-7{margin-left:58.333333333333336%}.seed-csp4 .col-xs-offset-6{margin-left:50%}.seed-csp4 .col-xs-offset-5{margin-left:41.66666666666667%}.seed-csp4 .col-xs-offset-4{margin-left:33.33333333333333%}.seed-csp4 .col-xs-offset-3{margin-left:25%}.seed-csp4 .col-xs-offset-2{margin-left:16.666666666666664%}.seed-csp4 .col-xs-offset-1{margin-left:8.333333333333332%}.seed-csp4 .col-xs-offset-0{margin-left:0}@media (min-width:768px){.seed-csp4 .col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{float:left}.seed-csp4 .col-sm-12{width:100%}.seed-csp4 .col-sm-11{width:91.66666666666666%}.seed-csp4 .col-sm-10{width:83.33333333333334%}.seed-csp4 .col-sm-9{width:75%}.seed-csp4 .col-sm-8{width:66.66666666666666%}.seed-csp4 .col-sm-7{width:58.333333333333336%}.seed-csp4 .col-sm-6{width:50%}.seed-csp4 .col-sm-5{width:41.66666666666667%}.seed-csp4 .col-sm-4{width:33.33333333333333%}.seed-csp4 .col-sm-3{width:25%}.seed-csp4 .col-sm-2{width:16.666666666666664%}.seed-csp4 .col-sm-1{width:8.333333333333332%}.seed-csp4 .col-sm-pull-12{right:100%}.seed-csp4 .col-sm-pull-11{right:91.66666666666666%}.seed-csp4 .col-sm-pull-10{right:83.33333333333334%}.seed-csp4 .col-sm-pull-9{right:75%}.seed-csp4 .col-sm-pull-8{right:66.66666666666666%}.seed-csp4 .col-sm-pull-7{right:58.333333333333336%}.seed-csp4 .col-sm-pull-6{right:50%}.seed-csp4 .col-sm-pull-5{right:41.66666666666667%}.seed-csp4 .col-sm-pull-4{right:33.33333333333333%}.seed-csp4 .col-sm-pull-3{right:25%}.seed-csp4 .col-sm-pull-2{right:16.666666666666664%}.seed-csp4 .col-sm-pull-1{right:8.333333333333332%}.seed-csp4 .col-sm-pull-0{right:0}.seed-csp4 .col-sm-push-12{left:100%}.seed-csp4 .col-sm-push-11{left:91.66666666666666%}.seed-csp4 .col-sm-push-10{left:83.33333333333334%}.seed-csp4 .col-sm-push-9{left:75%}.seed-csp4 .col-sm-push-8{left:66.66666666666666%}.seed-csp4 .col-sm-push-7{left:58.333333333333336%}.seed-csp4 .col-sm-push-6{left:50%}.seed-csp4 .col-sm-push-5{left:41.66666666666667%}.seed-csp4 .col-sm-push-4{left:33.33333333333333%}.seed-csp4 .col-sm-push-3{left:25%}.seed-csp4 .col-sm-push-2{left:16.666666666666664%}.seed-csp4 .col-sm-push-1{left:8.333333333333332%}.seed-csp4 .col-sm-push-0{left:0}.seed-csp4 .col-sm-offset-12{margin-left:100%}.seed-csp4 .col-sm-offset-11{margin-left:91.66666666666666%}.seed-csp4 .col-sm-offset-10{margin-left:83.33333333333334%}.seed-csp4 .col-sm-offset-9{margin-left:75%}.seed-csp4 .col-sm-offset-8{margin-left:66.66666666666666%}.seed-csp4 .col-sm-offset-7{margin-left:58.333333333333336%}.seed-csp4 .col-sm-offset-6{margin-left:50%}.seed-csp4 .col-sm-offset-5{margin-left:41.66666666666667%}.seed-csp4 .col-sm-offset-4{margin-left:33.33333333333333%}.seed-csp4 .col-sm-offset-3{margin-left:25%}.seed-csp4 .col-sm-offset-2{margin-left:16.666666666666664%}.seed-csp4 .col-sm-offset-1{margin-left:8.333333333333332%}.seed-csp4 .col-sm-offset-0{margin-left:0}}@media (min-width:992px){.seed-csp4 .col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{float:left}.seed-csp4 .col-md-12{width:100%}.seed-csp4 .col-md-11{width:91.66666666666666%}.seed-csp4 .col-md-10{width:83.33333333333334%}.seed-csp4 .col-md-9{width:75%}.seed-csp4 .col-md-8{width:66.66666666666666%}.seed-csp4 .col-md-7{width:58.333333333333336%}.seed-csp4 .col-md-6{width:50%}.seed-csp4 .col-md-5{width:41.66666666666667%}.seed-csp4 .col-md-4{width:33.33333333333333%}.seed-csp4 .col-md-3{width:25%}.seed-csp4 .col-md-2{width:16.666666666666664%}.seed-csp4 .col-md-1{width:8.333333333333332%}.seed-csp4 .col-md-pull-12{right:100%}.seed-csp4 .col-md-pull-11{right:91.66666666666666%}.seed-csp4 .col-md-pull-10{right:83.33333333333334%}.seed-csp4 .col-md-pull-9{right:75%}.seed-csp4 .col-md-pull-8{right:66.66666666666666%}.seed-csp4 .col-md-pull-7{right:58.333333333333336%}.seed-csp4 .col-md-pull-6{right:50%}.seed-csp4 .col-md-pull-5{right:41.66666666666667%}.seed-csp4 .col-md-pull-4{right:33.33333333333333%}.seed-csp4 .col-md-pull-3{right:25%}.seed-csp4 .col-md-pull-2{right:16.666666666666664%}.seed-csp4 .col-md-pull-1{right:8.333333333333332%}.seed-csp4 .col-md-pull-0{right:0}.seed-csp4 .col-md-push-12{left:100%}.seed-csp4 .col-md-push-11{left:91.66666666666666%}.seed-csp4 .col-md-push-10{left:83.33333333333334%}.seed-csp4 .col-md-push-9{left:75%}.seed-csp4 .col-md-push-8{left:66.66666666666666%}.seed-csp4 .col-md-push-7{left:58.333333333333336%}.seed-csp4 .col-md-push-6{left:50%}.seed-csp4 .col-md-push-5{left:41.66666666666667%}.seed-csp4 .col-md-push-4{left:33.33333333333333%}.seed-csp4 .col-md-push-3{left:25%}.seed-csp4 .col-md-push-2{left:16.666666666666664%}.seed-csp4 .col-md-push-1{left:8.333333333333332%}.seed-csp4 .col-md-push-0{left:0}.seed-csp4 .col-md-offset-12{margin-left:100%}.seed-csp4 .col-md-offset-11{margin-left:91.66666666666666%}.seed-csp4 .col-md-offset-10{margin-left:83.33333333333334%}.seed-csp4 .col-md-offset-9{margin-left:75%}.seed-csp4 .col-md-offset-8{margin-left:66.66666666666666%}.seed-csp4 .col-md-offset-7{margin-left:58.333333333333336%}.seed-csp4 .col-md-offset-6{margin-left:50%}.seed-csp4 .col-md-offset-5{margin-left:41.66666666666667%}.seed-csp4 .col-md-offset-4{margin-left:33.33333333333333%}.seed-csp4 .col-md-offset-3{margin-left:25%}.seed-csp4 .col-md-offset-2{margin-left:16.666666666666664%}.seed-csp4 .col-md-offset-1{margin-left:8.333333333333332%}.seed-csp4 .col-md-offset-0{margin-left:0}}@media (min-width:1200px){.seed-csp4 .col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{float:left}.seed-csp4 .col-lg-12{width:100%}.seed-csp4 .col-lg-11{width:91.66666666666666%}.seed-csp4 .col-lg-10{width:83.33333333333334%}.seed-csp4 .col-lg-9{width:75%}.seed-csp4 .col-lg-8{width:66.66666666666666%}.seed-csp4 .col-lg-7{width:58.333333333333336%}.seed-csp4 .col-lg-6{width:50%}.seed-csp4 .col-lg-5{width:41.66666666666667%}.seed-csp4 .col-lg-4{width:33.33333333333333%}.seed-csp4 .col-lg-3{width:25%}.seed-csp4 .col-lg-2{width:16.666666666666664%}.seed-csp4 .col-lg-1{width:8.333333333333332%}.seed-csp4 .col-lg-pull-12{right:100%}.seed-csp4 .col-lg-pull-11{right:91.66666666666666%}.seed-csp4 .col-lg-pull-10{right:83.33333333333334%}.seed-csp4 .col-lg-pull-9{right:75%}.seed-csp4 .col-lg-pull-8{right:66.66666666666666%}.seed-csp4 .col-lg-pull-7{right:58.333333333333336%}.seed-csp4 .col-lg-pull-6{right:50%}.seed-csp4 .col-lg-pull-5{right:41.66666666666667%}.seed-csp4 .col-lg-pull-4{right:33.33333333333333%}.seed-csp4 .col-lg-pull-3{right:25%}.seed-csp4 .col-lg-pull-2{right:16.666666666666664%}.seed-csp4 .col-lg-pull-1{right:8.333333333333332%}.seed-csp4 .col-lg-pull-0{right:0}.seed-csp4 .col-lg-push-12{left:100%}.seed-csp4 .col-lg-push-11{left:91.66666666666666%}.seed-csp4 .col-lg-push-10{left:83.33333333333334%}.seed-csp4 .col-lg-push-9{left:75%}.seed-csp4 .col-lg-push-8{left:66.66666666666666%}.seed-csp4 .col-lg-push-7{left:58.333333333333336%}.seed-csp4 .col-lg-push-6{left:50%}.seed-csp4 .col-lg-push-5{left:41.66666666666667%}.seed-csp4 .col-lg-push-4{left:33.33333333333333%}.seed-csp4 .col-lg-push-3{left:25%}.seed-csp4 .col-lg-push-2{left:16.666666666666664%}.seed-csp4 .col-lg-push-1{left:8.333333333333332%}.seed-csp4 .col-lg-push-0{left:0}.seed-csp4 .col-lg-offset-12{margin-left:100%}.seed-csp4 .col-lg-offset-11{margin-left:91.66666666666666%}.seed-csp4 .col-lg-offset-10{margin-left:83.33333333333334%}.seed-csp4 .col-lg-offset-9{margin-left:75%}.seed-csp4 .col-lg-offset-8{margin-left:66.66666666666666%}.seed-csp4 .col-lg-offset-7{margin-left:58.333333333333336%}.seed-csp4 .col-lg-offset-6{margin-left:50%}.seed-csp4 .col-lg-offset-5{margin-left:41.66666666666667%}.seed-csp4 .col-lg-offset-4{margin-left:33.33333333333333%}.seed-csp4 .col-lg-offset-3{margin-left:25%}.seed-csp4 .col-lg-offset-2{margin-left:16.666666666666664%}.seed-csp4 .col-lg-offset-1{margin-left:8.333333333333332%}.seed-csp4 .col-lg-offset-0{margin-left:0}}.seed-csp4 table{max-width:100%;background-color:transparent}.seed-csp4 th{text-align:left}.seed-csp4 .table{width:100%;margin-bottom:20px}.seed-csp4 .table>thead>tr>th,.seed-csp4 .table>tbody>tr>th,.seed-csp4 .table>tfoot>tr>th,.seed-csp4 .table>thead>tr>td,.seed-csp4 .table>tbody>tr>td,.seed-csp4 .table>tfoot>tr>td{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.seed-csp4 .table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.seed-csp4 .table>caption+thead>tr:first-child>th,.seed-csp4 .table>colgroup+thead>tr:first-child>th,.seed-csp4 .table>thead:first-child>tr:first-child>th,.seed-csp4 .table>caption+thead>tr:first-child>td,.seed-csp4 .table>colgroup+thead>tr:first-child>td,.seed-csp4 .table>thead:first-child>tr:first-child>td{border-top:0}.seed-csp4 .table>tbody+tbody{border-top:2px solid #ddd}.seed-csp4 .table .table{background-color:#fff}.seed-csp4 .table-condensed>thead>tr>th,.seed-csp4 .table-condensed>tbody>tr>th,.seed-csp4 .table-condensed>tfoot>tr>th,.seed-csp4 .table-condensed>thead>tr>td,.seed-csp4 .table-condensed>tbody>tr>td,.seed-csp4 .table-condensed>tfoot>tr>td{padding:5px}.seed-csp4 .table-bordered{border:1px solid #ddd}.seed-csp4 .table-bordered>thead>tr>th,.seed-csp4 .table-bordered>tbody>tr>th,.seed-csp4 .table-bordered>tfoot>tr>th,.seed-csp4 .table-bordered>thead>tr>td,.seed-csp4 .table-bordered>tbody>tr>td,.seed-csp4 .table-bordered>tfoot>tr>td{border:1px solid #ddd}.seed-csp4 .table-bordered>thead>tr>th,.seed-csp4 .table-bordered>thead>tr>td{border-bottom-width:2px}.seed-csp4 .table-striped>tbody>tr:nth-child(odd)>td,.seed-csp4 .table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.seed-csp4 .table-hover>tbody>tr:hover>td,.seed-csp4 .table-hover>tbody>tr:hover>th{background-color:#f5f5f5}.seed-csp4 table col[class*=col-]{position:static;float:none;display:table-column}.seed-csp4 table td[class*=col-],.seed-csp4 table th[class*=col-]{float:none;display:table-cell}.seed-csp4 .table>thead>tr>.active,.seed-csp4 .table>tbody>tr>.active,.seed-csp4 .table>tfoot>tr>.active,.seed-csp4 .table>thead>.active>td,.seed-csp4 .table>tbody>.active>td,.seed-csp4 .table>tfoot>.active>td,.seed-csp4 .table>thead>.active>th,.seed-csp4 .table>tbody>.active>th,.seed-csp4 .table>tfoot>.active>th{background-color:#f5f5f5}.seed-csp4 .table-hover>tbody>tr>.active:hover,.seed-csp4 .table-hover>tbody>.active:hover>td,.seed-csp4 .table-hover>tbody>.active:hover>th{background-color:#e8e8e8}.seed-csp4 .table>thead>tr>.success,.seed-csp4 .table>tbody>tr>.success,.seed-csp4 .table>tfoot>tr>.success,.seed-csp4 .table>thead>.success>td,.seed-csp4 .table>tbody>.success>td,.seed-csp4 .table>tfoot>.success>td,.seed-csp4 .table>thead>.success>th,.seed-csp4 .table>tbody>.success>th,.seed-csp4 .table>tfoot>.success>th{background-color:#dff0d8}.seed-csp4 .table-hover>tbody>tr>.success:hover,.seed-csp4 .table-hover>tbody>.success:hover>td,.seed-csp4 .table-hover>tbody>.success:hover>th{background-color:#d0e9c6}.seed-csp4 .table>thead>tr>.danger,.seed-csp4 .table>tbody>tr>.danger,.seed-csp4 .table>tfoot>tr>.danger,.seed-csp4 .table>thead>.danger>td,.seed-csp4 .table>tbody>.danger>td,.seed-csp4 .table>tfoot>.danger>td,.seed-csp4 .table>thead>.danger>th,.seed-csp4 .table>tbody>.danger>th,.seed-csp4 .table>tfoot>.danger>th{background-color:#f2dede}.seed-csp4 .table-hover>tbody>tr>.danger:hover,.seed-csp4 .table-hover>tbody>.danger:hover>td,.seed-csp4 .table-hover>tbody>.danger:hover>th{background-color:#ebcccc}.seed-csp4 .table>thead>tr>.warning,.seed-csp4 .table>tbody>tr>.warning,.seed-csp4 .table>tfoot>tr>.warning,.seed-csp4 .table>thead>.warning>td,.seed-csp4 .table>tbody>.warning>td,.seed-csp4 .table>tfoot>.warning>td,.seed-csp4 .table>thead>.warning>th,.seed-csp4 .table>tbody>.warning>th,.seed-csp4 .table>tfoot>.warning>th{background-color:#fcf8e3}.seed-csp4 .table-hover>tbody>tr>.warning:hover,.seed-csp4 .table-hover>tbody>.warning:hover>td,.seed-csp4 .table-hover>tbody>.warning:hover>th{background-color:#faf2cc}@media (max-width:767px){.seed-csp4 .table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;overflow-x:scroll;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd;-webkit-overflow-scrolling:touch}.seed-csp4 .table-responsive>.table{margin-bottom:0}.seed-csp4 .table-responsive>.table>thead>tr>th,.seed-csp4 .table-responsive>.table>tbody>tr>th,.seed-csp4 .table-responsive>.table>tfoot>tr>th,.seed-csp4 .table-responsive>.table>thead>tr>td,.seed-csp4 .table-responsive>.table>tbody>tr>td,.seed-csp4 .table-responsive>.table>tfoot>tr>td{white-space:nowrap}.seed-csp4 .table-responsive>.table-bordered{border:0}.seed-csp4 .table-responsive>.table-bordered>thead>tr>th:first-child,.seed-csp4 .table-responsive>.table-bordered>tbody>tr>th:first-child,.seed-csp4 .table-responsive>.table-bordered>tfoot>tr>th:first-child,.seed-csp4 .table-responsive>.table-bordered>thead>tr>td:first-child,.seed-csp4 .table-responsive>.table-bordered>tbody>tr>td:first-child,.seed-csp4 .table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.seed-csp4 .table-responsive>.table-bordered>thead>tr>th:last-child,.seed-csp4 .table-responsive>.table-bordered>tbody>tr>th:last-child,.seed-csp4 .table-responsive>.table-bordered>tfoot>tr>th:last-child,.seed-csp4 .table-responsive>.table-bordered>thead>tr>td:last-child,.seed-csp4 .table-responsive>.table-bordered>tbody>tr>td:last-child,.seed-csp4 .table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.seed-csp4 .table-responsive>.table-bordered>tbody>tr:last-child>th,.seed-csp4 .table-responsive>.table-bordered>tfoot>tr:last-child>th,.seed-csp4 .table-responsive>.table-bordered>tbody>tr:last-child>td,.seed-csp4 .table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}.seed-csp4 fieldset{padding:0;margin:0;border:0}.seed-csp4 legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}.seed-csp4 label{display:inline-block;margin-bottom:5px;font-weight:700}.seed-csp4 input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.seed-csp4 input[type=radio],.seed-csp4 input[type=checkbox]{margin:4px 0 0;margin-top:1px \9;line-height:normal}.seed-csp4 input[type=file]{display:block}.seed-csp4 select[multiple],.seed-csp4 select[size]{height:auto}.seed-csp4 select optgroup{font-size:inherit;font-style:inherit;font-family:inherit}.seed-csp4 input[type=file]:focus,.seed-csp4 input[type=radio]:focus,.seed-csp4 input[type=checkbox]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.seed-csp4 input[type=number]::-webkit-outer-spin-button,.seed-csp4 input[type=number]::-webkit-inner-spin-button{height:auto}.seed-csp4 output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle}.seed-csp4 .form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.seed-csp4 .form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.seed-csp4 .form-control:-moz-placeholder{color:#999}.seed-csp4 .form-control::-moz-placeholder{color:#999;opacity:1}.seed-csp4 .form-control:-ms-input-placeholder{color:#999}.seed-csp4 .form-control::-webkit-input-placeholder{color:#999}.seed-csp4 .form-control[disabled],.seed-csp4 .form-control[readonly],fieldset[disabled] .seed-csp4 .form-control{cursor:not-allowed;background-color:#eee}textarea.seed-csp4 .form-control{height:auto}.seed-csp4 .form-group{margin-bottom:15px}.seed-csp4 .radio,.seed-csp4 .checkbox{display:block;min-height:20px;margin-top:10px;margin-bottom:10px;padding-left:20px;vertical-align:middle}.seed-csp4 .radio label,.seed-csp4 .checkbox label{display:inline;margin-bottom:0;font-weight:400;cursor:pointer}.seed-csp4 .radio input[type=radio],.seed-csp4 .radio-inline input[type=radio],.seed-csp4 .checkbox input[type=checkbox],.seed-csp4 .checkbox-inline input[type=checkbox]{float:left;margin-left:-20px}.seed-csp4 .radio+.radio,.seed-csp4 .checkbox+.checkbox{margin-top:-5px}.seed-csp4 .radio-inline,.seed-csp4 .checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:400;cursor:pointer}.seed-csp4 .radio-inline+.radio-inline,.seed-csp4 .checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}.seed-csp4 input[type=radio][disabled],.seed-csp4 input[type=checkbox][disabled],.seed-csp4 .radio[disabled],.seed-csp4 .radio-inline[disabled],.seed-csp4 .checkbox[disabled],.seed-csp4 .checkbox-inline[disabled],fieldset[disabled] .seed-csp4 input[type=radio],fieldset[disabled] .seed-csp4 input[type=checkbox],fieldset[disabled] .seed-csp4 .radio,fieldset[disabled] .seed-csp4 .radio-inline,fieldset[disabled] .seed-csp4 .checkbox,fieldset[disabled] .seed-csp4 .checkbox-inline{cursor:not-allowed}.seed-csp4 .input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.seed-csp4 .input-sm{height:30px;line-height:30px}textarea.seed-csp4 .input-sm{height:auto}.seed-csp4 .input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.seed-csp4 .input-lg{height:46px;line-height:46px}textarea.seed-csp4 .input-lg{height:auto}.seed-csp4 .has-warning .help-block,.seed-csp4 .has-warning .control-label,.seed-csp4 .has-warning .radio,.seed-csp4 .has-warning .checkbox,.seed-csp4 .has-warning .radio-inline,.seed-csp4 .has-warning .checkbox-inline{color:#8a6d3b}.seed-csp4 .has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.seed-csp4 .has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.seed-csp4 .has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.seed-csp4 .has-error .help-block,.seed-csp4 .has-error .control-label,.seed-csp4 .has-error .radio,.seed-csp4 .has-error .checkbox,.seed-csp4 .has-error .radio-inline,.seed-csp4 .has-error .checkbox-inline{color:#a94442}.seed-csp4 .has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.seed-csp4 .has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.seed-csp4 .has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.seed-csp4 .has-success .help-block,.seed-csp4 .has-success .control-label,.seed-csp4 .has-success .radio,.seed-csp4 .has-success .checkbox,.seed-csp4 .has-success .radio-inline,.seed-csp4 .has-success .checkbox-inline{color:#3c763d}.seed-csp4 .has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.seed-csp4 .has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.seed-csp4 .has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.seed-csp4 .form-control-static{margin-bottom:0}.seed-csp4 .help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.seed-csp4 .form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.seed-csp4 .form-inline .form-control{display:inline-block}.seed-csp4 .form-inline select.form-control{width:auto}.seed-csp4 .form-inline .radio,.seed-csp4 .form-inline .checkbox{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0}.seed-csp4 .form-inline .radio input[type=radio],.seed-csp4 .form-inline .checkbox input[type=checkbox]{float:none;margin-left:0}}.seed-csp4 .form-horizontal .control-label,.seed-csp4 .form-horizontal .radio,.seed-csp4 .form-horizontal .checkbox,.seed-csp4 .form-horizontal .radio-inline,.seed-csp4 .form-horizontal .checkbox-inline{margin-top:0;margin-bottom:0;padding-top:7px}.seed-csp4 .form-horizontal .radio,.seed-csp4 .form-horizontal .checkbox{min-height:27px}.seed-csp4 .form-horizontal .form-group{margin-left:-15px;margin-right:-15px}.seed-csp4 .form-horizontal .form-group:before,.seed-csp4 .form-horizontal .form-group:after{content:" ";display:table}.seed-csp4 .form-horizontal .form-group:after{clear:both}.seed-csp4 .form-horizontal .form-group:before,.seed-csp4 .form-horizontal .form-group:after{content:" ";display:table}.seed-csp4 .form-horizontal .form-group:after{clear:both}.seed-csp4 .form-horizontal .form-control-static{padding-top:7px}@media (min-width:768px){.seed-csp4 .form-horizontal .control-label{text-align:right}}.seed-csp4 .btn{display:inline-block;margin-bottom:0;font-weight:400;text-align:center;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.428571429;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.seed-csp4 .btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.seed-csp4 .btn:hover,.seed-csp4 .btn:focus{color:#333;text-decoration:none}.seed-csp4 .btn:active,.seed-csp4 .btn.active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.seed-csp4 .btn.disabled,.seed-csp4 .btn[disabled],fieldset[disabled] .seed-csp4 .btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.seed-csp4 .btn-default{color:#333;background-color:#fff;border-color:#ccc}.seed-csp4 .btn-default:hover,.seed-csp4 .btn-default:focus,.seed-csp4 .btn-default:active,.seed-csp4 .btn-default.active,.open .dropdown-toggle.seed-csp4 .btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.seed-csp4 .btn-default:active,.seed-csp4 .btn-default.active,.open .dropdown-toggle.seed-csp4 .btn-default{background-image:none}.seed-csp4 .btn-default.disabled,.seed-csp4 .btn-default[disabled],fieldset[disabled] .seed-csp4 .btn-default,.seed-csp4 .btn-default.disabled:hover,.seed-csp4 .btn-default[disabled]:hover,fieldset[disabled] .seed-csp4 .btn-default:hover,.seed-csp4 .btn-default.disabled:focus,.seed-csp4 .btn-default[disabled]:focus,fieldset[disabled] .seed-csp4 .btn-default:focus,.seed-csp4 .btn-default.disabled:active,.seed-csp4 .btn-default[disabled]:active,fieldset[disabled] .seed-csp4 .btn-default:active,.seed-csp4 .btn-default.disabled.active,.seed-csp4 .btn-default[disabled].active,fieldset[disabled] .seed-csp4 .btn-default.active{background-color:#fff;border-color:#ccc}.seed-csp4 .btn-default .badge{color:#fff;background-color:#fff}.seed-csp4 .btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.seed-csp4 .btn-primary:hover,.seed-csp4 .btn-primary:focus,.seed-csp4 .btn-primary:active,.seed-csp4 .btn-primary.active,.open .dropdown-toggle.seed-csp4 .btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.seed-csp4 .btn-primary:active,.seed-csp4 .btn-primary.active,.open .dropdown-toggle.seed-csp4 .btn-primary{background-image:none}.seed-csp4 .btn-primary.disabled,.seed-csp4 .btn-primary[disabled],fieldset[disabled] .seed-csp4 .btn-primary,.seed-csp4 .btn-primary.disabled:hover,.seed-csp4 .btn-primary[disabled]:hover,fieldset[disabled] .seed-csp4 .btn-primary:hover,.seed-csp4 .btn-primary.disabled:focus,.seed-csp4 .btn-primary[disabled]:focus,fieldset[disabled] .seed-csp4 .btn-primary:focus,.seed-csp4 .btn-primary.disabled:active,.seed-csp4 .btn-primary[disabled]:active,fieldset[disabled] .seed-csp4 .btn-primary:active,.seed-csp4 .btn-primary.disabled.active,.seed-csp4 .btn-primary[disabled].active,fieldset[disabled] .seed-csp4 .btn-primary.active{background-color:#428bca;border-color:#357ebd}.seed-csp4 .btn-primary .badge{color:#428bca;background-color:#fff}.seed-csp4 .btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.seed-csp4 .btn-warning:hover,.seed-csp4 .btn-warning:focus,.seed-csp4 .btn-warning:active,.seed-csp4 .btn-warning.active,.open .dropdown-toggle.seed-csp4 .btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.seed-csp4 .btn-warning:active,.seed-csp4 .btn-warning.active,.open .dropdown-toggle.seed-csp4 .btn-warning{background-image:none}.seed-csp4 .btn-warning.disabled,.seed-csp4 .btn-warning[disabled],fieldset[disabled] .seed-csp4 .btn-warning,.seed-csp4 .btn-warning.disabled:hover,.seed-csp4 .btn-warning[disabled]:hover,fieldset[disabled] .seed-csp4 .btn-warning:hover,.seed-csp4 .btn-warning.disabled:focus,.seed-csp4 .btn-warning[disabled]:focus,fieldset[disabled] .seed-csp4 .btn-warning:focus,.seed-csp4 .btn-warning.disabled:active,.seed-csp4 .btn-warning[disabled]:active,fieldset[disabled] .seed-csp4 .btn-warning:active,.seed-csp4 .btn-warning.disabled.active,.seed-csp4 .btn-warning[disabled].active,fieldset[disabled] .seed-csp4 .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.seed-csp4 .btn-warning .badge{color:#f0ad4e;background-color:#fff}.seed-csp4 .btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.seed-csp4 .btn-danger:hover,.seed-csp4 .btn-danger:focus,.seed-csp4 .btn-danger:active,.seed-csp4 .btn-danger.active,.open .dropdown-toggle.seed-csp4 .btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.seed-csp4 .btn-danger:active,.seed-csp4 .btn-danger.active,.open .dropdown-toggle.seed-csp4 .btn-danger{background-image:none}.seed-csp4 .btn-danger.disabled,.seed-csp4 .btn-danger[disabled],fieldset[disabled] .seed-csp4 .btn-danger,.seed-csp4 .btn-danger.disabled:hover,.seed-csp4 .btn-danger[disabled]:hover,fieldset[disabled] .seed-csp4 .btn-danger:hover,.seed-csp4 .btn-danger.disabled:focus,.seed-csp4 .btn-danger[disabled]:focus,fieldset[disabled] .seed-csp4 .btn-danger:focus,.seed-csp4 .btn-danger.disabled:active,.seed-csp4 .btn-danger[disabled]:active,fieldset[disabled] .seed-csp4 .btn-danger:active,.seed-csp4 .btn-danger.disabled.active,.seed-csp4 .btn-danger[disabled].active,fieldset[disabled] .seed-csp4 .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.seed-csp4 .btn-danger .badge{color:#d9534f;background-color:#fff}.seed-csp4 .btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.seed-csp4 .btn-success:hover,.seed-csp4 .btn-success:focus,.seed-csp4 .btn-success:active,.seed-csp4 .btn-success.active,.open .dropdown-toggle.seed-csp4 .btn-success{color:#fff;background-color:#47a447;border-color:#398439}.seed-csp4 .btn-success:active,.seed-csp4 .btn-success.active,.open .dropdown-toggle.seed-csp4 .btn-success{background-image:none}.seed-csp4 .btn-success.disabled,.seed-csp4 .btn-success[disabled],fieldset[disabled] .seed-csp4 .btn-success,.seed-csp4 .btn-success.disabled:hover,.seed-csp4 .btn-success[disabled]:hover,fieldset[disabled] .seed-csp4 .btn-success:hover,.seed-csp4 .btn-success.disabled:focus,.seed-csp4 .btn-success[disabled]:focus,fieldset[disabled] .seed-csp4 .btn-success:focus,.seed-csp4 .btn-success.disabled:active,.seed-csp4 .btn-success[disabled]:active,fieldset[disabled] .seed-csp4 .btn-success:active,.seed-csp4 .btn-success.disabled.active,.seed-csp4 .btn-success[disabled].active,fieldset[disabled] .seed-csp4 .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.seed-csp4 .btn-success .badge{color:#5cb85c;background-color:#fff}.seed-csp4 .btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.seed-csp4 .btn-info:hover,.seed-csp4 .btn-info:focus,.seed-csp4 .btn-info:active,.seed-csp4 .btn-info.active,.open .dropdown-toggle.seed-csp4 .btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.seed-csp4 .btn-info:active,.seed-csp4 .btn-info.active,.open .dropdown-toggle.seed-csp4 .btn-info{background-image:none}.seed-csp4 .btn-info.disabled,.seed-csp4 .btn-info[disabled],fieldset[disabled] .seed-csp4 .btn-info,.seed-csp4 .btn-info.disabled:hover,.seed-csp4 .btn-info[disabled]:hover,fieldset[disabled] .seed-csp4 .btn-info:hover,.seed-csp4 .btn-info.disabled:focus,.seed-csp4 .btn-info[disabled]:focus,fieldset[disabled] .seed-csp4 .btn-info:focus,.seed-csp4 .btn-info.disabled:active,.seed-csp4 .btn-info[disabled]:active,fieldset[disabled] .seed-csp4 .btn-info:active,.seed-csp4 .btn-info.disabled.active,.seed-csp4 .btn-info[disabled].active,fieldset[disabled] .seed-csp4 .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.seed-csp4 .btn-info .badge{color:#5bc0de;background-color:#fff}.seed-csp4 .btn-link{color:#428bca;font-weight:400;cursor:pointer;border-radius:0}.seed-csp4 .btn-link,.seed-csp4 .btn-link:active,.seed-csp4 .btn-link[disabled],fieldset[disabled] .seed-csp4 .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.seed-csp4 .btn-link,.seed-csp4 .btn-link:hover,.seed-csp4 .btn-link:focus,.seed-csp4 .btn-link:active{border-color:transparent}.seed-csp4 .btn-link:hover,.seed-csp4 .btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.seed-csp4 .btn-link[disabled]:hover,fieldset[disabled] .seed-csp4 .btn-link:hover,.seed-csp4 .btn-link[disabled]:focus,fieldset[disabled] .seed-csp4 .btn-link:focus{color:#999;text-decoration:none}.seed-csp4 .btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.seed-csp4 .btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.seed-csp4 .btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.seed-csp4 .btn-block{display:block;width:100%;padding-left:0;padding-right:0}.seed-csp4 .btn-block+.btn-block{margin-top:5px}.seed-csp4 input[type=submit].btn-block,.seed-csp4 input[type=reset].btn-block,.seed-csp4 input[type=button].btn-block{width:100%}.seed-csp4 .fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.seed-csp4 .fade.in{opacity:1}.seed-csp4 .collapse{display:none}.seed-csp4 .collapse.in{display:block}.seed-csp4 .collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@font-face{font-family:'Glyphicons Halflings';src:url(../fonts/glyphicons-halflings-regular.eot);src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'),url(../fonts/glyphicons-halflings-regular.woff) format('woff'),url(../fonts/glyphicons-halflings-regular.ttf) format('truetype'),url(../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular) format('svg')}.seed-csp4 .glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.seed-csp4 .glyphicon:empty{width:1em}.seed-csp4 .glyphicon-asterisk:before{content:"\2a"}.seed-csp4 .glyphicon-plus:before{content:"\2b"}.seed-csp4 .glyphicon-euro:before{content:"\20ac"}.seed-csp4 .glyphicon-minus:before{content:"\2212"}.seed-csp4 .glyphicon-cloud:before{content:"\2601"}.seed-csp4 .glyphicon-envelope:before{content:"\2709"}.seed-csp4 .glyphicon-pencil:before{content:"\270f"}.seed-csp4 .glyphicon-glass:before{content:"\e001"}.seed-csp4 .glyphicon-music:before{content:"\e002"}.seed-csp4 .glyphicon-search:before{content:"\e003"}.seed-csp4 .glyphicon-heart:before{content:"\e005"}.seed-csp4 .glyphicon-star:before{content:"\e006"}.seed-csp4 .glyphicon-star-empty:before{content:"\e007"}.seed-csp4 .glyphicon-user:before{content:"\e008"}.seed-csp4 .glyphicon-film:before{content:"\e009"}.seed-csp4 .glyphicon-th-large:before{content:"\e010"}.seed-csp4 .glyphicon-th:before{content:"\e011"}.seed-csp4 .glyphicon-th-list:before{content:"\e012"}.seed-csp4 .glyphicon-ok:before{content:"\e013"}.seed-csp4 .glyphicon-remove:before{content:"\e014"}.seed-csp4 .glyphicon-zoom-in:before{content:"\e015"}.seed-csp4 .glyphicon-zoom-out:before{content:"\e016"}.seed-csp4 .glyphicon-off:before{content:"\e017"}.seed-csp4 .glyphicon-signal:before{content:"\e018"}.seed-csp4 .glyphicon-cog:before{content:"\e019"}.seed-csp4 .glyphicon-trash:before{content:"\e020"}.seed-csp4 .glyphicon-home:before{content:"\e021"}.seed-csp4 .glyphicon-file:before{content:"\e022"}.seed-csp4 .glyphicon-time:before{content:"\e023"}.seed-csp4 .glyphicon-road:before{content:"\e024"}.seed-csp4 .glyphicon-download-alt:before{content:"\e025"}.seed-csp4 .glyphicon-download:before{content:"\e026"}.seed-csp4 .glyphicon-upload:before{content:"\e027"}.seed-csp4 .glyphicon-inbox:before{content:"\e028"}.seed-csp4 .glyphicon-play-circle:before{content:"\e029"}.seed-csp4 .glyphicon-repeat:before{content:"\e030"}.seed-csp4 .glyphicon-refresh:before{content:"\e031"}.seed-csp4 .glyphicon-list-alt:before{content:"\e032"}.seed-csp4 .glyphicon-lock:before{content:"\e033"}.seed-csp4 .glyphicon-flag:before{content:"\e034"}.seed-csp4 .glyphicon-headphones:before{content:"\e035"}.seed-csp4 .glyphicon-volume-off:before{content:"\e036"}.seed-csp4 .glyphicon-volume-down:before{content:"\e037"}.seed-csp4 .glyphicon-volume-up:before{content:"\e038"}.seed-csp4 .glyphicon-qrcode:before{content:"\e039"}.seed-csp4 .glyphicon-barcode:before{content:"\e040"}.seed-csp4 .glyphicon-tag:before{content:"\e041"}.seed-csp4 .glyphicon-tags:before{content:"\e042"}.seed-csp4 .glyphicon-book:before{content:"\e043"}.seed-csp4 .glyphicon-bookmark:before{content:"\e044"}.seed-csp4 .glyphicon-print:before{content:"\e045"}.seed-csp4 .glyphicon-camera:before{content:"\e046"}.seed-csp4 .glyphicon-font:before{content:"\e047"}.seed-csp4 .glyphicon-bold:before{content:"\e048"}.seed-csp4 .glyphicon-italic:before{content:"\e049"}.seed-csp4 .glyphicon-text-height:before{content:"\e050"}.seed-csp4 .glyphicon-text-width:before{content:"\e051"}.seed-csp4 .glyphicon-align-left:before{content:"\e052"}.seed-csp4 .glyphicon-align-center:before{content:"\e053"}.seed-csp4 .glyphicon-align-right:before{content:"\e054"}.seed-csp4 .glyphicon-align-justify:before{content:"\e055"}.seed-csp4 .glyphicon-list:before{content:"\e056"}.seed-csp4 .glyphicon-indent-left:before{content:"\e057"}.seed-csp4 .glyphicon-indent-right:before{content:"\e058"}.seed-csp4 .glyphicon-facetime-video:before{content:"\e059"}.seed-csp4 .glyphicon-picture:before{content:"\e060"}.seed-csp4 .glyphicon-map-marker:before{content:"\e062"}.seed-csp4 .glyphicon-adjust:before{content:"\e063"}.seed-csp4 .glyphicon-tint:before{content:"\e064"}.seed-csp4 .glyphicon-edit:before{content:"\e065"}.seed-csp4 .glyphicon-share:before{content:"\e066"}.seed-csp4 .glyphicon-check:before{content:"\e067"}.seed-csp4 .glyphicon-move:before{content:"\e068"}.seed-csp4 .glyphicon-step-backward:before{content:"\e069"}.seed-csp4 .glyphicon-fast-backward:before{content:"\e070"}.seed-csp4 .glyphicon-backward:before{content:"\e071"}.seed-csp4 .glyphicon-play:before{content:"\e072"}.seed-csp4 .glyphicon-pause:before{content:"\e073"}.seed-csp4 .glyphicon-stop:before{content:"\e074"}.seed-csp4 .glyphicon-forward:before{content:"\e075"}.seed-csp4 .glyphicon-fast-forward:before{content:"\e076"}.seed-csp4 .glyphicon-step-forward:before{content:"\e077"}.seed-csp4 .glyphicon-eject:before{content:"\e078"}.seed-csp4 .glyphicon-chevron-left:before{content:"\e079"}.seed-csp4 .glyphicon-chevron-right:before{content:"\e080"}.seed-csp4 .glyphicon-plus-sign:before{content:"\e081"}.seed-csp4 .glyphicon-minus-sign:before{content:"\e082"}.seed-csp4 .glyphicon-remove-sign:before{content:"\e083"}.seed-csp4 .glyphicon-ok-sign:before{content:"\e084"}.seed-csp4 .glyphicon-question-sign:before{content:"\e085"}.seed-csp4 .glyphicon-info-sign:before{content:"\e086"}.seed-csp4 .glyphicon-screenshot:before{content:"\e087"}.seed-csp4 .glyphicon-remove-circle:before{content:"\e088"}.seed-csp4 .glyphicon-ok-circle:before{content:"\e089"}.seed-csp4 .glyphicon-ban-circle:before{content:"\e090"}.seed-csp4 .glyphicon-arrow-left:before{content:"\e091"}.seed-csp4 .glyphicon-arrow-right:before{content:"\e092"}.seed-csp4 .glyphicon-arrow-up:before{content:"\e093"}.seed-csp4 .glyphicon-arrow-down:before{content:"\e094"}.seed-csp4 .glyphicon-share-alt:before{content:"\e095"}.seed-csp4 .glyphicon-resize-full:before{content:"\e096"}.seed-csp4 .glyphicon-resize-small:before{content:"\e097"}.seed-csp4 .glyphicon-exclamation-sign:before{content:"\e101"}.seed-csp4 .glyphicon-gift:before{content:"\e102"}.seed-csp4 .glyphicon-leaf:before{content:"\e103"}.seed-csp4 .glyphicon-fire:before{content:"\e104"}.seed-csp4 .glyphicon-eye-open:before{content:"\e105"}.seed-csp4 .glyphicon-eye-close:before{content:"\e106"}.seed-csp4 .glyphicon-warning-sign:before{content:"\e107"}.seed-csp4 .glyphicon-plane:before{content:"\e108"}.seed-csp4 .glyphicon-calendar:before{content:"\e109"}.seed-csp4 .glyphicon-random:before{content:"\e110"}.seed-csp4 .glyphicon-comment:before{content:"\e111"}.seed-csp4 .glyphicon-magnet:before{content:"\e112"}.seed-csp4 .glyphicon-chevron-up:before{content:"\e113"}.seed-csp4 .glyphicon-chevron-down:before{content:"\e114"}.seed-csp4 .glyphicon-retweet:before{content:"\e115"}.seed-csp4 .glyphicon-shopping-cart:before{content:"\e116"}.seed-csp4 .glyphicon-folder-close:before{content:"\e117"}.seed-csp4 .glyphicon-folder-open:before{content:"\e118"}.seed-csp4 .glyphicon-resize-vertical:before{content:"\e119"}.seed-csp4 .glyphicon-resize-horizontal:before{content:"\e120"}.seed-csp4 .glyphicon-hdd:before{content:"\e121"}.seed-csp4 .glyphicon-bullhorn:before{content:"\e122"}.seed-csp4 .glyphicon-bell:before{content:"\e123"}.seed-csp4 .glyphicon-certificate:before{content:"\e124"}.seed-csp4 .glyphicon-thumbs-up:before{content:"\e125"}.seed-csp4 .glyphicon-thumbs-down:before{content:"\e126"}.seed-csp4 .glyphicon-hand-right:before{content:"\e127"}.seed-csp4 .glyphicon-hand-left:before{content:"\e128"}.seed-csp4 .glyphicon-hand-up:before{content:"\e129"}.seed-csp4 .glyphicon-hand-down:before{content:"\e130"}.seed-csp4 .glyphicon-circle-arrow-right:before{content:"\e131"}.seed-csp4 .glyphicon-circle-arrow-left:before{content:"\e132"}.seed-csp4 .glyphicon-circle-arrow-up:before{content:"\e133"}.seed-csp4 .glyphicon-circle-arrow-down:before{content:"\e134"}.seed-csp4 .glyphicon-globe:before{content:"\e135"}.seed-csp4 .glyphicon-wrench:before{content:"\e136"}.seed-csp4 .glyphicon-tasks:before{content:"\e137"}.seed-csp4 .glyphicon-filter:before{content:"\e138"}.seed-csp4 .glyphicon-briefcase:before{content:"\e139"}.seed-csp4 .glyphicon-fullscreen:before{content:"\e140"}.seed-csp4 .glyphicon-dashboard:before{content:"\e141"}.seed-csp4 .glyphicon-paperclip:before{content:"\e142"}.seed-csp4 .glyphicon-heart-empty:before{content:"\e143"}.seed-csp4 .glyphicon-link:before{content:"\e144"}.seed-csp4 .glyphicon-phone:before{content:"\e145"}.seed-csp4 .glyphicon-pushpin:before{content:"\e146"}.seed-csp4 .glyphicon-usd:before{content:"\e148"}.seed-csp4 .glyphicon-gbp:before{content:"\e149"}.seed-csp4 .glyphicon-sort:before{content:"\e150"}.seed-csp4 .glyphicon-sort-by-alphabet:before{content:"\e151"}.seed-csp4 .glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.seed-csp4 .glyphicon-sort-by-order:before{content:"\e153"}.seed-csp4 .glyphicon-sort-by-order-alt:before{content:"\e154"}.seed-csp4 .glyphicon-sort-by-attributes:before{content:"\e155"}.seed-csp4 .glyphicon-sort-by-attributes-alt:before{content:"\e156"}.seed-csp4 .glyphicon-unchecked:before{content:"\e157"}.seed-csp4 .glyphicon-expand:before{content:"\e158"}.seed-csp4 .glyphicon-collapse-down:before{content:"\e159"}.seed-csp4 .glyphicon-collapse-up:before{content:"\e160"}.seed-csp4 .glyphicon-log-in:before{content:"\e161"}.seed-csp4 .glyphicon-flash:before{content:"\e162"}.seed-csp4 .glyphicon-log-out:before{content:"\e163"}.seed-csp4 .glyphicon-new-window:before{content:"\e164"}.seed-csp4 .glyphicon-record:before{content:"\e165"}.seed-csp4 .glyphicon-save:before{content:"\e166"}.seed-csp4 .glyphicon-open:before{content:"\e167"}.seed-csp4 .glyphicon-saved:before{content:"\e168"}.seed-csp4 .glyphicon-import:before{content:"\e169"}.seed-csp4 .glyphicon-export:before{content:"\e170"}.seed-csp4 .glyphicon-send:before{content:"\e171"}.seed-csp4 .glyphicon-floppy-disk:before{content:"\e172"}.seed-csp4 .glyphicon-floppy-saved:before{content:"\e173"}.seed-csp4 .glyphicon-floppy-remove:before{content:"\e174"}.seed-csp4 .glyphicon-floppy-save:before{content:"\e175"}.seed-csp4 .glyphicon-floppy-open:before{content:"\e176"}.seed-csp4 .glyphicon-credit-card:before{content:"\e177"}.seed-csp4 .glyphicon-transfer:before{content:"\e178"}.seed-csp4 .glyphicon-cutlery:before{content:"\e179"}.seed-csp4 .glyphicon-header:before{content:"\e180"}.seed-csp4 .glyphicon-compressed:before{content:"\e181"}.seed-csp4 .glyphicon-earphone:before{content:"\e182"}.seed-csp4 .glyphicon-phone-alt:before{content:"\e183"}.seed-csp4 .glyphicon-tower:before{content:"\e184"}.seed-csp4 .glyphicon-stats:before{content:"\e185"}.seed-csp4 .glyphicon-sd-video:before{content:"\e186"}.seed-csp4 .glyphicon-hd-video:before{content:"\e187"}.seed-csp4 .glyphicon-subtitles:before{content:"\e188"}.seed-csp4 .glyphicon-sound-stereo:before{content:"\e189"}.seed-csp4 .glyphicon-sound-dolby:before{content:"\e190"}.seed-csp4 .glyphicon-sound-5-1:before{content:"\e191"}.seed-csp4 .glyphicon-sound-6-1:before{content:"\e192"}.seed-csp4 .glyphicon-sound-7-1:before{content:"\e193"}.seed-csp4 .glyphicon-copyright-mark:before{content:"\e194"}.seed-csp4 .glyphicon-registration-mark:before{content:"\e195"}.seed-csp4 .glyphicon-cloud-download:before{content:"\e197"}.seed-csp4 .glyphicon-cloud-upload:before{content:"\e198"}.seed-csp4 .glyphicon-tree-conifer:before{content:"\e199"}.seed-csp4 .glyphicon-tree-deciduous:before{content:"\e200"}.seed-csp4 .caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.seed-csp4 .dropdown{position:relative}.seed-csp4 .dropdown-toggle:focus{outline:0}.seed-csp4 .dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box}.seed-csp4 .dropdown-menu.pull-right{right:0;left:auto}.seed-csp4 .dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.seed-csp4 .dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.428571429;color:#333;white-space:nowrap}.seed-csp4 .dropdown-menu>li>a:hover,.seed-csp4 .dropdown-menu>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}.seed-csp4 .dropdown-menu>.active>a,.seed-csp4 .dropdown-menu>.active>a:hover,.seed-csp4 .dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#428bca}.seed-csp4 .dropdown-menu>.disabled>a,.seed-csp4 .dropdown-menu>.disabled>a:hover,.seed-csp4 .dropdown-menu>.disabled>a:focus{color:#999}.seed-csp4 .dropdown-menu>.disabled>a:hover,.seed-csp4 .dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);cursor:not-allowed}.seed-csp4 .open>.dropdown-menu{display:block}.seed-csp4 .open>a{outline:0}.seed-csp4 .dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.seed-csp4 .dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.seed-csp4 .pull-right>.dropdown-menu{right:0;left:auto}.seed-csp4 .dropup .caret,.seed-csp4 .navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.seed-csp4 .dropup .dropdown-menu,.seed-csp4 .navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media (min-width:768px){.seed-csp4 .navbar-right .dropdown-menu{right:0;left:auto}}.seed-csp4 .btn-group,.seed-csp4 .btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.seed-csp4 .btn-group>.btn,.seed-csp4 .btn-group-vertical>.btn{position:relative;float:left}.seed-csp4 .btn-group>.btn:hover,.seed-csp4 .btn-group-vertical>.btn:hover,.seed-csp4 .btn-group>.btn:focus,.seed-csp4 .btn-group-vertical>.btn:focus,.seed-csp4 .btn-group>.btn:active,.seed-csp4 .btn-group-vertical>.btn:active,.seed-csp4 .btn-group>.btn.active,.seed-csp4 .btn-group-vertical>.btn.active{z-index:2}.seed-csp4 .btn-group>.btn:focus,.seed-csp4 .btn-group-vertical>.btn:focus{outline:0}.seed-csp4 .btn-group .btn+.btn,.seed-csp4 .btn-group .btn+.btn-group,.seed-csp4 .btn-group .btn-group+.btn,.seed-csp4 .btn-group .btn-group+.btn-group{margin-left:-1px}.seed-csp4 .btn-toolbar:before,.seed-csp4 .btn-toolbar:after{content:" ";display:table}.seed-csp4 .btn-toolbar:after{clear:both}.seed-csp4 .btn-toolbar:before,.seed-csp4 .btn-toolbar:after{content:" ";display:table}.seed-csp4 .btn-toolbar:after{clear:both}.seed-csp4 .btn-toolbar .btn-group{float:left}.seed-csp4 .btn-toolbar>.btn+.btn,.seed-csp4 .btn-toolbar>.btn-group+.btn,.seed-csp4 .btn-toolbar>.btn+.btn-group,.seed-csp4 .btn-toolbar>.btn-group+.btn-group{margin-left:5px}.seed-csp4 .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.seed-csp4 .btn-group>.btn:first-child{margin-left:0}.seed-csp4 .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.seed-csp4 .btn-group>.btn:last-child:not(:first-child),.seed-csp4 .btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.seed-csp4 .btn-group>.btn-group{float:left}.seed-csp4 .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.seed-csp4 .btn-group>.btn-group:first-child>.btn:last-child,.seed-csp4 .btn-group>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.seed-csp4 .btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.seed-csp4 .btn-group .dropdown-toggle:active,.seed-csp4 .btn-group.open .dropdown-toggle{outline:0}.seed-csp4 .btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.seed-csp4 .btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.seed-csp4 .btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.seed-csp4 .btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.seed-csp4 .btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right:12px}.seed-csp4 .btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.seed-csp4 .btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.seed-csp4 .btn .caret{margin-left:0}.seed-csp4 .btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.seed-csp4 .dropup .btn-lg .caret{border-width:0 5px 5px}.seed-csp4 .btn-group-vertical>.btn,.seed-csp4 .btn-group-vertical>.btn-group,.seed-csp4 .btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.seed-csp4 .btn-group-vertical>.btn-group:before,.seed-csp4 .btn-group-vertical>.btn-group:after{content:" ";display:table}.seed-csp4 .btn-group-vertical>.btn-group:after{clear:both}.seed-csp4 .btn-group-vertical>.btn-group:before,.seed-csp4 .btn-group-vertical>.btn-group:after{content:" ";display:table}.seed-csp4 .btn-group-vertical>.btn-group:after{clear:both}.seed-csp4 .btn-group-vertical>.btn-group>.btn{float:none}.seed-csp4 .btn-group-vertical>.btn+.btn,.seed-csp4 .btn-group-vertical>.btn+.btn-group,.seed-csp4 .btn-group-vertical>.btn-group+.btn,.seed-csp4 .btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.seed-csp4 .btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.seed-csp4 .btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.seed-csp4 .btn-group-vertical>.btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-top-right-radius:0;border-top-left-radius:0}.seed-csp4 .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.seed-csp4 .btn-group-vertical>.btn-group:first-child>.btn:last-child,.seed-csp4 .btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.seed-csp4 .btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.seed-csp4 .btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.seed-csp4 .btn-group-justified>.btn,.seed-csp4 .btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.seed-csp4 .btn-group-justified>.btn-group .btn{width:100%}.seed-csp4 [data-toggle=buttons]>.btn>input[type=radio],.seed-csp4 [data-toggle=buttons]>.btn>input[type=checkbox]{display:none}.seed-csp4 .input-group{position:relative;display:table;border-collapse:separate}.seed-csp4 .input-group[class*=col-]{float:none;padding-left:0;padding-right:0}.seed-csp4 .input-group .form-control{width:100%;margin-bottom:0}.seed-csp4 .input-group-lg>.form-control,.seed-csp4 .input-group-lg>.input-group-addon,.seed-csp4 .input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.seed-csp4 .input-group-lg>.form-control,select.seed-csp4 .input-group-lg>.input-group-addon,select.seed-csp4 .input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}textarea.seed-csp4 .input-group-lg>.form-control,textarea.seed-csp4 .input-group-lg>.input-group-addon,textarea.seed-csp4 .input-group-lg>.input-group-btn>.btn{height:auto}.seed-csp4 .input-group-sm>.form-control,.seed-csp4 .input-group-sm>.input-group-addon,.seed-csp4 .input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.seed-csp4 .input-group-sm>.form-control,select.seed-csp4 .input-group-sm>.input-group-addon,select.seed-csp4 .input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.seed-csp4 .input-group-sm>.form-control,textarea.seed-csp4 .input-group-sm>.input-group-addon,textarea.seed-csp4 .input-group-sm>.input-group-btn>.btn{height:auto}.seed-csp4 .input-group-addon,.seed-csp4 .input-group-btn,.seed-csp4 .input-group .form-control{display:table-cell}.seed-csp4 .input-group-addon:not(:first-child):not(:last-child),.seed-csp4 .input-group-btn:not(:first-child):not(:last-child),.seed-csp4 .input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.seed-csp4 .input-group-addon,.seed-csp4 .input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.seed-csp4 .input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.seed-csp4 .input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.seed-csp4 .input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.seed-csp4 .input-group-addon input[type=radio],.seed-csp4 .input-group-addon input[type=checkbox]{margin-top:0}.seed-csp4 .input-group .form-control:first-child,.seed-csp4 .input-group-addon:first-child,.seed-csp4 .input-group-btn:first-child>.btn,.seed-csp4 .input-group-btn:first-child>.dropdown-toggle,.seed-csp4 .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.seed-csp4 .input-group-addon:first-child{border-right:0}.seed-csp4 .input-group .form-control:last-child,.seed-csp4 .input-group-addon:last-child,.seed-csp4 .input-group-btn:last-child>.btn,.seed-csp4 .input-group-btn:last-child>.dropdown-toggle,.seed-csp4 .input-group-btn:first-child>.btn:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.seed-csp4 .input-group-addon:last-child{border-left:0}.seed-csp4 .input-group-btn{position:relative;white-space:nowrap}.seed-csp4 .input-group-btn:first-child>.btn{margin-right:-1px}.seed-csp4 .input-group-btn:last-child>.btn{margin-left:-1px}.seed-csp4 .input-group-btn>.btn{position:relative}.seed-csp4 .input-group-btn>.btn+.btn{margin-left:-4px}.seed-csp4 .input-group-btn>.btn:hover,.seed-csp4 .input-group-btn>.btn:active{z-index:2}.seed-csp4 .nav{margin-bottom:0;padding-left:0;list-style:none}.seed-csp4 .nav:before,.seed-csp4 .nav:after{content:" ";display:table}.seed-csp4 .nav:after{clear:both}.seed-csp4 .nav:before,.seed-csp4 .nav:after{content:" ";display:table}.seed-csp4 .nav:after{clear:both}.seed-csp4 .nav>li{position:relative;display:block}.seed-csp4 .nav>li>a{position:relative;display:block;padding:10px 15px}.seed-csp4 .nav>li>a:hover,.seed-csp4 .nav>li>a:focus{text-decoration:none;background-color:#eee}.seed-csp4 .nav>li.disabled>a{color:#999}.seed-csp4 .nav>li.disabled>a:hover,.seed-csp4 .nav>li.disabled>a:focus{color:#999;text-decoration:none;background-color:transparent;cursor:not-allowed}.seed-csp4 .nav .open>a,.seed-csp4 .nav .open>a:hover,.seed-csp4 .nav .open>a:focus{background-color:#eee;border-color:#428bca}.seed-csp4 .nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.seed-csp4 .nav>li>a>img{max-width:none}.seed-csp4 .nav-tabs{border-bottom:1px solid #ddd}.seed-csp4 .nav-tabs>li{float:left;margin-bottom:-1px}.seed-csp4 .nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.seed-csp4 .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.seed-csp4 .nav-tabs>li.active>a,.seed-csp4 .nav-tabs>li.active>a:hover,.seed-csp4 .nav-tabs>li.active>a:focus{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.seed-csp4 .nav-tabs.nav-justified{width:100%;border-bottom:0}.seed-csp4 .nav-tabs.nav-justified>li{float:none}.seed-csp4 .nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.seed-csp4 .nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.seed-csp4 .nav-tabs.nav-justified>li{display:table-cell;width:1%}.seed-csp4 .nav-tabs.nav-justified>li>a{margin-bottom:0}}.seed-csp4 .nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.seed-csp4 .nav-tabs.nav-justified>.active>a,.seed-csp4 .nav-tabs.nav-justified>.active>a:hover,.seed-csp4 .nav-tabs.nav-justified>.active>a:focus{border:1px solid #ddd}@media (min-width:768px){.seed-csp4 .nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.seed-csp4 .nav-tabs.nav-justified>.active>a,.seed-csp4 .nav-tabs.nav-justified>.active>a:hover,.seed-csp4 .nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#fff}}.seed-csp4 .nav-pills>li{float:left}.seed-csp4 .nav-pills>li>a{border-radius:4px}.seed-csp4 .nav-pills>li+li{margin-left:2px}.seed-csp4 .nav-pills>li.active>a,.seed-csp4 .nav-pills>li.active>a:hover,.seed-csp4 .nav-pills>li.active>a:focus{color:#fff;background-color:#428bca}.seed-csp4 .nav-stacked>li{float:none}.seed-csp4 .nav-stacked>li+li{margin-top:2px;margin-left:0}.seed-csp4 .nav-justified{width:100%}.seed-csp4 .nav-justified>li{float:none}.seed-csp4 .nav-justified>li>a{text-align:center;margin-bottom:5px}.seed-csp4 .nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.seed-csp4 .nav-justified>li{display:table-cell;width:1%}.seed-csp4 .nav-justified>li>a{margin-bottom:0}}.seed-csp4 .nav-tabs-justified{border-bottom:0}.seed-csp4 .nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.seed-csp4 .nav-tabs-justified>.active>a,.seed-csp4 .nav-tabs-justified>.active>a:hover,.seed-csp4 .nav-tabs-justified>.active>a:focus{border:1px solid #ddd}@media (min-width:768px){.seed-csp4 .nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.seed-csp4 .nav-tabs-justified>.active>a,.seed-csp4 .nav-tabs-justified>.active>a:hover,.seed-csp4 .nav-tabs-justified>.active>a:focus{border-bottom-color:#fff}}.seed-csp4 .tab-content>.tab-pane{display:none}.seed-csp4 .tab-content>.active{display:block}.seed-csp4 .nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.seed-csp4 .navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.seed-csp4 .navbar:before,.seed-csp4 .navbar:after{content:" ";display:table}.seed-csp4 .navbar:after{clear:both}.seed-csp4 .navbar:before,.seed-csp4 .navbar:after{content:" ";display:table}.seed-csp4 .navbar:after{clear:both}@media (min-width:768px){.seed-csp4 .navbar{border-radius:4px}}.seed-csp4 .navbar-header:before,.seed-csp4 .navbar-header:after{content:" ";display:table}.seed-csp4 .navbar-header:after{clear:both}.seed-csp4 .navbar-header:before,.seed-csp4 .navbar-header:after{content:" ";display:table}.seed-csp4 .navbar-header:after{clear:both}@media (min-width:768px){.seed-csp4 .navbar-header{float:left}}.seed-csp4 .navbar-collapse{max-height:340px;overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.1);-webkit-overflow-scrolling:touch}.seed-csp4 .navbar-collapse:before,.seed-csp4 .navbar-collapse:after{content:" ";display:table}.seed-csp4 .navbar-collapse:after{clear:both}.seed-csp4 .navbar-collapse:before,.seed-csp4 .navbar-collapse:after{content:" ";display:table}.seed-csp4 .navbar-collapse:after{clear:both}.seed-csp4 .navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.seed-csp4 .navbar-collapse{width:auto;border-top:0;box-shadow:none}.seed-csp4 .navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.seed-csp4 .navbar-collapse.in{overflow-y:visible}.navbar-fixed-top .seed-csp4 .navbar-collapse,.navbar-static-top .seed-csp4 .navbar-collapse,.navbar-fixed-bottom .seed-csp4 .navbar-collapse{padding-left:0;padding-right:0}}.seed-csp4 .container>.navbar-header,.seed-csp4 .container>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.seed-csp4 .container>.navbar-header,.seed-csp4 .container>.navbar-collapse{margin-right:0;margin-left:0}}.seed-csp4 .navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.seed-csp4 .navbar-static-top{border-radius:0}}.seed-csp4 .navbar-fixed-top,.seed-csp4 .navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.seed-csp4 .navbar-fixed-top,.seed-csp4 .navbar-fixed-bottom{border-radius:0}}.seed-csp4 .navbar-fixed-top{top:0;border-width:0 0 1px}.seed-csp4 .navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.seed-csp4 .navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px}.seed-csp4 .navbar-brand:hover,.seed-csp4 .navbar-brand:focus{text-decoration:none}@media (min-width:768px){.navbar>.container .seed-csp4 .navbar-brand{margin-left:-15px}}.seed-csp4 .navbar-toggle{position:relative;float:right;margin-right:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.seed-csp4 .navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.seed-csp4 .navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.seed-csp4 .navbar-toggle{display:none}}.seed-csp4 .navbar-nav{margin:7.5px -15px}.seed-csp4 .navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.seed-csp4 .navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.seed-csp4 .navbar-nav .open .dropdown-menu>li>a,.seed-csp4 .navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.seed-csp4 .navbar-nav .open .dropdown-menu>li>a{line-height:20px}.seed-csp4 .navbar-nav .open .dropdown-menu>li>a:hover,.seed-csp4 .navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media (min-width:768px){.seed-csp4 .navbar-nav{float:left;margin:0}.seed-csp4 .navbar-nav>li{float:left}.seed-csp4 .navbar-nav>li>a{padding-top:15px;padding-bottom:15px}.seed-csp4 .navbar-nav.navbar-right:last-child{margin-right:-15px}}@media (min-width:768px){.seed-csp4 .navbar-left{float:left!important}.seed-csp4 .navbar-right{float:right!important}}.seed-csp4 .navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);margin-top:8px;margin-bottom:8px}@media (min-width:768px){.seed-csp4 .navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.seed-csp4 .navbar-form .form-control{display:inline-block}.seed-csp4 .navbar-form select.form-control{width:auto}.seed-csp4 .navbar-form .radio,.seed-csp4 .navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0}.seed-csp4 .navbar-form .radio input[type=radio],.seed-csp4 .navbar-form .checkbox input[type=checkbox]{float:none;margin-left:0}}@media (max-width:767px){.seed-csp4 .navbar-form .form-group{margin-bottom:5px}}@media (min-width:768px){.seed-csp4 .navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}.seed-csp4 .navbar-form.navbar-right:last-child{margin-right:-15px}}.seed-csp4 .navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.seed-csp4 .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.seed-csp4 .navbar-nav.pull-right>li>.dropdown-menu,.seed-csp4 .navbar-nav>li>.dropdown-menu.pull-right{left:auto;right:0}.seed-csp4 .navbar-btn{margin-top:8px;margin-bottom:8px}.seed-csp4 .navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.seed-csp4 .navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.seed-csp4 .navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.seed-csp4 .navbar-text{float:left;margin-left:15px;margin-right:15px}.seed-csp4 .navbar-text.navbar-right:last-child{margin-right:0}}.seed-csp4 .navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.seed-csp4 .navbar-default .navbar-brand{color:#777}.seed-csp4 .navbar-default .navbar-brand:hover,.seed-csp4 .navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.seed-csp4 .navbar-default .navbar-text{color:#777}.seed-csp4 .navbar-default .navbar-nav>li>a{color:#777}.seed-csp4 .navbar-default .navbar-nav>li>a:hover,.seed-csp4 .navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.seed-csp4 .navbar-default .navbar-nav>.active>a,.seed-csp4 .navbar-default .navbar-nav>.active>a:hover,.seed-csp4 .navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.seed-csp4 .navbar-default .navbar-nav>.disabled>a,.seed-csp4 .navbar-default .navbar-nav>.disabled>a:hover,.seed-csp4 .navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.seed-csp4 .navbar-default .navbar-toggle{border-color:#ddd}.seed-csp4 .navbar-default .navbar-toggle:hover,.seed-csp4 .navbar-default .navbar-toggle:focus{background-color:#ddd}.seed-csp4 .navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.seed-csp4 .navbar-default .navbar-collapse,.seed-csp4 .navbar-default .navbar-form{border-color:#e7e7e7}.seed-csp4 .navbar-default .navbar-nav>.open>a,.seed-csp4 .navbar-default .navbar-nav>.open>a:hover,.seed-csp4 .navbar-default .navbar-nav>.open>a:focus{background-color:#e7e7e7;color:#555}@media (max-width:767px){.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu>.active>a,.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.seed-csp4 .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.seed-csp4 .navbar-default .navbar-link{color:#777}.seed-csp4 .navbar-default .navbar-link:hover{color:#333}.seed-csp4 .navbar-inverse{background-color:#222;border-color:#080808}.seed-csp4 .navbar-inverse .navbar-brand{color:#999}.seed-csp4 .navbar-inverse .navbar-brand:hover,.seed-csp4 .navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.seed-csp4 .navbar-inverse .navbar-text{color:#999}.seed-csp4 .navbar-inverse .navbar-nav>li>a{color:#999}.seed-csp4 .navbar-inverse .navbar-nav>li>a:hover,.seed-csp4 .navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.seed-csp4 .navbar-inverse .navbar-nav>.active>a,.seed-csp4 .navbar-inverse .navbar-nav>.active>a:hover,.seed-csp4 .navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.seed-csp4 .navbar-inverse .navbar-nav>.disabled>a,.seed-csp4 .navbar-inverse .navbar-nav>.disabled>a:hover,.seed-csp4 .navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.seed-csp4 .navbar-inverse .navbar-toggle{border-color:#333}.seed-csp4 .navbar-inverse .navbar-toggle:hover,.seed-csp4 .navbar-inverse .navbar-toggle:focus{background-color:#333}.seed-csp4 .navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.seed-csp4 .navbar-inverse .navbar-collapse,.seed-csp4 .navbar-inverse .navbar-form{border-color:#101010}.seed-csp4 .navbar-inverse .navbar-nav>.open>a,.seed-csp4 .navbar-inverse .navbar-nav>.open>a:hover,.seed-csp4 .navbar-inverse .navbar-nav>.open>a:focus{background-color:#080808;color:#fff}@media (max-width:767px){.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.seed-csp4 .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.seed-csp4 .navbar-inverse .navbar-link{color:#999}.seed-csp4 .navbar-inverse .navbar-link:hover{color:#fff}.seed-csp4 .breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.seed-csp4 .breadcrumb>li{display:inline-block}.seed-csp4 .breadcrumb>li+li:before{content:"/\00a0";padding:0 5px;color:#ccc}.seed-csp4 .breadcrumb>.active{color:#999}.seed-csp4 .pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.seed-csp4 .pagination>li{display:inline}.seed-csp4 .pagination>li>a,.seed-csp4 .pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.428571429;text-decoration:none;background-color:#fff;border:1px solid #ddd;margin-left:-1px}.seed-csp4 .pagination>li:first-child>a,.seed-csp4 .pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.seed-csp4 .pagination>li:last-child>a,.seed-csp4 .pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.seed-csp4 .pagination>li>a:hover,.seed-csp4 .pagination>li>span:hover,.seed-csp4 .pagination>li>a:focus,.seed-csp4 .pagination>li>span:focus{background-color:#eee}.seed-csp4 .pagination>.active>a,.seed-csp4 .pagination>.active>span,.seed-csp4 .pagination>.active>a:hover,.seed-csp4 .pagination>.active>span:hover,.seed-csp4 .pagination>.active>a:focus,.seed-csp4 .pagination>.active>span:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca;cursor:default}.seed-csp4 .pagination>.disabled>span,.seed-csp4 .pagination>.disabled>span:hover,.seed-csp4 .pagination>.disabled>span:focus,.seed-csp4 .pagination>.disabled>a,.seed-csp4 .pagination>.disabled>a:hover,.seed-csp4 .pagination>.disabled>a:focus{color:#999;background-color:#fff;border-color:#ddd;cursor:not-allowed}.seed-csp4 .pagination-lg>li>a,.seed-csp4 .pagination-lg>li>span{padding:10px 16px;font-size:18px}.seed-csp4 .pagination-lg>li:first-child>a,.seed-csp4 .pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.seed-csp4 .pagination-lg>li:last-child>a,.seed-csp4 .pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.seed-csp4 .pagination-sm>li>a,.seed-csp4 .pagination-sm>li>span{padding:5px 10px;font-size:12px}.seed-csp4 .pagination-sm>li:first-child>a,.seed-csp4 .pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.seed-csp4 .pagination-sm>li:last-child>a,.seed-csp4 .pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.seed-csp4 .pager{padding-left:0;margin:20px 0;list-style:none;text-align:center}.seed-csp4 .pager:before,.seed-csp4 .pager:after{content:" ";display:table}.seed-csp4 .pager:after{clear:both}.seed-csp4 .pager:before,.seed-csp4 .pager:after{content:" ";display:table}.seed-csp4 .pager:after{clear:both}.seed-csp4 .pager li{display:inline}.seed-csp4 .pager li>a,.seed-csp4 .pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.seed-csp4 .pager li>a:hover,.seed-csp4 .pager li>a:focus{text-decoration:none;background-color:#eee}.seed-csp4 .pager .next>a,.seed-csp4 .pager .next>span{float:right}.seed-csp4 .pager .previous>a,.seed-csp4 .pager .previous>span{float:left}.seed-csp4 .pager .disabled>a,.seed-csp4 .pager .disabled>a:hover,.seed-csp4 .pager .disabled>a:focus,.seed-csp4 .pager .disabled>span{color:#999;background-color:#fff;cursor:not-allowed}.seed-csp4 .label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.seed-csp4 .label[href]:hover,.seed-csp4 .label[href]:focus{color:#fff;text-decoration:none;cursor:pointer}.seed-csp4 .label:empty{display:none}.btn .seed-csp4 .label{position:relative;top:-1px}.seed-csp4 .label-default{background-color:#999}.seed-csp4 .label-default[href]:hover,.seed-csp4 .label-default[href]:focus{background-color:gray}.seed-csp4 .label-primary{background-color:#428bca}.seed-csp4 .label-primary[href]:hover,.seed-csp4 .label-primary[href]:focus{background-color:#3071a9}.seed-csp4 .label-success{background-color:#5cb85c}.seed-csp4 .label-success[href]:hover,.seed-csp4 .label-success[href]:focus{background-color:#449d44}.seed-csp4 .label-info{background-color:#5bc0de}.seed-csp4 .label-info[href]:hover,.seed-csp4 .label-info[href]:focus{background-color:#31b0d5}.seed-csp4 .label-warning{background-color:#f0ad4e}.seed-csp4 .label-warning[href]:hover,.seed-csp4 .label-warning[href]:focus{background-color:#ec971f}.seed-csp4 .label-danger{background-color:#d9534f}.seed-csp4 .label-danger[href]:hover,.seed-csp4 .label-danger[href]:focus{background-color:#c9302c}.seed-csp4 .badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;color:#fff;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#999;border-radius:10px}.seed-csp4 .badge:empty{display:none}.btn .seed-csp4 .badge{position:relative;top:-1px}.seed-csp4 a.badge:hover,.seed-csp4 a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.seed-csp4 a.list-group-item.active>.badge,.seed-csp4 .nav-pills>.active>a>.badge{color:#428bca;background-color:#fff}.seed-csp4 .nav-pills>li>a>.badge{margin-left:3px}.seed-csp4 .jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.seed-csp4 .jumbotron h1,.seed-csp4 .jumbotron .h1{line-height:1;color:inherit}.seed-csp4 .jumbotron p{line-height:1.4}.container .seed-csp4 .jumbotron{border-radius:6px}.seed-csp4 .jumbotron .container{max-width:100%}@media screen and (min-width:768px){.seed-csp4 .jumbotron{padding-top:48px;padding-bottom:48px}.container .seed-csp4 .jumbotron{padding-left:60px;padding-right:60px}.seed-csp4 .jumbotron h1,.seed-csp4 .jumbotron .h1{font-size:63px}}.seed-csp4 .thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.seed-csp4 .thumbnail>img,.seed-csp4 .thumbnail a>img{display:block;max-width:100%;height:auto;margin-left:auto;margin-right:auto}a.seed-csp4 .thumbnail:hover,a.seed-csp4 .thumbnail:focus,a.seed-csp4 .thumbnail.active{border-color:#428bca}.seed-csp4 .thumbnail .caption{padding:9px;color:#333}.seed-csp4 .alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.seed-csp4 .alert h4{margin-top:0;color:inherit}.seed-csp4 .alert .alert-link{font-weight:700}.seed-csp4 .alert>p,.seed-csp4 .alert>ul{margin-bottom:0}.seed-csp4 .alert>p+p{margin-top:5px}.seed-csp4 .alert-dismissable{padding-right:35px}.seed-csp4 .alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.seed-csp4 .alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.seed-csp4 .alert-success hr{border-top-color:#c9e2b3}.seed-csp4 .alert-success .alert-link{color:#2b542c}.seed-csp4 .alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.seed-csp4 .alert-info hr{border-top-color:#a6e1ec}.seed-csp4 .alert-info .alert-link{color:#245269}.seed-csp4 .alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.seed-csp4 .alert-warning hr{border-top-color:#f7e1b5}.seed-csp4 .alert-warning .alert-link{color:#66512c}.seed-csp4 .alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.seed-csp4 .alert-danger hr{border-top-color:#e4b9c0}.seed-csp4 .alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.seed-csp4 .progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.seed-csp4 .progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;transition:width .6s ease}.seed-csp4 .progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:40px 40px}.seed-csp4 .progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.seed-csp4 .progress-bar-success{background-color:#5cb85c}.progress-striped .seed-csp4 .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.seed-csp4 .progress-bar-info{background-color:#5bc0de}.progress-striped .seed-csp4 .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.seed-csp4 .progress-bar-warning{background-color:#f0ad4e}.progress-striped .seed-csp4 .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.seed-csp4 .progress-bar-danger{background-color:#d9534f}.progress-striped .seed-csp4 .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.seed-csp4 .media,.seed-csp4 .media-body{overflow:hidden;zoom:1}.seed-csp4 .media,.seed-csp4 .media .media{margin-top:15px}.seed-csp4 .media:first-child{margin-top:0}.seed-csp4 .media-object{display:block}.seed-csp4 .media-heading{margin:0 0 5px}.seed-csp4 .media>.pull-left{margin-right:10px}.seed-csp4 .media>.pull-right{margin-left:10px}.seed-csp4 .media-list{padding-left:0;list-style:none}.seed-csp4 .list-group{margin-bottom:20px;padding-left:0}.seed-csp4 .list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.seed-csp4 .list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.seed-csp4 .list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.seed-csp4 .list-group-item>.badge{float:right}.seed-csp4 .list-group-item>.badge+.badge{margin-right:5px}.seed-csp4 a.list-group-item{color:#555}.seed-csp4 a.list-group-item .list-group-item-heading{color:#333}.seed-csp4 a.list-group-item:hover,.seed-csp4 a.list-group-item:focus{text-decoration:none;background-color:#f5f5f5}.seed-csp4 a.list-group-item.active,.seed-csp4 a.list-group-item.active:hover,.seed-csp4 a.list-group-item.active:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.seed-csp4 a.list-group-item.active .list-group-item-heading,.seed-csp4 a.list-group-item.active:hover .list-group-item-heading,.seed-csp4 a.list-group-item.active:focus .list-group-item-heading{color:inherit}.seed-csp4 a.list-group-item.active .list-group-item-text,.seed-csp4 a.list-group-item.active:hover .list-group-item-text,.seed-csp4 a.list-group-item.active:focus .list-group-item-text{color:#e1edf7}.seed-csp4 .list-group-item-heading{margin-top:0;margin-bottom:5px}.seed-csp4 .list-group-item-text{margin-bottom:0;line-height:1.3}.seed-csp4 .panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.seed-csp4 .panel-body{padding:15px}.seed-csp4 .panel-body:before,.seed-csp4 .panel-body:after{content:" ";display:table}.seed-csp4 .panel-body:after{clear:both}.seed-csp4 .panel-body:before,.seed-csp4 .panel-body:after{content:" ";display:table}.seed-csp4 .panel-body:after{clear:both}.seed-csp4 .panel>.list-group{margin-bottom:0}.seed-csp4 .panel>.list-group .list-group-item{border-width:1px 0}.seed-csp4 .panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.seed-csp4 .panel>.list-group .list-group-item:last-child{border-bottom:0}.seed-csp4 .panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.seed-csp4 .panel>.table,.seed-csp4 .panel>.table-responsive>.table{margin-bottom:0}.seed-csp4 .panel>.panel-body+.table,.seed-csp4 .panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.seed-csp4 .panel>.table>tbody:first-child th,.seed-csp4 .panel>.table>tbody:first-child td{border-top:0}.seed-csp4 .panel>.table-bordered,.seed-csp4 .panel>.table-responsive>.table-bordered{border:0}.seed-csp4 .panel>.table-bordered>thead>tr>th:first-child,.seed-csp4 .panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.seed-csp4 .panel>.table-bordered>tbody>tr>th:first-child,.seed-csp4 .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.seed-csp4 .panel>.table-bordered>tfoot>tr>th:first-child,.seed-csp4 .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.seed-csp4 .panel>.table-bordered>thead>tr>td:first-child,.seed-csp4 .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.seed-csp4 .panel>.table-bordered>tbody>tr>td:first-child,.seed-csp4 .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.seed-csp4 .panel>.table-bordered>tfoot>tr>td:first-child,.seed-csp4 .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.seed-csp4 .panel>.table-bordered>thead>tr>th:last-child,.seed-csp4 .panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.seed-csp4 .panel>.table-bordered>tbody>tr>th:last-child,.seed-csp4 .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.seed-csp4 .panel>.table-bordered>tfoot>tr>th:last-child,.seed-csp4 .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.seed-csp4 .panel>.table-bordered>thead>tr>td:last-child,.seed-csp4 .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.seed-csp4 .panel>.table-bordered>tbody>tr>td:last-child,.seed-csp4 .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.seed-csp4 .panel>.table-bordered>tfoot>tr>td:last-child,.seed-csp4 .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.seed-csp4 .panel>.table-bordered>thead>tr:last-child>th,.seed-csp4 .panel>.table-responsive>.table-bordered>thead>tr:last-child>th,.seed-csp4 .panel>.table-bordered>tbody>tr:last-child>th,.seed-csp4 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.seed-csp4 .panel>.table-bordered>tfoot>tr:last-child>th,.seed-csp4 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.seed-csp4 .panel>.table-bordered>thead>tr:last-child>td,.seed-csp4 .panel>.table-responsive>.table-bordered>thead>tr:last-child>td,.seed-csp4 .panel>.table-bordered>tbody>tr:last-child>td,.seed-csp4 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.seed-csp4 .panel>.table-bordered>tfoot>tr:last-child>td,.seed-csp4 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}.seed-csp4 .panel>.table-responsive{border:0;margin-bottom:0}.seed-csp4 .panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.seed-csp4 .panel-heading>.dropdown .dropdown-toggle{color:inherit}.seed-csp4 .panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.seed-csp4 .panel-title>a{color:inherit}.seed-csp4 .panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.seed-csp4 .panel-group .panel{margin-bottom:0;border-radius:4px;overflow:hidden}.seed-csp4 .panel-group .panel+.panel{margin-top:5px}.seed-csp4 .panel-group .panel-heading{border-bottom:0}.seed-csp4 .panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.seed-csp4 .panel-group .panel-footer{border-top:0}.seed-csp4 .panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.seed-csp4 .panel-default{border-color:#ddd}.seed-csp4 .panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.seed-csp4 .panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.seed-csp4 .panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.seed-csp4 .panel-primary{border-color:#428bca}.seed-csp4 .panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.seed-csp4 .panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.seed-csp4 .panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.seed-csp4 .panel-success{border-color:#d6e9c6}.seed-csp4 .panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.seed-csp4 .panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.seed-csp4 .panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.seed-csp4 .panel-warning{border-color:#faebcc}.seed-csp4 .panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.seed-csp4 .panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.seed-csp4 .panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.seed-csp4 .panel-danger{border-color:#ebccd1}.seed-csp4 .panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.seed-csp4 .panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.seed-csp4 .panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.seed-csp4 .panel-info{border-color:#bce8f1}.seed-csp4 .panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.seed-csp4 .panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.seed-csp4 .panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.seed-csp4 .well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.seed-csp4 .well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.seed-csp4 .well-lg{padding:24px;border-radius:6px}.seed-csp4 .well-sm{padding:9px;border-radius:3px}.seed-csp4 .close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.seed-csp4 .close:hover,.seed-csp4 .close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.seed-csp4 .close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.seed-csp4 .modal-open{overflow:hidden}.seed-csp4 .modal{display:none;overflow:auto;overflow-y:scroll;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040}.seed-csp4 .modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.seed-csp4 .modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.seed-csp4 .modal-dialog{position:relative;width:auto;margin:10px;z-index:1050}.seed-csp4 .modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box;outline:0}.seed-csp4 .modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.seed-csp4 .modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.seed-csp4 .modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.seed-csp4 .modal-header{padding:15px;border-bottom:1px solid #e5e5e5;min-height:16.428571429px}.seed-csp4 .modal-header .close{margin-top:-2px}.seed-csp4 .modal-title{margin:0;line-height:1.428571429}.seed-csp4 .modal-body{position:relative;padding:20px}.seed-csp4 .modal-footer{margin-top:15px;padding:19px 20px 20px;text-align:right;border-top:1px solid #e5e5e5}.seed-csp4 .modal-footer:before,.seed-csp4 .modal-footer:after{content:" ";display:table}.seed-csp4 .modal-footer:after{clear:both}.seed-csp4 .modal-footer:before,.seed-csp4 .modal-footer:after{content:" ";display:table}.seed-csp4 .modal-footer:after{clear:both}.seed-csp4 .modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.seed-csp4 .modal-footer .btn-group .btn+.btn{margin-left:-1px}.seed-csp4 .modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.seed-csp4 .modal-dialog{width:600px;margin:30px auto}.seed-csp4 .modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}}.seed-csp4 .tooltip{position:absolute;z-index:1030;display:block;visibility:visible;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.seed-csp4 .tooltip.in{opacity:.9;filter:alpha(opacity=90)}.seed-csp4 .tooltip.top{margin-top:-3px;padding:5px 0}.seed-csp4 .tooltip.right{margin-left:3px;padding:0 5px}.seed-csp4 .tooltip.bottom{margin-top:3px;padding:5px 0}.seed-csp4 .tooltip.left{margin-left:-3px;padding:0 5px}.seed-csp4 .tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.seed-csp4 .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.seed-csp4 .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.seed-csp4 .tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-width:5px 5px 0;border-top-color:#000}.seed-csp4 .tooltip.top-right .tooltip-arrow{bottom:0;right:5px;border-width:5px 5px 0;border-top-color:#000}.seed-csp4 .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.seed-csp4 .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.seed-csp4 .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.seed-csp4 .tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-width:0 5px 5px;border-bottom-color:#000}.seed-csp4 .tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-width:0 5px 5px;border-bottom-color:#000}.seed-csp4 .popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);white-space:normal}.seed-csp4 .popover.top{margin-top:-10px}.seed-csp4 .popover.right{margin-left:10px}.seed-csp4 .popover.bottom{margin-top:10px}.seed-csp4 .popover.left{margin-left:-10px}.seed-csp4 .popover-title{margin:0;padding:8px 14px;font-size:14px;font-weight:400;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.seed-csp4 .popover-content{padding:9px 14px}.seed-csp4 .popover .arrow,.seed-csp4 .popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.seed-csp4 .popover .arrow{border-width:11px}.seed-csp4 .popover .arrow:after{border-width:10px;content:""}.seed-csp4 .popover.top .arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px}.seed-csp4 .popover.top .arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.seed-csp4 .popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.seed-csp4 .popover.right .arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.seed-csp4 .popover.bottom .arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-11px}.seed-csp4 .popover.bottom .arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.seed-csp4 .popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.seed-csp4 .popover.left .arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.seed-csp4 .carousel{position:relative}.seed-csp4 .carousel-inner{position:relative;overflow:hidden;width:100%}.seed-csp4 .carousel-inner>.item{display:none;position:relative;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.seed-csp4 .carousel-inner>.item>img,.seed-csp4 .carousel-inner>.item>a>img{display:block;max-width:100%;height:auto;line-height:1}.seed-csp4 .carousel-inner>.active,.seed-csp4 .carousel-inner>.next,.seed-csp4 .carousel-inner>.prev{display:block}.seed-csp4 .carousel-inner>.active{left:0}.seed-csp4 .carousel-inner>.next,.seed-csp4 .carousel-inner>.prev{position:absolute;top:0;width:100%}.seed-csp4 .carousel-inner>.next{left:100%}.seed-csp4 .carousel-inner>.prev{left:-100%}.seed-csp4 .carousel-inner>.next.left,.seed-csp4 .carousel-inner>.prev.right{left:0}.seed-csp4 .carousel-inner>.active.left{left:-100%}.seed-csp4 .carousel-inner>.active.right{left:100%}.seed-csp4 .carousel-control{position:absolute;top:0;left:0;bottom:0;width:15%;opacity:.5;filter:alpha(opacity=50);font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.seed-csp4 .carousel-control.left{background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,.5) 0),color-stop(rgba(0,0,0,.0001) 100%));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1)}.seed-csp4 .carousel-control.right{left:auto;right:0;background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,.0001) 0),color-stop(rgba(0,0,0,.5) 100%));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)}.seed-csp4 .carousel-control:hover,.seed-csp4 .carousel-control:focus{outline:0;color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.seed-csp4 .carousel-control .icon-prev,.seed-csp4 .carousel-control .icon-next,.seed-csp4 .carousel-control .glyphicon-chevron-left,.seed-csp4 .carousel-control .glyphicon-chevron-right{position:absolute;top:50%;z-index:5;display:inline-block}.seed-csp4 .carousel-control .icon-prev,.seed-csp4 .carousel-control .glyphicon-chevron-left{left:50%}.seed-csp4 .carousel-control .icon-next,.seed-csp4 .carousel-control .glyphicon-chevron-right{right:50%}.seed-csp4 .carousel-control .icon-prev,.seed-csp4 .carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.seed-csp4 .carousel-control .icon-prev:before{content:'\2039'}.seed-csp4 .carousel-control .icon-next:before{content:'\203a'}.seed-csp4 .carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;margin-left:-30%;padding-left:0;list-style:none;text-align:center}.seed-csp4 .carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;border:1px solid #fff;border-radius:10px;cursor:pointer;background-color:#000 \9;background-color:rgba(0,0,0,0)}.seed-csp4 .carousel-indicators .active{margin:0;width:12px;height:12px;background-color:#fff}.seed-csp4 .carousel-caption{position:absolute;left:15%;right:15%;bottom:20px;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.seed-csp4 .carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.seed-csp4 .carousel-control .glyphicons-chevron-left,.seed-csp4 .carousel-control .glyphicons-chevron-right,.seed-csp4 .carousel-control .icon-prev,.seed-csp4 .carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.seed-csp4 .carousel-caption{left:20%;right:20%;padding-bottom:30px}.seed-csp4 .carousel-indicators{bottom:20px}}.seed-csp4 .clearfix:before,.seed-csp4 .clearfix:after{content:" ";display:table}.seed-csp4 .clearfix:after{clear:both}.seed-csp4 .center-block{display:block;margin-left:auto;margin-right:auto}.seed-csp4 .pull-right{float:right!important}.seed-csp4 .pull-left{float:left!important}.seed-csp4 .hide{display:none!important}.seed-csp4 .show{display:block!important}.seed-csp4 .invisible{visibility:hidden}.seed-csp4 .text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.seed-csp4 .hidden{display:none!important;visibility:hidden!important}.seed-csp4 .affix{position:fixed}@-ms-viewport{width:device-width}.seed-csp4 .visible-xs,tr.seed-csp4 .visible-xs,th.seed-csp4 .visible-xs,td.seed-csp4 .visible-xs{display:none!important}@media (max-width:767px){.seed-csp4 .visible-xs{display:block!important}table.seed-csp4 .visible-xs{display:table}tr.seed-csp4 .visible-xs{display:table-row!important}th.seed-csp4 .visible-xs,td.seed-csp4 .visible-xs{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.seed-csp4 .visible-xs.visible-sm{display:block!important}table.seed-csp4 .visible-xs.visible-sm{display:table}tr.seed-csp4 .visible-xs.visible-sm{display:table-row!important}th.seed-csp4 .visible-xs.visible-sm,td.seed-csp4 .visible-xs.visible-sm{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.seed-csp4 .visible-xs.visible-md{display:block!important}table.seed-csp4 .visible-xs.visible-md{display:table}tr.seed-csp4 .visible-xs.visible-md{display:table-row!important}th.seed-csp4 .visible-xs.visible-md,td.seed-csp4 .visible-xs.visible-md{display:table-cell!important}}@media (min-width:1200px){.seed-csp4 .visible-xs.visible-lg{display:block!important}table.seed-csp4 .visible-xs.visible-lg{display:table}tr.seed-csp4 .visible-xs.visible-lg{display:table-row!important}th.seed-csp4 .visible-xs.visible-lg,td.seed-csp4 .visible-xs.visible-lg{display:table-cell!important}}.seed-csp4 .visible-sm,tr.seed-csp4 .visible-sm,th.seed-csp4 .visible-sm,td.seed-csp4 .visible-sm{display:none!important}@media (max-width:767px){.seed-csp4 .visible-sm.visible-xs{display:block!important}table.seed-csp4 .visible-sm.visible-xs{display:table}tr.seed-csp4 .visible-sm.visible-xs{display:table-row!important}th.seed-csp4 .visible-sm.visible-xs,td.seed-csp4 .visible-sm.visible-xs{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.seed-csp4 .visible-sm{display:block!important}table.seed-csp4 .visible-sm{display:table}tr.seed-csp4 .visible-sm{display:table-row!important}th.seed-csp4 .visible-sm,td.seed-csp4 .visible-sm{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.seed-csp4 .visible-sm.visible-md{display:block!important}table.seed-csp4 .visible-sm.visible-md{display:table}tr.seed-csp4 .visible-sm.visible-md{display:table-row!important}th.seed-csp4 .visible-sm.visible-md,td.seed-csp4 .visible-sm.visible-md{display:table-cell!important}}@media (min-width:1200px){.seed-csp4 .visible-sm.visible-lg{display:block!important}table.seed-csp4 .visible-sm.visible-lg{display:table}tr.seed-csp4 .visible-sm.visible-lg{display:table-row!important}th.seed-csp4 .visible-sm.visible-lg,td.seed-csp4 .visible-sm.visible-lg{display:table-cell!important}}.seed-csp4 .visible-md,tr.seed-csp4 .visible-md,th.seed-csp4 .visible-md,td.seed-csp4 .visible-md{display:none!important}@media (max-width:767px){.seed-csp4 .visible-md.visible-xs{display:block!important}table.seed-csp4 .visible-md.visible-xs{display:table}tr.seed-csp4 .visible-md.visible-xs{display:table-row!important}th.seed-csp4 .visible-md.visible-xs,td.seed-csp4 .visible-md.visible-xs{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.seed-csp4 .visible-md.visible-sm{display:block!important}table.seed-csp4 .visible-md.visible-sm{display:table}tr.seed-csp4 .visible-md.visible-sm{display:table-row!important}th.seed-csp4 .visible-md.visible-sm,td.seed-csp4 .visible-md.visible-sm{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.seed-csp4 .visible-md{display:block!important}table.seed-csp4 .visible-md{display:table}tr.seed-csp4 .visible-md{display:table-row!important}th.seed-csp4 .visible-md,td.seed-csp4 .visible-md{display:table-cell!important}}@media (min-width:1200px){.seed-csp4 .visible-md.visible-lg{display:block!important}table.seed-csp4 .visible-md.visible-lg{display:table}tr.seed-csp4 .visible-md.visible-lg{display:table-row!important}th.seed-csp4 .visible-md.visible-lg,td.seed-csp4 .visible-md.visible-lg{display:table-cell!important}}.seed-csp4 .visible-lg,tr.seed-csp4 .visible-lg,th.seed-csp4 .visible-lg,td.seed-csp4 .visible-lg{display:none!important}@media (max-width:767px){.seed-csp4 .visible-lg.visible-xs{display:block!important}table.seed-csp4 .visible-lg.visible-xs{display:table}tr.seed-csp4 .visible-lg.visible-xs{display:table-row!important}th.seed-csp4 .visible-lg.visible-xs,td.seed-csp4 .visible-lg.visible-xs{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.seed-csp4 .visible-lg.visible-sm{display:block!important}table.seed-csp4 .visible-lg.visible-sm{display:table}tr.seed-csp4 .visible-lg.visible-sm{display:table-row!important}th.seed-csp4 .visible-lg.visible-sm,td.seed-csp4 .visible-lg.visible-sm{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.seed-csp4 .visible-lg.visible-md{display:block!important}table.seed-csp4 .visible-lg.visible-md{display:table}tr.seed-csp4 .visible-lg.visible-md{display:table-row!important}th.seed-csp4 .visible-lg.visible-md,td.seed-csp4 .visible-lg.visible-md{display:table-cell!important}}@media (min-width:1200px){.seed-csp4 .visible-lg{display:block!important}table.seed-csp4 .visible-lg{display:table}tr.seed-csp4 .visible-lg{display:table-row!important}th.seed-csp4 .visible-lg,td.seed-csp4 .visible-lg{display:table-cell!important}}.seed-csp4 .hidden-xs{display:block!important}table.seed-csp4 .hidden-xs{display:table}tr.seed-csp4 .hidden-xs{display:table-row!important}th.seed-csp4 .hidden-xs,td.seed-csp4 .hidden-xs{display:table-cell!important}@media (max-width:767px){.seed-csp4 .hidden-xs,tr.seed-csp4 .hidden-xs,th.seed-csp4 .hidden-xs,td.seed-csp4 .hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.seed-csp4 .hidden-xs.hidden-sm,tr.seed-csp4 .hidden-xs.hidden-sm,th.seed-csp4 .hidden-xs.hidden-sm,td.seed-csp4 .hidden-xs.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.seed-csp4 .hidden-xs.hidden-md,tr.seed-csp4 .hidden-xs.hidden-md,th.seed-csp4 .hidden-xs.hidden-md,td.seed-csp4 .hidden-xs.hidden-md{display:none!important}}@media (min-width:1200px){.seed-csp4 .hidden-xs.hidden-lg,tr.seed-csp4 .hidden-xs.hidden-lg,th.seed-csp4 .hidden-xs.hidden-lg,td.seed-csp4 .hidden-xs.hidden-lg{display:none!important}}.seed-csp4 .hidden-sm{display:block!important}table.seed-csp4 .hidden-sm{display:table}tr.seed-csp4 .hidden-sm{display:table-row!important}th.seed-csp4 .hidden-sm,td.seed-csp4 .hidden-sm{display:table-cell!important}@media (max-width:767px){.seed-csp4 .hidden-sm.hidden-xs,tr.seed-csp4 .hidden-sm.hidden-xs,th.seed-csp4 .hidden-sm.hidden-xs,td.seed-csp4 .hidden-sm.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.seed-csp4 .hidden-sm,tr.seed-csp4 .hidden-sm,th.seed-csp4 .hidden-sm,td.seed-csp4 .hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.seed-csp4 .hidden-sm.hidden-md,tr.seed-csp4 .hidden-sm.hidden-md,th.seed-csp4 .hidden-sm.hidden-md,td.seed-csp4 .hidden-sm.hidden-md{display:none!important}}@media (min-width:1200px){.seed-csp4 .hidden-sm.hidden-lg,tr.seed-csp4 .hidden-sm.hidden-lg,th.seed-csp4 .hidden-sm.hidden-lg,td.seed-csp4 .hidden-sm.hidden-lg{display:none!important}}.seed-csp4 .hidden-md{display:block!important}table.seed-csp4 .hidden-md{display:table}tr.seed-csp4 .hidden-md{display:table-row!important}th.seed-csp4 .hidden-md,td.seed-csp4 .hidden-md{display:table-cell!important}@media (max-width:767px){.seed-csp4 .hidden-md.hidden-xs,tr.seed-csp4 .hidden-md.hidden-xs,th.seed-csp4 .hidden-md.hidden-xs,td.seed-csp4 .hidden-md.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.seed-csp4 .hidden-md.hidden-sm,tr.seed-csp4 .hidden-md.hidden-sm,th.seed-csp4 .hidden-md.hidden-sm,td.seed-csp4 .hidden-md.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.seed-csp4 .hidden-md,tr.seed-csp4 .hidden-md,th.seed-csp4 .hidden-md,td.seed-csp4 .hidden-md{display:none!important}}@media (min-width:1200px){.seed-csp4 .hidden-md.hidden-lg,tr.seed-csp4 .hidden-md.hidden-lg,th.seed-csp4 .hidden-md.hidden-lg,td.seed-csp4 .hidden-md.hidden-lg{display:none!important}}.seed-csp4 .hidden-lg{display:block!important}table.seed-csp4 .hidden-lg{display:table}tr.seed-csp4 .hidden-lg{display:table-row!important}th.seed-csp4 .hidden-lg,td.seed-csp4 .hidden-lg{display:table-cell!important}@media (max-width:767px){.seed-csp4 .hidden-lg.hidden-xs,tr.seed-csp4 .hidden-lg.hidden-xs,th.seed-csp4 .hidden-lg.hidden-xs,td.seed-csp4 .hidden-lg.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.seed-csp4 .hidden-lg.hidden-sm,tr.seed-csp4 .hidden-lg.hidden-sm,th.seed-csp4 .hidden-lg.hidden-sm,td.seed-csp4 .hidden-lg.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.seed-csp4 .hidden-lg.hidden-md,tr.seed-csp4 .hidden-lg.hidden-md,th.seed-csp4 .hidden-lg.hidden-md,td.seed-csp4 .hidden-lg.hidden-md{display:none!important}}@media (min-width:1200px){.seed-csp4 .hidden-lg,tr.seed-csp4 .hidden-lg,th.seed-csp4 .hidden-lg,td.seed-csp4 .hidden-lg{display:none!important}}.seed-csp4 .visible-print,tr.seed-csp4 .visible-print,th.seed-csp4 .visible-print,td.seed-csp4 .visible-print{display:none!important}@media print{.seed-csp4 .visible-print{display:block!important}table.seed-csp4 .visible-print{display:table}tr.seed-csp4 .visible-print{display:table-row!important}th.seed-csp4 .visible-print,td.seed-csp4 .visible-print{display:table-cell!important}.seed-csp4 .hidden-print,tr.seed-csp4 .hidden-print,th.seed-csp4 .hidden-print,td.seed-csp4 .hidden-print{display:none!important}}
|
themes/default/bootstrap/js/bootstrap.js
ADDED
@@ -0,0 +1,2006 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*!
|
2 |
+
* Bootstrap v3.0.3 (http://getbootstrap.com)
|
3 |
+
* Copyright 2013 Twitter, Inc.
|
4 |
+
* Licensed under http://www.apache.org/licenses/LICENSE-2.0
|
5 |
+
*/
|
6 |
+
|
7 |
+
if (typeof jQuery === "undefined") { throw new Error("Bootstrap requires jQuery") }
|
8 |
+
|
9 |
+
/* ========================================================================
|
10 |
+
* Bootstrap: transition.js v3.0.3
|
11 |
+
* http://getbootstrap.com/javascript/#transitions
|
12 |
+
* ========================================================================
|
13 |
+
* Copyright 2013 Twitter, Inc.
|
14 |
+
*
|
15 |
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
16 |
+
* you may not use this file except in compliance with the License.
|
17 |
+
* You may obtain a copy of the License at
|
18 |
+
*
|
19 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
20 |
+
*
|
21 |
+
* Unless required by applicable law or agreed to in writing, software
|
22 |
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
23 |
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
24 |
+
* See the License for the specific language governing permissions and
|
25 |
+
* limitations under the License.
|
26 |
+
* ======================================================================== */
|
27 |
+
|
28 |
+
|
29 |
+
+function ($) { "use strict";
|
30 |
+
|
31 |
+
// CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/)
|
32 |
+
// ============================================================
|
33 |
+
|
34 |
+
function transitionEnd() {
|
35 |
+
var el = document.createElement('bootstrap')
|
36 |
+
|
37 |
+
var transEndEventNames = {
|
38 |
+
'WebkitTransition' : 'webkitTransitionEnd'
|
39 |
+
, 'MozTransition' : 'transitionend'
|
40 |
+
, 'OTransition' : 'oTransitionEnd otransitionend'
|
41 |
+
, 'transition' : 'transitionend'
|
42 |
+
}
|
43 |
+
|
44 |
+
for (var name in transEndEventNames) {
|
45 |
+
if (el.style[name] !== undefined) {
|
46 |
+
return { end: transEndEventNames[name] }
|
47 |
+
}
|
48 |
+
}
|
49 |
+
}
|
50 |
+
|
51 |
+
// http://blog.alexmaccaw.com/css-transitions
|
52 |
+
$.fn.emulateTransitionEnd = function (duration) {
|
53 |
+
var called = false, $el = this
|
54 |
+
$(this).one($.support.transition.end, function () { called = true })
|
55 |
+
var callback = function () { if (!called) $($el).trigger($.support.transition.end) }
|
56 |
+
setTimeout(callback, duration)
|
57 |
+
return this
|
58 |
+
}
|
59 |
+
|
60 |
+
$(function () {
|
61 |
+
$.support.transition = transitionEnd()
|
62 |
+
})
|
63 |
+
|
64 |
+
}(jQuery);
|
65 |
+
|
66 |
+
/* ========================================================================
|
67 |
+
* Bootstrap: alert.js v3.0.3
|
68 |
+
* http://getbootstrap.com/javascript/#alerts
|
69 |
+
* ========================================================================
|
70 |
+
* Copyright 2013 Twitter, Inc.
|
71 |
+
*
|
72 |
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
73 |
+
* you may not use this file except in compliance with the License.
|
74 |
+
* You may obtain a copy of the License at
|
75 |
+
*
|
76 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
77 |
+
*
|
78 |
+
* Unless required by applicable law or agreed to in writing, software
|
79 |
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
80 |
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
81 |
+
* See the License for the specific language governing permissions and
|
82 |
+
* limitations under the License.
|
83 |
+
* ======================================================================== */
|
84 |
+
|
85 |
+
|
86 |
+
+function ($) { "use strict";
|
87 |
+
|
88 |
+
// ALERT CLASS DEFINITION
|
89 |
+
// ======================
|
90 |
+
|
91 |
+
var dismiss = '[data-dismiss="alert"]'
|
92 |
+
var Alert = function (el) {
|
93 |
+
$(el).on('click', dismiss, this.close)
|
94 |
+
}
|
95 |
+
|
96 |
+
Alert.prototype.close = function (e) {
|
97 |
+
var $this = $(this)
|
98 |
+
var selector = $this.attr('data-target')
|
99 |
+
|
100 |
+
if (!selector) {
|
101 |
+
selector = $this.attr('href')
|
102 |
+
selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7
|
103 |
+
}
|
104 |
+
|
105 |
+
var $parent = $(selector)
|
106 |
+
|
107 |
+
if (e) e.preventDefault()
|
108 |
+
|
109 |
+
if (!$parent.length) {
|
110 |
+
$parent = $this.hasClass('alert') ? $this : $this.parent()
|
111 |
+
}
|
112 |
+
|
113 |
+
$parent.trigger(e = $.Event('close.bs.alert'))
|
114 |
+
|
115 |
+
if (e.isDefaultPrevented()) return
|
116 |
+
|
117 |
+
$parent.removeClass('in')
|
118 |
+
|
119 |
+
function removeElement() {
|
120 |
+
$parent.trigger('closed.bs.alert').remove()
|
121 |
+
}
|
122 |
+
|
123 |
+
$.support.transition && $parent.hasClass('fade') ?
|
124 |
+
$parent
|
125 |
+
.one($.support.transition.end, removeElement)
|
126 |
+
.emulateTransitionEnd(150) :
|
127 |
+
removeElement()
|
128 |
+
}
|
129 |
+
|
130 |
+
|
131 |
+
// ALERT PLUGIN DEFINITION
|
132 |
+
// =======================
|
133 |
+
|
134 |
+
var old = $.fn.alert
|
135 |
+
|
136 |
+
$.fn.alert = function (option) {
|
137 |
+
return this.each(function () {
|
138 |
+
var $this = $(this)
|
139 |
+
var data = $this.data('bs.alert')
|
140 |
+
|
141 |
+
if (!data) $this.data('bs.alert', (data = new Alert(this)))
|
142 |
+
if (typeof option == 'string') data[option].call($this)
|
143 |
+
})
|
144 |
+
}
|
145 |
+
|
146 |
+
$.fn.alert.Constructor = Alert
|
147 |
+
|
148 |
+
|
149 |
+
// ALERT NO CONFLICT
|
150 |
+
// =================
|
151 |
+
|
152 |
+
$.fn.alert.noConflict = function () {
|
153 |
+
$.fn.alert = old
|
154 |
+
return this
|
155 |
+
}
|
156 |
+
|
157 |
+
|
158 |
+
// ALERT DATA-API
|
159 |
+
// ==============
|
160 |
+
|
161 |
+
$(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close)
|
162 |
+
|
163 |
+
}(jQuery);
|
164 |
+
|
165 |
+
/* ========================================================================
|
166 |
+
* Bootstrap: button.js v3.0.3
|
167 |
+
* http://getbootstrap.com/javascript/#buttons
|
168 |
+
* ========================================================================
|
169 |
+
* Copyright 2013 Twitter, Inc.
|
170 |
+
*
|
171 |
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
172 |
+
* you may not use this file except in compliance with the License.
|
173 |
+
* You may obtain a copy of the License at
|
174 |
+
*
|
175 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
176 |
+
*
|
177 |
+
* Unless required by applicable law or agreed to in writing, software
|
178 |
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
179 |
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
180 |
+
* See the License for the specific language governing permissions and
|
181 |
+
* limitations under the License.
|
182 |
+
* ======================================================================== */
|
183 |
+
|
184 |
+
|
185 |
+
+function ($) { "use strict";
|
186 |
+
|
187 |
+
// BUTTON PUBLIC CLASS DEFINITION
|
188 |
+
// ==============================
|
189 |
+
|
190 |
+
var Button = function (element, options) {
|
191 |
+
this.$element = $(element)
|
192 |
+
this.options = $.extend({}, Button.DEFAULTS, options)
|
193 |
+
}
|
194 |
+
|
195 |
+
Button.DEFAULTS = {
|
196 |
+
loadingText: 'loading...'
|
197 |
+
}
|
198 |
+
|
199 |
+
Button.prototype.setState = function (state) {
|
200 |
+
var d = 'disabled'
|
201 |
+
var $el = this.$element
|
202 |
+
var val = $el.is('input') ? 'val' : 'html'
|
203 |
+
var data = $el.data()
|
204 |
+
|
205 |
+
state = state + 'Text'
|
206 |
+
|
207 |
+
if (!data.resetText) $el.data('resetText', $el[val]())
|
208 |
+
|
209 |
+
$el[val](data[state] || this.options[state])
|
210 |
+
|
211 |
+
// push to event loop to allow forms to submit
|
212 |
+
setTimeout(function () {
|
213 |
+
state == 'loadingText' ?
|
214 |
+
$el.addClass(d).attr(d, d) :
|
215 |
+
$el.removeClass(d).removeAttr(d);
|
216 |
+
}, 0)
|
217 |
+
}
|
218 |
+
|
219 |
+
Button.prototype.toggle = function () {
|
220 |
+
var $parent = this.$element.closest('[data-toggle="buttons"]')
|
221 |
+
var changed = true
|
222 |
+
|
223 |
+
if ($parent.length) {
|
224 |
+
var $input = this.$element.find('input')
|
225 |
+
if ($input.prop('type') === 'radio') {
|
226 |
+
// see if clicking on current one
|
227 |
+
if ($input.prop('checked') && this.$element.hasClass('active'))
|
228 |
+
changed = false
|
229 |
+
else
|
230 |
+
$parent.find('.active').removeClass('active')
|
231 |
+
}
|
232 |
+
if (changed) $input.prop('checked', !this.$element.hasClass('active')).trigger('change')
|
233 |
+
}
|
234 |
+
|
235 |
+
if (changed) this.$element.toggleClass('active')
|
236 |
+
}
|
237 |
+
|
238 |
+
|
239 |
+
// BUTTON PLUGIN DEFINITION
|
240 |
+
// ========================
|
241 |
+
|
242 |
+
var old = $.fn.button
|
243 |
+
|
244 |
+
$.fn.button = function (option) {
|
245 |
+
return this.each(function () {
|
246 |
+
var $this = $(this)
|
247 |
+
var data = $this.data('bs.button')
|
248 |
+
var options = typeof option == 'object' && option
|
249 |
+
|
250 |
+
if (!data) $this.data('bs.button', (data = new Button(this, options)))
|
251 |
+
|
252 |
+
if (option == 'toggle') data.toggle()
|
253 |
+
else if (option) data.setState(option)
|
254 |
+
})
|
255 |
+
}
|
256 |
+
|
257 |
+
$.fn.button.Constructor = Button
|
258 |
+
|
259 |
+
|
260 |
+
// BUTTON NO CONFLICT
|
261 |
+
// ==================
|
262 |
+
|
263 |
+
$.fn.button.noConflict = function () {
|
264 |
+
$.fn.button = old
|
265 |
+
return this
|
266 |
+
}
|
267 |
+
|
268 |
+
|
269 |
+
// BUTTON DATA-API
|
270 |
+
// ===============
|
271 |
+
|
272 |
+
$(document).on('click.bs.button.data-api', '[data-toggle^=button]', function (e) {
|
273 |
+
var $btn = $(e.target)
|
274 |
+
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
|
275 |
+
$btn.button('toggle')
|
276 |
+
e.preventDefault()
|
277 |
+
})
|
278 |
+
|
279 |
+
}(jQuery);
|
280 |
+
|
281 |
+
/* ========================================================================
|
282 |
+
* Bootstrap: carousel.js v3.0.3
|
283 |
+
* http://getbootstrap.com/javascript/#carousel
|
284 |
+
* ========================================================================
|
285 |
+
* Copyright 2013 Twitter, Inc.
|
286 |
+
*
|
287 |
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
288 |
+
* you may not use this file except in compliance with the License.
|
289 |
+
* You may obtain a copy of the License at
|
290 |
+
*
|
291 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
292 |
+
*
|
293 |
+
* Unless required by applicable law or agreed to in writing, software
|
294 |
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
295 |
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
296 |
+
* See the License for the specific language governing permissions and
|
297 |
+
* limitations under the License.
|
298 |
+
* ======================================================================== */
|
299 |
+
|
300 |
+
|
301 |
+
+function ($) { "use strict";
|
302 |
+
|
303 |
+
// CAROUSEL CLASS DEFINITION
|
304 |
+
// =========================
|
305 |
+
|
306 |
+
var Carousel = function (element, options) {
|
307 |
+
this.$element = $(element)
|
308 |
+
this.$indicators = this.$element.find('.carousel-indicators')
|
309 |
+
this.options = options
|
310 |
+
this.paused =
|
311 |
+
this.sliding =
|
312 |
+
this.interval =
|
313 |
+
this.$active =
|
314 |
+
this.$items = null
|
315 |
+
|
316 |
+
this.options.pause == 'hover' && this.$element
|
317 |
+
.on('mouseenter', $.proxy(this.pause, this))
|
318 |
+
.on('mouseleave', $.proxy(this.cycle, this))
|
319 |
+
}
|
320 |
+
|
321 |
+
Carousel.DEFAULTS = {
|
322 |
+
interval: 5000
|
323 |
+
, pause: 'hover'
|
324 |
+
, wrap: true
|
325 |
+
}
|
326 |
+
|
327 |
+
Carousel.prototype.cycle = function (e) {
|
328 |
+
e || (this.paused = false)
|
329 |
+
|
330 |
+
this.interval && clearInterval(this.interval)
|
331 |
+
|
332 |
+
this.options.interval
|
333 |
+
&& !this.paused
|
334 |
+
&& (this.interval = setInterval($.proxy(this.next, this), this.options.interval))
|
335 |
+
|
336 |
+
return this
|
337 |
+
}
|
338 |
+
|
339 |
+
Carousel.prototype.getActiveIndex = function () {
|
340 |
+
this.$active = this.$element.find('.item.active')
|
341 |
+
this.$items = this.$active.parent().children()
|
342 |
+
|
343 |
+
return this.$items.index(this.$active)
|
344 |
+
}
|
345 |
+
|
346 |
+
Carousel.prototype.to = function (pos) {
|
347 |
+
var that = this
|
348 |
+
var activeIndex = this.getActiveIndex()
|
349 |
+
|
350 |
+
if (pos > (this.$items.length - 1) || pos < 0) return
|
351 |
+
|
352 |
+
if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) })
|
353 |
+
if (activeIndex == pos) return this.pause().cycle()
|
354 |
+
|
355 |
+
return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos]))
|
356 |
+
}
|
357 |
+
|
358 |
+
Carousel.prototype.pause = function (e) {
|
359 |
+
e || (this.paused = true)
|
360 |
+
|
361 |
+
if (this.$element.find('.next, .prev').length && $.support.transition.end) {
|
362 |
+
this.$element.trigger($.support.transition.end)
|
363 |
+
this.cycle(true)
|
364 |
+
}
|
365 |
+
|
366 |
+
this.interval = clearInterval(this.interval)
|
367 |
+
|
368 |
+
return this
|
369 |
+
}
|
370 |
+
|
371 |
+
Carousel.prototype.next = function () {
|
372 |
+
if (this.sliding) return
|
373 |
+
return this.slide('next')
|
374 |
+
}
|
375 |
+
|
376 |
+
Carousel.prototype.prev = function () {
|
377 |
+
if (this.sliding) return
|
378 |
+
return this.slide('prev')
|
379 |
+
}
|
380 |
+
|
381 |
+
Carousel.prototype.slide = function (type, next) {
|
382 |
+
var $active = this.$element.find('.item.active')
|
383 |
+
var $next = next || $active[type]()
|
384 |
+
var isCycling = this.interval
|
385 |
+
var direction = type == 'next' ? 'left' : 'right'
|
386 |
+
var fallback = type == 'next' ? 'first' : 'last'
|
387 |
+
var that = this
|
388 |
+
|
389 |
+
if (!$next.length) {
|
390 |
+
if (!this.options.wrap) return
|
391 |
+
$next = this.$element.find('.item')[fallback]()
|
392 |
+
}
|
393 |
+
|
394 |
+
this.sliding = true
|
395 |
+
|
396 |
+
isCycling && this.pause()
|
397 |
+
|
398 |
+
var e = $.Event('slide.bs.carousel', { relatedTarget: $next[0], direction: direction })
|
399 |
+
|
400 |
+
if ($next.hasClass('active')) return
|
401 |
+
|
402 |
+
if (this.$indicators.length) {
|
403 |
+
this.$indicators.find('.active').removeClass('active')
|
404 |
+
this.$element.one('slid.bs.carousel', function () {
|
405 |
+
var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()])
|
406 |
+
$nextIndicator && $nextIndicator.addClass('active')
|
407 |
+
})
|
408 |
+
}
|
409 |
+
|
410 |
+
if ($.support.transition && this.$element.hasClass('slide')) {
|
411 |
+
this.$element.trigger(e)
|
412 |
+
if (e.isDefaultPrevented()) return
|
413 |
+
$next.addClass(type)
|
414 |
+
$next[0].offsetWidth // force reflow
|
415 |
+
$active.addClass(direction)
|
416 |
+
$next.addClass(direction)
|
417 |
+
$active
|
418 |
+
.one($.support.transition.end, function () {
|
419 |
+
$next.removeClass([type, direction].join(' ')).addClass('active')
|
420 |
+
$active.removeClass(['active', direction].join(' '))
|
421 |
+
that.sliding = false
|
422 |
+
setTimeout(function () { that.$element.trigger('slid.bs.carousel') }, 0)
|
423 |
+
})
|
424 |
+
.emulateTransitionEnd(600)
|
425 |
+
} else {
|
426 |
+
this.$element.trigger(e)
|
427 |
+
if (e.isDefaultPrevented()) return
|
428 |
+
$active.removeClass('active')
|
429 |
+
$next.addClass('active')
|
430 |
+
this.sliding = false
|
431 |
+
this.$element.trigger('slid.bs.carousel')
|
432 |
+
}
|
433 |
+
|
434 |
+
isCycling && this.cycle()
|
435 |
+
|
436 |
+
return this
|
437 |
+
}
|
438 |
+
|
439 |
+
|
440 |
+
// CAROUSEL PLUGIN DEFINITION
|
441 |
+
// ==========================
|
442 |
+
|
443 |
+
var old = $.fn.carousel
|
444 |
+
|
445 |
+
$.fn.carousel = function (option) {
|
446 |
+
return this.each(function () {
|
447 |
+
var $this = $(this)
|
448 |
+
var data = $this.data('bs.carousel')
|
449 |
+
var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option)
|
450 |
+
var action = typeof option == 'string' ? option : options.slide
|
451 |
+
|
452 |
+
if (!data) $this.data('bs.carousel', (data = new Carousel(this, options)))
|
453 |
+
if (typeof option == 'number') data.to(option)
|
454 |
+
else if (action) data[action]()
|
455 |
+
else if (options.interval) data.pause().cycle()
|
456 |
+
})
|
457 |
+
}
|
458 |
+
|
459 |
+
$.fn.carousel.Constructor = Carousel
|
460 |
+
|
461 |
+
|
462 |
+
// CAROUSEL NO CONFLICT
|
463 |
+
// ====================
|
464 |
+
|
465 |
+
$.fn.carousel.noConflict = function () {
|
466 |
+
$.fn.carousel = old
|
467 |
+
return this
|
468 |
+
}
|
469 |
+
|
470 |
+
|
471 |
+
// CAROUSEL DATA-API
|
472 |
+
// =================
|
473 |
+
|
474 |
+
$(document).on('click.bs.carousel.data-api', '[data-slide], [data-slide-to]', function (e) {
|
475 |
+
var $this = $(this), href
|
476 |
+
var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
|
477 |
+
var options = $.extend({}, $target.data(), $this.data())
|
478 |
+
var slideIndex = $this.attr('data-slide-to')
|
479 |
+
if (slideIndex) options.interval = false
|
480 |
+
|
481 |
+
$target.carousel(options)
|
482 |
+
|
483 |
+
if (slideIndex = $this.attr('data-slide-to')) {
|
484 |
+
$target.data('bs.carousel').to(slideIndex)
|
485 |
+
}
|
486 |
+
|
487 |
+
e.preventDefault()
|
488 |
+
})
|
489 |
+
|
490 |
+
$(window).on('load', function () {
|
491 |
+
$('[data-ride="carousel"]').each(function () {
|
492 |
+
var $carousel = $(this)
|
493 |
+
$carousel.carousel($carousel.data())
|
494 |
+
})
|
495 |
+
})
|
496 |
+
|
497 |
+
}(jQuery);
|
498 |
+
|
499 |
+
/* ========================================================================
|
500 |
+
* Bootstrap: collapse.js v3.0.3
|
501 |
+
* http://getbootstrap.com/javascript/#collapse
|
502 |
+
* ========================================================================
|
503 |
+
* Copyright 2013 Twitter, Inc.
|
504 |
+
*
|
505 |
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
506 |
+
* you may not use this file except in compliance with the License.
|
507 |
+
* You may obtain a copy of the License at
|
508 |
+
*
|
509 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
510 |
+
*
|
511 |
+
* Unless required by applicable law or agreed to in writing, software
|
512 |
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
513 |
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
514 |
+
* See the License for the specific language governing permissions and
|
515 |
+
* limitations under the License.
|
516 |
+
* ======================================================================== */
|
517 |
+
|
518 |
+
|
519 |
+
+function ($) { "use strict";
|
520 |
+
|
521 |
+
// COLLAPSE PUBLIC CLASS DEFINITION
|
522 |
+
// ================================
|
523 |
+
|
524 |
+
var Collapse = function (element, options) {
|
525 |
+
this.$element = $(element)
|
526 |
+
this.options = $.extend({}, Collapse.DEFAULTS, options)
|
527 |
+
this.transitioning = null
|
528 |
+
|
529 |
+
if (this.options.parent) this.$parent = $(this.options.parent)
|
530 |
+
if (this.options.toggle) this.toggle()
|
531 |
+
}
|
532 |
+
|
533 |
+
Collapse.DEFAULTS = {
|
534 |
+
toggle: true
|
535 |
+
}
|
536 |
+
|
537 |
+
Collapse.prototype.dimension = function () {
|
538 |
+
var hasWidth = this.$element.hasClass('width')
|
539 |
+
return hasWidth ? 'width' : 'height'
|
540 |
+
}
|
541 |
+
|
542 |
+
Collapse.prototype.show = function () {
|
543 |
+
if (this.transitioning || this.$element.hasClass('in')) return
|
544 |
+
|
545 |
+
var startEvent = $.Event('show.bs.collapse')
|
546 |
+
this.$element.trigger(startEvent)
|
547 |
+
if (startEvent.isDefaultPrevented()) return
|
548 |
+
|
549 |
+
var actives = this.$parent && this.$parent.find('> .panel > .in')
|
550 |
+
|
551 |
+
if (actives && actives.length) {
|
552 |
+
var hasData = actives.data('bs.collapse')
|
553 |
+
if (hasData && hasData.transitioning) return
|
554 |
+
actives.collapse('hide')
|
555 |
+
hasData || actives.data('bs.collapse', null)
|
556 |
+
}
|
557 |
+
|
558 |
+
var dimension = this.dimension()
|
559 |
+
|
560 |
+
this.$element
|
561 |
+
.removeClass('collapse')
|
562 |
+
.addClass('collapsing')
|
563 |
+
[dimension](0)
|
564 |
+
|
565 |
+
this.transitioning = 1
|
566 |
+
|
567 |
+
var complete = function () {
|
568 |
+
this.$element
|
569 |
+
.removeClass('collapsing')
|
570 |
+
.addClass('in')
|
571 |
+
[dimension]('auto')
|
572 |
+
this.transitioning = 0
|
573 |
+
this.$element.trigger('shown.bs.collapse')
|
574 |
+
}
|
575 |
+
|
576 |
+
if (!$.support.transition) return complete.call(this)
|
577 |
+
|
578 |
+
var scrollSize = $.camelCase(['scroll', dimension].join('-'))
|
579 |
+
|
580 |
+
this.$element
|
581 |
+
.one($.support.transition.end, $.proxy(complete, this))
|
582 |
+
.emulateTransitionEnd(350)
|
583 |
+
[dimension](this.$element[0][scrollSize])
|
584 |
+
}
|
585 |
+
|
586 |
+
Collapse.prototype.hide = function () {
|
587 |
+
if (this.transitioning || !this.$element.hasClass('in')) return
|
588 |
+
|
589 |
+
var startEvent = $.Event('hide.bs.collapse')
|
590 |
+
this.$element.trigger(startEvent)
|
591 |
+
if (startEvent.isDefaultPrevented()) return
|
592 |
+
|
593 |
+
var dimension = this.dimension()
|
594 |
+
|
595 |
+
this.$element
|
596 |
+
[dimension](this.$element[dimension]())
|
597 |
+
[0].offsetHeight
|
598 |
+
|
599 |
+
this.$element
|
600 |
+
.addClass('collapsing')
|
601 |
+
.removeClass('collapse')
|
602 |
+
.removeClass('in')
|
603 |
+
|
604 |
+
this.transitioning = 1
|
605 |
+
|
606 |
+
var complete = function () {
|
607 |
+
this.transitioning = 0
|
608 |
+
this.$element
|
609 |
+
.trigger('hidden.bs.collapse')
|
610 |
+
.removeClass('collapsing')
|
611 |
+
.addClass('collapse')
|
612 |
+
}
|
613 |
+
|
614 |
+
if (!$.support.transition) return complete.call(this)
|
615 |
+
|
616 |
+
this.$element
|
617 |
+
[dimension](0)
|
618 |
+
.one($.support.transition.end, $.proxy(complete, this))
|
619 |
+
.emulateTransitionEnd(350)
|
620 |
+
}
|
621 |
+
|
622 |
+
Collapse.prototype.toggle = function () {
|
623 |
+
this[this.$element.hasClass('in') ? 'hide' : 'show']()
|
624 |
+
}
|
625 |
+
|
626 |
+
|
627 |
+
// COLLAPSE PLUGIN DEFINITION
|
628 |
+
// ==========================
|
629 |
+
|
630 |
+
var old = $.fn.collapse
|
631 |
+
|
632 |
+
$.fn.collapse = function (option) {
|
633 |
+
return this.each(function () {
|
634 |
+
var $this = $(this)
|
635 |
+
var data = $this.data('bs.collapse')
|
636 |
+
var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option)
|
637 |
+
|
638 |
+
if (!data) $this.data('bs.collapse', (data = new Collapse(this, options)))
|
639 |
+
if (typeof option == 'string') data[option]()
|
640 |
+
})
|
641 |
+
}
|
642 |
+
|
643 |
+
$.fn.collapse.Constructor = Collapse
|
644 |
+
|
645 |
+
|
646 |
+
// COLLAPSE NO CONFLICT
|
647 |
+
// ====================
|
648 |
+
|
649 |
+
$.fn.collapse.noConflict = function () {
|
650 |
+
$.fn.collapse = old
|
651 |
+
return this
|
652 |
+
}
|
653 |
+
|
654 |
+
|
655 |
+
// COLLAPSE DATA-API
|
656 |
+
// =================
|
657 |
+
|
658 |
+
$(document).on('click.bs.collapse.data-api', '[data-toggle=collapse]', function (e) {
|
659 |
+
var $this = $(this), href
|
660 |
+
var target = $this.attr('data-target')
|
661 |
+
|| e.preventDefault()
|
662 |
+
|| (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
|
663 |
+
var $target = $(target)
|
664 |
+
var data = $target.data('bs.collapse')
|
665 |
+
var option = data ? 'toggle' : $this.data()
|
666 |
+
var parent = $this.attr('data-parent')
|
667 |
+
var $parent = parent && $(parent)
|
668 |
+
|
669 |
+
if (!data || !data.transitioning) {
|
670 |
+
if ($parent) $parent.find('[data-toggle=collapse][data-parent="' + parent + '"]').not($this).addClass('collapsed')
|
671 |
+
$this[$target.hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
|
672 |
+
}
|
673 |
+
|
674 |
+
$target.collapse(option)
|
675 |
+
})
|
676 |
+
|
677 |
+
}(jQuery);
|
678 |
+
|
679 |
+
/* ========================================================================
|
680 |
+
* Bootstrap: dropdown.js v3.0.3
|
681 |
+
* http://getbootstrap.com/javascript/#dropdowns
|
682 |
+
* ========================================================================
|
683 |
+
* Copyright 2013 Twitter, Inc.
|
684 |
+
*
|
685 |
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
686 |
+
* you may not use this file except in compliance with the License.
|
687 |
+
* You may obtain a copy of the License at
|
688 |
+
*
|
689 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
690 |
+
*
|
691 |
+
* Unless required by applicable law or agreed to in writing, software
|
692 |
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
693 |
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
694 |
+
* See the License for the specific language governing permissions and
|
695 |
+
* limitations under the License.
|
696 |
+
* ======================================================================== */
|
697 |
+
|
698 |
+
|
699 |
+
+function ($) { "use strict";
|
700 |
+
|
701 |
+
// DROPDOWN CLASS DEFINITION
|
702 |
+
// =========================
|
703 |
+
|
704 |
+
var backdrop = '.dropdown-backdrop'
|
705 |
+
var toggle = '[data-toggle=dropdown]'
|
706 |
+
var Dropdown = function (element) {
|
707 |
+
$(element).on('click.bs.dropdown', this.toggle)
|
708 |
+
}
|
709 |
+
|
710 |
+
Dropdown.prototype.toggle = function (e) {
|
711 |
+
var $this = $(this)
|
712 |
+
|
713 |
+
if ($this.is('.disabled, :disabled')) return
|
714 |
+
|
715 |
+
var $parent = getParent($this)
|
716 |
+
var isActive = $parent.hasClass('open')
|
717 |
+
|
718 |
+
clearMenus()
|
719 |
+
|
720 |
+
if (!isActive) {
|
721 |
+
if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {
|
722 |
+
// if mobile we use a backdrop because click events don't delegate
|
723 |
+
$('<div class="dropdown-backdrop"/>').insertAfter($(this)).on('click', clearMenus)
|
724 |
+
}
|
725 |
+
|
726 |
+
$parent.trigger(e = $.Event('show.bs.dropdown'))
|
727 |
+
|
728 |
+
if (e.isDefaultPrevented()) return
|
729 |
+
|
730 |
+
$parent
|
731 |
+
.toggleClass('open')
|
732 |
+
.trigger('shown.bs.dropdown')
|
733 |
+
|
734 |
+
$this.focus()
|
735 |
+
}
|
736 |
+
|
737 |
+
return false
|
738 |
+
}
|
739 |
+
|
740 |
+
Dropdown.prototype.keydown = function (e) {
|
741 |
+
if (!/(38|40|27)/.test(e.keyCode)) return
|
742 |
+
|
743 |
+
var $this = $(this)
|
744 |
+
|
745 |
+
e.preventDefault()
|
746 |
+
e.stopPropagation()
|
747 |
+
|
748 |
+
if ($this.is('.disabled, :disabled')) return
|
749 |
+
|
750 |
+
var $parent = getParent($this)
|
751 |
+
var isActive = $parent.hasClass('open')
|
752 |
+
|
753 |
+
if (!isActive || (isActive && e.keyCode == 27)) {
|
754 |
+
if (e.which == 27) $parent.find(toggle).focus()
|
755 |
+
return $this.click()
|
756 |
+
}
|
757 |
+
|
758 |
+
var $items = $('[role=menu] li:not(.divider):visible a', $parent)
|
759 |
+
|
760 |
+
if (!$items.length) return
|
761 |
+
|
762 |
+
var index = $items.index($items.filter(':focus'))
|
763 |
+
|
764 |
+
if (e.keyCode == 38 && index > 0) index-- // up
|
765 |
+
if (e.keyCode == 40 && index < $items.length - 1) index++ // down
|
766 |
+
if (!~index) index=0
|
767 |
+
|
768 |
+
$items.eq(index).focus()
|
769 |
+
}
|
770 |
+
|
771 |
+
function clearMenus() {
|
772 |
+
$(backdrop).remove()
|
773 |
+
$(toggle).each(function (e) {
|
774 |
+
var $parent = getParent($(this))
|
775 |
+
if (!$parent.hasClass('open')) return
|
776 |
+
$parent.trigger(e = $.Event('hide.bs.dropdown'))
|
777 |
+
if (e.isDefaultPrevented()) return
|
778 |
+
$parent.removeClass('open').trigger('hidden.bs.dropdown')
|
779 |
+
})
|
780 |
+
}
|
781 |
+
|
782 |
+
function getParent($this) {
|
783 |
+
var selector = $this.attr('data-target')
|
784 |
+
|
785 |
+
if (!selector) {
|
786 |
+
selector = $this.attr('href')
|
787 |
+
selector = selector && /#/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
|
788 |
+
}
|
789 |
+
|
790 |
+
var $parent = selector && $(selector)
|
791 |
+
|
792 |
+
return $parent && $parent.length ? $parent : $this.parent()
|
793 |
+
}
|
794 |
+
|
795 |
+
|
796 |
+
// DROPDOWN PLUGIN DEFINITION
|
797 |
+
// ==========================
|
798 |
+
|
799 |
+
var old = $.fn.dropdown
|
800 |
+
|
801 |
+
$.fn.dropdown = function (option) {
|
802 |
+
return this.each(function () {
|
803 |
+
var $this = $(this)
|
804 |
+
var data = $this.data('bs.dropdown')
|
805 |
+
|
806 |
+
if (!data) $this.data('bs.dropdown', (data = new Dropdown(this)))
|
807 |
+
if (typeof option == 'string') data[option].call($this)
|
808 |
+
})
|
809 |
+
}
|
810 |
+
|
811 |
+
$.fn.dropdown.Constructor = Dropdown
|
812 |
+
|
813 |
+
|
814 |
+
// DROPDOWN NO CONFLICT
|
815 |
+
// ====================
|
816 |
+
|
817 |
+
$.fn.dropdown.noConflict = function () {
|
818 |
+
$.fn.dropdown = old
|
819 |
+
return this
|
820 |
+
}
|
821 |
+
|
822 |
+
|
823 |
+
// APPLY TO STANDARD DROPDOWN ELEMENTS
|
824 |
+
// ===================================
|
825 |
+
|
826 |
+
$(document)
|
827 |
+
.on('click.bs.dropdown.data-api', clearMenus)
|
828 |
+
.on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
|
829 |
+
.on('click.bs.dropdown.data-api' , toggle, Dropdown.prototype.toggle)
|
830 |
+
.on('keydown.bs.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)
|
831 |
+
|
832 |
+
}(jQuery);
|
833 |
+
|
834 |
+
/* ========================================================================
|
835 |
+
* Bootstrap: modal.js v3.0.3
|
836 |
+
* http://getbootstrap.com/javascript/#modals
|
837 |
+
* ========================================================================
|
838 |
+
* Copyright 2013 Twitter, Inc.
|
839 |
+
*
|
840 |
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
841 |
+
* you may not use this file except in compliance with the License.
|
842 |
+
* You may obtain a copy of the License at
|
843 |
+
*
|
844 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
845 |
+
*
|
846 |
+
* Unless required by applicable law or agreed to in writing, software
|
847 |
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
848 |
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
849 |
+
* See the License for the specific language governing permissions and
|
850 |
+
* limitations under the License.
|
851 |
+
* ======================================================================== */
|
852 |
+
|
853 |
+
|
854 |
+
+function ($) { "use strict";
|
855 |
+
|
856 |
+
// MODAL CLASS DEFINITION
|
857 |
+
// ======================
|
858 |
+
|
859 |
+
var Modal = function (element, options) {
|
860 |
+
this.options = options
|
861 |
+
this.$element = $(element)
|
862 |
+
this.$backdrop =
|
863 |
+
this.isShown = null
|
864 |
+
|
865 |
+
if (this.options.remote) this.$element.load(this.options.remote)
|
866 |
+
}
|
867 |
+
|
868 |
+
Modal.DEFAULTS = {
|
869 |
+
backdrop: true
|
870 |
+
, keyboard: true
|
871 |
+
, show: true
|
872 |
+
}
|
873 |
+
|
874 |
+
Modal.prototype.toggle = function (_relatedTarget) {
|
875 |
+
return this[!this.isShown ? 'show' : 'hide'](_relatedTarget)
|
876 |
+
}
|
877 |
+
|
878 |
+
Modal.prototype.show = function (_relatedTarget) {
|
879 |
+
var that = this
|
880 |
+
var e = $.Event('show.bs.modal', { relatedTarget: _relatedTarget })
|
881 |
+
|
882 |
+
this.$element.trigger(e)
|
883 |
+
|
884 |
+
if (this.isShown || e.isDefaultPrevented()) return
|
885 |
+
|
886 |
+
this.isShown = true
|
887 |
+
|
888 |
+
this.escape()
|
889 |
+
|
890 |
+
this.$element.on('click.dismiss.modal', '[data-dismiss="modal"]', $.proxy(this.hide, this))
|
891 |
+
|
892 |
+
this.backdrop(function () {
|
893 |
+
var transition = $.support.transition && that.$element.hasClass('fade')
|
894 |
+
|
895 |
+
if (!that.$element.parent().length) {
|
896 |
+
that.$element.appendTo(document.body) // don't move modals dom position
|
897 |
+
}
|
898 |
+
|
899 |
+
that.$element.show()
|
900 |
+
|
901 |
+
if (transition) {
|
902 |
+
that.$element[0].offsetWidth // force reflow
|
903 |
+
}
|
904 |
+
|
905 |
+
that.$element
|
906 |
+
.addClass('in')
|
907 |
+
.attr('aria-hidden', false)
|
908 |
+
|
909 |
+
that.enforceFocus()
|
910 |
+
|
911 |
+
var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget })
|
912 |
+
|
913 |
+
transition ?
|
914 |
+
that.$element.find('.modal-dialog') // wait for modal to slide in
|
915 |
+
.one($.support.transition.end, function () {
|
916 |
+
that.$element.focus().trigger(e)
|
917 |
+
})
|
918 |
+
.emulateTransitionEnd(300) :
|
919 |
+
that.$element.focus().trigger(e)
|
920 |
+
})
|
921 |
+
}
|
922 |
+
|
923 |
+
Modal.prototype.hide = function (e) {
|
924 |
+
if (e) e.preventDefault()
|
925 |
+
|
926 |
+
e = $.Event('hide.bs.modal')
|
927 |
+
|
928 |
+
this.$element.trigger(e)
|
929 |
+
|
930 |
+
if (!this.isShown || e.isDefaultPrevented()) return
|
931 |
+
|
932 |
+
this.isShown = false
|
933 |
+
|
934 |
+
this.escape()
|
935 |
+
|
936 |
+
$(document).off('focusin.bs.modal')
|
937 |
+
|
938 |
+
this.$element
|
939 |
+
.removeClass('in')
|
940 |
+
.attr('aria-hidden', true)
|
941 |
+
.off('click.dismiss.modal')
|
942 |
+
|
943 |
+
$.support.transition && this.$element.hasClass('fade') ?
|
944 |
+
this.$element
|
945 |
+
.one($.support.transition.end, $.proxy(this.hideModal, this))
|
946 |
+
.emulateTransitionEnd(300) :
|
947 |
+
this.hideModal()
|
948 |
+
}
|
949 |
+
|
950 |
+
Modal.prototype.enforceFocus = function () {
|
951 |
+
$(document)
|
952 |
+
.off('focusin.bs.modal') // guard against infinite focus loop
|
953 |
+
.on('focusin.bs.modal', $.proxy(function (e) {
|
954 |
+
if (this.$element[0] !== e.target && !this.$element.has(e.target).length) {
|
955 |
+
this.$element.focus()
|
956 |
+
}
|
957 |
+
}, this))
|
958 |
+
}
|
959 |
+
|
960 |
+
Modal.prototype.escape = function () {
|
961 |
+
if (this.isShown && this.options.keyboard) {
|
962 |
+
this.$element.on('keyup.dismiss.bs.modal', $.proxy(function (e) {
|
963 |
+
e.which == 27 && this.hide()
|
964 |
+
}, this))
|
965 |
+
} else if (!this.isShown) {
|
966 |
+
this.$element.off('keyup.dismiss.bs.modal')
|
967 |
+
}
|
968 |
+
}
|
969 |
+
|
970 |
+
Modal.prototype.hideModal = function () {
|
971 |
+
var that = this
|
972 |
+
this.$element.hide()
|
973 |
+
this.backdrop(function () {
|
974 |
+
that.removeBackdrop()
|
975 |
+
that.$element.trigger('hidden.bs.modal')
|
976 |
+
})
|
977 |
+
}
|
978 |
+
|
979 |
+
Modal.prototype.removeBackdrop = function () {
|
980 |
+
this.$backdrop && this.$backdrop.remove()
|
981 |
+
this.$backdrop = null
|
982 |
+
}
|
983 |
+
|
984 |
+
Modal.prototype.backdrop = function (callback) {
|
985 |
+
var that = this
|
986 |
+
var animate = this.$element.hasClass('fade') ? 'fade' : ''
|
987 |
+
|
988 |
+
if (this.isShown && this.options.backdrop) {
|
989 |
+
var doAnimate = $.support.transition && animate
|
990 |
+
|
991 |
+
this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
|
992 |
+
.appendTo(document.body)
|
993 |
+
|
994 |
+
this.$element.on('click.dismiss.modal', $.proxy(function (e) {
|
995 |
+
if (e.target !== e.currentTarget) return
|
996 |
+
this.options.backdrop == 'static'
|
997 |
+
? this.$element[0].focus.call(this.$element[0])
|
998 |
+
: this.hide.call(this)
|
999 |
+
}, this))
|
1000 |
+
|
1001 |
+
if (doAnimate) this.$backdrop[0].offsetWidth // force reflow
|
1002 |
+
|
1003 |
+
this.$backdrop.addClass('in')
|
1004 |
+
|
1005 |
+
if (!callback) return
|
1006 |
+
|
1007 |
+
doAnimate ?
|
1008 |
+
this.$backdrop
|
1009 |
+
.one($.support.transition.end, callback)
|
1010 |
+
.emulateTransitionEnd(150) :
|
1011 |
+
callback()
|
1012 |
+
|
1013 |
+
} else if (!this.isShown && this.$backdrop) {
|
1014 |
+
this.$backdrop.removeClass('in')
|
1015 |
+
|
1016 |
+
$.support.transition && this.$element.hasClass('fade')?
|
1017 |
+
this.$backdrop
|
1018 |
+
.one($.support.transition.end, callback)
|
1019 |
+
.emulateTransitionEnd(150) :
|
1020 |
+
callback()
|
1021 |
+
|
1022 |
+
} else if (callback) {
|
1023 |
+
callback()
|
1024 |
+
}
|
1025 |
+
}
|
1026 |
+
|
1027 |
+
|
1028 |
+
// MODAL PLUGIN DEFINITION
|
1029 |
+
// =======================
|
1030 |
+
|
1031 |
+
var old = $.fn.modal
|
1032 |
+
|
1033 |
+
$.fn.modal = function (option, _relatedTarget) {
|
1034 |
+
return this.each(function () {
|
1035 |
+
var $this = $(this)
|
1036 |
+
var data = $this.data('bs.modal')
|
1037 |
+
var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option)
|
1038 |
+
|
1039 |
+
if (!data) $this.data('bs.modal', (data = new Modal(this, options)))
|
1040 |
+
if (typeof option == 'string') data[option](_relatedTarget)
|
1041 |
+
else if (options.show) data.show(_relatedTarget)
|
1042 |
+
})
|
1043 |
+
}
|
1044 |
+
|
1045 |
+
$.fn.modal.Constructor = Modal
|
1046 |
+
|
1047 |
+
|
1048 |
+
// MODAL NO CONFLICT
|
1049 |
+
// =================
|
1050 |
+
|
1051 |
+
$.fn.modal.noConflict = function () {
|
1052 |
+
$.fn.modal = old
|
1053 |
+
return this
|
1054 |
+
}
|
1055 |
+
|
1056 |
+
|
1057 |
+
// MODAL DATA-API
|
1058 |
+
// ==============
|
1059 |
+
|
1060 |
+
$(document).on('click.bs.modal.data-api', '[data-toggle="modal"]', function (e) {
|
1061 |
+
var $this = $(this)
|
1062 |
+
var href = $this.attr('href')
|
1063 |
+
var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7
|
1064 |
+
var option = $target.data('modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())
|
1065 |
+
|
1066 |
+
e.preventDefault()
|
1067 |
+
|
1068 |
+
$target
|
1069 |
+
.modal(option, this)
|
1070 |
+
.one('hide', function () {
|
1071 |
+
$this.is(':visible') && $this.focus()
|
1072 |
+
})
|
1073 |
+
})
|
1074 |
+
|
1075 |
+
$(document)
|
1076 |
+
.on('show.bs.modal', '.modal', function () { $(document.body).addClass('modal-open') })
|
1077 |
+
.on('hidden.bs.modal', '.modal', function () { $(document.body).removeClass('modal-open') })
|
1078 |
+
|
1079 |
+
}(jQuery);
|
1080 |
+
|
1081 |
+
/* ========================================================================
|
1082 |
+
* Bootstrap: tooltip.js v3.0.3
|
1083 |
+
* http://getbootstrap.com/javascript/#tooltip
|
1084 |
+
* Inspired by the original jQuery.tipsy by Jason Frame
|
1085 |
+
* ========================================================================
|
1086 |
+
* Copyright 2013 Twitter, Inc.
|
1087 |
+
*
|
1088 |
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
1089 |
+
* you may not use this file except in compliance with the License.
|
1090 |
+
* You may obtain a copy of the License at
|
1091 |
+
*
|
1092 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
1093 |
+
*
|
1094 |
+
* Unless required by applicable law or agreed to in writing, software
|
1095 |
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
1096 |
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
1097 |
+
* See the License for the specific language governing permissions and
|
1098 |
+
* limitations under the License.
|
1099 |
+
* ======================================================================== */
|
1100 |
+
|
1101 |
+
|
1102 |
+
+function ($) { "use strict";
|
1103 |
+
|
1104 |
+
// TOOLTIP PUBLIC CLASS DEFINITION
|
1105 |
+
// ===============================
|
1106 |
+
|
1107 |
+
var Tooltip = function (element, options) {
|
1108 |
+
this.type =
|
1109 |
+
this.options =
|
1110 |
+
this.enabled =
|
1111 |
+
this.timeout =
|
1112 |
+
this.hoverState =
|
1113 |
+
this.$element = null
|
1114 |
+
|
1115 |
+
this.init('tooltip', element, options)
|
1116 |
+
}
|
1117 |
+
|
1118 |
+
Tooltip.DEFAULTS = {
|
1119 |
+
animation: true
|
1120 |
+
, placement: 'top'
|
1121 |
+
, selector: false
|
1122 |
+
, template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
|
1123 |
+
, trigger: 'hover focus'
|
1124 |
+
, title: ''
|
1125 |
+
, delay: 0
|
1126 |
+
, html: false
|
1127 |
+
, container: false
|
1128 |
+
}
|
1129 |
+
|
1130 |
+
Tooltip.prototype.init = function (type, element, options) {
|
1131 |
+
this.enabled = true
|
1132 |
+
this.type = type
|
1133 |
+
this.$element = $(element)
|
1134 |
+
this.options = this.getOptions(options)
|
1135 |
+
|
1136 |
+
var triggers = this.options.trigger.split(' ')
|
1137 |
+
|
1138 |
+
for (var i = triggers.length; i--;) {
|
1139 |
+
var trigger = triggers[i]
|
1140 |
+
|
1141 |
+
if (trigger == 'click') {
|
1142 |
+
this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this))
|
1143 |
+
} else if (trigger != 'manual') {
|
1144 |
+
var eventIn = trigger == 'hover' ? 'mouseenter' : 'focus'
|
1145 |
+
var eventOut = trigger == 'hover' ? 'mouseleave' : 'blur'
|
1146 |
+
|
1147 |
+
this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this))
|
1148 |
+
this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this))
|
1149 |
+
}
|
1150 |
+
}
|
1151 |
+
|
1152 |
+
this.options.selector ?
|
1153 |
+
(this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) :
|
1154 |
+
this.fixTitle()
|
1155 |
+
}
|
1156 |
+
|
1157 |
+
Tooltip.prototype.getDefaults = function () {
|
1158 |
+
return Tooltip.DEFAULTS
|
1159 |
+
}
|
1160 |
+
|
1161 |
+
Tooltip.prototype.getOptions = function (options) {
|
1162 |
+
options = $.extend({}, this.getDefaults(), this.$element.data(), options)
|
1163 |
+
|
1164 |
+
if (options.delay && typeof options.delay == 'number') {
|
1165 |
+
options.delay = {
|
1166 |
+
show: options.delay
|
1167 |
+
, hide: options.delay
|
1168 |
+
}
|
1169 |
+
}
|
1170 |
+
|
1171 |
+
return options
|
1172 |
+
}
|
1173 |
+
|
1174 |
+
Tooltip.prototype.getDelegateOptions = function () {
|
1175 |
+
var options = {}
|
1176 |
+
var defaults = this.getDefaults()
|
1177 |
+
|
1178 |
+
this._options && $.each(this._options, function (key, value) {
|
1179 |
+
if (defaults[key] != value) options[key] = value
|
1180 |
+
})
|
1181 |
+
|
1182 |
+
return options
|
1183 |
+
}
|
1184 |
+
|
1185 |
+
Tooltip.prototype.enter = function (obj) {
|
1186 |
+
var self = obj instanceof this.constructor ?
|
1187 |
+
obj : $(obj.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type)
|
1188 |
+
|
1189 |
+
clearTimeout(self.timeout)
|
1190 |
+
|
1191 |
+
self.hoverState = 'in'
|
1192 |
+
|
1193 |
+
if (!self.options.delay || !self.options.delay.show) return self.show()
|
1194 |
+
|
1195 |
+
self.timeout = setTimeout(function () {
|
1196 |
+
if (self.hoverState == 'in') self.show()
|
1197 |
+
}, self.options.delay.show)
|
1198 |
+
}
|
1199 |
+
|
1200 |
+
Tooltip.prototype.leave = function (obj) {
|
1201 |
+
var self = obj instanceof this.constructor ?
|
1202 |
+
obj : $(obj.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type)
|
1203 |
+
|
1204 |
+
clearTimeout(self.timeout)
|
1205 |
+
|
1206 |
+
self.hoverState = 'out'
|
1207 |
+
|
1208 |
+
if (!self.options.delay || !self.options.delay.hide) return self.hide()
|
1209 |
+
|
1210 |
+
self.timeout = setTimeout(function () {
|
1211 |
+
if (self.hoverState == 'out') self.hide()
|
1212 |
+
}, self.options.delay.hide)
|
1213 |
+
}
|
1214 |
+
|
1215 |
+
Tooltip.prototype.show = function () {
|
1216 |
+
var e = $.Event('show.bs.'+ this.type)
|
1217 |
+
|
1218 |
+
if (this.hasContent() && this.enabled) {
|
1219 |
+
this.$element.trigger(e)
|
1220 |
+
|
1221 |
+
if (e.isDefaultPrevented()) return
|
1222 |
+
|
1223 |
+
var $tip = this.tip()
|
1224 |
+
|
1225 |
+
this.setContent()
|
1226 |
+
|
1227 |
+
if (this.options.animation) $tip.addClass('fade')
|
1228 |
+
|
1229 |
+
var placement = typeof this.options.placement == 'function' ?
|
1230 |
+
this.options.placement.call(this, $tip[0], this.$element[0]) :
|
1231 |
+
this.options.placement
|
1232 |
+
|
1233 |
+
var autoToken = /\s?auto?\s?/i
|
1234 |
+
var autoPlace = autoToken.test(placement)
|
1235 |
+
if (autoPlace) placement = placement.replace(autoToken, '') || 'top'
|
1236 |
+
|
1237 |
+
$tip
|
1238 |
+
.detach()
|
1239 |
+
.css({ top: 0, left: 0, display: 'block' })
|
1240 |
+
.addClass(placement)
|
1241 |
+
|
1242 |
+
this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element)
|
1243 |
+
|
1244 |
+
var pos = this.getPosition()
|
1245 |
+
var actualWidth = $tip[0].offsetWidth
|
1246 |
+
var actualHeight = $tip[0].offsetHeight
|
1247 |
+
|
1248 |
+
if (autoPlace) {
|
1249 |
+
var $parent = this.$element.parent()
|
1250 |
+
|
1251 |
+
var orgPlacement = placement
|
1252 |
+
var docScroll = document.documentElement.scrollTop || document.body.scrollTop
|
1253 |
+
var parentWidth = this.options.container == 'body' ? window.innerWidth : $parent.outerWidth()
|
1254 |
+
var parentHeight = this.options.container == 'body' ? window.innerHeight : $parent.outerHeight()
|
1255 |
+
var parentLeft = this.options.container == 'body' ? 0 : $parent.offset().left
|
1256 |
+
|
1257 |
+
placement = placement == 'bottom' && pos.top + pos.height + actualHeight - docScroll > parentHeight ? 'top' :
|
1258 |
+
placement == 'top' && pos.top - docScroll - actualHeight < 0 ? 'bottom' :
|
1259 |
+
placement == 'right' && pos.right + actualWidth > parentWidth ? 'left' :
|
1260 |
+
placement == 'left' && pos.left - actualWidth < parentLeft ? 'right' :
|
1261 |
+
placement
|
1262 |
+
|
1263 |
+
$tip
|
1264 |
+
.removeClass(orgPlacement)
|
1265 |
+
.addClass(placement)
|
1266 |
+
}
|
1267 |
+
|
1268 |
+
var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight)
|
1269 |
+
|
1270 |
+
this.applyPlacement(calculatedOffset, placement)
|
1271 |
+
this.$element.trigger('shown.bs.' + this.type)
|
1272 |
+
}
|
1273 |
+
}
|
1274 |
+
|
1275 |
+
Tooltip.prototype.applyPlacement = function(offset, placement) {
|
1276 |
+
var replace
|
1277 |
+
var $tip = this.tip()
|
1278 |
+
var width = $tip[0].offsetWidth
|
1279 |
+
var height = $tip[0].offsetHeight
|
1280 |
+
|
1281 |
+
// manually read margins because getBoundingClientRect includes difference
|
1282 |
+
var marginTop = parseInt($tip.css('margin-top'), 10)
|
1283 |
+
var marginLeft = parseInt($tip.css('margin-left'), 10)
|
1284 |
+
|
1285 |
+
// we must check for NaN for ie 8/9
|
1286 |
+
if (isNaN(marginTop)) marginTop = 0
|
1287 |
+
if (isNaN(marginLeft)) marginLeft = 0
|
1288 |
+
|
1289 |
+
offset.top = offset.top + marginTop
|
1290 |
+
offset.left = offset.left + marginLeft
|
1291 |
+
|
1292 |
+
$tip
|
1293 |
+
.offset(offset)
|
1294 |
+
.addClass('in')
|
1295 |
+
|
1296 |
+
// check to see if placing tip in new offset caused the tip to resize itself
|
1297 |
+
var actualWidth = $tip[0].offsetWidth
|
1298 |
+
var actualHeight = $tip[0].offsetHeight
|
1299 |
+
|
1300 |
+
if (placement == 'top' && actualHeight != height) {
|
1301 |
+
replace = true
|
1302 |
+
offset.top = offset.top + height - actualHeight
|
1303 |
+
}
|
1304 |
+
|
1305 |
+
if (/bottom|top/.test(placement)) {
|
1306 |
+
var delta = 0
|
1307 |
+
|
1308 |
+
if (offset.left < 0) {
|
1309 |
+
delta = offset.left * -2
|
1310 |
+
offset.left = 0
|
1311 |
+
|
1312 |
+
$tip.offset(offset)
|
1313 |
+
|
1314 |
+
actualWidth = $tip[0].offsetWidth
|
1315 |
+
actualHeight = $tip[0].offsetHeight
|
1316 |
+
}
|
1317 |
+
|
1318 |
+
this.replaceArrow(delta - width + actualWidth, actualWidth, 'left')
|
1319 |
+
} else {
|
1320 |
+
this.replaceArrow(actualHeight - height, actualHeight, 'top')
|
1321 |
+
}
|
1322 |
+
|
1323 |
+
if (replace) $tip.offset(offset)
|
1324 |
+
}
|
1325 |
+
|
1326 |
+
Tooltip.prototype.replaceArrow = function(delta, dimension, position) {
|
1327 |
+
this.arrow().css(position, delta ? (50 * (1 - delta / dimension) + "%") : '')
|
1328 |
+
}
|
1329 |
+
|
1330 |
+
Tooltip.prototype.setContent = function () {
|
1331 |
+
var $tip = this.tip()
|
1332 |
+
var title = this.getTitle()
|
1333 |
+
|
1334 |
+
$tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title)
|
1335 |
+
$tip.removeClass('fade in top bottom left right')
|
1336 |
+
}
|
1337 |
+
|
1338 |
+
Tooltip.prototype.hide = function () {
|
1339 |
+
var that = this
|
1340 |
+
var $tip = this.tip()
|
1341 |
+
var e = $.Event('hide.bs.' + this.type)
|
1342 |
+
|
1343 |
+
function complete() {
|
1344 |
+
if (that.hoverState != 'in') $tip.detach()
|
1345 |
+
}
|
1346 |
+
|
1347 |
+
this.$element.trigger(e)
|
1348 |
+
|
1349 |
+
if (e.isDefaultPrevented()) return
|
1350 |
+
|
1351 |
+
$tip.removeClass('in')
|
1352 |
+
|
1353 |
+
$.support.transition && this.$tip.hasClass('fade') ?
|
1354 |
+
$tip
|
1355 |
+
.one($.support.transition.end, complete)
|
1356 |
+
.emulateTransitionEnd(150) :
|
1357 |
+
complete()
|
1358 |
+
|
1359 |
+
this.$element.trigger('hidden.bs.' + this.type)
|
1360 |
+
|
1361 |
+
return this
|
1362 |
+
}
|
1363 |
+
|
1364 |
+
Tooltip.prototype.fixTitle = function () {
|
1365 |
+
var $e = this.$element
|
1366 |
+
if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') {
|
1367 |
+
$e.attr('data-original-title', $e.attr('title') || '').attr('title', '')
|
1368 |
+
}
|
1369 |
+
}
|
1370 |
+
|
1371 |
+
Tooltip.prototype.hasContent = function () {
|
1372 |
+
return this.getTitle()
|
1373 |
+
}
|
1374 |
+
|
1375 |
+
Tooltip.prototype.getPosition = function () {
|
1376 |
+
var el = this.$element[0]
|
1377 |
+
return $.extend({}, (typeof el.getBoundingClientRect == 'function') ? el.getBoundingClientRect() : {
|
1378 |
+
width: el.offsetWidth
|
1379 |
+
, height: el.offsetHeight
|
1380 |
+
}, this.$element.offset())
|
1381 |
+
}
|
1382 |
+
|
1383 |
+
Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) {
|
1384 |
+
return placement == 'bottom' ? { top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2 } :
|
1385 |
+
placement == 'top' ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 } :
|
1386 |
+
placement == 'left' ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } :
|
1387 |
+
/* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width }
|
1388 |
+
}
|
1389 |
+
|
1390 |
+
Tooltip.prototype.getTitle = function () {
|
1391 |
+
var title
|
1392 |
+
var $e = this.$element
|
1393 |
+
var o = this.options
|
1394 |
+
|
1395 |
+
title = $e.attr('data-original-title')
|
1396 |
+
|| (typeof o.title == 'function' ? o.title.call($e[0]) : o.title)
|
1397 |
+
|
1398 |
+
return title
|
1399 |
+
}
|
1400 |
+
|
1401 |
+
Tooltip.prototype.tip = function () {
|
1402 |
+
return this.$tip = this.$tip || $(this.options.template)
|
1403 |
+
}
|
1404 |
+
|
1405 |
+
Tooltip.prototype.arrow = function () {
|
1406 |
+
return this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow')
|
1407 |
+
}
|
1408 |
+
|
1409 |
+
Tooltip.prototype.validate = function () {
|
1410 |
+
if (!this.$element[0].parentNode) {
|
1411 |
+
this.hide()
|
1412 |
+
this.$element = null
|
1413 |
+
this.options = null
|
1414 |
+
}
|
1415 |
+
}
|
1416 |
+
|
1417 |
+
Tooltip.prototype.enable = function () {
|
1418 |
+
this.enabled = true
|
1419 |
+
}
|
1420 |
+
|
1421 |
+
Tooltip.prototype.disable = function () {
|
1422 |
+
this.enabled = false
|
1423 |
+
}
|
1424 |
+
|
1425 |
+
Tooltip.prototype.toggleEnabled = function () {
|
1426 |
+
this.enabled = !this.enabled
|
1427 |
+
}
|
1428 |
+
|
1429 |
+
Tooltip.prototype.toggle = function (e) {
|
1430 |
+
var self = e ? $(e.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type) : this
|
1431 |
+
self.tip().hasClass('in') ? self.leave(self) : self.enter(self)
|
1432 |
+
}
|
1433 |
+
|
1434 |
+
Tooltip.prototype.destroy = function () {
|
1435 |
+
this.hide().$element.off('.' + this.type).removeData('bs.' + this.type)
|
1436 |
+
}
|
1437 |
+
|
1438 |
+
|
1439 |
+
// TOOLTIP PLUGIN DEFINITION
|
1440 |
+
// =========================
|
1441 |
+
|
1442 |
+
var old = $.fn.tooltip
|
1443 |
+
|
1444 |
+
$.fn.tooltip = function (option) {
|
1445 |
+
return this.each(function () {
|
1446 |
+
var $this = $(this)
|
1447 |
+
var data = $this.data('bs.tooltip')
|
1448 |
+
var options = typeof option == 'object' && option
|
1449 |
+
|
1450 |
+
if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options)))
|
1451 |
+
if (typeof option == 'string') data[option]()
|
1452 |
+
})
|
1453 |
+
}
|
1454 |
+
|
1455 |
+
$.fn.tooltip.Constructor = Tooltip
|
1456 |
+
|
1457 |
+
|
1458 |
+
// TOOLTIP NO CONFLICT
|
1459 |
+
// ===================
|
1460 |
+
|
1461 |
+
$.fn.tooltip.noConflict = function () {
|
1462 |
+
$.fn.tooltip = old
|
1463 |
+
return this
|
1464 |
+
}
|
1465 |
+
|
1466 |
+
}(jQuery);
|
1467 |
+
|
1468 |
+
/* ========================================================================
|
1469 |
+
* Bootstrap: popover.js v3.0.3
|
1470 |
+
* http://getbootstrap.com/javascript/#popovers
|
1471 |
+
* ========================================================================
|
1472 |
+
* Copyright 2013 Twitter, Inc.
|
1473 |
+
*
|
1474 |
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
1475 |
+
* you may not use this file except in compliance with the License.
|
1476 |
+
* You may obtain a copy of the License at
|
1477 |
+
*
|
1478 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
1479 |
+
*
|
1480 |
+
* Unless required by applicable law or agreed to in writing, software
|
1481 |
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
1482 |
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
1483 |
+
* See the License for the specific language governing permissions and
|
1484 |
+
* limitations under the License.
|
1485 |
+
* ======================================================================== */
|
1486 |
+
|
1487 |
+
|
1488 |
+
+function ($) { "use strict";
|
1489 |
+
|
1490 |
+
// POPOVER PUBLIC CLASS DEFINITION
|
1491 |
+
// ===============================
|
1492 |
+
|
1493 |
+
var Popover = function (element, options) {
|
1494 |
+
this.init('popover', element, options)
|
1495 |
+
}
|
1496 |
+
|
1497 |
+
if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js')
|
1498 |
+
|
1499 |
+
Popover.DEFAULTS = $.extend({} , $.fn.tooltip.Constructor.DEFAULTS, {
|
1500 |
+
placement: 'right'
|
1501 |
+
, trigger: 'click'
|
1502 |
+
, content: ''
|
1503 |
+
, template: '<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'
|
1504 |
+
})
|
1505 |
+
|
1506 |
+
|
1507 |
+
// NOTE: POPOVER EXTENDS tooltip.js
|
1508 |
+
// ================================
|
1509 |
+
|
1510 |
+
Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype)
|
1511 |
+
|
1512 |
+
Popover.prototype.constructor = Popover
|
1513 |
+
|
1514 |
+
Popover.prototype.getDefaults = function () {
|
1515 |
+
return Popover.DEFAULTS
|
1516 |
+
}
|
1517 |
+
|
1518 |
+
Popover.prototype.setContent = function () {
|
1519 |
+
var $tip = this.tip()
|
1520 |
+
var title = this.getTitle()
|
1521 |
+
var content = this.getContent()
|
1522 |
+
|
1523 |
+
$tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)
|
1524 |
+
$tip.find('.popover-content')[this.options.html ? 'html' : 'text'](content)
|
1525 |
+
|
1526 |
+
$tip.removeClass('fade top bottom left right in')
|
1527 |
+
|
1528 |
+
// IE8 doesn't accept hiding via the `:empty` pseudo selector, we have to do
|
1529 |
+
// this manually by checking the contents.
|
1530 |
+
if (!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide()
|
1531 |
+
}
|
1532 |
+
|
1533 |
+
Popover.prototype.hasContent = function () {
|
1534 |
+
return this.getTitle() || this.getContent()
|
1535 |
+
}
|
1536 |
+
|
1537 |
+
Popover.prototype.getContent = function () {
|
1538 |
+
var $e = this.$element
|
1539 |
+
var o = this.options
|
1540 |
+
|
1541 |
+
return $e.attr('data-content')
|
1542 |
+
|| (typeof o.content == 'function' ?
|
1543 |
+
o.content.call($e[0]) :
|
1544 |
+
o.content)
|
1545 |
+
}
|
1546 |
+
|
1547 |
+
Popover.prototype.arrow = function () {
|
1548 |
+
return this.$arrow = this.$arrow || this.tip().find('.arrow')
|
1549 |
+
}
|
1550 |
+
|
1551 |
+
Popover.prototype.tip = function () {
|
1552 |
+
if (!this.$tip) this.$tip = $(this.options.template)
|
1553 |
+
return this.$tip
|
1554 |
+
}
|
1555 |
+
|
1556 |
+
|
1557 |
+
// POPOVER PLUGIN DEFINITION
|
1558 |
+
// =========================
|
1559 |
+
|
1560 |
+
var old = $.fn.popover
|
1561 |
+
|
1562 |
+
$.fn.popover = function (option) {
|
1563 |
+
return this.each(function () {
|
1564 |
+
var $this = $(this)
|
1565 |
+
var data = $this.data('bs.popover')
|
1566 |
+
var options = typeof option == 'object' && option
|
1567 |
+
|
1568 |
+
if (!data) $this.data('bs.popover', (data = new Popover(this, options)))
|
1569 |
+
if (typeof option == 'string') data[option]()
|
1570 |
+
})
|
1571 |
+
}
|
1572 |
+
|
1573 |
+
$.fn.popover.Constructor = Popover
|
1574 |
+
|
1575 |
+
|
1576 |
+
// POPOVER NO CONFLICT
|
1577 |
+
// ===================
|
1578 |
+
|
1579 |
+
$.fn.popover.noConflict = function () {
|
1580 |
+
$.fn.popover = old
|
1581 |
+
return this
|
1582 |
+
}
|
1583 |
+
|
1584 |
+
}(jQuery);
|
1585 |
+
|
1586 |
+
/* ========================================================================
|
1587 |
+
* Bootstrap: scrollspy.js v3.0.3
|
1588 |
+
* http://getbootstrap.com/javascript/#scrollspy
|
1589 |
+
* ========================================================================
|
1590 |
+
* Copyright 2013 Twitter, Inc.
|
1591 |
+
*
|
1592 |
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
1593 |
+
* you may not use this file except in compliance with the License.
|
1594 |
+
* You may obtain a copy of the License at
|
1595 |
+
*
|
1596 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
1597 |
+
*
|
1598 |
+
* Unless required by applicable law or agreed to in writing, software
|
1599 |
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
1600 |
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
1601 |
+
* See the License for the specific language governing permissions and
|
1602 |
+
* limitations under the License.
|
1603 |
+
* ======================================================================== */
|
1604 |
+
|
1605 |
+
|
1606 |
+
+function ($) { "use strict";
|
1607 |
+
|
1608 |
+
// SCROLLSPY CLASS DEFINITION
|
1609 |
+
// ==========================
|
1610 |
+
|
1611 |
+
function ScrollSpy(element, options) {
|
1612 |
+
var href
|
1613 |
+
var process = $.proxy(this.process, this)
|
1614 |
+
|
1615 |
+
this.$element = $(element).is('body') ? $(window) : $(element)
|
1616 |
+
this.$body = $('body')
|
1617 |
+
this.$scrollElement = this.$element.on('scroll.bs.scroll-spy.data-api', process)
|
1618 |
+
this.options = $.extend({}, ScrollSpy.DEFAULTS, options)
|
1619 |
+
this.selector = (this.options.target
|
1620 |
+
|| ((href = $(element).attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
|
1621 |
+
|| '') + ' .nav li > a'
|
1622 |
+
this.offsets = $([])
|
1623 |
+
this.targets = $([])
|
1624 |
+
this.activeTarget = null
|
1625 |
+
|
1626 |
+
this.refresh()
|
1627 |
+
this.process()
|
1628 |
+
}
|
1629 |
+
|
1630 |
+
ScrollSpy.DEFAULTS = {
|
1631 |
+
offset: 10
|
1632 |
+
}
|
1633 |
+
|
1634 |
+
ScrollSpy.prototype.refresh = function () {
|
1635 |
+
var offsetMethod = this.$element[0] == window ? 'offset' : 'position'
|
1636 |
+
|
1637 |
+
this.offsets = $([])
|
1638 |
+
this.targets = $([])
|
1639 |
+
|
1640 |
+
var self = this
|
1641 |
+
var $targets = this.$body
|
1642 |
+
.find(this.selector)
|
1643 |
+
.map(function () {
|
1644 |
+
var $el = $(this)
|
1645 |
+
var href = $el.data('target') || $el.attr('href')
|
1646 |
+
var $href = /^#\w/.test(href) && $(href)
|
1647 |
+
|
1648 |
+
return ($href
|
1649 |
+
&& $href.length
|
1650 |
+
&& [[ $href[offsetMethod]().top + (!$.isWindow(self.$scrollElement.get(0)) && self.$scrollElement.scrollTop()), href ]]) || null
|
1651 |
+
})
|
1652 |
+
.sort(function (a, b) { return a[0] - b[0] })
|
1653 |
+
.each(function () {
|
1654 |
+
self.offsets.push(this[0])
|
1655 |
+
self.targets.push(this[1])
|
1656 |
+
})
|
1657 |
+
}
|
1658 |
+
|
1659 |
+
ScrollSpy.prototype.process = function () {
|
1660 |
+
var scrollTop = this.$scrollElement.scrollTop() + this.options.offset
|
1661 |
+
var scrollHeight = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight
|
1662 |
+
var maxScroll = scrollHeight - this.$scrollElement.height()
|
1663 |
+
var offsets = this.offsets
|
1664 |
+
var targets = this.targets
|
1665 |
+
var activeTarget = this.activeTarget
|
1666 |
+
var i
|
1667 |
+
|
1668 |
+
if (scrollTop >= maxScroll) {
|
1669 |
+
return activeTarget != (i = targets.last()[0]) && this.activate(i)
|
1670 |
+
}
|
1671 |
+
|
1672 |
+
for (i = offsets.length; i--;) {
|
1673 |
+
activeTarget != targets[i]
|
1674 |
+
&& scrollTop >= offsets[i]
|
1675 |
+
&& (!offsets[i + 1] || scrollTop <= offsets[i + 1])
|
1676 |
+
&& this.activate( targets[i] )
|
1677 |
+
}
|
1678 |
+
}
|
1679 |
+
|
1680 |
+
ScrollSpy.prototype.activate = function (target) {
|
1681 |
+
this.activeTarget = target
|
1682 |
+
|
1683 |
+
$(this.selector)
|
1684 |
+
.parents('.active')
|
1685 |
+
.removeClass('active')
|
1686 |
+
|
1687 |
+
var selector = this.selector
|
1688 |
+
+ '[data-target="' + target + '"],'
|
1689 |
+
+ this.selector + '[href="' + target + '"]'
|
1690 |
+
|
1691 |
+
var active = $(selector)
|
1692 |
+
.parents('li')
|
1693 |
+
.addClass('active')
|
1694 |
+
|
1695 |
+
if (active.parent('.dropdown-menu').length) {
|
1696 |
+
active = active
|
1697 |
+
.closest('li.dropdown')
|
1698 |
+
.addClass('active')
|
1699 |
+
}
|
1700 |
+
|
1701 |
+
active.trigger('activate.bs.scrollspy')
|
1702 |
+
}
|
1703 |
+
|
1704 |
+
|
1705 |
+
// SCROLLSPY PLUGIN DEFINITION
|
1706 |
+
// ===========================
|
1707 |
+
|
1708 |
+
var old = $.fn.scrollspy
|
1709 |
+
|
1710 |
+
$.fn.scrollspy = function (option) {
|
1711 |
+
return this.each(function () {
|
1712 |
+
var $this = $(this)
|
1713 |
+
var data = $this.data('bs.scrollspy')
|
1714 |
+
var options = typeof option == 'object' && option
|
1715 |
+
|
1716 |
+
if (!data) $this.data('bs.scrollspy', (data = new ScrollSpy(this, options)))
|
1717 |
+
if (typeof option == 'string') data[option]()
|
1718 |
+
})
|
1719 |
+
}
|
1720 |
+
|
1721 |
+
$.fn.scrollspy.Constructor = ScrollSpy
|
1722 |
+
|
1723 |
+
|
1724 |
+
// SCROLLSPY NO CONFLICT
|
1725 |
+
// =====================
|
1726 |
+
|
1727 |
+
$.fn.scrollspy.noConflict = function () {
|
1728 |
+
$.fn.scrollspy = old
|
1729 |
+
return this
|
1730 |
+
}
|
1731 |
+
|
1732 |
+
|
1733 |
+
// SCROLLSPY DATA-API
|
1734 |
+
// ==================
|
1735 |
+
|
1736 |
+
$(window).on('load', function () {
|
1737 |
+
$('[data-spy="scroll"]').each(function () {
|
1738 |
+
var $spy = $(this)
|
1739 |
+
$spy.scrollspy($spy.data())
|
1740 |
+
})
|
1741 |
+
})
|
1742 |
+
|
1743 |
+
}(jQuery);
|
1744 |
+
|
1745 |
+
/* ========================================================================
|
1746 |
+
* Bootstrap: tab.js v3.0.3
|
1747 |
+
* http://getbootstrap.com/javascript/#tabs
|
1748 |
+
* ========================================================================
|
1749 |
+
* Copyright 2013 Twitter, Inc.
|
1750 |
+
*
|
1751 |
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
1752 |
+
* you may not use this file except in compliance with the License.
|
1753 |
+
* You may obtain a copy of the License at
|
1754 |
+
*
|
1755 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
1756 |
+
*
|
1757 |
+
* Unless required by applicable law or agreed to in writing, software
|
1758 |
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
1759 |
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
1760 |
+
* See the License for the specific language governing permissions and
|
1761 |
+
* limitations under the License.
|
1762 |
+
* ======================================================================== */
|
1763 |
+
|
1764 |
+
|
1765 |
+
+function ($) { "use strict";
|
1766 |
+
|
1767 |
+
// TAB CLASS DEFINITION
|
1768 |
+
// ====================
|
1769 |
+
|
1770 |
+
var Tab = function (element) {
|
1771 |
+
this.element = $(element)
|
1772 |
+
}
|
1773 |
+
|
1774 |
+
Tab.prototype.show = function () {
|
1775 |
+
var $this = this.element
|
1776 |
+
var $ul = $this.closest('ul:not(.dropdown-menu)')
|
1777 |
+
var selector = $this.data('target')
|
1778 |
+
|
1779 |
+
if (!selector) {
|
1780 |
+
selector = $this.attr('href')
|
1781 |
+
selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
|
1782 |
+
}
|
1783 |
+
|
1784 |
+
if ($this.parent('li').hasClass('active')) return
|
1785 |
+
|
1786 |
+
var previous = $ul.find('.active:last a')[0]
|
1787 |
+
var e = $.Event('show.bs.tab', {
|
1788 |
+
relatedTarget: previous
|
1789 |
+
})
|
1790 |
+
|
1791 |
+
$this.trigger(e)
|
1792 |
+
|
1793 |
+
if (e.isDefaultPrevented()) return
|
1794 |
+
|
1795 |
+
var $target = $(selector)
|
1796 |
+
|
1797 |
+
this.activate($this.parent('li'), $ul)
|
1798 |
+
this.activate($target, $target.parent(), function () {
|
1799 |
+
$this.trigger({
|
1800 |
+
type: 'shown.bs.tab'
|
1801 |
+
, relatedTarget: previous
|
1802 |
+
})
|
1803 |
+
})
|
1804 |
+
}
|
1805 |
+
|
1806 |
+
Tab.prototype.activate = function (element, container, callback) {
|
1807 |
+
var $active = container.find('> .active')
|
1808 |
+
var transition = callback
|
1809 |
+
&& $.support.transition
|
1810 |
+
&& $active.hasClass('fade')
|
1811 |
+
|
1812 |
+
function next() {
|
1813 |
+
$active
|
1814 |
+
.removeClass('active')
|
1815 |
+
.find('> .dropdown-menu > .active')
|
1816 |
+
.removeClass('active')
|
1817 |
+
|
1818 |
+
element.addClass('active')
|
1819 |
+
|
1820 |
+
if (transition) {
|
1821 |
+
element[0].offsetWidth // reflow for transition
|
1822 |
+
element.addClass('in')
|
1823 |
+
} else {
|
1824 |
+
element.removeClass('fade')
|
1825 |
+
}
|
1826 |
+
|
1827 |
+
if (element.parent('.dropdown-menu')) {
|
1828 |
+
element.closest('li.dropdown').addClass('active')
|
1829 |
+
}
|
1830 |
+
|
1831 |
+
callback && callback()
|
1832 |
+
}
|
1833 |
+
|
1834 |
+
transition ?
|
1835 |
+
$active
|
1836 |
+
.one($.support.transition.end, next)
|
1837 |
+
.emulateTransitionEnd(150) :
|
1838 |
+
next()
|
1839 |
+
|
1840 |
+
$active.removeClass('in')
|
1841 |
+
}
|
1842 |
+
|
1843 |
+
|
1844 |
+
// TAB PLUGIN DEFINITION
|
1845 |
+
// =====================
|
1846 |
+
|
1847 |
+
var old = $.fn.tab
|
1848 |
+
|
1849 |
+
$.fn.tab = function ( option ) {
|
1850 |
+
return this.each(function () {
|
1851 |
+
var $this = $(this)
|
1852 |
+
var data = $this.data('bs.tab')
|
1853 |
+
|
1854 |
+
if (!data) $this.data('bs.tab', (data = new Tab(this)))
|
1855 |
+
if (typeof option == 'string') data[option]()
|
1856 |
+
})
|
1857 |
+
}
|
1858 |
+
|
1859 |
+
$.fn.tab.Constructor = Tab
|
1860 |
+
|
1861 |
+
|
1862 |
+
// TAB NO CONFLICT
|
1863 |
+
// ===============
|
1864 |
+
|
1865 |
+
$.fn.tab.noConflict = function () {
|
1866 |
+
$.fn.tab = old
|
1867 |
+
return this
|
1868 |
+
}
|
1869 |
+
|
1870 |
+
|
1871 |
+
// TAB DATA-API
|
1872 |
+
// ============
|
1873 |
+
|
1874 |
+
$(document).on('click.bs.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) {
|
1875 |
+
e.preventDefault()
|
1876 |
+
$(this).tab('show')
|
1877 |
+
})
|
1878 |
+
|
1879 |
+
}(jQuery);
|
1880 |
+
|
1881 |
+
/* ========================================================================
|
1882 |
+
* Bootstrap: affix.js v3.0.3
|
1883 |
+
* http://getbootstrap.com/javascript/#affix
|
1884 |
+
* ========================================================================
|
1885 |
+
* Copyright 2013 Twitter, Inc.
|
1886 |
+
*
|
1887 |
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
1888 |
+
* you may not use this file except in compliance with the License.
|
1889 |
+
* You may obtain a copy of the License at
|
1890 |
+
*
|
1891 |
+
* http://www.apache.org/licenses/LICENSE-2.0
|
1892 |
+
*
|
1893 |
+
* Unless required by applicable law or agreed to in writing, software
|
1894 |
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
1895 |
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
1896 |
+
* See the License for the specific language governing permissions and
|
1897 |
+
* limitations under the License.
|
1898 |
+
* ======================================================================== */
|
1899 |
+
|
1900 |
+
|
1901 |
+
+function ($) { "use strict";
|
1902 |
+
|
1903 |
+
// AFFIX CLASS DEFINITION
|
1904 |
+
// ======================
|
1905 |
+
|
1906 |
+
var Affix = function (element, options) {
|
1907 |
+
this.options = $.extend({}, Affix.DEFAULTS, options)
|
1908 |
+
this.$window = $(window)
|
1909 |
+
.on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this))
|
1910 |
+
.on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this))
|
1911 |
+
|
1912 |
+
this.$element = $(element)
|
1913 |
+
this.affixed =
|
1914 |
+
this.unpin = null
|
1915 |
+
|
1916 |
+
this.checkPosition()
|
1917 |
+
}
|
1918 |
+
|
1919 |
+
Affix.RESET = 'affix affix-top affix-bottom'
|
1920 |
+
|
1921 |
+
Affix.DEFAULTS = {
|
1922 |
+
offset: 0
|
1923 |
+
}
|
1924 |
+
|
1925 |
+
Affix.prototype.checkPositionWithEventLoop = function () {
|
1926 |
+
setTimeout($.proxy(this.checkPosition, this), 1)
|
1927 |
+
}
|
1928 |
+
|
1929 |
+
Affix.prototype.checkPosition = function () {
|
1930 |
+
if (!this.$element.is(':visible')) return
|
1931 |
+
|
1932 |
+
var scrollHeight = $(document).height()
|
1933 |
+
var scrollTop = this.$window.scrollTop()
|
1934 |
+
var position = this.$element.offset()
|
1935 |
+
var offset = this.options.offset
|
1936 |
+
var offsetTop = offset.top
|
1937 |
+
var offsetBottom = offset.bottom
|
1938 |
+
|
1939 |
+
if (typeof offset != 'object') offsetBottom = offsetTop = offset
|
1940 |
+
if (typeof offsetTop == 'function') offsetTop = offset.top()
|
1941 |
+
if (typeof offsetBottom == 'function') offsetBottom = offset.bottom()
|
1942 |
+
|
1943 |
+
var affix = this.unpin != null && (scrollTop + this.unpin <= position.top) ? false :
|
1944 |
+
offsetBottom != null && (position.top + this.$element.height() >= scrollHeight - offsetBottom) ? 'bottom' :
|
1945 |
+
offsetTop != null && (scrollTop <= offsetTop) ? 'top' : false
|
1946 |
+
|
1947 |
+
if (this.affixed === affix) return
|
1948 |
+
if (this.unpin) this.$element.css('top', '')
|
1949 |
+
|
1950 |
+
this.affixed = affix
|
1951 |
+
this.unpin = affix == 'bottom' ? position.top - scrollTop : null
|
1952 |
+
|
1953 |
+
this.$element.removeClass(Affix.RESET).addClass('affix' + (affix ? '-' + affix : ''))
|
1954 |
+
|
1955 |
+
if (affix == 'bottom') {
|
1956 |
+
this.$element.offset({ top: document.body.offsetHeight - offsetBottom - this.$element.height() })
|
1957 |
+
}
|
1958 |
+
}
|
1959 |
+
|
1960 |
+
|
1961 |
+
// AFFIX PLUGIN DEFINITION
|
1962 |
+
// =======================
|
1963 |
+
|
1964 |
+
var old = $.fn.affix
|
1965 |
+
|
1966 |
+
$.fn.affix = function (option) {
|
1967 |
+
return this.each(function () {
|
1968 |
+
var $this = $(this)
|
1969 |
+
var data = $this.data('bs.affix')
|
1970 |
+
var options = typeof option == 'object' && option
|
1971 |
+
|
1972 |
+
if (!data) $this.data('bs.affix', (data = new Affix(this, options)))
|
1973 |
+
if (typeof option == 'string') data[option]()
|
1974 |
+
})
|
1975 |
+
}
|
1976 |
+
|
1977 |
+
$.fn.affix.Constructor = Affix
|
1978 |
+
|
1979 |
+
|
1980 |
+
// AFFIX NO CONFLICT
|
1981 |
+
// =================
|
1982 |
+
|
1983 |
+
$.fn.affix.noConflict = function () {
|
1984 |
+
$.fn.affix = old
|
1985 |
+
return this
|
1986 |
+
}
|
1987 |
+
|
1988 |
+
|
1989 |
+
// AFFIX DATA-API
|
1990 |
+
// ==============
|
1991 |
+
|
1992 |
+
$(window).on('load', function () {
|
1993 |
+
$('[data-spy="affix"]').each(function () {
|
1994 |
+
var $spy = $(this)
|
1995 |
+
var data = $spy.data()
|
1996 |
+
|
1997 |
+
data.offset = data.offset || {}
|
1998 |
+
|
1999 |
+
if (data.offsetBottom) data.offset.bottom = data.offsetBottom
|
2000 |
+
if (data.offsetTop) data.offset.top = data.offsetTop
|
2001 |
+
|
2002 |
+
$spy.affix(data)
|
2003 |
+
})
|
2004 |
+
})
|
2005 |
+
|
2006 |
+
}(jQuery);
|
themes/default/bootstrap/js/bootstrap.min.js
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*!
|
2 |
+
* Bootstrap v3.0.3 (http://getbootstrap.com)
|
3 |
+
* Copyright 2013 Twitter, Inc.
|
4 |
+
* Licensed under http://www.apache.org/licenses/LICENSE-2.0
|
5 |
+
*/
|
6 |
+
|
7 |
+
if("undefined"==typeof jQuery)throw new Error("Bootstrap requires jQuery");+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]}}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one(a.support.transition.end,function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b()})}(jQuery),+function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype.close=function(b){function c(){f.trigger("closed.bs.alert").remove()}var d=a(this),e=d.attr("data-target");e||(e=d.attr("href"),e=e&&e.replace(/.*(?=#[^\s]*$)/,""));var f=a(e);b&&b.preventDefault(),f.length||(f=d.hasClass("alert")?d:d.parent()),f.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(f.removeClass("in"),a.support.transition&&f.hasClass("fade")?f.one(a.support.transition.end,c).emulateTransitionEnd(150):c())};var d=a.fn.alert;a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("bs.alert");e||d.data("bs.alert",e=new c(this)),"string"==typeof b&&e[b].call(d)})},a.fn.alert.Constructor=c,a.fn.alert.noConflict=function(){return a.fn.alert=d,this},a(document).on("click.bs.alert.data-api",b,c.prototype.close)}(jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d)};b.DEFAULTS={loadingText:"loading..."},b.prototype.setState=function(a){var b="disabled",c=this.$element,d=c.is("input")?"val":"html",e=c.data();a+="Text",e.resetText||c.data("resetText",c[d]()),c[d](e[a]||this.options[a]),setTimeout(function(){"loadingText"==a?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},b.prototype.toggle=function(){var a=this.$element.closest('[data-toggle="buttons"]'),b=!0;if(a.length){var c=this.$element.find("input");"radio"===c.prop("type")&&(c.prop("checked")&&this.$element.hasClass("active")?b=!1:a.find(".active").removeClass("active")),b&&c.prop("checked",!this.$element.hasClass("active")).trigger("change")}b&&this.$element.toggleClass("active")};var c=a.fn.button;a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof c&&c;e||d.data("bs.button",e=new b(this,f)),"toggle"==c?e.toggle():c&&e.setState(c)})},a.fn.button.Constructor=b,a.fn.button.noConflict=function(){return a.fn.button=c,this},a(document).on("click.bs.button.data-api","[data-toggle^=button]",function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle"),b.preventDefault()})}(jQuery),+function(a){"use strict";var b=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=this.sliding=this.interval=this.$active=this.$items=null,"hover"==this.options.pause&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.DEFAULTS={interval:5e3,pause:"hover",wrap:!0},b.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},b.prototype.getActiveIndex=function(){return this.$active=this.$element.find(".item.active"),this.$items=this.$active.parent().children(),this.$items.index(this.$active)},b.prototype.to=function(b){var c=this,d=this.getActiveIndex();return b>this.$items.length-1||0>b?void 0:this.sliding?this.$element.one("slid.bs.carousel",function(){c.to(b)}):d==b?this.pause().cycle():this.slide(b>d?"next":"prev",a(this.$items[b]))},b.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition.end&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},b.prototype.next=function(){return this.sliding?void 0:this.slide("next")},b.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},b.prototype.slide=function(b,c){var d=this.$element.find(".item.active"),e=c||d[b](),f=this.interval,g="next"==b?"left":"right",h="next"==b?"first":"last",i=this;if(!e.length){if(!this.options.wrap)return;e=this.$element.find(".item")[h]()}this.sliding=!0,f&&this.pause();var j=a.Event("slide.bs.carousel",{relatedTarget:e[0],direction:g});if(!e.hasClass("active")){if(this.$indicators.length&&(this.$indicators.find(".active").removeClass("active"),this.$element.one("slid.bs.carousel",function(){var b=a(i.$indicators.children()[i.getActiveIndex()]);b&&b.addClass("active")})),a.support.transition&&this.$element.hasClass("slide")){if(this.$element.trigger(j),j.isDefaultPrevented())return;e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),d.one(a.support.transition.end,function(){e.removeClass([b,g].join(" ")).addClass("active"),d.removeClass(["active",g].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger("slid.bs.carousel")},0)}).emulateTransitionEnd(600)}else{if(this.$element.trigger(j),j.isDefaultPrevented())return;d.removeClass("active"),e.addClass("active"),this.sliding=!1,this.$element.trigger("slid.bs.carousel")}return f&&this.cycle(),this}};var c=a.fn.carousel;a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},b.DEFAULTS,d.data(),"object"==typeof c&&c),g="string"==typeof c?c:f.slide;e||d.data("bs.carousel",e=new b(this,f)),"number"==typeof c?e.to(c):g?e[g]():f.interval&&e.pause().cycle()})},a.fn.carousel.Constructor=b,a.fn.carousel.noConflict=function(){return a.fn.carousel=c,this},a(document).on("click.bs.carousel.data-api","[data-slide], [data-slide-to]",function(b){var c,d=a(this),e=a(d.attr("data-target")||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"")),f=a.extend({},e.data(),d.data()),g=d.attr("data-slide-to");g&&(f.interval=!1),e.carousel(f),(g=d.attr("data-slide-to"))&&e.data("bs.carousel").to(g),b.preventDefault()}),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var b=a(this);b.carousel(b.data())})})}(jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d),this.transitioning=null,this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.DEFAULTS={toggle:!0},b.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},b.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b=a.Event("show.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.$parent&&this.$parent.find("> .panel > .in");if(c&&c.length){var d=c.data("bs.collapse");if(d&&d.transitioning)return;c.collapse("hide"),d||c.data("bs.collapse",null)}var e=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[e](0),this.transitioning=1;var f=function(){this.$element.removeClass("collapsing").addClass("in")[e]("auto"),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return f.call(this);var g=a.camelCase(["scroll",e].join("-"));this.$element.one(a.support.transition.end,a.proxy(f,this)).emulateTransitionEnd(350)[e](this.$element[0][g])}}},b.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse").removeClass("in"),this.transitioning=1;var d=function(){this.transitioning=0,this.$element.trigger("hidden.bs.collapse").removeClass("collapsing").addClass("collapse")};return a.support.transition?(this.$element[c](0).one(a.support.transition.end,a.proxy(d,this)).emulateTransitionEnd(350),void 0):d.call(this)}}},b.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()};var c=a.fn.collapse;a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("bs.collapse"),f=a.extend({},b.DEFAULTS,d.data(),"object"==typeof c&&c);e||d.data("bs.collapse",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.collapse.Constructor=b,a.fn.collapse.noConflict=function(){return a.fn.collapse=c,this},a(document).on("click.bs.collapse.data-api","[data-toggle=collapse]",function(b){var c,d=a(this),e=d.attr("data-target")||b.preventDefault()||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,""),f=a(e),g=f.data("bs.collapse"),h=g?"toggle":d.data(),i=d.attr("data-parent"),j=i&&a(i);g&&g.transitioning||(j&&j.find('[data-toggle=collapse][data-parent="'+i+'"]').not(d).addClass("collapsed"),d[f.hasClass("in")?"addClass":"removeClass"]("collapsed")),f.collapse(h)})}(jQuery),+function(a){"use strict";function b(){a(d).remove(),a(e).each(function(b){var d=c(a(this));d.hasClass("open")&&(d.trigger(b=a.Event("hide.bs.dropdown")),b.isDefaultPrevented()||d.removeClass("open").trigger("hidden.bs.dropdown"))})}function c(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}var d=".dropdown-backdrop",e="[data-toggle=dropdown]",f=function(b){a(b).on("click.bs.dropdown",this.toggle)};f.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=c(e),g=f.hasClass("open");if(b(),!g){if("ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a('<div class="dropdown-backdrop"/>').insertAfter(a(this)).on("click",b),f.trigger(d=a.Event("show.bs.dropdown")),d.isDefaultPrevented())return;f.toggleClass("open").trigger("shown.bs.dropdown"),e.focus()}return!1}},f.prototype.keydown=function(b){if(/(38|40|27)/.test(b.keyCode)){var d=a(this);if(b.preventDefault(),b.stopPropagation(),!d.is(".disabled, :disabled")){var f=c(d),g=f.hasClass("open");if(!g||g&&27==b.keyCode)return 27==b.which&&f.find(e).focus(),d.click();var h=a("[role=menu] li:not(.divider):visible a",f);if(h.length){var i=h.index(h.filter(":focus"));38==b.keyCode&&i>0&&i--,40==b.keyCode&&i<h.length-1&&i++,~i||(i=0),h.eq(i).focus()}}}};var g=a.fn.dropdown;a.fn.dropdown=function(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new f(this)),"string"==typeof b&&d[b].call(c)})},a.fn.dropdown.Constructor=f,a.fn.dropdown.noConflict=function(){return a.fn.dropdown=g,this},a(document).on("click.bs.dropdown.data-api",b).on("click.bs.dropdown.data-api",".dropdown form",function(a){a.stopPropagation()}).on("click.bs.dropdown.data-api",e,f.prototype.toggle).on("keydown.bs.dropdown.data-api",e+", [role=menu]",f.prototype.keydown)}(jQuery),+function(a){"use strict";var b=function(b,c){this.options=c,this.$element=a(b),this.$backdrop=this.isShown=null,this.options.remote&&this.$element.load(this.options.remote)};b.DEFAULTS={backdrop:!0,keyboard:!0,show:!0},b.prototype.toggle=function(a){return this[this.isShown?"hide":"show"](a)},b.prototype.show=function(b){var c=this,d=a.Event("show.bs.modal",{relatedTarget:b});this.$element.trigger(d),this.isShown||d.isDefaultPrevented()||(this.isShown=!0,this.escape(),this.$element.on("click.dismiss.modal",'[data-dismiss="modal"]',a.proxy(this.hide,this)),this.backdrop(function(){var d=a.support.transition&&c.$element.hasClass("fade");c.$element.parent().length||c.$element.appendTo(document.body),c.$element.show(),d&&c.$element[0].offsetWidth,c.$element.addClass("in").attr("aria-hidden",!1),c.enforceFocus();var e=a.Event("shown.bs.modal",{relatedTarget:b});d?c.$element.find(".modal-dialog").one(a.support.transition.end,function(){c.$element.focus().trigger(e)}).emulateTransitionEnd(300):c.$element.focus().trigger(e)}))},b.prototype.hide=function(b){b&&b.preventDefault(),b=a.Event("hide.bs.modal"),this.$element.trigger(b),this.isShown&&!b.isDefaultPrevented()&&(this.isShown=!1,this.escape(),a(document).off("focusin.bs.modal"),this.$element.removeClass("in").attr("aria-hidden",!0).off("click.dismiss.modal"),a.support.transition&&this.$element.hasClass("fade")?this.$element.one(a.support.transition.end,a.proxy(this.hideModal,this)).emulateTransitionEnd(300):this.hideModal())},b.prototype.enforceFocus=function(){a(document).off("focusin.bs.modal").on("focusin.bs.modal",a.proxy(function(a){this.$element[0]===a.target||this.$element.has(a.target).length||this.$element.focus()},this))},b.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keyup.dismiss.bs.modal",a.proxy(function(a){27==a.which&&this.hide()},this)):this.isShown||this.$element.off("keyup.dismiss.bs.modal")},b.prototype.hideModal=function(){var a=this;this.$element.hide(),this.backdrop(function(){a.removeBackdrop(),a.$element.trigger("hidden.bs.modal")})},b.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},b.prototype.backdrop=function(b){var c=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var d=a.support.transition&&c;if(this.$backdrop=a('<div class="modal-backdrop '+c+'" />').appendTo(document.body),this.$element.on("click.dismiss.modal",a.proxy(function(a){a.target===a.currentTarget&&("static"==this.options.backdrop?this.$element[0].focus.call(this.$element[0]):this.hide.call(this))},this)),d&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!b)return;d?this.$backdrop.one(a.support.transition.end,b).emulateTransitionEnd(150):b()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),a.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(a.support.transition.end,b).emulateTransitionEnd(150):b()):b&&b()};var c=a.fn.modal;a.fn.modal=function(c,d){return this.each(function(){var e=a(this),f=e.data("bs.modal"),g=a.extend({},b.DEFAULTS,e.data(),"object"==typeof c&&c);f||e.data("bs.modal",f=new b(this,g)),"string"==typeof c?f[c](d):g.show&&f.show(d)})},a.fn.modal.Constructor=b,a.fn.modal.noConflict=function(){return a.fn.modal=c,this},a(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(b){var c=a(this),d=c.attr("href"),e=a(c.attr("data-target")||d&&d.replace(/.*(?=#[^\s]+$)/,"")),f=e.data("modal")?"toggle":a.extend({remote:!/#/.test(d)&&d},e.data(),c.data());b.preventDefault(),e.modal(f,this).one("hide",function(){c.is(":visible")&&c.focus()})}),a(document).on("show.bs.modal",".modal",function(){a(document.body).addClass("modal-open")}).on("hidden.bs.modal",".modal",function(){a(document.body).removeClass("modal-open")})}(jQuery),+function(a){"use strict";var b=function(a,b){this.type=this.options=this.enabled=this.timeout=this.hoverState=this.$element=null,this.init("tooltip",a,b)};b.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1},b.prototype.init=function(b,c,d){this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d);for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focus",i="hover"==g?"mouseleave":"blur";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},b.prototype.getDefaults=function(){return b.DEFAULTS},b.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},b.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},b.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);return clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show),void 0):c.show()},b.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);return clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide),void 0):c.hide()},b.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){if(this.$element.trigger(b),b.isDefaultPrevented())return;var c=this.tip();this.setContent(),this.options.animation&&c.addClass("fade");var d="function"==typeof this.options.placement?this.options.placement.call(this,c[0],this.$element[0]):this.options.placement,e=/\s?auto?\s?/i,f=e.test(d);f&&(d=d.replace(e,"")||"top"),c.detach().css({top:0,left:0,display:"block"}).addClass(d),this.options.container?c.appendTo(this.options.container):c.insertAfter(this.$element);var g=this.getPosition(),h=c[0].offsetWidth,i=c[0].offsetHeight;if(f){var j=this.$element.parent(),k=d,l=document.documentElement.scrollTop||document.body.scrollTop,m="body"==this.options.container?window.innerWidth:j.outerWidth(),n="body"==this.options.container?window.innerHeight:j.outerHeight(),o="body"==this.options.container?0:j.offset().left;d="bottom"==d&&g.top+g.height+i-l>n?"top":"top"==d&&g.top-l-i<0?"bottom":"right"==d&&g.right+h>m?"left":"left"==d&&g.left-h<o?"right":d,c.removeClass(k).addClass(d)}var p=this.getCalculatedOffset(d,g,h,i);this.applyPlacement(p,d),this.$element.trigger("shown.bs."+this.type)}},b.prototype.applyPlacement=function(a,b){var c,d=this.tip(),e=d[0].offsetWidth,f=d[0].offsetHeight,g=parseInt(d.css("margin-top"),10),h=parseInt(d.css("margin-left"),10);isNaN(g)&&(g=0),isNaN(h)&&(h=0),a.top=a.top+g,a.left=a.left+h,d.offset(a).addClass("in");var i=d[0].offsetWidth,j=d[0].offsetHeight;if("top"==b&&j!=f&&(c=!0,a.top=a.top+f-j),/bottom|top/.test(b)){var k=0;a.left<0&&(k=-2*a.left,a.left=0,d.offset(a),i=d[0].offsetWidth,j=d[0].offsetHeight),this.replaceArrow(k-e+i,i,"left")}else this.replaceArrow(j-f,j,"top");c&&d.offset(a)},b.prototype.replaceArrow=function(a,b,c){this.arrow().css(c,a?50*(1-a/b)+"%":"")},b.prototype.setContent=function(){var a=this.tip(),b=this.getTitle();a.find(".tooltip-inner")[this.options.html?"html":"text"](b),a.removeClass("fade in top bottom left right")},b.prototype.hide=function(){function b(){"in"!=c.hoverState&&d.detach()}var c=this,d=this.tip(),e=a.Event("hide.bs."+this.type);return this.$element.trigger(e),e.isDefaultPrevented()?void 0:(d.removeClass("in"),a.support.transition&&this.$tip.hasClass("fade")?d.one(a.support.transition.end,b).emulateTransitionEnd(150):b(),this.$element.trigger("hidden.bs."+this.type),this)},b.prototype.fixTitle=function(){var a=this.$element;(a.attr("title")||"string"!=typeof a.attr("data-original-title"))&&a.attr("data-original-title",a.attr("title")||"").attr("title","")},b.prototype.hasContent=function(){return this.getTitle()},b.prototype.getPosition=function(){var b=this.$element[0];return a.extend({},"function"==typeof b.getBoundingClientRect?b.getBoundingClientRect():{width:b.offsetWidth,height:b.offsetHeight},this.$element.offset())},b.prototype.getCalculatedOffset=function(a,b,c,d){return"bottom"==a?{top:b.top+b.height,left:b.left+b.width/2-c/2}:"top"==a?{top:b.top-d,left:b.left+b.width/2-c/2}:"left"==a?{top:b.top+b.height/2-d/2,left:b.left-c}:{top:b.top+b.height/2-d/2,left:b.left+b.width}},b.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},b.prototype.tip=function(){return this.$tip=this.$tip||a(this.options.template)},b.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},b.prototype.validate=function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},b.prototype.enable=function(){this.enabled=!0},b.prototype.disable=function(){this.enabled=!1},b.prototype.toggleEnabled=function(){this.enabled=!this.enabled},b.prototype.toggle=function(b){var c=b?a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type):this;c.tip().hasClass("in")?c.leave(c):c.enter(c)},b.prototype.destroy=function(){this.hide().$element.off("."+this.type).removeData("bs."+this.type)};var c=a.fn.tooltip;a.fn.tooltip=function(c){return this.each(function(){var d=a(this),e=d.data("bs.tooltip"),f="object"==typeof c&&c;e||d.data("bs.tooltip",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.tooltip.Constructor=b,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=c,this}}(jQuery),+function(a){"use strict";var b=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");b.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'}),b.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),b.prototype.constructor=b,b.prototype.getDefaults=function(){return b.DEFAULTS},b.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content")[this.options.html?"html":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},b.prototype.hasContent=function(){return this.getTitle()||this.getContent()},b.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},b.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")},b.prototype.tip=function(){return this.$tip||(this.$tip=a(this.options.template)),this.$tip};var c=a.fn.popover;a.fn.popover=function(c){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof c&&c;e||d.data("bs.popover",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.popover.Constructor=b,a.fn.popover.noConflict=function(){return a.fn.popover=c,this}}(jQuery),+function(a){"use strict";function b(c,d){var e,f=a.proxy(this.process,this);this.$element=a(c).is("body")?a(window):a(c),this.$body=a("body"),this.$scrollElement=this.$element.on("scroll.bs.scroll-spy.data-api",f),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||(e=a(c).attr("href"))&&e.replace(/.*(?=#[^\s]+$)/,"")||"")+" .nav li > a",this.offsets=a([]),this.targets=a([]),this.activeTarget=null,this.refresh(),this.process()}b.DEFAULTS={offset:10},b.prototype.refresh=function(){var b=this.$element[0]==window?"offset":"position";this.offsets=a([]),this.targets=a([]);var c=this;this.$body.find(this.selector).map(function(){var d=a(this),e=d.data("target")||d.attr("href"),f=/^#\w/.test(e)&&a(e);return f&&f.length&&[[f[b]().top+(!a.isWindow(c.$scrollElement.get(0))&&c.$scrollElement.scrollTop()),e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){c.offsets.push(this[0]),c.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,d=c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(b>=d)return g!=(a=f.last()[0])&&this.activate(a);for(a=e.length;a--;)g!=f[a]&&b>=e[a]&&(!e[a+1]||b<=e[a+1])&&this.activate(f[a])},b.prototype.activate=function(b){this.activeTarget=b,a(this.selector).parents(".active").removeClass("active");var c=this.selector+'[data-target="'+b+'"],'+this.selector+'[href="'+b+'"]',d=a(c).parents("li").addClass("active");d.parent(".dropdown-menu").length&&(d=d.closest("li.dropdown").addClass("active")),d.trigger("activate.bs.scrollspy")};var c=a.fn.scrollspy;a.fn.scrollspy=function(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.scrollspy.Constructor=b,a.fn.scrollspy.noConflict=function(){return a.fn.scrollspy=c,this},a(window).on("load",function(){a('[data-spy="scroll"]').each(function(){var b=a(this);b.scrollspy(b.data())})})}(jQuery),+function(a){"use strict";var b=function(b){this.element=a(b)};b.prototype.show=function(){var b=this.element,c=b.closest("ul:not(.dropdown-menu)"),d=b.data("target");if(d||(d=b.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),!b.parent("li").hasClass("active")){var e=c.find(".active:last a")[0],f=a.Event("show.bs.tab",{relatedTarget:e});if(b.trigger(f),!f.isDefaultPrevented()){var g=a(d);this.activate(b.parent("li"),c),this.activate(g,g.parent(),function(){b.trigger({type:"shown.bs.tab",relatedTarget:e})})}}},b.prototype.activate=function(b,c,d){function e(){f.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),b.addClass("active"),g?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu")&&b.closest("li.dropdown").addClass("active"),d&&d()}var f=c.find("> .active"),g=d&&a.support.transition&&f.hasClass("fade");g?f.one(a.support.transition.end,e).emulateTransitionEnd(150):e(),f.removeClass("in")};var c=a.fn.tab;a.fn.tab=function(c){return this.each(function(){var d=a(this),e=d.data("bs.tab");e||d.data("bs.tab",e=new b(this)),"string"==typeof c&&e[c]()})},a.fn.tab.Constructor=b,a.fn.tab.noConflict=function(){return a.fn.tab=c,this},a(document).on("click.bs.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(b){b.preventDefault(),a(this).tab("show")})}(jQuery),+function(a){"use strict";var b=function(c,d){this.options=a.extend({},b.DEFAULTS,d),this.$window=a(window).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(c),this.affixed=this.unpin=null,this.checkPosition()};b.RESET="affix affix-top affix-bottom",b.DEFAULTS={offset:0},b.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},b.prototype.checkPosition=function(){if(this.$element.is(":visible")){var c=a(document).height(),d=this.$window.scrollTop(),e=this.$element.offset(),f=this.options.offset,g=f.top,h=f.bottom;"object"!=typeof f&&(h=g=f),"function"==typeof g&&(g=f.top()),"function"==typeof h&&(h=f.bottom());var i=null!=this.unpin&&d+this.unpin<=e.top?!1:null!=h&&e.top+this.$element.height()>=c-h?"bottom":null!=g&&g>=d?"top":!1;this.affixed!==i&&(this.unpin&&this.$element.css("top",""),this.affixed=i,this.unpin="bottom"==i?e.top-d:null,this.$element.removeClass(b.RESET).addClass("affix"+(i?"-"+i:"")),"bottom"==i&&this.$element.offset({top:document.body.offsetHeight-h-this.$element.height()}))}};var c=a.fn.affix;a.fn.affix=function(c){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof c&&c;e||d.data("bs.affix",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.affix.Constructor=b,a.fn.affix.noConflict=function(){return a.fn.affix=c,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var b=a(this),c=b.data();c.offset=c.offset||{},c.offsetBottom&&(c.offset.bottom=c.offsetBottom),c.offsetTop&&(c.offset.top=c.offsetTop),b.affix(c)})})}(jQuery);
|
themes/default/functions.php
ADDED
@@ -0,0 +1,291 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Template Tags
|
3 |
+
function seed_csp4_title() {
|
4 |
+
$o = seed_csp4_get_settings();
|
5 |
+
extract( $o );
|
6 |
+
|
7 |
+
$output = '';
|
8 |
+
|
9 |
+
if ( !empty( $seo_title ) ) {
|
10 |
+
$output = esc_html( $seo_title );
|
11 |
+
}
|
12 |
+
return $output;
|
13 |
+
}
|
14 |
+
|
15 |
+
function seed_csp4_metadescription() {
|
16 |
+
$o = seed_csp4_get_settings();
|
17 |
+
extract( $o );
|
18 |
+
|
19 |
+
$output = '';
|
20 |
+
|
21 |
+
if ( !empty( $seo_description ) ) {
|
22 |
+
$output = '<meta name="description" content="'.esc_attr( $seo_description ).'">';
|
23 |
+
}
|
24 |
+
|
25 |
+
return $output;
|
26 |
+
}
|
27 |
+
|
28 |
+
function seed_csp4_privacy() {
|
29 |
+
$output = '';
|
30 |
+
|
31 |
+
if ( get_option( 'blog_public' ) == 0 ) {
|
32 |
+
$output = "<meta name='robots' content='noindex,nofollow' />";
|
33 |
+
}
|
34 |
+
|
35 |
+
return $output;
|
36 |
+
}
|
37 |
+
|
38 |
+
function seed_csp4_favicon() {
|
39 |
+
$o = seed_csp4_get_settings();
|
40 |
+
extract( $o );
|
41 |
+
|
42 |
+
$output = '';
|
43 |
+
|
44 |
+
if ( !empty( $favicon ) ) {
|
45 |
+
$output .= "<!-- Favicon -->\n";
|
46 |
+
$output .= '<link href="'.esc_attr( $favicon ).'" rel="shortcut icon" type="image/x-icon" />';
|
47 |
+
}
|
48 |
+
|
49 |
+
return $output;
|
50 |
+
}
|
51 |
+
|
52 |
+
function seed_csp4_customcss() {
|
53 |
+
$o = seed_csp4_get_settings();
|
54 |
+
extract( $o );
|
55 |
+
|
56 |
+
$output = '';
|
57 |
+
|
58 |
+
if ( !empty( $custom_css ) ) {
|
59 |
+
$output = '<style type="text/css">'.$custom_css.'</style>';
|
60 |
+
}
|
61 |
+
|
62 |
+
return $output;
|
63 |
+
}
|
64 |
+
|
65 |
+
function seed_csp4_head() {
|
66 |
+
$o = seed_csp4_get_settings();
|
67 |
+
extract( $o );
|
68 |
+
|
69 |
+
// CSS
|
70 |
+
$output = '';
|
71 |
+
|
72 |
+
$output .= "<!-- Bootstrap and default Style -->\n";
|
73 |
+
$output .= '<link rel="stylesheet" href="'.SEED_CSP4_PLUGIN_URL.'themes/default/bootstrap/css/bootstrap.min.css">'."\n";
|
74 |
+
$output .= '<link rel="stylesheet" href="'.SEED_CSP4_PLUGIN_URL.'themes/default/style.css">'."\n";
|
75 |
+
if ( is_rtl() ) {
|
76 |
+
$output .= '<link rel="stylesheet" href="'.SEED_CSP4_PLUGIN_URL.'themes/default/rtl.css">'."\n";
|
77 |
+
}
|
78 |
+
$output .= '<style type="text/css">'."\n";
|
79 |
+
|
80 |
+
// Calculated Styles
|
81 |
+
|
82 |
+
$output .= '/* calculated styles */'."\n";
|
83 |
+
ob_start();
|
84 |
+
?>
|
85 |
+
|
86 |
+
/* Background Style */
|
87 |
+
html{
|
88 |
+
height:100%;
|
89 |
+
<?php if ( !empty( $bg_image ) ): ;?>
|
90 |
+
<?php if ( isset( $bg_cover ) && in_array( '1', $bg_cover ) ) : ?>
|
91 |
+
background: <?php echo $bg_color;?> url('<?php echo $bg_image; ?>') no-repeat top center fixed;
|
92 |
+
-webkit-background-size: cover;
|
93 |
+
-moz-background-size: cover;
|
94 |
+
-o-background-size: cover;
|
95 |
+
background-size: cover;
|
96 |
+
<?php else: ?>
|
97 |
+
background: <?php echo $bg_color;?> url('<?php echo $bg_image; ?>') <?php echo $bg_repeat;?> <?php echo $bg_position;?> <?php echo $bg_attahcment;?>;
|
98 |
+
<?php endif ?>
|
99 |
+
<?php else:
|
100 |
+
if(!empty($bg_color)):
|
101 |
+
?>
|
102 |
+
background: <?php echo $bg_color;?>;
|
103 |
+
<?php endif;endif; ?>
|
104 |
+
}
|
105 |
+
.seed-csp4 body{
|
106 |
+
height:100%;
|
107 |
+
<?php if ( !empty( $bg_effect ) ) : ?>
|
108 |
+
background: transparent url('<?php echo plugins_url( 'images/bg-'.$bg_effect.'.png', __FILE__ ) ; ?>') repeat;
|
109 |
+
<?php else: ?>
|
110 |
+
background: transparent;
|
111 |
+
<?php endif; ?>
|
112 |
+
}
|
113 |
+
|
114 |
+
<?php if ( !empty( $max_width ) ):?>
|
115 |
+
#seed-csp4-content{
|
116 |
+
max-width: <?php echo intval($max_width);?>px;
|
117 |
+
}
|
118 |
+
<?php endif;?>
|
119 |
+
|
120 |
+
<?php if ( !empty( $enable_well ) ):?>
|
121 |
+
#seed-csp4-content{
|
122 |
+
min-height: 20px;
|
123 |
+
padding: 19px;
|
124 |
+
background-color: #f5f5f5;
|
125 |
+
border: 1px solid #e3e3e3;
|
126 |
+
border-radius: 4px;
|
127 |
+
}
|
128 |
+
<?php endif;?>
|
129 |
+
|
130 |
+
/* Text Styles */
|
131 |
+
<?php if ( !empty( $text_font ) ):?>
|
132 |
+
.seed-csp4 body{
|
133 |
+
font-family: <?php echo SEED_CSP4::get_font_family($text_font); ?>
|
134 |
+
}
|
135 |
+
|
136 |
+
.seed-csp4 h1, .seed-csp4 h2, .seed-csp4 h3, .seed-csp4 h4, .seed-csp4 h5, .seed-csp4 h6{
|
137 |
+
font-family: <?php echo SEED_CSP4::get_font_family($text_font); ?>
|
138 |
+
}
|
139 |
+
<?php endif;?>
|
140 |
+
|
141 |
+
<?php if ( !empty( $text_color ) ) { ?>
|
142 |
+
.seed-csp4 body{
|
143 |
+
color:<?php echo $text_color;?>;
|
144 |
+
}
|
145 |
+
<?php } ?>
|
146 |
+
|
147 |
+
<?php if ( !empty( $link_color ) ) { ?>
|
148 |
+
<?php if ( empty( $headline_color ) ) { $headline_color = $link_color; }?>
|
149 |
+
<?php } ?>
|
150 |
+
|
151 |
+
|
152 |
+
<?php if ( !empty( $headline_color ) ) { ?>
|
153 |
+
.seed-csp4 h1, .seed-csp4 h2, .seed-csp4 h3, .seed-csp4 h4, .seed-csp4 h5, .seed-csp4 h6{
|
154 |
+
color:<?php echo $headline_color;?>;
|
155 |
+
}
|
156 |
+
<?php }?>
|
157 |
+
|
158 |
+
|
159 |
+
<?php if ( !empty( $link_color ) ) { ?>
|
160 |
+
.seed-csp4 a, .seed-csp4 a:visited, .seed-csp4 a:hover, .seed-csp4 a:active{
|
161 |
+
color:<?php echo $link_color;?>;
|
162 |
+
}
|
163 |
+
|
164 |
+
|
165 |
+
<?php }
|
166 |
+
|
167 |
+
$output .= ob_get_clean();
|
168 |
+
|
169 |
+
$output .= '</style>'."\n";
|
170 |
+
|
171 |
+
|
172 |
+
|
173 |
+
// Javascript
|
174 |
+
$output .= "<!-- JS -->\n";
|
175 |
+
$include_url = includes_url();
|
176 |
+
$last = $include_url[strlen( $include_url )-1];
|
177 |
+
if ( $last != '/' ) {
|
178 |
+
$include_url = $include_url . '/';
|
179 |
+
}
|
180 |
+
if ( empty( $enable_wp_head_footer ) ) {
|
181 |
+
$output .= '<script src="'.$include_url.'js/jquery/jquery.js"></script>'."\n";
|
182 |
+
}
|
183 |
+
$output .= '<script src="'.SEED_CSP4_PLUGIN_URL.'themes/default/bootstrap/js/bootstrap.js"></script>'."\n";
|
184 |
+
|
185 |
+
$output .= '<script src="'.SEED_CSP4_PLUGIN_URL.'themes/default/js/script.js"></script>'."\n";
|
186 |
+
|
187 |
+
|
188 |
+
// Header Scripts
|
189 |
+
if ( !empty( $header_scripts ) ) {
|
190 |
+
$output .= "<!-- Header Scripts -->\n";
|
191 |
+
$output .= $header_scripts;
|
192 |
+
}
|
193 |
+
|
194 |
+
// Google Analytics
|
195 |
+
if ( !empty( $ga_analytics ) ) {
|
196 |
+
$output .= "<!-- Google Analytics -->\n";
|
197 |
+
$output .= $ga_analytics;
|
198 |
+
}
|
199 |
+
|
200 |
+
// Modernizr
|
201 |
+
$output .= "<!-- Modernizr -->\n";
|
202 |
+
$output .= '<script src="'.SEED_CSP4_PLUGIN_URL.'themes/default/js/modernizr.min.js"></script>'."\n";
|
203 |
+
|
204 |
+
return $output;
|
205 |
+
}
|
206 |
+
|
207 |
+
function seed_csp4_footer() {
|
208 |
+
$o = seed_csp4_get_settings();
|
209 |
+
extract( $o );
|
210 |
+
|
211 |
+
$output = '';
|
212 |
+
|
213 |
+
|
214 |
+
if(!empty($bg_cover)){
|
215 |
+
$output .= '<!--[if lt IE 9]>
|
216 |
+
<script>
|
217 |
+
jQuery(document).ready(function($){';
|
218 |
+
|
219 |
+
|
220 |
+
$output .= '$.supersized({';
|
221 |
+
$output .= "slides:[ {image : '$bg_image'} ]";
|
222 |
+
$output .= '});';
|
223 |
+
|
224 |
+
|
225 |
+
$output .= '});
|
226 |
+
</script>
|
227 |
+
<![endif]-->';
|
228 |
+
}
|
229 |
+
|
230 |
+
|
231 |
+
if ( !empty( $footer_scripts ) ) {
|
232 |
+
$output .= "<!-- Footer Scripts -->\n";
|
233 |
+
$output .= $footer_scripts;
|
234 |
+
}
|
235 |
+
|
236 |
+
return $output;
|
237 |
+
}
|
238 |
+
|
239 |
+
function seed_csp4_logo() {
|
240 |
+
$o = seed_csp4_get_settings();
|
241 |
+
extract( $o );
|
242 |
+
|
243 |
+
$output = '';
|
244 |
+
|
245 |
+
if ( !empty( $logo ) ) {
|
246 |
+
$output .= "<img id='seed-csp4-image' src='$logo'>";
|
247 |
+
}
|
248 |
+
|
249 |
+
return $output;
|
250 |
+
}
|
251 |
+
|
252 |
+
function seed_csp4_headline() {
|
253 |
+
$o = seed_csp4_get_settings();
|
254 |
+
extract( $o );
|
255 |
+
|
256 |
+
$output = '';
|
257 |
+
|
258 |
+
if ( !empty( $headline ) ) {
|
259 |
+
$output .= '<h1 id="seed-csp4-headline">'.$headline.'</h1>';
|
260 |
+
}
|
261 |
+
|
262 |
+
return $output;
|
263 |
+
}
|
264 |
+
|
265 |
+
function seed_csp4_description() {
|
266 |
+
$o = seed_csp4_get_settings();
|
267 |
+
extract( $o );
|
268 |
+
|
269 |
+
$output = '';
|
270 |
+
|
271 |
+
if ( !empty( $description ) ) {
|
272 |
+
$output .= '<div id="seed-csp4-description">'.shortcode_unautop(wpautop(convert_chars(wptexturize($description)))).'</div>';
|
273 |
+
}
|
274 |
+
|
275 |
+
return $output;
|
276 |
+
}
|
277 |
+
|
278 |
+
function seed_csp4_credit() {
|
279 |
+
$o = seed_csp4_get_settings();
|
280 |
+
extract( $o );
|
281 |
+
|
282 |
+
$output = '';
|
283 |
+
|
284 |
+
if ( !empty( $footer_credit ) ) {
|
285 |
+
$output = '<div id="seed-csp4-credit">';
|
286 |
+
$output .= '<a target="_blank" href="http://www.seedprod.com/?utm_source=coming-soon-credit-link&utm_medium=banner&utm_campaign=coming-soon-plugin-credit-link"><img src="'.plugins_url('coming-soon',dirname('.')).'/themes/default/images/seedprod-credit.png"></a>';
|
287 |
+
$output .= '</div>';
|
288 |
+
}
|
289 |
+
|
290 |
+
return $output;
|
291 |
+
}
|
themes/default/images/ajax-loader.gif
ADDED
Binary file
|
themes/default/images/seedprod-credit.png
ADDED
Binary file
|
themes/default/index.php
ADDED
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<!DOCTYPE html>
|
2 |
+
<html class="no-js seed-csp4" lang="en">
|
3 |
+
<head>
|
4 |
+
<meta charset="utf-8">
|
5 |
+
<title>{Title}</title>
|
6 |
+
{MetaDescription}
|
7 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
8 |
+
{Privacy}
|
9 |
+
{Favicon}
|
10 |
+
{Head}
|
11 |
+
{CustomCSS}
|
12 |
+
</head>
|
13 |
+
<body>
|
14 |
+
<div class="row">
|
15 |
+
<div class="col-md-12">
|
16 |
+
<div id="seed-csp4-content">
|
17 |
+
{Logo}
|
18 |
+
{Headline}
|
19 |
+
{Description}
|
20 |
+
</div><!-- / #seed-csp4-content -->
|
21 |
+
</div></div>
|
22 |
+
{Credit}
|
23 |
+
|
24 |
+
{Footer}
|
25 |
+
</body>
|
26 |
+
</html>
|
themes/default/js/jquery.fitvids.js
ADDED
@@ -0,0 +1,74 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*global jQuery */
|
2 |
+
/*jshint multistr:true browser:true */
|
3 |
+
/*!
|
4 |
+
* FitVids 1.0.3
|
5 |
+
*
|
6 |
+
* Copyright 2013, Chris Coyier - http://css-tricks.com + Dave Rupert - http://daverupert.com
|
7 |
+
* Credit to Thierry Koblentz - http://www.alistapart.com/articles/creating-intrinsic-ratios-for-video/
|
8 |
+
* Released under the WTFPL license - http://sam.zoy.org/wtfpl/
|
9 |
+
*
|
10 |
+
* Date: Thu Sept 01 18:00:00 2011 -0500
|
11 |
+
*/
|
12 |
+
|
13 |
+
(function( $ ){
|
14 |
+
|
15 |
+
"use strict";
|
16 |
+
|
17 |
+
$.fn.fitVids = function( options ) {
|
18 |
+
var settings = {
|
19 |
+
customSelector: null
|
20 |
+
};
|
21 |
+
|
22 |
+
if(!document.getElementById('fit-vids-style')) {
|
23 |
+
|
24 |
+
var div = document.createElement('div'),
|
25 |
+
ref = document.getElementsByTagName('base')[0] || document.getElementsByTagName('script')[0],
|
26 |
+
cssStyles = '­<style>.fluid-width-video-wrapper{width:100%;position:relative;padding:0;}.fluid-width-video-wrapper iframe,.fluid-width-video-wrapper object,.fluid-width-video-wrapper embed {position:absolute;top:0;left:0;width:100%;height:100%;}</style>';
|
27 |
+
|
28 |
+
div.className = 'fit-vids-style';
|
29 |
+
div.id = 'fit-vids-style';
|
30 |
+
div.style.display = 'none';
|
31 |
+
div.innerHTML = cssStyles;
|
32 |
+
|
33 |
+
ref.parentNode.insertBefore(div,ref);
|
34 |
+
|
35 |
+
}
|
36 |
+
|
37 |
+
if ( options ) {
|
38 |
+
$.extend( settings, options );
|
39 |
+
}
|
40 |
+
|
41 |
+
return this.each(function(){
|
42 |
+
var selectors = [
|
43 |
+
"iframe[src*='player.vimeo.com']",
|
44 |
+
"iframe[src*='youtube.com']",
|
45 |
+
"iframe[src*='youtube-nocookie.com']",
|
46 |
+
"iframe[src*='kickstarter.com'][src*='video.html']",
|
47 |
+
"object",
|
48 |
+
"embed"
|
49 |
+
];
|
50 |
+
|
51 |
+
if (settings.customSelector) {
|
52 |
+
selectors.push(settings.customSelector);
|
53 |
+
}
|
54 |
+
|
55 |
+
var $allVideos = $(this).find(selectors.join(','));
|
56 |
+
$allVideos = $allVideos.not("object object"); // SwfObj conflict patch
|
57 |
+
|
58 |
+
$allVideos.each(function(){
|
59 |
+
var $this = $(this);
|
60 |
+
if (this.tagName.toLowerCase() === 'embed' && $this.parent('object').length || $this.parent('.fluid-width-video-wrapper').length) { return; }
|
61 |
+
var height = ( this.tagName.toLowerCase() === 'object' || ($this.attr('height') && !isNaN(parseInt($this.attr('height'), 10))) ) ? parseInt($this.attr('height'), 10) : $this.height(),
|
62 |
+
width = !isNaN(parseInt($this.attr('width'), 10)) ? parseInt($this.attr('width'), 10) : $this.width(),
|
63 |
+
aspectRatio = height / width;
|
64 |
+
if(!$this.attr('id')){
|
65 |
+
var videoID = 'fitvid' + Math.floor(Math.random()*999999);
|
66 |
+
$this.attr('id', videoID);
|
67 |
+
}
|
68 |
+
$this.wrap('<div class="fluid-width-video-wrapper"></div>').parent('.fluid-width-video-wrapper').css('padding-top', (aspectRatio * 100)+"%");
|
69 |
+
$this.removeAttr('height').removeAttr('width');
|
70 |
+
});
|
71 |
+
});
|
72 |
+
};
|
73 |
+
// Works with either jQuery or Zepto
|
74 |
+
})( window.jQuery || window.Zepto );
|
themes/default/js/modernizr.min.js
ADDED
@@ -0,0 +1,4 @@
|
|
|
|
|
|
|
|
|
1 |
+
/* Modernizr 2.7.1 (Custom Build) | MIT & BSD
|
2 |
+
* Build: http://modernizr.com/download/#-fontface-backgroundsize-borderimage-borderradius-boxshadow-flexbox-flexboxlegacy-hsla-multiplebgs-opacity-rgba-textshadow-cssanimations-csscolumns-generatedcontent-cssgradients-cssreflections-csstransforms-csstransforms3d-csstransitions-shiv-teststyles-testprop-testallprops-prefixes-domprefixes
|
3 |
+
*/
|
4 |
+
;window.Modernizr=function(a,b,c){function z(a){i.cssText=a}function A(a,b){return z(m.join(a+";")+(b||""))}function B(a,b){return typeof a===b}function C(a,b){return!!~(""+a).indexOf(b)}function D(a,b){for(var d in a){var e=a[d];if(!C(e,"-")&&i[e]!==c)return b=="pfx"?e:!0}return!1}function E(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:B(f,"function")?f.bind(d||b):f}return!1}function F(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+o.join(d+" ")+d).split(" ");return B(b,"string")||B(b,"undefined")?D(e,b):(e=(a+" "+p.join(d+" ")+d).split(" "),E(e,b,c))}var d="2.7.1",e={},f=b.documentElement,g="modernizr",h=b.createElement(g),i=h.style,j,k=":)",l={}.toString,m=" -webkit- -moz- -o- -ms- ".split(" "),n="Webkit Moz O ms",o=n.split(" "),p=n.toLowerCase().split(" "),q={},r={},s={},t=[],u=t.slice,v,w=function(a,c,d,e){var h,i,j,k,l=b.createElement("div"),m=b.body,n=m||b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:g+(d+1),l.appendChild(j);return h=["­",'<style id="s',g,'">',a,"</style>"].join(""),l.id=g,(m?l:n).innerHTML+=h,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=f.style.overflow,f.style.overflow="hidden",f.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),f.style.overflow=k),!!i},x={}.hasOwnProperty,y;!B(x,"undefined")&&!B(x.call,"undefined")?y=function(a,b){return x.call(a,b)}:y=function(a,b){return b in a&&B(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=u.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(u.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(u.call(arguments)))};return e}),q.flexbox=function(){return F("flexWrap")},q.flexboxlegacy=function(){return F("boxDirection")},q.rgba=function(){return z("background-color:rgba(150,255,150,.5)"),C(i.backgroundColor,"rgba")},q.hsla=function(){return z("background-color:hsla(120,40%,100%,.5)"),C(i.backgroundColor,"rgba")||C(i.backgroundColor,"hsla")},q.multiplebgs=function(){return z("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(i.background)},q.backgroundsize=function(){return F("backgroundSize")},q.borderimage=function(){return F("borderImage")},q.borderradius=function(){return F("borderRadius")},q.boxshadow=function(){return F("boxShadow")},q.textshadow=function(){return b.createElement("div").style.textShadow===""},q.opacity=function(){return A("opacity:.55"),/^0.55$/.test(i.opacity)},q.cssanimations=function(){return F("animationName")},q.csscolumns=function(){return F("columnCount")},q.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return z((a+"-webkit- ".split(" ").join(b+a)+m.join(c+a)).slice(0,-a.length)),C(i.backgroundImage,"gradient")},q.cssreflections=function(){return F("boxReflect")},q.csstransforms=function(){return!!F("transform")},q.csstransforms3d=function(){var a=!!F("perspective");return a&&"webkitPerspective"in f.style&&w("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},q.csstransitions=function(){return F("transition")},q.fontface=function(){var a;return w('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},q.generatedcontent=function(){var a;return w(["#",g,"{font:0/0 a}#",g,':after{content:"',k,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a};for(var G in q)y(q,G)&&(v=G.toLowerCase(),e[v]=q[G](),t.push((e[v]?"":"no-")+v));return e.addTest=function(a,b){if(typeof a=="object")for(var d in a)y(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof enableClasses!="undefined"&&enableClasses&&(f.className+=" "+(b?"":"no-")+a),e[a]=b}return e},z(""),h=j=null,function(a,b){function l(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function m(){var a=s.elements;return typeof a=="string"?a.split(" "):a}function n(a){var b=j[a[h]];return b||(b={},i++,a[h]=i,j[i]=b),b}function o(a,c,d){c||(c=b);if(k)return c.createElement(a);d||(d=n(c));var g;return d.cache[a]?g=d.cache[a].cloneNode():f.test(a)?g=(d.cache[a]=d.createElem(a)).cloneNode():g=d.createElem(a),g.canHaveChildren&&!e.test(a)&&!g.tagUrn?d.frag.appendChild(g):g}function p(a,c){a||(a=b);if(k)return a.createDocumentFragment();c=c||n(a);var d=c.frag.cloneNode(),e=0,f=m(),g=f.length;for(;e<g;e++)d.createElement(f[e]);return d}function q(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return s.shivMethods?o(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+m().join().replace(/[\w\-]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(s,b.frag)}function r(a){a||(a=b);var c=n(a);return s.shivCSS&&!g&&!c.hasCSS&&(c.hasCSS=!!l(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),k||q(a,c),a}var c="3.7.0",d=a.html5||{},e=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,f=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,g,h="_html5shiv",i=0,j={},k;(function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",g="hidden"in a,k=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){g=!0,k=!0}})();var s={elements:d.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:c,shivCSS:d.shivCSS!==!1,supportsUnknownElements:k,shivMethods:d.shivMethods!==!1,type:"default",shivDocument:r,createElement:o,createDocumentFragment:p};a.html5=s,r(b)}(this,b),e._version=d,e._prefixes=m,e._domPrefixes=p,e._cssomPrefixes=o,e.testProp=function(a){return D([a])},e.testAllProps=F,e.testStyles=w,e}(this,this.document);
|
themes/default/js/script.js
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
|
3 |
+
Supersized - Fullscreen Slideshow jQuery Plugin
|
4 |
+
Version : 3.2.7
|
5 |
+
Site : www.buildinternet.com/project/supersized
|
6 |
+
|
7 |
+
Author : Sam Dunn
|
8 |
+
Company : One Mighty Roar (www.onemightyroar.com)
|
9 |
+
License : MIT License / GPL License
|
10 |
+
|
11 |
+
*/(function(e){e(document).ready(function(){e("body").append('<div id="supersized-loader"></div><ul id="supersized"></ul>')});e.supersized=function(t){var n="#supersized",r=this;r.$el=e(n);r.el=n;vars=e.supersized.vars;r.$el.data("supersized",r);api=r.$el.data("supersized");r.init=function(){e.supersized.vars=e.extend(e.supersized.vars,e.supersized.themeVars);e.supersized.vars.options=e.extend({},e.supersized.defaultOptions,e.supersized.themeOptions,t);r.options=e.supersized.vars.options;r._build()};r._build=function(){var t=0,n="",i="",s,o="",u;while(t<=r.options.slides.length-1){switch(r.options.slide_links){case"num":s=t;break;case"name":s=r.options.slides[t].title;break;case"blank":s=""}n=n+'<li class="slide-'+t+'"></li>';if(t==r.options.start_slide-1){r.options.slide_links&&(i=i+'<li class="slide-link-'+t+' current-slide"><a>'+s+"</a></li>");if(r.options.thumb_links){r.options.slides[t].thumb?u=r.options.slides[t].thumb:u=r.options.slides[t].image;o=o+'<li class="thumb'+t+' current-thumb"><img src="'+u+'"/></li>'}}else{r.options.slide_links&&(i=i+'<li class="slide-link-'+t+'" ><a>'+s+"</a></li>");if(r.options.thumb_links){r.options.slides[t].thumb?u=r.options.slides[t].thumb:u=r.options.slides[t].image;o=o+'<li class="thumb'+t+'"><img src="'+u+'"/></li>'}}t++}r.options.slide_links&&e(vars.slide_list).html(i);r.options.thumb_links&&vars.thumb_tray.length&&e(vars.thumb_tray).append('<ul id="'+vars.thumb_list.replace("#","")+'">'+o+"</ul>");e(r.el).append(n);if(r.options.thumbnail_navigation){vars.current_slide-1<0?prevThumb=r.options.slides.length-1:prevThumb=vars.current_slide-1;e(vars.prev_thumb).show().html(e("<img/>").attr("src",r.options.slides[prevThumb].image));vars.current_slide==r.options.slides.length-1?nextThumb=0:nextThumb=vars.current_slide+1;e(vars.next_thumb).show().html(e("<img/>").attr("src",r.options.slides[nextThumb].image))}r._start()};r._start=function(){r.options.start_slide?vars.current_slide=r.options.start_slide-1:vars.current_slide=Math.floor(Math.random()*r.options.slides.length);var t=r.options.new_window?' target="_blank"':"";r.options.performance==3?r.$el.addClass("speed"):(r.options.performance==1||r.options.performance==2)&&r.$el.addClass("quality");if(r.options.random){arr=r.options.slides;for(var n,i,s=arr.length;s;n=parseInt(Math.random()*s),i=arr[--s],arr[s]=arr[n],arr[n]=i);r.options.slides=arr}if(r.options.slides.length>1){if(r.options.slides.length>2){vars.current_slide-1<0?loadPrev=r.options.slides.length-1:loadPrev=vars.current_slide-1;var o=r.options.slides[loadPrev].url?"href='"+r.options.slides[loadPrev].url+"'":"",u=e('<img src="'+r.options.slides[loadPrev].image+'"/>'),a=r.el+" li:eq("+loadPrev+")";u.appendTo(a).wrap("<a "+o+t+"></a>").parent().parent().addClass("image-loading prevslide");u.load(function(){e(this).data("origWidth",e(this).width()).data("origHeight",e(this).height());r.resizeNow()})}}else r.options.slideshow=0;o=api.getField("url")?"href='"+api.getField("url")+"'":"";var f=e('<img src="'+api.getField("image")+'"/>'),l=r.el+" li:eq("+vars.current_slide+")";f.appendTo(l).wrap("<a "+o+t+"></a>").parent().parent().addClass("image-loading activeslide");f.load(function(){r._origDim(e(this));r.resizeNow();r.launch();typeof theme!="undefined"&&typeof theme._init=="function"&&theme._init()});if(r.options.slides.length>1){vars.current_slide==r.options.slides.length-1?loadNext=0:loadNext=vars.current_slide+1;o=r.options.slides[loadNext].url?"href='"+r.options.slides[loadNext].url+"'":"";var c=e('<img src="'+r.options.slides[loadNext].image+'"/>'),h=r.el+" li:eq("+loadNext+")";c.appendTo(h).wrap("<a "+o+t+"></a>").parent().parent().addClass("image-loading");c.load(function(){e(this).data("origWidth",e(this).width()).data("origHeight",e(this).height());r.resizeNow()})}r.$el.css("visibility","hidden");e(".load-item").hide()};r.launch=function(){r.$el.css("visibility","visible");e("#supersized-loader").remove();typeof theme!="undefined"&&typeof theme.beforeAnimation=="function"&&theme.beforeAnimation("next");e(".load-item").show();r.options.keyboard_nav&&e(document.documentElement).keyup(function(e){if(vars.in_animation)return!1;if(e.keyCode==37||e.keyCode==40){clearInterval(vars.slideshow_interval);r.prevSlide()}else if(e.keyCode==39||e.keyCode==38){clearInterval(vars.slideshow_interval);r.nextSlide()}else if(e.keyCode==32&&!vars.hover_pause){clearInterval(vars.slideshow_interval);r.playToggle()}});r.options.slideshow&&r.options.pause_hover&&e(r.el).hover(function(){if(vars.in_animation)return!1;vars.hover_pause=!0;if(!vars.is_paused){vars.hover_pause="resume";r.playToggle()}},function(){if(vars.hover_pause=="resume"){r.playToggle();vars.hover_pause=!1}});r.options.slide_links&&e(vars.slide_list+"> li").click(function(){index=e(vars.slide_list+"> li").index(this);targetSlide=index+1;r.goTo(targetSlide);return!1});r.options.thumb_links&&e(vars.thumb_list+"> li").click(function(){index=e(vars.thumb_list+"> li").index(this);targetSlide=index+1;api.goTo(targetSlide);return!1});if(r.options.slideshow&&r.options.slides.length>1){r.options.autoplay&&r.options.slides.length>1?vars.slideshow_interval=setInterval(r.nextSlide,r.options.slide_interval):vars.is_paused=!0;e(".load-item img").bind("contextmenu mousedown",function(){return!1})}e(window).resize(function(){r.resizeNow()})};r.resizeNow=function(){return r.$el.each(function(){e("img",r.el).each(function(){function o(e){if(e){if(thisSlide.width()<n||thisSlide.width()<r.options.min_width)if(thisSlide.width()*t>=r.options.min_height){thisSlide.width(r.options.min_width);thisSlide.height(thisSlide.width()*t)}else u()}else if(r.options.min_height>=i&&!r.options.fit_landscape){if(n*t>=r.options.min_height||n*t>=r.options.min_height&&t<=1){thisSlide.width(n);thisSlide.height(n*t)}else if(t>1){thisSlide.height(r.options.min_height);thisSlide.width(thisSlide.height()/t)}else if(thisSlide.width()<n){thisSlide.width(n);thisSlide.height(thisSlide.width()*t)}}else{thisSlide.width(n);thisSlide.height(n*t)}}function u(e){if(e){if(thisSlide.height()<i)if(thisSlide.height()/t>=r.options.min_width){thisSlide.height(r.options.min_height);thisSlide.width(thisSlide.height()/t)}else o(!0)}else if(r.options.min_width>=n){if(i/t>=r.options.min_width||t>1){thisSlide.height(i);thisSlide.width(i/t)}else if(t<=1){thisSlide.width(r.options.min_width);thisSlide.height(thisSlide.width()*t)}}else{thisSlide.height(i);thisSlide.width(i/t)}}thisSlide=e(this);var t=(thisSlide.data("origHeight")/thisSlide.data("origWidth")).toFixed(2),n=r.$el.width(),i=r.$el.height(),s;r.options.fit_always?i/n>t?o():u():i<=r.options.min_height&&n<=r.options.min_width?i/n>t?r.options.fit_landscape&&t<1?o(!0):u(!0):r.options.fit_portrait&&t>=1?u(!0):o(!0):n<=r.options.min_width?i/n>t?r.options.fit_landscape&&t<1?o(!0):u():r.options.fit_portrait&&t>=1?u():o(!0):i<=r.options.min_height?i/n>t?r.options.fit_landscape&&t<1?o():u(!0):r.options.fit_portrait&&t>=1?u(!0):o():i/n>t?r.options.fit_landscape&&t<1?o():u():r.options.fit_portrait&&t>=1?u():o();thisSlide.parents("li").hasClass("image-loading")&&e(".image-loading").removeClass("image-loading");r.options.horizontal_center&&e(this).css("left",(n-e(this).width())/2);r.options.vertical_center&&e(this).css("top",(i-e(this).height())/2)});r.options.image_protect&&e("img",r.el).bind("contextmenu mousedown",function(){return!1});return!1})};r.nextSlide=function(){if(vars.in_animation||!api.options.slideshow)return!1;vars.in_animation=!0;clearInterval(vars.slideshow_interval);var t=r.options.slides,n=r.$el.find(".activeslide");e(".prevslide").removeClass("prevslide");n.removeClass("activeslide").addClass("prevslide");vars.current_slide+1==r.options.slides.length?vars.current_slide=0:vars.current_slide++;var i=e(r.el+" li:eq("+vars.current_slide+")"),s=r.$el.find(".prevslide");r.options.performance==1&&r.$el.removeClass("quality").addClass("speed");loadSlide=!1;vars.current_slide==r.options.slides.length-1?loadSlide=0:loadSlide=vars.current_slide+1;var o=r.el+" li:eq("+loadSlide+")";if(!e(o).html()){var u=r.options.new_window?' target="_blank"':"";imageLink=r.options.slides[loadSlide].url?"href='"+r.options.slides[loadSlide].url+"'":"";var a=e('<img src="'+r.options.slides[loadSlide].image+'"/>');a.appendTo(o).wrap("<a "+imageLink+u+"></a>").parent().parent().addClass("image-loading").css("visibility","hidden");a.load(function(){r._origDim(e(this));r.resizeNow()})}if(r.options.thumbnail_navigation==1){vars.current_slide-1<0?prevThumb=r.options.slides.length-1:prevThumb=vars.current_slide-1;e(vars.prev_thumb).html(e("<img/>").attr("src",r.options.slides[prevThumb].image));nextThumb=loadSlide;e(vars.next_thumb).html(e("<img/>").attr("src",r.options.slides[nextThumb].image))}typeof theme!="undefined"&&typeof theme.beforeAnimation=="function"&&theme.beforeAnimation("next");if(r.options.slide_links){e(".current-slide").removeClass("current-slide");e(vars.slide_list+"> li").eq(vars.current_slide).addClass("current-slide")}i.css("visibility","hidden").addClass("activeslide");switch(r.options.transition){case 0:case"none":i.css("visibility","visible");vars.in_animation=!1;r.afterAnimation();break;case 1:case"fade":i.css({opacity:0,visibility:"visible"}).animate({opacity:1,avoidTransforms:!1},r.options.transition_speed,function(){r.afterAnimation()});break;case 2:case"slideTop":i.css({top:-r.$el.height(),visibility:"visible"}).animate({top:0,avoidTransforms:!1},r.options.transition_speed,function(){r.afterAnimation()});break;case 3:case"slideRight":i.css({left:r.$el.width(),visibility:"visible"}).animate({left:0,avoidTransforms:!1},r.options.transition_speed,function(){r.afterAnimation()});break;case 4:case"slideBottom":i.css({top:r.$el.height(),visibility:"visible"}).animate({top:0,avoidTransforms:!1},r.options.transition_speed,function(){r.afterAnimation()});break;case 5:case"slideLeft":i.css({left:-r.$el.width(),visibility:"visible"}).animate({left:0,avoidTransforms:!1},r.options.transition_speed,function(){r.afterAnimation()});break;case 6:case"carouselRight":i.css({left:r.$el.width(),visibility:"visible"}).animate({left:0,avoidTransforms:!1},r.options.transition_speed,function(){r.afterAnimation()});n.animate({left:-r.$el.width(),avoidTransforms:!1},r.options.transition_speed);break;case 7:case"carouselLeft":i.css({left:-r.$el.width(),visibility:"visible"}).animate({left:0,avoidTransforms:!1},r.options.transition_speed,function(){r.afterAnimation()});n.animate({left:r.$el.width(),avoidTransforms:!1},r.options.transition_speed)}return!1};r.prevSlide=function(){if(vars.in_animation||!api.options.slideshow)return!1;vars.in_animation=!0;clearInterval(vars.slideshow_interval);var t=r.options.slides,n=r.$el.find(".activeslide");e(".prevslide").removeClass("prevslide");n.removeClass("activeslide").addClass("prevslide");vars.current_slide==0?vars.current_slide=r.options.slides.length-1:vars.current_slide--;var i=e(r.el+" li:eq("+vars.current_slide+")"),s=r.$el.find(".prevslide");r.options.performance==1&&r.$el.removeClass("quality").addClass("speed");loadSlide=vars.current_slide;var o=r.el+" li:eq("+loadSlide+")";if(!e(o).html()){var u=r.options.new_window?' target="_blank"':"";imageLink=r.options.slides[loadSlide].url?"href='"+r.options.slides[loadSlide].url+"'":"";var a=e('<img src="'+r.options.slides[loadSlide].image+'"/>');a.appendTo(o).wrap("<a "+imageLink+u+"></a>").parent().parent().addClass("image-loading").css("visibility","hidden");a.load(function(){r._origDim(e(this));r.resizeNow()})}if(r.options.thumbnail_navigation==1){loadSlide==0?prevThumb=r.options.slides.length-1:prevThumb=loadSlide-1;e(vars.prev_thumb).html(e("<img/>").attr("src",r.options.slides[prevThumb].image));vars.current_slide==r.options.slides.length-1?nextThumb=0:nextThumb=vars.current_slide+1;e(vars.next_thumb).html(e("<img/>").attr("src",r.options.slides[nextThumb].image))}typeof theme!="undefined"&&typeof theme.beforeAnimation=="function"&&theme.beforeAnimation("prev");if(r.options.slide_links){e(".current-slide").removeClass("current-slide");e(vars.slide_list+"> li").eq(vars.current_slide).addClass("current-slide")}i.css("visibility","hidden").addClass("activeslide");switch(r.options.transition){case 0:case"none":i.css("visibility","visible");vars.in_animation=!1;r.afterAnimation();break;case 1:case"fade":i.css({opacity:0,visibility:"visible"}).animate({opacity:1,avoidTransforms:!1},r.options.transition_speed,function(){r.afterAnimation()});break;case 2:case"slideTop":i.css({top:r.$el.height(),visibility:"visible"}).animate({top:0,avoidTransforms:!1},r.options.transition_speed,function(){r.afterAnimation()});break;case 3:case"slideRight":i.css({left:-r.$el.width(),visibility:"visible"}).animate({left:0,avoidTransforms:!1},r.options.transition_speed,function(){r.afterAnimation()});break;case 4:case"slideBottom":i.css({top:-r.$el.height(),visibility:"visible"}).animate({top:0,avoidTransforms:!1},r.options.transition_speed,function(){r.afterAnimation()});break;case 5:case"slideLeft":i.css({left:r.$el.width(),visibility:"visible"}).animate({left:0,avoidTransforms:!1},r.options.transition_speed,function(){r.afterAnimation()});break;case 6:case"carouselRight":i.css({left:-r.$el.width(),visibility:"visible"}).animate({left:0,avoidTransforms:!1},r.options.transition_speed,function(){r.afterAnimation()});n.css({left:0}).animate({left:r.$el.width(),avoidTransforms:!1},r.options.transition_speed);break;case 7:case"carouselLeft":i.css({left:r.$el.width(),visibility:"visible"}).animate({left:0,avoidTransforms:!1},r.options.transition_speed,function(){r.afterAnimation()});n.css({left:0}).animate({left:-r.$el.width(),avoidTransforms:!1},r.options.transition_speed)}return!1};r.playToggle=function(){if(vars.in_animation||!api.options.slideshow)return!1;if(vars.is_paused){vars.is_paused=!1;typeof theme!="undefined"&&typeof theme.playToggle=="function"&&theme.playToggle("play");vars.slideshow_interval=setInterval(r.nextSlide,r.options.slide_interval)}else{vars.is_paused=!0;typeof theme!="undefined"&&typeof theme.playToggle=="function"&&theme.playToggle("pause");clearInterval(vars.slideshow_interval)}return!1};r.goTo=function(t){if(vars.in_animation||!api.options.slideshow)return!1;var n=r.options.slides.length;t<0?t=n:t>n&&(t=1);t=n-t+1;clearInterval(vars.slideshow_interval);typeof theme!="undefined"&&typeof theme.goTo=="function"&&theme.goTo();if(vars.current_slide==n-t){vars.is_paused||(vars.slideshow_interval=setInterval(r.nextSlide,r.options.slide_interval));return!1}if(n-t>vars.current_slide){vars.current_slide=n-t-1;vars.update_images="next";r._placeSlide(vars.update_images)}else if(n-t<vars.current_slide){vars.current_slide=n-t+1;vars.update_images="prev";r._placeSlide(vars.update_images)}if(r.options.slide_links){e(vars.slide_list+"> .current-slide").removeClass("current-slide");e(vars.slide_list+"> li").eq(n-t).addClass("current-slide")}if(r.options.thumb_links){e(vars.thumb_list+"> .current-thumb").removeClass("current-thumb");e(vars.thumb_list+"> li").eq(n-t).addClass("current-thumb")}};r._placeSlide=function(t){var n=r.options.new_window?' target="_blank"':"";loadSlide=!1;if(t=="next"){vars.current_slide==r.options.slides.length-1?loadSlide=0:loadSlide=vars.current_slide+1;var i=r.el+" li:eq("+loadSlide+")";if(!e(i).html()){var n=r.options.new_window?' target="_blank"':"";imageLink=r.options.slides[loadSlide].url?"href='"+r.options.slides[loadSlide].url+"'":"";var s=e('<img src="'+r.options.slides[loadSlide].image+'"/>');s.appendTo(i).wrap("<a "+imageLink+n+"></a>").parent().parent().addClass("image-loading").css("visibility","hidden");s.load(function(){r._origDim(e(this));r.resizeNow()})}r.nextSlide()}else if(t=="prev"){vars.current_slide-1<0?loadSlide=r.options.slides.length-1:loadSlide=vars.current_slide-1;var i=r.el+" li:eq("+loadSlide+")";if(!e(i).html()){var n=r.options.new_window?' target="_blank"':"";imageLink=r.options.slides[loadSlide].url?"href='"+r.options.slides[loadSlide].url+"'":"";var s=e('<img src="'+r.options.slides[loadSlide].image+'"/>');s.appendTo(i).wrap("<a "+imageLink+n+"></a>").parent().parent().addClass("image-loading").css("visibility","hidden");s.load(function(){r._origDim(e(this));r.resizeNow()})}r.prevSlide()}};r._origDim=function(e){e.data("origWidth",e.width()).data("origHeight",e.height())};r.afterAnimation=function(){r.options.performance==1&&r.$el.removeClass("speed").addClass("quality");if(vars.update_images){vars.current_slide-1<0?setPrev=r.options.slides.length-1:setPrev=vars.current_slide-1;vars.update_images=!1;e(".prevslide").removeClass("prevslide");e(r.el+" li:eq("+setPrev+")").addClass("prevslide")}vars.in_animation=!1;if(!vars.is_paused&&r.options.slideshow){vars.slideshow_interval=setInterval(r.nextSlide,r.options.slide_interval);r.options.stop_loop&&vars.current_slide==r.options.slides.length-1&&r.playToggle()}typeof theme!="undefined"&&typeof theme.afterAnimation=="function"&&theme.afterAnimation();return!1};r.getField=function(e){return r.options.slides[vars.current_slide][e]};r.init()};e.supersized.vars={thumb_tray:"#thumb-tray",thumb_list:"#thumb-list",slide_list:"#slide-list",current_slide:0,in_animation:!1,is_paused:!1,hover_pause:!1,slideshow_interval:!1,update_images:!1,options:{}};e.supersized.defaultOptions={slideshow:1,autoplay:1,start_slide:1,stop_loop:0,random:0,slide_interval:5e3,transition:1,transition_speed:750,new_window:1,pause_hover:0,keyboard_nav:1,performance:1,image_protect:1,fit_always:0,fit_landscape:0,fit_portrait:1,min_width:0,min_height:0,horizontal_center:1,vertical_center:1,slide_links:1,thumb_links:1,thumbnail_navigation:0};e.fn.supersized=function(t){return this.each(function(){new e.supersized(t)})}})(jQuery);
|
12 |
+
|
themes/default/rtl.css
ADDED
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* RTL Support */
|
2 |
+
|
3 |
+
body {
|
4 |
+
direction:rtl;
|
5 |
+
unicode-bidi:embed;
|
6 |
+
}
|
7 |
+
|
8 |
+
.input-append .add-on:last-child, .input-append .btn:last-child {
|
9 |
+
-webkit-border-radius: 3px 0 0 3px;
|
10 |
+
-moz-border-radius: 3px 0 0 3px;
|
11 |
+
border-radius: 3px 0 0 3px;
|
12 |
+
}
|
13 |
+
|
14 |
+
.input-append input, .input-append select, .input-append .uneditable-input {
|
15 |
+
-webkit-border-radius: 0 3px 3px 0;
|
16 |
+
-moz-border-radius: 0 3px 3px 0;
|
17 |
+
border-radius: 0 3px 3px 0;
|
18 |
+
}
|
themes/default/style.css
ADDED
@@ -0,0 +1,141 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* Styles */
|
2 |
+
body{
|
3 |
+
text-align:center;
|
4 |
+
padding:60px 20px 0;
|
5 |
+
}
|
6 |
+
|
7 |
+
#seed-csp4-content{
|
8 |
+
max-width:600px;
|
9 |
+
margin:0 auto;
|
10 |
+
}
|
11 |
+
|
12 |
+
#seed-csp4-content img{
|
13 |
+
max-width: 100%;
|
14 |
+
height: auto;
|
15 |
+
}
|
16 |
+
|
17 |
+
#seed-csp4-image{
|
18 |
+
margin-bottom:20px;
|
19 |
+
}
|
20 |
+
|
21 |
+
#seed-csp4-headline{
|
22 |
+
margin-top: 0;
|
23 |
+
}
|
24 |
+
|
25 |
+
#seed-csp4-description{
|
26 |
+
}
|
27 |
+
|
28 |
+
#seed-csp4-footer{
|
29 |
+
|
30 |
+
}
|
31 |
+
|
32 |
+
#seed-csp4-credit{
|
33 |
+
position: fixed;
|
34 |
+
bottom:0;
|
35 |
+
right:20px;
|
36 |
+
background-color: #000;
|
37 |
+
background-color: rgba(0, 0, 0, 0.70);
|
38 |
+
padding:1px 5px 2px;
|
39 |
+
border-radius: 4px 4px 0px 0px;
|
40 |
+
}
|
41 |
+
|
42 |
+
.placeholder { color: #aaa; }
|
43 |
+
|
44 |
+
|
45 |
+
/* =WordPress Core
|
46 |
+
-------------------------------------------------------------- */
|
47 |
+
.alignnone {
|
48 |
+
margin: 5px 20px 20px 0;
|
49 |
+
}
|
50 |
+
|
51 |
+
.aligncenter, div.aligncenter {
|
52 |
+
display:block;
|
53 |
+
margin: 5px auto 5px auto;
|
54 |
+
}
|
55 |
+
|
56 |
+
.alignright {
|
57 |
+
float:right;
|
58 |
+
margin: 5px 0 20px 20px;
|
59 |
+
}
|
60 |
+
|
61 |
+
.alignleft {
|
62 |
+
float:left;
|
63 |
+
margin: 5px 20px 20px 0;
|
64 |
+
}
|
65 |
+
|
66 |
+
.aligncenter {
|
67 |
+
display: block;
|
68 |
+
margin: 5px auto 5px auto;
|
69 |
+
}
|
70 |
+
|
71 |
+
a img.alignright {
|
72 |
+
float:right;
|
73 |
+
margin: 5px 0 20px 20px;
|
74 |
+
}
|
75 |
+
|
76 |
+
a img.alignnone {
|
77 |
+
margin: 5px 20px 20px 0;
|
78 |
+
}
|
79 |
+
|
80 |
+
a img.alignleft {
|
81 |
+
float:left;
|
82 |
+
margin: 5px 20px 20px 0;
|
83 |
+
}
|
84 |
+
|
85 |
+
a img.aligncenter {
|
86 |
+
display: block;
|
87 |
+
margin-left: auto;
|
88 |
+
margin-right: auto
|
89 |
+
}
|
90 |
+
|
91 |
+
.wp-caption {
|
92 |
+
background: #fff;
|
93 |
+
border: 1px solid #f0f0f0;
|
94 |
+
max-width: 96%; /* Image does not overflow the content area */
|
95 |
+
padding: 5px 3px 10px;
|
96 |
+
text-align: center;
|
97 |
+
}
|
98 |
+
|
99 |
+
.wp-caption.alignnone {
|
100 |
+
margin: 5px 20px 20px 0;
|
101 |
+
}
|
102 |
+
|
103 |
+
.wp-caption.alignleft {
|
104 |
+
margin: 5px 20px 20px 0;
|
105 |
+
}
|
106 |
+
|
107 |
+
.wp-caption.alignright {
|
108 |
+
margin: 5px 0 20px 20px;
|
109 |
+
}
|
110 |
+
|
111 |
+
.wp-caption img {
|
112 |
+
border: 0 none;
|
113 |
+
height: auto;
|
114 |
+
margin:0;
|
115 |
+
max-width: 98.5%;
|
116 |
+
padding:0;
|
117 |
+
width: auto;
|
118 |
+
}
|
119 |
+
|
120 |
+
.wp-caption p.wp-caption-text {
|
121 |
+
font-size:11px;
|
122 |
+
line-height:17px;
|
123 |
+
margin:0;
|
124 |
+
padding:0 4px 5px;
|
125 |
+
}
|
126 |
+
|
127 |
+
|
128 |
+
/* =Supersized
|
129 |
+
-------------------------------------------------------------- */
|
130 |
+
#supersized-loader { position:absolute; top:50%; left:50%; z-index:0; width:60px; height:60px; margin:-30px 0 0 -30px; text-indent:-999em; }
|
131 |
+
#supersized img{max-width:none;}
|
132 |
+
#supersized { display:none; position:fixed; left:0; top:0; overflow:hidden; z-index:-999; height:100%; width:100%;margin:0; }
|
133 |
+
#supersized img { width:auto; height:auto; position:relative; display:none; outline:none; border:none; }
|
134 |
+
#supersized.speed img { -ms-interpolation-mode:nearest-neighbor; image-rendering: -moz-crisp-edges; } /*Speed*/
|
135 |
+
#supersized.quality img { -ms-interpolation-mode:bicubic; image-rendering: optimizeQuality; } /*Quality*/
|
136 |
+
#supersized li { display:block; list-style:none; z-index:-30; position:fixed; overflow:hidden; top:0; left:0; width:100%; height:100%; background:#111; }
|
137 |
+
#supersized a { width:100%; height:100%; display:block; }
|
138 |
+
#supersized li.prevslide { z-index:-20; }
|
139 |
+
#supersized li.activeslide { z-index:-10; }
|
140 |
+
#supersized li.image-loading img{ visibility:hidden; }
|
141 |
+
#supersized li.prevslide img, #supersized li.activeslide img{ display:inline; }
|
themes/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
// shhhhhh
|