Version Description
- The design of the plugin settings page is completely redone.
- Added additional donate link to the "Plugins" page.
- The 'Using' section renamed to 'Usage'.
- My Unicode signature added to the main file.
- The donate button replaced with new.
- The 'Donate' section renamed to 'Support'.
- The 'donate.png' image removed.
- Options from the settings page moved to a separate file.
- The "Usage" section removed from the sidebar area.
- Additional "Support" section added.
- Added tab navigation menu for the settings page.
- Added additional tabs on the settings page.
- Code of the 'admin.css' file improved and better commented.
- A full version of the Bootstrap framework is integrated.
- The 'MCFunctions_load_scripts' function renamed to 'MCFunctions_load_scripts_admin'.
- Added the CSS code for the custom list numbers on the plugin settings page.
- The main font is changed to "Verdana".
- All PHP and HTML code is better formatted.
- The header on the settings page of plugin is redesigned.
- The "LICENSE.txt" file renamed to "license.txt".
- The "humans.txt" file added.
- Messages from the plugin settings page moved to a separate file "messages.php".
- The "_service_info" setting added to the data-base.
- Added function for managing information about the version number of the plugin.
- Added the "Hello" message that show when the plugin is just installed.
- Added the "Error" message that show when user is trying to degrade the version number of the plugin.
- Fixed the parameter that contain the path to source files in all translation files.
- The POT file updated.
- Translations updated.
Download this release
Release Info
Developer | Arthur Gareginyan |
Plugin | My Custom Functions |
Version | 4.0 |
Comparing to | |
See all releases |
Code changes from version 3.5 to 4.0
- humans.txt +39 -0
- inc/css/admin.css +389 -23
- inc/img/donate.png +0 -0
- inc/js/admin.js +25 -4
- inc/lib/bootstrap/bootstrap-theme.css +5 -0
- inc/lib/bootstrap/bootstrap.css +5 -0
- inc/lib/bootstrap/bootstrap.js +7 -0
- inc/lib/codemirror/codemirror-compressed.js +1 -1
- inc/php/core.php +89 -0
- inc/php/enqueue.php +39 -0
- inc/php/functional.php +100 -0
- inc/php/messages.php +116 -0
- inc/php/page.php +224 -0
- inc/php/settings.php +104 -0
- inc/php/settings_page.php +0 -144
- inc/php/uninstall.php +19 -0
- inc/php/version.php +70 -0
- languages/Readme.txt +2 -1
- languages/my-custom-functions-es_ES.mo +0 -0
- languages/my-custom-functions-es_ES.po +279 -600
- languages/my-custom-functions-fr_FR.mo +0 -0
- languages/my-custom-functions-fr_FR.po +359 -59
- languages/my-custom-functions-ru_RU.mo +0 -0
- languages/my-custom-functions-ru_RU.po +367 -60
- languages/my-custom-functions-zh_TW.mo +0 -0
- languages/my-custom-functions-zh_TW.po +343 -51
- languages/my-custom-functions.pot +313 -46
- LICENSE.txt → license.txt +1 -1
- my-custom-functions.php +29 -187
- readme.txt +127 -51
humans.txt
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
***************************************************************************************
|
2 |
+
* *
|
3 |
+
* █████╗ ██████╗ ████████╗██╗ ██╗██╗ ██╗██████╗ *
|
4 |
+
* ██╔══██╗██╔══██╗╚══██╔══╝██║ ██║██║ ██║██╔══██╗ *
|
5 |
+
* ███████║██████╔╝ ██║ ███████║██║ ██║██████╔╝ *
|
6 |
+
* ██╔══██║██╔══██╗ ██║ ██╔══██║██║ ██║██╔══██╗ *
|
7 |
+
* ██║ ██║██║ ██║ ██║ ██║ ██║╚██████╔╝██║ ██║ *
|
8 |
+
* ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝ *
|
9 |
+
* *
|
10 |
+
* ██████╗ █████╗ ██████╗ ███████╗ ██████╗ ██╗███╗ ██╗██╗ ██╗ █████╗ ███╗ ██╗ *
|
11 |
+
* ██╔════╝ ██╔══██╗██╔══██╗██╔════╝██╔════╝ ██║████╗ ██║╚██╗ ██╔╝██╔══██╗████╗ ██║ *
|
12 |
+
* ██║ ███╗███████║██████╔╝█████╗ ██║ ███╗██║██╔██╗ ██║ ╚████╔╝ ███████║██╔██╗ ██║ *
|
13 |
+
* ██║ ██║██╔══██║██╔══██╗██╔══╝ ██║ ██║██║██║╚██╗██║ ╚██╔╝ ██╔══██║██║╚██╗██║ *
|
14 |
+
* ╚██████╔╝██║ ██║██║ ██║███████╗╚██████╔╝██║██║ ╚████║ ██║ ██║ ██║██║ ╚████║ *
|
15 |
+
* ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝ ╚═════╝ ╚═╝╚═╝ ╚═══╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═══╝ *
|
16 |
+
* *
|
17 |
+
***************************************************************************************
|
18 |
+
|
19 |
+
We are the humans behind the plugin
|
20 |
+
|
21 |
+
/* TEAM */
|
22 |
+
Name: Arthur Gareginyan
|
23 |
+
Site: www.arthurgareginyan.com
|
24 |
+
Title: Founding Developer
|
25 |
+
Twitter: AGareginyan
|
26 |
+
Location: Moscow, Russia
|
27 |
+
|
28 |
+
Name: Milena Kiseleva
|
29 |
+
Title: Muse
|
30 |
+
Twitter: MilavaKiseleva
|
31 |
+
Location: Moscow, Russia
|
32 |
+
|
33 |
+
|
34 |
+
/* THANKS */
|
35 |
+
|
36 |
+
|
37 |
+
/* META */
|
38 |
+
Last update: 2017/04/28
|
39 |
+
See: http://humanstxt.org/
|
inc/css/admin.css
CHANGED
@@ -1,40 +1,128 @@
|
|
1 |
/*
|
2 |
* Style sheet for plugin settings page
|
3 |
*
|
4 |
-
*
|
5 |
-
*
|
|
|
|
|
|
|
6 |
*/
|
7 |
|
8 |
|
9 |
-
/*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10 |
-------------------------------------------------------------- */
|
11 |
h2 {
|
|
|
|
|
|
|
|
|
|
|
12 |
text-align: center;
|
13 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
}
|
15 |
-
|
16 |
h2 span {
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
22 |
}
|
23 |
-
|
24 |
-
h2 span a {
|
25 |
-
|
26 |
-
|
|
|
|
|
|
|
|
|
|
|
27 |
}
|
28 |
|
|
|
|
|
29 |
h3.title {
|
30 |
font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
|
|
|
|
|
31 |
border-bottom: 1px solid #eee;
|
32 |
}
|
33 |
|
34 |
-
/*
|
35 |
-------------------------------------------------------------- */
|
36 |
-
|
37 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
38 |
}
|
39 |
|
40 |
/* Sidebar
|
@@ -51,17 +139,296 @@ h3.title {
|
|
51 |
margin: 0;
|
52 |
}
|
53 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
54 |
/* Responsive page
|
55 |
-------------------------------------------------------------- */
|
56 |
@media (max-width: 860px) {
|
57 |
.inner-sidebar {
|
58 |
display: none !important;
|
59 |
}
|
|
|
|
|
|
|
60 |
#post-body-content {
|
61 |
margin-right: 0 !important;
|
62 |
}
|
63 |
}
|
64 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
65 |
/* CodeMirror Editor
|
66 |
-------------------------------------------------------------- */
|
67 |
.CodeMirror {
|
@@ -71,10 +438,10 @@ h3.title {
|
|
71 |
margin-right: 5px;
|
72 |
}
|
73 |
|
74 |
-
/*
|
75 |
-------------------------------------------------------------- */
|
76 |
-
|
77 |
-
|
78 |
}
|
79 |
|
80 |
/* On/Off Trigger
|
@@ -82,8 +449,7 @@ h3.title {
|
|
82 |
.trigger {
|
83 |
margin-left: auto;
|
84 |
margin-right: 0;
|
85 |
-
margin-top: -
|
86 |
-
height: 23px;
|
87 |
padding-top: 5px;
|
88 |
width: 80px;
|
89 |
background: #f2f2f2;
|
@@ -150,4 +516,4 @@ h3.title {
|
|
150 |
|
151 |
.trigger input[type=checkbox]:checked + label {
|
152 |
left: 43px;
|
153 |
-
}
|
1 |
/*
|
2 |
* Style sheet for plugin settings page
|
3 |
*
|
4 |
+
* @package My Custom Functions
|
5 |
+
* @uthor Arthur Gareginyan
|
6 |
+
* @link http://www.arthurgareginyan.com
|
7 |
+
* @copyright Copyright (c) 2016-2017 Arthur Gareginyan. All Rights Reserved.
|
8 |
+
* @since 4.0
|
9 |
*/
|
10 |
|
11 |
|
12 |
+
/* Main
|
13 |
+
-------------------------------------------------------------- */
|
14 |
+
body {
|
15 |
+
background: #f1f1f1 !important;
|
16 |
+
}
|
17 |
+
p {
|
18 |
+
font-family: Verdana, Geneva, sans-serif;
|
19 |
+
font-size: 13px;
|
20 |
+
}
|
21 |
+
.postbox a {
|
22 |
+
text-decoration: none;
|
23 |
+
}
|
24 |
+
|
25 |
+
/* Title and Description of page
|
26 |
-------------------------------------------------------------- */
|
27 |
h2 {
|
28 |
+
padding: 30px 30px !important;
|
29 |
+
background-color: #333;
|
30 |
+
color: #e0dfdc !important;
|
31 |
+
font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif !important;
|
32 |
+
font-size: 60px !important;
|
33 |
text-align: center;
|
34 |
+
text-transform: uppercase;
|
35 |
+
text-rendering: optimizeLegibility;
|
36 |
+
text-shadow: 0 -1px 0 #fff,
|
37 |
+
0 1px 0 #2e2e2e,
|
38 |
+
0 2px 0 #2a2a2a,
|
39 |
+
0 3px 0 #262626,
|
40 |
+
0 4px 0 #222,
|
41 |
+
0 5px 0 #1e1e1e,
|
42 |
+
0 6px 0 #1a1a1a,
|
43 |
+
0 7px 0 #161616,
|
44 |
+
0 8px 0 #121212,
|
45 |
+
0 22px 30px rgba(0, 0, 0, 0.9);
|
46 |
+
letter-spacing: .1em;
|
47 |
+
line-height: 50px !important;
|
48 |
+
overflow: hidden;
|
49 |
}
|
|
|
50 |
h2 span {
|
51 |
+
content: '\A';
|
52 |
+
display: block ;
|
53 |
+
margin-top: 15px;
|
54 |
+
font-size: 16px;
|
55 |
+
text-shadow: 0 -1px 0 #fff,
|
56 |
+
0 1px 0 #2e2e2e,
|
57 |
+
0 2px 0 #2a2a2a,
|
58 |
+
0 3px 0 #262626,
|
59 |
+
0 4px 0 #222,
|
60 |
+
0 5px 0 #1e1e1e,
|
61 |
+
0 6px 0 #1a1a1a,
|
62 |
+
0 7px 0 #161616,
|
63 |
+
0 8px 0 #121212,
|
64 |
+
0 22px 30px rgba(0, 0, 0, 0.9);
|
65 |
+
line-height: 20px !important;
|
66 |
}
|
67 |
+
h2 span a,
|
68 |
+
h2 span a:hover {
|
69 |
+
color: #ffffff;
|
70 |
+
}
|
71 |
+
h2 span a:hover {
|
72 |
+
text-shadow: none;
|
73 |
+
text-decoration: none;
|
74 |
+
-webkit-transition: all 0.2s ease-in-out;
|
75 |
+
transition: all 0.2s ease-in-out;
|
76 |
}
|
77 |
|
78 |
+
/* Titles and Descriptions of sections
|
79 |
+
-------------------------------------------------------------- */
|
80 |
h3.title {
|
81 |
font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
|
82 |
+
font-size: 16px !important;
|
83 |
+
font-weight: 400;
|
84 |
border-bottom: 1px solid #eee;
|
85 |
}
|
86 |
|
87 |
+
/* Modal - PopUp windows
|
88 |
-------------------------------------------------------------- */
|
89 |
+
.modal-dialog {
|
90 |
+
margin-top: 15% !important;
|
91 |
+
}
|
92 |
+
.hello-message .modal-body {
|
93 |
+
height: 180px;
|
94 |
+
}
|
95 |
+
.hello-message .modal-body img {
|
96 |
+
float: left;
|
97 |
+
width: 150px;
|
98 |
+
height: 150px;
|
99 |
+
padding: 10px;
|
100 |
+
margin-right: 20px;
|
101 |
+
border-radius: 15px;
|
102 |
+
}
|
103 |
+
.hello-message .modal-body p {
|
104 |
+
font-size: 16px;
|
105 |
+
}
|
106 |
+
.hello-message .modal-body p:first-of-type {
|
107 |
+
padding-top: 5%;
|
108 |
+
}
|
109 |
+
.error-message .modal-body {
|
110 |
+
padding: 30px;
|
111 |
+
text-align: center;
|
112 |
+
}
|
113 |
+
|
114 |
+
/* Notes
|
115 |
+
-------------------------------------------------------------- */
|
116 |
+
.note {
|
117 |
+
padding: 0.30em 1.0em;
|
118 |
+
border-left: 3px solid #05c2ff;
|
119 |
+
border-right: 3px solid #05c2ff;
|
120 |
+
background: rgba(5, 194, 255, 0.09);
|
121 |
+
font-family: Verdana, Geneva, sans-serif;
|
122 |
+
font-size: 13px;
|
123 |
+
color: #646464;
|
124 |
+
padding-left: 15px;
|
125 |
+
letter-spacing: 0.1px;
|
126 |
}
|
127 |
|
128 |
/* Sidebar
|
139 |
margin: 0;
|
140 |
}
|
141 |
|
142 |
+
#side-sortables .paypal {
|
143 |
+
font-size: 18px;
|
144 |
+
}
|
145 |
+
|
146 |
+
/* Support - addition section
|
147 |
+
-------------------------------------------------------------- */
|
148 |
+
#support-addition {
|
149 |
+
display: none;
|
150 |
+
}
|
151 |
+
#support-addition .paypal {
|
152 |
+
font-size: 18px;
|
153 |
+
}
|
154 |
+
|
155 |
/* Responsive page
|
156 |
-------------------------------------------------------------- */
|
157 |
@media (max-width: 860px) {
|
158 |
.inner-sidebar {
|
159 |
display: none !important;
|
160 |
}
|
161 |
+
#support-addition {
|
162 |
+
display: block;
|
163 |
+
}
|
164 |
#post-body-content {
|
165 |
margin-right: 0 !important;
|
166 |
}
|
167 |
}
|
168 |
|
169 |
+
/* Tabs pages
|
170 |
+
-------------------------------------------------------------- */
|
171 |
+
.tab-page {
|
172 |
+
display: none;
|
173 |
+
}
|
174 |
+
.tab-page.active {
|
175 |
+
display: block;
|
176 |
+
}
|
177 |
+
.tab-page li {
|
178 |
+
font-family: Verdana, Geneva, sans-serif;
|
179 |
+
font-size: 13px;
|
180 |
+
}
|
181 |
+
|
182 |
+
/* Tabs navigation menu
|
183 |
+
-------------------------------------------------------------- */
|
184 |
+
.tabs-nav {
|
185 |
+
font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
|
186 |
+
font-weight: 400;
|
187 |
+
font-size: 16px;
|
188 |
+
display: -webkit-box;
|
189 |
+
display: -webkit-flex;
|
190 |
+
display: -ms-flexbox;
|
191 |
+
display: flex;
|
192 |
+
height: 50px;
|
193 |
+
margin: -11px 0px 18px 0px;
|
194 |
+
background: #ffffff;
|
195 |
+
border: 1px solid rgba(34, 36, 38, 0.15);
|
196 |
+
box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15);
|
197 |
+
border-radius: 0.30rem;
|
198 |
+
}
|
199 |
+
.tabs-nav:after {
|
200 |
+
content: '';
|
201 |
+
display: block;
|
202 |
+
height: 0px;
|
203 |
+
clear: both;
|
204 |
+
visibility: hidden;
|
205 |
+
}
|
206 |
+
|
207 |
+
.tabs-nav li {
|
208 |
+
position: relative;
|
209 |
+
display: block;
|
210 |
+
float: left;
|
211 |
+
margin-bottom: 0px;
|
212 |
+
}
|
213 |
+
.tabs-nav li:first-of-type a {
|
214 |
+
border-radius: 3px 0 0 3px;
|
215 |
+
}
|
216 |
+
.tabs-nav li.active:before {
|
217 |
+
position: absolute;
|
218 |
+
content: '';
|
219 |
+
top: 0%;
|
220 |
+
right: 0px;
|
221 |
+
height: 100%;
|
222 |
+
width: 1px;
|
223 |
+
background: rgba(34, 36, 38, 0.1);
|
224 |
+
}
|
225 |
+
.tabs-nav li.active:after {
|
226 |
+
background-color: #f2f2f2;
|
227 |
+
position: absolute;
|
228 |
+
content: '';
|
229 |
+
top: 100%;
|
230 |
+
left: 50%;
|
231 |
+
-webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
|
232 |
+
-ms-transform: translateX(-50%) translateY(-50%) rotate(45deg);
|
233 |
+
transform: translateX(-50%) translateY(-50%) rotate(45deg);
|
234 |
+
margin: 0.8px 0em 0em;
|
235 |
+
width: 0.6em;
|
236 |
+
height: 0.6em;
|
237 |
+
border: none;
|
238 |
+
border-bottom: 1px solid #d4d4d5;
|
239 |
+
border-right: 1px solid #d4d4d5;
|
240 |
+
-webkit-transition: background 0.1s ease;
|
241 |
+
transition: background 0.1s ease;
|
242 |
+
}
|
243 |
+
|
244 |
+
.tabs-nav li a {
|
245 |
+
position: relative;
|
246 |
+
display: block;
|
247 |
+
padding: 10px 15px;
|
248 |
+
text-decoration: none;
|
249 |
+
line-height: 1.8;
|
250 |
+
color: grey;
|
251 |
+
border-left: 1px solid;
|
252 |
+
border-right: 1px solid;
|
253 |
+
border-color: #ffffff;
|
254 |
+
}
|
255 |
+
.tabs-nav li a:hover,
|
256 |
+
.tabs-nav li a:focus {
|
257 |
+
text-decoration: none;
|
258 |
+
background: rgba(0, 0, 0, 0.03);
|
259 |
+
border-color: #eeeeee;
|
260 |
+
}
|
261 |
+
.tabs-nav li.active a,
|
262 |
+
.tabs-nav li.active a:hover,
|
263 |
+
.tabs-nav li.active a:focus {
|
264 |
+
background: rgba(0, 0, 0, 0.05);
|
265 |
+
color: rgba(0, 0, 0, 0.95);
|
266 |
+
font-weight: normal;
|
267 |
+
border-color: #eeeeee;
|
268 |
+
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
|
269 |
+
box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
|
270 |
+
}
|
271 |
+
|
272 |
+
@media (max-width:500px) {
|
273 |
+
.tabs-nav li:last-of-type {
|
274 |
+
display: none;
|
275 |
+
}
|
276 |
+
}
|
277 |
+
@media (max-width:413px) {
|
278 |
+
.tabs-nav li:nth-last-of-type(2) {
|
279 |
+
display: none;
|
280 |
+
}
|
281 |
+
}
|
282 |
+
|
283 |
+
/* Spoilers
|
284 |
+
-------------------------------------------------------------- */
|
285 |
+
.panel-group {
|
286 |
+
margin-top: 10px;
|
287 |
+
}
|
288 |
+
.panel-heading a {
|
289 |
+
text-decoration: none !important;
|
290 |
+
}
|
291 |
+
.panel-title,
|
292 |
+
.panel-title:before,
|
293 |
+
.panel-body:before {
|
294 |
+
font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
|
295 |
+
font-size: 16px;
|
296 |
+
font-weight: 400;
|
297 |
+
color: #6d6d6d !important;
|
298 |
+
text-shadow: 1px 1px 0px #fff;
|
299 |
+
}
|
300 |
+
.panel-title:before {
|
301 |
+
content: "Q.";
|
302 |
+
display: inline-block;
|
303 |
+
color: red !important;
|
304 |
+
padding-right: 8px;
|
305 |
+
}
|
306 |
+
.panel-title:after {
|
307 |
+
content: "\25BC";
|
308 |
+
display: inline-block;
|
309 |
+
float: right;
|
310 |
+
margin: 0;
|
311 |
+
background: none;
|
312 |
+
border: 0;
|
313 |
+
cursor: pointer;
|
314 |
+
color: gray;
|
315 |
+
}
|
316 |
+
.panel-title > div {
|
317 |
+
display: inline;
|
318 |
+
}
|
319 |
+
.panel-body:before {
|
320 |
+
content: "A." !important;
|
321 |
+
display: inline-block !important;
|
322 |
+
color: #00a5e2 !important;
|
323 |
+
padding-right: 8px;
|
324 |
+
}
|
325 |
+
.panel-body {
|
326 |
+
display: inline-block;
|
327 |
+
font-family: Verdana, Geneva, sans-serif;
|
328 |
+
font-size: 13px;
|
329 |
+
}
|
330 |
+
.panel-body > div {
|
331 |
+
display: inline;
|
332 |
+
}
|
333 |
+
|
334 |
+
/* Custom List Numbers
|
335 |
+
-------------------------------------------------------------- */
|
336 |
+
.custom-counter {
|
337 |
+
margin-top: 15px;
|
338 |
+
margin-left: 50px;
|
339 |
+
margin-bottom: 30px;
|
340 |
+
list-style-type: none;
|
341 |
+
}
|
342 |
+
.custom-counter li {
|
343 |
+
counter-increment: step-counter;
|
344 |
+
margin-bottom: 15px;
|
345 |
+
}
|
346 |
+
.custom-counter li::before {
|
347 |
+
content: counter(step-counter);
|
348 |
+
margin-left: -30px;
|
349 |
+
margin-right: 8px;
|
350 |
+
font-size: 90%;
|
351 |
+
background-color: rgb(0,200,200);
|
352 |
+
color: white;
|
353 |
+
font-weight: bold;
|
354 |
+
padding: 4px 7px;
|
355 |
+
border-radius: 50%;
|
356 |
+
}
|
357 |
+
|
358 |
+
/* WordPress Color Picker
|
359 |
+
-------------------------------------------------------------- */
|
360 |
+
.wp-picker-container a {
|
361 |
+
text-decoration: none !important;
|
362 |
+
}
|
363 |
+
.wp-color-result {
|
364 |
+
height: 30px;
|
365 |
+
}
|
366 |
+
.wp-color-result:after {
|
367 |
+
line-height: 28px;
|
368 |
+
}
|
369 |
+
|
370 |
+
/* ON/OFF Buttons
|
371 |
+
-------------------------------------------------------------- */
|
372 |
+
.btn {
|
373 |
+
border-radius: 0 !important;
|
374 |
+
}
|
375 |
+
|
376 |
+
/* Form-table
|
377 |
+
-------------------------------------------------------------- */
|
378 |
+
.form-table {
|
379 |
+
clear: none;
|
380 |
+
margin-left: 20px;
|
381 |
+
font-family: Verdana, Geneva, sans-serif;
|
382 |
+
font-size: 13px;
|
383 |
+
}
|
384 |
+
.form-table tr {
|
385 |
+
vertical-align: top;
|
386 |
+
}
|
387 |
+
.form-table th,
|
388 |
+
.form-table td {
|
389 |
+
padding-bottom: 10px;
|
390 |
+
}
|
391 |
+
|
392 |
+
/* Help text
|
393 |
+
-------------------------------------------------------------- */
|
394 |
+
td.help-text {
|
395 |
+
width: 90%;
|
396 |
+
font-family: Verdana, Geneva, sans-serif;
|
397 |
+
font-size: 12px !important;
|
398 |
+
font-style: italic;
|
399 |
+
float: left;
|
400 |
+
clear: left;
|
401 |
+
color: #797979;
|
402 |
+
line-height: 15px;
|
403 |
+
padding-top: 0px !important;
|
404 |
+
}
|
405 |
+
|
406 |
+
/* INPUT and TEXTAREA
|
407 |
+
-------------------------------------------------------------- */
|
408 |
+
textarea {
|
409 |
+
max-width: 600px;
|
410 |
+
width: 90%;
|
411 |
+
}
|
412 |
+
.form-table input[type=text] {
|
413 |
+
max-width: 90%;
|
414 |
+
}
|
415 |
+
|
416 |
+
textarea,
|
417 |
+
.form-table input[type=text] {
|
418 |
+
padding-top: 5px;
|
419 |
+
background: #fcfcfc;
|
420 |
+
-webkit-border-radius: 3px;
|
421 |
+
-moz-border-radius: 3px;
|
422 |
+
border-radius: 3px;
|
423 |
+
position: relative;
|
424 |
+
-webkit-box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.5), 0px 1px 0px rgba(255, 255, 255, 0.2);
|
425 |
+
-moz-box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.5), 0px 1px 0px rgba(255, 255, 255, 0.2);
|
426 |
+
box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.5), 0px 1px 0px rgba(255, 255, 255, 0.2);
|
427 |
+
}
|
428 |
+
|
429 |
+
/* SPECIFIC TO THIS PLUGIN
|
430 |
+
-------------------------------------------------------------- */
|
431 |
+
|
432 |
/* CodeMirror Editor
|
433 |
-------------------------------------------------------------- */
|
434 |
.CodeMirror {
|
438 |
margin-right: 5px;
|
439 |
}
|
440 |
|
441 |
+
/* Messages
|
442 |
-------------------------------------------------------------- */
|
443 |
+
#setting-error-settings_updated {
|
444 |
+
display: none;
|
445 |
}
|
446 |
|
447 |
/* On/Off Trigger
|
449 |
.trigger {
|
450 |
margin-left: auto;
|
451 |
margin-right: 0;
|
452 |
+
margin-top: -26px;
|
|
|
453 |
padding-top: 5px;
|
454 |
width: 80px;
|
455 |
background: #f2f2f2;
|
516 |
|
517 |
.trigger input[type=checkbox]:checked + label {
|
518 |
left: 43px;
|
519 |
+
}
|
inc/img/donate.png
DELETED
Binary file
|
inc/js/admin.js
CHANGED
@@ -1,8 +1,11 @@
|
|
1 |
/*
|
2 |
-
*
|
3 |
*
|
4 |
-
*
|
5 |
-
*
|
|
|
|
|
|
|
6 |
*/
|
7 |
|
8 |
|
@@ -36,4 +39,22 @@ jQuery(document).ready(function($) {
|
|
36 |
}, 3000);
|
37 |
}
|
38 |
|
39 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
/*
|
2 |
+
* Plugin JavaScript and JQuery code for the admin pages of website
|
3 |
*
|
4 |
+
* @package My Custom Functions
|
5 |
+
* @uthor Arthur Gareginyan
|
6 |
+
* @link http://www.arthurgareginyan.com
|
7 |
+
* @copyright Copyright (c) 2016-2017 Arthur Gareginyan. All Rights Reserved.
|
8 |
+
* @since 4.0
|
9 |
*/
|
10 |
|
11 |
|
39 |
}, 3000);
|
40 |
}
|
41 |
|
42 |
+
// Dynamic content
|
43 |
+
$( ".include-tab-author" ).load( "http://mycyberuniverse.com/public-files/dynamic-content/page-for-include.html #include-tab-author" );
|
44 |
+
$( ".include-tab-support" ).load( "http://mycyberuniverse.com/public-files/dynamic-content/page-for-include.html #include-tab-support" );
|
45 |
+
$( ".include-tab-family" ).load( "http://mycyberuniverse.com/public-files/dynamic-content/page-for-include.html #include-tab-family" );
|
46 |
+
$( ".additional-css" ).load( "http://mycyberuniverse.com/public-files/dynamic-content/styles.html" );
|
47 |
+
|
48 |
+
// Add questions and answers into spoilers and color them in different colors
|
49 |
+
$(".panel-group .panel").each(function(i) {
|
50 |
+
$( ".question-" + (i+1) ).appendTo( $("h4", this) );
|
51 |
+
$( ".answer-" + (i+1) ).appendTo( $(".panel-body", this) );
|
52 |
+
|
53 |
+
if ( $(this).find("h4 div").hasClass('question-red') ) {
|
54 |
+
$(this).addClass('panel-danger');
|
55 |
+
} else {
|
56 |
+
$(this).addClass('panel-info');
|
57 |
+
}
|
58 |
+
});
|
59 |
+
|
60 |
+
});
|
inc/lib/bootstrap/bootstrap-theme.css
ADDED
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*!
|
2 |
+
* Bootstrap v3.3.7 (http://getbootstrap.com)
|
3 |
+
* Copyright 2011-2016 Twitter, Inc.
|
4 |
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
5 |
+
*/.btn-danger,.btn-default,.btn-info,.btn-primary,.btn-success,.btn-warning{text-shadow:0 -1px 0 rgba(0,0,0,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)}.btn-danger.active,.btn-danger:active,.btn-default.active,.btn-default:active,.btn-info.active,.btn-info:active,.btn-primary.active,.btn-primary:active,.btn-success.active,.btn-success:active,.btn-warning.active,.btn-warning:active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-danger.disabled,.btn-danger[disabled],.btn-default.disabled,.btn-default[disabled],.btn-info.disabled,.btn-info[disabled],.btn-primary.disabled,.btn-primary[disabled],.btn-success.disabled,.btn-success[disabled],.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-danger,fieldset[disabled] .btn-default,fieldset[disabled] .btn-info,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-success,fieldset[disabled] .btn-warning{-webkit-box-shadow:none;box-shadow:none}.btn-danger .badge,.btn-default .badge,.btn-info .badge,.btn-primary .badge,.btn-success .badge,.btn-warning .badge{text-shadow:none}.btn.active,.btn:active{background-image:none}.btn-default{text-shadow:0 1px 0 #fff;background-image:-webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-o-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e0e0e0));background-image:linear-gradient(to bottom,#fff 0,#e0e0e0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#dbdbdb;border-color:#ccc}.btn-default:focus,.btn-default:hover{background-color:#e0e0e0;background-position:0 -15px}.btn-default.active,.btn-default:active{background-color:#e0e0e0;border-color:#dbdbdb}.btn-default.disabled,.btn-default.disabled.active,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled],.btn-default[disabled].active,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default.active,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#e0e0e0;background-image:none}.btn-primary{background-image:-webkit-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-o-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#265a88));background-image:linear-gradient(to bottom,#337ab7 0,#265a88 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#245580}.btn-primary:focus,.btn-primary:hover{background-color:#265a88;background-position:0 -15px}.btn-primary.active,.btn-primary:active{background-color:#265a88;border-color:#245580}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#265a88;background-image:none}.btn-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#419641));background-image:linear-gradient(to bottom,#5cb85c 0,#419641 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#3e8f3e}.btn-success:focus,.btn-success:hover{background-color:#419641;background-position:0 -15px}.btn-success.active,.btn-success:active{background-color:#419641;border-color:#3e8f3e}.btn-success.disabled,.btn-success.disabled.active,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled],.btn-success[disabled].active,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success.active,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#419641;background-image:none}.btn-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#2aabd2));background-image:linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#28a4c9}.btn-info:focus,.btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.btn-info.active,.btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.btn-info.disabled,.btn-info.disabled.active,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled],.btn-info[disabled].active,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info.active,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#2aabd2;background-image:none}.btn-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#eb9316));background-image:linear-gradient(to bottom,#f0ad4e 0,#eb9316 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#e38d13}.btn-warning:focus,.btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.btn-warning.active,.btn-warning:active{background-color:#eb9316;border-color:#e38d13}.btn-warning.disabled,.btn-warning.disabled.active,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled],.btn-warning[disabled].active,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning.active,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#eb9316;background-image:none}.btn-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c12e2a));background-image:linear-gradient(to bottom,#d9534f 0,#c12e2a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#b92c28}.btn-danger:focus,.btn-danger:hover{background-color:#c12e2a;background-position:0 -15px}.btn-danger.active,.btn-danger:active{background-color:#c12e2a;border-color:#b92c28}.btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#c12e2a;background-image:none}.img-thumbnail,.thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{background-color:#e8e8e8;background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{background-color:#2e6da4;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.navbar-default{background-image:-webkit-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-o-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f8f8f8));background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075)}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-o-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dbdbdb),to(#e2e2e2));background-image:linear-gradient(to bottom,#dbdbdb 0,#e2e2e2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.075);box-shadow:inset 0 3px 9px rgba(0,0,0,.075)}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.navbar-inverse{background-image:-webkit-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-o-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#3c3c3c),to(#222));background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-o-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#080808),to(#0f0f0f));background-image:linear-gradient(to bottom,#080808 0,#0f0f0f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.25);box-shadow:inset 0 3px 9px rgba(0,0,0,.25)}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-fixed-bottom,.navbar-fixed-top,.navbar-static-top{border-radius:0}@media (max-width:767px){.navbar .navbar-nav .open .dropdown-menu>.active>a,.navbar .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}}.alert{text-shadow:0 1px 0 rgba(255,255,255,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.alert-success{background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#c8e5bc));background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);background-repeat:repeat-x;border-color:#b2dba1}.alert-info{background-image:-webkit-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#b9def0));background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);background-repeat:repeat-x;border-color:#9acfea}.alert-warning{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#f8efc0));background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);background-repeat:repeat-x;border-color:#f5e79e}.alert-danger{background-image:-webkit-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-o-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#e7c3c3));background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);background-repeat:repeat-x;border-color:#dca7a7}.progress{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#f5f5f5));background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x}.progress-bar{background-image:-webkit-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-o-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#286090));background-image:linear-gradient(to bottom,#337ab7 0,#286090 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);background-repeat:repeat-x}.progress-bar-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#449d44));background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);background-repeat:repeat-x}.progress-bar-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#31b0d5));background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);background-repeat:repeat-x}.progress-bar-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#ec971f));background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);background-repeat:repeat-x}.progress-bar-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c9302c));background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);background-repeat:repeat-x}.progress-bar-striped{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:-o-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)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{text-shadow:0 -1px 0 #286090;background-image:-webkit-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2b669a));background-image:linear-gradient(to bottom,#337ab7 0,#2b669a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);background-repeat:repeat-x;border-color:#2b669a}.list-group-item.active .badge,.list-group-item.active:focus .badge,.list-group-item.active:hover .badge{text-shadow:none}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.panel-default>.panel-heading{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.panel-success>.panel-heading{background-image:-webkit-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#d0e9c6));background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);background-repeat:repeat-x}.panel-info>.panel-heading{background-image:-webkit-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#c4e3f3));background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);background-repeat:repeat-x}.panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#faf2cc));background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);background-repeat:repeat-x}.panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-o-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#ebcccc));background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);background-repeat:repeat-x}.well{background-image:-webkit-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#e8e8e8),to(#f5f5f5));background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x;border-color:#dcdcdc;-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)}
|
inc/lib/bootstrap/bootstrap.css
ADDED
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*!
|
2 |
+
* Bootstrap v3.3.7 (http://getbootstrap.com)
|
3 |
+
* Copyright 2011-2016 Twitter, Inc.
|
4 |
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
5 |
+
*//*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{margin:.67em 0;font-size:2em}mark{color:#000;background:#ff0}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{height:0;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{margin:0;font:inherit;color:inherit}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input{line-height:normal}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid silver}legend{padding:0;border:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-spacing:0;border-collapse:collapse}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,:after,:before{color:#000!important;text-shadow:none!important;background:0 0!important;-webkit-box-shadow:none!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}}@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.woff2) format('woff2'),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')}.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}.glyphicon-asterisk:before{content:"\002a"}.glyphicon-plus:before{content:"\002b"}.glyphicon-eur:before,.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"\26fa"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"\231b"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before{content:"\e227"}.glyphicon-btc:before{content:"\e227"}.glyphicon-xbt:before{content:"\e227"}.glyphicon-yen:before{content:"\00a5"}.glyphicon-jpy:before{content:"\00a5"}.glyphicon-ruble:before{content:"\20bd"}.glyphicon-rub:before{content:"\20bd"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7;text-decoration:none}a:focus,a:hover{color:#23527c;text-decoration:underline}a:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.carousel-inner>.item>a>img,.carousel-inner>.item>img,.img-responsive,.thumbnail a>img,.thumbnail>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;max-width:100%;height:auto;padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role=button]{cursor:pointer}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#777}.h1,.h2,.h3,h1,h2,h3{margin-top:20px;margin-bottom:10px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small{font-size:65%}.h4,.h5,.h6,h4,h5,h6{margin-top:10px;margin-bottom:10px}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-size:75%}.h1,h1{font-size:36px}.h2,h2{font-size:30px}.h3,h3{font-size:24px}.h4,h4{font-size:18px}.h5,h5{font-size:14px}.h6,h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.small,small{font-size:85%}.mark,mark{padding:.2em;background-color:#fcf8e3}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#337ab7}a.text-primary:focus,a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:focus,a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:focus,a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:focus,a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:focus,a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#337ab7}a.bg-primary:focus,a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:focus,a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:focus,a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:focus,a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:focus,a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ol,ul{margin-top:0;margin-bottom:10px}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;margin-left:-5px;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-top:0;margin-bottom:20px}dd,dt{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child{margin-bottom:0}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;line-height:1.42857143;color:#777}blockquote .small:before,blockquote footer:before,blockquote small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;text-align:right;border-right:5px solid #eee;border-left:0}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:''}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after{content:'\00A0 \2014'}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;font-weight:700;-webkit-box-shadow:none;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{margin-right:-15px;margin-left:-15px}.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.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-md-1,.col-md-10,.col-md-11,.col-md-12,.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-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.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-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #ddd}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*=col-]{position:static;display:table-column;float:none}table td[class*=col-],table th[class*=col-]{position:static;display:table-cell;float:none}.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#dff0d8}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#d9edf7}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#fcf8e3}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#f2dede}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.table-responsive{min-height:.01%;overflow-x:auto}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset{min-width:0;padding:0;margin:0;border:0}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}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=radio]{margin:4px 0 0;margin-top:1px\9;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=file]:focus,input[type=checkbox]:focus,input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;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,-webkit-box-shadow ease-in-out .15s;-o-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}.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)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control::-ms-expand{background-color:transparent;border:0}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}input[type=search]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date].form-control,input[type=time].form-control,input[type=datetime-local].form-control,input[type=month].form-control{line-height:34px}.input-group-sm input[type=date],.input-group-sm input[type=time],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],input[type=date].input-sm,input[type=time].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm{line-height:30px}.input-group-lg input[type=date],.input-group-lg input[type=time],.input-group-lg input[type=datetime-local],.input-group-lg input[type=month],input[type=date].input-lg,input[type=time].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg{line-height:46px}}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.checkbox label,.radio label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox],.radio input[type=radio],.radio-inline input[type=radio]{position:absolute;margin-top:4px\9;margin-left:-20px}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}.checkbox-inline.disabled,.radio-inline.disabled,fieldset[disabled] .checkbox-inline,fieldset[disabled] .radio-inline{cursor:not-allowed}.checkbox.disabled label,.radio.disabled label,fieldset[disabled] .checkbox label,fieldset[disabled] .radio label{cursor:not-allowed}.form-control-static{min-height:34px;padding-top:7px;padding-bottom:7px;margin-bottom:0}.form-control-static.input-lg,.form-control-static.input-sm{padding-right:0;padding-left:0}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}select[multiple].input-sm,textarea.input-sm{height:auto}.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.form-group-sm select.form-control{height:30px;line-height:30px}.form-group-sm select[multiple].form-control,.form-group-sm textarea.form-control{height:auto}.form-group-sm .form-control-static{height:30px;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.5}.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-lg{height:46px;line-height:46px}select[multiple].input-lg,textarea.input-lg{height:auto}.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.form-group-lg select.form-control{height:46px;line-height:46px}.form-group-lg select[multiple].form-control,.form-group-lg textarea.form-control{height:auto}.form-group-lg .form-control-static{height:46px;min-height:38px;padding:11px 16px;font-size:18px;line-height:1.3333333}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.form-group-lg .form-control+.form-control-feedback,.input-group-lg+.form-control-feedback,.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.form-group-sm .form-control+.form-control-feedback,.input-group-sm+.form-control-feedback,.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .checkbox,.has-success .checkbox-inline,.has-success .control-label,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.checkbox label,.has-success.checkbox-inline label,.has-success.radio label,.has-success.radio-inline label{color:#3c763d}.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)}.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}.has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.has-success .form-control-feedback{color:#3c763d}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning .control-label,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.checkbox label,.has-warning.checkbox-inline label,.has-warning.radio label,.has-warning.radio-inline label{color:#8a6d3b}.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)}.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}.has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .checkbox,.has-error .checkbox-inline,.has-error .control-label,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.checkbox label,.has-error.checkbox-inline label,.has-error.radio label,.has-error.radio-inline label{color:#a94442}.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)}.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}.has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.has-error .form-control-feedback{color:#a94442}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .checkbox,.form-horizontal .radio{min-height:27px}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.form-horizontal .control-label{padding-top:7px;margin-bottom:0;text-align:right}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:11px;font-size:18px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px;font-size:12px}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.42857143;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-image:none;border:1px solid transparent;border-radius:4px}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none;opacity:.65}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default.focus,.btn-default:focus{color:#333;background-color:#e6e6e6;border-color:#8c8c8c}.btn-default:hover{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.dropdown-toggle.btn-default.focus,.open>.dropdown-toggle.btn-default:focus,.open>.dropdown-toggle.btn-default:hover{color:#333;background-color:#d4d4d4;border-color:#8c8c8c}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#286090;border-color:#122b40}.btn-primary:hover{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.dropdown-toggle.btn-primary.focus,.open>.dropdown-toggle.btn-primary:focus,.open>.dropdown-toggle.btn-primary:hover{color:#fff;background-color:#204d74;border-color:#122b40}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled.focus,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled].focus,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:#2e6da4}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#449d44;border-color:#255625}.btn-success:hover{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active.focus,.btn-success.active:focus,.btn-success.active:hover,.btn-success:active.focus,.btn-success:active:focus,.btn-success:active:hover,.open>.dropdown-toggle.btn-success.focus,.open>.dropdown-toggle.btn-success:focus,.open>.dropdown-toggle.btn-success:hover{color:#fff;background-color:#398439;border-color:#255625}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{background-image:none}.btn-success.disabled.focus,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled].focus,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#31b0d5;border-color:#1b6d85}.btn-info:hover{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active.focus,.btn-info.active:focus,.btn-info.active:hover,.btn-info:active.focus,.btn-info:active:focus,.btn-info:active:hover,.open>.dropdown-toggle.btn-info.focus,.open>.dropdown-toggle.btn-info:focus,.open>.dropdown-toggle.btn-info:hover{color:#fff;background-color:#269abc;border-color:#1b6d85}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{background-image:none}.btn-info.disabled.focus,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled].focus,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning.focus,.btn-warning:focus{color:#fff;background-color:#ec971f;border-color:#985f0d}.btn-warning:hover{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active.focus,.btn-warning.active:focus,.btn-warning.active:hover,.btn-warning:active.focus,.btn-warning:active:focus,.btn-warning:active:hover,.open>.dropdown-toggle.btn-warning.focus,.open>.dropdown-toggle.btn-warning:focus,.open>.dropdown-toggle.btn-warning:hover{color:#fff;background-color:#d58512;border-color:#985f0d}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled.focus,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled].focus,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c9302c;border-color:#761c19}.btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.dropdown-toggle.btn-danger.focus,.open>.dropdown-toggle.btn-danger:focus,.open>.dropdown-toggle.btn-danger:hover{color:#fff;background-color:#ac2925;border-color:#761c19}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{font-weight:400;color:#337ab7;border-radius:0}.btn-link,.btn-link.active,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.btn-group-sm>.btn,.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-xs>.btn,.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease;-webkit-transition-duration:.35s;-o-transition-duration:.35s;transition-duration:.35s;-webkit-transition-property:height,visibility;-o-transition-property:height,visibility;transition-property:height,visibility}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-top:4px solid\9;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown,.dropup{position:relative}.dropdown-toggle:focus{outline:0}.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;font-size:14px;text-align:left;list-style:none;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;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)}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{color:#262626;text-decoration:none;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;background-color:#337ab7;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{color:#777}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{right:0;left:auto}.dropdown-menu-left{right:auto;left:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{content:"";border-top:0;border-bottom:4px dashed;border-bottom:4px solid\9}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{right:auto;left:0}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn,.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-bottom-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.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)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-top-right-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn input[type=checkbox],[data-toggle=buttons]>.btn input[type=radio],[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group .form-control:focus{z-index:3}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn,textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn,textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group .form-control,.input-group-addon,.input-group-btn{display:table-cell}.input-group .form-control:not(:first-child):not(:last-child),.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.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}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=checkbox],.input-group-addon input[type=radio]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{z-index:2;margin-left:-1px}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#777;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{background-color:#eee;border-color:#337ab7}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:focus,.nav-pills>li.active>a:hover{color:#fff;background-color:#337ab7}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{padding-right:15px;padding-left:15px;overflow-x:visible;-webkit-overflow-scrolling:touch;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;-webkit-box-shadow:none;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-right:0;padding-left:0}}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.navbar-fixed-bottom,.navbar-fixed-top{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;height:50px;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;-webkit-box-shadow:none;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-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)}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-right:15px;margin-left:15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{color:#555;background-color:#e7e7e7}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{color:#fff;background-color:#080808}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#9d9d9d}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#9d9d9d}.navbar-inverse .btn-link:focus,.navbar-inverse .btn-link:hover{color:#fff}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.42857143;color:#337ab7;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-top-left-radius:4px;border-bottom-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{z-index:2;color:#23527c;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:3;color:#fff;cursor:default;background-color:#337ab7;border-color:#337ab7}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#777;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px;line-height:1.3333333}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-top-left-radius:6px;border-bottom-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px;line-height:1.5}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-top-left-radius:3px;border-bottom-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:focus,.pager li>a:hover{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#777;cursor:not-allowed;background-color:#fff}.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}a.label:focus,a.label:hover{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#777}.label-default[href]:focus,.label-default[href]:hover{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:focus,.label-success[href]:hover{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:focus,.label-info[href]:hover{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:middle;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-group-xs>.btn .badge,.btn-xs .badge{top:0;padding:1px 5px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#337ab7;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding-top:30px;padding-bottom:30px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron .h1,.jumbotron h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#d5d5d5}.container .jumbotron,.container-fluid .jumbotron{padding-right:15px;padding-left:15px;border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron,.container-fluid .jumbotron{padding-right:60px;padding-left:60px}.jumbotron .h1,.jumbotron h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail a>img,.thumbnail>img{margin-right:auto;margin-left:auto}a.thumbnail.active,a.thumbnail:focus,a.thumbnail:hover{border-color:#337ab7}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-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}}.progress{height:20px;margin-bottom:20px;overflow:hidden;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)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#337ab7;-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;-o-transition:width .6s ease;transition:width .6s ease}.progress-bar-striped,.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:-o-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);-webkit-background-size:40px 40px;background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .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:-o-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)}.progress-bar-info{background-color:#5bc0de}.progress-striped .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:-o-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)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .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:-o-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)}.progress-bar-danger{background-color:#d9534f}.progress-striped .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:-o-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)}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{overflow:hidden;zoom:1}.media-body{width:10000px}.media-object{display:block}.media-object.img-thumbnail{max-width:none}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-body,.media-left,.media-right{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item,button.list-group-item{color:#555}a.list-group-item .list-group-item-heading,button.list-group-item .list-group-item-heading{color:#333}a.list-group-item:focus,a.list-group-item:hover,button.list-group-item:focus,button.list-group-item:hover{color:#555;text-decoration:none;background-color:#f5f5f5}button.list-group-item{width:100%;text-align:left}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{color:#777;cursor:not-allowed;background-color:#eee}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .list-group-item-text{color:#c7ddef}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success,button.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading,button.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:focus,a.list-group-item-success:hover,button.list-group-item-success:focus,button.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover,button.list-group-item-success.active,button.list-group-item-success.active:focus,button.list-group-item-success.active:hover{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info,button.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading,button.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:focus,a.list-group-item-info:hover,button.list-group-item-info:focus,button.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover,button.list-group-item-info.active,button.list-group-item-info.active:focus,button.list-group-item-info.active:hover{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning,button.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading,button.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:focus,a.list-group-item-warning:hover,button.list-group-item-warning:focus,button.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover,button.list-group-item-warning.active,button.list-group-item-warning.active:focus,button.list-group-item-warning.active:hover{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger,button.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading,button.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:focus,a.list-group-item-danger:hover,button.list-group-item-danger:focus,button.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover,button.list-group-item-danger.active,button.list-group-item-danger.active:focus,button.list-group-item-danger.active:hover{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.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)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>.small,.panel-title>.small>a,.panel-title>a,.panel-title>small,.panel-title>small>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-left-radius:3px;border-top-right-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-left-radius:0;border-top-right-radius:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.panel-collapse>.table caption,.panel>.table caption,.panel>.table-responsive>.table caption{padding-right:15px;padding-left:15px}.panel>.table-responsive:first-child>.table:first-child,.panel>.table:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table:first-child>thead:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table-responsive:last-child>.table:last-child,.panel>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{margin-bottom:0;border:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.list-group,.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#337ab7}.panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.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)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;filter:alpha(opacity=20);opacity:.2}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;filter:alpha(opacity=50);opacity:.5}button.close{-webkit-appearance:none;padding:0;cursor:pointer;background:0 0;border:0}.modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out;-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%)}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{filter:alpha(opacity=0);opacity:0}.modal-backdrop.in{filter:alpha(opacity=50);opacity:.5}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px;font-style:normal;font-weight:400;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;filter:alpha(opacity=0);opacity:0;line-break:auto}.tooltip.in{filter:alpha(opacity=90);opacity:.9}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;background-color:#fff;-webkit-background-clip:padding-box;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);line-break:auto}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{content:"";border-width:10px}.popover.top>.arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,.25);border-bottom-width:0}.popover.top>.arrow:after{bottom:1px;margin-left:-10px;content:" ";border-top-color:#fff;border-bottom-width:0}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,.25);border-left-width:0}.popover.right>.arrow:after{bottom:-10px;left:1px;content:" ";border-right-color:#fff;border-left-width:0}.popover.bottom>.arrow{top:-11px;left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25)}.popover.bottom>.arrow:after{top:1px;margin-left:-10px;content:" ";border-top-width:0;border-bottom-color:#fff}.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)}.popover.left>.arrow:after{right:1px;bottom:-10px;content:" ";border-right-width:0;border-left-color:#fff}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>a>img,.carousel-inner>.item>img{line-height:1}@media all and (transform-3d),(-webkit-transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-inner>.item.active.right,.carousel-inner>.item.next{left:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.carousel-inner>.item.active.left,.carousel-inner>.item.prev{left:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.carousel-inner>.item.active,.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right{left:0;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);background-color:rgba(0,0,0,0);filter:alpha(opacity=50);opacity:.5}.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,.0001)));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);background-repeat:repeat-x}.carousel-control.right{right:0;left:auto;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.0001)),to(rgba(0,0,0,.5)));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);background-repeat:repeat-x}.carousel-control:focus,.carousel-control:hover{color:#fff;text-decoration:none;filter:alpha(opacity=90);outline:0;opacity:.9}.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block;margin-top:-10px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{left:50%;margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{right:50%;margin-right:-10px}.carousel-control .icon-next,.carousel-control .icon-prev{width:20px;height:20px;font-family:serif;line-height:1}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;background-color:#000\9;background-color:rgba(0,0,0,0);border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{width:30px;height:30px;margin-top:-10px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-10px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before,.btn-toolbar:after,.btn-toolbar:before,.clearfix:after,.clearfix:before,.container-fluid:after,.container-fluid:before,.container:after,.container:before,.dl-horizontal dd:after,.dl-horizontal dd:before,.form-horizontal .form-group:after,.form-horizontal .form-group:before,.modal-footer:after,.modal-footer:before,.modal-header:after,.modal-header:before,.nav:after,.nav:before,.navbar-collapse:after,.navbar-collapse:before,.navbar-header:after,.navbar-header:before,.navbar:after,.navbar:before,.pager:after,.pager:before,.panel-body:after,.panel-body:before,.row:after,.row:before{display:table;content:" "}.btn-group-vertical>.btn-group:after,.btn-toolbar:after,.clearfix:after,.container-fluid:after,.container:after,.dl-horizontal dd:after,.form-horizontal .form-group:after,.modal-footer:after,.modal-header:after,.nav:after,.navbar-collapse:after,.navbar-header:after,.navbar:after,.pager:after,.panel-body:after,.row:after{clear:both}.center-block{display:block;margin-right:auto;margin-left:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-lg,.visible-md,.visible-sm,.visible-xs{display:none!important}.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table!important}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}}@media (max-width:767px){.visible-xs-block{display:block!important}}@media (max-width:767px){.visible-xs-inline{display:inline!important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table!important}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table!important}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table!important}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}}@media (min-width:1200px){.visible-lg-block{display:block!important}}@media (min-width:1200px){.visible-lg-inline{display:inline!important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table!important}tr.visible-print{display:table-row!important}td.visible-print,th.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}}@media print{.hidden-print{display:none!important}}
|
inc/lib/bootstrap/bootstrap.js
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*!
|
2 |
+
* Bootstrap v3.3.7 (http://getbootstrap.com)
|
3 |
+
* Copyright 2011-2016 Twitter, Inc.
|
4 |
+
* Licensed under the MIT license
|
5 |
+
*/
|
6 |
+
if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(a){"use strict";var b=a.fn.jquery.split(" ")[0].split(".");if(b[0]<2&&b[1]<9||1==b[0]&&9==b[1]&&b[2]<1||b[0]>3)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4")}(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]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one("bsTransitionEnd",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(),a.support.transition&&(a.event.special.bsTransitionEnd={bindType:a.support.transition.end,delegateType:a.support.transition.end,handle:function(b){if(a(b.target).is(this))return b.handleObj.handler.apply(this,arguments)}})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var c=a(this),e=c.data("bs.alert");e||c.data("bs.alert",e=new d(this)),"string"==typeof b&&e[b].call(c)})}var c='[data-dismiss="alert"]',d=function(b){a(b).on("click",c,this.close)};d.VERSION="3.3.7",d.TRANSITION_DURATION=150,d.prototype.close=function(b){function c(){g.detach().trigger("closed.bs.alert").remove()}var e=a(this),f=e.attr("data-target");f||(f=e.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,""));var g=a("#"===f?[]:f);b&&b.preventDefault(),g.length||(g=e.closest(".alert")),g.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(g.removeClass("in"),a.support.transition&&g.hasClass("fade")?g.one("bsTransitionEnd",c).emulateTransitionEnd(d.TRANSITION_DURATION):c())};var e=a.fn.alert;a.fn.alert=b,a.fn.alert.Constructor=d,a.fn.alert.noConflict=function(){return a.fn.alert=e,this},a(document).on("click.bs.alert.data-api",c,d.prototype.close)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof b&&b;e||d.data("bs.button",e=new c(this,f)),"toggle"==b?e.toggle():b&&e.setState(b)})}var c=function(b,d){this.$element=a(b),this.options=a.extend({},c.DEFAULTS,d),this.isLoading=!1};c.VERSION="3.3.7",c.DEFAULTS={loadingText:"loading..."},c.prototype.setState=function(b){var c="disabled",d=this.$element,e=d.is("input")?"val":"html",f=d.data();b+="Text",null==f.resetText&&d.data("resetText",d[e]()),setTimeout(a.proxy(function(){d[e](null==f[b]?this.options[b]:f[b]),"loadingText"==b?(this.isLoading=!0,d.addClass(c).attr(c,c).prop(c,!0)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c).prop(c,!1))},this),0)},c.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle="buttons"]');if(b.length){var c=this.$element.find("input");"radio"==c.prop("type")?(c.prop("checked")&&(a=!1),b.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==c.prop("type")&&(c.prop("checked")!==this.$element.hasClass("active")&&(a=!1),this.$element.toggleClass("active")),c.prop("checked",this.$element.hasClass("active")),a&&c.trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active")};var d=a.fn.button;a.fn.button=b,a.fn.button.Constructor=c,a.fn.button.noConflict=function(){return a.fn.button=d,this},a(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(c){var d=a(c.target).closest(".btn");b.call(d,"toggle"),a(c.target).is('input[type="radio"], input[type="checkbox"]')||(c.preventDefault(),d.is("input,button")?d.trigger("focus"):d.find("input:visible,button:visible").first().trigger("focus"))}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(b){a(b.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(b.type))})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},c.DEFAULTS,d.data(),"object"==typeof b&&b),g="string"==typeof b?b:f.slide;e||d.data("bs.carousel",e=new c(this,f)),"number"==typeof b?e.to(b):g?e[g]():f.interval&&e.pause().cycle()})}var c=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",a.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",a.proxy(this.pause,this)).on("mouseleave.bs.carousel",a.proxy(this.cycle,this))};c.VERSION="3.3.7",c.TRANSITION_DURATION=600,c.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},c.prototype.keydown=function(a){if(!/input|textarea/i.test(a.target.tagName)){switch(a.which){case 37:this.prev();break;case 39:this.next();break;default:return}a.preventDefault()}},c.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},c.prototype.getItemIndex=function(a){return this.$items=a.parent().children(".item"),this.$items.index(a||this.$active)},c.prototype.getItemForDirection=function(a,b){var c=this.getItemIndex(b),d="prev"==a&&0===c||"next"==a&&c==this.$items.length-1;if(d&&!this.options.wrap)return b;var e="prev"==a?-1:1,f=(c+e)%this.$items.length;return this.$items.eq(f)},c.prototype.to=function(a){var b=this,c=this.getItemIndex(this.$active=this.$element.find(".item.active"));if(!(a>this.$items.length-1||a<0))return this.sliding?this.$element.one("slid.bs.carousel",function(){b.to(a)}):c==a?this.pause().cycle():this.slide(a>c?"next":"prev",this.$items.eq(a))},c.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},c.prototype.next=function(){if(!this.sliding)return this.slide("next")},c.prototype.prev=function(){if(!this.sliding)return this.slide("prev")},c.prototype.slide=function(b,d){var e=this.$element.find(".item.active"),f=d||this.getItemForDirection(b,e),g=this.interval,h="next"==b?"left":"right",i=this;if(f.hasClass("active"))return this.sliding=!1;var j=f[0],k=a.Event("slide.bs.carousel",{relatedTarget:j,direction:h});if(this.$element.trigger(k),!k.isDefaultPrevented()){if(this.sliding=!0,g&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var l=a(this.$indicators.children()[this.getItemIndex(f)]);l&&l.addClass("active")}var m=a.Event("slid.bs.carousel",{relatedTarget:j,direction:h});return a.support.transition&&this.$element.hasClass("slide")?(f.addClass(b),f[0].offsetWidth,e.addClass(h),f.addClass(h),e.one("bsTransitionEnd",function(){f.removeClass([b,h].join(" ")).addClass("active"),e.removeClass(["active",h].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger(m)},0)}).emulateTransitionEnd(c.TRANSITION_DURATION)):(e.removeClass("active"),f.addClass("active"),this.sliding=!1,this.$element.trigger(m)),g&&this.cycle(),this}};var d=a.fn.carousel;a.fn.carousel=b,a.fn.carousel.Constructor=c,a.fn.carousel.noConflict=function(){return a.fn.carousel=d,this};var e=function(c){var d,e=a(this),f=a(e.attr("data-target")||(d=e.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""));if(f.hasClass("carousel")){var g=a.extend({},f.data(),e.data()),h=e.attr("data-slide-to");h&&(g.interval=!1),b.call(f,g),h&&f.data("bs.carousel").to(h),c.preventDefault()}};a(document).on("click.bs.carousel.data-api","[data-slide]",e).on("click.bs.carousel.data-api","[data-slide-to]",e),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var c=a(this);b.call(c,c.data())})})}(jQuery),+function(a){"use strict";function b(b){var c,d=b.attr("data-target")||(c=b.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"");return a(d)}function c(b){return this.each(function(){var c=a(this),e=c.data("bs.collapse"),f=a.extend({},d.DEFAULTS,c.data(),"object"==typeof b&&b);!e&&f.toggle&&/show|hide/.test(b)&&(f.toggle=!1),e||c.data("bs.collapse",e=new d(this,f)),"string"==typeof b&&e[b]()})}var d=function(b,c){this.$element=a(b),this.options=a.extend({},d.DEFAULTS,c),this.$trigger=a('[data-toggle="collapse"][href="#'+b.id+'"],[data-toggle="collapse"][data-target="#'+b.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};d.VERSION="3.3.7",d.TRANSITION_DURATION=350,d.DEFAULTS={toggle:!0},d.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},d.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b,e=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(e&&e.length&&(b=e.data("bs.collapse"),b&&b.transitioning))){var f=a.Event("show.bs.collapse");if(this.$element.trigger(f),!f.isDefaultPrevented()){e&&e.length&&(c.call(e,"hide"),b||e.data("bs.collapse",null));var g=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[g](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var h=function(){this.$element.removeClass("collapsing").addClass("collapse in")[g](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return h.call(this);var i=a.camelCase(["scroll",g].join("-"));this.$element.one("bsTransitionEnd",a.proxy(h,this)).emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i])}}}},d.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 in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var e=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};return a.support.transition?void this.$element[c](0).one("bsTransitionEnd",a.proxy(e,this)).emulateTransitionEnd(d.TRANSITION_DURATION):e.call(this)}}},d.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},d.prototype.getParent=function(){return a(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(a.proxy(function(c,d){var e=a(d);this.addAriaAndCollapsedClass(b(e),e)},this)).end()},d.prototype.addAriaAndCollapsedClass=function(a,b){var c=a.hasClass("in");a.attr("aria-expanded",c),b.toggleClass("collapsed",!c).attr("aria-expanded",c)};var e=a.fn.collapse;a.fn.collapse=c,a.fn.collapse.Constructor=d,a.fn.collapse.noConflict=function(){return a.fn.collapse=e,this},a(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(d){var e=a(this);e.attr("data-target")||d.preventDefault();var f=b(e),g=f.data("bs.collapse"),h=g?"toggle":e.data();c.call(f,h)})}(jQuery),+function(a){"use strict";function b(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}function c(c){c&&3===c.which||(a(e).remove(),a(f).each(function(){var d=a(this),e=b(d),f={relatedTarget:this};e.hasClass("open")&&(c&&"click"==c.type&&/input|textarea/i.test(c.target.tagName)&&a.contains(e[0],c.target)||(e.trigger(c=a.Event("hide.bs.dropdown",f)),c.isDefaultPrevented()||(d.attr("aria-expanded","false"),e.removeClass("open").trigger(a.Event("hidden.bs.dropdown",f)))))}))}function d(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new g(this)),"string"==typeof b&&d[b].call(c)})}var e=".dropdown-backdrop",f='[data-toggle="dropdown"]',g=function(b){a(b).on("click.bs.dropdown",this.toggle)};g.VERSION="3.3.7",g.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=b(e),g=f.hasClass("open");if(c(),!g){"ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(a(this)).on("click",c);var h={relatedTarget:this};if(f.trigger(d=a.Event("show.bs.dropdown",h)),d.isDefaultPrevented())return;e.trigger("focus").attr("aria-expanded","true"),f.toggleClass("open").trigger(a.Event("shown.bs.dropdown",h))}return!1}},g.prototype.keydown=function(c){if(/(38|40|27|32)/.test(c.which)&&!/input|textarea/i.test(c.target.tagName)){var d=a(this);if(c.preventDefault(),c.stopPropagation(),!d.is(".disabled, :disabled")){var e=b(d),g=e.hasClass("open");if(!g&&27!=c.which||g&&27==c.which)return 27==c.which&&e.find(f).trigger("focus"),d.trigger("click");var h=" li:not(.disabled):visible a",i=e.find(".dropdown-menu"+h);if(i.length){var j=i.index(c.target);38==c.which&&j>0&&j--,40==c.which&&j<i.length-1&&j++,~j||(j=0),i.eq(j).trigger("focus")}}}};var h=a.fn.dropdown;a.fn.dropdown=d,a.fn.dropdown.Constructor=g,a.fn.dropdown.noConflict=function(){return a.fn.dropdown=h,this},a(document).on("click.bs.dropdown.data-api",c).on("click.bs.dropdown.data-api",".dropdown form",function(a){a.stopPropagation()}).on("click.bs.dropdown.data-api",f,g.prototype.toggle).on("keydown.bs.dropdown.data-api",f,g.prototype.keydown).on("keydown.bs.dropdown.data-api",".dropdown-menu",g.prototype.keydown)}(jQuery),+function(a){"use strict";function b(b,d){return this.each(function(){var e=a(this),f=e.data("bs.modal"),g=a.extend({},c.DEFAULTS,e.data(),"object"==typeof b&&b);f||e.data("bs.modal",f=new c(this,g)),"string"==typeof b?f[b](d):g.show&&f.show(d)})}var c=function(b,c){this.options=c,this.$body=a(document.body),this.$element=a(b),this.$dialog=this.$element.find(".modal-dialog"),this.$backdrop=null,this.isShown=null,this.originalBodyPad=null,this.scrollbarWidth=0,this.ignoreBackdropClick=!1,this.options.remote&&this.$element.find(".modal-content").load(this.options.remote,a.proxy(function(){this.$element.trigger("loaded.bs.modal")},this))};c.VERSION="3.3.7",c.TRANSITION_DURATION=300,c.BACKDROP_TRANSITION_DURATION=150,c.DEFAULTS={backdrop:!0,keyboard:!0,show:!0},c.prototype.toggle=function(a){return this.isShown?this.hide():this.show(a)},c.prototype.show=function(b){var d=this,e=a.Event("show.bs.modal",{relatedTarget:b});this.$element.trigger(e),this.isShown||e.isDefaultPrevented()||(this.isShown=!0,this.checkScrollbar(),this.setScrollbar(),this.$body.addClass("modal-open"),this.escape(),this.resize(),this.$element.on("click.dismiss.bs.modal",'[data-dismiss="modal"]',a.proxy(this.hide,this)),this.$dialog.on("mousedown.dismiss.bs.modal",function(){d.$element.one("mouseup.dismiss.bs.modal",function(b){a(b.target).is(d.$element)&&(d.ignoreBackdropClick=!0)})}),this.backdrop(function(){var e=a.support.transition&&d.$element.hasClass("fade");d.$element.parent().length||d.$element.appendTo(d.$body),d.$element.show().scrollTop(0),d.adjustDialog(),e&&d.$element[0].offsetWidth,d.$element.addClass("in"),d.enforceFocus();var f=a.Event("shown.bs.modal",{relatedTarget:b});e?d.$dialog.one("bsTransitionEnd",function(){d.$element.trigger("focus").trigger(f)}).emulateTransitionEnd(c.TRANSITION_DURATION):d.$element.trigger("focus").trigger(f)}))},c.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(),this.resize(),a(document).off("focusin.bs.modal"),this.$element.removeClass("in").off("click.dismiss.bs.modal").off("mouseup.dismiss.bs.modal"),this.$dialog.off("mousedown.dismiss.bs.modal"),a.support.transition&&this.$element.hasClass("fade")?this.$element.one("bsTransitionEnd",a.proxy(this.hideModal,this)).emulateTransitionEnd(c.TRANSITION_DURATION):this.hideModal())},c.prototype.enforceFocus=function(){a(document).off("focusin.bs.modal").on("focusin.bs.modal",a.proxy(function(a){document===a.target||this.$element[0]===a.target||this.$element.has(a.target).length||this.$element.trigger("focus")},this))},c.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keydown.dismiss.bs.modal",a.proxy(function(a){27==a.which&&this.hide()},this)):this.isShown||this.$element.off("keydown.dismiss.bs.modal")},c.prototype.resize=function(){this.isShown?a(window).on("resize.bs.modal",a.proxy(this.handleUpdate,this)):a(window).off("resize.bs.modal")},c.prototype.hideModal=function(){var a=this;this.$element.hide(),this.backdrop(function(){a.$body.removeClass("modal-open"),a.resetAdjustments(),a.resetScrollbar(),a.$element.trigger("hidden.bs.modal")})},c.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},c.prototype.backdrop=function(b){var d=this,e=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var f=a.support.transition&&e;if(this.$backdrop=a(document.createElement("div")).addClass("modal-backdrop "+e).appendTo(this.$body),this.$element.on("click.dismiss.bs.modal",a.proxy(function(a){return this.ignoreBackdropClick?void(this.ignoreBackdropClick=!1):void(a.target===a.currentTarget&&("static"==this.options.backdrop?this.$element[0].focus():this.hide()))},this)),f&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!b)return;f?this.$backdrop.one("bsTransitionEnd",b).emulateTransitionEnd(c.BACKDROP_TRANSITION_DURATION):b()}else if(!this.isShown&&this.$backdrop){this.$backdrop.removeClass("in");var g=function(){d.removeBackdrop(),b&&b()};a.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one("bsTransitionEnd",g).emulateTransitionEnd(c.BACKDROP_TRANSITION_DURATION):g()}else b&&b()},c.prototype.handleUpdate=function(){this.adjustDialog()},c.prototype.adjustDialog=function(){var a=this.$element[0].scrollHeight>document.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&a?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!a?this.scrollbarWidth:""})},c.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},c.prototype.checkScrollbar=function(){var a=window.innerWidth;if(!a){var b=document.documentElement.getBoundingClientRect();a=b.right-Math.abs(b.left)}this.bodyIsOverflowing=document.body.clientWidth<a,this.scrollbarWidth=this.measureScrollbar()},c.prototype.setScrollbar=function(){var a=parseInt(this.$body.css("padding-right")||0,10);this.originalBodyPad=document.body.style.paddingRight||"",this.bodyIsOverflowing&&this.$body.css("padding-right",a+this.scrollbarWidth)},c.prototype.resetScrollbar=function(){this.$body.css("padding-right",this.originalBodyPad)},c.prototype.measureScrollbar=function(){var a=document.createElement("div");a.className="modal-scrollbar-measure",this.$body.append(a);var b=a.offsetWidth-a.clientWidth;return this.$body[0].removeChild(a),b};var d=a.fn.modal;a.fn.modal=b,a.fn.modal.Constructor=c,a.fn.modal.noConflict=function(){return a.fn.modal=d,this},a(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(c){var d=a(this),e=d.attr("href"),f=a(d.attr("data-target")||e&&e.replace(/.*(?=#[^\s]+$)/,"")),g=f.data("bs.modal")?"toggle":a.extend({remote:!/#/.test(e)&&e},f.data(),d.data());d.is("a")&&c.preventDefault(),f.one("show.bs.modal",function(a){a.isDefaultPrevented()||f.one("hidden.bs.modal",function(){d.is(":visible")&&d.trigger("focus")})}),b.call(f,g,this)})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.tooltip"),f="object"==typeof b&&b;!e&&/destroy|hide/.test(b)||(e||d.data("bs.tooltip",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.type=null,this.options=null,this.enabled=null,this.timeout=null,this.hoverState=null,this.$element=null,this.inState=null,this.init("tooltip",a,b)};c.VERSION="3.3.7",c.TRANSITION_DURATION=150,c.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},c.prototype.init=function(b,c,d){if(this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.$viewport=this.options.viewport&&a(a.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");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":"focusin",i="hover"==g?"mouseleave":"focusout";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()},c.prototype.getDefaults=function(){return c.DEFAULTS},c.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},c.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},c.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusin"==b.type?"focus":"hover"]=!0),c.tip().hasClass("in")||"in"==c.hoverState?void(c.hoverState="in"):(clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?void(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show)):c.show())},c.prototype.isInStateTrue=function(){for(var a in this.inState)if(this.inState[a])return!0;return!1},c.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);if(c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusout"==b.type?"focus":"hover"]=!1),!c.isInStateTrue())return clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?void(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide)):c.hide()},c.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(b);var d=a.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(b.isDefaultPrevented()||!d)return;var e=this,f=this.tip(),g=this.getUID(this.type);this.setContent(),f.attr("id",g),this.$element.attr("aria-describedby",g),this.options.animation&&f.addClass("fade");var h="function"==typeof this.options.placement?this.options.placement.call(this,f[0],this.$element[0]):this.options.placement,i=/\s?auto?\s?/i,j=i.test(h);j&&(h=h.replace(i,"")||"top"),f.detach().css({top:0,left:0,display:"block"}).addClass(h).data("bs."+this.type,this),this.options.container?f.appendTo(this.options.container):f.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var k=this.getPosition(),l=f[0].offsetWidth,m=f[0].offsetHeight;if(j){var n=h,o=this.getPosition(this.$viewport);h="bottom"==h&&k.bottom+m>o.bottom?"top":"top"==h&&k.top-m<o.top?"bottom":"right"==h&&k.right+l>o.width?"left":"left"==h&&k.left-l<o.left?"right":h,f.removeClass(n).addClass(h)}var p=this.getCalculatedOffset(h,k,l,m);this.applyPlacement(p,h);var q=function(){var a=e.hoverState;e.$element.trigger("shown.bs."+e.type),e.hoverState=null,"out"==a&&e.leave(e)};a.support.transition&&this.$tip.hasClass("fade")?f.one("bsTransitionEnd",q).emulateTransitionEnd(c.TRANSITION_DURATION):q()}},c.prototype.applyPlacement=function(b,c){var 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),b.top+=g,b.left+=h,a.offset.setOffset(d[0],a.extend({using:function(a){d.css({top:Math.round(a.top),left:Math.round(a.left)})}},b),0),d.addClass("in");var i=d[0].offsetWidth,j=d[0].offsetHeight;"top"==c&&j!=f&&(b.top=b.top+f-j);var k=this.getViewportAdjustedDelta(c,b,i,j);k.left?b.left+=k.left:b.top+=k.top;var l=/top|bottom/.test(c),m=l?2*k.left-e+i:2*k.top-f+j,n=l?"offsetWidth":"offsetHeight";d.offset(b),this.replaceArrow(m,d[0][n],l)},c.prototype.replaceArrow=function(a,b,c){this.arrow().css(c?"left":"top",50*(1-a/b)+"%").css(c?"top":"left","")},c.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")},c.prototype.hide=function(b){function d(){"in"!=e.hoverState&&f.detach(),e.$element&&e.$element.removeAttr("aria-describedby").trigger("hidden.bs."+e.type),b&&b()}var e=this,f=a(this.$tip),g=a.Event("hide.bs."+this.type);if(this.$element.trigger(g),!g.isDefaultPrevented())return f.removeClass("in"),a.support.transition&&f.hasClass("fade")?f.one("bsTransitionEnd",d).emulateTransitionEnd(c.TRANSITION_DURATION):d(),this.hoverState=null,this},c.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","")},c.prototype.hasContent=function(){return this.getTitle()},c.prototype.getPosition=function(b){b=b||this.$element;var c=b[0],d="BODY"==c.tagName,e=c.getBoundingClientRect();null==e.width&&(e=a.extend({},e,{width:e.right-e.left,height:e.bottom-e.top}));var f=window.SVGElement&&c instanceof window.SVGElement,g=d?{top:0,left:0}:f?null:b.offset(),h={scroll:d?document.documentElement.scrollTop||document.body.scrollTop:b.scrollTop()},i=d?{width:a(window).width(),height:a(window).height()}:null;return a.extend({},e,h,i,g)},c.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}},c.prototype.getViewportAdjustedDelta=function(a,b,c,d){var e={top:0,left:0};if(!this.$viewport)return e;var f=this.options.viewport&&this.options.viewport.padding||0,g=this.getPosition(this.$viewport);if(/right|left/.test(a)){var h=b.top-f-g.scroll,i=b.top+f-g.scroll+d;h<g.top?e.top=g.top-h:i>g.top+g.height&&(e.top=g.top+g.height-i)}else{var j=b.left-f,k=b.left+f+c;j<g.left?e.left=g.left-j:k>g.right&&(e.left=g.left+g.width-k)}return e},c.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)},c.prototype.getUID=function(a){do a+=~~(1e6*Math.random());while(document.getElementById(a));return a},c.prototype.tip=function(){if(!this.$tip&&(this.$tip=a(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},c.prototype.enable=function(){this.enabled=!0},c.prototype.disable=function(){this.enabled=!1},c.prototype.toggleEnabled=function(){this.enabled=!this.enabled},c.prototype.toggle=function(b){var c=this;b&&(c=a(b.currentTarget).data("bs."+this.type),c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c))),b?(c.inState.click=!c.inState.click,c.isInStateTrue()?c.enter(c):c.leave(c)):c.tip().hasClass("in")?c.leave(c):c.enter(c)},c.prototype.destroy=function(){var a=this;clearTimeout(this.timeout),this.hide(function(){a.$element.off("."+a.type).removeData("bs."+a.type),a.$tip&&a.$tip.detach(),a.$tip=null,a.$arrow=null,a.$viewport=null,a.$element=null})};var d=a.fn.tooltip;a.fn.tooltip=b,a.fn.tooltip.Constructor=c,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=d,this}}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof b&&b;!e&&/destroy|hide/.test(b)||(e||d.data("bs.popover",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");c.VERSION="3.3.7",c.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'}),c.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),c.prototype.constructor=c,c.prototype.getDefaults=function(){return c.DEFAULTS},c.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").children().detach().end()[this.options.html?"string"==typeof c?"html":"append":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},c.prototype.hasContent=function(){return this.getTitle()||this.getContent()},c.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)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var d=a.fn.popover;a.fn.popover=b,a.fn.popover.Constructor=c,a.fn.popover.noConflict=function(){return a.fn.popover=d,this}}(jQuery),+function(a){"use strict";function b(c,d){this.$body=a(document.body),this.$scrollElement=a(a(c).is(document.body)?window:c),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",a.proxy(this.process,this)),this.refresh(),this.process()}function c(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]()})}b.VERSION="3.3.7",b.DEFAULTS={offset:10},b.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},b.prototype.refresh=function(){var b=this,c="offset",d=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),a.isWindow(this.$scrollElement[0])||(c="position",d=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var b=a(this),e=b.data("target")||b.attr("href"),f=/^#./.test(e)&&a(e);return f&&f.length&&f.is(":visible")&&[[f[c]().top+d,e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){b.offsets.push(this[0]),b.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.getScrollHeight(),d=this.options.offset+c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(this.scrollHeight!=c&&this.refresh(),b>=d)return g!=(a=f[f.length-1])&&this.activate(a);if(g&&b<e[0])return this.activeTarget=null,this.clear();for(a=e.length;a--;)g!=f[a]&&b>=e[a]&&(void 0===e[a+1]||b<e[a+1])&&this.activate(f[a])},b.prototype.activate=function(b){
|
7 |
+
this.activeTarget=b,this.clear();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")},b.prototype.clear=function(){a(this.selector).parentsUntil(this.options.target,".active").removeClass("active")};var d=a.fn.scrollspy;a.fn.scrollspy=c,a.fn.scrollspy.Constructor=b,a.fn.scrollspy.noConflict=function(){return a.fn.scrollspy=d,this},a(window).on("load.bs.scrollspy.data-api",function(){a('[data-spy="scroll"]').each(function(){var b=a(this);c.call(b,b.data())})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.tab");e||d.data("bs.tab",e=new c(this)),"string"==typeof b&&e[b]()})}var c=function(b){this.element=a(b)};c.VERSION="3.3.7",c.TRANSITION_DURATION=150,c.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"),f=a.Event("hide.bs.tab",{relatedTarget:b[0]}),g=a.Event("show.bs.tab",{relatedTarget:e[0]});if(e.trigger(f),b.trigger(g),!g.isDefaultPrevented()&&!f.isDefaultPrevented()){var h=a(d);this.activate(b.closest("li"),c),this.activate(h,h.parent(),function(){e.trigger({type:"hidden.bs.tab",relatedTarget:b[0]}),b.trigger({type:"shown.bs.tab",relatedTarget:e[0]})})}}},c.prototype.activate=function(b,d,e){function f(){g.removeClass("active").find("> .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),b.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),h?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu").length&&b.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),e&&e()}var g=d.find("> .active"),h=e&&a.support.transition&&(g.length&&g.hasClass("fade")||!!d.find("> .fade").length);g.length&&h?g.one("bsTransitionEnd",f).emulateTransitionEnd(c.TRANSITION_DURATION):f(),g.removeClass("in")};var d=a.fn.tab;a.fn.tab=b,a.fn.tab.Constructor=c,a.fn.tab.noConflict=function(){return a.fn.tab=d,this};var e=function(c){c.preventDefault(),b.call(a(this),"show")};a(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',e).on("click.bs.tab.data-api",'[data-toggle="pill"]',e)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof b&&b;e||d.data("bs.affix",e=new c(this,f)),"string"==typeof b&&e[b]()})}var c=function(b,d){this.options=a.extend({},c.DEFAULTS,d),this.$target=a(this.options.target).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(b),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};c.VERSION="3.3.7",c.RESET="affix affix-top affix-bottom",c.DEFAULTS={offset:0,target:window},c.prototype.getState=function(a,b,c,d){var e=this.$target.scrollTop(),f=this.$element.offset(),g=this.$target.height();if(null!=c&&"top"==this.affixed)return e<c&&"top";if("bottom"==this.affixed)return null!=c?!(e+this.unpin<=f.top)&&"bottom":!(e+g<=a-d)&&"bottom";var h=null==this.affixed,i=h?e:f.top,j=h?g:b;return null!=c&&e<=c?"top":null!=d&&i+j>=a-d&&"bottom"},c.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(c.RESET).addClass("affix");var a=this.$target.scrollTop(),b=this.$element.offset();return this.pinnedOffset=b.top-a},c.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},c.prototype.checkPosition=function(){if(this.$element.is(":visible")){var b=this.$element.height(),d=this.options.offset,e=d.top,f=d.bottom,g=Math.max(a(document).height(),a(document.body).height());"object"!=typeof d&&(f=e=d),"function"==typeof e&&(e=d.top(this.$element)),"function"==typeof f&&(f=d.bottom(this.$element));var h=this.getState(g,b,e,f);if(this.affixed!=h){null!=this.unpin&&this.$element.css("top","");var i="affix"+(h?"-"+h:""),j=a.Event(i+".bs.affix");if(this.$element.trigger(j),j.isDefaultPrevented())return;this.affixed=h,this.unpin="bottom"==h?this.getPinnedOffset():null,this.$element.removeClass(c.RESET).addClass(i).trigger(i.replace("affix","affixed")+".bs.affix")}"bottom"==h&&this.$element.offset({top:g-b-f})}};var d=a.fn.affix;a.fn.affix=b,a.fn.affix.Constructor=c,a.fn.affix.noConflict=function(){return a.fn.affix=d,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var c=a(this),d=c.data();d.offset=d.offset||{},null!=d.offsetBottom&&(d.offset.bottom=d.offsetBottom),null!=d.offsetTop&&(d.offset.top=d.offsetTop),b.call(c,d)})})}(jQuery);
|
inc/lib/codemirror/codemirror-compressed.js
CHANGED
@@ -20,4 +20,4 @@ var a=c.getCursor("from");b.composing&&b.composing.range.clear(),b.composing={st
|
|
20 |
"Shift-Cmd-G":"findPrev","Cmd-Alt-F":"replace","Shift-Cmd-Alt-F":"replaceAll","Cmd-[":"indentLess","Cmd-]":"indentMore","Cmd-Backspace":"delWrappedLineLeft","Cmd-Delete":"delWrappedLineRight","Cmd-U":"undoSelection","Shift-Cmd-U":"redoSelection","Ctrl-Up":"goDocStart","Ctrl-Down":"goDocEnd",fallthrough:["basic","emacsy"]},Md["default"]=o?Md.macDefault:Md.pcDefault,v.normalizeKeyMap=function(a){var b={};for(var c in a)if(a.hasOwnProperty(c)){var d=a[c];if(/^(name|fallthrough|(de|at)tach)$/.test(c))continue;if("..."==d){delete a[c];continue}for(var e=gg(c.split(" "),Nd),f=0;f<e.length;f++){var g,h;f==e.length-1?(h=e.join(" "),g=d):(h=e.slice(0,f+1).join(" "),g="...");var i=b[h];if(i){if(i!=g)throw new Error("Inconsistent bindings for "+h)}else b[h]=g}delete a[c]}for(var j in b)a[j]=b[j];return a};var Od=v.lookupKey=function(a,b,c,d){b=Rd(b);var e=b.call?b.call(a,d):b[a];if(e===!1)return"nothing";if("..."===e)return"multi";if(null!=e&&c(e))return"handled";if(b.fallthrough){if("[object Array]"!=Object.prototype.toString.call(b.fallthrough))return Od(a,b.fallthrough,c,d);for(var f=0;f<b.fallthrough.length;f++){var g=Od(a,b.fallthrough[f],c,d);if(g)return g}}},Pd=v.isModifierKey=function(a){var b="string"==typeof a?a:Pg[a.keyCode];return"Ctrl"==b||"Alt"==b||"Shift"==b||"Mod"==b},Qd=v.keyName=function(a,b){if(i&&34==a.keyCode&&a["char"])return!1;var c=Pg[a.keyCode],d=c;return null==d||a.altGraphKey?!1:(a.altKey&&"Alt"!=c&&(d="Alt-"+d),(r?a.metaKey:a.ctrlKey)&&"Ctrl"!=c&&(d="Ctrl-"+d),(r?a.ctrlKey:a.metaKey)&&"Cmd"!=c&&(d="Cmd-"+d),!b&&a.shiftKey&&"Shift"!=c&&(d="Shift-"+d),d)};v.fromTextArea=function(a,b){function d(){a.value=i.getValue()}if(b=b?jg(b):{},b.value=a.value,!b.tabindex&&a.tabIndex&&(b.tabindex=a.tabIndex),!b.placeholder&&a.placeholder&&(b.placeholder=a.placeholder),null==b.autofocus){var c=wg();b.autofocus=c==a||null!=a.getAttribute("autofocus")&&c==document.body}if(a.form&&(Jf(a.form,"submit",d),!b.leaveSubmitMethodAlone)){var e=a.form,f=e.submit;try{var g=e.submit=function(){d(),e.submit=f,e.submit(),e.submit=g}}catch(h){}}b.finishInit=function(b){b.save=d,b.getTextArea=function(){return a},b.toTextArea=function(){b.toTextArea=isNaN,d(),a.parentNode.removeChild(b.getWrapperElement()),a.style.display="",a.form&&(Mf(a.form,"submit",d),"function"==typeof a.form.submit&&(a.form.submit=f))}},a.style.display="none";var i=v(function(b){a.parentNode.insertBefore(b,a.nextSibling)},b);return i};var Sd=v.StringStream=function(a,b){this.pos=this.start=0,this.string=a,this.tabSize=b||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0};Sd.prototype={eol:function(){return this.pos>=this.string.length},sol:function(){return this.pos==this.lineStart},peek:function(){return this.string.charAt(this.pos)||void 0},next:function(){return this.pos<this.string.length?this.string.charAt(this.pos++):void 0},eat:function(a){var b=this.string.charAt(this.pos);if("string"==typeof a)var c=b==a;else var c=b&&(a.test?a.test(b):a(b));return c?(++this.pos,b):void 0},eatWhile:function(a){for(var b=this.pos;this.eat(a););return this.pos>b},eatSpace:function(){for(var a=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>a},skipToEnd:function(){this.pos=this.string.length},skipTo:function(a){var b=this.string.indexOf(a,this.pos);return b>-1?(this.pos=b,!0):void 0},backUp:function(a){this.pos-=a},column:function(){return this.lastColumnPos<this.start&&(this.lastColumnValue=_f(this.string,this.start,this.tabSize,this.lastColumnPos,this.lastColumnValue),this.lastColumnPos=this.start),this.lastColumnValue-(this.lineStart?_f(this.string,this.lineStart,this.tabSize):0)},indentation:function(){return _f(this.string,null,this.tabSize)-(this.lineStart?_f(this.string,this.lineStart,this.tabSize):0)},match:function(a,b,c){if("string"!=typeof a){var f=this.string.slice(this.pos).match(a);return f&&f.index>0?null:(f&&b!==!1&&(this.pos+=f[0].length),f)}var d=function(a){return c?a.toLowerCase():a},e=this.string.substr(this.pos,a.length);return d(e)==d(a)?(b!==!1&&(this.pos+=a.length),!0):void 0},current:function(){return this.string.slice(this.start,this.pos)},hideFirstChars:function(a,b){this.lineStart+=a;try{return b()}finally{this.lineStart-=a}}};var Td=0,Ud=v.TextMarker=function(a,b){this.lines=[],this.type=b,this.doc=a,this.id=++Td};Uf(Ud),Ud.prototype.clear=function(){if(!this.explicitlyCleared){var a=this.doc.cm,b=a&&!a.curOp;if(b&&Vb(a),Tf(this,"clear")){var c=this.find();c&&Pf(this,"clear",c.from,c.to)}for(var d=null,e=null,f=0;f<this.lines.length;++f){var g=this.lines[f],h=ae(g.markedSpans,this);a&&!this.collapsed?jc(a,kf(g),"text"):a&&(null!=h.to&&(e=kf(g)),null!=h.from&&(d=kf(g))),g.markedSpans=be(g.markedSpans,h),null==h.from&&this.collapsed&&!we(this.doc,g)&&a&&jf(g,Rb(a.display))}if(a&&this.collapsed&&!a.options.lineWrapping)for(var f=0;f<this.lines.length;++f){var i=se(this.lines[f]),j=G(i);j>a.display.maxLineLength&&(a.display.maxLine=i,a.display.maxLineLength=j,a.display.maxLineChanged=!0)}null!=d&&a&&this.collapsed&&ic(a,d,e+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,a&&ab(a.doc)),a&&Pf(a,"markerCleared",a,this),b&&Xb(a),this.parent&&this.parent.clear()}},Ud.prototype.find=function(a,b){null==a&&"bookmark"==this.type&&(a=1);for(var c,d,e=0;e<this.lines.length;++e){var f=this.lines[e],g=ae(f.markedSpans,this);if(null!=g.from&&(c=oa(b?f:kf(f),g.from),-1==a))return c;if(null!=g.to&&(d=oa(b?f:kf(f),g.to),1==a))return d}return c&&{from:c,to:d}},Ud.prototype.changed=function(){var a=this.find(-1,!0),b=this,c=this.doc.cm;a&&c&&cc(c,function(){var d=a.line,e=kf(a.line),f=wb(c,e);if(f&&(Db(f),c.curOp.selectionChanged=c.curOp.forceUpdate=!0),c.curOp.updateMaxLine=!0,!we(b.doc,d)&&null!=b.height){var g=b.height;b.height=null;var h=Ae(b)-g;h&&jf(d,d.height+h)}})},Ud.prototype.attachLine=function(a){if(!this.lines.length&&this.doc.cm){var b=this.doc.cm.curOp;b.maybeHiddenMarkers&&-1!=fg(b.maybeHiddenMarkers,this)||(b.maybeUnhiddenMarkers||(b.maybeUnhiddenMarkers=[])).push(this)}this.lines.push(a)},Ud.prototype.detachLine=function(a){if(this.lines.splice(fg(this.lines,a),1),!this.lines.length&&this.doc.cm){var b=this.doc.cm.curOp;(b.maybeHiddenMarkers||(b.maybeHiddenMarkers=[])).push(this)}};var Td=0,Wd=v.SharedTextMarker=function(a,b){this.markers=a,this.primary=b;for(var c=0;c<a.length;++c)a[c].parent=this};Uf(Wd),Wd.prototype.clear=function(){if(!this.explicitlyCleared){this.explicitlyCleared=!0;for(var a=0;a<this.markers.length;++a)this.markers[a].clear();Pf(this,"clear")}},Wd.prototype.find=function(a,b){return this.primary.find(a,b)};var ye=v.LineWidget=function(a,b,c){if(c)for(var d in c)c.hasOwnProperty(d)&&(this[d]=c[d]);this.doc=a,this.node=b};Uf(ye),ye.prototype.clear=function(){var a=this.doc.cm,b=this.line.widgets,c=this.line,d=kf(c);if(null!=d&&b){for(var e=0;e<b.length;++e)b[e]==this&&b.splice(e--,1);b.length||(c.widgets=null);var f=Ae(this);jf(c,Math.max(0,c.height-f)),a&&cc(a,function(){ze(a,c,-f),jc(a,d,"widget")})}},ye.prototype.changed=function(){var a=this.height,b=this.doc.cm,c=this.line;this.height=null;var d=Ae(this)-a;d&&(jf(c,c.height+d),b&&cc(b,function(){b.curOp.forceUpdate=!0,ze(b,c,d)}))};var Ce=v.Line=function(a,b,c){this.text=a,ke(this,b),this.height=c?c(this):1};Uf(Ce),Ce.prototype.lineNo=function(){return kf(this)};var Ne={},Oe={};Ze.prototype={chunkSize:function(){return this.lines.length},removeInner:function(a,b){for(var c=a,d=a+b;d>c;++c){var e=this.lines[c];this.height-=e.height,Ee(e),Pf(e,"delete")}this.lines.splice(a,b)},collapse:function(a){a.push.apply(a,this.lines)},insertInner:function(a,b,c){this.height+=c,this.lines=this.lines.slice(0,a).concat(b).concat(this.lines.slice(a));for(var d=0;d<b.length;++d)b[d].parent=this},iterN:function(a,b,c){for(var d=a+b;d>a;++a)if(c(this.lines[a]))return!0}},$e.prototype={chunkSize:function(){return this.size},removeInner:function(a,b){this.size-=b;for(var c=0;c<this.children.length;++c){var d=this.children[c],e=d.chunkSize();if(e>a){var f=Math.min(b,e-a),g=d.height;if(d.removeInner(a,f),this.height-=g-d.height,e==f&&(this.children.splice(c--,1),d.parent=null),0==(b-=f))break;a=0}else a-=e}if(this.size-b<25&&(this.children.length>1||!(this.children[0]instanceof Ze))){var h=[];this.collapse(h),this.children=[new Ze(h)],this.children[0].parent=this}},collapse:function(a){for(var b=0;b<this.children.length;++b)this.children[b].collapse(a)},insertInner:function(a,b,c){this.size+=b.length,this.height+=c;for(var d=0;d<this.children.length;++d){var e=this.children[d],f=e.chunkSize();if(f>=a){if(e.insertInner(a,b,c),e.lines&&e.lines.length>50){for(;e.lines.length>50;){var g=e.lines.splice(e.lines.length-25,25),h=new Ze(g);e.height-=h.height,this.children.splice(d+1,0,h),h.parent=this}this.maybeSpill()}break}a-=f}},maybeSpill:function(){if(!(this.children.length<=10)){var a=this;do{var b=a.children.splice(a.children.length-5,5),c=new $e(b);if(a.parent){a.size-=c.size,a.height-=c.height;var e=fg(a.parent.children,a);a.parent.children.splice(e+1,0,c)}else{var d=new $e(a.children);d.parent=a,a.children=[d,c],a=d}c.parent=a.parent}while(a.children.length>10);a.parent.maybeSpill()}},iterN:function(a,b,c){for(var d=0;d<this.children.length;++d){var e=this.children[d],f=e.chunkSize();if(f>a){var g=Math.min(b,f-a);if(e.iterN(a,g,c))return!0;if(0==(b-=g))break;a=0}else a-=f}}};var _e=0,af=v.Doc=function(a,b,c,d){if(!(this instanceof af))return new af(a,b,c,d);null==c&&(c=0),$e.call(this,[new Ze([new Ce("",null)])]),this.first=c,this.scrollTop=this.scrollLeft=0,this.cantEdit=!1,this.cleanGeneration=1,this.frontier=c;var e=oa(c,0);this.sel=Ma(e),this.history=new of(null),this.id=++_e,this.modeOption=b,this.lineSep=d,"string"==typeof a&&(a=this.splitLines(a)),Ye(this,{from:e,to:e,text:a}),Za(this,Ma(e),Xf)};af.prototype=ig($e.prototype,{constructor:af,iter:function(a,b,c){c?this.iterN(a-this.first,b-a,c):this.iterN(this.first,this.first+this.size,a)},insert:function(a,b){for(var c=0,d=0;d<b.length;++d)c+=b[d].height;this.insertInner(a-this.first,b,c)},remove:function(a,b){this.removeInner(a-this.first,b)},getValue:function(a){var b=hf(this,this.first,this.first+this.size);return a===!1?b:b.join(a||this.lineSeparator())},setValue:fc(function(a){var b=oa(this.first,0),c=this.first+this.size-1;hd(this,{from:b,to:oa(c,ff(this,c).text.length),text:this.splitLines(a),origin:"setValue",full:!0},!0),Za(this,Ma(b))}),replaceRange:function(a,b,c,d){b=Oa(this,b),c=c?Oa(this,c):b,nd(this,a,b,c,d)},getRange:function(a,b,c){var d=gf(this,Oa(this,a),Oa(this,b));return c===!1?d:d.join(c||this.lineSeparator())},getLine:function(a){var b=this.getLineHandle(a);return b&&b.text},getLineHandle:function(a){return Qa(this,a)?ff(this,a):void 0},getLineNumber:function(a){return kf(a)},getLineHandleVisualStart:function(a){return"number"==typeof a&&(a=ff(this,a)),se(a)},lineCount:function(){return this.size},firstLine:function(){return this.first},lastLine:function(){return this.first+this.size-1},clipPos:function(a){return Oa(this,a)},getCursor:function(a){var c,b=this.sel.primary();return c=null==a||"head"==a?b.head:"anchor"==a?b.anchor:"end"==a||"to"==a||a===!1?b.to():b.from()},listSelections:function(){return this.sel.ranges},somethingSelected:function(){return this.sel.somethingSelected()},setCursor:fc(function(a,b,c){Wa(this,Oa(this,"number"==typeof a?oa(a,b||0):a),null,c)}),setSelection:fc(function(a,b,c){Wa(this,Oa(this,a),Oa(this,b||a),c)}),extendSelection:fc(function(a,b,c){Ta(this,Oa(this,a),b&&Oa(this,b),c)}),extendSelections:fc(function(a,b){Ua(this,Ra(this,a,b))}),extendSelectionsBy:fc(function(a,b){Ua(this,gg(this.sel.ranges,a),b)}),setSelections:fc(function(a,b,c){if(a.length){for(var d=0,e=[];d<a.length;d++)e[d]=new Ka(Oa(this,a[d].anchor),Oa(this,a[d].head));null==b&&(b=Math.min(a.length-1,this.sel.primIndex)),Za(this,La(e,b),c)}}),addSelection:fc(function(a,b,c){var d=this.sel.ranges.slice(0);d.push(new Ka(Oa(this,a),Oa(this,b||a))),Za(this,La(d,d.length-1),c)}),getSelection:function(a){for(var c,b=this.sel.ranges,d=0;d<b.length;d++){var e=gf(this,b[d].from(),b[d].to());c=c?c.concat(e):e}return a===!1?c:c.join(a||this.lineSeparator())},getSelections:function(a){for(var b=[],c=this.sel.ranges,d=0;d<c.length;d++){var e=gf(this,c[d].from(),c[d].to());a!==!1&&(e=e.join(a||this.lineSeparator())),b[d]=e}return b},replaceSelection:function(a,b,c){for(var d=[],e=0;e<this.sel.ranges.length;e++)d[e]=a;this.replaceSelections(d,b,c||"+input")},replaceSelections:fc(function(a,b,c){for(var d=[],e=this.sel,f=0;f<e.ranges.length;f++){var g=e.ranges[f];d[f]={from:g.from(),to:g.to(),text:this.splitLines(a[f]),origin:c}}for(var h=b&&"end"!=b&&fd(this,d,b),f=d.length-1;f>=0;f--)hd(this,d[f]);h?Ya(this,h):this.cm&&td(this.cm)}),undo:fc(function(){jd(this,"undo")}),redo:fc(function(){jd(this,"redo")}),undoSelection:fc(function(){jd(this,"undo",!0)}),redoSelection:fc(function(){jd(this,"redo",!0)}),setExtending:function(a){this.extend=a},getExtending:function(){return this.extend},historySize:function(){for(var a=this.history,b=0,c=0,d=0;d<a.done.length;d++)a.done[d].ranges||++b;for(var d=0;d<a.undone.length;d++)a.undone[d].ranges||++c;return{undo:b,redo:c}},clearHistory:function(){this.history=new of(this.history.maxGeneration)},markClean:function(){this.cleanGeneration=this.changeGeneration(!0)},changeGeneration:function(a){return a&&(this.history.lastOp=this.history.lastSelOp=this.history.lastOrigin=null),this.history.generation},isClean:function(a){return this.history.generation==(a||this.cleanGeneration)},getHistory:function(){return{done:zf(this.history.done),undone:zf(this.history.undone)}},setHistory:function(a){var b=this.history=new of(this.history.maxGeneration);b.done=zf(a.done.slice(0),null,!0),b.undone=zf(a.undone.slice(0),null,!0)},addLineClass:fc(function(a,b,c){return wd(this,a,"gutter"==b?"gutter":"class",function(a){var d="text"==b?"textClass":"background"==b?"bgClass":"gutter"==b?"gutterClass":"wrapClass";if(a[d]){if(xg(c).test(a[d]))return!1;a[d]+=" "+c}else a[d]=c;return!0})}),removeLineClass:fc(function(a,b,c){return wd(this,a,"gutter"==b?"gutter":"class",function(a){var d="text"==b?"textClass":"background"==b?"bgClass":"gutter"==b?"gutterClass":"wrapClass",e=a[d];if(!e)return!1;if(null==c)a[d]=null;else{var f=e.match(xg(c));if(!f)return!1;var g=f.index+f[0].length;a[d]=e.slice(0,f.index)+(f.index&&g!=e.length?" ":"")+e.slice(g)||null}return!0})}),addLineWidget:fc(function(a,b,c){return Be(this,a,b,c)}),removeLineWidget:function(a){a.clear()},markText:function(a,b,c){return Vd(this,Oa(this,a),Oa(this,b),c,"range")},setBookmark:function(a,b){var c={replacedWith:b&&(null==b.nodeType?b.widget:b),insertLeft:b&&b.insertLeft,clearWhenEmpty:!1,shared:b&&b.shared,handleMouseEvents:b&&b.handleMouseEvents};return a=Oa(this,a),Vd(this,a,a,c,"bookmark")},findMarksAt:function(a){a=Oa(this,a);var b=[],c=ff(this,a.line).markedSpans;if(c)for(var d=0;d<c.length;++d){var e=c[d];(null==e.from||e.from<=a.ch)&&(null==e.to||e.to>=a.ch)&&b.push(e.marker.parent||e.marker)}return b},findMarks:function(a,b,c){a=Oa(this,a),b=Oa(this,b);var d=[],e=a.line;return this.iter(a.line,b.line+1,function(f){var g=f.markedSpans;if(g)for(var h=0;h<g.length;h++){var i=g[h];e==a.line&&a.ch>i.to||null==i.from&&e!=a.line||e==b.line&&i.from>b.ch||c&&!c(i.marker)||d.push(i.marker.parent||i.marker)}++e}),d},getAllMarks:function(){var a=[];return this.iter(function(b){var c=b.markedSpans;if(c)for(var d=0;d<c.length;++d)null!=c[d].from&&a.push(c[d].marker)}),a},posFromIndex:function(a){var b,c=this.first;return this.iter(function(d){var e=d.text.length+1;return e>a?(b=a,!0):(a-=e,void++c)}),Oa(this,oa(c,b))},indexFromPos:function(a){a=Oa(this,a);var b=a.ch;return a.line<this.first||a.ch<0?0:(this.iter(this.first,a.line,function(a){b+=a.text.length+1}),b)},copy:function(a){var b=new af(hf(this,this.first,this.first+this.size),this.modeOption,this.first,this.lineSep);return b.scrollTop=this.scrollTop,b.scrollLeft=this.scrollLeft,b.sel=this.sel,b.extend=!1,a&&(b.history.undoDepth=this.history.undoDepth,b.setHistory(this.getHistory())),b},linkedDoc:function(a){a||(a={});var b=this.first,c=this.first+this.size;null!=a.from&&a.from>b&&(b=a.from),null!=a.to&&a.to<c&&(c=a.to);var d=new af(hf(this,b,c),a.mode||this.modeOption,b,this.lineSep);return a.sharedHist&&(d.history=this.history),(this.linked||(this.linked=[])).push({doc:d,sharedHist:a.sharedHist}),d.linked=[{doc:this,isParent:!0,sharedHist:a.sharedHist}],Zd(d,Yd(this)),d},unlinkDoc:function(a){if(a instanceof v&&(a=a.doc),this.linked)for(var b=0;b<this.linked.length;++b){var c=this.linked[b];if(c.doc==a){this.linked.splice(b,1),a.unlinkDoc(this),$d(Yd(this));break}}if(a.history==this.history){var d=[a.id];df(a,function(a){d.push(a.id)},!0),a.history=new of(null),a.history.done=zf(this.history.done,d),a.history.undone=zf(this.history.undone,d)}},iterLinkedDocs:function(a){df(this,a)},getMode:function(){return this.mode},getEditor:function(){return this.cm},splitLines:function(a){return this.lineSep?a.split(this.lineSep):Kg(a)},lineSeparator:function(){return this.lineSep||"\n"}}),af.prototype.eachLine=af.prototype.iter;var bf="iter insert remove copy getEditor constructor".split(" ");for(var cf in af.prototype)af.prototype.hasOwnProperty(cf)&&fg(bf,cf)<0&&(v.prototype[cf]=function(a){return function(){return a.apply(this.doc,arguments)}}(af.prototype[cf]));Uf(af);var Df=v.e_preventDefault=function(a){a.preventDefault?a.preventDefault():a.returnValue=!1},Ef=v.e_stopPropagation=function(a){a.stopPropagation?a.stopPropagation():a.cancelBubble=!0},Gf=v.e_stop=function(a){Df(a),Ef(a)},Jf=v.on=function(a,b,c){if(a.addEventListener)a.addEventListener(b,c,!1);else if(a.attachEvent)a.attachEvent("on"+b,c);else{var d=a._handlers||(a._handlers={}),e=d[b]||(d[b]=[]);e.push(c)}},Kf=[],Mf=v.off=function(a,b,c){if(a.removeEventListener)a.removeEventListener(b,c,!1);else if(a.detachEvent)a.detachEvent("on"+b,c);else for(var d=Lf(a,b,!1),e=0;e<d.length;++e)if(d[e]==c){d.splice(e,1);break}},Nf=v.signal=function(a,b){var c=Lf(a,b,!0);if(c.length)for(var d=Array.prototype.slice.call(arguments,2),e=0;e<c.length;++e)c[e].apply(null,d)},Of=null,Vf=30,Wf=v.Pass={toString:function(){return"CodeMirror.Pass"}},Xf={scroll:!1},Yf={origin:"*mouse"},Zf={origin:"+move"};$f.prototype.set=function(a,b){clearTimeout(this.id),this.id=setTimeout(b,a)};var _f=v.countColumn=function(a,b,c,d,e){null==b&&(b=a.search(/[^\s\u00a0]/),-1==b&&(b=a.length));for(var f=d||0,g=e||0;;){var h=a.indexOf(" ",f);if(0>h||h>=b)return g+(b-f);g+=h-f,g+=c-g%c,f=h+1}},ag=v.findColumn=function(a,b,c){for(var d=0,e=0;;){var f=a.indexOf(" ",d);-1==f&&(f=a.length);var g=f-d;if(f==a.length||e+g>=b)return d+Math.min(g,b-e);if(e+=f-d,e+=c-e%c,d=f+1,e>=b)return d}},bg=[""],eg=function(a){a.select()};m?eg=function(a){a.selectionStart=0,a.selectionEnd=a.value.length}:d&&(eg=function(a){try{a.select()}catch(b){}});var sg,lg=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/,mg=v.isWordChar=function(a){return/\w/.test(a)||a>"\x80"&&(a.toUpperCase()!=a.toLowerCase()||lg.test(a))},pg=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;sg=document.createRange?function(a,b,c,d){var e=document.createRange();return e.setEnd(d||a,c),e.setStart(a,b),e}:function(a,b,c){var d=document.body.createTextRange();try{d.moveToElementText(a.parentNode)}catch(e){return d}return d.collapse(!0),d.moveEnd("character",c),d.moveStart("character",b),d};var vg=v.contains=function(a,b){if(3==b.nodeType&&(b=b.parentNode),a.contains)return a.contains(b);do if(11==b.nodeType&&(b=b.host),b==a)return!0;while(b=b.parentNode)};d&&11>e&&(wg=function(){try{return document.activeElement}catch(a){return document.body}});var Gg,Ig,yg=v.rmClass=function(a,b){var c=a.className,d=xg(b).exec(c);if(d){var e=c.slice(d.index+d[0].length);a.className=c.slice(0,d.index)+(e?d[1]+e:"")}},zg=v.addClass=function(a,b){var c=a.className;xg(b).test(c)||(a.className+=(c?" ":"")+b)},Cg=!1,Fg=function(){if(d&&9>e)return!1;var a=rg("div");return"draggable"in a||"dragDrop"in a}(),Kg=v.splitLines=3!="\n\nb".split(/\n/).length?function(a){for(var b=0,c=[],d=a.length;d>=b;){var e=a.indexOf("\n",b);-1==e&&(e=a.length);var f=a.slice(b,"\r"==a.charAt(e-1)?e-1:e),g=f.indexOf("\r");-1!=g?(c.push(f.slice(0,g)),b+=g+1):(c.push(f),b=e+1)}return c}:function(a){return a.split(/\r\n?|\n/)},Lg=window.getSelection?function(a){try{return a.selectionStart!=a.selectionEnd}catch(b){return!1}}:function(a){try{var b=a.ownerDocument.selection.createRange()}catch(c){}return b&&b.parentElement()==a?0!=b.compareEndPoints("StartToEnd",b):!1},Mg=function(){var a=rg("div");return"oncopy"in a?!0:(a.setAttribute("oncopy","return;"),"function"==typeof a.oncopy)}(),Ng=null,Pg=v.keyNames={3:"Enter",8:"Backspace",9:"Tab",13:"Enter",16:"Shift",17:"Ctrl",18:"Alt",19:"Pause",20:"CapsLock",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"PrintScrn",45:"Insert",46:"Delete",59:";",61:"=",91:"Mod",92:"Mod",93:"Mod",106:"*",107:"=",109:"-",110:".",111:"/",127:"Delete",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",63232:"Up",63233:"Down",63234:"Left",63235:"Right",63272:"Delete",63273:"Home",63275:"End",63276:"PageUp",63277:"PageDown",63302:"Insert"};!function(){for(var a=0;10>a;a++)Pg[a+48]=Pg[a+96]=String(a);for(var a=65;90>=a;a++)Pg[a]=String.fromCharCode(a);for(var a=1;12>=a;a++)Pg[a+111]=Pg[a+63235]="F"+a}();var Zg,ch=function(){function c(c){return 247>=c?a.charAt(c):c>=1424&&1524>=c?"R":c>=1536&&1773>=c?b.charAt(c-1536):c>=1774&&2220>=c?"r":c>=8192&&8203>=c?"w":8204==c?"b":"L"}function j(a,b,c){this.level=a,this.from=b,this.to=c}var a="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN",b="rrrrrrrrrrrr,rNNmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmrrrrrrrnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmNmmmm",d=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,e=/[stwN]/,f=/[LRr]/,g=/[Lb1n]/,h=/[1n]/,i="L";return function(a){if(!d.test(a))return!1;for(var m,b=a.length,k=[],l=0;b>l;++l)k.push(m=c(a.charCodeAt(l)));for(var l=0,n=i;b>l;++l){var m=k[l];"m"==m?k[l]=n:n=m}for(var l=0,o=i;b>l;++l){var m=k[l];"1"==m&&"r"==o?k[l]="n":f.test(m)&&(o=m,"r"==m&&(k[l]="R"))}for(var l=1,n=k[0];b-1>l;++l){var m=k[l];"+"==m&&"1"==n&&"1"==k[l+1]?k[l]="1":","!=m||n!=k[l+1]||"1"!=n&&"n"!=n||(k[l]=n),n=m}for(var l=0;b>l;++l){var m=k[l];if(","==m)k[l]="N";else if("%"==m){for(var p=l+1;b>p&&"%"==k[p];++p);for(var q=l&&"!"==k[l-1]||b>p&&"1"==k[p]?"1":"N",r=l;p>r;++r)k[r]=q;l=p-1}}for(var l=0,o=i;b>l;++l){var m=k[l];"L"==o&&"1"==m?k[l]="L":f.test(m)&&(o=m)}for(var l=0;b>l;++l)if(e.test(k[l])){for(var p=l+1;b>p&&e.test(k[p]);++p);for(var s="L"==(l?k[l-1]:i),t="L"==(b>p?k[p]:i),q=s||t?"L":"R",r=l;p>r;++r)k[r]=q;l=p-1}for(var v,u=[],l=0;b>l;)if(g.test(k[l])){var w=l;for(++l;b>l&&g.test(k[l]);++l);u.push(new j(0,w,l))}else{var x=l,y=u.length;for(++l;b>l&&"L"!=k[l];++l);for(var r=x;l>r;)if(h.test(k[r])){r>x&&u.splice(y,0,new j(1,x,r));var z=r;for(++r;l>r&&h.test(k[r]);++r);u.splice(y,0,new j(2,z,r)),x=r}else++r;l>x&&u.splice(y,0,new j(1,x,l))}return 1==u[0].level&&(v=a.match(/^\s+/))&&(u[0].from=v[0].length,u.unshift(new j(0,0,v[0].length))),1==dg(u).level&&(v=a.match(/\s+$/))&&(dg(u).to-=v[0].length,u.push(new j(0,b-v[0].length,b))),2==u[0].level&&u.unshift(new j(1,u[0].to,u[0].to)),u[0].level!=dg(u).level&&u.push(new j(u[0].level,b,b)),u}}();return v.version="5.7.1",v}),function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";function b(a){for(var b={},c=a.split(" "),d=0;d<c.length;++d)b[c[d]]=!0;return b}function e(a,b){if(!b.startOfLine)return!1;for(;;){if(!a.skipTo("\\")){a.skipToEnd(),b.tokenize=null;break}if(a.next(),a.eol()){b.tokenize=e;break}}return"meta"}function f(a,b){return"variable-3"==b.prevToken?"variable-3":!1}function g(a){return a.eatWhile(/[\w\.']/),"number"}function h(a,b){if(a.backUp(1),a.match(/(R|u8R|uR|UR|LR)/)){var c=a.match(/"([^\s\\()]{0,16})\(/);return c?(b.cpp11RawStringDelim=c[1],b.tokenize=k,k(a,b)):!1}return a.match(/(u8|u|U|L)/)?a.match(/["']/,!1)?"string":!1:(a.next(),!1)}function i(a){var b=/(\w+)::(\w+)$/.exec(a);return b&&b[1]==b[2]}function j(a,b){for(var c;null!=(c=a.next());)if('"'==c&&!a.eat('"')){b.tokenize=null;break}return"string"}function k(a,b){var c=b.cpp11RawStringDelim.replace(/[^\w\s]/g,"\\$&"),d=a.match(new RegExp(".*?\\)"+c+'"'));return d?b.tokenize=null:a.skipToEnd(),"string"}function l(b,c){function e(a){if(a)for(var b in a)a.hasOwnProperty(b)&&d.push(b)}"string"==typeof b&&(b=[b]);var d=[];e(c.keywords),e(c.types),e(c.builtin),e(c.atoms),d.length&&(c.helperType=b[0],a.registerHelper("hintWords",b[0],d));for(var f=0;f<b.length;++f)a.defineMIME(b[f],c)}function m(a,b){for(var c=!1;!a.eol();){if(!c&&a.match('"""')){b.tokenize=null;break}c="\\"==a.next()&&!c}return"string"}a.defineMode("clike",function(b,c){function u(a,b){var c=a.next();if(m[c]){var d=m[c](a,b);if(d!==!1)return d}if('"'==c||"'"==c)return b.tokenize=v(c),b.tokenize(a,b);if(/[\[\]{}\(\),;\:\.]/.test(c))return s=c,null;if(/\d/.test(c))return a.eatWhile(/[\w\.]/),"number";if("/"==c){if(a.eat("*"))return b.tokenize=w,w(a,b);if(a.eat("/"))return a.skipToEnd(),"comment"}if(r.test(c))return a.eatWhile(r),"operator";if(a.eatWhile(/[\w\$_\xa1-\uffff]/),q)for(;a.match(q);)a.eatWhile(/[\w\$_\xa1-\uffff]/);var e=a.current();return g.propertyIsEnumerable(e)?(j.propertyIsEnumerable(e)&&(s="newstatement"),k.propertyIsEnumerable(e)&&(t=!0),"keyword"):h.propertyIsEnumerable(e)?"variable-3":i.propertyIsEnumerable(e)?(j.propertyIsEnumerable(e)&&(s="newstatement"),"builtin"):l.propertyIsEnumerable(e)?"atom":"variable"}function v(a){return function(b,c){for(var e,d=!1,f=!1;null!=(e=b.next());){if(e==a&&!d){f=!0;break}d=!d&&"\\"==e}return(f||!d&&!n)&&(c.tokenize=null),"string"}}function w(a,b){for(var d,c=!1;d=a.next();){if("/"==d&&c){b.tokenize=null;break}c="*"==d}return"comment"}function x(a,b,c,d,e){this.indented=a,this.column=b,this.type=c,this.align=d,this.prev=e}function y(a){return"statement"==a||"switchstatement"==a||"namespace"==a}function z(a,b,c){var d=a.indented;return a.context&&y(a.context.type)&&!y(c)&&(d=a.context.indented),a.context=new x(d,b,c,null,a.context)}function A(a){var b=a.context.type;return(")"==b||"]"==b||"}"==b)&&(a.indented=a.context.indented),a.context=a.context.prev}function B(a,b){return"variable"==b.prevToken||"variable-3"==b.prevToken?!0:/\S(?:[^- ]>|[*\]])\s*$|\*$/.test(a.string.slice(0,a.start))?!0:void 0}function C(a){for(;;){if(!a||"top"==a.type)return!0;if("}"==a.type&&"namespace"!=a.prev.type)return!1;a=a.prev}}var s,t,d=b.indentUnit,e=c.statementIndentUnit||d,f=c.dontAlignCalls,g=c.keywords||{},h=c.types||{},i=c.builtin||{},j=c.blockKeywords||{},k=c.defKeywords||{},l=c.atoms||{},m=c.hooks||{},n=c.multiLineStrings,o=c.indentStatements!==!1,p=c.indentSwitch!==!1,q=c.namespaceSeparator,r=/[+\-*&%=<>!?|\/]/;return{startState:function(a){return{tokenize:null,context:new x((a||0)-d,0,"top",!1),indented:0,startOfLine:!0,prevToken:null}},token:function(a,b){var d=b.context;if(a.sol()&&(null==d.align&&(d.align=!1),b.indented=a.indentation(),b.startOfLine=!0),a.eatSpace())return null;s=t=null;var e=(b.tokenize||u)(a,b);if("comment"==e||"meta"==e)return e;if(null==d.align&&(d.align=!0),";"==s||":"==s||","==s)for(;y(b.context.type);)A(b);else if("{"==s)z(b,a.column(),"}");else if("["==s)z(b,a.column(),"]");else if("("==s)z(b,a.column(),")");else if("}"==s){for(;y(d.type);)d=A(b);for("}"==d.type&&(d=A(b));y(d.type);)d=A(b)}else if(s==d.type)A(b);else if(o&&(("}"==d.type||"top"==d.type)&&";"!=s||y(d.type)&&"newstatement"==s)){var f="statement";"newstatement"==s&&p&&"switch"==a.current()?f="switchstatement":"keyword"==e&&"namespace"==a.current()&&(f="namespace"),z(b,a.column(),f)}if("variable"==e&&("def"==b.prevToken||c.typeFirstDefinitions&&B(a,b)&&C(b.context)&&a.match(/^\s*\(/,!1))&&(e="def"),m.token){var g=m.token(a,b,e);void 0!==g&&(e=g)}return"def"==e&&c.styleDefs===!1&&(e="variable"),b.startOfLine=!1,b.prevToken=t?"def":e||s,e},indent:function(b,c){if(b.tokenize!=u&&null!=b.tokenize)return a.Pass;var g=b.context,h=c&&c.charAt(0);y(g.type)&&"}"==h&&(g=g.prev);var i=h==g.type,j=g.prev&&"switchstatement"==g.prev.type;return y(g.type)?g.indented+("{"==h?0:e):!g.align||f&&")"==g.type?")"!=g.type||i?g.indented+(i?0:d)+(i||!j||/^(?:case|default)\b/.test(c)?0:d):g.indented+e:g.column+(i?0:1)},electricInput:p?/^\s*(?:case .*?:|default:|\{\}?|\})$/:/^\s*[{}]$/,blockCommentStart:"/*",blockCommentEnd:"*/",lineComment:"//",fold:"brace"}});var c="auto if break case register continue return default do sizeof static else struct switch extern typedef float union for goto while enum const volatile",d="int long char short double float unsigned signed void size_t ptrdiff_t";l(["text/x-csrc","text/x-c","text/x-chdr"],{name:"clike",keywords:b(c),types:b(d+" bool _Complex _Bool float_t double_t intptr_t intmax_t int8_t int16_t int32_t int64_t uintptr_t uintmax_t uint8_t uint16_t uint32_t uint64_t"),blockKeywords:b("case do else for if switch while struct"),defKeywords:b("struct"),typeFirstDefinitions:!0,atoms:b("null true false"),hooks:{"#":e,"*":f},modeProps:{fold:["brace","include"]}}),l(["text/x-c++src","text/x-c++hdr"],{name:"clike",keywords:b(c+" asm dynamic_cast namespace reinterpret_cast try explicit new static_cast typeid catch operator template typename class friend private this using const_cast inline public throw virtual delete mutable protected alignas alignof constexpr decltype nullptr noexcept thread_local final static_assert override"),types:b(d+" bool wchar_t"),blockKeywords:b("catch class do else finally for if struct switch try while"),
|
21 |
defKeywords:b("class namespace struct enum union"),typeFirstDefinitions:!0,atoms:b("true false null"),hooks:{"#":e,"*":f,u:h,U:h,L:h,R:h,0:g,1:g,2:g,3:g,4:g,5:g,6:g,7:g,8:g,9:g,token:function(a,b,c){return"variable"!=c||"("!=a.peek()||";"!=b.prevToken&&null!=b.prevToken&&"}"!=b.prevToken||!i(a.current())?void 0:"def"}},namespaceSeparator:"::",modeProps:{fold:["brace","include"]}}),l("text/x-java",{name:"clike",keywords:b("abstract assert break case catch class const continue default do else enum extends final finally float for goto if implements import instanceof interface native new package private protected public return static strictfp super switch synchronized this throw throws transient try volatile while"),types:b("byte short int long float double boolean char void Boolean Byte Character Double Float Integer Long Number Object Short String StringBuffer StringBuilder Void"),blockKeywords:b("catch class do else finally for if switch try while"),defKeywords:b("class interface package enum"),typeFirstDefinitions:!0,atoms:b("true false null"),hooks:{"@":function(a){return a.eatWhile(/[\w\$_]/),"meta"}},modeProps:{fold:["brace","import"]}}),l("text/x-csharp",{name:"clike",keywords:b("abstract as async await base break case catch checked class const continue default delegate do else enum event explicit extern finally fixed for foreach goto if implicit in interface internal is lock namespace new operator out override params private protected public readonly ref return sealed sizeof stackalloc static struct switch this throw try typeof unchecked unsafe using virtual void volatile while add alias ascending descending dynamic from get global group into join let orderby partial remove select set value var yield"),types:b("Action Boolean Byte Char DateTime DateTimeOffset Decimal Double Func Guid Int16 Int32 Int64 Object SByte Single String Task TimeSpan UInt16 UInt32 UInt64 bool byte char decimal double short int long object sbyte float string ushort uint ulong"),blockKeywords:b("catch class do else finally for foreach if struct switch try while"),defKeywords:b("class interface namespace struct var"),typeFirstDefinitions:!0,atoms:b("true false null"),hooks:{"@":function(a,b){return a.eat('"')?(b.tokenize=j,j(a,b)):(a.eatWhile(/[\w\$_]/),"meta")}}}),l("text/x-scala",{name:"clike",keywords:b("abstract case catch class def do else extends false final finally for forSome if implicit import lazy match new null object override package private protected return sealed super this throw trait try type val var while with yield _ : = => <- <: <% >: # @ assert assume require print println printf readLine readBoolean readByte readShort readChar readInt readLong readFloat readDouble :: #:: "),types:b("AnyVal App Application Array BufferedIterator BigDecimal BigInt Char Console Either Enumeration Equiv Error Exception Fractional Function IndexedSeq Integral Iterable Iterator List Map Numeric Nil NotNull Option Ordered Ordering PartialFunction PartialOrdering Product Proxy Range Responder Seq Serializable Set Specializable Stream StringBuilder StringContext Symbol Throwable Traversable TraversableOnce Tuple Unit Vector Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void"),multiLineStrings:!0,blockKeywords:b("catch class do else finally for forSome if match switch try while"),defKeywords:b("class def object package trait type val var"),atoms:b("true false null"),indentStatements:!1,indentSwitch:!1,hooks:{"@":function(a){return a.eatWhile(/[\w\$_]/),"meta"},'"':function(a,b){return a.match('""')?(b.tokenize=m,b.tokenize(a,b)):!1},"'":function(a){return a.eatWhile(/[\w\$_\xa1-\uffff]/),"atom"}},modeProps:{closeBrackets:{triples:'"'}}}),l("text/x-kotlin",{name:"clike",keywords:b("package as typealias class interface this super val var fun for is in This throw return break continue object if else while do try when !in !is as?file import where by get set abstract enum open inner override private public internal protected catch finally out final vararg reified dynamic companion constructor init sealed field property receiver param sparam lateinit data inline noinline tailrec external annotation crossinline"),types:b("Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void"),multiLineStrings:!0,blockKeywords:b("catch class do else finally for if where try while enum"),defKeywords:b("class val var object package interface fun"),atoms:b("true false null this"),modeProps:{closeBrackets:{triples:'"'}}}),l(["x-shader/x-vertex","x-shader/x-fragment"],{name:"clike",keywords:b("sampler1D sampler2D sampler3D samplerCube sampler1DShadow sampler2DShadow const attribute uniform varying break continue discard return for while do if else struct in out inout"),types:b("float int bool void vec2 vec3 vec4 ivec2 ivec3 ivec4 bvec2 bvec3 bvec4 mat2 mat3 mat4"),blockKeywords:b("for while do if else struct"),builtin:b("radians degrees sin cos tan asin acos atan pow exp log exp2 sqrt inversesqrt abs sign floor ceil fract mod min max clamp mix step smoothstep length distance dot cross normalize ftransform faceforward reflect refract matrixCompMult lessThan lessThanEqual greaterThan greaterThanEqual equal notEqual any all not texture1D texture1DProj texture1DLod texture1DProjLod texture2D texture2DProj texture2DLod texture2DProjLod texture3D texture3DProj texture3DLod texture3DProjLod textureCube textureCubeLod shadow1D shadow2D shadow1DProj shadow2DProj shadow1DLod shadow2DLod shadow1DProjLod shadow2DProjLod dFdx dFdy fwidth noise1 noise2 noise3 noise4"),atoms:b("true false gl_FragColor gl_SecondaryColor gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_FogCoord gl_PointCoord gl_Position gl_PointSize gl_ClipVertex gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_TexCoord gl_FogFragCoord gl_FragCoord gl_FrontFacing gl_FragData gl_FragDepth gl_ModelViewMatrix gl_ProjectionMatrix gl_ModelViewProjectionMatrix gl_TextureMatrix gl_NormalMatrix gl_ModelViewMatrixInverse gl_ProjectionMatrixInverse gl_ModelViewProjectionMatrixInverse gl_TexureMatrixTranspose gl_ModelViewMatrixInverseTranspose gl_ProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixInverseTranspose gl_TextureMatrixInverseTranspose gl_NormalScale gl_DepthRange gl_ClipPlane gl_Point gl_FrontMaterial gl_BackMaterial gl_LightSource gl_LightModel gl_FrontLightModelProduct gl_BackLightModelProduct gl_TextureColor gl_EyePlaneS gl_EyePlaneT gl_EyePlaneR gl_EyePlaneQ gl_FogParameters gl_MaxLights gl_MaxClipPlanes gl_MaxTextureUnits gl_MaxTextureCoords gl_MaxVertexAttribs gl_MaxVertexUniformComponents gl_MaxVaryingFloats gl_MaxVertexTextureImageUnits gl_MaxTextureImageUnits gl_MaxFragmentUniformComponents gl_MaxCombineTextureImageUnits gl_MaxDrawBuffers"),indentSwitch:!1,hooks:{"#":e},modeProps:{fold:["brace","include"]}}),l("text/x-nesc",{name:"clike",keywords:b(c+"as atomic async call command component components configuration event generic implementation includes interface module new norace nx_struct nx_union post provides signal task uses abstract extends"),types:b(d),blockKeywords:b("case do else for if switch while struct"),atoms:b("null true false"),hooks:{"#":e},modeProps:{fold:["brace","include"]}}),l("text/x-objectivec",{name:"clike",keywords:b(c+"inline restrict _Bool _Complex _Imaginery BOOL Class bycopy byref id IMP in inout nil oneway out Protocol SEL self super atomic nonatomic retain copy readwrite readonly"),types:b(d),atoms:b("YES NO NULL NILL ON OFF true false"),hooks:{"@":function(a){return a.eatWhile(/[\w\$]/),"keyword"},"#":e},modeProps:{fold:"brace"}}),l("text/x-squirrel",{name:"clike",keywords:b("base break clone continue const default delete enum extends function in class foreach local resume return this throw typeof yield constructor instanceof static"),types:b(d),blockKeywords:b("case catch class else for foreach if switch try while"),defKeywords:b("function local class"),typeFirstDefinitions:!0,atoms:b("true false null"),hooks:{"#":e},modeProps:{fold:["brace","include"]}})}),function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";function b(a){for(var b={},c=0;c<a.length;++c)b[a[c]]=!0;return b}function x(a,b){for(var d,c=!1;null!=(d=a.next());){if(c&&"/"==d){b.tokenize=null;break}c="*"==d}return["comment","comment"]}a.defineMode("css",function(b,c){function u(a,b){return s=b,a}function v(a,b){var c=a.next();if(f[c]){var d=f[c](a,b);if(d!==!1)return d}return"@"==c?(a.eatWhile(/[\w\\\-]/),u("def",a.current())):"="==c||("~"==c||"|"==c)&&a.eat("=")?u(null,"compare"):'"'==c||"'"==c?(b.tokenize=w(c),b.tokenize(a,b)):"#"==c?(a.eatWhile(/[\w\\\-]/),u("atom","hash")):"!"==c?(a.match(/^\s*\w*/),u("keyword","important")):/\d/.test(c)||"."==c&&a.eat(/\d/)?(a.eatWhile(/[\w.%]/),u("number","unit")):"-"!==c?/[,+>*\/]/.test(c)?u(null,"select-op"):"."==c&&a.match(/^-?[_a-z][_a-z0-9-]*/i)?u("qualifier","qualifier"):/[:;{}\[\]\(\)]/.test(c)?u(null,c):"u"==c&&a.match(/rl(-prefix)?\(/)||"d"==c&&a.match("omain(")||"r"==c&&a.match("egexp(")?(a.backUp(1),b.tokenize=x,u("property","word")):/[\w\\\-]/.test(c)?(a.eatWhile(/[\w\\\-]/),u("property","word")):u(null,null):/[\d.]/.test(a.peek())?(a.eatWhile(/[\w.%]/),u("number","unit")):a.match(/^-[\w\\\-]+/)?(a.eatWhile(/[\w\\\-]/),a.match(/^\s*:/,!1)?u("variable-2","variable-definition"):u("variable-2","variable")):a.match(/^\w+-/)?u("meta","meta"):void 0}function w(a){return function(b,c){for(var e,d=!1;null!=(e=b.next());){if(e==a&&!d){")"==a&&b.backUp(1);break}d=!d&&"\\"==e}return(e==a||!d&&")"!=a)&&(c.tokenize=null),u("string","string")}}function x(a,b){return a.next(),a.match(/\s*[\"\')]/,!1)?b.tokenize=null:b.tokenize=w(")"),u(null,"(")}function y(a,b,c){this.type=a,this.indent=b,this.prev=c}function z(a,b,c,d){return a.context=new y(c,b.indentation()+(d===!1?0:e),a.context),c}function A(a){return a.context.prev&&(a.context=a.context.prev),a.context.type}function B(a,b,c){return E[c.context.type](a,b,c)}function C(a,b,c,d){for(var e=d||1;e>0;e--)c.context=c.context.prev;return B(a,b,c)}function D(a){var b=a.current().toLowerCase();t=p.hasOwnProperty(b)?"atom":o.hasOwnProperty(b)?"keyword":"variable"}var d=c;c.propertyKeywords||(c=a.resolveMode("text/css")),c.inline=d.inline;var s,t,e=b.indentUnit,f=c.tokenHooks,g=c.documentTypes||{},h=c.mediaTypes||{},i=c.mediaFeatures||{},j=c.mediaValueKeywords||{},k=c.propertyKeywords||{},l=c.nonStandardPropertyKeywords||{},m=c.fontProperties||{},n=c.counterDescriptors||{},o=c.colorKeywords||{},p=c.valueKeywords||{},q=c.allowNested,r=c.supportsAtComponent===!0,E={};return E.top=function(a,b,c){if("{"==a)return z(c,b,"block");if("}"==a&&c.context.prev)return A(c);if(r&&/@component/.test(a))return z(c,b,"atComponentBlock");if(/^@(-moz-)?document$/.test(a))return z(c,b,"documentTypes");if(/^@(media|supports|(-moz-)?document|import)$/.test(a))return z(c,b,"atBlock");if(/^@(font-face|counter-style)/.test(a))return c.stateArg=a,"restricted_atBlock_before";if(/^@(-(moz|ms|o|webkit)-)?keyframes$/.test(a))return"keyframes";if(a&&"@"==a.charAt(0))return z(c,b,"at");if("hash"==a)t="builtin";else if("word"==a)t="tag";else{if("variable-definition"==a)return"maybeprop";if("interpolation"==a)return z(c,b,"interpolation");if(":"==a)return"pseudo";if(q&&"("==a)return z(c,b,"parens")}return c.context.type},E.block=function(a,b,c){if("word"==a){var d=b.current().toLowerCase();return k.hasOwnProperty(d)?(t="property","maybeprop"):l.hasOwnProperty(d)?(t="string-2","maybeprop"):q?(t=b.match(/^\s*:(?:\s|$)/,!1)?"property":"tag","block"):(t+=" error","maybeprop")}return"meta"==a?"block":q||"hash"!=a&&"qualifier"!=a?E.top(a,b,c):(t="error","block")},E.maybeprop=function(a,b,c){return":"==a?z(c,b,"prop"):B(a,b,c)},E.prop=function(a,b,c){if(";"==a)return A(c);if("{"==a&&q)return z(c,b,"propBlock");if("}"==a||"{"==a)return C(a,b,c);if("("==a)return z(c,b,"parens");if("hash"!=a||/^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/.test(b.current())){if("word"==a)D(b);else if("interpolation"==a)return z(c,b,"interpolation")}else t+=" error";return"prop"},E.propBlock=function(a,b,c){return"}"==a?A(c):"word"==a?(t="property","maybeprop"):c.context.type},E.parens=function(a,b,c){return"{"==a||"}"==a?C(a,b,c):")"==a?A(c):"("==a?z(c,b,"parens"):"interpolation"==a?z(c,b,"interpolation"):("word"==a&&D(b),"parens")},E.pseudo=function(a,b,c){return"word"==a?(t="variable-3",c.context.type):B(a,b,c)},E.documentTypes=function(a,b,c){return"word"==a&&g.hasOwnProperty(b.current())?(t="tag",c.context.type):E.atBlock(a,b,c)},E.atBlock=function(a,b,c){if("("==a)return z(c,b,"atBlock_parens");if("}"==a||";"==a)return C(a,b,c);if("{"==a)return A(c)&&z(c,b,q?"block":"top");if("word"==a){var d=b.current().toLowerCase();t="only"==d||"not"==d||"and"==d||"or"==d?"keyword":h.hasOwnProperty(d)?"attribute":i.hasOwnProperty(d)?"property":j.hasOwnProperty(d)?"keyword":k.hasOwnProperty(d)?"property":l.hasOwnProperty(d)?"string-2":p.hasOwnProperty(d)?"atom":o.hasOwnProperty(d)?"keyword":"error"}return c.context.type},E.atComponentBlock=function(a,b,c){return"}"==a?C(a,b,c):"{"==a?A(c)&&z(c,b,q?"block":"top",!1):("word"==a&&(t="error"),c.context.type)},E.atBlock_parens=function(a,b,c){return")"==a?A(c):"{"==a||"}"==a?C(a,b,c,2):E.atBlock(a,b,c)},E.restricted_atBlock_before=function(a,b,c){return"{"==a?z(c,b,"restricted_atBlock"):"word"==a&&"@counter-style"==c.stateArg?(t="variable","restricted_atBlock_before"):B(a,b,c)},E.restricted_atBlock=function(a,b,c){return"}"==a?(c.stateArg=null,A(c)):"word"==a?(t="@font-face"==c.stateArg&&!m.hasOwnProperty(b.current().toLowerCase())||"@counter-style"==c.stateArg&&!n.hasOwnProperty(b.current().toLowerCase())?"error":"property","maybeprop"):"restricted_atBlock"},E.keyframes=function(a,b,c){return"word"==a?(t="variable","keyframes"):"{"==a?z(c,b,"top"):B(a,b,c)},E.at=function(a,b,c){return";"==a?A(c):"{"==a||"}"==a?C(a,b,c):("word"==a?t="tag":"hash"==a&&(t="builtin"),"at")},E.interpolation=function(a,b,c){return"}"==a?A(c):"{"==a||";"==a?C(a,b,c):("word"==a?t="variable":"variable"!=a&&"("!=a&&")"!=a&&(t="error"),"interpolation")},{startState:function(a){return{tokenize:null,state:c.inline?"block":"top",stateArg:null,context:new y(c.inline?"block":"top",a||0,null)}},token:function(a,b){if(!b.tokenize&&a.eatSpace())return null;var c=(b.tokenize||v)(a,b);return c&&"object"==typeof c&&(s=c[1],c=c[0]),t=c,b.state=E[b.state](s,a,b),t},indent:function(a,b){var c=a.context,d=b&&b.charAt(0),f=c.indent;return"prop"!=c.type||"}"!=d&&")"!=d||(c=c.prev),c.prev&&("}"!=d||"block"!=c.type&&"top"!=c.type&&"interpolation"!=c.type&&"restricted_atBlock"!=c.type?(")"==d&&("parens"==c.type||"atBlock_parens"==c.type)||"{"==d&&("at"==c.type||"atBlock"==c.type))&&(f=Math.max(0,c.indent-e),c=c.prev):(c=c.prev,f=c.indent)),f},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",fold:"brace"}});var c=["domain","regexp","url","url-prefix"],d=b(c),e=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],f=b(e),g=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid","orientation","device-pixel-ratio","min-device-pixel-ratio","max-device-pixel-ratio","pointer","any-pointer","hover","any-hover"],h=b(g),i=["landscape","portrait","none","coarse","fine","on-demand","hover","interlace","progressive"],j=b(i),k=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","baseline-shift","binding","bleed","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-feature-settings","font-family","font-kerning","font-language-override","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-weight","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-position","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","justify-content","left","letter-spacing","line-break","line-height","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marker-offset","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","max-height","max-width","min-height","min-width","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotation","rotation-point","ruby-align","ruby-overhang","ruby-position","ruby-span","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-outline","text-overflow","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","word-break","word-spacing","word-wrap","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode"],l=b(k),m=["scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-3d-light-color","scrollbar-track-color","shape-inside","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","zoom"],n=b(m),o=["font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"],p=b(o),q=["additive-symbols","fallback","negative","pad","prefix","range","speak-as","suffix","symbols","system"],r=b(q),s=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],t=b(s),u=["above","absolute","activeborder","additive","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","attr","auto","avoid","avoid-column","avoid-page","avoid-region","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","column","column-reverse","compact","condensed","contain","content","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","dashed","decimal","decimal-leading-zero","default","default-button","destination-atop","destination-in","destination-out","destination-over","devanagari","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ethiopic-numeric","ew-resize","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","georgian","graytext","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hebrew","help","hidden","hide","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-table","inset","inside","intrinsic","invert","italic","japanese-formal","japanese-informal","justify","kannada","katakana","katakana-iroha","keep-all","khmer","korean-hangul-formal","korean-hanja-formal","korean-hanja-informal","landscape","lao","large","larger","left","level","lighter","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","malayalam","match","matrix","matrix3d","media-controls-background","media-current-time-display","media-fullscreen-button","media-mute-button","media-play-button","media-return-to-realtime-button","media-rewind-button","media-seek-back-button","media-seek-forward-button","media-slider","media-sliderthumb","media-time-remaining-display","media-volume-slider","media-volume-slider-container","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menulist-text","menulist-textfield","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","octal","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","perspective","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","scale","scale3d","scaleX","scaleY","scaleZ","scroll","scrollbar","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","semi-condensed","semi-expanded","separate","serif","show","sidama","simp-chinese-formal","simp-chinese-informal","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","solid","somali","source-atop","source-in","source-out","source-over","space","space-around","space-between","spell-out","square","square-button","start","static","status-bar","stretch","stroke","sub","subpixel-antialiased","super","sw-resize","symbolic","symbols","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","tamil","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","trad-chinese-formal","trad-chinese-informal","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","var","vertical","vertical-text","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"],v=b(u),w=c.concat(e).concat(g).concat(i).concat(k).concat(m).concat(s).concat(u);a.registerHelper("hintWords","css",w),a.defineMIME("text/css",{documentTypes:d,mediaTypes:f,mediaFeatures:h,mediaValueKeywords:j,propertyKeywords:l,nonStandardPropertyKeywords:n,fontProperties:p,counterDescriptors:r,colorKeywords:t,valueKeywords:v,tokenHooks:{"/":function(a,b){return a.eat("*")?(b.tokenize=x,x(a,b)):!1}},name:"css"}),a.defineMIME("text/x-scss",{mediaTypes:f,mediaFeatures:h,mediaValueKeywords:j,propertyKeywords:l,nonStandardPropertyKeywords:n,colorKeywords:t,valueKeywords:v,fontProperties:p,allowNested:!0,tokenHooks:{"/":function(a,b){return a.eat("/")?(a.skipToEnd(),["comment","comment"]):a.eat("*")?(b.tokenize=x,x(a,b)):["operator","operator"]},":":function(a){return a.match(/\s*\{/)?[null,"{"]:!1},$:function(a){return a.match(/^[\w-]+/),a.match(/^\s*:/,!1)?["variable-2","variable-definition"]:["variable-2","variable"]},"#":function(a){return a.eat("{")?[null,"interpolation"]:!1}},name:"css",helperType:"scss"}),a.defineMIME("text/x-less",{mediaTypes:f,mediaFeatures:h,mediaValueKeywords:j,propertyKeywords:l,nonStandardPropertyKeywords:n,colorKeywords:t,valueKeywords:v,fontProperties:p,allowNested:!0,tokenHooks:{"/":function(a,b){return a.eat("/")?(a.skipToEnd(),
|
22 |
["comment","comment"]):a.eat("*")?(b.tokenize=x,x(a,b)):["operator","operator"]},"@":function(a){return a.eat("{")?[null,"interpolation"]:a.match(/^(charset|document|font-face|import|(-(moz|ms|o|webkit)-)?keyframes|media|namespace|page|supports)\b/,!1)?!1:(a.eatWhile(/[\w\\\-]/),a.match(/^\s*:/,!1)?["variable-2","variable-definition"]:["variable-2","variable"])},"&":function(){return["atom","atom"]}},name:"css",helperType:"less"}),a.defineMIME("text/x-gss",{documentTypes:d,mediaTypes:f,mediaFeatures:h,propertyKeywords:l,nonStandardPropertyKeywords:n,fontProperties:p,counterDescriptors:r,colorKeywords:t,valueKeywords:v,supportsAtComponent:!0,tokenHooks:{"/":function(a,b){return a.eat("*")?(b.tokenize=x,x(a,b)):!1}},name:"css",helperType:"gss"})}),function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror"),require("../xml/xml"),require("../javascript/javascript"),require("../css/css")):"function"==typeof define&&define.amd?define(["../../lib/codemirror","../xml/xml","../javascript/javascript","../css/css"],a):a(CodeMirror)}(function(a){"use strict";function c(a,b,c){var d=a.current(),e=d.search(b);return e>-1?a.backUp(d.length-e):d.match(/<\/?$/)&&(a.backUp(d.length),a.match(b,!1)||a.match(d)),c}function e(a){var b=d[a];return b?b:d[a]=new RegExp("\\s+"+a+"\\s*=\\s*('|\")?([^'\"]+)('|\")?\\s*")}function f(a,b){for(var d,c=a.pos;c>=0&&"<"!==a.string.charAt(c);)c--;return 0>c?c:(d=a.string.slice(c,a.pos).match(e(b)))?d[2]:""}function g(a,b){return new RegExp((b?"^":"")+"</s*"+a+"s*>","i")}function h(a,b){for(var c in a)for(var d=b[c]||(b[c]=[]),e=a[c],f=e.length-1;f>=0;f--)d.unshift(e[f])}function i(a,b){for(var c=0;c<a.length;c++){var d=a[c];if(!d[0]||d[1].test(f(b,d[0])))return d[2]}}var b={script:[["lang",/(javascript|babel)/i,"javascript"],["type",/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^$/i,"javascript"],["type",/./,"text/plain"],[null,null,"javascript"]],style:[["lang",/^css$/i,"css"],["type",/^(text\/)?(x-)?(stylesheet|css)$/i,"css"],["type",/./,"text/plain"],[null,null,"css"]]},d={};a.defineMode("htmlmixed",function(d,e){function n(b,e){var m,h=e.htmlState.tagName,k=h&&j[h.toLowerCase()],l=f.token(b,e.htmlState);if(k&&/\btag\b/.test(l)&&">"===b.current()&&(m=i(k,b))){var o=a.getMode(d,m),p=g(h,!0),q=g(h,!1);e.token=function(a,b){return a.match(p,!1)?(b.token=n,b.localState=b.localMode=null,null):c(a,q,b.localMode.token(a,b.localState))},e.localMode=o,e.localState=a.startState(o,f.indent(e.htmlState,""))}return l}var f=a.getMode(d,{name:"xml",htmlMode:!0,multilineTagIndentFactor:e.multilineTagIndentFactor,multilineTagIndentPastTag:e.multilineTagIndentPastTag}),j={},k=e&&e.tags,l=e&&e.scriptTypes;if(h(b,j),k&&h(k,j),l)for(var m=l.length-1;m>=0;m--)j.script.unshift(["type",l[m].matches,l[m].mode]);return{startState:function(){var a=f.startState();return{token:n,localMode:null,localState:null,htmlState:a}},copyState:function(b){var c;return b.localState&&(c=a.copyState(b.localMode,b.localState)),{token:b.token,localMode:b.localMode,localState:c,htmlState:a.copyState(f,b.htmlState)}},token:function(a,b){return b.token(a,b)},indent:function(b,c){return!b.localMode||/^\s*<\//.test(c)?f.indent(b.htmlState,c):b.localMode.indent?b.localMode.indent(b.localState,c):a.Pass},innerMode:function(a){return{state:a.localState||a.htmlState,mode:a.localMode||f}}}},"xml","javascript","css"),a.defineMIME("text/html","htmlmixed")}),function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";a.defineMode("javascript",function(b,c){function m(a){for(var c,b=!1,d=!1;null!=(c=a.next());){if(!b){if("/"==c&&!d)return;"["==c?d=!0:d&&"]"==c&&(d=!1)}b=!b&&"\\"==c}}function p(a,b,c){return n=a,o=c,b}function q(a,b){var c=a.next();if('"'==c||"'"==c)return b.tokenize=r(c),b.tokenize(a,b);if("."==c&&a.match(/^\d+(?:[eE][+\-]?\d+)?/))return p("number","number");if("."==c&&a.match(".."))return p("spread","meta");if(/[\[\]{}\(\),;\:\.]/.test(c))return p(c);if("="==c&&a.eat(">"))return p("=>","operator");if("0"==c&&a.eat(/x/i))return a.eatWhile(/[\da-f]/i),p("number","number");if("0"==c&&a.eat(/o/i))return a.eatWhile(/[0-7]/i),p("number","number");if("0"==c&&a.eat(/b/i))return a.eatWhile(/[01]/i),p("number","number");if(/\d/.test(c))return a.match(/^\d*(?:\.\d*)?(?:[eE][+\-]?\d+)?/),p("number","number");if("/"==c)return a.eat("*")?(b.tokenize=s,s(a,b)):a.eat("/")?(a.skipToEnd(),p("comment","comment")):"operator"==b.lastType||"keyword c"==b.lastType||"sof"==b.lastType||/^[\[{}\(,;:]$/.test(b.lastType)?(m(a),a.match(/^\b(([gimyu])(?![gimyu]*\2))+\b/),p("regexp","string-2")):(a.eatWhile(k),p("operator","operator",a.current()));if("`"==c)return b.tokenize=t,t(a,b);if("#"==c)return a.skipToEnd(),p("error","error");if(k.test(c))return a.eatWhile(k),p("operator","operator",a.current());if(i.test(c)){a.eatWhile(i);var d=a.current(),e=j.propertyIsEnumerable(d)&&j[d];return e&&"."!=b.lastType?p(e.type,e.style,d):p("variable","variable",d)}}function r(a){return function(b,c){var e,d=!1;if(f&&"@"==b.peek()&&b.match(l))return c.tokenize=q,p("jsonld-keyword","meta");for(;null!=(e=b.next())&&(e!=a||d);)d=!d&&"\\"==e;return d||(c.tokenize=q),p("string","string")}}function s(a,b){for(var d,c=!1;d=a.next();){if("/"==d&&c){b.tokenize=q;break}c="*"==d}return p("comment","comment")}function t(a,b){for(var d,c=!1;null!=(d=a.next());){if(!c&&("`"==d||"$"==d&&a.eat("{"))){b.tokenize=q;break}c=!c&&"\\"==d}return p("quasi","string-2",a.current())}function v(a,b){b.fatArrowAt&&(b.fatArrowAt=null);var c=a.string.indexOf("=>",a.start);if(!(0>c)){for(var d=0,e=!1,f=c-1;f>=0;--f){var g=a.string.charAt(f),h=u.indexOf(g);if(h>=0&&3>h){if(!d){++f;break}if(0==--d)break}else if(h>=3&&6>h)++d;else if(i.test(g))e=!0;else{if(/["'\/]/.test(g))return;if(e&&!d){++f;break}}}e&&!d&&(b.fatArrowAt=f)}}function x(a,b,c,d,e,f){this.indented=a,this.column=b,this.type=c,this.prev=e,this.info=f,null!=d&&(this.align=d)}function y(a,b){for(var c=a.localVars;c;c=c.next)if(c.name==b)return!0;for(var d=a.context;d;d=d.prev)for(var c=d.vars;c;c=c.next)if(c.name==b)return!0}function z(a,b,c,d,e){var f=a.cc;for(A.state=a,A.stream=e,A.marked=null,A.cc=f,A.style=b,a.lexical.hasOwnProperty("align")||(a.lexical.align=!0);;){var h=f.length?f.pop():g?L:K;if(h(c,d)){for(;f.length&&f[f.length-1].lex;)f.pop()();return A.marked?A.marked:"variable"==c&&y(a,d)?"variable-2":b}}}function B(){for(var a=arguments.length-1;a>=0;a--)A.cc.push(arguments[a])}function C(){return B.apply(null,arguments),!0}function D(a){function b(b){for(var c=b;c;c=c.next)if(c.name==a)return!0;return!1}var d=A.state;if(d.context){if(A.marked="def",b(d.localVars))return;d.localVars={name:a,next:d.localVars}}else{if(b(d.globalVars))return;c.globalVars&&(d.globalVars={name:a,next:d.globalVars})}}function F(){A.state.context={prev:A.state.context,vars:A.state.localVars},A.state.localVars=E}function G(){A.state.localVars=A.state.context.vars,A.state.context=A.state.context.prev}function H(a,b){var c=function(){var c=A.state,d=c.indented;if("stat"==c.lexical.type)d=c.lexical.indented;else for(var e=c.lexical;e&&")"==e.type&&e.align;e=e.prev)d=e.indented;c.lexical=new x(d,A.stream.column(),a,null,c.lexical,b)};return c.lex=!0,c}function I(){var a=A.state;a.lexical.prev&&(")"==a.lexical.type&&(a.indented=a.lexical.indented),a.lexical=a.lexical.prev)}function J(a){function b(c){return c==a?C():";"==a?B():C(b)}return b}function K(a,b){return"var"==a?C(H("vardef",b.length),fa,J(";"),I):"keyword a"==a?C(H("form"),L,K,I):"keyword b"==a?C(H("form"),K,I):"{"==a?C(H("}"),ba,I):";"==a?C():"if"==a?("else"==A.state.lexical.info&&A.state.cc[A.state.cc.length-1]==I&&A.state.cc.pop()(),C(H("form"),L,K,I,ka)):"function"==a?C(qa):"for"==a?C(H("form"),la,K,I):"variable"==a?C(H("stat"),W):"switch"==a?C(H("form"),L,H("}","switch"),J("{"),ba,I,I):"case"==a?C(L,J(":")):"default"==a?C(J(":")):"catch"==a?C(H("form"),F,J("("),ra,J(")"),K,I,G):"class"==a?C(H("form"),sa,I):"export"==a?C(H("stat"),wa,I):"import"==a?C(H("stat"),xa,I):B(H("stat"),L,J(";"),I)}function L(a){return N(a,!1)}function M(a){return N(a,!0)}function N(a,b){if(A.state.fatArrowAt==A.stream.start){var c=b?V:U;if("("==a)return C(F,H(")"),_(ga,")"),I,J("=>"),c,G);if("variable"==a)return B(F,ga,J("=>"),c,G)}var d=b?R:Q;return w.hasOwnProperty(a)?C(d):"async"==a?C(L):"function"==a?C(qa,d):"keyword c"==a?C(b?P:O):"("==a?C(H(")"),O,Da,J(")"),I,d):"operator"==a||"spread"==a?C(b?M:L):"["==a?C(H("]"),Ba,I,d):"{"==a?aa(Y,"}",null,d):"quasi"==a?B(S,d):C()}function O(a){return a.match(/[;\}\)\],]/)?B():B(L)}function P(a){return a.match(/[;\}\)\],]/)?B():B(M)}function Q(a,b){return","==a?C(L):R(a,b,!1)}function R(a,b,c){var d=0==c?Q:R,e=0==c?L:M;return"=>"==a?C(F,c?V:U,G):"operator"==a?/\+\+|--/.test(b)?C(d):"?"==b?C(L,J(":"),e):C(e):"quasi"==a?B(S,d):";"!=a?"("==a?aa(M,")","call",d):"."==a?C(X,d):"["==a?C(H("]"),O,J("]"),I,d):void 0:void 0}function S(a,b){return"quasi"!=a?B():"${"!=b.slice(b.length-2)?C(S):C(L,T)}function T(a){return"}"==a?(A.marked="string-2",A.state.tokenize=t,C(S)):void 0}function U(a){return v(A.stream,A.state),B("{"==a?K:L)}function V(a){return v(A.stream,A.state),B("{"==a?K:M)}function W(a){return":"==a?C(I,K):B(Q,J(";"),I)}function X(a){return"variable"==a?(A.marked="property",C()):void 0}function Y(a,b){return"async"==a?C(Y):"variable"==a||"keyword"==A.style?(A.marked="property",C("get"==b||"set"==b?Z:$)):"number"==a||"string"==a?(A.marked=f?"property":A.style+" property",C($)):"jsonld-keyword"==a?C($):"["==a?C(L,J("]"),$):void 0}function Z(a){return"variable"!=a?B($):(A.marked="property",C(qa))}function $(a){return":"==a?C(M):"("==a?B(qa):void 0}function _(a,b){function c(d){if(","==d){var e=A.state.lexical;return"call"==e.info&&(e.pos=(e.pos||0)+1),C(a,c)}return d==b?C():C(J(b))}return function(d){return d==b?C():B(a,c)}}function aa(a,b,c){for(var d=3;d<arguments.length;d++)A.cc.push(arguments[d]);return C(H(b,c),_(a,b),I)}function ba(a){return"}"==a?C():B(K,ba)}function ca(a){return h&&":"==a?C(ea):void 0}function da(a,b){return"="==b?C(M):void 0}function ea(a){return"variable"==a?(A.marked="variable-3",C()):void 0}function fa(){return B(ga,ca,ia,ja)}function ga(a,b){return"variable"==a?(D(b),C()):"spread"==a?C(ga):"["==a?aa(ga,"]"):"{"==a?aa(ha,"}"):void 0}function ha(a,b){return"variable"!=a||A.stream.match(/^\s*:/,!1)?("variable"==a&&(A.marked="property"),"spread"==a?C(ga):C(J(":"),ga,ia)):(D(b),C(ia))}function ia(a,b){return"="==b?C(M):void 0}function ja(a){return","==a?C(fa):void 0}function ka(a,b){return"keyword b"==a&&"else"==b?C(H("form","else"),K,I):void 0}function la(a){return"("==a?C(H(")"),ma,J(")"),I):void 0}function ma(a){return"var"==a?C(fa,J(";"),oa):";"==a?C(oa):"variable"==a?C(na):B(L,J(";"),oa)}function na(a,b){return"in"==b||"of"==b?(A.marked="keyword",C(L)):C(Q,oa)}function oa(a,b){return";"==a?C(pa):"in"==b||"of"==b?(A.marked="keyword",C(L)):B(L,J(";"),pa)}function pa(a){")"!=a&&C(L)}function qa(a,b){return"*"==b?(A.marked="keyword",C(qa)):"variable"==a?(D(b),C(qa)):"("==a?C(F,H(")"),_(ra,")"),I,K,G):void 0}function ra(a){return"spread"==a?C(ra):B(ga,ca,da)}function sa(a,b){return"variable"==a?(D(b),C(ta)):void 0}function ta(a,b){return"extends"==b?C(L,ta):"{"==a?C(H("}"),ua,I):void 0}function ua(a,b){return"variable"==a||"keyword"==A.style?"static"==b?(A.marked="keyword",C(ua)):(A.marked="property","get"==b||"set"==b?C(va,qa,ua):C(qa,ua)):"*"==b?(A.marked="keyword",C(ua)):";"==a?C(ua):"}"==a?C():void 0}function va(a){return"variable"!=a?B():(A.marked="property",C())}function wa(a,b){return"*"==b?(A.marked="keyword",C(Aa,J(";"))):"default"==b?(A.marked="keyword",C(L,J(";"))):B(K)}function xa(a){return"string"==a?C():B(ya,Aa)}function ya(a,b){return"{"==a?aa(ya,"}"):("variable"==a&&D(b),"*"==b&&(A.marked="keyword"),C(za))}function za(a,b){return"as"==b?(A.marked="keyword",C(ya)):void 0}function Aa(a,b){return"from"==b?(A.marked="keyword",C(L)):void 0}function Ba(a){return"]"==a?C():B(M,Ca)}function Ca(a){return"for"==a?B(Da,J("]")):","==a?C(_(P,"]")):B(_(M,"]"))}function Da(a){return"for"==a?C(la,Da):"if"==a?C(L,Da):void 0}function Ea(a,b){return"operator"==a.lastType||","==a.lastType||k.test(b.charAt(0))||/[,.]/.test(b.charAt(0))}var n,o,d=b.indentUnit,e=c.statementIndent,f=c.jsonld,g=c.json||f,h=c.typescript,i=c.wordCharacters||/[\w$\xa1-\uffff]/,j=function(){function a(a){return{type:a,style:"keyword"}}var b=a("keyword a"),c=a("keyword b"),d=a("keyword c"),e=a("operator"),f={type:"atom",style:"atom"},g={"if":a("if"),"while":b,"with":b,"else":c,"do":c,"try":c,"finally":c,"return":d,"break":d,"continue":d,"new":d,"delete":d,"throw":d,"debugger":d,"var":a("var"),"const":a("var"),let:a("var"),async:a("async"),"function":a("function"),"catch":a("catch"),"for":a("for"),"switch":a("switch"),"case":a("case"),"default":a("default"),"in":e,"typeof":e,"instanceof":e,"true":f,"false":f,"null":f,undefined:f,NaN:f,Infinity:f,"this":a("this"),"class":a("class"),"super":a("atom"),await:d,"yield":d,"export":a("export"),"import":a("import"),"extends":d};if(h){var i={type:"variable",style:"variable-3"},j={"interface":a("interface"),"extends":a("extends"),constructor:a("constructor"),"public":a("public"),"private":a("private"),"protected":a("protected"),"static":a("static"),string:i,number:i,bool:i,any:i};for(var k in j)g[k]=j[k]}return g}(),k=/[+\-*&%=<>!?|~^]/,l=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/,u="([{}])",w={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,"this":!0,"jsonld-keyword":!0},A={state:null,column:null,marked:null,cc:null},E={name:"this",next:{name:"arguments"}};return I.lex=!0,{startState:function(a){var b={tokenize:q,lastType:"sof",cc:[],lexical:new x((a||0)-d,0,"block",!1),localVars:c.localVars,context:c.localVars&&{vars:c.localVars},indented:0};return c.globalVars&&"object"==typeof c.globalVars&&(b.globalVars=c.globalVars),b},token:function(a,b){if(a.sol()&&(b.lexical.hasOwnProperty("align")||(b.lexical.align=!1),b.indented=a.indentation(),v(a,b)),b.tokenize!=s&&a.eatSpace())return null;var c=b.tokenize(a,b);return"comment"==n?c:(b.lastType="operator"!=n||"++"!=o&&"--"!=o?n:"incdec",z(b,c,n,o,a))},indent:function(b,f){if(b.tokenize==s)return a.Pass;if(b.tokenize!=q)return 0;var g=f&&f.charAt(0),h=b.lexical;if(!/^\s*else\b/.test(f))for(var i=b.cc.length-1;i>=0;--i){var j=b.cc[i];if(j==I)h=h.prev;else if(j!=ka)break}"stat"==h.type&&"}"==g&&(h=h.prev),e&&")"==h.type&&"stat"==h.prev.type&&(h=h.prev);var k=h.type,l=g==k;return"vardef"==k?h.indented+("operator"==b.lastType||","==b.lastType?h.info+1:0):"form"==k&&"{"==g?h.indented:"form"==k?h.indented+d:"stat"==k?h.indented+(Ea(b,f)?e||d:0):"switch"!=h.info||l||0==c.doubleIndentSwitch?h.align?h.column+(l?0:1):h.indented+(l?0:d):h.indented+(/^(?:case|default)\b/.test(f)?d:2*d)},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:g?null:"/*",blockCommentEnd:g?null:"*/",lineComment:g?null:"//",fold:"brace",closeBrackets:"()[]{}''\"\"``",helperType:g?"json":"javascript",jsonldMode:f,jsonMode:g}}),a.registerHelper("wordChars","javascript",/[\w$]/),a.defineMIME("text/javascript","javascript"),a.defineMIME("text/ecmascript","javascript"),a.defineMIME("application/javascript","javascript"),a.defineMIME("application/x-javascript","javascript"),a.defineMIME("application/ecmascript","javascript"),a.defineMIME("application/json",{name:"javascript",json:!0}),a.defineMIME("application/x-json",{name:"javascript",json:!0}),a.defineMIME("application/ld+json",{name:"javascript",jsonld:!0}),a.defineMIME("text/typescript",{name:"javascript",typescript:!0}),a.defineMIME("application/typescript",{name:"javascript",typescript:!0})}),function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror"),require("../htmlmixed/htmlmixed"),require("../clike/clike")):"function"==typeof define&&define.amd?define(["../../lib/codemirror","../htmlmixed/htmlmixed","../clike/clike"],a):a(CodeMirror)}(function(a){"use strict";function b(a){for(var b={},c=a.split(" "),d=0;d<c.length;++d)b[c[d]]=!0;return b}function c(a,b,e){return 0==a.length?d(b):function(f,g){for(var h=a[0],i=0;i<h.length;i++)if(f.match(h[i][0]))return g.tokenize=c(a.slice(1),b),h[i][1];return g.tokenize=d(b,e),"string"}}function d(a,b){return function(c,d){return e(c,d,a,b)}}function e(a,b,d,e){if(e!==!1&&a.match("${",!1)||a.match("{$",!1))return b.tokenize=null,"string";if(e!==!1&&a.match(/^\$[a-zA-Z_][a-zA-Z0-9_]*/))return a.match("[",!1)&&(b.tokenize=c([[["[",null]],[[/\d[\w\.]*/,"number"],[/\$[a-zA-Z_][a-zA-Z0-9_]*/,"variable-2"],[/[\w\$]+/,"variable"]],[["]",null]]],d,e)),a.match(/\-\>\w/,!1)&&(b.tokenize=c([[["->",null]],[[/[\w]+/,"variable"]]],d,e)),"variable-2";for(var f=!1;!a.eol()&&(f||e===!1||!a.match("{$",!1)&&!a.match(/^(\$[a-zA-Z_][a-zA-Z0-9_]*|\$\{)/,!1));){if(!f&&a.match(d)){b.tokenize=null,b.tokStack.pop(),b.tokStack.pop();break}f="\\"==a.next()&&!f}return"string"}var f="abstract and array as break case catch class clone const continue declare default do else elseif enddeclare endfor endforeach endif endswitch endwhile extends final for foreach function global goto if implements interface instanceof namespace new or private protected public static switch throw trait try use var while xor die echo empty exit eval include include_once isset list require require_once return print unset __halt_compiler self static parent yield insteadof finally",g="true false null TRUE FALSE NULL __CLASS__ __DIR__ __FILE__ __LINE__ __METHOD__ __FUNCTION__ __NAMESPACE__ __TRAIT__",h="func_num_args func_get_arg func_get_args strlen strcmp strncmp strcasecmp strncasecmp each error_reporting define defined trigger_error user_error set_error_handler restore_error_handler get_declared_classes get_loaded_extensions extension_loaded get_extension_funcs debug_backtrace constant bin2hex hex2bin sleep usleep time mktime gmmktime strftime gmstrftime strtotime date gmdate getdate localtime checkdate flush wordwrap htmlspecialchars htmlentities html_entity_decode md5 md5_file crc32 getimagesize image_type_to_mime_type phpinfo phpversion phpcredits strnatcmp strnatcasecmp substr_count strspn strcspn strtok strtoupper strtolower strpos strrpos strrev hebrev hebrevc nl2br basename dirname pathinfo stripslashes stripcslashes strstr stristr strrchr str_shuffle str_word_count strcoll substr substr_replace quotemeta ucfirst ucwords strtr addslashes addcslashes rtrim str_replace str_repeat count_chars chunk_split trim ltrim strip_tags similar_text explode implode setlocale localeconv parse_str str_pad chop strchr sprintf printf vprintf vsprintf sscanf fscanf parse_url urlencode urldecode rawurlencode rawurldecode readlink linkinfo link unlink exec system escapeshellcmd escapeshellarg passthru shell_exec proc_open proc_close rand srand getrandmax mt_rand mt_srand mt_getrandmax base64_decode base64_encode abs ceil floor round is_finite is_nan is_infinite bindec hexdec octdec decbin decoct dechex base_convert number_format fmod ip2long long2ip getenv putenv getopt microtime gettimeofday getrusage uniqid quoted_printable_decode set_time_limit get_cfg_var magic_quotes_runtime set_magic_quotes_runtime get_magic_quotes_gpc get_magic_quotes_runtime import_request_variables error_log serialize unserialize memory_get_usage var_dump var_export debug_zval_dump print_r highlight_file show_source highlight_string ini_get ini_get_all ini_set ini_alter ini_restore get_include_path set_include_path restore_include_path setcookie header headers_sent connection_aborted connection_status ignore_user_abort parse_ini_file is_uploaded_file move_uploaded_file intval floatval doubleval strval gettype settype is_null is_resource is_bool is_long is_float is_int is_integer is_double is_real is_numeric is_string is_array is_object is_scalar ereg ereg_replace eregi eregi_replace split spliti join sql_regcase dl pclose popen readfile rewind rmdir umask fclose feof fgetc fgets fgetss fread fopen fpassthru ftruncate fstat fseek ftell fflush fwrite fputs mkdir rename copy tempnam tmpfile file file_get_contents file_put_contents stream_select stream_context_create stream_context_set_params stream_context_set_option stream_context_get_options stream_filter_prepend stream_filter_append fgetcsv flock get_meta_tags stream_set_write_buffer set_file_buffer set_socket_blocking stream_set_blocking socket_set_blocking stream_get_meta_data stream_register_wrapper stream_wrapper_register stream_set_timeout socket_set_timeout socket_get_status realpath fnmatch fsockopen pfsockopen pack unpack get_browser crypt opendir closedir chdir getcwd rewinddir readdir dir glob fileatime filectime filegroup fileinode filemtime fileowner fileperms filesize filetype file_exists is_writable is_writeable is_readable is_executable is_file is_dir is_link stat lstat chown touch clearstatcache mail ob_start ob_flush ob_clean ob_end_flush ob_end_clean ob_get_flush ob_get_clean ob_get_length ob_get_level ob_get_status ob_get_contents ob_implicit_flush ob_list_handlers ksort krsort natsort natcasesort asort arsort sort rsort usort uasort uksort shuffle array_walk count end prev next reset current key min max in_array array_search extract compact array_fill range array_multisort array_push array_pop array_shift array_unshift array_splice array_slice array_merge array_merge_recursive array_keys array_values array_count_values array_reverse array_reduce array_pad array_flip array_change_key_case array_rand array_unique array_intersect array_intersect_assoc array_diff array_diff_assoc array_sum array_filter array_map array_chunk array_key_exists pos sizeof key_exists assert assert_options version_compare ftok str_rot13 aggregate session_name session_module_name session_save_path session_id session_regenerate_id session_decode session_register session_unregister session_is_registered session_encode session_start session_destroy session_unset session_set_save_handler session_cache_limiter session_cache_expire session_set_cookie_params session_get_cookie_params session_write_close preg_match preg_match_all preg_replace preg_replace_callback preg_split preg_quote preg_grep overload ctype_alnum ctype_alpha ctype_cntrl ctype_digit ctype_lower ctype_graph ctype_print ctype_punct ctype_space ctype_upper ctype_xdigit virtual apache_request_headers apache_note apache_lookup_uri apache_child_terminate apache_setenv apache_response_headers apache_get_version getallheaders mysql_connect mysql_pconnect mysql_close mysql_select_db mysql_create_db mysql_drop_db mysql_query mysql_unbuffered_query mysql_db_query mysql_list_dbs mysql_list_tables mysql_list_fields mysql_list_processes mysql_error mysql_errno mysql_affected_rows mysql_insert_id mysql_result mysql_num_rows mysql_num_fields mysql_fetch_row mysql_fetch_array mysql_fetch_assoc mysql_fetch_object mysql_data_seek mysql_fetch_lengths mysql_fetch_field mysql_field_seek mysql_free_result mysql_field_name mysql_field_table mysql_field_len mysql_field_type mysql_field_flags mysql_escape_string mysql_real_escape_string mysql_stat mysql_thread_id mysql_client_encoding mysql_get_client_info mysql_get_host_info mysql_get_proto_info mysql_get_server_info mysql_info mysql mysql_fieldname mysql_fieldtable mysql_fieldlen mysql_fieldtype mysql_fieldflags mysql_selectdb mysql_createdb mysql_dropdb mysql_freeresult mysql_numfields mysql_numrows mysql_listdbs mysql_listtables mysql_listfields mysql_db_name mysql_dbname mysql_tablename mysql_table_name pg_connect pg_pconnect pg_close pg_connection_status pg_connection_busy pg_connection_reset pg_host pg_dbname pg_port pg_tty pg_options pg_ping pg_query pg_send_query pg_cancel_query pg_fetch_result pg_fetch_row pg_fetch_assoc pg_fetch_array pg_fetch_object pg_fetch_all pg_affected_rows pg_get_result pg_result_seek pg_result_status pg_free_result pg_last_oid pg_num_rows pg_num_fields pg_field_name pg_field_num pg_field_size pg_field_type pg_field_prtlen pg_field_is_null pg_get_notify pg_get_pid pg_result_error pg_last_error pg_last_notice pg_put_line pg_end_copy pg_copy_to pg_copy_from pg_trace pg_untrace pg_lo_create pg_lo_unlink pg_lo_open pg_lo_close pg_lo_read pg_lo_write pg_lo_read_all pg_lo_import pg_lo_export pg_lo_seek pg_lo_tell pg_escape_string pg_escape_bytea pg_unescape_bytea pg_client_encoding pg_set_client_encoding pg_meta_data pg_convert pg_insert pg_update pg_delete pg_select pg_exec pg_getlastoid pg_cmdtuples pg_errormessage pg_numrows pg_numfields pg_fieldname pg_fieldsize pg_fieldtype pg_fieldnum pg_fieldprtlen pg_fieldisnull pg_freeresult pg_result pg_loreadall pg_locreate pg_lounlink pg_loopen pg_loclose pg_loread pg_lowrite pg_loimport pg_loexport http_response_code get_declared_traits getimagesizefromstring socket_import_stream stream_set_chunk_size trait_exists header_register_callback class_uses session_status session_register_shutdown echo print global static exit array empty eval isset unset die include require include_once require_once json_decode json_encode json_last_error json_last_error_msg curl_close curl_copy_handle curl_errno curl_error curl_escape curl_exec curl_file_create curl_getinfo curl_init curl_multi_add_handle curl_multi_close curl_multi_exec curl_multi_getcontent curl_multi_info_read curl_multi_init curl_multi_remove_handle curl_multi_select curl_multi_setopt curl_multi_strerror curl_pause curl_reset curl_setopt_array curl_setopt curl_share_close curl_share_init curl_share_setopt curl_strerror curl_unescape curl_version mysqli_affected_rows mysqli_autocommit mysqli_change_user mysqli_character_set_name mysqli_close mysqli_commit mysqli_connect_errno mysqli_connect_error mysqli_connect mysqli_data_seek mysqli_debug mysqli_dump_debug_info mysqli_errno mysqli_error_list mysqli_error mysqli_fetch_all mysqli_fetch_array mysqli_fetch_assoc mysqli_fetch_field_direct mysqli_fetch_field mysqli_fetch_fields mysqli_fetch_lengths mysqli_fetch_object mysqli_fetch_row mysqli_field_count mysqli_field_seek mysqli_field_tell mysqli_free_result mysqli_get_charset mysqli_get_client_info mysqli_get_client_stats mysqli_get_client_version mysqli_get_connection_stats mysqli_get_host_info mysqli_get_proto_info mysqli_get_server_info mysqli_get_server_version mysqli_info mysqli_init mysqli_insert_id mysqli_kill mysqli_more_results mysqli_multi_query mysqli_next_result mysqli_num_fields mysqli_num_rows mysqli_options mysqli_ping mysqli_prepare mysqli_query mysqli_real_connect mysqli_real_escape_string mysqli_real_query mysqli_reap_async_query mysqli_refresh mysqli_rollback mysqli_select_db mysqli_set_charset mysqli_set_local_infile_default mysqli_set_local_infile_handler mysqli_sqlstate mysqli_ssl_set mysqli_stat mysqli_stmt_init mysqli_store_result mysqli_thread_id mysqli_thread_safe mysqli_use_result mysqli_warning_count";a.registerHelper("hintWords","php",[f,g,h].join(" ").split(" ")),a.registerHelper("wordChars","php",/[\w$]/);var i={name:"clike",helperType:"php",keywords:b(f),blockKeywords:b("catch do else elseif for foreach if switch try while finally"),defKeywords:b("class function interface namespace trait"),atoms:b(g),builtin:b(h),multiLineStrings:!0,hooks:{$:function(a){return a.eatWhile(/[\w\$_]/),"variable-2"},"<":function(a,b){var c;if(c=a.match(/<<\s*/)){var e=a.eat(/['"]/);a.eatWhile(/[\w\.]/);var f=a.current().slice(c[0].length+(e?2:1));if(e&&a.eat(e),f)return(b.tokStack||(b.tokStack=[])).push(f,0),b.tokenize=d(f,"'"!=e),"string"}return!1},"#":function(a){for(;!a.eol()&&!a.match("?>",!1);)a.next();return"comment"},"/":function(a){if(a.eat("/")){for(;!a.eol()&&!a.match("?>",!1);)a.next();return"comment"}return!1},'"':function(a,b){return(b.tokStack||(b.tokStack=[])).push('"',0),b.tokenize=d('"'),"string"},"{":function(a,b){return b.tokStack&&b.tokStack.length&&b.tokStack[b.tokStack.length-1]++,!1},"}":function(a,b){return b.tokStack&&b.tokStack.length>0&&!--b.tokStack[b.tokStack.length-1]&&(b.tokenize=d(b.tokStack[b.tokStack.length-2])),!1}}};a.defineMode("php",function(b,c){function f(b,c){var f=c.curMode==e;if(b.sol()&&c.pending&&'"'!=c.pending&&"'"!=c.pending&&(c.pending=null),f)return f&&null==c.php.tokenize&&b.match("?>")?(c.curMode=d,c.curState=c.html,c.php.context.prev||(c.php=null),"meta"):e.token(b,c.curState);if(b.match(/^<\?\w*/))return c.curMode=e,c.php||(c.php=a.startState(e,d.indent(c.html,""))),c.curState=c.php,"meta";if('"'==c.pending||"'"==c.pending){for(;!b.eol()&&b.next()!=c.pending;);var g="string"}else if(c.pending&&b.pos<c.pending.end){b.pos=c.pending.end;var g=c.pending.style}else var g=d.token(b,c.curState);c.pending&&(c.pending=null);var j,h=b.current(),i=h.search(/<\?/);return-1!=i&&("string"==g&&(j=h.match(/[\'\"]$/))&&!/\?>/.test(h)?c.pending=j[0]:c.pending={end:b.pos,style:g},b.backUp(h.length-i)),g}var d=a.getMode(b,"text/html"),e=a.getMode(b,i);return{startState:function(){var b=a.startState(d),f=c.startOpen?a.startState(e):null;return{html:b,php:f,curMode:c.startOpen?e:d,curState:c.startOpen?f:b,pending:null}},copyState:function(b){var i,c=b.html,f=a.copyState(d,c),g=b.php,h=g&&a.copyState(e,g);return i=b.curMode==d?f:h,{html:f,php:h,curMode:b.curMode,curState:i,pending:b.pending}},token:f,indent:function(a,b){return a.curMode!=e&&/^\s*<\//.test(b)||a.curMode==e&&/^\?>/.test(b)?d.indent(a.html,b):a.curMode.indent(a.curState,b)},blockCommentStart:"/*",blockCommentEnd:"*/",lineComment:"//",innerMode:function(a){return{state:a.curState,mode:a.curMode}}}},"htmlmixed","clike"),a.defineMIME("application/x-httpd-php","php"),a.defineMIME("application/x-httpd-php-open",{name:"php",startOpen:!0}),a.defineMIME("text/x-php",i)}),function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";a.defineMode("xml",function(b,c){function k(a,b){function c(c){return b.tokenize=c,c(a,b)}var d=a.next();if("<"==d)return a.eat("!")?a.eat("[")?a.match("CDATA[")?c(n("atom","]]>")):null:a.match("--")?c(n("comment","-->")):a.match("DOCTYPE",!0,!0)?(a.eatWhile(/[\w\._\-]/),c(o(1))):null:a.eat("?")?(a.eatWhile(/[\w\._\-]/),b.tokenize=n("meta","?>"),"meta"):(i=a.eat("/")?"closeTag":"openTag",b.tokenize=l,"tag bracket");if("&"==d){var e;return e=a.eat("#")?a.eat("x")?a.eatWhile(/[a-fA-F\d]/)&&a.eat(";"):a.eatWhile(/[\d]/)&&a.eat(";"):a.eatWhile(/[\w\.\-:]/)&&a.eat(";"),e?"atom":"error"}return a.eatWhile(/[^&<]/),null}function l(a,b){var c=a.next();if(">"==c||"/"==c&&a.eat(">"))return b.tokenize=k,i=">"==c?"endTag":"selfcloseTag","tag bracket";if("="==c)return i="equals",null;if("<"==c){b.tokenize=k,b.state=s,b.tagName=b.tagStart=null;var d=b.tokenize(a,b);return d?d+" tag error":"tag error"}return/[\'\"]/.test(c)?(b.tokenize=m(c),b.stringStartCol=a.column(),b.tokenize(a,b)):(a.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/),"word")}function m(a){var b=function(b,c){for(;!b.eol();)if(b.next()==a){c.tokenize=l;break}return"string"};return b.isInAttribute=!0,b}function n(a,b){return function(c,d){for(;!c.eol();){if(c.match(b)){d.tokenize=k;break}c.next()}return a}}function o(a){return function(b,c){for(var d;null!=(d=b.next());){if("<"==d)return c.tokenize=o(a+1),c.tokenize(b,c);if(">"==d){if(1==a){c.tokenize=k;break}return c.tokenize=o(a-1),c.tokenize(b,c)}}return"meta"}}function p(a,b,c){this.prev=a.context,this.tagName=b,this.indent=a.indented,this.startOfLine=c,(g.doNotIndent.hasOwnProperty(b)||a.context&&a.context.noIndent)&&(this.noIndent=!0)}function q(a){a.context&&(a.context=a.context.prev)}function r(a,b){for(var c;;){if(!a.context)return;if(c=a.context.tagName,!g.contextGrabbers.hasOwnProperty(c)||!g.contextGrabbers[c].hasOwnProperty(b))return;q(a)}}function s(a,b,c){return"openTag"==a?(c.tagStart=b.column(),t):"closeTag"==a?u:s}function t(a,b,c){return"word"==a?(c.tagName=b.current(),j="tag",x):(j="error",t)}function u(a,b,c){if("word"==a){var d=b.current();return c.context&&c.context.tagName!=d&&g.implicitlyClosed.hasOwnProperty(c.context.tagName)&&q(c),
|
23 |
-
c.context&&c.context.tagName==d?(j="tag",v):(j="tag error",w)}return j="error",w}function v(a,b,c){return"endTag"!=a?(j="error",v):(q(c),s)}function w(a,b,c){return j="error",v(a,b,c)}function x(a,b,c){if("word"==a)return j="attribute",y;if("endTag"==a||"selfcloseTag"==a){var d=c.tagName,e=c.tagStart;return c.tagName=c.tagStart=null,"selfcloseTag"==a||g.autoSelfClosers.hasOwnProperty(d)?r(c,d):(r(c,d),c.context=new p(c,d,e==c.indented)),s}return j="error",x}function y(a,b,c){return"equals"==a?z:(g.allowMissing||(j="error"),x(a,b,c))}function z(a,b,c){return"string"==a?A:"word"==a&&g.allowUnquoted?(j="string",x):(j="error",x(a,b,c))}function A(a,b,c){return"string"==a?A:x(a,b,c)}var d=b.indentUnit,e=c.multilineTagIndentFactor||1,f=c.multilineTagIndentPastTag;null==f&&(f=!0);var i,j,g=c.htmlMode?{autoSelfClosers:{area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,menuitem:!0},implicitlyClosed:{dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},contextGrabbers:{dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}},doNotIndent:{pre:!0},allowUnquoted:!0,allowMissing:!0,caseFold:!0}:{autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:!1,allowMissing:!1,caseFold:!1},h=c.alignCDATA;return k.isInText=!0,{startState:function(){return{tokenize:k,state:s,indented:0,tagName:null,tagStart:null,context:null}},token:function(a,b){if(!b.tagName&&a.sol()&&(b.indented=a.indentation()),a.eatSpace())return null;i=null;var c=b.tokenize(a,b);return(c||i)&&"comment"!=c&&(j=null,b.state=b.state(i||c,a,b),j&&(c="error"==j?c+" error":j)),c},indent:function(b,c,i){var j=b.context;if(b.tokenize.isInAttribute)return b.tagStart==b.indented?b.stringStartCol+1:b.indented+d;if(j&&j.noIndent)return a.Pass;if(b.tokenize!=l&&b.tokenize!=k)return i?i.match(/^(\s*)/)[0].length:0;if(b.tagName)return f?b.tagStart+b.tagName.length+2:b.tagStart+d*e;if(h&&/<!\[CDATA\[/.test(c))return 0;var m=c&&/^<(\/)?([\w_:\.-]*)/.exec(c);if(m&&m[1])for(;j;){if(j.tagName==m[2]){j=j.prev;break}if(!g.implicitlyClosed.hasOwnProperty(j.tagName))break;j=j.prev}else if(m)for(;j;){var n=g.contextGrabbers[j.tagName];if(!n||!n.hasOwnProperty(m[2]))break;j=j.prev}for(;j&&!j.startOfLine;)j=j.prev;return j?j.indent+d:0},electricInput:/<\/[\s\w:]+>$/,blockCommentStart:"<!--",blockCommentEnd:"-->",configuration:c.htmlMode?"html":"xml",helperType:c.htmlMode?"html":"xml"}}),a.defineMIME("text/xml","xml"),a.defineMIME("application/xml","xml"),a.mimeModes.hasOwnProperty("text/html")||a.defineMIME("text/html",{name:"xml",htmlMode:!0})});
|
20 |
"Shift-Cmd-G":"findPrev","Cmd-Alt-F":"replace","Shift-Cmd-Alt-F":"replaceAll","Cmd-[":"indentLess","Cmd-]":"indentMore","Cmd-Backspace":"delWrappedLineLeft","Cmd-Delete":"delWrappedLineRight","Cmd-U":"undoSelection","Shift-Cmd-U":"redoSelection","Ctrl-Up":"goDocStart","Ctrl-Down":"goDocEnd",fallthrough:["basic","emacsy"]},Md["default"]=o?Md.macDefault:Md.pcDefault,v.normalizeKeyMap=function(a){var b={};for(var c in a)if(a.hasOwnProperty(c)){var d=a[c];if(/^(name|fallthrough|(de|at)tach)$/.test(c))continue;if("..."==d){delete a[c];continue}for(var e=gg(c.split(" "),Nd),f=0;f<e.length;f++){var g,h;f==e.length-1?(h=e.join(" "),g=d):(h=e.slice(0,f+1).join(" "),g="...");var i=b[h];if(i){if(i!=g)throw new Error("Inconsistent bindings for "+h)}else b[h]=g}delete a[c]}for(var j in b)a[j]=b[j];return a};var Od=v.lookupKey=function(a,b,c,d){b=Rd(b);var e=b.call?b.call(a,d):b[a];if(e===!1)return"nothing";if("..."===e)return"multi";if(null!=e&&c(e))return"handled";if(b.fallthrough){if("[object Array]"!=Object.prototype.toString.call(b.fallthrough))return Od(a,b.fallthrough,c,d);for(var f=0;f<b.fallthrough.length;f++){var g=Od(a,b.fallthrough[f],c,d);if(g)return g}}},Pd=v.isModifierKey=function(a){var b="string"==typeof a?a:Pg[a.keyCode];return"Ctrl"==b||"Alt"==b||"Shift"==b||"Mod"==b},Qd=v.keyName=function(a,b){if(i&&34==a.keyCode&&a["char"])return!1;var c=Pg[a.keyCode],d=c;return null==d||a.altGraphKey?!1:(a.altKey&&"Alt"!=c&&(d="Alt-"+d),(r?a.metaKey:a.ctrlKey)&&"Ctrl"!=c&&(d="Ctrl-"+d),(r?a.ctrlKey:a.metaKey)&&"Cmd"!=c&&(d="Cmd-"+d),!b&&a.shiftKey&&"Shift"!=c&&(d="Shift-"+d),d)};v.fromTextArea=function(a,b){function d(){a.value=i.getValue()}if(b=b?jg(b):{},b.value=a.value,!b.tabindex&&a.tabIndex&&(b.tabindex=a.tabIndex),!b.placeholder&&a.placeholder&&(b.placeholder=a.placeholder),null==b.autofocus){var c=wg();b.autofocus=c==a||null!=a.getAttribute("autofocus")&&c==document.body}if(a.form&&(Jf(a.form,"submit",d),!b.leaveSubmitMethodAlone)){var e=a.form,f=e.submit;try{var g=e.submit=function(){d(),e.submit=f,e.submit(),e.submit=g}}catch(h){}}b.finishInit=function(b){b.save=d,b.getTextArea=function(){return a},b.toTextArea=function(){b.toTextArea=isNaN,d(),a.parentNode.removeChild(b.getWrapperElement()),a.style.display="",a.form&&(Mf(a.form,"submit",d),"function"==typeof a.form.submit&&(a.form.submit=f))}},a.style.display="none";var i=v(function(b){a.parentNode.insertBefore(b,a.nextSibling)},b);return i};var Sd=v.StringStream=function(a,b){this.pos=this.start=0,this.string=a,this.tabSize=b||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0};Sd.prototype={eol:function(){return this.pos>=this.string.length},sol:function(){return this.pos==this.lineStart},peek:function(){return this.string.charAt(this.pos)||void 0},next:function(){return this.pos<this.string.length?this.string.charAt(this.pos++):void 0},eat:function(a){var b=this.string.charAt(this.pos);if("string"==typeof a)var c=b==a;else var c=b&&(a.test?a.test(b):a(b));return c?(++this.pos,b):void 0},eatWhile:function(a){for(var b=this.pos;this.eat(a););return this.pos>b},eatSpace:function(){for(var a=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>a},skipToEnd:function(){this.pos=this.string.length},skipTo:function(a){var b=this.string.indexOf(a,this.pos);return b>-1?(this.pos=b,!0):void 0},backUp:function(a){this.pos-=a},column:function(){return this.lastColumnPos<this.start&&(this.lastColumnValue=_f(this.string,this.start,this.tabSize,this.lastColumnPos,this.lastColumnValue),this.lastColumnPos=this.start),this.lastColumnValue-(this.lineStart?_f(this.string,this.lineStart,this.tabSize):0)},indentation:function(){return _f(this.string,null,this.tabSize)-(this.lineStart?_f(this.string,this.lineStart,this.tabSize):0)},match:function(a,b,c){if("string"!=typeof a){var f=this.string.slice(this.pos).match(a);return f&&f.index>0?null:(f&&b!==!1&&(this.pos+=f[0].length),f)}var d=function(a){return c?a.toLowerCase():a},e=this.string.substr(this.pos,a.length);return d(e)==d(a)?(b!==!1&&(this.pos+=a.length),!0):void 0},current:function(){return this.string.slice(this.start,this.pos)},hideFirstChars:function(a,b){this.lineStart+=a;try{return b()}finally{this.lineStart-=a}}};var Td=0,Ud=v.TextMarker=function(a,b){this.lines=[],this.type=b,this.doc=a,this.id=++Td};Uf(Ud),Ud.prototype.clear=function(){if(!this.explicitlyCleared){var a=this.doc.cm,b=a&&!a.curOp;if(b&&Vb(a),Tf(this,"clear")){var c=this.find();c&&Pf(this,"clear",c.from,c.to)}for(var d=null,e=null,f=0;f<this.lines.length;++f){var g=this.lines[f],h=ae(g.markedSpans,this);a&&!this.collapsed?jc(a,kf(g),"text"):a&&(null!=h.to&&(e=kf(g)),null!=h.from&&(d=kf(g))),g.markedSpans=be(g.markedSpans,h),null==h.from&&this.collapsed&&!we(this.doc,g)&&a&&jf(g,Rb(a.display))}if(a&&this.collapsed&&!a.options.lineWrapping)for(var f=0;f<this.lines.length;++f){var i=se(this.lines[f]),j=G(i);j>a.display.maxLineLength&&(a.display.maxLine=i,a.display.maxLineLength=j,a.display.maxLineChanged=!0)}null!=d&&a&&this.collapsed&&ic(a,d,e+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,a&&ab(a.doc)),a&&Pf(a,"markerCleared",a,this),b&&Xb(a),this.parent&&this.parent.clear()}},Ud.prototype.find=function(a,b){null==a&&"bookmark"==this.type&&(a=1);for(var c,d,e=0;e<this.lines.length;++e){var f=this.lines[e],g=ae(f.markedSpans,this);if(null!=g.from&&(c=oa(b?f:kf(f),g.from),-1==a))return c;if(null!=g.to&&(d=oa(b?f:kf(f),g.to),1==a))return d}return c&&{from:c,to:d}},Ud.prototype.changed=function(){var a=this.find(-1,!0),b=this,c=this.doc.cm;a&&c&&cc(c,function(){var d=a.line,e=kf(a.line),f=wb(c,e);if(f&&(Db(f),c.curOp.selectionChanged=c.curOp.forceUpdate=!0),c.curOp.updateMaxLine=!0,!we(b.doc,d)&&null!=b.height){var g=b.height;b.height=null;var h=Ae(b)-g;h&&jf(d,d.height+h)}})},Ud.prototype.attachLine=function(a){if(!this.lines.length&&this.doc.cm){var b=this.doc.cm.curOp;b.maybeHiddenMarkers&&-1!=fg(b.maybeHiddenMarkers,this)||(b.maybeUnhiddenMarkers||(b.maybeUnhiddenMarkers=[])).push(this)}this.lines.push(a)},Ud.prototype.detachLine=function(a){if(this.lines.splice(fg(this.lines,a),1),!this.lines.length&&this.doc.cm){var b=this.doc.cm.curOp;(b.maybeHiddenMarkers||(b.maybeHiddenMarkers=[])).push(this)}};var Td=0,Wd=v.SharedTextMarker=function(a,b){this.markers=a,this.primary=b;for(var c=0;c<a.length;++c)a[c].parent=this};Uf(Wd),Wd.prototype.clear=function(){if(!this.explicitlyCleared){this.explicitlyCleared=!0;for(var a=0;a<this.markers.length;++a)this.markers[a].clear();Pf(this,"clear")}},Wd.prototype.find=function(a,b){return this.primary.find(a,b)};var ye=v.LineWidget=function(a,b,c){if(c)for(var d in c)c.hasOwnProperty(d)&&(this[d]=c[d]);this.doc=a,this.node=b};Uf(ye),ye.prototype.clear=function(){var a=this.doc.cm,b=this.line.widgets,c=this.line,d=kf(c);if(null!=d&&b){for(var e=0;e<b.length;++e)b[e]==this&&b.splice(e--,1);b.length||(c.widgets=null);var f=Ae(this);jf(c,Math.max(0,c.height-f)),a&&cc(a,function(){ze(a,c,-f),jc(a,d,"widget")})}},ye.prototype.changed=function(){var a=this.height,b=this.doc.cm,c=this.line;this.height=null;var d=Ae(this)-a;d&&(jf(c,c.height+d),b&&cc(b,function(){b.curOp.forceUpdate=!0,ze(b,c,d)}))};var Ce=v.Line=function(a,b,c){this.text=a,ke(this,b),this.height=c?c(this):1};Uf(Ce),Ce.prototype.lineNo=function(){return kf(this)};var Ne={},Oe={};Ze.prototype={chunkSize:function(){return this.lines.length},removeInner:function(a,b){for(var c=a,d=a+b;d>c;++c){var e=this.lines[c];this.height-=e.height,Ee(e),Pf(e,"delete")}this.lines.splice(a,b)},collapse:function(a){a.push.apply(a,this.lines)},insertInner:function(a,b,c){this.height+=c,this.lines=this.lines.slice(0,a).concat(b).concat(this.lines.slice(a));for(var d=0;d<b.length;++d)b[d].parent=this},iterN:function(a,b,c){for(var d=a+b;d>a;++a)if(c(this.lines[a]))return!0}},$e.prototype={chunkSize:function(){return this.size},removeInner:function(a,b){this.size-=b;for(var c=0;c<this.children.length;++c){var d=this.children[c],e=d.chunkSize();if(e>a){var f=Math.min(b,e-a),g=d.height;if(d.removeInner(a,f),this.height-=g-d.height,e==f&&(this.children.splice(c--,1),d.parent=null),0==(b-=f))break;a=0}else a-=e}if(this.size-b<25&&(this.children.length>1||!(this.children[0]instanceof Ze))){var h=[];this.collapse(h),this.children=[new Ze(h)],this.children[0].parent=this}},collapse:function(a){for(var b=0;b<this.children.length;++b)this.children[b].collapse(a)},insertInner:function(a,b,c){this.size+=b.length,this.height+=c;for(var d=0;d<this.children.length;++d){var e=this.children[d],f=e.chunkSize();if(f>=a){if(e.insertInner(a,b,c),e.lines&&e.lines.length>50){for(;e.lines.length>50;){var g=e.lines.splice(e.lines.length-25,25),h=new Ze(g);e.height-=h.height,this.children.splice(d+1,0,h),h.parent=this}this.maybeSpill()}break}a-=f}},maybeSpill:function(){if(!(this.children.length<=10)){var a=this;do{var b=a.children.splice(a.children.length-5,5),c=new $e(b);if(a.parent){a.size-=c.size,a.height-=c.height;var e=fg(a.parent.children,a);a.parent.children.splice(e+1,0,c)}else{var d=new $e(a.children);d.parent=a,a.children=[d,c],a=d}c.parent=a.parent}while(a.children.length>10);a.parent.maybeSpill()}},iterN:function(a,b,c){for(var d=0;d<this.children.length;++d){var e=this.children[d],f=e.chunkSize();if(f>a){var g=Math.min(b,f-a);if(e.iterN(a,g,c))return!0;if(0==(b-=g))break;a=0}else a-=f}}};var _e=0,af=v.Doc=function(a,b,c,d){if(!(this instanceof af))return new af(a,b,c,d);null==c&&(c=0),$e.call(this,[new Ze([new Ce("",null)])]),this.first=c,this.scrollTop=this.scrollLeft=0,this.cantEdit=!1,this.cleanGeneration=1,this.frontier=c;var e=oa(c,0);this.sel=Ma(e),this.history=new of(null),this.id=++_e,this.modeOption=b,this.lineSep=d,"string"==typeof a&&(a=this.splitLines(a)),Ye(this,{from:e,to:e,text:a}),Za(this,Ma(e),Xf)};af.prototype=ig($e.prototype,{constructor:af,iter:function(a,b,c){c?this.iterN(a-this.first,b-a,c):this.iterN(this.first,this.first+this.size,a)},insert:function(a,b){for(var c=0,d=0;d<b.length;++d)c+=b[d].height;this.insertInner(a-this.first,b,c)},remove:function(a,b){this.removeInner(a-this.first,b)},getValue:function(a){var b=hf(this,this.first,this.first+this.size);return a===!1?b:b.join(a||this.lineSeparator())},setValue:fc(function(a){var b=oa(this.first,0),c=this.first+this.size-1;hd(this,{from:b,to:oa(c,ff(this,c).text.length),text:this.splitLines(a),origin:"setValue",full:!0},!0),Za(this,Ma(b))}),replaceRange:function(a,b,c,d){b=Oa(this,b),c=c?Oa(this,c):b,nd(this,a,b,c,d)},getRange:function(a,b,c){var d=gf(this,Oa(this,a),Oa(this,b));return c===!1?d:d.join(c||this.lineSeparator())},getLine:function(a){var b=this.getLineHandle(a);return b&&b.text},getLineHandle:function(a){return Qa(this,a)?ff(this,a):void 0},getLineNumber:function(a){return kf(a)},getLineHandleVisualStart:function(a){return"number"==typeof a&&(a=ff(this,a)),se(a)},lineCount:function(){return this.size},firstLine:function(){return this.first},lastLine:function(){return this.first+this.size-1},clipPos:function(a){return Oa(this,a)},getCursor:function(a){var c,b=this.sel.primary();return c=null==a||"head"==a?b.head:"anchor"==a?b.anchor:"end"==a||"to"==a||a===!1?b.to():b.from()},listSelections:function(){return this.sel.ranges},somethingSelected:function(){return this.sel.somethingSelected()},setCursor:fc(function(a,b,c){Wa(this,Oa(this,"number"==typeof a?oa(a,b||0):a),null,c)}),setSelection:fc(function(a,b,c){Wa(this,Oa(this,a),Oa(this,b||a),c)}),extendSelection:fc(function(a,b,c){Ta(this,Oa(this,a),b&&Oa(this,b),c)}),extendSelections:fc(function(a,b){Ua(this,Ra(this,a,b))}),extendSelectionsBy:fc(function(a,b){Ua(this,gg(this.sel.ranges,a),b)}),setSelections:fc(function(a,b,c){if(a.length){for(var d=0,e=[];d<a.length;d++)e[d]=new Ka(Oa(this,a[d].anchor),Oa(this,a[d].head));null==b&&(b=Math.min(a.length-1,this.sel.primIndex)),Za(this,La(e,b),c)}}),addSelection:fc(function(a,b,c){var d=this.sel.ranges.slice(0);d.push(new Ka(Oa(this,a),Oa(this,b||a))),Za(this,La(d,d.length-1),c)}),getSelection:function(a){for(var c,b=this.sel.ranges,d=0;d<b.length;d++){var e=gf(this,b[d].from(),b[d].to());c=c?c.concat(e):e}return a===!1?c:c.join(a||this.lineSeparator())},getSelections:function(a){for(var b=[],c=this.sel.ranges,d=0;d<c.length;d++){var e=gf(this,c[d].from(),c[d].to());a!==!1&&(e=e.join(a||this.lineSeparator())),b[d]=e}return b},replaceSelection:function(a,b,c){for(var d=[],e=0;e<this.sel.ranges.length;e++)d[e]=a;this.replaceSelections(d,b,c||"+input")},replaceSelections:fc(function(a,b,c){for(var d=[],e=this.sel,f=0;f<e.ranges.length;f++){var g=e.ranges[f];d[f]={from:g.from(),to:g.to(),text:this.splitLines(a[f]),origin:c}}for(var h=b&&"end"!=b&&fd(this,d,b),f=d.length-1;f>=0;f--)hd(this,d[f]);h?Ya(this,h):this.cm&&td(this.cm)}),undo:fc(function(){jd(this,"undo")}),redo:fc(function(){jd(this,"redo")}),undoSelection:fc(function(){jd(this,"undo",!0)}),redoSelection:fc(function(){jd(this,"redo",!0)}),setExtending:function(a){this.extend=a},getExtending:function(){return this.extend},historySize:function(){for(var a=this.history,b=0,c=0,d=0;d<a.done.length;d++)a.done[d].ranges||++b;for(var d=0;d<a.undone.length;d++)a.undone[d].ranges||++c;return{undo:b,redo:c}},clearHistory:function(){this.history=new of(this.history.maxGeneration)},markClean:function(){this.cleanGeneration=this.changeGeneration(!0)},changeGeneration:function(a){return a&&(this.history.lastOp=this.history.lastSelOp=this.history.lastOrigin=null),this.history.generation},isClean:function(a){return this.history.generation==(a||this.cleanGeneration)},getHistory:function(){return{done:zf(this.history.done),undone:zf(this.history.undone)}},setHistory:function(a){var b=this.history=new of(this.history.maxGeneration);b.done=zf(a.done.slice(0),null,!0),b.undone=zf(a.undone.slice(0),null,!0)},addLineClass:fc(function(a,b,c){return wd(this,a,"gutter"==b?"gutter":"class",function(a){var d="text"==b?"textClass":"background"==b?"bgClass":"gutter"==b?"gutterClass":"wrapClass";if(a[d]){if(xg(c).test(a[d]))return!1;a[d]+=" "+c}else a[d]=c;return!0})}),removeLineClass:fc(function(a,b,c){return wd(this,a,"gutter"==b?"gutter":"class",function(a){var d="text"==b?"textClass":"background"==b?"bgClass":"gutter"==b?"gutterClass":"wrapClass",e=a[d];if(!e)return!1;if(null==c)a[d]=null;else{var f=e.match(xg(c));if(!f)return!1;var g=f.index+f[0].length;a[d]=e.slice(0,f.index)+(f.index&&g!=e.length?" ":"")+e.slice(g)||null}return!0})}),addLineWidget:fc(function(a,b,c){return Be(this,a,b,c)}),removeLineWidget:function(a){a.clear()},markText:function(a,b,c){return Vd(this,Oa(this,a),Oa(this,b),c,"range")},setBookmark:function(a,b){var c={replacedWith:b&&(null==b.nodeType?b.widget:b),insertLeft:b&&b.insertLeft,clearWhenEmpty:!1,shared:b&&b.shared,handleMouseEvents:b&&b.handleMouseEvents};return a=Oa(this,a),Vd(this,a,a,c,"bookmark")},findMarksAt:function(a){a=Oa(this,a);var b=[],c=ff(this,a.line).markedSpans;if(c)for(var d=0;d<c.length;++d){var e=c[d];(null==e.from||e.from<=a.ch)&&(null==e.to||e.to>=a.ch)&&b.push(e.marker.parent||e.marker)}return b},findMarks:function(a,b,c){a=Oa(this,a),b=Oa(this,b);var d=[],e=a.line;return this.iter(a.line,b.line+1,function(f){var g=f.markedSpans;if(g)for(var h=0;h<g.length;h++){var i=g[h];e==a.line&&a.ch>i.to||null==i.from&&e!=a.line||e==b.line&&i.from>b.ch||c&&!c(i.marker)||d.push(i.marker.parent||i.marker)}++e}),d},getAllMarks:function(){var a=[];return this.iter(function(b){var c=b.markedSpans;if(c)for(var d=0;d<c.length;++d)null!=c[d].from&&a.push(c[d].marker)}),a},posFromIndex:function(a){var b,c=this.first;return this.iter(function(d){var e=d.text.length+1;return e>a?(b=a,!0):(a-=e,void++c)}),Oa(this,oa(c,b))},indexFromPos:function(a){a=Oa(this,a);var b=a.ch;return a.line<this.first||a.ch<0?0:(this.iter(this.first,a.line,function(a){b+=a.text.length+1}),b)},copy:function(a){var b=new af(hf(this,this.first,this.first+this.size),this.modeOption,this.first,this.lineSep);return b.scrollTop=this.scrollTop,b.scrollLeft=this.scrollLeft,b.sel=this.sel,b.extend=!1,a&&(b.history.undoDepth=this.history.undoDepth,b.setHistory(this.getHistory())),b},linkedDoc:function(a){a||(a={});var b=this.first,c=this.first+this.size;null!=a.from&&a.from>b&&(b=a.from),null!=a.to&&a.to<c&&(c=a.to);var d=new af(hf(this,b,c),a.mode||this.modeOption,b,this.lineSep);return a.sharedHist&&(d.history=this.history),(this.linked||(this.linked=[])).push({doc:d,sharedHist:a.sharedHist}),d.linked=[{doc:this,isParent:!0,sharedHist:a.sharedHist}],Zd(d,Yd(this)),d},unlinkDoc:function(a){if(a instanceof v&&(a=a.doc),this.linked)for(var b=0;b<this.linked.length;++b){var c=this.linked[b];if(c.doc==a){this.linked.splice(b,1),a.unlinkDoc(this),$d(Yd(this));break}}if(a.history==this.history){var d=[a.id];df(a,function(a){d.push(a.id)},!0),a.history=new of(null),a.history.done=zf(this.history.done,d),a.history.undone=zf(this.history.undone,d)}},iterLinkedDocs:function(a){df(this,a)},getMode:function(){return this.mode},getEditor:function(){return this.cm},splitLines:function(a){return this.lineSep?a.split(this.lineSep):Kg(a)},lineSeparator:function(){return this.lineSep||"\n"}}),af.prototype.eachLine=af.prototype.iter;var bf="iter insert remove copy getEditor constructor".split(" ");for(var cf in af.prototype)af.prototype.hasOwnProperty(cf)&&fg(bf,cf)<0&&(v.prototype[cf]=function(a){return function(){return a.apply(this.doc,arguments)}}(af.prototype[cf]));Uf(af);var Df=v.e_preventDefault=function(a){a.preventDefault?a.preventDefault():a.returnValue=!1},Ef=v.e_stopPropagation=function(a){a.stopPropagation?a.stopPropagation():a.cancelBubble=!0},Gf=v.e_stop=function(a){Df(a),Ef(a)},Jf=v.on=function(a,b,c){if(a.addEventListener)a.addEventListener(b,c,!1);else if(a.attachEvent)a.attachEvent("on"+b,c);else{var d=a._handlers||(a._handlers={}),e=d[b]||(d[b]=[]);e.push(c)}},Kf=[],Mf=v.off=function(a,b,c){if(a.removeEventListener)a.removeEventListener(b,c,!1);else if(a.detachEvent)a.detachEvent("on"+b,c);else for(var d=Lf(a,b,!1),e=0;e<d.length;++e)if(d[e]==c){d.splice(e,1);break}},Nf=v.signal=function(a,b){var c=Lf(a,b,!0);if(c.length)for(var d=Array.prototype.slice.call(arguments,2),e=0;e<c.length;++e)c[e].apply(null,d)},Of=null,Vf=30,Wf=v.Pass={toString:function(){return"CodeMirror.Pass"}},Xf={scroll:!1},Yf={origin:"*mouse"},Zf={origin:"+move"};$f.prototype.set=function(a,b){clearTimeout(this.id),this.id=setTimeout(b,a)};var _f=v.countColumn=function(a,b,c,d,e){null==b&&(b=a.search(/[^\s\u00a0]/),-1==b&&(b=a.length));for(var f=d||0,g=e||0;;){var h=a.indexOf(" ",f);if(0>h||h>=b)return g+(b-f);g+=h-f,g+=c-g%c,f=h+1}},ag=v.findColumn=function(a,b,c){for(var d=0,e=0;;){var f=a.indexOf(" ",d);-1==f&&(f=a.length);var g=f-d;if(f==a.length||e+g>=b)return d+Math.min(g,b-e);if(e+=f-d,e+=c-e%c,d=f+1,e>=b)return d}},bg=[""],eg=function(a){a.select()};m?eg=function(a){a.selectionStart=0,a.selectionEnd=a.value.length}:d&&(eg=function(a){try{a.select()}catch(b){}});var sg,lg=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/,mg=v.isWordChar=function(a){return/\w/.test(a)||a>"\x80"&&(a.toUpperCase()!=a.toLowerCase()||lg.test(a))},pg=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;sg=document.createRange?function(a,b,c,d){var e=document.createRange();return e.setEnd(d||a,c),e.setStart(a,b),e}:function(a,b,c){var d=document.body.createTextRange();try{d.moveToElementText(a.parentNode)}catch(e){return d}return d.collapse(!0),d.moveEnd("character",c),d.moveStart("character",b),d};var vg=v.contains=function(a,b){if(3==b.nodeType&&(b=b.parentNode),a.contains)return a.contains(b);do if(11==b.nodeType&&(b=b.host),b==a)return!0;while(b=b.parentNode)};d&&11>e&&(wg=function(){try{return document.activeElement}catch(a){return document.body}});var Gg,Ig,yg=v.rmClass=function(a,b){var c=a.className,d=xg(b).exec(c);if(d){var e=c.slice(d.index+d[0].length);a.className=c.slice(0,d.index)+(e?d[1]+e:"")}},zg=v.addClass=function(a,b){var c=a.className;xg(b).test(c)||(a.className+=(c?" ":"")+b)},Cg=!1,Fg=function(){if(d&&9>e)return!1;var a=rg("div");return"draggable"in a||"dragDrop"in a}(),Kg=v.splitLines=3!="\n\nb".split(/\n/).length?function(a){for(var b=0,c=[],d=a.length;d>=b;){var e=a.indexOf("\n",b);-1==e&&(e=a.length);var f=a.slice(b,"\r"==a.charAt(e-1)?e-1:e),g=f.indexOf("\r");-1!=g?(c.push(f.slice(0,g)),b+=g+1):(c.push(f),b=e+1)}return c}:function(a){return a.split(/\r\n?|\n/)},Lg=window.getSelection?function(a){try{return a.selectionStart!=a.selectionEnd}catch(b){return!1}}:function(a){try{var b=a.ownerDocument.selection.createRange()}catch(c){}return b&&b.parentElement()==a?0!=b.compareEndPoints("StartToEnd",b):!1},Mg=function(){var a=rg("div");return"oncopy"in a?!0:(a.setAttribute("oncopy","return;"),"function"==typeof a.oncopy)}(),Ng=null,Pg=v.keyNames={3:"Enter",8:"Backspace",9:"Tab",13:"Enter",16:"Shift",17:"Ctrl",18:"Alt",19:"Pause",20:"CapsLock",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"PrintScrn",45:"Insert",46:"Delete",59:";",61:"=",91:"Mod",92:"Mod",93:"Mod",106:"*",107:"=",109:"-",110:".",111:"/",127:"Delete",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",63232:"Up",63233:"Down",63234:"Left",63235:"Right",63272:"Delete",63273:"Home",63275:"End",63276:"PageUp",63277:"PageDown",63302:"Insert"};!function(){for(var a=0;10>a;a++)Pg[a+48]=Pg[a+96]=String(a);for(var a=65;90>=a;a++)Pg[a]=String.fromCharCode(a);for(var a=1;12>=a;a++)Pg[a+111]=Pg[a+63235]="F"+a}();var Zg,ch=function(){function c(c){return 247>=c?a.charAt(c):c>=1424&&1524>=c?"R":c>=1536&&1773>=c?b.charAt(c-1536):c>=1774&&2220>=c?"r":c>=8192&&8203>=c?"w":8204==c?"b":"L"}function j(a,b,c){this.level=a,this.from=b,this.to=c}var a="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN",b="rrrrrrrrrrrr,rNNmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmrrrrrrrnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmNmmmm",d=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,e=/[stwN]/,f=/[LRr]/,g=/[Lb1n]/,h=/[1n]/,i="L";return function(a){if(!d.test(a))return!1;for(var m,b=a.length,k=[],l=0;b>l;++l)k.push(m=c(a.charCodeAt(l)));for(var l=0,n=i;b>l;++l){var m=k[l];"m"==m?k[l]=n:n=m}for(var l=0,o=i;b>l;++l){var m=k[l];"1"==m&&"r"==o?k[l]="n":f.test(m)&&(o=m,"r"==m&&(k[l]="R"))}for(var l=1,n=k[0];b-1>l;++l){var m=k[l];"+"==m&&"1"==n&&"1"==k[l+1]?k[l]="1":","!=m||n!=k[l+1]||"1"!=n&&"n"!=n||(k[l]=n),n=m}for(var l=0;b>l;++l){var m=k[l];if(","==m)k[l]="N";else if("%"==m){for(var p=l+1;b>p&&"%"==k[p];++p);for(var q=l&&"!"==k[l-1]||b>p&&"1"==k[p]?"1":"N",r=l;p>r;++r)k[r]=q;l=p-1}}for(var l=0,o=i;b>l;++l){var m=k[l];"L"==o&&"1"==m?k[l]="L":f.test(m)&&(o=m)}for(var l=0;b>l;++l)if(e.test(k[l])){for(var p=l+1;b>p&&e.test(k[p]);++p);for(var s="L"==(l?k[l-1]:i),t="L"==(b>p?k[p]:i),q=s||t?"L":"R",r=l;p>r;++r)k[r]=q;l=p-1}for(var v,u=[],l=0;b>l;)if(g.test(k[l])){var w=l;for(++l;b>l&&g.test(k[l]);++l);u.push(new j(0,w,l))}else{var x=l,y=u.length;for(++l;b>l&&"L"!=k[l];++l);for(var r=x;l>r;)if(h.test(k[r])){r>x&&u.splice(y,0,new j(1,x,r));var z=r;for(++r;l>r&&h.test(k[r]);++r);u.splice(y,0,new j(2,z,r)),x=r}else++r;l>x&&u.splice(y,0,new j(1,x,l))}return 1==u[0].level&&(v=a.match(/^\s+/))&&(u[0].from=v[0].length,u.unshift(new j(0,0,v[0].length))),1==dg(u).level&&(v=a.match(/\s+$/))&&(dg(u).to-=v[0].length,u.push(new j(0,b-v[0].length,b))),2==u[0].level&&u.unshift(new j(1,u[0].to,u[0].to)),u[0].level!=dg(u).level&&u.push(new j(u[0].level,b,b)),u}}();return v.version="5.7.1",v}),function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";function b(a){for(var b={},c=a.split(" "),d=0;d<c.length;++d)b[c[d]]=!0;return b}function e(a,b){if(!b.startOfLine)return!1;for(;;){if(!a.skipTo("\\")){a.skipToEnd(),b.tokenize=null;break}if(a.next(),a.eol()){b.tokenize=e;break}}return"meta"}function f(a,b){return"variable-3"==b.prevToken?"variable-3":!1}function g(a){return a.eatWhile(/[\w\.']/),"number"}function h(a,b){if(a.backUp(1),a.match(/(R|u8R|uR|UR|LR)/)){var c=a.match(/"([^\s\\()]{0,16})\(/);return c?(b.cpp11RawStringDelim=c[1],b.tokenize=k,k(a,b)):!1}return a.match(/(u8|u|U|L)/)?a.match(/["']/,!1)?"string":!1:(a.next(),!1)}function i(a){var b=/(\w+)::(\w+)$/.exec(a);return b&&b[1]==b[2]}function j(a,b){for(var c;null!=(c=a.next());)if('"'==c&&!a.eat('"')){b.tokenize=null;break}return"string"}function k(a,b){var c=b.cpp11RawStringDelim.replace(/[^\w\s]/g,"\\$&"),d=a.match(new RegExp(".*?\\)"+c+'"'));return d?b.tokenize=null:a.skipToEnd(),"string"}function l(b,c){function e(a){if(a)for(var b in a)a.hasOwnProperty(b)&&d.push(b)}"string"==typeof b&&(b=[b]);var d=[];e(c.keywords),e(c.types),e(c.builtin),e(c.atoms),d.length&&(c.helperType=b[0],a.registerHelper("hintWords",b[0],d));for(var f=0;f<b.length;++f)a.defineMIME(b[f],c)}function m(a,b){for(var c=!1;!a.eol();){if(!c&&a.match('"""')){b.tokenize=null;break}c="\\"==a.next()&&!c}return"string"}a.defineMode("clike",function(b,c){function u(a,b){var c=a.next();if(m[c]){var d=m[c](a,b);if(d!==!1)return d}if('"'==c||"'"==c)return b.tokenize=v(c),b.tokenize(a,b);if(/[\[\]{}\(\),;\:\.]/.test(c))return s=c,null;if(/\d/.test(c))return a.eatWhile(/[\w\.]/),"number";if("/"==c){if(a.eat("*"))return b.tokenize=w,w(a,b);if(a.eat("/"))return a.skipToEnd(),"comment"}if(r.test(c))return a.eatWhile(r),"operator";if(a.eatWhile(/[\w\$_\xa1-\uffff]/),q)for(;a.match(q);)a.eatWhile(/[\w\$_\xa1-\uffff]/);var e=a.current();return g.propertyIsEnumerable(e)?(j.propertyIsEnumerable(e)&&(s="newstatement"),k.propertyIsEnumerable(e)&&(t=!0),"keyword"):h.propertyIsEnumerable(e)?"variable-3":i.propertyIsEnumerable(e)?(j.propertyIsEnumerable(e)&&(s="newstatement"),"builtin"):l.propertyIsEnumerable(e)?"atom":"variable"}function v(a){return function(b,c){for(var e,d=!1,f=!1;null!=(e=b.next());){if(e==a&&!d){f=!0;break}d=!d&&"\\"==e}return(f||!d&&!n)&&(c.tokenize=null),"string"}}function w(a,b){for(var d,c=!1;d=a.next();){if("/"==d&&c){b.tokenize=null;break}c="*"==d}return"comment"}function x(a,b,c,d,e){this.indented=a,this.column=b,this.type=c,this.align=d,this.prev=e}function y(a){return"statement"==a||"switchstatement"==a||"namespace"==a}function z(a,b,c){var d=a.indented;return a.context&&y(a.context.type)&&!y(c)&&(d=a.context.indented),a.context=new x(d,b,c,null,a.context)}function A(a){var b=a.context.type;return(")"==b||"]"==b||"}"==b)&&(a.indented=a.context.indented),a.context=a.context.prev}function B(a,b){return"variable"==b.prevToken||"variable-3"==b.prevToken?!0:/\S(?:[^- ]>|[*\]])\s*$|\*$/.test(a.string.slice(0,a.start))?!0:void 0}function C(a){for(;;){if(!a||"top"==a.type)return!0;if("}"==a.type&&"namespace"!=a.prev.type)return!1;a=a.prev}}var s,t,d=b.indentUnit,e=c.statementIndentUnit||d,f=c.dontAlignCalls,g=c.keywords||{},h=c.types||{},i=c.builtin||{},j=c.blockKeywords||{},k=c.defKeywords||{},l=c.atoms||{},m=c.hooks||{},n=c.multiLineStrings,o=c.indentStatements!==!1,p=c.indentSwitch!==!1,q=c.namespaceSeparator,r=/[+\-*&%=<>!?|\/]/;return{startState:function(a){return{tokenize:null,context:new x((a||0)-d,0,"top",!1),indented:0,startOfLine:!0,prevToken:null}},token:function(a,b){var d=b.context;if(a.sol()&&(null==d.align&&(d.align=!1),b.indented=a.indentation(),b.startOfLine=!0),a.eatSpace())return null;s=t=null;var e=(b.tokenize||u)(a,b);if("comment"==e||"meta"==e)return e;if(null==d.align&&(d.align=!0),";"==s||":"==s||","==s)for(;y(b.context.type);)A(b);else if("{"==s)z(b,a.column(),"}");else if("["==s)z(b,a.column(),"]");else if("("==s)z(b,a.column(),")");else if("}"==s){for(;y(d.type);)d=A(b);for("}"==d.type&&(d=A(b));y(d.type);)d=A(b)}else if(s==d.type)A(b);else if(o&&(("}"==d.type||"top"==d.type)&&";"!=s||y(d.type)&&"newstatement"==s)){var f="statement";"newstatement"==s&&p&&"switch"==a.current()?f="switchstatement":"keyword"==e&&"namespace"==a.current()&&(f="namespace"),z(b,a.column(),f)}if("variable"==e&&("def"==b.prevToken||c.typeFirstDefinitions&&B(a,b)&&C(b.context)&&a.match(/^\s*\(/,!1))&&(e="def"),m.token){var g=m.token(a,b,e);void 0!==g&&(e=g)}return"def"==e&&c.styleDefs===!1&&(e="variable"),b.startOfLine=!1,b.prevToken=t?"def":e||s,e},indent:function(b,c){if(b.tokenize!=u&&null!=b.tokenize)return a.Pass;var g=b.context,h=c&&c.charAt(0);y(g.type)&&"}"==h&&(g=g.prev);var i=h==g.type,j=g.prev&&"switchstatement"==g.prev.type;return y(g.type)?g.indented+("{"==h?0:e):!g.align||f&&")"==g.type?")"!=g.type||i?g.indented+(i?0:d)+(i||!j||/^(?:case|default)\b/.test(c)?0:d):g.indented+e:g.column+(i?0:1)},electricInput:p?/^\s*(?:case .*?:|default:|\{\}?|\})$/:/^\s*[{}]$/,blockCommentStart:"/*",blockCommentEnd:"*/",lineComment:"//",fold:"brace"}});var c="auto if break case register continue return default do sizeof static else struct switch extern typedef float union for goto while enum const volatile",d="int long char short double float unsigned signed void size_t ptrdiff_t";l(["text/x-csrc","text/x-c","text/x-chdr"],{name:"clike",keywords:b(c),types:b(d+" bool _Complex _Bool float_t double_t intptr_t intmax_t int8_t int16_t int32_t int64_t uintptr_t uintmax_t uint8_t uint16_t uint32_t uint64_t"),blockKeywords:b("case do else for if switch while struct"),defKeywords:b("struct"),typeFirstDefinitions:!0,atoms:b("null true false"),hooks:{"#":e,"*":f},modeProps:{fold:["brace","include"]}}),l(["text/x-c++src","text/x-c++hdr"],{name:"clike",keywords:b(c+" asm dynamic_cast namespace reinterpret_cast try explicit new static_cast typeid catch operator template typename class friend private this using const_cast inline public throw virtual delete mutable protected alignas alignof constexpr decltype nullptr noexcept thread_local final static_assert override"),types:b(d+" bool wchar_t"),blockKeywords:b("catch class do else finally for if struct switch try while"),
|
21 |
defKeywords:b("class namespace struct enum union"),typeFirstDefinitions:!0,atoms:b("true false null"),hooks:{"#":e,"*":f,u:h,U:h,L:h,R:h,0:g,1:g,2:g,3:g,4:g,5:g,6:g,7:g,8:g,9:g,token:function(a,b,c){return"variable"!=c||"("!=a.peek()||";"!=b.prevToken&&null!=b.prevToken&&"}"!=b.prevToken||!i(a.current())?void 0:"def"}},namespaceSeparator:"::",modeProps:{fold:["brace","include"]}}),l("text/x-java",{name:"clike",keywords:b("abstract assert break case catch class const continue default do else enum extends final finally float for goto if implements import instanceof interface native new package private protected public return static strictfp super switch synchronized this throw throws transient try volatile while"),types:b("byte short int long float double boolean char void Boolean Byte Character Double Float Integer Long Number Object Short String StringBuffer StringBuilder Void"),blockKeywords:b("catch class do else finally for if switch try while"),defKeywords:b("class interface package enum"),typeFirstDefinitions:!0,atoms:b("true false null"),hooks:{"@":function(a){return a.eatWhile(/[\w\$_]/),"meta"}},modeProps:{fold:["brace","import"]}}),l("text/x-csharp",{name:"clike",keywords:b("abstract as async await base break case catch checked class const continue default delegate do else enum event explicit extern finally fixed for foreach goto if implicit in interface internal is lock namespace new operator out override params private protected public readonly ref return sealed sizeof stackalloc static struct switch this throw try typeof unchecked unsafe using virtual void volatile while add alias ascending descending dynamic from get global group into join let orderby partial remove select set value var yield"),types:b("Action Boolean Byte Char DateTime DateTimeOffset Decimal Double Func Guid Int16 Int32 Int64 Object SByte Single String Task TimeSpan UInt16 UInt32 UInt64 bool byte char decimal double short int long object sbyte float string ushort uint ulong"),blockKeywords:b("catch class do else finally for foreach if struct switch try while"),defKeywords:b("class interface namespace struct var"),typeFirstDefinitions:!0,atoms:b("true false null"),hooks:{"@":function(a,b){return a.eat('"')?(b.tokenize=j,j(a,b)):(a.eatWhile(/[\w\$_]/),"meta")}}}),l("text/x-scala",{name:"clike",keywords:b("abstract case catch class def do else extends false final finally for forSome if implicit import lazy match new null object override package private protected return sealed super this throw trait try type val var while with yield _ : = => <- <: <% >: # @ assert assume require print println printf readLine readBoolean readByte readShort readChar readInt readLong readFloat readDouble :: #:: "),types:b("AnyVal App Application Array BufferedIterator BigDecimal BigInt Char Console Either Enumeration Equiv Error Exception Fractional Function IndexedSeq Integral Iterable Iterator List Map Numeric Nil NotNull Option Ordered Ordering PartialFunction PartialOrdering Product Proxy Range Responder Seq Serializable Set Specializable Stream StringBuilder StringContext Symbol Throwable Traversable TraversableOnce Tuple Unit Vector Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void"),multiLineStrings:!0,blockKeywords:b("catch class do else finally for forSome if match switch try while"),defKeywords:b("class def object package trait type val var"),atoms:b("true false null"),indentStatements:!1,indentSwitch:!1,hooks:{"@":function(a){return a.eatWhile(/[\w\$_]/),"meta"},'"':function(a,b){return a.match('""')?(b.tokenize=m,b.tokenize(a,b)):!1},"'":function(a){return a.eatWhile(/[\w\$_\xa1-\uffff]/),"atom"}},modeProps:{closeBrackets:{triples:'"'}}}),l("text/x-kotlin",{name:"clike",keywords:b("package as typealias class interface this super val var fun for is in This throw return break continue object if else while do try when !in !is as?file import where by get set abstract enum open inner override private public internal protected catch finally out final vararg reified dynamic companion constructor init sealed field property receiver param sparam lateinit data inline noinline tailrec external annotation crossinline"),types:b("Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void"),multiLineStrings:!0,blockKeywords:b("catch class do else finally for if where try while enum"),defKeywords:b("class val var object package interface fun"),atoms:b("true false null this"),modeProps:{closeBrackets:{triples:'"'}}}),l(["x-shader/x-vertex","x-shader/x-fragment"],{name:"clike",keywords:b("sampler1D sampler2D sampler3D samplerCube sampler1DShadow sampler2DShadow const attribute uniform varying break continue discard return for while do if else struct in out inout"),types:b("float int bool void vec2 vec3 vec4 ivec2 ivec3 ivec4 bvec2 bvec3 bvec4 mat2 mat3 mat4"),blockKeywords:b("for while do if else struct"),builtin:b("radians degrees sin cos tan asin acos atan pow exp log exp2 sqrt inversesqrt abs sign floor ceil fract mod min max clamp mix step smoothstep length distance dot cross normalize ftransform faceforward reflect refract matrixCompMult lessThan lessThanEqual greaterThan greaterThanEqual equal notEqual any all not texture1D texture1DProj texture1DLod texture1DProjLod texture2D texture2DProj texture2DLod texture2DProjLod texture3D texture3DProj texture3DLod texture3DProjLod textureCube textureCubeLod shadow1D shadow2D shadow1DProj shadow2DProj shadow1DLod shadow2DLod shadow1DProjLod shadow2DProjLod dFdx dFdy fwidth noise1 noise2 noise3 noise4"),atoms:b("true false gl_FragColor gl_SecondaryColor gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_FogCoord gl_PointCoord gl_Position gl_PointSize gl_ClipVertex gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_TexCoord gl_FogFragCoord gl_FragCoord gl_FrontFacing gl_FragData gl_FragDepth gl_ModelViewMatrix gl_ProjectionMatrix gl_ModelViewProjectionMatrix gl_TextureMatrix gl_NormalMatrix gl_ModelViewMatrixInverse gl_ProjectionMatrixInverse gl_ModelViewProjectionMatrixInverse gl_TexureMatrixTranspose gl_ModelViewMatrixInverseTranspose gl_ProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixInverseTranspose gl_TextureMatrixInverseTranspose gl_NormalScale gl_DepthRange gl_ClipPlane gl_Point gl_FrontMaterial gl_BackMaterial gl_LightSource gl_LightModel gl_FrontLightModelProduct gl_BackLightModelProduct gl_TextureColor gl_EyePlaneS gl_EyePlaneT gl_EyePlaneR gl_EyePlaneQ gl_FogParameters gl_MaxLights gl_MaxClipPlanes gl_MaxTextureUnits gl_MaxTextureCoords gl_MaxVertexAttribs gl_MaxVertexUniformComponents gl_MaxVaryingFloats gl_MaxVertexTextureImageUnits gl_MaxTextureImageUnits gl_MaxFragmentUniformComponents gl_MaxCombineTextureImageUnits gl_MaxDrawBuffers"),indentSwitch:!1,hooks:{"#":e},modeProps:{fold:["brace","include"]}}),l("text/x-nesc",{name:"clike",keywords:b(c+"as atomic async call command component components configuration event generic implementation includes interface module new norace nx_struct nx_union post provides signal task uses abstract extends"),types:b(d),blockKeywords:b("case do else for if switch while struct"),atoms:b("null true false"),hooks:{"#":e},modeProps:{fold:["brace","include"]}}),l("text/x-objectivec",{name:"clike",keywords:b(c+"inline restrict _Bool _Complex _Imaginery BOOL Class bycopy byref id IMP in inout nil oneway out Protocol SEL self super atomic nonatomic retain copy readwrite readonly"),types:b(d),atoms:b("YES NO NULL NILL ON OFF true false"),hooks:{"@":function(a){return a.eatWhile(/[\w\$]/),"keyword"},"#":e},modeProps:{fold:"brace"}}),l("text/x-squirrel",{name:"clike",keywords:b("base break clone continue const default delete enum extends function in class foreach local resume return this throw typeof yield constructor instanceof static"),types:b(d),blockKeywords:b("case catch class else for foreach if switch try while"),defKeywords:b("function local class"),typeFirstDefinitions:!0,atoms:b("true false null"),hooks:{"#":e},modeProps:{fold:["brace","include"]}})}),function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";function b(a){for(var b={},c=0;c<a.length;++c)b[a[c]]=!0;return b}function x(a,b){for(var d,c=!1;null!=(d=a.next());){if(c&&"/"==d){b.tokenize=null;break}c="*"==d}return["comment","comment"]}a.defineMode("css",function(b,c){function u(a,b){return s=b,a}function v(a,b){var c=a.next();if(f[c]){var d=f[c](a,b);if(d!==!1)return d}return"@"==c?(a.eatWhile(/[\w\\\-]/),u("def",a.current())):"="==c||("~"==c||"|"==c)&&a.eat("=")?u(null,"compare"):'"'==c||"'"==c?(b.tokenize=w(c),b.tokenize(a,b)):"#"==c?(a.eatWhile(/[\w\\\-]/),u("atom","hash")):"!"==c?(a.match(/^\s*\w*/),u("keyword","important")):/\d/.test(c)||"."==c&&a.eat(/\d/)?(a.eatWhile(/[\w.%]/),u("number","unit")):"-"!==c?/[,+>*\/]/.test(c)?u(null,"select-op"):"."==c&&a.match(/^-?[_a-z][_a-z0-9-]*/i)?u("qualifier","qualifier"):/[:;{}\[\]\(\)]/.test(c)?u(null,c):"u"==c&&a.match(/rl(-prefix)?\(/)||"d"==c&&a.match("omain(")||"r"==c&&a.match("egexp(")?(a.backUp(1),b.tokenize=x,u("property","word")):/[\w\\\-]/.test(c)?(a.eatWhile(/[\w\\\-]/),u("property","word")):u(null,null):/[\d.]/.test(a.peek())?(a.eatWhile(/[\w.%]/),u("number","unit")):a.match(/^-[\w\\\-]+/)?(a.eatWhile(/[\w\\\-]/),a.match(/^\s*:/,!1)?u("variable-2","variable-definition"):u("variable-2","variable")):a.match(/^\w+-/)?u("meta","meta"):void 0}function w(a){return function(b,c){for(var e,d=!1;null!=(e=b.next());){if(e==a&&!d){")"==a&&b.backUp(1);break}d=!d&&"\\"==e}return(e==a||!d&&")"!=a)&&(c.tokenize=null),u("string","string")}}function x(a,b){return a.next(),a.match(/\s*[\"\')]/,!1)?b.tokenize=null:b.tokenize=w(")"),u(null,"(")}function y(a,b,c){this.type=a,this.indent=b,this.prev=c}function z(a,b,c,d){return a.context=new y(c,b.indentation()+(d===!1?0:e),a.context),c}function A(a){return a.context.prev&&(a.context=a.context.prev),a.context.type}function B(a,b,c){return E[c.context.type](a,b,c)}function C(a,b,c,d){for(var e=d||1;e>0;e--)c.context=c.context.prev;return B(a,b,c)}function D(a){var b=a.current().toLowerCase();t=p.hasOwnProperty(b)?"atom":o.hasOwnProperty(b)?"keyword":"variable"}var d=c;c.propertyKeywords||(c=a.resolveMode("text/css")),c.inline=d.inline;var s,t,e=b.indentUnit,f=c.tokenHooks,g=c.documentTypes||{},h=c.mediaTypes||{},i=c.mediaFeatures||{},j=c.mediaValueKeywords||{},k=c.propertyKeywords||{},l=c.nonStandardPropertyKeywords||{},m=c.fontProperties||{},n=c.counterDescriptors||{},o=c.colorKeywords||{},p=c.valueKeywords||{},q=c.allowNested,r=c.supportsAtComponent===!0,E={};return E.top=function(a,b,c){if("{"==a)return z(c,b,"block");if("}"==a&&c.context.prev)return A(c);if(r&&/@component/.test(a))return z(c,b,"atComponentBlock");if(/^@(-moz-)?document$/.test(a))return z(c,b,"documentTypes");if(/^@(media|supports|(-moz-)?document|import)$/.test(a))return z(c,b,"atBlock");if(/^@(font-face|counter-style)/.test(a))return c.stateArg=a,"restricted_atBlock_before";if(/^@(-(moz|ms|o|webkit)-)?keyframes$/.test(a))return"keyframes";if(a&&"@"==a.charAt(0))return z(c,b,"at");if("hash"==a)t="builtin";else if("word"==a)t="tag";else{if("variable-definition"==a)return"maybeprop";if("interpolation"==a)return z(c,b,"interpolation");if(":"==a)return"pseudo";if(q&&"("==a)return z(c,b,"parens")}return c.context.type},E.block=function(a,b,c){if("word"==a){var d=b.current().toLowerCase();return k.hasOwnProperty(d)?(t="property","maybeprop"):l.hasOwnProperty(d)?(t="string-2","maybeprop"):q?(t=b.match(/^\s*:(?:\s|$)/,!1)?"property":"tag","block"):(t+=" error","maybeprop")}return"meta"==a?"block":q||"hash"!=a&&"qualifier"!=a?E.top(a,b,c):(t="error","block")},E.maybeprop=function(a,b,c){return":"==a?z(c,b,"prop"):B(a,b,c)},E.prop=function(a,b,c){if(";"==a)return A(c);if("{"==a&&q)return z(c,b,"propBlock");if("}"==a||"{"==a)return C(a,b,c);if("("==a)return z(c,b,"parens");if("hash"!=a||/^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/.test(b.current())){if("word"==a)D(b);else if("interpolation"==a)return z(c,b,"interpolation")}else t+=" error";return"prop"},E.propBlock=function(a,b,c){return"}"==a?A(c):"word"==a?(t="property","maybeprop"):c.context.type},E.parens=function(a,b,c){return"{"==a||"}"==a?C(a,b,c):")"==a?A(c):"("==a?z(c,b,"parens"):"interpolation"==a?z(c,b,"interpolation"):("word"==a&&D(b),"parens")},E.pseudo=function(a,b,c){return"word"==a?(t="variable-3",c.context.type):B(a,b,c)},E.documentTypes=function(a,b,c){return"word"==a&&g.hasOwnProperty(b.current())?(t="tag",c.context.type):E.atBlock(a,b,c)},E.atBlock=function(a,b,c){if("("==a)return z(c,b,"atBlock_parens");if("}"==a||";"==a)return C(a,b,c);if("{"==a)return A(c)&&z(c,b,q?"block":"top");if("word"==a){var d=b.current().toLowerCase();t="only"==d||"not"==d||"and"==d||"or"==d?"keyword":h.hasOwnProperty(d)?"attribute":i.hasOwnProperty(d)?"property":j.hasOwnProperty(d)?"keyword":k.hasOwnProperty(d)?"property":l.hasOwnProperty(d)?"string-2":p.hasOwnProperty(d)?"atom":o.hasOwnProperty(d)?"keyword":"error"}return c.context.type},E.atComponentBlock=function(a,b,c){return"}"==a?C(a,b,c):"{"==a?A(c)&&z(c,b,q?"block":"top",!1):("word"==a&&(t="error"),c.context.type)},E.atBlock_parens=function(a,b,c){return")"==a?A(c):"{"==a||"}"==a?C(a,b,c,2):E.atBlock(a,b,c)},E.restricted_atBlock_before=function(a,b,c){return"{"==a?z(c,b,"restricted_atBlock"):"word"==a&&"@counter-style"==c.stateArg?(t="variable","restricted_atBlock_before"):B(a,b,c)},E.restricted_atBlock=function(a,b,c){return"}"==a?(c.stateArg=null,A(c)):"word"==a?(t="@font-face"==c.stateArg&&!m.hasOwnProperty(b.current().toLowerCase())||"@counter-style"==c.stateArg&&!n.hasOwnProperty(b.current().toLowerCase())?"error":"property","maybeprop"):"restricted_atBlock"},E.keyframes=function(a,b,c){return"word"==a?(t="variable","keyframes"):"{"==a?z(c,b,"top"):B(a,b,c)},E.at=function(a,b,c){return";"==a?A(c):"{"==a||"}"==a?C(a,b,c):("word"==a?t="tag":"hash"==a&&(t="builtin"),"at")},E.interpolation=function(a,b,c){return"}"==a?A(c):"{"==a||";"==a?C(a,b,c):("word"==a?t="variable":"variable"!=a&&"("!=a&&")"!=a&&(t="error"),"interpolation")},{startState:function(a){return{tokenize:null,state:c.inline?"block":"top",stateArg:null,context:new y(c.inline?"block":"top",a||0,null)}},token:function(a,b){if(!b.tokenize&&a.eatSpace())return null;var c=(b.tokenize||v)(a,b);return c&&"object"==typeof c&&(s=c[1],c=c[0]),t=c,b.state=E[b.state](s,a,b),t},indent:function(a,b){var c=a.context,d=b&&b.charAt(0),f=c.indent;return"prop"!=c.type||"}"!=d&&")"!=d||(c=c.prev),c.prev&&("}"!=d||"block"!=c.type&&"top"!=c.type&&"interpolation"!=c.type&&"restricted_atBlock"!=c.type?(")"==d&&("parens"==c.type||"atBlock_parens"==c.type)||"{"==d&&("at"==c.type||"atBlock"==c.type))&&(f=Math.max(0,c.indent-e),c=c.prev):(c=c.prev,f=c.indent)),f},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",fold:"brace"}});var c=["domain","regexp","url","url-prefix"],d=b(c),e=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],f=b(e),g=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid","orientation","device-pixel-ratio","min-device-pixel-ratio","max-device-pixel-ratio","pointer","any-pointer","hover","any-hover"],h=b(g),i=["landscape","portrait","none","coarse","fine","on-demand","hover","interlace","progressive"],j=b(i),k=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","baseline-shift","binding","bleed","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-feature-settings","font-family","font-kerning","font-language-override","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-weight","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-position","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","justify-content","left","letter-spacing","line-break","line-height","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marker-offset","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","max-height","max-width","min-height","min-width","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotation","rotation-point","ruby-align","ruby-overhang","ruby-position","ruby-span","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-outline","text-overflow","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","word-break","word-spacing","word-wrap","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode"],l=b(k),m=["scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-3d-light-color","scrollbar-track-color","shape-inside","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","zoom"],n=b(m),o=["font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"],p=b(o),q=["additive-symbols","fallback","negative","pad","prefix","range","speak-as","suffix","symbols","system"],r=b(q),s=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],t=b(s),u=["above","absolute","activeborder","additive","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","attr","auto","avoid","avoid-column","avoid-page","avoid-region","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","column","column-reverse","compact","condensed","contain","content","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","dashed","decimal","decimal-leading-zero","default","default-button","destination-atop","destination-in","destination-out","destination-over","devanagari","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ethiopic-numeric","ew-resize","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","georgian","graytext","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hebrew","help","hidden","hide","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-table","inset","inside","intrinsic","invert","italic","japanese-formal","japanese-informal","justify","kannada","katakana","katakana-iroha","keep-all","khmer","korean-hangul-formal","korean-hanja-formal","korean-hanja-informal","landscape","lao","large","larger","left","level","lighter","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","malayalam","match","matrix","matrix3d","media-controls-background","media-current-time-display","media-fullscreen-button","media-mute-button","media-play-button","media-return-to-realtime-button","media-rewind-button","media-seek-back-button","media-seek-forward-button","media-slider","media-sliderthumb","media-time-remaining-display","media-volume-slider","media-volume-slider-container","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menulist-text","menulist-textfield","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","octal","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","perspective","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","scale","scale3d","scaleX","scaleY","scaleZ","scroll","scrollbar","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","semi-condensed","semi-expanded","separate","serif","show","sidama","simp-chinese-formal","simp-chinese-informal","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","solid","somali","source-atop","source-in","source-out","source-over","space","space-around","space-between","spell-out","square","square-button","start","static","status-bar","stretch","stroke","sub","subpixel-antialiased","super","sw-resize","symbolic","symbols","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","tamil","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","trad-chinese-formal","trad-chinese-informal","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","var","vertical","vertical-text","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"],v=b(u),w=c.concat(e).concat(g).concat(i).concat(k).concat(m).concat(s).concat(u);a.registerHelper("hintWords","css",w),a.defineMIME("text/css",{documentTypes:d,mediaTypes:f,mediaFeatures:h,mediaValueKeywords:j,propertyKeywords:l,nonStandardPropertyKeywords:n,fontProperties:p,counterDescriptors:r,colorKeywords:t,valueKeywords:v,tokenHooks:{"/":function(a,b){return a.eat("*")?(b.tokenize=x,x(a,b)):!1}},name:"css"}),a.defineMIME("text/x-scss",{mediaTypes:f,mediaFeatures:h,mediaValueKeywords:j,propertyKeywords:l,nonStandardPropertyKeywords:n,colorKeywords:t,valueKeywords:v,fontProperties:p,allowNested:!0,tokenHooks:{"/":function(a,b){return a.eat("/")?(a.skipToEnd(),["comment","comment"]):a.eat("*")?(b.tokenize=x,x(a,b)):["operator","operator"]},":":function(a){return a.match(/\s*\{/)?[null,"{"]:!1},$:function(a){return a.match(/^[\w-]+/),a.match(/^\s*:/,!1)?["variable-2","variable-definition"]:["variable-2","variable"]},"#":function(a){return a.eat("{")?[null,"interpolation"]:!1}},name:"css",helperType:"scss"}),a.defineMIME("text/x-less",{mediaTypes:f,mediaFeatures:h,mediaValueKeywords:j,propertyKeywords:l,nonStandardPropertyKeywords:n,colorKeywords:t,valueKeywords:v,fontProperties:p,allowNested:!0,tokenHooks:{"/":function(a,b){return a.eat("/")?(a.skipToEnd(),
|
22 |
["comment","comment"]):a.eat("*")?(b.tokenize=x,x(a,b)):["operator","operator"]},"@":function(a){return a.eat("{")?[null,"interpolation"]:a.match(/^(charset|document|font-face|import|(-(moz|ms|o|webkit)-)?keyframes|media|namespace|page|supports)\b/,!1)?!1:(a.eatWhile(/[\w\\\-]/),a.match(/^\s*:/,!1)?["variable-2","variable-definition"]:["variable-2","variable"])},"&":function(){return["atom","atom"]}},name:"css",helperType:"less"}),a.defineMIME("text/x-gss",{documentTypes:d,mediaTypes:f,mediaFeatures:h,propertyKeywords:l,nonStandardPropertyKeywords:n,fontProperties:p,counterDescriptors:r,colorKeywords:t,valueKeywords:v,supportsAtComponent:!0,tokenHooks:{"/":function(a,b){return a.eat("*")?(b.tokenize=x,x(a,b)):!1}},name:"css",helperType:"gss"})}),function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror"),require("../xml/xml"),require("../javascript/javascript"),require("../css/css")):"function"==typeof define&&define.amd?define(["../../lib/codemirror","../xml/xml","../javascript/javascript","../css/css"],a):a(CodeMirror)}(function(a){"use strict";function c(a,b,c){var d=a.current(),e=d.search(b);return e>-1?a.backUp(d.length-e):d.match(/<\/?$/)&&(a.backUp(d.length),a.match(b,!1)||a.match(d)),c}function e(a){var b=d[a];return b?b:d[a]=new RegExp("\\s+"+a+"\\s*=\\s*('|\")?([^'\"]+)('|\")?\\s*")}function f(a,b){for(var d,c=a.pos;c>=0&&"<"!==a.string.charAt(c);)c--;return 0>c?c:(d=a.string.slice(c,a.pos).match(e(b)))?d[2]:""}function g(a,b){return new RegExp((b?"^":"")+"</s*"+a+"s*>","i")}function h(a,b){for(var c in a)for(var d=b[c]||(b[c]=[]),e=a[c],f=e.length-1;f>=0;f--)d.unshift(e[f])}function i(a,b){for(var c=0;c<a.length;c++){var d=a[c];if(!d[0]||d[1].test(f(b,d[0])))return d[2]}}var b={script:[["lang",/(javascript|babel)/i,"javascript"],["type",/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^$/i,"javascript"],["type",/./,"text/plain"],[null,null,"javascript"]],style:[["lang",/^css$/i,"css"],["type",/^(text\/)?(x-)?(stylesheet|css)$/i,"css"],["type",/./,"text/plain"],[null,null,"css"]]},d={};a.defineMode("htmlmixed",function(d,e){function n(b,e){var m,h=e.htmlState.tagName,k=h&&j[h.toLowerCase()],l=f.token(b,e.htmlState);if(k&&/\btag\b/.test(l)&&">"===b.current()&&(m=i(k,b))){var o=a.getMode(d,m),p=g(h,!0),q=g(h,!1);e.token=function(a,b){return a.match(p,!1)?(b.token=n,b.localState=b.localMode=null,null):c(a,q,b.localMode.token(a,b.localState))},e.localMode=o,e.localState=a.startState(o,f.indent(e.htmlState,""))}return l}var f=a.getMode(d,{name:"xml",htmlMode:!0,multilineTagIndentFactor:e.multilineTagIndentFactor,multilineTagIndentPastTag:e.multilineTagIndentPastTag}),j={},k=e&&e.tags,l=e&&e.scriptTypes;if(h(b,j),k&&h(k,j),l)for(var m=l.length-1;m>=0;m--)j.script.unshift(["type",l[m].matches,l[m].mode]);return{startState:function(){var a=f.startState();return{token:n,localMode:null,localState:null,htmlState:a}},copyState:function(b){var c;return b.localState&&(c=a.copyState(b.localMode,b.localState)),{token:b.token,localMode:b.localMode,localState:c,htmlState:a.copyState(f,b.htmlState)}},token:function(a,b){return b.token(a,b)},indent:function(b,c){return!b.localMode||/^\s*<\//.test(c)?f.indent(b.htmlState,c):b.localMode.indent?b.localMode.indent(b.localState,c):a.Pass},innerMode:function(a){return{state:a.localState||a.htmlState,mode:a.localMode||f}}}},"xml","javascript","css"),a.defineMIME("text/html","htmlmixed")}),function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";a.defineMode("javascript",function(b,c){function m(a){for(var c,b=!1,d=!1;null!=(c=a.next());){if(!b){if("/"==c&&!d)return;"["==c?d=!0:d&&"]"==c&&(d=!1)}b=!b&&"\\"==c}}function p(a,b,c){return n=a,o=c,b}function q(a,b){var c=a.next();if('"'==c||"'"==c)return b.tokenize=r(c),b.tokenize(a,b);if("."==c&&a.match(/^\d+(?:[eE][+\-]?\d+)?/))return p("number","number");if("."==c&&a.match(".."))return p("spread","meta");if(/[\[\]{}\(\),;\:\.]/.test(c))return p(c);if("="==c&&a.eat(">"))return p("=>","operator");if("0"==c&&a.eat(/x/i))return a.eatWhile(/[\da-f]/i),p("number","number");if("0"==c&&a.eat(/o/i))return a.eatWhile(/[0-7]/i),p("number","number");if("0"==c&&a.eat(/b/i))return a.eatWhile(/[01]/i),p("number","number");if(/\d/.test(c))return a.match(/^\d*(?:\.\d*)?(?:[eE][+\-]?\d+)?/),p("number","number");if("/"==c)return a.eat("*")?(b.tokenize=s,s(a,b)):a.eat("/")?(a.skipToEnd(),p("comment","comment")):"operator"==b.lastType||"keyword c"==b.lastType||"sof"==b.lastType||/^[\[{}\(,;:]$/.test(b.lastType)?(m(a),a.match(/^\b(([gimyu])(?![gimyu]*\2))+\b/),p("regexp","string-2")):(a.eatWhile(k),p("operator","operator",a.current()));if("`"==c)return b.tokenize=t,t(a,b);if("#"==c)return a.skipToEnd(),p("error","error");if(k.test(c))return a.eatWhile(k),p("operator","operator",a.current());if(i.test(c)){a.eatWhile(i);var d=a.current(),e=j.propertyIsEnumerable(d)&&j[d];return e&&"."!=b.lastType?p(e.type,e.style,d):p("variable","variable",d)}}function r(a){return function(b,c){var e,d=!1;if(f&&"@"==b.peek()&&b.match(l))return c.tokenize=q,p("jsonld-keyword","meta");for(;null!=(e=b.next())&&(e!=a||d);)d=!d&&"\\"==e;return d||(c.tokenize=q),p("string","string")}}function s(a,b){for(var d,c=!1;d=a.next();){if("/"==d&&c){b.tokenize=q;break}c="*"==d}return p("comment","comment")}function t(a,b){for(var d,c=!1;null!=(d=a.next());){if(!c&&("`"==d||"$"==d&&a.eat("{"))){b.tokenize=q;break}c=!c&&"\\"==d}return p("quasi","string-2",a.current())}function v(a,b){b.fatArrowAt&&(b.fatArrowAt=null);var c=a.string.indexOf("=>",a.start);if(!(0>c)){for(var d=0,e=!1,f=c-1;f>=0;--f){var g=a.string.charAt(f),h=u.indexOf(g);if(h>=0&&3>h){if(!d){++f;break}if(0==--d)break}else if(h>=3&&6>h)++d;else if(i.test(g))e=!0;else{if(/["'\/]/.test(g))return;if(e&&!d){++f;break}}}e&&!d&&(b.fatArrowAt=f)}}function x(a,b,c,d,e,f){this.indented=a,this.column=b,this.type=c,this.prev=e,this.info=f,null!=d&&(this.align=d)}function y(a,b){for(var c=a.localVars;c;c=c.next)if(c.name==b)return!0;for(var d=a.context;d;d=d.prev)for(var c=d.vars;c;c=c.next)if(c.name==b)return!0}function z(a,b,c,d,e){var f=a.cc;for(A.state=a,A.stream=e,A.marked=null,A.cc=f,A.style=b,a.lexical.hasOwnProperty("align")||(a.lexical.align=!0);;){var h=f.length?f.pop():g?L:K;if(h(c,d)){for(;f.length&&f[f.length-1].lex;)f.pop()();return A.marked?A.marked:"variable"==c&&y(a,d)?"variable-2":b}}}function B(){for(var a=arguments.length-1;a>=0;a--)A.cc.push(arguments[a])}function C(){return B.apply(null,arguments),!0}function D(a){function b(b){for(var c=b;c;c=c.next)if(c.name==a)return!0;return!1}var d=A.state;if(d.context){if(A.marked="def",b(d.localVars))return;d.localVars={name:a,next:d.localVars}}else{if(b(d.globalVars))return;c.globalVars&&(d.globalVars={name:a,next:d.globalVars})}}function F(){A.state.context={prev:A.state.context,vars:A.state.localVars},A.state.localVars=E}function G(){A.state.localVars=A.state.context.vars,A.state.context=A.state.context.prev}function H(a,b){var c=function(){var c=A.state,d=c.indented;if("stat"==c.lexical.type)d=c.lexical.indented;else for(var e=c.lexical;e&&")"==e.type&&e.align;e=e.prev)d=e.indented;c.lexical=new x(d,A.stream.column(),a,null,c.lexical,b)};return c.lex=!0,c}function I(){var a=A.state;a.lexical.prev&&(")"==a.lexical.type&&(a.indented=a.lexical.indented),a.lexical=a.lexical.prev)}function J(a){function b(c){return c==a?C():";"==a?B():C(b)}return b}function K(a,b){return"var"==a?C(H("vardef",b.length),fa,J(";"),I):"keyword a"==a?C(H("form"),L,K,I):"keyword b"==a?C(H("form"),K,I):"{"==a?C(H("}"),ba,I):";"==a?C():"if"==a?("else"==A.state.lexical.info&&A.state.cc[A.state.cc.length-1]==I&&A.state.cc.pop()(),C(H("form"),L,K,I,ka)):"function"==a?C(qa):"for"==a?C(H("form"),la,K,I):"variable"==a?C(H("stat"),W):"switch"==a?C(H("form"),L,H("}","switch"),J("{"),ba,I,I):"case"==a?C(L,J(":")):"default"==a?C(J(":")):"catch"==a?C(H("form"),F,J("("),ra,J(")"),K,I,G):"class"==a?C(H("form"),sa,I):"export"==a?C(H("stat"),wa,I):"import"==a?C(H("stat"),xa,I):B(H("stat"),L,J(";"),I)}function L(a){return N(a,!1)}function M(a){return N(a,!0)}function N(a,b){if(A.state.fatArrowAt==A.stream.start){var c=b?V:U;if("("==a)return C(F,H(")"),_(ga,")"),I,J("=>"),c,G);if("variable"==a)return B(F,ga,J("=>"),c,G)}var d=b?R:Q;return w.hasOwnProperty(a)?C(d):"async"==a?C(L):"function"==a?C(qa,d):"keyword c"==a?C(b?P:O):"("==a?C(H(")"),O,Da,J(")"),I,d):"operator"==a||"spread"==a?C(b?M:L):"["==a?C(H("]"),Ba,I,d):"{"==a?aa(Y,"}",null,d):"quasi"==a?B(S,d):C()}function O(a){return a.match(/[;\}\)\],]/)?B():B(L)}function P(a){return a.match(/[;\}\)\],]/)?B():B(M)}function Q(a,b){return","==a?C(L):R(a,b,!1)}function R(a,b,c){var d=0==c?Q:R,e=0==c?L:M;return"=>"==a?C(F,c?V:U,G):"operator"==a?/\+\+|--/.test(b)?C(d):"?"==b?C(L,J(":"),e):C(e):"quasi"==a?B(S,d):";"!=a?"("==a?aa(M,")","call",d):"."==a?C(X,d):"["==a?C(H("]"),O,J("]"),I,d):void 0:void 0}function S(a,b){return"quasi"!=a?B():"${"!=b.slice(b.length-2)?C(S):C(L,T)}function T(a){return"}"==a?(A.marked="string-2",A.state.tokenize=t,C(S)):void 0}function U(a){return v(A.stream,A.state),B("{"==a?K:L)}function V(a){return v(A.stream,A.state),B("{"==a?K:M)}function W(a){return":"==a?C(I,K):B(Q,J(";"),I)}function X(a){return"variable"==a?(A.marked="property",C()):void 0}function Y(a,b){return"async"==a?C(Y):"variable"==a||"keyword"==A.style?(A.marked="property",C("get"==b||"set"==b?Z:$)):"number"==a||"string"==a?(A.marked=f?"property":A.style+" property",C($)):"jsonld-keyword"==a?C($):"["==a?C(L,J("]"),$):void 0}function Z(a){return"variable"!=a?B($):(A.marked="property",C(qa))}function $(a){return":"==a?C(M):"("==a?B(qa):void 0}function _(a,b){function c(d){if(","==d){var e=A.state.lexical;return"call"==e.info&&(e.pos=(e.pos||0)+1),C(a,c)}return d==b?C():C(J(b))}return function(d){return d==b?C():B(a,c)}}function aa(a,b,c){for(var d=3;d<arguments.length;d++)A.cc.push(arguments[d]);return C(H(b,c),_(a,b),I)}function ba(a){return"}"==a?C():B(K,ba)}function ca(a){return h&&":"==a?C(ea):void 0}function da(a,b){return"="==b?C(M):void 0}function ea(a){return"variable"==a?(A.marked="variable-3",C()):void 0}function fa(){return B(ga,ca,ia,ja)}function ga(a,b){return"variable"==a?(D(b),C()):"spread"==a?C(ga):"["==a?aa(ga,"]"):"{"==a?aa(ha,"}"):void 0}function ha(a,b){return"variable"!=a||A.stream.match(/^\s*:/,!1)?("variable"==a&&(A.marked="property"),"spread"==a?C(ga):C(J(":"),ga,ia)):(D(b),C(ia))}function ia(a,b){return"="==b?C(M):void 0}function ja(a){return","==a?C(fa):void 0}function ka(a,b){return"keyword b"==a&&"else"==b?C(H("form","else"),K,I):void 0}function la(a){return"("==a?C(H(")"),ma,J(")"),I):void 0}function ma(a){return"var"==a?C(fa,J(";"),oa):";"==a?C(oa):"variable"==a?C(na):B(L,J(";"),oa)}function na(a,b){return"in"==b||"of"==b?(A.marked="keyword",C(L)):C(Q,oa)}function oa(a,b){return";"==a?C(pa):"in"==b||"of"==b?(A.marked="keyword",C(L)):B(L,J(";"),pa)}function pa(a){")"!=a&&C(L)}function qa(a,b){return"*"==b?(A.marked="keyword",C(qa)):"variable"==a?(D(b),C(qa)):"("==a?C(F,H(")"),_(ra,")"),I,K,G):void 0}function ra(a){return"spread"==a?C(ra):B(ga,ca,da)}function sa(a,b){return"variable"==a?(D(b),C(ta)):void 0}function ta(a,b){return"extends"==b?C(L,ta):"{"==a?C(H("}"),ua,I):void 0}function ua(a,b){return"variable"==a||"keyword"==A.style?"static"==b?(A.marked="keyword",C(ua)):(A.marked="property","get"==b||"set"==b?C(va,qa,ua):C(qa,ua)):"*"==b?(A.marked="keyword",C(ua)):";"==a?C(ua):"}"==a?C():void 0}function va(a){return"variable"!=a?B():(A.marked="property",C())}function wa(a,b){return"*"==b?(A.marked="keyword",C(Aa,J(";"))):"default"==b?(A.marked="keyword",C(L,J(";"))):B(K)}function xa(a){return"string"==a?C():B(ya,Aa)}function ya(a,b){return"{"==a?aa(ya,"}"):("variable"==a&&D(b),"*"==b&&(A.marked="keyword"),C(za))}function za(a,b){return"as"==b?(A.marked="keyword",C(ya)):void 0}function Aa(a,b){return"from"==b?(A.marked="keyword",C(L)):void 0}function Ba(a){return"]"==a?C():B(M,Ca)}function Ca(a){return"for"==a?B(Da,J("]")):","==a?C(_(P,"]")):B(_(M,"]"))}function Da(a){return"for"==a?C(la,Da):"if"==a?C(L,Da):void 0}function Ea(a,b){return"operator"==a.lastType||","==a.lastType||k.test(b.charAt(0))||/[,.]/.test(b.charAt(0))}var n,o,d=b.indentUnit,e=c.statementIndent,f=c.jsonld,g=c.json||f,h=c.typescript,i=c.wordCharacters||/[\w$\xa1-\uffff]/,j=function(){function a(a){return{type:a,style:"keyword"}}var b=a("keyword a"),c=a("keyword b"),d=a("keyword c"),e=a("operator"),f={type:"atom",style:"atom"},g={"if":a("if"),"while":b,"with":b,"else":c,"do":c,"try":c,"finally":c,"return":d,"break":d,"continue":d,"new":d,"delete":d,"throw":d,"debugger":d,"var":a("var"),"const":a("var"),let:a("var"),async:a("async"),"function":a("function"),"catch":a("catch"),"for":a("for"),"switch":a("switch"),"case":a("case"),"default":a("default"),"in":e,"typeof":e,"instanceof":e,"true":f,"false":f,"null":f,undefined:f,NaN:f,Infinity:f,"this":a("this"),"class":a("class"),"super":a("atom"),await:d,"yield":d,"export":a("export"),"import":a("import"),"extends":d};if(h){var i={type:"variable",style:"variable-3"},j={"interface":a("interface"),"extends":a("extends"),constructor:a("constructor"),"public":a("public"),"private":a("private"),"protected":a("protected"),"static":a("static"),string:i,number:i,bool:i,any:i};for(var k in j)g[k]=j[k]}return g}(),k=/[+\-*&%=<>!?|~^]/,l=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/,u="([{}])",w={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,"this":!0,"jsonld-keyword":!0},A={state:null,column:null,marked:null,cc:null},E={name:"this",next:{name:"arguments"}};return I.lex=!0,{startState:function(a){var b={tokenize:q,lastType:"sof",cc:[],lexical:new x((a||0)-d,0,"block",!1),localVars:c.localVars,context:c.localVars&&{vars:c.localVars},indented:0};return c.globalVars&&"object"==typeof c.globalVars&&(b.globalVars=c.globalVars),b},token:function(a,b){if(a.sol()&&(b.lexical.hasOwnProperty("align")||(b.lexical.align=!1),b.indented=a.indentation(),v(a,b)),b.tokenize!=s&&a.eatSpace())return null;var c=b.tokenize(a,b);return"comment"==n?c:(b.lastType="operator"!=n||"++"!=o&&"--"!=o?n:"incdec",z(b,c,n,o,a))},indent:function(b,f){if(b.tokenize==s)return a.Pass;if(b.tokenize!=q)return 0;var g=f&&f.charAt(0),h=b.lexical;if(!/^\s*else\b/.test(f))for(var i=b.cc.length-1;i>=0;--i){var j=b.cc[i];if(j==I)h=h.prev;else if(j!=ka)break}"stat"==h.type&&"}"==g&&(h=h.prev),e&&")"==h.type&&"stat"==h.prev.type&&(h=h.prev);var k=h.type,l=g==k;return"vardef"==k?h.indented+("operator"==b.lastType||","==b.lastType?h.info+1:0):"form"==k&&"{"==g?h.indented:"form"==k?h.indented+d:"stat"==k?h.indented+(Ea(b,f)?e||d:0):"switch"!=h.info||l||0==c.doubleIndentSwitch?h.align?h.column+(l?0:1):h.indented+(l?0:d):h.indented+(/^(?:case|default)\b/.test(f)?d:2*d)},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:g?null:"/*",blockCommentEnd:g?null:"*/",lineComment:g?null:"//",fold:"brace",closeBrackets:"()[]{}''\"\"``",helperType:g?"json":"javascript",jsonldMode:f,jsonMode:g}}),a.registerHelper("wordChars","javascript",/[\w$]/),a.defineMIME("text/javascript","javascript"),a.defineMIME("text/ecmascript","javascript"),a.defineMIME("application/javascript","javascript"),a.defineMIME("application/x-javascript","javascript"),a.defineMIME("application/ecmascript","javascript"),a.defineMIME("application/json",{name:"javascript",json:!0}),a.defineMIME("application/x-json",{name:"javascript",json:!0}),a.defineMIME("application/ld+json",{name:"javascript",jsonld:!0}),a.defineMIME("text/typescript",{name:"javascript",typescript:!0}),a.defineMIME("application/typescript",{name:"javascript",typescript:!0})}),function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror"),require("../htmlmixed/htmlmixed"),require("../clike/clike")):"function"==typeof define&&define.amd?define(["../../lib/codemirror","../htmlmixed/htmlmixed","../clike/clike"],a):a(CodeMirror)}(function(a){"use strict";function b(a){for(var b={},c=a.split(" "),d=0;d<c.length;++d)b[c[d]]=!0;return b}function c(a,b,e){return 0==a.length?d(b):function(f,g){for(var h=a[0],i=0;i<h.length;i++)if(f.match(h[i][0]))return g.tokenize=c(a.slice(1),b),h[i][1];return g.tokenize=d(b,e),"string"}}function d(a,b){return function(c,d){return e(c,d,a,b)}}function e(a,b,d,e){if(e!==!1&&a.match("${",!1)||a.match("{$",!1))return b.tokenize=null,"string";if(e!==!1&&a.match(/^\$[a-zA-Z_][a-zA-Z0-9_]*/))return a.match("[",!1)&&(b.tokenize=c([[["[",null]],[[/\d[\w\.]*/,"number"],[/\$[a-zA-Z_][a-zA-Z0-9_]*/,"variable-2"],[/[\w\$]+/,"variable"]],[["]",null]]],d,e)),a.match(/\-\>\w/,!1)&&(b.tokenize=c([[["->",null]],[[/[\w]+/,"variable"]]],d,e)),"variable-2";for(var f=!1;!a.eol()&&(f||e===!1||!a.match("{$",!1)&&!a.match(/^(\$[a-zA-Z_][a-zA-Z0-9_]*|\$\{)/,!1));){if(!f&&a.match(d)){b.tokenize=null,b.tokStack.pop(),b.tokStack.pop();break}f="\\"==a.next()&&!f}return"string"}var f="abstract and array as break case catch class clone const continue declare default do else elseif enddeclare endfor endforeach endif endswitch endwhile extends final for foreach function global goto if implements interface instanceof namespace new or private protected public static switch throw trait try use var while xor die echo empty exit eval include include_once isset list require require_once return print unset __halt_compiler self static parent yield insteadof finally",g="true false null TRUE FALSE NULL __CLASS__ __DIR__ __FILE__ __LINE__ __METHOD__ __FUNCTION__ __NAMESPACE__ __TRAIT__",h="func_num_args func_get_arg func_get_args strlen strcmp strncmp strcasecmp strncasecmp each error_reporting define defined trigger_error user_error set_error_handler restore_error_handler get_declared_classes get_loaded_extensions extension_loaded get_extension_funcs debug_backtrace constant bin2hex hex2bin sleep usleep time mktime gmmktime strftime gmstrftime strtotime date gmdate getdate localtime checkdate flush wordwrap htmlspecialchars htmlentities html_entity_decode md5 md5_file crc32 getimagesize image_type_to_mime_type phpinfo phpversion phpcredits strnatcmp strnatcasecmp substr_count strspn strcspn strtok strtoupper strtolower strpos strrpos strrev hebrev hebrevc nl2br basename dirname pathinfo stripslashes stripcslashes strstr stristr strrchr str_shuffle str_word_count strcoll substr substr_replace quotemeta ucfirst ucwords strtr addslashes addcslashes rtrim str_replace str_repeat count_chars chunk_split trim ltrim strip_tags similar_text explode implode setlocale localeconv parse_str str_pad chop strchr sprintf printf vprintf vsprintf sscanf fscanf parse_url urlencode urldecode rawurlencode rawurldecode readlink linkinfo link unlink exec system escapeshellcmd escapeshellarg passthru shell_exec proc_open proc_close rand srand getrandmax mt_rand mt_srand mt_getrandmax base64_decode base64_encode abs ceil floor round is_finite is_nan is_infinite bindec hexdec octdec decbin decoct dechex base_convert number_format fmod ip2long long2ip getenv putenv getopt microtime gettimeofday getrusage uniqid quoted_printable_decode set_time_limit get_cfg_var magic_quotes_runtime set_magic_quotes_runtime get_magic_quotes_gpc get_magic_quotes_runtime import_request_variables error_log serialize unserialize memory_get_usage var_dump var_export debug_zval_dump print_r highlight_file show_source highlight_string ini_get ini_get_all ini_set ini_alter ini_restore get_include_path set_include_path restore_include_path setcookie header headers_sent connection_aborted connection_status ignore_user_abort parse_ini_file is_uploaded_file move_uploaded_file intval floatval doubleval strval gettype settype is_null is_resource is_bool is_long is_float is_int is_integer is_double is_real is_numeric is_string is_array is_object is_scalar ereg ereg_replace eregi eregi_replace split spliti join sql_regcase dl pclose popen readfile rewind rmdir umask fclose feof fgetc fgets fgetss fread fopen fpassthru ftruncate fstat fseek ftell fflush fwrite fputs mkdir rename copy tempnam tmpfile file file_get_contents file_put_contents stream_select stream_context_create stream_context_set_params stream_context_set_option stream_context_get_options stream_filter_prepend stream_filter_append fgetcsv flock get_meta_tags stream_set_write_buffer set_file_buffer set_socket_blocking stream_set_blocking socket_set_blocking stream_get_meta_data stream_register_wrapper stream_wrapper_register stream_set_timeout socket_set_timeout socket_get_status realpath fnmatch fsockopen pfsockopen pack unpack get_browser crypt opendir closedir chdir getcwd rewinddir readdir dir glob fileatime filectime filegroup fileinode filemtime fileowner fileperms filesize filetype file_exists is_writable is_writeable is_readable is_executable is_file is_dir is_link stat lstat chown touch clearstatcache mail ob_start ob_flush ob_clean ob_end_flush ob_end_clean ob_get_flush ob_get_clean ob_get_length ob_get_level ob_get_status ob_get_contents ob_implicit_flush ob_list_handlers ksort krsort natsort natcasesort asort arsort sort rsort usort uasort uksort shuffle array_walk count end prev next reset current key min max in_array array_search extract compact array_fill range array_multisort array_push array_pop array_shift array_unshift array_splice array_slice array_merge array_merge_recursive array_keys array_values array_count_values array_reverse array_reduce array_pad array_flip array_change_key_case array_rand array_unique array_intersect array_intersect_assoc array_diff array_diff_assoc array_sum array_filter array_map array_chunk array_key_exists pos sizeof key_exists assert assert_options version_compare ftok str_rot13 aggregate session_name session_module_name session_save_path session_id session_regenerate_id session_decode session_register session_unregister session_is_registered session_encode session_start session_destroy session_unset session_set_save_handler session_cache_limiter session_cache_expire session_set_cookie_params session_get_cookie_params session_write_close preg_match preg_match_all preg_replace preg_replace_callback preg_split preg_quote preg_grep overload ctype_alnum ctype_alpha ctype_cntrl ctype_digit ctype_lower ctype_graph ctype_print ctype_punct ctype_space ctype_upper ctype_xdigit virtual apache_request_headers apache_note apache_lookup_uri apache_child_terminate apache_setenv apache_response_headers apache_get_version getallheaders mysql_connect mysql_pconnect mysql_close mysql_select_db mysql_create_db mysql_drop_db mysql_query mysql_unbuffered_query mysql_db_query mysql_list_dbs mysql_list_tables mysql_list_fields mysql_list_processes mysql_error mysql_errno mysql_affected_rows mysql_insert_id mysql_result mysql_num_rows mysql_num_fields mysql_fetch_row mysql_fetch_array mysql_fetch_assoc mysql_fetch_object mysql_data_seek mysql_fetch_lengths mysql_fetch_field mysql_field_seek mysql_free_result mysql_field_name mysql_field_table mysql_field_len mysql_field_type mysql_field_flags mysql_escape_string mysql_real_escape_string mysql_stat mysql_thread_id mysql_client_encoding mysql_get_client_info mysql_get_host_info mysql_get_proto_info mysql_get_server_info mysql_info mysql mysql_fieldname mysql_fieldtable mysql_fieldlen mysql_fieldtype mysql_fieldflags mysql_selectdb mysql_createdb mysql_dropdb mysql_freeresult mysql_numfields mysql_numrows mysql_listdbs mysql_listtables mysql_listfields mysql_db_name mysql_dbname mysql_tablename mysql_table_name pg_connect pg_pconnect pg_close pg_connection_status pg_connection_busy pg_connection_reset pg_host pg_dbname pg_port pg_tty pg_options pg_ping pg_query pg_send_query pg_cancel_query pg_fetch_result pg_fetch_row pg_fetch_assoc pg_fetch_array pg_fetch_object pg_fetch_all pg_affected_rows pg_get_result pg_result_seek pg_result_status pg_free_result pg_last_oid pg_num_rows pg_num_fields pg_field_name pg_field_num pg_field_size pg_field_type pg_field_prtlen pg_field_is_null pg_get_notify pg_get_pid pg_result_error pg_last_error pg_last_notice pg_put_line pg_end_copy pg_copy_to pg_copy_from pg_trace pg_untrace pg_lo_create pg_lo_unlink pg_lo_open pg_lo_close pg_lo_read pg_lo_write pg_lo_read_all pg_lo_import pg_lo_export pg_lo_seek pg_lo_tell pg_escape_string pg_escape_bytea pg_unescape_bytea pg_client_encoding pg_set_client_encoding pg_meta_data pg_convert pg_insert pg_update pg_delete pg_select pg_exec pg_getlastoid pg_cmdtuples pg_errormessage pg_numrows pg_numfields pg_fieldname pg_fieldsize pg_fieldtype pg_fieldnum pg_fieldprtlen pg_fieldisnull pg_freeresult pg_result pg_loreadall pg_locreate pg_lounlink pg_loopen pg_loclose pg_loread pg_lowrite pg_loimport pg_loexport http_response_code get_declared_traits getimagesizefromstring socket_import_stream stream_set_chunk_size trait_exists header_register_callback class_uses session_status session_register_shutdown echo print global static exit array empty eval isset unset die include require include_once require_once json_decode json_encode json_last_error json_last_error_msg curl_close curl_copy_handle curl_errno curl_error curl_escape curl_exec curl_file_create curl_getinfo curl_init curl_multi_add_handle curl_multi_close curl_multi_exec curl_multi_getcontent curl_multi_info_read curl_multi_init curl_multi_remove_handle curl_multi_select curl_multi_setopt curl_multi_strerror curl_pause curl_reset curl_setopt_array curl_setopt curl_share_close curl_share_init curl_share_setopt curl_strerror curl_unescape curl_version mysqli_affected_rows mysqli_autocommit mysqli_change_user mysqli_character_set_name mysqli_close mysqli_commit mysqli_connect_errno mysqli_connect_error mysqli_connect mysqli_data_seek mysqli_debug mysqli_dump_debug_info mysqli_errno mysqli_error_list mysqli_error mysqli_fetch_all mysqli_fetch_array mysqli_fetch_assoc mysqli_fetch_field_direct mysqli_fetch_field mysqli_fetch_fields mysqli_fetch_lengths mysqli_fetch_object mysqli_fetch_row mysqli_field_count mysqli_field_seek mysqli_field_tell mysqli_free_result mysqli_get_charset mysqli_get_client_info mysqli_get_client_stats mysqli_get_client_version mysqli_get_connection_stats mysqli_get_host_info mysqli_get_proto_info mysqli_get_server_info mysqli_get_server_version mysqli_info mysqli_init mysqli_insert_id mysqli_kill mysqli_more_results mysqli_multi_query mysqli_next_result mysqli_num_fields mysqli_num_rows mysqli_options mysqli_ping mysqli_prepare mysqli_query mysqli_real_connect mysqli_real_escape_string mysqli_real_query mysqli_reap_async_query mysqli_refresh mysqli_rollback mysqli_select_db mysqli_set_charset mysqli_set_local_infile_default mysqli_set_local_infile_handler mysqli_sqlstate mysqli_ssl_set mysqli_stat mysqli_stmt_init mysqli_store_result mysqli_thread_id mysqli_thread_safe mysqli_use_result mysqli_warning_count";a.registerHelper("hintWords","php",[f,g,h].join(" ").split(" ")),a.registerHelper("wordChars","php",/[\w$]/);var i={name:"clike",helperType:"php",keywords:b(f),blockKeywords:b("catch do else elseif for foreach if switch try while finally"),defKeywords:b("class function interface namespace trait"),atoms:b(g),builtin:b(h),multiLineStrings:!0,hooks:{$:function(a){return a.eatWhile(/[\w\$_]/),"variable-2"},"<":function(a,b){var c;if(c=a.match(/<<\s*/)){var e=a.eat(/['"]/);a.eatWhile(/[\w\.]/);var f=a.current().slice(c[0].length+(e?2:1));if(e&&a.eat(e),f)return(b.tokStack||(b.tokStack=[])).push(f,0),b.tokenize=d(f,"'"!=e),"string"}return!1},"#":function(a){for(;!a.eol()&&!a.match("?>",!1);)a.next();return"comment"},"/":function(a){if(a.eat("/")){for(;!a.eol()&&!a.match("?>",!1);)a.next();return"comment"}return!1},'"':function(a,b){return(b.tokStack||(b.tokStack=[])).push('"',0),b.tokenize=d('"'),"string"},"{":function(a,b){return b.tokStack&&b.tokStack.length&&b.tokStack[b.tokStack.length-1]++,!1},"}":function(a,b){return b.tokStack&&b.tokStack.length>0&&!--b.tokStack[b.tokStack.length-1]&&(b.tokenize=d(b.tokStack[b.tokStack.length-2])),!1}}};a.defineMode("php",function(b,c){function f(b,c){var f=c.curMode==e;if(b.sol()&&c.pending&&'"'!=c.pending&&"'"!=c.pending&&(c.pending=null),f)return f&&null==c.php.tokenize&&b.match("?>")?(c.curMode=d,c.curState=c.html,c.php.context.prev||(c.php=null),"meta"):e.token(b,c.curState);if(b.match(/^<\?\w*/))return c.curMode=e,c.php||(c.php=a.startState(e,d.indent(c.html,""))),c.curState=c.php,"meta";if('"'==c.pending||"'"==c.pending){for(;!b.eol()&&b.next()!=c.pending;);var g="string"}else if(c.pending&&b.pos<c.pending.end){b.pos=c.pending.end;var g=c.pending.style}else var g=d.token(b,c.curState);c.pending&&(c.pending=null);var j,h=b.current(),i=h.search(/<\?/);return-1!=i&&("string"==g&&(j=h.match(/[\'\"]$/))&&!/\?>/.test(h)?c.pending=j[0]:c.pending={end:b.pos,style:g},b.backUp(h.length-i)),g}var d=a.getMode(b,"text/html"),e=a.getMode(b,i);return{startState:function(){var b=a.startState(d),f=c.startOpen?a.startState(e):null;return{html:b,php:f,curMode:c.startOpen?e:d,curState:c.startOpen?f:b,pending:null}},copyState:function(b){var i,c=b.html,f=a.copyState(d,c),g=b.php,h=g&&a.copyState(e,g);return i=b.curMode==d?f:h,{html:f,php:h,curMode:b.curMode,curState:i,pending:b.pending}},token:f,indent:function(a,b){return a.curMode!=e&&/^\s*<\//.test(b)||a.curMode==e&&/^\?>/.test(b)?d.indent(a.html,b):a.curMode.indent(a.curState,b)},blockCommentStart:"/*",blockCommentEnd:"*/",lineComment:"//",innerMode:function(a){return{state:a.curState,mode:a.curMode}}}},"htmlmixed","clike"),a.defineMIME("application/x-httpd-php","php"),a.defineMIME("application/x-httpd-php-open",{name:"php",startOpen:!0}),a.defineMIME("text/x-php",i)}),function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";a.defineMode("xml",function(b,c){function k(a,b){function c(c){return b.tokenize=c,c(a,b)}var d=a.next();if("<"==d)return a.eat("!")?a.eat("[")?a.match("CDATA[")?c(n("atom","]]>")):null:a.match("--")?c(n("comment","-->")):a.match("DOCTYPE",!0,!0)?(a.eatWhile(/[\w\._\-]/),c(o(1))):null:a.eat("?")?(a.eatWhile(/[\w\._\-]/),b.tokenize=n("meta","?>"),"meta"):(i=a.eat("/")?"closeTag":"openTag",b.tokenize=l,"tag bracket");if("&"==d){var e;return e=a.eat("#")?a.eat("x")?a.eatWhile(/[a-fA-F\d]/)&&a.eat(";"):a.eatWhile(/[\d]/)&&a.eat(";"):a.eatWhile(/[\w\.\-:]/)&&a.eat(";"),e?"atom":"error"}return a.eatWhile(/[^&<]/),null}function l(a,b){var c=a.next();if(">"==c||"/"==c&&a.eat(">"))return b.tokenize=k,i=">"==c?"endTag":"selfcloseTag","tag bracket";if("="==c)return i="equals",null;if("<"==c){b.tokenize=k,b.state=s,b.tagName=b.tagStart=null;var d=b.tokenize(a,b);return d?d+" tag error":"tag error"}return/[\'\"]/.test(c)?(b.tokenize=m(c),b.stringStartCol=a.column(),b.tokenize(a,b)):(a.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/),"word")}function m(a){var b=function(b,c){for(;!b.eol();)if(b.next()==a){c.tokenize=l;break}return"string"};return b.isInAttribute=!0,b}function n(a,b){return function(c,d){for(;!c.eol();){if(c.match(b)){d.tokenize=k;break}c.next()}return a}}function o(a){return function(b,c){for(var d;null!=(d=b.next());){if("<"==d)return c.tokenize=o(a+1),c.tokenize(b,c);if(">"==d){if(1==a){c.tokenize=k;break}return c.tokenize=o(a-1),c.tokenize(b,c)}}return"meta"}}function p(a,b,c){this.prev=a.context,this.tagName=b,this.indent=a.indented,this.startOfLine=c,(g.doNotIndent.hasOwnProperty(b)||a.context&&a.context.noIndent)&&(this.noIndent=!0)}function q(a){a.context&&(a.context=a.context.prev)}function r(a,b){for(var c;;){if(!a.context)return;if(c=a.context.tagName,!g.contextGrabbers.hasOwnProperty(c)||!g.contextGrabbers[c].hasOwnProperty(b))return;q(a)}}function s(a,b,c){return"openTag"==a?(c.tagStart=b.column(),t):"closeTag"==a?u:s}function t(a,b,c){return"word"==a?(c.tagName=b.current(),j="tag",x):(j="error",t)}function u(a,b,c){if("word"==a){var d=b.current();return c.context&&c.context.tagName!=d&&g.implicitlyClosed.hasOwnProperty(c.context.tagName)&&q(c),
|
23 |
+
c.context&&c.context.tagName==d?(j="tag",v):(j="tag error",w)}return j="error",w}function v(a,b,c){return"endTag"!=a?(j="error",v):(q(c),s)}function w(a,b,c){return j="error",v(a,b,c)}function x(a,b,c){if("word"==a)return j="attribute",y;if("endTag"==a||"selfcloseTag"==a){var d=c.tagName,e=c.tagStart;return c.tagName=c.tagStart=null,"selfcloseTag"==a||g.autoSelfClosers.hasOwnProperty(d)?r(c,d):(r(c,d),c.context=new p(c,d,e==c.indented)),s}return j="error",x}function y(a,b,c){return"equals"==a?z:(g.allowMissing||(j="error"),x(a,b,c))}function z(a,b,c){return"string"==a?A:"word"==a&&g.allowUnquoted?(j="string",x):(j="error",x(a,b,c))}function A(a,b,c){return"string"==a?A:x(a,b,c)}var d=b.indentUnit,e=c.multilineTagIndentFactor||1,f=c.multilineTagIndentPastTag;null==f&&(f=!0);var i,j,g=c.htmlMode?{autoSelfClosers:{area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,menuitem:!0},implicitlyClosed:{dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},contextGrabbers:{dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}},doNotIndent:{pre:!0},allowUnquoted:!0,allowMissing:!0,caseFold:!0}:{autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:!1,allowMissing:!1,caseFold:!1},h=c.alignCDATA;return k.isInText=!0,{startState:function(){return{tokenize:k,state:s,indented:0,tagName:null,tagStart:null,context:null}},token:function(a,b){if(!b.tagName&&a.sol()&&(b.indented=a.indentation()),a.eatSpace())return null;i=null;var c=b.tokenize(a,b);return(c||i)&&"comment"!=c&&(j=null,b.state=b.state(i||c,a,b),j&&(c="error"==j?c+" error":j)),c},indent:function(b,c,i){var j=b.context;if(b.tokenize.isInAttribute)return b.tagStart==b.indented?b.stringStartCol+1:b.indented+d;if(j&&j.noIndent)return a.Pass;if(b.tokenize!=l&&b.tokenize!=k)return i?i.match(/^(\s*)/)[0].length:0;if(b.tagName)return f?b.tagStart+b.tagName.length+2:b.tagStart+d*e;if(h&&/<!\[CDATA\[/.test(c))return 0;var m=c&&/^<(\/)?([\w_:\.-]*)/.exec(c);if(m&&m[1])for(;j;){if(j.tagName==m[2]){j=j.prev;break}if(!g.implicitlyClosed.hasOwnProperty(j.tagName))break;j=j.prev}else if(m)for(;j;){var n=g.contextGrabbers[j.tagName];if(!n||!n.hasOwnProperty(m[2]))break;j=j.prev}for(;j&&!j.startOfLine;)j=j.prev;return j?j.indent+d:0},electricInput:/<\/[\s\w:]+>$/,blockCommentStart:"<!--",blockCommentEnd:"-->",configuration:c.htmlMode?"html":"xml",helperType:c.htmlMode?"html":"xml"}}),a.defineMIME("text/xml","xml"),a.defineMIME("application/xml","xml"),a.mimeModes.hasOwnProperty("text/html")||a.defineMIME("text/html",{name:"xml",htmlMode:!0})});
|
inc/php/core.php
ADDED
@@ -0,0 +1,89 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Prevent Direct Access
|
5 |
+
*
|
6 |
+
* @since 0.1
|
7 |
+
*/
|
8 |
+
defined('ABSPATH') or die("Restricted access!");
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Register text domain
|
12 |
+
*
|
13 |
+
* @since 2.2
|
14 |
+
*/
|
15 |
+
function MCFunctions_textdomain() {
|
16 |
+
load_plugin_textdomain( MCFUNC_TEXT, false, MCFUNC_DIR . '/languages/' );
|
17 |
+
}
|
18 |
+
add_action( 'init', 'MCFunctions_textdomain' );
|
19 |
+
|
20 |
+
/**
|
21 |
+
* Print direct link to plugin admin page
|
22 |
+
*
|
23 |
+
* Fetches array of links generated by WP Plugin admin page ( Deactivate | Edit )
|
24 |
+
* and inserts a link to the plugin admin page
|
25 |
+
*
|
26 |
+
* @since 2.2
|
27 |
+
* @param array $links Array of links generated by WP in Plugin Admin page.
|
28 |
+
* @return array Array of links to be output on Plugin Admin page.
|
29 |
+
*/
|
30 |
+
function MCFunctions_settings_link( $links ) {
|
31 |
+
$page = '<a href="' . admin_url( 'themes.php?page=my-custom-functions.php' ) .'">' . __( 'Settings', MCFUNC_TEXT ) . '</a>';
|
32 |
+
array_unshift( $links, $page );
|
33 |
+
return $links;
|
34 |
+
}
|
35 |
+
add_filter( 'plugin_action_links_'.MCFUNC_BASE, 'MCFunctions_settings_link' );
|
36 |
+
|
37 |
+
/**
|
38 |
+
* Print link to My Custom Functions PRO page
|
39 |
+
*
|
40 |
+
* @since 4.0
|
41 |
+
*/
|
42 |
+
function MCFunctions_upgrade_link( $links ) {
|
43 |
+
$upgrade_page = '<a href="//www.arthurgareginyan.com/plugin-my-custom-functions-pro.html" target="_blank"><b style="color:red;">' . __( 'Upgrade to PRO', MCFUNC_TEXT ) . '</b></a>';
|
44 |
+
array_unshift( $links, $upgrade_page );
|
45 |
+
return $links;
|
46 |
+
}
|
47 |
+
add_filter( 'plugin_action_links_'.MCFUNC_BASE, 'MCFunctions_upgrade_link' );
|
48 |
+
|
49 |
+
/**
|
50 |
+
* Print additional links to plugin meta row
|
51 |
+
*
|
52 |
+
* @since 4.0
|
53 |
+
*/
|
54 |
+
function MCFunctions_plugin_row_meta( $links, $file ) {
|
55 |
+
|
56 |
+
if ( strpos( $file, 'my-custom-functions.php' ) !== false ) {
|
57 |
+
|
58 |
+
$new_links = array(
|
59 |
+
'donate' => '<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=8A88KC7TFF6CS" target="_blank"><span class="dashicons dashicons-heart"></span> ' . __( 'Donate', MCFUNC_TEXT ) . '</a>',
|
60 |
+
'upgrage' => '<a href="//www.arthurgareginyan.com/plugin-my-custom-functions-pro.html" target="_blank"><span class="dashicons dashicons-star-filled"></span> ' . __( 'Upgrade to PRO', MCFUNC_TEXT ) . '</a>'
|
61 |
+
);
|
62 |
+
$links = array_merge( $links, $new_links );
|
63 |
+
}
|
64 |
+
|
65 |
+
return $links;
|
66 |
+
}
|
67 |
+
add_filter( 'plugin_row_meta', 'MCFunctions_plugin_row_meta', 10, 2 );
|
68 |
+
|
69 |
+
/**
|
70 |
+
* Register plugin's submenu in the "Appearance" Admin Menu
|
71 |
+
*
|
72 |
+
* @since 4.0
|
73 |
+
*/
|
74 |
+
function MCFunctions_register_submenu_page() {
|
75 |
+
add_theme_page( __( 'My Custom Functions', MCFUNC_TEXT ), __( 'Custom Functions', MCFUNC_TEXT ), 'edit_theme_options', 'my-custom-functions', 'MCFunctions_render_submenu_page' );
|
76 |
+
}
|
77 |
+
add_action( 'admin_menu', 'MCFunctions_register_submenu_page' );
|
78 |
+
|
79 |
+
/**
|
80 |
+
* Register settings
|
81 |
+
*
|
82 |
+
* @since 4.0
|
83 |
+
*/
|
84 |
+
function MCFunctions_register_settings() {
|
85 |
+
register_setting( 'anarcho_cfunctions_settings_group', 'anarcho_cfunctions_settings' );
|
86 |
+
register_setting( 'anarcho_cfunctions_settings_group', 'anarcho_cfunctions_service_info' );
|
87 |
+
register_setting( 'anarcho_cfunctions_settings_group', 'anarcho_cfunctions_error' );
|
88 |
+
}
|
89 |
+
add_action( 'admin_init', 'MCFunctions_register_settings' );
|
inc/php/enqueue.php
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Prevent Direct Access
|
5 |
+
*
|
6 |
+
* @since 0.1
|
7 |
+
*/
|
8 |
+
defined('ABSPATH') or die("Restricted access!");
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Load scripts and style sheet for settings page
|
12 |
+
*
|
13 |
+
* @since 4.0
|
14 |
+
*/
|
15 |
+
function MCFunctions_load_scripts_admin($hook) {
|
16 |
+
|
17 |
+
// Return if the page is not a settings page of this plugin
|
18 |
+
if ( 'appearance_page_my-custom-functions' != $hook ) {
|
19 |
+
return;
|
20 |
+
}
|
21 |
+
|
22 |
+
// Style sheet
|
23 |
+
wp_enqueue_style( 'MCFunctions-admin-css', MCFUNC_URL . 'inc/css/admin.css' );
|
24 |
+
|
25 |
+
// JavaScript
|
26 |
+
wp_enqueue_script( 'MCFunctions-admin-js', MCFUNC_URL . 'inc/js/admin.js', array(), false, true );
|
27 |
+
|
28 |
+
// Bootstrap library
|
29 |
+
wp_enqueue_style( 'MCFunctions-bootstrap-css', MCFUNC_URL . 'inc/lib/bootstrap/bootstrap.css' );
|
30 |
+
wp_enqueue_style( 'MCFunctions-bootstrap-theme-css', MCFUNC_URL . 'inc/lib/bootstrap/bootstrap-theme.css' );
|
31 |
+
wp_enqueue_script( 'MCFunctions-bootstrap-js', MCFUNC_URL . 'inc/lib/bootstrap/bootstrap.js' );
|
32 |
+
|
33 |
+
// CodeMirror library
|
34 |
+
wp_enqueue_style( 'MCFunctions-codemirror-css', MCFUNC_URL . 'inc/lib/codemirror/codemirror.css' );
|
35 |
+
wp_enqueue_script( 'MCFunctions-codemirror-js', MCFUNC_URL . 'inc/lib/codemirror/codemirror-compressed.js' );
|
36 |
+
wp_enqueue_script( 'MCFunctions-codemirror-active-line-js', MCFUNC_URL . 'inc/lib/codemirror/addons/active-line.js' );
|
37 |
+
|
38 |
+
}
|
39 |
+
add_action( 'admin_enqueue_scripts', 'MCFunctions_load_scripts_admin' );
|
inc/php/functional.php
ADDED
@@ -0,0 +1,100 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Prevent Direct Access
|
5 |
+
*
|
6 |
+
* @since 0.1
|
7 |
+
*/
|
8 |
+
defined('ABSPATH') or die("Restricted access!");
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Prepare the user entered code for execution
|
12 |
+
*
|
13 |
+
* @since 2.4
|
14 |
+
*/
|
15 |
+
function MCFunctions_prepare($content) {
|
16 |
+
|
17 |
+
// Cleaning
|
18 |
+
$content = trim( $content );
|
19 |
+
$content = ltrim( $content, '<?php' );
|
20 |
+
$content = rtrim( $content, '?>' );
|
21 |
+
|
22 |
+
// Return prepared code
|
23 |
+
return $content;
|
24 |
+
}
|
25 |
+
|
26 |
+
/**
|
27 |
+
* Check the user entered code for duplicate names of functions
|
28 |
+
*
|
29 |
+
* @since 2.5.1
|
30 |
+
*/
|
31 |
+
function MCFunctions_duplicates($content) {
|
32 |
+
|
33 |
+
// Find names of user entered functions and check for duplicates
|
34 |
+
preg_match_all('/function[\s\n]+(\S+)[\s\n]*\(/i', $content, $user_func_names);
|
35 |
+
$user_func_a = count( $user_func_names[1] );
|
36 |
+
$user_func_b = count( array_unique( $user_func_names[1] ) );
|
37 |
+
|
38 |
+
// Find all names of declared user functions and mutch with names of user entered functions
|
39 |
+
$declared_func = get_defined_functions();
|
40 |
+
$declared_func_user = array_intersect( $user_func_names[1], $declared_func['user'] );
|
41 |
+
$declared_func_internal = array_intersect( $user_func_names[1], $declared_func['internal'] );
|
42 |
+
|
43 |
+
// Update error status
|
44 |
+
if ( $user_func_a != $user_func_b OR count( $declared_func_user ) != 0 OR count( $declared_func_internal ) != 0 ) {
|
45 |
+
update_option( 'anarcho_cfunctions_error', '1' ); // ERROR
|
46 |
+
$error_status = '1';
|
47 |
+
} else {
|
48 |
+
update_option( 'anarcho_cfunctions_error', '0' ); // RESET ERROR VALUE
|
49 |
+
$error_status = '0';
|
50 |
+
}
|
51 |
+
|
52 |
+
// Return error status
|
53 |
+
return $error_status;
|
54 |
+
}
|
55 |
+
|
56 |
+
/**
|
57 |
+
* Execute the user entered code
|
58 |
+
*
|
59 |
+
* @since 3.2
|
60 |
+
*/
|
61 |
+
function MCFunctions_exec() {
|
62 |
+
|
63 |
+
// If STOP file exist...
|
64 |
+
if ( file_exists( MCFUNC_PATH . 'STOP' ) ) {
|
65 |
+
return; // EXIT
|
66 |
+
}
|
67 |
+
|
68 |
+
// Read data from DB
|
69 |
+
$options = get_option( 'anarcho_cfunctions_settings' );
|
70 |
+
$content = isset( $options['anarcho_cfunctions-content'] ) && !empty( $options['anarcho_cfunctions-content'] ) ? $options['anarcho_cfunctions-content'] : ' ';
|
71 |
+
$enable = isset( $options['enable'] ) && !empty( $options['enable'] ) ? $options['enable'] : ' ';
|
72 |
+
|
73 |
+
// If the user entered code is disabled...
|
74 |
+
if ( $enable == 'on') {
|
75 |
+
return; // EXIT
|
76 |
+
}
|
77 |
+
|
78 |
+
// Prepare the user entered functions by calling the "prepare" function
|
79 |
+
$content = MCFunctions_prepare($content);
|
80 |
+
|
81 |
+
// If content is empty...
|
82 |
+
if ( empty($content) OR $content == ' ' ) {
|
83 |
+
return; // EXIT
|
84 |
+
}
|
85 |
+
|
86 |
+
// If the duplicates functions finded...
|
87 |
+
$duplicates = MCFunctions_duplicates($content);
|
88 |
+
if ( $duplicates != 0 ) {
|
89 |
+
return; // EXIT
|
90 |
+
}
|
91 |
+
|
92 |
+
// Parsing and execute by Eval
|
93 |
+
if ( false === @eval( $content ) ) {
|
94 |
+
update_option( 'anarcho_cfunctions_error', '1' ); // ERROR
|
95 |
+
return; // EXIT
|
96 |
+
} else {
|
97 |
+
update_option( 'anarcho_cfunctions_error', '0' ); // RESET ERROR VALUE
|
98 |
+
}
|
99 |
+
}
|
100 |
+
MCFunctions_exec();
|
inc/php/messages.php
ADDED
@@ -0,0 +1,116 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Prevent Direct Access
|
5 |
+
*
|
6 |
+
* @since 0.1
|
7 |
+
*/
|
8 |
+
defined('ABSPATH') or die("Restricted access!");
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Hello message - Bootstrap Modal
|
12 |
+
*
|
13 |
+
* @since 4.0
|
14 |
+
*/
|
15 |
+
function MCFunctions_hello_message() {
|
16 |
+
|
17 |
+
$options = get_option( 'anarcho_cfunctions_settings' );
|
18 |
+
|
19 |
+
if ( !empty($options) ) {
|
20 |
+
return;
|
21 |
+
}
|
22 |
+
|
23 |
+
?>
|
24 |
+
<div id="hello-message" class="modal fade hello-message" role="dialog">
|
25 |
+
<div class="modal-dialog">
|
26 |
+
<div class="modal-content">
|
27 |
+
<div class="modal-body">
|
28 |
+
<img src="http://mycyberuniverse.com/public-files/images/Arthur.png">
|
29 |
+
<button type="button" class="close" data-dismiss="modal">×</button>
|
30 |
+
<p><?php _e( 'Hello. I\'m Arthur, the author of this plugin.', MCFUNC_TEXT ); ?></p>
|
31 |
+
<p><?php printf(
|
32 |
+
__( 'Thank you for installing my plugin! I hope you will love it %s', MCFUNC_TEXT ),
|
33 |
+
'😃'
|
34 |
+
);
|
35 |
+
?></p>
|
36 |
+
</div>
|
37 |
+
</div>
|
38 |
+
</div>
|
39 |
+
</div>
|
40 |
+
<script>
|
41 |
+
jQuery(document).ready(function($) {
|
42 |
+
$("#hello-message").modal();
|
43 |
+
});
|
44 |
+
</script>
|
45 |
+
<?php
|
46 |
+
}
|
47 |
+
|
48 |
+
/**
|
49 |
+
* Error message (When the old version of plugin installed) - Bootstrap Modal
|
50 |
+
*
|
51 |
+
* @since 4.0
|
52 |
+
*/
|
53 |
+
function MCFunctions_error_message() {
|
54 |
+
|
55 |
+
$info = get_option( 'anarcho_cfunctions_service_info' );
|
56 |
+
$old_version = isset( $info['old_version'] ) && !empty( $info['old_version'] ) ? $info['old_version'] : '0';
|
57 |
+
|
58 |
+
if ( $old_version != '1' ) {
|
59 |
+
return;
|
60 |
+
}
|
61 |
+
|
62 |
+
?>
|
63 |
+
<div id="error-message" class="modal fade error-message" role="dialog">
|
64 |
+
<div class="modal-dialog">
|
65 |
+
<div class="modal-content">
|
66 |
+
<div class="modal-body">
|
67 |
+
<p><?php _e( 'You have installed an old version of this plugin.', MCFUNC_TEXT ); ?></p>
|
68 |
+
<p><?php _e( 'Please update the plugin to the latest version, and all will be fine.', MCFUNC_TEXT ); ?></p>
|
69 |
+
</div>
|
70 |
+
</div>
|
71 |
+
</div>
|
72 |
+
</div>
|
73 |
+
<script>
|
74 |
+
jQuery(document).ready(function($) {
|
75 |
+
$("#error-message").modal( {backdrop: "static", keyboard: false} );
|
76 |
+
});
|
77 |
+
</script>
|
78 |
+
<?php
|
79 |
+
}
|
80 |
+
|
81 |
+
/**
|
82 |
+
* Successfull message
|
83 |
+
*
|
84 |
+
* @since 4.0
|
85 |
+
*/
|
86 |
+
function MCFunctions_successfull_message() {
|
87 |
+
|
88 |
+
// After settings updated
|
89 |
+
if ( isset( $_GET['settings-updated'] ) ) {
|
90 |
+
?>
|
91 |
+
<div id="message" class="updated">
|
92 |
+
<p><?php _e( 'Custom functions updated successfully.', MCFUNC_TEXT ); ?></p>
|
93 |
+
</div>
|
94 |
+
<?php
|
95 |
+
}
|
96 |
+
}
|
97 |
+
|
98 |
+
/**
|
99 |
+
* Error message
|
100 |
+
*
|
101 |
+
* @since 4.0
|
102 |
+
*/
|
103 |
+
function MCFunctions_parsing_error_message() {
|
104 |
+
|
105 |
+
$error = get_option( 'anarcho_cfunctions_error' );
|
106 |
+
if ( $error == '1' ) {
|
107 |
+
?>
|
108 |
+
<div id="message" class="error">
|
109 |
+
<p>
|
110 |
+
<?php _e( 'Sorry, but your code causes a "Fatal error", so it is not applied!', MCFUNC_TEXT ); ?><br/>
|
111 |
+
<?php _e( 'Please, check the code and try again.', MCFUNC_TEXT ); ?>
|
112 |
+
</p>
|
113 |
+
</div>
|
114 |
+
<?php
|
115 |
+
}
|
116 |
+
}
|
inc/php/page.php
ADDED
@@ -0,0 +1,224 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Prevent Direct Access
|
5 |
+
*
|
6 |
+
* @since 0.1
|
7 |
+
*/
|
8 |
+
defined('ABSPATH') or die("Restricted access!");
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Render Settings Page
|
12 |
+
*
|
13 |
+
* @since 3.5
|
14 |
+
*/
|
15 |
+
function MCFunctions_render_submenu_page() {
|
16 |
+
|
17 |
+
// Call messages
|
18 |
+
MCFunctions_hello_message();
|
19 |
+
MCFunctions_error_message();
|
20 |
+
MCFunctions_successfull_message();
|
21 |
+
MCFunctions_parsing_error_message();
|
22 |
+
|
23 |
+
// Layout of page
|
24 |
+
?>
|
25 |
+
<div class="wrap">
|
26 |
+
<h2>
|
27 |
+
<?php _e( 'My Custom Functions', MCFUNC_TEXT ); ?>
|
28 |
+
<span>
|
29 |
+
<?php printf(
|
30 |
+
__( 'by %s Arthur Gareginyan %s', MCFUNC_TEXT ),
|
31 |
+
'<a href="http://www.arthurgareginyan.com" target="_blank">',
|
32 |
+
'</a>'
|
33 |
+
);
|
34 |
+
?>
|
35 |
+
</span>
|
36 |
+
</h2>
|
37 |
+
|
38 |
+
<div id="poststuff" class="metabox-holder has-right-sidebar">
|
39 |
+
|
40 |
+
<!-- TABS NAVIGATION MENU -->
|
41 |
+
<ul class="tabs-nav">
|
42 |
+
<li class="active"><a href="#tab-core" data-toggle="tab"><?php _e( 'Main', MCFUNC_TEXT ); ?></a></li>
|
43 |
+
<li><a href="#tab-usage" data-toggle="tab"><?php _e( 'Usage', MCFUNC_TEXT ); ?></a></li>
|
44 |
+
<li><a href="#tab-faq" data-toggle="tab"><?php _e( 'F.A.Q.', MCFUNC_TEXT ); ?></a></li>
|
45 |
+
<li><a href="#tab-author" data-toggle="tab"><?php _e( 'Author', MCFUNC_TEXT ); ?></a></li>
|
46 |
+
<li><a href="#tab-support" data-toggle="tab"><?php _e( 'Support', MCFUNC_TEXT ); ?></a></li>
|
47 |
+
<li><a href="#tab-family" data-toggle="tab"><?php _e( 'Family', MCFUNC_TEXT ); ?></a></li>
|
48 |
+
</ul>
|
49 |
+
<!-- END-TABS NAVIGATION MENU -->
|
50 |
+
|
51 |
+
|
52 |
+
<!-- TAB 1 -->
|
53 |
+
<div class="tab-page fade active in" id="tab-core">
|
54 |
+
|
55 |
+
<?php require_once( MCFUNC_PATH . 'inc/php/settings.php' ); ?>
|
56 |
+
|
57 |
+
</div>
|
58 |
+
<!-- END-TAB 1 -->
|
59 |
+
|
60 |
+
<!-- TAB 2 -->
|
61 |
+
<div class="tab-page fade" id="tab-usage">
|
62 |
+
<div class="postbox">
|
63 |
+
<h3 class="title"><?php _e( 'Usage', MCFUNC_TEXT ); ?></h3>
|
64 |
+
<div class="inside">
|
65 |
+
<p><?php _e( 'To add your custom functions (the PHP code) to your website, simply follow these steps:', MCFUNC_TEXT ); ?></p>
|
66 |
+
<ol class="custom-counter">
|
67 |
+
<li><?php _e( 'Go to the "Main" tab.', MCFUNC_TEXT ); ?></li>
|
68 |
+
<li><?php _e( 'Add your PHP code to the field, switch the toggle to the "ON" position and click the "Save Changes" button.', MCFUNC_TEXT ); ?><br><br>
|
69 |
+
<?php _e( 'Example of PHP code:', MCFUNC_TEXT ); ?>
|
70 |
+
<pre><code>function NameOfYourFunction {
|
71 |
+
|
72 |
+
...
|
73 |
+
|
74 |
+
}</code></pre>
|
75 |
+
<p class="note"><b><?php _e( 'Note!', MCFUNC_TEXT ); ?></b> <?php _e( 'Please do not wrap your PHP code in the <code><?php</code>...<code>?></code> HTML tags.', MCFUNC_TEXT ); ?></p>
|
76 |
+
<p class="note"><b><?php _e( 'Note!', MCFUNC_TEXT ); ?></b> <?php _e( 'Before use, please read the instructions on the F.A.Q. tab on what to do in case of a website crash.', MCFUNC_TEXT ); ?></p>
|
77 |
+
</li>
|
78 |
+
<li><?php _e( 'Enjoy the result of applying your PHP code.', MCFUNC_TEXT ); ?> <?php _e( 'It\'s that simple!', MCFUNC_TEXT ); ?></li>
|
79 |
+
</ol>
|
80 |
+
<p class="note"><b><?php _e( 'Note!', MCFUNC_TEXT ); ?></b> <?php _e( 'If you want more options then tell me and I will be happy to add it.', MCFUNC_TEXT ); ?></p>
|
81 |
+
</div>
|
82 |
+
</div>
|
83 |
+
</div>
|
84 |
+
<!-- END-TAB 2 -->
|
85 |
+
|
86 |
+
<!-- TAB 3 -->
|
87 |
+
<div class="tab-page fade" id="tab-faq">
|
88 |
+
<div class="postbox">
|
89 |
+
<h3 class="title"><?php _e( 'Frequently Asked Questions', MCFUNC_TEXT ); ?></h3>
|
90 |
+
<div class="inside">
|
91 |
+
|
92 |
+
<div class="panel-group" id="collapse-group">
|
93 |
+
<?php
|
94 |
+
$loopvalue = '13';
|
95 |
+
for ( $i = 1; $i <= $loopvalue; $i++ ) {
|
96 |
+
echo '<div class="panel panel-default">
|
97 |
+
<div class="panel-heading">
|
98 |
+
<a data-toggle="collapse" data-parent="#collapse-group" href="#element' . $i . '">
|
99 |
+
<h4 class="panel-title"></h4>
|
100 |
+
</a>
|
101 |
+
</div>
|
102 |
+
<div id="element' . $i . '" class="panel-collapse collapse">
|
103 |
+
<div class="panel-body">
|
104 |
+
</div>
|
105 |
+
</div>
|
106 |
+
</div>';
|
107 |
+
}
|
108 |
+
?>
|
109 |
+
</div>
|
110 |
+
|
111 |
+
<div class="question-1"><?php _e( 'Will this plugin work on my WordPress.COM website?', MCFUNC_TEXT ); ?></div>
|
112 |
+
<div class="answer-1"><?php _e( 'Sorry, this plugin is available for use only on self-hosted (WordPress.ORG) websites.', MCFUNC_TEXT ); ?></div>
|
113 |
+
|
114 |
+
<div class="question-2"><?php _e( 'Can I use this plugin on my language?', MCFUNC_TEXT ); ?></div>
|
115 |
+
<div class="answer-2"><?php printf(
|
116 |
+
__( 'Yes. But If your language is not available then you can make one. This plugin is ready for translation. The<code>.pot</code>file is included and placed in the <code>languages</code> folder. Many of plugin users would be delighted if you shared your translation with the community. Just send the translation files (<code>*.po, *.mo</code>) to me at the %s and I will include the translation within the next plugin update.', MCFUNC_TEXT ),
|
117 |
+
'<a href="mailto:arthurgareginyan@gmail.com?subject=My Custom Functions">arthurgareginyan@gmail.com</a>'
|
118 |
+
);
|
119 |
+
?></div>
|
120 |
+
|
121 |
+
<div class="question-3"><?php _e( 'How does it work?', MCFUNC_TEXT ); ?></div>
|
122 |
+
<div class="answer-3"><?php _e( 'On the "Settings" tab, add your PHP code to the field, switch the toggle to the "ON" position and click the "Save Changes" button. Enjoy the result of applying your PHP code. It\'s that simple!', MCFUNC_TEXT ); ?></div>
|
123 |
+
|
124 |
+
<div class="question-4"><?php _e( 'Can I use HTML/CSS/JS code integrated in PHP code?', MCFUNC_TEXT ); ?></div>
|
125 |
+
<div class="answer-4"><?php _e( 'Yes. But you need to do it properly, like this:', MCFUNC_TEXT ); ?><br>
|
126 |
+
<pre><code>function NameOfYourFunction {
|
127 |
+
|
128 |
+
echo "<script>
|
129 |
+
// Your JS code
|
130 |
+
</script>";
|
131 |
+
|
132 |
+
}</code></pre>
|
133 |
+
</div>
|
134 |
+
|
135 |
+
<div class="question-5"><?php _e( 'How much of PHP code (characters) I can enter in the text field?', MCFUNC_TEXT ); ?></div>
|
136 |
+
<div class="answer-5"><?php _e( 'I don\'t limit the number of characters.', MCFUNC_TEXT ); ?></div>
|
137 |
+
|
138 |
+
<div class="question-6 question-red"><?php _e( 'On the plugin settings page, an error message appears. What could be wrong?', MCFUNC_TEXT ); ?></div>
|
139 |
+
<div class="answer-6"><?php _e( 'Here are a few of the most likely causes of the error message:', MCFUNC_TEXT ); ?><br><br>
|
140 |
+
<?php _e( '1. You make a syntax error in the code that you have entered. Check the syntax of your code and try again.', MCFUNC_TEXT ); ?><br>
|
141 |
+
<?php _e( '2. You entered two functions with the same name. Use a unique names for your functions.', MCFUNC_TEXT ); ?><br>
|
142 |
+
<?php _e( '3. You have entered function with a name that is already occupied by another function. Use a unique name for your function.', MCFUNC_TEXT ); ?><br>
|
143 |
+
<?php _e( '4. You are trying to overwrite an existing function (of WordPress, theme, or plugin). Instead, use filters and hooks.', MCFUNC_TEXT ); ?></div>
|
144 |
+
|
145 |
+
<div class="question-7"><?php _e( 'Does this plugin requires any modification of the theme?', MCFUNC_TEXT ); ?></div>
|
146 |
+
<div class="answer-7"><?php _e( 'Absolutely not. This plugin is configurable entirely from the plugin settings page.', MCFUNC_TEXT ); ?></div>
|
147 |
+
|
148 |
+
<div class="question-8"><?php _e( 'Does this require any knowledge of HTML or CSS?', MCFUNC_TEXT ); ?></div>
|
149 |
+
<div class="answer-8"><?php _e( 'This plugin can be configured with no knowledge of HTML or CSS, using an easy-to-use plugin settings page. But you need to know the HTML or CSS in order to add/remove/modify the HTML or CSS code by using this plugin.', MCFUNC_TEXT ); ?></div>
|
150 |
+
|
151 |
+
<div class="question-9 question-red"><?php _e( 'It\'s not working. What could be wrong?', MCFUNC_TEXT ); ?></div>
|
152 |
+
<div class="answer-9"><?php _e( 'As with every plugin, it\'s possible that things don\'t work. The most common reason for this is a web browser\'s cache. Every web browser stores a cache of the websites you visit (pages, images, and etc.) to reduce bandwidth usage and server load. This is called the browser\'s cache. Clearing your browser\'s cache may solve the problem.', MCFUNC_TEXT ); ?><br><br>
|
153 |
+
<?php _e( 'It\'s impossible to tell what could be wrong exactly, but if you post a support request in the plugin\'s support forum on WordPress.org, I\'d be happy to give it a look and try to help out. Please include as much information as possible, including a link to your website where the problem can be seen.', MCFUNC_TEXT ); ?></div>
|
154 |
+
|
155 |
+
<div class="question-10 question-red"><?php _e( 'What to do if this plugin caused the white screen (WSOD)?', MCFUNC_TEXT ); ?></div>
|
156 |
+
<div class="answer-10"><?php _e( 'This plugin is not perfect, so there are times when the entered custom code causes the error and white screen (WSOD). This is due to the fact that your custom code has a syntax error that this plugin could not detect. If this happened with you then do the following and all will be fine.', MCFUNC_TEXT ); ?>
|
157 |
+
<ol class="custom-counter">
|
158 |
+
<li><?php _e( 'Via FTP, go to the plugin folder (in <code>wp-content/plugins/my-custom-functions/</code>). Rename the "START" file to "STOP".', MCFUNC_TEXT ); ?></li>
|
159 |
+
<li><?php _e( 'Return to the plugin settings page.', MCFUNC_TEXT ); ?></li>
|
160 |
+
<li><?php _e( 'Edit/fix your custom code that you entered before the crash.', MCFUNC_TEXT ); ?></li>
|
161 |
+
<li><?php _e( 'Rename the "STOP" file to "START" and you\'re done!', MCFUNC_TEXT ); ?></li>
|
162 |
+
</ol>
|
163 |
+
<?php _e( 'This plugin stored you entered code in the Database of your website. For getting your code, you also can go to the <code>Database</code> ➡ Table <code>wp_options</code> ➡ Option <code>anarcho_cfunctions_settings</code> ➡ <code>option_value</code>.', MCFUNC_TEXT ); ?></div>
|
164 |
+
|
165 |
+
<div class="question-11 question-red"><?php _e( 'Where to report bug if found?', MCFUNC_TEXT ); ?></div>
|
166 |
+
<div class="answer-11"><?php printf(
|
167 |
+
__( 'Please visit the %s Dedicated Plugin Page on GitHub %s and report.', MCFUNC_TEXT ),
|
168 |
+
'<a href="https://github.com/ArthurGareginyan/my-custom-functions" target="_blank">',
|
169 |
+
'</a>'
|
170 |
+
);
|
171 |
+
?></div>
|
172 |
+
|
173 |
+
<div class="question-12"><?php _e( 'Where to share any ideas or suggestions to make the plugin better?', MCFUNC_TEXT ); ?></div>
|
174 |
+
<div class="answer-12"><?php printf(
|
175 |
+
__( 'Any suggestions are very welcome! Please send me an email to %s arthurgareginyan@gmail.com %s. Thank you!', MCFUNC_TEXT ),
|
176 |
+
'<a href="mailto:arthurgareginyan@gmail.com?subject=My Custom Functions">',
|
177 |
+
'</a>'
|
178 |
+
);
|
179 |
+
?></div>
|
180 |
+
|
181 |
+
<div class="question-13"><?php _e( 'I love this plugin! Can I help somehow?', MCFUNC_TEXT ); ?></div>
|
182 |
+
<div class="answer-13"><?php printf(
|
183 |
+
__( 'Yes, any financial contributions are welcome! Just visit %s my website %s, click on the donate button, and thank you!', MCFUNC_TEXT ),
|
184 |
+
'<a href="http://www.arthurgareginyan.com/donate.html" target="_blank">',
|
185 |
+
'</a>'
|
186 |
+
);
|
187 |
+
?></div>
|
188 |
+
|
189 |
+
</div>
|
190 |
+
</div>
|
191 |
+
</div>
|
192 |
+
<!-- END-TAB 3 -->
|
193 |
+
|
194 |
+
<!-- TAB 4 -->
|
195 |
+
<div class="tab-page fade" id="tab-author">
|
196 |
+
<div class="postbox">
|
197 |
+
<h3 class="title"><?php _e( 'Author', MCFUNC_TEXT ); ?></h3>
|
198 |
+
<div class="inside include-tab-author"></div>
|
199 |
+
</div>
|
200 |
+
</div>
|
201 |
+
<!-- END-TAB 4 -->
|
202 |
+
|
203 |
+
<!-- TAB 5 -->
|
204 |
+
<div class="tab-page fade" id="tab-support">
|
205 |
+
<div class="postbox">
|
206 |
+
<h3 class="title"><?php _e( 'Support', MCFUNC_TEXT ); ?></h3>
|
207 |
+
<div class="inside include-tab-support"></div>
|
208 |
+
</div>
|
209 |
+
</div>
|
210 |
+
<!-- END-TAB 5 -->
|
211 |
+
|
212 |
+
<!-- TAB 6 -->
|
213 |
+
<div class="tab-page fade" id="tab-family">
|
214 |
+
<div class="include-tab-family"></div>
|
215 |
+
</div>
|
216 |
+
<!-- END-TAB 6 -->
|
217 |
+
|
218 |
+
<div class="additional-css"></div>
|
219 |
+
|
220 |
+
</div>
|
221 |
+
|
222 |
+
</div>
|
223 |
+
<?php
|
224 |
+
}
|
inc/php/settings.php
ADDED
@@ -0,0 +1,104 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Prevent Direct Access
|
5 |
+
*
|
6 |
+
* @since 0.1
|
7 |
+
*/
|
8 |
+
defined('ABSPATH') or die("Restricted access!");
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Render Settings Tab
|
12 |
+
*
|
13 |
+
* @since 3.5
|
14 |
+
*/
|
15 |
+
?>
|
16 |
+
<!-- SIDEBAR -->
|
17 |
+
<div class="inner-sidebar">
|
18 |
+
<div id="side-sortables" class="meta-box-sortabless ui-sortable">
|
19 |
+
|
20 |
+
<div id="about" class="postbox">
|
21 |
+
<h3 class="title"><?php _e( 'About', MCFUNC_TEXT ); ?></h3>
|
22 |
+
<div class="inside">
|
23 |
+
<p><?php _e( 'This plugin allows you to easily and safely add your custom functions (PHP code) to your website.', MCFUNC_TEXT ); ?></p>
|
24 |
+
</div>
|
25 |
+
</div>
|
26 |
+
|
27 |
+
<div id="upgrade" class="postbox">
|
28 |
+
<h3 class="title"><?php _e( 'Upgrade', MCFUNC_TEXT ); ?></h3>
|
29 |
+
<div class="inside">
|
30 |
+
<a href="https://www.arthurgareginyan.com/plugin-my-custom-functions-pro.html" target="_blank">
|
31 |
+
<img src="http://mycyberuniverse.com/public-files/sale/pro-version.png" alt="PRO">
|
32 |
+
</a>
|
33 |
+
</div>
|
34 |
+
</div>
|
35 |
+
|
36 |
+
<div id="support" class="postbox">
|
37 |
+
<h3 class="title"><?php _e( 'Support', MCFUNC_TEXT ); ?></h3>
|
38 |
+
<div class="inside">
|
39 |
+
<p><?php _e( 'I\'m an independent developer, without a regular income, so every little contribution helps cover my costs and lets me spend more time building things for people like you to enjoy.', MCFUNC_TEXT ); ?></p>
|
40 |
+
<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=8A88KC7TFF6CS" target="_blank" class="additional-button paypal"><?php _e( 'Donate with PayPal', MCFUNC_TEXT ); ?></a>
|
41 |
+
<p><?php _e( 'Thanks for your support!', MCFUNC_TEXT ); ?></p>
|
42 |
+
</div>
|
43 |
+
</div>
|
44 |
+
|
45 |
+
<div id="help" class="postbox">
|
46 |
+
<h3 class="title"><?php _e( 'Help', MCFUNC_TEXT ); ?></h3>
|
47 |
+
<div class="inside">
|
48 |
+
<p><?php _e( 'Got something to say? Need help?', MCFUNC_TEXT ); ?></p>
|
49 |
+
<p><a href="mailto:arthurgareginyan@gmail.com?subject=My Custom Functions">arthurgareginyan@gmail.com</a></p>
|
50 |
+
</div>
|
51 |
+
</div>
|
52 |
+
|
53 |
+
</div>
|
54 |
+
</div>
|
55 |
+
<!-- END-SIDEBAR -->
|
56 |
+
|
57 |
+
<!-- FORM -->
|
58 |
+
<div class="has-sidebar sm-padded">
|
59 |
+
<div id="post-body-content" class="has-sidebar-content">
|
60 |
+
<div class="meta-box-sortabless">
|
61 |
+
|
62 |
+
<form name="anarcho_cfunctions-form" action="options.php" method="post" enctype="multipart/form-data">
|
63 |
+
<?php settings_fields( 'anarcho_cfunctions_settings_group' ); ?>
|
64 |
+
|
65 |
+
<?php
|
66 |
+
// Get options from the BD
|
67 |
+
$options = get_option( 'anarcho_cfunctions_settings' );
|
68 |
+
|
69 |
+
// Declare variables
|
70 |
+
$content = isset( $options['anarcho_cfunctions-content'] ) && !empty( $options['anarcho_cfunctions-content'] ) ? $options['anarcho_cfunctions-content'] : '/* Enter Your Custom Functions Here */';
|
71 |
+
$enable = isset( $options['enable'] ) && !empty( $options['enable'] ) && $options['enable'] == "on" ? 'checked' : ' ';
|
72 |
+
?>
|
73 |
+
|
74 |
+
<div class="postbox">
|
75 |
+
<h3 class="title">
|
76 |
+
<label for="anarcho_cfunctions_settings[anarcho_cfunctions-content]" ><?php _e( 'Functions (PHP code)', MCFUNC_TEXT ); ?></label>
|
77 |
+
<div class="trigger">
|
78 |
+
<input type="checkbox" name="anarcho_cfunctions_settings[enable]" id="anarcho_cfunctions_settings[enable]" <?php echo $enable; ?> >
|
79 |
+
<label for="anarcho_cfunctions_settings[enable]"></label>
|
80 |
+
</div>
|
81 |
+
</h3>
|
82 |
+
<div class="inside">
|
83 |
+
<textarea name="anarcho_cfunctions_settings[anarcho_cfunctions-content]" id="anarcho_cfunctions_settings[anarcho_cfunctions-content]" ><?php echo htmlentities( $content ); ?></textarea>
|
84 |
+
</div>
|
85 |
+
</div>
|
86 |
+
|
87 |
+
<?php submit_button( __( 'Save Changes', MCFUNC_TEXT ), 'primary', 'submit', true ); ?>
|
88 |
+
|
89 |
+
<div id="support-addition" class="postbox">
|
90 |
+
<h3 class="title"><?php _e( 'Support', MCFUNC_TEXT ); ?></h3>
|
91 |
+
<div class="inside">
|
92 |
+
<p><?php _e( 'I\'m an independent developer, without a regular income, so every little contribution helps cover my costs and lets me spend more time building things for people like you to enjoy.', MCFUNC_TEXT ); ?></p>
|
93 |
+
<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=8A88KC7TFF6CS" target="_blank" class="additional-button paypal"><?php _e( 'Donate with PayPal', MCFUNC_TEXT ); ?></a>
|
94 |
+
<p><?php _e( 'Thanks for your support!', MCFUNC_TEXT ); ?></p>
|
95 |
+
</div>
|
96 |
+
</div>
|
97 |
+
|
98 |
+
</form>
|
99 |
+
|
100 |
+
</div>
|
101 |
+
</div>
|
102 |
+
</div>
|
103 |
+
<!-- END-FORM -->
|
104 |
+
<?php
|
inc/php/settings_page.php
DELETED
@@ -1,144 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
/**
|
4 |
-
* Prevent Direct Access
|
5 |
-
*
|
6 |
-
* @since 0.1
|
7 |
-
*/
|
8 |
-
defined('ABSPATH') or die("Restricted access!");
|
9 |
-
|
10 |
-
/**
|
11 |
-
* Render Settings Page
|
12 |
-
*
|
13 |
-
* @since 3.5
|
14 |
-
*/
|
15 |
-
function MCFunctions_render_submenu_page() {
|
16 |
-
|
17 |
-
// After settings updated
|
18 |
-
if ( isset( $_GET['settings-updated'] ) ) {
|
19 |
-
|
20 |
-
// Successful message
|
21 |
-
?>
|
22 |
-
<div id="message" class="updated">
|
23 |
-
<p><?php _e( 'Custom functions updated successfully.', MCFUNC_TEXT ); ?></p>
|
24 |
-
</div>
|
25 |
-
<?php
|
26 |
-
}
|
27 |
-
|
28 |
-
// Error message
|
29 |
-
$error = get_option( 'anarcho_cfunctions_error' );
|
30 |
-
if ( $error == '1' ) :
|
31 |
-
?>
|
32 |
-
<div id="message" class="error">
|
33 |
-
<p>
|
34 |
-
<?php _e( 'Sorry, but your code causes a "Fatal error", so it is not applied!', MCFUNC_TEXT ); ?><br/>
|
35 |
-
<?php _e( 'Please, check the code and try again.', MCFUNC_TEXT ); ?>
|
36 |
-
</p>
|
37 |
-
</div>
|
38 |
-
<?php
|
39 |
-
endif;
|
40 |
-
|
41 |
-
// Page
|
42 |
-
?>
|
43 |
-
<div class="wrap">
|
44 |
-
<h2>
|
45 |
-
<?php _e( 'My Custom Functions', MCFUNC_TEXT ); ?>
|
46 |
-
<br/>
|
47 |
-
<span>
|
48 |
-
<?php _e( 'by <a href="http://www.arthurgareginyan.com" target="_blank">Arthur Gareginyan</a>', MCFUNC_TEXT ); ?>
|
49 |
-
<span/>
|
50 |
-
</h2>
|
51 |
-
|
52 |
-
<div id="poststuff" class="metabox-holder has-right-sidebar">
|
53 |
-
|
54 |
-
<!-- SIDEBAR -->
|
55 |
-
<div class="inner-sidebar">
|
56 |
-
<div id="side-sortables" class="meta-box-sortabless ui-sortable">
|
57 |
-
|
58 |
-
<div id="about" class="postbox">
|
59 |
-
<h3 class="title"><?php _e( 'About', MCFUNC_TEXT ); ?></a></h3>
|
60 |
-
<div class="inside">
|
61 |
-
<p><?php _e( 'This plugin allows you to easily and safely add your custome functions (PHP code) to your website.', MCFUNC_TEXT ); ?></p>
|
62 |
-
</div>
|
63 |
-
</div>
|
64 |
-
|
65 |
-
<div id="using" class="postbox">
|
66 |
-
<h3 class="title"><?php _e( 'Using', MCFUNC_TEXT ); ?></a></h3>
|
67 |
-
<div class="inside">
|
68 |
-
<p><?php _e( 'To use, enter your custom functions, then click "Save Changes". It\'s that simple!', MCFUNC_TEXT ); ?></p>
|
69 |
-
</div>
|
70 |
-
</div>
|
71 |
-
|
72 |
-
<div id="help" class="postbox">
|
73 |
-
<h3 class="title"><?php _e( 'Help', MCFUNC_TEXT ); ?></h3>
|
74 |
-
<div class="inside">
|
75 |
-
<p><?php _e( 'Got something to say? Need help?', MCFUNC_TEXT ); ?></p>
|
76 |
-
<p><a href="mailto:arthurgareginyan@gmail.com?subject=My Custom Functions">arthurgareginyan@gmail.com</a></p>
|
77 |
-
</div>
|
78 |
-
</div>
|
79 |
-
|
80 |
-
<div id="upgrade" class="postbox">
|
81 |
-
<h3 class="title"><?php _e( 'Upgrade', MCFUNC_TEXT ); ?></h3>
|
82 |
-
<div class="inside">
|
83 |
-
<a href="https://www.arthurgareginyan.com/plugin-my-custom-functions-pro.html" target="_blank">
|
84 |
-
<img src="https://dl.dropboxusercontent.com/u/42808809/sale/pro-version.png" alt="PRO">
|
85 |
-
</a>
|
86 |
-
</div>
|
87 |
-
</div>
|
88 |
-
|
89 |
-
<div id="donate" class="postbox">
|
90 |
-
<h3 class="title"><?php _e( 'Donate', MCFUNC_TEXT ); ?></h3>
|
91 |
-
<div class="inside">
|
92 |
-
<p><?php _e( 'I\'m an independent developer, without a regular income, so every little contribution helps cover my costs and lets me spend more time building things for people like you to enjoy.', MCFUNC_TEXT ); ?></p>
|
93 |
-
<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=8A88KC7TFF6CS" target="_blank" rel="nofollow">
|
94 |
-
<img src="<?php echo plugins_url('../img/donate.png', __FILE__); ?>" alt="Make a donation">
|
95 |
-
</a>
|
96 |
-
<p><?php _e( 'Thanks for your support!', MCFUNC_TEXT ); ?></p>
|
97 |
-
</div>
|
98 |
-
</div>
|
99 |
-
|
100 |
-
</div>
|
101 |
-
</div>
|
102 |
-
<!-- END-SIDEBAR -->
|
103 |
-
|
104 |
-
<!-- FORM -->
|
105 |
-
<div class="has-sidebar sm-padded">
|
106 |
-
<div id="post-body-content" class="has-sidebar-content">
|
107 |
-
<div class="meta-box-sortabless">
|
108 |
-
|
109 |
-
<form name="anarcho_cfunctions-form" action="options.php" method="post" enctype="multipart/form-data">
|
110 |
-
<?php settings_fields( 'anarcho_cfunctions_settings_group' ); ?>
|
111 |
-
|
112 |
-
<?php
|
113 |
-
// Declare variables
|
114 |
-
$options = get_option( 'anarcho_cfunctions_settings' );
|
115 |
-
$content = isset( $options['anarcho_cfunctions-content'] ) && !empty( $options['anarcho_cfunctions-content'] ) ? $options['anarcho_cfunctions-content'] : '/* Enter Your Custom Functions Here */';
|
116 |
-
$enable = isset( $options['enable'] ) && !empty( $options['enable'] ) && $options['enable'] == "on" ? 'checked' : ' ';
|
117 |
-
?>
|
118 |
-
<div class="postbox">
|
119 |
-
<h3 class="title">
|
120 |
-
<label for="anarcho_cfunctions_settings[anarcho_cfunctions-content]" ><?php _e( 'Functions (PHP code)', MCFUNC_TEXT ); ?></label>
|
121 |
-
<div class="trigger">
|
122 |
-
<input type="checkbox" name="anarcho_cfunctions_settings[enable]" id="anarcho_cfunctions_settings[enable]" <?php echo $enable; ?> >
|
123 |
-
<label for="anarcho_cfunctions_settings[enable]"></label>
|
124 |
-
</div>
|
125 |
-
</h3>
|
126 |
-
<div class="inside">
|
127 |
-
<textarea name="anarcho_cfunctions_settings[anarcho_cfunctions-content]" id="anarcho_cfunctions_settings[anarcho_cfunctions-content]" ><?php echo htmlentities( $content ); ?></textarea>
|
128 |
-
</div>
|
129 |
-
</div>
|
130 |
-
|
131 |
-
<?php submit_button( __( 'Save Changes', MCFUNC_TEXT ), 'primary', 'submit', true ); ?>
|
132 |
-
|
133 |
-
</form>
|
134 |
-
|
135 |
-
</div>
|
136 |
-
</div>
|
137 |
-
</div>
|
138 |
-
<!-- END-FORM -->
|
139 |
-
|
140 |
-
</div>
|
141 |
-
|
142 |
-
</div>
|
143 |
-
<?php
|
144 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
inc/php/uninstall.php
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Prevent Direct Access
|
5 |
+
*
|
6 |
+
* @since 0.1
|
7 |
+
*/
|
8 |
+
defined('ABSPATH') or die("Restricted access!");
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Delete options on uninstall
|
12 |
+
*
|
13 |
+
* @since 0.1
|
14 |
+
*/
|
15 |
+
function MCFunctions_uninstall() {
|
16 |
+
delete_option( 'anarcho_cfunctions_settings' );
|
17 |
+
delete_option( 'anarcho_cfunctions_error' );
|
18 |
+
}
|
19 |
+
register_uninstall_hook( __FILE__, 'MCFunctions_uninstall' );
|
inc/php/version.php
ADDED
@@ -0,0 +1,70 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Prevent Direct Access
|
5 |
+
*
|
6 |
+
* @since 0.1
|
7 |
+
*/
|
8 |
+
defined('ABSPATH') or die("Restricted access!");
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Function for managing information about the version number of the plugin
|
12 |
+
*
|
13 |
+
* @since 4.0
|
14 |
+
*/
|
15 |
+
function MCFunctions_plugin_version_number() {
|
16 |
+
|
17 |
+
// Set variables:
|
18 |
+
// - Read the plugin service information from the database and put it into an array
|
19 |
+
// - Get the current plugin version number from the database
|
20 |
+
// - Get the new plugin version number from the global constant
|
21 |
+
$info = get_option( 'anarcho_cfunctions_service_info' );
|
22 |
+
$current_number = isset( $info['version'] ) && !empty( $info['version'] ) ? $info['version'] : '0';
|
23 |
+
$new_number = MCFUNC_VERSION;
|
24 |
+
|
25 |
+
// Call the upgrade function if the version number in the database is smaller than the 1.0
|
26 |
+
//if ( $current_number < '1.0' ) {
|
27 |
+
// MCFunctions_upgrade_1_0();
|
28 |
+
//}
|
29 |
+
|
30 |
+
// If the version number in the database is same as the new version number:
|
31 |
+
// - Reset the "old_version" marker in the database
|
32 |
+
// - Exit from this function
|
33 |
+
if ( $new_number == $current_number ) {
|
34 |
+
|
35 |
+
if ( $info['old_version'] == '1' ) {
|
36 |
+
|
37 |
+
$info['old_version'] = '0';
|
38 |
+
update_option( 'anarcho_cfunctions_service_info', $info );
|
39 |
+
|
40 |
+
}
|
41 |
+
|
42 |
+
return;
|
43 |
+
}
|
44 |
+
|
45 |
+
// If the version number in the database is smaller than the new version number:
|
46 |
+
// - Save the new version number to the database
|
47 |
+
// - Update the "old_version" marker in the database
|
48 |
+
// - Exit from this function
|
49 |
+
if ( $new_number > $current_number ) {
|
50 |
+
|
51 |
+
$info['version'] = $new_number;
|
52 |
+
$info['old_version'] = '0';
|
53 |
+
update_option( 'anarcho_cfunctions_service_info', $info );
|
54 |
+
|
55 |
+
return;
|
56 |
+
}
|
57 |
+
|
58 |
+
// If the version number in the database is greater than the new version number:
|
59 |
+
// - Save the "old_version" marker to the database
|
60 |
+
// - Exit from this function
|
61 |
+
if ( $new_number < $current_number ) {
|
62 |
+
|
63 |
+
$info['old_version'] = '1';
|
64 |
+
update_option( 'anarcho_cfunctions_service_info', $info );
|
65 |
+
|
66 |
+
return;
|
67 |
+
}
|
68 |
+
|
69 |
+
}
|
70 |
+
MCFunctions_plugin_version_number();
|
languages/Readme.txt
CHANGED
@@ -1,10 +1,11 @@
|
|
1 |
|
2 |
CONTRIBUTING YOUR TRANSLATION
|
3 |
|
|
|
4 |
This plugin is ready for translation.
|
5 |
|
6 |
If you want to help translate this plugin, please visit the [translation page](https://translate.wordpress.org/projects/wp-plugins/my-custom-functions), or use the POT file, that is included and placed in the "languages" folder, in order to create a translation files (*.po, *.mo). Just send the translation files (*.po, *.mo) to me at the arthurgareginyan@gmail.com and I will include the translation within the next plugin update.
|
7 |
|
8 |
Also you can use an existing PO file that placed in the "languages" folder, in order to make corrections.
|
9 |
|
10 |
-
Many of plugin users would be delighted if you share your translation with the community. Thanks for your contribution!
|
1 |
|
2 |
CONTRIBUTING YOUR TRANSLATION
|
3 |
|
4 |
+
|
5 |
This plugin is ready for translation.
|
6 |
|
7 |
If you want to help translate this plugin, please visit the [translation page](https://translate.wordpress.org/projects/wp-plugins/my-custom-functions), or use the POT file, that is included and placed in the "languages" folder, in order to create a translation files (*.po, *.mo). Just send the translation files (*.po, *.mo) to me at the arthurgareginyan@gmail.com and I will include the translation within the next plugin update.
|
8 |
|
9 |
Also you can use an existing PO file that placed in the "languages" folder, in order to make corrections.
|
10 |
|
11 |
+
Many of plugin users would be delighted if you share your translation with the community. Thanks for your contribution!
|
languages/my-custom-functions-es_ES.mo
CHANGED
Binary file
|
languages/my-custom-functions-es_ES.po
CHANGED
@@ -3,8 +3,8 @@
|
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
"Project-Id-Version: Plugins - My Custom Functions - Development Readme (trunk)\n"
|
6 |
-
"POT-Creation-Date:
|
7 |
-
"PO-Revision-Date:
|
8 |
"Last-Translator: \n"
|
9 |
"Language-Team: \n"
|
10 |
"Language: es\n"
|
@@ -13,696 +13,375 @@ msgstr ""
|
|
13 |
"Content-Transfer-Encoding: 8bit\n"
|
14 |
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
15 |
"X-Generator: Poedit 1.8.4\n"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
|
17 |
-
#: inc/php/
|
18 |
-
msgid "
|
19 |
-
msgstr ""
|
20 |
-
|
21 |
-
#: inc/php/settings_page.php:34
|
22 |
-
msgid "Sorry, but your code causes a \"Fatal error\", so it is not applied!"
|
23 |
msgstr ""
|
24 |
|
25 |
-
#: inc/php/
|
26 |
-
msgid "
|
27 |
-
msgstr ""
|
28 |
|
29 |
#. Plugin Name of the plugin/theme
|
30 |
-
#: inc/php/
|
31 |
msgid "My Custom Functions"
|
32 |
msgstr "My Custom Functions"
|
33 |
|
34 |
-
#: inc/php/
|
35 |
-
msgid "
|
36 |
-
msgstr "por <a href=“http://www.arthurgareginyan.com” target=“_blank”>Arthur Gareginyan</a>"
|
37 |
-
|
38 |
-
#: inc/php/settings_page.php:59
|
39 |
-
msgid "About"
|
40 |
-
msgstr "Acerca de"
|
41 |
-
|
42 |
-
#: inc/php/settings_page.php:61
|
43 |
-
msgid "This plugin allows you to easily and safely add your custome functions (PHP code) to your website."
|
44 |
msgstr ""
|
45 |
|
46 |
-
#: inc/php/
|
47 |
-
msgid "
|
48 |
-
msgstr "Uso"
|
49 |
-
|
50 |
-
#: inc/php/settings_page.php:68
|
51 |
-
msgid "To use, enter your custom functions, then click \"Save Changes\". It's that simple!"
|
52 |
msgstr ""
|
53 |
|
54 |
-
#: inc/php/
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
#: inc/php/settings_page.php:75
|
59 |
-
msgid "Got something to say? Need help?"
|
60 |
-
msgstr "¿Tienes algo que decir? ¿Necesitas ayuda?"
|
61 |
-
|
62 |
-
#: inc/php/settings_page.php:81
|
63 |
-
msgid "Upgrade"
|
64 |
msgstr ""
|
65 |
|
66 |
-
#: inc/php/
|
67 |
-
msgid "
|
68 |
-
msgstr "
|
69 |
|
70 |
-
#: inc/php/
|
71 |
-
msgid ""
|
72 |
-
"I'm an independent developer, without a regular income, so every little contribution helps cover my costs and lets me "
|
73 |
-
"spend more time building things for people like you to enjoy."
|
74 |
msgstr ""
|
75 |
-
"Soy un desarrollador independiente, sin ingresos fijos, por lo que cualquier contribución, por pequeña que sea, me ayuda "
|
76 |
-
"a cubrir mis gastos y me permite dedicar más tiempo para construir cosas que pueda disfrutar gente como tú."
|
77 |
|
78 |
-
#: inc/php/
|
79 |
-
msgid "
|
80 |
-
msgstr "
|
81 |
|
82 |
-
#: inc/php/
|
83 |
-
msgid "
|
84 |
msgstr ""
|
85 |
|
86 |
-
#: inc/php/
|
87 |
-
msgid "
|
88 |
-
msgstr "
|
89 |
|
90 |
-
#:
|
91 |
-
|
92 |
-
|
|
|
93 |
|
94 |
-
#:
|
95 |
-
msgid "
|
96 |
msgstr ""
|
97 |
|
98 |
-
|
99 |
-
msgid "
|
100 |
msgstr ""
|
101 |
|
102 |
-
|
103 |
-
msgid ""
|
104 |
-
"Easily and safely add your custome functions (PHP code) directly out of your WordPress Dashboard without need of an "
|
105 |
-
"external editor."
|
106 |
msgstr ""
|
107 |
|
108 |
-
|
109 |
-
msgid "
|
110 |
msgstr ""
|
111 |
|
112 |
-
|
113 |
-
msgid "
|
114 |
msgstr ""
|
115 |
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
#~ msgstr ""
|
120 |
-
#~ "Añade de forma fácil y segura tus funciones personalizadas (código PHP) directamente a tu Panel de Control de "
|
121 |
-
#~ "WordPress sin necesidad de un editor externo."
|
122 |
-
|
123 |
-
#~ msgid "<a href=\"https://www.arthurgareginyan.com/plugin-my-custom-functions-pro.html\">Premium Version</a>"
|
124 |
-
#~ msgstr "<a href=\"https://www.arthurgareginyan.com/plugin-my-custom-functions-pro.html\">Versión Premium</a>"
|
125 |
-
|
126 |
-
#~ msgid ""
|
127 |
-
#~ "Go to plugin folder (in <code>wp-content/plugins/my-custom-functions/</code>). Rename the \"<code>START</code>\" file "
|
128 |
-
#~ "to \"<code>STOP</code>\". Then you can go to plugin settings page and edit your entered custom code. After editing, "
|
129 |
-
#~ "just rename the \"<code>STOP</code>\" file which you written before to \"<code>START</code>\"."
|
130 |
-
#~ msgstr ""
|
131 |
-
#~ "Selecciona la carpeta del plugin (en <code>wp-content/plugins/my-custom-functions/</code>). Renombra el archivo "
|
132 |
-
#~ "\"<code>START</code>\" a \"<code>STOP</code>\". Luego dirígete a la página de ajustes del plugin y edita el código "
|
133 |
-
#~ "personalizado que ingresaste. Al terminar la edición, sólo renombra el archivo \"<code>STOP</code>\" que antes habías "
|
134 |
-
#~ "cambiado a \"<code>START</code>\"."
|
135 |
-
|
136 |
-
#~ msgid "A. Yes. But you need to do it properly, like this:"
|
137 |
-
#~ msgstr "R. Sí. Pero necesitas hacerlo de forma apropiada, como puedes ver aquí:"
|
138 |
-
|
139 |
-
#~ msgid "A. Just place your PHP code to the field and click \"Save Changes\". Example of PHP code:"
|
140 |
-
#~ msgstr "R. Sólo coloca tu código PHP en el campo y haz clic en \"Guardar Cambios\". Ejemplo de código PHP:"
|
141 |
-
|
142 |
-
#~ msgid "Q. Can I use HTML/CSS/JS code integrated in PHP code?"
|
143 |
-
#~ msgstr "P. ¿Puedo usar código HTML/CSS/JS integrado en el código PHP?"
|
144 |
-
|
145 |
-
#~ msgid "Q. How does it work?"
|
146 |
-
#~ msgstr "P. ¿Cómo funciona?"
|
147 |
-
|
148 |
-
#~ msgid "Log into Dashboard of your WordPress website."
|
149 |
-
#~ msgstr "Ingresa en el Panel de tu sitio de WordPress."
|
150 |
-
|
151 |
-
#~ msgid "<a href=\"https://www.arthurgareginyan.com/plugin-my-custom-functions-pro.html\">Get the premium version now!</a>"
|
152 |
-
#~ msgstr ""
|
153 |
-
#~ "<a href=\"https://www.arthurgareginyan.com/plugin-my-custom-functions-pro.html\">¡Obtener la versión premium ya!</a>"
|
154 |
-
|
155 |
-
#~ msgid "<strong>Pro Features</strong>"
|
156 |
-
#~ msgstr "<strong>Funciones Pro</strong>"
|
157 |
-
|
158 |
-
#~ msgid "<strong>Consider Going Pro For Additional Features!</strong>"
|
159 |
-
#~ msgstr "<strong>¡Considera actualizar a la versión PRO para disfrutar las funciones adicionales!</strong>"
|
160 |
-
|
161 |
-
#~ msgid "Well documented"
|
162 |
-
#~ msgstr "Bien documentado"
|
163 |
-
|
164 |
-
#~ msgid "Sidebar items can be collapsed or expanded"
|
165 |
-
#~ msgstr "Los elementos de la barra lateral se pueden cerrar o expandir"
|
166 |
-
|
167 |
-
#~ msgid "Button for collapse/expand the field with code"
|
168 |
-
#~ msgstr "Botón para cerrar/expandir el campo con código"
|
169 |
-
|
170 |
-
#~ msgid "Trigger for temporary disable the certain functions"
|
171 |
-
#~ msgstr "Activar para deshabilitar temporalmente ciertas funciones"
|
172 |
-
|
173 |
-
#~ msgid "Automatic backup of all functions to a file"
|
174 |
-
#~ msgstr "Respaldo automático de todas las funciones en un archivo"
|
175 |
-
|
176 |
-
#~ msgid "Unlimited number of functions"
|
177 |
-
#~ msgstr "Ilimitado número de funciones"
|
178 |
-
|
179 |
-
#~ msgid "Chinese-Taiwan (Thanks Gordon Yu)"
|
180 |
-
#~ msgstr "Chino-Taiwanés (Gracias a Gordon Yu)"
|
181 |
-
|
182 |
-
#~ msgid "Easy disable option for WSOD"
|
183 |
-
#~ msgstr "Fácil opción de deshabilitación para WSOD"
|
184 |
-
|
185 |
-
#~ msgid "Please keep in mind that not all translations are up to date. You are welcome to contribute!"
|
186 |
-
#~ msgstr "Ten presente que no todas las traducciones están actualizadas. ¡Tu colaboración será bien recibida!"
|
187 |
-
|
188 |
-
#~ msgid "English (default)"
|
189 |
-
#~ msgstr "Inglés (por defecto)"
|
190 |
-
|
191 |
-
#~ msgid "Russian"
|
192 |
-
#~ msgstr "Ruso"
|
193 |
-
|
194 |
-
#~ msgid "Editor allow for tab indentation"
|
195 |
-
#~ msgstr "Permitir en el editor la indentación por tabulador"
|
196 |
-
|
197 |
-
#~ msgid "Active line highlighting"
|
198 |
-
#~ msgstr "Activar resaltado de línea"
|
199 |
-
|
200 |
-
#~ msgid "Line numbering"
|
201 |
-
#~ msgstr "Numeración de línea"
|
202 |
-
|
203 |
-
#~ msgid "Responsive & Mobile optimized settings page"
|
204 |
-
#~ msgstr "Página de ajustes optimizados para Móviles"
|
205 |
-
|
206 |
-
#~ msgid "Translation"
|
207 |
-
#~ msgstr "Traducción"
|
208 |
-
|
209 |
-
#~ msgid "A. Here are a few of the most likely causes of the error message:"
|
210 |
-
#~ msgstr "R. Estas son algunas causas probables del mensaje de error:"
|
211 |
-
|
212 |
-
#~ msgid ""
|
213 |
-
#~ "You are trying to overwrite an existing function (of WordPress, theme, or plugin). Instead, use filters and hooks."
|
214 |
-
#~ msgstr ""
|
215 |
-
#~ "Estás tratando de sobreescribir una función existente (de WordPress, de tema o de plugin). Prueba usando filtros y "
|
216 |
-
#~ "ganchos."
|
217 |
-
|
218 |
-
#~ msgid ""
|
219 |
-
#~ "You have entered function with a name that is already occupied by another function. Use a unique name for your "
|
220 |
-
#~ "function."
|
221 |
-
#~ msgstr "Has ingresado una función cuyo nombre ya está ocupado por otra función. Usa un nombre único para cada función."
|
222 |
-
|
223 |
-
#~ msgid "You entered two functions with the same name. Use a unique names for your functions."
|
224 |
-
#~ msgstr "Has ingresado dos funciones con el mismo nombre. Usa nombres únicos para cada función."
|
225 |
-
|
226 |
-
#~ msgid "You make a syntax error in the code that you have entered. Check the syntax of your code and try again."
|
227 |
-
#~ msgstr "Tienes un error de sintaxis en el código que has introducido. Revisa la sintaxis de tu código y prueba de nuevo."
|
228 |
-
|
229 |
-
#~ msgid "Q. On the plugin settings page, an error message appears. What could be wrong?"
|
230 |
-
#~ msgstr "P. En la página de ajustes del plugin aparece un mensaje de error. ¿Qué puede estar fallando?"
|
231 |
-
|
232 |
-
#~ msgid ""
|
233 |
-
#~ "On the plugin page you find the PHP editor powered by CodeMirror. It have syntax highlighting and line numbering "
|
234 |
-
#~ "options. Also this editor support a tab indentation."
|
235 |
-
#~ msgstr ""
|
236 |
-
#~ "En la página del plugin encontrarás el editor de PHP proporcionado por CodeMirror. Habilita las opciones de resaltado "
|
237 |
-
#~ "de sintaxis y numeración de línea. Este editor también soporta indentación por tabulador."
|
238 |
-
|
239 |
-
#~ msgid ""
|
240 |
-
#~ "It's really useful in case of any theme update, because your custom PHP code would never be overwritten. Your custom "
|
241 |
-
#~ "PHP code will keep on working, no matter how many times you upgrade or switch your theme."
|
242 |
-
#~ msgstr ""
|
243 |
-
#~ "Es muy útil en caso de actualización de un tema, porque tu código PHP no será reescrito. Tu código PHP seguirá "
|
244 |
-
#~ "funcionando, sin importar el número de veces que actualices o cambies de tema."
|
245 |
-
|
246 |
-
#~ msgid "Multisite network support"
|
247 |
-
#~ msgstr "Soporte de red multisitio"
|
248 |
-
|
249 |
-
#~ msgid "Reload the settings page at same position after pushing the save button"
|
250 |
-
#~ msgstr "Recarga la página de ajustes en la misma posición después de presionar el botón de guardar"
|
251 |
-
|
252 |
-
#~ msgid "Checks the entered code for fatal errors (simple checks)"
|
253 |
-
#~ msgstr "Revisa si el código introducido produce errores fatales (revisión simple)"
|
254 |
-
|
255 |
-
#~ msgid ""
|
256 |
-
#~ "<a href=\"https://codemirror.net/\">CodeMirror</a> is an open-source project shared under the <a href=\"https://"
|
257 |
-
#~ "codemirror.net/LICENSE\">MIT license</a>."
|
258 |
-
#~ msgstr ""
|
259 |
-
#~ "<a href=\"https://codemirror.net/\">CodeMirror</a> es un proyecto de código abierto compartido bajo <a href=\"https://"
|
260 |
-
#~ "codemirror.net/LICENSE\">licencia del MIT</a>."
|
261 |
-
|
262 |
-
#~ msgid "<strong>Credits</strong>"
|
263 |
-
#~ msgstr "<strong>Créditos</strong>"
|
264 |
-
|
265 |
-
#~ msgid ""
|
266 |
-
#~ "A. Yes, any financial contributions are welcome! Just visit my website and click on the donate link, and thank you! <a "
|
267 |
-
#~ "href=\"http://www.arthurgareginyan.com/donate.html\">My website</a>"
|
268 |
-
#~ msgstr ""
|
269 |
-
#~ "R. Sí, ¡cualquier contribución financiera es bienvenida! Sólo visita mi sitio y haz clic en \"donar\". ¡Te lo "
|
270 |
-
#~ "agradezco! <a href=\"http://www.arthurgareginyan.com/donate.html\">Mi stio web</a>"
|
271 |
-
|
272 |
-
#~ msgid "A. Please send me email <a href=\"mailto:arthurgareginyan@gmail.com\">arthurgareginyan@gmail.com</a>."
|
273 |
-
#~ msgstr "R. Puedes enviarme un email <a href=\"mailto:arthurgareginyan@gmail.com\">arthurgareginyan@gmail.com</a>."
|
274 |
-
|
275 |
-
#~ msgid ""
|
276 |
-
#~ "A. As with every plugin, it's possible that things don't work. The most common reason for this is that the plugin has "
|
277 |
-
#~ "a conflict with another plugin you're using. It's impossible to tell what could be wrong exactly, but if you post a "
|
278 |
-
#~ "support request in the plugin's support forum on WordPress.org, I'd be happy to give it a look and try to help out. "
|
279 |
-
#~ "Please include as much information as possible, including a link to your website where the problem can be seen."
|
280 |
-
#~ msgstr ""
|
281 |
-
#~ "R. Al igual que con cualquier plugin, es posible que las cosas no funcionen. El motivo más común es que el plugin "
|
282 |
-
#~ "tenga un conflicto con otro plugin que estés usando. No puedo decirte exctatamente qué está fallanado, pero si me "
|
283 |
-
#~ "envias una solicitud en el foro de soporte del plugin en WordPress.org, estaré encantado de ayudarte. Por favor, "
|
284 |
-
#~ "remite la mayor cantidad de información posible, incluyendo un enlace al sitio web que presenta el problema."
|
285 |
-
|
286 |
-
#~ msgid "A. Absolutely not. This plugin is added/configured entirely from the website's Admin section."
|
287 |
-
#~ msgstr "R. Absolutamente no. Este plugin se añade y se configura totalmente desde la sección Admin del sitio web."
|
288 |
-
|
289 |
-
#~ msgid "Q. I love this plugin! Can I help somehow?"
|
290 |
-
#~ msgstr "P. ¡Me gusta este plugin! ¿Cómo puedo ayudar?"
|
291 |
-
|
292 |
-
#~ msgid "Q. It's not working. What could be wrong?"
|
293 |
-
#~ msgstr "P. No funciona. ¿Qué puede estar fallando?"
|
294 |
-
|
295 |
-
#~ msgid "Q. Does this plugin require modification to the theme?"
|
296 |
-
#~ msgstr "P. ¿Este plugin requiere alguna modificación del tema?"
|
297 |
-
|
298 |
-
#~ msgid ""
|
299 |
-
#~ "\"My Custom Functions\" is one of the personal software projects of <a href=\"http://www.arthurgareginyan.com\">Arthur "
|
300 |
-
#~ "Gareginyan</a>."
|
301 |
-
#~ msgstr ""
|
302 |
-
#~ "\"My Custom Functions\" es uno de los proyectos personales de software de <a href=\"http://www.arthurgareginyan.com"
|
303 |
-
#~ "\">Arthur Gareginyan</a>."
|
304 |
-
|
305 |
-
#~ msgid "<a href=\"http://www.arthurgareginyan.com\">Developer Website</a>"
|
306 |
-
#~ msgstr "<a href=\"http://www.arthurgareginyan.com\">Sitio web del desarrollador</a>"
|
307 |
-
|
308 |
-
#~ msgid "<strong>Links</strong>"
|
309 |
-
#~ msgstr "<strong>Enlaces</strong>"
|
310 |
-
|
311 |
-
#~ msgid ""
|
312 |
-
#~ "This plugin is licensed under the <a href=\"http://www.gnu.org/licenses/gpl-3.0.html\">GNU General Public License, "
|
313 |
-
#~ "version 3 (GPLv3)</a>\n"
|
314 |
-
#~ "and is distributed free of charge.\n"
|
315 |
-
#~ "Commercial licensing (e.g. for projects that can’t use an open-source license) is available upon request."
|
316 |
-
#~ msgstr ""
|
317 |
-
#~ "Este plugin está bajo licencia <a href=\"http://www.gnu.org/licenses/gpl-3.0.html\">GNU General Public License, "
|
318 |
-
#~ "version 3 (GPLv3)</a> y se distribuye sin costo alguno.\n"
|
319 |
-
#~ "Para licencias comerciales (por ejemplo, proyectos que no pueden usar una licencia de código abierto) está disponible "
|
320 |
-
#~ "por solicitud."
|
321 |
-
|
322 |
-
#~ msgid "<strong>License</strong>"
|
323 |
-
#~ msgstr "<strong>Licencia</strong>"
|
324 |
-
|
325 |
-
#~ msgid "<a href=\"https://github.com/ArthurGareginyan/my-custom-functions\">Dedicated Plugin Page on GitHub</a>"
|
326 |
-
#~ msgstr "<a href=\"https://github.com/ArthurGareginyan/my-custom-functions\">Página en GitHub dedicada al plugin</a>"
|
327 |
-
|
328 |
-
#~ msgid "Other Notes"
|
329 |
-
#~ msgstr "Otras acotaciones"
|
330 |
-
|
331 |
-
#~ msgid ""
|
332 |
-
#~ "A. Please visit <a href=\"https://github.com/ArthurGareginyan/my-custom-functions\">Dedicated Plugin Page on GitHub</"
|
333 |
-
#~ "a> and report."
|
334 |
-
#~ msgstr ""
|
335 |
-
#~ "P. Por favor visita <a href=\"https://github.com/ArthurGareginyan/my-custom-functions\">La página en GitHub dedicada "
|
336 |
-
#~ "al plugin</a> y haz un reporte."
|
337 |
-
|
338 |
-
#~ msgid ""
|
339 |
-
#~ "This plugin stored you entered code in the Database of your website. For getting your code, you also can go to the "
|
340 |
-
#~ "<code>Database</code> —> Table \"<code>wp_options</code>\" —> Option \"<code>anarcho_cfunctions_settings</code>"
|
341 |
-
#~ "\" —> \"<code>option_value</code>\"."
|
342 |
-
#~ msgstr ""
|
343 |
-
#~ "Este plugin almacena el código que hayas ingresado en la Base de datos de tu sitio web. Para obtener tu código, "
|
344 |
-
#~ "también puedes ir a <code>Database</code> —> Table \"<code>wp_options</code>\" —> Option "
|
345 |
-
#~ "\"<code>anarcho_cfunctions_settings</code>\" —> \"<code>option_value</code>\"."
|
346 |
-
|
347 |
-
#~ msgid ""
|
348 |
-
#~ "A. This plugin is not perfect, so there are times when the entered custom code causes the error and white screen "
|
349 |
-
#~ "(WSOD). If this happened with you then do the following."
|
350 |
-
#~ msgstr ""
|
351 |
-
#~ "R. Este plugin no es perfecto, por tanto existe la posibilidad de que el código personalizado que ingresasate cause "
|
352 |
-
#~ "error y una pantalla en blanco (WSOD). Si te ocurre esto, haz lo siguiente."
|
353 |
-
|
354 |
-
#~ msgid ""
|
355 |
-
#~ "A. Yes. But If your language is not available then you can make one. This plugin is ready for translation. The <code>."
|
356 |
-
#~ "pot</code> file is included and placed in \"<code>languages</code>\" folder. Many of plugin users would be delighted "
|
357 |
-
#~ "if you shared your translation with the community. Just send the translation files (<code>*.po, *.mo</code>) to me at "
|
358 |
-
#~ "the arthurgareginyan@gmail.com and I will include the translation within the next plugin update."
|
359 |
-
#~ msgstr ""
|
360 |
-
#~ "R. Sí. Pero si tu idioma no está disponible, puedes hacerlo. Este plugin está listo para traducción. El archivo <code>."
|
361 |
-
#~ "pot</code> está en la carpeta \"<code>languages</code>\". Muchos usuarios estarían encantados de que compartas tu "
|
362 |
-
#~ "traducción con la comunidad. Sólo envíame los archivos de traducción (<code>*.po, *.mo</code>) a "
|
363 |
-
#~ "arthurgareginyan@gmail.com y yo incluiré la traducción en la próxima actualización del plugin."
|
364 |
-
|
365 |
-
#~ msgid "A. I don't limit the number of characters."
|
366 |
-
#~ msgstr "R. No se limita el número de caracteres."
|
367 |
-
|
368 |
-
#~ msgid "A. Sorry, this plugin is available for use only on self-hosted (WordPress.org) websites."
|
369 |
-
#~ msgstr ""
|
370 |
-
#~ "R. Lo siento, este plugin está disponible sólo para sitios web hechos en WordPress.org que tengan hospedaje propio."
|
371 |
-
|
372 |
-
#~ msgid "Q. Where to share any ideas or suggestions to make the plugin better?"
|
373 |
-
#~ msgstr "P: ¿Dónde puedo compartir ideas o sugerencias para mejorar este plugin?"
|
374 |
-
|
375 |
-
#~ msgid "Q. Where to report bug if found?"
|
376 |
-
#~ msgstr "P. ¿Dónde puedo reportar un error que haya encontrado?"
|
377 |
-
|
378 |
-
#~ msgid "Q. What to do if this plugin caused the white screen?"
|
379 |
-
#~ msgstr "P: ¿Qué hago si este plugin causa una pantalla en blanco?"
|
380 |
-
|
381 |
-
#~ msgid "Q. Can I use this plugin on my language?"
|
382 |
-
#~ msgstr "P. ¿Puedo usar este plugin en mi idioma?"
|
383 |
-
|
384 |
-
#~ msgid "Q. How much of PHP code (characters) I can enter in the text field?"
|
385 |
-
#~ msgstr "P: ¿Cuántos caracteres de código PHP puedo entrar en el campo de texto?"
|
386 |
-
|
387 |
-
#~ msgid "Q. Will this plugin work on my WordPress.COM website?"
|
388 |
-
#~ msgstr "P. ¿Este plugin funcionará en mi sitio web hecho en WordPress.com?"
|
389 |
-
|
390 |
-
#~ msgid ""
|
391 |
-
#~ "<a href=\"http://codex.wordpress.org/Managing_Plugins#Installing_Plugins\" title=\"WordPress Codex: Installing Plugins"
|
392 |
-
#~ "\">More help installing Plugins</a>"
|
393 |
-
#~ msgstr ""
|
394 |
-
#~ "<a href=\"http://codex.wordpress.org/Managing_Plugins#Installing_Plugins\" title=\"WordPress Codex: Installing Plugins"
|
395 |
-
#~ "\">Más ayuda sobre instalación de plugins</a>"
|
396 |
-
|
397 |
-
#~ msgid ""
|
398 |
-
#~ "After installation, a \"<code>Custom Functions</code>\" menu item will appear in the \"<code>Appearance</code>\" "
|
399 |
-
#~ "section. Click on this in order to view plugin's administration page."
|
400 |
-
#~ msgstr ""
|
401 |
-
#~ "Después de la instalación, aparecerá una opción de menú \"<code>Custom Functions</code>\" en la sección "
|
402 |
-
#~ "\"<code>Appearance</code>\". Haz clic para entrar en la página de configuración del plugin."
|
403 |
-
|
404 |
-
#~ msgid "Manual via FTP:"
|
405 |
-
#~ msgstr "Manual vía FTP:"
|
406 |
-
|
407 |
-
#~ msgid "Automatically via WordPress:"
|
408 |
-
#~ msgstr "Automáticamente vía WordPress:"
|
409 |
-
|
410 |
-
#~ msgid "Install \"My Custom Functions\" just as you would any other WordPress Plugin."
|
411 |
-
#~ msgstr "Instala \"My Custom Functions\" como lo haces con cualquier plugin de WordPress."
|
412 |
-
|
413 |
-
#~ msgid "Upload the unzipped catalog to your website's plugin directory (<code>/wp-content/plugins/</code>)."
|
414 |
-
#~ msgstr "Sube el catálogo descomprimido al directorio de plugins de tu sitio web (<code>/wp-content/plugins/</code>)."
|
415 |
-
|
416 |
-
#~ msgid "Unzip the ZIP file."
|
417 |
-
#~ msgstr "Descomprime el archivo ZIP."
|
418 |
-
|
419 |
-
#~ msgid "Download a copy (ZIP file) of this plugin from WordPress.org."
|
420 |
-
#~ msgstr "Descarga una copia (el archivo ZIP) de este plugin desde WordPress.org."
|
421 |
-
|
422 |
-
#~ msgid "Activate this plugin through the \"<code>Plugins</code>\" tab."
|
423 |
-
#~ msgstr "Activa este plugin desde la pestaña \"<code>Plugins</code>\"."
|
424 |
-
|
425 |
-
#~ msgid "Find this plugin and click install."
|
426 |
-
#~ msgstr "Busca el plugin y haz clic en Install."
|
427 |
-
|
428 |
-
#~ msgid "Go to \"<code>Plugins</code>\" —> \"<code>Add New</code>\"."
|
429 |
-
#~ msgstr "Dirígete a \"<code>Plugins</code>\" —> \"<code>Add New</code>\"."
|
430 |
-
|
431 |
-
#~ msgid "<strong>Coming soon:</strong>"
|
432 |
-
#~ msgstr "<strong>Pronto:</strong>"
|
433 |
-
|
434 |
-
#~ msgid "This is a simple and perfect tool to use as your site's functionality plugin."
|
435 |
-
#~ msgstr "Esta es una herramienta sencilla e ideal para usar como plugin de funciones en tu sitio."
|
436 |
-
|
437 |
-
#~ msgid ""
|
438 |
-
#~ "It's purpose is to provide a familiar experience to WordPress users. No need anymore editing the functions.php file of "
|
439 |
-
#~ "your theme. Just add your PHP code in the field on the plugin page and this plugin will do the rest for you."
|
440 |
-
#~ msgstr ""
|
441 |
-
#~ "Su propósito es ofrecer una experiencia familiar a los usuarios de WordPress. Ya no tendrás que editar el archivo "
|
442 |
-
#~ "functions.php de tu tema. Sólo añade el código PHP en el campo correspondiente en la página de configuración del "
|
443 |
-
#~ "plugin y él hará el resto por ti."
|
444 |
-
|
445 |
-
#~ msgid ""
|
446 |
-
#~ "An easy to use WordPress plugin that gives you the ability to easily and safely add your custome functions (PHP code) "
|
447 |
-
#~ "for execution in WordPress environment directly out of your WordPress Dashboard and without any need of an external "
|
448 |
-
#~ "editor."
|
449 |
-
#~ msgstr ""
|
450 |
-
#~ "Un plugin de WordPress fácil de usar que te permite añadir de forma segura tus funciones personalizadas (en código "
|
451 |
-
#~ "PHP) para ejecutarlas en el ambiente de WordPress directamente desde tu Panel de Control en WordPress, sin necesidad "
|
452 |
-
#~ "de un editor externo."
|
453 |
-
|
454 |
-
#~ msgid "Trigger for temporary disable the custom functions"
|
455 |
-
#~ msgstr "Activar para deshabilitar temporalmente las funciones personalizadas"
|
456 |
-
|
457 |
-
#~ msgid "Ready for translation (POT file included)"
|
458 |
-
#~ msgstr "Listo para traducción (archivo POT incluido)"
|
459 |
-
|
460 |
-
#~ msgid "Syntax highlighting (by CodeMirror)"
|
461 |
-
#~ msgstr "Resaltado de sintaxis (por CodeMirror)"
|
462 |
-
|
463 |
-
#~ msgid "Features"
|
464 |
-
#~ msgstr "Funciones"
|
465 |
-
|
466 |
-
#~ msgid "«Fatal error» message."
|
467 |
-
#~ msgstr "Mensaje «Error fatal»."
|
468 |
-
|
469 |
-
#~ msgid "Success message."
|
470 |
-
#~ msgstr "Mensaje de ejecución exitosa."
|
471 |
-
|
472 |
-
#~ msgid "Plugin page with custom code added."
|
473 |
-
#~ msgstr "Página del plugin con el código personalizado añadido."
|
474 |
-
|
475 |
-
#~ msgid "Plugin page."
|
476 |
-
#~ msgstr "Página del plugin."
|
477 |
-
|
478 |
-
#~ msgid "Russian translation improved."
|
479 |
-
#~ msgstr "Traducción al ruso mejorada."
|
480 |
-
|
481 |
-
#~ msgid "Added global constant for plugin text-domain."
|
482 |
-
#~ msgstr "Inlcuye una constante global para el dominio de texto del plugin."
|
483 |
-
|
484 |
-
#~ msgid ""
|
485 |
-
#~ "User's PHP code displayed on settings page are escaped for output by <code>htmlentities()</code> instead of "
|
486 |
-
#~ "<code>esc_attr()</code> for prevent converting characters to HTML entities."
|
487 |
-
#~ msgstr ""
|
488 |
-
#~ "El código PHP del usuario mostrado en la página de ajustes se remite en la salida de <code>htmlentities()</code> en "
|
489 |
-
#~ "vez de <code>esc_attr()</code> para prevenir que los caracteres se conviertan en entidades HTML."
|
490 |
-
|
491 |
-
#~ msgid "Added the Readme.txt file for translation contribution."
|
492 |
-
#~ msgstr "Archivo Readme.txt incluido para contribuciones de traducción."
|
493 |
-
|
494 |
-
#~ msgid "The Readme.txt file improved."
|
495 |
-
#~ msgstr "El archivo Readme.txt mejorado."
|
496 |
-
|
497 |
-
#~ msgid "On the settings page added an advertisement about the PRO version of this plugin."
|
498 |
-
#~ msgstr "En la página de ajustes se incluye una publicidad sobre la versión PRO de este plugin."
|
499 |
-
|
500 |
-
#~ msgid "Style sheet of settings page improved."
|
501 |
-
#~ msgstr "Página de Hoja de estilos mejorada."
|
502 |
-
|
503 |
-
#~ msgid "Added option for easy disable the custom code for cases of WSOD."
|
504 |
-
#~ msgstr "Incluye una opción de fácil uso para deshabilitar el código personalizado en caso de WSOD."
|
505 |
-
|
506 |
-
#~ msgid "Added constant for storing the plugin version number."
|
507 |
-
#~ msgstr "Añade una constante para almacenar el número de versión del plugin."
|
508 |
-
|
509 |
-
#~ msgid "Added prefixes to the stylesheet and script names when using wp_enqueue_style() and wp_enqueue_script()."
|
510 |
-
#~ msgstr ""
|
511 |
-
#~ "Prefijos agregados a los nombres de hojas de estilo y de scripts cuando use wp_enqueue_style() and wp_enqueue_script()."
|
512 |
-
|
513 |
-
#~ msgid "Chinese (Taiwan) translation updated."
|
514 |
-
#~ msgstr "Traducción a chino (Taiwan) actualizada."
|
515 |
|
516 |
-
|
517 |
-
|
|
|
518 |
|
519 |
-
|
520 |
-
|
|
|
521 |
|
522 |
-
|
523 |
-
|
|
|
524 |
|
525 |
-
|
526 |
-
|
|
|
527 |
|
528 |
-
|
529 |
-
|
|
|
530 |
|
531 |
-
|
532 |
-
|
|
|
533 |
|
534 |
-
|
535 |
-
|
|
|
536 |
|
537 |
-
|
538 |
-
|
539 |
-
|
540 |
-
#~ msgstr ""
|
541 |
-
#~ "Función añadida para revisar nombres de función duplicados. Compara los nombres de todas las funciones (internas y del "
|
542 |
-
#~ "usuario). Se agregó la función _duplicates."
|
543 |
|
544 |
-
|
545 |
-
|
|
|
546 |
|
547 |
-
|
548 |
-
|
|
|
549 |
|
550 |
-
|
551 |
-
|
|
|
552 |
|
553 |
-
|
554 |
-
|
|
|
555 |
|
556 |
-
|
557 |
-
|
|
|
558 |
|
559 |
-
|
560 |
-
|
|
|
561 |
|
562 |
-
|
563 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
564 |
|
565 |
-
|
566 |
-
|
|
|
567 |
|
568 |
-
|
569 |
-
|
|
|
|
|
|
|
570 |
|
571 |
-
|
572 |
-
|
|
|
573 |
|
574 |
-
|
575 |
-
|
|
|
576 |
|
577 |
-
|
578 |
-
|
|
|
579 |
|
580 |
-
|
581 |
-
|
|
|
582 |
|
583 |
-
|
584 |
-
|
|
|
585 |
|
586 |
-
|
587 |
-
|
|
|
588 |
|
589 |
-
|
590 |
-
|
|
|
591 |
|
592 |
-
|
593 |
-
|
|
|
594 |
|
595 |
-
|
596 |
-
|
|
|
|
|
|
|
597 |
|
598 |
-
|
599 |
-
|
|
|
|
|
600 |
|
601 |
-
|
602 |
-
|
|
|
603 |
|
604 |
-
|
605 |
-
|
|
|
606 |
|
607 |
-
|
608 |
-
|
|
|
609 |
|
610 |
-
|
611 |
-
|
|
|
|
|
|
|
612 |
|
613 |
-
|
614 |
-
|
|
|
615 |
|
616 |
-
|
617 |
-
|
|
|
|
|
|
|
|
|
618 |
|
619 |
-
|
620 |
-
|
|
|
|
|
|
|
|
|
621 |
|
622 |
-
|
623 |
-
|
|
|
624 |
|
625 |
-
|
626 |
-
|
|
|
|
|
|
|
|
|
627 |
|
628 |
-
|
629 |
-
|
|
|
|
|
|
|
630 |
|
631 |
-
|
632 |
-
|
|
|
633 |
|
634 |
-
|
635 |
-
|
|
|
636 |
|
637 |
-
|
638 |
-
|
|
|
639 |
|
640 |
-
|
641 |
-
|
|
|
|
|
|
|
|
|
642 |
|
643 |
-
|
644 |
-
|
|
|
645 |
|
646 |
-
|
647 |
-
|
|
|
|
|
648 |
|
649 |
-
|
650 |
-
|
|
|
651 |
|
652 |
-
|
653 |
-
|
|
|
|
|
654 |
|
655 |
-
|
656 |
-
|
|
|
657 |
|
658 |
-
|
659 |
-
|
|
|
|
|
|
|
660 |
|
661 |
-
|
662 |
-
|
|
|
663 |
|
664 |
-
|
665 |
-
|
|
|
666 |
|
667 |
-
|
668 |
-
|
|
|
669 |
|
670 |
-
|
671 |
-
|
|
|
|
|
|
|
|
|
|
|
672 |
|
673 |
-
|
674 |
-
|
|
|
675 |
|
676 |
-
|
677 |
-
|
|
|
678 |
|
679 |
-
|
680 |
-
|
|
|
681 |
|
682 |
-
|
683 |
-
|
|
|
684 |
|
685 |
-
|
686 |
-
|
|
|
687 |
|
688 |
-
|
689 |
-
|
690 |
-
|
691 |
|
692 |
-
|
693 |
-
|
|
|
694 |
|
695 |
-
|
696 |
-
|
|
|
|
|
|
|
697 |
|
698 |
-
|
699 |
-
|
|
|
700 |
|
701 |
-
|
702 |
-
|
|
|
703 |
|
704 |
-
#~ msgid "
|
705 |
-
#~ msgstr "
|
706 |
|
707 |
-
#~ msgid "
|
708 |
-
#~ msgstr "
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
"Project-Id-Version: Plugins - My Custom Functions - Development Readme (trunk)\n"
|
6 |
+
"POT-Creation-Date: 2017-05-07 13:23+0300\n"
|
7 |
+
"PO-Revision-Date: 2017-05-07 13:23+0300\n"
|
8 |
"Last-Translator: \n"
|
9 |
"Language-Team: \n"
|
10 |
"Language: es\n"
|
13 |
"Content-Transfer-Encoding: 8bit\n"
|
14 |
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
15 |
"X-Generator: Poedit 1.8.4\n"
|
16 |
+
"X-Poedit-Basepath: ..\n"
|
17 |
+
"X-Poedit-WPHeader: my-custom-functions.php\n"
|
18 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
19 |
+
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;"
|
20 |
+
"esc_html_e;esc_html_x:1,2c;_n_noop:1,2;_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
|
21 |
+
"X-Poedit-SearchPath-0: .\n"
|
22 |
+
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
23 |
+
|
24 |
+
#: inc/php/core.php:31
|
25 |
+
msgid "Settings"
|
26 |
+
msgstr "Ajustes"
|
27 |
|
28 |
+
#: inc/php/core.php:43 inc/php/core.php:60
|
29 |
+
msgid "Upgrade to PRO"
|
|
|
|
|
|
|
|
|
30 |
msgstr ""
|
31 |
|
32 |
+
#: inc/php/core.php:59
|
33 |
+
msgid "Donate"
|
34 |
+
msgstr "Hacer una donación"
|
35 |
|
36 |
#. Plugin Name of the plugin/theme
|
37 |
+
#: inc/php/core.php:75 inc/php/page.php:27
|
38 |
msgid "My Custom Functions"
|
39 |
msgstr "My Custom Functions"
|
40 |
|
41 |
+
#: inc/php/core.php:75
|
42 |
+
msgid "Custom Functions"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
msgstr ""
|
44 |
|
45 |
+
#: inc/php/messages.php:30
|
46 |
+
msgid "Hello. I'm Arthur, the author of this plugin."
|
|
|
|
|
|
|
|
|
47 |
msgstr ""
|
48 |
|
49 |
+
#: inc/php/messages.php:32
|
50 |
+
#, php-format
|
51 |
+
msgid "Thank you for installing my plugin! I hope you will love it %s"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
52 |
msgstr ""
|
53 |
|
54 |
+
#: inc/php/messages.php:67
|
55 |
+
msgid "You have installed an old version of this plugin."
|
56 |
+
msgstr ""
|
57 |
|
58 |
+
#: inc/php/messages.php:68
|
59 |
+
msgid "Please update the plugin to the latest version, and all will be fine."
|
|
|
|
|
60 |
msgstr ""
|
|
|
|
|
61 |
|
62 |
+
#: inc/php/messages.php:92
|
63 |
+
msgid "Custom functions updated successfully."
|
64 |
+
msgstr ""
|
65 |
|
66 |
+
#: inc/php/messages.php:110
|
67 |
+
msgid "Sorry, but your code causes a \"Fatal error\", so it is not applied!"
|
68 |
msgstr ""
|
69 |
|
70 |
+
#: inc/php/messages.php:111
|
71 |
+
msgid "Please, check the code and try again."
|
72 |
+
msgstr ""
|
73 |
|
74 |
+
#: inc/php/page.php:30
|
75 |
+
#, php-format
|
76 |
+
msgid "by %s Arthur Gareginyan %s"
|
77 |
+
msgstr "por %s Arthur Gareginyan %s"
|
78 |
|
79 |
+
#: inc/php/page.php:42
|
80 |
+
msgid "Main"
|
81 |
msgstr ""
|
82 |
|
83 |
+
#: inc/php/page.php:43 inc/php/page.php:63
|
84 |
+
msgid "Usage"
|
85 |
msgstr ""
|
86 |
|
87 |
+
#: inc/php/page.php:44
|
88 |
+
msgid "F.A.Q."
|
|
|
|
|
89 |
msgstr ""
|
90 |
|
91 |
+
#: inc/php/page.php:45 inc/php/page.php:197
|
92 |
+
msgid "Author"
|
93 |
msgstr ""
|
94 |
|
95 |
+
#: inc/php/page.php:46 inc/php/page.php:206 inc/php/settings.php:37 inc/php/settings.php:90
|
96 |
+
msgid "Support"
|
97 |
msgstr ""
|
98 |
|
99 |
+
#: inc/php/page.php:47
|
100 |
+
msgid "Family"
|
101 |
+
msgstr ""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
102 |
|
103 |
+
#: inc/php/page.php:65
|
104 |
+
msgid "To add your custom functions (the PHP code) to your website, simply follow these steps:"
|
105 |
+
msgstr ""
|
106 |
|
107 |
+
#: inc/php/page.php:67
|
108 |
+
msgid "Go to the \"Main\" tab."
|
109 |
+
msgstr ""
|
110 |
|
111 |
+
#: inc/php/page.php:68
|
112 |
+
msgid "Add your PHP code to the field, switch the toggle to the \"ON\" position and click the \"Save Changes\" button."
|
113 |
+
msgstr ""
|
114 |
|
115 |
+
#: inc/php/page.php:69
|
116 |
+
msgid "Example of PHP code:"
|
117 |
+
msgstr ""
|
118 |
|
119 |
+
#: inc/php/page.php:75 inc/php/page.php:76 inc/php/page.php:80
|
120 |
+
msgid "Note!"
|
121 |
+
msgstr ""
|
122 |
|
123 |
+
#: inc/php/page.php:75
|
124 |
+
msgid "Please do not wrap your PHP code in the <code><?php</code>...<code>?></code> HTML tags."
|
125 |
+
msgstr ""
|
126 |
|
127 |
+
#: inc/php/page.php:76
|
128 |
+
msgid "Before use, please read the instructions on the F.A.Q. tab on what to do in case of a website crash."
|
129 |
+
msgstr ""
|
130 |
|
131 |
+
#: inc/php/page.php:78
|
132 |
+
msgid "Enjoy the result of applying your PHP code."
|
133 |
+
msgstr ""
|
|
|
|
|
|
|
134 |
|
135 |
+
#: inc/php/page.php:78
|
136 |
+
msgid "It's that simple!"
|
137 |
+
msgstr ""
|
138 |
|
139 |
+
#: inc/php/page.php:80
|
140 |
+
msgid "If you want more options then tell me and I will be happy to add it."
|
141 |
+
msgstr ""
|
142 |
|
143 |
+
#: inc/php/page.php:89
|
144 |
+
msgid "Frequently Asked Questions"
|
145 |
+
msgstr ""
|
146 |
|
147 |
+
#: inc/php/page.php:111
|
148 |
+
msgid "Will this plugin work on my WordPress.COM website?"
|
149 |
+
msgstr ""
|
150 |
|
151 |
+
#: inc/php/page.php:112
|
152 |
+
msgid "Sorry, this plugin is available for use only on self-hosted (WordPress.ORG) websites."
|
153 |
+
msgstr ""
|
154 |
|
155 |
+
#: inc/php/page.php:114
|
156 |
+
msgid "Can I use this plugin on my language?"
|
157 |
+
msgstr ""
|
158 |
|
159 |
+
#: inc/php/page.php:116
|
160 |
+
#, php-format
|
161 |
+
msgid ""
|
162 |
+
"Yes. But If your language is not available then you can make one. This plugin is ready for translation. The<code>.pot</"
|
163 |
+
"code>file is included and placed in the <code>languages</code> folder. Many of plugin users would be delighted if you "
|
164 |
+
"shared your translation with the community. Just send the translation files (<code>*.po, *.mo</code>) to me at the %s and "
|
165 |
+
"I will include the translation within the next plugin update."
|
166 |
+
msgstr ""
|
167 |
|
168 |
+
#: inc/php/page.php:121
|
169 |
+
msgid "How does it work?"
|
170 |
+
msgstr ""
|
171 |
|
172 |
+
#: inc/php/page.php:122
|
173 |
+
msgid ""
|
174 |
+
"On the \"Settings\" tab, add your PHP code to the field, switch the toggle to the \"ON\" position and click the \"Save "
|
175 |
+
"Changes\" button. Enjoy the result of applying your PHP code. It's that simple!"
|
176 |
+
msgstr ""
|
177 |
|
178 |
+
#: inc/php/page.php:124
|
179 |
+
msgid "Can I use HTML/CSS/JS code integrated in PHP code?"
|
180 |
+
msgstr ""
|
181 |
|
182 |
+
#: inc/php/page.php:125
|
183 |
+
msgid "Yes. But you need to do it properly, like this:"
|
184 |
+
msgstr ""
|
185 |
|
186 |
+
#: inc/php/page.php:135
|
187 |
+
msgid "How much of PHP code (characters) I can enter in the text field?"
|
188 |
+
msgstr ""
|
189 |
|
190 |
+
#: inc/php/page.php:136
|
191 |
+
msgid "I don't limit the number of characters."
|
192 |
+
msgstr ""
|
193 |
|
194 |
+
#: inc/php/page.php:138
|
195 |
+
msgid "On the plugin settings page, an error message appears. What could be wrong?"
|
196 |
+
msgstr ""
|
197 |
|
198 |
+
#: inc/php/page.php:139
|
199 |
+
msgid "Here are a few of the most likely causes of the error message:"
|
200 |
+
msgstr ""
|
201 |
|
202 |
+
#: inc/php/page.php:140
|
203 |
+
msgid "1. You make a syntax error in the code that you have entered. Check the syntax of your code and try again."
|
204 |
+
msgstr ""
|
205 |
|
206 |
+
#: inc/php/page.php:141
|
207 |
+
msgid "2. You entered two functions with the same name. Use a unique names for your functions."
|
208 |
+
msgstr ""
|
209 |
|
210 |
+
#: inc/php/page.php:142
|
211 |
+
msgid ""
|
212 |
+
"3. You have entered function with a name that is already occupied by another function. Use a unique name for your "
|
213 |
+
"function."
|
214 |
+
msgstr ""
|
215 |
|
216 |
+
#: inc/php/page.php:143
|
217 |
+
msgid ""
|
218 |
+
"4. You are trying to overwrite an existing function (of WordPress, theme, or plugin). Instead, use filters and hooks."
|
219 |
+
msgstr ""
|
220 |
|
221 |
+
#: inc/php/page.php:145
|
222 |
+
msgid "Does this plugin requires any modification of the theme?"
|
223 |
+
msgstr ""
|
224 |
|
225 |
+
#: inc/php/page.php:146
|
226 |
+
msgid "Absolutely not. This plugin is configurable entirely from the plugin settings page."
|
227 |
+
msgstr ""
|
228 |
|
229 |
+
#: inc/php/page.php:148
|
230 |
+
msgid "Does this require any knowledge of HTML or CSS?"
|
231 |
+
msgstr ""
|
232 |
|
233 |
+
#: inc/php/page.php:149
|
234 |
+
msgid ""
|
235 |
+
"This plugin can be configured with no knowledge of HTML or CSS, using an easy-to-use plugin settings page. But you need "
|
236 |
+
"to know the HTML or CSS in order to add/remove/modify the HTML or CSS code by using this plugin."
|
237 |
+
msgstr ""
|
238 |
|
239 |
+
#: inc/php/page.php:151
|
240 |
+
msgid "It's not working. What could be wrong?"
|
241 |
+
msgstr ""
|
242 |
|
243 |
+
#: inc/php/page.php:152
|
244 |
+
msgid ""
|
245 |
+
"As with every plugin, it's possible that things don't work. The most common reason for this is a web browser's cache. "
|
246 |
+
"Every web browser stores a cache of the websites you visit (pages, images, and etc.) to reduce bandwidth usage and server "
|
247 |
+
"load. This is called the browser's cache. Clearing your browser's cache may solve the problem."
|
248 |
+
msgstr ""
|
249 |
|
250 |
+
#: inc/php/page.php:153
|
251 |
+
msgid ""
|
252 |
+
"It's impossible to tell what could be wrong exactly, but if you post a support request in the plugin's support forum on "
|
253 |
+
"WordPress.org, I'd be happy to give it a look and try to help out. Please include as much information as possible, "
|
254 |
+
"including a link to your website where the problem can be seen."
|
255 |
+
msgstr ""
|
256 |
|
257 |
+
#: inc/php/page.php:155
|
258 |
+
msgid "What to do if this plugin caused the white screen (WSOD)?"
|
259 |
+
msgstr ""
|
260 |
|
261 |
+
#: inc/php/page.php:156
|
262 |
+
msgid ""
|
263 |
+
"This plugin is not perfect, so there are times when the entered custom code causes the error and white screen (WSOD). "
|
264 |
+
"This is due to the fact that your custom code has a syntax error that this plugin could not detect. If this happened with "
|
265 |
+
"you then do the following and all will be fine."
|
266 |
+
msgstr ""
|
267 |
|
268 |
+
#: inc/php/page.php:158
|
269 |
+
msgid ""
|
270 |
+
"Via FTP, go to the plugin folder (in <code>wp-content/plugins/my-custom-functions/</code>). Rename the \"START\" file to "
|
271 |
+
"\"STOP\"."
|
272 |
+
msgstr ""
|
273 |
|
274 |
+
#: inc/php/page.php:159
|
275 |
+
msgid "Return to the plugin settings page."
|
276 |
+
msgstr ""
|
277 |
|
278 |
+
#: inc/php/page.php:160
|
279 |
+
msgid "Edit/fix your custom code that you entered before the crash."
|
280 |
+
msgstr ""
|
281 |
|
282 |
+
#: inc/php/page.php:161
|
283 |
+
msgid "Rename the \"STOP\" file to \"START\" and you're done!"
|
284 |
+
msgstr ""
|
285 |
|
286 |
+
#: inc/php/page.php:163
|
287 |
+
msgid ""
|
288 |
+
"This plugin stored you entered code in the Database of your website. For getting your code, you also can go to the "
|
289 |
+
"<code>Database</code> ➡ Table <code>wp_options</code> ➡ Option <code>anarcho_cfunctions_settings</code> "
|
290 |
+
"➡ <code>option_value</code>."
|
291 |
+
msgstr ""
|
292 |
|
293 |
+
#: inc/php/page.php:165
|
294 |
+
msgid "Where to report bug if found?"
|
295 |
+
msgstr ""
|
296 |
|
297 |
+
#: inc/php/page.php:167
|
298 |
+
#, php-format
|
299 |
+
msgid "Please visit the %s Dedicated Plugin Page on GitHub %s and report."
|
300 |
+
msgstr ""
|
301 |
|
302 |
+
#: inc/php/page.php:173
|
303 |
+
msgid "Where to share any ideas or suggestions to make the plugin better?"
|
304 |
+
msgstr ""
|
305 |
|
306 |
+
#: inc/php/page.php:175
|
307 |
+
#, php-format
|
308 |
+
msgid "Any suggestions are very welcome! Please send me an email to %s arthurgareginyan@gmail.com %s. Thank you!"
|
309 |
+
msgstr ""
|
310 |
|
311 |
+
#: inc/php/page.php:181
|
312 |
+
msgid "I love this plugin! Can I help somehow?"
|
313 |
+
msgstr ""
|
314 |
|
315 |
+
#: inc/php/page.php:183
|
316 |
+
#, php-format
|
317 |
+
msgid ""
|
318 |
+
"Yes, any financial contributions are welcome! Just visit %s my website %s, click on the donate button, and thank you!"
|
319 |
+
msgstr ""
|
320 |
|
321 |
+
#: inc/php/settings.php:21
|
322 |
+
msgid "About"
|
323 |
+
msgstr "Acerca de"
|
324 |
|
325 |
+
#: inc/php/settings.php:23
|
326 |
+
msgid "This plugin allows you to easily and safely add your custom functions (PHP code) to your website."
|
327 |
+
msgstr ""
|
328 |
|
329 |
+
#: inc/php/settings.php:28
|
330 |
+
msgid "Upgrade"
|
331 |
+
msgstr ""
|
332 |
|
333 |
+
#: inc/php/settings.php:39 inc/php/settings.php:92
|
334 |
+
msgid ""
|
335 |
+
"I'm an independent developer, without a regular income, so every little contribution helps cover my costs and lets me "
|
336 |
+
"spend more time building things for people like you to enjoy."
|
337 |
+
msgstr ""
|
338 |
+
"Soy un desarrollador independiente, sin ingresos fijos, por lo que cualquier contribución, por pequeña que sea, me ayuda "
|
339 |
+
"a cubrir mis gastos y me permite dedicar más tiempo para construir cosas que pueda disfrutar gente como tú."
|
340 |
|
341 |
+
#: inc/php/settings.php:40 inc/php/settings.php:93
|
342 |
+
msgid "Donate with PayPal"
|
343 |
+
msgstr ""
|
344 |
|
345 |
+
#: inc/php/settings.php:41 inc/php/settings.php:94
|
346 |
+
msgid "Thanks for your support!"
|
347 |
+
msgstr "¡Gracias por su colaboración!"
|
348 |
|
349 |
+
#: inc/php/settings.php:46
|
350 |
+
msgid "Help"
|
351 |
+
msgstr "Ayuda"
|
352 |
|
353 |
+
#: inc/php/settings.php:48
|
354 |
+
msgid "Got something to say? Need help?"
|
355 |
+
msgstr "¿Tienes algo que decir? ¿Necesitas ayuda?"
|
356 |
|
357 |
+
#: inc/php/settings.php:76
|
358 |
+
msgid "Functions (PHP code)"
|
359 |
+
msgstr ""
|
360 |
|
361 |
+
#: inc/php/settings.php:87
|
362 |
+
msgid "Save Changes"
|
363 |
+
msgstr "Guardar los cambios"
|
364 |
|
365 |
+
#. Plugin URI of the plugin/theme
|
366 |
+
msgid "https://github.com/ArthurGareginyan/my-custom-functions"
|
367 |
+
msgstr ""
|
368 |
|
369 |
+
#. Description of the plugin/theme
|
370 |
+
msgid ""
|
371 |
+
"Easily and safely add your custom functions (PHP code) directly out of your WordPress Dashboard without need of an "
|
372 |
+
"external editor."
|
373 |
+
msgstr ""
|
374 |
|
375 |
+
#. Author of the plugin/theme
|
376 |
+
msgid "Arthur Gareginyan"
|
377 |
+
msgstr ""
|
378 |
|
379 |
+
#. Author URI of the plugin/theme
|
380 |
+
msgid "http://www.arthurgareginyan.com"
|
381 |
+
msgstr ""
|
382 |
|
383 |
+
#~ msgid "by <a href=\"http://www.arthurgareginyan.com\" target=\"_blank\">Arthur Gareginyan</a>"
|
384 |
+
#~ msgstr "por <a href=“http://www.arthurgareginyan.com” target=“_blank”>Arthur Gareginyan</a>"
|
385 |
|
386 |
+
#~ msgid "Using"
|
387 |
+
#~ msgstr "Uso"
|
languages/my-custom-functions-fr_FR.mo
CHANGED
Binary file
|
languages/my-custom-functions-fr_FR.po
CHANGED
@@ -1,94 +1,373 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
-
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
4 |
"Project-Id-Version: My Custom Functions\n"
|
5 |
-
"POT-Creation-Date:
|
6 |
-
"PO-Revision-Date:
|
|
|
7 |
"Language-Team: \n"
|
|
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
11 |
-
"
|
|
|
12 |
"X-Poedit-Basepath: ..\n"
|
13 |
"X-Poedit-WPHeader: my-custom-functions.php\n"
|
14 |
"X-Poedit-SourceCharset: UTF-8\n"
|
15 |
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
|
16 |
"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
|
17 |
"_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
|
18 |
-
"Last-Translator: \n"
|
19 |
-
"Language: fr_FR\n"
|
20 |
"X-Poedit-SearchPath-0: .\n"
|
21 |
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
22 |
|
23 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
24 |
msgid "Custom functions updated successfully."
|
25 |
msgstr "Custom functions mis à jour avec succès"
|
26 |
|
27 |
-
#: inc/php/
|
28 |
msgid "Sorry, but your code causes a \"Fatal error\", so it is not applied!"
|
29 |
msgstr ""
|
30 |
"Désolé, mais votre code provoque une \"erreur fatale\" ; il n'est donc pas "
|
31 |
"appliqué."
|
32 |
|
33 |
-
#: inc/php/
|
34 |
msgid "Please, check the code and try again."
|
35 |
msgstr "Svp, vérifiez le code et réessayez."
|
36 |
|
37 |
-
|
38 |
-
|
39 |
-
msgid "
|
40 |
-
msgstr "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
41 |
|
42 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
msgid ""
|
44 |
-
"
|
45 |
-
"
|
46 |
msgstr ""
|
47 |
-
"par <a href=\"http://www.arthurgareginyan.com\" target=\"_blank\">Arthur "
|
48 |
-
"Gareginyan</a>"
|
49 |
|
50 |
-
#: inc/php/
|
51 |
-
msgid "
|
52 |
-
msgstr "
|
53 |
|
54 |
-
#: inc/php/
|
55 |
msgid ""
|
56 |
-
"
|
57 |
-
"
|
|
|
|
|
|
|
|
|
58 |
msgstr ""
|
59 |
-
"Ce plugin vous permet d'ajouter facilement et en toute sécurité vos "
|
60 |
-
"fonctions personnalisées (code PHP) au fichier functions.php de votre thème/"
|
61 |
-
"site."
|
62 |
|
63 |
-
#: inc/php/
|
64 |
-
msgid "
|
65 |
-
msgstr "
|
66 |
|
67 |
-
#: inc/php/
|
68 |
msgid ""
|
69 |
-
"
|
70 |
-
"
|
71 |
msgstr ""
|
72 |
-
"Pour utiliser ce plugin, entrez vos fonctions personnalisées, puis cliquez "
|
73 |
-
"\"Enregistrer\". C'est aussi simple que ça !"
|
74 |
|
75 |
-
#: inc/php/
|
76 |
-
msgid "
|
77 |
-
|
|
|
|
|
78 |
|
79 |
-
#: inc/php/
|
80 |
-
msgid "
|
81 |
-
msgstr "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
82 |
|
83 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
84 |
msgid "Upgrade"
|
85 |
msgstr "Evolution"
|
86 |
|
87 |
-
#: inc/php/
|
88 |
-
msgid "Donate"
|
89 |
-
msgstr "Faire un don"
|
90 |
-
|
91 |
-
#: inc/php/settings_page.php:92
|
92 |
msgid ""
|
93 |
"I'm an independent developer, without a regular income, so every little "
|
94 |
"contribution helps cover my costs and lets me spend more time building "
|
@@ -98,33 +377,37 @@ msgstr ""
|
|
98 |
"modeste contribution m'aide à couvrir les frais et me permet de consacrer "
|
99 |
"plus de temps à créer des choses que vous appréciez."
|
100 |
|
101 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
102 |
msgid "Thanks for your support!"
|
103 |
msgstr "Merci pour votre soutien !"
|
104 |
|
105 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
106 |
msgid "Functions (PHP code)"
|
107 |
msgstr "Fonctions (code PHP)"
|
108 |
|
109 |
-
#: inc/php/
|
110 |
msgid "Save Changes"
|
111 |
msgstr "Enregistrer"
|
112 |
|
113 |
-
#: my-custom-functions.php:73
|
114 |
-
msgid "Settings"
|
115 |
-
msgstr "Réglages"
|
116 |
-
|
117 |
-
#: my-custom-functions.php:85
|
118 |
-
msgid "Custom Functions"
|
119 |
-
msgstr "Custom Functions"
|
120 |
-
|
121 |
#. Plugin URI of the plugin/theme
|
122 |
msgid "https://github.com/ArthurGareginyan/my-custom-functions"
|
123 |
msgstr "https://github.com/ArthurGareginyan/my-custom-functions"
|
124 |
|
125 |
#. Description of the plugin/theme
|
126 |
msgid ""
|
127 |
-
"Easily and safely add your
|
128 |
"WordPress Dashboard without need of an external editor."
|
129 |
msgstr ""
|
130 |
"Ajoutez facilement et en toute sécurité vos fonctions personnalisées (code "
|
@@ -138,3 +421,20 @@ msgstr "Arthur Gareginyan"
|
|
138 |
#. Author URI of the plugin/theme
|
139 |
msgid "http://www.arthurgareginyan.com"
|
140 |
msgstr "http://www.arthurgareginyan.com"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
|
|
3 |
"Project-Id-Version: My Custom Functions\n"
|
4 |
+
"POT-Creation-Date: 2017-05-07 13:23+0300\n"
|
5 |
+
"PO-Revision-Date: 2017-05-07 13:23+0300\n"
|
6 |
+
"Last-Translator: \n"
|
7 |
"Language-Team: \n"
|
8 |
+
"Language: fr_FR\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
13 |
+
"X-Generator: Poedit 1.8.4\n"
|
14 |
"X-Poedit-Basepath: ..\n"
|
15 |
"X-Poedit-WPHeader: my-custom-functions.php\n"
|
16 |
"X-Poedit-SourceCharset: UTF-8\n"
|
17 |
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
|
18 |
"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
|
19 |
"_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
|
|
|
|
|
20 |
"X-Poedit-SearchPath-0: .\n"
|
21 |
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
22 |
|
23 |
+
#: inc/php/core.php:31
|
24 |
+
msgid "Settings"
|
25 |
+
msgstr "Réglages"
|
26 |
+
|
27 |
+
#: inc/php/core.php:43 inc/php/core.php:60
|
28 |
+
msgid "Upgrade to PRO"
|
29 |
+
msgstr ""
|
30 |
+
|
31 |
+
#: inc/php/core.php:59
|
32 |
+
msgid "Donate"
|
33 |
+
msgstr "Faire un don"
|
34 |
+
|
35 |
+
#. Plugin Name of the plugin/theme
|
36 |
+
#: inc/php/core.php:75 inc/php/page.php:27
|
37 |
+
msgid "My Custom Functions"
|
38 |
+
msgstr "My Custom Functions"
|
39 |
+
|
40 |
+
#: inc/php/core.php:75
|
41 |
+
msgid "Custom Functions"
|
42 |
+
msgstr "Custom Functions"
|
43 |
+
|
44 |
+
#: inc/php/messages.php:30
|
45 |
+
msgid "Hello. I'm Arthur, the author of this plugin."
|
46 |
+
msgstr ""
|
47 |
+
|
48 |
+
#: inc/php/messages.php:32
|
49 |
+
#, php-format
|
50 |
+
msgid "Thank you for installing my plugin! I hope you will love it %s"
|
51 |
+
msgstr ""
|
52 |
+
|
53 |
+
#: inc/php/messages.php:67
|
54 |
+
msgid "You have installed an old version of this plugin."
|
55 |
+
msgstr ""
|
56 |
+
|
57 |
+
#: inc/php/messages.php:68
|
58 |
+
msgid "Please update the plugin to the latest version, and all will be fine."
|
59 |
+
msgstr ""
|
60 |
+
|
61 |
+
#: inc/php/messages.php:92
|
62 |
msgid "Custom functions updated successfully."
|
63 |
msgstr "Custom functions mis à jour avec succès"
|
64 |
|
65 |
+
#: inc/php/messages.php:110
|
66 |
msgid "Sorry, but your code causes a \"Fatal error\", so it is not applied!"
|
67 |
msgstr ""
|
68 |
"Désolé, mais votre code provoque une \"erreur fatale\" ; il n'est donc pas "
|
69 |
"appliqué."
|
70 |
|
71 |
+
#: inc/php/messages.php:111
|
72 |
msgid "Please, check the code and try again."
|
73 |
msgstr "Svp, vérifiez le code et réessayez."
|
74 |
|
75 |
+
#: inc/php/page.php:30
|
76 |
+
#, php-format
|
77 |
+
msgid "by %s Arthur Gareginyan %s"
|
78 |
+
msgstr "par %s Arthur Gareginyan %s"
|
79 |
+
|
80 |
+
#: inc/php/page.php:42
|
81 |
+
msgid "Main"
|
82 |
+
msgstr ""
|
83 |
+
|
84 |
+
#: inc/php/page.php:43 inc/php/page.php:63
|
85 |
+
msgid "Usage"
|
86 |
+
msgstr ""
|
87 |
|
88 |
+
#: inc/php/page.php:44
|
89 |
+
msgid "F.A.Q."
|
90 |
+
msgstr ""
|
91 |
+
|
92 |
+
#: inc/php/page.php:45 inc/php/page.php:197
|
93 |
+
msgid "Author"
|
94 |
+
msgstr ""
|
95 |
+
|
96 |
+
#: inc/php/page.php:46 inc/php/page.php:206 inc/php/settings.php:37
|
97 |
+
#: inc/php/settings.php:90
|
98 |
+
msgid "Support"
|
99 |
+
msgstr ""
|
100 |
+
|
101 |
+
#: inc/php/page.php:47
|
102 |
+
msgid "Family"
|
103 |
+
msgstr ""
|
104 |
+
|
105 |
+
#: inc/php/page.php:65
|
106 |
msgid ""
|
107 |
+
"To add your custom functions (the PHP code) to your website, simply follow "
|
108 |
+
"these steps:"
|
109 |
msgstr ""
|
|
|
|
|
110 |
|
111 |
+
#: inc/php/page.php:67
|
112 |
+
msgid "Go to the \"Main\" tab."
|
113 |
+
msgstr ""
|
114 |
|
115 |
+
#: inc/php/page.php:68
|
116 |
msgid ""
|
117 |
+
"Add your PHP code to the field, switch the toggle to the \"ON\" position and "
|
118 |
+
"click the \"Save Changes\" button."
|
119 |
+
msgstr ""
|
120 |
+
|
121 |
+
#: inc/php/page.php:69
|
122 |
+
msgid "Example of PHP code:"
|
123 |
msgstr ""
|
|
|
|
|
|
|
124 |
|
125 |
+
#: inc/php/page.php:75 inc/php/page.php:76 inc/php/page.php:80
|
126 |
+
msgid "Note!"
|
127 |
+
msgstr ""
|
128 |
|
129 |
+
#: inc/php/page.php:75
|
130 |
msgid ""
|
131 |
+
"Please do not wrap your PHP code in the <code><?php</code>...<code>?></"
|
132 |
+
"code> HTML tags."
|
133 |
msgstr ""
|
|
|
|
|
134 |
|
135 |
+
#: inc/php/page.php:76
|
136 |
+
msgid ""
|
137 |
+
"Before use, please read the instructions on the F.A.Q. tab on what to do in "
|
138 |
+
"case of a website crash."
|
139 |
+
msgstr ""
|
140 |
|
141 |
+
#: inc/php/page.php:78
|
142 |
+
msgid "Enjoy the result of applying your PHP code."
|
143 |
+
msgstr ""
|
144 |
+
|
145 |
+
#: inc/php/page.php:78
|
146 |
+
msgid "It's that simple!"
|
147 |
+
msgstr ""
|
148 |
+
|
149 |
+
#: inc/php/page.php:80
|
150 |
+
msgid "If you want more options then tell me and I will be happy to add it."
|
151 |
+
msgstr ""
|
152 |
+
|
153 |
+
#: inc/php/page.php:89
|
154 |
+
msgid "Frequently Asked Questions"
|
155 |
+
msgstr ""
|
156 |
+
|
157 |
+
#: inc/php/page.php:111
|
158 |
+
msgid "Will this plugin work on my WordPress.COM website?"
|
159 |
+
msgstr ""
|
160 |
+
|
161 |
+
#: inc/php/page.php:112
|
162 |
+
msgid ""
|
163 |
+
"Sorry, this plugin is available for use only on self-hosted (WordPress.ORG) "
|
164 |
+
"websites."
|
165 |
+
msgstr ""
|
166 |
+
|
167 |
+
#: inc/php/page.php:114
|
168 |
+
msgid "Can I use this plugin on my language?"
|
169 |
+
msgstr ""
|
170 |
+
|
171 |
+
#: inc/php/page.php:116
|
172 |
+
#, php-format
|
173 |
+
msgid ""
|
174 |
+
"Yes. But If your language is not available then you can make one. This "
|
175 |
+
"plugin is ready for translation. The<code>.pot</code>file is included and "
|
176 |
+
"placed in the <code>languages</code> folder. Many of plugin users would be "
|
177 |
+
"delighted if you shared your translation with the community. Just send the "
|
178 |
+
"translation files (<code>*.po, *.mo</code>) to me at the %s and I will "
|
179 |
+
"include the translation within the next plugin update."
|
180 |
+
msgstr ""
|
181 |
+
|
182 |
+
#: inc/php/page.php:121
|
183 |
+
msgid "How does it work?"
|
184 |
+
msgstr ""
|
185 |
+
|
186 |
+
#: inc/php/page.php:122
|
187 |
+
msgid ""
|
188 |
+
"On the \"Settings\" tab, add your PHP code to the field, switch the toggle "
|
189 |
+
"to the \"ON\" position and click the \"Save Changes\" button. Enjoy the "
|
190 |
+
"result of applying your PHP code. It's that simple!"
|
191 |
+
msgstr ""
|
192 |
+
|
193 |
+
#: inc/php/page.php:124
|
194 |
+
msgid "Can I use HTML/CSS/JS code integrated in PHP code?"
|
195 |
+
msgstr ""
|
196 |
+
|
197 |
+
#: inc/php/page.php:125
|
198 |
+
msgid "Yes. But you need to do it properly, like this:"
|
199 |
+
msgstr ""
|
200 |
+
|
201 |
+
#: inc/php/page.php:135
|
202 |
+
msgid "How much of PHP code (characters) I can enter in the text field?"
|
203 |
+
msgstr ""
|
204 |
+
|
205 |
+
#: inc/php/page.php:136
|
206 |
+
msgid "I don't limit the number of characters."
|
207 |
+
msgstr ""
|
208 |
+
|
209 |
+
#: inc/php/page.php:138
|
210 |
+
msgid ""
|
211 |
+
"On the plugin settings page, an error message appears. What could be wrong?"
|
212 |
+
msgstr ""
|
213 |
|
214 |
+
#: inc/php/page.php:139
|
215 |
+
msgid "Here are a few of the most likely causes of the error message:"
|
216 |
+
msgstr ""
|
217 |
+
|
218 |
+
#: inc/php/page.php:140
|
219 |
+
msgid ""
|
220 |
+
"1. You make a syntax error in the code that you have entered. Check the "
|
221 |
+
"syntax of your code and try again."
|
222 |
+
msgstr ""
|
223 |
+
|
224 |
+
#: inc/php/page.php:141
|
225 |
+
msgid ""
|
226 |
+
"2. You entered two functions with the same name. Use a unique names for your "
|
227 |
+
"functions."
|
228 |
+
msgstr ""
|
229 |
+
|
230 |
+
#: inc/php/page.php:142
|
231 |
+
msgid ""
|
232 |
+
"3. You have entered function with a name that is already occupied by another "
|
233 |
+
"function. Use a unique name for your function."
|
234 |
+
msgstr ""
|
235 |
+
|
236 |
+
#: inc/php/page.php:143
|
237 |
+
msgid ""
|
238 |
+
"4. You are trying to overwrite an existing function (of WordPress, theme, or "
|
239 |
+
"plugin). Instead, use filters and hooks."
|
240 |
+
msgstr ""
|
241 |
+
|
242 |
+
#: inc/php/page.php:145
|
243 |
+
msgid "Does this plugin requires any modification of the theme?"
|
244 |
+
msgstr ""
|
245 |
+
|
246 |
+
#: inc/php/page.php:146
|
247 |
+
msgid ""
|
248 |
+
"Absolutely not. This plugin is configurable entirely from the plugin "
|
249 |
+
"settings page."
|
250 |
+
msgstr ""
|
251 |
+
|
252 |
+
#: inc/php/page.php:148
|
253 |
+
msgid "Does this require any knowledge of HTML or CSS?"
|
254 |
+
msgstr ""
|
255 |
+
|
256 |
+
#: inc/php/page.php:149
|
257 |
+
msgid ""
|
258 |
+
"This plugin can be configured with no knowledge of HTML or CSS, using an "
|
259 |
+
"easy-to-use plugin settings page. But you need to know the HTML or CSS in "
|
260 |
+
"order to add/remove/modify the HTML or CSS code by using this plugin."
|
261 |
+
msgstr ""
|
262 |
+
|
263 |
+
#: inc/php/page.php:151
|
264 |
+
msgid "It's not working. What could be wrong?"
|
265 |
+
msgstr ""
|
266 |
+
|
267 |
+
#: inc/php/page.php:152
|
268 |
+
msgid ""
|
269 |
+
"As with every plugin, it's possible that things don't work. The most common "
|
270 |
+
"reason for this is a web browser's cache. Every web browser stores a cache "
|
271 |
+
"of the websites you visit (pages, images, and etc.) to reduce bandwidth "
|
272 |
+
"usage and server load. This is called the browser's cache. Clearing your "
|
273 |
+
"browser's cache may solve the problem."
|
274 |
+
msgstr ""
|
275 |
+
|
276 |
+
#: inc/php/page.php:153
|
277 |
+
msgid ""
|
278 |
+
"It's impossible to tell what could be wrong exactly, but if you post a "
|
279 |
+
"support request in the plugin's support forum on WordPress.org, I'd be happy "
|
280 |
+
"to give it a look and try to help out. Please include as much information as "
|
281 |
+
"possible, including a link to your website where the problem can be seen."
|
282 |
+
msgstr ""
|
283 |
+
|
284 |
+
#: inc/php/page.php:155
|
285 |
+
msgid "What to do if this plugin caused the white screen (WSOD)?"
|
286 |
+
msgstr ""
|
287 |
+
|
288 |
+
#: inc/php/page.php:156
|
289 |
+
msgid ""
|
290 |
+
"This plugin is not perfect, so there are times when the entered custom code "
|
291 |
+
"causes the error and white screen (WSOD). This is due to the fact that your "
|
292 |
+
"custom code has a syntax error that this plugin could not detect. If this "
|
293 |
+
"happened with you then do the following and all will be fine."
|
294 |
+
msgstr ""
|
295 |
+
|
296 |
+
#: inc/php/page.php:158
|
297 |
+
msgid ""
|
298 |
+
"Via FTP, go to the plugin folder (in <code>wp-content/plugins/my-custom-"
|
299 |
+
"functions/</code>). Rename the \"START\" file to \"STOP\"."
|
300 |
+
msgstr ""
|
301 |
+
|
302 |
+
#: inc/php/page.php:159
|
303 |
+
msgid "Return to the plugin settings page."
|
304 |
+
msgstr ""
|
305 |
+
|
306 |
+
#: inc/php/page.php:160
|
307 |
+
msgid "Edit/fix your custom code that you entered before the crash."
|
308 |
+
msgstr ""
|
309 |
+
|
310 |
+
#: inc/php/page.php:161
|
311 |
+
msgid "Rename the \"STOP\" file to \"START\" and you're done!"
|
312 |
+
msgstr ""
|
313 |
+
|
314 |
+
#: inc/php/page.php:163
|
315 |
+
msgid ""
|
316 |
+
"This plugin stored you entered code in the Database of your website. For "
|
317 |
+
"getting your code, you also can go to the <code>Database</code> ➡ "
|
318 |
+
"Table <code>wp_options</code> ➡ Option "
|
319 |
+
"<code>anarcho_cfunctions_settings</code> ➡ <code>option_value</code>."
|
320 |
+
msgstr ""
|
321 |
+
|
322 |
+
#: inc/php/page.php:165
|
323 |
+
msgid "Where to report bug if found?"
|
324 |
+
msgstr ""
|
325 |
+
|
326 |
+
#: inc/php/page.php:167
|
327 |
+
#, php-format
|
328 |
+
msgid "Please visit the %s Dedicated Plugin Page on GitHub %s and report."
|
329 |
+
msgstr ""
|
330 |
+
|
331 |
+
#: inc/php/page.php:173
|
332 |
+
msgid "Where to share any ideas or suggestions to make the plugin better?"
|
333 |
+
msgstr ""
|
334 |
+
|
335 |
+
#: inc/php/page.php:175
|
336 |
+
#, php-format
|
337 |
+
msgid ""
|
338 |
+
"Any suggestions are very welcome! Please send me an email to %s "
|
339 |
+
"arthurgareginyan@gmail.com %s. Thank you!"
|
340 |
+
msgstr ""
|
341 |
+
|
342 |
+
#: inc/php/page.php:181
|
343 |
+
msgid "I love this plugin! Can I help somehow?"
|
344 |
+
msgstr ""
|
345 |
+
|
346 |
+
#: inc/php/page.php:183
|
347 |
+
#, php-format
|
348 |
+
msgid ""
|
349 |
+
"Yes, any financial contributions are welcome! Just visit %s my website %s, "
|
350 |
+
"click on the donate button, and thank you!"
|
351 |
+
msgstr ""
|
352 |
+
|
353 |
+
#: inc/php/settings.php:21
|
354 |
+
msgid "About"
|
355 |
+
msgstr "A propos"
|
356 |
+
|
357 |
+
#: inc/php/settings.php:23
|
358 |
+
msgid ""
|
359 |
+
"This plugin allows you to easily and safely add your custom functions (PHP "
|
360 |
+
"code) to your website."
|
361 |
+
msgstr ""
|
362 |
+
"Ce plugin vous permet d'ajouter facilement et en toute sécurité vos "
|
363 |
+
"fonctions personnalisées (code PHP) au fichier functions.php de votre thème/"
|
364 |
+
"site."
|
365 |
+
|
366 |
+
#: inc/php/settings.php:28
|
367 |
msgid "Upgrade"
|
368 |
msgstr "Evolution"
|
369 |
|
370 |
+
#: inc/php/settings.php:39 inc/php/settings.php:92
|
|
|
|
|
|
|
|
|
371 |
msgid ""
|
372 |
"I'm an independent developer, without a regular income, so every little "
|
373 |
"contribution helps cover my costs and lets me spend more time building "
|
377 |
"modeste contribution m'aide à couvrir les frais et me permet de consacrer "
|
378 |
"plus de temps à créer des choses que vous appréciez."
|
379 |
|
380 |
+
#: inc/php/settings.php:40 inc/php/settings.php:93
|
381 |
+
msgid "Donate with PayPal"
|
382 |
+
msgstr ""
|
383 |
+
|
384 |
+
#: inc/php/settings.php:41 inc/php/settings.php:94
|
385 |
msgid "Thanks for your support!"
|
386 |
msgstr "Merci pour votre soutien !"
|
387 |
|
388 |
+
#: inc/php/settings.php:46
|
389 |
+
msgid "Help"
|
390 |
+
msgstr "Aide"
|
391 |
+
|
392 |
+
#: inc/php/settings.php:48
|
393 |
+
msgid "Got something to say? Need help?"
|
394 |
+
msgstr "Vous souhaitez nous contacter ? Vous avez besoin d'aide ?"
|
395 |
+
|
396 |
+
#: inc/php/settings.php:76
|
397 |
msgid "Functions (PHP code)"
|
398 |
msgstr "Fonctions (code PHP)"
|
399 |
|
400 |
+
#: inc/php/settings.php:87
|
401 |
msgid "Save Changes"
|
402 |
msgstr "Enregistrer"
|
403 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
404 |
#. Plugin URI of the plugin/theme
|
405 |
msgid "https://github.com/ArthurGareginyan/my-custom-functions"
|
406 |
msgstr "https://github.com/ArthurGareginyan/my-custom-functions"
|
407 |
|
408 |
#. Description of the plugin/theme
|
409 |
msgid ""
|
410 |
+
"Easily and safely add your custom functions (PHP code) directly out of your "
|
411 |
"WordPress Dashboard without need of an external editor."
|
412 |
msgstr ""
|
413 |
"Ajoutez facilement et en toute sécurité vos fonctions personnalisées (code "
|
421 |
#. Author URI of the plugin/theme
|
422 |
msgid "http://www.arthurgareginyan.com"
|
423 |
msgstr "http://www.arthurgareginyan.com"
|
424 |
+
|
425 |
+
#~ msgid ""
|
426 |
+
#~ "To use, enter your custom functions, then click \"Save Changes\". It's "
|
427 |
+
#~ "that simple!"
|
428 |
+
#~ msgstr ""
|
429 |
+
#~ "Pour utiliser ce plugin, entrez vos fonctions personnalisées, puis "
|
430 |
+
#~ "cliquez \"Enregistrer\". C'est aussi simple que ça !"
|
431 |
+
|
432 |
+
#~ msgid ""
|
433 |
+
#~ "by <a href=\"http://www.arthurgareginyan.com\" target=\"_blank\">Arthur "
|
434 |
+
#~ "Gareginyan</a>"
|
435 |
+
#~ msgstr ""
|
436 |
+
#~ "par <a href=\"http://www.arthurgareginyan.com\" target=\"_blank\">Arthur "
|
437 |
+
#~ "Gareginyan</a>"
|
438 |
+
|
439 |
+
#~ msgid "Using"
|
440 |
+
#~ msgstr "Mode d'emploi"
|
languages/my-custom-functions-ru_RU.mo
CHANGED
Binary file
|
languages/my-custom-functions-ru_RU.po
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: My Custom Functions\n"
|
4 |
-
"POT-Creation-Date:
|
5 |
-
"PO-Revision-Date:
|
6 |
"Last-Translator: \n"
|
7 |
"Language-Team: \n"
|
8 |
"Language: ru\n"
|
@@ -21,73 +21,364 @@ msgstr ""
|
|
21 |
"X-Poedit-SearchPath-0: .\n"
|
22 |
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
23 |
|
24 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
25 |
msgid "Custom functions updated successfully."
|
26 |
msgstr "Пользовательские функции успешно обновлены."
|
27 |
|
28 |
-
#: inc/php/
|
29 |
msgid "Sorry, but your code causes a \"Fatal error\", so it is not applied!"
|
30 |
msgstr ""
|
31 |
"Извините, но ваш код вызывает \"Fatal error\", так что он не будет применён!"
|
32 |
|
33 |
-
#: inc/php/
|
34 |
msgid "Please, check the code and try again."
|
35 |
msgstr "Пожалуйста, проверьте код и попробуйте ещё раз."
|
36 |
|
37 |
-
|
38 |
-
|
39 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
40 |
msgstr ""
|
41 |
|
42 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
43 |
msgid ""
|
44 |
-
"
|
45 |
-
"
|
46 |
msgstr ""
|
47 |
-
"от <a href=\"http://www.arthurgareginyan.com\" target=\"_blank\">Артур "
|
48 |
-
"Гарегинян</a>"
|
49 |
|
50 |
-
#: inc/php/
|
51 |
-
msgid "
|
52 |
-
msgstr "
|
|
|
|
|
|
|
|
|
53 |
|
54 |
-
#: inc/php/
|
55 |
msgid ""
|
56 |
-
"
|
57 |
-
"code
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
58 |
msgstr ""
|
59 |
-
"Этот плагин даёт вам возможность легко и безопасно добавлять ваши "
|
60 |
-
"пользовательские функции (PHP код) на ваш веб-сайт."
|
61 |
|
62 |
-
#: inc/php/
|
63 |
-
msgid "
|
64 |
-
msgstr "
|
65 |
|
66 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
67 |
msgid ""
|
68 |
-
"
|
69 |
-
"
|
70 |
msgstr ""
|
71 |
-
"
|
72 |
-
"
|
73 |
|
74 |
-
#: inc/php/
|
75 |
-
msgid "
|
76 |
-
msgstr "
|
77 |
|
78 |
-
#: inc/php/
|
79 |
-
|
80 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
81 |
|
82 |
-
#: inc/php/
|
83 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
84 |
msgstr ""
|
85 |
|
86 |
-
#: inc/php/
|
87 |
-
msgid "
|
88 |
-
msgstr "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
89 |
|
90 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
91 |
msgid ""
|
92 |
"I'm an independent developer, without a regular income, so every little "
|
93 |
"contribution helps cover my costs and lets me spend more time building "
|
@@ -97,33 +388,37 @@ msgstr ""
|
|
97 |
"вклад помогает мне покрыть затраты и позволяет тратить больше времени на "
|
98 |
"создание программ для людей как вы."
|
99 |
|
100 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
101 |
msgid "Thanks for your support!"
|
102 |
msgstr "Спасибо за вашу поддержку!"
|
103 |
|
104 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
105 |
msgid "Functions (PHP code)"
|
106 |
msgstr "Функции (PHP код)"
|
107 |
|
108 |
-
#: inc/php/
|
109 |
msgid "Save Changes"
|
110 |
msgstr "Сохранить изменения"
|
111 |
|
112 |
-
#: my-custom-functions.php:73
|
113 |
-
msgid "Settings"
|
114 |
-
msgstr "Настройки"
|
115 |
-
|
116 |
-
#: my-custom-functions.php:85
|
117 |
-
msgid "Custom Functions"
|
118 |
-
msgstr "Пользовательские Функции"
|
119 |
-
|
120 |
#. Plugin URI of the plugin/theme
|
121 |
msgid "https://github.com/ArthurGareginyan/my-custom-functions"
|
122 |
-
msgstr ""
|
123 |
|
124 |
#. Description of the plugin/theme
|
125 |
msgid ""
|
126 |
-
"Easily and safely add your
|
127 |
"WordPress Dashboard without need of an external editor."
|
128 |
msgstr ""
|
129 |
"Просто и безопасно добавляйте ваши пользовательские функции (PHP код) "
|
@@ -136,7 +431,24 @@ msgstr "Артур Гарегинян"
|
|
136 |
|
137 |
#. Author URI of the plugin/theme
|
138 |
msgid "http://www.arthurgareginyan.com"
|
139 |
-
msgstr ""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
140 |
|
141 |
#~ msgid ""
|
142 |
#~ "If you like this plugin and find it useful, please help me to make this "
|
@@ -178,11 +490,6 @@ msgstr ""
|
|
178 |
#~ "от <a href=“http://www.arthurgareginyan.com” target=“_blank”>Артур "
|
179 |
#~ "“Berserkr” Гарегинян</a>"
|
180 |
|
181 |
-
#~ msgid "If you want more options then tell me and I will be happy to add it."
|
182 |
-
#~ msgstr ""
|
183 |
-
#~ "Если вы хотите больше опций, то скажите мне об этом и я буду счастлив "
|
184 |
-
#~ "добавить их."
|
185 |
-
|
186 |
#~ msgid "Freelance"
|
187 |
#~ msgstr "Фриланс"
|
188 |
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: My Custom Functions\n"
|
4 |
+
"POT-Creation-Date: 2017-05-07 13:23+0300\n"
|
5 |
+
"PO-Revision-Date: 2017-05-07 17:37+0300\n"
|
6 |
"Last-Translator: \n"
|
7 |
"Language-Team: \n"
|
8 |
"Language: ru\n"
|
21 |
"X-Poedit-SearchPath-0: .\n"
|
22 |
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
23 |
|
24 |
+
#: inc/php/core.php:31
|
25 |
+
msgid "Settings"
|
26 |
+
msgstr "Настройки"
|
27 |
+
|
28 |
+
#: inc/php/core.php:43 inc/php/core.php:60
|
29 |
+
msgid "Upgrade to PRO"
|
30 |
+
msgstr ""
|
31 |
+
|
32 |
+
#: inc/php/core.php:59
|
33 |
+
msgid "Donate"
|
34 |
+
msgstr "Поддержать разработку"
|
35 |
+
|
36 |
+
#. Plugin Name of the plugin/theme
|
37 |
+
#: inc/php/core.php:75 inc/php/page.php:27
|
38 |
+
msgid "My Custom Functions"
|
39 |
+
msgstr "My Custom Functions"
|
40 |
+
|
41 |
+
#: inc/php/core.php:75
|
42 |
+
msgid "Custom Functions"
|
43 |
+
msgstr "Пользовательские Функции"
|
44 |
+
|
45 |
+
#: inc/php/messages.php:30
|
46 |
+
msgid "Hello. I'm Arthur, the author of this plugin."
|
47 |
+
msgstr "Привет! Я Артур, автор этого плагина."
|
48 |
+
|
49 |
+
#: inc/php/messages.php:32
|
50 |
+
#, php-format
|
51 |
+
msgid "Thank you for installing my plugin! I hope you will love it %s"
|
52 |
+
msgstr "Спасибо, что установили мой плагин! Надеюсь, что он вам полюбится %s"
|
53 |
+
|
54 |
+
#: inc/php/messages.php:67
|
55 |
+
msgid "You have installed an old version of this plugin."
|
56 |
+
msgstr "Вы установили устаревшую версию этого плагина."
|
57 |
+
|
58 |
+
#: inc/php/messages.php:68
|
59 |
+
msgid "Please update the plugin to the latest version, and all will be fine."
|
60 |
+
msgstr "Пожалуйста, обновите плагин до последней версии и всё будет отлично."
|
61 |
+
|
62 |
+
#: inc/php/messages.php:92
|
63 |
msgid "Custom functions updated successfully."
|
64 |
msgstr "Пользовательские функции успешно обновлены."
|
65 |
|
66 |
+
#: inc/php/messages.php:110
|
67 |
msgid "Sorry, but your code causes a \"Fatal error\", so it is not applied!"
|
68 |
msgstr ""
|
69 |
"Извините, но ваш код вызывает \"Fatal error\", так что он не будет применён!"
|
70 |
|
71 |
+
#: inc/php/messages.php:111
|
72 |
msgid "Please, check the code and try again."
|
73 |
msgstr "Пожалуйста, проверьте код и попробуйте ещё раз."
|
74 |
|
75 |
+
#: inc/php/page.php:30
|
76 |
+
#, php-format
|
77 |
+
msgid "by %s Arthur Gareginyan %s"
|
78 |
+
msgstr "от %s Артура Гарегинян %s"
|
79 |
+
|
80 |
+
#: inc/php/page.php:42
|
81 |
+
msgid "Main"
|
82 |
+
msgstr "Главная"
|
83 |
+
|
84 |
+
#: inc/php/page.php:43 inc/php/page.php:63
|
85 |
+
msgid "Usage"
|
86 |
+
msgstr "Применение"
|
87 |
+
|
88 |
+
#: inc/php/page.php:44
|
89 |
+
msgid "F.A.Q."
|
90 |
+
msgstr "F.A.Q."
|
91 |
+
|
92 |
+
#: inc/php/page.php:45 inc/php/page.php:197
|
93 |
+
msgid "Author"
|
94 |
+
msgstr "Автор"
|
95 |
+
|
96 |
+
#: inc/php/page.php:46 inc/php/page.php:206 inc/php/settings.php:37
|
97 |
+
#: inc/php/settings.php:90
|
98 |
+
msgid "Support"
|
99 |
+
msgstr "Поддержка"
|
100 |
+
|
101 |
+
#: inc/php/page.php:47
|
102 |
+
msgid "Family"
|
103 |
+
msgstr "Семья"
|
104 |
+
|
105 |
+
#: inc/php/page.php:65
|
106 |
+
msgid ""
|
107 |
+
"To add your custom functions (the PHP code) to your website, simply follow "
|
108 |
+
"these steps:"
|
109 |
msgstr ""
|
110 |
|
111 |
+
#: inc/php/page.php:67
|
112 |
+
msgid "Go to the \"Main\" tab."
|
113 |
+
msgstr "Перейдите на вкладку «Главная»."
|
114 |
+
|
115 |
+
#: inc/php/page.php:68
|
116 |
msgid ""
|
117 |
+
"Add your PHP code to the field, switch the toggle to the \"ON\" position and "
|
118 |
+
"click the \"Save Changes\" button."
|
119 |
msgstr ""
|
|
|
|
|
120 |
|
121 |
+
#: inc/php/page.php:69
|
122 |
+
msgid "Example of PHP code:"
|
123 |
+
msgstr "Пример кода PHP:"
|
124 |
+
|
125 |
+
#: inc/php/page.php:75 inc/php/page.php:76 inc/php/page.php:80
|
126 |
+
msgid "Note!"
|
127 |
+
msgstr "Примечание!"
|
128 |
|
129 |
+
#: inc/php/page.php:75
|
130 |
msgid ""
|
131 |
+
"Please do not wrap your PHP code in the <code><?php</code>...<code>?></"
|
132 |
+
"code> HTML tags."
|
133 |
+
msgstr ""
|
134 |
+
|
135 |
+
#: inc/php/page.php:76
|
136 |
+
msgid ""
|
137 |
+
"Before use, please read the instructions on the F.A.Q. tab on what to do in "
|
138 |
+
"case of a website crash."
|
139 |
+
msgstr ""
|
140 |
+
|
141 |
+
#: inc/php/page.php:78
|
142 |
+
msgid "Enjoy the result of applying your PHP code."
|
143 |
msgstr ""
|
|
|
|
|
144 |
|
145 |
+
#: inc/php/page.php:78
|
146 |
+
msgid "It's that simple!"
|
147 |
+
msgstr "Вот так просто!"
|
148 |
|
149 |
+
#: inc/php/page.php:80
|
150 |
+
msgid "If you want more options then tell me and I will be happy to add it."
|
151 |
+
msgstr ""
|
152 |
+
"Если вы хотите больше опций, то скажите мне об этом и я буду счастлив "
|
153 |
+
"добавить их."
|
154 |
+
|
155 |
+
#: inc/php/page.php:89
|
156 |
+
msgid "Frequently Asked Questions"
|
157 |
+
msgstr "Часто задаваемые вопросы"
|
158 |
+
|
159 |
+
#: inc/php/page.php:111
|
160 |
+
msgid "Will this plugin work on my WordPress.COM website?"
|
161 |
+
msgstr "Этот плагин будет работать на моем сайте WordPress.COM?"
|
162 |
+
|
163 |
+
#: inc/php/page.php:112
|
164 |
msgid ""
|
165 |
+
"Sorry, this plugin is available for use only on self-hosted (WordPress.ORG) "
|
166 |
+
"websites."
|
167 |
msgstr ""
|
168 |
+
"К сожалению, этот плагин доступен для использования только на самостоятельно "
|
169 |
+
"размещённых веб-сайтах (WordPress.ORG)."
|
170 |
|
171 |
+
#: inc/php/page.php:114
|
172 |
+
msgid "Can I use this plugin on my language?"
|
173 |
+
msgstr "Можно ли использовать этот плагин на моём языке?"
|
174 |
|
175 |
+
#: inc/php/page.php:116
|
176 |
+
#, php-format
|
177 |
+
msgid ""
|
178 |
+
"Yes. But If your language is not available then you can make one. This "
|
179 |
+
"plugin is ready for translation. The<code>.pot</code>file is included and "
|
180 |
+
"placed in the <code>languages</code> folder. Many of plugin users would be "
|
181 |
+
"delighted if you shared your translation with the community. Just send the "
|
182 |
+
"translation files (<code>*.po, *.mo</code>) to me at the %s and I will "
|
183 |
+
"include the translation within the next plugin update."
|
184 |
+
msgstr ""
|
185 |
|
186 |
+
#: inc/php/page.php:121
|
187 |
+
msgid "How does it work?"
|
188 |
+
msgstr "Как оно работает?"
|
189 |
+
|
190 |
+
#: inc/php/page.php:122
|
191 |
+
msgid ""
|
192 |
+
"On the \"Settings\" tab, add your PHP code to the field, switch the toggle "
|
193 |
+
"to the \"ON\" position and click the \"Save Changes\" button. Enjoy the "
|
194 |
+
"result of applying your PHP code. It's that simple!"
|
195 |
msgstr ""
|
196 |
|
197 |
+
#: inc/php/page.php:124
|
198 |
+
msgid "Can I use HTML/CSS/JS code integrated in PHP code?"
|
199 |
+
msgstr ""
|
200 |
+
|
201 |
+
#: inc/php/page.php:125
|
202 |
+
msgid "Yes. But you need to do it properly, like this:"
|
203 |
+
msgstr ""
|
204 |
+
|
205 |
+
#: inc/php/page.php:135
|
206 |
+
msgid "How much of PHP code (characters) I can enter in the text field?"
|
207 |
+
msgstr ""
|
208 |
+
|
209 |
+
#: inc/php/page.php:136
|
210 |
+
msgid "I don't limit the number of characters."
|
211 |
+
msgstr ""
|
212 |
+
|
213 |
+
#: inc/php/page.php:138
|
214 |
+
msgid ""
|
215 |
+
"On the plugin settings page, an error message appears. What could be wrong?"
|
216 |
+
msgstr ""
|
217 |
+
|
218 |
+
#: inc/php/page.php:139
|
219 |
+
msgid "Here are a few of the most likely causes of the error message:"
|
220 |
+
msgstr ""
|
221 |
+
|
222 |
+
#: inc/php/page.php:140
|
223 |
+
msgid ""
|
224 |
+
"1. You make a syntax error in the code that you have entered. Check the "
|
225 |
+
"syntax of your code and try again."
|
226 |
+
msgstr ""
|
227 |
+
|
228 |
+
#: inc/php/page.php:141
|
229 |
+
msgid ""
|
230 |
+
"2. You entered two functions with the same name. Use a unique names for your "
|
231 |
+
"functions."
|
232 |
+
msgstr ""
|
233 |
+
|
234 |
+
#: inc/php/page.php:142
|
235 |
+
msgid ""
|
236 |
+
"3. You have entered function with a name that is already occupied by another "
|
237 |
+
"function. Use a unique name for your function."
|
238 |
+
msgstr ""
|
239 |
+
|
240 |
+
#: inc/php/page.php:143
|
241 |
+
msgid ""
|
242 |
+
"4. You are trying to overwrite an existing function (of WordPress, theme, or "
|
243 |
+
"plugin). Instead, use filters and hooks."
|
244 |
+
msgstr ""
|
245 |
+
|
246 |
+
#: inc/php/page.php:145
|
247 |
+
msgid "Does this plugin requires any modification of the theme?"
|
248 |
+
msgstr "Этот плагин требует изменения темы?"
|
249 |
|
250 |
+
#: inc/php/page.php:146
|
251 |
+
msgid ""
|
252 |
+
"Absolutely not. This plugin is configurable entirely from the plugin "
|
253 |
+
"settings page."
|
254 |
+
msgstr ""
|
255 |
+
"Абсолютно нет. Этот плагин настраивается полностью на странице настроек "
|
256 |
+
"плагина."
|
257 |
+
|
258 |
+
#: inc/php/page.php:148
|
259 |
+
msgid "Does this require any knowledge of HTML or CSS?"
|
260 |
+
msgstr "Требуются ли какие-либо знания HTML или CSS?"
|
261 |
+
|
262 |
+
#: inc/php/page.php:149
|
263 |
+
msgid ""
|
264 |
+
"This plugin can be configured with no knowledge of HTML or CSS, using an "
|
265 |
+
"easy-to-use plugin settings page. But you need to know the HTML or CSS in "
|
266 |
+
"order to add/remove/modify the HTML or CSS code by using this plugin."
|
267 |
+
msgstr ""
|
268 |
+
"Этот плагин можно настроить без знания HTML или CSS, с помощью простой в "
|
269 |
+
"использовании страницы настройки плагина. Но вам нужно знать HTML или CSS "
|
270 |
+
"для того, чтобы добавить/удалить/изменить код HTML или CSS, используя этот "
|
271 |
+
"плагин."
|
272 |
+
|
273 |
+
#: inc/php/page.php:151
|
274 |
+
msgid "It's not working. What could be wrong?"
|
275 |
+
msgstr "Оно не работает. Что может быть не так?"
|
276 |
+
|
277 |
+
#: inc/php/page.php:152
|
278 |
+
msgid ""
|
279 |
+
"As with every plugin, it's possible that things don't work. The most common "
|
280 |
+
"reason for this is a web browser's cache. Every web browser stores a cache "
|
281 |
+
"of the websites you visit (pages, images, and etc.) to reduce bandwidth "
|
282 |
+
"usage and server load. This is called the browser's cache. Clearing your "
|
283 |
+
"browser's cache may solve the problem."
|
284 |
+
msgstr ""
|
285 |
+
|
286 |
+
#: inc/php/page.php:153
|
287 |
+
msgid ""
|
288 |
+
"It's impossible to tell what could be wrong exactly, but if you post a "
|
289 |
+
"support request in the plugin's support forum on WordPress.org, I'd be happy "
|
290 |
+
"to give it a look and try to help out. Please include as much information as "
|
291 |
+
"possible, including a link to your website where the problem can be seen."
|
292 |
+
msgstr ""
|
293 |
+
|
294 |
+
#: inc/php/page.php:155
|
295 |
+
msgid "What to do if this plugin caused the white screen (WSOD)?"
|
296 |
+
msgstr ""
|
297 |
+
|
298 |
+
#: inc/php/page.php:156
|
299 |
+
msgid ""
|
300 |
+
"This plugin is not perfect, so there are times when the entered custom code "
|
301 |
+
"causes the error and white screen (WSOD). This is due to the fact that your "
|
302 |
+
"custom code has a syntax error that this plugin could not detect. If this "
|
303 |
+
"happened with you then do the following and all will be fine."
|
304 |
+
msgstr ""
|
305 |
+
|
306 |
+
#: inc/php/page.php:158
|
307 |
+
msgid ""
|
308 |
+
"Via FTP, go to the plugin folder (in <code>wp-content/plugins/my-custom-"
|
309 |
+
"functions/</code>). Rename the \"START\" file to \"STOP\"."
|
310 |
+
msgstr ""
|
311 |
+
|
312 |
+
#: inc/php/page.php:159
|
313 |
+
msgid "Return to the plugin settings page."
|
314 |
+
msgstr "Вернитесь на страницу настроек плагина."
|
315 |
+
|
316 |
+
#: inc/php/page.php:160
|
317 |
+
msgid "Edit/fix your custom code that you entered before the crash."
|
318 |
+
msgstr ""
|
319 |
+
|
320 |
+
#: inc/php/page.php:161
|
321 |
+
msgid "Rename the \"STOP\" file to \"START\" and you're done!"
|
322 |
+
msgstr "Переименуйте файл \"STOP\" в \"START\", и все готово!"
|
323 |
+
|
324 |
+
#: inc/php/page.php:163
|
325 |
+
msgid ""
|
326 |
+
"This plugin stored you entered code in the Database of your website. For "
|
327 |
+
"getting your code, you also can go to the <code>Database</code> ➡ "
|
328 |
+
"Table <code>wp_options</code> ➡ Option "
|
329 |
+
"<code>anarcho_cfunctions_settings</code> ➡ <code>option_value</code>."
|
330 |
+
msgstr ""
|
331 |
+
|
332 |
+
#: inc/php/page.php:165
|
333 |
+
msgid "Where to report bug if found?"
|
334 |
+
msgstr "Где можно сообщить об ошибке?"
|
335 |
+
|
336 |
+
#: inc/php/page.php:167
|
337 |
+
#, php-format
|
338 |
+
msgid "Please visit the %s Dedicated Plugin Page on GitHub %s and report."
|
339 |
+
msgstr ""
|
340 |
+
"Пожалуйста, посетите %s страницу плагина на GitHub %s и сообщите об ошибке."
|
341 |
+
|
342 |
+
#: inc/php/page.php:173
|
343 |
+
msgid "Where to share any ideas or suggestions to make the plugin better?"
|
344 |
+
msgstr ""
|
345 |
+
"Где можно поделиться идеями или предложениями, чтобы сделать плагин лучше?"
|
346 |
+
|
347 |
+
#: inc/php/page.php:175
|
348 |
+
#, php-format
|
349 |
+
msgid ""
|
350 |
+
"Any suggestions are very welcome! Please send me an email to %s "
|
351 |
+
"arthurgareginyan@gmail.com %s. Thank you!"
|
352 |
+
msgstr ""
|
353 |
+
|
354 |
+
#: inc/php/page.php:181
|
355 |
+
msgid "I love this plugin! Can I help somehow?"
|
356 |
+
msgstr "Мне нравится этот плагин! Могу Я чем-то помочь?"
|
357 |
+
|
358 |
+
#: inc/php/page.php:183
|
359 |
+
#, php-format
|
360 |
+
msgid ""
|
361 |
+
"Yes, any financial contributions are welcome! Just visit %s my website %s, "
|
362 |
+
"click on the donate button, and thank you!"
|
363 |
+
msgstr ""
|
364 |
+
|
365 |
+
#: inc/php/settings.php:21
|
366 |
+
msgid "About"
|
367 |
+
msgstr "О плагине"
|
368 |
+
|
369 |
+
#: inc/php/settings.php:23
|
370 |
+
msgid ""
|
371 |
+
"This plugin allows you to easily and safely add your custom functions (PHP "
|
372 |
+
"code) to your website."
|
373 |
+
msgstr ""
|
374 |
+
"Этот плагин даёт вам возможность легко и безопасно добавлять ваши "
|
375 |
+
"пользовательские функции (PHP код) на ваш веб-сайт."
|
376 |
+
|
377 |
+
#: inc/php/settings.php:28
|
378 |
+
msgid "Upgrade"
|
379 |
+
msgstr ""
|
380 |
+
|
381 |
+
#: inc/php/settings.php:39 inc/php/settings.php:92
|
382 |
msgid ""
|
383 |
"I'm an independent developer, without a regular income, so every little "
|
384 |
"contribution helps cover my costs and lets me spend more time building "
|
388 |
"вклад помогает мне покрыть затраты и позволяет тратить больше времени на "
|
389 |
"создание программ для людей как вы."
|
390 |
|
391 |
+
#: inc/php/settings.php:40 inc/php/settings.php:93
|
392 |
+
msgid "Donate with PayPal"
|
393 |
+
msgstr ""
|
394 |
+
|
395 |
+
#: inc/php/settings.php:41 inc/php/settings.php:94
|
396 |
msgid "Thanks for your support!"
|
397 |
msgstr "Спасибо за вашу поддержку!"
|
398 |
|
399 |
+
#: inc/php/settings.php:46
|
400 |
+
msgid "Help"
|
401 |
+
msgstr "Помощь"
|
402 |
+
|
403 |
+
#: inc/php/settings.php:48
|
404 |
+
msgid "Got something to say? Need help?"
|
405 |
+
msgstr "Есть что сказать? Нужна помощь?"
|
406 |
+
|
407 |
+
#: inc/php/settings.php:76
|
408 |
msgid "Functions (PHP code)"
|
409 |
msgstr "Функции (PHP код)"
|
410 |
|
411 |
+
#: inc/php/settings.php:87
|
412 |
msgid "Save Changes"
|
413 |
msgstr "Сохранить изменения"
|
414 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
415 |
#. Plugin URI of the plugin/theme
|
416 |
msgid "https://github.com/ArthurGareginyan/my-custom-functions"
|
417 |
+
msgstr "https://github.com/ArthurGareginyan/my-custom-functions"
|
418 |
|
419 |
#. Description of the plugin/theme
|
420 |
msgid ""
|
421 |
+
"Easily and safely add your custom functions (PHP code) directly out of your "
|
422 |
"WordPress Dashboard without need of an external editor."
|
423 |
msgstr ""
|
424 |
"Просто и безопасно добавляйте ваши пользовательские функции (PHP код) "
|
431 |
|
432 |
#. Author URI of the plugin/theme
|
433 |
msgid "http://www.arthurgareginyan.com"
|
434 |
+
msgstr "http://www.arthurgareginyan.com"
|
435 |
+
|
436 |
+
#~ msgid ""
|
437 |
+
#~ "To use, enter your custom functions, then click \"Save Changes\". It's "
|
438 |
+
#~ "that simple!"
|
439 |
+
#~ msgstr ""
|
440 |
+
#~ "Для использования, введите ваши пользовательские функции, затем нажмите "
|
441 |
+
#~ "кнопку “Сохранить изменения”. Это так просто!"
|
442 |
+
|
443 |
+
#~ msgid ""
|
444 |
+
#~ "by <a href=\"http://www.arthurgareginyan.com\" target=\"_blank\">Arthur "
|
445 |
+
#~ "Gareginyan</a>"
|
446 |
+
#~ msgstr ""
|
447 |
+
#~ "от <a href=\"http://www.arthurgareginyan.com\" target=\"_blank\">Артур "
|
448 |
+
#~ "Гарегинян</a>"
|
449 |
+
|
450 |
+
#~ msgid "Using"
|
451 |
+
#~ msgstr "Как пользоваться"
|
452 |
|
453 |
#~ msgid ""
|
454 |
#~ "If you like this plugin and find it useful, please help me to make this "
|
490 |
#~ "от <a href=“http://www.arthurgareginyan.com” target=“_blank”>Артур "
|
491 |
#~ "“Berserkr” Гарегинян</a>"
|
492 |
|
|
|
|
|
|
|
|
|
|
|
493 |
#~ msgid "Freelance"
|
494 |
#~ msgstr "Фриланс"
|
495 |
|
languages/my-custom-functions-zh_TW.mo
CHANGED
Binary file
|
languages/my-custom-functions-zh_TW.po
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: My Custom Functions\n"
|
4 |
-
"POT-Creation-Date:
|
5 |
-
"PO-Revision-Date:
|
6 |
"Last-Translator: \n"
|
7 |
"Language-Team: \n"
|
8 |
"Language: zh_TW\n"
|
@@ -20,100 +20,386 @@ msgstr ""
|
|
20 |
"X-Poedit-SearchPath-0: .\n"
|
21 |
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
22 |
|
23 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
24 |
msgid "Custom functions updated successfully."
|
25 |
msgstr "自訂功能已成功更新"
|
26 |
|
27 |
-
#: inc/php/
|
28 |
msgid "Sorry, but your code causes a \"Fatal error\", so it is not applied!"
|
29 |
msgstr "抱歉!您的程式碼造成了「嚴重錯誤」,所以並沒有套用它!"
|
30 |
|
31 |
-
#: inc/php/
|
32 |
msgid "Please, check the code and try again."
|
33 |
msgstr "請重新檢查程式碼再試一次"
|
34 |
|
35 |
-
|
36 |
-
|
37 |
-
msgid "
|
38 |
-
msgstr "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
|
40 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
41 |
msgid ""
|
42 |
-
"
|
43 |
-
"
|
44 |
msgstr ""
|
45 |
|
46 |
-
#: inc/php/
|
47 |
-
msgid "
|
48 |
-
msgstr "
|
49 |
|
50 |
-
#: inc/php/
|
51 |
msgid ""
|
52 |
-
"
|
53 |
-
"
|
54 |
msgstr ""
|
55 |
|
56 |
-
#: inc/php/
|
57 |
-
msgid "
|
58 |
-
msgstr "
|
59 |
|
60 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
61 |
msgid ""
|
62 |
-
"
|
63 |
-
"
|
64 |
msgstr ""
|
65 |
-
"要使用它,請輸入您的自訂功能然後按下「儲存變更」就可以了,就是這麼簡單!"
|
66 |
|
67 |
-
#: inc/php/
|
68 |
-
msgid "
|
69 |
-
|
|
|
|
|
70 |
|
71 |
-
#: inc/php/
|
72 |
-
msgid "
|
73 |
msgstr ""
|
74 |
|
75 |
-
#: inc/php/
|
76 |
-
msgid "
|
77 |
msgstr ""
|
78 |
|
79 |
-
#: inc/php/
|
80 |
-
msgid "
|
81 |
-
msgstr "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
82 |
|
83 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
84 |
msgid ""
|
85 |
"I'm an independent developer, without a regular income, so every little "
|
86 |
"contribution helps cover my costs and lets me spend more time building "
|
87 |
"things for people like you to enjoy."
|
88 |
msgstr ""
|
89 |
|
90 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
91 |
msgid "Thanks for your support!"
|
92 |
msgstr "謝謝您的贊助!"
|
93 |
|
94 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
95 |
msgid "Functions (PHP code)"
|
96 |
msgstr ""
|
97 |
|
98 |
-
#: inc/php/
|
99 |
msgid "Save Changes"
|
100 |
msgstr "儲存變更"
|
101 |
|
102 |
-
#: my-custom-functions.php:73
|
103 |
-
msgid "Settings"
|
104 |
-
msgstr "設定"
|
105 |
-
|
106 |
-
#: my-custom-functions.php:85
|
107 |
-
msgid "Custom Functions"
|
108 |
-
msgstr "自訂功能"
|
109 |
-
|
110 |
#. Plugin URI of the plugin/theme
|
111 |
msgid "https://github.com/ArthurGareginyan/my-custom-functions"
|
112 |
msgstr ""
|
113 |
|
114 |
#. Description of the plugin/theme
|
115 |
msgid ""
|
116 |
-
"Easily and safely add your
|
117 |
"WordPress Dashboard without need of an external editor."
|
118 |
msgstr ""
|
119 |
|
@@ -125,6 +411,15 @@ msgstr ""
|
|
125 |
msgid "http://www.arthurgareginyan.com"
|
126 |
msgstr ""
|
127 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
128 |
#~ msgid ""
|
129 |
#~ "by <a href=\"http://www.arthurgareginyan.com\" target=\"_blank\">Arthur "
|
130 |
#~ "\"Berserkr\" Gareginyan</a>"
|
@@ -140,9 +435,6 @@ msgstr ""
|
|
140 |
#~ "這個外掛讓你簡單而且安全地加上自已的功能、程式片斷或任何自訂程式碼到你的網"
|
141 |
#~ "站"
|
142 |
|
143 |
-
#~ msgid "If you want more options then tell me and I will be happy to add it."
|
144 |
-
#~ msgstr "如果您還想要更多的選項請跟我說,我會很樂意加上去"
|
145 |
-
|
146 |
#~ msgid ""
|
147 |
#~ "If you like this plugin and find it useful, help me to make this plugin "
|
148 |
#~ "even better and keep it up-to-date."
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: My Custom Functions\n"
|
4 |
+
"POT-Creation-Date: 2017-05-07 13:23+0300\n"
|
5 |
+
"PO-Revision-Date: 2017-05-07 13:23+0300\n"
|
6 |
"Last-Translator: \n"
|
7 |
"Language-Team: \n"
|
8 |
"Language: zh_TW\n"
|
20 |
"X-Poedit-SearchPath-0: .\n"
|
21 |
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
22 |
|
23 |
+
#: inc/php/core.php:31
|
24 |
+
msgid "Settings"
|
25 |
+
msgstr "設定"
|
26 |
+
|
27 |
+
#: inc/php/core.php:43 inc/php/core.php:60
|
28 |
+
msgid "Upgrade to PRO"
|
29 |
+
msgstr ""
|
30 |
+
|
31 |
+
#: inc/php/core.php:59
|
32 |
+
msgid "Donate"
|
33 |
+
msgstr "捐款"
|
34 |
+
|
35 |
+
#. Plugin Name of the plugin/theme
|
36 |
+
#: inc/php/core.php:75 inc/php/page.php:27
|
37 |
+
msgid "My Custom Functions"
|
38 |
+
msgstr "我的自訂功能"
|
39 |
+
|
40 |
+
#: inc/php/core.php:75
|
41 |
+
msgid "Custom Functions"
|
42 |
+
msgstr "自訂功能"
|
43 |
+
|
44 |
+
#: inc/php/messages.php:30
|
45 |
+
msgid "Hello. I'm Arthur, the author of this plugin."
|
46 |
+
msgstr ""
|
47 |
+
|
48 |
+
#: inc/php/messages.php:32
|
49 |
+
#, php-format
|
50 |
+
msgid "Thank you for installing my plugin! I hope you will love it %s"
|
51 |
+
msgstr ""
|
52 |
+
|
53 |
+
#: inc/php/messages.php:67
|
54 |
+
msgid "You have installed an old version of this plugin."
|
55 |
+
msgstr ""
|
56 |
+
|
57 |
+
#: inc/php/messages.php:68
|
58 |
+
msgid "Please update the plugin to the latest version, and all will be fine."
|
59 |
+
msgstr ""
|
60 |
+
|
61 |
+
#: inc/php/messages.php:92
|
62 |
msgid "Custom functions updated successfully."
|
63 |
msgstr "自訂功能已成功更新"
|
64 |
|
65 |
+
#: inc/php/messages.php:110
|
66 |
msgid "Sorry, but your code causes a \"Fatal error\", so it is not applied!"
|
67 |
msgstr "抱歉!您的程式碼造成了「嚴重錯誤」,所以並沒有套用它!"
|
68 |
|
69 |
+
#: inc/php/messages.php:111
|
70 |
msgid "Please, check the code and try again."
|
71 |
msgstr "請重新檢查程式碼再試一次"
|
72 |
|
73 |
+
#: inc/php/page.php:30
|
74 |
+
#, php-format
|
75 |
+
msgid "by %s Arthur Gareginyan %s"
|
76 |
+
msgstr ""
|
77 |
+
|
78 |
+
#: inc/php/page.php:42
|
79 |
+
msgid "Main"
|
80 |
+
msgstr ""
|
81 |
+
|
82 |
+
#: inc/php/page.php:43 inc/php/page.php:63
|
83 |
+
msgid "Usage"
|
84 |
+
msgstr ""
|
85 |
+
|
86 |
+
#: inc/php/page.php:44
|
87 |
+
msgid "F.A.Q."
|
88 |
+
msgstr ""
|
89 |
|
90 |
+
#: inc/php/page.php:45 inc/php/page.php:197
|
91 |
+
msgid "Author"
|
92 |
+
msgstr ""
|
93 |
+
|
94 |
+
#: inc/php/page.php:46 inc/php/page.php:206 inc/php/settings.php:37
|
95 |
+
#: inc/php/settings.php:90
|
96 |
+
msgid "Support"
|
97 |
+
msgstr ""
|
98 |
+
|
99 |
+
#: inc/php/page.php:47
|
100 |
+
msgid "Family"
|
101 |
+
msgstr ""
|
102 |
+
|
103 |
+
#: inc/php/page.php:65
|
104 |
msgid ""
|
105 |
+
"To add your custom functions (the PHP code) to your website, simply follow "
|
106 |
+
"these steps:"
|
107 |
msgstr ""
|
108 |
|
109 |
+
#: inc/php/page.php:67
|
110 |
+
msgid "Go to the \"Main\" tab."
|
111 |
+
msgstr ""
|
112 |
|
113 |
+
#: inc/php/page.php:68
|
114 |
msgid ""
|
115 |
+
"Add your PHP code to the field, switch the toggle to the \"ON\" position and "
|
116 |
+
"click the \"Save Changes\" button."
|
117 |
msgstr ""
|
118 |
|
119 |
+
#: inc/php/page.php:69
|
120 |
+
msgid "Example of PHP code:"
|
121 |
+
msgstr ""
|
122 |
|
123 |
+
#: inc/php/page.php:75 inc/php/page.php:76 inc/php/page.php:80
|
124 |
+
msgid "Note!"
|
125 |
+
msgstr ""
|
126 |
+
|
127 |
+
#: inc/php/page.php:75
|
128 |
msgid ""
|
129 |
+
"Please do not wrap your PHP code in the <code><?php</code>...<code>?></"
|
130 |
+
"code> HTML tags."
|
131 |
msgstr ""
|
|
|
132 |
|
133 |
+
#: inc/php/page.php:76
|
134 |
+
msgid ""
|
135 |
+
"Before use, please read the instructions on the F.A.Q. tab on what to do in "
|
136 |
+
"case of a website crash."
|
137 |
+
msgstr ""
|
138 |
|
139 |
+
#: inc/php/page.php:78
|
140 |
+
msgid "Enjoy the result of applying your PHP code."
|
141 |
msgstr ""
|
142 |
|
143 |
+
#: inc/php/page.php:78
|
144 |
+
msgid "It's that simple!"
|
145 |
msgstr ""
|
146 |
|
147 |
+
#: inc/php/page.php:80
|
148 |
+
msgid "If you want more options then tell me and I will be happy to add it."
|
149 |
+
msgstr "如果您還想要更多的選項請跟我說,我會很樂意加上去"
|
150 |
+
|
151 |
+
#: inc/php/page.php:89
|
152 |
+
msgid "Frequently Asked Questions"
|
153 |
+
msgstr ""
|
154 |
+
|
155 |
+
#: inc/php/page.php:111
|
156 |
+
msgid "Will this plugin work on my WordPress.COM website?"
|
157 |
+
msgstr ""
|
158 |
+
|
159 |
+
#: inc/php/page.php:112
|
160 |
+
msgid ""
|
161 |
+
"Sorry, this plugin is available for use only on self-hosted (WordPress.ORG) "
|
162 |
+
"websites."
|
163 |
+
msgstr ""
|
164 |
+
|
165 |
+
#: inc/php/page.php:114
|
166 |
+
msgid "Can I use this plugin on my language?"
|
167 |
+
msgstr ""
|
168 |
+
|
169 |
+
#: inc/php/page.php:116
|
170 |
+
#, php-format
|
171 |
+
msgid ""
|
172 |
+
"Yes. But If your language is not available then you can make one. This "
|
173 |
+
"plugin is ready for translation. The<code>.pot</code>file is included and "
|
174 |
+
"placed in the <code>languages</code> folder. Many of plugin users would be "
|
175 |
+
"delighted if you shared your translation with the community. Just send the "
|
176 |
+
"translation files (<code>*.po, *.mo</code>) to me at the %s and I will "
|
177 |
+
"include the translation within the next plugin update."
|
178 |
+
msgstr ""
|
179 |
+
|
180 |
+
#: inc/php/page.php:121
|
181 |
+
msgid "How does it work?"
|
182 |
+
msgstr ""
|
183 |
+
|
184 |
+
#: inc/php/page.php:122
|
185 |
+
msgid ""
|
186 |
+
"On the \"Settings\" tab, add your PHP code to the field, switch the toggle "
|
187 |
+
"to the \"ON\" position and click the \"Save Changes\" button. Enjoy the "
|
188 |
+
"result of applying your PHP code. It's that simple!"
|
189 |
+
msgstr ""
|
190 |
+
|
191 |
+
#: inc/php/page.php:124
|
192 |
+
msgid "Can I use HTML/CSS/JS code integrated in PHP code?"
|
193 |
+
msgstr ""
|
194 |
+
|
195 |
+
#: inc/php/page.php:125
|
196 |
+
msgid "Yes. But you need to do it properly, like this:"
|
197 |
+
msgstr ""
|
198 |
+
|
199 |
+
#: inc/php/page.php:135
|
200 |
+
msgid "How much of PHP code (characters) I can enter in the text field?"
|
201 |
+
msgstr ""
|
202 |
+
|
203 |
+
#: inc/php/page.php:136
|
204 |
+
msgid "I don't limit the number of characters."
|
205 |
+
msgstr ""
|
206 |
+
|
207 |
+
#: inc/php/page.php:138
|
208 |
+
msgid ""
|
209 |
+
"On the plugin settings page, an error message appears. What could be wrong?"
|
210 |
+
msgstr ""
|
211 |
+
|
212 |
+
#: inc/php/page.php:139
|
213 |
+
msgid "Here are a few of the most likely causes of the error message:"
|
214 |
+
msgstr ""
|
215 |
+
|
216 |
+
#: inc/php/page.php:140
|
217 |
+
msgid ""
|
218 |
+
"1. You make a syntax error in the code that you have entered. Check the "
|
219 |
+
"syntax of your code and try again."
|
220 |
+
msgstr ""
|
221 |
|
222 |
+
#: inc/php/page.php:141
|
223 |
+
msgid ""
|
224 |
+
"2. You entered two functions with the same name. Use a unique names for your "
|
225 |
+
"functions."
|
226 |
+
msgstr ""
|
227 |
+
|
228 |
+
#: inc/php/page.php:142
|
229 |
+
msgid ""
|
230 |
+
"3. You have entered function with a name that is already occupied by another "
|
231 |
+
"function. Use a unique name for your function."
|
232 |
+
msgstr ""
|
233 |
+
|
234 |
+
#: inc/php/page.php:143
|
235 |
+
msgid ""
|
236 |
+
"4. You are trying to overwrite an existing function (of WordPress, theme, or "
|
237 |
+
"plugin). Instead, use filters and hooks."
|
238 |
+
msgstr ""
|
239 |
+
|
240 |
+
#: inc/php/page.php:145
|
241 |
+
msgid "Does this plugin requires any modification of the theme?"
|
242 |
+
msgstr ""
|
243 |
+
|
244 |
+
#: inc/php/page.php:146
|
245 |
+
msgid ""
|
246 |
+
"Absolutely not. This plugin is configurable entirely from the plugin "
|
247 |
+
"settings page."
|
248 |
+
msgstr ""
|
249 |
+
|
250 |
+
#: inc/php/page.php:148
|
251 |
+
msgid "Does this require any knowledge of HTML or CSS?"
|
252 |
+
msgstr ""
|
253 |
+
|
254 |
+
#: inc/php/page.php:149
|
255 |
+
msgid ""
|
256 |
+
"This plugin can be configured with no knowledge of HTML or CSS, using an "
|
257 |
+
"easy-to-use plugin settings page. But you need to know the HTML or CSS in "
|
258 |
+
"order to add/remove/modify the HTML or CSS code by using this plugin."
|
259 |
+
msgstr ""
|
260 |
+
|
261 |
+
#: inc/php/page.php:151
|
262 |
+
msgid "It's not working. What could be wrong?"
|
263 |
+
msgstr ""
|
264 |
+
|
265 |
+
#: inc/php/page.php:152
|
266 |
+
msgid ""
|
267 |
+
"As with every plugin, it's possible that things don't work. The most common "
|
268 |
+
"reason for this is a web browser's cache. Every web browser stores a cache "
|
269 |
+
"of the websites you visit (pages, images, and etc.) to reduce bandwidth "
|
270 |
+
"usage and server load. This is called the browser's cache. Clearing your "
|
271 |
+
"browser's cache may solve the problem."
|
272 |
+
msgstr ""
|
273 |
+
|
274 |
+
#: inc/php/page.php:153
|
275 |
+
msgid ""
|
276 |
+
"It's impossible to tell what could be wrong exactly, but if you post a "
|
277 |
+
"support request in the plugin's support forum on WordPress.org, I'd be happy "
|
278 |
+
"to give it a look and try to help out. Please include as much information as "
|
279 |
+
"possible, including a link to your website where the problem can be seen."
|
280 |
+
msgstr ""
|
281 |
+
|
282 |
+
#: inc/php/page.php:155
|
283 |
+
msgid "What to do if this plugin caused the white screen (WSOD)?"
|
284 |
+
msgstr ""
|
285 |
+
|
286 |
+
#: inc/php/page.php:156
|
287 |
+
msgid ""
|
288 |
+
"This plugin is not perfect, so there are times when the entered custom code "
|
289 |
+
"causes the error and white screen (WSOD). This is due to the fact that your "
|
290 |
+
"custom code has a syntax error that this plugin could not detect. If this "
|
291 |
+
"happened with you then do the following and all will be fine."
|
292 |
+
msgstr ""
|
293 |
+
|
294 |
+
#: inc/php/page.php:158
|
295 |
+
msgid ""
|
296 |
+
"Via FTP, go to the plugin folder (in <code>wp-content/plugins/my-custom-"
|
297 |
+
"functions/</code>). Rename the \"START\" file to \"STOP\"."
|
298 |
+
msgstr ""
|
299 |
+
|
300 |
+
#: inc/php/page.php:159
|
301 |
+
msgid "Return to the plugin settings page."
|
302 |
+
msgstr ""
|
303 |
+
|
304 |
+
#: inc/php/page.php:160
|
305 |
+
msgid "Edit/fix your custom code that you entered before the crash."
|
306 |
+
msgstr ""
|
307 |
+
|
308 |
+
#: inc/php/page.php:161
|
309 |
+
msgid "Rename the \"STOP\" file to \"START\" and you're done!"
|
310 |
+
msgstr ""
|
311 |
+
|
312 |
+
#: inc/php/page.php:163
|
313 |
+
msgid ""
|
314 |
+
"This plugin stored you entered code in the Database of your website. For "
|
315 |
+
"getting your code, you also can go to the <code>Database</code> ➡ "
|
316 |
+
"Table <code>wp_options</code> ➡ Option "
|
317 |
+
"<code>anarcho_cfunctions_settings</code> ➡ <code>option_value</code>."
|
318 |
+
msgstr ""
|
319 |
+
|
320 |
+
#: inc/php/page.php:165
|
321 |
+
msgid "Where to report bug if found?"
|
322 |
+
msgstr ""
|
323 |
+
|
324 |
+
#: inc/php/page.php:167
|
325 |
+
#, php-format
|
326 |
+
msgid "Please visit the %s Dedicated Plugin Page on GitHub %s and report."
|
327 |
+
msgstr ""
|
328 |
+
|
329 |
+
#: inc/php/page.php:173
|
330 |
+
msgid "Where to share any ideas or suggestions to make the plugin better?"
|
331 |
+
msgstr ""
|
332 |
+
|
333 |
+
#: inc/php/page.php:175
|
334 |
+
#, php-format
|
335 |
+
msgid ""
|
336 |
+
"Any suggestions are very welcome! Please send me an email to %s "
|
337 |
+
"arthurgareginyan@gmail.com %s. Thank you!"
|
338 |
+
msgstr ""
|
339 |
+
|
340 |
+
#: inc/php/page.php:181
|
341 |
+
msgid "I love this plugin! Can I help somehow?"
|
342 |
+
msgstr ""
|
343 |
+
|
344 |
+
#: inc/php/page.php:183
|
345 |
+
#, php-format
|
346 |
+
msgid ""
|
347 |
+
"Yes, any financial contributions are welcome! Just visit %s my website %s, "
|
348 |
+
"click on the donate button, and thank you!"
|
349 |
+
msgstr ""
|
350 |
+
|
351 |
+
#: inc/php/settings.php:21
|
352 |
+
msgid "About"
|
353 |
+
msgstr "關於"
|
354 |
+
|
355 |
+
#: inc/php/settings.php:23
|
356 |
+
msgid ""
|
357 |
+
"This plugin allows you to easily and safely add your custom functions (PHP "
|
358 |
+
"code) to your website."
|
359 |
+
msgstr ""
|
360 |
+
|
361 |
+
#: inc/php/settings.php:28
|
362 |
+
msgid "Upgrade"
|
363 |
+
msgstr ""
|
364 |
+
|
365 |
+
#: inc/php/settings.php:39 inc/php/settings.php:92
|
366 |
msgid ""
|
367 |
"I'm an independent developer, without a regular income, so every little "
|
368 |
"contribution helps cover my costs and lets me spend more time building "
|
369 |
"things for people like you to enjoy."
|
370 |
msgstr ""
|
371 |
|
372 |
+
#: inc/php/settings.php:40 inc/php/settings.php:93
|
373 |
+
msgid "Donate with PayPal"
|
374 |
+
msgstr ""
|
375 |
+
|
376 |
+
#: inc/php/settings.php:41 inc/php/settings.php:94
|
377 |
msgid "Thanks for your support!"
|
378 |
msgstr "謝謝您的贊助!"
|
379 |
|
380 |
+
#: inc/php/settings.php:46
|
381 |
+
msgid "Help"
|
382 |
+
msgstr "幫助"
|
383 |
+
|
384 |
+
#: inc/php/settings.php:48
|
385 |
+
msgid "Got something to say? Need help?"
|
386 |
+
msgstr ""
|
387 |
+
|
388 |
+
#: inc/php/settings.php:76
|
389 |
msgid "Functions (PHP code)"
|
390 |
msgstr ""
|
391 |
|
392 |
+
#: inc/php/settings.php:87
|
393 |
msgid "Save Changes"
|
394 |
msgstr "儲存變更"
|
395 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
396 |
#. Plugin URI of the plugin/theme
|
397 |
msgid "https://github.com/ArthurGareginyan/my-custom-functions"
|
398 |
msgstr ""
|
399 |
|
400 |
#. Description of the plugin/theme
|
401 |
msgid ""
|
402 |
+
"Easily and safely add your custom functions (PHP code) directly out of your "
|
403 |
"WordPress Dashboard without need of an external editor."
|
404 |
msgstr ""
|
405 |
|
411 |
msgid "http://www.arthurgareginyan.com"
|
412 |
msgstr ""
|
413 |
|
414 |
+
#~ msgid ""
|
415 |
+
#~ "To use, enter your custom functions, then click \"Save Changes\". It's "
|
416 |
+
#~ "that simple!"
|
417 |
+
#~ msgstr ""
|
418 |
+
#~ "要使用它,請輸入您的自訂功能然後按下「儲存變更」就可以了,就是這麼簡單!"
|
419 |
+
|
420 |
+
#~ msgid "Using"
|
421 |
+
#~ msgstr "用法"
|
422 |
+
|
423 |
#~ msgid ""
|
424 |
#~ "by <a href=\"http://www.arthurgareginyan.com\" target=\"_blank\">Arthur "
|
425 |
#~ "\"Berserkr\" Gareginyan</a>"
|
435 |
#~ "這個外掛讓你簡單而且安全地加上自已的功能、程式片斷或任何自訂程式碼到你的網"
|
436 |
#~ "站"
|
437 |
|
|
|
|
|
|
|
438 |
#~ msgid ""
|
439 |
#~ "If you like this plugin and find it useful, help me to make this plugin "
|
440 |
#~ "even better and keep it up-to-date."
|
languages/my-custom-functions.pot
CHANGED
@@ -3,7 +3,7 @@ msgid ""
|
|
3 |
msgstr ""
|
4 |
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
|
5 |
"Project-Id-Version: My Custom Functions\n"
|
6 |
-
"POT-Creation-Date:
|
7 |
"PO-Revision-Date: 2015-08-30 16:22+0300\n"
|
8 |
"Last-Translator: \n"
|
9 |
"Language-Team: \n"
|
@@ -14,96 +14,363 @@ msgstr ""
|
|
14 |
"X-Poedit-Basepath: ..\n"
|
15 |
"X-Poedit-WPHeader: my-custom-functions.php\n"
|
16 |
"X-Poedit-SourceCharset: UTF-8\n"
|
17 |
-
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
|
18 |
-
"
|
19 |
-
"
|
20 |
"X-Poedit-SearchPath-0: .\n"
|
21 |
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
22 |
|
23 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
24 |
msgid "Custom functions updated successfully."
|
25 |
msgstr ""
|
26 |
|
27 |
-
#: inc/php/
|
28 |
msgid "Sorry, but your code causes a \"Fatal error\", so it is not applied!"
|
29 |
msgstr ""
|
30 |
|
31 |
-
#: inc/php/
|
32 |
msgid "Please, check the code and try again."
|
33 |
msgstr ""
|
34 |
|
35 |
-
|
36 |
-
|
37 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
38 |
msgstr ""
|
39 |
|
40 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
41 |
msgid ""
|
42 |
-
"
|
43 |
-
"
|
44 |
msgstr ""
|
45 |
|
46 |
-
#: inc/php/
|
47 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
48 |
msgstr ""
|
49 |
|
50 |
-
#: inc/php/
|
51 |
msgid ""
|
52 |
-
"
|
53 |
-
|
|
|
|
|
|
|
54 |
msgstr ""
|
55 |
|
56 |
-
#: inc/php/
|
57 |
-
msgid "
|
58 |
msgstr ""
|
59 |
|
60 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
61 |
msgid ""
|
62 |
-
"
|
63 |
-
"
|
|
|
|
|
|
|
64 |
msgstr ""
|
65 |
|
66 |
-
#: inc/php/
|
67 |
-
msgid "
|
68 |
msgstr ""
|
69 |
|
70 |
-
#: inc/php/
|
71 |
-
msgid "
|
|
|
|
|
72 |
msgstr ""
|
73 |
|
74 |
-
#: inc/php/
|
75 |
-
msgid "
|
76 |
msgstr ""
|
77 |
|
78 |
-
#: inc/php/
|
79 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
80 |
msgstr ""
|
81 |
|
82 |
-
#: inc/php/
|
83 |
msgid ""
|
84 |
-
"
|
85 |
-
"
|
86 |
-
"things for people like you to enjoy."
|
87 |
msgstr ""
|
88 |
|
89 |
-
#: inc/php/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
90 |
msgid "Thanks for your support!"
|
91 |
msgstr ""
|
92 |
|
93 |
-
#: inc/php/
|
94 |
-
msgid "
|
95 |
msgstr ""
|
96 |
|
97 |
-
#: inc/php/
|
98 |
-
msgid "
|
99 |
msgstr ""
|
100 |
|
101 |
-
#:
|
102 |
-
msgid "
|
103 |
msgstr ""
|
104 |
|
105 |
-
#:
|
106 |
-
msgid "
|
107 |
msgstr ""
|
108 |
|
109 |
#. Plugin URI of the plugin/theme
|
@@ -112,8 +379,8 @@ msgstr ""
|
|
112 |
|
113 |
#. Description of the plugin/theme
|
114 |
msgid ""
|
115 |
-
"Easily and safely add your
|
116 |
-
"
|
117 |
msgstr ""
|
118 |
|
119 |
#. Author of the plugin/theme
|
3 |
msgstr ""
|
4 |
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
|
5 |
"Project-Id-Version: My Custom Functions\n"
|
6 |
+
"POT-Creation-Date: 2017-05-07 13:23+0300\n"
|
7 |
"PO-Revision-Date: 2015-08-30 16:22+0300\n"
|
8 |
"Last-Translator: \n"
|
9 |
"Language-Team: \n"
|
14 |
"X-Poedit-Basepath: ..\n"
|
15 |
"X-Poedit-WPHeader: my-custom-functions.php\n"
|
16 |
"X-Poedit-SourceCharset: UTF-8\n"
|
17 |
+
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;esc_attr_e;"
|
18 |
+
"esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;_nx_noop:3c,1,2;"
|
19 |
+
"__ngettext_noop:1,2\n"
|
20 |
"X-Poedit-SearchPath-0: .\n"
|
21 |
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
22 |
|
23 |
+
#: inc/php/core.php:31
|
24 |
+
msgid "Settings"
|
25 |
+
msgstr ""
|
26 |
+
|
27 |
+
#: inc/php/core.php:43 inc/php/core.php:60
|
28 |
+
msgid "Upgrade to PRO"
|
29 |
+
msgstr ""
|
30 |
+
|
31 |
+
#: inc/php/core.php:59
|
32 |
+
msgid "Donate"
|
33 |
+
msgstr ""
|
34 |
+
|
35 |
+
#. Plugin Name of the plugin/theme
|
36 |
+
#: inc/php/core.php:75 inc/php/page.php:27
|
37 |
+
msgid "My Custom Functions"
|
38 |
+
msgstr ""
|
39 |
+
|
40 |
+
#: inc/php/core.php:75
|
41 |
+
msgid "Custom Functions"
|
42 |
+
msgstr ""
|
43 |
+
|
44 |
+
#: inc/php/messages.php:30
|
45 |
+
msgid "Hello. I'm Arthur, the author of this plugin."
|
46 |
+
msgstr ""
|
47 |
+
|
48 |
+
#: inc/php/messages.php:32
|
49 |
+
#, php-format
|
50 |
+
msgid "Thank you for installing my plugin! I hope you will love it %s"
|
51 |
+
msgstr ""
|
52 |
+
|
53 |
+
#: inc/php/messages.php:67
|
54 |
+
msgid "You have installed an old version of this plugin."
|
55 |
+
msgstr ""
|
56 |
+
|
57 |
+
#: inc/php/messages.php:68
|
58 |
+
msgid "Please update the plugin to the latest version, and all will be fine."
|
59 |
+
msgstr ""
|
60 |
+
|
61 |
+
#: inc/php/messages.php:92
|
62 |
msgid "Custom functions updated successfully."
|
63 |
msgstr ""
|
64 |
|
65 |
+
#: inc/php/messages.php:110
|
66 |
msgid "Sorry, but your code causes a \"Fatal error\", so it is not applied!"
|
67 |
msgstr ""
|
68 |
|
69 |
+
#: inc/php/messages.php:111
|
70 |
msgid "Please, check the code and try again."
|
71 |
msgstr ""
|
72 |
|
73 |
+
#: inc/php/page.php:30
|
74 |
+
#, php-format
|
75 |
+
msgid "by %s Arthur Gareginyan %s"
|
76 |
+
msgstr ""
|
77 |
+
|
78 |
+
#: inc/php/page.php:42
|
79 |
+
msgid "Main"
|
80 |
+
msgstr ""
|
81 |
+
|
82 |
+
#: inc/php/page.php:43 inc/php/page.php:63
|
83 |
+
msgid "Usage"
|
84 |
msgstr ""
|
85 |
|
86 |
+
#: inc/php/page.php:44
|
87 |
+
msgid "F.A.Q."
|
88 |
+
msgstr ""
|
89 |
+
|
90 |
+
#: inc/php/page.php:45 inc/php/page.php:197
|
91 |
+
msgid "Author"
|
92 |
+
msgstr ""
|
93 |
+
|
94 |
+
#: inc/php/page.php:46 inc/php/page.php:206 inc/php/settings.php:37 inc/php/settings.php:90
|
95 |
+
msgid "Support"
|
96 |
+
msgstr ""
|
97 |
+
|
98 |
+
#: inc/php/page.php:47
|
99 |
+
msgid "Family"
|
100 |
+
msgstr ""
|
101 |
+
|
102 |
+
#: inc/php/page.php:65
|
103 |
+
msgid "To add your custom functions (the PHP code) to your website, simply follow these steps:"
|
104 |
+
msgstr ""
|
105 |
+
|
106 |
+
#: inc/php/page.php:67
|
107 |
+
msgid "Go to the \"Main\" tab."
|
108 |
+
msgstr ""
|
109 |
+
|
110 |
+
#: inc/php/page.php:68
|
111 |
msgid ""
|
112 |
+
"Add your PHP code to the field, switch the toggle to the \"ON\" position and click the \"Save "
|
113 |
+
"Changes\" button."
|
114 |
msgstr ""
|
115 |
|
116 |
+
#: inc/php/page.php:69
|
117 |
+
msgid "Example of PHP code:"
|
118 |
+
msgstr ""
|
119 |
+
|
120 |
+
#: inc/php/page.php:75 inc/php/page.php:76 inc/php/page.php:80
|
121 |
+
msgid "Note!"
|
122 |
+
msgstr ""
|
123 |
+
|
124 |
+
#: inc/php/page.php:75
|
125 |
+
msgid "Please do not wrap your PHP code in the <code><?php</code>...<code>?></code> HTML tags."
|
126 |
msgstr ""
|
127 |
|
128 |
+
#: inc/php/page.php:76
|
129 |
msgid ""
|
130 |
+
"Before use, please read the instructions on the F.A.Q. tab on what to do in case of a website crash."
|
131 |
+
msgstr ""
|
132 |
+
|
133 |
+
#: inc/php/page.php:78
|
134 |
+
msgid "Enjoy the result of applying your PHP code."
|
135 |
msgstr ""
|
136 |
|
137 |
+
#: inc/php/page.php:78
|
138 |
+
msgid "It's that simple!"
|
139 |
msgstr ""
|
140 |
|
141 |
+
#: inc/php/page.php:80
|
142 |
+
msgid "If you want more options then tell me and I will be happy to add it."
|
143 |
+
msgstr ""
|
144 |
+
|
145 |
+
#: inc/php/page.php:89
|
146 |
+
msgid "Frequently Asked Questions"
|
147 |
+
msgstr ""
|
148 |
+
|
149 |
+
#: inc/php/page.php:111
|
150 |
+
msgid "Will this plugin work on my WordPress.COM website?"
|
151 |
+
msgstr ""
|
152 |
+
|
153 |
+
#: inc/php/page.php:112
|
154 |
+
msgid "Sorry, this plugin is available for use only on self-hosted (WordPress.ORG) websites."
|
155 |
+
msgstr ""
|
156 |
+
|
157 |
+
#: inc/php/page.php:114
|
158 |
+
msgid "Can I use this plugin on my language?"
|
159 |
+
msgstr ""
|
160 |
+
|
161 |
+
#: inc/php/page.php:116
|
162 |
+
#, php-format
|
163 |
msgid ""
|
164 |
+
"Yes. But If your language is not available then you can make one. This plugin is ready for "
|
165 |
+
"translation. The<code>.pot</code>file is included and placed in the <code>languages</code> folder. "
|
166 |
+
"Many of plugin users would be delighted if you shared your translation with the community. Just "
|
167 |
+
"send the translation files (<code>*.po, *.mo</code>) to me at the %s and I will include the "
|
168 |
+
"translation within the next plugin update."
|
169 |
msgstr ""
|
170 |
|
171 |
+
#: inc/php/page.php:121
|
172 |
+
msgid "How does it work?"
|
173 |
msgstr ""
|
174 |
|
175 |
+
#: inc/php/page.php:122
|
176 |
+
msgid ""
|
177 |
+
"On the \"Settings\" tab, add your PHP code to the field, switch the toggle to the \"ON\" position "
|
178 |
+
"and click the \"Save Changes\" button. Enjoy the result of applying your PHP code. It's that simple!"
|
179 |
msgstr ""
|
180 |
|
181 |
+
#: inc/php/page.php:124
|
182 |
+
msgid "Can I use HTML/CSS/JS code integrated in PHP code?"
|
183 |
msgstr ""
|
184 |
|
185 |
+
#: inc/php/page.php:125
|
186 |
+
msgid "Yes. But you need to do it properly, like this:"
|
187 |
+
msgstr ""
|
188 |
+
|
189 |
+
#: inc/php/page.php:135
|
190 |
+
msgid "How much of PHP code (characters) I can enter in the text field?"
|
191 |
+
msgstr ""
|
192 |
+
|
193 |
+
#: inc/php/page.php:136
|
194 |
+
msgid "I don't limit the number of characters."
|
195 |
+
msgstr ""
|
196 |
+
|
197 |
+
#: inc/php/page.php:138
|
198 |
+
msgid "On the plugin settings page, an error message appears. What could be wrong?"
|
199 |
+
msgstr ""
|
200 |
+
|
201 |
+
#: inc/php/page.php:139
|
202 |
+
msgid "Here are a few of the most likely causes of the error message:"
|
203 |
msgstr ""
|
204 |
|
205 |
+
#: inc/php/page.php:140
|
206 |
msgid ""
|
207 |
+
"1. You make a syntax error in the code that you have entered. Check the syntax of your code and try "
|
208 |
+
"again."
|
|
|
209 |
msgstr ""
|
210 |
|
211 |
+
#: inc/php/page.php:141
|
212 |
+
msgid "2. You entered two functions with the same name. Use a unique names for your functions."
|
213 |
+
msgstr ""
|
214 |
+
|
215 |
+
#: inc/php/page.php:142
|
216 |
+
msgid ""
|
217 |
+
"3. You have entered function with a name that is already occupied by another function. Use a unique "
|
218 |
+
"name for your function."
|
219 |
+
msgstr ""
|
220 |
+
|
221 |
+
#: inc/php/page.php:143
|
222 |
+
msgid ""
|
223 |
+
"4. You are trying to overwrite an existing function (of WordPress, theme, or plugin). Instead, use "
|
224 |
+
"filters and hooks."
|
225 |
+
msgstr ""
|
226 |
+
|
227 |
+
#: inc/php/page.php:145
|
228 |
+
msgid "Does this plugin requires any modification of the theme?"
|
229 |
+
msgstr ""
|
230 |
+
|
231 |
+
#: inc/php/page.php:146
|
232 |
+
msgid "Absolutely not. This plugin is configurable entirely from the plugin settings page."
|
233 |
+
msgstr ""
|
234 |
+
|
235 |
+
#: inc/php/page.php:148
|
236 |
+
msgid "Does this require any knowledge of HTML or CSS?"
|
237 |
+
msgstr ""
|
238 |
+
|
239 |
+
#: inc/php/page.php:149
|
240 |
+
msgid ""
|
241 |
+
"This plugin can be configured with no knowledge of HTML or CSS, using an easy-to-use plugin "
|
242 |
+
"settings page. But you need to know the HTML or CSS in order to add/remove/modify the HTML or CSS "
|
243 |
+
"code by using this plugin."
|
244 |
+
msgstr ""
|
245 |
+
|
246 |
+
#: inc/php/page.php:151
|
247 |
+
msgid "It's not working. What could be wrong?"
|
248 |
+
msgstr ""
|
249 |
+
|
250 |
+
#: inc/php/page.php:152
|
251 |
+
msgid ""
|
252 |
+
"As with every plugin, it's possible that things don't work. The most common reason for this is a "
|
253 |
+
"web browser's cache. Every web browser stores a cache of the websites you visit (pages, images, and "
|
254 |
+
"etc.) to reduce bandwidth usage and server load. This is called the browser's cache. Clearing your "
|
255 |
+
"browser's cache may solve the problem."
|
256 |
+
msgstr ""
|
257 |
+
|
258 |
+
#: inc/php/page.php:153
|
259 |
+
msgid ""
|
260 |
+
"It's impossible to tell what could be wrong exactly, but if you post a support request in the "
|
261 |
+
"plugin's support forum on WordPress.org, I'd be happy to give it a look and try to help out. Please "
|
262 |
+
"include as much information as possible, including a link to your website where the problem can be "
|
263 |
+
"seen."
|
264 |
+
msgstr ""
|
265 |
+
|
266 |
+
#: inc/php/page.php:155
|
267 |
+
msgid "What to do if this plugin caused the white screen (WSOD)?"
|
268 |
+
msgstr ""
|
269 |
+
|
270 |
+
#: inc/php/page.php:156
|
271 |
+
msgid ""
|
272 |
+
"This plugin is not perfect, so there are times when the entered custom code causes the error and "
|
273 |
+
"white screen (WSOD). This is due to the fact that your custom code has a syntax error that this "
|
274 |
+
"plugin could not detect. If this happened with you then do the following and all will be fine."
|
275 |
+
msgstr ""
|
276 |
+
|
277 |
+
#: inc/php/page.php:158
|
278 |
+
msgid ""
|
279 |
+
"Via FTP, go to the plugin folder (in <code>wp-content/plugins/my-custom-functions/</code>). Rename "
|
280 |
+
"the \"START\" file to \"STOP\"."
|
281 |
+
msgstr ""
|
282 |
+
|
283 |
+
#: inc/php/page.php:159
|
284 |
+
msgid "Return to the plugin settings page."
|
285 |
+
msgstr ""
|
286 |
+
|
287 |
+
#: inc/php/page.php:160
|
288 |
+
msgid "Edit/fix your custom code that you entered before the crash."
|
289 |
+
msgstr ""
|
290 |
+
|
291 |
+
#: inc/php/page.php:161
|
292 |
+
msgid "Rename the \"STOP\" file to \"START\" and you're done!"
|
293 |
+
msgstr ""
|
294 |
+
|
295 |
+
#: inc/php/page.php:163
|
296 |
+
msgid ""
|
297 |
+
"This plugin stored you entered code in the Database of your website. For getting your code, you "
|
298 |
+
"also can go to the <code>Database</code> ➡ Table <code>wp_options</code> ➡ Option "
|
299 |
+
"<code>anarcho_cfunctions_settings</code> ➡ <code>option_value</code>."
|
300 |
+
msgstr ""
|
301 |
+
|
302 |
+
#: inc/php/page.php:165
|
303 |
+
msgid "Where to report bug if found?"
|
304 |
+
msgstr ""
|
305 |
+
|
306 |
+
#: inc/php/page.php:167
|
307 |
+
#, php-format
|
308 |
+
msgid "Please visit the %s Dedicated Plugin Page on GitHub %s and report."
|
309 |
+
msgstr ""
|
310 |
+
|
311 |
+
#: inc/php/page.php:173
|
312 |
+
msgid "Where to share any ideas or suggestions to make the plugin better?"
|
313 |
+
msgstr ""
|
314 |
+
|
315 |
+
#: inc/php/page.php:175
|
316 |
+
#, php-format
|
317 |
+
msgid ""
|
318 |
+
"Any suggestions are very welcome! Please send me an email to %s arthurgareginyan@gmail.com %s. "
|
319 |
+
"Thank you!"
|
320 |
+
msgstr ""
|
321 |
+
|
322 |
+
#: inc/php/page.php:181
|
323 |
+
msgid "I love this plugin! Can I help somehow?"
|
324 |
+
msgstr ""
|
325 |
+
|
326 |
+
#: inc/php/page.php:183
|
327 |
+
#, php-format
|
328 |
+
msgid ""
|
329 |
+
"Yes, any financial contributions are welcome! Just visit %s my website %s, click on the donate "
|
330 |
+
"button, and thank you!"
|
331 |
+
msgstr ""
|
332 |
+
|
333 |
+
#: inc/php/settings.php:21
|
334 |
+
msgid "About"
|
335 |
+
msgstr ""
|
336 |
+
|
337 |
+
#: inc/php/settings.php:23
|
338 |
+
msgid ""
|
339 |
+
"This plugin allows you to easily and safely add your custom functions (PHP code) to your website."
|
340 |
+
msgstr ""
|
341 |
+
|
342 |
+
#: inc/php/settings.php:28
|
343 |
+
msgid "Upgrade"
|
344 |
+
msgstr ""
|
345 |
+
|
346 |
+
#: inc/php/settings.php:39 inc/php/settings.php:92
|
347 |
+
msgid ""
|
348 |
+
"I'm an independent developer, without a regular income, so every little contribution helps cover my "
|
349 |
+
"costs and lets me spend more time building things for people like you to enjoy."
|
350 |
+
msgstr ""
|
351 |
+
|
352 |
+
#: inc/php/settings.php:40 inc/php/settings.php:93
|
353 |
+
msgid "Donate with PayPal"
|
354 |
+
msgstr ""
|
355 |
+
|
356 |
+
#: inc/php/settings.php:41 inc/php/settings.php:94
|
357 |
msgid "Thanks for your support!"
|
358 |
msgstr ""
|
359 |
|
360 |
+
#: inc/php/settings.php:46
|
361 |
+
msgid "Help"
|
362 |
msgstr ""
|
363 |
|
364 |
+
#: inc/php/settings.php:48
|
365 |
+
msgid "Got something to say? Need help?"
|
366 |
msgstr ""
|
367 |
|
368 |
+
#: inc/php/settings.php:76
|
369 |
+
msgid "Functions (PHP code)"
|
370 |
msgstr ""
|
371 |
|
372 |
+
#: inc/php/settings.php:87
|
373 |
+
msgid "Save Changes"
|
374 |
msgstr ""
|
375 |
|
376 |
#. Plugin URI of the plugin/theme
|
379 |
|
380 |
#. Description of the plugin/theme
|
381 |
msgid ""
|
382 |
+
"Easily and safely add your custom functions (PHP code) directly out of your WordPress Dashboard "
|
383 |
+
"without need of an external editor."
|
384 |
msgstr ""
|
385 |
|
386 |
#. Author of the plugin/theme
|
LICENSE.txt → license.txt
RENAMED
@@ -671,4 +671,4 @@ into proprietary programs. If your program is a subroutine library, you
|
|
671 |
may consider it more useful to permit linking proprietary applications with
|
672 |
the library. If this is what you want to do, use the GNU Lesser General
|
673 |
Public License instead of this License. But first, please read
|
674 |
-
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
671 |
may consider it more useful to permit linking proprietary applications with
|
672 |
the library. If this is what you want to do, use the GNU Lesser General
|
673 |
Public License instead of this License. But first, please read
|
674 |
+
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
my-custom-functions.php
CHANGED
@@ -2,15 +2,15 @@
|
|
2 |
/**
|
3 |
* Plugin Name: My Custom Functions
|
4 |
* Plugin URI: https://github.com/ArthurGareginyan/my-custom-functions
|
5 |
-
* Description: Easily and safely add your
|
6 |
* Author: Arthur Gareginyan
|
7 |
* Author URI: http://www.arthurgareginyan.com
|
8 |
-
* Version:
|
9 |
* License: GPL3
|
10 |
* Text Domain: my-custom-functions
|
11 |
* Domain Path: /languages/
|
12 |
*
|
13 |
-
* Copyright 2014-
|
14 |
*
|
15 |
* This file is part of "My Custom Functions".
|
16 |
*
|
@@ -27,6 +27,21 @@
|
|
27 |
* You should have received a copy of the GNU General Public License
|
28 |
* along with "My Custom Functions". If not, see <http://www.gnu.org/licenses/>.
|
29 |
*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
*/
|
31 |
|
32 |
|
@@ -40,197 +55,24 @@ defined('ABSPATH') or die("Restricted access!");
|
|
40 |
/**
|
41 |
* Define constants
|
42 |
*
|
43 |
-
* @since 3.
|
44 |
*/
|
45 |
defined('MCFUNC_DIR') or define('MCFUNC_DIR', dirname(plugin_basename(__FILE__)));
|
46 |
defined('MCFUNC_BASE') or define('MCFUNC_BASE', plugin_basename(__FILE__));
|
47 |
defined('MCFUNC_URL') or define('MCFUNC_URL', plugin_dir_url(__FILE__));
|
48 |
defined('MCFUNC_PATH') or define('MCFUNC_PATH', plugin_dir_path(__FILE__));
|
49 |
defined('MCFUNC_TEXT') or define('MCFUNC_TEXT', 'my-custom-functions');
|
50 |
-
defined('MCFUNC_VERSION') or define('MCFUNC_VERSION', '
|
51 |
-
|
52 |
-
/**
|
53 |
-
* Register text domain
|
54 |
-
*
|
55 |
-
* @since 2.2
|
56 |
-
*/
|
57 |
-
function MCFunctions_textdomain() {
|
58 |
-
load_plugin_textdomain( MCFUNC_TEXT, false, MCFUNC_DIR . '/languages/' );
|
59 |
-
}
|
60 |
-
add_action( 'init', 'MCFunctions_textdomain' );
|
61 |
-
|
62 |
-
/**
|
63 |
-
* Print direct link to Custom Functions admin page
|
64 |
-
*
|
65 |
-
* Fetches array of links generated by WP Plugin admin page ( Deactivate | Edit )
|
66 |
-
* and inserts a link to the Custom Functions admin page
|
67 |
-
*
|
68 |
-
* @since 2.2
|
69 |
-
* @param array $links Array of links generated by WP in Plugin Admin page.
|
70 |
-
* @return array Array of links to be output on Plugin Admin page.
|
71 |
-
*/
|
72 |
-
function MCFunctions_settings_link( $links ) {
|
73 |
-
$settings_page = '<a href="' . admin_url( 'themes.php?page=my-custom-functions.php' ) .'">' . __( 'Settings', MCFUNC_TEXT ) . '</a>';
|
74 |
-
array_unshift( $links, $settings_page );
|
75 |
-
return $links;
|
76 |
-
}
|
77 |
-
add_filter( 'plugin_action_links_'.MCFUNC_BASE, 'MCFunctions_settings_link' );
|
78 |
-
|
79 |
-
/**
|
80 |
-
* Register "Custom Functions" submenu in "Appearance" Admin Menu
|
81 |
-
*
|
82 |
-
* @since 2.2
|
83 |
-
*/
|
84 |
-
function MCFunctions_register_submenu_page() {
|
85 |
-
add_theme_page( __( 'My Custom Functions', MCFUNC_TEXT ), __( 'Custom Functions', MCFUNC_TEXT ), 'edit_theme_options', basename( __FILE__ ), 'MCFunctions_render_submenu_page' );
|
86 |
-
}
|
87 |
-
add_action( 'admin_menu', 'MCFunctions_register_submenu_page' );
|
88 |
-
|
89 |
-
/**
|
90 |
-
* Attach Settings Page
|
91 |
-
*
|
92 |
-
* @since 3.0
|
93 |
-
*/
|
94 |
-
require_once( MCFUNC_PATH . 'inc/php/settings_page.php' );
|
95 |
-
|
96 |
-
/**
|
97 |
-
* Register settings
|
98 |
-
*
|
99 |
-
* @since 2.0
|
100 |
-
*/
|
101 |
-
function MCFunctions_register_settings() {
|
102 |
-
register_setting( 'anarcho_cfunctions_settings_group', 'anarcho_cfunctions_settings' );
|
103 |
-
register_setting( 'anarcho_cfunctions_settings_group', 'anarcho_cfunctions_error' );
|
104 |
-
}
|
105 |
-
add_action( 'admin_init', 'MCFunctions_register_settings' );
|
106 |
-
|
107 |
-
/**
|
108 |
-
* Load scripts and style sheet for settings page
|
109 |
-
*
|
110 |
-
* @since 3.1
|
111 |
-
*/
|
112 |
-
function MCFunctions_load_scripts($hook) {
|
113 |
-
|
114 |
-
// Return if the page is not a settings page of this plugin
|
115 |
-
if ( 'appearance_page_my-custom-functions' != $hook ) {
|
116 |
-
return;
|
117 |
-
}
|
118 |
-
|
119 |
-
// Style sheet
|
120 |
-
wp_enqueue_style( 'MCFunctions-admin-css', MCFUNC_URL . 'inc/css/admin.css' );
|
121 |
-
|
122 |
-
// JavaScript
|
123 |
-
wp_enqueue_script( 'MCFunctions-admin-js', MCFUNC_URL . 'inc/js/admin.js', array(), false, true );
|
124 |
-
|
125 |
-
// CodeMirror
|
126 |
-
wp_enqueue_style( 'MCFunctions-codemirror-css', MCFUNC_URL . 'inc/lib/codemirror/codemirror.css' );
|
127 |
-
wp_enqueue_script( 'MCFunctions-codemirror-js', MCFUNC_URL . 'inc/lib/codemirror/codemirror-compressed.js' );
|
128 |
-
wp_enqueue_script( 'MCFunctions-codemirror-active-line', MCFUNC_URL . 'inc/lib/codemirror/addons/active-line.js' );
|
129 |
-
|
130 |
-
}
|
131 |
-
add_action( 'admin_enqueue_scripts', 'MCFunctions_load_scripts' );
|
132 |
-
|
133 |
-
/**
|
134 |
-
* Prepare the user entered code for execution
|
135 |
-
*
|
136 |
-
* @since 2.4
|
137 |
-
*/
|
138 |
-
function MCFunctions_prepare($content) {
|
139 |
-
|
140 |
-
// Cleaning
|
141 |
-
$content = trim( $content );
|
142 |
-
$content = ltrim( $content, '<?php' );
|
143 |
-
$content = rtrim( $content, '?>' );
|
144 |
-
|
145 |
-
// Return prepared code
|
146 |
-
return $content;
|
147 |
-
}
|
148 |
-
|
149 |
-
/**
|
150 |
-
* Check the user entered code for duplicate names of functions
|
151 |
-
*
|
152 |
-
* @since 2.5.1
|
153 |
-
*/
|
154 |
-
function MCFunctions_duplicates($content) {
|
155 |
-
|
156 |
-
// Find names of user entered functions and check for duplicates
|
157 |
-
preg_match_all('/function[\s\n]+(\S+)[\s\n]*\(/i', $content, $user_func_names);
|
158 |
-
$user_func_a = count( $user_func_names[1] );
|
159 |
-
$user_func_b = count( array_unique( $user_func_names[1] ) );
|
160 |
-
|
161 |
-
// Find all names of declared user functions and mutch with names of user entered functions
|
162 |
-
$declared_func = get_defined_functions();
|
163 |
-
$declared_func_user = array_intersect( $user_func_names[1], $declared_func['user'] );
|
164 |
-
$declared_func_internal = array_intersect( $user_func_names[1], $declared_func['internal'] );
|
165 |
-
|
166 |
-
// Update error status
|
167 |
-
if ( $user_func_a != $user_func_b OR count( $declared_func_user ) != 0 OR count( $declared_func_internal ) != 0 ) {
|
168 |
-
update_option( 'anarcho_cfunctions_error', '1' ); // ERROR
|
169 |
-
$error_status = '1';
|
170 |
-
} else {
|
171 |
-
update_option( 'anarcho_cfunctions_error', '0' ); // RESET ERROR VALUE
|
172 |
-
$error_status = '0';
|
173 |
-
}
|
174 |
-
|
175 |
-
// Return error status
|
176 |
-
return $error_status;
|
177 |
-
}
|
178 |
|
179 |
/**
|
180 |
-
*
|
181 |
*
|
182 |
-
* @since
|
183 |
*/
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
// Read data from DB
|
192 |
-
$options = get_option( 'anarcho_cfunctions_settings' );
|
193 |
-
$content = isset( $options['anarcho_cfunctions-content'] ) && !empty( $options['anarcho_cfunctions-content'] ) ? $options['anarcho_cfunctions-content'] : ' ';
|
194 |
-
$enable = isset( $options['enable'] ) && !empty( $options['enable'] ) ? $options['enable'] : ' ';
|
195 |
-
|
196 |
-
// If the user entered code is disabled...
|
197 |
-
if ( $enable == 'on') {
|
198 |
-
return; // EXIT
|
199 |
-
}
|
200 |
-
|
201 |
-
// Prepare the user entered functions by calling the "prepare" function
|
202 |
-
$content = MCFunctions_prepare($content);
|
203 |
-
|
204 |
-
// If content is empty...
|
205 |
-
if ( empty($content) OR $content == ' ' ) {
|
206 |
-
return; // EXIT
|
207 |
-
}
|
208 |
-
|
209 |
-
// If the duplicates functions finded...
|
210 |
-
$duplicates = MCFunctions_duplicates($content);
|
211 |
-
if ( $duplicates != 0 ) {
|
212 |
-
return; // EXIT
|
213 |
-
}
|
214 |
-
|
215 |
-
// Parsing and execute by Eval
|
216 |
-
if( false === @eval( $content ) ) {
|
217 |
-
update_option( 'anarcho_cfunctions_error', '1' ); // ERROR
|
218 |
-
return; // EXIT
|
219 |
-
} else {
|
220 |
-
update_option( 'anarcho_cfunctions_error', '0' ); // RESET ERROR VALUE
|
221 |
-
}
|
222 |
-
}
|
223 |
-
MCFunctions_exec();
|
224 |
-
|
225 |
-
/**
|
226 |
-
* Delete options on uninstall
|
227 |
-
*
|
228 |
-
* @since 0.1
|
229 |
-
*/
|
230 |
-
function MCFunctions_uninstall() {
|
231 |
-
delete_option( 'anarcho_cfunctions_settings' );
|
232 |
-
delete_option( 'anarcho_cfunctions_error' );
|
233 |
-
}
|
234 |
-
register_uninstall_hook( __FILE__, 'MCFunctions_uninstall' );
|
235 |
-
|
236 |
-
?>
|
2 |
/**
|
3 |
* Plugin Name: My Custom Functions
|
4 |
* Plugin URI: https://github.com/ArthurGareginyan/my-custom-functions
|
5 |
+
* Description: Easily and safely add your custom functions (PHP code) directly out of your WordPress Dashboard without need of an external editor.
|
6 |
* Author: Arthur Gareginyan
|
7 |
* Author URI: http://www.arthurgareginyan.com
|
8 |
+
* Version: 4.0
|
9 |
* License: GPL3
|
10 |
* Text Domain: my-custom-functions
|
11 |
* Domain Path: /languages/
|
12 |
*
|
13 |
+
* Copyright 2014-2017 Arthur Gareginyan (email : arthurgareginyan@gmail.com)
|
14 |
*
|
15 |
* This file is part of "My Custom Functions".
|
16 |
*
|
27 |
* You should have received a copy of the GNU General Public License
|
28 |
* along with "My Custom Functions". If not, see <http://www.gnu.org/licenses/>.
|
29 |
*
|
30 |
+
*
|
31 |
+
* █████╗ ██████╗ ████████╗██╗ ██╗██╗ ██╗██████╗
|
32 |
+
* ██╔══██╗██╔══██╗╚══██╔══╝██║ ██║██║ ██║██╔══██╗
|
33 |
+
* ███████║██████╔╝ ██║ ███████║██║ ██║██████╔╝
|
34 |
+
* ██╔══██║██╔══██╗ ██║ ██╔══██║██║ ██║██╔══██╗
|
35 |
+
* ██║ ██║██║ ██║ ██║ ██║ ██║╚██████╔╝██║ ██║
|
36 |
+
* ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝
|
37 |
+
*
|
38 |
+
* ██████╗ █████╗ ██████╗ ███████╗ ██████╗ ██╗███╗ ██╗██╗ ██╗ █████╗ ███╗ ██╗
|
39 |
+
* ██╔════╝ ██╔══██╗██╔══██╗██╔════╝██╔════╝ ██║████╗ ██║╚██╗ ██╔╝██╔══██╗████╗ ██║
|
40 |
+
* ██║ ███╗███████║██████╔╝█████╗ ██║ ███╗██║██╔██╗ ██║ ╚████╔╝ ███████║██╔██╗ ██║
|
41 |
+
* ██║ ██║██╔══██║██╔══██╗██╔══╝ ██║ ██║██║██║╚██╗██║ ╚██╔╝ ██╔══██║██║╚██╗██║
|
42 |
+
* ╚██████╔╝██║ ██║██║ ██║███████╗╚██████╔╝██║██║ ╚████║ ██║ ██║ ██║██║ ╚████║
|
43 |
+
* ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝ ╚═════╝ ╚═╝╚═╝ ╚═══╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═══╝
|
44 |
+
*
|
45 |
*/
|
46 |
|
47 |
|
55 |
/**
|
56 |
* Define constants
|
57 |
*
|
58 |
+
* @since 3.6
|
59 |
*/
|
60 |
defined('MCFUNC_DIR') or define('MCFUNC_DIR', dirname(plugin_basename(__FILE__)));
|
61 |
defined('MCFUNC_BASE') or define('MCFUNC_BASE', plugin_basename(__FILE__));
|
62 |
defined('MCFUNC_URL') or define('MCFUNC_URL', plugin_dir_url(__FILE__));
|
63 |
defined('MCFUNC_PATH') or define('MCFUNC_PATH', plugin_dir_path(__FILE__));
|
64 |
defined('MCFUNC_TEXT') or define('MCFUNC_TEXT', 'my-custom-functions');
|
65 |
+
defined('MCFUNC_VERSION') or define('MCFUNC_VERSION', '4.0');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
66 |
|
67 |
/**
|
68 |
+
* Load the plugin modules
|
69 |
*
|
70 |
+
* @since 4.0
|
71 |
*/
|
72 |
+
require_once( MCFUNC_PATH . 'inc/php/core.php' );
|
73 |
+
require_once( MCFUNC_PATH . 'inc/php/enqueue.php' );
|
74 |
+
require_once( MCFUNC_PATH . 'inc/php/version.php' );
|
75 |
+
require_once( MCFUNC_PATH . 'inc/php/functional.php' );
|
76 |
+
require_once( MCFUNC_PATH . 'inc/php/page.php' );
|
77 |
+
require_once( MCFUNC_PATH . 'inc/php/messages.php' );
|
78 |
+
require_once( MCFUNC_PATH . 'inc/php/uninstall.php' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
readme.txt
CHANGED
@@ -4,28 +4,37 @@ Tags: code, php, function, snippet, custom, execute, edit, editing, editor, func
|
|
4 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=8A88KC7TFF6CS
|
5 |
Requires at least: 3.9
|
6 |
Tested up to: 4.7
|
7 |
-
Stable tag:
|
8 |
License: GPL3
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
11 |
-
Easily and safely add your custom functions (PHP code) directly out of your WordPress
|
12 |
|
13 |
|
14 |
== Description ==
|
15 |
-
An easy to use WordPress plugin that gives you the ability to easily and safely add your
|
16 |
-
|
17 |
|
18 |
= Features =
|
19 |
|
20 |
-
*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
* Checks the entered code for fatal errors (simple checks)
|
22 |
-
*
|
23 |
* Easy disable option for WSOD
|
24 |
* Syntax highlighting (by CodeMirror)
|
25 |
* Line numbering
|
26 |
* Active line highlighting
|
27 |
* Editor allow for tab indentation
|
28 |
-
*
|
29 |
|
30 |
**Coming soon:**
|
31 |
* Reload the settings page at same position after pushing the save button
|
@@ -33,57 +42,51 @@ An easy to use WordPress plugin that gives you the ability to easily and safely
|
|
33 |
|
34 |
= Translation =
|
35 |
|
36 |
-
Please keep in mind that not all translations are up to date. You are welcome to contribute!
|
37 |
-
|
38 |
* English (default)
|
39 |
* Russian
|
40 |
* Chinese-Taiwan (translation by Gordon Yu)
|
41 |
* Spanish (translation by [Ramiro Garcés](http://www.ramirogarces.com.ve/))
|
42 |
* French (translation by Theophil Bethel)
|
43 |
|
44 |
-
|
|
|
|
|
|
|
45 |
|
46 |
|
47 |
== Installation ==
|
48 |
Install "My Custom Functions" just as you would any other WordPress Plugin.
|
49 |
|
50 |
-
Automatically via WordPress:
|
51 |
|
52 |
-
1. Log into
|
53 |
-
2. Go to "`Plugins`"
|
54 |
3. Find this plugin and click install.
|
55 |
4. Activate this plugin through the "`Plugins`" tab.
|
56 |
|
57 |
-
|
58 |
|
59 |
1. Download a copy (ZIP file) of this plugin from WordPress.org.
|
60 |
2. Unzip the ZIP file.
|
61 |
3. Upload the unzipped catalog to your website's plugin directory (`/wp-content/plugins/`).
|
62 |
-
4. Log into
|
63 |
5. Activate this plugin through the "`Plugins`" tab.
|
64 |
|
65 |
-
After installation, a "`Custom Functions`" menu item will appear in the "`Appearance`" section. Click on this in order to view plugin
|
66 |
|
67 |
[More help installing Plugins](http://codex.wordpress.org/Managing_Plugins#Installing_Plugins "WordPress Codex: Installing Plugins")
|
68 |
|
69 |
|
70 |
== Frequently Asked Questions ==
|
71 |
= Q. Will this plugin work on my WordPress.COM website? =
|
72 |
-
A. Sorry, this plugin is available for use only on self-hosted (WordPress.
|
73 |
|
74 |
= Q. Can I use this plugin on my language? =
|
75 |
-
A. Yes. But If your language is not available then you can make one. This plugin is ready for translation. The `.pot` file is included and placed in "`languages`" folder. Many of plugin users would be delighted if you shared your translation with the community. Just send the translation files (`*.po, *.mo`) to me at the arthurgareginyan@gmail.com and I will include the translation within the next plugin update.
|
76 |
-
|
77 |
-
= Q. Does this plugin require modification to the theme? =
|
78 |
-
A. Absolutely not. This plugin is added/configured entirely from the website's Admin section.
|
79 |
|
80 |
= Q. How does it work? =
|
81 |
-
A.
|
82 |
-
`
|
83 |
-
|
84 |
-
// Content of your function
|
85 |
-
|
86 |
-
}`
|
87 |
|
88 |
= Q. Can I use HTML/CSS/JS code integrated in PHP code? =
|
89 |
A. Yes. But you need to do it properly, like this:
|
@@ -106,24 +109,35 @@ A. Here are a few of the most likely causes of the error message:
|
|
106 |
3. You have entered function with a name that is already occupied by another function. Use a unique name for your function.
|
107 |
4. You are trying to overwrite an existing function (of WordPress, theme, or plugin). Instead, use filters and hooks.
|
108 |
|
|
|
|
|
|
|
|
|
|
|
|
|
109 |
= Q. It's not working. What could be wrong? =
|
110 |
-
A. As with every plugin, it's possible that things don't work. The most common reason for this is
|
111 |
|
112 |
-
|
113 |
-
A. This plugin is not perfect, so there are times when the entered custom code causes the error and white screen (WSOD). If this happened with you then do the following.
|
114 |
|
115 |
-
|
|
|
116 |
|
117 |
-
|
|
|
|
|
|
|
|
|
|
|
118 |
|
119 |
= Q. Where to report bug if found? =
|
120 |
-
A. Please visit [Dedicated Plugin Page on GitHub](https://github.com/ArthurGareginyan/my-custom-functions) and report.
|
121 |
|
122 |
= Q. Where to share any ideas or suggestions to make the plugin better? =
|
123 |
-
A. Please send me email [arthurgareginyan@gmail.com](mailto:arthurgareginyan@gmail.com).
|
124 |
|
125 |
= Q. I love this plugin! Can I help somehow? =
|
126 |
-
A. Yes, any financial contributions are welcome! Just visit my website
|
127 |
|
128 |
|
129 |
== Screenshots ==
|
@@ -139,13 +153,15 @@ A. Yes, any financial contributions are welcome! Just visit my website and click
|
|
139 |
|
140 |
**License**
|
141 |
|
142 |
-
This plugin is licensed under the [GNU General Public License, version 3 (GPLv3)](http://www.gnu.org/licenses/gpl-3.0.html)
|
143 |
-
and is distributed free of charge.
|
144 |
Commercial licensing (e.g. for projects that can’t use an open-source license) is available upon request.
|
145 |
|
146 |
**Credits**
|
147 |
|
148 |
-
|
|
|
|
|
|
|
149 |
|
150 |
**Links**
|
151 |
|
@@ -155,36 +171,76 @@ Commercial licensing (e.g. for projects that can’t use an open-source license)
|
|
155 |
|
156 |
|
157 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
158 |
= 3.5 =
|
159 |
* Added French translation. (Thanks Theophil Bethel)
|
160 |
* Image of the donate button changed.
|
|
|
161 |
= 3.4.1 =
|
162 |
* Translations updated.
|
163 |
* Readme for translations updated.
|
164 |
* Link of banner image updated.
|
|
|
165 |
= 3.4 =
|
166 |
* Added Spanish translation. (Thanks [Ramiro Garcés](http://www.ramirogarces.com.ve/))
|
|
|
167 |
= 3.3 =
|
168 |
* User's PHP code displayed on settings page are escaped for output by `htmlentities()` instead of `esc_attr()` for prevent converting characters to HTML entities.
|
169 |
* Added global constant for plugin text-domain.
|
170 |
* Russian translation improved.
|
|
|
171 |
= 3.2 =
|
172 |
* Added option for easy disable the custom code for cases of WSOD.
|
173 |
* Style sheet of settings page improved.
|
174 |
* On the settings page added an advertisement about the PRO version of this plugin.
|
175 |
* The Readme.txt file improved.
|
176 |
* Added the Readme.txt file for translation contribution.
|
|
|
177 |
= 3.1 =
|
178 |
* Added prefixes to the stylesheet and script names when using wp_enqueue_style() and wp_enqueue_script().
|
179 |
* Added constant for storing the plugin version number.
|
|
|
180 |
= 3.0 =
|
181 |
* The structure of files changed.
|
182 |
* Style sheet of settings page improved and better commented.
|
183 |
* JS code improved.
|
184 |
* The "thanks.png" image removed.
|
185 |
* POT file updated.
|
|
|
186 |
= 2.5.1 =
|
187 |
* The update_option() returned into _duplicates function.
|
|
|
188 |
= 2.5 =
|
189 |
* Added active-line add-on to CodeMirror.
|
190 |
* Extra update_option() removed from the _duplicates function.
|
@@ -192,10 +248,12 @@ Commercial licensing (e.g. for projects that can’t use an open-source license)
|
|
192 |
* CSS class "slider" renamed to "trigger".
|
193 |
* Styles of settings page optimized for mobile devices.
|
194 |
* The styles.css file better commented.
|
195 |
-
* The _enqueue_codemirror_scripts function renamed to
|
|
|
196 |
= 2.4 =
|
197 |
-
* Added
|
198 |
* Functions _prepare, _duplicates, and _exec optimized.
|
|
|
199 |
= 2.3 =
|
200 |
* Added function to check for duplicate function names. Compares the names of all functions (internal, user). The _duplicates function added.
|
201 |
* Added function of automatic remove the "successful" message after 3 seconds.
|
@@ -203,15 +261,18 @@ Commercial licensing (e.g. for projects that can’t use an open-source license)
|
|
203 |
* The function of user code cleaning modified.
|
204 |
* File js-functions.js renamed to functions.js.
|
205 |
* Removed my personal ad about freelance.
|
|
|
206 |
= 2.2 =
|
207 |
* Added Chinese (Taiwan) translation. (Thanks Gordon Yu)
|
208 |
* Text domain changed to "my-custom-functions".
|
209 |
* Added compatibility with the translate.wordpress.org.
|
|
|
210 |
= 2.1 =
|
211 |
-
* In the
|
212 |
* Removed extra rules in style.css file.
|
213 |
* All images are moved to the directory "images".
|
214 |
* Image "btn_donateCC_LG.gif" is now located in the "images" directory.
|
|
|
215 |
= 2.0 =
|
216 |
* New design of settings page (new layout).
|
217 |
* Constants variables added.
|
@@ -223,53 +284,68 @@ Commercial licensing (e.g. for projects that can’t use an open-source license)
|
|
223 |
* Added my personal ad about freelance.
|
224 |
* .pot file updated.
|
225 |
* Russian translation updated.
|
|
|
226 |
= 1.9 =
|
227 |
* Authors URI changed.
|
228 |
* Donate link changed.
|
229 |
* Localization improved.
|
230 |
* .pot file updated.
|
231 |
* Russian translation updated.
|
|
|
232 |
= 1.8 =
|
233 |
* The mode of CodeMirror editor changed from 'application/x-httpd-php' (HTML+PHP) to 'text/x-php' (PHP).
|
234 |
* Placeholder of <textarea> changed to "/* Enter Your Custom Functions Here */".
|
235 |
-
* Removed more unused do_action() from
|
|
|
236 |
= 1.7 =
|
237 |
-
* The stylesheet of plugin
|
238 |
-
* The javascript from
|
239 |
* Textdomain changed to "mcfunctions".
|
240 |
-
* Changed the style of title in plugin
|
241 |
* The LICENSE file renamed to LICENSE.txt
|
|
|
242 |
= 1.6 =
|
243 |
* Fixed the issue due to which nothing appears below line 26 until you click below that line.
|
244 |
* Added "register_setting" for error option.
|
245 |
* Corrected comments to source code.
|
|
|
246 |
= 1.5 =
|
247 |
* CodeMirror scripts are combined and minified.
|
|
|
248 |
= 1.4 =
|
249 |
* Fixed the issue due to which the alert message was appearing after installation.
|
|
|
250 |
= 1.3 =
|
251 |
* .pot file included.
|
252 |
* Minor fixes.
|
|
|
253 |
= 1.2 =
|
254 |
* Added the syntax highlighting and line numbering.
|
|
|
255 |
= 1.1 =
|
256 |
-
* Fixed positioning of the sidebar at the plugin page.
|
|
|
257 |
= 1.0 =
|
258 |
* Initial release.
|
259 |
* Added the check for safety execution code.
|
260 |
* Added ready for translation.
|
261 |
-
|
262 |
-
|
263 |
-
|
|
|
|
|
|
|
|
|
|
|
264 |
* Alfa version.
|
265 |
|
266 |
|
267 |
== Upgrade Notice ==
|
|
|
|
|
268 |
= 3.0 =
|
269 |
Please update to new release!
|
270 |
= 2.0 =
|
271 |
Please update to new release!
|
272 |
= 1.0 =
|
273 |
Please update to first stable release!
|
274 |
-
= 0.2 =
|
275 |
-
Please update to beta version.
|
4 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=8A88KC7TFF6CS
|
5 |
Requires at least: 3.9
|
6 |
Tested up to: 4.7
|
7 |
+
Stable tag: 4.0
|
8 |
License: GPL3
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
11 |
+
Easily and safely add your custom functions (PHP code) directly out of your WordPress Admin area without need of an external editor.
|
12 |
|
13 |
|
14 |
== Description ==
|
15 |
+
An easy to use, with intuitive interface WordPress plugin that gives you the ability to easily and safely add your custom functions (PHP code) for execution in WordPress environment directly out of your WordPress Admin area and without any need of an external editor.
|
16 |
+
|
17 |
|
18 |
= Features =
|
19 |
|
20 |
+
* Lightweight and fast
|
21 |
+
* Secure code with using clear coding standards
|
22 |
+
* Intuitive interface with many settings
|
23 |
+
* Cross browser compatible (work smooth in any modern browser)
|
24 |
+
* Compatible with all WordPress themes
|
25 |
+
* RTL compatible (right to left)
|
26 |
+
* Translation ready
|
27 |
+
|
28 |
+
**Key features include...**
|
29 |
+
|
30 |
* Checks the entered code for fatal errors (simple checks)
|
31 |
+
* Toggle for temporary disable the custom functions
|
32 |
* Easy disable option for WSOD
|
33 |
* Syntax highlighting (by CodeMirror)
|
34 |
* Line numbering
|
35 |
* Active line highlighting
|
36 |
* Editor allow for tab indentation
|
37 |
+
* And much, much more!
|
38 |
|
39 |
**Coming soon:**
|
40 |
* Reload the settings page at same position after pushing the save button
|
42 |
|
43 |
= Translation =
|
44 |
|
|
|
|
|
45 |
* English (default)
|
46 |
* Russian
|
47 |
* Chinese-Taiwan (translation by Gordon Yu)
|
48 |
* Spanish (translation by [Ramiro Garcés](http://www.ramirogarces.com.ve/))
|
49 |
* French (translation by Theophil Bethel)
|
50 |
|
51 |
+
If you would like to add a translation to this plugin then please head to our [Translating WordPress](https://translate.wordpress.org/projects/wp-plugins/my-custom-functions) page.
|
52 |
+
|
53 |
+
**Consider Going Pro For Additional Features!**
|
54 |
+
> All features from Free version included plus:
|
55 |
|
56 |
|
57 |
== Installation ==
|
58 |
Install "My Custom Functions" just as you would any other WordPress Plugin.
|
59 |
|
60 |
+
Automatically via WordPress Admin area:
|
61 |
|
62 |
+
1. Log into Admin area of your WordPress website.
|
63 |
+
2. Go to "`Plugins`" -> "`Add New`".
|
64 |
3. Find this plugin and click install.
|
65 |
4. Activate this plugin through the "`Plugins`" tab.
|
66 |
|
67 |
+
Manually via FTP access:
|
68 |
|
69 |
1. Download a copy (ZIP file) of this plugin from WordPress.org.
|
70 |
2. Unzip the ZIP file.
|
71 |
3. Upload the unzipped catalog to your website's plugin directory (`/wp-content/plugins/`).
|
72 |
+
4. Log into Admin area of your WordPress website.
|
73 |
5. Activate this plugin through the "`Plugins`" tab.
|
74 |
|
75 |
+
After installation, a "`Custom Functions`" menu item will appear in the "`Appearance`" section. Click on this in order to view plugin administration page.
|
76 |
|
77 |
[More help installing Plugins](http://codex.wordpress.org/Managing_Plugins#Installing_Plugins "WordPress Codex: Installing Plugins")
|
78 |
|
79 |
|
80 |
== Frequently Asked Questions ==
|
81 |
= Q. Will this plugin work on my WordPress.COM website? =
|
82 |
+
A. Sorry, this plugin is available for use only on self-hosted (WordPress.ORG) websites.
|
83 |
|
84 |
= Q. Can I use this plugin on my language? =
|
85 |
+
A. Yes. But If your language is not available then you can make one. This plugin is ready for translation. The `.pot` file is included and placed in the "`languages`" folder. Many of plugin users would be delighted if you shared your translation with the community. Just send the translation files (`*.po, *.mo`) to me at the arthurgareginyan@gmail.com and I will include the translation within the next plugin update.
|
|
|
|
|
|
|
86 |
|
87 |
= Q. How does it work? =
|
88 |
+
A. Simply go to the plugin settings page, add your PHP code to the field, switch the toggle to the "ON" position and click the "Save Changes" button. Enjoy the result of applying your PHP code. It's that simple!
|
89 |
+
You can find the plugin settings page at "`WP Admin Panel`" -> "`Appearance`" -> "`Custom Functions`".
|
|
|
|
|
|
|
|
|
90 |
|
91 |
= Q. Can I use HTML/CSS/JS code integrated in PHP code? =
|
92 |
A. Yes. But you need to do it properly, like this:
|
109 |
3. You have entered function with a name that is already occupied by another function. Use a unique name for your function.
|
110 |
4. You are trying to overwrite an existing function (of WordPress, theme, or plugin). Instead, use filters and hooks.
|
111 |
|
112 |
+
= Q. Does this plugin requires any modification of the theme? =
|
113 |
+
A. Absolutely not. This plugin is configurable entirely from the plugin settings page that you can find in the Admin Panel of your WordPress website.
|
114 |
+
|
115 |
+
= Q. Does this require any knowledge of HTML or CSS? =
|
116 |
+
A. This plugin can be configured with no knowledge of HTML or CSS, using an easy-to-use plugin settings page. But you need to know the HTML or CSS in order to add/remove/modify the HTML or CSS code by using this plugin.
|
117 |
+
|
118 |
= Q. It's not working. What could be wrong? =
|
119 |
+
A. As with every plugin, it's possible that things don't work. The most common reason for this is a web browser's cache. Every web browser stores a cache of the websites you visit (pages, images, and etc.) to reduce bandwidth usage and server load. This is called the browser's cache. Clearing your browser's cache may solve the problem.
|
120 |
|
121 |
+
It's impossible to tell what could be wrong exactly, but if you post a support request in the plugin's support forum on WordPress.org, I'd be happy to give it a look and try to help out. Please include as much information as possible, including a link to your website where the problem can be seen.
|
|
|
122 |
|
123 |
+
= Q. What to do if this plugin caused the white screen (WSOD)? =
|
124 |
+
A. This plugin is not perfect, so there are times when the entered custom code causes the error and white screen (WSOD). This is due to the fact that your custom code has a syntax error that this plugin could not detect. If this happened with you then do the following and all will be fine.
|
125 |
|
126 |
+
1. Via FTP, go to the plugin folder (in `wp-content/plugins/my-custom-functions/`). Rename the "`START`" file to "`STOP`".
|
127 |
+
2. Return to the plugin settings page.
|
128 |
+
3. Edit/fix your custom code that you entered before the crash.
|
129 |
+
4. Rename the "`STOP`" file to "`START`" and you're done!
|
130 |
+
|
131 |
+
This plugin stored you entered code in the Database of your website. For getting your code, you also can go to the `Database` -> Table "`wp_options`" -> Option "`anarcho_cfunctions_settings`" -> "`option_value`".
|
132 |
|
133 |
= Q. Where to report bug if found? =
|
134 |
+
A. Please visit the [Dedicated Plugin Page on GitHub](https://github.com/ArthurGareginyan/my-custom-functions) and report.
|
135 |
|
136 |
= Q. Where to share any ideas or suggestions to make the plugin better? =
|
137 |
+
A. Any suggestions are very welcome! Please send me an email to [arthurgareginyan@gmail.com](mailto:arthurgareginyan@gmail.com). Thank you!
|
138 |
|
139 |
= Q. I love this plugin! Can I help somehow? =
|
140 |
+
A. Yes, any financial contributions are welcome! Just visit [my website](http://www.arthurgareginyan.com/donate.html), click on the donate button, and thank you!
|
141 |
|
142 |
|
143 |
== Screenshots ==
|
153 |
|
154 |
**License**
|
155 |
|
156 |
+
This plugin is licensed under the [GNU General Public License, version 3 (GPLv3)](http://www.gnu.org/licenses/gpl-3.0.html) and is distributed free of charge.
|
|
|
157 |
Commercial licensing (e.g. for projects that can’t use an open-source license) is available upon request.
|
158 |
|
159 |
**Credits**
|
160 |
|
161 |
+
* The icon of plugin is a copyrighted image created by [Arthur Gareginyan](http://www.arthurgareginyan.com). (C) All rights reserved.
|
162 |
+
* The banner of plugin is a copyrighted image created by [Arthur Gareginyan](http://www.arthurgareginyan.com). (C) All rights reserved.
|
163 |
+
* [CodeMirror](https://codemirror.net/) is an open-source project shared under the [MIT license](https://codemirror.net/LICENSE).
|
164 |
+
* [Bootstrap](http://getbootstrap.com) by Twitter, Inc. released under the [MIT license](https://github.com/twbs/bootstrap/blob/master/LICENSE).
|
165 |
|
166 |
**Links**
|
167 |
|
171 |
|
172 |
|
173 |
== Changelog ==
|
174 |
+
|
175 |
+
= 4.0 =
|
176 |
+
* The design of the plugin settings page is completely redone.
|
177 |
+
* Added additional donate link to the "Plugins" page.
|
178 |
+
* The 'Using' section renamed to 'Usage'.
|
179 |
+
* My Unicode signature added to the main file.
|
180 |
+
* The donate button replaced with new.
|
181 |
+
* The 'Donate' section renamed to 'Support'.
|
182 |
+
* The 'donate.png' image removed.
|
183 |
+
* Options from the settings page moved to a separate file.
|
184 |
+
* The "Usage" section removed from the sidebar area.
|
185 |
+
* Additional "Support" section added.
|
186 |
+
* Added tab navigation menu for the settings page.
|
187 |
+
* Added additional tabs on the settings page.
|
188 |
+
* Code of the 'admin.css' file improved and better commented.
|
189 |
+
* A full version of the Bootstrap framework is integrated.
|
190 |
+
* The 'MCFunctions_load_scripts' function renamed to 'MCFunctions_load_scripts_admin'.
|
191 |
+
* Added the CSS code for the custom list numbers on the plugin settings page.
|
192 |
+
* The main font is changed to "Verdana".
|
193 |
+
* All PHP and HTML code is better formatted.
|
194 |
+
* The header on the settings page of plugin is redesigned.
|
195 |
+
* The "LICENSE.txt" file renamed to "license.txt".
|
196 |
+
* The "humans.txt" file added.
|
197 |
+
* Messages from the plugin settings page moved to a separate file "messages.php".
|
198 |
+
* The "_service_info" setting added to the data-base.
|
199 |
+
* Added function for managing information about the version number of the plugin.
|
200 |
+
* Added the "Hello" message that show when the plugin is just installed.
|
201 |
+
* Added the "Error" message that show when user is trying to degrade the version number of the plugin.
|
202 |
+
* Fixed the parameter that contain the path to source files in all translation files.
|
203 |
+
* The POT file updated.
|
204 |
+
* Translations updated.
|
205 |
+
|
206 |
= 3.5 =
|
207 |
* Added French translation. (Thanks Theophil Bethel)
|
208 |
* Image of the donate button changed.
|
209 |
+
|
210 |
= 3.4.1 =
|
211 |
* Translations updated.
|
212 |
* Readme for translations updated.
|
213 |
* Link of banner image updated.
|
214 |
+
|
215 |
= 3.4 =
|
216 |
* Added Spanish translation. (Thanks [Ramiro Garcés](http://www.ramirogarces.com.ve/))
|
217 |
+
|
218 |
= 3.3 =
|
219 |
* User's PHP code displayed on settings page are escaped for output by `htmlentities()` instead of `esc_attr()` for prevent converting characters to HTML entities.
|
220 |
* Added global constant for plugin text-domain.
|
221 |
* Russian translation improved.
|
222 |
+
|
223 |
= 3.2 =
|
224 |
* Added option for easy disable the custom code for cases of WSOD.
|
225 |
* Style sheet of settings page improved.
|
226 |
* On the settings page added an advertisement about the PRO version of this plugin.
|
227 |
* The Readme.txt file improved.
|
228 |
* Added the Readme.txt file for translation contribution.
|
229 |
+
|
230 |
= 3.1 =
|
231 |
* Added prefixes to the stylesheet and script names when using wp_enqueue_style() and wp_enqueue_script().
|
232 |
* Added constant for storing the plugin version number.
|
233 |
+
|
234 |
= 3.0 =
|
235 |
* The structure of files changed.
|
236 |
* Style sheet of settings page improved and better commented.
|
237 |
* JS code improved.
|
238 |
* The "thanks.png" image removed.
|
239 |
* POT file updated.
|
240 |
+
|
241 |
= 2.5.1 =
|
242 |
* The update_option() returned into _duplicates function.
|
243 |
+
|
244 |
= 2.5 =
|
245 |
* Added active-line add-on to CodeMirror.
|
246 |
* Extra update_option() removed from the _duplicates function.
|
248 |
* CSS class "slider" renamed to "trigger".
|
249 |
* Styles of settings page optimized for mobile devices.
|
250 |
* The styles.css file better commented.
|
251 |
+
* The _enqueue_codemirror_scripts function renamed to mcfunctions_load_scripts.
|
252 |
+
|
253 |
= 2.4 =
|
254 |
+
* Added a toggle for temporary disable the custom functions.
|
255 |
* Functions _prepare, _duplicates, and _exec optimized.
|
256 |
+
|
257 |
= 2.3 =
|
258 |
* Added function to check for duplicate function names. Compares the names of all functions (internal, user). The _duplicates function added.
|
259 |
* Added function of automatic remove the "successful" message after 3 seconds.
|
261 |
* The function of user code cleaning modified.
|
262 |
* File js-functions.js renamed to functions.js.
|
263 |
* Removed my personal ad about freelance.
|
264 |
+
|
265 |
= 2.2 =
|
266 |
* Added Chinese (Taiwan) translation. (Thanks Gordon Yu)
|
267 |
* Text domain changed to "my-custom-functions".
|
268 |
* Added compatibility with the translate.wordpress.org.
|
269 |
+
|
270 |
= 2.1 =
|
271 |
+
* In the page.php, on the line 21, fixed typo.
|
272 |
* Removed extra rules in style.css file.
|
273 |
* All images are moved to the directory "images".
|
274 |
* Image "btn_donateCC_LG.gif" is now located in the "images" directory.
|
275 |
+
|
276 |
= 2.0 =
|
277 |
* New design of settings page (new layout).
|
278 |
* Constants variables added.
|
284 |
* Added my personal ad about freelance.
|
285 |
* .pot file updated.
|
286 |
* Russian translation updated.
|
287 |
+
|
288 |
= 1.9 =
|
289 |
* Authors URI changed.
|
290 |
* Donate link changed.
|
291 |
* Localization improved.
|
292 |
* .pot file updated.
|
293 |
* Russian translation updated.
|
294 |
+
|
295 |
= 1.8 =
|
296 |
* The mode of CodeMirror editor changed from 'application/x-httpd-php' (HTML+PHP) to 'text/x-php' (PHP).
|
297 |
* Placeholder of <textarea> changed to "/* Enter Your Custom Functions Here */".
|
298 |
+
* Removed more unused do_action() from page.php file.
|
299 |
+
|
300 |
= 1.7 =
|
301 |
+
* The stylesheet of plugin page moved to separate file.
|
302 |
+
* The javascript from page.php moved to separate file.
|
303 |
* Textdomain changed to "mcfunctions".
|
304 |
+
* Changed the style of title in plugin page.
|
305 |
* The LICENSE file renamed to LICENSE.txt
|
306 |
+
|
307 |
= 1.6 =
|
308 |
* Fixed the issue due to which nothing appears below line 26 until you click below that line.
|
309 |
* Added "register_setting" for error option.
|
310 |
* Corrected comments to source code.
|
311 |
+
|
312 |
= 1.5 =
|
313 |
* CodeMirror scripts are combined and minified.
|
314 |
+
|
315 |
= 1.4 =
|
316 |
* Fixed the issue due to which the alert message was appearing after installation.
|
317 |
+
|
318 |
= 1.3 =
|
319 |
* .pot file included.
|
320 |
* Minor fixes.
|
321 |
+
|
322 |
= 1.2 =
|
323 |
* Added the syntax highlighting and line numbering.
|
324 |
+
|
325 |
= 1.1 =
|
326 |
+
* Fixed positioning of the sidebar at the plugin settings page.
|
327 |
+
|
328 |
= 1.0 =
|
329 |
* Initial release.
|
330 |
* Added the check for safety execution code.
|
331 |
* Added ready for translation.
|
332 |
+
|
333 |
+
= 0.3 =
|
334 |
+
* Release candidate.
|
335 |
+
|
336 |
+
= 0.2 =
|
337 |
+
* Beta version.
|
338 |
+
|
339 |
+
= 0.1 =
|
340 |
* Alfa version.
|
341 |
|
342 |
|
343 |
== Upgrade Notice ==
|
344 |
+
= 4.0 =
|
345 |
+
Please update to new release!
|
346 |
= 3.0 =
|
347 |
Please update to new release!
|
348 |
= 2.0 =
|
349 |
Please update to new release!
|
350 |
= 1.0 =
|
351 |
Please update to first stable release!
|
|
|
|