Version Description
- Removal: "Message location" control led to degraded usability.
- Removal: "Title" section in "Style" tab added clutter and duplicated core functionality.
- Improvement: Better selection and insertion of forms in block interface.
Download this release
Release Info
Developer | happyforms |
Plugin | Form builder to get in touch with visitors, grow your email list and collect payments — Happyforms |
Version | 1.13.4 |
Comparing to | |
See all releases |
Code changes from version 1.13.3 to 1.13.4
- core/assets/css/admin.css +11 -145
- core/assets/css/color.css +0 -4
- core/assets/css/dashboard-modals.css +57 -0
- core/assets/css/layout.css +1 -6
- core/assets/js/admin/block.js +0 -104
- core/assets/js/admin/dashboard.js +2 -65
- core/assets/js/parts/part-checkbox.js +0 -23
- core/assets/js/parts/part-radio.js +0 -23
- core/assets/jsx/build/admin/block.asset.php +1 -1
- core/assets/jsx/build/admin/block.js +52 -24
- core/assets/jsx/build/admin/block.js.map +1 -1
- core/assets/jsx/src/admin/block.js +28 -12
- core/assets/jsx/src/admin/dashboard-modals.js +119 -0
- core/classes/class-block.php +4 -7
- core/classes/class-dashboard-modals.php +43 -26
- core/classes/class-deactivation.php +7 -12
- core/classes/class-form-controller.php +11 -22
- core/classes/class-form-option-limiter.php +147 -22
- core/classes/class-form-setup.php +47 -12
- core/classes/class-form-styles.php +25 -20
- core/classes/class-happyforms-core.php +0 -4
- core/classes/class-tracking.php +0 -99
- core/classes/parts/class-part-checkbox.php +1 -11
- core/classes/parts/class-part-radio.php +1 -11
- core/classes/parts/class-part-select.php +2 -33
- core/helpers/helper-activation.php +15 -3
- core/helpers/helper-misc.php +21 -10
- core/templates/admin/modal-deactivate.php +0 -17
- core/templates/customize-controls/style/code.php +1 -1
- core/templates/customize-controls/style/divider.php +1 -1
- core/templates/partials/admin-modal-footer.php +0 -3
- core/templates/partials/admin-modal-header.php +0 -8
- core/templates/parts/customize-checkbox.php +2 -12
- core/templates/parts/customize-email.php +1 -1
- core/templates/parts/customize-multi-line-text.php +1 -1
- core/templates/parts/customize-number.php +1 -1
- core/templates/parts/customize-radio.php +2 -12
- core/templates/parts/customize-select.php +1 -1
- core/templates/parts/customize-single-line-text.php +1 -1
- happyforms.php +2 -2
- inc/assets/css/dashboard-modals.css +73 -0
- inc/assets/js/admin/dashboard.js +2 -13
- inc/assets/jsx/build/admin/dashboard-modals.asset.php +1 -0
- inc/assets/jsx/build/admin/dashboard-modals.js +421 -0
- inc/assets/jsx/build/admin/dashboard-modals.js.map +1 -0
- inc/assets/jsx/src/admin/dashboard-modals.js +127 -0
- inc/classes/class-happyforms.php +49 -83
- inc/classes/class-message-controller.php +34 -117
- inc/templates/admin/modal-onboarding.php +0 -36
- inc/templates/admin/modal-upgrade.php +0 -8
- inc/templates/admin/upgrade-modal.php +0 -2
- languages/happyforms.pot +701 -655
- readme.txt +11 -3
core/assets/css/admin.css
CHANGED
@@ -197,161 +197,27 @@ p.happyforms-message-nav span.divider:last-child {
|
|
197 |
|
198 |
/**
|
199 |
*
|
200 |
-
*
|
201 |
*
|
202 |
*/
|
203 |
-
|
204 |
-
|
205 |
-
opacity: 0;
|
206 |
-
}
|
207 |
-
to {
|
208 |
-
opacity: 1;
|
209 |
-
}
|
210 |
-
}
|
211 |
-
|
212 |
-
@keyframes happyforms-modal__appear-animation {
|
213 |
-
from {
|
214 |
-
margin-top: 32px;
|
215 |
-
}
|
216 |
-
to {
|
217 |
-
margin-top: 0;
|
218 |
-
}
|
219 |
-
}
|
220 |
-
|
221 |
-
.happyforms-modal__overlay {
|
222 |
-
position: fixed;
|
223 |
-
top: 0;
|
224 |
-
bottom: 0;
|
225 |
-
left: 0;
|
226 |
-
right: 0;
|
227 |
-
display: flex;
|
228 |
-
justify-content: center;
|
229 |
-
align-items: center;
|
230 |
-
background-color: rgba(0, 0, 0, 0.35);
|
231 |
-
z-index: 100000;
|
232 |
-
animation: happyforms-modal__fade-in-animation 0.2s ease-out 0s;
|
233 |
-
animation-fill-mode: forwards;
|
234 |
-
}
|
235 |
-
|
236 |
-
.happyforms-modal__frame {
|
237 |
-
position: relative;
|
238 |
-
box-sizing: border-box;
|
239 |
-
background: #fff;
|
240 |
-
width: 450px;
|
241 |
-
max-height: 90vh;
|
242 |
-
overflow: auto;
|
243 |
-
animation: happyforms-modal__appear-animation 0.1s ease-out;
|
244 |
-
animation-fill-mode: forwards;
|
245 |
-
box-shadow: 0 3px 30px rgb(0 0 0 / 20%);
|
246 |
-
}
|
247 |
-
|
248 |
-
@media screen and (max-width: 800px) {
|
249 |
-
.happyforms-modal__frame {
|
250 |
-
width: auto;
|
251 |
-
margin: 20px;
|
252 |
-
}
|
253 |
-
}
|
254 |
-
|
255 |
-
.happyforms-modal__header {
|
256 |
-
position: sticky;
|
257 |
-
top: 0;
|
258 |
-
left: 0;
|
259 |
-
right: 0;
|
260 |
-
}
|
261 |
-
|
262 |
-
.happyforms-modal__dismiss {
|
263 |
-
position: absolute;
|
264 |
-
top: 0;
|
265 |
-
right: 0;
|
266 |
-
display: inline-flex;
|
267 |
-
justify-content: center;
|
268 |
-
height: 36px;
|
269 |
-
min-width: 36px;
|
270 |
-
margin: 8px;
|
271 |
-
padding: 6px;
|
272 |
-
border: 0;
|
273 |
-
cursor: pointer;
|
274 |
-
-webkit-appearance: none;
|
275 |
-
background: none;
|
276 |
-
transition: box-shadow 0.1s linear;
|
277 |
-
border-radius: 2px;
|
278 |
-
}
|
279 |
-
|
280 |
-
.happyforms-modal__dismiss:focus {
|
281 |
-
box-shadow: 0 0 0 2px #007cba;
|
282 |
-
outline: 3px solid transparent;
|
283 |
-
}
|
284 |
-
|
285 |
-
.happyforms-modal__dismiss:hover svg {
|
286 |
-
fill: #2271b1;
|
287 |
-
}
|
288 |
-
|
289 |
-
.happyforms-modal__body {
|
290 |
-
padding: 40px 50px 40px;
|
291 |
-
}
|
292 |
-
|
293 |
-
@media screen and (max-width: 800px) {
|
294 |
-
.happyforms-modal__body {
|
295 |
-
padding: 30px 30px 40px;
|
296 |
-
}
|
297 |
-
}
|
298 |
-
|
299 |
-
.happyforms-modal__heading {
|
300 |
-
padding-bottom: 30px;
|
301 |
-
}
|
302 |
-
|
303 |
-
.happyforms-modal__heading h1 {
|
304 |
-
font-size: 24px;
|
305 |
-
line-height: 1.4;
|
306 |
-
margin: 0 0 16px;
|
307 |
-
}
|
308 |
-
|
309 |
-
.happyforms-modal__heading p {
|
310 |
-
margin: 0;
|
311 |
}
|
312 |
|
313 |
-
.happyforms-
|
314 |
display: flex;
|
315 |
-
flex-direction: column;
|
316 |
width: 100%;
|
|
|
317 |
}
|
318 |
|
319 |
-
.happyforms-
|
320 |
-
|
321 |
-
flex: 1;
|
322 |
}
|
323 |
|
324 |
-
.happyforms-
|
325 |
-
|
326 |
-
margin: 20px 0 5px;
|
327 |
}
|
328 |
|
329 |
-
.happyforms-
|
330 |
-
|
331 |
-
}
|
332 |
-
|
333 |
-
.happyforms-modal__content form button.button-primary {
|
334 |
-
margin-top: 30px;
|
335 |
-
}
|
336 |
-
|
337 |
-
/**
|
338 |
-
*
|
339 |
-
* Deactivation modal
|
340 |
-
*
|
341 |
-
*/
|
342 |
-
.happyforms-modal__frame--deactivate h1 {
|
343 |
-
margin-bottom: 0;
|
344 |
-
}
|
345 |
-
|
346 |
-
.happyforms-modal__frame--deactivate .happyforms-modal__content form label {
|
347 |
-
margin: 0 0 10px;
|
348 |
-
}
|
349 |
-
|
350 |
-
/**
|
351 |
-
*
|
352 |
-
* Gutenberg block
|
353 |
-
*
|
354 |
-
*/
|
355 |
-
.edit-post-visual-editor .happyforms-block-form-selector-wrap .components-select-control__input {
|
356 |
-
padding: 0 10px;
|
357 |
}
|
197 |
|
198 |
/**
|
199 |
*
|
200 |
+
* Gutenberg block
|
201 |
*
|
202 |
*/
|
203 |
+
.edit-post-visual-editor .happyforms-block-form-selector-wrap .components-select-control__input {
|
204 |
+
padding: 0 10px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
205 |
}
|
206 |
|
207 |
+
.happyforms-block-placeholder__control-group {
|
208 |
display: flex;
|
|
|
209 |
width: 100%;
|
210 |
+
align-items: stretch;
|
211 |
}
|
212 |
|
213 |
+
.happyforms-block-placeholder__control-group > *:first-child {
|
214 |
+
flex: 1 0 auto;
|
|
|
215 |
}
|
216 |
|
217 |
+
.happyforms-block-placeholder__control-group button {
|
218 |
+
margin-left: 8px;
|
|
|
219 |
}
|
220 |
|
221 |
+
.happyforms-block-placeholder__control-group select {
|
222 |
+
height: 36px !important;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
223 |
}
|
core/assets/css/color.css
CHANGED
@@ -453,10 +453,6 @@
|
|
453 |
color: var(--happyforms-color-submit-text);
|
454 |
}
|
455 |
|
456 |
-
.happyforms-styles.happyforms-form--disable-until-valid input[type=submit][disabled].happyforms-button--submit {
|
457 |
-
opacity: 0.5;
|
458 |
-
}
|
459 |
-
|
460 |
.happyforms-styles input[type=submit].happyforms-button--submit:hover,
|
461 |
.happyforms-styles input[type=submit].happyforms-button--submit:focus {
|
462 |
cursor: pointer;
|
453 |
color: var(--happyforms-color-submit-text);
|
454 |
}
|
455 |
|
|
|
|
|
|
|
|
|
456 |
.happyforms-styles input[type=submit].happyforms-button--submit:hover,
|
457 |
.happyforms-styles input[type=submit].happyforms-button--submit:focus {
|
458 |
cursor: pointer;
|
core/assets/css/dashboard-modals.css
ADDED
@@ -0,0 +1,57 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
*
|
3 |
+
* Common styles
|
4 |
+
*
|
5 |
+
*/
|
6 |
+
.happyforms-modal {
|
7 |
+
width: 450px;
|
8 |
+
}
|
9 |
+
|
10 |
+
.happyforms-modal p:last-child {
|
11 |
+
margin-bottom: 0;
|
12 |
+
}
|
13 |
+
|
14 |
+
.happyforms-modal .components-radio-control__option:not(:last-child) {
|
15 |
+
margin-bottom: 13px;
|
16 |
+
}
|
17 |
+
|
18 |
+
.happyforms-modal__footer {
|
19 |
+
margin-top: 24px;
|
20 |
+
}
|
21 |
+
|
22 |
+
.happyforms-modal__footer-button-group {
|
23 |
+
display: flex;
|
24 |
+
}
|
25 |
+
|
26 |
+
.happyforms-modal__footer-button-group .components-button {
|
27 |
+
flex: 1 0 auto;
|
28 |
+
justify-content: center;
|
29 |
+
}
|
30 |
+
|
31 |
+
.happyforms-modal__footer-button-group .components-button + .components-button {
|
32 |
+
margin-left: 10px;
|
33 |
+
}
|
34 |
+
|
35 |
+
.components-modal__frame.components-guide.happyforms-modal {
|
36 |
+
height: auto;
|
37 |
+
max-height: 90vh;
|
38 |
+
}
|
39 |
+
|
40 |
+
|
41 |
+
/**
|
42 |
+
*
|
43 |
+
* Deactivation modal
|
44 |
+
*
|
45 |
+
*/
|
46 |
+
.happyforms-modal.happyforms-modal--deactivate label {
|
47 |
+
display: block;
|
48 |
+
margin: 0 0 3px;
|
49 |
+
}
|
50 |
+
|
51 |
+
.happyforms-modal.happyforms-modal--deactivate label:not(:last-child) {
|
52 |
+
margin: 0 0 5px;
|
53 |
+
}
|
54 |
+
|
55 |
+
.happyforms-modal.happyforms-modal--deactivate .components-modal__content {
|
56 |
+
padding-bottom: 32px;
|
57 |
+
}
|
core/assets/css/layout.css
CHANGED
@@ -580,7 +580,7 @@ h3.happyforms-form__title {
|
|
580 |
}
|
581 |
}
|
582 |
|
583 |
-
.happyforms-part--choice.display-type--block
|
584 |
display: flex !important;
|
585 |
flex-flow: column wrap;
|
586 |
}
|
@@ -716,11 +716,6 @@ h3.happyforms-form__title {
|
|
716 |
margin: 0 0 25px 0;
|
717 |
}
|
718 |
|
719 |
-
.happyforms-form--notices-below .happyforms-flex>.happyforms-message-notices {
|
720 |
-
order: 1000;
|
721 |
-
margin: 25px 0 0 0;
|
722 |
-
}
|
723 |
-
|
724 |
form .happyforms-flex>.happyforms-message-notices .happyforms-message-notice {
|
725 |
width: 100%;
|
726 |
box-sizing: border-box;
|
580 |
}
|
581 |
}
|
582 |
|
583 |
+
.happyforms-part--choice.display-type--block .happyforms-part__el {
|
584 |
display: flex !important;
|
585 |
flex-flow: column wrap;
|
586 |
}
|
716 |
margin: 0 0 25px 0;
|
717 |
}
|
718 |
|
|
|
|
|
|
|
|
|
|
|
719 |
form .happyforms-flex>.happyforms-message-notices .happyforms-message-notice {
|
720 |
width: 100%;
|
721 |
box-sizing: border-box;
|
core/assets/js/admin/block.js
DELETED
@@ -1,104 +0,0 @@
|
|
1 |
-
( function( element, blocks, components, editor, $, settings ) {
|
2 |
-
|
3 |
-
var el = wp.element.createElement;
|
4 |
-
var registerBlockType = wp.blocks.registerBlockType;
|
5 |
-
var ServerSideRender = wp.serverSideRender;
|
6 |
-
var PanelBody = wp.components.PanelBody;
|
7 |
-
var SelectControl = wp.components.SelectControl;
|
8 |
-
var Placeholder = wp.components.Placeholder;
|
9 |
-
var Notice = wp.components.Notice;
|
10 |
-
var Button = wp.components.Button;
|
11 |
-
var Icon = wp.components.Icon;
|
12 |
-
var InspectorControls = wp.blockEditor.InspectorControls;
|
13 |
-
|
14 |
-
var blockID = 'thethemefoundry/happyforms';
|
15 |
-
var options = Object
|
16 |
-
.keys( settings.forms )
|
17 |
-
.map( function( key ) {
|
18 |
-
return { label: settings.forms[key], value: key };
|
19 |
-
} )
|
20 |
-
options.reverse().unshift( { label: settings.i18n.select_default, value: '' } );
|
21 |
-
|
22 |
-
var ComponentPlaceholder = function( props ) {
|
23 |
-
var component =
|
24 |
-
el( Placeholder, {
|
25 |
-
icon: settings.icon,
|
26 |
-
label: settings.i18n.placeholder_text,
|
27 |
-
className: settings.i18n.placeholder_class,
|
28 |
-
key: 'happyforms-component-placeholder',
|
29 |
-
},
|
30 |
-
el( SelectControl, {
|
31 |
-
value: '',
|
32 |
-
options: options,
|
33 |
-
onChange: function( value ) {
|
34 |
-
props.setAttributes( { id: value } );
|
35 |
-
}
|
36 |
-
} )
|
37 |
-
);
|
38 |
-
|
39 |
-
return component;
|
40 |
-
};
|
41 |
-
|
42 |
-
var ComponentForm = function( props ) {
|
43 |
-
var shortcode = el( wp.serverSideRender, {
|
44 |
-
block: blockID,
|
45 |
-
attributes: props.attributes,
|
46 |
-
key: 'happyforms-component-form',
|
47 |
-
}
|
48 |
-
);
|
49 |
-
|
50 |
-
var component = [ shortcode ];
|
51 |
-
|
52 |
-
return component;
|
53 |
-
};
|
54 |
-
|
55 |
-
var ComponentInspector = function( props ) {
|
56 |
-
var component =
|
57 |
-
el( InspectorControls, { key: 'happyforms-inspector-controls' },
|
58 |
-
el( PanelBody, { title: settings.i18n.settings_title },
|
59 |
-
el( SelectControl, {
|
60 |
-
value: props.attributes.id,
|
61 |
-
options: options,
|
62 |
-
onChange: function( value ) {
|
63 |
-
props.setAttributes( { id: value } );
|
64 |
-
},
|
65 |
-
} ),
|
66 |
-
|
67 |
-
),
|
68 |
-
);
|
69 |
-
|
70 |
-
return component;
|
71 |
-
};
|
72 |
-
|
73 |
-
registerBlockType( blockID, {
|
74 |
-
title: settings.block.title,
|
75 |
-
description: settings.block.description,
|
76 |
-
category: settings.block.category,
|
77 |
-
icon: settings.block.icon,
|
78 |
-
keywords: settings.block.keywords,
|
79 |
-
supports: {
|
80 |
-
anchor: true,
|
81 |
-
html: false
|
82 |
-
},
|
83 |
-
|
84 |
-
edit: function( props ) {
|
85 |
-
if ( props.attributes.id ) {
|
86 |
-
return [ ComponentForm( props ), ComponentInspector( props ) ];
|
87 |
-
}
|
88 |
-
|
89 |
-
return [ ComponentPlaceholder( props ), ComponentInspector( props ) ];
|
90 |
-
},
|
91 |
-
|
92 |
-
save: function() {
|
93 |
-
return null;
|
94 |
-
},
|
95 |
-
} );
|
96 |
-
|
97 |
-
} )(
|
98 |
-
window.wp.element,
|
99 |
-
window.wp.blocks,
|
100 |
-
window.wp.components,
|
101 |
-
window.wp.editor,
|
102 |
-
jQuery,
|
103 |
-
_happyFormsBlockSettings,
|
104 |
-
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
core/assets/js/admin/dashboard.js
CHANGED
@@ -10,10 +10,7 @@
|
|
10 |
$( document ).on( 'click', '.happyforms-editor-button', this.onEditorButton.bind( this ) );
|
11 |
$( '.happyforms-dialog__button' ).on( 'click', this.onDialogButton.bind( this ) );
|
12 |
$( '.happyforms-notice:not(.one-time)' ).on( 'click', '.notice-dismiss', this.onNoticeDismiss.bind( this ) );
|
13 |
-
$( document ).on( 'click', '.happyforms-modal__frame', this.lockModalEvent );
|
14 |
$( document ).on( 'click', 'a[id^="deactivate-happyforms"]', this.openDeactivateModal );
|
15 |
-
$( document ).on( 'click', '.happyforms-modal__frame--deactivate input[name="keep-data"]', this.onSelectKeepData );
|
16 |
-
$( document ).on( 'submit', '.happyforms-modal__frame--deactivate form', this.onDeactivateModalSubmit );
|
17 |
},
|
18 |
|
19 |
onEditorButton: function( e ) {
|
@@ -89,70 +86,10 @@
|
|
89 |
);
|
90 |
},
|
91 |
|
92 |
-
openModal: function( id ) {
|
93 |
-
var self = this;
|
94 |
-
|
95 |
-
$.get( ajaxurl, {
|
96 |
-
action: settings.actionModalFetch,
|
97 |
-
id: id,
|
98 |
-
}, function( html ) {
|
99 |
-
$( 'body' ).addClass( 'modal-open' );
|
100 |
-
$( 'body' ).append( html );
|
101 |
-
|
102 |
-
$( document ).one( 'click', '.happyforms-modal__overlay', self.closeModal );
|
103 |
-
$( document ).one( 'click', '.happyforms-modal__dismiss', self.closeModal );
|
104 |
-
} );
|
105 |
-
},
|
106 |
-
|
107 |
-
closeModal: function() {
|
108 |
-
if ( $( '[data-happyforms-modal-dismissible]' ).length ) {
|
109 |
-
var id = $( '[data-happyforms-modal-id]' ).attr( 'data-happyforms-modal-id' );
|
110 |
-
|
111 |
-
$.post( ajaxurl, {
|
112 |
-
action: settings.actionModalDismiss,
|
113 |
-
id: id,
|
114 |
-
} );
|
115 |
-
}
|
116 |
-
|
117 |
-
$( '.happyforms-modal__overlay' ).remove();
|
118 |
-
$( 'body' ).removeClass( 'modal-open' );
|
119 |
-
},
|
120 |
-
|
121 |
-
lockModalEvent: function( e ) {
|
122 |
-
e.stopPropagation();
|
123 |
-
},
|
124 |
-
|
125 |
openDeactivateModal: function( e ) {
|
126 |
e.preventDefault();
|
127 |
|
128 |
-
happyForms.
|
129 |
-
happyForms.dashboard.openModal( 'deactivate' );
|
130 |
-
},
|
131 |
-
|
132 |
-
onDeactivateModalSubmit: function( e ) {
|
133 |
-
e.preventDefault();
|
134 |
-
|
135 |
-
var $form = $( e.target );
|
136 |
-
var nonce = $( 'input[name="_wpnonce"]', $form ).val();
|
137 |
-
var keepData = $( 'input[name="keep-data"]:checked', $form ).val();
|
138 |
-
var redirectUrl = happyForms.dashboard.$deactivationLink.attr( 'href' );
|
139 |
-
|
140 |
-
$.post( ajaxurl, {
|
141 |
-
action: settings.actionDeactivateModalSubmit,
|
142 |
-
_wpnonce: nonce,
|
143 |
-
keep_data: keepData,
|
144 |
-
}, function() {
|
145 |
-
window.location.href = redirectUrl;
|
146 |
-
} );
|
147 |
-
|
148 |
-
happyForms.dashboard.closeModal();
|
149 |
-
},
|
150 |
-
|
151 |
-
onSelectKeepData: function( e ) {
|
152 |
-
var keepData = $( '.happyforms-modal__frame--deactivate input[name="keep-data"]:checked' ).val();
|
153 |
-
var buttonText = 'no' == keepData ? settings.textDeactivateAndCleanup : settings.textDeactivateAndKeep;
|
154 |
-
|
155 |
-
$( '.happyforms-modal__frame--deactivate button[type="submit"]' ).text( buttonText );
|
156 |
},
|
157 |
};
|
158 |
|
@@ -160,4 +97,4 @@
|
|
160 |
happyForms.dashboard.init();
|
161 |
} );
|
162 |
|
163 |
-
} )( jQuery, _happyFormsAdmin );
|
10 |
$( document ).on( 'click', '.happyforms-editor-button', this.onEditorButton.bind( this ) );
|
11 |
$( '.happyforms-dialog__button' ).on( 'click', this.onDialogButton.bind( this ) );
|
12 |
$( '.happyforms-notice:not(.one-time)' ).on( 'click', '.notice-dismiss', this.onNoticeDismiss.bind( this ) );
|
|
|
13 |
$( document ).on( 'click', 'a[id^="deactivate-happyforms"]', this.openDeactivateModal );
|
|
|
|
|
14 |
},
|
15 |
|
16 |
onEditorButton: function( e ) {
|
86 |
);
|
87 |
},
|
88 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
89 |
openDeactivateModal: function( e ) {
|
90 |
e.preventDefault();
|
91 |
|
92 |
+
happyForms.modals.openDeactivateModal( e.target.href );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
93 |
},
|
94 |
};
|
95 |
|
97 |
happyForms.dashboard.init();
|
98 |
} );
|
99 |
|
100 |
+
} )( jQuery, _happyFormsAdmin );
|
core/assets/js/parts/part-checkbox.js
CHANGED
@@ -236,7 +236,6 @@
|
|
236 |
this.listenTo( this, 'ready', this.onReady );
|
237 |
this.listenTo( this.model, 'change:show_select_all', this.onSelectAllChange );
|
238 |
this.listenTo( this.model, 'change:select_all_label', this.onSelectAllLabelChange );
|
239 |
-
this.listenTo( this.model, 'change:options_width', this.onOptionsWidthChange );
|
240 |
|
241 |
this.listenTo( this.model, 'change:other_option', this.onAddOtherOption );
|
242 |
this.listenTo( this.model, 'change:other_option_label', this.onOtherOptionLabelChange );
|
@@ -414,15 +413,6 @@
|
|
414 |
happyForms.previewSend( 'happyforms-part-dom-update', data );
|
415 |
},
|
416 |
|
417 |
-
onOptionsWidthChange: function() {
|
418 |
-
var data = {
|
419 |
-
id: this.model.get( 'id' ),
|
420 |
-
callback: 'onCheckboxOptionsWidthChange'
|
421 |
-
};
|
422 |
-
|
423 |
-
happyForms.previewSend( 'happyforms-part-dom-update', data );
|
424 |
-
},
|
425 |
-
|
426 |
onEnterKey: function( e ) {
|
427 |
e.preventDefault();
|
428 |
|
@@ -622,19 +612,6 @@
|
|
622 |
$option.remove();
|
623 |
},
|
624 |
|
625 |
-
onCheckboxOptionsWidthChange: function( id, html, options ) {
|
626 |
-
var part = this.getPartModel( id );
|
627 |
-
var $part = this.getPartElement( html );
|
628 |
-
|
629 |
-
$part.removeClass( 'happyforms-part-options-width--auto' );
|
630 |
-
$part.removeClass( 'happyforms-part-options-width--half' );
|
631 |
-
$part.removeClass( 'happyforms-part-options-width--third' );
|
632 |
-
$part.removeClass( 'happyforms-part-options-width--quarter' );
|
633 |
-
$part.removeClass( 'happyforms-part-options-width--full' );
|
634 |
-
|
635 |
-
$part.addClass( 'happyforms-part-options-width--' + part.get( 'options_width' ) );
|
636 |
-
},
|
637 |
-
|
638 |
onCheckboxSelectAllLabelChangeCallback: function( id, html, options ) {
|
639 |
var part = this.getPartModel( id );
|
640 |
var $part = this.getPartElement( html );
|
236 |
this.listenTo( this, 'ready', this.onReady );
|
237 |
this.listenTo( this.model, 'change:show_select_all', this.onSelectAllChange );
|
238 |
this.listenTo( this.model, 'change:select_all_label', this.onSelectAllLabelChange );
|
|
|
239 |
|
240 |
this.listenTo( this.model, 'change:other_option', this.onAddOtherOption );
|
241 |
this.listenTo( this.model, 'change:other_option_label', this.onOtherOptionLabelChange );
|
413 |
happyForms.previewSend( 'happyforms-part-dom-update', data );
|
414 |
},
|
415 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
416 |
onEnterKey: function( e ) {
|
417 |
e.preventDefault();
|
418 |
|
612 |
$option.remove();
|
613 |
},
|
614 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
615 |
onCheckboxSelectAllLabelChangeCallback: function( id, html, options ) {
|
616 |
var part = this.getPartModel( id );
|
617 |
var $part = this.getPartElement( html );
|
core/assets/js/parts/part-radio.js
CHANGED
@@ -226,7 +226,6 @@
|
|
226 |
this.listenTo( this.optionViews, 'reset', this.onOptionViewsSorted );
|
227 |
this.listenTo( this, 'sort-stop', this.onOptionSortStop );
|
228 |
this.listenTo( this, 'ready', this.onReady );
|
229 |
-
this.listenTo( this.model, 'change:options_width', this.onOptionsWidthChange );
|
230 |
|
231 |
this.listenTo( this.model, 'change:other_option', this.onAddOtherOption );
|
232 |
this.listenTo( this.model, 'change:other_option_label', this.onOtherOptionLabelChange );
|
@@ -397,15 +396,6 @@
|
|
397 |
happyForms.previewSend( 'happyforms-part-dom-update', data );
|
398 |
},
|
399 |
|
400 |
-
onOptionsWidthChange: function() {
|
401 |
-
var data = {
|
402 |
-
id: this.model.get( 'id' ),
|
403 |
-
callback: 'onRadioOptionsWidthChange'
|
404 |
-
};
|
405 |
-
|
406 |
-
happyForms.previewSend( 'happyforms-part-dom-update', data );
|
407 |
-
},
|
408 |
-
|
409 |
onEnterKey: function( e ) {
|
410 |
e.preventDefault();
|
411 |
|
@@ -545,19 +535,6 @@
|
|
545 |
this.$( 'input', $option ).prop( 'checked', option.get( 'is_default' ) );
|
546 |
},
|
547 |
|
548 |
-
onRadioOptionsWidthChange: function( id, html, options ) {
|
549 |
-
var part = this.getPartModel( id );
|
550 |
-
var $part = this.getPartElement( html );
|
551 |
-
|
552 |
-
$part.removeClass( 'happyforms-part-options-width--auto' );
|
553 |
-
$part.removeClass( 'happyforms-part-options-width--half' );
|
554 |
-
$part.removeClass( 'happyforms-part-options-width--third' );
|
555 |
-
$part.removeClass( 'happyforms-part-options-width--quarter' );
|
556 |
-
$part.removeClass( 'happyforms-part-options-width--full' );
|
557 |
-
|
558 |
-
$part.addClass( 'happyforms-part-options-width--' + part.get( 'options_width' ) );
|
559 |
-
},
|
560 |
-
|
561 |
onRadioOtherOptionLabelChangeCallback: function( id, html, options ) {
|
562 |
var part = this.getPartModel( id );
|
563 |
var $part = this.getPartElement( html );
|
226 |
this.listenTo( this.optionViews, 'reset', this.onOptionViewsSorted );
|
227 |
this.listenTo( this, 'sort-stop', this.onOptionSortStop );
|
228 |
this.listenTo( this, 'ready', this.onReady );
|
|
|
229 |
|
230 |
this.listenTo( this.model, 'change:other_option', this.onAddOtherOption );
|
231 |
this.listenTo( this.model, 'change:other_option_label', this.onOtherOptionLabelChange );
|
396 |
happyForms.previewSend( 'happyforms-part-dom-update', data );
|
397 |
},
|
398 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
399 |
onEnterKey: function( e ) {
|
400 |
e.preventDefault();
|
401 |
|
535 |
this.$( 'input', $option ).prop( 'checked', option.get( 'is_default' ) );
|
536 |
},
|
537 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
538 |
onRadioOtherOptionLabelChangeCallback: function( id, html, options ) {
|
539 |
var part = this.getPartModel( id );
|
540 |
var $part = this.getPartElement( html );
|
core/assets/jsx/build/admin/block.asset.php
CHANGED
@@ -1 +1 @@
|
|
1 |
-
<?php return array('dependencies' => array('wp-blocks', 'wp-components', 'wp-
|
1 |
+
<?php return array('dependencies' => array('wp-block-editor', 'wp-blocks', 'wp-components', 'wp-element', 'wp-i18n', 'wp-polyfill', 'wp-server-side-render'), 'version' => '393949c2eb41deea19eb0e325ed81471');
|
core/assets/jsx/build/admin/block.js
CHANGED
@@ -101,10 +101,14 @@ __webpack_require__.r(__webpack_exports__);
|
|
101 |
/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__);
|
102 |
/* harmony import */ var _wordpress_server_side_render__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @wordpress/server-side-render */ "@wordpress/server-side-render");
|
103 |
/* harmony import */ var _wordpress_server_side_render__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_server_side_render__WEBPACK_IMPORTED_MODULE_2__);
|
104 |
-
/* harmony import */ var
|
105 |
-
/* harmony import */ var
|
106 |
/* harmony import */ var _wordpress_blocks__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @wordpress/blocks */ "@wordpress/blocks");
|
107 |
/* harmony import */ var _wordpress_blocks__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_wordpress_blocks__WEBPACK_IMPORTED_MODULE_4__);
|
|
|
|
|
|
|
|
|
108 |
|
109 |
|
110 |
|
@@ -120,23 +124,35 @@ __webpack_require__.r(__webpack_exports__);
|
|
120 |
};
|
121 |
});
|
122 |
options.reverse().unshift({
|
123 |
-
label:
|
124 |
value: ''
|
125 |
});
|
126 |
|
127 |
var ComponentPlaceholder = function (props) {
|
|
|
128 |
return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__["Placeholder"], {
|
129 |
-
icon:
|
130 |
-
|
131 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
132 |
key: "happyforms-component-placeholder"
|
133 |
-
}, settings.forms.length > 0
|
134 |
-
|
|
|
|
|
135 |
options: options,
|
136 |
-
onChange: v =>
|
137 |
-
|
|
|
|
|
|
|
138 |
})
|
139 |
-
}
|
140 |
};
|
141 |
|
142 |
var ComponentForm = function (props) {
|
@@ -148,11 +164,12 @@ __webpack_require__.r(__webpack_exports__);
|
|
148 |
};
|
149 |
|
150 |
var ComponentInspector = function (props) {
|
151 |
-
return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(
|
152 |
key: "happyforms-inspector-controls"
|
153 |
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__["PanelBody"], {
|
154 |
-
title:
|
155 |
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__["SelectControl"], {
|
|
|
156 |
value: props.attributes.id,
|
157 |
options: options,
|
158 |
onChange: v => props.setAttributes({
|
@@ -173,7 +190,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
173 |
},
|
174 |
edit: function (props) {
|
175 |
if (!props.attributes.id && settings.forms.length === 1) {
|
176 |
-
props.attributes.id = settings.forms[0].ID;
|
177 |
}
|
178 |
|
179 |
let blockComponent = props.attributes.id ? ComponentForm(props) : ComponentPlaceholder(props);
|
@@ -189,6 +206,17 @@ __webpack_require__.r(__webpack_exports__);
|
|
189 |
|
190 |
/***/ }),
|
191 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
192 |
/***/ "@wordpress/blocks":
|
193 |
/*!********************************!*\
|
194 |
!*** external ["wp","blocks"] ***!
|
@@ -211,25 +239,25 @@ __webpack_require__.r(__webpack_exports__);
|
|
211 |
|
212 |
/***/ }),
|
213 |
|
214 |
-
/***/ "@wordpress/
|
215 |
-
|
216 |
-
!*** external ["wp","
|
217 |
-
|
218 |
/*! no static exports found */
|
219 |
/***/ (function(module, exports) {
|
220 |
|
221 |
-
(function() { module.exports = window["wp"]["
|
222 |
|
223 |
/***/ }),
|
224 |
|
225 |
-
/***/ "@wordpress/
|
226 |
-
|
227 |
-
!*** external ["wp","
|
228 |
-
|
229 |
/*! no static exports found */
|
230 |
/***/ (function(module, exports) {
|
231 |
|
232 |
-
(function() { module.exports = window["wp"]["
|
233 |
|
234 |
/***/ }),
|
235 |
|
101 |
/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__);
|
102 |
/* harmony import */ var _wordpress_server_side_render__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @wordpress/server-side-render */ "@wordpress/server-side-render");
|
103 |
/* harmony import */ var _wordpress_server_side_render__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_server_side_render__WEBPACK_IMPORTED_MODULE_2__);
|
104 |
+
/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/block-editor */ "@wordpress/block-editor");
|
105 |
+
/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_3__);
|
106 |
/* harmony import */ var _wordpress_blocks__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @wordpress/blocks */ "@wordpress/blocks");
|
107 |
/* harmony import */ var _wordpress_blocks__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_wordpress_blocks__WEBPACK_IMPORTED_MODULE_4__);
|
108 |
+
/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
|
109 |
+
/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__);
|
110 |
+
|
111 |
+
|
112 |
|
113 |
|
114 |
|
124 |
};
|
125 |
});
|
126 |
options.reverse().unshift({
|
127 |
+
label: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__["__"])('Choose', 'happyforms'),
|
128 |
value: ''
|
129 |
});
|
130 |
|
131 |
var ComponentPlaceholder = function (props) {
|
132 |
+
const [form, setForm] = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["useState"])('');
|
133 |
return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__["Placeholder"], {
|
134 |
+
icon: Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__["Icon"], {
|
135 |
+
icon: settings.block.icon,
|
136 |
+
style: {
|
137 |
+
marginRight: "14.66px"
|
138 |
+
}
|
139 |
+
}),
|
140 |
+
label: settings.block.title,
|
141 |
+
instructions: settings.forms.length > 0 ? Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__["__"])('Pick a form to display on your site.', 'happyforms') : Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__["__"])('No forms found.', 'happyforms'),
|
142 |
+
className: "happyforms-block-form-selector-wrap",
|
143 |
key: "happyforms-component-placeholder"
|
144 |
+
}, settings.forms.length > 0 && Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("div", {
|
145 |
+
className: "happyforms-block-placeholder__control-group"
|
146 |
+
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__["SelectControl"], {
|
147 |
+
value: form,
|
148 |
options: options,
|
149 |
+
onChange: v => setForm(v)
|
150 |
+
}), Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__["Button"], {
|
151 |
+
isPrimary: "true",
|
152 |
+
onClick: v => props.setAttributes({
|
153 |
+
id: form
|
154 |
})
|
155 |
+
}, Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__["__"])('Insert', 'happyforms'))));
|
156 |
};
|
157 |
|
158 |
var ComponentForm = function (props) {
|
164 |
};
|
165 |
|
166 |
var ComponentInspector = function (props) {
|
167 |
+
return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_3__["InspectorControls"], {
|
168 |
key: "happyforms-inspector-controls"
|
169 |
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__["PanelBody"], {
|
170 |
+
title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__["__"])('Settings', 'happyforms')
|
171 |
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__["SelectControl"], {
|
172 |
+
label: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__["__"])('Pick a form', 'happyforms'),
|
173 |
value: props.attributes.id,
|
174 |
options: options,
|
175 |
onChange: v => props.setAttributes({
|
190 |
},
|
191 |
edit: function (props) {
|
192 |
if (!props.attributes.id && settings.forms.length === 1) {
|
193 |
+
props.attributes.id = String(settings.forms[0].ID);
|
194 |
}
|
195 |
|
196 |
let blockComponent = props.attributes.id ? ComponentForm(props) : ComponentPlaceholder(props);
|
206 |
|
207 |
/***/ }),
|
208 |
|
209 |
+
/***/ "@wordpress/block-editor":
|
210 |
+
/*!*************************************!*\
|
211 |
+
!*** external ["wp","blockEditor"] ***!
|
212 |
+
\*************************************/
|
213 |
+
/*! no static exports found */
|
214 |
+
/***/ (function(module, exports) {
|
215 |
+
|
216 |
+
(function() { module.exports = window["wp"]["blockEditor"]; }());
|
217 |
+
|
218 |
+
/***/ }),
|
219 |
+
|
220 |
/***/ "@wordpress/blocks":
|
221 |
/*!********************************!*\
|
222 |
!*** external ["wp","blocks"] ***!
|
239 |
|
240 |
/***/ }),
|
241 |
|
242 |
+
/***/ "@wordpress/element":
|
243 |
+
/*!*********************************!*\
|
244 |
+
!*** external ["wp","element"] ***!
|
245 |
+
\*********************************/
|
246 |
/*! no static exports found */
|
247 |
/***/ (function(module, exports) {
|
248 |
|
249 |
+
(function() { module.exports = window["wp"]["element"]; }());
|
250 |
|
251 |
/***/ }),
|
252 |
|
253 |
+
/***/ "@wordpress/i18n":
|
254 |
+
/*!******************************!*\
|
255 |
+
!*** external ["wp","i18n"] ***!
|
256 |
+
\******************************/
|
257 |
/*! no static exports found */
|
258 |
/***/ (function(module, exports) {
|
259 |
|
260 |
+
(function() { module.exports = window["wp"]["i18n"]; }());
|
261 |
|
262 |
/***/ }),
|
263 |
|
core/assets/jsx/build/admin/block.js.map
CHANGED
@@ -1 +1 @@
|
|
1 |
-
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./build/core/assets/jsx/src/admin/block.js","webpack:///external [\"wp\",\"blocks\"]","webpack:///external [\"wp\",\"components\"]","webpack:///external [\"wp\",\"editor\"]","webpack:///external [\"wp\",\"element\"]","webpack:///external [\"wp\",\"serverSideRender\"]"],"names":["settings","blockID","options","forms","map","form","label","post_title","value","ID","reverse","unshift","i18n","select_default","ComponentPlaceholder","props","icon","placeholder_text","placeholder_class","length","v","setAttributes","id","no_forms_found_text","ComponentForm","attributes","ComponentInspector","settings_title","registerBlockType","title","block","description","category","keywords","supports","anchor","html","edit","blockComponent","inspectorComponent","component","save","_happyFormsBlockSettings"],"mappings":";QAAA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;;;;;;;;;;;;;;;;;;AClFA;AACA;AACA;AACA;;AAEA,CAAE,UAAUA,QAAV,EAAqB;AAEtB,MAAIC,OAAO,GAAG,4BAAd;AACA,MAAIC,OAAO,GAAGF,QAAQ,CAACG,KAAT,CACZC,GADY,CACP,UAAUC,IAAV,EAAiB;AACtB,WAAO;AAAEC,WAAK,EAAED,IAAI,CAACE,UAAd;AAA0BC,WAAK,EAAEH,IAAI,CAACI;AAAtC,KAAP;AACA,GAHY,CAAd;AAIAP,SAAO,CAACQ,OAAR,GAAkBC,OAAlB,CAA2B;AAAEL,SAAK,EAAEN,QAAQ,CAACY,IAAT,CAAcC,cAAvB;AAAuCL,SAAK,EAAE;AAA9C,GAA3B;;AAEA,MAAIM,oBAAoB,GAAG,UAAUC,KAAV,EAAkB;AAC5C,WACC,yEAAC,iEAAD;AACC,UAAI,EAAGf,QAAQ,CAACgB,IADjB;AAEC,WAAK,EAAGhB,QAAQ,CAACY,IAAT,CAAcK,gBAFvB;AAGC,eAAS,EAAGjB,QAAQ,CAACY,IAAT,CAAcM,iBAH3B;AAIC,SAAG,EAAC;AAJL,OAMGlB,QAAQ,CAACG,KAAT,CAAegB,MAAf,GAAwB,CAAxB,GACC,yEAAC,mEAAD;AAAe,WAAK,EAAC,EAArB;AAAwB,aAAO,EAAGjB,OAAlC;AAA4C,cAAQ,EAAKkB,CAAF,IAASL,KAAK,CAACM,aAAN,CAAqB;AAAEC,UAAE,EAAEF;AAAN,OAArB;AAAhE,MADD,GAEC,oFAAKpB,QAAQ,CAACY,IAAT,CAAcW,mBAAnB,CARJ,CADD;AAcA,GAfD;;AAiBA,MAAIC,aAAa,GAAG,UAAUT,KAAV,EAAkB;AACrC,WAAO,CACN,yEAAC,oEAAD;AACC,WAAK,EAAGd,OADT;AAEC,gBAAU,EAAGc,KAAK,CAACU,UAFpB;AAGC,SAAG,EAAC;AAHL,MADM,CAAP;AAMA,GAPD;;AASA,MAAIC,kBAAkB,GAAG,UAAUX,KAAV,EAAkB;AAC1C,WACC,yEAAC,mEAAD;AAAmB,SAAG,EAAC;AAAvB,OACC,yEAAC,+DAAD;AAAW,WAAK,EAAGf,QAAQ,CAACY,IAAT,CAAce;AAAjC,OACC,yEAAC,mEAAD;AAAe,WAAK,EAAGZ,KAAK,CAACU,UAAN,CAAiBH,EAAxC;AAA6C,aAAO,EAAGpB,OAAvD;AAAiE,cAAQ,EAAKkB,CAAF,IAASL,KAAK,CAACM,aAAN,CAAqB;AAAEC,UAAE,EAAGF;AAAP,OAArB;AAArF,MADD,CADD,CADD;AAOA,GARD;;AAUAQ,6EAAiB,CAAE3B,OAAF,EAAW;AAC3B4B,SAAK,EAAE7B,QAAQ,CAAC8B,KAAT,CAAeD,KADK;AAE3BE,eAAW,EAAE/B,QAAQ,CAAC8B,KAAT,CAAeC,WAFD;AAG3BC,YAAQ,EAAEhC,QAAQ,CAAC8B,KAAT,CAAeE,QAHE;AAI3BhB,QAAI,EAAEhB,QAAQ,CAAC8B,KAAT,CAAed,IAJM;AAK3BiB,YAAQ,EAAEjC,QAAQ,CAAC8B,KAAT,CAAeG,QALE;AAM3BC,YAAQ,EAAE;AACTC,YAAM,EAAE,IADC;AAETC,UAAI,EAAE;AAFG,KANiB;AAW3BC,QAAI,EAAE,UAAUtB,KAAV,EAAkB;AACvB,UAAK,CAAEA,KAAK,CAACU,UAAN,CAAiBH,EAAnB,IAAyBtB,QAAQ,CAACG,KAAT,CAAegB,MAAf,KAA0B,CAAxD,EAA4D;AAC3DJ,aAAK,CAACU,UAAN,CAAiBH,EAAjB,GAAsBtB,QAAQ,CAACG,KAAT,CAAe,CAAf,EAAkBM,EAAxC;AACA;;AAED,UAAI6B,cAAc,GACjBvB,KAAK,CAACU,UAAN,CAAiBH,EAAjB,GACAE,aAAa,CAAET,KAAF,CADb,GAEAD,oBAAoB,CAAEC,KAAF,CAHrB;AAMA,UAAIwB,kBAAkB,GACrBvC,QAAQ,CAACG,KAAT,CAAegB,MAAf,GAAwB,CAAxB,GACAO,kBAAkB,CAAEX,KAAF,CADlB,GAEA,KAHD;AAMA,UAAIyB,SAAS,GACZD,kBAAkB,GAClB,CAAED,cAAF,EAAkBC,kBAAlB,CADkB,GAElB,CAAED,cAAF,CAHD;AAMA,aAAOE,SAAP;AACA,KAnC0B;AAqC3BC,QAAI,EAAE,YAAW;AAChB,aAAO,IAAP;AACA;AAvC0B,GAAX,CAAjB;AA0CA,CAvFD,EAwFCC,wBAxFD,E;;;;;;;;;;;ACLA,aAAa,yCAAyC,EAAE,I;;;;;;;;;;;ACAxD,aAAa,6CAA6C,EAAE,I;;;;;;;;;;;ACA5D,aAAa,yCAAyC,EAAE,I;;;;;;;;;;;ACAxD,aAAa,0CAA0C,EAAE,I;;;;;;;;;;;ACAzD,aAAa,mDAAmD,EAAE,I","file":"block.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./build/core/assets/jsx/src/admin/block.js\");\n","import { Placeholder, SelectControl, PanelBody } from '@wordpress/components';\nimport ServerSideRender from '@wordpress/server-side-render';\nimport { InspectorControls } from '@wordpress/editor';\nimport { registerBlockType } from '@wordpress/blocks';\n\n( function( settings ) {\n\n\tvar blockID = 'thethemefoundry/happyforms';\n\tvar options = settings.forms\n\t\t.map( function( form ) {\n\t\t\treturn { label: form.post_title, value: form.ID };\n\t\t} )\n\toptions.reverse().unshift( { label: settings.i18n.select_default, value: '' } );\n\n\tvar ComponentPlaceholder = function( props ) {\n\t\treturn (\n\t\t\t<Placeholder \n\t\t\t\ticon={ settings.icon } \n\t\t\t\tlabel={ settings.i18n.placeholder_text }\n\t\t\t\tclassName={ settings.i18n.placeholder_class }\n\t\t\t\tkey=\"happyforms-component-placeholder\">\n\n\t\t\t\t{ settings.forms.length > 0\n\t\t\t\t\t? <SelectControl value=\"\" options={ options } onChange={ ( v ) => props.setAttributes( { id: v } ) } />\n\t\t\t\t\t: <p>{ settings.i18n.no_forms_found_text }</p>\n\t\t\t\t}\n\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tvar ComponentForm = function( props ) {\n\t\treturn [\n\t\t\t<ServerSideRender\n\t\t\t\tblock={ blockID }\n\t\t\t\tattributes={ props.attributes }\n\t\t\t\tkey=\"happyforms-component-form\" />\n\t\t];\n\t};\n\n\tvar ComponentInspector = function( props ) {\n\t\treturn (\n\t\t\t<InspectorControls key=\"happyforms-inspector-controls\">\n\t\t\t\t<PanelBody title={ settings.i18n.settings_title }>\n\t\t\t\t\t<SelectControl value={ props.attributes.id } options={ options } onChange={ ( v ) => props.setAttributes( { id : v } ) } />\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t);\n\t};\n\n\tregisterBlockType( blockID, {\n\t\ttitle: settings.block.title,\n\t\tdescription: settings.block.description,\n\t\tcategory: settings.block.category,\n\t\ticon: settings.block.icon,\n\t\tkeywords: settings.block.keywords,\n\t\tsupports: {\n\t\t\tanchor: true,\n\t\t\thtml: false\n\t\t},\n\n\t\tedit: function( props ) {\n\t\t\tif ( ! props.attributes.id && settings.forms.length === 1 ) {\n\t\t\t\tprops.attributes.id = settings.forms[0].ID;\n\t\t\t}\n\n\t\t\tlet blockComponent = (\n\t\t\t\tprops.attributes.id ?\n\t\t\t\tComponentForm( props ) :\n\t\t\t\tComponentPlaceholder( props )\n\t\t\t);\n\n\t\t\tlet inspectorComponent = (\n\t\t\t\tsettings.forms.length > 1 ?\n\t\t\t\tComponentInspector( props ) :\n\t\t\t\tfalse\n\t\t\t);\n\t\t\t\n\t\t\tlet component = (\n\t\t\t\tinspectorComponent ? \n\t\t\t\t[ blockComponent, inspectorComponent ] :\n\t\t\t\t[ blockComponent ]\n\t\t\t);\n\n\t\t\treturn component;\n\t\t},\n\n\t\tsave: function() {\n\t\t\treturn null;\n\t\t},\n\t} );\n\n} )(\n\t_happyFormsBlockSettings,\n);","(function() { module.exports = window[\"wp\"][\"blocks\"]; }());","(function() { module.exports = window[\"wp\"][\"components\"]; }());","(function() { module.exports = window[\"wp\"][\"editor\"]; }());","(function() { module.exports = window[\"wp\"][\"element\"]; }());","(function() { module.exports = window[\"wp\"][\"serverSideRender\"]; }());"],"sourceRoot":""}
|
1 |
+
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./build/core/assets/jsx/src/admin/block.js","webpack:///external [\"wp\",\"blockEditor\"]","webpack:///external [\"wp\",\"blocks\"]","webpack:///external [\"wp\",\"components\"]","webpack:///external [\"wp\",\"element\"]","webpack:///external [\"wp\",\"i18n\"]","webpack:///external [\"wp\",\"serverSideRender\"]"],"names":["settings","blockID","options","forms","map","form","label","post_title","value","ID","reverse","unshift","__","ComponentPlaceholder","props","setForm","useState","block","icon","marginRight","title","length","v","setAttributes","id","ComponentForm","attributes","ComponentInspector","registerBlockType","description","category","keywords","supports","anchor","html","edit","String","blockComponent","inspectorComponent","component","save","_happyFormsBlockSettings"],"mappings":";QAAA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;;;;;;;;;;;;;;;;;;;;AClFA;AACA;AACA;AACA;AACA;AACA;;AAEA,CAAE,UAAUA,QAAV,EAAqB;AAEtB,MAAIC,OAAO,GAAG,4BAAd;AACA,MAAIC,OAAO,GAAGF,QAAQ,CAACG,KAAT,CACZC,GADY,CACP,UAAUC,IAAV,EAAiB;AACtB,WAAO;AAAEC,WAAK,EAAED,IAAI,CAACE,UAAd;AAA0BC,WAAK,EAAEH,IAAI,CAACI;AAAtC,KAAP;AACA,GAHY,CAAd;AAIAP,SAAO,CAACQ,OAAR,GAAkBC,OAAlB,CAA2B;AAAEL,SAAK,EAAEM,0DAAE,CAAE,QAAF,EAAY,YAAZ,CAAX;AAAuCJ,SAAK,EAAE;AAA9C,GAA3B;;AAEA,MAAIK,oBAAoB,GAAG,UAAUC,KAAV,EAAkB;AAC5C,UAAM,CAAET,IAAF,EAAQU,OAAR,IAAoBC,mEAAQ,CAAE,EAAF,CAAlC;AAEA,WACC,yEAAC,iEAAD;AACC,UAAI,EAAG,yEAAC,0DAAD;AAAM,YAAI,EAAGhB,QAAQ,CAACiB,KAAT,CAAeC,IAA5B;AAAmC,aAAK,EAAE;AAAEC,qBAAW,EAAE;AAAf;AAA1C,QADR;AAEC,WAAK,EAAGnB,QAAQ,CAACiB,KAAT,CAAeG,KAFxB;AAGC,kBAAY,EACXpB,QAAQ,CAACG,KAAT,CAAekB,MAAf,GAAwB,CAAxB,GACAT,0DAAE,CAAE,sCAAF,EAA0C,YAA1C,CADF,GAEAA,0DAAE,CAAE,iBAAF,EAAqB,YAArB,CANJ;AAQC,eAAS,EAAC,qCARX;AASC,SAAG,EAAC;AATL,OAYEZ,QAAQ,CAACG,KAAT,CAAekB,MAAf,GAAwB,CAAxB,IACA;AAAK,eAAS,EAAC;AAAf,OACC,yEAAC,mEAAD;AAAe,WAAK,EAAGhB,IAAvB;AAA8B,aAAO,EAAGH,OAAxC;AAAkD,cAAQ,EAAKoB,CAAF,IAASP,OAAO,CAAEO,CAAF;AAA7E,MADD,EAEC,yEAAC,4DAAD;AAAQ,eAAS,EAAC,MAAlB;AAAyB,aAAO,EAAKA,CAAF,IAASR,KAAK,CAACS,aAAN,CAAqB;AAAEC,UAAE,EAAEnB;AAAN,OAArB;AAA5C,OAAoFO,0DAAE,CAAE,QAAF,EAAY,YAAZ,CAAtF,CAFD,CAbF,CADD;AAsBA,GAzBD;;AA2BA,MAAIa,aAAa,GAAG,UAAUX,KAAV,EAAkB;AACrC,WAAO,CACN,yEAAC,oEAAD;AACC,WAAK,EAAGb,OADT;AAEC,gBAAU,EAAGa,KAAK,CAACY,UAFpB;AAGC,SAAG,EAAC;AAHL,MADM,CAAP;AAMA,GAPD;;AASA,MAAIC,kBAAkB,GAAG,UAAUb,KAAV,EAAkB;AAC1C,WACC,yEAAC,yEAAD;AAAmB,SAAG,EAAC;AAAvB,OACC,yEAAC,+DAAD;AAAW,WAAK,EAAGF,0DAAE,CAAE,UAAF,EAAc,YAAd;AAArB,OACC,yEAAC,mEAAD;AACC,WAAK,EAAGA,0DAAE,CAAE,aAAF,EAAiB,YAAjB,CADX;AAEC,WAAK,EAAGE,KAAK,CAACY,UAAN,CAAiBF,EAF1B;AAGC,aAAO,EAAGtB,OAHX;AAIC,cAAQ,EAAKoB,CAAF,IAASR,KAAK,CAACS,aAAN,CAAqB;AAAEC,UAAE,EAAGF;AAAP,OAArB;AAJrB,MADD,CADD,CADD;AAWA,GAZD;;AAcAM,6EAAiB,CAAE3B,OAAF,EAAW;AAC3BmB,SAAK,EAAEpB,QAAQ,CAACiB,KAAT,CAAeG,KADK;AAE3BS,eAAW,EAAE7B,QAAQ,CAACiB,KAAT,CAAeY,WAFD;AAG3BC,YAAQ,EAAE9B,QAAQ,CAACiB,KAAT,CAAea,QAHE;AAI3BZ,QAAI,EAAElB,QAAQ,CAACiB,KAAT,CAAeC,IAJM;AAK3Ba,YAAQ,EAAE/B,QAAQ,CAACiB,KAAT,CAAec,QALE;AAM3BC,YAAQ,EAAE;AACTC,YAAM,EAAE,IADC;AAETC,UAAI,EAAE;AAFG,KANiB;AAW3BC,QAAI,EAAE,UAAUrB,KAAV,EAAkB;AACvB,UAAK,CAAEA,KAAK,CAACY,UAAN,CAAiBF,EAAnB,IAAyBxB,QAAQ,CAACG,KAAT,CAAekB,MAAf,KAA0B,CAAxD,EAA4D;AAC3DP,aAAK,CAACY,UAAN,CAAiBF,EAAjB,GAAsBY,MAAM,CAAEpC,QAAQ,CAACG,KAAT,CAAe,CAAf,EAAkBM,EAApB,CAA5B;AACA;;AAED,UAAI4B,cAAc,GACjBvB,KAAK,CAACY,UAAN,CAAiBF,EAAjB,GACAC,aAAa,CAAEX,KAAF,CADb,GAEAD,oBAAoB,CAAEC,KAAF,CAHrB;AAMA,UAAIwB,kBAAkB,GACrBtC,QAAQ,CAACG,KAAT,CAAekB,MAAf,GAAwB,CAAxB,GACAM,kBAAkB,CAAEb,KAAF,CADlB,GAEA,KAHD;AAMA,UAAIyB,SAAS,GACZD,kBAAkB,GAClB,CAAED,cAAF,EAAkBC,kBAAlB,CADkB,GAElB,CAAED,cAAF,CAHD;AAMA,aAAOE,SAAP;AACA,KAnC0B;AAqC3BC,QAAI,EAAE,YAAW;AAChB,aAAO,IAAP;AACA;AAvC0B,GAAX,CAAjB;AA0CA,CArGD,EAsGCC,wBAtGD,E;;;;;;;;;;;ACPA,aAAa,8CAA8C,EAAE,I;;;;;;;;;;;ACA7D,aAAa,yCAAyC,EAAE,I;;;;;;;;;;;ACAxD,aAAa,6CAA6C,EAAE,I;;;;;;;;;;;ACA5D,aAAa,0CAA0C,EAAE,I;;;;;;;;;;;ACAzD,aAAa,uCAAuC,EAAE,I;;;;;;;;;;;ACAtD,aAAa,mDAAmD,EAAE,I","file":"block.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./build/core/assets/jsx/src/admin/block.js\");\n","import { Placeholder, SelectControl, PanelBody, Icon, Button } from '@wordpress/components';\nimport ServerSideRender from '@wordpress/server-side-render';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport { registerBlockType } from '@wordpress/blocks';\nimport { useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\n( function( settings ) {\n\n\tvar blockID = 'thethemefoundry/happyforms';\n\tvar options = settings.forms\n\t\t.map( function( form ) {\n\t\t\treturn { label: form.post_title, value: form.ID };\n\t\t} )\n\toptions.reverse().unshift( { label: __( 'Choose', 'happyforms' ), value: '' } );\n\n\tvar ComponentPlaceholder = function( props ) {\n\t\tconst [ form, setForm ] = useState( '' );\n\n\t\treturn (\n\t\t\t<Placeholder \n\t\t\t\ticon={ <Icon icon={ settings.block.icon } style={{ marginRight: \"14.66px\" }} /> } \n\t\t\t\tlabel={ settings.block.title }\n\t\t\t\tinstructions={ \n\t\t\t\t\tsettings.forms.length > 0 ? \n\t\t\t\t\t__( 'Pick a form to display on your site.', 'happyforms' ) :\n\t\t\t\t\t__( 'No forms found.', 'happyforms' )\n\t\t\t\t}\n\t\t\t\tclassName=\"happyforms-block-form-selector-wrap\"\n\t\t\t\tkey=\"happyforms-component-placeholder\">\n\n\t\t\t\t{ \n\t\t\t\t\tsettings.forms.length > 0 &&\n\t\t\t\t\t<div className=\"happyforms-block-placeholder__control-group\">\n\t\t\t\t\t\t<SelectControl value={ form } options={ options } onChange={ ( v ) => setForm( v ) } />\n\t\t\t\t\t\t<Button isPrimary=\"true\" onClick={ ( v ) => props.setAttributes( { id: form } ) }>{ __( 'Insert', 'happyforms' ) }</Button>\n\t\t\t\t\t</div>\n\t\t\t\t}\n\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tvar ComponentForm = function( props ) {\n\t\treturn [\n\t\t\t<ServerSideRender\n\t\t\t\tblock={ blockID }\n\t\t\t\tattributes={ props.attributes }\n\t\t\t\tkey=\"happyforms-component-form\" />\n\t\t];\n\t};\n\n\tvar ComponentInspector = function( props ) {\n\t\treturn (\n\t\t\t<InspectorControls key=\"happyforms-inspector-controls\">\n\t\t\t\t<PanelBody title={ __( 'Settings', 'happyforms' ) }>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\tlabel={ __( 'Pick a form', 'happyforms' ) }\n\t\t\t\t\t\tvalue={ props.attributes.id } \n\t\t\t\t\t\toptions={ options } \n\t\t\t\t\t\tonChange={ ( v ) => props.setAttributes( { id : v } ) } />\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t);\n\t};\n\n\tregisterBlockType( blockID, {\n\t\ttitle: settings.block.title,\n\t\tdescription: settings.block.description,\n\t\tcategory: settings.block.category,\n\t\ticon: settings.block.icon,\n\t\tkeywords: settings.block.keywords,\n\t\tsupports: {\n\t\t\tanchor: true,\n\t\t\thtml: false\n\t\t},\n\n\t\tedit: function( props ) {\n\t\t\tif ( ! props.attributes.id && settings.forms.length === 1 ) {\n\t\t\t\tprops.attributes.id = String( settings.forms[0].ID );\n\t\t\t}\n\n\t\t\tlet blockComponent = (\n\t\t\t\tprops.attributes.id ?\n\t\t\t\tComponentForm( props ) :\n\t\t\t\tComponentPlaceholder( props )\n\t\t\t);\n\n\t\t\tlet inspectorComponent = (\n\t\t\t\tsettings.forms.length > 1 ?\n\t\t\t\tComponentInspector( props ) :\n\t\t\t\tfalse\n\t\t\t);\n\t\t\t\n\t\t\tlet component = (\n\t\t\t\tinspectorComponent ? \n\t\t\t\t[ blockComponent, inspectorComponent ] :\n\t\t\t\t[ blockComponent ]\n\t\t\t);\n\n\t\t\treturn component;\n\t\t},\n\n\t\tsave: function() {\n\t\t\treturn null;\n\t\t},\n\t} );\n\n} )(\n\t_happyFormsBlockSettings,\n);","(function() { module.exports = window[\"wp\"][\"blockEditor\"]; }());","(function() { module.exports = window[\"wp\"][\"blocks\"]; }());","(function() { module.exports = window[\"wp\"][\"components\"]; }());","(function() { module.exports = window[\"wp\"][\"element\"]; }());","(function() { module.exports = window[\"wp\"][\"i18n\"]; }());","(function() { module.exports = window[\"wp\"][\"serverSideRender\"]; }());"],"sourceRoot":""}
|
core/assets/jsx/src/admin/block.js
CHANGED
@@ -1,7 +1,9 @@
|
|
1 |
-
import { Placeholder, SelectControl, PanelBody } from '@wordpress/components';
|
2 |
import ServerSideRender from '@wordpress/server-side-render';
|
3 |
-
import { InspectorControls } from '@wordpress/editor';
|
4 |
import { registerBlockType } from '@wordpress/blocks';
|
|
|
|
|
5 |
|
6 |
( function( settings ) {
|
7 |
|
@@ -10,19 +12,29 @@ import { registerBlockType } from '@wordpress/blocks';
|
|
10 |
.map( function( form ) {
|
11 |
return { label: form.post_title, value: form.ID };
|
12 |
} )
|
13 |
-
options.reverse().unshift( { label:
|
14 |
|
15 |
var ComponentPlaceholder = function( props ) {
|
|
|
|
|
16 |
return (
|
17 |
<Placeholder
|
18 |
-
icon={ settings.icon }
|
19 |
-
label={ settings.
|
20 |
-
|
|
|
|
|
|
|
|
|
|
|
21 |
key="happyforms-component-placeholder">
|
22 |
|
23 |
-
{
|
24 |
-
|
25 |
-
|
|
|
|
|
|
|
26 |
}
|
27 |
|
28 |
</Placeholder>
|
@@ -41,8 +53,12 @@ import { registerBlockType } from '@wordpress/blocks';
|
|
41 |
var ComponentInspector = function( props ) {
|
42 |
return (
|
43 |
<InspectorControls key="happyforms-inspector-controls">
|
44 |
-
<PanelBody title={
|
45 |
-
<SelectControl
|
|
|
|
|
|
|
|
|
46 |
</PanelBody>
|
47 |
</InspectorControls>
|
48 |
);
|
@@ -61,7 +77,7 @@ import { registerBlockType } from '@wordpress/blocks';
|
|
61 |
|
62 |
edit: function( props ) {
|
63 |
if ( ! props.attributes.id && settings.forms.length === 1 ) {
|
64 |
-
props.attributes.id = settings.forms[0].ID;
|
65 |
}
|
66 |
|
67 |
let blockComponent = (
|
1 |
+
import { Placeholder, SelectControl, PanelBody, Icon, Button } from '@wordpress/components';
|
2 |
import ServerSideRender from '@wordpress/server-side-render';
|
3 |
+
import { InspectorControls } from '@wordpress/block-editor';
|
4 |
import { registerBlockType } from '@wordpress/blocks';
|
5 |
+
import { useState } from '@wordpress/element';
|
6 |
+
import { __, sprintf } from '@wordpress/i18n';
|
7 |
|
8 |
( function( settings ) {
|
9 |
|
12 |
.map( function( form ) {
|
13 |
return { label: form.post_title, value: form.ID };
|
14 |
} )
|
15 |
+
options.reverse().unshift( { label: __( 'Choose', 'happyforms' ), value: '' } );
|
16 |
|
17 |
var ComponentPlaceholder = function( props ) {
|
18 |
+
const [ form, setForm ] = useState( '' );
|
19 |
+
|
20 |
return (
|
21 |
<Placeholder
|
22 |
+
icon={ <Icon icon={ settings.block.icon } style={{ marginRight: "14.66px" }} /> }
|
23 |
+
label={ settings.block.title }
|
24 |
+
instructions={
|
25 |
+
settings.forms.length > 0 ?
|
26 |
+
__( 'Pick a form to display on your site.', 'happyforms' ) :
|
27 |
+
__( 'No forms found.', 'happyforms' )
|
28 |
+
}
|
29 |
+
className="happyforms-block-form-selector-wrap"
|
30 |
key="happyforms-component-placeholder">
|
31 |
|
32 |
+
{
|
33 |
+
settings.forms.length > 0 &&
|
34 |
+
<div className="happyforms-block-placeholder__control-group">
|
35 |
+
<SelectControl value={ form } options={ options } onChange={ ( v ) => setForm( v ) } />
|
36 |
+
<Button isPrimary="true" onClick={ ( v ) => props.setAttributes( { id: form } ) }>{ __( 'Insert', 'happyforms' ) }</Button>
|
37 |
+
</div>
|
38 |
}
|
39 |
|
40 |
</Placeholder>
|
53 |
var ComponentInspector = function( props ) {
|
54 |
return (
|
55 |
<InspectorControls key="happyforms-inspector-controls">
|
56 |
+
<PanelBody title={ __( 'Settings', 'happyforms' ) }>
|
57 |
+
<SelectControl
|
58 |
+
label={ __( 'Pick a form', 'happyforms' ) }
|
59 |
+
value={ props.attributes.id }
|
60 |
+
options={ options }
|
61 |
+
onChange={ ( v ) => props.setAttributes( { id : v } ) } />
|
62 |
</PanelBody>
|
63 |
</InspectorControls>
|
64 |
);
|
77 |
|
78 |
edit: function( props ) {
|
79 |
if ( ! props.attributes.id && settings.forms.length === 1 ) {
|
80 |
+
props.attributes.id = String( settings.forms[0].ID );
|
81 |
}
|
82 |
|
83 |
let blockComponent = (
|
core/assets/jsx/src/admin/dashboard-modals.js
ADDED
@@ -0,0 +1,119 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import { SlotFillProvider, Button, Modal, Guide, Popover, Notice, ExternalLink, TextControl, CheckboxControl, BaseControl } from '@wordpress/components';
|
2 |
+
import { useState, useReducer, useRef } from '@wordpress/element';
|
3 |
+
import { __, sprintf } from '@wordpress/i18n';
|
4 |
+
|
5 |
+
/**
|
6 |
+
*
|
7 |
+
* Modal handler class
|
8 |
+
*
|
9 |
+
*/
|
10 |
+
export default function( $, settings ) {
|
11 |
+
|
12 |
+
const { render } = wp.element;
|
13 |
+
|
14 |
+
/**
|
15 |
+
*
|
16 |
+
* Deactivation modal
|
17 |
+
*
|
18 |
+
*/
|
19 |
+
const DeactivateModal = ( props ) => {
|
20 |
+
const [ option, setOption ] = useState( 'yes' );
|
21 |
+
|
22 |
+
const onChange = ( e ) => {
|
23 |
+
setOption( e.target.value );
|
24 |
+
};
|
25 |
+
|
26 |
+
const onSubmit = () => {
|
27 |
+
$.post( ajaxurl, {
|
28 |
+
action: settings.deactivateModalAction,
|
29 |
+
_wpnonce: settings.deactivateModalNonce,
|
30 |
+
keep_data: option,
|
31 |
+
}, function() {
|
32 |
+
window.location.href = props.redirectURL;
|
33 |
+
} );
|
34 |
+
|
35 |
+
return props.onRequestClose();
|
36 |
+
}
|
37 |
+
|
38 |
+
return (
|
39 |
+
<Modal className="happyforms-modal happyforms-modal--deactivate" title="What about your data?" onRequestClose={ props.onRequestClose }>
|
40 |
+
<div className="happyforms-modal__body" onChange={ onChange }>
|
41 |
+
<label htmlFor="happyforms-keep-data-yes">
|
42 |
+
<input
|
43 |
+
type="radio"
|
44 |
+
id="happyforms-keep-data-yes"
|
45 |
+
name="happyforms-keep-data"
|
46 |
+
value="yes"
|
47 |
+
defaultChecked
|
48 |
+
/>
|
49 |
+
<span>{ __( 'Keep plugin data (recommended)', 'happyforms' ) }</span>
|
50 |
+
</label>
|
51 |
+
<label htmlFor="happyforms-keep-data-no">
|
52 |
+
<input
|
53 |
+
type="radio"
|
54 |
+
id="happyforms-keep-data-no"
|
55 |
+
name="happyforms-keep-data"
|
56 |
+
value="no"
|
57 |
+
/>
|
58 |
+
<span>{ __( 'Permanently delete plugin data', 'happyforms' ) }</span>
|
59 |
+
</label>
|
60 |
+
</div>
|
61 |
+
<div className="happyforms-modal__footer">
|
62 |
+
<div className="happyforms-modal__footer-button-group">
|
63 |
+
<Button
|
64 |
+
isPrimary={true}
|
65 |
+
onClick={ onSubmit }
|
66 |
+
text={ option == 'yes' ?
|
67 |
+
__( 'Deactivate Plugin', 'happyforms' ) :
|
68 |
+
__( 'Delete Data and Deactivate Plugin', 'happyforms' ) }>
|
69 |
+
</Button>
|
70 |
+
</div>
|
71 |
+
</div>
|
72 |
+
</Modal>
|
73 |
+
);
|
74 |
+
};
|
75 |
+
|
76 |
+
/**
|
77 |
+
*
|
78 |
+
* Modal wrapper
|
79 |
+
*
|
80 |
+
*/
|
81 |
+
const ModalProvider = ( props ) => {
|
82 |
+
return (
|
83 |
+
<SlotFillProvider>
|
84 |
+
{ props.modal }
|
85 |
+
<Popover.Slot />
|
86 |
+
</SlotFillProvider>
|
87 |
+
);
|
88 |
+
};
|
89 |
+
|
90 |
+
return class DashboardModals {
|
91 |
+
|
92 |
+
area = null;
|
93 |
+
|
94 |
+
constructor() {
|
95 |
+
this.area = document.getElementById( 'happyforms-modals-area' );
|
96 |
+
}
|
97 |
+
|
98 |
+
openDeactivateModal( redirectURL ) {
|
99 |
+
var modal = <DeactivateModal onRequestClose={ this.closeModal.bind( this, 'deactivate' ) } redirectURL={ redirectURL } />
|
100 |
+
|
101 |
+
this.openModal( modal );
|
102 |
+
}
|
103 |
+
|
104 |
+
openModal( modal ) {
|
105 |
+
render( <ModalProvider modal={modal}></ModalProvider>, this.area );
|
106 |
+
}
|
107 |
+
|
108 |
+
closeModal( modal ) {
|
109 |
+
render( <></>, this.area );
|
110 |
+
|
111 |
+
$.post( ajaxurl, {
|
112 |
+
action: settings.actionModalDismiss,
|
113 |
+
id: modal,
|
114 |
+
} );
|
115 |
+
}
|
116 |
+
|
117 |
+
};
|
118 |
+
|
119 |
+
}
|
core/classes/class-block.php
CHANGED
@@ -73,6 +73,10 @@ class HappyForms_Block {
|
|
73 |
$block_classes = isset( $attrs['className'] ) ? trim( $attrs['className'] ) : '';
|
74 |
$html_id = isset( $attrs['anchor'] ) ? trim( $attrs['anchor'] ) : '';
|
75 |
|
|
|
|
|
|
|
|
|
76 |
if ( '' !== $block_classes ) {
|
77 |
$block_classes = explode( ' ', $block_classes );
|
78 |
|
@@ -113,13 +117,6 @@ class HappyForms_Block {
|
|
113 |
'ajaxurl' => admin_url( 'admin-ajax.php' ),
|
114 |
'forms' => $forms,
|
115 |
'block' => $block_properties,
|
116 |
-
'i18n' => array(
|
117 |
-
'select_default' => __( 'Choose', 'happyforms' ),
|
118 |
-
'placeholder_text' => __( 'Which form would you like to add here?', 'happyforms' ),
|
119 |
-
'no_forms_found_text' => __( 'No forms found.', 'happyforms' ),
|
120 |
-
'settings_title' => __( 'HappyForms Settings', 'happyforms' ),
|
121 |
-
'placeholder_class' => 'happyforms-block-form-selector-wrap'
|
122 |
-
),
|
123 |
);
|
124 |
|
125 |
wp_localize_script( 'happyforms-block', '_happyFormsBlockSettings', $data );
|
73 |
$block_classes = isset( $attrs['className'] ) ? trim( $attrs['className'] ) : '';
|
74 |
$html_id = isset( $attrs['anchor'] ) ? trim( $attrs['anchor'] ) : '';
|
75 |
|
76 |
+
if ( isset( $attrs['id'] ) && empty( $attrs['id'] ) ) {
|
77 |
+
return;
|
78 |
+
}
|
79 |
+
|
80 |
if ( '' !== $block_classes ) {
|
81 |
$block_classes = explode( ' ', $block_classes );
|
82 |
|
117 |
'ajaxurl' => admin_url( 'admin-ajax.php' ),
|
118 |
'forms' => $forms,
|
119 |
'block' => $block_properties,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
120 |
);
|
121 |
|
122 |
wp_localize_script( 'happyforms-block', '_happyFormsBlockSettings', $data );
|
core/classes/class-dashboard-modals.php
CHANGED
@@ -6,7 +6,6 @@ class HappyForms_Dashboard_Modals {
|
|
6 |
|
7 |
private $modals = array();
|
8 |
|
9 |
-
public $fetch_action = 'happyforms-modal-fetch';
|
10 |
public $dismiss_action = 'happyforms-modal-dismiss';
|
11 |
|
12 |
public static function instance() {
|
@@ -20,8 +19,10 @@ class HappyForms_Dashboard_Modals {
|
|
20 |
}
|
21 |
|
22 |
public function hook() {
|
23 |
-
add_action( "wp_ajax_{$this->fetch_action}", [ $this, 'fetch_modal' ] );
|
24 |
add_action( "wp_ajax_{$this->dismiss_action}", [ $this, 'dismiss_modal' ] );
|
|
|
|
|
|
|
25 |
}
|
26 |
|
27 |
public function get_modal_defaults() {
|
@@ -33,34 +34,14 @@ class HappyForms_Dashboard_Modals {
|
|
33 |
return $defaults;
|
34 |
}
|
35 |
|
36 |
-
public function register_modal( $id, $
|
37 |
if ( $this->is_dismissed( $id ) ) {
|
38 |
return;
|
39 |
}
|
40 |
|
41 |
$settings = wp_parse_args( $settings, $this->get_modal_defaults() );
|
42 |
|
43 |
-
$this->modals[$id] =
|
44 |
-
}
|
45 |
-
|
46 |
-
public function fetch_modal() {
|
47 |
-
if ( ! isset( $_GET['id'] ) ) {
|
48 |
-
die( '' );
|
49 |
-
}
|
50 |
-
|
51 |
-
$id = $_GET['id'];
|
52 |
-
|
53 |
-
if ( ! isset( $this->modals[$id] ) ) {
|
54 |
-
die( '' );
|
55 |
-
}
|
56 |
-
|
57 |
-
list( $callback, $settings ) = $this->modals[$id];
|
58 |
-
|
59 |
-
require( happyforms_get_core_folder() . '/templates/partials/admin-modal-header.php' );
|
60 |
-
call_user_func( $callback );
|
61 |
-
require( happyforms_get_core_folder() . '/templates/partials/admin-modal-footer.php' );
|
62 |
-
|
63 |
-
die();
|
64 |
}
|
65 |
|
66 |
public function dismiss_modal() {
|
@@ -86,7 +67,7 @@ class HappyForms_Dashboard_Modals {
|
|
86 |
}
|
87 |
|
88 |
public function is_dismissible( $id ) {
|
89 |
-
|
90 |
$dismissible = isset( $settings['dismissible'] ) ? $settings['dismissible'] : false;
|
91 |
|
92 |
return $dismissible;
|
@@ -96,6 +77,42 @@ class HappyForms_Dashboard_Modals {
|
|
96 |
return get_option( "happyforms_modal_dismissed_{$id}", false );
|
97 |
}
|
98 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
99 |
}
|
100 |
|
101 |
if ( ! function_exists( 'happyforms_get_dashboard_modals' ) ):
|
@@ -106,4 +123,4 @@ function happyforms_get_dashboard_modals() {
|
|
106 |
|
107 |
endif;
|
108 |
|
109 |
-
happyforms_get_dashboard_modals();
|
6 |
|
7 |
private $modals = array();
|
8 |
|
|
|
9 |
public $dismiss_action = 'happyforms-modal-dismiss';
|
10 |
|
11 |
public static function instance() {
|
19 |
}
|
20 |
|
21 |
public function hook() {
|
|
|
22 |
add_action( "wp_ajax_{$this->dismiss_action}", [ $this, 'dismiss_modal' ] );
|
23 |
+
add_action( 'admin_enqueue_scripts', [ $this, 'admin_enqueue_scripts' ] );
|
24 |
+
add_action( 'in_admin_footer', [ $this, 'output_modal_area' ] );
|
25 |
+
add_action( 'customize_controls_print_footer_scripts', [ $this, 'output_modal_area' ] );
|
26 |
}
|
27 |
|
28 |
public function get_modal_defaults() {
|
34 |
return $defaults;
|
35 |
}
|
36 |
|
37 |
+
public function register_modal( $id, $settings = array() ) {
|
38 |
if ( $this->is_dismissed( $id ) ) {
|
39 |
return;
|
40 |
}
|
41 |
|
42 |
$settings = wp_parse_args( $settings, $this->get_modal_defaults() );
|
43 |
|
44 |
+
$this->modals[$id] = $settings;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
45 |
}
|
46 |
|
47 |
public function dismiss_modal() {
|
67 |
}
|
68 |
|
69 |
public function is_dismissible( $id ) {
|
70 |
+
$settings = $this->modals[$id];
|
71 |
$dismissible = isset( $settings['dismissible'] ) ? $settings['dismissible'] : false;
|
72 |
|
73 |
return $dismissible;
|
77 |
return get_option( "happyforms_modal_dismissed_{$id}", false );
|
78 |
}
|
79 |
|
80 |
+
public function admin_enqueue_scripts() {
|
81 |
+
$asset_file = require( happyforms_get_include_folder() . '/assets/jsx/build/admin/dashboard-modals.asset.php' );
|
82 |
+
$dependencies = array_merge( $asset_file['dependencies'], array( 'happyforms-admin' ) );
|
83 |
+
|
84 |
+
wp_enqueue_script(
|
85 |
+
'happyforms-dashboard-modals',
|
86 |
+
happyforms_get_plugin_url() . 'inc/assets/jsx/build/admin/dashboard-modals.js',
|
87 |
+
$dependencies, $asset_file['version'], true
|
88 |
+
);
|
89 |
+
|
90 |
+
wp_enqueue_style(
|
91 |
+
'happyforms-dashboard-modals',
|
92 |
+
happyforms_get_plugin_url() . 'core/assets/css/dashboard-modals.css',
|
93 |
+
array( 'wp-components' ), HAPPYFORMS_VERSION
|
94 |
+
);
|
95 |
+
|
96 |
+
wp_localize_script( 'happyforms-dashboard-modals', '_happyFormsDashboardModalsSettings', $this->get_script_settings() );
|
97 |
+
}
|
98 |
+
|
99 |
+
public function get_script_settings() {
|
100 |
+
$settings = array(
|
101 |
+
'actionModalDismiss' => $this->dismiss_action,
|
102 |
+
'pluginURL' => happyforms_get_plugin_url(),
|
103 |
+
);
|
104 |
+
|
105 |
+
$settings = apply_filters( 'happyforms_dashboard_modal_settings', $settings );
|
106 |
+
|
107 |
+
return $settings;
|
108 |
+
}
|
109 |
+
|
110 |
+
public function output_modal_area() {
|
111 |
+
?>
|
112 |
+
<div id="happyforms-modals-area"></div>
|
113 |
+
<?php
|
114 |
+
}
|
115 |
+
|
116 |
}
|
117 |
|
118 |
if ( ! function_exists( 'happyforms_get_dashboard_modals' ) ):
|
123 |
|
124 |
endif;
|
125 |
|
126 |
+
happyforms_get_dashboard_modals();
|
core/classes/class-deactivation.php
CHANGED
@@ -19,7 +19,7 @@ class HappyForms_Deactivation {
|
|
19 |
|
20 |
public function hook() {
|
21 |
add_action( 'admin_init', [ $this, 'register_modals' ] );
|
22 |
-
add_filter( '
|
23 |
add_action( 'wp_ajax_' . $this->modal_action, [ $this, 'deactivate_modal_submit' ] );
|
24 |
}
|
25 |
|
@@ -32,21 +32,16 @@ class HappyForms_Deactivation {
|
|
32 |
public function register_modals() {
|
33 |
$modals = happyforms_get_dashboard_modals();
|
34 |
|
35 |
-
$modals->register_modal( 'deactivate', [
|
36 |
'classes' => 'happyforms-modal__frame--deactivate'
|
37 |
] );
|
38 |
}
|
39 |
|
40 |
-
public function
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
$data['actionDeactivateModalSubmit'] = $this->modal_action;
|
46 |
-
$data['textDeactivateAndKeep'] = __( 'Deactivate Plugin', 'happyforms' );
|
47 |
-
$data['textDeactivateAndCleanup'] = __( 'Delete Data and Deactivate Plugin', 'happyforms' );
|
48 |
-
|
49 |
-
return $data;
|
50 |
}
|
51 |
|
52 |
public function deactivate_modal_submit() {
|
19 |
|
20 |
public function hook() {
|
21 |
add_action( 'admin_init', [ $this, 'register_modals' ] );
|
22 |
+
add_filter( 'happyforms_dashboard_modal_settings', [ $this, 'get_dashboard_modal_settings' ] );
|
23 |
add_action( 'wp_ajax_' . $this->modal_action, [ $this, 'deactivate_modal_submit' ] );
|
24 |
}
|
25 |
|
32 |
public function register_modals() {
|
33 |
$modals = happyforms_get_dashboard_modals();
|
34 |
|
35 |
+
$modals->register_modal( 'deactivate', [
|
36 |
'classes' => 'happyforms-modal__frame--deactivate'
|
37 |
] );
|
38 |
}
|
39 |
|
40 |
+
public function get_dashboard_modal_settings( $settings ) {
|
41 |
+
$settings['deactivateModalAction'] = $this->modal_action;
|
42 |
+
$settings['deactivateModalNonce'] = wp_create_nonce( $this->modal_action );
|
43 |
+
|
44 |
+
return $settings;
|
|
|
|
|
|
|
|
|
|
|
45 |
}
|
46 |
|
47 |
public function deactivate_modal_submit() {
|
core/classes/class-form-controller.php
CHANGED
@@ -592,6 +592,17 @@ class HappyForms_Form_Controller {
|
|
592 |
$form_meta = happyforms_unprefix_meta( get_post_meta( $result ) );
|
593 |
$form_meta = array_diff_key( $form_meta, $this->get_meta_fields() );
|
594 |
$stale_parts = array_diff_key( $form_meta, array_flip( $part_layout ) );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
595 |
$stale_parts = happyforms_prefix_meta( $stale_parts );
|
596 |
$stale_parts = array_keys( $stale_parts );
|
597 |
|
@@ -835,28 +846,6 @@ class HappyForms_Form_Controller {
|
|
835 |
return $steps;
|
836 |
}
|
837 |
|
838 |
-
public function count_by_option( $form_id, $option_id, $limit ) {
|
839 |
-
global $wpdb;
|
840 |
-
|
841 |
-
$meta_key = happyforms_get_option_counter_meta_key( $form_id, $option_id );
|
842 |
-
|
843 |
-
$query = $wpdb->prepare( "
|
844 |
-
SELECT COUNT(*) FROM (
|
845 |
-
SELECT p.ID FROM $wpdb->posts p
|
846 |
-
JOIN $wpdb->postmeta s ON p.ID = s.post_id AND s.meta_key = '_happyforms_read' AND s.meta_value != 2
|
847 |
-
JOIN $wpdb->postmeta c ON p.ID = c.post_id AND c.meta_key = %s
|
848 |
-
WHERE p.post_type = 'happyforms-message'
|
849 |
-
AND p.post_status = 'publish'
|
850 |
-
LIMIT 0, %d
|
851 |
-
) AS r;
|
852 |
-
", $meta_key, $limit );
|
853 |
-
|
854 |
-
$count = $wpdb->get_col( $query );
|
855 |
-
$count = empty( $count ) ? 0 : intval( $count[0] );
|
856 |
-
|
857 |
-
return $count;
|
858 |
-
}
|
859 |
-
|
860 |
public function part_error_class( $classes, $part, $form ) {
|
861 |
$part_name = happyforms_get_part_name( $part, $form );
|
862 |
$notices = happyforms_get_session()->get_messages( $part_name );
|
592 |
$form_meta = happyforms_unprefix_meta( get_post_meta( $result ) );
|
593 |
$form_meta = array_diff_key( $form_meta, $this->get_meta_fields() );
|
594 |
$stale_parts = array_diff_key( $form_meta, array_flip( $part_layout ) );
|
595 |
+
$part_library = happyforms_get_part_library();
|
596 |
+
$stale_parts = array_filter( $stale_parts, function( $stale_part ) use( $part_library ) {
|
597 |
+
if ( ! isset( $stale_part['type'] ) ) {
|
598 |
+
return false;
|
599 |
+
}
|
600 |
+
|
601 |
+
$part = $part_library->get_part( $stale_part['type'] );
|
602 |
+
|
603 |
+
return $part !== false;
|
604 |
+
} );
|
605 |
+
|
606 |
$stale_parts = happyforms_prefix_meta( $stale_parts );
|
607 |
$stale_parts = array_keys( $stale_parts );
|
608 |
|
846 |
return $steps;
|
847 |
}
|
848 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
849 |
public function part_error_class( $classes, $part, $form ) {
|
850 |
$part_name = happyforms_get_part_name( $part, $form );
|
851 |
$notices = happyforms_get_session()->get_messages( $part_name );
|
core/classes/class-form-option-limiter.php
CHANGED
@@ -3,7 +3,7 @@ class HappyForms_Form_Option_Limiter {
|
|
3 |
|
4 |
private static $instance;
|
5 |
|
6 |
-
private $
|
7 |
|
8 |
public static function instance() {
|
9 |
if ( is_null( self::$instance ) ) {
|
@@ -15,15 +15,6 @@ class HappyForms_Form_Option_Limiter {
|
|
15 |
return self::$instance;
|
16 |
}
|
17 |
|
18 |
-
public function __construct() {
|
19 |
-
$this->part_types = array(
|
20 |
-
'radio',
|
21 |
-
'checkbox',
|
22 |
-
'select',
|
23 |
-
'table',
|
24 |
-
);
|
25 |
-
}
|
26 |
-
|
27 |
public function hook() {
|
28 |
add_filter( 'happyforms_part_options', array( $this, 'get_part_options' ), 10, 3 );
|
29 |
add_filter( 'happyforms_get_form_parts', array( $this, 'get_form_parts' ), 10, 2 );
|
@@ -42,16 +33,18 @@ class HappyForms_Form_Option_Limiter {
|
|
42 |
return $defaults;
|
43 |
}
|
44 |
|
|
|
45 |
public function get_part_options( $options, $part, $form ) {
|
46 |
$option_defaults = $this->get_option_fields();
|
|
|
47 |
|
48 |
// Calculate remaining choices
|
49 |
-
$options = array_map( function( $option ) use( $option_defaults, $form ) {
|
50 |
$option = wp_parse_args( $option, $option_defaults );
|
51 |
|
52 |
if ( intval( $option['limit_submissions'] ) ) {
|
53 |
$limit = intval( $option['limit_submissions_amount'] );
|
54 |
-
$count =
|
55 |
$option['submissions_left'] = $limit - $count;
|
56 |
}
|
57 |
|
@@ -94,10 +87,13 @@ class HappyForms_Form_Option_Limiter {
|
|
94 |
}
|
95 |
|
96 |
public function submission_success( $submission, $form, $message ) {
|
97 |
-
$
|
|
|
|
|
|
|
98 |
|
99 |
foreach( $form['parts'] as $part ) {
|
100 |
-
if ( ! in_array( $part['type'], $this->
|
101 |
continue;
|
102 |
}
|
103 |
|
@@ -107,8 +103,6 @@ class HappyForms_Form_Option_Limiter {
|
|
107 |
$options_key = 'columns';
|
108 |
}
|
109 |
|
110 |
-
$options = $part[$options_key];
|
111 |
-
|
112 |
foreach( $part[$options_key] as $o => $option ) {
|
113 |
$option = wp_parse_args( $option, $this->get_option_fields() );
|
114 |
|
@@ -141,16 +135,26 @@ class HappyForms_Form_Option_Limiter {
|
|
141 |
continue;
|
142 |
}
|
143 |
|
144 |
-
$
|
145 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
146 |
}
|
147 |
}
|
148 |
}
|
|
|
|
|
149 |
}
|
150 |
|
151 |
public function get_form_parts( $parts, $form ) {
|
|
|
|
|
152 |
foreach( $parts as $p => $part ) {
|
153 |
-
if ( ! in_array( $part['type'], $this->
|
154 |
continue;
|
155 |
}
|
156 |
|
@@ -170,9 +174,7 @@ class HappyForms_Form_Option_Limiter {
|
|
170 |
}
|
171 |
|
172 |
$limit = intval( $option['limit_submissions_amount'] );
|
173 |
-
$
|
174 |
-
$option_id = $option['id'];
|
175 |
-
$count = happyforms_get_form_controller()->count_by_option( $form_id, $option_id, $limit );
|
176 |
|
177 |
if ( $limit <= $count ) {
|
178 |
unset( $part[$options_key][$o] );
|
@@ -187,6 +189,129 @@ class HappyForms_Form_Option_Limiter {
|
|
187 |
return $parts;
|
188 |
}
|
189 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
190 |
}
|
191 |
|
192 |
if ( ! function_exists( 'happyforms_upgrade_get_option_limiter' ) ) :
|
3 |
|
4 |
private static $instance;
|
5 |
|
6 |
+
private $counter_key = 'counter_choices';
|
7 |
|
8 |
public static function instance() {
|
9 |
if ( is_null( self::$instance ) ) {
|
15 |
return self::$instance;
|
16 |
}
|
17 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
18 |
public function hook() {
|
19 |
add_filter( 'happyforms_part_options', array( $this, 'get_part_options' ), 10, 3 );
|
20 |
add_filter( 'happyforms_get_form_parts', array( $this, 'get_form_parts' ), 10, 2 );
|
33 |
return $defaults;
|
34 |
}
|
35 |
|
36 |
+
|
37 |
public function get_part_options( $options, $part, $form ) {
|
38 |
$option_defaults = $this->get_option_fields();
|
39 |
+
$part_id = $part['id'];
|
40 |
|
41 |
// Calculate remaining choices
|
42 |
+
$options = array_map( function( $option ) use( $option_defaults, $form, $part_id ) {
|
43 |
$option = wp_parse_args( $option, $option_defaults );
|
44 |
|
45 |
if ( intval( $option['limit_submissions'] ) ) {
|
46 |
$limit = intval( $option['limit_submissions_amount'] );
|
47 |
+
$count = $this->count_by_option( $form['ID'], $part_id, $option['id'] );
|
48 |
$option['submissions_left'] = $limit - $count;
|
49 |
}
|
50 |
|
87 |
}
|
88 |
|
89 |
public function submission_success( $submission, $form, $message ) {
|
90 |
+
$meta_counters = happyforms_get_meta( $form['ID'], $this->counter_key, true );
|
91 |
+
if ( empty( $meta_counters ) ) {
|
92 |
+
$meta_counters = [];
|
93 |
+
}
|
94 |
|
95 |
foreach( $form['parts'] as $part ) {
|
96 |
+
if ( ! in_array( $part['type'], $this->get_supported_parts() ) ) {
|
97 |
continue;
|
98 |
}
|
99 |
|
103 |
$options_key = 'columns';
|
104 |
}
|
105 |
|
|
|
|
|
106 |
foreach( $part[$options_key] as $o => $option ) {
|
107 |
$option = wp_parse_args( $option, $this->get_option_fields() );
|
108 |
|
135 |
continue;
|
136 |
}
|
137 |
|
138 |
+
$choice_id = $this->get_counter_choice_key( $part['id'], $option['id'] );
|
139 |
+
$count = 1;
|
140 |
+
|
141 |
+
if ( isset( $meta_counters[ $choice_id ] ) ) {
|
142 |
+
$count = $meta_counters[ $choice_id ] + 1;
|
143 |
+
}
|
144 |
+
|
145 |
+
$meta_counters[ $choice_id ] = $count;
|
146 |
}
|
147 |
}
|
148 |
}
|
149 |
+
|
150 |
+
happyforms_update_meta( $form['ID'], $this->counter_key, $meta_counters );
|
151 |
}
|
152 |
|
153 |
public function get_form_parts( $parts, $form ) {
|
154 |
+
$this->try_migrate_limit_count_options( $form );
|
155 |
+
|
156 |
foreach( $parts as $p => $part ) {
|
157 |
+
if ( ! in_array( $part['type'], $this->get_supported_parts() ) ) {
|
158 |
continue;
|
159 |
}
|
160 |
|
174 |
}
|
175 |
|
176 |
$limit = intval( $option['limit_submissions_amount'] );
|
177 |
+
$count = $this->count_by_option( $form['ID'], $part['id'], $option['id'] );
|
|
|
|
|
178 |
|
179 |
if ( $limit <= $count ) {
|
180 |
unset( $part[$options_key][$o] );
|
189 |
return $parts;
|
190 |
}
|
191 |
|
192 |
+
public function count_by_option( $form_id, $part_id, $option_id ) {
|
193 |
+
$count = 0;
|
194 |
+
$counters = happyforms_get_meta( $form_id, $this->counter_key, true );
|
195 |
+
$choice_id = $this->get_counter_choice_key( $part_id, $option_id );
|
196 |
+
|
197 |
+
if ( isset( $counters[ $choice_id ] ) ) {
|
198 |
+
$count = $counters[ $choice_id ];
|
199 |
+
}
|
200 |
+
|
201 |
+
return $count;
|
202 |
+
}
|
203 |
+
|
204 |
+
public function get_counter_choice_key( $part_id, $option_id ) {
|
205 |
+
return $part_id . '_' . $option_id;
|
206 |
+
}
|
207 |
+
|
208 |
+
public function get_supported_parts() {
|
209 |
+
$parts = array(
|
210 |
+
'radio',
|
211 |
+
'checkbox',
|
212 |
+
'select',
|
213 |
+
);
|
214 |
+
|
215 |
+
$parts = apply_filters( 'happyforms_limited_options_supported_parts', $parts );
|
216 |
+
|
217 |
+
return $parts;
|
218 |
+
}
|
219 |
+
|
220 |
+
public function try_migrate_limit_count_options( $form ) {
|
221 |
+
$form_id = $form['ID'];
|
222 |
+
$meta_counters = happyforms_get_meta( $form_id, $this->counter_key, true );
|
223 |
+
|
224 |
+
if ( 0 == $form_id || ! empty( $meta_counters ) ) {
|
225 |
+
return;
|
226 |
+
}
|
227 |
+
|
228 |
+
$parts_with_limits = [];
|
229 |
+
|
230 |
+
foreach( $form['parts'] as $part ) {
|
231 |
+
if ( ! in_array( $part['type'], $this->get_supported_parts() ) ) {
|
232 |
+
continue;
|
233 |
+
}
|
234 |
+
|
235 |
+
$options_key = 'options';
|
236 |
+
|
237 |
+
if ( 'table' === $part['type'] ) {
|
238 |
+
$options_key = 'columns';
|
239 |
+
}
|
240 |
+
|
241 |
+
foreach( $part[$options_key] as $o => $option ) {
|
242 |
+
$option = wp_parse_args( $option, $this->get_option_fields() );
|
243 |
+
|
244 |
+
if ( ! $option['limit_submissions'] ) {
|
245 |
+
continue;
|
246 |
+
}
|
247 |
+
$part_name = happyforms_get_part_name( $part, $form );
|
248 |
+
if ( ! isset( $parts_with_limits[ $part_name ] ) ) {
|
249 |
+
$parts_with_limits[ $part_name ] = [
|
250 |
+
'id' => $part['id'],
|
251 |
+
'options' => [],
|
252 |
+
];
|
253 |
+
}
|
254 |
+
|
255 |
+
$parts_with_limits[ $part_name ]['options'][ $option['id'] ] = $o;
|
256 |
+
}
|
257 |
+
}
|
258 |
+
|
259 |
+
if ( empty ( $parts_with_limits ) ) {
|
260 |
+
return;
|
261 |
+
}
|
262 |
+
|
263 |
+
$meta_counters = [];
|
264 |
+
$message_controller = happyforms_get_message_controller();
|
265 |
+
$messages = $message_controller->get_by_form( $form_id );
|
266 |
+
|
267 |
+
foreach( $messages as $message ){
|
268 |
+
|
269 |
+
foreach( $parts_with_limits as $part_name => $part ) {
|
270 |
+
$request_value = $message['request'];
|
271 |
+
|
272 |
+
if ( ! isset( $request_value[ $part_name ] ) ) {
|
273 |
+
continue;
|
274 |
+
}
|
275 |
+
|
276 |
+
$request_value = $request_value[ $part_name ];
|
277 |
+
|
278 |
+
if ( ! is_array( $request_value ) ) {
|
279 |
+
$request_value = array( $request_value );
|
280 |
+
}
|
281 |
+
|
282 |
+
foreach( $part['options'] as $option_id => $o ) {
|
283 |
+
|
284 |
+
foreach( $request_value as $submitted_value ) {
|
285 |
+
if ( ! is_array( $submitted_value ) ) {
|
286 |
+
$submitted_value = array( $submitted_value );
|
287 |
+
}
|
288 |
+
|
289 |
+
// Filter out "other" options
|
290 |
+
$submitted_value = array_filter( $submitted_value, 'is_numeric' );
|
291 |
+
$submitted_value = array_map( 'intval', $submitted_value );
|
292 |
+
|
293 |
+
if ( ! in_array( $o, $submitted_value ) ) {
|
294 |
+
continue;
|
295 |
+
}
|
296 |
+
|
297 |
+
$choice_id = $this->get_counter_choice_key( $part['id'], $option_id );
|
298 |
+
$count = 1;
|
299 |
+
|
300 |
+
if ( isset( $meta_counters[ $choice_id ] ) ) {
|
301 |
+
$count = $meta_counters[ $choice_id ] + 1;
|
302 |
+
}
|
303 |
+
|
304 |
+
$meta_counters[ $choice_id ] = $count;
|
305 |
+
}
|
306 |
+
}
|
307 |
+
}
|
308 |
+
}
|
309 |
+
|
310 |
+
happyforms_update_meta( $form_id, $this->counter_key, $meta_counters );
|
311 |
+
|
312 |
+
return $form;
|
313 |
+
}
|
314 |
+
|
315 |
}
|
316 |
|
317 |
if ( ! function_exists( 'happyforms_upgrade_get_option_limiter' ) ) :
|
core/classes/class-form-setup.php
CHANGED
@@ -41,6 +41,7 @@ class HappyForms_Form_Setup {
|
|
41 |
// Reviewable form display
|
42 |
add_filter( 'happyforms_form_id', array( $this, 'form_html_id' ), 10, 2 );
|
43 |
add_action( 'happyforms_do_setup_control', array( $this, 'do_control' ), 10, 3 );
|
|
|
44 |
|
45 |
add_filter( 'happyforms_messages_fields', array( $this, 'get_messages_fields' ) );
|
46 |
add_filter( 'happyforms_messages_controls', array( $this, 'messages_controls' ) );
|
@@ -109,10 +110,6 @@ class HappyForms_Form_Setup {
|
|
109 |
'default' => '',
|
110 |
'sanitize' => 'sanitize_text_field'
|
111 |
),
|
112 |
-
'disable_submit_until_valid' => array(
|
113 |
-
'default' => '',
|
114 |
-
'sanitize' => 'happyforms_sanitize_checkbox'
|
115 |
-
),
|
116 |
'add_submit_button_class' => array(
|
117 |
'default' => 0,
|
118 |
'sanitize' => 'happyforms_sanitize_checkbox'
|
@@ -171,40 +168,40 @@ class HappyForms_Form_Setup {
|
|
171 |
'type' => 'group_end'
|
172 |
),
|
173 |
1100 => array(
|
174 |
-
'type' => 'checkbox',
|
175 |
'label' => __( 'Add custom CSS classes to submit button', 'happyforms' ),
|
176 |
'field' => 'add_submit_button_class',
|
177 |
),
|
178 |
1101 => array(
|
179 |
-
'type' => 'group_start',
|
180 |
'trigger' => 'add_submit_button_class'
|
181 |
),
|
182 |
1102 => array(
|
183 |
-
'type' => 'text',
|
184 |
'label' => __( 'Submit button CSS classes', 'happyforms' ),
|
185 |
'autocomplete' => 'off',
|
186 |
'field' => 'submit_button_html_class'
|
187 |
),
|
188 |
1103 => array(
|
189 |
-
'type' => 'group_end',
|
190 |
),
|
191 |
1200 => array(
|
192 |
-
'type' => 'checkbox',
|
193 |
'label' => __( 'Add custom HTML ID to form', 'happyforms' ),
|
194 |
'field' => 'use_html_id',
|
195 |
),
|
196 |
1201 => array(
|
197 |
-
'type' => 'group_start',
|
198 |
'trigger' => 'use_html_id'
|
199 |
),
|
200 |
1202 => array(
|
201 |
-
'type' => 'text',
|
202 |
'label' => __( 'Form HTML ID', 'happyforms' ),
|
203 |
'field' => 'html_id',
|
204 |
'autocomplete' => 'off',
|
205 |
),
|
206 |
1203 => array(
|
207 |
-
'type' => 'group_end',
|
208 |
),
|
209 |
);
|
210 |
|
@@ -261,6 +258,44 @@ class HappyForms_Form_Setup {
|
|
261 |
}
|
262 |
}
|
263 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
264 |
/**
|
265 |
* Filter: add fields to form meta.
|
266 |
*
|
41 |
// Reviewable form display
|
42 |
add_filter( 'happyforms_form_id', array( $this, 'form_html_id' ), 10, 2 );
|
43 |
add_action( 'happyforms_do_setup_control', array( $this, 'do_control' ), 10, 3 );
|
44 |
+
add_action( 'happyforms_do_setup_control', array( $this, 'do_deprecated_control' ), 10, 4 );
|
45 |
|
46 |
add_filter( 'happyforms_messages_fields', array( $this, 'get_messages_fields' ) );
|
47 |
add_filter( 'happyforms_messages_controls', array( $this, 'messages_controls' ) );
|
110 |
'default' => '',
|
111 |
'sanitize' => 'sanitize_text_field'
|
112 |
),
|
|
|
|
|
|
|
|
|
113 |
'add_submit_button_class' => array(
|
114 |
'default' => 0,
|
115 |
'sanitize' => 'happyforms_sanitize_checkbox'
|
168 |
'type' => 'group_end'
|
169 |
),
|
170 |
1100 => array(
|
171 |
+
'type' => 'add_submit_button_class-checkbox',
|
172 |
'label' => __( 'Add custom CSS classes to submit button', 'happyforms' ),
|
173 |
'field' => 'add_submit_button_class',
|
174 |
),
|
175 |
1101 => array(
|
176 |
+
'type' => 'add_submit_button_class-group_start',
|
177 |
'trigger' => 'add_submit_button_class'
|
178 |
),
|
179 |
1102 => array(
|
180 |
+
'type' => 'add_submit_button_class-text',
|
181 |
'label' => __( 'Submit button CSS classes', 'happyforms' ),
|
182 |
'autocomplete' => 'off',
|
183 |
'field' => 'submit_button_html_class'
|
184 |
),
|
185 |
1103 => array(
|
186 |
+
'type' => 'add_submit_button_class-group_end',
|
187 |
),
|
188 |
1200 => array(
|
189 |
+
'type' => 'use_html_id-checkbox',
|
190 |
'label' => __( 'Add custom HTML ID to form', 'happyforms' ),
|
191 |
'field' => 'use_html_id',
|
192 |
),
|
193 |
1201 => array(
|
194 |
+
'type' => 'use_html_id-group_start',
|
195 |
'trigger' => 'use_html_id'
|
196 |
),
|
197 |
1202 => array(
|
198 |
+
'type' => 'use_html_id-text',
|
199 |
'label' => __( 'Form HTML ID', 'happyforms' ),
|
200 |
'field' => 'html_id',
|
201 |
'autocomplete' => 'off',
|
202 |
),
|
203 |
1203 => array(
|
204 |
+
'type' => 'use_html_id-group_end',
|
205 |
),
|
206 |
);
|
207 |
|
258 |
}
|
259 |
}
|
260 |
|
261 |
+
public function do_deprecated_control( $control, $field, $index ) {
|
262 |
+
$type = $control['type'];
|
263 |
+
$path = happyforms_get_core_folder() . '/templates/customize-controls/setup';
|
264 |
+
|
265 |
+
switch( $type ) {
|
266 |
+
case 'use_html_id-checkbox':
|
267 |
+
case 'use_html_id-group_start':
|
268 |
+
case 'use_html_id-text':
|
269 |
+
case 'use_html_id-group_end':
|
270 |
+
$form = happyforms_customize_get_current_form();
|
271 |
+
|
272 |
+
if ( 0 == $form['use_html_id'] ) {
|
273 |
+
break;
|
274 |
+
}
|
275 |
+
|
276 |
+
$true_type = str_replace( 'use_html_id-', '', $type );
|
277 |
+
|
278 |
+
require( "{$path}/{$true_type}.php" );
|
279 |
+
break;
|
280 |
+
case 'add_submit_button_class-checkbox':
|
281 |
+
case 'add_submit_button_class-group_start':
|
282 |
+
case 'add_submit_button_class-text':
|
283 |
+
case 'add_submit_button_class-group_end':
|
284 |
+
$form = happyforms_customize_get_current_form();
|
285 |
+
|
286 |
+
if ( 0 == $form['add_submit_button_class'] ) {
|
287 |
+
break;
|
288 |
+
}
|
289 |
+
|
290 |
+
$true_type = str_replace( 'add_submit_button_class-', '', $type );
|
291 |
+
|
292 |
+
require( "{$path}/{$true_type}.php" );
|
293 |
+
break;
|
294 |
+
default:
|
295 |
+
break;
|
296 |
+
}
|
297 |
+
}
|
298 |
+
|
299 |
/**
|
300 |
* Filter: add fields to form meta.
|
301 |
*
|
core/classes/class-form-styles.php
CHANGED
@@ -86,7 +86,7 @@ class HappyForms_Form_Styles {
|
|
86 |
'sanitize' => 'sanitize_text_field'
|
87 |
),
|
88 |
'form_title' => array(
|
89 |
-
'default' => '',
|
90 |
'options' => array(
|
91 |
'' => __( 'Show', 'happyforms' ),
|
92 |
'happyforms-form--hide-title' => __( 'Hide', 'happyforms' )
|
@@ -528,15 +528,6 @@ class HappyForms_Form_Styles {
|
|
528 |
'target' => 'css_var',
|
529 |
'variable' => '--happyforms-color-dropdown-item-text-hover',
|
530 |
),
|
531 |
-
'notices_position' => array(
|
532 |
-
'default' => '',
|
533 |
-
'options' => array(
|
534 |
-
'' => __( 'Above form', 'happyforms' ),
|
535 |
-
'happyforms-form--notices-below' => __( 'Below form', 'happyforms' ),
|
536 |
-
),
|
537 |
-
'target' => 'form_class',
|
538 |
-
'sanitize' => 'sanitize_text_field'
|
539 |
-
),
|
540 |
'additional_css' => array(
|
541 |
'default' => '',
|
542 |
'mode' => 'css',
|
@@ -570,11 +561,6 @@ class HappyForms_Form_Styles {
|
|
570 |
'label' => __( 'Direction', 'happyforms' ),
|
571 |
'field' => 'form_direction'
|
572 |
),
|
573 |
-
500 => array(
|
574 |
-
'type' => 'buttonset',
|
575 |
-
'label' => __( 'Message location', 'happyforms' ),
|
576 |
-
'field' => 'notices_position'
|
577 |
-
),
|
578 |
600 => array(
|
579 |
'type' => 'heading',
|
580 |
'id' => 'colors_general',
|
@@ -611,7 +597,7 @@ class HappyForms_Form_Styles {
|
|
611 |
'field' => 'color_error_notice_text',
|
612 |
),
|
613 |
1000 => array(
|
614 |
-
'type' => 'divider',
|
615 |
'label' => __( 'Title', 'happyforms' ),
|
616 |
'id' => 'form_title',
|
617 |
),
|
@@ -961,7 +947,7 @@ class HappyForms_Form_Styles {
|
|
961 |
}
|
962 |
|
963 |
$controls[99990] = array(
|
964 |
-
'type' => 'divider',
|
965 |
'label' => __( 'Additional CSS', 'happyforms' ),
|
966 |
'id' => 'additional_css_divider',
|
967 |
'class' => "code-editor-mode--{$code_editor_mode}",
|
@@ -969,7 +955,7 @@ class HappyForms_Form_Styles {
|
|
969 |
);
|
970 |
|
971 |
$controls[99991] = array(
|
972 |
-
'type' => 'code',
|
973 |
'mode' => $code_editor_mode,
|
974 |
'hide_title' => true,
|
975 |
'label' => __( 'Additional CSS', 'happyforms' ),
|
@@ -1041,10 +1027,10 @@ class HappyForms_Form_Styles {
|
|
1041 |
public function do_deprecated_control( $control, $field, $index ) {
|
1042 |
$type = $control['type'];
|
1043 |
$path = happyforms_get_core_folder() . '/templates/customize-controls/style';
|
1044 |
-
|
|
|
1045 |
switch( $control['type'] ) {
|
1046 |
case 'form-width-range':
|
1047 |
-
$form = happyforms_customize_get_current_form();
|
1048 |
$form_width = $form['form_width'];
|
1049 |
|
1050 |
if( '' == $form_width || 100 == $form_width ) {
|
@@ -1052,6 +1038,25 @@ class HappyForms_Form_Styles {
|
|
1052 |
}
|
1053 |
require( "{$path}/range.php" );
|
1054 |
break;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1055 |
default:
|
1056 |
break;
|
1057 |
}
|
86 |
'sanitize' => 'sanitize_text_field'
|
87 |
),
|
88 |
'form_title' => array(
|
89 |
+
'default' => 'happyforms-form--hide-title',
|
90 |
'options' => array(
|
91 |
'' => __( 'Show', 'happyforms' ),
|
92 |
'happyforms-form--hide-title' => __( 'Hide', 'happyforms' )
|
528 |
'target' => 'css_var',
|
529 |
'variable' => '--happyforms-color-dropdown-item-text-hover',
|
530 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
531 |
'additional_css' => array(
|
532 |
'default' => '',
|
533 |
'mode' => 'css',
|
561 |
'label' => __( 'Direction', 'happyforms' ),
|
562 |
'field' => 'form_direction'
|
563 |
),
|
|
|
|
|
|
|
|
|
|
|
564 |
600 => array(
|
565 |
'type' => 'heading',
|
566 |
'id' => 'colors_general',
|
597 |
'field' => 'color_error_notice_text',
|
598 |
),
|
599 |
1000 => array(
|
600 |
+
'type' => 'deprecated-divider',
|
601 |
'label' => __( 'Title', 'happyforms' ),
|
602 |
'id' => 'form_title',
|
603 |
),
|
947 |
}
|
948 |
|
949 |
$controls[99990] = array(
|
950 |
+
'type' => 'additional_css-divider',
|
951 |
'label' => __( 'Additional CSS', 'happyforms' ),
|
952 |
'id' => 'additional_css_divider',
|
953 |
'class' => "code-editor-mode--{$code_editor_mode}",
|
955 |
);
|
956 |
|
957 |
$controls[99991] = array(
|
958 |
+
'type' => 'additional_css-code',
|
959 |
'mode' => $code_editor_mode,
|
960 |
'hide_title' => true,
|
961 |
'label' => __( 'Additional CSS', 'happyforms' ),
|
1027 |
public function do_deprecated_control( $control, $field, $index ) {
|
1028 |
$type = $control['type'];
|
1029 |
$path = happyforms_get_core_folder() . '/templates/customize-controls/style';
|
1030 |
+
$form = happyforms_customize_get_current_form();
|
1031 |
+
|
1032 |
switch( $control['type'] ) {
|
1033 |
case 'form-width-range':
|
|
|
1034 |
$form_width = $form['form_width'];
|
1035 |
|
1036 |
if( '' == $form_width || 100 == $form_width ) {
|
1038 |
}
|
1039 |
require( "{$path}/range.php" );
|
1040 |
break;
|
1041 |
+
case 'additional_css-divider':
|
1042 |
+
case 'additional_css-code':
|
1043 |
+
if ( '' == trim( $form['additional_css'] ) ) {
|
1044 |
+
break;
|
1045 |
+
}
|
1046 |
+
|
1047 |
+
$true_type = str_replace( 'additional_css-', '', $type );
|
1048 |
+
|
1049 |
+
require( "{$path}/{$true_type}.php" );
|
1050 |
+
break;
|
1051 |
+
case 'deprecated-divider':
|
1052 |
+
if( 'happyforms-form--hide-title' == $form['form_title'] ) {
|
1053 |
+
break;
|
1054 |
+
}
|
1055 |
+
|
1056 |
+
$true_type = str_replace( 'deprecated-', '', $type );
|
1057 |
+
|
1058 |
+
require( "{$path}/{$true_type}.php" );
|
1059 |
+
break;
|
1060 |
default:
|
1061 |
break;
|
1062 |
}
|
core/classes/class-happyforms-core.php
CHANGED
@@ -265,13 +265,9 @@ class HappyForms_Core {
|
|
265 |
|
266 |
global $pagenow;
|
267 |
|
268 |
-
$dashboard_modals = happyforms_get_dashboard_modals();
|
269 |
-
|
270 |
$data = array(
|
271 |
'editLink' => admin_url( happyforms_get_form_edit_link( 'ID', 'URL' ) ),
|
272 |
'shortcode' => happyforms_get_shortcode(),
|
273 |
-
'actionModalFetch' => $dashboard_modals->fetch_action,
|
274 |
-
'actionModalDismiss' => $dashboard_modals->dismiss_action,
|
275 |
);
|
276 |
|
277 |
if ( 'post.php' === $pagenow || 'post-new.php' === $pagenow ) {
|
265 |
|
266 |
global $pagenow;
|
267 |
|
|
|
|
|
268 |
$data = array(
|
269 |
'editLink' => admin_url( happyforms_get_form_edit_link( 'ID', 'URL' ) ),
|
270 |
'shortcode' => happyforms_get_shortcode(),
|
|
|
|
|
271 |
);
|
272 |
|
273 |
if ( 'post.php' === $pagenow || 'post-new.php' === $pagenow ) {
|
core/classes/class-tracking.php
CHANGED
@@ -10,9 +10,6 @@ class HappyForms_Tracking {
|
|
10 |
* @var HappyForms_Tracking
|
11 |
*/
|
12 |
private static $instance;
|
13 |
-
|
14 |
-
private $first_time = false;
|
15 |
-
|
16 |
/**
|
17 |
* The name of the tracking option entry.
|
18 |
*
|
@@ -103,102 +100,6 @@ class HappyForms_Tracking {
|
|
103 |
wp_die( 1 );
|
104 |
}
|
105 |
|
106 |
-
/**
|
107 |
-
* Action: redirect to the welcome page, if it's first run
|
108 |
-
* and the user hasn't skipped this step yet.
|
109 |
-
*
|
110 |
-
* @since 1.0
|
111 |
-
*
|
112 |
-
* @hooked action admin_init
|
113 |
-
*
|
114 |
-
* @return void
|
115 |
-
*/
|
116 |
-
public function redirect_to_settings_page() {
|
117 |
-
$status = get_option( $this->activation_option );
|
118 |
-
$show_welcome_page = apply_filters( 'happyforms_show_welcome_page', true );
|
119 |
-
|
120 |
-
if ( $show_welcome_page && ( 1 === intval( $status['status'] ) ) ) {
|
121 |
-
$url = admin_url( 'admin.php?page=happyforms-welcome' );
|
122 |
-
|
123 |
-
$this->update_status( 2 );
|
124 |
-
wp_safe_redirect( $url );
|
125 |
-
|
126 |
-
exit;
|
127 |
-
}
|
128 |
-
}
|
129 |
-
|
130 |
-
/**
|
131 |
-
* Output the welcome page.
|
132 |
-
*
|
133 |
-
* @since 1.0
|
134 |
-
*
|
135 |
-
* @return void
|
136 |
-
*/
|
137 |
-
public function settings_page() {
|
138 |
-
if ( ! current_user_can( 'manage_options' ) ) {
|
139 |
-
wp_die( __( 'Sorry, you are not allowed to access this page.', 'happyforms' ) );
|
140 |
-
}
|
141 |
-
|
142 |
-
require_once( happyforms_get_core_folder() . '/templates/admin-tracking.php' );
|
143 |
-
}
|
144 |
-
|
145 |
-
/**
|
146 |
-
* Action: enqueue styles and scripts for the welcome page.
|
147 |
-
*
|
148 |
-
* @since 1.0
|
149 |
-
*
|
150 |
-
* @hooked action admin_enqueue_scripts
|
151 |
-
*
|
152 |
-
* @return void
|
153 |
-
*/
|
154 |
-
public function admin_scripts() {
|
155 |
-
if ( happyforms_is_admin_screen( 'happyforms-welcome' ) ) {
|
156 |
-
wp_enqueue_script(
|
157 |
-
'happyforms-tracking',
|
158 |
-
happyforms_get_plugin_url() . 'core/assets/js/welcome.js',
|
159 |
-
array(), HAPPYFORMS_VERSION, true
|
160 |
-
);
|
161 |
-
}
|
162 |
-
}
|
163 |
-
|
164 |
-
/**
|
165 |
-
* Output Javascript template partials used in the welcome page.
|
166 |
-
*
|
167 |
-
* @since 1.0
|
168 |
-
*
|
169 |
-
* @return void
|
170 |
-
*/
|
171 |
-
public function print_template( $template ) {
|
172 |
-
if ( 'success' === $template ): ?>
|
173 |
-
<h2><?php _e( 'Thank you!', 'happyforms' ); ?></h2>
|
174 |
-
<p class="about-description"><?php _e( 'Now let\'s go enjoy HappyForms.', 'happyforms' ); ?></p>
|
175 |
-
<p><?php _e( 'You\'ve set up notifications and helped us to improve HappyForms. You\'re ready to get started with your first form.', 'happyforms' ); ?></p>
|
176 |
-
<a href="<?php echo happyforms_get_form_edit_link( 0, happyforms_get_all_form_link() ); ?>" class="button button-primary button-hero" id="happyforms-tracking-proceed"><?php _e( 'Create your first form', 'happyforms' ); ?></a>
|
177 |
-
<?php elseif ( 'error' === $template ): ?>
|
178 |
-
<p class="about-description"><?php _e( 'Aw snap! Something went wrong.', 'happyforms' ); ?></p>
|
179 |
-
<p><?php _e( 'Error description', 'happyforms' ); ?></p>
|
180 |
-
<?php endif;
|
181 |
-
}
|
182 |
-
|
183 |
-
/**
|
184 |
-
* Action: output Javascript templates for the welcome page.
|
185 |
-
*
|
186 |
-
* @since 1.0
|
187 |
-
*
|
188 |
-
* @hooked action admin_footer
|
189 |
-
*
|
190 |
-
* @return void
|
191 |
-
*/
|
192 |
-
public function print_templates() {
|
193 |
-
?>
|
194 |
-
<script type="text/template" id="happyforms-tracking-success">
|
195 |
-
<?php $this->print_template( 'success' ); ?>
|
196 |
-
</script>
|
197 |
-
<script type="text/template" id="happyforms-tracking-error">
|
198 |
-
<?php $this->print_template( 'error' ); ?>
|
199 |
-
</script>
|
200 |
-
<?php
|
201 |
-
}
|
202 |
}
|
203 |
|
204 |
if ( ! function_exists( 'happyforms_get_tracking' ) ):
|
10 |
* @var HappyForms_Tracking
|
11 |
*/
|
12 |
private static $instance;
|
|
|
|
|
|
|
13 |
/**
|
14 |
* The name of the tracking option entry.
|
15 |
*
|
100 |
wp_die( 1 );
|
101 |
}
|
102 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
103 |
}
|
104 |
|
105 |
if ( ! function_exists( 'happyforms_get_tracking' ) ):
|
core/classes/parts/class-part-checkbox.php
CHANGED
@@ -73,10 +73,6 @@ class HappyForms_Part_Checkbox extends HappyForms_Form_Part {
|
|
73 |
'default' => array(),
|
74 |
'sanitize' => 'happyforms_sanitize_array'
|
75 |
),
|
76 |
-
'options_width' => array(
|
77 |
-
'default' => 'auto',
|
78 |
-
'sanitize' => 'sanitize_text_field'
|
79 |
-
),
|
80 |
'show_select_all' => array(
|
81 |
'default' => 0,
|
82 |
'sanitize' => 'happyforms_sanitize_checkbox'
|
@@ -407,9 +403,7 @@ class HappyForms_Part_Checkbox extends HappyForms_Form_Part {
|
|
407 |
}
|
408 |
|
409 |
$limit = intval( $option['limit_submissions_amount'] );
|
410 |
-
$
|
411 |
-
$option_id = $option['id'];
|
412 |
-
$count = happyforms_get_form_controller()->count_by_option( $form_id, $option_id, $limit );
|
413 |
|
414 |
if ( $count === $limit ) {
|
415 |
return new WP_Error( 'error', happyforms_get_validation_message( 'field_invalid' ) );
|
@@ -426,10 +420,6 @@ class HappyForms_Part_Checkbox extends HappyForms_Form_Part {
|
|
426 |
if ( 'block' === $part['display_type'] ) {
|
427 |
$class[] = 'display-type--block';
|
428 |
}
|
429 |
-
|
430 |
-
$part_options_width = $part['options_width'];
|
431 |
-
|
432 |
-
$class[] = "happyforms-part-options-width--{$part_options_width}";
|
433 |
}
|
434 |
|
435 |
return $class;
|
73 |
'default' => array(),
|
74 |
'sanitize' => 'happyforms_sanitize_array'
|
75 |
),
|
|
|
|
|
|
|
|
|
76 |
'show_select_all' => array(
|
77 |
'default' => 0,
|
78 |
'sanitize' => 'happyforms_sanitize_checkbox'
|
403 |
}
|
404 |
|
405 |
$limit = intval( $option['limit_submissions_amount'] );
|
406 |
+
$count = happyforms_upgrade_get_option_limiter()->count_by_option( $form['ID'], $part['id'], $option['id'] );
|
|
|
|
|
407 |
|
408 |
if ( $count === $limit ) {
|
409 |
return new WP_Error( 'error', happyforms_get_validation_message( 'field_invalid' ) );
|
420 |
if ( 'block' === $part['display_type'] ) {
|
421 |
$class[] = 'display-type--block';
|
422 |
}
|
|
|
|
|
|
|
|
|
423 |
}
|
424 |
|
425 |
return $class;
|
core/classes/parts/class-part-radio.php
CHANGED
@@ -74,10 +74,6 @@ class HappyForms_Part_Radio extends HappyForms_Form_Part {
|
|
74 |
'default' => array(),
|
75 |
'sanitize' => 'happyforms_sanitize_array'
|
76 |
),
|
77 |
-
'options_width' => array(
|
78 |
-
'default' => 'auto',
|
79 |
-
'sanitize' => 'sanitize_text_field'
|
80 |
-
),
|
81 |
'other_option' => array(
|
82 |
'default' => 0,
|
83 |
'sanitize' => 'happyforms_sanitize_checkbox'
|
@@ -260,9 +256,7 @@ class HappyForms_Part_Radio extends HappyForms_Form_Part {
|
|
260 |
}
|
261 |
|
262 |
$limit = intval( $option['limit_submissions_amount'] );
|
263 |
-
$
|
264 |
-
$option_id = $option['id'];
|
265 |
-
$count = happyforms_get_form_controller()->count_by_option( $form_id, $option_id, $limit );
|
266 |
|
267 |
if ( $count === $limit ) {
|
268 |
return new WP_Error( 'error', happyforms_get_validation_message( 'field_invalid' ) );
|
@@ -320,10 +314,6 @@ class HappyForms_Part_Radio extends HappyForms_Form_Part {
|
|
320 |
if ( isset( $part['display_type'] ) && 'block' === $part['display_type'] ) {
|
321 |
$class[] = 'display-type--block';
|
322 |
}
|
323 |
-
|
324 |
-
$part_options_width = $part['options_width'];
|
325 |
-
|
326 |
-
$class[] = "happyforms-part-options-width--{$part_options_width}";
|
327 |
}
|
328 |
|
329 |
return $class;
|
74 |
'default' => array(),
|
75 |
'sanitize' => 'happyforms_sanitize_array'
|
76 |
),
|
|
|
|
|
|
|
|
|
77 |
'other_option' => array(
|
78 |
'default' => 0,
|
79 |
'sanitize' => 'happyforms_sanitize_checkbox'
|
256 |
}
|
257 |
|
258 |
$limit = intval( $option['limit_submissions_amount'] );
|
259 |
+
$count = happyforms_upgrade_get_option_limiter()->count_by_option( $form['ID'], $part['id'], $option['id'] );
|
|
|
|
|
260 |
|
261 |
if ( $count === $limit ) {
|
262 |
return new WP_Error( 'error', happyforms_get_validation_message( 'field_invalid' ) );
|
314 |
if ( isset( $part['display_type'] ) && 'block' === $part['display_type'] ) {
|
315 |
$class[] = 'display-type--block';
|
316 |
}
|
|
|
|
|
|
|
|
|
317 |
}
|
318 |
|
319 |
return $class;
|
core/classes/parts/class-part-select.php
CHANGED
@@ -269,9 +269,7 @@ class HappyForms_Part_Select extends HappyForms_Form_Part {
|
|
269 |
}
|
270 |
|
271 |
$limit = intval( $option['limit_submissions_amount'] );
|
272 |
-
$
|
273 |
-
$option_id = $option['id'];
|
274 |
-
$count = happyforms_get_form_controller()->count_by_option( $form_id, $option_id, $limit );
|
275 |
|
276 |
if ( $count === $limit ) {
|
277 |
return new WP_Error( 'error', happyforms_get_validation_message( 'field_invalid' ) );
|
@@ -312,9 +310,7 @@ class HappyForms_Part_Select extends HappyForms_Form_Part {
|
|
312 |
}
|
313 |
|
314 |
$limit = intval( $option['limit_submissions_amount'] );
|
315 |
-
$
|
316 |
-
$option_id = $option['id'];
|
317 |
-
$count = happyforms_get_form_controller()->count_by_option( $form_id, $option_id, $limit );
|
318 |
|
319 |
return $limit > $count;
|
320 |
} );
|
@@ -322,33 +318,6 @@ class HappyForms_Part_Select extends HappyForms_Form_Part {
|
|
322 |
return $options;
|
323 |
}
|
324 |
|
325 |
-
public function submission_success( $submission, $form, $message ) {
|
326 |
-
$parts = array();
|
327 |
-
|
328 |
-
foreach( $form['parts'] as $part ) {
|
329 |
-
if ( $this->type !== $part['type'] ) {
|
330 |
-
continue;
|
331 |
-
}
|
332 |
-
|
333 |
-
foreach( $part['options'] as $o => $option ) {
|
334 |
-
$option = wp_parse_args( $option, $this->get_option_defaults() );
|
335 |
-
|
336 |
-
if ( ! $option['limit_submissions'] ) {
|
337 |
-
continue;
|
338 |
-
}
|
339 |
-
|
340 |
-
$part_name = happyforms_get_part_name( $part, $form );
|
341 |
-
|
342 |
-
if ( ! isset( $_REQUEST[$part_name] ) || ( $o !== intval( $_REQUEST[$part_name] ) ) ) {
|
343 |
-
continue;
|
344 |
-
}
|
345 |
-
|
346 |
-
$meta_key = happyforms_get_option_counter_meta_key( $form['ID'], $option['id'] );
|
347 |
-
update_post_meta( $message['ID'], $meta_key, 1 );
|
348 |
-
}
|
349 |
-
}
|
350 |
-
}
|
351 |
-
|
352 |
public function append_input( $part, $form ) {
|
353 |
if ( $this->type !== $part['type'] ) {
|
354 |
return;
|
269 |
}
|
270 |
|
271 |
$limit = intval( $option['limit_submissions_amount'] );
|
272 |
+
$count = happyforms_upgrade_get_option_limiter()->count_by_option( $form['ID'], $part['id'], $option['id'] );
|
|
|
|
|
273 |
|
274 |
if ( $count === $limit ) {
|
275 |
return new WP_Error( 'error', happyforms_get_validation_message( 'field_invalid' ) );
|
310 |
}
|
311 |
|
312 |
$limit = intval( $option['limit_submissions_amount'] );
|
313 |
+
$count = happyforms_upgrade_get_option_limiter()->count_by_option( $form['ID'], $part['id'], $option['id'] );
|
|
|
|
|
314 |
|
315 |
return $limit > $count;
|
316 |
} );
|
318 |
return $options;
|
319 |
}
|
320 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
321 |
public function append_input( $part, $form ) {
|
322 |
if ( $this->type !== $part['type'] ) {
|
323 |
return;
|
core/helpers/helper-activation.php
CHANGED
@@ -180,8 +180,6 @@ function happyforms_cleanup() {
|
|
180 |
return;
|
181 |
}
|
182 |
|
183 |
-
return;
|
184 |
-
|
185 |
// Forms
|
186 |
$forms = get_posts( array(
|
187 |
'post_type' => 'happyform',
|
@@ -209,11 +207,25 @@ function happyforms_cleanup() {
|
|
209 |
|
210 |
// Migrations
|
211 |
delete_option( 'happyforms-data-version' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
212 |
|
|
|
213 |
// Deactivation
|
214 |
delete_option( '_happyforms_cleanup_on_deactivate' );
|
215 |
}
|
216 |
|
217 |
endif;
|
218 |
|
219 |
-
add_action( 'happyforms_deactivate', '
|
180 |
return;
|
181 |
}
|
182 |
|
|
|
|
|
183 |
// Forms
|
184 |
$forms = get_posts( array(
|
185 |
'post_type' => 'happyform',
|
207 |
|
208 |
// Migrations
|
209 |
delete_option( 'happyforms-data-version' );
|
210 |
+
}
|
211 |
+
|
212 |
+
endif;
|
213 |
+
|
214 |
+
add_action( 'happyforms_deactivate', 'happyforms_cleanup' );
|
215 |
+
|
216 |
+
/**
|
217 |
+
*
|
218 |
+
* Late removal of deactivation settings.
|
219 |
+
* Allows for other code to rely on these settings.
|
220 |
+
*
|
221 |
+
*/
|
222 |
+
if ( ! function_exists( 'happyforms_cleanup_deactivation_flag' ) ) :
|
223 |
|
224 |
+
function happyforms_cleanup_deactivation_flag() {
|
225 |
// Deactivation
|
226 |
delete_option( '_happyforms_cleanup_on_deactivate' );
|
227 |
}
|
228 |
|
229 |
endif;
|
230 |
|
231 |
+
add_action( 'happyforms_deactivate', 'happyforms_cleanup_deactivation_flag', PHP_INT_MAX );
|
core/helpers/helper-misc.php
CHANGED
@@ -992,8 +992,28 @@ endif;
|
|
992 |
|
993 |
if ( ! function_exists( 'happyforms_is_admin_screen' ) ):
|
994 |
|
995 |
-
function happyforms_is_admin_screen( $id ) {
|
996 |
$current_screen = get_current_screen();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
997 |
$prefix = sanitize_title( __( 'Forms', 'happyforms' ) );
|
998 |
$is_admin_screen = "{$prefix}_page_{$id}" === $current_screen->id;
|
999 |
|
@@ -1002,15 +1022,6 @@ function happyforms_is_admin_screen( $id ) {
|
|
1002 |
|
1003 |
endif;
|
1004 |
|
1005 |
-
if ( ! function_exists( 'happyforms_get_option_counter_meta_key' ) ):
|
1006 |
-
|
1007 |
-
function happyforms_get_option_counter_meta_key( $form_id, $option_id ) {
|
1008 |
-
$meta_key = "_happyforms_option_counter_{$form_id}_{$option_id}";
|
1009 |
-
|
1010 |
-
return $meta_key;
|
1011 |
-
}
|
1012 |
-
|
1013 |
-
endif;
|
1014 |
|
1015 |
if ( ! function_exists( 'happyforms_safe_array_merge' ) ):
|
1016 |
|
992 |
|
993 |
if ( ! function_exists( 'happyforms_is_admin_screen' ) ):
|
994 |
|
995 |
+
function happyforms_is_admin_screen( $id = '' ) {
|
996 |
$current_screen = get_current_screen();
|
997 |
+
|
998 |
+
if ( ! $current_screen ) {
|
999 |
+
return false;
|
1000 |
+
}
|
1001 |
+
|
1002 |
+
if ( empty( $id ) ) {
|
1003 |
+
$is_admin_screen = (
|
1004 |
+
in_array( $current_screen->id, array(
|
1005 |
+
'edit-happyform',
|
1006 |
+
'edit-happyforms-message',
|
1007 |
+
'happyforms-message',
|
1008 |
+
) ) ||
|
1009 |
+
happyforms_is_admin_screen( 'happyforms-welcome' ) ||
|
1010 |
+
happyforms_is_admin_screen( 'happyforms-settings' ) ||
|
1011 |
+
happyforms_is_admin_screen( 'happyforms-integrations' )
|
1012 |
+
);
|
1013 |
+
|
1014 |
+
return $is_admin_screen;
|
1015 |
+
}
|
1016 |
+
|
1017 |
$prefix = sanitize_title( __( 'Forms', 'happyforms' ) );
|
1018 |
$is_admin_screen = "{$prefix}_page_{$id}" === $current_screen->id;
|
1019 |
|
1022 |
|
1023 |
endif;
|
1024 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1025 |
|
1026 |
if ( ! function_exists( 'happyforms_safe_array_merge' ) ):
|
1027 |
|
core/templates/admin/modal-deactivate.php
DELETED
@@ -1,17 +0,0 @@
|
|
1 |
-
<div class="happyforms-modal__heading">
|
2 |
-
<h1><?php _e( 'What about your data?', 'happyforms' ); ?></h1>
|
3 |
-
</div>
|
4 |
-
<div class="happyforms-modal__content">
|
5 |
-
<form>
|
6 |
-
<?php wp_nonce_field( happyforms_get_deactivation()->modal_action ); ?>
|
7 |
-
<label for="happyforms-deactivate-keep-data">
|
8 |
-
<input type="radio" name="keep-data" value="yes" id="happyforms-deactivate-keep-data" checked />
|
9 |
-
<span><?php _e( 'Keep plugin data (recommended)', 'happyforms' ); ?></span>
|
10 |
-
</label>
|
11 |
-
<label for="happyforms-deactivate-remove-data">
|
12 |
-
<input type="radio" name="keep-data" value="no" id="happyforms-deactivate-remove-data" />
|
13 |
-
<span><?php _e( 'Permanently delete plugin data', 'happyforms' ); ?></span>
|
14 |
-
</label>
|
15 |
-
<button type="submit" class="button button-primary button-hero"><?php _e( 'Deactivate Plugin', 'happyforms' ); ?></button>
|
16 |
-
</form>
|
17 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
core/templates/customize-controls/style/code.php
CHANGED
@@ -1,4 +1,4 @@
|
|
1 |
-
<li class="customize-control
|
2 |
<?php if ( ! isset( $control['hide_title'] ) || ! $control['hide_title'] ) : ?>
|
3 |
<label class="customize-control-title" for="<?php echo $control['field']; ?>"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?> <i class="dashicons dashicons-editor-help" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
|
4 |
<?php endif; ?>
|
1 |
+
<li class="customize-control happyforms-code-control" data-target="<?php echo esc_attr( $field['target'] ); ?>" data-mode="<?php echo $control['mode']; ?>" id="customize-control-<?php echo $control['field']; ?>">
|
2 |
<?php if ( ! isset( $control['hide_title'] ) || ! $control['hide_title'] ) : ?>
|
3 |
<label class="customize-control-title" for="<?php echo $control['field']; ?>"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?> <i class="dashicons dashicons-editor-help" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
|
4 |
<?php endif; ?>
|
core/templates/customize-controls/style/divider.php
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
<?php if ( $index > 0 ): ?></ul></li><?php endif; ?>
|
2 |
-
<li class="customize-control control-section
|
3 |
<h3 class="accordion-section-title"><?php echo $control['label']; ?></h3>
|
4 |
</li>
|
5 |
|
1 |
<?php if ( $index > 0 ): ?></ul></li><?php endif; ?>
|
2 |
+
<li class="customize-control control-section happyforms-divider-control" id="customize-control-<?php echo $control['id']; ?>">
|
3 |
<h3 class="accordion-section-title"><?php echo $control['label']; ?></h3>
|
4 |
</li>
|
5 |
|
core/templates/partials/admin-modal-footer.php
DELETED
@@ -1,3 +0,0 @@
|
|
1 |
-
</div>
|
2 |
-
</div>
|
3 |
-
</div>
|
|
|
|
|
|
core/templates/partials/admin-modal-header.php
DELETED
@@ -1,8 +0,0 @@
|
|
1 |
-
<div class="happyforms-modal__overlay">
|
2 |
-
<div class="happyforms-modal__frame <?php echo $settings['classes']; ?>" <?php if ( $settings['dismissible'] ) : ?>data-happyforms-modal-dismissible data-happyforms-modal-id="<?php echo $id; ?>"<?php endif; ?>>
|
3 |
-
<div class="happyforms-modal__header">
|
4 |
-
<button class="happyforms-modal__dismiss">
|
5 |
-
<svg width="24" height="24" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" role="img" aria-hidden="true" focusable="false"><path d="M13 11.8l6.1-6.3-1-1-6.1 6.2-6.1-6.2-1 1 6.1 6.3-6.5 6.7 1 1 6.5-6.6 6.5 6.6 1-1z"></path></svg>
|
6 |
-
</button>
|
7 |
-
</div>
|
8 |
-
<div class="happyforms-modal__body">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
core/templates/parts/customize-checkbox.php
CHANGED
@@ -53,7 +53,7 @@
|
|
53 |
<?php do_action( 'happyforms_part_customize_checkbox_after_options' ); ?>
|
54 |
|
55 |
<?php do_action( 'happyforms_part_customize_checkbox_before_advanced_options' ); ?>
|
56 |
-
|
57 |
<p>
|
58 |
<label>
|
59 |
<input type="checkbox" class="checkbox" value="1" <% if ( instance.show_select_all ) { %>checked="checked"<% } %> data-bind="show_select_all" /> <?php _e( 'Add \'select all\' choice', 'happyforms' ); ?>
|
@@ -107,23 +107,13 @@
|
|
107 |
<option value="block"<%= (instance.display_type == 'block') ? ' selected' : '' %>><?php _e( 'Vertical', 'happyforms' ); ?></option>
|
108 |
</select>
|
109 |
</p>
|
110 |
-
<p class="part-options-width-setting">
|
111 |
-
<label for="<%= instance.id %>_options_width"><?php _e( 'Choices width', 'happyforms' ); ?></label>
|
112 |
-
<select id="<%= instance.id %>_options_width" name="options_width" data-bind="options_width" class="widefat">
|
113 |
-
<option class="display-type--inline display-type--block" value="full"<%= (instance.options_width == 'full') ? ' selected' : '' %>><?php _e( 'Full', 'happyforms' ); ?></option>
|
114 |
-
<option class="display-type--inline" value="half" style="display: <%= ( instance.display_type == 'inline' ) ? 'block' : 'none' %>" <%= (instance.options_width == 'half') ? ' selected' : '' %>><?php _e( 'Half', 'happyforms' ); ?></option>
|
115 |
-
<option class="display-type--inline" value="third" style="display: <%= ( instance.display_type == 'inline' ) ? 'block' : 'none' %>" <%= (instance.options_width == 'third') ? ' selected' : '' %>><?php _e( 'Third', 'happyforms' ); ?></option>
|
116 |
-
<option class="display-type--inline" value="quarter" style="display: <%= ( instance.display_type == 'inline' ) ? 'block' : 'none' %>" <%= (instance.options_width == 'quarter') ? ' selected' : '' %>><?php _e( 'Quarter', 'happyforms' ); ?></option>
|
117 |
-
<option class="display-type--inline display-type--block" value="auto"<%= (instance.options_width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', 'happyforms' ); ?></option>
|
118 |
-
</select>
|
119 |
-
</p>
|
120 |
|
121 |
<?php happyforms_customize_part_width_control(); ?>
|
122 |
|
123 |
<?php do_action( 'happyforms_part_customize_checkbox_after_advanced_options' ); ?>
|
124 |
|
125 |
<p>
|
126 |
-
<label for="<%= instance.id %>_css_class"><?php _e( 'CSS
|
127 |
<input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
|
128 |
</p>
|
129 |
|
53 |
<?php do_action( 'happyforms_part_customize_checkbox_after_options' ); ?>
|
54 |
|
55 |
<?php do_action( 'happyforms_part_customize_checkbox_before_advanced_options' ); ?>
|
56 |
+
|
57 |
<p>
|
58 |
<label>
|
59 |
<input type="checkbox" class="checkbox" value="1" <% if ( instance.show_select_all ) { %>checked="checked"<% } %> data-bind="show_select_all" /> <?php _e( 'Add \'select all\' choice', 'happyforms' ); ?>
|
107 |
<option value="block"<%= (instance.display_type == 'block') ? ' selected' : '' %>><?php _e( 'Vertical', 'happyforms' ); ?></option>
|
108 |
</select>
|
109 |
</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
110 |
|
111 |
<?php happyforms_customize_part_width_control(); ?>
|
112 |
|
113 |
<?php do_action( 'happyforms_part_customize_checkbox_after_advanced_options' ); ?>
|
114 |
|
115 |
<p>
|
116 |
+
<label for="<%= instance.id %>_css_class"><?php _e( 'Additional CSS class(es)', 'happyforms' ); ?></label>
|
117 |
<input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
|
118 |
</p>
|
119 |
|
core/templates/parts/customize-email.php
CHANGED
@@ -55,7 +55,7 @@
|
|
55 |
<?php do_action( 'happyforms_part_customize_email_after_advanced_options' ); ?>
|
56 |
|
57 |
<p>
|
58 |
-
<label for="<%= instance.id %>_css_class"><?php _e( 'CSS
|
59 |
<input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
|
60 |
</p>
|
61 |
|
55 |
<?php do_action( 'happyforms_part_customize_email_after_advanced_options' ); ?>
|
56 |
|
57 |
<p>
|
58 |
+
<label for="<%= instance.id %>_css_class"><?php _e( 'Additional CSS class(es)', 'happyforms' ); ?></label>
|
59 |
<input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
|
60 |
</p>
|
61 |
|
core/templates/parts/customize-multi-line-text.php
CHANGED
@@ -79,7 +79,7 @@
|
|
79 |
<?php do_action( 'happyforms_part_customize_multi_line_text_after_advanced_options' ); ?>
|
80 |
|
81 |
<p>
|
82 |
-
<label for="<%= instance.id %>_css_class"><?php _e( 'CSS
|
83 |
<input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
|
84 |
</p>
|
85 |
|
79 |
<?php do_action( 'happyforms_part_customize_multi_line_text_after_advanced_options' ); ?>
|
80 |
|
81 |
<p>
|
82 |
+
<label for="<%= instance.id %>_css_class"><?php _e( 'Additional CSS class(es)', 'happyforms' ); ?></label>
|
83 |
<input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
|
84 |
</p>
|
85 |
|
core/templates/parts/customize-number.php
CHANGED
@@ -78,7 +78,7 @@
|
|
78 |
<?php happyforms_customize_part_width_control(); ?>
|
79 |
|
80 |
<p>
|
81 |
-
<label for="<%= instance.id %>_css_class"><?php _e( 'CSS
|
82 |
<input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
|
83 |
</p>
|
84 |
|
78 |
<?php happyforms_customize_part_width_control(); ?>
|
79 |
|
80 |
<p>
|
81 |
+
<label for="<%= instance.id %>_css_class"><?php _e( 'Additional CSS class(es)', 'happyforms' ); ?></label>
|
82 |
<input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
|
83 |
</p>
|
84 |
|
core/templates/parts/customize-radio.php
CHANGED
@@ -53,7 +53,7 @@
|
|
53 |
<?php do_action( 'happyforms_part_customize_radio_after_options' ); ?>
|
54 |
|
55 |
<?php do_action( 'happyforms_part_customize_radio_before_advanced_options' ); ?>
|
56 |
-
|
57 |
<p>
|
58 |
<label>
|
59 |
<input type="checkbox" class="checkbox" value="1" <% if ( instance.other_option ) { %>checked="checked"<% } %> data-bind="other_option" /> <?php _e( 'Add \'other\' choice', 'happyforms' ); ?>
|
@@ -81,21 +81,11 @@
|
|
81 |
<option value="block"<%= (instance.display_type == 'block') ? ' selected' : '' %>><?php _e( 'Vertical', 'happyforms' ); ?></option>
|
82 |
</select>
|
83 |
</p>
|
84 |
-
<p class="part-options-width-setting">
|
85 |
-
<label for="<%= instance.id %>_options_width"><?php _e( 'Choices width', 'happyforms' ); ?></label>
|
86 |
-
<select id="<%= instance.id %>_options_width" name="options_width" data-bind="options_width" class="widefat">
|
87 |
-
<option class="display-type--inline display-type--block" value="full"<%= (instance.options_width == 'full') ? ' selected' : '' %>><?php _e( 'Full', 'happyforms' ); ?></option>
|
88 |
-
<option class="display-type--inline" value="half" style="display: <%= ( instance.display_type == 'inline' ) ? 'block' : 'none' %>" <%= (instance.options_width == 'half') ? ' selected' : '' %>><?php _e( 'Half', 'happyforms' ); ?></option>
|
89 |
-
<option class="display-type--inline" value="third" style="display: <%= ( instance.display_type == 'inline' ) ? 'block' : 'none' %>" <%= (instance.options_width == 'third') ? ' selected' : '' %>><?php _e( 'Third', 'happyforms' ); ?></option>
|
90 |
-
<option class="display-type--inline" value="quarter" style="display: <%= ( instance.display_type == 'inline' ) ? 'block' : 'none' %>" <%= (instance.options_width == 'quarter') ? ' selected' : '' %>><?php _e( 'Quarter', 'happyforms' ); ?></option>
|
91 |
-
<option class="display-type--inline display-type--block" value="auto"<%= (instance.options_width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', 'happyforms' ); ?></option>
|
92 |
-
</select>
|
93 |
-
</p>
|
94 |
|
95 |
<?php happyforms_customize_part_width_control(); ?>
|
96 |
|
97 |
<p>
|
98 |
-
<label for="<%= instance.id %>_css_class"><?php _e( 'CSS
|
99 |
<input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
|
100 |
</p>
|
101 |
|
53 |
<?php do_action( 'happyforms_part_customize_radio_after_options' ); ?>
|
54 |
|
55 |
<?php do_action( 'happyforms_part_customize_radio_before_advanced_options' ); ?>
|
56 |
+
|
57 |
<p>
|
58 |
<label>
|
59 |
<input type="checkbox" class="checkbox" value="1" <% if ( instance.other_option ) { %>checked="checked"<% } %> data-bind="other_option" /> <?php _e( 'Add \'other\' choice', 'happyforms' ); ?>
|
81 |
<option value="block"<%= (instance.display_type == 'block') ? ' selected' : '' %>><?php _e( 'Vertical', 'happyforms' ); ?></option>
|
82 |
</select>
|
83 |
</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
84 |
|
85 |
<?php happyforms_customize_part_width_control(); ?>
|
86 |
|
87 |
<p>
|
88 |
+
<label for="<%= instance.id %>_css_class"><?php _e( 'Additional CSS class(es)', 'happyforms' ); ?></label>
|
89 |
<input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
|
90 |
</p>
|
91 |
|
core/templates/parts/customize-select.php
CHANGED
@@ -83,7 +83,7 @@
|
|
83 |
<?php happyforms_customize_part_width_control(); ?>
|
84 |
|
85 |
<p>
|
86 |
-
<label for="<%= instance.id %>_css_class"><?php _e( 'CSS
|
87 |
<input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
|
88 |
</p>
|
89 |
|
83 |
<?php happyforms_customize_part_width_control(); ?>
|
84 |
|
85 |
<p>
|
86 |
+
<label for="<%= instance.id %>_css_class"><?php _e( 'Additional CSS class(es)', 'happyforms' ); ?></label>
|
87 |
<input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
|
88 |
</p>
|
89 |
|
core/templates/parts/customize-single-line-text.php
CHANGED
@@ -54,7 +54,7 @@
|
|
54 |
<?php do_action( 'happyforms_part_customize_single_line_text_after_advanced_options' ); ?>
|
55 |
|
56 |
<p>
|
57 |
-
<label for="<%= instance.id %>_css_class"><?php _e( 'CSS
|
58 |
<input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
|
59 |
</p>
|
60 |
|
54 |
<?php do_action( 'happyforms_part_customize_single_line_text_after_advanced_options' ); ?>
|
55 |
|
56 |
<p>
|
57 |
+
<label for="<%= instance.id %>_css_class"><?php _e( 'Additional CSS class(es)', 'happyforms' ); ?></label>
|
58 |
<input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
|
59 |
</p>
|
60 |
|
happyforms.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* Plugin URI: https://happyforms.io
|
6 |
* Description: We're changin' WordPress forms.
|
7 |
* Author: Happyforms
|
8 |
-
* Version: 1.13.
|
9 |
* Author URI: https://happyforms.io
|
10 |
* Upgrade URI: https://happyforms.io/upgrade
|
11 |
*/
|
@@ -22,7 +22,7 @@ if ( defined( 'HAPPYFORMS_UPGRADE_VERSION' ) ) {
|
|
22 |
/**
|
23 |
* The current version of the plugin.
|
24 |
*/
|
25 |
-
define( 'HAPPYFORMS_VERSION', '1.13.
|
26 |
|
27 |
if ( ! function_exists( 'happyforms_plugin_file' ) ):
|
28 |
/**
|
5 |
* Plugin URI: https://happyforms.io
|
6 |
* Description: We're changin' WordPress forms.
|
7 |
* Author: Happyforms
|
8 |
+
* Version: 1.13.4
|
9 |
* Author URI: https://happyforms.io
|
10 |
* Upgrade URI: https://happyforms.io/upgrade
|
11 |
*/
|
22 |
/**
|
23 |
* The current version of the plugin.
|
24 |
*/
|
25 |
+
define( 'HAPPYFORMS_VERSION', '1.13.4' );
|
26 |
|
27 |
if ( ! function_exists( 'happyforms_plugin_file' ) ):
|
28 |
/**
|
inc/assets/css/dashboard-modals.css
ADDED
@@ -0,0 +1,73 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
*
|
3 |
+
* Upgrade modal
|
4 |
+
*
|
5 |
+
*/
|
6 |
+
.happyforms-modal.happyforms-modal--upgrade .components-modal__content {
|
7 |
+
padding-bottom: 32px;
|
8 |
+
}
|
9 |
+
|
10 |
+
/**
|
11 |
+
*
|
12 |
+
* Onboarding modal
|
13 |
+
*
|
14 |
+
*/
|
15 |
+
.happyforms-modal--onboarding {
|
16 |
+
box-sizing: border-box;
|
17 |
+
overflow-x: hidden;
|
18 |
+
}
|
19 |
+
|
20 |
+
.happyforms-modal--onboarding .components-guide__page {
|
21 |
+
justify-content: flex-start;
|
22 |
+
}
|
23 |
+
|
24 |
+
.happyforms-modal--onboarding .happyforms-modal__header,
|
25 |
+
.happyforms-modal--onboarding .happyforms-modal__body {
|
26 |
+
padding: 24px 32px 0;
|
27 |
+
}
|
28 |
+
|
29 |
+
.happyforms-modal--onboarding .happyforms-modal__body {
|
30 |
+
display: flex;
|
31 |
+
flex-flow: column;
|
32 |
+
justify-content: flex-start;
|
33 |
+
}
|
34 |
+
|
35 |
+
.happyforms-modal--onboarding img {
|
36 |
+
display: block;
|
37 |
+
}
|
38 |
+
|
39 |
+
.happyforms-modal--onboarding h1 {
|
40 |
+
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
|
41 |
+
font-size: 24px;
|
42 |
+
line-height: 1.4;
|
43 |
+
margin: 0 0 8px 0;
|
44 |
+
}
|
45 |
+
|
46 |
+
.happyforms-modal--onboarding label {
|
47 |
+
display: block;
|
48 |
+
margin: 0 0 4px;
|
49 |
+
}
|
50 |
+
|
51 |
+
.happyforms-modal--onboarding .happyforms-modal__header p,
|
52 |
+
.happyforms-modal--onboarding .happyforms-modal__body p {
|
53 |
+
margin: 0;
|
54 |
+
}
|
55 |
+
|
56 |
+
.happyforms-modal--onboarding .happyforms-radio-label {
|
57 |
+
display: flex;
|
58 |
+
align-items: flex-start;
|
59 |
+
margin-top: 20px;
|
60 |
+
}
|
61 |
+
|
62 |
+
.happyforms-modal--onboarding .components-base-control__field .components-button {
|
63 |
+
width: 100%;
|
64 |
+
justify-content: center;
|
65 |
+
}
|
66 |
+
|
67 |
+
.happyforms-modal--onboarding .components-guide__footer {
|
68 |
+
display: none;
|
69 |
+
}
|
70 |
+
|
71 |
+
.happyforms-modal--onboarding .happyforms-modal__footer {
|
72 |
+
padding: 0 32px 32px;
|
73 |
+
}
|
inc/assets/js/admin/dashboard.js
CHANGED
@@ -7,24 +7,13 @@
|
|
7 |
dashboardInit.apply( this, arguments );
|
8 |
|
9 |
$( document ).on( 'click', '#adminmenu #toplevel_page_happyforms a[href="#settings"]', this.openUpgradeModal );
|
10 |
-
$( document ).on( 'click', '
|
11 |
},
|
12 |
|
13 |
openUpgradeModal: function( e ) {
|
14 |
e.preventDefault();
|
15 |
|
16 |
-
happyForms.
|
17 |
-
},
|
18 |
-
|
19 |
-
onModalNavigationItemClick: function( e ) {
|
20 |
-
var $item = $( e.currentTarget );
|
21 |
-
|
22 |
-
$( '.happyforms-modal__pages-page' ).removeClass( 'happyforms-modal__pages-page--active' );
|
23 |
-
$( '.happyforms-modal__navigation-item' ).removeClass( 'happyforms-modal__navigation-item--active' );
|
24 |
-
|
25 |
-
$item.addClass( 'happyforms-modal__navigation-item--active' );
|
26 |
-
$( '.happyforms-modal__pages-page:nth-child(' + ( $item.index() + 1 ) + ')' )
|
27 |
-
.addClass( 'happyforms-modal__pages-page--active' );
|
28 |
},
|
29 |
} );
|
30 |
|
7 |
dashboardInit.apply( this, arguments );
|
8 |
|
9 |
$( document ).on( 'click', '#adminmenu #toplevel_page_happyforms a[href="#settings"]', this.openUpgradeModal );
|
10 |
+
$( document ).on( 'click', '#adminmenu #toplevel_page_happyforms a[href="#integrations"]', this.openUpgradeModal );
|
11 |
},
|
12 |
|
13 |
openUpgradeModal: function( e ) {
|
14 |
e.preventDefault();
|
15 |
|
16 |
+
happyForms.modals.openUpgradeModal();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
17 |
},
|
18 |
} );
|
19 |
|
inc/assets/jsx/build/admin/dashboard-modals.asset.php
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
<?php return array('dependencies' => array('wp-components', 'wp-element', 'wp-i18n', 'wp-polyfill'), 'version' => '2047e42fce51ae5a6e52eeebcb14dd39');
|
inc/assets/jsx/build/admin/dashboard-modals.js
ADDED
@@ -0,0 +1,421 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/******/ (function(modules) { // webpackBootstrap
|
2 |
+
/******/ // The module cache
|
3 |
+
/******/ var installedModules = {};
|
4 |
+
/******/
|
5 |
+
/******/ // The require function
|
6 |
+
/******/ function __webpack_require__(moduleId) {
|
7 |
+
/******/
|
8 |
+
/******/ // Check if module is in cache
|
9 |
+
/******/ if(installedModules[moduleId]) {
|
10 |
+
/******/ return installedModules[moduleId].exports;
|
11 |
+
/******/ }
|
12 |
+
/******/ // Create a new module (and put it into the cache)
|
13 |
+
/******/ var module = installedModules[moduleId] = {
|
14 |
+
/******/ i: moduleId,
|
15 |
+
/******/ l: false,
|
16 |
+
/******/ exports: {}
|
17 |
+
/******/ };
|
18 |
+
/******/
|
19 |
+
/******/ // Execute the module function
|
20 |
+
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
21 |
+
/******/
|
22 |
+
/******/ // Flag the module as loaded
|
23 |
+
/******/ module.l = true;
|
24 |
+
/******/
|
25 |
+
/******/ // Return the exports of the module
|
26 |
+
/******/ return module.exports;
|
27 |
+
/******/ }
|
28 |
+
/******/
|
29 |
+
/******/
|
30 |
+
/******/ // expose the modules object (__webpack_modules__)
|
31 |
+
/******/ __webpack_require__.m = modules;
|
32 |
+
/******/
|
33 |
+
/******/ // expose the module cache
|
34 |
+
/******/ __webpack_require__.c = installedModules;
|
35 |
+
/******/
|
36 |
+
/******/ // define getter function for harmony exports
|
37 |
+
/******/ __webpack_require__.d = function(exports, name, getter) {
|
38 |
+
/******/ if(!__webpack_require__.o(exports, name)) {
|
39 |
+
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
|
40 |
+
/******/ }
|
41 |
+
/******/ };
|
42 |
+
/******/
|
43 |
+
/******/ // define __esModule on exports
|
44 |
+
/******/ __webpack_require__.r = function(exports) {
|
45 |
+
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
46 |
+
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
47 |
+
/******/ }
|
48 |
+
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
49 |
+
/******/ };
|
50 |
+
/******/
|
51 |
+
/******/ // create a fake namespace object
|
52 |
+
/******/ // mode & 1: value is a module id, require it
|
53 |
+
/******/ // mode & 2: merge all properties of value into the ns
|
54 |
+
/******/ // mode & 4: return value when already ns object
|
55 |
+
/******/ // mode & 8|1: behave like require
|
56 |
+
/******/ __webpack_require__.t = function(value, mode) {
|
57 |
+
/******/ if(mode & 1) value = __webpack_require__(value);
|
58 |
+
/******/ if(mode & 8) return value;
|
59 |
+
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
|
60 |
+
/******/ var ns = Object.create(null);
|
61 |
+
/******/ __webpack_require__.r(ns);
|
62 |
+
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
|
63 |
+
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
|
64 |
+
/******/ return ns;
|
65 |
+
/******/ };
|
66 |
+
/******/
|
67 |
+
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
68 |
+
/******/ __webpack_require__.n = function(module) {
|
69 |
+
/******/ var getter = module && module.__esModule ?
|
70 |
+
/******/ function getDefault() { return module['default']; } :
|
71 |
+
/******/ function getModuleExports() { return module; };
|
72 |
+
/******/ __webpack_require__.d(getter, 'a', getter);
|
73 |
+
/******/ return getter;
|
74 |
+
/******/ };
|
75 |
+
/******/
|
76 |
+
/******/ // Object.prototype.hasOwnProperty.call
|
77 |
+
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
|
78 |
+
/******/
|
79 |
+
/******/ // __webpack_public_path__
|
80 |
+
/******/ __webpack_require__.p = "";
|
81 |
+
/******/
|
82 |
+
/******/
|
83 |
+
/******/ // Load entry module and return exports
|
84 |
+
/******/ return __webpack_require__(__webpack_require__.s = "./build/inc/assets/jsx/src/admin/dashboard-modals.js");
|
85 |
+
/******/ })
|
86 |
+
/************************************************************************/
|
87 |
+
/******/ ({
|
88 |
+
|
89 |
+
/***/ "./build/core/assets/jsx/src/admin/dashboard-modals.js":
|
90 |
+
/*!*************************************************************!*\
|
91 |
+
!*** ./build/core/assets/jsx/src/admin/dashboard-modals.js ***!
|
92 |
+
\*************************************************************/
|
93 |
+
/*! exports provided: default */
|
94 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
95 |
+
|
96 |
+
"use strict";
|
97 |
+
__webpack_require__.r(__webpack_exports__);
|
98 |
+
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
|
99 |
+
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
|
100 |
+
/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element");
|
101 |
+
/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__);
|
102 |
+
/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @wordpress/components */ "@wordpress/components");
|
103 |
+
/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_components__WEBPACK_IMPORTED_MODULE_2__);
|
104 |
+
/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
|
105 |
+
/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__);
|
106 |
+
|
107 |
+
|
108 |
+
|
109 |
+
|
110 |
+
|
111 |
+
/**
|
112 |
+
*
|
113 |
+
* Modal handler class
|
114 |
+
*
|
115 |
+
*/
|
116 |
+
|
117 |
+
/* harmony default export */ __webpack_exports__["default"] = (function ($, settings) {
|
118 |
+
const {
|
119 |
+
render
|
120 |
+
} = wp.element;
|
121 |
+
/**
|
122 |
+
*
|
123 |
+
* Deactivation modal
|
124 |
+
*
|
125 |
+
*/
|
126 |
+
|
127 |
+
const DeactivateModal = props => {
|
128 |
+
const [option, setOption] = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["useState"])('yes');
|
129 |
+
|
130 |
+
const onChange = e => {
|
131 |
+
setOption(e.target.value);
|
132 |
+
};
|
133 |
+
|
134 |
+
const onSubmit = () => {
|
135 |
+
$.post(ajaxurl, {
|
136 |
+
action: settings.deactivateModalAction,
|
137 |
+
_wpnonce: settings.deactivateModalNonce,
|
138 |
+
keep_data: option
|
139 |
+
}, function () {
|
140 |
+
window.location.href = props.redirectURL;
|
141 |
+
});
|
142 |
+
return props.onRequestClose();
|
143 |
+
};
|
144 |
+
|
145 |
+
return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_2__["Modal"], {
|
146 |
+
className: "happyforms-modal happyforms-modal--deactivate",
|
147 |
+
title: "What about your data?",
|
148 |
+
onRequestClose: props.onRequestClose
|
149 |
+
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])("div", {
|
150 |
+
className: "happyforms-modal__body",
|
151 |
+
onChange: onChange
|
152 |
+
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])("label", {
|
153 |
+
htmlFor: "happyforms-keep-data-yes"
|
154 |
+
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])("input", {
|
155 |
+
type: "radio",
|
156 |
+
id: "happyforms-keep-data-yes",
|
157 |
+
name: "happyforms-keep-data",
|
158 |
+
value: "yes",
|
159 |
+
defaultChecked: true
|
160 |
+
}), Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])("span", null, Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('Keep plugin data (recommended)', 'happyforms'))), Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])("label", {
|
161 |
+
htmlFor: "happyforms-keep-data-no"
|
162 |
+
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])("input", {
|
163 |
+
type: "radio",
|
164 |
+
id: "happyforms-keep-data-no",
|
165 |
+
name: "happyforms-keep-data",
|
166 |
+
value: "no"
|
167 |
+
}), Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])("span", null, Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('Permanently delete plugin data', 'happyforms')))), Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])("div", {
|
168 |
+
className: "happyforms-modal__footer"
|
169 |
+
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])("div", {
|
170 |
+
className: "happyforms-modal__footer-button-group"
|
171 |
+
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_2__["Button"], {
|
172 |
+
isPrimary: true,
|
173 |
+
onClick: onSubmit,
|
174 |
+
text: option == 'yes' ? Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('Deactivate Plugin', 'happyforms') : Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('Delete Data and Deactivate Plugin', 'happyforms')
|
175 |
+
}))));
|
176 |
+
};
|
177 |
+
/**
|
178 |
+
*
|
179 |
+
* Modal wrapper
|
180 |
+
*
|
181 |
+
*/
|
182 |
+
|
183 |
+
|
184 |
+
const ModalProvider = props => {
|
185 |
+
return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_2__["SlotFillProvider"], null, props.modal, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_2__["Popover"].Slot, null));
|
186 |
+
};
|
187 |
+
|
188 |
+
return class DashboardModals {
|
189 |
+
constructor() {
|
190 |
+
_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "area", null);
|
191 |
+
|
192 |
+
this.area = document.getElementById('happyforms-modals-area');
|
193 |
+
}
|
194 |
+
|
195 |
+
openDeactivateModal(redirectURL) {
|
196 |
+
var modal = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])(DeactivateModal, {
|
197 |
+
onRequestClose: this.closeModal.bind(this, 'deactivate'),
|
198 |
+
redirectURL: redirectURL
|
199 |
+
});
|
200 |
+
this.openModal(modal);
|
201 |
+
}
|
202 |
+
|
203 |
+
openModal(modal) {
|
204 |
+
render(Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])(ModalProvider, {
|
205 |
+
modal: modal
|
206 |
+
}), this.area);
|
207 |
+
}
|
208 |
+
|
209 |
+
closeModal(modal) {
|
210 |
+
render(Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["createElement"])(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null), this.area);
|
211 |
+
$.post(ajaxurl, {
|
212 |
+
action: settings.actionModalDismiss,
|
213 |
+
id: modal
|
214 |
+
});
|
215 |
+
}
|
216 |
+
|
217 |
+
};
|
218 |
+
});
|
219 |
+
|
220 |
+
/***/ }),
|
221 |
+
|
222 |
+
/***/ "./build/inc/assets/jsx/src/admin/dashboard-modals.js":
|
223 |
+
/*!************************************************************!*\
|
224 |
+
!*** ./build/inc/assets/jsx/src/admin/dashboard-modals.js ***!
|
225 |
+
\************************************************************/
|
226 |
+
/*! no exports provided */
|
227 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
228 |
+
|
229 |
+
"use strict";
|
230 |
+
__webpack_require__.r(__webpack_exports__);
|
231 |
+
/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element");
|
232 |
+
/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
|
233 |
+
/* harmony import */ var _happyforms_core_jsx_src_admin_dashboard_modals__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @happyforms/core/jsx/src/admin/dashboard-modals */ "./build/core/assets/jsx/src/admin/dashboard-modals.js");
|
234 |
+
/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @wordpress/components */ "@wordpress/components");
|
235 |
+
/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_components__WEBPACK_IMPORTED_MODULE_2__);
|
236 |
+
/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
|
237 |
+
/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__);
|
238 |
+
|
239 |
+
|
240 |
+
|
241 |
+
|
242 |
+
|
243 |
+
|
244 |
+
(function ($, settings) {
|
245 |
+
/**
|
246 |
+
*
|
247 |
+
* Onboarding modal
|
248 |
+
*
|
249 |
+
*/
|
250 |
+
const OnboardingModal = props => {
|
251 |
+
const imageURL = `${settings.pluginURL}/inc/assets/img/welcome.gif`;
|
252 |
+
const [email, setEmail] = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["useState"])('');
|
253 |
+
const [poweredBy, setPoweredBy] = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["useState"])(false);
|
254 |
+
|
255 |
+
const onEmailChange = e => {
|
256 |
+
setEmail(e.target.value);
|
257 |
+
};
|
258 |
+
|
259 |
+
const onRequestClose = () => {
|
260 |
+
$.post(ajaxurl, {
|
261 |
+
action: settings.onboardingModalAction,
|
262 |
+
_wpnonce: settings.onboardingModalNonce,
|
263 |
+
email: email,
|
264 |
+
powered_by: poweredBy ? 1 : 0
|
265 |
+
});
|
266 |
+
return props.onRequestClose();
|
267 |
+
};
|
268 |
+
|
269 |
+
return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_2__["Guide"], {
|
270 |
+
onFinish: onRequestClose,
|
271 |
+
className: "happyforms-modal happyforms-modal--onboarding",
|
272 |
+
pages: [{
|
273 |
+
image: Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("picture", null, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("img", {
|
274 |
+
src: imageURL,
|
275 |
+
width: "450",
|
276 |
+
height: "276"
|
277 |
+
})),
|
278 |
+
content: Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("div", {
|
279 |
+
className: "happyforms-modal__header"
|
280 |
+
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("h1", null, Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('Welcome to Happyforms', 'happyforms')), Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("p", null, Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('We\'ll send you a few emails each month about plugin updates. And don\'t sweat it, you can unsubscribe anytime.', 'happyforms'))), Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("div", {
|
281 |
+
className: "happyforms-modal__body"
|
282 |
+
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("label", null, Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('Email address', 'happyforms')), Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("input", {
|
283 |
+
type: "email",
|
284 |
+
value: email,
|
285 |
+
onChange: onEmailChange,
|
286 |
+
autoFocus: true
|
287 |
+
}), Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("label", {
|
288 |
+
className: "happyforms-radio-label"
|
289 |
+
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_2__["CheckboxControl"], {
|
290 |
+
checked: poweredBy,
|
291 |
+
onChange: setPoweredBy
|
292 |
+
}), Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("span", null, Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('Yes, I want to help support the free plugin by adding a powered by link in the footer of my forms and emails.', 'happyforms')))), Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("div", {
|
293 |
+
className: "happyforms-modal__footer"
|
294 |
+
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_2__["BaseControl"], null, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_2__["Button"], {
|
295 |
+
isPrimary: true,
|
296 |
+
onClick: onRequestClose,
|
297 |
+
text: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('Continue', 'happyforms')
|
298 |
+
}))))
|
299 |
+
}]
|
300 |
+
});
|
301 |
+
};
|
302 |
+
/**
|
303 |
+
*
|
304 |
+
* Upgrade modal
|
305 |
+
*
|
306 |
+
*/
|
307 |
+
|
308 |
+
|
309 |
+
const UpgradeModal = props => {
|
310 |
+
return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_2__["Modal"], {
|
311 |
+
className: "happyforms-modal happyforms-modal--upgrade",
|
312 |
+
title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('You\’ll need to upgrade to access this', 'happyforms'),
|
313 |
+
onRequestClose: props.onRequestClose
|
314 |
+
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("div", {
|
315 |
+
className: "happyforms-modal__body"
|
316 |
+
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("p", null, Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('We offer several, affordable paid plans that include our best features. Upgrade today and increase your customer interactions.', 'happyforms'))), Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("div", {
|
317 |
+
className: "happyforms-modal__footer"
|
318 |
+
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("div", {
|
319 |
+
className: "happyforms-modal__footer-button-group"
|
320 |
+
}, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_2__["Button"], {
|
321 |
+
isPrimary: true,
|
322 |
+
href: "https://happyforms.io/upgrade",
|
323 |
+
target: "_blank",
|
324 |
+
text: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('Start Your Risk-Free 14-Day Trial', 'happyforms')
|
325 |
+
})), Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("p", null, Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('Or', 'happyforms'), " ", Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_components__WEBPACK_IMPORTED_MODULE_2__["Button"], {
|
326 |
+
isLink: true,
|
327 |
+
onClick: props.onRequestClose,
|
328 |
+
text: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__["__"])('continue with free version', 'happyforms')
|
329 |
+
}), ".")));
|
330 |
+
};
|
331 |
+
|
332 |
+
const DashboardModalsBaseClass = Object(_happyforms_core_jsx_src_admin_dashboard_modals__WEBPACK_IMPORTED_MODULE_1__["default"])($, settings);
|
333 |
+
|
334 |
+
class DashboardModalsClass extends DashboardModalsBaseClass {
|
335 |
+
openOnboardingModal() {
|
336 |
+
var modal = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(OnboardingModal, {
|
337 |
+
onRequestClose: this.closeModal.bind(this, 'onboarding'),
|
338 |
+
status: settings.trackingStatus
|
339 |
+
});
|
340 |
+
this.openModal(modal);
|
341 |
+
}
|
342 |
+
|
343 |
+
openUpgradeModal() {
|
344 |
+
var modal = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(UpgradeModal, {
|
345 |
+
onRequestClose: this.closeModal.bind(this, 'upgrade')
|
346 |
+
});
|
347 |
+
this.openModal(modal);
|
348 |
+
}
|
349 |
+
|
350 |
+
}
|
351 |
+
|
352 |
+
;
|
353 |
+
var happyForms = window.happyForms || {};
|
354 |
+
window.happyForms = happyForms;
|
355 |
+
happyForms.modals = new DashboardModalsClass();
|
356 |
+
})(jQuery, _happyFormsDashboardModalsSettings);
|
357 |
+
|
358 |
+
/***/ }),
|
359 |
+
|
360 |
+
/***/ "./node_modules/@babel/runtime/helpers/defineProperty.js":
|
361 |
+
/*!***************************************************************!*\
|
362 |
+
!*** ./node_modules/@babel/runtime/helpers/defineProperty.js ***!
|
363 |
+
\***************************************************************/
|
364 |
+
/*! no static exports found */
|
365 |
+
/***/ (function(module, exports) {
|
366 |
+
|
367 |
+
function _defineProperty(obj, key, value) {
|
368 |
+
if (key in obj) {
|
369 |
+
Object.defineProperty(obj, key, {
|
370 |
+
value: value,
|
371 |
+
enumerable: true,
|
372 |
+
configurable: true,
|
373 |
+
writable: true
|
374 |
+
});
|
375 |
+
} else {
|
376 |
+
obj[key] = value;
|
377 |
+
}
|
378 |
+
|
379 |
+
return obj;
|
380 |
+
}
|
381 |
+
|
382 |
+
module.exports = _defineProperty;
|
383 |
+
module.exports["default"] = module.exports, module.exports.__esModule = true;
|
384 |
+
|
385 |
+
/***/ }),
|
386 |
+
|
387 |
+
/***/ "@wordpress/components":
|
388 |
+
/*!************************************!*\
|
389 |
+
!*** external ["wp","components"] ***!
|
390 |
+
\************************************/
|
391 |
+
/*! no static exports found */
|
392 |
+
/***/ (function(module, exports) {
|
393 |
+
|
394 |
+
(function() { module.exports = window["wp"]["components"]; }());
|
395 |
+
|
396 |
+
/***/ }),
|
397 |
+
|
398 |
+
/***/ "@wordpress/element":
|
399 |
+
/*!*********************************!*\
|
400 |
+
!*** external ["wp","element"] ***!
|
401 |
+
\*********************************/
|
402 |
+
/*! no static exports found */
|
403 |
+
/***/ (function(module, exports) {
|
404 |
+
|
405 |
+
(function() { module.exports = window["wp"]["element"]; }());
|
406 |
+
|
407 |
+
/***/ }),
|
408 |
+
|
409 |
+
/***/ "@wordpress/i18n":
|
410 |
+
/*!******************************!*\
|
411 |
+
!*** external ["wp","i18n"] ***!
|
412 |
+
\******************************/
|
413 |
+
/*! no static exports found */
|
414 |
+
/***/ (function(module, exports) {
|
415 |
+
|
416 |
+
(function() { module.exports = window["wp"]["i18n"]; }());
|
417 |
+
|
418 |
+
/***/ })
|
419 |
+
|
420 |
+
/******/ });
|
421 |
+
//# sourceMappingURL=dashboard-modals.js.map
|
inc/assets/jsx/build/admin/dashboard-modals.js.map
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./build/core/assets/jsx/src/admin/dashboard-modals.js","webpack:///./build/inc/assets/jsx/src/admin/dashboard-modals.js","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js","webpack:///external [\"wp\",\"components\"]","webpack:///external [\"wp\",\"element\"]","webpack:///external [\"wp\",\"i18n\"]"],"names":["$","settings","render","wp","element","DeactivateModal","props","option","setOption","useState","onChange","e","target","value","onSubmit","post","ajaxurl","action","deactivateModalAction","_wpnonce","deactivateModalNonce","keep_data","window","location","href","redirectURL","onRequestClose","__","ModalProvider","modal","DashboardModals","constructor","area","document","getElementById","openDeactivateModal","closeModal","bind","openModal","actionModalDismiss","id","OnboardingModal","imageURL","pluginURL","email","setEmail","poweredBy","setPoweredBy","onEmailChange","onboardingModalAction","onboardingModalNonce","powered_by","image","content","UpgradeModal","DashboardModalsBaseClass","DashboardModalsClass","openOnboardingModal","trackingStatus","openUpgradeModal","happyForms","modals","jQuery","_happyFormsDashboardModalsSettings"],"mappings":";QAAA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;;;;;;;;;;;;;;;;;AClFA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;;AACe,yEAAUA,CAAV,EAAaC,QAAb,EAAwB;AAEtC,QAAM;AAAEC;AAAF,MAAaC,EAAE,CAACC,OAAtB;AAEA;AACD;AACA;AACA;AACA;;AACC,QAAMC,eAAe,GAAKC,KAAF,IAAa;AACpC,UAAM,CAAEC,MAAF,EAAUC,SAAV,IAAwBC,mEAAQ,CAAE,KAAF,CAAtC;;AAEA,UAAMC,QAAQ,GAAKC,CAAF,IAAS;AACzBH,eAAS,CAAEG,CAAC,CAACC,MAAF,CAASC,KAAX,CAAT;AACA,KAFD;;AAIA,UAAMC,QAAQ,GAAG,MAAM;AACtBd,OAAC,CAACe,IAAF,CAAQC,OAAR,EAAiB;AAChBC,cAAM,EAAEhB,QAAQ,CAACiB,qBADD;AAEhBC,gBAAQ,EAAElB,QAAQ,CAACmB,oBAFH;AAGhBC,iBAAS,EAAEd;AAHK,OAAjB,EAIG,YAAW;AACbe,cAAM,CAACC,QAAP,CAAgBC,IAAhB,GAAuBlB,KAAK,CAACmB,WAA7B;AACA,OAND;AAQA,aAAOnB,KAAK,CAACoB,cAAN,EAAP;AACA,KAVD;;AAYA,WACC,yEAAC,2DAAD;AAAO,eAAS,EAAC,+CAAjB;AAAiE,WAAK,EAAC,uBAAvE;AAA+F,oBAAc,EAAGpB,KAAK,CAACoB;AAAtH,OACC;AAAK,eAAS,EAAC,wBAAf;AAAwC,cAAQ,EAAGhB;AAAnD,OACC;AAAO,aAAO,EAAC;AAAf,OACC;AACC,UAAI,EAAC,OADN;AAEC,QAAE,EAAC,0BAFJ;AAGC,UAAI,EAAC,sBAHN;AAIC,WAAK,EAAC,KAJP;AAKC,oBAAc;AALf,MADD,EAQC,uFAAQiB,0DAAE,CAAE,gCAAF,EAAoC,YAApC,CAAV,CARD,CADD,EAWC;AAAO,aAAO,EAAC;AAAf,OACC;AACC,UAAI,EAAC,OADN;AAEC,QAAE,EAAC,yBAFJ;AAGC,UAAI,EAAC,sBAHN;AAIC,WAAK,EAAC;AAJP,MADD,EAOC,uFAAQA,0DAAE,CAAE,gCAAF,EAAoC,YAApC,CAAV,CAPD,CAXD,CADD,EAsBC;AAAK,eAAS,EAAC;AAAf,OACC;AAAK,eAAS,EAAC;AAAf,OACC,yEAAC,4DAAD;AACC,eAAS,EAAE,IADZ;AAEC,aAAO,EAAGb,QAFX;AAGC,UAAI,EAAGP,MAAM,IAAI,KAAV,GACNoB,0DAAE,CAAE,mBAAF,EAAuB,YAAvB,CADI,GAENA,0DAAE,CAAE,mCAAF,EAAuC,YAAvC;AALJ,MADD,CADD,CAtBD,CADD;AAoCA,GAvDD;AAyDA;AACD;AACA;AACA;AACA;;;AACC,QAAMC,aAAa,GAAKtB,KAAF,IAAa;AAClC,WACC,yEAAC,sEAAD,QACGA,KAAK,CAACuB,KADT,EAEC,yEAAC,6DAAD,CAAS,IAAT,OAFD,CADD;AAMA,GAPD;;AASA,SAAO,MAAMC,eAAN,CAAsB;AAI5BC,eAAW,GAAG;AAAA,iGAFP,IAEO;;AACb,WAAKC,IAAL,GAAYC,QAAQ,CAACC,cAAT,CAAyB,wBAAzB,CAAZ;AACA;;AAEDC,uBAAmB,CAAEV,WAAF,EAAgB;AAClC,UAAII,KAAK,GAAG,yEAAC,eAAD;AAAiB,sBAAc,EAAG,KAAKO,UAAL,CAAgBC,IAAhB,CAAsB,IAAtB,EAA4B,YAA5B,CAAlC;AAA+E,mBAAW,EAAGZ;AAA7F,QAAZ;AAEA,WAAKa,SAAL,CAAgBT,KAAhB;AACA;;AAEDS,aAAS,CAAET,KAAF,EAAU;AAClB3B,YAAM,CAAE,yEAAC,aAAD;AAAe,aAAK,EAAE2B;AAAtB,QAAF,EAAiD,KAAKG,IAAtD,CAAN;AACA;;AAEDI,cAAU,CAAEP,KAAF,EAAU;AACnB3B,YAAM,CAAE,2IAAF,EAAS,KAAK8B,IAAd,CAAN;AAEAhC,OAAC,CAACe,IAAF,CAAQC,OAAR,EAAiB;AAChBC,cAAM,EAAEhB,QAAQ,CAACsC,kBADD;AAEhBC,UAAE,EAAEX;AAFY,OAAjB;AAIA;;AAzB2B,GAA7B;AA6BA,C;;;;;;;;;;;;;;;;;;;;;ACtHD;AACA;AACA;AACA;;AAEA,CAAE,UAAU7B,CAAV,EAAaC,QAAb,EAAwB;AAEzB;AACD;AACA;AACA;AACA;AACC,QAAMwC,eAAe,GAAKnC,KAAF,IAAa;AACpC,UAAMoC,QAAQ,GAAI,GAAEzC,QAAQ,CAAC0C,SAAU,6BAAvC;AACA,UAAM,CAAEC,KAAF,EAASC,QAAT,IAAsBpC,mEAAQ,CAAE,EAAF,CAApC;AACA,UAAM,CAAEqC,SAAF,EAAaC,YAAb,IAA8BtC,mEAAQ,CAAE,KAAF,CAA5C;;AAEA,UAAMuC,aAAa,GAAKrC,CAAF,IAAS;AAC9BkC,cAAQ,CAAElC,CAAC,CAACC,MAAF,CAASC,KAAX,CAAR;AACA,KAFD;;AAIA,UAAMa,cAAc,GAAG,MAAM;AAC5B1B,OAAC,CAACe,IAAF,CAAQC,OAAR,EAAiB;AAChBC,cAAM,EAAEhB,QAAQ,CAACgD,qBADD;AAEhB9B,gBAAQ,EAAElB,QAAQ,CAACiD,oBAFH;AAGhBN,aAAK,EAAEA,KAHS;AAIhBO,kBAAU,EAAEL,SAAS,GAAG,CAAH,GAAO;AAJZ,OAAjB;AAOA,aAAOxC,KAAK,CAACoB,cAAN,EAAP;AACA,KATD;;AAWA,WACC,yEAAC,2DAAD;AACC,cAAQ,EAAGA,cADZ;AAEC,eAAS,EAAC,+CAFX;AAGC,WAAK,EAAG,CACP;AACC0B,aAAK,EACJ,0FACC;AAAK,aAAG,EAAEV,QAAV;AAAoB,eAAK,EAAC,KAA1B;AAAgC,gBAAM,EAAC;AAAvC,UADD,CAFF;AAMCW,eAAO,EACN,4IACA;AAAK,mBAAS,EAAC;AAAf,WACC,qFAAM1B,0DAAE,CAAE,uBAAF,EAA2B,YAA3B,CAAR,CADD,EAEC,oFAAKA,0DAAE,CAAE,iHAAF,EAAqH,YAArH,CAAP,CAFD,CADA,EAKA;AAAK,mBAAS,EAAC;AAAf,WACC,wFAASA,0DAAE,CAAE,eAAF,EAAmB,YAAnB,CAAX,CADD,EAEC;AAAO,cAAI,EAAC,OAAZ;AAAoB,eAAK,EAAGiB,KAA5B;AAAoC,kBAAQ,EAAGI,aAA/C;AAA+D,mBAAS;AAAxE,UAFD,EAGC;AAAO,mBAAS,EAAC;AAAjB,WACC,yEAAC,qEAAD;AAAiB,iBAAO,EAAGF,SAA3B;AAAuC,kBAAQ,EAAGC;AAAlD,UADD,EAEC,uFAAQpB,0DAAE,CAAE,+GAAF,EAAmH,YAAnH,CAAV,CAFD,CAHD,CALA,EAaA;AAAK,mBAAS,EAAC;AAAf,WACC,yEAAC,iEAAD,QACC,yEAAC,4DAAD;AAAQ,mBAAS,EAAE,IAAnB;AAAyB,iBAAO,EAAGD,cAAnC;AAAoD,cAAI,EAAGC,0DAAE,CAAE,UAAF,EAAc,YAAd;AAA7D,UADD,CADD,CAbA;AAPF,OADO;AAHT,MADD;AAoCA,GAxDD;AA0DA;AACD;AACA;AACA;AACA;;;AACC,QAAM2B,YAAY,GAAKhD,KAAF,IAAa;AACjC,WACC,yEAAC,2DAAD;AACC,eAAS,EAAC,4CADX;AAEC,WAAK,EAAIqB,0DAAE,CAAE,wCAAF,EAA4C,YAA5C,CAFZ;AAGC,oBAAc,EAAGrB,KAAK,CAACoB;AAHxB,OAIC;AAAK,eAAS,EAAC;AAAf,OACC,oFAAKC,0DAAE,CAAE,gIAAF,EAAoI,YAApI,CAAP,CADD,CAJD,EAOC;AAAK,eAAS,EAAC;AAAf,OACC;AAAK,eAAS,EAAC;AAAf,OACC,yEAAC,4DAAD;AACC,eAAS,EAAG,IADb;AAEC,UAAI,EAAC,+BAFN;AAGC,YAAM,EAAC,QAHR;AAIC,UAAI,EAAGA,0DAAE,CAAE,mCAAF,EAAuC,YAAvC;AAJV,MADD,CADD,EASC,oFAAKA,0DAAE,CAAE,IAAF,EAAQ,YAAR,CAAP,OAAgC,yEAAC,4DAAD;AAAQ,YAAM,EAAG,IAAjB;AAAwB,aAAO,EAAGrB,KAAK,CAACoB,cAAxC;AAAyD,UAAI,EAAGC,0DAAE,CAAE,4BAAF,EAAgC,YAAhC;AAAlE,MAAhC,MATD,CAPD,CADD;AAqBA,GAtBD;;AAwBA,QAAM4B,wBAAwB,GAAGzB,+FAAe,CAAE9B,CAAF,EAAKC,QAAL,CAAhD;;AAEA,QAAMuD,oBAAN,SAAmCD,wBAAnC,CAA4D;AAE3DE,uBAAmB,GAAG;AACrB,UAAI5B,KAAK,GACR,yEAAC,eAAD;AACC,sBAAc,EAAG,KAAKO,UAAL,CAAgBC,IAAhB,CAAsB,IAAtB,EAA4B,YAA5B,CADlB;AAEC,cAAM,EAAGpC,QAAQ,CAACyD;AAFnB,QADD;AAMA,WAAKpB,SAAL,CAAgBT,KAAhB;AACA;;AAED8B,oBAAgB,GAAG;AAClB,UAAI9B,KAAK,GAAG,yEAAC,YAAD;AAAc,sBAAc,EAAG,KAAKO,UAAL,CAAgBC,IAAhB,CAAsB,IAAtB,EAA4B,SAA5B;AAA/B,QAAZ;AAEA,WAAKC,SAAL,CAAgBT,KAAhB;AACA;;AAhB0D;;AAkB3D;AAED,MAAI+B,UAAU,GAAGtC,MAAM,CAACsC,UAAP,IAAqB,EAAtC;AACAtC,QAAM,CAACsC,UAAP,GAAoBA,UAApB;AAEAA,YAAU,CAACC,MAAX,GAAoB,IAAIL,oBAAJ,EAApB;AAEA,CAzHD,EAyHKM,MAzHL,EAyHaC,kCAzHb,E;;;;;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;;AAEA;AACA;;AAEA;AACA,6E;;;;;;;;;;;AChBA,aAAa,6CAA6C,EAAE,I;;;;;;;;;;;ACA5D,aAAa,0CAA0C,EAAE,I;;;;;;;;;;;ACAzD,aAAa,uCAAuC,EAAE,I","file":"dashboard-modals.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./build/inc/assets/jsx/src/admin/dashboard-modals.js\");\n","import { SlotFillProvider, Button, Modal, Guide, Popover, Notice, ExternalLink, TextControl, CheckboxControl, BaseControl } from '@wordpress/components';\nimport { useState, useReducer, useRef } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n *\n * Modal handler class\n *\n */\nexport default function( $, settings ) {\n\n\tconst { render } = wp.element;\n\n\t/**\n\t *\n\t * Deactivation modal\n\t *\n\t */\n\tconst DeactivateModal = ( props ) => {\n\t\tconst [ option, setOption ] = useState( 'yes' );\n\n\t\tconst onChange = ( e ) => {\n\t\t\tsetOption( e.target.value );\n\t\t};\n\n\t\tconst onSubmit = () => {\n\t\t\t$.post( ajaxurl, {\n\t\t\t\taction: settings.deactivateModalAction,\n\t\t\t\t_wpnonce: settings.deactivateModalNonce,\n\t\t\t\tkeep_data: option, \n\t\t\t}, function() {\n\t\t\t\twindow.location.href = props.redirectURL;\n\t\t\t} );\n\t\t\t\n\t\t\treturn props.onRequestClose();\n\t\t}\n\n\t\treturn (\n\t\t\t<Modal className=\"happyforms-modal happyforms-modal--deactivate\" title=\"What about your data?\" onRequestClose={ props.onRequestClose }>\n\t\t\t\t<div className=\"happyforms-modal__body\" onChange={ onChange }>\n\t\t\t\t\t<label htmlFor=\"happyforms-keep-data-yes\">\n\t\t\t\t\t\t<input \n\t\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\t\tid=\"happyforms-keep-data-yes\"\n\t\t\t\t\t\t\tname=\"happyforms-keep-data\" \n\t\t\t\t\t\t\tvalue=\"yes\"\n\t\t\t\t\t\t\tdefaultChecked\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<span>{ __( 'Keep plugin data (recommended)', 'happyforms' ) }</span>\n\t\t\t\t\t</label>\n\t\t\t\t\t<label htmlFor=\"happyforms-keep-data-no\">\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\t\tid=\"happyforms-keep-data-no\"\n\t\t\t\t\t\t\tname=\"happyforms-keep-data\"\n\t\t\t\t\t\t\tvalue=\"no\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<span>{ __( 'Permanently delete plugin data', 'happyforms' ) }</span>\n\t\t\t\t\t</label>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"happyforms-modal__footer\">\n\t\t\t\t\t<div className=\"happyforms-modal__footer-button-group\">\n\t\t\t\t\t\t<Button \n\t\t\t\t\t\t\tisPrimary={true} \n\t\t\t\t\t\t\tonClick={ onSubmit } \n\t\t\t\t\t\t\ttext={ option == 'yes' ? \n\t\t\t\t\t\t\t\t__( 'Deactivate Plugin', 'happyforms' ) : \n\t\t\t\t\t\t\t\t__( 'Delete Data and Deactivate Plugin', 'happyforms' ) }>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Modal>\n\t\t);\n\t};\n\n\t/**\n\t *\n\t * Modal wrapper\n\t *\n\t */\n\tconst ModalProvider = ( props ) => {\n\t\treturn (\n\t\t\t<SlotFillProvider>\n\t\t\t\t{ props.modal }\n\t\t\t\t<Popover.Slot />\n\t\t\t</SlotFillProvider>\n\t\t);\n\t};\n\t\n\treturn class DashboardModals {\n\n\t\tarea = null;\n\t\t\n\t\tconstructor() {\n\t\t\tthis.area = document.getElementById( 'happyforms-modals-area' );\n\t\t}\n\n\t\topenDeactivateModal( redirectURL ) {\n\t\t\tvar modal = <DeactivateModal onRequestClose={ this.closeModal.bind( this, 'deactivate' ) } redirectURL={ redirectURL } />\n\n\t\t\tthis.openModal( modal );\n\t\t}\n\n\t\topenModal( modal ) {\n\t\t\trender( <ModalProvider modal={modal}></ModalProvider>, this.area );\n\t\t}\n\n\t\tcloseModal( modal ) {\n\t\t\trender( <></>, this.area );\n\n\t\t\t$.post( ajaxurl, {\n\t\t\t\taction: settings.actionModalDismiss,\n\t\t\t\tid: modal, \n\t\t\t} );\n\t\t}\n\n\t};\n\n}","import DashboardModals from '@happyforms/core/jsx/src/admin/dashboard-modals';\nimport { SlotFillProvider, Button, Modal, Guide, Popover, Notice, ExternalLink, TextControl, CheckboxControl, BaseControl } from '@wordpress/components';\nimport { useState, useReducer, useRef } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\n( function( $, settings ) {\n\n\t/**\n\t *\n\t * Onboarding modal\n\t *\n\t */\n\tconst OnboardingModal = ( props ) => {\n\t\tconst imageURL = `${settings.pluginURL}/inc/assets/img/welcome.gif`;\n\t\tconst [ email, setEmail ] = useState( '' );\n\t\tconst [ poweredBy, setPoweredBy ] = useState( false );\n\n\t\tconst onEmailChange = ( e ) => {\n\t\t\tsetEmail( e.target.value );\n\t\t};\n\n\t\tconst onRequestClose = () => {\n\t\t\t$.post( ajaxurl, {\n\t\t\t\taction: settings.onboardingModalAction,\n\t\t\t\t_wpnonce: settings.onboardingModalNonce,\n\t\t\t\temail: email,\n\t\t\t\tpowered_by: poweredBy ? 1 : 0,\n\t\t\t} );\n\n\t\t\treturn props.onRequestClose();\n\t\t}\n\n\t\treturn(\n\t\t\t<Guide\n\t\t\t\tonFinish={ onRequestClose }\n\t\t\t\tclassName=\"happyforms-modal happyforms-modal--onboarding\"\n\t\t\t\tpages={ [\n\t\t\t\t\t{\n\t\t\t\t\t\timage: (\n\t\t\t\t\t\t\t<picture>\n\t\t\t\t\t\t\t\t<img src={imageURL} width=\"450\" height=\"276\" />\n\t\t\t\t\t\t\t</picture>\n\t\t\t\t\t\t),\n\t\t\t\t\t\tcontent: (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<div className=\"happyforms-modal__header\">\n\t\t\t\t\t\t\t\t<h1>{ __( 'Welcome to Happyforms', 'happyforms' ) }</h1>\n\t\t\t\t\t\t\t\t<p>{ __( 'We\\'ll send you a few emails each month about plugin updates. And don\\'t sweat it, you can unsubscribe anytime.', 'happyforms' ) }</p>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"happyforms-modal__body\">\n\t\t\t\t\t\t\t\t<label>{ __( 'Email address', 'happyforms' ) }</label>\n\t\t\t\t\t\t\t\t<input type=\"email\" value={ email } onChange={ onEmailChange } autoFocus />\n\t\t\t\t\t\t\t\t<label className=\"happyforms-radio-label\">\n\t\t\t\t\t\t\t\t\t<CheckboxControl checked={ poweredBy } onChange={ setPoweredBy } />\n\t\t\t\t\t\t\t\t\t<span>{ __( 'Yes, I want to help support the free plugin by adding a powered by link in the footer of my forms and emails.', 'happyforms' ) }</span>\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"happyforms-modal__footer\">\n\t\t\t\t\t\t\t\t<BaseControl>\n\t\t\t\t\t\t\t\t\t<Button isPrimary={true} onClick={ onRequestClose } text={ __( 'Continue', 'happyforms' ) }></Button>\n\t\t\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t),\n\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t/>\n\t\t);\n\t}\n\n\t/**\n\t *\n\t * Upgrade modal\n\t *\n\t */\n\tconst UpgradeModal = ( props ) => {\n\t\treturn (\n\t\t\t<Modal \n\t\t\t\tclassName=\"happyforms-modal happyforms-modal--upgrade\" \n\t\t\t\ttitle={ __( 'You\\’ll need to upgrade to access this', 'happyforms' ) } \n\t\t\t\tonRequestClose={ props.onRequestClose }>\n\t\t\t\t<div className=\"happyforms-modal__body\">\n\t\t\t\t\t<p>{ __( 'We offer several, affordable paid plans that include our best features. Upgrade today and increase your customer interactions.', 'happyforms' ) }</p>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"happyforms-modal__footer\">\n\t\t\t\t\t<div className=\"happyforms-modal__footer-button-group\">\n\t\t\t\t\t\t<Button \n\t\t\t\t\t\t\tisPrimary={ true } \n\t\t\t\t\t\t\thref=\"https://happyforms.io/upgrade\" \n\t\t\t\t\t\t\ttarget=\"_blank\" \n\t\t\t\t\t\t\ttext={ __( 'Start Your Risk-Free 14-Day Trial', 'happyforms' ) }>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</div>\n\t\t\t\t\t<p>{ __( 'Or', 'happyforms' ) } <Button isLink={ true } onClick={ props.onRequestClose } text={ __( 'continue with free version', 'happyforms' ) }></Button>.</p>\n\t\t\t\t</div>\n\t\t\t</Modal>\n\t\t);\n\t}\n\n\tconst DashboardModalsBaseClass = DashboardModals( $, settings );\n\t\n\tclass DashboardModalsClass extends DashboardModalsBaseClass {\n\n\t\topenOnboardingModal() {\n\t\t\tvar modal = (\n\t\t\t\t<OnboardingModal \n\t\t\t\t\tonRequestClose={ this.closeModal.bind( this, 'onboarding' ) } \n\t\t\t\t\tstatus={ settings.trackingStatus } />\n\t\t\t);\n\n\t\t\tthis.openModal( modal );\n\t\t}\n\n\t\topenUpgradeModal() {\n\t\t\tvar modal = <UpgradeModal onRequestClose={ this.closeModal.bind( this, 'upgrade' ) } />\n\n\t\t\tthis.openModal( modal );\n\t\t}\n\n\t};\n\n\tvar happyForms = window.happyForms || {};\n\twindow.happyForms = happyForms;\n\t\n\thappyForms.modals = new DashboardModalsClass();\n\n} )( jQuery, _happyFormsDashboardModalsSettings );","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","(function() { module.exports = window[\"wp\"][\"components\"]; }());","(function() { module.exports = window[\"wp\"][\"element\"]; }());","(function() { module.exports = window[\"wp\"][\"i18n\"]; }());"],"sourceRoot":""}
|
inc/assets/jsx/src/admin/dashboard-modals.js
ADDED
@@ -0,0 +1,127 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import DashboardModals from '@happyforms/core/jsx/src/admin/dashboard-modals';
|
2 |
+
import { SlotFillProvider, Button, Modal, Guide, Popover, Notice, ExternalLink, TextControl, CheckboxControl, BaseControl } from '@wordpress/components';
|
3 |
+
import { useState, useReducer, useRef } from '@wordpress/element';
|
4 |
+
import { __, sprintf } from '@wordpress/i18n';
|
5 |
+
|
6 |
+
( function( $, settings ) {
|
7 |
+
|
8 |
+
/**
|
9 |
+
*
|
10 |
+
* Onboarding modal
|
11 |
+
*
|
12 |
+
*/
|
13 |
+
const OnboardingModal = ( props ) => {
|
14 |
+
const imageURL = `${settings.pluginURL}/inc/assets/img/welcome.gif`;
|
15 |
+
const [ email, setEmail ] = useState( '' );
|
16 |
+
const [ poweredBy, setPoweredBy ] = useState( false );
|
17 |
+
|
18 |
+
const onEmailChange = ( e ) => {
|
19 |
+
setEmail( e.target.value );
|
20 |
+
};
|
21 |
+
|
22 |
+
const onRequestClose = () => {
|
23 |
+
$.post( ajaxurl, {
|
24 |
+
action: settings.onboardingModalAction,
|
25 |
+
_wpnonce: settings.onboardingModalNonce,
|
26 |
+
email: email,
|
27 |
+
powered_by: poweredBy ? 1 : 0,
|
28 |
+
} );
|
29 |
+
|
30 |
+
return props.onRequestClose();
|
31 |
+
}
|
32 |
+
|
33 |
+
return(
|
34 |
+
<Guide
|
35 |
+
onFinish={ onRequestClose }
|
36 |
+
className="happyforms-modal happyforms-modal--onboarding"
|
37 |
+
pages={ [
|
38 |
+
{
|
39 |
+
image: (
|
40 |
+
<picture>
|
41 |
+
<img src={imageURL} width="450" height="276" />
|
42 |
+
</picture>
|
43 |
+
),
|
44 |
+
content: (
|
45 |
+
<>
|
46 |
+
<div className="happyforms-modal__header">
|
47 |
+
<h1>{ __( 'Welcome to Happyforms', 'happyforms' ) }</h1>
|
48 |
+
<p>{ __( 'We\'ll send you a few emails each month about plugin updates. And don\'t sweat it, you can unsubscribe anytime.', 'happyforms' ) }</p>
|
49 |
+
</div>
|
50 |
+
<div className="happyforms-modal__body">
|
51 |
+
<label>{ __( 'Email address', 'happyforms' ) }</label>
|
52 |
+
<input type="email" value={ email } onChange={ onEmailChange } autoFocus />
|
53 |
+
<label className="happyforms-radio-label">
|
54 |
+
<CheckboxControl checked={ poweredBy } onChange={ setPoweredBy } />
|
55 |
+
<span>{ __( 'Yes, I want to help support the free plugin by adding a powered by link in the footer of my forms and emails.', 'happyforms' ) }</span>
|
56 |
+
</label>
|
57 |
+
</div>
|
58 |
+
<div className="happyforms-modal__footer">
|
59 |
+
<BaseControl>
|
60 |
+
<Button isPrimary={true} onClick={ onRequestClose } text={ __( 'Continue', 'happyforms' ) }></Button>
|
61 |
+
</BaseControl>
|
62 |
+
</div>
|
63 |
+
</>
|
64 |
+
),
|
65 |
+
},
|
66 |
+
] }
|
67 |
+
/>
|
68 |
+
);
|
69 |
+
}
|
70 |
+
|
71 |
+
/**
|
72 |
+
*
|
73 |
+
* Upgrade modal
|
74 |
+
*
|
75 |
+
*/
|
76 |
+
const UpgradeModal = ( props ) => {
|
77 |
+
return (
|
78 |
+
<Modal
|
79 |
+
className="happyforms-modal happyforms-modal--upgrade"
|
80 |
+
title={ __( 'You\’ll need to upgrade to access this', 'happyforms' ) }
|
81 |
+
onRequestClose={ props.onRequestClose }>
|
82 |
+
<div className="happyforms-modal__body">
|
83 |
+
<p>{ __( 'We offer several, affordable paid plans that include our best features. Upgrade today and increase your customer interactions.', 'happyforms' ) }</p>
|
84 |
+
</div>
|
85 |
+
<div className="happyforms-modal__footer">
|
86 |
+
<div className="happyforms-modal__footer-button-group">
|
87 |
+
<Button
|
88 |
+
isPrimary={ true }
|
89 |
+
href="https://happyforms.io/upgrade"
|
90 |
+
target="_blank"
|
91 |
+
text={ __( 'Start Your Risk-Free 14-Day Trial', 'happyforms' ) }>
|
92 |
+
</Button>
|
93 |
+
</div>
|
94 |
+
<p>{ __( 'Or', 'happyforms' ) } <Button isLink={ true } onClick={ props.onRequestClose } text={ __( 'continue with free version', 'happyforms' ) }></Button>.</p>
|
95 |
+
</div>
|
96 |
+
</Modal>
|
97 |
+
);
|
98 |
+
}
|
99 |
+
|
100 |
+
const DashboardModalsBaseClass = DashboardModals( $, settings );
|
101 |
+
|
102 |
+
class DashboardModalsClass extends DashboardModalsBaseClass {
|
103 |
+
|
104 |
+
openOnboardingModal() {
|
105 |
+
var modal = (
|
106 |
+
<OnboardingModal
|
107 |
+
onRequestClose={ this.closeModal.bind( this, 'onboarding' ) }
|
108 |
+
status={ settings.trackingStatus } />
|
109 |
+
);
|
110 |
+
|
111 |
+
this.openModal( modal );
|
112 |
+
}
|
113 |
+
|
114 |
+
openUpgradeModal() {
|
115 |
+
var modal = <UpgradeModal onRequestClose={ this.closeModal.bind( this, 'upgrade' ) } />
|
116 |
+
|
117 |
+
this.openModal( modal );
|
118 |
+
}
|
119 |
+
|
120 |
+
};
|
121 |
+
|
122 |
+
var happyForms = window.happyForms || {};
|
123 |
+
window.happyForms = happyForms;
|
124 |
+
|
125 |
+
happyForms.modals = new DashboardModalsClass();
|
126 |
+
|
127 |
+
} )( jQuery, _happyFormsDashboardModalsSettings );
|
inc/classes/class-happyforms.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
class HappyForms extends HappyForms_Core {
|
3 |
|
4 |
public $default_notice;
|
5 |
-
|
6 |
public $action_archive = 'archive';
|
7 |
|
8 |
public $onboarding_list_url = 'https://emailoctopus.com/lists/a58bf658-425e-11ea-be00-06b4694bee2a/members/embedded/1.3/add';
|
@@ -21,9 +21,10 @@ class HappyForms extends HappyForms_Core {
|
|
21 |
add_filter( 'happyforms_email_controls', array( $this, 'add_dummy_email_controls' ) );
|
22 |
add_action( 'parse_request', array( $this, 'parse_archive_request' ) );
|
23 |
add_action( 'admin_init', [ $this, 'register_modals' ] );
|
24 |
-
add_action( '
|
25 |
add_action( 'happyforms_modal_dismissed', [ $this, 'modal_dismissed' ] );
|
26 |
add_action( "wp_ajax_{$this->action_onboarding}", [ $this, 'ajax_action_onboarding' ] );
|
|
|
27 |
add_action( 'happyforms_form_after', [ $this, 'output_powered_by_form' ] );
|
28 |
add_action( 'happyforms_email_owner_after', [ $this, 'output_powered_by_email' ] );
|
29 |
add_action( 'happyforms_email_user_after', [ $this, 'output_powered_by_email' ] );
|
@@ -148,12 +149,6 @@ class HappyForms extends HappyForms_Core {
|
|
148 |
'label' => __( 'Require respondents to review a submission before submitting', 'happyforms' ),
|
149 |
);
|
150 |
|
151 |
-
$controls[1900] = array(
|
152 |
-
'type' => 'checkbox_dummy',
|
153 |
-
'dummy_id' => 'disable_submit_until_valid',
|
154 |
-
'label' => __( 'Disable buttons until required fields are answered', 'happyforms' ),
|
155 |
-
);
|
156 |
-
|
157 |
$controls[2300] = array(
|
158 |
'type' => 'checkbox_dummy',
|
159 |
'dummy_id' => 'restrict_entries',
|
@@ -260,6 +255,12 @@ class HappyForms extends HappyForms_Core {
|
|
260 |
array( 'happyforms-admin' ), HAPPYFORMS_VERSION, true
|
261 |
);
|
262 |
|
|
|
|
|
|
|
|
|
|
|
|
|
263 |
$this->enqueue_onboarding_modal();
|
264 |
}
|
265 |
|
@@ -332,78 +333,59 @@ class HappyForms extends HappyForms_Core {
|
|
332 |
public function register_modals() {
|
333 |
$modals = happyforms_get_dashboard_modals();
|
334 |
|
335 |
-
$modals->register_modal( 'upgrade'
|
336 |
-
|
337 |
-
] );
|
338 |
-
|
339 |
-
$modals->register_modal( 'onboarding', [ $this, 'modal_onboarding_callback' ], [
|
340 |
-
'classes' => 'happyforms-modal__frame--onboarding',
|
341 |
-
'dismissible' => true,
|
342 |
-
] );
|
343 |
}
|
344 |
|
345 |
-
public function
|
346 |
$screen = get_current_screen();
|
347 |
|
348 |
if ( ! $screen ) {
|
349 |
return;
|
350 |
}
|
351 |
|
352 |
-
if ( 'edit-happyform'
|
353 |
return;
|
354 |
}
|
355 |
|
356 |
-
|
357 |
-
|
358 |
-
if ( $modals->is_dismissed( 'onboarding' ) ) {
|
359 |
return;
|
360 |
}
|
361 |
|
362 |
-
|
363 |
-
|
364 |
-
happyforms_get_plugin_url() . 'inc/assets/js/admin/onboarding.js',
|
365 |
-
array( 'happyforms-free-admin' ), HAPPYFORMS_VERSION, true
|
366 |
-
);
|
367 |
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
}
|
372 |
|
373 |
-
|
374 |
-
|
375 |
-
}
|
376 |
|
377 |
-
|
378 |
-
require( happyforms_get_include_folder() . '/templates/admin/modal-onboarding.php' );
|
379 |
}
|
380 |
|
381 |
-
public function
|
382 |
$screen = get_current_screen();
|
383 |
|
384 |
if ( ! $screen ) {
|
385 |
return;
|
386 |
}
|
387 |
|
388 |
-
if ( 'edit-happyform'
|
389 |
-
return;
|
390 |
-
}
|
391 |
-
|
392 |
-
if ( happyforms_get_dashboard_modals()->is_dismissed( 'onboarding' ) ) {
|
393 |
return;
|
394 |
}
|
395 |
|
396 |
-
$
|
397 |
-
$status = $tracking->get_status();
|
398 |
|
399 |
-
if (
|
400 |
return;
|
401 |
}
|
402 |
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
}
|
408 |
|
409 |
public function modal_dismissed( $id ) {
|
@@ -426,11 +408,18 @@ class HappyForms extends HappyForms_Core {
|
|
426 |
wp_remote_post( $this->onboarding_list_url, array(
|
427 |
'body' => array(
|
428 |
'field_0' => $email,
|
429 |
-
),
|
430 |
) );
|
431 |
}
|
432 |
}
|
433 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
434 |
public function output_powered_by_form() {
|
435 |
if ( apply_filters( 'happyforms_force_hide_powered_by', false ) === true ) {
|
436 |
return;
|
@@ -441,8 +430,8 @@ class HappyForms extends HappyForms_Core {
|
|
441 |
}
|
442 |
|
443 |
?>
|
444 |
-
<p class="happyforms-powered-by"><?php printf(
|
445 |
-
'<a href="%1$s" style="font-size: 12px; color: black; text-decoration: underline;">%2$s</a>',
|
446 |
'https://happyforms.io/?utm_source=footer&utm_medium=form&utm_campaign=public_form_footer',
|
447 |
__( 'Build your own WordPress form with Happyforms', 'happyforms' )
|
448 |
); ?></p>
|
@@ -459,8 +448,8 @@ class HappyForms extends HappyForms_Core {
|
|
459 |
}
|
460 |
|
461 |
?>
|
462 |
-
<p><?php printf(
|
463 |
-
'<a href="%1$s">%2$s</a>',
|
464 |
'https://happyforms.io/?utm_source=footer&utm_medium=email&utm_campaign=public_email_footer',
|
465 |
__( 'Build your own WordPress form with Happyforms', 'happyforms' )
|
466 |
); ?></p>
|
@@ -488,14 +477,14 @@ class HappyForms extends HappyForms_Core {
|
|
488 |
$message_post_type = happyforms_get_message_controller()->dummy_type;
|
489 |
$current_post_type = get_current_screen()->post_type;
|
490 |
|
491 |
-
$is_activity_screen = (
|
492 |
in_array( $pagenow, array( 'edit.php', 'post.php' ) )
|
493 |
-
&& ( $current_post_type === $message_post_type )
|
494 |
);
|
495 |
|
496 |
-
$is_integrations_screen = (
|
497 |
-
isset( $_GET['page'] )
|
498 |
-
&& 'happyforms-integrations' === $_GET['page']
|
499 |
);
|
500 |
|
501 |
if ( ! $is_activity_screen && ! $is_integrations_screen ) {
|
@@ -503,38 +492,15 @@ class HappyForms extends HappyForms_Core {
|
|
503 |
}
|
504 |
|
505 |
?>
|
506 |
-
<script type="text/html" id="happyforms-upgrade-modal-template">
|
507 |
-
<?php
|
508 |
-
$settings = array(
|
509 |
-
'classes' => 'happyforms-modal__frame--upgrade',
|
510 |
-
'dismissible' => false
|
511 |
-
);
|
512 |
-
require( happyforms_get_core_folder() . '/templates/partials/admin-modal-header.php' );
|
513 |
-
require( happyforms_get_include_folder() . '/templates/admin/modal-upgrade.php' );
|
514 |
-
require( happyforms_get_core_folder() . '/templates/partials/admin-modal-footer.php' );
|
515 |
-
?>
|
516 |
-
</script>
|
517 |
-
|
518 |
<script type="text/javascript">
|
519 |
( function( $ ) {
|
520 |
|
521 |
-
|
522 |
-
var closeModal = happyForms.dashboard.closeModal;
|
523 |
-
|
524 |
-
happyForms.dashboard.openModal = function() {
|
525 |
-
$( 'body' ).addClass( 'modal-open' );
|
526 |
-
$( 'body' ).append( $( '#happyforms-upgrade-modal-template' ).html() );
|
527 |
-
|
528 |
-
$( document ).one( 'click', '.happyforms-modal__overlay', happyForms.dashboard.closeModal );
|
529 |
-
$( document ).one( 'click', '.happyforms-modal__dismiss', happyForms.dashboard.closeModal );
|
530 |
-
}
|
531 |
-
|
532 |
-
happyForms.dashboard.closeModal = function() {
|
533 |
window.location.href = '<?php echo get_admin_url() . 'edit.php?post_type=happyform'; ?>';
|
534 |
}
|
535 |
|
536 |
$( function() {
|
537 |
-
happyForms.
|
538 |
} );
|
539 |
|
540 |
} )( jQuery );
|
2 |
class HappyForms extends HappyForms_Core {
|
3 |
|
4 |
public $default_notice;
|
5 |
+
|
6 |
public $action_archive = 'archive';
|
7 |
|
8 |
public $onboarding_list_url = 'https://emailoctopus.com/lists/a58bf658-425e-11ea-be00-06b4694bee2a/members/embedded/1.3/add';
|
21 |
add_filter( 'happyforms_email_controls', array( $this, 'add_dummy_email_controls' ) );
|
22 |
add_action( 'parse_request', array( $this, 'parse_archive_request' ) );
|
23 |
add_action( 'admin_init', [ $this, 'register_modals' ] );
|
24 |
+
add_action( 'current_screen', array( $this, 'redirect_to_forms_page' ) );
|
25 |
add_action( 'happyforms_modal_dismissed', [ $this, 'modal_dismissed' ] );
|
26 |
add_action( "wp_ajax_{$this->action_onboarding}", [ $this, 'ajax_action_onboarding' ] );
|
27 |
+
add_filter( 'happyforms_dashboard_modal_settings', [ $this, 'get_dashboard_modal_settings' ] );
|
28 |
add_action( 'happyforms_form_after', [ $this, 'output_powered_by_form' ] );
|
29 |
add_action( 'happyforms_email_owner_after', [ $this, 'output_powered_by_email' ] );
|
30 |
add_action( 'happyforms_email_user_after', [ $this, 'output_powered_by_email' ] );
|
149 |
'label' => __( 'Require respondents to review a submission before submitting', 'happyforms' ),
|
150 |
);
|
151 |
|
|
|
|
|
|
|
|
|
|
|
|
|
152 |
$controls[2300] = array(
|
153 |
'type' => 'checkbox_dummy',
|
154 |
'dummy_id' => 'restrict_entries',
|
255 |
array( 'happyforms-admin' ), HAPPYFORMS_VERSION, true
|
256 |
);
|
257 |
|
258 |
+
wp_enqueue_style(
|
259 |
+
'happyforms-dashboard-modals-upgrade',
|
260 |
+
happyforms_get_plugin_url() . 'inc/assets/css/dashboard-modals.css',
|
261 |
+
array( 'happyforms-dashboard-modals' ), HAPPYFORMS_VERSION
|
262 |
+
);
|
263 |
+
|
264 |
$this->enqueue_onboarding_modal();
|
265 |
}
|
266 |
|
333 |
public function register_modals() {
|
334 |
$modals = happyforms_get_dashboard_modals();
|
335 |
|
336 |
+
$modals->register_modal( 'upgrade' );
|
337 |
+
$modals->register_modal( 'onboarding', [ 'dismissible' => true ] );
|
|
|
|
|
|
|
|
|
|
|
|
|
338 |
}
|
339 |
|
340 |
+
public function redirect_to_forms_page() {
|
341 |
$screen = get_current_screen();
|
342 |
|
343 |
if ( ! $screen ) {
|
344 |
return;
|
345 |
}
|
346 |
|
347 |
+
if ( 'edit-happyform' === $screen->id ) {
|
348 |
return;
|
349 |
}
|
350 |
|
351 |
+
if ( happyforms_get_dashboard_modals()->is_dismissed( 'onboarding' ) ) {
|
|
|
|
|
352 |
return;
|
353 |
}
|
354 |
|
355 |
+
$tracking = happyforms_get_tracking();
|
356 |
+
$status = $tracking->get_status();
|
|
|
|
|
|
|
357 |
|
358 |
+
if ( 1 < intval( $status['status'] ) ) {
|
359 |
+
return;
|
360 |
+
}
|
|
|
361 |
|
362 |
+
$url = admin_url( 'edit.php?post_type=happyform' );
|
363 |
+
wp_safe_redirect( $url );
|
|
|
364 |
|
365 |
+
exit;
|
|
|
366 |
}
|
367 |
|
368 |
+
public function enqueue_onboarding_modal() {
|
369 |
$screen = get_current_screen();
|
370 |
|
371 |
if ( ! $screen ) {
|
372 |
return;
|
373 |
}
|
374 |
|
375 |
+
if ( 'edit-happyform' !== $screen->id ) {
|
|
|
|
|
|
|
|
|
376 |
return;
|
377 |
}
|
378 |
|
379 |
+
$modals = happyforms_get_dashboard_modals();
|
|
|
380 |
|
381 |
+
if ( $modals->is_dismissed( 'onboarding' ) ) {
|
382 |
return;
|
383 |
}
|
384 |
|
385 |
+
wp_add_inline_script(
|
386 |
+
'happyforms-dashboard-modals',
|
387 |
+
"( function( $ ) { $( function() { happyForms.modals.openOnboardingModal(); } ); } )( jQuery );"
|
388 |
+
);
|
389 |
}
|
390 |
|
391 |
public function modal_dismissed( $id ) {
|
408 |
wp_remote_post( $this->onboarding_list_url, array(
|
409 |
'body' => array(
|
410 |
'field_0' => $email,
|
411 |
+
),
|
412 |
) );
|
413 |
}
|
414 |
}
|
415 |
|
416 |
+
public function get_dashboard_modal_settings( $settings ) {
|
417 |
+
$settings['onboardingModalAction'] = $this->action_onboarding;
|
418 |
+
$settings['onboardingModalNonce'] = wp_create_nonce( $this->action_onboarding );
|
419 |
+
|
420 |
+
return $settings;
|
421 |
+
}
|
422 |
+
|
423 |
public function output_powered_by_form() {
|
424 |
if ( apply_filters( 'happyforms_force_hide_powered_by', false ) === true ) {
|
425 |
return;
|
430 |
}
|
431 |
|
432 |
?>
|
433 |
+
<p class="happyforms-powered-by"><?php printf(
|
434 |
+
'<a href="%1$s" style="font-size: 12px; color: black; text-decoration: underline;">%2$s</a>',
|
435 |
'https://happyforms.io/?utm_source=footer&utm_medium=form&utm_campaign=public_form_footer',
|
436 |
__( 'Build your own WordPress form with Happyforms', 'happyforms' )
|
437 |
); ?></p>
|
448 |
}
|
449 |
|
450 |
?>
|
451 |
+
<p><?php printf(
|
452 |
+
'<a href="%1$s">%2$s</a>',
|
453 |
'https://happyforms.io/?utm_source=footer&utm_medium=email&utm_campaign=public_email_footer',
|
454 |
__( 'Build your own WordPress form with Happyforms', 'happyforms' )
|
455 |
); ?></p>
|
477 |
$message_post_type = happyforms_get_message_controller()->dummy_type;
|
478 |
$current_post_type = get_current_screen()->post_type;
|
479 |
|
480 |
+
$is_activity_screen = (
|
481 |
in_array( $pagenow, array( 'edit.php', 'post.php' ) )
|
482 |
+
&& ( $current_post_type === $message_post_type )
|
483 |
);
|
484 |
|
485 |
+
$is_integrations_screen = (
|
486 |
+
isset( $_GET['page'] )
|
487 |
+
&& 'happyforms-integrations' === $_GET['page']
|
488 |
);
|
489 |
|
490 |
if ( ! $is_activity_screen && ! $is_integrations_screen ) {
|
492 |
}
|
493 |
|
494 |
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
495 |
<script type="text/javascript">
|
496 |
( function( $ ) {
|
497 |
|
498 |
+
happyForms.modals.closeModal = function() {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
499 |
window.location.href = '<?php echo get_admin_url() . 'edit.php?post_type=happyform'; ?>';
|
500 |
}
|
501 |
|
502 |
$( function() {
|
503 |
+
happyForms.modals.openUpgradeModal();
|
504 |
} );
|
505 |
|
506 |
} )( jQuery );
|
inc/classes/class-message-controller.php
CHANGED
@@ -92,118 +92,6 @@ class HappyForms_Message_Controller {
|
|
92 |
return self::$instance;
|
93 |
}
|
94 |
|
95 |
-
public function get_post_fields() {
|
96 |
-
$fields = array(
|
97 |
-
'post_title' => '',
|
98 |
-
'post_type' => $this->post_type,
|
99 |
-
'post_status' => 'publish',
|
100 |
-
);
|
101 |
-
|
102 |
-
return $fields;
|
103 |
-
}
|
104 |
-
|
105 |
-
/**
|
106 |
-
* Create a new message post object.
|
107 |
-
*
|
108 |
-
* @since 1.0
|
109 |
-
*
|
110 |
-
* @param array $form The message form data.
|
111 |
-
* @param array $submission The message form data.
|
112 |
-
*
|
113 |
-
* @return int|boolean
|
114 |
-
*/
|
115 |
-
public function create( $form, $submission ) {
|
116 |
-
$post_data = $this->get_insert_post_data( $form, $submission );
|
117 |
-
$message_id = wp_insert_post( wp_slash( $post_data ), true );
|
118 |
-
|
119 |
-
wp_update_post( array(
|
120 |
-
'ID' => $message_id,
|
121 |
-
'post_title' => happyforms_get_message_title( $message_id ),
|
122 |
-
) );
|
123 |
-
|
124 |
-
do_action( 'happyforms_response_created', $message_id, $form );
|
125 |
-
|
126 |
-
return $message_id;
|
127 |
-
}
|
128 |
-
|
129 |
-
public function get( $post_ids, $force = false ) {
|
130 |
-
$args = md5( serialize( func_get_args() ) );
|
131 |
-
$key = "_happyforms_cache_responses_get_{$args}";
|
132 |
-
$found = false;
|
133 |
-
$result = happyforms_cache_get( $key, $found );
|
134 |
-
|
135 |
-
if ( false === $found || $force ) {
|
136 |
-
$result = $this->do_get( $post_ids );
|
137 |
-
happyforms_cache_set( $key, $result );
|
138 |
-
}
|
139 |
-
|
140 |
-
return $result;
|
141 |
-
}
|
142 |
-
|
143 |
-
public function do_get( $post_ids = '' ) {
|
144 |
-
$query_params = array(
|
145 |
-
'post_type' => $this->post_type,
|
146 |
-
'post_status' => array( 'publish', 'draft', 'trash' ),
|
147 |
-
'posts_per_page' => -1,
|
148 |
-
);
|
149 |
-
|
150 |
-
if ( ! empty( $post_ids ) ) {
|
151 |
-
if ( is_numeric( $post_ids ) ) {
|
152 |
-
$query_params['p'] = $post_ids;
|
153 |
-
} else if ( is_array( $post_ids ) ) {
|
154 |
-
$query_params['post__in'] = $post_ids;
|
155 |
-
}
|
156 |
-
}
|
157 |
-
|
158 |
-
$messages = get_posts( $query_params );
|
159 |
-
$message_entries = array_map( array( $this, 'to_array'), $messages );
|
160 |
-
|
161 |
-
if ( is_numeric( $post_ids ) ) {
|
162 |
-
if ( count( $message_entries ) > 0 ) {
|
163 |
-
return $message_entries[0];
|
164 |
-
} else {
|
165 |
-
return false;
|
166 |
-
}
|
167 |
-
}
|
168 |
-
|
169 |
-
return $message_entries;
|
170 |
-
}
|
171 |
-
|
172 |
-
public function get_insert_post_data( $form, $submission ) {
|
173 |
-
$defaults = $this->get_post_fields();
|
174 |
-
$defaults_meta = $this->get_meta_fields();
|
175 |
-
$raw_request = $this->get_raw_request( $form, $submission );
|
176 |
-
$message_meta = wp_parse_args( array(
|
177 |
-
'form_id' => $form['ID'],
|
178 |
-
'request' => $raw_request,
|
179 |
-
), $defaults_meta );
|
180 |
-
$message_meta = array_merge( $message_meta, $submission );
|
181 |
-
$message_meta = happyforms_prefix_meta( $message_meta );
|
182 |
-
$post_data = array_merge( $defaults, array(
|
183 |
-
'meta_input' => $message_meta
|
184 |
-
) );
|
185 |
-
|
186 |
-
return $post_data;
|
187 |
-
}
|
188 |
-
|
189 |
-
public function get_raw_request( $form, $submission ) {
|
190 |
-
$request = array();
|
191 |
-
|
192 |
-
foreach( $form['parts'] as $part_id => $part ) {
|
193 |
-
$part_name = happyforms_get_part_name( $part, $form );
|
194 |
-
|
195 |
-
if ( ! isset( $_REQUEST[$part_name] ) ) {
|
196 |
-
continue;
|
197 |
-
}
|
198 |
-
|
199 |
-
$part_class = happyforms_get_part_library()->get_part( $part['type'] );
|
200 |
-
$value = $part_class->sanitize_value( $part, $form, $_REQUEST );
|
201 |
-
$request[$part_name] = $value;
|
202 |
-
}
|
203 |
-
|
204 |
-
return $request;
|
205 |
-
}
|
206 |
-
|
207 |
/**
|
208 |
* Register hooks.
|
209 |
*
|
@@ -371,10 +259,6 @@ class HappyForms_Message_Controller {
|
|
371 |
$this->email_user_confirmation( $form, $submission );
|
372 |
}
|
373 |
|
374 |
-
// Create message post
|
375 |
-
$message_id = $this->create( $form, $submission );
|
376 |
-
$message = $this->get( $message_id );
|
377 |
-
|
378 |
/**
|
379 |
* This action fires once a message is succesfully submitted.
|
380 |
*
|
@@ -385,7 +269,7 @@ class HappyForms_Message_Controller {
|
|
385 |
*
|
386 |
* @return void
|
387 |
*/
|
388 |
-
do_action( 'happyforms_submission_success', $submission, $form,
|
389 |
|
390 |
// Render the form
|
391 |
$response['html'] = $form_controller->render( $form );
|
@@ -729,6 +613,39 @@ class HappyForms_Message_Controller {
|
|
729 |
return $url;
|
730 |
}
|
731 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
732 |
}
|
733 |
|
734 |
if ( ! function_exists( 'happyforms_get_message_controller' ) ):
|
92 |
return self::$instance;
|
93 |
}
|
94 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
95 |
/**
|
96 |
* Register hooks.
|
97 |
*
|
259 |
$this->email_user_confirmation( $form, $submission );
|
260 |
}
|
261 |
|
|
|
|
|
|
|
|
|
262 |
/**
|
263 |
* This action fires once a message is succesfully submitted.
|
264 |
*
|
269 |
*
|
270 |
* @return void
|
271 |
*/
|
272 |
+
do_action( 'happyforms_submission_success', $submission, $form, array() );
|
273 |
|
274 |
// Render the form
|
275 |
$response['html'] = $form_controller->render( $form );
|
613 |
return $url;
|
614 |
}
|
615 |
|
616 |
+
public function get_by_form( $form_id, $ids_only = false, $count = -1 ) {
|
617 |
+
if ( $ids_only ) {
|
618 |
+
global $wpdb;
|
619 |
+
|
620 |
+
$query = $wpdb->prepare( "
|
621 |
+
SELECT p.ID FROM $wpdb->posts p
|
622 |
+
JOIN $wpdb->postmeta m ON p.ID = m.post_id
|
623 |
+
WHERE p.post_type = 'happyforms-message'
|
624 |
+
AND m.meta_key = '_happyforms_form_id'
|
625 |
+
AND m.meta_value = %d;
|
626 |
+
", $form_id );
|
627 |
+
|
628 |
+
$results = $wpdb->get_col( $query );
|
629 |
+
|
630 |
+
return $results;
|
631 |
+
}
|
632 |
+
|
633 |
+
$query_params = array(
|
634 |
+
'post_type' => $this->post_type,
|
635 |
+
'post_status' => 'any',
|
636 |
+
'posts_per_page' => $count,
|
637 |
+
'meta_query' => array( array(
|
638 |
+
'key' => '_happyforms_form_id',
|
639 |
+
'value' => $form_id,
|
640 |
+
) )
|
641 |
+
);
|
642 |
+
|
643 |
+
$messages = get_posts( $query_params );
|
644 |
+
$message_entries = array_map( array( $this, 'to_array'), $messages );
|
645 |
+
|
646 |
+
return $message_entries;
|
647 |
+
}
|
648 |
+
|
649 |
}
|
650 |
|
651 |
if ( ! function_exists( 'happyforms_get_message_controller' ) ):
|
inc/templates/admin/modal-onboarding.php
DELETED
@@ -1,36 +0,0 @@
|
|
1 |
-
<?php $status = happyforms_get_tracking()->get_status(); ?>
|
2 |
-
<?php if ( 2 > $status['status'] ) : ?>
|
3 |
-
<div class="happyforms-modal__heading">
|
4 |
-
<h1><?php _e( 'Welcome to Happyforms', 'happyforms' ); ?></h1>
|
5 |
-
<p><?php _e( 'Tell us about yourself and we\'ll get you set up in no time*' ); ?></p>
|
6 |
-
</div>
|
7 |
-
<div class="happyforms-modal__content">
|
8 |
-
<form>
|
9 |
-
<label for="happyforms-onboarding-email"><?php _e( 'Email address', 'happyforms' ); ?></label>
|
10 |
-
<input type="email" id="happyforms-onboarding-email" />
|
11 |
-
<label for="happyforms-onboarding-byline-optin">
|
12 |
-
<input type="checkbox" id="happyforms-onboarding-byline-optin" />
|
13 |
-
<span><?php _e( 'Yes, I want to help support the free plugin by adding a powered by link in the footer of my forms and emails.', 'happyforms' ); ?></span>
|
14 |
-
</label>
|
15 |
-
<button type="submit" class="button button-primary button-hero"><?php _e( 'Complete Set Up', 'happyforms' ); ?></button>
|
16 |
-
<p><?php _e( '*By submitting you\'re okay for us to send you occasional marketing emails.', 'happyforms' ); ?></p>
|
17 |
-
</form>
|
18 |
-
</div>
|
19 |
-
<script type="text/javascript">
|
20 |
-
jQuery( function( $ ) { $( '#happyforms-onboarding-email' ).trigger( 'focus' ); } );
|
21 |
-
</script>
|
22 |
-
<?php else : ?>
|
23 |
-
<div class="happyforms-modal__heading">
|
24 |
-
<h1><?php _e( 'Powered by Happyforms', 'happyforms' ); ?></h1>
|
25 |
-
<p><?php _e( 'All it takes is one little "yes" from you to help us out.', 'happyforms' ); ?></p>
|
26 |
-
</div>
|
27 |
-
<div class="happyforms-modal__content">
|
28 |
-
<form>
|
29 |
-
<label for="happyforms-onboarding-byline-optin">
|
30 |
-
<input type="checkbox" id="happyforms-onboarding-byline-optin" />
|
31 |
-
<span><?php _e( 'Yes, I want to help support the free plugin by adding a powered by link in the footer of my forms and emails.', 'happyforms' ); ?></span>
|
32 |
-
</label>
|
33 |
-
<button type="submit" class="button button-primary button-hero"><?php _e( 'Complete', 'happyforms' ); ?></button>
|
34 |
-
</form>
|
35 |
-
</div>
|
36 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
inc/templates/admin/modal-upgrade.php
DELETED
@@ -1,8 +0,0 @@
|
|
1 |
-
<div class="happyforms-modal__heading">
|
2 |
-
<h1><?php _e( 'You’ll need to upgrade<br> to access this', 'happyforms' ); ?></h1>
|
3 |
-
<p><?php _e( 'We offer several, affordable paid plans that include our best features. Upgrade today and increase your customer interactions.', 'happyforms' ); ?></p>
|
4 |
-
</div>
|
5 |
-
<div class="happyforms-modal__content">
|
6 |
-
<a href="https://happyforms.io/upgrade" target="_blank" class="button button-primary button-hero"><?php _e( 'Start Your Risk-Free 14-Day Trial', 'happyforms' ); ?></a>
|
7 |
-
<p><?php printf( 'Or %1$scontinue with free version%2$s', '<a href="#" class="happyforms-continue-link" onclick="happyForms.dashboard.closeModal(); return false;">', '</a>' ); ?></p>
|
8 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
inc/templates/admin/upgrade-modal.php
DELETED
@@ -1,2 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
// To be removed.
|
|
|
|
languages/happyforms.pot
CHANGED
@@ -1,129 +1,50 @@
|
|
1 |
# Copyright (C) 2021 Happyforms
|
2 |
-
# This file is distributed under the same license as the Happyforms (free)
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: Happyforms (free) 1.13.
|
6 |
-
"Report-Msgid-Bugs-To: https://
|
7 |
-
"POT-Creation-Date: 2021-09-27 06:30:44+00:00\n"
|
8 |
-
"MIME-Version: 1.0\n"
|
9 |
-
"Content-Type: text/plain; charset=utf-8\n"
|
10 |
-
"Content-Transfer-Encoding: 8bit\n"
|
11 |
-
"PO-Revision-Date: 2021-MO-DA HO:MI+ZONE\n"
|
12 |
"Last-Translator: The Theme Foundry\n"
|
13 |
"Language-Team: The Theme Foundry\n"
|
14 |
-
"
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
msgstr ""
|
22 |
-
|
23 |
-
#: core/classes/class-block.php:53 core/classes/class-happyforms-widget.php:15
|
24 |
-
msgid "Displays a form."
|
25 |
-
msgstr ""
|
26 |
-
|
27 |
-
#: core/classes/class-block.php:117 core/classes/parts/class-part-select.php:56
|
28 |
-
msgid "Choose"
|
29 |
-
msgstr ""
|
30 |
-
|
31 |
-
#: core/classes/class-block.php:118
|
32 |
-
msgid "Which form would you like to add here?"
|
33 |
-
msgstr ""
|
34 |
-
|
35 |
-
#: core/classes/class-block.php:119 core/classes/class-form-controller.php:81
|
36 |
-
msgid "No forms found."
|
37 |
-
msgstr ""
|
38 |
-
|
39 |
-
#: core/classes/class-block.php:120
|
40 |
-
msgid "HappyForms Settings"
|
41 |
-
msgstr ""
|
42 |
-
|
43 |
-
#: core/classes/class-deactivation.php:46
|
44 |
-
#: core/templates/admin/modal-deactivate.php:15
|
45 |
-
msgid "Deactivate Plugin"
|
46 |
-
msgstr ""
|
47 |
-
|
48 |
-
#: core/classes/class-deactivation.php:47
|
49 |
-
msgid "Delete Data and Deactivate Plugin"
|
50 |
-
msgstr ""
|
51 |
-
|
52 |
-
#: core/classes/class-form-admin.php:159
|
53 |
-
#: core/classes/class-form-controller.php:78
|
54 |
-
msgid "View form"
|
55 |
-
msgstr ""
|
56 |
-
|
57 |
-
#: core/classes/class-form-admin.php:164
|
58 |
-
msgid "Preview form"
|
59 |
-
msgstr ""
|
60 |
-
|
61 |
-
#: core/classes/class-form-admin.php:169 core/classes/class-form-admin.php:172
|
62 |
-
msgid "Form updated."
|
63 |
-
msgstr ""
|
64 |
-
|
65 |
-
#: core/classes/class-form-admin.php:170
|
66 |
-
msgid "Custom field updated."
|
67 |
-
msgstr ""
|
68 |
-
|
69 |
-
#: core/classes/class-form-admin.php:171
|
70 |
-
msgid "Custom field deleted."
|
71 |
-
msgstr ""
|
72 |
|
73 |
-
|
74 |
-
msgid "
|
75 |
msgstr ""
|
76 |
|
77 |
-
|
78 |
-
|
|
|
79 |
msgstr ""
|
80 |
|
81 |
-
|
82 |
-
msgid "
|
83 |
msgstr ""
|
84 |
|
85 |
-
|
86 |
-
msgid "
|
87 |
msgstr ""
|
88 |
|
89 |
-
#: core/classes/class-
|
90 |
-
|
|
|
|
|
|
|
|
|
|
|
91 |
msgstr ""
|
92 |
|
93 |
-
#: core/classes/class-
|
94 |
-
|
|
|
95 |
msgstr ""
|
96 |
|
97 |
-
#: core/classes/class-form-admin.php:201
|
98 |
-
msgid "%s form updated."
|
99 |
-
msgid_plural "%s forms updated."
|
100 |
-
msgstr[0] ""
|
101 |
-
msgstr[1] ""
|
102 |
-
|
103 |
-
#: core/classes/class-form-admin.php:202
|
104 |
-
msgid "%s form not updated, somebody is editing it."
|
105 |
-
msgid_plural "%s forms not updated, somebody is editing them."
|
106 |
-
msgstr[0] ""
|
107 |
-
msgstr[1] ""
|
108 |
-
|
109 |
-
#: core/classes/class-form-admin.php:203
|
110 |
-
msgid "%s form permanently deleted."
|
111 |
-
msgid_plural "%s forms permanently deleted."
|
112 |
-
msgstr[0] ""
|
113 |
-
msgstr[1] ""
|
114 |
-
|
115 |
-
#: core/classes/class-form-admin.php:204
|
116 |
-
msgid "%s form moved to the Trash."
|
117 |
-
msgid_plural "%s forms moved to the Trash."
|
118 |
-
msgstr[0] ""
|
119 |
-
msgstr[1] ""
|
120 |
-
|
121 |
-
#: core/classes/class-form-admin.php:205
|
122 |
-
msgid "%s form restored from the Trash."
|
123 |
-
msgid_plural "%s forms restored from the Trash."
|
124 |
-
msgstr[0] ""
|
125 |
-
msgstr[1] ""
|
126 |
-
|
127 |
#: core/classes/class-form-admin.php:282
|
128 |
msgid "Shortcode"
|
129 |
msgstr ""
|
@@ -140,18 +61,6 @@ msgstr ""
|
|
140 |
msgid "Copy to clipboard"
|
141 |
msgstr ""
|
142 |
|
143 |
-
#: core/classes/class-form-admin.php:338
|
144 |
-
msgid "%1$s at %2$s"
|
145 |
-
msgstr ""
|
146 |
-
|
147 |
-
#: core/classes/class-form-admin.php:339
|
148 |
-
msgid "Y/m/d"
|
149 |
-
msgstr ""
|
150 |
-
|
151 |
-
#: core/classes/class-form-admin.php:340
|
152 |
-
msgid "g:i a"
|
153 |
-
msgstr ""
|
154 |
-
|
155 |
#: core/classes/class-form-admin.php:343
|
156 |
msgid "Last modified"
|
157 |
msgstr ""
|
@@ -166,7 +75,8 @@ msgstr ""
|
|
166 |
msgid "Duplicate"
|
167 |
msgstr ""
|
168 |
|
169 |
-
#: core/classes/class-form-admin.php:423
|
|
|
170 |
msgid "Trash"
|
171 |
msgstr ""
|
172 |
|
@@ -197,6 +107,10 @@ msgstr ""
|
|
197 |
msgid "Edit form"
|
198 |
msgstr ""
|
199 |
|
|
|
|
|
|
|
|
|
200 |
#: core/classes/class-form-controller.php:79
|
201 |
msgid "View forms"
|
202 |
msgstr ""
|
@@ -205,6 +119,12 @@ msgstr ""
|
|
205 |
msgid "Search Forms"
|
206 |
msgstr ""
|
207 |
|
|
|
|
|
|
|
|
|
|
|
|
|
208 |
#: core/classes/class-form-controller.php:82
|
209 |
msgid "No forms found in Trash."
|
210 |
msgstr ""
|
@@ -220,7 +140,7 @@ msgstr ""
|
|
220 |
msgid "(no title)"
|
221 |
msgstr ""
|
222 |
|
223 |
-
#: core/classes/class-form-controller.php:
|
224 |
msgid " Copy"
|
225 |
msgstr ""
|
226 |
|
@@ -233,9 +153,7 @@ msgid "We received your message"
|
|
233 |
msgstr ""
|
234 |
|
235 |
#: core/classes/class-form-email.php:71
|
236 |
-
msgid ""
|
237 |
-
"Your message has been successfully sent. We appreciate you contacting us "
|
238 |
-
"and we’ll be in touch soon."
|
239 |
msgstr ""
|
240 |
|
241 |
#: core/classes/class-form-email.php:87
|
@@ -243,7 +161,8 @@ msgid "Email me a copy of each submission"
|
|
243 |
msgstr ""
|
244 |
|
245 |
#: core/classes/class-form-email.php:96
|
246 |
-
#: inc/
|
|
|
247 |
msgid "Email address"
|
248 |
msgstr ""
|
249 |
|
@@ -251,11 +170,13 @@ msgstr ""
|
|
251 |
msgid "Email Bcc address"
|
252 |
msgstr ""
|
253 |
|
254 |
-
#: core/classes/class-form-email.php:106
|
|
|
255 |
msgid "Email display name"
|
256 |
msgstr ""
|
257 |
|
258 |
-
#: core/classes/class-form-email.php:111
|
|
|
259 |
msgid "Email subject"
|
260 |
msgstr ""
|
261 |
|
@@ -334,9 +255,7 @@ msgid "Alerts"
|
|
334 |
msgstr ""
|
335 |
|
336 |
#: core/classes/class-form-messages.php:94
|
337 |
-
msgid ""
|
338 |
-
"These messages are shown to respondents at the very top of the form to "
|
339 |
-
"communicate the form’s status."
|
340 |
msgstr ""
|
341 |
|
342 |
#: core/classes/class-form-messages.php:104
|
@@ -344,9 +263,7 @@ msgid "Buttons"
|
|
344 |
msgstr ""
|
345 |
|
346 |
#: core/classes/class-form-messages.php:105
|
347 |
-
msgid ""
|
348 |
-
"The messages are shown to respondents as they fill out the form to help "
|
349 |
-
"them trigger an action."
|
350 |
msgstr ""
|
351 |
|
352 |
#: core/classes/class-form-messages.php:114
|
@@ -354,9 +271,7 @@ msgid "Errors"
|
|
354 |
msgstr ""
|
355 |
|
356 |
#: core/classes/class-form-messages.php:115
|
357 |
-
msgid ""
|
358 |
-
"These messages are shown to respondents when they try to submit their reply "
|
359 |
-
"but one or more fields has a mistake."
|
360 |
msgstr ""
|
361 |
|
362 |
#: core/classes/class-form-messages.php:124
|
@@ -364,9 +279,7 @@ msgid "Hints"
|
|
364 |
msgstr ""
|
365 |
|
366 |
#: core/classes/class-form-messages.php:125
|
367 |
-
msgid ""
|
368 |
-
"These messages are shown to respondents as they fill out the form to help "
|
369 |
-
"them avoid mistakes."
|
370 |
msgstr ""
|
371 |
|
372 |
#: core/classes/class-form-messages.php:132
|
@@ -417,79 +330,72 @@ msgstr ""
|
|
417 |
msgid "Remaining submissions"
|
418 |
msgstr ""
|
419 |
|
420 |
-
#: core/classes/class-form-part-library.php:189
|
421 |
-
msgid "Invalid data"
|
422 |
-
msgstr ""
|
423 |
-
|
424 |
-
#: core/classes/class-form-part-library.php:196
|
425 |
-
msgid "Field definition not found"
|
426 |
-
msgstr ""
|
427 |
-
|
428 |
#: core/classes/class-form-part-library.php:227
|
429 |
msgid "Missing validation callback for field %s"
|
430 |
msgstr ""
|
431 |
|
432 |
-
#: core/classes/class-form-setup.php:
|
433 |
msgid "Validate your submission"
|
434 |
msgstr ""
|
435 |
|
436 |
-
#: core/classes/class-form-setup.php:
|
437 |
msgid "Thank you. Your reply has been sent."
|
438 |
msgstr ""
|
439 |
|
440 |
-
#: core/classes/class-form-setup.php:
|
441 |
msgid "Bummer. We can't submit your reply. Please check for mistakes."
|
442 |
msgstr ""
|
443 |
|
444 |
-
#: core/classes/class-form-setup.php:
|
445 |
msgid "Send"
|
446 |
msgstr ""
|
447 |
|
448 |
-
#: core/classes/class-form-setup.php:
|
449 |
msgid "After the form is submitted"
|
450 |
msgstr ""
|
451 |
|
452 |
-
#: core/classes/class-form-setup.php:
|
453 |
msgid "Show a message"
|
454 |
msgstr ""
|
455 |
|
456 |
-
#: core/classes/class-form-setup.php:
|
457 |
msgid "Show a message and allow to resubmit the form"
|
458 |
msgstr ""
|
459 |
|
460 |
-
#: core/classes/class-form-setup.php:
|
461 |
msgid "Redirect to a web address"
|
462 |
msgstr ""
|
463 |
|
464 |
-
#: core/classes/class-form-setup.php:
|
465 |
msgid "Add custom CSS classes to submit button"
|
466 |
msgstr ""
|
467 |
|
468 |
-
#: core/classes/class-form-setup.php:
|
469 |
msgid "Submit button CSS classes"
|
470 |
msgstr ""
|
471 |
|
472 |
-
#: core/classes/class-form-setup.php:
|
473 |
msgid "Add custom HTML ID to form"
|
474 |
msgstr ""
|
475 |
|
476 |
-
#: core/classes/class-form-setup.php:
|
477 |
msgid "Form HTML ID"
|
478 |
msgstr ""
|
479 |
|
480 |
-
#: core/classes/class-form-setup.php:
|
481 |
msgid "Form is successfully submitted"
|
482 |
msgstr ""
|
483 |
|
484 |
-
#: core/classes/class-form-setup.php:
|
485 |
msgid "Form can’t be submitted"
|
486 |
msgstr ""
|
487 |
|
488 |
-
#: core/classes/class-form-setup.php:
|
489 |
msgid "Submit form"
|
490 |
msgstr ""
|
491 |
|
492 |
-
#: core/classes/class-form-shuffle.php:43
|
|
|
493 |
msgid "Randomize fields to prevent bias"
|
494 |
msgstr ""
|
495 |
|
@@ -501,26 +407,30 @@ msgstr ""
|
|
501 |
msgid "Right-to-left"
|
502 |
msgstr ""
|
503 |
|
504 |
-
#: core/classes/class-form-styles.php:75
|
|
|
505 |
#: core/classes/class-form-styles.php:159
|
506 |
#: core/classes/class-form-styles.php:282
|
507 |
#: core/classes/class-form-styles.php:292
|
508 |
msgid "Default"
|
509 |
msgstr ""
|
510 |
|
511 |
-
#: core/classes/class-form-styles.php:76
|
|
|
512 |
#: core/classes/class-form-styles.php:158
|
513 |
#: core/classes/class-form-styles.php:291
|
514 |
msgid "Narrow"
|
515 |
msgstr ""
|
516 |
|
517 |
-
#: core/classes/class-form-styles.php:77
|
|
|
518 |
#: core/classes/class-form-styles.php:160
|
519 |
#: core/classes/class-form-styles.php:293
|
520 |
msgid "Wide"
|
521 |
msgstr ""
|
522 |
|
523 |
-
#: core/classes/class-form-styles.php:91
|
|
|
524 |
#: core/classes/class-form-styles.php:263
|
525 |
#: core/templates/parts/customize-checkbox.php:8
|
526 |
#: core/templates/parts/customize-email.php:8
|
@@ -532,7 +442,8 @@ msgstr ""
|
|
532 |
msgid "Show"
|
533 |
msgstr ""
|
534 |
|
535 |
-
#: core/classes/class-form-styles.php:92
|
|
|
536 |
#: core/classes/class-form-styles.php:264
|
537 |
#: core/templates/parts/customize-checkbox.php:15
|
538 |
#: core/templates/parts/customize-email.php:15
|
@@ -640,193 +551,181 @@ msgstr ""
|
|
640 |
msgid "Full width"
|
641 |
msgstr ""
|
642 |
|
643 |
-
#: core/classes/class-form-styles.php:
|
644 |
-
msgid "Above form"
|
645 |
-
msgstr ""
|
646 |
-
|
647 |
-
#: core/classes/class-form-styles.php:535
|
648 |
-
msgid "Below form"
|
649 |
-
msgstr ""
|
650 |
-
|
651 |
-
#: core/classes/class-form-styles.php:555
|
652 |
msgid "General"
|
653 |
msgstr ""
|
654 |
|
655 |
-
#: core/classes/class-form-styles.php:
|
656 |
-
#: core/classes/class-form-styles.php:
|
657 |
#: core/templates/partials/customize-field-width.php:2
|
658 |
msgid "Width"
|
659 |
msgstr ""
|
660 |
|
661 |
-
#: core/classes/class-form-styles.php:
|
662 |
-
#: core/classes/class-form-styles.php:
|
663 |
msgid "Padding"
|
664 |
msgstr ""
|
665 |
|
666 |
-
#: core/classes/class-form-styles.php:
|
667 |
msgid "Direction"
|
668 |
msgstr ""
|
669 |
|
670 |
-
#: core/classes/class-form-styles.php:
|
671 |
-
|
672 |
-
|
673 |
-
|
674 |
-
#: core/classes/class-form-styles.php:581
|
675 |
-
#: core/classes/class-form-styles.php:666
|
676 |
-
#: core/classes/class-form-styles.php:741
|
677 |
-
#: core/classes/class-form-styles.php:911
|
678 |
msgid "Colors"
|
679 |
msgstr ""
|
680 |
|
681 |
-
#: core/classes/class-form-styles.php:
|
682 |
msgid "Primary"
|
683 |
msgstr ""
|
684 |
|
685 |
-
#: core/classes/class-form-styles.php:
|
686 |
msgid "Success message background"
|
687 |
msgstr ""
|
688 |
|
689 |
-
#: core/classes/class-form-styles.php:
|
690 |
msgid "Success message text"
|
691 |
msgstr ""
|
692 |
|
693 |
-
#: core/classes/class-form-styles.php:
|
694 |
msgid "Validation message text"
|
695 |
msgstr ""
|
696 |
|
697 |
-
#: core/classes/class-form-styles.php:
|
698 |
msgid "Error message background"
|
699 |
msgstr ""
|
700 |
|
701 |
-
#: core/classes/class-form-styles.php:
|
702 |
msgid "Error message text"
|
703 |
msgstr ""
|
704 |
|
705 |
-
#: core/classes/class-form-styles.php:
|
706 |
#: inc/classes/parts/class-part-layout-title-dummy.php:8
|
707 |
#: inc/classes/parts/class-part-title-dummy.php:8
|
708 |
msgid "Title"
|
709 |
msgstr ""
|
710 |
|
711 |
-
#: core/classes/class-form-styles.php:
|
712 |
msgid "Display"
|
713 |
msgstr ""
|
714 |
|
715 |
-
#: core/classes/class-form-styles.php:
|
716 |
-
#: core/classes/class-form-styles.php:
|
717 |
msgid "Alignment"
|
718 |
msgstr ""
|
719 |
|
720 |
-
#: core/classes/class-form-styles.php:
|
721 |
-
#: core/classes/class-form-styles.php:
|
722 |
msgid "Font size"
|
723 |
msgstr ""
|
724 |
|
725 |
-
#: core/classes/class-form-styles.php:
|
726 |
msgid "Field borders & spacing"
|
727 |
msgstr ""
|
728 |
|
729 |
-
#: core/classes/class-form-styles.php:
|
730 |
-
#: core/classes/class-form-styles.php:
|
731 |
-
#: core/classes/class-form-styles.php:
|
732 |
-
#: core/classes/class-form-styles.php:
|
733 |
msgid "Border"
|
734 |
msgstr ""
|
735 |
|
736 |
-
#: core/classes/class-form-styles.php:
|
737 |
msgid "Border location"
|
738 |
msgstr ""
|
739 |
|
740 |
-
#: core/classes/class-form-styles.php:
|
741 |
-
#: core/classes/class-form-styles.php:
|
742 |
msgid "Border radius"
|
743 |
msgstr ""
|
744 |
|
745 |
-
#: core/classes/class-form-styles.php:
|
746 |
msgid "Outer spacing"
|
747 |
msgstr ""
|
748 |
|
749 |
-
#: core/classes/class-form-styles.php:
|
750 |
msgid "Inner spacing"
|
751 |
msgstr ""
|
752 |
|
753 |
-
#: core/classes/class-form-styles.php:
|
754 |
msgid "Border on focus"
|
755 |
msgstr ""
|
756 |
|
757 |
-
#: core/classes/class-form-styles.php:
|
758 |
-
#: core/classes/class-form-styles.php:
|
759 |
-
#: core/classes/class-form-styles.php:
|
760 |
-
#: core/classes/class-form-styles.php:
|
761 |
msgid "Background"
|
762 |
msgstr ""
|
763 |
|
764 |
-
#: core/classes/class-form-styles.php:
|
765 |
-
#: core/classes/class-form-styles.php:
|
766 |
-
#: core/classes/class-form-styles.php:
|
767 |
-
#: core/classes/class-form-styles.php:
|
768 |
msgid "Background on focus"
|
769 |
msgstr ""
|
770 |
|
771 |
-
#: core/classes/class-form-styles.php:
|
772 |
msgid "Field labels & text"
|
773 |
msgstr ""
|
774 |
|
775 |
-
#: core/classes/class-form-styles.php:
|
776 |
msgid "Toggle placeholder on field focus"
|
777 |
msgstr ""
|
778 |
|
779 |
-
#: core/classes/class-form-styles.php:
|
780 |
msgid "Label alignment"
|
781 |
msgstr ""
|
782 |
|
783 |
-
#: core/classes/class-form-styles.php:
|
784 |
msgid "Label font size"
|
785 |
msgstr ""
|
786 |
|
787 |
-
#: core/classes/class-form-styles.php:
|
788 |
msgid "Label font weight"
|
789 |
msgstr ""
|
790 |
|
791 |
-
#: core/classes/class-form-styles.php:
|
792 |
msgid "Hint alignment"
|
793 |
msgstr ""
|
794 |
|
795 |
-
#: core/classes/class-form-styles.php:
|
796 |
msgid "Hint font size"
|
797 |
msgstr ""
|
798 |
|
799 |
-
#: core/classes/class-form-styles.php:
|
800 |
msgid "Hint display"
|
801 |
msgstr ""
|
802 |
|
803 |
-
#: core/classes/class-form-styles.php:
|
804 |
msgid "Placeholder & value alignment"
|
805 |
msgstr ""
|
806 |
|
807 |
-
#: core/classes/class-form-styles.php:
|
808 |
msgid "Value font size"
|
809 |
msgstr ""
|
810 |
|
811 |
-
#: core/classes/class-form-styles.php:
|
812 |
#: core/templates/parts/customize-checkbox.php:4
|
813 |
-
#: core/templates/parts/customize-checkbox.php:
|
814 |
#: core/templates/parts/customize-email.php:4
|
815 |
#: core/templates/parts/customize-multi-line-text.php:4
|
816 |
#: core/templates/parts/customize-number.php:4
|
817 |
#: core/templates/parts/customize-radio.php:4
|
818 |
-
#: core/templates/parts/customize-radio.php:
|
819 |
#: core/templates/parts/customize-select.php:4
|
820 |
#: core/templates/parts/customize-select.php:105
|
821 |
#: core/templates/parts/customize-single-line-text.php:4
|
822 |
msgid "Label"
|
823 |
msgstr ""
|
824 |
|
825 |
-
#: core/classes/class-form-styles.php:
|
826 |
msgid "Value"
|
827 |
msgstr ""
|
828 |
|
829 |
-
#: core/classes/class-form-styles.php:
|
830 |
#: core/templates/parts/customize-email.php:20
|
831 |
#: core/templates/parts/customize-multi-line-text.php:20
|
832 |
#: core/templates/parts/customize-number.php:20
|
@@ -836,7 +735,7 @@ msgstr ""
|
|
836 |
msgid "Placeholder"
|
837 |
msgstr ""
|
838 |
|
839 |
-
#: core/classes/class-form-styles.php:
|
840 |
#: core/templates/parts/customize-checkbox.php:20
|
841 |
#: core/templates/parts/customize-email.php:28
|
842 |
#: core/templates/parts/customize-multi-line-text.php:28
|
@@ -847,113 +746,108 @@ msgstr ""
|
|
847 |
msgid "Hint"
|
848 |
msgstr ""
|
849 |
|
850 |
-
#: core/classes/class-form-styles.php:
|
851 |
msgid "Dropdowns"
|
852 |
msgstr ""
|
853 |
|
854 |
-
#: core/classes/class-form-styles.php:
|
855 |
msgid "Items"
|
856 |
msgstr ""
|
857 |
|
858 |
-
#: core/classes/class-form-styles.php:
|
859 |
-
#: core/classes/class-form-styles.php:
|
860 |
msgid "Text"
|
861 |
msgstr ""
|
862 |
|
863 |
-
#: core/classes/class-form-styles.php:
|
864 |
msgid "Text focused"
|
865 |
msgstr ""
|
866 |
|
867 |
-
#: core/classes/class-form-styles.php:
|
868 |
msgid "Checkboxes & Radios"
|
869 |
msgstr ""
|
870 |
|
871 |
-
#: core/classes/class-form-styles.php:
|
872 |
msgid "Checkmark"
|
873 |
msgstr ""
|
874 |
|
875 |
-
#: core/classes/class-form-styles.php:
|
876 |
msgid "Rating"
|
877 |
msgstr ""
|
878 |
|
879 |
-
#: core/classes/class-form-styles.php:
|
880 |
msgid "Rating star color"
|
881 |
msgstr ""
|
882 |
|
883 |
-
#: core/classes/class-form-styles.php:
|
884 |
msgid "Rating star color on hover"
|
885 |
msgstr ""
|
886 |
|
887 |
-
#: core/classes/class-form-styles.php:
|
888 |
msgid "Tables"
|
889 |
msgstr ""
|
890 |
|
891 |
-
#: core/classes/class-form-styles.php:
|
892 |
msgid "Odd row primary"
|
893 |
msgstr ""
|
894 |
|
895 |
-
#: core/classes/class-form-styles.php:
|
896 |
msgid "Odd row secondary"
|
897 |
msgstr ""
|
898 |
|
899 |
-
#: core/classes/class-form-styles.php:
|
900 |
msgid "Even row primary"
|
901 |
msgstr ""
|
902 |
|
903 |
-
#: core/classes/class-form-styles.php:
|
904 |
msgid "Even row secondary"
|
905 |
msgstr ""
|
906 |
|
907 |
-
#: core/classes/class-form-styles.php:
|
908 |
msgid "Dividers"
|
909 |
msgstr ""
|
910 |
|
911 |
-
#: core/classes/class-form-styles.php:
|
912 |
msgid "Color"
|
913 |
msgstr ""
|
914 |
|
915 |
-
#: core/classes/class-form-styles.php:
|
916 |
msgid "Submit button"
|
917 |
msgstr ""
|
918 |
|
919 |
-
#: core/classes/class-form-styles.php:
|
920 |
msgid "Font weight"
|
921 |
msgstr ""
|
922 |
|
923 |
-
#: core/classes/class-form-styles.php:
|
924 |
msgid "Make button a field of last input"
|
925 |
msgstr ""
|
926 |
|
927 |
-
#: core/classes/class-form-styles.php:
|
928 |
msgid "Text on focus"
|
929 |
msgstr ""
|
930 |
|
931 |
-
#: core/classes/class-form-styles.php:
|
932 |
msgid "Add your own CSS code here to customize the appearance of your form."
|
933 |
msgstr ""
|
934 |
|
935 |
-
#: core/classes/class-form-styles.php:
|
936 |
-
msgid ""
|
937 |
-
"For each rule you add, we'll prepend your form's HTML ID. This makes sure "
|
938 |
-
"all styles added will only apply to this form. For example %s becomes %s."
|
939 |
msgstr ""
|
940 |
|
941 |
-
#: core/classes/class-form-styles.php:
|
942 |
-
msgid ""
|
943 |
-
"The edit field automatically highlights code syntax. You can disable this "
|
944 |
-
"in your <a href=\"%s\" class=\"%s\" target=\"_blank\">user profile</a> to "
|
945 |
-
"work in plain text mode."
|
946 |
msgstr ""
|
947 |
|
948 |
-
#: core/classes/class-form-styles.php:
|
949 |
-
#: core/classes/class-form-styles.php:
|
950 |
msgid "Additional CSS"
|
951 |
msgstr ""
|
952 |
|
953 |
#: core/classes/class-happyforms-core.php:197
|
954 |
#: core/classes/class-happyforms-core.php:198
|
955 |
-
#: inc/classes/class-message-controller.php:
|
956 |
-
#: inc/classes/class-message-controller.php:
|
957 |
msgid "Activity"
|
958 |
msgstr ""
|
959 |
|
@@ -965,10 +859,12 @@ msgstr ""
|
|
965 |
|
966 |
#: core/classes/class-happyforms-core.php:215
|
967 |
#: core/classes/class-happyforms-core.php:216
|
|
|
|
|
968 |
msgid "Settings"
|
969 |
msgstr ""
|
970 |
|
971 |
-
#: core/classes/class-happyforms-core.php:
|
972 |
msgid "Add Form"
|
973 |
msgstr ""
|
974 |
|
@@ -980,36 +876,6 @@ msgstr ""
|
|
980 |
msgid "Form:"
|
981 |
msgstr ""
|
982 |
|
983 |
-
#: core/classes/class-tracking.php:139
|
984 |
-
msgid "Sorry, you are not allowed to access this page."
|
985 |
-
msgstr ""
|
986 |
-
|
987 |
-
#: core/classes/class-tracking.php:173
|
988 |
-
msgid "Thank you!"
|
989 |
-
msgstr ""
|
990 |
-
|
991 |
-
#: core/classes/class-tracking.php:174
|
992 |
-
msgid "Now let's go enjoy HappyForms."
|
993 |
-
msgstr ""
|
994 |
-
|
995 |
-
#: core/classes/class-tracking.php:175
|
996 |
-
msgid ""
|
997 |
-
"You've set up notifications and helped us to improve HappyForms. You're "
|
998 |
-
"ready to get started with your first form."
|
999 |
-
msgstr ""
|
1000 |
-
|
1001 |
-
#: core/classes/class-tracking.php:176
|
1002 |
-
msgid "Create your first form"
|
1003 |
-
msgstr ""
|
1004 |
-
|
1005 |
-
#: core/classes/class-tracking.php:178
|
1006 |
-
msgid "Aw snap! Something went wrong."
|
1007 |
-
msgstr ""
|
1008 |
-
|
1009 |
-
#: core/classes/class-tracking.php:179
|
1010 |
-
msgid "Error description"
|
1011 |
-
msgstr ""
|
1012 |
-
|
1013 |
#: core/classes/class-validation-messages.php:72
|
1014 |
msgid "Field is answered incorrectly"
|
1015 |
msgstr ""
|
@@ -1096,16 +962,11 @@ msgid "All done!"
|
|
1096 |
msgstr ""
|
1097 |
|
1098 |
#: core/classes/class-wp-customize-form-manager.php:178
|
1099 |
-
msgid ""
|
1100 |
-
"Still have questions? Head over to our <a href=\"%s\" "
|
1101 |
-
"target=\"_blank\">help guide</a>."
|
1102 |
msgstr ""
|
1103 |
|
1104 |
#: core/classes/class-wp-customize-form-manager.php:185
|
1105 |
-
msgid ""
|
1106 |
-
"Form saved. You can add this form to any Page, Post and Widget area. Have "
|
1107 |
-
"questions? <a href=\"%s\" target=\"_blank\">Ask for help in our support "
|
1108 |
-
"forums</a>."
|
1109 |
msgstr ""
|
1110 |
|
1111 |
#: core/classes/parts/class-part-checkbox.php:10
|
@@ -1116,12 +977,12 @@ msgstr ""
|
|
1116 |
msgid "For checkboxes allowing multiple selections."
|
1117 |
msgstr ""
|
1118 |
|
1119 |
-
#: core/classes/parts/class-part-checkbox.php:
|
1120 |
msgid "Select all"
|
1121 |
msgstr ""
|
1122 |
|
1123 |
-
#: core/classes/parts/class-part-checkbox.php:
|
1124 |
-
#: core/classes/parts/class-part-radio.php:
|
1125 |
#: core/classes/parts/class-part-select.php:80
|
1126 |
msgid "Other"
|
1127 |
msgstr ""
|
@@ -1166,6 +1027,12 @@ msgstr ""
|
|
1166 |
msgid "For selecting one option from a long list. Default value adjustable."
|
1167 |
msgstr ""
|
1168 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1169 |
#: core/classes/parts/class-part-single-line-text.php:8
|
1170 |
msgid "Short Answer"
|
1171 |
msgstr ""
|
@@ -1266,55 +1133,68 @@ msgstr ""
|
|
1266 |
msgid "Ascension Island"
|
1267 |
msgstr ""
|
1268 |
|
1269 |
-
#: core/helpers/helper-form-templates.php:1067
|
|
|
1270 |
msgid "Andorra"
|
1271 |
msgstr ""
|
1272 |
|
1273 |
-
#: core/helpers/helper-form-templates.php:1068
|
|
|
1274 |
msgid "United Arab Emirates"
|
1275 |
msgstr ""
|
1276 |
|
1277 |
-
#: core/helpers/helper-form-templates.php:1069
|
|
|
1278 |
msgid "Afghanistan"
|
1279 |
msgstr ""
|
1280 |
|
1281 |
-
#: core/helpers/helper-form-templates.php:1070
|
|
|
1282 |
msgid "Antigua and Barbuda"
|
1283 |
msgstr ""
|
1284 |
|
1285 |
-
#: core/helpers/helper-form-templates.php:1071
|
|
|
1286 |
msgid "Anguilla"
|
1287 |
msgstr ""
|
1288 |
|
1289 |
-
#: core/helpers/helper-form-templates.php:1072
|
|
|
1290 |
msgid "Albania"
|
1291 |
msgstr ""
|
1292 |
|
1293 |
-
#: core/helpers/helper-form-templates.php:1073
|
|
|
1294 |
msgid "Armenia"
|
1295 |
msgstr ""
|
1296 |
|
1297 |
-
#: core/helpers/helper-form-templates.php:1074
|
|
|
1298 |
msgid "Angola"
|
1299 |
msgstr ""
|
1300 |
|
1301 |
-
#: core/helpers/helper-form-templates.php:1075
|
|
|
1302 |
msgid "Argentina"
|
1303 |
msgstr ""
|
1304 |
|
1305 |
-
#: core/helpers/helper-form-templates.php:1076
|
|
|
1306 |
msgid "American Samoa"
|
1307 |
msgstr ""
|
1308 |
|
1309 |
-
#: core/helpers/helper-form-templates.php:1077
|
|
|
1310 |
msgid "Austria"
|
1311 |
msgstr ""
|
1312 |
|
1313 |
-
#: core/helpers/helper-form-templates.php:1078
|
|
|
1314 |
msgid "Australia"
|
1315 |
msgstr ""
|
1316 |
|
1317 |
-
#: core/helpers/helper-form-templates.php:1079
|
|
|
1318 |
msgid "Aruba"
|
1319 |
msgstr ""
|
1320 |
|
@@ -1322,7 +1202,8 @@ msgstr ""
|
|
1322 |
msgid "Åland Islands"
|
1323 |
msgstr ""
|
1324 |
|
1325 |
-
#: core/helpers/helper-form-templates.php:1081
|
|
|
1326 |
msgid "Azerbaijan"
|
1327 |
msgstr ""
|
1328 |
|
@@ -1330,35 +1211,43 @@ msgstr ""
|
|
1330 |
msgid "Bosnia and Herzegovina"
|
1331 |
msgstr ""
|
1332 |
|
1333 |
-
#: core/helpers/helper-form-templates.php:1083
|
|
|
1334 |
msgid "Barbados"
|
1335 |
msgstr ""
|
1336 |
|
1337 |
-
#: core/helpers/helper-form-templates.php:1084
|
|
|
1338 |
msgid "Bangladesh"
|
1339 |
msgstr ""
|
1340 |
|
1341 |
-
#: core/helpers/helper-form-templates.php:1085
|
|
|
1342 |
msgid "Belgium"
|
1343 |
msgstr ""
|
1344 |
|
1345 |
-
#: core/helpers/helper-form-templates.php:1086
|
|
|
1346 |
msgid "Burkina Faso"
|
1347 |
msgstr ""
|
1348 |
|
1349 |
-
#: core/helpers/helper-form-templates.php:1087
|
|
|
1350 |
msgid "Bulgaria"
|
1351 |
msgstr ""
|
1352 |
|
1353 |
-
#: core/helpers/helper-form-templates.php:1088
|
|
|
1354 |
msgid "Bahrain"
|
1355 |
msgstr ""
|
1356 |
|
1357 |
-
#: core/helpers/helper-form-templates.php:1089
|
|
|
1358 |
msgid "Burundi"
|
1359 |
msgstr ""
|
1360 |
|
1361 |
-
#: core/helpers/helper-form-templates.php:1090
|
|
|
1362 |
msgid "Benin"
|
1363 |
msgstr ""
|
1364 |
|
@@ -1366,15 +1255,18 @@ msgstr ""
|
|
1366 |
msgid "Saint Barthélemy"
|
1367 |
msgstr ""
|
1368 |
|
1369 |
-
#: core/helpers/helper-form-templates.php:1092
|
|
|
1370 |
msgid "Bermuda"
|
1371 |
msgstr ""
|
1372 |
|
1373 |
-
#: core/helpers/helper-form-templates.php:1093
|
|
|
1374 |
msgid "Brunei Darussalam"
|
1375 |
msgstr ""
|
1376 |
|
1377 |
-
#: core/helpers/helper-form-templates.php:1094
|
|
|
1378 |
msgid "Bolivia"
|
1379 |
msgstr ""
|
1380 |
|
@@ -1382,51 +1274,63 @@ msgstr ""
|
|
1382 |
msgid "Bonaire, Sint Eustatius and Saba"
|
1383 |
msgstr ""
|
1384 |
|
1385 |
-
#: core/helpers/helper-form-templates.php:1096
|
|
|
1386 |
msgid "Brazil"
|
1387 |
msgstr ""
|
1388 |
|
1389 |
-
#: core/helpers/helper-form-templates.php:1097
|
|
|
1390 |
msgid "Bahamas"
|
1391 |
msgstr ""
|
1392 |
|
1393 |
-
#: core/helpers/helper-form-templates.php:1098
|
|
|
1394 |
msgid "Bhutan"
|
1395 |
msgstr ""
|
1396 |
|
1397 |
-
#: core/helpers/helper-form-templates.php:1099
|
|
|
1398 |
msgid "Botswana"
|
1399 |
msgstr ""
|
1400 |
|
1401 |
-
#: core/helpers/helper-form-templates.php:1100
|
|
|
1402 |
msgid "Belarus"
|
1403 |
msgstr ""
|
1404 |
|
1405 |
-
#: core/helpers/helper-form-templates.php:1101
|
|
|
1406 |
msgid "Belize"
|
1407 |
msgstr ""
|
1408 |
|
1409 |
-
#: core/helpers/helper-form-templates.php:1102
|
|
|
1410 |
msgid "Canada"
|
1411 |
msgstr ""
|
1412 |
|
1413 |
-
#: core/helpers/helper-form-templates.php:1103
|
|
|
1414 |
msgid "Cocos (Keeling) Islands"
|
1415 |
msgstr ""
|
1416 |
|
1417 |
-
#: core/helpers/helper-form-templates.php:1104
|
|
|
1418 |
msgid "Congo, the Democratic Republic of the"
|
1419 |
msgstr ""
|
1420 |
|
1421 |
-
#: core/helpers/helper-form-templates.php:1105
|
|
|
1422 |
msgid "Central African Republic"
|
1423 |
msgstr ""
|
1424 |
|
1425 |
-
#: core/helpers/helper-form-templates.php:1106
|
|
|
1426 |
msgid "Congo"
|
1427 |
msgstr ""
|
1428 |
|
1429 |
-
#: core/helpers/helper-form-templates.php:1107
|
|
|
1430 |
msgid "Switzerland"
|
1431 |
msgstr ""
|
1432 |
|
@@ -1434,35 +1338,43 @@ msgstr ""
|
|
1434 |
msgid "Cote D'Ivoire"
|
1435 |
msgstr ""
|
1436 |
|
1437 |
-
#: core/helpers/helper-form-templates.php:1109
|
|
|
1438 |
msgid "Cook Islands"
|
1439 |
msgstr ""
|
1440 |
|
1441 |
-
#: core/helpers/helper-form-templates.php:1110
|
|
|
1442 |
msgid "Chile"
|
1443 |
msgstr ""
|
1444 |
|
1445 |
-
#: core/helpers/helper-form-templates.php:1111
|
|
|
1446 |
msgid "Cameroon"
|
1447 |
msgstr ""
|
1448 |
|
1449 |
-
#: core/helpers/helper-form-templates.php:1112
|
|
|
1450 |
msgid "China"
|
1451 |
msgstr ""
|
1452 |
|
1453 |
-
#: core/helpers/helper-form-templates.php:1113
|
|
|
1454 |
msgid "Colombia"
|
1455 |
msgstr ""
|
1456 |
|
1457 |
-
#: core/helpers/helper-form-templates.php:1114
|
|
|
1458 |
msgid "Costa Rica"
|
1459 |
msgstr ""
|
1460 |
|
1461 |
-
#: core/helpers/helper-form-templates.php:1115
|
|
|
1462 |
msgid "Cuba"
|
1463 |
msgstr ""
|
1464 |
|
1465 |
-
#: core/helpers/helper-form-templates.php:1116
|
|
|
1466 |
msgid "Cape Verde"
|
1467 |
msgstr ""
|
1468 |
|
@@ -1470,111 +1382,138 @@ msgstr ""
|
|
1470 |
msgid "Curaçao"
|
1471 |
msgstr ""
|
1472 |
|
1473 |
-
#: core/helpers/helper-form-templates.php:1118
|
|
|
1474 |
msgid "Christmas Island"
|
1475 |
msgstr ""
|
1476 |
|
1477 |
-
#: core/helpers/helper-form-templates.php:1119
|
|
|
1478 |
msgid "Cyprus"
|
1479 |
msgstr ""
|
1480 |
|
1481 |
-
#: core/helpers/helper-form-templates.php:1120
|
|
|
1482 |
msgid "Czech Republic"
|
1483 |
msgstr ""
|
1484 |
|
1485 |
-
#: core/helpers/helper-form-templates.php:1121
|
|
|
1486 |
msgid "Germany"
|
1487 |
msgstr ""
|
1488 |
|
1489 |
-
#: core/helpers/helper-form-templates.php:1122
|
|
|
1490 |
msgid "Djibouti"
|
1491 |
msgstr ""
|
1492 |
|
1493 |
-
#: core/helpers/helper-form-templates.php:1123
|
|
|
1494 |
msgid "Denmark"
|
1495 |
msgstr ""
|
1496 |
|
1497 |
-
#: core/helpers/helper-form-templates.php:1124
|
|
|
1498 |
msgid "Dominica"
|
1499 |
msgstr ""
|
1500 |
|
1501 |
-
#: core/helpers/helper-form-templates.php:1125
|
|
|
1502 |
msgid "Dominican Republic"
|
1503 |
msgstr ""
|
1504 |
|
1505 |
-
#: core/helpers/helper-form-templates.php:1126
|
|
|
1506 |
msgid "Algeria"
|
1507 |
msgstr ""
|
1508 |
|
1509 |
-
#: core/helpers/helper-form-templates.php:1127
|
|
|
1510 |
msgid "Ecuador"
|
1511 |
msgstr ""
|
1512 |
|
1513 |
-
#: core/helpers/helper-form-templates.php:1128
|
|
|
1514 |
msgid "Estonia"
|
1515 |
msgstr ""
|
1516 |
|
1517 |
-
#: core/helpers/helper-form-templates.php:1129
|
|
|
1518 |
msgid "Egypt"
|
1519 |
msgstr ""
|
1520 |
|
1521 |
-
#: core/helpers/helper-form-templates.php:1130
|
|
|
1522 |
msgid "Western Sahara"
|
1523 |
msgstr ""
|
1524 |
|
1525 |
-
#: core/helpers/helper-form-templates.php:1131
|
|
|
1526 |
msgid "Eritrea"
|
1527 |
msgstr ""
|
1528 |
|
1529 |
-
#: core/helpers/helper-form-templates.php:1132
|
|
|
1530 |
msgid "Spain"
|
1531 |
msgstr ""
|
1532 |
|
1533 |
-
#: core/helpers/helper-form-templates.php:1133
|
|
|
1534 |
msgid "Ethiopia"
|
1535 |
msgstr ""
|
1536 |
|
1537 |
-
#: core/helpers/helper-form-templates.php:1134
|
|
|
1538 |
msgid "Finland"
|
1539 |
msgstr ""
|
1540 |
|
1541 |
-
#: core/helpers/helper-form-templates.php:1135
|
|
|
1542 |
msgid "Fiji"
|
1543 |
msgstr ""
|
1544 |
|
1545 |
-
#: core/helpers/helper-form-templates.php:1136
|
|
|
1546 |
msgid "Falkland Islands (Malvinas)"
|
1547 |
msgstr ""
|
1548 |
|
1549 |
-
#: core/helpers/helper-form-templates.php:1137
|
|
|
1550 |
msgid "Micronesia, Federated States of"
|
1551 |
msgstr ""
|
1552 |
|
1553 |
-
#: core/helpers/helper-form-templates.php:1138
|
|
|
1554 |
msgid "Faroe Islands"
|
1555 |
msgstr ""
|
1556 |
|
1557 |
-
#: core/helpers/helper-form-templates.php:1139
|
|
|
1558 |
msgid "France"
|
1559 |
msgstr ""
|
1560 |
|
1561 |
-
#: core/helpers/helper-form-templates.php:1140
|
|
|
1562 |
msgid "Gabon"
|
1563 |
msgstr ""
|
1564 |
|
1565 |
-
#: core/helpers/helper-form-templates.php:1141
|
|
|
1566 |
msgid "United Kingdom"
|
1567 |
msgstr ""
|
1568 |
|
1569 |
-
#: core/helpers/helper-form-templates.php:1142
|
|
|
1570 |
msgid "Grenada"
|
1571 |
msgstr ""
|
1572 |
|
1573 |
-
#: core/helpers/helper-form-templates.php:1143
|
|
|
1574 |
msgid "Georgia"
|
1575 |
msgstr ""
|
1576 |
|
1577 |
-
#: core/helpers/helper-form-templates.php:1144
|
|
|
1578 |
msgid "French Guiana"
|
1579 |
msgstr ""
|
1580 |
|
@@ -1582,59 +1521,73 @@ msgstr ""
|
|
1582 |
msgid "Guernsey"
|
1583 |
msgstr ""
|
1584 |
|
1585 |
-
#: core/helpers/helper-form-templates.php:1146
|
|
|
1586 |
msgid "Ghana"
|
1587 |
msgstr ""
|
1588 |
|
1589 |
-
#: core/helpers/helper-form-templates.php:1147
|
|
|
1590 |
msgid "Gibraltar"
|
1591 |
msgstr ""
|
1592 |
|
1593 |
-
#: core/helpers/helper-form-templates.php:1148
|
|
|
1594 |
msgid "Greenland"
|
1595 |
msgstr ""
|
1596 |
|
1597 |
-
#: core/helpers/helper-form-templates.php:1149
|
|
|
1598 |
msgid "Gambia"
|
1599 |
msgstr ""
|
1600 |
|
1601 |
-
#: core/helpers/helper-form-templates.php:1150
|
|
|
1602 |
msgid "Guinea"
|
1603 |
msgstr ""
|
1604 |
|
1605 |
-
#: core/helpers/helper-form-templates.php:1151
|
|
|
1606 |
msgid "Guadeloupe"
|
1607 |
msgstr ""
|
1608 |
|
1609 |
-
#: core/helpers/helper-form-templates.php:1152
|
|
|
1610 |
msgid "Equatorial Guinea"
|
1611 |
msgstr ""
|
1612 |
|
1613 |
-
#: core/helpers/helper-form-templates.php:1153
|
|
|
1614 |
msgid "Greece"
|
1615 |
msgstr ""
|
1616 |
|
1617 |
-
#: core/helpers/helper-form-templates.php:1154
|
|
|
1618 |
msgid "Guatemala"
|
1619 |
msgstr ""
|
1620 |
|
1621 |
-
#: core/helpers/helper-form-templates.php:1155
|
|
|
1622 |
msgid "Guam"
|
1623 |
msgstr ""
|
1624 |
|
1625 |
-
#: core/helpers/helper-form-templates.php:1156
|
|
|
1626 |
msgid "Guinea-Bissau"
|
1627 |
msgstr ""
|
1628 |
|
1629 |
-
#: core/helpers/helper-form-templates.php:1157
|
|
|
1630 |
msgid "Guyana"
|
1631 |
msgstr ""
|
1632 |
|
1633 |
-
#: core/helpers/helper-form-templates.php:1158
|
|
|
1634 |
msgid "Hong Kong"
|
1635 |
msgstr ""
|
1636 |
|
1637 |
-
#: core/helpers/helper-form-templates.php:1159
|
|
|
1638 |
msgid "Honduras"
|
1639 |
msgstr ""
|
1640 |
|
@@ -1642,23 +1595,28 @@ msgstr ""
|
|
1642 |
msgid "Croatia"
|
1643 |
msgstr ""
|
1644 |
|
1645 |
-
#: core/helpers/helper-form-templates.php:1161
|
|
|
1646 |
msgid "Haiti"
|
1647 |
msgstr ""
|
1648 |
|
1649 |
-
#: core/helpers/helper-form-templates.php:1162
|
|
|
1650 |
msgid "Hungary"
|
1651 |
msgstr ""
|
1652 |
|
1653 |
-
#: core/helpers/helper-form-templates.php:1163
|
|
|
1654 |
msgid "Indonesia"
|
1655 |
msgstr ""
|
1656 |
|
1657 |
-
#: core/helpers/helper-form-templates.php:1164
|
|
|
1658 |
msgid "Ireland"
|
1659 |
msgstr ""
|
1660 |
|
1661 |
-
#: core/helpers/helper-form-templates.php:1165
|
|
|
1662 |
msgid "Israel"
|
1663 |
msgstr ""
|
1664 |
|
@@ -1666,15 +1624,18 @@ msgstr ""
|
|
1666 |
msgid "Isle of Man"
|
1667 |
msgstr ""
|
1668 |
|
1669 |
-
#: core/helpers/helper-form-templates.php:1167
|
|
|
1670 |
msgid "India"
|
1671 |
msgstr ""
|
1672 |
|
1673 |
-
#: core/helpers/helper-form-templates.php:1168
|
|
|
1674 |
msgid "British Indian Ocean Territory"
|
1675 |
msgstr ""
|
1676 |
|
1677 |
-
#: core/helpers/helper-form-templates.php:1169
|
|
|
1678 |
msgid "Iraq"
|
1679 |
msgstr ""
|
1680 |
|
@@ -1682,11 +1643,13 @@ msgstr ""
|
|
1682 |
msgid "Iran, Islamic Republic of"
|
1683 |
msgstr ""
|
1684 |
|
1685 |
-
#: core/helpers/helper-form-templates.php:1171
|
|
|
1686 |
msgid "Iceland"
|
1687 |
msgstr ""
|
1688 |
|
1689 |
-
#: core/helpers/helper-form-templates.php:1172
|
|
|
1690 |
msgid "Italy"
|
1691 |
msgstr ""
|
1692 |
|
@@ -1694,39 +1657,48 @@ msgstr ""
|
|
1694 |
msgid "Jersey"
|
1695 |
msgstr ""
|
1696 |
|
1697 |
-
#: core/helpers/helper-form-templates.php:1174
|
|
|
1698 |
msgid "Jamaica"
|
1699 |
msgstr ""
|
1700 |
|
1701 |
-
#: core/helpers/helper-form-templates.php:1175
|
|
|
1702 |
msgid "Jordan"
|
1703 |
msgstr ""
|
1704 |
|
1705 |
-
#: core/helpers/helper-form-templates.php:1176
|
|
|
1706 |
msgid "Japan"
|
1707 |
msgstr ""
|
1708 |
|
1709 |
-
#: core/helpers/helper-form-templates.php:1177
|
|
|
1710 |
msgid "Kenya"
|
1711 |
msgstr ""
|
1712 |
|
1713 |
-
#: core/helpers/helper-form-templates.php:1178
|
|
|
1714 |
msgid "Kyrgyzstan"
|
1715 |
msgstr ""
|
1716 |
|
1717 |
-
#: core/helpers/helper-form-templates.php:1179
|
|
|
1718 |
msgid "Cambodia"
|
1719 |
msgstr ""
|
1720 |
|
1721 |
-
#: core/helpers/helper-form-templates.php:1180
|
|
|
1722 |
msgid "Kiribati"
|
1723 |
msgstr ""
|
1724 |
|
1725 |
-
#: core/helpers/helper-form-templates.php:1181
|
|
|
1726 |
msgid "Comoros"
|
1727 |
msgstr ""
|
1728 |
|
1729 |
-
#: core/helpers/helper-form-templates.php:1182
|
|
|
1730 |
msgid "Saint Kitts and Nevis"
|
1731 |
msgstr ""
|
1732 |
|
@@ -1738,15 +1710,18 @@ msgstr ""
|
|
1738 |
msgid "South Korea"
|
1739 |
msgstr ""
|
1740 |
|
1741 |
-
#: core/helpers/helper-form-templates.php:1185
|
|
|
1742 |
msgid "Kuwait"
|
1743 |
msgstr ""
|
1744 |
|
1745 |
-
#: core/helpers/helper-form-templates.php:1186
|
|
|
1746 |
msgid "Cayman Islands"
|
1747 |
msgstr ""
|
1748 |
|
1749 |
-
#: core/helpers/helper-form-templates.php:1187
|
|
|
1750 |
msgid "Kazakhstan"
|
1751 |
msgstr ""
|
1752 |
|
@@ -1754,39 +1729,48 @@ msgstr ""
|
|
1754 |
msgid "Lao People's Democratic Republic"
|
1755 |
msgstr ""
|
1756 |
|
1757 |
-
#: core/helpers/helper-form-templates.php:1189
|
|
|
1758 |
msgid "Lebanon"
|
1759 |
msgstr ""
|
1760 |
|
1761 |
-
#: core/helpers/helper-form-templates.php:1190
|
|
|
1762 |
msgid "Saint Lucia"
|
1763 |
msgstr ""
|
1764 |
|
1765 |
-
#: core/helpers/helper-form-templates.php:1191
|
|
|
1766 |
msgid "Liechtenstein"
|
1767 |
msgstr ""
|
1768 |
|
1769 |
-
#: core/helpers/helper-form-templates.php:1192
|
|
|
1770 |
msgid "Sri Lanka"
|
1771 |
msgstr ""
|
1772 |
|
1773 |
-
#: core/helpers/helper-form-templates.php:1193
|
|
|
1774 |
msgid "Liberia"
|
1775 |
msgstr ""
|
1776 |
|
1777 |
-
#: core/helpers/helper-form-templates.php:1194
|
|
|
1778 |
msgid "Lesotho"
|
1779 |
msgstr ""
|
1780 |
|
1781 |
-
#: core/helpers/helper-form-templates.php:1195
|
|
|
1782 |
msgid "Lithuania"
|
1783 |
msgstr ""
|
1784 |
|
1785 |
-
#: core/helpers/helper-form-templates.php:1196
|
|
|
1786 |
msgid "Luxembourg"
|
1787 |
msgstr ""
|
1788 |
|
1789 |
-
#: core/helpers/helper-form-templates.php:1197
|
|
|
1790 |
msgid "Latvia"
|
1791 |
msgstr ""
|
1792 |
|
@@ -1794,15 +1778,18 @@ msgstr ""
|
|
1794 |
msgid "Libya"
|
1795 |
msgstr ""
|
1796 |
|
1797 |
-
#: core/helpers/helper-form-templates.php:1199
|
|
|
1798 |
msgid "Morocco"
|
1799 |
msgstr ""
|
1800 |
|
1801 |
-
#: core/helpers/helper-form-templates.php:1200
|
|
|
1802 |
msgid "Monaco"
|
1803 |
msgstr ""
|
1804 |
|
1805 |
-
#: core/helpers/helper-form-templates.php:1201
|
|
|
1806 |
msgid "Moldova, Republic of"
|
1807 |
msgstr ""
|
1808 |
|
@@ -1814,11 +1801,13 @@ msgstr ""
|
|
1814 |
msgid "Saint Martin (French part)"
|
1815 |
msgstr ""
|
1816 |
|
1817 |
-
#: core/helpers/helper-form-templates.php:1204
|
|
|
1818 |
msgid "Madagascar"
|
1819 |
msgstr ""
|
1820 |
|
1821 |
-
#: core/helpers/helper-form-templates.php:1205
|
|
|
1822 |
msgid "Marshall Islands"
|
1823 |
msgstr ""
|
1824 |
|
@@ -1826,15 +1815,18 @@ msgstr ""
|
|
1826 |
msgid "North Macedonia, Republic of"
|
1827 |
msgstr ""
|
1828 |
|
1829 |
-
#: core/helpers/helper-form-templates.php:1207
|
|
|
1830 |
msgid "Mali"
|
1831 |
msgstr ""
|
1832 |
|
1833 |
-
#: core/helpers/helper-form-templates.php:1208
|
|
|
1834 |
msgid "Myanmar"
|
1835 |
msgstr ""
|
1836 |
|
1837 |
-
#: core/helpers/helper-form-templates.php:1209
|
|
|
1838 |
msgid "Mongolia"
|
1839 |
msgstr ""
|
1840 |
|
@@ -1842,127 +1834,158 @@ msgstr ""
|
|
1842 |
msgid "Macao"
|
1843 |
msgstr ""
|
1844 |
|
1845 |
-
#: core/helpers/helper-form-templates.php:1211
|
|
|
1846 |
msgid "Northern Mariana Islands"
|
1847 |
msgstr ""
|
1848 |
|
1849 |
-
#: core/helpers/helper-form-templates.php:1212
|
|
|
1850 |
msgid "Martinique"
|
1851 |
msgstr ""
|
1852 |
|
1853 |
-
#: core/helpers/helper-form-templates.php:1213
|
|
|
1854 |
msgid "Mauritania"
|
1855 |
msgstr ""
|
1856 |
|
1857 |
-
#: core/helpers/helper-form-templates.php:1214
|
|
|
1858 |
msgid "Montserrat"
|
1859 |
msgstr ""
|
1860 |
|
1861 |
-
#: core/helpers/helper-form-templates.php:1215
|
|
|
1862 |
msgid "Malta"
|
1863 |
msgstr ""
|
1864 |
|
1865 |
-
#: core/helpers/helper-form-templates.php:1216
|
|
|
1866 |
msgid "Mauritius"
|
1867 |
msgstr ""
|
1868 |
|
1869 |
-
#: core/helpers/helper-form-templates.php:1217
|
|
|
1870 |
msgid "Maldives"
|
1871 |
msgstr ""
|
1872 |
|
1873 |
-
#: core/helpers/helper-form-templates.php:1218
|
|
|
1874 |
msgid "Malawi"
|
1875 |
msgstr ""
|
1876 |
|
1877 |
-
#: core/helpers/helper-form-templates.php:1219
|
|
|
1878 |
msgid "Mexico"
|
1879 |
msgstr ""
|
1880 |
|
1881 |
-
#: core/helpers/helper-form-templates.php:1220
|
|
|
1882 |
msgid "Malaysia"
|
1883 |
msgstr ""
|
1884 |
|
1885 |
-
#: core/helpers/helper-form-templates.php:1221
|
|
|
1886 |
msgid "Mozambique"
|
1887 |
msgstr ""
|
1888 |
|
1889 |
-
#: core/helpers/helper-form-templates.php:1222
|
|
|
1890 |
msgid "Namibia"
|
1891 |
msgstr ""
|
1892 |
|
1893 |
-
#: core/helpers/helper-form-templates.php:1223
|
|
|
1894 |
msgid "New Caledonia"
|
1895 |
msgstr ""
|
1896 |
|
1897 |
-
#: core/helpers/helper-form-templates.php:1224
|
|
|
1898 |
msgid "Niger"
|
1899 |
msgstr ""
|
1900 |
|
1901 |
-
#: core/helpers/helper-form-templates.php:1225
|
|
|
1902 |
msgid "Norfolk Island"
|
1903 |
msgstr ""
|
1904 |
|
1905 |
-
#: core/helpers/helper-form-templates.php:1226
|
|
|
1906 |
msgid "Nigeria"
|
1907 |
msgstr ""
|
1908 |
|
1909 |
-
#: core/helpers/helper-form-templates.php:1227
|
|
|
1910 |
msgid "Nicaragua"
|
1911 |
msgstr ""
|
1912 |
|
1913 |
-
#: core/helpers/helper-form-templates.php:1228
|
|
|
1914 |
msgid "Netherlands"
|
1915 |
msgstr ""
|
1916 |
|
1917 |
-
#: core/helpers/helper-form-templates.php:1229
|
|
|
1918 |
msgid "Norway"
|
1919 |
msgstr ""
|
1920 |
|
1921 |
-
#: core/helpers/helper-form-templates.php:1230
|
|
|
1922 |
msgid "Nepal"
|
1923 |
msgstr ""
|
1924 |
|
1925 |
-
#: core/helpers/helper-form-templates.php:1231
|
|
|
1926 |
msgid "Nauru"
|
1927 |
msgstr ""
|
1928 |
|
1929 |
-
#: core/helpers/helper-form-templates.php:1232
|
|
|
1930 |
msgid "Niue"
|
1931 |
msgstr ""
|
1932 |
|
1933 |
-
#: core/helpers/helper-form-templates.php:1233
|
|
|
1934 |
msgid "New Zealand"
|
1935 |
msgstr ""
|
1936 |
|
1937 |
-
#: core/helpers/helper-form-templates.php:1234
|
|
|
1938 |
msgid "Oman"
|
1939 |
msgstr ""
|
1940 |
|
1941 |
-
#: core/helpers/helper-form-templates.php:1235
|
|
|
1942 |
msgid "Panama"
|
1943 |
msgstr ""
|
1944 |
|
1945 |
-
#: core/helpers/helper-form-templates.php:1236
|
|
|
1946 |
msgid "Peru"
|
1947 |
msgstr ""
|
1948 |
|
1949 |
-
#: core/helpers/helper-form-templates.php:1237
|
|
|
1950 |
msgid "French Polynesia"
|
1951 |
msgstr ""
|
1952 |
|
1953 |
-
#: core/helpers/helper-form-templates.php:1238
|
|
|
1954 |
msgid "Papua New Guinea"
|
1955 |
msgstr ""
|
1956 |
|
1957 |
-
#: core/helpers/helper-form-templates.php:1239
|
|
|
1958 |
msgid "Philippines"
|
1959 |
msgstr ""
|
1960 |
|
1961 |
-
#: core/helpers/helper-form-templates.php:1240
|
|
|
1962 |
msgid "Pakistan"
|
1963 |
msgstr ""
|
1964 |
|
1965 |
-
#: core/helpers/helper-form-templates.php:1241
|
|
|
1966 |
msgid "Poland"
|
1967 |
msgstr ""
|
1968 |
|
@@ -1970,7 +1993,8 @@ msgstr ""
|
|
1970 |
msgid "Saint Pierre and Miquelon"
|
1971 |
msgstr ""
|
1972 |
|
1973 |
-
#: core/helpers/helper-form-templates.php:1243
|
|
|
1974 |
msgid "Puerto Rico"
|
1975 |
msgstr ""
|
1976 |
|
@@ -1978,27 +2002,33 @@ msgstr ""
|
|
1978 |
msgid "Palestinian Territory, Occupied"
|
1979 |
msgstr ""
|
1980 |
|
1981 |
-
#: core/helpers/helper-form-templates.php:1245
|
|
|
1982 |
msgid "Portugal"
|
1983 |
msgstr ""
|
1984 |
|
1985 |
-
#: core/helpers/helper-form-templates.php:1246
|
|
|
1986 |
msgid "Palau"
|
1987 |
msgstr ""
|
1988 |
|
1989 |
-
#: core/helpers/helper-form-templates.php:1247
|
|
|
1990 |
msgid "Paraguay"
|
1991 |
msgstr ""
|
1992 |
|
1993 |
-
#: core/helpers/helper-form-templates.php:1248
|
|
|
1994 |
msgid "Qatar"
|
1995 |
msgstr ""
|
1996 |
|
1997 |
-
#: core/helpers/helper-form-templates.php:1249
|
|
|
1998 |
msgid "Reunion"
|
1999 |
msgstr ""
|
2000 |
|
2001 |
-
#: core/helpers/helper-form-templates.php:1250
|
|
|
2002 |
msgid "Romania"
|
2003 |
msgstr ""
|
2004 |
|
@@ -2006,35 +2036,43 @@ msgstr ""
|
|
2006 |
msgid "Serbia"
|
2007 |
msgstr ""
|
2008 |
|
2009 |
-
#: core/helpers/helper-form-templates.php:1252
|
|
|
2010 |
msgid "Russian Federation"
|
2011 |
msgstr ""
|
2012 |
|
2013 |
-
#: core/helpers/helper-form-templates.php:1253
|
|
|
2014 |
msgid "Rwanda"
|
2015 |
msgstr ""
|
2016 |
|
2017 |
-
#: core/helpers/helper-form-templates.php:1254
|
|
|
2018 |
msgid "Saudi Arabia"
|
2019 |
msgstr ""
|
2020 |
|
2021 |
-
#: core/helpers/helper-form-templates.php:1255
|
|
|
2022 |
msgid "Solomon Islands"
|
2023 |
msgstr ""
|
2024 |
|
2025 |
-
#: core/helpers/helper-form-templates.php:1256
|
|
|
2026 |
msgid "Seychelles"
|
2027 |
msgstr ""
|
2028 |
|
2029 |
-
#: core/helpers/helper-form-templates.php:1257
|
|
|
2030 |
msgid "Sudan"
|
2031 |
msgstr ""
|
2032 |
|
2033 |
-
#: core/helpers/helper-form-templates.php:1258
|
|
|
2034 |
msgid "Sweden"
|
2035 |
msgstr ""
|
2036 |
|
2037 |
-
#: core/helpers/helper-form-templates.php:1259
|
|
|
2038 |
msgid "Singapore"
|
2039 |
msgstr ""
|
2040 |
|
@@ -2043,7 +2081,8 @@ msgstr ""
|
|
2043 |
msgid "Saint Helena"
|
2044 |
msgstr ""
|
2045 |
|
2046 |
-
#: core/helpers/helper-form-templates.php:1261
|
|
|
2047 |
msgid "Slovenia"
|
2048 |
msgstr ""
|
2049 |
|
@@ -2055,23 +2094,28 @@ msgstr ""
|
|
2055 |
msgid "Slovakia"
|
2056 |
msgstr ""
|
2057 |
|
2058 |
-
#: core/helpers/helper-form-templates.php:1264
|
|
|
2059 |
msgid "Sierra Leone"
|
2060 |
msgstr ""
|
2061 |
|
2062 |
-
#: core/helpers/helper-form-templates.php:1265
|
|
|
2063 |
msgid "San Marino"
|
2064 |
msgstr ""
|
2065 |
|
2066 |
-
#: core/helpers/helper-form-templates.php:1266
|
|
|
2067 |
msgid "Senegal"
|
2068 |
msgstr ""
|
2069 |
|
2070 |
-
#: core/helpers/helper-form-templates.php:1267
|
|
|
2071 |
msgid "Somalia"
|
2072 |
msgstr ""
|
2073 |
|
2074 |
-
#: core/helpers/helper-form-templates.php:1268
|
|
|
2075 |
msgid "Suriname"
|
2076 |
msgstr ""
|
2077 |
|
@@ -2079,11 +2123,13 @@ msgstr ""
|
|
2079 |
msgid "South Sudan"
|
2080 |
msgstr ""
|
2081 |
|
2082 |
-
#: core/helpers/helper-form-templates.php:1270
|
|
|
2083 |
msgid "Sao Tome and Principe"
|
2084 |
msgstr ""
|
2085 |
|
2086 |
-
#: core/helpers/helper-form-templates.php:1271
|
|
|
2087 |
msgid "El Salvador"
|
2088 |
msgstr ""
|
2089 |
|
@@ -2091,7 +2137,8 @@ msgstr ""
|
|
2091 |
msgid "Sint Maarten (Dutch part)"
|
2092 |
msgstr ""
|
2093 |
|
2094 |
-
#: core/helpers/helper-form-templates.php:1273
|
|
|
2095 |
msgid "Syrian Arab Republic"
|
2096 |
msgstr ""
|
2097 |
|
@@ -2099,27 +2146,33 @@ msgstr ""
|
|
2099 |
msgid "Eswatini"
|
2100 |
msgstr ""
|
2101 |
|
2102 |
-
#: core/helpers/helper-form-templates.php:1276
|
|
|
2103 |
msgid "Turks and Caicos Islands"
|
2104 |
msgstr ""
|
2105 |
|
2106 |
-
#: core/helpers/helper-form-templates.php:1277
|
|
|
2107 |
msgid "Chad"
|
2108 |
msgstr ""
|
2109 |
|
2110 |
-
#: core/helpers/helper-form-templates.php:1278
|
|
|
2111 |
msgid "Togo"
|
2112 |
msgstr ""
|
2113 |
|
2114 |
-
#: core/helpers/helper-form-templates.php:1279
|
|
|
2115 |
msgid "Thailand"
|
2116 |
msgstr ""
|
2117 |
|
2118 |
-
#: core/helpers/helper-form-templates.php:1280
|
|
|
2119 |
msgid "Tajikistan"
|
2120 |
msgstr ""
|
2121 |
|
2122 |
-
#: core/helpers/helper-form-templates.php:1281
|
|
|
2123 |
msgid "Tokelau"
|
2124 |
msgstr ""
|
2125 |
|
@@ -2127,27 +2180,33 @@ msgstr ""
|
|
2127 |
msgid "Timor-Leste"
|
2128 |
msgstr ""
|
2129 |
|
2130 |
-
#: core/helpers/helper-form-templates.php:1283
|
|
|
2131 |
msgid "Turkmenistan"
|
2132 |
msgstr ""
|
2133 |
|
2134 |
-
#: core/helpers/helper-form-templates.php:1284
|
|
|
2135 |
msgid "Tunisia"
|
2136 |
msgstr ""
|
2137 |
|
2138 |
-
#: core/helpers/helper-form-templates.php:1285
|
|
|
2139 |
msgid "Tonga"
|
2140 |
msgstr ""
|
2141 |
|
2142 |
-
#: core/helpers/helper-form-templates.php:1286
|
|
|
2143 |
msgid "Turkey"
|
2144 |
msgstr ""
|
2145 |
|
2146 |
-
#: core/helpers/helper-form-templates.php:1287
|
|
|
2147 |
msgid "Trinidad and Tobago"
|
2148 |
msgstr ""
|
2149 |
|
2150 |
-
#: core/helpers/helper-form-templates.php:1288
|
|
|
2151 |
msgid "Tuvalu"
|
2152 |
msgstr ""
|
2153 |
|
@@ -2155,15 +2214,18 @@ msgstr ""
|
|
2155 |
msgid "Taiwan"
|
2156 |
msgstr ""
|
2157 |
|
2158 |
-
#: core/helpers/helper-form-templates.php:1290
|
|
|
2159 |
msgid "Tanzania, United Republic of"
|
2160 |
msgstr ""
|
2161 |
|
2162 |
-
#: core/helpers/helper-form-templates.php:1291
|
|
|
2163 |
msgid "Ukraine"
|
2164 |
msgstr ""
|
2165 |
|
2166 |
-
#: core/helpers/helper-form-templates.php:1292
|
|
|
2167 |
msgid "Uganda"
|
2168 |
msgstr ""
|
2169 |
|
@@ -2171,23 +2233,28 @@ msgstr ""
|
|
2171 |
msgid "United States of America"
|
2172 |
msgstr ""
|
2173 |
|
2174 |
-
#: core/helpers/helper-form-templates.php:1294
|
|
|
2175 |
msgid "Uruguay"
|
2176 |
msgstr ""
|
2177 |
|
2178 |
-
#: core/helpers/helper-form-templates.php:1295
|
|
|
2179 |
msgid "Uzbekistan"
|
2180 |
msgstr ""
|
2181 |
|
2182 |
-
#: core/helpers/helper-form-templates.php:1296
|
|
|
2183 |
msgid "Holy See (Vatican City State)"
|
2184 |
msgstr ""
|
2185 |
|
2186 |
-
#: core/helpers/helper-form-templates.php:1297
|
|
|
2187 |
msgid "Saint Vincent and the Grenadines"
|
2188 |
msgstr ""
|
2189 |
|
2190 |
-
#: core/helpers/helper-form-templates.php:1298
|
|
|
2191 |
msgid "Venezuela"
|
2192 |
msgstr ""
|
2193 |
|
@@ -2199,11 +2266,13 @@ msgstr ""
|
|
2199 |
msgid "Virgin Islands, U.S."
|
2200 |
msgstr ""
|
2201 |
|
2202 |
-
#: core/helpers/helper-form-templates.php:1301
|
|
|
2203 |
msgid "Vietnam"
|
2204 |
msgstr ""
|
2205 |
|
2206 |
-
#: core/helpers/helper-form-templates.php:1302
|
|
|
2207 |
msgid "Vanuatu"
|
2208 |
msgstr ""
|
2209 |
|
@@ -2211,7 +2280,8 @@ msgstr ""
|
|
2211 |
msgid "Wallis and Futuna"
|
2212 |
msgstr ""
|
2213 |
|
2214 |
-
#: core/helpers/helper-form-templates.php:1304
|
|
|
2215 |
msgid "Samoa"
|
2216 |
msgstr ""
|
2217 |
|
@@ -2219,23 +2289,28 @@ msgstr ""
|
|
2219 |
msgid "Kosovo"
|
2220 |
msgstr ""
|
2221 |
|
2222 |
-
#: core/helpers/helper-form-templates.php:1306
|
|
|
2223 |
msgid "Yemen"
|
2224 |
msgstr ""
|
2225 |
|
2226 |
-
#: core/helpers/helper-form-templates.php:1307
|
|
|
2227 |
msgid "Mayotte"
|
2228 |
msgstr ""
|
2229 |
|
2230 |
-
#: core/helpers/helper-form-templates.php:1308
|
|
|
2231 |
msgid "South Africa"
|
2232 |
msgstr ""
|
2233 |
|
2234 |
-
#: core/helpers/helper-form-templates.php:1309
|
|
|
2235 |
msgid "Zambia"
|
2236 |
msgstr ""
|
2237 |
|
2238 |
-
#: core/helpers/helper-form-templates.php:1310
|
|
|
2239 |
msgid "Zimbabwe"
|
2240 |
msgstr ""
|
2241 |
|
@@ -2915,23 +2990,13 @@ msgstr ""
|
|
2915 |
msgid "Yoruba"
|
2916 |
msgstr ""
|
2917 |
|
2918 |
-
#: core/templates/admin/modal-deactivate.php:2
|
2919 |
-
msgid "What about your data?"
|
2920 |
-
msgstr ""
|
2921 |
-
|
2922 |
-
#: core/templates/admin/modal-deactivate.php:9
|
2923 |
-
msgid "Keep plugin data (recommended)"
|
2924 |
-
msgstr ""
|
2925 |
-
|
2926 |
-
#: core/templates/admin/modal-deactivate.php:13
|
2927 |
-
msgid "Permanently delete plugin data"
|
2928 |
-
msgstr ""
|
2929 |
-
|
2930 |
#: core/templates/admin-form-modal.php:5
|
2931 |
msgid "Choose a form"
|
2932 |
msgstr ""
|
2933 |
|
2934 |
#: core/templates/admin-form-modal.php:12
|
|
|
|
|
2935 |
msgid "Insert"
|
2936 |
msgstr ""
|
2937 |
|
@@ -2975,8 +3040,8 @@ msgstr ""
|
|
2975 |
|
2976 |
#: core/templates/customize-form-item.php:33
|
2977 |
#: core/templates/customize-form-part-footer.php:3
|
2978 |
-
#: core/templates/parts/customize-checkbox.php:
|
2979 |
-
#: core/templates/parts/customize-radio.php:
|
2980 |
#: core/templates/parts/customize-select.php:126
|
2981 |
msgid "Delete"
|
2982 |
msgstr ""
|
@@ -3004,7 +3069,7 @@ msgid "Clear Results"
|
|
3004 |
msgstr ""
|
3005 |
|
3006 |
#: core/templates/customize-form-parts-drawer.php:38
|
3007 |
-
#: inc/classes/class-happyforms.php:
|
3008 |
#: inc/templates/customize-controls/checkbox_dummy.php:7
|
3009 |
#: inc/templates/customize-controls/email-parts-list-dummy.php:11
|
3010 |
msgid "Upgrade"
|
@@ -3051,32 +3116,22 @@ msgid "Close"
|
|
3051 |
msgstr ""
|
3052 |
|
3053 |
#: core/templates/partials/customize-field-width.php:4
|
3054 |
-
#: core/templates/parts/customize-checkbox.php:113
|
3055 |
-
#: core/templates/parts/customize-radio.php:87
|
3056 |
msgid "Full"
|
3057 |
msgstr ""
|
3058 |
|
3059 |
#: core/templates/partials/customize-field-width.php:5
|
3060 |
-
#: core/templates/parts/customize-checkbox.php:114
|
3061 |
-
#: core/templates/parts/customize-radio.php:88
|
3062 |
msgid "Half"
|
3063 |
msgstr ""
|
3064 |
|
3065 |
#: core/templates/partials/customize-field-width.php:6
|
3066 |
-
#: core/templates/parts/customize-checkbox.php:115
|
3067 |
-
#: core/templates/parts/customize-radio.php:89
|
3068 |
msgid "Third"
|
3069 |
msgstr ""
|
3070 |
|
3071 |
#: core/templates/partials/customize-field-width.php:7
|
3072 |
-
#: core/templates/parts/customize-checkbox.php:116
|
3073 |
-
#: core/templates/parts/customize-radio.php:90
|
3074 |
msgid "Quarter"
|
3075 |
msgstr ""
|
3076 |
|
3077 |
#: core/templates/partials/customize-field-width.php:8
|
3078 |
-
#: core/templates/parts/customize-checkbox.php:117
|
3079 |
-
#: core/templates/parts/customize-radio.php:91
|
3080 |
msgid "Auto"
|
3081 |
msgstr ""
|
3082 |
|
@@ -3099,12 +3154,6 @@ msgstr ""
|
|
3099 |
msgid "No choices added yet."
|
3100 |
msgstr ""
|
3101 |
|
3102 |
-
#: core/templates/parts/customize-checkbox.php:33
|
3103 |
-
#: core/templates/parts/customize-radio.php:33
|
3104 |
-
#: core/templates/parts/customize-select.php:37
|
3105 |
-
msgid "Type or paste your choices here, adding each on a new line."
|
3106 |
-
msgstr ""
|
3107 |
-
|
3108 |
#: core/templates/parts/customize-checkbox.php:36
|
3109 |
#: core/templates/parts/customize-radio.php:36
|
3110 |
#: core/templates/parts/customize-select.php:40
|
@@ -3198,48 +3247,43 @@ msgstr ""
|
|
3198 |
msgid "Vertical"
|
3199 |
msgstr ""
|
3200 |
|
3201 |
-
#: core/templates/parts/customize-checkbox.php:
|
3202 |
-
#: core/templates/parts/customize-radio.php:85
|
3203 |
-
msgid "Choices width"
|
3204 |
-
msgstr ""
|
3205 |
-
|
3206 |
-
#: core/templates/parts/customize-checkbox.php:126
|
3207 |
#: core/templates/parts/customize-email.php:58
|
3208 |
#: core/templates/parts/customize-multi-line-text.php:82
|
3209 |
#: core/templates/parts/customize-number.php:81
|
3210 |
-
#: core/templates/parts/customize-radio.php:
|
3211 |
#: core/templates/parts/customize-select.php:86
|
3212 |
#: core/templates/parts/customize-single-line-text.php:57
|
3213 |
-
msgid "CSS
|
3214 |
msgstr ""
|
3215 |
|
3216 |
-
#: core/templates/parts/customize-checkbox.php:
|
3217 |
-
#: core/templates/parts/customize-radio.php:
|
3218 |
#: core/templates/parts/customize-select.php:110
|
3219 |
msgid "Make this choice default"
|
3220 |
msgstr ""
|
3221 |
|
3222 |
-
#: core/templates/parts/customize-checkbox.php:
|
3223 |
-
#: core/templates/parts/customize-radio.php:
|
3224 |
#: core/templates/parts/customize-select.php:113
|
3225 |
-
#: inc/classes/class-happyforms.php:
|
3226 |
msgid "Limit submissions"
|
3227 |
msgstr ""
|
3228 |
|
3229 |
-
#: core/templates/parts/customize-checkbox.php:
|
3230 |
-
#: core/templates/parts/customize-radio.php:
|
3231 |
#: core/templates/parts/customize-select.php:117
|
3232 |
msgid "Max submissions"
|
3233 |
msgstr ""
|
3234 |
|
3235 |
-
#: core/templates/parts/customize-checkbox.php:
|
3236 |
-
#: core/templates/parts/customize-radio.php:
|
3237 |
#: core/templates/parts/customize-select.php:121
|
3238 |
msgid "Show remaining submissions"
|
3239 |
msgstr ""
|
3240 |
|
3241 |
-
#: core/templates/parts/customize-checkbox.php:
|
3242 |
-
#: core/templates/parts/customize-radio.php:
|
3243 |
#: core/templates/parts/customize-select.php:127
|
3244 |
msgid "More"
|
3245 |
msgstr ""
|
@@ -3307,67 +3351,65 @@ msgstr ""
|
|
3307 |
msgid "Click to edit this part."
|
3308 |
msgstr ""
|
3309 |
|
3310 |
-
#: inc/classes/class-happyforms.php:
|
3311 |
msgid "Use reCAPTCHA"
|
3312 |
msgstr ""
|
3313 |
|
3314 |
-
#: inc/classes/class-happyforms.php:
|
3315 |
msgid "Save incomplete and abandoned submissions"
|
3316 |
msgstr ""
|
3317 |
|
3318 |
-
#: inc/classes/class-happyforms.php:
|
3319 |
msgid "Let respondents save a draft submission and come back to it later"
|
3320 |
msgstr ""
|
3321 |
|
3322 |
-
#: inc/classes/class-happyforms.php:
|
3323 |
msgid "Require respondents to review a submission before submitting"
|
3324 |
msgstr ""
|
3325 |
|
3326 |
-
#: inc/classes/class-happyforms.php:
|
3327 |
-
msgid "Disable buttons until required fields are answered"
|
3328 |
-
msgstr ""
|
3329 |
-
|
3330 |
-
#: inc/classes/class-happyforms.php:166
|
3331 |
msgid "Schedule visibility"
|
3332 |
msgstr ""
|
3333 |
|
3334 |
-
#: inc/classes/class-happyforms.php:
|
3335 |
msgid "Store activity in database"
|
3336 |
msgstr ""
|
3337 |
|
3338 |
-
#: inc/classes/class-happyforms.php:
|
3339 |
msgid "Capture user metadata (IP, language, platform, time and timezone)"
|
3340 |
msgstr ""
|
3341 |
|
3342 |
-
#: inc/classes/class-happyforms.php:
|
3343 |
msgid "Block these email addresses, email domains and email partials"
|
3344 |
msgstr ""
|
3345 |
|
3346 |
-
#: inc/classes/class-happyforms.php:
|
3347 |
msgid "Block these words, phrases and letters"
|
3348 |
msgstr ""
|
3349 |
|
3350 |
-
#: inc/classes/class-happyforms.php:
|
3351 |
msgid "Include reply link"
|
3352 |
msgstr ""
|
3353 |
|
3354 |
-
#: inc/classes/class-happyforms.php:
|
3355 |
msgid "Include referral web address"
|
3356 |
msgstr ""
|
3357 |
|
3358 |
-
#: inc/classes/class-happyforms.php:
|
|
|
3359 |
msgid "Attach .pdf"
|
3360 |
msgstr ""
|
3361 |
|
3362 |
-
#: inc/classes/class-happyforms.php:
|
3363 |
msgid "To email address"
|
3364 |
msgstr ""
|
3365 |
|
3366 |
-
#: inc/classes/class-happyforms.php:
|
3367 |
msgid "Send abandonment email"
|
3368 |
msgstr ""
|
3369 |
|
3370 |
-
#: inc/classes/class-happyforms.php:
|
|
|
3371 |
msgid "Build your own WordPress form with Happyforms"
|
3372 |
msgstr ""
|
3373 |
|
@@ -3403,12 +3445,12 @@ msgstr ""
|
|
3403 |
msgid "Spam"
|
3404 |
msgstr ""
|
3405 |
|
3406 |
-
#: inc/classes/class-message-controller.php:
|
3407 |
-
#: inc/classes/class-message-controller.php:
|
3408 |
msgid "All Activity"
|
3409 |
msgstr ""
|
3410 |
|
3411 |
-
#: inc/classes/class-message-controller.php:
|
3412 |
msgid "No activity found."
|
3413 |
msgstr ""
|
3414 |
|
@@ -3588,55 +3630,6 @@ msgstr ""
|
|
3588 |
msgid "For formatted site URLs."
|
3589 |
msgstr ""
|
3590 |
|
3591 |
-
#: inc/templates/admin/modal-onboarding.php:4
|
3592 |
-
msgid "Welcome to Happyforms"
|
3593 |
-
msgstr ""
|
3594 |
-
|
3595 |
-
#: inc/templates/admin/modal-onboarding.php:5
|
3596 |
-
msgid "Tell us about yourself and we'll get you set up in no time*"
|
3597 |
-
msgstr ""
|
3598 |
-
|
3599 |
-
#: inc/templates/admin/modal-onboarding.php:13
|
3600 |
-
#: inc/templates/admin/modal-onboarding.php:31
|
3601 |
-
msgid ""
|
3602 |
-
"Yes, I want to help support the free plugin by adding a powered by link in "
|
3603 |
-
"the footer of my forms and emails."
|
3604 |
-
msgstr ""
|
3605 |
-
|
3606 |
-
#: inc/templates/admin/modal-onboarding.php:15
|
3607 |
-
msgid "Complete Set Up"
|
3608 |
-
msgstr ""
|
3609 |
-
|
3610 |
-
#: inc/templates/admin/modal-onboarding.php:16
|
3611 |
-
msgid "*By submitting you're okay for us to send you occasional marketing emails."
|
3612 |
-
msgstr ""
|
3613 |
-
|
3614 |
-
#: inc/templates/admin/modal-onboarding.php:24
|
3615 |
-
msgid "Powered by Happyforms"
|
3616 |
-
msgstr ""
|
3617 |
-
|
3618 |
-
#: inc/templates/admin/modal-onboarding.php:25
|
3619 |
-
msgid "All it takes is one little \"yes\" from you to help us out."
|
3620 |
-
msgstr ""
|
3621 |
-
|
3622 |
-
#: inc/templates/admin/modal-onboarding.php:33
|
3623 |
-
msgid "Complete"
|
3624 |
-
msgstr ""
|
3625 |
-
|
3626 |
-
#: inc/templates/admin/modal-upgrade.php:2
|
3627 |
-
msgid "You’ll need to upgrade<br> to access this"
|
3628 |
-
msgstr ""
|
3629 |
-
|
3630 |
-
#: inc/templates/admin/modal-upgrade.php:3
|
3631 |
-
msgid ""
|
3632 |
-
"We offer several, affordable paid plans that include our best features. "
|
3633 |
-
"Upgrade today and increase your customer interactions."
|
3634 |
-
msgstr ""
|
3635 |
-
|
3636 |
-
#: inc/templates/admin/modal-upgrade.php:6
|
3637 |
-
msgid "Start Your Risk-Free 14-Day Trial"
|
3638 |
-
msgstr ""
|
3639 |
-
|
3640 |
#: inc/templates/customize-controls/email-parts-list-dummy.php:8
|
3641 |
msgid "field"
|
3642 |
msgstr ""
|
@@ -3821,9 +3814,7 @@ msgid "Tracking ID"
|
|
3821 |
msgstr ""
|
3822 |
|
3823 |
#: integrations/templates/widget-mailpoet-dummy.php:5
|
3824 |
-
msgid ""
|
3825 |
-
"MailPoet plugin must first be installed and activated to use this "
|
3826 |
-
"integration."
|
3827 |
msgstr ""
|
3828 |
|
3829 |
#: integrations/templates/widget-paypal-dummy.php:4
|
@@ -3862,18 +3853,73 @@ msgstr ""
|
|
3862 |
msgid "Publishable key"
|
3863 |
msgstr ""
|
3864 |
|
3865 |
-
|
3866 |
-
|
|
|
3867 |
msgstr ""
|
3868 |
|
3869 |
-
|
3870 |
-
|
|
|
3871 |
msgstr ""
|
3872 |
|
3873 |
-
|
3874 |
-
msgid "
|
3875 |
msgstr ""
|
3876 |
|
3877 |
-
|
3878 |
-
msgid "
|
3879 |
-
msgstr ""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
# Copyright (C) 2021 Happyforms
|
2 |
+
# This file is distributed under the same license as the Happyforms (free) plugin.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: Happyforms (free) 1.13.4\n"
|
6 |
+
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/happyforms/\n"
|
|
|
|
|
|
|
|
|
|
|
7 |
"Last-Translator: The Theme Foundry\n"
|
8 |
"Language-Team: The Theme Foundry\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"POT-Creation-Date: 2021-10-06T08:13:31+00:00\n"
|
13 |
+
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
14 |
+
"X-Generator: WP-CLI 2.4.0\n"
|
15 |
+
"X-Domain: happyforms\n"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
|
17 |
+
#. Plugin Name of the plugin
|
18 |
+
msgid "Happyforms (free)"
|
19 |
msgstr ""
|
20 |
|
21 |
+
#. Plugin URI of the plugin
|
22 |
+
#. Author URI of the plugin
|
23 |
+
msgid "https://happyforms.io"
|
24 |
msgstr ""
|
25 |
|
26 |
+
#. Description of the plugin
|
27 |
+
msgid "We're changin' WordPress forms."
|
28 |
msgstr ""
|
29 |
|
30 |
+
#. Author of the plugin
|
31 |
+
msgid "Happyforms"
|
32 |
msgstr ""
|
33 |
|
34 |
+
#: core/classes/class-block.php:52
|
35 |
+
#: core/classes/class-form-controller.php:72
|
36 |
+
#: core/classes/class-happyforms-core.php:173
|
37 |
+
#: core/classes/class-happyforms-core.php:174
|
38 |
+
#: core/classes/class-happyforms-widget.php:13
|
39 |
+
#: core/helpers/helper-misc.php:1017
|
40 |
+
msgid "Forms"
|
41 |
msgstr ""
|
42 |
|
43 |
+
#: core/classes/class-block.php:53
|
44 |
+
#: core/classes/class-happyforms-widget.php:15
|
45 |
+
msgid "Displays a form."
|
46 |
msgstr ""
|
47 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
48 |
#: core/classes/class-form-admin.php:282
|
49 |
msgid "Shortcode"
|
50 |
msgstr ""
|
61 |
msgid "Copy to clipboard"
|
62 |
msgstr ""
|
63 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
64 |
#: core/classes/class-form-admin.php:343
|
65 |
msgid "Last modified"
|
66 |
msgstr ""
|
75 |
msgid "Duplicate"
|
76 |
msgstr ""
|
77 |
|
78 |
+
#: core/classes/class-form-admin.php:423
|
79 |
+
#: inc/classes/class-message-admin.php:83
|
80 |
msgid "Trash"
|
81 |
msgstr ""
|
82 |
|
107 |
msgid "Edit form"
|
108 |
msgstr ""
|
109 |
|
110 |
+
#: core/classes/class-form-controller.php:78
|
111 |
+
msgid "View form"
|
112 |
+
msgstr ""
|
113 |
+
|
114 |
#: core/classes/class-form-controller.php:79
|
115 |
msgid "View forms"
|
116 |
msgstr ""
|
119 |
msgid "Search Forms"
|
120 |
msgstr ""
|
121 |
|
122 |
+
#: core/classes/class-form-controller.php:81
|
123 |
+
#: core/assets/jsx/build/admin/block.js:141
|
124 |
+
#: core/assets/jsx/src/admin/block.js:27
|
125 |
+
msgid "No forms found."
|
126 |
+
msgstr ""
|
127 |
+
|
128 |
#: core/classes/class-form-controller.php:82
|
129 |
msgid "No forms found in Trash."
|
130 |
msgstr ""
|
140 |
msgid "(no title)"
|
141 |
msgstr ""
|
142 |
|
143 |
+
#: core/classes/class-form-controller.php:637
|
144 |
msgid " Copy"
|
145 |
msgstr ""
|
146 |
|
153 |
msgstr ""
|
154 |
|
155 |
#: core/classes/class-form-email.php:71
|
156 |
+
msgid "Your message has been successfully sent. We appreciate you contacting us and we’ll be in touch soon."
|
|
|
|
|
157 |
msgstr ""
|
158 |
|
159 |
#: core/classes/class-form-email.php:87
|
161 |
msgstr ""
|
162 |
|
163 |
#: core/classes/class-form-email.php:96
|
164 |
+
#: inc/assets/jsx/build/admin/dashboard-modals.js:282
|
165 |
+
#: inc/assets/jsx/src/admin/dashboard-modals.js:51
|
166 |
msgid "Email address"
|
167 |
msgstr ""
|
168 |
|
170 |
msgid "Email Bcc address"
|
171 |
msgstr ""
|
172 |
|
173 |
+
#: core/classes/class-form-email.php:106
|
174 |
+
#: core/classes/class-form-email.php:138
|
175 |
msgid "Email display name"
|
176 |
msgstr ""
|
177 |
|
178 |
+
#: core/classes/class-form-email.php:111
|
179 |
+
#: core/classes/class-form-email.php:143
|
180 |
msgid "Email subject"
|
181 |
msgstr ""
|
182 |
|
255 |
msgstr ""
|
256 |
|
257 |
#: core/classes/class-form-messages.php:94
|
258 |
+
msgid "These messages are shown to respondents at the very top of the form to communicate the form’s status."
|
|
|
|
|
259 |
msgstr ""
|
260 |
|
261 |
#: core/classes/class-form-messages.php:104
|
263 |
msgstr ""
|
264 |
|
265 |
#: core/classes/class-form-messages.php:105
|
266 |
+
msgid "The messages are shown to respondents as they fill out the form to help them trigger an action."
|
|
|
|
|
267 |
msgstr ""
|
268 |
|
269 |
#: core/classes/class-form-messages.php:114
|
271 |
msgstr ""
|
272 |
|
273 |
#: core/classes/class-form-messages.php:115
|
274 |
+
msgid "These messages are shown to respondents when they try to submit their reply but one or more fields has a mistake."
|
|
|
|
|
275 |
msgstr ""
|
276 |
|
277 |
#: core/classes/class-form-messages.php:124
|
279 |
msgstr ""
|
280 |
|
281 |
#: core/classes/class-form-messages.php:125
|
282 |
+
msgid "These messages are shown to respondents as they fill out the form to help them avoid mistakes."
|
|
|
|
|
283 |
msgstr ""
|
284 |
|
285 |
#: core/classes/class-form-messages.php:132
|
330 |
msgid "Remaining submissions"
|
331 |
msgstr ""
|
332 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
333 |
#: core/classes/class-form-part-library.php:227
|
334 |
msgid "Missing validation callback for field %s"
|
335 |
msgstr ""
|
336 |
|
337 |
+
#: core/classes/class-form-setup.php:98
|
338 |
msgid "Validate your submission"
|
339 |
msgstr ""
|
340 |
|
341 |
+
#: core/classes/class-form-setup.php:133
|
342 |
msgid "Thank you. Your reply has been sent."
|
343 |
msgstr ""
|
344 |
|
345 |
+
#: core/classes/class-form-setup.php:137
|
346 |
msgid "Bummer. We can't submit your reply. Please check for mistakes."
|
347 |
msgstr ""
|
348 |
|
349 |
+
#: core/classes/class-form-setup.php:141
|
350 |
msgid "Send"
|
351 |
msgstr ""
|
352 |
|
353 |
+
#: core/classes/class-form-setup.php:155
|
354 |
msgid "After the form is submitted"
|
355 |
msgstr ""
|
356 |
|
357 |
+
#: core/classes/class-form-setup.php:157
|
358 |
msgid "Show a message"
|
359 |
msgstr ""
|
360 |
|
361 |
+
#: core/classes/class-form-setup.php:158
|
362 |
msgid "Show a message and allow to resubmit the form"
|
363 |
msgstr ""
|
364 |
|
365 |
+
#: core/classes/class-form-setup.php:159
|
366 |
msgid "Redirect to a web address"
|
367 |
msgstr ""
|
368 |
|
369 |
+
#: core/classes/class-form-setup.php:172
|
370 |
msgid "Add custom CSS classes to submit button"
|
371 |
msgstr ""
|
372 |
|
373 |
+
#: core/classes/class-form-setup.php:181
|
374 |
msgid "Submit button CSS classes"
|
375 |
msgstr ""
|
376 |
|
377 |
+
#: core/classes/class-form-setup.php:190
|
378 |
msgid "Add custom HTML ID to form"
|
379 |
msgstr ""
|
380 |
|
381 |
+
#: core/classes/class-form-setup.php:199
|
382 |
msgid "Form HTML ID"
|
383 |
msgstr ""
|
384 |
|
385 |
+
#: core/classes/class-form-setup.php:219
|
386 |
msgid "Form is successfully submitted"
|
387 |
msgstr ""
|
388 |
|
389 |
+
#: core/classes/class-form-setup.php:224
|
390 |
msgid "Form can’t be submitted"
|
391 |
msgstr ""
|
392 |
|
393 |
+
#: core/classes/class-form-setup.php:229
|
394 |
msgid "Submit form"
|
395 |
msgstr ""
|
396 |
|
397 |
+
#: core/classes/class-form-shuffle.php:43
|
398 |
+
#: inc/classes/class-happyforms.php:125
|
399 |
msgid "Randomize fields to prevent bias"
|
400 |
msgstr ""
|
401 |
|
407 |
msgid "Right-to-left"
|
408 |
msgstr ""
|
409 |
|
410 |
+
#: core/classes/class-form-styles.php:75
|
411 |
+
#: core/classes/class-form-styles.php:149
|
412 |
#: core/classes/class-form-styles.php:159
|
413 |
#: core/classes/class-form-styles.php:282
|
414 |
#: core/classes/class-form-styles.php:292
|
415 |
msgid "Default"
|
416 |
msgstr ""
|
417 |
|
418 |
+
#: core/classes/class-form-styles.php:76
|
419 |
+
#: core/classes/class-form-styles.php:148
|
420 |
#: core/classes/class-form-styles.php:158
|
421 |
#: core/classes/class-form-styles.php:291
|
422 |
msgid "Narrow"
|
423 |
msgstr ""
|
424 |
|
425 |
+
#: core/classes/class-form-styles.php:77
|
426 |
+
#: core/classes/class-form-styles.php:150
|
427 |
#: core/classes/class-form-styles.php:160
|
428 |
#: core/classes/class-form-styles.php:293
|
429 |
msgid "Wide"
|
430 |
msgstr ""
|
431 |
|
432 |
+
#: core/classes/class-form-styles.php:91
|
433 |
+
#: core/classes/class-form-styles.php:120
|
434 |
#: core/classes/class-form-styles.php:263
|
435 |
#: core/templates/parts/customize-checkbox.php:8
|
436 |
#: core/templates/parts/customize-email.php:8
|
442 |
msgid "Show"
|
443 |
msgstr ""
|
444 |
|
445 |
+
#: core/classes/class-form-styles.php:92
|
446 |
+
#: core/classes/class-form-styles.php:121
|
447 |
#: core/classes/class-form-styles.php:264
|
448 |
#: core/templates/parts/customize-checkbox.php:15
|
449 |
#: core/templates/parts/customize-email.php:15
|
551 |
msgid "Full width"
|
552 |
msgstr ""
|
553 |
|
554 |
+
#: core/classes/class-form-styles.php:546
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
555 |
msgid "General"
|
556 |
msgstr ""
|
557 |
|
558 |
+
#: core/classes/class-form-styles.php:551
|
559 |
+
#: core/classes/class-form-styles.php:866
|
560 |
#: core/templates/partials/customize-field-width.php:2
|
561 |
msgid "Width"
|
562 |
msgstr ""
|
563 |
|
564 |
+
#: core/classes/class-form-styles.php:556
|
565 |
+
#: core/classes/class-form-styles.php:871
|
566 |
msgid "Padding"
|
567 |
msgstr ""
|
568 |
|
569 |
+
#: core/classes/class-form-styles.php:561
|
570 |
msgid "Direction"
|
571 |
msgstr ""
|
572 |
|
573 |
+
#: core/classes/class-form-styles.php:567
|
574 |
+
#: core/classes/class-form-styles.php:652
|
575 |
+
#: core/classes/class-form-styles.php:727
|
576 |
+
#: core/classes/class-form-styles.php:897
|
|
|
|
|
|
|
|
|
577 |
msgid "Colors"
|
578 |
msgstr ""
|
579 |
|
580 |
+
#: core/classes/class-form-styles.php:571
|
581 |
msgid "Primary"
|
582 |
msgstr ""
|
583 |
|
584 |
+
#: core/classes/class-form-styles.php:576
|
585 |
msgid "Success message background"
|
586 |
msgstr ""
|
587 |
|
588 |
+
#: core/classes/class-form-styles.php:581
|
589 |
msgid "Success message text"
|
590 |
msgstr ""
|
591 |
|
592 |
+
#: core/classes/class-form-styles.php:586
|
593 |
msgid "Validation message text"
|
594 |
msgstr ""
|
595 |
|
596 |
+
#: core/classes/class-form-styles.php:591
|
597 |
msgid "Error message background"
|
598 |
msgstr ""
|
599 |
|
600 |
+
#: core/classes/class-form-styles.php:596
|
601 |
msgid "Error message text"
|
602 |
msgstr ""
|
603 |
|
604 |
+
#: core/classes/class-form-styles.php:601
|
605 |
#: inc/classes/parts/class-part-layout-title-dummy.php:8
|
606 |
#: inc/classes/parts/class-part-title-dummy.php:8
|
607 |
msgid "Title"
|
608 |
msgstr ""
|
609 |
|
610 |
+
#: core/classes/class-form-styles.php:606
|
611 |
msgid "Display"
|
612 |
msgstr ""
|
613 |
|
614 |
+
#: core/classes/class-form-styles.php:611
|
615 |
+
#: core/classes/class-form-styles.php:886
|
616 |
msgid "Alignment"
|
617 |
msgstr ""
|
618 |
|
619 |
+
#: core/classes/class-form-styles.php:616
|
620 |
+
#: core/classes/class-form-styles.php:876
|
621 |
msgid "Font size"
|
622 |
msgstr ""
|
623 |
|
624 |
+
#: core/classes/class-form-styles.php:621
|
625 |
msgid "Field borders & spacing"
|
626 |
msgstr ""
|
627 |
|
628 |
+
#: core/classes/class-form-styles.php:626
|
629 |
+
#: core/classes/class-form-styles.php:656
|
630 |
+
#: core/classes/class-form-styles.php:856
|
631 |
+
#: core/classes/class-form-styles.php:911
|
632 |
msgid "Border"
|
633 |
msgstr ""
|
634 |
|
635 |
+
#: core/classes/class-form-styles.php:631
|
636 |
msgid "Border location"
|
637 |
msgstr ""
|
638 |
|
639 |
+
#: core/classes/class-form-styles.php:636
|
640 |
+
#: core/classes/class-form-styles.php:861
|
641 |
msgid "Border radius"
|
642 |
msgstr ""
|
643 |
|
644 |
+
#: core/classes/class-form-styles.php:641
|
645 |
msgid "Outer spacing"
|
646 |
msgstr ""
|
647 |
|
648 |
+
#: core/classes/class-form-styles.php:646
|
649 |
msgid "Inner spacing"
|
650 |
msgstr ""
|
651 |
|
652 |
+
#: core/classes/class-form-styles.php:661
|
653 |
msgid "Border on focus"
|
654 |
msgstr ""
|
655 |
|
656 |
+
#: core/classes/class-form-styles.php:666
|
657 |
+
#: core/classes/class-form-styles.php:761
|
658 |
+
#: core/classes/class-form-styles.php:786
|
659 |
+
#: core/classes/class-form-styles.php:901
|
660 |
msgid "Background"
|
661 |
msgstr ""
|
662 |
|
663 |
+
#: core/classes/class-form-styles.php:671
|
664 |
+
#: core/classes/class-form-styles.php:771
|
665 |
+
#: core/classes/class-form-styles.php:791
|
666 |
+
#: core/classes/class-form-styles.php:906
|
667 |
msgid "Background on focus"
|
668 |
msgstr ""
|
669 |
|
670 |
+
#: core/classes/class-form-styles.php:676
|
671 |
msgid "Field labels & text"
|
672 |
msgstr ""
|
673 |
|
674 |
+
#: core/classes/class-form-styles.php:681
|
675 |
msgid "Toggle placeholder on field focus"
|
676 |
msgstr ""
|
677 |
|
678 |
+
#: core/classes/class-form-styles.php:686
|
679 |
msgid "Label alignment"
|
680 |
msgstr ""
|
681 |
|
682 |
+
#: core/classes/class-form-styles.php:691
|
683 |
msgid "Label font size"
|
684 |
msgstr ""
|
685 |
|
686 |
+
#: core/classes/class-form-styles.php:696
|
687 |
msgid "Label font weight"
|
688 |
msgstr ""
|
689 |
|
690 |
+
#: core/classes/class-form-styles.php:701
|
691 |
msgid "Hint alignment"
|
692 |
msgstr ""
|
693 |
|
694 |
+
#: core/classes/class-form-styles.php:706
|
695 |
msgid "Hint font size"
|
696 |
msgstr ""
|
697 |
|
698 |
+
#: core/classes/class-form-styles.php:711
|
699 |
msgid "Hint display"
|
700 |
msgstr ""
|
701 |
|
702 |
+
#: core/classes/class-form-styles.php:716
|
703 |
msgid "Placeholder & value alignment"
|
704 |
msgstr ""
|
705 |
|
706 |
+
#: core/classes/class-form-styles.php:721
|
707 |
msgid "Value font size"
|
708 |
msgstr ""
|
709 |
|
710 |
+
#: core/classes/class-form-styles.php:731
|
711 |
#: core/templates/parts/customize-checkbox.php:4
|
712 |
+
#: core/templates/parts/customize-checkbox.php:133
|
713 |
#: core/templates/parts/customize-email.php:4
|
714 |
#: core/templates/parts/customize-multi-line-text.php:4
|
715 |
#: core/templates/parts/customize-number.php:4
|
716 |
#: core/templates/parts/customize-radio.php:4
|
717 |
+
#: core/templates/parts/customize-radio.php:107
|
718 |
#: core/templates/parts/customize-select.php:4
|
719 |
#: core/templates/parts/customize-select.php:105
|
720 |
#: core/templates/parts/customize-single-line-text.php:4
|
721 |
msgid "Label"
|
722 |
msgstr ""
|
723 |
|
724 |
+
#: core/classes/class-form-styles.php:736
|
725 |
msgid "Value"
|
726 |
msgstr ""
|
727 |
|
728 |
+
#: core/classes/class-form-styles.php:741
|
729 |
#: core/templates/parts/customize-email.php:20
|
730 |
#: core/templates/parts/customize-multi-line-text.php:20
|
731 |
#: core/templates/parts/customize-number.php:20
|
735 |
msgid "Placeholder"
|
736 |
msgstr ""
|
737 |
|
738 |
+
#: core/classes/class-form-styles.php:746
|
739 |
#: core/templates/parts/customize-checkbox.php:20
|
740 |
#: core/templates/parts/customize-email.php:28
|
741 |
#: core/templates/parts/customize-multi-line-text.php:28
|
746 |
msgid "Hint"
|
747 |
msgstr ""
|
748 |
|
749 |
+
#: core/classes/class-form-styles.php:751
|
750 |
msgid "Dropdowns"
|
751 |
msgstr ""
|
752 |
|
753 |
+
#: core/classes/class-form-styles.php:757
|
754 |
msgid "Items"
|
755 |
msgstr ""
|
756 |
|
757 |
+
#: core/classes/class-form-styles.php:766
|
758 |
+
#: core/classes/class-form-styles.php:916
|
759 |
msgid "Text"
|
760 |
msgstr ""
|
761 |
|
762 |
+
#: core/classes/class-form-styles.php:776
|
763 |
msgid "Text focused"
|
764 |
msgstr ""
|
765 |
|
766 |
+
#: core/classes/class-form-styles.php:781
|
767 |
msgid "Checkboxes & Radios"
|
768 |
msgstr ""
|
769 |
|
770 |
+
#: core/classes/class-form-styles.php:796
|
771 |
msgid "Checkmark"
|
772 |
msgstr ""
|
773 |
|
774 |
+
#: core/classes/class-form-styles.php:801
|
775 |
msgid "Rating"
|
776 |
msgstr ""
|
777 |
|
778 |
+
#: core/classes/class-form-styles.php:806
|
779 |
msgid "Rating star color"
|
780 |
msgstr ""
|
781 |
|
782 |
+
#: core/classes/class-form-styles.php:811
|
783 |
msgid "Rating star color on hover"
|
784 |
msgstr ""
|
785 |
|
786 |
+
#: core/classes/class-form-styles.php:816
|
787 |
msgid "Tables"
|
788 |
msgstr ""
|
789 |
|
790 |
+
#: core/classes/class-form-styles.php:821
|
791 |
msgid "Odd row primary"
|
792 |
msgstr ""
|
793 |
|
794 |
+
#: core/classes/class-form-styles.php:826
|
795 |
msgid "Odd row secondary"
|
796 |
msgstr ""
|
797 |
|
798 |
+
#: core/classes/class-form-styles.php:831
|
799 |
msgid "Even row primary"
|
800 |
msgstr ""
|
801 |
|
802 |
+
#: core/classes/class-form-styles.php:836
|
803 |
msgid "Even row secondary"
|
804 |
msgstr ""
|
805 |
|
806 |
+
#: core/classes/class-form-styles.php:841
|
807 |
msgid "Dividers"
|
808 |
msgstr ""
|
809 |
|
810 |
+
#: core/classes/class-form-styles.php:846
|
811 |
msgid "Color"
|
812 |
msgstr ""
|
813 |
|
814 |
+
#: core/classes/class-form-styles.php:851
|
815 |
msgid "Submit button"
|
816 |
msgstr ""
|
817 |
|
818 |
+
#: core/classes/class-form-styles.php:881
|
819 |
msgid "Font weight"
|
820 |
msgstr ""
|
821 |
|
822 |
+
#: core/classes/class-form-styles.php:891
|
823 |
msgid "Make button a field of last input"
|
824 |
msgstr ""
|
825 |
|
826 |
+
#: core/classes/class-form-styles.php:921
|
827 |
msgid "Text on focus"
|
828 |
msgstr ""
|
829 |
|
830 |
+
#: core/classes/class-form-styles.php:933
|
831 |
msgid "Add your own CSS code here to customize the appearance of your form."
|
832 |
msgstr ""
|
833 |
|
834 |
+
#: core/classes/class-form-styles.php:935
|
835 |
+
msgid "For each rule you add, we'll prepend your form's HTML ID. This makes sure all styles added will only apply to this form. For example %s becomes %s."
|
|
|
|
|
836 |
msgstr ""
|
837 |
|
838 |
+
#: core/classes/class-form-styles.php:943
|
839 |
+
msgid "The edit field automatically highlights code syntax. You can disable this in your <a href=\"%s\" class=\"%s\" target=\"_blank\">user profile</a> to work in plain text mode."
|
|
|
|
|
|
|
840 |
msgstr ""
|
841 |
|
842 |
+
#: core/classes/class-form-styles.php:951
|
843 |
+
#: core/classes/class-form-styles.php:961
|
844 |
msgid "Additional CSS"
|
845 |
msgstr ""
|
846 |
|
847 |
#: core/classes/class-happyforms-core.php:197
|
848 |
#: core/classes/class-happyforms-core.php:198
|
849 |
+
#: inc/classes/class-message-controller.php:584
|
850 |
+
#: inc/classes/class-message-controller.php:585
|
851 |
msgid "Activity"
|
852 |
msgstr ""
|
853 |
|
859 |
|
860 |
#: core/classes/class-happyforms-core.php:215
|
861 |
#: core/classes/class-happyforms-core.php:216
|
862 |
+
#: core/assets/jsx/build/admin/block.js:170
|
863 |
+
#: core/assets/jsx/src/admin/block.js:56
|
864 |
msgid "Settings"
|
865 |
msgstr ""
|
866 |
|
867 |
+
#: core/classes/class-happyforms-core.php:455
|
868 |
msgid "Add Form"
|
869 |
msgstr ""
|
870 |
|
876 |
msgid "Form:"
|
877 |
msgstr ""
|
878 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
879 |
#: core/classes/class-validation-messages.php:72
|
880 |
msgid "Field is answered incorrectly"
|
881 |
msgstr ""
|
962 |
msgstr ""
|
963 |
|
964 |
#: core/classes/class-wp-customize-form-manager.php:178
|
965 |
+
msgid "Still have questions? Head over to our <a href=\"%s\" target=\"_blank\">help guide</a>."
|
|
|
|
|
966 |
msgstr ""
|
967 |
|
968 |
#: core/classes/class-wp-customize-form-manager.php:185
|
969 |
+
msgid "Form saved. You can add this form to any Page, Post and Widget area. Have questions? <a href=\"%s\" target=\"_blank\">Ask for help in our support forums</a>."
|
|
|
|
|
|
|
970 |
msgstr ""
|
971 |
|
972 |
#: core/classes/parts/class-part-checkbox.php:10
|
977 |
msgid "For checkboxes allowing multiple selections."
|
978 |
msgstr ""
|
979 |
|
980 |
+
#: core/classes/parts/class-part-checkbox.php:81
|
981 |
msgid "Select all"
|
982 |
msgstr ""
|
983 |
|
984 |
+
#: core/classes/parts/class-part-checkbox.php:89
|
985 |
+
#: core/classes/parts/class-part-radio.php:82
|
986 |
#: core/classes/parts/class-part-select.php:80
|
987 |
msgid "Other"
|
988 |
msgstr ""
|
1027 |
msgid "For selecting one option from a long list. Default value adjustable."
|
1028 |
msgstr ""
|
1029 |
|
1030 |
+
#: core/classes/parts/class-part-select.php:56
|
1031 |
+
#: core/assets/jsx/build/admin/block.js:127
|
1032 |
+
#: core/assets/jsx/src/admin/block.js:15
|
1033 |
+
msgid "Choose"
|
1034 |
+
msgstr ""
|
1035 |
+
|
1036 |
#: core/classes/parts/class-part-single-line-text.php:8
|
1037 |
msgid "Short Answer"
|
1038 |
msgstr ""
|
1133 |
msgid "Ascension Island"
|
1134 |
msgstr ""
|
1135 |
|
1136 |
+
#: core/helpers/helper-form-templates.php:1067
|
1137 |
+
#: core/helpers/helper-misc.php:228
|
1138 |
msgid "Andorra"
|
1139 |
msgstr ""
|
1140 |
|
1141 |
+
#: core/helpers/helper-form-templates.php:1068
|
1142 |
+
#: core/helpers/helper-misc.php:446
|
1143 |
msgid "United Arab Emirates"
|
1144 |
msgstr ""
|
1145 |
|
1146 |
+
#: core/helpers/helper-form-templates.php:1069
|
1147 |
+
#: core/helpers/helper-misc.php:224
|
1148 |
msgid "Afghanistan"
|
1149 |
msgstr ""
|
1150 |
|
1151 |
+
#: core/helpers/helper-form-templates.php:1070
|
1152 |
+
#: core/helpers/helper-misc.php:232
|
1153 |
msgid "Antigua and Barbuda"
|
1154 |
msgstr ""
|
1155 |
|
1156 |
+
#: core/helpers/helper-form-templates.php:1071
|
1157 |
+
#: core/helpers/helper-misc.php:230
|
1158 |
msgid "Anguilla"
|
1159 |
msgstr ""
|
1160 |
|
1161 |
+
#: core/helpers/helper-form-templates.php:1072
|
1162 |
+
#: core/helpers/helper-misc.php:225
|
1163 |
msgid "Albania"
|
1164 |
msgstr ""
|
1165 |
|
1166 |
+
#: core/helpers/helper-form-templates.php:1073
|
1167 |
+
#: core/helpers/helper-misc.php:234
|
1168 |
msgid "Armenia"
|
1169 |
msgstr ""
|
1170 |
|
1171 |
+
#: core/helpers/helper-form-templates.php:1074
|
1172 |
+
#: core/helpers/helper-misc.php:229
|
1173 |
msgid "Angola"
|
1174 |
msgstr ""
|
1175 |
|
1176 |
+
#: core/helpers/helper-form-templates.php:1075
|
1177 |
+
#: core/helpers/helper-misc.php:233
|
1178 |
msgid "Argentina"
|
1179 |
msgstr ""
|
1180 |
|
1181 |
+
#: core/helpers/helper-form-templates.php:1076
|
1182 |
+
#: core/helpers/helper-misc.php:227
|
1183 |
msgid "American Samoa"
|
1184 |
msgstr ""
|
1185 |
|
1186 |
+
#: core/helpers/helper-form-templates.php:1077
|
1187 |
+
#: core/helpers/helper-misc.php:237
|
1188 |
msgid "Austria"
|
1189 |
msgstr ""
|
1190 |
|
1191 |
+
#: core/helpers/helper-form-templates.php:1078
|
1192 |
+
#: core/helpers/helper-misc.php:236
|
1193 |
msgid "Australia"
|
1194 |
msgstr ""
|
1195 |
|
1196 |
+
#: core/helpers/helper-form-templates.php:1079
|
1197 |
+
#: core/helpers/helper-misc.php:235
|
1198 |
msgid "Aruba"
|
1199 |
msgstr ""
|
1200 |
|
1202 |
msgid "Åland Islands"
|
1203 |
msgstr ""
|
1204 |
|
1205 |
+
#: core/helpers/helper-form-templates.php:1081
|
1206 |
+
#: core/helpers/helper-misc.php:238
|
1207 |
msgid "Azerbaijan"
|
1208 |
msgstr ""
|
1209 |
|
1211 |
msgid "Bosnia and Herzegovina"
|
1212 |
msgstr ""
|
1213 |
|
1214 |
+
#: core/helpers/helper-form-templates.php:1083
|
1215 |
+
#: core/helpers/helper-misc.php:242
|
1216 |
msgid "Barbados"
|
1217 |
msgstr ""
|
1218 |
|
1219 |
+
#: core/helpers/helper-form-templates.php:1084
|
1220 |
+
#: core/helpers/helper-misc.php:241
|
1221 |
msgid "Bangladesh"
|
1222 |
msgstr ""
|
1223 |
|
1224 |
+
#: core/helpers/helper-form-templates.php:1085
|
1225 |
+
#: core/helpers/helper-misc.php:244
|
1226 |
msgid "Belgium"
|
1227 |
msgstr ""
|
1228 |
|
1229 |
+
#: core/helpers/helper-form-templates.php:1086
|
1230 |
+
#: core/helpers/helper-misc.php:257
|
1231 |
msgid "Burkina Faso"
|
1232 |
msgstr ""
|
1233 |
|
1234 |
+
#: core/helpers/helper-form-templates.php:1087
|
1235 |
+
#: core/helpers/helper-misc.php:256
|
1236 |
msgid "Bulgaria"
|
1237 |
msgstr ""
|
1238 |
|
1239 |
+
#: core/helpers/helper-form-templates.php:1088
|
1240 |
+
#: core/helpers/helper-misc.php:240
|
1241 |
msgid "Bahrain"
|
1242 |
msgstr ""
|
1243 |
|
1244 |
+
#: core/helpers/helper-form-templates.php:1089
|
1245 |
+
#: core/helpers/helper-misc.php:258
|
1246 |
msgid "Burundi"
|
1247 |
msgstr ""
|
1248 |
|
1249 |
+
#: core/helpers/helper-form-templates.php:1090
|
1250 |
+
#: core/helpers/helper-misc.php:246
|
1251 |
msgid "Benin"
|
1252 |
msgstr ""
|
1253 |
|
1255 |
msgid "Saint Barthélemy"
|
1256 |
msgstr ""
|
1257 |
|
1258 |
+
#: core/helpers/helper-form-templates.php:1092
|
1259 |
+
#: core/helpers/helper-misc.php:247
|
1260 |
msgid "Bermuda"
|
1261 |
msgstr ""
|
1262 |
|
1263 |
+
#: core/helpers/helper-form-templates.php:1093
|
1264 |
+
#: core/helpers/helper-misc.php:255
|
1265 |
msgid "Brunei Darussalam"
|
1266 |
msgstr ""
|
1267 |
|
1268 |
+
#: core/helpers/helper-form-templates.php:1094
|
1269 |
+
#: core/helpers/helper-misc.php:249
|
1270 |
msgid "Bolivia"
|
1271 |
msgstr ""
|
1272 |
|
1274 |
msgid "Bonaire, Sint Eustatius and Saba"
|
1275 |
msgstr ""
|
1276 |
|
1277 |
+
#: core/helpers/helper-form-templates.php:1096
|
1278 |
+
#: core/helpers/helper-misc.php:253
|
1279 |
msgid "Brazil"
|
1280 |
msgstr ""
|
1281 |
|
1282 |
+
#: core/helpers/helper-form-templates.php:1097
|
1283 |
+
#: core/helpers/helper-misc.php:239
|
1284 |
msgid "Bahamas"
|
1285 |
msgstr ""
|
1286 |
|
1287 |
+
#: core/helpers/helper-form-templates.php:1098
|
1288 |
+
#: core/helpers/helper-misc.php:248
|
1289 |
msgid "Bhutan"
|
1290 |
msgstr ""
|
1291 |
|
1292 |
+
#: core/helpers/helper-form-templates.php:1099
|
1293 |
+
#: core/helpers/helper-misc.php:251
|
1294 |
msgid "Botswana"
|
1295 |
msgstr ""
|
1296 |
|
1297 |
+
#: core/helpers/helper-form-templates.php:1100
|
1298 |
+
#: core/helpers/helper-misc.php:243
|
1299 |
msgid "Belarus"
|
1300 |
msgstr ""
|
1301 |
|
1302 |
+
#: core/helpers/helper-form-templates.php:1101
|
1303 |
+
#: core/helpers/helper-misc.php:245
|
1304 |
msgid "Belize"
|
1305 |
msgstr ""
|
1306 |
|
1307 |
+
#: core/helpers/helper-form-templates.php:1102
|
1308 |
+
#: core/helpers/helper-misc.php:261
|
1309 |
msgid "Canada"
|
1310 |
msgstr ""
|
1311 |
|
1312 |
+
#: core/helpers/helper-form-templates.php:1103
|
1313 |
+
#: core/helpers/helper-misc.php:269
|
1314 |
msgid "Cocos (Keeling) Islands"
|
1315 |
msgstr ""
|
1316 |
|
1317 |
+
#: core/helpers/helper-form-templates.php:1104
|
1318 |
+
#: core/helpers/helper-misc.php:273
|
1319 |
msgid "Congo, the Democratic Republic of the"
|
1320 |
msgstr ""
|
1321 |
|
1322 |
+
#: core/helpers/helper-form-templates.php:1105
|
1323 |
+
#: core/helpers/helper-misc.php:264
|
1324 |
msgid "Central African Republic"
|
1325 |
msgstr ""
|
1326 |
|
1327 |
+
#: core/helpers/helper-form-templates.php:1106
|
1328 |
+
#: core/helpers/helper-misc.php:272
|
1329 |
msgid "Congo"
|
1330 |
msgstr ""
|
1331 |
|
1332 |
+
#: core/helpers/helper-form-templates.php:1107
|
1333 |
+
#: core/helpers/helper-misc.php:429
|
1334 |
msgid "Switzerland"
|
1335 |
msgstr ""
|
1336 |
|
1338 |
msgid "Cote D'Ivoire"
|
1339 |
msgstr ""
|
1340 |
|
1341 |
+
#: core/helpers/helper-form-templates.php:1109
|
1342 |
+
#: core/helpers/helper-misc.php:274
|
1343 |
msgid "Cook Islands"
|
1344 |
msgstr ""
|
1345 |
|
1346 |
+
#: core/helpers/helper-form-templates.php:1110
|
1347 |
+
#: core/helpers/helper-misc.php:266
|
1348 |
msgid "Chile"
|
1349 |
msgstr ""
|
1350 |
|
1351 |
+
#: core/helpers/helper-form-templates.php:1111
|
1352 |
+
#: core/helpers/helper-misc.php:260
|
1353 |
msgid "Cameroon"
|
1354 |
msgstr ""
|
1355 |
|
1356 |
+
#: core/helpers/helper-form-templates.php:1112
|
1357 |
+
#: core/helpers/helper-misc.php:267
|
1358 |
msgid "China"
|
1359 |
msgstr ""
|
1360 |
|
1361 |
+
#: core/helpers/helper-form-templates.php:1113
|
1362 |
+
#: core/helpers/helper-misc.php:270
|
1363 |
msgid "Colombia"
|
1364 |
msgstr ""
|
1365 |
|
1366 |
+
#: core/helpers/helper-form-templates.php:1114
|
1367 |
+
#: core/helpers/helper-misc.php:275
|
1368 |
msgid "Costa Rica"
|
1369 |
msgstr ""
|
1370 |
|
1371 |
+
#: core/helpers/helper-form-templates.php:1115
|
1372 |
+
#: core/helpers/helper-misc.php:278
|
1373 |
msgid "Cuba"
|
1374 |
msgstr ""
|
1375 |
|
1376 |
+
#: core/helpers/helper-form-templates.php:1116
|
1377 |
+
#: core/helpers/helper-misc.php:262
|
1378 |
msgid "Cape Verde"
|
1379 |
msgstr ""
|
1380 |
|
1382 |
msgid "Curaçao"
|
1383 |
msgstr ""
|
1384 |
|
1385 |
+
#: core/helpers/helper-form-templates.php:1118
|
1386 |
+
#: core/helpers/helper-misc.php:268
|
1387 |
msgid "Christmas Island"
|
1388 |
msgstr ""
|
1389 |
|
1390 |
+
#: core/helpers/helper-form-templates.php:1119
|
1391 |
+
#: core/helpers/helper-misc.php:279
|
1392 |
msgid "Cyprus"
|
1393 |
msgstr ""
|
1394 |
|
1395 |
+
#: core/helpers/helper-form-templates.php:1120
|
1396 |
+
#: core/helpers/helper-misc.php:280
|
1397 |
msgid "Czech Republic"
|
1398 |
msgstr ""
|
1399 |
|
1400 |
+
#: core/helpers/helper-form-templates.php:1121
|
1401 |
+
#: core/helpers/helper-misc.php:305
|
1402 |
msgid "Germany"
|
1403 |
msgstr ""
|
1404 |
|
1405 |
+
#: core/helpers/helper-form-templates.php:1122
|
1406 |
+
#: core/helpers/helper-misc.php:282
|
1407 |
msgid "Djibouti"
|
1408 |
msgstr ""
|
1409 |
|
1410 |
+
#: core/helpers/helper-form-templates.php:1123
|
1411 |
+
#: core/helpers/helper-misc.php:281
|
1412 |
msgid "Denmark"
|
1413 |
msgstr ""
|
1414 |
|
1415 |
+
#: core/helpers/helper-form-templates.php:1124
|
1416 |
+
#: core/helpers/helper-misc.php:283
|
1417 |
msgid "Dominica"
|
1418 |
msgstr ""
|
1419 |
|
1420 |
+
#: core/helpers/helper-form-templates.php:1125
|
1421 |
+
#: core/helpers/helper-misc.php:284
|
1422 |
msgid "Dominican Republic"
|
1423 |
msgstr ""
|
1424 |
|
1425 |
+
#: core/helpers/helper-form-templates.php:1126
|
1426 |
+
#: core/helpers/helper-misc.php:226
|
1427 |
msgid "Algeria"
|
1428 |
msgstr ""
|
1429 |
|
1430 |
+
#: core/helpers/helper-form-templates.php:1127
|
1431 |
+
#: core/helpers/helper-misc.php:286
|
1432 |
msgid "Ecuador"
|
1433 |
msgstr ""
|
1434 |
|
1435 |
+
#: core/helpers/helper-form-templates.php:1128
|
1436 |
+
#: core/helpers/helper-misc.php:291
|
1437 |
msgid "Estonia"
|
1438 |
msgstr ""
|
1439 |
|
1440 |
+
#: core/helpers/helper-form-templates.php:1129
|
1441 |
+
#: core/helpers/helper-misc.php:287
|
1442 |
msgid "Egypt"
|
1443 |
msgstr ""
|
1444 |
|
1445 |
+
#: core/helpers/helper-form-templates.php:1130
|
1446 |
+
#: core/helpers/helper-misc.php:458
|
1447 |
msgid "Western Sahara"
|
1448 |
msgstr ""
|
1449 |
|
1450 |
+
#: core/helpers/helper-form-templates.php:1131
|
1451 |
+
#: core/helpers/helper-misc.php:290
|
1452 |
msgid "Eritrea"
|
1453 |
msgstr ""
|
1454 |
|
1455 |
+
#: core/helpers/helper-form-templates.php:1132
|
1456 |
+
#: core/helpers/helper-misc.php:420
|
1457 |
msgid "Spain"
|
1458 |
msgstr ""
|
1459 |
|
1460 |
+
#: core/helpers/helper-form-templates.php:1133
|
1461 |
+
#: core/helpers/helper-misc.php:292
|
1462 |
msgid "Ethiopia"
|
1463 |
msgstr ""
|
1464 |
|
1465 |
+
#: core/helpers/helper-form-templates.php:1134
|
1466 |
+
#: core/helpers/helper-misc.php:296
|
1467 |
msgid "Finland"
|
1468 |
msgstr ""
|
1469 |
|
1470 |
+
#: core/helpers/helper-form-templates.php:1135
|
1471 |
+
#: core/helpers/helper-misc.php:295
|
1472 |
msgid "Fiji"
|
1473 |
msgstr ""
|
1474 |
|
1475 |
+
#: core/helpers/helper-form-templates.php:1136
|
1476 |
+
#: core/helpers/helper-misc.php:293
|
1477 |
msgid "Falkland Islands (Malvinas)"
|
1478 |
msgstr ""
|
1479 |
|
1480 |
+
#: core/helpers/helper-form-templates.php:1137
|
1481 |
+
#: core/helpers/helper-misc.php:364
|
1482 |
msgid "Micronesia, Federated States of"
|
1483 |
msgstr ""
|
1484 |
|
1485 |
+
#: core/helpers/helper-form-templates.php:1138
|
1486 |
+
#: core/helpers/helper-misc.php:294
|
1487 |
msgid "Faroe Islands"
|
1488 |
msgstr ""
|
1489 |
|
1490 |
+
#: core/helpers/helper-form-templates.php:1139
|
1491 |
+
#: core/helpers/helper-misc.php:297
|
1492 |
msgid "France"
|
1493 |
msgstr ""
|
1494 |
|
1495 |
+
#: core/helpers/helper-form-templates.php:1140
|
1496 |
+
#: core/helpers/helper-misc.php:302
|
1497 |
msgid "Gabon"
|
1498 |
msgstr ""
|
1499 |
|
1500 |
+
#: core/helpers/helper-form-templates.php:1141
|
1501 |
+
#: core/helpers/helper-misc.php:447
|
1502 |
msgid "United Kingdom"
|
1503 |
msgstr ""
|
1504 |
|
1505 |
+
#: core/helpers/helper-form-templates.php:1142
|
1506 |
+
#: core/helpers/helper-misc.php:310
|
1507 |
msgid "Grenada"
|
1508 |
msgstr ""
|
1509 |
|
1510 |
+
#: core/helpers/helper-form-templates.php:1143
|
1511 |
+
#: core/helpers/helper-misc.php:304
|
1512 |
msgid "Georgia"
|
1513 |
msgstr ""
|
1514 |
|
1515 |
+
#: core/helpers/helper-form-templates.php:1144
|
1516 |
+
#: core/helpers/helper-misc.php:299
|
1517 |
msgid "French Guiana"
|
1518 |
msgstr ""
|
1519 |
|
1521 |
msgid "Guernsey"
|
1522 |
msgstr ""
|
1523 |
|
1524 |
+
#: core/helpers/helper-form-templates.php:1146
|
1525 |
+
#: core/helpers/helper-misc.php:306
|
1526 |
msgid "Ghana"
|
1527 |
msgstr ""
|
1528 |
|
1529 |
+
#: core/helpers/helper-form-templates.php:1147
|
1530 |
+
#: core/helpers/helper-misc.php:307
|
1531 |
msgid "Gibraltar"
|
1532 |
msgstr ""
|
1533 |
|
1534 |
+
#: core/helpers/helper-form-templates.php:1148
|
1535 |
+
#: core/helpers/helper-misc.php:309
|
1536 |
msgid "Greenland"
|
1537 |
msgstr ""
|
1538 |
|
1539 |
+
#: core/helpers/helper-form-templates.php:1149
|
1540 |
+
#: core/helpers/helper-misc.php:303
|
1541 |
msgid "Gambia"
|
1542 |
msgstr ""
|
1543 |
|
1544 |
+
#: core/helpers/helper-form-templates.php:1150
|
1545 |
+
#: core/helpers/helper-misc.php:314
|
1546 |
msgid "Guinea"
|
1547 |
msgstr ""
|
1548 |
|
1549 |
+
#: core/helpers/helper-form-templates.php:1151
|
1550 |
+
#: core/helpers/helper-misc.php:311
|
1551 |
msgid "Guadeloupe"
|
1552 |
msgstr ""
|
1553 |
|
1554 |
+
#: core/helpers/helper-form-templates.php:1152
|
1555 |
+
#: core/helpers/helper-misc.php:289
|
1556 |
msgid "Equatorial Guinea"
|
1557 |
msgstr ""
|
1558 |
|
1559 |
+
#: core/helpers/helper-form-templates.php:1153
|
1560 |
+
#: core/helpers/helper-misc.php:308
|
1561 |
msgid "Greece"
|
1562 |
msgstr ""
|
1563 |
|
1564 |
+
#: core/helpers/helper-form-templates.php:1154
|
1565 |
+
#: core/helpers/helper-misc.php:313
|
1566 |
msgid "Guatemala"
|
1567 |
msgstr ""
|
1568 |
|
1569 |
+
#: core/helpers/helper-form-templates.php:1155
|
1570 |
+
#: core/helpers/helper-misc.php:312
|
1571 |
msgid "Guam"
|
1572 |
msgstr ""
|
1573 |
|
1574 |
+
#: core/helpers/helper-form-templates.php:1156
|
1575 |
+
#: core/helpers/helper-misc.php:315
|
1576 |
msgid "Guinea-Bissau"
|
1577 |
msgstr ""
|
1578 |
|
1579 |
+
#: core/helpers/helper-form-templates.php:1157
|
1580 |
+
#: core/helpers/helper-misc.php:316
|
1581 |
msgid "Guyana"
|
1582 |
msgstr ""
|
1583 |
|
1584 |
+
#: core/helpers/helper-form-templates.php:1158
|
1585 |
+
#: core/helpers/helper-misc.php:321
|
1586 |
msgid "Hong Kong"
|
1587 |
msgstr ""
|
1588 |
|
1589 |
+
#: core/helpers/helper-form-templates.php:1159
|
1590 |
+
#: core/helpers/helper-misc.php:320
|
1591 |
msgid "Honduras"
|
1592 |
msgstr ""
|
1593 |
|
1595 |
msgid "Croatia"
|
1596 |
msgstr ""
|
1597 |
|
1598 |
+
#: core/helpers/helper-form-templates.php:1161
|
1599 |
+
#: core/helpers/helper-misc.php:317
|
1600 |
msgid "Haiti"
|
1601 |
msgstr ""
|
1602 |
|
1603 |
+
#: core/helpers/helper-form-templates.php:1162
|
1604 |
+
#: core/helpers/helper-misc.php:322
|
1605 |
msgid "Hungary"
|
1606 |
msgstr ""
|
1607 |
|
1608 |
+
#: core/helpers/helper-form-templates.php:1163
|
1609 |
+
#: core/helpers/helper-misc.php:325
|
1610 |
msgid "Indonesia"
|
1611 |
msgstr ""
|
1612 |
|
1613 |
+
#: core/helpers/helper-form-templates.php:1164
|
1614 |
+
#: core/helpers/helper-misc.php:328
|
1615 |
msgid "Ireland"
|
1616 |
msgstr ""
|
1617 |
|
1618 |
+
#: core/helpers/helper-form-templates.php:1165
|
1619 |
+
#: core/helpers/helper-misc.php:329
|
1620 |
msgid "Israel"
|
1621 |
msgstr ""
|
1622 |
|
1624 |
msgid "Isle of Man"
|
1625 |
msgstr ""
|
1626 |
|
1627 |
+
#: core/helpers/helper-form-templates.php:1167
|
1628 |
+
#: core/helpers/helper-misc.php:324
|
1629 |
msgid "India"
|
1630 |
msgstr ""
|
1631 |
|
1632 |
+
#: core/helpers/helper-form-templates.php:1168
|
1633 |
+
#: core/helpers/helper-misc.php:254
|
1634 |
msgid "British Indian Ocean Territory"
|
1635 |
msgstr ""
|
1636 |
|
1637 |
+
#: core/helpers/helper-form-templates.php:1169
|
1638 |
+
#: core/helpers/helper-misc.php:327
|
1639 |
msgid "Iraq"
|
1640 |
msgstr ""
|
1641 |
|
1643 |
msgid "Iran, Islamic Republic of"
|
1644 |
msgstr ""
|
1645 |
|
1646 |
+
#: core/helpers/helper-form-templates.php:1171
|
1647 |
+
#: core/helpers/helper-misc.php:323
|
1648 |
msgid "Iceland"
|
1649 |
msgstr ""
|
1650 |
|
1651 |
+
#: core/helpers/helper-form-templates.php:1172
|
1652 |
+
#: core/helpers/helper-misc.php:330
|
1653 |
msgid "Italy"
|
1654 |
msgstr ""
|
1655 |
|
1657 |
msgid "Jersey"
|
1658 |
msgstr ""
|
1659 |
|
1660 |
+
#: core/helpers/helper-form-templates.php:1174
|
1661 |
+
#: core/helpers/helper-misc.php:331
|
1662 |
msgid "Jamaica"
|
1663 |
msgstr ""
|
1664 |
|
1665 |
+
#: core/helpers/helper-form-templates.php:1175
|
1666 |
+
#: core/helpers/helper-misc.php:333
|
1667 |
msgid "Jordan"
|
1668 |
msgstr ""
|
1669 |
|
1670 |
+
#: core/helpers/helper-form-templates.php:1176
|
1671 |
+
#: core/helpers/helper-misc.php:332
|
1672 |
msgid "Japan"
|
1673 |
msgstr ""
|
1674 |
|
1675 |
+
#: core/helpers/helper-form-templates.php:1177
|
1676 |
+
#: core/helpers/helper-misc.php:335
|
1677 |
msgid "Kenya"
|
1678 |
msgstr ""
|
1679 |
|
1680 |
+
#: core/helpers/helper-form-templates.php:1178
|
1681 |
+
#: core/helpers/helper-misc.php:340
|
1682 |
msgid "Kyrgyzstan"
|
1683 |
msgstr ""
|
1684 |
|
1685 |
+
#: core/helpers/helper-form-templates.php:1179
|
1686 |
+
#: core/helpers/helper-misc.php:259
|
1687 |
msgid "Cambodia"
|
1688 |
msgstr ""
|
1689 |
|
1690 |
+
#: core/helpers/helper-form-templates.php:1180
|
1691 |
+
#: core/helpers/helper-misc.php:336
|
1692 |
msgid "Kiribati"
|
1693 |
msgstr ""
|
1694 |
|
1695 |
+
#: core/helpers/helper-form-templates.php:1181
|
1696 |
+
#: core/helpers/helper-misc.php:271
|
1697 |
msgid "Comoros"
|
1698 |
msgstr ""
|
1699 |
|
1700 |
+
#: core/helpers/helper-form-templates.php:1182
|
1701 |
+
#: core/helpers/helper-misc.php:403
|
1702 |
msgid "Saint Kitts and Nevis"
|
1703 |
msgstr ""
|
1704 |
|
1710 |
msgid "South Korea"
|
1711 |
msgstr ""
|
1712 |
|
1713 |
+
#: core/helpers/helper-form-templates.php:1185
|
1714 |
+
#: core/helpers/helper-misc.php:339
|
1715 |
msgid "Kuwait"
|
1716 |
msgstr ""
|
1717 |
|
1718 |
+
#: core/helpers/helper-form-templates.php:1186
|
1719 |
+
#: core/helpers/helper-misc.php:263
|
1720 |
msgid "Cayman Islands"
|
1721 |
msgstr ""
|
1722 |
|
1723 |
+
#: core/helpers/helper-form-templates.php:1187
|
1724 |
+
#: core/helpers/helper-misc.php:334
|
1725 |
msgid "Kazakhstan"
|
1726 |
msgstr ""
|
1727 |
|
1729 |
msgid "Lao People's Democratic Republic"
|
1730 |
msgstr ""
|
1731 |
|
1732 |
+
#: core/helpers/helper-form-templates.php:1189
|
1733 |
+
#: core/helpers/helper-misc.php:343
|
1734 |
msgid "Lebanon"
|
1735 |
msgstr ""
|
1736 |
|
1737 |
+
#: core/helpers/helper-form-templates.php:1190
|
1738 |
+
#: core/helpers/helper-misc.php:404
|
1739 |
msgid "Saint Lucia"
|
1740 |
msgstr ""
|
1741 |
|
1742 |
+
#: core/helpers/helper-form-templates.php:1191
|
1743 |
+
#: core/helpers/helper-misc.php:347
|
1744 |
msgid "Liechtenstein"
|
1745 |
msgstr ""
|
1746 |
|
1747 |
+
#: core/helpers/helper-form-templates.php:1192
|
1748 |
+
#: core/helpers/helper-misc.php:421
|
1749 |
msgid "Sri Lanka"
|
1750 |
msgstr ""
|
1751 |
|
1752 |
+
#: core/helpers/helper-form-templates.php:1193
|
1753 |
+
#: core/helpers/helper-misc.php:345
|
1754 |
msgid "Liberia"
|
1755 |
msgstr ""
|
1756 |
|
1757 |
+
#: core/helpers/helper-form-templates.php:1194
|
1758 |
+
#: core/helpers/helper-misc.php:344
|
1759 |
msgid "Lesotho"
|
1760 |
msgstr ""
|
1761 |
|
1762 |
+
#: core/helpers/helper-form-templates.php:1195
|
1763 |
+
#: core/helpers/helper-misc.php:348
|
1764 |
msgid "Lithuania"
|
1765 |
msgstr ""
|
1766 |
|
1767 |
+
#: core/helpers/helper-form-templates.php:1196
|
1768 |
+
#: core/helpers/helper-misc.php:349
|
1769 |
msgid "Luxembourg"
|
1770 |
msgstr ""
|
1771 |
|
1772 |
+
#: core/helpers/helper-form-templates.php:1197
|
1773 |
+
#: core/helpers/helper-misc.php:342
|
1774 |
msgid "Latvia"
|
1775 |
msgstr ""
|
1776 |
|
1778 |
msgid "Libya"
|
1779 |
msgstr ""
|
1780 |
|
1781 |
+
#: core/helpers/helper-form-templates.php:1199
|
1782 |
+
#: core/helpers/helper-misc.php:369
|
1783 |
msgid "Morocco"
|
1784 |
msgstr ""
|
1785 |
|
1786 |
+
#: core/helpers/helper-form-templates.php:1200
|
1787 |
+
#: core/helpers/helper-misc.php:366
|
1788 |
msgid "Monaco"
|
1789 |
msgstr ""
|
1790 |
|
1791 |
+
#: core/helpers/helper-form-templates.php:1201
|
1792 |
+
#: core/helpers/helper-misc.php:365
|
1793 |
msgid "Moldova, Republic of"
|
1794 |
msgstr ""
|
1795 |
|
1801 |
msgid "Saint Martin (French part)"
|
1802 |
msgstr ""
|
1803 |
|
1804 |
+
#: core/helpers/helper-form-templates.php:1204
|
1805 |
+
#: core/helpers/helper-misc.php:352
|
1806 |
msgid "Madagascar"
|
1807 |
msgstr ""
|
1808 |
|
1809 |
+
#: core/helpers/helper-form-templates.php:1205
|
1810 |
+
#: core/helpers/helper-misc.php:358
|
1811 |
msgid "Marshall Islands"
|
1812 |
msgstr ""
|
1813 |
|
1815 |
msgid "North Macedonia, Republic of"
|
1816 |
msgstr ""
|
1817 |
|
1818 |
+
#: core/helpers/helper-form-templates.php:1207
|
1819 |
+
#: core/helpers/helper-misc.php:356
|
1820 |
msgid "Mali"
|
1821 |
msgstr ""
|
1822 |
|
1823 |
+
#: core/helpers/helper-form-templates.php:1208
|
1824 |
+
#: core/helpers/helper-misc.php:371
|
1825 |
msgid "Myanmar"
|
1826 |
msgstr ""
|
1827 |
|
1828 |
+
#: core/helpers/helper-form-templates.php:1209
|
1829 |
+
#: core/helpers/helper-misc.php:367
|
1830 |
msgid "Mongolia"
|
1831 |
msgstr ""
|
1832 |
|
1834 |
msgid "Macao"
|
1835 |
msgstr ""
|
1836 |
|
1837 |
+
#: core/helpers/helper-form-templates.php:1211
|
1838 |
+
#: core/helpers/helper-misc.php:384
|
1839 |
msgid "Northern Mariana Islands"
|
1840 |
msgstr ""
|
1841 |
|
1842 |
+
#: core/helpers/helper-form-templates.php:1212
|
1843 |
+
#: core/helpers/helper-misc.php:359
|
1844 |
msgid "Martinique"
|
1845 |
msgstr ""
|
1846 |
|
1847 |
+
#: core/helpers/helper-form-templates.php:1213
|
1848 |
+
#: core/helpers/helper-misc.php:360
|
1849 |
msgid "Mauritania"
|
1850 |
msgstr ""
|
1851 |
|
1852 |
+
#: core/helpers/helper-form-templates.php:1214
|
1853 |
+
#: core/helpers/helper-misc.php:368
|
1854 |
msgid "Montserrat"
|
1855 |
msgstr ""
|
1856 |
|
1857 |
+
#: core/helpers/helper-form-templates.php:1215
|
1858 |
+
#: core/helpers/helper-misc.php:357
|
1859 |
msgid "Malta"
|
1860 |
msgstr ""
|
1861 |
|
1862 |
+
#: core/helpers/helper-form-templates.php:1216
|
1863 |
+
#: core/helpers/helper-misc.php:361
|
1864 |
msgid "Mauritius"
|
1865 |
msgstr ""
|
1866 |
|
1867 |
+
#: core/helpers/helper-form-templates.php:1217
|
1868 |
+
#: core/helpers/helper-misc.php:355
|
1869 |
msgid "Maldives"
|
1870 |
msgstr ""
|
1871 |
|
1872 |
+
#: core/helpers/helper-form-templates.php:1218
|
1873 |
+
#: core/helpers/helper-misc.php:353
|
1874 |
msgid "Malawi"
|
1875 |
msgstr ""
|
1876 |
|
1877 |
+
#: core/helpers/helper-form-templates.php:1219
|
1878 |
+
#: core/helpers/helper-misc.php:363
|
1879 |
msgid "Mexico"
|
1880 |
msgstr ""
|
1881 |
|
1882 |
+
#: core/helpers/helper-form-templates.php:1220
|
1883 |
+
#: core/helpers/helper-misc.php:354
|
1884 |
msgid "Malaysia"
|
1885 |
msgstr ""
|
1886 |
|
1887 |
+
#: core/helpers/helper-form-templates.php:1221
|
1888 |
+
#: core/helpers/helper-misc.php:370
|
1889 |
msgid "Mozambique"
|
1890 |
msgstr ""
|
1891 |
|
1892 |
+
#: core/helpers/helper-form-templates.php:1222
|
1893 |
+
#: core/helpers/helper-misc.php:372
|
1894 |
msgid "Namibia"
|
1895 |
msgstr ""
|
1896 |
|
1897 |
+
#: core/helpers/helper-form-templates.php:1223
|
1898 |
+
#: core/helpers/helper-misc.php:377
|
1899 |
msgid "New Caledonia"
|
1900 |
msgstr ""
|
1901 |
|
1902 |
+
#: core/helpers/helper-form-templates.php:1224
|
1903 |
+
#: core/helpers/helper-misc.php:380
|
1904 |
msgid "Niger"
|
1905 |
msgstr ""
|
1906 |
|
1907 |
+
#: core/helpers/helper-form-templates.php:1225
|
1908 |
+
#: core/helpers/helper-misc.php:383
|
1909 |
msgid "Norfolk Island"
|
1910 |
msgstr ""
|
1911 |
|
1912 |
+
#: core/helpers/helper-form-templates.php:1226
|
1913 |
+
#: core/helpers/helper-misc.php:381
|
1914 |
msgid "Nigeria"
|
1915 |
msgstr ""
|
1916 |
|
1917 |
+
#: core/helpers/helper-form-templates.php:1227
|
1918 |
+
#: core/helpers/helper-misc.php:379
|
1919 |
msgid "Nicaragua"
|
1920 |
msgstr ""
|
1921 |
|
1922 |
+
#: core/helpers/helper-form-templates.php:1228
|
1923 |
+
#: core/helpers/helper-misc.php:375
|
1924 |
msgid "Netherlands"
|
1925 |
msgstr ""
|
1926 |
|
1927 |
+
#: core/helpers/helper-form-templates.php:1229
|
1928 |
+
#: core/helpers/helper-misc.php:385
|
1929 |
msgid "Norway"
|
1930 |
msgstr ""
|
1931 |
|
1932 |
+
#: core/helpers/helper-form-templates.php:1230
|
1933 |
+
#: core/helpers/helper-misc.php:374
|
1934 |
msgid "Nepal"
|
1935 |
msgstr ""
|
1936 |
|
1937 |
+
#: core/helpers/helper-form-templates.php:1231
|
1938 |
+
#: core/helpers/helper-misc.php:373
|
1939 |
msgid "Nauru"
|
1940 |
msgstr ""
|
1941 |
|
1942 |
+
#: core/helpers/helper-form-templates.php:1232
|
1943 |
+
#: core/helpers/helper-misc.php:382
|
1944 |
msgid "Niue"
|
1945 |
msgstr ""
|
1946 |
|
1947 |
+
#: core/helpers/helper-form-templates.php:1233
|
1948 |
+
#: core/helpers/helper-misc.php:378
|
1949 |
msgid "New Zealand"
|
1950 |
msgstr ""
|
1951 |
|
1952 |
+
#: core/helpers/helper-form-templates.php:1234
|
1953 |
+
#: core/helpers/helper-misc.php:386
|
1954 |
msgid "Oman"
|
1955 |
msgstr ""
|
1956 |
|
1957 |
+
#: core/helpers/helper-form-templates.php:1235
|
1958 |
+
#: core/helpers/helper-misc.php:389
|
1959 |
msgid "Panama"
|
1960 |
msgstr ""
|
1961 |
|
1962 |
+
#: core/helpers/helper-form-templates.php:1236
|
1963 |
+
#: core/helpers/helper-misc.php:392
|
1964 |
msgid "Peru"
|
1965 |
msgstr ""
|
1966 |
|
1967 |
+
#: core/helpers/helper-form-templates.php:1237
|
1968 |
+
#: core/helpers/helper-misc.php:300
|
1969 |
msgid "French Polynesia"
|
1970 |
msgstr ""
|
1971 |
|
1972 |
+
#: core/helpers/helper-form-templates.php:1238
|
1973 |
+
#: core/helpers/helper-misc.php:390
|
1974 |
msgid "Papua New Guinea"
|
1975 |
msgstr ""
|
1976 |
|
1977 |
+
#: core/helpers/helper-form-templates.php:1239
|
1978 |
+
#: core/helpers/helper-misc.php:393
|
1979 |
msgid "Philippines"
|
1980 |
msgstr ""
|
1981 |
|
1982 |
+
#: core/helpers/helper-form-templates.php:1240
|
1983 |
+
#: core/helpers/helper-misc.php:387
|
1984 |
msgid "Pakistan"
|
1985 |
msgstr ""
|
1986 |
|
1987 |
+
#: core/helpers/helper-form-templates.php:1241
|
1988 |
+
#: core/helpers/helper-misc.php:395
|
1989 |
msgid "Poland"
|
1990 |
msgstr ""
|
1991 |
|
1993 |
msgid "Saint Pierre and Miquelon"
|
1994 |
msgstr ""
|
1995 |
|
1996 |
+
#: core/helpers/helper-form-templates.php:1243
|
1997 |
+
#: core/helpers/helper-misc.php:397
|
1998 |
msgid "Puerto Rico"
|
1999 |
msgstr ""
|
2000 |
|
2002 |
msgid "Palestinian Territory, Occupied"
|
2003 |
msgstr ""
|
2004 |
|
2005 |
+
#: core/helpers/helper-form-templates.php:1245
|
2006 |
+
#: core/helpers/helper-misc.php:396
|
2007 |
msgid "Portugal"
|
2008 |
msgstr ""
|
2009 |
|
2010 |
+
#: core/helpers/helper-form-templates.php:1246
|
2011 |
+
#: core/helpers/helper-misc.php:388
|
2012 |
msgid "Palau"
|
2013 |
msgstr ""
|
2014 |
|
2015 |
+
#: core/helpers/helper-form-templates.php:1247
|
2016 |
+
#: core/helpers/helper-misc.php:391
|
2017 |
msgid "Paraguay"
|
2018 |
msgstr ""
|
2019 |
|
2020 |
+
#: core/helpers/helper-form-templates.php:1248
|
2021 |
+
#: core/helpers/helper-misc.php:398
|
2022 |
msgid "Qatar"
|
2023 |
msgstr ""
|
2024 |
|
2025 |
+
#: core/helpers/helper-form-templates.php:1249
|
2026 |
+
#: core/helpers/helper-misc.php:399
|
2027 |
msgid "Reunion"
|
2028 |
msgstr ""
|
2029 |
|
2030 |
+
#: core/helpers/helper-form-templates.php:1250
|
2031 |
+
#: core/helpers/helper-misc.php:400
|
2032 |
msgid "Romania"
|
2033 |
msgstr ""
|
2034 |
|
2036 |
msgid "Serbia"
|
2037 |
msgstr ""
|
2038 |
|
2039 |
+
#: core/helpers/helper-form-templates.php:1252
|
2040 |
+
#: core/helpers/helper-misc.php:401
|
2041 |
msgid "Russian Federation"
|
2042 |
msgstr ""
|
2043 |
|
2044 |
+
#: core/helpers/helper-form-templates.php:1253
|
2045 |
+
#: core/helpers/helper-misc.php:402
|
2046 |
msgid "Rwanda"
|
2047 |
msgstr ""
|
2048 |
|
2049 |
+
#: core/helpers/helper-form-templates.php:1254
|
2050 |
+
#: core/helpers/helper-misc.php:409
|
2051 |
msgid "Saudi Arabia"
|
2052 |
msgstr ""
|
2053 |
|
2054 |
+
#: core/helpers/helper-form-templates.php:1255
|
2055 |
+
#: core/helpers/helper-misc.php:416
|
2056 |
msgid "Solomon Islands"
|
2057 |
msgstr ""
|
2058 |
|
2059 |
+
#: core/helpers/helper-form-templates.php:1256
|
2060 |
+
#: core/helpers/helper-misc.php:411
|
2061 |
msgid "Seychelles"
|
2062 |
msgstr ""
|
2063 |
|
2064 |
+
#: core/helpers/helper-form-templates.php:1257
|
2065 |
+
#: core/helpers/helper-misc.php:424
|
2066 |
msgid "Sudan"
|
2067 |
msgstr ""
|
2068 |
|
2069 |
+
#: core/helpers/helper-form-templates.php:1258
|
2070 |
+
#: core/helpers/helper-misc.php:428
|
2071 |
msgid "Sweden"
|
2072 |
msgstr ""
|
2073 |
|
2074 |
+
#: core/helpers/helper-form-templates.php:1259
|
2075 |
+
#: core/helpers/helper-misc.php:413
|
2076 |
msgid "Singapore"
|
2077 |
msgstr ""
|
2078 |
|
2081 |
msgid "Saint Helena"
|
2082 |
msgstr ""
|
2083 |
|
2084 |
+
#: core/helpers/helper-form-templates.php:1261
|
2085 |
+
#: core/helpers/helper-misc.php:415
|
2086 |
msgid "Slovenia"
|
2087 |
msgstr ""
|
2088 |
|
2094 |
msgid "Slovakia"
|
2095 |
msgstr ""
|
2096 |
|
2097 |
+
#: core/helpers/helper-form-templates.php:1264
|
2098 |
+
#: core/helpers/helper-misc.php:412
|
2099 |
msgid "Sierra Leone"
|
2100 |
msgstr ""
|
2101 |
|
2102 |
+
#: core/helpers/helper-form-templates.php:1265
|
2103 |
+
#: core/helpers/helper-misc.php:407
|
2104 |
msgid "San Marino"
|
2105 |
msgstr ""
|
2106 |
|
2107 |
+
#: core/helpers/helper-form-templates.php:1266
|
2108 |
+
#: core/helpers/helper-misc.php:410
|
2109 |
msgid "Senegal"
|
2110 |
msgstr ""
|
2111 |
|
2112 |
+
#: core/helpers/helper-form-templates.php:1267
|
2113 |
+
#: core/helpers/helper-misc.php:417
|
2114 |
msgid "Somalia"
|
2115 |
msgstr ""
|
2116 |
|
2117 |
+
#: core/helpers/helper-form-templates.php:1268
|
2118 |
+
#: core/helpers/helper-misc.php:425
|
2119 |
msgid "Suriname"
|
2120 |
msgstr ""
|
2121 |
|
2123 |
msgid "South Sudan"
|
2124 |
msgstr ""
|
2125 |
|
2126 |
+
#: core/helpers/helper-form-templates.php:1270
|
2127 |
+
#: core/helpers/helper-misc.php:408
|
2128 |
msgid "Sao Tome and Principe"
|
2129 |
msgstr ""
|
2130 |
|
2131 |
+
#: core/helpers/helper-form-templates.php:1271
|
2132 |
+
#: core/helpers/helper-misc.php:288
|
2133 |
msgid "El Salvador"
|
2134 |
msgstr ""
|
2135 |
|
2137 |
msgid "Sint Maarten (Dutch part)"
|
2138 |
msgstr ""
|
2139 |
|
2140 |
+
#: core/helpers/helper-form-templates.php:1273
|
2141 |
+
#: core/helpers/helper-misc.php:430
|
2142 |
msgid "Syrian Arab Republic"
|
2143 |
msgstr ""
|
2144 |
|
2146 |
msgid "Eswatini"
|
2147 |
msgstr ""
|
2148 |
|
2149 |
+
#: core/helpers/helper-form-templates.php:1276
|
2150 |
+
#: core/helpers/helper-misc.php:442
|
2151 |
msgid "Turks and Caicos Islands"
|
2152 |
msgstr ""
|
2153 |
|
2154 |
+
#: core/helpers/helper-form-templates.php:1277
|
2155 |
+
#: core/helpers/helper-misc.php:265
|
2156 |
msgid "Chad"
|
2157 |
msgstr ""
|
2158 |
|
2159 |
+
#: core/helpers/helper-form-templates.php:1278
|
2160 |
+
#: core/helpers/helper-misc.php:435
|
2161 |
msgid "Togo"
|
2162 |
msgstr ""
|
2163 |
|
2164 |
+
#: core/helpers/helper-form-templates.php:1279
|
2165 |
+
#: core/helpers/helper-misc.php:434
|
2166 |
msgid "Thailand"
|
2167 |
msgstr ""
|
2168 |
|
2169 |
+
#: core/helpers/helper-form-templates.php:1280
|
2170 |
+
#: core/helpers/helper-misc.php:432
|
2171 |
msgid "Tajikistan"
|
2172 |
msgstr ""
|
2173 |
|
2174 |
+
#: core/helpers/helper-form-templates.php:1281
|
2175 |
+
#: core/helpers/helper-misc.php:436
|
2176 |
msgid "Tokelau"
|
2177 |
msgstr ""
|
2178 |
|
2180 |
msgid "Timor-Leste"
|
2181 |
msgstr ""
|
2182 |
|
2183 |
+
#: core/helpers/helper-form-templates.php:1283
|
2184 |
+
#: core/helpers/helper-misc.php:441
|
2185 |
msgid "Turkmenistan"
|
2186 |
msgstr ""
|
2187 |
|
2188 |
+
#: core/helpers/helper-form-templates.php:1284
|
2189 |
+
#: core/helpers/helper-misc.php:439
|
2190 |
msgid "Tunisia"
|
2191 |
msgstr ""
|
2192 |
|
2193 |
+
#: core/helpers/helper-form-templates.php:1285
|
2194 |
+
#: core/helpers/helper-misc.php:437
|
2195 |
msgid "Tonga"
|
2196 |
msgstr ""
|
2197 |
|
2198 |
+
#: core/helpers/helper-form-templates.php:1286
|
2199 |
+
#: core/helpers/helper-misc.php:440
|
2200 |
msgid "Turkey"
|
2201 |
msgstr ""
|
2202 |
|
2203 |
+
#: core/helpers/helper-form-templates.php:1287
|
2204 |
+
#: core/helpers/helper-misc.php:438
|
2205 |
msgid "Trinidad and Tobago"
|
2206 |
msgstr ""
|
2207 |
|
2208 |
+
#: core/helpers/helper-form-templates.php:1288
|
2209 |
+
#: core/helpers/helper-misc.php:443
|
2210 |
msgid "Tuvalu"
|
2211 |
msgstr ""
|
2212 |
|
2214 |
msgid "Taiwan"
|
2215 |
msgstr ""
|
2216 |
|
2217 |
+
#: core/helpers/helper-form-templates.php:1290
|
2218 |
+
#: core/helpers/helper-misc.php:433
|
2219 |
msgid "Tanzania, United Republic of"
|
2220 |
msgstr ""
|
2221 |
|
2222 |
+
#: core/helpers/helper-form-templates.php:1291
|
2223 |
+
#: core/helpers/helper-misc.php:445
|
2224 |
msgid "Ukraine"
|
2225 |
msgstr ""
|
2226 |
|
2227 |
+
#: core/helpers/helper-form-templates.php:1292
|
2228 |
+
#: core/helpers/helper-misc.php:444
|
2229 |
msgid "Uganda"
|
2230 |
msgstr ""
|
2231 |
|
2233 |
msgid "United States of America"
|
2234 |
msgstr ""
|
2235 |
|
2236 |
+
#: core/helpers/helper-form-templates.php:1294
|
2237 |
+
#: core/helpers/helper-misc.php:450
|
2238 |
msgid "Uruguay"
|
2239 |
msgstr ""
|
2240 |
|
2241 |
+
#: core/helpers/helper-form-templates.php:1295
|
2242 |
+
#: core/helpers/helper-misc.php:451
|
2243 |
msgid "Uzbekistan"
|
2244 |
msgstr ""
|
2245 |
|
2246 |
+
#: core/helpers/helper-form-templates.php:1296
|
2247 |
+
#: core/helpers/helper-misc.php:319
|
2248 |
msgid "Holy See (Vatican City State)"
|
2249 |
msgstr ""
|
2250 |
|
2251 |
+
#: core/helpers/helper-form-templates.php:1297
|
2252 |
+
#: core/helpers/helper-misc.php:405
|
2253 |
msgid "Saint Vincent and the Grenadines"
|
2254 |
msgstr ""
|
2255 |
|
2256 |
+
#: core/helpers/helper-form-templates.php:1298
|
2257 |
+
#: core/helpers/helper-misc.php:453
|
2258 |
msgid "Venezuela"
|
2259 |
msgstr ""
|
2260 |
|
2266 |
msgid "Virgin Islands, U.S."
|
2267 |
msgstr ""
|
2268 |
|
2269 |
+
#: core/helpers/helper-form-templates.php:1301
|
2270 |
+
#: core/helpers/helper-misc.php:454
|
2271 |
msgid "Vietnam"
|
2272 |
msgstr ""
|
2273 |
|
2274 |
+
#: core/helpers/helper-form-templates.php:1302
|
2275 |
+
#: core/helpers/helper-misc.php:452
|
2276 |
msgid "Vanuatu"
|
2277 |
msgstr ""
|
2278 |
|
2280 |
msgid "Wallis and Futuna"
|
2281 |
msgstr ""
|
2282 |
|
2283 |
+
#: core/helpers/helper-form-templates.php:1304
|
2284 |
+
#: core/helpers/helper-misc.php:406
|
2285 |
msgid "Samoa"
|
2286 |
msgstr ""
|
2287 |
|
2289 |
msgid "Kosovo"
|
2290 |
msgstr ""
|
2291 |
|
2292 |
+
#: core/helpers/helper-form-templates.php:1306
|
2293 |
+
#: core/helpers/helper-misc.php:459
|
2294 |
msgid "Yemen"
|
2295 |
msgstr ""
|
2296 |
|
2297 |
+
#: core/helpers/helper-form-templates.php:1307
|
2298 |
+
#: core/helpers/helper-misc.php:362
|
2299 |
msgid "Mayotte"
|
2300 |
msgstr ""
|
2301 |
|
2302 |
+
#: core/helpers/helper-form-templates.php:1308
|
2303 |
+
#: core/helpers/helper-misc.php:418
|
2304 |
msgid "South Africa"
|
2305 |
msgstr ""
|
2306 |
|
2307 |
+
#: core/helpers/helper-form-templates.php:1309
|
2308 |
+
#: core/helpers/helper-misc.php:461
|
2309 |
msgid "Zambia"
|
2310 |
msgstr ""
|
2311 |
|
2312 |
+
#: core/helpers/helper-form-templates.php:1310
|
2313 |
+
#: core/helpers/helper-misc.php:462
|
2314 |
msgid "Zimbabwe"
|
2315 |
msgstr ""
|
2316 |
|
2990 |
msgid "Yoruba"
|
2991 |
msgstr ""
|
2992 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2993 |
#: core/templates/admin-form-modal.php:5
|
2994 |
msgid "Choose a form"
|
2995 |
msgstr ""
|
2996 |
|
2997 |
#: core/templates/admin-form-modal.php:12
|
2998 |
+
#: core/assets/jsx/build/admin/block.js:155
|
2999 |
+
#: core/assets/jsx/src/admin/block.js:36
|
3000 |
msgid "Insert"
|
3001 |
msgstr ""
|
3002 |
|
3040 |
|
3041 |
#: core/templates/customize-form-item.php:33
|
3042 |
#: core/templates/customize-form-part-footer.php:3
|
3043 |
+
#: core/templates/parts/customize-checkbox.php:154
|
3044 |
+
#: core/templates/parts/customize-radio.php:128
|
3045 |
#: core/templates/parts/customize-select.php:126
|
3046 |
msgid "Delete"
|
3047 |
msgstr ""
|
3069 |
msgstr ""
|
3070 |
|
3071 |
#: core/templates/customize-form-parts-drawer.php:38
|
3072 |
+
#: inc/classes/class-happyforms.php:117
|
3073 |
#: inc/templates/customize-controls/checkbox_dummy.php:7
|
3074 |
#: inc/templates/customize-controls/email-parts-list-dummy.php:11
|
3075 |
msgid "Upgrade"
|
3116 |
msgstr ""
|
3117 |
|
3118 |
#: core/templates/partials/customize-field-width.php:4
|
|
|
|
|
3119 |
msgid "Full"
|
3120 |
msgstr ""
|
3121 |
|
3122 |
#: core/templates/partials/customize-field-width.php:5
|
|
|
|
|
3123 |
msgid "Half"
|
3124 |
msgstr ""
|
3125 |
|
3126 |
#: core/templates/partials/customize-field-width.php:6
|
|
|
|
|
3127 |
msgid "Third"
|
3128 |
msgstr ""
|
3129 |
|
3130 |
#: core/templates/partials/customize-field-width.php:7
|
|
|
|
|
3131 |
msgid "Quarter"
|
3132 |
msgstr ""
|
3133 |
|
3134 |
#: core/templates/partials/customize-field-width.php:8
|
|
|
|
|
3135 |
msgid "Auto"
|
3136 |
msgstr ""
|
3137 |
|
3154 |
msgid "No choices added yet."
|
3155 |
msgstr ""
|
3156 |
|
|
|
|
|
|
|
|
|
|
|
|
|
3157 |
#: core/templates/parts/customize-checkbox.php:36
|
3158 |
#: core/templates/parts/customize-radio.php:36
|
3159 |
#: core/templates/parts/customize-select.php:40
|
3247 |
msgid "Vertical"
|
3248 |
msgstr ""
|
3249 |
|
3250 |
+
#: core/templates/parts/customize-checkbox.php:116
|
|
|
|
|
|
|
|
|
|
|
3251 |
#: core/templates/parts/customize-email.php:58
|
3252 |
#: core/templates/parts/customize-multi-line-text.php:82
|
3253 |
#: core/templates/parts/customize-number.php:81
|
3254 |
+
#: core/templates/parts/customize-radio.php:88
|
3255 |
#: core/templates/parts/customize-select.php:86
|
3256 |
#: core/templates/parts/customize-single-line-text.php:57
|
3257 |
+
msgid "Additional CSS class(es)"
|
3258 |
msgstr ""
|
3259 |
|
3260 |
+
#: core/templates/parts/customize-checkbox.php:138
|
3261 |
+
#: core/templates/parts/customize-radio.php:112
|
3262 |
#: core/templates/parts/customize-select.php:110
|
3263 |
msgid "Make this choice default"
|
3264 |
msgstr ""
|
3265 |
|
3266 |
+
#: core/templates/parts/customize-checkbox.php:141
|
3267 |
+
#: core/templates/parts/customize-radio.php:115
|
3268 |
#: core/templates/parts/customize-select.php:113
|
3269 |
+
#: inc/classes/class-happyforms.php:155
|
3270 |
msgid "Limit submissions"
|
3271 |
msgstr ""
|
3272 |
|
3273 |
+
#: core/templates/parts/customize-checkbox.php:145
|
3274 |
+
#: core/templates/parts/customize-radio.php:119
|
3275 |
#: core/templates/parts/customize-select.php:117
|
3276 |
msgid "Max submissions"
|
3277 |
msgstr ""
|
3278 |
|
3279 |
+
#: core/templates/parts/customize-checkbox.php:149
|
3280 |
+
#: core/templates/parts/customize-radio.php:123
|
3281 |
#: core/templates/parts/customize-select.php:121
|
3282 |
msgid "Show remaining submissions"
|
3283 |
msgstr ""
|
3284 |
|
3285 |
+
#: core/templates/parts/customize-checkbox.php:155
|
3286 |
+
#: core/templates/parts/customize-radio.php:129
|
3287 |
#: core/templates/parts/customize-select.php:127
|
3288 |
msgid "More"
|
3289 |
msgstr ""
|
3351 |
msgid "Click to edit this part."
|
3352 |
msgstr ""
|
3353 |
|
3354 |
+
#: inc/classes/class-happyforms.php:131
|
3355 |
msgid "Use reCAPTCHA"
|
3356 |
msgstr ""
|
3357 |
|
3358 |
+
#: inc/classes/class-happyforms.php:137
|
3359 |
msgid "Save incomplete and abandoned submissions"
|
3360 |
msgstr ""
|
3361 |
|
3362 |
+
#: inc/classes/class-happyforms.php:143
|
3363 |
msgid "Let respondents save a draft submission and come back to it later"
|
3364 |
msgstr ""
|
3365 |
|
3366 |
+
#: inc/classes/class-happyforms.php:149
|
3367 |
msgid "Require respondents to review a submission before submitting"
|
3368 |
msgstr ""
|
3369 |
|
3370 |
+
#: inc/classes/class-happyforms.php:161
|
|
|
|
|
|
|
|
|
3371 |
msgid "Schedule visibility"
|
3372 |
msgstr ""
|
3373 |
|
3374 |
+
#: inc/classes/class-happyforms.php:167
|
3375 |
msgid "Store activity in database"
|
3376 |
msgstr ""
|
3377 |
|
3378 |
+
#: inc/classes/class-happyforms.php:173
|
3379 |
msgid "Capture user metadata (IP, language, platform, time and timezone)"
|
3380 |
msgstr ""
|
3381 |
|
3382 |
+
#: inc/classes/class-happyforms.php:179
|
3383 |
msgid "Block these email addresses, email domains and email partials"
|
3384 |
msgstr ""
|
3385 |
|
3386 |
+
#: inc/classes/class-happyforms.php:185
|
3387 |
msgid "Block these words, phrases and letters"
|
3388 |
msgstr ""
|
3389 |
|
3390 |
+
#: inc/classes/class-happyforms.php:195
|
3391 |
msgid "Include reply link"
|
3392 |
msgstr ""
|
3393 |
|
3394 |
+
#: inc/classes/class-happyforms.php:201
|
3395 |
msgid "Include referral web address"
|
3396 |
msgstr ""
|
3397 |
|
3398 |
+
#: inc/classes/class-happyforms.php:207
|
3399 |
+
#: inc/classes/class-happyforms.php:219
|
3400 |
msgid "Attach .pdf"
|
3401 |
msgstr ""
|
3402 |
|
3403 |
+
#: inc/classes/class-happyforms.php:213
|
3404 |
msgid "To email address"
|
3405 |
msgstr ""
|
3406 |
|
3407 |
+
#: inc/classes/class-happyforms.php:225
|
3408 |
msgid "Send abandonment email"
|
3409 |
msgstr ""
|
3410 |
|
3411 |
+
#: inc/classes/class-happyforms.php:436
|
3412 |
+
#: inc/classes/class-happyforms.php:454
|
3413 |
msgid "Build your own WordPress form with Happyforms"
|
3414 |
msgstr ""
|
3415 |
|
3445 |
msgid "Spam"
|
3446 |
msgstr ""
|
3447 |
|
3448 |
+
#: inc/classes/class-message-controller.php:586
|
3449 |
+
#: inc/classes/class-message-controller.php:587
|
3450 |
msgid "All Activity"
|
3451 |
msgstr ""
|
3452 |
|
3453 |
+
#: inc/classes/class-message-controller.php:588
|
3454 |
msgid "No activity found."
|
3455 |
msgstr ""
|
3456 |
|
3630 |
msgid "For formatted site URLs."
|
3631 |
msgstr ""
|
3632 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3633 |
#: inc/templates/customize-controls/email-parts-list-dummy.php:8
|
3634 |
msgid "field"
|
3635 |
msgstr ""
|
3814 |
msgstr ""
|
3815 |
|
3816 |
#: integrations/templates/widget-mailpoet-dummy.php:5
|
3817 |
+
msgid "MailPoet plugin must first be installed and activated to use this integration."
|
|
|
|
|
3818 |
msgstr ""
|
3819 |
|
3820 |
#: integrations/templates/widget-paypal-dummy.php:4
|
3853 |
msgid "Publishable key"
|
3854 |
msgstr ""
|
3855 |
|
3856 |
+
#: core/assets/jsx/build/admin/block.js:141
|
3857 |
+
#: core/assets/jsx/src/admin/block.js:26
|
3858 |
+
msgid "Pick a form to display on your site."
|
3859 |
msgstr ""
|
3860 |
|
3861 |
+
#: core/assets/jsx/build/admin/block.js:172
|
3862 |
+
#: core/assets/jsx/src/admin/block.js:58
|
3863 |
+
msgid "Pick a form"
|
3864 |
msgstr ""
|
3865 |
|
3866 |
+
#: inc/assets/jsx/build/admin/dashboard-modals.js:160
|
3867 |
+
msgid "Keep plugin data (recommended)"
|
3868 |
msgstr ""
|
3869 |
|
3870 |
+
#: inc/assets/jsx/build/admin/dashboard-modals.js:167
|
3871 |
+
msgid "Permanently delete plugin data"
|
3872 |
+
msgstr ""
|
3873 |
+
|
3874 |
+
#: inc/assets/jsx/build/admin/dashboard-modals.js:174
|
3875 |
+
msgid "Deactivate Plugin"
|
3876 |
+
msgstr ""
|
3877 |
+
|
3878 |
+
#: inc/assets/jsx/build/admin/dashboard-modals.js:174
|
3879 |
+
msgid "Delete Data and Deactivate Plugin"
|
3880 |
+
msgstr ""
|
3881 |
+
|
3882 |
+
#: inc/assets/jsx/build/admin/dashboard-modals.js:280
|
3883 |
+
#: inc/assets/jsx/src/admin/dashboard-modals.js:47
|
3884 |
+
msgid "Welcome to Happyforms"
|
3885 |
+
msgstr ""
|
3886 |
+
|
3887 |
+
#: inc/assets/jsx/build/admin/dashboard-modals.js:280
|
3888 |
+
#: inc/assets/jsx/src/admin/dashboard-modals.js:48
|
3889 |
+
msgid "We'll send you a few emails each month about plugin updates. And don't sweat it, you can unsubscribe anytime."
|
3890 |
+
msgstr ""
|
3891 |
+
|
3892 |
+
#: inc/assets/jsx/build/admin/dashboard-modals.js:292
|
3893 |
+
#: inc/assets/jsx/src/admin/dashboard-modals.js:55
|
3894 |
+
msgid "Yes, I want to help support the free plugin by adding a powered by link in the footer of my forms and emails."
|
3895 |
+
msgstr ""
|
3896 |
+
|
3897 |
+
#: inc/assets/jsx/build/admin/dashboard-modals.js:297
|
3898 |
+
#: inc/assets/jsx/src/admin/dashboard-modals.js:60
|
3899 |
+
msgid "Continue"
|
3900 |
+
msgstr ""
|
3901 |
+
|
3902 |
+
#: inc/assets/jsx/build/admin/dashboard-modals.js:312
|
3903 |
+
#: inc/assets/jsx/src/admin/dashboard-modals.js:80
|
3904 |
+
msgid "You’ll need to upgrade to access this"
|
3905 |
+
msgstr ""
|
3906 |
+
|
3907 |
+
#: inc/assets/jsx/build/admin/dashboard-modals.js:316
|
3908 |
+
#: inc/assets/jsx/src/admin/dashboard-modals.js:83
|
3909 |
+
msgid "We offer several, affordable paid plans that include our best features. Upgrade today and increase your customer interactions."
|
3910 |
+
msgstr ""
|
3911 |
+
|
3912 |
+
#: inc/assets/jsx/build/admin/dashboard-modals.js:324
|
3913 |
+
#: inc/assets/jsx/src/admin/dashboard-modals.js:91
|
3914 |
+
msgid "Start Your Risk-Free 14-Day Trial"
|
3915 |
+
msgstr ""
|
3916 |
+
|
3917 |
+
#: inc/assets/jsx/build/admin/dashboard-modals.js:325
|
3918 |
+
#: inc/assets/jsx/src/admin/dashboard-modals.js:94
|
3919 |
+
msgid "Or"
|
3920 |
+
msgstr ""
|
3921 |
+
|
3922 |
+
#: inc/assets/jsx/build/admin/dashboard-modals.js:328
|
3923 |
+
#: inc/assets/jsx/src/admin/dashboard-modals.js:94
|
3924 |
+
msgid "continue with free version"
|
3925 |
+
msgstr ""
|
readme.txt
CHANGED
@@ -2,10 +2,10 @@
|
|
2 |
|
3 |
Contributors: happyforms
|
4 |
Tags: contact form, contact form plugin, forms, form builder, custom form, intake form, registration form, survey form, quiz form, payment form, newsletter form, giveaway form, fundraising form, donation form, nomination form, order form, questionnaire form, onboarding form, contract form, estimate form, research form, qualitative form, quantitative form, membership form, mobile form, feedback form, release form, inquiry form, request form, evaluation form, RSVP form, reservation form, sales lead form, popup form, quote form, event form, booking form, application form, agreement form, safety form, compliance form, assessment form, sponsorship form, report form, file upload form, satisfaction form
|
5 |
-
Requires at least:
|
6 |
Tested up to: 5.8
|
7 |
-
Requires PHP:
|
8 |
-
Stable tag: 1.13.
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
@@ -151,6 +151,11 @@ Aw, honestly, the thought that you're writing about our contact form builder is
|
|
151 |
|
152 |
== Changelog ==
|
153 |
|
|
|
|
|
|
|
|
|
|
|
154 |
= 1.13.3 =
|
155 |
* Bugfix: A typo was causing errors on older PHP versions.
|
156 |
|
@@ -855,6 +860,9 @@ Aw, honestly, the thought that you're writing about our contact form builder is
|
|
855 |
|
856 |
== Upgrade Notice ==
|
857 |
|
|
|
|
|
|
|
858 |
= 1.13.3 =
|
859 |
* Minor bugfixes.
|
860 |
|
2 |
|
3 |
Contributors: happyforms
|
4 |
Tags: contact form, contact form plugin, forms, form builder, custom form, intake form, registration form, survey form, quiz form, payment form, newsletter form, giveaway form, fundraising form, donation form, nomination form, order form, questionnaire form, onboarding form, contract form, estimate form, research form, qualitative form, quantitative form, membership form, mobile form, feedback form, release form, inquiry form, request form, evaluation form, RSVP form, reservation form, sales lead form, popup form, quote form, event form, booking form, application form, agreement form, safety form, compliance form, assessment form, sponsorship form, report form, file upload form, satisfaction form
|
5 |
+
Requires at least: 5.0
|
6 |
Tested up to: 5.8
|
7 |
+
Requires PHP: 7.0
|
8 |
+
Stable tag: 1.13.4
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
151 |
|
152 |
== Changelog ==
|
153 |
|
154 |
+
= 1.13.4 =
|
155 |
+
* Removal: "Message location" control led to degraded usability.
|
156 |
+
* Removal: "Title" section in "Style" tab added clutter and duplicated core functionality.
|
157 |
+
* Improvement: Better selection and insertion of forms in block interface.
|
158 |
+
|
159 |
= 1.13.3 =
|
160 |
* Bugfix: A typo was causing errors on older PHP versions.
|
161 |
|
860 |
|
861 |
== Upgrade Notice ==
|
862 |
|
863 |
+
= 1.13.4 =
|
864 |
+
* Usability improvements.
|
865 |
+
|
866 |
= 1.13.3 =
|
867 |
* Minor bugfixes.
|
868 |
|