Version Description
(17/06/2016) = * fixed issue: responsive subscribe form * fixed issue: jQuery was loaded from a different folder on some WP installations * fixed issue: errors after update (strstr on empty strings because of saving empty lines on exclude list) * fixed issue: if "Redirection" from "General" tab is active, also redirects ajax calls * fixed issue: settings page title was wrong placed * "contact" feature update - nice email template + reply-to email header * refactoring for some methods * all assets are now minified * rewrite count db records function (used on subscribers count) * compatible with https://github.com/afragen/github-updater * compatible with wp-cli http://wp-cli.org/ * improved responsivity * improved roles access; now you can set multiple roles (editor, author, subscriber, contributor) and administrator will always have access to backend and frontend * it_IT translation by benedettogit (https://github.com/benedettogit) * updated all language files (need help for 100% translation)
Release Info
Developer | GeorgeJipa |
Plugin | WP Maintenance Mode |
Version | 2.0.4 |
Comparing to | |
See all releases |
Code changes from version 2.0.3 to 2.0.4
- assets/css/chosen.css +448 -0
- assets/css/chosen.min.css +11 -0
- assets/css/index.php +2 -2
- assets/css/jquery-ui-timepicker-addon.css +30 -0
- assets/css/jquery-ui-timepicker-addon.min.css +1 -0
- assets/css/style-admin.css +148 -118
- assets/css/style-admin.min.css +1 -0
- assets/css/style.css +462 -462
- assets/css/style.min.css +1 -0
- assets/images/chosen-sprite.png +0 -0
- assets/images/chosen-sprite@2x.png +0 -0
- assets/images/index.php +2 -2
- assets/images/resources/ayoshop.jpg +0 -0
- assets/images/resources/flatui.jpg +0 -0
- assets/images/resources/linecons.jpg +0 -0
- assets/images/resources/startup-wordpress.jpg +0 -0
- assets/index.php +2 -2
- assets/js/chosen.jquery.js +1284 -0
- assets/js/chosen.jquery.min.js +1 -0
- assets/js/index.php +2 -2
- assets/js/jquery-ui-timepicker-addon.js +181 -93
- assets/js/jquery-ui-timepicker-addon.min.js +2 -0
- assets/js/jquery.countdown.js +43 -11
- assets/js/jquery.countdown.min.js +1 -6
- assets/js/jquery.plugin.js +1 -1
- assets/js/jquery.plugin.min.js +1 -4
- assets/js/jquery.validate.js +494 -319
- assets/js/jquery.validate.min.js +1 -4
- assets/js/scripts-admin-global.js +20 -0
- assets/js/scripts-admin-global.min.js +1 -0
- assets/js/scripts-admin.js +40 -11
- assets/js/scripts-admin.min.js +1 -0
- assets/js/scripts.js +101 -90
- assets/js/scripts.min.js +1 -0
- includes/classes/index.php +2 -2
- includes/classes/wp-maintenance-mode-admin.php +521 -405
- includes/classes/wp-maintenance-mode-shortcodes.php +76 -76
- includes/classes/wp-maintenance-mode.php +745 -713
- includes/functions/helpers.php +89 -30
- includes/functions/index.php +2 -2
- includes/index.php +2 -2
- index.php +2 -2
- languages/index.php +2 -2
- languages/wp-maintenance-mode-de_DE.mo +0 -0
- languages/wp-maintenance-mode-de_DE.po +532 -459
- languages/wp-maintenance-mode-en_US.mo +0 -0
- languages/wp-maintenance-mode-en_US.po +491 -435
- languages/wp-maintenance-mode-es_ES.mo +0 -0
- languages/wp-maintenance-mode-es_ES.po +539 -464
- languages/wp-maintenance-mode-fa_IR.mo +0 -0
- languages/wp-maintenance-mode-fa_IR.po +498 -0
- languages/wp-maintenance-mode-fr_FR.mo +0 -0
- languages/wp-maintenance-mode-fr_FR.po +535 -465
- languages/wp-maintenance-mode-it_IT.mo +0 -0
- languages/wp-maintenance-mode-it_IT.po +528 -0
- languages/wp-maintenance-mode-nb_NO.mo +0 -0
- languages/wp-maintenance-mode-nb_NO.po +527 -0
- languages/wp-maintenance-mode-nl_NL.mo +0 -0
- languages/wp-maintenance-mode-nl_NL.po +532 -460
- languages/wp-maintenance-mode-pl_PL.mo +0 -0
- languages/wp-maintenance-mode-pl_PL.po +530 -0
- languages/wp-maintenance-mode-pt_BR.mo +0 -0
- languages/wp-maintenance-mode-pt_BR.po +605 -535
- languages/wp-maintenance-mode-pt_PT.mo +0 -0
- languages/wp-maintenance-mode-pt_PT.po +543 -463
- languages/wp-maintenance-mode-ro_RO.mo +0 -0
- languages/wp-maintenance-mode-ro_RO.po +553 -470
- languages/wp-maintenance-mode-ru_RU.mo +0 -0
- languages/wp-maintenance-mode-ru_RU.po +538 -463
- languages/wp-maintenance-mode-sv_SE.mo +0 -0
- languages/wp-maintenance-mode-sv_SE.po +529 -457
- readme.md +105 -105
- readme.txt +381 -364
- uninstall.php +35 -35
- views/contact.php +98 -0
- views/index.php +2 -2
- views/loginform.php +8 -8
- views/maintenance.php +120 -119
- views/notice.php +9 -4
- views/promo-codepad.php +10 -0
- views/settings.php +440 -429
- views/sidebar.php +55 -39
- wp-maintenance-mode.php +71 -64
@@ -0,0 +1,448 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*!
|
2 |
+
Chosen, a Select Box Enhancer for jQuery and Prototype
|
3 |
+
by Patrick Filler for Harvest, http://getharvest.com
|
4 |
+
|
5 |
+
Version 1.5.1
|
6 |
+
Full source at https://github.com/harvesthq/chosen
|
7 |
+
Copyright (c) 2011-2016 Harvest http://getharvest.com
|
8 |
+
|
9 |
+
MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md
|
10 |
+
This file is generated by `grunt build`, do not edit it by hand.
|
11 |
+
*/
|
12 |
+
|
13 |
+
/* @group Base */
|
14 |
+
.chosen-container {
|
15 |
+
position: relative;
|
16 |
+
display: inline-block;
|
17 |
+
vertical-align: middle;
|
18 |
+
font-size: 13px;
|
19 |
+
-webkit-user-select: none;
|
20 |
+
-moz-user-select: none;
|
21 |
+
user-select: none;
|
22 |
+
}
|
23 |
+
.chosen-container * {
|
24 |
+
-webkit-box-sizing: border-box;
|
25 |
+
-moz-box-sizing: border-box;
|
26 |
+
box-sizing: border-box;
|
27 |
+
}
|
28 |
+
.chosen-container .chosen-drop {
|
29 |
+
position: absolute;
|
30 |
+
top: 100%;
|
31 |
+
left: -9999px;
|
32 |
+
z-index: 1010;
|
33 |
+
width: 100%;
|
34 |
+
border: 1px solid #aaa;
|
35 |
+
border-top: 0;
|
36 |
+
background: #fff;
|
37 |
+
box-shadow: 0 4px 5px rgba(0, 0, 0, 0.15);
|
38 |
+
}
|
39 |
+
.chosen-container.chosen-with-drop .chosen-drop {
|
40 |
+
left: 0;
|
41 |
+
}
|
42 |
+
.chosen-container a {
|
43 |
+
cursor: pointer;
|
44 |
+
}
|
45 |
+
.chosen-container .search-choice .group-name, .chosen-container .chosen-single .group-name {
|
46 |
+
margin-right: 4px;
|
47 |
+
overflow: hidden;
|
48 |
+
white-space: nowrap;
|
49 |
+
text-overflow: ellipsis;
|
50 |
+
font-weight: normal;
|
51 |
+
color: #999999;
|
52 |
+
}
|
53 |
+
.chosen-container .search-choice .group-name:after, .chosen-container .chosen-single .group-name:after {
|
54 |
+
content: ":";
|
55 |
+
padding-left: 2px;
|
56 |
+
vertical-align: top;
|
57 |
+
}
|
58 |
+
|
59 |
+
/* @end */
|
60 |
+
/* @group Single Chosen */
|
61 |
+
.chosen-container-single .chosen-single {
|
62 |
+
position: relative;
|
63 |
+
display: block;
|
64 |
+
overflow: hidden;
|
65 |
+
padding: 0 0 0 8px;
|
66 |
+
height: 25px;
|
67 |
+
border: 1px solid #aaa;
|
68 |
+
border-radius: 5px;
|
69 |
+
background-color: #fff;
|
70 |
+
background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #ffffff), color-stop(50%, #f6f6f6), color-stop(52%, #eeeeee), color-stop(100%, #f4f4f4));
|
71 |
+
background: -webkit-linear-gradient(#ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
72 |
+
background: -moz-linear-gradient(#ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
73 |
+
background: -o-linear-gradient(#ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
74 |
+
background: linear-gradient(#ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
75 |
+
background-clip: padding-box;
|
76 |
+
box-shadow: 0 0 3px white inset, 0 1px 1px rgba(0, 0, 0, 0.1);
|
77 |
+
color: #444;
|
78 |
+
text-decoration: none;
|
79 |
+
white-space: nowrap;
|
80 |
+
line-height: 24px;
|
81 |
+
}
|
82 |
+
.chosen-container-single .chosen-default {
|
83 |
+
color: #999;
|
84 |
+
}
|
85 |
+
.chosen-container-single .chosen-single span {
|
86 |
+
display: block;
|
87 |
+
overflow: hidden;
|
88 |
+
margin-right: 26px;
|
89 |
+
text-overflow: ellipsis;
|
90 |
+
white-space: nowrap;
|
91 |
+
}
|
92 |
+
.chosen-container-single .chosen-single-with-deselect span {
|
93 |
+
margin-right: 38px;
|
94 |
+
}
|
95 |
+
.chosen-container-single .chosen-single abbr {
|
96 |
+
position: absolute;
|
97 |
+
top: 6px;
|
98 |
+
right: 26px;
|
99 |
+
display: block;
|
100 |
+
width: 12px;
|
101 |
+
height: 12px;
|
102 |
+
background: url('chosen-sprite.png') -42px 1px no-repeat;
|
103 |
+
font-size: 1px;
|
104 |
+
}
|
105 |
+
.chosen-container-single .chosen-single abbr:hover {
|
106 |
+
background-position: -42px -10px;
|
107 |
+
}
|
108 |
+
.chosen-container-single.chosen-disabled .chosen-single abbr:hover {
|
109 |
+
background-position: -42px -10px;
|
110 |
+
}
|
111 |
+
.chosen-container-single .chosen-single div {
|
112 |
+
position: absolute;
|
113 |
+
top: 0;
|
114 |
+
right: 0;
|
115 |
+
display: block;
|
116 |
+
width: 18px;
|
117 |
+
height: 100%;
|
118 |
+
}
|
119 |
+
.chosen-container-single .chosen-single div b {
|
120 |
+
display: block;
|
121 |
+
width: 100%;
|
122 |
+
height: 100%;
|
123 |
+
background: url('chosen-sprite.png') no-repeat 0px 2px;
|
124 |
+
}
|
125 |
+
.chosen-container-single .chosen-search {
|
126 |
+
position: relative;
|
127 |
+
z-index: 1010;
|
128 |
+
margin: 0;
|
129 |
+
padding: 3px 4px;
|
130 |
+
white-space: nowrap;
|
131 |
+
}
|
132 |
+
.chosen-container-single .chosen-search input[type="text"] {
|
133 |
+
margin: 1px 0;
|
134 |
+
padding: 4px 20px 4px 5px;
|
135 |
+
width: 100%;
|
136 |
+
height: auto;
|
137 |
+
outline: 0;
|
138 |
+
border: 1px solid #aaa;
|
139 |
+
background: white url('chosen-sprite.png') no-repeat 100% -20px;
|
140 |
+
background: url('chosen-sprite.png') no-repeat 100% -20px;
|
141 |
+
font-size: 1em;
|
142 |
+
font-family: sans-serif;
|
143 |
+
line-height: normal;
|
144 |
+
border-radius: 0;
|
145 |
+
}
|
146 |
+
.chosen-container-single .chosen-drop {
|
147 |
+
margin-top: -1px;
|
148 |
+
border-radius: 0 0 4px 4px;
|
149 |
+
background-clip: padding-box;
|
150 |
+
}
|
151 |
+
.chosen-container-single.chosen-container-single-nosearch .chosen-search {
|
152 |
+
position: absolute;
|
153 |
+
left: -9999px;
|
154 |
+
}
|
155 |
+
|
156 |
+
/* @end */
|
157 |
+
/* @group Results */
|
158 |
+
.chosen-container .chosen-results {
|
159 |
+
color: #444;
|
160 |
+
position: relative;
|
161 |
+
overflow-x: hidden;
|
162 |
+
overflow-y: auto;
|
163 |
+
margin: 0 4px 4px 0;
|
164 |
+
padding: 0 0 0 4px;
|
165 |
+
max-height: 240px;
|
166 |
+
-webkit-overflow-scrolling: touch;
|
167 |
+
}
|
168 |
+
.chosen-container .chosen-results li {
|
169 |
+
display: none;
|
170 |
+
margin: 0;
|
171 |
+
padding: 5px 6px;
|
172 |
+
list-style: none;
|
173 |
+
line-height: 15px;
|
174 |
+
word-wrap: break-word;
|
175 |
+
-webkit-touch-callout: none;
|
176 |
+
}
|
177 |
+
.chosen-container .chosen-results li.active-result {
|
178 |
+
display: list-item;
|
179 |
+
cursor: pointer;
|
180 |
+
}
|
181 |
+
.chosen-container .chosen-results li.disabled-result {
|
182 |
+
display: list-item;
|
183 |
+
color: #ccc;
|
184 |
+
cursor: default;
|
185 |
+
}
|
186 |
+
.chosen-container .chosen-results li.highlighted {
|
187 |
+
background-color: #3875d7;
|
188 |
+
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #3875d7), color-stop(90%, #2a62bc));
|
189 |
+
background-image: -webkit-linear-gradient(#3875d7 20%, #2a62bc 90%);
|
190 |
+
background-image: -moz-linear-gradient(#3875d7 20%, #2a62bc 90%);
|
191 |
+
background-image: -o-linear-gradient(#3875d7 20%, #2a62bc 90%);
|
192 |
+
background-image: linear-gradient(#3875d7 20%, #2a62bc 90%);
|
193 |
+
color: #fff;
|
194 |
+
}
|
195 |
+
.chosen-container .chosen-results li.no-results {
|
196 |
+
color: #777;
|
197 |
+
display: list-item;
|
198 |
+
background: #f4f4f4;
|
199 |
+
}
|
200 |
+
.chosen-container .chosen-results li.group-result {
|
201 |
+
display: list-item;
|
202 |
+
font-weight: bold;
|
203 |
+
cursor: default;
|
204 |
+
}
|
205 |
+
.chosen-container .chosen-results li.group-option {
|
206 |
+
padding-left: 15px;
|
207 |
+
}
|
208 |
+
.chosen-container .chosen-results li em {
|
209 |
+
font-style: normal;
|
210 |
+
text-decoration: underline;
|
211 |
+
}
|
212 |
+
|
213 |
+
/* @end */
|
214 |
+
/* @group Multi Chosen */
|
215 |
+
.chosen-container-multi .chosen-choices {
|
216 |
+
position: relative;
|
217 |
+
overflow: hidden;
|
218 |
+
margin: 0;
|
219 |
+
padding: 0 5px;
|
220 |
+
width: 100%;
|
221 |
+
height: auto !important;
|
222 |
+
height: 1%;
|
223 |
+
border: 1px solid #aaa;
|
224 |
+
background-color: #fff;
|
225 |
+
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
|
226 |
+
background-image: -webkit-linear-gradient(#eeeeee 1%, #ffffff 15%);
|
227 |
+
background-image: -moz-linear-gradient(#eeeeee 1%, #ffffff 15%);
|
228 |
+
background-image: -o-linear-gradient(#eeeeee 1%, #ffffff 15%);
|
229 |
+
background-image: linear-gradient(#eeeeee 1%, #ffffff 15%);
|
230 |
+
cursor: text;
|
231 |
+
}
|
232 |
+
.chosen-container-multi .chosen-choices li {
|
233 |
+
float: left;
|
234 |
+
list-style: none;
|
235 |
+
}
|
236 |
+
.chosen-container-multi .chosen-choices li.search-field {
|
237 |
+
margin: 0;
|
238 |
+
padding: 0;
|
239 |
+
white-space: nowrap;
|
240 |
+
}
|
241 |
+
.chosen-container-multi .chosen-choices li.search-field input[type="text"] {
|
242 |
+
margin: 1px 0;
|
243 |
+
padding: 0;
|
244 |
+
height: 25px;
|
245 |
+
outline: 0;
|
246 |
+
border: 0 !important;
|
247 |
+
background: transparent !important;
|
248 |
+
box-shadow: none;
|
249 |
+
color: #999;
|
250 |
+
font-size: 100%;
|
251 |
+
font-family: sans-serif;
|
252 |
+
line-height: normal;
|
253 |
+
border-radius: 0;
|
254 |
+
}
|
255 |
+
.chosen-container-multi .chosen-choices li.search-choice {
|
256 |
+
position: relative;
|
257 |
+
margin: 3px 5px 3px 0;
|
258 |
+
padding: 3px 20px 3px 5px;
|
259 |
+
border: 1px solid #aaa;
|
260 |
+
max-width: 100%;
|
261 |
+
border-radius: 3px;
|
262 |
+
background-color: #eeeeee;
|
263 |
+
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
|
264 |
+
background-image: -webkit-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
265 |
+
background-image: -moz-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
266 |
+
background-image: -o-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
267 |
+
background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
268 |
+
background-size: 100% 19px;
|
269 |
+
background-repeat: repeat-x;
|
270 |
+
background-clip: padding-box;
|
271 |
+
box-shadow: 0 0 2px white inset, 0 1px 0 rgba(0, 0, 0, 0.05);
|
272 |
+
color: #333;
|
273 |
+
line-height: 13px;
|
274 |
+
cursor: default;
|
275 |
+
}
|
276 |
+
.chosen-container-multi .chosen-choices li.search-choice span {
|
277 |
+
word-wrap: break-word;
|
278 |
+
}
|
279 |
+
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
|
280 |
+
position: absolute;
|
281 |
+
top: 4px;
|
282 |
+
right: 3px;
|
283 |
+
display: block;
|
284 |
+
width: 12px;
|
285 |
+
height: 12px;
|
286 |
+
background: url('../images/chosen-sprite.png') -42px 1px no-repeat;
|
287 |
+
font-size: 1px;
|
288 |
+
}
|
289 |
+
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover {
|
290 |
+
background-position: -42px -10px;
|
291 |
+
}
|
292 |
+
.chosen-container-multi .chosen-choices li.search-choice-disabled {
|
293 |
+
padding-right: 5px;
|
294 |
+
border: 1px solid #ccc;
|
295 |
+
background-color: #e4e4e4;
|
296 |
+
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
|
297 |
+
background-image: -webkit-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
298 |
+
background-image: -moz-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
299 |
+
background-image: -o-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
300 |
+
background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
301 |
+
color: #666;
|
302 |
+
}
|
303 |
+
.chosen-container-multi .chosen-choices li.search-choice-focus {
|
304 |
+
background: #d4d4d4;
|
305 |
+
}
|
306 |
+
.chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close {
|
307 |
+
background-position: -42px -10px;
|
308 |
+
}
|
309 |
+
.chosen-container-multi .chosen-results {
|
310 |
+
margin: 0;
|
311 |
+
padding: 0;
|
312 |
+
}
|
313 |
+
.chosen-container-multi .chosen-drop .result-selected {
|
314 |
+
display: list-item;
|
315 |
+
color: #ccc;
|
316 |
+
cursor: default;
|
317 |
+
}
|
318 |
+
|
319 |
+
/* @end */
|
320 |
+
/* @group Active */
|
321 |
+
.chosen-container-active .chosen-single {
|
322 |
+
border: 1px solid #5897fb;
|
323 |
+
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
|
324 |
+
}
|
325 |
+
.chosen-container-active.chosen-with-drop .chosen-single {
|
326 |
+
border: 1px solid #aaa;
|
327 |
+
-moz-border-radius-bottomright: 0;
|
328 |
+
border-bottom-right-radius: 0;
|
329 |
+
-moz-border-radius-bottomleft: 0;
|
330 |
+
border-bottom-left-radius: 0;
|
331 |
+
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #eeeeee), color-stop(80%, #ffffff));
|
332 |
+
background-image: -webkit-linear-gradient(#eeeeee 20%, #ffffff 80%);
|
333 |
+
background-image: -moz-linear-gradient(#eeeeee 20%, #ffffff 80%);
|
334 |
+
background-image: -o-linear-gradient(#eeeeee 20%, #ffffff 80%);
|
335 |
+
background-image: linear-gradient(#eeeeee 20%, #ffffff 80%);
|
336 |
+
box-shadow: 0 1px 0 #fff inset;
|
337 |
+
}
|
338 |
+
.chosen-container-active.chosen-with-drop .chosen-single div {
|
339 |
+
border-left: none;
|
340 |
+
background: transparent;
|
341 |
+
}
|
342 |
+
.chosen-container-active.chosen-with-drop .chosen-single div b {
|
343 |
+
background-position: -18px 2px;
|
344 |
+
}
|
345 |
+
.chosen-container-active .chosen-choices {
|
346 |
+
border: 1px solid #5897fb;
|
347 |
+
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
|
348 |
+
}
|
349 |
+
.chosen-container-active .chosen-choices li.search-field input[type="text"] {
|
350 |
+
color: #222 !important;
|
351 |
+
}
|
352 |
+
|
353 |
+
/* @end */
|
354 |
+
/* @group Disabled Support */
|
355 |
+
.chosen-disabled {
|
356 |
+
opacity: 0.5 !important;
|
357 |
+
cursor: default;
|
358 |
+
}
|
359 |
+
.chosen-disabled .chosen-single {
|
360 |
+
cursor: default;
|
361 |
+
}
|
362 |
+
.chosen-disabled .chosen-choices .search-choice .search-choice-close {
|
363 |
+
cursor: default;
|
364 |
+
}
|
365 |
+
|
366 |
+
/* @end */
|
367 |
+
/* @group Right to Left */
|
368 |
+
.chosen-rtl {
|
369 |
+
text-align: right;
|
370 |
+
}
|
371 |
+
.chosen-rtl .chosen-single {
|
372 |
+
overflow: visible;
|
373 |
+
padding: 0 8px 0 0;
|
374 |
+
}
|
375 |
+
.chosen-rtl .chosen-single span {
|
376 |
+
margin-right: 0;
|
377 |
+
margin-left: 26px;
|
378 |
+
direction: rtl;
|
379 |
+
}
|
380 |
+
.chosen-rtl .chosen-single-with-deselect span {
|
381 |
+
margin-left: 38px;
|
382 |
+
}
|
383 |
+
.chosen-rtl .chosen-single div {
|
384 |
+
right: auto;
|
385 |
+
left: 3px;
|
386 |
+
}
|
387 |
+
.chosen-rtl .chosen-single abbr {
|
388 |
+
right: auto;
|
389 |
+
left: 26px;
|
390 |
+
}
|
391 |
+
.chosen-rtl .chosen-choices li {
|
392 |
+
float: right;
|
393 |
+
}
|
394 |
+
.chosen-rtl .chosen-choices li.search-field input[type="text"] {
|
395 |
+
direction: rtl;
|
396 |
+
}
|
397 |
+
.chosen-rtl .chosen-choices li.search-choice {
|
398 |
+
margin: 3px 5px 3px 0;
|
399 |
+
padding: 3px 5px 3px 19px;
|
400 |
+
}
|
401 |
+
.chosen-rtl .chosen-choices li.search-choice .search-choice-close {
|
402 |
+
right: auto;
|
403 |
+
left: 4px;
|
404 |
+
}
|
405 |
+
.chosen-rtl.chosen-container-single-nosearch .chosen-search,
|
406 |
+
.chosen-rtl .chosen-drop {
|
407 |
+
left: 9999px;
|
408 |
+
}
|
409 |
+
.chosen-rtl.chosen-container-single .chosen-results {
|
410 |
+
margin: 0 0 4px 4px;
|
411 |
+
padding: 0 4px 0 0;
|
412 |
+
}
|
413 |
+
.chosen-rtl .chosen-results li.group-option {
|
414 |
+
padding-right: 15px;
|
415 |
+
padding-left: 0;
|
416 |
+
}
|
417 |
+
.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div {
|
418 |
+
border-right: none;
|
419 |
+
}
|
420 |
+
.chosen-rtl .chosen-search input[type="text"] {
|
421 |
+
padding: 4px 5px 4px 20px;
|
422 |
+
background: white url('../images/chosen-sprite.png') no-repeat -30px -20px;
|
423 |
+
background: url('../images/chosen-sprite.png') no-repeat -30px -20px;
|
424 |
+
direction: rtl;
|
425 |
+
}
|
426 |
+
.chosen-rtl.chosen-container-single .chosen-single div b {
|
427 |
+
background-position: 6px 2px;
|
428 |
+
}
|
429 |
+
.chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b {
|
430 |
+
background-position: -12px 2px;
|
431 |
+
}
|
432 |
+
|
433 |
+
/* @end */
|
434 |
+
/* @group Retina compatibility */
|
435 |
+
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 144dpi), only screen and (min-resolution: 1.5dppx) {
|
436 |
+
.chosen-rtl .chosen-search input[type="text"],
|
437 |
+
.chosen-container-single .chosen-single abbr,
|
438 |
+
.chosen-container-single .chosen-single div b,
|
439 |
+
.chosen-container-single .chosen-search input[type="text"],
|
440 |
+
.chosen-container-multi .chosen-choices .search-choice .search-choice-close,
|
441 |
+
.chosen-container .chosen-results-scroll-down span,
|
442 |
+
.chosen-container .chosen-results-scroll-up span {
|
443 |
+
background-image: url('../images/chosen-sprite@2x.png') !important;
|
444 |
+
background-size: 52px 37px !important;
|
445 |
+
background-repeat: no-repeat !important;
|
446 |
+
}
|
447 |
+
}
|
448 |
+
/* @end */
|
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*!
|
2 |
+
Chosen, a Select Box Enhancer for jQuery and Prototype
|
3 |
+
by Patrick Filler for Harvest, http://getharvest.com
|
4 |
+
|
5 |
+
Version 1.5.1
|
6 |
+
Full source at https://github.com/harvesthq/chosen
|
7 |
+
Copyright (c) 2011-2016 Harvest http://getharvest.com
|
8 |
+
|
9 |
+
MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md
|
10 |
+
This file is generated by `grunt build`, do not edit it by hand.
|
11 |
+
*/.chosen-container{position:relative;display:inline-block;vertical-align:middle;font-size:13px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chosen-container *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.chosen-container .chosen-drop{position:absolute;top:100%;left:-9999px;z-index:1010;width:100%;border:1px solid #aaa;border-top:0;background:#fff;box-shadow:0 4px 5px rgba(0,0,0,.15)}.chosen-container.chosen-with-drop .chosen-drop{left:0}.chosen-container a{cursor:pointer}.chosen-container .chosen-single .group-name,.chosen-container .search-choice .group-name{margin-right:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:400;color:#999}.chosen-container .chosen-single .group-name:after,.chosen-container .search-choice .group-name:after{content:":";padding-left:2px;vertical-align:top}.chosen-container-single .chosen-single{position:relative;display:block;overflow:hidden;padding:0 0 0 8px;height:25px;border:1px solid #aaa;border-radius:5px;background:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#fff),color-stop(50%,#f6f6f6),color-stop(52%,#eee),color-stop(100%,#f4f4f4));background:-webkit-linear-gradient(#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background:-moz-linear-gradient(#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background:-o-linear-gradient(#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background:linear-gradient(#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-clip:padding-box;box-shadow:0 0 3px #fff inset,0 1px 1px rgba(0,0,0,.1);color:#444;text-decoration:none;white-space:nowrap;line-height:24px}.chosen-container-single .chosen-default{color:#999}.chosen-container-single .chosen-single span{display:block;overflow:hidden;margin-right:26px;text-overflow:ellipsis;white-space:nowrap}.chosen-container-single .chosen-single-with-deselect span{margin-right:38px}.chosen-container-single .chosen-single abbr{position:absolute;top:6px;right:26px;display:block;width:12px;height:12px;background:url(chosen-sprite.png) -42px 1px no-repeat;font-size:1px}.chosen-container-single .chosen-single abbr:hover,.chosen-container-single.chosen-disabled .chosen-single abbr:hover{background-position:-42px -10px}.chosen-container-single .chosen-single div{position:absolute;top:0;right:0;display:block;width:18px;height:100%}.chosen-container-single .chosen-single div b{display:block;width:100%;height:100%;background:url(chosen-sprite.png) 0 2px no-repeat}.chosen-container-single .chosen-search{position:relative;z-index:1010;margin:0;padding:3px 4px;white-space:nowrap}.chosen-container-single .chosen-search input[type=text]{margin:1px 0;padding:4px 20px 4px 5px;width:100%;height:auto;outline:0;border:1px solid #aaa;background:url(chosen-sprite.png) 100% -20px no-repeat;font-size:1em;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-single .chosen-drop{margin-top:-1px;border-radius:0 0 4px 4px;background-clip:padding-box}.chosen-container-single.chosen-container-single-nosearch .chosen-search{position:absolute;left:-9999px}.chosen-container .chosen-results{color:#444;position:relative;overflow-x:hidden;overflow-y:auto;margin:0 4px 4px 0;padding:0 0 0 4px;max-height:240px;-webkit-overflow-scrolling:touch}.chosen-container .chosen-results li{display:none;margin:0;padding:5px 6px;list-style:none;line-height:15px;word-wrap:break-word;-webkit-touch-callout:none}.chosen-container .chosen-results li.active-result{display:list-item;cursor:pointer}.chosen-container .chosen-results li.disabled-result{display:list-item;color:#ccc;cursor:default}.chosen-container .chosen-results li.highlighted{background-color:#3875d7;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#3875d7),color-stop(90%,#2a62bc));background-image:-webkit-linear-gradient(#3875d7 20%,#2a62bc 90%);background-image:-moz-linear-gradient(#3875d7 20%,#2a62bc 90%);background-image:-o-linear-gradient(#3875d7 20%,#2a62bc 90%);background-image:linear-gradient(#3875d7 20%,#2a62bc 90%);color:#fff}.chosen-container .chosen-results li.no-results{color:#777;display:list-item;background:#f4f4f4}.chosen-container .chosen-results li.group-result{display:list-item;font-weight:700;cursor:default}.chosen-container .chosen-results li.group-option{padding-left:15px}.chosen-container .chosen-results li em{font-style:normal;text-decoration:underline}.chosen-container-multi .chosen-choices{position:relative;overflow:hidden;margin:0;padding:0 5px;width:100%;height:auto!important;height:1%;border:1px solid #aaa;background-color:#fff;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(1%,#eee),color-stop(15%,#fff));background-image:-webkit-linear-gradient(#eee 1%,#fff 15%);background-image:-moz-linear-gradient(#eee 1%,#fff 15%);background-image:-o-linear-gradient(#eee 1%,#fff 15%);background-image:linear-gradient(#eee 1%,#fff 15%);cursor:text}.chosen-container-multi .chosen-choices li{float:left;list-style:none}.chosen-container-multi .chosen-choices li.search-field{margin:0;padding:0;white-space:nowrap}.chosen-container-multi .chosen-choices li.search-field input[type=text]{margin:1px 0;padding:0;height:25px;outline:0;border:0!important;background:0 0!important;box-shadow:none;color:#999;font-size:100%;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-multi .chosen-choices li.search-choice{position:relative;margin:3px 5px 3px 0;padding:3px 20px 3px 5px;border:1px solid #aaa;max-width:100%;border-radius:3px;background-color:#eee;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#f4f4f4),color-stop(50%,#f0f0f0),color-stop(52%,#e8e8e8),color-stop(100%,#eee));background-image:-webkit-linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-moz-linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-o-linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-size:100% 19px;background-repeat:repeat-x;background-clip:padding-box;box-shadow:0 0 2px #fff inset,0 1px 0 rgba(0,0,0,.05);color:#333;line-height:13px;cursor:default}.chosen-container-multi .chosen-choices li.search-choice span{word-wrap:break-word}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close{position:absolute;top:4px;right:3px;display:block;width:12px;height:12px;background:url(../images/chosen-sprite.png) -42px 1px no-repeat;font-size:1px}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover{background-position:-42px -10px}.chosen-container-multi .chosen-choices li.search-choice-disabled{padding-right:5px;border:1px solid #ccc;background-color:#e4e4e4;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#f4f4f4),color-stop(50%,#f0f0f0),color-stop(52%,#e8e8e8),color-stop(100%,#eee));background-image:-webkit-linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-moz-linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-o-linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);color:#666}.chosen-container-multi .chosen-choices li.search-choice-focus{background:#d4d4d4}.chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close{background-position:-42px -10px}.chosen-container-multi .chosen-results{margin:0;padding:0}.chosen-container-multi .chosen-drop .result-selected{display:list-item;color:#ccc;cursor:default}.chosen-container-active .chosen-single{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active.chosen-with-drop .chosen-single{border:1px solid #aaa;-moz-border-radius-bottomright:0;border-bottom-right-radius:0;-moz-border-radius-bottomleft:0;border-bottom-left-radius:0;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#eee),color-stop(80%,#fff));background-image:-webkit-linear-gradient(#eee 20%,#fff 80%);background-image:-moz-linear-gradient(#eee 20%,#fff 80%);background-image:-o-linear-gradient(#eee 20%,#fff 80%);background-image:linear-gradient(#eee 20%,#fff 80%);box-shadow:0 1px 0 #fff inset}.chosen-container-active.chosen-with-drop .chosen-single div{border-left:none;background:0 0}.chosen-container-active.chosen-with-drop .chosen-single div b{background-position:-18px 2px}.chosen-container-active .chosen-choices{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active .chosen-choices li.search-field input[type=text]{color:#222!important}.chosen-disabled{opacity:.5!important;cursor:default}.chosen-disabled .chosen-choices .search-choice .search-choice-close,.chosen-disabled .chosen-single{cursor:default}.chosen-rtl{text-align:right}.chosen-rtl .chosen-single{overflow:visible;padding:0 8px 0 0}.chosen-rtl .chosen-single span{margin-right:0;margin-left:26px;direction:rtl}.chosen-rtl .chosen-single-with-deselect span{margin-left:38px}.chosen-rtl .chosen-single div{right:auto;left:3px}.chosen-rtl .chosen-single abbr{right:auto;left:26px}.chosen-rtl .chosen-choices li{float:right}.chosen-rtl .chosen-choices li.search-field input[type=text]{direction:rtl}.chosen-rtl .chosen-choices li.search-choice{margin:3px 5px 3px 0;padding:3px 5px 3px 19px}.chosen-rtl .chosen-choices li.search-choice .search-choice-close{right:auto;left:4px}.chosen-rtl .chosen-drop,.chosen-rtl.chosen-container-single-nosearch .chosen-search{left:9999px}.chosen-rtl.chosen-container-single .chosen-results{margin:0 0 4px 4px;padding:0 4px 0 0}.chosen-rtl .chosen-results li.group-option{padding-right:15px;padding-left:0}.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div{border-right:none}.chosen-rtl .chosen-search input[type=text]{padding:4px 5px 4px 20px;background:url(../images/chosen-sprite.png) -30px -20px no-repeat;direction:rtl}.chosen-rtl.chosen-container-single .chosen-single div b{background-position:6px 2px}.chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b{background-position:-12px 2px}@media only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min-resolution:144dpi),only screen and (min-resolution:1.5dppx){.chosen-container .chosen-results-scroll-down span,.chosen-container .chosen-results-scroll-up span,.chosen-container-multi .chosen-choices .search-choice .search-choice-close,.chosen-container-single .chosen-search input[type=text],.chosen-container-single .chosen-single abbr,.chosen-container-single .chosen-single div b,.chosen-rtl .chosen-search input[type=text]{background-image:url(../images/chosen-sprite@2x.png)!important;background-size:52px 37px!important;background-repeat:no-repeat!important}}
|
@@ -1,2 +1,2 @@
|
|
1 |
-
<?php
|
2 |
-
// Silence is golden.
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.ui-timepicker-div .ui-widget-header { margin-bottom: 8px; }
|
2 |
+
.ui-timepicker-div dl { text-align: left; }
|
3 |
+
.ui-timepicker-div dl dt { float: left; clear:left; padding: 0 0 0 5px; }
|
4 |
+
.ui-timepicker-div dl dd { margin: 0 10px 10px 40%; }
|
5 |
+
.ui-timepicker-div td { font-size: 90%; }
|
6 |
+
.ui-tpicker-grid-label { background: none; border: none; margin: 0; padding: 0; }
|
7 |
+
.ui-timepicker-div .ui_tpicker_unit_hide{ display: none; }
|
8 |
+
|
9 |
+
.ui-timepicker-div .ui_tpicker_time .ui_tpicker_time_input { background: none; color: inherit; border: none; outline: none; border-bottom: solid 1px #555; width: 95%; }
|
10 |
+
.ui-timepicker-div .ui_tpicker_time .ui_tpicker_time_input:focus { border-bottom-color: #aaa; }
|
11 |
+
|
12 |
+
.ui-timepicker-rtl{ direction: rtl; }
|
13 |
+
.ui-timepicker-rtl dl { text-align: right; padding: 0 5px 0 0; }
|
14 |
+
.ui-timepicker-rtl dl dt{ float: right; clear: right; }
|
15 |
+
.ui-timepicker-rtl dl dd { margin: 0 40% 10px 10px; }
|
16 |
+
|
17 |
+
/* Shortened version style */
|
18 |
+
.ui-timepicker-div.ui-timepicker-oneLine { padding-right: 2px; }
|
19 |
+
.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_time,
|
20 |
+
.ui-timepicker-div.ui-timepicker-oneLine dt { display: none; }
|
21 |
+
.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_time_label { display: block; padding-top: 2px; }
|
22 |
+
.ui-timepicker-div.ui-timepicker-oneLine dl { text-align: right; }
|
23 |
+
.ui-timepicker-div.ui-timepicker-oneLine dl dd,
|
24 |
+
.ui-timepicker-div.ui-timepicker-oneLine dl dd > div { display:inline-block; margin:0; }
|
25 |
+
.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_minute:before,
|
26 |
+
.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_second:before { content:':'; display:inline-block; }
|
27 |
+
.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_millisec:before,
|
28 |
+
.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_microsec:before { content:'.'; display:inline-block; }
|
29 |
+
.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_unit_hide,
|
30 |
+
.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_unit_hide:before{ display: none; }
|
@@ -0,0 +1 @@
|
|
|
1 |
+
.ui-timepicker-div .ui-widget-header{margin-bottom:8px}.ui-timepicker-div dl{text-align:left}.ui-timepicker-div dl dt{float:left;clear:left;padding:0 0 0 5px}.ui-timepicker-div dl dd{margin:0 10px 10px 40%}.ui-timepicker-div td{font-size:90%}.ui-tpicker-grid-label{background:0 0;border:none;margin:0;padding:0}.ui-timepicker-div .ui_tpicker_unit_hide{display:none}.ui-timepicker-div .ui_tpicker_time .ui_tpicker_time_input{background:0 0;color:inherit;border:none;outline:0;border-bottom:solid 1px #555;width:95%}.ui-timepicker-div .ui_tpicker_time .ui_tpicker_time_input:focus{border-bottom-color:#aaa}.ui-timepicker-rtl{direction:rtl}.ui-timepicker-rtl dl{text-align:right;padding:0 5px 0 0}.ui-timepicker-rtl dl dt{float:right;clear:right}.ui-timepicker-rtl dl dd{margin:0 40% 10px 10px}.ui-timepicker-div.ui-timepicker-oneLine{padding-right:2px}.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_time,.ui-timepicker-div.ui-timepicker-oneLine dt{display:none}.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_time_label{display:block;padding-top:2px}.ui-timepicker-div.ui-timepicker-oneLine dl{text-align:right}.ui-timepicker-div.ui-timepicker-oneLine dl dd,.ui-timepicker-div.ui-timepicker-oneLine dl dd>div{display:inline-block;margin:0}.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_minute:before,.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_second:before{content:':';display:inline-block}.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_microsec:before,.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_millisec:before{content:'.';display:inline-block}.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_unit_hide,.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_unit_hide:before{display:none}
|
@@ -1,118 +1,148 @@
|
|
1 |
-
h2.wpmm-title {
|
2 |
-
background: url('../images/icon-48.png') no-repeat left center;
|
3 |
-
line-height: 42px;
|
4 |
-
margin-bottom: 30px;
|
5 |
-
height: 48px;
|
6 |
-
padding-left: 55px;
|
7 |
-
}
|
8 |
-
|
9 |
-
/* WRAP*/
|
10 |
-
.wpmm-wrapper {
|
11 |
-
display: table;
|
12 |
-
width: 100%;
|
13 |
-
}
|
14 |
-
|
15 |
-
.wpmm-wrapper #content {
|
16 |
-
min-width: 800px;
|
17 |
-
}
|
18 |
-
|
19 |
-
.wpmm-wrapper #sidebar {
|
20 |
-
padding: 0 0 0 20px;
|
21 |
-
width: 280px;
|
22 |
-
}
|
23 |
-
|
24 |
-
.wpmm-wrapper #sidebar .sidebar_box {
|
25 |
-
background: none repeat scroll 0 0 #fff;
|
26 |
-
border: 1px solid #e5e5e5;
|
27 |
-
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
|
28 |
-
min-width: 255px;
|
29 |
-
line-height: 1;
|
30 |
-
margin-bottom: 20px;
|
31 |
-
padding: 0;
|
32 |
-
}
|
33 |
-
|
34 |
-
.wpmm-wrapper #sidebar .sidebar_box h3 {
|
35 |
-
margin: 0;
|
36 |
-
padding: 8px 12px;
|
37 |
-
border-bottom: 1px solid #ececec;
|
38 |
-
}
|
39 |
-
|
40 |
-
.wpmm-wrapper #sidebar .sidebar_box .inside {
|
41 |
-
margin: 6px 0 0;
|
42 |
-
font-size: 13px;
|
43 |
-
line-height: 1.4em;
|
44 |
-
padding: 0 12px 12px;
|
45 |
-
}
|
46 |
-
|
47 |
-
.wpmm-wrapper .wrapper-cell {
|
48 |
-
display: table-cell;
|
49 |
-
}
|
50 |
-
|
51 |
-
.wpmm-wrapper .hidden {
|
52 |
-
display: none;
|
53 |
-
}
|
54 |
-
|
55 |
-
/* TABS */
|
56 |
-
.nav-tab-wrapper {
|
57 |
-
border-bottom: 1px solid #ccc;
|
58 |
-
padding-bottom: 0;
|
59 |
-
padding-left: 10px;
|
60 |
-
}
|
61 |
-
|
62 |
-
.nav-tab-wrapper a {
|
63 |
-
font-size: 15px;
|
64 |
-
font-weight: 700;
|
65 |
-
line-height: 24px;
|
66 |
-
padding: 6px 10px;
|
67 |
-
}
|
68 |
-
|
69 |
-
/* TABS CONTENT */
|
70 |
-
.tabs-content {
|
71 |
-
margin-top: 20px;
|
72 |
-
padding-left: 10px;
|
73 |
-
}
|
74 |
-
|
75 |
-
.tabs-content .wp-color-result {
|
76 |
-
margin-bottom: -2px;
|
77 |
-
}
|
78 |
-
|
79 |
-
.tabs-content ul.bg_list {
|
80 |
-
float: left;
|
81 |
-
}
|
82 |
-
|
83 |
-
.tabs-content ul.bg_list li {
|
84 |
-
float: left;
|
85 |
-
margin-right: 7px;
|
86 |
-
opacity: 0.4;
|
87 |
-
}
|
88 |
-
|
89 |
-
.tabs-content ul.bg_list li.active {
|
90 |
-
opacity: 1;
|
91 |
-
}
|
92 |
-
|
93 |
-
.tabs-content ul.bg_list li input {
|
94 |
-
display: none;
|
95 |
-
}
|
96 |
-
|
97 |
-
.tabs-content .countdown_details input {
|
98 |
-
width: 70px;
|
99 |
-
}
|
100 |
-
|
101 |
-
.tabs-content .countdown_details .margin_left {
|
102 |
-
margin-left: 30px;
|
103 |
-
}
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
#sidebar .
|
112 |
-
margin-top: 10px;
|
113 |
-
margin-bottom: -
|
114 |
-
}
|
115 |
-
|
116 |
-
#sidebar .resources_box
|
117 |
-
margin-
|
118 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
h2.wpmm-title {
|
2 |
+
background: url('../images/icon-48.png') no-repeat left center;
|
3 |
+
line-height: 42px !important;
|
4 |
+
margin-bottom: 30px !important;
|
5 |
+
height: 48px;
|
6 |
+
padding-left: 55px !important;
|
7 |
+
}
|
8 |
+
|
9 |
+
/* WRAP*/
|
10 |
+
.wpmm-wrapper {
|
11 |
+
display: table;
|
12 |
+
width: 100%;
|
13 |
+
}
|
14 |
+
|
15 |
+
.wpmm-wrapper #content {
|
16 |
+
min-width: 800px;
|
17 |
+
}
|
18 |
+
|
19 |
+
.wpmm-wrapper #sidebar {
|
20 |
+
padding: 0 0 0 20px;
|
21 |
+
width: 280px;
|
22 |
+
}
|
23 |
+
|
24 |
+
.wpmm-wrapper #sidebar .sidebar_box {
|
25 |
+
background: none repeat scroll 0 0 #fff;
|
26 |
+
border: 1px solid #e5e5e5;
|
27 |
+
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
|
28 |
+
min-width: 255px;
|
29 |
+
line-height: 1;
|
30 |
+
margin-bottom: 20px;
|
31 |
+
padding: 0;
|
32 |
+
}
|
33 |
+
|
34 |
+
.wpmm-wrapper #sidebar .sidebar_box h3 {
|
35 |
+
margin: 0;
|
36 |
+
padding: 8px 12px;
|
37 |
+
border-bottom: 1px solid #ececec;
|
38 |
+
}
|
39 |
+
|
40 |
+
.wpmm-wrapper #sidebar .sidebar_box .inside {
|
41 |
+
margin: 6px 0 0;
|
42 |
+
font-size: 13px;
|
43 |
+
line-height: 1.4em;
|
44 |
+
padding: 0 12px 12px;
|
45 |
+
}
|
46 |
+
|
47 |
+
.wpmm-wrapper .wrapper-cell {
|
48 |
+
display: table-cell;
|
49 |
+
}
|
50 |
+
|
51 |
+
.wpmm-wrapper .hidden {
|
52 |
+
display: none;
|
53 |
+
}
|
54 |
+
|
55 |
+
/* TABS */
|
56 |
+
.nav-tab-wrapper {
|
57 |
+
border-bottom: 1px solid #ccc;
|
58 |
+
padding-bottom: 0;
|
59 |
+
padding-left: 10px;
|
60 |
+
}
|
61 |
+
|
62 |
+
.nav-tab-wrapper a {
|
63 |
+
font-size: 15px;
|
64 |
+
font-weight: 700;
|
65 |
+
line-height: 24px;
|
66 |
+
padding: 6px 10px;
|
67 |
+
}
|
68 |
+
|
69 |
+
/* TABS CONTENT */
|
70 |
+
.tabs-content {
|
71 |
+
margin-top: 20px;
|
72 |
+
padding-left: 10px;
|
73 |
+
}
|
74 |
+
|
75 |
+
.tabs-content .wp-color-result {
|
76 |
+
margin-bottom: -2px;
|
77 |
+
}
|
78 |
+
|
79 |
+
.tabs-content ul.bg_list {
|
80 |
+
float: left;
|
81 |
+
}
|
82 |
+
|
83 |
+
.tabs-content ul.bg_list li {
|
84 |
+
float: left;
|
85 |
+
margin-right: 7px;
|
86 |
+
opacity: 0.4;
|
87 |
+
}
|
88 |
+
|
89 |
+
.tabs-content ul.bg_list li.active {
|
90 |
+
opacity: 1;
|
91 |
+
}
|
92 |
+
|
93 |
+
.tabs-content ul.bg_list li input {
|
94 |
+
display: none;
|
95 |
+
}
|
96 |
+
|
97 |
+
.tabs-content .countdown_details input {
|
98 |
+
width: 70px;
|
99 |
+
}
|
100 |
+
|
101 |
+
.tabs-content .countdown_details .margin_left {
|
102 |
+
margin-left: 30px;
|
103 |
+
}
|
104 |
+
|
105 |
+
.tabs-content .wp-picker-holder {
|
106 |
+
position:absolute;
|
107 |
+
z-index:9999999;
|
108 |
+
}
|
109 |
+
|
110 |
+
/* SIDEBARS */
|
111 |
+
#sidebar .info_box ul {
|
112 |
+
margin-top: 10px;
|
113 |
+
margin-bottom: -5px;
|
114 |
+
}
|
115 |
+
|
116 |
+
#sidebar .resources_box ul, #sidebar .themes_box ul {
|
117 |
+
margin-top: 10px;
|
118 |
+
margin-bottom: -15px;
|
119 |
+
}
|
120 |
+
|
121 |
+
#sidebar .resources_box li, #sidebar .themes_box li {
|
122 |
+
margin-bottom: 10px;
|
123 |
+
}
|
124 |
+
|
125 |
+
/* CHOSEN.JS MULTISELECT */
|
126 |
+
.chosen-select {
|
127 |
+
width: 195px !important;
|
128 |
+
}
|
129 |
+
|
130 |
+
.chosen-container {
|
131 |
+
width: 195px !important;
|
132 |
+
}
|
133 |
+
|
134 |
+
.chosen-container-active .chosen-choices {
|
135 |
+
box-shadow: none !important;
|
136 |
+
background-image: none !important;
|
137 |
+
}
|
138 |
+
|
139 |
+
.chosen-container-multi .chosen-choices {
|
140 |
+
border: 1px solid #ddd !important;
|
141 |
+
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.07) inset !important;
|
142 |
+
background-image: none !important;
|
143 |
+
}
|
144 |
+
|
145 |
+
.chosen-container .chosen-results li.highlighted {
|
146 |
+
background-color: #0074a2 !important;
|
147 |
+
background-image: none !important;
|
148 |
+
}
|
@@ -0,0 +1 @@
|
|
|
1 |
+
h2.wpmm-title{background:url(../images/icon-48.png) left center no-repeat;line-height:42px!important;margin-bottom:30px!important;height:48px;padding-left:55px!important}.wpmm-wrapper{display:table;width:100%}.wpmm-wrapper #content{min-width:800px}.wpmm-wrapper #sidebar{padding:0 0 0 20px;width:280px}.wpmm-wrapper #sidebar .sidebar_box{background:#fff;border:1px solid #e5e5e5;box-shadow:0 1px 1px rgba(0,0,0,.04);min-width:255px;line-height:1;margin-bottom:20px;padding:0}.wpmm-wrapper #sidebar .sidebar_box h3{margin:0;padding:8px 12px;border-bottom:1px solid #ececec}.wpmm-wrapper #sidebar .sidebar_box .inside{margin:6px 0 0;font-size:13px;line-height:1.4em;padding:0 12px 12px}.wpmm-wrapper .wrapper-cell{display:table-cell}.wpmm-wrapper .hidden{display:none}.nav-tab-wrapper{border-bottom:1px solid #ccc;padding-bottom:0;padding-left:10px}.nav-tab-wrapper a{font-size:15px;font-weight:700;line-height:24px;padding:6px 10px}.tabs-content{margin-top:20px;padding-left:10px}.tabs-content .wp-color-result{margin-bottom:-2px}.tabs-content ul.bg_list{float:left}.tabs-content ul.bg_list li{float:left;margin-right:7px;opacity:.4}.tabs-content ul.bg_list li.active{opacity:1}.tabs-content ul.bg_list li input{display:none}.tabs-content .countdown_details input{width:70px}.tabs-content .countdown_details .margin_left{margin-left:30px}.tabs-content .wp-picker-holder{position:absolute;z-index:9999999}#sidebar .info_box ul{margin-top:10px;margin-bottom:-5px}#sidebar .resources_box ul,#sidebar .themes_box ul{margin-top:10px;margin-bottom:-15px}#sidebar .resources_box li,#sidebar .themes_box li{margin-bottom:10px}.chosen-container,.chosen-select{width:195px!important}.chosen-container-active .chosen-choices{box-shadow:none!important;background-image:none!important}.chosen-container-multi .chosen-choices{border:1px solid #ddd!important;box-shadow:0 1px 2px rgba(0,0,0,.07) inset!important;background-image:none!important}.chosen-container .chosen-results li.highlighted{background-color:#0074a2!important;background-image:none!important}
|
@@ -1,462 +1,462 @@
|
|
1 |
-
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
|
2 |
-
margin: 0;
|
3 |
-
padding: 0;
|
4 |
-
border: 0;
|
5 |
-
font-size: 100%;
|
6 |
-
font: inherit;
|
7 |
-
vertical-align: baseline;
|
8 |
-
text-decoration: none;
|
9 |
-
}
|
10 |
-
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
|
11 |
-
display: block;
|
12 |
-
}
|
13 |
-
body {
|
14 |
-
line-height: 1;
|
15 |
-
}
|
16 |
-
ol, ul {
|
17 |
-
list-style: none;
|
18 |
-
}
|
19 |
-
blockquote, q {
|
20 |
-
display: block;
|
21 |
-
width: 500px;
|
22 |
-
margin: 0 auto;
|
23 |
-
text-align: left;
|
24 |
-
position: relative;
|
25 |
-
font-style: italic;
|
26 |
-
}
|
27 |
-
blockquote:before, blockquote:after, q:before, q:after {
|
28 |
-
content: '"';
|
29 |
-
content: none;
|
30 |
-
}
|
31 |
-
input, button {
|
32 |
-
-webkit-appearance: none;
|
33 |
-
border-radius: 0;
|
34 |
-
}
|
35 |
-
table {
|
36 |
-
border-collapse: collapse;
|
37 |
-
border-spacing: 0;
|
38 |
-
}
|
39 |
-
em, i {
|
40 |
-
font-style: italic;
|
41 |
-
}
|
42 |
-
del {
|
43 |
-
text-decoration: line-through;
|
44 |
-
}
|
45 |
-
strong, b {
|
46 |
-
font-weight: bold;
|
47 |
-
}
|
48 |
-
ol {
|
49 |
-
width: 600px;
|
50 |
-
margin: 0 auto;
|
51 |
-
text-align: left;
|
52 |
-
}
|
53 |
-
ol li {
|
54 |
-
list-style-type: decimal;
|
55 |
-
}
|
56 |
-
ul {
|
57 |
-
width: 600px;
|
58 |
-
margin: 0 auto;
|
59 |
-
text-align: left;
|
60 |
-
}
|
61 |
-
ul li {
|
62 |
-
list-style: disc;
|
63 |
-
}
|
64 |
-
a {
|
65 |
-
color: inherit;
|
66 |
-
text-decoration: underline;
|
67 |
-
}
|
68 |
-
body, html {
|
69 |
-
min-height: 100%;
|
70 |
-
/*height: 100%;*/
|
71 |
-
}
|
72 |
-
body {
|
73 |
-
background-color: #fff;
|
74 |
-
color: #1b1f23;
|
75 |
-
font-family: Helvetica Neue, Arial, sans-serif;
|
76 |
-
}
|
77 |
-
.wrap {
|
78 |
-
width: 605px;
|
79 |
-
margin: 100px auto 0;
|
80 |
-
text-align: center;
|
81 |
-
}
|
82 |
-
.wrap h1 {
|
83 |
-
font-size: 30px;
|
84 |
-
font-weight: 700;
|
85 |
-
margin: 0 0 90px;
|
86 |
-
}
|
87 |
-
.wrap h2 {
|
88 |
-
font-size: 24px;
|
89 |
-
font-weight: 400;
|
90 |
-
line-height: 45px;
|
91 |
-
margin: 0 0 80px;
|
92 |
-
}
|
93 |
-
.wrap h3 {
|
94 |
-
font-size: 24px;
|
95 |
-
font-weight: 400px;
|
96 |
-
margin: 0 0 45px;
|
97 |
-
}
|
98 |
-
.wrap .author_link {
|
99 |
-
margin-top: 15px;
|
100 |
-
color: #616161;
|
101 |
-
margin: 0 0 50px;
|
102 |
-
}
|
103 |
-
.wrap .author_link a {
|
104 |
-
color: #000;
|
105 |
-
}
|
106 |
-
/**
|
107 |
-
* COUNTDOWN
|
108 |
-
**/
|
109 |
-
|
110 |
-
.wrap .countdown {
|
111 |
-
margin: 0 0 85px;
|
112 |
-
}
|
113 |
-
.wrap .countdown span {
|
114 |
-
font-size: 30px;
|
115 |
-
}
|
116 |
-
/**
|
117 |
-
* SUBSCRIBE FORM
|
118 |
-
**/
|
119 |
-
|
120 |
-
.wrap form.subscribe_form {
|
121 |
-
width: 465px;
|
122 |
-
margin: 0 0 75px;
|
123 |
-
display: inline-block;
|
124 |
-
border: 3px solid #e0e0e0;
|
125 |
-
box-sizing: border-box;
|
126 |
-
}
|
127 |
-
.wrap form.subscribe_form input {
|
128 |
-
margin: 0;
|
129 |
-
outline: 0;
|
130 |
-
border: 0;
|
131 |
-
float: left;
|
132 |
-
font-size: 18px;
|
133 |
-
padding: 20px 25px;
|
134 |
-
box-sizing: content-box;
|
135 |
-
}
|
136 |
-
.wrap form.subscribe_form input[type="text"] {
|
137 |
-
width: 245px;
|
138 |
-
}
|
139 |
-
.wrap form.subscribe_form input[type="submit"] {
|
140 |
-
background: #000;
|
141 |
-
color: #fff;
|
142 |
-
float: right;
|
143 |
-
cursor: pointer;
|
144 |
-
padding: 20px 30px;
|
145 |
-
border-left: 3px solid #e0e0e0;
|
146 |
-
}
|
147 |
-
.wrap form.subscribe_form input[type="submit"]:hover {
|
148 |
-
background: #fff;
|
149 |
-
color: #000;
|
150 |
-
border-left: 3px solid #e0e0e0;
|
151 |
-
}
|
152 |
-
.wrap form.subscribe_form input[type="submit"]:active {
|
153 |
-
background: #1e1e1e;
|
154 |
-
color: #fff;
|
155 |
-
}
|
156 |
-
.wrap form.subscribe_form .error {
|
157 |
-
color: red;
|
158 |
-
}
|
159 |
-
.wrap form.subscribe_form label.error {
|
160 |
-
display: none !important;
|
161 |
-
}
|
162 |
-
/**
|
163 |
-
* LOGIN FORM
|
164 |
-
**/
|
165 |
-
|
166 |
-
.wrap form.login_form {
|
167 |
-
width: 100%;
|
168 |
-
margin: 15px 0 0;
|
169 |
-
}
|
170 |
-
.wrap form.login_form input {
|
171 |
-
display: inline-block;
|
172 |
-
box-sizing: border-box;
|
173 |
-
-moz-box-sizing: border-box;
|
174 |
-
-webkit-box-sizing: border-box;
|
175 |
-
border: 3px solid #E2E2E2;
|
176 |
-
font-family: Helvetica Neue, Arial, sans-serif;
|
177 |
-
font-size: 16px;
|
178 |
-
margin: 0 10px 0 0;
|
179 |
-
outline: 0;
|
180 |
-
padding: 15px;
|
181 |
-
}
|
182 |
-
.wrap form.login_form input[type="submit"] {
|
183 |
-
background: #000;
|
184 |
-
color: #fff;
|
185 |
-
margin: 0;
|
186 |
-
border-color: #000;
|
187 |
-
font-weight: bold;
|
188 |
-
padding: 15px 30px;
|
189 |
-
cursor: pointer;
|
190 |
-
}
|
191 |
-
.wrap form.login_form input[type="submit"]:active {
|
192 |
-
position: relative;
|
193 |
-
top: 1px;
|
194 |
-
}
|
195 |
-
/**
|
196 |
-
* SOCIAL NETWORKS
|
197 |
-
**/
|
198 |
-
|
199 |
-
.wrap .social {
|
200 |
-
margin: 0 0 70px;
|
201 |
-
}
|
202 |
-
.wrap .social a {
|
203 |
-
width: 22px;
|
204 |
-
height: 22px;
|
205 |
-
margin: 0 0 20px 55px;
|
206 |
-
background-image: url('../images/icn_sprite.png');
|
207 |
-
background-repeat: no-repeat;
|
208 |
-
display: inline-block;
|
209 |
-
text-indent: -999em;
|
210 |
-
}
|
211 |
-
.wrap .social a:first-of-type {
|
212 |
-
margin: 0 0 20px 0;
|
213 |
-
}
|
214 |
-
.wrap .social .git {
|
215 |
-
background-position: 0 0;
|
216 |
-
}
|
217 |
-
.wrap .social .fb {
|
218 |
-
background-position: -240px 0;
|
219 |
-
}
|
220 |
-
.wrap .social .tw {
|
221 |
-
background-position: -162px 0px;
|
222 |
-
}
|
223 |
-
.wrap .social .rss {
|
224 |
-
background-position: -402px 0;
|
225 |
-
}
|
226 |
-
.wrap .social .mail {
|
227 |
-
background-position: -560px 0;
|
228 |
-
}
|
229 |
-
.wrap .social .pin {
|
230 |
-
background-position: -322px 0;
|
231 |
-
}
|
232 |
-
.wrap .social .dribbble {
|
233 |
-
background-position: -82px 0;
|
234 |
-
}
|
235 |
-
.wrap .social .gplus {
|
236 |
-
background-position: -486px 0;
|
237 |
-
}
|
238 |
-
.wrap .social .linkedin {
|
239 |
-
background-position: -633px 0;
|
240 |
-
}
|
241 |
-
/**
|
242 |
-
* CONTACT FORM
|
243 |
-
**/
|
244 |
-
|
245 |
-
.wrap .contact_us {
|
246 |
-
color: #000;
|
247 |
-
border: 3px solid #000;
|
248 |
-
font-size: 18px;
|
249 |
-
padding: 15px 40px;
|
250 |
-
display: inline-block;
|
251 |
-
margin: 0 0 70px;
|
252 |
-
}
|
253 |
-
.wrap .contact_us:hover {
|
254 |
-
background: #000;
|
255 |
-
color: #fff;
|
256 |
-
}
|
257 |
-
.contact_us {
|
258 |
-
text-decoration: none;
|
259 |
-
}
|
260 |
-
.contact {
|
261 |
-
position: fixed;
|
262 |
-
display: none;
|
263 |
-
top: 0;
|
264 |
-
bottom: 0;
|
265 |
-
left: 0;
|
266 |
-
right: 0;
|
267 |
-
background: rgba(27, 31, 35, 0.95);
|
268 |
-
}
|
269 |
-
.contact label.error {
|
270 |
-
color: red;
|
271 |
-
float: left;
|
272 |
-
font-size: 11px;
|
273 |
-
padding-top: 10px;
|
274 |
-
}
|
275 |
-
.contact .form {
|
276 |
-
width: 520px;
|
277 |
-
text-align: center;
|
278 |
-
padding: 40px;
|
279 |
-
background: #f9f9f9;
|
280 |
-
box-sizing: border-box;
|
281 |
-
margin: 100px auto;
|
282 |
-
transition: 0.2s transform ease-in-out;
|
283 |
-
}
|
284 |
-
.contact .form input, .contact .form textarea {
|
285 |
-
padding: 15px 20px;
|
286 |
-
margin: 0;
|
287 |
-
outline: 0;
|
288 |
-
width: 100%;
|
289 |
-
background: #f9f9f9;
|
290 |
-
border: 3px solid #e0e0e0;
|
291 |
-
font-size: 18px;
|
292 |
-
font-family: Helvetica Neue, Arial, sans-serif;
|
293 |
-
box-sizing: border-box;
|
294 |
-
resize: none;
|
295 |
-
}
|
296 |
-
.contact .form textarea {
|
297 |
-
height: 175px;
|
298 |
-
padding: 20px;
|
299 |
-
}
|
300 |
-
.contact .form input[type="text"]::-webkit-input-placeholder, .contact .form textarea::-webkit-input-placeholder {
|
301 |
-
color: #dadada;
|
302 |
-
}
|
303 |
-
.contact .form input[type="text"]::-moz-input-placeholder, .contact .form textarea::-moz-input-placeholder {
|
304 |
-
color: #dadada;
|
305 |
-
}
|
306 |
-
.contact .form input[type="text"]::-ms-input-placeholder, .contact .form textarea::-ms-input-placeholder {
|
307 |
-
color: #dadada;
|
308 |
-
}
|
309 |
-
.contact .form .col {
|
310 |
-
width: 205px;
|
311 |
-
margin: 0 0 30px;
|
312 |
-
display: inline-block;
|
313 |
-
float: left;
|
314 |
-
}
|
315 |
-
.contact .form .col.last {
|
316 |
-
float: right;
|
317 |
-
}
|
318 |
-
.contact .form .submit {
|
319 |
-
margin: 30px 0 0;
|
320 |
-
text-align: center;
|
321 |
-
clear: left;
|
322 |
-
}
|
323 |
-
.contact .form .submit input {
|
324 |
-
cursor: pointer;
|
325 |
-
display: inline-block;
|
326 |
-
background: #1b1f24;
|
327 |
-
color: #fff;
|
328 |
-
border: 0;
|
329 |
-
padding: 20px 45px;
|
330 |
-
width: auto;
|
331 |
-
}
|
332 |
-
/*======= MOVE ANIMATION =======*/
|
333 |
-
|
334 |
-
.contact .move_top {
|
335 |
-
transform: perspective(1000px) translateY(-200px);
|
336 |
-
}
|
337 |
-
.contact .move_bottom {
|
338 |
-
transform: perspective(1000px) translateY(0);
|
339 |
-
}
|
340 |
-
/*======= ZOOM ANIMATION =======*/
|
341 |
-
|
342 |
-
.contact .zoom {
|
343 |
-
transform: perspective(1000px) scale(0.5);
|
344 |
-
transition: 0.3s transform ease-in-out;
|
345 |
-
}
|
346 |
-
.contact .zoomed {
|
347 |
-
transform: perspective(1000px) scale(1);
|
348 |
-
}
|
349 |
-
/*======= FOLD ANIMATION =======*/
|
350 |
-
|
351 |
-
.contact .fold {
|
352 |
-
transform: perspective(1000px) rotateY(90deg);
|
353 |
-
}
|
354 |
-
.contact .unfold {
|
355 |
-
transform: perspective(1000px) rotateY(0);
|
356 |
-
}
|
357 |
-
/**
|
358 |
-
* EDITS WHEN HAVE BACKGROUND CLASS
|
359 |
-
**/
|
360 |
-
|
361 |
-
.background {
|
362 |
-
background: url('../images/backgrounds/bg1.jpg') no-repeat center top fixed;
|
363 |
-
background-size: cover;
|
364 |
-
}
|
365 |
-
.background .countdown span {
|
366 |
-
color: #fff;
|
367 |
-
}
|
368 |
-
.background form.subscribe_form input[type="submit"] {
|
369 |
-
color: #000;
|
370 |
-
background: #fff;
|
371 |
-
}
|
372 |
-
.background form.subscribe_form input[type="text"] {
|
373 |
-
background: transparent;
|
374 |
-
color: #fff;
|
375 |
-
}
|
376 |
-
.background form.subscribe_form input.error[type="text"] {
|
377 |
-
color: red;
|
378 |
-
}
|
379 |
-
.background form.subscribe_form input[type="text"]::-webkit-input-placeholder {
|
380 |
-
color: #fff;
|
381 |
-
}
|
382 |
-
.background form.subscribe_form input[type="text"]::-moz-input-placeholder {
|
383 |
-
color: #fff;
|
384 |
-
}
|
385 |
-
.background form.subscribe_form input[type="text"]::-ms-input-placeholder {
|
386 |
-
color: #fff;
|
387 |
-
}
|
388 |
-
.background .contact_us {
|
389 |
-
color: #fff;
|
390 |
-
border-color: #fff;
|
391 |
-
}
|
392 |
-
/**
|
393 |
-
* MEDIA QUERIES (RESPONSIVE)
|
394 |
-
**/
|
395 |
-
|
396 |
-
@media only screen and (max-width: 700px) {
|
397 |
-
.wrap form.login_form {
|
398 |
-
width: 80%;
|
399 |
-
margin: 15px auto 0;
|
400 |
-
}
|
401 |
-
.wrap form.login_form input {
|
402 |
-
width: 49%;
|
403 |
-
margin: 0 2% 0 0;
|
404 |
-
}
|
405 |
-
.wrap form.login_form input[type="password"] {
|
406 |
-
margin: 0;
|
407 |
-
}
|
408 |
-
.wrap form.login_form input[type="submit"] {
|
409 |
-
width: 100%;
|
410 |
-
margin: 15px 0 0;
|
411 |
-
}
|
412 |
-
}
|
413 |
-
@media only screen and (max-width: 550px) {
|
414 |
-
.wrap {
|
415 |
-
width: 90%;
|
416 |
-
margin: 50px auto 0;
|
417 |
-
}
|
418 |
-
.wrap h1 {
|
419 |
-
margin: 0 0 50px;
|
420 |
-
}
|
421 |
-
.wrap h2, .wrap h3 {
|
422 |
-
font-size: 18px;
|
423 |
-
}
|
424 |
-
.wrap form {
|
425 |
-
box-sizing: border-box;
|
426 |
-
width: 100%;
|
427 |
-
}
|
428 |
-
.wrap form input {
|
429 |
-
box-sizing: border-box;
|
430 |
-
}
|
431 |
-
.wrap form input[type="text"], .wrap form input[type="submit"] {
|
432 |
-
width: 100%;
|
433 |
-
}
|
434 |
-
.wrap .contact_us {
|
435 |
-
margin: 0 0 50px;
|
436 |
-
}
|
437 |
-
.contact .form {
|
438 |
-
width: 90%;
|
439 |
-
}
|
440 |
-
.contact .form p.col {
|
441 |
-
width: 100%;
|
442 |
-
}
|
443 |
-
.contact .form input[type="submit"] {
|
444 |
-
width: 100%;
|
445 |
-
}
|
446 |
-
.wrap form.login_form {
|
447 |
-
width: 90%;
|
448 |
-
}
|
449 |
-
.wrap form.login_form input {
|
450 |
-
width: 100%;
|
451 |
-
margin: 0 0 10px 0;
|
452 |
-
}
|
453 |
-
.wrap form.login_form input[type="submit"] {
|
454 |
-
margin: 10px 0 0;
|
455 |
-
}
|
456 |
-
ul, ol {
|
457 |
-
width: 80%;
|
458 |
-
}
|
459 |
-
blockquote, q {
|
460 |
-
width: 70%;
|
461 |
-
}
|
462 |
-
}
|
1 |
+
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
|
2 |
+
margin: 0;
|
3 |
+
padding: 0;
|
4 |
+
border: 0;
|
5 |
+
font-size: 100%;
|
6 |
+
font: inherit;
|
7 |
+
vertical-align: baseline;
|
8 |
+
text-decoration: none;
|
9 |
+
}
|
10 |
+
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
|
11 |
+
display: block;
|
12 |
+
}
|
13 |
+
body {
|
14 |
+
line-height: 1;
|
15 |
+
}
|
16 |
+
ol, ul {
|
17 |
+
list-style: none;
|
18 |
+
}
|
19 |
+
blockquote, q {
|
20 |
+
display: block;
|
21 |
+
width: 500px;
|
22 |
+
margin: 0 auto;
|
23 |
+
text-align: left;
|
24 |
+
position: relative;
|
25 |
+
font-style: italic;
|
26 |
+
}
|
27 |
+
blockquote:before, blockquote:after, q:before, q:after {
|
28 |
+
content: '"';
|
29 |
+
content: none;
|
30 |
+
}
|
31 |
+
input, button {
|
32 |
+
-webkit-appearance: none;
|
33 |
+
border-radius: 0;
|
34 |
+
}
|
35 |
+
table {
|
36 |
+
border-collapse: collapse;
|
37 |
+
border-spacing: 0;
|
38 |
+
}
|
39 |
+
em, i {
|
40 |
+
font-style: italic;
|
41 |
+
}
|
42 |
+
del {
|
43 |
+
text-decoration: line-through;
|
44 |
+
}
|
45 |
+
strong, b {
|
46 |
+
font-weight: bold;
|
47 |
+
}
|
48 |
+
ol {
|
49 |
+
width: 600px;
|
50 |
+
margin: 0 auto;
|
51 |
+
text-align: left;
|
52 |
+
}
|
53 |
+
ol li {
|
54 |
+
list-style-type: decimal;
|
55 |
+
}
|
56 |
+
ul {
|
57 |
+
width: 600px;
|
58 |
+
margin: 0 auto;
|
59 |
+
text-align: left;
|
60 |
+
}
|
61 |
+
ul li {
|
62 |
+
list-style: disc;
|
63 |
+
}
|
64 |
+
a {
|
65 |
+
color: inherit;
|
66 |
+
text-decoration: underline;
|
67 |
+
}
|
68 |
+
body, html {
|
69 |
+
min-height: 100%;
|
70 |
+
/*height: 100%;*/
|
71 |
+
}
|
72 |
+
body {
|
73 |
+
background-color: #fff;
|
74 |
+
color: #1b1f23;
|
75 |
+
font-family: Helvetica Neue, Arial, sans-serif;
|
76 |
+
}
|
77 |
+
.wrap {
|
78 |
+
width: 605px;
|
79 |
+
margin: 100px auto 0;
|
80 |
+
text-align: center;
|
81 |
+
}
|
82 |
+
.wrap h1 {
|
83 |
+
font-size: 30px;
|
84 |
+
font-weight: 700;
|
85 |
+
margin: 0 0 90px;
|
86 |
+
}
|
87 |
+
.wrap h2 {
|
88 |
+
font-size: 24px;
|
89 |
+
font-weight: 400;
|
90 |
+
line-height: 45px;
|
91 |
+
margin: 0 0 80px;
|
92 |
+
}
|
93 |
+
.wrap h3 {
|
94 |
+
font-size: 24px;
|
95 |
+
font-weight: 400px;
|
96 |
+
margin: 0 0 45px;
|
97 |
+
}
|
98 |
+
.wrap .author_link {
|
99 |
+
margin-top: 15px;
|
100 |
+
color: #616161;
|
101 |
+
margin: 0 0 50px;
|
102 |
+
}
|
103 |
+
.wrap .author_link a {
|
104 |
+
color: #000;
|
105 |
+
}
|
106 |
+
/**
|
107 |
+
* COUNTDOWN
|
108 |
+
**/
|
109 |
+
|
110 |
+
.wrap .countdown {
|
111 |
+
margin: 0 0 85px;
|
112 |
+
}
|
113 |
+
.wrap .countdown span {
|
114 |
+
font-size: 30px;
|
115 |
+
}
|
116 |
+
/**
|
117 |
+
* SUBSCRIBE FORM
|
118 |
+
**/
|
119 |
+
|
120 |
+
.wrap form.subscribe_form {
|
121 |
+
width: 465px;
|
122 |
+
margin: 0 0 75px;
|
123 |
+
display: inline-block;
|
124 |
+
border: 3px solid #e0e0e0;
|
125 |
+
box-sizing: border-box;
|
126 |
+
}
|
127 |
+
.wrap form.subscribe_form input {
|
128 |
+
margin: 0;
|
129 |
+
outline: 0;
|
130 |
+
border: 0;
|
131 |
+
float: left;
|
132 |
+
font-size: 18px;
|
133 |
+
padding: 20px 25px;
|
134 |
+
box-sizing: content-box;
|
135 |
+
}
|
136 |
+
.wrap form.subscribe_form input[type="text"] {
|
137 |
+
width: 245px;
|
138 |
+
}
|
139 |
+
.wrap form.subscribe_form input[type="submit"] {
|
140 |
+
background: #000;
|
141 |
+
color: #fff;
|
142 |
+
float: right;
|
143 |
+
cursor: pointer;
|
144 |
+
padding: 20px 30px;
|
145 |
+
border-left: 3px solid #e0e0e0;
|
146 |
+
}
|
147 |
+
.wrap form.subscribe_form input[type="submit"]:hover {
|
148 |
+
background: #fff;
|
149 |
+
color: #000;
|
150 |
+
border-left: 3px solid #e0e0e0;
|
151 |
+
}
|
152 |
+
.wrap form.subscribe_form input[type="submit"]:active {
|
153 |
+
background: #1e1e1e;
|
154 |
+
color: #fff;
|
155 |
+
}
|
156 |
+
.wrap form.subscribe_form .error {
|
157 |
+
color: red;
|
158 |
+
}
|
159 |
+
.wrap form.subscribe_form label.error {
|
160 |
+
display: none !important;
|
161 |
+
}
|
162 |
+
/**
|
163 |
+
* LOGIN FORM
|
164 |
+
**/
|
165 |
+
|
166 |
+
.wrap form.login_form {
|
167 |
+
width: 100%;
|
168 |
+
margin: 15px 0 0;
|
169 |
+
}
|
170 |
+
.wrap form.login_form input {
|
171 |
+
display: inline-block;
|
172 |
+
box-sizing: border-box;
|
173 |
+
-moz-box-sizing: border-box;
|
174 |
+
-webkit-box-sizing: border-box;
|
175 |
+
border: 3px solid #E2E2E2;
|
176 |
+
font-family: Helvetica Neue, Arial, sans-serif;
|
177 |
+
font-size: 16px;
|
178 |
+
margin: 0 10px 0 0;
|
179 |
+
outline: 0;
|
180 |
+
padding: 15px;
|
181 |
+
}
|
182 |
+
.wrap form.login_form input[type="submit"] {
|
183 |
+
background: #000;
|
184 |
+
color: #fff;
|
185 |
+
margin: 0;
|
186 |
+
border-color: #000;
|
187 |
+
font-weight: bold;
|
188 |
+
padding: 15px 30px;
|
189 |
+
cursor: pointer;
|
190 |
+
}
|
191 |
+
.wrap form.login_form input[type="submit"]:active {
|
192 |
+
position: relative;
|
193 |
+
top: 1px;
|
194 |
+
}
|
195 |
+
/**
|
196 |
+
* SOCIAL NETWORKS
|
197 |
+
**/
|
198 |
+
|
199 |
+
.wrap .social {
|
200 |
+
margin: 0 0 70px;
|
201 |
+
}
|
202 |
+
.wrap .social a {
|
203 |
+
width: 22px;
|
204 |
+
height: 22px;
|
205 |
+
margin: 0 0 20px 55px;
|
206 |
+
background-image: url('../images/icn_sprite.png');
|
207 |
+
background-repeat: no-repeat;
|
208 |
+
display: inline-block;
|
209 |
+
text-indent: -999em;
|
210 |
+
}
|
211 |
+
.wrap .social a:first-of-type {
|
212 |
+
margin: 0 0 20px 0;
|
213 |
+
}
|
214 |
+
.wrap .social .git {
|
215 |
+
background-position: 0 0;
|
216 |
+
}
|
217 |
+
.wrap .social .fb {
|
218 |
+
background-position: -240px 0;
|
219 |
+
}
|
220 |
+
.wrap .social .tw {
|
221 |
+
background-position: -162px 0px;
|
222 |
+
}
|
223 |
+
.wrap .social .rss {
|
224 |
+
background-position: -402px 0;
|
225 |
+
}
|
226 |
+
.wrap .social .mail {
|
227 |
+
background-position: -560px 0;
|
228 |
+
}
|
229 |
+
.wrap .social .pin {
|
230 |
+
background-position: -322px 0;
|
231 |
+
}
|
232 |
+
.wrap .social .dribbble {
|
233 |
+
background-position: -82px 0;
|
234 |
+
}
|
235 |
+
.wrap .social .gplus {
|
236 |
+
background-position: -486px 0;
|
237 |
+
}
|
238 |
+
.wrap .social .linkedin {
|
239 |
+
background-position: -633px 0;
|
240 |
+
}
|
241 |
+
/**
|
242 |
+
* CONTACT FORM
|
243 |
+
**/
|
244 |
+
|
245 |
+
.wrap .contact_us {
|
246 |
+
color: #000;
|
247 |
+
border: 3px solid #000;
|
248 |
+
font-size: 18px;
|
249 |
+
padding: 15px 40px;
|
250 |
+
display: inline-block;
|
251 |
+
margin: 0 0 70px;
|
252 |
+
}
|
253 |
+
.wrap .contact_us:hover {
|
254 |
+
background: #000;
|
255 |
+
color: #fff;
|
256 |
+
}
|
257 |
+
.contact_us {
|
258 |
+
text-decoration: none;
|
259 |
+
}
|
260 |
+
.contact {
|
261 |
+
position: fixed;
|
262 |
+
display: none;
|
263 |
+
top: 0;
|
264 |
+
bottom: 0;
|
265 |
+
left: 0;
|
266 |
+
right: 0;
|
267 |
+
background: rgba(27, 31, 35, 0.95);
|
268 |
+
}
|
269 |
+
.contact label.error {
|
270 |
+
color: red;
|
271 |
+
float: left;
|
272 |
+
font-size: 11px;
|
273 |
+
padding-top: 10px;
|
274 |
+
}
|
275 |
+
.contact .form {
|
276 |
+
width: 520px;
|
277 |
+
text-align: center;
|
278 |
+
padding: 40px;
|
279 |
+
background: #f9f9f9;
|
280 |
+
box-sizing: border-box;
|
281 |
+
margin: 100px auto;
|
282 |
+
transition: 0.2s transform ease-in-out;
|
283 |
+
}
|
284 |
+
.contact .form input, .contact .form textarea {
|
285 |
+
padding: 15px 20px;
|
286 |
+
margin: 0;
|
287 |
+
outline: 0;
|
288 |
+
width: 100%;
|
289 |
+
background: #f9f9f9;
|
290 |
+
border: 3px solid #e0e0e0;
|
291 |
+
font-size: 18px;
|
292 |
+
font-family: Helvetica Neue, Arial, sans-serif;
|
293 |
+
box-sizing: border-box;
|
294 |
+
resize: none;
|
295 |
+
}
|
296 |
+
.contact .form textarea {
|
297 |
+
height: 175px;
|
298 |
+
padding: 20px;
|
299 |
+
}
|
300 |
+
.contact .form input[type="text"]::-webkit-input-placeholder, .contact .form textarea::-webkit-input-placeholder {
|
301 |
+
color: #dadada;
|
302 |
+
}
|
303 |
+
.contact .form input[type="text"]::-moz-input-placeholder, .contact .form textarea::-moz-input-placeholder {
|
304 |
+
color: #dadada;
|
305 |
+
}
|
306 |
+
.contact .form input[type="text"]::-ms-input-placeholder, .contact .form textarea::-ms-input-placeholder {
|
307 |
+
color: #dadada;
|
308 |
+
}
|
309 |
+
.contact .form .col {
|
310 |
+
width: 205px;
|
311 |
+
margin: 0 0 30px;
|
312 |
+
display: inline-block;
|
313 |
+
float: left;
|
314 |
+
}
|
315 |
+
.contact .form .col.last {
|
316 |
+
float: right;
|
317 |
+
}
|
318 |
+
.contact .form .submit {
|
319 |
+
margin: 30px 0 0;
|
320 |
+
text-align: center;
|
321 |
+
clear: left;
|
322 |
+
}
|
323 |
+
.contact .form .submit input {
|
324 |
+
cursor: pointer;
|
325 |
+
display: inline-block;
|
326 |
+
background: #1b1f24;
|
327 |
+
color: #fff;
|
328 |
+
border: 0;
|
329 |
+
padding: 20px 45px;
|
330 |
+
width: auto;
|
331 |
+
}
|
332 |
+
/*======= MOVE ANIMATION =======*/
|
333 |
+
|
334 |
+
.contact .move_top {
|
335 |
+
transform: perspective(1000px) translateY(-200px);
|
336 |
+
}
|
337 |
+
.contact .move_bottom {
|
338 |
+
transform: perspective(1000px) translateY(0);
|
339 |
+
}
|
340 |
+
/*======= ZOOM ANIMATION =======*/
|
341 |
+
|
342 |
+
.contact .zoom {
|
343 |
+
transform: perspective(1000px) scale(0.5);
|
344 |
+
transition: 0.3s transform ease-in-out;
|
345 |
+
}
|
346 |
+
.contact .zoomed {
|
347 |
+
transform: perspective(1000px) scale(1);
|
348 |
+
}
|
349 |
+
/*======= FOLD ANIMATION =======*/
|
350 |
+
|
351 |
+
.contact .fold {
|
352 |
+
transform: perspective(1000px) rotateY(90deg);
|
353 |
+
}
|
354 |
+
.contact .unfold {
|
355 |
+
transform: perspective(1000px) rotateY(0);
|
356 |
+
}
|
357 |
+
/**
|
358 |
+
* EDITS WHEN HAVE BACKGROUND CLASS
|
359 |
+
**/
|
360 |
+
|
361 |
+
.background {
|
362 |
+
background: url('../images/backgrounds/bg1.jpg') no-repeat center top fixed;
|
363 |
+
background-size: cover;
|
364 |
+
}
|
365 |
+
.background .countdown span {
|
366 |
+
color: #fff;
|
367 |
+
}
|
368 |
+
.background form.subscribe_form input[type="submit"] {
|
369 |
+
color: #000;
|
370 |
+
background: #fff;
|
371 |
+
}
|
372 |
+
.background form.subscribe_form input[type="text"] {
|
373 |
+
background: transparent;
|
374 |
+
color: #fff;
|
375 |
+
}
|
376 |
+
.background form.subscribe_form input.error[type="text"] {
|
377 |
+
color: red;
|
378 |
+
}
|
379 |
+
.background form.subscribe_form input[type="text"]::-webkit-input-placeholder {
|
380 |
+
color: #fff;
|
381 |
+
}
|
382 |
+
.background form.subscribe_form input[type="text"]::-moz-input-placeholder {
|
383 |
+
color: #fff;
|
384 |
+
}
|
385 |
+
.background form.subscribe_form input[type="text"]::-ms-input-placeholder {
|
386 |
+
color: #fff;
|
387 |
+
}
|
388 |
+
.background .contact_us {
|
389 |
+
color: #fff;
|
390 |
+
border-color: #fff;
|
391 |
+
}
|
392 |
+
/**
|
393 |
+
* MEDIA QUERIES (RESPONSIVE)
|
394 |
+
**/
|
395 |
+
|
396 |
+
@media only screen and (max-width: 700px) {
|
397 |
+
.wrap form.login_form {
|
398 |
+
width: 80%;
|
399 |
+
margin: 15px auto 0;
|
400 |
+
}
|
401 |
+
.wrap form.login_form input {
|
402 |
+
width: 49%;
|
403 |
+
margin: 0 2% 0 0;
|
404 |
+
}
|
405 |
+
.wrap form.login_form input[type="password"] {
|
406 |
+
margin: 0;
|
407 |
+
}
|
408 |
+
.wrap form.login_form input[type="submit"] {
|
409 |
+
width: 100%;
|
410 |
+
margin: 15px 0 0;
|
411 |
+
}
|
412 |
+
}
|
413 |
+
@media only screen and (max-width: 550px) {
|
414 |
+
.wrap {
|
415 |
+
width: 90%;
|
416 |
+
margin: 50px auto 0;
|
417 |
+
}
|
418 |
+
.wrap h1 {
|
419 |
+
margin: 0 0 50px;
|
420 |
+
}
|
421 |
+
.wrap h2, .wrap h3 {
|
422 |
+
font-size: 18px;
|
423 |
+
}
|
424 |
+
.wrap form.subscribe_form { // .wrap form
|
425 |
+
box-sizing: border-box;
|
426 |
+
width: 100%;
|
427 |
+
}
|
428 |
+
.wrap form.subscribe_form input { // .wrap form
|
429 |
+
box-sizing: border-box;
|
430 |
+
}
|
431 |
+
.wrap form input[type="text"], .wrap form input[type="submit"] {
|
432 |
+
width: 100%;
|
433 |
+
}
|
434 |
+
.wrap .contact_us {
|
435 |
+
margin: 0 0 50px;
|
436 |
+
}
|
437 |
+
.contact .form {
|
438 |
+
width: 90%;
|
439 |
+
}
|
440 |
+
.contact .form p.col {
|
441 |
+
width: 100%;
|
442 |
+
}
|
443 |
+
.contact .form input[type="submit"] {
|
444 |
+
width: 100%;
|
445 |
+
}
|
446 |
+
.wrap form.login_form {
|
447 |
+
width: 90%;
|
448 |
+
}
|
449 |
+
.wrap form.login_form input {
|
450 |
+
width: 100%;
|
451 |
+
margin: 0 0 10px 0;
|
452 |
+
}
|
453 |
+
.wrap form.login_form input[type="submit"] {
|
454 |
+
margin: 10px 0 0;
|
455 |
+
}
|
456 |
+
ul, ol {
|
457 |
+
width: 80%;
|
458 |
+
}
|
459 |
+
blockquote, q {
|
460 |
+
width: 70%;
|
461 |
+
}
|
462 |
+
}
|
@@ -0,0 +1 @@
|
|
|
1 |
+
a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline;text-decoration:none}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{display:block;width:500px;margin:0 auto;text-align:left;position:relative;font-style:italic}blockquote:after,blockquote:before,q:after,q:before{content:'"';content:none}button,input{-webkit-appearance:none;border-radius:0}table{border-collapse:collapse;border-spacing:0}em,i{font-style:italic}del{text-decoration:line-through}b,strong{font-weight:700}ol{width:600px;margin:0 auto;text-align:left}ol li{list-style-type:decimal}ul{width:600px;margin:0 auto;text-align:left}ul li{list-style:disc}a{color:inherit;text-decoration:underline}body,html{min-height:100%}body{background-color:#fff;color:#1b1f23;font-family:Helvetica Neue,Arial,sans-serif}.wrap{width:605px;margin:100px auto 0;text-align:center}.wrap h1{font-size:30px;font-weight:700;margin:0 0 90px}.wrap h2{font-size:24px;font-weight:400;line-height:45px;margin:0 0 80px}.wrap h3{font-size:24px;font-weight:400px;margin:0 0 45px}.wrap .author_link{color:#616161;margin:0 0 50px}.wrap .author_link a{color:#000}.wrap .countdown{margin:0 0 85px}.wrap .countdown span{font-size:30px}.wrap form.subscribe_form{width:465px;margin:0 0 75px;display:inline-block;border:3px solid #e0e0e0;box-sizing:border-box}.wrap form.subscribe_form input{margin:0;outline:0;border:0;float:left;font-size:18px;padding:20px 25px;box-sizing:content-box}.wrap form.subscribe_form input[type=text]{width:245px}.wrap form.subscribe_form input[type=submit]{background:#000;color:#fff;float:right;cursor:pointer;padding:20px 30px;border-left:3px solid #e0e0e0}.wrap form.subscribe_form input[type=submit]:hover{background:#fff;color:#000;border-left:3px solid #e0e0e0}.wrap form.subscribe_form input[type=submit]:active{background:#1e1e1e;color:#fff}.wrap form.subscribe_form .error{color:red}.wrap form.subscribe_form label.error{display:none!important}.wrap form.login_form{width:100%;margin:15px 0 0}.wrap form.login_form input{display:inline-block;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;border:3px solid #E2E2E2;font-family:Helvetica Neue,Arial,sans-serif;font-size:16px;margin:0 10px 0 0;outline:0;padding:15px}.wrap form.login_form input[type=submit]{background:#000;color:#fff;margin:0;border-color:#000;font-weight:700;padding:15px 30px;cursor:pointer}.wrap form.login_form input[type=submit]:active{position:relative;top:1px}.wrap .social{margin:0 0 70px}.wrap .social a{width:22px;height:22px;margin:0 0 20px 55px;background-image:url(../images/icn_sprite.png);background-repeat:no-repeat;display:inline-block;text-indent:-999em}.wrap .social a:first-of-type{margin:0 0 20px}.wrap .social .git{background-position:0 0}.wrap .social .fb{background-position:-240px 0}.wrap .social .tw{background-position:-162px 0}.wrap .social .rss{background-position:-402px 0}.wrap .social .mail{background-position:-560px 0}.wrap .social .pin{background-position:-322px 0}.wrap .social .dribbble{background-position:-82px 0}.wrap .social .gplus{background-position:-486px 0}.wrap .social .linkedin{background-position:-633px 0}.wrap .contact_us{color:#000;border:3px solid #000;font-size:18px;padding:15px 40px;display:inline-block;margin:0 0 70px}.wrap .contact_us:hover{background:#000;color:#fff}.contact_us{text-decoration:none}.contact{position:fixed;display:none;top:0;bottom:0;left:0;right:0;background:rgba(27,31,35,.95)}.contact label.error{color:red;float:left;font-size:11px;padding-top:10px}.contact .form{width:520px;text-align:center;padding:40px;background:#f9f9f9;box-sizing:border-box;margin:100px auto;transition:.2s transform ease-in-out}.contact .form input,.contact .form textarea{padding:15px 20px;margin:0;outline:0;width:100%;background:#f9f9f9;border:3px solid #e0e0e0;font-size:18px;font-family:Helvetica Neue,Arial,sans-serif;box-sizing:border-box;resize:none}.contact .form textarea{height:175px;padding:20px}.contact .form input[type=text]::-webkit-input-placeholder,.contact .form textarea::-webkit-input-placeholder{color:#dadada}.contact .form input[type=text]::-moz-input-placeholder,.contact .form textarea::-moz-input-placeholder{color:#dadada}.contact .form input[type=text]::-ms-input-placeholder,.contact .form textarea::-ms-input-placeholder{color:#dadada}.contact .form .col{width:205px;margin:0 0 30px;display:inline-block;float:left}.contact .form .col.last{float:right}.contact .form .submit{margin:30px 0 0;text-align:center;clear:left}.contact .form .submit input{cursor:pointer;display:inline-block;background:#1b1f24;color:#fff;border:0;padding:20px 45px;width:auto}.contact .move_top{transform:perspective(1000px) translateY(-200px)}.contact .move_bottom{transform:perspective(1000px) translateY(0)}.contact .zoom{transform:perspective(1000px) scale(0.5);transition:.3s transform ease-in-out}.contact .zoomed{transform:perspective(1000px) scale(1)}.contact .fold{transform:perspective(1000px) rotateY(90deg)}.contact .unfold{transform:perspective(1000px) rotateY(0)}.background{background:url(../images/backgrounds/bg1.jpg) center top/cover no-repeat fixed}.background .countdown span{color:#fff}.background form.subscribe_form input[type=submit]{color:#000;background:#fff}.background form.subscribe_form input[type=text]{background:0 0;color:#fff}.background form.subscribe_form input.error[type=text]{color:red}.background form.subscribe_form input[type=text]::-webkit-input-placeholder{color:#fff}.background form.subscribe_form input[type=text]::-moz-input-placeholder{color:#fff}.background form.subscribe_form input[type=text]::-ms-input-placeholder{color:#fff}.background .contact_us{color:#fff;border-color:#fff}@media only screen and (max-width:700px){.wrap form.login_form{width:80%;margin:15px auto 0}.wrap form.login_form input{width:49%;margin:0 2% 0 0}.wrap form.login_form input[type=password]{margin:0}.wrap form.login_form input[type=submit]{width:100%;margin:15px 0 0}}@media only screen and (max-width:550px){.wrap{width:90%;margin:50px auto 0}.wrap h1{margin:0 0 50px}.wrap h2,.wrap h3{font-size:18px}.wrap form.subscribe_form{// .wrap form box-sizing:border-box;width:100%}.wrap form.subscribe_form input{// .wrap form box-sizing:border-box}.wrap form input[type=submit],.wrap form input[type=text]{width:100%}.wrap .contact_us{margin:0 0 50px}.contact .form{width:90%}.contact .form input[type=submit],.contact .form p.col{width:100%}.wrap form.login_form{width:90%}.wrap form.login_form input{width:100%;margin:0 0 10px}.wrap form.login_form input[type=submit]{margin:10px 0 0}ol,ul{width:80%}blockquote,q{width:70%}}
|
Binary file
|
Binary file
|
@@ -1,2 +1,2 @@
|
|
1 |
-
<?php
|
2 |
-
// Silence is golden.
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -1,2 +1,2 @@
|
|
1 |
-
<?php
|
2 |
-
// Silence is golden.
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
@@ -0,0 +1,1284 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*!
|
2 |
+
Chosen, a Select Box Enhancer for jQuery and Prototype
|
3 |
+
by Patrick Filler for Harvest, http://getharvest.com
|
4 |
+
|
5 |
+
Version 1.5.1
|
6 |
+
Full source at https://github.com/harvesthq/chosen
|
7 |
+
Copyright (c) 2011-2016 Harvest http://getharvest.com
|
8 |
+
|
9 |
+
MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md
|
10 |
+
This file is generated by `grunt build`, do not edit it by hand.
|
11 |
+
*/
|
12 |
+
|
13 |
+
(function() {
|
14 |
+
var $, AbstractChosen, Chosen, SelectParser, _ref,
|
15 |
+
__hasProp = {}.hasOwnProperty,
|
16 |
+
__extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
|
17 |
+
|
18 |
+
SelectParser = (function() {
|
19 |
+
function SelectParser() {
|
20 |
+
this.options_index = 0;
|
21 |
+
this.parsed = [];
|
22 |
+
}
|
23 |
+
|
24 |
+
SelectParser.prototype.add_node = function(child) {
|
25 |
+
if (child.nodeName.toUpperCase() === "OPTGROUP") {
|
26 |
+
return this.add_group(child);
|
27 |
+
} else {
|
28 |
+
return this.add_option(child);
|
29 |
+
}
|
30 |
+
};
|
31 |
+
|
32 |
+
SelectParser.prototype.add_group = function(group) {
|
33 |
+
var group_position, option, _i, _len, _ref, _results;
|
34 |
+
group_position = this.parsed.length;
|
35 |
+
this.parsed.push({
|
36 |
+
array_index: group_position,
|
37 |
+
group: true,
|
38 |
+
label: this.escapeExpression(group.label),
|
39 |
+
title: group.title ? group.title : void 0,
|
40 |
+
children: 0,
|
41 |
+
disabled: group.disabled,
|
42 |
+
classes: group.className
|
43 |
+
});
|
44 |
+
_ref = group.childNodes;
|
45 |
+
_results = [];
|
46 |
+
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
47 |
+
option = _ref[_i];
|
48 |
+
_results.push(this.add_option(option, group_position, group.disabled));
|
49 |
+
}
|
50 |
+
return _results;
|
51 |
+
};
|
52 |
+
|
53 |
+
SelectParser.prototype.add_option = function(option, group_position, group_disabled) {
|
54 |
+
if (option.nodeName.toUpperCase() === "OPTION") {
|
55 |
+
if (option.text !== "") {
|
56 |
+
if (group_position != null) {
|
57 |
+
this.parsed[group_position].children += 1;
|
58 |
+
}
|
59 |
+
this.parsed.push({
|
60 |
+
array_index: this.parsed.length,
|
61 |
+
options_index: this.options_index,
|
62 |
+
value: option.value,
|
63 |
+
text: option.text,
|
64 |
+
html: option.innerHTML,
|
65 |
+
title: option.title ? option.title : void 0,
|
66 |
+
selected: option.selected,
|
67 |
+
disabled: group_disabled === true ? group_disabled : option.disabled,
|
68 |
+
group_array_index: group_position,
|
69 |
+
group_label: group_position != null ? this.parsed[group_position].label : null,
|
70 |
+
classes: option.className,
|
71 |
+
style: option.style.cssText
|
72 |
+
});
|
73 |
+
} else {
|
74 |
+
this.parsed.push({
|
75 |
+
array_index: this.parsed.length,
|
76 |
+
options_index: this.options_index,
|
77 |
+
empty: true
|
78 |
+
});
|
79 |
+
}
|
80 |
+
return this.options_index += 1;
|
81 |
+
}
|
82 |
+
};
|
83 |
+
|
84 |
+
SelectParser.prototype.escapeExpression = function(text) {
|
85 |
+
var map, unsafe_chars;
|
86 |
+
if ((text == null) || text === false) {
|
87 |
+
return "";
|
88 |
+
}
|
89 |
+
if (!/[\&\<\>\"\'\`]/.test(text)) {
|
90 |
+
return text;
|
91 |
+
}
|
92 |
+
map = {
|
93 |
+
"<": "<",
|
94 |
+
">": ">",
|
95 |
+
'"': """,
|
96 |
+
"'": "'",
|
97 |
+
"`": "`"
|
98 |
+
};
|
99 |
+
unsafe_chars = /&(?!\w+;)|[\<\>\"\'\`]/g;
|
100 |
+
return text.replace(unsafe_chars, function(chr) {
|
101 |
+
return map[chr] || "&";
|
102 |
+
});
|
103 |
+
};
|
104 |
+
|
105 |
+
return SelectParser;
|
106 |
+
|
107 |
+
})();
|
108 |
+
|
109 |
+
SelectParser.select_to_array = function(select) {
|
110 |
+
var child, parser, _i, _len, _ref;
|
111 |
+
parser = new SelectParser();
|
112 |
+
_ref = select.childNodes;
|
113 |
+
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
114 |
+
child = _ref[_i];
|
115 |
+
parser.add_node(child);
|
116 |
+
}
|
117 |
+
return parser.parsed;
|
118 |
+
};
|
119 |
+
|
120 |
+
AbstractChosen = (function() {
|
121 |
+
function AbstractChosen(form_field, options) {
|
122 |
+
this.form_field = form_field;
|
123 |
+
this.options = options != null ? options : {};
|
124 |
+
if (!AbstractChosen.browser_is_supported()) {
|
125 |
+
return;
|
126 |
+
}
|
127 |
+
this.is_multiple = this.form_field.multiple;
|
128 |
+
this.set_default_text();
|
129 |
+
this.set_default_values();
|
130 |
+
this.setup();
|
131 |
+
this.set_up_html();
|
132 |
+
this.register_observers();
|
133 |
+
this.on_ready();
|
134 |
+
}
|
135 |
+
|
136 |
+
AbstractChosen.prototype.set_default_values = function() {
|
137 |
+
var _this = this;
|
138 |
+
this.click_test_action = function(evt) {
|
139 |
+
return _this.test_active_click(evt);
|
140 |
+
};
|
141 |
+
this.activate_action = function(evt) {
|
142 |
+
return _this.activate_field(evt);
|
143 |
+
};
|
144 |
+
this.active_field = false;
|
145 |
+
this.mouse_on_container = false;
|
146 |
+
this.results_showing = false;
|
147 |
+
this.result_highlighted = null;
|
148 |
+
this.allow_single_deselect = (this.options.allow_single_deselect != null) && (this.form_field.options[0] != null) && this.form_field.options[0].text === "" ? this.options.allow_single_deselect : false;
|
149 |
+
this.disable_search_threshold = this.options.disable_search_threshold || 0;
|
150 |
+
this.disable_search = this.options.disable_search || false;
|
151 |
+
this.enable_split_word_search = this.options.enable_split_word_search != null ? this.options.enable_split_word_search : true;
|
152 |
+
this.group_search = this.options.group_search != null ? this.options.group_search : true;
|
153 |
+
this.search_contains = this.options.search_contains || false;
|
154 |
+
this.single_backstroke_delete = this.options.single_backstroke_delete != null ? this.options.single_backstroke_delete : true;
|
155 |
+
this.max_selected_options = this.options.max_selected_options || Infinity;
|
156 |
+
this.inherit_select_classes = this.options.inherit_select_classes || false;
|
157 |
+
this.display_selected_options = this.options.display_selected_options != null ? this.options.display_selected_options : true;
|
158 |
+
this.display_disabled_options = this.options.display_disabled_options != null ? this.options.display_disabled_options : true;
|
159 |
+
this.include_group_label_in_selected = this.options.include_group_label_in_selected || false;
|
160 |
+
return this.max_shown_results = this.options.max_shown_results || Number.POSITIVE_INFINITY;
|
161 |
+
};
|
162 |
+
|
163 |
+
AbstractChosen.prototype.set_default_text = function() {
|
164 |
+
if (this.form_field.getAttribute("data-placeholder")) {
|
165 |
+
this.default_text = this.form_field.getAttribute("data-placeholder");
|
166 |
+
} else if (this.is_multiple) {
|
167 |
+
this.default_text = this.options.placeholder_text_multiple || this.options.placeholder_text || AbstractChosen.default_multiple_text;
|
168 |
+
} else {
|
169 |
+
this.default_text = this.options.placeholder_text_single || this.options.placeholder_text || AbstractChosen.default_single_text;
|
170 |
+
}
|
171 |
+
return this.results_none_found = this.form_field.getAttribute("data-no_results_text") || this.options.no_results_text || AbstractChosen.default_no_result_text;
|
172 |
+
};
|
173 |
+
|
174 |
+
AbstractChosen.prototype.choice_label = function(item) {
|
175 |
+
if (this.include_group_label_in_selected && (item.group_label != null)) {
|
176 |
+
return "<b class='group-name'>" + item.group_label + "</b>" + item.html;
|
177 |
+
} else {
|
178 |
+
return item.html;
|
179 |
+
}
|
180 |
+
};
|
181 |
+
|
182 |
+
AbstractChosen.prototype.mouse_enter = function() {
|
183 |
+
return this.mouse_on_container = true;
|
184 |
+
};
|
185 |
+
|
186 |
+
AbstractChosen.prototype.mouse_leave = function() {
|
187 |
+
return this.mouse_on_container = false;
|
188 |
+
};
|
189 |
+
|
190 |
+
AbstractChosen.prototype.input_focus = function(evt) {
|
191 |
+
var _this = this;
|
192 |
+
if (this.is_multiple) {
|
193 |
+
if (!this.active_field) {
|
194 |
+
return setTimeout((function() {
|
195 |
+
return _this.container_mousedown();
|
196 |
+
}), 50);
|
197 |
+
}
|
198 |
+
} else {
|
199 |
+
if (!this.active_field) {
|
200 |
+
return this.activate_field();
|
201 |
+
}
|
202 |
+
}
|
203 |
+
};
|
204 |
+
|
205 |
+
AbstractChosen.prototype.input_blur = function(evt) {
|
206 |
+
var _this = this;
|
207 |
+
if (!this.mouse_on_container) {
|
208 |
+
this.active_field = false;
|
209 |
+
return setTimeout((function() {
|
210 |
+
return _this.blur_test();
|
211 |
+
}), 100);
|
212 |
+
}
|
213 |
+
};
|
214 |
+
|
215 |
+
AbstractChosen.prototype.results_option_build = function(options) {
|
216 |
+
var content, data, data_content, shown_results, _i, _len, _ref;
|
217 |
+
content = '';
|
218 |
+
shown_results = 0;
|
219 |
+
_ref = this.results_data;
|
220 |
+
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
221 |
+
data = _ref[_i];
|
222 |
+
data_content = '';
|
223 |
+
if (data.group) {
|
224 |
+
data_content = this.result_add_group(data);
|
225 |
+
} else {
|
226 |
+
data_content = this.result_add_option(data);
|
227 |
+
}
|
228 |
+
if (data_content !== '') {
|
229 |
+
shown_results++;
|
230 |
+
content += data_content;
|
231 |
+
}
|
232 |
+
if (options != null ? options.first : void 0) {
|
233 |
+
if (data.selected && this.is_multiple) {
|
234 |
+
this.choice_build(data);
|
235 |
+
} else if (data.selected && !this.is_multiple) {
|
236 |
+
this.single_set_selected_text(this.choice_label(data));
|
237 |
+
}
|
238 |
+
}
|
239 |
+
if (shown_results >= this.max_shown_results) {
|
240 |
+
break;
|
241 |
+
}
|
242 |
+
}
|
243 |
+
return content;
|
244 |
+
};
|
245 |
+
|
246 |
+
AbstractChosen.prototype.result_add_option = function(option) {
|
247 |
+
var classes, option_el;
|
248 |
+
if (!option.search_match) {
|
249 |
+
return '';
|
250 |
+
}
|
251 |
+
if (!this.include_option_in_results(option)) {
|
252 |
+
return '';
|
253 |
+
}
|
254 |
+
classes = [];
|
255 |
+
if (!option.disabled && !(option.selected && this.is_multiple)) {
|
256 |
+
classes.push("active-result");
|
257 |
+
}
|
258 |
+
if (option.disabled && !(option.selected && this.is_multiple)) {
|
259 |
+
classes.push("disabled-result");
|
260 |
+
}
|
261 |
+
if (option.selected) {
|
262 |
+
classes.push("result-selected");
|
263 |
+
}
|
264 |
+
if (option.group_array_index != null) {
|
265 |
+
classes.push("group-option");
|
266 |
+
}
|
267 |
+
if (option.classes !== "") {
|
268 |
+
classes.push(option.classes);
|
269 |
+
}
|
270 |
+
option_el = document.createElement("li");
|
271 |
+
option_el.className = classes.join(" ");
|
272 |
+
option_el.style.cssText = option.style;
|
273 |
+
option_el.setAttribute("data-option-array-index", option.array_index);
|
274 |
+
option_el.innerHTML = option.search_text;
|
275 |
+
if (option.title) {
|
276 |
+
option_el.title = option.title;
|
277 |
+
}
|
278 |
+
return this.outerHTML(option_el);
|
279 |
+
};
|
280 |
+
|
281 |
+
AbstractChosen.prototype.result_add_group = function(group) {
|
282 |
+
var classes, group_el;
|
283 |
+
if (!(group.search_match || group.group_match)) {
|
284 |
+
return '';
|
285 |
+
}
|
286 |
+
if (!(group.active_options > 0)) {
|
287 |
+
return '';
|
288 |
+
}
|
289 |
+
classes = [];
|
290 |
+
classes.push("group-result");
|
291 |
+
if (group.classes) {
|
292 |
+
classes.push(group.classes);
|
293 |
+
}
|
294 |
+
group_el = document.createElement("li");
|
295 |
+
group_el.className = classes.join(" ");
|
296 |
+
group_el.innerHTML = group.search_text;
|
297 |
+
if (group.title) {
|
298 |
+
group_el.title = group.title;
|
299 |
+
}
|
300 |
+
return this.outerHTML(group_el);
|
301 |
+
};
|
302 |
+
|
303 |
+
AbstractChosen.prototype.results_update_field = function() {
|
304 |
+
this.set_default_text();
|
305 |
+
if (!this.is_multiple) {
|
306 |
+
this.results_reset_cleanup();
|
307 |
+
}
|
308 |
+
this.result_clear_highlight();
|
309 |
+
this.results_build();
|
310 |
+
if (this.results_showing) {
|
311 |
+
return this.winnow_results();
|
312 |
+
}
|
313 |
+
};
|
314 |
+
|
315 |
+
AbstractChosen.prototype.reset_single_select_options = function() {
|
316 |
+
var result, _i, _len, _ref, _results;
|
317 |
+
_ref = this.results_data;
|
318 |
+
_results = [];
|
319 |
+
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
320 |
+
result = _ref[_i];
|
321 |
+
if (result.selected) {
|
322 |
+
_results.push(result.selected = false);
|
323 |
+
} else {
|
324 |
+
_results.push(void 0);
|
325 |
+
}
|
326 |
+
}
|
327 |
+
return _results;
|
328 |
+
};
|
329 |
+
|
330 |
+
AbstractChosen.prototype.results_toggle = function() {
|
331 |
+
if (this.results_showing) {
|
332 |
+
return this.results_hide();
|
333 |
+
} else {
|
334 |
+
return this.results_show();
|
335 |
+
}
|
336 |
+
};
|
337 |
+
|
338 |
+
AbstractChosen.prototype.results_search = function(evt) {
|
339 |
+
if (this.results_showing) {
|
340 |
+
return this.winnow_results();
|
341 |
+
} else {
|
342 |
+
return this.results_show();
|
343 |
+
}
|
344 |
+
};
|
345 |
+
|
346 |
+
AbstractChosen.prototype.winnow_results = function() {
|
347 |
+
var escapedSearchText, option, regex, results, results_group, searchText, startpos, text, zregex, _i, _len, _ref;
|
348 |
+
this.no_results_clear();
|
349 |
+
results = 0;
|
350 |
+
searchText = this.get_search_text();
|
351 |
+
escapedSearchText = searchText.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
|
352 |
+
zregex = new RegExp(escapedSearchText, 'i');
|
353 |
+
regex = this.get_search_regex(escapedSearchText);
|
354 |
+
_ref = this.results_data;
|
355 |
+
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
356 |
+
option = _ref[_i];
|
357 |
+
option.search_match = false;
|
358 |
+
results_group = null;
|
359 |
+
if (this.include_option_in_results(option)) {
|
360 |
+
if (option.group) {
|
361 |
+
option.group_match = false;
|
362 |
+
option.active_options = 0;
|
363 |
+
}
|
364 |
+
if ((option.group_array_index != null) && this.results_data[option.group_array_index]) {
|
365 |
+
results_group = this.results_data[option.group_array_index];
|
366 |
+
if (results_group.active_options === 0 && results_group.search_match) {
|
367 |
+
results += 1;
|
368 |
+
}
|
369 |
+
results_group.active_options += 1;
|
370 |
+
}
|
371 |
+
option.search_text = option.group ? option.label : option.html;
|
372 |
+
if (!(option.group && !this.group_search)) {
|
373 |
+
option.search_match = this.search_string_match(option.search_text, regex);
|
374 |
+
if (option.search_match && !option.group) {
|
375 |
+
results += 1;
|
376 |
+
}
|
377 |
+
if (option.search_match) {
|
378 |
+
if (searchText.length) {
|
379 |
+
startpos = option.search_text.search(zregex);
|
380 |
+
text = option.search_text.substr(0, startpos + searchText.length) + '</em>' + option.search_text.substr(startpos + searchText.length);
|
381 |
+
option.search_text = text.substr(0, startpos) + '<em>' + text.substr(startpos);
|
382 |
+
}
|
383 |
+
if (results_group != null) {
|
384 |
+
results_group.group_match = true;
|
385 |
+
}
|
386 |
+
} else if ((option.group_array_index != null) && this.results_data[option.group_array_index].search_match) {
|
387 |
+
option.search_match = true;
|
388 |
+
}
|
389 |
+
}
|
390 |
+
}
|
391 |
+
}
|
392 |
+
this.result_clear_highlight();
|
393 |
+
if (results < 1 && searchText.length) {
|
394 |
+
this.update_results_content("");
|
395 |
+
return this.no_results(searchText);
|
396 |
+
} else {
|
397 |
+
this.update_results_content(this.results_option_build());
|
398 |
+
return this.winnow_results_set_highlight();
|
399 |
+
}
|
400 |
+
};
|
401 |
+
|
402 |
+
AbstractChosen.prototype.get_search_regex = function(escaped_search_string) {
|
403 |
+
var regex_anchor;
|
404 |
+
regex_anchor = this.search_contains ? "" : "^";
|
405 |
+
return new RegExp(regex_anchor + escaped_search_string, 'i');
|
406 |
+
};
|
407 |
+
|
408 |
+
AbstractChosen.prototype.search_string_match = function(search_string, regex) {
|
409 |
+
var part, parts, _i, _len;
|
410 |
+
if (regex.test(search_string)) {
|
411 |
+
return true;
|
412 |
+
} else if (this.enable_split_word_search && (search_string.indexOf(" ") >= 0 || search_string.indexOf("[") === 0)) {
|
413 |
+
parts = search_string.replace(/\[|\]/g, "").split(" ");
|
414 |
+
if (parts.length) {
|
415 |
+
for (_i = 0, _len = parts.length; _i < _len; _i++) {
|
416 |
+
part = parts[_i];
|
417 |
+
if (regex.test(part)) {
|
418 |
+
return true;
|
419 |
+
}
|
420 |
+
}
|
421 |
+
}
|
422 |
+
}
|
423 |
+
};
|
424 |
+
|
425 |
+
AbstractChosen.prototype.choices_count = function() {
|
426 |
+
var option, _i, _len, _ref;
|
427 |
+
if (this.selected_option_count != null) {
|
428 |
+
return this.selected_option_count;
|
429 |
+
}
|
430 |
+
this.selected_option_count = 0;
|
431 |
+
_ref = this.form_field.options;
|
432 |
+
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
433 |
+
option = _ref[_i];
|
434 |
+
if (option.selected) {
|
435 |
+
this.selected_option_count += 1;
|
436 |
+
}
|
437 |
+
}
|
438 |
+
return this.selected_option_count;
|
439 |
+
};
|
440 |
+
|
441 |
+
AbstractChosen.prototype.choices_click = function(evt) {
|
442 |
+
evt.preventDefault();
|
443 |
+
if (!(this.results_showing || this.is_disabled)) {
|
444 |
+
return this.results_show();
|
445 |
+
}
|
446 |
+
};
|
447 |
+
|
448 |
+
AbstractChosen.prototype.keyup_checker = function(evt) {
|
449 |
+
var stroke, _ref;
|
450 |
+
stroke = (_ref = evt.which) != null ? _ref : evt.keyCode;
|
451 |
+
this.search_field_scale();
|
452 |
+
switch (stroke) {
|
453 |
+
case 8:
|
454 |
+
if (this.is_multiple && this.backstroke_length < 1 && this.choices_count() > 0) {
|
455 |
+
return this.keydown_backstroke();
|
456 |
+
} else if (!this.pending_backstroke) {
|
457 |
+
this.result_clear_highlight();
|
458 |
+
return this.results_search();
|
459 |
+
}
|
460 |
+
break;
|
461 |
+
case 13:
|
462 |
+
evt.preventDefault();
|
463 |
+
if (this.results_showing) {
|
464 |
+
return this.result_select(evt);
|
465 |
+
}
|
466 |
+
break;
|
467 |
+
case 27:
|
468 |
+
if (this.results_showing) {
|
469 |
+
this.results_hide();
|
470 |
+
}
|
471 |
+
return true;
|
472 |
+
case 9:
|
473 |
+
case 38:
|
474 |
+
case 40:
|
475 |
+
case 16:
|
476 |
+
case 91:
|
477 |
+
case 17:
|
478 |
+
case 18:
|
479 |
+
break;
|
480 |
+
default:
|
481 |
+
return this.results_search();
|
482 |
+
}
|
483 |
+
};
|
484 |
+
|
485 |
+
AbstractChosen.prototype.clipboard_event_checker = function(evt) {
|
486 |
+
var _this = this;
|
487 |
+
return setTimeout((function() {
|
488 |
+
return _this.results_search();
|
489 |
+
}), 50);
|
490 |
+
};
|
491 |
+
|
492 |
+
AbstractChosen.prototype.container_width = function() {
|
493 |
+
if (this.options.width != null) {
|
494 |
+
return this.options.width;
|
495 |
+
} else {
|
496 |
+
return "" + this.form_field.offsetWidth + "px";
|
497 |
+
}
|
498 |
+
};
|
499 |
+
|
500 |
+
AbstractChosen.prototype.include_option_in_results = function(option) {
|
501 |
+
if (this.is_multiple && (!this.display_selected_options && option.selected)) {
|
502 |
+
return false;
|
503 |
+
}
|
504 |
+
if (!this.display_disabled_options && option.disabled) {
|
505 |
+
return false;
|
506 |
+
}
|
507 |
+
if (option.empty) {
|
508 |
+
return false;
|
509 |
+
}
|
510 |
+
return true;
|
511 |
+
};
|
512 |
+
|
513 |
+
AbstractChosen.prototype.search_results_touchstart = function(evt) {
|
514 |
+
this.touch_started = true;
|
515 |
+
return this.search_results_mouseover(evt);
|
516 |
+
};
|
517 |
+
|
518 |
+
AbstractChosen.prototype.search_results_touchmove = function(evt) {
|
519 |
+
this.touch_started = false;
|
520 |
+
return this.search_results_mouseout(evt);
|
521 |
+
};
|
522 |
+
|
523 |
+
AbstractChosen.prototype.search_results_touchend = function(evt) {
|
524 |
+
if (this.touch_started) {
|
525 |
+
return this.search_results_mouseup(evt);
|
526 |
+
}
|
527 |
+
};
|
528 |
+
|
529 |
+
AbstractChosen.prototype.outerHTML = function(element) {
|
530 |
+
var tmp;
|
531 |
+
if (element.outerHTML) {
|
532 |
+
return element.outerHTML;
|
533 |
+
}
|
534 |
+
tmp = document.createElement("div");
|
535 |
+
tmp.appendChild(element);
|
536 |
+
return tmp.innerHTML;
|
537 |
+
};
|
538 |
+
|
539 |
+
AbstractChosen.browser_is_supported = function() {
|
540 |
+
if (/iP(od|hone)/i.test(window.navigator.userAgent)) {
|
541 |
+
return false;
|
542 |
+
}
|
543 |
+
if (/Android/i.test(window.navigator.userAgent)) {
|
544 |
+
if (/Mobile/i.test(window.navigator.userAgent)) {
|
545 |
+
return false;
|
546 |
+
}
|
547 |
+
}
|
548 |
+
if (/IEMobile/i.test(window.navigator.userAgent)) {
|
549 |
+
return false;
|
550 |
+
}
|
551 |
+
if (/Windows Phone/i.test(window.navigator.userAgent)) {
|
552 |
+
return false;
|
553 |
+
}
|
554 |
+
if (/BlackBerry/i.test(window.navigator.userAgent)) {
|
555 |
+
return false;
|
556 |
+
}
|
557 |
+
if (/BB10/i.test(window.navigator.userAgent)) {
|
558 |
+
return false;
|
559 |
+
}
|
560 |
+
if (window.navigator.appName === "Microsoft Internet Explorer") {
|
561 |
+
return document.documentMode >= 8;
|
562 |
+
}
|
563 |
+
return true;
|
564 |
+
};
|
565 |
+
|
566 |
+
AbstractChosen.default_multiple_text = "Select Some Options";
|
567 |
+
|
568 |
+
AbstractChosen.default_single_text = "Select an Option";
|
569 |
+
|
570 |
+
AbstractChosen.default_no_result_text = "No results match";
|
571 |
+
|
572 |
+
return AbstractChosen;
|
573 |
+
|
574 |
+
})();
|
575 |
+
|
576 |
+
$ = jQuery;
|
577 |
+
|
578 |
+
$.fn.extend({
|
579 |
+
chosen: function(options) {
|
580 |
+
if (!AbstractChosen.browser_is_supported()) {
|
581 |
+
return this;
|
582 |
+
}
|
583 |
+
return this.each(function(input_field) {
|
584 |
+
var $this, chosen;
|
585 |
+
$this = $(this);
|
586 |
+
chosen = $this.data('chosen');
|
587 |
+
if (options === 'destroy') {
|
588 |
+
if (chosen instanceof Chosen) {
|
589 |
+
chosen.destroy();
|
590 |
+
}
|
591 |
+
return;
|
592 |
+
}
|
593 |
+
if (!(chosen instanceof Chosen)) {
|
594 |
+
$this.data('chosen', new Chosen(this, options));
|
595 |
+
}
|
596 |
+
});
|
597 |
+
}
|
598 |
+
});
|
599 |
+
|
600 |
+
Chosen = (function(_super) {
|
601 |
+
__extends(Chosen, _super);
|
602 |
+
|
603 |
+
function Chosen() {
|
604 |
+
_ref = Chosen.__super__.constructor.apply(this, arguments);
|
605 |
+
return _ref;
|
606 |
+
}
|
607 |
+
|
608 |
+
Chosen.prototype.setup = function() {
|
609 |
+
this.form_field_jq = $(this.form_field);
|
610 |
+
this.current_selectedIndex = this.form_field.selectedIndex;
|
611 |
+
return this.is_rtl = this.form_field_jq.hasClass("chosen-rtl");
|
612 |
+
};
|
613 |
+
|
614 |
+
Chosen.prototype.set_up_html = function() {
|
615 |
+
var container_classes, container_props;
|
616 |
+
container_classes = ["chosen-container"];
|
617 |
+
container_classes.push("chosen-container-" + (this.is_multiple ? "multi" : "single"));
|
618 |
+
if (this.inherit_select_classes && this.form_field.className) {
|
619 |
+
container_classes.push(this.form_field.className);
|
620 |
+
}
|
621 |
+
if (this.is_rtl) {
|
622 |
+
container_classes.push("chosen-rtl");
|
623 |
+
}
|
624 |
+
container_props = {
|
625 |
+
'class': container_classes.join(' '),
|
626 |
+
'style': "width: " + (this.container_width()) + ";",
|
627 |
+
'title': this.form_field.title
|
628 |
+
};
|
629 |
+
if (this.form_field.id.length) {
|
630 |
+
container_props.id = this.form_field.id.replace(/[^\w]/g, '_') + "_chosen";
|
631 |
+
}
|
632 |
+
this.container = $("<div />", container_props);
|
633 |
+
if (this.is_multiple) {
|
634 |
+
this.container.html('<ul class="chosen-choices"><li class="search-field"><input type="text" value="' + this.default_text + '" class="default" autocomplete="off" style="width:25px;" /></li></ul><div class="chosen-drop"><ul class="chosen-results"></ul></div>');
|
635 |
+
} else {
|
636 |
+
this.container.html('<a class="chosen-single chosen-default"><span>' + this.default_text + '</span><div><b></b></div></a><div class="chosen-drop"><div class="chosen-search"><input type="text" autocomplete="off" /></div><ul class="chosen-results"></ul></div>');
|
637 |
+
}
|
638 |
+
this.form_field_jq.hide().after(this.container);
|
639 |
+
this.dropdown = this.container.find('div.chosen-drop').first();
|
640 |
+
this.search_field = this.container.find('input').first();
|
641 |
+
this.search_results = this.container.find('ul.chosen-results').first();
|
642 |
+
this.search_field_scale();
|
643 |
+
this.search_no_results = this.container.find('li.no-results').first();
|
644 |
+
if (this.is_multiple) {
|
645 |
+
this.search_choices = this.container.find('ul.chosen-choices').first();
|
646 |
+
this.search_container = this.container.find('li.search-field').first();
|
647 |
+
} else {
|
648 |
+
this.search_container = this.container.find('div.chosen-search').first();
|
649 |
+
this.selected_item = this.container.find('.chosen-single').first();
|
650 |
+
}
|
651 |
+
this.results_build();
|
652 |
+
this.set_tab_index();
|
653 |
+
return this.set_label_behavior();
|
654 |
+
};
|
655 |
+
|
656 |
+
Chosen.prototype.on_ready = function() {
|
657 |
+
return this.form_field_jq.trigger("chosen:ready", {
|
658 |
+
chosen: this
|
659 |
+
});
|
660 |
+
};
|
661 |
+
|
662 |
+
Chosen.prototype.register_observers = function() {
|
663 |
+
var _this = this;
|
664 |
+
this.container.bind('touchstart.chosen', function(evt) {
|
665 |
+
_this.container_mousedown(evt);
|
666 |
+
return evt.preventDefault();
|
667 |
+
});
|
668 |
+
this.container.bind('touchend.chosen', function(evt) {
|
669 |
+
_this.container_mouseup(evt);
|
670 |
+
return evt.preventDefault();
|
671 |
+
});
|
672 |
+
this.container.bind('mousedown.chosen', function(evt) {
|
673 |
+
_this.container_mousedown(evt);
|
674 |
+
});
|
675 |
+
this.container.bind('mouseup.chosen', function(evt) {
|
676 |
+
_this.container_mouseup(evt);
|
677 |
+
});
|
678 |
+
this.container.bind('mouseenter.chosen', function(evt) {
|
679 |
+
_this.mouse_enter(evt);
|
680 |
+
});
|
681 |
+
this.container.bind('mouseleave.chosen', function(evt) {
|
682 |
+
_this.mouse_leave(evt);
|
683 |
+
});
|
684 |
+
this.search_results.bind('mouseup.chosen', function(evt) {
|
685 |
+
_this.search_results_mouseup(evt);
|
686 |
+
});
|
687 |
+
this.search_results.bind('mouseover.chosen', function(evt) {
|
688 |
+
_this.search_results_mouseover(evt);
|
689 |
+
});
|
690 |
+
this.search_results.bind('mouseout.chosen', function(evt) {
|
691 |
+
_this.search_results_mouseout(evt);
|
692 |
+
});
|
693 |
+
this.search_results.bind('mousewheel.chosen DOMMouseScroll.chosen', function(evt) {
|
694 |
+
_this.search_results_mousewheel(evt);
|
695 |
+
});
|
696 |
+
this.search_results.bind('touchstart.chosen', function(evt) {
|
697 |
+
_this.search_results_touchstart(evt);
|
698 |
+
});
|
699 |
+
this.search_results.bind('touchmove.chosen', function(evt) {
|
700 |
+
_this.search_results_touchmove(evt);
|
701 |
+
});
|
702 |
+
this.search_results.bind('touchend.chosen', function(evt) {
|
703 |
+
_this.search_results_touchend(evt);
|
704 |
+
});
|
705 |
+
this.form_field_jq.bind("chosen:updated.chosen", function(evt) {
|
706 |
+
_this.results_update_field(evt);
|
707 |
+
});
|
708 |
+
this.form_field_jq.bind("chosen:activate.chosen", function(evt) {
|
709 |
+
_this.activate_field(evt);
|
710 |
+
});
|
711 |
+
this.form_field_jq.bind("chosen:open.chosen", function(evt) {
|
712 |
+
_this.container_mousedown(evt);
|
713 |
+
});
|
714 |
+
this.form_field_jq.bind("chosen:close.chosen", function(evt) {
|
715 |
+
_this.input_blur(evt);
|
716 |
+
});
|
717 |
+
this.search_field.bind('blur.chosen', function(evt) {
|
718 |
+
_this.input_blur(evt);
|
719 |
+
});
|
720 |
+
this.search_field.bind('keyup.chosen', function(evt) {
|
721 |
+
_this.keyup_checker(evt);
|
722 |
+
});
|
723 |
+
this.search_field.bind('keydown.chosen', function(evt) {
|
724 |
+
_this.keydown_checker(evt);
|
725 |
+
});
|
726 |
+
this.search_field.bind('focus.chosen', function(evt) {
|
727 |
+
_this.input_focus(evt);
|
728 |
+
});
|
729 |
+
this.search_field.bind('cut.chosen', function(evt) {
|
730 |
+
_this.clipboard_event_checker(evt);
|
731 |
+
});
|
732 |
+
this.search_field.bind('paste.chosen', function(evt) {
|
733 |
+
_this.clipboard_event_checker(evt);
|
734 |
+
});
|
735 |
+
if (this.is_multiple) {
|
736 |
+
return this.search_choices.bind('click.chosen', function(evt) {
|
737 |
+
_this.choices_click(evt);
|
738 |
+
});
|
739 |
+
} else {
|
740 |
+
return this.container.bind('click.chosen', function(evt) {
|
741 |
+
evt.preventDefault();
|
742 |
+
});
|
743 |
+
}
|
744 |
+
};
|
745 |
+
|
746 |
+
Chosen.prototype.destroy = function() {
|
747 |
+
$(this.container[0].ownerDocument).unbind("click.chosen", this.click_test_action);
|
748 |
+
if (this.search_field[0].tabIndex) {
|
749 |
+
this.form_field_jq[0].tabIndex = this.search_field[0].tabIndex;
|
750 |
+
}
|
751 |
+
this.container.remove();
|
752 |
+
this.form_field_jq.removeData('chosen');
|
753 |
+
return this.form_field_jq.show();
|
754 |
+
};
|
755 |
+
|
756 |
+
Chosen.prototype.search_field_disabled = function() {
|
757 |
+
this.is_disabled = this.form_field_jq[0].disabled;
|
758 |
+
if (this.is_disabled) {
|
759 |
+
this.container.addClass('chosen-disabled');
|
760 |
+
this.search_field[0].disabled = true;
|
761 |
+
if (!this.is_multiple) {
|
762 |
+
this.selected_item.unbind("focus.chosen", this.activate_action);
|
763 |
+
}
|
764 |
+
return this.close_field();
|
765 |
+
} else {
|
766 |
+
this.container.removeClass('chosen-disabled');
|
767 |
+
this.search_field[0].disabled = false;
|
768 |
+
if (!this.is_multiple) {
|
769 |
+
return this.selected_item.bind("focus.chosen", this.activate_action);
|
770 |
+
}
|
771 |
+
}
|
772 |
+
};
|
773 |
+
|
774 |
+
Chosen.prototype.container_mousedown = function(evt) {
|
775 |
+
if (!this.is_disabled) {
|
776 |
+
if (evt && evt.type === "mousedown" && !this.results_showing) {
|
777 |
+
evt.preventDefault();
|
778 |
+
}
|
779 |
+
if (!((evt != null) && ($(evt.target)).hasClass("search-choice-close"))) {
|
780 |
+
if (!this.active_field) {
|
781 |
+
if (this.is_multiple) {
|
782 |
+
this.search_field.val("");
|
783 |
+
}
|
784 |
+
$(this.container[0].ownerDocument).bind('click.chosen', this.click_test_action);
|
785 |
+
this.results_show();
|
786 |
+
} else if (!this.is_multiple && evt && (($(evt.target)[0] === this.selected_item[0]) || $(evt.target).parents("a.chosen-single").length)) {
|
787 |
+
evt.preventDefault();
|
788 |
+
this.results_toggle();
|
789 |
+
}
|
790 |
+
return this.activate_field();
|
791 |
+
}
|
792 |
+
}
|
793 |
+
};
|
794 |
+
|
795 |
+
Chosen.prototype.container_mouseup = function(evt) {
|
796 |
+
if (evt.target.nodeName === "ABBR" && !this.is_disabled) {
|
797 |
+
return this.results_reset(evt);
|
798 |
+
}
|
799 |
+
};
|
800 |
+
|
801 |
+
Chosen.prototype.search_results_mousewheel = function(evt) {
|
802 |
+
var delta;
|
803 |
+
if (evt.originalEvent) {
|
804 |
+
delta = evt.originalEvent.deltaY || -evt.originalEvent.wheelDelta || evt.originalEvent.detail;
|
805 |
+
}
|
806 |
+
if (delta != null) {
|
807 |
+
evt.preventDefault();
|
808 |
+
if (evt.type === 'DOMMouseScroll') {
|
809 |
+
delta = delta * 40;
|
810 |
+
}
|
811 |
+
return this.search_results.scrollTop(delta + this.search_results.scrollTop());
|
812 |
+
}
|
813 |
+
};
|
814 |
+
|
815 |
+
Chosen.prototype.blur_test = function(evt) {
|
816 |
+
if (!this.active_field && this.container.hasClass("chosen-container-active")) {
|
817 |
+
return this.close_field();
|
818 |
+
}
|
819 |
+
};
|
820 |
+
|
821 |
+
Chosen.prototype.close_field = function() {
|
822 |
+
$(this.container[0].ownerDocument).unbind("click.chosen", this.click_test_action);
|
823 |
+
this.active_field = false;
|
824 |
+
this.results_hide();
|
825 |
+
this.container.removeClass("chosen-container-active");
|
826 |
+
this.clear_backstroke();
|
827 |
+
this.show_search_field_default();
|
828 |
+
return this.search_field_scale();
|
829 |
+
};
|
830 |
+
|
831 |
+
Chosen.prototype.activate_field = function() {
|
832 |
+
this.container.addClass("chosen-container-active");
|
833 |
+
this.active_field = true;
|
834 |
+
this.search_field.val(this.search_field.val());
|
835 |
+
return this.search_field.focus();
|
836 |
+
};
|
837 |
+
|
838 |
+
Chosen.prototype.test_active_click = function(evt) {
|
839 |
+
var active_container;
|
840 |
+
active_container = $(evt.target).closest('.chosen-container');
|
841 |
+
if (active_container.length && this.container[0] === active_container[0]) {
|
842 |
+
return this.active_field = true;
|
843 |
+
} else {
|
844 |
+
return this.close_field();
|
845 |
+
}
|
846 |
+
};
|
847 |
+
|
848 |
+
Chosen.prototype.results_build = function() {
|
849 |
+
this.parsing = true;
|
850 |
+
this.selected_option_count = null;
|
851 |
+
this.results_data = SelectParser.select_to_array(this.form_field);
|
852 |
+
if (this.is_multiple) {
|
853 |
+
this.search_choices.find("li.search-choice").remove();
|
854 |
+
} else if (!this.is_multiple) {
|
855 |
+
this.single_set_selected_text();
|
856 |
+
if (this.disable_search || this.form_field.options.length <= this.disable_search_threshold) {
|
857 |
+
this.search_field[0].readOnly = true;
|
858 |
+
this.container.addClass("chosen-container-single-nosearch");
|
859 |
+
} else {
|
860 |
+
this.search_field[0].readOnly = false;
|
861 |
+
this.container.removeClass("chosen-container-single-nosearch");
|
862 |
+
}
|
863 |
+
}
|
864 |
+
this.update_results_content(this.results_option_build({
|
865 |
+
first: true
|
866 |
+
}));
|
867 |
+
this.search_field_disabled();
|
868 |
+
this.show_search_field_default();
|
869 |
+
this.search_field_scale();
|
870 |
+
return this.parsing = false;
|
871 |
+
};
|
872 |
+
|
873 |
+
Chosen.prototype.result_do_highlight = function(el) {
|
874 |
+
var high_bottom, high_top, maxHeight, visible_bottom, visible_top;
|
875 |
+
if (el.length) {
|
876 |
+
this.result_clear_highlight();
|
877 |
+
this.result_highlight = el;
|
878 |
+
this.result_highlight.addClass("highlighted");
|
879 |
+
maxHeight = parseInt(this.search_results.css("maxHeight"), 10);
|
880 |
+
visible_top = this.search_results.scrollTop();
|
881 |
+
visible_bottom = maxHeight + visible_top;
|
882 |
+
high_top = this.result_highlight.position().top + this.search_results.scrollTop();
|
883 |
+
high_bottom = high_top + this.result_highlight.outerHeight();
|
884 |
+
if (high_bottom >= visible_bottom) {
|
885 |
+
return this.search_results.scrollTop((high_bottom - maxHeight) > 0 ? high_bottom - maxHeight : 0);
|
886 |
+
} else if (high_top < visible_top) {
|
887 |
+
return this.search_results.scrollTop(high_top);
|
888 |
+
}
|
889 |
+
}
|
890 |
+
};
|
891 |
+
|
892 |
+
Chosen.prototype.result_clear_highlight = function() {
|
893 |
+
if (this.result_highlight) {
|
894 |
+
this.result_highlight.removeClass("highlighted");
|
895 |
+
}
|
896 |
+
return this.result_highlight = null;
|
897 |
+
};
|
898 |
+
|
899 |
+
Chosen.prototype.results_show = function() {
|
900 |
+
if (this.is_multiple && this.max_selected_options <= this.choices_count()) {
|
901 |
+
this.form_field_jq.trigger("chosen:maxselected", {
|
902 |
+
chosen: this
|
903 |
+
});
|
904 |
+
return false;
|
905 |
+
}
|
906 |
+
this.container.addClass("chosen-with-drop");
|
907 |
+
this.results_showing = true;
|
908 |
+
this.search_field.focus();
|
909 |
+
this.search_field.val(this.search_field.val());
|
910 |
+
this.winnow_results();
|
911 |
+
return this.form_field_jq.trigger("chosen:showing_dropdown", {
|
912 |
+
chosen: this
|
913 |
+
});
|
914 |
+
};
|
915 |
+
|
916 |
+
Chosen.prototype.update_results_content = function(content) {
|
917 |
+
return this.search_results.html(content);
|
918 |
+
};
|
919 |
+
|
920 |
+
Chosen.prototype.results_hide = function() {
|
921 |
+
if (this.results_showing) {
|
922 |
+
this.result_clear_highlight();
|
923 |
+
this.container.removeClass("chosen-with-drop");
|
924 |
+
this.form_field_jq.trigger("chosen:hiding_dropdown", {
|
925 |
+
chosen: this
|
926 |
+
});
|
927 |
+
}
|
928 |
+
return this.results_showing = false;
|
929 |
+
};
|
930 |
+
|
931 |
+
Chosen.prototype.set_tab_index = function(el) {
|
932 |
+
var ti;
|
933 |
+
if (this.form_field.tabIndex) {
|
934 |
+
ti = this.form_field.tabIndex;
|
935 |
+
this.form_field.tabIndex = -1;
|
936 |
+
return this.search_field[0].tabIndex = ti;
|
937 |
+
}
|
938 |
+
};
|
939 |
+
|
940 |
+
Chosen.prototype.set_label_behavior = function() {
|
941 |
+
var _this = this;
|
942 |
+
this.form_field_label = this.form_field_jq.parents("label");
|
943 |
+
if (!this.form_field_label.length && this.form_field.id.length) {
|
944 |
+
this.form_field_label = $("label[for='" + this.form_field.id + "']");
|
945 |
+
}
|
946 |
+
if (this.form_field_label.length > 0) {
|
947 |
+
return this.form_field_label.bind('click.chosen', function(evt) {
|
948 |
+
if (_this.is_multiple) {
|
949 |
+
return _this.container_mousedown(evt);
|
950 |
+
} else {
|
951 |
+
return _this.activate_field();
|
952 |
+
}
|
953 |
+
});
|
954 |
+
}
|
955 |
+
};
|
956 |
+
|
957 |
+
Chosen.prototype.show_search_field_default = function() {
|
958 |
+
if (this.is_multiple && this.choices_count() < 1 && !this.active_field) {
|
959 |
+
this.search_field.val(this.default_text);
|
960 |
+
return this.search_field.addClass("default");
|
961 |
+
} else {
|
962 |
+
this.search_field.val("");
|
963 |
+
return this.search_field.removeClass("default");
|
964 |
+
}
|
965 |
+
};
|
966 |
+
|
967 |
+
Chosen.prototype.search_results_mouseup = function(evt) {
|
968 |
+
var target;
|
969 |
+
target = $(evt.target).hasClass("active-result") ? $(evt.target) : $(evt.target).parents(".active-result").first();
|
970 |
+
if (target.length) {
|
971 |
+
this.result_highlight = target;
|
972 |
+
this.result_select(evt);
|
973 |
+
return this.search_field.focus();
|
974 |
+
}
|
975 |
+
};
|
976 |
+
|
977 |
+
Chosen.prototype.search_results_mouseover = function(evt) {
|
978 |
+
var target;
|
979 |
+
target = $(evt.target).hasClass("active-result") ? $(evt.target) : $(evt.target).parents(".active-result").first();
|
980 |
+
if (target) {
|
981 |
+
return this.result_do_highlight(target);
|
982 |
+
}
|
983 |
+
};
|
984 |
+
|
985 |
+
Chosen.prototype.search_results_mouseout = function(evt) {
|
986 |
+
if ($(evt.target).hasClass("active-result" || $(evt.target).parents('.active-result').first())) {
|
987 |
+
return this.result_clear_highlight();
|
988 |
+
}
|
989 |
+
};
|
990 |
+
|
991 |
+
Chosen.prototype.choice_build = function(item) {
|
992 |
+
var choice, close_link,
|
993 |
+
_this = this;
|
994 |
+
choice = $('<li />', {
|
995 |
+
"class": "search-choice"
|
996 |
+
}).html("<span>" + (this.choice_label(item)) + "</span>");
|
997 |
+
if (item.disabled) {
|
998 |
+
choice.addClass('search-choice-disabled');
|
999 |
+
} else {
|
1000 |
+
close_link = $('<a />', {
|
1001 |
+
"class": 'search-choice-close',
|
1002 |
+
'data-option-array-index': item.array_index
|
1003 |
+
});
|
1004 |
+
close_link.bind('click.chosen', function(evt) {
|
1005 |
+
return _this.choice_destroy_link_click(evt);
|
1006 |
+
});
|
1007 |
+
choice.append(close_link);
|
1008 |
+
}
|
1009 |
+
return this.search_container.before(choice);
|
1010 |
+
};
|
1011 |
+
|
1012 |
+
Chosen.prototype.choice_destroy_link_click = function(evt) {
|
1013 |
+
evt.preventDefault();
|
1014 |
+
evt.stopPropagation();
|
1015 |
+
if (!this.is_disabled) {
|
1016 |
+
return this.choice_destroy($(evt.target));
|
1017 |
+
}
|
1018 |
+
};
|
1019 |
+
|
1020 |
+
Chosen.prototype.choice_destroy = function(link) {
|
1021 |
+
if (this.result_deselect(link[0].getAttribute("data-option-array-index"))) {
|
1022 |
+
this.show_search_field_default();
|
1023 |
+
if (this.is_multiple && this.choices_count() > 0 && this.search_field.val().length < 1) {
|
1024 |
+
this.results_hide();
|
1025 |
+
}
|
1026 |
+
link.parents('li').first().remove();
|
1027 |
+
return this.search_field_scale();
|
1028 |
+
}
|
1029 |
+
};
|
1030 |
+
|
1031 |
+
Chosen.prototype.results_reset = function() {
|
1032 |
+
this.reset_single_select_options();
|
1033 |
+
this.form_field.options[0].selected = true;
|
1034 |
+
this.single_set_selected_text();
|
1035 |
+
this.show_search_field_default();
|
1036 |
+
this.results_reset_cleanup();
|
1037 |
+
this.form_field_jq.trigger("change");
|
1038 |
+
if (this.active_field) {
|
1039 |
+
return this.results_hide();
|
1040 |
+
}
|
1041 |
+
};
|
1042 |
+
|
1043 |
+
Chosen.prototype.results_reset_cleanup = function() {
|
1044 |
+
this.current_selectedIndex = this.form_field.selectedIndex;
|
1045 |
+
return this.selected_item.find("abbr").remove();
|
1046 |
+
};
|
1047 |
+
|
1048 |
+
Chosen.prototype.result_select = function(evt) {
|
1049 |
+
var high, item;
|
1050 |
+
if (this.result_highlight) {
|
1051 |
+
high = this.result_highlight;
|
1052 |
+
this.result_clear_highlight();
|
1053 |
+
if (this.is_multiple && this.max_selected_options <= this.choices_count()) {
|
1054 |
+
this.form_field_jq.trigger("chosen:maxselected", {
|
1055 |
+
chosen: this
|
1056 |
+
});
|
1057 |
+
return false;
|
1058 |
+
}
|
1059 |
+
if (this.is_multiple) {
|
1060 |
+
high.removeClass("active-result");
|
1061 |
+
} else {
|
1062 |
+
this.reset_single_select_options();
|
1063 |
+
}
|
1064 |
+
high.addClass("result-selected");
|
1065 |
+
item = this.results_data[high[0].getAttribute("data-option-array-index")];
|
1066 |
+
item.selected = true;
|
1067 |
+
this.form_field.options[item.options_index].selected = true;
|
1068 |
+
this.selected_option_count = null;
|
1069 |
+
if (this.is_multiple) {
|
1070 |
+
this.choice_build(item);
|
1071 |
+
} else {
|
1072 |
+
this.single_set_selected_text(this.choice_label(item));
|
1073 |
+
}
|
1074 |
+
if (!((evt.metaKey || evt.ctrlKey) && this.is_multiple)) {
|
1075 |
+
this.results_hide();
|
1076 |
+
}
|
1077 |
+
this.show_search_field_default();
|
1078 |
+
if (this.is_multiple || this.form_field.selectedIndex !== this.current_selectedIndex) {
|
1079 |
+
this.form_field_jq.trigger("change", {
|
1080 |
+
'selected': this.form_field.options[item.options_index].value
|
1081 |
+
});
|
1082 |
+
}
|
1083 |
+
this.current_selectedIndex = this.form_field.selectedIndex;
|
1084 |
+
evt.preventDefault();
|
1085 |
+
return this.search_field_scale();
|
1086 |
+
}
|
1087 |
+
};
|
1088 |
+
|
1089 |
+
Chosen.prototype.single_set_selected_text = function(text) {
|
1090 |
+
if (text == null) {
|
1091 |
+
text = this.default_text;
|
1092 |
+
}
|
1093 |
+
if (text === this.default_text) {
|
1094 |
+
this.selected_item.addClass("chosen-default");
|
1095 |
+
} else {
|
1096 |
+
this.single_deselect_control_build();
|
1097 |
+
this.selected_item.removeClass("chosen-default");
|
1098 |
+
}
|
1099 |
+
return this.selected_item.find("span").html(text);
|
1100 |
+
};
|
1101 |
+
|
1102 |
+
Chosen.prototype.result_deselect = function(pos) {
|
1103 |
+
var result_data;
|
1104 |
+
result_data = this.results_data[pos];
|
1105 |
+
if (!this.form_field.options[result_data.options_index].disabled) {
|
1106 |
+
result_data.selected = false;
|
1107 |
+
this.form_field.options[result_data.options_index].selected = false;
|
1108 |
+
this.selected_option_count = null;
|
1109 |
+
this.result_clear_highlight();
|
1110 |
+
if (this.results_showing) {
|
1111 |
+
this.winnow_results();
|
1112 |
+
}
|
1113 |
+
this.form_field_jq.trigger("change", {
|
1114 |
+
deselected: this.form_field.options[result_data.options_index].value
|
1115 |
+
});
|
1116 |
+
this.search_field_scale();
|
1117 |
+
return true;
|
1118 |
+
} else {
|
1119 |
+
return false;
|
1120 |
+
}
|
1121 |
+
};
|
1122 |
+
|
1123 |
+
Chosen.prototype.single_deselect_control_build = function() {
|
1124 |
+
if (!this.allow_single_deselect) {
|
1125 |
+
return;
|
1126 |
+
}
|
1127 |
+
if (!this.selected_item.find("abbr").length) {
|
1128 |
+
this.selected_item.find("span").first().after("<abbr class=\"search-choice-close\"></abbr>");
|
1129 |
+
}
|
1130 |
+
return this.selected_item.addClass("chosen-single-with-deselect");
|
1131 |
+
};
|
1132 |
+
|
1133 |
+
Chosen.prototype.get_search_text = function() {
|
1134 |
+
return $('<div/>').text($.trim(this.search_field.val())).html();
|
1135 |
+
};
|
1136 |
+
|
1137 |
+
Chosen.prototype.winnow_results_set_highlight = function() {
|
1138 |
+
var do_high, selected_results;
|
1139 |
+
selected_results = !this.is_multiple ? this.search_results.find(".result-selected.active-result") : [];
|
1140 |
+
do_high = selected_results.length ? selected_results.first() : this.search_results.find(".active-result").first();
|
1141 |
+
if (do_high != null) {
|
1142 |
+
return this.result_do_highlight(do_high);
|
1143 |
+
}
|
1144 |
+
};
|
1145 |
+
|
1146 |
+
Chosen.prototype.no_results = function(terms) {
|
1147 |
+
var no_results_html;
|
1148 |
+
no_results_html = $('<li class="no-results">' + this.results_none_found + ' "<span></span>"</li>');
|
1149 |
+
no_results_html.find("span").first().html(terms);
|
1150 |
+
this.search_results.append(no_results_html);
|
1151 |
+
return this.form_field_jq.trigger("chosen:no_results", {
|
1152 |
+
chosen: this
|
1153 |
+
});
|
1154 |
+
};
|
1155 |
+
|
1156 |
+
Chosen.prototype.no_results_clear = function() {
|
1157 |
+
return this.search_results.find(".no-results").remove();
|
1158 |
+
};
|
1159 |
+
|
1160 |
+
Chosen.prototype.keydown_arrow = function() {
|
1161 |
+
var next_sib;
|
1162 |
+
if (this.results_showing && this.result_highlight) {
|
1163 |
+
next_sib = this.result_highlight.nextAll("li.active-result").first();
|
1164 |
+
if (next_sib) {
|
1165 |
+
return this.result_do_highlight(next_sib);
|
1166 |
+
}
|
1167 |
+
} else {
|
1168 |
+
return this.results_show();
|
1169 |
+
}
|
1170 |
+
};
|
1171 |
+
|
1172 |
+
Chosen.prototype.keyup_arrow = function() {
|
1173 |
+
var prev_sibs;
|
1174 |
+
if (!this.results_showing && !this.is_multiple) {
|
1175 |
+
return this.results_show();
|
1176 |
+
} else if (this.result_highlight) {
|
1177 |
+
prev_sibs = this.result_highlight.prevAll("li.active-result");
|
1178 |
+
if (prev_sibs.length) {
|
1179 |
+
return this.result_do_highlight(prev_sibs.first());
|
1180 |
+
} else {
|
1181 |
+
if (this.choices_count() > 0) {
|
1182 |
+
this.results_hide();
|
1183 |
+
}
|
1184 |
+
return this.result_clear_highlight();
|
1185 |
+
}
|
1186 |
+
}
|
1187 |
+
};
|
1188 |
+
|
1189 |
+
Chosen.prototype.keydown_backstroke = function() {
|
1190 |
+
var next_available_destroy;
|
1191 |
+
if (this.pending_backstroke) {
|
1192 |
+
this.choice_destroy(this.pending_backstroke.find("a").first());
|
1193 |
+
return this.clear_backstroke();
|
1194 |
+
} else {
|
1195 |
+
next_available_destroy = this.search_container.siblings("li.search-choice").last();
|
1196 |
+
if (next_available_destroy.length && !next_available_destroy.hasClass("search-choice-disabled")) {
|
1197 |
+
this.pending_backstroke = next_available_destroy;
|
1198 |
+
if (this.single_backstroke_delete) {
|
1199 |
+
return this.keydown_backstroke();
|
1200 |
+
} else {
|
1201 |
+
return this.pending_backstroke.addClass("search-choice-focus");
|
1202 |
+
}
|
1203 |
+
}
|
1204 |
+
}
|
1205 |
+
};
|
1206 |
+
|
1207 |
+
Chosen.prototype.clear_backstroke = function() {
|
1208 |
+
if (this.pending_backstroke) {
|
1209 |
+
this.pending_backstroke.removeClass("search-choice-focus");
|
1210 |
+
}
|
1211 |
+
return this.pending_backstroke = null;
|
1212 |
+
};
|
1213 |
+
|
1214 |
+
Chosen.prototype.keydown_checker = function(evt) {
|
1215 |
+
var stroke, _ref1;
|
1216 |
+
stroke = (_ref1 = evt.which) != null ? _ref1 : evt.keyCode;
|
1217 |
+
this.search_field_scale();
|
1218 |
+
if (stroke !== 8 && this.pending_backstroke) {
|
1219 |
+
this.clear_backstroke();
|
1220 |
+
}
|
1221 |
+
switch (stroke) {
|
1222 |
+
case 8:
|
1223 |
+
this.backstroke_length = this.search_field.val().length;
|
1224 |
+
break;
|
1225 |
+
case 9:
|
1226 |
+
if (this.results_showing && !this.is_multiple) {
|
1227 |
+
this.result_select(evt);
|
1228 |
+
}
|
1229 |
+
this.mouse_on_container = false;
|
1230 |
+
break;
|
1231 |
+
case 13:
|
1232 |
+
if (this.results_showing) {
|
1233 |
+
evt.preventDefault();
|
1234 |
+
}
|
1235 |
+
break;
|
1236 |
+
case 32:
|
1237 |
+
if (this.disable_search) {
|
1238 |
+
evt.preventDefault();
|
1239 |
+
}
|
1240 |
+
break;
|
1241 |
+
case 38:
|
1242 |
+
evt.preventDefault();
|
1243 |
+
this.keyup_arrow();
|
1244 |
+
break;
|
1245 |
+
case 40:
|
1246 |
+
evt.preventDefault();
|
1247 |
+
this.keydown_arrow();
|
1248 |
+
break;
|
1249 |
+
}
|
1250 |
+
};
|
1251 |
+
|
1252 |
+
Chosen.prototype.search_field_scale = function() {
|
1253 |
+
var div, f_width, h, style, style_block, styles, w, _i, _len;
|
1254 |
+
if (this.is_multiple) {
|
1255 |
+
h = 0;
|
1256 |
+
w = 0;
|
1257 |
+
style_block = "position:absolute; left: -1000px; top: -1000px; display:none;";
|
1258 |
+
styles = ['font-size', 'font-style', 'font-weight', 'font-family', 'line-height', 'text-transform', 'letter-spacing'];
|
1259 |
+
for (_i = 0, _len = styles.length; _i < _len; _i++) {
|
1260 |
+
style = styles[_i];
|
1261 |
+
style_block += style + ":" + this.search_field.css(style) + ";";
|
1262 |
+
}
|
1263 |
+
div = $('<div />', {
|
1264 |
+
'style': style_block
|
1265 |
+
});
|
1266 |
+
div.text(this.search_field.val());
|
1267 |
+
$('body').append(div);
|
1268 |
+
w = div.width() + 25;
|
1269 |
+
div.remove();
|
1270 |
+
f_width = this.container.outerWidth();
|
1271 |
+
if (w > f_width - 10) {
|
1272 |
+
w = f_width - 10;
|
1273 |
+
}
|
1274 |
+
return this.search_field.css({
|
1275 |
+
'width': w + 'px'
|
1276 |
+
});
|
1277 |
+
}
|
1278 |
+
};
|
1279 |
+
|
1280 |
+
return Chosen;
|
1281 |
+
|
1282 |
+
})(AbstractChosen);
|
1283 |
+
|
1284 |
+
}).call(this);
|
@@ -0,0 +1 @@
|
|
|
1 |
+
(function(){var a,b,c,d,e,f={}.hasOwnProperty,g=function(a,b){function c(){this.constructor=a}for(var d in b)f.call(b,d)&&(a[d]=b[d]);return c.prototype=b.prototype,a.prototype=new c,a.__super__=b.prototype,a};d=function(){function a(){this.options_index=0,this.parsed=[]}return a.prototype.add_node=function(a){return"OPTGROUP"===a.nodeName.toUpperCase()?this.add_group(a):this.add_option(a)},a.prototype.add_group=function(a){var b,c,d,e,f,g;for(b=this.parsed.length,this.parsed.push({array_index:b,group:!0,label:this.escapeExpression(a.label),title:a.title?a.title:void 0,children:0,disabled:a.disabled,classes:a.className}),f=a.childNodes,g=[],d=0,e=f.length;e>d;d++)c=f[d],g.push(this.add_option(c,b,a.disabled));return g},a.prototype.add_option=function(a,b,c){return"OPTION"===a.nodeName.toUpperCase()?(""!==a.text?(null!=b&&(this.parsed[b].children+=1),this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,value:a.value,text:a.text,html:a.innerHTML,title:a.title?a.title:void 0,selected:a.selected,disabled:c===!0?c:a.disabled,group_array_index:b,group_label:null!=b?this.parsed[b].label:null,classes:a.className,style:a.style.cssText})):this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,empty:!0}),this.options_index+=1):void 0},a.prototype.escapeExpression=function(a){var b,c;return null==a||a===!1?"":/[\&\<\>\"\'\`]/.test(a)?(b={"<":"<",">":">",'"':""","'":"'","`":"`"},c=/&(?!\w+;)|[\<\>\"\'\`]/g,a.replace(c,function(a){return b[a]||"&"})):a},a}(),d.select_to_array=function(a){var b,c,e,f,g;for(c=new d,g=a.childNodes,e=0,f=g.length;f>e;e++)b=g[e],c.add_node(b);return c.parsed},b=function(){function a(b,c){this.form_field=b,this.options=null!=c?c:{},a.browser_is_supported()&&(this.is_multiple=this.form_field.multiple,this.set_default_text(),this.set_default_values(),this.setup(),this.set_up_html(),this.register_observers(),this.on_ready())}return a.prototype.set_default_values=function(){var a=this;return this.click_test_action=function(b){return a.test_active_click(b)},this.activate_action=function(b){return a.activate_field(b)},this.active_field=!1,this.mouse_on_container=!1,this.results_showing=!1,this.result_highlighted=null,this.allow_single_deselect=null!=this.options.allow_single_deselect&&null!=this.form_field.options[0]&&""===this.form_field.options[0].text?this.options.allow_single_deselect:!1,this.disable_search_threshold=this.options.disable_search_threshold||0,this.disable_search=this.options.disable_search||!1,this.enable_split_word_search=null!=this.options.enable_split_word_search?this.options.enable_split_word_search:!0,this.group_search=null!=this.options.group_search?this.options.group_search:!0,this.search_contains=this.options.search_contains||!1,this.single_backstroke_delete=null!=this.options.single_backstroke_delete?this.options.single_backstroke_delete:!0,this.max_selected_options=this.options.max_selected_options||1/0,this.inherit_select_classes=this.options.inherit_select_classes||!1,this.display_selected_options=null!=this.options.display_selected_options?this.options.display_selected_options:!0,this.display_disabled_options=null!=this.options.display_disabled_options?this.options.display_disabled_options:!0,this.include_group_label_in_selected=this.options.include_group_label_in_selected||!1,this.max_shown_results=this.options.max_shown_results||Number.POSITIVE_INFINITY},a.prototype.set_default_text=function(){return this.form_field.getAttribute("data-placeholder")?this.default_text=this.form_field.getAttribute("data-placeholder"):this.is_multiple?this.default_text=this.options.placeholder_text_multiple||this.options.placeholder_text||a.default_multiple_text:this.default_text=this.options.placeholder_text_single||this.options.placeholder_text||a.default_single_text,this.results_none_found=this.form_field.getAttribute("data-no_results_text")||this.options.no_results_text||a.default_no_result_text},a.prototype.choice_label=function(a){return this.include_group_label_in_selected&&null!=a.group_label?"<b class='group-name'>"+a.group_label+"</b>"+a.html:a.html},a.prototype.mouse_enter=function(){return this.mouse_on_container=!0},a.prototype.mouse_leave=function(){return this.mouse_on_container=!1},a.prototype.input_focus=function(a){var b=this;if(this.is_multiple){if(!this.active_field)return setTimeout(function(){return b.container_mousedown()},50)}else if(!this.active_field)return this.activate_field()},a.prototype.input_blur=function(a){var b=this;return this.mouse_on_container?void 0:(this.active_field=!1,setTimeout(function(){return b.blur_test()},100))},a.prototype.results_option_build=function(a){var b,c,d,e,f,g,h;for(b="",e=0,h=this.results_data,f=0,g=h.length;g>f&&(c=h[f],d="",d=c.group?this.result_add_group(c):this.result_add_option(c),""!==d&&(e++,b+=d),(null!=a?a.first:void 0)&&(c.selected&&this.is_multiple?this.choice_build(c):c.selected&&!this.is_multiple&&this.single_set_selected_text(this.choice_label(c))),!(e>=this.max_shown_results));f++);return b},a.prototype.result_add_option=function(a){var b,c;return a.search_match&&this.include_option_in_results(a)?(b=[],a.disabled||a.selected&&this.is_multiple||b.push("active-result"),!a.disabled||a.selected&&this.is_multiple||b.push("disabled-result"),a.selected&&b.push("result-selected"),null!=a.group_array_index&&b.push("group-option"),""!==a.classes&&b.push(a.classes),c=document.createElement("li"),c.className=b.join(" "),c.style.cssText=a.style,c.setAttribute("data-option-array-index",a.array_index),c.innerHTML=a.search_text,a.title&&(c.title=a.title),this.outerHTML(c)):""},a.prototype.result_add_group=function(a){var b,c;return(a.search_match||a.group_match)&&a.active_options>0?(b=[],b.push("group-result"),a.classes&&b.push(a.classes),c=document.createElement("li"),c.className=b.join(" "),c.innerHTML=a.search_text,a.title&&(c.title=a.title),this.outerHTML(c)):""},a.prototype.results_update_field=function(){return this.set_default_text(),this.is_multiple||this.results_reset_cleanup(),this.result_clear_highlight(),this.results_build(),this.results_showing?this.winnow_results():void 0},a.prototype.reset_single_select_options=function(){var a,b,c,d,e;for(d=this.results_data,e=[],b=0,c=d.length;c>b;b++)a=d[b],a.selected?e.push(a.selected=!1):e.push(void 0);return e},a.prototype.results_toggle=function(){return this.results_showing?this.results_hide():this.results_show()},a.prototype.results_search=function(a){return this.results_showing?this.winnow_results():this.results_show()},a.prototype.winnow_results=function(){var a,b,c,d,e,f,g,h,i,j,k,l;for(this.no_results_clear(),d=0,f=this.get_search_text(),a=f.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),i=new RegExp(a,"i"),c=this.get_search_regex(a),l=this.results_data,j=0,k=l.length;k>j;j++)b=l[j],b.search_match=!1,e=null,this.include_option_in_results(b)&&(b.group&&(b.group_match=!1,b.active_options=0),null!=b.group_array_index&&this.results_data[b.group_array_index]&&(e=this.results_data[b.group_array_index],0===e.active_options&&e.search_match&&(d+=1),e.active_options+=1),b.search_text=b.group?b.label:b.html,b.group&&!this.group_search||(b.search_match=this.search_string_match(b.search_text,c),b.search_match&&!b.group&&(d+=1),b.search_match?(f.length&&(g=b.search_text.search(i),h=b.search_text.substr(0,g+f.length)+"</em>"+b.search_text.substr(g+f.length),b.search_text=h.substr(0,g)+"<em>"+h.substr(g)),null!=e&&(e.group_match=!0)):null!=b.group_array_index&&this.results_data[b.group_array_index].search_match&&(b.search_match=!0)));return this.result_clear_highlight(),1>d&&f.length?(this.update_results_content(""),this.no_results(f)):(this.update_results_content(this.results_option_build()),this.winnow_results_set_highlight())},a.prototype.get_search_regex=function(a){var b;return b=this.search_contains?"":"^",new RegExp(b+a,"i")},a.prototype.search_string_match=function(a,b){var c,d,e,f;if(b.test(a))return!0;if(this.enable_split_word_search&&(a.indexOf(" ")>=0||0===a.indexOf("["))&&(d=a.replace(/\[|\]/g,"").split(" "),d.length))for(e=0,f=d.length;f>e;e++)if(c=d[e],b.test(c))return!0},a.prototype.choices_count=function(){var a,b,c,d;if(null!=this.selected_option_count)return this.selected_option_count;for(this.selected_option_count=0,d=this.form_field.options,b=0,c=d.length;c>b;b++)a=d[b],a.selected&&(this.selected_option_count+=1);return this.selected_option_count},a.prototype.choices_click=function(a){return a.preventDefault(),this.results_showing||this.is_disabled?void 0:this.results_show()},a.prototype.keyup_checker=function(a){var b,c;switch(b=null!=(c=a.which)?c:a.keyCode,this.search_field_scale(),b){case 8:if(this.is_multiple&&this.backstroke_length<1&&this.choices_count()>0)return this.keydown_backstroke();if(!this.pending_backstroke)return this.result_clear_highlight(),this.results_search();break;case 13:if(a.preventDefault(),this.results_showing)return this.result_select(a);break;case 27:return this.results_showing&&this.results_hide(),!0;case 9:case 38:case 40:case 16:case 91:case 17:case 18:break;default:return this.results_search()}},a.prototype.clipboard_event_checker=function(a){var b=this;return setTimeout(function(){return b.results_search()},50)},a.prototype.container_width=function(){return null!=this.options.width?this.options.width:""+this.form_field.offsetWidth+"px"},a.prototype.include_option_in_results=function(a){return this.is_multiple&&!this.display_selected_options&&a.selected?!1:!this.display_disabled_options&&a.disabled?!1:!a.empty},a.prototype.search_results_touchstart=function(a){return this.touch_started=!0,this.search_results_mouseover(a)},a.prototype.search_results_touchmove=function(a){return this.touch_started=!1,this.search_results_mouseout(a)},a.prototype.search_results_touchend=function(a){return this.touch_started?this.search_results_mouseup(a):void 0},a.prototype.outerHTML=function(a){var b;return a.outerHTML?a.outerHTML:(b=document.createElement("div"),b.appendChild(a),b.innerHTML)},a.browser_is_supported=function(){return/iP(od|hone)/i.test(window.navigator.userAgent)?!1:/Android/i.test(window.navigator.userAgent)&&/Mobile/i.test(window.navigator.userAgent)?!1:/IEMobile/i.test(window.navigator.userAgent)?!1:/Windows Phone/i.test(window.navigator.userAgent)?!1:/BlackBerry/i.test(window.navigator.userAgent)?!1:/BB10/i.test(window.navigator.userAgent)?!1:"Microsoft Internet Explorer"===window.navigator.appName?document.documentMode>=8:!0},a.default_multiple_text="Select Some Options",a.default_single_text="Select an Option",a.default_no_result_text="No results match",a}(),a=jQuery,a.fn.extend({chosen:function(d){return b.browser_is_supported()?this.each(function(b){var e,f;return e=a(this),f=e.data("chosen"),"destroy"===d?void(f instanceof c&&f.destroy()):void(f instanceof c||e.data("chosen",new c(this,d)))}):this}}),c=function(b){function c(){return e=c.__super__.constructor.apply(this,arguments)}return g(c,b),c.prototype.setup=function(){return this.form_field_jq=a(this.form_field),this.current_selectedIndex=this.form_field.selectedIndex,this.is_rtl=this.form_field_jq.hasClass("chosen-rtl")},c.prototype.set_up_html=function(){var b,c;return b=["chosen-container"],b.push("chosen-container-"+(this.is_multiple?"multi":"single")),this.inherit_select_classes&&this.form_field.className&&b.push(this.form_field.className),this.is_rtl&&b.push("chosen-rtl"),c={"class":b.join(" "),style:"width: "+this.container_width()+";",title:this.form_field.title},this.form_field.id.length&&(c.id=this.form_field.id.replace(/[^\w]/g,"_")+"_chosen"),this.container=a("<div />",c),this.is_multiple?this.container.html('<ul class="chosen-choices"><li class="search-field"><input type="text" value="'+this.default_text+'" class="default" autocomplete="off" style="width:25px;" /></li></ul><div class="chosen-drop"><ul class="chosen-results"></ul></div>'):this.container.html('<a class="chosen-single chosen-default"><span>'+this.default_text+'</span><div><b></b></div></a><div class="chosen-drop"><div class="chosen-search"><input type="text" autocomplete="off" /></div><ul class="chosen-results"></ul></div>'),this.form_field_jq.hide().after(this.container),this.dropdown=this.container.find("div.chosen-drop").first(),this.search_field=this.container.find("input").first(),this.search_results=this.container.find("ul.chosen-results").first(),this.search_field_scale(),this.search_no_results=this.container.find("li.no-results").first(),this.is_multiple?(this.search_choices=this.container.find("ul.chosen-choices").first(),this.search_container=this.container.find("li.search-field").first()):(this.search_container=this.container.find("div.chosen-search").first(),this.selected_item=this.container.find(".chosen-single").first()),this.results_build(),this.set_tab_index(),this.set_label_behavior()},c.prototype.on_ready=function(){return this.form_field_jq.trigger("chosen:ready",{chosen:this})},c.prototype.register_observers=function(){var a=this;return this.container.bind("touchstart.chosen",function(b){return a.container_mousedown(b),b.preventDefault()}),this.container.bind("touchend.chosen",function(b){return a.container_mouseup(b),b.preventDefault()}),this.container.bind("mousedown.chosen",function(b){a.container_mousedown(b)}),this.container.bind("mouseup.chosen",function(b){a.container_mouseup(b)}),this.container.bind("mouseenter.chosen",function(b){a.mouse_enter(b)}),this.container.bind("mouseleave.chosen",function(b){a.mouse_leave(b)}),this.search_results.bind("mouseup.chosen",function(b){a.search_results_mouseup(b)}),this.search_results.bind("mouseover.chosen",function(b){a.search_results_mouseover(b)}),this.search_results.bind("mouseout.chosen",function(b){a.search_results_mouseout(b)}),this.search_results.bind("mousewheel.chosen DOMMouseScroll.chosen",function(b){a.search_results_mousewheel(b)}),this.search_results.bind("touchstart.chosen",function(b){a.search_results_touchstart(b)}),this.search_results.bind("touchmove.chosen",function(b){a.search_results_touchmove(b)}),this.search_results.bind("touchend.chosen",function(b){a.search_results_touchend(b)}),this.form_field_jq.bind("chosen:updated.chosen",function(b){a.results_update_field(b)}),this.form_field_jq.bind("chosen:activate.chosen",function(b){a.activate_field(b)}),this.form_field_jq.bind("chosen:open.chosen",function(b){a.container_mousedown(b)}),this.form_field_jq.bind("chosen:close.chosen",function(b){a.input_blur(b)}),this.search_field.bind("blur.chosen",function(b){a.input_blur(b)}),this.search_field.bind("keyup.chosen",function(b){a.keyup_checker(b)}),this.search_field.bind("keydown.chosen",function(b){a.keydown_checker(b)}),this.search_field.bind("focus.chosen",function(b){a.input_focus(b)}),this.search_field.bind("cut.chosen",function(b){a.clipboard_event_checker(b)}),this.search_field.bind("paste.chosen",function(b){a.clipboard_event_checker(b)}),this.is_multiple?this.search_choices.bind("click.chosen",function(b){a.choices_click(b)}):this.container.bind("click.chosen",function(a){a.preventDefault()})},c.prototype.destroy=function(){return a(this.container[0].ownerDocument).unbind("click.chosen",this.click_test_action),this.search_field[0].tabIndex&&(this.form_field_jq[0].tabIndex=this.search_field[0].tabIndex),this.container.remove(),this.form_field_jq.removeData("chosen"),this.form_field_jq.show()},c.prototype.search_field_disabled=function(){return this.is_disabled=this.form_field_jq[0].disabled,this.is_disabled?(this.container.addClass("chosen-disabled"),this.search_field[0].disabled=!0,this.is_multiple||this.selected_item.unbind("focus.chosen",this.activate_action),this.close_field()):(this.container.removeClass("chosen-disabled"),this.search_field[0].disabled=!1,this.is_multiple?void 0:this.selected_item.bind("focus.chosen",this.activate_action))},c.prototype.container_mousedown=function(b){return this.is_disabled||(b&&"mousedown"===b.type&&!this.results_showing&&b.preventDefault(),null!=b&&a(b.target).hasClass("search-choice-close"))?void 0:(this.active_field?this.is_multiple||!b||a(b.target)[0]!==this.selected_item[0]&&!a(b.target).parents("a.chosen-single").length||(b.preventDefault(),this.results_toggle()):(this.is_multiple&&this.search_field.val(""),a(this.container[0].ownerDocument).bind("click.chosen",this.click_test_action),this.results_show()),this.activate_field())},c.prototype.container_mouseup=function(a){return"ABBR"!==a.target.nodeName||this.is_disabled?void 0:this.results_reset(a)},c.prototype.search_results_mousewheel=function(a){var b;return a.originalEvent&&(b=a.originalEvent.deltaY||-a.originalEvent.wheelDelta||a.originalEvent.detail),null!=b?(a.preventDefault(),"DOMMouseScroll"===a.type&&(b=40*b),this.search_results.scrollTop(b+this.search_results.scrollTop())):void 0},c.prototype.blur_test=function(a){return!this.active_field&&this.container.hasClass("chosen-container-active")?this.close_field():void 0},c.prototype.close_field=function(){return a(this.container[0].ownerDocument).unbind("click.chosen",this.click_test_action),this.active_field=!1,this.results_hide(),this.container.removeClass("chosen-container-active"),this.clear_backstroke(),this.show_search_field_default(),this.search_field_scale()},c.prototype.activate_field=function(){return this.container.addClass("chosen-container-active"),this.active_field=!0,this.search_field.val(this.search_field.val()),this.search_field.focus()},c.prototype.test_active_click=function(b){var c;return c=a(b.target).closest(".chosen-container"),c.length&&this.container[0]===c[0]?this.active_field=!0:this.close_field()},c.prototype.results_build=function(){return this.parsing=!0,this.selected_option_count=null,this.results_data=d.select_to_array(this.form_field),this.is_multiple?this.search_choices.find("li.search-choice").remove():this.is_multiple||(this.single_set_selected_text(),this.disable_search||this.form_field.options.length<=this.disable_search_threshold?(this.search_field[0].readOnly=!0,this.container.addClass("chosen-container-single-nosearch")):(this.search_field[0].readOnly=!1,this.container.removeClass("chosen-container-single-nosearch"))),this.update_results_content(this.results_option_build({first:!0})),this.search_field_disabled(),this.show_search_field_default(),this.search_field_scale(),this.parsing=!1},c.prototype.result_do_highlight=function(a){var b,c,d,e,f;if(a.length){if(this.result_clear_highlight(),this.result_highlight=a,this.result_highlight.addClass("highlighted"),d=parseInt(this.search_results.css("maxHeight"),10),f=this.search_results.scrollTop(),e=d+f,c=this.result_highlight.position().top+this.search_results.scrollTop(),b=c+this.result_highlight.outerHeight(),b>=e)return this.search_results.scrollTop(b-d>0?b-d:0);if(f>c)return this.search_results.scrollTop(c)}},c.prototype.result_clear_highlight=function(){return this.result_highlight&&this.result_highlight.removeClass("highlighted"),this.result_highlight=null},c.prototype.results_show=function(){return this.is_multiple&&this.max_selected_options<=this.choices_count()?(this.form_field_jq.trigger("chosen:maxselected",{chosen:this}),!1):(this.container.addClass("chosen-with-drop"),this.results_showing=!0,this.search_field.focus(),this.search_field.val(this.search_field.val()),this.winnow_results(),this.form_field_jq.trigger("chosen:showing_dropdown",{chosen:this}))},c.prototype.update_results_content=function(a){return this.search_results.html(a)},c.prototype.results_hide=function(){return this.results_showing&&(this.result_clear_highlight(),this.container.removeClass("chosen-with-drop"),this.form_field_jq.trigger("chosen:hiding_dropdown",{chosen:this})),this.results_showing=!1},c.prototype.set_tab_index=function(a){var b;return this.form_field.tabIndex?(b=this.form_field.tabIndex,this.form_field.tabIndex=-1,this.search_field[0].tabIndex=b):void 0},c.prototype.set_label_behavior=function(){var b=this;return this.form_field_label=this.form_field_jq.parents("label"),!this.form_field_label.length&&this.form_field.id.length&&(this.form_field_label=a("label[for='"+this.form_field.id+"']")),this.form_field_label.length>0?this.form_field_label.bind("click.chosen",function(a){return b.is_multiple?b.container_mousedown(a):b.activate_field()}):void 0},c.prototype.show_search_field_default=function(){return this.is_multiple&&this.choices_count()<1&&!this.active_field?(this.search_field.val(this.default_text),this.search_field.addClass("default")):(this.search_field.val(""),this.search_field.removeClass("default"))},c.prototype.search_results_mouseup=function(b){var c;return c=a(b.target).hasClass("active-result")?a(b.target):a(b.target).parents(".active-result").first(),c.length?(this.result_highlight=c,this.result_select(b),this.search_field.focus()):void 0},c.prototype.search_results_mouseover=function(b){var c;return c=a(b.target).hasClass("active-result")?a(b.target):a(b.target).parents(".active-result").first(),c?this.result_do_highlight(c):void 0},c.prototype.search_results_mouseout=function(b){return a(b.target).hasClass("active-result")?this.result_clear_highlight():void 0},c.prototype.choice_build=function(b){var c,d,e=this;return c=a("<li />",{"class":"search-choice"}).html("<span>"+this.choice_label(b)+"</span>"),b.disabled?c.addClass("search-choice-disabled"):(d=a("<a />",{"class":"search-choice-close","data-option-array-index":b.array_index}),d.bind("click.chosen",function(a){return e.choice_destroy_link_click(a)}),c.append(d)),this.search_container.before(c)},c.prototype.choice_destroy_link_click=function(b){return b.preventDefault(),b.stopPropagation(),this.is_disabled?void 0:this.choice_destroy(a(b.target))},c.prototype.choice_destroy=function(a){return this.result_deselect(a[0].getAttribute("data-option-array-index"))?(this.show_search_field_default(),this.is_multiple&&this.choices_count()>0&&this.search_field.val().length<1&&this.results_hide(),a.parents("li").first().remove(),this.search_field_scale()):void 0},c.prototype.results_reset=function(){return this.reset_single_select_options(),this.form_field.options[0].selected=!0,this.single_set_selected_text(),this.show_search_field_default(),this.results_reset_cleanup(),this.form_field_jq.trigger("change"),this.active_field?this.results_hide():void 0},c.prototype.results_reset_cleanup=function(){return this.current_selectedIndex=this.form_field.selectedIndex,this.selected_item.find("abbr").remove()},c.prototype.result_select=function(a){var b,c;return this.result_highlight?(b=this.result_highlight,this.result_clear_highlight(),this.is_multiple&&this.max_selected_options<=this.choices_count()?(this.form_field_jq.trigger("chosen:maxselected",{chosen:this}),!1):(this.is_multiple?b.removeClass("active-result"):this.reset_single_select_options(),b.addClass("result-selected"),c=this.results_data[b[0].getAttribute("data-option-array-index")],c.selected=!0,this.form_field.options[c.options_index].selected=!0,this.selected_option_count=null,this.is_multiple?this.choice_build(c):this.single_set_selected_text(this.choice_label(c)),(a.metaKey||a.ctrlKey)&&this.is_multiple||this.results_hide(),this.show_search_field_default(),(this.is_multiple||this.form_field.selectedIndex!==this.current_selectedIndex)&&this.form_field_jq.trigger("change",{selected:this.form_field.options[c.options_index].value}),this.current_selectedIndex=this.form_field.selectedIndex,a.preventDefault(),this.search_field_scale())):void 0},c.prototype.single_set_selected_text=function(a){return null==a&&(a=this.default_text),a===this.default_text?this.selected_item.addClass("chosen-default"):(this.single_deselect_control_build(),this.selected_item.removeClass("chosen-default")),this.selected_item.find("span").html(a)},c.prototype.result_deselect=function(a){var b;return b=this.results_data[a],this.form_field.options[b.options_index].disabled?!1:(b.selected=!1,this.form_field.options[b.options_index].selected=!1,this.selected_option_count=null,this.result_clear_highlight(),this.results_showing&&this.winnow_results(),this.form_field_jq.trigger("change",{deselected:this.form_field.options[b.options_index].value}),this.search_field_scale(),!0)},c.prototype.single_deselect_control_build=function(){return this.allow_single_deselect?(this.selected_item.find("abbr").length||this.selected_item.find("span").first().after('<abbr class="search-choice-close"></abbr>'),this.selected_item.addClass("chosen-single-with-deselect")):void 0},c.prototype.get_search_text=function(){return a("<div/>").text(a.trim(this.search_field.val())).html()},c.prototype.winnow_results_set_highlight=function(){var a,b;return b=this.is_multiple?[]:this.search_results.find(".result-selected.active-result"),a=b.length?b.first():this.search_results.find(".active-result").first(),null!=a?this.result_do_highlight(a):void 0},c.prototype.no_results=function(b){var c;return c=a('<li class="no-results">'+this.results_none_found+' "<span></span>"</li>'),c.find("span").first().html(b),this.search_results.append(c),this.form_field_jq.trigger("chosen:no_results",{chosen:this})},c.prototype.no_results_clear=function(){return this.search_results.find(".no-results").remove()},c.prototype.keydown_arrow=function(){var a;return this.results_showing&&this.result_highlight?(a=this.result_highlight.nextAll("li.active-result").first())?this.result_do_highlight(a):void 0:this.results_show()},c.prototype.keyup_arrow=function(){var a;return this.results_showing||this.is_multiple?this.result_highlight?(a=this.result_highlight.prevAll("li.active-result"),a.length?this.result_do_highlight(a.first()):(this.choices_count()>0&&this.results_hide(),this.result_clear_highlight())):void 0:this.results_show()},c.prototype.keydown_backstroke=function(){var a;return this.pending_backstroke?(this.choice_destroy(this.pending_backstroke.find("a").first()),this.clear_backstroke()):(a=this.search_container.siblings("li.search-choice").last(),a.length&&!a.hasClass("search-choice-disabled")?(this.pending_backstroke=a,this.single_backstroke_delete?this.keydown_backstroke():this.pending_backstroke.addClass("search-choice-focus")):void 0)},c.prototype.clear_backstroke=function(){return this.pending_backstroke&&this.pending_backstroke.removeClass("search-choice-focus"),this.pending_backstroke=null},c.prototype.keydown_checker=function(a){var b,c;switch(b=null!=(c=a.which)?c:a.keyCode,this.search_field_scale(),8!==b&&this.pending_backstroke&&this.clear_backstroke(),b){case 8:this.backstroke_length=this.search_field.val().length;break;case 9:this.results_showing&&!this.is_multiple&&this.result_select(a),this.mouse_on_container=!1;break;case 13:this.results_showing&&a.preventDefault();break;case 32:this.disable_search&&a.preventDefault();break;case 38:a.preventDefault(),this.keyup_arrow();break;case 40:a.preventDefault(),this.keydown_arrow()}},c.prototype.search_field_scale=function(){var b,c,d,e,f,g,h,i,j;if(this.is_multiple){for(d=0,h=0,f="position:absolute; left: -1000px; top: -1000px; display:none;",g=["font-size","font-style","font-weight","font-family","line-height","text-transform","letter-spacing"],i=0,j=g.length;j>i;i++)e=g[i],f+=e+":"+this.search_field.css(e)+";";return b=a("<div />",{style:f}),b.text(this.search_field.val()),a("body").append(b),h=b.width()+25,b.remove(),c=this.container.outerWidth(),h>c-10&&(h=c-10),this.search_field.css({width:h+"px"})}},c}(b)}).call(this);
|
@@ -1,2 +1,2 @@
|
|
1 |
-
<?php
|
2 |
-
// Silence is golden.
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
@@ -7,7 +7,13 @@
|
|
7 |
* http://trentrichardson.com/Impromptu/MIT-LICENSE.txt
|
8 |
*/
|
9 |
|
10 |
-
(function (
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
|
12 |
/*
|
13 |
* Lets not redefine timepicker, Prevent "Uncaught RangeError: Maximum call stack size exceeded"
|
@@ -26,7 +32,7 @@
|
|
26 |
}
|
27 |
});
|
28 |
|
29 |
-
/*
|
30 |
* Timepicker manager.
|
31 |
* Use the singleton instance of this class, $.timepicker, to interact with the time picker.
|
32 |
* Settings for (groups of) time pickers are maintained in an instance object,
|
@@ -107,8 +113,10 @@
|
|
107 |
addSliderAccess: false,
|
108 |
sliderAccessArgs: null,
|
109 |
controlType: 'slider',
|
|
|
110 |
defaultValue: null,
|
111 |
-
parse: 'strict'
|
|
|
112 |
};
|
113 |
$.extend(this._defaults, this.regional['']);
|
114 |
};
|
@@ -151,7 +159,7 @@
|
|
151 |
support: {},
|
152 |
control: null,
|
153 |
|
154 |
-
/*
|
155 |
* Override the default settings for all instances of the time picker.
|
156 |
* @param {Object} settings object - the new settings to use as defaults (anonymous object)
|
157 |
* @return {Object} the manager object
|
@@ -191,7 +199,7 @@
|
|
191 |
},
|
192 |
onChangeMonthYear: function (year, month, dp_inst) {
|
193 |
// Update the time as well : this prevents the time from disappearing from the $input field.
|
194 |
-
tp_inst._updateDateTime(dp_inst);
|
195 |
if ($.isFunction(tp_inst._defaults.evnts.onChangeMonthYear)) {
|
196 |
tp_inst._defaults.evnts.onChangeMonthYear.call($input[0], year, month, dp_inst, tp_inst);
|
197 |
}
|
@@ -207,7 +215,7 @@
|
|
207 |
};
|
208 |
for (i in overrides) {
|
209 |
if (overrides.hasOwnProperty(i)) {
|
210 |
-
fns[i] = opts[i] || null;
|
211 |
}
|
212 |
}
|
213 |
|
@@ -224,7 +232,7 @@
|
|
224 |
|
225 |
// detect which units are supported
|
226 |
tp_inst.support = detectSupport(
|
227 |
-
tp_inst._defaults.timeFormat +
|
228 |
(tp_inst._defaults.pickerTimeFormat ? tp_inst._defaults.pickerTimeFormat : '') +
|
229 |
(tp_inst._defaults.altTimeFormat ? tp_inst._defaults.altTimeFormat : ''));
|
230 |
|
@@ -313,11 +321,12 @@
|
|
313 |
* add our sliders to the calendar
|
314 |
*/
|
315 |
_addTimePicker: function (dp_inst) {
|
316 |
-
var currDT = (this.$altInput && this._defaults.altFieldTimeOnly) ? this.$input.val() + ' ' + this.$altInput.val() : this.$input.val();
|
317 |
|
318 |
this.timeDefined = this._parseTime(currDT);
|
319 |
this._limitMinMaxDateTime(dp_inst, false);
|
320 |
this._injectTimePicker();
|
|
|
321 |
},
|
322 |
|
323 |
/*
|
@@ -354,6 +363,16 @@
|
|
354 |
}
|
355 |
},
|
356 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
357 |
/*
|
358 |
* generate and inject html for timepicker into ui datepicker
|
359 |
*/
|
@@ -372,9 +391,9 @@
|
|
372 |
|
373 |
// Prevent displaying twice
|
374 |
if ($dp.find("div.ui-timepicker-div").length === 0 && o.showTimepicker) {
|
375 |
-
var noDisplay = '
|
376 |
-
html = '<div class="ui-timepicker-div' + (o.isRTL ? ' ui-timepicker-rtl' : '') + '"><dl>' + '<dt class="ui_tpicker_time_label
|
377 |
-
'<dd class="ui_tpicker_time
|
378 |
|
379 |
// Create the markup
|
380 |
for (i = 0, l = this.units.length; i < l; i++) {
|
@@ -388,8 +407,8 @@
|
|
388 |
max[litem] = parseInt((o[litem + 'Max'] - ((o[litem + 'Max'] - o[litem + 'Min']) % o['step' + uitem])), 10);
|
389 |
gridSize[litem] = 0;
|
390 |
|
391 |
-
html += '<dt class="ui_tpicker_' + litem + '_label
|
392 |
-
'<dd class="ui_tpicker_' + litem + '"><div class="ui_tpicker_' + litem + '_slider
|
393 |
|
394 |
if (show && o[litem + 'Grid'] > 0) {
|
395 |
html += '<div style="padding-left: 1px"><table class="ui-tpicker-grid-label"><tr>';
|
@@ -412,11 +431,11 @@
|
|
412 |
}
|
413 |
html += '</dd>';
|
414 |
}
|
415 |
-
|
416 |
// Timezone
|
417 |
var showTz = o.showTimezone !== null ? o.showTimezone : this.support.timezone;
|
418 |
-
html += '<dt class="ui_tpicker_timezone_label
|
419 |
-
html += '<dd class="ui_tpicker_timezone
|
420 |
|
421 |
// Create the elements from string
|
422 |
html += '</dl></div>';
|
@@ -427,7 +446,7 @@
|
|
427 |
$tp.prepend('<div class="ui-widget-header ui-helper-clearfix ui-corner-all">' + '<div class="ui-datepicker-title">' + o.timeOnlyTitle + '</div>' + '</div>');
|
428 |
$dp.find('.ui-datepicker-header, .ui-datepicker-calendar').hide();
|
429 |
}
|
430 |
-
|
431 |
// add sliders, adjust grids, add events
|
432 |
for (i = 0, l = tp_inst.units.length; i < l; i++) {
|
433 |
litem = tp_inst.units[i];
|
@@ -462,7 +481,7 @@
|
|
462 |
}
|
463 |
}
|
464 |
}
|
465 |
-
|
466 |
tp_inst.control.value(tp_inst, tp_inst[f + '_slider'], litem, n);
|
467 |
|
468 |
tp_inst._onTimeChange();
|
@@ -499,9 +518,10 @@
|
|
499 |
this.timezone_select.change(function () {
|
500 |
tp_inst._onTimeChange();
|
501 |
tp_inst._onSelectHandler();
|
|
|
502 |
});
|
503 |
// End timezone options
|
504 |
-
|
505 |
// inject timepicker into datepicker
|
506 |
var $buttonPanel = $dp.find('.ui-datepicker-buttonpane');
|
507 |
if ($buttonPanel.length) {
|
@@ -510,7 +530,21 @@
|
|
510 |
$dp.append($tp);
|
511 |
}
|
512 |
|
513 |
-
this.$timeObj = $tp.find('.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
514 |
|
515 |
if (this.inst !== null) {
|
516 |
var timeDefined = this.timeDefined;
|
@@ -523,7 +557,7 @@
|
|
523 |
var sliderAccessArgs = this._defaults.sliderAccessArgs,
|
524 |
rtl = this._defaults.isRTL;
|
525 |
sliderAccessArgs.isRTL = rtl;
|
526 |
-
|
527 |
setTimeout(function () { // fix for inline mode
|
528 |
if ($tp.find('.ui-slider-access').length === 0) {
|
529 |
$tp.find('.ui-slider:visible').sliderAccess(sliderAccessArgs);
|
@@ -675,44 +709,44 @@
|
|
675 |
}
|
676 |
}
|
677 |
|
678 |
-
if (dp_inst.settings.minTime!==null) {
|
679 |
-
var tempMinTime=new Date("01/01/1970 " + dp_inst.settings.minTime);
|
680 |
if (this.hour<tempMinTime.getHours()) {
|
681 |
this.hour=this._defaults.hourMin=tempMinTime.getHours();
|
682 |
-
this.minute=this._defaults.minuteMin=tempMinTime.getMinutes();
|
683 |
} else if (this.hour===tempMinTime.getHours() && this.minute<tempMinTime.getMinutes()) {
|
684 |
this.minute=this._defaults.minuteMin=tempMinTime.getMinutes();
|
685 |
-
} else {
|
686 |
if (this._defaults.hourMin<tempMinTime.getHours()) {
|
687 |
this._defaults.hourMin=tempMinTime.getHours();
|
688 |
-
this._defaults.minuteMin=tempMinTime.getMinutes();
|
689 |
} else if (this._defaults.hourMin===tempMinTime.getHours()===this.hour && this._defaults.minuteMin<tempMinTime.getMinutes()) {
|
690 |
-
this._defaults.minuteMin=tempMinTime.getMinutes();
|
691 |
} else {
|
692 |
this._defaults.minuteMin=0;
|
693 |
}
|
694 |
-
}
|
695 |
}
|
696 |
-
|
697 |
-
if (dp_inst.settings.maxTime!==null) {
|
698 |
var tempMaxTime=new Date("01/01/1970 " + dp_inst.settings.maxTime);
|
699 |
if (this.hour>tempMaxTime.getHours()) {
|
700 |
-
this.hour=this._defaults.hourMax=tempMaxTime.getHours();
|
|
|
|
|
701 |
this.minute=this._defaults.minuteMax=tempMaxTime.getMinutes();
|
702 |
-
} else if (this.hour===tempMaxTime.getHours() && this.minute>tempMaxTime.getMinutes()) {
|
703 |
-
this.minute=this._defaults.minuteMax=tempMaxTime.getMinutes();
|
704 |
} else {
|
705 |
if (this._defaults.hourMax>tempMaxTime.getHours()) {
|
706 |
this._defaults.hourMax=tempMaxTime.getHours();
|
707 |
-
this._defaults.minuteMax=tempMaxTime.getMinutes();
|
708 |
} else if (this._defaults.hourMax===tempMaxTime.getHours()===this.hour && this._defaults.minuteMax>tempMaxTime.getMinutes()) {
|
709 |
-
this._defaults.minuteMax=tempMaxTime.getMinutes();
|
710 |
} else {
|
711 |
this._defaults.minuteMax=59;
|
712 |
}
|
713 |
-
}
|
714 |
}
|
715 |
-
|
716 |
if (adjustSliders !== undefined && adjustSliders === true) {
|
717 |
var hourMax = parseInt((this._defaults.hourMax - ((this._defaults.hourMax - this._defaults.hourMin) % this._defaults.stepHour)), 10),
|
718 |
minMax = parseInt((this._defaults.minuteMax - ((this._defaults.minuteMax - this._defaults.minuteMin) % this._defaults.stepMinute)), 10),
|
@@ -806,11 +840,11 @@
|
|
806 |
// If the update was done using the sliders, update the input field.
|
807 |
var hasChanged = (
|
808 |
hour !== parseInt(this.hour,10) || // sliders should all be numeric
|
809 |
-
minute !== parseInt(this.minute,10) ||
|
810 |
-
second !== parseInt(this.second,10) ||
|
811 |
-
millisec !== parseInt(this.millisec,10) ||
|
812 |
-
microsec !== parseInt(this.microsec,10) ||
|
813 |
-
(this.ampm.length > 0 && (hour < 12) !== ($.inArray(this.ampm.toUpperCase(), this.amNames) !== -1)) ||
|
814 |
(this.timezone !== null && timezone !== this.timezone.toString()) // could be numeric or "EST" format, so use toString()
|
815 |
);
|
816 |
|
@@ -849,10 +883,15 @@
|
|
849 |
this.formattedTime = $.datepicker.formatTime(o.timeFormat, this, o);
|
850 |
if (this.$timeObj) {
|
851 |
if (pickerTimeFormat === o.timeFormat) {
|
852 |
-
this.$timeObj.
|
853 |
}
|
854 |
else {
|
855 |
-
this.$timeObj.
|
|
|
|
|
|
|
|
|
|
|
856 |
}
|
857 |
}
|
858 |
|
@@ -880,8 +919,8 @@
|
|
880 |
*/
|
881 |
_updateDateTime: function (dp_inst) {
|
882 |
dp_inst = this.inst || dp_inst;
|
883 |
-
var dtTmp = (dp_inst.currentYear > 0?
|
884 |
-
new Date(dp_inst.currentYear, dp_inst.currentMonth, dp_inst.currentDay) :
|
885 |
new Date(dp_inst.selectedYear, dp_inst.selectedMonth, dp_inst.selectedDay)),
|
886 |
dt = $.datepicker._daylightSavingAdjust(dtTmp),
|
887 |
//dt = $.datepicker._daylightSavingAdjust(new Date(dp_inst.selectedYear, dp_inst.selectedMonth, dp_inst.selectedDay)),
|
@@ -891,7 +930,7 @@
|
|
891 |
timeAvailable = dt !== null && this.timeDefined;
|
892 |
this.formattedDate = $.datepicker.formatDate(dateFmt, (dt === null ? new Date() : dt), formatCfg);
|
893 |
var formattedDateTime = this.formattedDate;
|
894 |
-
|
895 |
// if a slider was changed but datepicker doesn't have a value yet, set it
|
896 |
if (dp_inst.lastVal === "") {
|
897 |
dp_inst.currentYear = dp_inst.selectedYear;
|
@@ -901,7 +940,7 @@
|
|
901 |
|
902 |
/*
|
903 |
* remove following lines to force every changes in date picker to change the input value
|
904 |
-
* Bug descriptions: when an input field has a default value, and click on the field to pop up the date picker.
|
905 |
* If the user manually empty the value in the input field, the date picker will never change selected value.
|
906 |
*/
|
907 |
//if (dp_inst.lastVal !== undefined && (dp_inst.lastVal.length > 0 && this.$input.val().length === 0)) {
|
@@ -926,7 +965,7 @@
|
|
926 |
var altFormattedDateTime = '',
|
927 |
altSeparator = this._defaults.altSeparator !== null ? this._defaults.altSeparator : this._defaults.separator,
|
928 |
altTimeSuffix = this._defaults.altTimeSuffix !== null ? this._defaults.altTimeSuffix : this._defaults.timeSuffix;
|
929 |
-
|
930 |
if (!this._defaults.timeOnly) {
|
931 |
if (this._defaults.altFormat) {
|
932 |
altFormattedDateTime = $.datepicker.formatDate(this._defaults.altFormat, (dt === null ? new Date() : dt), formatCfg);
|
@@ -993,7 +1032,7 @@
|
|
993 |
stop: function (event, ui) {
|
994 |
tp_inst._onSelectHandler();
|
995 |
}
|
996 |
-
});
|
997 |
},
|
998 |
options: function (tp_inst, obj, unit, opts, val) {
|
999 |
if (tp_inst._defaults.isRTL) {
|
@@ -1006,7 +1045,7 @@
|
|
1006 |
}
|
1007 |
return obj.slider(opts);
|
1008 |
}
|
1009 |
-
var min = opts.min,
|
1010 |
max = opts.max;
|
1011 |
opts.min = opts.max = null;
|
1012 |
if (min !== undefined) {
|
@@ -1038,7 +1077,7 @@
|
|
1038 |
// select methods
|
1039 |
select: {
|
1040 |
create: function (tp_inst, obj, unit, val, min, max, step) {
|
1041 |
-
var sel = '<select class="ui-timepicker-select" data-unit="' + unit + '" data-min="' + min + '" data-max="' + max + '" data-step="' + step + '">',
|
1042 |
format = tp_inst._defaults.pickerTimeFormat || tp_inst._defaults.timeFormat;
|
1043 |
|
1044 |
for (var i = min; i <= max; i += step) {
|
@@ -1057,6 +1096,7 @@
|
|
1057 |
$(sel).appendTo(obj).change(function (e) {
|
1058 |
tp_inst._onTimeChange();
|
1059 |
tp_inst._onSelectHandler();
|
|
|
1060 |
});
|
1061 |
|
1062 |
return obj;
|
@@ -1068,10 +1108,10 @@
|
|
1068 |
if (val === undefined) {
|
1069 |
return $t.data(opts);
|
1070 |
}
|
1071 |
-
o[opts] = val;
|
1072 |
}
|
1073 |
else { o = opts; }
|
1074 |
-
return tp_inst.control.create(tp_inst, obj, $t.data('unit'), $t.val(), o.min
|
1075 |
},
|
1076 |
value: function (tp_inst, obj, unit, val) {
|
1077 |
var $t = obj.children('select');
|
@@ -1235,7 +1275,7 @@
|
|
1235 |
ampm = '';
|
1236 |
resTime.ampm = '';
|
1237 |
} else {
|
1238 |
-
ampm = $.inArray(treg[order.t].toUpperCase(), o.amNames) !== -1 ? 'AM' : 'PM';
|
1239 |
resTime.ampm = o[ampm === 'AM' ? 'amNames' : 'pmNames'][0];
|
1240 |
}
|
1241 |
}
|
@@ -1303,11 +1343,11 @@
|
|
1303 |
}
|
1304 |
catch (err2) {
|
1305 |
$.timepicker.log("Unable to parse \ntimeString: " + s + "\ntimeFormat: " + f);
|
1306 |
-
}
|
1307 |
}
|
1308 |
return false;
|
1309 |
}; // end looseParse
|
1310 |
-
|
1311 |
if (typeof o.parse === "function") {
|
1312 |
return o.parse(timeFormat, timeString, o);
|
1313 |
}
|
@@ -1393,14 +1433,17 @@
|
|
1393 |
$.datepicker._base_selectDate = $.datepicker._selectDate;
|
1394 |
$.datepicker._selectDate = function (id, dateStr) {
|
1395 |
var inst = this._getInst($(id)[0]),
|
1396 |
-
tp_inst = this._get(inst, 'timepicker')
|
|
|
1397 |
|
1398 |
if (tp_inst && inst.settings.showTimepicker) {
|
1399 |
tp_inst._limitMinMaxDateTime(inst, true);
|
|
|
1400 |
inst.inline = inst.stay_open = true;
|
1401 |
//This way the onSelect handler called from calendarpicker get the full dateTime
|
1402 |
this._base_selectDate(id, dateStr);
|
1403 |
-
inst.inline =
|
|
|
1404 |
this._notifyChange(inst);
|
1405 |
this._updateDatepicker(inst);
|
1406 |
} else {
|
@@ -1453,11 +1496,11 @@
|
|
1453 |
.replace(/tT/g, ampm ? 'AaPpMm' : '')
|
1454 |
.replace(/T/g, ampm ? 'AP' : '')
|
1455 |
.replace(/tt/g, ampm ? 'apm' : '')
|
1456 |
-
.replace(/t/g, ampm ? 'ap' : '') +
|
1457 |
-
" " + tp_inst._defaults.separator +
|
1458 |
-
tp_inst._defaults.timeSuffix +
|
1459 |
-
(tz ? tp_inst._defaults.timezoneList.join('') : '') +
|
1460 |
-
(tp_inst._defaults.amNames.join('')) + (tp_inst._defaults.pmNames.join('')) +
|
1461 |
dateChars,
|
1462 |
chr = String.fromCharCode(event.charCode === undefined ? event.keyCode : event.charCode);
|
1463 |
return event.ctrlKey || (chr < ' ' || !dateChars || datetimeChars.indexOf(chr) > -1);
|
@@ -1480,11 +1523,11 @@
|
|
1480 |
var altFormat = tp_inst._defaults.altFormat || tp_inst._defaults.dateFormat,
|
1481 |
date = this._getDate(inst),
|
1482 |
formatCfg = $.datepicker._getFormatConfig(inst),
|
1483 |
-
altFormattedDateTime = '',
|
1484 |
-
altSeparator = tp_inst._defaults.altSeparator ? tp_inst._defaults.altSeparator : tp_inst._defaults.separator,
|
1485 |
altTimeSuffix = tp_inst._defaults.altTimeSuffix ? tp_inst._defaults.altTimeSuffix : tp_inst._defaults.timeSuffix,
|
1486 |
altTimeFormat = tp_inst._defaults.altTimeFormat !== null ? tp_inst._defaults.altTimeFormat : tp_inst._defaults.timeFormat;
|
1487 |
-
|
1488 |
altFormattedDateTime += $.datepicker.formatTime(altTimeFormat, tp_inst, tp_inst._defaults) + altTimeSuffix;
|
1489 |
if (!tp_inst._defaults.timeOnly && !tp_inst._defaults.altFieldTimeOnly && date !== null) {
|
1490 |
if (tp_inst._defaults.altFormat) {
|
@@ -1498,7 +1541,7 @@
|
|
1498 |
}
|
1499 |
}
|
1500 |
else {
|
1501 |
-
$.datepicker._base_updateAlternate(inst);
|
1502 |
}
|
1503 |
};
|
1504 |
|
@@ -1524,18 +1567,23 @@
|
|
1524 |
};
|
1525 |
|
1526 |
/*
|
1527 |
-
* override "Today" button to also grab the time.
|
1528 |
*/
|
1529 |
$.datepicker._base_gotoToday = $.datepicker._gotoToday;
|
1530 |
$.datepicker._gotoToday = function (id) {
|
1531 |
-
var inst = this._getInst($(id)[0])
|
1532 |
-
$dp = inst.dpDiv;
|
1533 |
this._base_gotoToday(id);
|
1534 |
var tp_inst = this._get(inst, 'timepicker');
|
1535 |
-
|
|
|
|
|
|
|
|
|
1536 |
var now = new Date();
|
|
|
1537 |
this._setTime(inst, now);
|
1538 |
-
|
|
|
1539 |
};
|
1540 |
|
1541 |
/*
|
@@ -1587,7 +1635,7 @@
|
|
1587 |
tp_inst.millisec = date ? date.getMilliseconds() : defaults.millisec;
|
1588 |
tp_inst.microsec = date ? date.getMicroseconds() : defaults.microsec;
|
1589 |
|
1590 |
-
//check if within min/max times..
|
1591 |
tp_inst._limitMinMaxDateTime(inst, true);
|
1592 |
|
1593 |
tp_inst._onTimeChange();
|
@@ -1655,9 +1703,9 @@
|
|
1655 |
} else {
|
1656 |
tp_date = date;
|
1657 |
}
|
1658 |
-
|
1659 |
-
// This is important if you are using the timezone option, javascript's Date
|
1660 |
-
// object will only return the timezone offset for the current locale, so we
|
1661 |
// adjust it accordingly. If not using timezone option this won't matter..
|
1662 |
// If a timezone is different in tp, keep the timezone as is
|
1663 |
if (tp_inst && tp_date) {
|
@@ -1665,8 +1713,8 @@
|
|
1665 |
if (!tp_inst.support.timezone && tp_inst._defaults.timezone === null) {
|
1666 |
tp_inst.timezone = tp_date.getTimezoneOffset() * -1;
|
1667 |
}
|
1668 |
-
date = $.timepicker.timezoneAdjust(date, tp_inst.timezone);
|
1669 |
-
tp_date = $.timepicker.timezoneAdjust(tp_date, tp_inst.timezone);
|
1670 |
}
|
1671 |
|
1672 |
this._updateDatepicker(inst);
|
@@ -1693,19 +1741,39 @@
|
|
1693 |
}
|
1694 |
|
1695 |
var date = this._getDate(inst);
|
1696 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1697 |
date.setHours(tp_inst.hour, tp_inst.minute, tp_inst.second, tp_inst.millisec);
|
1698 |
date.setMicroseconds(tp_inst.microsec);
|
1699 |
|
1700 |
-
// This is important if you are using the timezone option, javascript's Date
|
1701 |
-
// object will only return the timezone offset for the current locale, so we
|
1702 |
// adjust it accordingly. If not using timezone option this won't matter..
|
1703 |
if (tp_inst.timezone != null) {
|
1704 |
// look out for DST if tz wasn't specified
|
1705 |
if (!tp_inst.support.timezone && tp_inst._defaults.timezone === null) {
|
1706 |
tp_inst.timezone = date.getTimezoneOffset() * -1;
|
1707 |
}
|
1708 |
-
date = $.timepicker.timezoneAdjust(date, tp_inst.timezone);
|
1709 |
}
|
1710 |
}
|
1711 |
return date;
|
@@ -1767,7 +1835,10 @@
|
|
1767 |
onselect = null,
|
1768 |
overrides = tp_inst._defaults.evnts,
|
1769 |
fns = {},
|
1770 |
-
prop
|
|
|
|
|
|
|
1771 |
if (typeof name === 'string') { // if min/max was set with the string
|
1772 |
if (name === 'minDate' || name === 'minDateTime') {
|
1773 |
min = value;
|
@@ -1825,13 +1896,24 @@
|
|
1825 |
} else if (onselect) {
|
1826 |
tp_inst._defaults.onSelect = onselect;
|
1827 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1828 |
}
|
1829 |
if (value === undefined) {
|
1830 |
return this._base_optionDatepicker.call($.datepicker, target, name);
|
1831 |
}
|
1832 |
return this._base_optionDatepicker.call($.datepicker, target, name_clone || name, value);
|
1833 |
};
|
1834 |
-
|
1835 |
/*
|
1836 |
* jQuery isEmptyObject does not check hasOwnProperty - if someone has added to the object prototype,
|
1837 |
* it will return false for all objects
|
@@ -1989,7 +2071,7 @@
|
|
1989 |
hours = (off - minutes) / 60,
|
1990 |
iso = iso8601 ? ':' : '',
|
1991 |
tz = (off >= 0 ? '+' : '-') + ('0' + Math.abs(hours)).slice(-2) + iso + ('0' + Math.abs(minutes)).slice(-2);
|
1992 |
-
|
1993 |
if (tz === '+00:00') {
|
1994 |
return 'Z';
|
1995 |
}
|
@@ -2009,7 +2091,7 @@
|
|
2009 |
}
|
2010 |
|
2011 |
if (!/^(\-|\+)\d{4}$/.test(normalized)) { // possibly a user defined tz, so just give it back
|
2012 |
-
return tzString;
|
2013 |
}
|
2014 |
|
2015 |
return ((normalized.substr(0, 1) === '-' ? -1 : 1) * // plus or minus
|
@@ -2020,13 +2102,15 @@
|
|
2020 |
/**
|
2021 |
* No way to set timezone in js Date, so we must adjust the minutes to compensate. (think setDate, getDate)
|
2022 |
* @param {Date} date
|
|
|
2023 |
* @param {string} toTimezone formatted like "+0500", "-1245"
|
2024 |
* @return {Date}
|
2025 |
*/
|
2026 |
-
$.timepicker.timezoneAdjust = function (date, toTimezone) {
|
|
|
2027 |
var toTz = $.timepicker.timezoneOffsetNumber(toTimezone);
|
2028 |
if (!isNaN(toTz)) {
|
2029 |
-
date.setMinutes(date.getMinutes() + -
|
2030 |
}
|
2031 |
return date;
|
2032 |
};
|
@@ -2133,6 +2217,7 @@
|
|
2133 |
date.setMilliseconds(date.getMilliseconds() - options.minInterval);
|
2134 |
}
|
2135 |
}
|
|
|
2136 |
if (date.getTime) {
|
2137 |
other[method].call(other, 'option', option, date);
|
2138 |
}
|
@@ -2158,8 +2243,10 @@
|
|
2158 |
}, options, options.end));
|
2159 |
|
2160 |
checkDates(startTime, endTime);
|
|
|
2161 |
selected(startTime, endTime, 'minDate');
|
2162 |
selected(endTime, startTime, 'maxDate');
|
|
|
2163 |
return $([startTime.get(0), endTime.get(0)]);
|
2164 |
};
|
2165 |
|
@@ -2168,9 +2255,10 @@
|
|
2168 |
* @param {Object} err pass any type object to log to the console during error or debugging
|
2169 |
* @return {void}
|
2170 |
*/
|
2171 |
-
$.timepicker.log = function (
|
2172 |
-
|
2173 |
-
|
|
|
2174 |
}
|
2175 |
};
|
2176 |
|
@@ -2206,4 +2294,4 @@
|
|
2206 |
*/
|
2207 |
$.timepicker.version = "@@version";
|
2208 |
|
2209 |
-
})
|
7 |
* http://trentrichardson.com/Impromptu/MIT-LICENSE.txt
|
8 |
*/
|
9 |
|
10 |
+
(function (factory) {
|
11 |
+
if (typeof define === 'function' && define.amd) {
|
12 |
+
define(['jquery', 'jquery-ui'], factory);
|
13 |
+
} else {
|
14 |
+
factory(jQuery);
|
15 |
+
}
|
16 |
+
}(function ($) {
|
17 |
|
18 |
/*
|
19 |
* Lets not redefine timepicker, Prevent "Uncaught RangeError: Maximum call stack size exceeded"
|
32 |
}
|
33 |
});
|
34 |
|
35 |
+
/*
|
36 |
* Timepicker manager.
|
37 |
* Use the singleton instance of this class, $.timepicker, to interact with the time picker.
|
38 |
* Settings for (groups of) time pickers are maintained in an instance object,
|
113 |
addSliderAccess: false,
|
114 |
sliderAccessArgs: null,
|
115 |
controlType: 'slider',
|
116 |
+
oneLine: false,
|
117 |
defaultValue: null,
|
118 |
+
parse: 'strict',
|
119 |
+
afterInject: null
|
120 |
};
|
121 |
$.extend(this._defaults, this.regional['']);
|
122 |
};
|
159 |
support: {},
|
160 |
control: null,
|
161 |
|
162 |
+
/*
|
163 |
* Override the default settings for all instances of the time picker.
|
164 |
* @param {Object} settings object - the new settings to use as defaults (anonymous object)
|
165 |
* @return {Object} the manager object
|
199 |
},
|
200 |
onChangeMonthYear: function (year, month, dp_inst) {
|
201 |
// Update the time as well : this prevents the time from disappearing from the $input field.
|
202 |
+
// tp_inst._updateDateTime(dp_inst);
|
203 |
if ($.isFunction(tp_inst._defaults.evnts.onChangeMonthYear)) {
|
204 |
tp_inst._defaults.evnts.onChangeMonthYear.call($input[0], year, month, dp_inst, tp_inst);
|
205 |
}
|
215 |
};
|
216 |
for (i in overrides) {
|
217 |
if (overrides.hasOwnProperty(i)) {
|
218 |
+
fns[i] = opts[i] || this._defaults[i] || null;
|
219 |
}
|
220 |
}
|
221 |
|
232 |
|
233 |
// detect which units are supported
|
234 |
tp_inst.support = detectSupport(
|
235 |
+
tp_inst._defaults.timeFormat +
|
236 |
(tp_inst._defaults.pickerTimeFormat ? tp_inst._defaults.pickerTimeFormat : '') +
|
237 |
(tp_inst._defaults.altTimeFormat ? tp_inst._defaults.altTimeFormat : ''));
|
238 |
|
321 |
* add our sliders to the calendar
|
322 |
*/
|
323 |
_addTimePicker: function (dp_inst) {
|
324 |
+
var currDT = $.trim((this.$altInput && this._defaults.altFieldTimeOnly) ? this.$input.val() + ' ' + this.$altInput.val() : this.$input.val());
|
325 |
|
326 |
this.timeDefined = this._parseTime(currDT);
|
327 |
this._limitMinMaxDateTime(dp_inst, false);
|
328 |
this._injectTimePicker();
|
329 |
+
this._afterInject();
|
330 |
},
|
331 |
|
332 |
/*
|
363 |
}
|
364 |
},
|
365 |
|
366 |
+
/*
|
367 |
+
* Handle callback option after injecting timepicker
|
368 |
+
*/
|
369 |
+
_afterInject: function() {
|
370 |
+
var o = this.inst.settings;
|
371 |
+
if ($.isFunction(o.afterInject)) {
|
372 |
+
o.afterInject.call(this);
|
373 |
+
}
|
374 |
+
},
|
375 |
+
|
376 |
/*
|
377 |
* generate and inject html for timepicker into ui datepicker
|
378 |
*/
|
391 |
|
392 |
// Prevent displaying twice
|
393 |
if ($dp.find("div.ui-timepicker-div").length === 0 && o.showTimepicker) {
|
394 |
+
var noDisplay = ' ui_tpicker_unit_hide',
|
395 |
+
html = '<div class="ui-timepicker-div' + (o.isRTL ? ' ui-timepicker-rtl' : '') + (o.oneLine && o.controlType === 'select' ? ' ui-timepicker-oneLine' : '') + '"><dl>' + '<dt class="ui_tpicker_time_label' + ((o.showTime) ? '' : noDisplay) + '">' + o.timeText + '</dt>' +
|
396 |
+
'<dd class="ui_tpicker_time '+ ((o.showTime) ? '' : noDisplay) + '"><input class="ui_tpicker_time_input" ' + (o.timeInput ? '' : 'disabled') + '/></dd>';
|
397 |
|
398 |
// Create the markup
|
399 |
for (i = 0, l = this.units.length; i < l; i++) {
|
407 |
max[litem] = parseInt((o[litem + 'Max'] - ((o[litem + 'Max'] - o[litem + 'Min']) % o['step' + uitem])), 10);
|
408 |
gridSize[litem] = 0;
|
409 |
|
410 |
+
html += '<dt class="ui_tpicker_' + litem + '_label' + (show ? '' : noDisplay) + '">' + o[litem + 'Text'] + '</dt>' +
|
411 |
+
'<dd class="ui_tpicker_' + litem + (show ? '' : noDisplay) + '"><div class="ui_tpicker_' + litem + '_slider' + (show ? '' : noDisplay) + '"></div>';
|
412 |
|
413 |
if (show && o[litem + 'Grid'] > 0) {
|
414 |
html += '<div style="padding-left: 1px"><table class="ui-tpicker-grid-label"><tr>';
|
431 |
}
|
432 |
html += '</dd>';
|
433 |
}
|
434 |
+
|
435 |
// Timezone
|
436 |
var showTz = o.showTimezone !== null ? o.showTimezone : this.support.timezone;
|
437 |
+
html += '<dt class="ui_tpicker_timezone_label' + (showTz ? '' : noDisplay) + '">' + o.timezoneText + '</dt>';
|
438 |
+
html += '<dd class="ui_tpicker_timezone' + (showTz ? '' : noDisplay) + '"></dd>';
|
439 |
|
440 |
// Create the elements from string
|
441 |
html += '</dl></div>';
|
446 |
$tp.prepend('<div class="ui-widget-header ui-helper-clearfix ui-corner-all">' + '<div class="ui-datepicker-title">' + o.timeOnlyTitle + '</div>' + '</div>');
|
447 |
$dp.find('.ui-datepicker-header, .ui-datepicker-calendar').hide();
|
448 |
}
|
449 |
+
|
450 |
// add sliders, adjust grids, add events
|
451 |
for (i = 0, l = tp_inst.units.length; i < l; i++) {
|
452 |
litem = tp_inst.units[i];
|
481 |
}
|
482 |
}
|
483 |
}
|
484 |
+
|
485 |
tp_inst.control.value(tp_inst, tp_inst[f + '_slider'], litem, n);
|
486 |
|
487 |
tp_inst._onTimeChange();
|
518 |
this.timezone_select.change(function () {
|
519 |
tp_inst._onTimeChange();
|
520 |
tp_inst._onSelectHandler();
|
521 |
+
tp_inst._afterInject();
|
522 |
});
|
523 |
// End timezone options
|
524 |
+
|
525 |
// inject timepicker into datepicker
|
526 |
var $buttonPanel = $dp.find('.ui-datepicker-buttonpane');
|
527 |
if ($buttonPanel.length) {
|
530 |
$dp.append($tp);
|
531 |
}
|
532 |
|
533 |
+
this.$timeObj = $tp.find('.ui_tpicker_time_input');
|
534 |
+
this.$timeObj.change(function () {
|
535 |
+
var timeFormat = tp_inst.inst.settings.timeFormat;
|
536 |
+
var parsedTime = $.datepicker.parseTime(timeFormat, this.value);
|
537 |
+
var update = new Date();
|
538 |
+
if (parsedTime) {
|
539 |
+
update.setHours(parsedTime.hour);
|
540 |
+
update.setMinutes(parsedTime.minute);
|
541 |
+
update.setSeconds(parsedTime.second);
|
542 |
+
$.datepicker._setTime(tp_inst.inst, update);
|
543 |
+
} else {
|
544 |
+
this.value = tp_inst.formattedTime;
|
545 |
+
this.blur();
|
546 |
+
}
|
547 |
+
});
|
548 |
|
549 |
if (this.inst !== null) {
|
550 |
var timeDefined = this.timeDefined;
|
557 |
var sliderAccessArgs = this._defaults.sliderAccessArgs,
|
558 |
rtl = this._defaults.isRTL;
|
559 |
sliderAccessArgs.isRTL = rtl;
|
560 |
+
|
561 |
setTimeout(function () { // fix for inline mode
|
562 |
if ($tp.find('.ui-slider-access').length === 0) {
|
563 |
$tp.find('.ui-slider:visible').sliderAccess(sliderAccessArgs);
|
709 |
}
|
710 |
}
|
711 |
|
712 |
+
if (dp_inst.settings.minTime!==null) {
|
713 |
+
var tempMinTime=new Date("01/01/1970 " + dp_inst.settings.minTime);
|
714 |
if (this.hour<tempMinTime.getHours()) {
|
715 |
this.hour=this._defaults.hourMin=tempMinTime.getHours();
|
716 |
+
this.minute=this._defaults.minuteMin=tempMinTime.getMinutes();
|
717 |
} else if (this.hour===tempMinTime.getHours() && this.minute<tempMinTime.getMinutes()) {
|
718 |
this.minute=this._defaults.minuteMin=tempMinTime.getMinutes();
|
719 |
+
} else {
|
720 |
if (this._defaults.hourMin<tempMinTime.getHours()) {
|
721 |
this._defaults.hourMin=tempMinTime.getHours();
|
722 |
+
this._defaults.minuteMin=tempMinTime.getMinutes();
|
723 |
} else if (this._defaults.hourMin===tempMinTime.getHours()===this.hour && this._defaults.minuteMin<tempMinTime.getMinutes()) {
|
724 |
+
this._defaults.minuteMin=tempMinTime.getMinutes();
|
725 |
} else {
|
726 |
this._defaults.minuteMin=0;
|
727 |
}
|
728 |
+
}
|
729 |
}
|
730 |
+
|
731 |
+
if (dp_inst.settings.maxTime!==null) {
|
732 |
var tempMaxTime=new Date("01/01/1970 " + dp_inst.settings.maxTime);
|
733 |
if (this.hour>tempMaxTime.getHours()) {
|
734 |
+
this.hour=this._defaults.hourMax=tempMaxTime.getHours();
|
735 |
+
this.minute=this._defaults.minuteMax=tempMaxTime.getMinutes();
|
736 |
+
} else if (this.hour===tempMaxTime.getHours() && this.minute>tempMaxTime.getMinutes()) {
|
737 |
this.minute=this._defaults.minuteMax=tempMaxTime.getMinutes();
|
|
|
|
|
738 |
} else {
|
739 |
if (this._defaults.hourMax>tempMaxTime.getHours()) {
|
740 |
this._defaults.hourMax=tempMaxTime.getHours();
|
741 |
+
this._defaults.minuteMax=tempMaxTime.getMinutes();
|
742 |
} else if (this._defaults.hourMax===tempMaxTime.getHours()===this.hour && this._defaults.minuteMax>tempMaxTime.getMinutes()) {
|
743 |
+
this._defaults.minuteMax=tempMaxTime.getMinutes();
|
744 |
} else {
|
745 |
this._defaults.minuteMax=59;
|
746 |
}
|
747 |
+
}
|
748 |
}
|
749 |
+
|
750 |
if (adjustSliders !== undefined && adjustSliders === true) {
|
751 |
var hourMax = parseInt((this._defaults.hourMax - ((this._defaults.hourMax - this._defaults.hourMin) % this._defaults.stepHour)), 10),
|
752 |
minMax = parseInt((this._defaults.minuteMax - ((this._defaults.minuteMax - this._defaults.minuteMin) % this._defaults.stepMinute)), 10),
|
840 |
// If the update was done using the sliders, update the input field.
|
841 |
var hasChanged = (
|
842 |
hour !== parseInt(this.hour,10) || // sliders should all be numeric
|
843 |
+
minute !== parseInt(this.minute,10) ||
|
844 |
+
second !== parseInt(this.second,10) ||
|
845 |
+
millisec !== parseInt(this.millisec,10) ||
|
846 |
+
microsec !== parseInt(this.microsec,10) ||
|
847 |
+
(this.ampm.length > 0 && (hour < 12) !== ($.inArray(this.ampm.toUpperCase(), this.amNames) !== -1)) ||
|
848 |
(this.timezone !== null && timezone !== this.timezone.toString()) // could be numeric or "EST" format, so use toString()
|
849 |
);
|
850 |
|
883 |
this.formattedTime = $.datepicker.formatTime(o.timeFormat, this, o);
|
884 |
if (this.$timeObj) {
|
885 |
if (pickerTimeFormat === o.timeFormat) {
|
886 |
+
this.$timeObj.val(this.formattedTime + pickerTimeSuffix);
|
887 |
}
|
888 |
else {
|
889 |
+
this.$timeObj.val($.datepicker.formatTime(pickerTimeFormat, this, o) + pickerTimeSuffix);
|
890 |
+
}
|
891 |
+
if (this.$timeObj[0].setSelectionRange) {
|
892 |
+
var sPos = this.$timeObj[0].selectionStart;
|
893 |
+
var ePos = this.$timeObj[0].selectionEnd;
|
894 |
+
this.$timeObj[0].setSelectionRange(sPos, ePos);
|
895 |
}
|
896 |
}
|
897 |
|
919 |
*/
|
920 |
_updateDateTime: function (dp_inst) {
|
921 |
dp_inst = this.inst || dp_inst;
|
922 |
+
var dtTmp = (dp_inst.currentYear > 0?
|
923 |
+
new Date(dp_inst.currentYear, dp_inst.currentMonth, dp_inst.currentDay) :
|
924 |
new Date(dp_inst.selectedYear, dp_inst.selectedMonth, dp_inst.selectedDay)),
|
925 |
dt = $.datepicker._daylightSavingAdjust(dtTmp),
|
926 |
//dt = $.datepicker._daylightSavingAdjust(new Date(dp_inst.selectedYear, dp_inst.selectedMonth, dp_inst.selectedDay)),
|
930 |
timeAvailable = dt !== null && this.timeDefined;
|
931 |
this.formattedDate = $.datepicker.formatDate(dateFmt, (dt === null ? new Date() : dt), formatCfg);
|
932 |
var formattedDateTime = this.formattedDate;
|
933 |
+
|
934 |
// if a slider was changed but datepicker doesn't have a value yet, set it
|
935 |
if (dp_inst.lastVal === "") {
|
936 |
dp_inst.currentYear = dp_inst.selectedYear;
|
940 |
|
941 |
/*
|
942 |
* remove following lines to force every changes in date picker to change the input value
|
943 |
+
* Bug descriptions: when an input field has a default value, and click on the field to pop up the date picker.
|
944 |
* If the user manually empty the value in the input field, the date picker will never change selected value.
|
945 |
*/
|
946 |
//if (dp_inst.lastVal !== undefined && (dp_inst.lastVal.length > 0 && this.$input.val().length === 0)) {
|
965 |
var altFormattedDateTime = '',
|
966 |
altSeparator = this._defaults.altSeparator !== null ? this._defaults.altSeparator : this._defaults.separator,
|
967 |
altTimeSuffix = this._defaults.altTimeSuffix !== null ? this._defaults.altTimeSuffix : this._defaults.timeSuffix;
|
968 |
+
|
969 |
if (!this._defaults.timeOnly) {
|
970 |
if (this._defaults.altFormat) {
|
971 |
altFormattedDateTime = $.datepicker.formatDate(this._defaults.altFormat, (dt === null ? new Date() : dt), formatCfg);
|
1032 |
stop: function (event, ui) {
|
1033 |
tp_inst._onSelectHandler();
|
1034 |
}
|
1035 |
+
});
|
1036 |
},
|
1037 |
options: function (tp_inst, obj, unit, opts, val) {
|
1038 |
if (tp_inst._defaults.isRTL) {
|
1045 |
}
|
1046 |
return obj.slider(opts);
|
1047 |
}
|
1048 |
+
var min = opts.min,
|
1049 |
max = opts.max;
|
1050 |
opts.min = opts.max = null;
|
1051 |
if (min !== undefined) {
|
1077 |
// select methods
|
1078 |
select: {
|
1079 |
create: function (tp_inst, obj, unit, val, min, max, step) {
|
1080 |
+
var sel = '<select class="ui-timepicker-select ui-state-default ui-corner-all" data-unit="' + unit + '" data-min="' + min + '" data-max="' + max + '" data-step="' + step + '">',
|
1081 |
format = tp_inst._defaults.pickerTimeFormat || tp_inst._defaults.timeFormat;
|
1082 |
|
1083 |
for (var i = min; i <= max; i += step) {
|
1096 |
$(sel).appendTo(obj).change(function (e) {
|
1097 |
tp_inst._onTimeChange();
|
1098 |
tp_inst._onSelectHandler();
|
1099 |
+
tp_inst._afterInject();
|
1100 |
});
|
1101 |
|
1102 |
return obj;
|
1108 |
if (val === undefined) {
|
1109 |
return $t.data(opts);
|
1110 |
}
|
1111 |
+
o[opts] = val;
|
1112 |
}
|
1113 |
else { o = opts; }
|
1114 |
+
return tp_inst.control.create(tp_inst, obj, $t.data('unit'), $t.val(), o.min>=0 ? o.min : $t.data('min'), o.max || $t.data('max'), o.step || $t.data('step'));
|
1115 |
},
|
1116 |
value: function (tp_inst, obj, unit, val) {
|
1117 |
var $t = obj.children('select');
|
1275 |
ampm = '';
|
1276 |
resTime.ampm = '';
|
1277 |
} else {
|
1278 |
+
ampm = $.inArray(treg[order.t].toUpperCase(), $.map(o.amNames, function (x,i) { return x.toUpperCase(); })) !== -1 ? 'AM' : 'PM';
|
1279 |
resTime.ampm = o[ampm === 'AM' ? 'amNames' : 'pmNames'][0];
|
1280 |
}
|
1281 |
}
|
1343 |
}
|
1344 |
catch (err2) {
|
1345 |
$.timepicker.log("Unable to parse \ntimeString: " + s + "\ntimeFormat: " + f);
|
1346 |
+
}
|
1347 |
}
|
1348 |
return false;
|
1349 |
}; // end looseParse
|
1350 |
+
|
1351 |
if (typeof o.parse === "function") {
|
1352 |
return o.parse(timeFormat, timeString, o);
|
1353 |
}
|
1433 |
$.datepicker._base_selectDate = $.datepicker._selectDate;
|
1434 |
$.datepicker._selectDate = function (id, dateStr) {
|
1435 |
var inst = this._getInst($(id)[0]),
|
1436 |
+
tp_inst = this._get(inst, 'timepicker'),
|
1437 |
+
was_inline;
|
1438 |
|
1439 |
if (tp_inst && inst.settings.showTimepicker) {
|
1440 |
tp_inst._limitMinMaxDateTime(inst, true);
|
1441 |
+
was_inline = inst.inline;
|
1442 |
inst.inline = inst.stay_open = true;
|
1443 |
//This way the onSelect handler called from calendarpicker get the full dateTime
|
1444 |
this._base_selectDate(id, dateStr);
|
1445 |
+
inst.inline = was_inline;
|
1446 |
+
inst.stay_open = false;
|
1447 |
this._notifyChange(inst);
|
1448 |
this._updateDatepicker(inst);
|
1449 |
} else {
|
1496 |
.replace(/tT/g, ampm ? 'AaPpMm' : '')
|
1497 |
.replace(/T/g, ampm ? 'AP' : '')
|
1498 |
.replace(/tt/g, ampm ? 'apm' : '')
|
1499 |
+
.replace(/t/g, ampm ? 'ap' : '') +
|
1500 |
+
" " + tp_inst._defaults.separator +
|
1501 |
+
tp_inst._defaults.timeSuffix +
|
1502 |
+
(tz ? tp_inst._defaults.timezoneList.join('') : '') +
|
1503 |
+
(tp_inst._defaults.amNames.join('')) + (tp_inst._defaults.pmNames.join('')) +
|
1504 |
dateChars,
|
1505 |
chr = String.fromCharCode(event.charCode === undefined ? event.keyCode : event.charCode);
|
1506 |
return event.ctrlKey || (chr < ' ' || !dateChars || datetimeChars.indexOf(chr) > -1);
|
1523 |
var altFormat = tp_inst._defaults.altFormat || tp_inst._defaults.dateFormat,
|
1524 |
date = this._getDate(inst),
|
1525 |
formatCfg = $.datepicker._getFormatConfig(inst),
|
1526 |
+
altFormattedDateTime = '',
|
1527 |
+
altSeparator = tp_inst._defaults.altSeparator ? tp_inst._defaults.altSeparator : tp_inst._defaults.separator,
|
1528 |
altTimeSuffix = tp_inst._defaults.altTimeSuffix ? tp_inst._defaults.altTimeSuffix : tp_inst._defaults.timeSuffix,
|
1529 |
altTimeFormat = tp_inst._defaults.altTimeFormat !== null ? tp_inst._defaults.altTimeFormat : tp_inst._defaults.timeFormat;
|
1530 |
+
|
1531 |
altFormattedDateTime += $.datepicker.formatTime(altTimeFormat, tp_inst, tp_inst._defaults) + altTimeSuffix;
|
1532 |
if (!tp_inst._defaults.timeOnly && !tp_inst._defaults.altFieldTimeOnly && date !== null) {
|
1533 |
if (tp_inst._defaults.altFormat) {
|
1541 |
}
|
1542 |
}
|
1543 |
else {
|
1544 |
+
$.datepicker._base_updateAlternate(inst);
|
1545 |
}
|
1546 |
};
|
1547 |
|
1567 |
};
|
1568 |
|
1569 |
/*
|
1570 |
+
* override "Today" button to also grab the time and set it to input field.
|
1571 |
*/
|
1572 |
$.datepicker._base_gotoToday = $.datepicker._gotoToday;
|
1573 |
$.datepicker._gotoToday = function (id) {
|
1574 |
+
var inst = this._getInst($(id)[0]);
|
|
|
1575 |
this._base_gotoToday(id);
|
1576 |
var tp_inst = this._get(inst, 'timepicker');
|
1577 |
+
if (!tp_inst) {
|
1578 |
+
return;
|
1579 |
+
}
|
1580 |
+
|
1581 |
+
var tzoffset = $.timepicker.timezoneOffsetNumber(tp_inst.timezone);
|
1582 |
var now = new Date();
|
1583 |
+
now.setMinutes(now.getMinutes() + now.getTimezoneOffset() + parseInt(tzoffset, 10));
|
1584 |
this._setTime(inst, now);
|
1585 |
+
this._setDate(inst, now);
|
1586 |
+
tp_inst._onSelectHandler();
|
1587 |
};
|
1588 |
|
1589 |
/*
|
1635 |
tp_inst.millisec = date ? date.getMilliseconds() : defaults.millisec;
|
1636 |
tp_inst.microsec = date ? date.getMicroseconds() : defaults.microsec;
|
1637 |
|
1638 |
+
//check if within min/max times..
|
1639 |
tp_inst._limitMinMaxDateTime(inst, true);
|
1640 |
|
1641 |
tp_inst._onTimeChange();
|
1703 |
} else {
|
1704 |
tp_date = date;
|
1705 |
}
|
1706 |
+
|
1707 |
+
// This is important if you are using the timezone option, javascript's Date
|
1708 |
+
// object will only return the timezone offset for the current locale, so we
|
1709 |
// adjust it accordingly. If not using timezone option this won't matter..
|
1710 |
// If a timezone is different in tp, keep the timezone as is
|
1711 |
if (tp_inst && tp_date) {
|
1713 |
if (!tp_inst.support.timezone && tp_inst._defaults.timezone === null) {
|
1714 |
tp_inst.timezone = tp_date.getTimezoneOffset() * -1;
|
1715 |
}
|
1716 |
+
date = $.timepicker.timezoneAdjust(date, $.timepicker.timezoneOffsetString(-date.getTimezoneOffset()), tp_inst.timezone);
|
1717 |
+
tp_date = $.timepicker.timezoneAdjust(tp_date, $.timepicker.timezoneOffsetString(-tp_date.getTimezoneOffset()), tp_inst.timezone);
|
1718 |
}
|
1719 |
|
1720 |
this._updateDatepicker(inst);
|
1741 |
}
|
1742 |
|
1743 |
var date = this._getDate(inst);
|
1744 |
+
|
1745 |
+
var currDT = null;
|
1746 |
+
|
1747 |
+
if (tp_inst.$altInput && tp_inst._defaults.altFieldTimeOnly) {
|
1748 |
+
currDT = tp_inst.$input.val() + ' ' + tp_inst.$altInput.val();
|
1749 |
+
}
|
1750 |
+
else if (tp_inst.$input.get(0).tagName !== 'INPUT' && tp_inst.$altInput) {
|
1751 |
+
/**
|
1752 |
+
* in case the datetimepicker has been applied to a non-input tag for inline UI,
|
1753 |
+
* and the user has not configured the plugin to display only time in altInput,
|
1754 |
+
* pick current date time from the altInput (and hope for the best, for now, until "ER1" is applied)
|
1755 |
+
*
|
1756 |
+
* @todo ER1. Since altInput can have a totally difference format, convert it to standard format by reading input format from "altFormat" and "altTimeFormat" option values
|
1757 |
+
*/
|
1758 |
+
currDT = tp_inst.$altInput.val();
|
1759 |
+
}
|
1760 |
+
else {
|
1761 |
+
currDT = tp_inst.$input.val();
|
1762 |
+
}
|
1763 |
+
|
1764 |
+
if (date && tp_inst._parseTime(currDT, !inst.settings.timeOnly)) {
|
1765 |
date.setHours(tp_inst.hour, tp_inst.minute, tp_inst.second, tp_inst.millisec);
|
1766 |
date.setMicroseconds(tp_inst.microsec);
|
1767 |
|
1768 |
+
// This is important if you are using the timezone option, javascript's Date
|
1769 |
+
// object will only return the timezone offset for the current locale, so we
|
1770 |
// adjust it accordingly. If not using timezone option this won't matter..
|
1771 |
if (tp_inst.timezone != null) {
|
1772 |
// look out for DST if tz wasn't specified
|
1773 |
if (!tp_inst.support.timezone && tp_inst._defaults.timezone === null) {
|
1774 |
tp_inst.timezone = date.getTimezoneOffset() * -1;
|
1775 |
}
|
1776 |
+
date = $.timepicker.timezoneAdjust(date, tp_inst.timezone, $.timepicker.timezoneOffsetString(-date.getTimezoneOffset()));
|
1777 |
}
|
1778 |
}
|
1779 |
return date;
|
1835 |
onselect = null,
|
1836 |
overrides = tp_inst._defaults.evnts,
|
1837 |
fns = {},
|
1838 |
+
prop,
|
1839 |
+
ret,
|
1840 |
+
oldVal,
|
1841 |
+
$target;
|
1842 |
if (typeof name === 'string') { // if min/max was set with the string
|
1843 |
if (name === 'minDate' || name === 'minDateTime') {
|
1844 |
min = value;
|
1896 |
} else if (onselect) {
|
1897 |
tp_inst._defaults.onSelect = onselect;
|
1898 |
}
|
1899 |
+
|
1900 |
+
// Datepicker will override our date when we call _base_optionDatepicker when
|
1901 |
+
// calling minDate/maxDate, so we will first grab the value, call
|
1902 |
+
// _base_optionDatepicker, then set our value back.
|
1903 |
+
if(min || max){
|
1904 |
+
$target = $(target);
|
1905 |
+
oldVal = $target.datetimepicker('getDate');
|
1906 |
+
ret = this._base_optionDatepicker.call($.datepicker, target, name_clone || name, value);
|
1907 |
+
$target.datetimepicker('setDate', oldVal);
|
1908 |
+
return ret;
|
1909 |
+
}
|
1910 |
}
|
1911 |
if (value === undefined) {
|
1912 |
return this._base_optionDatepicker.call($.datepicker, target, name);
|
1913 |
}
|
1914 |
return this._base_optionDatepicker.call($.datepicker, target, name_clone || name, value);
|
1915 |
};
|
1916 |
+
|
1917 |
/*
|
1918 |
* jQuery isEmptyObject does not check hasOwnProperty - if someone has added to the object prototype,
|
1919 |
* it will return false for all objects
|
2071 |
hours = (off - minutes) / 60,
|
2072 |
iso = iso8601 ? ':' : '',
|
2073 |
tz = (off >= 0 ? '+' : '-') + ('0' + Math.abs(hours)).slice(-2) + iso + ('0' + Math.abs(minutes)).slice(-2);
|
2074 |
+
|
2075 |
if (tz === '+00:00') {
|
2076 |
return 'Z';
|
2077 |
}
|
2091 |
}
|
2092 |
|
2093 |
if (!/^(\-|\+)\d{4}$/.test(normalized)) { // possibly a user defined tz, so just give it back
|
2094 |
+
return parseInt(tzString, 10);
|
2095 |
}
|
2096 |
|
2097 |
return ((normalized.substr(0, 1) === '-' ? -1 : 1) * // plus or minus
|
2102 |
/**
|
2103 |
* No way to set timezone in js Date, so we must adjust the minutes to compensate. (think setDate, getDate)
|
2104 |
* @param {Date} date
|
2105 |
+
* @param {string} fromTimezone formatted like "+0500", "-1245"
|
2106 |
* @param {string} toTimezone formatted like "+0500", "-1245"
|
2107 |
* @return {Date}
|
2108 |
*/
|
2109 |
+
$.timepicker.timezoneAdjust = function (date, fromTimezone, toTimezone) {
|
2110 |
+
var fromTz = $.timepicker.timezoneOffsetNumber(fromTimezone);
|
2111 |
var toTz = $.timepicker.timezoneOffsetNumber(toTimezone);
|
2112 |
if (!isNaN(toTz)) {
|
2113 |
+
date.setMinutes(date.getMinutes() + (-fromTz) - (-toTz));
|
2114 |
}
|
2115 |
return date;
|
2116 |
};
|
2217 |
date.setMilliseconds(date.getMilliseconds() - options.minInterval);
|
2218 |
}
|
2219 |
}
|
2220 |
+
|
2221 |
if (date.getTime) {
|
2222 |
other[method].call(other, 'option', option, date);
|
2223 |
}
|
2243 |
}, options, options.end));
|
2244 |
|
2245 |
checkDates(startTime, endTime);
|
2246 |
+
|
2247 |
selected(startTime, endTime, 'minDate');
|
2248 |
selected(endTime, startTime, 'maxDate');
|
2249 |
+
|
2250 |
return $([startTime.get(0), endTime.get(0)]);
|
2251 |
};
|
2252 |
|
2255 |
* @param {Object} err pass any type object to log to the console during error or debugging
|
2256 |
* @return {void}
|
2257 |
*/
|
2258 |
+
$.timepicker.log = function () {
|
2259 |
+
// Older IE (9, maybe 10) throw error on accessing `window.console.log.apply`, so check first.
|
2260 |
+
if (window.console && window.console.log && window.console.log.apply) {
|
2261 |
+
window.console.log.apply(window.console, Array.prototype.slice.call(arguments));
|
2262 |
}
|
2263 |
};
|
2264 |
|
2294 |
*/
|
2295 |
$.timepicker.version = "@@version";
|
2296 |
|
2297 |
+
}));
|
@@ -0,0 +1,2 @@
|
|
|
|
|
1 |
+
!function(a){"function"==typeof define&&define.amd?define(["jquery","jquery-ui"],a):a(jQuery)}(function($){if($.ui.timepicker=$.ui.timepicker||{},!$.ui.timepicker.version){$.extend($.ui,{timepicker:{version:"@@version"}});var Timepicker=function(){this.regional=[],this.regional[""]={currentText:"Now",closeText:"Done",amNames:["AM","A"],pmNames:["PM","P"],timeFormat:"HH:mm",timeSuffix:"",timeOnlyTitle:"Choose Time",timeText:"Time",hourText:"Hour",minuteText:"Minute",secondText:"Second",millisecText:"Millisecond",microsecText:"Microsecond",timezoneText:"Time Zone",isRTL:!1},this._defaults={showButtonPanel:!0,timeOnly:!1,timeOnlyShowDate:!1,showHour:null,showMinute:null,showSecond:null,showMillisec:null,showMicrosec:null,showTimezone:null,showTime:!0,stepHour:1,stepMinute:1,stepSecond:1,stepMillisec:1,stepMicrosec:1,hour:0,minute:0,second:0,millisec:0,microsec:0,timezone:null,hourMin:0,minuteMin:0,secondMin:0,millisecMin:0,microsecMin:0,hourMax:23,minuteMax:59,secondMax:59,millisecMax:999,microsecMax:999,minDateTime:null,maxDateTime:null,maxTime:null,minTime:null,onSelect:null,hourGrid:0,minuteGrid:0,secondGrid:0,millisecGrid:0,microsecGrid:0,alwaysSetTime:!0,separator:" ",altFieldTimeOnly:!0,altTimeFormat:null,altSeparator:null,altTimeSuffix:null,altRedirectFocus:!0,pickerTimeFormat:null,pickerTimeSuffix:null,showTimepicker:!0,timezoneList:null,addSliderAccess:!1,sliderAccessArgs:null,controlType:"slider",oneLine:!1,defaultValue:null,parse:"strict",afterInject:null},$.extend(this._defaults,this.regional[""])};$.extend(Timepicker.prototype,{$input:null,$altInput:null,$timeObj:null,inst:null,hour_slider:null,minute_slider:null,second_slider:null,millisec_slider:null,microsec_slider:null,timezone_select:null,maxTime:null,minTime:null,hour:0,minute:0,second:0,millisec:0,microsec:0,timezone:null,hourMinOriginal:null,minuteMinOriginal:null,secondMinOriginal:null,millisecMinOriginal:null,microsecMinOriginal:null,hourMaxOriginal:null,minuteMaxOriginal:null,secondMaxOriginal:null,millisecMaxOriginal:null,microsecMaxOriginal:null,ampm:"",formattedDate:"",formattedTime:"",formattedDateTime:"",timezoneList:null,units:["hour","minute","second","millisec","microsec"],support:{},control:null,setDefaults:function(a){return extendRemove(this._defaults,a||{}),this},_newInst:function($input,opts){var tp_inst=new Timepicker,inlineSettings={},fns={},overrides,i;for(var attrName in this._defaults)if(this._defaults.hasOwnProperty(attrName)){var attrValue=$input.attr("time:"+attrName);if(attrValue)try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}overrides={beforeShow:function(a,b){return $.isFunction(tp_inst._defaults.evnts.beforeShow)?tp_inst._defaults.evnts.beforeShow.call($input[0],a,b,tp_inst):void 0},onChangeMonthYear:function(a,b,c){$.isFunction(tp_inst._defaults.evnts.onChangeMonthYear)&&tp_inst._defaults.evnts.onChangeMonthYear.call($input[0],a,b,c,tp_inst)},onClose:function(a,b){tp_inst.timeDefined===!0&&""!==$input.val()&&tp_inst._updateDateTime(b),$.isFunction(tp_inst._defaults.evnts.onClose)&&tp_inst._defaults.evnts.onClose.call($input[0],a,b,tp_inst)}};for(i in overrides)overrides.hasOwnProperty(i)&&(fns[i]=opts[i]||this._defaults[i]||null);tp_inst._defaults=$.extend({},this._defaults,inlineSettings,opts,overrides,{evnts:fns,timepicker:tp_inst}),tp_inst.amNames=$.map(tp_inst._defaults.amNames,function(a){return a.toUpperCase()}),tp_inst.pmNames=$.map(tp_inst._defaults.pmNames,function(a){return a.toUpperCase()}),tp_inst.support=detectSupport(tp_inst._defaults.timeFormat+(tp_inst._defaults.pickerTimeFormat?tp_inst._defaults.pickerTimeFormat:"")+(tp_inst._defaults.altTimeFormat?tp_inst._defaults.altTimeFormat:"")),"string"==typeof tp_inst._defaults.controlType?("slider"===tp_inst._defaults.controlType&&"undefined"==typeof $.ui.slider&&(tp_inst._defaults.controlType="select"),tp_inst.control=tp_inst._controls[tp_inst._defaults.controlType]):tp_inst.control=tp_inst._defaults.controlType;var timezoneList=[-720,-660,-600,-570,-540,-480,-420,-360,-300,-270,-240,-210,-180,-120,-60,0,60,120,180,210,240,270,300,330,345,360,390,420,480,525,540,570,600,630,660,690,720,765,780,840];null!==tp_inst._defaults.timezoneList&&(timezoneList=tp_inst._defaults.timezoneList);var tzl=timezoneList.length,tzi=0,tzv=null;if(tzl>0&&"object"!=typeof timezoneList[0])for(;tzl>tzi;tzi++)tzv=timezoneList[tzi],timezoneList[tzi]={value:tzv,label:$.timepicker.timezoneOffsetString(tzv,tp_inst.support.iso8601)};return tp_inst._defaults.timezoneList=timezoneList,tp_inst.timezone=null!==tp_inst._defaults.timezone?$.timepicker.timezoneOffsetNumber(tp_inst._defaults.timezone):-1*(new Date).getTimezoneOffset(),tp_inst.hour=tp_inst._defaults.hour<tp_inst._defaults.hourMin?tp_inst._defaults.hourMin:tp_inst._defaults.hour>tp_inst._defaults.hourMax?tp_inst._defaults.hourMax:tp_inst._defaults.hour,tp_inst.minute=tp_inst._defaults.minute<tp_inst._defaults.minuteMin?tp_inst._defaults.minuteMin:tp_inst._defaults.minute>tp_inst._defaults.minuteMax?tp_inst._defaults.minuteMax:tp_inst._defaults.minute,tp_inst.second=tp_inst._defaults.second<tp_inst._defaults.secondMin?tp_inst._defaults.secondMin:tp_inst._defaults.second>tp_inst._defaults.secondMax?tp_inst._defaults.secondMax:tp_inst._defaults.second,tp_inst.millisec=tp_inst._defaults.millisec<tp_inst._defaults.millisecMin?tp_inst._defaults.millisecMin:tp_inst._defaults.millisec>tp_inst._defaults.millisecMax?tp_inst._defaults.millisecMax:tp_inst._defaults.millisec,tp_inst.microsec=tp_inst._defaults.microsec<tp_inst._defaults.microsecMin?tp_inst._defaults.microsecMin:tp_inst._defaults.microsec>tp_inst._defaults.microsecMax?tp_inst._defaults.microsecMax:tp_inst._defaults.microsec,tp_inst.ampm="",tp_inst.$input=$input,tp_inst._defaults.altField&&(tp_inst.$altInput=$(tp_inst._defaults.altField),tp_inst._defaults.altRedirectFocus===!0&&tp_inst.$altInput.css({cursor:"pointer"}).focus(function(){$input.trigger("focus")})),0!==tp_inst._defaults.minDate&&0!==tp_inst._defaults.minDateTime||(tp_inst._defaults.minDate=new Date),0!==tp_inst._defaults.maxDate&&0!==tp_inst._defaults.maxDateTime||(tp_inst._defaults.maxDate=new Date),void 0!==tp_inst._defaults.minDate&&tp_inst._defaults.minDate instanceof Date&&(tp_inst._defaults.minDateTime=new Date(tp_inst._defaults.minDate.getTime())),void 0!==tp_inst._defaults.minDateTime&&tp_inst._defaults.minDateTime instanceof Date&&(tp_inst._defaults.minDate=new Date(tp_inst._defaults.minDateTime.getTime())),void 0!==tp_inst._defaults.maxDate&&tp_inst._defaults.maxDate instanceof Date&&(tp_inst._defaults.maxDateTime=new Date(tp_inst._defaults.maxDate.getTime())),void 0!==tp_inst._defaults.maxDateTime&&tp_inst._defaults.maxDateTime instanceof Date&&(tp_inst._defaults.maxDate=new Date(tp_inst._defaults.maxDateTime.getTime())),tp_inst.$input.bind("focus",function(){tp_inst._onFocus()}),tp_inst},_addTimePicker:function(a){var b=$.trim(this.$altInput&&this._defaults.altFieldTimeOnly?this.$input.val()+" "+this.$altInput.val():this.$input.val());this.timeDefined=this._parseTime(b),this._limitMinMaxDateTime(a,!1),this._injectTimePicker(),this._afterInject()},_parseTime:function(a,b){if(this.inst||(this.inst=$.datepicker._getInst(this.$input[0])),b||!this._defaults.timeOnly){var c=$.datepicker._get(this.inst,"dateFormat");try{var d=parseDateTimeInternal(c,this._defaults.timeFormat,a,$.datepicker._getFormatConfig(this.inst),this._defaults);if(!d.timeObj)return!1;$.extend(this,d.timeObj)}catch(e){return $.timepicker.log("Error parsing the date/time string: "+e+"\ndate/time string = "+a+"\ntimeFormat = "+this._defaults.timeFormat+"\ndateFormat = "+c),!1}return!0}var f=$.datepicker.parseTime(this._defaults.timeFormat,a,this._defaults);return f?($.extend(this,f),!0):!1},_afterInject:function(){var a=this.inst.settings;$.isFunction(a.afterInject)&&a.afterInject.call(this)},_injectTimePicker:function(){var a=this.inst.dpDiv,b=this.inst.settings,c=this,d="",e="",f=null,g={},h={},i=null,j=0,k=0;if(0===a.find("div.ui-timepicker-div").length&&b.showTimepicker){var l=" ui_tpicker_unit_hide",m='<div class="ui-timepicker-div'+(b.isRTL?" ui-timepicker-rtl":"")+(b.oneLine&&"select"===b.controlType?" ui-timepicker-oneLine":"")+'"><dl><dt class="ui_tpicker_time_label'+(b.showTime?"":l)+'">'+b.timeText+'</dt><dd class="ui_tpicker_time '+(b.showTime?"":l)+'"><input class="ui_tpicker_time_input" '+(b.timeInput?"":"disabled")+"/></dd>";for(j=0,k=this.units.length;k>j;j++){if(d=this.units[j],e=d.substr(0,1).toUpperCase()+d.substr(1),f=null!==b["show"+e]?b["show"+e]:this.support[d],g[d]=parseInt(b[d+"Max"]-(b[d+"Max"]-b[d+"Min"])%b["step"+e],10),h[d]=0,m+='<dt class="ui_tpicker_'+d+"_label"+(f?"":l)+'">'+b[d+"Text"]+'</dt><dd class="ui_tpicker_'+d+(f?"":l)+'"><div class="ui_tpicker_'+d+"_slider"+(f?"":l)+'"></div>',f&&b[d+"Grid"]>0){if(m+='<div style="padding-left: 1px"><table class="ui-tpicker-grid-label"><tr>',"hour"===d)for(var n=b[d+"Min"];n<=g[d];n+=parseInt(b[d+"Grid"],10)){h[d]++;var o=$.datepicker.formatTime(this.support.ampm?"hht":"HH",{hour:n},b);m+='<td data-for="'+d+'">'+o+"</td>"}else for(var p=b[d+"Min"];p<=g[d];p+=parseInt(b[d+"Grid"],10))h[d]++,m+='<td data-for="'+d+'">'+(10>p?"0":"")+p+"</td>";m+="</tr></table></div>"}m+="</dd>"}var q=null!==b.showTimezone?b.showTimezone:this.support.timezone;m+='<dt class="ui_tpicker_timezone_label'+(q?"":l)+'">'+b.timezoneText+"</dt>",m+='<dd class="ui_tpicker_timezone'+(q?"":l)+'"></dd>',m+="</dl></div>";var r=$(m);for(b.timeOnly===!0&&(r.prepend('<div class="ui-widget-header ui-helper-clearfix ui-corner-all"><div class="ui-datepicker-title">'+b.timeOnlyTitle+"</div></div>"),a.find(".ui-datepicker-header, .ui-datepicker-calendar").hide()),j=0,k=c.units.length;k>j;j++)d=c.units[j],e=d.substr(0,1).toUpperCase()+d.substr(1),f=null!==b["show"+e]?b["show"+e]:this.support[d],c[d+"_slider"]=c.control.create(c,r.find(".ui_tpicker_"+d+"_slider"),d,c[d],b[d+"Min"],g[d],b["step"+e]),f&&b[d+"Grid"]>0&&(i=100*h[d]*b[d+"Grid"]/(g[d]-b[d+"Min"]),r.find(".ui_tpicker_"+d+" table").css({width:i+"%",marginLeft:b.isRTL?"0":i/(-2*h[d])+"%",marginRight:b.isRTL?i/(-2*h[d])+"%":"0",borderCollapse:"collapse"}).find("td").click(function(a){var b=$(this),e=b.html(),f=parseInt(e.replace(/[^0-9]/g),10),g=e.replace(/[^apm]/gi),h=b.data("for");"hour"===h&&(-1!==g.indexOf("p")&&12>f?f+=12:-1!==g.indexOf("a")&&12===f&&(f=0)),c.control.value(c,c[h+"_slider"],d,f),c._onTimeChange(),c._onSelectHandler()}).css({cursor:"pointer",width:100/h[d]+"%",textAlign:"center",overflow:"hidden"}));if(this.timezone_select=r.find(".ui_tpicker_timezone").append("<select></select>").find("select"),$.fn.append.apply(this.timezone_select,$.map(b.timezoneList,function(a,b){return $("<option />").val("object"==typeof a?a.value:a).text("object"==typeof a?a.label:a)})),"undefined"!=typeof this.timezone&&null!==this.timezone&&""!==this.timezone){var s=-1*new Date(this.inst.selectedYear,this.inst.selectedMonth,this.inst.selectedDay,12).getTimezoneOffset();s===this.timezone?selectLocalTimezone(c):this.timezone_select.val(this.timezone)}else"undefined"!=typeof this.hour&&null!==this.hour&&""!==this.hour?this.timezone_select.val(b.timezone):selectLocalTimezone(c);this.timezone_select.change(function(){c._onTimeChange(),c._onSelectHandler(),c._afterInject()});var t=a.find(".ui-datepicker-buttonpane");if(t.length?t.before(r):a.append(r),this.$timeObj=r.find(".ui_tpicker_time_input"),this.$timeObj.change(function(){var a=c.inst.settings.timeFormat,b=$.datepicker.parseTime(a,this.value),d=new Date;b?(d.setHours(b.hour),d.setMinutes(b.minute),d.setSeconds(b.second),$.datepicker._setTime(c.inst,d)):(this.value=c.formattedTime,this.blur())}),null!==this.inst){var u=this.timeDefined;this._onTimeChange(),this.timeDefined=u}if(this._defaults.addSliderAccess){var v=this._defaults.sliderAccessArgs,w=this._defaults.isRTL;v.isRTL=w,setTimeout(function(){if(0===r.find(".ui-slider-access").length){r.find(".ui-slider:visible").sliderAccess(v);var a=r.find(".ui-slider-access:eq(0)").outerWidth(!0);a&&r.find("table:visible").each(function(){var b=$(this),c=b.outerWidth(),d=b.css(w?"marginRight":"marginLeft").toString().replace("%",""),e=c-a,f=d*e/c+"%",g={width:e,marginRight:0,marginLeft:0};g[w?"marginRight":"marginLeft"]=f,b.css(g)})}},10)}c._limitMinMaxDateTime(this.inst,!0)}},_limitMinMaxDateTime:function(a,b){var c=this._defaults,d=new Date(a.selectedYear,a.selectedMonth,a.selectedDay);if(this._defaults.showTimepicker){if(null!==$.datepicker._get(a,"minDateTime")&&void 0!==$.datepicker._get(a,"minDateTime")&&d){var e=$.datepicker._get(a,"minDateTime"),f=new Date(e.getFullYear(),e.getMonth(),e.getDate(),0,0,0,0);null!==this.hourMinOriginal&&null!==this.minuteMinOriginal&&null!==this.secondMinOriginal&&null!==this.millisecMinOriginal&&null!==this.microsecMinOriginal||(this.hourMinOriginal=c.hourMin,this.minuteMinOriginal=c.minuteMin,this.secondMinOriginal=c.secondMin,this.millisecMinOriginal=c.millisecMin,this.microsecMinOriginal=c.microsecMin),a.settings.timeOnly||f.getTime()===d.getTime()?(this._defaults.hourMin=e.getHours(),this.hour<=this._defaults.hourMin?(this.hour=this._defaults.hourMin,this._defaults.minuteMin=e.getMinutes(),this.minute<=this._defaults.minuteMin?(this.minute=this._defaults.minuteMin,this._defaults.secondMin=e.getSeconds(),this.second<=this._defaults.secondMin?(this.second=this._defaults.secondMin,this._defaults.millisecMin=e.getMilliseconds(),this.millisec<=this._defaults.millisecMin?(this.millisec=this._defaults.millisecMin,this._defaults.microsecMin=e.getMicroseconds()):(this.microsec<this._defaults.microsecMin&&(this.microsec=this._defaults.microsecMin),this._defaults.microsecMin=this.microsecMinOriginal)):(this._defaults.millisecMin=this.millisecMinOriginal,this._defaults.microsecMin=this.microsecMinOriginal)):(this._defaults.secondMin=this.secondMinOriginal,this._defaults.millisecMin=this.millisecMinOriginal,this._defaults.microsecMin=this.microsecMinOriginal)):(this._defaults.minuteMin=this.minuteMinOriginal,this._defaults.secondMin=this.secondMinOriginal,this._defaults.millisecMin=this.millisecMinOriginal,this._defaults.microsecMin=this.microsecMinOriginal)):(this._defaults.hourMin=this.hourMinOriginal,this._defaults.minuteMin=this.minuteMinOriginal,this._defaults.secondMin=this.secondMinOriginal,this._defaults.millisecMin=this.millisecMinOriginal,this._defaults.microsecMin=this.microsecMinOriginal)}if(null!==$.datepicker._get(a,"maxDateTime")&&void 0!==$.datepicker._get(a,"maxDateTime")&&d){var g=$.datepicker._get(a,"maxDateTime"),h=new Date(g.getFullYear(),g.getMonth(),g.getDate(),0,0,0,0);null!==this.hourMaxOriginal&&null!==this.minuteMaxOriginal&&null!==this.secondMaxOriginal&&null!==this.millisecMaxOriginal||(this.hourMaxOriginal=c.hourMax,this.minuteMaxOriginal=c.minuteMax,this.secondMaxOriginal=c.secondMax,this.millisecMaxOriginal=c.millisecMax,this.microsecMaxOriginal=c.microsecMax),a.settings.timeOnly||h.getTime()===d.getTime()?(this._defaults.hourMax=g.getHours(),this.hour>=this._defaults.hourMax?(this.hour=this._defaults.hourMax,this._defaults.minuteMax=g.getMinutes(),this.minute>=this._defaults.minuteMax?(this.minute=this._defaults.minuteMax,this._defaults.secondMax=g.getSeconds(),this.second>=this._defaults.secondMax?(this.second=this._defaults.secondMax,this._defaults.millisecMax=g.getMilliseconds(),this.millisec>=this._defaults.millisecMax?(this.millisec=this._defaults.millisecMax,this._defaults.microsecMax=g.getMicroseconds()):(this.microsec>this._defaults.microsecMax&&(this.microsec=this._defaults.microsecMax),this._defaults.microsecMax=this.microsecMaxOriginal)):(this._defaults.millisecMax=this.millisecMaxOriginal,this._defaults.microsecMax=this.microsecMaxOriginal)):(this._defaults.secondMax=this.secondMaxOriginal,this._defaults.millisecMax=this.millisecMaxOriginal,this._defaults.microsecMax=this.microsecMaxOriginal)):(this._defaults.minuteMax=this.minuteMaxOriginal,this._defaults.secondMax=this.secondMaxOriginal,this._defaults.millisecMax=this.millisecMaxOriginal,this._defaults.microsecMax=this.microsecMaxOriginal)):(this._defaults.hourMax=this.hourMaxOriginal,this._defaults.minuteMax=this.minuteMaxOriginal,this._defaults.secondMax=this.secondMaxOriginal,this._defaults.millisecMax=this.millisecMaxOriginal,this._defaults.microsecMax=this.microsecMaxOriginal)}if(null!==a.settings.minTime){var i=new Date("01/01/1970 "+a.settings.minTime);this.hour<i.getHours()?(this.hour=this._defaults.hourMin=i.getHours(),this.minute=this._defaults.minuteMin=i.getMinutes()):this.hour===i.getHours()&&this.minute<i.getMinutes()?this.minute=this._defaults.minuteMin=i.getMinutes():this._defaults.hourMin<i.getHours()?(this._defaults.hourMin=i.getHours(),this._defaults.minuteMin=i.getMinutes()):this._defaults.hourMin===i.getHours()===this.hour&&this._defaults.minuteMin<i.getMinutes()?this._defaults.minuteMin=i.getMinutes():this._defaults.minuteMin=0}if(null!==a.settings.maxTime){var j=new Date("01/01/1970 "+a.settings.maxTime);this.hour>j.getHours()?(this.hour=this._defaults.hourMax=j.getHours(),this.minute=this._defaults.minuteMax=j.getMinutes()):this.hour===j.getHours()&&this.minute>j.getMinutes()?this.minute=this._defaults.minuteMax=j.getMinutes():this._defaults.hourMax>j.getHours()?(this._defaults.hourMax=j.getHours(),this._defaults.minuteMax=j.getMinutes()):this._defaults.hourMax===j.getHours()===this.hour&&this._defaults.minuteMax>j.getMinutes()?this._defaults.minuteMax=j.getMinutes():this._defaults.minuteMax=59}if(void 0!==b&&b===!0){var k=parseInt(this._defaults.hourMax-(this._defaults.hourMax-this._defaults.hourMin)%this._defaults.stepHour,10),l=parseInt(this._defaults.minuteMax-(this._defaults.minuteMax-this._defaults.minuteMin)%this._defaults.stepMinute,10),m=parseInt(this._defaults.secondMax-(this._defaults.secondMax-this._defaults.secondMin)%this._defaults.stepSecond,10),n=parseInt(this._defaults.millisecMax-(this._defaults.millisecMax-this._defaults.millisecMin)%this._defaults.stepMillisec,10),o=parseInt(this._defaults.microsecMax-(this._defaults.microsecMax-this._defaults.microsecMin)%this._defaults.stepMicrosec,10);this.hour_slider&&(this.control.options(this,this.hour_slider,"hour",{min:this._defaults.hourMin,max:k,step:this._defaults.stepHour}),this.control.value(this,this.hour_slider,"hour",this.hour-this.hour%this._defaults.stepHour)),this.minute_slider&&(this.control.options(this,this.minute_slider,"minute",{min:this._defaults.minuteMin,max:l,step:this._defaults.stepMinute}),this.control.value(this,this.minute_slider,"minute",this.minute-this.minute%this._defaults.stepMinute)),this.second_slider&&(this.control.options(this,this.second_slider,"second",{min:this._defaults.secondMin,max:m,step:this._defaults.stepSecond}),this.control.value(this,this.second_slider,"second",this.second-this.second%this._defaults.stepSecond)),this.millisec_slider&&(this.control.options(this,this.millisec_slider,"millisec",{min:this._defaults.millisecMin,max:n,step:this._defaults.stepMillisec}),this.control.value(this,this.millisec_slider,"millisec",this.millisec-this.millisec%this._defaults.stepMillisec)),this.microsec_slider&&(this.control.options(this,this.microsec_slider,"microsec",{min:this._defaults.microsecMin,max:o,step:this._defaults.stepMicrosec}),this.control.value(this,this.microsec_slider,"microsec",this.microsec-this.microsec%this._defaults.stepMicrosec))}}},_onTimeChange:function(){if(this._defaults.showTimepicker){var a=this.hour_slider?this.control.value(this,this.hour_slider,"hour"):!1,b=this.minute_slider?this.control.value(this,this.minute_slider,"minute"):!1,c=this.second_slider?this.control.value(this,this.second_slider,"second"):!1,d=this.millisec_slider?this.control.value(this,this.millisec_slider,"millisec"):!1,e=this.microsec_slider?this.control.value(this,this.microsec_slider,"microsec"):!1,f=this.timezone_select?this.timezone_select.val():!1,g=this._defaults,h=g.pickerTimeFormat||g.timeFormat,i=g.pickerTimeSuffix||g.timeSuffix;"object"==typeof a&&(a=!1),"object"==typeof b&&(b=!1),"object"==typeof c&&(c=!1),"object"==typeof d&&(d=!1),"object"==typeof e&&(e=!1),"object"==typeof f&&(f=!1),a!==!1&&(a=parseInt(a,10)),b!==!1&&(b=parseInt(b,10)),c!==!1&&(c=parseInt(c,10)),d!==!1&&(d=parseInt(d,10)),e!==!1&&(e=parseInt(e,10)),f!==!1&&(f=f.toString());var j=g[12>a?"amNames":"pmNames"][0],k=a!==parseInt(this.hour,10)||b!==parseInt(this.minute,10)||c!==parseInt(this.second,10)||d!==parseInt(this.millisec,10)||e!==parseInt(this.microsec,10)||this.ampm.length>0&&12>a!=(-1!==$.inArray(this.ampm.toUpperCase(),this.amNames))||null!==this.timezone&&f!==this.timezone.toString();if(k&&(a!==!1&&(this.hour=a),b!==!1&&(this.minute=b),c!==!1&&(this.second=c),d!==!1&&(this.millisec=d),e!==!1&&(this.microsec=e),f!==!1&&(this.timezone=f),this.inst||(this.inst=$.datepicker._getInst(this.$input[0])),this._limitMinMaxDateTime(this.inst,!0)),this.support.ampm&&(this.ampm=j),this.formattedTime=$.datepicker.formatTime(g.timeFormat,this,g),this.$timeObj&&(h===g.timeFormat?this.$timeObj.val(this.formattedTime+i):this.$timeObj.val($.datepicker.formatTime(h,this,g)+i),this.$timeObj[0].setSelectionRange)){var l=this.$timeObj[0].selectionStart,m=this.$timeObj[0].selectionEnd;this.$timeObj[0].setSelectionRange(l,m)}this.timeDefined=!0,k&&this._updateDateTime()}},_onSelectHandler:function(){var a=this._defaults.onSelect||this.inst.settings.onSelect,b=this.$input?this.$input[0]:null;a&&b&&a.apply(b,[this.formattedDateTime,this])},_updateDateTime:function(a){a=this.inst||a;var b=a.currentYear>0?new Date(a.currentYear,a.currentMonth,a.currentDay):new Date(a.selectedYear,a.selectedMonth,a.selectedDay),c=$.datepicker._daylightSavingAdjust(b),d=$.datepicker._get(a,"dateFormat"),e=$.datepicker._getFormatConfig(a),f=null!==c&&this.timeDefined;this.formattedDate=$.datepicker.formatDate(d,null===c?new Date:c,e);var g=this.formattedDate;if(""===a.lastVal&&(a.currentYear=a.selectedYear,a.currentMonth=a.selectedMonth,a.currentDay=a.selectedDay),this._defaults.timeOnly===!0&&this._defaults.timeOnlyShowDate===!1?g=this.formattedTime:(this._defaults.timeOnly!==!0&&(this._defaults.alwaysSetTime||f)||this._defaults.timeOnly===!0&&this._defaults.timeOnlyShowDate===!0)&&(g+=this._defaults.separator+this.formattedTime+this._defaults.timeSuffix),this.formattedDateTime=g,this._defaults.showTimepicker)if(this.$altInput&&this._defaults.timeOnly===!1&&this._defaults.altFieldTimeOnly===!0)this.$altInput.val(this.formattedTime),this.$input.val(this.formattedDate);else if(this.$altInput){this.$input.val(g);var h="",i=null!==this._defaults.altSeparator?this._defaults.altSeparator:this._defaults.separator,j=null!==this._defaults.altTimeSuffix?this._defaults.altTimeSuffix:this._defaults.timeSuffix;this._defaults.timeOnly||(h=this._defaults.altFormat?$.datepicker.formatDate(this._defaults.altFormat,null===c?new Date:c,e):this.formattedDate,h&&(h+=i)),h+=null!==this._defaults.altTimeFormat?$.datepicker.formatTime(this._defaults.altTimeFormat,this,this._defaults)+j:this.formattedTime+j,this.$altInput.val(h)}else this.$input.val(g);else this.$input.val(this.formattedDate);this.$input.trigger("change")},_onFocus:function(){if(!this.$input.val()&&this._defaults.defaultValue){this.$input.val(this._defaults.defaultValue);var a=$.datepicker._getInst(this.$input.get(0)),b=$.datepicker._get(a,"timepicker");if(b&&b._defaults.timeOnly&&a.input.val()!==a.lastVal)try{$.datepicker._updateDatepicker(a)}catch(c){$.timepicker.log(c)}}},_controls:{slider:{create:function(a,b,c,d,e,f,g){var h=a._defaults.isRTL;return b.prop("slide",null).slider({orientation:"horizontal",value:h?-1*d:d,min:h?-1*f:e,max:h?-1*e:f,step:g,slide:function(b,d){a.control.value(a,$(this),c,h?-1*d.value:d.value),a._onTimeChange()},stop:function(b,c){a._onSelectHandler()}})},options:function(a,b,c,d,e){if(a._defaults.isRTL){if("string"==typeof d)return"min"===d||"max"===d?void 0!==e?b.slider(d,-1*e):Math.abs(b.slider(d)):b.slider(d);var f=d.min,g=d.max;return d.min=d.max=null,void 0!==f&&(d.max=-1*f),void 0!==g&&(d.min=-1*g),b.slider(d)}return"string"==typeof d&&void 0!==e?b.slider(d,e):b.slider(d)},value:function(a,b,c,d){return a._defaults.isRTL?void 0!==d?b.slider("value",-1*d):Math.abs(b.slider("value")):void 0!==d?b.slider("value",d):b.slider("value")}},select:{create:function(a,b,c,d,e,f,g){for(var h='<select class="ui-timepicker-select ui-state-default ui-corner-all" data-unit="'+c+'" data-min="'+e+'" data-max="'+f+'" data-step="'+g+'">',i=a._defaults.pickerTimeFormat||a._defaults.timeFormat,j=e;f>=j;j+=g)h+='<option value="'+j+'"'+(j===d?" selected":"")+">",h+="hour"===c?$.datepicker.formatTime($.trim(i.replace(/[^ht ]/gi,"")),{hour:j},a._defaults):"millisec"===c||"microsec"===c||j>=10?j:"0"+j.toString(),h+="</option>";return h+="</select>",b.children("select").remove(),$(h).appendTo(b).change(function(b){a._onTimeChange(),a._onSelectHandler(),a._afterInject()}),b},options:function(a,b,c,d,e){var f={},g=b.children("select");if("string"==typeof d){if(void 0===e)return g.data(d);f[d]=e}else f=d;return a.control.create(a,b,g.data("unit"),g.val(),f.min>=0?f.min:g.data("min"),f.max||g.data("max"),f.step||g.data("step"))},value:function(a,b,c,d){var e=b.children("select");return void 0!==d?e.val(d):e.val()}}}}),$.fn.extend({timepicker:function(a){a=a||{};var b=Array.prototype.slice.call(arguments);return"object"==typeof a&&(b[0]=$.extend(a,{timeOnly:!0})),$(this).each(function(){$.fn.datetimepicker.apply($(this),b)})},datetimepicker:function(a){a=a||{};var b=arguments;return"string"==typeof a?"getDate"===a||"option"===a&&2===b.length&&"string"==typeof b[1]?$.fn.datepicker.apply($(this[0]),b):this.each(function(){var a=$(this);a.datepicker.apply(a,b)}):this.each(function(){var b=$(this);b.datepicker($.timepicker._newInst(b,a)._defaults)})}}),$.datepicker.parseDateTime=function(a,b,c,d,e){var f=parseDateTimeInternal(a,b,c,d,e);if(f.timeObj){var g=f.timeObj;f.date.setHours(g.hour,g.minute,g.second,g.millisec),f.date.setMicroseconds(g.microsec)}return f.date},$.datepicker.parseTime=function(a,b,c){var d=extendRemove(extendRemove({},$.timepicker._defaults),c||{}),e=(-1!==a.replace(/\'.*?\'/g,"").indexOf("Z"),function(a,b,c){var d,e=function(a,b){var c=[];return a&&$.merge(c,a),b&&$.merge(c,b),c=$.map(c,function(a){return a.replace(/[.*+?|()\[\]{}\\]/g,"\\$&")}),"("+c.join("|")+")?"},f=function(a){var b=a.toLowerCase().match(/(h{1,2}|m{1,2}|s{1,2}|l{1}|c{1}|t{1,2}|z|'.*?')/g),c={h:-1,m:-1,s:-1,l:-1,c:-1,t:-1,z:-1};if(b)for(var d=0;d<b.length;d++)-1===c[b[d].toString().charAt(0)]&&(c[b[d].toString().charAt(0)]=d+1);return c},g="^"+a.toString().replace(/([hH]{1,2}|mm?|ss?|[tT]{1,2}|[zZ]|[lc]|'.*?')/g,function(a){var b=a.length;switch(a.charAt(0).toLowerCase()){case"h":return 1===b?"(\\d?\\d)":"(\\d{"+b+"})";case"m":return 1===b?"(\\d?\\d)":"(\\d{"+b+"})";case"s":return 1===b?"(\\d?\\d)":"(\\d{"+b+"})";case"l":return"(\\d?\\d?\\d)";case"c":return"(\\d?\\d?\\d)";case"z":return"(z|[-+]\\d\\d:?\\d\\d|\\S+)?";case"t":return e(c.amNames,c.pmNames);default:return"("+a.replace(/\'/g,"").replace(/(\.|\$|\^|\\|\/|\(|\)|\[|\]|\?|\+|\*)/g,function(a){return"\\"+a})+")?"}}).replace(/\s/g,"\\s?")+c.timeSuffix+"$",h=f(a),i="";d=b.match(new RegExp(g,"i"));var j={hour:0,minute:0,second:0,millisec:0,microsec:0};return d?(-1!==h.t&&(void 0===d[h.t]||0===d[h.t].length?(i="",j.ampm=""):(i=-1!==$.inArray(d[h.t].toUpperCase(),$.map(c.amNames,function(a,b){return a.toUpperCase()}))?"AM":"PM",j.ampm=c["AM"===i?"amNames":"pmNames"][0])),-1!==h.h&&("AM"===i&&"12"===d[h.h]?j.hour=0:"PM"===i&&"12"!==d[h.h]?j.hour=parseInt(d[h.h],10)+12:j.hour=Number(d[h.h])),-1!==h.m&&(j.minute=Number(d[h.m])),-1!==h.s&&(j.second=Number(d[h.s])),-1!==h.l&&(j.millisec=Number(d[h.l])),-1!==h.c&&(j.microsec=Number(d[h.c])),-1!==h.z&&void 0!==d[h.z]&&(j.timezone=$.timepicker.timezoneOffsetNumber(d[h.z])),j):!1}),f=function(a,b,c){try{var d=new Date("2012-01-01 "+b);if(isNaN(d.getTime())&&(d=new Date("2012-01-01T"+b),isNaN(d.getTime())&&(d=new Date("01/01/2012 "+b),isNaN(d.getTime()))))throw"Unable to parse time with native Date: "+b;return{hour:d.getHours(),minute:d.getMinutes(),second:d.getSeconds(),millisec:d.getMilliseconds(),microsec:d.getMicroseconds(),timezone:-1*d.getTimezoneOffset()}}catch(f){try{return e(a,b,c)}catch(g){$.timepicker.log("Unable to parse \ntimeString: "+b+"\ntimeFormat: "+a)}}return!1};return"function"==typeof d.parse?d.parse(a,b,d):"loose"===d.parse?f(a,b,d):e(a,b,d)},$.datepicker.formatTime=function(a,b,c){c=c||{},c=$.extend({},$.timepicker._defaults,c),b=$.extend({hour:0,minute:0,second:0,millisec:0,microsec:0,timezone:null},b);var d=a,e=c.amNames[0],f=parseInt(b.hour,10);return f>11&&(e=c.pmNames[0]),d=d.replace(/(?:HH?|hh?|mm?|ss?|[tT]{1,2}|[zZ]|[lc]|'.*?')/g,function(a){switch(a){case"HH":return("0"+f).slice(-2);case"H":return f;case"hh":return("0"+convert24to12(f)).slice(-2);case"h":return convert24to12(f);case"mm":return("0"+b.minute).slice(-2);case"m":return b.minute;case"ss":return("0"+b.second).slice(-2);case"s":return b.second;case"l":return("00"+b.millisec).slice(-3);case"c":return("00"+b.microsec).slice(-3);case"z":return $.timepicker.timezoneOffsetString(null===b.timezone?c.timezone:b.timezone,!1);case"Z":return $.timepicker.timezoneOffsetString(null===b.timezone?c.timezone:b.timezone,!0);case"T":return e.charAt(0).toUpperCase();case"TT":return e.toUpperCase();case"t":return e.charAt(0).toLowerCase();case"tt":return e.toLowerCase();default:return a.replace(/'/g,"")}})},$.datepicker._base_selectDate=$.datepicker._selectDate,$.datepicker._selectDate=function(a,b){var c,d=this._getInst($(a)[0]),e=this._get(d,"timepicker");e&&d.settings.showTimepicker?(e._limitMinMaxDateTime(d,!0),c=d.inline,d.inline=d.stay_open=!0,this._base_selectDate(a,b),d.inline=c,d.stay_open=!1,this._notifyChange(d),this._updateDatepicker(d)):this._base_selectDate(a,b)},$.datepicker._base_updateDatepicker=$.datepicker._updateDatepicker,$.datepicker._updateDatepicker=function(a){var b=a.input[0];if(!($.datepicker._curInst&&$.datepicker._curInst!==a&&$.datepicker._datepickerShowing&&$.datepicker._lastInput!==b||"boolean"==typeof a.stay_open&&a.stay_open!==!1)){this._base_updateDatepicker(a);var c=this._get(a,"timepicker");c&&c._addTimePicker(a)}},$.datepicker._base_doKeyPress=$.datepicker._doKeyPress,$.datepicker._doKeyPress=function(a){var b=$.datepicker._getInst(a.target),c=$.datepicker._get(b,"timepicker");if(c&&$.datepicker._get(b,"constrainInput")){var d=c.support.ampm,e=null!==c._defaults.showTimezone?c._defaults.showTimezone:c.support.timezone,f=$.datepicker._possibleChars($.datepicker._get(b,"dateFormat")),g=c._defaults.timeFormat.toString().replace(/[hms]/g,"").replace(/TT/g,d?"APM":"").replace(/Tt/g,d?"AaPpMm":"").replace(/tT/g,d?"AaPpMm":"").replace(/T/g,d?"AP":"").replace(/tt/g,d?"apm":"").replace(/t/g,d?"ap":"")+" "+c._defaults.separator+c._defaults.timeSuffix+(e?c._defaults.timezoneList.join(""):"")+c._defaults.amNames.join("")+c._defaults.pmNames.join("")+f,h=String.fromCharCode(void 0===a.charCode?a.keyCode:a.charCode);return a.ctrlKey||" ">h||!f||g.indexOf(h)>-1}return $.datepicker._base_doKeyPress(a)},$.datepicker._base_updateAlternate=$.datepicker._updateAlternate,$.datepicker._updateAlternate=function(a){var b=this._get(a,"timepicker");if(b){var c=b._defaults.altField;if(c){var d=(b._defaults.altFormat||b._defaults.dateFormat,this._getDate(a)),e=$.datepicker._getFormatConfig(a),f="",g=b._defaults.altSeparator?b._defaults.altSeparator:b._defaults.separator,h=b._defaults.altTimeSuffix?b._defaults.altTimeSuffix:b._defaults.timeSuffix,i=null!==b._defaults.altTimeFormat?b._defaults.altTimeFormat:b._defaults.timeFormat;f+=$.datepicker.formatTime(i,b,b._defaults)+h,b._defaults.timeOnly||b._defaults.altFieldTimeOnly||null===d||(f=b._defaults.altFormat?$.datepicker.formatDate(b._defaults.altFormat,d,e)+g+f:b.formattedDate+g+f),$(c).val(a.input.val()?f:"")}}else $.datepicker._base_updateAlternate(a)},$.datepicker._base_doKeyUp=$.datepicker._doKeyUp,$.datepicker._doKeyUp=function(a){var b=$.datepicker._getInst(a.target),c=$.datepicker._get(b,"timepicker");
|
2 |
+
if(c&&c._defaults.timeOnly&&b.input.val()!==b.lastVal)try{$.datepicker._updateDatepicker(b)}catch(d){$.timepicker.log(d)}return $.datepicker._base_doKeyUp(a)},$.datepicker._base_gotoToday=$.datepicker._gotoToday,$.datepicker._gotoToday=function(a){var b=this._getInst($(a)[0]);this._base_gotoToday(a);var c=this._get(b,"timepicker");if(c){var d=$.timepicker.timezoneOffsetNumber(c.timezone),e=new Date;e.setMinutes(e.getMinutes()+e.getTimezoneOffset()+parseInt(d,10)),this._setTime(b,e),this._setDate(b,e),c._onSelectHandler()}},$.datepicker._disableTimepickerDatepicker=function(a){var b=this._getInst(a);if(b){var c=this._get(b,"timepicker");$(a).datepicker("getDate"),c&&(b.settings.showTimepicker=!1,c._defaults.showTimepicker=!1,c._updateDateTime(b))}},$.datepicker._enableTimepickerDatepicker=function(a){var b=this._getInst(a);if(b){var c=this._get(b,"timepicker");$(a).datepicker("getDate"),c&&(b.settings.showTimepicker=!0,c._defaults.showTimepicker=!0,c._addTimePicker(b),c._updateDateTime(b))}},$.datepicker._setTime=function(a,b){var c=this._get(a,"timepicker");if(c){var d=c._defaults;c.hour=b?b.getHours():d.hour,c.minute=b?b.getMinutes():d.minute,c.second=b?b.getSeconds():d.second,c.millisec=b?b.getMilliseconds():d.millisec,c.microsec=b?b.getMicroseconds():d.microsec,c._limitMinMaxDateTime(a,!0),c._onTimeChange(),c._updateDateTime(a)}},$.datepicker._setTimeDatepicker=function(a,b,c){var d=this._getInst(a);if(d){var e=this._get(d,"timepicker");if(e){this._setDateFromField(d);var f;b&&("string"==typeof b?(e._parseTime(b,c),f=new Date,f.setHours(e.hour,e.minute,e.second,e.millisec),f.setMicroseconds(e.microsec)):(f=new Date(b.getTime()),f.setMicroseconds(b.getMicroseconds())),"Invalid Date"===f.toString()&&(f=void 0),this._setTime(d,f))}}},$.datepicker._base_setDateDatepicker=$.datepicker._setDateDatepicker,$.datepicker._setDateDatepicker=function(a,b){var c=this._getInst(a),d=b;if(c){"string"==typeof b&&(d=new Date(b),d.getTime()||(this._base_setDateDatepicker.apply(this,arguments),d=$(a).datepicker("getDate")));var e,f=this._get(c,"timepicker");d instanceof Date?(e=new Date(d.getTime()),e.setMicroseconds(d.getMicroseconds())):e=d,f&&e&&(f.support.timezone||null!==f._defaults.timezone||(f.timezone=-1*e.getTimezoneOffset()),d=$.timepicker.timezoneAdjust(d,$.timepicker.timezoneOffsetString(-d.getTimezoneOffset()),f.timezone),e=$.timepicker.timezoneAdjust(e,$.timepicker.timezoneOffsetString(-e.getTimezoneOffset()),f.timezone)),this._updateDatepicker(c),this._base_setDateDatepicker.apply(this,arguments),this._setTimeDatepicker(a,e,!0)}},$.datepicker._base_getDateDatepicker=$.datepicker._getDateDatepicker,$.datepicker._getDateDatepicker=function(a,b){var c=this._getInst(a);if(c){var d=this._get(c,"timepicker");if(d){void 0===c.lastVal&&this._setDateFromField(c,b);var e=this._getDate(c),f=null;return f=d.$altInput&&d._defaults.altFieldTimeOnly?d.$input.val()+" "+d.$altInput.val():"INPUT"!==d.$input.get(0).tagName&&d.$altInput?d.$altInput.val():d.$input.val(),e&&d._parseTime(f,!c.settings.timeOnly)&&(e.setHours(d.hour,d.minute,d.second,d.millisec),e.setMicroseconds(d.microsec),null!=d.timezone&&(d.support.timezone||null!==d._defaults.timezone||(d.timezone=-1*e.getTimezoneOffset()),e=$.timepicker.timezoneAdjust(e,d.timezone,$.timepicker.timezoneOffsetString(-e.getTimezoneOffset())))),e}return this._base_getDateDatepicker(a,b)}},$.datepicker._base_parseDate=$.datepicker.parseDate,$.datepicker.parseDate=function(a,b,c){var d;try{d=this._base_parseDate(a,b,c)}catch(e){if(!(e.indexOf(":")>=0))throw e;d=this._base_parseDate(a,b.substring(0,b.length-(e.length-e.indexOf(":")-2)),c),$.timepicker.log("Error parsing the date string: "+e+"\ndate string = "+b+"\ndate format = "+a)}return d},$.datepicker._base_formatDate=$.datepicker._formatDate,$.datepicker._formatDate=function(a,b,c,d){var e=this._get(a,"timepicker");return e?(e._updateDateTime(a),e.$input.val()):this._base_formatDate(a)},$.datepicker._base_optionDatepicker=$.datepicker._optionDatepicker,$.datepicker._optionDatepicker=function(a,b,c){var d,e=this._getInst(a);if(!e)return null;var f=this._get(e,"timepicker");if(f){var g,h,i,j,k=null,l=null,m=null,n=f._defaults.evnts,o={};if("string"==typeof b){if("minDate"===b||"minDateTime"===b)k=c;else if("maxDate"===b||"maxDateTime"===b)l=c;else if("onSelect"===b)m=c;else if(n.hasOwnProperty(b)){if("undefined"==typeof c)return n[b];o[b]=c,d={}}}else if("object"==typeof b){b.minDate?k=b.minDate:b.minDateTime?k=b.minDateTime:b.maxDate?l=b.maxDate:b.maxDateTime&&(l=b.maxDateTime);for(g in n)n.hasOwnProperty(g)&&b[g]&&(o[g]=b[g])}for(g in o)o.hasOwnProperty(g)&&(n[g]=o[g],d||(d=$.extend({},b)),delete d[g]);if(d&&isEmptyObject(d))return;if(k?(k=0===k?new Date:new Date(k),f._defaults.minDate=k,f._defaults.minDateTime=k):l?(l=0===l?new Date:new Date(l),f._defaults.maxDate=l,f._defaults.maxDateTime=l):m&&(f._defaults.onSelect=m),k||l)return j=$(a),i=j.datetimepicker("getDate"),h=this._base_optionDatepicker.call($.datepicker,a,d||b,c),j.datetimepicker("setDate",i),h}return void 0===c?this._base_optionDatepicker.call($.datepicker,a,b):this._base_optionDatepicker.call($.datepicker,a,d||b,c)};var isEmptyObject=function(a){var b;for(b in a)if(a.hasOwnProperty(b))return!1;return!0},extendRemove=function(a,b){$.extend(a,b);for(var c in b)null!==b[c]&&void 0!==b[c]||(a[c]=b[c]);return a},detectSupport=function(a){var b=a.replace(/'.*?'/g,"").toLowerCase(),c=function(a,b){return-1!==a.indexOf(b)};return{hour:c(b,"h"),minute:c(b,"m"),second:c(b,"s"),millisec:c(b,"l"),microsec:c(b,"c"),timezone:c(b,"z"),ampm:c(b,"t")&&c(a,"h"),iso8601:c(a,"Z")}},convert24to12=function(a){return a%=12,0===a&&(a=12),String(a)},computeEffectiveSetting=function(a,b){return a&&a[b]?a[b]:$.timepicker._defaults[b]},splitDateTime=function(a,b){var c=computeEffectiveSetting(b,"separator"),d=computeEffectiveSetting(b,"timeFormat"),e=d.split(c),f=e.length,g=a.split(c),h=g.length;return h>1?{dateString:g.splice(0,h-f).join(c),timeString:g.splice(0,f).join(c)}:{dateString:a,timeString:""}},parseDateTimeInternal=function(a,b,c,d,e){var f,g,h;if(g=splitDateTime(c,e),f=$.datepicker._base_parseDate(a,g.dateString,d),""===g.timeString)return{date:f};if(h=$.datepicker.parseTime(b,g.timeString,e),!h)throw"Wrong time format";return{date:f,timeObj:h}},selectLocalTimezone=function(a,b){if(a&&a.timezone_select){var c=b||new Date;a.timezone_select.val(-c.getTimezoneOffset())}};$.timepicker=new Timepicker,$.timepicker.timezoneOffsetString=function(a,b){if(isNaN(a)||a>840||-720>a)return a;var c=a,d=c%60,e=(c-d)/60,f=b?":":"",g=(c>=0?"+":"-")+("0"+Math.abs(e)).slice(-2)+f+("0"+Math.abs(d)).slice(-2);return"+00:00"===g?"Z":g},$.timepicker.timezoneOffsetNumber=function(a){var b=a.toString().replace(":","");return"Z"===b.toUpperCase()?0:/^(\-|\+)\d{4}$/.test(b)?("-"===b.substr(0,1)?-1:1)*(60*parseInt(b.substr(1,2),10)+parseInt(b.substr(3,2),10)):parseInt(a,10)},$.timepicker.timezoneAdjust=function(a,b,c){var d=$.timepicker.timezoneOffsetNumber(b),e=$.timepicker.timezoneOffsetNumber(c);return isNaN(e)||a.setMinutes(a.getMinutes()+-d- -e),a},$.timepicker.timeRange=function(a,b,c){return $.timepicker.handleRange("timepicker",a,b,c)},$.timepicker.datetimeRange=function(a,b,c){$.timepicker.handleRange("datetimepicker",a,b,c)},$.timepicker.dateRange=function(a,b,c){$.timepicker.handleRange("datepicker",a,b,c)},$.timepicker.handleRange=function(a,b,c,d){function e(e,f){var g=b[a]("getDate"),h=c[a]("getDate"),i=e[a]("getDate");if(null!==g){var j=new Date(g.getTime()),k=new Date(g.getTime());j.setMilliseconds(j.getMilliseconds()+d.minInterval),k.setMilliseconds(k.getMilliseconds()+d.maxInterval),d.minInterval>0&&j>h?c[a]("setDate",j):d.maxInterval>0&&h>k?c[a]("setDate",k):g>h&&f[a]("setDate",i)}}function f(b,c,e){if(b.val()){var f=b[a].call(b,"getDate");null!==f&&d.minInterval>0&&("minDate"===e&&f.setMilliseconds(f.getMilliseconds()+d.minInterval),"maxDate"===e&&f.setMilliseconds(f.getMilliseconds()-d.minInterval)),f.getTime&&c[a].call(c,"option",e,f)}}d=$.extend({},{minInterval:0,maxInterval:0,start:{},end:{}},d);var g=!1;return"timepicker"===a&&(g=!0,a="datetimepicker"),$.fn[a].call(b,$.extend({timeOnly:g,onClose:function(a,b){e($(this),c)},onSelect:function(a){f($(this),c,"minDate")}},d,d.start)),$.fn[a].call(c,$.extend({timeOnly:g,onClose:function(a,c){e($(this),b)},onSelect:function(a){f($(this),b,"maxDate")}},d,d.end)),e(b,c),f(b,c,"minDate"),f(c,b,"maxDate"),$([b.get(0),c.get(0)])},$.timepicker.log=function(){window.console&&window.console.log&&window.console.log.apply&&window.console.log.apply(window.console,Array.prototype.slice.call(arguments))},$.timepicker._util={_extendRemove:extendRemove,_isEmptyObject:isEmptyObject,_convert24to12:convert24to12,_detectSupport:detectSupport,_selectLocalTimezone:selectLocalTimezone,_computeEffectiveSetting:computeEffectiveSetting,_splitDateTime:splitDateTime,_parseDateTimeInternal:parseDateTimeInternal},Date.prototype.getMicroseconds||(Date.prototype.microseconds=0,Date.prototype.getMicroseconds=function(){return this.microseconds},Date.prototype.setMicroseconds=function(a){return this.setMilliseconds(this.getMilliseconds()+Math.floor(a/1e3)),this.microseconds=a%1e3,this}),$.timepicker.version="@@version"}});
|
@@ -1,7 +1,7 @@
|
|
1 |
/* http://keith-wood.name/countdown.html
|
2 |
-
Countdown for jQuery v2.0.
|
3 |
Written by Keith Wood (kbwood{at}iinet.com.au) January 2008.
|
4 |
-
Available under the MIT (
|
5 |
Please attribute the author if you use it. */
|
6 |
|
7 |
(function($) { // Hide scope, no $ conflict
|
@@ -253,6 +253,40 @@
|
|
253 |
periods[3] * 86400 + periods[4] * 3600 + periods[5] * 60 + periods[6];
|
254 |
},
|
255 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
256 |
_instSettings: function(elem, options) {
|
257 |
return {_periods: [0, 0, 0, 0, 0, 0, 0]};
|
258 |
},
|
@@ -375,8 +409,6 @@
|
|
375 |
@param inst {object} The current settings for this instance.
|
376 |
@param recalc {boolean} True if until or since are set. */
|
377 |
_adjustSettings: function(elem, inst, recalc) {
|
378 |
-
var now;
|
379 |
-
var serverOffset = 0;
|
380 |
var serverEntry = null;
|
381 |
for (var i = 0; i < this._serverSyncs.length; i++) {
|
382 |
if (this._serverSyncs[i][0] == inst.options.serverSync) {
|
@@ -385,14 +417,14 @@
|
|
385 |
}
|
386 |
}
|
387 |
if (serverEntry != null) {
|
388 |
-
|
389 |
-
|
390 |
}
|
391 |
else {
|
392 |
var serverResult = ($.isFunction(inst.options.serverSync) ?
|
393 |
inst.options.serverSync.apply(elem[0], []) : null);
|
394 |
-
|
395 |
-
|
396 |
this._serverSyncs.push([inst.options.serverSync, serverOffset]);
|
397 |
}
|
398 |
var timezone = inst.options.timezone;
|
@@ -778,8 +810,8 @@
|
|
778 |
var periods = [0, 0, 0, 0, 0, 0, 0];
|
779 |
if (show[Y] || show[O]) {
|
780 |
// Treat end of months as the same
|
781 |
-
|
782 |
-
|
783 |
var sameDay = (until.getDate() == now.getDate() ||
|
784 |
(until.getDate() >= Math.min(lastNow, lastUntil) &&
|
785 |
now.getDate() >= Math.min(lastNow, lastUntil)));
|
@@ -795,7 +827,7 @@
|
|
795 |
// Adjust for months difference and end of month if necessary
|
796 |
now = new Date(now.getTime());
|
797 |
var wasLastDay = (now.getDate() == lastNow);
|
798 |
-
|
799 |
now.getMonth() + periods[O]);
|
800 |
if (now.getDate() > lastDay) {
|
801 |
now.setDate(lastDay);
|
1 |
/* http://keith-wood.name/countdown.html
|
2 |
+
Countdown for jQuery v2.0.2.
|
3 |
Written by Keith Wood (kbwood{at}iinet.com.au) January 2008.
|
4 |
+
Available under the MIT (http://keith-wood.name/licence.html) license.
|
5 |
Please attribute the author if you use it. */
|
6 |
|
7 |
(function($) { // Hide scope, no $ conflict
|
253 |
periods[3] * 86400 + periods[4] * 3600 + periods[5] * 60 + periods[6];
|
254 |
},
|
255 |
|
256 |
+
/** Resynchronise the countdowns with the server.
|
257 |
+
@example $.countdown.resync() */
|
258 |
+
resync: function() {
|
259 |
+
var self = this;
|
260 |
+
$('.' + this._getMarker()).each(function() { // Each countdown
|
261 |
+
var inst = $.data(this, self.name);
|
262 |
+
if (inst.options.serverSync) { // If synced
|
263 |
+
var serverSync = null;
|
264 |
+
for (var i = 0; i < self._serverSyncs.length; i++) {
|
265 |
+
if (self._serverSyncs[i][0] == inst.options.serverSync) { // Find sync details
|
266 |
+
serverSync = self._serverSyncs[i];
|
267 |
+
break;
|
268 |
+
}
|
269 |
+
}
|
270 |
+
if (serverSync[2] == null) { // Recalculate if missing
|
271 |
+
var serverResult = ($.isFunction(inst.options.serverSync) ?
|
272 |
+
inst.options.serverSync.apply(this, []) : null);
|
273 |
+
serverSync[2] =
|
274 |
+
(serverResult ? new Date().getTime() - serverResult.getTime() : 0) - serverSync[1];
|
275 |
+
}
|
276 |
+
if (inst._since) { // Apply difference
|
277 |
+
inst._since.setMilliseconds(inst._since.getMilliseconds() + serverSync[2]);
|
278 |
+
}
|
279 |
+
inst._until.setMilliseconds(inst._until.getMilliseconds() + serverSync[2]);
|
280 |
+
}
|
281 |
+
});
|
282 |
+
for (var i = 0; i < self._serverSyncs.length; i++) { // Update sync details
|
283 |
+
if (self._serverSyncs[i][2] != null) {
|
284 |
+
self._serverSyncs[i][1] += self._serverSyncs[i][2];
|
285 |
+
delete self._serverSyncs[i][2];
|
286 |
+
}
|
287 |
+
}
|
288 |
+
},
|
289 |
+
|
290 |
_instSettings: function(elem, options) {
|
291 |
return {_periods: [0, 0, 0, 0, 0, 0, 0]};
|
292 |
},
|
409 |
@param inst {object} The current settings for this instance.
|
410 |
@param recalc {boolean} True if until or since are set. */
|
411 |
_adjustSettings: function(elem, inst, recalc) {
|
|
|
|
|
412 |
var serverEntry = null;
|
413 |
for (var i = 0; i < this._serverSyncs.length; i++) {
|
414 |
if (this._serverSyncs[i][0] == inst.options.serverSync) {
|
417 |
}
|
418 |
}
|
419 |
if (serverEntry != null) {
|
420 |
+
var serverOffset = (inst.options.serverSync ? serverEntry : 0);
|
421 |
+
var now = new Date();
|
422 |
}
|
423 |
else {
|
424 |
var serverResult = ($.isFunction(inst.options.serverSync) ?
|
425 |
inst.options.serverSync.apply(elem[0], []) : null);
|
426 |
+
var now = new Date();
|
427 |
+
var serverOffset = (serverResult ? now.getTime() - serverResult.getTime() : 0);
|
428 |
this._serverSyncs.push([inst.options.serverSync, serverOffset]);
|
429 |
}
|
430 |
var timezone = inst.options.timezone;
|
810 |
var periods = [0, 0, 0, 0, 0, 0, 0];
|
811 |
if (show[Y] || show[O]) {
|
812 |
// Treat end of months as the same
|
813 |
+
var lastNow = this._getDaysInMonth(now.getFullYear(), now.getMonth());
|
814 |
+
var lastUntil = this._getDaysInMonth(until.getFullYear(), until.getMonth());
|
815 |
var sameDay = (until.getDate() == now.getDate() ||
|
816 |
(until.getDate() >= Math.min(lastNow, lastUntil) &&
|
817 |
now.getDate() >= Math.min(lastNow, lastUntil)));
|
827 |
// Adjust for months difference and end of month if necessary
|
828 |
now = new Date(now.getTime());
|
829 |
var wasLastDay = (now.getDate() == lastNow);
|
830 |
+
var lastDay = this._getDaysInMonth(now.getFullYear() + periods[Y],
|
831 |
now.getMonth() + periods[O]);
|
832 |
if (now.getDate() > lastDay) {
|
833 |
now.setDate(lastDay);
|
@@ -1,6 +1 @@
|
|
1 |
-
/* http://keith-wood.name/countdown.html
|
2 |
-
Countdown for jQuery v2.0.1.
|
3 |
-
Written by Keith Wood (kbwood{at}iinet.com.au) January 2008.
|
4 |
-
Available under the MIT (https://github.com/jquery/jquery/blob/master/MIT-LICENSE.txt) license.
|
5 |
-
Please attribute the author if you use it. */
|
6 |
-
(function($){var w='countdown';var Y=0;var O=1;var W=2;var D=3;var H=4;var M=5;var S=6;$.JQPlugin.createPlugin({name:w,defaultOptions:{until:null,since:null,timezone:null,serverSync:null,format:'dHMS',layout:'',compact:false,padZeroes:false,significant:0,description:'',expiryUrl:'',expiryText:'',alwaysExpire:false,onExpiry:null,onTick:null,tickInterval:1},regionalOptions:{'':{labels:['Years','Months','Weeks','Days','Hours','Minutes','Seconds'],labels1:['Year','Month','Week','Day','Hour','Minute','Second'],compactLabels:['y','m','w','d'],whichLabels:null,digits:['0','1','2','3','4','5','6','7','8','9'],timeSeparator:':',isRTL:false}},_getters:['getTimes'],_rtlClass:w+'-rtl',_sectionClass:w+'-section',_amountClass:w+'-amount',_periodClass:w+'-period',_rowClass:w+'-row',_holdingClass:w+'-holding',_showClass:w+'-show',_descrClass:w+'-descr',_timerElems:[],_init:function(){var c=this;this._super();this._serverSyncs=[];var d=(typeof Date.now=='function'?Date.now:function(){return new Date().getTime()});var e=(window.performance&&typeof window.performance.now=='function');function timerCallBack(a){var b=(a<1e12?(e?(performance.now()+performance.timing.navigationStart):d()):a||d());if(b-g>=1000){c._updateElems();g=b}f(timerCallBack)}var f=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||null;var g=0;if(!f||$.noRequestAnimationFrame){$.noRequestAnimationFrame=null;setInterval(function(){c._updateElems()},980)}else{g=window.animationStartTime||window.webkitAnimationStartTime||window.mozAnimationStartTime||window.oAnimationStartTime||window.msAnimationStartTime||d();f(timerCallBack)}},UTCDate:function(a,b,c,e,f,g,h,i){if(typeof b=='object'&&b.constructor==Date){i=b.getMilliseconds();h=b.getSeconds();g=b.getMinutes();f=b.getHours();e=b.getDate();c=b.getMonth();b=b.getFullYear()}var d=new Date();d.setUTCFullYear(b);d.setUTCDate(1);d.setUTCMonth(c||0);d.setUTCDate(e||1);d.setUTCHours(f||0);d.setUTCMinutes((g||0)-(Math.abs(a)<30?a*60:a));d.setUTCSeconds(h||0);d.setUTCMilliseconds(i||0);return d},periodsToSeconds:function(a){return a[0]*31557600+a[1]*2629800+a[2]*604800+a[3]*86400+a[4]*3600+a[5]*60+a[6]},_instSettings:function(a,b){return{_periods:[0,0,0,0,0,0,0]}},_addElem:function(a){if(!this._hasElem(a)){this._timerElems.push(a)}},_hasElem:function(a){return($.inArray(a,this._timerElems)>-1)},_removeElem:function(b){this._timerElems=$.map(this._timerElems,function(a){return(a==b?null:a)})},_updateElems:function(){for(var i=this._timerElems.length-1;i>=0;i--){this._updateCountdown(this._timerElems[i])}},_optionsChanged:function(a,b,c){if(c.layout){c.layout=c.layout.replace(/</g,'<').replace(/>/g,'>')}this._resetExtraLabels(b.options,c);var d=(b.options.timezone!=c.timezone);$.extend(b.options,c);this._adjustSettings(a,b,c.until!=null||c.since!=null||d);var e=new Date();if((b._since&&b._since<e)||(b._until&&b._until>e)){this._addElem(a[0])}this._updateCountdown(a,b)},_updateCountdown:function(a,b){a=a.jquery?a:$(a);b=b||this._getInst(a);if(!b){return}a.html(this._generateHTML(b)).toggleClass(this._rtlClass,b.options.isRTL);if($.isFunction(b.options.onTick)){var c=b._hold!='lap'?b._periods:this._calculatePeriods(b,b._show,b.options.significant,new Date());if(b.options.tickInterval==1||this.periodsToSeconds(c)%b.options.tickInterval==0){b.options.onTick.apply(a[0],[c])}}var d=b._hold!='pause'&&(b._since?b._now.getTime()<b._since.getTime():b._now.getTime()>=b._until.getTime());if(d&&!b._expiring){b._expiring=true;if(this._hasElem(a[0])||b.options.alwaysExpire){this._removeElem(a[0]);if($.isFunction(b.options.onExpiry)){b.options.onExpiry.apply(a[0],[])}if(b.options.expiryText){var e=b.options.layout;b.options.layout=b.options.expiryText;this._updateCountdown(a[0],b);b.options.layout=e}if(b.options.expiryUrl){window.location=b.options.expiryUrl}}b._expiring=false}else if(b._hold=='pause'){this._removeElem(a[0])}},_resetExtraLabels:function(a,b){for(var n in b){if(n.match(/[Ll]abels[02-9]|compactLabels1/)){a[n]=b[n]}}for(var n in a){if(n.match(/[Ll]abels[02-9]|compactLabels1/)&&typeof b[n]==='undefined'){a[n]=null}}},_adjustSettings:function(a,b,c){var d;var e=0;var f=null;for(var i=0;i<this._serverSyncs.length;i++){if(this._serverSyncs[i][0]==b.options.serverSync){f=this._serverSyncs[i][1];break}}if(f!=null){e=(b.options.serverSync?f:0);d=new Date()}else{var g=($.isFunction(b.options.serverSync)?b.options.serverSync.apply(a[0],[]):null);d=new Date();e=(g?d.getTime()-g.getTime():0);this._serverSyncs.push([b.options.serverSync,e])}var h=b.options.timezone;h=(h==null?-d.getTimezoneOffset():h);if(c||(!c&&b._until==null&&b._since==null)){b._since=b.options.since;if(b._since!=null){b._since=this.UTCDate(h,this._determineTime(b._since,null));if(b._since&&e){b._since.setMilliseconds(b._since.getMilliseconds()+e)}}b._until=this.UTCDate(h,this._determineTime(b.options.until,d));if(e){b._until.setMilliseconds(b._until.getMilliseconds()+e)}}b._show=this._determineShow(b)},_preDestroy:function(a,b){this._removeElem(a[0]);a.empty()},pause:function(a){this._hold(a,'pause')},lap:function(a){this._hold(a,'lap')},resume:function(a){this._hold(a,null)},toggle:function(a){var b=$.data(a,this.name)||{};this[!b._hold?'pause':'resume'](a)},toggleLap:function(a){var b=$.data(a,this.name)||{};this[!b._hold?'lap':'resume'](a)},_hold:function(a,b){var c=$.data(a,this.name);if(c){if(c._hold=='pause'&&!b){c._periods=c._savePeriods;var d=(c._since?'-':'+');c[c._since?'_since':'_until']=this._determineTime(d+c._periods[0]+'y'+d+c._periods[1]+'o'+d+c._periods[2]+'w'+d+c._periods[3]+'d'+d+c._periods[4]+'h'+d+c._periods[5]+'m'+d+c._periods[6]+'s');this._addElem(a)}c._hold=b;c._savePeriods=(b=='pause'?c._periods:null);$.data(a,this.name,c);this._updateCountdown(a,c)}},getTimes:function(a){var b=$.data(a,this.name);return(!b?null:(b._hold=='pause'?b._savePeriods:(!b._hold?b._periods:this._calculatePeriods(b,b._show,b.options.significant,new Date()))))},_determineTime:function(k,l){var m=this;var n=function(a){var b=new Date();b.setTime(b.getTime()+a*1000);return b};var o=function(a){a=a.toLowerCase();var b=new Date();var c=b.getFullYear();var d=b.getMonth();var e=b.getDate();var f=b.getHours();var g=b.getMinutes();var h=b.getSeconds();var i=/([+-]?[0-9]+)\s*(s|m|h|d|w|o|y)?/g;var j=i.exec(a);while(j){switch(j[2]||'s'){case's':h+=parseInt(j[1],10);break;case'm':g+=parseInt(j[1],10);break;case'h':f+=parseInt(j[1],10);break;case'd':e+=parseInt(j[1],10);break;case'w':e+=parseInt(j[1],10)*7;break;case'o':d+=parseInt(j[1],10);e=Math.min(e,m._getDaysInMonth(c,d));break;case'y':c+=parseInt(j[1],10);e=Math.min(e,m._getDaysInMonth(c,d));break}j=i.exec(a)}return new Date(c,d,e,f,g,h,0)};var p=(k==null?l:(typeof k=='string'?o(k):(typeof k=='number'?n(k):k)));if(p)p.setMilliseconds(0);return p},_getDaysInMonth:function(a,b){return 32-new Date(a,b,32).getDate()},_normalLabels:function(a){return a},_generateHTML:function(c){var d=this;c._periods=(c._hold?c._periods:this._calculatePeriods(c,c._show,c.options.significant,new Date()));var e=false;var f=0;var g=c.options.significant;var h=$.extend({},c._show);for(var i=Y;i<=S;i++){e|=(c._show[i]=='?'&&c._periods[i]>0);h[i]=(c._show[i]=='?'&&!e?null:c._show[i]);f+=(h[i]?1:0);g-=(c._periods[i]>0?1:0)}var j=[false,false,false,false,false,false,false];for(var i=S;i>=Y;i--){if(c._show[i]){if(c._periods[i]){j[i]=true}else{j[i]=g>0;g--}}}var k=(c.options.compact?c.options.compactLabels:c.options.labels);var l=c.options.whichLabels||this._normalLabels;var m=function(a){var b=c.options['compactLabels'+l(c._periods[a])];return(h[a]?d._translateDigits(c,c._periods[a])+(b?b[a]:k[a])+' ':'')};var n=(c.options.padZeroes?2:1);var o=function(a){var b=c.options['labels'+l(c._periods[a])];return((!c.options.significant&&h[a])||(c.options.significant&&j[a])?'<span class="'+d._sectionClass+'">'+'<span class="'+d._amountClass+'">'+d._minDigits(c,c._periods[a],n)+'</span>'+'<span class="'+d._periodClass+'">'+(b?b[a]:k[a])+'</span></span>':'')};return(c.options.layout?this._buildLayout(c,h,c.options.layout,c.options.compact,c.options.significant,j):((c.options.compact?'<span class="'+this._rowClass+' '+this._amountClass+(c._hold?' '+this._holdingClass:'')+'">'+m(Y)+m(O)+m(W)+m(D)+(h[H]?this._minDigits(c,c._periods[H],2):'')+(h[M]?(h[H]?c.options.timeSeparator:'')+this._minDigits(c,c._periods[M],2):'')+(h[S]?(h[H]||h[M]?c.options.timeSeparator:'')+this._minDigits(c,c._periods[S],2):''):'<span class="'+this._rowClass+' '+this._showClass+(c.options.significant||f)+(c._hold?' '+this._holdingClass:'')+'">'+o(Y)+o(O)+o(W)+o(D)+o(H)+o(M)+o(S))+'</span>'+(c.options.description?'<span class="'+this._rowClass+' '+this._descrClass+'">'+c.options.description+'</span>':'')))},_buildLayout:function(c,d,e,f,g,h){var j=c.options[f?'compactLabels':'labels'];var k=c.options.whichLabels||this._normalLabels;var l=function(a){return(c.options[(f?'compactLabels':'labels')+k(c._periods[a])]||j)[a]};var m=function(a,b){return c.options.digits[Math.floor(a/b)%10]};var o={desc:c.options.description,sep:c.options.timeSeparator,yl:l(Y),yn:this._minDigits(c,c._periods[Y],1),ynn:this._minDigits(c,c._periods[Y],2),ynnn:this._minDigits(c,c._periods[Y],3),y1:m(c._periods[Y],1),y10:m(c._periods[Y],10),y100:m(c._periods[Y],100),y1000:m(c._periods[Y],1000),ol:l(O),on:this._minDigits(c,c._periods[O],1),onn:this._minDigits(c,c._periods[O],2),onnn:this._minDigits(c,c._periods[O],3),o1:m(c._periods[O],1),o10:m(c._periods[O],10),o100:m(c._periods[O],100),o1000:m(c._periods[O],1000),wl:l(W),wn:this._minDigits(c,c._periods[W],1),wnn:this._minDigits(c,c._periods[W],2),wnnn:this._minDigits(c,c._periods[W],3),w1:m(c._periods[W],1),w10:m(c._periods[W],10),w100:m(c._periods[W],100),w1000:m(c._periods[W],1000),dl:l(D),dn:this._minDigits(c,c._periods[D],1),dnn:this._minDigits(c,c._periods[D],2),dnnn:this._minDigits(c,c._periods[D],3),d1:m(c._periods[D],1),d10:m(c._periods[D],10),d100:m(c._periods[D],100),d1000:m(c._periods[D],1000),hl:l(H),hn:this._minDigits(c,c._periods[H],1),hnn:this._minDigits(c,c._periods[H],2),hnnn:this._minDigits(c,c._periods[H],3),h1:m(c._periods[H],1),h10:m(c._periods[H],10),h100:m(c._periods[H],100),h1000:m(c._periods[H],1000),ml:l(M),mn:this._minDigits(c,c._periods[M],1),mnn:this._minDigits(c,c._periods[M],2),mnnn:this._minDigits(c,c._periods[M],3),m1:m(c._periods[M],1),m10:m(c._periods[M],10),m100:m(c._periods[M],100),m1000:m(c._periods[M],1000),sl:l(S),sn:this._minDigits(c,c._periods[S],1),snn:this._minDigits(c,c._periods[S],2),snnn:this._minDigits(c,c._periods[S],3),s1:m(c._periods[S],1),s10:m(c._periods[S],10),s100:m(c._periods[S],100),s1000:m(c._periods[S],1000)};var p=e;for(var i=Y;i<=S;i++){var q='yowdhms'.charAt(i);var r=new RegExp('\\{'+q+'<\\}([\\s\\S]*)\\{'+q+'>\\}','g');p=p.replace(r,((!g&&d[i])||(g&&h[i])?'$1':''))}$.each(o,function(n,v){var a=new RegExp('\\{'+n+'\\}','g');p=p.replace(a,v)});return p},_minDigits:function(a,b,c){b=''+b;if(b.length>=c){return this._translateDigits(a,b)}b='0000000000'+b;return this._translateDigits(a,b.substr(b.length-c))},_translateDigits:function(b,c){return(''+c).replace(/[0-9]/g,function(a){return b.options.digits[a]})},_determineShow:function(a){var b=a.options.format;var c=[];c[Y]=(b.match('y')?'?':(b.match('Y')?'!':null));c[O]=(b.match('o')?'?':(b.match('O')?'!':null));c[W]=(b.match('w')?'?':(b.match('W')?'!':null));c[D]=(b.match('d')?'?':(b.match('D')?'!':null));c[H]=(b.match('h')?'?':(b.match('H')?'!':null));c[M]=(b.match('m')?'?':(b.match('M')?'!':null));c[S]=(b.match('s')?'?':(b.match('S')?'!':null));return c},_calculatePeriods:function(c,d,e,f){c._now=f;c._now.setMilliseconds(0);var g=new Date(c._now.getTime());if(c._since){if(f.getTime()<c._since.getTime()){c._now=f=g}else{f=c._since}}else{g.setTime(c._until.getTime());if(f.getTime()>c._until.getTime()){c._now=f=g}}var h=[0,0,0,0,0,0,0];if(d[Y]||d[O]){var i=this._getDaysInMonth(f.getFullYear(),f.getMonth());var j=this._getDaysInMonth(g.getFullYear(),g.getMonth());var k=(g.getDate()==f.getDate()||(g.getDate()>=Math.min(i,j)&&f.getDate()>=Math.min(i,j)));var l=function(a){return(a.getHours()*60+a.getMinutes())*60+a.getSeconds()};var m=Math.max(0,(g.getFullYear()-f.getFullYear())*12+g.getMonth()-f.getMonth()+((g.getDate()<f.getDate()&&!k)||(k&&l(g)<l(f))?-1:0));h[Y]=(d[Y]?Math.floor(m/12):0);h[O]=(d[O]?m-h[Y]*12:0);f=new Date(f.getTime());var n=(f.getDate()==i);var o=this._getDaysInMonth(f.getFullYear()+h[Y],f.getMonth()+h[O]);if(f.getDate()>o){f.setDate(o)}f.setFullYear(f.getFullYear()+h[Y]);f.setMonth(f.getMonth()+h[O]);if(n){f.setDate(o)}}var p=Math.floor((g.getTime()-f.getTime())/1000);var q=function(a,b){h[a]=(d[a]?Math.floor(p/b):0);p-=h[a]*b};q(W,604800);q(D,86400);q(H,3600);q(M,60);q(S,1);if(p>0&&!c._since){var r=[1,12,4.3482,7,24,60,60];var s=S;var t=1;for(var u=S;u>=Y;u--){if(d[u]){if(h[s]>=t){h[s]=0;p=1}if(p>0){h[u]++;p=0;s=u;t=1}}t*=r[u]}}if(e){for(var u=Y;u<=S;u++){if(e&&h[u]){e--}else if(!e){h[u]=0}}}return h}})})(jQuery);
|
1 |
+
!function(a){var b="countdown",c=0,d=1,e=2,f=3,g=4,h=5,i=6;a.JQPlugin.createPlugin({name:b,defaultOptions:{until:null,since:null,timezone:null,serverSync:null,format:"dHMS",layout:"",compact:!1,padZeroes:!1,significant:0,description:"",expiryUrl:"",expiryText:"",alwaysExpire:!1,onExpiry:null,onTick:null,tickInterval:1},regionalOptions:{"":{labels:["Years","Months","Weeks","Days","Hours","Minutes","Seconds"],labels1:["Year","Month","Week","Day","Hour","Minute","Second"],compactLabels:["y","m","w","d"],whichLabels:null,digits:["0","1","2","3","4","5","6","7","8","9"],timeSeparator:":",isRTL:!1}},_getters:["getTimes"],_rtlClass:b+"-rtl",_sectionClass:b+"-section",_amountClass:b+"-amount",_periodClass:b+"-period",_rowClass:b+"-row",_holdingClass:b+"-holding",_showClass:b+"-show",_descrClass:b+"-descr",_timerElems:[],_init:function(){function b(a){var h=1e12>a?e?performance.now()+performance.timing.navigationStart:d():a||d();h-g>=1e3&&(c._updateElems(),g=h),f(b)}var c=this;this._super(),this._serverSyncs=[];var d="function"==typeof Date.now?Date.now:function(){return(new Date).getTime()},e=window.performance&&"function"==typeof window.performance.now,f=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||null,g=0;!f||a.noRequestAnimationFrame?(a.noRequestAnimationFrame=null,setInterval(function(){c._updateElems()},980)):(g=window.animationStartTime||window.webkitAnimationStartTime||window.mozAnimationStartTime||window.oAnimationStartTime||window.msAnimationStartTime||d(),f(b))},UTCDate:function(a,b,c,d,e,f,g,h){"object"==typeof b&&b.constructor==Date&&(h=b.getMilliseconds(),g=b.getSeconds(),f=b.getMinutes(),e=b.getHours(),d=b.getDate(),c=b.getMonth(),b=b.getFullYear());var i=new Date;return i.setUTCFullYear(b),i.setUTCDate(1),i.setUTCMonth(c||0),i.setUTCDate(d||1),i.setUTCHours(e||0),i.setUTCMinutes((f||0)-(Math.abs(a)<30?60*a:a)),i.setUTCSeconds(g||0),i.setUTCMilliseconds(h||0),i},periodsToSeconds:function(a){return 31557600*a[0]+2629800*a[1]+604800*a[2]+86400*a[3]+3600*a[4]+60*a[5]+a[6]},resync:function(){var b=this;a("."+this._getMarker()).each(function(){var c=a.data(this,b.name);if(c.options.serverSync){for(var d=null,e=0;e<b._serverSyncs.length;e++)if(b._serverSyncs[e][0]==c.options.serverSync){d=b._serverSyncs[e];break}if(null==d[2]){var f=a.isFunction(c.options.serverSync)?c.options.serverSync.apply(this,[]):null;d[2]=(f?(new Date).getTime()-f.getTime():0)-d[1]}c._since&&c._since.setMilliseconds(c._since.getMilliseconds()+d[2]),c._until.setMilliseconds(c._until.getMilliseconds()+d[2])}});for(var c=0;c<b._serverSyncs.length;c++)null!=b._serverSyncs[c][2]&&(b._serverSyncs[c][1]+=b._serverSyncs[c][2],delete b._serverSyncs[c][2])},_instSettings:function(a,b){return{_periods:[0,0,0,0,0,0,0]}},_addElem:function(a){this._hasElem(a)||this._timerElems.push(a)},_hasElem:function(b){return a.inArray(b,this._timerElems)>-1},_removeElem:function(b){this._timerElems=a.map(this._timerElems,function(a){return a==b?null:a})},_updateElems:function(){for(var a=this._timerElems.length-1;a>=0;a--)this._updateCountdown(this._timerElems[a])},_optionsChanged:function(b,c,d){d.layout&&(d.layout=d.layout.replace(/</g,"<").replace(/>/g,">")),this._resetExtraLabels(c.options,d);var e=c.options.timezone!=d.timezone;a.extend(c.options,d),this._adjustSettings(b,c,null!=d.until||null!=d.since||e);var f=new Date;(c._since&&c._since<f||c._until&&c._until>f)&&this._addElem(b[0]),this._updateCountdown(b,c)},_updateCountdown:function(b,c){if(b=b.jquery?b:a(b),c=c||this._getInst(b)){if(b.html(this._generateHTML(c)).toggleClass(this._rtlClass,c.options.isRTL),a.isFunction(c.options.onTick)){var d="lap"!=c._hold?c._periods:this._calculatePeriods(c,c._show,c.options.significant,new Date);1!=c.options.tickInterval&&this.periodsToSeconds(d)%c.options.tickInterval!=0||c.options.onTick.apply(b[0],[d])}var e="pause"!=c._hold&&(c._since?c._now.getTime()<c._since.getTime():c._now.getTime()>=c._until.getTime());if(e&&!c._expiring){if(c._expiring=!0,this._hasElem(b[0])||c.options.alwaysExpire){if(this._removeElem(b[0]),a.isFunction(c.options.onExpiry)&&c.options.onExpiry.apply(b[0],[]),c.options.expiryText){var f=c.options.layout;c.options.layout=c.options.expiryText,this._updateCountdown(b[0],c),c.options.layout=f}c.options.expiryUrl&&(window.location=c.options.expiryUrl)}c._expiring=!1}else"pause"==c._hold&&this._removeElem(b[0])}},_resetExtraLabels:function(a,b){for(var c in b)c.match(/[Ll]abels[02-9]|compactLabels1/)&&(a[c]=b[c]);for(var c in a)c.match(/[Ll]abels[02-9]|compactLabels1/)&&"undefined"==typeof b[c]&&(a[c]=null)},_adjustSettings:function(b,c,d){for(var e=null,f=0;f<this._serverSyncs.length;f++)if(this._serverSyncs[f][0]==c.options.serverSync){e=this._serverSyncs[f][1];break}if(null!=e)var g=c.options.serverSync?e:0,h=new Date;else{var i=a.isFunction(c.options.serverSync)?c.options.serverSync.apply(b[0],[]):null,h=new Date,g=i?h.getTime()-i.getTime():0;this._serverSyncs.push([c.options.serverSync,g])}var j=c.options.timezone;j=null==j?-h.getTimezoneOffset():j,(d||!d&&null==c._until&&null==c._since)&&(c._since=c.options.since,null!=c._since&&(c._since=this.UTCDate(j,this._determineTime(c._since,null)),c._since&&g&&c._since.setMilliseconds(c._since.getMilliseconds()+g)),c._until=this.UTCDate(j,this._determineTime(c.options.until,h)),g&&c._until.setMilliseconds(c._until.getMilliseconds()+g)),c._show=this._determineShow(c)},_preDestroy:function(a,b){this._removeElem(a[0]),a.empty()},pause:function(a){this._hold(a,"pause")},lap:function(a){this._hold(a,"lap")},resume:function(a){this._hold(a,null)},toggle:function(b){var c=a.data(b,this.name)||{};this[c._hold?"resume":"pause"](b)},toggleLap:function(b){var c=a.data(b,this.name)||{};this[c._hold?"resume":"lap"](b)},_hold:function(b,c){var d=a.data(b,this.name);if(d){if("pause"==d._hold&&!c){d._periods=d._savePeriods;var e=d._since?"-":"+";d[d._since?"_since":"_until"]=this._determineTime(e+d._periods[0]+"y"+e+d._periods[1]+"o"+e+d._periods[2]+"w"+e+d._periods[3]+"d"+e+d._periods[4]+"h"+e+d._periods[5]+"m"+e+d._periods[6]+"s"),this._addElem(b)}d._hold=c,d._savePeriods="pause"==c?d._periods:null,a.data(b,this.name,d),this._updateCountdown(b,d)}},getTimes:function(b){var c=a.data(b,this.name);return c?"pause"==c._hold?c._savePeriods:c._hold?this._calculatePeriods(c,c._show,c.options.significant,new Date):c._periods:null},_determineTime:function(a,b){var c=this,d=function(a){var b=new Date;return b.setTime(b.getTime()+1e3*a),b},e=function(a){a=a.toLowerCase();for(var b=new Date,d=b.getFullYear(),e=b.getMonth(),f=b.getDate(),g=b.getHours(),h=b.getMinutes(),i=b.getSeconds(),j=/([+-]?[0-9]+)\s*(s|m|h|d|w|o|y)?/g,k=j.exec(a);k;){switch(k[2]||"s"){case"s":i+=parseInt(k[1],10);break;case"m":h+=parseInt(k[1],10);break;case"h":g+=parseInt(k[1],10);break;case"d":f+=parseInt(k[1],10);break;case"w":f+=7*parseInt(k[1],10);break;case"o":e+=parseInt(k[1],10),f=Math.min(f,c._getDaysInMonth(d,e));break;case"y":d+=parseInt(k[1],10),f=Math.min(f,c._getDaysInMonth(d,e))}k=j.exec(a)}return new Date(d,e,f,g,h,i,0)},f=null==a?b:"string"==typeof a?e(a):"number"==typeof a?d(a):a;return f&&f.setMilliseconds(0),f},_getDaysInMonth:function(a,b){return 32-new Date(a,b,32).getDate()},_normalLabels:function(a){return a},_generateHTML:function(b){var j=this;b._periods=b._hold?b._periods:this._calculatePeriods(b,b._show,b.options.significant,new Date);for(var k=!1,l=0,m=b.options.significant,n=a.extend({},b._show),o=c;i>=o;o++)k|="?"==b._show[o]&&b._periods[o]>0,n[o]="?"!=b._show[o]||k?b._show[o]:null,l+=n[o]?1:0,m-=b._periods[o]>0?1:0;for(var p=[!1,!1,!1,!1,!1,!1,!1],o=i;o>=c;o--)b._show[o]&&(b._periods[o]?p[o]=!0:(p[o]=m>0,m--));var q=b.options.compact?b.options.compactLabels:b.options.labels,r=b.options.whichLabels||this._normalLabels,s=function(a){var c=b.options["compactLabels"+r(b._periods[a])];return n[a]?j._translateDigits(b,b._periods[a])+(c?c[a]:q[a])+" ":""},t=b.options.padZeroes?2:1,u=function(a){var c=b.options["labels"+r(b._periods[a])];return!b.options.significant&&n[a]||b.options.significant&&p[a]?'<span class="'+j._sectionClass+'"><span class="'+j._amountClass+'">'+j._minDigits(b,b._periods[a],t)+'</span><span class="'+j._periodClass+'">'+(c?c[a]:q[a])+"</span></span>":""};return b.options.layout?this._buildLayout(b,n,b.options.layout,b.options.compact,b.options.significant,p):(b.options.compact?'<span class="'+this._rowClass+" "+this._amountClass+(b._hold?" "+this._holdingClass:"")+'">'+s(c)+s(d)+s(e)+s(f)+(n[g]?this._minDigits(b,b._periods[g],2):"")+(n[h]?(n[g]?b.options.timeSeparator:"")+this._minDigits(b,b._periods[h],2):"")+(n[i]?(n[g]||n[h]?b.options.timeSeparator:"")+this._minDigits(b,b._periods[i],2):""):'<span class="'+this._rowClass+" "+this._showClass+(b.options.significant||l)+(b._hold?" "+this._holdingClass:"")+'">'+u(c)+u(d)+u(e)+u(f)+u(g)+u(h)+u(i))+"</span>"+(b.options.description?'<span class="'+this._rowClass+" "+this._descrClass+'">'+b.options.description+"</span>":"")},_buildLayout:function(b,j,k,l,m,n){for(var o=b.options[l?"compactLabels":"labels"],p=b.options.whichLabels||this._normalLabels,q=function(a){return(b.options[(l?"compactLabels":"labels")+p(b._periods[a])]||o)[a]},r=function(a,c){return b.options.digits[Math.floor(a/c)%10]},s={desc:b.options.description,sep:b.options.timeSeparator,yl:q(c),yn:this._minDigits(b,b._periods[c],1),ynn:this._minDigits(b,b._periods[c],2),ynnn:this._minDigits(b,b._periods[c],3),y1:r(b._periods[c],1),y10:r(b._periods[c],10),y100:r(b._periods[c],100),y1000:r(b._periods[c],1e3),ol:q(d),on:this._minDigits(b,b._periods[d],1),onn:this._minDigits(b,b._periods[d],2),onnn:this._minDigits(b,b._periods[d],3),o1:r(b._periods[d],1),o10:r(b._periods[d],10),o100:r(b._periods[d],100),o1000:r(b._periods[d],1e3),wl:q(e),wn:this._minDigits(b,b._periods[e],1),wnn:this._minDigits(b,b._periods[e],2),wnnn:this._minDigits(b,b._periods[e],3),w1:r(b._periods[e],1),w10:r(b._periods[e],10),w100:r(b._periods[e],100),w1000:r(b._periods[e],1e3),dl:q(f),dn:this._minDigits(b,b._periods[f],1),dnn:this._minDigits(b,b._periods[f],2),dnnn:this._minDigits(b,b._periods[f],3),d1:r(b._periods[f],1),d10:r(b._periods[f],10),d100:r(b._periods[f],100),d1000:r(b._periods[f],1e3),hl:q(g),hn:this._minDigits(b,b._periods[g],1),hnn:this._minDigits(b,b._periods[g],2),hnnn:this._minDigits(b,b._periods[g],3),h1:r(b._periods[g],1),h10:r(b._periods[g],10),h100:r(b._periods[g],100),h1000:r(b._periods[g],1e3),ml:q(h),mn:this._minDigits(b,b._periods[h],1),mnn:this._minDigits(b,b._periods[h],2),mnnn:this._minDigits(b,b._periods[h],3),m1:r(b._periods[h],1),m10:r(b._periods[h],10),m100:r(b._periods[h],100),m1000:r(b._periods[h],1e3),sl:q(i),sn:this._minDigits(b,b._periods[i],1),snn:this._minDigits(b,b._periods[i],2),snnn:this._minDigits(b,b._periods[i],3),s1:r(b._periods[i],1),s10:r(b._periods[i],10),s100:r(b._periods[i],100),s1000:r(b._periods[i],1e3)},t=k,u=c;i>=u;u++){var v="yowdhms".charAt(u),w=new RegExp("\\{"+v+"<\\}([\\s\\S]*)\\{"+v+">\\}","g");t=t.replace(w,!m&&j[u]||m&&n[u]?"$1":"")}return a.each(s,function(a,b){var c=new RegExp("\\{"+a+"\\}","g");t=t.replace(c,b)}),t},_minDigits:function(a,b,c){return b=""+b,b.length>=c?this._translateDigits(a,b):(b="0000000000"+b,this._translateDigits(a,b.substr(b.length-c)))},_translateDigits:function(a,b){return(""+b).replace(/[0-9]/g,function(b){return a.options.digits[b]})},_determineShow:function(a){var b=a.options.format,j=[];return j[c]=b.match("y")?"?":b.match("Y")?"!":null,j[d]=b.match("o")?"?":b.match("O")?"!":null,j[e]=b.match("w")?"?":b.match("W")?"!":null,j[f]=b.match("d")?"?":b.match("D")?"!":null,j[g]=b.match("h")?"?":b.match("H")?"!":null,j[h]=b.match("m")?"?":b.match("M")?"!":null,j[i]=b.match("s")?"?":b.match("S")?"!":null,j},_calculatePeriods:function(a,b,j,k){a._now=k,a._now.setMilliseconds(0);var l=new Date(a._now.getTime());a._since?k.getTime()<a._since.getTime()?a._now=k=l:k=a._since:(l.setTime(a._until.getTime()),k.getTime()>a._until.getTime()&&(a._now=k=l));var m=[0,0,0,0,0,0,0];if(b[c]||b[d]){var n=this._getDaysInMonth(k.getFullYear(),k.getMonth()),o=this._getDaysInMonth(l.getFullYear(),l.getMonth()),p=l.getDate()==k.getDate()||l.getDate()>=Math.min(n,o)&&k.getDate()>=Math.min(n,o),q=function(a){return 60*(60*a.getHours()+a.getMinutes())+a.getSeconds()},r=Math.max(0,12*(l.getFullYear()-k.getFullYear())+l.getMonth()-k.getMonth()+(l.getDate()<k.getDate()&&!p||p&&q(l)<q(k)?-1:0));m[c]=b[c]?Math.floor(r/12):0,m[d]=b[d]?r-12*m[c]:0,k=new Date(k.getTime());var s=k.getDate()==n,t=this._getDaysInMonth(k.getFullYear()+m[c],k.getMonth()+m[d]);k.getDate()>t&&k.setDate(t),k.setFullYear(k.getFullYear()+m[c]),k.setMonth(k.getMonth()+m[d]),s&&k.setDate(t)}var u=Math.floor((l.getTime()-k.getTime())/1e3),v=function(a,c){m[a]=b[a]?Math.floor(u/c):0,u-=m[a]*c};if(v(e,604800),v(f,86400),v(g,3600),v(h,60),v(i,1),u>0&&!a._since)for(var w=[1,12,4.3482,7,24,60,60],x=i,y=1,z=i;z>=c;z--)b[z]&&(m[x]>=y&&(m[x]=0,u=1),u>0&&(m[z]++,u=0,x=z,y=1)),y*=w[z];if(j)for(var z=c;i>=z;z++)j&&m[z]?j--:j||(m[z]=0);return m}})}(jQuery);
|
|
|
|
|
|
|
|
|
|
@@ -74,7 +74,7 @@
|
|
74 |
|
75 |
/** Abstract base class for collection plugins v1.0.1.
|
76 |
Written by Keith Wood (kbwood{at}iinet.com.au) December 2013.
|
77 |
-
Licensed under the MIT (
|
78 |
@module $.JQPlugin
|
79 |
@abstract */
|
80 |
JQClass.classes.JQPlugin = JQClass.extend({
|
74 |
|
75 |
/** Abstract base class for collection plugins v1.0.1.
|
76 |
Written by Keith Wood (kbwood{at}iinet.com.au) December 2013.
|
77 |
+
Licensed under the MIT (http://keith-wood.name/licence.html) license.
|
78 |
@module $.JQPlugin
|
79 |
@abstract */
|
80 |
JQClass.classes.JQPlugin = JQClass.extend({
|
@@ -1,4 +1 @@
|
|
1 |
-
|
2 |
-
Written by Keith Wood (kbwood{at}iinet.com.au) December 2013.
|
3 |
-
Licensed under the MIT (https://github.com/jquery/jquery/blob/master/MIT-LICENSE.txt) license. */
|
4 |
-
(function(){var j=false;window.JQClass=function(){};JQClass.classes={};JQClass.extend=function extender(f){var g=this.prototype;j=true;var h=new this();j=false;for(var i in f){h[i]=typeof f[i]=='function'&&typeof g[i]=='function'?(function(d,e){return function(){var b=this._super;this._super=function(a){return g[d].apply(this,a||[])};var c=e.apply(this,arguments);this._super=b;return c}})(i,f[i]):f[i]}function JQClass(){if(!j&&this._init){this._init.apply(this,arguments)}}JQClass.prototype=h;JQClass.prototype.constructor=JQClass;JQClass.extend=extender;return JQClass}})();(function($){JQClass.classes.JQPlugin=JQClass.extend({name:'plugin',defaultOptions:{},regionalOptions:{},_getters:[],_getMarker:function(){return'is-'+this.name},_init:function(){$.extend(this.defaultOptions,(this.regionalOptions&&this.regionalOptions[''])||{});var c=camelCase(this.name);$[c]=this;$.fn[c]=function(a){var b=Array.prototype.slice.call(arguments,1);if($[c]._isNotChained(a,b)){return $[c][a].apply($[c],[this[0]].concat(b))}return this.each(function(){if(typeof a==='string'){if(a[0]==='_'||!$[c][a]){throw'Unknown method: '+a;}$[c][a].apply($[c],[this].concat(b))}else{$[c]._attach(this,a)}})}},setDefaults:function(a){$.extend(this.defaultOptions,a||{})},_isNotChained:function(a,b){if(a==='option'&&(b.length===0||(b.length===1&&typeof b[0]==='string'))){return true}return $.inArray(a,this._getters)>-1},_attach:function(a,b){a=$(a);if(a.hasClass(this._getMarker())){return}a.addClass(this._getMarker());b=$.extend({},this.defaultOptions,this._getMetadata(a),b||{});var c=$.extend({name:this.name,elem:a,options:b},this._instSettings(a,b));a.data(this.name,c);this._postAttach(a,c);this.option(a,b)},_instSettings:function(a,b){return{}},_postAttach:function(a,b){},_getMetadata:function(d){try{var f=d.data(this.name.toLowerCase())||'';f=f.replace(/'/g,'"');f=f.replace(/([a-zA-Z0-9]+):/g,function(a,b,i){var c=f.substring(0,i).match(/"/g);return(!c||c.length%2===0?'"'+b+'":':b+':')});f=$.parseJSON('{'+f+'}');for(var g in f){var h=f[g];if(typeof h==='string'&&h.match(/^new Date\((.*)\)$/)){f[g]=eval(h)}}return f}catch(e){return{}}},_getInst:function(a){return $(a).data(this.name)||{}},option:function(a,b,c){a=$(a);var d=a.data(this.name);if(!b||(typeof b==='string'&&c==null)){var e=(d||{}).options;return(e&&b?e[b]:e)}if(!a.hasClass(this._getMarker())){return}var e=b||{};if(typeof b==='string'){e={};e[b]=c}this._optionsChanged(a,d,e);$.extend(d.options,e)},_optionsChanged:function(a,b,c){},destroy:function(a){a=$(a);if(!a.hasClass(this._getMarker())){return}this._preDestroy(a,this._getInst(a));a.removeData(this.name).removeClass(this._getMarker())},_preDestroy:function(a,b){}});function camelCase(c){return c.replace(/-([a-z])/g,function(a,b){return b.toUpperCase()})}$.JQPlugin={createPlugin:function(a,b){if(typeof a==='object'){b=a;a='JQPlugin'}a=camelCase(a);var c=camelCase(b.name);JQClass.classes[c]=JQClass.classes[a].extend(b);new JQClass.classes[c]()}}})(jQuery);
|
1 |
+
!function(){var a=!1;window.JQClass=function(){},JQClass.classes={},JQClass.extend=function b(c){function d(){!a&&this._init&&this._init.apply(this,arguments)}var e=this.prototype;a=!0;var f=new this;a=!1;for(var g in c)f[g]="function"==typeof c[g]&&"function"==typeof e[g]?function(a,b){return function(){var c=this._super;this._super=function(b){return e[a].apply(this,b||[])};var d=b.apply(this,arguments);return this._super=c,d}}(g,c[g]):c[g];return d.prototype=f,d.prototype.constructor=d,d.extend=b,d}}(),function($){function camelCase(a){return a.replace(/-([a-z])/g,function(a,b){return b.toUpperCase()})}JQClass.classes.JQPlugin=JQClass.extend({name:"plugin",defaultOptions:{},regionalOptions:{},_getters:[],_getMarker:function(){return"is-"+this.name},_init:function(){$.extend(this.defaultOptions,this.regionalOptions&&this.regionalOptions[""]||{});var a=camelCase(this.name);$[a]=this,$.fn[a]=function(b){var c=Array.prototype.slice.call(arguments,1);return $[a]._isNotChained(b,c)?$[a][b].apply($[a],[this[0]].concat(c)):this.each(function(){if("string"==typeof b){if("_"===b[0]||!$[a][b])throw"Unknown method: "+b;$[a][b].apply($[a],[this].concat(c))}else $[a]._attach(this,b)})}},setDefaults:function(a){$.extend(this.defaultOptions,a||{})},_isNotChained:function(a,b){return"option"===a&&(0===b.length||1===b.length&&"string"==typeof b[0])?!0:$.inArray(a,this._getters)>-1},_attach:function(a,b){if(a=$(a),!a.hasClass(this._getMarker())){a.addClass(this._getMarker()),b=$.extend({},this.defaultOptions,this._getMetadata(a),b||{});var c=$.extend({name:this.name,elem:a,options:b},this._instSettings(a,b));a.data(this.name,c),this._postAttach(a,c),this.option(a,b)}},_instSettings:function(a,b){return{}},_postAttach:function(a,b){},_getMetadata:function(elem){try{var data=elem.data(this.name.toLowerCase())||"";data=data.replace(/'/g,'"'),data=data.replace(/([a-zA-Z0-9]+):/g,function(a,b,c){var d=data.substring(0,c).match(/"/g);return d&&d.length%2!==0?b+":":'"'+b+'":'}),data=$.parseJSON("{"+data+"}");for(var name in data){var value=data[name];"string"==typeof value&&value.match(/^new Date\((.*)\)$/)&&(data[name]=eval(value))}return data}catch(e){return{}}},_getInst:function(a){return $(a).data(this.name)||{}},option:function(a,b,c){a=$(a);var d=a.data(this.name);if(!b||"string"==typeof b&&null==c){var e=(d||{}).options;return e&&b?e[b]:e}if(a.hasClass(this._getMarker())){var e=b||{};"string"==typeof b&&(e={},e[b]=c),this._optionsChanged(a,d,e),$.extend(d.options,e)}},_optionsChanged:function(a,b,c){},destroy:function(a){a=$(a),a.hasClass(this._getMarker())&&(this._preDestroy(a,this._getInst(a)),a.removeData(this.name).removeClass(this._getMarker()))},_preDestroy:function(a,b){}}),$.JQPlugin={createPlugin:function(a,b){"object"==typeof a&&(b=a,a="JQPlugin"),a=camelCase(a);var c=camelCase(b.name);JQClass.classes[c]=JQClass.classes[a].extend(b),new JQClass.classes[c]}}}(jQuery);
|
|
|
|
|
|
@@ -1,24 +1,27 @@
|
|
1 |
-
/*!
|
2 |
-
* jQuery Validation Plugin v1.
|
3 |
-
*
|
4 |
-
* http://jqueryvalidation.org/
|
5 |
-
*
|
6 |
-
* Copyright (c)
|
7 |
-
* Released under the MIT license
|
8 |
-
*/
|
9 |
-
(function( factory ) {
|
10 |
-
if ( typeof define === "function" && define.amd ) {
|
11 |
-
define( ["jquery"], factory );
|
12 |
-
} else {
|
13 |
-
factory(
|
14 |
-
}
|
15 |
-
|
|
|
|
|
|
|
|
|
16 |
|
17 |
-
$.extend($.fn, {
|
18 |
// http://jqueryvalidation.org/validate/
|
19 |
validate: function( options ) {
|
20 |
|
21 |
-
//
|
22 |
if ( !this.length ) {
|
23 |
if ( options && options.debug && window.console ) {
|
24 |
console.warn( "Nothing selected, can't validate, returning nothing." );
|
@@ -26,7 +29,7 @@ $.extend($.fn, {
|
|
26 |
return;
|
27 |
}
|
28 |
|
29 |
-
//
|
30 |
var validator = $.data( this[ 0 ], "validator" );
|
31 |
if ( validator ) {
|
32 |
return validator;
|
@@ -40,48 +43,55 @@ $.extend($.fn, {
|
|
40 |
|
41 |
if ( validator.settings.onsubmit ) {
|
42 |
|
43 |
-
this.
|
44 |
if ( validator.settings.submitHandler ) {
|
45 |
validator.submitButton = event.target;
|
46 |
}
|
47 |
-
|
48 |
-
|
|
|
49 |
validator.cancelSubmit = true;
|
50 |
}
|
51 |
|
52 |
-
//
|
53 |
-
if ( $(
|
54 |
validator.cancelSubmit = true;
|
55 |
}
|
56 |
-
});
|
57 |
|
58 |
-
//
|
59 |
-
this.
|
60 |
if ( validator.settings.debug ) {
|
61 |
-
|
|
|
62 |
event.preventDefault();
|
63 |
}
|
64 |
function handle() {
|
65 |
-
var hidden;
|
66 |
if ( validator.settings.submitHandler ) {
|
67 |
if ( validator.submitButton ) {
|
68 |
-
|
|
|
69 |
hidden = $( "<input type='hidden'/>" )
|
70 |
.attr( "name", validator.submitButton.name )
|
71 |
.val( $( validator.submitButton ).val() )
|
72 |
.appendTo( validator.currentForm );
|
73 |
}
|
74 |
-
validator.settings.submitHandler.call( validator, validator.currentForm, event );
|
75 |
if ( validator.submitButton ) {
|
76 |
-
|
|
|
77 |
hidden.remove();
|
78 |
}
|
|
|
|
|
|
|
79 |
return false;
|
80 |
}
|
81 |
return true;
|
82 |
}
|
83 |
|
84 |
-
//
|
85 |
if ( validator.cancelSubmit ) {
|
86 |
validator.cancelSubmit = false;
|
87 |
return handle();
|
@@ -96,38 +106,41 @@ $.extend($.fn, {
|
|
96 |
validator.focusInvalid();
|
97 |
return false;
|
98 |
}
|
99 |
-
});
|
100 |
}
|
101 |
|
102 |
return validator;
|
103 |
},
|
|
|
104 |
// http://jqueryvalidation.org/valid/
|
105 |
valid: function() {
|
106 |
-
var valid, validator;
|
107 |
|
108 |
if ( $( this[ 0 ] ).is( "form" ) ) {
|
109 |
valid = this.validate().form();
|
110 |
} else {
|
|
|
111 |
valid = true;
|
112 |
validator = $( this[ 0 ].form ).validate();
|
113 |
this.each( function() {
|
114 |
valid = validator.element( this ) && valid;
|
115 |
-
|
|
|
|
|
|
|
|
|
116 |
}
|
117 |
return valid;
|
118 |
},
|
119 |
-
|
120 |
-
removeAttrs: function( attributes ) {
|
121 |
-
var result = {},
|
122 |
-
$element = this;
|
123 |
-
$.each( attributes.split( /\s/ ), function( index, value ) {
|
124 |
-
result[ value ] = $element.attr( value );
|
125 |
-
$element.removeAttr( value );
|
126 |
-
});
|
127 |
-
return result;
|
128 |
-
},
|
129 |
// http://jqueryvalidation.org/rules/
|
130 |
rules: function( command, argument ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
131 |
var element = this[ 0 ],
|
132 |
settings, staticRules, existingRules, data, param, filtered;
|
133 |
|
@@ -138,7 +151,8 @@ $.extend($.fn, {
|
|
138 |
switch ( command ) {
|
139 |
case "add":
|
140 |
$.extend( existingRules, $.validator.normalizeRule( argument ) );
|
141 |
-
|
|
|
142 |
delete existingRules.messages;
|
143 |
staticRules[ element.name ] = existingRules;
|
144 |
if ( argument.messages ) {
|
@@ -157,7 +171,7 @@ $.extend($.fn, {
|
|
157 |
if ( method === "required" ) {
|
158 |
$( element ).removeAttr( "aria-required" );
|
159 |
}
|
160 |
-
});
|
161 |
return filtered;
|
162 |
}
|
163 |
}
|
@@ -171,7 +185,7 @@ $.extend($.fn, {
|
|
171 |
$.validator.staticRules( element )
|
172 |
), element );
|
173 |
|
174 |
-
//
|
175 |
if ( data.required ) {
|
176 |
param = data.required;
|
177 |
delete data.required;
|
@@ -179,34 +193,38 @@ $.extend($.fn, {
|
|
179 |
$( element ).attr( "aria-required", "true" );
|
180 |
}
|
181 |
|
182 |
-
//
|
183 |
if ( data.remote ) {
|
184 |
param = data.remote;
|
185 |
delete data.remote;
|
186 |
-
data = $.extend( data, { remote: param });
|
187 |
}
|
188 |
|
189 |
return data;
|
190 |
}
|
191 |
-
});
|
192 |
|
193 |
// Custom selectors
|
194 |
$.extend( $.expr[ ":" ], {
|
|
|
195 |
// http://jqueryvalidation.org/blank-selector/
|
196 |
blank: function( a ) {
|
197 |
return !$.trim( "" + $( a ).val() );
|
198 |
},
|
|
|
199 |
// http://jqueryvalidation.org/filled-selector/
|
200 |
filled: function( a ) {
|
201 |
-
|
|
|
202 |
},
|
|
|
203 |
// http://jqueryvalidation.org/unchecked-selector/
|
204 |
unchecked: function( a ) {
|
205 |
return !$( a ).prop( "checked" );
|
206 |
}
|
207 |
-
});
|
208 |
|
209 |
-
//
|
210 |
$.validator = function( options, form ) {
|
211 |
this.settings = $.extend( true, {}, $.validator.defaults, options );
|
212 |
this.currentForm = form;
|
@@ -222,6 +240,9 @@ $.validator.format = function( source, params ) {
|
|
222 |
return $.validator.format.apply( this, args );
|
223 |
};
|
224 |
}
|
|
|
|
|
|
|
225 |
if ( arguments.length > 2 && params.constructor !== Array ) {
|
226 |
params = $.makeArray( arguments ).slice( 1 );
|
227 |
}
|
@@ -231,8 +252,8 @@ $.validator.format = function( source, params ) {
|
|
231 |
$.each( params, function( i, n ) {
|
232 |
source = source.replace( new RegExp( "\\{" + i + "\\}", "g" ), function() {
|
233 |
return n;
|
234 |
-
});
|
235 |
-
});
|
236 |
return source;
|
237 |
};
|
238 |
|
@@ -243,8 +264,10 @@ $.extend( $.validator, {
|
|
243 |
groups: {},
|
244 |
rules: {},
|
245 |
errorClass: "error",
|
|
|
246 |
validClass: "valid",
|
247 |
errorElement: "label",
|
|
|
248 |
focusInvalid: true,
|
249 |
errorContainer: $( [] ),
|
250 |
errorLabelContainer: $( [] ),
|
@@ -254,8 +277,8 @@ $.extend( $.validator, {
|
|
254 |
onfocusin: function( element ) {
|
255 |
this.lastActive = element;
|
256 |
|
257 |
-
//
|
258 |
-
if ( this.settings.focusCleanup
|
259 |
if ( this.settings.unhighlight ) {
|
260 |
this.settings.unhighlight.call( this, element, this.settings.errorClass, this.settings.validClass );
|
261 |
}
|
@@ -268,18 +291,39 @@ $.extend( $.validator, {
|
|
268 |
}
|
269 |
},
|
270 |
onkeyup: function( element, event ) {
|
271 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
272 |
return;
|
273 |
-
} else if ( element.name in this.submitted || element
|
274 |
this.element( element );
|
275 |
}
|
276 |
},
|
277 |
onclick: function( element ) {
|
278 |
-
|
|
|
279 |
if ( element.name in this.submitted ) {
|
280 |
this.element( element );
|
281 |
|
282 |
-
//
|
283 |
} else if ( element.parentNode.name in this.submitted ) {
|
284 |
this.element( element.parentNode );
|
285 |
}
|
@@ -314,14 +358,14 @@ $.extend( $.validator, {
|
|
314 |
dateISO: "Please enter a valid date ( ISO ).",
|
315 |
number: "Please enter a valid number.",
|
316 |
digits: "Please enter only digits.",
|
317 |
-
creditcard: "Please enter a valid credit card number.",
|
318 |
equalTo: "Please enter the same value again.",
|
319 |
maxlength: $.validator.format( "Please enter no more than {0} characters." ),
|
320 |
minlength: $.validator.format( "Please enter at least {0} characters." ),
|
321 |
rangelength: $.validator.format( "Please enter a value between {0} and {1} characters long." ),
|
322 |
range: $.validator.format( "Please enter a value between {0} and {1}." ),
|
323 |
max: $.validator.format( "Please enter a value less than or equal to {0}." ),
|
324 |
-
min: $.validator.format( "Please enter a value greater than or equal to {0}." )
|
|
|
325 |
},
|
326 |
|
327 |
autoCreateRanges: false,
|
@@ -347,34 +391,35 @@ $.extend( $.validator, {
|
|
347 |
}
|
348 |
$.each( value, function( index, name ) {
|
349 |
groups[ name ] = key;
|
350 |
-
});
|
351 |
-
});
|
352 |
rules = this.settings.rules;
|
353 |
$.each( rules, function( key, value ) {
|
354 |
rules[ key ] = $.validator.normalizeRule( value );
|
355 |
-
});
|
356 |
|
357 |
function delegate( event ) {
|
358 |
-
var validator = $.data( this
|
359 |
eventType = "on" + event.type.replace( /^validate/, "" ),
|
360 |
settings = validator.settings;
|
361 |
-
if ( settings[ eventType ] &&
|
362 |
-
settings[ eventType ].call( validator, this
|
363 |
}
|
364 |
}
|
|
|
365 |
$( this.currentForm )
|
366 |
-
.
|
367 |
-
"[type='
|
368 |
-
"[type='email'], [type='datetime'], [type='date'], [type='month'], " +
|
369 |
-
"[type='week'], [type='time'], [type='datetime-local'], " +
|
370 |
-
"[type='
|
371 |
-
|
372 |
// Support: Chrome, oldIE
|
373 |
// "select" is provided as event.target when clicking a option
|
374 |
-
.
|
375 |
|
376 |
if ( this.settings.invalidHandler ) {
|
377 |
-
$( this.currentForm ).
|
378 |
}
|
379 |
|
380 |
// Add aria-required to any Static/Data/Class required fields before first validation
|
@@ -386,9 +431,9 @@ $.extend( $.validator, {
|
|
386 |
form: function() {
|
387 |
this.checkForm();
|
388 |
$.extend( this.submitted, this.errorMap );
|
389 |
-
this.invalid = $.extend({}, this.errorMap );
|
390 |
if ( !this.valid() ) {
|
391 |
-
$( this.currentForm ).triggerHandler( "invalid-form", [ this ]);
|
392 |
}
|
393 |
this.showErrors();
|
394 |
return this.valid();
|
@@ -406,9 +451,9 @@ $.extend( $.validator, {
|
|
406 |
element: function( element ) {
|
407 |
var cleanElement = this.clean( element ),
|
408 |
checkElement = this.validationTargetFor( cleanElement ),
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
|
413 |
if ( checkElement === undefined ) {
|
414 |
delete this.invalid[ cleanElement.name ];
|
@@ -416,40 +461,61 @@ $.extend( $.validator, {
|
|
416 |
this.prepareElement( checkElement );
|
417 |
this.currentElements = $( checkElement );
|
418 |
|
419 |
-
|
420 |
-
|
421 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
422 |
} else {
|
423 |
this.invalid[ checkElement.name ] = true;
|
424 |
}
|
425 |
-
}
|
426 |
-
// Add aria-invalid status for screen readers
|
427 |
-
$( element ).attr( "aria-invalid", !result );
|
428 |
|
429 |
-
|
430 |
-
|
431 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
432 |
}
|
433 |
-
|
434 |
return result;
|
435 |
},
|
436 |
|
437 |
// http://jqueryvalidation.org/Validator.showErrors/
|
438 |
showErrors: function( errors ) {
|
439 |
if ( errors ) {
|
440 |
-
|
|
|
|
|
441 |
$.extend( this.errorMap, errors );
|
442 |
-
this.errorList =
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
//
|
450 |
this.successList = $.grep( this.successList, function( element ) {
|
451 |
return !( element.name in errors );
|
452 |
-
});
|
453 |
}
|
454 |
if ( this.settings.showErrors ) {
|
455 |
this.settings.showErrors.call( this, this.errorMap, this.errorList );
|
@@ -463,14 +529,31 @@ $.extend( $.validator, {
|
|
463 |
if ( $.fn.resetForm ) {
|
464 |
$( this.currentForm ).resetForm();
|
465 |
}
|
|
|
466 |
this.submitted = {};
|
467 |
-
this.lastElement = null;
|
468 |
this.prepareForm();
|
469 |
this.hideErrors();
|
470 |
-
this.elements()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
471 |
.removeClass( this.settings.errorClass )
|
472 |
-
.
|
473 |
-
|
474 |
},
|
475 |
|
476 |
numberOfInvalids: function() {
|
@@ -482,7 +565,9 @@ $.extend( $.validator, {
|
|
482 |
var count = 0,
|
483 |
i;
|
484 |
for ( i in obj ) {
|
485 |
-
|
|
|
|
|
486 |
}
|
487 |
return count;
|
488 |
},
|
@@ -507,13 +592,15 @@ $.extend( $.validator, {
|
|
507 |
focusInvalid: function() {
|
508 |
if ( this.settings.focusInvalid ) {
|
509 |
try {
|
510 |
-
$( this.findLastActive() || this.errorList.length && this.errorList[ 0 ].element || [])
|
511 |
.filter( ":visible" )
|
512 |
.focus()
|
513 |
-
|
|
|
514 |
.trigger( "focusin" );
|
515 |
} catch ( e ) {
|
516 |
-
|
|
|
517 |
}
|
518 |
}
|
519 |
},
|
@@ -522,31 +609,37 @@ $.extend( $.validator, {
|
|
522 |
var lastActive = this.lastActive;
|
523 |
return lastActive && $.grep( this.errorList, function( n ) {
|
524 |
return n.element.name === lastActive.name;
|
525 |
-
}).length === 1 && lastActive;
|
526 |
},
|
527 |
|
528 |
elements: function() {
|
529 |
var validator = this,
|
530 |
rulesCache = {};
|
531 |
|
532 |
-
//
|
533 |
return $( this.currentForm )
|
534 |
-
.find( "input, select, textarea" )
|
535 |
-
.not( ":submit, :reset, :image,
|
536 |
.not( this.settings.ignore )
|
537 |
.filter( function() {
|
538 |
-
|
|
|
539 |
console.error( "%o has no name assigned", this );
|
540 |
}
|
541 |
|
542 |
-
//
|
543 |
-
if ( this.
|
|
|
|
|
|
|
|
|
|
|
544 |
return false;
|
545 |
}
|
546 |
|
547 |
-
rulesCache[
|
548 |
return true;
|
549 |
-
});
|
550 |
},
|
551 |
|
552 |
clean: function( selector ) {
|
@@ -558,12 +651,16 @@ $.extend( $.validator, {
|
|
558 |
return $( this.settings.errorElement + "." + errorClass, this.errorContext );
|
559 |
},
|
560 |
|
561 |
-
|
562 |
this.successList = [];
|
563 |
this.errorList = [];
|
564 |
this.errorMap = {};
|
565 |
this.toShow = $( [] );
|
566 |
this.toHide = $( [] );
|
|
|
|
|
|
|
|
|
567 |
this.currentElements = $( [] );
|
568 |
},
|
569 |
|
@@ -578,19 +675,48 @@ $.extend( $.validator, {
|
|
578 |
},
|
579 |
|
580 |
elementValue: function( element ) {
|
581 |
-
var
|
582 |
-
|
583 |
-
|
584 |
|
585 |
if ( type === "radio" || type === "checkbox" ) {
|
586 |
-
return
|
587 |
} else if ( type === "number" && typeof element.validity !== "undefined" ) {
|
588 |
-
return element.validity.badInput ?
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
589 |
}
|
590 |
|
591 |
-
val = $element.val();
|
592 |
if ( typeof val === "string" ) {
|
593 |
-
return val.replace(/\r/g, "" );
|
594 |
}
|
595 |
return val;
|
596 |
},
|
@@ -601,18 +727,33 @@ $.extend( $.validator, {
|
|
601 |
var rules = $( element ).rules(),
|
602 |
rulesCount = $.map( rules, function( n, i ) {
|
603 |
return i;
|
604 |
-
}).length,
|
605 |
dependencyMismatch = false,
|
606 |
val = this.elementValue( element ),
|
607 |
result, method, rule;
|
608 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
609 |
for ( method in rules ) {
|
610 |
rule = { method: method, parameters: rules[ method ] };
|
611 |
try {
|
612 |
-
|
613 |
result = $.validator.methods[ method ].call( this, val, element, rule.parameters );
|
614 |
|
615 |
-
//
|
616 |
// don't mark it as valid when there are no other rules
|
617 |
if ( result === "dependency-mismatch" && rulesCount === 1 ) {
|
618 |
dependencyMismatch = true;
|
@@ -633,6 +774,10 @@ $.extend( $.validator, {
|
|
633 |
if ( this.settings.debug && window.console ) {
|
634 |
console.log( "Exception occurred when checking element " + element.id + ", check the '" + rule.method + "' method.", e );
|
635 |
}
|
|
|
|
|
|
|
|
|
636 |
throw e;
|
637 |
}
|
638 |
}
|
@@ -645,7 +790,7 @@ $.extend( $.validator, {
|
|
645 |
return true;
|
646 |
},
|
647 |
|
648 |
-
//
|
649 |
// specified in the element's HTML5 data attribute
|
650 |
// return the generic message if present and no method specific message is present
|
651 |
customDataMessage: function( element, method ) {
|
@@ -653,15 +798,15 @@ $.extend( $.validator, {
|
|
653 |
method.substring( 1 ).toLowerCase() ) || $( element ).data( "msg" );
|
654 |
},
|
655 |
|
656 |
-
//
|
657 |
customMessage: function( name, method ) {
|
658 |
var m = this.settings.messages[ name ];
|
659 |
-
return m && ( m.constructor === String ? m : m[ method ]);
|
660 |
},
|
661 |
|
662 |
-
//
|
663 |
findDefined: function() {
|
664 |
-
for ( var i = 0; i < arguments.length; i++) {
|
665 |
if ( arguments[ i ] !== undefined ) {
|
666 |
return arguments[ i ];
|
667 |
}
|
@@ -669,30 +814,34 @@ $.extend( $.validator, {
|
|
669 |
return undefined;
|
670 |
},
|
671 |
|
672 |
-
defaultMessage: function( element,
|
673 |
-
|
674 |
-
|
675 |
-
|
676 |
-
// title is never undefined, so handle empty string as undefined
|
677 |
-
!this.settings.ignoreTitle && element.title || undefined,
|
678 |
-
$.validator.messages[ method ],
|
679 |
-
"<strong>Warning: No message defined for " + element.name + "</strong>"
|
680 |
-
);
|
681 |
-
},
|
682 |
|
683 |
-
|
684 |
-
|
|
|
|
|
|
|
685 |
theregex = /\$?\{(\d+)\}/g;
|
686 |
if ( typeof message === "function" ) {
|
687 |
message = message.call( this, rule.parameters, element );
|
688 |
} else if ( theregex.test( message ) ) {
|
689 |
message = $.validator.format( message.replace( theregex, "{$1}" ), rule.parameters );
|
690 |
}
|
691 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
692 |
message: message,
|
693 |
element: element,
|
694 |
method: rule.method
|
695 |
-
});
|
696 |
|
697 |
this.errorMap[ element.name ] = message;
|
698 |
this.submitted[ element.name ] = message;
|
@@ -737,23 +886,27 @@ $.extend( $.validator, {
|
|
737 |
},
|
738 |
|
739 |
invalidElements: function() {
|
740 |
-
return $( this.errorList ).map(function() {
|
741 |
return this.element;
|
742 |
-
});
|
743 |
},
|
744 |
|
745 |
showLabel: function( element, message ) {
|
746 |
-
var place, group, errorID,
|
747 |
error = this.errorsFor( element ),
|
748 |
elementID = this.idOrName( element ),
|
749 |
describedBy = $( element ).attr( "aria-describedby" );
|
|
|
750 |
if ( error.length ) {
|
751 |
-
|
|
|
752 |
error.removeClass( this.settings.validClass ).addClass( this.settings.errorClass );
|
753 |
-
|
|
|
754 |
error.html( message );
|
755 |
} else {
|
756 |
-
|
|
|
757 |
error = $( "<" + this.settings.errorElement + ">" )
|
758 |
.attr( "id", elementID + "-error" )
|
759 |
.addClass( this.settings.errorClass )
|
@@ -762,7 +915,8 @@ $.extend( $.validator, {
|
|
762 |
// Maintain reference to the element to be placed into the DOM
|
763 |
place = error;
|
764 |
if ( this.settings.wrapper ) {
|
765 |
-
|
|
|
766 |
// actually showing the wrapped element is handled elsewhere
|
767 |
place = error.hide().show().wrap( "<" + this.settings.wrapper + "/>" ).parent();
|
768 |
}
|
@@ -776,17 +930,20 @@ $.extend( $.validator, {
|
|
776 |
|
777 |
// Link error back to the element
|
778 |
if ( error.is( "label" ) ) {
|
|
|
779 |
// If the error is a label, then associate using 'for'
|
780 |
error.attr( "for", elementID );
|
781 |
-
|
782 |
// If the element is not a child of an associated label, then it's necessary
|
783 |
// to explicitly apply aria-describedby
|
784 |
-
|
785 |
errorID = error.attr( "id" );
|
|
|
786 |
// Respect existing non-error aria-describedby
|
787 |
if ( !describedBy ) {
|
788 |
describedBy = errorID;
|
789 |
-
} else if ( !describedBy.match( new RegExp( "
|
|
|
790 |
// Add to end of list if not already present
|
791 |
describedBy += " " + errorID;
|
792 |
}
|
@@ -795,12 +952,13 @@ $.extend( $.validator, {
|
|
795 |
// If this element is grouped, then assign to all elements in the same group
|
796 |
group = this.groups[ element.name ];
|
797 |
if ( group ) {
|
798 |
-
|
|
|
799 |
if ( testgroup === group ) {
|
800 |
-
$( "[name='" + name + "']",
|
801 |
.attr( "aria-describedby", error.attr( "id" ) );
|
802 |
}
|
803 |
-
});
|
804 |
}
|
805 |
}
|
806 |
}
|
@@ -816,28 +974,41 @@ $.extend( $.validator, {
|
|
816 |
},
|
817 |
|
818 |
errorsFor: function( element ) {
|
819 |
-
var name = this.idOrName( element ),
|
820 |
describer = $( element ).attr( "aria-describedby" ),
|
821 |
selector = "label[for='" + name + "'], label[for='" + name + "'] *";
|
822 |
-
|
|
|
823 |
if ( describer ) {
|
824 |
-
selector = selector + ", #" +
|
|
|
825 |
}
|
|
|
826 |
return this
|
827 |
.errors()
|
828 |
.filter( selector );
|
829 |
},
|
830 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
831 |
idOrName: function( element ) {
|
832 |
return this.groups[ element.name ] || ( this.checkable( element ) ? element.name : element.id || element.name );
|
833 |
},
|
834 |
|
835 |
validationTargetFor: function( element ) {
|
836 |
-
|
|
|
837 |
if ( this.checkable( element ) ) {
|
838 |
-
element = this.findByName( element.name )
|
839 |
}
|
840 |
-
|
|
|
|
|
841 |
},
|
842 |
|
843 |
checkable: function( element ) {
|
@@ -845,7 +1016,7 @@ $.extend( $.validator, {
|
|
845 |
},
|
846 |
|
847 |
findByName: function( name ) {
|
848 |
-
return $( this.currentForm ).find( "[name='" + name + "']" );
|
849 |
},
|
850 |
|
851 |
getLength: function( value, element ) {
|
@@ -861,7 +1032,7 @@ $.extend( $.validator, {
|
|
861 |
},
|
862 |
|
863 |
depend: function( param, element ) {
|
864 |
-
return this.dependTypes[typeof param] ? this.dependTypes[typeof param]( param, element ) : true;
|
865 |
},
|
866 |
|
867 |
dependTypes: {
|
@@ -884,32 +1055,47 @@ $.extend( $.validator, {
|
|
884 |
startRequest: function( element ) {
|
885 |
if ( !this.pending[ element.name ] ) {
|
886 |
this.pendingRequest++;
|
|
|
887 |
this.pending[ element.name ] = true;
|
888 |
}
|
889 |
},
|
890 |
|
891 |
stopRequest: function( element, valid ) {
|
892 |
this.pendingRequest--;
|
893 |
-
|
|
|
894 |
if ( this.pendingRequest < 0 ) {
|
895 |
this.pendingRequest = 0;
|
896 |
}
|
897 |
delete this.pending[ element.name ];
|
|
|
898 |
if ( valid && this.pendingRequest === 0 && this.formSubmitted && this.form() ) {
|
899 |
$( this.currentForm ).submit();
|
900 |
this.formSubmitted = false;
|
901 |
-
} else if (!valid && this.pendingRequest === 0 && this.formSubmitted ) {
|
902 |
-
$( this.currentForm ).triggerHandler( "invalid-form", [ this ]);
|
903 |
this.formSubmitted = false;
|
904 |
}
|
905 |
},
|
906 |
|
907 |
-
previousValue: function( element ) {
|
908 |
return $.data( element, "previousValue" ) || $.data( element, "previousValue", {
|
909 |
old: null,
|
910 |
valid: true,
|
911 |
-
message: this.defaultMessage( element,
|
912 |
-
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
913 |
}
|
914 |
|
915 |
},
|
@@ -940,13 +1126,36 @@ $.extend( $.validator, {
|
|
940 |
if ( classes ) {
|
941 |
$.each( classes.split( " " ), function() {
|
942 |
if ( this in $.validator.classRuleSettings ) {
|
943 |
-
$.extend( rules, $.validator.classRuleSettings[ this ]);
|
944 |
}
|
945 |
-
});
|
946 |
}
|
947 |
return rules;
|
948 |
},
|
949 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
950 |
attributeRules: function( element ) {
|
951 |
var rules = {},
|
952 |
$element = $( element ),
|
@@ -955,36 +1164,26 @@ $.extend( $.validator, {
|
|
955 |
|
956 |
for ( method in $.validator.methods ) {
|
957 |
|
958 |
-
//
|
959 |
if ( method === "required" ) {
|
960 |
value = element.getAttribute( method );
|
|
|
961 |
// Some browsers return an empty string for the required attribute
|
962 |
// and non-HTML5 browsers might have required="" markup
|
963 |
if ( value === "" ) {
|
964 |
value = true;
|
965 |
}
|
966 |
-
|
|
|
967 |
value = !!value;
|
968 |
} else {
|
969 |
value = $element.attr( method );
|
970 |
}
|
971 |
|
972 |
-
|
973 |
-
// allows type="date" and others to be compared as strings
|
974 |
-
if ( /min|max/.test( method ) && ( type === null || /number|range|text/.test( type ) ) ) {
|
975 |
-
value = Number( value );
|
976 |
-
}
|
977 |
-
|
978 |
-
if ( value || value === 0 ) {
|
979 |
-
rules[ method ] = value;
|
980 |
-
} else if ( type === method && type !== "range" ) {
|
981 |
-
// exception: the jquery validate 'range' method
|
982 |
-
// does not test for the html5 'range' type
|
983 |
-
rules[ method ] = true;
|
984 |
-
}
|
985 |
}
|
986 |
|
987 |
-
// maxlength may be returned as -1, 2147483647 ( IE ) and 524288 ( safari ) for text inputs
|
988 |
if ( rules.maxlength && /-1|2147483647|524288/.test( rules.maxlength ) ) {
|
989 |
delete rules.maxlength;
|
990 |
}
|
@@ -993,13 +1192,14 @@ $.extend( $.validator, {
|
|
993 |
},
|
994 |
|
995 |
dataRules: function( element ) {
|
996 |
-
var
|
997 |
-
|
|
|
|
|
|
|
998 |
for ( method in $.validator.methods ) {
|
999 |
value = $element.data( "rule" + method.charAt( 0 ).toUpperCase() + method.substring( 1 ).toLowerCase() );
|
1000 |
-
|
1001 |
-
rules[ method ] = value;
|
1002 |
-
}
|
1003 |
}
|
1004 |
return rules;
|
1005 |
},
|
@@ -1015,9 +1215,11 @@ $.extend( $.validator, {
|
|
1015 |
},
|
1016 |
|
1017 |
normalizeRules: function( rules, element ) {
|
1018 |
-
|
|
|
1019 |
$.each( rules, function( prop, val ) {
|
1020 |
-
|
|
|
1021 |
if ( val === false ) {
|
1022 |
delete rules[ prop ];
|
1023 |
return;
|
@@ -1035,42 +1237,44 @@ $.extend( $.validator, {
|
|
1035 |
if ( keepRule ) {
|
1036 |
rules[ prop ] = val.param !== undefined ? val.param : true;
|
1037 |
} else {
|
|
|
1038 |
delete rules[ prop ];
|
1039 |
}
|
1040 |
}
|
1041 |
-
});
|
1042 |
|
1043 |
-
//
|
1044 |
$.each( rules, function( rule, parameter ) {
|
1045 |
-
rules[ rule ] = $.isFunction( parameter ) ? parameter( element ) : parameter;
|
1046 |
-
});
|
1047 |
|
1048 |
-
//
|
1049 |
-
$.each([ "minlength", "maxlength" ], function() {
|
1050 |
if ( rules[ this ] ) {
|
1051 |
rules[ this ] = Number( rules[ this ] );
|
1052 |
}
|
1053 |
-
});
|
1054 |
-
$.each([ "rangelength", "range" ], function() {
|
1055 |
var parts;
|
1056 |
if ( rules[ this ] ) {
|
1057 |
if ( $.isArray( rules[ this ] ) ) {
|
1058 |
-
rules[ this ] = [ Number( rules[ this ][ 0 ]), Number( rules[ this ][ 1 ] ) ];
|
1059 |
} else if ( typeof rules[ this ] === "string" ) {
|
1060 |
-
parts = rules[ this ].replace(/[\[\]]/g, "" ).split( /[\s,]+/ );
|
1061 |
-
rules[ this ] = [ Number( parts[ 0 ]), Number( parts[ 1 ] ) ];
|
1062 |
}
|
1063 |
}
|
1064 |
-
});
|
1065 |
|
1066 |
if ( $.validator.autoCreateRanges ) {
|
1067 |
-
|
1068 |
-
|
|
|
1069 |
rules.range = [ rules.min, rules.max ];
|
1070 |
delete rules.min;
|
1071 |
delete rules.max;
|
1072 |
}
|
1073 |
-
if ( rules.minlength && rules.maxlength ) {
|
1074 |
rules.rangelength = [ rules.minlength, rules.maxlength ];
|
1075 |
delete rules.minlength;
|
1076 |
delete rules.maxlength;
|
@@ -1086,7 +1290,7 @@ $.extend( $.validator, {
|
|
1086 |
var transformed = {};
|
1087 |
$.each( data.split( /\s/ ), function() {
|
1088 |
transformed[ this ] = true;
|
1089 |
-
});
|
1090 |
data = transformed;
|
1091 |
}
|
1092 |
return data;
|
@@ -1101,28 +1305,32 @@ $.extend( $.validator, {
|
|
1101 |
}
|
1102 |
},
|
1103 |
|
|
|
1104 |
methods: {
|
1105 |
|
1106 |
// http://jqueryvalidation.org/required-method/
|
1107 |
required: function( value, element, param ) {
|
1108 |
-
|
|
|
1109 |
if ( !this.depend( param, element ) ) {
|
1110 |
return "dependency-mismatch";
|
1111 |
}
|
1112 |
if ( element.nodeName.toLowerCase() === "select" ) {
|
1113 |
-
|
|
|
1114 |
var val = $( element ).val();
|
1115 |
return val && val.length > 0;
|
1116 |
}
|
1117 |
if ( this.checkable( element ) ) {
|
1118 |
return this.getLength( value, element ) > 0;
|
1119 |
}
|
1120 |
-
return
|
1121 |
},
|
1122 |
|
1123 |
// http://jqueryvalidation.org/email-method/
|
1124 |
email: function( value, element ) {
|
1125 |
-
|
|
|
1126 |
// Retrieved 2014-01-14
|
1127 |
// If you have a problem with this implementation, report a bug against the above spec
|
1128 |
// Or use custom methods to implement your own email validation
|
@@ -1131,8 +1339,12 @@ $.extend( $.validator, {
|
|
1131 |
|
1132 |
// http://jqueryvalidation.org/url-method/
|
1133 |
url: function( value, element ) {
|
1134 |
-
|
1135 |
-
|
|
|
|
|
|
|
|
|
1136 |
},
|
1137 |
|
1138 |
// http://jqueryvalidation.org/date-method/
|
@@ -1147,7 +1359,7 @@ $.extend( $.validator, {
|
|
1147 |
|
1148 |
// http://jqueryvalidation.org/number-method/
|
1149 |
number: function( value, element ) {
|
1150 |
-
return this.optional( element ) ||
|
1151 |
},
|
1152 |
|
1153 |
// http://jqueryvalidation.org/digits-method/
|
@@ -1155,59 +1367,21 @@ $.extend( $.validator, {
|
|
1155 |
return this.optional( element ) || /^\d+$/.test( value );
|
1156 |
},
|
1157 |
|
1158 |
-
// http://jqueryvalidation.org/creditcard-method/
|
1159 |
-
// based on http://en.wikipedia.org/wiki/Luhn/
|
1160 |
-
creditcard: function( value, element ) {
|
1161 |
-
if ( this.optional( element ) ) {
|
1162 |
-
return "dependency-mismatch";
|
1163 |
-
}
|
1164 |
-
// accept only spaces, digits and dashes
|
1165 |
-
if ( /[^0-9 \-]+/.test( value ) ) {
|
1166 |
-
return false;
|
1167 |
-
}
|
1168 |
-
var nCheck = 0,
|
1169 |
-
nDigit = 0,
|
1170 |
-
bEven = false,
|
1171 |
-
n, cDigit;
|
1172 |
-
|
1173 |
-
value = value.replace( /\D/g, "" );
|
1174 |
-
|
1175 |
-
// Basing min and max length on
|
1176 |
-
// http://developer.ean.com/general_info/Valid_Credit_Card_Types
|
1177 |
-
if ( value.length < 13 || value.length > 19 ) {
|
1178 |
-
return false;
|
1179 |
-
}
|
1180 |
-
|
1181 |
-
for ( n = value.length - 1; n >= 0; n--) {
|
1182 |
-
cDigit = value.charAt( n );
|
1183 |
-
nDigit = parseInt( cDigit, 10 );
|
1184 |
-
if ( bEven ) {
|
1185 |
-
if ( ( nDigit *= 2 ) > 9 ) {
|
1186 |
-
nDigit -= 9;
|
1187 |
-
}
|
1188 |
-
}
|
1189 |
-
nCheck += nDigit;
|
1190 |
-
bEven = !bEven;
|
1191 |
-
}
|
1192 |
-
|
1193 |
-
return ( nCheck % 10 ) === 0;
|
1194 |
-
},
|
1195 |
-
|
1196 |
// http://jqueryvalidation.org/minlength-method/
|
1197 |
minlength: function( value, element, param ) {
|
1198 |
-
var length = $.isArray( value ) ? value.length : this.getLength(
|
1199 |
return this.optional( element ) || length >= param;
|
1200 |
},
|
1201 |
|
1202 |
// http://jqueryvalidation.org/maxlength-method/
|
1203 |
maxlength: function( value, element, param ) {
|
1204 |
-
var length = $.isArray( value ) ? value.length : this.getLength(
|
1205 |
return this.optional( element ) || length <= param;
|
1206 |
},
|
1207 |
|
1208 |
// http://jqueryvalidation.org/rangelength-method/
|
1209 |
rangelength: function( value, element, param ) {
|
1210 |
-
var length = $.isArray( value ) ? value.length : this.getLength(
|
1211 |
return this.optional( element ) || ( length >= param[ 0 ] && length <= param[ 1 ] );
|
1212 |
},
|
1213 |
|
@@ -1226,47 +1400,64 @@ $.extend( $.validator, {
|
|
1226 |
return this.optional( element ) || ( value >= param[ 0 ] && value <= param[ 1 ] );
|
1227 |
},
|
1228 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1229 |
// http://jqueryvalidation.org/equalTo-method/
|
1230 |
equalTo: function( value, element, param ) {
|
1231 |
-
|
1232 |
-
//
|
1233 |
var target = $( param );
|
1234 |
-
if ( this.settings.onfocusout ) {
|
1235 |
-
target.
|
1236 |
$( element ).valid();
|
1237 |
-
});
|
1238 |
}
|
1239 |
return value === target.val();
|
1240 |
},
|
1241 |
|
1242 |
// http://jqueryvalidation.org/remote-method/
|
1243 |
-
remote: function( value, element, param ) {
|
1244 |
if ( this.optional( element ) ) {
|
1245 |
return "dependency-mismatch";
|
1246 |
}
|
1247 |
|
1248 |
-
|
1249 |
-
|
|
|
|
|
1250 |
|
1251 |
-
if (!this.settings.messages[ element.name ] ) {
|
1252 |
this.settings.messages[ element.name ] = {};
|
1253 |
}
|
1254 |
-
previous.originalMessage = this.settings.messages[ element.name ]
|
1255 |
-
this.settings.messages[ element.name ]
|
1256 |
|
1257 |
param = typeof param === "string" && { url: param } || param;
|
1258 |
-
|
1259 |
-
if ( previous.old ===
|
1260 |
return previous.valid;
|
1261 |
}
|
1262 |
|
1263 |
-
previous.old =
|
1264 |
validator = this;
|
1265 |
this.startRequest( element );
|
1266 |
data = {};
|
1267 |
data[ element.name ] = value;
|
1268 |
$.ajax( $.extend( true, {
|
1269 |
-
url: param,
|
1270 |
mode: "abort",
|
1271 |
port: "validate" + element.name,
|
1272 |
dataType: "json",
|
@@ -1276,18 +1467,19 @@ $.extend( $.validator, {
|
|
1276 |
var valid = response === true || response === "true",
|
1277 |
errors, message, submitted;
|
1278 |
|
1279 |
-
validator.settings.messages[ element.name ]
|
1280 |
if ( valid ) {
|
1281 |
submitted = validator.formSubmitted;
|
1282 |
-
validator.
|
|
|
1283 |
validator.formSubmitted = submitted;
|
1284 |
validator.successList.push( element );
|
1285 |
-
|
1286 |
validator.showErrors();
|
1287 |
} else {
|
1288 |
errors = {};
|
1289 |
-
message = response || validator.defaultMessage( element,
|
1290 |
-
errors[ element.name ] = previous.message =
|
1291 |
validator.invalid[ element.name ] = true;
|
1292 |
validator.showErrors( errors );
|
1293 |
}
|
@@ -1297,61 +1489,44 @@ $.extend( $.validator, {
|
|
1297 |
}, param ) );
|
1298 |
return "pending";
|
1299 |
}
|
1300 |
-
|
1301 |
}
|
1302 |
|
1303 |
-
});
|
1304 |
-
|
1305 |
-
|
1306 |
-
throw "$.format has been deprecated. Please use $.validator.format instead.";
|
1307 |
-
};
|
1308 |
-
|
1309 |
-
// ajax mode: abort
|
1310 |
// usage: $.ajax({ mode: "abort"[, port: "uniqueport"]});
|
1311 |
// if mode:"abort" is used, the previous request on that port (port can be undefined) is aborted via XMLHttpRequest.abort()
|
1312 |
|
1313 |
var pendingRequests = {},
|
1314 |
ajax;
|
|
|
1315 |
// Use a prefilter if available (1.5+)
|
1316 |
if ( $.ajaxPrefilter ) {
|
1317 |
-
$.ajaxPrefilter(function( settings, _, xhr ) {
|
1318 |
var port = settings.port;
|
1319 |
if ( settings.mode === "abort" ) {
|
1320 |
-
if ( pendingRequests[port] ) {
|
1321 |
-
pendingRequests[port].abort();
|
1322 |
}
|
1323 |
-
pendingRequests[port] = xhr;
|
1324 |
}
|
1325 |
-
});
|
1326 |
} else {
|
|
|
1327 |
// Proxy ajax
|
1328 |
ajax = $.ajax;
|
1329 |
$.ajax = function( settings ) {
|
1330 |
var mode = ( "mode" in settings ? settings : $.ajaxSettings ).mode,
|
1331 |
port = ( "port" in settings ? settings : $.ajaxSettings ).port;
|
1332 |
if ( mode === "abort" ) {
|
1333 |
-
if ( pendingRequests[port] ) {
|
1334 |
-
pendingRequests[port].abort();
|
1335 |
}
|
1336 |
-
pendingRequests[port] = ajax.apply(this, arguments);
|
1337 |
-
return pendingRequests[port];
|
1338 |
}
|
1339 |
-
return ajax.apply(this, arguments);
|
1340 |
};
|
1341 |
}
|
1342 |
-
|
1343 |
-
// provides delegate(type: String, delegate: Selector, handler: Callback) plugin for easier event delegation
|
1344 |
-
// handler is only called when $(event.target).is(delegate), in the scope of the jquery-object for event.target
|
1345 |
-
|
1346 |
-
$.extend($.fn, {
|
1347 |
-
validateDelegate: function( delegate, type, handler ) {
|
1348 |
-
return this.bind(type, function( event ) {
|
1349 |
-
var target = $(event.target);
|
1350 |
-
if ( target.is(delegate) ) {
|
1351 |
-
return handler.apply(target, arguments);
|
1352 |
-
}
|
1353 |
-
});
|
1354 |
-
}
|
1355 |
-
});
|
1356 |
-
|
1357 |
}));
|
1 |
+
/*!
|
2 |
+
* jQuery Validation Plugin v1.15.0
|
3 |
+
*
|
4 |
+
* http://jqueryvalidation.org/
|
5 |
+
*
|
6 |
+
* Copyright (c) 2016 Jörn Zaefferer
|
7 |
+
* Released under the MIT license
|
8 |
+
*/
|
9 |
+
(function( factory ) {
|
10 |
+
if ( typeof define === "function" && define.amd ) {
|
11 |
+
define( ["jquery"], factory );
|
12 |
+
} else if (typeof module === "object" && module.exports) {
|
13 |
+
module.exports = factory( require( "jquery" ) );
|
14 |
+
} else {
|
15 |
+
factory( jQuery );
|
16 |
+
}
|
17 |
+
}(function( $ ) {
|
18 |
+
|
19 |
+
$.extend( $.fn, {
|
20 |
|
|
|
21 |
// http://jqueryvalidation.org/validate/
|
22 |
validate: function( options ) {
|
23 |
|
24 |
+
// If nothing is selected, return nothing; can't chain anyway
|
25 |
if ( !this.length ) {
|
26 |
if ( options && options.debug && window.console ) {
|
27 |
console.warn( "Nothing selected, can't validate, returning nothing." );
|
29 |
return;
|
30 |
}
|
31 |
|
32 |
+
// Check if a validator for this form was already created
|
33 |
var validator = $.data( this[ 0 ], "validator" );
|
34 |
if ( validator ) {
|
35 |
return validator;
|
43 |
|
44 |
if ( validator.settings.onsubmit ) {
|
45 |
|
46 |
+
this.on( "click.validate", ":submit", function( event ) {
|
47 |
if ( validator.settings.submitHandler ) {
|
48 |
validator.submitButton = event.target;
|
49 |
}
|
50 |
+
|
51 |
+
// Allow suppressing validation by adding a cancel class to the submit button
|
52 |
+
if ( $( this ).hasClass( "cancel" ) ) {
|
53 |
validator.cancelSubmit = true;
|
54 |
}
|
55 |
|
56 |
+
// Allow suppressing validation by adding the html5 formnovalidate attribute to the submit button
|
57 |
+
if ( $( this ).attr( "formnovalidate" ) !== undefined ) {
|
58 |
validator.cancelSubmit = true;
|
59 |
}
|
60 |
+
} );
|
61 |
|
62 |
+
// Validate the form on submit
|
63 |
+
this.on( "submit.validate", function( event ) {
|
64 |
if ( validator.settings.debug ) {
|
65 |
+
|
66 |
+
// Prevent form submit to be able to see console output
|
67 |
event.preventDefault();
|
68 |
}
|
69 |
function handle() {
|
70 |
+
var hidden, result;
|
71 |
if ( validator.settings.submitHandler ) {
|
72 |
if ( validator.submitButton ) {
|
73 |
+
|
74 |
+
// Insert a hidden input as a replacement for the missing submit button
|
75 |
hidden = $( "<input type='hidden'/>" )
|
76 |
.attr( "name", validator.submitButton.name )
|
77 |
.val( $( validator.submitButton ).val() )
|
78 |
.appendTo( validator.currentForm );
|
79 |
}
|
80 |
+
result = validator.settings.submitHandler.call( validator, validator.currentForm, event );
|
81 |
if ( validator.submitButton ) {
|
82 |
+
|
83 |
+
// And clean up afterwards; thanks to no-block-scope, hidden can be referenced
|
84 |
hidden.remove();
|
85 |
}
|
86 |
+
if ( result !== undefined ) {
|
87 |
+
return result;
|
88 |
+
}
|
89 |
return false;
|
90 |
}
|
91 |
return true;
|
92 |
}
|
93 |
|
94 |
+
// Prevent submit for invalid forms or custom submit handlers
|
95 |
if ( validator.cancelSubmit ) {
|
96 |
validator.cancelSubmit = false;
|
97 |
return handle();
|
106 |
validator.focusInvalid();
|
107 |
return false;
|
108 |
}
|
109 |
+
} );
|
110 |
}
|
111 |
|
112 |
return validator;
|
113 |
},
|
114 |
+
|
115 |
// http://jqueryvalidation.org/valid/
|
116 |
valid: function() {
|
117 |
+
var valid, validator, errorList;
|
118 |
|
119 |
if ( $( this[ 0 ] ).is( "form" ) ) {
|
120 |
valid = this.validate().form();
|
121 |
} else {
|
122 |
+
errorList = [];
|
123 |
valid = true;
|
124 |
validator = $( this[ 0 ].form ).validate();
|
125 |
this.each( function() {
|
126 |
valid = validator.element( this ) && valid;
|
127 |
+
if ( !valid ) {
|
128 |
+
errorList = errorList.concat( validator.errorList );
|
129 |
+
}
|
130 |
+
} );
|
131 |
+
validator.errorList = errorList;
|
132 |
}
|
133 |
return valid;
|
134 |
},
|
135 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
136 |
// http://jqueryvalidation.org/rules/
|
137 |
rules: function( command, argument ) {
|
138 |
+
|
139 |
+
// If nothing is selected, return nothing; can't chain anyway
|
140 |
+
if ( !this.length ) {
|
141 |
+
return;
|
142 |
+
}
|
143 |
+
|
144 |
var element = this[ 0 ],
|
145 |
settings, staticRules, existingRules, data, param, filtered;
|
146 |
|
151 |
switch ( command ) {
|
152 |
case "add":
|
153 |
$.extend( existingRules, $.validator.normalizeRule( argument ) );
|
154 |
+
|
155 |
+
// Remove messages from rules, but allow them to be set separately
|
156 |
delete existingRules.messages;
|
157 |
staticRules[ element.name ] = existingRules;
|
158 |
if ( argument.messages ) {
|
171 |
if ( method === "required" ) {
|
172 |
$( element ).removeAttr( "aria-required" );
|
173 |
}
|
174 |
+
} );
|
175 |
return filtered;
|
176 |
}
|
177 |
}
|
185 |
$.validator.staticRules( element )
|
186 |
), element );
|
187 |
|
188 |
+
// Make sure required is at front
|
189 |
if ( data.required ) {
|
190 |
param = data.required;
|
191 |
delete data.required;
|
193 |
$( element ).attr( "aria-required", "true" );
|
194 |
}
|
195 |
|
196 |
+
// Make sure remote is at back
|
197 |
if ( data.remote ) {
|
198 |
param = data.remote;
|
199 |
delete data.remote;
|
200 |
+
data = $.extend( data, { remote: param } );
|
201 |
}
|
202 |
|
203 |
return data;
|
204 |
}
|
205 |
+
} );
|
206 |
|
207 |
// Custom selectors
|
208 |
$.extend( $.expr[ ":" ], {
|
209 |
+
|
210 |
// http://jqueryvalidation.org/blank-selector/
|
211 |
blank: function( a ) {
|
212 |
return !$.trim( "" + $( a ).val() );
|
213 |
},
|
214 |
+
|
215 |
// http://jqueryvalidation.org/filled-selector/
|
216 |
filled: function( a ) {
|
217 |
+
var val = $( a ).val();
|
218 |
+
return val !== null && !!$.trim( "" + val );
|
219 |
},
|
220 |
+
|
221 |
// http://jqueryvalidation.org/unchecked-selector/
|
222 |
unchecked: function( a ) {
|
223 |
return !$( a ).prop( "checked" );
|
224 |
}
|
225 |
+
} );
|
226 |
|
227 |
+
// Constructor for validator
|
228 |
$.validator = function( options, form ) {
|
229 |
this.settings = $.extend( true, {}, $.validator.defaults, options );
|
230 |
this.currentForm = form;
|
240 |
return $.validator.format.apply( this, args );
|
241 |
};
|
242 |
}
|
243 |
+
if ( params === undefined ) {
|
244 |
+
return source;
|
245 |
+
}
|
246 |
if ( arguments.length > 2 && params.constructor !== Array ) {
|
247 |
params = $.makeArray( arguments ).slice( 1 );
|
248 |
}
|
252 |
$.each( params, function( i, n ) {
|
253 |
source = source.replace( new RegExp( "\\{" + i + "\\}", "g" ), function() {
|
254 |
return n;
|
255 |
+
} );
|
256 |
+
} );
|
257 |
return source;
|
258 |
};
|
259 |
|
264 |
groups: {},
|
265 |
rules: {},
|
266 |
errorClass: "error",
|
267 |
+
pendingClass: "pending",
|
268 |
validClass: "valid",
|
269 |
errorElement: "label",
|
270 |
+
focusCleanup: false,
|
271 |
focusInvalid: true,
|
272 |
errorContainer: $( [] ),
|
273 |
errorLabelContainer: $( [] ),
|
277 |
onfocusin: function( element ) {
|
278 |
this.lastActive = element;
|
279 |
|
280 |
+
// Hide error label and remove error class on focus if enabled
|
281 |
+
if ( this.settings.focusCleanup ) {
|
282 |
if ( this.settings.unhighlight ) {
|
283 |
this.settings.unhighlight.call( this, element, this.settings.errorClass, this.settings.validClass );
|
284 |
}
|
291 |
}
|
292 |
},
|
293 |
onkeyup: function( element, event ) {
|
294 |
+
|
295 |
+
// Avoid revalidate the field when pressing one of the following keys
|
296 |
+
// Shift => 16
|
297 |
+
// Ctrl => 17
|
298 |
+
// Alt => 18
|
299 |
+
// Caps lock => 20
|
300 |
+
// End => 35
|
301 |
+
// Home => 36
|
302 |
+
// Left arrow => 37
|
303 |
+
// Up arrow => 38
|
304 |
+
// Right arrow => 39
|
305 |
+
// Down arrow => 40
|
306 |
+
// Insert => 45
|
307 |
+
// Num lock => 144
|
308 |
+
// AltGr key => 225
|
309 |
+
var excludedKeys = [
|
310 |
+
16, 17, 18, 20, 35, 36, 37,
|
311 |
+
38, 39, 40, 45, 144, 225
|
312 |
+
];
|
313 |
+
|
314 |
+
if ( event.which === 9 && this.elementValue( element ) === "" || $.inArray( event.keyCode, excludedKeys ) !== -1 ) {
|
315 |
return;
|
316 |
+
} else if ( element.name in this.submitted || element.name in this.invalid ) {
|
317 |
this.element( element );
|
318 |
}
|
319 |
},
|
320 |
onclick: function( element ) {
|
321 |
+
|
322 |
+
// Click on selects, radiobuttons and checkboxes
|
323 |
if ( element.name in this.submitted ) {
|
324 |
this.element( element );
|
325 |
|
326 |
+
// Or option elements, check parent select in that case
|
327 |
} else if ( element.parentNode.name in this.submitted ) {
|
328 |
this.element( element.parentNode );
|
329 |
}
|
358 |
dateISO: "Please enter a valid date ( ISO ).",
|
359 |
number: "Please enter a valid number.",
|
360 |
digits: "Please enter only digits.",
|
|
|
361 |
equalTo: "Please enter the same value again.",
|
362 |
maxlength: $.validator.format( "Please enter no more than {0} characters." ),
|
363 |
minlength: $.validator.format( "Please enter at least {0} characters." ),
|
364 |
rangelength: $.validator.format( "Please enter a value between {0} and {1} characters long." ),
|
365 |
range: $.validator.format( "Please enter a value between {0} and {1}." ),
|
366 |
max: $.validator.format( "Please enter a value less than or equal to {0}." ),
|
367 |
+
min: $.validator.format( "Please enter a value greater than or equal to {0}." ),
|
368 |
+
step: $.validator.format( "Please enter a multiple of {0}." )
|
369 |
},
|
370 |
|
371 |
autoCreateRanges: false,
|
391 |
}
|
392 |
$.each( value, function( index, name ) {
|
393 |
groups[ name ] = key;
|
394 |
+
} );
|
395 |
+
} );
|
396 |
rules = this.settings.rules;
|
397 |
$.each( rules, function( key, value ) {
|
398 |
rules[ key ] = $.validator.normalizeRule( value );
|
399 |
+
} );
|
400 |
|
401 |
function delegate( event ) {
|
402 |
+
var validator = $.data( this.form, "validator" ),
|
403 |
eventType = "on" + event.type.replace( /^validate/, "" ),
|
404 |
settings = validator.settings;
|
405 |
+
if ( settings[ eventType ] && !$( this ).is( settings.ignore ) ) {
|
406 |
+
settings[ eventType ].call( validator, this, event );
|
407 |
}
|
408 |
}
|
409 |
+
|
410 |
$( this.currentForm )
|
411 |
+
.on( "focusin.validate focusout.validate keyup.validate",
|
412 |
+
":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'], " +
|
413 |
+
"[type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], " +
|
414 |
+
"[type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'], " +
|
415 |
+
"[type='radio'], [type='checkbox'], [contenteditable]", delegate )
|
416 |
+
|
417 |
// Support: Chrome, oldIE
|
418 |
// "select" is provided as event.target when clicking a option
|
419 |
+
.on( "click.validate", "select, option, [type='radio'], [type='checkbox']", delegate );
|
420 |
|
421 |
if ( this.settings.invalidHandler ) {
|
422 |
+
$( this.currentForm ).on( "invalid-form.validate", this.settings.invalidHandler );
|
423 |
}
|
424 |
|
425 |
// Add aria-required to any Static/Data/Class required fields before first validation
|
431 |
form: function() {
|
432 |
this.checkForm();
|
433 |
$.extend( this.submitted, this.errorMap );
|
434 |
+
this.invalid = $.extend( {}, this.errorMap );
|
435 |
if ( !this.valid() ) {
|
436 |
+
$( this.currentForm ).triggerHandler( "invalid-form", [ this ] );
|
437 |
}
|
438 |
this.showErrors();
|
439 |
return this.valid();
|
451 |
element: function( element ) {
|
452 |
var cleanElement = this.clean( element ),
|
453 |
checkElement = this.validationTargetFor( cleanElement ),
|
454 |
+
v = this,
|
455 |
+
result = true,
|
456 |
+
rs, group;
|
457 |
|
458 |
if ( checkElement === undefined ) {
|
459 |
delete this.invalid[ cleanElement.name ];
|
461 |
this.prepareElement( checkElement );
|
462 |
this.currentElements = $( checkElement );
|
463 |
|
464 |
+
// If this element is grouped, then validate all group elements already
|
465 |
+
// containing a value
|
466 |
+
group = this.groups[ checkElement.name ];
|
467 |
+
if ( group ) {
|
468 |
+
$.each( this.groups, function( name, testgroup ) {
|
469 |
+
if ( testgroup === group && name !== checkElement.name ) {
|
470 |
+
cleanElement = v.validationTargetFor( v.clean( v.findByName( name ) ) );
|
471 |
+
if ( cleanElement && cleanElement.name in v.invalid ) {
|
472 |
+
v.currentElements.push( cleanElement );
|
473 |
+
result = result && v.check( cleanElement );
|
474 |
+
}
|
475 |
+
}
|
476 |
+
} );
|
477 |
+
}
|
478 |
+
|
479 |
+
rs = this.check( checkElement ) !== false;
|
480 |
+
result = result && rs;
|
481 |
+
if ( rs ) {
|
482 |
+
this.invalid[ checkElement.name ] = false;
|
483 |
} else {
|
484 |
this.invalid[ checkElement.name ] = true;
|
485 |
}
|
|
|
|
|
|
|
486 |
|
487 |
+
if ( !this.numberOfInvalids() ) {
|
488 |
+
|
489 |
+
// Hide error containers on last error
|
490 |
+
this.toHide = this.toHide.add( this.containers );
|
491 |
+
}
|
492 |
+
this.showErrors();
|
493 |
+
|
494 |
+
// Add aria-invalid status for screen readers
|
495 |
+
$( element ).attr( "aria-invalid", !rs );
|
496 |
}
|
497 |
+
|
498 |
return result;
|
499 |
},
|
500 |
|
501 |
// http://jqueryvalidation.org/Validator.showErrors/
|
502 |
showErrors: function( errors ) {
|
503 |
if ( errors ) {
|
504 |
+
var validator = this;
|
505 |
+
|
506 |
+
// Add items to error list and map
|
507 |
$.extend( this.errorMap, errors );
|
508 |
+
this.errorList = $.map( this.errorMap, function( message, name ) {
|
509 |
+
return {
|
510 |
+
message: message,
|
511 |
+
element: validator.findByName( name )[ 0 ]
|
512 |
+
};
|
513 |
+
} );
|
514 |
+
|
515 |
+
// Remove items from success list
|
516 |
this.successList = $.grep( this.successList, function( element ) {
|
517 |
return !( element.name in errors );
|
518 |
+
} );
|
519 |
}
|
520 |
if ( this.settings.showErrors ) {
|
521 |
this.settings.showErrors.call( this, this.errorMap, this.errorList );
|
529 |
if ( $.fn.resetForm ) {
|
530 |
$( this.currentForm ).resetForm();
|
531 |
}
|
532 |
+
this.invalid = {};
|
533 |
this.submitted = {};
|
|
|
534 |
this.prepareForm();
|
535 |
this.hideErrors();
|
536 |
+
var elements = this.elements()
|
537 |
+
.removeData( "previousValue" )
|
538 |
+
.removeAttr( "aria-invalid" );
|
539 |
+
|
540 |
+
this.resetElements( elements );
|
541 |
+
},
|
542 |
+
|
543 |
+
resetElements: function( elements ) {
|
544 |
+
var i;
|
545 |
+
|
546 |
+
if ( this.settings.unhighlight ) {
|
547 |
+
for ( i = 0; elements[ i ]; i++ ) {
|
548 |
+
this.settings.unhighlight.call( this, elements[ i ],
|
549 |
+
this.settings.errorClass, "" );
|
550 |
+
this.findByName( elements[ i ].name ).removeClass( this.settings.validClass );
|
551 |
+
}
|
552 |
+
} else {
|
553 |
+
elements
|
554 |
.removeClass( this.settings.errorClass )
|
555 |
+
.removeClass( this.settings.validClass );
|
556 |
+
}
|
557 |
},
|
558 |
|
559 |
numberOfInvalids: function() {
|
565 |
var count = 0,
|
566 |
i;
|
567 |
for ( i in obj ) {
|
568 |
+
if ( obj[ i ] ) {
|
569 |
+
count++;
|
570 |
+
}
|
571 |
}
|
572 |
return count;
|
573 |
},
|
592 |
focusInvalid: function() {
|
593 |
if ( this.settings.focusInvalid ) {
|
594 |
try {
|
595 |
+
$( this.findLastActive() || this.errorList.length && this.errorList[ 0 ].element || [] )
|
596 |
.filter( ":visible" )
|
597 |
.focus()
|
598 |
+
|
599 |
+
// Manually trigger focusin event; without it, focusin handler isn't called, findLastActive won't have anything to find
|
600 |
.trigger( "focusin" );
|
601 |
} catch ( e ) {
|
602 |
+
|
603 |
+
// Ignore IE throwing errors when focusing hidden elements
|
604 |
}
|
605 |
}
|
606 |
},
|
609 |
var lastActive = this.lastActive;
|
610 |
return lastActive && $.grep( this.errorList, function( n ) {
|
611 |
return n.element.name === lastActive.name;
|
612 |
+
} ).length === 1 && lastActive;
|
613 |
},
|
614 |
|
615 |
elements: function() {
|
616 |
var validator = this,
|
617 |
rulesCache = {};
|
618 |
|
619 |
+
// Select all valid inputs inside the form (no submit or reset buttons)
|
620 |
return $( this.currentForm )
|
621 |
+
.find( "input, select, textarea, [contenteditable]" )
|
622 |
+
.not( ":submit, :reset, :image, :disabled" )
|
623 |
.not( this.settings.ignore )
|
624 |
.filter( function() {
|
625 |
+
var name = this.name || $( this ).attr( "name" ); // For contenteditable
|
626 |
+
if ( !name && validator.settings.debug && window.console ) {
|
627 |
console.error( "%o has no name assigned", this );
|
628 |
}
|
629 |
|
630 |
+
// Set form expando on contenteditable
|
631 |
+
if ( this.hasAttribute( "contenteditable" ) ) {
|
632 |
+
this.form = $( this ).closest( "form" )[ 0 ];
|
633 |
+
}
|
634 |
+
|
635 |
+
// Select only the first element for each name, and only those with rules specified
|
636 |
+
if ( name in rulesCache || !validator.objectLength( $( this ).rules() ) ) {
|
637 |
return false;
|
638 |
}
|
639 |
|
640 |
+
rulesCache[ name ] = true;
|
641 |
return true;
|
642 |
+
} );
|
643 |
},
|
644 |
|
645 |
clean: function( selector ) {
|
651 |
return $( this.settings.errorElement + "." + errorClass, this.errorContext );
|
652 |
},
|
653 |
|
654 |
+
resetInternals: function() {
|
655 |
this.successList = [];
|
656 |
this.errorList = [];
|
657 |
this.errorMap = {};
|
658 |
this.toShow = $( [] );
|
659 |
this.toHide = $( [] );
|
660 |
+
},
|
661 |
+
|
662 |
+
reset: function() {
|
663 |
+
this.resetInternals();
|
664 |
this.currentElements = $( [] );
|
665 |
},
|
666 |
|
675 |
},
|
676 |
|
677 |
elementValue: function( element ) {
|
678 |
+
var $element = $( element ),
|
679 |
+
type = element.type,
|
680 |
+
val, idx;
|
681 |
|
682 |
if ( type === "radio" || type === "checkbox" ) {
|
683 |
+
return this.findByName( element.name ).filter( ":checked" ).val();
|
684 |
} else if ( type === "number" && typeof element.validity !== "undefined" ) {
|
685 |
+
return element.validity.badInput ? "NaN" : $element.val();
|
686 |
+
}
|
687 |
+
|
688 |
+
if ( element.hasAttribute( "contenteditable" ) ) {
|
689 |
+
val = $element.text();
|
690 |
+
} else {
|
691 |
+
val = $element.val();
|
692 |
+
}
|
693 |
+
|
694 |
+
if ( type === "file" ) {
|
695 |
+
|
696 |
+
// Modern browser (chrome & safari)
|
697 |
+
if ( val.substr( 0, 12 ) === "C:\\fakepath\\" ) {
|
698 |
+
return val.substr( 12 );
|
699 |
+
}
|
700 |
+
|
701 |
+
// Legacy browsers
|
702 |
+
// Unix-based path
|
703 |
+
idx = val.lastIndexOf( "/" );
|
704 |
+
if ( idx >= 0 ) {
|
705 |
+
return val.substr( idx + 1 );
|
706 |
+
}
|
707 |
+
|
708 |
+
// Windows-based path
|
709 |
+
idx = val.lastIndexOf( "\\" );
|
710 |
+
if ( idx >= 0 ) {
|
711 |
+
return val.substr( idx + 1 );
|
712 |
+
}
|
713 |
+
|
714 |
+
// Just the file name
|
715 |
+
return val;
|
716 |
}
|
717 |
|
|
|
718 |
if ( typeof val === "string" ) {
|
719 |
+
return val.replace( /\r/g, "" );
|
720 |
}
|
721 |
return val;
|
722 |
},
|
727 |
var rules = $( element ).rules(),
|
728 |
rulesCount = $.map( rules, function( n, i ) {
|
729 |
return i;
|
730 |
+
} ).length,
|
731 |
dependencyMismatch = false,
|
732 |
val = this.elementValue( element ),
|
733 |
result, method, rule;
|
734 |
|
735 |
+
// If a normalizer is defined for this element, then
|
736 |
+
// call it to retreive the changed value instead
|
737 |
+
// of using the real one.
|
738 |
+
// Note that `this` in the normalizer is `element`.
|
739 |
+
if ( typeof rules.normalizer === "function" ) {
|
740 |
+
val = rules.normalizer.call( element, val );
|
741 |
+
|
742 |
+
if ( typeof val !== "string" ) {
|
743 |
+
throw new TypeError( "The normalizer should return a string value." );
|
744 |
+
}
|
745 |
+
|
746 |
+
// Delete the normalizer from rules to avoid treating
|
747 |
+
// it as a pre-defined method.
|
748 |
+
delete rules.normalizer;
|
749 |
+
}
|
750 |
+
|
751 |
for ( method in rules ) {
|
752 |
rule = { method: method, parameters: rules[ method ] };
|
753 |
try {
|
|
|
754 |
result = $.validator.methods[ method ].call( this, val, element, rule.parameters );
|
755 |
|
756 |
+
// If a method indicates that the field is optional and therefore valid,
|
757 |
// don't mark it as valid when there are no other rules
|
758 |
if ( result === "dependency-mismatch" && rulesCount === 1 ) {
|
759 |
dependencyMismatch = true;
|
774 |
if ( this.settings.debug && window.console ) {
|
775 |
console.log( "Exception occurred when checking element " + element.id + ", check the '" + rule.method + "' method.", e );
|
776 |
}
|
777 |
+
if ( e instanceof TypeError ) {
|
778 |
+
e.message += ". Exception occurred when checking element " + element.id + ", check the '" + rule.method + "' method.";
|
779 |
+
}
|
780 |
+
|
781 |
throw e;
|
782 |
}
|
783 |
}
|
790 |
return true;
|
791 |
},
|
792 |
|
793 |
+
// Return the custom message for the given element and validation method
|
794 |
// specified in the element's HTML5 data attribute
|
795 |
// return the generic message if present and no method specific message is present
|
796 |
customDataMessage: function( element, method ) {
|
798 |
method.substring( 1 ).toLowerCase() ) || $( element ).data( "msg" );
|
799 |
},
|
800 |
|
801 |
+
// Return the custom message for the given element name and validation method
|
802 |
customMessage: function( name, method ) {
|
803 |
var m = this.settings.messages[ name ];
|
804 |
+
return m && ( m.constructor === String ? m : m[ method ] );
|
805 |
},
|
806 |
|
807 |
+
// Return the first defined argument, allowing empty strings
|
808 |
findDefined: function() {
|
809 |
+
for ( var i = 0; i < arguments.length; i++ ) {
|
810 |
if ( arguments[ i ] !== undefined ) {
|
811 |
return arguments[ i ];
|
812 |
}
|
814 |
return undefined;
|
815 |
},
|
816 |
|
817 |
+
defaultMessage: function( element, rule ) {
|
818 |
+
var message = this.findDefined(
|
819 |
+
this.customMessage( element.name, rule.method ),
|
820 |
+
this.customDataMessage( element, rule.method ),
|
|
|
|
|
|
|
|
|
|
|
|
|
821 |
|
822 |
+
// 'title' is never undefined, so handle empty string as undefined
|
823 |
+
!this.settings.ignoreTitle && element.title || undefined,
|
824 |
+
$.validator.messages[ rule.method ],
|
825 |
+
"<strong>Warning: No message defined for " + element.name + "</strong>"
|
826 |
+
),
|
827 |
theregex = /\$?\{(\d+)\}/g;
|
828 |
if ( typeof message === "function" ) {
|
829 |
message = message.call( this, rule.parameters, element );
|
830 |
} else if ( theregex.test( message ) ) {
|
831 |
message = $.validator.format( message.replace( theregex, "{$1}" ), rule.parameters );
|
832 |
}
|
833 |
+
|
834 |
+
return message;
|
835 |
+
},
|
836 |
+
|
837 |
+
formatAndAdd: function( element, rule ) {
|
838 |
+
var message = this.defaultMessage( element, rule );
|
839 |
+
|
840 |
+
this.errorList.push( {
|
841 |
message: message,
|
842 |
element: element,
|
843 |
method: rule.method
|
844 |
+
} );
|
845 |
|
846 |
this.errorMap[ element.name ] = message;
|
847 |
this.submitted[ element.name ] = message;
|
886 |
},
|
887 |
|
888 |
invalidElements: function() {
|
889 |
+
return $( this.errorList ).map( function() {
|
890 |
return this.element;
|
891 |
+
} );
|
892 |
},
|
893 |
|
894 |
showLabel: function( element, message ) {
|
895 |
+
var place, group, errorID, v,
|
896 |
error = this.errorsFor( element ),
|
897 |
elementID = this.idOrName( element ),
|
898 |
describedBy = $( element ).attr( "aria-describedby" );
|
899 |
+
|
900 |
if ( error.length ) {
|
901 |
+
|
902 |
+
// Refresh error/success class
|
903 |
error.removeClass( this.settings.validClass ).addClass( this.settings.errorClass );
|
904 |
+
|
905 |
+
// Replace message on existing label
|
906 |
error.html( message );
|
907 |
} else {
|
908 |
+
|
909 |
+
// Create error element
|
910 |
error = $( "<" + this.settings.errorElement + ">" )
|
911 |
.attr( "id", elementID + "-error" )
|
912 |
.addClass( this.settings.errorClass )
|
915 |
// Maintain reference to the element to be placed into the DOM
|
916 |
place = error;
|
917 |
if ( this.settings.wrapper ) {
|
918 |
+
|
919 |
+
// Make sure the element is visible, even in IE
|
920 |
// actually showing the wrapped element is handled elsewhere
|
921 |
place = error.hide().show().wrap( "<" + this.settings.wrapper + "/>" ).parent();
|
922 |
}
|
930 |
|
931 |
// Link error back to the element
|
932 |
if ( error.is( "label" ) ) {
|
933 |
+
|
934 |
// If the error is a label, then associate using 'for'
|
935 |
error.attr( "for", elementID );
|
936 |
+
|
937 |
// If the element is not a child of an associated label, then it's necessary
|
938 |
// to explicitly apply aria-describedby
|
939 |
+
} else if ( error.parents( "label[for='" + this.escapeCssMeta( elementID ) + "']" ).length === 0 ) {
|
940 |
errorID = error.attr( "id" );
|
941 |
+
|
942 |
// Respect existing non-error aria-describedby
|
943 |
if ( !describedBy ) {
|
944 |
describedBy = errorID;
|
945 |
+
} else if ( !describedBy.match( new RegExp( "\\b" + this.escapeCssMeta( errorID ) + "\\b" ) ) ) {
|
946 |
+
|
947 |
// Add to end of list if not already present
|
948 |
describedBy += " " + errorID;
|
949 |
}
|
952 |
// If this element is grouped, then assign to all elements in the same group
|
953 |
group = this.groups[ element.name ];
|
954 |
if ( group ) {
|
955 |
+
v = this;
|
956 |
+
$.each( v.groups, function( name, testgroup ) {
|
957 |
if ( testgroup === group ) {
|
958 |
+
$( "[name='" + v.escapeCssMeta( name ) + "']", v.currentForm )
|
959 |
.attr( "aria-describedby", error.attr( "id" ) );
|
960 |
}
|
961 |
+
} );
|
962 |
}
|
963 |
}
|
964 |
}
|
974 |
},
|
975 |
|
976 |
errorsFor: function( element ) {
|
977 |
+
var name = this.escapeCssMeta( this.idOrName( element ) ),
|
978 |
describer = $( element ).attr( "aria-describedby" ),
|
979 |
selector = "label[for='" + name + "'], label[for='" + name + "'] *";
|
980 |
+
|
981 |
+
// 'aria-describedby' should directly reference the error element
|
982 |
if ( describer ) {
|
983 |
+
selector = selector + ", #" + this.escapeCssMeta( describer )
|
984 |
+
.replace( /\s+/g, ", #" );
|
985 |
}
|
986 |
+
|
987 |
return this
|
988 |
.errors()
|
989 |
.filter( selector );
|
990 |
},
|
991 |
|
992 |
+
// See https://api.jquery.com/category/selectors/, for CSS
|
993 |
+
// meta-characters that should be escaped in order to be used with JQuery
|
994 |
+
// as a literal part of a name/id or any selector.
|
995 |
+
escapeCssMeta: function( string ) {
|
996 |
+
return string.replace( /([\\!"#$%&'()*+,./:;<=>?@\[\]^`{|}~])/g, "\\$1" );
|
997 |
+
},
|
998 |
+
|
999 |
idOrName: function( element ) {
|
1000 |
return this.groups[ element.name ] || ( this.checkable( element ) ? element.name : element.id || element.name );
|
1001 |
},
|
1002 |
|
1003 |
validationTargetFor: function( element ) {
|
1004 |
+
|
1005 |
+
// If radio/checkbox, validate first element in group instead
|
1006 |
if ( this.checkable( element ) ) {
|
1007 |
+
element = this.findByName( element.name );
|
1008 |
}
|
1009 |
+
|
1010 |
+
// Always apply ignore filter
|
1011 |
+
return $( element ).not( this.settings.ignore )[ 0 ];
|
1012 |
},
|
1013 |
|
1014 |
checkable: function( element ) {
|
1016 |
},
|
1017 |
|
1018 |
findByName: function( name ) {
|
1019 |
+
return $( this.currentForm ).find( "[name='" + this.escapeCssMeta( name ) + "']" );
|
1020 |
},
|
1021 |
|
1022 |
getLength: function( value, element ) {
|
1032 |
},
|
1033 |
|
1034 |
depend: function( param, element ) {
|
1035 |
+
return this.dependTypes[ typeof param ] ? this.dependTypes[ typeof param ]( param, element ) : true;
|
1036 |
},
|
1037 |
|
1038 |
dependTypes: {
|
1055 |
startRequest: function( element ) {
|
1056 |
if ( !this.pending[ element.name ] ) {
|
1057 |
this.pendingRequest++;
|
1058 |
+
$( element ).addClass( this.settings.pendingClass );
|
1059 |
this.pending[ element.name ] = true;
|
1060 |
}
|
1061 |
},
|
1062 |
|
1063 |
stopRequest: function( element, valid ) {
|
1064 |
this.pendingRequest--;
|
1065 |
+
|
1066 |
+
// Sometimes synchronization fails, make sure pendingRequest is never < 0
|
1067 |
if ( this.pendingRequest < 0 ) {
|
1068 |
this.pendingRequest = 0;
|
1069 |
}
|
1070 |
delete this.pending[ element.name ];
|
1071 |
+
$( element ).removeClass( this.settings.pendingClass );
|
1072 |
if ( valid && this.pendingRequest === 0 && this.formSubmitted && this.form() ) {
|
1073 |
$( this.currentForm ).submit();
|
1074 |
this.formSubmitted = false;
|
1075 |
+
} else if ( !valid && this.pendingRequest === 0 && this.formSubmitted ) {
|
1076 |
+
$( this.currentForm ).triggerHandler( "invalid-form", [ this ] );
|
1077 |
this.formSubmitted = false;
|
1078 |
}
|
1079 |
},
|
1080 |
|
1081 |
+
previousValue: function( element, method ) {
|
1082 |
return $.data( element, "previousValue" ) || $.data( element, "previousValue", {
|
1083 |
old: null,
|
1084 |
valid: true,
|
1085 |
+
message: this.defaultMessage( element, { method: method } )
|
1086 |
+
} );
|
1087 |
+
},
|
1088 |
+
|
1089 |
+
// Cleans up all forms and elements, removes validator-specific events
|
1090 |
+
destroy: function() {
|
1091 |
+
this.resetForm();
|
1092 |
+
|
1093 |
+
$( this.currentForm )
|
1094 |
+
.off( ".validate" )
|
1095 |
+
.removeData( "validator" )
|
1096 |
+
.find( ".validate-equalTo-blur" )
|
1097 |
+
.off( ".validate-equalTo" )
|
1098 |
+
.removeClass( "validate-equalTo-blur" );
|
1099 |
}
|
1100 |
|
1101 |
},
|
1126 |
if ( classes ) {
|
1127 |
$.each( classes.split( " " ), function() {
|
1128 |
if ( this in $.validator.classRuleSettings ) {
|
1129 |
+
$.extend( rules, $.validator.classRuleSettings[ this ] );
|
1130 |
}
|
1131 |
+
} );
|
1132 |
}
|
1133 |
return rules;
|
1134 |
},
|
1135 |
|
1136 |
+
normalizeAttributeRule: function( rules, type, method, value ) {
|
1137 |
+
|
1138 |
+
// Convert the value to a number for number inputs, and for text for backwards compability
|
1139 |
+
// allows type="date" and others to be compared as strings
|
1140 |
+
if ( /min|max|step/.test( method ) && ( type === null || /number|range|text/.test( type ) ) ) {
|
1141 |
+
value = Number( value );
|
1142 |
+
|
1143 |
+
// Support Opera Mini, which returns NaN for undefined minlength
|
1144 |
+
if ( isNaN( value ) ) {
|
1145 |
+
value = undefined;
|
1146 |
+
}
|
1147 |
+
}
|
1148 |
+
|
1149 |
+
if ( value || value === 0 ) {
|
1150 |
+
rules[ method ] = value;
|
1151 |
+
} else if ( type === method && type !== "range" ) {
|
1152 |
+
|
1153 |
+
// Exception: the jquery validate 'range' method
|
1154 |
+
// does not test for the html5 'range' type
|
1155 |
+
rules[ method ] = true;
|
1156 |
+
}
|
1157 |
+
},
|
1158 |
+
|
1159 |
attributeRules: function( element ) {
|
1160 |
var rules = {},
|
1161 |
$element = $( element ),
|
1164 |
|
1165 |
for ( method in $.validator.methods ) {
|
1166 |
|
1167 |
+
// Support for <input required> in both html5 and older browsers
|
1168 |
if ( method === "required" ) {
|
1169 |
value = element.getAttribute( method );
|
1170 |
+
|
1171 |
// Some browsers return an empty string for the required attribute
|
1172 |
// and non-HTML5 browsers might have required="" markup
|
1173 |
if ( value === "" ) {
|
1174 |
value = true;
|
1175 |
}
|
1176 |
+
|
1177 |
+
// Force non-HTML5 browsers to return bool
|
1178 |
value = !!value;
|
1179 |
} else {
|
1180 |
value = $element.attr( method );
|
1181 |
}
|
1182 |
|
1183 |
+
this.normalizeAttributeRule( rules, type, method, value );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1184 |
}
|
1185 |
|
1186 |
+
// 'maxlength' may be returned as -1, 2147483647 ( IE ) and 524288 ( safari ) for text inputs
|
1187 |
if ( rules.maxlength && /-1|2147483647|524288/.test( rules.maxlength ) ) {
|
1188 |
delete rules.maxlength;
|
1189 |
}
|
1192 |
},
|
1193 |
|
1194 |
dataRules: function( element ) {
|
1195 |
+
var rules = {},
|
1196 |
+
$element = $( element ),
|
1197 |
+
type = element.getAttribute( "type" ),
|
1198 |
+
method, value;
|
1199 |
+
|
1200 |
for ( method in $.validator.methods ) {
|
1201 |
value = $element.data( "rule" + method.charAt( 0 ).toUpperCase() + method.substring( 1 ).toLowerCase() );
|
1202 |
+
this.normalizeAttributeRule( rules, type, method, value );
|
|
|
|
|
1203 |
}
|
1204 |
return rules;
|
1205 |
},
|
1215 |
},
|
1216 |
|
1217 |
normalizeRules: function( rules, element ) {
|
1218 |
+
|
1219 |
+
// Handle dependency check
|
1220 |
$.each( rules, function( prop, val ) {
|
1221 |
+
|
1222 |
+
// Ignore rule when param is explicitly false, eg. required:false
|
1223 |
if ( val === false ) {
|
1224 |
delete rules[ prop ];
|
1225 |
return;
|
1237 |
if ( keepRule ) {
|
1238 |
rules[ prop ] = val.param !== undefined ? val.param : true;
|
1239 |
} else {
|
1240 |
+
$.data( element.form, "validator" ).resetElements( $( element ) );
|
1241 |
delete rules[ prop ];
|
1242 |
}
|
1243 |
}
|
1244 |
+
} );
|
1245 |
|
1246 |
+
// Evaluate parameters
|
1247 |
$.each( rules, function( rule, parameter ) {
|
1248 |
+
rules[ rule ] = $.isFunction( parameter ) && rule !== "normalizer" ? parameter( element ) : parameter;
|
1249 |
+
} );
|
1250 |
|
1251 |
+
// Clean number parameters
|
1252 |
+
$.each( [ "minlength", "maxlength" ], function() {
|
1253 |
if ( rules[ this ] ) {
|
1254 |
rules[ this ] = Number( rules[ this ] );
|
1255 |
}
|
1256 |
+
} );
|
1257 |
+
$.each( [ "rangelength", "range" ], function() {
|
1258 |
var parts;
|
1259 |
if ( rules[ this ] ) {
|
1260 |
if ( $.isArray( rules[ this ] ) ) {
|
1261 |
+
rules[ this ] = [ Number( rules[ this ][ 0 ] ), Number( rules[ this ][ 1 ] ) ];
|
1262 |
} else if ( typeof rules[ this ] === "string" ) {
|
1263 |
+
parts = rules[ this ].replace( /[\[\]]/g, "" ).split( /[\s,]+/ );
|
1264 |
+
rules[ this ] = [ Number( parts[ 0 ] ), Number( parts[ 1 ] ) ];
|
1265 |
}
|
1266 |
}
|
1267 |
+
} );
|
1268 |
|
1269 |
if ( $.validator.autoCreateRanges ) {
|
1270 |
+
|
1271 |
+
// Auto-create ranges
|
1272 |
+
if ( rules.min != null && rules.max != null ) {
|
1273 |
rules.range = [ rules.min, rules.max ];
|
1274 |
delete rules.min;
|
1275 |
delete rules.max;
|
1276 |
}
|
1277 |
+
if ( rules.minlength != null && rules.maxlength != null ) {
|
1278 |
rules.rangelength = [ rules.minlength, rules.maxlength ];
|
1279 |
delete rules.minlength;
|
1280 |
delete rules.maxlength;
|
1290 |
var transformed = {};
|
1291 |
$.each( data.split( /\s/ ), function() {
|
1292 |
transformed[ this ] = true;
|
1293 |
+
} );
|
1294 |
data = transformed;
|
1295 |
}
|
1296 |
return data;
|
1305 |
}
|
1306 |
},
|
1307 |
|
1308 |
+
// http://jqueryvalidation.org/jQuery.validator.methods/
|
1309 |
methods: {
|
1310 |
|
1311 |
// http://jqueryvalidation.org/required-method/
|
1312 |
required: function( value, element, param ) {
|
1313 |
+
|
1314 |
+
// Check if dependency is met
|
1315 |
if ( !this.depend( param, element ) ) {
|
1316 |
return "dependency-mismatch";
|
1317 |
}
|
1318 |
if ( element.nodeName.toLowerCase() === "select" ) {
|
1319 |
+
|
1320 |
+
// Could be an array for select-multiple or a string, both are fine this way
|
1321 |
var val = $( element ).val();
|
1322 |
return val && val.length > 0;
|
1323 |
}
|
1324 |
if ( this.checkable( element ) ) {
|
1325 |
return this.getLength( value, element ) > 0;
|
1326 |
}
|
1327 |
+
return value.length > 0;
|
1328 |
},
|
1329 |
|
1330 |
// http://jqueryvalidation.org/email-method/
|
1331 |
email: function( value, element ) {
|
1332 |
+
|
1333 |
+
// From https://html.spec.whatwg.org/multipage/forms.html#valid-e-mail-address
|
1334 |
// Retrieved 2014-01-14
|
1335 |
// If you have a problem with this implementation, report a bug against the above spec
|
1336 |
// Or use custom methods to implement your own email validation
|
1339 |
|
1340 |
// http://jqueryvalidation.org/url-method/
|
1341 |
url: function( value, element ) {
|
1342 |
+
|
1343 |
+
// Copyright (c) 2010-2013 Diego Perini, MIT licensed
|
1344 |
+
// https://gist.github.com/dperini/729294
|
1345 |
+
// see also https://mathiasbynens.be/demo/url-regex
|
1346 |
+
// modified to allow protocol-relative URLs
|
1347 |
+
return this.optional( element ) || /^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})).?)(?::\d{2,5})?(?:[/?#]\S*)?$/i.test( value );
|
1348 |
},
|
1349 |
|
1350 |
// http://jqueryvalidation.org/date-method/
|
1359 |
|
1360 |
// http://jqueryvalidation.org/number-method/
|
1361 |
number: function( value, element ) {
|
1362 |
+
return this.optional( element ) || /^(?:-?\d+|-?\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test( value );
|
1363 |
},
|
1364 |
|
1365 |
// http://jqueryvalidation.org/digits-method/
|
1367 |
return this.optional( element ) || /^\d+$/.test( value );
|
1368 |
},
|
1369 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1370 |
// http://jqueryvalidation.org/minlength-method/
|
1371 |
minlength: function( value, element, param ) {
|
1372 |
+
var length = $.isArray( value ) ? value.length : this.getLength( value, element );
|
1373 |
return this.optional( element ) || length >= param;
|
1374 |
},
|
1375 |
|
1376 |
// http://jqueryvalidation.org/maxlength-method/
|
1377 |
maxlength: function( value, element, param ) {
|
1378 |
+
var length = $.isArray( value ) ? value.length : this.getLength( value, element );
|
1379 |
return this.optional( element ) || length <= param;
|
1380 |
},
|
1381 |
|
1382 |
// http://jqueryvalidation.org/rangelength-method/
|
1383 |
rangelength: function( value, element, param ) {
|
1384 |
+
var length = $.isArray( value ) ? value.length : this.getLength( value, element );
|
1385 |
return this.optional( element ) || ( length >= param[ 0 ] && length <= param[ 1 ] );
|
1386 |
},
|
1387 |
|
1400 |
return this.optional( element ) || ( value >= param[ 0 ] && value <= param[ 1 ] );
|
1401 |
},
|
1402 |
|
1403 |
+
// http://jqueryvalidation.org/step-method/
|
1404 |
+
step: function( value, element, param ) {
|
1405 |
+
var type = $( element ).attr( "type" ),
|
1406 |
+
errorMessage = "Step attribute on input type " + type + " is not supported.",
|
1407 |
+
supportedTypes = [ "text", "number", "range" ],
|
1408 |
+
re = new RegExp( "\\b" + type + "\\b" ),
|
1409 |
+
notSupported = type && !re.test( supportedTypes.join() );
|
1410 |
+
|
1411 |
+
// Works only for text, number and range input types
|
1412 |
+
// TODO find a way to support input types date, datetime, datetime-local, month, time and week
|
1413 |
+
if ( notSupported ) {
|
1414 |
+
throw new Error( errorMessage );
|
1415 |
+
}
|
1416 |
+
return this.optional( element ) || ( value % param === 0 );
|
1417 |
+
},
|
1418 |
+
|
1419 |
// http://jqueryvalidation.org/equalTo-method/
|
1420 |
equalTo: function( value, element, param ) {
|
1421 |
+
|
1422 |
+
// Bind to the blur event of the target in order to revalidate whenever the target field is updated
|
1423 |
var target = $( param );
|
1424 |
+
if ( this.settings.onfocusout && target.not( ".validate-equalTo-blur" ).length ) {
|
1425 |
+
target.addClass( "validate-equalTo-blur" ).on( "blur.validate-equalTo", function() {
|
1426 |
$( element ).valid();
|
1427 |
+
} );
|
1428 |
}
|
1429 |
return value === target.val();
|
1430 |
},
|
1431 |
|
1432 |
// http://jqueryvalidation.org/remote-method/
|
1433 |
+
remote: function( value, element, param, method ) {
|
1434 |
if ( this.optional( element ) ) {
|
1435 |
return "dependency-mismatch";
|
1436 |
}
|
1437 |
|
1438 |
+
method = typeof method === "string" && method || "remote";
|
1439 |
+
|
1440 |
+
var previous = this.previousValue( element, method ),
|
1441 |
+
validator, data, optionDataString;
|
1442 |
|
1443 |
+
if ( !this.settings.messages[ element.name ] ) {
|
1444 |
this.settings.messages[ element.name ] = {};
|
1445 |
}
|
1446 |
+
previous.originalMessage = previous.originalMessage || this.settings.messages[ element.name ][ method ];
|
1447 |
+
this.settings.messages[ element.name ][ method ] = previous.message;
|
1448 |
|
1449 |
param = typeof param === "string" && { url: param } || param;
|
1450 |
+
optionDataString = $.param( $.extend( { data: value }, param.data ) );
|
1451 |
+
if ( previous.old === optionDataString ) {
|
1452 |
return previous.valid;
|
1453 |
}
|
1454 |
|
1455 |
+
previous.old = optionDataString;
|
1456 |
validator = this;
|
1457 |
this.startRequest( element );
|
1458 |
data = {};
|
1459 |
data[ element.name ] = value;
|
1460 |
$.ajax( $.extend( true, {
|
|
|
1461 |
mode: "abort",
|
1462 |
port: "validate" + element.name,
|
1463 |
dataType: "json",
|
1467 |
var valid = response === true || response === "true",
|
1468 |
errors, message, submitted;
|
1469 |
|
1470 |
+
validator.settings.messages[ element.name ][ method ] = previous.originalMessage;
|
1471 |
if ( valid ) {
|
1472 |
submitted = validator.formSubmitted;
|
1473 |
+
validator.resetInternals();
|
1474 |
+
validator.toHide = validator.errorsFor( element );
|
1475 |
validator.formSubmitted = submitted;
|
1476 |
validator.successList.push( element );
|
1477 |
+
validator.invalid[ element.name ] = false;
|
1478 |
validator.showErrors();
|
1479 |
} else {
|
1480 |
errors = {};
|
1481 |
+
message = response || validator.defaultMessage( element, { method: method, parameters: value } );
|
1482 |
+
errors[ element.name ] = previous.message = message;
|
1483 |
validator.invalid[ element.name ] = true;
|
1484 |
validator.showErrors( errors );
|
1485 |
}
|
1489 |
}, param ) );
|
1490 |
return "pending";
|
1491 |
}
|
|
|
1492 |
}
|
1493 |
|
1494 |
+
} );
|
1495 |
+
|
1496 |
+
// Ajax mode: abort
|
|
|
|
|
|
|
|
|
1497 |
// usage: $.ajax({ mode: "abort"[, port: "uniqueport"]});
|
1498 |
// if mode:"abort" is used, the previous request on that port (port can be undefined) is aborted via XMLHttpRequest.abort()
|
1499 |
|
1500 |
var pendingRequests = {},
|
1501 |
ajax;
|
1502 |
+
|
1503 |
// Use a prefilter if available (1.5+)
|
1504 |
if ( $.ajaxPrefilter ) {
|
1505 |
+
$.ajaxPrefilter( function( settings, _, xhr ) {
|
1506 |
var port = settings.port;
|
1507 |
if ( settings.mode === "abort" ) {
|
1508 |
+
if ( pendingRequests[ port ] ) {
|
1509 |
+
pendingRequests[ port ].abort();
|
1510 |
}
|
1511 |
+
pendingRequests[ port ] = xhr;
|
1512 |
}
|
1513 |
+
} );
|
1514 |
} else {
|
1515 |
+
|
1516 |
// Proxy ajax
|
1517 |
ajax = $.ajax;
|
1518 |
$.ajax = function( settings ) {
|
1519 |
var mode = ( "mode" in settings ? settings : $.ajaxSettings ).mode,
|
1520 |
port = ( "port" in settings ? settings : $.ajaxSettings ).port;
|
1521 |
if ( mode === "abort" ) {
|
1522 |
+
if ( pendingRequests[ port ] ) {
|
1523 |
+
pendingRequests[ port ].abort();
|
1524 |
}
|
1525 |
+
pendingRequests[ port ] = ajax.apply( this, arguments );
|
1526 |
+
return pendingRequests[ port ];
|
1527 |
}
|
1528 |
+
return ajax.apply( this, arguments );
|
1529 |
};
|
1530 |
}
|
1531 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1532 |
}));
|
@@ -1,4 +1 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.13.0 - 7/1/2014
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2014 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):a(jQuery)}(function(a){a.extend(a.fn,{validate:function(b){if(!this.length)return void(b&&b.debug&&window.console&&console.warn("Nothing selected, can't validate, returning nothing."));var c=a.data(this[0],"validator");return c?c:(this.attr("novalidate","novalidate"),c=new a.validator(b,this[0]),a.data(this[0],"validator",c),c.settings.onsubmit&&(this.validateDelegate(":submit","click",function(b){c.settings.submitHandler&&(c.submitButton=b.target),a(b.target).hasClass("cancel")&&(c.cancelSubmit=!0),void 0!==a(b.target).attr("formnovalidate")&&(c.cancelSubmit=!0)}),this.submit(function(b){function d(){var d;return c.settings.submitHandler?(c.submitButton&&(d=a("<input type='hidden'/>").attr("name",c.submitButton.name).val(a(c.submitButton).val()).appendTo(c.currentForm)),c.settings.submitHandler.call(c,c.currentForm,b),c.submitButton&&d.remove(),!1):!0}return c.settings.debug&&b.preventDefault(),c.cancelSubmit?(c.cancelSubmit=!1,d()):c.form()?c.pendingRequest?(c.formSubmitted=!0,!1):d():(c.focusInvalid(),!1)})),c)},valid:function(){var b,c;return a(this[0]).is("form")?b=this.validate().form():(b=!0,c=a(this[0].form).validate(),this.each(function(){b=c.element(this)&&b})),b},removeAttrs:function(b){var c={},d=this;return a.each(b.split(/\s/),function(a,b){c[b]=d.attr(b),d.removeAttr(b)}),c},rules:function(b,c){var d,e,f,g,h,i,j=this[0];if(b)switch(d=a.data(j.form,"validator").settings,e=d.rules,f=a.validator.staticRules(j),b){case"add":a.extend(f,a.validator.normalizeRule(c)),delete f.messages,e[j.name]=f,c.messages&&(d.messages[j.name]=a.extend(d.messages[j.name],c.messages));break;case"remove":return c?(i={},a.each(c.split(/\s/),function(b,c){i[c]=f[c],delete f[c],"required"===c&&a(j).removeAttr("aria-required")}),i):(delete e[j.name],f)}return g=a.validator.normalizeRules(a.extend({},a.validator.classRules(j),a.validator.attributeRules(j),a.validator.dataRules(j),a.validator.staticRules(j)),j),g.required&&(h=g.required,delete g.required,g=a.extend({required:h},g),a(j).attr("aria-required","true")),g.remote&&(h=g.remote,delete g.remote,g=a.extend(g,{remote:h})),g}}),a.extend(a.expr[":"],{blank:function(b){return!a.trim(""+a(b).val())},filled:function(b){return!!a.trim(""+a(b).val())},unchecked:function(b){return!a(b).prop("checked")}}),a.validator=function(b,c){this.settings=a.extend(!0,{},a.validator.defaults,b),this.currentForm=c,this.init()},a.validator.format=function(b,c){return 1===arguments.length?function(){var c=a.makeArray(arguments);return c.unshift(b),a.validator.format.apply(this,c)}:(arguments.length>2&&c.constructor!==Array&&(c=a.makeArray(arguments).slice(1)),c.constructor!==Array&&(c=[c]),a.each(c,function(a,c){b=b.replace(new RegExp("\\{"+a+"\\}","g"),function(){return c})}),b)},a.extend(a.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",validClass:"valid",errorElement:"label",focusInvalid:!0,errorContainer:a([]),errorLabelContainer:a([]),onsubmit:!0,ignore:":hidden",ignoreTitle:!1,onfocusin:function(a){this.lastActive=a,this.settings.focusCleanup&&!this.blockFocusCleanup&&(this.settings.unhighlight&&this.settings.unhighlight.call(this,a,this.settings.errorClass,this.settings.validClass),this.hideThese(this.errorsFor(a)))},onfocusout:function(a){this.checkable(a)||!(a.name in this.submitted)&&this.optional(a)||this.element(a)},onkeyup:function(a,b){(9!==b.which||""!==this.elementValue(a))&&(a.name in this.submitted||a===this.lastElement)&&this.element(a)},onclick:function(a){a.name in this.submitted?this.element(a):a.parentNode.name in this.submitted&&this.element(a.parentNode)},highlight:function(b,c,d){"radio"===b.type?this.findByName(b.name).addClass(c).removeClass(d):a(b).addClass(c).removeClass(d)},unhighlight:function(b,c,d){"radio"===b.type?this.findByName(b.name).removeClass(c).addClass(d):a(b).removeClass(c).addClass(d)}},setDefaults:function(b){a.extend(a.validator.defaults,b)},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date ( ISO ).",number:"Please enter a valid number.",digits:"Please enter only digits.",creditcard:"Please enter a valid credit card number.",equalTo:"Please enter the same value again.",maxlength:a.validator.format("Please enter no more than {0} characters."),minlength:a.validator.format("Please enter at least {0} characters."),rangelength:a.validator.format("Please enter a value between {0} and {1} characters long."),range:a.validator.format("Please enter a value between {0} and {1}."),max:a.validator.format("Please enter a value less than or equal to {0}."),min:a.validator.format("Please enter a value greater than or equal to {0}.")},autoCreateRanges:!1,prototype:{init:function(){function b(b){var c=a.data(this[0].form,"validator"),d="on"+b.type.replace(/^validate/,""),e=c.settings;e[d]&&!this.is(e.ignore)&&e[d].call(c,this[0],b)}this.labelContainer=a(this.settings.errorLabelContainer),this.errorContext=this.labelContainer.length&&this.labelContainer||a(this.currentForm),this.containers=a(this.settings.errorContainer).add(this.settings.errorLabelContainer),this.submitted={},this.valueCache={},this.pendingRequest=0,this.pending={},this.invalid={},this.reset();var c,d=this.groups={};a.each(this.settings.groups,function(b,c){"string"==typeof c&&(c=c.split(/\s/)),a.each(c,function(a,c){d[c]=b})}),c=this.settings.rules,a.each(c,function(b,d){c[b]=a.validator.normalizeRule(d)}),a(this.currentForm).validateDelegate(":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'] ,[type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'], [type='radio'], [type='checkbox']","focusin focusout keyup",b).validateDelegate("select, option, [type='radio'], [type='checkbox']","click",b),this.settings.invalidHandler&&a(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler),a(this.currentForm).find("[required], [data-rule-required], .required").attr("aria-required","true")},form:function(){return this.checkForm(),a.extend(this.submitted,this.errorMap),this.invalid=a.extend({},this.errorMap),this.valid()||a(this.currentForm).triggerHandler("invalid-form",[this]),this.showErrors(),this.valid()},checkForm:function(){this.prepareForm();for(var a=0,b=this.currentElements=this.elements();b[a];a++)this.check(b[a]);return this.valid()},element:function(b){var c=this.clean(b),d=this.validationTargetFor(c),e=!0;return this.lastElement=d,void 0===d?delete this.invalid[c.name]:(this.prepareElement(d),this.currentElements=a(d),e=this.check(d)!==!1,e?delete this.invalid[d.name]:this.invalid[d.name]=!0),a(b).attr("aria-invalid",!e),this.numberOfInvalids()||(this.toHide=this.toHide.add(this.containers)),this.showErrors(),e},showErrors:function(b){if(b){a.extend(this.errorMap,b),this.errorList=[];for(var c in b)this.errorList.push({message:b[c],element:this.findByName(c)[0]});this.successList=a.grep(this.successList,function(a){return!(a.name in b)})}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()},resetForm:function(){a.fn.resetForm&&a(this.currentForm).resetForm(),this.submitted={},this.lastElement=null,this.prepareForm(),this.hideErrors(),this.elements().removeClass(this.settings.errorClass).removeData("previousValue").removeAttr("aria-invalid")},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(a){var b,c=0;for(b in a)c++;return c},hideErrors:function(){this.hideThese(this.toHide)},hideThese:function(a){a.not(this.containers).text(""),this.addWrapper(a).hide()},valid:function(){return 0===this.size()},size:function(){return this.errorList.length},focusInvalid:function(){if(this.settings.focusInvalid)try{a(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin")}catch(b){}},findLastActive:function(){var b=this.lastActive;return b&&1===a.grep(this.errorList,function(a){return a.element.name===b.name}).length&&b},elements:function(){var b=this,c={};return a(this.currentForm).find("input, select, textarea").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function(){return!this.name&&b.settings.debug&&window.console&&console.error("%o has no name assigned",this),this.name in c||!b.objectLength(a(this).rules())?!1:(c[this.name]=!0,!0)})},clean:function(b){return a(b)[0]},errors:function(){var b=this.settings.errorClass.split(" ").join(".");return a(this.settings.errorElement+"."+b,this.errorContext)},reset:function(){this.successList=[],this.errorList=[],this.errorMap={},this.toShow=a([]),this.toHide=a([]),this.currentElements=a([])},prepareForm:function(){this.reset(),this.toHide=this.errors().add(this.containers)},prepareElement:function(a){this.reset(),this.toHide=this.errorsFor(a)},elementValue:function(b){var c,d=a(b),e=b.type;return"radio"===e||"checkbox"===e?a("input[name='"+b.name+"']:checked").val():"number"===e&&"undefined"!=typeof b.validity?b.validity.badInput?!1:d.val():(c=d.val(),"string"==typeof c?c.replace(/\r/g,""):c)},check:function(b){b=this.validationTargetFor(this.clean(b));var c,d,e,f=a(b).rules(),g=a.map(f,function(a,b){return b}).length,h=!1,i=this.elementValue(b);for(d in f){e={method:d,parameters:f[d]};try{if(c=a.validator.methods[d].call(this,i,b,e.parameters),"dependency-mismatch"===c&&1===g){h=!0;continue}if(h=!1,"pending"===c)return void(this.toHide=this.toHide.not(this.errorsFor(b)));if(!c)return this.formatAndAdd(b,e),!1}catch(j){throw this.settings.debug&&window.console&&console.log("Exception occurred when checking element "+b.id+", check the '"+e.method+"' method.",j),j}}if(!h)return this.objectLength(f)&&this.successList.push(b),!0},customDataMessage:function(b,c){return a(b).data("msg"+c.charAt(0).toUpperCase()+c.substring(1).toLowerCase())||a(b).data("msg")},customMessage:function(a,b){var c=this.settings.messages[a];return c&&(c.constructor===String?c:c[b])},findDefined:function(){for(var a=0;a<arguments.length;a++)if(void 0!==arguments[a])return arguments[a];return void 0},defaultMessage:function(b,c){return this.findDefined(this.customMessage(b.name,c),this.customDataMessage(b,c),!this.settings.ignoreTitle&&b.title||void 0,a.validator.messages[c],"<strong>Warning: No message defined for "+b.name+"</strong>")},formatAndAdd:function(b,c){var d=this.defaultMessage(b,c.method),e=/\$?\{(\d+)\}/g;"function"==typeof d?d=d.call(this,c.parameters,b):e.test(d)&&(d=a.validator.format(d.replace(e,"{$1}"),c.parameters)),this.errorList.push({message:d,element:b,method:c.method}),this.errorMap[b.name]=d,this.submitted[b.name]=d},addWrapper:function(a){return this.settings.wrapper&&(a=a.add(a.parent(this.settings.wrapper))),a},defaultShowErrors:function(){var a,b,c;for(a=0;this.errorList[a];a++)c=this.errorList[a],this.settings.highlight&&this.settings.highlight.call(this,c.element,this.settings.errorClass,this.settings.validClass),this.showLabel(c.element,c.message);if(this.errorList.length&&(this.toShow=this.toShow.add(this.containers)),this.settings.success)for(a=0;this.successList[a];a++)this.showLabel(this.successList[a]);if(this.settings.unhighlight)for(a=0,b=this.validElements();b[a];a++)this.settings.unhighlight.call(this,b[a],this.settings.errorClass,this.settings.validClass);this.toHide=this.toHide.not(this.toShow),this.hideErrors(),this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return a(this.errorList).map(function(){return this.element})},showLabel:function(b,c){var d,e,f,g=this.errorsFor(b),h=this.idOrName(b),i=a(b).attr("aria-describedby");g.length?(g.removeClass(this.settings.validClass).addClass(this.settings.errorClass),g.html(c)):(g=a("<"+this.settings.errorElement+">").attr("id",h+"-error").addClass(this.settings.errorClass).html(c||""),d=g,this.settings.wrapper&&(d=g.hide().show().wrap("<"+this.settings.wrapper+"/>").parent()),this.labelContainer.length?this.labelContainer.append(d):this.settings.errorPlacement?this.settings.errorPlacement(d,a(b)):d.insertAfter(b),g.is("label")?g.attr("for",h):0===g.parents("label[for='"+h+"']").length&&(f=g.attr("id"),i?i.match(new RegExp("\b"+f+"\b"))||(i+=" "+f):i=f,a(b).attr("aria-describedby",i),e=this.groups[b.name],e&&a.each(this.groups,function(b,c){c===e&&a("[name='"+b+"']",this.currentForm).attr("aria-describedby",g.attr("id"))}))),!c&&this.settings.success&&(g.text(""),"string"==typeof this.settings.success?g.addClass(this.settings.success):this.settings.success(g,b)),this.toShow=this.toShow.add(g)},errorsFor:function(b){var c=this.idOrName(b),d=a(b).attr("aria-describedby"),e="label[for='"+c+"'], label[for='"+c+"'] *";return d&&(e=e+", #"+d.replace(/\s+/g,", #")),this.errors().filter(e)},idOrName:function(a){return this.groups[a.name]||(this.checkable(a)?a.name:a.id||a.name)},validationTargetFor:function(a){return this.checkable(a)&&(a=this.findByName(a.name).not(this.settings.ignore)[0]),a},checkable:function(a){return/radio|checkbox/i.test(a.type)},findByName:function(b){return a(this.currentForm).find("[name='"+b+"']")},getLength:function(b,c){switch(c.nodeName.toLowerCase()){case"select":return a("option:selected",c).length;case"input":if(this.checkable(c))return this.findByName(c.name).filter(":checked").length}return b.length},depend:function(a,b){return this.dependTypes[typeof a]?this.dependTypes[typeof a](a,b):!0},dependTypes:{"boolean":function(a){return a},string:function(b,c){return!!a(b,c.form).length},"function":function(a,b){return a(b)}},optional:function(b){var c=this.elementValue(b);return!a.validator.methods.required.call(this,c,b)&&"dependency-mismatch"},startRequest:function(a){this.pending[a.name]||(this.pendingRequest++,this.pending[a.name]=!0)},stopRequest:function(b,c){this.pendingRequest--,this.pendingRequest<0&&(this.pendingRequest=0),delete this.pending[b.name],c&&0===this.pendingRequest&&this.formSubmitted&&this.form()?(a(this.currentForm).submit(),this.formSubmitted=!1):!c&&0===this.pendingRequest&&this.formSubmitted&&(a(this.currentForm).triggerHandler("invalid-form",[this]),this.formSubmitted=!1)},previousValue:function(b){return a.data(b,"previousValue")||a.data(b,"previousValue",{old:null,valid:!0,message:this.defaultMessage(b,"remote")})}},classRuleSettings:{required:{required:!0},email:{email:!0},url:{url:!0},date:{date:!0},dateISO:{dateISO:!0},number:{number:!0},digits:{digits:!0},creditcard:{creditcard:!0}},addClassRules:function(b,c){b.constructor===String?this.classRuleSettings[b]=c:a.extend(this.classRuleSettings,b)},classRules:function(b){var c={},d=a(b).attr("class");return d&&a.each(d.split(" "),function(){this in a.validator.classRuleSettings&&a.extend(c,a.validator.classRuleSettings[this])}),c},attributeRules:function(b){var c,d,e={},f=a(b),g=b.getAttribute("type");for(c in a.validator.methods)"required"===c?(d=b.getAttribute(c),""===d&&(d=!0),d=!!d):d=f.attr(c),/min|max/.test(c)&&(null===g||/number|range|text/.test(g))&&(d=Number(d)),d||0===d?e[c]=d:g===c&&"range"!==g&&(e[c]=!0);return e.maxlength&&/-1|2147483647|524288/.test(e.maxlength)&&delete e.maxlength,e},dataRules:function(b){var c,d,e={},f=a(b);for(c in a.validator.methods)d=f.data("rule"+c.charAt(0).toUpperCase()+c.substring(1).toLowerCase()),void 0!==d&&(e[c]=d);return e},staticRules:function(b){var c={},d=a.data(b.form,"validator");return d.settings.rules&&(c=a.validator.normalizeRule(d.settings.rules[b.name])||{}),c},normalizeRules:function(b,c){return a.each(b,function(d,e){if(e===!1)return void delete b[d];if(e.param||e.depends){var f=!0;switch(typeof e.depends){case"string":f=!!a(e.depends,c.form).length;break;case"function":f=e.depends.call(c,c)}f?b[d]=void 0!==e.param?e.param:!0:delete b[d]}}),a.each(b,function(d,e){b[d]=a.isFunction(e)?e(c):e}),a.each(["minlength","maxlength"],function(){b[this]&&(b[this]=Number(b[this]))}),a.each(["rangelength","range"],function(){var c;b[this]&&(a.isArray(b[this])?b[this]=[Number(b[this][0]),Number(b[this][1])]:"string"==typeof b[this]&&(c=b[this].replace(/[\[\]]/g,"").split(/[\s,]+/),b[this]=[Number(c[0]),Number(c[1])]))}),a.validator.autoCreateRanges&&(b.min&&b.max&&(b.range=[b.min,b.max],delete b.min,delete b.max),b.minlength&&b.maxlength&&(b.rangelength=[b.minlength,b.maxlength],delete b.minlength,delete b.maxlength)),b},normalizeRule:function(b){if("string"==typeof b){var c={};a.each(b.split(/\s/),function(){c[this]=!0}),b=c}return b},addMethod:function(b,c,d){a.validator.methods[b]=c,a.validator.messages[b]=void 0!==d?d:a.validator.messages[b],c.length<3&&a.validator.addClassRules(b,a.validator.normalizeRule(b))},methods:{required:function(b,c,d){if(!this.depend(d,c))return"dependency-mismatch";if("select"===c.nodeName.toLowerCase()){var e=a(c).val();return e&&e.length>0}return this.checkable(c)?this.getLength(b,c)>0:a.trim(b).length>0},email:function(a,b){return this.optional(b)||/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(a)},url:function(a,b){return this.optional(b)||/^(https?|s?ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(a)},date:function(a,b){return this.optional(b)||!/Invalid|NaN/.test(new Date(a).toString())},dateISO:function(a,b){return this.optional(b)||/^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(a)},number:function(a,b){return this.optional(b)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(a)},digits:function(a,b){return this.optional(b)||/^\d+$/.test(a)},creditcard:function(a,b){if(this.optional(b))return"dependency-mismatch";if(/[^0-9 \-]+/.test(a))return!1;var c,d,e=0,f=0,g=!1;if(a=a.replace(/\D/g,""),a.length<13||a.length>19)return!1;for(c=a.length-1;c>=0;c--)d=a.charAt(c),f=parseInt(d,10),g&&(f*=2)>9&&(f-=9),e+=f,g=!g;return e%10===0},minlength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(a.trim(b),c);return this.optional(c)||e>=d},maxlength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(a.trim(b),c);return this.optional(c)||d>=e},rangelength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(a.trim(b),c);return this.optional(c)||e>=d[0]&&e<=d[1]},min:function(a,b,c){return this.optional(b)||a>=c},max:function(a,b,c){return this.optional(b)||c>=a},range:function(a,b,c){return this.optional(b)||a>=c[0]&&a<=c[1]},equalTo:function(b,c,d){var e=a(d);return this.settings.onfocusout&&e.unbind(".validate-equalTo").bind("blur.validate-equalTo",function(){a(c).valid()}),b===e.val()},remote:function(b,c,d){if(this.optional(c))return"dependency-mismatch";var e,f,g=this.previousValue(c);return this.settings.messages[c.name]||(this.settings.messages[c.name]={}),g.originalMessage=this.settings.messages[c.name].remote,this.settings.messages[c.name].remote=g.message,d="string"==typeof d&&{url:d}||d,g.old===b?g.valid:(g.old=b,e=this,this.startRequest(c),f={},f[c.name]=b,a.ajax(a.extend(!0,{url:d,mode:"abort",port:"validate"+c.name,dataType:"json",data:f,context:e.currentForm,success:function(d){var f,h,i,j=d===!0||"true"===d;e.settings.messages[c.name].remote=g.originalMessage,j?(i=e.formSubmitted,e.prepareElement(c),e.formSubmitted=i,e.successList.push(c),delete e.invalid[c.name],e.showErrors()):(f={},h=d||e.defaultMessage(c,"remote"),f[c.name]=g.message=a.isFunction(h)?h(b):h,e.invalid[c.name]=!0,e.showErrors(f)),g.valid=j,e.stopRequest(c,j)}},d)),"pending")}}}),a.format=function(){throw"$.format has been deprecated. Please use $.validator.format instead."};var b,c={};a.ajaxPrefilter?a.ajaxPrefilter(function(a,b,d){var e=a.port;"abort"===a.mode&&(c[e]&&c[e].abort(),c[e]=d)}):(b=a.ajax,a.ajax=function(d){var e=("mode"in d?d:a.ajaxSettings).mode,f=("port"in d?d:a.ajaxSettings).port;return"abort"===e?(c[f]&&c[f].abort(),c[f]=b.apply(this,arguments),c[f]):b.apply(this,arguments)}),a.extend(a.fn,{validateDelegate:function(b,c,d){return this.bind(c,function(c){var e=a(c.target);return e.is(b)?d.apply(e,arguments):void 0})}})});
|
1 |
+
!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):"object"==typeof module&&module.exports?module.exports=a(require("jquery")):a(jQuery)}(function(a){a.extend(a.fn,{validate:function(b){if(!this.length)return void(b&&b.debug&&window.console&&console.warn("Nothing selected, can't validate, returning nothing."));var c=a.data(this[0],"validator");return c?c:(this.attr("novalidate","novalidate"),c=new a.validator(b,this[0]),a.data(this[0],"validator",c),c.settings.onsubmit&&(this.on("click.validate",":submit",function(b){c.settings.submitHandler&&(c.submitButton=b.target),a(this).hasClass("cancel")&&(c.cancelSubmit=!0),void 0!==a(this).attr("formnovalidate")&&(c.cancelSubmit=!0)}),this.on("submit.validate",function(b){function d(){var d,e;return c.settings.submitHandler?(c.submitButton&&(d=a("<input type='hidden'/>").attr("name",c.submitButton.name).val(a(c.submitButton).val()).appendTo(c.currentForm)),e=c.settings.submitHandler.call(c,c.currentForm,b),c.submitButton&&d.remove(),void 0!==e?e:!1):!0}return c.settings.debug&&b.preventDefault(),c.cancelSubmit?(c.cancelSubmit=!1,d()):c.form()?c.pendingRequest?(c.formSubmitted=!0,!1):d():(c.focusInvalid(),!1)})),c)},valid:function(){var b,c,d;return a(this[0]).is("form")?b=this.validate().form():(d=[],b=!0,c=a(this[0].form).validate(),this.each(function(){b=c.element(this)&&b,b||(d=d.concat(c.errorList))}),c.errorList=d),b},rules:function(b,c){if(this.length){var d,e,f,g,h,i,j=this[0];if(b)switch(d=a.data(j.form,"validator").settings,e=d.rules,f=a.validator.staticRules(j),b){case"add":a.extend(f,a.validator.normalizeRule(c)),delete f.messages,e[j.name]=f,c.messages&&(d.messages[j.name]=a.extend(d.messages[j.name],c.messages));break;case"remove":return c?(i={},a.each(c.split(/\s/),function(b,c){i[c]=f[c],delete f[c],"required"===c&&a(j).removeAttr("aria-required")}),i):(delete e[j.name],f)}return g=a.validator.normalizeRules(a.extend({},a.validator.classRules(j),a.validator.attributeRules(j),a.validator.dataRules(j),a.validator.staticRules(j)),j),g.required&&(h=g.required,delete g.required,g=a.extend({required:h},g),a(j).attr("aria-required","true")),g.remote&&(h=g.remote,delete g.remote,g=a.extend(g,{remote:h})),g}}}),a.extend(a.expr[":"],{blank:function(b){return!a.trim(""+a(b).val())},filled:function(b){var c=a(b).val();return null!==c&&!!a.trim(""+c)},unchecked:function(b){return!a(b).prop("checked")}}),a.validator=function(b,c){this.settings=a.extend(!0,{},a.validator.defaults,b),this.currentForm=c,this.init()},a.validator.format=function(b,c){return 1===arguments.length?function(){var c=a.makeArray(arguments);return c.unshift(b),a.validator.format.apply(this,c)}:void 0===c?b:(arguments.length>2&&c.constructor!==Array&&(c=a.makeArray(arguments).slice(1)),c.constructor!==Array&&(c=[c]),a.each(c,function(a,c){b=b.replace(new RegExp("\\{"+a+"\\}","g"),function(){return c})}),b)},a.extend(a.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",pendingClass:"pending",validClass:"valid",errorElement:"label",focusCleanup:!1,focusInvalid:!0,errorContainer:a([]),errorLabelContainer:a([]),onsubmit:!0,ignore:":hidden",ignoreTitle:!1,onfocusin:function(a){this.lastActive=a,this.settings.focusCleanup&&(this.settings.unhighlight&&this.settings.unhighlight.call(this,a,this.settings.errorClass,this.settings.validClass),this.hideThese(this.errorsFor(a)))},onfocusout:function(a){this.checkable(a)||!(a.name in this.submitted)&&this.optional(a)||this.element(a)},onkeyup:function(b,c){var d=[16,17,18,20,35,36,37,38,39,40,45,144,225];9===c.which&&""===this.elementValue(b)||-1!==a.inArray(c.keyCode,d)||(b.name in this.submitted||b.name in this.invalid)&&this.element(b)},onclick:function(a){a.name in this.submitted?this.element(a):a.parentNode.name in this.submitted&&this.element(a.parentNode)},highlight:function(b,c,d){"radio"===b.type?this.findByName(b.name).addClass(c).removeClass(d):a(b).addClass(c).removeClass(d)},unhighlight:function(b,c,d){"radio"===b.type?this.findByName(b.name).removeClass(c).addClass(d):a(b).removeClass(c).addClass(d)}},setDefaults:function(b){a.extend(a.validator.defaults,b)},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date ( ISO ).",number:"Please enter a valid number.",digits:"Please enter only digits.",equalTo:"Please enter the same value again.",maxlength:a.validator.format("Please enter no more than {0} characters."),minlength:a.validator.format("Please enter at least {0} characters."),rangelength:a.validator.format("Please enter a value between {0} and {1} characters long."),range:a.validator.format("Please enter a value between {0} and {1}."),max:a.validator.format("Please enter a value less than or equal to {0}."),min:a.validator.format("Please enter a value greater than or equal to {0}."),step:a.validator.format("Please enter a multiple of {0}.")},autoCreateRanges:!1,prototype:{init:function(){function b(b){var c=a.data(this.form,"validator"),d="on"+b.type.replace(/^validate/,""),e=c.settings;e[d]&&!a(this).is(e.ignore)&&e[d].call(c,this,b)}this.labelContainer=a(this.settings.errorLabelContainer),this.errorContext=this.labelContainer.length&&this.labelContainer||a(this.currentForm),this.containers=a(this.settings.errorContainer).add(this.settings.errorLabelContainer),this.submitted={},this.valueCache={},this.pendingRequest=0,this.pending={},this.invalid={},this.reset();var c,d=this.groups={};a.each(this.settings.groups,function(b,c){"string"==typeof c&&(c=c.split(/\s/)),a.each(c,function(a,c){d[c]=b})}),c=this.settings.rules,a.each(c,function(b,d){c[b]=a.validator.normalizeRule(d)}),a(this.currentForm).on("focusin.validate focusout.validate keyup.validate",":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'], [type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'], [type='radio'], [type='checkbox'], [contenteditable]",b).on("click.validate","select, option, [type='radio'], [type='checkbox']",b),this.settings.invalidHandler&&a(this.currentForm).on("invalid-form.validate",this.settings.invalidHandler),a(this.currentForm).find("[required], [data-rule-required], .required").attr("aria-required","true")},form:function(){return this.checkForm(),a.extend(this.submitted,this.errorMap),this.invalid=a.extend({},this.errorMap),this.valid()||a(this.currentForm).triggerHandler("invalid-form",[this]),this.showErrors(),this.valid()},checkForm:function(){this.prepareForm();for(var a=0,b=this.currentElements=this.elements();b[a];a++)this.check(b[a]);return this.valid()},element:function(b){var c,d,e=this.clean(b),f=this.validationTargetFor(e),g=this,h=!0;return void 0===f?delete this.invalid[e.name]:(this.prepareElement(f),this.currentElements=a(f),d=this.groups[f.name],d&&a.each(this.groups,function(a,b){b===d&&a!==f.name&&(e=g.validationTargetFor(g.clean(g.findByName(a))),e&&e.name in g.invalid&&(g.currentElements.push(e),h=h&&g.check(e)))}),c=this.check(f)!==!1,h=h&&c,c?this.invalid[f.name]=!1:this.invalid[f.name]=!0,this.numberOfInvalids()||(this.toHide=this.toHide.add(this.containers)),this.showErrors(),a(b).attr("aria-invalid",!c)),h},showErrors:function(b){if(b){var c=this;a.extend(this.errorMap,b),this.errorList=a.map(this.errorMap,function(a,b){return{message:a,element:c.findByName(b)[0]}}),this.successList=a.grep(this.successList,function(a){return!(a.name in b)})}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()},resetForm:function(){a.fn.resetForm&&a(this.currentForm).resetForm(),this.invalid={},this.submitted={},this.prepareForm(),this.hideErrors();var b=this.elements().removeData("previousValue").removeAttr("aria-invalid");this.resetElements(b)},resetElements:function(a){var b;if(this.settings.unhighlight)for(b=0;a[b];b++)this.settings.unhighlight.call(this,a[b],this.settings.errorClass,""),this.findByName(a[b].name).removeClass(this.settings.validClass);else a.removeClass(this.settings.errorClass).removeClass(this.settings.validClass)},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(a){var b,c=0;for(b in a)a[b]&&c++;return c},hideErrors:function(){this.hideThese(this.toHide)},hideThese:function(a){a.not(this.containers).text(""),this.addWrapper(a).hide()},valid:function(){return 0===this.size()},size:function(){return this.errorList.length},focusInvalid:function(){if(this.settings.focusInvalid)try{a(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin")}catch(b){}},findLastActive:function(){var b=this.lastActive;return b&&1===a.grep(this.errorList,function(a){return a.element.name===b.name}).length&&b},elements:function(){var b=this,c={};return a(this.currentForm).find("input, select, textarea, [contenteditable]").not(":submit, :reset, :image, :disabled").not(this.settings.ignore).filter(function(){var d=this.name||a(this).attr("name");return!d&&b.settings.debug&&window.console&&console.error("%o has no name assigned",this),this.hasAttribute("contenteditable")&&(this.form=a(this).closest("form")[0]),d in c||!b.objectLength(a(this).rules())?!1:(c[d]=!0,!0)})},clean:function(b){return a(b)[0]},errors:function(){var b=this.settings.errorClass.split(" ").join(".");return a(this.settings.errorElement+"."+b,this.errorContext)},resetInternals:function(){this.successList=[],this.errorList=[],this.errorMap={},this.toShow=a([]),this.toHide=a([])},reset:function(){this.resetInternals(),this.currentElements=a([])},prepareForm:function(){this.reset(),this.toHide=this.errors().add(this.containers)},prepareElement:function(a){this.reset(),this.toHide=this.errorsFor(a)},elementValue:function(b){var c,d,e=a(b),f=b.type;return"radio"===f||"checkbox"===f?this.findByName(b.name).filter(":checked").val():"number"===f&&"undefined"!=typeof b.validity?b.validity.badInput?"NaN":e.val():(c=b.hasAttribute("contenteditable")?e.text():e.val(),"file"===f?"C:\\fakepath\\"===c.substr(0,12)?c.substr(12):(d=c.lastIndexOf("/"),d>=0?c.substr(d+1):(d=c.lastIndexOf("\\"),d>=0?c.substr(d+1):c)):"string"==typeof c?c.replace(/\r/g,""):c)},check:function(b){b=this.validationTargetFor(this.clean(b));var c,d,e,f=a(b).rules(),g=a.map(f,function(a,b){return b}).length,h=!1,i=this.elementValue(b);if("function"==typeof f.normalizer){if(i=f.normalizer.call(b,i),"string"!=typeof i)throw new TypeError("The normalizer should return a string value.");delete f.normalizer}for(d in f){e={method:d,parameters:f[d]};try{if(c=a.validator.methods[d].call(this,i,b,e.parameters),"dependency-mismatch"===c&&1===g){h=!0;continue}if(h=!1,"pending"===c)return void(this.toHide=this.toHide.not(this.errorsFor(b)));if(!c)return this.formatAndAdd(b,e),!1}catch(j){throw this.settings.debug&&window.console&&console.log("Exception occurred when checking element "+b.id+", check the '"+e.method+"' method.",j),j instanceof TypeError&&(j.message+=". Exception occurred when checking element "+b.id+", check the '"+e.method+"' method."),j}}if(!h)return this.objectLength(f)&&this.successList.push(b),!0},customDataMessage:function(b,c){return a(b).data("msg"+c.charAt(0).toUpperCase()+c.substring(1).toLowerCase())||a(b).data("msg")},customMessage:function(a,b){var c=this.settings.messages[a];return c&&(c.constructor===String?c:c[b])},findDefined:function(){for(var a=0;a<arguments.length;a++)if(void 0!==arguments[a])return arguments[a]},defaultMessage:function(b,c){var d=this.findDefined(this.customMessage(b.name,c.method),this.customDataMessage(b,c.method),!this.settings.ignoreTitle&&b.title||void 0,a.validator.messages[c.method],"<strong>Warning: No message defined for "+b.name+"</strong>"),e=/\$?\{(\d+)\}/g;return"function"==typeof d?d=d.call(this,c.parameters,b):e.test(d)&&(d=a.validator.format(d.replace(e,"{$1}"),c.parameters)),d},formatAndAdd:function(a,b){var c=this.defaultMessage(a,b);this.errorList.push({message:c,element:a,method:b.method}),this.errorMap[a.name]=c,this.submitted[a.name]=c},addWrapper:function(a){return this.settings.wrapper&&(a=a.add(a.parent(this.settings.wrapper))),a},defaultShowErrors:function(){var a,b,c;for(a=0;this.errorList[a];a++)c=this.errorList[a],this.settings.highlight&&this.settings.highlight.call(this,c.element,this.settings.errorClass,this.settings.validClass),this.showLabel(c.element,c.message);if(this.errorList.length&&(this.toShow=this.toShow.add(this.containers)),this.settings.success)for(a=0;this.successList[a];a++)this.showLabel(this.successList[a]);if(this.settings.unhighlight)for(a=0,b=this.validElements();b[a];a++)this.settings.unhighlight.call(this,b[a],this.settings.errorClass,this.settings.validClass);this.toHide=this.toHide.not(this.toShow),this.hideErrors(),this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return a(this.errorList).map(function(){return this.element})},showLabel:function(b,c){var d,e,f,g,h=this.errorsFor(b),i=this.idOrName(b),j=a(b).attr("aria-describedby");h.length?(h.removeClass(this.settings.validClass).addClass(this.settings.errorClass),h.html(c)):(h=a("<"+this.settings.errorElement+">").attr("id",i+"-error").addClass(this.settings.errorClass).html(c||""),d=h,this.settings.wrapper&&(d=h.hide().show().wrap("<"+this.settings.wrapper+"/>").parent()),this.labelContainer.length?this.labelContainer.append(d):this.settings.errorPlacement?this.settings.errorPlacement(d,a(b)):d.insertAfter(b),h.is("label")?h.attr("for",i):0===h.parents("label[for='"+this.escapeCssMeta(i)+"']").length&&(f=h.attr("id"),j?j.match(new RegExp("\\b"+this.escapeCssMeta(f)+"\\b"))||(j+=" "+f):j=f,a(b).attr("aria-describedby",j),e=this.groups[b.name],e&&(g=this,a.each(g.groups,function(b,c){c===e&&a("[name='"+g.escapeCssMeta(b)+"']",g.currentForm).attr("aria-describedby",h.attr("id"))})))),!c&&this.settings.success&&(h.text(""),"string"==typeof this.settings.success?h.addClass(this.settings.success):this.settings.success(h,b)),this.toShow=this.toShow.add(h)},errorsFor:function(b){var c=this.escapeCssMeta(this.idOrName(b)),d=a(b).attr("aria-describedby"),e="label[for='"+c+"'], label[for='"+c+"'] *";return d&&(e=e+", #"+this.escapeCssMeta(d).replace(/\s+/g,", #")),this.errors().filter(e)},escapeCssMeta:function(a){return a.replace(/([\\!"#$%&'()*+,.\/:;<=>?@\[\]^`{|}~])/g,"\\$1")},idOrName:function(a){return this.groups[a.name]||(this.checkable(a)?a.name:a.id||a.name)},validationTargetFor:function(b){return this.checkable(b)&&(b=this.findByName(b.name)),a(b).not(this.settings.ignore)[0]},checkable:function(a){return/radio|checkbox/i.test(a.type)},findByName:function(b){return a(this.currentForm).find("[name='"+this.escapeCssMeta(b)+"']")},getLength:function(b,c){switch(c.nodeName.toLowerCase()){case"select":return a("option:selected",c).length;case"input":if(this.checkable(c))return this.findByName(c.name).filter(":checked").length}return b.length},depend:function(a,b){return this.dependTypes[typeof a]?this.dependTypes[typeof a](a,b):!0},dependTypes:{"boolean":function(a){return a},string:function(b,c){return!!a(b,c.form).length},"function":function(a,b){return a(b)}},optional:function(b){var c=this.elementValue(b);return!a.validator.methods.required.call(this,c,b)&&"dependency-mismatch"},startRequest:function(b){this.pending[b.name]||(this.pendingRequest++,a(b).addClass(this.settings.pendingClass),this.pending[b.name]=!0)},stopRequest:function(b,c){this.pendingRequest--,this.pendingRequest<0&&(this.pendingRequest=0),delete this.pending[b.name],a(b).removeClass(this.settings.pendingClass),c&&0===this.pendingRequest&&this.formSubmitted&&this.form()?(a(this.currentForm).submit(),this.formSubmitted=!1):!c&&0===this.pendingRequest&&this.formSubmitted&&(a(this.currentForm).triggerHandler("invalid-form",[this]),this.formSubmitted=!1)},previousValue:function(b,c){return a.data(b,"previousValue")||a.data(b,"previousValue",{old:null,valid:!0,message:this.defaultMessage(b,{method:c})})},destroy:function(){this.resetForm(),a(this.currentForm).off(".validate").removeData("validator").find(".validate-equalTo-blur").off(".validate-equalTo").removeClass("validate-equalTo-blur")}},classRuleSettings:{required:{required:!0},email:{email:!0},url:{url:!0},date:{date:!0},dateISO:{dateISO:!0},number:{number:!0},digits:{digits:!0},creditcard:{creditcard:!0}},addClassRules:function(b,c){b.constructor===String?this.classRuleSettings[b]=c:a.extend(this.classRuleSettings,b)},classRules:function(b){var c={},d=a(b).attr("class");return d&&a.each(d.split(" "),function(){this in a.validator.classRuleSettings&&a.extend(c,a.validator.classRuleSettings[this])}),c},normalizeAttributeRule:function(a,b,c,d){/min|max|step/.test(c)&&(null===b||/number|range|text/.test(b))&&(d=Number(d),isNaN(d)&&(d=void 0)),d||0===d?a[c]=d:b===c&&"range"!==b&&(a[c]=!0)},attributeRules:function(b){var c,d,e={},f=a(b),g=b.getAttribute("type");for(c in a.validator.methods)"required"===c?(d=b.getAttribute(c),""===d&&(d=!0),d=!!d):d=f.attr(c),this.normalizeAttributeRule(e,g,c,d);return e.maxlength&&/-1|2147483647|524288/.test(e.maxlength)&&delete e.maxlength,e},dataRules:function(b){var c,d,e={},f=a(b),g=b.getAttribute("type");for(c in a.validator.methods)d=f.data("rule"+c.charAt(0).toUpperCase()+c.substring(1).toLowerCase()),this.normalizeAttributeRule(e,g,c,d);return e},staticRules:function(b){var c={},d=a.data(b.form,"validator");return d.settings.rules&&(c=a.validator.normalizeRule(d.settings.rules[b.name])||{}),c},normalizeRules:function(b,c){return a.each(b,function(d,e){if(e===!1)return void delete b[d];if(e.param||e.depends){var f=!0;switch(typeof e.depends){case"string":f=!!a(e.depends,c.form).length;break;case"function":f=e.depends.call(c,c)}f?b[d]=void 0!==e.param?e.param:!0:(a.data(c.form,"validator").resetElements(a(c)),delete b[d])}}),a.each(b,function(d,e){b[d]=a.isFunction(e)&&"normalizer"!==d?e(c):e}),a.each(["minlength","maxlength"],function(){b[this]&&(b[this]=Number(b[this]))}),a.each(["rangelength","range"],function(){var c;b[this]&&(a.isArray(b[this])?b[this]=[Number(b[this][0]),Number(b[this][1])]:"string"==typeof b[this]&&(c=b[this].replace(/[\[\]]/g,"").split(/[\s,]+/),b[this]=[Number(c[0]),Number(c[1])]))}),a.validator.autoCreateRanges&&(null!=b.min&&null!=b.max&&(b.range=[b.min,b.max],delete b.min,delete b.max),null!=b.minlength&&null!=b.maxlength&&(b.rangelength=[b.minlength,b.maxlength],delete b.minlength,delete b.maxlength)),b},normalizeRule:function(b){if("string"==typeof b){var c={};a.each(b.split(/\s/),function(){c[this]=!0}),b=c}return b},addMethod:function(b,c,d){a.validator.methods[b]=c,a.validator.messages[b]=void 0!==d?d:a.validator.messages[b],c.length<3&&a.validator.addClassRules(b,a.validator.normalizeRule(b))},methods:{required:function(b,c,d){if(!this.depend(d,c))return"dependency-mismatch";if("select"===c.nodeName.toLowerCase()){var e=a(c).val();return e&&e.length>0}return this.checkable(c)?this.getLength(b,c)>0:b.length>0},email:function(a,b){return this.optional(b)||/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(a)},url:function(a,b){return this.optional(b)||/^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})).?)(?::\d{2,5})?(?:[\/?#]\S*)?$/i.test(a)},date:function(a,b){return this.optional(b)||!/Invalid|NaN/.test(new Date(a).toString())},dateISO:function(a,b){return this.optional(b)||/^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(a)},number:function(a,b){return this.optional(b)||/^(?:-?\d+|-?\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(a)},digits:function(a,b){return this.optional(b)||/^\d+$/.test(a)},minlength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(b,c);return this.optional(c)||e>=d},maxlength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(b,c);return this.optional(c)||d>=e},rangelength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(b,c);return this.optional(c)||e>=d[0]&&e<=d[1]},min:function(a,b,c){return this.optional(b)||a>=c},max:function(a,b,c){return this.optional(b)||c>=a},range:function(a,b,c){return this.optional(b)||a>=c[0]&&a<=c[1]},step:function(b,c,d){var e=a(c).attr("type"),f="Step attribute on input type "+e+" is not supported.",g=["text","number","range"],h=new RegExp("\\b"+e+"\\b"),i=e&&!h.test(g.join());if(i)throw new Error(f);return this.optional(c)||b%d===0},equalTo:function(b,c,d){var e=a(d);return this.settings.onfocusout&&e.not(".validate-equalTo-blur").length&&e.addClass("validate-equalTo-blur").on("blur.validate-equalTo",function(){a(c).valid()}),b===e.val()},remote:function(b,c,d,e){if(this.optional(c))return"dependency-mismatch";e="string"==typeof e&&e||"remote";var f,g,h,i=this.previousValue(c,e);return this.settings.messages[c.name]||(this.settings.messages[c.name]={}),i.originalMessage=i.originalMessage||this.settings.messages[c.name][e],this.settings.messages[c.name][e]=i.message,d="string"==typeof d&&{url:d}||d,h=a.param(a.extend({data:b},d.data)),i.old===h?i.valid:(i.old=h,f=this,this.startRequest(c),g={},g[c.name]=b,a.ajax(a.extend(!0,{mode:"abort",port:"validate"+c.name,dataType:"json",data:g,context:f.currentForm,success:function(a){var d,g,h,j=a===!0||"true"===a;f.settings.messages[c.name][e]=i.originalMessage,j?(h=f.formSubmitted,f.resetInternals(),f.toHide=f.errorsFor(c),f.formSubmitted=h,f.successList.push(c),f.invalid[c.name]=!1,f.showErrors()):(d={},g=a||f.defaultMessage(c,{method:e,parameters:b}),d[c.name]=i.message=g,f.invalid[c.name]=!0,f.showErrors(d)),i.valid=j,f.stopRequest(c,j)}},d)),"pending")}}});var b,c={};a.ajaxPrefilter?a.ajaxPrefilter(function(a,b,d){var e=a.port;"abort"===a.mode&&(c[e]&&c[e].abort(),c[e]=d)}):(b=a.ajax,a.ajax=function(d){var e=("mode"in d?d:a.ajaxSettings).mode,f=("port"in d?d:a.ajaxSettings).port;return"abort"===e?(c[f]&&c[f].abort(),c[f]=b.apply(this,arguments),c[f]):b.apply(this,arguments)})});
|
|
|
|
|
|
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery(function($) {
|
2 |
+
/**
|
3 |
+
* DISMISS NOTICES
|
4 |
+
*
|
5 |
+
* @since 2.0.4
|
6 |
+
*/
|
7 |
+
$('.wpmm_notices').on('click', '.notice-dismiss', function() {
|
8 |
+
var notice_key = $(this).parent().data('key');
|
9 |
+
|
10 |
+
$.post(ajaxurl, {
|
11 |
+
action: 'wpmm_dismiss_notices',
|
12 |
+
notice_key: notice_key
|
13 |
+
}, function(response) {
|
14 |
+
if (!response.success) {
|
15 |
+
// alert(response.data);
|
16 |
+
return false;
|
17 |
+
}
|
18 |
+
}, 'json');
|
19 |
+
});
|
20 |
+
});
|
@@ -0,0 +1 @@
|
|
|
1 |
+
jQuery(function(a){a(".wpmm_notices").on("click",".notice-dismiss",function(){var b=a(this).parent().data("key");a.post(ajaxurl,{action:"wpmm_dismiss_notices",notice_key:b},function(a){return a.success?void 0:!1},"json")})});
|
@@ -3,7 +3,7 @@ jQuery(function($) {
|
|
3 |
* TABS
|
4 |
*/
|
5 |
var hash = window.location.hash;
|
6 |
-
if (hash
|
7 |
$('.nav-tab-wrapper').children().removeClass('nav-tab-active');
|
8 |
$('.nav-tab-wrapper a[href="' + hash + '"]').addClass('nav-tab-active');
|
9 |
|
@@ -28,6 +28,12 @@ jQuery(function($) {
|
|
28 |
*/
|
29 |
$('.color_picker_trigger').wpColorPicker();
|
30 |
|
|
|
|
|
|
|
|
|
|
|
|
|
31 |
/**
|
32 |
* BACKGROUND UPLOADER
|
33 |
*/
|
@@ -54,7 +60,7 @@ jQuery(function($) {
|
|
54 |
image_custom_uploader.on('select', function() {
|
55 |
attachment = image_custom_uploader.state().get('selection').first().toJSON();
|
56 |
var url = '';
|
57 |
-
url = attachment
|
58 |
$('.upload_image_url').val(url);
|
59 |
});
|
60 |
|
@@ -68,12 +74,13 @@ jQuery(function($) {
|
|
68 |
show_bg_type = function(selected_val) {
|
69 |
$('.design_bg_types').hide();
|
70 |
$('#show_' + selected_val).show();
|
71 |
-
}
|
|
|
72 |
show_bg_type($('#design_bg_type').val());
|
73 |
|
74 |
$('#design_bg_type').change(function() {
|
75 |
var selected_val = $(this).val();
|
76 |
-
|
77 |
show_bg_type(selected_val);
|
78 |
});
|
79 |
|
@@ -92,19 +99,41 @@ jQuery(function($) {
|
|
92 |
$('<iframe />').attr('src', wpmm_vars.ajax_url + '?action=wpmm_subscribers_export').appendTo('body').hide();
|
93 |
});
|
94 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
95 |
/**
|
96 |
* RESET SETTINGS
|
97 |
*/
|
98 |
$('.reset_settings').click(function() {
|
99 |
var tab = $(this).data('tab');
|
100 |
|
101 |
-
$.
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
|
|
|
|
|
|
|
|
108 |
});
|
109 |
|
110 |
/**
|
3 |
* TABS
|
4 |
*/
|
5 |
var hash = window.location.hash;
|
6 |
+
if (hash !== '') {
|
7 |
$('.nav-tab-wrapper').children().removeClass('nav-tab-active');
|
8 |
$('.nav-tab-wrapper a[href="' + hash + '"]').addClass('nav-tab-active');
|
9 |
|
28 |
*/
|
29 |
$('.color_picker_trigger').wpColorPicker();
|
30 |
|
31 |
+
/**
|
32 |
+
* CHOSEN.JS MULTISELECT
|
33 |
+
* @used for "Backend role" and "Frontend role" -> General tab
|
34 |
+
*/
|
35 |
+
$('.chosen-select').chosen({disable_search_threshold: 10});
|
36 |
+
|
37 |
/**
|
38 |
* BACKGROUND UPLOADER
|
39 |
*/
|
60 |
image_custom_uploader.on('select', function() {
|
61 |
attachment = image_custom_uploader.state().get('selection').first().toJSON();
|
62 |
var url = '';
|
63 |
+
url = attachment.url;
|
64 |
$('.upload_image_url').val(url);
|
65 |
});
|
66 |
|
74 |
show_bg_type = function(selected_val) {
|
75 |
$('.design_bg_types').hide();
|
76 |
$('#show_' + selected_val).show();
|
77 |
+
};
|
78 |
+
|
79 |
show_bg_type($('#design_bg_type').val());
|
80 |
|
81 |
$('#design_bg_type').change(function() {
|
82 |
var selected_val = $(this).val();
|
83 |
+
|
84 |
show_bg_type(selected_val);
|
85 |
});
|
86 |
|
99 |
$('<iframe />').attr('src', wpmm_vars.ajax_url + '?action=wpmm_subscribers_export').appendTo('body').hide();
|
100 |
});
|
101 |
|
102 |
+
/**
|
103 |
+
* SUBSCRIBERS EMPTY LIST
|
104 |
+
*
|
105 |
+
* @since 2.0.4
|
106 |
+
*/
|
107 |
+
$('#subscribers-empty-list').click(function() {
|
108 |
+
$.post(wpmm_vars.ajax_url, {
|
109 |
+
action: 'wpmm_subscribers_empty_list'
|
110 |
+
}, function(response) {
|
111 |
+
if (!response.success) {
|
112 |
+
alert(response.data);
|
113 |
+
return false;
|
114 |
+
}
|
115 |
+
|
116 |
+
$('#subscribers_wrap').html(response.data);
|
117 |
+
}, 'json');
|
118 |
+
});
|
119 |
+
|
120 |
/**
|
121 |
* RESET SETTINGS
|
122 |
*/
|
123 |
$('.reset_settings').click(function() {
|
124 |
var tab = $(this).data('tab');
|
125 |
|
126 |
+
$.post(wpmm_vars.ajax_url, {
|
127 |
+
action: 'wpmm_reset_settings',
|
128 |
+
tab: tab
|
129 |
+
}, function(response) {
|
130 |
+
if (!response.success) {
|
131 |
+
alert(response.data);
|
132 |
+
return false;
|
133 |
+
}
|
134 |
+
|
135 |
+
window.location.reload(true);
|
136 |
+
}, 'json');
|
137 |
});
|
138 |
|
139 |
/**
|
@@ -0,0 +1 @@
|
|
|
1 |
+
jQuery(function(a){var b=window.location.hash;""!==b&&(a(".nav-tab-wrapper").children().removeClass("nav-tab-active"),a('.nav-tab-wrapper a[href="'+b+'"]').addClass("nav-tab-active"),a(".tabs-content").children().addClass("hidden"),a(".tabs-content div"+b.replace("#","#tab-")).removeClass("hidden")),a(".nav-tab-wrapper a").click(function(){var b=a(this).attr("href").replace("#","#tab-");a(this).parent().children().removeClass("nav-tab-active"),a(this).addClass("nav-tab-active"),a(".tabs-content").children().addClass("hidden"),a(".tabs-content div"+b).removeClass("hidden")}),a(".color_picker_trigger").wpColorPicker(),a(".chosen-select").chosen({disable_search_threshold:10});var c;a("#upload_image_trigger").click(function(b){return b.preventDefault(),c?void c.open():(c=wp.media.frames.file_frame=wp.media({title:"Upload Background",button:{text:"Choose Background"},multiple:!1}),c.on("select",function(){attachment=c.state().get("selection").first().toJSON();var b="";b=attachment.url,a(".upload_image_url").val(b)}),void c.open())}),show_bg_type=function(b){a(".design_bg_types").hide(),a("#show_"+b).show()},show_bg_type(a("#design_bg_type").val()),a("#design_bg_type").change(function(){var b=a(this).val();show_bg_type(b)}),a("ul.bg_list li").click(function(){a(this).parent().children().removeClass("active"),a(this).addClass("active")}),a("#subscribers-export").click(function(){a("<iframe />").attr("src",wpmm_vars.ajax_url+"?action=wpmm_subscribers_export").appendTo("body").hide()}),a("#subscribers-empty-list").click(function(){a.post(wpmm_vars.ajax_url,{action:"wpmm_subscribers_empty_list"},function(b){return b.success?void a("#subscribers_wrap").html(b.data):(alert(b.data),!1)},"json")}),a(".reset_settings").click(function(){var b=a(this).data("tab");a.post(wpmm_vars.ajax_url,{action:"wpmm_reset_settings",tab:b},function(a){return a.success?void window.location.reload(!0):(alert(a.data),!1)},"json")}),a(".countdown_start").datetimepicker({timeFormat:"HH:mm:ss",dateFormat:"dd-mm-yy"})});
|
@@ -1,91 +1,102 @@
|
|
1 |
-
jQuery(function($) {
|
2 |
-
/**
|
3 |
-
* COUNTDOWN
|
4 |
-
*/
|
5 |
-
if ($('.countdown').length > 0) {
|
6 |
-
var countDate = new Date($('.countdown').data('start'));
|
7 |
-
countDate = new Date($('.countdown').data('end'));
|
8 |
-
$('.countdown').countdown({
|
9 |
-
until: countDate,
|
10 |
-
compact: true,
|
11 |
-
layout: '<span class="day">{dn}</span> <span class="separator">:</span> <span class="hour">{hnn}</span> <span class="separator">:</span> <span class="minutes">{mnn}</span> <span class="separator">:</span> <span class="seconds">{snn}</span>'
|
12 |
-
});
|
13 |
-
}
|
14 |
-
|
15 |
-
/**
|
16 |
-
* SOCIAL LINKS
|
17 |
-
*/
|
18 |
-
if ($('.social').length > 0) {
|
19 |
-
var link_target = $('.social').data('target');
|
20 |
-
|
21 |
-
if (link_target == 1) {
|
22 |
-
$('.social a').attr('target', '_blank');
|
23 |
-
}
|
24 |
-
}
|
25 |
-
|
26 |
-
/**
|
27 |
-
* SUBSCRIBE FORM
|
28 |
-
*/
|
29 |
-
if ($('.subscribe_form').length > 0) {
|
30 |
-
// validate form
|
31 |
-
$('.subscribe_form').validate({
|
32 |
-
submitHandler: function(form) {
|
33 |
-
$.post(wpmm_vars.ajax_url, {
|
34 |
-
action: 'wpmm_add_subscriber',
|
35 |
-
email: $('.email_input', $('.subscribe_form')).val()
|
36 |
-
}, function(
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
$('.
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
91 |
});
|
1 |
+
jQuery(function($) {
|
2 |
+
/**
|
3 |
+
* COUNTDOWN
|
4 |
+
*/
|
5 |
+
if ($('.countdown').length > 0) {
|
6 |
+
var countDate = new Date($('.countdown').data('start'));
|
7 |
+
countDate = new Date($('.countdown').data('end'));
|
8 |
+
$('.countdown').countdown({
|
9 |
+
until: countDate,
|
10 |
+
compact: true,
|
11 |
+
layout: '<span class="day">{dn}</span> <span class="separator">:</span> <span class="hour">{hnn}</span> <span class="separator">:</span> <span class="minutes">{mnn}</span> <span class="separator">:</span> <span class="seconds">{snn}</span>'
|
12 |
+
});
|
13 |
+
}
|
14 |
+
|
15 |
+
/**
|
16 |
+
* SOCIAL LINKS
|
17 |
+
*/
|
18 |
+
if ($('.social').length > 0) {
|
19 |
+
var link_target = $('.social').data('target');
|
20 |
+
|
21 |
+
if (link_target == 1) {
|
22 |
+
$('.social a').attr('target', '_blank');
|
23 |
+
}
|
24 |
+
}
|
25 |
+
|
26 |
+
/**
|
27 |
+
* SUBSCRIBE FORM
|
28 |
+
*/
|
29 |
+
if ($('.subscribe_form').length > 0) {
|
30 |
+
// validate form
|
31 |
+
$('.subscribe_form').validate({
|
32 |
+
submitHandler: function(form) {
|
33 |
+
$.post(wpmm_vars.ajax_url, {
|
34 |
+
action: 'wpmm_add_subscriber',
|
35 |
+
email: $('.email_input', $('.subscribe_form')).val()
|
36 |
+
}, function(response) {
|
37 |
+
if (!response.success) {
|
38 |
+
alert(response.data);
|
39 |
+
return false;
|
40 |
+
}
|
41 |
+
|
42 |
+
$('.subscribe_wrapper').html(response.data);
|
43 |
+
}, 'json');
|
44 |
+
|
45 |
+
return false;
|
46 |
+
}
|
47 |
+
});
|
48 |
+
}
|
49 |
+
|
50 |
+
/**
|
51 |
+
* CONTACT FORM
|
52 |
+
*/
|
53 |
+
if ($('.contact').length > 0) {
|
54 |
+
// show form
|
55 |
+
$('.contact_us').click(function() {
|
56 |
+
var open_contact = $(this).data('open'),
|
57 |
+
close_contact = $(this).data('close');
|
58 |
+
|
59 |
+
$('.contact').fadeIn(200);
|
60 |
+
$('.' + open_contact).addClass(close_contact);
|
61 |
+
});
|
62 |
+
|
63 |
+
// validate form
|
64 |
+
$('.contact_form').validate({
|
65 |
+
submitHandler: function(form) {
|
66 |
+
$.post(wpmm_vars.ajax_url, {
|
67 |
+
action: 'wpmm_send_contact',
|
68 |
+
name: $('.name_input', $('.contact_form')).val(),
|
69 |
+
email: $('.email_input', $('.contact_form')).val(),
|
70 |
+
content: $('.content_textarea', $('.contact_form')).val()
|
71 |
+
}, function(response) {
|
72 |
+
if (!response.success) {
|
73 |
+
alert(response.data);
|
74 |
+
return false;
|
75 |
+
}
|
76 |
+
|
77 |
+
$('.contact .form').append('<div class="response">' + response.data + '</div>');
|
78 |
+
$('.contact .form .contact_form').hide();
|
79 |
+
|
80 |
+
setTimeout(function() {
|
81 |
+
$('.contact').hide();
|
82 |
+
$('.contact .form .response').remove();
|
83 |
+
$('.contact .form .contact_form').trigger('reset');
|
84 |
+
$('.contact .form .contact_form').show();
|
85 |
+
}, 2000);
|
86 |
+
}, 'json');
|
87 |
+
|
88 |
+
return false;
|
89 |
+
}
|
90 |
+
});
|
91 |
+
|
92 |
+
// hide form
|
93 |
+
$('body').on('click', '.contact', function(e) {
|
94 |
+
if ($(e.target).hasClass('contact')) {
|
95 |
+
var close_contact = $('.contact_us').data('close');
|
96 |
+
$('.form', $(this)).removeClass(close_contact);
|
97 |
+
|
98 |
+
$(this).hide();
|
99 |
+
}
|
100 |
+
});
|
101 |
+
}
|
102 |
});
|
@@ -0,0 +1 @@
|
|
|
1 |
+
jQuery(function(a){if(a(".countdown").length>0){var b=new Date(a(".countdown").data("start"));b=new Date(a(".countdown").data("end")),a(".countdown").countdown({until:b,compact:!0,layout:'<span class="day">{dn}</span> <span class="separator">:</span> <span class="hour">{hnn}</span> <span class="separator">:</span> <span class="minutes">{mnn}</span> <span class="separator">:</span> <span class="seconds">{snn}</span>'})}if(a(".social").length>0){var c=a(".social").data("target");1==c&&a(".social a").attr("target","_blank")}a(".subscribe_form").length>0&&a(".subscribe_form").validate({submitHandler:function(b){return a.post(wpmm_vars.ajax_url,{action:"wpmm_add_subscriber",email:a(".email_input",a(".subscribe_form")).val()},function(b){return b.success?void a(".subscribe_wrapper").html(b.data):(alert(b.data),!1)},"json"),!1}}),a(".contact").length>0&&(a(".contact_us").click(function(){var b=a(this).data("open"),c=a(this).data("close");a(".contact").fadeIn(200),a("."+b).addClass(c)}),a(".contact_form").validate({submitHandler:function(b){return a.post(wpmm_vars.ajax_url,{action:"wpmm_send_contact",name:a(".name_input",a(".contact_form")).val(),email:a(".email_input",a(".contact_form")).val(),content:a(".content_textarea",a(".contact_form")).val()},function(b){return b.success?(a(".contact .form").append('<div class="response">'+b.data+"</div>"),a(".contact .form .contact_form").hide(),void setTimeout(function(){a(".contact").hide(),a(".contact .form .response").remove(),a(".contact .form .contact_form").trigger("reset"),a(".contact .form .contact_form").show()},2e3)):(alert(b.data),!1)},"json"),!1}}),a("body").on("click",".contact",function(b){if(a(b.target).hasClass("contact")){var c=a(".contact_us").data("close");a(".form",a(this)).removeClass(c),a(this).hide()}}))});
|
@@ -1,2 +1,2 @@
|
|
1 |
-
<?php
|
2 |
-
// Silence is golden.
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
@@ -1,406 +1,522 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
if (!class_exists('WP_Maintenance_Mode_Admin')) {
|
4 |
-
|
5 |
-
class WP_Maintenance_Mode_Admin {
|
6 |
-
|
7 |
-
protected static $instance = null;
|
8 |
-
protected $plugin_slug;
|
9 |
-
protected $plugin_settings;
|
10 |
-
protected $plugin_default_settings;
|
11 |
-
protected $plugin_basename;
|
12 |
-
protected $plugin_screen_hook_suffix = null;
|
13 |
-
|
14 |
-
private
|
15 |
-
|
16 |
-
|
17 |
-
$
|
18 |
-
$this->
|
19 |
-
$this->
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
add_filter('
|
34 |
-
}
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
*
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
)
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
global
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
*
|
149 |
-
*
|
150 |
-
* @
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
*
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
//
|
280 |
-
$_POST['options']['
|
281 |
-
$_POST['options']['
|
282 |
-
if (!empty($_POST['options']['
|
283 |
-
$_POST['options']['
|
284 |
-
$custom_css['
|
285 |
-
}
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
406 |
}
|
1 |
+
<?php
|
2 |
+
|
3 |
+
if (!class_exists('WP_Maintenance_Mode_Admin')) {
|
4 |
+
|
5 |
+
class WP_Maintenance_Mode_Admin {
|
6 |
+
|
7 |
+
protected static $instance = null;
|
8 |
+
protected $plugin_slug;
|
9 |
+
protected $plugin_settings;
|
10 |
+
protected $plugin_default_settings;
|
11 |
+
protected $plugin_basename;
|
12 |
+
protected $plugin_screen_hook_suffix = null;
|
13 |
+
|
14 |
+
private $dismissed_notices_key = 'wpmm_dismissed_notices';
|
15 |
+
|
16 |
+
private function __construct() {
|
17 |
+
$plugin = WP_Maintenance_Mode::get_instance();
|
18 |
+
$this->plugin_slug = $plugin->get_plugin_slug();
|
19 |
+
$this->plugin_settings = $plugin->get_plugin_settings();
|
20 |
+
$this->plugin_default_settings = $plugin->default_settings();
|
21 |
+
$this->plugin_basename = plugin_basename(WPMM_PATH . $this->plugin_slug . '.php');
|
22 |
+
|
23 |
+
// Load admin style sheet and JavaScript.
|
24 |
+
add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_styles'));
|
25 |
+
add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_scripts'));
|
26 |
+
|
27 |
+
// Add the options page and menu item.
|
28 |
+
add_action('admin_menu', array($this, 'add_plugin_menu'));
|
29 |
+
|
30 |
+
// Add an action link pointing to the options page
|
31 |
+
if (is_multisite() && is_plugin_active_for_network($this->plugin_basename)) {
|
32 |
+
// settings link will point to admin_url of the main blog, not to network_admin_url
|
33 |
+
add_filter('network_admin_plugin_action_links_' . $this->plugin_basename, array($this, 'add_settings_link'));
|
34 |
+
} else {
|
35 |
+
add_filter('plugin_action_links_' . $this->plugin_basename, array($this, 'add_settings_link'));
|
36 |
+
}
|
37 |
+
|
38 |
+
// Add admin notices
|
39 |
+
add_action('admin_notices', array($this, 'add_notices'));
|
40 |
+
|
41 |
+
// Add ajax methods
|
42 |
+
add_action('wp_ajax_wpmm_subscribers_export', array($this, 'subscribers_export'));
|
43 |
+
add_action('wp_ajax_wpmm_subscribers_empty_list', array($this, 'subscribers_empty_list'));
|
44 |
+
add_action('wp_ajax_wpmm_dismiss_notices', array($this, 'dismiss_notices'));
|
45 |
+
add_action('wp_ajax_wpmm_reset_settings', array($this, 'reset_settings'));
|
46 |
+
}
|
47 |
+
|
48 |
+
public static function get_instance() {
|
49 |
+
if (null == self::$instance) {
|
50 |
+
self::$instance = new self;
|
51 |
+
}
|
52 |
+
|
53 |
+
return self::$instance;
|
54 |
+
}
|
55 |
+
|
56 |
+
/**
|
57 |
+
* Load CSS files
|
58 |
+
*
|
59 |
+
* @since 2.0.0
|
60 |
+
* @global object $wp_scripts
|
61 |
+
* @return type
|
62 |
+
*/
|
63 |
+
public function enqueue_admin_styles() {
|
64 |
+
global $wp_scripts;
|
65 |
+
|
66 |
+
if (!isset($this->plugin_screen_hook_suffix)) {
|
67 |
+
return;
|
68 |
+
}
|
69 |
+
|
70 |
+
$screen = get_current_screen();
|
71 |
+
if ($this->plugin_screen_hook_suffix == $screen->id) {
|
72 |
+
$ui = $wp_scripts->query('jquery-ui-core');
|
73 |
+
|
74 |
+
wp_enqueue_style($this->plugin_slug . '-admin-jquery-ui-styles', '//ajax.googleapis.com/ajax/libs/jqueryui/' . (!empty($ui->ver) ? $ui->ver : '1.11.4') . '/themes/smoothness/jquery-ui' . WPMM_ASSETS_SUFFIX . '.css', array(), WP_Maintenance_Mode::VERSION);
|
75 |
+
wp_enqueue_style($this->plugin_slug . '-admin-chosen', WPMM_CSS_URL . 'chosen' . WPMM_ASSETS_SUFFIX . '.css', array(), WP_Maintenance_Mode::VERSION);
|
76 |
+
wp_enqueue_style($this->plugin_slug . '-admin-timepicker-addon-script', WPMM_CSS_URL . 'jquery-ui-timepicker-addon' . WPMM_ASSETS_SUFFIX . '.css', array(), WP_Maintenance_Mode::VERSION);
|
77 |
+
wp_enqueue_style($this->plugin_slug . '-admin-styles', WPMM_CSS_URL . 'style-admin' . WPMM_ASSETS_SUFFIX . '.css', array('wp-color-picker'), WP_Maintenance_Mode::VERSION);
|
78 |
+
}
|
79 |
+
}
|
80 |
+
|
81 |
+
/**
|
82 |
+
* Load JS files and their dependencies
|
83 |
+
*
|
84 |
+
* @since 2.0.0
|
85 |
+
* @return
|
86 |
+
*/
|
87 |
+
public function enqueue_admin_scripts() {
|
88 |
+
if (!isset($this->plugin_screen_hook_suffix)) {
|
89 |
+
return;
|
90 |
+
}
|
91 |
+
|
92 |
+
$screen = get_current_screen();
|
93 |
+
if ($this->plugin_screen_hook_suffix == $screen->id) {
|
94 |
+
wp_enqueue_media();
|
95 |
+
wp_enqueue_script($this->plugin_slug . '-admin-timepicker-addon-script', WPMM_JS_URL . 'jquery-ui-timepicker-addon' . WPMM_ASSETS_SUFFIX . '.js', array('jquery', 'jquery-ui-datepicker'), WP_Maintenance_Mode::VERSION);
|
96 |
+
wp_enqueue_script($this->plugin_slug . '-admin-script', WPMM_JS_URL . 'scripts-admin' . WPMM_ASSETS_SUFFIX . '.js', array('jquery', 'wp-color-picker'), WP_Maintenance_Mode::VERSION);
|
97 |
+
wp_enqueue_script($this->plugin_slug . '-admin-chosen', WPMM_JS_URL . 'chosen.jquery' . WPMM_ASSETS_SUFFIX . '.js', array(), WP_Maintenance_Mode::VERSION);
|
98 |
+
wp_localize_script($this->plugin_slug . '-admin-script', 'wpmm_vars', array(
|
99 |
+
'ajax_url' => admin_url('admin-ajax.php'),
|
100 |
+
'plugin_url' => admin_url('options-general.php?page=' . $this->plugin_slug)
|
101 |
+
));
|
102 |
+
}
|
103 |
+
|
104 |
+
// For global actions like dismiss notices
|
105 |
+
wp_enqueue_script($this->plugin_slug . '-admin-global', WPMM_JS_URL . 'scripts-admin-global' . WPMM_ASSETS_SUFFIX . '.js', array('jquery'), WP_Maintenance_Mode::VERSION);
|
106 |
+
}
|
107 |
+
|
108 |
+
/**
|
109 |
+
* Export subscribers list in CSV format (refactor @ 2.0.4)
|
110 |
+
*
|
111 |
+
* @since 2.0.0
|
112 |
+
* @global object $wpdb
|
113 |
+
* @throws Exception
|
114 |
+
*/
|
115 |
+
public function subscribers_export() {
|
116 |
+
global $wpdb;
|
117 |
+
|
118 |
+
try {
|
119 |
+
// check capabilities
|
120 |
+
if (!current_user_can('manage_options')) {
|
121 |
+
throw new Exception(__('You do not have access to this resource.', $this->plugin_slug));
|
122 |
+
}
|
123 |
+
|
124 |
+
// get subscribers and export
|
125 |
+
$results = $wpdb->get_results("SELECT email, insert_date FROM {$wpdb->prefix}wpmm_subscribers ORDER BY id_subscriber DESC", ARRAY_A);
|
126 |
+
if (!empty($results)) {
|
127 |
+
$filename = 'subscribers-list-' . date('Y-m-d') . '.csv';
|
128 |
+
|
129 |
+
header('Content-Type: text/csv');
|
130 |
+
header('Content-Disposition: attachment;filename=' . $filename);
|
131 |
+
|
132 |
+
$fp = fopen('php://output', 'w');
|
133 |
+
|
134 |
+
fputcsv($fp, array('email', 'insert_date'));
|
135 |
+
foreach ($results as $item) {
|
136 |
+
fputcsv($fp, $item);
|
137 |
+
}
|
138 |
+
|
139 |
+
fclose($fp);
|
140 |
+
}
|
141 |
+
} catch (Exception $ex) {
|
142 |
+
wp_send_json_error($ex->getMessage());
|
143 |
+
}
|
144 |
+
}
|
145 |
+
|
146 |
+
/**
|
147 |
+
* Empty subscribers list
|
148 |
+
*
|
149 |
+
* @since 2.0.4
|
150 |
+
* @global object $wpdb
|
151 |
+
* @throws Exception
|
152 |
+
*/
|
153 |
+
public function subscribers_empty_list() {
|
154 |
+
global $wpdb;
|
155 |
+
|
156 |
+
try {
|
157 |
+
// check capabilities
|
158 |
+
if (!current_user_can('manage_options')) {
|
159 |
+
throw new Exception(__('You do not have access to this resource.', $this->plugin_slug));
|
160 |
+
}
|
161 |
+
|
162 |
+
// delete all subscribers
|
163 |
+
$wpdb->query("DELETE FROM {$wpdb->prefix}wpmm_subscribers");
|
164 |
+
|
165 |
+
wp_send_json_success(sprintf(__('You have %d subscriber(s)', $this->plugin_slug), 0));
|
166 |
+
} catch (Exception $ex) {
|
167 |
+
wp_send_json_error($ex->getMessage());
|
168 |
+
}
|
169 |
+
}
|
170 |
+
|
171 |
+
/**
|
172 |
+
* Reset settings (refactor @ 2.0.4)
|
173 |
+
*
|
174 |
+
* @since 2.0.0
|
175 |
+
* @throws Exception
|
176 |
+
*/
|
177 |
+
public function reset_settings() {
|
178 |
+
try {
|
179 |
+
// check capabilities
|
180 |
+
if (!current_user_can('manage_options')) {
|
181 |
+
throw new Exception(__('You do not have access to this resource.', $this->plugin_slug));
|
182 |
+
}
|
183 |
+
|
184 |
+
// check tab existence
|
185 |
+
if (empty($_REQUEST['tab'])) {
|
186 |
+
throw new Exception(__('The tab slug must not be empty.', $this->plugin_slug));
|
187 |
+
}
|
188 |
+
|
189 |
+
$tab = $_REQUEST['tab'];
|
190 |
+
if (empty($this->plugin_default_settings[$tab])) {
|
191 |
+
throw new Exception(__('The tab slug must exist.', $this->plugin_slug));
|
192 |
+
}
|
193 |
+
|
194 |
+
// update options using the default values
|
195 |
+
$this->plugin_settings[$tab] = $this->plugin_default_settings[$tab];
|
196 |
+
update_option('wpmm_settings', $this->plugin_settings);
|
197 |
+
|
198 |
+
wp_send_json_success();
|
199 |
+
} catch (Exception $ex) {
|
200 |
+
wp_send_json_error($ex->getMessage());
|
201 |
+
}
|
202 |
+
}
|
203 |
+
|
204 |
+
/**
|
205 |
+
* Add plugin in Settings menu
|
206 |
+
*
|
207 |
+
* @since 2.0.0
|
208 |
+
*/
|
209 |
+
public function add_plugin_menu() {
|
210 |
+
$this->plugin_screen_hook_suffix = add_options_page(
|
211 |
+
__('WP Maintenance Mode', $this->plugin_slug), __('WP Maintenance Mode', $this->plugin_slug), 'manage_options', $this->plugin_slug, array($this, 'display_plugin_settings')
|
212 |
+
);
|
213 |
+
}
|
214 |
+
|
215 |
+
/**
|
216 |
+
* Settings page
|
217 |
+
*
|
218 |
+
* @since 2.0.0
|
219 |
+
* @global object $wp_roles
|
220 |
+
*/
|
221 |
+
public function display_plugin_settings() {
|
222 |
+
global $wp_roles;
|
223 |
+
|
224 |
+
// save settings
|
225 |
+
$this->save_plugin_settings();
|
226 |
+
|
227 |
+
// show settings
|
228 |
+
include_once(WPMM_VIEWS_PATH . 'settings.php');
|
229 |
+
}
|
230 |
+
|
231 |
+
/**
|
232 |
+
* Save settings
|
233 |
+
*
|
234 |
+
* @since 2.0.0
|
235 |
+
*/
|
236 |
+
public function save_plugin_settings() {
|
237 |
+
if (!empty($_POST) && !empty($_POST['tab'])) {
|
238 |
+
if (!wp_verify_nonce($_POST['_wpnonce'], 'tab-' . $_POST['tab'])) {
|
239 |
+
die('Security check!');
|
240 |
+
}
|
241 |
+
|
242 |
+
// DO SOME SANITIZATIONS
|
243 |
+
$tab = $_POST['tab'];
|
244 |
+
switch ($tab) {
|
245 |
+
case 'general':
|
246 |
+
$_POST['options']['general']['status'] = (int) $_POST['options']['general']['status'];
|
247 |
+
if (!empty($_POST['options']['general']['status']) && $_POST['options']['general']['status'] == 1) {
|
248 |
+
$_POST['options']['general']['status_date'] = date('Y-m-d H:i:s');
|
249 |
+
}
|
250 |
+
$_POST['options']['general']['bypass_bots'] = (int) $_POST['options']['general']['bypass_bots'];
|
251 |
+
$_POST['options']['general']['backend_role'] = !empty($_POST['options']['general']['backend_role']) ? $_POST['options']['general']['backend_role'] : array();
|
252 |
+
$_POST['options']['general']['frontend_role'] = !empty($_POST['options']['general']['frontend_role']) ? $_POST['options']['general']['frontend_role'] : array();
|
253 |
+
$_POST['options']['general']['meta_robots'] = (int) $_POST['options']['general']['meta_robots'];
|
254 |
+
$_POST['options']['general']['redirection'] = esc_url($_POST['options']['general']['redirection']);
|
255 |
+
if (!empty($_POST['options']['general']['exclude'])) {
|
256 |
+
$exclude_array = explode("\n", $_POST['options']['general']['exclude']);
|
257 |
+
// we need to be sure that empty lines will not be saved
|
258 |
+
$_POST['options']['general']['exclude'] = array_filter(array_map('trim', $exclude_array));
|
259 |
+
} else {
|
260 |
+
$_POST['options']['general']['exclude'] = array();
|
261 |
+
}
|
262 |
+
$_POST['options']['general']['notice'] = (int) $_POST['options']['general']['notice'];
|
263 |
+
$_POST['options']['general']['admin_link'] = (int) $_POST['options']['general']['admin_link'];
|
264 |
+
|
265 |
+
// delete cache when is already activated, when is activated and when is deactivated
|
266 |
+
if (
|
267 |
+
isset($this->plugin_settings['general']['status']) && isset($_POST['options']['general']['status']) &&
|
268 |
+
(
|
269 |
+
($this->plugin_settings['general']['status'] == 1 && in_array($_POST['options']['general']['status'], array(0, 1))) ||
|
270 |
+
($this->plugin_settings['general']['status'] == 0 && $_POST['options']['general']['status'] == 1)
|
271 |
+
)
|
272 |
+
) {
|
273 |
+
$this->delete_cache();
|
274 |
+
}
|
275 |
+
break;
|
276 |
+
case 'design':
|
277 |
+
$custom_css = array();
|
278 |
+
|
279 |
+
// CONTENT & CUSTOM CSS
|
280 |
+
$_POST['options']['design']['title'] = sanitize_text_field($_POST['options']['design']['title']);
|
281 |
+
$_POST['options']['design']['heading'] = sanitize_text_field($_POST['options']['design']['heading']);
|
282 |
+
if (!empty($_POST['options']['design']['heading_color'])) {
|
283 |
+
$_POST['options']['design']['heading_color'] = sanitize_text_field($_POST['options']['design']['heading_color']);
|
284 |
+
$custom_css['heading_color'] = '.wrap h1 { color: ' . $_POST['options']['design']['heading_color'] . '; }';
|
285 |
+
}
|
286 |
+
add_filter('safe_style_css', array($this, 'add_safe_style_css')); // add before we save
|
287 |
+
$_POST['options']['design']['text'] = wp_kses_post($_POST['options']['design']['text']);
|
288 |
+
remove_filter('safe_style_css', array($this, 'add_safe_style_css')); // remove after we save
|
289 |
+
|
290 |
+
if (!empty($_POST['options']['design']['text_color'])) {
|
291 |
+
$_POST['options']['design']['text_color'] = sanitize_text_field($_POST['options']['design']['text_color']);
|
292 |
+
$custom_css['text_color'] = '.wrap h2 { color: ' . $_POST['options']['design']['text_color'] . '; }';
|
293 |
+
}
|
294 |
+
|
295 |
+
// BACKGROUND & CUSTOM CSS
|
296 |
+
if (!empty($_POST['options']['design']['bg_type'])) {
|
297 |
+
$_POST['options']['design']['bg_type'] = sanitize_text_field($_POST['options']['design']['bg_type']);
|
298 |
+
|
299 |
+
if ($_POST['options']['design']['bg_type'] == 'color' && !empty($_POST['options']['design']['bg_color'])) {
|
300 |
+
$_POST['options']['design']['bg_color'] = sanitize_text_field($_POST['options']['design']['bg_color']);
|
301 |
+
$custom_css['bg_color'] = 'body { background-color: ' . $_POST['options']['design']['bg_color'] . '; }';
|
302 |
+
}
|
303 |
+
|
304 |
+
if ($_POST['options']['design']['bg_type'] == 'custom' && !empty($_POST['options']['design']['bg_custom'])) {
|
305 |
+
$_POST['options']['design']['bg_custom'] = esc_url($_POST['options']['design']['bg_custom']);
|
306 |
+
$custom_css['bg_url'] = '.background { background: url(' . $_POST['options']['design']['bg_custom'] . ') no-repeat center top fixed; background-size: cover; }';
|
307 |
+
}
|
308 |
+
|
309 |
+
if ($_POST['options']['design']['bg_type'] == 'predefined' && !empty($_POST['options']['design']['bg_predefined'])) {
|
310 |
+
$_POST['options']['design']['bg_predefined'] = sanitize_text_field($_POST['options']['design']['bg_predefined']);
|
311 |
+
$custom_css['bg_url'] = '.background { background: url(' . esc_url(WPMM_URL . 'assets/images/backgrounds/' . $_POST['options']['design']['bg_predefined']) . ') no-repeat center top fixed; background-size: cover; }';
|
312 |
+
}
|
313 |
+
}
|
314 |
+
|
315 |
+
$_POST['options']['design']['custom_css'] = $custom_css;
|
316 |
+
|
317 |
+
// delete cache when is activated
|
318 |
+
if (!empty($this->plugin_settings['general']['status']) && $this->plugin_settings['general']['status'] == 1) {
|
319 |
+
$this->delete_cache();
|
320 |
+
}
|
321 |
+
break;
|
322 |
+
case 'modules':
|
323 |
+
$custom_css = array();
|
324 |
+
|
325 |
+
// COUNTDOWN & CUSTOM CSS
|
326 |
+
$_POST['options']['modules']['countdown_status'] = (int) $_POST['options']['modules']['countdown_status'];
|
327 |
+
$_POST['options']['modules']['countdown_start'] = sanitize_text_field($_POST['options']['modules']['countdown_start']);
|
328 |
+
$_POST['options']['modules']['countdown_details'] = array_map('trim', $_POST['options']['modules']['countdown_details']);
|
329 |
+
$_POST['options']['modules']['countdown_details']['days'] = isset($_POST['options']['modules']['countdown_details']['days']) && is_numeric($_POST['options']['modules']['countdown_details']['days']) ? $_POST['options']['modules']['countdown_details']['days'] : 0;
|
330 |
+
$_POST['options']['modules']['countdown_details']['hours'] = isset($_POST['options']['modules']['countdown_details']['hours']) && is_numeric($_POST['options']['modules']['countdown_details']['hours']) ? $_POST['options']['modules']['countdown_details']['hours'] : 1;
|
331 |
+
$_POST['options']['modules']['countdown_details']['minutes'] = isset($_POST['options']['modules']['countdown_details']['minutes']) && is_numeric($_POST['options']['modules']['countdown_details']['minutes']) ? $_POST['options']['modules']['countdown_details']['minutes'] : 0;
|
332 |
+
if (!empty($_POST['options']['modules']['countdown_color'])) {
|
333 |
+
$_POST['options']['modules']['countdown_color'] = sanitize_text_field($_POST['options']['modules']['countdown_color']);
|
334 |
+
$custom_css['countdown_color'] = '.wrap .countdown span { color: ' . $_POST['options']['modules']['countdown_color'] . '; }';
|
335 |
+
}
|
336 |
+
|
337 |
+
// SUBSCRIBE & CUSTOM CSS
|
338 |
+
$_POST['options']['modules']['subscribe_status'] = (int) $_POST['options']['modules']['subscribe_status'];
|
339 |
+
$_POST['options']['modules']['subscribe_text'] = sanitize_text_field($_POST['options']['modules']['subscribe_text']);
|
340 |
+
if (!empty($_POST['options']['modules']['subscribe_text_color'])) {
|
341 |
+
$_POST['options']['modules']['subscribe_text_color'] = sanitize_text_field($_POST['options']['modules']['subscribe_text_color']);
|
342 |
+
$custom_css['subscribe_text_color'] = '.wrap h3, .wrap .subscribe_wrapper { color: ' . $_POST['options']['modules']['subscribe_text_color'] . '; }';
|
343 |
+
}
|
344 |
+
|
345 |
+
// SOCIAL NETWORKS
|
346 |
+
$_POST['options']['modules']['social_status'] = (int) $_POST['options']['modules']['social_status'];
|
347 |
+
$_POST['options']['modules']['social_target'] = (int) $_POST['options']['modules']['social_target'];
|
348 |
+
$_POST['options']['modules']['social_github'] = sanitize_text_field($_POST['options']['modules']['social_github']);
|
349 |
+
$_POST['options']['modules']['social_dribbble'] = sanitize_text_field($_POST['options']['modules']['social_dribbble']);
|
350 |
+
$_POST['options']['modules']['social_twitter'] = sanitize_text_field($_POST['options']['modules']['social_twitter']);
|
351 |
+
$_POST['options']['modules']['social_facebook'] = sanitize_text_field($_POST['options']['modules']['social_facebook']);
|
352 |
+
$_POST['options']['modules']['social_pinterest'] = sanitize_text_field($_POST['options']['modules']['social_pinterest']);
|
353 |
+
$_POST['options']['modules']['social_google+'] = sanitize_text_field($_POST['options']['modules']['social_google+']);
|
354 |
+
$_POST['options']['modules']['social_linkedin'] = sanitize_text_field($_POST['options']['modules']['social_linkedin']);
|
355 |
+
|
356 |
+
// CONTACT
|
357 |
+
$_POST['options']['modules']['contact_status'] = (int) $_POST['options']['modules']['contact_status'];
|
358 |
+
$_POST['options']['modules']['contact_email'] = sanitize_text_field($_POST['options']['modules']['contact_email']);
|
359 |
+
$_POST['options']['modules']['contact_effects'] = sanitize_text_field($_POST['options']['modules']['contact_effects']);
|
360 |
+
|
361 |
+
// GOOGLE ANALYTICS
|
362 |
+
$_POST['options']['modules']['ga_status'] = (int) $_POST['options']['modules']['ga_status'];
|
363 |
+
$_POST['options']['modules']['ga_code'] = wp_kses(trim($_POST['options']['modules']['ga_code']), array('script' => array()));
|
364 |
+
|
365 |
+
$_POST['options']['modules']['custom_css'] = $custom_css;
|
366 |
+
|
367 |
+
// delete cache when is activated
|
368 |
+
if (!empty($this->plugin_settings['general']['status']) && $this->plugin_settings['general']['status'] == 1) {
|
369 |
+
$this->delete_cache();
|
370 |
+
}
|
371 |
+
break;
|
372 |
+
}
|
373 |
+
|
374 |
+
$this->plugin_settings[$tab] = $_POST['options'][$tab];
|
375 |
+
update_option('wpmm_settings', $this->plugin_settings);
|
376 |
+
}
|
377 |
+
}
|
378 |
+
|
379 |
+
/**
|
380 |
+
* Add new safe inline style css (use by wp_kses_attr in wp_kses_post)
|
381 |
+
* - bug discovered by cokemorgan: https://github.com/Designmodocom/WP-Maintenance-Mode/issues/56
|
382 |
+
*
|
383 |
+
* @since 2.0.3
|
384 |
+
* @param array $properties
|
385 |
+
* @return array
|
386 |
+
*/
|
387 |
+
public function add_safe_style_css($properties) {
|
388 |
+
$new_properties = array(
|
389 |
+
'min-height',
|
390 |
+
'max-height',
|
391 |
+
'min-width',
|
392 |
+
'max-width'
|
393 |
+
);
|
394 |
+
|
395 |
+
return array_merge($new_properties, $properties);
|
396 |
+
}
|
397 |
+
|
398 |
+
/**
|
399 |
+
* Delete cache if any cache plugin (wp_cache or w3tc) is activated
|
400 |
+
*
|
401 |
+
* @since 2.0.1
|
402 |
+
*/
|
403 |
+
public function delete_cache() {
|
404 |
+
// Super Cache Plugin
|
405 |
+
if (function_exists('wp_cache_clear_cache')) {
|
406 |
+
wp_cache_clear_cache(is_multisite() && is_plugin_active_for_network($this->plugin_basename) ? get_current_blog_id() : '');
|
407 |
+
}
|
408 |
+
|
409 |
+
// W3 Total Cache Plugin
|
410 |
+
if (function_exists('w3tc_pgcache_flush')) {
|
411 |
+
w3tc_pgcache_flush();
|
412 |
+
}
|
413 |
+
}
|
414 |
+
|
415 |
+
/**
|
416 |
+
* Add settings link
|
417 |
+
*
|
418 |
+
* @since 2.0.0
|
419 |
+
* @param array $links
|
420 |
+
* @return array
|
421 |
+
*/
|
422 |
+
public function add_settings_link($links) {
|
423 |
+
return array_merge(
|
424 |
+
array(
|
425 |
+
'wpmm_settings' => '<a href="' . admin_url('options-general.php?page=' . $this->plugin_slug) . '">' . __('Settings', $this->plugin_slug) . '</a>'
|
426 |
+
), $links
|
427 |
+
);
|
428 |
+
}
|
429 |
+
|
430 |
+
/**
|
431 |
+
* Add notices - will be displayed on dashboard
|
432 |
+
*
|
433 |
+
* @since 2.0.0
|
434 |
+
*/
|
435 |
+
public function add_notices() {
|
436 |
+
$screen = get_current_screen();
|
437 |
+
$notices = array();
|
438 |
+
|
439 |
+
if ($this->plugin_screen_hook_suffix != $screen->id) {
|
440 |
+
// notice if plugin is activated
|
441 |
+
if ($this->plugin_settings['general']['status'] == 1 && $this->plugin_settings['general']['notice'] == 1) {
|
442 |
+
$notices['is_activated'] = array(
|
443 |
+
'class' => 'error',
|
444 |
+
'msg' => sprintf(__('The Maintenance Mode is <strong>active</strong>. Please don\'t forget to <a href="%s">deactivate</a> as soon as you are done.', $this->plugin_slug), admin_url('options-general.php?page=' . $this->plugin_slug))
|
445 |
+
);
|
446 |
+
}
|
447 |
+
|
448 |
+
// show notice if plugin has a notice saved
|
449 |
+
$wpmm_notice = get_option('wpmm_notice');
|
450 |
+
if (!empty($wpmm_notice) && is_array($wpmm_notice)) {
|
451 |
+
$notices['other'] = $wpmm_notice;
|
452 |
+
}
|
453 |
+
} else {
|
454 |
+
// delete wpmm_notice
|
455 |
+
delete_option('wpmm_notice');
|
456 |
+
}
|
457 |
+
|
458 |
+
// notice promo for codepad
|
459 |
+
ob_start();
|
460 |
+
include_once(WPMM_VIEWS_PATH . 'promo-codepad.php');
|
461 |
+
$notices['promo_codepad'] = array(
|
462 |
+
'class' => 'wpmm_notices updated notice' . ($this->plugin_screen_hook_suffix != $screen->id ? ' is-dismissible' : ''),
|
463 |
+
'msg' => ob_get_clean()
|
464 |
+
);
|
465 |
+
|
466 |
+
// get dismissed notices
|
467 |
+
$dismissed_notices = $this->get_dismissed_notices(get_current_user_id());
|
468 |
+
|
469 |
+
// template
|
470 |
+
include_once(WPMM_VIEWS_PATH . 'notice.php');
|
471 |
+
}
|
472 |
+
|
473 |
+
/**
|
474 |
+
* Dismiss plugin notices via AJAX
|
475 |
+
*
|
476 |
+
* @throws Exception
|
477 |
+
*/
|
478 |
+
public function dismiss_notices() {
|
479 |
+
try {
|
480 |
+
if (empty($_POST['notice_key'])) {
|
481 |
+
throw new Exception(__('Notice key cannot be empty.', $this->plugin_slug));
|
482 |
+
}
|
483 |
+
|
484 |
+
// save new notice key
|
485 |
+
$notice_key = sanitize_text_field($_POST['notice_key']);
|
486 |
+
$this->save_dismissed_notices(get_current_user_id(), $notice_key);
|
487 |
+
|
488 |
+
wp_send_json_success();
|
489 |
+
} catch (Exception $ex) {
|
490 |
+
wp_send_json_error($ex->getMessage());
|
491 |
+
}
|
492 |
+
}
|
493 |
+
|
494 |
+
/**
|
495 |
+
* Get dismissed notices
|
496 |
+
*
|
497 |
+
* @param int $user_id
|
498 |
+
* @return array
|
499 |
+
*/
|
500 |
+
public function get_dismissed_notices($user_id) {
|
501 |
+
$dismissed_notices = get_user_meta($user_id, $this->dismissed_notices_key, true);
|
502 |
+
|
503 |
+
return array_filter(explode(',', $dismissed_notices), 'trim');
|
504 |
+
}
|
505 |
+
|
506 |
+
/**
|
507 |
+
* Save dismissed notices
|
508 |
+
* - save as string because of http://wordpress.stackexchange.com/questions/13353/problem-storing-arrays-with-update-user-meta
|
509 |
+
*
|
510 |
+
* @param int $user_id
|
511 |
+
* @param string $notice_key
|
512 |
+
*/
|
513 |
+
public function save_dismissed_notices($user_id, $notice_key) {
|
514 |
+
$dismissed_notices = $this->get_dismissed_notices($user_id);
|
515 |
+
$dismissed_notices[] = $notice_key;
|
516 |
+
|
517 |
+
update_user_meta($user_id, $this->dismissed_notices_key, implode(',', $dismissed_notices));
|
518 |
+
}
|
519 |
+
|
520 |
+
}
|
521 |
+
|
522 |
}
|
@@ -1,76 +1,76 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
if (!class_exists('WP_Maintenance_Mode_Shortcodes')) {
|
4 |
-
class WP_Maintenance_Mode_Shortcodes {
|
5 |
-
|
6 |
-
/**
|
7 |
-
* Add shortcodes
|
8 |
-
*
|
9 |
-
* @since 2.0.3
|
10 |
-
*/
|
11 |
-
public static function init() {
|
12 |
-
$shortcodes = array(
|
13 |
-
'loginform' => __CLASS__ . '::loginform'
|
14 |
-
);
|
15 |
-
|
16 |
-
foreach ($shortcodes as $shortcode => $method) {
|
17 |
-
add_shortcode($shortcode, $method);
|
18 |
-
}
|
19 |
-
}
|
20 |
-
|
21 |
-
/**
|
22 |
-
* Shortcode Wrapper
|
23 |
-
*
|
24 |
-
* @since 2.0.3
|
25 |
-
* @param string $function
|
26 |
-
* @param array $atts
|
27 |
-
* @param array $wrapper
|
28 |
-
* @return string
|
29 |
-
*/
|
30 |
-
public static function shortcode_wrapper($function, $atts = array(), $wrapper = array('before' => null, 'after' => null)) {
|
31 |
-
ob_start();
|
32 |
-
|
33 |
-
echo $wrapper['before'];
|
34 |
-
call_user_func($function, $atts);
|
35 |
-
echo $wrapper['after'];
|
36 |
-
|
37 |
-
return ob_get_clean();
|
38 |
-
}
|
39 |
-
|
40 |
-
/**
|
41 |
-
* Login form shortcode.
|
42 |
-
*
|
43 |
-
* @since 2.0.3
|
44 |
-
* @param array $atts
|
45 |
-
* @return string
|
46 |
-
*/
|
47 |
-
public static function loginform($atts) {
|
48 |
-
return self::shortcode_wrapper(array('WP_Maintenance_Mode_Shortcode_Login', 'display'), $atts);
|
49 |
-
}
|
50 |
-
|
51 |
-
}
|
52 |
-
|
53 |
-
}
|
54 |
-
|
55 |
-
if (!class_exists('WP_Maintenance_Mode_Shortcode_Login')) {
|
56 |
-
|
57 |
-
class WP_Maintenance_Mode_Shortcode_Login {
|
58 |
-
|
59 |
-
public function __construct() { }
|
60 |
-
|
61 |
-
/**
|
62 |
-
* Show login form
|
63 |
-
*
|
64 |
-
* @since 2.0.3
|
65 |
-
* @param array $atts
|
66 |
-
* @param string $content
|
67 |
-
*/
|
68 |
-
public static function display($atts) {
|
69 |
-
extract(shortcode_atts(array('redirect' => ''), $atts));
|
70 |
-
|
71 |
-
include_once(WPMM_VIEWS_PATH . 'loginform.php');
|
72 |
-
}
|
73 |
-
|
74 |
-
}
|
75 |
-
|
76 |
-
}
|
1 |
+
<?php
|
2 |
+
|
3 |
+
if (!class_exists('WP_Maintenance_Mode_Shortcodes')) {
|
4 |
+
class WP_Maintenance_Mode_Shortcodes {
|
5 |
+
|
6 |
+
/**
|
7 |
+
* Add shortcodes
|
8 |
+
*
|
9 |
+
* @since 2.0.3
|
10 |
+
*/
|
11 |
+
public static function init() {
|
12 |
+
$shortcodes = array(
|
13 |
+
'loginform' => __CLASS__ . '::loginform'
|
14 |
+
);
|
15 |
+
|
16 |
+
foreach ($shortcodes as $shortcode => $method) {
|
17 |
+
add_shortcode($shortcode, $method);
|
18 |
+
}
|
19 |
+
}
|
20 |
+
|
21 |
+
/**
|
22 |
+
* Shortcode Wrapper
|
23 |
+
*
|
24 |
+
* @since 2.0.3
|
25 |
+
* @param string $function
|
26 |
+
* @param array $atts
|
27 |
+
* @param array $wrapper
|
28 |
+
* @return string
|
29 |
+
*/
|
30 |
+
public static function shortcode_wrapper($function, $atts = array(), $wrapper = array('before' => null, 'after' => null)) {
|
31 |
+
ob_start();
|
32 |
+
|
33 |
+
echo $wrapper['before'];
|
34 |
+
call_user_func($function, $atts);
|
35 |
+
echo $wrapper['after'];
|
36 |
+
|
37 |
+
return ob_get_clean();
|
38 |
+
}
|
39 |
+
|
40 |
+
/**
|
41 |
+
* Login form shortcode.
|
42 |
+
*
|
43 |
+
* @since 2.0.3
|
44 |
+
* @param array $atts
|
45 |
+
* @return string
|
46 |
+
*/
|
47 |
+
public static function loginform($atts) {
|
48 |
+
return self::shortcode_wrapper(array('WP_Maintenance_Mode_Shortcode_Login', 'display'), $atts);
|
49 |
+
}
|
50 |
+
|
51 |
+
}
|
52 |
+
|
53 |
+
}
|
54 |
+
|
55 |
+
if (!class_exists('WP_Maintenance_Mode_Shortcode_Login')) {
|
56 |
+
|
57 |
+
class WP_Maintenance_Mode_Shortcode_Login {
|
58 |
+
|
59 |
+
public function __construct() { }
|
60 |
+
|
61 |
+
/**
|
62 |
+
* Show login form
|
63 |
+
*
|
64 |
+
* @since 2.0.3
|
65 |
+
* @param array $atts
|
66 |
+
* @param string $content
|
67 |
+
*/
|
68 |
+
public static function display($atts) {
|
69 |
+
extract(shortcode_atts(array('redirect' => ''), $atts));
|
70 |
+
|
71 |
+
include_once(WPMM_VIEWS_PATH . 'loginform.php');
|
72 |
+
}
|
73 |
+
|
74 |
+
}
|
75 |
+
|
76 |
+
}
|
@@ -1,714 +1,746 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
protected $
|
10 |
-
protected $
|
11 |
-
protected
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
$this->
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
add_action('
|
36 |
-
add_action('
|
37 |
-
add_action('
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
*
|
60 |
-
*
|
61 |
-
* @
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
*
|
70 |
-
*
|
71 |
-
* @
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
*
|
80 |
-
*
|
81 |
-
* @
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
'
|
88 |
-
'
|
89 |
-
'
|
90 |
-
'
|
91 |
-
'
|
92 |
-
'
|
93 |
-
'
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
'
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
'
|
104 |
-
'
|
105 |
-
'
|
106 |
-
'
|
107 |
-
'
|
108 |
-
'
|
109 |
-
'
|
110 |
-
'
|
111 |
-
'
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
'
|
116 |
-
'
|
117 |
-
|
118 |
-
'
|
119 |
-
'
|
120 |
-
|
121 |
-
|
122 |
-
'
|
123 |
-
'
|
124 |
-
'
|
125 |
-
'
|
126 |
-
'
|
127 |
-
'
|
128 |
-
'
|
129 |
-
'
|
130 |
-
'
|
131 |
-
'
|
132 |
-
'
|
133 |
-
'
|
134 |
-
'
|
135 |
-
'
|
136 |
-
'
|
137 |
-
'
|
138 |
-
'
|
139 |
-
'
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
*
|
147 |
-
*
|
148 |
-
* @
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
delete_option('wp-maintenance-mode
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
*
|
179 |
-
*
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
*
|
192 |
-
*
|
193 |
-
* @
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
*
|
216 |
-
*
|
217 |
-
* @
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
*
|
232 |
-
*
|
233 |
-
* @
|
234 |
-
* @
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
`
|
243 |
-
`
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
$
|
252 |
-
$
|
253 |
-
|
254 |
-
|
255 |
-
if
|
256 |
-
|
257 |
-
|
258 |
-
'
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
'
|
323 |
-
'
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
'
|
330 |
-
'
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
'
|
337 |
-
'
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
'
|
343 |
-
'
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
'
|
350 |
-
'
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
'
|
357 |
-
'
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
'
|
364 |
-
'
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
*
|
383 |
-
*
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
*
|
392 |
-
*
|
393 |
-
* @
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
*
|
404 |
-
*
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
$
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
*
|
417 |
-
*
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
!strstr($_SERVER['PHP_SELF'], 'wp-
|
427 |
-
!strstr($_SERVER['PHP_SELF'], 'wp-
|
428 |
-
|
429 |
-
!(strstr($_SERVER['PHP_SELF'], '
|
430 |
-
!strstr($_SERVER['PHP_SELF'], '/
|
431 |
-
!strstr($_SERVER['PHP_SELF'], '/
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
$
|
442 |
-
|
443 |
-
//
|
444 |
-
$
|
445 |
-
$
|
446 |
-
$
|
447 |
-
|
448 |
-
|
449 |
-
$
|
450 |
-
|
451 |
-
$
|
452 |
-
|
453 |
-
|
454 |
-
$
|
455 |
-
|
456 |
-
$
|
457 |
-
|
458 |
-
|
459 |
-
$
|
460 |
-
$
|
461 |
-
|
462 |
-
|
463 |
-
$
|
464 |
-
$
|
465 |
-
$
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
$
|
470 |
-
$
|
471 |
-
$
|
472 |
-
|
473 |
-
|
474 |
-
$
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
$
|
479 |
-
|
480 |
-
|
481 |
-
|
482 |
-
$
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
-
|
488 |
-
$
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
|
494 |
-
|
495 |
-
|
496 |
-
|
497 |
-
|
498 |
-
);
|
499 |
-
|
500 |
-
|
501 |
-
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
|
510 |
-
|
511 |
-
|
512 |
-
|
513 |
-
|
514 |
-
|
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 |
-
|
541 |
-
|
542 |
-
|
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 |
-
* @since 2.0.0
|
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 |
-
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
711 |
-
|
712 |
-
|
713 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
714 |
}
|
1 |
+
<?php
|
2 |
+
|
3 |
+
if (!class_exists('WP_Maintenance_Mode')) {
|
4 |
+
|
5 |
+
class WP_Maintenance_Mode {
|
6 |
+
|
7 |
+
const VERSION = '2.0.4';
|
8 |
+
|
9 |
+
protected $plugin_slug = 'wp-maintenance-mode';
|
10 |
+
protected $plugin_settings;
|
11 |
+
protected $plugin_basename;
|
12 |
+
protected static $instance = null;
|
13 |
+
|
14 |
+
private function __construct() {
|
15 |
+
$this->plugin_settings = get_option('wpmm_settings');
|
16 |
+
$this->plugin_basename = plugin_basename(WPMM_PATH . $this->plugin_slug . '.php');
|
17 |
+
|
18 |
+
// Load plugin text domain
|
19 |
+
add_action('init', array($this, 'load_plugin_textdomain'));
|
20 |
+
|
21 |
+
// Add shortcodes
|
22 |
+
add_action('init', array('WP_Maintenance_Mode_Shortcodes', 'init'));
|
23 |
+
|
24 |
+
// Activate plugin when new blog is added
|
25 |
+
add_action('wpmu_new_blog', array($this, 'activate_new_site'));
|
26 |
+
|
27 |
+
// Check update
|
28 |
+
add_action('admin_init', array($this, 'check_update'));
|
29 |
+
|
30 |
+
if (!empty($this->plugin_settings['general']['status']) && $this->plugin_settings['general']['status'] == 1) {
|
31 |
+
// INIT
|
32 |
+
add_action('init', array($this, 'init'));
|
33 |
+
|
34 |
+
// Add ajax methods
|
35 |
+
add_action('wp_ajax_nopriv_wpmm_add_subscriber', array($this, 'add_subscriber'));
|
36 |
+
add_action('wp_ajax_wpmm_add_subscriber', array($this, 'add_subscriber'));
|
37 |
+
add_action('wp_ajax_nopriv_wpmm_send_contact', array($this, 'send_contact'));
|
38 |
+
add_action('wp_ajax_wpmm_send_contact', array($this, 'send_contact'));
|
39 |
+
|
40 |
+
// Redirect
|
41 |
+
add_action('init', array($this, 'redirect'), 9);
|
42 |
+
|
43 |
+
// Google Analytics tracking script
|
44 |
+
if (!empty($this->plugin_settings['modules']['ga_status']) && $this->plugin_settings['modules']['ga_status'] == 1 && !empty($this->plugin_settings['modules']['ga_code'])) {
|
45 |
+
add_action('wpmm_head', create_function('', 'echo "' . stripslashes($this->plugin_settings['modules']['ga_code']) . '";'));
|
46 |
+
}
|
47 |
+
}
|
48 |
+
}
|
49 |
+
|
50 |
+
public static function get_instance() {
|
51 |
+
if (null == self::$instance) {
|
52 |
+
self::$instance = new self;
|
53 |
+
}
|
54 |
+
|
55 |
+
return self::$instance;
|
56 |
+
}
|
57 |
+
|
58 |
+
/**
|
59 |
+
* Return plugin slug
|
60 |
+
*
|
61 |
+
* @since 2.0.0
|
62 |
+
* @return string
|
63 |
+
*/
|
64 |
+
public function get_plugin_slug() {
|
65 |
+
return $this->plugin_slug;
|
66 |
+
}
|
67 |
+
|
68 |
+
/**
|
69 |
+
* Return plugin settings
|
70 |
+
*
|
71 |
+
* @since 2.0.0
|
72 |
+
* @return array
|
73 |
+
*/
|
74 |
+
public function get_plugin_settings() {
|
75 |
+
return $this->plugin_settings;
|
76 |
+
}
|
77 |
+
|
78 |
+
/**
|
79 |
+
* Return plugin default settings
|
80 |
+
*
|
81 |
+
* @since 2.0.0
|
82 |
+
* @return array
|
83 |
+
*/
|
84 |
+
public function default_settings() {
|
85 |
+
return array(
|
86 |
+
'general' => array(
|
87 |
+
'status' => 0,
|
88 |
+
'status_date' => '',
|
89 |
+
'bypass_bots' => 0,
|
90 |
+
'backend_role' => array(),
|
91 |
+
'frontend_role' => array(),
|
92 |
+
'meta_robots' => 0,
|
93 |
+
'redirection' => '',
|
94 |
+
'exclude' => array(
|
95 |
+
0 => 'feed',
|
96 |
+
1 => 'wp-login',
|
97 |
+
2 => 'login'
|
98 |
+
),
|
99 |
+
'notice' => 1,
|
100 |
+
'admin_link' => 0
|
101 |
+
),
|
102 |
+
'design' => array(
|
103 |
+
'title' => __('Maintenance mode', $this->plugin_slug),
|
104 |
+
'heading' => __('Maintenance mode', $this->plugin_slug),
|
105 |
+
'heading_color' => '',
|
106 |
+
'text' => __('<p>Sorry for the inconvenience.<br />Our website is currently undergoing scheduled maintenance.<br />Thank you for your understanding.</p>', $this->plugin_slug),
|
107 |
+
'text_color' => '',
|
108 |
+
'bg_type' => 'color',
|
109 |
+
'bg_color' => '',
|
110 |
+
'bg_custom' => '',
|
111 |
+
'bg_predefined' => 'bg1.jpg',
|
112 |
+
'custom_css' => array()
|
113 |
+
),
|
114 |
+
'modules' => array(
|
115 |
+
'countdown_status' => 0,
|
116 |
+
'countdown_start' => date('Y-m-d H:i:s'),
|
117 |
+
'countdown_details' => array(
|
118 |
+
'days' => 0,
|
119 |
+
'hours' => 1,
|
120 |
+
'minutes' => 0
|
121 |
+
),
|
122 |
+
'countdown_color' => '',
|
123 |
+
'subscribe_status' => 0,
|
124 |
+
'subscribe_text' => __('Notify me when it\'s ready', $this->plugin_slug),
|
125 |
+
'subscribe_text_color' => '',
|
126 |
+
'social_status' => 0,
|
127 |
+
'social_target' => 1,
|
128 |
+
'social_github' => '',
|
129 |
+
'social_dribbble' => '',
|
130 |
+
'social_twitter' => '',
|
131 |
+
'social_facebook' => '',
|
132 |
+
'social_pinterest' => '',
|
133 |
+
'social_google+' => '',
|
134 |
+
'social_linkedin' => '',
|
135 |
+
'contact_status' => 0,
|
136 |
+
'contact_email' => get_option('admin_email') ? get_option('admin_email') : '',
|
137 |
+
'contact_effects' => 'move_top|move_bottom',
|
138 |
+
'ga_status' => 0,
|
139 |
+
'ga_code' => '',
|
140 |
+
'custom_css' => array()
|
141 |
+
)
|
142 |
+
);
|
143 |
+
}
|
144 |
+
|
145 |
+
/**
|
146 |
+
* What to do when the plugin is activated
|
147 |
+
*
|
148 |
+
* @since 2.0.0
|
149 |
+
* @param boolean $network_wide
|
150 |
+
*/
|
151 |
+
public static function activate($network_wide) {
|
152 |
+
// because we need translated items when activate :)
|
153 |
+
load_plugin_textdomain(self::get_instance()->plugin_slug, FALSE, WPMM_LANGUAGES_PATH);
|
154 |
+
|
155 |
+
// do the job
|
156 |
+
if (function_exists('is_multisite') && is_multisite()) {
|
157 |
+
if ($network_wide) {
|
158 |
+
// Get all blog ids
|
159 |
+
$blog_ids = self::get_blog_ids();
|
160 |
+
foreach ($blog_ids as $blog_id) {
|
161 |
+
switch_to_blog($blog_id);
|
162 |
+
self::single_activate($network_wide);
|
163 |
+
restore_current_blog();
|
164 |
+
}
|
165 |
+
} else {
|
166 |
+
self::single_activate();
|
167 |
+
}
|
168 |
+
} else {
|
169 |
+
self::single_activate();
|
170 |
+
}
|
171 |
+
|
172 |
+
// delete old options
|
173 |
+
delete_option('wp-maintenance-mode');
|
174 |
+
delete_option('wp-maintenance-mode-msqld');
|
175 |
+
}
|
176 |
+
|
177 |
+
/**
|
178 |
+
* Check plugin version for updating process
|
179 |
+
*
|
180 |
+
* @since 2.0.3
|
181 |
+
*/
|
182 |
+
public function check_update() {
|
183 |
+
$version = get_option('wpmm_version', '0');
|
184 |
+
|
185 |
+
if (!version_compare($version, WP_Maintenance_Mode::VERSION, '=')) {
|
186 |
+
self::activate(is_multisite() && is_plugin_active_for_network($this->plugin_basename) ? true : false);
|
187 |
+
}
|
188 |
+
}
|
189 |
+
|
190 |
+
/**
|
191 |
+
* What to do when the plugin is deactivated
|
192 |
+
*
|
193 |
+
* @since 2.0.0
|
194 |
+
* @param boolean $network_wide
|
195 |
+
*/
|
196 |
+
public static function deactivate($network_wide) {
|
197 |
+
if (function_exists('is_multisite') && is_multisite()) {
|
198 |
+
if ($network_wide) {
|
199 |
+
// Get all blog ids
|
200 |
+
$blog_ids = self::get_blog_ids();
|
201 |
+
foreach ($blog_ids as $blog_id) {
|
202 |
+
switch_to_blog($blog_id);
|
203 |
+
self::single_deactivate();
|
204 |
+
restore_current_blog();
|
205 |
+
}
|
206 |
+
} else {
|
207 |
+
self::single_deactivate();
|
208 |
+
}
|
209 |
+
} else {
|
210 |
+
self::single_deactivate();
|
211 |
+
}
|
212 |
+
}
|
213 |
+
|
214 |
+
/**
|
215 |
+
* What to do when a new site is activated (multisite env)
|
216 |
+
*
|
217 |
+
* @since 2.0.0
|
218 |
+
* @param int $blog_id.
|
219 |
+
*/
|
220 |
+
public function activate_new_site($blog_id) {
|
221 |
+
if (1 !== did_action('wpmu_new_blog')) {
|
222 |
+
return;
|
223 |
+
}
|
224 |
+
|
225 |
+
switch_to_blog($blog_id);
|
226 |
+
self::single_activate();
|
227 |
+
restore_current_blog();
|
228 |
+
}
|
229 |
+
|
230 |
+
/**
|
231 |
+
* What to do on single activate
|
232 |
+
*
|
233 |
+
* @since 2.0.0
|
234 |
+
* @global object $wpdb
|
235 |
+
* @param boolean $network_wide
|
236 |
+
*/
|
237 |
+
public static function single_activate($network_wide = false) {
|
238 |
+
global $wpdb;
|
239 |
+
|
240 |
+
// create wpmm_subscribers table
|
241 |
+
$sql = "CREATE TABLE IF NOT EXISTS {$wpdb->prefix}wpmm_subscribers (
|
242 |
+
`id_subscriber` bigint(20) NOT NULL AUTO_INCREMENT,
|
243 |
+
`email` varchar(50) NOT NULL,
|
244 |
+
`insert_date` datetime NOT NULL,
|
245 |
+
PRIMARY KEY (`id_subscriber`)
|
246 |
+
) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;";
|
247 |
+
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
|
248 |
+
dbDelta($sql);
|
249 |
+
|
250 |
+
// get all options for different versions of the plugin
|
251 |
+
$v2_options = get_option('wpmm_settings');
|
252 |
+
$old_options = (is_multisite() && $network_wide) ? get_site_option('wp-maintenance-mode') : get_option('wp-maintenance-mode');
|
253 |
+
$default_options = self::get_instance()->default_settings();
|
254 |
+
|
255 |
+
// set notice if the plugin was installed before & set default settings
|
256 |
+
if (!empty($old_options) && empty($v2_options)) {
|
257 |
+
add_option('wpmm_notice', array(
|
258 |
+
'class' => 'updated notice',
|
259 |
+
'msg' => sprintf(__('WP Maintenance Mode plugin was relaunched and you MUST revise <a href="%s">settings</a>.', self::get_instance()->plugin_slug), admin_url('options-general.php?page=' . self::get_instance()->plugin_slug))
|
260 |
+
));
|
261 |
+
|
262 |
+
// import old options
|
263 |
+
if (isset($old_options['active'])) {
|
264 |
+
$default_options['general']['status'] = $old_options['active'];
|
265 |
+
}
|
266 |
+
if (isset($old_options['bypass'])) {
|
267 |
+
$default_options['general']['bypass_bots'] = $old_options['bypass'];
|
268 |
+
}
|
269 |
+
|
270 |
+
if (!empty($old_options['role'][0])) {
|
271 |
+
$default_options['general']['backend_role'] = $old_options['role'][0] == 'administrator' ? array() : $old_options['role'];
|
272 |
+
}
|
273 |
+
|
274 |
+
if (!empty($old_options['role_frontend'][0])) {
|
275 |
+
$default_options['general']['frontend_role'] = $old_options['role_frontend'][0] == 'administrator' ? array() : $old_options['role_frontend'];
|
276 |
+
}
|
277 |
+
|
278 |
+
if (isset($old_options['index'])) {
|
279 |
+
$default_options['general']['meta_robots'] = $old_options['index'];
|
280 |
+
}
|
281 |
+
|
282 |
+
if (!empty($old_options['rewrite'])) {
|
283 |
+
$default_options['general']['redirection'] = $old_options['rewrite'];
|
284 |
+
}
|
285 |
+
|
286 |
+
if (!empty($old_options['exclude'][0])) {
|
287 |
+
$default_options['general']['exclude'] = array_unique(array_merge($default_options['general']['exclude'], $old_options['exclude']));
|
288 |
+
}
|
289 |
+
|
290 |
+
if (isset($old_options['notice'])) {
|
291 |
+
$default_options['general']['notice'] = $old_options['notice'];
|
292 |
+
}
|
293 |
+
|
294 |
+
if (isset($old_options['admin_link'])) {
|
295 |
+
$default_options['general']['admin_link'] = $old_options['admin_link'];
|
296 |
+
}
|
297 |
+
|
298 |
+
if (!empty($old_options['title'])) {
|
299 |
+
$default_options['design']['title'] = $old_options['title'];
|
300 |
+
}
|
301 |
+
|
302 |
+
if (!empty($old_options['heading'])) {
|
303 |
+
$default_options['design']['heading'] = $old_options['heading'];
|
304 |
+
}
|
305 |
+
|
306 |
+
if (!empty($old_options['text'])) {
|
307 |
+
$default_options['design']['text'] = $old_options['text'];
|
308 |
+
}
|
309 |
+
|
310 |
+
if (isset($old_options['radio'])) {
|
311 |
+
$default_options['modules']['countdown_status'] = $old_options['radio'];
|
312 |
+
}
|
313 |
+
|
314 |
+
if (!empty($old_options['date'])) {
|
315 |
+
$default_options['modules']['countdown_start'] = $old_options['date'];
|
316 |
+
}
|
317 |
+
|
318 |
+
if (isset($old_options['time']) && isset($old_options['unit'])) {
|
319 |
+
switch ($old_options['unit']) {
|
320 |
+
case 0: // seconds
|
321 |
+
$default_options['modules']['countdown_details'] = array(
|
322 |
+
'days' => 0,
|
323 |
+
'hours' => 0,
|
324 |
+
'minutes' => floor($old_options['time'] / 60)
|
325 |
+
);
|
326 |
+
break;
|
327 |
+
case 1: // minutes
|
328 |
+
$default_options['modules']['countdown_details'] = array(
|
329 |
+
'days' => 0,
|
330 |
+
'hours' => 0,
|
331 |
+
'minutes' => $old_options['time']
|
332 |
+
);
|
333 |
+
break;
|
334 |
+
case 2: // hours
|
335 |
+
$default_options['modules']['countdown_details'] = array(
|
336 |
+
'days' => 0,
|
337 |
+
'hours' => $old_options['time'],
|
338 |
+
'minutes' => 0
|
339 |
+
);
|
340 |
+
case 3: // days
|
341 |
+
$default_options['modules']['countdown_details'] = array(
|
342 |
+
'days' => $old_options['time'],
|
343 |
+
'hours' => 0,
|
344 |
+
'minutes' => 0
|
345 |
+
);
|
346 |
+
break;
|
347 |
+
case 4: // weeks
|
348 |
+
$default_options['modules']['countdown_details'] = array(
|
349 |
+
'days' => $old_options['time'] * 7,
|
350 |
+
'hours' => 0,
|
351 |
+
'minutes' => 0
|
352 |
+
);
|
353 |
+
break;
|
354 |
+
case 5: // months
|
355 |
+
$default_options['modules']['countdown_details'] = array(
|
356 |
+
'days' => $old_options['time'] * 30,
|
357 |
+
'hours' => 0,
|
358 |
+
'minutes' => 0
|
359 |
+
);
|
360 |
+
break;
|
361 |
+
case 6: // years
|
362 |
+
$default_options['modules']['countdown_details'] = array(
|
363 |
+
'days' => $old_options['time'] * 365,
|
364 |
+
'hours' => 0,
|
365 |
+
'minutes' => 0
|
366 |
+
);
|
367 |
+
break;
|
368 |
+
default:
|
369 |
+
break;
|
370 |
+
}
|
371 |
+
}
|
372 |
+
}
|
373 |
+
|
374 |
+
// set options
|
375 |
+
add_option('wpmm_settings', $default_options);
|
376 |
+
|
377 |
+
// set current version
|
378 |
+
update_option('wpmm_version', WP_Maintenance_Mode::VERSION);
|
379 |
+
}
|
380 |
+
|
381 |
+
/**
|
382 |
+
* What to do on single deactivate
|
383 |
+
*
|
384 |
+
* @since 2.0.0
|
385 |
+
*/
|
386 |
+
public static function single_deactivate() {
|
387 |
+
// nothing
|
388 |
+
}
|
389 |
+
|
390 |
+
/**
|
391 |
+
* Get all blog ids of blogs in the current network
|
392 |
+
*
|
393 |
+
* @since 2.0.0
|
394 |
+
* @return array / false
|
395 |
+
*/
|
396 |
+
private static function get_blog_ids() {
|
397 |
+
global $wpdb;
|
398 |
+
|
399 |
+
return $wpdb->get_col($wpdb->prepare("SELECT blog_id FROM {$wpdb->blogs} WHERE archived = %d AND spam = %d AND deleted = %d", array(0, 0, 0)));
|
400 |
+
}
|
401 |
+
|
402 |
+
/**
|
403 |
+
* Load languages files
|
404 |
+
*
|
405 |
+
* @since 2.0.0
|
406 |
+
*/
|
407 |
+
public function load_plugin_textdomain() {
|
408 |
+
$domain = $this->plugin_slug;
|
409 |
+
$locale = apply_filters('plugin_locale', get_locale(), $domain);
|
410 |
+
|
411 |
+
load_textdomain($domain, trailingslashit(WP_LANG_DIR) . $domain . '/' . $domain . '-' . $locale . '.mo');
|
412 |
+
load_plugin_textdomain($domain, FALSE, WPMM_LANGUAGES_PATH);
|
413 |
+
}
|
414 |
+
|
415 |
+
/**
|
416 |
+
* Initialize when plugin is activated
|
417 |
+
*
|
418 |
+
* @since 2.0.0
|
419 |
+
*/
|
420 |
+
public function init() {
|
421 |
+
/**
|
422 |
+
* CHECKS
|
423 |
+
*/
|
424 |
+
if (
|
425 |
+
(!$this->check_user_role()) &&
|
426 |
+
!strstr($_SERVER['PHP_SELF'], 'wp-cron.php') &&
|
427 |
+
!strstr($_SERVER['PHP_SELF'], 'wp-login.php') &&
|
428 |
+
// wp-admin/ is available to everyone only if the user is not loggedin, otherwise.. check_user_role decides
|
429 |
+
!(strstr($_SERVER['PHP_SELF'], 'wp-admin/') && !is_user_logged_in()) &&
|
430 |
+
// !strstr($_SERVER['PHP_SELF'], 'wp-admin/') &&
|
431 |
+
!strstr($_SERVER['PHP_SELF'], 'wp-admin/admin-ajax.php') &&
|
432 |
+
!strstr($_SERVER['PHP_SELF'], 'async-upload.php') &&
|
433 |
+
!(strstr($_SERVER['PHP_SELF'], 'upgrade.php') && $this->check_user_role()) &&
|
434 |
+
!strstr($_SERVER['PHP_SELF'], '/plugins/') &&
|
435 |
+
!strstr($_SERVER['PHP_SELF'], '/xmlrpc.php') &&
|
436 |
+
!$this->check_exclude() &&
|
437 |
+
!$this->check_search_bots() &&
|
438 |
+
!(defined('WP_CLI') && WP_CLI)
|
439 |
+
) {
|
440 |
+
// HEADER STUFF
|
441 |
+
$protocol = !empty($_SERVER['SERVER_PROTOCOL']) && in_array($_SERVER['SERVER_PROTOCOL'], array('HTTP/1.1', 'HTTP/1.0')) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0';
|
442 |
+
$charset = get_bloginfo('charset') ? get_bloginfo('charset') : 'UTF-8';
|
443 |
+
$status_code = (int) apply_filters('wp_maintenance_mode_status_code', 503); // this hook will be removed in the next versions
|
444 |
+
$status_code = (int) apply_filters('wpmm_status_code', 503);
|
445 |
+
$backtime_seconds = $this->calculate_backtime();
|
446 |
+
$backtime = (int) apply_filters('wpmm_backtime', $backtime_seconds);
|
447 |
+
|
448 |
+
// META STUFF
|
449 |
+
$title = !empty($this->plugin_settings['design']['title']) ? $this->plugin_settings['design']['title'] : get_bloginfo('name') . ' - ' . __('Maintenance Mode', $this->plugin_slug);
|
450 |
+
$title = apply_filters('wm_title', $title); // this hook will be removed in the next versions
|
451 |
+
$title = apply_filters('wpmm_meta_title', $title);
|
452 |
+
|
453 |
+
$robots = $this->plugin_settings['general']['meta_robots'] == 1 ? 'noindex, nofollow' : 'index, follow';
|
454 |
+
$robots = apply_filters('wpmm_meta_robots', $robots);
|
455 |
+
|
456 |
+
$author = apply_filters('wm_meta_author', get_bloginfo('name')); // this hook will be removed in the next versions
|
457 |
+
$author = apply_filters('wpmm_meta_author', get_bloginfo('name'));
|
458 |
+
|
459 |
+
$description = get_bloginfo('name') . ' - ' . get_bloginfo('description');
|
460 |
+
$description = apply_filters('wm_meta_description', $description); // this hook will be removed in the next versions
|
461 |
+
$description = apply_filters('wpmm_meta_description', $description);
|
462 |
+
|
463 |
+
$keywords = __('Maintenance Mode', $this->plugin_slug);
|
464 |
+
$keywords = apply_filters('wm_meta_keywords', $keywords); // this hook will be removed in the next versions
|
465 |
+
$keywords = apply_filters('wpmm_meta_keywords', $keywords);
|
466 |
+
|
467 |
+
// CSS STUFF
|
468 |
+
$body_classes = !empty($this->plugin_settings['design']['bg_type']) && $this->plugin_settings['design']['bg_type'] != 'color' ? 'background' : '';
|
469 |
+
$custom_css_design = !empty($this->plugin_settings['design']['custom_css']) && is_array($this->plugin_settings['design']['custom_css']) ? $this->plugin_settings['design']['custom_css'] : array();
|
470 |
+
$custom_css_modules = !empty($this->plugin_settings['modules']['custom_css']) && is_array($this->plugin_settings['modules']['custom_css']) ? $this->plugin_settings['modules']['custom_css'] : array();
|
471 |
+
$custom_css = array_merge($custom_css_design, $custom_css_modules);
|
472 |
+
|
473 |
+
// CONTENT
|
474 |
+
$heading = !empty($this->plugin_settings['design']['heading']) ? $this->plugin_settings['design']['heading'] : '';
|
475 |
+
$heading = apply_filters('wm_heading', $heading); // this hook will be removed in the next versions
|
476 |
+
$heading = apply_filters('wpmm_heading', $heading);
|
477 |
+
|
478 |
+
$text = !empty($this->plugin_settings['design']['text']) ? $this->plugin_settings['design']['text'] : '';
|
479 |
+
$text = apply_filters('wpmm_text', do_shortcode($text));
|
480 |
+
|
481 |
+
// COUNTDOWN
|
482 |
+
$countdown_start = !empty($this->plugin_settings['modules']['countdown_start']) ? $this->plugin_settings['modules']['countdown_start'] : $this->plugin_settings['general']['status_data'];
|
483 |
+
$countdown_end = strtotime($countdown_start . ' +' . $backtime_seconds . ' seconds');
|
484 |
+
|
485 |
+
// JS FILES
|
486 |
+
$wp_scripts = new WP_Scripts();
|
487 |
+
$scripts = array(
|
488 |
+
'jquery' => !empty($wp_scripts->registered['jquery-core']) ? site_url($wp_scripts->registered['jquery-core']->src) : '//ajax.googleapis.com/ajax/libs/jquery/1.12.3/jquery.' . WPMM_ASSETS_SUFFIX . '.js',
|
489 |
+
'frontend' => WPMM_JS_URL . 'scripts' . WPMM_ASSETS_SUFFIX . '.js'
|
490 |
+
);
|
491 |
+
if (!empty($this->plugin_settings['modules']['countdown_status']) && $this->plugin_settings['modules']['countdown_status'] == 1) {
|
492 |
+
$scripts['countdown-dependency'] = WPMM_JS_URL . 'jquery.plugin' . WPMM_ASSETS_SUFFIX . '.js';
|
493 |
+
$scripts['countdown'] = WPMM_JS_URL . 'jquery.countdown' . WPMM_ASSETS_SUFFIX . '.js';
|
494 |
+
}
|
495 |
+
if ((!empty($this->plugin_settings['modules']['contact_status']) && $this->plugin_settings['modules']['contact_status'] == 1) || (!empty($this->plugin_settings['modules']['subscribe_status']) && $this->plugin_settings['modules']['subscribe_status'] == 1)) {
|
496 |
+
$scripts['validate'] = WPMM_JS_URL . 'jquery.validate' . WPMM_ASSETS_SUFFIX . '.js';
|
497 |
+
}
|
498 |
+
$scripts = apply_filters('wpmm_scripts', $scripts);
|
499 |
+
|
500 |
+
// CSS FILES
|
501 |
+
$styles = array(
|
502 |
+
'frontend' => WPMM_CSS_URL . 'style' . WPMM_ASSETS_SUFFIX . '.css'
|
503 |
+
);
|
504 |
+
$styles = apply_filters('wpmm_styles', $styles);
|
505 |
+
|
506 |
+
nocache_headers();
|
507 |
+
ob_start();
|
508 |
+
header("Content-type: text/html; charset=$charset");
|
509 |
+
header("$protocol $status_code Service Unavailable", TRUE, $status_code);
|
510 |
+
header("Retry-After: $backtime");
|
511 |
+
|
512 |
+
if (file_exists(WP_CONTENT_DIR . '/wp-maintenance-mode.php')) {
|
513 |
+
include_once(WP_CONTENT_DIR . '/wp-maintenance-mode.php');
|
514 |
+
} else {
|
515 |
+
include_once(WPMM_VIEWS_PATH . 'maintenance.php');
|
516 |
+
}
|
517 |
+
ob_flush();
|
518 |
+
|
519 |
+
exit();
|
520 |
+
}
|
521 |
+
}
|
522 |
+
|
523 |
+
/**
|
524 |
+
* Check if the current user has access to backend / frontend based on his role compared with role from settings (refactor @ 2.0.4)
|
525 |
+
*
|
526 |
+
* @since 2.0.0
|
527 |
+
* @return boolean
|
528 |
+
*/
|
529 |
+
public function check_user_role() {
|
530 |
+
if (is_super_admin()) {
|
531 |
+
return true;
|
532 |
+
}
|
533 |
+
|
534 |
+
$user = wp_get_current_user();
|
535 |
+
$user_roles = !empty($user->roles) && is_array($user->roles) ? $user->roles : array();
|
536 |
+
$allowed_roles = is_admin() ? $this->plugin_settings['general']['backend_role'] : $this->plugin_settings['general']['frontend_role'];
|
537 |
+
$is_allowed = (bool) array_intersect($user_roles, $allowed_roles);
|
538 |
+
|
539 |
+
// echo "<pre>";
|
540 |
+
// echo "user roles:";
|
541 |
+
// print_r($user_roles);
|
542 |
+
// echo "allowed roles:";
|
543 |
+
// print_r($allowed_roles);
|
544 |
+
// echo "is allowed:";
|
545 |
+
// var_dump($is_allowed);
|
546 |
+
// die;
|
547 |
+
|
548 |
+
return $is_allowed;
|
549 |
+
}
|
550 |
+
|
551 |
+
/**
|
552 |
+
* Calculate backtime based on countdown remaining time if it is activated
|
553 |
+
*
|
554 |
+
* @since 2.0.0
|
555 |
+
* @return int
|
556 |
+
*/
|
557 |
+
public function calculate_backtime() {
|
558 |
+
$backtime = 3600;
|
559 |
+
|
560 |
+
if (!empty($this->plugin_settings['modules']['countdown_status']) && $this->plugin_settings['modules']['countdown_status'] == 1) {
|
561 |
+
$backtime = ($this->plugin_settings['modules']['countdown_details']['days'] * DAY_IN_SECONDS) + ($this->plugin_settings['modules']['countdown_details']['hours'] * HOUR_IN_SECONDS) + ($this->plugin_settings['modules']['countdown_details']['minutes'] * MINUTE_IN_SECONDS);
|
562 |
+
}
|
563 |
+
|
564 |
+
return $backtime;
|
565 |
+
}
|
566 |
+
|
567 |
+
/**
|
568 |
+
* Check if the visitor is a bot (using useragent)
|
569 |
+
*
|
570 |
+
* @since 2.0.0
|
571 |
+
* @return boolean
|
572 |
+
*/
|
573 |
+
public function check_search_bots() {
|
574 |
+
$is_search_bots = false;
|
575 |
+
|
576 |
+
if (!empty($this->plugin_settings['general']['bypass_bots']) && $this->plugin_settings['general']['bypass_bots'] == 1) {
|
577 |
+
$bots = apply_filters('wpmm_search_bots', array(
|
578 |
+
'Abacho' => 'AbachoBOT',
|
579 |
+
'Accoona' => 'Acoon',
|
580 |
+
'AcoiRobot' => 'AcoiRobot',
|
581 |
+
'Adidxbot' => 'adidxbot',
|
582 |
+
'AltaVista robot' => 'Altavista',
|
583 |
+
'Altavista robot' => 'Scooter',
|
584 |
+
'ASPSeek' => 'ASPSeek',
|
585 |
+
'Atomz' => 'Atomz',
|
586 |
+
'Bing' => 'bingbot',
|
587 |
+
'BingPreview' => 'BingPreview',
|
588 |
+
'CrocCrawler' => 'CrocCrawler',
|
589 |
+
'Dumbot' => 'Dumbot',
|
590 |
+
'eStyle Bot' => 'eStyle',
|
591 |
+
'FAST-WebCrawler' => 'FAST-WebCrawler',
|
592 |
+
'GeonaBot' => 'GeonaBot',
|
593 |
+
'Gigabot' => 'Gigabot',
|
594 |
+
'Google' => 'Googlebot',
|
595 |
+
'ID-Search Bot' => 'IDBot',
|
596 |
+
'Lycos spider' => 'Lycos',
|
597 |
+
'MSN' => 'msnbot',
|
598 |
+
'MSRBOT' => 'MSRBOT',
|
599 |
+
'Rambler' => 'Rambler',
|
600 |
+
'Scrubby robot' => 'Scrubby',
|
601 |
+
'Yahoo' => 'Yahoo'
|
602 |
+
));
|
603 |
+
|
604 |
+
$is_search_bots = (bool) preg_match('~(' . implode('|', array_values($bots)) . ')~i', $_SERVER['HTTP_USER_AGENT']);
|
605 |
+
}
|
606 |
+
|
607 |
+
return $is_search_bots;
|
608 |
+
}
|
609 |
+
|
610 |
+
/**
|
611 |
+
* Check if slug / ip address exists in exclude list
|
612 |
+
*
|
613 |
+
* @since 2.0.0
|
614 |
+
* @return boolean
|
615 |
+
*/
|
616 |
+
public function check_exclude() {
|
617 |
+
$is_excluded = false;
|
618 |
+
$excluded_list = array();
|
619 |
+
|
620 |
+
if (!empty($this->plugin_settings['general']['exclude']) && is_array($this->plugin_settings['general']['exclude'])) {
|
621 |
+
$excluded_list = $this->plugin_settings['general']['exclude'];
|
622 |
+
|
623 |
+
foreach ($excluded_list as $item) {
|
624 |
+
if (empty($item)) { // just to be sure :-)
|
625 |
+
continue;
|
626 |
+
}
|
627 |
+
|
628 |
+
if ((!empty($_SERVER['REMOTE_ADDR']) && strstr($_SERVER['REMOTE_ADDR'], $item)) || (!empty($_SERVER['REQUEST_URI']) && strstr($_SERVER['REQUEST_URI'], $item))) {
|
629 |
+
$is_excluded = true;
|
630 |
+
break;
|
631 |
+
}
|
632 |
+
}
|
633 |
+
}
|
634 |
+
|
635 |
+
$is_excluded = apply_filters('wpmm_is_excluded', $is_excluded, $excluded_list);
|
636 |
+
|
637 |
+
return $is_excluded;
|
638 |
+
}
|
639 |
+
|
640 |
+
/**
|
641 |
+
* Redirect if "Redirection" option is used and users don't have access to WordPress dashboard
|
642 |
+
*
|
643 |
+
* @since 2.0.0
|
644 |
+
* @return null
|
645 |
+
*/
|
646 |
+
public function redirect() {
|
647 |
+
// we do not redirect if there's nothing saved in "redirect" input
|
648 |
+
if (empty($this->plugin_settings['general']['redirection'])) {
|
649 |
+
return NULL;
|
650 |
+
}
|
651 |
+
|
652 |
+
// we do not redirect ajax calls
|
653 |
+
if ((defined('DOING_AJAX') && DOING_AJAX)) {
|
654 |
+
return NULL;
|
655 |
+
}
|
656 |
+
|
657 |
+
// we do not redirect visitors or logged-in users that are not using /wp-admin/
|
658 |
+
if (!is_user_logged_in() || !is_admin()) {
|
659 |
+
return NULL;
|
660 |
+
}
|
661 |
+
|
662 |
+
// we do not redirect users that have access to backend
|
663 |
+
if ($this->check_user_role()) {
|
664 |
+
return NULL;
|
665 |
+
}
|
666 |
+
|
667 |
+
$redirect_to = stripslashes($this->plugin_settings['general']['redirection']);
|
668 |
+
wp_redirect($redirect_to);
|
669 |
+
exit;
|
670 |
+
}
|
671 |
+
|
672 |
+
/**
|
673 |
+
* Save subscriber into database (refactor @ 2.0.4)
|
674 |
+
*
|
675 |
+
* @since 2.0.0
|
676 |
+
* @global object $wpdb
|
677 |
+
* @throws Exception
|
678 |
+
*/
|
679 |
+
public function add_subscriber() {
|
680 |
+
global $wpdb;
|
681 |
+
|
682 |
+
try {
|
683 |
+
$_POST = array_map('trim', $_POST);
|
684 |
+
|
685 |
+
// checks
|
686 |
+
if (empty($_POST['email']) || !is_email($_POST['email'])) {
|
687 |
+
throw new Exception(__('Please enter a valid email address.', $this->plugin_slug));
|
688 |
+
}
|
689 |
+
|
690 |
+
// save
|
691 |
+
$exists = $wpdb->get_row($wpdb->prepare("SELECT id_subscriber FROM {$wpdb->prefix}wpmm_subscribers WHERE email = %s", sanitize_text_field($_POST['email'])), ARRAY_A);
|
692 |
+
if (empty($exists)) {
|
693 |
+
$wpdb->insert($wpdb->prefix . 'wpmm_subscribers', array(
|
694 |
+
'email' => sanitize_text_field($_POST['email']),
|
695 |
+
'insert_date' => date('Y-m-d H:i:s')
|
696 |
+
), array('%s', '%s'));
|
697 |
+
}
|
698 |
+
|
699 |
+
wp_send_json_success(__('You successfully subscribed. Thanks!', $this->plugin_slug));
|
700 |
+
} catch (Exception $ex) {
|
701 |
+
wp_send_json_error($ex->getMessage());
|
702 |
+
}
|
703 |
+
}
|
704 |
+
|
705 |
+
/**
|
706 |
+
* Send email via contact form (refactor @ 2.0.4)
|
707 |
+
*
|
708 |
+
* @since 2.0.0
|
709 |
+
* @throws Exception
|
710 |
+
*/
|
711 |
+
public function send_contact() {
|
712 |
+
try {
|
713 |
+
$_POST = array_map('trim', $_POST);
|
714 |
+
|
715 |
+
// checks
|
716 |
+
if (empty($_POST['name']) || empty($_POST['email']) || empty($_POST['content'])) {
|
717 |
+
throw new Exception(__('All fields required.', $this->plugin_slug));
|
718 |
+
}
|
719 |
+
|
720 |
+
if (!is_email($_POST['email'])) {
|
721 |
+
throw new Exception(__('Please enter a valid email address.', $this->plugin_slug));
|
722 |
+
}
|
723 |
+
|
724 |
+
// vars
|
725 |
+
$send_to = !empty($this->plugin_settings['modules']['contact_email']) ? stripslashes($this->plugin_settings['modules']['contact_email']) : get_option('admin_email');
|
726 |
+
$subject = __('Message via contact', $this->plugin_slug);
|
727 |
+
$headers = array('Reply-To: ' . sanitize_text_field($_POST['email']));
|
728 |
+
ob_start();
|
729 |
+
include_once(WPMM_VIEWS_PATH . 'contact.php');
|
730 |
+
$message = ob_get_clean();
|
731 |
+
|
732 |
+
// filters
|
733 |
+
add_filter('wp_mail_content_type', create_function('', 'return "text/html";'));
|
734 |
+
add_filter('wp_mail_from_name', create_function('', 'return sanitize_text_field($_POST["name"]);'));
|
735 |
+
|
736 |
+
// send email
|
737 |
+
@wp_mail($send_to, $subject, $message, $headers);
|
738 |
+
wp_send_json_success(__('Your email was sent to the website administrator. Thanks!', $this->plugin_slug));
|
739 |
+
} catch (Exception $ex) {
|
740 |
+
wp_send_json_error($ex->getMessage());
|
741 |
+
}
|
742 |
+
}
|
743 |
+
|
744 |
+
}
|
745 |
+
|
746 |
}
|
@@ -1,31 +1,90 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
/**
|
4 |
-
* Get plugin info
|
5 |
-
*
|
6 |
-
* @
|
7 |
-
* @
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
*
|
19 |
-
*
|
20 |
-
*
|
21 |
-
*
|
22 |
-
* @
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
31 |
}
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Get plugin info
|
5 |
+
*
|
6 |
+
* @since 2.0.0
|
7 |
+
* @param string $plugin_slug
|
8 |
+
* @return array
|
9 |
+
*/
|
10 |
+
function wpmm_plugin_info($plugin_slug) {
|
11 |
+
add_filter('extra_plugin_headers', create_function('', 'return array("GitHub Plugin URI","Twitter");'));
|
12 |
+
$plugin_data = get_plugin_data(WPMM_PATH . $plugin_slug . '.php');
|
13 |
+
|
14 |
+
return $plugin_data;
|
15 |
+
}
|
16 |
+
|
17 |
+
/**
|
18 |
+
* Count db records using where
|
19 |
+
*
|
20 |
+
* EDIT: PHP Notice: wpdb::prepare was called <strong>incorrectly</strong>. The query argument of wpdb::prepare() must have a placeholder.
|
21 |
+
*
|
22 |
+
* @since 2.0.0
|
23 |
+
* @global object $wpdb
|
24 |
+
* @param string $table
|
25 |
+
* @param string $field
|
26 |
+
* @param array $where eg: array('id_subscriber = %d' => 12)
|
27 |
+
*/
|
28 |
+
function wpmm_count_where($table, $field = 'ID', $where = array()) {
|
29 |
+
global $wpdb;
|
30 |
+
|
31 |
+
$table = $wpdb->prefix . $table;
|
32 |
+
$where_keys = array_keys($where);
|
33 |
+
$where_values = array_values($where);
|
34 |
+
|
35 |
+
if (!empty($where)) {
|
36 |
+
$query = $wpdb->prepare("SELECT COUNT({$field}) FROM {$table} WHERE " . implode(' AND ', $where_keys), $where_values);
|
37 |
+
} else {
|
38 |
+
$query = "SELECT COUNT({$field}) FROM {$table}";
|
39 |
+
}
|
40 |
+
|
41 |
+
$count = $wpdb->get_var($query);
|
42 |
+
|
43 |
+
return intval($count);
|
44 |
+
}
|
45 |
+
|
46 |
+
/**
|
47 |
+
* Outputs the html selected attribute
|
48 |
+
*
|
49 |
+
* @since 2.0.4
|
50 |
+
* @param array $values
|
51 |
+
* @param string $current
|
52 |
+
* @param bool $echo
|
53 |
+
* @return string html attribute or empty string
|
54 |
+
*/
|
55 |
+
function wpmm_multiselect($values, $current) {
|
56 |
+
foreach ($values as $k => $role) {
|
57 |
+
$is_selected = __checked_selected_helper($role, $current, false, 'selected');
|
58 |
+
if (!empty($is_selected)) {
|
59 |
+
return $is_selected;
|
60 |
+
break;
|
61 |
+
}
|
62 |
+
}
|
63 |
+
}
|
64 |
+
|
65 |
+
/**
|
66 |
+
* Get banners list from Maintenance Mode API
|
67 |
+
*
|
68 |
+
* @since 2.0.4
|
69 |
+
* @return array
|
70 |
+
*/
|
71 |
+
function wpmm_get_banners() {
|
72 |
+
if (false === ($banners = get_transient('wpmm_banners_list'))) {
|
73 |
+
$response = wp_remote_get('http://maintenancemode.co/wp-json/wpmm/v1/banners', array(
|
74 |
+
'timeout' => 10
|
75 |
+
));
|
76 |
+
|
77 |
+
$banners = array();
|
78 |
+
$items = json_decode(wp_remote_retrieve_body($response), true);
|
79 |
+
|
80 |
+
if (!empty($items) && is_array($items)) {
|
81 |
+
foreach ($items as $item) {
|
82 |
+
$banners[$item['type']][] = $item;
|
83 |
+
}
|
84 |
+
}
|
85 |
+
|
86 |
+
set_transient('wpmm_banners_list', $banners, 3 * HOUR_IN_SECONDS);
|
87 |
+
}
|
88 |
+
|
89 |
+
return $banners;
|
90 |
}
|
@@ -1,2 +1,2 @@
|
|
1 |
-
<?php
|
2 |
-
// Silence is golden.
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
@@ -1,2 +1,2 @@
|
|
1 |
-
<?php
|
2 |
-
// Silence is golden.
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
@@ -1,2 +1,2 @@
|
|
1 |
-
<?php
|
2 |
-
// Silence is golden.
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
@@ -1,2 +1,2 @@
|
|
1 |
-
<?php
|
2 |
-
// Silence is golden.
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
Binary file
|
@@ -1,459 +1,532 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: WP Maintenance Mode 2.0.
|
4 |
-
"POT-Creation-Date:
|
5 |
-
"PO-Revision-Date:
|
6 |
-
"Last-Translator:
|
7 |
-
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
-
"Language:
|
9 |
-
"MIME-Version: 1.0\n"
|
10 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
-
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"X-Generator: Poedit 1.
|
13 |
-
"X-Poedit-
|
14 |
-
"
|
15 |
-
"
|
16 |
-
"
|
17 |
-
"
|
18 |
-
"X-Poedit-
|
19 |
-
"
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
#: includes/classes/wp-maintenance-mode-admin.php:
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
"
|
33 |
-
"
|
34 |
-
|
35 |
-
|
36 |
-
"
|
37 |
-
|
38 |
-
|
39 |
-
#: includes/classes/wp-maintenance-mode.php:
|
40 |
-
msgid "
|
41 |
-
msgstr "
|
42 |
-
|
43 |
-
#: includes/classes/wp-maintenance-mode.php:
|
44 |
-
msgid ""
|
45 |
-
"
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
#: includes/classes/wp-maintenance-mode.php:
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
"
|
59 |
-
|
60 |
-
|
61 |
-
"
|
62 |
-
"
|
63 |
-
|
64 |
-
#: includes/classes/wp-maintenance-mode.php:
|
65 |
-
#: includes/classes/wp-maintenance-mode.php:
|
66 |
-
msgid "Maintenance
|
67 |
-
msgstr "Wartungsmodus"
|
68 |
-
|
69 |
-
#: includes/classes/wp-maintenance-mode.php:
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
msgstr "
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
#: views/maintenance.php:
|
95 |
-
msgid "
|
96 |
-
msgstr "
|
97 |
-
|
98 |
-
#:
|
99 |
-
msgid "
|
100 |
-
msgstr "
|
101 |
-
|
102 |
-
#:
|
103 |
-
msgid "
|
104 |
-
msgstr "
|
105 |
-
|
106 |
-
#:
|
107 |
-
msgid "
|
108 |
-
msgstr "
|
109 |
-
|
110 |
-
#:
|
111 |
-
msgid "Your
|
112 |
-
msgstr "Deine
|
113 |
-
|
114 |
-
#: views/
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
#: views/
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
"
|
201 |
-
"
|
202 |
-
|
203 |
-
#: views/settings.php:
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
#: views/settings.php:
|
216 |
-
msgid "
|
217 |
-
msgstr "
|
218 |
-
|
219 |
-
#: views/settings.php:
|
220 |
-
msgid ""
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
"
|
225 |
-
|
226 |
-
|
227 |
-
#: views/settings.php:
|
228 |
-
msgid "
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
#: views/settings.php:
|
257 |
-
msgid "
|
258 |
-
msgstr "
|
259 |
-
|
260 |
-
#: views/settings.php:
|
261 |
-
msgid "
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
msgstr "
|
295 |
-
|
296 |
-
#: views/settings.php:
|
297 |
-
msgid "
|
298 |
-
msgstr "
|
299 |
-
|
300 |
-
#: views/settings.php:
|
301 |
-
msgid "
|
302 |
-
msgstr "
|
303 |
-
|
304 |
-
#: views/settings.php:
|
305 |
-
msgid "
|
306 |
-
msgstr "
|
307 |
-
|
308 |
-
#: views/settings.php:
|
309 |
-
msgid "
|
310 |
-
msgstr "
|
311 |
-
|
312 |
-
#: views/settings.php:
|
313 |
-
msgid "
|
314 |
-
msgstr "
|
315 |
-
|
316 |
-
#: views/settings.php:
|
317 |
-
msgid "
|
318 |
-
msgstr "
|
319 |
-
|
320 |
-
#: views/settings.php:
|
321 |
-
msgid "
|
322 |
-
msgstr "
|
323 |
-
|
324 |
-
#: views/settings.php:
|
325 |
-
msgid "
|
326 |
-
msgstr "
|
327 |
-
|
328 |
-
#: views/settings.php:
|
329 |
-
msgid "
|
330 |
-
msgstr "
|
331 |
-
|
332 |
-
#: views/settings.php:
|
333 |
-
msgid "
|
334 |
-
msgstr "
|
335 |
-
|
336 |
-
#: views/settings.php:
|
337 |
-
msgid "
|
338 |
-
msgstr "
|
339 |
-
|
340 |
-
#: views/settings.php:
|
341 |
-
msgid "
|
342 |
-
msgstr "
|
343 |
-
|
344 |
-
#: views/settings.php:
|
345 |
-
msgid "
|
346 |
-
msgstr "
|
347 |
-
|
348 |
-
#: views/settings.php:
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
msgid "
|
359 |
-
msgstr "
|
360 |
-
|
361 |
-
#: views/settings.php:
|
362 |
-
msgid "
|
363 |
-
msgstr "
|
364 |
-
|
365 |
-
#: views/settings.php:
|
366 |
-
msgid "
|
367 |
-
msgstr ""
|
368 |
-
|
369 |
-
#: views/settings.php:
|
370 |
-
msgid "
|
371 |
-
msgstr ""
|
372 |
-
|
373 |
-
#: views/settings.php:
|
374 |
-
msgid "
|
375 |
-
msgstr ""
|
376 |
-
|
377 |
-
#: views/settings.php:
|
378 |
-
msgid "
|
379 |
-
msgstr ""
|
380 |
-
|
381 |
-
#: views/settings.php:
|
382 |
-
msgid "
|
383 |
-
msgstr "
|
384 |
-
|
385 |
-
#: views/settings.php:
|
386 |
-
msgid "
|
387 |
-
msgstr "
|
388 |
-
|
389 |
-
#: views/settings.php:
|
390 |
-
msgid "
|
391 |
-
msgstr "
|
392 |
-
|
393 |
-
#: views/settings.php:
|
394 |
-
msgid "
|
395 |
-
msgstr "
|
396 |
-
|
397 |
-
#: views/settings.php:
|
398 |
-
msgid "
|
399 |
-
msgstr "
|
400 |
-
|
401 |
-
#: views/settings.php:
|
402 |
-
msgid "
|
403 |
-
msgstr "
|
404 |
-
|
405 |
-
#: views/settings.php:
|
406 |
-
msgid "
|
407 |
-
msgstr "
|
408 |
-
|
409 |
-
#: views/settings.php:
|
410 |
-
msgid "
|
411 |
-
msgstr ""
|
412 |
-
|
413 |
-
#: views/settings.php:
|
414 |
-
msgid "
|
415 |
-
msgstr ""
|
416 |
-
|
417 |
-
#: views/settings.php:
|
418 |
-
msgid "
|
419 |
-
msgstr ""
|
420 |
-
|
421 |
-
#: views/
|
422 |
-
msgid "
|
423 |
-
msgstr "
|
424 |
-
|
425 |
-
#: views/
|
426 |
-
msgid "
|
427 |
-
msgstr "
|
428 |
-
|
429 |
-
#: views/
|
430 |
-
msgid "
|
431 |
-
msgstr "
|
432 |
-
|
433 |
-
#: views/
|
434 |
-
msgid "
|
435 |
-
msgstr "
|
436 |
-
|
437 |
-
#: views/
|
438 |
-
msgid "
|
439 |
-
msgstr "
|
440 |
-
|
441 |
-
#: views/
|
442 |
-
msgid "
|
443 |
-
msgstr ""
|
444 |
-
|
445 |
-
#: views/
|
446 |
-
msgid "
|
447 |
-
msgstr "
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: WP Maintenance Mode 2.0.4\n"
|
4 |
+
"POT-Creation-Date: 2016-06-17 03:11+0300\n"
|
5 |
+
"PO-Revision-Date: \n"
|
6 |
+
"Last-Translator: \n"
|
7 |
+
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
+
"Language: de\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 1.8.8\n"
|
13 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
14 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
15 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
|
16 |
+
"esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;"
|
17 |
+
"esc_html_x:1,2c\n"
|
18 |
+
"X-Poedit-Basepath: ..\n"
|
19 |
+
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
20 |
+
"X-Poedit-SearchPath-0: includes/classes\n"
|
21 |
+
"X-Poedit-SearchPath-1: views\n"
|
22 |
+
"X-Poedit-SearchPath-2: .\n"
|
23 |
+
|
24 |
+
#: includes/classes/wp-maintenance-mode-admin.php:121
|
25 |
+
#: includes/classes/wp-maintenance-mode-admin.php:159
|
26 |
+
#: includes/classes/wp-maintenance-mode-admin.php:181
|
27 |
+
msgid "You do not have access to this resource."
|
28 |
+
msgstr ""
|
29 |
+
|
30 |
+
#: includes/classes/wp-maintenance-mode-admin.php:165 views/settings.php:295
|
31 |
+
#, php-format
|
32 |
+
msgid "You have %d subscriber(s)"
|
33 |
+
msgstr "Du hast %d Abonnenten"
|
34 |
+
|
35 |
+
#: includes/classes/wp-maintenance-mode-admin.php:186
|
36 |
+
msgid "The tab slug must not be empty."
|
37 |
+
msgstr ""
|
38 |
+
|
39 |
+
#: includes/classes/wp-maintenance-mode-admin.php:191
|
40 |
+
msgid "The tab slug must exist."
|
41 |
+
msgstr ""
|
42 |
+
|
43 |
+
#: includes/classes/wp-maintenance-mode-admin.php:211
|
44 |
+
msgid "WP Maintenance Mode"
|
45 |
+
msgstr "WP Wartungsmodus"
|
46 |
+
|
47 |
+
#: includes/classes/wp-maintenance-mode-admin.php:425
|
48 |
+
msgid "Settings"
|
49 |
+
msgstr "Einstellungen"
|
50 |
+
|
51 |
+
#: includes/classes/wp-maintenance-mode-admin.php:444
|
52 |
+
#, php-format
|
53 |
+
msgid ""
|
54 |
+
"The Maintenance Mode is <strong>active</strong>. Please don't forget to <a "
|
55 |
+
"href=\"%s\">deactivate</a> as soon as you are done."
|
56 |
+
msgstr ""
|
57 |
+
"Der Wartungsmodus ist <strong>aktiv</strong>. Bitte vergiss nicht ihn zu <a "
|
58 |
+
"href=\"%s\">deaktivieren</a>, wenn er nicht mehr benötigt wird."
|
59 |
+
|
60 |
+
#: includes/classes/wp-maintenance-mode-admin.php:481
|
61 |
+
msgid "Notice key cannot be empty."
|
62 |
+
msgstr ""
|
63 |
+
|
64 |
+
#: includes/classes/wp-maintenance-mode.php:103
|
65 |
+
#: includes/classes/wp-maintenance-mode.php:104
|
66 |
+
msgid "Maintenance mode"
|
67 |
+
msgstr "Wartungsmodus"
|
68 |
+
|
69 |
+
#: includes/classes/wp-maintenance-mode.php:106
|
70 |
+
msgid ""
|
71 |
+
"<p>Sorry for the inconvenience.<br />Our website is currently undergoing "
|
72 |
+
"scheduled maintenance.<br />Thank you for your understanding.</p>"
|
73 |
+
msgstr ""
|
74 |
+
|
75 |
+
#: includes/classes/wp-maintenance-mode.php:124
|
76 |
+
msgid "Notify me when it's ready"
|
77 |
+
msgstr "Informiere mich, wenn die Arbeiten abgeschlossen sind."
|
78 |
+
|
79 |
+
#: includes/classes/wp-maintenance-mode.php:259
|
80 |
+
#, php-format
|
81 |
+
msgid ""
|
82 |
+
"WP Maintenance Mode plugin was relaunched and you MUST revise <a href=\"%s"
|
83 |
+
"\">settings</a>."
|
84 |
+
msgstr ""
|
85 |
+
"Das WP Wartungsmodus Plugin wurde neu erstellt und du MUSST die <a href=\"%s"
|
86 |
+
"\"></a> Einstellungen bearbeiten."
|
87 |
+
|
88 |
+
#: includes/classes/wp-maintenance-mode.php:449
|
89 |
+
#: includes/classes/wp-maintenance-mode.php:463
|
90 |
+
msgid "Maintenance Mode"
|
91 |
+
msgstr "Wartungsmodus"
|
92 |
+
|
93 |
+
#: includes/classes/wp-maintenance-mode.php:687
|
94 |
+
#: includes/classes/wp-maintenance-mode.php:721 views/maintenance.php:85
|
95 |
+
msgid "Please enter a valid email address."
|
96 |
+
msgstr "Bitte gib eine gültige E-Mail-Adresse an."
|
97 |
+
|
98 |
+
#: includes/classes/wp-maintenance-mode.php:699
|
99 |
+
msgid "You successfully subscribed. Thanks!"
|
100 |
+
msgstr ""
|
101 |
+
|
102 |
+
#: includes/classes/wp-maintenance-mode.php:717
|
103 |
+
msgid "All fields required."
|
104 |
+
msgstr "Alle Felder sind notwendig."
|
105 |
+
|
106 |
+
#: includes/classes/wp-maintenance-mode.php:726
|
107 |
+
msgid "Message via contact"
|
108 |
+
msgstr "Mitteilung via Kontakt"
|
109 |
+
|
110 |
+
#: includes/classes/wp-maintenance-mode.php:738
|
111 |
+
msgid "Your email was sent to the website administrator. Thanks!"
|
112 |
+
msgstr "Deine E-Mail wurde an den Administrator der Website gesendet. Danke!"
|
113 |
+
|
114 |
+
#: views/contact.php:34
|
115 |
+
#, php-format
|
116 |
+
msgid "You have been contacted via %s."
|
117 |
+
msgstr ""
|
118 |
+
|
119 |
+
#: views/contact.php:50
|
120 |
+
msgid "Name:"
|
121 |
+
msgstr ""
|
122 |
+
|
123 |
+
#: views/contact.php:62
|
124 |
+
msgid "Email:"
|
125 |
+
msgstr ""
|
126 |
+
|
127 |
+
#: views/contact.php:74
|
128 |
+
msgid "Content:"
|
129 |
+
msgstr ""
|
130 |
+
|
131 |
+
#: views/loginform.php:8
|
132 |
+
msgid "Login"
|
133 |
+
msgstr ""
|
134 |
+
|
135 |
+
#: views/maintenance.php:42
|
136 |
+
msgid "your e-mail..."
|
137 |
+
msgstr "deine E-Mail..."
|
138 |
+
|
139 |
+
#: views/maintenance.php:43 views/settings.php:270
|
140 |
+
msgid "Subscribe"
|
141 |
+
msgstr "Abonniere"
|
142 |
+
|
143 |
+
#: views/maintenance.php:84 views/sidebar.php:7
|
144 |
+
msgid "Name"
|
145 |
+
msgstr "Name"
|
146 |
+
|
147 |
+
#: views/maintenance.php:84 views/maintenance.php:85 views/maintenance.php:87
|
148 |
+
msgid "This field is required."
|
149 |
+
msgstr ""
|
150 |
+
|
151 |
+
#: views/maintenance.php:85
|
152 |
+
msgid "E-mail"
|
153 |
+
msgstr "E-Mail"
|
154 |
+
|
155 |
+
#: views/maintenance.php:87
|
156 |
+
msgid "Your message"
|
157 |
+
msgstr "Deine Mitteilung"
|
158 |
+
|
159 |
+
#: views/maintenance.php:88
|
160 |
+
msgid "Send"
|
161 |
+
msgstr "Senden"
|
162 |
+
|
163 |
+
#: views/maintenance.php:93
|
164 |
+
msgid "Contact us"
|
165 |
+
msgstr "Kontaktiere uns"
|
166 |
+
|
167 |
+
#: views/maintenance.php:98
|
168 |
+
msgid "Dashboard"
|
169 |
+
msgstr ""
|
170 |
+
|
171 |
+
#: views/settings.php:6
|
172 |
+
msgid "Settings saved."
|
173 |
+
msgstr "Einstellungen gespeichert."
|
174 |
+
|
175 |
+
#: views/settings.php:13
|
176 |
+
msgid "General"
|
177 |
+
msgstr "Allgemein"
|
178 |
+
|
179 |
+
#: views/settings.php:14
|
180 |
+
msgid "Design"
|
181 |
+
msgstr "Design"
|
182 |
+
|
183 |
+
#: views/settings.php:15
|
184 |
+
msgid "Modules"
|
185 |
+
msgstr "Module"
|
186 |
+
|
187 |
+
#: views/settings.php:24
|
188 |
+
msgid "Status"
|
189 |
+
msgstr "Status"
|
190 |
+
|
191 |
+
#: views/settings.php:26
|
192 |
+
msgid "Activated"
|
193 |
+
msgstr "Aktiv"
|
194 |
+
|
195 |
+
#: views/settings.php:27
|
196 |
+
msgid "Deactivated"
|
197 |
+
msgstr "Inaktiv"
|
198 |
+
|
199 |
+
#: views/settings.php:31
|
200 |
+
msgid "Bypass for Search Bots"
|
201 |
+
msgstr "Bypass für Such-Bots"
|
202 |
+
|
203 |
+
#: views/settings.php:34 views/settings.php:104 views/settings.php:114
|
204 |
+
#: views/settings.php:242 views/settings.php:278 views/settings.php:316
|
205 |
+
#: views/settings.php:384 views/settings.php:416
|
206 |
+
msgid "Yes"
|
207 |
+
msgstr "Ja"
|
208 |
+
|
209 |
+
#: views/settings.php:35 views/settings.php:105 views/settings.php:115
|
210 |
+
#: views/settings.php:243 views/settings.php:279 views/settings.php:317
|
211 |
+
#: views/settings.php:385 views/settings.php:417
|
212 |
+
msgid "No"
|
213 |
+
msgstr "Nein"
|
214 |
+
|
215 |
+
#: views/settings.php:37
|
216 |
+
msgid "Allow Search Bots to bypass maintenance mode?"
|
217 |
+
msgstr "Erlaube Such-Bots den Zugang via Bypass?"
|
218 |
+
|
219 |
+
#: views/settings.php:41
|
220 |
+
msgid "Backend Role"
|
221 |
+
msgstr "Backend-Rolle"
|
222 |
+
|
223 |
+
#: views/settings.php:43 views/settings.php:59
|
224 |
+
msgid "Select role(s)"
|
225 |
+
msgstr ""
|
226 |
+
|
227 |
+
#: views/settings.php:53
|
228 |
+
msgid ""
|
229 |
+
"Which user role is allowed to access the backend of this blog? "
|
230 |
+
"Administrators will always have access."
|
231 |
+
msgstr ""
|
232 |
+
|
233 |
+
#: views/settings.php:57
|
234 |
+
msgid "Frontend Role"
|
235 |
+
msgstr "Frontend-Rolle"
|
236 |
+
|
237 |
+
#: views/settings.php:69
|
238 |
+
msgid ""
|
239 |
+
"Which user role is allowed to access the frontend of this blog? "
|
240 |
+
"Administrators will always have access."
|
241 |
+
msgstr ""
|
242 |
+
|
243 |
+
#: views/settings.php:73
|
244 |
+
msgid "Robots Meta Tag"
|
245 |
+
msgstr "Robots Meta Tag"
|
246 |
+
|
247 |
+
#: views/settings.php:79
|
248 |
+
msgid ""
|
249 |
+
"The robots meta tag lets you use a granular, page-specific approach to "
|
250 |
+
"control how an individual page should be indexed and served to users in "
|
251 |
+
"search results."
|
252 |
+
msgstr ""
|
253 |
+
"Mit dem Robots Meta Tag kannst du steuern, wie die Seite während des "
|
254 |
+
"Wartungsmodus indiziert werden soll."
|
255 |
+
|
256 |
+
#: views/settings.php:83
|
257 |
+
msgid "Redirection"
|
258 |
+
msgstr "Weiterleitung"
|
259 |
+
|
260 |
+
#: views/settings.php:86
|
261 |
+
msgid ""
|
262 |
+
"If you want to redirect a user (with no access to Dashboard/Backend) to a "
|
263 |
+
"URL (different from WordPress Dashboard URL) after login, then define a URL "
|
264 |
+
"(incl. http://)"
|
265 |
+
msgstr ""
|
266 |
+
|
267 |
+
#: views/settings.php:90
|
268 |
+
msgid "Exclude"
|
269 |
+
msgstr "Ausschluss"
|
270 |
+
|
271 |
+
#: views/settings.php:97
|
272 |
+
msgid ""
|
273 |
+
"Exclude feed, pages, archives or IPs from maintenance mode. Add one slug / "
|
274 |
+
"IP per line!"
|
275 |
+
msgstr ""
|
276 |
+
"Ausschluss vom Wartungsmodus von Feed, Seiten, Archiven oder IPs möglich. "
|
277 |
+
"Ergänze einen Slug oder die IP pro Zeile."
|
278 |
+
|
279 |
+
#: views/settings.php:101
|
280 |
+
msgid "Notice"
|
281 |
+
msgstr "Hinweis"
|
282 |
+
|
283 |
+
#: views/settings.php:107
|
284 |
+
msgid "Do you want to see notices when maintenance mode is activated?"
|
285 |
+
msgstr "Willst du den Hinweis sehen, wenn der Wartungsmodus aktiv ist?"
|
286 |
+
|
287 |
+
#: views/settings.php:111
|
288 |
+
msgid "Dashboard link"
|
289 |
+
msgstr ""
|
290 |
+
|
291 |
+
#: views/settings.php:117
|
292 |
+
msgid ""
|
293 |
+
"Do you want to add a link to the dashboard on your maintenance mode page?"
|
294 |
+
msgstr "Soll ein Link zum Backend auf der Wartungswebseite angezeigt werden?"
|
295 |
+
|
296 |
+
#: views/settings.php:125 views/settings.php:228 views/settings.php:432
|
297 |
+
msgid "Save settings"
|
298 |
+
msgstr "Einstellungen speichern"
|
299 |
+
|
300 |
+
#: views/settings.php:126 views/settings.php:229 views/settings.php:433
|
301 |
+
msgid "Reset settings"
|
302 |
+
msgstr "Einstellungen zurücksetzen"
|
303 |
+
|
304 |
+
#: views/settings.php:131
|
305 |
+
msgid "Content"
|
306 |
+
msgstr "Inhalt"
|
307 |
+
|
308 |
+
#: views/settings.php:136
|
309 |
+
msgid "Title (HTML tag)"
|
310 |
+
msgstr "Titel (html Tag)"
|
311 |
+
|
312 |
+
#: views/settings.php:142
|
313 |
+
msgid "Heading"
|
314 |
+
msgstr "Überschrift"
|
315 |
+
|
316 |
+
#: views/settings.php:149 views/settings.php:284
|
317 |
+
msgid "Text"
|
318 |
+
msgstr "Text"
|
319 |
+
|
320 |
+
#: views/settings.php:169
|
321 |
+
msgid "Background"
|
322 |
+
msgstr "Hintergrund"
|
323 |
+
|
324 |
+
#: views/settings.php:174
|
325 |
+
msgid "Choose type"
|
326 |
+
msgstr "Type wählen"
|
327 |
+
|
328 |
+
#: views/settings.php:177
|
329 |
+
msgid "Custom color"
|
330 |
+
msgstr "Benutzerdefinierte Farbe"
|
331 |
+
|
332 |
+
#: views/settings.php:178
|
333 |
+
msgid "Uploaded background"
|
334 |
+
msgstr "Hochgeladene Hintergründe"
|
335 |
+
|
336 |
+
#: views/settings.php:179
|
337 |
+
msgid "Predefined background"
|
338 |
+
msgstr "Vordefinierte Hintergründe"
|
339 |
+
|
340 |
+
#: views/settings.php:184
|
341 |
+
msgid "Choose color"
|
342 |
+
msgstr "Farbe wählen"
|
343 |
+
|
344 |
+
#: views/settings.php:190
|
345 |
+
msgid "Upload background"
|
346 |
+
msgstr "Hintergrund laden"
|
347 |
+
|
348 |
+
#: views/settings.php:194
|
349 |
+
msgid "Backgrounds should have 1920x1280 px size."
|
350 |
+
msgstr "Hintergründe sollten eine Größe von 1920x1280 px haben."
|
351 |
+
|
352 |
+
#: views/settings.php:199
|
353 |
+
msgid "Choose background"
|
354 |
+
msgstr "Hintergrund wählen"
|
355 |
+
|
356 |
+
#: views/settings.php:201
|
357 |
+
#, php-format
|
358 |
+
msgid "source <a href=\"%s\" target=\"_blank\">Free Photos</a>"
|
359 |
+
msgstr ""
|
360 |
+
|
361 |
+
#: views/settings.php:234
|
362 |
+
msgid "Countdown"
|
363 |
+
msgstr "Countdown"
|
364 |
+
|
365 |
+
#: views/settings.php:239
|
366 |
+
msgid "Show countdown?"
|
367 |
+
msgstr "Zeige Countdown?"
|
368 |
+
|
369 |
+
#: views/settings.php:248
|
370 |
+
msgid "Start date"
|
371 |
+
msgstr "Start-Datum"
|
372 |
+
|
373 |
+
#: views/settings.php:254
|
374 |
+
msgid "Countdown (remaining time)"
|
375 |
+
msgstr "Countdown (Restzeit)"
|
376 |
+
|
377 |
+
#: views/settings.php:256
|
378 |
+
msgid "Days"
|
379 |
+
msgstr "Tage"
|
380 |
+
|
381 |
+
#: views/settings.php:257
|
382 |
+
msgid "Hours"
|
383 |
+
msgstr "Stunden"
|
384 |
+
|
385 |
+
#: views/settings.php:258
|
386 |
+
msgid "Minutes"
|
387 |
+
msgstr "Minuten"
|
388 |
+
|
389 |
+
#: views/settings.php:262
|
390 |
+
msgid "Color"
|
391 |
+
msgstr "Farbe"
|
392 |
+
|
393 |
+
#: views/settings.php:275
|
394 |
+
msgid "Show subscribe?"
|
395 |
+
msgstr "Zeige Abonnenten?"
|
396 |
+
|
397 |
+
#: views/settings.php:291
|
398 |
+
msgid "Stats"
|
399 |
+
msgstr "Statistik"
|
400 |
+
|
401 |
+
#: views/settings.php:300
|
402 |
+
msgid "Export as CSV"
|
403 |
+
msgstr "Export als CSV"
|
404 |
+
|
405 |
+
#: views/settings.php:301
|
406 |
+
msgid "Empty subscribers list"
|
407 |
+
msgstr ""
|
408 |
+
|
409 |
+
#: views/settings.php:308
|
410 |
+
msgid "Social Networks"
|
411 |
+
msgstr "Soziale Netzwerke"
|
412 |
+
|
413 |
+
#: views/settings.php:313
|
414 |
+
msgid "Show social networks?"
|
415 |
+
msgstr "Zeige soziale Netzwerke?"
|
416 |
+
|
417 |
+
#: views/settings.php:322
|
418 |
+
msgid "Links target?"
|
419 |
+
msgstr "Link-Ziel"
|
420 |
+
|
421 |
+
#: views/settings.php:325
|
422 |
+
msgid "New page"
|
423 |
+
msgstr "Neue Seite"
|
424 |
+
|
425 |
+
#: views/settings.php:326
|
426 |
+
msgid "Same page"
|
427 |
+
msgstr "Selbe Seite"
|
428 |
+
|
429 |
+
#: views/settings.php:328
|
430 |
+
msgid "Choose how the links will open."
|
431 |
+
msgstr "Wie soll der Link geöffnet werden?"
|
432 |
+
|
433 |
+
#: views/settings.php:376
|
434 |
+
msgid "Contact"
|
435 |
+
msgstr "Kontakt"
|
436 |
+
|
437 |
+
#: views/settings.php:381
|
438 |
+
msgid "Show contact?"
|
439 |
+
msgstr "Zeige Kontakt?"
|
440 |
+
|
441 |
+
#: views/settings.php:390
|
442 |
+
msgid "Email address"
|
443 |
+
msgstr "E-Mail-Adresse"
|
444 |
+
|
445 |
+
#: views/settings.php:396
|
446 |
+
msgid "Effects"
|
447 |
+
msgstr "Effekte"
|
448 |
+
|
449 |
+
#: views/settings.php:399
|
450 |
+
msgid "Move top - Move bottom"
|
451 |
+
msgstr "Bewegung nach oben - nach untern"
|
452 |
+
|
453 |
+
#: views/settings.php:400
|
454 |
+
msgid "Zoom - Zoomed"
|
455 |
+
msgstr "Zoom - Vergrößern"
|
456 |
+
|
457 |
+
#: views/settings.php:401
|
458 |
+
msgid "Fold - Unfold"
|
459 |
+
msgstr "Falten - Klappen"
|
460 |
+
|
461 |
+
#: views/settings.php:408
|
462 |
+
msgid "Google Analytics"
|
463 |
+
msgstr "Google Analytics"
|
464 |
+
|
465 |
+
#: views/settings.php:413
|
466 |
+
msgid "Use Google Analytics?"
|
467 |
+
msgstr "Wird Google Analytics verwendet?"
|
468 |
+
|
469 |
+
#: views/settings.php:422
|
470 |
+
msgid "Tracking code"
|
471 |
+
msgstr ""
|
472 |
+
|
473 |
+
#: views/sidebar.php:3
|
474 |
+
msgid "Plugin Info"
|
475 |
+
msgstr "Plugin Info"
|
476 |
+
|
477 |
+
#: views/sidebar.php:13
|
478 |
+
msgid "Author"
|
479 |
+
msgstr "Autor"
|
480 |
+
|
481 |
+
#: views/sidebar.php:14
|
482 |
+
msgid "Website"
|
483 |
+
msgstr "Webseite"
|
484 |
+
|
485 |
+
#: views/sidebar.php:15
|
486 |
+
msgid "Twitter"
|
487 |
+
msgstr "Twitter"
|
488 |
+
|
489 |
+
#: views/sidebar.php:16
|
490 |
+
msgid "GitHub"
|
491 |
+
msgstr "GitHub"
|
492 |
+
|
493 |
+
#: views/sidebar.php:27
|
494 |
+
msgid "Other products"
|
495 |
+
msgstr ""
|
496 |
+
|
497 |
+
#: views/sidebar.php:44
|
498 |
+
msgid "Resources"
|
499 |
+
msgstr "Ressourcen"
|
500 |
+
|
501 |
+
#~ msgid "You successfuly subscribed. Thanks!"
|
502 |
+
#~ msgstr "Erfolgreich abonniert, Danke!"
|
503 |
+
|
504 |
+
#~ msgid "Which user role is allowed to access the backend of this blog?"
|
505 |
+
#~ msgstr ""
|
506 |
+
#~ "Mit welcher Rolle soll man Zugang zum Backend der Webseite erhalten?"
|
507 |
+
|
508 |
+
#~ msgid "Which user role is allowed to access the frontend of this blog?"
|
509 |
+
#~ msgstr ""
|
510 |
+
#~ "Mit welcher Rolle soll man Zugang zum Frontend der Webseite erhalten?"
|
511 |
+
|
512 |
+
#~ msgid ""
|
513 |
+
#~ "If you want to redirect a user to a URL (which is not the WordPress "
|
514 |
+
#~ "dashboard) after login, then define a URL (incl. http://)"
|
515 |
+
#~ msgstr ""
|
516 |
+
#~ "Willst du eine Weiterleitung nach dem Login zu einer URL, dann definiere "
|
517 |
+
#~ "eine URL (inkl. http://)?"
|
518 |
+
|
519 |
+
#~ msgid "source <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
520 |
+
#~ msgstr "Quelle <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
521 |
+
|
522 |
+
#~ msgid "Subscribe now for early access to new WordPress themes."
|
523 |
+
#~ msgstr "Abonniere jetzt für frühen Zugang zu neuen WordPress Themes."
|
524 |
+
|
525 |
+
#~ msgid "Enter your email address"
|
526 |
+
#~ msgstr "Gib deine E-Mail-Adresse an"
|
527 |
+
|
528 |
+
#~ msgid "News"
|
529 |
+
#~ msgstr "News"
|
530 |
+
|
531 |
+
#~ msgid "Developed by <a href=\"%s\">Designmodo</a>"
|
532 |
+
#~ msgstr "Entwickelt durch <a href=\"%s\">Designmodo</a>"
|
Binary file
|
@@ -1,435 +1,491 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: WP Maintenance Mode 2.0.
|
4 |
-
"POT-Creation-Date:
|
5 |
-
"PO-Revision-Date:
|
6 |
-
"Last-Translator:
|
7 |
-
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
-
"Language: en\n"
|
9 |
-
"MIME-Version: 1.0\n"
|
10 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
-
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"X-Generator: Poedit 1.
|
13 |
-
"X-Poedit-Basepath:
|
14 |
-
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
-
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
-
"X-Poedit-KeywordsList: __;_e
|
17 |
-
"
|
18 |
-
"
|
19 |
-
"
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
#: includes/classes/wp-maintenance-mode-admin.php:
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
"
|
33 |
-
"
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
"
|
45 |
-
msgstr ""
|
46 |
-
|
47 |
-
#: includes/classes/wp-maintenance-mode.php:
|
48 |
-
msgid "
|
49 |
-
msgstr ""
|
50 |
-
|
51 |
-
#: includes/classes/wp-maintenance-mode.php:
|
52 |
-
#, php-format
|
53 |
-
msgid ""
|
54 |
-
"
|
55 |
-
"\">
|
56 |
-
msgstr ""
|
57 |
-
|
58 |
-
#: includes/classes/wp-maintenance-mode.php:
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
#: includes/classes/wp-maintenance-mode.php:
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
msgstr ""
|
83 |
-
|
84 |
-
#:
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
#: views/
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
msgstr ""
|
194 |
-
|
195 |
-
#: views/settings.php:
|
196 |
-
msgid "
|
197 |
-
msgstr ""
|
198 |
-
|
199 |
-
#: views/settings.php:
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
msgstr ""
|
204 |
-
|
205 |
-
#: views/settings.php:
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
"
|
213 |
-
msgstr ""
|
214 |
-
|
215 |
-
#: views/settings.php:
|
216 |
-
msgid "
|
217 |
-
msgstr ""
|
218 |
-
|
219 |
-
#: views/settings.php:
|
220 |
-
msgid "
|
221 |
-
msgstr ""
|
222 |
-
|
223 |
-
#: views/settings.php:
|
224 |
-
msgid "
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
msgstr ""
|
287 |
-
|
288 |
-
#: views/settings.php:
|
289 |
-
msgid "
|
290 |
-
msgstr ""
|
291 |
-
|
292 |
-
#: views/settings.php:
|
293 |
-
msgid "
|
294 |
-
msgstr ""
|
295 |
-
|
296 |
-
#: views/settings.php:
|
297 |
-
msgid "
|
298 |
-
msgstr ""
|
299 |
-
|
300 |
-
#: views/settings.php:
|
301 |
-
msgid "
|
302 |
-
msgstr ""
|
303 |
-
|
304 |
-
#: views/settings.php:
|
305 |
-
msgid "
|
306 |
-
msgstr ""
|
307 |
-
|
308 |
-
#: views/settings.php:
|
309 |
-
msgid "
|
310 |
-
msgstr ""
|
311 |
-
|
312 |
-
#: views/settings.php:
|
313 |
-
msgid "
|
314 |
-
msgstr ""
|
315 |
-
|
316 |
-
#: views/settings.php:
|
317 |
-
msgid "
|
318 |
-
msgstr ""
|
319 |
-
|
320 |
-
#: views/settings.php:
|
321 |
-
msgid "
|
322 |
-
msgstr ""
|
323 |
-
|
324 |
-
#: views/settings.php:
|
325 |
-
msgid "
|
326 |
-
msgstr ""
|
327 |
-
|
328 |
-
#: views/settings.php:
|
329 |
-
msgid "
|
330 |
-
msgstr ""
|
331 |
-
|
332 |
-
#: views/settings.php:
|
333 |
-
msgid "
|
334 |
-
msgstr ""
|
335 |
-
|
336 |
-
#: views/settings.php:
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
msgid "
|
351 |
-
msgstr ""
|
352 |
-
|
353 |
-
#: views/settings.php:
|
354 |
-
msgid "
|
355 |
-
msgstr ""
|
356 |
-
|
357 |
-
#: views/settings.php:
|
358 |
-
msgid "
|
359 |
-
msgstr ""
|
360 |
-
|
361 |
-
#: views/settings.php:
|
362 |
-
msgid "
|
363 |
-
msgstr ""
|
364 |
-
|
365 |
-
#: views/settings.php:
|
366 |
-
msgid "
|
367 |
-
msgstr ""
|
368 |
-
|
369 |
-
#: views/settings.php:
|
370 |
-
msgid "
|
371 |
-
msgstr ""
|
372 |
-
|
373 |
-
#: views/settings.php:
|
374 |
-
msgid "
|
375 |
-
msgstr ""
|
376 |
-
|
377 |
-
#: views/settings.php:
|
378 |
-
msgid "
|
379 |
-
msgstr ""
|
380 |
-
|
381 |
-
#: views/settings.php:
|
382 |
-
msgid "
|
383 |
-
msgstr ""
|
384 |
-
|
385 |
-
#: views/settings.php:
|
386 |
-
msgid "
|
387 |
-
msgstr ""
|
388 |
-
|
389 |
-
#: views/settings.php:
|
390 |
-
msgid "
|
391 |
-
msgstr ""
|
392 |
-
|
393 |
-
#: views/settings.php:
|
394 |
-
msgid "
|
395 |
-
msgstr ""
|
396 |
-
|
397 |
-
#: views/settings.php:
|
398 |
-
msgid "
|
399 |
-
msgstr ""
|
400 |
-
|
401 |
-
#: views/settings.php:
|
402 |
-
msgid "
|
403 |
-
msgstr ""
|
404 |
-
|
405 |
-
#: views/settings.php:
|
406 |
-
msgid "
|
407 |
-
msgstr ""
|
408 |
-
|
409 |
-
#: views/
|
410 |
-
msgid "
|
411 |
-
msgstr ""
|
412 |
-
|
413 |
-
#: views/
|
414 |
-
msgid "
|
415 |
-
msgstr ""
|
416 |
-
|
417 |
-
#: views/
|
418 |
-
msgid "
|
419 |
-
msgstr ""
|
420 |
-
|
421 |
-
#: views/
|
422 |
-
msgid "
|
423 |
-
msgstr ""
|
424 |
-
|
425 |
-
#: views/
|
426 |
-
msgid "
|
427 |
-
msgstr ""
|
428 |
-
|
429 |
-
#: views/
|
430 |
-
msgid "
|
431 |
-
msgstr ""
|
432 |
-
|
433 |
-
#: views/
|
434 |
-
msgid "
|
435 |
-
msgstr ""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: WP Maintenance Mode 2.0.4\n"
|
4 |
+
"POT-Creation-Date: 2016-06-17 03:13+0300\n"
|
5 |
+
"PO-Revision-Date: 2016-06-17 03:14+0300\n"
|
6 |
+
"Last-Translator: Maciej Gryniuk <maciejka45@gmail.com>\n"
|
7 |
+
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
+
"Language: en\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 1.8.8\n"
|
13 |
+
"X-Poedit-Basepath: ..\n"
|
14 |
+
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
17 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
|
18 |
+
"esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;"
|
19 |
+
"esc_html_x:1,2c\n"
|
20 |
+
"X-Poedit-SearchPath-0: .\n"
|
21 |
+
"X-Poedit-SearchPath-1: includes/classes\n"
|
22 |
+
"X-Poedit-SearchPath-2: views\n"
|
23 |
+
|
24 |
+
#: includes/classes/wp-maintenance-mode-admin.php:121
|
25 |
+
#: includes/classes/wp-maintenance-mode-admin.php:159
|
26 |
+
#: includes/classes/wp-maintenance-mode-admin.php:181
|
27 |
+
msgid "You do not have access to this resource."
|
28 |
+
msgstr ""
|
29 |
+
|
30 |
+
#: includes/classes/wp-maintenance-mode-admin.php:165 views/settings.php:295
|
31 |
+
#, php-format
|
32 |
+
msgid "You have %d subscriber(s)"
|
33 |
+
msgstr ""
|
34 |
+
|
35 |
+
#: includes/classes/wp-maintenance-mode-admin.php:186
|
36 |
+
msgid "The tab slug must not be empty."
|
37 |
+
msgstr ""
|
38 |
+
|
39 |
+
#: includes/classes/wp-maintenance-mode-admin.php:191
|
40 |
+
msgid "The tab slug must exist."
|
41 |
+
msgstr ""
|
42 |
+
|
43 |
+
#: includes/classes/wp-maintenance-mode-admin.php:211
|
44 |
+
msgid "WP Maintenance Mode"
|
45 |
+
msgstr ""
|
46 |
+
|
47 |
+
#: includes/classes/wp-maintenance-mode-admin.php:425
|
48 |
+
msgid "Settings"
|
49 |
+
msgstr ""
|
50 |
+
|
51 |
+
#: includes/classes/wp-maintenance-mode-admin.php:444
|
52 |
+
#, php-format
|
53 |
+
msgid ""
|
54 |
+
"The Maintenance Mode is <strong>active</strong>. Please don't forget to <a "
|
55 |
+
"href=\"%s\">deactivate</a> as soon as you are done."
|
56 |
+
msgstr ""
|
57 |
+
|
58 |
+
#: includes/classes/wp-maintenance-mode-admin.php:481
|
59 |
+
msgid "Notice key cannot be empty."
|
60 |
+
msgstr ""
|
61 |
+
|
62 |
+
#: includes/classes/wp-maintenance-mode.php:103
|
63 |
+
#: includes/classes/wp-maintenance-mode.php:104
|
64 |
+
msgid "Maintenance mode"
|
65 |
+
msgstr ""
|
66 |
+
|
67 |
+
#: includes/classes/wp-maintenance-mode.php:106
|
68 |
+
msgid ""
|
69 |
+
"<p>Sorry for the inconvenience.<br />Our website is currently undergoing "
|
70 |
+
"scheduled maintenance.<br />Thank you for your understanding.</p>"
|
71 |
+
msgstr ""
|
72 |
+
|
73 |
+
#: includes/classes/wp-maintenance-mode.php:124
|
74 |
+
msgid "Notify me when it's ready"
|
75 |
+
msgstr ""
|
76 |
+
|
77 |
+
#: includes/classes/wp-maintenance-mode.php:259
|
78 |
+
#, php-format
|
79 |
+
msgid ""
|
80 |
+
"WP Maintenance Mode plugin was relaunched and you MUST revise <a href=\"%s"
|
81 |
+
"\">settings</a>."
|
82 |
+
msgstr ""
|
83 |
+
|
84 |
+
#: includes/classes/wp-maintenance-mode.php:449
|
85 |
+
#: includes/classes/wp-maintenance-mode.php:463
|
86 |
+
msgid "Maintenance Mode"
|
87 |
+
msgstr ""
|
88 |
+
|
89 |
+
#: includes/classes/wp-maintenance-mode.php:687
|
90 |
+
#: includes/classes/wp-maintenance-mode.php:721 views/maintenance.php:85
|
91 |
+
msgid "Please enter a valid email address."
|
92 |
+
msgstr ""
|
93 |
+
|
94 |
+
#: includes/classes/wp-maintenance-mode.php:699
|
95 |
+
msgid "You successfully subscribed. Thanks!"
|
96 |
+
msgstr ""
|
97 |
+
|
98 |
+
#: includes/classes/wp-maintenance-mode.php:717
|
99 |
+
msgid "All fields required."
|
100 |
+
msgstr ""
|
101 |
+
|
102 |
+
#: includes/classes/wp-maintenance-mode.php:726
|
103 |
+
msgid "Message via contact"
|
104 |
+
msgstr ""
|
105 |
+
|
106 |
+
#: includes/classes/wp-maintenance-mode.php:738
|
107 |
+
msgid "Your email was sent to the website administrator. Thanks!"
|
108 |
+
msgstr ""
|
109 |
+
|
110 |
+
#: views/contact.php:34
|
111 |
+
#, php-format
|
112 |
+
msgid "You have been contacted via %s."
|
113 |
+
msgstr ""
|
114 |
+
|
115 |
+
#: views/contact.php:50
|
116 |
+
msgid "Name:"
|
117 |
+
msgstr ""
|
118 |
+
|
119 |
+
#: views/contact.php:62
|
120 |
+
msgid "Email:"
|
121 |
+
msgstr ""
|
122 |
+
|
123 |
+
#: views/contact.php:74
|
124 |
+
msgid "Content:"
|
125 |
+
msgstr ""
|
126 |
+
|
127 |
+
#: views/loginform.php:8
|
128 |
+
msgid "Login"
|
129 |
+
msgstr ""
|
130 |
+
|
131 |
+
#: views/maintenance.php:42
|
132 |
+
msgid "your e-mail..."
|
133 |
+
msgstr ""
|
134 |
+
|
135 |
+
#: views/maintenance.php:43 views/settings.php:270
|
136 |
+
msgid "Subscribe"
|
137 |
+
msgstr ""
|
138 |
+
|
139 |
+
#: views/maintenance.php:84 views/sidebar.php:7
|
140 |
+
msgid "Name"
|
141 |
+
msgstr ""
|
142 |
+
|
143 |
+
#: views/maintenance.php:84 views/maintenance.php:85 views/maintenance.php:87
|
144 |
+
msgid "This field is required."
|
145 |
+
msgstr ""
|
146 |
+
|
147 |
+
#: views/maintenance.php:85
|
148 |
+
msgid "E-mail"
|
149 |
+
msgstr ""
|
150 |
+
|
151 |
+
#: views/maintenance.php:87
|
152 |
+
msgid "Your message"
|
153 |
+
msgstr ""
|
154 |
+
|
155 |
+
#: views/maintenance.php:88
|
156 |
+
msgid "Send"
|
157 |
+
msgstr ""
|
158 |
+
|
159 |
+
#: views/maintenance.php:93
|
160 |
+
msgid "Contact us"
|
161 |
+
msgstr ""
|
162 |
+
|
163 |
+
#: views/maintenance.php:98
|
164 |
+
msgid "Dashboard"
|
165 |
+
msgstr ""
|
166 |
+
|
167 |
+
#: views/settings.php:6
|
168 |
+
msgid "Settings saved."
|
169 |
+
msgstr ""
|
170 |
+
|
171 |
+
#: views/settings.php:13
|
172 |
+
msgid "General"
|
173 |
+
msgstr ""
|
174 |
+
|
175 |
+
#: views/settings.php:14
|
176 |
+
msgid "Design"
|
177 |
+
msgstr ""
|
178 |
+
|
179 |
+
#: views/settings.php:15
|
180 |
+
msgid "Modules"
|
181 |
+
msgstr ""
|
182 |
+
|
183 |
+
#: views/settings.php:24
|
184 |
+
msgid "Status"
|
185 |
+
msgstr ""
|
186 |
+
|
187 |
+
#: views/settings.php:26
|
188 |
+
msgid "Activated"
|
189 |
+
msgstr ""
|
190 |
+
|
191 |
+
#: views/settings.php:27
|
192 |
+
msgid "Deactivated"
|
193 |
+
msgstr ""
|
194 |
+
|
195 |
+
#: views/settings.php:31
|
196 |
+
msgid "Bypass for Search Bots"
|
197 |
+
msgstr ""
|
198 |
+
|
199 |
+
#: views/settings.php:34 views/settings.php:104 views/settings.php:114
|
200 |
+
#: views/settings.php:242 views/settings.php:278 views/settings.php:316
|
201 |
+
#: views/settings.php:384 views/settings.php:416
|
202 |
+
msgid "Yes"
|
203 |
+
msgstr ""
|
204 |
+
|
205 |
+
#: views/settings.php:35 views/settings.php:105 views/settings.php:115
|
206 |
+
#: views/settings.php:243 views/settings.php:279 views/settings.php:317
|
207 |
+
#: views/settings.php:385 views/settings.php:417
|
208 |
+
msgid "No"
|
209 |
+
msgstr ""
|
210 |
+
|
211 |
+
#: views/settings.php:37
|
212 |
+
msgid "Allow Search Bots to bypass maintenance mode?"
|
213 |
+
msgstr ""
|
214 |
+
|
215 |
+
#: views/settings.php:41
|
216 |
+
msgid "Backend Role"
|
217 |
+
msgstr ""
|
218 |
+
|
219 |
+
#: views/settings.php:43 views/settings.php:59
|
220 |
+
msgid "Select role(s)"
|
221 |
+
msgstr ""
|
222 |
+
|
223 |
+
#: views/settings.php:53
|
224 |
+
msgid ""
|
225 |
+
"Which user role is allowed to access the backend of this blog? "
|
226 |
+
"Administrators will always have access."
|
227 |
+
msgstr ""
|
228 |
+
|
229 |
+
#: views/settings.php:57
|
230 |
+
msgid "Frontend Role"
|
231 |
+
msgstr ""
|
232 |
+
|
233 |
+
#: views/settings.php:69
|
234 |
+
msgid ""
|
235 |
+
"Which user role is allowed to access the frontend of this blog? "
|
236 |
+
"Administrators will always have access."
|
237 |
+
msgstr ""
|
238 |
+
|
239 |
+
#: views/settings.php:73
|
240 |
+
msgid "Robots Meta Tag"
|
241 |
+
msgstr ""
|
242 |
+
|
243 |
+
#: views/settings.php:79
|
244 |
+
msgid ""
|
245 |
+
"The robots meta tag lets you use a granular, page-specific approach to "
|
246 |
+
"control how an individual page should be indexed and served to users in "
|
247 |
+
"search results."
|
248 |
+
msgstr ""
|
249 |
+
|
250 |
+
#: views/settings.php:83
|
251 |
+
msgid "Redirection"
|
252 |
+
msgstr ""
|
253 |
+
|
254 |
+
#: views/settings.php:86
|
255 |
+
msgid ""
|
256 |
+
"If you want to redirect a user (with no access to Dashboard/Backend) to a "
|
257 |
+
"URL (different from WordPress Dashboard URL) after login, then define a URL "
|
258 |
+
"(incl. http://)"
|
259 |
+
msgstr ""
|
260 |
+
|
261 |
+
#: views/settings.php:90
|
262 |
+
msgid "Exclude"
|
263 |
+
msgstr ""
|
264 |
+
|
265 |
+
#: views/settings.php:97
|
266 |
+
msgid ""
|
267 |
+
"Exclude feed, pages, archives or IPs from maintenance mode. Add one slug / "
|
268 |
+
"IP per line!"
|
269 |
+
msgstr ""
|
270 |
+
|
271 |
+
#: views/settings.php:101
|
272 |
+
msgid "Notice"
|
273 |
+
msgstr ""
|
274 |
+
|
275 |
+
#: views/settings.php:107
|
276 |
+
msgid "Do you want to see notices when maintenance mode is activated?"
|
277 |
+
msgstr ""
|
278 |
+
|
279 |
+
#: views/settings.php:111
|
280 |
+
msgid "Dashboard link"
|
281 |
+
msgstr ""
|
282 |
+
|
283 |
+
#: views/settings.php:117
|
284 |
+
msgid ""
|
285 |
+
"Do you want to add a link to the dashboard on your maintenance mode page?"
|
286 |
+
msgstr ""
|
287 |
+
|
288 |
+
#: views/settings.php:125 views/settings.php:228 views/settings.php:432
|
289 |
+
msgid "Save settings"
|
290 |
+
msgstr ""
|
291 |
+
|
292 |
+
#: views/settings.php:126 views/settings.php:229 views/settings.php:433
|
293 |
+
msgid "Reset settings"
|
294 |
+
msgstr ""
|
295 |
+
|
296 |
+
#: views/settings.php:131
|
297 |
+
msgid "Content"
|
298 |
+
msgstr ""
|
299 |
+
|
300 |
+
#: views/settings.php:136
|
301 |
+
msgid "Title (HTML tag)"
|
302 |
+
msgstr ""
|
303 |
+
|
304 |
+
#: views/settings.php:142
|
305 |
+
msgid "Heading"
|
306 |
+
msgstr ""
|
307 |
+
|
308 |
+
#: views/settings.php:149 views/settings.php:284
|
309 |
+
msgid "Text"
|
310 |
+
msgstr ""
|
311 |
+
|
312 |
+
#: views/settings.php:169
|
313 |
+
msgid "Background"
|
314 |
+
msgstr ""
|
315 |
+
|
316 |
+
#: views/settings.php:174
|
317 |
+
msgid "Choose type"
|
318 |
+
msgstr ""
|
319 |
+
|
320 |
+
#: views/settings.php:177
|
321 |
+
msgid "Custom color"
|
322 |
+
msgstr ""
|
323 |
+
|
324 |
+
#: views/settings.php:178
|
325 |
+
msgid "Uploaded background"
|
326 |
+
msgstr ""
|
327 |
+
|
328 |
+
#: views/settings.php:179
|
329 |
+
msgid "Predefined background"
|
330 |
+
msgstr ""
|
331 |
+
|
332 |
+
#: views/settings.php:184
|
333 |
+
msgid "Choose color"
|
334 |
+
msgstr ""
|
335 |
+
|
336 |
+
#: views/settings.php:190
|
337 |
+
msgid "Upload background"
|
338 |
+
msgstr ""
|
339 |
+
|
340 |
+
#: views/settings.php:194
|
341 |
+
msgid "Backgrounds should have 1920x1280 px size."
|
342 |
+
msgstr ""
|
343 |
+
|
344 |
+
#: views/settings.php:199
|
345 |
+
msgid "Choose background"
|
346 |
+
msgstr ""
|
347 |
+
|
348 |
+
#: views/settings.php:201
|
349 |
+
#, php-format
|
350 |
+
msgid "source <a href=\"%s\" target=\"_blank\">Free Photos</a>"
|
351 |
+
msgstr ""
|
352 |
+
|
353 |
+
#: views/settings.php:234
|
354 |
+
msgid "Countdown"
|
355 |
+
msgstr ""
|
356 |
+
|
357 |
+
#: views/settings.php:239
|
358 |
+
msgid "Show countdown?"
|
359 |
+
msgstr ""
|
360 |
+
|
361 |
+
#: views/settings.php:248
|
362 |
+
msgid "Start date"
|
363 |
+
msgstr ""
|
364 |
+
|
365 |
+
#: views/settings.php:254
|
366 |
+
msgid "Countdown (remaining time)"
|
367 |
+
msgstr ""
|
368 |
+
|
369 |
+
#: views/settings.php:256
|
370 |
+
msgid "Days"
|
371 |
+
msgstr ""
|
372 |
+
|
373 |
+
#: views/settings.php:257
|
374 |
+
msgid "Hours"
|
375 |
+
msgstr ""
|
376 |
+
|
377 |
+
#: views/settings.php:258
|
378 |
+
msgid "Minutes"
|
379 |
+
msgstr ""
|
380 |
+
|
381 |
+
#: views/settings.php:262
|
382 |
+
msgid "Color"
|
383 |
+
msgstr ""
|
384 |
+
|
385 |
+
#: views/settings.php:275
|
386 |
+
msgid "Show subscribe?"
|
387 |
+
msgstr ""
|
388 |
+
|
389 |
+
#: views/settings.php:291
|
390 |
+
msgid "Stats"
|
391 |
+
msgstr ""
|
392 |
+
|
393 |
+
#: views/settings.php:300
|
394 |
+
msgid "Export as CSV"
|
395 |
+
msgstr ""
|
396 |
+
|
397 |
+
#: views/settings.php:301
|
398 |
+
msgid "Empty subscribers list"
|
399 |
+
msgstr ""
|
400 |
+
|
401 |
+
#: views/settings.php:308
|
402 |
+
msgid "Social Networks"
|
403 |
+
msgstr ""
|
404 |
+
|
405 |
+
#: views/settings.php:313
|
406 |
+
msgid "Show social networks?"
|
407 |
+
msgstr ""
|
408 |
+
|
409 |
+
#: views/settings.php:322
|
410 |
+
msgid "Links target?"
|
411 |
+
msgstr ""
|
412 |
+
|
413 |
+
#: views/settings.php:325
|
414 |
+
msgid "New page"
|
415 |
+
msgstr ""
|
416 |
+
|
417 |
+
#: views/settings.php:326
|
418 |
+
msgid "Same page"
|
419 |
+
msgstr ""
|
420 |
+
|
421 |
+
#: views/settings.php:328
|
422 |
+
msgid "Choose how the links will open."
|
423 |
+
msgstr ""
|
424 |
+
|
425 |
+
#: views/settings.php:376
|
426 |
+
msgid "Contact"
|
427 |
+
msgstr ""
|
428 |
+
|
429 |
+
#: views/settings.php:381
|
430 |
+
msgid "Show contact?"
|
431 |
+
msgstr ""
|
432 |
+
|
433 |
+
#: views/settings.php:390
|
434 |
+
msgid "Email address"
|
435 |
+
msgstr ""
|
436 |
+
|
437 |
+
#: views/settings.php:396
|
438 |
+
msgid "Effects"
|
439 |
+
msgstr ""
|
440 |
+
|
441 |
+
#: views/settings.php:399
|
442 |
+
msgid "Move top - Move bottom"
|
443 |
+
msgstr ""
|
444 |
+
|
445 |
+
#: views/settings.php:400
|
446 |
+
msgid "Zoom - Zoomed"
|
447 |
+
msgstr ""
|
448 |
+
|
449 |
+
#: views/settings.php:401
|
450 |
+
msgid "Fold - Unfold"
|
451 |
+
msgstr ""
|
452 |
+
|
453 |
+
#: views/settings.php:408
|
454 |
+
msgid "Google Analytics"
|
455 |
+
msgstr ""
|
456 |
+
|
457 |
+
#: views/settings.php:413
|
458 |
+
msgid "Use Google Analytics?"
|
459 |
+
msgstr ""
|
460 |
+
|
461 |
+
#: views/settings.php:422
|
462 |
+
msgid "Tracking code"
|
463 |
+
msgstr ""
|
464 |
+
|
465 |
+
#: views/sidebar.php:3
|
466 |
+
msgid "Plugin Info"
|
467 |
+
msgstr ""
|
468 |
+
|
469 |
+
#: views/sidebar.php:13
|
470 |
+
msgid "Author"
|
471 |
+
msgstr ""
|
472 |
+
|
473 |
+
#: views/sidebar.php:14
|
474 |
+
msgid "Website"
|
475 |
+
msgstr ""
|
476 |
+
|
477 |
+
#: views/sidebar.php:15
|
478 |
+
msgid "Twitter"
|
479 |
+
msgstr ""
|
480 |
+
|
481 |
+
#: views/sidebar.php:16
|
482 |
+
msgid "GitHub"
|
483 |
+
msgstr ""
|
484 |
+
|
485 |
+
#: views/sidebar.php:27
|
486 |
+
msgid "Other products"
|
487 |
+
msgstr ""
|
488 |
+
|
489 |
+
#: views/sidebar.php:44
|
490 |
+
msgid "Resources"
|
491 |
+
msgstr ""
|
Binary file
|
@@ -1,464 +1,539 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: WP Maintenance Mode 2.0.
|
4 |
-
"POT-Creation-Date:
|
5 |
-
"PO-Revision-Date:
|
6 |
-
"Last-Translator: Erick Ruiz de Chavez <erick@erch.co>\n"
|
7 |
-
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
-
"Language: es_ES\n"
|
9 |
-
"MIME-Version: 1.0\n"
|
10 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
-
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"X-Generator: Poedit 1.
|
13 |
-
"X-Poedit-Basepath:
|
14 |
-
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
-
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
-
"X-Poedit-KeywordsList: __;_e
|
17 |
-
"
|
18 |
-
"
|
19 |
-
"X-Poedit-SearchPath-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
#: includes/classes/wp-maintenance-mode-admin.php:
|
26 |
-
msgid "
|
27 |
-
msgstr "
|
28 |
-
|
29 |
-
#: includes/classes/wp-maintenance-mode-admin.php:
|
30 |
-
#, php-format
|
31 |
-
msgid ""
|
32 |
-
"
|
33 |
-
|
34 |
-
|
35 |
-
"
|
36 |
-
|
37 |
-
|
38 |
-
#: includes/classes/wp-maintenance-mode.php:
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
msgid "
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
#: includes/classes/wp-maintenance-mode.php:
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
msgstr "
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
#:
|
91 |
-
msgid "
|
92 |
-
msgstr "
|
93 |
-
|
94 |
-
#:
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
#: views/
|
161 |
-
msgid "
|
162 |
-
msgstr "
|
163 |
-
|
164 |
-
#: views/
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
"
|
183 |
-
|
184 |
-
#: views/settings.php:
|
185 |
-
msgid "
|
186 |
-
msgstr "
|
187 |
-
|
188 |
-
#: views/settings.php:
|
189 |
-
msgid "
|
190 |
-
msgstr "
|
191 |
-
|
192 |
-
#: views/settings.php:
|
193 |
-
msgid "
|
194 |
-
msgstr "
|
195 |
-
|
196 |
-
#: views/settings.php:
|
197 |
-
msgid ""
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
"
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
#: views/settings.php:
|
207 |
-
msgid "
|
208 |
-
msgstr "
|
209 |
-
|
210 |
-
#: views/settings.php:
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
msgstr ""
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
"
|
226 |
-
msgstr ""
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
msgstr "
|
233 |
-
|
234 |
-
#: views/settings.php:
|
235 |
-
msgid "
|
236 |
-
msgstr "
|
237 |
-
|
238 |
-
#: views/settings.php:
|
239 |
-
msgid "
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
msgstr "
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
msgstr "
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: WP Maintenance Mode 2.0.4\n"
|
4 |
+
"POT-Creation-Date: 2016-06-17 03:15+0300\n"
|
5 |
+
"PO-Revision-Date: 2016-06-17 03:15+0300\n"
|
6 |
+
"Last-Translator: Erick Ruiz de Chavez <erick@erch.co>\n"
|
7 |
+
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
+
"Language: es_ES\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 1.8.8\n"
|
13 |
+
"X-Poedit-Basepath: ..\n"
|
14 |
+
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
17 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
|
18 |
+
"esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
|
19 |
+
"X-Poedit-SearchPath-0: .\n"
|
20 |
+
"X-Poedit-SearchPath-1: includes/classes\n"
|
21 |
+
"X-Poedit-SearchPath-2: views\n"
|
22 |
+
|
23 |
+
#: includes/classes/wp-maintenance-mode-admin.php:121
|
24 |
+
#: includes/classes/wp-maintenance-mode-admin.php:159
|
25 |
+
#: includes/classes/wp-maintenance-mode-admin.php:181
|
26 |
+
msgid "You do not have access to this resource."
|
27 |
+
msgstr ""
|
28 |
+
|
29 |
+
#: includes/classes/wp-maintenance-mode-admin.php:165 views/settings.php:295
|
30 |
+
#, php-format
|
31 |
+
msgid "You have %d subscriber(s)"
|
32 |
+
msgstr "Hay %d suscriptor(es)"
|
33 |
+
|
34 |
+
#: includes/classes/wp-maintenance-mode-admin.php:186
|
35 |
+
msgid "The tab slug must not be empty."
|
36 |
+
msgstr ""
|
37 |
+
|
38 |
+
#: includes/classes/wp-maintenance-mode-admin.php:191
|
39 |
+
msgid "The tab slug must exist."
|
40 |
+
msgstr ""
|
41 |
+
|
42 |
+
#: includes/classes/wp-maintenance-mode-admin.php:211
|
43 |
+
msgid "WP Maintenance Mode"
|
44 |
+
msgstr "Modo de Mantenimiento WP"
|
45 |
+
|
46 |
+
#: includes/classes/wp-maintenance-mode-admin.php:425
|
47 |
+
msgid "Settings"
|
48 |
+
msgstr "Ajustes"
|
49 |
+
|
50 |
+
#: includes/classes/wp-maintenance-mode-admin.php:444
|
51 |
+
#, php-format
|
52 |
+
msgid ""
|
53 |
+
"The Maintenance Mode is <strong>active</strong>. Please don't forget to <a "
|
54 |
+
"href=\"%s\">deactivate</a> as soon as you are done."
|
55 |
+
msgstr ""
|
56 |
+
"El modo de mantenimiento está <strong>activo</strong>. Por favor no olvides "
|
57 |
+
"<a href=\"%s\">desactivarlo</a> tan pronto como termines."
|
58 |
+
|
59 |
+
#: includes/classes/wp-maintenance-mode-admin.php:481
|
60 |
+
msgid "Notice key cannot be empty."
|
61 |
+
msgstr ""
|
62 |
+
|
63 |
+
#: includes/classes/wp-maintenance-mode.php:103
|
64 |
+
#: includes/classes/wp-maintenance-mode.php:104
|
65 |
+
msgid "Maintenance mode"
|
66 |
+
msgstr "Modo de mantenimiento"
|
67 |
+
|
68 |
+
#: includes/classes/wp-maintenance-mode.php:106
|
69 |
+
msgid ""
|
70 |
+
"<p>Sorry for the inconvenience.<br />Our website is currently undergoing "
|
71 |
+
"scheduled maintenance.<br />Thank you for your understanding.</p>"
|
72 |
+
msgstr ""
|
73 |
+
"<p>Disculpa las molestias.<br />Nuestro sitio esta actualmente bajo "
|
74 |
+
"mantenimiento programado.<br />Agradecemos tu comprensión.</p>"
|
75 |
+
|
76 |
+
#: includes/classes/wp-maintenance-mode.php:124
|
77 |
+
msgid "Notify me when it's ready"
|
78 |
+
msgstr "Notifícame cuanto este listo"
|
79 |
+
|
80 |
+
#: includes/classes/wp-maintenance-mode.php:259
|
81 |
+
#, php-format
|
82 |
+
msgid ""
|
83 |
+
"WP Maintenance Mode plugin was relaunched and you MUST revise <a href=\"%s"
|
84 |
+
"\">settings</a>."
|
85 |
+
msgstr ""
|
86 |
+
"El plugin Modo de Mantenimiento WP fue reactivado y es NECESARIO que revises "
|
87 |
+
"los <a href=\"%s\">ajustes</a>."
|
88 |
+
|
89 |
+
#: includes/classes/wp-maintenance-mode.php:449
|
90 |
+
#: includes/classes/wp-maintenance-mode.php:463
|
91 |
+
msgid "Maintenance Mode"
|
92 |
+
msgstr "Modo de Mantenimiento"
|
93 |
+
|
94 |
+
#: includes/classes/wp-maintenance-mode.php:687
|
95 |
+
#: includes/classes/wp-maintenance-mode.php:721 views/maintenance.php:85
|
96 |
+
msgid "Please enter a valid email address."
|
97 |
+
msgstr "Por favor usa una dirección de correo electrónico valida."
|
98 |
+
|
99 |
+
#: includes/classes/wp-maintenance-mode.php:699
|
100 |
+
msgid "You successfully subscribed. Thanks!"
|
101 |
+
msgstr ""
|
102 |
+
|
103 |
+
#: includes/classes/wp-maintenance-mode.php:717
|
104 |
+
msgid "All fields required."
|
105 |
+
msgstr "Todos los campos son obligatorios."
|
106 |
+
|
107 |
+
#: includes/classes/wp-maintenance-mode.php:726
|
108 |
+
msgid "Message via contact"
|
109 |
+
msgstr "Mensaje vía formulario de contacto."
|
110 |
+
|
111 |
+
#: includes/classes/wp-maintenance-mode.php:738
|
112 |
+
msgid "Your email was sent to the website administrator. Thanks!"
|
113 |
+
msgstr "Tu mensaje ha sido enviado al administrador. ¡Muchas gracias!"
|
114 |
+
|
115 |
+
#: views/contact.php:34
|
116 |
+
#, php-format
|
117 |
+
msgid "You have been contacted via %s."
|
118 |
+
msgstr ""
|
119 |
+
|
120 |
+
#: views/contact.php:50
|
121 |
+
msgid "Name:"
|
122 |
+
msgstr ""
|
123 |
+
|
124 |
+
#: views/contact.php:62
|
125 |
+
msgid "Email:"
|
126 |
+
msgstr ""
|
127 |
+
|
128 |
+
#: views/contact.php:74
|
129 |
+
msgid "Content:"
|
130 |
+
msgstr ""
|
131 |
+
|
132 |
+
#: views/loginform.php:8
|
133 |
+
msgid "Login"
|
134 |
+
msgstr "Iniciar sesión"
|
135 |
+
|
136 |
+
#: views/maintenance.php:42
|
137 |
+
msgid "your e-mail..."
|
138 |
+
msgstr "dirección de correo electrónico ..."
|
139 |
+
|
140 |
+
#: views/maintenance.php:43 views/settings.php:270
|
141 |
+
msgid "Subscribe"
|
142 |
+
msgstr "Suscribirse"
|
143 |
+
|
144 |
+
#: views/maintenance.php:84 views/sidebar.php:7
|
145 |
+
msgid "Name"
|
146 |
+
msgstr "Nombre"
|
147 |
+
|
148 |
+
#: views/maintenance.php:84 views/maintenance.php:85 views/maintenance.php:87
|
149 |
+
msgid "This field is required."
|
150 |
+
msgstr ""
|
151 |
+
|
152 |
+
#: views/maintenance.php:85
|
153 |
+
msgid "E-mail"
|
154 |
+
msgstr "Correo electrónico"
|
155 |
+
|
156 |
+
#: views/maintenance.php:87
|
157 |
+
msgid "Your message"
|
158 |
+
msgstr "Mensaje"
|
159 |
+
|
160 |
+
#: views/maintenance.php:88
|
161 |
+
msgid "Send"
|
162 |
+
msgstr "Enviar"
|
163 |
+
|
164 |
+
#: views/maintenance.php:93
|
165 |
+
msgid "Contact us"
|
166 |
+
msgstr "Contáctanos"
|
167 |
+
|
168 |
+
#: views/maintenance.php:98
|
169 |
+
msgid "Dashboard"
|
170 |
+
msgstr "Escritorio"
|
171 |
+
|
172 |
+
#: views/settings.php:6
|
173 |
+
msgid "Settings saved."
|
174 |
+
msgstr "Ajustes guardados."
|
175 |
+
|
176 |
+
#: views/settings.php:13
|
177 |
+
msgid "General"
|
178 |
+
msgstr "General"
|
179 |
+
|
180 |
+
#: views/settings.php:14
|
181 |
+
msgid "Design"
|
182 |
+
msgstr "Diseño"
|
183 |
+
|
184 |
+
#: views/settings.php:15
|
185 |
+
msgid "Modules"
|
186 |
+
msgstr "Módulos"
|
187 |
+
|
188 |
+
#: views/settings.php:24
|
189 |
+
msgid "Status"
|
190 |
+
msgstr "Estado"
|
191 |
+
|
192 |
+
#: views/settings.php:26
|
193 |
+
msgid "Activated"
|
194 |
+
msgstr "Activado"
|
195 |
+
|
196 |
+
#: views/settings.php:27
|
197 |
+
msgid "Deactivated"
|
198 |
+
msgstr "Desactivado"
|
199 |
+
|
200 |
+
#: views/settings.php:31
|
201 |
+
msgid "Bypass for Search Bots"
|
202 |
+
msgstr "Evitar Robots de Búsqueda"
|
203 |
+
|
204 |
+
#: views/settings.php:34 views/settings.php:104 views/settings.php:114
|
205 |
+
#: views/settings.php:242 views/settings.php:278 views/settings.php:316
|
206 |
+
#: views/settings.php:384 views/settings.php:416
|
207 |
+
msgid "Yes"
|
208 |
+
msgstr "Si"
|
209 |
+
|
210 |
+
#: views/settings.php:35 views/settings.php:105 views/settings.php:115
|
211 |
+
#: views/settings.php:243 views/settings.php:279 views/settings.php:317
|
212 |
+
#: views/settings.php:385 views/settings.php:417
|
213 |
+
msgid "No"
|
214 |
+
msgstr "No"
|
215 |
+
|
216 |
+
#: views/settings.php:37
|
217 |
+
msgid "Allow Search Bots to bypass maintenance mode?"
|
218 |
+
msgstr "¿Permitir a los Robots de Búsqueda evitar el modo de mantenimiento?"
|
219 |
+
|
220 |
+
#: views/settings.php:41
|
221 |
+
msgid "Backend Role"
|
222 |
+
msgstr "Rol de administración"
|
223 |
+
|
224 |
+
#: views/settings.php:43 views/settings.php:59
|
225 |
+
msgid "Select role(s)"
|
226 |
+
msgstr ""
|
227 |
+
|
228 |
+
#: views/settings.php:53
|
229 |
+
msgid ""
|
230 |
+
"Which user role is allowed to access the backend of this blog? "
|
231 |
+
"Administrators will always have access."
|
232 |
+
msgstr ""
|
233 |
+
|
234 |
+
#: views/settings.php:57
|
235 |
+
msgid "Frontend Role"
|
236 |
+
msgstr "Rol de sitio"
|
237 |
+
|
238 |
+
#: views/settings.php:69
|
239 |
+
msgid ""
|
240 |
+
"Which user role is allowed to access the frontend of this blog? "
|
241 |
+
"Administrators will always have access."
|
242 |
+
msgstr ""
|
243 |
+
|
244 |
+
#: views/settings.php:73
|
245 |
+
msgid "Robots Meta Tag"
|
246 |
+
msgstr "Meta Etiqueta Robots"
|
247 |
+
|
248 |
+
#: views/settings.php:79
|
249 |
+
msgid ""
|
250 |
+
"The robots meta tag lets you use a granular, page-specific approach to "
|
251 |
+
"control how an individual page should be indexed and served to users in "
|
252 |
+
"search results."
|
253 |
+
msgstr ""
|
254 |
+
"La meta etiqueta robots le permite definir de manera mas granular como deben "
|
255 |
+
"ser indexadas y servidas las paginas a los usuarios en los resultados de "
|
256 |
+
"búsqueda. "
|
257 |
+
|
258 |
+
#: views/settings.php:83
|
259 |
+
msgid "Redirection"
|
260 |
+
msgstr "Redirección"
|
261 |
+
|
262 |
+
#: views/settings.php:86
|
263 |
+
msgid ""
|
264 |
+
"If you want to redirect a user (with no access to Dashboard/Backend) to a "
|
265 |
+
"URL (different from WordPress Dashboard URL) after login, then define a URL "
|
266 |
+
"(incl. http://)"
|
267 |
+
msgstr ""
|
268 |
+
|
269 |
+
#: views/settings.php:90
|
270 |
+
msgid "Exclude"
|
271 |
+
msgstr "Excluir"
|
272 |
+
|
273 |
+
#: views/settings.php:97
|
274 |
+
msgid ""
|
275 |
+
"Exclude feed, pages, archives or IPs from maintenance mode. Add one slug / "
|
276 |
+
"IP per line!"
|
277 |
+
msgstr ""
|
278 |
+
"Excluye feed, paginas, archivos o direcciones IP del modo de mantenimiento. "
|
279 |
+
"Agregua un slug por linea!"
|
280 |
+
|
281 |
+
#: views/settings.php:101
|
282 |
+
msgid "Notice"
|
283 |
+
msgstr "Aviso"
|
284 |
+
|
285 |
+
#: views/settings.php:107
|
286 |
+
msgid "Do you want to see notices when maintenance mode is activated?"
|
287 |
+
msgstr "¿Deseas ver avisos cuando el modo de mantenimiento esta activo?"
|
288 |
+
|
289 |
+
#: views/settings.php:111
|
290 |
+
msgid "Dashboard link"
|
291 |
+
msgstr "Enlace al escritorio"
|
292 |
+
|
293 |
+
#: views/settings.php:117
|
294 |
+
msgid ""
|
295 |
+
"Do you want to add a link to the dashboard on your maintenance mode page?"
|
296 |
+
msgstr "¿Deseas agregar un enlace al escritorio en tu página de mantenimiento?"
|
297 |
+
|
298 |
+
#: views/settings.php:125 views/settings.php:228 views/settings.php:432
|
299 |
+
msgid "Save settings"
|
300 |
+
msgstr "Guardar ajustes"
|
301 |
+
|
302 |
+
#: views/settings.php:126 views/settings.php:229 views/settings.php:433
|
303 |
+
msgid "Reset settings"
|
304 |
+
msgstr "Restablecer ajustes"
|
305 |
+
|
306 |
+
#: views/settings.php:131
|
307 |
+
msgid "Content"
|
308 |
+
msgstr "Contenido"
|
309 |
+
|
310 |
+
#: views/settings.php:136
|
311 |
+
msgid "Title (HTML tag)"
|
312 |
+
msgstr "Título (Etiqueta HTML)"
|
313 |
+
|
314 |
+
#: views/settings.php:142
|
315 |
+
msgid "Heading"
|
316 |
+
msgstr "Encabezado"
|
317 |
+
|
318 |
+
#: views/settings.php:149 views/settings.php:284
|
319 |
+
msgid "Text"
|
320 |
+
msgstr "Texto"
|
321 |
+
|
322 |
+
#: views/settings.php:169
|
323 |
+
msgid "Background"
|
324 |
+
msgstr "Fondo"
|
325 |
+
|
326 |
+
#: views/settings.php:174
|
327 |
+
msgid "Choose type"
|
328 |
+
msgstr "Seleccionar tipo"
|
329 |
+
|
330 |
+
#: views/settings.php:177
|
331 |
+
msgid "Custom color"
|
332 |
+
msgstr "Color personalizado"
|
333 |
+
|
334 |
+
#: views/settings.php:178
|
335 |
+
msgid "Uploaded background"
|
336 |
+
msgstr "Fondo cargado"
|
337 |
+
|
338 |
+
#: views/settings.php:179
|
339 |
+
msgid "Predefined background"
|
340 |
+
msgstr "Fondo predefinido"
|
341 |
+
|
342 |
+
#: views/settings.php:184
|
343 |
+
msgid "Choose color"
|
344 |
+
msgstr "Elige un color"
|
345 |
+
|
346 |
+
#: views/settings.php:190
|
347 |
+
msgid "Upload background"
|
348 |
+
msgstr "Sube un fondo"
|
349 |
+
|
350 |
+
#: views/settings.php:194
|
351 |
+
msgid "Backgrounds should have 1920x1280 px size."
|
352 |
+
msgstr "El fondo debe medir 1920x1280 pixeles."
|
353 |
+
|
354 |
+
#: views/settings.php:199
|
355 |
+
msgid "Choose background"
|
356 |
+
msgstr "Elige el fondo"
|
357 |
+
|
358 |
+
#: views/settings.php:201
|
359 |
+
#, php-format
|
360 |
+
msgid "source <a href=\"%s\" target=\"_blank\">Free Photos</a>"
|
361 |
+
msgstr ""
|
362 |
+
|
363 |
+
#: views/settings.php:234
|
364 |
+
msgid "Countdown"
|
365 |
+
msgstr "Contador"
|
366 |
+
|
367 |
+
#: views/settings.php:239
|
368 |
+
msgid "Show countdown?"
|
369 |
+
msgstr "¿Mostrar contador?"
|
370 |
+
|
371 |
+
#: views/settings.php:248
|
372 |
+
msgid "Start date"
|
373 |
+
msgstr "Fecha de inicio"
|
374 |
+
|
375 |
+
#: views/settings.php:254
|
376 |
+
msgid "Countdown (remaining time)"
|
377 |
+
msgstr "Contador (tiempo restante)"
|
378 |
+
|
379 |
+
#: views/settings.php:256
|
380 |
+
msgid "Days"
|
381 |
+
msgstr "Días"
|
382 |
+
|
383 |
+
#: views/settings.php:257
|
384 |
+
msgid "Hours"
|
385 |
+
msgstr "Horas"
|
386 |
+
|
387 |
+
#: views/settings.php:258
|
388 |
+
msgid "Minutes"
|
389 |
+
msgstr "Minutos"
|
390 |
+
|
391 |
+
#: views/settings.php:262
|
392 |
+
msgid "Color"
|
393 |
+
msgstr "Color"
|
394 |
+
|
395 |
+
#: views/settings.php:275
|
396 |
+
msgid "Show subscribe?"
|
397 |
+
msgstr "¿Mostrar suscribirse?"
|
398 |
+
|
399 |
+
#: views/settings.php:291
|
400 |
+
msgid "Stats"
|
401 |
+
msgstr "Estadísticas"
|
402 |
+
|
403 |
+
#: views/settings.php:300
|
404 |
+
msgid "Export as CSV"
|
405 |
+
msgstr "Exportar como CSV"
|
406 |
+
|
407 |
+
#: views/settings.php:301
|
408 |
+
msgid "Empty subscribers list"
|
409 |
+
msgstr ""
|
410 |
+
|
411 |
+
#: views/settings.php:308
|
412 |
+
msgid "Social Networks"
|
413 |
+
msgstr "Redes Sociales"
|
414 |
+
|
415 |
+
#: views/settings.php:313
|
416 |
+
msgid "Show social networks?"
|
417 |
+
msgstr "¿Mostrar redes sociales?"
|
418 |
+
|
419 |
+
#: views/settings.php:322
|
420 |
+
msgid "Links target?"
|
421 |
+
msgstr "¿Destino de enlaces?"
|
422 |
+
|
423 |
+
#: views/settings.php:325
|
424 |
+
msgid "New page"
|
425 |
+
msgstr "Página nueva"
|
426 |
+
|
427 |
+
#: views/settings.php:326
|
428 |
+
msgid "Same page"
|
429 |
+
msgstr "Misma página"
|
430 |
+
|
431 |
+
#: views/settings.php:328
|
432 |
+
msgid "Choose how the links will open."
|
433 |
+
msgstr "Selecciona como se abrirán los enlaces."
|
434 |
+
|
435 |
+
#: views/settings.php:376
|
436 |
+
msgid "Contact"
|
437 |
+
msgstr "Contacto"
|
438 |
+
|
439 |
+
#: views/settings.php:381
|
440 |
+
msgid "Show contact?"
|
441 |
+
msgstr "¿Mostrar contacto?"
|
442 |
+
|
443 |
+
#: views/settings.php:390
|
444 |
+
msgid "Email address"
|
445 |
+
msgstr "Dirección de correo electrónico"
|
446 |
+
|
447 |
+
#: views/settings.php:396
|
448 |
+
msgid "Effects"
|
449 |
+
msgstr "Efectos"
|
450 |
+
|
451 |
+
#: views/settings.php:399
|
452 |
+
msgid "Move top - Move bottom"
|
453 |
+
msgstr "Mover al inicio - Mover al final"
|
454 |
+
|
455 |
+
#: views/settings.php:400
|
456 |
+
msgid "Zoom - Zoomed"
|
457 |
+
msgstr "Ampliar - Ampliado"
|
458 |
+
|
459 |
+
#: views/settings.php:401
|
460 |
+
msgid "Fold - Unfold"
|
461 |
+
msgstr "Colapsar - Expandir"
|
462 |
+
|
463 |
+
#: views/settings.php:408
|
464 |
+
msgid "Google Analytics"
|
465 |
+
msgstr "Google Analytics"
|
466 |
+
|
467 |
+
#: views/settings.php:413
|
468 |
+
msgid "Use Google Analytics?"
|
469 |
+
msgstr "¿Usar Google Analytics?"
|
470 |
+
|
471 |
+
#: views/settings.php:422
|
472 |
+
msgid "Tracking code"
|
473 |
+
msgstr "Código de rastreo"
|
474 |
+
|
475 |
+
#: views/sidebar.php:3
|
476 |
+
msgid "Plugin Info"
|
477 |
+
msgstr "Información del plugin"
|
478 |
+
|
479 |
+
#: views/sidebar.php:13
|
480 |
+
msgid "Author"
|
481 |
+
msgstr "Autor"
|
482 |
+
|
483 |
+
#: views/sidebar.php:14
|
484 |
+
msgid "Website"
|
485 |
+
msgstr "Pagina web"
|
486 |
+
|
487 |
+
#: views/sidebar.php:15
|
488 |
+
msgid "Twitter"
|
489 |
+
msgstr "Twitter"
|
490 |
+
|
491 |
+
#: views/sidebar.php:16
|
492 |
+
msgid "GitHub"
|
493 |
+
msgstr "GitHub"
|
494 |
+
|
495 |
+
#: views/sidebar.php:27
|
496 |
+
msgid "Other products"
|
497 |
+
msgstr ""
|
498 |
+
|
499 |
+
#: views/sidebar.php:44
|
500 |
+
msgid "Resources"
|
501 |
+
msgstr "Recursos"
|
502 |
+
|
503 |
+
#~ msgid "You successfuly subscribed. Thanks!"
|
504 |
+
#~ msgstr "Te has suscrito exitosamente. ¡Muchas gracias!"
|
505 |
+
|
506 |
+
#~ msgid "Which user role is allowed to access the backend of this blog?"
|
507 |
+
#~ msgstr ""
|
508 |
+
#~ "¿Que rol de usuario se requiere para acceder a la administración de este "
|
509 |
+
#~ "blog?"
|
510 |
+
|
511 |
+
#~ msgid "Which user role is allowed to access the frontend of this blog?"
|
512 |
+
#~ msgstr "¿Que rol de usuario se requiere para acceder a este blog?"
|
513 |
+
|
514 |
+
#~ msgid ""
|
515 |
+
#~ "If you want to redirect a user to a URL (which is not the WordPress "
|
516 |
+
#~ "dashboard) after login, then define a URL (incl. http://)"
|
517 |
+
#~ msgstr ""
|
518 |
+
#~ "Si deseas enviar a un usuario a una URL (que no forma parte de su sitio "
|
519 |
+
#~ "WordPress) después de iniciar sesión, define dicha URL (incluya http://)"
|
520 |
+
|
521 |
+
#~ msgid "source <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
522 |
+
#~ msgstr "fuente <a href=\"%\" target=\"_blank\">Fotos Gratis</a>"
|
523 |
+
|
524 |
+
#~ msgid "WordPress Themes"
|
525 |
+
#~ msgstr "Temas WordPress"
|
526 |
+
|
527 |
+
#~ msgid "Developed by <a href=\"%s\">Designmodo</a>"
|
528 |
+
#~ msgstr "Desarrollado por <a href=\"%s\">Designmodo</a>"
|
529 |
+
|
530 |
+
#~ msgid "Subscribe now for early access to new WordPress themes."
|
531 |
+
#~ msgstr ""
|
532 |
+
#~ "Suscríbete ahora para obtener acceso preferencial a nuevos temas "
|
533 |
+
#~ "WordPress."
|
534 |
+
|
535 |
+
#~ msgid "Enter your email address"
|
536 |
+
#~ msgstr "Introduce tu dirección de correo electrónico"
|
537 |
+
|
538 |
+
#~ msgid "News"
|
539 |
+
#~ msgstr "Noticias"
|
Binary file
|
@@ -0,0 +1,498 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: WP Maintenance Mode 2.0.4\n"
|
4 |
+
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2016-06-17 03:17+0300\n"
|
6 |
+
"PO-Revision-Date: 2016-06-17 03:17+0300\n"
|
7 |
+
"Last-Translator: Milad Nekofar <milad@nekofar.com>\n"
|
8 |
+
"Language-Team: Milad Nekofar <milad@nekofar.com>\n"
|
9 |
+
"Language: fa\n"
|
10 |
+
"MIME-Version: 1.0\n"
|
11 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
12 |
+
"Content-Transfer-Encoding: 8bit\n"
|
13 |
+
"Plural-Forms: nplurals=1; plural=0;\n"
|
14 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
15 |
+
"X-Generator: Poedit 1.8.8\n"
|
16 |
+
"X-Poedit-Basepath: ..\n"
|
17 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
18 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
|
19 |
+
"esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;"
|
20 |
+
"esc_html_x:1,2c\n"
|
21 |
+
"X-Loco-Target-Locale: fa_IR\n"
|
22 |
+
"X-Poedit-SearchPath-0: .\n"
|
23 |
+
"X-Poedit-SearchPath-1: includes/classes\n"
|
24 |
+
"X-Poedit-SearchPath-2: views\n"
|
25 |
+
|
26 |
+
#: includes/classes/wp-maintenance-mode-admin.php:121
|
27 |
+
#: includes/classes/wp-maintenance-mode-admin.php:159
|
28 |
+
#: includes/classes/wp-maintenance-mode-admin.php:181
|
29 |
+
msgid "You do not have access to this resource."
|
30 |
+
msgstr ""
|
31 |
+
|
32 |
+
#: includes/classes/wp-maintenance-mode-admin.php:165 views/settings.php:295
|
33 |
+
#, php-format
|
34 |
+
msgid "You have %d subscriber(s)"
|
35 |
+
msgstr ""
|
36 |
+
|
37 |
+
#: includes/classes/wp-maintenance-mode-admin.php:186
|
38 |
+
msgid "The tab slug must not be empty."
|
39 |
+
msgstr ""
|
40 |
+
|
41 |
+
#: includes/classes/wp-maintenance-mode-admin.php:191
|
42 |
+
msgid "The tab slug must exist."
|
43 |
+
msgstr ""
|
44 |
+
|
45 |
+
#: includes/classes/wp-maintenance-mode-admin.php:211
|
46 |
+
msgid "WP Maintenance Mode"
|
47 |
+
msgstr "حالت تعمیر و نگهداری"
|
48 |
+
|
49 |
+
#: includes/classes/wp-maintenance-mode-admin.php:425
|
50 |
+
msgid "Settings"
|
51 |
+
msgstr "تنظیمات"
|
52 |
+
|
53 |
+
#: includes/classes/wp-maintenance-mode-admin.php:444
|
54 |
+
#, php-format
|
55 |
+
msgid ""
|
56 |
+
"The Maintenance Mode is <strong>active</strong>. Please don't forget to <a "
|
57 |
+
"href=\"%s\">deactivate</a> as soon as you are done."
|
58 |
+
msgstr ""
|
59 |
+
"حالت حالت تعمیر و نگهداری <strong>فعال</strong> است. فراموش نکنید که در "
|
60 |
+
"اولین فرصت ممکن ان را <a href=\"%s\">غیرفعال</a> کنید."
|
61 |
+
|
62 |
+
#: includes/classes/wp-maintenance-mode-admin.php:481
|
63 |
+
msgid "Notice key cannot be empty."
|
64 |
+
msgstr ""
|
65 |
+
|
66 |
+
#: includes/classes/wp-maintenance-mode.php:103
|
67 |
+
#: includes/classes/wp-maintenance-mode.php:104
|
68 |
+
msgid "Maintenance mode"
|
69 |
+
msgstr "حالت تعمیر و نگهداری"
|
70 |
+
|
71 |
+
#: includes/classes/wp-maintenance-mode.php:106
|
72 |
+
msgid ""
|
73 |
+
"<p>Sorry for the inconvenience.<br />Our website is currently undergoing "
|
74 |
+
"scheduled maintenance.<br />Thank you for your understanding.</p>"
|
75 |
+
msgstr ""
|
76 |
+
|
77 |
+
#: includes/classes/wp-maintenance-mode.php:124
|
78 |
+
msgid "Notify me when it's ready"
|
79 |
+
msgstr ""
|
80 |
+
|
81 |
+
#: includes/classes/wp-maintenance-mode.php:259
|
82 |
+
#, php-format
|
83 |
+
msgid ""
|
84 |
+
"WP Maintenance Mode plugin was relaunched and you MUST revise <a href=\"%s"
|
85 |
+
"\">settings</a>."
|
86 |
+
msgstr ""
|
87 |
+
|
88 |
+
#: includes/classes/wp-maintenance-mode.php:449
|
89 |
+
#: includes/classes/wp-maintenance-mode.php:463
|
90 |
+
msgid "Maintenance Mode"
|
91 |
+
msgstr "حالت تعمیر و نگهداری"
|
92 |
+
|
93 |
+
#: includes/classes/wp-maintenance-mode.php:687
|
94 |
+
#: includes/classes/wp-maintenance-mode.php:721 views/maintenance.php:85
|
95 |
+
msgid "Please enter a valid email address."
|
96 |
+
msgstr "لطفا ایمیل آدرس معتبر وارد نمایید."
|
97 |
+
|
98 |
+
#: includes/classes/wp-maintenance-mode.php:699
|
99 |
+
msgid "You successfully subscribed. Thanks!"
|
100 |
+
msgstr ""
|
101 |
+
|
102 |
+
#: includes/classes/wp-maintenance-mode.php:717
|
103 |
+
msgid "All fields required."
|
104 |
+
msgstr "تمام فیلد ها لازم است."
|
105 |
+
|
106 |
+
#: includes/classes/wp-maintenance-mode.php:726
|
107 |
+
msgid "Message via contact"
|
108 |
+
msgstr ""
|
109 |
+
|
110 |
+
#: includes/classes/wp-maintenance-mode.php:738
|
111 |
+
msgid "Your email was sent to the website administrator. Thanks!"
|
112 |
+
msgstr ""
|
113 |
+
|
114 |
+
#: views/contact.php:34
|
115 |
+
#, php-format
|
116 |
+
msgid "You have been contacted via %s."
|
117 |
+
msgstr ""
|
118 |
+
|
119 |
+
#: views/contact.php:50
|
120 |
+
msgid "Name:"
|
121 |
+
msgstr ""
|
122 |
+
|
123 |
+
#: views/contact.php:62
|
124 |
+
msgid "Email:"
|
125 |
+
msgstr ""
|
126 |
+
|
127 |
+
#: views/contact.php:74
|
128 |
+
msgid "Content:"
|
129 |
+
msgstr ""
|
130 |
+
|
131 |
+
#: views/loginform.php:8
|
132 |
+
msgid "Login"
|
133 |
+
msgstr "ورود"
|
134 |
+
|
135 |
+
#: views/maintenance.php:42
|
136 |
+
msgid "your e-mail..."
|
137 |
+
msgstr "ایمیل شما..."
|
138 |
+
|
139 |
+
#: views/maintenance.php:43 views/settings.php:270
|
140 |
+
msgid "Subscribe"
|
141 |
+
msgstr "اشتراک"
|
142 |
+
|
143 |
+
#: views/maintenance.php:84 views/sidebar.php:7
|
144 |
+
msgid "Name"
|
145 |
+
msgstr "نام"
|
146 |
+
|
147 |
+
#: views/maintenance.php:84 views/maintenance.php:85 views/maintenance.php:87
|
148 |
+
msgid "This field is required."
|
149 |
+
msgstr ""
|
150 |
+
|
151 |
+
#: views/maintenance.php:85
|
152 |
+
msgid "E-mail"
|
153 |
+
msgstr "ایمیل"
|
154 |
+
|
155 |
+
#: views/maintenance.php:87
|
156 |
+
msgid "Your message"
|
157 |
+
msgstr "پیام شما"
|
158 |
+
|
159 |
+
#: views/maintenance.php:88
|
160 |
+
msgid "Send"
|
161 |
+
msgstr "ارسال"
|
162 |
+
|
163 |
+
#: views/maintenance.php:93
|
164 |
+
msgid "Contact us"
|
165 |
+
msgstr "ارتباط با ما"
|
166 |
+
|
167 |
+
#: views/maintenance.php:98
|
168 |
+
msgid "Dashboard"
|
169 |
+
msgstr "پیشخوان"
|
170 |
+
|
171 |
+
#: views/settings.php:6
|
172 |
+
msgid "Settings saved."
|
173 |
+
msgstr "تنظیمات ذخیره شد."
|
174 |
+
|
175 |
+
#: views/settings.php:13
|
176 |
+
msgid "General"
|
177 |
+
msgstr "عمومی"
|
178 |
+
|
179 |
+
#: views/settings.php:14
|
180 |
+
msgid "Design"
|
181 |
+
msgstr "طراحی"
|
182 |
+
|
183 |
+
#: views/settings.php:15
|
184 |
+
msgid "Modules"
|
185 |
+
msgstr "ماژولها"
|
186 |
+
|
187 |
+
#: views/settings.php:24
|
188 |
+
msgid "Status"
|
189 |
+
msgstr "وضعیت"
|
190 |
+
|
191 |
+
#: views/settings.php:26
|
192 |
+
msgid "Activated"
|
193 |
+
msgstr "فعالشده"
|
194 |
+
|
195 |
+
#: views/settings.php:27
|
196 |
+
msgid "Deactivated"
|
197 |
+
msgstr "غیرفعالشده"
|
198 |
+
|
199 |
+
#: views/settings.php:31
|
200 |
+
msgid "Bypass for Search Bots"
|
201 |
+
msgstr ""
|
202 |
+
|
203 |
+
#: views/settings.php:34 views/settings.php:104 views/settings.php:114
|
204 |
+
#: views/settings.php:242 views/settings.php:278 views/settings.php:316
|
205 |
+
#: views/settings.php:384 views/settings.php:416
|
206 |
+
msgid "Yes"
|
207 |
+
msgstr "بله"
|
208 |
+
|
209 |
+
#: views/settings.php:35 views/settings.php:105 views/settings.php:115
|
210 |
+
#: views/settings.php:243 views/settings.php:279 views/settings.php:317
|
211 |
+
#: views/settings.php:385 views/settings.php:417
|
212 |
+
msgid "No"
|
213 |
+
msgstr "خیر"
|
214 |
+
|
215 |
+
#: views/settings.php:37
|
216 |
+
msgid "Allow Search Bots to bypass maintenance mode?"
|
217 |
+
msgstr ""
|
218 |
+
|
219 |
+
#: views/settings.php:41
|
220 |
+
msgid "Backend Role"
|
221 |
+
msgstr ""
|
222 |
+
|
223 |
+
#: views/settings.php:43 views/settings.php:59
|
224 |
+
msgid "Select role(s)"
|
225 |
+
msgstr ""
|
226 |
+
|
227 |
+
#: views/settings.php:53
|
228 |
+
msgid ""
|
229 |
+
"Which user role is allowed to access the backend of this blog? "
|
230 |
+
"Administrators will always have access."
|
231 |
+
msgstr ""
|
232 |
+
|
233 |
+
#: views/settings.php:57
|
234 |
+
msgid "Frontend Role"
|
235 |
+
msgstr ""
|
236 |
+
|
237 |
+
#: views/settings.php:69
|
238 |
+
msgid ""
|
239 |
+
"Which user role is allowed to access the frontend of this blog? "
|
240 |
+
"Administrators will always have access."
|
241 |
+
msgstr ""
|
242 |
+
|
243 |
+
#: views/settings.php:73
|
244 |
+
msgid "Robots Meta Tag"
|
245 |
+
msgstr ""
|
246 |
+
|
247 |
+
#: views/settings.php:79
|
248 |
+
msgid ""
|
249 |
+
"The robots meta tag lets you use a granular, page-specific approach to "
|
250 |
+
"control how an individual page should be indexed and served to users in "
|
251 |
+
"search results."
|
252 |
+
msgstr ""
|
253 |
+
|
254 |
+
#: views/settings.php:83
|
255 |
+
msgid "Redirection"
|
256 |
+
msgstr "تغییر مسیر"
|
257 |
+
|
258 |
+
#: views/settings.php:86
|
259 |
+
msgid ""
|
260 |
+
"If you want to redirect a user (with no access to Dashboard/Backend) to a "
|
261 |
+
"URL (different from WordPress Dashboard URL) after login, then define a URL "
|
262 |
+
"(incl. http://)"
|
263 |
+
msgstr ""
|
264 |
+
|
265 |
+
#: views/settings.php:90
|
266 |
+
msgid "Exclude"
|
267 |
+
msgstr "مستثنی"
|
268 |
+
|
269 |
+
#: views/settings.php:97
|
270 |
+
msgid ""
|
271 |
+
"Exclude feed, pages, archives or IPs from maintenance mode. Add one slug / "
|
272 |
+
"IP per line!"
|
273 |
+
msgstr ""
|
274 |
+
|
275 |
+
#: views/settings.php:101
|
276 |
+
msgid "Notice"
|
277 |
+
msgstr "توجه"
|
278 |
+
|
279 |
+
#: views/settings.php:107
|
280 |
+
msgid "Do you want to see notices when maintenance mode is activated?"
|
281 |
+
msgstr ""
|
282 |
+
|
283 |
+
#: views/settings.php:111
|
284 |
+
msgid "Dashboard link"
|
285 |
+
msgstr "لینک پیشخوان"
|
286 |
+
|
287 |
+
#: views/settings.php:117
|
288 |
+
msgid ""
|
289 |
+
"Do you want to add a link to the dashboard on your maintenance mode page?"
|
290 |
+
msgstr ""
|
291 |
+
|
292 |
+
#: views/settings.php:125 views/settings.php:228 views/settings.php:432
|
293 |
+
msgid "Save settings"
|
294 |
+
msgstr "ذخیره تنظیمات"
|
295 |
+
|
296 |
+
#: views/settings.php:126 views/settings.php:229 views/settings.php:433
|
297 |
+
msgid "Reset settings"
|
298 |
+
msgstr "بازنشانی تنظیمات"
|
299 |
+
|
300 |
+
#: views/settings.php:131
|
301 |
+
msgid "Content"
|
302 |
+
msgstr "محتوی"
|
303 |
+
|
304 |
+
#: views/settings.php:136
|
305 |
+
msgid "Title (HTML tag)"
|
306 |
+
msgstr "عنوان"
|
307 |
+
|
308 |
+
#: views/settings.php:142
|
309 |
+
msgid "Heading"
|
310 |
+
msgstr "عنوان"
|
311 |
+
|
312 |
+
#: views/settings.php:149 views/settings.php:284
|
313 |
+
msgid "Text"
|
314 |
+
msgstr "متن"
|
315 |
+
|
316 |
+
#: views/settings.php:169
|
317 |
+
msgid "Background"
|
318 |
+
msgstr "پسزمینه"
|
319 |
+
|
320 |
+
#: views/settings.php:174
|
321 |
+
msgid "Choose type"
|
322 |
+
msgstr "انتخاب نوع"
|
323 |
+
|
324 |
+
#: views/settings.php:177
|
325 |
+
msgid "Custom color"
|
326 |
+
msgstr "رنگ سفارشی"
|
327 |
+
|
328 |
+
#: views/settings.php:178
|
329 |
+
msgid "Uploaded background"
|
330 |
+
msgstr "پسزمینه بارگزاری شده"
|
331 |
+
|
332 |
+
#: views/settings.php:179
|
333 |
+
msgid "Predefined background"
|
334 |
+
msgstr "پسزمینه از پیش تعیین شده"
|
335 |
+
|
336 |
+
#: views/settings.php:184
|
337 |
+
msgid "Choose color"
|
338 |
+
msgstr "انتخاب رنگ"
|
339 |
+
|
340 |
+
#: views/settings.php:190
|
341 |
+
msgid "Upload background"
|
342 |
+
msgstr "بارگزاری پسزمینه"
|
343 |
+
|
344 |
+
#: views/settings.php:194
|
345 |
+
msgid "Backgrounds should have 1920x1280 px size."
|
346 |
+
msgstr "پسزمینه باید 1920x1280 پیکسل باشد."
|
347 |
+
|
348 |
+
#: views/settings.php:199
|
349 |
+
msgid "Choose background"
|
350 |
+
msgstr "انتخاب پسزمینه"
|
351 |
+
|
352 |
+
#: views/settings.php:201
|
353 |
+
#, php-format
|
354 |
+
msgid "source <a href=\"%s\" target=\"_blank\">Free Photos</a>"
|
355 |
+
msgstr ""
|
356 |
+
|
357 |
+
#: views/settings.php:234
|
358 |
+
msgid "Countdown"
|
359 |
+
msgstr "شمارش معکوس"
|
360 |
+
|
361 |
+
#: views/settings.php:239
|
362 |
+
msgid "Show countdown?"
|
363 |
+
msgstr "شمارش معکوس نمایش داده شود؟"
|
364 |
+
|
365 |
+
#: views/settings.php:248
|
366 |
+
msgid "Start date"
|
367 |
+
msgstr "تاریخ شروع"
|
368 |
+
|
369 |
+
#: views/settings.php:254
|
370 |
+
msgid "Countdown (remaining time)"
|
371 |
+
msgstr "شمارش معکوس (زمان باقی مانده)"
|
372 |
+
|
373 |
+
#: views/settings.php:256
|
374 |
+
msgid "Days"
|
375 |
+
msgstr "روز"
|
376 |
+
|
377 |
+
#: views/settings.php:257
|
378 |
+
msgid "Hours"
|
379 |
+
msgstr "ساعت"
|
380 |
+
|
381 |
+
#: views/settings.php:258
|
382 |
+
msgid "Minutes"
|
383 |
+
msgstr "دیقه"
|
384 |
+
|
385 |
+
#: views/settings.php:262
|
386 |
+
msgid "Color"
|
387 |
+
msgstr "رنگ"
|
388 |
+
|
389 |
+
#: views/settings.php:275
|
390 |
+
msgid "Show subscribe?"
|
391 |
+
msgstr "اشتراک نمایش داده شود."
|
392 |
+
|
393 |
+
#: views/settings.php:291
|
394 |
+
msgid "Stats"
|
395 |
+
msgstr "آمار"
|
396 |
+
|
397 |
+
#: views/settings.php:300
|
398 |
+
msgid "Export as CSV"
|
399 |
+
msgstr "استخراج به فرمت CSV"
|
400 |
+
|
401 |
+
#: views/settings.php:301
|
402 |
+
msgid "Empty subscribers list"
|
403 |
+
msgstr ""
|
404 |
+
|
405 |
+
#: views/settings.php:308
|
406 |
+
msgid "Social Networks"
|
407 |
+
msgstr "شبکههای اجتماعی"
|
408 |
+
|
409 |
+
#: views/settings.php:313
|
410 |
+
msgid "Show social networks?"
|
411 |
+
msgstr ""
|
412 |
+
|
413 |
+
#: views/settings.php:322
|
414 |
+
msgid "Links target?"
|
415 |
+
msgstr ""
|
416 |
+
|
417 |
+
#: views/settings.php:325
|
418 |
+
msgid "New page"
|
419 |
+
msgstr "برگه جدید"
|
420 |
+
|
421 |
+
#: views/settings.php:326
|
422 |
+
msgid "Same page"
|
423 |
+
msgstr "همان برگه"
|
424 |
+
|
425 |
+
#: views/settings.php:328
|
426 |
+
msgid "Choose how the links will open."
|
427 |
+
msgstr ""
|
428 |
+
|
429 |
+
#: views/settings.php:376
|
430 |
+
msgid "Contact"
|
431 |
+
msgstr "تماس"
|
432 |
+
|
433 |
+
#: views/settings.php:381
|
434 |
+
msgid "Show contact?"
|
435 |
+
msgstr "تماس نمایش داده شود؟"
|
436 |
+
|
437 |
+
#: views/settings.php:390
|
438 |
+
msgid "Email address"
|
439 |
+
msgstr "آدرس ایمیل"
|
440 |
+
|
441 |
+
#: views/settings.php:396
|
442 |
+
msgid "Effects"
|
443 |
+
msgstr "جلوهها"
|
444 |
+
|
445 |
+
#: views/settings.php:399
|
446 |
+
msgid "Move top - Move bottom"
|
447 |
+
msgstr ""
|
448 |
+
|
449 |
+
#: views/settings.php:400
|
450 |
+
msgid "Zoom - Zoomed"
|
451 |
+
msgstr ""
|
452 |
+
|
453 |
+
#: views/settings.php:401
|
454 |
+
msgid "Fold - Unfold"
|
455 |
+
msgstr ""
|
456 |
+
|
457 |
+
#: views/settings.php:408
|
458 |
+
msgid "Google Analytics"
|
459 |
+
msgstr "گوگل انالیتیکس"
|
460 |
+
|
461 |
+
#: views/settings.php:413
|
462 |
+
msgid "Use Google Analytics?"
|
463 |
+
msgstr "از گوگل انالیتیکس استفاده شود؟"
|
464 |
+
|
465 |
+
#: views/settings.php:422
|
466 |
+
msgid "Tracking code"
|
467 |
+
msgstr "کد پیگیری"
|
468 |
+
|
469 |
+
#: views/sidebar.php:3
|
470 |
+
msgid "Plugin Info"
|
471 |
+
msgstr "توضیحات افزونه"
|
472 |
+
|
473 |
+
#: views/sidebar.php:13
|
474 |
+
msgid "Author"
|
475 |
+
msgstr "نویسنده"
|
476 |
+
|
477 |
+
#: views/sidebar.php:14
|
478 |
+
msgid "Website"
|
479 |
+
msgstr "وبسایت"
|
480 |
+
|
481 |
+
#: views/sidebar.php:15
|
482 |
+
msgid "Twitter"
|
483 |
+
msgstr "نوئیتر"
|
484 |
+
|
485 |
+
#: views/sidebar.php:16
|
486 |
+
msgid "GitHub"
|
487 |
+
msgstr "گیتهاب"
|
488 |
+
|
489 |
+
#: views/sidebar.php:27
|
490 |
+
msgid "Other products"
|
491 |
+
msgstr ""
|
492 |
+
|
493 |
+
#: views/sidebar.php:44
|
494 |
+
msgid "Resources"
|
495 |
+
msgstr "منابع"
|
496 |
+
|
497 |
+
#~ msgid "WordPress Themes"
|
498 |
+
#~ msgstr "قالبهای وردپرس"
|
Binary file
|
@@ -1,465 +1,535 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: WP Maintenance Mode 2.0.
|
4 |
-
"POT-Creation-Date:
|
5 |
-
"PO-Revision-Date:
|
6 |
-
"Last-Translator: Florian TIAR <tflorian91@hotmail.fr>\n"
|
7 |
-
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
-
"Language:
|
9 |
-
"MIME-Version: 1.0\n"
|
10 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
-
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"X-Generator: Poedit 1.
|
13 |
-
"X-Poedit-Basepath:
|
14 |
-
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
-
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
-
"X-Poedit-KeywordsList: __;_e
|
17 |
-
"
|
18 |
-
"
|
19 |
-
"
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
#: includes/classes/wp-maintenance-mode-admin.php:
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
"
|
33 |
-
"
|
34 |
-
|
35 |
-
|
36 |
-
"
|
37 |
-
|
38 |
-
|
39 |
-
#: includes/classes/wp-maintenance-mode.php:
|
40 |
-
msgid "
|
41 |
-
msgstr "
|
42 |
-
|
43 |
-
#: includes/classes/wp-maintenance-mode.php:
|
44 |
-
msgid ""
|
45 |
-
"
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
#: includes/classes/wp-maintenance-mode.php:
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
"
|
59 |
-
|
60 |
-
|
61 |
-
"
|
62 |
-
"
|
63 |
-
|
64 |
-
#: includes/classes/wp-maintenance-mode.php:
|
65 |
-
#: includes/classes/wp-maintenance-mode.php:
|
66 |
-
msgid "Maintenance
|
67 |
-
msgstr "Maintenance
|
68 |
-
|
69 |
-
#: includes/classes/wp-maintenance-mode.php:
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
msgid "
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
#:
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
#: views/
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
"
|
203 |
-
"
|
204 |
-
|
205 |
-
|
206 |
-
#: views/settings.php:
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
"
|
238 |
-
|
239 |
-
#: views/settings.php:
|
240 |
-
msgid "
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
msgstr ""
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
msgstr "
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
msgstr "
|
299 |
-
|
300 |
-
#: views/settings.php:
|
301 |
-
msgid "
|
302 |
-
msgstr "
|
303 |
-
|
304 |
-
#: views/settings.php:
|
305 |
-
msgid "
|
306 |
-
msgstr "
|
307 |
-
|
308 |
-
#: views/settings.php:
|
309 |
-
msgid "
|
310 |
-
msgstr ""
|
311 |
-
|
312 |
-
#: views/settings.php:
|
313 |
-
msgid "
|
314 |
-
msgstr "
|
315 |
-
|
316 |
-
#: views/settings.php:
|
317 |
-
msgid "
|
318 |
-
msgstr "
|
319 |
-
|
320 |
-
#: views/settings.php:
|
321 |
-
msgid "
|
322 |
-
msgstr "
|
323 |
-
|
324 |
-
#: views/settings.php:
|
325 |
-
msgid "
|
326 |
-
msgstr "
|
327 |
-
|
328 |
-
#: views/settings.php:
|
329 |
-
msgid "
|
330 |
-
msgstr "
|
331 |
-
|
332 |
-
#: views/settings.php:
|
333 |
-
msgid "
|
334 |
-
msgstr "
|
335 |
-
|
336 |
-
#: views/settings.php:
|
337 |
-
msgid "
|
338 |
-
msgstr "
|
339 |
-
|
340 |
-
#: views/settings.php:
|
341 |
-
msgid "
|
342 |
-
msgstr "
|
343 |
-
|
344 |
-
#: views/settings.php:
|
345 |
-
msgid "
|
346 |
-
msgstr "
|
347 |
-
|
348 |
-
#: views/settings.php:
|
349 |
-
msgid "
|
350 |
-
msgstr "
|
351 |
-
|
352 |
-
#: views/settings.php:
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
msgid "
|
363 |
-
msgstr "
|
364 |
-
|
365 |
-
#: views/settings.php:
|
366 |
-
msgid "
|
367 |
-
msgstr "
|
368 |
-
|
369 |
-
#: views/settings.php:
|
370 |
-
msgid "
|
371 |
-
msgstr ""
|
372 |
-
|
373 |
-
#: views/settings.php:
|
374 |
-
msgid "
|
375 |
-
msgstr ""
|
376 |
-
|
377 |
-
#: views/settings.php:
|
378 |
-
msgid "
|
379 |
-
msgstr ""
|
380 |
-
|
381 |
-
#: views/settings.php:
|
382 |
-
msgid "
|
383 |
-
msgstr ""
|
384 |
-
|
385 |
-
#: views/settings.php:
|
386 |
-
msgid "
|
387 |
-
msgstr "
|
388 |
-
|
389 |
-
#: views/settings.php:
|
390 |
-
msgid "
|
391 |
-
msgstr "
|
392 |
-
|
393 |
-
#: views/settings.php:
|
394 |
-
msgid "
|
395 |
-
msgstr "
|
396 |
-
|
397 |
-
#: views/settings.php:
|
398 |
-
msgid "
|
399 |
-
msgstr "
|
400 |
-
|
401 |
-
#: views/settings.php:
|
402 |
-
msgid "
|
403 |
-
msgstr ""
|
404 |
-
|
405 |
-
#: views/settings.php:
|
406 |
-
msgid "
|
407 |
-
msgstr ""
|
408 |
-
|
409 |
-
#: views/settings.php:
|
410 |
-
msgid "
|
411 |
-
msgstr ""
|
412 |
-
|
413 |
-
#: views/settings.php:
|
414 |
-
msgid "
|
415 |
-
msgstr ""
|
416 |
-
|
417 |
-
#: views/settings.php:
|
418 |
-
msgid "
|
419 |
-
msgstr ""
|
420 |
-
|
421 |
-
#: views/settings.php:
|
422 |
-
msgid "
|
423 |
-
msgstr ""
|
424 |
-
|
425 |
-
#: views/
|
426 |
-
msgid "
|
427 |
-
msgstr "
|
428 |
-
|
429 |
-
#: views/
|
430 |
-
msgid "
|
431 |
-
msgstr "
|
432 |
-
|
433 |
-
#: views/
|
434 |
-
msgid "
|
435 |
-
msgstr "
|
436 |
-
|
437 |
-
#: views/
|
438 |
-
msgid "
|
439 |
-
msgstr "
|
440 |
-
|
441 |
-
#: views/
|
442 |
-
msgid "
|
443 |
-
msgstr "
|
444 |
-
|
445 |
-
#: views/
|
446 |
-
msgid "
|
447 |
-
msgstr ""
|
448 |
-
|
449 |
-
#: views/
|
450 |
-
msgid "
|
451 |
-
msgstr "
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: WP Maintenance Mode 2.0.4\n"
|
4 |
+
"POT-Creation-Date: 2016-06-17 03:19+0300\n"
|
5 |
+
"PO-Revision-Date: 2016-06-17 03:19+0300\n"
|
6 |
+
"Last-Translator: Florian TIAR <tflorian91@hotmail.fr>\n"
|
7 |
+
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
+
"Language: fr\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 1.8.8\n"
|
13 |
+
"X-Poedit-Basepath: ..\n"
|
14 |
+
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
17 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
|
18 |
+
"esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;"
|
19 |
+
"esc_html_x:1,2c\n"
|
20 |
+
"X-Poedit-SearchPath-0: .\n"
|
21 |
+
"X-Poedit-SearchPath-1: includes/classes\n"
|
22 |
+
"X-Poedit-SearchPath-2: views\n"
|
23 |
+
|
24 |
+
#: includes/classes/wp-maintenance-mode-admin.php:121
|
25 |
+
#: includes/classes/wp-maintenance-mode-admin.php:159
|
26 |
+
#: includes/classes/wp-maintenance-mode-admin.php:181
|
27 |
+
msgid "You do not have access to this resource."
|
28 |
+
msgstr ""
|
29 |
+
|
30 |
+
#: includes/classes/wp-maintenance-mode-admin.php:165 views/settings.php:295
|
31 |
+
#, php-format
|
32 |
+
msgid "You have %d subscriber(s)"
|
33 |
+
msgstr "Vous avez %d abonné(s)"
|
34 |
+
|
35 |
+
#: includes/classes/wp-maintenance-mode-admin.php:186
|
36 |
+
msgid "The tab slug must not be empty."
|
37 |
+
msgstr ""
|
38 |
+
|
39 |
+
#: includes/classes/wp-maintenance-mode-admin.php:191
|
40 |
+
msgid "The tab slug must exist."
|
41 |
+
msgstr ""
|
42 |
+
|
43 |
+
#: includes/classes/wp-maintenance-mode-admin.php:211
|
44 |
+
msgid "WP Maintenance Mode"
|
45 |
+
msgstr "WP Maintenance Mode"
|
46 |
+
|
47 |
+
#: includes/classes/wp-maintenance-mode-admin.php:425
|
48 |
+
msgid "Settings"
|
49 |
+
msgstr "Options"
|
50 |
+
|
51 |
+
#: includes/classes/wp-maintenance-mode-admin.php:444
|
52 |
+
#, php-format
|
53 |
+
msgid ""
|
54 |
+
"The Maintenance Mode is <strong>active</strong>. Please don't forget to <a "
|
55 |
+
"href=\"%s\">deactivate</a> as soon as you are done."
|
56 |
+
msgstr ""
|
57 |
+
"Le mode Maintenance est <strong>actif</strong>. N'oubliez pas de le <a href="
|
58 |
+
"\"%s\">désactiver</a> dès que vous avez terminé."
|
59 |
+
|
60 |
+
#: includes/classes/wp-maintenance-mode-admin.php:481
|
61 |
+
msgid "Notice key cannot be empty."
|
62 |
+
msgstr ""
|
63 |
+
|
64 |
+
#: includes/classes/wp-maintenance-mode.php:103
|
65 |
+
#: includes/classes/wp-maintenance-mode.php:104
|
66 |
+
msgid "Maintenance mode"
|
67 |
+
msgstr "Mode Maintenance"
|
68 |
+
|
69 |
+
#: includes/classes/wp-maintenance-mode.php:106
|
70 |
+
msgid ""
|
71 |
+
"<p>Sorry for the inconvenience.<br />Our website is currently undergoing "
|
72 |
+
"scheduled maintenance.<br />Thank you for your understanding.</p>"
|
73 |
+
msgstr ""
|
74 |
+
"<p>Excusez-nous pour la gêne occasionnée.<br />Notre site web est "
|
75 |
+
"actuellement en maintenance.<br />Merci de votre compréhension.</p>"
|
76 |
+
|
77 |
+
#: includes/classes/wp-maintenance-mode.php:124
|
78 |
+
msgid "Notify me when it's ready"
|
79 |
+
msgstr "Me notifier quand c'est prêt"
|
80 |
+
|
81 |
+
#: includes/classes/wp-maintenance-mode.php:259
|
82 |
+
#, php-format
|
83 |
+
msgid ""
|
84 |
+
"WP Maintenance Mode plugin was relaunched and you MUST revise <a href=\"%s"
|
85 |
+
"\">settings</a>."
|
86 |
+
msgstr ""
|
87 |
+
"Le plugin WP Maintenance Mode a été relancé et vous devez redéfinir les <a "
|
88 |
+
"href=\"%s\">options</a>."
|
89 |
+
|
90 |
+
#: includes/classes/wp-maintenance-mode.php:449
|
91 |
+
#: includes/classes/wp-maintenance-mode.php:463
|
92 |
+
msgid "Maintenance Mode"
|
93 |
+
msgstr "Maintenance Mode"
|
94 |
+
|
95 |
+
#: includes/classes/wp-maintenance-mode.php:687
|
96 |
+
#: includes/classes/wp-maintenance-mode.php:721 views/maintenance.php:85
|
97 |
+
msgid "Please enter a valid email address."
|
98 |
+
msgstr "Veuillez entrer une adresse email valide s'il vous plait."
|
99 |
+
|
100 |
+
#: includes/classes/wp-maintenance-mode.php:699
|
101 |
+
msgid "You successfully subscribed. Thanks!"
|
102 |
+
msgstr ""
|
103 |
+
|
104 |
+
#: includes/classes/wp-maintenance-mode.php:717
|
105 |
+
msgid "All fields required."
|
106 |
+
msgstr "Tous les champs requis."
|
107 |
+
|
108 |
+
#: includes/classes/wp-maintenance-mode.php:726
|
109 |
+
msgid "Message via contact"
|
110 |
+
msgstr "Message via contact"
|
111 |
+
|
112 |
+
#: includes/classes/wp-maintenance-mode.php:738
|
113 |
+
msgid "Your email was sent to the website administrator. Thanks!"
|
114 |
+
msgstr "Merci ! Votre email a été envoyé au webmaster du site."
|
115 |
+
|
116 |
+
#: views/contact.php:34
|
117 |
+
#, php-format
|
118 |
+
msgid "You have been contacted via %s."
|
119 |
+
msgstr ""
|
120 |
+
|
121 |
+
#: views/contact.php:50
|
122 |
+
msgid "Name:"
|
123 |
+
msgstr ""
|
124 |
+
|
125 |
+
#: views/contact.php:62
|
126 |
+
msgid "Email:"
|
127 |
+
msgstr ""
|
128 |
+
|
129 |
+
#: views/contact.php:74
|
130 |
+
msgid "Content:"
|
131 |
+
msgstr ""
|
132 |
+
|
133 |
+
#: views/loginform.php:8
|
134 |
+
msgid "Login"
|
135 |
+
msgstr ""
|
136 |
+
|
137 |
+
#: views/maintenance.php:42
|
138 |
+
msgid "your e-mail..."
|
139 |
+
msgstr "votre e-mail"
|
140 |
+
|
141 |
+
#: views/maintenance.php:43 views/settings.php:270
|
142 |
+
msgid "Subscribe"
|
143 |
+
msgstr "Abonnement Newsletter"
|
144 |
+
|
145 |
+
#: views/maintenance.php:84 views/sidebar.php:7
|
146 |
+
msgid "Name"
|
147 |
+
msgstr "Nom"
|
148 |
+
|
149 |
+
#: views/maintenance.php:84 views/maintenance.php:85 views/maintenance.php:87
|
150 |
+
msgid "This field is required."
|
151 |
+
msgstr ""
|
152 |
+
|
153 |
+
#: views/maintenance.php:85
|
154 |
+
msgid "E-mail"
|
155 |
+
msgstr "E-mail"
|
156 |
+
|
157 |
+
#: views/maintenance.php:87
|
158 |
+
msgid "Your message"
|
159 |
+
msgstr "Votre message"
|
160 |
+
|
161 |
+
#: views/maintenance.php:88
|
162 |
+
msgid "Send"
|
163 |
+
msgstr "Envoyer"
|
164 |
+
|
165 |
+
#: views/maintenance.php:93
|
166 |
+
msgid "Contact us"
|
167 |
+
msgstr "Contactez-nous"
|
168 |
+
|
169 |
+
#: views/maintenance.php:98
|
170 |
+
msgid "Dashboard"
|
171 |
+
msgstr ""
|
172 |
+
|
173 |
+
#: views/settings.php:6
|
174 |
+
msgid "Settings saved."
|
175 |
+
msgstr "Options sauvegardés"
|
176 |
+
|
177 |
+
#: views/settings.php:13
|
178 |
+
msgid "General"
|
179 |
+
msgstr "Général"
|
180 |
+
|
181 |
+
#: views/settings.php:14
|
182 |
+
msgid "Design"
|
183 |
+
msgstr "Design"
|
184 |
+
|
185 |
+
#: views/settings.php:15
|
186 |
+
msgid "Modules"
|
187 |
+
msgstr "Modules"
|
188 |
+
|
189 |
+
#: views/settings.php:24
|
190 |
+
msgid "Status"
|
191 |
+
msgstr "Etat"
|
192 |
+
|
193 |
+
#: views/settings.php:26
|
194 |
+
msgid "Activated"
|
195 |
+
msgstr "Activé"
|
196 |
+
|
197 |
+
#: views/settings.php:27
|
198 |
+
msgid "Deactivated"
|
199 |
+
msgstr "Désactivé"
|
200 |
+
|
201 |
+
#: views/settings.php:31
|
202 |
+
msgid "Bypass for Search Bots"
|
203 |
+
msgstr "Contournement pour les Robots"
|
204 |
+
|
205 |
+
#: views/settings.php:34 views/settings.php:104 views/settings.php:114
|
206 |
+
#: views/settings.php:242 views/settings.php:278 views/settings.php:316
|
207 |
+
#: views/settings.php:384 views/settings.php:416
|
208 |
+
msgid "Yes"
|
209 |
+
msgstr "Oui"
|
210 |
+
|
211 |
+
#: views/settings.php:35 views/settings.php:105 views/settings.php:115
|
212 |
+
#: views/settings.php:243 views/settings.php:279 views/settings.php:317
|
213 |
+
#: views/settings.php:385 views/settings.php:417
|
214 |
+
msgid "No"
|
215 |
+
msgstr "Non"
|
216 |
+
|
217 |
+
#: views/settings.php:37
|
218 |
+
msgid "Allow Search Bots to bypass maintenance mode?"
|
219 |
+
msgstr "Autoriser les robots à contourner le mode maintenance ?"
|
220 |
+
|
221 |
+
#: views/settings.php:41
|
222 |
+
msgid "Backend Role"
|
223 |
+
msgstr "Rôle utilisateur du Panel d'Administration"
|
224 |
+
|
225 |
+
#: views/settings.php:43 views/settings.php:59
|
226 |
+
msgid "Select role(s)"
|
227 |
+
msgstr ""
|
228 |
+
|
229 |
+
#: views/settings.php:53
|
230 |
+
msgid ""
|
231 |
+
"Which user role is allowed to access the backend of this blog? "
|
232 |
+
"Administrators will always have access."
|
233 |
+
msgstr ""
|
234 |
+
|
235 |
+
#: views/settings.php:57
|
236 |
+
msgid "Frontend Role"
|
237 |
+
msgstr "Rôle utilisateur du Site Web"
|
238 |
+
|
239 |
+
#: views/settings.php:69
|
240 |
+
msgid ""
|
241 |
+
"Which user role is allowed to access the frontend of this blog? "
|
242 |
+
"Administrators will always have access."
|
243 |
+
msgstr ""
|
244 |
+
|
245 |
+
#: views/settings.php:73
|
246 |
+
msgid "Robots Meta Tag"
|
247 |
+
msgstr "Balise Meta de Robots"
|
248 |
+
|
249 |
+
#: views/settings.php:79
|
250 |
+
msgid ""
|
251 |
+
"The robots meta tag lets you use a granular, page-specific approach to "
|
252 |
+
"control how an individual page should be indexed and served to users in "
|
253 |
+
"search results."
|
254 |
+
msgstr ""
|
255 |
+
"La balise meta de robots vous permet d'utiliser un granulaire, chemin de "
|
256 |
+
"page spécifique pour contrôler comment une page individuelle peut être "
|
257 |
+
"indexé et servi aux utilisateurs dans les résultats de recherche."
|
258 |
+
|
259 |
+
#: views/settings.php:83
|
260 |
+
msgid "Redirection"
|
261 |
+
msgstr "Redirection"
|
262 |
+
|
263 |
+
#: views/settings.php:86
|
264 |
+
msgid ""
|
265 |
+
"If you want to redirect a user (with no access to Dashboard/Backend) to a "
|
266 |
+
"URL (different from WordPress Dashboard URL) after login, then define a URL "
|
267 |
+
"(incl. http://)"
|
268 |
+
msgstr ""
|
269 |
+
|
270 |
+
#: views/settings.php:90
|
271 |
+
msgid "Exclude"
|
272 |
+
msgstr "Exclure"
|
273 |
+
|
274 |
+
#: views/settings.php:97
|
275 |
+
msgid ""
|
276 |
+
"Exclude feed, pages, archives or IPs from maintenance mode. Add one slug / "
|
277 |
+
"IP per line!"
|
278 |
+
msgstr ""
|
279 |
+
"Exclure les flux, pages, archives ou adresses IP du mode maintenance. "
|
280 |
+
"Ajouter une exclusion par ligne."
|
281 |
+
|
282 |
+
#: views/settings.php:101
|
283 |
+
msgid "Notice"
|
284 |
+
msgstr "Notification"
|
285 |
+
|
286 |
+
#: views/settings.php:107
|
287 |
+
msgid "Do you want to see notices when maintenance mode is activated?"
|
288 |
+
msgstr ""
|
289 |
+
"Souhaitez-vous voir une notification quand le mode maintenance est activé ?"
|
290 |
+
|
291 |
+
#: views/settings.php:111
|
292 |
+
msgid "Dashboard link"
|
293 |
+
msgstr ""
|
294 |
+
|
295 |
+
#: views/settings.php:117
|
296 |
+
msgid ""
|
297 |
+
"Do you want to add a link to the dashboard on your maintenance mode page?"
|
298 |
+
msgstr ""
|
299 |
+
|
300 |
+
#: views/settings.php:125 views/settings.php:228 views/settings.php:432
|
301 |
+
msgid "Save settings"
|
302 |
+
msgstr ""
|
303 |
+
|
304 |
+
#: views/settings.php:126 views/settings.php:229 views/settings.php:433
|
305 |
+
msgid "Reset settings"
|
306 |
+
msgstr ""
|
307 |
+
|
308 |
+
#: views/settings.php:131
|
309 |
+
msgid "Content"
|
310 |
+
msgstr "Contenu"
|
311 |
+
|
312 |
+
#: views/settings.php:136
|
313 |
+
msgid "Title (HTML tag)"
|
314 |
+
msgstr "Title (balise meta HTML)"
|
315 |
+
|
316 |
+
#: views/settings.php:142
|
317 |
+
msgid "Heading"
|
318 |
+
msgstr "En-tête (titre)"
|
319 |
+
|
320 |
+
#: views/settings.php:149 views/settings.php:284
|
321 |
+
msgid "Text"
|
322 |
+
msgstr "Texte"
|
323 |
+
|
324 |
+
#: views/settings.php:169
|
325 |
+
msgid "Background"
|
326 |
+
msgstr "Fond d'écran"
|
327 |
+
|
328 |
+
#: views/settings.php:174
|
329 |
+
msgid "Choose type"
|
330 |
+
msgstr "Choix du type"
|
331 |
+
|
332 |
+
#: views/settings.php:177
|
333 |
+
msgid "Custom color"
|
334 |
+
msgstr "Couleur personnalisée"
|
335 |
+
|
336 |
+
#: views/settings.php:178
|
337 |
+
msgid "Uploaded background"
|
338 |
+
msgstr "Fond d'écran uploadé"
|
339 |
+
|
340 |
+
#: views/settings.php:179
|
341 |
+
msgid "Predefined background"
|
342 |
+
msgstr "Fond d'écran prédéfini"
|
343 |
+
|
344 |
+
#: views/settings.php:184
|
345 |
+
msgid "Choose color"
|
346 |
+
msgstr "Choix de la couleur"
|
347 |
+
|
348 |
+
#: views/settings.php:190
|
349 |
+
msgid "Upload background"
|
350 |
+
msgstr "Uploader le fond d'écran"
|
351 |
+
|
352 |
+
#: views/settings.php:194
|
353 |
+
msgid "Backgrounds should have 1920x1280 px size."
|
354 |
+
msgstr "Le fond d'écran doit avoir une taille de 1920x1280px."
|
355 |
+
|
356 |
+
#: views/settings.php:199
|
357 |
+
msgid "Choose background"
|
358 |
+
msgstr "Choix du fond d'écran"
|
359 |
+
|
360 |
+
#: views/settings.php:201
|
361 |
+
#, php-format
|
362 |
+
msgid "source <a href=\"%s\" target=\"_blank\">Free Photos</a>"
|
363 |
+
msgstr ""
|
364 |
+
|
365 |
+
#: views/settings.php:234
|
366 |
+
msgid "Countdown"
|
367 |
+
msgstr "Compte à rebours"
|
368 |
+
|
369 |
+
#: views/settings.php:239
|
370 |
+
msgid "Show countdown?"
|
371 |
+
msgstr "Afficher le compte à rebours ?"
|
372 |
+
|
373 |
+
#: views/settings.php:248
|
374 |
+
msgid "Start date"
|
375 |
+
msgstr "Date de départ"
|
376 |
+
|
377 |
+
#: views/settings.php:254
|
378 |
+
msgid "Countdown (remaining time)"
|
379 |
+
msgstr "Compte à rebours (temps restant)"
|
380 |
+
|
381 |
+
#: views/settings.php:256
|
382 |
+
msgid "Days"
|
383 |
+
msgstr "Jours"
|
384 |
+
|
385 |
+
#: views/settings.php:257
|
386 |
+
msgid "Hours"
|
387 |
+
msgstr "Heures"
|
388 |
+
|
389 |
+
#: views/settings.php:258
|
390 |
+
msgid "Minutes"
|
391 |
+
msgstr "Minutes"
|
392 |
+
|
393 |
+
#: views/settings.php:262
|
394 |
+
msgid "Color"
|
395 |
+
msgstr "Couleur"
|
396 |
+
|
397 |
+
#: views/settings.php:275
|
398 |
+
msgid "Show subscribe?"
|
399 |
+
msgstr "Afficher l'abonnement (newsletter) ?"
|
400 |
+
|
401 |
+
#: views/settings.php:291
|
402 |
+
msgid "Stats"
|
403 |
+
msgstr "Statistiques"
|
404 |
+
|
405 |
+
#: views/settings.php:300
|
406 |
+
msgid "Export as CSV"
|
407 |
+
msgstr "Exporter en CSV"
|
408 |
+
|
409 |
+
#: views/settings.php:301
|
410 |
+
msgid "Empty subscribers list"
|
411 |
+
msgstr ""
|
412 |
+
|
413 |
+
#: views/settings.php:308
|
414 |
+
msgid "Social Networks"
|
415 |
+
msgstr "Réseaux Sociaux"
|
416 |
+
|
417 |
+
#: views/settings.php:313
|
418 |
+
msgid "Show social networks?"
|
419 |
+
msgstr "Afficher les réseaux sociaux ?"
|
420 |
+
|
421 |
+
#: views/settings.php:322
|
422 |
+
msgid "Links target?"
|
423 |
+
msgstr ""
|
424 |
+
|
425 |
+
#: views/settings.php:325
|
426 |
+
msgid "New page"
|
427 |
+
msgstr ""
|
428 |
+
|
429 |
+
#: views/settings.php:326
|
430 |
+
msgid "Same page"
|
431 |
+
msgstr ""
|
432 |
+
|
433 |
+
#: views/settings.php:328
|
434 |
+
msgid "Choose how the links will open."
|
435 |
+
msgstr ""
|
436 |
+
|
437 |
+
#: views/settings.php:376
|
438 |
+
msgid "Contact"
|
439 |
+
msgstr "Contact"
|
440 |
+
|
441 |
+
#: views/settings.php:381
|
442 |
+
msgid "Show contact?"
|
443 |
+
msgstr "Afficher le formulaire de contact ?"
|
444 |
+
|
445 |
+
#: views/settings.php:390
|
446 |
+
msgid "Email address"
|
447 |
+
msgstr "Adresse email"
|
448 |
+
|
449 |
+
#: views/settings.php:396
|
450 |
+
msgid "Effects"
|
451 |
+
msgstr "Animation"
|
452 |
+
|
453 |
+
#: views/settings.php:399
|
454 |
+
msgid "Move top - Move bottom"
|
455 |
+
msgstr ""
|
456 |
+
|
457 |
+
#: views/settings.php:400
|
458 |
+
msgid "Zoom - Zoomed"
|
459 |
+
msgstr ""
|
460 |
+
|
461 |
+
#: views/settings.php:401
|
462 |
+
msgid "Fold - Unfold"
|
463 |
+
msgstr ""
|
464 |
+
|
465 |
+
#: views/settings.php:408
|
466 |
+
msgid "Google Analytics"
|
467 |
+
msgstr ""
|
468 |
+
|
469 |
+
#: views/settings.php:413
|
470 |
+
msgid "Use Google Analytics?"
|
471 |
+
msgstr ""
|
472 |
+
|
473 |
+
#: views/settings.php:422
|
474 |
+
msgid "Tracking code"
|
475 |
+
msgstr ""
|
476 |
+
|
477 |
+
#: views/sidebar.php:3
|
478 |
+
msgid "Plugin Info"
|
479 |
+
msgstr "Informations sur le Plugin"
|
480 |
+
|
481 |
+
#: views/sidebar.php:13
|
482 |
+
msgid "Author"
|
483 |
+
msgstr "Auteur"
|
484 |
+
|
485 |
+
#: views/sidebar.php:14
|
486 |
+
msgid "Website"
|
487 |
+
msgstr "Site Web"
|
488 |
+
|
489 |
+
#: views/sidebar.php:15
|
490 |
+
msgid "Twitter"
|
491 |
+
msgstr "Twitter"
|
492 |
+
|
493 |
+
#: views/sidebar.php:16
|
494 |
+
msgid "GitHub"
|
495 |
+
msgstr "GitHub"
|
496 |
+
|
497 |
+
#: views/sidebar.php:27
|
498 |
+
msgid "Other products"
|
499 |
+
msgstr ""
|
500 |
+
|
501 |
+
#: views/sidebar.php:44
|
502 |
+
msgid "Resources"
|
503 |
+
msgstr "Resources"
|
504 |
+
|
505 |
+
#~ msgid "You successfuly subscribed. Thanks!"
|
506 |
+
#~ msgstr "Merci ! Vous vous êtes abonné avec succès."
|
507 |
+
|
508 |
+
#~ msgid "Which user role is allowed to access the backend of this blog?"
|
509 |
+
#~ msgstr ""
|
510 |
+
#~ "Quel rôle d'utilisateur est autorisé à avoir accès au panel "
|
511 |
+
#~ "d'administration ?"
|
512 |
+
|
513 |
+
#~ msgid "Which user role is allowed to access the frontend of this blog?"
|
514 |
+
#~ msgstr "Quel rôle d'utilisateur est autorisé à avoir accès au Site Web ?"
|
515 |
+
|
516 |
+
#~ msgid ""
|
517 |
+
#~ "If you want to redirect a user to a URL (which is not the WordPress "
|
518 |
+
#~ "dashboard) after login, then define a URL (incl. http://)"
|
519 |
+
#~ msgstr ""
|
520 |
+
#~ "Si vous souhaitez rediriger un utilisateur vers une URL spécifique (qui "
|
521 |
+
#~ "n'est pas celle de votre site) après connexion (inclure : http://)"
|
522 |
+
|
523 |
+
#~ msgid "Developed by <a href=\"%s\">Designmodo</a>"
|
524 |
+
#~ msgstr "Développé par <a href=\"%s\">Designmodo</a>"
|
525 |
+
|
526 |
+
#~ msgid "Subscribe now for early access to new WordPress themes."
|
527 |
+
#~ msgstr ""
|
528 |
+
#~ "Abonnez-vous maintenant pour avoir facilement accès aux nouveaux thèmes "
|
529 |
+
#~ "WordPress."
|
530 |
+
|
531 |
+
#~ msgid "Enter your email address"
|
532 |
+
#~ msgstr "Entrez votre adresse email"
|
533 |
+
|
534 |
+
#~ msgid "News"
|
535 |
+
#~ msgstr "Actualités"
|
Binary file
|
@@ -0,0 +1,528 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: WP Maintenance Mode 2.0.4\n"
|
4 |
+
"POT-Creation-Date: 2016-06-17 03:21+0300\n"
|
5 |
+
"PO-Revision-Date: 2016-06-17 03:22+0300\n"
|
6 |
+
"Last-Translator: Massimiliano Losego <massimiliano@losego.it>\n"
|
7 |
+
"Language-Team: Losego Massimiliano <massimiliano@losego.it>\n"
|
8 |
+
"Language: it\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 1.8.8\n"
|
13 |
+
"X-Poedit-Basepath: ..\n"
|
14 |
+
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
17 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
|
18 |
+
"esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
|
19 |
+
"X-Poedit-SearchPath-0: .\n"
|
20 |
+
"X-Poedit-SearchPath-1: includes/classes\n"
|
21 |
+
"X-Poedit-SearchPath-2: views\n"
|
22 |
+
|
23 |
+
#: includes/classes/wp-maintenance-mode-admin.php:121
|
24 |
+
#: includes/classes/wp-maintenance-mode-admin.php:159
|
25 |
+
#: includes/classes/wp-maintenance-mode-admin.php:181
|
26 |
+
msgid "You do not have access to this resource."
|
27 |
+
msgstr ""
|
28 |
+
|
29 |
+
#: includes/classes/wp-maintenance-mode-admin.php:165 views/settings.php:295
|
30 |
+
#, php-format
|
31 |
+
msgid "You have %d subscriber(s)"
|
32 |
+
msgstr "Hai %d iscritti"
|
33 |
+
|
34 |
+
#: includes/classes/wp-maintenance-mode-admin.php:186
|
35 |
+
msgid "The tab slug must not be empty."
|
36 |
+
msgstr ""
|
37 |
+
|
38 |
+
#: includes/classes/wp-maintenance-mode-admin.php:191
|
39 |
+
msgid "The tab slug must exist."
|
40 |
+
msgstr ""
|
41 |
+
|
42 |
+
#: includes/classes/wp-maintenance-mode-admin.php:211
|
43 |
+
msgid "WP Maintenance Mode"
|
44 |
+
msgstr "WP Maintenance Mode"
|
45 |
+
|
46 |
+
#: includes/classes/wp-maintenance-mode-admin.php:425
|
47 |
+
msgid "Settings"
|
48 |
+
msgstr "Impotazioni"
|
49 |
+
|
50 |
+
#: includes/classes/wp-maintenance-mode-admin.php:444
|
51 |
+
#, php-format
|
52 |
+
msgid ""
|
53 |
+
"The Maintenance Mode is <strong>active</strong>. Please don't forget to <a "
|
54 |
+
"href=\"%s\">deactivate</a> as soon as you are done."
|
55 |
+
msgstr ""
|
56 |
+
"La Modalità Manutenzione è <strong>attiva</strong>. Non dimenticarti di <a "
|
57 |
+
"href=\"%s\">disattivarla</a> appena avrai finito."
|
58 |
+
|
59 |
+
#: includes/classes/wp-maintenance-mode-admin.php:481
|
60 |
+
msgid "Notice key cannot be empty."
|
61 |
+
msgstr ""
|
62 |
+
|
63 |
+
#: includes/classes/wp-maintenance-mode.php:103
|
64 |
+
#: includes/classes/wp-maintenance-mode.php:104
|
65 |
+
msgid "Maintenance mode"
|
66 |
+
msgstr "Modalità Manutenzione"
|
67 |
+
|
68 |
+
#: includes/classes/wp-maintenance-mode.php:106
|
69 |
+
msgid ""
|
70 |
+
"<p>Sorry for the inconvenience.<br />Our website is currently undergoing "
|
71 |
+
"scheduled maintenance.<br />Thank you for your understanding.</p>"
|
72 |
+
msgstr ""
|
73 |
+
"<p>Ci scusiamo per l'inconveniente.<br />Il nostro sito è attualmente in "
|
74 |
+
"manutenzione.<br />Grazie per la comprensione.</p>"
|
75 |
+
|
76 |
+
#: includes/classes/wp-maintenance-mode.php:124
|
77 |
+
msgid "Notify me when it's ready"
|
78 |
+
msgstr "Informatemi quando sarà pronto"
|
79 |
+
|
80 |
+
#: includes/classes/wp-maintenance-mode.php:259
|
81 |
+
#, php-format
|
82 |
+
msgid ""
|
83 |
+
"WP Maintenance Mode plugin was relaunched and you MUST revise <a href=\"%s"
|
84 |
+
"\">settings</a>."
|
85 |
+
msgstr ""
|
86 |
+
"WP Maintenance Mode plugin è stato ri-lanciato e DOVRAI rivedere le <a href="
|
87 |
+
"\"%s\">impostazioni</a>."
|
88 |
+
|
89 |
+
#: includes/classes/wp-maintenance-mode.php:449
|
90 |
+
#: includes/classes/wp-maintenance-mode.php:463
|
91 |
+
msgid "Maintenance Mode"
|
92 |
+
msgstr "Modalità Manutenzione"
|
93 |
+
|
94 |
+
#: includes/classes/wp-maintenance-mode.php:687
|
95 |
+
#: includes/classes/wp-maintenance-mode.php:721 views/maintenance.php:85
|
96 |
+
msgid "Please enter a valid email address."
|
97 |
+
msgstr "Per favore inserisci in email corretta."
|
98 |
+
|
99 |
+
#: includes/classes/wp-maintenance-mode.php:699
|
100 |
+
msgid "You successfully subscribed. Thanks!"
|
101 |
+
msgstr ""
|
102 |
+
|
103 |
+
#: includes/classes/wp-maintenance-mode.php:717
|
104 |
+
msgid "All fields required."
|
105 |
+
msgstr "Sono richiesti tutti i campi."
|
106 |
+
|
107 |
+
#: includes/classes/wp-maintenance-mode.php:726
|
108 |
+
msgid "Message via contact"
|
109 |
+
msgstr "Messaggio via contatto"
|
110 |
+
|
111 |
+
#: includes/classes/wp-maintenance-mode.php:738
|
112 |
+
msgid "Your email was sent to the website administrator. Thanks!"
|
113 |
+
msgstr "La tua email è stata spedita all'amministratore del sito. Grazie!"
|
114 |
+
|
115 |
+
#: views/contact.php:34
|
116 |
+
#, php-format
|
117 |
+
msgid "You have been contacted via %s."
|
118 |
+
msgstr ""
|
119 |
+
|
120 |
+
#: views/contact.php:50
|
121 |
+
msgid "Name:"
|
122 |
+
msgstr ""
|
123 |
+
|
124 |
+
#: views/contact.php:62
|
125 |
+
msgid "Email:"
|
126 |
+
msgstr ""
|
127 |
+
|
128 |
+
#: views/contact.php:74
|
129 |
+
msgid "Content:"
|
130 |
+
msgstr ""
|
131 |
+
|
132 |
+
#: views/loginform.php:8
|
133 |
+
msgid "Login"
|
134 |
+
msgstr "Login"
|
135 |
+
|
136 |
+
#: views/maintenance.php:42
|
137 |
+
msgid "your e-mail..."
|
138 |
+
msgstr "la tua e-mail..."
|
139 |
+
|
140 |
+
#: views/maintenance.php:43 views/settings.php:270
|
141 |
+
msgid "Subscribe"
|
142 |
+
msgstr "Iscriviti"
|
143 |
+
|
144 |
+
#: views/maintenance.php:84 views/sidebar.php:7
|
145 |
+
msgid "Name"
|
146 |
+
msgstr "Nome"
|
147 |
+
|
148 |
+
#: views/maintenance.php:84 views/maintenance.php:85 views/maintenance.php:87
|
149 |
+
msgid "This field is required."
|
150 |
+
msgstr ""
|
151 |
+
|
152 |
+
#: views/maintenance.php:85
|
153 |
+
msgid "E-mail"
|
154 |
+
msgstr "E-mail"
|
155 |
+
|
156 |
+
#: views/maintenance.php:87
|
157 |
+
msgid "Your message"
|
158 |
+
msgstr "Il tuo messaggio"
|
159 |
+
|
160 |
+
#: views/maintenance.php:88
|
161 |
+
msgid "Send"
|
162 |
+
msgstr "Spedisci"
|
163 |
+
|
164 |
+
#: views/maintenance.php:93
|
165 |
+
msgid "Contact us"
|
166 |
+
msgstr "Contattaci"
|
167 |
+
|
168 |
+
#: views/maintenance.php:98
|
169 |
+
msgid "Dashboard"
|
170 |
+
msgstr "Dashboard"
|
171 |
+
|
172 |
+
#: views/settings.php:6
|
173 |
+
msgid "Settings saved."
|
174 |
+
msgstr "Impostazioni salvate."
|
175 |
+
|
176 |
+
#: views/settings.php:13
|
177 |
+
msgid "General"
|
178 |
+
msgstr "Generale"
|
179 |
+
|
180 |
+
#: views/settings.php:14
|
181 |
+
msgid "Design"
|
182 |
+
msgstr "Design"
|
183 |
+
|
184 |
+
#: views/settings.php:15
|
185 |
+
msgid "Modules"
|
186 |
+
msgstr "Moduli"
|
187 |
+
|
188 |
+
#: views/settings.php:24
|
189 |
+
msgid "Status"
|
190 |
+
msgstr "Stato"
|
191 |
+
|
192 |
+
#: views/settings.php:26
|
193 |
+
msgid "Activated"
|
194 |
+
msgstr "Attivato"
|
195 |
+
|
196 |
+
#: views/settings.php:27
|
197 |
+
msgid "Deactivated"
|
198 |
+
msgstr "Disattivato"
|
199 |
+
|
200 |
+
#: views/settings.php:31
|
201 |
+
msgid "Bypass for Search Bots"
|
202 |
+
msgstr "Bypass per Bot di ricerca"
|
203 |
+
|
204 |
+
#: views/settings.php:34 views/settings.php:104 views/settings.php:114
|
205 |
+
#: views/settings.php:242 views/settings.php:278 views/settings.php:316
|
206 |
+
#: views/settings.php:384 views/settings.php:416
|
207 |
+
msgid "Yes"
|
208 |
+
msgstr "Si"
|
209 |
+
|
210 |
+
#: views/settings.php:35 views/settings.php:105 views/settings.php:115
|
211 |
+
#: views/settings.php:243 views/settings.php:279 views/settings.php:317
|
212 |
+
#: views/settings.php:385 views/settings.php:417
|
213 |
+
msgid "No"
|
214 |
+
msgstr "No"
|
215 |
+
|
216 |
+
#: views/settings.php:37
|
217 |
+
msgid "Allow Search Bots to bypass maintenance mode?"
|
218 |
+
msgstr "Permetti ai Bot di ricerca di bypassare la modalità manutenzione?"
|
219 |
+
|
220 |
+
#: views/settings.php:41
|
221 |
+
msgid "Backend Role"
|
222 |
+
msgstr "Ruolo Backend"
|
223 |
+
|
224 |
+
#: views/settings.php:43 views/settings.php:59
|
225 |
+
msgid "Select role(s)"
|
226 |
+
msgstr ""
|
227 |
+
|
228 |
+
#: views/settings.php:53
|
229 |
+
msgid ""
|
230 |
+
"Which user role is allowed to access the backend of this blog? "
|
231 |
+
"Administrators will always have access."
|
232 |
+
msgstr ""
|
233 |
+
|
234 |
+
#: views/settings.php:57
|
235 |
+
msgid "Frontend Role"
|
236 |
+
msgstr "Ruolo Frontend"
|
237 |
+
|
238 |
+
#: views/settings.php:69
|
239 |
+
msgid ""
|
240 |
+
"Which user role is allowed to access the frontend of this blog? "
|
241 |
+
"Administrators will always have access."
|
242 |
+
msgstr ""
|
243 |
+
|
244 |
+
#: views/settings.php:73
|
245 |
+
msgid "Robots Meta Tag"
|
246 |
+
msgstr "Meta Tag Robots"
|
247 |
+
|
248 |
+
#: views/settings.php:79
|
249 |
+
msgid ""
|
250 |
+
"The robots meta tag lets you use a granular, page-specific approach to "
|
251 |
+
"control how an individual page should be indexed and served to users in "
|
252 |
+
"search results."
|
253 |
+
msgstr ""
|
254 |
+
"I metatag per i robot ti permettono di usare un approccio granulare, "
|
255 |
+
"specifico per la pagina per controllare come ogni pagina potrà essere "
|
256 |
+
"indicizzata e servita agli utenti nei risultati di ricerca."
|
257 |
+
|
258 |
+
#: views/settings.php:83
|
259 |
+
msgid "Redirection"
|
260 |
+
msgstr "Redirezione"
|
261 |
+
|
262 |
+
#: views/settings.php:86
|
263 |
+
msgid ""
|
264 |
+
"If you want to redirect a user (with no access to Dashboard/Backend) to a "
|
265 |
+
"URL (different from WordPress Dashboard URL) after login, then define a URL "
|
266 |
+
"(incl. http://)"
|
267 |
+
msgstr ""
|
268 |
+
|
269 |
+
#: views/settings.php:90
|
270 |
+
msgid "Exclude"
|
271 |
+
msgstr "Escludi"
|
272 |
+
|
273 |
+
#: views/settings.php:97
|
274 |
+
msgid ""
|
275 |
+
"Exclude feed, pages, archives or IPs from maintenance mode. Add one slug / "
|
276 |
+
"IP per line!"
|
277 |
+
msgstr ""
|
278 |
+
"Escludi feed, pagine, archivi o IPs dalla modalità manutenzione, Aggiungi un "
|
279 |
+
"valore/IP per linea!"
|
280 |
+
|
281 |
+
#: views/settings.php:101
|
282 |
+
msgid "Notice"
|
283 |
+
msgstr "Avviso"
|
284 |
+
|
285 |
+
#: views/settings.php:107
|
286 |
+
msgid "Do you want to see notices when maintenance mode is activated?"
|
287 |
+
msgstr ""
|
288 |
+
"Vuoi vedere gli avvisi quando viene attivata la modalità di manutenzione?"
|
289 |
+
|
290 |
+
#: views/settings.php:111
|
291 |
+
msgid "Dashboard link"
|
292 |
+
msgstr "Link Dashboard"
|
293 |
+
|
294 |
+
#: views/settings.php:117
|
295 |
+
msgid ""
|
296 |
+
"Do you want to add a link to the dashboard on your maintenance mode page?"
|
297 |
+
msgstr ""
|
298 |
+
"Vuoi aggiungere un collegamento alla dashboard sulla tua pagina modalità di "
|
299 |
+
"manutenzione?"
|
300 |
+
|
301 |
+
#: views/settings.php:125 views/settings.php:228 views/settings.php:432
|
302 |
+
msgid "Save settings"
|
303 |
+
msgstr "Salva impostazioni"
|
304 |
+
|
305 |
+
#: views/settings.php:126 views/settings.php:229 views/settings.php:433
|
306 |
+
msgid "Reset settings"
|
307 |
+
msgstr "Resetta impostazioni"
|
308 |
+
|
309 |
+
#: views/settings.php:131
|
310 |
+
msgid "Content"
|
311 |
+
msgstr "Contenuto"
|
312 |
+
|
313 |
+
#: views/settings.php:136
|
314 |
+
msgid "Title (HTML tag)"
|
315 |
+
msgstr "Titolo (HTML tag)"
|
316 |
+
|
317 |
+
#: views/settings.php:142
|
318 |
+
msgid "Heading"
|
319 |
+
msgstr "Intestazione"
|
320 |
+
|
321 |
+
#: views/settings.php:149 views/settings.php:284
|
322 |
+
msgid "Text"
|
323 |
+
msgstr "Testo"
|
324 |
+
|
325 |
+
#: views/settings.php:169
|
326 |
+
msgid "Background"
|
327 |
+
msgstr "Sfondo"
|
328 |
+
|
329 |
+
#: views/settings.php:174
|
330 |
+
msgid "Choose type"
|
331 |
+
msgstr "Scegli il tipo"
|
332 |
+
|
333 |
+
#: views/settings.php:177
|
334 |
+
msgid "Custom color"
|
335 |
+
msgstr "Colore Custom"
|
336 |
+
|
337 |
+
#: views/settings.php:178
|
338 |
+
msgid "Uploaded background"
|
339 |
+
msgstr "Background caricato"
|
340 |
+
|
341 |
+
#: views/settings.php:179
|
342 |
+
msgid "Predefined background"
|
343 |
+
msgstr "Background predefinito"
|
344 |
+
|
345 |
+
#: views/settings.php:184
|
346 |
+
msgid "Choose color"
|
347 |
+
msgstr "Scegli il colore"
|
348 |
+
|
349 |
+
#: views/settings.php:190
|
350 |
+
msgid "Upload background"
|
351 |
+
msgstr "Carica uno Sfondo"
|
352 |
+
|
353 |
+
#: views/settings.php:194
|
354 |
+
msgid "Backgrounds should have 1920x1280 px size."
|
355 |
+
msgstr "Gli Sfondi dovrebbero avere una dimensione di 1920x1280 px."
|
356 |
+
|
357 |
+
#: views/settings.php:199
|
358 |
+
msgid "Choose background"
|
359 |
+
msgstr "Scegli lo sfondo"
|
360 |
+
|
361 |
+
#: views/settings.php:201
|
362 |
+
#, php-format
|
363 |
+
msgid "source <a href=\"%s\" target=\"_blank\">Free Photos</a>"
|
364 |
+
msgstr ""
|
365 |
+
|
366 |
+
#: views/settings.php:234
|
367 |
+
msgid "Countdown"
|
368 |
+
msgstr "Conto alla rovescia"
|
369 |
+
|
370 |
+
#: views/settings.php:239
|
371 |
+
msgid "Show countdown?"
|
372 |
+
msgstr "Mostra il conto alla rovescia?"
|
373 |
+
|
374 |
+
#: views/settings.php:248
|
375 |
+
msgid "Start date"
|
376 |
+
msgstr "Data di inizio"
|
377 |
+
|
378 |
+
#: views/settings.php:254
|
379 |
+
msgid "Countdown (remaining time)"
|
380 |
+
msgstr "Conto alla rovescia (tempo rimanente)"
|
381 |
+
|
382 |
+
#: views/settings.php:256
|
383 |
+
msgid "Days"
|
384 |
+
msgstr "Giorni"
|
385 |
+
|
386 |
+
#: views/settings.php:257
|
387 |
+
msgid "Hours"
|
388 |
+
msgstr "Ore"
|
389 |
+
|
390 |
+
#: views/settings.php:258
|
391 |
+
msgid "Minutes"
|
392 |
+
msgstr "Minuti"
|
393 |
+
|
394 |
+
#: views/settings.php:262
|
395 |
+
msgid "Color"
|
396 |
+
msgstr "Colore"
|
397 |
+
|
398 |
+
#: views/settings.php:275
|
399 |
+
msgid "Show subscribe?"
|
400 |
+
msgstr "Mostra Sottoscrivi?"
|
401 |
+
|
402 |
+
#: views/settings.php:291
|
403 |
+
msgid "Stats"
|
404 |
+
msgstr "Statistiche"
|
405 |
+
|
406 |
+
#: views/settings.php:300
|
407 |
+
msgid "Export as CSV"
|
408 |
+
msgstr "Esporta come CSV"
|
409 |
+
|
410 |
+
#: views/settings.php:301
|
411 |
+
msgid "Empty subscribers list"
|
412 |
+
msgstr ""
|
413 |
+
|
414 |
+
#: views/settings.php:308
|
415 |
+
msgid "Social Networks"
|
416 |
+
msgstr "Social Networks"
|
417 |
+
|
418 |
+
#: views/settings.php:313
|
419 |
+
msgid "Show social networks?"
|
420 |
+
msgstr "Mostra Social Networks?"
|
421 |
+
|
422 |
+
#: views/settings.php:322
|
423 |
+
msgid "Links target?"
|
424 |
+
msgstr "Link di destinazione?"
|
425 |
+
|
426 |
+
#: views/settings.php:325
|
427 |
+
msgid "New page"
|
428 |
+
msgstr "Nuova Pagina"
|
429 |
+
|
430 |
+
#: views/settings.php:326
|
431 |
+
msgid "Same page"
|
432 |
+
msgstr "Stessa Pagina"
|
433 |
+
|
434 |
+
#: views/settings.php:328
|
435 |
+
msgid "Choose how the links will open."
|
436 |
+
msgstr "Scegli come si apriranno i link."
|
437 |
+
|
438 |
+
#: views/settings.php:376
|
439 |
+
msgid "Contact"
|
440 |
+
msgstr "Contatti"
|
441 |
+
|
442 |
+
#: views/settings.php:381
|
443 |
+
msgid "Show contact?"
|
444 |
+
msgstr "Mostra Contatti?"
|
445 |
+
|
446 |
+
#: views/settings.php:390
|
447 |
+
msgid "Email address"
|
448 |
+
msgstr "Indirizzo Email"
|
449 |
+
|
450 |
+
#: views/settings.php:396
|
451 |
+
msgid "Effects"
|
452 |
+
msgstr "Effetti"
|
453 |
+
|
454 |
+
#: views/settings.php:399
|
455 |
+
msgid "Move top - Move bottom"
|
456 |
+
msgstr "Muovi Su - Giù"
|
457 |
+
|
458 |
+
#: views/settings.php:400
|
459 |
+
msgid "Zoom - Zoomed"
|
460 |
+
msgstr "Zoom - Zoomato"
|
461 |
+
|
462 |
+
#: views/settings.php:401
|
463 |
+
msgid "Fold - Unfold"
|
464 |
+
msgstr "Chiudere - Aprire"
|
465 |
+
|
466 |
+
#: views/settings.php:408
|
467 |
+
msgid "Google Analytics"
|
468 |
+
msgstr "Google Analytics"
|
469 |
+
|
470 |
+
#: views/settings.php:413
|
471 |
+
msgid "Use Google Analytics?"
|
472 |
+
msgstr "Usa Google Analytics?"
|
473 |
+
|
474 |
+
#: views/settings.php:422
|
475 |
+
msgid "Tracking code"
|
476 |
+
msgstr "Codice di tracciamento"
|
477 |
+
|
478 |
+
#: views/sidebar.php:3
|
479 |
+
msgid "Plugin Info"
|
480 |
+
msgstr "Info sul Plugin"
|
481 |
+
|
482 |
+
#: views/sidebar.php:13
|
483 |
+
msgid "Author"
|
484 |
+
msgstr "Autore"
|
485 |
+
|
486 |
+
#: views/sidebar.php:14
|
487 |
+
msgid "Website"
|
488 |
+
msgstr "Sito"
|
489 |
+
|
490 |
+
#: views/sidebar.php:15
|
491 |
+
msgid "Twitter"
|
492 |
+
msgstr "Twitter"
|
493 |
+
|
494 |
+
#: views/sidebar.php:16
|
495 |
+
msgid "GitHub"
|
496 |
+
msgstr "GitHub"
|
497 |
+
|
498 |
+
#: views/sidebar.php:27
|
499 |
+
msgid "Other products"
|
500 |
+
msgstr ""
|
501 |
+
|
502 |
+
#: views/sidebar.php:44
|
503 |
+
msgid "Resources"
|
504 |
+
msgstr "Risorse"
|
505 |
+
|
506 |
+
#~ msgid "You successfuly subscribed. Thanks!"
|
507 |
+
#~ msgstr "Ti sei iscritto con successo. Grazie!"
|
508 |
+
|
509 |
+
#~ msgid "Which user role is allowed to access the backend of this blog?"
|
510 |
+
#~ msgstr ""
|
511 |
+
#~ "Che ruolo utente è abilitato all'accesso nel backend di questo blog?"
|
512 |
+
|
513 |
+
#~ msgid "Which user role is allowed to access the frontend of this blog?"
|
514 |
+
#~ msgstr ""
|
515 |
+
#~ "Che ruolo utente è abilitato all'accesso nel frontend di questo blog?"
|
516 |
+
|
517 |
+
#~ msgid ""
|
518 |
+
#~ "If you want to redirect a user to a URL (which is not the WordPress "
|
519 |
+
#~ "dashboard) after login, then define a URL (incl. http://)"
|
520 |
+
#~ msgstr ""
|
521 |
+
#~ "Se vuoi reindirizzare un utente ad un URL (che non sia la dashboard "
|
522 |
+
#~ "WordPress dopo il login, allora definisci un URL includendo http://)"
|
523 |
+
|
524 |
+
#~ msgid "source <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
525 |
+
#~ msgstr "sorgente <a href=\"%\" target=\"_blank\">Foto Free</a>"
|
526 |
+
|
527 |
+
#~ msgid "WordPress Themes"
|
528 |
+
#~ msgstr "Temi WordPress"
|
Binary file
|
@@ -0,0 +1,527 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: WP Maintenance Mode 2.0.4\n"
|
4 |
+
"POT-Creation-Date: 2016-06-17 03:22+0300\n"
|
5 |
+
"PO-Revision-Date: 2016-06-17 03:22+0300\n"
|
6 |
+
"Last-Translator: Fredrik Hugås <fhugas@gmail.com>\n"
|
7 |
+
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
+
"Language: nb\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 1.8.8\n"
|
13 |
+
"X-Poedit-Basepath: ..\n"
|
14 |
+
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
17 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
|
18 |
+
"esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;"
|
19 |
+
"esc_html_x:1,2c\n"
|
20 |
+
"X-Poedit-SearchPath-0: .\n"
|
21 |
+
"X-Poedit-SearchPath-1: includes/classes\n"
|
22 |
+
"X-Poedit-SearchPath-2: views\n"
|
23 |
+
|
24 |
+
#: includes/classes/wp-maintenance-mode-admin.php:121
|
25 |
+
#: includes/classes/wp-maintenance-mode-admin.php:159
|
26 |
+
#: includes/classes/wp-maintenance-mode-admin.php:181
|
27 |
+
msgid "You do not have access to this resource."
|
28 |
+
msgstr ""
|
29 |
+
|
30 |
+
#: includes/classes/wp-maintenance-mode-admin.php:165 views/settings.php:295
|
31 |
+
#, php-format
|
32 |
+
msgid "You have %d subscriber(s)"
|
33 |
+
msgstr "Du har %d personer som ønsker oppdatering"
|
34 |
+
|
35 |
+
#: includes/classes/wp-maintenance-mode-admin.php:186
|
36 |
+
msgid "The tab slug must not be empty."
|
37 |
+
msgstr ""
|
38 |
+
|
39 |
+
#: includes/classes/wp-maintenance-mode-admin.php:191
|
40 |
+
msgid "The tab slug must exist."
|
41 |
+
msgstr ""
|
42 |
+
|
43 |
+
#: includes/classes/wp-maintenance-mode-admin.php:211
|
44 |
+
msgid "WP Maintenance Mode"
|
45 |
+
msgstr "WP Vedlikeholdsmodus"
|
46 |
+
|
47 |
+
#: includes/classes/wp-maintenance-mode-admin.php:425
|
48 |
+
msgid "Settings"
|
49 |
+
msgstr "Innstillinger"
|
50 |
+
|
51 |
+
#: includes/classes/wp-maintenance-mode-admin.php:444
|
52 |
+
#, php-format
|
53 |
+
msgid ""
|
54 |
+
"The Maintenance Mode is <strong>active</strong>. Please don't forget to <a "
|
55 |
+
"href=\"%s\">deactivate</a> as soon as you are done."
|
56 |
+
msgstr ""
|
57 |
+
"Vedlikeholdsmodus er <strong>aktivert</strong>. Husk å <a href=\"%s"
|
58 |
+
"\">deaktiver vedlikeholdsmodus</a> når du er ferdig."
|
59 |
+
|
60 |
+
#: includes/classes/wp-maintenance-mode-admin.php:481
|
61 |
+
msgid "Notice key cannot be empty."
|
62 |
+
msgstr ""
|
63 |
+
|
64 |
+
#: includes/classes/wp-maintenance-mode.php:103
|
65 |
+
#: includes/classes/wp-maintenance-mode.php:104
|
66 |
+
msgid "Maintenance mode"
|
67 |
+
msgstr "Vedlikehold pågår"
|
68 |
+
|
69 |
+
#: includes/classes/wp-maintenance-mode.php:106
|
70 |
+
msgid ""
|
71 |
+
"<p>Sorry for the inconvenience.<br />Our website is currently undergoing "
|
72 |
+
"scheduled maintenance.<br />Thank you for your understanding.</p>"
|
73 |
+
msgstr ""
|
74 |
+
"<p>Nettsiden gjennomgår for tiden et planlagt vedlikehold.<br />Vi beklager "
|
75 |
+
"nedetiden dette medfører.<br />Takk for din forståelse.</p>"
|
76 |
+
|
77 |
+
#: includes/classes/wp-maintenance-mode.php:124
|
78 |
+
msgid "Notify me when it's ready"
|
79 |
+
msgstr "Varsle meg når den er klar"
|
80 |
+
|
81 |
+
#: includes/classes/wp-maintenance-mode.php:259
|
82 |
+
#, php-format
|
83 |
+
msgid ""
|
84 |
+
"WP Maintenance Mode plugin was relaunched and you MUST revise <a href=\"%s"
|
85 |
+
"\">settings</a>."
|
86 |
+
msgstr ""
|
87 |
+
"Utvidelsen WP Maintanance Mode er oppdatert og du må <a href=\"%s\">se "
|
88 |
+
"igjennom innstillingene</a>"
|
89 |
+
|
90 |
+
#: includes/classes/wp-maintenance-mode.php:449
|
91 |
+
#: includes/classes/wp-maintenance-mode.php:463
|
92 |
+
msgid "Maintenance Mode"
|
93 |
+
msgstr "Vedlikehold pågår"
|
94 |
+
|
95 |
+
#: includes/classes/wp-maintenance-mode.php:687
|
96 |
+
#: includes/classes/wp-maintenance-mode.php:721 views/maintenance.php:85
|
97 |
+
msgid "Please enter a valid email address."
|
98 |
+
msgstr "Vennligst oppgi en gyldig epostadresse."
|
99 |
+
|
100 |
+
#: includes/classes/wp-maintenance-mode.php:699
|
101 |
+
msgid "You successfully subscribed. Thanks!"
|
102 |
+
msgstr ""
|
103 |
+
|
104 |
+
#: includes/classes/wp-maintenance-mode.php:717
|
105 |
+
msgid "All fields required."
|
106 |
+
msgstr "Alle felt er påkrevd."
|
107 |
+
|
108 |
+
#: includes/classes/wp-maintenance-mode.php:726
|
109 |
+
msgid "Message via contact"
|
110 |
+
msgstr "Melding via kontakt"
|
111 |
+
|
112 |
+
#: includes/classes/wp-maintenance-mode.php:738
|
113 |
+
msgid "Your email was sent to the website administrator. Thanks!"
|
114 |
+
msgstr "Din epost ble sendt til administratoren for nettstedet. Takk!"
|
115 |
+
|
116 |
+
#: views/contact.php:34
|
117 |
+
#, php-format
|
118 |
+
msgid "You have been contacted via %s."
|
119 |
+
msgstr ""
|
120 |
+
|
121 |
+
#: views/contact.php:50
|
122 |
+
msgid "Name:"
|
123 |
+
msgstr ""
|
124 |
+
|
125 |
+
#: views/contact.php:62
|
126 |
+
msgid "Email:"
|
127 |
+
msgstr ""
|
128 |
+
|
129 |
+
#: views/contact.php:74
|
130 |
+
msgid "Content:"
|
131 |
+
msgstr ""
|
132 |
+
|
133 |
+
#: views/loginform.php:8
|
134 |
+
msgid "Login"
|
135 |
+
msgstr "Logg inn"
|
136 |
+
|
137 |
+
#: views/maintenance.php:42
|
138 |
+
msgid "your e-mail..."
|
139 |
+
msgstr "Din epostadresse..."
|
140 |
+
|
141 |
+
#: views/maintenance.php:43 views/settings.php:270
|
142 |
+
msgid "Subscribe"
|
143 |
+
msgstr "Få varsling"
|
144 |
+
|
145 |
+
#: views/maintenance.php:84 views/sidebar.php:7
|
146 |
+
msgid "Name"
|
147 |
+
msgstr "Navn"
|
148 |
+
|
149 |
+
#: views/maintenance.php:84 views/maintenance.php:85 views/maintenance.php:87
|
150 |
+
msgid "This field is required."
|
151 |
+
msgstr ""
|
152 |
+
|
153 |
+
#: views/maintenance.php:85
|
154 |
+
msgid "E-mail"
|
155 |
+
msgstr "Epost"
|
156 |
+
|
157 |
+
#: views/maintenance.php:87
|
158 |
+
msgid "Your message"
|
159 |
+
msgstr "Din melding"
|
160 |
+
|
161 |
+
#: views/maintenance.php:88
|
162 |
+
msgid "Send"
|
163 |
+
msgstr "Send"
|
164 |
+
|
165 |
+
#: views/maintenance.php:93
|
166 |
+
msgid "Contact us"
|
167 |
+
msgstr "Kontakt oss"
|
168 |
+
|
169 |
+
#: views/maintenance.php:98
|
170 |
+
msgid "Dashboard"
|
171 |
+
msgstr "Kontrollpanel"
|
172 |
+
|
173 |
+
#: views/settings.php:6
|
174 |
+
msgid "Settings saved."
|
175 |
+
msgstr "Innstillingene ble lagret."
|
176 |
+
|
177 |
+
#: views/settings.php:13
|
178 |
+
msgid "General"
|
179 |
+
msgstr "Generelt"
|
180 |
+
|
181 |
+
#: views/settings.php:14
|
182 |
+
msgid "Design"
|
183 |
+
msgstr "Utseende"
|
184 |
+
|
185 |
+
#: views/settings.php:15
|
186 |
+
msgid "Modules"
|
187 |
+
msgstr "Moduler"
|
188 |
+
|
189 |
+
#: views/settings.php:24
|
190 |
+
msgid "Status"
|
191 |
+
msgstr "Status"
|
192 |
+
|
193 |
+
#: views/settings.php:26
|
194 |
+
msgid "Activated"
|
195 |
+
msgstr "Aktivert"
|
196 |
+
|
197 |
+
#: views/settings.php:27
|
198 |
+
msgid "Deactivated"
|
199 |
+
msgstr "Deaktivert"
|
200 |
+
|
201 |
+
#: views/settings.php:31
|
202 |
+
msgid "Bypass for Search Bots"
|
203 |
+
msgstr "Slipp igjennom søkemotorer"
|
204 |
+
|
205 |
+
#: views/settings.php:34 views/settings.php:104 views/settings.php:114
|
206 |
+
#: views/settings.php:242 views/settings.php:278 views/settings.php:316
|
207 |
+
#: views/settings.php:384 views/settings.php:416
|
208 |
+
msgid "Yes"
|
209 |
+
msgstr "Ja"
|
210 |
+
|
211 |
+
#: views/settings.php:35 views/settings.php:105 views/settings.php:115
|
212 |
+
#: views/settings.php:243 views/settings.php:279 views/settings.php:317
|
213 |
+
#: views/settings.php:385 views/settings.php:417
|
214 |
+
msgid "No"
|
215 |
+
msgstr "Nei"
|
216 |
+
|
217 |
+
#: views/settings.php:37
|
218 |
+
msgid "Allow Search Bots to bypass maintenance mode?"
|
219 |
+
msgstr "La søkemotorer slippe forbi vedlikeholdsmodus"
|
220 |
+
|
221 |
+
#: views/settings.php:41
|
222 |
+
msgid "Backend Role"
|
223 |
+
msgstr "Backend Rolle"
|
224 |
+
|
225 |
+
#: views/settings.php:43 views/settings.php:59
|
226 |
+
msgid "Select role(s)"
|
227 |
+
msgstr ""
|
228 |
+
|
229 |
+
#: views/settings.php:53
|
230 |
+
msgid ""
|
231 |
+
"Which user role is allowed to access the backend of this blog? "
|
232 |
+
"Administrators will always have access."
|
233 |
+
msgstr ""
|
234 |
+
|
235 |
+
#: views/settings.php:57
|
236 |
+
msgid "Frontend Role"
|
237 |
+
msgstr "Frontend Rolle"
|
238 |
+
|
239 |
+
#: views/settings.php:69
|
240 |
+
msgid ""
|
241 |
+
"Which user role is allowed to access the frontend of this blog? "
|
242 |
+
"Administrators will always have access."
|
243 |
+
msgstr ""
|
244 |
+
|
245 |
+
#: views/settings.php:73
|
246 |
+
msgid "Robots Meta Tag"
|
247 |
+
msgstr "Robots Meta Tag"
|
248 |
+
|
249 |
+
#: views/settings.php:79
|
250 |
+
msgid ""
|
251 |
+
"The robots meta tag lets you use a granular, page-specific approach to "
|
252 |
+
"control how an individual page should be indexed and served to users in "
|
253 |
+
"search results."
|
254 |
+
msgstr ""
|
255 |
+
"Meta Tagger for roboter lar deg bruke et detaljert, side-spesifikk metode "
|
256 |
+
"for å kontrollere hvordan den enkelte siden skal indekseres og vises til "
|
257 |
+
"brukere i søkeresultatene."
|
258 |
+
|
259 |
+
#: views/settings.php:83
|
260 |
+
msgid "Redirection"
|
261 |
+
msgstr "Omdirigering"
|
262 |
+
|
263 |
+
#: views/settings.php:86
|
264 |
+
msgid ""
|
265 |
+
"If you want to redirect a user (with no access to Dashboard/Backend) to a "
|
266 |
+
"URL (different from WordPress Dashboard URL) after login, then define a URL "
|
267 |
+
"(incl. http://)"
|
268 |
+
msgstr ""
|
269 |
+
|
270 |
+
#: views/settings.php:90
|
271 |
+
msgid "Exclude"
|
272 |
+
msgstr "Eksluder"
|
273 |
+
|
274 |
+
#: views/settings.php:97
|
275 |
+
msgid ""
|
276 |
+
"Exclude feed, pages, archives or IPs from maintenance mode. Add one slug / "
|
277 |
+
"IP per line!"
|
278 |
+
msgstr ""
|
279 |
+
"Eksluder feed, sider, arkiv eller IP-er fra vedlikeholdsmodus. Legg inn en "
|
280 |
+
"slug / IP per linje."
|
281 |
+
|
282 |
+
#: views/settings.php:101
|
283 |
+
msgid "Notice"
|
284 |
+
msgstr "Notis"
|
285 |
+
|
286 |
+
#: views/settings.php:107
|
287 |
+
msgid "Do you want to see notices when maintenance mode is activated?"
|
288 |
+
msgstr "Ønsker du å se en notis når vedlikeholdsmodus er aktivert?"
|
289 |
+
|
290 |
+
#: views/settings.php:111
|
291 |
+
msgid "Dashboard link"
|
292 |
+
msgstr "Link i kontrollpanelet"
|
293 |
+
|
294 |
+
#: views/settings.php:117
|
295 |
+
msgid ""
|
296 |
+
"Do you want to add a link to the dashboard on your maintenance mode page?"
|
297 |
+
msgstr ""
|
298 |
+
"Ønsker du å legge inn en link til kontrollpanelet på siden for "
|
299 |
+
"vedlikeholdsmodus?"
|
300 |
+
|
301 |
+
#: views/settings.php:125 views/settings.php:228 views/settings.php:432
|
302 |
+
msgid "Save settings"
|
303 |
+
msgstr "Lagre innstillinger"
|
304 |
+
|
305 |
+
#: views/settings.php:126 views/settings.php:229 views/settings.php:433
|
306 |
+
msgid "Reset settings"
|
307 |
+
msgstr "Tilbakestill innstillinger"
|
308 |
+
|
309 |
+
#: views/settings.php:131
|
310 |
+
msgid "Content"
|
311 |
+
msgstr "Innhold"
|
312 |
+
|
313 |
+
#: views/settings.php:136
|
314 |
+
msgid "Title (HTML tag)"
|
315 |
+
msgstr "Tittel (HTML title tag)"
|
316 |
+
|
317 |
+
#: views/settings.php:142
|
318 |
+
msgid "Heading"
|
319 |
+
msgstr "Overskrift"
|
320 |
+
|
321 |
+
#: views/settings.php:149 views/settings.php:284
|
322 |
+
msgid "Text"
|
323 |
+
msgstr "Tekst"
|
324 |
+
|
325 |
+
#: views/settings.php:169
|
326 |
+
msgid "Background"
|
327 |
+
msgstr "Bakgrunn"
|
328 |
+
|
329 |
+
#: views/settings.php:174
|
330 |
+
msgid "Choose type"
|
331 |
+
msgstr "Velg type"
|
332 |
+
|
333 |
+
#: views/settings.php:177
|
334 |
+
msgid "Custom color"
|
335 |
+
msgstr "Egendefinert farge"
|
336 |
+
|
337 |
+
#: views/settings.php:178
|
338 |
+
msgid "Uploaded background"
|
339 |
+
msgstr "Opplastet bilde"
|
340 |
+
|
341 |
+
#: views/settings.php:179
|
342 |
+
msgid "Predefined background"
|
343 |
+
msgstr "Forhåndsdefinert bilde"
|
344 |
+
|
345 |
+
#: views/settings.php:184
|
346 |
+
msgid "Choose color"
|
347 |
+
msgstr "Velg farge"
|
348 |
+
|
349 |
+
#: views/settings.php:190
|
350 |
+
msgid "Upload background"
|
351 |
+
msgstr "Last opp bakgrunn"
|
352 |
+
|
353 |
+
#: views/settings.php:194
|
354 |
+
msgid "Backgrounds should have 1920x1280 px size."
|
355 |
+
msgstr "Bakgrunnen må være minst 1929x1280px i størrelse."
|
356 |
+
|
357 |
+
#: views/settings.php:199
|
358 |
+
msgid "Choose background"
|
359 |
+
msgstr "Velg bakgrunn"
|
360 |
+
|
361 |
+
#: views/settings.php:201
|
362 |
+
#, php-format
|
363 |
+
msgid "source <a href=\"%s\" target=\"_blank\">Free Photos</a>"
|
364 |
+
msgstr ""
|
365 |
+
|
366 |
+
#: views/settings.php:234
|
367 |
+
msgid "Countdown"
|
368 |
+
msgstr "Nedtelling"
|
369 |
+
|
370 |
+
#: views/settings.php:239
|
371 |
+
msgid "Show countdown?"
|
372 |
+
msgstr "Vis nedtelling?"
|
373 |
+
|
374 |
+
#: views/settings.php:248
|
375 |
+
msgid "Start date"
|
376 |
+
msgstr "Dato for start"
|
377 |
+
|
378 |
+
#: views/settings.php:254
|
379 |
+
msgid "Countdown (remaining time)"
|
380 |
+
msgstr "Nedtelling (gjenstående tid)"
|
381 |
+
|
382 |
+
#: views/settings.php:256
|
383 |
+
msgid "Days"
|
384 |
+
msgstr "Dager"
|
385 |
+
|
386 |
+
#: views/settings.php:257
|
387 |
+
msgid "Hours"
|
388 |
+
msgstr "Timer"
|
389 |
+
|
390 |
+
#: views/settings.php:258
|
391 |
+
msgid "Minutes"
|
392 |
+
msgstr "Minutter"
|
393 |
+
|
394 |
+
#: views/settings.php:262
|
395 |
+
msgid "Color"
|
396 |
+
msgstr "Farge"
|
397 |
+
|
398 |
+
#: views/settings.php:275
|
399 |
+
msgid "Show subscribe?"
|
400 |
+
msgstr "Vis abboner"
|
401 |
+
|
402 |
+
#: views/settings.php:291
|
403 |
+
msgid "Stats"
|
404 |
+
msgstr "Ønsker oppdatering"
|
405 |
+
|
406 |
+
#: views/settings.php:300
|
407 |
+
msgid "Export as CSV"
|
408 |
+
msgstr "Eksporter som CSV"
|
409 |
+
|
410 |
+
#: views/settings.php:301
|
411 |
+
msgid "Empty subscribers list"
|
412 |
+
msgstr ""
|
413 |
+
|
414 |
+
#: views/settings.php:308
|
415 |
+
msgid "Social Networks"
|
416 |
+
msgstr "Sosiale nettverk"
|
417 |
+
|
418 |
+
#: views/settings.php:313
|
419 |
+
msgid "Show social networks?"
|
420 |
+
msgstr "Vis sosiale nettverk?"
|
421 |
+
|
422 |
+
#: views/settings.php:322
|
423 |
+
msgid "Links target?"
|
424 |
+
msgstr "Lenkemål"
|
425 |
+
|
426 |
+
#: views/settings.php:325
|
427 |
+
msgid "New page"
|
428 |
+
msgstr "Ny side"
|
429 |
+
|
430 |
+
#: views/settings.php:326
|
431 |
+
msgid "Same page"
|
432 |
+
msgstr "Samme side"
|
433 |
+
|
434 |
+
#: views/settings.php:328
|
435 |
+
msgid "Choose how the links will open."
|
436 |
+
msgstr "Velg hvordan side lenken skal åpnes i."
|
437 |
+
|
438 |
+
#: views/settings.php:376
|
439 |
+
msgid "Contact"
|
440 |
+
msgstr "Kontakt"
|
441 |
+
|
442 |
+
#: views/settings.php:381
|
443 |
+
msgid "Show contact?"
|
444 |
+
msgstr "Vis kontakt?"
|
445 |
+
|
446 |
+
#: views/settings.php:390
|
447 |
+
msgid "Email address"
|
448 |
+
msgstr "Epost adresse"
|
449 |
+
|
450 |
+
#: views/settings.php:396
|
451 |
+
msgid "Effects"
|
452 |
+
msgstr "Effekt"
|
453 |
+
|
454 |
+
#: views/settings.php:399
|
455 |
+
msgid "Move top - Move bottom"
|
456 |
+
msgstr "Flytt til toppen - Flytt til bunnen"
|
457 |
+
|
458 |
+
#: views/settings.php:400
|
459 |
+
msgid "Zoom - Zoomed"
|
460 |
+
msgstr "Zoom - Zoomet"
|
461 |
+
|
462 |
+
#: views/settings.php:401
|
463 |
+
msgid "Fold - Unfold"
|
464 |
+
msgstr "Brett - Brett ut"
|
465 |
+
|
466 |
+
#: views/settings.php:408
|
467 |
+
msgid "Google Analytics"
|
468 |
+
msgstr "Google Analytics"
|
469 |
+
|
470 |
+
#: views/settings.php:413
|
471 |
+
msgid "Use Google Analytics?"
|
472 |
+
msgstr "Bruk Google Analytics?"
|
473 |
+
|
474 |
+
#: views/settings.php:422
|
475 |
+
msgid "Tracking code"
|
476 |
+
msgstr "Sporingskode"
|
477 |
+
|
478 |
+
#: views/sidebar.php:3
|
479 |
+
msgid "Plugin Info"
|
480 |
+
msgstr "Informasjon om utvidelsen"
|
481 |
+
|
482 |
+
#: views/sidebar.php:13
|
483 |
+
msgid "Author"
|
484 |
+
msgstr "Forfatter"
|
485 |
+
|
486 |
+
#: views/sidebar.php:14
|
487 |
+
msgid "Website"
|
488 |
+
msgstr "Nettside"
|
489 |
+
|
490 |
+
#: views/sidebar.php:15
|
491 |
+
msgid "Twitter"
|
492 |
+
msgstr "Twitter"
|
493 |
+
|
494 |
+
#: views/sidebar.php:16
|
495 |
+
msgid "GitHub"
|
496 |
+
msgstr "GitHub"
|
497 |
+
|
498 |
+
#: views/sidebar.php:27
|
499 |
+
msgid "Other products"
|
500 |
+
msgstr ""
|
501 |
+
|
502 |
+
#: views/sidebar.php:44
|
503 |
+
msgid "Resources"
|
504 |
+
msgstr "Resurser"
|
505 |
+
|
506 |
+
#~ msgid "You successfuly subscribed. Thanks!"
|
507 |
+
#~ msgstr "Du vil nå få oppdateringer om siden. Takk!"
|
508 |
+
|
509 |
+
#~ msgid "Which user role is allowed to access the backend of this blog?"
|
510 |
+
#~ msgstr "Hvilken rolle har tilgang til backend på denne nettsiden?"
|
511 |
+
|
512 |
+
#~ msgid "Which user role is allowed to access the frontend of this blog?"
|
513 |
+
#~ msgstr "Hvilken rolle har tilgang til frontend på denne nettsiden?"
|
514 |
+
|
515 |
+
#~ msgid ""
|
516 |
+
#~ "If you want to redirect a user to a URL (which is not the WordPress "
|
517 |
+
#~ "dashboard) after login, then define a URL (incl. http://)"
|
518 |
+
#~ msgstr ""
|
519 |
+
#~ "Hvis du ønsker å omdirigere brukeren til en URL (som ikke er WordPress "
|
520 |
+
#~ "kontrollpanelet) etter innlogging, så må denne defineres her (inkluder "
|
521 |
+
#~ "http://)"
|
522 |
+
|
523 |
+
#~ msgid "source <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
524 |
+
#~ msgstr "kilde <a href=\"%\" target=\"_blank\">Gratis bilder</a>"
|
525 |
+
|
526 |
+
#~ msgid "WordPress Themes"
|
527 |
+
#~ msgstr "WordPress Temaer"
|
Binary file
|
@@ -1,460 +1,532 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: WP Maintenance Mode 2.0.
|
4 |
-
"POT-Creation-Date:
|
5 |
-
"PO-Revision-Date:
|
6 |
-
"Last-Translator: Dennis Hunink <dennishunink@me.com>\n"
|
7 |
-
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
-
"Language: nl\n"
|
9 |
-
"MIME-Version: 1.0\n"
|
10 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
-
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"X-Generator: Poedit 1.
|
13 |
-
"X-Poedit-Basepath:
|
14 |
-
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
-
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
-
"X-Poedit-KeywordsList: __;_e
|
17 |
-
"
|
18 |
-
"
|
19 |
-
"X-Poedit-SearchPath-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
#: includes/classes/wp-maintenance-mode-admin.php:
|
26 |
-
msgid "
|
27 |
-
msgstr "
|
28 |
-
|
29 |
-
#: includes/classes/wp-maintenance-mode-admin.php:
|
30 |
-
#, php-format
|
31 |
-
msgid ""
|
32 |
-
"
|
33 |
-
|
34 |
-
|
35 |
-
"
|
36 |
-
"
|
37 |
-
|
38 |
-
#: includes/classes/wp-maintenance-mode.php:
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
msgid "
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
#: includes/classes/wp-maintenance-mode.php:
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
msgstr "
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
#:
|
91 |
-
msgid "
|
92 |
-
msgstr ""
|
93 |
-
|
94 |
-
#:
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
#: views/
|
161 |
-
msgid "
|
162 |
-
msgstr "
|
163 |
-
|
164 |
-
#: views/
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
"
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
"
|
222 |
-
"
|
223 |
-
|
224 |
-
|
225 |
-
"
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
"
|
242 |
-
msgstr ""
|
243 |
-
|
244 |
-
#: views/settings.php:
|
245 |
-
msgid "
|
246 |
-
msgstr "
|
247 |
-
|
248 |
-
#: views/settings.php:
|
249 |
-
msgid "
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
msgstr "
|
267 |
-
|
268 |
-
#: views/settings.php:
|
269 |
-
msgid "
|
270 |
-
msgstr "
|
271 |
-
|
272 |
-
#: views/settings.php:
|
273 |
-
msgid "
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
#: views/settings.php:
|
281 |
-
msgid "
|
282 |
-
msgstr "
|
283 |
-
|
284 |
-
#: views/settings.php:
|
285 |
-
msgid "
|
286 |
-
msgstr "
|
287 |
-
|
288 |
-
#: views/settings.php:
|
289 |
-
msgid "
|
290 |
-
msgstr "
|
291 |
-
|
292 |
-
#: views/settings.php:
|
293 |
-
msgid "
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
msgid "
|
351 |
-
msgstr "
|
352 |
-
|
353 |
-
#: views/settings.php:
|
354 |
-
msgid "
|
355 |
-
msgstr "
|
356 |
-
|
357 |
-
#: views/settings.php:
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: WP Maintenance Mode 2.0.4\n"
|
4 |
+
"POT-Creation-Date: 2016-06-17 03:24+0300\n"
|
5 |
+
"PO-Revision-Date: 2016-06-17 03:24+0300\n"
|
6 |
+
"Last-Translator: Dennis Hunink <dennishunink@me.com>\n"
|
7 |
+
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
+
"Language: nl\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 1.8.8\n"
|
13 |
+
"X-Poedit-Basepath: ..\n"
|
14 |
+
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
17 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
|
18 |
+
"esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
|
19 |
+
"X-Poedit-SearchPath-0: .\n"
|
20 |
+
"X-Poedit-SearchPath-1: includes/classes\n"
|
21 |
+
"X-Poedit-SearchPath-2: views\n"
|
22 |
+
|
23 |
+
#: includes/classes/wp-maintenance-mode-admin.php:121
|
24 |
+
#: includes/classes/wp-maintenance-mode-admin.php:159
|
25 |
+
#: includes/classes/wp-maintenance-mode-admin.php:181
|
26 |
+
msgid "You do not have access to this resource."
|
27 |
+
msgstr ""
|
28 |
+
|
29 |
+
#: includes/classes/wp-maintenance-mode-admin.php:165 views/settings.php:295
|
30 |
+
#, php-format
|
31 |
+
msgid "You have %d subscriber(s)"
|
32 |
+
msgstr "Je hebt %d abonnee(s)"
|
33 |
+
|
34 |
+
#: includes/classes/wp-maintenance-mode-admin.php:186
|
35 |
+
msgid "The tab slug must not be empty."
|
36 |
+
msgstr ""
|
37 |
+
|
38 |
+
#: includes/classes/wp-maintenance-mode-admin.php:191
|
39 |
+
msgid "The tab slug must exist."
|
40 |
+
msgstr ""
|
41 |
+
|
42 |
+
#: includes/classes/wp-maintenance-mode-admin.php:211
|
43 |
+
msgid "WP Maintenance Mode"
|
44 |
+
msgstr "WP Maintenance Mode"
|
45 |
+
|
46 |
+
#: includes/classes/wp-maintenance-mode-admin.php:425
|
47 |
+
msgid "Settings"
|
48 |
+
msgstr "Instellingen"
|
49 |
+
|
50 |
+
#: includes/classes/wp-maintenance-mode-admin.php:444
|
51 |
+
#, php-format
|
52 |
+
msgid ""
|
53 |
+
"The Maintenance Mode is <strong>active</strong>. Please don't forget to <a "
|
54 |
+
"href=\"%s\">deactivate</a> as soon as you are done."
|
55 |
+
msgstr ""
|
56 |
+
"De Onderhoudsmodus is <strong>actief</strong>. Vergeet niet om hem <a href="
|
57 |
+
"\"%s\">uit te schakelen</a> wanneer je klaar bent."
|
58 |
+
|
59 |
+
#: includes/classes/wp-maintenance-mode-admin.php:481
|
60 |
+
msgid "Notice key cannot be empty."
|
61 |
+
msgstr ""
|
62 |
+
|
63 |
+
#: includes/classes/wp-maintenance-mode.php:103
|
64 |
+
#: includes/classes/wp-maintenance-mode.php:104
|
65 |
+
msgid "Maintenance mode"
|
66 |
+
msgstr "Onderhoudsmodus"
|
67 |
+
|
68 |
+
#: includes/classes/wp-maintenance-mode.php:106
|
69 |
+
msgid ""
|
70 |
+
"<p>Sorry for the inconvenience.<br />Our website is currently undergoing "
|
71 |
+
"scheduled maintenance.<br />Thank you for your understanding.</p>"
|
72 |
+
msgstr ""
|
73 |
+
"<p>Excuus voor het ongemak.<br />Onze website ondergaat op dit moment "
|
74 |
+
"gepland onderhoud.<br/>Bedankt voor uw begrip.</p>"
|
75 |
+
|
76 |
+
#: includes/classes/wp-maintenance-mode.php:124
|
77 |
+
msgid "Notify me when it's ready"
|
78 |
+
msgstr "Informeer mij wanneer het is afgerond"
|
79 |
+
|
80 |
+
#: includes/classes/wp-maintenance-mode.php:259
|
81 |
+
#, php-format
|
82 |
+
msgid ""
|
83 |
+
"WP Maintenance Mode plugin was relaunched and you MUST revise <a href=\"%s"
|
84 |
+
"\">settings</a>."
|
85 |
+
msgstr ""
|
86 |
+
"De WP Maintenance Mode Plugin is opnieuw opgestart en je MOET de <a href=\"%s"
|
87 |
+
"\">instellingen</a> opnieuw bekijken."
|
88 |
+
|
89 |
+
#: includes/classes/wp-maintenance-mode.php:449
|
90 |
+
#: includes/classes/wp-maintenance-mode.php:463
|
91 |
+
msgid "Maintenance Mode"
|
92 |
+
msgstr "Onderhousmodus"
|
93 |
+
|
94 |
+
#: includes/classes/wp-maintenance-mode.php:687
|
95 |
+
#: includes/classes/wp-maintenance-mode.php:721 views/maintenance.php:85
|
96 |
+
msgid "Please enter a valid email address."
|
97 |
+
msgstr "Voer een geldig e-mailadres in."
|
98 |
+
|
99 |
+
#: includes/classes/wp-maintenance-mode.php:699
|
100 |
+
msgid "You successfully subscribed. Thanks!"
|
101 |
+
msgstr ""
|
102 |
+
|
103 |
+
#: includes/classes/wp-maintenance-mode.php:717
|
104 |
+
msgid "All fields required."
|
105 |
+
msgstr "Alle velden zijn verplicht."
|
106 |
+
|
107 |
+
#: includes/classes/wp-maintenance-mode.php:726
|
108 |
+
msgid "Message via contact"
|
109 |
+
msgstr "Bericht via contact"
|
110 |
+
|
111 |
+
#: includes/classes/wp-maintenance-mode.php:738
|
112 |
+
msgid "Your email was sent to the website administrator. Thanks!"
|
113 |
+
msgstr "Je bericht is verstuurd naar de beheerder. Dankjewel!"
|
114 |
+
|
115 |
+
#: views/contact.php:34
|
116 |
+
#, php-format
|
117 |
+
msgid "You have been contacted via %s."
|
118 |
+
msgstr ""
|
119 |
+
|
120 |
+
#: views/contact.php:50
|
121 |
+
msgid "Name:"
|
122 |
+
msgstr ""
|
123 |
+
|
124 |
+
#: views/contact.php:62
|
125 |
+
msgid "Email:"
|
126 |
+
msgstr ""
|
127 |
+
|
128 |
+
#: views/contact.php:74
|
129 |
+
msgid "Content:"
|
130 |
+
msgstr ""
|
131 |
+
|
132 |
+
#: views/loginform.php:8
|
133 |
+
msgid "Login"
|
134 |
+
msgstr ""
|
135 |
+
|
136 |
+
#: views/maintenance.php:42
|
137 |
+
msgid "your e-mail..."
|
138 |
+
msgstr "e-mailadres..."
|
139 |
+
|
140 |
+
#: views/maintenance.php:43 views/settings.php:270
|
141 |
+
msgid "Subscribe"
|
142 |
+
msgstr "Aanmelden"
|
143 |
+
|
144 |
+
#: views/maintenance.php:84 views/sidebar.php:7
|
145 |
+
msgid "Name"
|
146 |
+
msgstr "Naam"
|
147 |
+
|
148 |
+
#: views/maintenance.php:84 views/maintenance.php:85 views/maintenance.php:87
|
149 |
+
msgid "This field is required."
|
150 |
+
msgstr ""
|
151 |
+
|
152 |
+
#: views/maintenance.php:85
|
153 |
+
msgid "E-mail"
|
154 |
+
msgstr "E-mailadres"
|
155 |
+
|
156 |
+
#: views/maintenance.php:87
|
157 |
+
msgid "Your message"
|
158 |
+
msgstr "Je bericht"
|
159 |
+
|
160 |
+
#: views/maintenance.php:88
|
161 |
+
msgid "Send"
|
162 |
+
msgstr "Verstuur"
|
163 |
+
|
164 |
+
#: views/maintenance.php:93
|
165 |
+
msgid "Contact us"
|
166 |
+
msgstr "Neem contact met ons op"
|
167 |
+
|
168 |
+
#: views/maintenance.php:98
|
169 |
+
msgid "Dashboard"
|
170 |
+
msgstr ""
|
171 |
+
|
172 |
+
#: views/settings.php:6
|
173 |
+
msgid "Settings saved."
|
174 |
+
msgstr "Instellingen opgeslagen"
|
175 |
+
|
176 |
+
#: views/settings.php:13
|
177 |
+
msgid "General"
|
178 |
+
msgstr "Algemeen"
|
179 |
+
|
180 |
+
#: views/settings.php:14
|
181 |
+
msgid "Design"
|
182 |
+
msgstr "Ontwerp"
|
183 |
+
|
184 |
+
#: views/settings.php:15
|
185 |
+
msgid "Modules"
|
186 |
+
msgstr "Modules"
|
187 |
+
|
188 |
+
#: views/settings.php:24
|
189 |
+
msgid "Status"
|
190 |
+
msgstr "Status"
|
191 |
+
|
192 |
+
#: views/settings.php:26
|
193 |
+
msgid "Activated"
|
194 |
+
msgstr "Geactiveerd"
|
195 |
+
|
196 |
+
#: views/settings.php:27
|
197 |
+
msgid "Deactivated"
|
198 |
+
msgstr "Gedeactiveerd"
|
199 |
+
|
200 |
+
#: views/settings.php:31
|
201 |
+
msgid "Bypass for Search Bots"
|
202 |
+
msgstr "Omleiding voor zoekmachine robots"
|
203 |
+
|
204 |
+
#: views/settings.php:34 views/settings.php:104 views/settings.php:114
|
205 |
+
#: views/settings.php:242 views/settings.php:278 views/settings.php:316
|
206 |
+
#: views/settings.php:384 views/settings.php:416
|
207 |
+
msgid "Yes"
|
208 |
+
msgstr "Ja"
|
209 |
+
|
210 |
+
#: views/settings.php:35 views/settings.php:105 views/settings.php:115
|
211 |
+
#: views/settings.php:243 views/settings.php:279 views/settings.php:317
|
212 |
+
#: views/settings.php:385 views/settings.php:417
|
213 |
+
msgid "No"
|
214 |
+
msgstr "Nee"
|
215 |
+
|
216 |
+
#: views/settings.php:37
|
217 |
+
msgid "Allow Search Bots to bypass maintenance mode?"
|
218 |
+
msgstr "Mogen zoekmachine robots de onderhoudsmodus omzeilen?"
|
219 |
+
|
220 |
+
#: views/settings.php:41
|
221 |
+
msgid "Backend Role"
|
222 |
+
msgstr "Backend rol"
|
223 |
+
|
224 |
+
#: views/settings.php:43 views/settings.php:59
|
225 |
+
msgid "Select role(s)"
|
226 |
+
msgstr ""
|
227 |
+
|
228 |
+
#: views/settings.php:53
|
229 |
+
msgid ""
|
230 |
+
"Which user role is allowed to access the backend of this blog? "
|
231 |
+
"Administrators will always have access."
|
232 |
+
msgstr ""
|
233 |
+
|
234 |
+
#: views/settings.php:57
|
235 |
+
msgid "Frontend Role"
|
236 |
+
msgstr "Frontend rol"
|
237 |
+
|
238 |
+
#: views/settings.php:69
|
239 |
+
msgid ""
|
240 |
+
"Which user role is allowed to access the frontend of this blog? "
|
241 |
+
"Administrators will always have access."
|
242 |
+
msgstr ""
|
243 |
+
|
244 |
+
#: views/settings.php:73
|
245 |
+
msgid "Robots Meta Tag"
|
246 |
+
msgstr "Robots Meta Tag"
|
247 |
+
|
248 |
+
#: views/settings.php:79
|
249 |
+
msgid ""
|
250 |
+
"The robots meta tag lets you use a granular, page-specific approach to "
|
251 |
+
"control how an individual page should be indexed and served to users in "
|
252 |
+
"search results."
|
253 |
+
msgstr ""
|
254 |
+
"De Robots Meta Tag maakt het mogelijk om per pagina te bepalen hoe deze "
|
255 |
+
"pagina's geïndexeerd en getoond moeten worden in zoekresultaten."
|
256 |
+
|
257 |
+
#: views/settings.php:83
|
258 |
+
msgid "Redirection"
|
259 |
+
msgstr "Doorverwijzing"
|
260 |
+
|
261 |
+
#: views/settings.php:86
|
262 |
+
msgid ""
|
263 |
+
"If you want to redirect a user (with no access to Dashboard/Backend) to a "
|
264 |
+
"URL (different from WordPress Dashboard URL) after login, then define a URL "
|
265 |
+
"(incl. http://)"
|
266 |
+
msgstr ""
|
267 |
+
|
268 |
+
#: views/settings.php:90
|
269 |
+
msgid "Exclude"
|
270 |
+
msgstr "Uitsluiten"
|
271 |
+
|
272 |
+
#: views/settings.php:97
|
273 |
+
msgid ""
|
274 |
+
"Exclude feed, pages, archives or IPs from maintenance mode. Add one slug / "
|
275 |
+
"IP per line!"
|
276 |
+
msgstr ""
|
277 |
+
"Sluit Feeds, pagina's, archieven of IP-adressen uit van de Onderhoudsmodus. "
|
278 |
+
"Voer één slug of IP in per regel!"
|
279 |
+
|
280 |
+
#: views/settings.php:101
|
281 |
+
msgid "Notice"
|
282 |
+
msgstr "Kennisgeving"
|
283 |
+
|
284 |
+
#: views/settings.php:107
|
285 |
+
msgid "Do you want to see notices when maintenance mode is activated?"
|
286 |
+
msgstr "Wil je een bericht zien wanneer de onderhoudsmodus actief is?"
|
287 |
+
|
288 |
+
#: views/settings.php:111
|
289 |
+
msgid "Dashboard link"
|
290 |
+
msgstr ""
|
291 |
+
|
292 |
+
#: views/settings.php:117
|
293 |
+
msgid ""
|
294 |
+
"Do you want to add a link to the dashboard on your maintenance mode page?"
|
295 |
+
msgstr ""
|
296 |
+
|
297 |
+
#: views/settings.php:125 views/settings.php:228 views/settings.php:432
|
298 |
+
msgid "Save settings"
|
299 |
+
msgstr "Instellingen opslaan"
|
300 |
+
|
301 |
+
#: views/settings.php:126 views/settings.php:229 views/settings.php:433
|
302 |
+
msgid "Reset settings"
|
303 |
+
msgstr "Instellingen herstellen"
|
304 |
+
|
305 |
+
#: views/settings.php:131
|
306 |
+
msgid "Content"
|
307 |
+
msgstr "Inhoud"
|
308 |
+
|
309 |
+
#: views/settings.php:136
|
310 |
+
msgid "Title (HTML tag)"
|
311 |
+
msgstr "Titel (HTML tag)"
|
312 |
+
|
313 |
+
#: views/settings.php:142
|
314 |
+
msgid "Heading"
|
315 |
+
msgstr "Titel"
|
316 |
+
|
317 |
+
#: views/settings.php:149 views/settings.php:284
|
318 |
+
msgid "Text"
|
319 |
+
msgstr "Tekst"
|
320 |
+
|
321 |
+
#: views/settings.php:169
|
322 |
+
msgid "Background"
|
323 |
+
msgstr "Achtergrond"
|
324 |
+
|
325 |
+
#: views/settings.php:174
|
326 |
+
msgid "Choose type"
|
327 |
+
msgstr "Kies type"
|
328 |
+
|
329 |
+
#: views/settings.php:177
|
330 |
+
msgid "Custom color"
|
331 |
+
msgstr "Aangepaste kleur"
|
332 |
+
|
333 |
+
#: views/settings.php:178
|
334 |
+
msgid "Uploaded background"
|
335 |
+
msgstr "Upload achtergrond"
|
336 |
+
|
337 |
+
#: views/settings.php:179
|
338 |
+
msgid "Predefined background"
|
339 |
+
msgstr "Vooraf gedefineerde achtergrond"
|
340 |
+
|
341 |
+
#: views/settings.php:184
|
342 |
+
msgid "Choose color"
|
343 |
+
msgstr "Kies kleur"
|
344 |
+
|
345 |
+
#: views/settings.php:190
|
346 |
+
msgid "Upload background"
|
347 |
+
msgstr "Upload achtergrond"
|
348 |
+
|
349 |
+
#: views/settings.php:194
|
350 |
+
msgid "Backgrounds should have 1920x1280 px size."
|
351 |
+
msgstr "Achtergronden moeten een afmeting van 1920x1280 px hebben."
|
352 |
+
|
353 |
+
#: views/settings.php:199
|
354 |
+
msgid "Choose background"
|
355 |
+
msgstr "Kies achtergrond"
|
356 |
+
|
357 |
+
#: views/settings.php:201
|
358 |
+
#, php-format
|
359 |
+
msgid "source <a href=\"%s\" target=\"_blank\">Free Photos</a>"
|
360 |
+
msgstr ""
|
361 |
+
|
362 |
+
#: views/settings.php:234
|
363 |
+
msgid "Countdown"
|
364 |
+
msgstr "Countdown"
|
365 |
+
|
366 |
+
#: views/settings.php:239
|
367 |
+
msgid "Show countdown?"
|
368 |
+
msgstr "Countdown tonen?"
|
369 |
+
|
370 |
+
#: views/settings.php:248
|
371 |
+
msgid "Start date"
|
372 |
+
msgstr "Start datum"
|
373 |
+
|
374 |
+
#: views/settings.php:254
|
375 |
+
msgid "Countdown (remaining time)"
|
376 |
+
msgstr "Countdown (resterende tijd)"
|
377 |
+
|
378 |
+
#: views/settings.php:256
|
379 |
+
msgid "Days"
|
380 |
+
msgstr "Dagen"
|
381 |
+
|
382 |
+
#: views/settings.php:257
|
383 |
+
msgid "Hours"
|
384 |
+
msgstr "Uren"
|
385 |
+
|
386 |
+
#: views/settings.php:258
|
387 |
+
msgid "Minutes"
|
388 |
+
msgstr "Minuten"
|
389 |
+
|
390 |
+
#: views/settings.php:262
|
391 |
+
msgid "Color"
|
392 |
+
msgstr "Kleur"
|
393 |
+
|
394 |
+
#: views/settings.php:275
|
395 |
+
msgid "Show subscribe?"
|
396 |
+
msgstr "Toon aanmelden e-mail?"
|
397 |
+
|
398 |
+
#: views/settings.php:291
|
399 |
+
msgid "Stats"
|
400 |
+
msgstr "Statistieken"
|
401 |
+
|
402 |
+
#: views/settings.php:300
|
403 |
+
msgid "Export as CSV"
|
404 |
+
msgstr "Exporteren als CSV"
|
405 |
+
|
406 |
+
#: views/settings.php:301
|
407 |
+
msgid "Empty subscribers list"
|
408 |
+
msgstr ""
|
409 |
+
|
410 |
+
#: views/settings.php:308
|
411 |
+
msgid "Social Networks"
|
412 |
+
msgstr "Sociale netwerken"
|
413 |
+
|
414 |
+
#: views/settings.php:313
|
415 |
+
msgid "Show social networks?"
|
416 |
+
msgstr "Toon sociale netwerken?"
|
417 |
+
|
418 |
+
#: views/settings.php:322
|
419 |
+
msgid "Links target?"
|
420 |
+
msgstr ""
|
421 |
+
|
422 |
+
#: views/settings.php:325
|
423 |
+
msgid "New page"
|
424 |
+
msgstr ""
|
425 |
+
|
426 |
+
#: views/settings.php:326
|
427 |
+
msgid "Same page"
|
428 |
+
msgstr ""
|
429 |
+
|
430 |
+
#: views/settings.php:328
|
431 |
+
msgid "Choose how the links will open."
|
432 |
+
msgstr ""
|
433 |
+
|
434 |
+
#: views/settings.php:376
|
435 |
+
msgid "Contact"
|
436 |
+
msgstr "Contact"
|
437 |
+
|
438 |
+
#: views/settings.php:381
|
439 |
+
msgid "Show contact?"
|
440 |
+
msgstr "Toon contact?"
|
441 |
+
|
442 |
+
#: views/settings.php:390
|
443 |
+
msgid "Email address"
|
444 |
+
msgstr "E-mailadres"
|
445 |
+
|
446 |
+
#: views/settings.php:396
|
447 |
+
msgid "Effects"
|
448 |
+
msgstr "Effecten"
|
449 |
+
|
450 |
+
#: views/settings.php:399
|
451 |
+
msgid "Move top - Move bottom"
|
452 |
+
msgstr "Naar top - Naar beneden"
|
453 |
+
|
454 |
+
#: views/settings.php:400
|
455 |
+
msgid "Zoom - Zoomed"
|
456 |
+
msgstr "Zoom - Ingezoomd"
|
457 |
+
|
458 |
+
#: views/settings.php:401
|
459 |
+
msgid "Fold - Unfold"
|
460 |
+
msgstr "Vouwen - Opvouwen"
|
461 |
+
|
462 |
+
#: views/settings.php:408
|
463 |
+
msgid "Google Analytics"
|
464 |
+
msgstr ""
|
465 |
+
|
466 |
+
#: views/settings.php:413
|
467 |
+
msgid "Use Google Analytics?"
|
468 |
+
msgstr ""
|
469 |
+
|
470 |
+
#: views/settings.php:422
|
471 |
+
msgid "Tracking code"
|
472 |
+
msgstr ""
|
473 |
+
|
474 |
+
#: views/sidebar.php:3
|
475 |
+
msgid "Plugin Info"
|
476 |
+
msgstr "Plugin Info"
|
477 |
+
|
478 |
+
#: views/sidebar.php:13
|
479 |
+
msgid "Author"
|
480 |
+
msgstr "Auteur"
|
481 |
+
|
482 |
+
#: views/sidebar.php:14
|
483 |
+
msgid "Website"
|
484 |
+
msgstr "Website"
|
485 |
+
|
486 |
+
#: views/sidebar.php:15
|
487 |
+
msgid "Twitter"
|
488 |
+
msgstr "Twitter"
|
489 |
+
|
490 |
+
#: views/sidebar.php:16
|
491 |
+
msgid "GitHub"
|
492 |
+
msgstr "GitHub"
|
493 |
+
|
494 |
+
#: views/sidebar.php:27
|
495 |
+
msgid "Other products"
|
496 |
+
msgstr ""
|
497 |
+
|
498 |
+
#: views/sidebar.php:44
|
499 |
+
msgid "Resources"
|
500 |
+
msgstr "Ondersteuning"
|
501 |
+
|
502 |
+
#~ msgid "You successfuly subscribed. Thanks!"
|
503 |
+
#~ msgstr "Je bent succesvol aangemeld, dankjewel!"
|
504 |
+
|
505 |
+
#~ msgid "Which user role is allowed to access the backend of this blog?"
|
506 |
+
#~ msgstr "Welke gebruikersrollen mogen de backend van dit blog bereiken?"
|
507 |
+
|
508 |
+
#~ msgid "Which user role is allowed to access the frontend of this blog?"
|
509 |
+
#~ msgstr "Welke gebruikersrollen mogen de voorkant van dit blog bereiken?"
|
510 |
+
|
511 |
+
#~ msgid ""
|
512 |
+
#~ "If you want to redirect a user to a URL (which is not the WordPress "
|
513 |
+
#~ "dashboard) after login, then define a URL (incl. http://)"
|
514 |
+
#~ msgstr ""
|
515 |
+
#~ "Als je gebruikers na het inloggen wilt doorverwijzen naar een URL (anders "
|
516 |
+
#~ "dan het WordPress Dashboard), stel deze dan hier in (inclusief http://)."
|
517 |
+
|
518 |
+
#~ msgid "source <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
519 |
+
#~ msgstr "bron <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
520 |
+
|
521 |
+
#~ msgid "Subscribe now for early access to new WordPress themes."
|
522 |
+
#~ msgstr ""
|
523 |
+
#~ "Meld je nu aan om eerder toegang te krijgen tot nieuw WordPress thema's."
|
524 |
+
|
525 |
+
#~ msgid "Enter your email address"
|
526 |
+
#~ msgstr "Voer je e-mailadres in"
|
527 |
+
|
528 |
+
#~ msgid "News"
|
529 |
+
#~ msgstr "Nieuws"
|
530 |
+
|
531 |
+
#~ msgid "Developed by <a href=\"%s\">Designmodo</a>"
|
532 |
+
#~ msgstr "Ontwikkeld door <a href=\"%s\">Designmodo</a>"
|
Binary file
|
@@ -0,0 +1,530 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: WP Maintenance Mode 2.0.4\n"
|
4 |
+
"POT-Creation-Date: 2016-06-17 03:26+0300\n"
|
5 |
+
"PO-Revision-Date: 2016-06-17 03:26+0300\n"
|
6 |
+
"Last-Translator: Maciej Gryniuk <maciejka45@gmail.com>\n"
|
7 |
+
"Language-Team: Maciej Gryniuk <maciejka45@gmail.com>\n"
|
8 |
+
"Language: pl\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 1.8.8\n"
|
13 |
+
"X-Poedit-Basepath: ..\n"
|
14 |
+
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
17 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
|
18 |
+
"esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
|
19 |
+
"X-Poedit-SearchPath-0: .\n"
|
20 |
+
"X-Poedit-SearchPath-1: includes/classes\n"
|
21 |
+
"X-Poedit-SearchPath-2: views\n"
|
22 |
+
|
23 |
+
#: includes/classes/wp-maintenance-mode-admin.php:121
|
24 |
+
#: includes/classes/wp-maintenance-mode-admin.php:159
|
25 |
+
#: includes/classes/wp-maintenance-mode-admin.php:181
|
26 |
+
msgid "You do not have access to this resource."
|
27 |
+
msgstr ""
|
28 |
+
|
29 |
+
#: includes/classes/wp-maintenance-mode-admin.php:165 views/settings.php:295
|
30 |
+
#, php-format
|
31 |
+
msgid "You have %d subscriber(s)"
|
32 |
+
msgstr "Obecne subskrypcje: %d."
|
33 |
+
|
34 |
+
#: includes/classes/wp-maintenance-mode-admin.php:186
|
35 |
+
msgid "The tab slug must not be empty."
|
36 |
+
msgstr ""
|
37 |
+
|
38 |
+
#: includes/classes/wp-maintenance-mode-admin.php:191
|
39 |
+
msgid "The tab slug must exist."
|
40 |
+
msgstr ""
|
41 |
+
|
42 |
+
#: includes/classes/wp-maintenance-mode-admin.php:211
|
43 |
+
msgid "WP Maintenance Mode"
|
44 |
+
msgstr "WP Tryb Konserwacji"
|
45 |
+
|
46 |
+
#: includes/classes/wp-maintenance-mode-admin.php:425
|
47 |
+
msgid "Settings"
|
48 |
+
msgstr "Ustawienia"
|
49 |
+
|
50 |
+
#: includes/classes/wp-maintenance-mode-admin.php:444
|
51 |
+
#, php-format
|
52 |
+
msgid ""
|
53 |
+
"The Maintenance Mode is <strong>active</strong>. Please don't forget to <a "
|
54 |
+
"href=\"%s\">deactivate</a> as soon as you are done."
|
55 |
+
msgstr ""
|
56 |
+
"Tryb Konserwacji jest <strong>aktywny</strong>. Pamiętaj, aby go <a href=\"%s"
|
57 |
+
"\">wyłączyć</a>, kiedy skończysz.\v"
|
58 |
+
|
59 |
+
#: includes/classes/wp-maintenance-mode-admin.php:481
|
60 |
+
msgid "Notice key cannot be empty."
|
61 |
+
msgstr ""
|
62 |
+
|
63 |
+
#: includes/classes/wp-maintenance-mode.php:103
|
64 |
+
#: includes/classes/wp-maintenance-mode.php:104
|
65 |
+
msgid "Maintenance mode"
|
66 |
+
msgstr "Tryb konserwacji"
|
67 |
+
|
68 |
+
#: includes/classes/wp-maintenance-mode.php:106
|
69 |
+
msgid ""
|
70 |
+
"<p>Sorry for the inconvenience.<br />Our website is currently undergoing "
|
71 |
+
"scheduled maintenance.<br />Thank you for your understanding.</p>"
|
72 |
+
msgstr ""
|
73 |
+
"<p>Przepraszamy za niedogodności.<br />Nasza strona jest obecnie poddawana "
|
74 |
+
"pracom konserwacyjnym.<br />Dziękujemy za zrozumienie.</p>"
|
75 |
+
|
76 |
+
#: includes/classes/wp-maintenance-mode.php:124
|
77 |
+
msgid "Notify me when it's ready"
|
78 |
+
msgstr "Powiadom mnie po uruchomieniu strony"
|
79 |
+
|
80 |
+
#: includes/classes/wp-maintenance-mode.php:259
|
81 |
+
#, php-format
|
82 |
+
msgid ""
|
83 |
+
"WP Maintenance Mode plugin was relaunched and you MUST revise <a href=\"%s"
|
84 |
+
"\">settings</a>."
|
85 |
+
msgstr ""
|
86 |
+
"Wtyczka WP Tryb Konserwacji została ponownie uruchomiona i MUSISZ sprawdzić "
|
87 |
+
"<a href=\"%s\">ustawienia</a>.\v"
|
88 |
+
|
89 |
+
#: includes/classes/wp-maintenance-mode.php:449
|
90 |
+
#: includes/classes/wp-maintenance-mode.php:463
|
91 |
+
msgid "Maintenance Mode"
|
92 |
+
msgstr "Tryb Konserwacji"
|
93 |
+
|
94 |
+
#: includes/classes/wp-maintenance-mode.php:687
|
95 |
+
#: includes/classes/wp-maintenance-mode.php:721 views/maintenance.php:85
|
96 |
+
msgid "Please enter a valid email address."
|
97 |
+
msgstr "Proszę podać poprawny adres e-mail."
|
98 |
+
|
99 |
+
#: includes/classes/wp-maintenance-mode.php:699
|
100 |
+
msgid "You successfully subscribed. Thanks!"
|
101 |
+
msgstr ""
|
102 |
+
|
103 |
+
#: includes/classes/wp-maintenance-mode.php:717
|
104 |
+
msgid "All fields required."
|
105 |
+
msgstr "Wszystkie pola są wymagane"
|
106 |
+
|
107 |
+
#: includes/classes/wp-maintenance-mode.php:726
|
108 |
+
msgid "Message via contact"
|
109 |
+
msgstr "Wiadomość poprzez kontakt"
|
110 |
+
|
111 |
+
#: includes/classes/wp-maintenance-mode.php:738
|
112 |
+
msgid "Your email was sent to the website administrator. Thanks!"
|
113 |
+
msgstr "Twój adres e-mail został wysłany do administratora strony. Dzięki!"
|
114 |
+
|
115 |
+
#: views/contact.php:34
|
116 |
+
#, php-format
|
117 |
+
msgid "You have been contacted via %s."
|
118 |
+
msgstr ""
|
119 |
+
|
120 |
+
#: views/contact.php:50
|
121 |
+
msgid "Name:"
|
122 |
+
msgstr ""
|
123 |
+
|
124 |
+
#: views/contact.php:62
|
125 |
+
msgid "Email:"
|
126 |
+
msgstr ""
|
127 |
+
|
128 |
+
#: views/contact.php:74
|
129 |
+
msgid "Content:"
|
130 |
+
msgstr ""
|
131 |
+
|
132 |
+
#: views/loginform.php:8
|
133 |
+
msgid "Login"
|
134 |
+
msgstr "Login"
|
135 |
+
|
136 |
+
#: views/maintenance.php:42
|
137 |
+
msgid "your e-mail..."
|
138 |
+
msgstr "Twój e-mail..."
|
139 |
+
|
140 |
+
#: views/maintenance.php:43 views/settings.php:270
|
141 |
+
msgid "Subscribe"
|
142 |
+
msgstr "Subskrybuj"
|
143 |
+
|
144 |
+
#: views/maintenance.php:84 views/sidebar.php:7
|
145 |
+
msgid "Name"
|
146 |
+
msgstr "Nazwa"
|
147 |
+
|
148 |
+
#: views/maintenance.php:84 views/maintenance.php:85 views/maintenance.php:87
|
149 |
+
msgid "This field is required."
|
150 |
+
msgstr ""
|
151 |
+
|
152 |
+
#: views/maintenance.php:85
|
153 |
+
msgid "E-mail"
|
154 |
+
msgstr "E-mail"
|
155 |
+
|
156 |
+
#: views/maintenance.php:87
|
157 |
+
msgid "Your message"
|
158 |
+
msgstr "Twoja wiadomość"
|
159 |
+
|
160 |
+
#: views/maintenance.php:88
|
161 |
+
msgid "Send"
|
162 |
+
msgstr "Wyślij"
|
163 |
+
|
164 |
+
#: views/maintenance.php:93
|
165 |
+
msgid "Contact us"
|
166 |
+
msgstr "Skontaktuj się z nami"
|
167 |
+
|
168 |
+
#: views/maintenance.php:98
|
169 |
+
msgid "Dashboard"
|
170 |
+
msgstr "Kokpit"
|
171 |
+
|
172 |
+
#: views/settings.php:6
|
173 |
+
msgid "Settings saved."
|
174 |
+
msgstr "Ustawienia zapisane"
|
175 |
+
|
176 |
+
#: views/settings.php:13
|
177 |
+
msgid "General"
|
178 |
+
msgstr "Ogólne"
|
179 |
+
|
180 |
+
#: views/settings.php:14
|
181 |
+
msgid "Design"
|
182 |
+
msgstr "Wygląd"
|
183 |
+
|
184 |
+
#: views/settings.php:15
|
185 |
+
msgid "Modules"
|
186 |
+
msgstr "Moduły"
|
187 |
+
|
188 |
+
#: views/settings.php:24
|
189 |
+
msgid "Status"
|
190 |
+
msgstr "Status"
|
191 |
+
|
192 |
+
#: views/settings.php:26
|
193 |
+
msgid "Activated"
|
194 |
+
msgstr "Aktywny"
|
195 |
+
|
196 |
+
#: views/settings.php:27
|
197 |
+
msgid "Deactivated"
|
198 |
+
msgstr "Zdezaktywowany"
|
199 |
+
|
200 |
+
#: views/settings.php:31
|
201 |
+
msgid "Bypass for Search Bots"
|
202 |
+
msgstr "Wstęp dla wyszukiwarek"
|
203 |
+
|
204 |
+
#: views/settings.php:34 views/settings.php:104 views/settings.php:114
|
205 |
+
#: views/settings.php:242 views/settings.php:278 views/settings.php:316
|
206 |
+
#: views/settings.php:384 views/settings.php:416
|
207 |
+
msgid "Yes"
|
208 |
+
msgstr "Tak"
|
209 |
+
|
210 |
+
#: views/settings.php:35 views/settings.php:105 views/settings.php:115
|
211 |
+
#: views/settings.php:243 views/settings.php:279 views/settings.php:317
|
212 |
+
#: views/settings.php:385 views/settings.php:417
|
213 |
+
msgid "No"
|
214 |
+
msgstr "Nie"
|
215 |
+
|
216 |
+
#: views/settings.php:37
|
217 |
+
msgid "Allow Search Bots to bypass maintenance mode?"
|
218 |
+
msgstr "Umożliwić wyszukiwarkom pominięcie trybu konserwacji?"
|
219 |
+
|
220 |
+
#: views/settings.php:41
|
221 |
+
msgid "Backend Role"
|
222 |
+
msgstr "Rola back-end"
|
223 |
+
|
224 |
+
#: views/settings.php:43 views/settings.php:59
|
225 |
+
msgid "Select role(s)"
|
226 |
+
msgstr ""
|
227 |
+
|
228 |
+
#: views/settings.php:53
|
229 |
+
msgid ""
|
230 |
+
"Which user role is allowed to access the backend of this blog? "
|
231 |
+
"Administrators will always have access."
|
232 |
+
msgstr ""
|
233 |
+
|
234 |
+
#: views/settings.php:57
|
235 |
+
msgid "Frontend Role"
|
236 |
+
msgstr "Rola front-end"
|
237 |
+
|
238 |
+
#: views/settings.php:69
|
239 |
+
msgid ""
|
240 |
+
"Which user role is allowed to access the frontend of this blog? "
|
241 |
+
"Administrators will always have access."
|
242 |
+
msgstr ""
|
243 |
+
|
244 |
+
#: views/settings.php:73
|
245 |
+
msgid "Robots Meta Tag"
|
246 |
+
msgstr "Metatag Robots"
|
247 |
+
|
248 |
+
#: views/settings.php:79
|
249 |
+
msgid ""
|
250 |
+
"The robots meta tag lets you use a granular, page-specific approach to "
|
251 |
+
"control how an individual page should be indexed and served to users in "
|
252 |
+
"search results."
|
253 |
+
msgstr ""
|
254 |
+
"Znacznik meta robots pozwala ci sprecyzować, jak poszczególne strony powinny "
|
255 |
+
"być indeksowane i widoczne dla użytkowników w wynikach wyszukiwarkek "
|
256 |
+
"internetowych."
|
257 |
+
|
258 |
+
#: views/settings.php:83
|
259 |
+
msgid "Redirection"
|
260 |
+
msgstr "Przekierowanie"
|
261 |
+
|
262 |
+
#: views/settings.php:86
|
263 |
+
msgid ""
|
264 |
+
"If you want to redirect a user (with no access to Dashboard/Backend) to a "
|
265 |
+
"URL (different from WordPress Dashboard URL) after login, then define a URL "
|
266 |
+
"(incl. http://)"
|
267 |
+
msgstr ""
|
268 |
+
|
269 |
+
#: views/settings.php:90
|
270 |
+
msgid "Exclude"
|
271 |
+
msgstr "Wyklucz"
|
272 |
+
|
273 |
+
#: views/settings.php:97
|
274 |
+
msgid ""
|
275 |
+
"Exclude feed, pages, archives or IPs from maintenance mode. Add one slug / "
|
276 |
+
"IP per line!"
|
277 |
+
msgstr ""
|
278 |
+
"Zezwól na dostęp podczas trybu konserwacji do kanałów internetowych, stron, "
|
279 |
+
"archiwów lub adresów IP. Podaj jeden wpis / IP na linię!"
|
280 |
+
|
281 |
+
#: views/settings.php:101
|
282 |
+
msgid "Notice"
|
283 |
+
msgstr "Powiadomienie"
|
284 |
+
|
285 |
+
#: views/settings.php:107
|
286 |
+
msgid "Do you want to see notices when maintenance mode is activated?"
|
287 |
+
msgstr "Chcesz widzieć powiadomienia podczas aktywnego trybu konserwacji?"
|
288 |
+
|
289 |
+
#: views/settings.php:111
|
290 |
+
msgid "Dashboard link"
|
291 |
+
msgstr "Link do kokpitu"
|
292 |
+
|
293 |
+
#: views/settings.php:117
|
294 |
+
msgid ""
|
295 |
+
"Do you want to add a link to the dashboard on your maintenance mode page?"
|
296 |
+
msgstr "Chcesz dodać link do kokpitu na stronie trybu konserwacyjnego?"
|
297 |
+
|
298 |
+
#: views/settings.php:125 views/settings.php:228 views/settings.php:432
|
299 |
+
msgid "Save settings"
|
300 |
+
msgstr "Zapisz ustawienia"
|
301 |
+
|
302 |
+
#: views/settings.php:126 views/settings.php:229 views/settings.php:433
|
303 |
+
msgid "Reset settings"
|
304 |
+
msgstr "Zresetuj ustawienia"
|
305 |
+
|
306 |
+
#: views/settings.php:131
|
307 |
+
msgid "Content"
|
308 |
+
msgstr "Zawartość"
|
309 |
+
|
310 |
+
#: views/settings.php:136
|
311 |
+
msgid "Title (HTML tag)"
|
312 |
+
msgstr "Tytuł (tag HTML)"
|
313 |
+
|
314 |
+
#: views/settings.php:142
|
315 |
+
msgid "Heading"
|
316 |
+
msgstr "Nagłówek"
|
317 |
+
|
318 |
+
#: views/settings.php:149 views/settings.php:284
|
319 |
+
msgid "Text"
|
320 |
+
msgstr "Tekst"
|
321 |
+
|
322 |
+
#: views/settings.php:169
|
323 |
+
msgid "Background"
|
324 |
+
msgstr "Tło"
|
325 |
+
|
326 |
+
#: views/settings.php:174
|
327 |
+
msgid "Choose type"
|
328 |
+
msgstr "Wybierz rodzaj"
|
329 |
+
|
330 |
+
#: views/settings.php:177
|
331 |
+
msgid "Custom color"
|
332 |
+
msgstr "Własny kolor"
|
333 |
+
|
334 |
+
#: views/settings.php:178
|
335 |
+
msgid "Uploaded background"
|
336 |
+
msgstr "Przesłane tło"
|
337 |
+
|
338 |
+
#: views/settings.php:179
|
339 |
+
msgid "Predefined background"
|
340 |
+
msgstr "Uprzednio zdefiniowane tło"
|
341 |
+
|
342 |
+
#: views/settings.php:184
|
343 |
+
msgid "Choose color"
|
344 |
+
msgstr "Wybierz kolor"
|
345 |
+
|
346 |
+
#: views/settings.php:190
|
347 |
+
msgid "Upload background"
|
348 |
+
msgstr "Prześlij tło"
|
349 |
+
|
350 |
+
#: views/settings.php:194
|
351 |
+
msgid "Backgrounds should have 1920x1280 px size."
|
352 |
+
msgstr "Tło powinno mieć rozmiar 1920x1280 px."
|
353 |
+
|
354 |
+
#: views/settings.php:199
|
355 |
+
msgid "Choose background"
|
356 |
+
msgstr "Wybierz tło"
|
357 |
+
|
358 |
+
#: views/settings.php:201
|
359 |
+
#, php-format
|
360 |
+
msgid "source <a href=\"%s\" target=\"_blank\">Free Photos</a>"
|
361 |
+
msgstr ""
|
362 |
+
|
363 |
+
#: views/settings.php:234
|
364 |
+
msgid "Countdown"
|
365 |
+
msgstr "Odliczanie"
|
366 |
+
|
367 |
+
#: views/settings.php:239
|
368 |
+
msgid "Show countdown?"
|
369 |
+
msgstr "Pokazać odliczanie?"
|
370 |
+
|
371 |
+
#: views/settings.php:248
|
372 |
+
msgid "Start date"
|
373 |
+
msgstr "Początkowa data"
|
374 |
+
|
375 |
+
#: views/settings.php:254
|
376 |
+
msgid "Countdown (remaining time)"
|
377 |
+
msgstr "Odliczanie (pozostały czas)"
|
378 |
+
|
379 |
+
#: views/settings.php:256
|
380 |
+
msgid "Days"
|
381 |
+
msgstr "Dni"
|
382 |
+
|
383 |
+
#: views/settings.php:257
|
384 |
+
msgid "Hours"
|
385 |
+
msgstr "Godzin"
|
386 |
+
|
387 |
+
#: views/settings.php:258
|
388 |
+
msgid "Minutes"
|
389 |
+
msgstr "Minut"
|
390 |
+
|
391 |
+
#: views/settings.php:262
|
392 |
+
msgid "Color"
|
393 |
+
msgstr "Kolor"
|
394 |
+
|
395 |
+
#: views/settings.php:275
|
396 |
+
msgid "Show subscribe?"
|
397 |
+
msgstr "Umożliwić subskrypcję?"
|
398 |
+
|
399 |
+
#: views/settings.php:291
|
400 |
+
msgid "Stats"
|
401 |
+
msgstr "Statystyki"
|
402 |
+
|
403 |
+
#: views/settings.php:300
|
404 |
+
msgid "Export as CSV"
|
405 |
+
msgstr "Eksportuj jako CSV"
|
406 |
+
|
407 |
+
#: views/settings.php:301
|
408 |
+
msgid "Empty subscribers list"
|
409 |
+
msgstr ""
|
410 |
+
|
411 |
+
#: views/settings.php:308
|
412 |
+
msgid "Social Networks"
|
413 |
+
msgstr "Serwisy społecznościowe"
|
414 |
+
|
415 |
+
#: views/settings.php:313
|
416 |
+
msgid "Show social networks?"
|
417 |
+
msgstr "Pokazać serwisy społecznościowe?"
|
418 |
+
|
419 |
+
#: views/settings.php:322
|
420 |
+
msgid "Links target?"
|
421 |
+
msgstr "Cel linków?"
|
422 |
+
|
423 |
+
#: views/settings.php:325
|
424 |
+
msgid "New page"
|
425 |
+
msgstr "Nowa karta"
|
426 |
+
|
427 |
+
#: views/settings.php:326
|
428 |
+
msgid "Same page"
|
429 |
+
msgstr "Ta sama karta"
|
430 |
+
|
431 |
+
#: views/settings.php:328
|
432 |
+
msgid "Choose how the links will open."
|
433 |
+
msgstr "Wybierz, w jakim miejscu powinny zostać otwierane linki."
|
434 |
+
|
435 |
+
#: views/settings.php:376
|
436 |
+
msgid "Contact"
|
437 |
+
msgstr "Kontakt"
|
438 |
+
|
439 |
+
#: views/settings.php:381
|
440 |
+
msgid "Show contact?"
|
441 |
+
msgstr "Pokazać kontakt?"
|
442 |
+
|
443 |
+
#: views/settings.php:390
|
444 |
+
msgid "Email address"
|
445 |
+
msgstr "Adres e-mail"
|
446 |
+
|
447 |
+
#: views/settings.php:396
|
448 |
+
msgid "Effects"
|
449 |
+
msgstr "Efekty"
|
450 |
+
|
451 |
+
#: views/settings.php:399
|
452 |
+
msgid "Move top - Move bottom"
|
453 |
+
msgstr "Wejście z góry - w dół"
|
454 |
+
|
455 |
+
#: views/settings.php:400
|
456 |
+
msgid "Zoom - Zoomed"
|
457 |
+
msgstr "Przybliżenie - przybliżone"
|
458 |
+
|
459 |
+
#: views/settings.php:401
|
460 |
+
msgid "Fold - Unfold"
|
461 |
+
msgstr "Obrót - obrócone"
|
462 |
+
|
463 |
+
#: views/settings.php:408
|
464 |
+
msgid "Google Analytics"
|
465 |
+
msgstr "Google Analytics"
|
466 |
+
|
467 |
+
#: views/settings.php:413
|
468 |
+
msgid "Use Google Analytics?"
|
469 |
+
msgstr "Używać Google Analytics?"
|
470 |
+
|
471 |
+
#: views/settings.php:422
|
472 |
+
msgid "Tracking code"
|
473 |
+
msgstr "Kod śledzenia"
|
474 |
+
|
475 |
+
#: views/sidebar.php:3
|
476 |
+
msgid "Plugin Info"
|
477 |
+
msgstr "Informacje o wtyczce"
|
478 |
+
|
479 |
+
#: views/sidebar.php:13
|
480 |
+
msgid "Author"
|
481 |
+
msgstr "Autor"
|
482 |
+
|
483 |
+
#: views/sidebar.php:14
|
484 |
+
msgid "Website"
|
485 |
+
msgstr "Strona internetowa"
|
486 |
+
|
487 |
+
#: views/sidebar.php:15
|
488 |
+
msgid "Twitter"
|
489 |
+
msgstr "Twitter"
|
490 |
+
|
491 |
+
#: views/sidebar.php:16
|
492 |
+
msgid "GitHub"
|
493 |
+
msgstr "GitHub"
|
494 |
+
|
495 |
+
#: views/sidebar.php:27
|
496 |
+
msgid "Other products"
|
497 |
+
msgstr ""
|
498 |
+
|
499 |
+
#: views/sidebar.php:44
|
500 |
+
msgid "Resources"
|
501 |
+
msgstr "Źródła"
|
502 |
+
|
503 |
+
#~ msgid ""
|
504 |
+
#~ "Adds a splash page to your site that lets visitors know your site is down "
|
505 |
+
#~ "for maintenance. It's perfect for a coming soon page."
|
506 |
+
#~ msgstr ""
|
507 |
+
#~ "Dodaje stronę informującą odwiedzających o konserwacji witryny. Idealna "
|
508 |
+
#~ "dla wkrótce otwieranych stron."
|
509 |
+
|
510 |
+
#~ msgid "You successfuly subscribed. Thanks!"
|
511 |
+
#~ msgstr "Pomyślnie zapisano do subskrypcji. Dzięki!"
|
512 |
+
|
513 |
+
#~ msgid "Which user role is allowed to access the backend of this blog?"
|
514 |
+
#~ msgstr "Jacy użytkownicy mają dostęp do panelu administracyjnego strony?"
|
515 |
+
|
516 |
+
#~ msgid "Which user role is allowed to access the frontend of this blog?"
|
517 |
+
#~ msgstr "Jacy użytkownicy mają dostęp do właściwej części strony?"
|
518 |
+
|
519 |
+
#~ msgid ""
|
520 |
+
#~ "If you want to redirect a user to a URL (which is not the WordPress "
|
521 |
+
#~ "dashboard) after login, then define a URL (incl. http://)"
|
522 |
+
#~ msgstr ""
|
523 |
+
#~ "Jeżeli chcesz przekierować użytkownika po zalogowaniu do adresu URL "
|
524 |
+
#~ "innego niż kokpit WordPress'a, podaj adres URL (wraz z http://)."
|
525 |
+
|
526 |
+
#~ msgid "source <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
527 |
+
#~ msgstr "źródło <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
528 |
+
|
529 |
+
#~ msgid "WordPress Themes"
|
530 |
+
#~ msgstr "Motywy WordPress"
|
Binary file
|
@@ -1,535 +1,605 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: WP Maintenance Mode v2.0.
|
4 |
-
"Report-Msgid-Bugs-To: \n"
|
5 |
-
"POT-Creation-Date:
|
6 |
-
"PO-Revision-Date:
|
7 |
-
"Last-Translator: Jônatas Araújo <jonatasaraujos@live.com>\n"
|
8 |
-
"Language-Team: \n"
|
9 |
-
"Language: pt_BR\n"
|
10 |
-
"MIME-Version: 1.0\n"
|
11 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
12 |
-
"Content-Transfer-Encoding: 8bit\n"
|
13 |
-
"Plural-Forms: nplurals=2; plural=n
|
14 |
-
"X-Generator: Poedit 1.
|
15 |
-
"X-Poedit-SourceCharset:
|
16 |
-
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
17 |
-
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2
|
18 |
-
"
|
19 |
-
"X-
|
20 |
-
"X-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
msgstr ""
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
"
|
67 |
-
"
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
# @ wp-maintenance-mode
|
85 |
-
#: includes/classes/wp-maintenance-mode.php:
|
86 |
-
msgid "
|
87 |
-
msgstr "
|
88 |
-
|
89 |
-
# @ wp-maintenance-mode
|
90 |
-
#: includes/classes/wp-maintenance-mode.php:
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
# @ wp-maintenance-mode
|
100 |
-
#: includes/classes/wp-maintenance-mode.php:
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
#: views/
|
140 |
-
msgid "
|
141 |
-
msgstr "
|
142 |
-
|
143 |
-
#: views/
|
144 |
-
msgid "
|
145 |
-
msgstr ""
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
#: views/
|
191 |
-
msgid "
|
192 |
-
msgstr "
|
193 |
-
|
194 |
-
# @ wp-maintenance-mode
|
195 |
-
#: views/settings.php:
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
msgstr ""
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
"
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
"
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
#: views/settings.php:
|
448 |
-
msgid "
|
449 |
-
msgstr ""
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
-
|
474 |
-
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
|
479 |
-
|
480 |
-
|
481 |
-
|
482 |
-
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
|
494 |
-
|
495 |
-
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
-
|
500 |
-
|
501 |
-
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
|
510 |
-
|
511 |
-
|
512 |
-
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
-
|
517 |
-
|
518 |
-
|
519 |
-
|
520 |
-
|
521 |
-
|
522 |
-
|
523 |
-
|
524 |
-
|
525 |
-
|
526 |
-
|
527 |
-
|
528 |
-
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
534 |
-
|
535 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: WP Maintenance Mode v2.0.4\n"
|
4 |
+
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2016-06-17 03:27+0300\n"
|
6 |
+
"PO-Revision-Date: 2016-06-17 03:27+0300\n"
|
7 |
+
"Last-Translator: Jônatas Araújo <jonatasaraujos@live.com>\n"
|
8 |
+
"Language-Team: \n"
|
9 |
+
"Language: pt_BR\n"
|
10 |
+
"MIME-Version: 1.0\n"
|
11 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
12 |
+
"Content-Transfer-Encoding: 8bit\n"
|
13 |
+
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
14 |
+
"X-Generator: Poedit 1.8.8\n"
|
15 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
17 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
|
18 |
+
"esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
|
19 |
+
"X-Poedit-Basepath: ..\n"
|
20 |
+
"X-Textdomain-Support: yes\n"
|
21 |
+
"X-Poedit-SearchPath-0: .\n"
|
22 |
+
"X-Poedit-SearchPath-1: views\n"
|
23 |
+
"X-Poedit-SearchPath-2: includes/classes\n"
|
24 |
+
|
25 |
+
#: includes/classes/wp-maintenance-mode-admin.php:121
|
26 |
+
#: includes/classes/wp-maintenance-mode-admin.php:159
|
27 |
+
#: includes/classes/wp-maintenance-mode-admin.php:181
|
28 |
+
msgid "You do not have access to this resource."
|
29 |
+
msgstr ""
|
30 |
+
|
31 |
+
# @ wp-maintenance-mode
|
32 |
+
#: includes/classes/wp-maintenance-mode-admin.php:165 views/settings.php:295
|
33 |
+
#, php-format
|
34 |
+
msgid "You have %d subscriber(s)"
|
35 |
+
msgstr "Você tem %d assinante(s)"
|
36 |
+
|
37 |
+
#: includes/classes/wp-maintenance-mode-admin.php:186
|
38 |
+
msgid "The tab slug must not be empty."
|
39 |
+
msgstr ""
|
40 |
+
|
41 |
+
#: includes/classes/wp-maintenance-mode-admin.php:191
|
42 |
+
msgid "The tab slug must exist."
|
43 |
+
msgstr ""
|
44 |
+
|
45 |
+
# @ wp-maintenance-mode
|
46 |
+
#: includes/classes/wp-maintenance-mode-admin.php:211
|
47 |
+
msgid "WP Maintenance Mode"
|
48 |
+
msgstr "Manutenção Site"
|
49 |
+
|
50 |
+
# @ wp-maintenance-mode
|
51 |
+
#: includes/classes/wp-maintenance-mode-admin.php:425
|
52 |
+
msgid "Settings"
|
53 |
+
msgstr "Configurações"
|
54 |
+
|
55 |
+
# @ wp-maintenance-mode
|
56 |
+
#: includes/classes/wp-maintenance-mode-admin.php:444
|
57 |
+
#, php-format
|
58 |
+
msgid ""
|
59 |
+
"The Maintenance Mode is <strong>active</strong>. Please don't forget to <a "
|
60 |
+
"href=\"%s\">deactivate</a> as soon as you are done."
|
61 |
+
msgstr ""
|
62 |
+
"O modo de manutenção está <strong>ativo</strong>. Por favor, não se esqueça "
|
63 |
+
"de<a href=\"%s\"> desativar</a> assim que estiver pronto."
|
64 |
+
|
65 |
+
#: includes/classes/wp-maintenance-mode-admin.php:481
|
66 |
+
msgid "Notice key cannot be empty."
|
67 |
+
msgstr ""
|
68 |
+
|
69 |
+
# @ wp-maintenance-mode
|
70 |
+
#: includes/classes/wp-maintenance-mode.php:103
|
71 |
+
#: includes/classes/wp-maintenance-mode.php:104
|
72 |
+
msgid "Maintenance mode"
|
73 |
+
msgstr "Modo manutenção"
|
74 |
+
|
75 |
+
# @ wp-maintenance-mode
|
76 |
+
#: includes/classes/wp-maintenance-mode.php:106
|
77 |
+
msgid ""
|
78 |
+
"<p>Sorry for the inconvenience.<br />Our website is currently undergoing "
|
79 |
+
"scheduled maintenance.<br />Thank you for your understanding.</p>"
|
80 |
+
msgstr ""
|
81 |
+
"<p>Desculpe pela inconveniência.<br/>Nosso site está passando por manutenção "
|
82 |
+
"programada.<br/>Obrigado por sua compreensão.</p>"
|
83 |
+
|
84 |
+
# @ wp-maintenance-mode
|
85 |
+
#: includes/classes/wp-maintenance-mode.php:124
|
86 |
+
msgid "Notify me when it's ready"
|
87 |
+
msgstr "Notifique-me quando estiver pronto"
|
88 |
+
|
89 |
+
# @ wp-maintenance-mode
|
90 |
+
#: includes/classes/wp-maintenance-mode.php:259
|
91 |
+
#, php-format
|
92 |
+
msgid ""
|
93 |
+
"WP Maintenance Mode plugin was relaunched and you MUST revise <a href=\"%s"
|
94 |
+
"\">settings</a>."
|
95 |
+
msgstr ""
|
96 |
+
"Plugin WP Modo de Manutenção foi relançada e você deve rever as <a href=\"%s"
|
97 |
+
"\">configurações</a>."
|
98 |
+
|
99 |
+
# @ wp-maintenance-mode
|
100 |
+
#: includes/classes/wp-maintenance-mode.php:449
|
101 |
+
#: includes/classes/wp-maintenance-mode.php:463
|
102 |
+
msgid "Maintenance Mode"
|
103 |
+
msgstr "Modo de Manutenção"
|
104 |
+
|
105 |
+
# @ wp-maintenance-mode
|
106 |
+
#: includes/classes/wp-maintenance-mode.php:687
|
107 |
+
#: includes/classes/wp-maintenance-mode.php:721 views/maintenance.php:85
|
108 |
+
msgid "Please enter a valid email address."
|
109 |
+
msgstr "Por favor insira um endereço de e-mail válido."
|
110 |
+
|
111 |
+
#: includes/classes/wp-maintenance-mode.php:699
|
112 |
+
msgid "You successfully subscribed. Thanks!"
|
113 |
+
msgstr ""
|
114 |
+
|
115 |
+
# @ wp-maintenance-mode
|
116 |
+
#: includes/classes/wp-maintenance-mode.php:717
|
117 |
+
msgid "All fields required."
|
118 |
+
msgstr "Todos os campos são obrigatórios."
|
119 |
+
|
120 |
+
# @ wp-maintenance-mode
|
121 |
+
#: includes/classes/wp-maintenance-mode.php:726
|
122 |
+
msgid "Message via contact"
|
123 |
+
msgstr "Mensagem via contato"
|
124 |
+
|
125 |
+
# @ wp-maintenance-mode
|
126 |
+
#: includes/classes/wp-maintenance-mode.php:738
|
127 |
+
msgid "Your email was sent to the website administrator. Thanks!"
|
128 |
+
msgstr "Seu e-mail foi enviado ao administrador do site. Obrigado!"
|
129 |
+
|
130 |
+
#: views/contact.php:34
|
131 |
+
#, php-format
|
132 |
+
msgid "You have been contacted via %s."
|
133 |
+
msgstr ""
|
134 |
+
|
135 |
+
#: views/contact.php:50
|
136 |
+
msgid "Name:"
|
137 |
+
msgstr ""
|
138 |
+
|
139 |
+
#: views/contact.php:62
|
140 |
+
msgid "Email:"
|
141 |
+
msgstr ""
|
142 |
+
|
143 |
+
#: views/contact.php:74
|
144 |
+
msgid "Content:"
|
145 |
+
msgstr ""
|
146 |
+
|
147 |
+
#: views/loginform.php:8
|
148 |
+
msgid "Login"
|
149 |
+
msgstr ""
|
150 |
+
|
151 |
+
# @ wp-maintenance-mode
|
152 |
+
#: views/maintenance.php:42
|
153 |
+
msgid "your e-mail..."
|
154 |
+
msgstr "digite seu e-mail..."
|
155 |
+
|
156 |
+
# @ wp-maintenance-mode
|
157 |
+
#: views/maintenance.php:43 views/settings.php:270
|
158 |
+
msgid "Subscribe"
|
159 |
+
msgstr "Assinante"
|
160 |
+
|
161 |
+
# @ wp-maintenance-mode
|
162 |
+
#: views/maintenance.php:84 views/sidebar.php:7
|
163 |
+
msgid "Name"
|
164 |
+
msgstr "Nome"
|
165 |
+
|
166 |
+
#: views/maintenance.php:84 views/maintenance.php:85 views/maintenance.php:87
|
167 |
+
msgid "This field is required."
|
168 |
+
msgstr ""
|
169 |
+
|
170 |
+
# @ wp-maintenance-mode
|
171 |
+
#: views/maintenance.php:85
|
172 |
+
msgid "E-mail"
|
173 |
+
msgstr "E-mail"
|
174 |
+
|
175 |
+
# @ wp-maintenance-mode
|
176 |
+
#: views/maintenance.php:87
|
177 |
+
msgid "Your message"
|
178 |
+
msgstr "Sua mensagem"
|
179 |
+
|
180 |
+
# @ wp-maintenance-mode
|
181 |
+
#: views/maintenance.php:88
|
182 |
+
msgid "Send"
|
183 |
+
msgstr "Enviar"
|
184 |
+
|
185 |
+
# @ wp-maintenance-mode
|
186 |
+
#: views/maintenance.php:93
|
187 |
+
msgid "Contact us"
|
188 |
+
msgstr "Contato"
|
189 |
+
|
190 |
+
#: views/maintenance.php:98
|
191 |
+
msgid "Dashboard"
|
192 |
+
msgstr ""
|
193 |
+
|
194 |
+
# @ wp-maintenance-mode
|
195 |
+
#: views/settings.php:6
|
196 |
+
msgid "Settings saved."
|
197 |
+
msgstr "Configurações salva."
|
198 |
+
|
199 |
+
# @ wp-maintenance-mode
|
200 |
+
#: views/settings.php:13
|
201 |
+
msgid "General"
|
202 |
+
msgstr "Geral"
|
203 |
+
|
204 |
+
# @ wp-maintenance-mode
|
205 |
+
#: views/settings.php:14
|
206 |
+
msgid "Design"
|
207 |
+
msgstr "Visual"
|
208 |
+
|
209 |
+
# @ wp-maintenance-mode
|
210 |
+
#: views/settings.php:15
|
211 |
+
msgid "Modules"
|
212 |
+
msgstr "Módulos"
|
213 |
+
|
214 |
+
# @ wp-maintenance-mode
|
215 |
+
#: views/settings.php:24
|
216 |
+
msgid "Status"
|
217 |
+
msgstr "Status"
|
218 |
+
|
219 |
+
# @ wp-maintenance-mode
|
220 |
+
#: views/settings.php:26
|
221 |
+
msgid "Activated"
|
222 |
+
msgstr "Ativado"
|
223 |
+
|
224 |
+
# @ wp-maintenance-mode
|
225 |
+
#: views/settings.php:27
|
226 |
+
msgid "Deactivated"
|
227 |
+
msgstr "Desativado"
|
228 |
+
|
229 |
+
# @ wp-maintenance-mode
|
230 |
+
#: views/settings.php:31
|
231 |
+
msgid "Bypass for Search Bots"
|
232 |
+
msgstr "Bypass para robôs de busca"
|
233 |
+
|
234 |
+
# @ wp-maintenance-mode
|
235 |
+
#: views/settings.php:34 views/settings.php:104 views/settings.php:114
|
236 |
+
#: views/settings.php:242 views/settings.php:278 views/settings.php:316
|
237 |
+
#: views/settings.php:384 views/settings.php:416
|
238 |
+
msgid "Yes"
|
239 |
+
msgstr "Sim"
|
240 |
+
|
241 |
+
# @ wp-maintenance-mode
|
242 |
+
#: views/settings.php:35 views/settings.php:105 views/settings.php:115
|
243 |
+
#: views/settings.php:243 views/settings.php:279 views/settings.php:317
|
244 |
+
#: views/settings.php:385 views/settings.php:417
|
245 |
+
msgid "No"
|
246 |
+
msgstr "Não"
|
247 |
+
|
248 |
+
# @ wp-maintenance-mode
|
249 |
+
#: views/settings.php:37
|
250 |
+
msgid "Allow Search Bots to bypass maintenance mode?"
|
251 |
+
msgstr "Deixe que os robôs para ignorar o modo de manutenção?"
|
252 |
+
|
253 |
+
# @ wp-maintenance-mode
|
254 |
+
#: views/settings.php:41
|
255 |
+
msgid "Backend Role"
|
256 |
+
msgstr ""
|
257 |
+
|
258 |
+
#: views/settings.php:43 views/settings.php:59
|
259 |
+
msgid "Select role(s)"
|
260 |
+
msgstr ""
|
261 |
+
|
262 |
+
#: views/settings.php:53
|
263 |
+
msgid ""
|
264 |
+
"Which user role is allowed to access the backend of this blog? "
|
265 |
+
"Administrators will always have access."
|
266 |
+
msgstr ""
|
267 |
+
|
268 |
+
# @ wp-maintenance-mode
|
269 |
+
#: views/settings.php:57
|
270 |
+
msgid "Frontend Role"
|
271 |
+
msgstr ""
|
272 |
+
|
273 |
+
#: views/settings.php:69
|
274 |
+
msgid ""
|
275 |
+
"Which user role is allowed to access the frontend of this blog? "
|
276 |
+
"Administrators will always have access."
|
277 |
+
msgstr ""
|
278 |
+
|
279 |
+
# @ wp-maintenance-mode
|
280 |
+
#: views/settings.php:73
|
281 |
+
msgid "Robots Meta Tag"
|
282 |
+
msgstr "Meta Tag Robots "
|
283 |
+
|
284 |
+
# @ wp-maintenance-mode
|
285 |
+
#: views/settings.php:79
|
286 |
+
msgid ""
|
287 |
+
"The robots meta tag lets you use a granular, page-specific approach to "
|
288 |
+
"control how an individual page should be indexed and served to users in "
|
289 |
+
"search results."
|
290 |
+
msgstr ""
|
291 |
+
"A meta tag robots permite que você use um granular, abordagem específica "
|
292 |
+
"páginas para controlar como uma página individual devem ser indexados e "
|
293 |
+
"serviu para os usuários em resultados de pesquisa."
|
294 |
+
|
295 |
+
# @ wp-maintenance-mode
|
296 |
+
#: views/settings.php:83
|
297 |
+
msgid "Redirection"
|
298 |
+
msgstr "Redirecionamento"
|
299 |
+
|
300 |
+
#: views/settings.php:86
|
301 |
+
msgid ""
|
302 |
+
"If you want to redirect a user (with no access to Dashboard/Backend) to a "
|
303 |
+
"URL (different from WordPress Dashboard URL) after login, then define a URL "
|
304 |
+
"(incl. http://)"
|
305 |
+
msgstr ""
|
306 |
+
|
307 |
+
# @ wp-maintenance-mode
|
308 |
+
#: views/settings.php:90
|
309 |
+
msgid "Exclude"
|
310 |
+
msgstr "Excluir"
|
311 |
+
|
312 |
+
# @ wp-maintenance-mode
|
313 |
+
#: views/settings.php:97
|
314 |
+
msgid ""
|
315 |
+
"Exclude feed, pages, archives or IPs from maintenance mode. Add one slug / "
|
316 |
+
"IP per line!"
|
317 |
+
msgstr ""
|
318 |
+
"Excluir alimentação, páginas, arquivos ou IPs a partir do modo de "
|
319 |
+
"manutenção. Adicionar uma lesma / IP por linha!"
|
320 |
+
|
321 |
+
# @ wp-maintenance-mode
|
322 |
+
#: views/settings.php:101
|
323 |
+
msgid "Notice"
|
324 |
+
msgstr "Aviso"
|
325 |
+
|
326 |
+
# @ wp-maintenance-mode
|
327 |
+
#: views/settings.php:107
|
328 |
+
msgid "Do you want to see notices when maintenance mode is activated?"
|
329 |
+
msgstr "Você quer ver os avisos de quando o modo de manutenção está ativado?"
|
330 |
+
|
331 |
+
#: views/settings.php:111
|
332 |
+
msgid "Dashboard link"
|
333 |
+
msgstr ""
|
334 |
+
|
335 |
+
# @ wp-maintenance-mode
|
336 |
+
#: views/settings.php:117
|
337 |
+
msgid ""
|
338 |
+
"Do you want to add a link to the dashboard on your maintenance mode page?"
|
339 |
+
msgstr ""
|
340 |
+
|
341 |
+
# @ wp-maintenance-mode
|
342 |
+
#: views/settings.php:125 views/settings.php:228 views/settings.php:432
|
343 |
+
msgid "Save settings"
|
344 |
+
msgstr ""
|
345 |
+
|
346 |
+
# @ wp-maintenance-mode
|
347 |
+
#: views/settings.php:126 views/settings.php:229 views/settings.php:433
|
348 |
+
msgid "Reset settings"
|
349 |
+
msgstr ""
|
350 |
+
|
351 |
+
# @ wp-maintenance-mode
|
352 |
+
#: views/settings.php:131
|
353 |
+
msgid "Content"
|
354 |
+
msgstr "Conteúdo"
|
355 |
+
|
356 |
+
# @ wp-maintenance-mode
|
357 |
+
#: views/settings.php:136
|
358 |
+
msgid "Title (HTML tag)"
|
359 |
+
msgstr "Título (HTML Tag)"
|
360 |
+
|
361 |
+
# @ wp-maintenance-mode
|
362 |
+
#: views/settings.php:142
|
363 |
+
msgid "Heading"
|
364 |
+
msgstr "Título H1 da Página"
|
365 |
+
|
366 |
+
# @ wp-maintenance-mode
|
367 |
+
#: views/settings.php:149 views/settings.php:284
|
368 |
+
msgid "Text"
|
369 |
+
msgstr "Mensagem"
|
370 |
+
|
371 |
+
# @ wp-maintenance-mode
|
372 |
+
#: views/settings.php:169
|
373 |
+
msgid "Background"
|
374 |
+
msgstr "Fundo"
|
375 |
+
|
376 |
+
# @ wp-maintenance-mode
|
377 |
+
#: views/settings.php:174
|
378 |
+
msgid "Choose type"
|
379 |
+
msgstr "Escolha o tipo de"
|
380 |
+
|
381 |
+
# @ wp-maintenance-mode
|
382 |
+
#: views/settings.php:177
|
383 |
+
msgid "Custom color"
|
384 |
+
msgstr "Cor personalizada"
|
385 |
+
|
386 |
+
# @ wp-maintenance-mode
|
387 |
+
#: views/settings.php:178
|
388 |
+
msgid "Uploaded background"
|
389 |
+
msgstr "Enviar Imagem Fundo"
|
390 |
+
|
391 |
+
# @ wp-maintenance-mode
|
392 |
+
#: views/settings.php:179
|
393 |
+
msgid "Predefined background"
|
394 |
+
msgstr "Imagem Pré-definida"
|
395 |
+
|
396 |
+
# @ wp-maintenance-mode
|
397 |
+
#: views/settings.php:184
|
398 |
+
msgid "Choose color"
|
399 |
+
msgstr "Escolha cor"
|
400 |
+
|
401 |
+
# @ wp-maintenance-mode
|
402 |
+
#: views/settings.php:190
|
403 |
+
msgid "Upload background"
|
404 |
+
msgstr "Enviar Imagem de Fundo"
|
405 |
+
|
406 |
+
# @ wp-maintenance-mode
|
407 |
+
#: views/settings.php:194
|
408 |
+
msgid "Backgrounds should have 1920x1280 px size."
|
409 |
+
msgstr "A Imagem devem ter tamanho 1920x1280px."
|
410 |
+
|
411 |
+
# @ wp-maintenance-mode
|
412 |
+
#: views/settings.php:199
|
413 |
+
msgid "Choose background"
|
414 |
+
msgstr "Escolha o fundo"
|
415 |
+
|
416 |
+
#: views/settings.php:201
|
417 |
+
#, php-format
|
418 |
+
msgid "source <a href=\"%s\" target=\"_blank\">Free Photos</a>"
|
419 |
+
msgstr ""
|
420 |
+
|
421 |
+
# @ wp-maintenance-mode
|
422 |
+
#: views/settings.php:234
|
423 |
+
msgid "Countdown"
|
424 |
+
msgstr "Contagem Regressiva"
|
425 |
+
|
426 |
+
# @ wp-maintenance-mode
|
427 |
+
#: views/settings.php:239
|
428 |
+
msgid "Show countdown?"
|
429 |
+
msgstr "Mostrar contagem regressiva?"
|
430 |
+
|
431 |
+
# @ wp-maintenance-mode
|
432 |
+
#: views/settings.php:248
|
433 |
+
msgid "Start date"
|
434 |
+
msgstr "Data Inicial"
|
435 |
+
|
436 |
+
# @ wp-maintenance-mode
|
437 |
+
#: views/settings.php:254
|
438 |
+
msgid "Countdown (remaining time)"
|
439 |
+
msgstr "Contagem regressiva (tempo restante)"
|
440 |
+
|
441 |
+
# @ wp-maintenance-mode
|
442 |
+
#: views/settings.php:256
|
443 |
+
msgid "Days"
|
444 |
+
msgstr "Dias"
|
445 |
+
|
446 |
+
# @ wp-maintenance-mode
|
447 |
+
#: views/settings.php:257
|
448 |
+
msgid "Hours"
|
449 |
+
msgstr "Horas"
|
450 |
+
|
451 |
+
# @ wp-maintenance-mode
|
452 |
+
#: views/settings.php:258
|
453 |
+
msgid "Minutes"
|
454 |
+
msgstr "Minutos"
|
455 |
+
|
456 |
+
# @ wp-maintenance-mode
|
457 |
+
#: views/settings.php:262
|
458 |
+
msgid "Color"
|
459 |
+
msgstr "Cor"
|
460 |
+
|
461 |
+
# @ wp-maintenance-mode
|
462 |
+
#: views/settings.php:275
|
463 |
+
msgid "Show subscribe?"
|
464 |
+
msgstr "Mostrar Assinatura?"
|
465 |
+
|
466 |
+
# @ wp-maintenance-mode
|
467 |
+
#: views/settings.php:291
|
468 |
+
msgid "Stats"
|
469 |
+
msgstr "Estatísticas"
|
470 |
+
|
471 |
+
# @ wp-maintenance-mode
|
472 |
+
#: views/settings.php:300
|
473 |
+
msgid "Export as CSV"
|
474 |
+
msgstr "Exportar para CSV"
|
475 |
+
|
476 |
+
#: views/settings.php:301
|
477 |
+
msgid "Empty subscribers list"
|
478 |
+
msgstr ""
|
479 |
+
|
480 |
+
# @ wp-maintenance-mode
|
481 |
+
#: views/settings.php:308
|
482 |
+
msgid "Social Networks"
|
483 |
+
msgstr "Rede Sociais"
|
484 |
+
|
485 |
+
# @ wp-maintenance-mode
|
486 |
+
#: views/settings.php:313
|
487 |
+
msgid "Show social networks?"
|
488 |
+
msgstr "Mostrar Rede Sociais?"
|
489 |
+
|
490 |
+
#: views/settings.php:322
|
491 |
+
msgid "Links target?"
|
492 |
+
msgstr ""
|
493 |
+
|
494 |
+
#: views/settings.php:325
|
495 |
+
msgid "New page"
|
496 |
+
msgstr ""
|
497 |
+
|
498 |
+
#: views/settings.php:326
|
499 |
+
msgid "Same page"
|
500 |
+
msgstr ""
|
501 |
+
|
502 |
+
#: views/settings.php:328
|
503 |
+
msgid "Choose how the links will open."
|
504 |
+
msgstr ""
|
505 |
+
|
506 |
+
# @ wp-maintenance-mode
|
507 |
+
#: views/settings.php:376
|
508 |
+
msgid "Contact"
|
509 |
+
msgstr "Contato"
|
510 |
+
|
511 |
+
# @ wp-maintenance-mode
|
512 |
+
#: views/settings.php:381
|
513 |
+
msgid "Show contact?"
|
514 |
+
msgstr "Mostrar Contato?"
|
515 |
+
|
516 |
+
# @ wp-maintenance-mode
|
517 |
+
#: views/settings.php:390
|
518 |
+
msgid "Email address"
|
519 |
+
msgstr "Endereço de E-mail"
|
520 |
+
|
521 |
+
# @ wp-maintenance-mode
|
522 |
+
#: views/settings.php:396
|
523 |
+
msgid "Effects"
|
524 |
+
msgstr "Efeitos"
|
525 |
+
|
526 |
+
#: views/settings.php:399
|
527 |
+
msgid "Move top - Move bottom"
|
528 |
+
msgstr ""
|
529 |
+
|
530 |
+
#: views/settings.php:400
|
531 |
+
msgid "Zoom - Zoomed"
|
532 |
+
msgstr ""
|
533 |
+
|
534 |
+
#: views/settings.php:401
|
535 |
+
msgid "Fold - Unfold"
|
536 |
+
msgstr ""
|
537 |
+
|
538 |
+
#: views/settings.php:408
|
539 |
+
msgid "Google Analytics"
|
540 |
+
msgstr ""
|
541 |
+
|
542 |
+
#: views/settings.php:413
|
543 |
+
msgid "Use Google Analytics?"
|
544 |
+
msgstr ""
|
545 |
+
|
546 |
+
#: views/settings.php:422
|
547 |
+
msgid "Tracking code"
|
548 |
+
msgstr ""
|
549 |
+
|
550 |
+
# @ wp-maintenance-mode
|
551 |
+
#: views/sidebar.php:3
|
552 |
+
msgid "Plugin Info"
|
553 |
+
msgstr "Informações do Plugin"
|
554 |
+
|
555 |
+
# @ wp-maintenance-mode
|
556 |
+
#: views/sidebar.php:13
|
557 |
+
msgid "Author"
|
558 |
+
msgstr "Autor"
|
559 |
+
|
560 |
+
# @ wp-maintenance-mode
|
561 |
+
#: views/sidebar.php:14
|
562 |
+
msgid "Website"
|
563 |
+
msgstr "Site"
|
564 |
+
|
565 |
+
# @ wp-maintenance-mode
|
566 |
+
#: views/sidebar.php:15
|
567 |
+
msgid "Twitter"
|
568 |
+
msgstr "Twitter"
|
569 |
+
|
570 |
+
# @ wp-maintenance-mode
|
571 |
+
#: views/sidebar.php:16
|
572 |
+
msgid "GitHub"
|
573 |
+
msgstr "GitHub"
|
574 |
+
|
575 |
+
#: views/sidebar.php:27
|
576 |
+
msgid "Other products"
|
577 |
+
msgstr ""
|
578 |
+
|
579 |
+
# @ wp-maintenance-mode
|
580 |
+
#: views/sidebar.php:44
|
581 |
+
msgid "Resources"
|
582 |
+
msgstr "Recursos"
|
583 |
+
|
584 |
+
# @ wp-maintenance-mode
|
585 |
+
#~ msgid "You successfuly subscribed. Thanks!"
|
586 |
+
#~ msgstr "Você foi inscrito com sucesso. Obrigado!"
|
587 |
+
|
588 |
+
# @ wp-maintenance-mode
|
589 |
+
#~ msgid "Which user role is allowed to access the backend of this blog?"
|
590 |
+
#~ msgstr ""
|
591 |
+
#~ "Qual o papel do usuário tem permissão para acessar o backend deste blog?"
|
592 |
+
|
593 |
+
# @ wp-maintenance-mode
|
594 |
+
#~ msgid "Which user role is allowed to access the frontend of this blog?"
|
595 |
+
#~ msgstr ""
|
596 |
+
#~ "Qual o papel do usuário tem permissão para acessar a interface deste blog?"
|
597 |
+
|
598 |
+
# @ wp-maintenance-mode
|
599 |
+
#~ msgid ""
|
600 |
+
#~ "If you want to redirect a user to a URL (which is not the WordPress "
|
601 |
+
#~ "dashboard) after login, then define a URL (incl. http://)"
|
602 |
+
#~ msgstr ""
|
603 |
+
#~ "Se você deseja redirecionar o usuário para uma URL (que não é o painel "
|
604 |
+
#~ "administrativo) após o login, em seguida, definir uma URL (incluindo "
|
605 |
+
#~ "http:. //)"
|
Binary file
|
@@ -1,463 +1,543 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: WP Maintenance Mode 2.0.
|
4 |
-
"POT-Creation-Date:
|
5 |
-
"PO-Revision-Date:
|
6 |
-
"Last-Translator: Pedro Mendonça <ped.gaspar@gmail.com>\n"
|
7 |
-
"Language-Team: Pedro Mendonça <ped.gaspar@gmail.com>\n"
|
8 |
-
"Language: pt_PT\n"
|
9 |
-
"MIME-Version: 1.0\n"
|
10 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
-
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"X-Generator: Poedit 1.
|
13 |
-
"X-Poedit-Basepath:
|
14 |
-
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
-
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
-
"X-Poedit-KeywordsList: __;_e
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
"
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
"
|
44 |
-
msgstr ""
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
"
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
msgstr "
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
#:
|
96 |
-
msgid "
|
97 |
-
msgstr "
|
98 |
-
|
99 |
-
#:
|
100 |
-
msgid "
|
101 |
-
msgstr "
|
102 |
-
|
103 |
-
#:
|
104 |
-
msgid "
|
105 |
-
msgstr "
|
106 |
-
|
107 |
-
#:
|
108 |
-
msgid "
|
109 |
-
msgstr "
|
110 |
-
|
111 |
-
#:
|
112 |
-
msgid "
|
113 |
-
msgstr "
|
114 |
-
|
115 |
-
#: views/
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
#: views/
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
#: views/settings.php:
|
181 |
-
msgid "
|
182 |
-
msgstr "
|
183 |
-
|
184 |
-
#: views/settings.php:
|
185 |
-
msgid "
|
186 |
-
msgstr ""
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
msgstr ""
|
199 |
-
|
200 |
-
|
201 |
-
"
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
"
|
222 |
-
"
|
223 |
-
|
224 |
-
|
225 |
-
"
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
"
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
msgstr "
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
msgstr "
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
msgstr "
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: WP Maintenance Mode 2.0.4\n"
|
4 |
+
"POT-Creation-Date: 2016-06-17 03:28+0300\n"
|
5 |
+
"PO-Revision-Date: 2016-06-17 03:28+0300\n"
|
6 |
+
"Last-Translator: Pedro Mendonça <ped.gaspar@gmail.com>\n"
|
7 |
+
"Language-Team: Pedro Mendonça <ped.gaspar@gmail.com>\n"
|
8 |
+
"Language: pt_PT\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 1.8.8\n"
|
13 |
+
"X-Poedit-Basepath: ..\n"
|
14 |
+
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
17 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
|
18 |
+
"esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
|
19 |
+
"X-Poedit-SearchPath-0: .\n"
|
20 |
+
"X-Poedit-SearchPath-1: views\n"
|
21 |
+
"X-Poedit-SearchPath-2: includes/classes\n"
|
22 |
+
|
23 |
+
#: includes/classes/wp-maintenance-mode-admin.php:121
|
24 |
+
#: includes/classes/wp-maintenance-mode-admin.php:159
|
25 |
+
#: includes/classes/wp-maintenance-mode-admin.php:181
|
26 |
+
msgid "You do not have access to this resource."
|
27 |
+
msgstr ""
|
28 |
+
|
29 |
+
#: includes/classes/wp-maintenance-mode-admin.php:165 views/settings.php:295
|
30 |
+
#, php-format
|
31 |
+
msgid "You have %d subscriber(s)"
|
32 |
+
msgstr "Tem %d subscritor(es)"
|
33 |
+
|
34 |
+
#: includes/classes/wp-maintenance-mode-admin.php:186
|
35 |
+
msgid "The tab slug must not be empty."
|
36 |
+
msgstr ""
|
37 |
+
|
38 |
+
#: includes/classes/wp-maintenance-mode-admin.php:191
|
39 |
+
msgid "The tab slug must exist."
|
40 |
+
msgstr ""
|
41 |
+
|
42 |
+
#: includes/classes/wp-maintenance-mode-admin.php:211
|
43 |
+
msgid "WP Maintenance Mode"
|
44 |
+
msgstr "WP Maintenance Mode"
|
45 |
+
|
46 |
+
#: includes/classes/wp-maintenance-mode-admin.php:425
|
47 |
+
msgid "Settings"
|
48 |
+
msgstr "Definições"
|
49 |
+
|
50 |
+
#: includes/classes/wp-maintenance-mode-admin.php:444
|
51 |
+
#, php-format
|
52 |
+
msgid ""
|
53 |
+
"The Maintenance Mode is <strong>active</strong>. Please don't forget to <a "
|
54 |
+
"href=\"%s\">deactivate</a> as soon as you are done."
|
55 |
+
msgstr ""
|
56 |
+
"O modo de manutenção está <strong>activo</strong>. Por favor não se esqueça "
|
57 |
+
"de <a href=\"%s\">desactivar</a> assim que termine."
|
58 |
+
|
59 |
+
#: includes/classes/wp-maintenance-mode-admin.php:481
|
60 |
+
msgid "Notice key cannot be empty."
|
61 |
+
msgstr ""
|
62 |
+
|
63 |
+
#: includes/classes/wp-maintenance-mode.php:103
|
64 |
+
#: includes/classes/wp-maintenance-mode.php:104
|
65 |
+
msgid "Maintenance mode"
|
66 |
+
msgstr "Modo de manutenção"
|
67 |
+
|
68 |
+
#: includes/classes/wp-maintenance-mode.php:106
|
69 |
+
msgid ""
|
70 |
+
"<p>Sorry for the inconvenience.<br />Our website is currently undergoing "
|
71 |
+
"scheduled maintenance.<br />Thank you for your understanding.</p>"
|
72 |
+
msgstr ""
|
73 |
+
"<p>Desculpe pela inconveniência.<br />O site está neste momento numa "
|
74 |
+
"manutenção agendada.<br />Obrigado pela sua compreensão.</p>"
|
75 |
+
|
76 |
+
#: includes/classes/wp-maintenance-mode.php:124
|
77 |
+
msgid "Notify me when it's ready"
|
78 |
+
msgstr "Notificar-me quando estiver disponível."
|
79 |
+
|
80 |
+
#: includes/classes/wp-maintenance-mode.php:259
|
81 |
+
#, php-format
|
82 |
+
msgid ""
|
83 |
+
"WP Maintenance Mode plugin was relaunched and you MUST revise <a href=\"%s"
|
84 |
+
"\">settings</a>."
|
85 |
+
msgstr ""
|
86 |
+
"O plugin WP Maintenance Mode foi reactivado e DEVE rever as suas <a href=\"%s"
|
87 |
+
"\">definições</a>."
|
88 |
+
|
89 |
+
#: includes/classes/wp-maintenance-mode.php:449
|
90 |
+
#: includes/classes/wp-maintenance-mode.php:463
|
91 |
+
msgid "Maintenance Mode"
|
92 |
+
msgstr "Modo de manutenção"
|
93 |
+
|
94 |
+
#: includes/classes/wp-maintenance-mode.php:687
|
95 |
+
#: includes/classes/wp-maintenance-mode.php:721 views/maintenance.php:85
|
96 |
+
msgid "Please enter a valid email address."
|
97 |
+
msgstr "Por favor introduza um endereço de email válido."
|
98 |
+
|
99 |
+
#: includes/classes/wp-maintenance-mode.php:699
|
100 |
+
msgid "You successfully subscribed. Thanks!"
|
101 |
+
msgstr ""
|
102 |
+
|
103 |
+
#: includes/classes/wp-maintenance-mode.php:717
|
104 |
+
msgid "All fields required."
|
105 |
+
msgstr "Todos os campos são necessários."
|
106 |
+
|
107 |
+
#: includes/classes/wp-maintenance-mode.php:726
|
108 |
+
msgid "Message via contact"
|
109 |
+
msgstr "Mensagem via formulário de contacto"
|
110 |
+
|
111 |
+
#: includes/classes/wp-maintenance-mode.php:738
|
112 |
+
msgid "Your email was sent to the website administrator. Thanks!"
|
113 |
+
msgstr "O seu email foi enviado ao administrador do site. Obrigado!"
|
114 |
+
|
115 |
+
#: views/contact.php:34
|
116 |
+
#, php-format
|
117 |
+
msgid "You have been contacted via %s."
|
118 |
+
msgstr ""
|
119 |
+
|
120 |
+
#: views/contact.php:50
|
121 |
+
msgid "Name:"
|
122 |
+
msgstr ""
|
123 |
+
|
124 |
+
#: views/contact.php:62
|
125 |
+
msgid "Email:"
|
126 |
+
msgstr ""
|
127 |
+
|
128 |
+
#: views/contact.php:74
|
129 |
+
msgid "Content:"
|
130 |
+
msgstr ""
|
131 |
+
|
132 |
+
#: views/loginform.php:8
|
133 |
+
msgid "Login"
|
134 |
+
msgstr "Iníciar sessão"
|
135 |
+
|
136 |
+
#: views/maintenance.php:42
|
137 |
+
msgid "your e-mail..."
|
138 |
+
msgstr "o seu email..."
|
139 |
+
|
140 |
+
#: views/maintenance.php:43 views/settings.php:270
|
141 |
+
msgid "Subscribe"
|
142 |
+
msgstr "Subscrever"
|
143 |
+
|
144 |
+
#: views/maintenance.php:84 views/sidebar.php:7
|
145 |
+
msgid "Name"
|
146 |
+
msgstr "Nome"
|
147 |
+
|
148 |
+
#: views/maintenance.php:84 views/maintenance.php:85 views/maintenance.php:87
|
149 |
+
msgid "This field is required."
|
150 |
+
msgstr ""
|
151 |
+
|
152 |
+
#: views/maintenance.php:85
|
153 |
+
msgid "E-mail"
|
154 |
+
msgstr "Email"
|
155 |
+
|
156 |
+
#: views/maintenance.php:87
|
157 |
+
msgid "Your message"
|
158 |
+
msgstr "A sua mensagem"
|
159 |
+
|
160 |
+
#: views/maintenance.php:88
|
161 |
+
msgid "Send"
|
162 |
+
msgstr "Enviar"
|
163 |
+
|
164 |
+
#: views/maintenance.php:93
|
165 |
+
msgid "Contact us"
|
166 |
+
msgstr "Contacte-nos"
|
167 |
+
|
168 |
+
#: views/maintenance.php:98
|
169 |
+
msgid "Dashboard"
|
170 |
+
msgstr "Painel de administração"
|
171 |
+
|
172 |
+
#: views/settings.php:6
|
173 |
+
msgid "Settings saved."
|
174 |
+
msgstr "Definições guardadas."
|
175 |
+
|
176 |
+
#: views/settings.php:13
|
177 |
+
msgid "General"
|
178 |
+
msgstr "Geral"
|
179 |
+
|
180 |
+
#: views/settings.php:14
|
181 |
+
msgid "Design"
|
182 |
+
msgstr "Design"
|
183 |
+
|
184 |
+
#: views/settings.php:15
|
185 |
+
msgid "Modules"
|
186 |
+
msgstr "Módulos"
|
187 |
+
|
188 |
+
#: views/settings.php:24
|
189 |
+
msgid "Status"
|
190 |
+
msgstr "Estado"
|
191 |
+
|
192 |
+
#: views/settings.php:26
|
193 |
+
msgid "Activated"
|
194 |
+
msgstr "Activado"
|
195 |
+
|
196 |
+
#: views/settings.php:27
|
197 |
+
msgid "Deactivated"
|
198 |
+
msgstr "Desactivado"
|
199 |
+
|
200 |
+
#: views/settings.php:31
|
201 |
+
msgid "Bypass for Search Bots"
|
202 |
+
msgstr "Bypass para robôs de pesquisa"
|
203 |
+
|
204 |
+
#: views/settings.php:34 views/settings.php:104 views/settings.php:114
|
205 |
+
#: views/settings.php:242 views/settings.php:278 views/settings.php:316
|
206 |
+
#: views/settings.php:384 views/settings.php:416
|
207 |
+
msgid "Yes"
|
208 |
+
msgstr "Sim"
|
209 |
+
|
210 |
+
#: views/settings.php:35 views/settings.php:105 views/settings.php:115
|
211 |
+
#: views/settings.php:243 views/settings.php:279 views/settings.php:317
|
212 |
+
#: views/settings.php:385 views/settings.php:417
|
213 |
+
msgid "No"
|
214 |
+
msgstr "Não"
|
215 |
+
|
216 |
+
#: views/settings.php:37
|
217 |
+
msgid "Allow Search Bots to bypass maintenance mode?"
|
218 |
+
msgstr "Permitir que os robôs de pesquisa ultrapassem o modo de manutenção?"
|
219 |
+
|
220 |
+
#: views/settings.php:41
|
221 |
+
msgid "Backend Role"
|
222 |
+
msgstr "Perfil de utilizador de administração"
|
223 |
+
|
224 |
+
#: views/settings.php:43 views/settings.php:59
|
225 |
+
msgid "Select role(s)"
|
226 |
+
msgstr ""
|
227 |
+
|
228 |
+
#: views/settings.php:53
|
229 |
+
msgid ""
|
230 |
+
"Which user role is allowed to access the backend of this blog? "
|
231 |
+
"Administrators will always have access."
|
232 |
+
msgstr ""
|
233 |
+
|
234 |
+
#: views/settings.php:57
|
235 |
+
msgid "Frontend Role"
|
236 |
+
msgstr "Perfil de utilizador da frente do site"
|
237 |
+
|
238 |
+
#: views/settings.php:69
|
239 |
+
msgid ""
|
240 |
+
"Which user role is allowed to access the frontend of this blog? "
|
241 |
+
"Administrators will always have access."
|
242 |
+
msgstr ""
|
243 |
+
|
244 |
+
#: views/settings.php:73
|
245 |
+
msgid "Robots Meta Tag"
|
246 |
+
msgstr "Metatag para robôs"
|
247 |
+
|
248 |
+
#: views/settings.php:79
|
249 |
+
msgid ""
|
250 |
+
"The robots meta tag lets you use a granular, page-specific approach to "
|
251 |
+
"control how an individual page should be indexed and served to users in "
|
252 |
+
"search results."
|
253 |
+
msgstr ""
|
254 |
+
"A metatag de robôs permite usar uma abordagem por página específica para "
|
255 |
+
"controlar como cada página individual deve ser indexada e disponibilizada "
|
256 |
+
"aos utilizadores nos seus resultados de pesquisa."
|
257 |
+
|
258 |
+
#: views/settings.php:83
|
259 |
+
msgid "Redirection"
|
260 |
+
msgstr "Redireccionar"
|
261 |
+
|
262 |
+
#: views/settings.php:86
|
263 |
+
msgid ""
|
264 |
+
"If you want to redirect a user (with no access to Dashboard/Backend) to a "
|
265 |
+
"URL (different from WordPress Dashboard URL) after login, then define a URL "
|
266 |
+
"(incl. http://)"
|
267 |
+
msgstr ""
|
268 |
+
|
269 |
+
#: views/settings.php:90
|
270 |
+
msgid "Exclude"
|
271 |
+
msgstr "Excluir"
|
272 |
+
|
273 |
+
#: views/settings.php:97
|
274 |
+
msgid ""
|
275 |
+
"Exclude feed, pages, archives or IPs from maintenance mode. Add one slug / "
|
276 |
+
"IP per line!"
|
277 |
+
msgstr ""
|
278 |
+
"Excluir feeds, páginas, arquivos ou IPs do modo de manutenção. Adicionar um "
|
279 |
+
"URL / IP por cada linha!"
|
280 |
+
|
281 |
+
#: views/settings.php:101
|
282 |
+
msgid "Notice"
|
283 |
+
msgstr "Notificações"
|
284 |
+
|
285 |
+
#: views/settings.php:107
|
286 |
+
msgid "Do you want to see notices when maintenance mode is activated?"
|
287 |
+
msgstr ""
|
288 |
+
"Pretende ver notificações enquanto o modo de manutenção estiver activo?"
|
289 |
+
|
290 |
+
#: views/settings.php:111
|
291 |
+
msgid "Dashboard link"
|
292 |
+
msgstr "Ligação para o painel de administração"
|
293 |
+
|
294 |
+
#: views/settings.php:117
|
295 |
+
msgid ""
|
296 |
+
"Do you want to add a link to the dashboard on your maintenance mode page?"
|
297 |
+
msgstr ""
|
298 |
+
"Pretende deixar uma ligação para o painel de administração no seu modo de "
|
299 |
+
"manutenção?"
|
300 |
+
|
301 |
+
#: views/settings.php:125 views/settings.php:228 views/settings.php:432
|
302 |
+
msgid "Save settings"
|
303 |
+
msgstr "Guardar definições"
|
304 |
+
|
305 |
+
#: views/settings.php:126 views/settings.php:229 views/settings.php:433
|
306 |
+
msgid "Reset settings"
|
307 |
+
msgstr "Repor definições"
|
308 |
+
|
309 |
+
#: views/settings.php:131
|
310 |
+
msgid "Content"
|
311 |
+
msgstr "Conteúdo"
|
312 |
+
|
313 |
+
#: views/settings.php:136
|
314 |
+
msgid "Title (HTML tag)"
|
315 |
+
msgstr "Título (etiqueta HTML)"
|
316 |
+
|
317 |
+
#: views/settings.php:142
|
318 |
+
msgid "Heading"
|
319 |
+
msgstr "Cabeçalho"
|
320 |
+
|
321 |
+
#: views/settings.php:149 views/settings.php:284
|
322 |
+
msgid "Text"
|
323 |
+
msgstr "Texto"
|
324 |
+
|
325 |
+
#: views/settings.php:169
|
326 |
+
msgid "Background"
|
327 |
+
msgstr "Fundo"
|
328 |
+
|
329 |
+
#: views/settings.php:174
|
330 |
+
msgid "Choose type"
|
331 |
+
msgstr "Escolher tipo"
|
332 |
+
|
333 |
+
#: views/settings.php:177
|
334 |
+
msgid "Custom color"
|
335 |
+
msgstr "Cor personalizada"
|
336 |
+
|
337 |
+
#: views/settings.php:178
|
338 |
+
msgid "Uploaded background"
|
339 |
+
msgstr "Fundo carregado"
|
340 |
+
|
341 |
+
#: views/settings.php:179
|
342 |
+
msgid "Predefined background"
|
343 |
+
msgstr "Fundo predefinido"
|
344 |
+
|
345 |
+
#: views/settings.php:184
|
346 |
+
msgid "Choose color"
|
347 |
+
msgstr "Escolher cor"
|
348 |
+
|
349 |
+
#: views/settings.php:190
|
350 |
+
msgid "Upload background"
|
351 |
+
msgstr "Carregar fundo"
|
352 |
+
|
353 |
+
#: views/settings.php:194
|
354 |
+
msgid "Backgrounds should have 1920x1280 px size."
|
355 |
+
msgstr "Fundos deverão ter 1920x1280 px de tamanho."
|
356 |
+
|
357 |
+
#: views/settings.php:199
|
358 |
+
msgid "Choose background"
|
359 |
+
msgstr "Escolher fundo"
|
360 |
+
|
361 |
+
#: views/settings.php:201
|
362 |
+
#, php-format
|
363 |
+
msgid "source <a href=\"%s\" target=\"_blank\">Free Photos</a>"
|
364 |
+
msgstr "fonte <a href=\"%s\" target=\"_blank\">fotos gratuitas</a>"
|
365 |
+
|
366 |
+
#: views/settings.php:234
|
367 |
+
msgid "Countdown"
|
368 |
+
msgstr "Contagem decrescente"
|
369 |
+
|
370 |
+
#: views/settings.php:239
|
371 |
+
msgid "Show countdown?"
|
372 |
+
msgstr "Mostrar contagem decrescente?"
|
373 |
+
|
374 |
+
#: views/settings.php:248
|
375 |
+
msgid "Start date"
|
376 |
+
msgstr "Data de início"
|
377 |
+
|
378 |
+
#: views/settings.php:254
|
379 |
+
msgid "Countdown (remaining time)"
|
380 |
+
msgstr "Contagem decrescente (tempo que falta)"
|
381 |
+
|
382 |
+
#: views/settings.php:256
|
383 |
+
msgid "Days"
|
384 |
+
msgstr "Dias"
|
385 |
+
|
386 |
+
#: views/settings.php:257
|
387 |
+
msgid "Hours"
|
388 |
+
msgstr "Horas"
|
389 |
+
|
390 |
+
#: views/settings.php:258
|
391 |
+
msgid "Minutes"
|
392 |
+
msgstr "Minutos"
|
393 |
+
|
394 |
+
#: views/settings.php:262
|
395 |
+
msgid "Color"
|
396 |
+
msgstr "Cor"
|
397 |
+
|
398 |
+
#: views/settings.php:275
|
399 |
+
msgid "Show subscribe?"
|
400 |
+
msgstr "Mostrar subscrição?"
|
401 |
+
|
402 |
+
#: views/settings.php:291
|
403 |
+
msgid "Stats"
|
404 |
+
msgstr "Estatísticas"
|
405 |
+
|
406 |
+
#: views/settings.php:300
|
407 |
+
msgid "Export as CSV"
|
408 |
+
msgstr "Exportar como CSV"
|
409 |
+
|
410 |
+
#: views/settings.php:301
|
411 |
+
msgid "Empty subscribers list"
|
412 |
+
msgstr ""
|
413 |
+
|
414 |
+
#: views/settings.php:308
|
415 |
+
msgid "Social Networks"
|
416 |
+
msgstr "Redes sociais"
|
417 |
+
|
418 |
+
#: views/settings.php:313
|
419 |
+
msgid "Show social networks?"
|
420 |
+
msgstr "Mostrar redes sociais?"
|
421 |
+
|
422 |
+
#: views/settings.php:322
|
423 |
+
msgid "Links target?"
|
424 |
+
msgstr "Destino das ligações?"
|
425 |
+
|
426 |
+
#: views/settings.php:325
|
427 |
+
msgid "New page"
|
428 |
+
msgstr "Nova página"
|
429 |
+
|
430 |
+
#: views/settings.php:326
|
431 |
+
msgid "Same page"
|
432 |
+
msgstr "Mesma página"
|
433 |
+
|
434 |
+
#: views/settings.php:328
|
435 |
+
msgid "Choose how the links will open."
|
436 |
+
msgstr "Escolher como abrir as ligações."
|
437 |
+
|
438 |
+
#: views/settings.php:376
|
439 |
+
msgid "Contact"
|
440 |
+
msgstr "Contacto"
|
441 |
+
|
442 |
+
#: views/settings.php:381
|
443 |
+
msgid "Show contact?"
|
444 |
+
msgstr "Mostrar contacto?"
|
445 |
+
|
446 |
+
#: views/settings.php:390
|
447 |
+
msgid "Email address"
|
448 |
+
msgstr "Endereço de email"
|
449 |
+
|
450 |
+
#: views/settings.php:396
|
451 |
+
msgid "Effects"
|
452 |
+
msgstr "Efeitos"
|
453 |
+
|
454 |
+
#: views/settings.php:399
|
455 |
+
msgid "Move top - Move bottom"
|
456 |
+
msgstr "Subir - descer"
|
457 |
+
|
458 |
+
#: views/settings.php:400
|
459 |
+
msgid "Zoom - Zoomed"
|
460 |
+
msgstr "Zoom"
|
461 |
+
|
462 |
+
#: views/settings.php:401
|
463 |
+
msgid "Fold - Unfold"
|
464 |
+
msgstr "Dobrar - desdrobrar"
|
465 |
+
|
466 |
+
#: views/settings.php:408
|
467 |
+
msgid "Google Analytics"
|
468 |
+
msgstr "Google Analytics"
|
469 |
+
|
470 |
+
#: views/settings.php:413
|
471 |
+
msgid "Use Google Analytics?"
|
472 |
+
msgstr "Utilizar Google Analytics?"
|
473 |
+
|
474 |
+
#: views/settings.php:422
|
475 |
+
msgid "Tracking code"
|
476 |
+
msgstr "Código de acompanhamento"
|
477 |
+
|
478 |
+
#: views/sidebar.php:3
|
479 |
+
msgid "Plugin Info"
|
480 |
+
msgstr "Informação do plugin"
|
481 |
+
|
482 |
+
#: views/sidebar.php:13
|
483 |
+
msgid "Author"
|
484 |
+
msgstr "Autor"
|
485 |
+
|
486 |
+
#: views/sidebar.php:14
|
487 |
+
msgid "Website"
|
488 |
+
msgstr "Site"
|
489 |
+
|
490 |
+
#: views/sidebar.php:15
|
491 |
+
msgid "Twitter"
|
492 |
+
msgstr "Twitter"
|
493 |
+
|
494 |
+
#: views/sidebar.php:16
|
495 |
+
msgid "GitHub"
|
496 |
+
msgstr "GitHub"
|
497 |
+
|
498 |
+
#: views/sidebar.php:27
|
499 |
+
msgid "Other products"
|
500 |
+
msgstr ""
|
501 |
+
|
502 |
+
#: views/sidebar.php:44
|
503 |
+
msgid "Resources"
|
504 |
+
msgstr "Recursos"
|
505 |
+
|
506 |
+
#~ msgid "You successfuly subscribed. Thanks!"
|
507 |
+
#~ msgstr "Subscreveu com sucesso. Obrigado!"
|
508 |
+
|
509 |
+
#~ msgid "Which user role is allowed to access the backend of this blog?"
|
510 |
+
#~ msgstr ""
|
511 |
+
#~ "Que perfil de utilizador tem permissão de acesso à administração deste "
|
512 |
+
#~ "site?"
|
513 |
+
|
514 |
+
#~ msgid "Which user role is allowed to access the frontend of this blog?"
|
515 |
+
#~ msgstr ""
|
516 |
+
#~ "Que perfil de utilizador tem permissão de acesso à frente deste site?"
|
517 |
+
|
518 |
+
#~ msgid ""
|
519 |
+
#~ "If you want to redirect a user to a URL (which is not the WordPress "
|
520 |
+
#~ "dashboard) after login, then define a URL (incl. http://)"
|
521 |
+
#~ msgstr ""
|
522 |
+
#~ "Se pretende redireccionar um utilizador para um URL (que não seja o "
|
523 |
+
#~ "painel do WordPress) após início de sessão, insira um URL (incluindo "
|
524 |
+
#~ "http://)"
|
525 |
+
|
526 |
+
#~ msgid "WordPress Themes"
|
527 |
+
#~ msgstr "Temas WordPress"
|
528 |
+
|
529 |
+
#~ msgid "source <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
530 |
+
#~ msgstr "fonte <a href=\"%\" target=\"_blank\">fotos gratuitas</a>"
|
531 |
+
|
532 |
+
#~ msgid "Subscribe now for early access to new WordPress themes."
|
533 |
+
#~ msgstr ""
|
534 |
+
#~ "Subscreva agora para ter acesso prioritário aos novos temas do WordPress."
|
535 |
+
|
536 |
+
#~ msgid "Enter your email address"
|
537 |
+
#~ msgstr "Insira o seu endereço de email"
|
538 |
+
|
539 |
+
#~ msgid "News"
|
540 |
+
#~ msgstr "Notícias"
|
541 |
+
|
542 |
+
#~ msgid "Developed by <a href=\"%s\">Designmodo</a>"
|
543 |
+
#~ msgstr "Desenvolvido por <a href=\"%s\">Designmodo</a>"
|
Binary file
|
@@ -1,470 +1,553 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: WP Maintenance Mode 2.0.
|
4 |
-
"POT-Creation-Date:
|
5 |
-
"PO-Revision-Date:
|
6 |
-
"Last-Translator: \n"
|
7 |
-
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
-
"Language:
|
9 |
-
"MIME-Version: 1.0\n"
|
10 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
-
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"X-Generator: Poedit 1.
|
13 |
-
"X-Poedit-Basepath:
|
14 |
-
"Plural-Forms: nplurals=
|
15 |
-
"
|
16 |
-
"X-Poedit-
|
17 |
-
"X-Poedit-
|
18 |
-
"
|
19 |
-
"
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
#: includes/classes/wp-maintenance-mode-admin.php:
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
"
|
33 |
-
"
|
34 |
-
|
35 |
-
|
36 |
-
"
|
37 |
-
|
38 |
-
|
39 |
-
#: includes/classes/wp-maintenance-mode.php:
|
40 |
-
msgid "
|
41 |
-
msgstr "
|
42 |
-
|
43 |
-
#: includes/classes/wp-maintenance-mode.php:
|
44 |
-
msgid ""
|
45 |
-
"
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
#: includes/classes/wp-maintenance-mode.php:
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
"
|
59 |
-
|
60 |
-
|
61 |
-
"
|
62 |
-
"
|
63 |
-
|
64 |
-
#: includes/classes/wp-maintenance-mode.php:
|
65 |
-
#: includes/classes/wp-maintenance-mode.php:
|
66 |
-
msgid "Maintenance
|
67 |
-
msgstr "Mentenanta"
|
68 |
-
|
69 |
-
#: includes/classes/wp-maintenance-mode.php:
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
msgid "
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
#:
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
#: views/
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
"
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
"
|
203 |
-
"
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
#: views/settings.php:
|
214 |
-
msgid ""
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
"
|
219 |
-
|
220 |
-
"
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
"
|
229 |
-
"
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
"
|
242 |
-
|
243 |
-
#: views/settings.php:
|
244 |
-
msgid "
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
"
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
#: views/settings.php:
|
265 |
-
msgid "
|
266 |
-
msgstr "
|
267 |
-
|
268 |
-
#: views/settings.php:
|
269 |
-
msgid "
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
msgstr "
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
msgstr "
|
307 |
-
|
308 |
-
#: views/settings.php:
|
309 |
-
msgid "
|
310 |
-
msgstr "
|
311 |
-
|
312 |
-
#: views/settings.php:
|
313 |
-
msgid "
|
314 |
-
msgstr "
|
315 |
-
|
316 |
-
#: views/settings.php:
|
317 |
-
msgid "
|
318 |
-
msgstr "
|
319 |
-
|
320 |
-
#: views/settings.php:
|
321 |
-
msgid "
|
322 |
-
msgstr "
|
323 |
-
|
324 |
-
#: views/settings.php:
|
325 |
-
msgid "
|
326 |
-
msgstr "
|
327 |
-
|
328 |
-
#: views/settings.php:
|
329 |
-
msgid "
|
330 |
-
msgstr "
|
331 |
-
|
332 |
-
#: views/settings.php:
|
333 |
-
msgid "
|
334 |
-
msgstr "
|
335 |
-
|
336 |
-
#: views/settings.php:
|
337 |
-
msgid "
|
338 |
-
msgstr "
|
339 |
-
|
340 |
-
#: views/settings.php:
|
341 |
-
msgid "
|
342 |
-
msgstr "
|
343 |
-
|
344 |
-
#: views/settings.php:
|
345 |
-
msgid "
|
346 |
-
msgstr "
|
347 |
-
|
348 |
-
#: views/settings.php:
|
349 |
-
msgid "
|
350 |
-
msgstr "
|
351 |
-
|
352 |
-
#: views/settings.php:
|
353 |
-
msgid "
|
354 |
-
msgstr "
|
355 |
-
|
356 |
-
#: views/settings.php:
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
msgid "
|
371 |
-
msgstr "
|
372 |
-
|
373 |
-
#: views/settings.php:
|
374 |
-
msgid "
|
375 |
-
msgstr "
|
376 |
-
|
377 |
-
#: views/settings.php:
|
378 |
-
msgid "
|
379 |
-
msgstr "
|
380 |
-
|
381 |
-
#: views/settings.php:
|
382 |
-
msgid "
|
383 |
-
msgstr "
|
384 |
-
|
385 |
-
#: views/settings.php:
|
386 |
-
msgid "
|
387 |
-
msgstr "
|
388 |
-
|
389 |
-
#: views/settings.php:
|
390 |
-
msgid "
|
391 |
-
msgstr "
|
392 |
-
|
393 |
-
#: views/settings.php:
|
394 |
-
msgid "
|
395 |
-
msgstr "
|
396 |
-
|
397 |
-
#: views/settings.php:
|
398 |
-
msgid "
|
399 |
-
msgstr "
|
400 |
-
|
401 |
-
#: views/settings.php:
|
402 |
-
msgid "
|
403 |
-
msgstr "
|
404 |
-
|
405 |
-
#: views/settings.php:
|
406 |
-
msgid "
|
407 |
-
msgstr "
|
408 |
-
|
409 |
-
#: views/settings.php:
|
410 |
-
msgid "
|
411 |
-
msgstr "
|
412 |
-
|
413 |
-
#: views/settings.php:
|
414 |
-
msgid "
|
415 |
-
msgstr "
|
416 |
-
|
417 |
-
#: views/settings.php:
|
418 |
-
msgid "
|
419 |
-
msgstr "
|
420 |
-
|
421 |
-
#: views/settings.php:
|
422 |
-
msgid "
|
423 |
-
msgstr "
|
424 |
-
|
425 |
-
#: views/settings.php:
|
426 |
-
msgid "
|
427 |
-
msgstr "
|
428 |
-
|
429 |
-
#: views/
|
430 |
-
msgid "
|
431 |
-
msgstr "
|
432 |
-
|
433 |
-
#: views/
|
434 |
-
msgid "
|
435 |
-
msgstr "
|
436 |
-
|
437 |
-
#: views/
|
438 |
-
msgid "
|
439 |
-
msgstr "
|
440 |
-
|
441 |
-
#: views/
|
442 |
-
msgid "
|
443 |
-
msgstr "
|
444 |
-
|
445 |
-
#: views/
|
446 |
-
msgid "
|
447 |
-
msgstr "
|
448 |
-
|
449 |
-
#: views/
|
450 |
-
msgid "
|
451 |
-
msgstr "
|
452 |
-
|
453 |
-
#: views/
|
454 |
-
msgid "
|
455 |
-
msgstr "
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: WP Maintenance Mode 2.0.4\n"
|
4 |
+
"POT-Creation-Date: 2016-06-17 03:34+0300\n"
|
5 |
+
"PO-Revision-Date: 2016-06-17 03:34+0300\n"
|
6 |
+
"Last-Translator: \n"
|
7 |
+
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
+
"Language: ro\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 1.8.8\n"
|
13 |
+
"X-Poedit-Basepath: ..\n"
|
14 |
+
"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?"
|
15 |
+
"2:1));\n"
|
16 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
17 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
18 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
|
19 |
+
"esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
|
20 |
+
"X-Poedit-SearchPath-0: .\n"
|
21 |
+
"X-Poedit-SearchPath-1: includes/classes\n"
|
22 |
+
"X-Poedit-SearchPath-2: views\n"
|
23 |
+
|
24 |
+
#: includes/classes/wp-maintenance-mode-admin.php:121
|
25 |
+
#: includes/classes/wp-maintenance-mode-admin.php:159
|
26 |
+
#: includes/classes/wp-maintenance-mode-admin.php:181
|
27 |
+
msgid "You do not have access to this resource."
|
28 |
+
msgstr "Nu aveti acces la aceasta resursa."
|
29 |
+
|
30 |
+
#: includes/classes/wp-maintenance-mode-admin.php:165 views/settings.php:295
|
31 |
+
#, php-format
|
32 |
+
msgid "You have %d subscriber(s)"
|
33 |
+
msgstr "Lista contine %d abonati"
|
34 |
+
|
35 |
+
#: includes/classes/wp-maintenance-mode-admin.php:186
|
36 |
+
msgid "The tab slug must not be empty."
|
37 |
+
msgstr "Identificatorul tabului nu trebuie sa fie gol."
|
38 |
+
|
39 |
+
#: includes/classes/wp-maintenance-mode-admin.php:191
|
40 |
+
msgid "The tab slug must exist."
|
41 |
+
msgstr "Identificatorul tabului trebuie sa existe."
|
42 |
+
|
43 |
+
#: includes/classes/wp-maintenance-mode-admin.php:211
|
44 |
+
msgid "WP Maintenance Mode"
|
45 |
+
msgstr "WP Maintenance Mode"
|
46 |
+
|
47 |
+
#: includes/classes/wp-maintenance-mode-admin.php:425
|
48 |
+
msgid "Settings"
|
49 |
+
msgstr "Setari"
|
50 |
+
|
51 |
+
#: includes/classes/wp-maintenance-mode-admin.php:444
|
52 |
+
#, php-format
|
53 |
+
msgid ""
|
54 |
+
"The Maintenance Mode is <strong>active</strong>. Please don't forget to <a "
|
55 |
+
"href=\"%s\">deactivate</a> as soon as you are done."
|
56 |
+
msgstr ""
|
57 |
+
"Modul de mentenanta este <strong>activ</strong>. Nu uita sa-l <a href=\"%s"
|
58 |
+
"\">dezactivezi</a> imediat dupa ce termini."
|
59 |
+
|
60 |
+
#: includes/classes/wp-maintenance-mode-admin.php:481
|
61 |
+
msgid "Notice key cannot be empty."
|
62 |
+
msgstr "Cheia de identificare a notificarii nu trebuie sa fie goala."
|
63 |
+
|
64 |
+
#: includes/classes/wp-maintenance-mode.php:103
|
65 |
+
#: includes/classes/wp-maintenance-mode.php:104
|
66 |
+
msgid "Maintenance mode"
|
67 |
+
msgstr "Mentenanta"
|
68 |
+
|
69 |
+
#: includes/classes/wp-maintenance-mode.php:106
|
70 |
+
msgid ""
|
71 |
+
"<p>Sorry for the inconvenience.<br />Our website is currently undergoing "
|
72 |
+
"scheduled maintenance.<br />Thank you for your understanding.</p>"
|
73 |
+
msgstr ""
|
74 |
+
"<p>Ne cerem scuze pentru inconvenienta.<br />Site-ul nostru se afla in "
|
75 |
+
"mentenanta.<br />Multumim pentru intelegere.</p>"
|
76 |
+
|
77 |
+
#: includes/classes/wp-maintenance-mode.php:124
|
78 |
+
msgid "Notify me when it's ready"
|
79 |
+
msgstr "Notifica-ma atunci cand procesul de mentenanta este gata"
|
80 |
+
|
81 |
+
#: includes/classes/wp-maintenance-mode.php:259
|
82 |
+
#, php-format
|
83 |
+
msgid ""
|
84 |
+
"WP Maintenance Mode plugin was relaunched and you MUST revise <a href=\"%s"
|
85 |
+
"\">settings</a>."
|
86 |
+
msgstr ""
|
87 |
+
"Plugin-ul WP Maintenance Mode a fost relansat si TREBUIE sa revedeti <a href="
|
88 |
+
"\"%s\">setarile</a> acestuia."
|
89 |
+
|
90 |
+
#: includes/classes/wp-maintenance-mode.php:449
|
91 |
+
#: includes/classes/wp-maintenance-mode.php:463
|
92 |
+
msgid "Maintenance Mode"
|
93 |
+
msgstr "Mentenanta"
|
94 |
+
|
95 |
+
#: includes/classes/wp-maintenance-mode.php:687
|
96 |
+
#: includes/classes/wp-maintenance-mode.php:721 views/maintenance.php:85
|
97 |
+
msgid "Please enter a valid email address."
|
98 |
+
msgstr "Te rog sa completezi o adresa de email valida."
|
99 |
+
|
100 |
+
#: includes/classes/wp-maintenance-mode.php:699
|
101 |
+
msgid "You successfully subscribed. Thanks!"
|
102 |
+
msgstr "Te-ai inscris cu succes in lista de contacte. Multumesc!"
|
103 |
+
|
104 |
+
#: includes/classes/wp-maintenance-mode.php:717
|
105 |
+
msgid "All fields required."
|
106 |
+
msgstr "Toate campurile sunt obligatorii."
|
107 |
+
|
108 |
+
#: includes/classes/wp-maintenance-mode.php:726
|
109 |
+
msgid "Message via contact"
|
110 |
+
msgstr "Mesaj trimis prin formularul de contact"
|
111 |
+
|
112 |
+
#: includes/classes/wp-maintenance-mode.php:738
|
113 |
+
msgid "Your email was sent to the website administrator. Thanks!"
|
114 |
+
msgstr "Emailul tau a fost trimis catre administratorul site-ului. Multumim!"
|
115 |
+
|
116 |
+
#: views/contact.php:34
|
117 |
+
#, php-format
|
118 |
+
msgid "You have been contacted via %s."
|
119 |
+
msgstr "Ai fost contactat de pe blogul %s."
|
120 |
+
|
121 |
+
#: views/contact.php:50
|
122 |
+
msgid "Name:"
|
123 |
+
msgstr "Nume:"
|
124 |
+
|
125 |
+
#: views/contact.php:62
|
126 |
+
msgid "Email:"
|
127 |
+
msgstr "Email:"
|
128 |
+
|
129 |
+
#: views/contact.php:74
|
130 |
+
msgid "Content:"
|
131 |
+
msgstr "Continut:"
|
132 |
+
|
133 |
+
#: views/loginform.php:8
|
134 |
+
msgid "Login"
|
135 |
+
msgstr "Autentificare"
|
136 |
+
|
137 |
+
#: views/maintenance.php:42
|
138 |
+
msgid "your e-mail..."
|
139 |
+
msgstr "emailul tau..."
|
140 |
+
|
141 |
+
#: views/maintenance.php:43 views/settings.php:270
|
142 |
+
msgid "Subscribe"
|
143 |
+
msgstr "Aboneaza-ma"
|
144 |
+
|
145 |
+
#: views/maintenance.php:84 views/sidebar.php:7
|
146 |
+
msgid "Name"
|
147 |
+
msgstr "Nume"
|
148 |
+
|
149 |
+
#: views/maintenance.php:84 views/maintenance.php:85 views/maintenance.php:87
|
150 |
+
msgid "This field is required."
|
151 |
+
msgstr "Acest camp este obligatoriu."
|
152 |
+
|
153 |
+
#: views/maintenance.php:85
|
154 |
+
msgid "E-mail"
|
155 |
+
msgstr "E-Mail"
|
156 |
+
|
157 |
+
#: views/maintenance.php:87
|
158 |
+
msgid "Your message"
|
159 |
+
msgstr "Mesajul tau"
|
160 |
+
|
161 |
+
#: views/maintenance.php:88
|
162 |
+
msgid "Send"
|
163 |
+
msgstr "Trimite"
|
164 |
+
|
165 |
+
#: views/maintenance.php:93
|
166 |
+
msgid "Contact us"
|
167 |
+
msgstr "Contacteaza-ne"
|
168 |
+
|
169 |
+
#: views/maintenance.php:98
|
170 |
+
msgid "Dashboard"
|
171 |
+
msgstr "Admin"
|
172 |
+
|
173 |
+
#: views/settings.php:6
|
174 |
+
msgid "Settings saved."
|
175 |
+
msgstr "Setarile au fost salvate."
|
176 |
+
|
177 |
+
#: views/settings.php:13
|
178 |
+
msgid "General"
|
179 |
+
msgstr "General"
|
180 |
+
|
181 |
+
#: views/settings.php:14
|
182 |
+
msgid "Design"
|
183 |
+
msgstr "Design"
|
184 |
+
|
185 |
+
#: views/settings.php:15
|
186 |
+
msgid "Modules"
|
187 |
+
msgstr "Module"
|
188 |
+
|
189 |
+
#: views/settings.php:24
|
190 |
+
msgid "Status"
|
191 |
+
msgstr "Status"
|
192 |
+
|
193 |
+
#: views/settings.php:26
|
194 |
+
msgid "Activated"
|
195 |
+
msgstr "Activat"
|
196 |
+
|
197 |
+
#: views/settings.php:27
|
198 |
+
msgid "Deactivated"
|
199 |
+
msgstr "Dezactivat"
|
200 |
+
|
201 |
+
#: views/settings.php:31
|
202 |
+
msgid "Bypass for Search Bots"
|
203 |
+
msgstr "Nu afisa pagina de mentenanta robotilor motoarelor de cautare"
|
204 |
+
|
205 |
+
#: views/settings.php:34 views/settings.php:104 views/settings.php:114
|
206 |
+
#: views/settings.php:242 views/settings.php:278 views/settings.php:316
|
207 |
+
#: views/settings.php:384 views/settings.php:416
|
208 |
+
msgid "Yes"
|
209 |
+
msgstr "Da"
|
210 |
+
|
211 |
+
#: views/settings.php:35 views/settings.php:105 views/settings.php:115
|
212 |
+
#: views/settings.php:243 views/settings.php:279 views/settings.php:317
|
213 |
+
#: views/settings.php:385 views/settings.php:417
|
214 |
+
msgid "No"
|
215 |
+
msgstr "Nu"
|
216 |
+
|
217 |
+
#: views/settings.php:37
|
218 |
+
msgid "Allow Search Bots to bypass maintenance mode?"
|
219 |
+
msgstr ""
|
220 |
+
"Dai voie robotilor motoarelor de cautare sa acceseze site-ul, fara a vedea "
|
221 |
+
"pagina de mentenanta?"
|
222 |
+
|
223 |
+
#: views/settings.php:41
|
224 |
+
msgid "Backend Role"
|
225 |
+
msgstr "Rol interfata administrare"
|
226 |
+
|
227 |
+
#: views/settings.php:43 views/settings.php:59
|
228 |
+
msgid "Select role(s)"
|
229 |
+
msgstr "Selecteaza rol(urile)"
|
230 |
+
|
231 |
+
#: views/settings.php:53
|
232 |
+
msgid ""
|
233 |
+
"Which user role is allowed to access the backend of this blog? "
|
234 |
+
"Administrators will always have access."
|
235 |
+
msgstr ""
|
236 |
+
"Care rol are acces la partea de backend a acestui blog? Administratorii vor "
|
237 |
+
"avea intotdeauna acces."
|
238 |
+
|
239 |
+
#: views/settings.php:57
|
240 |
+
msgid "Frontend Role"
|
241 |
+
msgstr "Rol interfata publica"
|
242 |
+
|
243 |
+
#: views/settings.php:69
|
244 |
+
msgid ""
|
245 |
+
"Which user role is allowed to access the frontend of this blog? "
|
246 |
+
"Administrators will always have access."
|
247 |
+
msgstr ""
|
248 |
+
"Care rol are acces la partea de frontend a acestui blog? Administratorii vor "
|
249 |
+
"avea intotdeauna acces."
|
250 |
+
|
251 |
+
#: views/settings.php:73
|
252 |
+
msgid "Robots Meta Tag"
|
253 |
+
msgstr "Meta Tag-ul \"robots\""
|
254 |
+
|
255 |
+
#: views/settings.php:79
|
256 |
+
msgid ""
|
257 |
+
"The robots meta tag lets you use a granular, page-specific approach to "
|
258 |
+
"control how an individual page should be indexed and served to users in "
|
259 |
+
"search results."
|
260 |
+
msgstr ""
|
261 |
+
"Meta tag-ul \"robots\" permite controlul asupra felului in care motoarele de "
|
262 |
+
"cautare indexeaza si servesc rezultatele pentru o anumita pagina."
|
263 |
+
|
264 |
+
#: views/settings.php:83
|
265 |
+
msgid "Redirection"
|
266 |
+
msgstr "Redirectionare"
|
267 |
+
|
268 |
+
#: views/settings.php:86
|
269 |
+
msgid ""
|
270 |
+
"If you want to redirect a user (with no access to Dashboard/Backend) to a "
|
271 |
+
"URL (different from WordPress Dashboard URL) after login, then define a URL "
|
272 |
+
"(incl. http://)"
|
273 |
+
msgstr ""
|
274 |
+
"Daca vrei sa redirectezi un utilizator (care nu are acces la Dashboard/"
|
275 |
+
"Backend) catre un URL (diferit de URL-ul Wordpress Dashboard) dupa "
|
276 |
+
"autentificare, atunci defineste un URL (incepe cu http://)"
|
277 |
+
|
278 |
+
#: views/settings.php:90
|
279 |
+
msgid "Exclude"
|
280 |
+
msgstr "Exclude"
|
281 |
+
|
282 |
+
#: views/settings.php:97
|
283 |
+
msgid ""
|
284 |
+
"Exclude feed, pages, archives or IPs from maintenance mode. Add one slug / "
|
285 |
+
"IP per line!"
|
286 |
+
msgstr ""
|
287 |
+
"Exclude rss feed, pagini, arhive ori IP-uri din modul de mentenanta. Adauga "
|
288 |
+
"cate slug/IP pe linie."
|
289 |
+
|
290 |
+
#: views/settings.php:101
|
291 |
+
msgid "Notice"
|
292 |
+
msgstr "Atentionare"
|
293 |
+
|
294 |
+
#: views/settings.php:107
|
295 |
+
msgid "Do you want to see notices when maintenance mode is activated?"
|
296 |
+
msgstr ""
|
297 |
+
"Doresti sa vezi atentionarea atunci cand modul de mentenanta este activat?"
|
298 |
+
|
299 |
+
#: views/settings.php:111
|
300 |
+
msgid "Dashboard link"
|
301 |
+
msgstr "Link catre admin"
|
302 |
+
|
303 |
+
#: views/settings.php:117
|
304 |
+
msgid ""
|
305 |
+
"Do you want to add a link to the dashboard on your maintenance mode page?"
|
306 |
+
msgstr "Doresti sa adaugi un link catre admin pe pagina de mentenanta?"
|
307 |
+
|
308 |
+
#: views/settings.php:125 views/settings.php:228 views/settings.php:432
|
309 |
+
msgid "Save settings"
|
310 |
+
msgstr "Salveaza setari"
|
311 |
+
|
312 |
+
#: views/settings.php:126 views/settings.php:229 views/settings.php:433
|
313 |
+
msgid "Reset settings"
|
314 |
+
msgstr "Reseteaza setari"
|
315 |
+
|
316 |
+
#: views/settings.php:131
|
317 |
+
msgid "Content"
|
318 |
+
msgstr "Continut"
|
319 |
+
|
320 |
+
#: views/settings.php:136
|
321 |
+
msgid "Title (HTML tag)"
|
322 |
+
msgstr "Titlu (tag HTML)"
|
323 |
+
|
324 |
+
#: views/settings.php:142
|
325 |
+
msgid "Heading"
|
326 |
+
msgstr "Subtitlu"
|
327 |
+
|
328 |
+
#: views/settings.php:149 views/settings.php:284
|
329 |
+
msgid "Text"
|
330 |
+
msgstr "Text"
|
331 |
+
|
332 |
+
#: views/settings.php:169
|
333 |
+
msgid "Background"
|
334 |
+
msgstr "Fundal"
|
335 |
+
|
336 |
+
#: views/settings.php:174
|
337 |
+
msgid "Choose type"
|
338 |
+
msgstr "Alege tip"
|
339 |
+
|
340 |
+
#: views/settings.php:177
|
341 |
+
msgid "Custom color"
|
342 |
+
msgstr "Culoare"
|
343 |
+
|
344 |
+
#: views/settings.php:178
|
345 |
+
msgid "Uploaded background"
|
346 |
+
msgstr "Imagine de fundal urcata de utilizator"
|
347 |
+
|
348 |
+
#: views/settings.php:179
|
349 |
+
msgid "Predefined background"
|
350 |
+
msgstr "Imagine de fundal predefinita"
|
351 |
+
|
352 |
+
#: views/settings.php:184
|
353 |
+
msgid "Choose color"
|
354 |
+
msgstr "Alege culoare"
|
355 |
+
|
356 |
+
#: views/settings.php:190
|
357 |
+
msgid "Upload background"
|
358 |
+
msgstr "Incarca imagine"
|
359 |
+
|
360 |
+
#: views/settings.php:194
|
361 |
+
msgid "Backgrounds should have 1920x1280 px size."
|
362 |
+
msgstr "Imaginea ar trebui sa fie 1920x1280 px"
|
363 |
+
|
364 |
+
#: views/settings.php:199
|
365 |
+
msgid "Choose background"
|
366 |
+
msgstr "Alege imagine"
|
367 |
+
|
368 |
+
#: views/settings.php:201
|
369 |
+
#, php-format
|
370 |
+
msgid "source <a href=\"%s\" target=\"_blank\">Free Photos</a>"
|
371 |
+
msgstr "sursa <a href=\"%s\" target=\"_blank\">Free Photos</a>"
|
372 |
+
|
373 |
+
#: views/settings.php:234
|
374 |
+
msgid "Countdown"
|
375 |
+
msgstr "Countdown"
|
376 |
+
|
377 |
+
#: views/settings.php:239
|
378 |
+
msgid "Show countdown?"
|
379 |
+
msgstr "Afiseaza countdown?"
|
380 |
+
|
381 |
+
#: views/settings.php:248
|
382 |
+
msgid "Start date"
|
383 |
+
msgstr "Data de inceput"
|
384 |
+
|
385 |
+
#: views/settings.php:254
|
386 |
+
msgid "Countdown (remaining time)"
|
387 |
+
msgstr "Countdown (timpul ramas)"
|
388 |
+
|
389 |
+
#: views/settings.php:256
|
390 |
+
msgid "Days"
|
391 |
+
msgstr "Zile"
|
392 |
+
|
393 |
+
#: views/settings.php:257
|
394 |
+
msgid "Hours"
|
395 |
+
msgstr "Ore"
|
396 |
+
|
397 |
+
#: views/settings.php:258
|
398 |
+
msgid "Minutes"
|
399 |
+
msgstr "Minute"
|
400 |
+
|
401 |
+
#: views/settings.php:262
|
402 |
+
msgid "Color"
|
403 |
+
msgstr "Culoare"
|
404 |
+
|
405 |
+
#: views/settings.php:275
|
406 |
+
msgid "Show subscribe?"
|
407 |
+
msgstr "Afiseaza formular abonare?"
|
408 |
+
|
409 |
+
#: views/settings.php:291
|
410 |
+
msgid "Stats"
|
411 |
+
msgstr "Statistici"
|
412 |
+
|
413 |
+
#: views/settings.php:300
|
414 |
+
msgid "Export as CSV"
|
415 |
+
msgstr "Exporta lista in format CSV"
|
416 |
+
|
417 |
+
#: views/settings.php:301
|
418 |
+
msgid "Empty subscribers list"
|
419 |
+
msgstr "Goleste lista de contacte"
|
420 |
+
|
421 |
+
#: views/settings.php:308
|
422 |
+
msgid "Social Networks"
|
423 |
+
msgstr "Retele sociale"
|
424 |
+
|
425 |
+
#: views/settings.php:313
|
426 |
+
msgid "Show social networks?"
|
427 |
+
msgstr "Afiseaza butoane retele sociale?"
|
428 |
+
|
429 |
+
#: views/settings.php:322
|
430 |
+
msgid "Links target?"
|
431 |
+
msgstr "Target-ul link-urilor"
|
432 |
+
|
433 |
+
#: views/settings.php:325
|
434 |
+
msgid "New page"
|
435 |
+
msgstr "Pagina noua"
|
436 |
+
|
437 |
+
#: views/settings.php:326
|
438 |
+
msgid "Same page"
|
439 |
+
msgstr "Aceeasi pagina"
|
440 |
+
|
441 |
+
#: views/settings.php:328
|
442 |
+
msgid "Choose how the links will open."
|
443 |
+
msgstr "Alege felul in care link-urile se vor deschide."
|
444 |
+
|
445 |
+
#: views/settings.php:376
|
446 |
+
msgid "Contact"
|
447 |
+
msgstr "Contact"
|
448 |
+
|
449 |
+
#: views/settings.php:381
|
450 |
+
msgid "Show contact?"
|
451 |
+
msgstr "Afiseaza contact ?"
|
452 |
+
|
453 |
+
#: views/settings.php:390
|
454 |
+
msgid "Email address"
|
455 |
+
msgstr "Adresa de email"
|
456 |
+
|
457 |
+
#: views/settings.php:396
|
458 |
+
msgid "Effects"
|
459 |
+
msgstr "Efecte"
|
460 |
+
|
461 |
+
#: views/settings.php:399
|
462 |
+
msgid "Move top - Move bottom"
|
463 |
+
msgstr "Move top - Move bottom"
|
464 |
+
|
465 |
+
#: views/settings.php:400
|
466 |
+
msgid "Zoom - Zoomed"
|
467 |
+
msgstr "Zoom - Zoomed"
|
468 |
+
|
469 |
+
#: views/settings.php:401
|
470 |
+
msgid "Fold - Unfold"
|
471 |
+
msgstr "Fold - Unfold"
|
472 |
+
|
473 |
+
#: views/settings.php:408
|
474 |
+
msgid "Google Analytics"
|
475 |
+
msgstr "Google Analytics"
|
476 |
+
|
477 |
+
#: views/settings.php:413
|
478 |
+
msgid "Use Google Analytics?"
|
479 |
+
msgstr "Folosesti Google Analytics?"
|
480 |
+
|
481 |
+
#: views/settings.php:422
|
482 |
+
msgid "Tracking code"
|
483 |
+
msgstr "Cod de monitorizare"
|
484 |
+
|
485 |
+
#: views/sidebar.php:3
|
486 |
+
msgid "Plugin Info"
|
487 |
+
msgstr "Informatii plugin"
|
488 |
+
|
489 |
+
#: views/sidebar.php:13
|
490 |
+
msgid "Author"
|
491 |
+
msgstr "Autor"
|
492 |
+
|
493 |
+
#: views/sidebar.php:14
|
494 |
+
msgid "Website"
|
495 |
+
msgstr "Website"
|
496 |
+
|
497 |
+
#: views/sidebar.php:15
|
498 |
+
msgid "Twitter"
|
499 |
+
msgstr "Twitter"
|
500 |
+
|
501 |
+
#: views/sidebar.php:16
|
502 |
+
msgid "GitHub"
|
503 |
+
msgstr "GitHub"
|
504 |
+
|
505 |
+
#: views/sidebar.php:27
|
506 |
+
msgid "Other products"
|
507 |
+
msgstr "Alte produse"
|
508 |
+
|
509 |
+
#: views/sidebar.php:44
|
510 |
+
msgid "Resources"
|
511 |
+
msgstr "Resurse"
|
512 |
+
|
513 |
+
#~ msgid "You successfuly subscribed. Thanks!"
|
514 |
+
#~ msgstr "Ai fost abonat cu succes. Multumim!"
|
515 |
+
|
516 |
+
#~ msgid "Which user role is allowed to access the backend of this blog?"
|
517 |
+
#~ msgstr ""
|
518 |
+
#~ "Ce rol trebuie sa aiba utilizatorul pentru a putea accesa interfata de "
|
519 |
+
#~ "administrare acestui blog?"
|
520 |
+
|
521 |
+
#~ msgid "Which user role is allowed to access the frontend of this blog?"
|
522 |
+
#~ msgstr ""
|
523 |
+
#~ "Ce rol trebuie sa aiba utilizatorul pentru a putea accesa interfata "
|
524 |
+
#~ "publica acestui blog?"
|
525 |
+
|
526 |
+
#~ msgid ""
|
527 |
+
#~ "If you want to redirect a user to a URL (which is not the WordPress "
|
528 |
+
#~ "dashboard) after login, then define a URL (incl. http://)"
|
529 |
+
#~ msgstr ""
|
530 |
+
#~ "Daca doresti sa redirectionezi un utilizator catre un URL (diferit de "
|
531 |
+
#~ "WordPress dashboard) dupa ce acesta s-a autentificat, atunci defineste un "
|
532 |
+
#~ "URL (include http://). "
|
533 |
+
|
534 |
+
#~ msgid "source <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
535 |
+
#~ msgstr "sursa <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
536 |
+
|
537 |
+
#~ msgid "WordPress Themes"
|
538 |
+
#~ msgstr "Teme WordPress"
|
539 |
+
|
540 |
+
#~ msgid "Subscribe now for early access to new WordPress themes."
|
541 |
+
#~ msgstr "Aboneaza-te acum pentru a avea acces la noi teme WordPress"
|
542 |
+
|
543 |
+
#~ msgid "Enter your email address"
|
544 |
+
#~ msgstr "Completeaza adresa de email"
|
545 |
+
|
546 |
+
#~ msgid "News"
|
547 |
+
#~ msgstr "Stiri"
|
548 |
+
|
549 |
+
#~ msgid "Developed by <a href=\"%s\">Designmodo</a>"
|
550 |
+
#~ msgstr "Dezvoltat de <a href=\"%s\">Designmodo</a>"
|
551 |
+
|
552 |
+
#~ msgid "Title"
|
553 |
+
#~ msgstr "Titlu"
|
Binary file
|
@@ -1,463 +1,538 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: WP Maintenance Mode 2.0.
|
4 |
-
"POT-Creation-Date:
|
5 |
-
"PO-Revision-Date:
|
6 |
-
"Last-Translator: Constantine Reeves <affectiosus@gmail.com>\n"
|
7 |
-
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
-
"Language: ru\n"
|
9 |
-
"MIME-Version: 1.0\n"
|
10 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
-
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"X-Generator: Poedit 1.
|
13 |
-
"X-Poedit-Basepath:
|
14 |
-
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
15 |
-
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
16 |
-
"X-Poedit-SourceCharset: UTF-8\n"
|
17 |
-
"X-Poedit-KeywordsList: __;_e
|
18 |
-
"
|
19 |
-
"
|
20 |
-
"X-Poedit-SearchPath-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
#: includes/classes/wp-maintenance-mode-admin.php:
|
27 |
-
msgid "
|
28 |
-
msgstr "
|
29 |
-
|
30 |
-
#: includes/classes/wp-maintenance-mode-admin.php:
|
31 |
-
#, php-format
|
32 |
-
msgid ""
|
33 |
-
"
|
34 |
-
|
35 |
-
|
36 |
-
"
|
37 |
-
"
|
38 |
-
|
39 |
-
#: includes/classes/wp-maintenance-mode.php:
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
msgid "
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
#: includes/classes/wp-maintenance-mode.php:
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
msgstr "
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
#:
|
92 |
-
msgid "
|
93 |
-
msgstr "
|
94 |
-
|
95 |
-
#:
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
#: views/
|
162 |
-
msgid "
|
163 |
-
msgstr "
|
164 |
-
|
165 |
-
#: views/
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
"
|
175 |
-
"
|
176 |
-
|
177 |
-
#: views/settings.php:
|
178 |
-
msgid "
|
179 |
-
msgstr "
|
180 |
-
|
181 |
-
#: views/settings.php:
|
182 |
-
msgid "
|
183 |
-
msgstr "
|
184 |
-
|
185 |
-
#: views/settings.php:
|
186 |
-
msgid "
|
187 |
-
msgstr "
|
188 |
-
|
189 |
-
#: views/settings.php:
|
190 |
-
msgid "
|
191 |
-
msgstr "
|
192 |
-
|
193 |
-
#: views/settings.php:
|
194 |
-
msgid "
|
195 |
-
msgstr "
|
196 |
-
|
197 |
-
#: views/settings.php:
|
198 |
-
msgid ""
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
"
|
204 |
-
|
205 |
-
|
206 |
-
#: views/settings.php:
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
"
|
225 |
-
"
|
226 |
-
|
227 |
-
|
228 |
-
"
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
"
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
"
|
249 |
-
"
|
250 |
-
|
251 |
-
#: views/settings.php:
|
252 |
-
msgid "
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
msgstr "
|
270 |
-
|
271 |
-
#: views/settings.php:
|
272 |
-
msgid "
|
273 |
-
msgstr "
|
274 |
-
|
275 |
-
#: views/settings.php:
|
276 |
-
msgid "
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
#: views/settings.php:
|
284 |
-
msgid "
|
285 |
-
msgstr "
|
286 |
-
|
287 |
-
#: views/settings.php:
|
288 |
-
msgid "
|
289 |
-
msgstr "
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
msgid "
|
358 |
-
msgstr "
|
359 |
-
|
360 |
-
#: views/settings.php:
|
361 |
-
msgid "
|
362 |
-
msgstr "
|
363 |
-
|
364 |
-
#: views/settings.php:
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: WP Maintenance Mode 2.0.4\n"
|
4 |
+
"POT-Creation-Date: 2016-06-17 03:35+0300\n"
|
5 |
+
"PO-Revision-Date: 2016-06-17 03:35+0300\n"
|
6 |
+
"Last-Translator: Constantine Reeves <affectiosus@gmail.com>\n"
|
7 |
+
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
+
"Language: ru\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 1.8.8\n"
|
13 |
+
"X-Poedit-Basepath: ..\n"
|
14 |
+
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
15 |
+
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
16 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
17 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
18 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
|
19 |
+
"esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
|
20 |
+
"X-Poedit-SearchPath-0: .\n"
|
21 |
+
"X-Poedit-SearchPath-1: includes/classes\n"
|
22 |
+
"X-Poedit-SearchPath-2: views\n"
|
23 |
+
|
24 |
+
#: includes/classes/wp-maintenance-mode-admin.php:121
|
25 |
+
#: includes/classes/wp-maintenance-mode-admin.php:159
|
26 |
+
#: includes/classes/wp-maintenance-mode-admin.php:181
|
27 |
+
msgid "You do not have access to this resource."
|
28 |
+
msgstr ""
|
29 |
+
|
30 |
+
#: includes/classes/wp-maintenance-mode-admin.php:165 views/settings.php:295
|
31 |
+
#, php-format
|
32 |
+
msgid "You have %d subscriber(s)"
|
33 |
+
msgstr "Подписчиков: %d"
|
34 |
+
|
35 |
+
#: includes/classes/wp-maintenance-mode-admin.php:186
|
36 |
+
msgid "The tab slug must not be empty."
|
37 |
+
msgstr ""
|
38 |
+
|
39 |
+
#: includes/classes/wp-maintenance-mode-admin.php:191
|
40 |
+
msgid "The tab slug must exist."
|
41 |
+
msgstr ""
|
42 |
+
|
43 |
+
#: includes/classes/wp-maintenance-mode-admin.php:211
|
44 |
+
msgid "WP Maintenance Mode"
|
45 |
+
msgstr "Техническое обслуживание"
|
46 |
+
|
47 |
+
#: includes/classes/wp-maintenance-mode-admin.php:425
|
48 |
+
msgid "Settings"
|
49 |
+
msgstr "Настройки"
|
50 |
+
|
51 |
+
#: includes/classes/wp-maintenance-mode-admin.php:444
|
52 |
+
#, php-format
|
53 |
+
msgid ""
|
54 |
+
"The Maintenance Mode is <strong>active</strong>. Please don't forget to <a "
|
55 |
+
"href=\"%s\">deactivate</a> as soon as you are done."
|
56 |
+
msgstr ""
|
57 |
+
"Режим технического обслуживания <strong>включён</strong>. Не забудьте <a "
|
58 |
+
"href=\"%s\">выключить</a> его, как только закончите."
|
59 |
+
|
60 |
+
#: includes/classes/wp-maintenance-mode-admin.php:481
|
61 |
+
msgid "Notice key cannot be empty."
|
62 |
+
msgstr ""
|
63 |
+
|
64 |
+
#: includes/classes/wp-maintenance-mode.php:103
|
65 |
+
#: includes/classes/wp-maintenance-mode.php:104
|
66 |
+
msgid "Maintenance mode"
|
67 |
+
msgstr "Режим технического обслуживания"
|
68 |
+
|
69 |
+
#: includes/classes/wp-maintenance-mode.php:106
|
70 |
+
msgid ""
|
71 |
+
"<p>Sorry for the inconvenience.<br />Our website is currently undergoing "
|
72 |
+
"scheduled maintenance.<br />Thank you for your understanding.</p>"
|
73 |
+
msgstr ""
|
74 |
+
"<p>В данный момент сайт находится на техническом обслуживании.<br />Приносим "
|
75 |
+
"извинения за временные неудобства.<br />Спасибо за понимание.</p>"
|
76 |
+
|
77 |
+
#: includes/classes/wp-maintenance-mode.php:124
|
78 |
+
msgid "Notify me when it's ready"
|
79 |
+
msgstr "Сообщить о готовности"
|
80 |
+
|
81 |
+
#: includes/classes/wp-maintenance-mode.php:259
|
82 |
+
#, php-format
|
83 |
+
msgid ""
|
84 |
+
"WP Maintenance Mode plugin was relaunched and you MUST revise <a href=\"%s"
|
85 |
+
"\">settings</a>."
|
86 |
+
msgstr ""
|
87 |
+
"Плагин технического обслуживания был перезапущен. Вам НЕОБХОДИМО "
|
88 |
+
"пересмотреть <a href=\"%s\">настройки</a>."
|
89 |
+
|
90 |
+
#: includes/classes/wp-maintenance-mode.php:449
|
91 |
+
#: includes/classes/wp-maintenance-mode.php:463
|
92 |
+
msgid "Maintenance Mode"
|
93 |
+
msgstr "Режим технического обслуживания"
|
94 |
+
|
95 |
+
#: includes/classes/wp-maintenance-mode.php:687
|
96 |
+
#: includes/classes/wp-maintenance-mode.php:721 views/maintenance.php:85
|
97 |
+
msgid "Please enter a valid email address."
|
98 |
+
msgstr "Введите корректный e-mail адрес."
|
99 |
+
|
100 |
+
#: includes/classes/wp-maintenance-mode.php:699
|
101 |
+
msgid "You successfully subscribed. Thanks!"
|
102 |
+
msgstr ""
|
103 |
+
|
104 |
+
#: includes/classes/wp-maintenance-mode.php:717
|
105 |
+
msgid "All fields required."
|
106 |
+
msgstr "Все поля обязательны."
|
107 |
+
|
108 |
+
#: includes/classes/wp-maintenance-mode.php:726
|
109 |
+
msgid "Message via contact"
|
110 |
+
msgstr "Сообщение"
|
111 |
+
|
112 |
+
#: includes/classes/wp-maintenance-mode.php:738
|
113 |
+
msgid "Your email was sent to the website administrator. Thanks!"
|
114 |
+
msgstr "Ваше сообщение отправлено администратору сайта. Спасибо!"
|
115 |
+
|
116 |
+
#: views/contact.php:34
|
117 |
+
#, php-format
|
118 |
+
msgid "You have been contacted via %s."
|
119 |
+
msgstr ""
|
120 |
+
|
121 |
+
#: views/contact.php:50
|
122 |
+
msgid "Name:"
|
123 |
+
msgstr ""
|
124 |
+
|
125 |
+
#: views/contact.php:62
|
126 |
+
msgid "Email:"
|
127 |
+
msgstr ""
|
128 |
+
|
129 |
+
#: views/contact.php:74
|
130 |
+
msgid "Content:"
|
131 |
+
msgstr ""
|
132 |
+
|
133 |
+
#: views/loginform.php:8
|
134 |
+
msgid "Login"
|
135 |
+
msgstr "Войти"
|
136 |
+
|
137 |
+
#: views/maintenance.php:42
|
138 |
+
msgid "your e-mail..."
|
139 |
+
msgstr "ваш e-mail..."
|
140 |
+
|
141 |
+
#: views/maintenance.php:43 views/settings.php:270
|
142 |
+
msgid "Subscribe"
|
143 |
+
msgstr "Подписаться"
|
144 |
+
|
145 |
+
#: views/maintenance.php:84 views/sidebar.php:7
|
146 |
+
msgid "Name"
|
147 |
+
msgstr "Имя"
|
148 |
+
|
149 |
+
#: views/maintenance.php:84 views/maintenance.php:85 views/maintenance.php:87
|
150 |
+
msgid "This field is required."
|
151 |
+
msgstr ""
|
152 |
+
|
153 |
+
#: views/maintenance.php:85
|
154 |
+
msgid "E-mail"
|
155 |
+
msgstr "E-mail"
|
156 |
+
|
157 |
+
#: views/maintenance.php:87
|
158 |
+
msgid "Your message"
|
159 |
+
msgstr "Ваше сообщение"
|
160 |
+
|
161 |
+
#: views/maintenance.php:88
|
162 |
+
msgid "Send"
|
163 |
+
msgstr "Отправить"
|
164 |
+
|
165 |
+
#: views/maintenance.php:93
|
166 |
+
msgid "Contact us"
|
167 |
+
msgstr "Свяжитесь с нами"
|
168 |
+
|
169 |
+
#: views/maintenance.php:98
|
170 |
+
msgid "Dashboard"
|
171 |
+
msgstr "Панель управления"
|
172 |
+
|
173 |
+
#: views/settings.php:6
|
174 |
+
msgid "Settings saved."
|
175 |
+
msgstr "Настройки сохранены."
|
176 |
+
|
177 |
+
#: views/settings.php:13
|
178 |
+
msgid "General"
|
179 |
+
msgstr "Общие"
|
180 |
+
|
181 |
+
#: views/settings.php:14
|
182 |
+
msgid "Design"
|
183 |
+
msgstr "Дизайн"
|
184 |
+
|
185 |
+
#: views/settings.php:15
|
186 |
+
msgid "Modules"
|
187 |
+
msgstr "Модули"
|
188 |
+
|
189 |
+
#: views/settings.php:24
|
190 |
+
msgid "Status"
|
191 |
+
msgstr "Статус"
|
192 |
+
|
193 |
+
#: views/settings.php:26
|
194 |
+
msgid "Activated"
|
195 |
+
msgstr "Включено"
|
196 |
+
|
197 |
+
#: views/settings.php:27
|
198 |
+
msgid "Deactivated"
|
199 |
+
msgstr "Отключено"
|
200 |
+
|
201 |
+
#: views/settings.php:31
|
202 |
+
msgid "Bypass for Search Bots"
|
203 |
+
msgstr "Индексация роботами"
|
204 |
+
|
205 |
+
#: views/settings.php:34 views/settings.php:104 views/settings.php:114
|
206 |
+
#: views/settings.php:242 views/settings.php:278 views/settings.php:316
|
207 |
+
#: views/settings.php:384 views/settings.php:416
|
208 |
+
msgid "Yes"
|
209 |
+
msgstr "Да"
|
210 |
+
|
211 |
+
#: views/settings.php:35 views/settings.php:105 views/settings.php:115
|
212 |
+
#: views/settings.php:243 views/settings.php:279 views/settings.php:317
|
213 |
+
#: views/settings.php:385 views/settings.php:417
|
214 |
+
msgid "No"
|
215 |
+
msgstr "Нет"
|
216 |
+
|
217 |
+
#: views/settings.php:37
|
218 |
+
msgid "Allow Search Bots to bypass maintenance mode?"
|
219 |
+
msgstr ""
|
220 |
+
"Разрешить поисковым роботам индексацию сайта во время технического "
|
221 |
+
"обслуживания?"
|
222 |
+
|
223 |
+
#: views/settings.php:41
|
224 |
+
msgid "Backend Role"
|
225 |
+
msgstr "Доступ к панели управления"
|
226 |
+
|
227 |
+
#: views/settings.php:43 views/settings.php:59
|
228 |
+
msgid "Select role(s)"
|
229 |
+
msgstr ""
|
230 |
+
|
231 |
+
#: views/settings.php:53
|
232 |
+
msgid ""
|
233 |
+
"Which user role is allowed to access the backend of this blog? "
|
234 |
+
"Administrators will always have access."
|
235 |
+
msgstr ""
|
236 |
+
|
237 |
+
#: views/settings.php:57
|
238 |
+
msgid "Frontend Role"
|
239 |
+
msgstr "Доступ к сайту"
|
240 |
+
|
241 |
+
#: views/settings.php:69
|
242 |
+
msgid ""
|
243 |
+
"Which user role is allowed to access the frontend of this blog? "
|
244 |
+
"Administrators will always have access."
|
245 |
+
msgstr ""
|
246 |
+
|
247 |
+
#: views/settings.php:73
|
248 |
+
msgid "Robots Meta Tag"
|
249 |
+
msgstr "Метатэг для роботов"
|
250 |
+
|
251 |
+
#: views/settings.php:79
|
252 |
+
msgid ""
|
253 |
+
"The robots meta tag lets you use a granular, page-specific approach to "
|
254 |
+
"control how an individual page should be indexed and served to users in "
|
255 |
+
"search results."
|
256 |
+
msgstr ""
|
257 |
+
"Метатэг для роботов позволяет Вам определить специфическое для каждой "
|
258 |
+
"страницы индексирование и отображение пользователям в результатах поиска."
|
259 |
+
|
260 |
+
#: views/settings.php:83
|
261 |
+
msgid "Redirection"
|
262 |
+
msgstr "Перенаправление"
|
263 |
+
|
264 |
+
#: views/settings.php:86
|
265 |
+
msgid ""
|
266 |
+
"If you want to redirect a user (with no access to Dashboard/Backend) to a "
|
267 |
+
"URL (different from WordPress Dashboard URL) after login, then define a URL "
|
268 |
+
"(incl. http://)"
|
269 |
+
msgstr ""
|
270 |
+
|
271 |
+
#: views/settings.php:90
|
272 |
+
msgid "Exclude"
|
273 |
+
msgstr "Исключения"
|
274 |
+
|
275 |
+
#: views/settings.php:97
|
276 |
+
msgid ""
|
277 |
+
"Exclude feed, pages, archives or IPs from maintenance mode. Add one slug / "
|
278 |
+
"IP per line!"
|
279 |
+
msgstr ""
|
280 |
+
"Разрешите доступ к новостям (ленте), страницам, архивам или по IP во время "
|
281 |
+
"технического обслуживания. Одна страница/IP на строке!"
|
282 |
+
|
283 |
+
#: views/settings.php:101
|
284 |
+
msgid "Notice"
|
285 |
+
msgstr "Предупреждение"
|
286 |
+
|
287 |
+
#: views/settings.php:107
|
288 |
+
msgid "Do you want to see notices when maintenance mode is activated?"
|
289 |
+
msgstr ""
|
290 |
+
"Вы хотите видеть предупреждения, когда режим технического обслуживания "
|
291 |
+
"включён?"
|
292 |
+
|
293 |
+
#: views/settings.php:111
|
294 |
+
msgid "Dashboard link"
|
295 |
+
msgstr "Ссылка на панель управления"
|
296 |
+
|
297 |
+
#: views/settings.php:117
|
298 |
+
msgid ""
|
299 |
+
"Do you want to add a link to the dashboard on your maintenance mode page?"
|
300 |
+
msgstr ""
|
301 |
+
"Вы хотите добавить ссылку на панель управления на странице технического "
|
302 |
+
"обслуживания?"
|
303 |
+
|
304 |
+
#: views/settings.php:125 views/settings.php:228 views/settings.php:432
|
305 |
+
msgid "Save settings"
|
306 |
+
msgstr "Сохранить настройки"
|
307 |
+
|
308 |
+
#: views/settings.php:126 views/settings.php:229 views/settings.php:433
|
309 |
+
msgid "Reset settings"
|
310 |
+
msgstr "Сбросить настройки"
|
311 |
+
|
312 |
+
#: views/settings.php:131
|
313 |
+
msgid "Content"
|
314 |
+
msgstr "Содержимое"
|
315 |
+
|
316 |
+
#: views/settings.php:136
|
317 |
+
msgid "Title (HTML tag)"
|
318 |
+
msgstr "Название (тэг HTML)"
|
319 |
+
|
320 |
+
#: views/settings.php:142
|
321 |
+
msgid "Heading"
|
322 |
+
msgstr "Заголовок"
|
323 |
+
|
324 |
+
#: views/settings.php:149 views/settings.php:284
|
325 |
+
msgid "Text"
|
326 |
+
msgstr "Текст"
|
327 |
+
|
328 |
+
#: views/settings.php:169
|
329 |
+
msgid "Background"
|
330 |
+
msgstr "Фон"
|
331 |
+
|
332 |
+
#: views/settings.php:174
|
333 |
+
msgid "Choose type"
|
334 |
+
msgstr "Выберите тип"
|
335 |
+
|
336 |
+
#: views/settings.php:177
|
337 |
+
msgid "Custom color"
|
338 |
+
msgstr "Другой цвет"
|
339 |
+
|
340 |
+
#: views/settings.php:178
|
341 |
+
msgid "Uploaded background"
|
342 |
+
msgstr "Загруженный фон"
|
343 |
+
|
344 |
+
#: views/settings.php:179
|
345 |
+
msgid "Predefined background"
|
346 |
+
msgstr "Предустановленный фон"
|
347 |
+
|
348 |
+
#: views/settings.php:184
|
349 |
+
msgid "Choose color"
|
350 |
+
msgstr "Выберите цвет"
|
351 |
+
|
352 |
+
#: views/settings.php:190
|
353 |
+
msgid "Upload background"
|
354 |
+
msgstr "Загрузить фон"
|
355 |
+
|
356 |
+
#: views/settings.php:194
|
357 |
+
msgid "Backgrounds should have 1920x1280 px size."
|
358 |
+
msgstr "Фоновое изображение должно быть размера 1920x1080."
|
359 |
+
|
360 |
+
#: views/settings.php:199
|
361 |
+
msgid "Choose background"
|
362 |
+
msgstr "Выберите фон"
|
363 |
+
|
364 |
+
#: views/settings.php:201
|
365 |
+
#, php-format
|
366 |
+
msgid "source <a href=\"%s\" target=\"_blank\">Free Photos</a>"
|
367 |
+
msgstr ""
|
368 |
+
|
369 |
+
#: views/settings.php:234
|
370 |
+
msgid "Countdown"
|
371 |
+
msgstr "Обратный отсчёт"
|
372 |
+
|
373 |
+
#: views/settings.php:239
|
374 |
+
msgid "Show countdown?"
|
375 |
+
msgstr "Показывать обратный отсчёт?"
|
376 |
+
|
377 |
+
#: views/settings.php:248
|
378 |
+
msgid "Start date"
|
379 |
+
msgstr "Дата начала"
|
380 |
+
|
381 |
+
#: views/settings.php:254
|
382 |
+
msgid "Countdown (remaining time)"
|
383 |
+
msgstr "Обратный отсчёт (оставшееся время)"
|
384 |
+
|
385 |
+
#: views/settings.php:256
|
386 |
+
msgid "Days"
|
387 |
+
msgstr "Дни"
|
388 |
+
|
389 |
+
#: views/settings.php:257
|
390 |
+
msgid "Hours"
|
391 |
+
msgstr "Часы"
|
392 |
+
|
393 |
+
#: views/settings.php:258
|
394 |
+
msgid "Minutes"
|
395 |
+
msgstr "Минуты"
|
396 |
+
|
397 |
+
#: views/settings.php:262
|
398 |
+
msgid "Color"
|
399 |
+
msgstr "Цвет"
|
400 |
+
|
401 |
+
#: views/settings.php:275
|
402 |
+
msgid "Show subscribe?"
|
403 |
+
msgstr "Отображать возможность подписки?"
|
404 |
+
|
405 |
+
#: views/settings.php:291
|
406 |
+
msgid "Stats"
|
407 |
+
msgstr "Статистика"
|
408 |
+
|
409 |
+
#: views/settings.php:300
|
410 |
+
msgid "Export as CSV"
|
411 |
+
msgstr "Экспорт в .csv"
|
412 |
+
|
413 |
+
#: views/settings.php:301
|
414 |
+
msgid "Empty subscribers list"
|
415 |
+
msgstr ""
|
416 |
+
|
417 |
+
#: views/settings.php:308
|
418 |
+
msgid "Social Networks"
|
419 |
+
msgstr "Социальные сети"
|
420 |
+
|
421 |
+
#: views/settings.php:313
|
422 |
+
msgid "Show social networks?"
|
423 |
+
msgstr "Отображать социальные сети?"
|
424 |
+
|
425 |
+
#: views/settings.php:322
|
426 |
+
msgid "Links target?"
|
427 |
+
msgstr "Куда ведут ссылки?"
|
428 |
+
|
429 |
+
#: views/settings.php:325
|
430 |
+
msgid "New page"
|
431 |
+
msgstr "Новая страница"
|
432 |
+
|
433 |
+
#: views/settings.php:326
|
434 |
+
msgid "Same page"
|
435 |
+
msgstr "Такая же страница"
|
436 |
+
|
437 |
+
#: views/settings.php:328
|
438 |
+
msgid "Choose how the links will open."
|
439 |
+
msgstr "Как будут открываться ссылки?"
|
440 |
+
|
441 |
+
#: views/settings.php:376
|
442 |
+
msgid "Contact"
|
443 |
+
msgstr "Обратная связь"
|
444 |
+
|
445 |
+
#: views/settings.php:381
|
446 |
+
msgid "Show contact?"
|
447 |
+
msgstr "Включить обратную связь?"
|
448 |
+
|
449 |
+
#: views/settings.php:390
|
450 |
+
msgid "Email address"
|
451 |
+
msgstr "E-mail адрес"
|
452 |
+
|
453 |
+
#: views/settings.php:396
|
454 |
+
msgid "Effects"
|
455 |
+
msgstr "Эффекты"
|
456 |
+
|
457 |
+
#: views/settings.php:399
|
458 |
+
msgid "Move top - Move bottom"
|
459 |
+
msgstr "Сверху вниз"
|
460 |
+
|
461 |
+
#: views/settings.php:400
|
462 |
+
msgid "Zoom - Zoomed"
|
463 |
+
msgstr "Увеличение"
|
464 |
+
|
465 |
+
#: views/settings.php:401
|
466 |
+
msgid "Fold - Unfold"
|
467 |
+
msgstr "Поворот"
|
468 |
+
|
469 |
+
#: views/settings.php:408
|
470 |
+
msgid "Google Analytics"
|
471 |
+
msgstr "Google Analytics"
|
472 |
+
|
473 |
+
#: views/settings.php:413
|
474 |
+
msgid "Use Google Analytics?"
|
475 |
+
msgstr "Использовать Google Analytics?"
|
476 |
+
|
477 |
+
#: views/settings.php:422
|
478 |
+
msgid "Tracking code"
|
479 |
+
msgstr "Код слежения"
|
480 |
+
|
481 |
+
#: views/sidebar.php:3
|
482 |
+
msgid "Plugin Info"
|
483 |
+
msgstr "Информация о плагине"
|
484 |
+
|
485 |
+
#: views/sidebar.php:13
|
486 |
+
msgid "Author"
|
487 |
+
msgstr "Автор"
|
488 |
+
|
489 |
+
#: views/sidebar.php:14
|
490 |
+
msgid "Website"
|
491 |
+
msgstr "Веб-сайт"
|
492 |
+
|
493 |
+
#: views/sidebar.php:15
|
494 |
+
msgid "Twitter"
|
495 |
+
msgstr "Twitter"
|
496 |
+
|
497 |
+
#: views/sidebar.php:16
|
498 |
+
msgid "GitHub"
|
499 |
+
msgstr "GitHub"
|
500 |
+
|
501 |
+
#: views/sidebar.php:27
|
502 |
+
msgid "Other products"
|
503 |
+
msgstr ""
|
504 |
+
|
505 |
+
#: views/sidebar.php:44
|
506 |
+
msgid "Resources"
|
507 |
+
msgstr "Ресурсы"
|
508 |
+
|
509 |
+
#~ msgid "You successfuly subscribed. Thanks!"
|
510 |
+
#~ msgstr "Вы успешно подписались."
|
511 |
+
|
512 |
+
#~ msgid "Which user role is allowed to access the backend of this blog?"
|
513 |
+
#~ msgstr "Кому разрешён доступ к backend сайта?"
|
514 |
+
|
515 |
+
#~ msgid "Which user role is allowed to access the frontend of this blog?"
|
516 |
+
#~ msgstr "Кому разрешён доступ к frontend сайта?"
|
517 |
+
|
518 |
+
#~ msgid ""
|
519 |
+
#~ "If you want to redirect a user to a URL (which is not the WordPress "
|
520 |
+
#~ "dashboard) after login, then define a URL (incl. http://)"
|
521 |
+
#~ msgstr ""
|
522 |
+
#~ "Если вы хотите перенаправить пользователей на другой сайт (и это не "
|
523 |
+
#~ "панель управления WordPress) после входа, укажите ссылку (включая http://)"
|
524 |
+
|
525 |
+
#~ msgid "source <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
526 |
+
#~ msgstr "источник: <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
527 |
+
|
528 |
+
#~ msgid "WordPress Themes"
|
529 |
+
#~ msgstr "Темы WordPress"
|
530 |
+
|
531 |
+
#~ msgid "Subscribe now for early access to new WordPress themes."
|
532 |
+
#~ msgstr "Подпишитесь, чтобы заранее узнать о новых темах для WordPress."
|
533 |
+
|
534 |
+
#~ msgid "Enter your email address"
|
535 |
+
#~ msgstr "Введите ваш e-mail адрес"
|
536 |
+
|
537 |
+
#~ msgid "News"
|
538 |
+
#~ msgstr "Новости"
|
Binary file
|
@@ -1,457 +1,529 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: WP Maintenance Mode 2.0.
|
4 |
-
"POT-Creation-Date:
|
5 |
-
"PO-Revision-Date:
|
6 |
-
"Last-Translator: Andréas Lundgren <adevade@gmail.com>\n"
|
7 |
-
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
-
"Language:
|
9 |
-
"MIME-Version: 1.0\n"
|
10 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
-
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"X-Generator: Poedit 1.
|
13 |
-
"X-Poedit-Basepath:
|
14 |
-
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
-
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
-
"X-Poedit-KeywordsList: __;_e
|
17 |
-
"
|
18 |
-
"
|
19 |
-
"X-Poedit-SearchPath-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
#: includes/classes/wp-maintenance-mode-admin.php:
|
26 |
-
msgid "
|
27 |
-
msgstr "
|
28 |
-
|
29 |
-
#: includes/classes/wp-maintenance-mode-admin.php:
|
30 |
-
#, php-format
|
31 |
-
msgid ""
|
32 |
-
"
|
33 |
-
|
34 |
-
|
35 |
-
"
|
36 |
-
"
|
37 |
-
|
38 |
-
#: includes/classes/wp-maintenance-mode.php:
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
msgid "
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
#: includes/classes/wp-maintenance-mode.php:
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
msgstr "
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
#:
|
91 |
-
msgid "
|
92 |
-
msgstr ""
|
93 |
-
|
94 |
-
#:
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
#: views/
|
161 |
-
msgid "
|
162 |
-
msgstr "
|
163 |
-
|
164 |
-
#: views/
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
"
|
202 |
-
"
|
203 |
-
|
204 |
-
#: views/settings.php:
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
#: views/settings.php:
|
217 |
-
msgid "
|
218 |
-
msgstr "
|
219 |
-
|
220 |
-
#: views/settings.php:
|
221 |
-
msgid ""
|
222 |
-
"
|
223 |
-
|
224 |
-
|
225 |
-
"
|
226 |
-
|
227 |
-
|
228 |
-
#: views/settings.php:
|
229 |
-
msgid "
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
msgstr "
|
268 |
-
|
269 |
-
#: views/settings.php:
|
270 |
-
msgid "
|
271 |
-
msgstr "
|
272 |
-
|
273 |
-
#: views/settings.php:
|
274 |
-
msgid "
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
#: views/settings.php:
|
282 |
-
msgid "
|
283 |
-
msgstr "
|
284 |
-
|
285 |
-
#: views/settings.php:
|
286 |
-
msgid "
|
287 |
-
msgstr "
|
288 |
-
|
289 |
-
#: views/settings.php:
|
290 |
-
msgid "
|
291 |
-
msgstr "
|
292 |
-
|
293 |
-
#: views/settings.php:
|
294 |
-
msgid "
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
msgid "
|
352 |
-
msgstr "
|
353 |
-
|
354 |
-
#: views/settings.php:
|
355 |
-
msgid "
|
356 |
-
msgstr "
|
357 |
-
|
358 |
-
#: views/settings.php:
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: WP Maintenance Mode 2.0.4\n"
|
4 |
+
"POT-Creation-Date: 2016-06-17 03:37+0300\n"
|
5 |
+
"PO-Revision-Date: 2016-06-17 03:37+0300\n"
|
6 |
+
"Last-Translator: Andréas Lundgren <adevade@gmail.com>\n"
|
7 |
+
"Language-Team: Designmodo <info@designmodo.com>\n"
|
8 |
+
"Language: sv_SE\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 1.8.8\n"
|
13 |
+
"X-Poedit-Basepath: ..\n"
|
14 |
+
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
17 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
|
18 |
+
"esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
|
19 |
+
"X-Poedit-SearchPath-0: .\n"
|
20 |
+
"X-Poedit-SearchPath-1: includes/classes\n"
|
21 |
+
"X-Poedit-SearchPath-2: views\n"
|
22 |
+
|
23 |
+
#: includes/classes/wp-maintenance-mode-admin.php:121
|
24 |
+
#: includes/classes/wp-maintenance-mode-admin.php:159
|
25 |
+
#: includes/classes/wp-maintenance-mode-admin.php:181
|
26 |
+
msgid "You do not have access to this resource."
|
27 |
+
msgstr ""
|
28 |
+
|
29 |
+
#: includes/classes/wp-maintenance-mode-admin.php:165 views/settings.php:295
|
30 |
+
#, php-format
|
31 |
+
msgid "You have %d subscriber(s)"
|
32 |
+
msgstr "Du har %d prenumeranter"
|
33 |
+
|
34 |
+
#: includes/classes/wp-maintenance-mode-admin.php:186
|
35 |
+
msgid "The tab slug must not be empty."
|
36 |
+
msgstr ""
|
37 |
+
|
38 |
+
#: includes/classes/wp-maintenance-mode-admin.php:191
|
39 |
+
msgid "The tab slug must exist."
|
40 |
+
msgstr ""
|
41 |
+
|
42 |
+
#: includes/classes/wp-maintenance-mode-admin.php:211
|
43 |
+
msgid "WP Maintenance Mode"
|
44 |
+
msgstr "WP Underhållsläge"
|
45 |
+
|
46 |
+
#: includes/classes/wp-maintenance-mode-admin.php:425
|
47 |
+
msgid "Settings"
|
48 |
+
msgstr "Inställningar"
|
49 |
+
|
50 |
+
#: includes/classes/wp-maintenance-mode-admin.php:444
|
51 |
+
#, php-format
|
52 |
+
msgid ""
|
53 |
+
"The Maintenance Mode is <strong>active</strong>. Please don't forget to <a "
|
54 |
+
"href=\"%s\">deactivate</a> as soon as you are done."
|
55 |
+
msgstr ""
|
56 |
+
"Underhållsläget är <strong>aktiverat</strong>. Glöm inte att <a href=\"%s"
|
57 |
+
"\">avaktivera</a> det när du är klar."
|
58 |
+
|
59 |
+
#: includes/classes/wp-maintenance-mode-admin.php:481
|
60 |
+
msgid "Notice key cannot be empty."
|
61 |
+
msgstr ""
|
62 |
+
|
63 |
+
#: includes/classes/wp-maintenance-mode.php:103
|
64 |
+
#: includes/classes/wp-maintenance-mode.php:104
|
65 |
+
msgid "Maintenance mode"
|
66 |
+
msgstr "Underhållsläge"
|
67 |
+
|
68 |
+
#: includes/classes/wp-maintenance-mode.php:106
|
69 |
+
msgid ""
|
70 |
+
"<p>Sorry for the inconvenience.<br />Our website is currently undergoing "
|
71 |
+
"scheduled maintenance.<br />Thank you for your understanding.</p>"
|
72 |
+
msgstr ""
|
73 |
+
"<p>Ledsen för besväret.<br />Vår hemsida ligger för närvarande i "
|
74 |
+
"underhållsläge.<br />Tack för att ni förstår.</p>"
|
75 |
+
|
76 |
+
#: includes/classes/wp-maintenance-mode.php:124
|
77 |
+
msgid "Notify me when it's ready"
|
78 |
+
msgstr "Meddela mig när sidan är färdig"
|
79 |
+
|
80 |
+
#: includes/classes/wp-maintenance-mode.php:259
|
81 |
+
#, php-format
|
82 |
+
msgid ""
|
83 |
+
"WP Maintenance Mode plugin was relaunched and you MUST revise <a href=\"%s"
|
84 |
+
"\">settings</a>."
|
85 |
+
msgstr ""
|
86 |
+
"Tillägget WP Underhållsläge återlanserades nyligen med massa nya <a href=\"%s"
|
87 |
+
"\">inställningar</a>."
|
88 |
+
|
89 |
+
#: includes/classes/wp-maintenance-mode.php:449
|
90 |
+
#: includes/classes/wp-maintenance-mode.php:463
|
91 |
+
msgid "Maintenance Mode"
|
92 |
+
msgstr "Underhållsläge"
|
93 |
+
|
94 |
+
#: includes/classes/wp-maintenance-mode.php:687
|
95 |
+
#: includes/classes/wp-maintenance-mode.php:721 views/maintenance.php:85
|
96 |
+
msgid "Please enter a valid email address."
|
97 |
+
msgstr "Vänligen fyll i en giltig e-postadress. "
|
98 |
+
|
99 |
+
#: includes/classes/wp-maintenance-mode.php:699
|
100 |
+
msgid "You successfully subscribed. Thanks!"
|
101 |
+
msgstr ""
|
102 |
+
|
103 |
+
#: includes/classes/wp-maintenance-mode.php:717
|
104 |
+
msgid "All fields required."
|
105 |
+
msgstr "Vänligen fyll i alla fält."
|
106 |
+
|
107 |
+
#: includes/classes/wp-maintenance-mode.php:726
|
108 |
+
msgid "Message via contact"
|
109 |
+
msgstr "Meddelande från underhållsläget"
|
110 |
+
|
111 |
+
#: includes/classes/wp-maintenance-mode.php:738
|
112 |
+
msgid "Your email was sent to the website administrator. Thanks!"
|
113 |
+
msgstr "Ditt meddelande skickades till hemsidans ägare. Tack! "
|
114 |
+
|
115 |
+
#: views/contact.php:34
|
116 |
+
#, php-format
|
117 |
+
msgid "You have been contacted via %s."
|
118 |
+
msgstr ""
|
119 |
+
|
120 |
+
#: views/contact.php:50
|
121 |
+
msgid "Name:"
|
122 |
+
msgstr ""
|
123 |
+
|
124 |
+
#: views/contact.php:62
|
125 |
+
msgid "Email:"
|
126 |
+
msgstr ""
|
127 |
+
|
128 |
+
#: views/contact.php:74
|
129 |
+
msgid "Content:"
|
130 |
+
msgstr ""
|
131 |
+
|
132 |
+
#: views/loginform.php:8
|
133 |
+
msgid "Login"
|
134 |
+
msgstr ""
|
135 |
+
|
136 |
+
#: views/maintenance.php:42
|
137 |
+
msgid "your e-mail..."
|
138 |
+
msgstr "Din e-postadress..."
|
139 |
+
|
140 |
+
#: views/maintenance.php:43 views/settings.php:270
|
141 |
+
msgid "Subscribe"
|
142 |
+
msgstr "Prenumerera"
|
143 |
+
|
144 |
+
#: views/maintenance.php:84 views/sidebar.php:7
|
145 |
+
msgid "Name"
|
146 |
+
msgstr "Namn"
|
147 |
+
|
148 |
+
#: views/maintenance.php:84 views/maintenance.php:85 views/maintenance.php:87
|
149 |
+
msgid "This field is required."
|
150 |
+
msgstr ""
|
151 |
+
|
152 |
+
#: views/maintenance.php:85
|
153 |
+
msgid "E-mail"
|
154 |
+
msgstr "E-post"
|
155 |
+
|
156 |
+
#: views/maintenance.php:87
|
157 |
+
msgid "Your message"
|
158 |
+
msgstr "Ditt meddelande"
|
159 |
+
|
160 |
+
#: views/maintenance.php:88
|
161 |
+
msgid "Send"
|
162 |
+
msgstr "Skicka"
|
163 |
+
|
164 |
+
#: views/maintenance.php:93
|
165 |
+
msgid "Contact us"
|
166 |
+
msgstr "Kontakta oss"
|
167 |
+
|
168 |
+
#: views/maintenance.php:98
|
169 |
+
msgid "Dashboard"
|
170 |
+
msgstr ""
|
171 |
+
|
172 |
+
#: views/settings.php:6
|
173 |
+
msgid "Settings saved."
|
174 |
+
msgstr "Inställningarna sparades."
|
175 |
+
|
176 |
+
#: views/settings.php:13
|
177 |
+
msgid "General"
|
178 |
+
msgstr "Allmänt"
|
179 |
+
|
180 |
+
#: views/settings.php:14
|
181 |
+
msgid "Design"
|
182 |
+
msgstr "Design"
|
183 |
+
|
184 |
+
#: views/settings.php:15
|
185 |
+
msgid "Modules"
|
186 |
+
msgstr "Moduler"
|
187 |
+
|
188 |
+
#: views/settings.php:24
|
189 |
+
msgid "Status"
|
190 |
+
msgstr "Status"
|
191 |
+
|
192 |
+
#: views/settings.php:26
|
193 |
+
msgid "Activated"
|
194 |
+
msgstr "Aktiverad"
|
195 |
+
|
196 |
+
#: views/settings.php:27
|
197 |
+
msgid "Deactivated"
|
198 |
+
msgstr "Avaktiverad"
|
199 |
+
|
200 |
+
#: views/settings.php:31
|
201 |
+
msgid "Bypass for Search Bots"
|
202 |
+
msgstr "Låt sökrobotar gå förbi"
|
203 |
+
|
204 |
+
#: views/settings.php:34 views/settings.php:104 views/settings.php:114
|
205 |
+
#: views/settings.php:242 views/settings.php:278 views/settings.php:316
|
206 |
+
#: views/settings.php:384 views/settings.php:416
|
207 |
+
msgid "Yes"
|
208 |
+
msgstr "Ja"
|
209 |
+
|
210 |
+
#: views/settings.php:35 views/settings.php:105 views/settings.php:115
|
211 |
+
#: views/settings.php:243 views/settings.php:279 views/settings.php:317
|
212 |
+
#: views/settings.php:385 views/settings.php:417
|
213 |
+
msgid "No"
|
214 |
+
msgstr "Nej"
|
215 |
+
|
216 |
+
#: views/settings.php:37
|
217 |
+
msgid "Allow Search Bots to bypass maintenance mode?"
|
218 |
+
msgstr "Tillåt sökrobotar att gå förbi underhållsläget? "
|
219 |
+
|
220 |
+
#: views/settings.php:41
|
221 |
+
msgid "Backend Role"
|
222 |
+
msgstr "Back end-roll"
|
223 |
+
|
224 |
+
#: views/settings.php:43 views/settings.php:59
|
225 |
+
msgid "Select role(s)"
|
226 |
+
msgstr ""
|
227 |
+
|
228 |
+
#: views/settings.php:53
|
229 |
+
msgid ""
|
230 |
+
"Which user role is allowed to access the backend of this blog? "
|
231 |
+
"Administrators will always have access."
|
232 |
+
msgstr ""
|
233 |
+
|
234 |
+
#: views/settings.php:57
|
235 |
+
msgid "Frontend Role"
|
236 |
+
msgstr "Front end-roll"
|
237 |
+
|
238 |
+
#: views/settings.php:69
|
239 |
+
msgid ""
|
240 |
+
"Which user role is allowed to access the frontend of this blog? "
|
241 |
+
"Administrators will always have access."
|
242 |
+
msgstr ""
|
243 |
+
|
244 |
+
#: views/settings.php:73
|
245 |
+
msgid "Robots Meta Tag"
|
246 |
+
msgstr "Robots meta-tagg"
|
247 |
+
|
248 |
+
#: views/settings.php:79
|
249 |
+
msgid ""
|
250 |
+
"The robots meta tag lets you use a granular, page-specific approach to "
|
251 |
+
"control how an individual page should be indexed and served to users in "
|
252 |
+
"search results."
|
253 |
+
msgstr ""
|
254 |
+
"Metataggen för sökrobotar låter dig använda ett granulärt, sidspecifikt "
|
255 |
+
"tillvägagångssätt för att kontrollera hur en enskild sida ska indexeras och "
|
256 |
+
"visas för användare i sökresultat. "
|
257 |
+
|
258 |
+
#: views/settings.php:83
|
259 |
+
msgid "Redirection"
|
260 |
+
msgstr "Omdirigering"
|
261 |
+
|
262 |
+
#: views/settings.php:86
|
263 |
+
msgid ""
|
264 |
+
"If you want to redirect a user (with no access to Dashboard/Backend) to a "
|
265 |
+
"URL (different from WordPress Dashboard URL) after login, then define a URL "
|
266 |
+
"(incl. http://)"
|
267 |
+
msgstr ""
|
268 |
+
|
269 |
+
#: views/settings.php:90
|
270 |
+
msgid "Exclude"
|
271 |
+
msgstr "Exkludera"
|
272 |
+
|
273 |
+
#: views/settings.php:97
|
274 |
+
msgid ""
|
275 |
+
"Exclude feed, pages, archives or IPs from maintenance mode. Add one slug / "
|
276 |
+
"IP per line!"
|
277 |
+
msgstr ""
|
278 |
+
"Exkludera flöde, sidor, arkiv eller IP-adresser från underhållsläget. Lägg "
|
279 |
+
"max till en permalänk/IP per rad! "
|
280 |
+
|
281 |
+
#: views/settings.php:101
|
282 |
+
msgid "Notice"
|
283 |
+
msgstr "Meddelande"
|
284 |
+
|
285 |
+
#: views/settings.php:107
|
286 |
+
msgid "Do you want to see notices when maintenance mode is activated?"
|
287 |
+
msgstr "Vill du se ett meddelande när underhållsläget är aktiverat?"
|
288 |
+
|
289 |
+
#: views/settings.php:111
|
290 |
+
msgid "Dashboard link"
|
291 |
+
msgstr ""
|
292 |
+
|
293 |
+
#: views/settings.php:117
|
294 |
+
msgid ""
|
295 |
+
"Do you want to add a link to the dashboard on your maintenance mode page?"
|
296 |
+
msgstr ""
|
297 |
+
|
298 |
+
#: views/settings.php:125 views/settings.php:228 views/settings.php:432
|
299 |
+
msgid "Save settings"
|
300 |
+
msgstr "Spara"
|
301 |
+
|
302 |
+
#: views/settings.php:126 views/settings.php:229 views/settings.php:433
|
303 |
+
msgid "Reset settings"
|
304 |
+
msgstr "Återställ inställningar"
|
305 |
+
|
306 |
+
#: views/settings.php:131
|
307 |
+
msgid "Content"
|
308 |
+
msgstr "Innehåll"
|
309 |
+
|
310 |
+
#: views/settings.php:136
|
311 |
+
msgid "Title (HTML tag)"
|
312 |
+
msgstr "Titel (HTML-tagg)"
|
313 |
+
|
314 |
+
#: views/settings.php:142
|
315 |
+
msgid "Heading"
|
316 |
+
msgstr "Rubrik"
|
317 |
+
|
318 |
+
#: views/settings.php:149 views/settings.php:284
|
319 |
+
msgid "Text"
|
320 |
+
msgstr "Text"
|
321 |
+
|
322 |
+
#: views/settings.php:169
|
323 |
+
msgid "Background"
|
324 |
+
msgstr "Bakgrund"
|
325 |
+
|
326 |
+
#: views/settings.php:174
|
327 |
+
msgid "Choose type"
|
328 |
+
msgstr "Välj typ"
|
329 |
+
|
330 |
+
#: views/settings.php:177
|
331 |
+
msgid "Custom color"
|
332 |
+
msgstr "Egen färg"
|
333 |
+
|
334 |
+
#: views/settings.php:178
|
335 |
+
msgid "Uploaded background"
|
336 |
+
msgstr "Uppladdad bakgrund"
|
337 |
+
|
338 |
+
#: views/settings.php:179
|
339 |
+
msgid "Predefined background"
|
340 |
+
msgstr "Fördefinierad bakgrund"
|
341 |
+
|
342 |
+
#: views/settings.php:184
|
343 |
+
msgid "Choose color"
|
344 |
+
msgstr "Välj färg"
|
345 |
+
|
346 |
+
#: views/settings.php:190
|
347 |
+
msgid "Upload background"
|
348 |
+
msgstr "Ladda upp bakgrund"
|
349 |
+
|
350 |
+
#: views/settings.php:194
|
351 |
+
msgid "Backgrounds should have 1920x1280 px size."
|
352 |
+
msgstr "En bakgrund bör vara minst 1920x1280px. "
|
353 |
+
|
354 |
+
#: views/settings.php:199
|
355 |
+
msgid "Choose background"
|
356 |
+
msgstr "Välj bakgrund"
|
357 |
+
|
358 |
+
#: views/settings.php:201
|
359 |
+
#, php-format
|
360 |
+
msgid "source <a href=\"%s\" target=\"_blank\">Free Photos</a>"
|
361 |
+
msgstr ""
|
362 |
+
|
363 |
+
#: views/settings.php:234
|
364 |
+
msgid "Countdown"
|
365 |
+
msgstr "Nedräkning"
|
366 |
+
|
367 |
+
#: views/settings.php:239
|
368 |
+
msgid "Show countdown?"
|
369 |
+
msgstr "Visa nedräkning?"
|
370 |
+
|
371 |
+
#: views/settings.php:248
|
372 |
+
msgid "Start date"
|
373 |
+
msgstr "Startdatum"
|
374 |
+
|
375 |
+
#: views/settings.php:254
|
376 |
+
msgid "Countdown (remaining time)"
|
377 |
+
msgstr "Nedräkning (återstående tid)"
|
378 |
+
|
379 |
+
#: views/settings.php:256
|
380 |
+
msgid "Days"
|
381 |
+
msgstr "Dagar"
|
382 |
+
|
383 |
+
#: views/settings.php:257
|
384 |
+
msgid "Hours"
|
385 |
+
msgstr "Timmar"
|
386 |
+
|
387 |
+
#: views/settings.php:258
|
388 |
+
msgid "Minutes"
|
389 |
+
msgstr "Minuter"
|
390 |
+
|
391 |
+
#: views/settings.php:262
|
392 |
+
msgid "Color"
|
393 |
+
msgstr "Färg"
|
394 |
+
|
395 |
+
#: views/settings.php:275
|
396 |
+
msgid "Show subscribe?"
|
397 |
+
msgstr "Visa prenumerationsknapp?"
|
398 |
+
|
399 |
+
#: views/settings.php:291
|
400 |
+
msgid "Stats"
|
401 |
+
msgstr "Statistik"
|
402 |
+
|
403 |
+
#: views/settings.php:300
|
404 |
+
msgid "Export as CSV"
|
405 |
+
msgstr "Exportera som CSV"
|
406 |
+
|
407 |
+
#: views/settings.php:301
|
408 |
+
msgid "Empty subscribers list"
|
409 |
+
msgstr ""
|
410 |
+
|
411 |
+
#: views/settings.php:308
|
412 |
+
msgid "Social Networks"
|
413 |
+
msgstr "Sociala nätverk"
|
414 |
+
|
415 |
+
#: views/settings.php:313
|
416 |
+
msgid "Show social networks?"
|
417 |
+
msgstr "Visa sociala nätverk?"
|
418 |
+
|
419 |
+
#: views/settings.php:322
|
420 |
+
msgid "Links target?"
|
421 |
+
msgstr ""
|
422 |
+
|
423 |
+
#: views/settings.php:325
|
424 |
+
msgid "New page"
|
425 |
+
msgstr ""
|
426 |
+
|
427 |
+
#: views/settings.php:326
|
428 |
+
msgid "Same page"
|
429 |
+
msgstr ""
|
430 |
+
|
431 |
+
#: views/settings.php:328
|
432 |
+
msgid "Choose how the links will open."
|
433 |
+
msgstr ""
|
434 |
+
|
435 |
+
#: views/settings.php:376
|
436 |
+
msgid "Contact"
|
437 |
+
msgstr "Kontakt"
|
438 |
+
|
439 |
+
#: views/settings.php:381
|
440 |
+
msgid "Show contact?"
|
441 |
+
msgstr "Visa kontaktknapp?"
|
442 |
+
|
443 |
+
#: views/settings.php:390
|
444 |
+
msgid "Email address"
|
445 |
+
msgstr "E-postadress"
|
446 |
+
|
447 |
+
#: views/settings.php:396
|
448 |
+
msgid "Effects"
|
449 |
+
msgstr "Effekter"
|
450 |
+
|
451 |
+
#: views/settings.php:399
|
452 |
+
msgid "Move top - Move bottom"
|
453 |
+
msgstr "Glid"
|
454 |
+
|
455 |
+
#: views/settings.php:400
|
456 |
+
msgid "Zoom - Zoomed"
|
457 |
+
msgstr "Zoom"
|
458 |
+
|
459 |
+
#: views/settings.php:401
|
460 |
+
msgid "Fold - Unfold"
|
461 |
+
msgstr "Vik"
|
462 |
+
|
463 |
+
#: views/settings.php:408
|
464 |
+
msgid "Google Analytics"
|
465 |
+
msgstr ""
|
466 |
+
|
467 |
+
#: views/settings.php:413
|
468 |
+
msgid "Use Google Analytics?"
|
469 |
+
msgstr ""
|
470 |
+
|
471 |
+
#: views/settings.php:422
|
472 |
+
msgid "Tracking code"
|
473 |
+
msgstr ""
|
474 |
+
|
475 |
+
#: views/sidebar.php:3
|
476 |
+
msgid "Plugin Info"
|
477 |
+
msgstr "Information om tillägg"
|
478 |
+
|
479 |
+
#: views/sidebar.php:13
|
480 |
+
msgid "Author"
|
481 |
+
msgstr "Författare"
|
482 |
+
|
483 |
+
#: views/sidebar.php:14
|
484 |
+
msgid "Website"
|
485 |
+
msgstr "Hemsida"
|
486 |
+
|
487 |
+
#: views/sidebar.php:15
|
488 |
+
msgid "Twitter"
|
489 |
+
msgstr "Twitter"
|
490 |
+
|
491 |
+
#: views/sidebar.php:16
|
492 |
+
msgid "GitHub"
|
493 |
+
msgstr "GitHub"
|
494 |
+
|
495 |
+
#: views/sidebar.php:27
|
496 |
+
msgid "Other products"
|
497 |
+
msgstr ""
|
498 |
+
|
499 |
+
#: views/sidebar.php:44
|
500 |
+
msgid "Resources"
|
501 |
+
msgstr "Resurser"
|
502 |
+
|
503 |
+
#~ msgid "You successfuly subscribed. Thanks!"
|
504 |
+
#~ msgstr "Din e-post registrerades. Tack! "
|
505 |
+
|
506 |
+
#~ msgid "Which user role is allowed to access the backend of this blog?"
|
507 |
+
#~ msgstr "Vilken användarroll får tillgång till back end av denna hemsidan?"
|
508 |
+
|
509 |
+
#~ msgid "Which user role is allowed to access the frontend of this blog?"
|
510 |
+
#~ msgstr "Vilken användarroll får tillgång till front end av denna hemsidan?"
|
511 |
+
|
512 |
+
#~ msgid ""
|
513 |
+
#~ "If you want to redirect a user to a URL (which is not the WordPress "
|
514 |
+
#~ "dashboard) after login, then define a URL (incl. http://)"
|
515 |
+
#~ msgstr ""
|
516 |
+
#~ "Om du vill omdirigera en användare till en URL (förutom WordPresspanelen) "
|
517 |
+
#~ "efter att de har loggat in, fyll i en URL (inkl. http://)"
|
518 |
+
|
519 |
+
#~ msgid "source <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
520 |
+
#~ msgstr "källa <a href=\"%\" target=\"_blank\">Free Photos</a>"
|
521 |
+
|
522 |
+
#~ msgid "Subscribe now for early access to new WordPress themes."
|
523 |
+
#~ msgstr "Prenumerera nu för tidig tillgång till nya WordPress-teman."
|
524 |
+
|
525 |
+
#~ msgid "Enter your email address"
|
526 |
+
#~ msgstr "Fyll i din e-postadress"
|
527 |
+
|
528 |
+
#~ msgid "News"
|
529 |
+
#~ msgstr "Nyheter"
|
@@ -1,105 +1,105 @@
|
|
1 |
-
#
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
*
|
10 |
-
*
|
11 |
-
*
|
12 |
-
*
|
13 |
-
*
|
14 |
-
*
|
15 |
-
*
|
16 |
-
*
|
17 |
-
*
|
18 |
-
*
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
## F.A.Q.
|
27 |
-
|
28 |
-
**How to use plugin filters**
|
29 |
-
|
30 |
-
`wpmm_backtime` - can be used to change the backtime from page `Retry-After` header
|
31 |
-
|
32 |
-
```php
|
33 |
-
function new_backtime() {
|
34 |
-
return 1800;
|
35 |
-
}
|
36 |
-
|
37 |
-
add_filter('wpmm_backtime', 'new_backtime');
|
38 |
-
```
|
39 |
-
|
40 |
-
Now... the search bots will retry to visit the page after 1800 seconds.
|
41 |
-
|
42 |
-
`wpmm_search_bots` - if you have `Bypass for Search Bots` option (from General) activated, it can be used to add / delete bots (useragents)
|
43 |
-
|
44 |
-
```php
|
45 |
-
function new_search_bots($bots) {
|
46 |
-
// we delete a bot from array
|
47 |
-
if(!empty($bots['AcoiRobot'])){
|
48 |
-
unset($bots['AcoiRobot']);
|
49 |
-
}
|
50 |
-
|
51 |
-
// we add a new bot into array
|
52 |
-
if(empty($bots['new_robot'])){
|
53 |
-
$bots['new_robot'] = 'NewRobot'; // NewRobot is the user agent
|
54 |
-
}
|
55 |
-
|
56 |
-
return $bots;
|
57 |
-
}
|
58 |
-
|
59 |
-
add_filter('wpmm_search_bots', 'new_search_bots');
|
60 |
-
```
|
61 |
-
|
62 |
-
We deleted a bot from list and added a new one.
|
63 |
-
|
64 |
-
`wpmm_text` - can be used to change `Text` option
|
65 |
-
|
66 |
-
```php
|
67 |
-
function new_text($text) {
|
68 |
-
$text = str_replace('http://www.designmodo.com', 'http://designmodo.com', $text);
|
69 |
-
|
70 |
-
|
71 |
-
return $text;
|
72 |
-
}
|
73 |
-
|
74 |
-
add_filter('wpmm_text', 'new_text');
|
75 |
-
```
|
76 |
-
|
77 |
-
We replaced a string with another string. We can also add another text, add some extra html, etc.
|
78 |
-
|
79 |
-
`wpmm_styles` - can be used to embed new css files
|
80 |
-
|
81 |
-
```php
|
82 |
-
function new_css_styles($styles) {
|
83 |
-
$styles['new-style'] = 'path_to_css_file/style.css'; // replace with the real path :)
|
84 |
-
|
85 |
-
return $styles;
|
86 |
-
}
|
87 |
-
|
88 |
-
add_filter('wpmm_styles', 'new_css_styles');
|
89 |
-
```
|
90 |
-
|
91 |
-
We embedded a new css style on maintenance page. Same mechanism can be used for javascript files (see `wpmm_scripts` filter).
|
92 |
-
|
93 |
-
**Cache Plugin Support**
|
94 |
-
|
95 |
-
WP Maintenance Mode can be unstable due the cache plugins, we recommend to deactivate any cache plugin when maintenance mode is active.
|
96 |
-
|
97 |
-
## Other Notes
|
98 |
-
### License
|
99 |
-
Good news, this plugin is free for everyone! Since it's released under the GPL, you can use it free of charge on your personal or commercial blog.
|
100 |
-
|
101 |
-
### Translations
|
102 |
-
The plugin comes with various translations, please refer to the [WordPress Codex](http://codex.wordpress.org/Installing_WordPress_in_Your_Language "Installing WordPress in Your Language") for more information about activating the translation. If you want to help to translate the plugin to your language, please have a look at the .pot file which contains all defintions and may be used with a [gettext](http://www.gnu.org/software/gettext/) editor like [Poedit](http://www.poedit.net/) (Linux, Mac OS X, Windows).
|
103 |
-
|
104 |
-
### Contact & Feedback
|
105 |
-
Please let me know if you like the plugin or you hate it or whatever... Please fork it, add an issue for ideas and bugs.
|
1 |
+
# Version 2.0.4
|
2 |
+
|
3 |
+
# WP Maintenance Mode
|
4 |
+
|
5 |
+
Adds a splash page to your site that lets visitors know your site is down for maintenance. It's perfect for a coming soon page.
|
6 |
+
|
7 |
+
**Features**
|
8 |
+
|
9 |
+
* Fully customizable (change colors, texts and backgrounds);
|
10 |
+
* Subscription form (export emails to .csv file);
|
11 |
+
* Countdown timer (remaining time);
|
12 |
+
* Contact form (receive emails from visitors);
|
13 |
+
* Coming soon page;
|
14 |
+
* Landing page templates;
|
15 |
+
* WordPress multisite;
|
16 |
+
* Responsive design;
|
17 |
+
* Social media icons;
|
18 |
+
* Works with any WordPress theme;
|
19 |
+
* SEO options;
|
20 |
+
* Exclude URLs from maintenance.
|
21 |
+
|
22 |
+
**Credits**
|
23 |
+
|
24 |
+
Developed by [Designmodo](http://designmodo.com)
|
25 |
+
|
26 |
+
## F.A.Q.
|
27 |
+
|
28 |
+
**How to use plugin filters**
|
29 |
+
|
30 |
+
`wpmm_backtime` - can be used to change the backtime from page `Retry-After` header
|
31 |
+
|
32 |
+
```php
|
33 |
+
function new_backtime() {
|
34 |
+
return 1800;
|
35 |
+
}
|
36 |
+
|
37 |
+
add_filter('wpmm_backtime', 'new_backtime');
|
38 |
+
```
|
39 |
+
|
40 |
+
Now... the search bots will retry to visit the page after 1800 seconds.
|
41 |
+
|
42 |
+
`wpmm_search_bots` - if you have `Bypass for Search Bots` option (from General) activated, it can be used to add / delete bots (useragents)
|
43 |
+
|
44 |
+
```php
|
45 |
+
function new_search_bots($bots) {
|
46 |
+
// we delete a bot from array
|
47 |
+
if(!empty($bots['AcoiRobot'])){
|
48 |
+
unset($bots['AcoiRobot']);
|
49 |
+
}
|
50 |
+
|
51 |
+
// we add a new bot into array
|
52 |
+
if(empty($bots['new_robot'])){
|
53 |
+
$bots['new_robot'] = 'NewRobot'; // NewRobot is the user agent
|
54 |
+
}
|
55 |
+
|
56 |
+
return $bots;
|
57 |
+
}
|
58 |
+
|
59 |
+
add_filter('wpmm_search_bots', 'new_search_bots');
|
60 |
+
```
|
61 |
+
|
62 |
+
We deleted a bot from list and added a new one.
|
63 |
+
|
64 |
+
`wpmm_text` - can be used to change `Text` option
|
65 |
+
|
66 |
+
```php
|
67 |
+
function new_text($text) {
|
68 |
+
$text = str_replace('http://www.designmodo.com', 'http://designmodo.com', $text);
|
69 |
+
|
70 |
+
|
71 |
+
return $text;
|
72 |
+
}
|
73 |
+
|
74 |
+
add_filter('wpmm_text', 'new_text');
|
75 |
+
```
|
76 |
+
|
77 |
+
We replaced a string with another string. We can also add another text, add some extra html, etc.
|
78 |
+
|
79 |
+
`wpmm_styles` - can be used to embed new css files
|
80 |
+
|
81 |
+
```php
|
82 |
+
function new_css_styles($styles) {
|
83 |
+
$styles['new-style'] = 'path_to_css_file/style.css'; // replace with the real path :)
|
84 |
+
|
85 |
+
return $styles;
|
86 |
+
}
|
87 |
+
|
88 |
+
add_filter('wpmm_styles', 'new_css_styles');
|
89 |
+
```
|
90 |
+
|
91 |
+
We embedded a new css style on maintenance page. Same mechanism can be used for javascript files (see `wpmm_scripts` filter).
|
92 |
+
|
93 |
+
**Cache Plugin Support**
|
94 |
+
|
95 |
+
WP Maintenance Mode can be unstable due the cache plugins, we recommend to deactivate any cache plugin when maintenance mode is active.
|
96 |
+
|
97 |
+
## Other Notes
|
98 |
+
### License
|
99 |
+
Good news, this plugin is free for everyone! Since it's released under the GPL, you can use it free of charge on your personal or commercial blog.
|
100 |
+
|
101 |
+
### Translations
|
102 |
+
The plugin comes with various translations, please refer to the [WordPress Codex](http://codex.wordpress.org/Installing_WordPress_in_Your_Language "Installing WordPress in Your Language") for more information about activating the translation. If you want to help to translate the plugin to your language, please have a look at the .pot file which contains all defintions and may be used with a [gettext](http://www.gnu.org/software/gettext/) editor like [Poedit](http://www.poedit.net/) (Linux, Mac OS X, Windows).
|
103 |
+
|
104 |
+
### Contact & Feedback
|
105 |
+
Please let me know if you like the plugin or you hate it or whatever... Please fork it, add an issue for ideas and bugs.
|
@@ -1,364 +1,381 @@
|
|
1 |
-
=== WP Maintenance Mode ===
|
2 |
-
Contributors: Designmodo, GeorgeJipa
|
3 |
-
Plugin Name: WP Maintenance Mode
|
4 |
-
Plugin URI: http://designmodo.com/
|
5 |
-
Author: Designmodo
|
6 |
-
Author URI: http://designmodo.com/
|
7 |
-
Tags: maintenance mode, admin, administration, unavailable, coming soon, multisite, landing page, under construction, contact form, subscribe, countdown
|
8 |
-
Requires at least: 3.5
|
9 |
-
Tested up to: 4.
|
10 |
-
Stable tag: 2.0.
|
11 |
-
License: GPL-2.0+
|
12 |
-
|
13 |
-
Adds a splash page to your site that lets visitors know your site is down for maintenance. It's perfect for a coming soon page.
|
14 |
-
|
15 |
-
== Description ==
|
16 |
-
|
17 |
-
Add a maintenance page to your blog that lets visitors know your blog is down for maintenance, or add a coming soon page for a new website. User with admin rights gets full access to the blog including the front end.
|
18 |
-
|
19 |
-
Activate the plugin and your blog is in maintenance-mode, works and only registered users with enough rights can see the front end. You can use a date with a countdown timer for visitor information or set a value and unit for information.
|
20 |
-
Also works with WordPress Multisite installs (each blog from the network has it's own maintenance settings).
|
21 |
-
|
22 |
-
= Features =
|
23 |
-
|
24 |
-
* Fully customizable (change colors, texts and backgrounds);
|
25 |
-
* Subscription form (export emails to .csv file);
|
26 |
-
* Countdown timer (remaining time);
|
27 |
-
* Contact form (receive emails from visitors);
|
28 |
-
* Coming soon page;
|
29 |
-
* Landing page templates;
|
30 |
-
* WordPress multisite;
|
31 |
-
* Responsive design;
|
32 |
-
* Social media icons;
|
33 |
-
* Works with any WordPress theme;
|
34 |
-
* SEO options;
|
35 |
-
* Exclude URLs from maintenance.
|
36 |
-
|
37 |
-
= Bugs, technical hints or contribute =
|
38 |
-
|
39 |
-
Please give us feedback, contribute and file technical bugs on [GitHub Repo](https://github.com/Designmodocom/WP-Maintenance-Mode).
|
40 |
-
|
41 |
-
= Credits =
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
*
|
77 |
-
* fixed
|
78 |
-
* fixed
|
79 |
-
*
|
80 |
-
*
|
81 |
-
*
|
82 |
-
*
|
83 |
-
*
|
84 |
-
*
|
85 |
-
*
|
86 |
-
*
|
87 |
-
*
|
88 |
-
*
|
89 |
-
*
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
*
|
94 |
-
*
|
95 |
-
|
96 |
-
|
97 |
-
*
|
98 |
-
*
|
99 |
-
|
100 |
-
|
101 |
-
*
|
102 |
-
|
103 |
-
|
104 |
-
*
|
105 |
-
*
|
106 |
-
*
|
107 |
-
*
|
108 |
-
*
|
109 |
-
|
110 |
-
|
111 |
-
*
|
112 |
-
|
113 |
-
|
114 |
-
* Removed
|
115 |
-
*
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
- `
|
120 |
-
- `
|
121 |
-
|
122 |
-
|
123 |
-
*
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
* Removed
|
131 |
-
|
132 |
-
|
133 |
-
*
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
*
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
*
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
*
|
154 |
-
*
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
*
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
* Small
|
164 |
-
* Add
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
*
|
169 |
-
*
|
170 |
-
* Add
|
171 |
-
* Add
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
*
|
177 |
-
*
|
178 |
-
*
|
179 |
-
|
180 |
-
* Small
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
*
|
185 |
-
* Add
|
186 |
-
*
|
187 |
-
* Add
|
188 |
-
*
|
189 |
-
|
190 |
-
= 1.8.
|
191 |
-
*
|
192 |
-
*
|
193 |
-
|
194 |
-
|
195 |
-
*
|
196 |
-
*
|
197 |
-
*
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
*
|
202 |
-
* Add
|
203 |
-
|
204 |
-
|
205 |
-
*
|
206 |
-
|
207 |
-
|
208 |
-
*
|
209 |
-
*
|
210 |
-
|
211 |
-
= 1.
|
212 |
-
*
|
213 |
-
|
214 |
-
|
215 |
-
*
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
*
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
*
|
233 |
-
*
|
234 |
-
*
|
235 |
-
|
236 |
-
|
237 |
-
*
|
238 |
-
*
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
*
|
245 |
-
*
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
*
|
250 |
-
*
|
251 |
-
*
|
252 |
-
|
253 |
-
|
254 |
-
*
|
255 |
-
*
|
256 |
-
*
|
257 |
-
|
258 |
-
|
259 |
-
*
|
260 |
-
|
261 |
-
|
262 |
-
*
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
* add
|
267 |
-
*
|
268 |
-
*
|
269 |
-
|
270 |
-
= 1.6.
|
271 |
-
*
|
272 |
-
|
273 |
-
|
274 |
-
*
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
* add
|
283 |
-
|
284 |
-
|
285 |
-
*
|
286 |
-
|
287 |
-
|
288 |
-
*
|
289 |
-
|
290 |
-
= 1.
|
291 |
-
*
|
292 |
-
|
293 |
-
= 1.5.
|
294 |
-
*
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
*
|
299 |
-
*
|
300 |
-
|
301 |
-
= 1.5.
|
302 |
-
*
|
303 |
-
*
|
304 |
-
*
|
305 |
-
*
|
306 |
-
|
307 |
-
= 1.5.
|
308 |
-
*
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
*
|
317 |
-
|
318 |
-
|
319 |
-
*
|
320 |
-
*
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
* add
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
* add
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
*
|
336 |
-
* add
|
337 |
-
*
|
338 |
-
|
339 |
-
=
|
340 |
-
*
|
341 |
-
* add
|
342 |
-
* add
|
343 |
-
|
344 |
-
=
|
345 |
-
* add design "
|
346 |
-
* add design "
|
347 |
-
|
348 |
-
=
|
349 |
-
*
|
350 |
-
|
351 |
-
|
352 |
-
* add design "
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
*
|
360 |
-
|
361 |
-
= v1.4 (
|
362 |
-
*
|
363 |
-
*
|
364 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
=== WP Maintenance Mode ===
|
2 |
+
Contributors: Designmodo, GeorgeJipa
|
3 |
+
Plugin Name: WP Maintenance Mode
|
4 |
+
Plugin URI: http://designmodo.com/
|
5 |
+
Author: Designmodo
|
6 |
+
Author URI: http://designmodo.com/
|
7 |
+
Tags: maintenance mode, admin, administration, unavailable, coming soon, multisite, landing page, under construction, contact form, subscribe, countdown
|
8 |
+
Requires at least: 3.5
|
9 |
+
Tested up to: 4.5.2
|
10 |
+
Stable tag: 2.0.4
|
11 |
+
License: GPL-2.0+
|
12 |
+
|
13 |
+
Adds a splash page to your site that lets visitors know your site is down for maintenance. It's perfect for a coming soon page.
|
14 |
+
|
15 |
+
== Description ==
|
16 |
+
|
17 |
+
Add a maintenance page to your blog that lets visitors know your blog is down for maintenance, or add a coming soon page for a new website. User with admin rights gets full access to the blog including the front end.
|
18 |
+
|
19 |
+
Activate the plugin and your blog is in maintenance-mode, works and only registered users with enough rights can see the front end. You can use a date with a countdown timer for visitor information or set a value and unit for information.
|
20 |
+
Also works with WordPress Multisite installs (each blog from the network has it's own maintenance settings).
|
21 |
+
|
22 |
+
= Features =
|
23 |
+
|
24 |
+
* Fully customizable (change colors, texts and backgrounds);
|
25 |
+
* Subscription form (export emails to .csv file);
|
26 |
+
* Countdown timer (remaining time);
|
27 |
+
* Contact form (receive emails from visitors);
|
28 |
+
* Coming soon page;
|
29 |
+
* Landing page templates;
|
30 |
+
* WordPress multisite;
|
31 |
+
* Responsive design;
|
32 |
+
* Social media icons;
|
33 |
+
* Works with any WordPress theme;
|
34 |
+
* SEO options;
|
35 |
+
* Exclude URLs from maintenance.
|
36 |
+
|
37 |
+
= Bugs, technical hints or contribute =
|
38 |
+
|
39 |
+
Please give us feedback, contribute and file technical bugs on [GitHub Repo](https://github.com/Designmodocom/WP-Maintenance-Mode).
|
40 |
+
|
41 |
+
= Credits =
|
42 |
+
|
43 |
+
Developed by [Designmodo](http://designmodo.com)
|
44 |
+
|
45 |
+
== Installation ==
|
46 |
+
|
47 |
+
1. Unpack the download package
|
48 |
+
2. Upload all files to the `/wp-content/plugins/` directory, include folders
|
49 |
+
3. Activate the plugin through the 'Plugins' menu in WordPress
|
50 |
+
4. Go to `Settings` page, where you can change what settings you need (pay attention to **Exclude** option!)
|
51 |
+
|
52 |
+
== Screenshots ==
|
53 |
+
|
54 |
+
1. Maintenance Mode example
|
55 |
+
2. Maintenance Mode example #2
|
56 |
+
3. Contact form
|
57 |
+
4. Dashboard General settings
|
58 |
+
5. Dashboard Design settings
|
59 |
+
6. Dashboard Modules settings
|
60 |
+
|
61 |
+
== Frequently Asked Questions ==
|
62 |
+
|
63 |
+
= How to use plugin filters =
|
64 |
+
See [GitHub Repo] (https://github.com/Designmodocom/WP-Maintenance-Mode) FAQ.
|
65 |
+
|
66 |
+
= Cache Plugin Support =
|
67 |
+
WP Maintenance Mode can be unstable due the cache plugins, we recommend to deactivate any cache plugin when maintenance mode is active.
|
68 |
+
|
69 |
+
= Exclude list =
|
70 |
+
If you change your login url, please add the new slug (url: http://domain.com/newlogin, then you should add: newlogin) to Exclude list from plugin settings -> General Tab.
|
71 |
+
|
72 |
+
== Changelog ==
|
73 |
+
|
74 |
+
= 2.0.4 (17/06/2016) =
|
75 |
+
* fixed issue: responsive subscribe form
|
76 |
+
* fixed issue: jQuery was loaded from a different folder on some WP installations
|
77 |
+
* fixed issue: errors after update (strstr on empty strings because of saving empty lines on exclude list)
|
78 |
+
* fixed issue: if "Redirection" from "General" tab is active, also redirects ajax calls
|
79 |
+
* fixed issue: settings page title was wrong placed
|
80 |
+
* "contact" feature update - nice email template + reply-to email header
|
81 |
+
* refactoring for some methods
|
82 |
+
* all assets are now minified
|
83 |
+
* rewrite count db records function (used on subscribers count)
|
84 |
+
* compatible with https://github.com/afragen/github-updater
|
85 |
+
* compatible with wp-cli http://wp-cli.org/
|
86 |
+
* improved responsivity
|
87 |
+
* improved roles access; now you can set multiple roles (editor, author, subscriber, contributor) and administrator will always have access to backend and frontend
|
88 |
+
* it_IT translation by benedettogit (https://github.com/benedettogit)
|
89 |
+
* updated all language files (need help for 100% translation)
|
90 |
+
|
91 |
+
|
92 |
+
= 2.0.3 (07/10/2014) =
|
93 |
+
* WP_Super_Cache issue was fixed
|
94 |
+
* fixed "Subscribe" button issue on Safari mobile
|
95 |
+
* fixed color of subscribe-success message (same color as subscribe_text)
|
96 |
+
* "Social networks" module edits: settings for links target + a new social network: linkedin
|
97 |
+
* new module "Google Analytics"
|
98 |
+
* loginform shortcode reintroduced
|
99 |
+
* dashboard link on maintenance page reintroduced
|
100 |
+
* the content editor accepts new css inline properties: min-height, max-height, min-width, max-width. Use them wisely! :)
|
101 |
+
* Settings & sidebar view + old translation files edited
|
102 |
+
* Update from old version 1.x to 2.x issue was fixed
|
103 |
+
* Translate on activation issue was fixed
|
104 |
+
* de_DE translation by Frank Bültge (http://bueltge.github.io/)
|
105 |
+
* pt_PT translation (100% translated) by Pedro Mendonça (http://www.pedromendonca.pt)
|
106 |
+
* ru_RU translation (100% translated) by affectiosus (https://github.com/affectiosus)
|
107 |
+
* nl_NL translation by dhunink (https://github.com/dhunink)
|
108 |
+
* es_ES translation (100% translated) by Erick Ruiz de Chavez (http://erickruizdechavez.com/)
|
109 |
+
* fr_FR translation by Florian TIAR (https://github.com/Mahjouba91)
|
110 |
+
* pt_BR translation by Jonatas Araújo (http://www.designworld.com.br/)
|
111 |
+
* sv_SE translation by Andréas Lundgren (http://adevade.com/)
|
112 |
+
|
113 |
+
= 2.0.2 (04/09/2014) =
|
114 |
+
* Removed "Author Link" option from General
|
115 |
+
* Countdown - save details fix
|
116 |
+
|
117 |
+
= 2.0.1 (02/09/2014) =
|
118 |
+
* Reintroduced some deprecated actions from old version (but still available in next 4 releases, after that will be removed) and replaced with new ones:
|
119 |
+
- `wm_head` -> `wpmm_head`
|
120 |
+
- `wm_footer` -> `wpmm_footer`
|
121 |
+
* Multisite settings link fix
|
122 |
+
* WP_Maintenance_Mode: init (array checking for custom_css arrays, move delete cache part into a helper, etc.), add_subscriber, send_contact, redirect fixes & optimizations
|
123 |
+
* WP_Maintenance_Mode_Admin: save_plugin_settings fixes, delete_cache (new method)
|
124 |
+
* Settings & Maintenance views fixes
|
125 |
+
* Readme.txt changes
|
126 |
+
|
127 |
+
= 2.0.0 (01/09/2014) =
|
128 |
+
* Changed design and functionality, new features
|
129 |
+
* Changed multisite behaviour: now you can activate maintenance individually (each blog from the network has it's own maintenance settings)
|
130 |
+
* Removed actions: `wm_header`, `wm_footer`, `wm_content`
|
131 |
+
* Removed filters: `wm_header`
|
132 |
+
* Removed [loginform] shortcode
|
133 |
+
* Some filters are deprecated (but still available in next 4 releases, after that will be removed) and replaced with new ones:
|
134 |
+
- `wm_heading` -> `wpmm_heading`,
|
135 |
+
- `wp_maintenance_mode_status_code` -> `wpmm_status_code`
|
136 |
+
- `wm_title` -> `wpmm_meta_title`
|
137 |
+
- `wm_meta_author` -> `wpmm_meta_author`
|
138 |
+
- `wm_meta_description` -> `wpmm_meta_description`
|
139 |
+
- `wm_meta_keywords` -> `wpmm_meta_keywords`
|
140 |
+
* Added new filters:
|
141 |
+
- `wpmm_backtime` - can be used to change the backtime from page header
|
142 |
+
- `wpmm_meta_robots` - can be used to change `Robots Meta Tag` option (from General)
|
143 |
+
- `wpmm_text` - can be used to change `Text` option (from Design > Content)
|
144 |
+
- `wpmm_scripts` - can be used to embed new javascripts files
|
145 |
+
- `wpmm_styles` - can be used to embed new css files
|
146 |
+
- `wpmm_search_bots` - if you have `Bypass for Search Bots` option (from General) activated, it can be used to add new bots (useragents)
|
147 |
+
* Removed themes and now we have a "Design" & "Modules" tabs, where the look and functionality of the maintenance page can be changed as you need
|
148 |
+
|
149 |
+
= 07/07/2014 =
|
150 |
+
* Switch to new owner, contributor
|
151 |
+
|
152 |
+
= 1.8.11 (07/25/2013) =
|
153 |
+
* Fixes for php notices in scrict mode
|
154 |
+
* Alternative for check url, if curl is not installed
|
155 |
+
|
156 |
+
= 1.8.10 (07/18/2013) =
|
157 |
+
* Add check for urls, Performance topics
|
158 |
+
* Change default setting of 'Support Link' to false
|
159 |
+
* Fix network settings php notices
|
160 |
+
|
161 |
+
= 1.8.9 (06/20/2013) =
|
162 |
+
* Allow empty header, title, heading string
|
163 |
+
* Small code changes
|
164 |
+
* Add Support function
|
165 |
+
* Remove preview, will include later in a new release with extra settings page
|
166 |
+
|
167 |
+
= 1.8.8 (06/05/2013) =
|
168 |
+
* Fix path to localized flash content
|
169 |
+
* Fix preview function
|
170 |
+
* Add ukrainian translation
|
171 |
+
* Add czech translation
|
172 |
+
* Fix exclude function for IP
|
173 |
+
* Security fix for save status via Ajax
|
174 |
+
|
175 |
+
= 1.8.7 (04/07/2013) =
|
176 |
+
* Add RTL support for splash page
|
177 |
+
* Add Filter Hook `wp_maintenance_mode_status_code` Status Code; default is 503
|
178 |
+
* Add support for custom splash page; leave a file with this name `wp-maintenance-mode.php` in the wp-content; the plugin use this file
|
179 |
+
The plugin checks in `WP_CONTENT_DIR . '/wp-maintenance-mode.php'`
|
180 |
+
* Small minor changes
|
181 |
+
* Add filter for more date on splash page
|
182 |
+
|
183 |
+
= 1.8.6 (02/22/2013) =
|
184 |
+
* Remove log inside console for JS
|
185 |
+
* Add support for time inside the countdown
|
186 |
+
* Add filter hook `wm_meta_author`for the meta data author
|
187 |
+
* Add filter hook `wm_meta_description` for custom description
|
188 |
+
* Add filter hook `wm_meta_keywords`for custom meta keys
|
189 |
+
|
190 |
+
= 1.8.5 (01/24/2013) =
|
191 |
+
* Added new settings for hide, view notices about the active maintenance mode
|
192 |
+
* Changes on source, codex
|
193 |
+
* Fix PHP Notices [Support Thread](http://wordpress.org/support/topic/error-message-in-settings-1)
|
194 |
+
* Change default settings, added ajax
|
195 |
+
* Fix Preview function
|
196 |
+
* Fix uninstall in WPMU
|
197 |
+
* Small updates on styles for login form
|
198 |
+
|
199 |
+
= 1.8.4 (12/06/2012) =
|
200 |
+
* Fix for include JS in frontend to use countdown
|
201 |
+
* Small mini fix for a php notice
|
202 |
+
* Add charset on spalsh page for strange databases
|
203 |
+
* Enhanced default exclude adresses
|
204 |
+
* Add shortcode `[loginform]` for easy use a login form in splash page
|
205 |
+
* Test with WordPress 3.5
|
206 |
+
|
207 |
+
= 1.8.3 =
|
208 |
+
* Fix for the forgotten update of JS-files; slow SVN :(
|
209 |
+
* Minor Fixes
|
210 |
+
|
211 |
+
= 1.8.2 =
|
212 |
+
* Add different access for Frontend and Backend
|
213 |
+
* Add Rewrite after Login for Frontend Access
|
214 |
+
* Different small changes
|
215 |
+
* Test for WP 3.5
|
216 |
+
|
217 |
+
= 1.8.1 =
|
218 |
+
* Add option for value of robots meta tag
|
219 |
+
* Add option for optional admin login
|
220 |
+
|
221 |
+
= 1.8.0 =
|
222 |
+
* Include all scripts in backend via function
|
223 |
+
* Update datepicker and countdown js
|
224 |
+
* Supportet IP as exclude for see the frontend
|
225 |
+
* Add support for flish cache od WP Super Cache and W3 Total Cache plugins
|
226 |
+
* Fix for changes in WP 3.3 Multisite
|
227 |
+
|
228 |
+
= 1.7.1 (12/05/2011) =
|
229 |
+
* fix for WP smaller 3.2* on Network
|
230 |
+
|
231 |
+
= 1.7.0 (12/02/2011) =
|
232 |
+
* add functionalities to use in WP Multisite
|
233 |
+
* remove message in header, current is not fixed the ticked in core and the message on Admin Bar an Notice is enough
|
234 |
+
* check on WP 3.3RC1
|
235 |
+
|
236 |
+
= 1.6.10 (08/30/2011) =
|
237 |
+
* add hint in Admin Bar, if active
|
238 |
+
* small changes for WP Codex
|
239 |
+
|
240 |
+
= 1.6.9 (06/13/2011) =
|
241 |
+
* Small fix for empty string on custom design
|
242 |
+
|
243 |
+
= 1.6.8 (04/05/2011) =
|
244 |
+
* Small changes on check for datepicker
|
245 |
+
* Fix for Design monster
|
246 |
+
|
247 |
+
= 1.6.7 (01/05/2011) =
|
248 |
+
* Bugfix: new check for files for different themes; hope this fix the server errors
|
249 |
+
* Bugfix: fix add default settings
|
250 |
+
* Maintenance: different changes on the syntax
|
251 |
+
* Feature: add check for Super Admin on WP Multisite; has allways the rights for access
|
252 |
+
* Feature: now it is possible to exclude feed from maintenance mode
|
253 |
+
* Maintenance: check with 3.0.4 and 3.1-RC2
|
254 |
+
* Maintenance: update language file: .pot, de_DE
|
255 |
+
* Bugfix: JavaScript error on Bulk Actions on plugins fixed
|
256 |
+
* Maintenance: fix all notice, if set no values
|
257 |
+
|
258 |
+
= 1.6.6. (10/09/2010) =
|
259 |
+
* Maintenance: many changes on the code; $locale and hook in side frontend
|
260 |
+
* Maintenance: change attribute_escaped to esc_attr with custom method for WP smaller 2.8
|
261 |
+
* Maintenance: Update german language files
|
262 |
+
* Feature: Shortcodes is now possible in the "Text" option
|
263 |
+
* Feature: no cache header rewrite
|
264 |
+
|
265 |
+
= 1.6.5 (09/16/2010) =
|
266 |
+
* add new design "Chemistry" by [elmastudio.de](http://www.elmastudio.de/ "elmastudio.de")
|
267 |
+
* changes for include methods od class for preview
|
268 |
+
* changes the possibility for include of language specific flash files
|
269 |
+
|
270 |
+
= 1.6.4 (09/13/2010) =
|
271 |
+
* add preview functions
|
272 |
+
* bugfix for list in wp-admin/plugins.php
|
273 |
+
* remove datepicker.regional - dont work fine
|
274 |
+
* different small changes
|
275 |
+
* new language file .pot
|
276 |
+
* add flash file and change on plugin for style "Animate" for spanish language
|
277 |
+
|
278 |
+
= 1.6.3 (07/27/2010) =
|
279 |
+
* bugfix to include stylesheet on maintenance mode message
|
280 |
+
|
281 |
+
= 1.6.2 (07/08/2010) =
|
282 |
+
* add functions for hint in the new UI of WP 3.0
|
283 |
+
* add more WP Codex standard source
|
284 |
+
* fix strings in the language and languages files
|
285 |
+
* add datetimepicker-de
|
286 |
+
|
287 |
+
= 1.6.1 (06/18/2010) =
|
288 |
+
* fix a problem with https://; see [Ticket #13941](http://core.trac.wordpress.org/ticket/13941)
|
289 |
+
|
290 |
+
= 1.6 (05/17/2010) =
|
291 |
+
* bugfix for exclude sites
|
292 |
+
|
293 |
+
= 1.5.9 (05/07/2010) =
|
294 |
+
* change different points
|
295 |
+
* add possibility to wotk with MySQLDumper
|
296 |
+
|
297 |
+
= 1.5.8 (21/03/2010)=
|
298 |
+
* fix exclude error
|
299 |
+
* add textareas for heading and header fields
|
300 |
+
|
301 |
+
= 1.5.7 (03/18/2010) =
|
302 |
+
* block admin-area via role
|
303 |
+
* add message for registered users with not enough rights
|
304 |
+
* add message on login-page
|
305 |
+
* different changes
|
306 |
+
|
307 |
+
= 1.5.6 (02/25/2010) =
|
308 |
+
* changes on css, site.php and different syntax on the plugin
|
309 |
+
|
310 |
+
= 1.5.5 (02/23/2010) =
|
311 |
+
* SORRY, small bug for the url to jQuery
|
312 |
+
|
313 |
+
= 1.5.4 (02/23/2010) =
|
314 |
+
* add time for countdown
|
315 |
+
* changes for WP 3.0
|
316 |
+
* changees on rights to see frontend
|
317 |
+
|
318 |
+
= 1.5.3 (01/05/2010) =
|
319 |
+
* Fix for JavaScript with WordPress 2.9
|
320 |
+
* Add new custom fields for fronted: title, header, heading
|
321 |
+
* Fix for setting userrole to see frontend
|
322 |
+
* Change laguage files
|
323 |
+
|
324 |
+
= 1.5.2 (01/04/2010) =
|
325 |
+
* add user-role setting
|
326 |
+
* correctly the de_DE language file
|
327 |
+
|
328 |
+
= 1.5.1 (10/04/2009) =
|
329 |
+
* add small fix
|
330 |
+
* add language files (en_ES, ro_RO)
|
331 |
+
|
332 |
+
= 1.5.0 (09/28/2009) =
|
333 |
+
* add countdown
|
334 |
+
* change options
|
335 |
+
* change default options
|
336 |
+
* add field for own adress to excerpt of the maintenance mode
|
337 |
+
* etc.
|
338 |
+
|
339 |
+
= 1.4.9 (07/09/2009) =
|
340 |
+
* also ready for WordPress 2.6
|
341 |
+
* add romanian language files
|
342 |
+
* add italian language file by [Gianni Diurno](http://gidibao.net/ "Gianni Diurno")
|
343 |
+
|
344 |
+
= 1.4.8 (03/09/2009) =
|
345 |
+
* add design "Damask" by [Fabian Letscher](http://fabianletscher.de/ "Fabian Letscher")
|
346 |
+
* add design "Lego" by [Alex Frison](http://www.afrison.com/ "Alex Frison")
|
347 |
+
|
348 |
+
= 1.4.7 (26/08/2009) =
|
349 |
+
* change doc-type to utf-8 without BOM
|
350 |
+
|
351 |
+
= v1.4.6 (24/08/2009) =
|
352 |
+
* add design "Animate (Flash)" by [Sebastian Schmiedel](http://www.cayou-media.de/ "Sebastian Schmiedel")
|
353 |
+
* add new hook for add content `wm_content` to include flash on content
|
354 |
+
* add frensh language files
|
355 |
+
|
356 |
+
= v1.4.5 (19/08/2009) =
|
357 |
+
* fix html string in text on frontend
|
358 |
+
* add design "Paint" by [Marvin Labod](http://bugeyes.de/ "Marvin Labod")
|
359 |
+
* add turkey language files
|
360 |
+
|
361 |
+
= v1.4.4 (18/08/2009) =
|
362 |
+
* add design "Chastely" by [Florian Andreas Vogelmaier](http://fv-web.de/ "Florian Andreas Vogelmaier")
|
363 |
+
* add design "Only Typo" by [Robert Pfotenhauer](http://krautsuppe.de/ "Robert Pfotenhauer")
|
364 |
+
|
365 |
+
= v1.4.3 (13/08/2009) =
|
366 |
+
* add option for the Text
|
367 |
+
* add option for active maintenance mode
|
368 |
+
* add design "The FF Error" by [Thomas Meschke](http://www.lokalnetz.com/ "Thomas Meschke")
|
369 |
+
* add design "Monster" by [Sebastian Sebald](http://www.backseatsurfer.de "Sebastian Sebald")
|
370 |
+
|
371 |
+
= v1.4.2 (10/08/2009) =
|
372 |
+
* add design "The Sun" by [Nicki Steiger](http://mynicki.net/ "Nicki Steiger")
|
373 |
+
* now it is possible to add own css and add in settings the url to the css-file
|
374 |
+
|
375 |
+
= v1.4.1 (07/08/2009) =
|
376 |
+
* small html-fix
|
377 |
+
|
378 |
+
= v1.4 (06/08/2009) =
|
379 |
+
* complety new code
|
380 |
+
* options menu
|
381 |
+
* new designs by [David Hellmann](http://www.davidhellmann.com/ "David Hellmann")
|
@@ -1,36 +1,36 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
// If uninstall not called from WordPress, then exit
|
4 |
-
if (!defined('WP_UNINSTALL_PLUGIN')) {
|
5 |
-
exit();
|
6 |
-
}
|
7 |
-
|
8 |
-
/**
|
9 |
-
* Uninstall operations
|
10 |
-
*/
|
11 |
-
function single_uninstall() {
|
12 |
-
// delete subscribers table
|
13 |
-
$GLOBALS['wpdb']->query("DROP TABLE IF EXISTS {$GLOBALS['wpdb']->prefix}wpmm_subscribers");
|
14 |
-
|
15 |
-
// delete options
|
16 |
-
delete_option('wpmm_settings');
|
17 |
-
delete_option('wpmm_notice');
|
18 |
-
delete_option('wpmm_version');
|
19 |
-
}
|
20 |
-
|
21 |
-
// Let's do it!
|
22 |
-
if (is_multisite()) {
|
23 |
-
single_uninstall();
|
24 |
-
|
25 |
-
// delete data foreach blog
|
26 |
-
$blogs_list = $GLOBALS['wpdb']->get_results("SELECT blog_id FROM {$GLOBALS['wpdb']->blogs}", ARRAY_A);
|
27 |
-
if (!empty($blogs_list)) {
|
28 |
-
foreach ($blogs_list as $blog) {
|
29 |
-
switch_to_blog($blog['blog_id']);
|
30 |
-
single_uninstall();
|
31 |
-
restore_current_blog();
|
32 |
-
}
|
33 |
-
}
|
34 |
-
} else {
|
35 |
-
single_uninstall();
|
36 |
}
|
1 |
+
<?php
|
2 |
+
|
3 |
+
// If uninstall not called from WordPress, then exit
|
4 |
+
if (!defined('WP_UNINSTALL_PLUGIN')) {
|
5 |
+
exit();
|
6 |
+
}
|
7 |
+
|
8 |
+
/**
|
9 |
+
* Uninstall operations
|
10 |
+
*/
|
11 |
+
function single_uninstall() {
|
12 |
+
// delete subscribers table
|
13 |
+
$GLOBALS['wpdb']->query("DROP TABLE IF EXISTS {$GLOBALS['wpdb']->prefix}wpmm_subscribers");
|
14 |
+
|
15 |
+
// delete options
|
16 |
+
delete_option('wpmm_settings');
|
17 |
+
delete_option('wpmm_notice');
|
18 |
+
delete_option('wpmm_version');
|
19 |
+
}
|
20 |
+
|
21 |
+
// Let's do it!
|
22 |
+
if (is_multisite()) {
|
23 |
+
single_uninstall();
|
24 |
+
|
25 |
+
// delete data foreach blog
|
26 |
+
$blogs_list = $GLOBALS['wpdb']->get_results("SELECT blog_id FROM {$GLOBALS['wpdb']->blogs}", ARRAY_A);
|
27 |
+
if (!empty($blogs_list)) {
|
28 |
+
foreach ($blogs_list as $blog) {
|
29 |
+
switch_to_blog($blog['blog_id']);
|
30 |
+
single_uninstall();
|
31 |
+
restore_current_blog();
|
32 |
+
}
|
33 |
+
}
|
34 |
+
} else {
|
35 |
+
single_uninstall();
|
36 |
}
|
@@ -0,0 +1,98 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<!doctype html>
|
2 |
+
<html>
|
3 |
+
<head>
|
4 |
+
<style>
|
5 |
+
@media screen and (max-width: 500px) {
|
6 |
+
#wrap {
|
7 |
+
width: 100%;
|
8 |
+
}
|
9 |
+
}
|
10 |
+
</style>
|
11 |
+
</head>
|
12 |
+
<body style="margin:0;padding:0;background:#efefef;">
|
13 |
+
<table align="center" cellpadding="0" cellspacing="0" width="500" id="wrap">
|
14 |
+
<tr>
|
15 |
+
<td height="60"></td>
|
16 |
+
</tr>
|
17 |
+
<!-- Content -->
|
18 |
+
<tr>
|
19 |
+
<td>
|
20 |
+
<table style="padding:0 25px;" cellspacing="0" cellspacing="0" style="border:1px solid #e3e5e5" bgcolor="#fff" width="100%">
|
21 |
+
<tr>
|
22 |
+
<td height="60"></td>
|
23 |
+
</tr>
|
24 |
+
<tr>
|
25 |
+
<td style="text-align:center;">
|
26 |
+
<img src="<?php echo WPMM_IMAGES_URL . 'icon-48.png'; ?>" />
|
27 |
+
</td>
|
28 |
+
</tr>
|
29 |
+
<tr>
|
30 |
+
<td height="40"></td>
|
31 |
+
</tr>
|
32 |
+
<tr>
|
33 |
+
<td style="color:#747e7e;font-family:Lato, Helvetica, Arial, sans-serif;text-align:center;font-size:18px;font-weight:normal;">
|
34 |
+
<?php printf(__('You have been contacted via %s.', $this->plugin_slug), get_bloginfo('name')); ?>
|
35 |
+
</td>
|
36 |
+
</tr>
|
37 |
+
<tr>
|
38 |
+
<td height="30"></td>
|
39 |
+
</tr>
|
40 |
+
<tr>
|
41 |
+
<td width="100%">
|
42 |
+
<table cellspacing="0" cellpadding="0" width="100%">
|
43 |
+
<tbody>
|
44 |
+
<tr>
|
45 |
+
<td height="30"></td>
|
46 |
+
<td height="30"></td>
|
47 |
+
</tr>
|
48 |
+
<tr>
|
49 |
+
<td width="20%" style="border-bottom:1px solid #e3e5e5;padding:0 0 30px 20px;text-align:left;font-size:14px;font-family:Lato, Helvetica, Arial, sans-serif;color:#747e7e;font-weight:bold;">
|
50 |
+
<?php _e('Name:', $this->plugin_slug); ?>
|
51 |
+
</td>
|
52 |
+
<td width="80%" style="border-bottom:1px solid #e3e5e5;padding:0 0 30px 20px;text-align:left;font-size:14px;font-family:Lato, Helvetica, Arial, sans-serif;color:#747e7e;">
|
53 |
+
<?php echo sanitize_text_field($_POST['name']); ?>
|
54 |
+
</td>
|
55 |
+
</tr>
|
56 |
+
<tr>
|
57 |
+
<td height="30"></td>
|
58 |
+
<td height="30"></td>
|
59 |
+
</tr>
|
60 |
+
<tr>
|
61 |
+
<td width="20%" style="border-bottom:1px solid #e3e5e5;padding:0 0 30px 20px;text-align:left;font-size:14px;font-family:Lato, Helvetica, Arial, sans-serif;color:#747e7e;font-weight:bold;">
|
62 |
+
<?php _e('Email:', $this->plugin_slug); ?>
|
63 |
+
</td>
|
64 |
+
<td width="80%" style="border-bottom:1px solid #e3e5e5;padding:0 0 30px 20px;text-align:left;font-size:14px;font-family:Lato, Helvetica, Arial, sans-serif;color:#747e7e;">
|
65 |
+
<?php echo sanitize_text_field($_POST['email']); ?>
|
66 |
+
</td>
|
67 |
+
</tr>
|
68 |
+
<tr>
|
69 |
+
<td height="30"></td>
|
70 |
+
<td height="30"></td>
|
71 |
+
</tr>
|
72 |
+
<tr>
|
73 |
+
<td colspan="2" style="padding:0 0 30px 20px;text-align:left;font-size:14px;font-family:Lato, Helvetica, Arial, sans-serif;color:#747e7e;font-weight:bold;">
|
74 |
+
<?php _e('Content:', $this->plugin_slug); ?>
|
75 |
+
</td>
|
76 |
+
</tr>
|
77 |
+
<tr>
|
78 |
+
<td colspan="2" style="padding:0 0 20px 20px;text-align:left;font-size:14px;font-family:Lato, Helvetica, Arial, sans-serif;color:#747e7e;">
|
79 |
+
<?php echo nl2br(stripslashes($_POST['content'])); ?>
|
80 |
+
</td>
|
81 |
+
</tr>
|
82 |
+
</tbody>
|
83 |
+
</table>
|
84 |
+
</td>
|
85 |
+
</tr>
|
86 |
+
<tr>
|
87 |
+
<td height="60"></td>
|
88 |
+
</tr>
|
89 |
+
</table>
|
90 |
+
</td>
|
91 |
+
</tr>
|
92 |
+
<tr>
|
93 |
+
<td height="60"></td>
|
94 |
+
</tr>
|
95 |
+
<!-- End Content -->
|
96 |
+
</table>
|
97 |
+
</body>
|
98 |
+
</html>
|
@@ -1,2 +1,2 @@
|
|
1 |
-
<?php
|
2 |
-
// Silence is golden.
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
@@ -1,9 +1,9 @@
|
|
1 |
-
<form name="loginform" class="login_form" action="<?php echo esc_url(site_url('wp-login.php', 'login_post')); ?>" method="post">
|
2 |
-
<input type="text" placeholder="username" name="log" />
|
3 |
-
<input type="password" placeholder="password" name="pwd" />
|
4 |
-
|
5 |
-
<?php if (!empty($redirect)) { ?>
|
6 |
-
<input type="hidden" name="redirect_to" value="<?php echo $redirect; ?>" />
|
7 |
-
<?php } ?>
|
8 |
-
<input type="submit" value="<?php _e('Login', 'wp-maintenance-mode'); ?>" />
|
9 |
</form>
|
1 |
+
<form name="loginform" class="login_form" action="<?php echo esc_url(site_url('wp-login.php', 'login_post')); ?>" method="post">
|
2 |
+
<input type="text" placeholder="username" name="log" />
|
3 |
+
<input type="password" placeholder="password" name="pwd" />
|
4 |
+
|
5 |
+
<?php if (!empty($redirect)) { ?>
|
6 |
+
<input type="hidden" name="redirect_to" value="<?php echo $redirect; ?>" />
|
7 |
+
<?php } ?>
|
8 |
+
<input type="submit" value="<?php _e('Login', 'wp-maintenance-mode'); ?>" />
|
9 |
</form>
|
@@ -1,119 +1,120 @@
|
|
1 |
-
<!DOCTYPE html>
|
2 |
-
<html>
|
3 |
-
<head>
|
4 |
-
<title><?php echo stripslashes($title); ?></title>
|
5 |
-
<meta name="
|
6 |
-
<meta name="
|
7 |
-
<meta name="
|
8 |
-
<meta name="
|
9 |
-
<?php
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
<?php
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
do_action('
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
<?php if (!empty($
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
<input type="
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
<?php
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
<p class="col
|
85 |
-
<
|
86 |
-
<
|
87 |
-
<p
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
<?php
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
do_action('
|
117 |
-
|
118 |
-
|
119 |
-
</
|
|
1 |
+
<!DOCTYPE html>
|
2 |
+
<html>
|
3 |
+
<head>
|
4 |
+
<title><?php echo stripslashes($title); ?></title>
|
5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
|
6 |
+
<meta name="author" content="<?php echo esc_attr($author); ?>" />
|
7 |
+
<meta name="description" content="<?php echo esc_attr($description); ?>" />
|
8 |
+
<meta name="keywords" content="<?php echo esc_attr($keywords); ?>" />
|
9 |
+
<meta name="robots" content="<?php echo esc_attr($robots); ?>" />
|
10 |
+
<?php
|
11 |
+
if (!empty($styles) && is_array($styles)) {
|
12 |
+
foreach ($styles as $src) {
|
13 |
+
?>
|
14 |
+
<link rel="stylesheet" href="<?php echo $src; ?>">
|
15 |
+
<?php
|
16 |
+
}
|
17 |
+
}
|
18 |
+
if (!empty($custom_css) && is_array($custom_css)) {
|
19 |
+
echo '<style>' . implode(array_map('stripslashes', $custom_css)) . '</style>';
|
20 |
+
}
|
21 |
+
|
22 |
+
// do some actions
|
23 |
+
do_action('wm_head'); // this hook will be removed in the next versions
|
24 |
+
do_action('wpmm_head');
|
25 |
+
?>
|
26 |
+
</head>
|
27 |
+
<body class="<?php echo $body_classes ? $body_classes : ''; ?>">
|
28 |
+
<div class="wrap">
|
29 |
+
<?php if (!empty($heading)) { ?><h1><?php echo stripslashes($heading); ?></h1><?php } ?>
|
30 |
+
<?php if (!empty($text)) { ?><h2><?php echo stripslashes($text); ?></h2><?php } ?>
|
31 |
+
|
32 |
+
<?php
|
33 |
+
if (!empty($this->plugin_settings['modules']['countdown_status']) && $this->plugin_settings['modules']['countdown_status'] == 1) {
|
34 |
+
?>
|
35 |
+
<div class="countdown" data-start="<?php echo date('F d, Y H:i:s', strtotime($countdown_start)); ?>" data-end="<?php echo date('F d, Y H:i:s', $countdown_end); ?>"></div>
|
36 |
+
<?php } ?>
|
37 |
+
|
38 |
+
<?php if (!empty($this->plugin_settings['modules']['subscribe_status']) && $this->plugin_settings['modules']['subscribe_status'] == 1) { ?>
|
39 |
+
<?php if (!empty($this->plugin_settings['modules']['subscribe_text'])) { ?><h3><?php echo stripslashes($this->plugin_settings['modules']['subscribe_text']); ?></h3><?php } ?>
|
40 |
+
<div class="subscribe_wrapper" style="min-height: 100px;">
|
41 |
+
<form class="subscribe_form">
|
42 |
+
<input type="text" placeholder="<?php _e('your e-mail...', $this->plugin_slug); ?>" name="email" class="email_input" data-rule-required="true" data-rule-email="true" data-rule-required="true" data-rule-email="true" />
|
43 |
+
<input type="submit" value="<?php _e('Subscribe', $this->plugin_slug); ?>" />
|
44 |
+
</form>
|
45 |
+
</div>
|
46 |
+
<?php } ?>
|
47 |
+
|
48 |
+
<?php if (!empty($this->plugin_settings['modules']['social_status']) && $this->plugin_settings['modules']['social_status'] == 1) { ?>
|
49 |
+
<div class="social" data-target="<?php echo!empty($this->plugin_settings['modules']['social_target']) ? 1 : 0; ?>">
|
50 |
+
<?php if (!empty($this->plugin_settings['modules']['social_twitter'])) { ?>
|
51 |
+
<a class="tw" href="<?php echo stripslashes($this->plugin_settings['modules']['social_twitter']); ?>">twitter</a>
|
52 |
+
<?php } ?>
|
53 |
+
|
54 |
+
<?php if (!empty($this->plugin_settings['modules']['social_facebook'])) { ?>
|
55 |
+
<a class="fb" href="<?php echo stripslashes($this->plugin_settings['modules']['social_facebook']); ?>">facebook</a>
|
56 |
+
<?php } ?>
|
57 |
+
|
58 |
+
<?php if (!empty($this->plugin_settings['modules']['social_pinterest'])) { ?>
|
59 |
+
<a class="pin" href="<?php echo stripslashes($this->plugin_settings['modules']['social_pinterest']); ?>">pinterest</a>
|
60 |
+
<?php } ?>
|
61 |
+
|
62 |
+
<?php if (!empty($this->plugin_settings['modules']['social_github'])) { ?>
|
63 |
+
<a class="git" href="<?php echo stripslashes($this->plugin_settings['modules']['social_github']); ?>">github</a>
|
64 |
+
<?php } ?>
|
65 |
+
|
66 |
+
<?php if (!empty($this->plugin_settings['modules']['social_dribbble'])) { ?>
|
67 |
+
<a class="dribbble" href="<?php echo stripslashes($this->plugin_settings['modules']['social_dribbble']); ?>">dribbble</a>
|
68 |
+
<?php } ?>
|
69 |
+
|
70 |
+
<?php if (!empty($this->plugin_settings['modules']['social_google+'])) { ?>
|
71 |
+
<a class="gplus" href="<?php echo stripslashes($this->plugin_settings['modules']['social_google+']); ?>">google plus</a>
|
72 |
+
<?php } ?>
|
73 |
+
|
74 |
+
<?php if (!empty($this->plugin_settings['modules']['social_linkedin'])) { ?>
|
75 |
+
<a class="linkedin" href="<?php echo stripslashes($this->plugin_settings['modules']['social_linkedin']); ?>">linkedin</a>
|
76 |
+
<?php } ?>
|
77 |
+
</div>
|
78 |
+
<?php } ?>
|
79 |
+
<?php if (!empty($this->plugin_settings['modules']['contact_status']) && $this->plugin_settings['modules']['contact_status'] == 1) { ?>
|
80 |
+
<div class="contact">
|
81 |
+
<?php list($open, $close) = !empty($this->plugin_settings['modules']['contact_effects']) && strstr($this->plugin_settings['modules']['contact_effects'], '|') ? explode('|', $this->plugin_settings['modules']['contact_effects']) : explode('|', 'move_top|move_bottom'); ?>
|
82 |
+
<div class="form <?php echo esc_attr($open); ?>">
|
83 |
+
<form class="contact_form">
|
84 |
+
<p class="col"><input type="text" placeholder="<?php _e('Name', $this->plugin_slug); ?>" data-rule-required="true" data-msg-required="<?php esc_attr_e('This field is required.', $this->plugin_slug); ?>" name="name" class="name_input" /></p>
|
85 |
+
<p class="col last"><input type="text" placeholder="<?php _e('E-mail', $this->plugin_slug); ?>" data-rule-required="true" data-rule-email="true" data-msg-required="<?php esc_attr_e('This field is required.', $this->plugin_slug); ?>" data-msg-email="<?php esc_attr_e('Please enter a valid email address.', $this->plugin_slug); ?>" name="email" class="email_input" /></p>
|
86 |
+
<br clear="all" />
|
87 |
+
<p><textarea placeholder="<?php _e('Your message', $this->plugin_slug); ?>" data-rule-required="true" data-msg-required="<?php esc_attr_e('This field is required.', $this->plugin_slug); ?>" name="content" class="content_textarea"></textarea></p>
|
88 |
+
<p class="submit"><input type="submit" value="<?php _e('Send', $this->plugin_slug); ?>"></p>
|
89 |
+
</form>
|
90 |
+
</div>
|
91 |
+
</div>
|
92 |
+
|
93 |
+
<a class="contact_us" href="javascript:void(0);" data-open="<?php echo esc_attr($open); ?>" data-close="<?php echo esc_attr($close); ?>"><?php _e('Contact us', $this->plugin_slug); ?></a>
|
94 |
+
<?php } ?>
|
95 |
+
|
96 |
+
<?php if (!empty($this->plugin_settings['general']['admin_link']) && $this->plugin_settings['general']['admin_link'] == 1) { ?>
|
97 |
+
<div class="author_link">
|
98 |
+
<a href="<?php echo admin_url(); ?>"><?php _e('Dashboard', $this->plugin_slug); ?></a>
|
99 |
+
</div>
|
100 |
+
<?php } ?>
|
101 |
+
</div>
|
102 |
+
|
103 |
+
<script type='text/javascript'>
|
104 |
+
var wpmm_vars = {"ajax_url": "<?php echo admin_url('admin-ajax.php'); ?>"};
|
105 |
+
</script>
|
106 |
+
<?php
|
107 |
+
if (!empty($scripts) && is_array($scripts)) {
|
108 |
+
foreach ($scripts as $src) {
|
109 |
+
?>
|
110 |
+
<script src="<?php echo $src; ?>"></script>
|
111 |
+
<?php
|
112 |
+
}
|
113 |
+
}
|
114 |
+
|
115 |
+
// Do some actions
|
116 |
+
do_action('wm_footer'); // this hook will be removed in the next versions
|
117 |
+
do_action('wpmm_footer');
|
118 |
+
?>
|
119 |
+
</body>
|
120 |
+
</html>
|
@@ -1,5 +1,10 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
|
4 |
-
|
|
|
|
|
|
|
|
|
|
|
5 |
<?php } ?>
|
1 |
+
<?php
|
2 |
+
foreach ($notices as $key => $notice) {
|
3 |
+
if (in_array($key, $dismissed_notices) && $this->plugin_screen_hook_suffix != $screen->id) {
|
4 |
+
continue;
|
5 |
+
}
|
6 |
+
?>
|
7 |
+
<div id="message" class="<?php echo $notice['class']; ?>" data-key="<?php echo $key; ?>">
|
8 |
+
<p><?php echo $notice['msg']; ?></p>
|
9 |
+
</div>
|
10 |
<?php } ?>
|
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<strong>Announcement: Introducing Codepad.co!</strong>
|
2 |
+
<br /><br />
|
3 |
+
<a href="https://codepad.co/?utm_source=wpmm&utm_medium=wpmmlinks&utm_campaign=wpmm" target="_blank">Codepad</a> is a new developers community who like to share/save code snippets and get/give feedback.<br />
|
4 |
+
The website was featured on Product Hunt, Codrops, Designmodo, Speckyboy, Webdesigner Depot, eWebDesign and more!
|
5 |
+
<br /><br />
|
6 |
+
You always can follow the best developers on the <a href="https://codepad.co/developers/?utm_source=wpmm&utm_medium=wpmmlinks&utm_campaign=wpmm" target="_blank">Codepad developers page</a>.
|
7 |
+
<br /><br />
|
8 |
+
Follow the Codepad blog on <a href="https://medium.com/@Codepad" target="_blank">Medium</a>.
|
9 |
+
<br /><br />
|
10 |
+
<a class="button button-primary" href="https://codepad.co/?utm_source=wpmm&utm_medium=wpmmlinks&utm_campaign=wpmm" target="_blank">Open Codepad!</a>
|
@@ -1,430 +1,441 @@
|
|
1 |
-
<div class="wrap">
|
2 |
-
<h2 class="wpmm-title"
|
3 |
-
|
4 |
-
<?php if (!empty($_POST)) { ?>
|
5 |
-
<div class="updated settings-error" id="setting-error-settings_updated">
|
6 |
-
<p><strong><?php _e('Settings saved.', $this->plugin_slug); ?></strong></p>
|
7 |
-
</div>
|
8 |
-
<?php } ?>
|
9 |
-
|
10 |
-
<div class="wpmm-wrapper">
|
11 |
-
<div id="content" class="wrapper-cell">
|
12 |
-
<div class="nav-tab-wrapper">
|
13 |
-
<a class="nav-tab nav-tab-active" href="#general"><?php _e('General', $this->plugin_slug); ?></a>
|
14 |
-
<a class="nav-tab" href="#design"><?php _e('Design', $this->plugin_slug); ?></a>
|
15 |
-
<a class="nav-tab" href="#modules"><?php _e('Modules', $this->plugin_slug); ?></a>
|
16 |
-
</div>
|
17 |
-
|
18 |
-
<div class="tabs-content">
|
19 |
-
<div id="tab-general" class="">
|
20 |
-
<form method="post">
|
21 |
-
<table class="form-table">
|
22 |
-
<tbody>
|
23 |
-
<tr valign="top">
|
24 |
-
<th scope="row"><label for="options[general][status]"><?php _e('Status', $this->plugin_slug); ?></label></th>
|
25 |
-
<td>
|
26 |
-
<label><input type="radio" value="1" name="options[general][status]" <?php checked($this->plugin_settings['general']['status'], 1); ?>> <?php _e('Activated', $this->plugin_slug); ?></label> <br />
|
27 |
-
<label><input type="radio" value="0" name="options[general][status]" <?php checked($this->plugin_settings['general']['status'], 0); ?>> <?php _e('Deactivated', $this->plugin_slug); ?></label>
|
28 |
-
</td>
|
29 |
-
</tr>
|
30 |
-
<tr valign="top">
|
31 |
-
<th scope="row"><label for="options[general][bypass_bots]"><?php _e('Bypass for Search Bots', $this->plugin_slug); ?></label></th>
|
32 |
-
<td>
|
33 |
-
<select name="options[general][bypass_bots]">
|
34 |
-
<option value="1" <?php selected($this->plugin_settings['general']['bypass_bots'], 1); ?>><?php _e('Yes', $this->plugin_slug); ?></option>
|
35 |
-
<option value="0" <?php selected($this->plugin_settings['general']['bypass_bots'], 0); ?>><?php _e('No', $this->plugin_slug); ?></option>
|
36 |
-
</select>
|
37 |
-
<p class="description"><?php _e('Allow Search Bots to bypass maintenance mode?', $this->plugin_slug); ?></p>
|
38 |
-
</td>
|
39 |
-
</tr>
|
40 |
-
<tr valign="top">
|
41 |
-
<th scope="row"><label for="options[general][backend_role]"><?php _e('Backend Role', $this->plugin_slug); ?></label></th>
|
42 |
-
<td>
|
43 |
-
<select name="options[general][backend_role]">
|
44 |
-
<?php
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
<
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
</select>
|
69 |
-
<p class="description"><?php _e('
|
70 |
-
</td>
|
71 |
-
</tr>
|
72 |
-
<tr valign="top">
|
73 |
-
<th scope="row"><label for="options[general][
|
74 |
-
<td>
|
75 |
-
<
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
<
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
<p class="description"><?php _e('
|
98 |
-
</td>
|
99 |
-
</tr>
|
100 |
-
<tr valign="top">
|
101 |
-
<th scope="row"><label for="options[general][
|
102 |
-
<td>
|
103 |
-
<select name="options[general][
|
104 |
-
<option value="1" <?php selected($this->plugin_settings['general']['
|
105 |
-
<option value="0" <?php selected($this->plugin_settings['general']['
|
106 |
-
</select>
|
107 |
-
<p class="description"><?php _e('Do you want to
|
108 |
-
</td>
|
109 |
-
</tr>
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
<tr valign="top"
|
174 |
-
<th scope="row"><label for="options[design][
|
175 |
-
<td>
|
176 |
-
<
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
<
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
<
|
276 |
-
|
277 |
-
<
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
<
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
<
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
<
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
<
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
<
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
<
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
430 |
</div>
|
1 |
+
<div class="wrap">
|
2 |
+
<h2 class="wpmm-title"><?php echo get_admin_page_title(); ?></h2>
|
3 |
+
|
4 |
+
<?php if (!empty($_POST)) { ?>
|
5 |
+
<div class="updated settings-error" id="setting-error-settings_updated">
|
6 |
+
<p><strong><?php _e('Settings saved.', $this->plugin_slug); ?></strong></p>
|
7 |
+
</div>
|
8 |
+
<?php } ?>
|
9 |
+
|
10 |
+
<div class="wpmm-wrapper">
|
11 |
+
<div id="content" class="wrapper-cell">
|
12 |
+
<div class="nav-tab-wrapper">
|
13 |
+
<a class="nav-tab nav-tab-active" href="#general"><?php _e('General', $this->plugin_slug); ?></a>
|
14 |
+
<a class="nav-tab" href="#design"><?php _e('Design', $this->plugin_slug); ?></a>
|
15 |
+
<a class="nav-tab" href="#modules"><?php _e('Modules', $this->plugin_slug); ?></a>
|
16 |
+
</div>
|
17 |
+
|
18 |
+
<div class="tabs-content">
|
19 |
+
<div id="tab-general" class="">
|
20 |
+
<form method="post">
|
21 |
+
<table class="form-table">
|
22 |
+
<tbody>
|
23 |
+
<tr valign="top">
|
24 |
+
<th scope="row"><label for="options[general][status]"><?php _e('Status', $this->plugin_slug); ?></label></th>
|
25 |
+
<td>
|
26 |
+
<label><input type="radio" value="1" name="options[general][status]" <?php checked($this->plugin_settings['general']['status'], 1); ?>> <?php _e('Activated', $this->plugin_slug); ?></label> <br />
|
27 |
+
<label><input type="radio" value="0" name="options[general][status]" <?php checked($this->plugin_settings['general']['status'], 0); ?>> <?php _e('Deactivated', $this->plugin_slug); ?></label>
|
28 |
+
</td>
|
29 |
+
</tr>
|
30 |
+
<tr valign="top">
|
31 |
+
<th scope="row"><label for="options[general][bypass_bots]"><?php _e('Bypass for Search Bots', $this->plugin_slug); ?></label></th>
|
32 |
+
<td>
|
33 |
+
<select name="options[general][bypass_bots]">
|
34 |
+
<option value="1" <?php selected($this->plugin_settings['general']['bypass_bots'], 1); ?>><?php _e('Yes', $this->plugin_slug); ?></option>
|
35 |
+
<option value="0" <?php selected($this->plugin_settings['general']['bypass_bots'], 0); ?>><?php _e('No', $this->plugin_slug); ?></option>
|
36 |
+
</select>
|
37 |
+
<p class="description"><?php _e('Allow Search Bots to bypass maintenance mode?', $this->plugin_slug); ?></p>
|
38 |
+
</td>
|
39 |
+
</tr>
|
40 |
+
<tr valign="top">
|
41 |
+
<th scope="row"><label for="options[general][backend_role][]"><?php _e('Backend Role', $this->plugin_slug); ?></label></th>
|
42 |
+
<td>
|
43 |
+
<select name="options[general][backend_role][]" multiple="multiple" class="chosen-select" data-placeholder="<?php _e('Select role(s)', $this->plugin_slug); ?>">
|
44 |
+
<?php
|
45 |
+
foreach ($wp_roles->roles as $role => $details) {
|
46 |
+
if ($role == 'administrator') {
|
47 |
+
continue;
|
48 |
+
}
|
49 |
+
?>
|
50 |
+
<option value="<?php echo esc_attr($role); ?>" <?php echo wpmm_multiselect((array) $this->plugin_settings['general']['backend_role'], $role); ?>><?php echo $details['name']; ?></option>
|
51 |
+
<?php } ?>
|
52 |
+
</select>
|
53 |
+
<p class="description"><?php _e('Which user role is allowed to access the backend of this blog? Administrators will always have access.', $this->plugin_slug); ?></p>
|
54 |
+
</td>
|
55 |
+
</tr>
|
56 |
+
<tr valign="top">
|
57 |
+
<th scope="row"><label for="options[general][frontend_role][]"><?php _e('Frontend Role', $this->plugin_slug); ?></label></th>
|
58 |
+
<td>
|
59 |
+
<select name="options[general][frontend_role][]" multiple="multiple" class="chosen-select" data-placeholder="<?php _e('Select role(s)', $this->plugin_slug); ?>">
|
60 |
+
<?php
|
61 |
+
foreach ($wp_roles->roles as $role => $details) {
|
62 |
+
if ($role == 'administrator') {
|
63 |
+
continue;
|
64 |
+
}
|
65 |
+
?>
|
66 |
+
<option value="<?php echo esc_attr($role); ?>" <?php echo wpmm_multiselect((array) $this->plugin_settings['general']['frontend_role'], $role); ?>><?php echo $details['name']; ?></option>
|
67 |
+
<?php } ?>
|
68 |
+
</select>
|
69 |
+
<p class="description"><?php _e('Which user role is allowed to access the frontend of this blog? Administrators will always have access.', $this->plugin_slug); ?></p>
|
70 |
+
</td>
|
71 |
+
</tr>
|
72 |
+
<tr valign="top">
|
73 |
+
<th scope="row"><label for="options[general][meta_robots]"><?php _e('Robots Meta Tag', $this->plugin_slug); ?></label></th>
|
74 |
+
<td>
|
75 |
+
<select name="options[general][meta_robots]">
|
76 |
+
<option value="1" <?php selected($this->plugin_settings['general']['meta_robots'], 1); ?>>noindex, nofollow</option>
|
77 |
+
<option value="0" <?php selected($this->plugin_settings['general']['meta_robots'], 0); ?>>index, follow</option>
|
78 |
+
</select>
|
79 |
+
<p class="description"><?php _e('The robots meta tag lets you use a granular, page-specific approach to control how an individual page should be indexed and served to users in search results.', $this->plugin_slug); ?></p>
|
80 |
+
</td>
|
81 |
+
</tr>
|
82 |
+
<tr valign="top">
|
83 |
+
<th scope="row"><label for="options[general][redirection]"><?php _e('Redirection', $this->plugin_slug); ?></label></th>
|
84 |
+
<td>
|
85 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['general']['redirection'])); ?>" name="options[general][redirection]" />
|
86 |
+
<p class="description"><?php _e('If you want to redirect a user (with no access to Dashboard/Backend) to a URL (different from WordPress Dashboard URL) after login, then define a URL (incl. http://)', $this->plugin_slug); ?></p>
|
87 |
+
</td>
|
88 |
+
</tr>
|
89 |
+
<tr valign="top">
|
90 |
+
<th scope="row"><label for="options[general][exclude]"><?php _e('Exclude', $this->plugin_slug); ?></label></th>
|
91 |
+
<td>
|
92 |
+
<textarea rows="7" name="options[general][exclude]" style="width: 625px;"><?php
|
93 |
+
if (!empty($this->plugin_settings['general']['exclude']) && is_array($this->plugin_settings['general']['exclude'])) {
|
94 |
+
echo implode("\n", stripslashes_deep($this->plugin_settings['general']['exclude']));
|
95 |
+
}
|
96 |
+
?></textarea>
|
97 |
+
<p class="description"><?php _e('Exclude feed, pages, archives or IPs from maintenance mode. Add one slug / IP per line!', $this->plugin_slug); ?></p>
|
98 |
+
</td>
|
99 |
+
</tr>
|
100 |
+
<tr valign="top">
|
101 |
+
<th scope="row"><label for="options[general][notice]"><?php _e('Notice', $this->plugin_slug); ?></label></th>
|
102 |
+
<td>
|
103 |
+
<select name="options[general][notice]">
|
104 |
+
<option value="1" <?php selected($this->plugin_settings['general']['notice'], 1); ?>><?php _e('Yes', $this->plugin_slug); ?></option>
|
105 |
+
<option value="0" <?php selected($this->plugin_settings['general']['notice'], 0); ?>><?php _e('No', $this->plugin_slug); ?></option>
|
106 |
+
</select>
|
107 |
+
<p class="description"><?php _e('Do you want to see notices when maintenance mode is activated?', $this->plugin_slug); ?></p>
|
108 |
+
</td>
|
109 |
+
</tr>
|
110 |
+
<tr valign="top">
|
111 |
+
<th scope="row"><label for="options[general][admin_link]"><?php _e('Dashboard link', $this->plugin_slug); ?></label></th>
|
112 |
+
<td>
|
113 |
+
<select name="options[general][admin_link]">
|
114 |
+
<option value="1" <?php selected($this->plugin_settings['general']['admin_link'], 1); ?>><?php _e('Yes', $this->plugin_slug); ?></option>
|
115 |
+
<option value="0" <?php selected($this->plugin_settings['general']['admin_link'], 0); ?>><?php _e('No', $this->plugin_slug); ?></option>
|
116 |
+
</select>
|
117 |
+
<p class="description"><?php _e('Do you want to add a link to the dashboard on your maintenance mode page?', $this->plugin_slug); ?></p>
|
118 |
+
</td>
|
119 |
+
</tr>
|
120 |
+
</tbody>
|
121 |
+
</table>
|
122 |
+
|
123 |
+
<?php wp_nonce_field('tab-general'); ?>
|
124 |
+
<input type="hidden" value="general" name="tab" />
|
125 |
+
<input type="submit" value="<?php _e('Save settings', $this->plugin_slug); ?>" class="button button-primary" name="submit" />
|
126 |
+
<input type="button" value="<?php _e('Reset settings', $this->plugin_slug); ?>" class="button button-secondary reset_settings" data-tab="general" name="submit">
|
127 |
+
</form>
|
128 |
+
</div>
|
129 |
+
<div id="tab-design" class="hidden">
|
130 |
+
<form method="post">
|
131 |
+
<h3>» <?php _e('Content', $this->plugin_slug); ?></h3>
|
132 |
+
|
133 |
+
<table class="form-table">
|
134 |
+
<tbody>
|
135 |
+
<tr valign="top">
|
136 |
+
<th scope="row"><label for="options[design][title]"><?php _e('Title (HTML tag)', $this->plugin_slug); ?></label></th>
|
137 |
+
<td>
|
138 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['design']['title'])); ?>" name="options[design][title]" />
|
139 |
+
</td>
|
140 |
+
</tr>
|
141 |
+
<tr valign="top">
|
142 |
+
<th scope="row"><label for="options[design][heading]"><?php _e('Heading', $this->plugin_slug); ?></label></th>
|
143 |
+
<td>
|
144 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['design']['heading'])); ?>" name="options[design][heading]" />
|
145 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['design']['heading_color'])); ?>" name="options[design][heading_color]" data-default-color="<?php echo esc_attr(stripslashes($this->plugin_settings['design']['heading_color'])); ?>" class="color_picker_trigger"/>
|
146 |
+
</td>
|
147 |
+
</tr>
|
148 |
+
<tr valign="top">
|
149 |
+
<th scope="row"><label for="options[design][text]"><?php _e('Text', $this->plugin_slug); ?></label></th>
|
150 |
+
<td>
|
151 |
+
<?php
|
152 |
+
wp_editor(stripslashes($this->plugin_settings['design']['text']), 'options_design_text', array(
|
153 |
+
'textarea_name' => 'options[design][text]',
|
154 |
+
'textarea_rows' => 8,
|
155 |
+
'editor_class' => 'large-text',
|
156 |
+
'media_buttons' => false,
|
157 |
+
'wpautop' => false,
|
158 |
+
'default_editor' => 'tinymce',
|
159 |
+
'teeny' => true
|
160 |
+
));
|
161 |
+
?>
|
162 |
+
<br />
|
163 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['design']['text_color'])); ?>" data-default-color="<?php echo esc_attr(stripslashes($this->plugin_settings['design']['text_color'])); ?>" name="options[design][text_color]" class="color_picker_trigger" />
|
164 |
+
</td>
|
165 |
+
</tr>
|
166 |
+
</tbody>
|
167 |
+
</table>
|
168 |
+
|
169 |
+
<h3>» <?php _e('Background', $this->plugin_slug); ?></h3>
|
170 |
+
|
171 |
+
<table class="form-table">
|
172 |
+
<tbody>
|
173 |
+
<tr valign="top">
|
174 |
+
<th scope="row"><label for="options[design][bg_type]"><?php _e('Choose type', $this->plugin_slug); ?></label></th>
|
175 |
+
<td>
|
176 |
+
<select name="options[design][bg_type]" id="design_bg_type">
|
177 |
+
<option value="color" <?php selected($this->plugin_settings['design']['bg_type'], 'color'); ?>><?php _e('Custom color', $this->plugin_slug); ?></option>
|
178 |
+
<option value="custom" <?php selected($this->plugin_settings['design']['bg_type'], 'custom'); ?>><?php _e('Uploaded background', $this->plugin_slug); ?></option>
|
179 |
+
<option value="predefined" <?php selected($this->plugin_settings['design']['bg_type'], 'predefined'); ?>><?php _e('Predefined background', $this->plugin_slug); ?></option>
|
180 |
+
</select>
|
181 |
+
</td>
|
182 |
+
</tr>
|
183 |
+
<tr valign="top" class="design_bg_types <?php echo $this->plugin_settings['design']['bg_type'] != 'color' ? 'hidden' : ''; ?>" id="show_color">
|
184 |
+
<th scope="row"><label for="options[design][bg_color]"><?php _e('Choose color', $this->plugin_slug); ?></label></th>
|
185 |
+
<td>
|
186 |
+
<input type="text" value="<?php echo $this->plugin_settings['design']['bg_color']; ?>" data-default-color="<?php echo $this->plugin_settings['design']['bg_color']; ?>" name="options[design][bg_color]" class="color_picker_trigger"/>
|
187 |
+
</td>
|
188 |
+
</tr>
|
189 |
+
<tr valign="top" class="design_bg_types <?php echo $this->plugin_settings['design']['bg_type'] != 'custom' ? 'hidden' : ''; ?>" id="show_custom">
|
190 |
+
<th scope="row"><label for="options[design][bg_custom]"><?php _e('Upload background', $this->plugin_slug); ?></label></th>
|
191 |
+
<td>
|
192 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['design']['bg_custom'])); ?>" name="options[design][bg_custom]" class="upload_image_url" />
|
193 |
+
<input type="button" value="Upload" class="button" id="upload_image_trigger" />
|
194 |
+
<p class="description"><?php _e('Backgrounds should have 1920x1280 px size.', $this->plugin_slug); ?></p>
|
195 |
+
</td>
|
196 |
+
</tr>
|
197 |
+
<tr valign="top" class="design_bg_types <?php echo $this->plugin_settings['design']['bg_type'] != 'predefined' ? 'hidden' : ''; ?>" id="show_predefined">
|
198 |
+
<th scope="row">
|
199 |
+
<label for="options[design][bg_predefined]"><?php _e('Choose background', $this->plugin_slug); ?></label>
|
200 |
+
<p class="description">
|
201 |
+
* <?php echo sprintf(__('source <a href="%s" target="_blank">Free Photos</a>', $this->plugin_slug), 'http://designmodo.com/free-photos/' . WPMM_AUTHOR_UTM); ?>
|
202 |
+
</p>
|
203 |
+
</th>
|
204 |
+
<td>
|
205 |
+
<ul class="bg_list">
|
206 |
+
<?php
|
207 |
+
foreach (glob(WPMM_PATH . 'assets/images/backgrounds/*_thumb.jpg') as $filename) {
|
208 |
+
$file_thumb = basename($filename);
|
209 |
+
$file = str_replace('_thumb', '', $file_thumb);
|
210 |
+
?>
|
211 |
+
<li class="<?php echo $this->plugin_settings['design']['bg_predefined'] == $file ? 'active' : ''; ?>">
|
212 |
+
<label>
|
213 |
+
<input type="radio" value="<?php echo esc_attr($file); ?>" name="options[design][bg_predefined]" <?php checked($this->plugin_settings['design']['bg_predefined'], $file); ?>>
|
214 |
+
<img src="<?php echo WPMM_URL . 'assets/images/backgrounds/' . $file_thumb; ?>" width="200" height="150" />
|
215 |
+
</label>
|
216 |
+
</li>
|
217 |
+
<?php
|
218 |
+
}
|
219 |
+
?>
|
220 |
+
</ul>
|
221 |
+
</td>
|
222 |
+
</tr>
|
223 |
+
</tbody>
|
224 |
+
</table>
|
225 |
+
|
226 |
+
<?php wp_nonce_field('tab-design'); ?>
|
227 |
+
<input type="hidden" value="design" name="tab" />
|
228 |
+
<input type="submit" value="<?php _e('Save settings', $this->plugin_slug); ?>" class="button button-primary" name="submit">
|
229 |
+
<input type="button" value="<?php _e('Reset settings', $this->plugin_slug); ?>" class="button button-secondary reset_settings" data-tab="design" name="submit">
|
230 |
+
</form>
|
231 |
+
</div>
|
232 |
+
<div id="tab-modules" class="hidden">
|
233 |
+
<form method="post">
|
234 |
+
<h3>» <?php _e('Countdown', $this->plugin_slug); ?></h3>
|
235 |
+
|
236 |
+
<table class="form-table">
|
237 |
+
<tbody>
|
238 |
+
<tr valign="top">
|
239 |
+
<th scope="row"><label for="options[modules][countdown_status]"><?php _e('Show countdown?', $this->plugin_slug); ?></label></th>
|
240 |
+
<td>
|
241 |
+
<select name="options[modules][countdown_status]">
|
242 |
+
<option value="1" <?php selected($this->plugin_settings['modules']['countdown_status'], 1); ?>><?php _e('Yes', $this->plugin_slug); ?></option>
|
243 |
+
<option value="0" <?php selected($this->plugin_settings['modules']['countdown_status'], 0); ?>><?php _e('No', $this->plugin_slug); ?></option>
|
244 |
+
</select>
|
245 |
+
</td>
|
246 |
+
</tr>
|
247 |
+
<tr valign="top">
|
248 |
+
<th scope="row"><label for="options[modules][countdown_start]"><?php _e('Start date', $this->plugin_slug); ?></label></th>
|
249 |
+
<td>
|
250 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['countdown_start'])); ?>" name="options[modules][countdown_start]" class="countdown_start" />
|
251 |
+
</td>
|
252 |
+
</tr>
|
253 |
+
<tr valign="top">
|
254 |
+
<th scope="row"><label for="options[modules][countdown_details]"><?php _e('Countdown (remaining time)', $this->plugin_slug); ?></label></th>
|
255 |
+
<td class="countdown_details">
|
256 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['countdown_details']['days'])); ?>" name="options[modules][countdown_details][days]" /> <?php _e('Days', $this->plugin_slug); ?>
|
257 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['countdown_details']['hours'])); ?>" name="options[modules][countdown_details][hours]" class="margin_left"/> <?php _e('Hours', $this->plugin_slug); ?>
|
258 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['countdown_details']['minutes'])); ?>" name="options[modules][countdown_details][minutes]" class="margin_left" /> <?php _e('Minutes', $this->plugin_slug); ?>
|
259 |
+
</td>
|
260 |
+
</tr>
|
261 |
+
<tr valign="top">
|
262 |
+
<th scope="row"><label for="options[modules][countdown_color]"><?php _e('Color', $this->plugin_slug); ?></label></th>
|
263 |
+
<td>
|
264 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['countdown_color'])); ?>" name="options[modules][countdown_color]" data-default-color="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['countdown_color'])); ?>" class="color_picker_trigger"/>
|
265 |
+
</td>
|
266 |
+
</tr>
|
267 |
+
</tbody>
|
268 |
+
</table>
|
269 |
+
|
270 |
+
<h3>» <?php _e('Subscribe', $this->plugin_slug); ?></h3>
|
271 |
+
|
272 |
+
<table class="form-table">
|
273 |
+
<tbody>
|
274 |
+
<tr valign="top">
|
275 |
+
<th scope="row"><label for="options[modules][subscribe_status]"><?php _e('Show subscribe?', $this->plugin_slug); ?></label></th>
|
276 |
+
<td>
|
277 |
+
<select name="options[modules][subscribe_status]">
|
278 |
+
<option value="1" <?php selected($this->plugin_settings['modules']['subscribe_status'], 1); ?>><?php _e('Yes', $this->plugin_slug); ?></option>
|
279 |
+
<option value="0" <?php selected($this->plugin_settings['modules']['subscribe_status'], 0); ?>><?php _e('No', $this->plugin_slug); ?></option>
|
280 |
+
</select>
|
281 |
+
</td>
|
282 |
+
</tr>
|
283 |
+
<tr valign="top">
|
284 |
+
<th scope="row"><label for="options[modules][subscribe_text]"><?php _e('Text', $this->plugin_slug); ?></label></th>
|
285 |
+
<td>
|
286 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['subscribe_text'])); ?>" name="options[modules][subscribe_text]" />
|
287 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['subscribe_text_color'])); ?>" name="options[modules][subscribe_text_color]" data-default-color="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['subscribe_text_color'])); ?>" class="color_picker_trigger"/>
|
288 |
+
</td>
|
289 |
+
</tr>
|
290 |
+
<tr valign="top">
|
291 |
+
<th scope="row"><label for="options[modules][stats]"><?php _e('Stats', $this->plugin_slug); ?></label></th>
|
292 |
+
<td id="subscribers_wrap">
|
293 |
+
<?php
|
294 |
+
$subscribers_no = wpmm_count_where('wpmm_subscribers', 'id_subscriber');
|
295 |
+
echo sprintf(__('You have %d subscriber(s)', $this->plugin_slug), $subscribers_no);
|
296 |
+
|
297 |
+
if ($subscribers_no > 0) {
|
298 |
+
?>
|
299 |
+
<br />
|
300 |
+
<a class="button button-primary" id="subscribers-export" href="javascript:void(0);"><?php _e('Export as CSV', $this->plugin_slug); ?></a>
|
301 |
+
<a class="button button-secondary" id="subscribers-empty-list" href="javascript:void(0);"><?php _e('Empty subscribers list', $this->plugin_slug); ?></a>
|
302 |
+
<?php } ?>
|
303 |
+
</td>
|
304 |
+
</tr>
|
305 |
+
</tbody>
|
306 |
+
</table>
|
307 |
+
|
308 |
+
<h3>» <?php _e('Social Networks', $this->plugin_slug); ?></h3>
|
309 |
+
|
310 |
+
<table class="form-table">
|
311 |
+
<tbody>
|
312 |
+
<tr valign="top">
|
313 |
+
<th scope="row"><label for="options[modules][social_status]"><?php _e('Show social networks?', $this->plugin_slug); ?></label></th>
|
314 |
+
<td>
|
315 |
+
<select name="options[modules][social_status]">
|
316 |
+
<option value="1" <?php selected($this->plugin_settings['modules']['social_status'], 1); ?>><?php _e('Yes', $this->plugin_slug); ?></option>
|
317 |
+
<option value="0" <?php selected($this->plugin_settings['modules']['social_status'], 0); ?>><?php _e('No', $this->plugin_slug); ?></option>
|
318 |
+
</select>
|
319 |
+
</td>
|
320 |
+
</tr>
|
321 |
+
<tr valign="top">
|
322 |
+
<th scope="row"><label for="options[modules][social_target]"><?php _e('Links target?', $this->plugin_slug); ?></label></th>
|
323 |
+
<td>
|
324 |
+
<select name="options[modules][social_target]">
|
325 |
+
<option value="1" <?php selected($this->plugin_settings['modules']['social_target'], 1); ?>><?php _e('New page', $this->plugin_slug); ?></option>
|
326 |
+
<option value="0" <?php selected($this->plugin_settings['modules']['social_target'], 0); ?>><?php _e('Same page', $this->plugin_slug); ?></option>
|
327 |
+
</select>
|
328 |
+
<p class="description"><?php _e('Choose how the links will open.', $this->plugin_slug); ?></p>
|
329 |
+
</td>
|
330 |
+
</tr>
|
331 |
+
<tr valign="top">
|
332 |
+
<th scope="row"><label for="options[modules][social_github]">Github</label></th>
|
333 |
+
<td>
|
334 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['social_github'])); ?>" name="options[modules][social_github]" />
|
335 |
+
</td>
|
336 |
+
</tr>
|
337 |
+
<tr valign="top">
|
338 |
+
<th scope="row"><label for="options[modules][social_dribbble]">Dribbble</label></th>
|
339 |
+
<td>
|
340 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['social_dribbble'])); ?>" name="options[modules][social_dribbble]" />
|
341 |
+
</td>
|
342 |
+
</tr>
|
343 |
+
<tr valign="top">
|
344 |
+
<th scope="row"><label for="options[modules][social_twitter]">Twitter</label></th>
|
345 |
+
<td>
|
346 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['social_twitter'])); ?>" name="options[modules][social_twitter]" />
|
347 |
+
</td>
|
348 |
+
</tr>
|
349 |
+
<tr valign="top">
|
350 |
+
<th scope="row"><label for="options[modules][social_facebook]">Facebook</label></th>
|
351 |
+
<td>
|
352 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['social_facebook'])); ?>" name="options[modules][social_facebook]" />
|
353 |
+
</td>
|
354 |
+
</tr>
|
355 |
+
<tr valign="top">
|
356 |
+
<th scope="row"><label for="options[modules][social_pinterest]">Pinterest</label></th>
|
357 |
+
<td>
|
358 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['social_pinterest'])); ?>" name="options[modules][social_pinterest]" />
|
359 |
+
</td>
|
360 |
+
</tr>
|
361 |
+
<tr valign="top">
|
362 |
+
<th scope="row"><label for="options[modules][social_google+]">Google+</label></th>
|
363 |
+
<td>
|
364 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['social_google+'])); ?>" name="options[modules][social_google+]" />
|
365 |
+
</td>
|
366 |
+
</tr>
|
367 |
+
<tr valign="top">
|
368 |
+
<th scope="row"><label for="options[modules][social_linkedin]">Linkedin</label></th>
|
369 |
+
<td>
|
370 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['social_linkedin'])); ?>" name="options[modules][social_linkedin]" />
|
371 |
+
</td>
|
372 |
+
</tr>
|
373 |
+
</tbody>
|
374 |
+
</table>
|
375 |
+
|
376 |
+
<h3>» <?php _e('Contact', $this->plugin_slug); ?></h3>
|
377 |
+
|
378 |
+
<table class="form-table">
|
379 |
+
<tbody>
|
380 |
+
<tr valign="top">
|
381 |
+
<th scope="row"><label for="options[modules][contact_status]"><?php _e('Show contact?', $this->plugin_slug); ?></label></th>
|
382 |
+
<td>
|
383 |
+
<select name="options[modules][contact_status]">
|
384 |
+
<option value="1" <?php selected($this->plugin_settings['modules']['contact_status'], 1); ?>><?php _e('Yes', $this->plugin_slug); ?></option>
|
385 |
+
<option value="0" <?php selected($this->plugin_settings['modules']['contact_status'], 0); ?>><?php _e('No', $this->plugin_slug); ?></option>
|
386 |
+
</select>
|
387 |
+
</td>
|
388 |
+
</tr>
|
389 |
+
<tr valign="top">
|
390 |
+
<th scope="row"><label for="options[modules][contact_email]"><?php _e('Email address', $this->plugin_slug); ?></label></th>
|
391 |
+
<td>
|
392 |
+
<input type="text" value="<?php echo esc_attr(stripslashes($this->plugin_settings['modules']['contact_email'])); ?>" name="options[modules][contact_email]" />
|
393 |
+
</td>
|
394 |
+
</tr>
|
395 |
+
<tr valign="top">
|
396 |
+
<th scope="row"><label for="options[modules][contact_effects]"><?php _e('Effects', $this->plugin_slug); ?></label></th>
|
397 |
+
<td>
|
398 |
+
<select name="options[modules][contact_effects]">
|
399 |
+
<option value="move_top|move_bottom" <?php selected($this->plugin_settings['modules']['contact_effects'], 'move_top|move_bottom'); ?>><?php _e('Move top - Move bottom', $this->plugin_slug); ?></option>
|
400 |
+
<option value="zoom|zoomed" <?php selected($this->plugin_settings['modules']['contact_effects'], 'zoom|zoomed'); ?>><?php _e('Zoom - Zoomed', $this->plugin_slug); ?></option>
|
401 |
+
<option value="fold|unfold" <?php selected($this->plugin_settings['modules']['contact_effects'], 'fold|unfold'); ?>><?php _e('Fold - Unfold', $this->plugin_slug); ?></option>
|
402 |
+
</select>
|
403 |
+
</td>
|
404 |
+
</tr>
|
405 |
+
</tbody>
|
406 |
+
</table>
|
407 |
+
|
408 |
+
<h3>» <?php _e('Google Analytics', $this->plugin_slug); ?></h3>
|
409 |
+
|
410 |
+
<table class="form-table">
|
411 |
+
<tbody>
|
412 |
+
<tr valign="top">
|
413 |
+
<th scope="row"><label for="options[modules][ga_status]"><?php _e('Use Google Analytics?', $this->plugin_slug); ?></label></th>
|
414 |
+
<td>
|
415 |
+
<select name="options[modules][ga_status]">
|
416 |
+
<option value="1" <?php selected($this->plugin_settings['modules']['ga_status'], 1); ?>><?php _e('Yes', $this->plugin_slug); ?></option>
|
417 |
+
<option value="0" <?php selected($this->plugin_settings['modules']['ga_status'], 0); ?>><?php _e('No', $this->plugin_slug); ?></option>
|
418 |
+
</select>
|
419 |
+
</td>
|
420 |
+
</tr>
|
421 |
+
<tr valign="top">
|
422 |
+
<th scope="row"><label for="options[modules][ga_code]"><?php _e('Tracking code', $this->plugin_slug); ?></label></th>
|
423 |
+
<td>
|
424 |
+
<textarea rows="7" name="options[modules][ga_code]" style="width: 625px;"><?php echo stripslashes($this->plugin_settings['modules']['ga_code']); ?></textarea>
|
425 |
+
</td>
|
426 |
+
</tr>
|
427 |
+
</tbody>
|
428 |
+
</table>
|
429 |
+
|
430 |
+
<?php wp_nonce_field('tab-modules'); ?>
|
431 |
+
<input type="hidden" value="modules" name="tab" />
|
432 |
+
<input type="submit" value="<?php _e('Save settings', $this->plugin_slug); ?>" class="button button-primary" name="submit">
|
433 |
+
<input type="button" value="<?php _e('Reset settings', $this->plugin_slug); ?>" class="button button-secondary reset_settings" data-tab="modules" name="submit">
|
434 |
+
</form>
|
435 |
+
</div>
|
436 |
+
</div>
|
437 |
+
</div>
|
438 |
+
|
439 |
+
<?php include_once('sidebar.php'); ?>
|
440 |
+
</div>
|
441 |
</div>
|
@@ -1,40 +1,56 @@
|
|
1 |
-
<div id="sidebar" class="wrapper-cell">
|
2 |
-
<div class="sidebar_box info_box">
|
3 |
-
<h3><?php _e('Plugin Info', $this->plugin_slug); ?></h3>
|
4 |
-
<div class="inside">
|
5 |
-
<?php $plugin_data = wpmm_plugin_info($this->plugin_slug); ?>
|
6 |
-
<ul>
|
7 |
-
<li><?php _e('Name', $this->plugin_slug); ?>:
|
8 |
-
<?php
|
9 |
-
echo!empty($plugin_data['Name']) ? $plugin_data['Name'] : '';
|
10 |
-
echo!empty($plugin_data['Version']) ? ' v' . $plugin_data['Version'] : '';
|
11 |
-
?>
|
12 |
-
</li>
|
13 |
-
<li><?php _e('Author', $this->plugin_slug); ?>: <?php echo!empty($plugin_data['AuthorName']) ? $plugin_data['AuthorName'] : ''; ?></li>
|
14 |
-
<li><?php _e('Website', $this->plugin_slug); ?>: <?php echo!empty($plugin_data['AuthorURI']) ? '<a href="' . $plugin_data['AuthorURI'] . WPMM_AUTHOR_UTM . '" target="_blank">' . $plugin_data['AuthorName'] . '</a>' : ''; ?></li>
|
15 |
-
<li><?php _e('Twitter', $this->plugin_slug); ?>: <?php echo!empty($plugin_data['Twitter']) ? '<a href="http://twitter.com/' . $plugin_data['Twitter'] . '" target="_blank">@' . $plugin_data['Twitter'] . '</a>' : ''; ?></li>
|
16 |
-
<li><?php _e('GitHub', $this->plugin_slug); ?>: <?php echo!empty($plugin_data['GitHub URI']) ? '<a href="' . $plugin_data['GitHub URI'] . '" target="_blank">' . basename($plugin_data['GitHub URI']) . '</a>' : ''; ?></li>
|
17 |
-
</ul>
|
18 |
-
</div>
|
19 |
-
</div>
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
40 |
</div>
|
1 |
+
<div id="sidebar" class="wrapper-cell">
|
2 |
+
<div class="sidebar_box info_box">
|
3 |
+
<h3><?php _e('Plugin Info', $this->plugin_slug); ?></h3>
|
4 |
+
<div class="inside">
|
5 |
+
<?php $plugin_data = wpmm_plugin_info($this->plugin_slug); ?>
|
6 |
+
<ul>
|
7 |
+
<li><?php _e('Name', $this->plugin_slug); ?>:
|
8 |
+
<?php
|
9 |
+
echo!empty($plugin_data['Name']) ? $plugin_data['Name'] : '';
|
10 |
+
echo!empty($plugin_data['Version']) ? ' v' . $plugin_data['Version'] : '';
|
11 |
+
?>
|
12 |
+
</li>
|
13 |
+
<li><?php _e('Author', $this->plugin_slug); ?>: <?php echo!empty($plugin_data['AuthorName']) ? $plugin_data['AuthorName'] : ''; ?></li>
|
14 |
+
<li><?php _e('Website', $this->plugin_slug); ?>: <?php echo!empty($plugin_data['AuthorURI']) ? '<a href="' . $plugin_data['AuthorURI'] . WPMM_AUTHOR_UTM . '" target="_blank">' . $plugin_data['AuthorName'] . '</a>' : ''; ?></li>
|
15 |
+
<li><?php _e('Twitter', $this->plugin_slug); ?>: <?php echo!empty($plugin_data['Twitter']) ? '<a href="http://twitter.com/' . $plugin_data['Twitter'] . '" target="_blank">@' . $plugin_data['Twitter'] . '</a>' : ''; ?></li>
|
16 |
+
<li><?php _e('GitHub', $this->plugin_slug); ?>: <?php echo!empty($plugin_data['GitHub Plugin URI']) ? '<a href="' . $plugin_data['GitHub Plugin URI'] . '" target="_blank">' . basename($plugin_data['GitHub Plugin URI']) . '</a>' : ''; ?></li>
|
17 |
+
</ul>
|
18 |
+
</div>
|
19 |
+
</div>
|
20 |
+
|
21 |
+
<?php
|
22 |
+
$banners = wpmm_get_banners();
|
23 |
+
|
24 |
+
if (!empty($banners['product'])) {
|
25 |
+
?>
|
26 |
+
<div class="sidebar_box themes_box">
|
27 |
+
<h3><?php _e('Other products', $this->plugin_slug); ?></h3>
|
28 |
+
<div class="inside">
|
29 |
+
<ul>
|
30 |
+
<?php
|
31 |
+
foreach ($banners['product'] as $item) {
|
32 |
+
printf('<li><a href="%s" target="_blank" title="%s"><img src="%s" alt="%s" /></a></li>', $item['link'] . WPMM_AUTHOR_UTM, $item['title'], $item['image'], $item['title']);
|
33 |
+
}
|
34 |
+
?>
|
35 |
+
</ul>
|
36 |
+
</div>
|
37 |
+
</div>
|
38 |
+
<?php } ?>
|
39 |
+
|
40 |
+
<?php
|
41 |
+
if (!empty($banners['resource'])) {
|
42 |
+
?>
|
43 |
+
<div class="sidebar_box resources_box">
|
44 |
+
<h3><?php _e('Resources', $this->plugin_slug); ?></h3>
|
45 |
+
<div class="inside">
|
46 |
+
<ul>
|
47 |
+
<?php
|
48 |
+
foreach ($banners['resource'] as $item) {
|
49 |
+
printf('<li><a href="%s" target="_blank" title="%s"><img src="%s" alt="%s" /></a></li>', $item['link'] . WPMM_AUTHOR_UTM, $item['title'], $item['image'], $item['title']);
|
50 |
+
}
|
51 |
+
?>
|
52 |
+
</ul>
|
53 |
+
</div>
|
54 |
+
</div>
|
55 |
+
<?php } ?>
|
56 |
</div>
|
@@ -1,65 +1,72 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
/**
|
4 |
-
* WP Maintenance Mode
|
5 |
-
*
|
6 |
-
* Plugin Name: WP Maintenance Mode
|
7 |
-
* Plugin URI: http://designmodo.com/
|
8 |
-
* Description: Adds a splash page to your site that lets visitors know your site is down for maintenance. It's perfect for a coming soon page.
|
9 |
-
* Version: 2.0.
|
10 |
-
* Author: Designmodo
|
11 |
-
* Author URI: http://designmodo.com/
|
12 |
-
* Twitter: designmodo
|
13 |
-
* GitHub URI: https://github.com/Designmodocom/WP-Maintenance-Mode
|
14 |
-
*
|
15 |
-
*
|
16 |
-
* License
|
17 |
-
*
|
18 |
-
|
19 |
-
|
20 |
-
if
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
define('
|
28 |
-
define('
|
29 |
-
define('
|
30 |
-
define('
|
31 |
-
define('
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
define('
|
38 |
-
define('
|
39 |
-
define('
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
require_once(
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
65 |
}
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* WP Maintenance Mode
|
5 |
+
*
|
6 |
+
* Plugin Name: WP Maintenance Mode
|
7 |
+
* Plugin URI: http://designmodo.com/
|
8 |
+
* Description: Adds a splash page to your site that lets visitors know your site is down for maintenance. It's perfect for a coming soon page.
|
9 |
+
* Version: 2.0.4
|
10 |
+
* Author: Designmodo
|
11 |
+
* Author URI: http://designmodo.com/
|
12 |
+
* Twitter: designmodo
|
13 |
+
* GitHub Plugin URI: https://github.com/Designmodocom/WP-Maintenance-Mode
|
14 |
+
* GitHub Branch: master
|
15 |
+
* Text Domain: wp-maintenance-mode
|
16 |
+
* License: GPL-2.0+
|
17 |
+
* License URI: http://www.gnu.org/licenses/gpl-2.0.txt
|
18 |
+
* Domain Path: /languages
|
19 |
+
*/
|
20 |
+
// Exit if accessed directly
|
21 |
+
if (!defined('ABSPATH'))
|
22 |
+
exit;
|
23 |
+
|
24 |
+
/**
|
25 |
+
* DEFINE PATHS
|
26 |
+
*/
|
27 |
+
define('WPMM_PATH', plugin_dir_path(__FILE__));
|
28 |
+
define('WPMM_CLASSES_PATH', WPMM_PATH . 'includes/classes/');
|
29 |
+
define('WPMM_FUNCTIONS_PATH', WPMM_PATH . 'includes/functions/');
|
30 |
+
define('WPMM_LANGUAGES_PATH', basename(WPMM_PATH) . '/languages/');
|
31 |
+
define('WPMM_VIEWS_PATH', WPMM_PATH . 'views/');
|
32 |
+
define('WPMM_CSS_PATH', WPMM_PATH . 'assets/css/');
|
33 |
+
|
34 |
+
/**
|
35 |
+
* DEFINE URLS
|
36 |
+
*/
|
37 |
+
define('WPMM_URL', plugin_dir_url(__FILE__));
|
38 |
+
define('WPMM_JS_URL', WPMM_URL . 'assets/js/');
|
39 |
+
define('WPMM_CSS_URL', WPMM_URL . 'assets/css/');
|
40 |
+
define('WPMM_IMAGES_URL', WPMM_URL . 'assets/images/');
|
41 |
+
define('WPMM_AUTHOR_UTM', '?utm_source=wpplugin&utm_medium=wpmaintenance');
|
42 |
+
|
43 |
+
/**
|
44 |
+
* OTHER DEFINES
|
45 |
+
*/
|
46 |
+
define('WPMM_ASSETS_SUFFIX', (defined('SCRIPT_DEBUG') && SCRIPT_DEBUG) ? '' : '.min');
|
47 |
+
|
48 |
+
/**
|
49 |
+
* FUNCTIONS
|
50 |
+
*/
|
51 |
+
require_once(WPMM_FUNCTIONS_PATH . 'helpers.php');
|
52 |
+
if (is_multisite() && !function_exists('is_plugin_active_for_network')) {
|
53 |
+
require_once( ABSPATH . '/wp-admin/includes/plugin.php' );
|
54 |
+
}
|
55 |
+
|
56 |
+
/**
|
57 |
+
* FRONTEND
|
58 |
+
*/
|
59 |
+
require_once(WPMM_CLASSES_PATH . 'wp-maintenance-mode-shortcodes.php');
|
60 |
+
require_once(WPMM_CLASSES_PATH . 'wp-maintenance-mode.php');
|
61 |
+
register_activation_hook(__FILE__, array('WP_Maintenance_Mode', 'activate'));
|
62 |
+
register_deactivation_hook(__FILE__, array('WP_Maintenance_Mode', 'deactivate'));
|
63 |
+
|
64 |
+
add_action('plugins_loaded', array('WP_Maintenance_Mode', 'get_instance'));
|
65 |
+
|
66 |
+
/**
|
67 |
+
* DASHBOARD
|
68 |
+
*/
|
69 |
+
if (is_admin()) {
|
70 |
+
require_once(WPMM_CLASSES_PATH . 'wp-maintenance-mode-admin.php');
|
71 |
+
add_action('plugins_loaded', array('WP_Maintenance_Mode_Admin', 'get_instance'));
|
72 |
}
|