WP User Frontend – Membership, Profile, Registration & Post Submission Plugin for WordPress - Version 2.5.5

Version Description

Download this release

Release Info

Developer tareq1988
Plugin Icon 128x128 WP User Frontend – Membership, Profile, Registration & Post Submission Plugin for WordPress
Version 2.5.5
Comparing to
See all releases

Code changes from version 2.5.3 to 2.5.5

Files changed (147) hide show
  1. .editorconfig +19 -0
  2. .gitattributes +12 -0
  3. .jshintrc +31 -0
  4. .svnignore +12 -0
  5. admin/add-ons.php +54 -63
  6. admin/class-tools.php +390 -0
  7. admin/form-builder/assets/js/components/builder-stage/index.js +0 -199
  8. admin/form-builder/assets/js/components/builder-stage/template.php +0 -75
  9. admin/form-builder/assets/js/components/field-checkbox/index.js +0 -41
  10. admin/form-builder/assets/js/components/field-checkbox/template.php +0 -12
  11. admin/form-builder/assets/js/components/field-html_help_text/index.js +0 -7
  12. admin/form-builder/assets/js/components/field-html_help_text/template.php +0 -1
  13. admin/form-builder/assets/js/components/field-option-data/index.js +0 -117
  14. admin/form-builder/assets/js/components/field-option-data/template.php +0 -65
  15. admin/form-builder/assets/js/components/field-option-pro-feature-alert/index.js +0 -13
  16. admin/form-builder/assets/js/components/field-option-pro-feature-alert/template.php +0 -6
  17. admin/form-builder/assets/js/components/field-options/index.js +0 -68
  18. admin/form-builder/assets/js/components/field-options/template.php +0 -47
  19. admin/form-builder/assets/js/components/field-radio/index.js +0 -23
  20. admin/form-builder/assets/js/components/field-radio/template.php +0 -13
  21. admin/form-builder/assets/js/components/field-select/index.js +0 -23
  22. admin/form-builder/assets/js/components/field-select/template.php +0 -10
  23. admin/form-builder/assets/js/components/field-text-meta/index.js +0 -40
  24. admin/form-builder/assets/js/components/field-text-meta/template.php +0 -9
  25. admin/form-builder/assets/js/components/field-text/index.js +0 -28
  26. admin/form-builder/assets/js/components/field-text/template.php +0 -21
  27. admin/form-builder/assets/js/components/field-textarea/index.js +0 -19
  28. admin/form-builder/assets/js/components/field-textarea/template.php +0 -7
  29. admin/form-builder/assets/js/components/form-checkbox_field/index.js +0 -10
  30. admin/form-builder/assets/js/components/form-checkbox_field/template.php +0 -16
  31. admin/form-builder/assets/js/components/form-custom_hidden_field/index.js +0 -10
  32. admin/form-builder/assets/js/components/form-custom_hidden_field/template.php +0 -10
  33. admin/form-builder/assets/js/components/form-custom_html/index.js +0 -16
  34. admin/form-builder/assets/js/components/form-custom_html/template.php +0 -1
  35. admin/form-builder/assets/js/components/form-dropdown_field/index.js +0 -10
  36. admin/form-builder/assets/js/components/form-dropdown_field/template.php +0 -16
  37. admin/form-builder/assets/js/components/form-email_address/index.js +0 -10
  38. admin/form-builder/assets/js/components/form-email_address/template.php +0 -10
  39. admin/form-builder/assets/js/components/form-featured_image/index.js +0 -10
  40. admin/form-builder/assets/js/components/form-featured_image/template.php +0 -11
  41. admin/form-builder/assets/js/components/form-fields/index.js +0 -117
  42. admin/form-builder/assets/js/components/form-fields/template.php +0 -49
  43. admin/form-builder/assets/js/components/form-image_upload/index.js +0 -10
  44. admin/form-builder/assets/js/components/form-image_upload/template.php +0 -11
  45. admin/form-builder/assets/js/components/form-multiple_select/index.js +0 -10
  46. admin/form-builder/assets/js/components/form-multiple_select/template.php +0 -17
  47. admin/form-builder/assets/js/components/form-post_content/index.js +0 -10
  48. admin/form-builder/assets/js/components/form-post_content/template.php +0 -20
  49. admin/form-builder/assets/js/components/form-post_excerpt/index.js +0 -10
  50. admin/form-builder/assets/js/components/form-post_excerpt/template.php +0 -9
  51. admin/form-builder/assets/js/components/form-post_tags/index.js +0 -10
  52. admin/form-builder/assets/js/components/form-post_tags/template.php +0 -11
  53. admin/form-builder/assets/js/components/form-post_title/index.js +0 -10
  54. admin/form-builder/assets/js/components/form-post_title/template.php +0 -10
  55. admin/form-builder/assets/js/components/form-radio_field/index.js +0 -10
  56. admin/form-builder/assets/js/components/form-radio_field/template.php +0 -16
  57. admin/form-builder/assets/js/components/form-section_break/index.js +0 -10
  58. admin/form-builder/assets/js/components/form-section_break/template.php +0 -4
  59. admin/form-builder/assets/js/components/form-taxonomy/index.js +0 -163
  60. admin/form-builder/assets/js/components/form-taxonomy/template.php +0 -41
  61. admin/form-builder/assets/js/components/form-text_field/index.js +0 -10
  62. admin/form-builder/assets/js/components/form-text_field/template.php +0 -10
  63. admin/form-builder/assets/js/components/form-textarea_field/index.js +0 -7
  64. admin/form-builder/assets/js/components/form-textarea_field/template.php +0 -13
  65. admin/form-builder/assets/js/components/form-website_url/index.js +0 -10
  66. admin/form-builder/assets/js/components/form-website_url/template.php +0 -10
  67. admin/form-builder/assets/js/components/help-text/index.js +0 -14
  68. admin/form-builder/assets/js/components/help-text/template.php +0 -1
  69. admin/form-builder/assets/js/components/merge-tags/index.js +0 -55
  70. admin/form-builder/assets/js/components/merge-tags/template.php +0 -45
  71. admin/form-builder/assets/js/components/text-editor/editor.less +0 -63
  72. admin/form-builder/assets/js/components/text-editor/index.js +0 -15
  73. admin/form-builder/assets/js/components/text-editor/style.less +0 -53
  74. admin/form-builder/assets/js/components/text-editor/template.php +0 -70
  75. admin/form-builder/assets/js/form-builder-assets.js +0 -46
  76. admin/form-builder/assets/js/form-builder.js +0 -458
  77. admin/form-builder/assets/js/jquery-siaf-end.js +0 -1
  78. admin/form-builder/assets/js/jquery-siaf-start.js +0 -2
  79. admin/form-builder/assets/js/mixins/form-field.js +0 -53
  80. admin/form-builder/assets/js/mixins/global.js +0 -67
  81. admin/form-builder/assets/js/mixins/option-field.js +0 -57
  82. admin/form-builder/assets/less/form-builder.less +0 -1025
  83. admin/form-builder/assets/less/mixins/center-block.less +0 -7
  84. admin/form-builder/assets/less/mixins/clearfix.less +0 -22
  85. admin/form-builder/assets/less/mixins/custom-mixins.less +0 -70
  86. admin/form-builder/assets/less/mixins/hide-text.less +0 -21
  87. admin/form-builder/assets/less/mixins/opacity.less +0 -8
  88. admin/form-builder/assets/less/mixins/reset-text.less +0 -18
  89. admin/form-builder/assets/less/mixins/size.less +0 -10
  90. admin/form-builder/assets/less/mixins/text-overflow.less +0 -8
  91. admin/form-builder/assets/less/mixins/vendor-prefixes.less +0 -227
  92. admin/form-builder/assets/less/variables.less +0 -8
  93. admin/form-builder/class-wpuf-admin-form-builder-ajax.php +15 -5
  94. admin/form-builder/class-wpuf-admin-form-builder.php +6 -42
  95. admin/form-builder/class-wpuf-form-builder-field-settings.php +63 -3
  96. admin/form-template.php +2 -3
  97. admin/form.php +2 -2
  98. admin/html/form-settings-post.php +5 -0
  99. admin/post-forms-list-table.php +6 -1
  100. admin/posting.php +23 -9
  101. admin/settings-options.php +1 -38
  102. admin/settings.php +25 -5
  103. admin/support.php +42 -0
  104. admin/template.php +52 -0
  105. admin/tools.php +7 -391
  106. admin/weforms.php +56 -0
  107. assets/css/formbuilder.css +0 -344
  108. assets/css/formbuilder.less +0 -424
  109. assets/css/frontend-forms.css +12 -10
  110. assets/css/frontend-forms.less +0 -1315
  111. assets/css/wpuf-form-builder.css +396 -31
  112. assets/images/active.png +0 -0
  113. assets/images/inactive.png +0 -0
  114. assets/images/recaptcha-placeholder.png +0 -0
  115. assets/js-templates/form-components.php +976 -0
  116. assets/js/frontend-form.js +6 -0
  117. assets/js/frontend-form.min.js +1 -1
  118. assets/js/wpuf-form-builder-components.js +225 -34
  119. assets/js/wpuf-form-builder-mixins.js +57 -0
  120. assets/js/wpuf-form-builder.js +11 -1
  121. assets/vendor/sweetalert2/dist/sweetalert2.css +2 -1
  122. class/admin-asset-loader.php +94 -0
  123. class/asset-loader.php +85 -0
  124. class/frontend-account.php +2 -0
  125. class/frontend-dashboard.php +6 -0
  126. class/frontend-form-post.php +68 -9
  127. class/render-form.php +46 -6
  128. class/subscription.php +10 -5
  129. includes/class-abstract-integration.php +114 -0
  130. includes/class-integrations.php +39 -0
  131. includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php +6 -6
  132. includes/free/admin/form-builder/class-wpuf-form-builder-free.php +1 -1
  133. includes/free/edit-profile.php +6 -1
  134. includes/free/form-element.php +2 -1
  135. includes/free/prompt.php +1 -1
  136. languages/wpuf-es_ES.mo +0 -0
  137. languages/wpuf-es_ES.po +3429 -0
  138. languages/wpuf-fa_IR.po +1 -1
  139. languages/wpuf-zh_CN.po +1 -1
  140. languages/wpuf.pot +915 -668
  141. lib/class-wedevs-insights.php +750 -0
  142. lib/class-weforms-upsell.php +418 -0
  143. readme.txt +49 -1
  144. templates/account.php +12 -7
  145. templates/dashboard/subscription.php +3 -0
  146. wpuf-functions.php +105 -18
  147. wpuf.php +177 -62
.editorconfig ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ root = true
2
+
3
+ [*]
4
+ indent_style = space
5
+ indent_size = 4
6
+ end_of_line = lf
7
+ charset = utf-8
8
+ trim_trailing_whitespace = true
9
+ insert_final_newline = true
10
+
11
+ [*.md]
12
+ trim_trailing_whitespace = false
13
+
14
+ [{.jshintrc,*.json,*.yml}]
15
+ indent_style = space
16
+ indent_size = 2
17
+
18
+ [{*.txt,wp-config-sample.php}]
19
+ end_of_line = crlf
.gitattributes ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Items to ignore when downloading a zip
2
+
3
+ .editorconfig export-ignore
4
+ .gitattributes export-ignore
5
+ .gitignore export-ignore
6
+ .jshintrc export-ignore
7
+ .svnignore export-ignore
8
+ docs.md export-ignore
9
+ Gruntfile.js export-ignore
10
+ package.json export-ignore
11
+ plugin-deploy.sh export-ignore
12
+ readme.md export-ignore
.jshintrc ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "boss": true,
3
+ "curly": true,
4
+ "eqeqeq": true,
5
+ "eqnull": true,
6
+ "expr": true,
7
+ "noarg": true,
8
+ "onevar": true,
9
+ "trailing": true,
10
+ "undef": true,
11
+ "unused": true,
12
+ "browser": true,
13
+ "passfail": false, // Stop on first error.
14
+ "devel": true,
15
+ "esnext": true,
16
+
17
+ "globals": {
18
+ "jQuery": false,
19
+ "$": false,
20
+ "JSON": false,
21
+ "wp": false,
22
+ "_": false,
23
+ "Vue": false,
24
+ "Vuex": false,
25
+ "swal": false,
26
+ "toastr": false,
27
+ "wpuf_form_builder": false,
28
+ "wpuf_form_builder_mixins": false,
29
+ "wpuf_mixins": false
30
+ }
31
+ }
.svnignore ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ includes/pro
2
+ nbproject
3
+ Gruntfile.js
4
+ package.json
5
+ docs.md
6
+ changelog.txt
7
+ plugin-deploy.sh
8
+ npm-debug.log
9
+ secret.json
10
+ log.txt
11
+ admin/form-builder/assets
12
+ assets/css/*.less
admin/add-ons.php CHANGED
@@ -19,81 +19,72 @@
19
  $add_ons = json_decode( $add_ons );
20
 
21
  if ( count( $add_ons ) ) {
22
- foreach ($add_ons as $addon) {
23
- ?>
24
-
25
- <div class="wpuf-addon">
26
- <div class="wpuf-addon-thumb">
27
- <a href="<?php echo $addon->url; ?>" target="_blank">
28
- <img src="<?php echo $addon->thumbnail; ?>" alt="<?php echo esc_attr( $addon->title ); ?>" />
29
- </a>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
30
  </div>
31
 
32
- <div class="wpuf-detail">
33
- <h3 class="title">
34
- <a href="<?php echo $addon->url; ?>" target="_blank"><?php echo $addon->title; ?></a>
35
- </h3>
36
 
37
- <div class="text"><?php echo $addon->desc; ?></div>
38
- </div>
39
-
40
- <div class="wpuf-links">
41
- <?php if ( class_exists( $addon->class ) ) { ?>
42
- <a class="button button-disabled" href="<?php echo $addon->url; ?>" target="_blank">Installed</a>
43
- <?php } else { ?>
44
- <a class="button" href="<?php echo $addon->url; ?>" target="_blank">View Details</a>
45
- <?php } ?>
46
  </div>
47
  </div>
48
 
49
- <?php
50
- }
 
 
 
51
  } else {
52
  echo '<div class="error"><p>Error fetching add-ons. Please refresh the page again.</p></div>';
53
  }
54
  ?>
55
 
56
  <style type="text/css">
57
- .wpuf-addon {
58
- width: 22%;
59
- float: left;
60
- margin: 10px;
61
- border: 1px solid #E6E6E6;
62
- }
63
-
64
- .wpuf-addon:nth-child(5n+1) {
65
- clear: both;
66
- }
67
-
68
- .wpuf-addon-thumb img {
69
- max-width: 100%;
70
- /*max-height: 140px;*/
71
- }
72
-
73
- .wpuf-detail {
74
- padding: 6px 10px 10px;
75
- min-height: 110px;
76
- background: #fff;
77
- }
78
-
79
- .wpuf-detail h3.title {
80
- margin: 5px 0 10px;
81
- padding: 0;
82
- }
83
-
84
- .wpuf-detail h3.title a {
85
- text-decoration: none;
86
- color: #111;
87
- }
88
-
89
- .wpuf-links {
90
- padding: 10px;
91
- background: #F5F5F5;
92
- border-top: 1px solid #E6E6E6;
93
- }
94
-
95
- a.button.disabled {
96
- background: #eee;
97
  }
98
  </style>
99
 
19
  $add_ons = json_decode( $add_ons );
20
 
21
  if ( count( $add_ons ) ) {
22
+ ?>
23
+ <div class="wp-list-table widefat plugin-install">
24
+
25
+ <?php foreach ($add_ons as $addon) { ?>
26
+
27
+ <div class="plugin-card">
28
+ <div class="plugin-card-top">
29
+
30
+ <div class="name column-name">
31
+ <h3>
32
+ <a href="<?php echo $addon->url; ?>" target="_blank">
33
+ <?php echo $addon->title; ?>
34
+ <img class="plugin-icon" src="<?php echo $addon->thumbnail; ?>" alt="<?php echo esc_attr( $addon->title ); ?>" />
35
+ </a>
36
+ </h3>
37
+ </div>
38
+
39
+ <div class="action-links">
40
+ <ul class="plugin-action-buttons">
41
+ <li>
42
+ <?php if ( class_exists( $addon->class ) ) { ?>
43
+ <a class="button button-disabled" href="<?php echo $addon->url; ?>" target="_blank">Installed</a>
44
+ <?php } else { ?>
45
+ <a class="button" href="<?php echo $addon->url; ?>" target="_blank">View Details</a>
46
+ <?php } ?>
47
+ </li>
48
+ </ul>
49
+ </div>
50
+
51
+ <div class="desc column-description">
52
+ <p>
53
+ <?php echo $addon->desc; ?>
54
+ </p>
55
+
56
+ <p class="authors">
57
+ <cite>By <a href="https://wedevs.com" target="_blank">weDevs</a></cite>
58
+ </p>
59
+ </div>
60
  </div>
61
 
62
+ <div class="plugin-card-bottom">
63
+ <div class="column-updated">
64
+ <strong>Last Updated:</strong> 2 months ago
65
+ </div>
66
 
67
+ <div class="column-compatibility">
68
+ <span class="compatibility-compatible">
69
+ <strong>Compatible</strong> with your version of WordPress
70
+ </span>
71
+ </div>
 
 
 
 
72
  </div>
73
  </div>
74
 
75
+ <?php } ?>
76
+
77
+ </div>
78
+
79
+ <?php
80
  } else {
81
  echo '<div class="error"><p>Error fetching add-ons. Please refresh the page again.</p></div>';
82
  }
83
  ?>
84
 
85
  <style type="text/css">
86
+ .wp-list-table {
87
+ margin-top: 25px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
88
  }
89
  </style>
90
 
admin/class-tools.php ADDED
@@ -0,0 +1,390 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Manage Import Export
5
+ *
6
+ * @since 2.2
7
+ *
8
+ * @package WP User Frontend
9
+ */
10
+ class WPUF_Admin_Tools {
11
+
12
+ /**
13
+ * List of All the post forms
14
+ *
15
+ * @return void
16
+ */
17
+ function list_forms() {
18
+
19
+ if ( isset( $_POST['export'] ) ) {
20
+ $this->export_data( $_POST['export_content'], $_POST['formlist'] );
21
+ }
22
+
23
+ $args = array(
24
+ 'post_type' => 'wpuf_forms',
25
+ 'posts_per_page' => -1,
26
+ 'post_status' => 'publish'
27
+ );
28
+ $forms = get_posts( $args );
29
+
30
+ if ( $forms ) {
31
+ ?>
32
+ <div class="postbox" style="margin-top: 15px;">
33
+ <h3 style="padding:10px 15px"><?php _e( 'Form Export', 'wpuf' ); ?></h3>
34
+ <div class="inside">
35
+ <div class="main">
36
+ <form action="" method="post" style="margin-top: 20px;">
37
+ <p>
38
+ <input class="export_type" type="radio" name="export_content" value="all" id="wpuf-all_export" checked>
39
+ <label for="wpuf-all_export"><?php _e( 'All', 'wpuf' ); ?></label>
40
+ </p>
41
+
42
+ <p>
43
+ <input class="export_type" type="radio" name="export_content" value="selected" id="wpuf-selected_export">
44
+ <label for="wpuf-selected_export"><?php _e( 'Select individual', 'wpuf' ); ?></label></p>
45
+ <p>
46
+ <select class="formlist" name="formlist[]" multiple="multiple">
47
+ <?php foreach ( $forms as $form ) { ?>
48
+ <option value="<?php echo esc_attr( $form->ID ) ?>"><?php echo esc_attr( $form->post_title ); ?></option>
49
+ <?php } ?>
50
+ </select>
51
+ </p>
52
+
53
+ <?php wp_nonce_field( 'wpuf-export-form' ); ?>
54
+ <input type="submit" class="button button-primary" name="export" value="<?php _e( 'Export', 'wpuf' ) ?>">
55
+ </form>
56
+ </div>
57
+ </div>
58
+ </div>
59
+
60
+ <?php
61
+ } else {
62
+ sprintf( '<p>%s</p>', __( 'Sorry you have no form to export', 'wpuf' ) );
63
+ }
64
+ }
65
+
66
+ /**
67
+ * List of All Registration forms
68
+ *
69
+ * @return void
70
+ */
71
+ function list_regis_forms() {
72
+
73
+ if ( isset( $_POST['export_regis_form'] ) ) {
74
+ $this->export_regis_data( $_POST['export_regis_content'], $_POST['formlist'] );
75
+ }
76
+
77
+ $args = array(
78
+ 'post_type' => 'wpuf_profile',
79
+ 'posts_per_page' => -1,
80
+ 'post_status' => 'publish'
81
+ );
82
+
83
+ $forms = get_posts( $args );
84
+ if ( $forms ) {
85
+ ?>
86
+ <div class="postbox">
87
+ <h3 style="padding:10px 15px"><?php _e( 'Registration Form Export', 'wpuf' ); ?></h3>
88
+ <div class="inside">
89
+ <div class="main">
90
+
91
+ <form action="" method="post" style="margin-top: 20px;">
92
+
93
+ <p>
94
+ <input class="export_type" type="radio" name="export_regis_content" value="all" id="wpuf-all_regis_export" checked>
95
+ <label for="wpuf-all_regis_export"><?php _e( 'All', 'wpuf' ); ?></label>
96
+ </p>
97
+
98
+ <p>
99
+ <input class="export_type" type="radio" name="export_regis_content" value="selected" id="wpuf-selected_regis_export">
100
+ <label for="wpuf-selected_regis_export"><?php _e( 'Select individual', 'wpuf' ); ?></label>
101
+ </p>
102
+
103
+ <p>
104
+ <select class="formlist" name="formlist[]" multiple="multiple">
105
+ <?php foreach ( $forms as $form ) { ?>
106
+ <option value="<?php echo esc_attr( $form->ID ); ?>"><?php echo esc_attr( $form->post_title ); ?></option>";
107
+ <?php } ?>
108
+ </select>
109
+ </p>
110
+
111
+ <?php wp_nonce_field( 'wpuf-export-regs-form' ); ?>
112
+
113
+ <input type="submit" class="button button-primary" name="export_regis_form" value="<?php _e( 'Export', 'wpuf' ) ?>">
114
+ </form>
115
+ </div>
116
+ </div>
117
+ </div>
118
+ <?php
119
+ } else {
120
+ sprintf( '<p>%s</p>', __( 'Sorry you have no form to export', 'wpuf' ) );
121
+ }
122
+ }
123
+
124
+ /**
125
+ * Import functionality
126
+ */
127
+ function import_data() {
128
+
129
+ if ( isset( $_FILES['import'] ) && check_admin_referer( 'wpuf-import' ) ) {
130
+
131
+ if ( $_FILES['import']['error'] > 0 ) {
132
+
133
+ printf( '<div class="error"><p>%s</p></div>', __( 'Somthing went wrong. Please choose a file again', 'wpuf' ) );
134
+ } else {
135
+
136
+ $file_name = $_FILES['import']['name'];
137
+ $file_ext = pathinfo( $file_name, PATHINFO_EXTENSION );
138
+ $file_size = $_FILES['import']['size'];
139
+
140
+ if ( ($file_ext == "json") && ($file_size < 500000) ) {
141
+
142
+ $data = static::import_json_file( $_FILES['import']['tmp_name'] );
143
+
144
+ if ( $data ) {
145
+ printf( '<div class="updated"><p>%s</p></div>', __( 'Import successful. Have fun!', 'wpuf' ) );
146
+ }
147
+ } else {
148
+ printf( '<div class="error"><p>%s</p></div>', __( 'Invalid file or file size too big.', 'wpuf' ) );
149
+ }
150
+ }
151
+ }
152
+ ?>
153
+
154
+ <h3><?php _e( 'Import forms', 'wpuf' ); ?></h3>
155
+
156
+ <p><?php _e( 'Click Browse button and choose a json file that you backup before.', 'wpuf' ); ?></p>
157
+ <p><?php _e( 'Press <strong>Import</strong> button, we will do the rest for you.', 'wpuf' ); ?></p>
158
+
159
+ <form action="" method="post" enctype='multipart/form-data' style="margin-top: 20px;">
160
+ <?php wp_nonce_field( 'wpuf-import' ); ?>
161
+ <input type='file' name='import' />
162
+ <input type="submit" class="button button-primary" name="import_data" value="<?php _e( 'Import', 'wpuf' ); ?>">
163
+ </form>
164
+ <?php
165
+ }
166
+
167
+ /**
168
+ * Import json file into database
169
+ * @param array $file
170
+ * @return boolean
171
+ */
172
+ public static function import_json_file( $file ) {
173
+
174
+ $encode_data = file_get_contents( $file );
175
+ $options = json_decode( $encode_data, true );
176
+
177
+ foreach ( $options as $key => $value ) {
178
+
179
+ $generate_post = array(
180
+ 'post_title' => $value['post_data']['post_title'],
181
+ 'post_status' => $value['post_data']['post_status'],
182
+ 'post_type' => $value['post_data']['post_type'],
183
+ 'ping_status' => $value['post_data']['ping_status'],
184
+ 'comment_status' => $value['post_data']['comment_status']
185
+ );
186
+
187
+ $post_id = wp_insert_post( $generate_post, true );
188
+
189
+ if ( $post_id && !is_wp_error( $post_id ) ) {
190
+
191
+ foreach ( $value['meta_data']['fields'] as $order => $field ) {
192
+ wpuf_insert_form_field( $post_id, $field, false, $order );
193
+ }
194
+
195
+ update_post_meta( $post_id, 'wpuf_form_settings', $value['meta_data']['settings'] );
196
+ update_post_meta( $post_id, 'notifications', $value['meta_data']['notifications'] );
197
+ }
198
+ }
199
+
200
+ return true;
201
+ }
202
+
203
+ /**
204
+ * Export Registration form
205
+ * @param string $export_type
206
+ * @param integer $post_ids
207
+ */
208
+ function export_regis_data( $export_type, $post_ids ) {
209
+
210
+ if ( $export_type == 'all' && check_admin_referer( 'wpuf-export-regs-form' ) ) {
211
+
212
+ static::export_to_json( 'wpuf_profile' );
213
+
214
+ } elseif ( $export_type == 'selected' && check_admin_referer( 'wpuf-export-regs-form' ) ) {
215
+
216
+ if ( $_POST['formlist'] == NULL ) {
217
+ printf( '<div class="error"><p>%s</p></div>', __( 'Please select some form for exporting', 'wpuf' ) );
218
+ } else {
219
+ static::export_to_json( 'wpuf_profile', $post_ids );
220
+ }
221
+ }
222
+ }
223
+
224
+ /**
225
+ * Export normal form data
226
+ * @param string $export_type
227
+ * @param integer $post_ids
228
+ */
229
+ function export_data( $export_type, $post_ids ) {
230
+ if ( $export_type == 'all' && check_admin_referer( 'wpuf-export-form' ) ) {
231
+
232
+ static::export_to_json( 'wpuf_forms' );
233
+
234
+ } elseif ( $export_type == 'selected' && check_admin_referer( 'wpuf-export-form' ) ) {
235
+
236
+ if ( $_POST['formlist'] == NULL ) {
237
+ printf( '<div class="error"><p>%s</p></div>', __( 'Please select some form for exporting', 'wpuf' ) );
238
+ } else {
239
+ static::export_to_json( 'wpuf_forms', $post_ids );
240
+ }
241
+ }
242
+ }
243
+
244
+ /**
245
+ * Export into json file
246
+ *
247
+ * @param string $post_type
248
+ * @param array $post_ids
249
+ */
250
+ public static function export_to_json( $post_type, $post_ids = array( ) ) {
251
+
252
+ $formatted_data = array();
253
+ $ids = array();
254
+ $blogname = strtolower( str_replace( " ", "-", get_option( 'blogname' ) ) );
255
+ $date = date( "Y-m-d" );
256
+ $json_name = $blogname . "-wpuf-" . $post_type . '-' . $date; // Namming the filename will be generated.
257
+
258
+ if ( ! empty( $post_ids ) ) {
259
+ foreach ( $post_ids as $key => $value ) {
260
+ array_push( $ids, $value );
261
+ }
262
+ }
263
+
264
+ $args = array(
265
+ 'post_status' => 'publish',
266
+ 'post_type' => $post_type,
267
+ 'post__in' => (!empty( $ids ) ) ? $ids : ''
268
+ );
269
+
270
+ $query = new WP_Query( $args );
271
+
272
+ foreach ( $query->posts as $post ) {
273
+ $postdata = get_object_vars( $post );
274
+ unset( $postdata['ID'] );
275
+
276
+ $data = array(
277
+ 'post_data' => $postdata,
278
+ 'meta_data' => array(
279
+ 'fields' => wpuf_get_form_fields( $post->ID ),
280
+ 'settings' => wpuf_get_form_settings( $post->ID ),
281
+ 'notifications' => wpuf_get_form_notifications( $post->ID )
282
+ )
283
+ );
284
+
285
+ array_push( $formatted_data, $data );
286
+ }
287
+
288
+ $json_file = json_encode( $formatted_data ); // Encode data into json data
289
+
290
+ ob_clean();
291
+
292
+ echo $json_file;
293
+
294
+ header( "Content-Type: text/json; charset=" . get_option( 'blog_charset' ) );
295
+ header( "Content-Disposition: attachment; filename=$json_name.json" );
296
+
297
+ exit();
298
+ }
299
+
300
+ /**
301
+ * Formetted meta key value
302
+ *
303
+ * @param array $array
304
+ * @return array
305
+ */
306
+ function formetted_meta_key_value( $array ) {
307
+ $result = array( );
308
+
309
+ foreach ( $array as $key => $val ) {
310
+ $result[$key] = $val[0];
311
+ }
312
+
313
+ return $result;
314
+ }
315
+
316
+ function tool_page() {
317
+ $msg = isset( $_GET['msg'] ) ? $_GET['msg'] : '';
318
+ $text = '';
319
+
320
+ switch ($msg) {
321
+ case 'del_forms':
322
+ $text = __( 'All forms has been deleted', 'wpuf' );
323
+ break;
324
+
325
+ case 'settings_cleared':
326
+ $text = __( 'Settings has been cleared!', 'wpuf' );
327
+ break;
328
+
329
+ case 'del_trans':
330
+ $text = __( 'All transactions has been deleted!', 'wpuf' );
331
+ break;
332
+ }
333
+
334
+ if ( $text ) {
335
+ ?>
336
+ <div class="updated">
337
+ <p>
338
+ <?php echo $text; ?>
339
+ </p>
340
+ </div>
341
+
342
+ <?php } ?>
343
+
344
+
345
+ <div class="metabox-holder">
346
+ <div class="postbox">
347
+ <h3><?php _e( 'Page Installation', 'wpuf' ); ?></h3>
348
+
349
+ <div class="inside">
350
+ <p><?php _e( 'Clicking this button will create required pages for the plugin. Note: It\'ll not delete/replace existing pages.', 'wpuf' ); ?></p>
351
+ <a class="button button-primary" href="<?php echo add_query_arg( array( 'install_wpuf_pages' => true ) ); ?>"><?php _e( 'Install WPUF Pages', 'wpuf' ); ?></a>
352
+ </div>
353
+ </div>
354
+
355
+ <div class="postbox">
356
+ <h3><?php _e( 'Reset Settings', 'wpuf' ); ?></h3>
357
+
358
+ <div class="inside">
359
+ <p><?php _e( '<strong>Caution:</strong> This tool will delete all the plugin settings of WP User Frontend Pro', 'wpuf' ); ?></p>
360
+ <a class="button button-primary" href="<?php echo wp_nonce_url( add_query_arg( array( 'wpuf_action' => 'clear_settings' ), 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ); ?>" onclick="return confirm('Are you sure?');"><?php _e( 'Reset Settings', 'wpuf' ); ?></a>
361
+ </div>
362
+ </div>
363
+
364
+ <div class="postbox">
365
+ <h3><?php _e( 'Delete Forms', 'wpuf' ); ?></h3>
366
+
367
+ <div class="inside">
368
+ <p><?php _e( '<strong>Caution:</strong> This tool will delete all the post and registration/profile forms.', 'wpuf' ); ?></p>
369
+
370
+ <a class="button button-primary" href="<?php echo wp_nonce_url( add_query_arg( array( 'wpuf_action' => 'del_post_forms' ), 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ); ?>" onclick="return confirm('Are you sure?');"><?php _e( 'Delete Post Forms', 'wpuf' ); ?></a>
371
+ <a class="button button-primary" href="<?php echo wp_nonce_url( add_query_arg( array( 'wpuf_action' => 'del_pro_forms' ), 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ); ?>" onclick="return confirm('Are you sure?');"><?php _e( 'Delete Registration Forms', 'wpuf' ); ?></a>
372
+ <a class="button button-primary" href="<?php echo wp_nonce_url( add_query_arg( array( 'wpuf_action' => 'del_subs' ), 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ); ?>" onclick="return confirm('Are you sure?');"><?php _e( 'Delete Subscriptions', 'wpuf' ); ?></a>
373
+ <a class="button button-primary" href="<?php echo wp_nonce_url( add_query_arg( array( 'wpuf_action' => 'del_coupon' ), 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ); ?>" onclick="return confirm('Are you sure?');"><?php _e( 'Delete Coupons', 'wpuf' ); ?></a>
374
+ </div>
375
+ </div>
376
+
377
+ <div class="postbox">
378
+ <h3><?php _e( 'Transactions', 'wpuf' ); ?></h3>
379
+
380
+ <div class="inside">
381
+ <p><?php _e( 'This tool will delete all the transactions from the transaction table.', 'wpuf' ); ?></p>
382
+
383
+ <a class="button button-primary" href="<?php echo wp_nonce_url( add_query_arg( array( 'wpuf_action' => 'clear_transaction' ), 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ); ?>" onclick="return confirm('Are you sure?');"><?php _e( 'Delete Transactions', 'wpuf' ); ?></a>
384
+ </div>
385
+ </div>
386
+ </div>
387
+ <?php
388
+ }
389
+
390
+ }
admin/form-builder/assets/js/components/builder-stage/index.js DELETED
@@ -1,199 +0,0 @@
1
- Vue.component('builder-stage', {
2
- template: '#tmpl-wpuf-builder-stage',
3
-
4
- mixins: wpuf_form_builder_mixins(wpuf_mixins.builder_stage),
5
-
6
- computed: {
7
- form_fields: function () {
8
- return this.$store.state.form_fields;
9
- },
10
-
11
- field_settings: function () {
12
- return this.$store.state.field_settings;
13
- },
14
-
15
- hidden_fields: function () {
16
- return this.$store.state.form_fields.filter(function (item) {
17
- return 'hidden' === item.input_type;
18
- });
19
- },
20
-
21
- editing_form_id: function () {
22
- return this.$store.state.editing_field_id;
23
- },
24
-
25
- pro_link: function () {
26
- return wpuf_form_builder.pro_link;
27
- }
28
- },
29
-
30
- mounted: function () {
31
- var self = this;
32
-
33
- // bind jquery ui sortable
34
- $('#form-preview-stage .wpuf-form.sortable-list').sortable({
35
- placeholder: 'form-preview-stage-dropzone',
36
- items: '.field-items',
37
- handle: '.control-buttons .move',
38
- scroll: true,
39
- update: function (e, ui) {
40
- var item = ui.item[0],
41
- data = item.dataset,
42
- source = data.source,
43
- toIndex = parseInt($(ui.item).index()),
44
- payload = {
45
- toIndex: toIndex
46
- };
47
-
48
- if ('panel' === source) {
49
- // prepare the payload to add new form element
50
- var field_template = ui.item[0].dataset.formField,
51
- field = $.extend(true, {}, self.field_settings[field_template].field_props);
52
-
53
- // add a random integer id
54
- field.id = self.get_random_id();
55
-
56
- // add meta key
57
- if ('yes' === field.is_meta && !field.name) {
58
- field.name = field.label.replace(/\W/g, '_').toLowerCase() + '_' + field.id;
59
- }
60
-
61
- payload.field = field;
62
-
63
- // add new form element
64
- self.$store.commit('add_form_field_element', payload);
65
-
66
- // remove button from stage
67
- $(this).find('.button.ui-draggable.ui-draggable-handle').remove();
68
-
69
- } else if ('stage' === source) {
70
- payload.fromIndex = parseInt(data.index);
71
-
72
- self.$store.commit('swap_form_field_elements', payload);
73
- }
74
-
75
- }
76
- });
77
- },
78
-
79
- methods: {
80
-
81
- open_field_settings: function(field_id) {
82
- this.$store.commit('open_field_settings', field_id);
83
- },
84
-
85
- clone_field: function(field_id, index) {
86
- var payload = {
87
- field_id: field_id,
88
- index: index,
89
- new_id: this.get_random_id()
90
- };
91
-
92
- // single instance checking
93
- var field = _.find(this.$store.state.form_fields, function (item) {
94
- return parseInt(item.id) === parseInt(payload.field_id);
95
- });
96
-
97
- // check if these are already inserted
98
- if ( this.isSingleInstance( field.template ) && this.containsField( field.template ) ) {
99
- swal({
100
- title: "Oops...",
101
- text: "You already have this field in the form"
102
- });
103
- return;
104
- }
105
-
106
- this.$store.commit('clone_form_field_element', payload);
107
- },
108
-
109
- delete_field: function(index) {
110
- var self = this;
111
-
112
- swal({
113
- title: 'Are you sure?',
114
- text: "You won't be able to revert this!",
115
- type: 'warning',
116
- showCancelButton: true,
117
- confirmButtonColor: '#3085d6',
118
- cancelButtonColor: '#d33',
119
- confirmButtonText: self.i18n.yes_delete_it,
120
- cancelButtonText: self.i18n.no_cancel_it,
121
- confirmButtonClass: 'btn btn-success',
122
- cancelButtonClass: 'btn btn-danger',
123
- buttonsStyling: false
124
- }).then(function () {
125
- self.$store.commit('delete_form_field_element', index);
126
- swal(
127
- 'Deleted!',
128
- 'Your file has been deleted.',
129
- 'success'
130
- );
131
- }, function (dismiss) {
132
- // dismiss can be 'cancel', 'overlay',
133
- // 'close', and 'timer'
134
- if (dismiss === 'cancel') {
135
- swal(
136
- 'Cancelled',
137
- 'Your field is safe :)',
138
- 'error'
139
- );
140
- }
141
- });
142
-
143
- // self.warn({
144
- // text: self.i18n.delete_field_warn_msg,
145
- // confirmButtonText: self.i18n.yes_delete_it,
146
- // cancelButtonText: self.i18n.no_cancel_it,
147
- // }, function (is_confirm) {
148
- // if (is_confirm) {
149
- // self.$store.commit('delete_form_field_element', index);
150
- // }
151
- // });
152
- },
153
-
154
- delete_hidden_field: function (field_id) {
155
- var i = 0;
156
-
157
- for (i = 0; i < this.form_fields.length; i++) {
158
- if (parseInt(field_id) === parseInt(this.form_fields[i].id)) {
159
- this.delete_field(i);
160
- }
161
- }
162
- },
163
-
164
- is_pro_feature: function (template) {
165
- return (this.field_settings[template] && this.field_settings[template].pro_feature) ? true : false;
166
- },
167
-
168
- is_template_available: function (field) {
169
- var template = field.template;
170
-
171
- if (this.field_settings[template]) {
172
- if (this.is_pro_feature(template)) {
173
- return false;
174
- }
175
-
176
- return true;
177
- }
178
-
179
- // for example see 'mixin_builder_stage' mixin's 'is_taxonomy_template_available' method
180
- if (_.isFunction(this['is_' + template + '_template_available'])) {
181
- return this['is_' + template + '_template_available'].call(this, field);
182
- }
183
-
184
- return false;
185
- },
186
-
187
- is_full_width: function (template) {
188
- if (this.field_settings[template] && this.field_settings[template].is_full_width) {
189
- return true;
190
- }
191
-
192
- return false;
193
- },
194
-
195
- get_field_name: function (template) {
196
- return this.field_settings[template].title;
197
- }
198
- }
199
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/builder-stage/template.php DELETED
@@ -1,75 +0,0 @@
1
- <div id="form-preview-stage">
2
- <h4 v-if="!form_fields.length" class="text-center">
3
- <?php _e( 'Add fields by dragging the fields from the right sidebar to this area.', 'wpuf' ) ?>
4
- </h4>
5
-
6
- <!-- {{ field_settings.label_position }} -->
7
-
8
- <ul :class="['wpuf-form', 'sortable-list', 'form-label-' + label_type]">
9
- <li
10
- v-for="(field, index) in form_fields"
11
- :key="field.id"
12
- :class="[
13
- 'field-items', 'wpuf-el', field.name, field.css, 'form-field-' + field.template,
14
- ('hidden' === field.input_type) ? 'hidden-field' : '',
15
- parseInt(editing_form_id) === parseInt(field.id) ? 'current-editing' : ''
16
- ]"
17
- :data-index="index"
18
- data-source="stage"
19
- >
20
- <div v-if="!is_full_width(field.template)" class="wpuf-label">
21
- <label :for="'wpuf-' + field.name ? field.name : 'cls'">
22
- {{ field.label }} <span v-if="field.required && 'yes' === field.required" class="required">*</span>
23
- </label>
24
- </div>
25
-
26
- <component v-if="is_template_available(field)" :is="'form-' + field.template" :field="field"></component>
27
-
28
- <div v-if="is_pro_feature(field.template)" class="stage-pro-alert">
29
- <label class="wpuf-pro-text-alert">
30
- <a :href="pro_link" target="_blank"><strong>{{ get_field_name(field.template) }}</strong> <?php _e( 'is available in Pro Version', 'wpuf' ); ?></a>
31
- </label>
32
- </div>
33
-
34
- <div v-if="!is_failed_to_validate(field.template)" class="control-buttons">
35
- <p>
36
- <i class="fa fa-arrows move"></i>
37
- <i class="fa fa-pencil" @click="open_field_settings(field.id)"></i>
38
- <i class="fa fa-clone" @click="clone_field(field.id, index)"></i>
39
- <i class="fa fa-trash-o" @click="delete_field(index)"></i>
40
- </p>
41
- </div>
42
- </li>
43
-
44
- <li v-if="!form_fields.length" class="field-items empty-list-item"></li>
45
-
46
- <li class="wpuf-submit">
47
- <div class="wpuf-label">&nbsp;</div>
48
-
49
- <?php do_action( 'wpuf-form-builder-template-builder-stage-submit-area' ); ?>
50
- </li>
51
- </ul><!-- .wpuf-form -->
52
-
53
- <div v-if="hidden_fields.length" class="hidden-field-list">
54
- <h4><?php _e( 'Hidden Fields', 'wpuf' ); ?></h4>
55
-
56
- <ul class="wpuf-form">
57
- <li
58
- v-for="(field, index) in hidden_fields"
59
- :class="['field-items', parseInt(editing_form_id) === parseInt(field.id) ? 'current-editing' : '']"
60
- >
61
- <strong><?php _e('key', 'wpuf'); ?></strong>: {{ field.name }} | <strong><?php _e( 'value', 'wpuf' ); ?></strong>: {{ field.meta_value }}
62
-
63
- <div class="control-buttons">
64
- <p>
65
- <i class="fa fa-pencil" @click="open_field_settings(field.id)"></i>
66
- <i class="fa fa-clone" @click="clone_field(field.id, index)"></i>
67
- <i class="fa fa-trash-o" @click="delete_hidden_field(field.id)"></i>
68
- </p>
69
- </div>
70
- </li>
71
- </ul>
72
- </div>
73
-
74
- <?php do_action( 'wpuf-form-builder-template-builder-stage-bottom-area' ); ?>
75
- </div><!-- #form-preview-stage -->
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-checkbox/index.js DELETED
@@ -1,41 +0,0 @@
1
- Vue.component('field-checkbox', {
2
- template: '#tmpl-wpuf-field-checkbox',
3
-
4
- mixins: [
5
- wpuf_mixins.option_field_mixin
6
- ],
7
-
8
- computed: {
9
- value: {
10
- get: function () {
11
- var value = this.editing_form_field[this.option_field.name];
12
-
13
- if (this.option_field.is_single_opt) {
14
- var option = Object.keys(this.option_field.options)[0];
15
-
16
- if (value === option) {
17
- return true;
18
-
19
- } else {
20
- return false;
21
- }
22
- }
23
-
24
- return this.editing_form_field[this.option_field.name];
25
- },
26
-
27
- set: function (value) {
28
- if (this.option_field.is_single_opt) {
29
- value = value ? Object.keys(this.option_field.options)[0] : '';
30
- }
31
-
32
-
33
- this.$store.commit('update_editing_form_field', {
34
- editing_field_id: this.editing_form_field.id,
35
- field_name: this.option_field.name,
36
- value: value
37
- });
38
- }
39
- }
40
- }
41
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-checkbox/template.php DELETED
@@ -1,12 +0,0 @@
1
- <div v-if="met_dependencies" class="panel-field-opt panel-field-opt-checkbox">
2
- <label v-if="option_field.title" :class="option_field.title_class">
3
- {{ option_field.title }} <help-text v-if="option_field.help_text" :text="option_field.help_text"></help-text>
4
- </label>
5
- <ul :class="[option_field.inline ? 'list-inline' : '']">
6
- <li v-for="(option, key) in option_field.options">
7
- <label>
8
- <input type="checkbox" :value="key" v-model="value"> {{ option }}
9
- </label>
10
- </li>
11
- </ul>
12
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-html_help_text/index.js DELETED
@@ -1,7 +0,0 @@
1
- Vue.component('field-html_help_text', {
2
- template: '#tmpl-wpuf-field-html_help_text',
3
-
4
- mixins: [
5
- wpuf_mixins.option_field_mixin
6
- ],
7
- });
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-html_help_text/template.php DELETED
@@ -1 +0,0 @@
1
- <div class="panel-field-opt panel-field-html-help-text" v-html="option_field.text"></div>
 
admin/form-builder/assets/js/components/field-option-data/index.js DELETED
@@ -1,117 +0,0 @@
1
- /**
2
- * Common settings component for option based fields
3
- * like select, multiselect, checkbox, radio
4
- */
5
- Vue.component('field-option-data', {
6
- template: '#tmpl-wpuf-field-option-data',
7
-
8
- mixins: [
9
- wpuf_mixins.option_field_mixin
10
- ],
11
-
12
- data: function () {
13
- return {
14
- show_value: false,
15
- options: [],
16
- selected: []
17
- };
18
- },
19
-
20
- computed: {
21
- field_options: function () {
22
- return this.editing_form_field.options;
23
- },
24
-
25
- field_selected: function () {
26
- return this.editing_form_field.selected;
27
- }
28
- },
29
-
30
- mounted: function () {
31
- var self = this;
32
-
33
- this.set_options();
34
-
35
- $(this.$el).find('.option-field-option-chooser').sortable({
36
- items: '.option-field-option',
37
- handle: '.sort-handler',
38
- update: function (e, ui) {
39
- var item = ui.item[0],
40
- data = item.dataset,
41
- toIndex = parseInt($(ui.item).index()),
42
- fromIndex = parseInt(data.index);
43
-
44
- self.options.swap(fromIndex, toIndex);
45
- }
46
- });
47
- },
48
-
49
- methods: {
50
- set_options: function () {
51
- var self = this;
52
- var field_options = $.extend(true, {}, this.editing_form_field.options);
53
-
54
- _.each(field_options, function (label, value) {
55
- self.options.push({label: label, value: value, id: self.get_random_id()});
56
- });
57
-
58
- if (this.option_field.is_multiple && !_.isArray(this.field_selected)) {
59
- this.selected = [this.field_selected];
60
- } else {
61
- this.selected = this.field_selected;
62
- }
63
- },
64
-
65
- // in case of select or radio buttons, user should deselect default value
66
- clear_selection: function () {
67
- this.selected = null;
68
- },
69
-
70
- add_option: function () {
71
- var count = this.options.length,
72
- new_opt = this.i18n.option + ' - ' + (count + 1);
73
-
74
- this.options.push({
75
- label: new_opt , value: new_opt, id: this.get_random_id()
76
- });
77
- },
78
-
79
- delete_option: function (index) {
80
- if (this.options.length === 1) {
81
- this.warn({
82
- text: this.i18n.last_choice_warn_msg,
83
- showCancelButton: false,
84
- confirmButtonColor: "#46b450",
85
- });
86
-
87
- return;
88
- }
89
-
90
- this.options.splice(index, 1);
91
- },
92
-
93
- set_option_label: function (index, label) {
94
- this.options[index].value = label.toLocaleLowerCase().replace( /\s/g, '_' );
95
- }
96
- },
97
-
98
- watch: {
99
- options: {
100
- deep: true,
101
- handler: function (new_opts) {
102
- var options = {},
103
- i = 0;
104
-
105
- for (i = 0; i < new_opts.length; i++) {
106
- options[new_opts[i].value] = new_opts[i].label;
107
- }
108
-
109
- this.update_value('options', options);
110
- }
111
- },
112
-
113
- selected: function (new_val) {
114
- this.update_value('selected', new_val);
115
- }
116
- }
117
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-option-data/template.php DELETED
@@ -1,65 +0,0 @@
1
- <div class="panel-field-opt panel-field-opt-text">
2
- <label class="clearfix">
3
- {{ option_field.title }} <help-text v-if="option_field.help_text" :text="option_field.help_text"></help-text>
4
- <span class="pull-right">
5
- <input type="checkbox" v-model="show_value"> <?php _e( 'Show values', 'wpuf' ); ?>
6
- </span>
7
- </label>
8
-
9
- <ul :class="['option-field-option-chooser', show_value ? 'show-value' : '']">
10
- <li class="clearfix margin-0 header">
11
- <div class="selector">&nbsp;</div>
12
-
13
- <div class="sort-handler">&nbsp;</div>
14
-
15
- <div class="label">
16
- <?php _e( 'Label', 'wpuf' ); ?>
17
- </div>
18
-
19
- <div v-if="show_value" class="value">
20
- <?php _e( 'Value', 'wpuf' ) ?>
21
- </div>
22
-
23
- <div class="action-buttons">&nbsp;</div>
24
- </li>
25
- </ul>
26
-
27
- <ul :class="['option-field-option-chooser margin-0', show_value ? 'show-value' : '']">
28
- <li v-for="(option, index) in options" :key="option.id" :data-index="index" class="clearfix option-field-option">
29
- <div class="selector">
30
- <input
31
- v-if="option_field.is_multiple"
32
- type="checkbox"
33
- :value="option.value"
34
- v-model="selected"
35
- >
36
- <input
37
- v-else
38
- type="radio"
39
- :value="option.value"
40
- v-model="selected"
41
- class="option-chooser-radio"
42
- >
43
- </div>
44
-
45
- <div class="sort-handler">
46
- <i class="fa fa-bars"></i>
47
- </div>
48
-
49
- <div class="label">
50
- <input type="text" v-model="option.label" @input="set_option_label(index, option.label)">
51
- </div>
52
-
53
- <div v-if="show_value" class="value">
54
- <input type="text" v-model="option.value">
55
- </div>
56
-
57
- <div class="action-buttons clearfix">
58
- <i class="fa fa-plus-circle" @click="add_option"></i>
59
- <i class="fa fa-minus-circle pull-right" @click="delete_option(index)"></i>
60
- </div>
61
- </li>
62
- </ul>
63
-
64
- <a v-if="!option_field.is_multiple && selected" href="#clear" @click.prevent="clear_selection"><?php _e( 'Clear Selection', 'wpuf' ); ?></a>
65
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-option-pro-feature-alert/index.js DELETED
@@ -1,13 +0,0 @@
1
- Vue.component('field-option-pro-feature-alert', {
2
- template: '#tmpl-wpuf-field-option-pro-feature-alert',
3
-
4
- mixins: [
5
- wpuf_mixins.option_field_mixin
6
- ],
7
-
8
- computed: {
9
- pro_link: function () {
10
- return wpuf_form_builder.pro_link;
11
- }
12
- }
13
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-option-pro-feature-alert/template.php DELETED
@@ -1,6 +0,0 @@
1
- <div class="panel-field-opt panel-field-opt-pro-feature">
2
- <label>{{ option_field.title }}</label><br>
3
- <label class="wpuf-pro-text-alert">
4
- <a :href="pro_link" target="_blank"><?php _e( 'Available in Pro Version', 'wpuf' ); ?></a>
5
- </label>
6
- </div>
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-options/index.js DELETED
@@ -1,68 +0,0 @@
1
- /**
2
- * Sidebar field options panel
3
- */
4
- Vue.component('field-options', {
5
- template: '#tmpl-wpuf-field-options',
6
-
7
- mixins: wpuf_form_builder_mixins(wpuf_mixins.field_options),
8
-
9
- data: function() {
10
- return {
11
- show_basic_settings: true,
12
- show_advanced_settings: false
13
- };
14
- },
15
-
16
- computed: {
17
- editing_field_id: function () {
18
- this.show_basic_settings = true;
19
- this.show_advanced_settings = false;
20
-
21
- return parseInt(this.$store.state.editing_field_id);
22
- },
23
-
24
- editing_form_field: function () {
25
- var self = this;
26
- return _.find(this.$store.state.form_fields, function (item) {
27
- return parseInt(item.id) === parseInt(self.editing_field_id);
28
- });
29
- },
30
-
31
- settings: function() {
32
- var settings = [],
33
- template = this.editing_form_field.template;
34
-
35
- if (_.isFunction(this['settings_' + template])) {
36
- settings = this['settings_' + template].call(this, this.editing_form_field);
37
- } else {
38
- settings = this.$store.state.field_settings[template].settings;
39
- }
40
-
41
- return _.sortBy(settings, function (item) {
42
- return parseInt(item.priority);
43
- });
44
- },
45
-
46
- basic_settings: function () {
47
- return this.settings.filter(function (item) {
48
- return 'basic' === item.section;
49
- });
50
- },
51
-
52
- advanced_settings: function () {
53
- return this.settings.filter(function (item) {
54
- return 'advanced' === item.section;
55
- });
56
- },
57
-
58
- form_field_type_title: function() {
59
- var template = this.editing_form_field.template;
60
-
61
- if (_.isFunction(this['form_field_' + template + '_title'])) {
62
- return this['form_field_' + template + '_title'].call(this, this.editing_form_field);
63
- }
64
-
65
- return this.$store.state.field_settings[template].title;
66
- }
67
- }
68
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-options/template.php DELETED
@@ -1,47 +0,0 @@
1
- <div class="wpuf-form-builder-field-options">
2
- <div v-if="!parseInt(editing_field_id)" class="options-fileds-section text-center">
3
- <p>
4
- <span class="loader"></span>
5
- </p>
6
- </div>
7
-
8
- <div v-else>
9
- <div class="option-fields-section">
10
- <h3 class="section-title clearfix" @click="show_basic_settings = !show_basic_settings">
11
- {{ form_field_type_title }} <i :class="[show_basic_settings ? 'fa fa-angle-down' : 'fa fa-angle-right']"></i>
12
- </h3>
13
-
14
- <transition name="slide-fade">
15
- <div v-show="show_basic_settings" class="option-field-section-fields">
16
- <component
17
- v-for="option_field in basic_settings"
18
- :key="option_field.name"
19
- :is="'field-' + option_field.type"
20
- :option_field="option_field"
21
- :editing_form_field="editing_form_field"
22
- ></component>
23
- </div>
24
- </transition>
25
- </div>
26
-
27
-
28
- <div v-if="advanced_settings.length" class="option-fields-section">
29
- <h3 class="section-title" @click="show_advanced_settings = !show_advanced_settings">
30
- {{ i18n.advanced_options }} <i :class="[show_advanced_settings ? 'fa fa-angle-down' : 'fa fa-angle-right']"></i>
31
- </h3>
32
-
33
- <transition name="slide-fade">
34
- <div v-show="show_advanced_settings" class="option-field-section-fields">
35
- <component
36
- v-for="option_field in advanced_settings"
37
- :key="option_field.name"
38
- :is="'field-' + option_field.type"
39
- :option_field="option_field"
40
- :editing_form_field="editing_form_field"
41
- ></component>
42
- </div>
43
- </transition>
44
- </div>
45
- </div>
46
-
47
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-radio/index.js DELETED
@@ -1,23 +0,0 @@
1
- Vue.component('field-radio', {
2
- template: '#tmpl-wpuf-field-radio',
3
-
4
- mixins: [
5
- wpuf_mixins.option_field_mixin
6
- ],
7
-
8
- computed: {
9
- value: {
10
- get: function () {
11
- return this.editing_form_field[this.option_field.name];
12
- },
13
-
14
- set: function (value) {
15
- this.$store.commit('update_editing_form_field', {
16
- editing_field_id: this.editing_form_field.id,
17
- field_name: this.option_field.name,
18
- value: value
19
- });
20
- }
21
- }
22
- }
23
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-radio/template.php DELETED
@@ -1,13 +0,0 @@
1
- <div class="panel-field-opt panel-field-opt-radio">
2
- <label v-if="option_field.title">
3
- {{ option_field.title }} <help-text v-if="option_field.help_text" :text="option_field.help_text"></help-text>
4
- </label>
5
-
6
- <ul :class="[option_field.inline ? 'list-inline' : '']">
7
- <li v-for="(option, key) in option_field.options">
8
- <label>
9
- <input type="radio" :value="key" v-model="value"> {{ option }}
10
- </label>
11
- </li>
12
- </ul>
13
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-select/index.js DELETED
@@ -1,23 +0,0 @@
1
- Vue.component('field-select', {
2
- template: '#tmpl-wpuf-field-select',
3
-
4
- mixins: [
5
- wpuf_mixins.option_field_mixin
6
- ],
7
-
8
- computed: {
9
- value: {
10
- get: function () {
11
- return this.editing_form_field[this.option_field.name];
12
- },
13
-
14
- set: function (value) {
15
- this.$store.commit('update_editing_form_field', {
16
- editing_field_id: this.editing_form_field.id,
17
- field_name: this.option_field.name,
18
- value: value
19
- });
20
- }
21
- }
22
- }
23
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-select/template.php DELETED
@@ -1,10 +0,0 @@
1
- <div class="panel-field-opt panel-field-opt-select">
2
- <label v-if="option_field.title">
3
- {{ option_field.title }} <help-text v-if="option_field.help_text" :text="option_field.help_text"></help-text>
4
- </label>
5
-
6
- <select class="opt-select-element" v-model="value">
7
- <option value=""><?php _e( 'Select an option', 'wpuf' ); ?></option>
8
- <option v-for="(option, key) in option_field.options" :value="key">{{ option }}</option>
9
- </select>
10
- </div>
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-text-meta/index.js DELETED
@@ -1,40 +0,0 @@
1
- Vue.component('field-text-meta', {
2
- template: '#tmpl-wpuf-field-text-meta',
3
-
4
- mixins: [
5
- wpuf_mixins.option_field_mixin
6
- ],
7
-
8
- computed: {
9
- value: {
10
- get: function () {
11
- return this.editing_form_field[this.option_field.name];
12
- },
13
-
14
- set: function (value) {
15
- this.update_value(this.option_field.name, value);
16
- }
17
- }
18
- },
19
-
20
- created: function () {
21
- if ('yes' === this.editing_form_field.is_meta) {
22
- if (!this.value) {
23
- this.value = this.editing_form_field.label.replace(/\W/g, '_').toLowerCase();
24
- }
25
-
26
- wpuf_form_builder.event_hub.$on('field-text-keyup', this.meta_key_autocomplete);
27
- }
28
- },
29
-
30
- methods: {
31
- meta_key_autocomplete: function (e, label_vm) {
32
- if (
33
- 'label' === label_vm.option_field.name &&
34
- parseInt(this.editing_form_field.id) === parseInt(label_vm.editing_form_field.id)
35
- ) {
36
- this.value = label_vm.value.replace(/\W/g, '_').toLowerCase();
37
- }
38
- }
39
- }
40
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-text-meta/template.php DELETED
@@ -1,9 +0,0 @@
1
- <div class="panel-field-opt panel-field-opt-text panel-field-opt-text-meta">
2
- <label>
3
- {{ option_field.title }} <help-text v-if="option_field.help_text" :text="option_field.help_text"></help-text>
4
- <input
5
- type="text"
6
- v-model="value"
7
- >
8
- </label>
9
- </div>
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-text/index.js DELETED
@@ -1,28 +0,0 @@
1
- Vue.component('field-text', {
2
- template: '#tmpl-wpuf-field-text',
3
-
4
- mixins: [
5
- wpuf_mixins.option_field_mixin
6
- ],
7
-
8
- computed: {
9
- value: {
10
- get: function () {
11
- return this.editing_form_field[this.option_field.name];
12
- },
13
-
14
- set: function (value) {
15
- this.update_value(this.option_field.name, value);
16
- }
17
- }
18
- },
19
-
20
- methods: {
21
- on_focusout: function (e) {
22
- wpuf_form_builder.event_hub.$emit('field-text-focusout', e, this);
23
- },
24
- on_keyup: function (e) {
25
- wpuf_form_builder.event_hub.$emit('field-text-keyup', e, this);
26
- }
27
- }
28
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-text/template.php DELETED
@@ -1,21 +0,0 @@
1
- <div v-if="met_dependencies" class="panel-field-opt panel-field-opt-text">
2
- <label>
3
- {{ option_field.title }} <help-text v-if="option_field.help_text" :text="option_field.help_text"></help-text>
4
-
5
- <input
6
- v-if="option_field.variation && 'number' === option_field.variation"
7
- type="number"
8
- v-model="value"
9
- @focusout="on_focusout"
10
- @keyup="on_keyup"
11
- >
12
-
13
- <input
14
- v-if="!option_field.variation"
15
- type="text"
16
- v-model="value"
17
- @focusout="on_focusout"
18
- @keyup="on_keyup"
19
- >
20
- </label>
21
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-textarea/index.js DELETED
@@ -1,19 +0,0 @@
1
- Vue.component('field-textarea', {
2
- template: '#tmpl-wpuf-field-textarea',
3
-
4
- mixins: [
5
- wpuf_mixins.option_field_mixin
6
- ],
7
-
8
- computed: {
9
- value: {
10
- get: function () {
11
- return this.editing_form_field[this.option_field.name];
12
- },
13
-
14
- set: function (value) {
15
- this.update_value(this.option_field.name, value);
16
- }
17
- }
18
- },
19
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/field-textarea/template.php DELETED
@@ -1,7 +0,0 @@
1
- <div class="panel-field-opt panel-field-opt-textarea">
2
- <label>
3
- {{ option_field.title }} <help-text v-if="option_field.help_text" :text="option_field.help_text"></help-text>
4
-
5
- <textarea :rows="option_field.rows || 5" v-model="value"></textarea>
6
- </label>
7
- </div>
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-checkbox_field/index.js DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Field template: Checkbox
3
- */
4
- Vue.component('form-checkbox_field', {
5
- template: '#tmpl-wpuf-form-checkbox_field',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ]
10
- });
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-checkbox_field/template.php DELETED
@@ -1,16 +0,0 @@
1
- <div class="wpuf-fields">
2
- <ul :class="['wpuf-fields-list', ('yes' === field.inline) ? 'wpuf-list-inline' : '']">
3
- <li v-if="has_options" v-for="(label, val) in field.options">
4
- <label>
5
- <input
6
- type="checkbox"
7
- :value="val"
8
- :checked="is_selected(val)"
9
- :class="class_names('checkbox_btns')"
10
- > {{ label }}
11
- </label>
12
- </li>
13
- </ul>
14
-
15
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
16
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-custom_hidden_field/index.js DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Field template: Hidden
3
- */
4
- Vue.component('form-custom_hidden_field', {
5
- template: '#tmpl-wpuf-form-custom_hidden_field',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ]
10
- });
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-custom_hidden_field/template.php DELETED
@@ -1,10 +0,0 @@
1
- <div class="wpuf-fields">
2
- <input
3
- type="text"
4
- :class="class_names('textfield')"
5
- :placeholder="field.placeholder"
6
- :value="field.default"
7
- :size="field.size"
8
- >
9
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
10
- </div>
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-custom_html/index.js DELETED
@@ -1,16 +0,0 @@
1
- /**
2
- * Field template: Custom HTML
3
- */
4
- Vue.component('form-custom_html', {
5
- template: '#tmpl-wpuf-form-custom_html',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ],
10
-
11
- data: function () {
12
- return {
13
- raw_html: '<p>from data</p>'
14
- };
15
- }
16
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-custom_html/template.php DELETED
@@ -1 +0,0 @@
1
- <div class="wpuf-fields" v-html="field.html"></div>
 
admin/form-builder/assets/js/components/form-dropdown_field/index.js DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Field template: Dropdown/Select
3
- */
4
- Vue.component('form-dropdown_field', {
5
- template: '#tmpl-wpuf-form-dropdown_field',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ]
10
- });
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-dropdown_field/template.php DELETED
@@ -1,16 +0,0 @@
1
- <div class="wpuf-fields">
2
- <select
3
- :class="class_names('select_lbl')"
4
- >
5
- <option v-if="field.first" value="">{{ field.first }}</option>
6
-
7
- <option
8
- v-if="has_options"
9
- v-for="(label, val) in field.options"
10
- :value="label"
11
- :selected="is_selected(label)"
12
- >{{ label }}</option>
13
- </select>
14
-
15
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
16
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-email_address/index.js DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Field template: Email
3
- */
4
- Vue.component('form-email_address', {
5
- template: '#tmpl-wpuf-form-email_address',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ]
10
- });
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-email_address/template.php DELETED
@@ -1,10 +0,0 @@
1
- <div class="wpuf-fields">
2
- <input
3
- type="email"
4
- :class="class_names('email')"
5
- :placeholder="field.placeholder"
6
- :value="field.default"
7
- :size="field.size"
8
- >
9
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
10
- </div>
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-featured_image/index.js DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Field template: Featured Image
3
- */
4
- Vue.component('form-featured_image', {
5
- template: '#tmpl-wpuf-form-featured_image',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ]
10
- });
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-featured_image/template.php DELETED
@@ -1,11 +0,0 @@
1
- <div class="wpuf-fields">
2
- <div :id="'wpuf-img_label-' + field.id + '-upload-container'">
3
- <div class="wpuf-attachment-upload-filelist" data-type="file" data-required="yes">
4
- <a class="button file-selector" href="#">
5
- <?php _e( 'Select Image', 'wpuf' ); ?>
6
- </a>
7
- </div>
8
- </div>
9
-
10
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
11
- </div>
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-fields/index.js DELETED
@@ -1,117 +0,0 @@
1
- /**
2
- * Sidebar form fields panel
3
- */
4
- Vue.component('form-fields', {
5
- template: '#tmpl-wpuf-form-fields',
6
-
7
- mixins: wpuf_form_builder_mixins(wpuf_mixins.form_fields),
8
-
9
- computed: {
10
- panel_sections: function () {
11
- return this.$store.state.panel_sections;
12
- },
13
-
14
- field_settings: function () {
15
- return this.$store.state.field_settings;
16
- },
17
-
18
- form_fields: function () {
19
- return this.$store.state.form_fields;
20
- }
21
- },
22
-
23
- mounted: function () {
24
- // bind jquery ui draggable
25
- $(this.$el).find('.panel-form-field-buttons .button').draggable({
26
- connectToSortable: '#form-preview-stage .wpuf-form',
27
- helper: 'clone',
28
- revert: 'invalid',
29
- cancel: '.button-faded',
30
- }).disableSelection();
31
- },
32
-
33
- methods: {
34
- panel_toggle: function (index) {
35
- this.$store.commit('panel_toggle', index);
36
- },
37
-
38
- add_form_field: function (field_template) {
39
- var payload = {
40
- toIndex: this.$store.state.form_fields.length,
41
- };
42
-
43
- // check if these are already inserted
44
- if ( this.isSingleInstance( field_template ) && this.containsField( field_template ) ) {
45
- swal({
46
- title: "Oops...",
47
- text: "You already have this field in the form"
48
- });
49
- return;
50
- }
51
-
52
- var field = $.extend(true, {}, this.$store.state.field_settings[field_template].field_props);
53
-
54
- field.id = this.get_random_id();
55
-
56
- if (!field.name && field.label) {
57
- field.name = field.label.replace(/\W/g, '_').toLowerCase();
58
-
59
- var same_template_fields = this.form_fields.filter(function (form_field) {
60
- return (form_field.template === field.template);
61
- });
62
-
63
- if (same_template_fields.length) {
64
- field.name += '_' + same_template_fields.length;
65
- }
66
- }
67
-
68
- payload.field = field;
69
-
70
- // add new form element
71
- this.$store.commit('add_form_field_element', payload);
72
- },
73
-
74
- is_pro_feature: function (field) {
75
- return this.field_settings[field].pro_feature;
76
- },
77
-
78
- alert_pro_feature: function (field) {
79
- var title = this.field_settings[field].title;
80
-
81
- swal({
82
- title: '<i class="fa fa-lock"></i> ' + title + ' <br>' + this.i18n.is_a_pro_feature,
83
- text: this.i18n.pro_feature_msg,
84
- type: '',
85
- html: true,
86
- showCancelButton: true,
87
- cancelButtonText: this.i18n.close,
88
- confirmButtonColor: '#46b450',
89
- confirmButtonText: this.i18n.upgrade_to_pro
90
- }, function (is_confirm) {
91
- if (is_confirm) {
92
- window.open(wpuf_form_builder.pro_link, '_blank');
93
- }
94
- });
95
- },
96
-
97
- alert_invalidate_msg: function (field) {
98
- var validator = this.field_settings[field].validator;
99
-
100
- if (validator && validator.msg) {
101
- this.warn({
102
- title: validator.msg_title || '',
103
- text: validator.msg,
104
- html: true,
105
- type: 'warning',
106
- showCancelButton: false,
107
- confirmButtonColor: '#46b450',
108
- confirmButtonText: this.i18n.ok
109
- });
110
- }
111
- },
112
-
113
- get_invalidate_btn_class: function (field) {
114
- return this.field_settings[field].validator.button_class;
115
- }
116
- }
117
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-fields/template.php DELETED
@@ -1,49 +0,0 @@
1
- <div class="wpuf-form-builder-form-fields">
2
- <template v-for="(section, index) in panel_sections">
3
- <div v-if="section.fields.length" class="panel-form-field-group clearfix">
4
- <h3 class="clearfix" @click="panel_toggle(index)">
5
- {{ section.title }} <i :class="[section.show ? 'fa fa-angle-down' : 'fa fa-angle-right']"></i>
6
- </h3>
7
-
8
- <transition name="slide-fade">
9
- <ul
10
- v-show="section.show"
11
- class="panel-form-field-buttons clearfix"
12
- :id="'panel-form-field-buttons-' + section.id"
13
- >
14
- <template v-for="field in section.fields">
15
- <li
16
- v-if="is_pro_feature(field)"
17
- class="button button-faded"
18
- :data-form-field="field"
19
- data-source="panel"
20
- @click="alert_pro_feature(field)"
21
- >
22
- <i v-if="field_settings[field].icon" :class="['fa fa-' + field_settings[field].icon]" aria-hidden="true"></i> {{ field_settings[field].title }}
23
- </li>
24
-
25
- <li
26
- v-if="is_failed_to_validate(field)"
27
- :class="['button', get_invalidate_btn_class(field)]"
28
- :data-form-field="field"
29
- data-source="panel"
30
- @click="alert_invalidate_msg(field)"
31
- >
32
- <i v-if="field_settings[field].icon" :class="['fa fa-' + field_settings[field].icon]" aria-hidden="true"></i> {{ field_settings[field].title }}
33
- </li>
34
-
35
- <li
36
- v-if="!is_pro_feature(field) && !is_failed_to_validate(field)"
37
- class="button"
38
- :data-form-field="field"
39
- data-source="panel"
40
- @click="add_form_field(field)"
41
- >
42
- <i v-if="field_settings[field].icon" :class="['fa fa-' + field_settings[field].icon]" aria-hidden="true"></i> {{ field_settings[field].title }}
43
- </li>
44
- </template>
45
- </ul>
46
- </transition>
47
- </div>
48
- </template>
49
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-image_upload/index.js DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Field template: Image Upload
3
- */
4
- Vue.component('form-image_upload', {
5
- template: '#tmpl-wpuf-form-image_upload',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ]
10
- });
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-image_upload/template.php DELETED
@@ -1,11 +0,0 @@
1
- <div class="wpuf-fields">
2
- <div :id="'wpuf-img_label-' + field.id + '-upload-container'">
3
- <div class="wpuf-attachment-upload-filelist" data-type="file" data-required="yes">
4
- <a class="button file-selector wpuf_img_label_148" href="#">
5
- <?php _e( 'Select Image', 'wpuf' ); ?>
6
- </a>
7
- </div>
8
- </div>
9
-
10
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
11
- </div>
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-multiple_select/index.js DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Field template: Multi-Select
3
- */
4
- Vue.component('form-multiple_select', {
5
- template: '#tmpl-wpuf-form-multiple_select',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ]
10
- });
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-multiple_select/template.php DELETED
@@ -1,17 +0,0 @@
1
- <div class="wpuf-fields">
2
- <select
3
- :class="class_names('multi_label')"
4
- multiple
5
- >
6
- <option v-if="field.first" value="">{{ field.first }}</option>
7
-
8
- <option
9
- v-if="has_options"
10
- v-for="(label, val) in field.options"
11
- :value="label"
12
- :selected="is_selected(label)"
13
- >{{ label }}</option>
14
- </select>
15
-
16
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
17
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-post_content/index.js DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Field Template: Post Content
3
- */
4
- Vue.component('form-post_content', {
5
- template: '#tmpl-wpuf-form-post_content',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ]
10
- });
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-post_content/template.php DELETED
@@ -1,20 +0,0 @@
1
- <div class="wpuf-fields">
2
- <div class="wp-media-buttons" v-if="field.insert_image == 'yes'">
3
- <button type="button" class="button insert-media add_media" data-editor="content">
4
- <span class="dashicons dashicons-admin-media insert-photo-icon"></span> <?php _e( 'Insert Photo', 'wpuf' ); ?>
5
- </button>
6
- </div>
7
- <br v-if="field.insert_image == 'yes'" />
8
-
9
- <textarea
10
- v-if="'no' === field.rich"
11
- :class="class_names('textareafield')"
12
- :placeholder="field.placeholder"
13
- :rows="field.rows"
14
- :cols="field.cols"
15
- >{{ field.default }}</textarea>
16
-
17
- <text-editor v-if="'no' !== field.rich" :rich="field.rich"></text-editor>
18
-
19
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
20
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-post_excerpt/index.js DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Field Template: Post Excerpt
3
- */
4
- Vue.component('form-post_excerpt', {
5
- template: '#tmpl-wpuf-form-post_excerpt',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ]
10
- });
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-post_excerpt/template.php DELETED
@@ -1,9 +0,0 @@
1
- <div class="wpuf-fields">
2
- <textarea
3
- :class="class_names('textareafield')"
4
- :placeholder="field.placeholder"
5
- :rows="field.rows"
6
- :cols="field.cols"
7
- >{{ field.default }}</textarea>
8
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
9
- </div>
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-post_tags/index.js DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Field template: post_tags
3
- */
4
- Vue.component('form-post_tags', {
5
- template: '#tmpl-wpuf-form-post_tags',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ]
10
- });
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-post_tags/template.php DELETED
@@ -1,11 +0,0 @@
1
- <div class="wpuf-fields">
2
- <input
3
- type="text"
4
- :class="class_names('textfield')"
5
- :placeholder="field.placeholder"
6
- :value="field.default"
7
- :size="field.size"
8
- >
9
-
10
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
11
- </div>
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-post_title/index.js DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Field template: Post Title
3
- */
4
- Vue.component('form-post_title', {
5
- template: '#tmpl-wpuf-form-post_title',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ]
10
- });
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-post_title/template.php DELETED
@@ -1,10 +0,0 @@
1
- <div class="wpuf-fields">
2
- <input
3
- type="text"
4
- :class="class_names('textfield')"
5
- :placeholder="field.placeholder"
6
- :value="field.default"
7
- :size="field.size"
8
- >
9
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
10
- </div>
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-radio_field/index.js DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Field template: Radio
3
- */
4
- Vue.component('form-radio_field', {
5
- template: '#tmpl-wpuf-form-radio_field',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ]
10
- });
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-radio_field/template.php DELETED
@@ -1,16 +0,0 @@
1
- <div class="wpuf-fields">
2
- <ul :class="['wpuf-fields-list', ('yes' === field.inline) ? 'wpuf-list-inline' : '']">
3
- <li v-if="has_options" v-for="(label, val) in field.options">
4
- <label>
5
- <input
6
- type="radio"
7
- :value="val"
8
- :checked="is_selected(val)"
9
- :class="class_names('radio_btns')"
10
- > {{ label }}
11
- </label>
12
- </li>
13
- </ul>
14
-
15
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
16
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-section_break/index.js DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Field template: Section Break
3
- */
4
- Vue.component('form-section_break', {
5
- template: '#tmpl-wpuf-form-section_break',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ]
10
- });
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-section_break/template.php DELETED
@@ -1,4 +0,0 @@
1
- <div class="wpuf-section-wrap">
2
- <h2 class="wpuf-section-title">{{ field.label }}</h2>
3
- <div class="wpuf-section-details">{{ field.description }}</div>
4
- </div>
 
 
 
 
admin/form-builder/assets/js/components/form-taxonomy/index.js DELETED
@@ -1,163 +0,0 @@
1
- /**
2
- * Field template: taxonomy
3
- */
4
- Vue.component('form-taxonomy', {
5
- template: '#tmpl-wpuf-form-taxonomy',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ],
10
-
11
- computed: {
12
- terms: function () {
13
- var i;
14
-
15
- for (i in wpuf_form_builder.wp_post_types) {
16
- var taxonomies = wpuf_form_builder.wp_post_types[i];
17
-
18
- if (taxonomies.hasOwnProperty(this.field.name)) {
19
- var tax_field = taxonomies[this.field.name];
20
-
21
- if (tax_field.terms) {
22
- return tax_field.terms;
23
- }
24
- }
25
- }
26
-
27
- return [];
28
- },
29
-
30
- sorted_terms: function () {
31
- var self = this;
32
- var terms = $.extend(true, [], this.terms);
33
-
34
- // selection type and terms
35
- if (this.field.exclude_type && this.field.exclude) {
36
- var filter_ids = this.field.exclude.split(',').map(function (id) {
37
- id = id.trim();
38
- id = parseInt(id);
39
- return id;
40
- }).filter(function (id) {
41
- return isFinite(id);
42
- });
43
-
44
- terms = terms.filter(function (term) {
45
-
46
- switch(self.field.exclude_type) {
47
- case 'exclude':
48
- return _.indexOf(filter_ids, term.term_id) < 0;
49
-
50
- case 'include':
51
- return _.indexOf(filter_ids, term.term_id) >= 0;
52
-
53
- case 'child_of':
54
- return _.indexOf(filter_ids, parseInt(term.parent)) >= 0;
55
- }
56
- });
57
- }
58
-
59
- // order
60
- terms = _.sortBy(terms, function (term) {
61
- return term[self.field.orderby];
62
- });
63
-
64
- if ('DESC' === this.field.order) {
65
- terms = terms.reverse();
66
- }
67
-
68
- var parent_terms = terms.filter(function (term) {
69
- return !term.parent;
70
- });
71
-
72
- parent_terms.map(function (parent) {
73
- parent.children = self.get_child_terms(parent.term_id, terms);
74
- });
75
-
76
- return parent_terms.length ? parent_terms : terms;
77
- }
78
- },
79
-
80
- methods: {
81
- get_child_terms: function (parent_id, terms) {
82
- var self = this;
83
-
84
- var child_terms = terms.filter(function (term) {
85
- return parseInt(term.parent) === parseInt(parent_id);
86
- });
87
-
88
- child_terms.map(function (child) {
89
- child.children = self.get_child_terms(child.term_id, terms);
90
- });
91
-
92
- return child_terms;
93
- },
94
-
95
- get_term_dropdown_options: function () {
96
- var self = this,
97
- options = '';
98
-
99
- _.each(self.sorted_terms, function (term) {
100
- options += self.get_term_dropdown_options_children(term, 0);
101
- });
102
-
103
- return options;
104
- },
105
-
106
- get_term_dropdown_options_children: function (term, level) {
107
- var self = this,
108
- option = '';
109
-
110
- var indent = '',
111
- i = 0;
112
-
113
- for (i = 0; i < level; i++) {
114
- indent += '&nbsp;&nbsp;';
115
- }
116
-
117
- option += '<option value="' + term.id + '">' + indent + term.name + '</option>';
118
-
119
- if (term.children.length) {
120
- _.each(term.children, function (child_term) {
121
- option += self.get_term_dropdown_options_children(child_term, (level + 1));
122
- });
123
- }
124
-
125
- return option;
126
- },
127
-
128
- get_term_checklist: function () {
129
- var self = this,
130
- checklist = '';
131
-
132
-
133
- checklist += '<ul class="wpuf-category-checklist">';
134
-
135
- _.each(this.sorted_terms, function (term) {
136
- checklist += self.get_term_checklist_li(term);
137
- });
138
-
139
- checklist += '</ul>';
140
-
141
- return checklist;
142
- },
143
-
144
- get_term_checklist_li: function (term) {
145
- var self = this,
146
- li = '';
147
-
148
- li += '<li><label class="selectit"><input type="checkbox"> ' + term.name + '</label></li>';
149
-
150
- if (term.children.length) {
151
- li += '<ul class="children">';
152
-
153
- _.each(term.children, function (child_term) {
154
- li += self.get_term_checklist_li(child_term);
155
- });
156
-
157
- li += '</ul>';
158
- }
159
-
160
- return li;
161
- }
162
- }
163
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-taxonomy/template.php DELETED
@@ -1,41 +0,0 @@
1
- <div class="wpuf-fields">
2
- <select
3
- v-if="'select' === field.type"
4
- :class="field.name"
5
- v-html="get_term_dropdown_options()"
6
- >
7
- </select>
8
-
9
- <div v-if="'ajax' === field.type" class="category-wrap">
10
- <div>
11
- <select>
12
- <option><?php _e( '— Select —', 'wpuf' ); ?></option>
13
- <option v-for="term in sorted_terms" :value="term.id">{{ term.name }}</option>
14
- </select>
15
- </div>
16
- </div>
17
-
18
- <div v-if="'multiselect' === field.type" class="category-wrap">
19
- <select
20
- :class="field.name"
21
- v-html="get_term_dropdown_options()"
22
- multiple
23
- >
24
- </select>
25
- </div>
26
-
27
- <div v-if="'checkbox' === field.type" class="category-wrap">
28
- <div v-html="get_term_checklist()"></div>
29
- </div>
30
-
31
- <input
32
- v-if="'text' === field.type"
33
- class="textfield"
34
- type="text"
35
- value=""
36
- size="40"
37
- autocomplete="off"
38
- >
39
-
40
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
41
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-text_field/index.js DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Field template: Text
3
- */
4
- Vue.component('form-text_field', {
5
- template: '#tmpl-wpuf-form-text_field',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ]
10
- });
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-text_field/template.php DELETED
@@ -1,10 +0,0 @@
1
- <div class="wpuf-fields">
2
- <input
3
- type="text"
4
- :class="class_names('textfield')"
5
- :placeholder="field.placeholder"
6
- :value="field.default"
7
- :size="field.size"
8
- >
9
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
10
- </div>
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-textarea_field/index.js DELETED
@@ -1,7 +0,0 @@
1
- Vue.component('form-textarea_field', {
2
- template: '#tmpl-wpuf-form-textarea_field',
3
-
4
- mixins: [
5
- wpuf_mixins.form_field_mixin
6
- ]
7
- });
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-textarea_field/template.php DELETED
@@ -1,13 +0,0 @@
1
- <div class="wpuf-fields">
2
- <textarea
3
- v-if="'no' === field.rich"
4
- :class="class_names('textareafield')"
5
- :placeholder="field.placeholder"
6
- :rows="field.rows"
7
- :cols="field.cols"
8
- >{{ field.default }}</textarea>
9
-
10
- <text-editor v-if="'no' !== field.rich" :rich="field.rich"></text-editor>
11
-
12
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
13
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-website_url/index.js DELETED
@@ -1,10 +0,0 @@
1
- /**
2
- * Field template: Website URL
3
- */
4
- Vue.component('form-website_url', {
5
- template: '#tmpl-wpuf-form-website_url',
6
-
7
- mixins: [
8
- wpuf_mixins.form_field_mixin
9
- ]
10
- });
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/form-website_url/template.php DELETED
@@ -1,10 +0,0 @@
1
- <div class="wpuf-fields">
2
- <input
3
- type="url"
4
- :class="class_names('url')"
5
- :placeholder="field.placeholder"
6
- :value="field.default"
7
- :size="field.size"
8
- >
9
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
10
- </div>
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/help-text/index.js DELETED
@@ -1,14 +0,0 @@
1
- Vue.component('help-text', {
2
- template: '#tmpl-wpuf-help-text',
3
-
4
- props: {
5
- text: {
6
- type: String,
7
- default: ''
8
- }
9
- },
10
-
11
- mounted: function () {
12
- $(".wpuf-tooltip").tooltip();
13
- }
14
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/help-text/template.php DELETED
@@ -1 +0,0 @@
1
- <i class="fa fa-question-circle field-helper-text wpuf-tooltip" data-placement="top" :title="text"></i>
 
admin/form-builder/assets/js/components/merge-tags/index.js DELETED
@@ -1,55 +0,0 @@
1
- Vue.component('wpuf-merge-tags', {
2
- template: '#tmpl-wpuf-merge-tags',
3
- props: {
4
- field: String,
5
- filter: {
6
- type: String,
7
- default: null
8
- }
9
- },
10
-
11
- data: function() {
12
- return {
13
- showing: false,
14
- type: null,
15
- };
16
- },
17
-
18
- mounted: function() {
19
-
20
- // hide if clicked outside
21
- $('body').on('click', function(event) {
22
- if ( !$(event.target).closest('.wpuf-merge-tag-wrap').length) {
23
- $(".wpuf-merge-tags").hide();
24
- }
25
- });
26
- },
27
-
28
- computed: {
29
- form_fields: function () {
30
- var template = this.filter,
31
- fields = this.$store.state.form_fields;
32
-
33
- if (template !== null) {
34
- return fields.filter(function(item) {
35
- return item.template === template;
36
- });
37
- }
38
-
39
- // remove the action/hidden fields
40
- return fields.filter(function(item) {
41
- return !_.contains( [ 'action_hook', 'custom_hidden_field'], item.template );
42
- });
43
- },
44
- },
45
-
46
- methods: {
47
- toggleFields: function(event) {
48
- $(event.target).parent().siblings('.wpuf-merge-tags').toggle('fast');
49
- },
50
-
51
- insertField: function(type, field) {
52
- this.$emit('insert', type, field, this.field);
53
- }
54
- }
55
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/merge-tags/template.php DELETED
@@ -1,45 +0,0 @@
1
- <div class="wpuf-merge-tag-wrap">
2
- <a href="#" v-on:click.prevent="toggleFields($event)" class="merge-tag-link" title="<?php echo esc_attr( 'Click to toggle merge tags', 'wpuf' ); ?>"><span class="dashicons dashicons-editor-code"></span></a>
3
-
4
- <!-- <pre>{{ form_fields.length }}</pre> -->
5
-
6
- <div class="wpuf-merge-tags">
7
- <div class="merge-tag-section">
8
- <div class="merge-tag-head"><?php _e( 'Form Fields', 'wpuf' ); ?></div>
9
-
10
- <ul>
11
- <template v-if="form_fields.length">
12
- <li v-for="field in form_fields">
13
- <a href="#" v-on:click.prevent="insertField('field', field.name);">{{ field.label }}</a>
14
- </li>
15
- </template>
16
- <li v-else><?php _e( 'No fields available', 'wpuf' ); ?></li>
17
- </ul>
18
- </div><!-- .merge-tag-section -->
19
-
20
- <?php
21
- if ( function_exists( 'wpuf_cf_get_merge_tags' ) ) {
22
-
23
- $merge_tags = wpuf_cf_get_merge_tags();
24
-
25
- foreach ($merge_tags as $section_key => $section) {
26
- ?>
27
-
28
- <div class="merge-tag-section">
29
- <div class="merge-tag-head"><?php echo $section['title'] ?></div>
30
-
31
- <ul>
32
- <?php foreach ($section['tags'] as $key => $value) { ?>
33
- <li>
34
- <a href="#" v-on:click.prevent="insertField('<?php echo $key; ?>');"><?php echo $value; ?></a>
35
- </li>
36
- <?php } ?>
37
- </ul>
38
- </div><!-- .merge-tag-section -->
39
-
40
- <?php
41
- }
42
- }
43
- ?>
44
- </div><!-- .merge-tags -->
45
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/text-editor/editor.less DELETED
@@ -1,63 +0,0 @@
1
- * {
2
- box-sizing: border-box;
3
- }
4
-
5
- body {
6
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
7
- font-size: 14px;
8
- line-height: 1.42857143;
9
- color: #333;
10
- background-color: #fff;
11
- -ms-word-wrap: break-word;
12
- word-wrap: break-word;
13
-
14
- &[contenteditable="false"] {
15
- opacity: .4;
16
- pointer-events: none;
17
- cursor: not-allowed;
18
- }
19
- }
20
-
21
-
22
- // TYPOGRAPHY
23
- h1, h2, h3, h4, h5, h6 {
24
- font-family: inherit;
25
- font-weight: normal;
26
- line-height: 1.1;
27
- color: inherit;
28
- padding: 0;
29
- }
30
-
31
- h1, h2, h3 {
32
- margin: 0 0 10px;
33
- }
34
-
35
- h1 {
36
- font-size: 36px;
37
- }
38
-
39
- h2 {
40
- font-size: 30px;
41
- }
42
-
43
- h3 {
44
- font-size: 24px;
45
- }
46
-
47
- h4 {
48
- font-size: 18px;
49
- }
50
-
51
- h5 {
52
- font-size: 14px;
53
- }
54
-
55
- h6 {
56
- font-size: 12px;
57
- }
58
-
59
- p {
60
- margin: 0 0 10px;
61
- font-size: inherit;
62
- line-height: inherit;
63
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/text-editor/index.js DELETED
@@ -1,15 +0,0 @@
1
- Vue.component('text-editor', {
2
- template: '#tmpl-wpuf-text-editor',
3
-
4
- props: ['rich'],
5
-
6
- computed: {
7
- site_url: function () {
8
- return wpuf_form_builder.site_url;
9
- },
10
-
11
- is_full: function () {
12
- return 'yes' === this.rich;
13
- }
14
- }
15
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/text-editor/style.less DELETED
@@ -1,53 +0,0 @@
1
- .mce-toolbar {
2
- .mce-btn button {
3
- padding: 2px;
4
- }
5
-
6
- .mce-ico {
7
- font-size: 18px;
8
- }
9
- }
10
-
11
- div.wp-link-input {
12
- max-width: 130px;
13
-
14
- input {
15
- width: 100%;
16
- }
17
- }
18
-
19
- div.wp-link-preview {
20
- max-width: 130px;
21
- }
22
-
23
- .mce-i-shortcode {
24
- background-image: url(../images/shortcode.png) !important;
25
-
26
- & + .mce-caret {
27
- display: none;
28
- }
29
- }
30
-
31
- .mce-menu-item.mce-menu-section-title {
32
- cursor: default;
33
- border-top: 1px solid #ccc;
34
-
35
- &:first-child {
36
- border-top: none;
37
- }
38
-
39
- &:hover {
40
- background-color: none;
41
- }
42
-
43
- span {
44
- font-weight: bold;
45
- }
46
- }
47
-
48
- // reset color cross button
49
- .mce-grid-cell.mce-colorbtn-trans {
50
- div[title="No color"] {
51
- line-height: .5;
52
- }
53
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/components/text-editor/template.php DELETED
@@ -1,70 +0,0 @@
1
- <div class="wpuf-text-editor">
2
-
3
- <div class="wp-core-ui wp-editor-wrap tmce-active">
4
- <link rel="stylesheet" :href="site_url + 'wp-includes/css/editor.css'" type="text/css" media="all">
5
- <link rel="stylesheet" :href="site_url + 'wp-includes/js/tinymce/skins/lightgray/skin.min.css'" type="text/css" media="all">
6
-
7
- <div class="wp-editor-container">
8
- <div class="mce-tinymce mce-container mce-panel" style="visibility: hidden; border-width: 1px;">
9
- <div class="mce-container-body mce-stack-layout">
10
- <div class="mce-toolbar-grp mce-container mce-panel mce-stack-layout-item">
11
- <div class="mce-container-body mce-stack-layout">
12
- <div class="mce-container mce-toolbar mce-stack-layout-item">
13
- <div class="mce-container-body mce-flow-layout">
14
- <div class="mce-container mce-flow-layout-item mce-btn-group">
15
- <div>
16
- <div v-if="is_full" class="mce-widget mce-btn mce-menubtn mce-fixed-width mce-listbox mce-btn-has-text"><button type="button"><span class="mce-txt">Paragraph</span> <i class="mce-caret"></i></button></div>
17
- <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-bold"></i></button></div>
18
- <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-italic"></i></button></div>
19
- <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-bullist"></i></button></div>
20
- <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-numlist"></i></button></div>
21
- <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-blockquote"></i></button></div>
22
- <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-alignleft"></i></button></div>
23
- <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-aligncenter"></i></button></div>
24
- <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-alignright"></i></button></div>
25
- <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-link"></i></button></div>
26
- <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-unlink"></i></button></div>
27
- <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-wp_more"></i></button></div>
28
- <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-fullscreen"></i></button></div>
29
- <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-wp_adv"></i></button></div>
30
- </div>
31
- </div>
32
- </div>
33
- </div>
34
- <div class="mce-container mce-toolbar mce-stack-layout-item">
35
- <div class="mce-container-body mce-flow-layout">
36
- <div class="mce-container mce-flow-layout-item mce-btn-group">
37
- <div>
38
- <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-strikethrough"></i></button></div>
39
- <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-hr"></i></button></div>
40
- <div v-if="is_full" class="mce-widget mce-btn mce-colorbutton"><button type="button"><i class="mce-ico mce-i-forecolor"></i><span class="mce-preview"></span></button><button type="button" class="mce-open"> <i class="mce-caret"></i></button></div>
41
- <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-pastetext"></i></button></div>
42
- <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-removeformat"></i></button></div>
43
- <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-charmap"></i></button></div>
44
- <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-outdent"></i></button></div>
45
- <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-indent"></i></button></div>
46
- <div class="mce-widget mce-btn mce-disabled"><button type="button"><i class="mce-ico mce-i-undo"></i></button></div>
47
- <div class="mce-widget mce-btn mce-disabled"><button type="button"><i class="mce-ico mce-i-redo"></i></button></div>
48
- <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-wp_help"></i></button></div>
49
- </div>
50
- </div>
51
- </div>
52
- </div>
53
- </div>
54
- </div>
55
- <div class="mce-edit-area mce-container mce-panel mce-stack-layout-item" style="border-width: 1px 0px 0px;">
56
- <div style="width: 100%; height: 150px; display: block;"></div><!-- iframe replacement div -->
57
- </div>
58
- <div class="mce-statusbar mce-container mce-panel mce-stack-layout-item" style="border-width: 1px 0px 0px;">
59
- <div class="mce-container-body mce-flow-layout">
60
- <div class="mce-path mce-flow-layout-item">
61
- <div class="mce-path-item" data-index="0" aria-level="0">p</div>
62
- </div>
63
- <div class="mce-flow-layout-item mce-resizehandle"><i class="mce-ico mce-i-resize"></i></div>
64
- </div>
65
- </div>
66
- </div>
67
- </div>
68
- </div>
69
- </div>
70
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/form-builder-assets.js DELETED
@@ -1,46 +0,0 @@
1
- /**
2
- * Returns file paths of vue assets
3
- */
4
-
5
- /* global module, require */
6
- function assets() {
7
- 'use strict';
8
-
9
- const grunt = require('grunt');
10
- const fs = require('fs');
11
- let paths = {
12
- mixins: ['admin/form-builder/assets/js/jquery-siaf-start.js'],
13
- components: ['admin/form-builder/assets/js/jquery-siaf-start.js']
14
- };
15
-
16
- // mixins
17
- const mixinsPath = './admin/form-builder/assets/js/mixins/';
18
- let mixins = fs.readdirSync(mixinsPath);
19
-
20
- mixins.forEach((mixin) => {
21
- const path = `${mixinsPath}${mixin}`;
22
-
23
- if (grunt.file.isFile(path)) {
24
- paths.mixins.push(path);
25
- }
26
- });
27
-
28
- // components
29
- const componentPath = './admin/form-builder/assets/js/components/';
30
- let components = fs.readdirSync(componentPath);
31
-
32
- components.forEach((component) => {
33
- const path = `${componentPath}${component}`;
34
-
35
- if (grunt.file.isDir(path)) {
36
- paths.components.push(path + '/index.js');
37
- }
38
- });
39
-
40
- paths.mixins.push('admin/form-builder/assets/js/jquery-siaf-end.js');
41
- paths.components.push('admin/form-builder/assets/js/jquery-siaf-end.js');
42
-
43
- return paths;
44
- }
45
-
46
- module.exports = assets();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/form-builder.js DELETED
@@ -1,458 +0,0 @@
1
- ;(function($) {
2
- 'use strict';
3
-
4
- /**
5
- * Only proceed if current page is a form builder page
6
- */
7
- if (!$('#wpuf-form-builder').length) {
8
- return;
9
- }
10
-
11
- if (!Array.prototype.hasOwnProperty('swap')) {
12
- Array.prototype.swap = function (from, to) {
13
- this.splice(to, 0, this.splice(from, 1)[0]);
14
- };
15
- }
16
-
17
- // check if an element is visible in browser viewport
18
- function is_element_in_viewport (el) {
19
- if (typeof jQuery === "function" && el instanceof jQuery) {
20
- el = el[0];
21
- }
22
-
23
- var rect = el.getBoundingClientRect();
24
-
25
- return (
26
- rect.top >= 0 &&
27
- rect.left >= 0 &&
28
- rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) && /*or $(window).height() */
29
- rect.right <= (window.innerWidth || document.documentElement.clientWidth) /*or $(window).width() */
30
- );
31
- }
32
-
33
- /**
34
- * Vuex Store data
35
- */
36
- var wpuf_form_builder_store = new Vuex.Store({
37
- state: {
38
- post: wpuf_form_builder.post,
39
- form_fields: wpuf_form_builder.form_fields,
40
- panel_sections: wpuf_form_builder.panel_sections,
41
- field_settings: wpuf_form_builder.field_settings,
42
- notifications: wpuf_form_builder.notifications,
43
- current_panel: 'form-fields',
44
- editing_field_id: 0, // editing form field id
45
- },
46
-
47
- mutations: {
48
- set_form_fields: function (state, form_fields) {
49
- Vue.set(state, 'form_fields', form_fields);
50
- },
51
-
52
- // set the current panel
53
- set_current_panel: function (state, panel) {
54
- if ('field-options' !== state.current_panel &&
55
- 'field-options' === panel &&
56
- state.form_fields.length
57
- ) {
58
- state.editing_field_id = state.form_fields[0].id;
59
- }
60
-
61
- state.current_panel = panel;
62
-
63
- // reset editing field id
64
- if ('form-fields' === panel) {
65
- state.editing_field_id = 0;
66
- }
67
- },
68
-
69
- // add show property to every panel section
70
- panel_add_show_prop: function (state) {
71
- state.panel_sections.map(function (section, index) {
72
- if (!section.hasOwnProperty('show')) {
73
- Vue.set(state.panel_sections[index], 'show', true);
74
- }
75
- });
76
- },
77
-
78
- // toggle panel sections
79
- panel_toggle: function (state, index) {
80
- state.panel_sections[index].show = !state.panel_sections[index].show;
81
- },
82
-
83
- // open field settings panel
84
- open_field_settings: function (state, field_id) {
85
- var field = state.form_fields.filter(function(item) {
86
- return parseInt(field_id) === parseInt(item.id);
87
- });
88
-
89
- if ('field-options' === state.current_panel && field[0].id === state.editing_field_id) {
90
- return;
91
- }
92
-
93
- if (field.length) {
94
- state.editing_field_id = 0;
95
- state.current_panel = 'field-options';
96
-
97
- setTimeout(function () {
98
- state.editing_field_id = field[0].id;
99
- }, 400);
100
- }
101
- },
102
-
103
- update_editing_form_field: function (state, payload) {
104
- var editing_field = _.find(state.form_fields, function (item) {
105
- return parseInt(item.id) === parseInt(payload.editing_field_id);
106
- });
107
-
108
- editing_field[payload.field_name] = payload.value;
109
- },
110
-
111
- // add new form field element
112
- add_form_field_element: function (state, payload) {
113
- state.form_fields.splice(payload.toIndex, 0, payload.field);
114
-
115
- // bring newly added element into viewport
116
- Vue.nextTick(function () {
117
- var el = $('#form-preview-stage .wpuf-form .field-items').eq(payload.toIndex);
118
-
119
- if (el && !is_element_in_viewport(el.get(0))) {
120
- $('#builder-stage section').scrollTo(el, 800, {offset: -50});
121
- }
122
- });
123
- },
124
-
125
- // sorting inside stage
126
- swap_form_field_elements: function (state, payload) {
127
- state.form_fields.swap(payload.fromIndex, payload.toIndex);
128
- },
129
-
130
- clone_form_field_element: function (state, payload) {
131
- var field = _.find(state.form_fields, function (item) {
132
- return parseInt(item.id) === parseInt(payload.field_id);
133
- });
134
-
135
- var clone = $.extend(true, {}, field),
136
- index = parseInt(payload.index) + 1;
137
-
138
- clone.id = payload.new_id;
139
- clone.name = clone.name + '_copy';
140
-
141
- state.form_fields.splice(index, 0, clone);
142
- },
143
-
144
- // delete a field
145
- delete_form_field_element: function (state, index) {
146
- state.current_panel = 'form-fields';
147
- state.form_fields.splice(index, 1);
148
- },
149
-
150
- // set fields for a panel section
151
- set_panel_section_fields: function (state, payload) {
152
- var section = _.find(state.panel_sections, function (item) {
153
- return item.id === payload.id;
154
- });
155
-
156
- section.fields = payload.fields;
157
- },
158
-
159
- // notifications
160
- addNotification: function(state, payload) {
161
- state.notifications.push(payload);
162
- },
163
-
164
- deleteNotification: function(state, index) {
165
- state.notifications.splice(index, 1);
166
- },
167
-
168
- cloneNotification: function(state, index) {
169
- var clone = $.extend(true, {}, state.notifications[index]);
170
-
171
- index = parseInt(index) + 1;
172
- state.notifications.splice(index, 0, clone);
173
- },
174
-
175
- // update by it's property
176
- updateNotificationProperty: function(state, payload) {
177
- state.notifications[payload.index][payload.property] = payload.value;
178
- },
179
-
180
- updateNotification: function(state, payload) {
181
- state.notifications[payload.index] = payload.value;
182
- }
183
- }
184
- });
185
-
186
- /**
187
- * The main form builder vue instance
188
- */
189
- new Vue({
190
- el: '#wpuf-form-builder',
191
-
192
- mixins: wpuf_form_builder_mixins(wpuf_mixins.root),
193
-
194
- store: wpuf_form_builder_store,
195
-
196
- data: {
197
- is_form_saving: false,
198
- is_form_saved: false,
199
- is_form_switcher: false,
200
- post_title_editing: false,
201
- },
202
-
203
- computed: {
204
- current_panel: function () {
205
- return this.$store.state.current_panel;
206
- },
207
-
208
- post: function () {
209
- return this.$store.state.post;
210
- },
211
-
212
- form_fields_count: function () {
213
- return this.$store.state.form_fields.length;
214
- },
215
-
216
- form_fields: function () {
217
- return this.$store.state.form_fields;
218
- },
219
-
220
- notifications: function() {
221
- return this.$store.state.notifications;
222
- }
223
- },
224
-
225
- created: function () {
226
- this.$store.commit('panel_add_show_prop');
227
-
228
- /**
229
- * This is the event hub we'll use in every
230
- * component to communicate between them
231
- */
232
- wpuf_form_builder.event_hub = new Vue();
233
- },
234
-
235
- mounted: function () {
236
- // primary nav tabs and their contents
237
- this.bind_tab_on_click($('#wpuf-form-builder > fieldset > .nav-tab-wrapper > a'), '#wpuf-form-builder');
238
-
239
- // secondary settings tabs and their contents
240
- var settings_tabs = $('#wpuf-form-builder-settings .nav-tab'),
241
- settings_tab_contents = $('#wpuf-form-builder-settings .tab-contents .group');
242
-
243
- settings_tabs.first().addClass('nav-tab-active');
244
- settings_tab_contents.first().addClass('active');
245
-
246
- this.bind_tab_on_click(settings_tabs, '#wpuf-form-builder-settings');
247
-
248
- var clipboard = new window.Clipboard('.form-id');
249
- $(".form-id").tooltip();
250
-
251
- var self = this;
252
-
253
- clipboard.on('success', function(e) {
254
- // Show copied tooltip
255
- $(e.trigger)
256
- .attr('data-original-title', 'Copied!')
257
- .tooltip('show');
258
-
259
- // Reset the copied tooltip
260
- setTimeout(function() {
261
- $(e.trigger).tooltip('hide')
262
- .attr('data-original-title', self.i18n.copy_shortcode);
263
- }, 1000);
264
-
265
- e.clearSelection();
266
- });
267
-
268
- window.onbeforeunload = function () {
269
- if (!self.is_form_saved) {
270
- return self.i18n.unsaved_changes;
271
- }
272
- };
273
- },
274
-
275
- methods: {
276
- // tabs and their contents
277
- bind_tab_on_click: function (tabs, scope) {
278
- tabs.on('click', function (e) {
279
- e.preventDefault();
280
-
281
- var button = $(this),
282
- tab_contents = $(scope + ' > fieldset > .tab-contents'),
283
- group_id = button.attr('href');
284
-
285
- button.addClass('nav-tab-active').siblings('.nav-tab-active').removeClass('nav-tab-active');
286
-
287
- tab_contents.children().removeClass('active');
288
- $(group_id).addClass('active');
289
- });
290
- },
291
-
292
- // switch form
293
- switch_form: function () {
294
- this.is_form_switcher = (this.is_form_switcher) ? false : true;
295
- },
296
-
297
- // set current sidebar panel
298
- set_current_panel: function (panel) {
299
- this.$store.commit('set_current_panel', panel);
300
- },
301
-
302
- // save form builder data
303
- save_form_builder: function () {
304
- var self = this;
305
-
306
- if (_.isFunction(this.validate_form_before_submit) && !this.validate_form_before_submit()) {
307
-
308
- this.warn({
309
- text: this.validation_error_msg
310
- });
311
-
312
- return;
313
- }
314
-
315
- self.is_form_saving = true;
316
- self.set_current_panel('form-fields');
317
-
318
- wp.ajax.send('wpuf_form_builder_save_form', {
319
- data: {
320
- form_data: $('#wpuf-form-builder').serialize(),
321
- form_fields: JSON.stringify(self.form_fields),
322
- notifications: JSON.stringify(self.notifications)
323
- },
324
-
325
- success: function (response) {
326
- if (response.form_fields) {
327
- self.$store.commit('set_form_fields', response.form_fields);
328
- }
329
-
330
- self.is_form_saving = false;
331
- self.is_form_saved = true;
332
-
333
- toastr.success(self.i18n.saved_form_data);
334
- },
335
-
336
- error: function () {
337
- self.is_form_saving = false;
338
- }
339
- });
340
- }
341
- }
342
- });
343
-
344
- var SettingsTab = {
345
- init: function() {
346
- $(function() {
347
- $('.wpuf-ms-color').wpColorPicker();
348
- });
349
-
350
- $('#wpuf-metabox-settings').on('change', 'select[name="wpuf_settings[redirect_to]"]', this.settingsRedirect);
351
- $('#wpuf-metabox-settings-update').on('change', 'select[name="wpuf_settings[edit_redirect_to]"]', this.settingsRedirect);
352
- $('select[name="wpuf_settings[redirect_to]"]').change();
353
- $('select[name="wpuf_settings[edit_redirect_to]"]').change();
354
-
355
- // Form settings: Guest post
356
- $('#wpuf-metabox-settings').on('change', 'input[type=checkbox][name="wpuf_settings[guest_post]"]', this.settingsGuest);
357
- $('input[type=checkbox][name="wpuf_settings[guest_post]"]').trigger('change');
358
-
359
- // From settings: User details
360
- $('#wpuf-metabox-settings').on('change', 'input[type=checkbox][name="wpuf_settings[guest_details]"]', this.settingsGuestDetails);
361
-
362
- this.changeMultistepVisibility($('.wpuf_enable_multistep_section :input[type="checkbox"]'));
363
- var self = this;
364
- $('.wpuf_enable_multistep_section :input[type="checkbox"]').click(function() {
365
- self.changeMultistepVisibility($(this));
366
- });
367
- },
368
-
369
- settingsGuest: function (e) {
370
- e.preventDefault();
371
-
372
- var table = $(this).closest('table');
373
-
374
- if ( $(this).is(':checked') ) {
375
- table.find('tr.show-if-guest').show();
376
- table.find('tr.show-if-not-guest').hide();
377
-
378
- $('input[type=checkbox][name="wpuf_settings[guest_details]"]').trigger('change');
379
-
380
- } else {
381
- table.find('tr.show-if-guest').hide();
382
- table.find('tr.show-if-not-guest').show();
383
- }
384
- },
385
-
386
- settingsGuestDetails: function (e) {
387
- e.preventDefault();
388
-
389
- var table = $(this).closest('table');
390
-
391
- if ( $(this).is(':checked') ) {
392
- table.find('tr.show-if-details').show();
393
- } else {
394
- table.find('tr.show-if-details').hide();
395
- }
396
- },
397
-
398
- settingsRedirect: function(e) {
399
- e.preventDefault();
400
-
401
- var $self = $(this),
402
- $table = $self.closest('table'),
403
- value = $self.val();
404
-
405
- switch( value ) {
406
- case 'post':
407
- $table.find('tr.wpuf-page-id, tr.wpuf-url, tr.wpuf-same-page').hide();
408
- break;
409
-
410
- case 'page':
411
- $table.find('tr.wpuf-page-id').show();
412
- $table.find('tr.wpuf-same-page').hide();
413
- $table.find('tr.wpuf-url').hide();
414
- break;
415
-
416
- case 'url':
417
- $table.find('tr.wpuf-page-id').hide();
418
- $table.find('tr.wpuf-same-page').hide();
419
- $table.find('tr.wpuf-url').show();
420
- break;
421
-
422
- case 'same':
423
- $table.find('tr.wpuf-page-id').hide();
424
- $table.find('tr.wpuf-url').hide();
425
- $table.find('tr.wpuf-same-page').show();
426
- break;
427
- }
428
- },
429
-
430
- changeMultistepVisibility: function(target) {
431
- if (target.is(':checked')) {
432
- $('.wpuf_multistep_content').show();
433
- } else {
434
- $('.wpuf_multistep_content').hide();
435
- }
436
- }
437
- };
438
-
439
- // on DOM ready
440
- $(function() {
441
- resizeBuilderContainer();
442
-
443
- $("#collapse-menu").click(function () {
444
- resizeBuilderContainer();
445
- });
446
-
447
- function resizeBuilderContainer() {
448
- if ($(document.body).hasClass('folded')) {
449
- $("#wpuf-form-builder").css("width", "calc(100% - 80px)");
450
- } else {
451
- $("#wpuf-form-builder").css("width", "calc(100% - 200px)");
452
- }
453
- }
454
-
455
- SettingsTab.init();
456
- });
457
-
458
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/jquery-siaf-end.js DELETED
@@ -1 +0,0 @@
1
- })(jQuery);
 
admin/form-builder/assets/js/jquery-siaf-start.js DELETED
@@ -1,2 +0,0 @@
1
- ;(function($) {
2
- 'use strict';
 
 
admin/form-builder/assets/js/mixins/form-field.js DELETED
@@ -1,53 +0,0 @@
1
- /**
2
- * Mixin for form fields like
3
- * form-text_field, form-field_textarea etc
4
- */
5
- wpuf_mixins.form_field_mixin = {
6
- props: {
7
- field: {
8
- type: Object,
9
- default: {}
10
- }
11
- },
12
-
13
- computed: {
14
- form_id: function () {
15
- return this.$store.state.post.ID;
16
- },
17
-
18
- has_options: function () {
19
- if (!this.field.hasOwnProperty('options')) {
20
- return false;
21
- }
22
-
23
- return !!Object.keys(this.field.options).length;
24
- }
25
- },
26
-
27
- methods: {
28
- class_names: function(type_class) {
29
- return [
30
- type_class,
31
- this.required_class(),
32
- 'wpuf_' + this.field.name + '_' + this.form_id
33
- ];
34
- },
35
-
36
- required_class: function () {
37
- return ('yes' === this.required) ? 'required' : '';
38
- },
39
-
40
- is_selected: function (label) {
41
- if (_.isArray(this.field.selected)) {
42
- if (_.indexOf(this.field.selected, label) >= 0) {
43
- return true;
44
- }
45
-
46
- } else if (label === this.field.selected) {
47
- return true;
48
- }
49
-
50
- return false;
51
- }
52
- }
53
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/mixins/global.js DELETED
@@ -1,67 +0,0 @@
1
- /**
2
- * Global mixin
3
- */
4
- Vue.mixin({
5
- computed: {
6
- i18n: function () {
7
- return wpuf_form_builder.i18n;
8
- }
9
- },
10
-
11
- methods: {
12
- get_random_id: function() {
13
- var min = 999999,
14
- max = 9999999999;
15
-
16
- return Math.floor(Math.random() * (max - min + 1)) + min;
17
- },
18
-
19
- warn: function (settings, callback) {
20
- settings = $.extend(true, {
21
- title: '',
22
- text: '',
23
- type: 'warning',
24
- showCancelButton: true,
25
- confirmButtonColor: '#d54e21',
26
- confirmButtonText: this.i18n.ok,
27
- cancelButtonText: this.i18n.cancel,
28
- }, settings);
29
-
30
- swal(settings, callback);
31
- },
32
-
33
- is_failed_to_validate: function (template) {
34
- var validator = this.field_settings[template] ? this.field_settings[template].validator : false;
35
-
36
- if (validator && validator.callback && !this[validator.callback]()) {
37
- return true;
38
- }
39
-
40
- return false;
41
- },
42
-
43
- containsField: function(field_name) {
44
- var i = 0;
45
-
46
- for (i = 0; i < this.$store.state.form_fields.length; i++) {
47
- if (this.$store.state.form_fields[i].name === field_name) {
48
- return true;
49
- }
50
- }
51
-
52
- return false;
53
- },
54
-
55
- isSingleInstance: function(field_name) {
56
- var singleInstance = ['post_title', 'post_content', 'post_excerpt', 'featured_image',
57
- 'user_login', 'first_name', 'last_name', 'nickname', 'user_email', 'user_url',
58
- 'user_bio', 'password', 'user_avatar', 'taxonomy'];
59
-
60
- if ( $.inArray(field_name, singleInstance) >= 0 ) {
61
- return true;
62
- }
63
-
64
- return false;
65
- }
66
- }
67
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/js/mixins/option-field.js DELETED
@@ -1,57 +0,0 @@
1
- /**
2
- * Mixin for option fields like
3
- * field-text, field-text-meta, field-radio etc
4
- */
5
- wpuf_mixins.option_field_mixin = {
6
- props: {
7
- option_field: {
8
- type: Object,
9
- default: {}
10
- },
11
-
12
- editing_form_field: {
13
- type: Object,
14
- default: {}
15
- }
16
- },
17
-
18
- computed: {
19
- // show/hide on basis of depenedent settings
20
- met_dependencies: function () {
21
- // no 'dependencies' key
22
- if (!this.option_field.hasOwnProperty('dependencies')) {
23
- return true;
24
- }
25
-
26
- var deps = Object.keys(this.option_field.dependencies),
27
- i = 0;
28
-
29
- // has 'dependencies' key, but no property is set
30
- if (!deps.length) {
31
- return true;
32
- }
33
-
34
- // check if dependencies met
35
- for (i = 0; i < deps.length; i++) {
36
- var required_dep_value = this.option_field.dependencies[ deps[i] ],
37
- editing_field_value = this.editing_form_field[ deps[i] ];
38
-
39
- if (required_dep_value !== editing_field_value) {
40
- return false;
41
- }
42
- }
43
-
44
- return true;
45
- }
46
- },
47
-
48
- methods: {
49
- update_value: function(property, value) {
50
- this.$store.commit('update_editing_form_field', {
51
- editing_field_id: this.editing_form_field.id,
52
- field_name: property,
53
- value: value
54
- });
55
- },
56
- }
57
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/less/form-builder.less DELETED
@@ -1,1025 +0,0 @@
1
- // Variables
2
- // --------------------------------------------------
3
- @import "variables.less";
4
-
5
- // Mixins
6
- // --------------------------------------------------
7
- @import "mixins/hide-text.less";
8
- @import "mixins/opacity.less";
9
- @import "mixins/size.less";
10
- @import "mixins/reset-text.less";
11
- @import "mixins/text-overflow.less";
12
- @import "mixins/vendor-prefixes.less";
13
- @import "mixins/clearfix.less";
14
- @import "mixins/center-block.less";
15
- @import "mixins/custom-mixins.less";
16
-
17
-
18
- // Hide initial vue instance template
19
- // --------------------------------------------------
20
- [v-cloak] {
21
- display: none;
22
- }
23
-
24
- // Style pro alerts
25
- // --------------------------------------------------
26
- .wpuf-pro-text-alert {
27
- font-style: italic;
28
- color: @borderColor;
29
-
30
- a {
31
- text-decoration: none;
32
- color: #aaa;
33
- }
34
- }
35
-
36
- #wpuf-pro-content {
37
- opacity: 0.7;
38
- }
39
-
40
- // Utilities
41
- // --------------------------------------------------
42
- .clearfix {
43
- .clearfix();
44
- }
45
-
46
- .pull-left {
47
- float: left !important;
48
- }
49
-
50
- .pull-right {
51
- float: right !important;
52
- }
53
-
54
- .text-center {
55
- text-align: center;
56
- }
57
-
58
- .text-right {
59
- text-align: right;
60
- }
61
-
62
- .margin-0 {
63
- margin: 0;
64
- }
65
-
66
- .margin-bottom-10 {
67
- margin-bottom: 10px;
68
- }
69
-
70
- .list-inline {
71
- padding-left: 0;
72
- list-style: none;
73
- margin-left: -5px;
74
-
75
- & > li {
76
- display: inline-block;
77
- padding-left: 5px;
78
- padding-right: 5px;
79
- }
80
- }
81
-
82
- .disabled {
83
- pointer-events: none;
84
- cursor: not-allowed;
85
- opacity: 0.7;
86
- }
87
-
88
- .label-hr {
89
- border-bottom: 1px solid #ccc;
90
- display: block;
91
- padding-bottom: 8px;
92
- }
93
-
94
- // Vue Transition effects
95
- // --------------------------------------------------
96
- .slide-fade-enter-active {
97
- .transition(all .6s);
98
- overflow: hidden;
99
- }
100
-
101
- .slide-fade-leave-active {
102
- .transition(all .4s);
103
- overflow: hidden;
104
- }
105
-
106
- .slide-fade-enter,
107
- .slide-fade-leave-active {
108
- opacity: .3 !important;
109
- max-height: 0 !important;
110
- margin: 0 !important;
111
- }
112
-
113
- // Sweet Alert
114
- // --------------------------------------------------
115
- .sweet-alert {
116
- border-radius: 0;
117
-
118
- h2 {
119
- font-size: 26px;
120
- line-height: 1.6;
121
- }
122
-
123
- p {
124
- font-size: 15px;
125
- font-weight: 400;
126
- color: #656565;
127
- line-height: 1.7;
128
-
129
- a {
130
- text-decoration: none;
131
- }
132
- }
133
-
134
- button {
135
- border-radius: 3px;
136
- padding: 10px 20px;
137
- min-width: 100px;
138
- }
139
- }
140
- .swal2-modal {
141
- .swal2-buttonswrapper {
142
- button {
143
- display: inline-block;
144
- padding: 6px 12px;
145
- margin-bottom: 0;
146
- font-size: 14px;
147
- font-weight: 400;
148
- line-height: 1.42857143;
149
- text-align: center;
150
- white-space: nowrap;
151
- vertical-align: middle;
152
- -ms-touch-action: manipulation;
153
- touch-action: manipulation;
154
- cursor: pointer;
155
- -webkit-user-select: none;
156
- -moz-user-select: none;
157
- -ms-user-select: none;
158
- user-select: none;
159
- background-image: none;
160
- border: 1px solid transparent;
161
- border-radius: 4px;
162
- }
163
- .swal2-confirm {
164
- color: #fff;
165
- background-color: #337ab7;
166
- border-color: #2e6da4;
167
- }
168
- .swal2-cancel {
169
- color: #fff;
170
- background-color: #d9534f;
171
- border-color: #d43f3a;
172
- }
173
- }
174
- }
175
-
176
- // CSS3 loader animation
177
- // --------------------------------------------------
178
- .loader,
179
- .loader:after {
180
- border-radius: 50%;
181
- width: 25px;
182
- height: 25px;
183
- }
184
-
185
- .loader {
186
- display: inline-block;
187
- position: relative;
188
- text-indent: -9999em;
189
- border-top: 3px solid fade(@wpBlue, 20%);
190
- border-right: 3px solid fade(@wpBlue, 20%);
191
- border-bottom: 3px solid fade(@wpBlue, 20%);
192
- border-left: 3px solid @wpBlue;
193
- -webkit-transform: translateZ(0);
194
- -ms-transform: translateZ(0);
195
- transform: translateZ(0);
196
- -webkit-animation: wpuf_form_builder_loader 1.1s infinite linear;
197
- animation: wpuf_form_builder_loader 1.1s infinite linear;
198
- }
199
-
200
- .button.button-ajax-working {
201
-
202
- .loader {
203
- display: inline-block;
204
- width: 17px;
205
- height: 17px;
206
- top: 4px;
207
- margin-right: 3px;
208
- border-top: 1px solid rgb(102, 198, 228);
209
- border-right: 1px solid rgb(102, 198, 228);
210
- border-bottom: 1px solid rgb(102, 198, 228);
211
- border-left: 1px solid rgba(102, 198, 228, 0);
212
- }
213
- }
214
-
215
- @-webkit-keyframes wpuf_form_builder_loader {
216
- 0% {
217
- -webkit-transform: rotate(0deg);
218
- transform: rotate(0deg);
219
- }
220
- 100% {
221
- -webkit-transform: rotate(360deg);
222
- transform: rotate(360deg);
223
- }
224
- }
225
-
226
- @keyframes wpuf_form_builder_loader {
227
- 0% {
228
- -webkit-transform: rotate(0deg);
229
- transform: rotate(0deg);
230
- }
231
- 100% {
232
- -webkit-transform: rotate(360deg);
233
- transform: rotate(360deg);
234
- }
235
- }
236
-
237
- // toastr - notification
238
- // --------------------------------------------------
239
- #toast-container {
240
-
241
- &.toast-top-right {
242
- top: 40px;
243
- right: 18px;
244
- }
245
-
246
- & > div {
247
- opacity: 1;
248
- }
249
-
250
- & > :hover {
251
- opacity: .9;
252
- }
253
- }
254
-
255
- // Flex button group
256
- // --------------------------------------------------
257
- .wp-core-ui .button-group.wpuf-flex-button-group {
258
- position: relative;
259
- z-index: 1;
260
- display: flex;
261
- flex-flow: row nowrap;
262
- justify-content: flex-start;
263
- align-content: center;
264
- align-items: center;
265
-
266
- .button {
267
- flex-grow: 1;
268
- flex-shrink: 1;
269
- flex-basis: 0;
270
- align-self: auto;
271
- text-align: center;
272
- }
273
- }
274
-
275
- // Selectize
276
- // --------------------------------------------------
277
- .selectize-input {
278
- padding: 6px 5px;
279
- border: 1px solid #ddd;
280
- }
281
-
282
- .selectize-dropdown .active {
283
- background-color: @wpBlue;
284
- color: #fff;
285
- }
286
-
287
- .selectize-element-group {
288
- display: none;
289
-
290
- & + .selectize-control {
291
- display: none;
292
- }
293
-
294
- &.active + .selectize-control {
295
- display: block;
296
- margin-top: 10px;
297
- }
298
- }
299
-
300
- .selectize-control {
301
-
302
- &.multi {
303
-
304
- .selectize-input {
305
-
306
- [data-value] {
307
- text-shadow: 0 1px 0 rgba(0,51,83,0.3);
308
- -webkit-border-radius: 3px;
309
- -moz-border-radius: 3px;
310
- border-radius: 3px;
311
- .vertical-gradient(fade(@wpBlue, 40%), @wpBlue);
312
- .box-shadow(~"0 1px 0 rgba(0,0,0,0.2),inset 0 1px rgba(255,255,255,0.03)");
313
-
314
- &.active {
315
- .vertical-gradient(fade(@wpBlue, 40%), @wpBlue);
316
- }
317
- }
318
- }
319
- }
320
- }
321
-
322
-
323
- // Form Builder
324
- // --------------------------------------------------
325
- #wpuf-form-builder {
326
- width: ~"calc(100% - 200px)";
327
- padding-top: 10px;
328
- position: fixed;
329
- top: 25px;
330
-
331
- & * {
332
- box-sizing: border-box;
333
- }
334
-
335
- & > fieldset {
336
- & > .nav-tab-wrapper {
337
-
338
- .nav-tab:focus {
339
- outline: 0;
340
- .box-shadow(none);
341
- }
342
-
343
- .button {
344
- font-weight: 400;
345
- }
346
- }
347
-
348
- & > .tab-contents {
349
- .border(bottom);
350
-
351
- & > .group {
352
- display: none;
353
-
354
- &.active {
355
- display: block;
356
- }
357
-
358
- &:not(#wpuf-form-builder-container):not(#wpuf-form-builder-settings) {
359
- height: ~"calc(100vh - 125px)";
360
- overflow-y: auto;
361
- padding-top: 15px;
362
- }
363
- }
364
- }
365
- }
366
-
367
-
368
- .wpuf-settings-nav-tab-wrapper {
369
- width: 200px;
370
- }
371
-
372
- .wp-picker-holder * {
373
- box-sizing: content-box;
374
- }
375
- }
376
-
377
- #wpuf-form-builder-settings {
378
- position: relative;
379
- margin-top: 15px;
380
-
381
- .nav-tab-wrapper {
382
- position: absolute;
383
- top: 0;
384
- left: 0;
385
- width: 170px;
386
- border-bottom: 0;
387
-
388
- a {
389
- width: ~"calc(100% - -1px)";
390
- margin-left: 0;
391
- margin-bottom: .5em;
392
- .border(right);
393
- .border(bottom);
394
- font-weight: 400;
395
- font-size: 13px;
396
-
397
- &.nav-tab-active {
398
- border-right-color: @htmlBG;
399
- }
400
-
401
- &:focus {
402
- outline: 0;
403
- .box-shadow(none);
404
- }
405
- }
406
- }
407
-
408
- .tab-contents {
409
- margin-left: 170px;
410
- .border(left);
411
- padding-left: 20px;
412
-
413
- & > .group {
414
- display: none;
415
- height: ~"calc(100vh - 140px)";
416
- overflow-y: auto;
417
-
418
- &.active {
419
- display: block;
420
- }
421
- }
422
-
423
- .form-table {
424
- margin-top: 0;
425
- }
426
- }
427
- }
428
-
429
- #wpuf-form-builder-container {
430
- position: relative;
431
-
432
- header {
433
- height: 45px;
434
- .border(right);
435
-
436
- .form-title {
437
- cursor: pointer;
438
- font-size: 1.3em;
439
- font-weight: 600;
440
- float: left;
441
- margin-right: 10px;
442
- margin-top: 10px;
443
- line-height: 1.5;
444
- max-width: 300px;
445
- white-space: nowrap;
446
- overflow: hidden;
447
- text-overflow: ellipsis;
448
-
449
- &:hover {
450
- background-color: rgba(85, 85, 85, 0.2);
451
- }
452
- }
453
-
454
- .form-switcher-arrow {
455
- cursor: pointer;
456
- font-size: 24px;
457
- margin-top: 10px;
458
- line-height: 1;
459
- width: 20px;
460
- text-align: center;
461
-
462
- &:hover {
463
- background-color: rgba(85, 85, 85, 0.2);
464
- }
465
- }
466
-
467
- .form-id {
468
- color: #fff;
469
- background-color: #008ec2;
470
- line-height: 170%;
471
- padding: 0 8px;
472
- border-radius: 2px;
473
- font-size: 13px;
474
- display: inline-block;
475
- margin: 10px 0 0 15px;
476
- cursor: pointer;
477
- }
478
- }
479
-
480
- section {
481
- height: ~"calc(100vh - 170px)";
482
- overflow-y: auto;
483
- }
484
-
485
- #builder-form-fields {
486
- position: absolute;
487
- top: 0;
488
- right: 0;
489
- width: 360px;
490
-
491
- header {
492
- ul {
493
- margin: 0;
494
-
495
- li {
496
- width: 50%;
497
- text-align: center;
498
- float: left;
499
- line-height: 1;
500
- margin: 0;
501
-
502
- a {
503
- text-decoration: none;
504
- line-height: 44px;
505
- display: block;
506
- background-color: #e5e5e5;
507
- color: #777;
508
- .border(bottom);
509
- .transition(background-color .4s);
510
-
511
- &:hover {
512
- background-color: lighten(#e5e5e5, 5%);
513
- }
514
-
515
- &:focus {
516
- outline: 0;
517
- .box-shadow(none);
518
- }
519
- }
520
-
521
- &.active a {
522
- background-color: #fff;
523
- color: #444;
524
- .border(bottom, 1px, #fff);
525
- }
526
-
527
- &:first-child {
528
- .border(right);
529
- }
530
- }
531
- }
532
- }
533
-
534
- section {
535
- background-color: #fff;
536
- .border(right);
537
-
538
- .wpuf-form-builder-panel {
539
- padding: 10px;
540
- }
541
- }
542
- }
543
-
544
- #builder-stage {
545
- margin-right: 360px;
546
-
547
- section {
548
- background-color: #6b6b6b;
549
- padding: 30px;
550
-
551
- #form-preview {
552
- background-color: #fff;
553
- .box-shadow(0 0 10px rgba(0, 0, 0, 0.3));
554
- padding: 25px;
555
- max-width: 800px;
556
- margin: 0 auto;
557
- }
558
- }
559
- }
560
- }
561
-
562
- // Builder Stage
563
- // --------------------------------------------------
564
- #form-preview-stage {
565
-
566
- .field-items {
567
- position: relative;
568
- background-color: #fff;
569
-
570
- .control-buttons {
571
- position: absolute;
572
- top: 0;
573
- left: 0;
574
- z-index: 10;
575
- display: none;
576
- width: 100%;
577
- height: 100%;
578
- margin: 0;
579
- text-align: center;
580
- background: fade(@wpYellow, 8%);
581
- border: 1px dashed @wpYellow;
582
-
583
- p {
584
- position: absolute;
585
- top: 50%;
586
- left: 50%;
587
- margin: -14px 0 0 -61px;
588
- line-height: 1;
589
- color: #eee;
590
- background-color: @wpBlack;
591
- }
592
-
593
- i {
594
- cursor: pointer;
595
- padding: 8px;
596
-
597
- &.move {
598
- cursor: move;
599
- }
600
- }
601
-
602
- i:hover {
603
- background-color: @wpBlue;
604
- }
605
- }
606
-
607
- &:hover .control-buttons {
608
- display: block;
609
- }
610
-
611
- &.current-editing {
612
- background-color: fade(@wpYellow, 15%);
613
-
614
- &.ui-sortable-helper {
615
- background-color: #fff;
616
- }
617
- }
618
-
619
- &.ui-sortable-helper {
620
- .box-shadow(0 0 10px rgba(0, 0, 0, 0.3));
621
- }
622
- }
623
-
624
- .form-preview-stage-dropzone {
625
- background-color: fade(@wpYellow, 30%) !important;
626
- border: 1px solid @wpYellow;
627
- height: 50px;
628
- }
629
-
630
- .wpuf-submit + .button + .form-preview-stage-dropzone,
631
- .field-items.empty-list-item + .form-preview-stage-dropzone {
632
- display: none;
633
- }
634
-
635
- .field-items.empty-list-item {
636
- padding: 24px;
637
- margin: 0;
638
- border: 1px dashed fade(@wpBlack, 50%);
639
- }
640
-
641
- .form-preview-stage-dropzone + .field-items.empty-list-item {
642
- display: none;
643
- }
644
-
645
- .hidden-field-list {
646
- border-top: 1px dashed @borderColor;
647
-
648
- h4 {
649
- font-weight: 400;
650
- font-size: 16px;
651
- margin: 12px 0;
652
- }
653
-
654
- ul {
655
-
656
- li {
657
- background-color: @htmlBG;
658
- }
659
- }
660
- }
661
- }
662
-
663
- // Panel: Form Fields
664
- // --------------------------------------------------
665
- .panel-form-field-group {
666
- margin-bottom: 15px;
667
-
668
- h3 {
669
- margin: 0;
670
- font-size: 15px;
671
- border-bottom: 1px solid #eee;
672
- padding-bottom: 10px;
673
- cursor: pointer;
674
-
675
- i {
676
- float: right;
677
- }
678
- }
679
-
680
- .panel-form-field-buttons {
681
- opacity: 1;
682
- max-height: 100vh;
683
- overflow: hidden;
684
- margin: 15px 0 0;
685
- }
686
-
687
- .button {
688
- display: block;
689
- width: 48%;
690
- margin: 0 0 10px 0;
691
- float: left;
692
- text-align: left;
693
-
694
- &:nth-child(odd) {
695
- margin-right: 2%;
696
- }
697
-
698
- &.button-faded {
699
- opacity: .5;
700
- }
701
- }
702
- }
703
-
704
- // the dragging field button
705
- .button.ui-draggable-dragging {
706
- margin: 0;
707
- text-align: left;
708
- }
709
-
710
- // Panel: Field Options
711
- // --------------------------------------------------
712
- .wpuf-form-builder-field-options {
713
-
714
- .option-fields-section {
715
- margin-bottom: 15px;
716
- }
717
-
718
- .section-title {
719
- margin: 0;
720
- font-size: 15px;
721
- border-bottom: 1px solid #eee;
722
- padding-bottom: 10px;
723
- cursor: pointer;
724
-
725
- i {
726
- float: right;
727
- }
728
- }
729
-
730
- .option-field-section-fields {
731
- margin-top: 15px;
732
- max-height: 150vh;
733
- opacity: 1;
734
- }
735
-
736
- .panel-field-opt {
737
- margin-bottom: 15px;
738
-
739
- .field-helper-text {
740
- color: fadeout(@wpBlack, 50%);
741
- margin-left: 6px;
742
- }
743
-
744
- &.panel-field-opt-text {
745
-
746
- input[type="text"],
747
- input[type="number"] {
748
- display: block;
749
- width: 100%;
750
- margin: 5px 0 0;
751
- line-height: 1.75;
752
- }
753
- }
754
-
755
- &.panel-field-opt-radio {
756
-
757
- & > label {
758
- display: block;
759
- margin-bottom: 5px;
760
- }
761
-
762
- & > ul {
763
- margin-top: 0;
764
- margin-bottom: 0;
765
- }
766
- }
767
-
768
- &.panel-field-opt-select {
769
-
770
- select {
771
- width: 100%;
772
- height: 32px;
773
- margin: 4px 0 0;
774
- }
775
-
776
- }
777
-
778
- .chosen-select + .chosen-container {
779
- margin-top: 10px;
780
- }
781
-
782
- .label-title-block {
783
- display: block;
784
- margin-bottom: 3px;
785
- }
786
- }
787
- }
788
-
789
- .option-field-option-chooser {
790
- margin: 12px 0 0;
791
-
792
- &.margin-0 {
793
- margin: 0;
794
- }
795
-
796
- .selector,
797
- .sort-handler,
798
- .label,
799
- .value,
800
- .action-buttons {
801
- float: left;
802
- }
803
-
804
- .selector {
805
- width: 25px;
806
-
807
- input {
808
- margin-top: 14px;
809
- }
810
- }
811
-
812
- .sort-handler {
813
- width: 22px;
814
- cursor: ns-resize;
815
-
816
- i {
817
- margin-top: 14px;
818
- font-size: 15px;
819
- }
820
- }
821
-
822
- .label {
823
- width: 208px;
824
- margin-right: 8px;
825
- }
826
-
827
- &.show-value {
828
- .label,
829
- .value {
830
- width: 100px;
831
- margin-right: 8px;
832
- }
833
- }
834
-
835
- .header {
836
- .label, .value {
837
- color: #909090;
838
- }
839
- }
840
-
841
- .action-buttons {
842
- width: 36px;
843
-
844
- i {
845
- cursor: pointer;
846
- font-size: 16px;
847
- margin-top: 13px;
848
- }
849
- }
850
- }
851
-
852
- .panel-field-opt-repeater-columns {
853
-
854
- .repeater-columns {
855
-
856
- li > div {
857
- float: left;
858
- }
859
-
860
- .sorter {
861
- width: 30px;
862
-
863
- i {
864
- cursor: ns-resize;
865
- font-size: 16px;
866
- margin-top: 5px;
867
- }
868
- }
869
-
870
- .input-container {
871
- width: 195px;
872
- margin-right: 10px;
873
-
874
- input {
875
- width: 100%;
876
- }
877
- }
878
-
879
- .action-buttons {
880
- width: 50px;
881
-
882
- i {
883
- cursor: pointer;
884
- font-size: 16px;
885
- padding: 0 3px;
886
- margin-top: 4px;
887
- }
888
- }
889
- }
890
- }
891
-
892
- .panel-field-opt-textarea {
893
-
894
- textarea {
895
- display: block;
896
- width: 100%;
897
- margin: 5px 0 0;
898
- line-height: 1.75;
899
- }
900
- }
901
-
902
- .panel-field-html-help-text {
903
-
904
- pre {
905
- max-width: 100%;
906
- overflow-x: auto;
907
- }
908
- }
909
-
910
- .panel-field-opt-select {
911
-
912
- .opt-select-element {
913
- display: block;
914
- max-width: 100%;
915
- }
916
- }
917
-
918
- // Text Editor
919
- // --------------------------------------------------
920
- ul.wpuf-form li .wpuf-text-editor .wp-editor-wrap {
921
- border: 0;
922
- }
923
-
924
- .form-switcher-content {
925
- position: absolute;
926
- background-color: #f9f9f9;
927
- min-width: 160px;
928
- box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
929
- z-index: 9999;
930
- margin: 0;
931
-
932
- li {
933
- margin: 0;
934
- }
935
-
936
- a {
937
- color: black;
938
- padding: 12px;
939
- text-decoration: none;
940
- display: block;
941
- text-align: center;
942
- }
943
- a:hover {
944
- color: #fff;
945
- background-color: #008ec2;
946
- }
947
- a.active {
948
- font-weight: bold;
949
- color: #fff;
950
- background-color: #008ec2;
951
- }
952
- }
953
-
954
- .insert-photo-icon {
955
- vertical-align: text-top;
956
- color: #82878c;
957
- font-size: 18px;
958
- }
959
-
960
- .password-strength-meter {
961
- border-style: solid;
962
- border-width: 1px;
963
- float: left;
964
- margin: 0;
965
- padding: 3px 5px;
966
- text-align: center;
967
- width: 200px;
968
- display: block;
969
- background-color: #eee;
970
- border-color: #ddd;
971
- }
972
-
973
- ul.wpuf-form li .wpuf-password-field {
974
- width: 100%;
975
- margin-bottom: 10px;
976
- }
977
-
978
- ul.wpuf-form li .wpuf-password-field:after {
979
- clear: both;
980
- content: "";
981
- display: table;
982
- }
983
-
984
- // Merge Tags
985
- // --------------------------------------------------
986
- .wpuf-merge-tag-wrap {
987
-
988
- .merge-tag-link {
989
- position: absolute;
990
- right: 5px;
991
- top: 30px;
992
- color: #999;
993
- text-decoration: none;
994
-
995
- &:hover {
996
- color: #555;
997
- }
998
- }
999
-
1000
- .wpuf-merge-tags {
1001
- max-height: 110px;
1002
- overflow: hidden;
1003
- overflow-y: scroll;
1004
- border: 1px solid #e5e5e5;
1005
- box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.04);
1006
- display: none;
1007
- position: absolute;
1008
- right: 0px;
1009
- top: 60px;
1010
- background: #fff;
1011
- z-index: 1000;
1012
- min-height: 150px;
1013
-
1014
- .merge-tag-head {
1015
- font-weight: bold;
1016
- background: #f0f0f0;
1017
- padding: 3px 10px;
1018
- }
1019
-
1020
- .merge-tag-section ul {
1021
- margin: 0;
1022
- padding: 5px 10px;
1023
- }
1024
- }
1025
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/less/mixins/center-block.less DELETED
@@ -1,7 +0,0 @@
1
- // Center-align a block level element
2
-
3
- .center-block() {
4
- display: block;
5
- margin-left: auto;
6
- margin-right: auto;
7
- }
 
 
 
 
 
 
 
admin/form-builder/assets/less/mixins/clearfix.less DELETED
@@ -1,22 +0,0 @@
1
- // Clearfix
2
- //
3
- // For modern browsers
4
- // 1. The space content is one way to avoid an Opera bug when the
5
- // contenteditable attribute is included anywhere else in the document.
6
- // Otherwise it causes space to appear at the top and bottom of elements
7
- // that are clearfixed.
8
- // 2. The use of `table` rather than `block` is only necessary if using
9
- // `:before` to contain the top-margins of child elements.
10
- //
11
- // Source: http://nicolasgallagher.com/micro-clearfix-hack/
12
-
13
- .clearfix() {
14
- &:before,
15
- &:after {
16
- content: " "; // 1
17
- display: table; // 2
18
- }
19
- &:after {
20
- clear: both;
21
- }
22
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/less/mixins/custom-mixins.less DELETED
@@ -1,70 +0,0 @@
1
- .border(@prop: '', @width: 1px, @bColor: @borderColor) {
2
- & when not (@prop = '') {
3
- border-@{prop}: @width solid @bColor;
4
- }
5
- & when (@prop = '') {
6
- border: @width solid @bColor;
7
- }
8
- }
9
-
10
- .button-colorized(@baseColor) {
11
- background: @baseColor;
12
- border-color: darken(@baseColor, 5%) darken(@baseColor, 9%) darken(@baseColor, 9%);
13
- -webkit-box-shadow: 0 1px 0 darken(@baseColor, 9%);
14
- box-shadow: 0 1px 0 darken(@baseColor, 9%);
15
- color: #fff;
16
- text-decoration: none;
17
- text-shadow: 0 -1px 1px darken(@baseColor, 9%), 1px 0 1px darken(@baseColor, 9%), 0 1px 1px darken(@baseColor, 9%), -1px 0 1px darken(@baseColor, 9%);
18
-
19
- &.hover,
20
- &:hover,
21
- &.focus,
22
- &:focus {
23
- background: lighten(@baseColor, 2%);
24
- border-color: darken(@baseColor, 9%);
25
- color: #fff;
26
- }
27
-
28
- &.focus,
29
- &:focus {
30
- -webkit-box-shadow: 0 1px 0 darken(@baseColor, 5%), 0 0 2px 1px darken(@baseColor, 17%);
31
- box-shadow: 0 1px 0 darken(@baseColor, 5%), 0 0 2px 1px darken(@baseColor, 17%);
32
- }
33
-
34
-
35
- &.active,
36
- &.active:hover,
37
- &.active:focus,
38
- &:active {
39
- background: darken(@baseColor, 5%);
40
- border-color: darken(@baseColor, 9%);
41
- -webkit-box-shadow: inset 0 2px 0 darken(@baseColor, 9%);
42
- box-shadow: inset 0 2px 0 darken(@baseColor, 9%);
43
- vertical-align: top;
44
- }
45
-
46
- &[disabled],
47
- &:disabled,
48
- &-disabled,
49
- &.disabled {
50
- color: lighten(@baseColor, 27%) !important;
51
- background: lighten(@baseColor, 2%) !important;
52
- border-color: lighten(@baseColor, 3%) !important;
53
- -webkit-box-shadow: none !important;
54
- box-shadow: none !important;
55
- text-shadow: 0 -1px 0 rgba( 0, 0, 0, 0.1 ) !important;
56
- cursor: default;
57
- }
58
- }
59
-
60
- // copied from selectize
61
- .vertical-gradient (@color-top, @color-bottom) {
62
- background-color: mix(@color-top, @color-bottom, 60%);
63
- background-image: -moz-linear-gradient(top, @color-top, @color-bottom); // FF 3.6+
64
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@color-top), to(@color-bottom)); // Safari 4+, Chrome 2+
65
- background-image: -webkit-linear-gradient(top, @color-top, @color-bottom); // Safari 5.1+, Chrome 10+
66
- background-image: -o-linear-gradient(top, @color-top, @color-bottom); // Opera 11.10
67
- background-image: linear-gradient(to bottom, @color-top, @color-bottom); // Standard, IE10
68
- background-repeat: repeat-x;
69
- filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@color-top),argb(@color-bottom))); // IE9 and down
70
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/less/mixins/hide-text.less DELETED
@@ -1,21 +0,0 @@
1
- // CSS image replacement
2
- //
3
- // Heads up! v3 launched with only `.hide-text()`, but per our pattern for
4
- // mixins being reused as classes with the same name, this doesn't hold up. As
5
- // of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`.
6
- //
7
- // Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757
8
-
9
- // Deprecated as of v3.0.1 (has been removed in v4)
10
- .hide-text() {
11
- font: ~"0/0" a;
12
- color: transparent;
13
- text-shadow: none;
14
- background-color: transparent;
15
- border: 0;
16
- }
17
-
18
- // New mixin to use as of v3.0.1
19
- .text-hide() {
20
- .hide-text();
21
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/less/mixins/opacity.less DELETED
@@ -1,8 +0,0 @@
1
- // Opacity
2
-
3
- .opacity(@opacity) {
4
- opacity: @opacity;
5
- // IE8 filter
6
- @opacity-ie: (@opacity * 100);
7
- filter: ~"alpha(opacity=@{opacity-ie})";
8
- }
 
 
 
 
 
 
 
 
admin/form-builder/assets/less/mixins/reset-text.less DELETED
@@ -1,18 +0,0 @@
1
- .reset-text() {
2
- font-family: @font-family-base;
3
- // We deliberately do NOT reset font-size.
4
- font-style: normal;
5
- font-weight: normal;
6
- letter-spacing: normal;
7
- line-break: auto;
8
- line-height: @line-height-base;
9
- text-align: left; // Fallback for where `start` is not supported
10
- text-align: start;
11
- text-decoration: none;
12
- text-shadow: none;
13
- text-transform: none;
14
- white-space: normal;
15
- word-break: normal;
16
- word-spacing: normal;
17
- word-wrap: normal;
18
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/less/mixins/size.less DELETED
@@ -1,10 +0,0 @@
1
- // Sizing shortcuts
2
-
3
- .size(@width; @height) {
4
- width: @width;
5
- height: @height;
6
- }
7
-
8
- .square(@size) {
9
- .size(@size; @size);
10
- }
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/less/mixins/text-overflow.less DELETED
@@ -1,8 +0,0 @@
1
- // Text overflow
2
- // Requires inline-block or block for proper styling
3
-
4
- .text-overflow() {
5
- overflow: hidden;
6
- text-overflow: ellipsis;
7
- white-space: nowrap;
8
- }
 
 
 
 
 
 
 
 
admin/form-builder/assets/less/mixins/vendor-prefixes.less DELETED
@@ -1,227 +0,0 @@
1
- // Vendor Prefixes
2
- //
3
- // All vendor mixins are deprecated as of v3.2.0 due to the introduction of
4
- // Autoprefixer in our Gruntfile. They have been removed in v4.
5
-
6
- // - Animations
7
- // - Backface visibility
8
- // - Box shadow
9
- // - Box sizing
10
- // - Content columns
11
- // - Hyphens
12
- // - Placeholder text
13
- // - Transformations
14
- // - Transitions
15
- // - User Select
16
-
17
-
18
- // Animations
19
- .animation(@animation) {
20
- -webkit-animation: @animation;
21
- -o-animation: @animation;
22
- animation: @animation;
23
- }
24
- .animation-name(@name) {
25
- -webkit-animation-name: @name;
26
- animation-name: @name;
27
- }
28
- .animation-duration(@duration) {
29
- -webkit-animation-duration: @duration;
30
- animation-duration: @duration;
31
- }
32
- .animation-timing-function(@timing-function) {
33
- -webkit-animation-timing-function: @timing-function;
34
- animation-timing-function: @timing-function;
35
- }
36
- .animation-delay(@delay) {
37
- -webkit-animation-delay: @delay;
38
- animation-delay: @delay;
39
- }
40
- .animation-iteration-count(@iteration-count) {
41
- -webkit-animation-iteration-count: @iteration-count;
42
- animation-iteration-count: @iteration-count;
43
- }
44
- .animation-direction(@direction) {
45
- -webkit-animation-direction: @direction;
46
- animation-direction: @direction;
47
- }
48
- .animation-fill-mode(@fill-mode) {
49
- -webkit-animation-fill-mode: @fill-mode;
50
- animation-fill-mode: @fill-mode;
51
- }
52
-
53
- // Backface visibility
54
- // Prevent browsers from flickering when using CSS 3D transforms.
55
- // Default value is `visible`, but can be changed to `hidden`
56
-
57
- .backface-visibility(@visibility) {
58
- -webkit-backface-visibility: @visibility;
59
- -moz-backface-visibility: @visibility;
60
- backface-visibility: @visibility;
61
- }
62
-
63
- // Drop shadows
64
- //
65
- // Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's
66
- // supported browsers that have box shadow capabilities now support it.
67
-
68
- .box-shadow(@shadow) {
69
- -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1
70
- box-shadow: @shadow;
71
- }
72
-
73
- // Box sizing
74
- .box-sizing(@boxmodel) {
75
- -webkit-box-sizing: @boxmodel;
76
- -moz-box-sizing: @boxmodel;
77
- box-sizing: @boxmodel;
78
- }
79
-
80
- // CSS3 Content Columns
81
- .content-columns(@column-count; @column-gap: @grid-gutter-width) {
82
- -webkit-column-count: @column-count;
83
- -moz-column-count: @column-count;
84
- column-count: @column-count;
85
- -webkit-column-gap: @column-gap;
86
- -moz-column-gap: @column-gap;
87
- column-gap: @column-gap;
88
- }
89
-
90
- // Optional hyphenation
91
- .hyphens(@mode: auto) {
92
- word-wrap: break-word;
93
- -webkit-hyphens: @mode;
94
- -moz-hyphens: @mode;
95
- -ms-hyphens: @mode; // IE10+
96
- -o-hyphens: @mode;
97
- hyphens: @mode;
98
- }
99
-
100
- // Placeholder text
101
- .placeholder(@color: @input-color-placeholder) {
102
- // Firefox
103
- &::-moz-placeholder {
104
- color: @color;
105
- opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526
106
- }
107
- &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+
108
- &::-webkit-input-placeholder { color: @color; } // Safari and Chrome
109
- }
110
-
111
- // Transformations
112
- .scale(@ratio) {
113
- -webkit-transform: scale(@ratio);
114
- -ms-transform: scale(@ratio); // IE9 only
115
- -o-transform: scale(@ratio);
116
- transform: scale(@ratio);
117
- }
118
- .scale(@ratioX; @ratioY) {
119
- -webkit-transform: scale(@ratioX, @ratioY);
120
- -ms-transform: scale(@ratioX, @ratioY); // IE9 only
121
- -o-transform: scale(@ratioX, @ratioY);
122
- transform: scale(@ratioX, @ratioY);
123
- }
124
- .scaleX(@ratio) {
125
- -webkit-transform: scaleX(@ratio);
126
- -ms-transform: scaleX(@ratio); // IE9 only
127
- -o-transform: scaleX(@ratio);
128
- transform: scaleX(@ratio);
129
- }
130
- .scaleY(@ratio) {
131
- -webkit-transform: scaleY(@ratio);
132
- -ms-transform: scaleY(@ratio); // IE9 only
133
- -o-transform: scaleY(@ratio);
134
- transform: scaleY(@ratio);
135
- }
136
- .skew(@x; @y) {
137
- -webkit-transform: skewX(@x) skewY(@y);
138
- -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+
139
- -o-transform: skewX(@x) skewY(@y);
140
- transform: skewX(@x) skewY(@y);
141
- }
142
- .translate(@x; @y) {
143
- -webkit-transform: translate(@x, @y);
144
- -ms-transform: translate(@x, @y); // IE9 only
145
- -o-transform: translate(@x, @y);
146
- transform: translate(@x, @y);
147
- }
148
- .translate3d(@x; @y; @z) {
149
- -webkit-transform: translate3d(@x, @y, @z);
150
- transform: translate3d(@x, @y, @z);
151
- }
152
- .rotate(@degrees) {
153
- -webkit-transform: rotate(@degrees);
154
- -ms-transform: rotate(@degrees); // IE9 only
155
- -o-transform: rotate(@degrees);
156
- transform: rotate(@degrees);
157
- }
158
- .rotateX(@degrees) {
159
- -webkit-transform: rotateX(@degrees);
160
- -ms-transform: rotateX(@degrees); // IE9 only
161
- -o-transform: rotateX(@degrees);
162
- transform: rotateX(@degrees);
163
- }
164
- .rotateY(@degrees) {
165
- -webkit-transform: rotateY(@degrees);
166
- -ms-transform: rotateY(@degrees); // IE9 only
167
- -o-transform: rotateY(@degrees);
168
- transform: rotateY(@degrees);
169
- }
170
- .perspective(@perspective) {
171
- -webkit-perspective: @perspective;
172
- -moz-perspective: @perspective;
173
- perspective: @perspective;
174
- }
175
- .perspective-origin(@perspective) {
176
- -webkit-perspective-origin: @perspective;
177
- -moz-perspective-origin: @perspective;
178
- perspective-origin: @perspective;
179
- }
180
- .transform-origin(@origin) {
181
- -webkit-transform-origin: @origin;
182
- -moz-transform-origin: @origin;
183
- -ms-transform-origin: @origin; // IE9 only
184
- transform-origin: @origin;
185
- }
186
-
187
-
188
- // Transitions
189
-
190
- .transition(@transition) {
191
- -webkit-transition: @transition;
192
- -o-transition: @transition;
193
- transition: @transition;
194
- }
195
- .transition-property(@transition-property) {
196
- -webkit-transition-property: @transition-property;
197
- transition-property: @transition-property;
198
- }
199
- .transition-delay(@transition-delay) {
200
- -webkit-transition-delay: @transition-delay;
201
- transition-delay: @transition-delay;
202
- }
203
- .transition-duration(@transition-duration) {
204
- -webkit-transition-duration: @transition-duration;
205
- transition-duration: @transition-duration;
206
- }
207
- .transition-timing-function(@timing-function) {
208
- -webkit-transition-timing-function: @timing-function;
209
- transition-timing-function: @timing-function;
210
- }
211
- .transition-transform(@transition) {
212
- -webkit-transition: -webkit-transform @transition;
213
- -moz-transition: -moz-transform @transition;
214
- -o-transition: -o-transform @transition;
215
- transition: transform @transition;
216
- }
217
-
218
-
219
- // User select
220
- // For selecting text on the page
221
-
222
- .user-select(@select) {
223
- -webkit-user-select: @select;
224
- -moz-user-select: @select;
225
- -ms-user-select: @select; // IE10+
226
- user-select: @select;
227
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/form-builder/assets/less/variables.less DELETED
@@ -1,8 +0,0 @@
1
- // WP Admin UI colors //
2
- @borderColor: #cccccc;
3
- @htmlBG: #f1f1f1;
4
- @wpBlue: #0073aa;
5
- @wpRed: #d54e21;
6
- @wpGreen: #46b450;
7
- @wpBlack: #23282d;
8
- @wpYellow: #ffb900;
 
 
 
 
 
 
 
 
admin/form-builder/class-wpuf-admin-form-builder-ajax.php CHANGED
@@ -27,16 +27,26 @@ class WPUF_Admin_Form_Builder_Ajax {
27
 
28
  if ( ! wp_verify_nonce( $form_data['wpuf_form_builder_nonce'], 'wpuf_form_builder_save_form' ) ) {
29
  wp_send_json_error( __( 'Unauthorized operation', 'wpuf' ) );
30
- exit;
31
  }
32
 
33
  if ( empty( $form_data['wpuf_form_id'] ) ) {
34
  wp_send_json_error( __( 'Invalid form id', 'wpuf' ) );
35
- exit;
36
  }
37
 
38
  $form_fields = isset( $_POST['form_fields'] ) ? $_POST['form_fields'] : '';
39
  $notifications = isset( $_POST['notifications'] ) ? $_POST['notifications'] : '';
 
 
 
 
 
 
 
 
 
 
 
 
40
 
41
  $form_fields = wp_unslash( $form_fields );
42
  $notifications = wp_unslash( $notifications );
@@ -48,15 +58,15 @@ class WPUF_Admin_Form_Builder_Ajax {
48
  'form_id' => absint( $form_data['wpuf_form_id'] ),
49
  'post_title' => sanitize_text_field( $form_data['post_title'] ),
50
  'form_fields' => $form_fields,
51
- 'form_settings' => isset( $form_data['wpuf_settings'] ) ? $form_data['wpuf_settings'] : array(),
52
  'form_settings_key' => isset( $form_data['form_settings_key'] ) ? $form_data['form_settings_key'] : '',
53
- 'notifications' => $notifications
 
54
  );
55
 
56
  $form_fields = WPUF_Admin_Form_Builder::save_form( $data );
57
 
58
  wp_send_json_success( array( 'form_fields' => $form_fields ) );
59
- exit;
60
  }
61
 
62
  }
27
 
28
  if ( ! wp_verify_nonce( $form_data['wpuf_form_builder_nonce'], 'wpuf_form_builder_save_form' ) ) {
29
  wp_send_json_error( __( 'Unauthorized operation', 'wpuf' ) );
 
30
  }
31
 
32
  if ( empty( $form_data['wpuf_form_id'] ) ) {
33
  wp_send_json_error( __( 'Invalid form id', 'wpuf' ) );
 
34
  }
35
 
36
  $form_fields = isset( $_POST['form_fields'] ) ? $_POST['form_fields'] : '';
37
  $notifications = isset( $_POST['notifications'] ) ? $_POST['notifications'] : '';
38
+ $settings = array();
39
+ $integrations = array();
40
+
41
+ if ( isset( $_POST['settings'] ) ) {
42
+ $settings = (array) json_decode( wp_unslash( $_POST['settings'] ) );
43
+ } else {
44
+ $settings = isset( $form_data['wpuf_settings'] ) ? $form_data['wpuf_settings'] : array();
45
+ }
46
+
47
+ if ( isset( $_POST['integrations'] ) ) {
48
+ $integrations = (array) json_decode( wp_unslash( $_POST['integrations'] ) );
49
+ }
50
 
51
  $form_fields = wp_unslash( $form_fields );
52
  $notifications = wp_unslash( $notifications );
58
  'form_id' => absint( $form_data['wpuf_form_id'] ),
59
  'post_title' => sanitize_text_field( $form_data['post_title'] ),
60
  'form_fields' => $form_fields,
61
+ 'form_settings' => $settings,
62
  'form_settings_key' => isset( $form_data['form_settings_key'] ) ? $form_data['form_settings_key'] : '',
63
+ 'notifications' => $notifications,
64
+ 'integrations' => $integrations
65
  );
66
 
67
  $form_fields = WPUF_Admin_Form_Builder::save_form( $data );
68
 
69
  wp_send_json_success( array( 'form_fields' => $form_fields ) );
 
70
  }
71
 
72
  }
admin/form-builder/class-wpuf-admin-form-builder.php CHANGED
@@ -139,7 +139,9 @@ class WPUF_Admin_Form_Builder {
139
  'field_settings' => WPUF_Form_Builder_Field_Settings::get_field_settings(),
140
  'notifications' => wpuf_get_form_notifications( $post->ID ),
141
  'pro_link' => WPUF_Pro_Prompt::get_pro_url(),
142
- 'site_url' => site_url('/')
 
 
143
  ) );
144
 
145
  wp_localize_script( 'wpuf-form-builder-mixins', 'wpuf_form_builder', $wpuf_form_builder );
@@ -199,25 +201,8 @@ class WPUF_Admin_Form_Builder {
199
  */
200
  public function admin_footer() {
201
  // get all vue component names
202
- $path = WPUF_ROOT . '/admin/form-builder/assets/js/components';
203
 
204
- $components = array();
205
-
206
- // directory handle
207
- $dir = dir( $path );
208
-
209
- while ( $entry = $dir->read() ) {
210
- if ( $entry !== '.' && $entry !== '..' ) {
211
- if ( is_dir( $path . '/' . $entry ) ) {
212
- $components[] = $entry;
213
- }
214
- }
215
- }
216
-
217
- // html templates of vue components
218
- foreach ( $components as $component ) {
219
- self::include_js_template( $component );
220
- }
221
 
222
  do_action( 'wpuf-form-builder-add-js-templates' );
223
  }
@@ -240,28 +225,6 @@ class WPUF_Admin_Form_Builder {
240
  wp_deregister_script( 'imagify-js-sweetalert' );
241
  }
242
 
243
- /**
244
- * Embed a Vue.js component template
245
- *
246
- * @since 2.5
247
- *
248
- * @param string $template
249
- * @param string $file_path
250
- *
251
- * @return void
252
- */
253
- public static function include_js_template( $template, $file_path = '' ) {
254
- $file_path = $file_path ? untrailingslashit( $file_path ) : WPUF_ROOT . '/admin/form-builder/assets/js/components';
255
-
256
- $file_path = $file_path . '/' . $template . '/template.php';
257
-
258
- if ( file_exists( $file_path ) ) {
259
- echo '<script type="text/x-template" id="tmpl-wpuf-' . $template . '">' . "\n";
260
- include apply_filters( 'wpuf-form-builder-js-template-path', $file_path, $template );
261
- echo "\n" . '</script>' . "\n";
262
- }
263
- }
264
-
265
  /**
266
  * Include form builder view template
267
  *
@@ -333,7 +296,7 @@ class WPUF_Admin_Form_Builder {
333
  */
334
  private function get_others_fields() {
335
  $fields = apply_filters( 'wpuf-form-builder-fields-others-fields', array(
336
- 'section_break', 'custom_html'
337
  ) );
338
 
339
  return array(
@@ -435,6 +398,7 @@ class WPUF_Admin_Form_Builder {
435
 
436
  update_post_meta( $data['form_id'], $data['form_settings_key'], $data['form_settings'] );
437
  update_post_meta( $data['form_id'], 'notifications', $data['notifications'] );
 
438
 
439
  return $saved_wpuf_inputs;
440
  }
139
  'field_settings' => WPUF_Form_Builder_Field_Settings::get_field_settings(),
140
  'notifications' => wpuf_get_form_notifications( $post->ID ),
141
  'pro_link' => WPUF_Pro_Prompt::get_pro_url(),
142
+ 'site_url' => site_url('/'),
143
+ 'recaptcha_site' => wpuf_get_option( 'recaptcha_public', 'wpuf_general' ),
144
+ 'recaptcha_secret' => wpuf_get_option( 'recaptcha_private', 'wpuf_general' ),
145
  ) );
146
 
147
  wp_localize_script( 'wpuf-form-builder-mixins', 'wpuf_form_builder', $wpuf_form_builder );
201
  */
202
  public function admin_footer() {
203
  // get all vue component names
 
204
 
205
+ include WPUF_ROOT . '/assets/js-templates/form-components.php';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
206
 
207
  do_action( 'wpuf-form-builder-add-js-templates' );
208
  }
225
  wp_deregister_script( 'imagify-js-sweetalert' );
226
  }
227
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
228
  /**
229
  * Include form builder view template
230
  *
296
  */
297
  private function get_others_fields() {
298
  $fields = apply_filters( 'wpuf-form-builder-fields-others-fields', array(
299
+ 'section_break', 'custom_html', 'recaptcha'
300
  ) );
301
 
302
  return array(
398
 
399
  update_post_meta( $data['form_id'], $data['form_settings_key'], $data['form_settings'] );
400
  update_post_meta( $data['form_id'], 'notifications', $data['notifications'] );
401
+ update_post_meta( $data['form_id'], 'integrations', $data['integrations'] );
402
 
403
  return $saved_wpuf_inputs;
404
  }
admin/form-builder/class-wpuf-form-builder-field-settings.php CHANGED
@@ -24,7 +24,8 @@ class WPUF_Form_Builder_Field_Settings {
24
  'custom_hidden_field' => self::custom_hidden_field(),
25
  'image_upload' => self::image_upload(),
26
  'section_break' => self::section_break(),
27
- 'custom_html' => self::custom_html()
 
28
  ) );
29
  }
30
 
@@ -549,7 +550,7 @@ class WPUF_Form_Builder_Field_Settings {
549
  'icon' => 'link',
550
  'settings' => $settings,
551
  'field_props' => array(
552
- 'input_type' => 'text',
553
  'template' => 'website_url',
554
  'required' => 'no',
555
  'label' => __( 'URL', 'wpuf' ),
@@ -584,7 +585,7 @@ class WPUF_Form_Builder_Field_Settings {
584
  'icon' => 'envelope-o',
585
  'settings' => $settings,
586
  'field_props' => array(
587
- 'input_type' => 'text',
588
  'template' => 'email_address',
589
  'required' => 'no',
590
  'label' => __( 'Email', 'wpuf' ),
@@ -782,4 +783,63 @@ class WPUF_Form_Builder_Field_Settings {
782
  )
783
  );
784
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
785
  }
24
  'custom_hidden_field' => self::custom_hidden_field(),
25
  'image_upload' => self::image_upload(),
26
  'section_break' => self::section_break(),
27
+ 'custom_html' => self::custom_html(),
28
+ 'recaptcha' => self::recaptcha(),
29
  ) );
30
  }
31
 
550
  'icon' => 'link',
551
  'settings' => $settings,
552
  'field_props' => array(
553
+ 'input_type' => 'url',
554
  'template' => 'website_url',
555
  'required' => 'no',
556
  'label' => __( 'URL', 'wpuf' ),
585
  'icon' => 'envelope-o',
586
  'settings' => $settings,
587
  'field_props' => array(
588
+ 'input_type' => 'email',
589
  'template' => 'email_address',
590
  'required' => 'no',
591
  'label' => __( 'Email', 'wpuf' ),
783
  )
784
  );
785
  }
786
+
787
+ /**
788
+ * Recaptcha
789
+ *
790
+ * @since 2.5
791
+ *
792
+ * @return array
793
+ */
794
+ public static function recaptcha() {
795
+ $settings = array(
796
+ array(
797
+ 'name' => 'label',
798
+ 'title' => __( 'Title', 'wpuf' ),
799
+ 'type' => 'text',
800
+ 'section' => 'basic',
801
+ 'priority' => 10,
802
+ 'help_text' => __( 'Title of the section', 'wpuf' ),
803
+ ),
804
+
805
+ array(
806
+ 'name' => 'recaptcha_type',
807
+ 'title' => 'reCaptcha type',
808
+ 'type' => 'radio',
809
+ 'options' => array(
810
+ 'enable_no_captcha' => __( 'Enable noCaptcha', 'wpuf' ),
811
+ 'invisible_recaptcha' => __( 'Enable Invisible reCaptcha', 'wpuf' ),
812
+ ),
813
+ 'default' => 'enable_no_captcha',
814
+ 'section' => 'basic',
815
+ 'priority' => 11,
816
+ 'help_text' => __( 'Select reCaptcha type', 'wpuf' ),
817
+ )
818
+ );
819
+
820
+ return array(
821
+ 'template' => 'recaptcha',
822
+ 'title' => __( 'reCaptcha', 'wpuf' ),
823
+ 'validator' => array(
824
+ 'callback' => 'has_recaptcha_api_keys',
825
+ 'button_class' => 'button-faded',
826
+ 'msg_title' => __( 'Site key and Secret key', 'wpuf' ),
827
+ 'msg' => sprintf(
828
+ __( 'You need to set Site key and Secret key in <a href="%s" target="_blank">Settings</a> in order to use "Recaptcha" field. <a href="%s" target="_blank">Click here to get the these key</a>.', 'wpuf' ),
829
+ admin_url( 'admin.php?page=wpuf-settings' ),
830
+ 'https://www.google.com/recaptcha/'
831
+ ),
832
+ ),
833
+ 'settings' => $settings,
834
+ 'field_props' => array(
835
+ 'input_type' => 'recaptcha',
836
+ 'template' => 'recaptcha',
837
+ 'label' => '',
838
+ 'recaptcha_type' => 'enable_no_captcha',
839
+ 'id' => 0,
840
+ 'is_new' => true,
841
+ 'wpuf_cond' => self::get_wpuf_cond_prop(),
842
+ )
843
+ );
844
+ }
845
  }
admin/form-template.php CHANGED
@@ -44,7 +44,7 @@ class WPUF_Admin_Form_Template {
44
  return;
45
  }
46
 
47
- wp_enqueue_style( 'wpuf-formbuilder', WPUF_ASSET_URI . '/css/formbuilder.css' );
48
  }
49
 
50
  /**
@@ -60,8 +60,7 @@ class WPUF_Admin_Form_Template {
60
  $registry = wpuf_get_post_form_templates();
61
  $blank_form_url = admin_url( 'admin.php?page=wpuf-post-forms&action=add-new' );
62
  $action_name = 'wpuf_post_form_template';
63
- $footer_help = sprintf( __( 'List of available templates can be found <a href="%s" target="_blank">here</a>.', 'wpuf' ), 'http://docs.wedevs.com/?p=4390' );
64
- $footer_help .= sprintf( __( 'Want a new integration? <a href="%s" target="_blank">Let us know</a>.', 'wpuf'), 'mailto:support@wedevs.com?subject=WPUF Custom Post Template Integration Request' );
65
 
66
  if ( ! $registry ) {
67
  return;
44
  return;
45
  }
46
 
47
+ wp_enqueue_style( 'wpuf-formbuilder', WPUF_ASSET_URI . '/css/wpuf-form-builder.css' );
48
  }
49
 
50
  /**
60
  $registry = wpuf_get_post_form_templates();
61
  $blank_form_url = admin_url( 'admin.php?page=wpuf-post-forms&action=add-new' );
62
  $action_name = 'wpuf_post_form_template';
63
+ $footer_help = sprintf( __( 'Want a new integration? <a href="%s" target="_blank">Let us know</a>.', 'wpuf'), 'mailto:support@wedevs.com?subject=WPUF Custom Post Template Integration Request' );
 
64
 
65
  if ( ! $registry ) {
66
  return;
admin/form.php CHANGED
@@ -142,7 +142,7 @@ class WPUF_Admin_Form {
142
  }
143
 
144
  if ( 'add-new' === $_GET['action'] && empty( $_GET['id'] ) ) {
145
- $form_id = wpuf_create_sample_form( 'Sample Form', 'wpuf_forms', true );
146
  $add_new_page_url = add_query_arg( array( 'id' => $form_id ), admin_url( 'admin.php?page=wpuf-post-forms&action=edit' ) );
147
  wp_redirect( $add_new_page_url );
148
  }
@@ -472,7 +472,7 @@ class WPUF_Admin_Form {
472
  */
473
  public function add_to_localize_script( $data ) {
474
  return array_merge( $data, array(
475
- 'wp_post_types' => $this->wp_post_types
476
  ) );
477
  }
478
 
142
  }
143
 
144
  if ( 'add-new' === $_GET['action'] && empty( $_GET['id'] ) ) {
145
+ $form_id = wpuf_create_sample_form( 'Sample Form', 'wpuf_forms', true );
146
  $add_new_page_url = add_query_arg( array( 'id' => $form_id ), admin_url( 'admin.php?page=wpuf-post-forms&action=edit' ) );
147
  wp_redirect( $add_new_page_url );
148
  }
472
  */
473
  public function add_to_localize_script( $data ) {
474
  return array_merge( $data, array(
475
+ 'wp_post_types' => $this->wp_post_types
476
  ) );
477
  }
478
 
admin/html/form-settings-post.php CHANGED
@@ -56,6 +56,11 @@ $subscription_disabled = isset( $form_settings['subscription_disabled'] ) ? $for
56
  unset($post_types['nav_menu_item']);
57
  unset($post_types['wpuf_forms']);
58
  unset($post_types['wpuf_profile']);
 
 
 
 
 
59
 
60
  foreach ($post_types as $post_type) {
61
  printf('<option value="%s"%s>%s</option>', $post_type, selected( $post_type_selected, $post_type, false ), $post_type );
56
  unset($post_types['nav_menu_item']);
57
  unset($post_types['wpuf_forms']);
58
  unset($post_types['wpuf_profile']);
59
+ unset($post_types['wpuf_input']);
60
+ unset($post_types['wpuf_subscription']);
61
+ unset($post_types['custom_css']);
62
+ unset($post_types['customize_changeset']);
63
+ unset($post_types['wpuf_coupon']);
64
 
65
  foreach ($post_types as $post_type) {
66
  printf('<option value="%s"%s>%s</option>', $post_type, selected( $post_type_selected, $post_type, false ), $post_type );
admin/post-forms-list-table.php CHANGED
@@ -1,4 +1,9 @@
1
  <?php
 
 
 
 
 
2
  /**
3
  * Post Forms list table class
4
  *
@@ -66,7 +71,7 @@ class WPUF_Admin_Post_Forms_List_Table extends WP_List_Table {
66
  break;
67
 
68
  default:
69
- $count = $post_counts[ $status ];
70
  break;
71
  }
72
 
1
  <?php
2
+
3
+ if ( ! class_exists( 'WP_List_Table' ) ) {
4
+ require_once ABSPATH . 'wp-admin/includes/class-wp-list-table.php';
5
+ }
6
+
7
  /**
8
  * Post Forms list table class
9
  *
71
  break;
72
 
73
  default:
74
+ $count = isset( $post_counts[ $status ] ) ? $post_counts[ $status ] : 0;
75
  break;
76
  }
77
 
admin/posting.php CHANGED
@@ -10,21 +10,31 @@
10
  */
11
  class WPUF_Admin_Posting extends WPUF_Render_Form {
12
 
 
 
13
  function __construct() {
14
  // meta boxes
15
- add_action( 'add_meta_boxes', array($this, 'add_meta_boxes') );
16
- add_action( 'add_meta_boxes', array($this, 'add_meta_box_form_select') );
17
 
18
- add_action( 'admin_enqueue_scripts', array($this, 'enqueue_script') );
19
 
20
- add_action( 'save_post', array($this, 'save_meta'), 1, 2 ); // save the custom fields
21
  add_action( 'save_post', array( $this, 'form_selection_metabox_save' ), 1, 2 ); // save edit form id
22
  }
23
 
 
 
 
 
 
 
 
 
24
  function enqueue_script() {
25
  global $pagenow;
26
 
27
- if ( !in_array( $pagenow, array('profile.php', 'post-new.php', 'post.php', 'user-edit.php') ) ) {
28
  return;
29
  }
30
 
@@ -189,9 +199,8 @@ class WPUF_Admin_Posting extends WPUF_Render_Form {
189
  $form_id = get_post_meta( $post->ID, '_wpuf_form_id', true );
190
  $form_settings = wpuf_get_form_settings( $form_id );
191
 
192
-
193
  // hide the metabox itself if no form ID is set
194
- if ( !$form_id ) {
195
  $this->hide_form();
196
  return;
197
  }
@@ -407,13 +416,17 @@ class WPUF_Admin_Posting extends WPUF_Render_Form {
407
  *
408
  * @since 2.5
409
  *
410
- * @param int $post_id
411
  * @param object $post
412
  *
413
  * @return void
414
  */
415
  // Save the Metabox Data
416
  function save_meta( $post_id, $post ) {
 
 
 
 
 
417
  if ( !isset( $_POST['wpuf_cf_update'] ) ) {
418
  return $post->ID;
419
  }
@@ -423,8 +436,9 @@ class WPUF_Admin_Posting extends WPUF_Render_Form {
423
  }
424
 
425
  // Is the user allowed to edit the post or page?
426
- if ( !current_user_can( 'edit_post', $post->ID ) )
427
  return $post->ID;
 
428
 
429
  list( $post_vars, $tax_vars, $meta_vars ) = self::get_input_fields( $_POST['wpuf_cf_form_id'] );
430
 
10
  */
11
  class WPUF_Admin_Posting extends WPUF_Render_Form {
12
 
13
+ private static $_instance;
14
+
15
  function __construct() {
16
  // meta boxes
17
+ add_action( 'add_meta_boxes', array( $this, 'add_meta_boxes') );
18
+ add_action( 'add_meta_boxes', array( $this, 'add_meta_box_form_select') );
19
 
20
+ add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_script') );
21
 
22
+ add_action( 'save_post', array( $this, 'save_meta'), 1, 2 ); // save the custom fields
23
  add_action( 'save_post', array( $this, 'form_selection_metabox_save' ), 1, 2 ); // save edit form id
24
  }
25
 
26
+ public static function init() {
27
+ if ( !self::$_instance ) {
28
+ self::$_instance = new self();
29
+ }
30
+
31
+ return self::$_instance;
32
+ }
33
+
34
  function enqueue_script() {
35
  global $pagenow;
36
 
37
+ if ( !in_array( $pagenow, array( 'profile.php', 'post-new.php', 'post.php', 'user-edit.php' ) ) ) {
38
  return;
39
  }
40
 
199
  $form_id = get_post_meta( $post->ID, '_wpuf_form_id', true );
200
  $form_settings = wpuf_get_form_settings( $form_id );
201
 
 
202
  // hide the metabox itself if no form ID is set
203
+ if ( !$form_id || class_exists('acf') ) {
204
  $this->hide_form();
205
  return;
206
  }
416
  *
417
  * @since 2.5
418
  *
 
419
  * @param object $post
420
  *
421
  * @return void
422
  */
423
  // Save the Metabox Data
424
  function save_meta( $post_id, $post ) {
425
+
426
+ if ( !isset( $post->ID ) ) {
427
+ return;
428
+ }
429
+
430
  if ( !isset( $_POST['wpuf_cf_update'] ) ) {
431
  return $post->ID;
432
  }
436
  }
437
 
438
  // Is the user allowed to edit the post or page?
439
+ if ( !current_user_can( 'edit_post', $post->ID ) ) {
440
  return $post->ID;
441
+ }
442
 
443
  list( $post_vars, $tax_vars, $meta_vars ) = self::get_input_fields( $_POST['wpuf_cf_form_id'] );
444
 
admin/settings-options.php CHANGED
@@ -24,10 +24,6 @@ function wpuf_settings_sections() {
24
  'id' => 'wpuf_payment',
25
  'title' => __( 'Payments', 'wpuf' )
26
  ),
27
- array(
28
- 'id' => 'wpuf_support',
29
- 'title' => __( 'Support', 'wpuf' )
30
- ),
31
  );
32
 
33
  return apply_filters( 'wpuf_settings_sections', $sections );
@@ -48,13 +44,6 @@ function wpuf_settings_fields() {
48
 
49
  $settings_fields = array(
50
  'wpuf_general' => apply_filters( 'wpuf_options_others', array(
51
- array(
52
- 'name' => 'fixed_form_element',
53
- 'label' => __( 'Fixed Form Elements ', 'wpuf' ),
54
- 'desc' => __( 'Show fixed form elements sidebar in form editor', 'wpuf' ),
55
- 'type' => 'checkbox',
56
- 'default' => 'on'
57
- ),
58
  array(
59
  'name' => 'edit_page_id',
60
  'label' => __( 'Edit Page', 'wpuf' ),
@@ -89,7 +78,7 @@ function wpuf_settings_fields() {
89
  'label' => __( 'Override the post edit link', 'wpuf' ),
90
  'desc' => __( 'Users see the edit link in post if s/he is capable to edit the post/page. Selecting <strong>Yes</strong> will override the default WordPress edit post link in frontend', 'wpuf' ),
91
  'type' => 'select',
92
- 'default' => 'yes',
93
  'options' => array(
94
  'yes' => __( 'Yes', 'wpuf' ),
95
  'no' => __( 'No', 'wpuf' )
@@ -151,11 +140,6 @@ function wpuf_settings_fields() {
151
  'label' => __( 'reCAPTCHA Secret Key', 'wpuf' ),
152
  'desc' => __( '<a target="_blank" href="https://www.google.com/recaptcha/">Register here</a> to get reCaptcha Site and Secret keys.', 'wpuf' ),
153
  ),
154
- array(
155
- 'name' => 'gmap_api_key',
156
- 'label' => __( 'Google Map API', 'wpuf' ),
157
- 'desc' => __( '<a target="_blank" href="https://developers.google.com/maps/documentation/javascript">API</a> key is needed to render Google Maps', 'wpuf' ),
158
- ),
159
  array(
160
  'name' => 'custom_css',
161
  'label' => __( 'Custom CSS codes', 'wpuf' ),
@@ -382,27 +366,6 @@ function wpuf_settings_fields() {
382
  'options' => wpuf_get_gateways()
383
  )
384
  ) ),
385
- 'wpuf_support' => apply_filters( 'wpuf_options_support', array(
386
- array(
387
- 'name' => 'support',
388
- 'label' => __( 'Need Help?', 'wpuf' ),
389
- 'type' => 'html',
390
- 'desc' => '
391
- <ul>
392
- <li>
393
- <strong>Step 1: <a target="_blank" href="http://docs.wedevs.com/">Read Documentation and FAQ</a></strong>
394
- <p>We have created detailed step by step documentation for all the features (including docs for developers). We have also answered all possible FAQ queries based on user request. We hope you will find what you are looking for. If not, please continue to Step 2.</p>
395
- </li>
396
- <br/>
397
- <li>
398
- <strong>Step 2: <a href="https://wedevs.com/account/tickets" target="_blank">Create a Support Ticket</a></strong>
399
- <p>We reply from <code>10am to 6pm (GMT+6)</code> except <code><strong>Friday</strong></code>. Our responses are usually under 12 hours to as quick as 1 hour depending on channel pressure.</p>
400
- <p>When you are creating a ticket, please care to include a screenshot of the issue if possible and write the problem as specificly as you can. This will help us track and solve your trouble quickly.
401
- </p>
402
- </li>
403
- </ul>'
404
- )
405
- ) ),
406
  );
407
 
408
  return apply_filters( 'wpuf_settings_fields', $settings_fields );
24
  'id' => 'wpuf_payment',
25
  'title' => __( 'Payments', 'wpuf' )
26
  ),
 
 
 
 
27
  );
28
 
29
  return apply_filters( 'wpuf_settings_sections', $sections );
44
 
45
  $settings_fields = array(
46
  'wpuf_general' => apply_filters( 'wpuf_options_others', array(
 
 
 
 
 
 
 
47
  array(
48
  'name' => 'edit_page_id',
49
  'label' => __( 'Edit Page', 'wpuf' ),
78
  'label' => __( 'Override the post edit link', 'wpuf' ),
79
  'desc' => __( 'Users see the edit link in post if s/he is capable to edit the post/page. Selecting <strong>Yes</strong> will override the default WordPress edit post link in frontend', 'wpuf' ),
80
  'type' => 'select',
81
+ 'default' => 'no',
82
  'options' => array(
83
  'yes' => __( 'Yes', 'wpuf' ),
84
  'no' => __( 'No', 'wpuf' )
140
  'label' => __( 'reCAPTCHA Secret Key', 'wpuf' ),
141
  'desc' => __( '<a target="_blank" href="https://www.google.com/recaptcha/">Register here</a> to get reCaptcha Site and Secret keys.', 'wpuf' ),
142
  ),
 
 
 
 
 
143
  array(
144
  'name' => 'custom_css',
145
  'label' => __( 'Custom CSS codes', 'wpuf' ),
366
  'options' => wpuf_get_gateways()
367
  )
368
  ) ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
369
  );
370
 
371
  return apply_filters( 'wpuf_settings_fields', $settings_fields );
admin/settings.php CHANGED
@@ -51,10 +51,10 @@ class WPUF_Admin_Settings {
51
  */
52
  function admin_menu() {
53
  $capability = wpuf_admin_role();
 
 
54
 
55
- add_menu_page( __( 'WP User Frontend', 'wpuf' ), __( 'User Frontend', 'wpuf' ), $capability, 'wp-user-frontend', array($this, 'wpuf_post_forms_page'), 'dashicons-exerpt-view', 55 );
56
-
57
- add_submenu_page( 'wp-user-frontend', __( 'Post Forms', 'wpuf' ), __( 'Post Forms' ), $capability, 'wpuf-post-forms', array( $this, 'wpuf_post_forms_page' ) );
58
  remove_submenu_page( 'wp-user-frontend', 'wp-user-frontend' );
59
 
60
  /**
@@ -62,6 +62,10 @@ class WPUF_Admin_Settings {
62
  */
63
  do_action( 'wpuf_admin_menu_top' );
64
 
 
 
 
 
65
  add_submenu_page( 'wp-user-frontend', __( 'Subscriptions', 'wpuf' ), __( 'Subscriptions', 'wpuf' ), $capability, 'edit.php?post_type=wpuf_subscription' );
66
 
67
  do_action( 'wpuf_admin_menu' );
@@ -69,6 +73,7 @@ class WPUF_Admin_Settings {
69
  $transactions_page = add_submenu_page( 'wp-user-frontend', __( 'Transactions', 'wpuf' ), __( 'Transactions', 'wpuf' ), $capability, 'wpuf_transaction', array($this, 'transactions_page') );
70
  add_submenu_page( 'wp-user-frontend', __( 'Add-ons', 'wpuf' ), __( 'Add-ons', 'wpuf' ), $capability, 'wpuf_addons', array($this, 'addons_page') );
71
  add_submenu_page( 'wp-user-frontend', __( 'Tools', 'wpuf' ), __( 'Tools', 'wpuf' ), $capability, 'wpuf_tools', array($this, 'tools_page') );
 
72
  add_submenu_page( 'wp-user-frontend', __( 'Settings', 'wpuf' ), __( 'Settings', 'wpuf' ), $capability, 'wpuf-settings', array($this, 'plugin_page') );
73
 
74
  add_action( "load-$transactions_page", array( $this, 'transactions_screen_option' ) );
@@ -123,7 +128,7 @@ class WPUF_Admin_Settings {
123
  * @return void
124
  */
125
  function wpuf_post_forms_page() {
126
- $action = isset( $_GET['action'] ) ? $_GET['action'] : null;
127
  $add_new_page_url = admin_url( 'admin.php?page=wpuf-post-forms&action=add-new' );
128
 
129
  switch ( $action ) {
@@ -145,20 +150,31 @@ class WPUF_Admin_Settings {
145
  require_once dirname( dirname( __FILE__ ) ) . '/admin/subscription.php';
146
  }
147
 
 
 
 
 
148
  function addons_page() {
149
  require_once dirname( dirname( __FILE__ ) ) . '/admin/add-ons.php';
150
  }
151
 
152
  function tools_page() {
153
- require_once dirname( dirname( __FILE__ ) ) . '/admin/tools.php';
 
 
 
 
154
  }
155
 
156
  /**
157
  * highlight the proper top level menu
158
  *
159
  * @link http://wordpress.org/support/topic/moving-taxonomy-ui-to-another-main-menu?replies=5#post-2432769
 
160
  * @global obj $current_screen
 
161
  * @param string $parent_file
 
162
  * @return string
163
  */
164
  function fix_parent_menu( $parent_file ) {
@@ -273,6 +289,10 @@ class WPUF_Admin_Settings {
273
 
274
  add_screen_option( $option, $args );
275
 
 
 
 
 
276
  $this->transactions_list_table_obj = new WPUF_Transactions_List_Table();
277
  }
278
 
51
  */
52
  function admin_menu() {
53
  $capability = wpuf_admin_role();
54
+ // Translation issue: Hook name change due to translate menu title
55
+ add_menu_page( __( 'WP User Frontend', 'wpuf' ), __( 'User Frontend', '' ), $capability, 'wp-user-frontend', array($this, 'wpuf_post_forms_page'), 'data:image/svg+xml;base64,' . base64_encode( '<svg width="83px" height="76px" viewBox="0 0 83 76" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g id="wpuf-icon" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="ufp" fill-rule="nonzero" fill="#9EA3A8"><path d="M49.38,51.88 C49.503348,56.4604553 45.8999295,60.2784694 41.32,60.42 C36.7400705,60.2784694 33.136652,56.4604553 33.26,51.88 L33.26,40.23 L19,40.23 L19,51.88 C19,64.77 29,75.25 41.36,75.26 L41.36,75.26 C47.3622079,75.2559227 53.0954073,72.7693647 57.2,68.39 C61.4213559,63.9375842 63.7575868,58.0253435 63.72,51.89 L63.72,40.23 L49.38,40.23 L49.38,51.88 Z" id="Shape"></path><polygon id="Shape" points="32.96 0.59 0 0.59 3.77 16.68 32.96 16.68"></polygon><path d="M68,0 L49.75,0 L49.75,16.1 L68,16.1 C68.74,16.1 69.39,17.1 69.39,18.24 C69.39,19.38 68.74,20.38 68,20.38 L49.75,20.38 L49.75,36.5 L68,36.5 C76,36.5 82.5,28.31 82.5,18.25 C82.5,8.19 76,0 68,0 Z" id="Shape"></path><polygon id="Shape" points="32.96 20.41 5.31 20.41 9.07 36.5 32.96 36.5"></polygon></g></g></svg>' ), 55 );
56
 
57
+ add_submenu_page( 'wp-user-frontend', __( 'Post Forms', 'wpuf' ), __( 'Post Forms', 'wpuf' ), $capability, 'wpuf-post-forms', array( $this, 'wpuf_post_forms_page' ) );
 
 
58
  remove_submenu_page( 'wp-user-frontend', 'wp-user-frontend' );
59
 
60
  /**
62
  */
63
  do_action( 'wpuf_admin_menu_top' );
64
 
65
+ if ( !class_exists( 'WeForms' ) ) {
66
+ add_submenu_page( 'wp-user-frontend', __( 'weForms', 'wpuf' ), __( 'Contact Form', 'wpuf' ), $capability, 'wpuf_weforms', array($this, 'weforms_page') );
67
+ }
68
+
69
  add_submenu_page( 'wp-user-frontend', __( 'Subscriptions', 'wpuf' ), __( 'Subscriptions', 'wpuf' ), $capability, 'edit.php?post_type=wpuf_subscription' );
70
 
71
  do_action( 'wpuf_admin_menu' );
73
  $transactions_page = add_submenu_page( 'wp-user-frontend', __( 'Transactions', 'wpuf' ), __( 'Transactions', 'wpuf' ), $capability, 'wpuf_transaction', array($this, 'transactions_page') );
74
  add_submenu_page( 'wp-user-frontend', __( 'Add-ons', 'wpuf' ), __( 'Add-ons', 'wpuf' ), $capability, 'wpuf_addons', array($this, 'addons_page') );
75
  add_submenu_page( 'wp-user-frontend', __( 'Tools', 'wpuf' ), __( 'Tools', 'wpuf' ), $capability, 'wpuf_tools', array($this, 'tools_page') );
76
+ add_submenu_page( 'wp-user-frontend', __( 'Support', 'wpuf' ), __( 'Support', 'wpuf' ), $capability, 'wpuf-support', array($this, 'support_page') );
77
  add_submenu_page( 'wp-user-frontend', __( 'Settings', 'wpuf' ), __( 'Settings', 'wpuf' ), $capability, 'wpuf-settings', array($this, 'plugin_page') );
78
 
79
  add_action( "load-$transactions_page", array( $this, 'transactions_screen_option' ) );
128
  * @return void
129
  */
130
  function wpuf_post_forms_page() {
131
+ $action = isset( $_GET['action'] ) ? $_GET['action'] : null;
132
  $add_new_page_url = admin_url( 'admin.php?page=wpuf-post-forms&action=add-new' );
133
 
134
  switch ( $action ) {
150
  require_once dirname( dirname( __FILE__ ) ) . '/admin/subscription.php';
151
  }
152
 
153
+ function weforms_page() {
154
+ require_once dirname( dirname( __FILE__ ) ) . '/admin/weforms.php';
155
+ }
156
+
157
  function addons_page() {
158
  require_once dirname( dirname( __FILE__ ) ) . '/admin/add-ons.php';
159
  }
160
 
161
  function tools_page() {
162
+ include dirname( dirname( __FILE__ ) ) . '/admin/tools.php';
163
+ }
164
+
165
+ function support_page() {
166
+ require_once dirname( dirname( __FILE__ ) ) . '/admin/support.php';
167
  }
168
 
169
  /**
170
  * highlight the proper top level menu
171
  *
172
  * @link http://wordpress.org/support/topic/moving-taxonomy-ui-to-another-main-menu?replies=5#post-2432769
173
+ *
174
  * @global obj $current_screen
175
+ *
176
  * @param string $parent_file
177
+ *
178
  * @return string
179
  */
180
  function fix_parent_menu( $parent_file ) {
289
 
290
  add_screen_option( $option, $args );
291
 
292
+ if ( ! class_exists( 'WPUF_Transactions_List_Table' ) ) {
293
+ require_once WPUF_ROOT . '/class/transactions-list-table.php';
294
+ }
295
+
296
  $this->transactions_list_table_obj = new WPUF_Transactions_List_Table();
297
  }
298
 
admin/support.php ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <div class="wrap">
2
+ <h2><?php _e( 'WP User Frontend - Support', 'wpuf' ); ?></h2>
3
+ <table>
4
+ <tr>
5
+ <th class="lebel">
6
+ <?php _e( 'Need Help?', 'wpuf' ); ?>
7
+ </th>
8
+ <td class="description">
9
+ <ul>
10
+ <li>
11
+ <strong><?php printf( __( 'Step 1: ', 'wpuf' ) ); ?><a target="_blank" href="http://docs.wedevs.com/"><?php printf( __( 'Read Documentation and FAQ', 'wpuf' ) ); ?></a></strong>
12
+ <p><?php printf( __( 'We have created detailed step by step documentation for all the features (including docs for developers). We have also answered all possible FAQ queries based on user request. We hope you will find what you are looking for. If not, please continue to Step 2.', 'wpuf' ) ); ?></p>
13
+ </li>
14
+ <br/>
15
+ <li>
16
+ <strong><?php printf( __( 'Step 2: ', 'wpuf' ) ); ?><a href="https://wedevs.com/account/tickets" target="_blank"><?php printf( __( 'Create a Support Ticket', 'wpuf' ) ); ?></a></strong>
17
+ <p><?php printf( __( 'We reply from <code>7am to 3pm (GMT+6)</code> except <code><strong>Friday</strong></code>. Our responses are usually under 12 hours to as quick as 1 hour depending on channel pressure.', 'wpuf' ) ); ?>
18
+ </p>
19
+ <p><?php printf( __( 'When you are creating a ticket, please care to include a screenshot of the issue if possible and write the problem as specificly as you can. This will help us track and solve your trouble quickly.', 'wpuf' ) ); ?>
20
+ </p>
21
+ </li>
22
+ </ul>
23
+ </td>
24
+ </tr>
25
+ </table>
26
+ </div>
27
+
28
+
29
+ <style>
30
+ table{
31
+ margin-top: 20px;
32
+ }
33
+ .lebel{
34
+ width: 20%;
35
+ vertical-align: top;
36
+ text-align: left;
37
+ }
38
+ .description{
39
+ width: 80%;
40
+ vertical-align: top;
41
+ }
42
+ </style>
admin/template.php CHANGED
@@ -658,4 +658,56 @@ class WPUF_Admin_Template {
658
  <?php
659
  }
660
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
661
  }
658
  <?php
659
  }
660
 
661
+ /**
662
+ * Render recaptcha
663
+ * @param $field_id
664
+ * @param $label
665
+ * @param array $values
666
+ */
667
+ public static function recaptcha( $field_id, $label, $values = array() ) {
668
+ $title_name = sprintf( '%s[%d][label]', self::$input_name, $field_id );
669
+ $html_name = sprintf( '%s[%d][html]', self::$input_name, $field_id );
670
+ $recaptcha_type_name = sprintf( '%s[%d][recaptcha_type]', self::$input_name, $field_id );
671
+
672
+ $title_value = $values ? esc_attr( $values['label'] ) : '';
673
+ $html_value = isset( $values['html'] ) ? esc_attr( $values['html'] ) : '';
674
+ $recaptcha_type_value = isset( $values['recaptcha_type'] ) ? esc_attr( $values['recaptcha_type'] ) : ( !empty( $values ) ? '' : 'enable_no_captcha' );
675
+ ?>
676
+ <li class="custom-field custom_html">
677
+ <?php self::legend( $label, $values, $field_id ); ?>
678
+ <?php self::hidden_field( "[$field_id][input_type]", 'recaptcha' ); ?>
679
+ <?php self::hidden_field( "[$field_id][template]", 'recaptcha' ); ?>
680
+
681
+ <div class="wpuf-form-holder">
682
+ <div class="wpuf-form-rows">
683
+ <label><?php _e( 'Title', 'wpuf-pro' ); ?></label>
684
+
685
+ <div class="wpuf-form-sub-fields">
686
+ <input type="text" class="smallipopInput" title="Title of the section" name="<?php echo $title_name; ?>" value="<?php echo esc_attr( $title_value ); ?>" />
687
+
688
+ <div class="description" style="margin-top: 8px;">
689
+ <?php printf( __( "Insert your public key and private key in <a href='%s'>plugin settings</a>. <a href='%s' target='_blank'>Register</a> first if you don't have any keys." ), admin_url( 'admin.php?page=wpuf-settings' ), 'https://www.google.com/recaptcha/' ); ?>
690
+ </div>
691
+ </div> <!-- .wpuf-form-rows -->
692
+ </div>
693
+
694
+ <div class="wpuf-form-rows">
695
+ <label><?php _e( 'reCaptcha type', 'wpuf-pro' ); ?></label>
696
+
697
+ <div class="wpuf-form-sub-fields">
698
+ <input type="radio" class="smallipopInput" title="reCaptcha type" name="<?php echo $recaptcha_type_name; ?>" value="invisible_recaptcha" <?php echo $recaptcha_type_value == 'invisible_recaptcha' ? 'checked':''; ?> />
699
+ <?php _e( 'Enable Invisible reCaptcha', 'wpuf-pro' );?>
700
+ </div> <!-- .wpuf-form-rows -->
701
+ <div class="wpuf-form-sub-fields">
702
+ <input type="radio" class="smallipopInput" title="reCaptcha type" name="<?php echo $recaptcha_type_name; ?>" value="enable_no_captcha" <?php echo $recaptcha_type_value == 'enable_no_captcha' ? 'checked':''; ?> />
703
+ <?php _e( 'Enable noCaptcha', 'wpuf-pro' );?>
704
+ </div> <!-- .wpuf-form-rows -->
705
+ </div>
706
+
707
+ <?php self::conditional_field( $field_id, $values ); ?>
708
+ </div> <!-- .wpuf-form-holder -->
709
+ </li>
710
+ <?php
711
+ }
712
+
713
  }
admin/tools.php CHANGED
@@ -1,407 +1,23 @@
1
  <?php
2
 
3
- /**
4
- * Manage Import Export
5
- *
6
- * @since 2.2
7
- * @package WP User Frontend
8
- */
9
- class WPUF_Admin_Tools {
10
-
11
- /**
12
- * List of All the post forms
13
- *
14
- * @return void
15
- */
16
- function list_forms() {
17
-
18
- if ( isset( $_POST['export'] ) ) {
19
- $this->export_data( $_POST['export_content'], $_POST['formlist'] );
20
- }
21
-
22
- $args = array(
23
- 'post_type' => 'wpuf_forms',
24
- 'posts_per_page' => -1,
25
- 'post_status' => 'publish'
26
- );
27
- $forms = get_posts( $args );
28
-
29
- if ( $forms ) {
30
- ?>
31
- <div class="postbox" style="margin-top: 15px;">
32
- <h3 style="padding:10px 15px"><?php _e( 'Form Export', 'wpuf' ); ?></h3>
33
- <div class="inside">
34
- <div class="main">
35
- <form action="" method="post" style="margin-top: 20px;">
36
- <p>
37
- <input class="export_type" type="radio" name="export_content" value="all" id="wpuf-all_export" checked>
38
- <label for="wpuf-all_export"><?php _e( 'All', 'wpuf' ); ?></label>
39
- </p>
40
-
41
- <p>
42
- <input class="export_type" type="radio" name="export_content" value="selected" id="wpuf-selected_export">
43
- <label for="wpuf-selected_export"><?php _e( 'Select individual', 'wpuf' ); ?></label></p>
44
- <p>
45
- <select class="formlist" name="formlist[]" multiple="multiple">
46
- <?php foreach ( $forms as $form ) { ?>
47
- <option value="<?php echo esc_attr( $form->ID ) ?>"><?php echo esc_attr( $form->post_title ); ?></option>
48
- <?php } ?>
49
- </select>
50
- </p>
51
-
52
- <?php wp_nonce_field( 'wpuf-export-form' ); ?>
53
- <input type="submit" class="button button-primary" name="export" value="<?php _e( 'Export', 'wpuf' ) ?>">
54
- </form>
55
- </div>
56
- </div>
57
- </div>
58
-
59
- <?php
60
- } else {
61
- sprintf( '<p>%s</p>', __( 'Sorry you have no form to export', 'wpuf' ) );
62
- }
63
- }
64
-
65
- /**
66
- * List of All Registration forms
67
- *
68
- * @return void
69
- */
70
- function list_regis_forms() {
71
-
72
- if ( isset( $_POST['export_regis_form'] ) ) {
73
- $this->export_regis_data( $_POST['export_regis_content'], $_POST['formlist'] );
74
- }
75
-
76
- $args = array(
77
- 'post_type' => 'wpuf_profile',
78
- 'posts_per_page' => -1,
79
- 'post_status' => 'publish'
80
- );
81
-
82
- $forms = get_posts( $args );
83
- if ( $forms ) {
84
- ?>
85
- <div class="postbox">
86
- <h3 style="padding:10px 15px"><?php _e( 'Registration Form Export', 'wpuf' ); ?></h3>
87
- <div class="inside">
88
- <div class="main">
89
-
90
- <form action="" method="post" style="margin-top: 20px;">
91
-
92
- <p>
93
- <input class="export_type" type="radio" name="export_regis_content" value="all" id="wpuf-all_regis_export" checked>
94
- <label for="wpuf-all_regis_export"><?php _e( 'All', 'wpuf' ); ?></label>
95
- </p>
96
-
97
- <p>
98
- <input class="export_type" type="radio" name="export_regis_content" value="selected" id="wpuf-selected_regis_export">
99
- <label for="wpuf-selected_regis_export"><?php _e( 'Select individual', 'wpuf' ); ?></label>
100
- </p>
101
-
102
- <p>
103
- <select class="formlist" name="formlist[]" multiple="multiple">
104
- <?php foreach ( $forms as $form ) { ?>
105
- <option value="<?php echo esc_attr( $form->ID ); ?>"><?php echo esc_attr( $form->post_title ); ?></option>";
106
- <?php } ?>
107
- </select>
108
- </p>
109
-
110
- <?php wp_nonce_field( 'wpuf-export-regs-form' ); ?>
111
-
112
- <input type="submit" class="button button-primary" name="export_regis_form" value="<?php _e( 'Export', 'wpuf' ) ?>">
113
- </form>
114
- </div>
115
- </div>
116
- </div>
117
- <?php
118
- } else {
119
- sprintf( '<p>%s</p>', __( 'Sorry you have no form to export', 'wpuf' ) );
120
- }
121
- }
122
-
123
- /**
124
- * Import functionality
125
- */
126
- function import_data() {
127
-
128
- if ( isset( $_FILES['import'] ) && check_admin_referer( 'wpuf-import' ) ) {
129
-
130
- if ( $_FILES['import']['error'] > 0 ) {
131
-
132
- printf( '<div class="error"><p>%s</p></div>', __( 'Somthing went wrong. Please choose a file again', 'wpuf' ) );
133
- } else {
134
-
135
- $file_name = $_FILES['import']['name'];
136
- $file_ext = pathinfo( $file_name, PATHINFO_EXTENSION );
137
- $file_size = $_FILES['import']['size'];
138
-
139
- if ( ($file_ext == "json") && ($file_size < 500000) ) {
140
-
141
- $data = $this->import_json_file( $_FILES['import']['tmp_name'] );
142
-
143
- if ( $data ) {
144
- printf( '<div class="updated"><p>%s</p></div>', __( 'Import successful. Have fun!', 'wpuf' ) );
145
- }
146
- } else {
147
- printf( '<div class="error"><p>%s</p></div>', __( 'Invalid file or file size too big.', 'wpuf' ) );
148
- }
149
- }
150
- }
151
- ?>
152
-
153
- <h3><?php _e( 'Import forms', 'wpuf' ); ?></h3>
154
-
155
- <p><?php _e( 'Click Browse button and choose a json file that you backup before.', 'wpuf' ); ?></p>
156
- <p><?php _e( 'Press Restore button, WordPress does the rest for you.', 'wpuf' ); ?></p>
157
-
158
- <form action="" method="post" enctype='multipart/form-data' style="margin-top: 20px;">
159
- <?php wp_nonce_field( 'wpuf-import' ); ?>
160
- <input type='file' name='import' />
161
- <input type="submit" class="button button-primary" name="import_data" value="<?php _e( 'Import', 'wpuf' ); ?>">
162
- </form>
163
- <?php
164
- }
165
-
166
- /**
167
- * Import json file into database
168
- * @param array $file
169
- * @return boolean
170
- */
171
- function import_json_file( $file ) {
172
-
173
- $encode_data = file_get_contents( $file );
174
- $options = json_decode( $encode_data, true );
175
-
176
- foreach ( $options as $key => $value ) {
177
-
178
- $generate_post = array(
179
- 'post_title' => $value['post_data']['post_title'],
180
- 'post_status' => $value['post_data']['post_status'],
181
- 'post_type' => $value['post_data']['post_type'],
182
- 'ping_status' => $value['post_data']['ping_status'],
183
- 'comment_status' => $value['post_data']['comment_status']
184
- );
185
-
186
- $post_id = wp_insert_post( $generate_post, true );
187
-
188
- if ( $post_id && !is_wp_error( $post_id ) ) {
189
-
190
- foreach ( $value['meta_data']['fields'] as $order => $field ) {
191
- wpuf_insert_form_field( $post_id, $field, false, $order );
192
- }
193
-
194
- update_post_meta( $post_id, 'wpuf_form_settings', $value['meta_data']['settings'] );
195
- }
196
- }
197
-
198
- return true;
199
- }
200
-
201
- /**
202
- * Export Registration form
203
- * @param string $export_type
204
- * @param integer $post_ids
205
- */
206
- function export_regis_data( $export_type, $post_ids ) {
207
-
208
- if ( $export_type == 'all' && check_admin_referer( 'wpuf-export-regs-form' ) ) {
209
-
210
- $this->export_to_json( 'wpuf_profile' );
211
-
212
- } elseif ( $export_type == 'selected' && check_admin_referer( 'wpuf-export-regs-form' ) ) {
213
-
214
- if ( $_POST['formlist'] == NULL ) {
215
- printf( '<div class="error"><p>%s</p></div>', __( 'Please select some form for exporting', 'wpuf' ) );
216
- } else {
217
- $this->export_to_json( 'wpuf_profile', $post_ids );
218
- }
219
- }
220
- }
221
-
222
- /**
223
- * Export normal form data
224
- * @param string $export_type
225
- * @param integer $post_ids
226
- */
227
- function export_data( $export_type, $post_ids ) {
228
- if ( $export_type == 'all' && check_admin_referer( 'wpuf-export-form' ) ) {
229
-
230
- $this->export_to_json( 'wpuf_forms' );
231
-
232
- } elseif ( $export_type == 'selected' && check_admin_referer( 'wpuf-export-form' ) ) {
233
-
234
- if ( $_POST['formlist'] == NULL ) {
235
- printf( '<div class="error"><p>%s</p></div>', __( 'Please select some form for exporting', 'wpuf' ) );
236
- } else {
237
- $this->export_to_json( 'wpuf_forms', $post_ids );
238
- }
239
- }
240
- }
241
-
242
- /**
243
- * Export into json file
244
- *
245
- * @param string $post_type
246
- * @param array $post_ids
247
- */
248
- function export_to_json( $post_type, $post_ids = array( ) ) {
249
-
250
- $formatted_data = array( );
251
- $ids = array( );
252
- $blogname = str_replace( " ", "", get_option( 'blogname' ) );
253
- $date = date( "Y-m-d" );
254
- $json_name = $blogname . "-wpuf-" . $date; // Namming the filename will be generated.
255
-
256
- if ( ! empty( $post_ids ) ) {
257
- foreach ( $post_ids as $key => $value ) {
258
- array_push( $ids, $value );
259
- }
260
- }
261
-
262
- $args = array(
263
- 'post_status' => 'publish',
264
- 'post_type' => $post_type,
265
- 'post__in' => (!empty( $ids ) ) ? $ids : ''
266
- );
267
-
268
- $query = new WP_Query( $args );
269
-
270
- foreach ( $query->posts as $post ) {
271
- $postdata = get_object_vars( $post );
272
- unset( $postdata['ID'] );
273
-
274
- $data = array(
275
- 'post_data' => $postdata,
276
- 'meta_data' => array(
277
- 'fields' => wpuf_get_form_fields( $post->ID ),
278
- 'settings' => get_post_meta( $post->ID, 'wpuf_form_settings', true )
279
- )
280
- );
281
-
282
- array_push( $formatted_data, $data );
283
- }
284
-
285
- $json_file = json_encode( $formatted_data ); // Encode data into json data
286
-
287
- ob_clean();
288
-
289
- echo $json_file;
290
-
291
- header( "Content-Type: text/json; charset=" . get_option( 'blog_charset' ) );
292
- header( "Content-Disposition: attachment; filename=$json_name.json" );
293
-
294
- exit();
295
- }
296
-
297
- /**
298
- * Formetted meta key value
299
- *
300
- * @param array $array
301
- * @return array
302
- */
303
- function formetted_meta_key_value( $array ) {
304
- $result = array( );
305
-
306
- foreach ( $array as $key => $val ) {
307
- $result[$key] = $val[0];
308
- }
309
-
310
- return $result;
311
- }
312
-
313
- function tool_page() {
314
- $msg = isset( $_GET['msg'] ) ? $_GET['msg'] : '';
315
- $text = '';
316
-
317
- switch ($msg) {
318
- case 'del_forms':
319
- $text = __( 'All forms has been deleted', 'wpuf' );
320
- break;
321
-
322
- case 'settings_cleared':
323
- $text = __( 'Settings has been cleared!', 'wpuf' );
324
- break;
325
-
326
- case 'del_trans':
327
- $text = __( 'All transactions has been deleted!', 'wpuf' );
328
- break;
329
- }
330
-
331
- if ( $text ) {
332
- ?>
333
- <div class="updated">
334
- <p>
335
- <?php echo $text; ?>
336
- </p>
337
- </div>
338
-
339
- <?php } ?>
340
-
341
-
342
- <div class="metabox-holder">
343
- <div class="postbox">
344
- <h3><?php _e( 'Page Installation', 'wpuf' ); ?></h3>
345
-
346
- <div class="inside">
347
- <p><?php _e( 'Clicking this button will create required pages for the plugin. Note: It\'ll not delete/replace existing pages.', 'wpuf' ); ?></p>
348
- <a class="button button-primary" href="<?php echo add_query_arg( array( 'install_wpuf_pages' => true ) ); ?>"><?php _e( 'Install WPUF Pages', 'wpuf' ); ?></a>
349
- </div>
350
- </div>
351
-
352
- <div class="postbox">
353
- <h3><?php _e( 'Reset Settings', 'wpuf' ); ?></h3>
354
-
355
- <div class="inside">
356
- <p><?php _e( '<strong>Caution:</strong> This tool will delete all the plugin settings of WP User Frontend Pro', 'wpuf' ); ?></p>
357
- <a class="button button-primary" href="<?php echo wp_nonce_url( add_query_arg( array( 'wpuf_action' => 'clear_settings' ), 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ); ?>" onclick="return confirm('Are you sure?');"><?php _e( 'Reset Settings', 'wpuf' ); ?></a>
358
- </div>
359
- </div>
360
-
361
- <div class="postbox">
362
- <h3><?php _e( 'Delete Forms', 'wpuf' ); ?></h3>
363
-
364
- <div class="inside">
365
- <p><?php _e( '<strong>Caution:</strong> This tool will delete all the post and registration/profile forms.', 'wpuf' ); ?></p>
366
-
367
- <a class="button button-primary" href="<?php echo wp_nonce_url( add_query_arg( array( 'wpuf_action' => 'del_post_forms' ), 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ); ?>" onclick="return confirm('Are you sure?');"><?php _e( 'Delete Post Forms', 'wpuf' ); ?></a>
368
- <a class="button button-primary" href="<?php echo wp_nonce_url( add_query_arg( array( 'wpuf_action' => 'del_pro_forms' ), 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ); ?>" onclick="return confirm('Are you sure?');"><?php _e( 'Delete Registration Forms', 'wpuf' ); ?></a>
369
- <a class="button button-primary" href="<?php echo wp_nonce_url( add_query_arg( array( 'wpuf_action' => 'del_subs' ), 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ); ?>" onclick="return confirm('Are you sure?');"><?php _e( 'Delete Subscriptions', 'wpuf' ); ?></a>
370
- <a class="button button-primary" href="<?php echo wp_nonce_url( add_query_arg( array( 'wpuf_action' => 'del_coupon' ), 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ); ?>" onclick="return confirm('Are you sure?');"><?php _e( 'Delete Coupons', 'wpuf' ); ?></a>
371
- </div>
372
- </div>
373
-
374
- <div class="postbox">
375
- <h3><?php _e( 'Transactions', 'wpuf' ); ?></h3>
376
-
377
- <div class="inside">
378
- <p><?php _e( 'This tool will delete all the transactions from the transaction table.', 'wpuf' ); ?></p>
379
-
380
- <a class="button button-primary" href="<?php echo wp_nonce_url( add_query_arg( array( 'wpuf_action' => 'clear_transaction' ), 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ); ?>" onclick="return confirm('Are you sure?');"><?php _e( 'Delete Transactions', 'wpuf' ); ?></a>
381
- </div>
382
- </div>
383
- </div>
384
- <?php
385
- }
386
-
387
  }
388
 
389
  $tools = new WPUF_Admin_Tools();
390
  ?>
391
 
392
  <div class="wrap">
393
- <div id="icon-options-general" class="icon32"><br></div>
394
-
395
  <h2 class="nav-tab-wrapper">
396
- <a class="nav-tab <?php echo (!isset( $_GET['action'] ) ) ? 'nav-tab-active' : ''; ?>" href="<?php echo add_query_arg( array( 'page' => 'wpuf_tools' ), admin_url( 'admin.php' ) ); ?>"><?php _e( 'Import', 'wpuf' ); ?></a>
397
- <a class="nav-tab <?php echo ( isset( $_GET['action'] ) && $_GET['action'] == 'export' ) ? 'nav-tab-active' : ''; ?>" href="<?php echo add_query_arg( array( 'page' => 'wpuf_tools', 'action' => 'export' ), admin_url( 'admin.php' ) ); ?>"><?php _e( 'Export', 'wpuf' ); ?></a>
398
- <a class="nav-tab <?php echo ( isset( $_GET['action'] ) && $_GET['action'] == 'tools' ) ? 'nav-tab-active' : ''; ?>" href="<?php echo add_query_arg( array( 'page' => 'wpuf_tools', 'action' => 'tools' ), admin_url( 'admin.php' ) ); ?>"><?php _e( 'Tools', 'wpuf' ); ?></a>
399
  </h2>
400
 
401
  <?php
402
- $action = isset( $_GET['action'] ) ? $_GET['action'] : '';
403
 
404
- switch ( $action ) {
405
  case 'export':
406
  $tools->list_forms();
407
  $tools->list_regis_forms();
1
  <?php
2
 
3
+ if ( ! class_exists( 'WPUF_Admin_Tools' ) ) {
4
+ require_once WPUF_ROOT . '/admin/class-tools.php';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5
  }
6
 
7
  $tools = new WPUF_Admin_Tools();
8
  ?>
9
 
10
  <div class="wrap">
 
 
11
  <h2 class="nav-tab-wrapper">
12
+ <a class="nav-tab <?php echo (!isset( $_GET['tab'] ) ) ? 'nav-tab-active' : ''; ?>" href="<?php echo add_query_arg( array( 'page' => 'wpuf_tools' ), admin_url( 'admin.php' ) ); ?>"><?php _e( 'Import', 'wpuf' ); ?></a>
13
+ <a class="nav-tab <?php echo ( isset( $_GET['tab'] ) && $_GET['tab'] == 'export' ) ? 'nav-tab-active' : ''; ?>" href="<?php echo add_query_arg( array( 'page' => 'wpuf_tools', 'tab' => 'export' ), admin_url( 'admin.php' ) ); ?>"><?php _e( 'Export', 'wpuf' ); ?></a>
14
+ <a class="nav-tab <?php echo ( isset( $_GET['tab'] ) && $_GET['tab'] == 'tools' ) ? 'nav-tab-active' : ''; ?>" href="<?php echo add_query_arg( array( 'page' => 'wpuf_tools', 'tab' => 'tools' ), admin_url( 'admin.php' ) ); ?>"><?php _e( 'Tools', 'wpuf' ); ?></a>
15
  </h2>
16
 
17
  <?php
18
+ $tab = isset( $_GET['tab'] ) ? $_GET['tab'] : '';
19
 
20
+ switch ( $tab ) {
21
  case 'export':
22
  $tools->list_forms();
23
  $tools->list_regis_forms();
admin/weforms.php ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <div class="wrap about-wrap">
2
+ <h1><?php _e( 'weForms', 'wpuf' ); ?></h1>
3
+
4
+ <p class="about-text"><?php _e( 'The Easiest &amp; Fastest Contact Form Plugin on WordPress', 'wpuf' ) ?></p>
5
+
6
+ <hr>
7
+ <p><?php _e( 'Quickly create rich contact forms to generate leads, taking feedbacks, onboarding visitors and flourishing <br /> your imagination! Comes with the best frontend post submission plugin for WordPress, WP User Frontend.', 'wpuf' ) ?>
8
+
9
+
10
+ <div class="install" id="wpuf-weforms-installer-notice" style="padding: 1em 0; position: relative;">
11
+ <p>
12
+ <button id="wpuf-weforms-installer" class="button button-primary"><?php _e( 'Install Now', 'weforms' ); ?></button>
13
+ </p>
14
+ </div>
15
+
16
+ <figure class="we-gif" style="width: 944px;">
17
+ <img class="img-responsive inline-block image-gif shadow" src="https://wedevs-com-wedevs.netdna-ssl.com/wp-content/uploads/2017/08/weforms-final-promo-video.gif" >
18
+ </figure>
19
+ </div>
20
+
21
+ <script type="text/javascript">
22
+ (function ($) {
23
+ var wrapper = $('#wpuf-weforms-installer-notice');
24
+
25
+ wrapper.on('click', '#wpuf-weforms-installer', function (e) {
26
+ var self = $(this);
27
+
28
+ e.preventDefault();
29
+ self.addClass('install-now updating-message');
30
+ self.text('<?php echo esc_js( 'Installing...', 'weforms' ); ?>');
31
+ var data = {
32
+ action: 'wpuf_weforms_install',
33
+ _wpnonce: '<?php echo wp_create_nonce('wpuf-weforms-installer-nonce'); ?>'
34
+ };
35
+
36
+ $.post(ajaxurl, data, function (response) {
37
+ if (response.success) {
38
+ self.attr('disabled', 'disabled');
39
+ self.removeClass('install-now updating-message');
40
+ self.text('<?php echo esc_js( 'Installed', 'weforms' ); ?>');
41
+
42
+ window.location.href = '<?php echo admin_url( 'admin.php?page=weforms' ); ?>';
43
+ }
44
+ });
45
+ });
46
+ })(jQuery);
47
+ </script>
48
+
49
+ <style>
50
+ .widget-wrap{
51
+ width: 100%;
52
+ text-align: center;
53
+ align-content: center;
54
+ }
55
+
56
+ </style>
assets/css/formbuilder.css DELETED
@@ -1,344 +0,0 @@
1
- .wpuf-hide {
2
- display: none;
3
- }
4
- .wpuf-pro-text-alert {
5
- font-style: italic;
6
- color: #ccc;
7
- }
8
- .wpuf-pro-text-alert a {
9
- text-decoration: none;
10
- color: #aaa;
11
- }
12
- #wpuf-pro-content {
13
- opacity: 0.7;
14
- }
15
- .wpuf-pro-content {
16
- opacity: 0.7;
17
- }
18
- #wpuf-metabox-editor {
19
- background: transparent;
20
- border: none;
21
- box-shadow: none;
22
- }
23
- #wpuf-metabox-editor .handlediv {
24
- display: none;
25
- }
26
- #wpuf-metabox-editor .hndle {
27
- display: none;
28
- }
29
- #wpuf-metabox-editor .wpuf-updated {
30
- background-color: #ffffe0;
31
- border: 1px solid #e6db55;
32
- border-radius: 5px;
33
- padding: 0 10px;
34
- margin: 5px 0 15px;
35
- font-weight: bold;
36
- }
37
- #wpuf-metabox-editor h2.nav-tab-wrapper {
38
- padding: 0;
39
- }
40
- #wpuf-metabox-editor h2.nav-tab-wrapper a:first-child {
41
- margin-left: 10px;
42
- }
43
- #wpuf-metabox-editor .inside {
44
- margin: 0;
45
- padding: 0;
46
- }
47
- #wpuf-metabox-editor .inside h3 {
48
- border-bottom: 1px solid #E6E6E6;
49
- cursor: pointer;
50
- padding-left: 0;
51
- padding-bottom: 10px;
52
- }
53
- #wpuf-metabox-fields h2 {
54
- margin: 0;
55
- }
56
- #wpuf-metabox-fields .wpuf-form-buttons {
57
- margin-bottom: 10px;
58
- }
59
- #wpuf-metabox-fields button {
60
- margin-bottom: 5px;
61
- }
62
- #wpuf-metabox-fields .wpuf-loading {
63
- width: 16px;
64
- height: 16px;
65
- background: url('../images/wpspin_light.gif') no-repeat;
66
- }
67
- #wpuf-metabox-fields .wpuf-loading.hide {
68
- display: none;
69
- }
70
- .wpuf-form-editor {
71
- font-size: 12px;
72
- margin: 0;
73
- }
74
- .wpuf-form-editor li {
75
- background: #FFF;
76
- margin-bottom: 10px;
77
- border: 1px solid #dfdfdf;
78
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
79
- }
80
- .wpuf-form-editor li.ui-state-highlight {
81
- border: 1px dashed #DDD;
82
- min-height: 50px;
83
- background: #eee;
84
- }
85
- .wpuf-form-editor li.password .required-field,
86
- .wpuf-form-editor li.user_email .required-field {
87
- display: none;
88
- }
89
- .wpuf-form-editor li .wpuf-legend {
90
- background: #fff;
91
- color: #464646;
92
- border-bottom: 1px solid #eee;
93
- padding-bottom: 5px;
94
- padding: 7px 10px;
95
- }
96
- .wpuf-form-editor li .wpuf-legend:after {
97
- clear: both;
98
- content: "";
99
- display: table;
100
- }
101
- .wpuf-form-editor li .wpuf-legend:hover {
102
- cursor: move;
103
- }
104
- .wpuf-form-editor li .wpuf-legend .wpuf-label {
105
- float: left;
106
- width: 70%;
107
- }
108
- .wpuf-form-editor li .wpuf-legend .wpuf-actions {
109
- float: right;
110
- }
111
- .wpuf-form-editor li .wpuf-legend .wpuf-actions a {
112
- font-size: 11px;
113
- padding: 2px 5px;
114
- }
115
- .wpuf-form-editor li .wpuf-legend .wpuf-actions a.wpuf-remove {
116
- background: transparent url(../images/delete.png) no-repeat 70% 50%;
117
- color: #f00;
118
- width: 16px;
119
- text-indent: -9999px;
120
- display: inline-block;
121
- }
122
- .wpuf-form-editor li .wpuf-legend .wpuf-actions a.wpuf-toggle {
123
- background: transparent url(../images/arrows.png) no-repeat 0 2px;
124
- width: 10px;
125
- text-indent: -9999px;
126
- display: inline-block;
127
- }
128
- .wpuf-form-editor li .wpuf-form-holder {
129
- padding: 10px;
130
- }
131
- .wpuf-form-editor li .wpuf-form-rows {
132
- padding-bottom: 3px;
133
- }
134
- .wpuf-form-editor li .wpuf-form-rows:after {
135
- clear: both;
136
- content: "";
137
- display: table;
138
- }
139
- .wpuf-form-editor li .wpuf-form-rows label {
140
- float: left;
141
- width: 20%;
142
- font-size: 12px;
143
- }
144
- .wpuf-form-editor li .wpuf-form-rows textarea {
145
- width: 60%;
146
- }
147
- .wpuf-form-editor li .wpuf-form-rows .wpuf-form-sub-fields {
148
- width: 77%;
149
- float: left;
150
- }
151
- .wpuf-form-editor li .wpuf-form-rows .wpuf-form-sub-fields label {
152
- float: none;
153
- display: inline-block;
154
- width: auto;
155
- }
156
- .wpuf-form-editor li .wpuf-form-rows .wpuf-form-sub-fields .wpuf-show-field-value {
157
- margin: 7px 0 7px 0;
158
- }
159
- .wpuf-form-editor li .wpuf-form-rows .wpuf-form-sub-fields .wpuf-option-label-value {
160
- margin: 0;
161
- }
162
- .wpuf-form-editor li .wpuf-form-rows .wpuf-form-sub-fields .wpuf-option-label-value span {
163
- font-weight: bold;
164
- margin-left: 5%;
165
- margin-right: 27%;
166
- }
167
- .wpuf-form-editor li .wpuf-form-rows .wpuf-form-sub-fields.wpuf-options {
168
- margin-bottom: 10px;
169
- }
170
- .wpuf-form-editor li .wpuf-form-rows table.address-table {
171
- width: 100%;
172
- margin-bottom: 15px;
173
- }
174
- .wpuf-form-editor li .wpuf-form-rows table.address-table label {
175
- float: none;
176
- width: 100%;
177
- }
178
- .ui-state-highlight {
179
- height: 1.5em;
180
- line-height: 1.2em;
181
- }
182
- .wpuf-form-template-modal {
183
- background: #fff;
184
- position: fixed;
185
- top: 5%;
186
- bottom: 5%;
187
- right: 10%;
188
- left: 10%;
189
- display: none;
190
- box-shadow: 0 1px 20px 5px rgba(0, 0, 0, 0.1);
191
- z-index: 160000;
192
- }
193
- .wpuf-form-template-modal * {
194
- box-sizing: border-box;
195
- }
196
- .wpuf-form-template-modal a.close {
197
- position: absolute;
198
- top: 0;
199
- right: 0;
200
- font: 300 1.71429em "dashicons" !important;
201
- color: #777;
202
- content: '\f335';
203
- display: inline-block;
204
- padding: 10px 20px;
205
- z-index: 5;
206
- text-decoration: none;
207
- height: 50px;
208
- cursor: pointer;
209
- border-left: 1px solid #ddd;
210
- }
211
- .wpuf-form-template-modal a.close:hover {
212
- background: #eee;
213
- opacity: 0.8;
214
- text-decoration: none;
215
- }
216
- .wpuf-form-template-modal a.close:active {
217
- background: #eee;
218
- opacity: 0.4;
219
- }
220
- .wpuf-form-template-modal .modal-header {
221
- position: absolute;
222
- top: 0;
223
- left: 0;
224
- right: 0;
225
- height: 50px;
226
- z-index: 4;
227
- border-bottom: 1px solid #ddd;
228
- padding-left: 15px;
229
- box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
230
- }
231
- .wpuf-form-template-modal .modal-header h2 {
232
- line-height: 50px;
233
- text-align: left;
234
- margin-top: 0;
235
- color: #5d6d74;
236
- font-size: 20px;
237
- text-shadow: 0 1px 1px #fff;
238
- }
239
- .wpuf-form-template-modal .modal-header h2 small {
240
- font-weight: normal;
241
- font-size: 13px;
242
- margin-left: 15px;
243
- }
244
- .wpuf-form-template-modal .content-container {
245
- position: absolute;
246
- top: 75px;
247
- right: 0;
248
- bottom: 50px;
249
- left: 0;
250
- overflow: auto;
251
- padding: 2em 2em;
252
- }
253
- .wpuf-form-template-modal .content {
254
- margin: 0 auto;
255
- max-width: 900px;
256
- text-align: left;
257
- }
258
- .wpuf-form-template-modal .content ul {
259
- width: 100%;
260
- margin: 0;
261
- padding: 0;
262
- }
263
- .wpuf-form-template-modal .content ul li {
264
- float: left;
265
- width: 31.292517006803%;
266
- border: 1px solid #e4e4e4;
267
- padding: 0;
268
- margin-left: 3.0612244897959%;
269
- margin-bottom: 30px;
270
- position: relative;
271
- min-height: 120px;
272
- }
273
- .wpuf-form-template-modal .content ul li:hover {
274
- background: #F5F5F5;
275
- }
276
- .wpuf-form-template-modal .content ul li a {
277
- text-decoration: none;
278
- color: #555;
279
- padding: 20px;
280
- display: block;
281
- min-height: 118px;
282
- }
283
- .wpuf-form-template-modal .content ul li .title {
284
- font-size: 17px;
285
- margin: 0 0 10px 0;
286
- line-height: 23px;
287
- }
288
- .wpuf-form-template-modal .content ul li .description {
289
- color: #888;
290
- }
291
- .wpuf-form-template-modal .content ul li:nth-child(3n+1) {
292
- margin-left: 0;
293
- clear: both;
294
- }
295
- .wpuf-form-template-modal .content ul li.template-inactive .title,
296
- .wpuf-form-template-modal .content ul li.template-inactive .description {
297
- color: #ddd;
298
- }
299
- .wpuf-form-template-modal .content ul li.blank-form {
300
- text-align: center;
301
- }
302
- .wpuf-form-template-modal .content ul li.blank-form span {
303
- display: block;
304
- }
305
- .wpuf-form-template-modal .content ul li.blank-form span.dashicons {
306
- font-size: 45px;
307
- color: #ddd;
308
- margin: 0 auto;
309
- width: auto;
310
- height: auto;
311
- }
312
- .wpuf-form-template-modal footer {
313
- position: absolute;
314
- left: 0;
315
- bottom: 0;
316
- width: 100%;
317
- padding: 12px 20px;
318
- border-top: 1px solid #ddd;
319
- background: #fff;
320
- text-align: left;
321
- }
322
- .wpuf-form-template-modal-backdrop {
323
- position: fixed;
324
- z-index: 159999;
325
- top: 0;
326
- left: 0;
327
- right: 0;
328
- bottom: 0;
329
- min-height: 360px;
330
- background: #000;
331
- opacity: .7;
332
- display: none;
333
- }
334
- /* Smartphones (portrait and landscape) ----------- */
335
- @media only screen and (min-device-width: 320px) and (max-device-width: 480px) {
336
- .wpuf-form-template-modal .modal-header h2 small {
337
- display: none;
338
- }
339
- .wpuf-form-template-modal .content ul li {
340
- float: none;
341
- width: 100%;
342
- margin-left: 0;
343
- }
344
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/css/formbuilder.less DELETED
@@ -1,424 +0,0 @@
1
- .clearfix() {
2
- &:after {
3
- clear: both;
4
- content: "";
5
- display: table;
6
- }
7
- }
8
-
9
- //variables
10
- @fontSize: 12px;
11
-
12
- .wpuf-hide {
13
- display: none;
14
- }
15
-
16
- .wpuf-pro-text-alert {
17
- font-style: italic;
18
- color: #ccc;
19
-
20
- a {
21
- text-decoration: none;
22
- color: #aaa;
23
- }
24
- }
25
- #wpuf-pro-content{
26
- opacity: 0.7;
27
- }
28
- .wpuf-pro-content{
29
- opacity: 0.7;
30
- }
31
- #wpuf-metabox-editor {
32
- background: transparent;
33
- border: none;
34
- box-shadow: none;
35
-
36
- .handlediv { display: none; }
37
- .hndle { display: none; }
38
-
39
- .wpuf-updated {
40
- background-color: #ffffe0;
41
- border: 1px solid #e6db55;
42
- border-radius: 5px;
43
- padding: 0 10px;
44
- margin: 5px 0 15px;
45
- font-weight: bold;
46
- }
47
-
48
- h2.nav-tab-wrapper {
49
- padding: 0;
50
-
51
- a:first-child {
52
- margin-left: 10px;
53
- }
54
- }
55
-
56
- .inside {
57
- margin: 0;
58
- padding: 0;
59
-
60
- h3 {
61
- border-bottom: 1px solid #E6E6E6;
62
- cursor: pointer;
63
- padding-left: 0;
64
- padding-bottom: 10px;
65
- }
66
- }
67
- }
68
-
69
- #wpuf-metabox-fields {
70
- h2 {
71
- margin:0;
72
- }
73
-
74
- .wpuf-form-buttons {
75
- margin-bottom: 10px;
76
- }
77
-
78
- button {
79
- margin-bottom: 5px;
80
- }
81
-
82
- .wpuf-loading {
83
- width: 16px;
84
- height: 16px;
85
- background: url('../images/wpspin_light.gif') no-repeat;
86
-
87
- &.hide {
88
- display: none;
89
- }
90
- }
91
- }
92
-
93
- .wpuf-form-editor {
94
- font-size: @fontSize;
95
- margin: 0;
96
-
97
- li {
98
- background: #FFF;
99
- margin-bottom: 10px;
100
- border: 1px solid #dfdfdf;
101
- box-shadow: 0 1px 1px rgba(0,0,0,0.04);
102
-
103
- &.ui-state-highlight {
104
- border: 1px dashed #DDD;
105
- min-height: 50px;
106
- background: #eee;
107
- }
108
-
109
- &.password, &.user_email {
110
- .required-field {
111
- display: none;
112
- }
113
- }
114
-
115
- .wpuf-legend {
116
- .clearfix();
117
-
118
- background: #fff;
119
- color: #464646;
120
- border-bottom: 1px solid #eee;
121
- padding-bottom: 5px;
122
- // margin-bottom: 5px;
123
- padding: 7px 10px;
124
-
125
- &:hover {
126
- cursor: move;
127
- }
128
-
129
- .wpuf-label {
130
- float: left;
131
- width: 70%;
132
- // font-weight: bold;
133
- }
134
-
135
- .wpuf-actions {
136
- float: right;
137
-
138
- a {
139
- // background: #ccc;
140
- font-size: 11px;
141
- padding: 2px 5px;
142
- }
143
-
144
- a.wpuf-remove {
145
- background: transparent url(../images/delete.png) no-repeat 70% 50%;
146
- color: #f00;
147
- width: 16px;
148
- text-indent: -9999px;
149
- display: inline-block;
150
- }
151
-
152
- a.wpuf-toggle {
153
- background: transparent url(../images/arrows.png) no-repeat 0 2px;
154
- width: 10px;
155
- text-indent: -9999px;
156
- display: inline-block;
157
- }
158
- }
159
- }
160
-
161
- .wpuf-form-holder {
162
- padding: 10px;
163
- }
164
-
165
- .wpuf-form-rows {
166
- .clearfix();
167
- padding-bottom: 3px;
168
-
169
- label {
170
- float: left;
171
- width: 20%;
172
- font-size: @fontSize;
173
- }
174
-
175
- textarea {
176
- width: 60%;
177
- }
178
-
179
- .wpuf-form-sub-fields {
180
- width: 77%;
181
- float: left;
182
-
183
- label {
184
- float: none;
185
- display: inline-block;
186
- width: auto;
187
- }
188
-
189
- .wpuf-show-field-value {
190
- margin: 7px 0 7px 0;
191
- }
192
-
193
- .wpuf-option-label-value {
194
- margin: 0;
195
-
196
- span {
197
- font-weight: bold;
198
- margin-left: 5%;
199
- margin-right: 27%;
200
- }
201
- }
202
-
203
- &.wpuf-options {
204
- margin-bottom: 10px;
205
- }
206
- }
207
-
208
- table.address-table {
209
- width: 100%;
210
- margin-bottom: 15px;
211
-
212
- label {
213
- float: none;
214
- width: 100%;
215
- }
216
- }
217
- }
218
- }
219
- }
220
-
221
- .ui-state-highlight { height: 1.5em; line-height: 1.2em; }
222
-
223
- .wpuf-form-template-modal {
224
- background: #fff;
225
- position: fixed;
226
- top: 5%;
227
- bottom: 5%;
228
- right: 10%;
229
- left: 10%;
230
- // display: block;
231
- display: none;
232
- box-shadow: 0 1px 20px 5px rgba(0, 0, 0, 0.1);
233
- z-index: 160000;
234
-
235
- * { box-sizing: border-box; }
236
-
237
-
238
- a.close {
239
- position: absolute;
240
- top: 0;
241
- right: 0;
242
- font: 300 1.71429em "dashicons" !important;
243
- color: #777;
244
- content: '\f335';
245
- display: inline-block;
246
- padding: 10px 20px;
247
- z-index: 5;
248
- text-decoration: none;
249
- height: 50px;
250
- cursor: pointer;
251
- border-left: 1px solid #ddd;
252
-
253
- &:hover {
254
- background: #eee;
255
- opacity: 0.8;
256
- text-decoration: none;
257
- }
258
-
259
- &:active {
260
- background: #eee;
261
- opacity: 0.4;
262
- }
263
- }
264
-
265
- .modal-header {
266
- position: absolute;
267
- top: 0;
268
- left: 0;
269
- right: 0;
270
- height: 50px;
271
- z-index: 4;
272
- border-bottom: 1px solid #ddd;
273
- padding-left: 15px;
274
- box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
275
-
276
- h2 {
277
- line-height: 50px;
278
- text-align: left;
279
- margin-top: 0;
280
- color: #5d6d74;
281
- font-size: 20px;
282
- text-shadow: 0 1px 1px #fff;
283
-
284
- small {
285
- font-weight: normal;
286
- font-size: 13px;
287
- margin-left: 15px;
288
- }
289
- }
290
- }
291
-
292
- .content-container {
293
- position: absolute;
294
- top: 75px;
295
- right: 0;
296
- bottom: 50px;
297
- left: 0;
298
- overflow: auto;
299
- padding: 2em 2em;
300
- }
301
-
302
- .content {
303
- margin: 0 auto;
304
- max-width: 900px;
305
- text-align: left;
306
-
307
- ul {
308
- width: 100%;
309
- margin: 0;
310
- padding: 0;
311
-
312
- li {
313
- float: left;
314
- width: 31.292517006803%;
315
- border: 1px solid #e4e4e4;
316
- padding: 0;
317
- margin-left: 3.0612244897959%;
318
- margin-bottom: 30px;
319
- position: relative;
320
- min-height: 120px;
321
-
322
- &:hover {
323
- background: #F5F5F5;
324
- }
325
-
326
- a {
327
- text-decoration: none;
328
- color: #555;
329
- padding: 20px;
330
- display: block;
331
- min-height: 118px;
332
- }
333
-
334
- .title {
335
- font-size: 17px;
336
- margin: 0 0 10px 0;
337
- line-height: 23px;
338
- }
339
-
340
- .description {
341
- color: #888;
342
- }
343
-
344
- &:nth-child(3n+1) {
345
- margin-left: 0;
346
- clear: both;
347
- }
348
-
349
- &.template-inactive {
350
- .title,
351
- .description {
352
- color: #ddd;
353
- }
354
- }
355
-
356
- &.blank-form {
357
- text-align: center;
358
-
359
- span {
360
- display: block;
361
- }
362
-
363
- span.dashicons {
364
- font-size: 45px;
365
- color: #ddd;
366
- margin: 0 auto;
367
- width: auto;
368
- height: auto;
369
- }
370
-
371
- span.label {
372
-
373
- }
374
- }
375
- }
376
- }
377
- }
378
-
379
- footer {
380
- position: absolute;
381
- left: 0;
382
- bottom: 0;
383
- width: 100%;
384
- padding: 12px 20px;
385
- border-top: 1px solid #ddd;
386
- background: #fff;
387
- text-align: left;
388
- }
389
- }
390
-
391
- .wpuf-form-template-modal-backdrop {
392
- position: fixed;
393
- z-index: 159999;
394
- top: 0;
395
- left: 0;
396
- right: 0;
397
- bottom: 0;
398
- min-height: 360px;
399
- background: #000;
400
- opacity: .7;
401
- display: none;
402
- }
403
-
404
- /* Smartphones (portrait and landscape) ----------- */
405
- @media only screen
406
- and (min-device-width : 320px)
407
- and (max-device-width : 480px) {
408
- .wpuf-form-template-modal {
409
- .modal-header h2 small {
410
- display: none;
411
- }
412
-
413
- .content {
414
-
415
- ul {
416
- li {
417
- float: none;
418
- width: 100%;
419
- margin-left: 0;
420
- }
421
- }
422
- }
423
- }
424
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/css/frontend-forms.css CHANGED
@@ -153,26 +153,28 @@ ul.wpuf-form li .wpuf-fields .wpuf-checkbox-block {
153
  }
154
  ul.wpuf-form li .wpuf-fields a.file-selector {
155
  display: inline;
 
156
  padding: 5px 12px;
 
157
  height: 30px;
158
  line-height: 28px;
159
  border: 1px solid #ccc;
160
  -webkit-border-radius: 3px;
161
  -moz-border-radius: 3px;
162
  border-radius: 3px;
163
- background: #0085ba;
164
- border-color: #0073aa #006799 #006799;
165
- -webkit-box-shadow: 0 1px 0 #006799;
166
- box-shadow: 0 1px 0 #006799;
167
- color: #fff;
168
- text-decoration: none;
169
- text-shadow: 0 -1px 1px #006799, 1px 0 1px #006799, 0 1px 1px #006799, -1px 0 1px #006799;
170
  }
171
  ul.wpuf-form li .wpuf-fields a.file-selector:hover,
172
  ul.wpuf-form li .wpuf-fields a.file-selector:focus {
173
- background: #008ec2;
174
- border-color: #006799;
175
- color: #fff;
176
  }
177
  ul.wpuf-form li .wpuf-fields .google-map img {
178
  max-width: none !important;
153
  }
154
  ul.wpuf-form li .wpuf-fields a.file-selector {
155
  display: inline;
156
+ text-decoration: none;
157
  padding: 5px 12px;
158
+ margin: 0;
159
  height: 30px;
160
  line-height: 28px;
161
  border: 1px solid #ccc;
162
  -webkit-border-radius: 3px;
163
  -moz-border-radius: 3px;
164
  border-radius: 3px;
165
+ background: #fafafa;
166
+ color: #23282d;
167
+ box-shadow: 0 1px 0 #cccccc;
168
+ vertical-align: top;
169
+ cursor: pointer;
170
+ -webkit-appearance: none;
171
+ white-space: nowrap;
172
  }
173
  ul.wpuf-form li .wpuf-fields a.file-selector:hover,
174
  ul.wpuf-form li .wpuf-fields a.file-selector:focus {
175
+ background: #fafafa;
176
+ border-color: #999;
177
+ color: #23282d;
178
  }
179
  ul.wpuf-form li .wpuf-fields .google-map img {
180
  max-width: none !important;
assets/css/frontend-forms.less DELETED
@@ -1,1315 +0,0 @@
1
- @borderColor: #eee;
2
- @mainColor: #64C3DE;
3
-
4
- .clearfix() {
5
- &:after {
6
- clear: both;
7
- content: "";
8
- display: table;
9
- }
10
- }
11
-
12
- .border-radius(@radius) {
13
- -webkit-border-radius: @radius;
14
- -moz-border-radius: @radius;
15
- border-radius: @radius;
16
- }
17
-
18
- .core-button() {
19
- background: #0085ba;
20
- border-color: #0073aa #006799 #006799;
21
- -webkit-box-shadow: 0 1px 0 #006799;
22
- box-shadow: 0 1px 0 #006799;
23
- color: #fff;
24
- text-decoration: none;
25
- text-shadow: 0 -1px 1px #006799,
26
- 1px 0 1px #006799,
27
- 0 1px 1px #006799,
28
- -1px 0 1px #006799;
29
- }
30
-
31
- .core-button-hover() {
32
- background: #008ec2;
33
- border-color: #006799;
34
- color: #fff;
35
- }
36
-
37
- .wpuf-loading {
38
- width: 16px;
39
- height: 16px;
40
- background: url('../images/wpspin_light.gif') no-repeat;
41
- display: inline-block;
42
-
43
- &.hide {
44
- display: none;
45
- }
46
- }
47
-
48
- .wpuf-button {
49
- color: #555;
50
- border-color: #cccccc;
51
- background: #f7f7f7;
52
- -webkit-box-shadow: 0 1px 0 #cccccc;
53
- box-shadow: 0 1px 0 #cccccc;
54
- vertical-align: top;
55
-
56
- &:hover, &:focus {
57
- background: #fafafa;
58
- border-color: #999;
59
- color: #23282d;
60
- }
61
- }
62
-
63
- .wpuf-success {
64
- background-color: #dff0d8;
65
- border: 1px solid #d6e9c6;
66
- color: #3c763d;
67
- padding: 10px;
68
- margin: 10px 0 20px 0;
69
- }
70
-
71
- .wpuf-error {
72
- background-color: #f2dede;
73
- color: #a94442;
74
- border: 1px solid #ebccd1;
75
- margin: 10px 0 20px 0;
76
- padding: 10px;
77
- .border-radius(3px);
78
- font-size: 13px;
79
- }
80
-
81
- .wpuf-message {
82
- background: #fcf8e3;
83
- border: 1px solid #faebcc;
84
- color: #8a6d3b;
85
- margin: 10px 0 20px 0;
86
- padding: 10px;
87
- .border-radius(3px);
88
- font-size: 13px;
89
- }
90
-
91
- .wpuf-info {
92
- background-color: #fef5be;
93
- border: 2px solid #fdd425;
94
- border-radius: 5px;
95
- -moz-border-radius: 5px;
96
- -webkit-border-radius: 5px;
97
- padding: 5px 10px;
98
- margin: 0 0 10px 0;
99
- font-size: 13px;
100
- }
101
-
102
- ul.wpuf-form {
103
- list-style: none !important;
104
- margin: 0 !important;
105
- padding: 0 !important;
106
- width: 100%;
107
-
108
- li {
109
- .clearfix();
110
- margin-left: 0;
111
- margin-bottom: 10px;
112
- padding: 10px;
113
-
114
- &.has-error {
115
- background: #FFE4E4;
116
- }
117
-
118
- .wp-editor-wrap {
119
- border: 1px solid @borderColor;
120
- }
121
-
122
- .wpuf-label {
123
- float: left;
124
- width: 30%;
125
- min-height: 1px;
126
- font-weight: bold;
127
-
128
- .required {
129
- color: red;
130
- }
131
- }
132
-
133
- .wpuf-fields {
134
- float: left;
135
- width: 70%;
136
-
137
- input[type=text],
138
- input[type=password],
139
- input[type=email],
140
- input[type=url],
141
- input[type=number],
142
- textarea {
143
- background: #fafafa;
144
- -moz-box-shadow: inset 0 1px 1px rgba(0,0,0,0.1);
145
- -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.1);
146
- box-shadow: inset 0 1px 1px rgba(0,0,0,0.1);
147
- border: 1px solid #ddd;
148
- color: #888;
149
- width: 95%;
150
- }
151
-
152
- input[type=text]:focus,
153
- input[type=password]:focus,
154
- input[type=email]:focus,
155
- input[type=url]:focus,
156
- input[type=number]:focus,
157
- textarea:focus {
158
- color: #373737;
159
- }
160
- textarea {
161
- padding-left: 3px;
162
- width: 95%;
163
- }
164
- input[type=text],
165
- input[type=password],
166
- input[type=email],
167
- input[type=url],
168
- input[type=number] {
169
- padding: 5px;
170
- }
171
-
172
- select {
173
- border: 1px solid @borderColor;
174
- padding: 2px;
175
- height: 2em;
176
- .border-radius(3px);
177
- min-width: 150px;
178
- max-width: 100%;
179
- }
180
-
181
- select[multiple] {
182
- height: auto;
183
- }
184
-
185
- .wpuf-radio-inline,
186
- .wpuf-checkbox-inline{
187
- display: inline-block;
188
- margin-right: 10px;
189
- }
190
-
191
- .wpuf-radio-block,
192
- .wpuf-checkbox-block{
193
- display: block;
194
- margin-bottom: 6px;
195
- }
196
-
197
- a.file-selector {
198
- display: inline;
199
- text-decoration: none;
200
- padding: 5px 12px;
201
- height: 30px;
202
- line-height: 28px;
203
- border: 1px solid #ccc;
204
- .border-radius(3px);
205
- .core-button();
206
-
207
- &:hover,
208
- &:focus {
209
- .core-button-hover();
210
- }
211
- }
212
-
213
- .google-map {
214
- img {
215
- max-width: none !important;
216
- }
217
- }
218
-
219
- .wpuf-name-field-wrap {
220
- .clearfix();
221
- margin-bottom: 8px;
222
-
223
- &.format-first-last {
224
- .wpuf-name-field-first-name {
225
- float: left;
226
- width: 48%;
227
- }
228
-
229
- .wpuf-name-field-middle-name {
230
- display: none;
231
- }
232
-
233
- .wpuf-name-field-last-name {
234
- float: right;
235
- width: 48%;
236
- }
237
- }
238
-
239
- &.format-first-middle-last {
240
- .wpuf-name-field-first-name {
241
- float: left;
242
- width: 37%;
243
- margin-right: 3%;
244
- }
245
-
246
- .wpuf-name-field-middle-name {
247
- float: left;
248
- width: 20%;
249
- }
250
-
251
- .wpuf-name-field-last-name {
252
- float: right;
253
- width: 37%;
254
- }
255
- }
256
- }
257
-
258
- .wpuf-help {
259
- color: #666;
260
- margin: 2px 0 5px 0;
261
- font-size: 12px;
262
- font-style: italic;
263
- font-family: sans-serif;
264
- display: block;
265
- }
266
-
267
- table, td {
268
- border: none;
269
- margin: 0;
270
- }
271
-
272
- table {
273
- width: 100%;
274
- }
275
-
276
- img.wpuf-clone-field,
277
- img.wpuf-remove-field {
278
- cursor: pointer;
279
- margin: 0 3px;
280
- box-shadow: none;
281
- border: none;
282
- }
283
-
284
- ul.wpuf-attachment-list {
285
- list-style: none;
286
- margin: 5px 0 0 0;
287
- padding: 0;
288
-
289
- li {
290
- display: inline-block;
291
- border: 1px solid @borderColor;
292
- padding: 5px;
293
- width: 150px;
294
- margin-right: 5px;
295
- .border-radius(5px);
296
-
297
- .wpuf-file-input-wrap {
298
- margin: 10px 0;
299
-
300
- input, textarea {
301
- border: 1px solid @borderColor;
302
- width: 93%;
303
- }
304
- }
305
-
306
- .attachment-name {
307
- text-align: center;
308
- }
309
-
310
- a.attachment-delete,a.wpuf-delete-avatar {
311
- text-decoration: none;
312
- padding: 3px 12px;
313
- border: 1px solid #C47272;
314
- color:#ffffff;
315
- text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);
316
- .border-radius(3px);
317
- background-color:#da4f49;
318
- background-image:-moz-linear-gradient(top, #ee5f5b, #bd362f);
319
- background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));
320
- background-image:-webkit-linear-gradient(top, #ee5f5b, #bd362f);
321
- background-image:-o-linear-gradient(top, #ee5f5b, #bd362f);
322
- background-image:linear-gradient(to bottom, #ee5f5b, #bd362f);
323
- background-repeat:repeat-x;
324
- filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffbd362f', GradientType=0);
325
- border-color:#bd362f #bd362f #802420;
326
- border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
327
- *background-color:#bd362f;
328
- filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);
329
-
330
- &:hover, &:active {
331
- color:#ffffff;
332
- background-color:#bd362f;
333
- *background-color:#a9302a;
334
- }
335
- }
336
- }
337
- }
338
-
339
- .progress {
340
- background: -moz-linear-gradient(center bottom , #FFFFFF 0%, #F7F7F7 100%) repeat scroll 0 0 #FFFFFF;
341
- border: 1px solid #D1D1D1;
342
- border-radius: 3px 3px 3px 3px;
343
- box-shadow: 0 0 3px rgba(0, 0, 0, 0.1) inset;
344
- float: right;
345
- height: 22px;
346
- line-height: 2em;
347
- margin: 0;
348
- overflow: hidden;
349
- padding: 0;
350
- width: 200px;
351
- }
352
-
353
- .bar {
354
- background-color: #83B4D8;
355
- background-image: -moz-linear-gradient(center bottom , #72A7CF 0%, #90C5EE 100%);
356
- border-radius: 3px 3px 3px 3px;
357
- box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
358
- height: 100%;
359
- // margin-top: -26px;
360
- width: 0;
361
- z-index: 9;
362
- }
363
-
364
- .progress .percent {
365
- color: rgba(0, 0, 0, 0.6);
366
- padding: 0 8px;
367
- position: relative;
368
- text-shadow: 0 1px 0 rgba(255, 255, 255, 0.4);
369
- width: 200px;
370
- z-index: 10;
371
- }
372
-
373
- ul.wpuf-category-checklist {
374
- list-style: none;
375
- margin: 0;
376
- padding: 0;
377
-
378
- li {
379
- margin-bottom: 5px;
380
- padding: 0;
381
- }
382
-
383
- ul.children {
384
- list-style: none;
385
- margin-left: 25px;
386
- }
387
- }
388
-
389
- #wpuf-insert-image-container {
390
- .clearfix();
391
- margin-bottom: 3px;
392
-
393
- a.wpuf-insert-image {
394
- text-decoration: none;
395
- // float: left;
396
- border: 1px solid #DFDFDF;
397
- font-size: 11px;
398
- .border-radius(3px);
399
- padding: 4px 6px;
400
- margin-right: 10px;
401
-
402
- .wpuf-media-icon {
403
- // background: url('../images/photo.png') no-repeat;
404
- height: 12px;
405
- width: 12px;
406
- // display: inline-block;
407
- }
408
- }
409
- }
410
-
411
- .wpuf-fields-list {
412
- box-sizing: border-box;
413
- margin: 0;
414
- padding: 0;
415
- list-style: none;
416
-
417
- li {
418
- padding: 0;
419
- margin: 0 0 6px;
420
- }
421
-
422
- &.wpuf-list-inline {
423
- margin-left: -5px;
424
-
425
- li {
426
- display: inline-block;
427
- padding-left: 5px;
428
- padding-right: 5px;
429
- }
430
- }
431
- }
432
-
433
- table.wpuf-repeatable-field {
434
- border-collapse: collapse;
435
-
436
- & * {
437
- box-sizing: border-box;
438
- }
439
-
440
- input {
441
- width: 100%;
442
- }
443
-
444
- .wpuf-repeater-buttons {
445
- width: 75px;
446
- padding-left: 12px;
447
-
448
- img {
449
- width: 100%;
450
- height: auto;
451
- }
452
-
453
- i {
454
- display: inline-block;
455
- width: 15px;
456
- height: 15px;
457
- margin: 2px 4px 0 0;
458
- }
459
- }
460
- }
461
- }
462
-
463
- label.wpuf-form-sub-label {
464
- font-size: 12px;
465
- display: inline-block;
466
- padding-top: 5px;
467
- }
468
-
469
- .wpuf-address-field {
470
- .clearfix();
471
- width: 100%;
472
- margin-bottom: 10px;
473
-
474
- &.city_name,
475
- &.state,
476
- &.zip,
477
- &.country_select {
478
- float: left;
479
- width: 47%;
480
- }
481
-
482
- &.city_name,
483
- &.zip {
484
- margin-right: 4%;
485
- }
486
-
487
- &.zip {
488
- clear: both;
489
- }
490
- }
491
-
492
- .wpuf-section-wrap {
493
- border-bottom: 1px solid #ccc;
494
- margin: 15px 0;
495
-
496
- h2.wpuf-section-title {
497
- margin: 0;
498
- }
499
-
500
- .wpuf-section-details {
501
- padding: 4px 0 8px;
502
- font-size: 12px;
503
- }
504
- }
505
- }
506
-
507
- &.form-label-above li {
508
- .wpuf-label,
509
- .wpuf-fields {
510
- display: block;
511
- float: none;
512
- width: 100%;
513
- }
514
-
515
- .wpuf-label {
516
- margin-bottom: 10px;
517
- }
518
- }
519
-
520
- &.form-label-right li {
521
- .wpuf-label {
522
- float: right;
523
- }
524
- }
525
-
526
- &.form-label-hidden li {
527
- .wpuf-label {
528
- display: none;
529
- }
530
-
531
- .wpuf-fields {
532
- display: block;
533
- float: none;
534
- width: 100%;
535
- }
536
- }
537
-
538
- .wpuf-submit {
539
-
540
- input[type=submit] {
541
- font-size: 16px;
542
- padding: 5px 15px;
543
- border: 1px solid #ccc;
544
- .border-radius(3px);
545
- .core-button();
546
- }
547
-
548
- .button-primary-disabled {
549
- color: #94cde7 !important;
550
- background: #298cba !important;
551
- border-color: #1b607f !important;
552
- -webkit-box-shadow: none !important;
553
- box-shadow: none !important;
554
- text-shadow: 0 -1px 0 rgba(0,0,0,0.1) !important;
555
- cursor: default;
556
- }
557
-
558
- .wpuf-errors {
559
- background: #FFE4E4;
560
- border: 1px solid darken(#FFE4E4, 10%);
561
- margin: 10px 0;
562
- padding: 10px;
563
- .border-radius(3px);
564
- font-size: 13px;
565
- }
566
- }
567
-
568
- &:not(.form-label-left) .wpuf-submit .wpuf-label {
569
- display: none !important;
570
- }
571
- }
572
-
573
- #wpuf-login-form {
574
- label {
575
- display: block;
576
- }
577
-
578
- .forgetmenot label {
579
- display: inline-block;
580
- }
581
- }
582
-
583
- .wpuf_sub_info {
584
- padding: 0;
585
- margin: 10px 5px;
586
- border: 1px solid @borderColor;
587
- border-radius: 3px;
588
-
589
- h3 {
590
- background-color: #f1f1f1;
591
- padding: 10px;
592
- margin: 0 0 5px 0 !important;
593
- font-weight: 300 !important;
594
- }
595
-
596
- .wpuf-text{
597
- padding: 5px 10px;
598
- }
599
-
600
- .wpuf-expire {
601
- border-top: 1px solid @borderColor;
602
- padding-top: 5px;
603
- margin-top: 5px;
604
- }
605
- }
606
-
607
- .wpuf-coupon-info-wrap {
608
- border: 1px solid @borderColor;
609
- padding: 15px;
610
- margin-bottom: 20px;
611
-
612
- .wpuf-coupon-field-spinner {
613
- background: url( '../images/wpspin_light.gif' ) no-repeat right scroll rgba(0, 0, 0, 0);
614
- }
615
- .wpuf-copon-show {
616
- background: #EEEEEE;
617
- border-radius: 3px;
618
- border-width: 1px;
619
- box-shadow: 0 1px 0 rgba(217, 217, 217, 0.5) inset, 0 1px 0 rgba(0, 0, 0, 0.15);
620
- color: #5C5A5A;
621
- cursor: pointer;
622
- display: inline-block;
623
- font-size: 14px;
624
- padding: 5px 12px;
625
- text-decoration: none;
626
- width: 175px;
627
- margin-bottom: 8px;
628
- }
629
-
630
- .wpuf-copon-wrap {
631
- margin: 15px 0;
632
- }
633
-
634
- .wpuf-pack-info {
635
- margin-bottom: 20px;
636
-
637
- h3 {
638
- margin: 0 0 10px 0;
639
- padding: 0 0 10px 0;
640
- border-bottom: 1px solid @borderColor;
641
-
642
- a {
643
- float: right;
644
- text-decoration: none;
645
- background: @mainColor;
646
- color: #fff;
647
- padding: 3px 8px;
648
- font-size: 14px;
649
- }
650
- }
651
-
652
- wpuf-subscription-error {
653
- color: #D8000C;
654
- }
655
- }
656
-
657
- .wpuf-copon-show:hover {
658
- background: none repeat scroll 0 0 #1E8CBE;
659
- border-color: #0074A2;
660
- box-shadow: 0 1px 0 rgba(120, 200, 230, 0.6) inset;
661
- color: #FFFFFF;
662
- }
663
-
664
- a.wpuf-apply-coupon {
665
- text-decoration: none;
666
- font-size: 11px;
667
- margin-top: 10px;
668
- margin-right: 10px;
669
- background: #21759b;
670
- color: #fff;
671
- padding: 5px 10px;
672
- display: inline-block;
673
- .border-radius(3px);
674
- }
675
-
676
- .wpuf-copon-cancel {
677
- text-decoration: none;
678
- font-size: 11px;
679
- }
680
- }
681
-
682
- .entry-content ul.wpuf_packs,
683
- ul.wpuf_packs {
684
- overflow: hidden;
685
- margin: 15px;
686
-
687
- > li {
688
- background: #fff;
689
- border: 1px solid #DDD;
690
- border-radius: 5px 5px 5px 5px;
691
- float: left;
692
- list-style: none outside none;
693
- margin: 5px 25px 25px 0;
694
- position: relative;
695
- width: 200px;
696
- box-shadow: 0 2px 6px rgba(100, 100, 100, 0.3);
697
-
698
- &:first-child {
699
- margin-left: 5px;
700
- }
701
- }
702
-
703
- h3 {
704
- background: #52B5D5;
705
- color: #fff;
706
- font-size: 18px;
707
- font-weight: normal;
708
- margin: 0;
709
- padding: 10px !important;
710
- text-align: center;
711
- border-bottom: 1px solid darken(#52B5D5, 5%);
712
- }
713
-
714
- .wpuf-pricing-wrap {
715
- background: @mainColor;
716
-
717
- .wpuf-sub-amount {
718
- position: relative;
719
- text-align: center;
720
- color: #FFF;
721
- border-bottom: 1px solid darken(@mainColor, 5%);
722
- padding: 10px 0;
723
-
724
- .wpuf-sub-symbol {
725
- font-size: 19px;
726
- position: absolute;
727
- top: 25px;
728
- line-height: 10px;
729
- }
730
-
731
- .wpuf-sub-cost {
732
- font-size: 40px;
733
- margin-left: 10px;
734
- line-height: 50px;
735
- }
736
-
737
- .wpuf-pack-cycle {
738
- font-size: 13px;
739
- padding-bottom: 5px;
740
- }
741
- }
742
- }
743
-
744
- .wpuf-sub-body {
745
- margin: 0;
746
- padding: 8px 0 0 8px;
747
- background: #fff;
748
- font-size: 11px;
749
- color: #999;
750
- }
751
-
752
- .wpuf-sub-button {
753
- text-align: center;
754
- margin-bottom: 20px;
755
- margin-top: 20px;
756
- overflow: hidden;
757
-
758
- a {
759
- // .core-button();
760
- background: @mainColor;
761
- color: #fff;
762
- text-decoration: none;
763
- padding: 5px 10px;
764
- .border-radius(3px);
765
- display: inline-block;
766
-
767
- &:hover {
768
- background: darken(@mainColor, 10%);
769
- }
770
- }
771
-
772
- a:hover {
773
- background: none repeat scroll 0 0 #1E8CBE;
774
- border-color: #0074A2;
775
- box-shadow: 0 1px 0 rgba(120, 200, 230, 0.6) inset;
776
- color: #FFFFFF;
777
- }
778
- }
779
-
780
- .wpuf-sub-desciption {
781
- margin-top: 15px;
782
-
783
- ul, li {
784
- margin: 0;
785
- padding: 0;
786
- list-style: none;
787
- }
788
-
789
- li {
790
- text-align: center;
791
- border-top: 1px solid #eee;
792
- padding: 7px 0;
793
-
794
- &:last-child {
795
- border-bottom: 1px solid #eee;
796
- }
797
-
798
- &:first-child {
799
- border-top: none;
800
- }
801
- }
802
-
803
- p {
804
- padding: 0 10px;
805
- margin-bottom: 15px;
806
- }
807
- }
808
-
809
- .button {
810
- background: none repeat scroll 0 0 #2EA2CC;
811
- border-color: #0074A2;
812
- box-shadow: 0 1px 0 rgba(120, 200, 230, 0.5) inset, 0 1px 0 rgba(0, 0, 0, 0.15);
813
- color: #FFFFFF;
814
- text-decoration: none;
815
- padding: 0 12px 2px;
816
- color: #fff;
817
- }
818
-
819
- .cost {
820
- background: red;
821
- border-radius: 30px 30px 30px 30px;
822
- color: #FFFFFF;
823
- margin: -16px -12px 0 0;
824
- padding: 10px 8px 8px;
825
- position: absolute;
826
- right: 0;
827
- top: 0;
828
- }
829
- }
830
-
831
- /* css for timepicker */
832
- .ui-timepicker-div .ui-widget-header { margin-bottom: 8px; }
833
- .ui-timepicker-div dl { text-align: left; }
834
- .ui-timepicker-div dl dt { height: 25px; margin-bottom: -25px; }
835
- .ui-timepicker-div dl dd { margin: 0 10px 10px 65px; }
836
- .ui-timepicker-div td { font-size: 90%; }
837
- .ui-tpicker-grid-label { background: none; border: none; margin: 0; padding: 0; }
838
-
839
- .ui-timepicker-rtl{ direction: rtl; }
840
- .ui-timepicker-rtl dl { text-align: right; }
841
- .ui-timepicker-rtl dl dd { margin: 0 65px 10px 10px; }
842
-
843
- // Password Strength
844
- #pass-strength-result {
845
- border-style: solid;
846
- border-width: 1px;
847
- float: left;
848
- margin: 0;
849
- padding: 3px 5px;
850
- text-align: center;
851
- width: 200px;
852
- display: none;
853
- background-color: #eee;
854
- border-color: #ddd !important;
855
-
856
- &.bad {
857
- background-color: #ffb78c;
858
- border-color: #ff853c !important;
859
- }
860
-
861
- &.good {
862
- background-color: #ffec8b;
863
- border-color: #fc0 !important;
864
- }
865
-
866
- &.short {
867
- background-color: #ffa0a0;
868
- border-color: #f04040 !important;
869
- }
870
-
871
- &.strong {
872
- background-color: #c3ff88;
873
- border-color: #8dff1c !important;
874
- }
875
- }
876
-
877
- .password[type="text"]{
878
- display: none;
879
- }
880
-
881
- table.wpuf-table {
882
- border: 1px solid #E7E7E7;
883
- margin: 0 0px 10px 0;
884
- text-align: left;
885
- width: 100%;
886
-
887
- thead th, th {
888
- color: #888888;
889
- font-size: 12px;
890
- font-weight: bold;
891
- line-height: 18px;
892
- padding: 9px 24px;
893
- }
894
-
895
- td {
896
- border-top: 1px solid #E7E7E7;
897
- padding: 6px 24px;
898
- }
899
- }
900
-
901
- #wpuf-payment-gateway {
902
- ul.wpuf-payment-gateways {
903
- list-style: none;
904
- margin: 10px 0;
905
-
906
- li {
907
- margin: 0;
908
-
909
- .wpuf-payment-instruction {
910
- padding: 8px 10px;
911
- margin: 0 10px;
912
- }
913
-
914
- .wpuf-instruction {
915
- padding: 8px 10px;
916
- margin-bottom: 10px;
917
- background: #ebe8eb;
918
- font-size: 13px;
919
- .border-radius(2px);
920
- }
921
- }
922
- }
923
- }
924
-
925
- .wpuf-pagination {
926
- div.pagination{
927
- text-align:center;
928
- padding:7px;
929
- margin:3px;
930
- }
931
-
932
- .page-numbers{
933
- padding:2px 8px;
934
- margin:2px;
935
- border:1px solid #4A5154;
936
- text-decoration:none;
937
- color:#4A5154;
938
- background: #fff;
939
- border-radius: 5px;
940
- -moz-border-radius: 5px;
941
-
942
- &:hover,
943
- &:active{
944
- border:1px solid #4A5154;
945
- background-color:#4A5154;
946
- color:#fff;
947
- border-radius: 5px;
948
- -moz-border-radius: 5px;
949
- }
950
-
951
- &.current{
952
- padding:2px 8px;
953
- margin:2px;
954
- border:1px solid #4A5154;
955
- font-weight:bold;
956
- background-color:#4A5154;
957
- color:#FFF;
958
- border-radius: 5px;
959
- -moz-border-radius: 5px;
960
- }
961
- }
962
- }
963
-
964
- /** author info **/
965
- .wpuf-author {
966
- .clearfix();
967
- margin: 20px 0;
968
-
969
- h3{
970
- margin: 0 !important;
971
- background: #CFCFCF;
972
- text-align: left;
973
- padding: 3px 10px;
974
- }
975
-
976
- .wpuf-author-inside {
977
- background: none repeat scroll 0 0 #F0F0F0;
978
- border-bottom: 2px solid #DDDDDD;
979
- height: auto;
980
- padding-left: 10px;
981
- padding-top: 15px;
982
- margin-bottom: 15px;
983
- .clearfix();
984
-
985
- .wpuf-user-image {
986
- float: left;
987
- padding-right: 15px;
988
- }
989
-
990
- p {
991
- margin-bottom: 10px !important;
992
- }
993
-
994
- p.wpuf-author-info {
995
- padding-top: 8px;
996
- word-wrap: break-word;
997
- }
998
-
999
- p.wpuf-user-name a {
1000
- color: #335160;
1001
- font-size: 1.2em;
1002
- font-weight: bold;
1003
- }
1004
- }
1005
- }
1006
-
1007
- /** jQuery Suggest **/
1008
-
1009
- .ac_results {
1010
- padding: 0;
1011
- margin: 0;
1012
- list-style: none;
1013
- position: absolute;
1014
- z-index: 10000;
1015
- display: none;
1016
- border: 1px solid #ccc;
1017
-
1018
- li {
1019
- padding: 2px 5px;
1020
- white-space: nowrap;
1021
- text-align: left;
1022
- }
1023
- }
1024
-
1025
- .ac_over {
1026
- cursor: pointer;
1027
- }
1028
-
1029
- .ac_match {
1030
- text-decoration: underline;
1031
- }
1032
-
1033
- /*------------------------------------
1034
- * Multistep form
1035
- *-----------------------------------*/
1036
- fieldset.wpuf-multistep-fieldset {
1037
- position: relative;
1038
- padding-bottom: 50px;
1039
- border: none;
1040
- display: none;
1041
-
1042
- &.field-active {
1043
- display: block;
1044
- }
1045
-
1046
- .wpuf-multistep-prev-btn,
1047
- .wpuf-multistep-next-btn {
1048
- position: absolute;
1049
- bottom: 5px;
1050
- }
1051
- .wpuf-multistep-prev-btn {
1052
- left: 10px;
1053
- }
1054
- .wpuf-multistep-next-btn {
1055
- right: 10px;
1056
- }
1057
- }
1058
-
1059
- .wpuf-multistep-progressbar {
1060
- overflow: hidden;
1061
- }
1062
-
1063
- .wpuf-form .wpuf-multistep-progressbar {
1064
-
1065
- @stepBackground: #00a0d2;
1066
-
1067
- ul.wpuf-step-wizard {
1068
- margin: 20px 0 40px 0;
1069
- padding: 0;
1070
- list-style: none;
1071
-
1072
- * {
1073
- box-sizing: border-box;
1074
- }
1075
-
1076
- li {
1077
- background-color: #E4E4E4;
1078
- border-radius: 5px;
1079
- display: inline-block;
1080
- padding: 10px 30px 10px 40px;
1081
- margin-right: -7px;
1082
- width: auto;
1083
- margin: 0;
1084
- position: relative;
1085
- text-align: center;
1086
-
1087
- &::before,
1088
- &::after {
1089
- border: solid transparent;
1090
- content: " ";
1091
- height: 0;
1092
- width: 0;
1093
- position: absolute;
1094
- border-color: transparent;
1095
- border-left-color: #fff;
1096
- border-radius: 10px;
1097
- }
1098
-
1099
- &::before {
1100
- border-width: 26px;
1101
- margin-top: -14px;
1102
- right: -50px;
1103
- z-index: 98;
1104
- }
1105
-
1106
- &::after {
1107
- border-left-color: #E4E4E4;
1108
- border-width: 25px;
1109
- margin-top: -37px;
1110
- right: -44px;
1111
- z-index: 99;
1112
- }
1113
-
1114
- &.active-step {
1115
- background-color: @stepBackground;
1116
- color: #fff;
1117
-
1118
- &::after {
1119
- border-left-color: @stepBackground;
1120
- }
1121
- }
1122
-
1123
- &:last-child::after {
1124
- border-left-color: transparent;
1125
- }
1126
- }
1127
- }
1128
-
1129
- .ui-widget-header {
1130
- background: @stepBackground;
1131
- }
1132
-
1133
- &.ui-progressbar {
1134
- margin-bottom: 30px;
1135
- height: 25px;
1136
- border: 1px solid @borderColor;
1137
- position: relative;
1138
-
1139
- .wpuf-progress-percentage {
1140
- position: absolute;
1141
- left: 50%;
1142
- font-size: 12px;
1143
- font-weight: bold;
1144
- text-shadow: 1px 1px 0 #fff;
1145
- top: 20%;
1146
- }
1147
- }
1148
- }
1149
- input.wpuf-btn {
1150
- text-decoration: none !important;
1151
- font-size: 15px !important;
1152
- margin-top: 10px;
1153
- margin-right: 10px;
1154
- background: #21759b !important;
1155
- color: #fff !important;
1156
- padding: 5px 10px;
1157
- display: inline-block;
1158
- -webkit-border-radius: 3px !important;
1159
- -moz-border-radius: 3px !important;
1160
- border-radius: 3px !important;
1161
- border: none !important;
1162
- }
1163
- /*rtl*/
1164
- body.rtl{
1165
- ul.wpuf-form li .wpuf-label{
1166
- float: right;
1167
- }
1168
- }
1169
-
1170
- // landscape phones and smaller
1171
- @media (max-width: 480px) {
1172
- ul.wpuf-form {
1173
- li {
1174
- .wpuf-label, .wpuf-fields {
1175
- float: none;
1176
- width: 100%;
1177
- }
1178
- }
1179
- }
1180
- }
1181
-
1182
- .wpuf-form {
1183
- .required {
1184
- color: red;
1185
- font-weight: 700;
1186
- border: 0;
1187
- }
1188
- }
1189
- .wpuf-dashboard-container {
1190
- .wpuf-dashboard-navigation {
1191
- width: 30%;
1192
- float: left;
1193
-
1194
- a {
1195
- text-decoration: none;
1196
- box-shadow: none;
1197
- }
1198
-
1199
- ul {
1200
- list-style: none;
1201
- li {
1202
- padding-bottom: 2px;
1203
- }
1204
- }
1205
- }
1206
-
1207
- .wpuf-dashboard-content {
1208
- width: 68%;
1209
- float: right;
1210
- }
1211
-
1212
- table.items-table {
1213
- a {
1214
- text-decoration: none;
1215
- box-shadow: none;
1216
- }
1217
-
1218
- border: 0;
1219
-
1220
- th, td {
1221
- border: 0;
1222
- padding: 10px;
1223
- }
1224
-
1225
- tr {
1226
- outline: 1px solid #f1f1f1;
1227
- }
1228
-
1229
- .items-list-header {
1230
- background-color: #f1f1f1;
1231
- }
1232
- }
1233
-
1234
- .wpuf-update-profile-form {
1235
- .form-row-first {
1236
- float: left;
1237
- width: 47%;
1238
- overflow: visible;
1239
- }
1240
-
1241
- .form-row-last {
1242
- float: right;
1243
- width: 47%;
1244
- overflow: visible;
1245
- }
1246
- }
1247
- }
1248
-
1249
- .wpuf-toc-container {
1250
- .wpuf-fields {
1251
- position: relative;
1252
-
1253
- .wpuf-toc-checkbox {
1254
- position: absolute;
1255
- top: 0;
1256
- left: 0;
1257
- }
1258
-
1259
- &.has-toc-checkbox {
1260
-
1261
- .wpuf-toc-description {
1262
- margin-left: 25px;
1263
- }
1264
- }
1265
- }
1266
- }
1267
-
1268
- // Google Map
1269
- // --------------------------------------------------
1270
- .wpuf-field-google-map {
1271
- height: 300px;
1272
- width: 100%;
1273
- }
1274
-
1275
- .wpuf-form-google-map {
1276
- height: 300px;
1277
- width: 100%;
1278
- }
1279
-
1280
- input[type="text"].wpuf-google-map-search {
1281
- margin-top: 10px !important;
1282
- border: 1px solid transparent !important;
1283
- border-radius: 2px 0 0 2px !important;
1284
- box-sizing: border-box !important;
1285
- -moz-box-sizing: border-box !important;
1286
- height: 32px !important;
1287
- outline: none !important;
1288
- box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3) !important;
1289
- background-color: #fff !important;
1290
- text-overflow: ellipsis !important;
1291
- width: 170px !important;
1292
- font-family: Roboto !important;
1293
- font-size: 15px !important;
1294
- font-weight: 300 !important;
1295
- padding: 0 11px 0 13px !important;
1296
- display: none;
1297
-
1298
- .gm-style & {
1299
- display: block;
1300
- }
1301
- }
1302
-
1303
- .wpuf-form-google-map-container {
1304
-
1305
- input[type="text"].wpuf-google-map-search {
1306
- width: 230px !important;
1307
- }
1308
-
1309
- &.hide-search-box {
1310
-
1311
- .gm-style input[type="text"].wpuf-google-map-search {
1312
- display: none;
1313
- }
1314
- }
1315
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/css/wpuf-form-builder.css CHANGED
@@ -97,37 +97,6 @@
97
  padding: 10px 20px;
98
  min-width: 100px;
99
  }
100
- .swal2-modal .swal2-buttonswrapper button {
101
- display: inline-block;
102
- padding: 6px 12px;
103
- margin-bottom: 0;
104
- font-size: 14px;
105
- font-weight: 400;
106
- line-height: 1.42857143;
107
- text-align: center;
108
- white-space: nowrap;
109
- vertical-align: middle;
110
- -ms-touch-action: manipulation;
111
- touch-action: manipulation;
112
- cursor: pointer;
113
- -webkit-user-select: none;
114
- -moz-user-select: none;
115
- -ms-user-select: none;
116
- user-select: none;
117
- background-image: none;
118
- border: 1px solid transparent;
119
- border-radius: 4px;
120
- }
121
- .swal2-modal .swal2-buttonswrapper .swal2-confirm {
122
- color: #fff;
123
- background-color: #337ab7;
124
- border-color: #2e6da4;
125
- }
126
- .swal2-modal .swal2-buttonswrapper .swal2-cancel {
127
- color: #fff;
128
- background-color: #d9534f;
129
- border-color: #d43f3a;
130
- }
131
  .loader,
132
  .loader:after {
133
  border-radius: 50%;
@@ -286,9 +255,15 @@
286
  #wpuf-form-builder .wp-picker-holder * {
287
  box-sizing: content-box;
288
  }
 
 
 
 
 
289
  #wpuf-form-builder-settings {
290
  position: relative;
291
  margin-top: 15px;
 
292
  }
293
  #wpuf-form-builder-settings .nav-tab-wrapper {
294
  position: absolute;
@@ -657,6 +632,15 @@
657
  font-size: 16px;
658
  margin-top: 13px;
659
  }
 
 
 
 
 
 
 
 
 
660
  .panel-field-opt-repeater-columns .repeater-columns li > div {
661
  float: left;
662
  }
@@ -754,6 +738,9 @@ ul.wpuf-form li .wpuf-password-field:after {
754
  content: "";
755
  display: table;
756
  }
 
 
 
757
  .wpuf-merge-tag-wrap .merge-tag-link {
758
  position: absolute;
759
  right: 5px;
@@ -787,3 +774,381 @@ ul.wpuf-form li .wpuf-password-field:after {
787
  margin: 0;
788
  padding: 5px 10px;
789
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
97
  padding: 10px 20px;
98
  min-width: 100px;
99
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
100
  .loader,
101
  .loader:after {
102
  border-radius: 50%;
255
  #wpuf-form-builder .wp-picker-holder * {
256
  box-sizing: content-box;
257
  }
258
+ #wpuf-form-builder .tab-content {
259
+ height: calc(100vh - 140px);
260
+ overflow-y: auto;
261
+ margin-top: 15px;
262
+ }
263
  #wpuf-form-builder-settings {
264
  position: relative;
265
  margin-top: 15px;
266
+ min-height: 380px;
267
  }
268
  #wpuf-form-builder-settings .nav-tab-wrapper {
269
  position: absolute;
632
  font-size: 16px;
633
  margin-top: 13px;
634
  }
635
+ .option-field-option-chooser .plus-buttons {
636
+ padding: 5px;
637
+ font-size: 18px;
638
+ text-align: center;
639
+ cursor: pointer;
640
+ border: 1px solid #ccc;
641
+ width: 61%;
642
+ margin-left: 14%;
643
+ }
644
  .panel-field-opt-repeater-columns .repeater-columns li > div {
645
  float: left;
646
  }
738
  content: "";
739
  display: table;
740
  }
741
+ .wpuf-recaptcha-placeholder {
742
+ width: 304px;
743
+ }
744
  .wpuf-merge-tag-wrap .merge-tag-link {
745
  position: absolute;
746
  right: 5px;
774
  margin: 0;
775
  padding: 5px 10px;
776
  }
777
+ .wpuf-form-template-modal {
778
+ background: #fff;
779
+ position: fixed;
780
+ top: 5%;
781
+ bottom: 5%;
782
+ right: 10%;
783
+ left: 10%;
784
+ display: none;
785
+ box-shadow: 0 1px 20px 5px rgba(0, 0, 0, 0.1);
786
+ z-index: 160000;
787
+ }
788
+ .wpuf-form-template-modal.show {
789
+ display: block;
790
+ }
791
+ .wpuf-form-template-modal * {
792
+ box-sizing: border-box;
793
+ }
794
+ .wpuf-form-template-modal a.close {
795
+ position: absolute;
796
+ top: 0;
797
+ right: 0;
798
+ font: 300 1.71429em "dashicons" !important;
799
+ color: #777;
800
+ content: '\f335';
801
+ display: inline-block;
802
+ padding: 10px 20px;
803
+ z-index: 5;
804
+ text-decoration: none;
805
+ height: 50px;
806
+ cursor: pointer;
807
+ border-left: 1px solid #ddd;
808
+ }
809
+ .wpuf-form-template-modal a.close:hover {
810
+ background: #eee;
811
+ opacity: 0.8;
812
+ text-decoration: none;
813
+ }
814
+ .wpuf-form-template-modal a.close:active {
815
+ background: #eee;
816
+ opacity: 0.4;
817
+ }
818
+ .wpuf-form-template-modal .modal-header {
819
+ position: absolute;
820
+ top: 0;
821
+ left: 0;
822
+ right: 0;
823
+ height: 50px;
824
+ z-index: 4;
825
+ border-bottom: 1px solid #ddd;
826
+ padding-left: 15px;
827
+ box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
828
+ }
829
+ .wpuf-form-template-modal .modal-header h2 {
830
+ line-height: 50px;
831
+ text-align: left;
832
+ margin-top: 0;
833
+ color: #5d6d74;
834
+ font-size: 20px;
835
+ text-shadow: 0 1px 1px #fff;
836
+ }
837
+ .wpuf-form-template-modal .modal-header h2 small {
838
+ font-weight: normal;
839
+ font-size: 13px;
840
+ margin-left: 15px;
841
+ }
842
+ .wpuf-form-template-modal .content-container {
843
+ position: absolute;
844
+ top: 50px;
845
+ right: 0;
846
+ bottom: 50px;
847
+ left: 0;
848
+ overflow: auto;
849
+ padding: 2em 2em;
850
+ }
851
+ .wpuf-form-template-modal .content-container.no-footer {
852
+ bottom: 0;
853
+ }
854
+ .wpuf-form-template-modal .content {
855
+ margin: 0 auto;
856
+ max-width: 900px;
857
+ text-align: left;
858
+ }
859
+ .wpuf-form-template-modal .content ul {
860
+ width: 100%;
861
+ margin: 0;
862
+ padding: 0;
863
+ }
864
+ .wpuf-form-template-modal .content ul li {
865
+ float: left;
866
+ width: 31.292517006803%;
867
+ border: 1px solid #e4e4e4;
868
+ padding: 0;
869
+ margin-left: 3.0612244897959%;
870
+ margin-bottom: 30px;
871
+ position: relative;
872
+ min-height: 120px;
873
+ }
874
+ .wpuf-form-template-modal .content ul li.on-progress:before {
875
+ content: "\f463";
876
+ display: inline-block;
877
+ font: normal 20px/1 'dashicons';
878
+ color: #f56e28;
879
+ -webkit-animation: rotation 2s infinite linear;
880
+ animation: rotation 2s infinite linear;
881
+ position: absolute;
882
+ top: 40%;
883
+ left: 45%;
884
+ }
885
+ .wpuf-form-template-modal .content ul li.on-progress a {
886
+ pointer-events: none;
887
+ opacity: 0.2;
888
+ }
889
+ .wpuf-form-template-modal .content ul li:hover {
890
+ background: #F5F5F5;
891
+ }
892
+ .wpuf-form-template-modal .content ul li a {
893
+ text-decoration: none;
894
+ color: #555;
895
+ padding: 20px;
896
+ display: block;
897
+ min-height: 118px;
898
+ }
899
+ .wpuf-form-template-modal .content ul li .title {
900
+ font-size: 17px;
901
+ margin: 0 0 10px 0;
902
+ line-height: 23px;
903
+ }
904
+ .wpuf-form-template-modal .content ul li .description {
905
+ color: #888;
906
+ }
907
+ .wpuf-form-template-modal .content ul li:nth-child(3n+1) {
908
+ margin-left: 0;
909
+ clear: both;
910
+ }
911
+ .wpuf-form-template-modal .content ul li.template-inactive .title,
912
+ .wpuf-form-template-modal .content ul li.template-inactive .description {
913
+ color: #ddd;
914
+ }
915
+ .wpuf-form-template-modal .content ul li.blank-form {
916
+ text-align: center;
917
+ }
918
+ .wpuf-form-template-modal .content ul li.blank-form span {
919
+ display: block;
920
+ }
921
+ .wpuf-form-template-modal .content ul li.blank-form span.dashicons {
922
+ font-size: 45px;
923
+ color: #ddd;
924
+ margin: 0 auto;
925
+ width: auto;
926
+ height: auto;
927
+ }
928
+ .wpuf-form-template-modal footer {
929
+ position: absolute;
930
+ left: 0;
931
+ bottom: 0;
932
+ width: 100%;
933
+ padding: 12px 20px;
934
+ border-top: 1px solid #ddd;
935
+ background: #fff;
936
+ text-align: left;
937
+ }
938
+ .wpuf-form-template-modal-backdrop {
939
+ position: fixed;
940
+ z-index: 159999;
941
+ top: 0;
942
+ left: 0;
943
+ right: 0;
944
+ bottom: 0;
945
+ min-height: 360px;
946
+ background: #000;
947
+ opacity: .7;
948
+ display: none;
949
+ }
950
+ .wpuf-form-template-modal-backdrop.show {
951
+ display: block;
952
+ }
953
+ /* Smartphones (portrait and landscape) ----------- */
954
+ @media only screen and (min-device-width: 320px) and (max-device-width: 480px) {
955
+ .wpuf-form-template-modal .modal-header h2 small {
956
+ display: none;
957
+ }
958
+ .wpuf-form-template-modal .content ul li {
959
+ float: none;
960
+ width: 100%;
961
+ margin-left: 0;
962
+ }
963
+ }
964
+ .wpuf-toggle-switch {
965
+ cursor: pointer;
966
+ text-indent: -9999px;
967
+ width: 25px;
968
+ height: 15px;
969
+ background: #ccc;
970
+ display: block;
971
+ border-radius: 100px;
972
+ position: relative;
973
+ }
974
+ .wpuf-toggle-switch:after {
975
+ content: '';
976
+ position: absolute;
977
+ top: 2px;
978
+ left: 2px;
979
+ width: 12px;
980
+ height: 12px;
981
+ background: #fff;
982
+ border-radius: 50%;
983
+ transition: 0.3s;
984
+ }
985
+ .wpuf-toggle-switch.checked {
986
+ background: #0085ba;
987
+ }
988
+ .wpuf-toggle-switch.checked:after {
989
+ left: calc(90%);
990
+ transform: translateX(-100%);
991
+ }
992
+ .wpuf-toggle-switch.big {
993
+ width: 35px;
994
+ height: 20px;
995
+ }
996
+ .wpuf-toggle-switch.big:after {
997
+ top: 3px;
998
+ left: 3px;
999
+ width: 15px;
1000
+ height: 15px;
1001
+ }
1002
+ .wpuf-toggle-switch.big.checked:after {
1003
+ left: calc(95%);
1004
+ }
1005
+ .wpuf-integrations-wrap:before,
1006
+ .wpuf-integrations-wrap:after {
1007
+ content: " ";
1008
+ display: table;
1009
+ }
1010
+ .wpuf-integrations-wrap:after {
1011
+ clear: both;
1012
+ }
1013
+ .wpuf-integrations-wrap:before,
1014
+ .wpuf-integrations-wrap:after {
1015
+ content: " ";
1016
+ display: table;
1017
+ }
1018
+ .wpuf-integrations-wrap:after {
1019
+ clear: both;
1020
+ }
1021
+ .wpuf-integrations-wrap .wpuf-integration {
1022
+ margin-bottom: 15px;
1023
+ background-color: #fff;
1024
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
1025
+ border: 1px solid #e5e5e5;
1026
+ }
1027
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-header {
1028
+ padding: 0;
1029
+ position: relative;
1030
+ margin: 0 auto;
1031
+ border-bottom: 1px solid #eee;
1032
+ display: flex;
1033
+ flex-direction: row;
1034
+ }
1035
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-header .wpuf-integration-header-toggle {
1036
+ width: 65px;
1037
+ padding: 10px 10px 8px 14px;
1038
+ border-right: 1px solid #eee;
1039
+ margin-right: 10px;
1040
+ }
1041
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-header .wpuf-integration-header-label {
1042
+ width: 100%;
1043
+ padding-top: 10px;
1044
+ font-weight: 500;
1045
+ font-size: 1.1em;
1046
+ }
1047
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-header .wpuf-integration-header-label img.icon {
1048
+ height: 24px;
1049
+ width: auto;
1050
+ float: left;
1051
+ margin-top: -3px;
1052
+ margin-right: 5px;
1053
+ border: 1px solid #eee;
1054
+ border-radius: 50%;
1055
+ }
1056
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-header .wpuf-integration-header-label .label-premium {
1057
+ font-weight: normal;
1058
+ font-size: 11px;
1059
+ background: #7cbb34;
1060
+ color: #fff;
1061
+ border-radius: 3px;
1062
+ padding: 3px 5px;
1063
+ margin-left: 5px;
1064
+ }
1065
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-header .wpuf-integration-header-actions {
1066
+ width: 44px;
1067
+ display: block;
1068
+ }
1069
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-header .wpuf-integration-header-actions button.toggle-area {
1070
+ border: none;
1071
+ border-left: 1px solid #eee;
1072
+ background-color: #fff;
1073
+ width: 100%;
1074
+ height: 100%;
1075
+ outline: none;
1076
+ }
1077
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-header .wpuf-integration-header-actions .toggle-indicator:before {
1078
+ content: "\f140";
1079
+ content: "\f142";
1080
+ display: inline-block;
1081
+ font: normal 20px/1 dashicons;
1082
+ speak: none;
1083
+ -webkit-font-smoothing: antialiased;
1084
+ -moz-osx-font-smoothing: grayscale;
1085
+ text-decoration: none !important;
1086
+ }
1087
+ .wpuf-integrations-wrap .wpuf-integration.collapsed .wpuf-integration-settings {
1088
+ display: none;
1089
+ }
1090
+ .wpuf-integrations-wrap .wpuf-integration.collapsed .wpuf-integration-header .wpuf-integration-header-actions .toggle-indicator:before {
1091
+ content: "\f140";
1092
+ }
1093
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings {
1094
+ padding: 15px;
1095
+ }
1096
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings p:first-child {
1097
+ margin-top: 0;
1098
+ }
1099
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings .wpuf-int-form-row {
1100
+ margin-bottom: 10px;
1101
+ }
1102
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings .wpuf-int-form-row:before,
1103
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings .wpuf-int-form-row:after {
1104
+ content: " ";
1105
+ display: table;
1106
+ }
1107
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings .wpuf-int-form-row:after {
1108
+ clear: both;
1109
+ }
1110
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings .wpuf-int-form-row:before,
1111
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings .wpuf-int-form-row:after {
1112
+ content: " ";
1113
+ display: table;
1114
+ }
1115
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings .wpuf-int-form-row:after {
1116
+ clear: both;
1117
+ }
1118
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings .wpuf-int-form-row .wpuf-int-field-label {
1119
+ float: left;
1120
+ width: 160px;
1121
+ }
1122
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings .wpuf-int-form-row .wpuf-int-field-label a.wpuf-integration-updater {
1123
+ text-decoration: none;
1124
+ float: right;
1125
+ margin-right: 10px;
1126
+ }
1127
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings .wpuf-int-form-row .wpuf-int-field-label a.wpuf-integration-updater.updating .dashicons:before {
1128
+ display: inline-block;
1129
+ -webkit-animation: rotation 2s infinite linear;
1130
+ animation: rotation 2s infinite linear;
1131
+ }
1132
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings .wpuf-int-form-row .wpuf-int-field {
1133
+ float: left;
1134
+ width: 80%;
1135
+ position: relative;
1136
+ }
1137
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings .wpuf-int-form-row .wpuf-int-field .wpuf-int-field-small {
1138
+ max-width: 350px;
1139
+ position: relative;
1140
+ }
1141
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings .wpuf-int-form-row .wpuf-int-field .wpuf-merge-tag-wrap .merge-tag-link {
1142
+ top: 5px;
1143
+ }
1144
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings .wpuf-int-form-row .wpuf-int-field .wpuf-merge-tag-wrap .wpuf-merge-tags {
1145
+ top: 30px;
1146
+ }
1147
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings fieldset {
1148
+ border: 1px solid #eee;
1149
+ padding: 10px;
1150
+ margin-bottom: 10px;
1151
+ }
1152
+ .wpuf-integrations-wrap .wpuf-integration .wpuf-integration-settings fieldset legend {
1153
+ padding: 0 10px;
1154
+ }
assets/images/active.png ADDED
Binary file
assets/images/inactive.png ADDED
Binary file
assets/images/recaptcha-placeholder.png ADDED
Binary file
assets/js-templates/form-components.php ADDED
@@ -0,0 +1,976 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <script type="text/x-template" id="tmpl-wpuf-builder-stage">
2
+ <div id="form-preview-stage">
3
+ <h4 v-if="!form_fields.length" class="text-center">
4
+ <?php _e( 'Add fields by dragging the fields from the right sidebar to this area.', 'wpuf' ) ?>
5
+ </h4>
6
+
7
+ <!-- {{ field_settings.label_position }} -->
8
+
9
+ <ul :class="['wpuf-form', 'sortable-list', 'form-label-' + label_type]">
10
+ <li
11
+ v-for="(field, index) in form_fields"
12
+ :key="field.id"
13
+ :class="[
14
+ 'field-items', 'wpuf-el', field.name, field.css, 'form-field-' + field.template,
15
+ ('hidden' === field.input_type) ? 'hidden-field' : '',
16
+ parseInt(editing_form_id) === parseInt(field.id) ? 'current-editing' : ''
17
+ ]"
18
+ :data-index="index"
19
+ data-source="stage"
20
+ >
21
+ <div v-if="!is_full_width(field.template)" class="wpuf-label">
22
+ <label v-if="!is_invisible(field)" :for="'wpuf-' + field.name ? field.name : 'cls'">
23
+ {{ field.label }} <span v-if="field.required && 'yes' === field.required" class="required">*</span>
24
+ </label>
25
+ </div>
26
+
27
+ <component v-if="is_template_available(field)" :is="'form-' + field.template" :field="field"></component>
28
+
29
+ <div v-if="is_pro_feature(field.template)" class="stage-pro-alert">
30
+ <label class="wpuf-pro-text-alert">
31
+ <a :href="pro_link" target="_blank"><strong>{{ get_field_name(field.template) }}</strong> <?php _e( 'is available in Pro Version', 'wpuf' ); ?></a>
32
+ </label>
33
+ </div>
34
+
35
+ <div v-if="!is_failed_to_validate(field.template)" class="control-buttons">
36
+ <p>
37
+ <i class="fa fa-arrows move"></i>
38
+ <i class="fa fa-pencil" @click="open_field_settings(field.id)"></i>
39
+ <i class="fa fa-clone" @click="clone_field(field.id, index)"></i>
40
+ <i class="fa fa-trash-o" @click="delete_field(index)"></i>
41
+ </p>
42
+ </div>
43
+ </li>
44
+
45
+ <li v-if="!form_fields.length" class="field-items empty-list-item"></li>
46
+
47
+ <li class="wpuf-submit">
48
+ <div class="wpuf-label">&nbsp;</div>
49
+
50
+ <?php do_action( 'wpuf-form-builder-template-builder-stage-submit-area' ); ?>
51
+ </li>
52
+ </ul><!-- .wpuf-form -->
53
+
54
+ <div v-if="hidden_fields.length" class="hidden-field-list">
55
+ <h4><?php _e( 'Hidden Fields', 'wpuf' ); ?></h4>
56
+
57
+ <ul class="wpuf-form">
58
+ <li
59
+ v-for="(field, index) in hidden_fields"
60
+ :class="['field-items', parseInt(editing_form_id) === parseInt(field.id) ? 'current-editing' : '']"
61
+ >
62
+ <strong><?php _e('key', 'wpuf'); ?></strong>: {{ field.name }} | <strong><?php _e( 'value', 'wpuf' ); ?></strong>: {{ field.meta_value }}
63
+
64
+ <div class="control-buttons">
65
+ <p>
66
+ <i class="fa fa-pencil" @click="open_field_settings(field.id)"></i>
67
+ <i class="fa fa-clone" @click="clone_field(field.id, index)"></i>
68
+ <i class="fa fa-trash-o" @click="delete_hidden_field(field.id)"></i>
69
+ </p>
70
+ </div>
71
+ </li>
72
+ </ul>
73
+ </div>
74
+
75
+ <?php do_action( 'wpuf-form-builder-template-builder-stage-bottom-area' ); ?>
76
+ </div><!-- #form-preview-stage -->
77
+ </script>
78
+
79
+ <script type="text/x-template" id="tmpl-wpuf-field-checkbox">
80
+ <div v-if="met_dependencies" class="panel-field-opt panel-field-opt-checkbox">
81
+ <label v-if="option_field.title" :class="option_field.title_class">
82
+ {{ option_field.title }} <help-text v-if="option_field.help_text" :text="option_field.help_text"></help-text>
83
+ </label>
84
+ <ul :class="[option_field.inline ? 'list-inline' : '']">
85
+ <li v-for="(option, key) in option_field.options">
86
+ <label>
87
+ <input type="checkbox" :value="key" v-model="value"> {{ option }}
88
+ </label>
89
+ </li>
90
+ </ul>
91
+ </div>
92
+ </script>
93
+
94
+ <script type="text/x-template" id="tmpl-wpuf-field-html_help_text">
95
+ <div class="panel-field-opt panel-field-html-help-text" v-html="option_field.text"></div>
96
+ </script>
97
+
98
+ <script type="text/x-template" id="tmpl-wpuf-field-option-data">
99
+ <div class="panel-field-opt panel-field-opt-text">
100
+ <label class="clearfix">
101
+ {{ option_field.title }} <help-text v-if="option_field.help_text" :text="option_field.help_text"></help-text>
102
+ <span class="pull-right">
103
+ <input type="checkbox" v-model="show_value"> <?php _e( 'Show values', 'wpuf' ); ?>
104
+ </span>
105
+ </label>
106
+
107
+ <ul :class="['option-field-option-chooser', show_value ? 'show-value' : '']">
108
+ <li class="clearfix margin-0 header">
109
+ <div class="selector">&nbsp;</div>
110
+
111
+ <div class="sort-handler">&nbsp;</div>
112
+
113
+ <div class="label">
114
+ <?php _e( 'Label', 'wpuf' ); ?>
115
+ </div>
116
+
117
+ <div v-if="show_value" class="value">
118
+ <?php _e( 'Value', 'wpuf' ) ?>
119
+ </div>
120
+
121
+ <div class="action-buttons">&nbsp;</div>
122
+ </li>
123
+ </ul>
124
+
125
+ <ul :class="['option-field-option-chooser margin-0', show_value ? 'show-value' : '']">
126
+ <li v-for="(option, index) in options" :key="option.id" :data-index="index" class="clearfix option-field-option">
127
+ <div class="selector">
128
+ <input
129
+ v-if="option_field.is_multiple"
130
+ type="checkbox"
131
+ :value="option.value"
132
+ v-model="selected"
133
+ >
134
+ <input
135
+ v-else
136
+ type="radio"
137
+ :value="option.value"
138
+ v-model="selected"
139
+ class="option-chooser-radio"
140
+ >
141
+ </div>
142
+
143
+ <div class="sort-handler">
144
+ <i class="fa fa-bars"></i>
145
+ </div>
146
+
147
+ <div class="label">
148
+ <input type="text" v-model="option.label" @input="set_option_label(index, option.label)">
149
+ </div>
150
+
151
+ <div v-if="show_value" class="value">
152
+ <input type="text" v-model="option.value">
153
+ </div>
154
+
155
+ <div class="action-buttons clearfix">
156
+ <i class="fa fa-minus-circle" @click="delete_option(index)"></i>
157
+ </div>
158
+ </li>
159
+ <li>
160
+ <div class="plus-buttons clearfix" @click="add_option">
161
+ <i class="fa fa-plus-circle"></i>
162
+ </div>
163
+ </li>
164
+ </ul>
165
+
166
+ <a v-if="!option_field.is_multiple && selected" href="#clear" @click.prevent="clear_selection"><?php _e( 'Clear Selection', 'wpuf' ); ?></a>
167
+ </div>
168
+ </script>
169
+
170
+ <script type="text/x-template" id="tmpl-wpuf-field-option-pro-feature-alert">
171
+ <div class="panel-field-opt panel-field-opt-pro-feature">
172
+ <label>{{ option_field.title }}</label><br>
173
+ <label class="wpuf-pro-text-alert">
174
+ <a :href="pro_link" target="_blank"><?php _e( 'Available in Pro Version', 'wpuf' ); ?></a>
175
+ </label>
176
+ </div>
177
+ </script>
178
+
179
+ <script type="text/x-template" id="tmpl-wpuf-field-options">
180
+ <div class="wpuf-form-builder-field-options">
181
+ <div v-if="!parseInt(editing_field_id)" class="options-fileds-section text-center">
182
+ <p>
183
+ <span class="loader"></span>
184
+ </p>
185
+ </div>
186
+
187
+ <div v-else>
188
+ <div class="option-fields-section">
189
+ <h3 class="section-title clearfix" @click="show_basic_settings = !show_basic_settings">
190
+ {{ form_field_type_title }} <i :class="[show_basic_settings ? 'fa fa-angle-down' : 'fa fa-angle-right']"></i>
191
+ </h3>
192
+
193
+ <transition name="slide-fade">
194
+ <div v-show="show_basic_settings" class="option-field-section-fields">
195
+ <component
196
+ v-for="option_field in basic_settings"
197
+ :key="option_field.name"
198
+ :is="'field-' + option_field.type"
199
+ :option_field="option_field"
200
+ :editing_form_field="editing_form_field"
201
+ ></component>
202
+ </div>
203
+ </transition>
204
+ </div>
205
+
206
+
207
+ <div v-if="advanced_settings.length" class="option-fields-section">
208
+ <h3 class="section-title" @click="show_advanced_settings = !show_advanced_settings">
209
+ {{ i18n.advanced_options }} <i :class="[show_advanced_settings ? 'fa fa-angle-down' : 'fa fa-angle-right']"></i>
210
+ </h3>
211
+
212
+ <transition name="slide-fade">
213
+ <div v-show="show_advanced_settings" class="option-field-section-fields">
214
+ <component
215
+ v-for="option_field in advanced_settings"
216
+ :key="option_field.name"
217
+ :is="'field-' + option_field.type"
218
+ :option_field="option_field"
219
+ :editing_form_field="editing_form_field"
220
+ ></component>
221
+ </div>
222
+ </transition>
223
+ </div>
224
+ </div>
225
+
226
+ </div>
227
+ </script>
228
+
229
+ <script type="text/x-template" id="tmpl-wpuf-field-radio">
230
+ <div class="panel-field-opt panel-field-opt-radio">
231
+ <label v-if="option_field.title">
232
+ {{ option_field.title }} <help-text v-if="option_field.help_text" :text="option_field.help_text"></help-text>
233
+ </label>
234
+
235
+ <ul :class="[option_field.inline ? 'list-inline' : '']">
236
+ <li v-for="(option, key) in option_field.options">
237
+ <label>
238
+ <input type="radio" :value="key" v-model="value"> {{ option }}
239
+ </label>
240
+ </li>
241
+ </ul>
242
+ </div>
243
+ </script>
244
+
245
+ <script type="text/x-template" id="tmpl-wpuf-field-select">
246
+ <div class="panel-field-opt panel-field-opt-select">
247
+ <label v-if="option_field.title">
248
+ {{ option_field.title }} <help-text v-if="option_field.help_text" :text="option_field.help_text"></help-text>
249
+ </label>
250
+
251
+ <select class="opt-select-element" v-model="value">
252
+ <option value=""><?php _e( 'Select an option', 'wpuf' ); ?></option>
253
+ <option v-for="(option, key) in option_field.options" :value="key">{{ option }}</option>
254
+ </select>
255
+ </div>
256
+ </script>
257
+
258
+ <script type="text/x-template" id="tmpl-wpuf-field-text">
259
+ <div v-if="met_dependencies" class="panel-field-opt panel-field-opt-text">
260
+ <label>
261
+ {{ option_field.title }} <help-text v-if="option_field.help_text" :text="option_field.help_text"></help-text>
262
+
263
+ <input
264
+ v-if="option_field.variation && 'number' === option_field.variation"
265
+ type="number"
266
+ v-model="value"
267
+ @focusout="on_focusout"
268
+ @keyup="on_keyup"
269
+ >
270
+
271
+ <input
272
+ v-if="!option_field.variation"
273
+ type="text"
274
+ v-model="value"
275
+ @focusout="on_focusout"
276
+ @keyup="on_keyup"
277
+ >
278
+ </label>
279
+ </div>
280
+ </script>
281
+
282
+ <script type="text/x-template" id="tmpl-wpuf-field-text-meta">
283
+ <div class="panel-field-opt panel-field-opt-text panel-field-opt-text-meta">
284
+ <label>
285
+ {{ option_field.title }} <help-text v-if="option_field.help_text" :text="option_field.help_text"></help-text>
286
+ <input
287
+ type="text"
288
+ v-model="value"
289
+ >
290
+ </label>
291
+ </div>
292
+ </script>
293
+
294
+ <script type="text/x-template" id="tmpl-wpuf-field-textarea">
295
+ <div class="panel-field-opt panel-field-opt-textarea">
296
+ <label>
297
+ {{ option_field.title }} <help-text v-if="option_field.help_text" :text="option_field.help_text"></help-text>
298
+
299
+ <textarea :rows="option_field.rows || 5" v-model="value"></textarea>
300
+ </label>
301
+ </div>
302
+ </script>
303
+
304
+ <script type="text/x-template" id="tmpl-wpuf-form-checkbox_field">
305
+ <div class="wpuf-fields">
306
+ <ul :class="['wpuf-fields-list', ('yes' === field.inline) ? 'wpuf-list-inline' : '']">
307
+ <li v-if="has_options" v-for="(label, val) in field.options">
308
+ <label>
309
+ <input
310
+ type="checkbox"
311
+ :value="val"
312
+ :checked="is_selected(val)"
313
+ :class="class_names('checkbox_btns')"
314
+ > {{ label }}
315
+ </label>
316
+ </li>
317
+ </ul>
318
+
319
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
320
+ </div>
321
+ </script>
322
+
323
+ <script type="text/x-template" id="tmpl-wpuf-form-custom_hidden_field">
324
+ <div class="wpuf-fields">
325
+ <input
326
+ type="text"
327
+ :class="class_names('textfield')"
328
+ :placeholder="field.placeholder"
329
+ :value="field.default"
330
+ :size="field.size"
331
+ >
332
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
333
+ </div>
334
+ </script>
335
+
336
+ <script type="text/x-template" id="tmpl-wpuf-form-custom_html">
337
+ <div class="wpuf-fields" v-html="field.html"></div>
338
+ </script>
339
+
340
+ <script type="text/x-template" id="tmpl-wpuf-form-dropdown_field">
341
+ <div class="wpuf-fields">
342
+ <select
343
+ :class="class_names('select_lbl')"
344
+ >
345
+ <option v-if="field.first" value="">{{ field.first }}</option>
346
+
347
+ <option
348
+ v-if="has_options"
349
+ v-for="(label, val) in field.options"
350
+ :value="label"
351
+ :selected="is_selected(label)"
352
+ >{{ label }}</option>
353
+ </select>
354
+
355
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
356
+ </div>
357
+ </script>
358
+
359
+ <script type="text/x-template" id="tmpl-wpuf-form-email_address">
360
+ <div class="wpuf-fields">
361
+ <input
362
+ type="email"
363
+ :class="class_names('email')"
364
+ :placeholder="field.placeholder"
365
+ :value="field.default"
366
+ :size="field.size"
367
+ >
368
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
369
+ </div>
370
+ </script>
371
+
372
+ <script type="text/x-template" id="tmpl-wpuf-form-featured_image">
373
+ <div class="wpuf-fields">
374
+ <div :id="'wpuf-img_label-' + field.id + '-upload-container'">
375
+ <div class="wpuf-attachment-upload-filelist" data-type="file" data-required="yes">
376
+ <a class="button file-selector" href="#">
377
+ <?php _e( 'Select Image', 'wpuf' ); ?>
378
+ </a>
379
+ </div>
380
+ </div>
381
+
382
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
383
+ </div>
384
+ </script>
385
+
386
+ <script type="text/x-template" id="tmpl-wpuf-form-fields">
387
+ <div class="wpuf-form-builder-form-fields">
388
+ <template v-for="(section, index) in panel_sections">
389
+ <div v-if="section.fields.length" class="panel-form-field-group clearfix">
390
+ <h3 class="clearfix" @click="panel_toggle(index)">
391
+ {{ section.title }} <i :class="[section.show ? 'fa fa-angle-down' : 'fa fa-angle-right']"></i>
392
+ </h3>
393
+
394
+ <transition name="slide-fade">
395
+ <ul
396
+ v-show="section.show"
397
+ class="panel-form-field-buttons clearfix"
398
+ :id="'panel-form-field-buttons-' + section.id"
399
+ >
400
+ <template v-for="field in section.fields">
401
+ <li
402
+ v-if="is_pro_feature(field)"
403
+ class="button button-faded"
404
+ :data-form-field="field"
405
+ data-source="panel"
406
+ @click="alert_pro_feature(field)"
407
+ >
408
+ <i v-if="field_settings[field].icon" :class="['fa fa-' + field_settings[field].icon]" aria-hidden="true"></i> {{ field_settings[field].title }}
409
+ </li>
410
+
411
+ <li
412
+ v-if="is_failed_to_validate(field)"
413
+ :class="['button', get_invalidate_btn_class(field)]"
414
+ :data-form-field="field"
415
+ data-source="panel"
416
+ @click="alert_invalidate_msg(field)"
417
+ >
418
+ <i v-if="field_settings[field].icon" :class="['fa fa-' + field_settings[field].icon]" aria-hidden="true"></i> {{ field_settings[field].title }}
419
+ </li>
420
+
421
+ <li
422
+ v-if="!is_pro_feature(field) && !is_failed_to_validate(field)"
423
+ class="button"
424
+ :data-form-field="field"
425
+ data-source="panel"
426
+ @click="add_form_field(field)"
427
+ >
428
+ <i v-if="field_settings[field].icon" :class="['fa fa-' + field_settings[field].icon]" aria-hidden="true"></i> {{ field_settings[field].title }}
429
+ </li>
430
+ </template>
431
+ </ul>
432
+ </transition>
433
+ </div>
434
+ </template>
435
+ </div>
436
+ </script>
437
+
438
+ <script type="text/x-template" id="tmpl-wpuf-form-image_upload">
439
+ <div class="wpuf-fields">
440
+ <div :id="'wpuf-img_label-' + field.id + '-upload-container'">
441
+ <div class="wpuf-attachment-upload-filelist" data-type="file" data-required="yes">
442
+ <a class="button file-selector wpuf_img_label_148" href="#">
443
+ <?php _e( 'Select Image', 'wpuf' ); ?>
444
+ </a>
445
+ </div>
446
+ </div>
447
+
448
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
449
+ </div>
450
+ </script>
451
+
452
+ <script type="text/x-template" id="tmpl-wpuf-form-multiple_select">
453
+ <div class="wpuf-fields">
454
+ <select
455
+ :class="class_names('multi_label')"
456
+ multiple
457
+ >
458
+ <option v-if="field.first" value="">{{ field.first }}</option>
459
+
460
+ <option
461
+ v-if="has_options"
462
+ v-for="(label, val) in field.options"
463
+ :value="label"
464
+ :selected="is_selected(label)"
465
+ >{{ label }}</option>
466
+ </select>
467
+
468
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
469
+ </div>
470
+ </script>
471
+
472
+ <script type="text/x-template" id="tmpl-wpuf-form-notification">
473
+ <div>
474
+ <!-- <pre>{{ notifications.length }}</pre> -->
475
+ <a href="#" class="button button-secondary add-notification" v-on:click.prevent="addNew"><span class="dashicons dashicons-plus-alt"></span> <?php _e( 'Add Notification', 'best-contact-form' ); ?></a>
476
+
477
+ <div :class="[editing ? 'editing' : '', 'notification-wrap']">
478
+ <!-- notification-wrap -->
479
+
480
+ <div class="notification-table-wrap">
481
+ <table class="wp-list-table widefat fixed striped posts wpuf-cf-notification-table">
482
+ <thead>
483
+ <tr>
484
+ <th class="col-toggle">&nbsp;</th>
485
+ <th class="col-name"><?php _e( 'Name', 'best-contact-form' ); ?></th>
486
+ <th class="col-subject"><?php _e( 'Subject', 'best-contact-form' ); ?></th>
487
+ <th class="col-action">&nbsp;</th>
488
+ </tr>
489
+ </thead>
490
+ <tbody>
491
+ <tr v-for="(notification, index) in notifications">
492
+ <td class="col-toggle">
493
+ <a href="#" v-on:click.prevent="toggelNotification(index)">
494
+ <img v-if="notification.active" src="<?php echo WPUF_ASSET_URI; ?>/images/active.png" width="24" alt="status">
495
+ <img v-else src="<?php echo WPUF_ASSET_URI; ?>/images/inactive.png" width="24" alt="status">
496
+ </a>
497
+ </td>
498
+ <td class="col-name"><a href="#" v-on:click.prevent="editItem(index)">{{ notification.name }}</a></td>
499
+ <td class="col-subject">{{ notification.subject }}</td>
500
+ <td class="col-action">
501
+ <a href="#" v-on:click.prevent="duplicate(index)" title="<?php esc_attr_e( 'Duplicate', 'best-contact-form' ); ?>"><span class="dashicons dashicons-admin-page"></span></a>
502
+ <a href="#" v-on:click.prevent="editItem(index)" title="<?php esc_attr_e( 'Settings', 'best-contact-form' ); ?>"><span class="dashicons dashicons-admin-generic"></span></a>
503
+ </td>
504
+ </tr>
505
+ <tr v-if="!notifications.length">
506
+ <td colspan="4"><?php _e( 'No notifications found', 'best-contact-form' ); ?></td>
507
+ </tr>
508
+ </tbody>
509
+ </table>
510
+ </div><!-- .notification-table-wrap -->
511
+
512
+ <div class="notification-edit-area" v-if="notifications[editingIndex]">
513
+
514
+ <div class="notification-head">
515
+ <input type="text" name="" v-model="notifications[editingIndex].name" v-on:keyup.enter="editDone()" value="Admin Notification">
516
+ </div>
517
+
518
+ <div class="form-fields">
519
+ <div class="notification-row">
520
+ <div class="row-one-half notification-field first">
521
+ <label for="notification-title"><?php _e( 'To', 'best-contact-form' ); ?></label>
522
+ <input type="text" v-model="notifications[editingIndex].to">
523
+ <wpuf-merge-tags filter="email_address" v-on:insert="insertValue" field="to"></wpuf-merge-tags>
524
+ </div>
525
+
526
+ <div class="row-one-half notification-field">
527
+ <label for="notification-title"><?php _e( 'Reply To', 'best-contact-form' ); ?></label>
528
+ <input type="email" v-model="notifications[editingIndex].replyTo">
529
+ <wpuf-merge-tags filter="email_address" v-on:insert="insertValue" field="replyTo"></wpuf-merge-tags>
530
+ </div>
531
+ </div>
532
+
533
+ <div class="notification-row notification-field">
534
+ <label for="notification-title"><?php _e( 'Subject', 'best-contact-form' ); ?></label>
535
+ <input type="text" v-model="notifications[editingIndex].subject">
536
+ <wpuf-merge-tags v-on:insert="insertValue" field="subject"></wpuf-merge-tags>
537
+ </div>
538
+
539
+ <div class="notification-row notification-field">
540
+ <label for="notification-title"><?php _e( 'Email Message', 'best-contact-form' ); ?></label>
541
+ <textarea name="" rows="6" v-model="notifications[editingIndex].message"></textarea>
542
+ <wpuf-merge-tags v-on:insert="insertValue" field="message"></wpuf-merge-tags>
543
+ </div>
544
+
545
+ <section class="advanced-fields">
546
+ <a href="#" class="field-toggle" v-on:click.prevent="toggleAdvanced()"><span class="dashicons dashicons-arrow-right"></span><?php _e( ' Advanced', 'best-contact-form' ); ?></a>
547
+
548
+ <div class="advanced-field-wrap">
549
+ <div class="notification-row">
550
+ <div class="row-one-half notification-field first">
551
+ <label for="notification-title"><?php _e( 'From Name', 'best-contact-form' ); ?></label>
552
+ <input type="text" v-model="notifications[editingIndex].fromName">
553
+ <wpuf-merge-tags v-on:insert="insertValue" field="fromName"></wpuf-merge-tags>
554
+ </div>
555
+
556
+ <div class="row-one-half notification-field">
557
+ <label for="notification-title"><?php _e( 'From Address', 'best-contact-form' ); ?></label>
558
+ <input type="email" name="" v-model="notifications[editingIndex].fromAddress">
559
+ <wpuf-merge-tags filter="email_address" v-on:insert="insertValue" field="fromAddress"></wpuf-merge-tags>
560
+ </div>
561
+ </div>
562
+
563
+ <div class="notification-row">
564
+ <div class="row-one-half notification-field first">
565
+ <label for="notification-title"><?php _e( 'CC', 'best-contact-form' ); ?></label>
566
+ <input type="email" name="" v-model="notifications[editingIndex].cc">
567
+ <wpuf-merge-tags filter="email_address" v-on:insert="insertValue" field="cc"></wpuf-merge-tags>
568
+ </div>
569
+
570
+ <div class="row-one-half notification-field">
571
+ <label for="notification-title"><?php _e( 'BCC', 'best-contact-form' ); ?></label>
572
+ <input type="email" name="" v-model="notifications[editingIndex].bcc">
573
+ <wpuf-merge-tags filter="email_address" v-on:insert="insertValue" field="bcc"></wpuf-merge-tags>
574
+ </div>
575
+ </div>
576
+ </div>
577
+ </section><!-- .advanced-fields -->
578
+ </div>
579
+
580
+ <div class="submit-area">
581
+ <a href="#" v-on:click.prevent="deleteItem(editingIndex)" title="<?php esc_attr_e( 'Delete', 'best-contact-form' ); ?>"><span class="dashicons dashicons-trash"></span></a>
582
+ <button class="button button-secondary" v-on:click.prevent="editDone()"><?php _e( 'Done', 'best-contact-form' ); ?></button>
583
+ </div>
584
+ </div><!-- .notification-edit-area -->
585
+
586
+ </div><!-- .notification-wrap -->
587
+ </div></script>
588
+
589
+ <script type="text/x-template" id="tmpl-wpuf-form-post_content">
590
+ <div class="wpuf-fields">
591
+ <div class="wp-media-buttons" v-if="field.insert_image == 'yes'">
592
+ <button type="button" class="button insert-media add_media" data-editor="content">
593
+ <span class="dashicons dashicons-admin-media insert-photo-icon"></span> <?php _e( 'Insert Photo', 'wpuf' ); ?>
594
+ </button>
595
+ </div>
596
+ <br v-if="field.insert_image == 'yes'" />
597
+
598
+ <textarea
599
+ v-if="'no' === field.rich"
600
+ :class="class_names('textareafield')"
601
+ :placeholder="field.placeholder"
602
+ :rows="field.rows"
603
+ :cols="field.cols"
604
+ >{{ field.default }}</textarea>
605
+
606
+ <text-editor v-if="'no' !== field.rich" :rich="field.rich"></text-editor>
607
+
608
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
609
+ </div>
610
+ </script>
611
+
612
+ <script type="text/x-template" id="tmpl-wpuf-form-post_excerpt">
613
+ <div class="wpuf-fields">
614
+ <textarea
615
+ :class="class_names('textareafield')"
616
+ :placeholder="field.placeholder"
617
+ :rows="field.rows"
618
+ :cols="field.cols"
619
+ >{{ field.default }}</textarea>
620
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
621
+ </div>
622
+ </script>
623
+
624
+ <script type="text/x-template" id="tmpl-wpuf-form-post_tags">
625
+ <div class="wpuf-fields">
626
+ <input
627
+ type="text"
628
+ :class="class_names('textfield')"
629
+ :placeholder="field.placeholder"
630
+ :value="field.default"
631
+ :size="field.size"
632
+ >
633
+
634
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
635
+ </div>
636
+ </script>
637
+
638
+ <script type="text/x-template" id="tmpl-wpuf-form-post_title">
639
+ <div class="wpuf-fields">
640
+ <input
641
+ type="text"
642
+ :class="class_names('textfield')"
643
+ :placeholder="field.placeholder"
644
+ :value="field.default"
645
+ :size="field.size"
646
+ >
647
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
648
+ </div>
649
+ </script>
650
+
651
+ <script type="text/x-template" id="tmpl-wpuf-form-radio_field">
652
+ <div class="wpuf-fields">
653
+ <ul :class="['wpuf-fields-list', ('yes' === field.inline) ? 'wpuf-list-inline' : '']">
654
+ <li v-if="has_options" v-for="(label, val) in field.options">
655
+ <label>
656
+ <input
657
+ type="radio"
658
+ :value="val"
659
+ :checked="is_selected(val)"
660
+ :class="class_names('radio_btns')"
661
+ > {{ label }}
662
+ </label>
663
+ </li>
664
+ </ul>
665
+
666
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
667
+ </div>
668
+ </script>
669
+
670
+ <script type="text/x-template" id="tmpl-wpuf-form-recaptcha">
671
+ <div class="wpuf-fields">
672
+ <template v-if="!has_recaptcha_api_keys">
673
+ <p v-html="no_api_keys_msg"></p>
674
+ </template>
675
+
676
+ <template v-else>
677
+ <div v-if="'invisible_recaptcha' != field.recaptcha_type">
678
+ <img class="wpuf-recaptcha-placeholder" src="<?php echo WPUF_ASSET_URI . '/images/recaptcha-placeholder.png' ?>" alt="">
679
+ </div>
680
+ </template>
681
+ </div>
682
+ </script>
683
+
684
+ <script type="text/x-template" id="tmpl-wpuf-form-section_break">
685
+ <div class="wpuf-section-wrap">
686
+ <h2 class="wpuf-section-title">{{ field.label }}</h2>
687
+ <div class="wpuf-section-details">{{ field.description }}</div>
688
+ </div>
689
+ </script>
690
+
691
+ <script type="text/x-template" id="tmpl-wpuf-form-taxonomy">
692
+ <div class="wpuf-fields">
693
+ <select
694
+ v-if="'select' === field.type"
695
+ :class="field.name"
696
+ v-html="get_term_dropdown_options()"
697
+ >
698
+ </select>
699
+
700
+ <div v-if="'ajax' === field.type" class="category-wrap">
701
+ <div>
702
+ <select>
703
+ <option><?php _e( '— Select —', 'wpuf' ); ?></option>
704
+ <option v-for="term in sorted_terms" :value="term.id">{{ term.name }}</option>
705
+ </select>
706
+ </div>
707
+ </div>
708
+
709
+ <div v-if="'multiselect' === field.type" class="category-wrap">
710
+ <select
711
+ :class="field.name"
712
+ v-html="get_term_dropdown_options()"
713
+ multiple
714
+ >
715
+ </select>
716
+ </div>
717
+
718
+ <div v-if="'checkbox' === field.type" class="category-wrap">
719
+ <div v-html="get_term_checklist()"></div>
720
+ </div>
721
+
722
+ <input
723
+ v-if="'text' === field.type"
724
+ class="textfield"
725
+ type="text"
726
+ value=""
727
+ size="40"
728
+ autocomplete="off"
729
+ >
730
+
731
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
732
+ </div>
733
+ </script>
734
+
735
+ <script type="text/x-template" id="tmpl-wpuf-form-text_field">
736
+ <div class="wpuf-fields">
737
+ <input
738
+ type="text"
739
+ :class="class_names('textfield')"
740
+ :placeholder="field.placeholder"
741
+ :value="field.default"
742
+ :size="field.size"
743
+ >
744
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
745
+ </div>
746
+ </script>
747
+
748
+ <script type="text/x-template" id="tmpl-wpuf-form-textarea_field">
749
+ <div class="wpuf-fields">
750
+ <textarea
751
+ v-if="'no' === field.rich"
752
+ :class="class_names('textareafield')"
753
+ :placeholder="field.placeholder"
754
+ :rows="field.rows"
755
+ :cols="field.cols"
756
+ >{{ field.default }}</textarea>
757
+
758
+ <text-editor v-if="'no' !== field.rich" :rich="field.rich"></text-editor>
759
+
760
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
761
+ </div>
762
+ </script>
763
+
764
+ <script type="text/x-template" id="tmpl-wpuf-form-website_url">
765
+ <div class="wpuf-fields">
766
+ <input
767
+ type="url"
768
+ :class="class_names('url')"
769
+ :placeholder="field.placeholder"
770
+ :value="field.default"
771
+ :size="field.size"
772
+ >
773
+ <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
774
+ </div>
775
+ </script>
776
+
777
+ <script type="text/x-template" id="tmpl-wpuf-help-text">
778
+ <i class="fa fa-question-circle field-helper-text wpuf-tooltip" data-placement="top" :title="text"></i>
779
+ </script>
780
+
781
+ <script type="text/x-template" id="tmpl-wpuf-integration">
782
+ <div class="wpuf-integrations-wrap">
783
+
784
+ <template v-if="hasIntegrations">
785
+ <div :class="['wpuf-integration', isAvailable(integration.id) ? '' : 'collapsed']" v-for="integration in integrations">
786
+ <div class="wpuf-integration-header">
787
+ <div class="wpuf-integration-header-toggle">
788
+ <span :class="['wpuf-toggle-switch', 'big', isActive(integration.id) ? 'checked' : '']" v-on:click="toggleState(integration.id, $event.target)"></span>
789
+ </div>
790
+ <div class="wpuf-integration-header-label">
791
+ <img class="icon" :src="integration.icon" :alt="integration.title">
792
+ {{ integration.title }} <span class="label-premium" v-if="!isAvailable(integration.id)"><?php _e( 'Premium Feature', 'best-contact-form' ); ?></span>
793
+ </div>
794
+
795
+ <div class="wpuf-integration-header-actions">
796
+ <button type="button" class="toggle-area" v-on:click="showHide($event.target)">
797
+ <span class="screen-reader-text"><?php _e( 'Toggle panel', 'best-contact-form' ); ?></span>
798
+ <span class="toggle-indicator"></span>
799
+ </button>
800
+ </div>
801
+ </div>
802
+
803
+ <div class="wpuf-integration-settings">
804
+
805
+ <div v-if="isAvailable(integration.id)">
806
+ <component :is="'wpuf-integration-' + integration.id" :id="integration.id"></component>
807
+ </div>
808
+ <div v-else>
809
+ <?php _e( 'This feature is available on the premium version only.', 'best-contact-form' ); ?>
810
+ <a class="button" :href="pro_link" target="_blank"><?php _e( 'Upgrade to Pro', 'best-contact-form' ); ?></a>
811
+ </div>
812
+
813
+ </div>
814
+ </div>
815
+ </template>
816
+
817
+ <div v-else>
818
+ <?php _e( 'No integration found.', 'best-contact-form' ); ?>
819
+ </div>
820
+ </div></script>
821
+
822
+ <script type="text/x-template" id="tmpl-wpuf-merge-tags">
823
+ <div class="wpuf-merge-tag-wrap">
824
+ <a href="#" v-on:click.prevent="toggleFields($event)" class="merge-tag-link" title="<?php echo esc_attr( 'Click to toggle merge tags', 'wpuf' ); ?>"><span class="dashicons dashicons-editor-code"></span></a>
825
+
826
+ <!-- <pre>{{ form_fields.length }}</pre> -->
827
+
828
+ <div class="wpuf-merge-tags">
829
+ <div class="merge-tag-section">
830
+ <div class="merge-tag-head"><?php _e( 'Form Fields', 'wpuf' ); ?></div>
831
+
832
+ <ul>
833
+ <template v-if="form_fields.length">
834
+ <li v-for="field in form_fields">
835
+
836
+ <template v-if="field.input_type === 'name'">
837
+ <a href="#" v-on:click.prevent="insertField('name-full', field.name);">{{ field.label }}</a>
838
+ (
839
+ <a href="#" v-on:click.prevent="insertField('name-first', field.name);"><?php _e( 'first', 'wpuf' ); ?></a> |
840
+ <a href="#" v-on:click.prevent="insertField('name-middle', field.name);"><?php _e( 'middle', 'wpuf' ); ?></a> |
841
+ <a href="#" v-on:click.prevent="insertField('name-last', field.name);"><?php _e( 'last', 'wpuf' ); ?></a>
842
+ )
843
+ </template>
844
+
845
+ <a v-else href="#" v-on:click.prevent="insertField('field', field.name);">{{ field.label }}</a>
846
+
847
+ </li>
848
+ </template>
849
+ <li v-else><?php _e( 'No fields available', 'wpuf' ); ?></li>
850
+ </ul>
851
+ </div><!-- .merge-tag-section -->
852
+
853
+ <?php
854
+ if ( function_exists( 'weforms_get_merge_tags' ) ) {
855
+
856
+ $merge_tags = weforms_get_merge_tags();
857
+
858
+ foreach ($merge_tags as $section_key => $section) {
859
+ ?>
860
+
861
+ <div class="merge-tag-section">
862
+ <div class="merge-tag-head"><?php echo $section['title'] ?></div>
863
+
864
+ <ul>
865
+ <?php foreach ($section['tags'] as $key => $value) { ?>
866
+ <li>
867
+ <a href="#" v-on:click.prevent="insertField('<?php echo $key; ?>');"><?php echo $value; ?></a>
868
+ </li>
869
+ <?php } ?>
870
+ </ul>
871
+ </div><!-- .merge-tag-section -->
872
+
873
+ <?php
874
+ }
875
+ }
876
+ ?>
877
+ </div><!-- .merge-tags -->
878
+ </div></script>
879
+
880
+ <script type="text/x-template" id="tmpl-wpuf-modal">
881
+ <div>
882
+ <div :class="['wpuf-form-template-modal', show ? 'show' : 'hide' ]">
883
+
884
+ <span class="screen-reader-text"><?php _e( 'Modal window. Press escape to close.', 'wpuf' ); ?></span>
885
+ <a href="#" class="close" v-on:click.prevent="closeModal()">× <span class="screen-reader-text"><?php _e( 'Close modal window', 'wpuf' ); ?></span></a>
886
+
887
+ <header class="modal-header">
888
+ <slot name="header"></slot>
889
+ </header>
890
+
891
+ <div :class="['content-container', this.$slots.footer ? 'modal-footer' : 'no-footer']">
892
+ <div class="content">
893
+ <slot name="body"></slot>
894
+ </div>
895
+ </div>
896
+
897
+ <footer v-if="this.$slots.footer">
898
+ <slot name="footer"></slot>
899
+ </footer>
900
+ </div>
901
+ <div :class="['wpuf-form-template-modal-backdrop', show ? 'show' : 'hide' ]"></div>
902
+ </div>
903
+ </script>
904
+
905
+ <script type="text/x-template" id="tmpl-wpuf-text-editor">
906
+ <div class="wpuf-text-editor">
907
+
908
+ <div class="wp-core-ui wp-editor-wrap tmce-active">
909
+ <link rel="stylesheet" :href="site_url + 'wp-includes/css/editor.css'" type="text/css" media="all">
910
+ <link rel="stylesheet" :href="site_url + 'wp-includes/js/tinymce/skins/lightgray/skin.min.css'" type="text/css" media="all">
911
+
912
+ <div class="wp-editor-container">
913
+ <div class="mce-tinymce mce-container mce-panel" style="visibility: hidden; border-width: 1px;">
914
+ <div class="mce-container-body mce-stack-layout">
915
+ <div class="mce-toolbar-grp mce-container mce-panel mce-stack-layout-item">
916
+ <div class="mce-container-body mce-stack-layout">
917
+ <div class="mce-container mce-toolbar mce-stack-layout-item">
918
+ <div class="mce-container-body mce-flow-layout">
919
+ <div class="mce-container mce-flow-layout-item mce-btn-group">
920
+ <div>
921
+ <div v-if="is_full" class="mce-widget mce-btn mce-menubtn mce-fixed-width mce-listbox mce-btn-has-text"><button type="button"><span class="mce-txt">Paragraph</span> <i class="mce-caret"></i></button></div>
922
+ <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-bold"></i></button></div>
923
+ <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-italic"></i></button></div>
924
+ <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-bullist"></i></button></div>
925
+ <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-numlist"></i></button></div>
926
+ <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-blockquote"></i></button></div>
927
+ <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-alignleft"></i></button></div>
928
+ <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-aligncenter"></i></button></div>
929
+ <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-alignright"></i></button></div>
930
+ <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-link"></i></button></div>
931
+ <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-unlink"></i></button></div>
932
+ <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-wp_more"></i></button></div>
933
+ <div class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-fullscreen"></i></button></div>
934
+ <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-wp_adv"></i></button></div>
935
+ </div>
936
+ </div>
937
+ </div>
938
+ </div>
939
+ <div class="mce-container mce-toolbar mce-stack-layout-item">
940
+ <div class="mce-container-body mce-flow-layout">
941
+ <div class="mce-container mce-flow-layout-item mce-btn-group">
942
+ <div>
943
+ <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-strikethrough"></i></button></div>
944
+ <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-hr"></i></button></div>
945
+ <div v-if="is_full" class="mce-widget mce-btn mce-colorbutton"><button type="button"><i class="mce-ico mce-i-forecolor"></i><span class="mce-preview"></span></button><button type="button" class="mce-open"> <i class="mce-caret"></i></button></div>
946
+ <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-pastetext"></i></button></div>
947
+ <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-removeformat"></i></button></div>
948
+ <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-charmap"></i></button></div>
949
+ <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-outdent"></i></button></div>
950
+ <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-indent"></i></button></div>
951
+ <div class="mce-widget mce-btn mce-disabled"><button type="button"><i class="mce-ico mce-i-undo"></i></button></div>
952
+ <div class="mce-widget mce-btn mce-disabled"><button type="button"><i class="mce-ico mce-i-redo"></i></button></div>
953
+ <div v-if="is_full" class="mce-widget mce-btn"><button type="button"><i class="mce-ico mce-i-wp_help"></i></button></div>
954
+ </div>
955
+ </div>
956
+ </div>
957
+ </div>
958
+ </div>
959
+ </div>
960
+ <div class="mce-edit-area mce-container mce-panel mce-stack-layout-item" style="border-width: 1px 0px 0px;">
961
+ <div style="width: 100%; height: 150px; display: block;"></div><!-- iframe replacement div -->
962
+ </div>
963
+ <div class="mce-statusbar mce-container mce-panel mce-stack-layout-item" style="border-width: 1px 0px 0px;">
964
+ <div class="mce-container-body mce-flow-layout">
965
+ <div class="mce-path mce-flow-layout-item">
966
+ <div class="mce-path-item" data-index="0" aria-level="0">p</div>
967
+ </div>
968
+ <div class="mce-flow-layout-item mce-resizehandle"><i class="mce-ico mce-i-resize"></i></div>
969
+ </div>
970
+ </div>
971
+ </div>
972
+ </div>
973
+ </div>
974
+ </div>
975
+ </div>
976
+ </script>
assets/js/frontend-form.js CHANGED
@@ -36,6 +36,12 @@
36
  wpuf_plupload_items[i].refresh();
37
  }
38
  }
 
 
 
 
 
 
39
  });
40
 
41
  this.ajaxCategory();
36
  wpuf_plupload_items[i].refresh();
37
  }
38
  }
39
+ if ( wpuf_map_items.length ) {
40
+ for (var i = wpuf_map_items.length - 1; i >= 0; i--) {
41
+ google.maps.event.trigger(wpuf_map_items[i].map, 'resize');
42
+ wpuf_map_items[i].map.setCenter(wpuf_map_items[i].center);
43
+ }
44
+ }
45
  });
46
 
47
  this.ajaxCategory();
assets/js/frontend-form.min.js CHANGED
@@ -1 +1 @@
1
- !function(a,b){a.fn.listautowidth=function(){return this.each(function(){var b=a(this).width(),c=b/a(this).children("li").length;a(this).children("li").each(function(){var b=a(this).outerWidth(!0)-a(this).width();a(this).width(c-b)})})},b.WP_User_Frontend={init:function(){this.enableMultistep(this),a(".wpuf-form").on("click","img.wpuf-clone-field",this.cloneField),a(".wpuf-form").on("click","img.wpuf-remove-field",this.removeField),a(".wpuf-form").on("click","a.wpuf-delete-avatar",this.deleteAvatar),a(".wpuf-form").on("click","a#wpuf-post-draft",this.draftPost),a(".wpuf-form").on("click","button#wpuf-account-update-profile",this.account_update_profile),a(".wpuf-form-add").on("submit",this.formSubmit),a("form#post").on("submit",this.adminPostSubmit),a(".wpuf-form").on("step-change-fieldset",function(a,b,c){if(wpuf_plupload_items.length)for(var d=wpuf_plupload_items.length-1;d>=0;d--)wpuf_plupload_items[d].refresh()}),this.ajaxCategory(),a(':submit[name="wpuf_cancel_subscription"]').click(function(){if(!confirm("Are you sure you want to cancel your current subscription ?"))return!1})},check_pass_strength:function(){var b=a("#pass1").val();if(a("#pass-strength-result").show(),a("#pass-strength-result").removeClass("short bad good strong"),!b)return a("#pass-strength-result").html("&nbsp;"),void a("#pass-strength-result").hide();if(void 0!==wp.passwordStrength)switch(wp.passwordStrength.meter(b,wp.passwordStrength.userInputBlacklist(),b)){case 2:a("#pass-strength-result").addClass("bad").html(pwsL10n.bad);break;case 3:a("#pass-strength-result").addClass("good").html(pwsL10n.good);break;case 4:a("#pass-strength-result").addClass("strong").html(pwsL10n.strong);break;case 5:a("#pass-strength-result").addClass("short").html(pwsL10n.mismatch);break;default:a("#pass-strength-result").addClass("short").html(pwsL10n.short)}},enableMultistep:function(b){var c=this,d=0,e=a(':hidden[name="wpuf_multistep_type"]').val();if(null!=e){if(a("fieldset.wpuf-multistep-fieldset").find(".wpuf-multistep-prev-btn").first().remove(),a("fieldset.wpuf-multistep-fieldset").find(".wpuf-multistep-next-btn").last().remove(),a(".wpuf-form fieldset").removeClass("field-active").first().addClass("field-active"),"progressive"==e&&0!=a(".wpuf-form .wpuf-multistep-fieldset").length){a("fieldset.wpuf-multistep-fieldset legend").first();a(".wpuf-multistep-progressbar").html('<div class="wpuf-progress-percentage"></div>');var f=a(".wpuf-multistep-progressbar"),g=a(".wpuf-progress-percentage");a(".wpuf-multistep-progressbar").progressbar({change:function(){g.text(f.progressbar("value")+"%")}}),a(".wpuf-multistep-fieldset legend").hide()}else a(".wpuf-form").each(function(){var b=a(this),c=a(".wpuf-multistep-progressbar",b),d="";c.addClass("wizard-steps"),d+='<ul class="wpuf-step-wizard">',a(".wpuf-multistep-fieldset",this).each(function(){d+="<li>"+a.trim(a("legend",this).text())+"</li>",a("legend",this).hide()}),d+="</ul>",c.append(d),a(".wpuf-step-wizard li",c).first().addClass("active-step"),a(".wpuf-step-wizard",c).listautowidth()});this.change_fieldset(d,e),a("fieldset .wpuf-multistep-prev-btn, fieldset .wpuf-multistep-next-btn").click(function(f){if(a(this).hasClass("wpuf-multistep-next-btn")){0!=c.formStepCheck("",a(this).closest("fieldset"))&&b.change_fieldset(++d,e)}else a(this).hasClass("wpuf-multistep-prev-btn")&&b.change_fieldset(--d,e);return!1})}},change_fieldset:function(b,c){var d=a("fieldset.wpuf-multistep-fieldset").eq(b);a("fieldset.wpuf-multistep-fieldset").removeClass("field-active").eq(b).addClass("field-active"),a(".wpuf-step-wizard li").each(function(){a(this).index()<=b?"step_by_step"==c?a(this).addClass("passed-wpuf-ms-bar"):a(".wpuf-ps-bar",this).addClass("passed-wpuf-ms-bar"):"step_by_step"==c?a(this).removeClass("passed-wpuf-ms-bar"):a(".wpuf-ps-bar",this).removeClass("passed-wpuf-ms-bar")}),a(".wpuf-step-wizard li").removeClass("wpuf-ms-bar-active active-step completed-step"),a(".passed-wpuf-ms-bar").addClass("completed-step").last().addClass("wpuf-ms-bar-active"),a(".wpuf-ms-bar-active").addClass("active-step");var e=a("fieldset.wpuf-multistep-fieldset").eq(b).find("legend").text();if(e=a.trim(e),"progressive"==c&&0!=a(".wpuf-form .wpuf-multistep-fieldset").length){var f=100*(b+1)/a("fieldset.wpuf-multistep-fieldset").length,f=Number(f.toFixed(2));a(".wpuf-multistep-progressbar").progressbar({value:f}),a(".wpuf-progress-percentage").text(e+" ("+f+"%)")}a(".wpuf-form").trigger("step-change-fieldset",[b,d])},ajaxCategory:function(){var b=".category-wrap";a(b).on("change",".cat-ajax",function(){currentLevel=parseInt(a(this).parent().attr("level")),WP_User_Frontend.getChildCats(a(this),"lvl",currentLevel+1,b,"category")})},getChildCats:function(b,c,d,e,f){cat=a(b).val(),results_div=c+d,f=void 0!==f?f:"category",field_attr=a(b).siblings("span").data("taxonomy"),a.ajax({type:"post",url:wpuf_frontend.ajaxurl,data:{action:"wpuf_get_child_cat",catID:cat,nonce:wpuf_frontend.nonce,field_attr:field_attr},beforeSend:function(){a(b).parent().parent().next(".loading").addClass("wpuf-loading")},complete:function(){a(b).parent().parent().next(".loading").removeClass("wpuf-loading")},success:function(e){a(b).parent().nextAll().each(function(){a(this).remove()}),""!=e&&(a(b).parent().addClass("hasChild").parent().append('<div id="'+c+d+'" level="'+d+'"></div>'),b.parent().parent().find("#"+results_div).html(e).slideDown("fast"))}})},cloneField:function(b){b.preventDefault();var c=a(this).closest("tr"),d=c.clone();d.find("input").val(""),d.find(":checked").attr("checked",""),c.after(d)},removeField:function(){var b=a(this).closest("tr");b.siblings().andSelf().length>1&&b.remove()},adminPostSubmit:function(b){b.preventDefault();var c=a(this);if(WP_User_Frontend.validateForm(c))return!0},draftPost:function(b){b.preventDefault();var c=a(this),d=a(this).closest("form"),e=d.serialize()+"&action=wpuf_draft_post",f=d.find('input[type="hidden"][name="post_id"]').val(),g=[];a(".wpuf-rich-validation").each(function(b,c){var c=a(c),d=c.data("id"),e=c.data("name"),f=a.trim(tinyMCE.get(d).getContent());g.push(e+"="+encodeURIComponent(f))}),e=e+"&"+g.join("&"),c.after(' <span class="wpuf-loading"></span>'),a.post(wpuf_frontend.ajaxurl,e,function(b){if(void 0===f){var e='<input type="hidden" name="post_id" value="'+b.post_id+'">';e+='<input type="hidden" name="post_date" value="'+b.date+'">',e+='<input type="hidden" name="post_author" value="'+b.post_author+'">',e+='<input type="hidden" name="comment_status" value="'+b.comment_status+'">',d.append(e)}c.next("span.wpuf-loading").remove(),c.after('<span class="wpuf-draft-saved">&nbsp; Post Saved</span>'),a(".wpuf-draft-saved").delay(2500).fadeOut("fast",function(){a(this).remove()})})},account_update_profile:function(b){b.preventDefault();var c=a(this).closest("form");a.post(wpuf_frontend.ajaxurl,c.serialize(),function(a){a.success?(c.find(".wpuf-error").hide(),c.find(".wpuf-success").show()):(c.find(".wpuf-success").hide(),c.find(".wpuf-error").show(),c.find(".wpuf-error").text(a.data))})},formStepCheck:function(a,b){var c=b;c.find("input[type=submit]");return form_data=WP_User_Frontend.validateForm(c),0==form_data&&WP_User_Frontend.addErrorNotice(self,"bottom"),form_data},formSubmit:function(c){c.preventDefault();var d=a(this),e=d.find("input[type=submit]");form_data=WP_User_Frontend.validateForm(d),form_data&&(d.find("li.wpuf-submit").append('<span class="wpuf-loading"></span>'),e.attr("disabled","disabled").addClass("button-primary-disabled"),a.post(wpuf_frontend.ajaxurl,form_data,function(c){if(c.success)a("body").trigger("wpuf:postform:success",c),1==c.show_message?(d.before('<div class="wpuf-success">'+c.message+"</div>"),d.slideUp("fast",function(){d.remove()}),a("html, body").animate({scrollTop:a(".wpuf-success").offset().top-100},"fast")):b.location=c.redirect_to;else{if(void 0!==c.type&&"login"===c.type)return void(confirm(c.error)?b.location=c.redirect_to:(e.removeAttr("disabled"),e.removeClass("button-primary-disabled"),d.find("span.wpuf-loading").remove()));d.find(".g-recaptcha").length>0&&grecaptcha.reset(),alert(c.error),e.removeAttr("disabled")}e.removeClass("button-primary-disabled"),d.find("span.wpuf-loading").remove()}))},validateForm:function(b){var c=!1;if(error_type="",WP_User_Frontend.removeErrors(b),WP_User_Frontend.removeErrorNotice(b),b.find('[data-required="yes"]:visible').each(function(b,d){var e=a(d).data("type");switch(j="",e){case"rich":var f=a(d).data("id");""===(j=a.trim(tinyMCE.get(f).getContent()))&&(c=!0,WP_User_Frontend.markError(d));break;case"textarea":case"text":""===(j=a.trim(a(d).val()))&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"password":case"confirm_password":var g=a(d).data("repeat");if(j=a.trim(a(d).val()),""===j&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type)),g){var h=a('[data-type="confirm_password"]').eq(0);h.val()!=j&&(c=!0,error_type="mismatch",WP_User_Frontend.markError(h,error_type))}break;case"select":(j=a(d).val())&&"-1"!==j||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"multiselect":null!==(j=a(d).val())&&0!==j.length||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"tax-checkbox":var i=a(d).children().find("input:checked").length;i||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"radio":var i=a(d).find("input:checked").length;i||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"file":var i=a(d).find("ul").children().length;i||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"email":var j=a(d).val();""!==j?WP_User_Frontend.isValidEmail(j)||(c=!0,error_type="validation",WP_User_Frontend.markError(d,error_type)):""===j&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"url":var j=a(d).val();""!==j&&(WP_User_Frontend.isValidURL(j)||(c=!0,error_type="validation",WP_User_Frontend.markError(d,error_type)))}}),c)return WP_User_Frontend.addErrorNotice(b,"end"),!1;var d=b.serialize(),e=[];return a(".wpuf-rich-validation",b).each(function(b,c){var c=a(c),d=c.data("id"),f=c.data("name"),g=a.trim(tinyMCE.get(d).getContent());e.push(f+"="+encodeURIComponent(g))}),d=d+"&"+e.join("&")},addErrorNotice:function(b,c){"bottom"==c?a(".wpuf-multistep-fieldset:visible").append('<div class="wpuf-errors">'+wpuf_frontend.error_message+"</div>"):a(b).find("li.wpuf-submit").append('<div class="wpuf-errors">'+wpuf_frontend.error_message+"</div>")},removeErrorNotice:function(b){a(b).find(".wpuf-errors").remove()},markError:function(b,c){var d="";if(a(b).closest("li").addClass("has-error"),c){switch(d=a(b).closest("li").data("label"),c){case"required":d=d+" "+error_str_obj[c];break;case"mismatch":d=d+" "+error_str_obj[c];break;case"validation":d=d+" "+error_str_obj[c]}a(b).siblings(".wpuf-error-msg").remove(),a(b).after('<div class="wpuf-error-msg">'+d+"</div>")}a(b).focus()},removeErrors:function(b){a(b).find(".has-error").removeClass("has-error"),a(".wpuf-error-msg").remove()},isValidEmail:function(a){return new RegExp(/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i).test(a)},isValidURL:function(a){return new RegExp("^(http://www.|https://www.|ftp://www.|www.|http://|https://){1}([0-9A-Za-z]+.)").test(a)},insertImage:function(b,c){if(a("#"+b).length){var d=new plupload.Uploader({runtimes:"html5,html4",browse_button:b,container:"wpuf-insert-image-container",multipart:!0,multipart_params:{action:"wpuf_insert_image",form_id:a("#"+b).data("form_id")},multiple_queues:!1,multi_selection:!1,urlstream_upload:!0,file_data_name:"wpuf_file",max_file_size:"2mb",url:wpuf_frontend_upload.plupload.url,flash_swf_url:wpuf_frontend_upload.flash_swf_url,filters:[{title:"Allowed Files",extensions:"jpg,jpeg,gif,png,bmp"}]});d.bind("Init",function(a,b){}),d.bind("FilesAdded",function(b,c){var d=a("#wpuf-insert-image-container");a.each(c,function(a,b){d.append('<div class="upload-item" id="'+b.id+'"><div class="progress progress-striped active"><div class="bar"></div></div></div>')}),b.refresh(),b.start()}),d.bind("QueueChanged",function(a){d.start()}),d.bind("UploadProgress",function(b,c){var d=a("#"+c.id);a(".bar",d).css({width:c.percent+"%"}),a(".percent",d).html(c.percent+"%")}),d.bind("Error",function(a,b){alert("Error #"+b.code+": "+b.message)}),d.bind("FileUploaded",function(b,d,e){if(a("#"+d.id).remove(),"error"!==e.response){if("undefined"!=typeof tinyMCE)if("function"!=typeof tinyMCE.execInstanceCommand){var f=tinyMCE.get("post_content_"+c);null!==f&&f.insertContent(e.response)}else tinyMCE.execInstanceCommand("post_content_"+c,"mceInsertContent",!1,e.response);var g=a("#post_content_"+c);g.val(g.val()+e.response)}else alert("Something went wrong")}),d.init()}},deleteAvatar:function(b){b.preventDefault(),confirm(a(this).data("confirm"))&&a.post(wpuf_frontend.ajaxurl,{action:"wpuf_delete_avatar",_wpnonce:wpuf_frontend.nonce},function(){a(b.target).parent().remove()})},editorLimit:{bind:function(b,c,d){"no"===d?(a("textarea#"+c).keydown(function(a){WP_User_Frontend.editorLimit.textLimit.call(this,a,b)}),a("input#"+c).keydown(function(a){WP_User_Frontend.editorLimit.textLimit.call(this,a,b)}),a("textarea#"+c).on("paste",function(c){var d=a(this);setTimeout(function(){WP_User_Frontend.editorLimit.textLimit.call(d,c,b)},100)}),a("input#"+c).on("paste",function(c){var d=a(this);setTimeout(function(){WP_User_Frontend.editorLimit.textLimit.call(d,c,b)},100)})):setTimeout(function(){tinyMCE.get(c).onKeyDown.add(function(a,c){WP_User_Frontend.editorLimit.tinymce.onKeyDown(a,c,b)}),tinyMCE.get(c).onPaste.add(function(a,c){setTimeout(function(){WP_User_Frontend.editorLimit.tinymce.onPaste(a,c,b)},100)})},1e3)},tinymce:{getStats:function(a){var b=a.getBody(),c=tinymce.trim(b.innerText||b.textContent);return{chars:c.length,words:c.split(/[\w\u2019\'-]+/).length}},onKeyDown:function(b,c,d){var e=WP_User_Frontend.editorLimit.tinymce.getStats(b).words-1;d&&a(".mce-path-item.mce-last",b.container).html("Word Limit : "+e+"/"+d),d&&e>d&&(WP_User_Frontend.editorLimit.blockTyping(c),jQuery(".mce-path-item.mce-last",b.container).html(wpuf_frontend.word_limit))},onPaste:function(a,b,c){var d=a.getContent().split(" ").slice(0,c).join(" ");a.setContent(d),WP_User_Frontend.editorLimit.make_media_embed_code(d,a)}},textLimit:function(b,c){var d=a(this),e=d.val().split(" ");c&&e.length>c?(d.closest(".wpuf-fields").find("span.wpuf-wordlimit-message").html(wpuf_frontend.word_limit),WP_User_Frontend.editorLimit.blockTyping(b)):d.closest(".wpuf-fields").find("span.wpuf-wordlimit-message").html(""),"paste"===b.type&&d.val(e.slice(0,c).join(" "))},blockTyping:function(b){a.inArray(b.keyCode,[46,8,9,27,13,110,190,189])!==-1||65==b.keyCode&&b.ctrlKey===!0||b.keyCode>=35&&b.keyCode<=40||(b.preventDefault(),b.stopPropagation())},make_media_embed_code:function(b,c){a.post(ajaxurl,{action:"make_media_embed_code",content:b},function(a){c.setContent(c.getContent()+c.setContent(a))})}}},a(function(){if(WP_User_Frontend.init(),a("ul.wpuf-payment-gateways").on("click","input[type=radio]",function(b){a(".wpuf-payment-instruction").slideUp(250),a(this).parents("li").find(".wpuf-payment-instruction").slideDown(250)}),a("ul.wpuf-payment-gateways li").find("input[type=radio]").is(":checked")){a("ul.wpuf-payment-gateways li").find("input[type=radio]:checked").parents("li").find(".wpuf-payment-instruction").slideDown(250)}else a("ul.wpuf-payment-gateways li").first().find("input[type=radio]").click()})}(jQuery,window);
1
+ !function(a,b){a.fn.listautowidth=function(){return this.each(function(){var b=a(this).width(),c=b/a(this).children("li").length;a(this).children("li").each(function(){var b=a(this).outerWidth(!0)-a(this).width();a(this).width(c-b)})})},b.WP_User_Frontend={init:function(){this.enableMultistep(this),a(".wpuf-form").on("click","img.wpuf-clone-field",this.cloneField),a(".wpuf-form").on("click","img.wpuf-remove-field",this.removeField),a(".wpuf-form").on("click","a.wpuf-delete-avatar",this.deleteAvatar),a(".wpuf-form").on("click","a#wpuf-post-draft",this.draftPost),a(".wpuf-form").on("click","button#wpuf-account-update-profile",this.account_update_profile),a(".wpuf-form-add").on("submit",this.formSubmit),a("form#post").on("submit",this.adminPostSubmit),a(".wpuf-form").on("step-change-fieldset",function(a,b,c){if(wpuf_plupload_items.length)for(var d=wpuf_plupload_items.length-1;d>=0;d--)wpuf_plupload_items[d].refresh();if(wpuf_map_items.length)for(var d=wpuf_map_items.length-1;d>=0;d--)google.maps.event.trigger(wpuf_map_items[d].map,"resize"),wpuf_map_items[d].map.setCenter(wpuf_map_items[d].center)}),this.ajaxCategory(),a(':submit[name="wpuf_cancel_subscription"]').click(function(){if(!confirm("Are you sure you want to cancel your current subscription ?"))return!1})},check_pass_strength:function(){var b=a("#pass1").val();if(a("#pass-strength-result").show(),a("#pass-strength-result").removeClass("short bad good strong"),!b)return a("#pass-strength-result").html("&nbsp;"),void a("#pass-strength-result").hide();if(void 0!==wp.passwordStrength)switch(wp.passwordStrength.meter(b,wp.passwordStrength.userInputBlacklist(),b)){case 2:a("#pass-strength-result").addClass("bad").html(pwsL10n.bad);break;case 3:a("#pass-strength-result").addClass("good").html(pwsL10n.good);break;case 4:a("#pass-strength-result").addClass("strong").html(pwsL10n.strong);break;case 5:a("#pass-strength-result").addClass("short").html(pwsL10n.mismatch);break;default:a("#pass-strength-result").addClass("short").html(pwsL10n.short)}},enableMultistep:function(b){var c=this,d=0,e=a(':hidden[name="wpuf_multistep_type"]').val();if(null!=e){if(a("fieldset.wpuf-multistep-fieldset").find(".wpuf-multistep-prev-btn").first().remove(),a("fieldset.wpuf-multistep-fieldset").find(".wpuf-multistep-next-btn").last().remove(),a(".wpuf-form fieldset").removeClass("field-active").first().addClass("field-active"),"progressive"==e&&0!=a(".wpuf-form .wpuf-multistep-fieldset").length){a("fieldset.wpuf-multistep-fieldset legend").first();a(".wpuf-multistep-progressbar").html('<div class="wpuf-progress-percentage"></div>');var f=a(".wpuf-multistep-progressbar"),g=a(".wpuf-progress-percentage");a(".wpuf-multistep-progressbar").progressbar({change:function(){g.text(f.progressbar("value")+"%")}}),a(".wpuf-multistep-fieldset legend").hide()}else a(".wpuf-form").each(function(){var b=a(this),c=a(".wpuf-multistep-progressbar",b),d="";c.addClass("wizard-steps"),d+='<ul class="wpuf-step-wizard">',a(".wpuf-multistep-fieldset",this).each(function(){d+="<li>"+a.trim(a("legend",this).text())+"</li>",a("legend",this).hide()}),d+="</ul>",c.append(d),a(".wpuf-step-wizard li",c).first().addClass("active-step"),a(".wpuf-step-wizard",c).listautowidth()});this.change_fieldset(d,e),a("fieldset .wpuf-multistep-prev-btn, fieldset .wpuf-multistep-next-btn").click(function(f){if(a(this).hasClass("wpuf-multistep-next-btn")){0!=c.formStepCheck("",a(this).closest("fieldset"))&&b.change_fieldset(++d,e)}else a(this).hasClass("wpuf-multistep-prev-btn")&&b.change_fieldset(--d,e);return!1})}},change_fieldset:function(b,c){var d=a("fieldset.wpuf-multistep-fieldset").eq(b);a("fieldset.wpuf-multistep-fieldset").removeClass("field-active").eq(b).addClass("field-active"),a(".wpuf-step-wizard li").each(function(){a(this).index()<=b?"step_by_step"==c?a(this).addClass("passed-wpuf-ms-bar"):a(".wpuf-ps-bar",this).addClass("passed-wpuf-ms-bar"):"step_by_step"==c?a(this).removeClass("passed-wpuf-ms-bar"):a(".wpuf-ps-bar",this).removeClass("passed-wpuf-ms-bar")}),a(".wpuf-step-wizard li").removeClass("wpuf-ms-bar-active active-step completed-step"),a(".passed-wpuf-ms-bar").addClass("completed-step").last().addClass("wpuf-ms-bar-active"),a(".wpuf-ms-bar-active").addClass("active-step");var e=a("fieldset.wpuf-multistep-fieldset").eq(b).find("legend").text();if(e=a.trim(e),"progressive"==c&&0!=a(".wpuf-form .wpuf-multistep-fieldset").length){var f=100*(b+1)/a("fieldset.wpuf-multistep-fieldset").length,f=Number(f.toFixed(2));a(".wpuf-multistep-progressbar").progressbar({value:f}),a(".wpuf-progress-percentage").text(e+" ("+f+"%)")}a(".wpuf-form").trigger("step-change-fieldset",[b,d])},ajaxCategory:function(){var b=".category-wrap";a(b).on("change",".cat-ajax",function(){currentLevel=parseInt(a(this).parent().attr("level")),WP_User_Frontend.getChildCats(a(this),"lvl",currentLevel+1,b,"category")})},getChildCats:function(b,c,d,e,f){cat=a(b).val(),results_div=c+d,f=void 0!==f?f:"category",field_attr=a(b).siblings("span").data("taxonomy"),a.ajax({type:"post",url:wpuf_frontend.ajaxurl,data:{action:"wpuf_get_child_cat",catID:cat,nonce:wpuf_frontend.nonce,field_attr:field_attr},beforeSend:function(){a(b).parent().parent().next(".loading").addClass("wpuf-loading")},complete:function(){a(b).parent().parent().next(".loading").removeClass("wpuf-loading")},success:function(e){a(b).parent().nextAll().each(function(){a(this).remove()}),""!=e&&(a(b).parent().addClass("hasChild").parent().append('<div id="'+c+d+'" level="'+d+'"></div>'),b.parent().parent().find("#"+results_div).html(e).slideDown("fast"))}})},cloneField:function(b){b.preventDefault();var c=a(this).closest("tr"),d=c.clone();d.find("input").val(""),d.find(":checked").attr("checked",""),c.after(d)},removeField:function(){var b=a(this).closest("tr");b.siblings().andSelf().length>1&&b.remove()},adminPostSubmit:function(b){b.preventDefault();var c=a(this);if(WP_User_Frontend.validateForm(c))return!0},draftPost:function(b){b.preventDefault();var c=a(this),d=a(this).closest("form"),e=d.serialize()+"&action=wpuf_draft_post",f=d.find('input[type="hidden"][name="post_id"]').val(),g=[];a(".wpuf-rich-validation").each(function(b,c){var c=a(c),d=c.data("id"),e=c.data("name"),f=a.trim(tinyMCE.get(d).getContent());g.push(e+"="+encodeURIComponent(f))}),e=e+"&"+g.join("&"),c.after(' <span class="wpuf-loading"></span>'),a.post(wpuf_frontend.ajaxurl,e,function(b){if(void 0===f){var e='<input type="hidden" name="post_id" value="'+b.post_id+'">';e+='<input type="hidden" name="post_date" value="'+b.date+'">',e+='<input type="hidden" name="post_author" value="'+b.post_author+'">',e+='<input type="hidden" name="comment_status" value="'+b.comment_status+'">',d.append(e)}c.next("span.wpuf-loading").remove(),c.after('<span class="wpuf-draft-saved">&nbsp; Post Saved</span>'),a(".wpuf-draft-saved").delay(2500).fadeOut("fast",function(){a(this).remove()})})},account_update_profile:function(b){b.preventDefault();var c=a(this).closest("form");a.post(wpuf_frontend.ajaxurl,c.serialize(),function(a){a.success?(c.find(".wpuf-error").hide(),c.find(".wpuf-success").show()):(c.find(".wpuf-success").hide(),c.find(".wpuf-error").show(),c.find(".wpuf-error").text(a.data))})},formStepCheck:function(a,b){var c=b;c.find("input[type=submit]");return form_data=WP_User_Frontend.validateForm(c),0==form_data&&WP_User_Frontend.addErrorNotice(self,"bottom"),form_data},formSubmit:function(c){c.preventDefault();var d=a(this),e=d.find("input[type=submit]");form_data=WP_User_Frontend.validateForm(d),form_data&&(d.find("li.wpuf-submit").append('<span class="wpuf-loading"></span>'),e.attr("disabled","disabled").addClass("button-primary-disabled"),a.post(wpuf_frontend.ajaxurl,form_data,function(c){if(c.success)a("body").trigger("wpuf:postform:success",c),1==c.show_message?(d.before('<div class="wpuf-success">'+c.message+"</div>"),d.slideUp("fast",function(){d.remove()}),a("html, body").animate({scrollTop:a(".wpuf-success").offset().top-100},"fast")):b.location=c.redirect_to;else{if(void 0!==c.type&&"login"===c.type)return void(confirm(c.error)?b.location=c.redirect_to:(e.removeAttr("disabled"),e.removeClass("button-primary-disabled"),d.find("span.wpuf-loading").remove()));d.find(".g-recaptcha").length>0&&grecaptcha.reset(),alert(c.error),e.removeAttr("disabled")}e.removeClass("button-primary-disabled"),d.find("span.wpuf-loading").remove()}))},validateForm:function(b){var c=!1;if(error_type="",WP_User_Frontend.removeErrors(b),WP_User_Frontend.removeErrorNotice(b),b.find('[data-required="yes"]:visible').each(function(b,d){var e=a(d).data("type");switch(j="",e){case"rich":var f=a(d).data("id");""===(j=a.trim(tinyMCE.get(f).getContent()))&&(c=!0,WP_User_Frontend.markError(d));break;case"textarea":case"text":""===(j=a.trim(a(d).val()))&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"password":case"confirm_password":var g=a(d).data("repeat");if(j=a.trim(a(d).val()),""===j&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type)),g){var h=a('[data-type="confirm_password"]').eq(0);h.val()!=j&&(c=!0,error_type="mismatch",WP_User_Frontend.markError(h,error_type))}break;case"select":(j=a(d).val())&&"-1"!==j||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"multiselect":null!==(j=a(d).val())&&0!==j.length||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"tax-checkbox":var i=a(d).children().find("input:checked").length;i||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"radio":var i=a(d).find("input:checked").length;i||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"file":var i=a(d).find("ul").children().length;i||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"email":var j=a(d).val();""!==j?WP_User_Frontend.isValidEmail(j)||(c=!0,error_type="validation",WP_User_Frontend.markError(d,error_type)):""===j&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"url":var j=a(d).val();""!==j&&(WP_User_Frontend.isValidURL(j)||(c=!0,error_type="validation",WP_User_Frontend.markError(d,error_type)))}}),c)return WP_User_Frontend.addErrorNotice(b,"end"),!1;var d=b.serialize(),e=[];return a(".wpuf-rich-validation",b).each(function(b,c){var c=a(c),d=c.data("id"),f=c.data("name"),g=a.trim(tinyMCE.get(d).getContent());e.push(f+"="+encodeURIComponent(g))}),d=d+"&"+e.join("&")},addErrorNotice:function(b,c){"bottom"==c?a(".wpuf-multistep-fieldset:visible").append('<div class="wpuf-errors">'+wpuf_frontend.error_message+"</div>"):a(b).find("li.wpuf-submit").append('<div class="wpuf-errors">'+wpuf_frontend.error_message+"</div>")},removeErrorNotice:function(b){a(b).find(".wpuf-errors").remove()},markError:function(b,c){var d="";if(a(b).closest("li").addClass("has-error"),c){switch(d=a(b).closest("li").data("label"),c){case"required":d=d+" "+error_str_obj[c];break;case"mismatch":d=d+" "+error_str_obj[c];break;case"validation":d=d+" "+error_str_obj[c]}a(b).siblings(".wpuf-error-msg").remove(),a(b).after('<div class="wpuf-error-msg">'+d+"</div>")}a(b).focus()},removeErrors:function(b){a(b).find(".has-error").removeClass("has-error"),a(".wpuf-error-msg").remove()},isValidEmail:function(a){return new RegExp(/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i).test(a)},isValidURL:function(a){return new RegExp("^(http://www.|https://www.|ftp://www.|www.|http://|https://){1}([0-9A-Za-z]+.)").test(a)},insertImage:function(b,c){if(a("#"+b).length){var d=new plupload.Uploader({runtimes:"html5,html4",browse_button:b,container:"wpuf-insert-image-container",multipart:!0,multipart_params:{action:"wpuf_insert_image",form_id:a("#"+b).data("form_id")},multiple_queues:!1,multi_selection:!1,urlstream_upload:!0,file_data_name:"wpuf_file",max_file_size:"2mb",url:wpuf_frontend_upload.plupload.url,flash_swf_url:wpuf_frontend_upload.flash_swf_url,filters:[{title:"Allowed Files",extensions:"jpg,jpeg,gif,png,bmp"}]});d.bind("Init",function(a,b){}),d.bind("FilesAdded",function(b,c){var d=a("#wpuf-insert-image-container");a.each(c,function(a,b){d.append('<div class="upload-item" id="'+b.id+'"><div class="progress progress-striped active"><div class="bar"></div></div></div>')}),b.refresh(),b.start()}),d.bind("QueueChanged",function(a){d.start()}),d.bind("UploadProgress",function(b,c){var d=a("#"+c.id);a(".bar",d).css({width:c.percent+"%"}),a(".percent",d).html(c.percent+"%")}),d.bind("Error",function(a,b){alert("Error #"+b.code+": "+b.message)}),d.bind("FileUploaded",function(b,d,e){if(a("#"+d.id).remove(),"error"!==e.response){if("undefined"!=typeof tinyMCE)if("function"!=typeof tinyMCE.execInstanceCommand){var f=tinyMCE.get("post_content_"+c);null!==f&&f.insertContent(e.response)}else tinyMCE.execInstanceCommand("post_content_"+c,"mceInsertContent",!1,e.response);var g=a("#post_content_"+c);g.val(g.val()+e.response)}else alert("Something went wrong")}),d.init()}},deleteAvatar:function(b){b.preventDefault(),confirm(a(this).data("confirm"))&&a.post(wpuf_frontend.ajaxurl,{action:"wpuf_delete_avatar",_wpnonce:wpuf_frontend.nonce},function(){a(b.target).parent().remove()})},editorLimit:{bind:function(b,c,d){"no"===d?(a("textarea#"+c).keydown(function(a){WP_User_Frontend.editorLimit.textLimit.call(this,a,b)}),a("input#"+c).keydown(function(a){WP_User_Frontend.editorLimit.textLimit.call(this,a,b)}),a("textarea#"+c).on("paste",function(c){var d=a(this);setTimeout(function(){WP_User_Frontend.editorLimit.textLimit.call(d,c,b)},100)}),a("input#"+c).on("paste",function(c){var d=a(this);setTimeout(function(){WP_User_Frontend.editorLimit.textLimit.call(d,c,b)},100)})):setTimeout(function(){tinyMCE.get(c).onKeyDown.add(function(a,c){WP_User_Frontend.editorLimit.tinymce.onKeyDown(a,c,b)}),tinyMCE.get(c).onPaste.add(function(a,c){setTimeout(function(){WP_User_Frontend.editorLimit.tinymce.onPaste(a,c,b)},100)})},1e3)},tinymce:{getStats:function(a){var b=a.getBody(),c=tinymce.trim(b.innerText||b.textContent);return{chars:c.length,words:c.split(/[\w\u2019\'-]+/).length}},onKeyDown:function(b,c,d){var e=WP_User_Frontend.editorLimit.tinymce.getStats(b).words-1;d&&a(".mce-path-item.mce-last",b.container).html("Word Limit : "+e+"/"+d),d&&e>d&&(WP_User_Frontend.editorLimit.blockTyping(c),jQuery(".mce-path-item.mce-last",b.container).html(wpuf_frontend.word_limit))},onPaste:function(a,b,c){var d=a.getContent().split(" ").slice(0,c).join(" ");a.setContent(d),WP_User_Frontend.editorLimit.make_media_embed_code(d,a)}},textLimit:function(b,c){var d=a(this),e=d.val().split(" ");c&&e.length>c?(d.closest(".wpuf-fields").find("span.wpuf-wordlimit-message").html(wpuf_frontend.word_limit),WP_User_Frontend.editorLimit.blockTyping(b)):d.closest(".wpuf-fields").find("span.wpuf-wordlimit-message").html(""),"paste"===b.type&&d.val(e.slice(0,c).join(" "))},blockTyping:function(b){a.inArray(b.keyCode,[46,8,9,27,13,110,190,189])!==-1||65==b.keyCode&&b.ctrlKey===!0||b.keyCode>=35&&b.keyCode<=40||(b.preventDefault(),b.stopPropagation())},make_media_embed_code:function(b,c){a.post(ajaxurl,{action:"make_media_embed_code",content:b},function(a){c.setContent(c.getContent()+c.setContent(a))})}}},a(function(){if(WP_User_Frontend.init(),a("ul.wpuf-payment-gateways").on("click","input[type=radio]",function(b){a(".wpuf-payment-instruction").slideUp(250),a(this).parents("li").find(".wpuf-payment-instruction").slideDown(250)}),a("ul.wpuf-payment-gateways li").find("input[type=radio]").is(":checked")){a("ul.wpuf-payment-gateways li").find("input[type=radio]:checked").parents("li").find(".wpuf-payment-instruction").slideDown(250)}else a("ul.wpuf-payment-gateways li").first().find("input[type=radio]").click()})}(jQuery,window);
assets/js/wpuf-form-builder-components.js CHANGED
@@ -111,47 +111,26 @@ Vue.component('builder-stage', {
111
 
112
  delete_field: function(index) {
113
  var self = this;
114
-
115
  swal({
116
- title: 'Are you sure?',
117
- text: "You won't be able to revert this!",
118
  type: 'warning',
119
  showCancelButton: true,
120
- confirmButtonColor: '#3085d6',
121
- cancelButtonColor: '#d33',
122
  confirmButtonText: self.i18n.yes_delete_it,
123
  cancelButtonText: self.i18n.no_cancel_it,
124
  confirmButtonClass: 'btn btn-success',
125
  cancelButtonClass: 'btn btn-danger',
126
- buttonsStyling: false
127
  }).then(function () {
128
  self.$store.commit('delete_form_field_element', index);
129
  swal(
130
  'Deleted!',
131
- 'Your file has been deleted.',
132
  'success'
133
  );
134
- }, function (dismiss) {
135
- // dismiss can be 'cancel', 'overlay',
136
- // 'close', and 'timer'
137
- if (dismiss === 'cancel') {
138
- swal(
139
- 'Cancelled',
140
- 'Your field is safe :)',
141
- 'error'
142
- );
143
- }
144
- });
145
 
146
- // self.warn({
147
- // text: self.i18n.delete_field_warn_msg,
148
- // confirmButtonText: self.i18n.yes_delete_it,
149
- // cancelButtonText: self.i18n.no_cancel_it,
150
- // }, function (is_confirm) {
151
- // if (is_confirm) {
152
- // self.$store.commit('delete_form_field_element', index);
153
- // }
154
- // });
155
  },
156
 
157
  delete_hidden_field: function (field_id) {
@@ -195,6 +174,10 @@ Vue.component('builder-stage', {
195
  return false;
196
  },
197
 
 
 
 
 
198
  get_field_name: function (template) {
199
  return this.field_settings[template].title;
200
  }
@@ -322,7 +305,7 @@ Vue.component('field-option-data', {
322
 
323
  add_option: function () {
324
  var count = this.options.length,
325
- new_opt = this.i18n.option + ' - ' + (count + 1);
326
 
327
  this.options.push({
328
  label: new_opt , value: new_opt, id: this.get_random_id()
@@ -746,16 +729,16 @@ Vue.component('form-fields', {
746
  title: '<i class="fa fa-lock"></i> ' + title + ' <br>' + this.i18n.is_a_pro_feature,
747
  text: this.i18n.pro_feature_msg,
748
  type: '',
749
- html: true,
750
  showCancelButton: true,
751
  cancelButtonText: this.i18n.close,
752
  confirmButtonColor: '#46b450',
753
  confirmButtonText: this.i18n.upgrade_to_pro
754
- }, function (is_confirm) {
755
  if (is_confirm) {
756
  window.open(wpuf_form_builder.pro_link, '_blank');
757
  }
758
- });
 
759
  },
760
 
761
  alert_invalidate_msg: function (field) {
@@ -764,8 +747,7 @@ Vue.component('form-fields', {
764
  if (validator && validator.msg) {
765
  this.warn({
766
  title: validator.msg_title || '',
767
- text: validator.msg,
768
- html: true,
769
  type: 'warning',
770
  showCancelButton: false,
771
  confirmButtonColor: '#46b450',
@@ -802,6 +784,79 @@ Vue.component('form-multiple_select', {
802
  ]
803
  });
804
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
805
  /**
806
  * Field Template: Post Content
807
  */
@@ -857,6 +912,27 @@ Vue.component('form-radio_field', {
857
  ]
858
  });
859
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
860
  /**
861
  * Field template: Section Break
862
  */
@@ -1077,6 +1153,95 @@ Vue.component('help-text', {
1077
  }
1078
  });
1079
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1080
  Vue.component('wpuf-merge-tags', {
1081
  template: '#tmpl-wpuf-merge-tags',
1082
  props: {
@@ -1089,7 +1254,6 @@ Vue.component('wpuf-merge-tags', {
1089
 
1090
  data: function() {
1091
  return {
1092
- showing: false,
1093
  type: null,
1094
  };
1095
  },
@@ -1132,6 +1296,33 @@ Vue.component('wpuf-merge-tags', {
1132
  }
1133
  }
1134
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1135
  Vue.component('text-editor', {
1136
  template: '#tmpl-wpuf-text-editor',
1137
 
111
 
112
  delete_field: function(index) {
113
  var self = this;
114
+
115
  swal({
116
+ text: self.i18n.delete_field_warn_msg,
 
117
  type: 'warning',
118
  showCancelButton: true,
119
+ confirmButtonColor: '#d54e21',
 
120
  confirmButtonText: self.i18n.yes_delete_it,
121
  cancelButtonText: self.i18n.no_cancel_it,
122
  confirmButtonClass: 'btn btn-success',
123
  cancelButtonClass: 'btn btn-danger',
 
124
  }).then(function () {
125
  self.$store.commit('delete_form_field_element', index);
126
  swal(
127
  'Deleted!',
128
+ 'The field has been deleted.',
129
  'success'
130
  );
131
+ }, function() {
 
 
 
 
 
 
 
 
 
 
132
 
133
+ });
 
 
 
 
 
 
 
 
134
  },
135
 
136
  delete_hidden_field: function (field_id) {
174
  return false;
175
  },
176
 
177
+ is_invisible: function (field) {
178
+ return ( field.recaptcha_type && 'invisible_recaptcha' === field.recaptcha_type ) ? true : false;
179
+ },
180
+
181
  get_field_name: function (template) {
182
  return this.field_settings[template].title;
183
  }
305
 
306
  add_option: function () {
307
  var count = this.options.length,
308
+ new_opt = this.i18n.option + '-' + (count + 1);
309
 
310
  this.options.push({
311
  label: new_opt , value: new_opt, id: this.get_random_id()
729
  title: '<i class="fa fa-lock"></i> ' + title + ' <br>' + this.i18n.is_a_pro_feature,
730
  text: this.i18n.pro_feature_msg,
731
  type: '',
 
732
  showCancelButton: true,
733
  cancelButtonText: this.i18n.close,
734
  confirmButtonColor: '#46b450',
735
  confirmButtonText: this.i18n.upgrade_to_pro
736
+ }).then(function (is_confirm) {
737
  if (is_confirm) {
738
  window.open(wpuf_form_builder.pro_link, '_blank');
739
  }
740
+
741
+ }, function() {});
742
  },
743
 
744
  alert_invalidate_msg: function (field) {
747
  if (validator && validator.msg) {
748
  this.warn({
749
  title: validator.msg_title || '',
750
+ html: validator.msg,
 
751
  type: 'warning',
752
  showCancelButton: false,
753
  confirmButtonColor: '#46b450',
784
  ]
785
  });
786
 
787
+ Vue.component('wpuf-cf-form-notification', {
788
+ template: '#tmpl-wpuf-form-notification',
789
+ data: function() {
790
+ return {
791
+ editing: false,
792
+ editingIndex: 0,
793
+ };
794
+ },
795
+
796
+ computed: {
797
+
798
+ notifications: function() {
799
+ return this.$store.state.notifications;
800
+ },
801
+
802
+ hasNotifications: function() {
803
+ return Object.keys( this.$store.state.notifications ).length;
804
+ }
805
+ },
806
+
807
+ methods: {
808
+ addNew: function() {
809
+ this.$store.commit('addNotification', wpuf_form_builder.defaultNotification);
810
+ },
811
+
812
+ editItem: function(index) {
813
+ this.editing = true;
814
+ this.editingIndex = index;
815
+ },
816
+
817
+ editDone: function() {
818
+ this.editing = false;
819
+
820
+ this.$store.commit('updateNotification', {
821
+ index: this.editingIndex,
822
+ value: this.notifications[this.editingIndex]
823
+ });
824
+
825
+ jQuery('.advanced-field-wrap').slideUp('fast');
826
+ },
827
+
828
+ deleteItem: function(index) {
829
+ if ( confirm( 'Are you sure' ) ) {
830
+ this.editing = false;
831
+ this.$store.commit( 'deleteNotification', index);
832
+ }
833
+ },
834
+
835
+ toggelNotification: function(index) {
836
+ this.$store.commit('updateNotificationProperty', {
837
+ index: index,
838
+ property: 'active',
839
+ value: !this.notifications[index].active
840
+ });
841
+ },
842
+
843
+ duplicate: function(index) {
844
+ this.$store.commit('cloneNotification', index);
845
+ },
846
+
847
+ toggleAdvanced: function() {
848
+ jQuery('.advanced-field-wrap').slideToggle('fast');
849
+ },
850
+
851
+ insertValue: function(type, field, property) {
852
+ var notification = this.notifications[this.editingIndex],
853
+ value = ( field !== undefined ) ? '{' + type + ':' + field + '}' : '{' + type + '}';
854
+
855
+ notification[property] = notification[property] + value;
856
+ }
857
+ }
858
+ });
859
+
860
  /**
861
  * Field Template: Post Content
862
  */
912
  ]
913
  });
914
 
915
+ /**
916
+ * Field template: Recaptcha
917
+ */
918
+ Vue.component('form-recaptcha', {
919
+ template: '#tmpl-wpuf-form-recaptcha',
920
+
921
+ mixins: [
922
+ wpuf_mixins.form_field_mixin
923
+ ],
924
+
925
+ computed: {
926
+ has_recaptcha_api_keys: function () {
927
+ return (wpuf_form_builder.recaptcha_site && wpuf_form_builder.recaptcha_secret) ? true : false;
928
+ },
929
+
930
+ no_api_keys_msg: function () {
931
+ return wpuf_form_builder.field_settings.recaptcha.validator.msg;
932
+ }
933
+ }
934
+ });
935
+
936
  /**
937
  * Field template: Section Break
938
  */
1153
  }
1154
  });
1155
 
1156
+ Vue.component('wpuf-integration', {
1157
+ template: '#tmpl-wpuf-integration',
1158
+
1159
+ computed: {
1160
+
1161
+ integrations: function() {
1162
+ return wpuf_form_builder.integrations;
1163
+ },
1164
+
1165
+ hasIntegrations: function() {
1166
+ return Object.keys(this.integrations).length;
1167
+ },
1168
+
1169
+ store: function() {
1170
+ return this.$store.state.integrations;
1171
+ },
1172
+
1173
+ pro_link: function() {
1174
+ return wpuf_form_builder.pro_link;
1175
+ }
1176
+ },
1177
+
1178
+ methods: {
1179
+
1180
+ getIntegration: function(id) {
1181
+ return this.integrations[id];
1182
+ },
1183
+
1184
+ getIntegrationSettings: function(id) {
1185
+ // find settings in store, otherwise take from default integration settings
1186
+ return this.store[id] || this.getIntegration(id).settings;
1187
+ },
1188
+
1189
+ isActive: function(id) {
1190
+ if ( !this.isAvailable(id) ) {
1191
+ return false;
1192
+ }
1193
+
1194
+ return this.getIntegrationSettings(id).enabled === true;
1195
+ },
1196
+
1197
+ isAvailable: function(id) {
1198
+ return ( this.integrations[id] && this.integrations[id].pro ) ? false : true;
1199
+ },
1200
+
1201
+ toggleState: function(id, target) {
1202
+ if ( ! this.isAvailable(id) ) {
1203
+ this.alert_pro_feature( id );
1204
+ return;
1205
+ }
1206
+
1207
+ // toggle the enabled state
1208
+ var settings = this.getIntegrationSettings(id);
1209
+
1210
+ settings.enabled = !this.isActive(id);
1211
+
1212
+ this.$store.commit('updateIntegration', {
1213
+ index: id,
1214
+ value: settings
1215
+ });
1216
+
1217
+ $(target).toggleClass('checked');
1218
+ },
1219
+
1220
+ alert_pro_feature: function (id) {
1221
+ var title = this.getIntegration(id).title;
1222
+
1223
+ swal({
1224
+ title: '<i class="fa fa-lock"></i> ' + title + ' <br>' + this.i18n.is_a_pro_feature,
1225
+ text: this.i18n.pro_feature_msg,
1226
+ type: '',
1227
+ showCancelButton: true,
1228
+ cancelButtonText: this.i18n.close,
1229
+ confirmButtonColor: '#46b450',
1230
+ confirmButtonText: this.i18n.upgrade_to_pro
1231
+ }).then(function (is_confirm) {
1232
+ if (is_confirm) {
1233
+ window.open(wpuf_form_builder.pro_link, '_blank');
1234
+ }
1235
+
1236
+ }, function() {});
1237
+ },
1238
+
1239
+ showHide: function(target) {
1240
+ $(target).closest('.wpuf-integration').toggleClass('collapsed');
1241
+ },
1242
+ }
1243
+ });
1244
+
1245
  Vue.component('wpuf-merge-tags', {
1246
  template: '#tmpl-wpuf-merge-tags',
1247
  props: {
1254
 
1255
  data: function() {
1256
  return {
 
1257
  type: null,
1258
  };
1259
  },
1296
  }
1297
  }
1298
  });
1299
+ Vue.component('wpuf-modal', {
1300
+ template: '#tmpl-wpuf-modal',
1301
+ props: {
1302
+ show: Boolean,
1303
+ onClose: Function
1304
+ },
1305
+
1306
+ mounted: function () {
1307
+ var self = this;
1308
+
1309
+ $('body').on( 'keydown', function(e) {
1310
+ if (self.show && e.keyCode === 27) {
1311
+ self.closeModal();
1312
+ }
1313
+ });
1314
+ },
1315
+
1316
+ methods: {
1317
+ closeModal: function() {
1318
+ if ( typeof this.onClose !== 'undefined' ) {
1319
+ this.onClose();
1320
+ } else {
1321
+ this.$emit('hideModal');
1322
+ }
1323
+ }
1324
+ }
1325
+ });
1326
  Vue.component('text-editor', {
1327
  template: '#tmpl-wpuf-text-editor',
1328
 
assets/js/wpuf-form-builder-mixins.js CHANGED
@@ -97,6 +97,10 @@ Vue.mixin({
97
  return false;
98
  },
99
 
 
 
 
 
100
  containsField: function(field_name) {
101
  var i = 0;
102
 
@@ -123,6 +127,59 @@ Vue.mixin({
123
  }
124
  });
125
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
126
  /**
127
  * Mixin for option fields like
128
  * field-text, field-text-meta, field-radio etc
97
  return false;
98
  },
99
 
100
+ has_recaptcha_api_keys: function () {
101
+ return (wpuf_form_builder.recaptcha_site && wpuf_form_builder.recaptcha_secret) ? true : false;
102
+ },
103
+
104
  containsField: function(field_name) {
105
  var i = 0;
106
 
127
  }
128
  });
129
 
130
+ /**
131
+ * Integration mixin
132
+ *
133
+ * @type {Object}
134
+ */
135
+ wpuf_mixins.integration_mixin = {
136
+ props: {
137
+ id: String
138
+ },
139
+
140
+ computed: {
141
+
142
+ integrations: function() {
143
+ return wpuf_form_builder.integrations;
144
+ },
145
+
146
+ store: function() {
147
+ return this.$store.state.integrations;
148
+ },
149
+
150
+ settings: function() {
151
+ // find settings in store, otherwise take from default integration settings
152
+ if ( this.store[this.id] ) {
153
+ return this.store[this.id];
154
+ }
155
+
156
+ // we dont't have this on store, insert the default one
157
+ // and return it. It happens only for the first time
158
+ var defaultSettings = this.getIntegration(this.id).settings;
159
+
160
+ this.$store.commit('updateIntegration', {
161
+ index: this.id,
162
+ value: defaultSettings
163
+ });
164
+
165
+ return defaultSettings;
166
+ },
167
+ },
168
+
169
+ methods: {
170
+
171
+ getIntegration: function(id) {
172
+ return this.integrations[id];
173
+ },
174
+
175
+ insertValue: function(type, field, prop) {
176
+ var value = ( field !== undefined ) ? '{' + type + ':' + field + '}' : '{' + type + '}';
177
+
178
+ this.settings[prop] = this.settings[prop] + value;
179
+ }
180
+ }
181
+ };
182
+
183
  /**
184
  * Mixin for option fields like
185
  * field-text, field-text-meta, field-radio etc
assets/js/wpuf-form-builder.js CHANGED
@@ -198,6 +198,7 @@
198
  is_form_saved: false,
199
  is_form_switcher: false,
200
  post_title_editing: false,
 
201
  },
202
 
203
  computed: {
@@ -222,6 +223,15 @@
222
  }
223
  },
224
 
 
 
 
 
 
 
 
 
 
225
  created: function () {
226
  this.$store.commit('panel_add_show_prop');
227
 
@@ -266,7 +276,7 @@
266
  });
267
 
268
  window.onbeforeunload = function () {
269
- if (!self.is_form_saved) {
270
  return self.i18n.unsaved_changes;
271
  }
272
  };
198
  is_form_saved: false,
199
  is_form_switcher: false,
200
  post_title_editing: false,
201
+ isDirty: false
202
  },
203
 
204
  computed: {
223
  }
224
  },
225
 
226
+ watch: {
227
+ form_fields: {
228
+ handler: function() {
229
+ this.isDirty = true;
230
+ },
231
+ deep: true
232
+ }
233
+ },
234
+
235
  created: function () {
236
  this.$store.commit('panel_add_show_prop');
237
 
276
  });
277
 
278
  window.onbeforeunload = function () {
279
+ if ( self.isDirty ) {
280
  return self.i18n.unsaved_changes;
281
  }
282
  };
assets/vendor/sweetalert2/dist/sweetalert2.css CHANGED
@@ -46,7 +46,8 @@ body.swal2-iosfix {
46
  overflow-y: hidden; }
47
  .swal2-modal .swal2-title {
48
  color: #595959;
49
- font-size: 30px;
 
50
  text-align: center;
51
  font-weight: 600;
52
  text-transform: none;
46
  overflow-y: hidden; }
47
  .swal2-modal .swal2-title {
48
  color: #595959;
49
+ font-size: 22px;
50
+ line-height: 150%;
51
  text-align: center;
52
  font-weight: 600;
53
  text-transform: none;
class/admin-asset-loader.php ADDED
@@ -0,0 +1,94 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * The Admin Asset Loader Class
5
+ */
6
+ class WPUF_Admin_Assets {
7
+
8
+ function __construct() {
9
+ add_action( 'admin_enqueue_scripts', array( $this, 'register_admin_scripts' ) );
10
+ add_action( 'wp_enqueue_style', array( $this, 'register_admin_styles' ) );
11
+ }
12
+
13
+ /**
14
+ * Register the scripts
15
+ *
16
+ * @return void
17
+ */
18
+ public function register_admin_scripts() {
19
+ global $post;
20
+ $prefix = ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) ? '' : '.min';
21
+
22
+ wp_register_script( 'wpuf-vue', WPUF_ASSET_URI . '/vendor/vue/vue' . $prefix . '.js', array(), WPUF_VERSION, true );
23
+ wp_register_script( 'wpuf-vuex', WPUF_ASSET_URI . '/vendor/vuex/vuex' . $prefix . '.js', array( 'wpuf-vue' ), WPUF_VERSION, true );
24
+ wp_register_script( 'wpuf-sweetalert2', WPUF_ASSET_URI . '/vendor/sweetalert2/dist/sweetalert2.js', array(), WPUF_VERSION, true );
25
+ wp_register_script( 'wpuf-jquery-scrollTo', WPUF_ASSET_URI . '/vendor/jquery.scrollTo/jquery.scrollTo' . $prefix . '.js', array( 'jquery' ), WPUF_VERSION, true );
26
+ wp_register_script( 'wpuf-selectize', WPUF_ASSET_URI . '/vendor/selectize/js/standalone/selectize' . $prefix . '.js', array( 'jquery' ), WPUF_VERSION, true );
27
+ wp_register_script( 'wpuf-toastr', WPUF_ASSET_URI . '/vendor/toastr/toastr' . $prefix . '.js', array(), WPUF_VERSION, true );
28
+ wp_register_script( 'wpuf-clipboard', WPUF_ASSET_URI . '/vendor/clipboard/clipboard' . $prefix . '.js', array(), WPUF_VERSION, true );
29
+ wp_register_script( 'wpuf-tooltip', WPUF_ASSET_URI . '/vendor/tooltip/tooltip' . $prefix . '.js', array(), WPUF_VERSION, true );
30
+
31
+ $form_builder_js_deps = apply_filters( 'wpuf-form-builder-js-deps', array(
32
+ 'jquery', 'jquery-ui-sortable', 'jquery-ui-draggable', 'underscore',
33
+ 'wpuf-vue', 'wpuf-vuex', 'wpuf-sweetalert2', 'wpuf-jquery-scrollTo',
34
+ 'wpuf-selectize', 'wpuf-toastr', 'wpuf-clipboard', 'wpuf-tooltip'
35
+ ) );
36
+
37
+ wp_register_script( 'wpuf-form-builder-mixins', WPUF_ASSET_URI . '/js/wpuf-form-builder-mixins.js', $form_builder_js_deps, WPUF_VERSION, true );
38
+
39
+ wp_register_script( 'wpuf-form-builder-components', WPUF_ASSET_URI . '/js/wpuf-form-builder-components.js', array( 'wpuf-form-builder-mixins' ), WPUF_VERSION, true );
40
+
41
+ wp_register_script( 'wpuf-form-builder', WPUF_ASSET_URI . '/js/wpuf-form-builder.js', array( 'wpuf-form-builder-components' ), WPUF_VERSION, true );
42
+
43
+ /*
44
+ * Data required for building the form
45
+ */
46
+ require_once WPUF_ROOT . '/admin/form-builder/class-wpuf-form-builder-field-settings.php';
47
+ require_once WPUF_ROOT . '/includes/free/prompt.php';
48
+
49
+ $wpuf_form_builder = apply_filters( 'wpuf-form-builder-localize-script', array(
50
+ // 'i18n' => $this->i18n(),
51
+ 'post' => $post,
52
+ 'form_fields' => wpuf_get_form_fields( $post->ID ),
53
+ // 'panel_sections' => $this->get_panel_sections(),
54
+ 'field_settings' => WPUF_Form_Builder_Field_Settings::get_field_settings(),
55
+ 'notifications' => wpuf_get_form_notifications( $post->ID ),
56
+ 'pro_link' => WPUF_Pro_Prompt::get_pro_url(),
57
+ 'site_url' => site_url('/'),
58
+ 'recaptcha_site' => wpuf_get_option( 'recaptcha_public', 'wpuf_general' ),
59
+ 'recaptcha_secret' => wpuf_get_option( 'recaptcha_private', 'wpuf_general' ),
60
+ ) );
61
+
62
+ wp_localize_script( 'wpuf-form-builder-mixins', 'wpuf_form_builder', $wpuf_form_builder );
63
+
64
+ // mixins
65
+ $wpuf_mixins = array(
66
+ 'root' => apply_filters( 'wpuf-form-builder-js-root-mixins', array() ),
67
+ 'builder_stage' => apply_filters( 'wpuf-form-builder-js-builder-stage-mixins', array() ),
68
+ 'form_fields' => apply_filters( 'wpuf-form-builder-js-form-fields-mixins', array() ),
69
+ 'field_options' => apply_filters( 'wpuf-form-builder-js-field-options-mixins', array() ),
70
+ );
71
+
72
+ wp_localize_script( 'wpuf-form-builder-mixins', 'wpuf_mixins', $wpuf_mixins );
73
+ }
74
+
75
+ /**
76
+ * Register the styles
77
+ *
78
+ * @return void
79
+ */
80
+ public function register_admin_styles() {
81
+ wp_register_style( 'wpuf-css', WPUF_ASSET_URI . '/css/frontend-forms.css' );
82
+ wp_register_style( 'wpuf-font-awesome', WPUF_ASSET_URI . '/vendor/font-awesome/css/font-awesome.min.css', array(), WPUF_VERSION );
83
+ wp_register_style( 'wpuf-sweetalert2', WPUF_ASSET_URI . '/vendor/sweetalert2/dist/sweetalert2.css', array(), WPUF_VERSION );
84
+ wp_register_style( 'wpuf-selectize', WPUF_ASSET_URI . '/vendor/selectize/css/selectize.default.css', array(), WPUF_VERSION );
85
+ wp_register_style( 'wpuf-toastr', WPUF_ASSET_URI . '/vendor/toastr/toastr.min.css', array(), WPUF_VERSION );
86
+ wp_register_style( 'wpuf-tooltip', WPUF_ASSET_URI . '/vendor/tooltip/tooltip.css', array(), WPUF_VERSION );
87
+
88
+ $form_builder_css_deps = apply_filters( 'wpuf-form-builder-css-deps', array(
89
+ 'wpuf-css', 'wpuf-font-awesome', 'wpuf-sweetalert2', 'wpuf-selectize', 'wpuf-toastr', 'wpuf-tooltip'
90
+ ) );
91
+
92
+ wp_register_style( 'wpuf-form-builder', WPUF_ASSET_URI . '/css/wpuf-form-builder.css', $form_builder_css_deps, WPUF_VERSION );
93
+ }
94
+ }
class/asset-loader.php ADDED
@@ -0,0 +1,85 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * The Asset Loader Class
5
+ */
6
+ class WPUF_Assets {
7
+
8
+ function __construct() {
9
+ add_action( 'wp_enqueue_scripts', array( $this, 'register_scripts' ) );
10
+ add_action( 'wp_enqueue_scripts', array( $this, 'register_styles' ) );
11
+ }
12
+
13
+ /**
14
+ * Register the scripts
15
+ *
16
+ * @return void
17
+ */
18
+ public function register_scripts() {
19
+ global $post;
20
+ $prefix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
21
+ $scheme = is_ssl() ? 'https' : 'http';
22
+ $api_key = wpuf_get_option( 'gmap_api_key', 'wpuf_general' );
23
+
24
+ if ( !empty( $api_key ) ) {
25
+ wp_register_script( 'google-maps', $scheme . '://maps.google.com/maps/api/js?libraries=places&key=' . $api_key, array(), null );
26
+ }
27
+ if ( isset ( $post->ID ) ) {
28
+ ?>
29
+ <script type="text/javascript" id="wpuf-language-script">
30
+ var error_str_obj = {
31
+ 'required' : '<?php esc_attr_e( 'is required', 'wpuf' ); ?>',
32
+ 'mismatch' : '<?php esc_attr_e( 'does not match', 'wpuf' ); ?>',
33
+ 'validation' : '<?php esc_attr_e( 'is not valid', 'wpuf' ); ?>'
34
+ }
35
+ </script>
36
+ <?php
37
+ wp_register_script( 'wpuf-form', WPUF_ASSET_URI . '/js/frontend-form' . $prefix . '.js', array('jquery') );
38
+ }
39
+ wp_register_script( 'wpuf-subscriptions', WPUF_ASSET_URI . '/js/subscriptions.js', array('jquery'), false, true );
40
+ wp_register_script( 'jquery-ui-timepicker', WPUF_ASSET_URI . '/js/jquery-ui-timepicker-addon.js', array('jquery-ui-datepicker') );
41
+ wp_register_script( 'wpuf-upload', WPUF_ASSET_URI . '/js/upload.js', array('jquery', 'plupload-handlers') );
42
+
43
+ wp_localize_script( 'wpuf-form', 'wpuf_frontend', array(
44
+ 'ajaxurl' => admin_url( 'admin-ajax.php' ),
45
+ 'error_message' => __( 'Please fix the errors to proceed', 'wpuf' ),
46
+ 'nonce' => wp_create_nonce( 'wpuf_nonce' ),
47
+ 'word_limit' => __( 'Word limit reached', 'wpuf' )
48
+ ) );
49
+
50
+ wp_localize_script( 'wpuf-upload', 'wpuf_frontend_upload', array(
51
+ 'confirmMsg' => __( 'Are you sure?', 'wpuf' ),
52
+ 'nonce' => wp_create_nonce( 'wpuf_nonce' ),
53
+ 'ajaxurl' => admin_url( 'admin-ajax.php' ),
54
+ 'plupload' => array(
55
+ 'url' => admin_url( 'admin-ajax.php' ) . '?nonce=' . wp_create_nonce( 'wpuf-upload-nonce' ),
56
+ 'flash_swf_url' => includes_url( 'js/plupload/plupload.flash.swf' ),
57
+ 'filters' => array(array('title' => __( 'Allowed Files', 'wpuf' ), 'extensions' => '*')),
58
+ 'multipart' => true,
59
+ 'urlstream_upload' => true,
60
+ 'warning' => __( 'Maximum number of files reached!', 'wpuf' ),
61
+ 'size_error' => __( 'The file you have uploaded exceeds the file size limit. Please try again.', 'wpuf' ),
62
+ 'type_error' => __( 'You have uploaded an incorrect file type. Please try again.', 'wpuf' )
63
+ )
64
+ ));
65
+
66
+ wp_register_script( 'wpuf-vue', WPUF_ASSET_URI . '/vendor/vue/vue' . $prefix . '.js', array(), WPUF_VERSION, true );
67
+ wp_register_script( 'wpuf-vuex', WPUF_ASSET_URI . '/vendor/vuex/vuex' . $prefix . '.js', array( 'wpuf-vue' ), WPUF_VERSION, true );
68
+ wp_register_script( 'wpuf-sweetalert2', WPUF_ASSET_URI . '/vendor/sweetalert2/dist/sweetalert2.js', array(), WPUF_VERSION, true );
69
+ wp_register_script( 'wpuf-jquery-scrollTo', WPUF_ASSET_URI . '/vendor/jquery.scrollTo/jquery.scrollTo' . $prefix . '.js', array( 'jquery' ), WPUF_VERSION, true );
70
+ wp_register_script( 'wpuf-selectize', WPUF_ASSET_URI . '/vendor/selectize/js/standalone/selectize' . $prefix . '.js', array( 'jquery' ), WPUF_VERSION, true );
71
+ wp_register_script( 'wpuf-toastr', WPUF_ASSET_URI . '/vendor/toastr/toastr' . $prefix . '.js', array(), WPUF_VERSION, true );
72
+ wp_register_script( 'wpuf-clipboard', WPUF_ASSET_URI . '/vendor/clipboard/clipboard' . $prefix . '.js', array(), WPUF_VERSION, true );
73
+ wp_register_script( 'wpuf-tooltip', WPUF_ASSET_URI . '/vendor/tooltip/tooltip' . $prefix . '.js', array(), WPUF_VERSION, true );
74
+ }
75
+
76
+ /**
77
+ * Register the styles
78
+ *
79
+ * @return void
80
+ */
81
+ public function register_styles() {
82
+ wp_register_style( 'wpuf-css', WPUF_ASSET_URI . '/css/frontend-forms.css' );
83
+ wp_register_style( 'jquery-ui', WPUF_ASSET_URI . '/css/jquery-ui-1.9.1.custom.css' );
84
+ }
85
+ }
class/frontend-account.php CHANGED
@@ -116,6 +116,8 @@ class WPUF_Frontend_Account {
116
  $user_sub = WPUF_Subscription::get_user_pack( $userdata->ID );
117
  if ( ! isset( $user_sub['pack_id'] ) ) {
118
  die( __( "<p>You've not subscribed any package yet.</p>", 'wpuf' ) );
 
 
119
  }
120
 
121
  $pack = WPUF_Subscription::get_subscription( $user_sub['pack_id'] );
116
  $user_sub = WPUF_Subscription::get_user_pack( $userdata->ID );
117
  if ( ! isset( $user_sub['pack_id'] ) ) {
118
  die( __( "<p>You've not subscribed any package yet.</p>", 'wpuf' ) );
119
+ } else {
120
+ _e( "<p>You've subscribed to the following package.</p>", 'wpuf' );
121
  }
122
 
123
  $pack = WPUF_Subscription::get_subscription( $user_sub['pack_id'] );
class/frontend-dashboard.php CHANGED
@@ -21,6 +21,12 @@ class WPUF_Frontend_Dashboard {
21
  * @since 0.1
22
  */
23
  function shortcode( $atts ) {
 
 
 
 
 
 
24
 
25
  extract( shortcode_atts( array('post_type' => 'post'), $atts ) );
26
 
21
  * @since 0.1
22
  */
23
  function shortcode( $atts ) {
24
+ // wpuf()->plugin_scripts();
25
+ ?>
26
+ <style>
27
+ <?php //echo $custom_css = wpuf_get_option( 'custom_css', 'wpuf_general' ); ?>
28
+ </style>
29
+ <?php
30
 
31
  extract( shortcode_atts( array('post_type' => 'post'), $atts ) );
32
 
class/frontend-form-post.php CHANGED
@@ -40,6 +40,12 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
40
  * @return string
41
  */
42
  function add_post_shortcode( $atts ) {
 
 
 
 
 
 
43
  extract( shortcode_atts( array( 'id' => 0 ), $atts ) );
44
  ob_start();
45
 
@@ -67,7 +73,12 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
67
  */
68
  function edit_post_shortcode( $atts ) {
69
  global $userdata;
70
-
 
 
 
 
 
71
  ob_start();
72
 
73
  if ( !is_user_logged_in() ) {
@@ -623,6 +634,8 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
623
  }
624
 
625
  // save any custom taxonomies
 
 
626
  foreach ( $taxonomy_vars as $taxonomy ) {
627
  if ( isset( $_POST[$taxonomy['name']] ) ) {
628
 
@@ -634,10 +647,55 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
634
  $tax = array( $tax );
635
  }
636
 
637
- wp_set_post_terms( $post_id, $_POST[$taxonomy['name']], $taxonomy['name'] );
638
- }
639
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
640
  }
 
641
  }
642
 
643
  //used to add code to run when the post is going to draft
@@ -672,12 +730,13 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
672
 
673
  $file_data = isset( $_POST['wpuf_files_data'][$attachment_id] ) ? $_POST['wpuf_files_data'][$attachment_id] : false;
674
  if ( $file_data ) {
675
- wp_update_post( array(
676
  'ID' => $attachment_id,
677
  'post_title' => $file_data['title'],
678
  'post_content' => $file_data['desc'],
679
  'post_excerpt' => $file_data['caption'],
680
- ) );
 
681
 
682
  update_post_meta( $attachment_id, '_wp_attachment_image_alt', $file_data['title'] );
683
  }
@@ -715,19 +774,19 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
715
  continue;
716
  }
717
 
718
-
719
  wpuf_associate_attachment( $attachment_id, $post_id );
720
  add_post_meta( $post_id, $file_input['name'], $attachment_id );
721
 
722
  // file title, caption, desc update
723
  $file_data = isset( $_POST['wpuf_files_data'][$attachment_id] ) ? $_POST['wpuf_files_data'][$attachment_id] : false;
724
  if ( $file_data ) {
725
- wp_update_post( array(
726
  'ID' => $attachment_id,
727
  'post_title' => $file_data['title'],
728
  'post_content' => $file_data['desc'],
729
  'post_excerpt' => $file_data['caption'],
730
- ) );
 
731
 
732
  update_post_meta( $attachment_id, '_wp_attachment_image_alt', $file_data['title'] );
733
  }
40
  * @return string
41
  */
42
  function add_post_shortcode( $atts ) {
43
+ // wpuf()->plugin_scripts();
44
+ ?>
45
+ <style>
46
+ <?php //echo $custom_css = wpuf_get_option( 'custom_css', 'wpuf_general' ); ?>
47
+ </style>
48
+ <?php
49
  extract( shortcode_atts( array( 'id' => 0 ), $atts ) );
50
  ob_start();
51
 
73
  */
74
  function edit_post_shortcode( $atts ) {
75
  global $userdata;
76
+ // wpuf()->plugin_scripts();
77
+ ?>
78
+ <style>
79
+ <?php //echo $custom_css = wpuf_get_option( 'custom_css', 'wpuf_general' ); ?>
80
+ </style>
81
+ <?php
82
  ob_start();
83
 
84
  if ( !is_user_logged_in() ) {
634
  }
635
 
636
  // save any custom taxonomies
637
+ $woo_attr = array();
638
+
639
  foreach ( $taxonomy_vars as $taxonomy ) {
640
  if ( isset( $_POST[$taxonomy['name']] ) ) {
641
 
647
  $tax = array( $tax );
648
  }
649
 
650
+ if ( $taxonomy['type'] == 'text' ) {
651
+
652
+ $hierarchical = array_map( 'trim', array_map( 'strip_tags', explode( ',', $_POST[$taxonomy['name']] ) ) );
653
+
654
+ wp_set_object_terms( $post_id, $hierarchical, $taxonomy['name'] );
655
+
656
+ // woocommerce check
657
+ if ( isset( $taxonomy['woo_attr'] ) && $taxonomy['woo_attr'] == 'yes' && !empty( $_POST[$taxonomy['name']] ) ) {
658
+ $woo_attr[sanitize_title( $taxonomy['name'] )] = $this->woo_attribute( $taxonomy );
659
+ }
660
+ } else {
661
+
662
+ if ( is_taxonomy_hierarchical( $taxonomy['name'] ) ) {
663
+ wp_set_post_terms( $post_id, $_POST[$taxonomy['name']], $taxonomy['name'] );
664
+
665
+ // woocommerce check
666
+ if ( isset( $taxonomy['woo_attr'] ) && $taxonomy['woo_attr'] == 'yes' && !empty( $_POST[$taxonomy['name']] ) ) {
667
+ $woo_attr[sanitize_title( $taxonomy['name'] )] = $this->woo_attribute( $taxonomy );
668
+ }
669
+ } else {
670
+ if ( $tax ) {
671
+ $non_hierarchical = array();
672
+
673
+ foreach ( $tax as $value ) {
674
+ $term = get_term_by( 'id', $value, $taxonomy['name'] );
675
+ if ( $term && !is_wp_error( $term ) ) {
676
+ $non_hierarchical[] = $term->name;
677
+ }
678
+ }
679
+
680
+ wp_set_post_terms( $post_id, $non_hierarchical, $taxonomy['name'] );
681
+
682
+ // woocommerce check
683
+ if ( isset( $taxonomy['woo_attr'] ) && $taxonomy['woo_attr'] == 'yes' && !empty( $_POST[$taxonomy['name']] ) ) {
684
+ $woo_attr[sanitize_title( $taxonomy['name'] )] = $this->woo_attribute( $taxonomy );
685
+ }
686
+
687
+ }
688
+ } // hierarchical
689
+ } // is text
690
+ } // is object tax
691
+ } // isset tax
692
+ }
693
+
694
+ // if a woocommerce attribute
695
+ if ( $woo_attr ) {
696
+ update_post_meta( $post_id, '_product_attributes', $woo_attr );
697
  }
698
+
699
  }
700
 
701
  //used to add code to run when the post is going to draft
730
 
731
  $file_data = isset( $_POST['wpuf_files_data'][$attachment_id] ) ? $_POST['wpuf_files_data'][$attachment_id] : false;
732
  if ( $file_data ) {
733
+ $args = array(
734
  'ID' => $attachment_id,
735
  'post_title' => $file_data['title'],
736
  'post_content' => $file_data['desc'],
737
  'post_excerpt' => $file_data['caption'],
738
+ );
739
+ wpuf_update_post( $args );
740
 
741
  update_post_meta( $attachment_id, '_wp_attachment_image_alt', $file_data['title'] );
742
  }
774
  continue;
775
  }
776
 
 
777
  wpuf_associate_attachment( $attachment_id, $post_id );
778
  add_post_meta( $post_id, $file_input['name'], $attachment_id );
779
 
780
  // file title, caption, desc update
781
  $file_data = isset( $_POST['wpuf_files_data'][$attachment_id] ) ? $_POST['wpuf_files_data'][$attachment_id] : false;
782
  if ( $file_data ) {
783
+ $args = array(
784
  'ID' => $attachment_id,
785
  'post_title' => $file_data['title'],
786
  'post_content' => $file_data['desc'],
787
  'post_excerpt' => $file_data['caption'],
788
+ );
789
+ wpuf_update_post( $args );
790
 
791
  update_post_meta( $attachment_id, '_wp_attachment_image_alt', $file_data['title'] );
792
  }
class/render-form.php CHANGED
@@ -86,10 +86,11 @@ class WPUF_Render_Form {
86
  *
87
  * @return void
88
  */
89
- function validate_re_captcha( $no_captcha = '' ) {
90
-
 
91
  $private_key = wpuf_get_option( 'recaptcha_private', 'wpuf_general' );
92
- if ( $no_captcha == 1 ) {
93
 
94
  $response = null;
95
  $reCaptcha = new ReCaptcha($private_key);
@@ -103,7 +104,7 @@ class WPUF_Render_Form {
103
  $this->send_error( __( 'reCAPTCHA validation failed', 'wpuf' ) );
104
  }
105
 
106
- } elseif ( $no_captcha == 0 ) {
107
 
108
  $recap_challenge = isset( $_POST['recaptcha_challenge_field'] ) ? $_POST['recaptcha_challenge_field'] : '';
109
  $recap_response = isset( $_POST['recaptcha_response_field'] ) ? $_POST['recaptcha_response_field'] : '';
@@ -377,7 +378,7 @@ class WPUF_Render_Form {
377
  }
378
 
379
  function render_item_before( $form_field, $post_id ) {
380
- $label_exclude = array('section_break', 'html', 'action_hook', 'toc');
381
  $el_name = !empty( $form_field['name'] ) ? $form_field['name'] : '';
382
  $class_name = !empty( $form_field['css'] ) ? ' ' . $form_field['css'] : '';
383
 
@@ -435,7 +436,7 @@ class WPUF_Render_Form {
435
  */
436
  function render_items( $form_vars, $post_id, $type = 'post', $form_id, $form_settings, $cond_inputs = array() ) {
437
 
438
- $edit_ignore = array('recaptcha', 'really_simple_captcha');
439
  $hidden_fields = array();
440
  ?>
441
  <script type="text/javascript">
@@ -446,6 +447,10 @@ class WPUF_Render_Form {
446
  if ( typeof wpuf_plupload_items === 'undefined' ) {
447
  wpuf_plupload_items = [];
448
  }
 
 
 
 
449
  </script>
450
  <?php
451
 
@@ -563,6 +568,11 @@ class WPUF_Render_Form {
563
  $this->conditional_logic( $form_field, $form_id );
564
  break;
565
 
 
 
 
 
 
566
  default:
567
 
568
  // fallback for a dynamic method of this class if exists
@@ -723,6 +733,10 @@ class WPUF_Render_Form {
723
  if ( $post_id && $attr['input_type'] == 'password') {
724
  $attr['required'] = 'no';
725
  }
 
 
 
 
726
  ?>
727
  <div class="wpuf-label">
728
  <label for="<?php echo isset( $attr['name'] ) ? $attr['name'] : 'cls'; ?>"><?php echo $attr['label'] . $this->required_mark( $attr ); ?></label>
@@ -1545,4 +1559,30 @@ class WPUF_Render_Form {
1545
  <?php
1546
  }
1547
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1548
  }
86
  *
87
  * @return void
88
  */
89
+ function validate_re_captcha( $no_captcha = '', $invisible = '' ) {
90
+ // need to check if invisible reCaptcha need library or we can do it here.
91
+ // ref: https://shareurcodes.com/blog/google%20invisible%20recaptcha%20integration%20with%20php
92
  $private_key = wpuf_get_option( 'recaptcha_private', 'wpuf_general' );
93
+ if ( $no_captcha == 1 && '' != $invisible ) {
94
 
95
  $response = null;
96
  $reCaptcha = new ReCaptcha($private_key);
104
  $this->send_error( __( 'reCAPTCHA validation failed', 'wpuf' ) );
105
  }
106
 
107
+ } elseif ( $no_captcha == 0 && '' != $invisible ) {
108
 
109
  $recap_challenge = isset( $_POST['recaptcha_challenge_field'] ) ? $_POST['recaptcha_challenge_field'] : '';
110
  $recap_response = isset( $_POST['recaptcha_response_field'] ) ? $_POST['recaptcha_response_field'] : '';
378
  }
379
 
380
  function render_item_before( $form_field, $post_id ) {
381
+ $label_exclude = array('section_break', 'html', 'action_hook', 'toc', 'shortcode');
382
  $el_name = !empty( $form_field['name'] ) ? $form_field['name'] : '';
383
  $class_name = !empty( $form_field['css'] ) ? ' ' . $form_field['css'] : '';
384
 
436
  */
437
  function render_items( $form_vars, $post_id, $type = 'post', $form_id, $form_settings, $cond_inputs = array() ) {
438
 
439
+ $edit_ignore = array( 'really_simple_captcha' );
440
  $hidden_fields = array();
441
  ?>
442
  <script type="text/javascript">
447
  if ( typeof wpuf_plupload_items === 'undefined' ) {
448
  wpuf_plupload_items = [];
449
  }
450
+
451
+ if ( typeof wpuf_map_items === 'undefined' ) {
452
+ wpuf_map_items = [];
453
+ }
454
  </script>
455
  <?php
456
 
568
  $this->conditional_logic( $form_field, $form_id );
569
  break;
570
 
571
+ case 'recaptcha':
572
+ $this->recaptcha( $form_field, $post_id, $form_id );
573
+ $this->conditional_logic( $form_field, $form_id );
574
+ break;
575
+
576
  default:
577
 
578
  // fallback for a dynamic method of this class if exists
733
  if ( $post_id && $attr['input_type'] == 'password') {
734
  $attr['required'] = 'no';
735
  }
736
+ if ( $attr['input_type'] == 'recaptcha' && $attr['recaptcha_type'] == 'invisible_recaptcha') {
737
+ return;
738
+ }
739
+
740
  ?>
741
  <div class="wpuf-label">
742
  <label for="<?php echo isset( $attr['name'] ) ? $attr['name'] : 'cls'; ?>"><?php echo $attr['label'] . $this->required_mark( $attr ); ?></label>
1559
  <?php
1560
  }
1561
 
1562
+ /**
1563
+ * Prints recaptcha field
1564
+ *
1565
+ * @param array $attr
1566
+ */
1567
+ public static function recaptcha( $attr, $post_id, $form_id ) {
1568
+
1569
+ if ( $post_id ) {
1570
+ return;
1571
+ }
1572
+ $enable_no_captcha = $enable_invisible_recaptcha = '';
1573
+ if ( isset ( $attr['recaptcha_type'] ) ) {
1574
+ $enable_invisible_recaptcha = $attr['recaptcha_type'] == 'invisible_recaptcha' ? true : false;
1575
+ $enable_no_captcha = $attr['recaptcha_type'] == 'enable_no_captcha' ? true : false;
1576
+ }
1577
+
1578
+ if ( $enable_invisible_recaptcha ) { ?>
1579
+ <script src="https://www.google.com/recaptcha/api.js" async defer></script>
1580
+ <div id='recaptcha' class="g-recaptcha" data-sitekey=<?php echo wpuf_get_option( 'recaptcha_public', 'wpuf_general' ); ?> data-callback="onSubmit" data-size="invisible"></div>
1581
+ <?php } else { ?>
1582
+ <div class="wpuf-fields <?php echo ' wpuf_'.$attr['name'].'_'.$form_id; ?>">
1583
+ <?php echo recaptcha_get_html( wpuf_get_option( 'recaptcha_public', 'wpuf_general' ), $enable_no_captcha, null, is_ssl() ); ?>
1584
+ </div>
1585
+ <?php }
1586
+ }
1587
+
1588
  }
class/subscription.php CHANGED
@@ -64,7 +64,7 @@ class WPUF_Subscription {
64
  $gateway = ( $_POST['gateway'] == 'bank/manual' ) ? 'bank' : sanitize_text_field( $_POST['gateway'] );
65
 
66
  if ( 'bank' == $gateway || 'no' == $current_pack['recurring'] ) {
67
- WPUF_Subscription::init()->update_user_subscription_meta( $_POST['user_id'], 'Cancel' );
68
  } else {
69
  do_action( "wpuf_cancel_subscription_{$gateway}", $_POST );
70
  }
@@ -166,7 +166,7 @@ class WPUF_Subscription {
166
 
167
  if ( $billing_amount === false ) {
168
  $this->new_subscription( $user_id, $pack_id, null, false, 'free' );
169
- WPUF_Subscription::add_used_free_pack( $user_id, $pack_id );
170
  } else {
171
  $pay_page = intval( wpuf_get_option( 'payment_page', 'wpuf_payment' ) );
172
  $redirect = add_query_arg( array( 'action' => 'wpuf_pay', 'type' => 'pack', 'pack_id' => (int) $pack_id ), get_permalink( $pay_page ) );
@@ -179,7 +179,7 @@ class WPUF_Subscription {
179
  * @since 2.2
180
  */
181
  function subscription_script() {
182
- wp_enqueue_script( 'wpuf-subscriptions', WPUF_ASSET_URI . '/js/subscriptions.js', array('jquery'), false, true );
183
  }
184
 
185
  /**
@@ -790,6 +790,11 @@ class WPUF_Subscription {
790
  * from admin Panel
791
  */
792
  function subscription_packs() {
 
 
 
 
 
793
  $cost_per_post = wpuf_get_option( 'charge_posting', 'wpuf_payment' );
794
 
795
  if ( $cost_per_post != 'yes' ) {
@@ -955,7 +960,7 @@ class WPUF_Subscription {
955
  function force_pack_notice( $text, $id, $form_settings ) {
956
  $force_pack = wpuf_get_option( 'force_pack', 'wpuf_payment' );
957
 
958
- if ( $force_pack == 'yes' && WPUF_Subscription::has_user_error($form_settings) ) {
959
  $pack_page = get_permalink( wpuf_get_option( 'subscription_page', 'wpuf_payment' ) );
960
 
961
  $text = sprintf( __( 'You must <a href="%s">purchase a pack</a> before posting', 'wpuf' ), $pack_page );
@@ -976,7 +981,7 @@ class WPUF_Subscription {
976
  return 'no';
977
  } else {
978
 
979
- if ( $force_pack == 'yes' && WPUF_Subscription::has_user_error( $form_settings ) ) {
980
  return 'no';
981
  } else {
982
  return 'yes';
64
  $gateway = ( $_POST['gateway'] == 'bank/manual' ) ? 'bank' : sanitize_text_field( $_POST['gateway'] );
65
 
66
  if ( 'bank' == $gateway || 'no' == $current_pack['recurring'] ) {
67
+ $this->update_user_subscription_meta( $_POST['user_id'], 'Cancel' );
68
  } else {
69
  do_action( "wpuf_cancel_subscription_{$gateway}", $_POST );
70
  }
166
 
167
  if ( $billing_amount === false ) {
168
  $this->new_subscription( $user_id, $pack_id, null, false, 'free' );
169
+ self::add_used_free_pack( $user_id, $pack_id );
170
  } else {
171
  $pay_page = intval( wpuf_get_option( 'payment_page', 'wpuf_payment' ) );
172
  $redirect = add_query_arg( array( 'action' => 'wpuf_pay', 'type' => 'pack', 'pack_id' => (int) $pack_id ), get_permalink( $pay_page ) );
179
  * @since 2.2
180
  */
181
  function subscription_script() {
182
+ wp_enqueue_script( 'wpuf-subscriptions' );
183
  }
184
 
185
  /**
790
  * from admin Panel
791
  */
792
  function subscription_packs() {
793
+ ?>
794
+ <style>
795
+ <?php echo $custom_css = wpuf_get_option( 'custom_css', 'wpuf_general' ); ?>
796
+ </style>
797
+ <?php
798
  $cost_per_post = wpuf_get_option( 'charge_posting', 'wpuf_payment' );
799
 
800
  if ( $cost_per_post != 'yes' ) {
960
  function force_pack_notice( $text, $id, $form_settings ) {
961
  $force_pack = wpuf_get_option( 'force_pack', 'wpuf_payment' );
962
 
963
+ if ( $force_pack == 'yes' && self::has_user_error($form_settings) ) {
964
  $pack_page = get_permalink( wpuf_get_option( 'subscription_page', 'wpuf_payment' ) );
965
 
966
  $text = sprintf( __( 'You must <a href="%s">purchase a pack</a> before posting', 'wpuf' ), $pack_page );
981
  return 'no';
982
  } else {
983
 
984
+ if ( $force_pack == 'yes' && self::has_user_error( $form_settings ) ) {
985
  return 'no';
986
  } else {
987
  return 'yes';
includes/class-abstract-integration.php ADDED
@@ -0,0 +1,114 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * The Integration abstract class
5
+ */
6
+ abstract class WPUF_Abstract_Integration {
7
+
8
+ /**
9
+ * The integration id
10
+ *
11
+ * @var boolean
12
+ */
13
+ public $id;
14
+
15
+ /**
16
+ * If the integration is enabled
17
+ *
18
+ * @var boolean
19
+ */
20
+ public $enabled;
21
+
22
+ /**
23
+ * Integration title
24
+ *
25
+ * @var string
26
+ */
27
+ public $title;
28
+
29
+ /**
30
+ * URL to the integration icon
31
+ *
32
+ * @var string
33
+ */
34
+ public $icon;
35
+
36
+ /**
37
+ * The settings fields for this integrations
38
+ *
39
+ * @var array
40
+ */
41
+ public $settings_fields = array();
42
+
43
+ /**
44
+ * Get the integration title
45
+ *
46
+ * @return string
47
+ */
48
+ public function get_title() {
49
+ return apply_filters( 'wpuf_integration_title', $this->title, $this );
50
+ }
51
+
52
+ /**
53
+ * Get the integration id
54
+ *
55
+ * @return string
56
+ */
57
+ public function get_id() {
58
+ return apply_filters( 'wpuf_integration_title', $this->id, $this );
59
+ }
60
+
61
+ /**
62
+ * Get intgration icon
63
+ *
64
+ * @return string
65
+ */
66
+ public function get_icon() {
67
+ return apply_filters( 'wpuf_integration_icon', $this->icon, $this );
68
+ }
69
+
70
+ /**
71
+ * Check if the integration is enabled
72
+ *
73
+ * @return boolean
74
+ */
75
+ public function is_enabled() {
76
+ return $this->enabled == true;
77
+ }
78
+
79
+ /**
80
+ * Get the settings fields
81
+ *
82
+ * @return array
83
+ */
84
+ public function get_settings_fields() {
85
+ return $this->settings_fields;
86
+ }
87
+
88
+ /**
89
+ * Get the integration settings for the component
90
+ *
91
+ * @return array
92
+ */
93
+ public function get_js_settings() {
94
+ return array(
95
+ 'id' => $this->get_id(),
96
+ 'title' => $this->get_title(),
97
+ 'icon' => $this->get_icon(),
98
+ 'settings' => $this->get_settings_fields()
99
+ );
100
+ }
101
+
102
+ /**
103
+ * Register the integration in the builder settings
104
+ *
105
+ * @param array $integrations
106
+ *
107
+ * @return array
108
+ */
109
+ public function register_integration_settings( $integrations ) {
110
+ $integrations[ $this->id ] = $this->get_js_settings();
111
+
112
+ return $integrations;
113
+ }
114
+ }
includes/class-integrations.php ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * The Integration Loader
5
+ */
6
+ class WPUF_Integrations {
7
+
8
+ /**
9
+ * The integration instances
10
+ *
11
+ * @var array
12
+ */
13
+ public $integrations = array();
14
+
15
+ /**
16
+ * Initialize the integrations
17
+ */
18
+ public function __construct() {
19
+
20
+ $integrations = apply_filters( 'wpuf_integrations', array() );
21
+
22
+ // Load integration classes
23
+ foreach ( $integrations as $integration ) {
24
+
25
+ $integration_instance = new $integration();
26
+
27
+ $this->integrations[ $integration_instance->id ] = $integration_instance;
28
+ }
29
+ }
30
+
31
+ /**
32
+ * Return loaded integrations.
33
+ *
34
+ * @return array
35
+ */
36
+ public function get_integrations() {
37
+ return $this->integrations;
38
+ }
39
+ }
includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php CHANGED
@@ -23,7 +23,7 @@ class WPUF_Form_Builder_Field_Settings_Free extends WPUF_Form_Builder_Field_Sett
23
  'address_field' => self::address_field(),
24
  'step_start' => self::step_start(),
25
  'google_map' => self::google_map(),
26
- 'recaptcha' => self::recaptcha(),
27
  'really_simple_captcha' => self::really_simple_captcha(),
28
  'action_hook' => self::action_hook(),
29
  'toc' => self::toc(),
@@ -183,16 +183,16 @@ class WPUF_Form_Builder_Field_Settings_Free extends WPUF_Form_Builder_Field_Sett
183
  }
184
 
185
  /**
186
- * Recaptcha
187
  *
188
- * @since 2.5
189
  *
190
  * @return array
191
  */
192
- public static function recaptcha() {
193
  return array(
194
- 'template' => 'recaptcha',
195
- 'title' => __( 'Recaptcha', 'wpuf' ),
196
  'pro_feature' => true,
197
  );
198
  }
23
  'address_field' => self::address_field(),
24
  'step_start' => self::step_start(),
25
  'google_map' => self::google_map(),
26
+ 'shortcode' => self::shortcode(),
27
  'really_simple_captcha' => self::really_simple_captcha(),
28
  'action_hook' => self::action_hook(),
29
  'toc' => self::toc(),
183
  }
184
 
185
  /**
186
+ * Shortcode
187
  *
188
+ * @since 2.5.4
189
  *
190
  * @return array
191
  */
192
+ public static function shortcode() {
193
  return array(
194
+ 'template' => 'shortcode',
195
+ 'title' => __( 'Shortcode', 'wpuf' ),
196
  'pro_feature' => true,
197
  );
198
  }
includes/free/admin/form-builder/class-wpuf-form-builder-free.php CHANGED
@@ -74,7 +74,7 @@ class WPUF_Admin_Form_Builder_Free {
74
  */
75
  public function add_others_fields( $fields ) {
76
  return array_merge( $fields, array(
77
- 'recaptcha', 'really_simple_captcha', 'action_hook', 'toc', 'ratings'
78
  ) );
79
  }
80
 
74
  */
75
  public function add_others_fields( $fields ) {
76
  return array_merge( $fields, array(
77
+ 'shortcode', 'really_simple_captcha', 'action_hook', 'toc', 'ratings'
78
  ) );
79
  }
80
 
includes/free/edit-profile.php CHANGED
@@ -18,7 +18,12 @@ class WPUF_Edit_Profile {
18
  * @author Tareq Hasan
19
  */
20
  function shortcode() {
21
-
 
 
 
 
 
22
  ob_start();
23
 
24
  if ( is_user_logged_in() ) {
18
  * @author Tareq Hasan
19
  */
20
  function shortcode() {
21
+ // wpuf()->plugin_scripts();
22
+ ?>
23
+ <style>
24
+ <?php //echo $custom_css = wpuf_get_option( 'custom_css', 'wpuf_general' ); ?>
25
+ </style>
26
+ <?php
27
  ob_start();
28
 
29
  if ( is_user_logged_in() ) {
includes/free/form-element.php CHANGED
@@ -27,7 +27,8 @@ class WPUF_form_element extends WPUF_Pro_Prompt {
27
 
28
  self::get_pro_prompt();
29
  ?>
30
- <button class="button" disabled data-type="captcha" title="<?php echo $title; ?>"><?php _e( 'reCaptcha', 'wpuf' ); ?></button>
 
31
  <button class="button" disabled data-type="rscaptcha" title="<?php echo $title; ?>"><?php _e( 'Really Simple Captcha', 'wpuf' ); ?></button>
32
  <button class="button" disabled data-type="action" title="<?php echo $title; ?>"><?php _e( 'Action Hook', 'wpuf' ); ?></button>
33
  <button class="button" disabled data-type="action" title="<?php echo $title; ?>"><?php _e( 'Term &amp; Conditions', 'wpuf' ); ?></button>
27
 
28
  self::get_pro_prompt();
29
  ?>
30
+ <button class="button" disabled data-type="shortcode" title="<?php echo $title; ?>"><?php _e( 'Shortcode', 'wpuf' ); ?></button>
31
+ <button class="button" data-name="recaptcha" data-type="captcha" title="<?php echo $title; ?>"><?php _e( 'reCaptcha', 'wpuf' ); ?></button>
32
  <button class="button" disabled data-type="rscaptcha" title="<?php echo $title; ?>"><?php _e( 'Really Simple Captcha', 'wpuf' ); ?></button>
33
  <button class="button" disabled data-type="action" title="<?php echo $title; ?>"><?php _e( 'Action Hook', 'wpuf' ); ?></button>
34
  <button class="button" disabled data-type="action" title="<?php echo $title; ?>"><?php _e( 'Term &amp; Conditions', 'wpuf' ); ?></button>
includes/free/prompt.php CHANGED
@@ -12,7 +12,7 @@ class WPUF_Pro_Prompt {
12
  }
13
 
14
  public static function get_pro_url() {
15
- return 'https://wedevs.com/wp-user-frontend-pro/?utm_source=freeplugin&utm_medium=prompt&utm_term=wpuf_free_plugin&utm_content=textlink&utm_campaign=pro_prompt';
16
  }
17
 
18
  public static function get_pro_prompt_text() {
12
  }
13
 
14
  public static function get_pro_url() {
15
+ return 'https://wedevs.com/wp-user-frontend-pro/pricing/?utm_source=freeplugin&utm_medium=prompt&utm_term=wpuf_free_plugin&utm_content=textlink&utm_campaign=pro_prompt';
16
  }
17
 
18
  public static function get_pro_prompt_text() {
languages/wpuf-es_ES.mo ADDED
Binary file
languages/wpuf-es_ES.po ADDED
@@ -0,0 +1,3429 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Copyright (C) 2017 Tareq Hasan
2
+ # This file is distributed under the GPL2.
3
+ msgid ""
4
+ msgstr ""
5
+ "Project-Id-Version: WP User Frontend 2.5.3\n"
6
+ "Report-Msgid-Bugs-To: https://wedevs.com/support/forum/plugin-support/wp-"
7
+ "user-frontend/\n"
8
+ "POT-Creation-Date: 2017-06-08 17:02:25+00:00\n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "PO-Revision-Date: 2017-06-22 13:29-0300\n"
13
+ "Last-Translator: \n"
14
+ "Language-Team: \n"
15
+ "Plural-Forms: nplurals=2; plural=n != 1;\n"
16
+ "X-Generator: Poedit 1.5.4\n"
17
+ "Language: es_ES\n"
18
+
19
+ #: admin/add-ons.php:2
20
+ msgid "WP User Frontend - Add-Ons"
21
+ msgstr "WP User Frontend - Extensiónes"
22
+
23
+ #: admin/form-builder/assets/js/components/builder-stage/template.php:3
24
+ msgid "Add fields by dragging the fields from the right sidebar to this area."
25
+ msgstr "Añada campos arrastrándolos desde la derecha hasta esta área."
26
+
27
+ #: admin/form-builder/assets/js/components/builder-stage/template.php:30
28
+ msgid "is available in Pro Version"
29
+ msgstr "está disponible en la versión Pro"
30
+
31
+ #: admin/form-builder/assets/js/components/builder-stage/template.php:54
32
+ msgid "Hidden Fields"
33
+ msgstr "Campos ocultos"
34
+
35
+ #: admin/form-builder/assets/js/components/builder-stage/template.php:61
36
+ msgid "key"
37
+ msgstr "nombre"
38
+
39
+ #: admin/form-builder/assets/js/components/builder-stage/template.php:61
40
+ msgid "value"
41
+ msgstr "valor"
42
+
43
+ #: admin/form-builder/assets/js/components/field-option-data/template.php:5
44
+ #: admin/template.php:244
45
+ msgid "Show values"
46
+ msgstr "Mostrar valores"
47
+
48
+ #: admin/form-builder/assets/js/components/field-option-data/template.php:16
49
+ #: admin/template.php:247 admin/template.php:305
50
+ msgid "Label"
51
+ msgstr "Etiqueta"
52
+
53
+ #: admin/form-builder/assets/js/components/field-option-data/template.php:20
54
+ #: admin/template.php:247 admin/template.php:305
55
+ msgid "Value"
56
+ msgstr "Valor"
57
+
58
+ #: admin/form-builder/assets/js/components/field-option-data/template.php:64
59
+ msgid "Clear Selection"
60
+ msgstr "Limpiar selección"
61
+
62
+ #: admin/form-builder/assets/js/components/field-option-pro-feature-alert/template.php:4
63
+ msgid "Available in Pro Version"
64
+ msgstr "Disponible en la versión Pro"
65
+
66
+ #: admin/form-builder/assets/js/components/field-select/template.php:7
67
+ msgid "Select an option"
68
+ msgstr "Seleccionar una opción"
69
+
70
+ #: admin/form-builder/assets/js/components/form-featured_image/template.php:5
71
+ #: admin/form-builder/assets/js/components/form-image_upload/template.php:5
72
+ #: class/render-form.php:1490
73
+ msgid "Select Image"
74
+ msgstr "Seleccionar imagen"
75
+
76
+ #: admin/form-builder/assets/js/components/form-post_content/template.php:4
77
+ #: class/render-form.php:911
78
+ msgid "Insert Photo"
79
+ msgstr "Insertar imagen"
80
+
81
+ #: admin/form-builder/assets/js/components/form-taxonomy/template.php:12
82
+ msgid "— Select —"
83
+ msgstr "— Seleccione —"
84
+
85
+ #: admin/form-builder/assets/js/components/merge-tags/template.php:8
86
+ msgid "Form Fields"
87
+ msgstr "Campos del Formulario"
88
+
89
+ #: admin/form-builder/assets/js/components/merge-tags/template.php:16
90
+ msgid "No fields available"
91
+ msgstr "Sin campos disponibles"
92
+
93
+ #: admin/form-builder/class-wpuf-admin-form-builder-ajax.php:29
94
+ msgid "Unauthorized operation"
95
+ msgstr "Operación no permitida"
96
+
97
+ #: admin/form-builder/class-wpuf-admin-form-builder-ajax.php:34
98
+ msgid "Invalid form id"
99
+ msgstr "Id de formulario inválido"
100
+
101
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:320
102
+ msgid "Custom Fields"
103
+ msgstr "Campos personalizados"
104
+
105
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:341
106
+ msgid "Others"
107
+ msgstr "Otros"
108
+
109
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:357
110
+ msgid "Advanced Options"
111
+ msgstr "Opciones avanzadas"
112
+
113
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:358
114
+ msgid "Are you sure you want to delete this field?"
115
+ msgstr "¿Está seguro de querer eliminar este campo?"
116
+
117
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:359
118
+ msgid "Yes, delete it"
119
+ msgstr "Si, eliminarlo"
120
+
121
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:360
122
+ msgid "No, cancel it"
123
+ msgstr "No, cancelarlo"
124
+
125
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:361
126
+ msgid "OK"
127
+ msgstr "Ok"
128
+
129
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:362
130
+ #: class/payment.php:168 class/subscription.php:829
131
+ #: templates/dashboard/subscription.php:59
132
+ msgid "Cancel"
133
+ msgstr "Cancelar"
134
+
135
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:363
136
+ #: includes/free/admin/shortcode-builder.php:69
137
+ msgid "Close"
138
+ msgstr "Cerrar"
139
+
140
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:364
141
+ msgid "This field must contain at least one choice"
142
+ msgstr "Este campo debe contener al menos una opción"
143
+
144
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:365
145
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:376
146
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:416
147
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:472
148
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:527
149
+ msgid "Option"
150
+ msgstr "Opción"
151
+
152
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:366
153
+ msgid "Column"
154
+ msgstr "Columna"
155
+
156
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:367
157
+ msgid "This field must contain at least one column"
158
+ msgstr "Este campo debe contener al menos una columna"
159
+
160
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:368
161
+ msgid "is available in Pro version"
162
+ msgstr "está disponible en la versión Pro"
163
+
164
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:369
165
+ msgid "Please upgrade to the Pro version to unlock all these awesome features"
166
+ msgstr ""
167
+ "Por favor, actualice a la versión Pro para habilitar todas las funciones"
168
+
169
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:370
170
+ msgid "Get the Pro version"
171
+ msgstr "Obtener la versión Pro"
172
+
173
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:371 admin/form.php:743
174
+ msgid "Select"
175
+ msgstr "Seleccionar"
176
+
177
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:372
178
+ msgid "Saved form data"
179
+ msgstr "Formulario guardado"
180
+
181
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:373
182
+ msgid "You have unsaved changes."
183
+ msgstr "Tiene cambios sin guardar."
184
+
185
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:374
186
+ #: admin/form-builder/views/form-builder.php:45
187
+ msgid "Click to copy shortcode"
188
+ msgstr "Haga clic aquí para copiar el shortcode"
189
+
190
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:44
191
+ #: admin/template.php:76
192
+ msgid "Field Label"
193
+ msgstr "Etiqueta del campo"
194
+
195
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:48
196
+ #: admin/template.php:77
197
+ msgid "Enter a title of this field"
198
+ msgstr "Ingrese un título para este campo"
199
+
200
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:53
201
+ #: admin/template.php:94
202
+ msgid "Help text"
203
+ msgstr "Texto de ayuda"
204
+
205
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:57
206
+ #: admin/template.php:95
207
+ msgid "Give the user some information about this field"
208
+ msgstr "Provea al usuario con información sobre este campo"
209
+
210
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:62
211
+ #: admin/template.php:67
212
+ msgid "Required"
213
+ msgstr "Requerido"
214
+
215
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:65
216
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:443
217
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:498
218
+ #: admin/post-forms-list-table.php:340 admin/settings-options.php:94
219
+ #: admin/settings-options.php:174 admin/settings-options.php:185
220
+ #: admin/settings-options.php:274 admin/subscription.php:145
221
+ #: admin/template.php:70 includes/free/form-element.php:475
222
+ msgid "Yes"
223
+ msgstr "Si"
224
+
225
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:66
226
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:444
227
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:499
228
+ #: admin/post-forms-list-table.php:341 admin/settings-options.php:95
229
+ #: admin/settings-options.php:175 admin/settings-options.php:186
230
+ #: admin/settings-options.php:275 admin/subscription.php:147
231
+ #: admin/template.php:71 includes/free/form-element.php:476
232
+ msgid "No"
233
+ msgstr "No"
234
+
235
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:72
236
+ msgid ""
237
+ "Check this option to mark the field required. A form will not submit unless "
238
+ "all required fields are provided."
239
+ msgstr ""
240
+ "Marque esta opción para definir como requerido. El formulario no será "
241
+ "enviado a menos que todos los campos requeridos sean completados."
242
+
243
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:77
244
+ #: admin/template.php:99
245
+ msgid "CSS Class Name"
246
+ msgstr "Nombre de la clase CSS"
247
+
248
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:81
249
+ msgid "Provide a container class name for this field."
250
+ msgstr "Proveer una clase para el contenedor de este campo."
251
+
252
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:88
253
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:616
254
+ #: admin/template.php:82 admin/template.php:575
255
+ msgid "Meta Key"
256
+ msgstr "Meta Clave"
257
+
258
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:92
259
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:620
260
+ #: admin/template.php:83 admin/template.php:576
261
+ msgid "Name of the meta key this field will save to"
262
+ msgstr "Nombre del meta campo"
263
+
264
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:110
265
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:180
266
+ #: admin/template.php:126 admin/template.php:186
267
+ msgid "Placeholder text"
268
+ msgstr "Texto de ejemplo"
269
+
270
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:114
271
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:184
272
+ #: admin/template.php:127
273
+ msgid "Text for HTML5 placeholder attribute"
274
+ msgstr "Texto para el atributo HTML5 placeholder"
275
+
276
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:119
277
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:192
278
+ #: admin/template.php:131 admin/template.php:191
279
+ msgid "Default value"
280
+ msgstr "Valor por defecto"
281
+
282
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:123
283
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:196
284
+ #: admin/template.php:132
285
+ msgid "The default value this field will have"
286
+ msgstr "El valor por defecto para este campo"
287
+
288
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:128
289
+ #: admin/template.php:136
290
+ msgid "Size"
291
+ msgstr "Tamaño"
292
+
293
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:133
294
+ #: admin/template.php:137
295
+ msgid "Size of this input field"
296
+ msgstr "Tamaño del campo"
297
+
298
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:140
299
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:215
300
+ #: admin/template.php:141 admin/template.php:206
301
+ msgid "Word Restriction"
302
+ msgstr "Límite de palabras"
303
+
304
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:144
305
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:219
306
+ #: admin/template.php:145 admin/template.php:210
307
+ msgid "Numebr of words the author to be restricted in"
308
+ msgstr "Número de palabras que el usuario podrá ingresar"
309
+
310
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:162
311
+ #: admin/template.php:176
312
+ msgid "Rows"
313
+ msgstr "Filas"
314
+
315
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:166
316
+ msgid "Number of rows in textarea"
317
+ msgstr "Número de filas en el campo de texto"
318
+
319
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:171
320
+ #: admin/template.php:181
321
+ msgid "Columns"
322
+ msgstr "Columnas"
323
+
324
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:175
325
+ msgid "Number of columns in textarea"
326
+ msgstr "Número de columnas en el área de texto"
327
+
328
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:201
329
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:290
330
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:297
331
+ #: admin/template.php:196
332
+ msgid "Textarea"
333
+ msgstr "área de texto"
334
+
335
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:204
336
+ #: admin/template.php:199
337
+ msgid "Normal"
338
+ msgstr "Normal"
339
+
340
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:205
341
+ #: admin/template.php:200
342
+ msgid "Rich textarea"
343
+ msgstr "Texto enriquecido"
344
+
345
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:206
346
+ #: admin/template.php:201
347
+ msgid "Teeny Rich textarea"
348
+ msgstr "Texto enriquecido Teeny"
349
+
350
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:236
351
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:377
352
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:417
353
+ msgid "- select -"
354
+ msgstr "- seleccione -"
355
+
356
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:254
357
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:261
358
+ msgid "Text"
359
+ msgstr "Texto"
360
+
361
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:327
362
+ #: admin/template.php:398 admin/template.php:422 admin/template.php:454
363
+ #: admin/template.php:486 templates/dashboard/posts.php:84
364
+ #: templates/dashboard.php:37
365
+ msgid "Options"
366
+ msgstr "Opciones"
367
+
368
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:332
369
+ msgid "Add options for the form field"
370
+ msgstr "Añadir opciones para el campo del formulario"
371
+
372
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:351
373
+ #: admin/template.php:449 admin/template.php:481
374
+ msgid "Select Text"
375
+ msgstr "Seleccionar Texto"
376
+
377
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:355
378
+ #: admin/template.php:438 admin/template.php:470
379
+ msgid ""
380
+ "First element of the select dropdown. Leave this empty if you don't want to "
381
+ "show this field"
382
+ msgstr ""
383
+ "Primer elemento del desplegable. Deje vacío si desea ocultar este campo"
384
+
385
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:363
386
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:370
387
+ #: admin/template-post.php:156
388
+ msgid "Dropdown"
389
+ msgstr "Desplegable"
390
+
391
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:403
392
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:410
393
+ #: admin/form.php:744 admin/template-post.php:157
394
+ msgid "Multi Select"
395
+ msgstr "Selección múltiple"
396
+
397
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:440
398
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:495
399
+ msgid "Show in inline list"
400
+ msgstr "Mostrar en lista horizontal"
401
+
402
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:450
403
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:505
404
+ msgid "Show this option in an inline list"
405
+ msgstr "Mostrar esta opción en una lista horizontal"
406
+
407
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:458
408
+ msgid "Radio"
409
+ msgstr "Radio"
410
+
411
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:465
412
+ msgid "Radio Field"
413
+ msgstr "Campo de Radio"
414
+
415
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:513
416
+ #: admin/form.php:745 admin/template-post.php:158
417
+ msgid "Checkbox"
418
+ msgstr "Checkbox"
419
+
420
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:520
421
+ msgid "Checkbox Field"
422
+ msgstr "Campo Checkbox"
423
+
424
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:548
425
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:555
426
+ msgid "URL"
427
+ msgstr "URL"
428
+
429
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:583
430
+ msgid "Email Address"
431
+ msgstr "Dirección de correo"
432
+
433
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:590
434
+ #: admin/html/form-settings-post.php:17 class/transactions-list-table.php:48
435
+ #: includes/free/edit-user.php:152
436
+ msgid "Email"
437
+ msgstr "Correo"
438
+
439
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:625
440
+ #: admin/template.php:582
441
+ msgid "Meta Value"
442
+ msgstr "Meta valor"
443
+
444
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:629
445
+ #: admin/template.php:583
446
+ msgid "Enter the meta value"
447
+ msgstr "Ingrese el meta valor"
448
+
449
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:635
450
+ msgid "Hidden Field"
451
+ msgstr "Campo Oculto"
452
+
453
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:665
454
+ #: admin/form.php:662 admin/template-post.php:105 admin/template.php:646
455
+ msgid "Max. file size"
456
+ msgstr "Tamaño máximo del archivo"
457
+
458
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:669
459
+ #: admin/form.php:666 admin/template-post.php:93 admin/template.php:634
460
+ msgid "Enter maximum upload size limit in KB"
461
+ msgstr "Ingrese el límite en KB que pueden ser subidos"
462
+
463
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:674
464
+ #: admin/template.php:651
465
+ msgid "Max. files"
466
+ msgstr "Máx. de Archivos"
467
+
468
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:678
469
+ #: admin/template.php:635
470
+ msgid "Number of images can be uploaded"
471
+ msgstr "Número de imágenes que pueden ser subidas"
472
+
473
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:684
474
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:691
475
+ #: includes/free/form-element.php:8
476
+ msgid "Image Upload"
477
+ msgstr "Subir imagen"
478
+
479
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:716
480
+ #: admin/template.php:544 admin/template.php:604 class/upload.php:164
481
+ #: templates/dashboard/posts.php:74 templates/dashboard.php:27
482
+ #: wpuf-functions.php:703
483
+ msgid "Title"
484
+ msgstr "Título"
485
+
486
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:720
487
+ msgid "Title of the section"
488
+ msgstr "Título de la sección"
489
+
490
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:725
491
+ #: admin/subscription.php:206 admin/template.php:609 class/upload.php:166
492
+ #: wpuf-functions.php:709
493
+ msgid "Description"
494
+ msgstr "Descripción"
495
+
496
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:729
497
+ msgid "Some details text about the section"
498
+ msgstr "Algunos detalles acerca de esta sección"
499
+
500
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:735
501
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:741
502
+ msgid "Section Break"
503
+ msgstr "Separación de Sección"
504
+
505
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:742
506
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:778
507
+ msgid "Some description about this section"
508
+ msgstr "Alguna descripción sobre esta sección"
509
+
510
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:761
511
+ #: admin/template.php:549
512
+ msgid "HTML Codes"
513
+ msgstr "Código HTML"
514
+
515
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:765
516
+ msgid "Paste your HTML codes, WordPress shortcodes will also work here"
517
+ msgstr ""
518
+ "Pegue su código HTML, los shortcodes de WordPress también funcionan aquí"
519
+
520
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:771
521
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:777
522
+ msgid "Custom HTML"
523
+ msgstr "HTML personalizado"
524
+
525
+ #: admin/form-builder/views/form-builder.php:5
526
+ msgid "Form Editor"
527
+ msgstr "Editor de Formularios"
528
+
529
+ #: admin/form-builder/views/form-builder.php:9 admin/settings.php:72
530
+ msgid "Settings"
531
+ msgstr "Configuraciones"
532
+
533
+ #: admin/form-builder/views/form-builder.php:16
534
+ msgid "Save Form"
535
+ msgstr "Guardar formulario"
536
+
537
+ #: admin/form-builder/views/form-builder.php:20
538
+ msgid "Saving Form Data"
539
+ msgstr "Guardando el formulario"
540
+
541
+ #: admin/form-builder/views/form-builder.php:42
542
+ msgid "Click to copy %s shortcode"
543
+ msgstr "Clic para copiar el shortcode %s"
544
+
545
+ #: admin/form-builder/views/form-builder.php:72
546
+ msgid "Add Fields"
547
+ msgstr "Añadir campos"
548
+
549
+ #: admin/form-builder/views/form-builder.php:78
550
+ msgid "Field Options"
551
+ msgstr "Opciones del campo"
552
+
553
+ #: admin/form-handler.php:54 admin/form-handler.php:181
554
+ msgid "You do not have sufficient permissions to do this action"
555
+ msgstr "No tienes suficientes permisos para realizar esta acción"
556
+
557
+ #: admin/form-handler.php:317 admin/form-handler.php:337
558
+ msgid "%d form moved to the trash."
559
+ msgid_plural "%d forms moved to the trash."
560
+ msgstr[0] "%d formulario movido a la papelera."
561
+ msgstr[1] "%d formularios movidos a la papelera."
562
+
563
+ #: admin/form-handler.php:321 admin/form-handler.php:341
564
+ msgid "%d form restored from the trash."
565
+ msgid_plural "%d forms restored from the trash."
566
+ msgstr[0] "%d formulario restaurado desde la papelera."
567
+ msgstr[1] "%d formularios restaurados desde la papelera."
568
+
569
+ #: admin/form-handler.php:325 admin/form-handler.php:345
570
+ msgid "%d form permanently deleted."
571
+ msgid_plural "%d forms permanently deleted."
572
+ msgstr[0] "%d formulario eliminado permanentemente."
573
+ msgstr[1] "%d formularios eliminados permanentemente."
574
+
575
+ #: admin/form-handler.php:330 admin/form-handler.php:350
576
+ msgid "Form duplicated successfully. <a href=\"%s\">View form.</a>"
577
+ msgstr "Formulario duplicado correctamente. <a href=\"%s\">Ver formulario.</a>"
578
+
579
+ #: admin/form-template.php:63
580
+ msgid ""
581
+ "List of available templates can be found <a href=\"%s\" target=\"_blank"
582
+ "\">here</a>."
583
+ msgstr ""
584
+ "La lista de plantillas disponibles puede ser encontrada <a href=\"%s\" "
585
+ "target=\"_blank\">aquí</a>."
586
+
587
+ #: admin/form-template.php:64
588
+ msgid ""
589
+ "Want a new integration? <a href=\"%s\" target=\"_blank\">Let us know</a>."
590
+ msgstr ""
591
+ "íDesea una nueva integración? <a href=\"%s\" target=\"_blank\">áganos saber</"
592
+ "a>."
593
+
594
+ #: admin/form-template.php:169
595
+ msgid "Form Template"
596
+ msgstr "Plantilla de Formulario"
597
+
598
+ #: admin/form-template.php:172
599
+ msgid "&mdash; No Template &mdash;"
600
+ msgstr "&mdash; Sin plantillas &mdash;"
601
+
602
+ #: admin/form-template.php:181
603
+ msgid ""
604
+ "If selected a form template, it will try to execute that integration options "
605
+ "when new post created and updated."
606
+ msgstr ""
607
+ "Si se selecciona una plantilla de formulario, esta intentará ejecutar las "
608
+ "opciones cuando una nueva Entrada sea creada y actualizada."
609
+
610
+ #: admin/form.php:49 admin/form.php:69 admin/form.php:71 admin/form.php:107
611
+ msgid "Forms"
612
+ msgstr "Formularios"
613
+
614
+ #: admin/form.php:70 admin/form.php:108
615
+ msgid "Form"
616
+ msgstr "Formulario"
617
+
618
+ #: admin/form.php:72 admin/form.php:110 admin/post-forms-list-table-view.php:8
619
+ msgid "Add Form"
620
+ msgstr "Añadir Formulario"
621
+
622
+ #: admin/form.php:73 admin/form.php:111
623
+ msgid "Add New Form"
624
+ msgstr "Añdir nuevo Formulario"
625
+
626
+ #: admin/form.php:74 admin/form.php:112 admin/installer.php:75
627
+ #: admin/post-forms-list-table.php:387 admin/subscription.php:227
628
+ #: class/subscription.php:360 includes/free/admin/shortcode-button.php:90
629
+ #: includes/free/edit-user.php:99 templates/dashboard/posts.php:150
630
+ #: templates/dashboard.php:104
631
+ msgid "Edit"
632
+ msgstr "Editar"
633
+
634
+ #: admin/form.php:75 admin/form.php:113
635
+ msgid "Edit Form"
636
+ msgstr "Editar Formulario"
637
+
638
+ #: admin/form.php:76 admin/form.php:114
639
+ msgid "New Form"
640
+ msgstr "Nuevo Formulario"
641
+
642
+ #: admin/form.php:77 admin/form.php:78 admin/form.php:115 admin/form.php:116
643
+ msgid "View Form"
644
+ msgstr "Ver Formulario"
645
+
646
+ #: admin/form.php:79 admin/form.php:117
647
+ msgid "Search Form"
648
+ msgstr "Formularios de búsqueda"
649
+
650
+ #: admin/form.php:80 admin/form.php:118
651
+ msgid "No Form Found"
652
+ msgstr "No se encontraron Formularios"
653
+
654
+ #: admin/form.php:81 admin/form.php:119
655
+ msgid "No Form Found in Trash"
656
+ msgstr "No se encontraron Formularios en la Papelera"
657
+
658
+ #: admin/form.php:82 admin/form.php:120
659
+ msgid "Parent Form"
660
+ msgstr "Formulario Padre"
661
+
662
+ #: admin/form.php:87
663
+ msgid "Registraton Forms"
664
+ msgstr "Formularios de Registro"
665
+
666
+ #: admin/form.php:109 includes/free/loader.php:65
667
+ msgid "Registration Forms"
668
+ msgstr "Formularios de Registro"
669
+
670
+ #: admin/form.php:194 includes/free/form-element.php:211
671
+ #: includes/free/form-element.php:248
672
+ msgid "Notification"
673
+ msgstr "Notificación"
674
+
675
+ #: admin/form.php:227
676
+ msgid "Post Settings"
677
+ msgstr "Configuraciones de la Entrada"
678
+
679
+ #: admin/form.php:228
680
+ msgid "Edit Settings"
681
+ msgstr "Editar configuraciones"
682
+
683
+ #: admin/form.php:229 includes/free/form-element.php:55
684
+ msgid "Post Expiration"
685
+ msgstr "Expiración de la Entrada"
686
+
687
+ #: admin/form.php:276 admin/form.php:280
688
+ msgid "- Select -"
689
+ msgstr "- Seleccione -"
690
+
691
+ #: admin/form.php:314
692
+ msgid "Post Fields"
693
+ msgstr "Campos de la Entrada"
694
+
695
+ #: admin/form.php:320
696
+ msgid "Taxonomies"
697
+ msgstr "Taxonomías"
698
+
699
+ #: admin/form.php:422 admin/html/form-settings-post.php:28
700
+ #: class/render-form.php:619
701
+ msgid "Save Draft"
702
+ msgstr "Guardar borrador"
703
+
704
+ #: admin/form.php:532 admin/form.php:539
705
+ msgid "Post Title"
706
+ msgstr "Título de la Entrada"
707
+
708
+ #: admin/form.php:569 admin/template-post.php:41
709
+ msgid "Enable Image Insertion"
710
+ msgstr "Permitir insertar imágenes"
711
+
712
+ #: admin/form.php:571 admin/template-post.php:47
713
+ msgid "Enable image upload in post area"
714
+ msgstr "Permitir subir imágenes en el área de la Entrada"
715
+
716
+ #: admin/form.php:580 admin/form.php:587
717
+ msgid "Post Body"
718
+ msgstr "Cuerpo de la Entrada"
719
+
720
+ #: admin/form.php:624 admin/form.php:631
721
+ msgid "Excerpt"
722
+ msgstr "Resumen"
723
+
724
+ #: admin/form.php:672 admin/form.php:679 templates/dashboard/posts.php:71
725
+ #: templates/dashboard.php:24
726
+ msgid "Featured Image"
727
+ msgstr "Imagen destacada"
728
+
729
+ #: admin/form.php:706 admin/form.php:712
730
+ msgid "Tags"
731
+ msgstr "Etiquetas"
732
+
733
+ #: admin/form.php:740 admin/template-post.php:154
734
+ msgid "Type"
735
+ msgstr "Tipo"
736
+
737
+ #: admin/form.php:746 admin/template-post.php:159
738
+ msgid "Text Input"
739
+ msgstr "Campo de texto"
740
+
741
+ #: admin/form.php:747 admin/template-post.php:160
742
+ msgid "Ajax"
743
+ msgstr "Ajax"
744
+
745
+ #: admin/form.php:756 admin/template-post.php:165
746
+ msgid "Order By"
747
+ msgstr "Ordenar por"
748
+
749
+ #: admin/form.php:759 admin/html/form-settings-post.php:16
750
+ #: admin/subscription.php:205 admin/template-post.php:167
751
+ #: includes/free/edit-profile.php:92
752
+ msgid "Name"
753
+ msgstr "Nombre"
754
+
755
+ #: admin/form.php:760 admin/template-post.php:168
756
+ msgid "Term ID"
757
+ msgstr "Id del término"
758
+
759
+ #: admin/form.php:761 admin/template-post.php:169
760
+ msgid "Slug"
761
+ msgstr "Slug"
762
+
763
+ #: admin/form.php:762 admin/template-post.php:170
764
+ msgid "Count"
765
+ msgstr "Número"
766
+
767
+ #: admin/form.php:763 admin/template-post.php:171
768
+ msgid "Term Group"
769
+ msgstr "Grupo de Términos"
770
+
771
+ #: admin/form.php:772 admin/template-post.php:176
772
+ msgid "Order"
773
+ msgstr "Orden"
774
+
775
+ #: admin/form.php:776 admin/template-post.php:178
776
+ msgid "ASC"
777
+ msgstr "Ascendente"
778
+
779
+ #: admin/form.php:777 admin/template-post.php:179
780
+ msgid "DESC"
781
+ msgstr "Descendente"
782
+
783
+ #: admin/form.php:786 admin/template-post.php:184
784
+ msgid "Selection Type"
785
+ msgstr "Tipo de selección"
786
+
787
+ #: admin/form.php:789 admin/template-post.php:186
788
+ msgid "Exclude"
789
+ msgstr "Excluir"
790
+
791
+ #: admin/form.php:790 admin/template-post.php:187
792
+ msgid "Include"
793
+ msgstr "Incluir"
794
+
795
+ #: admin/form.php:791 admin/template-post.php:188
796
+ msgid "Child of"
797
+ msgstr "Hijo de"
798
+
799
+ #: admin/form.php:800
800
+ msgid "Selection Terms"
801
+ msgstr "Selección de Términos"
802
+
803
+ #: admin/form.php:804 admin/template-post.php:194
804
+ msgid ""
805
+ "Enter the term IDs as comma separated (without space) to exclude/include in "
806
+ "the form."
807
+ msgstr ""
808
+ "Ingrese el ID del término separado por comas (sin espacio) para excuír/"
809
+ "incluír en el formulario."
810
+
811
+ #: admin/form.php:812 admin/template-post.php:204
812
+ msgid "This taxonomy is a WooCommerce attribute"
813
+ msgstr "Esta taxonomía es un atributo de WooCommerce"
814
+
815
+ #: admin/form.php:823 admin/template-post.php:216
816
+ msgid "Visible on product page"
817
+ msgstr "Visible en la página de producto"
818
+
819
+ #: admin/form.php:871
820
+ msgid "Post Forms must have either Post Title, Post Body or Excerpt field"
821
+ msgstr ""
822
+ "Los Formularios de Entrada deben tener un campo Título, Contenido o Resumen"
823
+
824
+ #: admin/html/form-settings-post-edit.php:8
825
+ #: admin/html/form-settings-post.php:22
826
+ msgid "Post updated successfully"
827
+ msgstr "Entrada actualizada correctamente"
828
+
829
+ #: admin/html/form-settings-post-edit.php:11
830
+ msgid "Update"
831
+ msgstr "Actualizar"
832
+
833
+ #: admin/html/form-settings-post-edit.php:17
834
+ msgid "Set Post Status to"
835
+ msgstr "Definir el estado de la Entrada a"
836
+
837
+ #: admin/html/form-settings-post-edit.php:27
838
+ msgid "No Change"
839
+ msgstr "Sin cambio"
840
+
841
+ #: admin/html/form-settings-post-edit.php:34
842
+ #: admin/html/form-settings-post.php:170 includes/free/form-element.php:374
843
+ msgid "Redirect To"
844
+ msgstr "Redirigir a"
845
+
846
+ #: admin/html/form-settings-post-edit.php:39
847
+ #: admin/html/form-settings-post.php:175
848
+ msgid "Newly created post"
849
+ msgstr "Entradas creadas recientemente"
850
+
851
+ #: admin/html/form-settings-post-edit.php:40
852
+ #: admin/html/form-settings-post.php:176 includes/free/form-element.php:379
853
+ msgid "Same Page"
854
+ msgstr "La misma página"
855
+
856
+ #: admin/html/form-settings-post-edit.php:41
857
+ #: admin/html/form-settings-post.php:177 includes/free/form-element.php:380
858
+ msgid "To a page"
859
+ msgstr "A la página"
860
+
861
+ #: admin/html/form-settings-post-edit.php:42
862
+ #: admin/html/form-settings-post.php:178 includes/free/form-element.php:381
863
+ msgid "To a custom URL"
864
+ msgstr "A una URL personalizada"
865
+
866
+ #: admin/html/form-settings-post-edit.php:51
867
+ #: admin/html/form-settings-post.php:187 includes/free/form-element.php:390
868
+ msgid "After successfull submit, where the page will redirect to"
869
+ msgstr "Después de enviar, la página redirigirá a"
870
+
871
+ #: admin/html/form-settings-post-edit.php:57
872
+ msgid "Post Update Message"
873
+ msgstr "Mensaje de actualización de la Entrada"
874
+
875
+ #: admin/html/form-settings-post-edit.php:64
876
+ #: admin/html/form-settings-post.php:200 includes/free/form-element.php:410
877
+ msgid "Page"
878
+ msgstr "Página"
879
+
880
+ #: admin/html/form-settings-post-edit.php:79
881
+ #: admin/html/form-settings-post.php:215 includes/free/form-element.php:425
882
+ msgid "Custom URL"
883
+ msgstr "URL personalizada"
884
+
885
+ #: admin/html/form-settings-post-edit.php:86
886
+ msgid "Subscription Title"
887
+ msgstr "Título de la suscripción"
888
+
889
+ #: admin/html/form-settings-post-edit.php:95
890
+ msgid "Update Post Button text"
891
+ msgstr "Texto del botón Actualizar Entrada"
892
+
893
+ #: admin/html/form-settings-post.php:7
894
+ msgid "This page is restricted. Please Log in / Register to view this page."
895
+ msgstr ""
896
+ "Esta página está restringida. Por favor ingrese/regístrese para ver esta "
897
+ "página."
898
+
899
+ #: admin/html/form-settings-post.php:21
900
+ msgid "Post saved"
901
+ msgstr "Entrada guardada"
902
+
903
+ #: admin/html/form-settings-post.php:27
904
+ msgid "Submit"
905
+ msgstr "Enviar"
906
+
907
+ #: admin/html/form-settings-post.php:29
908
+ msgid "Preview"
909
+ msgstr "Vista previa"
910
+
911
+ #: admin/html/form-settings-post.php:37 admin/html/form-settings-post.php:41
912
+ msgid "Disable Subscription"
913
+ msgstr "Deshabilitar suscripción"
914
+
915
+ #: admin/html/form-settings-post.php:44
916
+ msgid ""
917
+ "If checked, any subscription and pay-per-post will be disabled on the form "
918
+ "and will take no effect."
919
+ msgstr ""
920
+ "Si está activa, cualquier suscripción y pago por entrada será deshabilitada "
921
+ "en el formulario y no tendrá ningún efecto."
922
+
923
+ #: admin/html/form-settings-post.php:49 admin/post-forms-list-table.php:292
924
+ msgid "Post Type"
925
+ msgstr "Tipo de la Entrada"
926
+
927
+ #: admin/html/form-settings-post.php:69 admin/post-forms-list-table.php:293
928
+ msgid "Post Status"
929
+ msgstr "Estado de la Entrada"
930
+
931
+ #: admin/html/form-settings-post.php:83
932
+ msgid "Post Format"
933
+ msgstr "Formato de la Entrada"
934
+
935
+ #: admin/html/form-settings-post.php:86 admin/html/form-settings-post.php:109
936
+ msgid "- None -"
937
+ msgstr "- Ninguno -"
938
+
939
+ #: admin/html/form-settings-post.php:101
940
+ msgid "Default Post Category"
941
+ msgstr "Categoría por defecto de las Entradas"
942
+
943
+ #: admin/html/form-settings-post.php:113
944
+ msgid ""
945
+ "If users are not allowed to choose any category, this category will be used "
946
+ "instead (if post type supports)"
947
+ msgstr ""
948
+ "Si a los usuarios no se les permite elegir ninguna categoría, esta categoría "
949
+ "sera usada (si el tipo de Entrada lo soporta)"
950
+
951
+ #: admin/html/form-settings-post.php:118 admin/post-forms-list-table.php:294
952
+ msgid "Guest Post"
953
+ msgstr "Entrada como invitado"
954
+
955
+ #: admin/html/form-settings-post.php:123
956
+ msgid "Enable Guest Post"
957
+ msgstr "Habilitar las Entradas para invitados"
958
+
959
+ #: admin/html/form-settings-post.php:125
960
+ msgid "Unregistered users will be able to submit posts"
961
+ msgstr "Los usuarios no registrados podrán crear entradas"
962
+
963
+ #: admin/html/form-settings-post.php:130
964
+ msgid "User Details"
965
+ msgstr "Detalles del usuario"
966
+
967
+ #: admin/html/form-settings-post.php:135
968
+ msgid "Require Name and Email address"
969
+ msgstr "Requerir nombre y dirección de correo"
970
+
971
+ #: admin/html/form-settings-post.php:137
972
+ msgid ""
973
+ "If requires, users will be automatically registered to the site using the "
974
+ "name and email address"
975
+ msgstr ""
976
+ "Si es requerido, los usuarios serán registrados automáticamente en el sitio "
977
+ "usando el nombre y correo"
978
+
979
+ #: admin/html/form-settings-post.php:142
980
+ msgid "Name Label"
981
+ msgstr "Etiqueta de nombre"
982
+
983
+ #: admin/html/form-settings-post.php:147
984
+ msgid "Label text for name field"
985
+ msgstr "Etiqueta para el campo nombre"
986
+
987
+ #: admin/html/form-settings-post.php:152
988
+ msgid "E-Mail Label"
989
+ msgstr "Etiqueta de correo"
990
+
991
+ #: admin/html/form-settings-post.php:157
992
+ msgid "Label text for email field"
993
+ msgstr "Etiqueta para el campo correo."
994
+
995
+ #: admin/html/form-settings-post.php:162 admin/settings-options.php:231
996
+ msgid "Unauthorized Message"
997
+ msgstr "Mensaje no autorizado"
998
+
999
+ #: admin/html/form-settings-post.php:165 admin/settings-options.php:232
1000
+ msgid "Not logged in users will see this message"
1001
+ msgstr "Los usuarios invitados no verán este mensaje"
1002
+
1003
+ #: admin/html/form-settings-post.php:193
1004
+ msgid "Message to show"
1005
+ msgstr "Mensaje a mostrar"
1006
+
1007
+ #: admin/html/form-settings-post.php:222
1008
+ msgid "Comment Status"
1009
+ msgstr "Estado del comentario"
1010
+
1011
+ #: admin/html/form-settings-post.php:225
1012
+ msgid "Open"
1013
+ msgstr "Abierto"
1014
+
1015
+ #: admin/html/form-settings-post.php:226
1016
+ msgid "Closed"
1017
+ msgstr "Cerrado"
1018
+
1019
+ #: admin/html/form-settings-post.php:232
1020
+ msgid "Submit Post Button text"
1021
+ msgstr "Texto del botón enviar"
1022
+
1023
+ #: admin/html/form-settings-post.php:239
1024
+ msgid "Post Draft"
1025
+ msgstr "Publicar borrador"
1026
+
1027
+ #: admin/html/form-settings-post.php:244
1028
+ msgid "Enable Saving as draft"
1029
+ msgstr "Permitir guardar como borrador"
1030
+
1031
+ #: admin/html/form-settings-post.php:246
1032
+ msgid "It will show a button to save as draft"
1033
+ msgstr "Se mostrará un botón para guardar como borrador"
1034
+
1035
+ #: admin/html/modal.php:4
1036
+ msgid "Modal window. Press escape to close."
1037
+ msgstr "Presione escape para cerrar la ventana."
1038
+
1039
+ #: admin/html/modal.php:5
1040
+ msgid "Close modal window"
1041
+ msgstr "Cerrar la ventana"
1042
+
1043
+ #: admin/html/modal.php:9
1044
+ msgid "Select a Template"
1045
+ msgstr "Seleccione una pantilla"
1046
+
1047
+ #: admin/html/modal.php:12
1048
+ msgid ""
1049
+ "Select from a pre-defined template or from a <a href=\"%s\">blank form</a>"
1050
+ msgstr ""
1051
+ "Seleccione de una plantilla pre definida o desde un <a href=\"%s"
1052
+ "\">formulario en blanco</a>"
1053
+
1054
+ #: admin/html/modal.php:25
1055
+ msgid "Blank Form"
1056
+ msgstr "Formulario en blanco"
1057
+
1058
+ #: admin/html/modal.php:42
1059
+ msgid "This integration is not installed."
1060
+ msgstr "Esta integración no se encuentra instalada."
1061
+
1062
+ #: admin/installer.php:27
1063
+ msgid ""
1064
+ "If you have not created <strong>WP User Frontend</strong> pages yet, you can "
1065
+ "do this by one click."
1066
+ msgstr ""
1067
+ "Si no ha creado las páginas de <strong>WP User Frontend</strong> aún, puede "
1068
+ "hacerlo con un clic"
1069
+
1070
+ #: admin/installer.php:30 admin/tools.php:348
1071
+ msgid "Install WPUF Pages"
1072
+ msgstr "Instalar páginas de WPUF"
1073
+
1074
+ #: admin/installer.php:32
1075
+ msgid "Skip Setup"
1076
+ msgstr "Saltar la configuración"
1077
+
1078
+ #: admin/installer.php:42
1079
+ msgid "Congratulations!"
1080
+ msgstr "¡Felicitaciones!"
1081
+
1082
+ #: admin/installer.php:42
1083
+ msgid ""
1084
+ "Pages for <strong>WP User Frontend</strong> has been successfully installed "
1085
+ "and saved!"
1086
+ msgstr ""
1087
+ "¡Se instalaron correctamente las páginas de <strong>WP User Frontend</"
1088
+ "strong>!"
1089
+
1090
+ #: admin/installer.php:73 admin/settings-options.php:17
1091
+ #: includes/free/admin/shortcode-button.php:82 wpuf-functions.php:1341
1092
+ msgid "Dashboard"
1093
+ msgstr "Panel de control"
1094
+
1095
+ #: admin/installer.php:74 includes/free/admin/shortcode-button.php:86
1096
+ msgid "Account"
1097
+ msgstr "Cuenta"
1098
+
1099
+ #: admin/installer.php:78 includes/free/admin/shortcode-button.php:94
1100
+ msgid "Login"
1101
+ msgstr "Ingresar"
1102
+
1103
+ #: admin/installer.php:83 class/subscription.php:335
1104
+ #: class/subscription.php:355 class/subscription.php:356
1105
+ #: class/subscription.php:357 includes/free/admin/shortcode-button.php:98
1106
+ #: wpuf-functions.php:1343
1107
+ msgid "Subscription"
1108
+ msgstr "Suscripción"
1109
+
1110
+ #: admin/installer.php:83
1111
+ msgid "[wpuf_sub_pack]"
1112
+ msgstr "[wpuf_sub_pack]"
1113
+
1114
+ #: admin/installer.php:84 templates/dashboard/posts.php:81
1115
+ #: templates/dashboard.php:34
1116
+ msgid "Payment"
1117
+ msgstr "Pago"
1118
+
1119
+ #: admin/installer.php:84
1120
+ msgid "Please select a gateway for payment"
1121
+ msgstr "Por favor, seleccione un método de pago"
1122
+
1123
+ #: admin/installer.php:85
1124
+ msgid "Thank You"
1125
+ msgstr "Gracias"
1126
+
1127
+ #: admin/installer.php:85
1128
+ msgid ""
1129
+ "<h1>Payment is complete</h1><p>Congratulations, your payment has been "
1130
+ "completed!</p>"
1131
+ msgstr ""
1132
+ "<h1>Pago completado</h1><p>¡Felicitaciones, su pago ha sido completado!</p>"
1133
+
1134
+ #: admin/installer.php:86
1135
+ msgid "Order Received"
1136
+ msgstr "Pedido recibido"
1137
+
1138
+ #: admin/installer.php:86
1139
+ msgid ""
1140
+ "Hi, we have received your order. We will validate the order and will take "
1141
+ "necessary steps to move forward."
1142
+ msgstr ""
1143
+ "Hola, hemos recibido tu pedido. Lo validaremos y seguiremos los pasos "
1144
+ "necesarios para continuar."
1145
+
1146
+ #: admin/installer.php:165
1147
+ msgid "Registration"
1148
+ msgstr "Registro"
1149
+
1150
+ #: admin/installer.php:174
1151
+ msgid "Sample Form"
1152
+ msgstr "Formulario de Ejemplo"
1153
+
1154
+ #: admin/post-forms-list-table-view.php:4 admin/settings.php:57
1155
+ msgid "Post Forms"
1156
+ msgstr "Formularios de Entrada"
1157
+
1158
+ #: admin/post-forms-list-table-view.php:23
1159
+ msgid "Search Forms"
1160
+ msgstr "Formularios de búsqueda"
1161
+
1162
+ #: admin/post-forms-list-table.php:38 admin/tools.php:38 admin/tools.php:94
1163
+ #: class/transactions-list-table.php:85
1164
+ msgid "All"
1165
+ msgstr "Todos"
1166
+
1167
+ #: admin/post-forms-list-table.php:39 wpuf-functions.php:61
1168
+ msgid "Published"
1169
+ msgstr "Publicado"
1170
+
1171
+ #: admin/post-forms-list-table.php:40 admin/post-forms-list-table.php:388
1172
+ msgid "Trash"
1173
+ msgstr "Papelera"
1174
+
1175
+ #: admin/post-forms-list-table.php:90
1176
+ msgid "No form found."
1177
+ msgstr "No se encontraron formularios."
1178
+
1179
+ #: admin/post-forms-list-table.php:104
1180
+ msgid "Move to Trash"
1181
+ msgstr "Mover a la papelera"
1182
+
1183
+ #: admin/post-forms-list-table.php:108 admin/post-forms-list-table.php:400
1184
+ msgid "Restore"
1185
+ msgstr "Restaurar"
1186
+
1187
+ #: admin/post-forms-list-table.php:109 admin/post-forms-list-table.php:401
1188
+ msgid "Delete Permanently"
1189
+ msgstr "Eliminar permanentemente"
1190
+
1191
+ #: admin/post-forms-list-table.php:291
1192
+ msgid "Form Name"
1193
+ msgstr "Nombre del formulario"
1194
+
1195
+ #: admin/post-forms-list-table.php:295
1196
+ msgid "Shortcode"
1197
+ msgstr "Shortcode"
1198
+
1199
+ #: admin/post-forms-list-table.php:389
1200
+ msgid "Duplicate"
1201
+ msgstr "Duplicado"
1202
+
1203
+ #: admin/post-forms-list-table.php:410 wpuf-functions.php:65
1204
+ msgid "Draft"
1205
+ msgstr "Borrador"
1206
+
1207
+ #: admin/posting.php:56 class/render-form.php:1502 wpuf.php:350
1208
+ msgid "Are you sure?"
1209
+ msgstr "¿Está seguro?"
1210
+
1211
+ #: admin/posting.php:62 wpuf.php:356
1212
+ msgid "Allowed Files"
1213
+ msgstr "Archivos permitidos"
1214
+
1215
+ #: admin/posting.php:65 wpuf.php:359
1216
+ msgid "Maximum number of files reached!"
1217
+ msgstr "¡Número máximo de archivos alcanzado!"
1218
+
1219
+ #: admin/posting.php:66 wpuf.php:360
1220
+ msgid ""
1221
+ "The file you have uploaded exceeds the file size limit. Please try again."
1222
+ msgstr ""
1223
+ "El archivo subido excede el límite de tamaño. Por favor intente de nuevo."
1224
+
1225
+ #: admin/posting.php:67 wpuf.php:361
1226
+ msgid "You have uploaded an incorrect file type. Please try again."
1227
+ msgstr ""
1228
+ "Has subido un tipo de archivo incorrecto. Por favor, inténtelo de nuevo."
1229
+
1230
+ #: admin/posting.php:86
1231
+ msgid "WPUF Form"
1232
+ msgstr "Formulario WPUF"
1233
+
1234
+ #: admin/posting.php:157
1235
+ msgid "WPUF Custom Fields"
1236
+ msgstr "Campos personalizados WPUF"
1237
+
1238
+ #: admin/posting.php:202
1239
+ msgid "No custom fields found."
1240
+ msgstr "No se encontraron campos personalizados."
1241
+
1242
+ #: admin/promotion.php:38
1243
+ msgid "Pro upgrade and all extensions, "
1244
+ msgstr "Actualiza a Pro y todas las extensiones,"
1245
+
1246
+ #: admin/promotion.php:38
1247
+ msgid "all extensions, "
1248
+ msgstr "todas las extensiones,"
1249
+
1250
+ #: admin/promotion.php:40
1251
+ msgid ""
1252
+ "<h2><span class=\"dashicons dashicons-awards\"></span> weDevs 4th Year "
1253
+ "Anniversary Offer</h2>"
1254
+ msgstr ""
1255
+ "<h2><span class=\"dashicons dashicons-awards\"></span> 4to año de weDevs "
1256
+ "Oferta de Aniversario</h2>"
1257
+
1258
+ #: admin/promotion.php:41
1259
+ msgid ""
1260
+ "<p>Get <strong class=\"highlight-text\">44&#37; discount</strong> on %2$s "
1261
+ "also <a target=\"_blank\" href=\"%1$s\"><strong>WIN any product</strong></a> "
1262
+ "from our 4th year anniversary giveaway. Offer ending soon!</p>"
1263
+ msgstr ""
1264
+ "<p>Obtener un <strong class=\"highlight-text\">44&#37; descuento</strong> en "
1265
+ "%2$s, también <a target=\"_blank\" href=\"%1$s\"><strong>gane cualquier "
1266
+ "producto</strong></a> por nuestro 4th aniversario. ¡La oferta termina pronto!"
1267
+ "</p>"
1268
+
1269
+ #: admin/settings-options.php:13
1270
+ msgid "General Options"
1271
+ msgstr "Opciones generales"
1272
+
1273
+ #: admin/settings-options.php:21
1274
+ msgid "Login / Registration"
1275
+ msgstr "Ingreso / Registro"
1276
+
1277
+ #: admin/settings-options.php:25
1278
+ msgid "Payments"
1279
+ msgstr "Pagos"
1280
+
1281
+ #: admin/settings-options.php:29
1282
+ msgid "Support"
1283
+ msgstr "Soporte"
1284
+
1285
+ #: admin/settings-options.php:53
1286
+ msgid "Fixed Form Elements "
1287
+ msgstr "Elementos fijos del Formulario"
1288
+
1289
+ #: admin/settings-options.php:54
1290
+ msgid "Show fixed form elements sidebar in form editor"
1291
+ msgstr ""
1292
+ "Mostrar elementos fijos de la barra lateral en el editor de Formularios"
1293
+
1294
+ #: admin/settings-options.php:60
1295
+ msgid "Edit Page"
1296
+ msgstr "Editar página"
1297
+
1298
+ #: admin/settings-options.php:61
1299
+ msgid "Select the page where [wpuf_edit] is located"
1300
+ msgstr "Seleccione la página donde está ubicado el shortcut [wpuf_edit]"
1301
+
1302
+ #: admin/settings-options.php:67
1303
+ msgid "Default Post Owner"
1304
+ msgstr "Dueño por defecto de la Entrada"
1305
+
1306
+ #: admin/settings-options.php:68
1307
+ msgid ""
1308
+ "If guest post is enabled and user details are OFF, the posts are assigned to "
1309
+ "this user"
1310
+ msgstr ""
1311
+ "Si las Entradas para invitados están habilitadas y los detalles de usuario "
1312
+ "están deshabilitados, las entradas serán asignadas a este usuario"
1313
+
1314
+ #: admin/settings-options.php:75
1315
+ msgid "Admin area access"
1316
+ msgstr "Acceso al área de Administración"
1317
+
1318
+ #: admin/settings-options.php:76
1319
+ msgid "Allow you to block specific user role to WordPress admin area."
1320
+ msgstr ""
1321
+ "Le permite bloquear a un rol de usuario específico desde el área de "
1322
+ "Administración"
1323
+
1324
+ #: admin/settings-options.php:80
1325
+ msgid "Admin Only"
1326
+ msgstr "Solo Administrador"
1327
+
1328
+ #: admin/settings-options.php:81
1329
+ msgid "Admins, Editors"
1330
+ msgstr "Administrador, Editor"
1331
+
1332
+ #: admin/settings-options.php:82
1333
+ msgid "Admins, Editors, Authors"
1334
+ msgstr "Administrador, Editor, Autor"
1335
+
1336
+ #: admin/settings-options.php:83
1337
+ msgid "Admins, Editors, Authors, Contributors"
1338
+ msgstr "Administrador, Editor, Autor, Contribuidor"
1339
+
1340
+ #: admin/settings-options.php:84
1341
+ msgid "Default"
1342
+ msgstr "Defecto"
1343
+
1344
+ #: admin/settings-options.php:89
1345
+ msgid "Override the post edit link"
1346
+ msgstr "Sobrescribir el enlace de editar Entrada"
1347
+
1348
+ #: admin/settings-options.php:90
1349
+ msgid ""
1350
+ "Users see the edit link in post if s/he is capable to edit the post/page. "
1351
+ "Selecting <strong>Yes</strong> will override the default WordPress edit post "
1352
+ "link in frontend"
1353
+ msgstr ""
1354
+ "Los usuarios ven el enlace de edición en la Entrada/Página si les es posible "
1355
+ "editarlo. Seleccionando <strong>Si</strong> sobrescribirá la opción por "
1356
+ "defecto de WordPress."
1357
+
1358
+ #: admin/settings-options.php:100
1359
+ msgid "Custom Fields in post"
1360
+ msgstr "Campos personalizados en la Entrada"
1361
+
1362
+ #: admin/settings-options.php:101
1363
+ msgid "Show custom fields on post content area"
1364
+ msgstr "Mostrar campos personalizados en el contenido de la Entrada"
1365
+
1366
+ #: admin/settings-options.php:107
1367
+ msgid "Load Scripts"
1368
+ msgstr "Cargar Scripts"
1369
+
1370
+ #: admin/settings-options.php:108
1371
+ msgid "Load scripts/styles in all pages"
1372
+ msgstr "Cargar Scripts/Estilos en todas las páginas"
1373
+
1374
+ #: admin/settings-options.php:114
1375
+ msgid "Insert Photo image size"
1376
+ msgstr "Insertar tamaño de la imagen"
1377
+
1378
+ #: admin/settings-options.php:115
1379
+ msgid ""
1380
+ "Default image size of \"<strong>Insert Photo</strong>\" button in post "
1381
+ "content area"
1382
+ msgstr ""
1383
+ "Tamaño por defecto para el botón de la imagen \"<strong>Insertar Imagen</"
1384
+ "strong>\" en el contenido de la Entrada"
1385
+
1386
+ #: admin/settings-options.php:122
1387
+ msgid "Insert Photo image type"
1388
+ msgstr "Insertar tipo de imagen"
1389
+
1390
+ #: admin/settings-options.php:123
1391
+ msgid ""
1392
+ "Default image type of \"<strong>Insert Photo</strong>\" button in post "
1393
+ "content area"
1394
+ msgstr ""
1395
+ "Tipo de imagen por defecto para el botón \"<strong>Insert Photo</strong>\" "
1396
+ "en el contenido de la Entrada"
1397
+
1398
+ #: admin/settings-options.php:126
1399
+ msgid "Image only"
1400
+ msgstr "Solo imagen"
1401
+
1402
+ #: admin/settings-options.php:127
1403
+ msgid "Image with link"
1404
+ msgstr "Imagen con enlace"
1405
+
1406
+ #: admin/settings-options.php:133
1407
+ msgid "Enable Image Caption"
1408
+ msgstr "Habilitar subtitulo de imagen"
1409
+
1410
+ #: admin/settings-options.php:134
1411
+ msgid "Allow users to update image/video title, caption and description"
1412
+ msgstr ""
1413
+ "Permitir a los usuarios actualizar el título de la imagen/video, subtítulo y "
1414
+ "descripción"
1415
+
1416
+ #: admin/settings-options.php:140
1417
+ msgid "Default Post Form"
1418
+ msgstr "Formulario de Entrada por defecto"
1419
+
1420
+ #: admin/settings-options.php:141
1421
+ msgid "Fallback form for post editing if no associated form found"
1422
+ msgstr "No se encontró un respaldo asociado al Formulario Editado "
1423
+
1424
+ #: admin/settings-options.php:147
1425
+ msgid "reCAPTCHA Site Key"
1426
+ msgstr "reCAPTCHA Site Key"
1427
+
1428
+ #: admin/settings-options.php:151
1429
+ msgid "reCAPTCHA Secret Key"
1430
+ msgstr "reCAPTCHA Secret Key"
1431
+
1432
+ #: admin/settings-options.php:152
1433
+ msgid ""
1434
+ "<a target=\"_blank\" href=\"https://www.google.com/recaptcha/\">Register "
1435
+ "here</a> to get reCaptcha Site and Secret keys."
1436
+ msgstr ""
1437
+ "<a target=\"_blank\" href=\"https://www.google.com/recaptcha/\">Registrese "
1438
+ "aquí</a> para obtener los datos de reCaptcha."
1439
+
1440
+ #: admin/settings-options.php:156
1441
+ msgid "Google Map API"
1442
+ msgstr "Google Map API"
1443
+
1444
+ #: admin/settings-options.php:157
1445
+ msgid ""
1446
+ "<a target=\"_blank\" href=\"https://developers.google.com/maps/documentation/"
1447
+ "javascript\">API</a> key is needed to render Google Maps"
1448
+ msgstr ""
1449
+ "La <a target=\"_blank\" href=\"https://developers.google.com/maps/"
1450
+ "documentation/javascript\">API</a> key es necesaria para usar Google Maps"
1451
+
1452
+ #: admin/settings-options.php:161
1453
+ msgid "Custom CSS codes"
1454
+ msgstr "Códigos CSS personalizados"
1455
+
1456
+ #: admin/settings-options.php:162
1457
+ msgid ""
1458
+ "If you want to add your custom CSS code, it will be added on page header "
1459
+ "wrapped with style tag"
1460
+ msgstr ""
1461
+ "Si desea añadir su código CSS personalizado, este será agregado en la "
1462
+ "cabecera de la página dentro de una etiqueta style."
1463
+
1464
+ #: admin/settings-options.php:169
1465
+ msgid "Users can edit post?"
1466
+ msgstr "¿Los usuarios pueden editar las entradas?"
1467
+
1468
+ #: admin/settings-options.php:170
1469
+ msgid "Users will be able to edit their own posts"
1470
+ msgstr "¿Los usuarios pueden editar sus entradas?"
1471
+
1472
+ #: admin/settings-options.php:180
1473
+ msgid "User can delete post?"
1474
+ msgstr "¿Los usuarios pueden eliminar las entradas?"
1475
+
1476
+ #: admin/settings-options.php:181
1477
+ msgid "Users will be able to delete their own posts"
1478
+ msgstr "¿Los usuarios pueden eliminar sus entradas?"
1479
+
1480
+ #: admin/settings-options.php:191
1481
+ msgid "Pending Post Edit"
1482
+ msgstr "Edición de Entrada pendiente"
1483
+
1484
+ #: admin/settings-options.php:192
1485
+ msgid "Disable post editing while post in \"pending\" status"
1486
+ msgstr ""
1487
+ "Deshabilitar la edición de Entradas mientras se encuentran en estado "
1488
+ "\"Pendiente\""
1489
+
1490
+ #: admin/settings-options.php:198
1491
+ msgid "Posts per page"
1492
+ msgstr "Entradas por página"
1493
+
1494
+ #: admin/settings-options.php:199
1495
+ msgid "How many posts will be listed in a page"
1496
+ msgstr "Cuantas Entradas serán listadas en una página"
1497
+
1498
+ #: admin/settings-options.php:205
1499
+ msgid "Show user bio"
1500
+ msgstr "Mostrar biografía del usuario"
1501
+
1502
+ #: admin/settings-options.php:206
1503
+ msgid "Users biographical info will be shown"
1504
+ msgstr "La información biográfica de los usuarios será visible"
1505
+
1506
+ #: admin/settings-options.php:212
1507
+ msgid "Show post count"
1508
+ msgstr "Mostrar cantidad de Entradas"
1509
+
1510
+ #: admin/settings-options.php:213
1511
+ msgid "Show how many posts are created by the user"
1512
+ msgstr "Mostrar cuantas Entradas ha creado el usuario"
1513
+
1514
+ #: admin/settings-options.php:219
1515
+ msgid "Show Featured Image"
1516
+ msgstr "Mostrar la imagen destacada"
1517
+
1518
+ #: admin/settings-options.php:220
1519
+ msgid "Show featured image of the post"
1520
+ msgstr "Mostrar la imagen destacada de la Entrada"
1521
+
1522
+ #: admin/settings-options.php:225
1523
+ msgid "Featured Image size"
1524
+ msgstr "Tamaño de la imagen destacada"
1525
+
1526
+ #: admin/settings-options.php:239
1527
+ msgid "Auto Login After Registration"
1528
+ msgstr "Ingresar automámaticamente después de registrar"
1529
+
1530
+ #: admin/settings-options.php:240
1531
+ msgid "If enabled, users after registration will be logged in to the system"
1532
+ msgstr ""
1533
+ "Si está habilitado, los usuarios despúes del registro habrán ingresado al "
1534
+ "sistema"
1535
+
1536
+ #: admin/settings-options.php:246
1537
+ msgid "Login/Registration override"
1538
+ msgstr "Sobreescribir Ingresar / Registrar"
1539
+
1540
+ #: admin/settings-options.php:247
1541
+ msgid ""
1542
+ "If enabled, default login and registration forms will be overridden by WPUF "
1543
+ "with pages below"
1544
+ msgstr ""
1545
+ "Si se habilita, el formulario de registro e ingreso será sobreescrito por "
1546
+ "WPUF con las páginas listadas abajo"
1547
+
1548
+ #: admin/settings-options.php:253
1549
+ msgid "Registration Page"
1550
+ msgstr "Página de Registro"
1551
+
1552
+ #: admin/settings-options.php:254
1553
+ msgid ""
1554
+ "Select the page you want to use as registration page override <em>(should "
1555
+ "have shortcode)</em>"
1556
+ msgstr ""
1557
+ "Seleccione la página que desea usar para sobrescribir el Registro de "
1558
+ "usuarios <em>(debe contener el shortcode)</em>"
1559
+
1560
+ #: admin/settings-options.php:260
1561
+ msgid "Login Page"
1562
+ msgstr "Página de Ingreso"
1563
+
1564
+ #: admin/settings-options.php:261
1565
+ msgid "Select the page which contains <code>[wpuf-login]</code> shortcode"
1566
+ msgstr ""
1567
+ "Seleccione la página que contiene el shortcode <code>[wpuf-login]</code>"
1568
+
1569
+ #: admin/settings-options.php:269
1570
+ msgid "Charge for posting"
1571
+ msgstr "Cobrar por publicar"
1572
+
1573
+ #: admin/settings-options.php:270
1574
+ msgid "Charge user for submitting a post"
1575
+ msgstr "Cobrar al usuario por Publicar una Entrada"
1576
+
1577
+ #: admin/settings-options.php:280
1578
+ msgid "Force pack purchase"
1579
+ msgstr "Forzar la compra de un pack"
1580
+
1581
+ #: admin/settings-options.php:281
1582
+ msgid "When active, users must have to buy a pack for posting"
1583
+ msgstr "Cuando está activo, los usuarios deberán comprar un pack para postear"
1584
+
1585
+ #: admin/settings-options.php:285
1586
+ msgid "Disable"
1587
+ msgstr "Deshabilitar"
1588
+
1589
+ #: admin/settings-options.php:286
1590
+ msgid "Enable"
1591
+ msgstr "Habilitar"
1592
+
1593
+ #: admin/settings-options.php:291
1594
+ msgid "Subscription Pack Page"
1595
+ msgstr "Página de Pack de Suscripción"
1596
+
1597
+ #: admin/settings-options.php:292
1598
+ msgid "Select the page where <code>[wpuf_sub_pack]</code> located."
1599
+ msgstr ""
1600
+ "Seleccione la página donde está el código <code>[wpuf_sub_pack]</code>."
1601
+
1602
+ #: admin/settings-options.php:298
1603
+ msgid "Subscription at registration"
1604
+ msgstr "Suscripción al registrar"
1605
+
1606
+ #: admin/settings-options.php:299
1607
+ msgid "Registration time redirect to subscription page"
1608
+ msgstr ""
1609
+ "Luego del registro, se redireccionará al usuario a la página de suscripción"
1610
+
1611
+ #: admin/settings-options.php:304
1612
+ msgid "Currency"
1613
+ msgstr "Moneda"
1614
+
1615
+ #: admin/settings-options.php:311
1616
+ msgid "Currency Position"
1617
+ msgstr "Posición de la moneda"
1618
+
1619
+ #: admin/settings-options.php:315
1620
+ msgid "Left"
1621
+ msgstr "Izquieda"
1622
+
1623
+ #: admin/settings-options.php:316
1624
+ msgid "Right"
1625
+ msgstr "Derecha"
1626
+
1627
+ #: admin/settings-options.php:317
1628
+ msgid "Left with space"
1629
+ msgstr "Izquierda con espacio"
1630
+
1631
+ #: admin/settings-options.php:318
1632
+ msgid "Right with space"
1633
+ msgstr "Derecha con espacio"
1634
+
1635
+ #: admin/settings-options.php:323
1636
+ msgid "Thousand Separator"
1637
+ msgstr "Separador de miles"
1638
+
1639
+ #: admin/settings-options.php:324
1640
+ msgid "This sets the thousand separator of displayed prices."
1641
+ msgstr "Define el separador de los miles en el precio."
1642
+
1643
+ #: admin/settings-options.php:332
1644
+ msgid "Decimal Separator"
1645
+ msgstr "Separador decimal"
1646
+
1647
+ #: admin/settings-options.php:333
1648
+ msgid "This sets the decimal separator of displayed prices."
1649
+ msgstr "Define el separador decimal en el precio."
1650
+
1651
+ #: admin/settings-options.php:340
1652
+ msgid "Number of Decimals"
1653
+ msgstr "Número de decimales"
1654
+
1655
+ #: admin/settings-options.php:341
1656
+ msgid "This sets the number of decimal points shown in displayed prices."
1657
+ msgstr "Define el número de decimales en el precio."
1658
+
1659
+ #: admin/settings-options.php:351 admin/subscription.php:207
1660
+ #: class/transactions-list-table.php:43
1661
+ msgid "Cost"
1662
+ msgstr "Costo"
1663
+
1664
+ #: admin/settings-options.php:358
1665
+ msgid "Enable demo/sandbox mode"
1666
+ msgstr "Habilitar el modo demostración/SandBox"
1667
+
1668
+ #: admin/settings-options.php:359
1669
+ msgid ""
1670
+ "When sandbox mode is active, all payment gateway will be used in demo mode"
1671
+ msgstr ""
1672
+ "Cuando el modo SandBox está activo, todos los métodos de pago serán usados "
1673
+ "en modo demostración"
1674
+
1675
+ #: admin/settings-options.php:365
1676
+ msgid "Payment Page"
1677
+ msgstr "Página de pago"
1678
+
1679
+ #: admin/settings-options.php:366
1680
+ msgid "This page will be used to process payment options"
1681
+ msgstr "Esta página será usada para procesar las opciones de pago."
1682
+
1683
+ #: admin/settings-options.php:372
1684
+ msgid "Payment Success Page"
1685
+ msgstr "Página de éxito de pago"
1686
+
1687
+ #: admin/settings-options.php:373 lib/gateway/bank.php:37
1688
+ msgid "After payment users will be redirected here"
1689
+ msgstr "Después de pagar, los usuarios serán redirigidos aquí"
1690
+
1691
+ #: admin/settings-options.php:379
1692
+ msgid "Payment Gateways"
1693
+ msgstr "Métodos de pago"
1694
+
1695
+ #: admin/settings-options.php:380
1696
+ msgid "Active payment gateways"
1697
+ msgstr "Métodos de pago activos"
1698
+
1699
+ #: admin/settings-options.php:388
1700
+ msgid "Need Help?"
1701
+ msgstr "¿Necesita ayuda?"
1702
+
1703
+ #: admin/settings-options.php:422
1704
+ msgid ""
1705
+ "Select profile/registration forms for user roles. These forms will be used "
1706
+ "to populate extra edit profile fields in backend."
1707
+ msgstr ""
1708
+ "Seleccione un Formulario de Perfil/Registro para los roles de usuario. Este "
1709
+ "Formulario será usado para completar campos extra en el backend."
1710
+
1711
+ #: admin/settings-options.php:433
1712
+ msgid " - select - "
1713
+ msgstr "- seleccione -"
1714
+
1715
+ #: Plugin Name of the plugin/theme
1716
+ msgid "WP User Frontend"
1717
+ msgstr "WP User Frontend"
1718
+
1719
+ #: admin/settings.php:55
1720
+ msgid "User Frontend"
1721
+ msgstr "User Frontend"
1722
+
1723
+ #: admin/settings.php:65
1724
+ msgid "Subscriptions"
1725
+ msgstr "Suscripciones"
1726
+
1727
+ #: admin/settings.php:69 admin/tools.php:375 admin/transactions.php:2
1728
+ msgid "Transactions"
1729
+ msgstr "Transacciones"
1730
+
1731
+ #: admin/settings.php:70
1732
+ msgid "Add-ons"
1733
+ msgstr "Extensiones"
1734
+
1735
+ #: admin/settings.php:71 admin/tools.php:398
1736
+ msgid "Tools"
1737
+ msgstr "Herramientas"
1738
+
1739
+ #: admin/settings.php:269
1740
+ msgid "Number of items per page:"
1741
+ msgstr "Número de elementos por página:"
1742
+
1743
+ #: admin/subscription.php:52 admin/subscription.php:55
1744
+ msgid "Subscription pack updated."
1745
+ msgstr "Pack de suscripción actualizado."
1746
+
1747
+ #: admin/subscription.php:53
1748
+ msgid "Custom field updated."
1749
+ msgstr "Campo personalizado actualizado."
1750
+
1751
+ #: admin/subscription.php:54
1752
+ msgid "Custom field deleted."
1753
+ msgstr "Campo personalizado eliminado."
1754
+
1755
+ #: admin/subscription.php:56
1756
+ msgid "Subscription pack restored to revision from %s"
1757
+ msgstr "Pack de suscripción restaurado desde la revisión %s"
1758
+
1759
+ #: admin/subscription.php:57
1760
+ msgid "Subscription pack published."
1761
+ msgstr "Pack de suscripción publicado."
1762
+
1763
+ #: admin/subscription.php:58
1764
+ msgid "Subscription pack saved."
1765
+ msgstr "Pack de suscripción guardado."
1766
+
1767
+ #: admin/subscription.php:59
1768
+ msgid "Subscription pack submitted."
1769
+ msgstr "Pack de suscripción enviado."
1770
+
1771
+ #: admin/subscription.php:61
1772
+ msgid "Subscription pack draft updated."
1773
+ msgstr "Borrador de pack de suscripción actualizado."
1774
+
1775
+ #: admin/subscription.php:134 admin/subscription.php:459
1776
+ #: class/frontend-account.php:127 class/subscription.php:704
1777
+ #: class/subscription.php:884 class/subscription.php:897
1778
+ msgid "Free"
1779
+ msgstr "Gratis"
1780
+
1781
+ #: admin/subscription.php:170 class/subscription.php:276
1782
+ msgid "Pack Name"
1783
+ msgstr "Nombre del pack"
1784
+
1785
+ #: admin/subscription.php:171
1786
+ msgid "Amount"
1787
+ msgstr "Cantidad"
1788
+
1789
+ #: admin/subscription.php:172 includes/free/subscription.php:8
1790
+ msgid "Recurring"
1791
+ msgstr "Recurrente"
1792
+
1793
+ #: admin/subscription.php:173
1794
+ msgid "Duration"
1795
+ msgstr "Duración"
1796
+
1797
+ #: admin/subscription.php:196
1798
+ msgid "Pack Deleted"
1799
+ msgstr "Pack eliminado"
1800
+
1801
+ #: admin/subscription.php:208
1802
+ msgid "Validity"
1803
+ msgstr "Validez"
1804
+
1805
+ #: admin/subscription.php:209
1806
+ msgid "Post Count"
1807
+ msgstr "Cantidad de Entradas"
1808
+
1809
+ #: admin/subscription.php:210 includes/free/edit-user.php:93
1810
+ msgid "Action"
1811
+ msgstr "Acción"
1812
+
1813
+ #: admin/subscription.php:230
1814
+ msgid "Are you sure to delete this pack?"
1815
+ msgstr "¿Está seguro de querer eliminar este pack?"
1816
+
1817
+ #: admin/subscription.php:231 class/render-form.php:1502
1818
+ #: class/transactions-list-table.php:114 class/transactions-list-table.php:175
1819
+ #: class/upload.php:171 includes/free/edit-user.php:100
1820
+ #: templates/dashboard/posts.php:160 templates/dashboard.php:114
1821
+ msgid "Delete"
1822
+ msgstr "Eliminar"
1823
+
1824
+ #: admin/subscription.php:242
1825
+ msgid "No subscription pack found"
1826
+ msgstr "No se encontraron packs de suscripción."
1827
+
1828
+ #: admin/subscription.php:289
1829
+ msgid "Pack Description"
1830
+ msgstr "Descripción del pack"
1831
+
1832
+ #: admin/subscription.php:296
1833
+ msgid "Billing amount:"
1834
+ msgstr "Monto a cobrar:"
1835
+
1836
+ #: admin/subscription.php:297
1837
+ msgid "Billing amount each cycle:"
1838
+ msgstr "Monto a cobrar cada ciclo:"
1839
+
1840
+ #: admin/subscription.php:306
1841
+ msgid "Expires In:"
1842
+ msgstr "Expira en:"
1843
+
1844
+ #: admin/subscription.php:328 includes/free/form-element.php:59
1845
+ msgid "Enable Post Expiration"
1846
+ msgstr "Habilitar la expiración de Entradas"
1847
+
1848
+ #: admin/subscription.php:341 admin/subscription.php:538
1849
+ #: includes/free/form-element.php:64
1850
+ msgid "Post Expiration Time"
1851
+ msgstr "Tiempo de expiración de las Entradas"
1852
+
1853
+ #: admin/subscription.php:380 includes/free/form-element.php:110
1854
+ msgid "Status of post after post expiration time is over "
1855
+ msgstr "Estado de la Entrada después de su expiración"
1856
+
1857
+ #: admin/subscription.php:411
1858
+ msgid "Day(s)"
1859
+ msgstr "Día(s)"
1860
+
1861
+ #: admin/subscription.php:412
1862
+ msgid "Week(s)"
1863
+ msgstr "Semana(s)"
1864
+
1865
+ #: admin/subscription.php:413
1866
+ msgid "Month(s)"
1867
+ msgstr "Mes(es)"
1868
+
1869
+ #: admin/subscription.php:414
1870
+ msgid "Year(s)"
1871
+ msgstr "Año(s)"
1872
+
1873
+ #: admin/subscription.php:451 includes/free/edit-profile.php:275
1874
+ msgid "WPUF Subscription"
1875
+ msgstr "Suscripción WPUF"
1876
+
1877
+ #: admin/subscription.php:471 class/subscription.php:715
1878
+ #: templates/dashboard/subscription.php:2
1879
+ msgid "Subscription Details"
1880
+ msgstr "Detalles de la Suscripción"
1881
+
1882
+ #: admin/subscription.php:475
1883
+ msgid "This user is using recurring subscription pack"
1884
+ msgstr "Este usuario está usando un pack de suscripción recurrente"
1885
+
1886
+ #: admin/subscription.php:480 class/subscription.php:717
1887
+ #: templates/dashboard/subscription.php:4
1888
+ msgid "Subcription Name: "
1889
+ msgstr "Nombre de la Suscripción:"
1890
+
1891
+ #: admin/subscription.php:482
1892
+ msgid "Package billing details: "
1893
+ msgstr "Detalles de pago del pack:"
1894
+
1895
+ #: admin/subscription.php:491 class/subscription.php:730
1896
+ #: templates/dashboard/subscription.php:10
1897
+ msgid "Remaining post: "
1898
+ msgstr "Entradas restantes:"
1899
+
1900
+ #: admin/subscription.php:513 class/subscription.php:758
1901
+ #: templates/dashboard/subscription.php:38
1902
+ msgid "Expire date:"
1903
+ msgstr "Fecha de Expiración:"
1904
+
1905
+ #: admin/subscription.php:527
1906
+ msgid "Post Expiration Enabled"
1907
+ msgstr "Expiración de Entrada habilitado"
1908
+
1909
+ #: admin/subscription.php:565
1910
+ msgid "Assign Package"
1911
+ msgstr "Asignar paquete"
1912
+
1913
+ #: admin/subscription.php:566
1914
+ msgid "Show Package"
1915
+ msgstr "Mostrar paquete"
1916
+
1917
+ #: admin/subscription.php:569 includes/free/edit-profile.php:279
1918
+ msgid "Pack:"
1919
+ msgstr "Pack:"
1920
+
1921
+ #: admin/subscription.php:572
1922
+ msgid "--Select--"
1923
+ msgstr "--Seleccione--"
1924
+
1925
+ #: admin/subscription.php:580
1926
+ msgid "Delete Package"
1927
+ msgstr "Eliminar paquete"
1928
+
1929
+ #: admin/template-post.php:193
1930
+ msgid "Selection terms"
1931
+ msgstr "Seleccionar términos"
1932
+
1933
+ #: admin/template-post.php:198
1934
+ msgid "WooCommerce Attribute"
1935
+ msgstr "Atributo WooCommerce"
1936
+
1937
+ #: admin/template-post.php:210
1938
+ msgid "Visibility"
1939
+ msgstr "Visibilidad"
1940
+
1941
+ #: admin/template-post.php:257
1942
+ msgid "all"
1943
+ msgstr "todos"
1944
+
1945
+ #: admin/template-post.php:257
1946
+ msgid "Show All"
1947
+ msgstr "Mostrar todo"
1948
+
1949
+ #: admin/template-post.php:260
1950
+ msgid "hide"
1951
+ msgstr "ocultar"
1952
+
1953
+ #: admin/template-post.php:260
1954
+ msgid "Hide These Countries"
1955
+ msgstr "Ocultar estos países"
1956
+
1957
+ #: admin/template-post.php:261
1958
+ msgid "Chose Country to hide from List"
1959
+ msgstr "Elija "
1960
+
1961
+ #: admin/template-post.php:265
1962
+ msgid "show"
1963
+ msgstr "mostrar"
1964
+
1965
+ #: admin/template-post.php:265
1966
+ msgid "Show These Countries"
1967
+ msgstr "Mostrar estos países "
1968
+
1969
+ #: admin/template-post.php:266
1970
+ msgid "Add Country to List"
1971
+ msgstr "Añadir un país a la lista"
1972
+
1973
+ #: admin/template.php:25
1974
+ msgid "Click and Drag to rearrange"
1975
+ msgstr "Arrastre para reordenar"
1976
+
1977
+ #: admin/template.php:29
1978
+ msgid "Remove"
1979
+ msgstr "Quitar"
1980
+
1981
+ #: admin/template.php:30
1982
+ msgid "Toggle"
1983
+ msgstr "Cambiar"
1984
+
1985
+ #: admin/template.php:100
1986
+ msgid "Add a CSS class name for this field"
1987
+ msgstr "Añadir una clase CSS a este campo"
1988
+
1989
+ #: admin/template.php:304
1990
+ msgid "show values"
1991
+ msgstr "mostrar valores"
1992
+
1993
+ #: admin/tools.php:32
1994
+ msgid "Form Export"
1995
+ msgstr "Exportar formularios"
1996
+
1997
+ #: admin/tools.php:43 admin/tools.php:99
1998
+ msgid "Select individual"
1999
+ msgstr "Seleccionar individualmente"
2000
+
2001
+ #: admin/tools.php:53 admin/tools.php:112 admin/tools.php:397
2002
+ msgid "Export"
2003
+ msgstr "Exportar"
2004
+
2005
+ #: admin/tools.php:61 admin/tools.php:119
2006
+ msgid "Sorry you have no form to export"
2007
+ msgstr "Disculpa, no tienes formularios para exportar"
2008
+
2009
+ #: admin/tools.php:86
2010
+ msgid "Registration Form Export"
2011
+ msgstr "Exportar Formulario de Registro"
2012
+
2013
+ #: admin/tools.php:132
2014
+ msgid "Somthing went wrong. Please choose a file again"
2015
+ msgstr "Algo salió mal. Por favor elija el archivo nuevamente"
2016
+
2017
+ #: admin/tools.php:144
2018
+ msgid "Import successful. Have fun!"
2019
+ msgstr "Importación realizada. ¡Pásalo bien!"
2020
+
2021
+ #: admin/tools.php:147
2022
+ msgid "Invalid file or file size too big."
2023
+ msgstr "Archivo inválido o muy grande."
2024
+
2025
+ #: admin/tools.php:153
2026
+ msgid "Import forms"
2027
+ msgstr "Importar formularios"
2028
+
2029
+ #: admin/tools.php:155
2030
+ msgid "Click Browse button and choose a json file that you backup before."
2031
+ msgstr ""
2032
+ "Haga clic en el botón y elija un archivo JSON de algún respaldo previo."
2033
+
2034
+ #: admin/tools.php:156
2035
+ msgid "Press Restore button, WordPress does the rest for you."
2036
+ msgstr "Presione el botón de restauración, WordPress se encarga del resto."
2037
+
2038
+ #: admin/tools.php:161 admin/tools.php:396
2039
+ msgid "Import"
2040
+ msgstr "Importar"
2041
+
2042
+ #: admin/tools.php:215 admin/tools.php:235
2043
+ msgid "Please select some form for exporting"
2044
+ msgstr "Por favor, seleccione un Formulario para exportar"
2045
+
2046
+ #: admin/tools.php:319
2047
+ msgid "All forms has been deleted"
2048
+ msgstr "¡Todos los formularios han sido eliminados!"
2049
+
2050
+ #: admin/tools.php:323
2051
+ msgid "Settings has been cleared!"
2052
+ msgstr "¡Las configuraciones han sido limpiadas!"
2053
+
2054
+ #: admin/tools.php:327
2055
+ msgid "All transactions has been deleted!"
2056
+ msgstr "¡Todas las transacciones han sido eliminadas!"
2057
+
2058
+ #: admin/tools.php:344
2059
+ msgid "Page Installation"
2060
+ msgstr "Página de instalación"
2061
+
2062
+ #: admin/tools.php:347
2063
+ msgid ""
2064
+ "Clicking this button will create required pages for the plugin. Note: It'll "
2065
+ "not delete/replace existing pages."
2066
+ msgstr ""
2067
+ "Haciendo clic en este botón se crearán las páginas requeridas para el "
2068
+ "plugin. Nota: No eliminará/reemplazará páginas existentes."
2069
+
2070
+ #: admin/tools.php:353 admin/tools.php:357
2071
+ msgid "Reset Settings"
2072
+ msgstr "Limpiar configuraciones"
2073
+
2074
+ #: admin/tools.php:356
2075
+ msgid ""
2076
+ "<strong>Caution:</strong> This tool will delete all the plugin settings of "
2077
+ "WP User Frontend Pro"
2078
+ msgstr ""
2079
+ "<strong>Atención:</strong> Esta herramienta eliminará todas las "
2080
+ "configuraciones de WP User Frontend Pro"
2081
+
2082
+ #: admin/tools.php:362
2083
+ msgid "Delete Forms"
2084
+ msgstr "Eliminar formularios"
2085
+
2086
+ #: admin/tools.php:365
2087
+ msgid ""
2088
+ "<strong>Caution:</strong> This tool will delete all the post and "
2089
+ "registration/profile forms."
2090
+ msgstr ""
2091
+ "<strong>Atención:</strong> Esta herramienta eliminará todas las Entradas y "
2092
+ "Formularios de Registros/Perfiles."
2093
+
2094
+ #: admin/tools.php:367
2095
+ msgid "Delete Post Forms"
2096
+ msgstr "Eliminar formularios de entradas"
2097
+
2098
+ #: admin/tools.php:368
2099
+ msgid "Delete Registration Forms"
2100
+ msgstr "Eliminar Formularios de Registro"
2101
+
2102
+ #: admin/tools.php:369
2103
+ msgid "Delete Subscriptions"
2104
+ msgstr "Eliminar suscripciones"
2105
+
2106
+ #: admin/tools.php:370
2107
+ msgid "Delete Coupons"
2108
+ msgstr "Eliminar cupones"
2109
+
2110
+ #: admin/tools.php:378
2111
+ msgid "This tool will delete all the transactions from the transaction table."
2112
+ msgstr "Esta herramienta eliminará todas las transacciones de la tabla."
2113
+
2114
+ #: admin/tools.php:380
2115
+ msgid "Delete Transactions"
2116
+ msgstr "Eliminar transacciones"
2117
+
2118
+ #: admin/transactions.php:12
2119
+ msgid "Total Income:"
2120
+ msgstr "Ingresos totales:"
2121
+
2122
+ #: admin/transactions.php:15
2123
+ msgid "This Month:"
2124
+ msgstr "Este mes:"
2125
+
2126
+ #: class/frontend-account.php:118
2127
+ msgid "<p>You've not subscribed any package yet.</p>"
2128
+ msgstr "<p>No está suscrito a ningún pack aún.</p>"
2129
+
2130
+ #: class/frontend-account.php:176 class/subscription.php:59
2131
+ msgid "Nonce failure"
2132
+ msgstr "Error de nonce"
2133
+
2134
+ #: class/frontend-account.php:190
2135
+ msgid "First Name is a required field."
2136
+ msgstr "Nombre es un campo requerido."
2137
+
2138
+ #: class/frontend-account.php:194
2139
+ msgid "Last Name is a required field."
2140
+ msgstr "Apellido es un campo requerido."
2141
+
2142
+ #: class/frontend-account.php:198
2143
+ msgid "Email is a required field."
2144
+ msgstr "Correo es un campo requerido."
2145
+
2146
+ #: class/frontend-account.php:209
2147
+ msgid "Please provide a valid email address."
2148
+ msgstr "Por favor, ingrese una dirección de correo válida."
2149
+
2150
+ #: class/frontend-account.php:211
2151
+ msgid "This email address is already registered."
2152
+ msgstr "Esta dirección de correo ya se encuentra registrada."
2153
+
2154
+ #: class/frontend-account.php:217
2155
+ msgid "Please fill out all password fields."
2156
+ msgstr "Por favor, llene todos los campos de contraseña."
2157
+
2158
+ #: class/frontend-account.php:220
2159
+ msgid "Please enter your current password."
2160
+ msgstr "Por favor, ingrese su contraseña actual."
2161
+
2162
+ #: class/frontend-account.php:223
2163
+ msgid "Please re-enter your password."
2164
+ msgstr "Por favor, re ingrese su contraseña,"
2165
+
2166
+ #: class/frontend-account.php:226
2167
+ msgid "New passwords do not match."
2168
+ msgstr "Las nuevas contraseñas no coinciden."
2169
+
2170
+ #: class/frontend-account.php:229 class/frontend-account.php:240
2171
+ msgid "Your current password is incorrect."
2172
+ msgstr "Su contraseña actual es incorrecta."
2173
+
2174
+ #: class/frontend-dashboard.php:60 templates/dashboard/posts.php:36
2175
+ msgid "Post Deleted"
2176
+ msgstr "Entrada eliminada"
2177
+
2178
+ #: class/frontend-dashboard.php:98
2179
+ msgid "Author Info"
2180
+ msgstr "Información del autor"
2181
+
2182
+ #: class/frontend-dashboard.php:102 includes/free/edit-user.php:97
2183
+ msgid "%s"
2184
+ msgstr "%s"
2185
+
2186
+ #: class/frontend-dashboard.php:134 templates/dashboard/posts.php:30
2187
+ msgid "You are not the post author. Cheeting huh!"
2188
+ msgstr "No eres el autor de esta Entrada. ¡Haciendo trampa eh!"
2189
+
2190
+ #: class/frontend-form-post.php:74
2191
+ msgid "You are not logged in"
2192
+ msgstr "No has iniciado sesión"
2193
+
2194
+ #: class/frontend-form-post.php:82 class/frontend-form-post.php:93
2195
+ msgid "Invalid post"
2196
+ msgstr "Entrada inválida"
2197
+
2198
+ #: class/frontend-form-post.php:87
2199
+ msgid "Post Editing is disabled"
2200
+ msgstr "La edición de Entradas está deshabilitada"
2201
+
2202
+ #: class/frontend-form-post.php:98
2203
+ msgid "You are not allowed to edit"
2204
+ msgstr "No tienes permisos para editar"
2205
+
2206
+ #: class/frontend-form-post.php:110
2207
+ msgid "I don't know how to edit this post, I don't have the form ID"
2208
+ msgstr "No se como editar esta Entrada, no tengo el ID del formulario."
2209
+
2210
+ #: class/frontend-form-post.php:116
2211
+ msgid "You can't edit a post while in pending mode."
2212
+ msgstr "No puede editar una Entrada mientras esta se encuentra pendiente."
2213
+
2214
+ #: class/frontend-form-post.php:184
2215
+ msgid "Invalid email address."
2216
+ msgstr "Dirección de correo inválida."
2217
+
2218
+ #: class/frontend-form-post.php:193
2219
+ msgid ""
2220
+ "You already have an account in our site. Please login to continue.\n"
2221
+ "\n"
2222
+ "Clicking 'OK' will redirect you to the login page and you will lost the form "
2223
+ "data.\n"
2224
+ "Click 'Cancel' to stay at this page."
2225
+ msgstr ""
2226
+ "Ya posee una cuenta en nuestro sitio. Por favor, ingrese para continuar\n"
2227
+ "\n"
2228
+ "Haciendo clic en 'OK' será redirigido a la página de ingreso y perderá la "
2229
+ "información ingresada.\n"
2230
+ "Haciendo clic en 'Cancelar' se mantendrá en esta página."
2231
+
2232
+ #: class/frontend-form-post.php:556
2233
+ msgid "Something went wrong"
2234
+ msgstr "Algo salió mal"
2235
+
2236
+ #: class/payment.php:23 class/payment.php:24
2237
+ msgid "PayPal"
2238
+ msgstr "PayPal"
2239
+
2240
+ #: class/payment.php:28 class/payment.php:29
2241
+ msgid "Bank Payment"
2242
+ msgstr "Pago bancario"
2243
+
2244
+ #: class/payment.php:70
2245
+ msgid "Please select your payment page from admin panel"
2246
+ msgstr "Por favor, seleccione su página de pago en el panel de administración"
2247
+
2248
+ #: class/payment.php:118
2249
+ msgid "Your free package has been activated. Enjoy!"
2250
+ msgstr "¡Su paquete gratuito ha sido activado!"
2251
+
2252
+ #: class/payment.php:120
2253
+ msgid "You already have activated a free package previously."
2254
+ msgstr "Ya has activado un paquete gratuito anteriormente."
2255
+
2256
+ #: class/payment.php:144
2257
+ msgid "Pricing & Plans"
2258
+ msgstr "Precios y planes"
2259
+
2260
+ #: class/payment.php:146
2261
+ msgid "Change Pack"
2262
+ msgstr "Cambiar pack"
2263
+
2264
+ #: class/payment.php:154
2265
+ msgid "Selected Pack "
2266
+ msgstr "Pack seleccionado"
2267
+
2268
+ #: class/payment.php:155
2269
+ msgid "Pack Price "
2270
+ msgstr "Precio del Pack"
2271
+
2272
+ #: class/payment.php:167
2273
+ msgid "Apply Coupon"
2274
+ msgstr "Aplicar cupón"
2275
+
2276
+ #: class/payment.php:171
2277
+ msgid "Have a discount code?"
2278
+ msgstr "¿Tiene un código de descuento?"
2279
+
2280
+ #: class/payment.php:182
2281
+ msgid "Choose Your Payment Method"
2282
+ msgstr "Elija su método de pago."
2283
+
2284
+ #: class/payment.php:219
2285
+ msgid "Proceed"
2286
+ msgstr "Proceder"
2287
+
2288
+ #: class/payment.php:223
2289
+ msgid "No Payment gateway found"
2290
+ msgstr "No se encontró un método de pago."
2291
+
2292
+ #: class/payment.php:354 lib/gateway/bank.php:105
2293
+ msgid "[%s] Payment Received"
2294
+ msgstr "[%s] Pago Recibido"
2295
+
2296
+ #: class/payment.php:355
2297
+ msgid "New payment received at %s"
2298
+ msgstr "Nuevo apgo recibido el %s"
2299
+
2300
+ #: class/post-form-templates/post.php:12
2301
+ #: includes/free/admin/shortcode-builder.php:8
2302
+ msgid "Post Form"
2303
+ msgstr "Formulario de entrada"
2304
+
2305
+ #: class/post-form-templates/post.php:13
2306
+ msgid "Form for creating a blog post."
2307
+ msgstr "Formulario para crear una entrada de blog."
2308
+
2309
+ #: class/render-form.php:76
2310
+ msgid "Really Simple Captcha validation failed"
2311
+ msgstr "Falló la validación del Really Simple Captcha"
2312
+
2313
+ #: class/render-form.php:103 class/render-form.php:114
2314
+ msgid "reCAPTCHA validation failed"
2315
+ msgstr "campo de validación reCAPTCHA"
2316
+
2317
+ #: class/render-form.php:326
2318
+ msgid "Your selected form is no longer available."
2319
+ msgstr "El Formulario seleccionado ya no se encuentra disponible."
2320
+
2321
+ #: class/render-form.php:331
2322
+ msgid "Please make sure you've published your form."
2323
+ msgstr "Por favor, asegúrese de que ha publicado su Formulario."
2324
+
2325
+ #: class/render-form.php:1189 includes/free/edit-profile.php:198
2326
+ #: templates/dashboard/edit-profile.php:36
2327
+ msgid "Strength indicator"
2328
+ msgstr "Indicador de fortaleza"
2329
+
2330
+ #: class/render-form.php:1251 class/render-form.php:1364
2331
+ msgid "-- Select --"
2332
+ msgstr "-- Seleccione --"
2333
+
2334
+ #: class/render-form.php:1306
2335
+ msgid "This field is no longer available."
2336
+ msgstr "Este campo ya no se encuentra disponible."
2337
+
2338
+ #: class/subscription.php:358
2339
+ msgid "Add Subscription"
2340
+ msgstr "Añadir suscripción "
2341
+
2342
+ #: class/subscription.php:359
2343
+ msgid "Add New Subscription"
2344
+ msgstr "Añdir nueva suscripción "
2345
+
2346
+ #: class/subscription.php:361
2347
+ msgid "Edit Subscription"
2348
+ msgstr "Editar suscripción"
2349
+
2350
+ #: class/subscription.php:362
2351
+ msgid "New Subscription"
2352
+ msgstr "Nueva suscripción"
2353
+
2354
+ #: class/subscription.php:363 class/subscription.php:364
2355
+ msgid "View Subscription"
2356
+ msgstr "Ver suscripción"
2357
+
2358
+ #: class/subscription.php:365
2359
+ msgid "Search Subscription"
2360
+ msgstr "Buscar suscripción"
2361
+
2362
+ #: class/subscription.php:366
2363
+ msgid "No Subscription Found"
2364
+ msgstr "Ninguna suscripción encontrada"
2365
+
2366
+ #: class/subscription.php:367
2367
+ msgid "No Subscription Found in Trash"
2368
+ msgstr "Ninguna suscripción en la papelera"
2369
+
2370
+ #: class/subscription.php:368
2371
+ msgid "Parent Subscription"
2372
+ msgstr "Suscripción padre"
2373
+
2374
+ #: class/subscription.php:397
2375
+ msgid "Billing Details"
2376
+ msgstr "Detalles de pago"
2377
+
2378
+ #: class/subscription.php:719 templates/dashboard/subscription.php:6
2379
+ msgid "Package & billing details: "
2380
+ msgstr "Packs y detalles de pago:"
2381
+
2382
+ #: class/subscription.php:743 templates/dashboard/subscription.php:23
2383
+ msgid "Unlimited"
2384
+ msgstr "Ilimitado"
2385
+
2386
+ #: class/subscription.php:796
2387
+ msgid "Please enable force pack and charge posting from admin panel"
2388
+ msgstr ""
2389
+ "Por favor, habilite pago obligatorio y cobro por publicación en el panel de "
2390
+ "administrador"
2391
+
2392
+ #: class/subscription.php:806
2393
+ msgid "Payment is complete"
2394
+ msgstr "El pago ha sido completado"
2395
+
2396
+ #: class/subscription.php:806
2397
+ msgid "Congratulations, your payment has been completed!"
2398
+ msgstr "¡Felicitaciones, su pago ha sido completado!"
2399
+
2400
+ #: class/subscription.php:821
2401
+ msgid "<p><i>You have a subscription pack activated. </i></p>"
2402
+ msgstr "<p><i>Ya tiene un pack de suscripción activo. </i></p>"
2403
+
2404
+ #: class/subscription.php:823
2405
+ msgid "<p><i>To cancel the pack, press the following cancel button</i></p>"
2406
+ msgstr "<p><i>Para cancelar el pack haga clic en el siguiente botón</i></p>"
2407
+
2408
+ #: class/subscription.php:865
2409
+ msgid "Every"
2410
+ msgstr "Cada"
2411
+
2412
+ #: class/subscription.php:869
2413
+ msgid "One time payment"
2414
+ msgstr "Pago único"
2415
+
2416
+ #: class/subscription.php:881
2417
+ msgid "Sign Up"
2418
+ msgstr "Registro"
2419
+
2420
+ #: class/subscription.php:886
2421
+ msgid "Buy Now"
2422
+ msgstr "Comprar ahora"
2423
+
2424
+ #: class/subscription.php:942
2425
+ msgid "There is a <strong>%s</strong> charge to add a new post."
2426
+ msgstr "Publicar una entrada tiene un valor de <strong>%s</strong>"
2427
+
2428
+ #: class/subscription.php:961
2429
+ msgid "You must <a href=\"%s\">purchase a pack</a> before posting"
2430
+ msgstr "Debe <a href=\"%s\">comprar un pack</a> antes de publicar"
2431
+
2432
+ #: class/transactions-list-table.php:13
2433
+ msgid "transaction"
2434
+ msgstr "transacción"
2435
+
2436
+ #: class/transactions-list-table.php:14
2437
+ msgid "transactions"
2438
+ msgstr "transacciones"
2439
+
2440
+ #: class/transactions-list-table.php:40
2441
+ msgid "ID"
2442
+ msgstr "Id"
2443
+
2444
+ #: class/transactions-list-table.php:41 templates/dashboard/posts.php:75
2445
+ #: templates/dashboard.php:28
2446
+ msgid "Status"
2447
+ msgstr "Estado"
2448
+
2449
+ #: class/transactions-list-table.php:42
2450
+ msgid "User"
2451
+ msgstr "Usuario"
2452
+
2453
+ #: class/transactions-list-table.php:44
2454
+ msgid "Post ID"
2455
+ msgstr "Id de la Entrada"
2456
+
2457
+ #: class/transactions-list-table.php:45
2458
+ msgid "Pack ID"
2459
+ msgstr "Id del Pack"
2460
+
2461
+ #: class/transactions-list-table.php:46
2462
+ msgid "Gateway"
2463
+ msgstr "Método"
2464
+
2465
+ #: class/transactions-list-table.php:47
2466
+ msgid "Payer"
2467
+ msgstr "Comprador"
2468
+
2469
+ #: class/transactions-list-table.php:49
2470
+ msgid "Trans ID"
2471
+ msgstr "Trans ID"
2472
+
2473
+ #: class/transactions-list-table.php:50 includes/free/form-element.php:12
2474
+ msgid "Date"
2475
+ msgstr "Fecha"
2476
+
2477
+ #: class/transactions-list-table.php:86 wpuf-functions.php:69
2478
+ msgid "Pending"
2479
+ msgstr "Pendiente"
2480
+
2481
+ #: class/transactions-list-table.php:109
2482
+ msgid "Accept"
2483
+ msgstr "Aceptar"
2484
+
2485
+ #: class/transactions-list-table.php:110 class/transactions-list-table.php:171
2486
+ msgid "Reject"
2487
+ msgstr "Rechazar"
2488
+
2489
+ #: class/transactions-list-table.php:159
2490
+ msgid "No transactions found."
2491
+ msgstr "No se encontraron transacciones."
2492
+
2493
+ #: class/upload.php:165 wpuf-functions.php:706
2494
+ msgid "Caption"
2495
+ msgstr "Subtítulo"
2496
+
2497
+ #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:46
2498
+ #: includes/free/form-element.php:472
2499
+ msgid "Conditional Logic"
2500
+ msgstr "Lógica Condicional"
2501
+
2502
+ #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:65
2503
+ #: includes/free/form-element.php:11
2504
+ msgid "Repeat Field"
2505
+ msgstr "Repetir Campo"
2506
+
2507
+ #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:81
2508
+ msgid "Date / Time"
2509
+ msgstr "Fecha / Hora"
2510
+
2511
+ #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:97
2512
+ #: includes/free/form-element.php:13
2513
+ msgid "File Upload"
2514
+ msgstr "Subir archivo"
2515
+
2516
+ #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:113
2517
+ #: includes/free/form-element.php:15
2518
+ msgid "Country List"
2519
+ msgstr "Lista de paíces"
2520
+
2521
+ #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:129
2522
+ #: includes/free/form-element.php:16
2523
+ msgid "Numeric Field"
2524
+ msgstr "Campo numérico"
2525
+
2526
+ #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:145
2527
+ #: includes/free/form-element.php:17
2528
+ msgid "Address Field"
2529
+ msgstr "Campo de dirección"
2530
+
2531
+ #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:161
2532
+ #: includes/free/form-element.php:18
2533
+ msgid "Step Start"
2534
+ msgstr "Paso incial"
2535
+
2536
+ #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:179
2537
+ msgid "Google Map"
2538
+ msgstr "Google Map"
2539
+
2540
+ #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:195
2541
+ msgid "Recaptcha"
2542
+ msgstr "Recaptcha"
2543
+
2544
+ #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:210
2545
+ #: includes/free/form-element.php:31
2546
+ msgid "Really Simple Captcha"
2547
+ msgstr "Really Simple Captcha"
2548
+
2549
+ #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:225
2550
+ #: includes/free/form-element.php:32
2551
+ msgid "Action Hook"
2552
+ msgstr "Action Hook"
2553
+
2554
+ #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:240
2555
+ msgid "Term & Conditions"
2556
+ msgstr "Términos y Condiciones"
2557
+
2558
+ #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:255
2559
+ msgid "Ratings"
2560
+ msgstr "Calificaciones"
2561
+
2562
+ #: includes/free/admin/shortcode-builder.php:5
2563
+ msgid "Select a form to insert"
2564
+ msgstr "Seleccionar un formulario a insertar"
2565
+
2566
+ #: includes/free/admin/shortcode-builder.php:9 includes/free/loader.php:76
2567
+ msgid "Registration Form"
2568
+ msgstr "Formulario de Registro"
2569
+
2570
+ #: includes/free/admin/shortcode-builder.php:13
2571
+ msgid "Form Type"
2572
+ msgstr "Tipo de formulario"
2573
+
2574
+ #: includes/free/admin/shortcode-builder.php:68
2575
+ msgid "Insert Form"
2576
+ msgstr "Insertar formulario"
2577
+
2578
+ #: includes/free/admin/shortcode-button.php:50
2579
+ msgid "Add a Form"
2580
+ msgstr "Añadir un formulario"
2581
+
2582
+ #: includes/free/admin/shortcode-button.php:51
2583
+ msgid " Add Form"
2584
+ msgstr "Añadir formulario"
2585
+
2586
+ #: includes/free/edit-profile.php:27 includes/free/edit-user.php:37
2587
+ #: templates/unauthorized.php:3
2588
+ msgid "This page is restricted. Please %s to view this page."
2589
+ msgstr "Esta página está restringida. Por favor %s para verla."
2590
+
2591
+ #: includes/free/edit-profile.php:66
2592
+ msgid "<strong>Success</strong>: Profile updated"
2593
+ msgstr "<strong>éxito</strong>: Perfil actualizado"
2594
+
2595
+ #: includes/free/edit-profile.php:96 includes/free/edit-user.php:92
2596
+ #: includes/free/edit-user.php:144 templates/login-form.php:21
2597
+ msgid "Username"
2598
+ msgstr "Nombre de Usuario"
2599
+
2600
+ #: includes/free/edit-profile.php:97
2601
+ msgid "Usernames cannot be changed."
2602
+ msgstr "El nombre de usuario no se puede modificar."
2603
+
2604
+ #: includes/free/edit-profile.php:100
2605
+ msgid "First Name"
2606
+ msgstr "Nombre"
2607
+
2608
+ #: includes/free/edit-profile.php:105
2609
+ msgid "Last Name"
2610
+ msgstr "Apellido"
2611
+
2612
+ #: includes/free/edit-profile.php:110
2613
+ msgid "Nickname"
2614
+ msgstr "Sobrenombre"
2615
+
2616
+ #: includes/free/edit-profile.php:110 includes/free/edit-profile.php:151
2617
+ msgid "(required)"
2618
+ msgstr "(requerido)"
2619
+
2620
+ #: includes/free/edit-profile.php:115
2621
+ msgid "Display to Public as"
2622
+ msgstr "Mostrar públicamente como"
2623
+
2624
+ #: includes/free/edit-profile.php:147
2625
+ msgid "Contact Info"
2626
+ msgstr "Información de contacto"
2627
+
2628
+ #: includes/free/edit-profile.php:151
2629
+ msgid "E-mail"
2630
+ msgstr "Correo"
2631
+
2632
+ #: includes/free/edit-profile.php:156
2633
+ msgid "Website"
2634
+ msgstr "Sitio Web"
2635
+
2636
+ #: includes/free/edit-profile.php:174
2637
+ msgid "About Yourself"
2638
+ msgstr "Acerca de used"
2639
+
2640
+ #: includes/free/edit-profile.php:178
2641
+ msgid "Biographical Info"
2642
+ msgstr "Información biográfica"
2643
+
2644
+ #: includes/free/edit-profile.php:180
2645
+ msgid ""
2646
+ "Share a little biographical information to fill out your profile. This may "
2647
+ "be shown publicly."
2648
+ msgstr ""
2649
+ "Comparta su información biográfica para completar su perfil. Esta podría "
2650
+ "mostrarse públicamente."
2651
+
2652
+ #: includes/free/edit-profile.php:183 templates/dashboard/edit-profile.php:33
2653
+ msgid "New Password"
2654
+ msgstr "Nueva Contraseña"
2655
+
2656
+ #: includes/free/edit-profile.php:189
2657
+ msgid "Confirm Password"
2658
+ msgstr "Confirme su contraseña"
2659
+
2660
+ #: includes/free/edit-profile.php:191
2661
+ msgid "Type your new password again."
2662
+ msgstr "Escriba su contraseña otra vez."
2663
+
2664
+ #: includes/free/edit-profile.php:196
2665
+ msgid "Password Strength"
2666
+ msgstr "Fuerza de la contraseña"
2667
+
2668
+ #: includes/free/edit-profile.php:222 includes/free/form-element.php:344
2669
+ #: templates/dashboard/edit-profile.php:63
2670
+ msgid "Update Profile"
2671
+ msgstr "Actualizar perfil"
2672
+
2673
+ #: includes/free/edit-profile.php:241
2674
+ msgid "WPUF Post Lock"
2675
+ msgstr "WPUF bloqueo de entradas"
2676
+
2677
+ #: includes/free/edit-profile.php:244
2678
+ msgid "Lock Post:"
2679
+ msgstr "Bloquear entrada:"
2680
+
2681
+ #: includes/free/edit-profile.php:250
2682
+ msgid "Lock user from creating new post."
2683
+ msgstr "Prohibir al usuario de crear nuevas entradas."
2684
+
2685
+ #: includes/free/edit-profile.php:255
2686
+ msgid "Lock Reason:"
2687
+ msgstr "Razón del bloqueo:"
2688
+
2689
+ #: includes/free/edit-profile.php:285
2690
+ msgid "Post Count:"
2691
+ msgstr "Número de entradas:"
2692
+
2693
+ #: includes/free/edit-profile.php:291
2694
+ msgid "Validity:"
2695
+ msgstr "Validación:"
2696
+
2697
+ #: includes/free/edit-user.php:23
2698
+ msgid "User doesn't exists"
2699
+ msgstr "El usuario no existe"
2700
+
2701
+ #: includes/free/edit-user.php:34
2702
+ msgid "You don't have permission for this purpose"
2703
+ msgstr "No tiene permiso para esta acción"
2704
+
2705
+ #: includes/free/edit-user.php:76
2706
+ msgid "User Deleted"
2707
+ msgstr "Usuario eliminado"
2708
+
2709
+ #: includes/free/edit-user.php:119 includes/free/edit-user.php:177
2710
+ msgid "Add New User"
2711
+ msgstr "Añadir un nuevo usuario"
2712
+
2713
+ #: includes/free/edit-user.php:132
2714
+ msgid "User Added"
2715
+ msgstr "Usuario añadido"
2716
+
2717
+ #: includes/free/edit-user.php:160
2718
+ msgid "Role"
2719
+ msgstr "Rol"
2720
+
2721
+ #: includes/free/edit-user.php:204
2722
+ msgid "<strong>ERROR</strong>: Please enter a username"
2723
+ msgstr "<strong>ERROR</strong>: Por favor, ingrese su nombre de usuario"
2724
+
2725
+ #: includes/free/edit-user.php:206
2726
+ msgid ""
2727
+ "<strong>ERROR</strong>: This username is invalid because it uses illegal "
2728
+ "characters. Please enter a valid username"
2729
+ msgstr ""
2730
+ "<strong>ERROR</strong>: Este nombre de usuario es inválido porque contiene "
2731
+ "carácteres no permitidos . Por favor ingrese un nombre de usuario válido"
2732
+
2733
+ #: includes/free/edit-user.php:209
2734
+ msgid ""
2735
+ "<strong>ERROR</strong>: This username is already registered, please choose "
2736
+ "another one"
2737
+ msgstr ""
2738
+ "<strong>ERROR</strong>: Este nombre de usuario ya se encuentra registrado, "
2739
+ "por favor elija otro"
2740
+
2741
+ #: includes/free/edit-user.php:214
2742
+ msgid "<strong>ERROR</strong>: Please type your e-mail address"
2743
+ msgstr "<strong>ERROR</strong>: Por favor, ingrese su dirección de correo"
2744
+
2745
+ #: includes/free/edit-user.php:216
2746
+ msgid "<strong>ERROR</strong>: The email address isn&#8217;t correct"
2747
+ msgstr "<strong>ERROR</strong>: La dirección de correo ingresada no es válida"
2748
+
2749
+ #: includes/free/edit-user.php:219
2750
+ msgid ""
2751
+ "<strong>ERROR</strong>: This email is already registered, please choose "
2752
+ "another one"
2753
+ msgstr ""
2754
+ "<strong>ERROR</strong>: Este correo ya se encuentra registrado, por favor "
2755
+ "elija otro"
2756
+
2757
+ #: includes/free/edit-user.php:242
2758
+ msgid ""
2759
+ "<strong>ERROR</strong>: Couldn&#8217;t register you... please contact the <a "
2760
+ "href=\"mailto:%s\">webmaster</a> !"
2761
+ msgstr ""
2762
+ "<strong>ERROR</strong>: Ocurrió un error al registrar... Por favor contacte "
2763
+ "al <a href=\"mailto:%s\">administrador</a> "
2764
+
2765
+ #: includes/free/form-element.php:6 includes/free/form-element.php:26
2766
+ msgid "Click to add to the editor"
2767
+ msgstr "Clic para añadir al editor"
2768
+
2769
+ #: includes/free/form-element.php:14
2770
+ msgid "Google Maps"
2771
+ msgstr "Google Maps"
2772
+
2773
+ #: includes/free/form-element.php:30
2774
+ msgid "reCaptcha"
2775
+ msgstr "reCaptcha"
2776
+
2777
+ #: includes/free/form-element.php:33
2778
+ msgid "Term &amp; Conditions"
2779
+ msgstr "Términos y Condiciones"
2780
+
2781
+ #: includes/free/form-element.php:121
2782
+ msgid "Send Email to Author After Exceeding Post Expiration Time"
2783
+ msgstr "Enviar un correo al autor despús de que la entrada caduque."
2784
+
2785
+ #: includes/free/form-element.php:146 includes/free/form-element.php:150
2786
+ msgid "Enable Multistep"
2787
+ msgstr "Habilitar multi paso"
2788
+
2789
+ #: includes/free/form-element.php:153
2790
+ msgid "If checked, form will be displayed in frontend in multiple steps"
2791
+ msgstr ""
2792
+ "Si se elije, el formulario será mostrado en el frontend en múltiples pasos"
2793
+
2794
+ #: includes/free/form-element.php:157
2795
+ msgid "Multistep Progressbar Type"
2796
+ msgstr "Barra de estado multi paso"
2797
+
2798
+ #: includes/free/form-element.php:167
2799
+ msgid "Choose how you want the progressbar"
2800
+ msgstr "Elija como desea la barra de progreso"
2801
+
2802
+ #: includes/free/form-element.php:197
2803
+ msgid "New post created"
2804
+ msgstr "Nueva entrada creada"
2805
+
2806
+ #: includes/free/form-element.php:202
2807
+ msgid "A post has been edited"
2808
+ msgstr "La entrada ha sido editada"
2809
+
2810
+ #: includes/free/form-element.php:208
2811
+ msgid "New Post Notificatoin"
2812
+ msgstr "Nueva notificación de entrada"
2813
+
2814
+ #: includes/free/form-element.php:216 includes/free/form-element.php:253
2815
+ msgid "Enable post notification"
2816
+ msgstr "Habilitar notificación de entradas"
2817
+
2818
+ #: includes/free/form-element.php:222 includes/free/form-element.php:259
2819
+ msgid "To"
2820
+ msgstr "Para"
2821
+
2822
+ #: includes/free/form-element.php:230 includes/free/form-element.php:264
2823
+ msgid "Subject"
2824
+ msgstr "Asunto"
2825
+
2826
+ #: includes/free/form-element.php:236 includes/free/form-element.php:269
2827
+ msgid "Message"
2828
+ msgstr "Mensaje"
2829
+
2830
+ #: includes/free/form-element.php:244
2831
+ msgid "Update Post Notificatoin"
2832
+ msgstr "Actualizar notificaciones de entradas"
2833
+
2834
+ #: includes/free/form-element.php:276
2835
+ msgid "You may use in to, subject & message:"
2836
+ msgstr "Quizás desee usar en Para, Asunto y Mensaje:"
2837
+
2838
+ #: includes/free/form-element.php:301
2839
+ msgid "Toggle All"
2840
+ msgstr "Cambiar todos"
2841
+
2842
+ #: includes/free/form-element.php:305
2843
+ msgid "Click on a form element to add to the editor"
2844
+ msgstr "Cliquee un elemento del formulario para añadirlo al editor"
2845
+
2846
+ #: includes/free/form-element.php:339
2847
+ msgid "Registration successful"
2848
+ msgstr "Registro completado"
2849
+
2850
+ #: includes/free/form-element.php:340
2851
+ msgid "Profile updated successfully"
2852
+ msgstr "Perfil actualizado correctamente"
2853
+
2854
+ #: includes/free/form-element.php:343
2855
+ msgid "Register"
2856
+ msgstr "Registro"
2857
+
2858
+ #: includes/free/form-element.php:352
2859
+ msgid "Enable Email Verfication"
2860
+ msgstr "Habilitar la verificación de correo"
2861
+
2862
+ #: includes/free/form-element.php:360
2863
+ msgid "New User Role"
2864
+ msgstr "Nuevo rol de usuario"
2865
+
2866
+ #: includes/free/form-element.php:396
2867
+ msgid "Registration success message"
2868
+ msgstr "Mensaje de éxito al registrarse"
2869
+
2870
+ #: includes/free/form-element.php:403
2871
+ msgid "Update profile message"
2872
+ msgstr "Actualizar el mensaje de perfil"
2873
+
2874
+ #: includes/free/form-element.php:432
2875
+ msgid "Submit Button text"
2876
+ msgstr "Texto del botón Enviar."
2877
+
2878
+ #: includes/free/form-element.php:439
2879
+ msgid "Update Button text"
2880
+ msgstr "Texto del botón Actualizar"
2881
+
2882
+ #: includes/free/loader.php:71 includes/free/loader.php:100
2883
+ msgid "Coupons"
2884
+ msgstr "Cupones"
2885
+
2886
+ #: includes/free/loader.php:80
2887
+ msgid ""
2888
+ "Registration form builder is a two way form which can be used both for "
2889
+ "<strong>user registration</strong> and <strong>profile editing</strong>."
2890
+ msgstr ""
2891
+ "El constructor de formularios de registro puede ser usado para el "
2892
+ "<strong>registro de usuarios</strong> y la <strong>edición de perfil</"
2893
+ "strong>."
2894
+
2895
+ #: includes/free/loader.php:84
2896
+ msgid "Users can also register themselves by using a subscription pack."
2897
+ msgstr "Los usuarios también pueden registrarse usando el pack de suscripción"
2898
+
2899
+ #: includes/free/loader.php:88 includes/free/loader.php:108
2900
+ msgid "This feature is only available in the Pro Version."
2901
+ msgstr "Esta función solo se encuentra disponible en la versión Pro."
2902
+
2903
+ #: includes/free/loader.php:92 includes/free/loader.php:112
2904
+ msgid "Upgrade to Pro Version"
2905
+ msgstr "Actualizar a la versión Pro"
2906
+
2907
+ #: includes/free/loader.php:104
2908
+ msgid "Use Coupon codes for subscription for discounts."
2909
+ msgstr "Usar un cón de cupón para descuentos en suscripciones."
2910
+
2911
+ #: includes/free/loader.php:137
2912
+ msgid "Pro Feature"
2913
+ msgstr "Característica Pro"
2914
+
2915
+ #: includes/free/loader.php:153
2916
+ msgid "Upgrade to Pro"
2917
+ msgstr "Actualizar a Pro"
2918
+
2919
+ #: includes/free/post-form-templates/woocommerce.php:12
2920
+ msgid "WooCommerce Product"
2921
+ msgstr "Producto WooCommerce"
2922
+
2923
+ #: includes/free/post-form-templates/woocommerce.php:13
2924
+ msgid "Create a simple product form for WooCommerce."
2925
+ msgstr "Crear un formulario para un producto simple para WooCommerce."
2926
+
2927
+ #: includes/free/subscription.php:12
2928
+ msgid "Enable Recurring Payment"
2929
+ msgstr "Habilitar pagos recurrentes"
2930
+
2931
+ #: lib/class.settings-api.php:364
2932
+ msgid "Choose File"
2933
+ msgstr "Elija un archivo"
2934
+
2935
+ #: lib/gateway/bank.php:29
2936
+ msgid "Bank Instruction"
2937
+ msgstr "Instrucciones bancarias"
2938
+
2939
+ #: lib/gateway/bank.php:36
2940
+ msgid "Bank Payment Success Page"
2941
+ msgstr "Página de éxito pago bancario"
2942
+
2943
+ #: lib/gateway/bank.php:83
2944
+ msgid "[%s] New Bank Order Received"
2945
+ msgstr "[%s] Nueva orden de pago bancario recibido"
2946
+
2947
+ #: lib/gateway/bank.php:84
2948
+ msgid "New bank order received at %s, please check it out: %s"
2949
+ msgstr "Nueva orden del banco recibida el %s, por favor revíselo: %s"
2950
+
2951
+ #: lib/gateway/bank.php:106
2952
+ msgid "Hello %s,"
2953
+ msgstr "Hola %s,"
2954
+
2955
+ #: lib/gateway/bank.php:107
2956
+ msgid "We have received your bank payment."
2957
+ msgstr "Hemos recibido su pago bancario."
2958
+
2959
+ #: lib/gateway/bank.php:108
2960
+ msgid "Thanks for being with us."
2961
+ msgstr "Gracias por elegirnos."
2962
+
2963
+ #: lib/gateway/paypal.php:60
2964
+ msgid "Subscription %s at %s"
2965
+ msgstr "Suscripción %s en %s"
2966
+
2967
+ #: lib/gateway/paypal.php:91
2968
+ msgid "PayPal Email"
2969
+ msgstr "Correo de PayPal"
2970
+
2971
+ #: lib/gateway/paypal.php:96
2972
+ msgid "PayPal Instruction"
2973
+ msgstr "Instrucciones de PayPal"
2974
+
2975
+ #: lib/gateway/paypal.php:103
2976
+ msgid "PayPal API username"
2977
+ msgstr "Usuario de la API de PayPal"
2978
+
2979
+ #: lib/gateway/paypal.php:107
2980
+ msgid "PayPal API password"
2981
+ msgstr "Contraseña de la API de PayPal"
2982
+
2983
+ #: lib/gateway/paypal.php:111
2984
+ msgid "PayPal API signature"
2985
+ msgstr "Firma de la API de PayPal"
2986
+
2987
+ #: templates/dashboard/dashboard.php:5
2988
+ msgid "Hello %1$s, (not %1$s? <a href=\"%2$s\">Sign out</a>)"
2989
+ msgstr "Hola %1$s, (¿no eres %1$s? <a href=\"%2$s\">Cerrar la sesión</a>)"
2990
+
2991
+ #: templates/dashboard/dashboard.php:13
2992
+ msgid ""
2993
+ "From your account dashboard you can view your dashboard, manage your <a href="
2994
+ "\"%1$s\">posts</a>, <a href=\"%2$s\">subscription</a> and <a href=\"%3$s"
2995
+ "\">edit your password and profile</a>."
2996
+ msgstr ""
2997
+ "Desde su panel de control puede ver sus datos, administrar sus <a href=\"%1$s"
2998
+ "\">entradas</a>,<a href=\"%2$s\">suscripciones</a> y <a href=\"%3$s\">editar "
2999
+ "su contraseña y perfil</a>."
3000
+
3001
+ #: templates/dashboard/edit-profile.php:5
3002
+ msgid "Profile updated successfully!"
3003
+ msgstr "¡Perfil creado correctamente!"
3004
+
3005
+ #: templates/dashboard/edit-profile.php:6
3006
+ msgid "Something went wrong!"
3007
+ msgstr "¡Algo salió mal!"
3008
+
3009
+ #: templates/dashboard/edit-profile.php:9
3010
+ msgid "First Name "
3011
+ msgstr "Nombre"
3012
+
3013
+ #: templates/dashboard/edit-profile.php:13
3014
+ msgid "Last Name "
3015
+ msgstr "Apellido"
3016
+
3017
+ #: templates/dashboard/edit-profile.php:19
3018
+ msgid "Email Address "
3019
+ msgstr "Dirección de correo"
3020
+
3021
+ #: templates/dashboard/edit-profile.php:24
3022
+ msgid "Password Change"
3023
+ msgstr "Cambio de contraseña"
3024
+
3025
+ #: templates/dashboard/edit-profile.php:26
3026
+ msgid "If you want to unchanged the password then just leave this section."
3027
+ msgstr "Si no desea cambiar su contraseña, deje esta sección sin completar."
3028
+
3029
+ #: templates/dashboard/edit-profile.php:29
3030
+ msgid "Current Password"
3031
+ msgstr "Contraseña actual"
3032
+
3033
+ #: templates/dashboard/edit-profile.php:54
3034
+ msgid "Confirm New Password"
3035
+ msgstr "Confirme su nueva contraseña"
3036
+
3037
+ #: templates/dashboard/posts.php:54 templates/dashboard.php:8
3038
+ msgid "You have created <span>%d</span> %s"
3039
+ msgstr "Ha creado <span>%d</span> %s"
3040
+
3041
+ #: templates/dashboard/posts.php:104 templates/dashboard.php:57
3042
+ msgid "No Image"
3043
+ msgstr "Sin imagen"
3044
+
3045
+ #: templates/dashboard/posts.php:118 templates/dashboard.php:71
3046
+ msgid "Permalink to %s"
3047
+ msgstr "Enlace a %s"
3048
+
3049
+ #: templates/dashboard/posts.php:134 templates/dashboard.php:88
3050
+ msgid "Pay Now"
3051
+ msgstr "Pagar Ahora"
3052
+
3053
+ #: templates/dashboard/posts.php:178 templates/dashboard.php:132
3054
+ msgid "&laquo;"
3055
+ msgstr "&laquo;"
3056
+
3057
+ #: templates/dashboard/posts.php:179 templates/dashboard.php:133
3058
+ msgid "&raquo;"
3059
+ msgstr "&raquo;"
3060
+
3061
+ #: templates/dashboard/posts.php:193 templates/dashboard.php:146
3062
+ msgid "No %s found"
3063
+ msgstr "No se encontró %s"
3064
+
3065
+ #: templates/dashboard/subscription.php:54
3066
+ msgid "<p><i>To cancel the pack, press the following cancel button.</i></p>"
3067
+ msgstr "<p><i>Para cancelar el pack, haga clic en el botón cancelar.</i></p>"
3068
+
3069
+ #: templates/dashboard.php:4
3070
+ msgid "%s's Dashboard"
3071
+ msgstr "Panel de control de %s"
3072
+
3073
+ #: templates/logged-in.php:8
3074
+ msgid "Hello %s"
3075
+ msgstr "Hola %s"
3076
+
3077
+ #: templates/logged-in.php:11
3078
+ msgid "You are currently logged in! %s?"
3079
+ msgstr "Eres tu %s?"
3080
+
3081
+ #: templates/login-form.php:25
3082
+ msgid "Password"
3083
+ msgstr "Contraseña"
3084
+
3085
+ #: templates/login-form.php:33
3086
+ msgid "Remember Me"
3087
+ msgstr "Recúerdame"
3088
+
3089
+ #: templates/login-form.php:37
3090
+ msgid "Log In"
3091
+ msgstr "Inicio"
3092
+
3093
+ #: templates/lost-pass-form.php:14
3094
+ msgid "Username or E-mail:"
3095
+ msgstr "Nombre de usuario o Correo"
3096
+
3097
+ #: templates/lost-pass-form.php:21
3098
+ msgid "Get New Password"
3099
+ msgstr "Obtener una nueva contraseña"
3100
+
3101
+ #: templates/reset-pass-form.php:14
3102
+ msgid "New password"
3103
+ msgstr "Nueva contraseña"
3104
+
3105
+ #: templates/reset-pass-form.php:19
3106
+ msgid "Confirm new password"
3107
+ msgstr "Confirmar nueva contraseña"
3108
+
3109
+ #: templates/reset-pass-form.php:26
3110
+ msgid "Reset Password"
3111
+ msgstr "Resetear Contraseña"
3112
+
3113
+ #: wpuf-functions.php:27
3114
+ msgid "Live"
3115
+ msgstr "Conectado"
3116
+
3117
+ #: wpuf-functions.php:31
3118
+ msgid "Offline"
3119
+ msgstr "Desconectado"
3120
+
3121
+ #: wpuf-functions.php:35
3122
+ msgid "Awaiting Approval"
3123
+ msgstr "Esperando Aprobación"
3124
+
3125
+ #: wpuf-functions.php:38 wpuf-functions.php:72
3126
+ msgid "Scheduled"
3127
+ msgstr "Programado"
3128
+
3129
+ #: wpuf-functions.php:42
3130
+ msgid "Private"
3131
+ msgstr "Privado"
3132
+
3133
+ #: wpuf-functions.php:213
3134
+ msgid "-- select --"
3135
+ msgstr "-- Seleccione --"
3136
+
3137
+ #: wpuf-functions.php:404
3138
+ msgid "Images"
3139
+ msgstr "Imágenes"
3140
+
3141
+ #: wpuf-functions.php:405
3142
+ msgid "Audio"
3143
+ msgstr "Audio"
3144
+
3145
+ #: wpuf-functions.php:406
3146
+ msgid "Videos"
3147
+ msgstr "Videos"
3148
+
3149
+ #: wpuf-functions.php:407
3150
+ msgid "PDF"
3151
+ msgstr "PDF"
3152
+
3153
+ #: wpuf-functions.php:408
3154
+ msgid "Office Documents"
3155
+ msgstr "Documentos de Office"
3156
+
3157
+ #: wpuf-functions.php:409
3158
+ msgid "Zip Archives"
3159
+ msgstr "Archivos ZIP"
3160
+
3161
+ #: wpuf-functions.php:410
3162
+ msgid "Executable Files"
3163
+ msgstr "Archivos ejecutables"
3164
+
3165
+ #: wpuf-functions.php:411
3166
+ msgid "CSV"
3167
+ msgstr "CSV"
3168
+
3169
+ #: wpuf-functions.php:1342
3170
+ msgid "Posts"
3171
+ msgstr "Entradas"
3172
+
3173
+ #: wpuf-functions.php:1344
3174
+ msgid "Edit Profile"
3175
+ msgstr "Editar Perfil"
3176
+
3177
+ #: wpuf-functions.php:1448
3178
+ msgid "United Arab Emirates Dirham"
3179
+ msgstr "Emiratos árabes Unidos Dirham"
3180
+
3181
+ #: wpuf-functions.php:1449
3182
+ msgid "Australian Dollars"
3183
+ msgstr "Dólar Australiano"
3184
+
3185
+ #: wpuf-functions.php:1450
3186
+ msgid "Argentine Peso"
3187
+ msgstr "Paso Argentino"
3188
+
3189
+ #: wpuf-functions.php:1451
3190
+ msgid "Bangladeshi Taka"
3191
+ msgstr "Bangladeshi Taka"
3192
+
3193
+ #: wpuf-functions.php:1452
3194
+ msgid "Brazilian Real"
3195
+ msgstr "Real Brasileño"
3196
+
3197
+ #: wpuf-functions.php:1453
3198
+ msgid "Bulgarian Lev"
3199
+ msgstr "Bulgarian Lev"
3200
+
3201
+ #: wpuf-functions.php:1454
3202
+ msgid "Canadian Dollars"
3203
+ msgstr "Dólar Canadiense"
3204
+
3205
+ #: wpuf-functions.php:1455
3206
+ msgid "Chilean Peso"
3207
+ msgstr "Peso Chileno"
3208
+
3209
+ #: wpuf-functions.php:1456
3210
+ msgid "Chinese Yuan"
3211
+ msgstr "Yuan Chino"
3212
+
3213
+ #: wpuf-functions.php:1457
3214
+ msgid "Colombian Peso"
3215
+ msgstr "Peso Colombiano"
3216
+
3217
+ #: wpuf-functions.php:1458
3218
+ msgid "Czech Koruna"
3219
+ msgstr "Czech Koruna"
3220
+
3221
+ #: wpuf-functions.php:1459
3222
+ msgid "Danish Krone"
3223
+ msgstr "Danish Krone"
3224
+
3225
+ #: wpuf-functions.php:1460
3226
+ msgid "Dominican Peso"
3227
+ msgstr "Peso Dominicano"
3228
+
3229
+ #: wpuf-functions.php:1461
3230
+ msgid "Algerian Dinar"
3231
+ msgstr "Dinar Argelio"
3232
+
3233
+ #: wpuf-functions.php:1462
3234
+ msgid "Euros"
3235
+ msgstr "Euros"
3236
+
3237
+ #: wpuf-functions.php:1463
3238
+ msgid "Hong Kong Dollar"
3239
+ msgstr "Dólar de Hong Kong"
3240
+
3241
+ #: wpuf-functions.php:1464
3242
+ msgid "Croatia kuna"
3243
+ msgstr "Croatia kuna"
3244
+
3245
+ #: wpuf-functions.php:1465
3246
+ msgid "Hungarian Forint"
3247
+ msgstr "Hungarian Forint"
3248
+
3249
+ #: wpuf-functions.php:1466
3250
+ msgid "Icelandic krona"
3251
+ msgstr "Icelandic krona"
3252
+
3253
+ #: wpuf-functions.php:1467
3254
+ msgid "Indonesia Rupiah"
3255
+ msgstr "Rupia Indonesa"
3256
+
3257
+ #: wpuf-functions.php:1468
3258
+ msgid "Indian Rupee"
3259
+ msgstr "Rupia India"
3260
+
3261
+ #: wpuf-functions.php:1469
3262
+ msgid "Nepali Rupee"
3263
+ msgstr "Rupia de Nepal"
3264
+
3265
+ #: wpuf-functions.php:1470
3266
+ msgid "Israeli Shekel"
3267
+ msgstr "Israeli Shekel"
3268
+
3269
+ #: wpuf-functions.php:1471
3270
+ msgid "Japanese Yen"
3271
+ msgstr "Yen Japonés"
3272
+
3273
+ #: wpuf-functions.php:1472
3274
+ msgid "Lao Kip"
3275
+ msgstr "Lao Kip"
3276
+
3277
+ #: wpuf-functions.php:1473
3278
+ msgid "South Korean Won"
3279
+ msgstr "Won Sur Coreano"
3280
+
3281
+ #: wpuf-functions.php:1474
3282
+ msgid "Malaysian Ringgits"
3283
+ msgstr "Malaysian Ringgits"
3284
+
3285
+ #: wpuf-functions.php:1475
3286
+ msgid "Mexican Peso"
3287
+ msgstr "Peso Mexicano"
3288
+
3289
+ #: wpuf-functions.php:1476
3290
+ msgid "Nigerian Naira"
3291
+ msgstr "Nigerian Naira"
3292
+
3293
+ #: wpuf-functions.php:1477
3294
+ msgid "Norwegian Krone"
3295
+ msgstr "Corona Noruega"
3296
+
3297
+ #: wpuf-functions.php:1478
3298
+ msgid "New Zealand Dollar"
3299
+ msgstr "Dólar de Nueva Zelanda"
3300
+
3301
+ #: wpuf-functions.php:1479
3302
+ msgid "Omani Rial"
3303
+ msgstr "Omani Rial"
3304
+
3305
+ #: wpuf-functions.php:1480
3306
+ msgid "Iranian Rial"
3307
+ msgstr "Iranian Rial"
3308
+
3309
+ #: wpuf-functions.php:1481
3310
+ msgid "Pakistani Rupee"
3311
+ msgstr "Rupia Pakistani"
3312
+
3313
+ #: wpuf-functions.php:1482
3314
+ msgid "Paraguayan Guaraní"
3315
+ msgstr "Guaraní Paraguayo"
3316
+
3317
+ #: wpuf-functions.php:1483
3318
+ msgid "Philippine Pesos"
3319
+ msgstr "Peso Filipino"
3320
+
3321
+ #: wpuf-functions.php:1484
3322
+ msgid "Polish Zloty"
3323
+ msgstr "Polish Zloty"
3324
+
3325
+ #: wpuf-functions.php:1485
3326
+ msgid "Pounds Sterling"
3327
+ msgstr "Libra Esterlina"
3328
+
3329
+ #: wpuf-functions.php:1486
3330
+ msgid "Romanian Leu"
3331
+ msgstr "Romanian Leu"
3332
+
3333
+ #: wpuf-functions.php:1487
3334
+ msgid "Russian Ruble"
3335
+ msgstr "Russian Ruble"
3336
+
3337
+ #: wpuf-functions.php:1488
3338
+ msgid "Saudi Riyal"
3339
+ msgstr "Saudi Riyal"
3340
+
3341
+ #: wpuf-functions.php:1489
3342
+ msgid "Singapore Dollar"
3343
+ msgstr "Dólar de Singapur"
3344
+
3345
+ #: wpuf-functions.php:1490
3346
+ msgid "South African rand"
3347
+ msgstr "South African rand"
3348
+
3349
+ #: wpuf-functions.php:1491
3350
+ msgid "Swedish Krona"
3351
+ msgstr "Corona Sueca"
3352
+
3353
+ #: wpuf-functions.php:1492
3354
+ msgid "Swiss Franc"
3355
+ msgstr "Franco Suizo"
3356
+
3357
+ #: wpuf-functions.php:1493
3358
+ msgid "Taiwan New Dollars"
3359
+ msgstr "Nuevo Dólar Taiwanés"
3360
+
3361
+ #: wpuf-functions.php:1494
3362
+ msgid "Thai Baht"
3363
+ msgstr "Thai Baht"
3364
+
3365
+ #: wpuf-functions.php:1495
3366
+ msgid "Turkish Lira"
3367
+ msgstr "Lira Turca"
3368
+
3369
+ #: wpuf-functions.php:1496
3370
+ msgid "US Dollar"
3371
+ msgstr "Dólar Americano"
3372
+
3373
+ #: wpuf-functions.php:1497
3374
+ msgid "Vietnamese Dong"
3375
+ msgstr "Dong Vietnamita"
3376
+
3377
+ #: wpuf-functions.php:1498
3378
+ msgid "Egyptian Pound"
3379
+ msgstr "Egyptian Pound"
3380
+
3381
+ #: wpuf.php:106
3382
+ msgid "Your Post Has Been Expired"
3383
+ msgstr "Su entrada ha caducado"
3384
+
3385
+ #: wpuf.php:281
3386
+ msgid "is required"
3387
+ msgstr "es requerido"
3388
+
3389
+ #: wpuf.php:282
3390
+ msgid "does not match"
3391
+ msgstr "no coincide"
3392
+
3393
+ #: wpuf.php:283
3394
+ msgid "is not valid"
3395
+ msgstr "no es válido"
3396
+
3397
+ #: wpuf.php:344
3398
+ msgid "Please fix the errors to proceed"
3399
+ msgstr "Por favor, corrija los errores para continuar"
3400
+
3401
+ #: wpuf.php:346
3402
+ msgid "Word limit reached"
3403
+ msgstr "Se alcanzó el límite de palabras"
3404
+
3405
+ #. Plugin URI of the plugin/theme
3406
+ msgid "https://wordpress.org/plugins/wp-user-frontend/"
3407
+ msgstr "https://es.wordpress.org/plugins/wp-user-frontend/"
3408
+
3409
+ #. Description of the plugin/theme
3410
+ msgid ""
3411
+ "Create, edit, delete, manages your post, pages or custom post types from "
3412
+ "frontend. Create registration forms, frontend profile and more..."
3413
+ msgstr ""
3414
+ "Cree, edite, elimine, administre sus entradas, páginas o entradas "
3415
+ "personalizadas desde el frontend. Cree formularios de registro, paneles de "
3416
+ "perfil de usuario y más..."
3417
+
3418
+ #. Author of the plugin/theme
3419
+ msgid "Tareq Hasan"
3420
+ msgstr "Tareq Hasan"
3421
+
3422
+ #. Author URI of the plugin/theme
3423
+ msgid "https://tareq.co"
3424
+ msgstr "https://tareq.co"
3425
+
3426
+ #: wpuf-functions.php:1011
3427
+ msgctxt "tag delimiter"
3428
+ msgid ","
3429
+ msgstr ","
languages/wpuf-fa_IR.po CHANGED
@@ -1045,7 +1045,7 @@ msgstr "افزونه ناحیه کابری پیشرفته"
1045
 
1046
  #: admin/settings.php:55
1047
  msgid "User Frontend"
1048
- msgstr "ناحیه کاربری پیشرفته"
1049
 
1050
  #: admin/settings.php:66
1051
  msgid "Transaction"
1045
 
1046
  #: admin/settings.php:55
1047
  msgid "User Frontend"
1048
+ msgstr "User Frontend"
1049
 
1050
  #: admin/settings.php:66
1051
  msgid "Transaction"
languages/wpuf-zh_CN.po CHANGED
@@ -1029,7 +1029,7 @@ msgstr "前端用户中心"
1029
 
1030
  #: ../admin/settings.php:55
1031
  msgid "User Frontend"
1032
- msgstr "前端用户中心"
1033
 
1034
  #: ../admin/settings.php:66
1035
  msgid "Transaction"
1029
 
1030
  #: ../admin/settings.php:55
1031
  msgid "User Frontend"
1032
+ msgstr "User Frontend"
1033
 
1034
  #: ../admin/settings.php:66
1035
  msgid "Transaction"
languages/wpuf.pot CHANGED
@@ -2,10 +2,10 @@
2
  # This file is distributed under the GPL2.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: WP User Frontend 2.5.3\n"
6
  "Report-Msgid-Bugs-To: "
7
  "https://wedevs.com/support/forum/plugin-support/wp-user-frontend/\n"
8
- "POT-Creation-Date: 2017-06-08 17:02:25+00:00\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=utf-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
@@ -18,509 +18,825 @@ msgstr ""
18
  msgid "WP User Frontend - Add-Ons"
19
  msgstr ""
20
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
21
  #: admin/form-builder/assets/js/components/builder-stage/template.php:3
 
22
  msgid "Add fields by dragging the fields from the right sidebar to this area."
23
  msgstr ""
24
 
25
  #: admin/form-builder/assets/js/components/builder-stage/template.php:30
 
26
  msgid "is available in Pro Version"
27
  msgstr ""
28
 
29
  #: admin/form-builder/assets/js/components/builder-stage/template.php:54
 
30
  msgid "Hidden Fields"
31
  msgstr ""
32
 
33
  #: admin/form-builder/assets/js/components/builder-stage/template.php:61
 
34
  msgid "key"
35
  msgstr ""
36
 
37
  #: admin/form-builder/assets/js/components/builder-stage/template.php:61
 
38
  msgid "value"
39
  msgstr ""
40
 
41
  #: admin/form-builder/assets/js/components/field-option-data/template.php:5
42
- #: admin/template.php:244
43
  msgid "Show values"
44
  msgstr ""
45
 
46
  #: admin/form-builder/assets/js/components/field-option-data/template.php:16
47
  #: admin/template.php:247 admin/template.php:305
 
48
  msgid "Label"
49
  msgstr ""
50
 
51
  #: admin/form-builder/assets/js/components/field-option-data/template.php:20
52
  #: admin/template.php:247 admin/template.php:305
 
53
  msgid "Value"
54
  msgstr ""
55
 
56
- #: admin/form-builder/assets/js/components/field-option-data/template.php:64
 
57
  msgid "Clear Selection"
58
  msgstr ""
59
 
60
  #: admin/form-builder/assets/js/components/field-option-pro-feature-alert/template.php:4
 
61
  msgid "Available in Pro Version"
62
  msgstr ""
63
 
64
  #: admin/form-builder/assets/js/components/field-select/template.php:7
 
65
  msgid "Select an option"
66
  msgstr ""
67
 
68
  #: admin/form-builder/assets/js/components/form-featured_image/template.php:5
69
  #: admin/form-builder/assets/js/components/form-image_upload/template.php:5
70
- #: class/render-form.php:1490
 
71
  msgid "Select Image"
72
  msgstr ""
73
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
74
  #: admin/form-builder/assets/js/components/form-post_content/template.php:4
75
- #: class/render-form.php:911
76
  msgid "Insert Photo"
77
  msgstr ""
78
 
79
  #: admin/form-builder/assets/js/components/form-taxonomy/template.php:12
 
80
  msgid "— Select —"
81
  msgstr ""
82
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
83
  #: admin/form-builder/assets/js/components/merge-tags/template.php:8
 
84
  msgid "Form Fields"
85
  msgstr ""
86
 
87
- #: admin/form-builder/assets/js/components/merge-tags/template.php:16
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
88
  msgid "No fields available"
89
  msgstr ""
90
 
 
 
 
 
 
 
 
 
 
 
91
  #: admin/form-builder/class-wpuf-admin-form-builder-ajax.php:29
92
  msgid "Unauthorized operation"
93
  msgstr ""
94
 
95
- #: admin/form-builder/class-wpuf-admin-form-builder-ajax.php:34
96
  msgid "Invalid form id"
97
  msgstr ""
98
 
99
- #: admin/form-builder/class-wpuf-admin-form-builder.php:320
100
  msgid "Custom Fields"
101
  msgstr ""
102
 
103
- #: admin/form-builder/class-wpuf-admin-form-builder.php:341
104
  msgid "Others"
105
  msgstr ""
106
 
107
- #: admin/form-builder/class-wpuf-admin-form-builder.php:357
108
  msgid "Advanced Options"
109
  msgstr ""
110
 
111
- #: admin/form-builder/class-wpuf-admin-form-builder.php:358
112
  msgid "Are you sure you want to delete this field?"
113
  msgstr ""
114
 
115
- #: admin/form-builder/class-wpuf-admin-form-builder.php:359
116
  msgid "Yes, delete it"
117
  msgstr ""
118
 
119
- #: admin/form-builder/class-wpuf-admin-form-builder.php:360
120
  msgid "No, cancel it"
121
  msgstr ""
122
 
123
- #: admin/form-builder/class-wpuf-admin-form-builder.php:361
124
  msgid "OK"
125
  msgstr ""
126
 
127
- #: admin/form-builder/class-wpuf-admin-form-builder.php:362
128
- #: class/payment.php:168 class/subscription.php:829
129
- #: templates/dashboard/subscription.php:59
130
  msgid "Cancel"
131
  msgstr ""
132
 
133
- #: admin/form-builder/class-wpuf-admin-form-builder.php:363
134
  #: includes/free/admin/shortcode-builder.php:69
135
  msgid "Close"
136
  msgstr ""
137
 
138
- #: admin/form-builder/class-wpuf-admin-form-builder.php:364
139
  msgid "This field must contain at least one choice"
140
  msgstr ""
141
 
142
- #: admin/form-builder/class-wpuf-admin-form-builder.php:365
143
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:376
144
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:416
145
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:472
146
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:527
147
  msgid "Option"
148
  msgstr ""
149
 
150
- #: admin/form-builder/class-wpuf-admin-form-builder.php:366
151
  msgid "Column"
152
  msgstr ""
153
 
154
- #: admin/form-builder/class-wpuf-admin-form-builder.php:367
155
  msgid "This field must contain at least one column"
156
  msgstr ""
157
 
158
- #: admin/form-builder/class-wpuf-admin-form-builder.php:368
159
  msgid "is available in Pro version"
160
  msgstr ""
161
 
162
- #: admin/form-builder/class-wpuf-admin-form-builder.php:369
163
  msgid "Please upgrade to the Pro version to unlock all these awesome features"
164
  msgstr ""
165
 
166
- #: admin/form-builder/class-wpuf-admin-form-builder.php:370
167
  msgid "Get the Pro version"
168
  msgstr ""
169
 
170
- #: admin/form-builder/class-wpuf-admin-form-builder.php:371 admin/form.php:743
171
  msgid "Select"
172
  msgstr ""
173
 
174
- #: admin/form-builder/class-wpuf-admin-form-builder.php:372
175
  msgid "Saved form data"
176
  msgstr ""
177
 
178
- #: admin/form-builder/class-wpuf-admin-form-builder.php:373
179
  msgid "You have unsaved changes."
180
  msgstr ""
181
 
182
- #: admin/form-builder/class-wpuf-admin-form-builder.php:374
183
  #: admin/form-builder/views/form-builder.php:45
184
  msgid "Click to copy shortcode"
185
  msgstr ""
186
 
187
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:44
188
  #: admin/template.php:76
189
  msgid "Field Label"
190
  msgstr ""
191
 
192
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:48
193
  #: admin/template.php:77
194
  msgid "Enter a title of this field"
195
  msgstr ""
196
 
197
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:53
198
  #: admin/template.php:94
199
  msgid "Help text"
200
  msgstr ""
201
 
202
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:57
203
  #: admin/template.php:95
204
  msgid "Give the user some information about this field"
205
  msgstr ""
206
 
207
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:62
208
  #: admin/template.php:67
209
  msgid "Required"
210
  msgstr ""
211
 
212
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:65
213
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:443
214
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:498
215
- #: admin/post-forms-list-table.php:340 admin/settings-options.php:94
216
- #: admin/settings-options.php:174 admin/settings-options.php:185
217
- #: admin/settings-options.php:274 admin/subscription.php:145
218
- #: admin/template.php:70 includes/free/form-element.php:475
219
- msgid "Yes"
220
- msgstr ""
221
-
222
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:66
223
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:444
224
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:499
225
- #: admin/post-forms-list-table.php:341 admin/settings-options.php:95
226
- #: admin/settings-options.php:175 admin/settings-options.php:186
227
- #: admin/settings-options.php:275 admin/subscription.php:147
228
- #: admin/template.php:71 includes/free/form-element.php:476
 
 
 
 
 
 
 
 
 
 
229
  msgid "No"
230
  msgstr ""
231
 
232
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:72
233
  msgid ""
234
  "Check this option to mark the field required. A form will not submit unless "
235
  "all required fields are provided."
236
  msgstr ""
237
 
238
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:77
239
  #: admin/template.php:99
240
  msgid "CSS Class Name"
241
  msgstr ""
242
 
243
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:81
244
  msgid "Provide a container class name for this field."
245
  msgstr ""
246
 
247
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:88
248
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:616
249
  #: admin/template.php:82 admin/template.php:575
250
  msgid "Meta Key"
251
  msgstr ""
252
 
253
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:92
254
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:620
255
  #: admin/template.php:83 admin/template.php:576
256
  msgid "Name of the meta key this field will save to"
257
  msgstr ""
258
 
259
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:110
260
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:180
261
  #: admin/template.php:126 admin/template.php:186
262
  msgid "Placeholder text"
263
  msgstr ""
264
 
265
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:114
266
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:184
267
  #: admin/template.php:127
268
  msgid "Text for HTML5 placeholder attribute"
269
  msgstr ""
270
 
271
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:119
272
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:192
273
  #: admin/template.php:131 admin/template.php:191
274
  msgid "Default value"
275
  msgstr ""
276
 
277
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:123
278
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:196
279
  #: admin/template.php:132
280
  msgid "The default value this field will have"
281
  msgstr ""
282
 
283
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:128
284
  #: admin/template.php:136
285
  msgid "Size"
286
  msgstr ""
287
 
288
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:133
289
  #: admin/template.php:137
290
  msgid "Size of this input field"
291
  msgstr ""
292
 
293
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:140
294
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:215
295
  #: admin/template.php:141 admin/template.php:206
296
  msgid "Word Restriction"
297
  msgstr ""
298
 
299
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:144
300
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:219
301
  #: admin/template.php:145 admin/template.php:210
302
  msgid "Numebr of words the author to be restricted in"
303
  msgstr ""
304
 
305
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:162
306
  #: admin/template.php:176
307
  msgid "Rows"
308
  msgstr ""
309
 
310
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:166
311
  msgid "Number of rows in textarea"
312
  msgstr ""
313
 
314
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:171
315
  #: admin/template.php:181
316
  msgid "Columns"
317
  msgstr ""
318
 
319
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:175
320
  msgid "Number of columns in textarea"
321
  msgstr ""
322
 
323
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:201
324
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:290
325
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:297
326
  #: admin/template.php:196
327
  msgid "Textarea"
328
  msgstr ""
329
 
330
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:204
331
  #: admin/template.php:199
332
  msgid "Normal"
333
  msgstr ""
334
 
335
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:205
336
  #: admin/template.php:200
337
  msgid "Rich textarea"
338
  msgstr ""
339
 
340
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:206
341
  #: admin/template.php:201
342
  msgid "Teeny Rich textarea"
343
  msgstr ""
344
 
345
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:236
346
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:377
347
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:417
348
  msgid "- select -"
349
  msgstr ""
350
 
351
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:254
352
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:261
353
  msgid "Text"
354
  msgstr ""
355
 
356
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:327
357
  #: admin/template.php:398 admin/template.php:422 admin/template.php:454
358
  #: admin/template.php:486 templates/dashboard/posts.php:84
359
  #: templates/dashboard.php:37
360
  msgid "Options"
361
  msgstr ""
362
 
363
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:332
364
  msgid "Add options for the form field"
365
  msgstr ""
366
 
367
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:351
368
  #: admin/template.php:449 admin/template.php:481
369
  msgid "Select Text"
370
  msgstr ""
371
 
372
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:355
373
  #: admin/template.php:438 admin/template.php:470
374
  msgid ""
375
  "First element of the select dropdown. Leave this empty if you don't want to "
376
  "show this field"
377
  msgstr ""
378
 
379
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:363
380
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:370
381
  #: admin/template-post.php:156
382
  msgid "Dropdown"
383
  msgstr ""
384
 
385
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:403
386
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:410
387
  #: admin/form.php:744 admin/template-post.php:157
388
  msgid "Multi Select"
389
  msgstr ""
390
 
391
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:440
392
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:495
393
  msgid "Show in inline list"
394
  msgstr ""
395
 
396
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:450
397
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:505
398
  msgid "Show this option in an inline list"
399
  msgstr ""
400
 
401
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:458
402
  msgid "Radio"
403
  msgstr ""
404
 
405
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:465
406
  msgid "Radio Field"
407
  msgstr ""
408
 
409
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:513
410
  #: admin/form.php:745 admin/template-post.php:158
411
  msgid "Checkbox"
412
  msgstr ""
413
 
414
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:520
415
  msgid "Checkbox Field"
416
  msgstr ""
417
 
418
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:548
419
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:555
420
  msgid "URL"
421
  msgstr ""
422
 
423
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:583
424
  msgid "Email Address"
425
  msgstr ""
426
 
427
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:590
428
  #: admin/html/form-settings-post.php:17 class/transactions-list-table.php:48
429
  #: includes/free/edit-user.php:152
430
  msgid "Email"
431
  msgstr ""
432
 
433
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:625
434
  #: admin/template.php:582
435
  msgid "Meta Value"
436
  msgstr ""
437
 
438
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:629
439
  #: admin/template.php:583
440
  msgid "Enter the meta value"
441
  msgstr ""
442
 
443
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:635
444
  msgid "Hidden Field"
445
  msgstr ""
446
 
447
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:665
448
  #: admin/form.php:662 admin/template-post.php:105 admin/template.php:646
449
  msgid "Max. file size"
450
  msgstr ""
451
 
452
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:669
453
  #: admin/form.php:666 admin/template-post.php:93 admin/template.php:634
454
  msgid "Enter maximum upload size limit in KB"
455
  msgstr ""
456
 
457
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:674
458
  #: admin/template.php:651
459
  msgid "Max. files"
460
  msgstr ""
461
 
462
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:678
463
  #: admin/template.php:635
464
  msgid "Number of images can be uploaded"
465
  msgstr ""
466
 
467
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:684
468
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:691
469
  #: includes/free/form-element.php:8
470
  msgid "Image Upload"
471
  msgstr ""
472
 
473
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:716
474
- #: admin/template.php:544 admin/template.php:604 class/upload.php:164
475
- #: templates/dashboard/posts.php:74 templates/dashboard.php:27
476
- #: wpuf-functions.php:703
 
477
  msgid "Title"
478
  msgstr ""
479
 
480
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:720
 
481
  msgid "Title of the section"
482
  msgstr ""
483
 
484
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:725
485
  #: admin/subscription.php:206 admin/template.php:609 class/upload.php:166
486
- #: wpuf-functions.php:709
487
  msgid "Description"
488
  msgstr ""
489
 
490
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:729
491
  msgid "Some details text about the section"
492
  msgstr ""
493
 
494
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:735
495
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:741
496
  msgid "Section Break"
497
  msgstr ""
498
 
499
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:742
500
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:778
501
  msgid "Some description about this section"
502
  msgstr ""
503
 
504
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:761
505
  #: admin/template.php:549
506
  msgid "HTML Codes"
507
  msgstr ""
508
 
509
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:765
510
  msgid "Paste your HTML codes, WordPress shortcodes will also work here"
511
  msgstr ""
512
 
513
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:771
514
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:777
515
  msgid "Custom HTML"
516
  msgstr ""
517
 
518
- #: admin/form-builder/views/form-builder.php:5
519
- msgid "Form Editor"
 
520
  msgstr ""
521
 
522
- #: admin/form-builder/views/form-builder.php:9 admin/settings.php:72
523
- msgid "Settings"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
524
  msgstr ""
525
 
526
  #: admin/form-builder/views/form-builder.php:16
@@ -570,24 +886,18 @@ msgid "Form duplicated successfully. <a href=\"%s\">View form.</a>"
570
  msgstr ""
571
 
572
  #: admin/form-template.php:63
573
- msgid ""
574
- "List of available templates can be found <a href=\"%s\" "
575
- "target=\"_blank\">here</a>."
576
- msgstr ""
577
-
578
- #: admin/form-template.php:64
579
  msgid "Want a new integration? <a href=\"%s\" target=\"_blank\">Let us know</a>."
580
  msgstr ""
581
 
582
- #: admin/form-template.php:169
583
  msgid "Form Template"
584
  msgstr ""
585
 
586
- #: admin/form-template.php:172
587
  msgid "&mdash; No Template &mdash;"
588
  msgstr ""
589
 
590
- #: admin/form-template.php:181
591
  msgid ""
592
  "If selected a form template, it will try to execute that integration "
593
  "options when new post created and updated."
@@ -610,7 +920,7 @@ msgid "Add New Form"
610
  msgstr ""
611
 
612
  #: admin/form.php:74 admin/form.php:112 admin/installer.php:75
613
- #: admin/post-forms-list-table.php:387 admin/subscription.php:227
614
  #: class/subscription.php:360 includes/free/admin/shortcode-button.php:90
615
  #: includes/free/edit-user.php:99 templates/dashboard/posts.php:150
616
  #: templates/dashboard.php:104
@@ -653,8 +963,8 @@ msgstr ""
653
  msgid "Registration Forms"
654
  msgstr ""
655
 
656
- #: admin/form.php:194 includes/free/form-element.php:211
657
- #: includes/free/form-element.php:248
658
  msgid "Notification"
659
  msgstr ""
660
 
@@ -666,7 +976,7 @@ msgstr ""
666
  msgid "Edit Settings"
667
  msgstr ""
668
 
669
- #: admin/form.php:229 includes/free/form-element.php:55
670
  msgid "Post Expiration"
671
  msgstr ""
672
 
@@ -683,7 +993,7 @@ msgid "Taxonomies"
683
  msgstr ""
684
 
685
  #: admin/form.php:422 admin/html/form-settings-post.php:28
686
- #: class/render-form.php:619
687
  msgid "Save Draft"
688
  msgstr ""
689
 
@@ -732,12 +1042,6 @@ msgstr ""
732
  msgid "Order By"
733
  msgstr ""
734
 
735
- #: admin/form.php:759 admin/html/form-settings-post.php:16
736
- #: admin/subscription.php:205 admin/template-post.php:167
737
- #: includes/free/edit-profile.php:92
738
- msgid "Name"
739
- msgstr ""
740
-
741
  #: admin/form.php:760 admin/template-post.php:168
742
  msgid "Term ID"
743
  msgstr ""
@@ -822,32 +1126,32 @@ msgid "No Change"
822
  msgstr ""
823
 
824
  #: admin/html/form-settings-post-edit.php:34
825
- #: admin/html/form-settings-post.php:170 includes/free/form-element.php:374
826
  msgid "Redirect To"
827
  msgstr ""
828
 
829
  #: admin/html/form-settings-post-edit.php:39
830
- #: admin/html/form-settings-post.php:175
831
  msgid "Newly created post"
832
  msgstr ""
833
 
834
  #: admin/html/form-settings-post-edit.php:40
835
- #: admin/html/form-settings-post.php:176 includes/free/form-element.php:379
836
  msgid "Same Page"
837
  msgstr ""
838
 
839
  #: admin/html/form-settings-post-edit.php:41
840
- #: admin/html/form-settings-post.php:177 includes/free/form-element.php:380
841
  msgid "To a page"
842
  msgstr ""
843
 
844
  #: admin/html/form-settings-post-edit.php:42
845
- #: admin/html/form-settings-post.php:178 includes/free/form-element.php:381
846
  msgid "To a custom URL"
847
  msgstr ""
848
 
849
  #: admin/html/form-settings-post-edit.php:51
850
- #: admin/html/form-settings-post.php:187 includes/free/form-element.php:390
851
  msgid "After successfull submit, where the page will redirect to"
852
  msgstr ""
853
 
@@ -856,12 +1160,12 @@ msgid "Post Update Message"
856
  msgstr ""
857
 
858
  #: admin/html/form-settings-post-edit.php:64
859
- #: admin/html/form-settings-post.php:200 includes/free/form-element.php:410
860
  msgid "Page"
861
  msgstr ""
862
 
863
  #: admin/html/form-settings-post-edit.php:79
864
- #: admin/html/form-settings-post.php:215 includes/free/form-element.php:425
865
  msgid "Custom URL"
866
  msgstr ""
867
 
@@ -899,122 +1203,114 @@ msgid ""
899
  "and will take no effect."
900
  msgstr ""
901
 
902
- #: admin/html/form-settings-post.php:49 admin/post-forms-list-table.php:292
903
  msgid "Post Type"
904
  msgstr ""
905
 
906
- #: admin/html/form-settings-post.php:69 admin/post-forms-list-table.php:293
907
  msgid "Post Status"
908
  msgstr ""
909
 
910
- #: admin/html/form-settings-post.php:83
911
  msgid "Post Format"
912
  msgstr ""
913
 
914
- #: admin/html/form-settings-post.php:86 admin/html/form-settings-post.php:109
915
  msgid "- None -"
916
  msgstr ""
917
 
918
- #: admin/html/form-settings-post.php:101
919
  msgid "Default Post Category"
920
  msgstr ""
921
 
922
- #: admin/html/form-settings-post.php:113
923
  msgid ""
924
  "If users are not allowed to choose any category, this category will be used "
925
  "instead (if post type supports)"
926
  msgstr ""
927
 
928
- #: admin/html/form-settings-post.php:118 admin/post-forms-list-table.php:294
929
  msgid "Guest Post"
930
  msgstr ""
931
 
932
- #: admin/html/form-settings-post.php:123
933
  msgid "Enable Guest Post"
934
  msgstr ""
935
 
936
- #: admin/html/form-settings-post.php:125
937
  msgid "Unregistered users will be able to submit posts"
938
  msgstr ""
939
 
940
- #: admin/html/form-settings-post.php:130
941
  msgid "User Details"
942
  msgstr ""
943
 
944
- #: admin/html/form-settings-post.php:135
945
  msgid "Require Name and Email address"
946
  msgstr ""
947
 
948
- #: admin/html/form-settings-post.php:137
949
  msgid ""
950
  "If requires, users will be automatically registered to the site using the "
951
  "name and email address"
952
  msgstr ""
953
 
954
- #: admin/html/form-settings-post.php:142
955
  msgid "Name Label"
956
  msgstr ""
957
 
958
- #: admin/html/form-settings-post.php:147
959
  msgid "Label text for name field"
960
  msgstr ""
961
 
962
- #: admin/html/form-settings-post.php:152
963
  msgid "E-Mail Label"
964
  msgstr ""
965
 
966
- #: admin/html/form-settings-post.php:157
967
  msgid "Label text for email field"
968
  msgstr ""
969
 
970
- #: admin/html/form-settings-post.php:162 admin/settings-options.php:231
971
  msgid "Unauthorized Message"
972
  msgstr ""
973
 
974
- #: admin/html/form-settings-post.php:165 admin/settings-options.php:232
975
  msgid "Not logged in users will see this message"
976
  msgstr ""
977
 
978
- #: admin/html/form-settings-post.php:193
979
  msgid "Message to show"
980
  msgstr ""
981
 
982
- #: admin/html/form-settings-post.php:222
983
  msgid "Comment Status"
984
  msgstr ""
985
 
986
- #: admin/html/form-settings-post.php:225
987
  msgid "Open"
988
  msgstr ""
989
 
990
- #: admin/html/form-settings-post.php:226
991
  msgid "Closed"
992
  msgstr ""
993
 
994
- #: admin/html/form-settings-post.php:232
995
  msgid "Submit Post Button text"
996
  msgstr ""
997
 
998
- #: admin/html/form-settings-post.php:239
999
  msgid "Post Draft"
1000
  msgstr ""
1001
 
1002
- #: admin/html/form-settings-post.php:244
1003
  msgid "Enable Saving as draft"
1004
  msgstr ""
1005
 
1006
- #: admin/html/form-settings-post.php:246
1007
  msgid "It will show a button to save as draft"
1008
  msgstr ""
1009
 
1010
- #: admin/html/modal.php:4
1011
- msgid "Modal window. Press escape to close."
1012
- msgstr ""
1013
-
1014
- #: admin/html/modal.php:5
1015
- msgid "Close modal window"
1016
- msgstr ""
1017
-
1018
  #: admin/html/modal.php:9
1019
  msgid "Select a Template"
1020
  msgstr ""
@@ -1037,10 +1333,6 @@ msgid ""
1037
  "can do this by one click."
1038
  msgstr ""
1039
 
1040
- #: admin/installer.php:30 admin/tools.php:348
1041
- msgid "Install WPUF Pages"
1042
- msgstr ""
1043
-
1044
  #: admin/installer.php:32
1045
  msgid "Skip Setup"
1046
  msgstr ""
@@ -1056,7 +1348,7 @@ msgid ""
1056
  msgstr ""
1057
 
1058
  #: admin/installer.php:73 admin/settings-options.php:17
1059
- #: includes/free/admin/shortcode-button.php:82 wpuf-functions.php:1341
1060
  msgid "Dashboard"
1061
  msgstr ""
1062
 
@@ -1070,7 +1362,7 @@ msgstr ""
1070
 
1071
  #: admin/installer.php:83 class/subscription.php:335 class/subscription.php:355
1072
  #: class/subscription.php:356 class/subscription.php:357
1073
- #: includes/free/admin/shortcode-button.php:98 wpuf-functions.php:1343
1074
  msgid "Subscription"
1075
  msgstr ""
1076
 
@@ -1123,80 +1415,74 @@ msgstr ""
1123
  msgid "Search Forms"
1124
  msgstr ""
1125
 
1126
- #: admin/post-forms-list-table.php:38 admin/tools.php:38 admin/tools.php:94
1127
- #: class/transactions-list-table.php:85
1128
- msgid "All"
1129
- msgstr ""
1130
-
1131
- #: admin/post-forms-list-table.php:39 wpuf-functions.php:61
1132
  msgid "Published"
1133
  msgstr ""
1134
 
1135
- #: admin/post-forms-list-table.php:40 admin/post-forms-list-table.php:388
1136
  msgid "Trash"
1137
  msgstr ""
1138
 
1139
- #: admin/post-forms-list-table.php:90
1140
  msgid "No form found."
1141
  msgstr ""
1142
 
1143
- #: admin/post-forms-list-table.php:104
1144
  msgid "Move to Trash"
1145
  msgstr ""
1146
 
1147
- #: admin/post-forms-list-table.php:108 admin/post-forms-list-table.php:400
1148
  msgid "Restore"
1149
  msgstr ""
1150
 
1151
- #: admin/post-forms-list-table.php:109 admin/post-forms-list-table.php:401
1152
  msgid "Delete Permanently"
1153
  msgstr ""
1154
 
1155
- #: admin/post-forms-list-table.php:291
1156
  msgid "Form Name"
1157
  msgstr ""
1158
 
1159
- #: admin/post-forms-list-table.php:295
 
 
1160
  msgid "Shortcode"
1161
  msgstr ""
1162
 
1163
- #: admin/post-forms-list-table.php:389
1164
- msgid "Duplicate"
1165
- msgstr ""
1166
-
1167
- #: admin/post-forms-list-table.php:410 wpuf-functions.php:65
1168
  msgid "Draft"
1169
  msgstr ""
1170
 
1171
- #: admin/posting.php:56 class/render-form.php:1502 wpuf.php:350
 
1172
  msgid "Are you sure?"
1173
  msgstr ""
1174
 
1175
- #: admin/posting.php:62 wpuf.php:356
1176
  msgid "Allowed Files"
1177
  msgstr ""
1178
 
1179
- #: admin/posting.php:65 wpuf.php:359
1180
  msgid "Maximum number of files reached!"
1181
  msgstr ""
1182
 
1183
- #: admin/posting.php:66 wpuf.php:360
1184
  msgid "The file you have uploaded exceeds the file size limit. Please try again."
1185
  msgstr ""
1186
 
1187
- #: admin/posting.php:67 wpuf.php:361
1188
  msgid "You have uploaded an incorrect file type. Please try again."
1189
  msgstr ""
1190
 
1191
- #: admin/posting.php:86
1192
  msgid "WPUF Form"
1193
  msgstr ""
1194
 
1195
- #: admin/posting.php:157
1196
  msgid "WPUF Custom Fields"
1197
  msgstr ""
1198
 
1199
- #: admin/posting.php:202
1200
  msgid "No custom fields found."
1201
  msgstr ""
1202
 
@@ -1234,402 +1520,375 @@ msgstr ""
1234
  msgid "Payments"
1235
  msgstr ""
1236
 
1237
- #: admin/settings-options.php:29
1238
- msgid "Support"
1239
- msgstr ""
1240
-
1241
- #: admin/settings-options.php:53
1242
- msgid "Fixed Form Elements "
1243
- msgstr ""
1244
-
1245
- #: admin/settings-options.php:54
1246
- msgid "Show fixed form elements sidebar in form editor"
1247
- msgstr ""
1248
-
1249
- #: admin/settings-options.php:60
1250
  msgid "Edit Page"
1251
  msgstr ""
1252
 
1253
- #: admin/settings-options.php:61
1254
  msgid "Select the page where [wpuf_edit] is located"
1255
  msgstr ""
1256
 
1257
- #: admin/settings-options.php:67
1258
  msgid "Default Post Owner"
1259
  msgstr ""
1260
 
1261
- #: admin/settings-options.php:68
1262
  msgid ""
1263
  "If guest post is enabled and user details are OFF, the posts are assigned "
1264
  "to this user"
1265
  msgstr ""
1266
 
1267
- #: admin/settings-options.php:75
1268
  msgid "Admin area access"
1269
  msgstr ""
1270
 
1271
- #: admin/settings-options.php:76
1272
  msgid "Allow you to block specific user role to WordPress admin area."
1273
  msgstr ""
1274
 
1275
- #: admin/settings-options.php:80
1276
  msgid "Admin Only"
1277
  msgstr ""
1278
 
1279
- #: admin/settings-options.php:81
1280
  msgid "Admins, Editors"
1281
  msgstr ""
1282
 
1283
- #: admin/settings-options.php:82
1284
  msgid "Admins, Editors, Authors"
1285
  msgstr ""
1286
 
1287
- #: admin/settings-options.php:83
1288
  msgid "Admins, Editors, Authors, Contributors"
1289
  msgstr ""
1290
 
1291
- #: admin/settings-options.php:84
1292
  msgid "Default"
1293
  msgstr ""
1294
 
1295
- #: admin/settings-options.php:89
1296
  msgid "Override the post edit link"
1297
  msgstr ""
1298
 
1299
- #: admin/settings-options.php:90
1300
  msgid ""
1301
  "Users see the edit link in post if s/he is capable to edit the post/page. "
1302
  "Selecting <strong>Yes</strong> will override the default WordPress edit "
1303
  "post link in frontend"
1304
  msgstr ""
1305
 
1306
- #: admin/settings-options.php:100
1307
  msgid "Custom Fields in post"
1308
  msgstr ""
1309
 
1310
- #: admin/settings-options.php:101
1311
  msgid "Show custom fields on post content area"
1312
  msgstr ""
1313
 
1314
- #: admin/settings-options.php:107
1315
  msgid "Load Scripts"
1316
  msgstr ""
1317
 
1318
- #: admin/settings-options.php:108
1319
  msgid "Load scripts/styles in all pages"
1320
  msgstr ""
1321
 
1322
- #: admin/settings-options.php:114
1323
  msgid "Insert Photo image size"
1324
  msgstr ""
1325
 
1326
- #: admin/settings-options.php:115
1327
  msgid ""
1328
  "Default image size of \"<strong>Insert Photo</strong>\" button in post "
1329
  "content area"
1330
  msgstr ""
1331
 
1332
- #: admin/settings-options.php:122
1333
  msgid "Insert Photo image type"
1334
  msgstr ""
1335
 
1336
- #: admin/settings-options.php:123
1337
  msgid ""
1338
  "Default image type of \"<strong>Insert Photo</strong>\" button in post "
1339
  "content area"
1340
  msgstr ""
1341
 
1342
- #: admin/settings-options.php:126
1343
  msgid "Image only"
1344
  msgstr ""
1345
 
1346
- #: admin/settings-options.php:127
1347
  msgid "Image with link"
1348
  msgstr ""
1349
 
1350
- #: admin/settings-options.php:133
1351
  msgid "Enable Image Caption"
1352
  msgstr ""
1353
 
1354
- #: admin/settings-options.php:134
1355
  msgid "Allow users to update image/video title, caption and description"
1356
  msgstr ""
1357
 
1358
- #: admin/settings-options.php:140
1359
  msgid "Default Post Form"
1360
  msgstr ""
1361
 
1362
- #: admin/settings-options.php:141
1363
  msgid "Fallback form for post editing if no associated form found"
1364
  msgstr ""
1365
 
1366
- #: admin/settings-options.php:147
1367
  msgid "reCAPTCHA Site Key"
1368
  msgstr ""
1369
 
1370
- #: admin/settings-options.php:151
1371
  msgid "reCAPTCHA Secret Key"
1372
  msgstr ""
1373
 
1374
- #: admin/settings-options.php:152
1375
  msgid ""
1376
  "<a target=\"_blank\" href=\"https://www.google.com/recaptcha/\">Register "
1377
  "here</a> to get reCaptcha Site and Secret keys."
1378
  msgstr ""
1379
 
1380
- #: admin/settings-options.php:156
1381
- msgid "Google Map API"
1382
- msgstr ""
1383
-
1384
- #: admin/settings-options.php:157
1385
- msgid ""
1386
- "<a target=\"_blank\" "
1387
- "href=\"https://developers.google.com/maps/documentation/javascript\">API</a>"
1388
- " key is needed to render Google Maps"
1389
- msgstr ""
1390
-
1391
- #: admin/settings-options.php:161
1392
  msgid "Custom CSS codes"
1393
  msgstr ""
1394
 
1395
- #: admin/settings-options.php:162
1396
  msgid ""
1397
  "If you want to add your custom CSS code, it will be added on page header "
1398
  "wrapped with style tag"
1399
  msgstr ""
1400
 
1401
- #: admin/settings-options.php:169
1402
  msgid "Users can edit post?"
1403
  msgstr ""
1404
 
1405
- #: admin/settings-options.php:170
1406
  msgid "Users will be able to edit their own posts"
1407
  msgstr ""
1408
 
1409
- #: admin/settings-options.php:180
1410
  msgid "User can delete post?"
1411
  msgstr ""
1412
 
1413
- #: admin/settings-options.php:181
1414
  msgid "Users will be able to delete their own posts"
1415
  msgstr ""
1416
 
1417
- #: admin/settings-options.php:191
1418
  msgid "Pending Post Edit"
1419
  msgstr ""
1420
 
1421
- #: admin/settings-options.php:192
1422
  msgid "Disable post editing while post in \"pending\" status"
1423
  msgstr ""
1424
 
1425
- #: admin/settings-options.php:198
1426
  msgid "Posts per page"
1427
  msgstr ""
1428
 
1429
- #: admin/settings-options.php:199
1430
  msgid "How many posts will be listed in a page"
1431
  msgstr ""
1432
 
1433
- #: admin/settings-options.php:205
1434
  msgid "Show user bio"
1435
  msgstr ""
1436
 
1437
- #: admin/settings-options.php:206
1438
  msgid "Users biographical info will be shown"
1439
  msgstr ""
1440
 
1441
- #: admin/settings-options.php:212
1442
  msgid "Show post count"
1443
  msgstr ""
1444
 
1445
- #: admin/settings-options.php:213
1446
  msgid "Show how many posts are created by the user"
1447
  msgstr ""
1448
 
1449
- #: admin/settings-options.php:219
1450
  msgid "Show Featured Image"
1451
  msgstr ""
1452
 
1453
- #: admin/settings-options.php:220
1454
  msgid "Show featured image of the post"
1455
  msgstr ""
1456
 
1457
- #: admin/settings-options.php:225
1458
  msgid "Featured Image size"
1459
  msgstr ""
1460
 
1461
- #: admin/settings-options.php:239
1462
  msgid "Auto Login After Registration"
1463
  msgstr ""
1464
 
1465
- #: admin/settings-options.php:240
1466
  msgid "If enabled, users after registration will be logged in to the system"
1467
  msgstr ""
1468
 
1469
- #: admin/settings-options.php:246
1470
  msgid "Login/Registration override"
1471
  msgstr ""
1472
 
1473
- #: admin/settings-options.php:247
1474
  msgid ""
1475
  "If enabled, default login and registration forms will be overridden by WPUF "
1476
  "with pages below"
1477
  msgstr ""
1478
 
1479
- #: admin/settings-options.php:253
1480
  msgid "Registration Page"
1481
  msgstr ""
1482
 
1483
- #: admin/settings-options.php:254
1484
  msgid ""
1485
  "Select the page you want to use as registration page override <em>(should "
1486
  "have shortcode)</em>"
1487
  msgstr ""
1488
 
1489
- #: admin/settings-options.php:260
1490
  msgid "Login Page"
1491
  msgstr ""
1492
 
1493
- #: admin/settings-options.php:261
1494
  msgid "Select the page which contains <code>[wpuf-login]</code> shortcode"
1495
  msgstr ""
1496
 
1497
- #: admin/settings-options.php:269
1498
  msgid "Charge for posting"
1499
  msgstr ""
1500
 
1501
- #: admin/settings-options.php:270
1502
  msgid "Charge user for submitting a post"
1503
  msgstr ""
1504
 
1505
- #: admin/settings-options.php:280
1506
  msgid "Force pack purchase"
1507
  msgstr ""
1508
 
1509
- #: admin/settings-options.php:281
1510
  msgid "When active, users must have to buy a pack for posting"
1511
  msgstr ""
1512
 
1513
- #: admin/settings-options.php:285
1514
  msgid "Disable"
1515
  msgstr ""
1516
 
1517
- #: admin/settings-options.php:286
1518
  msgid "Enable"
1519
  msgstr ""
1520
 
1521
- #: admin/settings-options.php:291
1522
  msgid "Subscription Pack Page"
1523
  msgstr ""
1524
 
1525
- #: admin/settings-options.php:292
1526
  msgid "Select the page where <code>[wpuf_sub_pack]</code> located."
1527
  msgstr ""
1528
 
1529
- #: admin/settings-options.php:298
1530
  msgid "Subscription at registration"
1531
  msgstr ""
1532
 
1533
- #: admin/settings-options.php:299
1534
  msgid "Registration time redirect to subscription page"
1535
  msgstr ""
1536
 
1537
- #: admin/settings-options.php:304
1538
  msgid "Currency"
1539
  msgstr ""
1540
 
1541
- #: admin/settings-options.php:311
1542
  msgid "Currency Position"
1543
  msgstr ""
1544
 
1545
- #: admin/settings-options.php:315
1546
  msgid "Left"
1547
  msgstr ""
1548
 
1549
- #: admin/settings-options.php:316
1550
  msgid "Right"
1551
  msgstr ""
1552
 
1553
- #: admin/settings-options.php:317
1554
  msgid "Left with space"
1555
  msgstr ""
1556
 
1557
- #: admin/settings-options.php:318
1558
  msgid "Right with space"
1559
  msgstr ""
1560
 
1561
- #: admin/settings-options.php:323
1562
  msgid "Thousand Separator"
1563
  msgstr ""
1564
 
1565
- #: admin/settings-options.php:324
1566
  msgid "This sets the thousand separator of displayed prices."
1567
  msgstr ""
1568
 
1569
- #: admin/settings-options.php:332
1570
  msgid "Decimal Separator"
1571
  msgstr ""
1572
 
1573
- #: admin/settings-options.php:333
1574
  msgid "This sets the decimal separator of displayed prices."
1575
  msgstr ""
1576
 
1577
- #: admin/settings-options.php:340
1578
  msgid "Number of Decimals"
1579
  msgstr ""
1580
 
1581
- #: admin/settings-options.php:341
1582
  msgid "This sets the number of decimal points shown in displayed prices."
1583
  msgstr ""
1584
 
1585
- #: admin/settings-options.php:351 admin/subscription.php:207
1586
  #: class/transactions-list-table.php:43
1587
  msgid "Cost"
1588
  msgstr ""
1589
 
1590
- #: admin/settings-options.php:358
1591
  msgid "Enable demo/sandbox mode"
1592
  msgstr ""
1593
 
1594
- #: admin/settings-options.php:359
1595
  msgid "When sandbox mode is active, all payment gateway will be used in demo mode"
1596
  msgstr ""
1597
 
1598
- #: admin/settings-options.php:365
1599
  msgid "Payment Page"
1600
  msgstr ""
1601
 
1602
- #: admin/settings-options.php:366
1603
  msgid "This page will be used to process payment options"
1604
  msgstr ""
1605
 
1606
- #: admin/settings-options.php:372
1607
  msgid "Payment Success Page"
1608
  msgstr ""
1609
 
1610
- #: admin/settings-options.php:373 lib/gateway/bank.php:37
1611
  msgid "After payment users will be redirected here"
1612
  msgstr ""
1613
 
1614
- #: admin/settings-options.php:379
1615
  msgid "Payment Gateways"
1616
  msgstr ""
1617
 
1618
- #: admin/settings-options.php:380
1619
  msgid "Active payment gateways"
1620
  msgstr ""
1621
 
1622
- #: admin/settings-options.php:388
1623
- msgid "Need Help?"
1624
- msgstr ""
1625
-
1626
- #: admin/settings-options.php:422
1627
  msgid ""
1628
  "Select profile/registration forms for user roles. These forms will be used "
1629
  "to populate extra edit profile fields in backend."
1630
  msgstr ""
1631
 
1632
- #: admin/settings-options.php:433
1633
  msgid " - select - "
1634
  msgstr ""
1635
 
@@ -1641,23 +1900,31 @@ msgstr ""
1641
  msgid "User Frontend"
1642
  msgstr ""
1643
 
1644
- #: admin/settings.php:65
1645
- msgid "Subscriptions"
1646
  msgstr ""
1647
 
1648
- #: admin/settings.php:69 admin/tools.php:375 admin/transactions.php:2
1649
- msgid "Transactions"
 
 
 
 
1650
  msgstr ""
1651
 
1652
- #: admin/settings.php:70
1653
  msgid "Add-ons"
1654
  msgstr ""
1655
 
1656
- #: admin/settings.php:71 admin/tools.php:398
1657
  msgid "Tools"
1658
  msgstr ""
1659
 
1660
- #: admin/settings.php:269
 
 
 
 
1661
  msgid "Number of items per page:"
1662
  msgstr ""
1663
 
@@ -1694,8 +1961,8 @@ msgid "Subscription pack draft updated."
1694
  msgstr ""
1695
 
1696
  #: admin/subscription.php:134 admin/subscription.php:459
1697
- #: class/frontend-account.php:127 class/subscription.php:704
1698
- #: class/subscription.php:884 class/subscription.php:897
1699
  msgid "Free"
1700
  msgstr ""
1701
 
@@ -1735,13 +2002,6 @@ msgstr ""
1735
  msgid "Are you sure to delete this pack?"
1736
  msgstr ""
1737
 
1738
- #: admin/subscription.php:231 class/render-form.php:1502
1739
- #: class/transactions-list-table.php:114 class/transactions-list-table.php:175
1740
- #: class/upload.php:171 includes/free/edit-user.php:100
1741
- #: templates/dashboard/posts.php:160 templates/dashboard.php:114
1742
- msgid "Delete"
1743
- msgstr ""
1744
-
1745
  #: admin/subscription.php:242
1746
  msgid "No subscription pack found"
1747
  msgstr ""
@@ -1762,16 +2022,16 @@ msgstr ""
1762
  msgid "Expires In:"
1763
  msgstr ""
1764
 
1765
- #: admin/subscription.php:328 includes/free/form-element.php:59
1766
  msgid "Enable Post Expiration"
1767
  msgstr ""
1768
 
1769
  #: admin/subscription.php:341 admin/subscription.php:538
1770
- #: includes/free/form-element.php:64
1771
  msgid "Post Expiration Time"
1772
  msgstr ""
1773
 
1774
- #: admin/subscription.php:380 includes/free/form-element.php:110
1775
  msgid "Status of post after post expiration time is over "
1776
  msgstr ""
1777
 
@@ -1791,7 +2051,7 @@ msgstr ""
1791
  msgid "Year(s)"
1792
  msgstr ""
1793
 
1794
- #: admin/subscription.php:451 includes/free/edit-profile.php:275
1795
  msgid "WPUF Subscription"
1796
  msgstr ""
1797
 
@@ -1819,7 +2079,7 @@ msgid "Remaining post: "
1819
  msgstr ""
1820
 
1821
  #: admin/subscription.php:513 class/subscription.php:758
1822
- #: templates/dashboard/subscription.php:38
1823
  msgid "Expire date:"
1824
  msgstr ""
1825
 
@@ -1835,7 +2095,7 @@ msgstr ""
1835
  msgid "Show Package"
1836
  msgstr ""
1837
 
1838
- #: admin/subscription.php:569 includes/free/edit-profile.php:279
1839
  msgid "Pack:"
1840
  msgstr ""
1841
 
@@ -1847,6 +2107,52 @@ msgstr ""
1847
  msgid "Delete Package"
1848
  msgstr ""
1849
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1850
  #: admin/template-post.php:193
1851
  msgid "Selection terms"
1852
  msgstr ""
@@ -1911,225 +2217,156 @@ msgstr ""
1911
  msgid "show values"
1912
  msgstr ""
1913
 
1914
- #: admin/tools.php:32
1915
- msgid "Form Export"
1916
- msgstr ""
1917
-
1918
- #: admin/tools.php:43 admin/tools.php:99
1919
- msgid "Select individual"
1920
- msgstr ""
1921
-
1922
- #: admin/tools.php:53 admin/tools.php:112 admin/tools.php:397
1923
- msgid "Export"
1924
- msgstr ""
1925
-
1926
- #: admin/tools.php:61 admin/tools.php:119
1927
- msgid "Sorry you have no form to export"
1928
- msgstr ""
1929
-
1930
- #: admin/tools.php:86
1931
- msgid "Registration Form Export"
1932
- msgstr ""
1933
-
1934
- #: admin/tools.php:132
1935
- msgid "Somthing went wrong. Please choose a file again"
1936
- msgstr ""
1937
-
1938
- #: admin/tools.php:144
1939
- msgid "Import successful. Have fun!"
1940
- msgstr ""
1941
-
1942
- #: admin/tools.php:147
1943
- msgid "Invalid file or file size too big."
1944
- msgstr ""
1945
-
1946
- #: admin/tools.php:153
1947
- msgid "Import forms"
1948
- msgstr ""
1949
-
1950
- #: admin/tools.php:155
1951
- msgid "Click Browse button and choose a json file that you backup before."
1952
- msgstr ""
1953
-
1954
- #: admin/tools.php:156
1955
- msgid "Press Restore button, WordPress does the rest for you."
1956
- msgstr ""
1957
-
1958
- #: admin/tools.php:161 admin/tools.php:396
1959
- msgid "Import"
1960
- msgstr ""
1961
-
1962
- #: admin/tools.php:215 admin/tools.php:235
1963
- msgid "Please select some form for exporting"
1964
- msgstr ""
1965
-
1966
- #: admin/tools.php:319
1967
- msgid "All forms has been deleted"
1968
- msgstr ""
1969
-
1970
- #: admin/tools.php:323
1971
- msgid "Settings has been cleared!"
1972
- msgstr ""
1973
-
1974
- #: admin/tools.php:327
1975
- msgid "All transactions has been deleted!"
1976
- msgstr ""
1977
-
1978
- #: admin/tools.php:344
1979
- msgid "Page Installation"
1980
- msgstr ""
1981
-
1982
- #: admin/tools.php:347
1983
  msgid ""
1984
- "Clicking this button will create required pages for the plugin. Note: It'll "
1985
- "not delete/replace existing pages."
1986
  msgstr ""
1987
 
1988
- #: admin/tools.php:353 admin/tools.php:357
1989
- msgid "Reset Settings"
1990
- msgstr ""
1991
-
1992
- #: admin/tools.php:356
1993
- msgid ""
1994
- "<strong>Caution:</strong> This tool will delete all the plugin settings of "
1995
- "WP User Frontend Pro"
1996
  msgstr ""
1997
 
1998
- #: admin/tools.php:362
1999
- msgid "Delete Forms"
2000
  msgstr ""
2001
 
2002
- #: admin/tools.php:365
2003
- msgid ""
2004
- "<strong>Caution:</strong> This tool will delete all the post and "
2005
- "registration/profile forms."
2006
  msgstr ""
2007
 
2008
- #: admin/tools.php:367
2009
- msgid "Delete Post Forms"
2010
  msgstr ""
2011
 
2012
- #: admin/tools.php:368
2013
- msgid "Delete Registration Forms"
 
 
 
2014
  msgstr ""
2015
 
2016
- #: admin/tools.php:369
2017
- msgid "Delete Subscriptions"
2018
  msgstr ""
2019
 
2020
- #: admin/tools.php:370
2021
- msgid "Delete Coupons"
2022
  msgstr ""
2023
 
2024
- #: admin/tools.php:378
2025
- msgid "This tool will delete all the transactions from the transaction table."
2026
  msgstr ""
2027
 
2028
- #: admin/tools.php:380
2029
- msgid "Delete Transactions"
2030
  msgstr ""
2031
 
2032
- #: admin/transactions.php:12
2033
- msgid "Total Income:"
2034
  msgstr ""
2035
 
2036
- #: admin/transactions.php:15
2037
- msgid "This Month:"
2038
  msgstr ""
2039
 
2040
  #: class/frontend-account.php:118
2041
  msgid "<p>You've not subscribed any package yet.</p>"
2042
  msgstr ""
2043
 
2044
- #: class/frontend-account.php:176 class/subscription.php:59
 
 
 
 
2045
  msgid "Nonce failure"
2046
  msgstr ""
2047
 
2048
- #: class/frontend-account.php:190
2049
  msgid "First Name is a required field."
2050
  msgstr ""
2051
 
2052
- #: class/frontend-account.php:194
2053
  msgid "Last Name is a required field."
2054
  msgstr ""
2055
 
2056
- #: class/frontend-account.php:198
2057
  msgid "Email is a required field."
2058
  msgstr ""
2059
 
2060
- #: class/frontend-account.php:209
2061
  msgid "Please provide a valid email address."
2062
  msgstr ""
2063
 
2064
- #: class/frontend-account.php:211
2065
  msgid "This email address is already registered."
2066
  msgstr ""
2067
 
2068
- #: class/frontend-account.php:217
2069
  msgid "Please fill out all password fields."
2070
  msgstr ""
2071
 
2072
- #: class/frontend-account.php:220
2073
  msgid "Please enter your current password."
2074
  msgstr ""
2075
 
2076
- #: class/frontend-account.php:223
2077
  msgid "Please re-enter your password."
2078
  msgstr ""
2079
 
2080
- #: class/frontend-account.php:226
2081
  msgid "New passwords do not match."
2082
  msgstr ""
2083
 
2084
- #: class/frontend-account.php:229 class/frontend-account.php:240
2085
  msgid "Your current password is incorrect."
2086
  msgstr ""
2087
 
2088
- #: class/frontend-dashboard.php:60 templates/dashboard/posts.php:36
2089
  msgid "Post Deleted"
2090
  msgstr ""
2091
 
2092
- #: class/frontend-dashboard.php:98
2093
  msgid "Author Info"
2094
  msgstr ""
2095
 
2096
- #: class/frontend-dashboard.php:102 includes/free/edit-user.php:97
2097
  msgid "%s"
2098
  msgstr ""
2099
 
2100
- #: class/frontend-dashboard.php:134 templates/dashboard/posts.php:30
2101
  msgid "You are not the post author. Cheeting huh!"
2102
  msgstr ""
2103
 
2104
- #: class/frontend-form-post.php:74
2105
  msgid "You are not logged in"
2106
  msgstr ""
2107
 
2108
- #: class/frontend-form-post.php:82 class/frontend-form-post.php:93
2109
  msgid "Invalid post"
2110
  msgstr ""
2111
 
2112
- #: class/frontend-form-post.php:87
2113
  msgid "Post Editing is disabled"
2114
  msgstr ""
2115
 
2116
- #: class/frontend-form-post.php:98
2117
  msgid "You are not allowed to edit"
2118
  msgstr ""
2119
 
2120
- #: class/frontend-form-post.php:110
2121
  msgid "I don't know how to edit this post, I don't have the form ID"
2122
  msgstr ""
2123
 
2124
- #: class/frontend-form-post.php:116
2125
  msgid "You can't edit a post while in pending mode."
2126
  msgstr ""
2127
 
2128
- #: class/frontend-form-post.php:184
2129
  msgid "Invalid email address."
2130
  msgstr ""
2131
 
2132
- #: class/frontend-form-post.php:193
2133
  msgid ""
2134
  "You already have an account in our site. Please login to continue.\n"
2135
  "\n"
@@ -2138,7 +2375,7 @@ msgid ""
2138
  "Click 'Cancel' to stay at this page."
2139
  msgstr ""
2140
 
2141
- #: class/frontend-form-post.php:556
2142
  msgid "Something went wrong"
2143
  msgstr ""
2144
 
@@ -2219,28 +2456,28 @@ msgstr ""
2219
  msgid "Really Simple Captcha validation failed"
2220
  msgstr ""
2221
 
2222
- #: class/render-form.php:103 class/render-form.php:114
2223
  msgid "reCAPTCHA validation failed"
2224
  msgstr ""
2225
 
2226
- #: class/render-form.php:326
2227
  msgid "Your selected form is no longer available."
2228
  msgstr ""
2229
 
2230
- #: class/render-form.php:331
2231
  msgid "Please make sure you've published your form."
2232
  msgstr ""
2233
 
2234
- #: class/render-form.php:1189 includes/free/edit-profile.php:198
2235
  #: templates/dashboard/edit-profile.php:36
2236
  msgid "Strength indicator"
2237
  msgstr ""
2238
 
2239
- #: class/render-form.php:1251 class/render-form.php:1364
2240
  msgid "-- Select --"
2241
  msgstr ""
2242
 
2243
- #: class/render-form.php:1306
2244
  msgid "This field is no longer available."
2245
  msgstr ""
2246
 
@@ -2288,51 +2525,51 @@ msgstr ""
2288
  msgid "Package & billing details: "
2289
  msgstr ""
2290
 
2291
- #: class/subscription.php:743 templates/dashboard/subscription.php:23
2292
  msgid "Unlimited"
2293
  msgstr ""
2294
 
2295
- #: class/subscription.php:796
2296
  msgid "Please enable force pack and charge posting from admin panel"
2297
  msgstr ""
2298
 
2299
- #: class/subscription.php:806
2300
  msgid "Payment is complete"
2301
  msgstr ""
2302
 
2303
- #: class/subscription.php:806
2304
  msgid "Congratulations, your payment has been completed!"
2305
  msgstr ""
2306
 
2307
- #: class/subscription.php:821
2308
  msgid "<p><i>You have a subscription pack activated. </i></p>"
2309
  msgstr ""
2310
 
2311
- #: class/subscription.php:823
2312
  msgid "<p><i>To cancel the pack, press the following cancel button</i></p>"
2313
  msgstr ""
2314
 
2315
- #: class/subscription.php:865
2316
  msgid "Every"
2317
  msgstr ""
2318
 
2319
- #: class/subscription.php:869
2320
  msgid "One time payment"
2321
  msgstr ""
2322
 
2323
- #: class/subscription.php:881
2324
  msgid "Sign Up"
2325
  msgstr ""
2326
 
2327
- #: class/subscription.php:886
2328
  msgid "Buy Now"
2329
  msgstr ""
2330
 
2331
- #: class/subscription.php:942
2332
  msgid "There is a <strong>%s</strong> charge to add a new post."
2333
  msgstr ""
2334
 
2335
- #: class/subscription.php:961
2336
  msgid "You must <a href=\"%s\">purchase a pack</a> before posting"
2337
  msgstr ""
2338
 
@@ -2397,12 +2634,12 @@ msgstr ""
2397
  msgid "No transactions found."
2398
  msgstr ""
2399
 
2400
- #: class/upload.php:165 wpuf-functions.php:706
2401
  msgid "Caption"
2402
  msgstr ""
2403
 
2404
  #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:46
2405
- #: includes/free/form-element.php:472
2406
  msgid "Conditional Logic"
2407
  msgstr ""
2408
 
@@ -2444,17 +2681,13 @@ msgstr ""
2444
  msgid "Google Map"
2445
  msgstr ""
2446
 
2447
- #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:195
2448
- msgid "Recaptcha"
2449
- msgstr ""
2450
-
2451
  #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:210
2452
- #: includes/free/form-element.php:31
2453
  msgid "Really Simple Captcha"
2454
  msgstr ""
2455
 
2456
  #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:225
2457
- #: includes/free/form-element.php:32
2458
  msgid "Action Hook"
2459
  msgstr ""
2460
 
@@ -2490,112 +2723,112 @@ msgstr ""
2490
  msgid " Add Form"
2491
  msgstr ""
2492
 
2493
- #: includes/free/edit-profile.php:27 includes/free/edit-user.php:37
2494
  #: templates/unauthorized.php:3
2495
  msgid "This page is restricted. Please %s to view this page."
2496
  msgstr ""
2497
 
2498
- #: includes/free/edit-profile.php:66
2499
  msgid "<strong>Success</strong>: Profile updated"
2500
  msgstr ""
2501
 
2502
- #: includes/free/edit-profile.php:96 includes/free/edit-user.php:92
2503
  #: includes/free/edit-user.php:144 templates/login-form.php:21
2504
  msgid "Username"
2505
  msgstr ""
2506
 
2507
- #: includes/free/edit-profile.php:97
2508
  msgid "Usernames cannot be changed."
2509
  msgstr ""
2510
 
2511
- #: includes/free/edit-profile.php:100
2512
  msgid "First Name"
2513
  msgstr ""
2514
 
2515
- #: includes/free/edit-profile.php:105
2516
  msgid "Last Name"
2517
  msgstr ""
2518
 
2519
- #: includes/free/edit-profile.php:110
2520
  msgid "Nickname"
2521
  msgstr ""
2522
 
2523
- #: includes/free/edit-profile.php:110 includes/free/edit-profile.php:151
2524
  msgid "(required)"
2525
  msgstr ""
2526
 
2527
- #: includes/free/edit-profile.php:115
2528
  msgid "Display to Public as"
2529
  msgstr ""
2530
 
2531
- #: includes/free/edit-profile.php:147
2532
  msgid "Contact Info"
2533
  msgstr ""
2534
 
2535
- #: includes/free/edit-profile.php:151
2536
  msgid "E-mail"
2537
  msgstr ""
2538
 
2539
- #: includes/free/edit-profile.php:156
2540
  msgid "Website"
2541
  msgstr ""
2542
 
2543
- #: includes/free/edit-profile.php:174
2544
  msgid "About Yourself"
2545
  msgstr ""
2546
 
2547
- #: includes/free/edit-profile.php:178
2548
  msgid "Biographical Info"
2549
  msgstr ""
2550
 
2551
- #: includes/free/edit-profile.php:180
2552
  msgid ""
2553
  "Share a little biographical information to fill out your profile. This may "
2554
  "be shown publicly."
2555
  msgstr ""
2556
 
2557
- #: includes/free/edit-profile.php:183 templates/dashboard/edit-profile.php:33
2558
  msgid "New Password"
2559
  msgstr ""
2560
 
2561
- #: includes/free/edit-profile.php:189
2562
  msgid "Confirm Password"
2563
  msgstr ""
2564
 
2565
- #: includes/free/edit-profile.php:191
2566
  msgid "Type your new password again."
2567
  msgstr ""
2568
 
2569
- #: includes/free/edit-profile.php:196
2570
  msgid "Password Strength"
2571
  msgstr ""
2572
 
2573
- #: includes/free/edit-profile.php:222 includes/free/form-element.php:344
2574
  #: templates/dashboard/edit-profile.php:63
2575
  msgid "Update Profile"
2576
  msgstr ""
2577
 
2578
- #: includes/free/edit-profile.php:241
2579
  msgid "WPUF Post Lock"
2580
  msgstr ""
2581
 
2582
- #: includes/free/edit-profile.php:244
2583
  msgid "Lock Post:"
2584
  msgstr ""
2585
 
2586
- #: includes/free/edit-profile.php:250
2587
  msgid "Lock user from creating new post."
2588
  msgstr ""
2589
 
2590
- #: includes/free/edit-profile.php:255
2591
  msgid "Lock Reason:"
2592
  msgstr ""
2593
 
2594
- #: includes/free/edit-profile.php:285
2595
  msgid "Post Count:"
2596
  msgstr ""
2597
 
2598
- #: includes/free/edit-profile.php:291
2599
  msgid "Validity:"
2600
  msgstr ""
2601
 
@@ -2667,111 +2900,99 @@ msgstr ""
2667
  msgid "Google Maps"
2668
  msgstr ""
2669
 
2670
- #: includes/free/form-element.php:30
2671
- msgid "reCaptcha"
2672
- msgstr ""
2673
-
2674
- #: includes/free/form-element.php:33
2675
  msgid "Term &amp; Conditions"
2676
  msgstr ""
2677
 
2678
- #: includes/free/form-element.php:121
2679
  msgid "Send Email to Author After Exceeding Post Expiration Time"
2680
  msgstr ""
2681
 
2682
- #: includes/free/form-element.php:146 includes/free/form-element.php:150
2683
  msgid "Enable Multistep"
2684
  msgstr ""
2685
 
2686
- #: includes/free/form-element.php:153
2687
  msgid "If checked, form will be displayed in frontend in multiple steps"
2688
  msgstr ""
2689
 
2690
- #: includes/free/form-element.php:157
2691
  msgid "Multistep Progressbar Type"
2692
  msgstr ""
2693
 
2694
- #: includes/free/form-element.php:167
2695
  msgid "Choose how you want the progressbar"
2696
  msgstr ""
2697
 
2698
- #: includes/free/form-element.php:197
2699
  msgid "New post created"
2700
  msgstr ""
2701
 
2702
- #: includes/free/form-element.php:202
2703
  msgid "A post has been edited"
2704
  msgstr ""
2705
 
2706
- #: includes/free/form-element.php:208
2707
  msgid "New Post Notificatoin"
2708
  msgstr ""
2709
 
2710
- #: includes/free/form-element.php:216 includes/free/form-element.php:253
2711
  msgid "Enable post notification"
2712
  msgstr ""
2713
 
2714
- #: includes/free/form-element.php:222 includes/free/form-element.php:259
2715
- msgid "To"
2716
- msgstr ""
2717
-
2718
- #: includes/free/form-element.php:230 includes/free/form-element.php:264
2719
- msgid "Subject"
2720
- msgstr ""
2721
-
2722
- #: includes/free/form-element.php:236 includes/free/form-element.php:269
2723
  msgid "Message"
2724
  msgstr ""
2725
 
2726
- #: includes/free/form-element.php:244
2727
  msgid "Update Post Notificatoin"
2728
  msgstr ""
2729
 
2730
- #: includes/free/form-element.php:276
2731
  msgid "You may use in to, subject & message:"
2732
  msgstr ""
2733
 
2734
- #: includes/free/form-element.php:301
2735
  msgid "Toggle All"
2736
  msgstr ""
2737
 
2738
- #: includes/free/form-element.php:305
2739
  msgid "Click on a form element to add to the editor"
2740
  msgstr ""
2741
 
2742
- #: includes/free/form-element.php:339
2743
  msgid "Registration successful"
2744
  msgstr ""
2745
 
2746
- #: includes/free/form-element.php:340
2747
  msgid "Profile updated successfully"
2748
  msgstr ""
2749
 
2750
- #: includes/free/form-element.php:343
2751
  msgid "Register"
2752
  msgstr ""
2753
 
2754
- #: includes/free/form-element.php:352
2755
  msgid "Enable Email Verfication"
2756
  msgstr ""
2757
 
2758
- #: includes/free/form-element.php:360
2759
  msgid "New User Role"
2760
  msgstr ""
2761
 
2762
- #: includes/free/form-element.php:396
2763
  msgid "Registration success message"
2764
  msgstr ""
2765
 
2766
- #: includes/free/form-element.php:403
2767
  msgid "Update profile message"
2768
  msgstr ""
2769
 
2770
- #: includes/free/form-element.php:432
2771
  msgid "Submit Button text"
2772
  msgstr ""
2773
 
2774
- #: includes/free/form-element.php:439
2775
  msgid "Update Button text"
2776
  msgstr ""
2777
 
@@ -2805,10 +3026,6 @@ msgstr ""
2805
  msgid "Pro Feature"
2806
  msgstr ""
2807
 
2808
- #: includes/free/loader.php:153
2809
- msgid "Upgrade to Pro"
2810
- msgstr ""
2811
-
2812
  #: includes/free/post-form-templates/woocommerce.php:12
2813
  msgid "WooCommerce Product"
2814
  msgstr ""
@@ -2821,6 +3038,52 @@ msgstr ""
2821
  msgid "Enable Recurring Payment"
2822
  msgstr ""
2823
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2824
  #: lib/class.settings-api.php:364
2825
  msgid "Choose File"
2826
  msgstr ""
@@ -2952,7 +3215,7 @@ msgstr ""
2952
  msgid "No %s found"
2953
  msgstr ""
2954
 
2955
- #: templates/dashboard/subscription.php:54
2956
  msgid "<p><i>To cancel the pack, press the following cancel button.</i></p>"
2957
  msgstr ""
2958
 
@@ -3024,272 +3287,256 @@ msgstr ""
3024
  msgid "-- select --"
3025
  msgstr ""
3026
 
3027
- #: wpuf-functions.php:404
3028
  msgid "Images"
3029
  msgstr ""
3030
 
3031
- #: wpuf-functions.php:405
3032
  msgid "Audio"
3033
  msgstr ""
3034
 
3035
- #: wpuf-functions.php:406
3036
  msgid "Videos"
3037
  msgstr ""
3038
 
3039
- #: wpuf-functions.php:407
3040
  msgid "PDF"
3041
  msgstr ""
3042
 
3043
- #: wpuf-functions.php:408
3044
  msgid "Office Documents"
3045
  msgstr ""
3046
 
3047
- #: wpuf-functions.php:409
3048
  msgid "Zip Archives"
3049
  msgstr ""
3050
 
3051
- #: wpuf-functions.php:410
3052
  msgid "Executable Files"
3053
  msgstr ""
3054
 
3055
- #: wpuf-functions.php:411
3056
  msgid "CSV"
3057
  msgstr ""
3058
 
3059
- #: wpuf-functions.php:1342
3060
  msgid "Posts"
3061
  msgstr ""
3062
 
3063
- #: wpuf-functions.php:1344
3064
  msgid "Edit Profile"
3065
  msgstr ""
3066
 
3067
- #: wpuf-functions.php:1448
3068
  msgid "United Arab Emirates Dirham"
3069
  msgstr ""
3070
 
3071
- #: wpuf-functions.php:1449
3072
  msgid "Australian Dollars"
3073
  msgstr ""
3074
 
3075
- #: wpuf-functions.php:1450
3076
  msgid "Argentine Peso"
3077
  msgstr ""
3078
 
3079
- #: wpuf-functions.php:1451
3080
  msgid "Bangladeshi Taka"
3081
  msgstr ""
3082
 
3083
- #: wpuf-functions.php:1452
3084
  msgid "Brazilian Real"
3085
  msgstr ""
3086
 
3087
- #: wpuf-functions.php:1453
3088
  msgid "Bulgarian Lev"
3089
  msgstr ""
3090
 
3091
- #: wpuf-functions.php:1454
3092
  msgid "Canadian Dollars"
3093
  msgstr ""
3094
 
3095
- #: wpuf-functions.php:1455
3096
  msgid "Chilean Peso"
3097
  msgstr ""
3098
 
3099
- #: wpuf-functions.php:1456
3100
  msgid "Chinese Yuan"
3101
  msgstr ""
3102
 
3103
- #: wpuf-functions.php:1457
3104
  msgid "Colombian Peso"
3105
  msgstr ""
3106
 
3107
- #: wpuf-functions.php:1458
3108
  msgid "Czech Koruna"
3109
  msgstr ""
3110
 
3111
- #: wpuf-functions.php:1459
3112
  msgid "Danish Krone"
3113
  msgstr ""
3114
 
3115
- #: wpuf-functions.php:1460
3116
  msgid "Dominican Peso"
3117
  msgstr ""
3118
 
3119
- #: wpuf-functions.php:1461
3120
  msgid "Algerian Dinar"
3121
  msgstr ""
3122
 
3123
- #: wpuf-functions.php:1462
3124
  msgid "Euros"
3125
  msgstr ""
3126
 
3127
- #: wpuf-functions.php:1463
3128
  msgid "Hong Kong Dollar"
3129
  msgstr ""
3130
 
3131
- #: wpuf-functions.php:1464
3132
  msgid "Croatia kuna"
3133
  msgstr ""
3134
 
3135
- #: wpuf-functions.php:1465
3136
  msgid "Hungarian Forint"
3137
  msgstr ""
3138
 
3139
- #: wpuf-functions.php:1466
3140
  msgid "Icelandic krona"
3141
  msgstr ""
3142
 
3143
- #: wpuf-functions.php:1467
3144
  msgid "Indonesia Rupiah"
3145
  msgstr ""
3146
 
3147
- #: wpuf-functions.php:1468
3148
  msgid "Indian Rupee"
3149
  msgstr ""
3150
 
3151
- #: wpuf-functions.php:1469
3152
  msgid "Nepali Rupee"
3153
  msgstr ""
3154
 
3155
- #: wpuf-functions.php:1470
3156
  msgid "Israeli Shekel"
3157
  msgstr ""
3158
 
3159
- #: wpuf-functions.php:1471
3160
  msgid "Japanese Yen"
3161
  msgstr ""
3162
 
3163
- #: wpuf-functions.php:1472
3164
  msgid "Lao Kip"
3165
  msgstr ""
3166
 
3167
- #: wpuf-functions.php:1473
3168
  msgid "South Korean Won"
3169
  msgstr ""
3170
 
3171
- #: wpuf-functions.php:1474
3172
  msgid "Malaysian Ringgits"
3173
  msgstr ""
3174
 
3175
- #: wpuf-functions.php:1475
3176
  msgid "Mexican Peso"
3177
  msgstr ""
3178
 
3179
- #: wpuf-functions.php:1476
3180
  msgid "Nigerian Naira"
3181
  msgstr ""
3182
 
3183
- #: wpuf-functions.php:1477
3184
  msgid "Norwegian Krone"
3185
  msgstr ""
3186
 
3187
- #: wpuf-functions.php:1478
3188
  msgid "New Zealand Dollar"
3189
  msgstr ""
3190
 
3191
- #: wpuf-functions.php:1479
3192
  msgid "Omani Rial"
3193
  msgstr ""
3194
 
3195
- #: wpuf-functions.php:1480
3196
  msgid "Iranian Rial"
3197
  msgstr ""
3198
 
3199
- #: wpuf-functions.php:1481
3200
  msgid "Pakistani Rupee"
3201
  msgstr ""
3202
 
3203
- #: wpuf-functions.php:1482
3204
  msgid "Paraguayan Guaraní"
3205
  msgstr ""
3206
 
3207
- #: wpuf-functions.php:1483
3208
  msgid "Philippine Pesos"
3209
  msgstr ""
3210
 
3211
- #: wpuf-functions.php:1484
3212
  msgid "Polish Zloty"
3213
  msgstr ""
3214
 
3215
- #: wpuf-functions.php:1485
3216
  msgid "Pounds Sterling"
3217
  msgstr ""
3218
 
3219
- #: wpuf-functions.php:1486
3220
  msgid "Romanian Leu"
3221
  msgstr ""
3222
 
3223
- #: wpuf-functions.php:1487
3224
  msgid "Russian Ruble"
3225
  msgstr ""
3226
 
3227
- #: wpuf-functions.php:1488
3228
  msgid "Saudi Riyal"
3229
  msgstr ""
3230
 
3231
- #: wpuf-functions.php:1489
3232
  msgid "Singapore Dollar"
3233
  msgstr ""
3234
 
3235
- #: wpuf-functions.php:1490
3236
  msgid "South African rand"
3237
  msgstr ""
3238
 
3239
- #: wpuf-functions.php:1491
3240
  msgid "Swedish Krona"
3241
  msgstr ""
3242
 
3243
- #: wpuf-functions.php:1492
3244
  msgid "Swiss Franc"
3245
  msgstr ""
3246
 
3247
- #: wpuf-functions.php:1493
3248
  msgid "Taiwan New Dollars"
3249
  msgstr ""
3250
 
3251
- #: wpuf-functions.php:1494
3252
  msgid "Thai Baht"
3253
  msgstr ""
3254
 
3255
- #: wpuf-functions.php:1495
3256
  msgid "Turkish Lira"
3257
  msgstr ""
3258
 
3259
- #: wpuf-functions.php:1496
3260
  msgid "US Dollar"
3261
  msgstr ""
3262
 
3263
- #: wpuf-functions.php:1497
3264
  msgid "Vietnamese Dong"
3265
  msgstr ""
3266
 
3267
- #: wpuf-functions.php:1498
3268
  msgid "Egyptian Pound"
3269
  msgstr ""
3270
 
3271
- #: wpuf.php:106
3272
  msgid "Your Post Has Been Expired"
3273
  msgstr ""
3274
 
3275
- #: wpuf.php:281
3276
- msgid "is required"
3277
- msgstr ""
3278
-
3279
- #: wpuf.php:282
3280
- msgid "does not match"
3281
- msgstr ""
3282
-
3283
- #: wpuf.php:283
3284
- msgid "is not valid"
3285
- msgstr ""
3286
-
3287
- #: wpuf.php:344
3288
- msgid "Please fix the errors to proceed"
3289
- msgstr ""
3290
-
3291
- #: wpuf.php:346
3292
- msgid "Word limit reached"
3293
  msgstr ""
3294
 
3295
  #. Plugin URI of the plugin/theme
@@ -3310,7 +3557,7 @@ msgstr ""
3310
  msgid "https://tareq.co"
3311
  msgstr ""
3312
 
3313
- #: wpuf-functions.php:1011
3314
  msgctxt "tag delimiter"
3315
  msgid ","
3316
  msgstr ""
2
  # This file is distributed under the GPL2.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: WP User Frontend 2.5.5\n"
6
  "Report-Msgid-Bugs-To: "
7
  "https://wedevs.com/support/forum/plugin-support/wp-user-frontend/\n"
8
+ "POT-Creation-Date: 2017-08-26 07:01:29+00:00\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=utf-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
18
  msgid "WP User Frontend - Add-Ons"
19
  msgstr ""
20
 
21
+ #: admin/class-tools.php:33
22
+ msgid "Form Export"
23
+ msgstr ""
24
+
25
+ #: admin/class-tools.php:39 admin/class-tools.php:95
26
+ #: admin/post-forms-list-table.php:43 class/transactions-list-table.php:85
27
+ msgid "All"
28
+ msgstr ""
29
+
30
+ #: admin/class-tools.php:44 admin/class-tools.php:100
31
+ msgid "Select individual"
32
+ msgstr ""
33
+
34
+ #: admin/class-tools.php:54 admin/class-tools.php:113 admin/tools.php:13
35
+ msgid "Export"
36
+ msgstr ""
37
+
38
+ #: admin/class-tools.php:62 admin/class-tools.php:120
39
+ msgid "Sorry you have no form to export"
40
+ msgstr ""
41
+
42
+ #: admin/class-tools.php:87
43
+ msgid "Registration Form Export"
44
+ msgstr ""
45
+
46
+ #: admin/class-tools.php:133
47
+ msgid "Somthing went wrong. Please choose a file again"
48
+ msgstr ""
49
+
50
+ #: admin/class-tools.php:145
51
+ msgid "Import successful. Have fun!"
52
+ msgstr ""
53
+
54
+ #: admin/class-tools.php:148
55
+ msgid "Invalid file or file size too big."
56
+ msgstr ""
57
+
58
+ #: admin/class-tools.php:154
59
+ msgid "Import forms"
60
+ msgstr ""
61
+
62
+ #: admin/class-tools.php:156
63
+ msgid "Click Browse button and choose a json file that you backup before."
64
+ msgstr ""
65
+
66
+ #: admin/class-tools.php:157
67
+ msgid "Press <strong>Import</strong> button, we will do the rest for you."
68
+ msgstr ""
69
+
70
+ #: admin/class-tools.php:162 admin/tools.php:12
71
+ msgid "Import"
72
+ msgstr ""
73
+
74
+ #: admin/class-tools.php:217 admin/class-tools.php:237
75
+ msgid "Please select some form for exporting"
76
+ msgstr ""
77
+
78
+ #: admin/class-tools.php:322
79
+ msgid "All forms has been deleted"
80
+ msgstr ""
81
+
82
+ #: admin/class-tools.php:326
83
+ msgid "Settings has been cleared!"
84
+ msgstr ""
85
+
86
+ #: admin/class-tools.php:330
87
+ msgid "All transactions has been deleted!"
88
+ msgstr ""
89
+
90
+ #: admin/class-tools.php:347
91
+ msgid "Page Installation"
92
+ msgstr ""
93
+
94
+ #: admin/class-tools.php:350
95
+ msgid ""
96
+ "Clicking this button will create required pages for the plugin. Note: It'll "
97
+ "not delete/replace existing pages."
98
+ msgstr ""
99
+
100
+ #: admin/class-tools.php:351 admin/installer.php:30
101
+ msgid "Install WPUF Pages"
102
+ msgstr ""
103
+
104
+ #: admin/class-tools.php:356 admin/class-tools.php:360
105
+ msgid "Reset Settings"
106
+ msgstr ""
107
+
108
+ #: admin/class-tools.php:359
109
+ msgid ""
110
+ "<strong>Caution:</strong> This tool will delete all the plugin settings of "
111
+ "WP User Frontend Pro"
112
+ msgstr ""
113
+
114
+ #: admin/class-tools.php:365
115
+ msgid "Delete Forms"
116
+ msgstr ""
117
+
118
+ #: admin/class-tools.php:368
119
+ msgid ""
120
+ "<strong>Caution:</strong> This tool will delete all the post and "
121
+ "registration/profile forms."
122
+ msgstr ""
123
+
124
+ #: admin/class-tools.php:370
125
+ msgid "Delete Post Forms"
126
+ msgstr ""
127
+
128
+ #: admin/class-tools.php:371
129
+ msgid "Delete Registration Forms"
130
+ msgstr ""
131
+
132
+ #: admin/class-tools.php:372
133
+ msgid "Delete Subscriptions"
134
+ msgstr ""
135
+
136
+ #: admin/class-tools.php:373
137
+ msgid "Delete Coupons"
138
+ msgstr ""
139
+
140
+ #: admin/class-tools.php:378 admin/settings.php:73 admin/transactions.php:2
141
+ msgid "Transactions"
142
+ msgstr ""
143
+
144
+ #: admin/class-tools.php:381
145
+ msgid "This tool will delete all the transactions from the transaction table."
146
+ msgstr ""
147
+
148
+ #: admin/class-tools.php:383
149
+ msgid "Delete Transactions"
150
+ msgstr ""
151
+
152
  #: admin/form-builder/assets/js/components/builder-stage/template.php:3
153
+ #: assets/js-templates/form-components.php:4
154
  msgid "Add fields by dragging the fields from the right sidebar to this area."
155
  msgstr ""
156
 
157
  #: admin/form-builder/assets/js/components/builder-stage/template.php:30
158
+ #: assets/js-templates/form-components.php:31
159
  msgid "is available in Pro Version"
160
  msgstr ""
161
 
162
  #: admin/form-builder/assets/js/components/builder-stage/template.php:54
163
+ #: assets/js-templates/form-components.php:55
164
  msgid "Hidden Fields"
165
  msgstr ""
166
 
167
  #: admin/form-builder/assets/js/components/builder-stage/template.php:61
168
+ #: assets/js-templates/form-components.php:62
169
  msgid "key"
170
  msgstr ""
171
 
172
  #: admin/form-builder/assets/js/components/builder-stage/template.php:61
173
+ #: assets/js-templates/form-components.php:62
174
  msgid "value"
175
  msgstr ""
176
 
177
  #: admin/form-builder/assets/js/components/field-option-data/template.php:5
178
+ #: admin/template.php:244 assets/js-templates/form-components.php:103
179
  msgid "Show values"
180
  msgstr ""
181
 
182
  #: admin/form-builder/assets/js/components/field-option-data/template.php:16
183
  #: admin/template.php:247 admin/template.php:305
184
+ #: assets/js-templates/form-components.php:114
185
  msgid "Label"
186
  msgstr ""
187
 
188
  #: admin/form-builder/assets/js/components/field-option-data/template.php:20
189
  #: admin/template.php:247 admin/template.php:305
190
+ #: assets/js-templates/form-components.php:118
191
  msgid "Value"
192
  msgstr ""
193
 
194
+ #: admin/form-builder/assets/js/components/field-option-data/template.php:68
195
+ #: assets/js-templates/form-components.php:166
196
  msgid "Clear Selection"
197
  msgstr ""
198
 
199
  #: admin/form-builder/assets/js/components/field-option-pro-feature-alert/template.php:4
200
+ #: assets/js-templates/form-components.php:174
201
  msgid "Available in Pro Version"
202
  msgstr ""
203
 
204
  #: admin/form-builder/assets/js/components/field-select/template.php:7
205
+ #: assets/js-templates/form-components.php:252
206
  msgid "Select an option"
207
  msgstr ""
208
 
209
  #: admin/form-builder/assets/js/components/form-featured_image/template.php:5
210
  #: admin/form-builder/assets/js/components/form-image_upload/template.php:5
211
+ #: assets/js-templates/form-components.php:377
212
+ #: assets/js-templates/form-components.php:443 class/render-form.php:1504
213
  msgid "Select Image"
214
  msgstr ""
215
 
216
+ #: admin/form-builder/assets/js/components/form-notification/template.php:3
217
+ #: assets/js-templates/form-components.php:475
218
+ msgid "Add Notification"
219
+ msgstr ""
220
+
221
+ #: admin/form-builder/assets/js/components/form-notification/template.php:13
222
+ #: admin/form.php:759 admin/html/form-settings-post.php:16
223
+ #: admin/subscription.php:205 admin/template-post.php:167
224
+ #: assets/js-templates/form-components.php:485
225
+ #: includes/free/edit-profile.php:97
226
+ msgid "Name"
227
+ msgstr ""
228
+
229
+ #: admin/form-builder/assets/js/components/form-notification/template.php:14
230
+ #: admin/form-builder/assets/js/components/form-notification/template.php:62
231
+ #: assets/js-templates/form-components.php:486
232
+ #: assets/js-templates/form-components.php:534
233
+ #: includes/free/form-element.php:231 includes/free/form-element.php:265
234
+ msgid "Subject"
235
+ msgstr ""
236
+
237
+ #: admin/form-builder/assets/js/components/form-notification/template.php:29
238
+ #: admin/post-forms-list-table.php:394
239
+ #: assets/js-templates/form-components.php:501
240
+ msgid "Duplicate"
241
+ msgstr ""
242
+
243
+ #: admin/form-builder/assets/js/components/form-notification/template.php:30
244
+ #: admin/form-builder/views/form-builder.php:9 admin/settings.php:77
245
+ #: assets/js-templates/form-components.php:502
246
+ msgid "Settings"
247
+ msgstr ""
248
+
249
+ #: admin/form-builder/assets/js/components/form-notification/template.php:34
250
+ #: assets/js-templates/form-components.php:506
251
+ msgid "No notifications found"
252
+ msgstr ""
253
+
254
+ #: admin/form-builder/assets/js/components/form-notification/template.php:49
255
+ #: assets/js-templates/form-components.php:521
256
+ #: includes/free/form-element.php:223 includes/free/form-element.php:260
257
+ msgid "To"
258
+ msgstr ""
259
+
260
+ #: admin/form-builder/assets/js/components/form-notification/template.php:55
261
+ #: assets/js-templates/form-components.php:527
262
+ msgid "Reply To"
263
+ msgstr ""
264
+
265
+ #: admin/form-builder/assets/js/components/form-notification/template.php:68
266
+ #: assets/js-templates/form-components.php:540
267
+ msgid "Email Message"
268
+ msgstr ""
269
+
270
+ #: admin/form-builder/assets/js/components/form-notification/template.php:74
271
+ #: assets/js-templates/form-components.php:546
272
+ msgid " Advanced"
273
+ msgstr ""
274
+
275
+ #: admin/form-builder/assets/js/components/form-notification/template.php:79
276
+ #: assets/js-templates/form-components.php:551
277
+ msgid "From Name"
278
+ msgstr ""
279
+
280
+ #: admin/form-builder/assets/js/components/form-notification/template.php:85
281
+ #: assets/js-templates/form-components.php:557
282
+ msgid "From Address"
283
+ msgstr ""
284
+
285
+ #: admin/form-builder/assets/js/components/form-notification/template.php:93
286
+ #: assets/js-templates/form-components.php:565
287
+ msgid "CC"
288
+ msgstr ""
289
+
290
+ #: admin/form-builder/assets/js/components/form-notification/template.php:99
291
+ #: assets/js-templates/form-components.php:571
292
+ msgid "BCC"
293
+ msgstr ""
294
+
295
+ #: admin/form-builder/assets/js/components/form-notification/template.php:109
296
+ #: admin/subscription.php:231 assets/js-templates/form-components.php:581
297
+ #: class/render-form.php:1516 class/transactions-list-table.php:114
298
+ #: class/transactions-list-table.php:175 class/upload.php:171
299
+ #: includes/free/edit-user.php:100 templates/dashboard/posts.php:160
300
+ #: templates/dashboard.php:114
301
+ msgid "Delete"
302
+ msgstr ""
303
+
304
+ #: admin/form-builder/assets/js/components/form-notification/template.php:110
305
+ #: assets/js-templates/form-components.php:582
306
+ msgid "Done"
307
+ msgstr ""
308
+
309
  #: admin/form-builder/assets/js/components/form-post_content/template.php:4
310
+ #: assets/js-templates/form-components.php:593 class/render-form.php:925
311
  msgid "Insert Photo"
312
  msgstr ""
313
 
314
  #: admin/form-builder/assets/js/components/form-taxonomy/template.php:12
315
+ #: assets/js-templates/form-components.php:703
316
  msgid "— Select —"
317
  msgstr ""
318
 
319
+ #: admin/form-builder/assets/js/components/integration/template.php:11
320
+ #: assets/js-templates/form-components.php:792
321
+ msgid "Premium Feature"
322
+ msgstr ""
323
+
324
+ #: admin/form-builder/assets/js/components/integration/template.php:16
325
+ #: assets/js-templates/form-components.php:797
326
+ msgid "Toggle panel"
327
+ msgstr ""
328
+
329
+ #: admin/form-builder/assets/js/components/integration/template.php:28
330
+ #: assets/js-templates/form-components.php:809
331
+ msgid "This feature is available on the premium version only."
332
+ msgstr ""
333
+
334
+ #: admin/form-builder/assets/js/components/integration/template.php:29
335
+ #: assets/js-templates/form-components.php:810 includes/free/loader.php:153
336
+ msgid "Upgrade to Pro"
337
+ msgstr ""
338
+
339
+ #: admin/form-builder/assets/js/components/integration/template.php:37
340
+ #: assets/js-templates/form-components.php:818
341
+ msgid "No integration found."
342
+ msgstr ""
343
+
344
  #: admin/form-builder/assets/js/components/merge-tags/template.php:8
345
+ #: assets/js-templates/form-components.php:830
346
  msgid "Form Fields"
347
  msgstr ""
348
 
349
+ #: admin/form-builder/assets/js/components/merge-tags/template.php:17
350
+ #: assets/js-templates/form-components.php:839
351
+ msgid "first"
352
+ msgstr ""
353
+
354
+ #: admin/form-builder/assets/js/components/merge-tags/template.php:18
355
+ #: assets/js-templates/form-components.php:840
356
+ msgid "middle"
357
+ msgstr ""
358
+
359
+ #: admin/form-builder/assets/js/components/merge-tags/template.php:19
360
+ #: assets/js-templates/form-components.php:841
361
+ msgid "last"
362
+ msgstr ""
363
+
364
+ #: admin/form-builder/assets/js/components/merge-tags/template.php:27
365
+ #: assets/js-templates/form-components.php:849
366
  msgid "No fields available"
367
  msgstr ""
368
 
369
+ #: admin/form-builder/assets/js/components/modal/template.php:4
370
+ #: admin/html/modal.php:4 assets/js-templates/form-components.php:884
371
+ msgid "Modal window. Press escape to close."
372
+ msgstr ""
373
+
374
+ #: admin/form-builder/assets/js/components/modal/template.php:5
375
+ #: admin/html/modal.php:5 assets/js-templates/form-components.php:885
376
+ msgid "Close modal window"
377
+ msgstr ""
378
+
379
  #: admin/form-builder/class-wpuf-admin-form-builder-ajax.php:29
380
  msgid "Unauthorized operation"
381
  msgstr ""
382
 
383
+ #: admin/form-builder/class-wpuf-admin-form-builder-ajax.php:33
384
  msgid "Invalid form id"
385
  msgstr ""
386
 
387
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:283
388
  msgid "Custom Fields"
389
  msgstr ""
390
 
391
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:304
392
  msgid "Others"
393
  msgstr ""
394
 
395
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:320
396
  msgid "Advanced Options"
397
  msgstr ""
398
 
399
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:321
400
  msgid "Are you sure you want to delete this field?"
401
  msgstr ""
402
 
403
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:322
404
  msgid "Yes, delete it"
405
  msgstr ""
406
 
407
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:323
408
  msgid "No, cancel it"
409
  msgstr ""
410
 
411
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:324
412
  msgid "OK"
413
  msgstr ""
414
 
415
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:325
416
+ #: class/payment.php:168 class/subscription.php:834
417
+ #: templates/dashboard/subscription.php:62
418
  msgid "Cancel"
419
  msgstr ""
420
 
421
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:326
422
  #: includes/free/admin/shortcode-builder.php:69
423
  msgid "Close"
424
  msgstr ""
425
 
426
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:327
427
  msgid "This field must contain at least one choice"
428
  msgstr ""
429
 
430
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:328
431
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:377
432
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:417
433
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:473
434
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:528
435
  msgid "Option"
436
  msgstr ""
437
 
438
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:329
439
  msgid "Column"
440
  msgstr ""
441
 
442
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:330
443
  msgid "This field must contain at least one column"
444
  msgstr ""
445
 
446
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:331
447
  msgid "is available in Pro version"
448
  msgstr ""
449
 
450
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:332
451
  msgid "Please upgrade to the Pro version to unlock all these awesome features"
452
  msgstr ""
453
 
454
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:333
455
  msgid "Get the Pro version"
456
  msgstr ""
457
 
458
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:334 admin/form.php:743
459
  msgid "Select"
460
  msgstr ""
461
 
462
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:335
463
  msgid "Saved form data"
464
  msgstr ""
465
 
466
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:336
467
  msgid "You have unsaved changes."
468
  msgstr ""
469
 
470
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:337
471
  #: admin/form-builder/views/form-builder.php:45
472
  msgid "Click to copy shortcode"
473
  msgstr ""
474
 
475
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:45
476
  #: admin/template.php:76
477
  msgid "Field Label"
478
  msgstr ""
479
 
480
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:49
481
  #: admin/template.php:77
482
  msgid "Enter a title of this field"
483
  msgstr ""
484
 
485
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:54
486
  #: admin/template.php:94
487
  msgid "Help text"
488
  msgstr ""
489
 
490
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:58
491
  #: admin/template.php:95
492
  msgid "Give the user some information about this field"
493
  msgstr ""
494
 
495
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:63
496
  #: admin/template.php:67
497
  msgid "Required"
498
  msgstr ""
499
 
 
 
 
 
 
 
 
 
 
 
500
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:66
501
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:444
502
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:499
503
+ #: admin/post-forms-list-table.php:345 admin/settings-options.php:83
504
+ #: admin/settings-options.php:158 admin/settings-options.php:169
505
+ #: admin/settings-options.php:258 admin/subscription.php:145
506
+ #: admin/template.php:70 includes/free/form-element.php:476
507
+ msgid "Yes"
508
+ msgstr ""
509
+
510
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:67
511
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:445
512
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:500
513
+ #: admin/post-forms-list-table.php:346 admin/settings-options.php:84
514
+ #: admin/settings-options.php:159 admin/settings-options.php:170
515
+ #: admin/settings-options.php:259 admin/subscription.php:147
516
+ #: admin/template.php:71 includes/free/form-element.php:477
517
  msgid "No"
518
  msgstr ""
519
 
520
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:73
521
  msgid ""
522
  "Check this option to mark the field required. A form will not submit unless "
523
  "all required fields are provided."
524
  msgstr ""
525
 
526
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:78
527
  #: admin/template.php:99
528
  msgid "CSS Class Name"
529
  msgstr ""
530
 
531
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:82
532
  msgid "Provide a container class name for this field."
533
  msgstr ""
534
 
535
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:89
536
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:617
537
  #: admin/template.php:82 admin/template.php:575
538
  msgid "Meta Key"
539
  msgstr ""
540
 
541
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:93
542
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:621
543
  #: admin/template.php:83 admin/template.php:576
544
  msgid "Name of the meta key this field will save to"
545
  msgstr ""
546
 
547
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:111
548
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:181
549
  #: admin/template.php:126 admin/template.php:186
550
  msgid "Placeholder text"
551
  msgstr ""
552
 
553
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:115
554
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:185
555
  #: admin/template.php:127
556
  msgid "Text for HTML5 placeholder attribute"
557
  msgstr ""
558
 
559
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:120
560
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:193
561
  #: admin/template.php:131 admin/template.php:191
562
  msgid "Default value"
563
  msgstr ""
564
 
565
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:124
566
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:197
567
  #: admin/template.php:132
568
  msgid "The default value this field will have"
569
  msgstr ""
570
 
571
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:129
572
  #: admin/template.php:136
573
  msgid "Size"
574
  msgstr ""
575
 
576
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:134
577
  #: admin/template.php:137
578
  msgid "Size of this input field"
579
  msgstr ""
580
 
581
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:141
582
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:216
583
  #: admin/template.php:141 admin/template.php:206
584
  msgid "Word Restriction"
585
  msgstr ""
586
 
587
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:145
588
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:220
589
  #: admin/template.php:145 admin/template.php:210
590
  msgid "Numebr of words the author to be restricted in"
591
  msgstr ""
592
 
593
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:163
594
  #: admin/template.php:176
595
  msgid "Rows"
596
  msgstr ""
597
 
598
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:167
599
  msgid "Number of rows in textarea"
600
  msgstr ""
601
 
602
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:172
603
  #: admin/template.php:181
604
  msgid "Columns"
605
  msgstr ""
606
 
607
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:176
608
  msgid "Number of columns in textarea"
609
  msgstr ""
610
 
611
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:202
612
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:291
613
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:298
614
  #: admin/template.php:196
615
  msgid "Textarea"
616
  msgstr ""
617
 
618
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:205
619
  #: admin/template.php:199
620
  msgid "Normal"
621
  msgstr ""
622
 
623
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:206
624
  #: admin/template.php:200
625
  msgid "Rich textarea"
626
  msgstr ""
627
 
628
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:207
629
  #: admin/template.php:201
630
  msgid "Teeny Rich textarea"
631
  msgstr ""
632
 
633
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:237
634
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:378
635
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:418
636
  msgid "- select -"
637
  msgstr ""
638
 
639
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:255
640
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:262
641
  msgid "Text"
642
  msgstr ""
643
 
644
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:328
645
  #: admin/template.php:398 admin/template.php:422 admin/template.php:454
646
  #: admin/template.php:486 templates/dashboard/posts.php:84
647
  #: templates/dashboard.php:37
648
  msgid "Options"
649
  msgstr ""
650
 
651
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:333
652
  msgid "Add options for the form field"
653
  msgstr ""
654
 
655
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:352
656
  #: admin/template.php:449 admin/template.php:481
657
  msgid "Select Text"
658
  msgstr ""
659
 
660
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:356
661
  #: admin/template.php:438 admin/template.php:470
662
  msgid ""
663
  "First element of the select dropdown. Leave this empty if you don't want to "
664
  "show this field"
665
  msgstr ""
666
 
667
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:364
668
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:371
669
  #: admin/template-post.php:156
670
  msgid "Dropdown"
671
  msgstr ""
672
 
673
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:404
674
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:411
675
  #: admin/form.php:744 admin/template-post.php:157
676
  msgid "Multi Select"
677
  msgstr ""
678
 
679
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:441
680
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:496
681
  msgid "Show in inline list"
682
  msgstr ""
683
 
684
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:451
685
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:506
686
  msgid "Show this option in an inline list"
687
  msgstr ""
688
 
689
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:459
690
  msgid "Radio"
691
  msgstr ""
692
 
693
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:466
694
  msgid "Radio Field"
695
  msgstr ""
696
 
697
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:514
698
  #: admin/form.php:745 admin/template-post.php:158
699
  msgid "Checkbox"
700
  msgstr ""
701
 
702
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:521
703
  msgid "Checkbox Field"
704
  msgstr ""
705
 
706
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:549
707
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:556
708
  msgid "URL"
709
  msgstr ""
710
 
711
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:584
712
  msgid "Email Address"
713
  msgstr ""
714
 
715
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:591
716
  #: admin/html/form-settings-post.php:17 class/transactions-list-table.php:48
717
  #: includes/free/edit-user.php:152
718
  msgid "Email"
719
  msgstr ""
720
 
721
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:626
722
  #: admin/template.php:582
723
  msgid "Meta Value"
724
  msgstr ""
725
 
726
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:630
727
  #: admin/template.php:583
728
  msgid "Enter the meta value"
729
  msgstr ""
730
 
731
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:636
732
  msgid "Hidden Field"
733
  msgstr ""
734
 
735
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:666
736
  #: admin/form.php:662 admin/template-post.php:105 admin/template.php:646
737
  msgid "Max. file size"
738
  msgstr ""
739
 
740
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:670
741
  #: admin/form.php:666 admin/template-post.php:93 admin/template.php:634
742
  msgid "Enter maximum upload size limit in KB"
743
  msgstr ""
744
 
745
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:675
746
  #: admin/template.php:651
747
  msgid "Max. files"
748
  msgstr ""
749
 
750
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:679
751
  #: admin/template.php:635
752
  msgid "Number of images can be uploaded"
753
  msgstr ""
754
 
755
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:685
756
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:692
757
  #: includes/free/form-element.php:8
758
  msgid "Image Upload"
759
  msgstr ""
760
 
761
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:717
762
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:798
763
+ #: admin/template.php:544 admin/template.php:604 admin/template.php:683
764
+ #: class/upload.php:164 templates/dashboard/posts.php:74
765
+ #: templates/dashboard.php:27 wpuf-functions.php:726
766
  msgid "Title"
767
  msgstr ""
768
 
769
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:721
770
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:802
771
  msgid "Title of the section"
772
  msgstr ""
773
 
774
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:726
775
  #: admin/subscription.php:206 admin/template.php:609 class/upload.php:166
776
+ #: wpuf-functions.php:732
777
  msgid "Description"
778
  msgstr ""
779
 
780
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:730
781
  msgid "Some details text about the section"
782
  msgstr ""
783
 
784
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:736
785
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:742
786
  msgid "Section Break"
787
  msgstr ""
788
 
789
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:743
790
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:779
791
  msgid "Some description about this section"
792
  msgstr ""
793
 
794
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:762
795
  #: admin/template.php:549
796
  msgid "HTML Codes"
797
  msgstr ""
798
 
799
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:766
800
  msgid "Paste your HTML codes, WordPress shortcodes will also work here"
801
  msgstr ""
802
 
803
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:772
804
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:778
805
  msgid "Custom HTML"
806
  msgstr ""
807
 
808
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:810
809
+ #: admin/template.php:703
810
+ msgid "Enable noCaptcha"
811
  msgstr ""
812
 
813
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:811
814
+ #: admin/template.php:699
815
+ msgid "Enable Invisible reCaptcha"
816
+ msgstr ""
817
+
818
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:816
819
+ msgid "Select reCaptcha type"
820
+ msgstr ""
821
+
822
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:822
823
+ #: includes/free/form-element.php:31
824
+ msgid "reCaptcha"
825
+ msgstr ""
826
+
827
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:826
828
+ msgid "Site key and Secret key"
829
+ msgstr ""
830
+
831
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:828
832
+ msgid ""
833
+ "You need to set Site key and Secret key in <a href=\"%s\" "
834
+ "target=\"_blank\">Settings</a> in order to use \"Recaptcha\" field. <a "
835
+ "href=\"%s\" target=\"_blank\">Click here to get the these key</a>."
836
+ msgstr ""
837
+
838
+ #: admin/form-builder/views/form-builder.php:5
839
+ msgid "Form Editor"
840
  msgstr ""
841
 
842
  #: admin/form-builder/views/form-builder.php:16
886
  msgstr ""
887
 
888
  #: admin/form-template.php:63
 
 
 
 
 
 
889
  msgid "Want a new integration? <a href=\"%s\" target=\"_blank\">Let us know</a>."
890
  msgstr ""
891
 
892
+ #: admin/form-template.php:168
893
  msgid "Form Template"
894
  msgstr ""
895
 
896
+ #: admin/form-template.php:171
897
  msgid "&mdash; No Template &mdash;"
898
  msgstr ""
899
 
900
+ #: admin/form-template.php:180
901
  msgid ""
902
  "If selected a form template, it will try to execute that integration "
903
  "options when new post created and updated."
920
  msgstr ""
921
 
922
  #: admin/form.php:74 admin/form.php:112 admin/installer.php:75
923
+ #: admin/post-forms-list-table.php:392 admin/subscription.php:227
924
  #: class/subscription.php:360 includes/free/admin/shortcode-button.php:90
925
  #: includes/free/edit-user.php:99 templates/dashboard/posts.php:150
926
  #: templates/dashboard.php:104
963
  msgid "Registration Forms"
964
  msgstr ""
965
 
966
+ #: admin/form.php:194 includes/free/form-element.php:212
967
+ #: includes/free/form-element.php:249
968
  msgid "Notification"
969
  msgstr ""
970
 
976
  msgid "Edit Settings"
977
  msgstr ""
978
 
979
+ #: admin/form.php:229 includes/free/form-element.php:56
980
  msgid "Post Expiration"
981
  msgstr ""
982
 
993
  msgstr ""
994
 
995
  #: admin/form.php:422 admin/html/form-settings-post.php:28
996
+ #: class/render-form.php:629
997
  msgid "Save Draft"
998
  msgstr ""
999
 
1042
  msgid "Order By"
1043
  msgstr ""
1044
 
 
 
 
 
 
 
1045
  #: admin/form.php:760 admin/template-post.php:168
1046
  msgid "Term ID"
1047
  msgstr ""
1126
  msgstr ""
1127
 
1128
  #: admin/html/form-settings-post-edit.php:34
1129
+ #: admin/html/form-settings-post.php:175 includes/free/form-element.php:375
1130
  msgid "Redirect To"
1131
  msgstr ""
1132
 
1133
  #: admin/html/form-settings-post-edit.php:39
1134
+ #: admin/html/form-settings-post.php:180
1135
  msgid "Newly created post"
1136
  msgstr ""
1137
 
1138
  #: admin/html/form-settings-post-edit.php:40
1139
+ #: admin/html/form-settings-post.php:181 includes/free/form-element.php:380
1140
  msgid "Same Page"
1141
  msgstr ""
1142
 
1143
  #: admin/html/form-settings-post-edit.php:41
1144
+ #: admin/html/form-settings-post.php:182 includes/free/form-element.php:381
1145
  msgid "To a page"
1146
  msgstr ""
1147
 
1148
  #: admin/html/form-settings-post-edit.php:42
1149
+ #: admin/html/form-settings-post.php:183 includes/free/form-element.php:382
1150
  msgid "To a custom URL"
1151
  msgstr ""
1152
 
1153
  #: admin/html/form-settings-post-edit.php:51
1154
+ #: admin/html/form-settings-post.php:192 includes/free/form-element.php:391
1155
  msgid "After successfull submit, where the page will redirect to"
1156
  msgstr ""
1157
 
1160
  msgstr ""
1161
 
1162
  #: admin/html/form-settings-post-edit.php:64
1163
+ #: admin/html/form-settings-post.php:205 includes/free/form-element.php:411
1164
  msgid "Page"
1165
  msgstr ""
1166
 
1167
  #: admin/html/form-settings-post-edit.php:79
1168
+ #: admin/html/form-settings-post.php:220 includes/free/form-element.php:426
1169
  msgid "Custom URL"
1170
  msgstr ""
1171
 
1203
  "and will take no effect."
1204
  msgstr ""
1205
 
1206
+ #: admin/html/form-settings-post.php:49 admin/post-forms-list-table.php:297
1207
  msgid "Post Type"
1208
  msgstr ""
1209
 
1210
+ #: admin/html/form-settings-post.php:74 admin/post-forms-list-table.php:298
1211
  msgid "Post Status"
1212
  msgstr ""
1213
 
1214
+ #: admin/html/form-settings-post.php:88
1215
  msgid "Post Format"
1216
  msgstr ""
1217
 
1218
+ #: admin/html/form-settings-post.php:91 admin/html/form-settings-post.php:114
1219
  msgid "- None -"
1220
  msgstr ""
1221
 
1222
+ #: admin/html/form-settings-post.php:106
1223
  msgid "Default Post Category"
1224
  msgstr ""
1225
 
1226
+ #: admin/html/form-settings-post.php:118
1227
  msgid ""
1228
  "If users are not allowed to choose any category, this category will be used "
1229
  "instead (if post type supports)"
1230
  msgstr ""
1231
 
1232
+ #: admin/html/form-settings-post.php:123 admin/post-forms-list-table.php:299
1233
  msgid "Guest Post"
1234
  msgstr ""
1235
 
1236
+ #: admin/html/form-settings-post.php:128
1237
  msgid "Enable Guest Post"
1238
  msgstr ""
1239
 
1240
+ #: admin/html/form-settings-post.php:130
1241
  msgid "Unregistered users will be able to submit posts"
1242
  msgstr ""
1243
 
1244
+ #: admin/html/form-settings-post.php:135
1245
  msgid "User Details"
1246
  msgstr ""
1247
 
1248
+ #: admin/html/form-settings-post.php:140
1249
  msgid "Require Name and Email address"
1250
  msgstr ""
1251
 
1252
+ #: admin/html/form-settings-post.php:142
1253
  msgid ""
1254
  "If requires, users will be automatically registered to the site using the "
1255
  "name and email address"
1256
  msgstr ""
1257
 
1258
+ #: admin/html/form-settings-post.php:147
1259
  msgid "Name Label"
1260
  msgstr ""
1261
 
1262
+ #: admin/html/form-settings-post.php:152
1263
  msgid "Label text for name field"
1264
  msgstr ""
1265
 
1266
+ #: admin/html/form-settings-post.php:157
1267
  msgid "E-Mail Label"
1268
  msgstr ""
1269
 
1270
+ #: admin/html/form-settings-post.php:162
1271
  msgid "Label text for email field"
1272
  msgstr ""
1273
 
1274
+ #: admin/html/form-settings-post.php:167 admin/settings-options.php:215
1275
  msgid "Unauthorized Message"
1276
  msgstr ""
1277
 
1278
+ #: admin/html/form-settings-post.php:170 admin/settings-options.php:216
1279
  msgid "Not logged in users will see this message"
1280
  msgstr ""
1281
 
1282
+ #: admin/html/form-settings-post.php:198
1283
  msgid "Message to show"
1284
  msgstr ""
1285
 
1286
+ #: admin/html/form-settings-post.php:227
1287
  msgid "Comment Status"
1288
  msgstr ""
1289
 
1290
+ #: admin/html/form-settings-post.php:230
1291
  msgid "Open"
1292
  msgstr ""
1293
 
1294
+ #: admin/html/form-settings-post.php:231
1295
  msgid "Closed"
1296
  msgstr ""
1297
 
1298
+ #: admin/html/form-settings-post.php:237
1299
  msgid "Submit Post Button text"
1300
  msgstr ""
1301
 
1302
+ #: admin/html/form-settings-post.php:244
1303
  msgid "Post Draft"
1304
  msgstr ""
1305
 
1306
+ #: admin/html/form-settings-post.php:249
1307
  msgid "Enable Saving as draft"
1308
  msgstr ""
1309
 
1310
+ #: admin/html/form-settings-post.php:251
1311
  msgid "It will show a button to save as draft"
1312
  msgstr ""
1313
 
 
 
 
 
 
 
 
 
1314
  #: admin/html/modal.php:9
1315
  msgid "Select a Template"
1316
  msgstr ""
1333
  "can do this by one click."
1334
  msgstr ""
1335
 
 
 
 
 
1336
  #: admin/installer.php:32
1337
  msgid "Skip Setup"
1338
  msgstr ""
1348
  msgstr ""
1349
 
1350
  #: admin/installer.php:73 admin/settings-options.php:17
1351
+ #: includes/free/admin/shortcode-button.php:82 wpuf-functions.php:1418
1352
  msgid "Dashboard"
1353
  msgstr ""
1354
 
1362
 
1363
  #: admin/installer.php:83 class/subscription.php:335 class/subscription.php:355
1364
  #: class/subscription.php:356 class/subscription.php:357
1365
+ #: includes/free/admin/shortcode-button.php:98 wpuf-functions.php:1420
1366
  msgid "Subscription"
1367
  msgstr ""
1368
 
1415
  msgid "Search Forms"
1416
  msgstr ""
1417
 
1418
+ #: admin/post-forms-list-table.php:44 wpuf-functions.php:61
 
 
 
 
 
1419
  msgid "Published"
1420
  msgstr ""
1421
 
1422
+ #: admin/post-forms-list-table.php:45 admin/post-forms-list-table.php:393
1423
  msgid "Trash"
1424
  msgstr ""
1425
 
1426
+ #: admin/post-forms-list-table.php:95
1427
  msgid "No form found."
1428
  msgstr ""
1429
 
1430
+ #: admin/post-forms-list-table.php:109
1431
  msgid "Move to Trash"
1432
  msgstr ""
1433
 
1434
+ #: admin/post-forms-list-table.php:113 admin/post-forms-list-table.php:405
1435
  msgid "Restore"
1436
  msgstr ""
1437
 
1438
+ #: admin/post-forms-list-table.php:114 admin/post-forms-list-table.php:406
1439
  msgid "Delete Permanently"
1440
  msgstr ""
1441
 
1442
+ #: admin/post-forms-list-table.php:296
1443
  msgid "Form Name"
1444
  msgstr ""
1445
 
1446
+ #: admin/post-forms-list-table.php:300
1447
+ #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:195
1448
+ #: includes/free/form-element.php:30
1449
  msgid "Shortcode"
1450
  msgstr ""
1451
 
1452
+ #: admin/post-forms-list-table.php:415 wpuf-functions.php:65
 
 
 
 
1453
  msgid "Draft"
1454
  msgstr ""
1455
 
1456
+ #: admin/posting.php:66 class/asset-loader.php:51 class/render-form.php:1516
1457
+ #: wpuf.php:416
1458
  msgid "Are you sure?"
1459
  msgstr ""
1460
 
1461
+ #: admin/posting.php:72 class/asset-loader.php:57 wpuf.php:422
1462
  msgid "Allowed Files"
1463
  msgstr ""
1464
 
1465
+ #: admin/posting.php:75 class/asset-loader.php:60 wpuf.php:425
1466
  msgid "Maximum number of files reached!"
1467
  msgstr ""
1468
 
1469
+ #: admin/posting.php:76 class/asset-loader.php:61 wpuf.php:426
1470
  msgid "The file you have uploaded exceeds the file size limit. Please try again."
1471
  msgstr ""
1472
 
1473
+ #: admin/posting.php:77 class/asset-loader.php:62 wpuf.php:427
1474
  msgid "You have uploaded an incorrect file type. Please try again."
1475
  msgstr ""
1476
 
1477
+ #: admin/posting.php:96
1478
  msgid "WPUF Form"
1479
  msgstr ""
1480
 
1481
+ #: admin/posting.php:167
1482
  msgid "WPUF Custom Fields"
1483
  msgstr ""
1484
 
1485
+ #: admin/posting.php:211
1486
  msgid "No custom fields found."
1487
  msgstr ""
1488
 
1520
  msgid "Payments"
1521
  msgstr ""
1522
 
1523
+ #: admin/settings-options.php:49
 
 
 
 
 
 
 
 
 
 
 
 
1524
  msgid "Edit Page"
1525
  msgstr ""
1526
 
1527
+ #: admin/settings-options.php:50
1528
  msgid "Select the page where [wpuf_edit] is located"
1529
  msgstr ""
1530
 
1531
+ #: admin/settings-options.php:56
1532
  msgid "Default Post Owner"
1533
  msgstr ""
1534
 
1535
+ #: admin/settings-options.php:57
1536
  msgid ""
1537
  "If guest post is enabled and user details are OFF, the posts are assigned "
1538
  "to this user"
1539
  msgstr ""
1540
 
1541
+ #: admin/settings-options.php:64
1542
  msgid "Admin area access"
1543
  msgstr ""
1544
 
1545
+ #: admin/settings-options.php:65
1546
  msgid "Allow you to block specific user role to WordPress admin area."
1547
  msgstr ""
1548
 
1549
+ #: admin/settings-options.php:69
1550
  msgid "Admin Only"
1551
  msgstr ""
1552
 
1553
+ #: admin/settings-options.php:70
1554
  msgid "Admins, Editors"
1555
  msgstr ""
1556
 
1557
+ #: admin/settings-options.php:71
1558
  msgid "Admins, Editors, Authors"
1559
  msgstr ""
1560
 
1561
+ #: admin/settings-options.php:72
1562
  msgid "Admins, Editors, Authors, Contributors"
1563
  msgstr ""
1564
 
1565
+ #: admin/settings-options.php:73
1566
  msgid "Default"
1567
  msgstr ""
1568
 
1569
+ #: admin/settings-options.php:78
1570
  msgid "Override the post edit link"
1571
  msgstr ""
1572
 
1573
+ #: admin/settings-options.php:79
1574
  msgid ""
1575
  "Users see the edit link in post if s/he is capable to edit the post/page. "
1576
  "Selecting <strong>Yes</strong> will override the default WordPress edit "
1577
  "post link in frontend"
1578
  msgstr ""
1579
 
1580
+ #: admin/settings-options.php:89
1581
  msgid "Custom Fields in post"
1582
  msgstr ""
1583
 
1584
+ #: admin/settings-options.php:90
1585
  msgid "Show custom fields on post content area"
1586
  msgstr ""
1587
 
1588
+ #: admin/settings-options.php:96
1589
  msgid "Load Scripts"
1590
  msgstr ""
1591
 
1592
+ #: admin/settings-options.php:97
1593
  msgid "Load scripts/styles in all pages"
1594
  msgstr ""
1595
 
1596
+ #: admin/settings-options.php:103
1597
  msgid "Insert Photo image size"
1598
  msgstr ""
1599
 
1600
+ #: admin/settings-options.php:104
1601
  msgid ""
1602
  "Default image size of \"<strong>Insert Photo</strong>\" button in post "
1603
  "content area"
1604
  msgstr ""
1605
 
1606
+ #: admin/settings-options.php:111
1607
  msgid "Insert Photo image type"
1608
  msgstr ""
1609
 
1610
+ #: admin/settings-options.php:112
1611
  msgid ""
1612
  "Default image type of \"<strong>Insert Photo</strong>\" button in post "
1613
  "content area"
1614
  msgstr ""
1615
 
1616
+ #: admin/settings-options.php:115
1617
  msgid "Image only"
1618
  msgstr ""
1619
 
1620
+ #: admin/settings-options.php:116
1621
  msgid "Image with link"
1622
  msgstr ""
1623
 
1624
+ #: admin/settings-options.php:122
1625
  msgid "Enable Image Caption"
1626
  msgstr ""
1627
 
1628
+ #: admin/settings-options.php:123
1629
  msgid "Allow users to update image/video title, caption and description"
1630
  msgstr ""
1631
 
1632
+ #: admin/settings-options.php:129
1633
  msgid "Default Post Form"
1634
  msgstr ""
1635
 
1636
+ #: admin/settings-options.php:130
1637
  msgid "Fallback form for post editing if no associated form found"
1638
  msgstr ""
1639
 
1640
+ #: admin/settings-options.php:136
1641
  msgid "reCAPTCHA Site Key"
1642
  msgstr ""
1643
 
1644
+ #: admin/settings-options.php:140
1645
  msgid "reCAPTCHA Secret Key"
1646
  msgstr ""
1647
 
1648
+ #: admin/settings-options.php:141
1649
  msgid ""
1650
  "<a target=\"_blank\" href=\"https://www.google.com/recaptcha/\">Register "
1651
  "here</a> to get reCaptcha Site and Secret keys."
1652
  msgstr ""
1653
 
1654
+ #: admin/settings-options.php:145
 
 
 
 
 
 
 
 
 
 
 
1655
  msgid "Custom CSS codes"
1656
  msgstr ""
1657
 
1658
+ #: admin/settings-options.php:146
1659
  msgid ""
1660
  "If you want to add your custom CSS code, it will be added on page header "
1661
  "wrapped with style tag"
1662
  msgstr ""
1663
 
1664
+ #: admin/settings-options.php:153
1665
  msgid "Users can edit post?"
1666
  msgstr ""
1667
 
1668
+ #: admin/settings-options.php:154
1669
  msgid "Users will be able to edit their own posts"
1670
  msgstr ""
1671
 
1672
+ #: admin/settings-options.php:164
1673
  msgid "User can delete post?"
1674
  msgstr ""
1675
 
1676
+ #: admin/settings-options.php:165
1677
  msgid "Users will be able to delete their own posts"
1678
  msgstr ""
1679
 
1680
+ #: admin/settings-options.php:175
1681
  msgid "Pending Post Edit"
1682
  msgstr ""
1683
 
1684
+ #: admin/settings-options.php:176
1685
  msgid "Disable post editing while post in \"pending\" status"
1686
  msgstr ""
1687
 
1688
+ #: admin/settings-options.php:182
1689
  msgid "Posts per page"
1690
  msgstr ""
1691
 
1692
+ #: admin/settings-options.php:183
1693
  msgid "How many posts will be listed in a page"
1694
  msgstr ""
1695
 
1696
+ #: admin/settings-options.php:189
1697
  msgid "Show user bio"
1698
  msgstr ""
1699
 
1700
+ #: admin/settings-options.php:190
1701
  msgid "Users biographical info will be shown"
1702
  msgstr ""
1703
 
1704
+ #: admin/settings-options.php:196
1705
  msgid "Show post count"
1706
  msgstr ""
1707
 
1708
+ #: admin/settings-options.php:197
1709
  msgid "Show how many posts are created by the user"
1710
  msgstr ""
1711
 
1712
+ #: admin/settings-options.php:203
1713
  msgid "Show Featured Image"
1714
  msgstr ""
1715
 
1716
+ #: admin/settings-options.php:204
1717
  msgid "Show featured image of the post"
1718
  msgstr ""
1719
 
1720
+ #: admin/settings-options.php:209
1721
  msgid "Featured Image size"
1722
  msgstr ""
1723
 
1724
+ #: admin/settings-options.php:223
1725
  msgid "Auto Login After Registration"
1726
  msgstr ""
1727
 
1728
+ #: admin/settings-options.php:224
1729
  msgid "If enabled, users after registration will be logged in to the system"
1730
  msgstr ""
1731
 
1732
+ #: admin/settings-options.php:230
1733
  msgid "Login/Registration override"
1734
  msgstr ""
1735
 
1736
+ #: admin/settings-options.php:231
1737
  msgid ""
1738
  "If enabled, default login and registration forms will be overridden by WPUF "
1739
  "with pages below"
1740
  msgstr ""
1741
 
1742
+ #: admin/settings-options.php:237
1743
  msgid "Registration Page"
1744
  msgstr ""
1745
 
1746
+ #: admin/settings-options.php:238
1747
  msgid ""
1748
  "Select the page you want to use as registration page override <em>(should "
1749
  "have shortcode)</em>"
1750
  msgstr ""
1751
 
1752
+ #: admin/settings-options.php:244
1753
  msgid "Login Page"
1754
  msgstr ""
1755
 
1756
+ #: admin/settings-options.php:245
1757
  msgid "Select the page which contains <code>[wpuf-login]</code> shortcode"
1758
  msgstr ""
1759
 
1760
+ #: admin/settings-options.php:253
1761
  msgid "Charge for posting"
1762
  msgstr ""
1763
 
1764
+ #: admin/settings-options.php:254
1765
  msgid "Charge user for submitting a post"
1766
  msgstr ""
1767
 
1768
+ #: admin/settings-options.php:264
1769
  msgid "Force pack purchase"
1770
  msgstr ""
1771
 
1772
+ #: admin/settings-options.php:265
1773
  msgid "When active, users must have to buy a pack for posting"
1774
  msgstr ""
1775
 
1776
+ #: admin/settings-options.php:269
1777
  msgid "Disable"
1778
  msgstr ""
1779
 
1780
+ #: admin/settings-options.php:270
1781
  msgid "Enable"
1782
  msgstr ""
1783
 
1784
+ #: admin/settings-options.php:275
1785
  msgid "Subscription Pack Page"
1786
  msgstr ""
1787
 
1788
+ #: admin/settings-options.php:276
1789
  msgid "Select the page where <code>[wpuf_sub_pack]</code> located."
1790
  msgstr ""
1791
 
1792
+ #: admin/settings-options.php:282
1793
  msgid "Subscription at registration"
1794
  msgstr ""
1795
 
1796
+ #: admin/settings-options.php:283
1797
  msgid "Registration time redirect to subscription page"
1798
  msgstr ""
1799
 
1800
+ #: admin/settings-options.php:288
1801
  msgid "Currency"
1802
  msgstr ""
1803
 
1804
+ #: admin/settings-options.php:295
1805
  msgid "Currency Position"
1806
  msgstr ""
1807
 
1808
+ #: admin/settings-options.php:299
1809
  msgid "Left"
1810
  msgstr ""
1811
 
1812
+ #: admin/settings-options.php:300
1813
  msgid "Right"
1814
  msgstr ""
1815
 
1816
+ #: admin/settings-options.php:301
1817
  msgid "Left with space"
1818
  msgstr ""
1819
 
1820
+ #: admin/settings-options.php:302
1821
  msgid "Right with space"
1822
  msgstr ""
1823
 
1824
+ #: admin/settings-options.php:307
1825
  msgid "Thousand Separator"
1826
  msgstr ""
1827
 
1828
+ #: admin/settings-options.php:308
1829
  msgid "This sets the thousand separator of displayed prices."
1830
  msgstr ""
1831
 
1832
+ #: admin/settings-options.php:316
1833
  msgid "Decimal Separator"
1834
  msgstr ""
1835
 
1836
+ #: admin/settings-options.php:317
1837
  msgid "This sets the decimal separator of displayed prices."
1838
  msgstr ""
1839
 
1840
+ #: admin/settings-options.php:324
1841
  msgid "Number of Decimals"
1842
  msgstr ""
1843
 
1844
+ #: admin/settings-options.php:325
1845
  msgid "This sets the number of decimal points shown in displayed prices."
1846
  msgstr ""
1847
 
1848
+ #: admin/settings-options.php:335 admin/subscription.php:207
1849
  #: class/transactions-list-table.php:43
1850
  msgid "Cost"
1851
  msgstr ""
1852
 
1853
+ #: admin/settings-options.php:342
1854
  msgid "Enable demo/sandbox mode"
1855
  msgstr ""
1856
 
1857
+ #: admin/settings-options.php:343
1858
  msgid "When sandbox mode is active, all payment gateway will be used in demo mode"
1859
  msgstr ""
1860
 
1861
+ #: admin/settings-options.php:349
1862
  msgid "Payment Page"
1863
  msgstr ""
1864
 
1865
+ #: admin/settings-options.php:350
1866
  msgid "This page will be used to process payment options"
1867
  msgstr ""
1868
 
1869
+ #: admin/settings-options.php:356
1870
  msgid "Payment Success Page"
1871
  msgstr ""
1872
 
1873
+ #: admin/settings-options.php:357 lib/gateway/bank.php:37
1874
  msgid "After payment users will be redirected here"
1875
  msgstr ""
1876
 
1877
+ #: admin/settings-options.php:363
1878
  msgid "Payment Gateways"
1879
  msgstr ""
1880
 
1881
+ #: admin/settings-options.php:364
1882
  msgid "Active payment gateways"
1883
  msgstr ""
1884
 
1885
+ #: admin/settings-options.php:385
 
 
 
 
1886
  msgid ""
1887
  "Select profile/registration forms for user roles. These forms will be used "
1888
  "to populate extra edit profile fields in backend."
1889
  msgstr ""
1890
 
1891
+ #: admin/settings-options.php:396
1892
  msgid " - select - "
1893
  msgstr ""
1894
 
1900
  msgid "User Frontend"
1901
  msgstr ""
1902
 
1903
+ #: admin/settings.php:66 admin/weforms.php:2
1904
+ msgid "weForms"
1905
  msgstr ""
1906
 
1907
+ #: admin/settings.php:66
1908
+ msgid "Contact Form"
1909
+ msgstr ""
1910
+
1911
+ #: admin/settings.php:69
1912
+ msgid "Subscriptions"
1913
  msgstr ""
1914
 
1915
+ #: admin/settings.php:74
1916
  msgid "Add-ons"
1917
  msgstr ""
1918
 
1919
+ #: admin/settings.php:75 admin/tools.php:14
1920
  msgid "Tools"
1921
  msgstr ""
1922
 
1923
+ #: admin/settings.php:76
1924
+ msgid "Support"
1925
+ msgstr ""
1926
+
1927
+ #: admin/settings.php:285
1928
  msgid "Number of items per page:"
1929
  msgstr ""
1930
 
1961
  msgstr ""
1962
 
1963
  #: admin/subscription.php:134 admin/subscription.php:459
1964
+ #: class/frontend-account.php:129 class/subscription.php:704
1965
+ #: class/subscription.php:889 class/subscription.php:902
1966
  msgid "Free"
1967
  msgstr ""
1968
 
2002
  msgid "Are you sure to delete this pack?"
2003
  msgstr ""
2004
 
 
 
 
 
 
 
 
2005
  #: admin/subscription.php:242
2006
  msgid "No subscription pack found"
2007
  msgstr ""
2022
  msgid "Expires In:"
2023
  msgstr ""
2024
 
2025
+ #: admin/subscription.php:328 includes/free/form-element.php:60
2026
  msgid "Enable Post Expiration"
2027
  msgstr ""
2028
 
2029
  #: admin/subscription.php:341 admin/subscription.php:538
2030
+ #: includes/free/form-element.php:65
2031
  msgid "Post Expiration Time"
2032
  msgstr ""
2033
 
2034
+ #: admin/subscription.php:380 includes/free/form-element.php:111
2035
  msgid "Status of post after post expiration time is over "
2036
  msgstr ""
2037
 
2051
  msgid "Year(s)"
2052
  msgstr ""
2053
 
2054
+ #: admin/subscription.php:451 includes/free/edit-profile.php:280
2055
  msgid "WPUF Subscription"
2056
  msgstr ""
2057
 
2079
  msgstr ""
2080
 
2081
  #: admin/subscription.php:513 class/subscription.php:758
2082
+ #: templates/dashboard/subscription.php:41
2083
  msgid "Expire date:"
2084
  msgstr ""
2085
 
2095
  msgid "Show Package"
2096
  msgstr ""
2097
 
2098
+ #: admin/subscription.php:569 includes/free/edit-profile.php:284
2099
  msgid "Pack:"
2100
  msgstr ""
2101
 
2107
  msgid "Delete Package"
2108
  msgstr ""
2109
 
2110
+ #: admin/support.php:2
2111
+ msgid "WP User Frontend - Support"
2112
+ msgstr ""
2113
+
2114
+ #: admin/support.php:6
2115
+ msgid "Need Help?"
2116
+ msgstr ""
2117
+
2118
+ #: admin/support.php:11
2119
+ msgid "Step 1: "
2120
+ msgstr ""
2121
+
2122
+ #: admin/support.php:11
2123
+ msgid "Read Documentation and FAQ"
2124
+ msgstr ""
2125
+
2126
+ #: admin/support.php:12
2127
+ msgid ""
2128
+ "We have created detailed step by step documentation for all the features "
2129
+ "(including docs for developers). We have also answered all possible FAQ "
2130
+ "queries based on user request. We hope you will find what you are looking "
2131
+ "for. If not, please continue to Step 2."
2132
+ msgstr ""
2133
+
2134
+ #: admin/support.php:16
2135
+ msgid "Step 2: "
2136
+ msgstr ""
2137
+
2138
+ #: admin/support.php:16
2139
+ msgid "Create a Support Ticket"
2140
+ msgstr ""
2141
+
2142
+ #: admin/support.php:17
2143
+ msgid ""
2144
+ "We reply from <code>7am to 3pm (GMT+6)</code> except "
2145
+ "<code><strong>Friday</strong></code>. Our responses are usually under 12 "
2146
+ "hours to as quick as 1 hour depending on channel pressure."
2147
+ msgstr ""
2148
+
2149
+ #: admin/support.php:19
2150
+ msgid ""
2151
+ "When you are creating a ticket, please care to include a screenshot of the "
2152
+ "issue if possible and write the problem as specificly as you can. This will "
2153
+ "help us track and solve your trouble quickly."
2154
+ msgstr ""
2155
+
2156
  #: admin/template-post.php:193
2157
  msgid "Selection terms"
2158
  msgstr ""
2217
  msgid "show values"
2218
  msgstr ""
2219
 
2220
+ #: admin/template.php:689
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2221
  msgid ""
2222
+ "Insert your public key and private key in <a href='%s'>plugin settings</a>. "
2223
+ "<a href='%s' target='_blank'>Register</a> first if you don't have any keys."
2224
  msgstr ""
2225
 
2226
+ #: admin/template.php:695
2227
+ msgid "reCaptcha type"
 
 
 
 
 
 
2228
  msgstr ""
2229
 
2230
+ #: admin/transactions.php:12
2231
+ msgid "Total Income:"
2232
  msgstr ""
2233
 
2234
+ #: admin/transactions.php:15
2235
+ msgid "This Month:"
 
 
2236
  msgstr ""
2237
 
2238
+ #: admin/weforms.php:4
2239
+ msgid "The Easiest &amp; Fastest Contact Form Plugin on WordPress"
2240
  msgstr ""
2241
 
2242
+ #: admin/weforms.php:7
2243
+ msgid ""
2244
+ "Quickly create rich contact forms to generate leads, taking feedbacks, "
2245
+ "onboarding visitors and flourishing <br /> your imagination! Comes with the "
2246
+ "best frontend post submission plugin for WordPress, WP User Frontend."
2247
  msgstr ""
2248
 
2249
+ #: admin/weforms.php:12 lib/class-weforms-upsell.php:77
2250
+ msgid "Install Now"
2251
  msgstr ""
2252
 
2253
+ #: class/asset-loader.php:31 wpuf.php:347
2254
+ msgid "is required"
2255
  msgstr ""
2256
 
2257
+ #: class/asset-loader.php:32 wpuf.php:348
2258
+ msgid "does not match"
2259
  msgstr ""
2260
 
2261
+ #: class/asset-loader.php:33 wpuf.php:349
2262
+ msgid "is not valid"
2263
  msgstr ""
2264
 
2265
+ #: class/asset-loader.php:45 wpuf.php:410
2266
+ msgid "Please fix the errors to proceed"
2267
  msgstr ""
2268
 
2269
+ #: class/asset-loader.php:47 wpuf.php:412
2270
+ msgid "Word limit reached"
2271
  msgstr ""
2272
 
2273
  #: class/frontend-account.php:118
2274
  msgid "<p>You've not subscribed any package yet.</p>"
2275
  msgstr ""
2276
 
2277
+ #: class/frontend-account.php:120
2278
+ msgid "<p>You've subscribed to the following package.</p>"
2279
+ msgstr ""
2280
+
2281
+ #: class/frontend-account.php:178 class/subscription.php:59
2282
  msgid "Nonce failure"
2283
  msgstr ""
2284
 
2285
+ #: class/frontend-account.php:192
2286
  msgid "First Name is a required field."
2287
  msgstr ""
2288
 
2289
+ #: class/frontend-account.php:196
2290
  msgid "Last Name is a required field."
2291
  msgstr ""
2292
 
2293
+ #: class/frontend-account.php:200
2294
  msgid "Email is a required field."
2295
  msgstr ""
2296
 
2297
+ #: class/frontend-account.php:211
2298
  msgid "Please provide a valid email address."
2299
  msgstr ""
2300
 
2301
+ #: class/frontend-account.php:213
2302
  msgid "This email address is already registered."
2303
  msgstr ""
2304
 
2305
+ #: class/frontend-account.php:219
2306
  msgid "Please fill out all password fields."
2307
  msgstr ""
2308
 
2309
+ #: class/frontend-account.php:222
2310
  msgid "Please enter your current password."
2311
  msgstr ""
2312
 
2313
+ #: class/frontend-account.php:225
2314
  msgid "Please re-enter your password."
2315
  msgstr ""
2316
 
2317
+ #: class/frontend-account.php:228
2318
  msgid "New passwords do not match."
2319
  msgstr ""
2320
 
2321
+ #: class/frontend-account.php:231 class/frontend-account.php:242
2322
  msgid "Your current password is incorrect."
2323
  msgstr ""
2324
 
2325
+ #: class/frontend-dashboard.php:66 templates/dashboard/posts.php:36
2326
  msgid "Post Deleted"
2327
  msgstr ""
2328
 
2329
+ #: class/frontend-dashboard.php:104
2330
  msgid "Author Info"
2331
  msgstr ""
2332
 
2333
+ #: class/frontend-dashboard.php:108 includes/free/edit-user.php:97
2334
  msgid "%s"
2335
  msgstr ""
2336
 
2337
+ #: class/frontend-dashboard.php:140 templates/dashboard/posts.php:30
2338
  msgid "You are not the post author. Cheeting huh!"
2339
  msgstr ""
2340
 
2341
+ #: class/frontend-form-post.php:85
2342
  msgid "You are not logged in"
2343
  msgstr ""
2344
 
2345
+ #: class/frontend-form-post.php:93 class/frontend-form-post.php:104
2346
  msgid "Invalid post"
2347
  msgstr ""
2348
 
2349
+ #: class/frontend-form-post.php:98
2350
  msgid "Post Editing is disabled"
2351
  msgstr ""
2352
 
2353
+ #: class/frontend-form-post.php:109
2354
  msgid "You are not allowed to edit"
2355
  msgstr ""
2356
 
2357
+ #: class/frontend-form-post.php:121
2358
  msgid "I don't know how to edit this post, I don't have the form ID"
2359
  msgstr ""
2360
 
2361
+ #: class/frontend-form-post.php:127
2362
  msgid "You can't edit a post while in pending mode."
2363
  msgstr ""
2364
 
2365
+ #: class/frontend-form-post.php:195
2366
  msgid "Invalid email address."
2367
  msgstr ""
2368
 
2369
+ #: class/frontend-form-post.php:204
2370
  msgid ""
2371
  "You already have an account in our site. Please login to continue.\n"
2372
  "\n"
2375
  "Click 'Cancel' to stay at this page."
2376
  msgstr ""
2377
 
2378
+ #: class/frontend-form-post.php:567
2379
  msgid "Something went wrong"
2380
  msgstr ""
2381
 
2456
  msgid "Really Simple Captcha validation failed"
2457
  msgstr ""
2458
 
2459
+ #: class/render-form.php:104 class/render-form.php:115
2460
  msgid "reCAPTCHA validation failed"
2461
  msgstr ""
2462
 
2463
+ #: class/render-form.php:327
2464
  msgid "Your selected form is no longer available."
2465
  msgstr ""
2466
 
2467
+ #: class/render-form.php:332
2468
  msgid "Please make sure you've published your form."
2469
  msgstr ""
2470
 
2471
+ #: class/render-form.php:1203 includes/free/edit-profile.php:203
2472
  #: templates/dashboard/edit-profile.php:36
2473
  msgid "Strength indicator"
2474
  msgstr ""
2475
 
2476
+ #: class/render-form.php:1265 class/render-form.php:1378
2477
  msgid "-- Select --"
2478
  msgstr ""
2479
 
2480
+ #: class/render-form.php:1320
2481
  msgid "This field is no longer available."
2482
  msgstr ""
2483
 
2525
  msgid "Package & billing details: "
2526
  msgstr ""
2527
 
2528
+ #: class/subscription.php:743 templates/dashboard/subscription.php:24
2529
  msgid "Unlimited"
2530
  msgstr ""
2531
 
2532
+ #: class/subscription.php:801
2533
  msgid "Please enable force pack and charge posting from admin panel"
2534
  msgstr ""
2535
 
2536
+ #: class/subscription.php:811
2537
  msgid "Payment is complete"
2538
  msgstr ""
2539
 
2540
+ #: class/subscription.php:811
2541
  msgid "Congratulations, your payment has been completed!"
2542
  msgstr ""
2543
 
2544
+ #: class/subscription.php:826
2545
  msgid "<p><i>You have a subscription pack activated. </i></p>"
2546
  msgstr ""
2547
 
2548
+ #: class/subscription.php:828
2549
  msgid "<p><i>To cancel the pack, press the following cancel button</i></p>"
2550
  msgstr ""
2551
 
2552
+ #: class/subscription.php:870
2553
  msgid "Every"
2554
  msgstr ""
2555
 
2556
+ #: class/subscription.php:874
2557
  msgid "One time payment"
2558
  msgstr ""
2559
 
2560
+ #: class/subscription.php:886
2561
  msgid "Sign Up"
2562
  msgstr ""
2563
 
2564
+ #: class/subscription.php:891
2565
  msgid "Buy Now"
2566
  msgstr ""
2567
 
2568
+ #: class/subscription.php:947
2569
  msgid "There is a <strong>%s</strong> charge to add a new post."
2570
  msgstr ""
2571
 
2572
+ #: class/subscription.php:966
2573
  msgid "You must <a href=\"%s\">purchase a pack</a> before posting"
2574
  msgstr ""
2575
 
2634
  msgid "No transactions found."
2635
  msgstr ""
2636
 
2637
+ #: class/upload.php:165 wpuf-functions.php:729
2638
  msgid "Caption"
2639
  msgstr ""
2640
 
2641
  #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:46
2642
+ #: includes/free/form-element.php:473
2643
  msgid "Conditional Logic"
2644
  msgstr ""
2645
 
2681
  msgid "Google Map"
2682
  msgstr ""
2683
 
 
 
 
 
2684
  #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:210
2685
+ #: includes/free/form-element.php:32
2686
  msgid "Really Simple Captcha"
2687
  msgstr ""
2688
 
2689
  #: includes/free/admin/form-builder/class-wpuf-form-builder-field-settings-free.php:225
2690
+ #: includes/free/form-element.php:33
2691
  msgid "Action Hook"
2692
  msgstr ""
2693
 
2723
  msgid " Add Form"
2724
  msgstr ""
2725
 
2726
+ #: includes/free/edit-profile.php:32 includes/free/edit-user.php:37
2727
  #: templates/unauthorized.php:3
2728
  msgid "This page is restricted. Please %s to view this page."
2729
  msgstr ""
2730
 
2731
+ #: includes/free/edit-profile.php:71
2732
  msgid "<strong>Success</strong>: Profile updated"
2733
  msgstr ""
2734
 
2735
+ #: includes/free/edit-profile.php:101 includes/free/edit-user.php:92
2736
  #: includes/free/edit-user.php:144 templates/login-form.php:21
2737
  msgid "Username"
2738
  msgstr ""
2739
 
2740
+ #: includes/free/edit-profile.php:102
2741
  msgid "Usernames cannot be changed."
2742
  msgstr ""
2743
 
2744
+ #: includes/free/edit-profile.php:105
2745
  msgid "First Name"
2746
  msgstr ""
2747
 
2748
+ #: includes/free/edit-profile.php:110
2749
  msgid "Last Name"
2750
  msgstr ""
2751
 
2752
+ #: includes/free/edit-profile.php:115
2753
  msgid "Nickname"
2754
  msgstr ""
2755
 
2756
+ #: includes/free/edit-profile.php:115 includes/free/edit-profile.php:156
2757
  msgid "(required)"
2758
  msgstr ""
2759
 
2760
+ #: includes/free/edit-profile.php:120
2761
  msgid "Display to Public as"
2762
  msgstr ""
2763
 
2764
+ #: includes/free/edit-profile.php:152
2765
  msgid "Contact Info"
2766
  msgstr ""
2767
 
2768
+ #: includes/free/edit-profile.php:156
2769
  msgid "E-mail"
2770
  msgstr ""
2771
 
2772
+ #: includes/free/edit-profile.php:161
2773
  msgid "Website"
2774
  msgstr ""
2775
 
2776
+ #: includes/free/edit-profile.php:179
2777
  msgid "About Yourself"
2778
  msgstr ""
2779
 
2780
+ #: includes/free/edit-profile.php:183
2781
  msgid "Biographical Info"
2782
  msgstr ""
2783
 
2784
+ #: includes/free/edit-profile.php:185
2785
  msgid ""
2786
  "Share a little biographical information to fill out your profile. This may "
2787
  "be shown publicly."
2788
  msgstr ""
2789
 
2790
+ #: includes/free/edit-profile.php:188 templates/dashboard/edit-profile.php:33
2791
  msgid "New Password"
2792
  msgstr ""
2793
 
2794
+ #: includes/free/edit-profile.php:194
2795
  msgid "Confirm Password"
2796
  msgstr ""
2797
 
2798
+ #: includes/free/edit-profile.php:196
2799
  msgid "Type your new password again."
2800
  msgstr ""
2801
 
2802
+ #: includes/free/edit-profile.php:201
2803
  msgid "Password Strength"
2804
  msgstr ""
2805
 
2806
+ #: includes/free/edit-profile.php:227 includes/free/form-element.php:345
2807
  #: templates/dashboard/edit-profile.php:63
2808
  msgid "Update Profile"
2809
  msgstr ""
2810
 
2811
+ #: includes/free/edit-profile.php:246
2812
  msgid "WPUF Post Lock"
2813
  msgstr ""
2814
 
2815
+ #: includes/free/edit-profile.php:249
2816
  msgid "Lock Post:"
2817
  msgstr ""
2818
 
2819
+ #: includes/free/edit-profile.php:255
2820
  msgid "Lock user from creating new post."
2821
  msgstr ""
2822
 
2823
+ #: includes/free/edit-profile.php:260
2824
  msgid "Lock Reason:"
2825
  msgstr ""
2826
 
2827
+ #: includes/free/edit-profile.php:290
2828
  msgid "Post Count:"
2829
  msgstr ""
2830
 
2831
+ #: includes/free/edit-profile.php:296
2832
  msgid "Validity:"
2833
  msgstr ""
2834
 
2900
  msgid "Google Maps"
2901
  msgstr ""
2902
 
2903
+ #: includes/free/form-element.php:34
 
 
 
 
2904
  msgid "Term &amp; Conditions"
2905
  msgstr ""
2906
 
2907
+ #: includes/free/form-element.php:122
2908
  msgid "Send Email to Author After Exceeding Post Expiration Time"
2909
  msgstr ""
2910
 
2911
+ #: includes/free/form-element.php:147 includes/free/form-element.php:151
2912
  msgid "Enable Multistep"
2913
  msgstr ""
2914
 
2915
+ #: includes/free/form-element.php:154
2916
  msgid "If checked, form will be displayed in frontend in multiple steps"
2917
  msgstr ""
2918
 
2919
+ #: includes/free/form-element.php:158
2920
  msgid "Multistep Progressbar Type"
2921
  msgstr ""
2922
 
2923
+ #: includes/free/form-element.php:168
2924
  msgid "Choose how you want the progressbar"
2925
  msgstr ""
2926
 
2927
+ #: includes/free/form-element.php:198
2928
  msgid "New post created"
2929
  msgstr ""
2930
 
2931
+ #: includes/free/form-element.php:203
2932
  msgid "A post has been edited"
2933
  msgstr ""
2934
 
2935
+ #: includes/free/form-element.php:209
2936
  msgid "New Post Notificatoin"
2937
  msgstr ""
2938
 
2939
+ #: includes/free/form-element.php:217 includes/free/form-element.php:254
2940
  msgid "Enable post notification"
2941
  msgstr ""
2942
 
2943
+ #: includes/free/form-element.php:237 includes/free/form-element.php:270
 
 
 
 
 
 
 
 
2944
  msgid "Message"
2945
  msgstr ""
2946
 
2947
+ #: includes/free/form-element.php:245
2948
  msgid "Update Post Notificatoin"
2949
  msgstr ""
2950
 
2951
+ #: includes/free/form-element.php:277
2952
  msgid "You may use in to, subject & message:"
2953
  msgstr ""
2954
 
2955
+ #: includes/free/form-element.php:302
2956
  msgid "Toggle All"
2957
  msgstr ""
2958
 
2959
+ #: includes/free/form-element.php:306
2960
  msgid "Click on a form element to add to the editor"
2961
  msgstr ""
2962
 
2963
+ #: includes/free/form-element.php:340
2964
  msgid "Registration successful"
2965
  msgstr ""
2966
 
2967
+ #: includes/free/form-element.php:341
2968
  msgid "Profile updated successfully"
2969
  msgstr ""
2970
 
2971
+ #: includes/free/form-element.php:344
2972
  msgid "Register"
2973
  msgstr ""
2974
 
2975
+ #: includes/free/form-element.php:353
2976
  msgid "Enable Email Verfication"
2977
  msgstr ""
2978
 
2979
+ #: includes/free/form-element.php:361
2980
  msgid "New User Role"
2981
  msgstr ""
2982
 
2983
+ #: includes/free/form-element.php:397
2984
  msgid "Registration success message"
2985
  msgstr ""
2986
 
2987
+ #: includes/free/form-element.php:404
2988
  msgid "Update profile message"
2989
  msgstr ""
2990
 
2991
+ #: includes/free/form-element.php:433
2992
  msgid "Submit Button text"
2993
  msgstr ""
2994
 
2995
+ #: includes/free/form-element.php:440
2996
  msgid "Update Button text"
2997
  msgstr ""
2998
 
3026
  msgid "Pro Feature"
3027
  msgstr ""
3028
 
 
 
 
 
3029
  #: includes/free/post-form-templates/woocommerce.php:12
3030
  msgid "WooCommerce Product"
3031
  msgstr ""
3038
  msgid "Enable Recurring Payment"
3039
  msgstr ""
3040
 
3041
+ #: lib/class-wedevs-insights.php:282
3042
+ msgid ""
3043
+ "Want to help make <strong>%s</strong> even more awesome? Allow weDevs to "
3044
+ "collect non-sensitive diagnostic data and usage information."
3045
+ msgstr ""
3046
+
3047
+ #: lib/class-wedevs-insights.php:287
3048
+ msgid "what we collect"
3049
+ msgstr ""
3050
+
3051
+ #: lib/class-wedevs-insights.php:293
3052
+ msgid "Allow"
3053
+ msgstr ""
3054
+
3055
+ #: lib/class-wedevs-insights.php:294
3056
+ msgid "No thanks"
3057
+ msgstr ""
3058
+
3059
+ #: lib/class-wedevs-insights.php:471
3060
+ msgid "Once Weekly"
3061
+ msgstr ""
3062
+
3063
+ #: lib/class-wedevs-insights.php:607
3064
+ msgid "If you have a moment, please let us know why you are deactivating:"
3065
+ msgstr ""
3066
+
3067
+ #: lib/class-wedevs-insights.php:621
3068
+ msgid "I rather wouldn't say"
3069
+ msgstr ""
3070
+
3071
+ #: lib/class-wedevs-insights.php:622
3072
+ msgid "Submit & Deactivate"
3073
+ msgstr ""
3074
+
3075
+ #: lib/class-wedevs-insights.php:623
3076
+ msgid "Canel"
3077
+ msgstr ""
3078
+
3079
+ #: lib/class-weforms-upsell.php:80 lib/class-weforms-upsell.php:81
3080
+ msgid "Dismiss this notice."
3081
+ msgstr ""
3082
+
3083
+ #: lib/class-weforms-upsell.php:353
3084
+ msgid "You don't have permission to install the plugins"
3085
+ msgstr ""
3086
+
3087
  #: lib/class.settings-api.php:364
3088
  msgid "Choose File"
3089
  msgstr ""
3215
  msgid "No %s found"
3216
  msgstr ""
3217
 
3218
+ #: templates/dashboard/subscription.php:57
3219
  msgid "<p><i>To cancel the pack, press the following cancel button.</i></p>"
3220
  msgstr ""
3221
 
3287
  msgid "-- select --"
3288
  msgstr ""
3289
 
3290
+ #: wpuf-functions.php:406
3291
  msgid "Images"
3292
  msgstr ""
3293
 
3294
+ #: wpuf-functions.php:407
3295
  msgid "Audio"
3296
  msgstr ""
3297
 
3298
+ #: wpuf-functions.php:408
3299
  msgid "Videos"
3300
  msgstr ""
3301
 
3302
+ #: wpuf-functions.php:409
3303
  msgid "PDF"
3304
  msgstr ""
3305
 
3306
+ #: wpuf-functions.php:410
3307
  msgid "Office Documents"
3308
  msgstr ""
3309
 
3310
+ #: wpuf-functions.php:411
3311
  msgid "Zip Archives"
3312
  msgstr ""
3313
 
3314
+ #: wpuf-functions.php:412
3315
  msgid "Executable Files"
3316
  msgstr ""
3317
 
3318
+ #: wpuf-functions.php:413
3319
  msgid "CSV"
3320
  msgstr ""
3321
 
3322
+ #: wpuf-functions.php:1419
3323
  msgid "Posts"
3324
  msgstr ""
3325
 
3326
+ #: wpuf-functions.php:1421
3327
  msgid "Edit Profile"
3328
  msgstr ""
3329
 
3330
+ #: wpuf-functions.php:1525
3331
  msgid "United Arab Emirates Dirham"
3332
  msgstr ""
3333
 
3334
+ #: wpuf-functions.php:1526
3335
  msgid "Australian Dollars"
3336
  msgstr ""
3337
 
3338
+ #: wpuf-functions.php:1527
3339
  msgid "Argentine Peso"
3340
  msgstr ""
3341
 
3342
+ #: wpuf-functions.php:1528
3343
  msgid "Bangladeshi Taka"
3344
  msgstr ""
3345
 
3346
+ #: wpuf-functions.php:1529
3347
  msgid "Brazilian Real"
3348
  msgstr ""
3349
 
3350
+ #: wpuf-functions.php:1530
3351
  msgid "Bulgarian Lev"
3352
  msgstr ""
3353
 
3354
+ #: wpuf-functions.php:1531
3355
  msgid "Canadian Dollars"
3356
  msgstr ""
3357
 
3358
+ #: wpuf-functions.php:1532
3359
  msgid "Chilean Peso"
3360
  msgstr ""
3361
 
3362
+ #: wpuf-functions.php:1533
3363
  msgid "Chinese Yuan"
3364
  msgstr ""
3365
 
3366
+ #: wpuf-functions.php:1534
3367
  msgid "Colombian Peso"
3368
  msgstr ""
3369
 
3370
+ #: wpuf-functions.php:1535
3371
  msgid "Czech Koruna"
3372
  msgstr ""
3373
 
3374
+ #: wpuf-functions.php:1536
3375
  msgid "Danish Krone"
3376
  msgstr ""
3377
 
3378
+ #: wpuf-functions.php:1537
3379
  msgid "Dominican Peso"
3380
  msgstr ""
3381
 
3382
+ #: wpuf-functions.php:1538
3383
  msgid "Algerian Dinar"
3384
  msgstr ""
3385
 
3386
+ #: wpuf-functions.php:1539
3387
  msgid "Euros"
3388
  msgstr ""
3389
 
3390
+ #: wpuf-functions.php:1540
3391
  msgid "Hong Kong Dollar"
3392
  msgstr ""
3393
 
3394
+ #: wpuf-functions.php:1541
3395
  msgid "Croatia kuna"
3396
  msgstr ""
3397
 
3398
+ #: wpuf-functions.php:1542
3399
  msgid "Hungarian Forint"
3400
  msgstr ""
3401
 
3402
+ #: wpuf-functions.php:1543
3403
  msgid "Icelandic krona"
3404
  msgstr ""
3405
 
3406
+ #: wpuf-functions.php:1544
3407
  msgid "Indonesia Rupiah"
3408
  msgstr ""
3409
 
3410
+ #: wpuf-functions.php:1545
3411
  msgid "Indian Rupee"
3412
  msgstr ""
3413
 
3414
+ #: wpuf-functions.php:1546
3415
  msgid "Nepali Rupee"
3416
  msgstr ""
3417
 
3418
+ #: wpuf-functions.php:1547
3419
  msgid "Israeli Shekel"
3420
  msgstr ""
3421
 
3422
+ #: wpuf-functions.php:1548
3423
  msgid "Japanese Yen"
3424
  msgstr ""
3425
 
3426
+ #: wpuf-functions.php:1549
3427
  msgid "Lao Kip"
3428
  msgstr ""
3429
 
3430
+ #: wpuf-functions.php:1550
3431
  msgid "South Korean Won"
3432
  msgstr ""
3433
 
3434
+ #: wpuf-functions.php:1551
3435
  msgid "Malaysian Ringgits"
3436
  msgstr ""
3437
 
3438
+ #: wpuf-functions.php:1552
3439
  msgid "Mexican Peso"
3440
  msgstr ""
3441
 
3442
+ #: wpuf-functions.php:1553
3443
  msgid "Nigerian Naira"
3444
  msgstr ""
3445
 
3446
+ #: wpuf-functions.php:1554
3447
  msgid "Norwegian Krone"
3448
  msgstr ""
3449
 
3450
+ #: wpuf-functions.php:1555
3451
  msgid "New Zealand Dollar"
3452
  msgstr ""
3453
 
3454
+ #: wpuf-functions.php:1556
3455
  msgid "Omani Rial"
3456
  msgstr ""
3457
 
3458
+ #: wpuf-functions.php:1557
3459
  msgid "Iranian Rial"
3460
  msgstr ""
3461
 
3462
+ #: wpuf-functions.php:1558
3463
  msgid "Pakistani Rupee"
3464
  msgstr ""
3465
 
3466
+ #: wpuf-functions.php:1559
3467
  msgid "Paraguayan Guaraní"
3468
  msgstr ""
3469
 
3470
+ #: wpuf-functions.php:1560
3471
  msgid "Philippine Pesos"
3472
  msgstr ""
3473
 
3474
+ #: wpuf-functions.php:1561
3475
  msgid "Polish Zloty"
3476
  msgstr ""
3477
 
3478
+ #: wpuf-functions.php:1562
3479
  msgid "Pounds Sterling"
3480
  msgstr ""
3481
 
3482
+ #: wpuf-functions.php:1563
3483
  msgid "Romanian Leu"
3484
  msgstr ""
3485
 
3486
+ #: wpuf-functions.php:1564
3487
  msgid "Russian Ruble"
3488
  msgstr ""
3489
 
3490
+ #: wpuf-functions.php:1565
3491
  msgid "Saudi Riyal"
3492
  msgstr ""
3493
 
3494
+ #: wpuf-functions.php:1566
3495
  msgid "Singapore Dollar"
3496
  msgstr ""
3497
 
3498
+ #: wpuf-functions.php:1567
3499
  msgid "South African rand"
3500
  msgstr ""
3501
 
3502
+ #: wpuf-functions.php:1568
3503
  msgid "Swedish Krona"
3504
  msgstr ""
3505
 
3506
+ #: wpuf-functions.php:1569
3507
  msgid "Swiss Franc"
3508
  msgstr ""
3509
 
3510
+ #: wpuf-functions.php:1570
3511
  msgid "Taiwan New Dollars"
3512
  msgstr ""
3513
 
3514
+ #: wpuf-functions.php:1571
3515
  msgid "Thai Baht"
3516
  msgstr ""
3517
 
3518
+ #: wpuf-functions.php:1572
3519
  msgid "Turkish Lira"
3520
  msgstr ""
3521
 
3522
+ #: wpuf-functions.php:1573
3523
  msgid "US Dollar"
3524
  msgstr ""
3525
 
3526
+ #: wpuf-functions.php:1574
3527
  msgid "Vietnamese Dong"
3528
  msgstr ""
3529
 
3530
+ #: wpuf-functions.php:1575
3531
  msgid "Egyptian Pound"
3532
  msgstr ""
3533
 
3534
+ #: wpuf.php:119
3535
  msgid "Your Post Has Been Expired"
3536
  msgstr ""
3537
 
3538
+ #: wpuf.php:554
3539
+ msgid "Error: Nonce verification failed"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3540
  msgstr ""
3541
 
3542
  #. Plugin URI of the plugin/theme
3557
  msgid "https://tareq.co"
3558
  msgstr ""
3559
 
3560
+ #: wpuf-functions.php:1037
3561
  msgctxt "tag delimiter"
3562
  msgid ","
3563
  msgstr ""
lib/class-wedevs-insights.php ADDED
@@ -0,0 +1,750 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ if ( ! class_exists( 'WeDevs_Insights' ) ) :
4
+
5
+ /**
6
+ * weDevs Tracker
7
+ *
8
+ * This is a tracker class to track plugin usage based on if the customer has opted in.
9
+ * No personal information is being tracked by this class, only general settings, active plugins, environment details
10
+ * and admin email.
11
+ *
12
+ * @version 1.0
13
+ *
14
+ * @author Tareq Hasan <tareq@wedevs.com>
15
+ */
16
+ class WeDevs_Insights {
17
+
18
+ /**
19
+ * Slug of the plugin
20
+ *
21
+ * @var string
22
+ */
23
+ public $slug;
24
+
25
+ /**
26
+ * Name of the plugin
27
+ *
28
+ * @var string
29
+ */
30
+ public $name;
31
+
32
+ /**
33
+ * Main plugin file
34
+ *
35
+ * @var string
36
+ */
37
+ public $basename;
38
+
39
+ /**
40
+ * The notice text
41
+ *
42
+ * @var string
43
+ */
44
+ public $notice;
45
+
46
+ /**
47
+ * URL to the API endpoint
48
+ *
49
+ * @var string
50
+ */
51
+ private static $api_url = 'http://tracking.wedevs.com/';
52
+
53
+ /**
54
+ * Initialize the class
55
+ *
56
+ * @param string $slug slug of the plugin
57
+ * @param string $name readable name of the plugin
58
+ * @param string $file main plugin file path
59
+ * @param string $notice the notice texts if needs customizing
60
+ */
61
+ public function __construct( $slug, $name, $file, $notice = '' ) {
62
+ $this->slug = $slug;
63
+ $this->name = $name;
64
+ $this->basename = plugin_basename( $file );
65
+ $this->notice = $notice;
66
+
67
+ // tracking notice
68
+ add_action( 'admin_notices', array( $this, 'admin_notice' ) );
69
+ add_action( 'admin_init', array( $this, 'handle_optin_optout' ) );
70
+
71
+ // plugin deactivate actions
72
+ add_action( 'plugin_action_links_' . $this->basename, array( $this, 'plugin_action_links' ) );
73
+ add_action( 'admin_footer', array( $this, 'deactivate_scripts' ) );
74
+
75
+ // clean events and options on deactivation
76
+ register_deactivation_hook( $file, array( $this, 'deactivate_plugin' ) );
77
+
78
+ // uninstall reason
79
+ add_action( 'wp_ajax_' . $this->slug . '_submit-uninstall-reason', array( $this, 'uninstall_reason_submission' ) );
80
+
81
+ // cron events
82
+ add_action( 'cron_schedules', array( $this, 'add_weekly_schedule' ) );
83
+ add_action( $this->slug . '_tracker_send_event', array( $this, 'send_tracking_data' ) );
84
+ // add_action( 'admin_init', array( $this, 'send_tracking_data' ) ); // test
85
+ }
86
+
87
+ /**
88
+ * Send tracking data to weDevs server
89
+ *
90
+ * @param boolean $override
91
+ *
92
+ * @return void
93
+ */
94
+ public function send_tracking_data( $override = false ) {
95
+ // skip on AJAX Requests
96
+ if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
97
+ return;
98
+ }
99
+
100
+ if ( ! $this->tracking_allowed() && ! $override ) {
101
+ return;
102
+ }
103
+
104
+ // Send a maximum of once per week
105
+ $last_send = $this->get_last_send();
106
+ if ( $last_send && $last_send > strtotime( '-1 week' ) ) {
107
+ return;
108
+ }
109
+
110
+ $this->send_request( $this->get_tracking_data(), 'track' );
111
+
112
+ update_option( $this->slug . '_tracking_last_send', time() );
113
+ }
114
+
115
+ /**
116
+ * Send request to remote endpoint
117
+ *
118
+ * @param array $params
119
+ * @param string $route
120
+ *
121
+ * @return void
122
+ */
123
+ private function send_request( $params, $route ) {
124
+ $resp = wp_remote_post( self::$api_url . $route, array(
125
+ 'method' => 'POST',
126
+ 'timeout' => 45,
127
+ 'redirection' => 5,
128
+ 'httpversion' => '1.0',
129
+ 'blocking' => false,
130
+ 'headers' => array( 'user-agent' => 'WeDevsTracker/' . md5( esc_url( home_url() ) ) . ';' ),
131
+ 'body' => $params,
132
+ 'cookies' => array()
133
+ )
134
+ );
135
+ }
136
+
137
+ /**
138
+ * Get the tracking data points
139
+ *
140
+ * @return array
141
+ */
142
+ protected function get_tracking_data() {
143
+ $all_plugins = $this->get_all_plugins();
144
+ $admin_user = get_user_by( 'id', 1 );
145
+
146
+ $data = array(
147
+ 'url' => home_url(),
148
+ 'site' => get_bloginfo( 'name' ),
149
+ 'admin_email' => get_option( 'admin_email' ),
150
+ 'user_name' => $admin_user->display_name,
151
+ 'user_email' => $admin_user->user_email,
152
+ 'plugin' => $this->slug,
153
+ 'server' => $this->get_server_info(),
154
+ 'wp' => $this->get_wp_info(),
155
+ 'users' => $this->get_user_counts(),
156
+ 'active_plugins' => count( $all_plugins['active_plugins'] ),
157
+ 'inactive_plugins' => count( $all_plugins['inactive_plugins'] ),
158
+ );
159
+
160
+ // for child classes
161
+ if ( $extra = $this->get_extra_data() ) {
162
+ $data['extra'] = $extra;
163
+ }
164
+
165
+ return apply_filters( $this->slug . '_tracker_data', $data );
166
+ }
167
+
168
+ /**
169
+ * If a child class wants to send extra data
170
+ *
171
+ * @return mixed
172
+ */
173
+ protected function get_extra_data() {
174
+ return false;
175
+ }
176
+
177
+ /**
178
+ * Explain the user which data we collect
179
+ *
180
+ * @return string
181
+ */
182
+ protected function data_we_collect() {
183
+ $data = array(
184
+ 'Server environment details (php, mysql, server, WordPress versions)',
185
+ 'Number of users in your site',
186
+ 'Site language',
187
+ 'Number of active and inactive plugins',
188
+ 'Site name and url',
189
+ 'Your name and email address',
190
+ );
191
+
192
+ return $data;
193
+ }
194
+
195
+ /**
196
+ * Check if the user has opted into tracking
197
+ *
198
+ * @return bool
199
+ */
200
+ private function tracking_allowed() {
201
+ $allow_tracking = get_option( $this->slug . '_allow_tracking', 'no' );
202
+
203
+ return $allow_tracking == 'yes';
204
+ }
205
+
206
+ /**
207
+ * Get the last time a tracking was sent
208
+ *
209
+ * @return false|string
210
+ */
211
+ private function get_last_send() {
212
+ return get_option( $this->slug . '_tracking_last_send', false );
213
+ }
214
+
215
+ /**
216
+ * Check if the notice has been dismissed or enabled
217
+ *
218
+ * @return boolean
219
+ */
220
+ private function notice_dismissed() {
221
+ $hide_notice = get_option( $this->slug . '_tracking_notice', 'no' );
222
+
223
+ if ( 'hide' == $hide_notice ) {
224
+ return true;
225
+ }
226
+
227
+ return false;
228
+ }
229
+
230
+ /**
231
+ * Check if the current server is localhost
232
+ *
233
+ * @return boolean
234
+ */
235
+ private function is_local_server() {
236
+ return in_array( $_SERVER['REMOTE_ADDR'], array( '127.0.0.1', '::1' ) );
237
+ }
238
+
239
+ /**
240
+ * Schedule the event weekly
241
+ *
242
+ * @return void
243
+ */
244
+ private function schedule_event() {
245
+ wp_schedule_event( time(), 'weekly', $this->slug . '_tracker_send_event' );
246
+ }
247
+
248
+ /**
249
+ * Clear any scheduled hook
250
+ *
251
+ * @return void
252
+ */
253
+ private function clear_schedule_event() {
254
+ wp_clear_scheduled_hook( $this->slug . '_tracker_send_event' );
255
+ }
256
+
257
+ /**
258
+ * Display the admin notice to users that have not opted-in or out
259
+ *
260
+ * @return void
261
+ */
262
+ public function admin_notice() {
263
+
264
+ if ( $this->notice_dismissed() ) {
265
+ return;
266
+ }
267
+
268
+ if ( $this->tracking_allowed() ) {
269
+ return;
270
+ }
271
+
272
+ if ( ! current_user_can( 'manage_options' ) ) {
273
+ return;
274
+ }
275
+
276
+ // don't show tracking if a local server
277
+ if ( ! $this->is_local_server() ) {
278
+ $optin_url = add_query_arg( $this->slug . '_tracker_optin', 'true' );
279
+ $optout_url = add_query_arg( $this->slug . '_tracker_optout', 'true' );
280
+
281
+ if ( empty( $this->notice ) ) {
282
+ $notice = sprintf( __( 'Want to help make <strong>%s</strong> even more awesome? Allow weDevs to collect non-sensitive diagnostic data and usage information.', 'textdomain' ), $this->name );
283
+ } else {
284
+ $notice = $this->notice;
285
+ }
286
+
287
+ $notice .= ' (<a class="insights-data-we-collect" href="#">' . __( 'what we collect', 'textdomain' ) . '</a>)';
288
+ $notice .= '<p class="description" style="display:none;">' . implode( ', ', $this->data_we_collect() ) . '. No sensitive data is tracked.</p>';
289
+
290
+ echo '<div class="updated"><p>';
291
+ echo $notice;
292
+ echo '</p><p class="submit">';
293
+ echo '&nbsp;<a href="' . esc_url( $optin_url ) . '" class="button-primary button-large">' . __( 'Allow', 'textdomain' ) . '</a>';
294
+ echo '&nbsp;<a href="' . esc_url( $optout_url ) . '" class="button-secondary button-large">' . __( 'No thanks', 'textdomain' ) . '</a>';
295
+ echo '</p></div>';
296
+
297
+ echo "<script type='text/javascript'>jQuery('.insights-data-we-collect').on('click', function(e) {
298
+ e.preventDefault();
299
+ jQuery(this).parents('.updated').find('p.description').slideToggle('fast');
300
+ });
301
+ </script>
302
+ ";
303
+ }
304
+ }
305
+
306
+ /**
307
+ * handle the optin/optout
308
+ *
309
+ * @return void
310
+ */
311
+ public function handle_optin_optout() {
312
+ if ( isset( $_GET[ $this->slug . '_tracker_optin' ] ) && $_GET[ $this->slug . '_tracker_optin' ] == 'true' ) {
313
+ update_option( $this->slug . '_allow_tracking', 'yes' );
314
+ update_option( $this->slug . '_tracking_notice', 'hide' );
315
+
316
+ $this->clear_schedule_event();
317
+ $this->schedule_event();
318
+ $this->send_tracking_data();
319
+
320
+ wp_redirect( remove_query_arg( $this->slug . '_tracker_optin' ) );
321
+ exit;
322
+ }
323
+
324
+ if ( isset( $_GET[ $this->slug . '_tracker_optout' ] ) && $_GET[ $this->slug . '_tracker_optout' ] == 'true' ) {
325
+ update_option( $this->slug . '_allow_tracking', 'no' );
326
+ update_option( $this->slug . '_tracking_notice', 'hide' );
327
+
328
+ $this->clear_schedule_event();
329
+
330
+ wp_redirect( remove_query_arg( $this->slug . '_tracker_optout' ) );
331
+ exit;
332
+ }
333
+ }
334
+
335
+ /**
336
+ * Get the number of post counts
337
+ *
338
+ * @param string $post_type
339
+ *
340
+ * @return integer
341
+ */
342
+ protected function get_post_count( $post_type ) {
343
+ global $wpdb;
344
+
345
+ return (int) $wpdb->get_var( "SELECT count(ID) FROM $wpdb->posts WHERE post_type = '$post_type' and post_status = 'publish'");
346
+ }
347
+
348
+ /**
349
+ * Get server related info.
350
+ *
351
+ * @return array
352
+ */
353
+ private static function get_server_info() {
354
+ global $wpdb;
355
+
356
+ $server_data = array();
357
+
358
+ if ( isset( $_SERVER['SERVER_SOFTWARE'] ) && ! empty( $_SERVER['SERVER_SOFTWARE'] ) ) {
359
+ $server_data['software'] = $_SERVER['SERVER_SOFTWARE'];
360
+ }
361
+
362
+ if ( function_exists( 'phpversion' ) ) {
363
+ $server_data['php_version'] = phpversion();
364
+ }
365
+
366
+ $server_data['mysql_version'] = $wpdb->db_version();
367
+
368
+ $server_data['php_max_upload_size'] = size_format( wp_max_upload_size() );
369
+ $server_data['php_default_timezone'] = date_default_timezone_get();
370
+ $server_data['php_soap'] = class_exists( 'SoapClient' ) ? 'Yes' : 'No';
371
+ $server_data['php_fsockopen'] = function_exists( 'fsockopen' ) ? 'Yes' : 'No';
372
+ $server_data['php_curl'] = function_exists( 'curl_init' ) ? 'Yes' : 'No';
373
+
374
+ return $server_data;
375
+ }
376
+
377
+ /**
378
+ * Get WordPress related data.
379
+ *
380
+ * @return array
381
+ */
382
+ private function get_wp_info() {
383
+ $wp_data = array();
384
+
385
+ $wp_data['memory_limit'] = WP_MEMORY_LIMIT;
386
+ $wp_data['debug_mode'] = ( defined('WP_DEBUG') && WP_DEBUG ) ? 'Yes' : 'No';
387
+ $wp_data['locale'] = get_locale();
388
+ $wp_data['version'] = get_bloginfo( 'version' );
389
+ $wp_data['multisite'] = is_multisite() ? 'Yes' : 'No';
390
+
391
+ return $wp_data;
392
+ }
393
+
394
+ /**
395
+ * Get the list of active and inactive plugins
396
+ *
397
+ * @return array
398
+ */
399
+ private function get_all_plugins() {
400
+ // Ensure get_plugins function is loaded
401
+ if ( ! function_exists( 'get_plugins' ) ) {
402
+ include ABSPATH . '/wp-admin/includes/plugin.php';
403
+ }
404
+
405
+ $plugins = get_plugins();
406
+ $active_plugins_keys = get_option( 'active_plugins', array() );
407
+ $active_plugins = array();
408
+
409
+ foreach ( $plugins as $k => $v ) {
410
+ // Take care of formatting the data how we want it.
411
+ $formatted = array();
412
+ $formatted['name'] = strip_tags( $v['Name'] );
413
+
414
+ if ( isset( $v['Version'] ) ) {
415
+ $formatted['version'] = strip_tags( $v['Version'] );
416
+ }
417
+
418
+ if ( isset( $v['Author'] ) ) {
419
+ $formatted['author'] = strip_tags( $v['Author'] );
420
+ }
421
+
422
+ if ( isset( $v['Network'] ) ) {
423
+ $formatted['network'] = strip_tags( $v['Network'] );
424
+ }
425
+
426
+ if ( isset( $v['PluginURI'] ) ) {
427
+ $formatted['plugin_uri'] = strip_tags( $v['PluginURI'] );
428
+ }
429
+
430
+ if ( in_array( $k, $active_plugins_keys ) ) {
431
+ // Remove active plugins from list so we can show active and inactive separately
432
+ unset( $plugins[$k] );
433
+ $active_plugins[$k] = $formatted;
434
+ } else {
435
+ $plugins[$k] = $formatted;
436
+ }
437
+ }
438
+
439
+ return array( 'active_plugins' => $active_plugins, 'inactive_plugins' => $plugins );
440
+ }
441
+
442
+ /**
443
+ * Get user totals based on user role.
444
+ *
445
+ * @return array
446
+ */
447
+ private function get_user_counts() {
448
+ $user_count = array();
449
+ $user_count_data = count_users();
450
+ $user_count['total'] = $user_count_data['total_users'];
451
+
452
+ // Get user count based on user role
453
+ foreach ( $user_count_data['avail_roles'] as $role => $count ) {
454
+ $user_count[ $role ] = $count;
455
+ }
456
+
457
+ return $user_count;
458
+ }
459
+
460
+ /**
461
+ * Add weekly cron schedule
462
+ *
463
+ * @param array $schedules
464
+ *
465
+ * @return array
466
+ */
467
+ public function add_weekly_schedule( $schedules ) {
468
+
469
+ $schedules['weekly'] = array(
470
+ 'interval' => DAY_IN_SECONDS * 7,
471
+ 'display' => __( 'Once Weekly', 'textdomain' )
472
+ );
473
+
474
+ return $schedules;
475
+ }
476
+
477
+ /**
478
+ * Clear our options upon deactivation
479
+ *
480
+ * @return void
481
+ */
482
+ public function deactivate_plugin() {
483
+ $this->clear_schedule_event();
484
+
485
+ delete_option( $this->slug . '_allow_tracking' );
486
+ delete_option( $this->slug . '_tracking_notice' );
487
+ delete_option( $this->slug . '_tracking_last_send' );
488
+ }
489
+
490
+ /**
491
+ * Hook into action links and modify the deactivate link
492
+ *
493
+ * @param array $links
494
+ *
495
+ * @return array
496
+ */
497
+ public function plugin_action_links( $links ) {
498
+
499
+ if ( array_key_exists( 'deactivate', $links ) ) {
500
+ $links['deactivate'] = str_replace( '<a', '<a class="' . $this->slug . '-deactivate-link"', $links['deactivate'] );
501
+ }
502
+
503
+ return $links;
504
+ }
505
+
506
+ private function get_uninstall_reasons() {
507
+ $reasons = array(
508
+ array(
509
+ 'id' => 'could-not-understand',
510
+ 'text' => 'I couldn\'t understand how to make it work',
511
+ 'type' => 'textarea',
512
+ 'placeholder' => 'Would you like us to assist you?'
513
+ ),
514
+ array(
515
+ 'id' => 'found-better-plugin',
516
+ 'text' => 'I found a better plugin',
517
+ 'type' => 'text',
518
+ 'placeholder' => 'Which plugin?'
519
+ ),
520
+ array(
521
+ 'id' => 'not-have-that-feature',
522
+ 'text' => 'The plugin is great, but I need specific feature that you don\'t support',
523
+ 'type' => 'textarea',
524
+ 'placeholder' => 'Could you tell us more about that feature?'
525
+ ),
526
+ array(
527
+ 'id' => 'is-not-working',
528
+ 'text' => 'The plugin is not working',
529
+ 'type' => 'textarea',
530
+ 'placeholder' => 'Could you tell us a bit more whats not working?'
531
+ ),
532
+ array(
533
+ 'id' => 'looking-for-other',
534
+ 'text' => 'It\'s not what I was looking for',
535
+ 'type' => '',
536
+ 'placeholder' => ''
537
+ ),
538
+ array(
539
+ 'id' => 'did-not-work-as-expected',
540
+ 'text' => 'The plugin didn\'t work as expected',
541
+ 'type' => 'textarea',
542
+ 'placeholder' => 'What did you expect?'
543
+ ),
544
+ array(
545
+ 'id' => 'other',
546
+ 'text' => 'Other',
547
+ 'type' => 'textarea',
548
+ 'placeholder' => 'Could you tell us a bit more?'
549
+ ),
550
+ );
551
+
552
+ return $reasons;
553
+ }
554
+
555
+ /**
556
+ * Plugin deactivation uninstall reason submission
557
+ *
558
+ * @return void
559
+ */
560
+ public function uninstall_reason_submission() {
561
+ global $wpdb;
562
+
563
+ if ( ! isset( $_POST['reason_id'] ) ) {
564
+ wp_send_json_error();
565
+ }
566
+
567
+ $current_user = wp_get_current_user();
568
+
569
+ $data = array(
570
+ 'reason_id' => sanitize_text_field( $_POST['reason_id'] ),
571
+ 'plugin' => $this->slug,
572
+ 'url' => home_url(),
573
+ 'user_email' => $current_user->user_email,
574
+ 'user_name' => $current_user->display_name,
575
+ 'reason_info' => isset( $_REQUEST['reason_info'] ) ? trim( stripslashes( $_REQUEST['reason_info'] ) ) : '',
576
+ 'software' => $_SERVER['SERVER_SOFTWARE'],
577
+ 'php_version' => phpversion(),
578
+ 'mysql_version' => $wpdb->db_version(),
579
+ 'wp_version' => get_bloginfo( 'version' ),
580
+ 'locale' => get_locale(),
581
+ 'multisite' => is_multisite() ? 'Yes' : 'No'
582
+ );
583
+
584
+ $this->send_request( $data, 'uninstall_reason' );
585
+
586
+ wp_send_json_success();
587
+ }
588
+
589
+ /**
590
+ * Handle the plugin deactivation feedback
591
+ *
592
+ * @return void
593
+ */
594
+ public function deactivate_scripts() {
595
+ global $pagenow;
596
+
597
+ if ( 'plugins.php' != $pagenow ) {
598
+ return;
599
+ }
600
+
601
+ $reasons = $this->get_uninstall_reasons();
602
+ ?>
603
+
604
+ <div class="wd-dr-modal" id="<?php echo $this->slug; ?>-wd-dr-modal">
605
+ <div class="wd-dr-modal-wrap">
606
+ <div class="wd-dr-modal-header">
607
+ <h3><?php _e( 'If you have a moment, please let us know why you are deactivating:', 'domain' ); ?></h3>
608
+ </div>
609
+
610
+ <div class="wd-dr-modal-body">
611
+ <ul class="reasons">
612
+ <?php foreach ($reasons as $reason) { ?>
613
+ <li data-type="<?php echo esc_attr( $reason['type'] ); ?>" data-placeholder="<?php echo esc_attr( $reason['placeholder'] ); ?>">
614
+ <label><input type="radio" name="selected-reason" value="<?php echo $reason['id']; ?>"> <?php echo $reason['text']; ?></label>
615
+ </li>
616
+ <?php } ?>
617
+ </ul>
618
+ </div>
619
+
620
+ <div class="wd-dr-modal-footer">
621
+ <a href="#" class="dont-bother-me"><?php _e( 'I rather wouldn\'t say', 'domain' ); ?></a>
622
+ <button class="button-secondary"><?php _e( 'Submit & Deactivate', 'domain' ); ?></button>
623
+ <button class="button-primary"><?php _e( 'Canel', 'domain' ); ?></button>
624
+ </div>
625
+ </div>
626
+ </div>
627
+
628
+ <style type="text/css">
629
+ .wd-dr-modal {
630
+ position: fixed;
631
+ z-index: 99999;
632
+ top: 0;
633
+ right: 0;
634
+ bottom: 0;
635
+ left: 0;
636
+ background: rgba(0,0,0,0.5);
637
+ display: none;
638
+ }
639
+
640
+ .wd-dr-modal.modal-active {
641
+ display: block;
642
+ }
643
+
644
+ .wd-dr-modal-wrap {
645
+ width: 475px;
646
+ position: relative;
647
+ margin: 10% auto;
648
+ background: #fff;
649
+ }
650
+
651
+ .wd-dr-modal-header {
652
+ border-bottom: 1px solid #eee;
653
+ padding: 8px 20px;
654
+ }
655
+
656
+ .wd-dr-modal-header h3 {
657
+ line-height: 150%;
658
+ margin: 0;
659
+ }
660
+
661
+ .wd-dr-modal-body {
662
+ padding: 5px 20px 20px 20px;
663
+ }
664
+
665
+ .wd-dr-modal-body .reason-input {
666
+ margin-top: 5px;
667
+ margin-left: 20px;
668
+ }
669
+ .wd-dr-modal-footer {
670
+ border-top: 1px solid #eee;
671
+ padding: 12px 20px;
672
+ text-align: right;
673
+ }
674
+ </style>
675
+
676
+ <script type="text/javascript">
677
+ (function($) {
678
+ $(function() {
679
+ var modal = $( '#<?php echo $this->slug; ?>-wd-dr-modal' );
680
+ var deactivateLink = '';
681
+
682
+ $( '#the-list' ).on('click', 'a.<?php echo $this->slug; ?>-deactivate-link', function(e) {
683
+ e.preventDefault();
684
+
685
+ modal.addClass('modal-active');
686
+ deactivateLink = $(this).attr('href');
687
+ modal.find('a.dont-bother-me').attr('href', deactivateLink).css('float', 'left');
688
+ });
689
+
690
+ modal.on('click', 'button.button-primary', function(e) {
691
+ e.preventDefault();
692
+
693
+ modal.removeClass('modal-active');
694
+ });
695
+
696
+ modal.on('click', 'input[type="radio"]', function () {
697
+ var parent = $(this).parents('li:first');
698
+
699
+ modal.find('.reason-input').remove();
700
+
701
+ var inputType = parent.data('type'),
702
+ inputPlaceholder = parent.data('placeholder'),
703
+ reasonInputHtml = '<div class="reason-input">' + ( ( 'text' === inputType ) ? '<input type="text" size="40" />' : '<textarea rows="5" cols="45"></textarea>' ) + '</div>';
704
+
705
+ if ( inputType !== '' ) {
706
+ parent.append( $(reasonInputHtml) );
707
+ parent.find('input, textarea').attr('placeholder', inputPlaceholder).focus();
708
+ }
709
+ });
710
+
711
+ modal.on('click', 'button.button-secondary', function(e) {
712
+ e.preventDefault();
713
+
714
+ var button = $(this);
715
+
716
+ if ( button.hasClass('disabled') ) {
717
+ return;
718
+ }
719
+
720
+ var $radio = $( 'input[type="radio"]:checked', modal );
721
+
722
+ var $selected_reason = $radio.parents('li:first'),
723
+ $input = $selected_reason.find('textarea, input[type="text"]');
724
+
725
+ $.ajax({
726
+ url: ajaxurl,
727
+ type: 'POST',
728
+ data: {
729
+ action: '<?php echo $this->slug; ?>_submit-uninstall-reason',
730
+ reason_id: ( 0 === $radio.length ) ? 'none' : $radio.val(),
731
+ reason_info: ( 0 !== $input.length ) ? $input.val().trim() : ''
732
+ },
733
+ beforeSend: function() {
734
+ button.addClass('disabled');
735
+ button.text('Processing...');
736
+ },
737
+ complete: function() {
738
+ window.location.href = deactivateLink;
739
+ }
740
+ });
741
+ });
742
+ });
743
+ }(jQuery));
744
+ </script>
745
+
746
+ <?php
747
+ }
748
+ }
749
+
750
+ endif;
lib/class-weforms-upsell.php ADDED
@@ -0,0 +1,418 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ if ( ! class_exists( 'WeForms_Upsell' ) ) :
4
+
5
+ /**
6
+ * weForms Upsell Class
7
+ */
8
+ class WeForms_Upsell {
9
+
10
+ /**
11
+ * Affiliate code for referal tracking
12
+ *
13
+ * @var string
14
+ */
15
+ private $affiliate;
16
+
17
+ /**
18
+ * Learn more link
19
+ *
20
+ * @var string
21
+ */
22
+ private $learn_more = 'https://wedevs.com/weforms-details/';
23
+
24
+ /**
25
+ * Instantiate the class
26
+ *
27
+ * @param string $affiliate
28
+ */
29
+ function __construct( $affiliate = '' ) {
30
+ $this->affiliate = $affiliate;
31
+
32
+ add_action( 'init', array( $this, 'init_hooks' ) );
33
+ }
34
+
35
+ /**
36
+ * Initialize the hooks
37
+ *
38
+ * @return void
39
+ */
40
+ public function init_hooks() {
41
+
42
+ if ( class_exists( 'weForms' ) ) {
43
+ return;
44
+ }
45
+
46
+ if ( ! current_user_can( 'manage_options' ) ) {
47
+ return;
48
+ }
49
+
50
+ add_action( 'admin_notices', array( $this, 'activation_notice' ) );
51
+
52
+ add_action( 'wp_ajax_weforms_upsell_installer', array( $this, 'install_weforms' ) );
53
+ add_action( 'wp_ajax_weforms_upsell_dismiss', array( $this, 'dismiss_weforms_notice' ) );
54
+ }
55
+
56
+ /**
57
+ * Show the plugin installation notice
58
+ *
59
+ * @return void
60
+ */
61
+ public function activation_notice() {
62
+
63
+ if ( $this->is_dismissed() ) {
64
+ return;
65
+ }
66
+ ?>
67
+ <div class="updated" id="weforms-upsell-prompt">
68
+ <div class="weforms-upsell-logo">
69
+ <img src="https://wedevs-com-wedevs.netdna-ssl.com/wp-content/uploads/2017/08/weforms-upsell.png" width="272" height="71" alt="weForms Logo">
70
+ </div>
71
+ <div class="weforms-upsell-text">
72
+ <h2>weForms is here!</h2>
73
+
74
+ <p>weForms is the next generation contact form plugin for WordPress.</p>
75
+ </div>
76
+ <div class="weforms-upsell-cta">
77
+ <button id="weforms-upsell-prompt-btn" class="button"><?php _e( 'Install Now', 'weforms' ); ?></button>
78
+ &nbsp;<a href="#" class="learn-more" data-tube="NJvjy9WFyAM">Learn More</a>
79
+ </div>
80
+ <button type="button" class="notice-dismiss" style="padding: 3px;" title="<?php _e( 'Dismiss this notice.' ); ?>">
81
+ <span class="screen-reader-text"><?php _e( 'Dismiss this notice.' ); ?></span>
82
+ </button>
83
+ </div>
84
+
85
+ <div class="weforms-upsell-modal" id="weforms-upsell-modal">
86
+ <a class="close">
87
+ &times;
88
+ <span class="screen-reader-text">Close modal window</span>
89
+ </a>
90
+ <div class="video-wrap">
91
+ <iframe id="weforms-upsell-modal-iframe" width="1280" height="720" src="" frameborder="0" allowfullscreen></iframe>
92
+ </div>
93
+
94
+ <div class="learn-more">
95
+ <a href="<?php echo $this->learn_more_link(); ?>" target="_blank" class="button button-primary">Learn more about weForms</a>
96
+ </div>
97
+ </div>
98
+ <div class="weforms-upsell-modal-backdrop" id="weforms-upsell-modal-backdrop"></div>
99
+
100
+ <style type="text/css">
101
+ div#weforms-upsell-prompt * {
102
+ box-sizing: border-box;
103
+ }
104
+
105
+ div#weforms-upsell-prompt {
106
+ display: flex;
107
+ flex-direction: row;
108
+ flex-wrap: nowrap;
109
+ justify-content: flex-start;
110
+ align-content: flex-start;
111
+ align-items: flex-start;
112
+ position: relative;
113
+ border: none;
114
+ margin: 5px 0 15px;
115
+ padding: 0 0 0 10px;
116
+ }
117
+
118
+ .weforms-upsell-logo {
119
+ margin: 0;
120
+ height: 71px;
121
+ order: 0;
122
+ flex: 0 1 272px;
123
+ align-self: auto;
124
+ padding-left: 15px;
125
+ }
126
+
127
+ .weforms-upsell-text {
128
+ background: #46b450;
129
+ color: #fff;
130
+ padding: 0;
131
+ height: 71px;
132
+ margin-left: -35px;
133
+ order: 0;
134
+ flex: 1 1 auto;
135
+ align-self: auto;
136
+ }
137
+
138
+ .weforms-upsell-text h2 {
139
+ color: #fff;
140
+ margin: 10px 0;
141
+ }
142
+
143
+ .weforms-upsell-cta {
144
+ text-align: center;
145
+ order: 0;
146
+ flex: 0 1 220px;
147
+ align-self: auto;
148
+ padding-top: 20px;
149
+ vertical-align: middle;
150
+ height: 71px;
151
+ line-height: 28px;
152
+ }
153
+
154
+ .weforms-upsell-modal {
155
+ background: #fff;
156
+ position: fixed;
157
+ top: 5%;
158
+ bottom: 5%;
159
+ right: 10%;
160
+ left: 10%;
161
+ display: none;
162
+ box-shadow: 0 1px 20px 5px rgba(0, 0, 0, 0.1);
163
+ z-index: 160000;
164
+ }
165
+
166
+ .weforms-upsell-modal .video-wrap {
167
+ position: relative;
168
+ padding-bottom: 56.25%; /* 16:9 */
169
+ padding-top: 25px;
170
+ height: 0;
171
+ }
172
+
173
+ .weforms-upsell-modal .video-wrap iframe {
174
+ position: absolute;
175
+ top: 0;
176
+ left: 0;
177
+ width: 100%;
178
+ height: 100%;
179
+ }
180
+
181
+ .weforms-upsell-modal .learn-more {
182
+ position: absolute;
183
+ bottom: 0;
184
+ right: 10px;
185
+ background: #fff;
186
+ padding: 10px;
187
+ border-radius: 3px;
188
+ }
189
+
190
+ .weforms-upsell-modal a.close {
191
+ position: absolute;
192
+ top: 20px;
193
+ right: -60px;
194
+ font: 300 1.71429em "dashicons" !important;
195
+ content: '\f335';
196
+ display: inline-block;
197
+ padding: 10px 20px 0 20px;
198
+ z-index: 5;
199
+ text-decoration: none;
200
+ height: 40px;
201
+ cursor: pointer;
202
+ background: #000;
203
+ color: #fff;
204
+ border-radius: 50%;
205
+ }
206
+
207
+ .weforms-upsell-modal-backdrop {
208
+ position: fixed;
209
+ z-index: 159999;
210
+ top: 0;
211
+ left: 0;
212
+ right: 0;
213
+ bottom: 0;
214
+ min-height: 360px;
215
+ background: #000;
216
+ opacity: .7;
217
+ display: none;
218
+ }
219
+
220
+ .weforms-upsell-modal.show,
221
+ .weforms-upsell-modal-backdrop.show {
222
+ display: block;
223
+ }
224
+ </style>
225
+
226
+ <script type="text/javascript">
227
+ (function ($) {
228
+ var wrapper = $('#weforms-upsell-prompt'),
229
+ modal = $('#weforms-upsell-modal'),
230
+ modalBackdrop = $('#weforms-upsell-modal-backdrop'),
231
+ iframe = $('#weforms-upsell-modal-iframe');
232
+
233
+ wrapper.on('click', '#weforms-upsell-prompt-btn', function (e) {
234
+ var self = $(this);
235
+
236
+ e.preventDefault();
237
+ self.addClass('install-now updating-message');
238
+ self.text('<?php echo esc_js( 'Installing...' ); ?>');
239
+
240
+ wp.ajax.send( 'weforms_upsell_installer', {
241
+ data: {
242
+ _wpnonce: '<?php echo wp_create_nonce('weforms_upsell_installer'); ?>'
243
+ },
244
+
245
+ success: function(response) {
246
+ self.text('<?php echo esc_js( 'Installed' ); ?>');
247
+ window.location.href = '<?php echo admin_url( 'admin.php?page=weforms' ); ?>';
248
+ },
249
+
250
+ error: function(error) {
251
+ self.removeClass('install-now updating-message');
252
+ alert( error );
253
+ },
254
+
255
+ complete: function() {
256
+ self.attr('disabled', 'disabled');
257
+ self.removeClass('install-now updating-message');
258
+ }
259
+ });
260
+ });
261
+
262
+ wrapper.on('click', '.notice-dismiss', function (e) {
263
+ e.preventDefault();
264
+
265
+ var self = $(this);
266
+
267
+ wp.ajax.send( 'weforms_upsell_dismiss' );
268
+
269
+ self.closest('.updated').slideUp('fast', function() {
270
+ self.remove();
271
+ });
272
+ });
273
+
274
+ wrapper.on('click', 'a.learn-more', function(e) {
275
+ e.preventDefault();
276
+
277
+ modal.addClass('show');
278
+ modalBackdrop.addClass('show');
279
+
280
+ iframe.attr( 'src', 'https://www.youtube.com/embed/sqP-nvyqUdQ?rel=0&amp;controls=0&amp;showinfo=0&amp;autoplay=1' );
281
+ });
282
+
283
+ $('body').on('click', '.weforms-upsell-modal a.close', function(e) {
284
+ e.preventDefault();
285
+
286
+ console.log('close modal');
287
+
288
+ modal.removeClass('show');
289
+ modalBackdrop.removeClass('show');
290
+
291
+ iframe.attr( 'src', '' );
292
+ });
293
+ })(jQuery);
294
+ </script>
295
+ <?php
296
+ }
297
+
298
+ /**
299
+ * Check if the notice is dimissed
300
+ *
301
+ * @return boolean
302
+ */
303
+ public function is_dismissed() {
304
+ return 'yes' == get_option( 'weforms_upsell_dismiss', 'no' );
305
+ }
306
+
307
+ /**
308
+ * Dismiss the weForms notice
309
+ *
310
+ * @return void
311
+ */
312
+ public function dismiss_notice() {
313
+ update_option( 'weforms_upsell_dismiss', 'yes' );
314
+ }
315
+
316
+ /**
317
+ * Learn more link, append affiliate link if present
318
+ *
319
+ * @return string
320
+ */
321
+ public function learn_more_link() {
322
+ $link = $this->learn_more;
323
+
324
+ if ( ! empty( $this->affiliate ) ) {
325
+ $link = add_query_arg( array( 'ref' => $this->affiliate ), $link );
326
+ }
327
+
328
+ return $link;
329
+ }
330
+
331
+ /**
332
+ * Fail if plugin installtion/activation fails
333
+ *
334
+ * @param Object $thing
335
+ *
336
+ * @return void
337
+ */
338
+ public function fail_on_error( $thing ) {
339
+ if ( is_wp_error( $thing ) ) {
340
+ wp_send_json_error( $thing->get_error_message() );
341
+ }
342
+ }
343
+
344
+ /**
345
+ * Install weForms
346
+ *
347
+ * @return void
348
+ */
349
+ public function install_weforms() {
350
+ check_ajax_referer( 'weforms_upsell_installer' );
351
+
352
+ if ( ! current_user_can( 'manage_options' ) ) {
353
+ wp_send_json_error( __( 'You don\'t have permission to install the plugins' ) );
354
+ }
355
+
356
+ if ( ! class_exists( 'WP_User_Frontend' ) ) {
357
+ $wpuf_status = $this->install_plugin( 'wp-user-frontend', 'wpuf.php' );
358
+
359
+ $this->fail_on_error( $wpuf_status );
360
+ }
361
+
362
+ $weforms_status = $this->install_plugin( 'weforms', 'weforms.php' );
363
+ $this->fail_on_error( $weforms_status );
364
+
365
+ $this->dismiss_notice();
366
+
367
+ if ( ! empty( $this->affiliate ) ) {
368
+ update_option( '_weforms_aff_ref', $this->affiliate );
369
+ }
370
+
371
+ wp_send_json_success();
372
+ }
373
+
374
+ /**
375
+ * Install and activate a plugin
376
+ *
377
+ * @param string $slug
378
+ * @param string $file
379
+ *
380
+ * @return WP_Error|null
381
+ */
382
+ public function install_plugin( $slug, $file ) {
383
+ include_once ABSPATH . 'wp-admin/includes/plugin-install.php';
384
+ include_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php';
385
+
386
+ $plugin_basename = $slug . '/' . $file;
387
+
388
+ // if exists and not activated
389
+ if ( file_exists( WP_PLUGIN_DIR . '/' . $plugin_basename ) ) {
390
+ return activate_plugin( $plugin_basename );
391
+ }
392
+
393
+ // seems like the plugin doesn't exists. Download and activate it
394
+ $upgrader = new Plugin_Upgrader( new WP_Ajax_Upgrader_Skin() );
395
+
396
+ $api = plugins_api( 'plugin_information', array( 'slug' => $slug, 'fields' => array( 'sections' => false ) ) );
397
+ $result = $upgrader->install( $api->download_link );
398
+
399
+ if ( is_wp_error( $result ) ) {
400
+ return $result;
401
+ }
402
+
403
+ return activate_plugin( $plugin_basename );
404
+ }
405
+
406
+ /**
407
+ * Dismiss the notice via Ajax
408
+ *
409
+ * @return void
410
+ */
411
+ public function dismiss_weforms_notice() {
412
+ $this->dismiss_notice();
413
+
414
+ wp_send_json_success();
415
+ }
416
+ }
417
+
418
+ endif;
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://tareq.co/donate/
4
  Tags: frontend, post, edit, dashboard, restrict, content submission, guest post, guest, registration, profile, anonymous post, gravity, gravity forms, formidable, author, author profile, authors, comments, conditional fields, conditional logic, custom fields, file uploads, form builder, front-end login, front-end registration, profile builder, profiles, member, member directory, members, Membership
5
  Requires at least: 4.0
6
  Tested up to: 4.8
7
- Stable tag: trunk
8
  License: GPLv2
9
 
10
  The best frontend plugin for WordPress. Users can create, edit, delete, build profiles, post on subscription, use coupons etc.
@@ -90,6 +90,7 @@ Try an <a href="http://wpufdemo.wedevs.com/">online demo</a> of the Pro version.
90
  * Persian translation by Abolfazl Esmailinejad
91
 
92
  = Checkout Our Other Products =
 
93
  * [WP ERP](https://wperp.com/?utm_medium=referral&utm_source=wporg&utm_campaign=WPUF+Readme&utm_content=WP+ERP)
94
  * [Dokan - Multivendor Plugin](https://wedevs.com/products/plugins/dokan/?utm_medium=referral&utm_source=wporg&utm_campaign=WP+ERP+Readme&utm_content=Dokan)
95
  * [WP Project Manager](https://wedevs.com/products/plugins/wp-project-manager-pro/?utm_medium=referral&utm_source=wporg&utm_campaign=WP+ERP+Readme&utm_content=WP+Project+Manager)
@@ -163,6 +164,53 @@ redirected to the edit page with that post id. Then you'll see the edit post for
163
 
164
  == Changelog ==
165
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
166
  = v2.5.3 (8 June, 2017) =
167
 
168
  * [improve] Update action name by removing language changing option
4
  Tags: frontend, post, edit, dashboard, restrict, content submission, guest post, guest, registration, profile, anonymous post, gravity, gravity forms, formidable, author, author profile, authors, comments, conditional fields, conditional logic, custom fields, file uploads, form builder, front-end login, front-end registration, profile builder, profiles, member, member directory, members, Membership
5
  Requires at least: 4.0
6
  Tested up to: 4.8
7
+ Stable tag: 2.5.5
8
  License: GPLv2
9
 
10
  The best frontend plugin for WordPress. Users can create, edit, delete, build profiles, post on subscription, use coupons etc.
90
  * Persian translation by Abolfazl Esmailinejad
91
 
92
  = Checkout Our Other Products =
93
+ * [weForms](https://wordpress.org/plugins/weforms/)
94
  * [WP ERP](https://wperp.com/?utm_medium=referral&utm_source=wporg&utm_campaign=WPUF+Readme&utm_content=WP+ERP)
95
  * [Dokan - Multivendor Plugin](https://wedevs.com/products/plugins/dokan/?utm_medium=referral&utm_source=wporg&utm_campaign=WP+ERP+Readme&utm_content=Dokan)
96
  * [WP Project Manager](https://wedevs.com/products/plugins/wp-project-manager-pro/?utm_medium=referral&utm_source=wporg&utm_campaign=WP+ERP+Readme&utm_content=WP+Project+Manager)
164
 
165
  == Changelog ==
166
 
167
+ = v2.5.5 (26 August, 2017) =
168
+
169
+ * [new] Added Invisible reCaptcha option
170
+ * [new] Added weForms shortcode on script loading check
171
+ * [improve] functions formatting
172
+ * [improve] reCaptcha field title and settings tweak
173
+ * [fix] Fixed translation issue by removing translation function of admin menu
174
+ * [fix] WPUF Custom Fields don’t save in admin/editor
175
+ * [fix] Fatal Error:undefined function wpuf_cf_count_form_entries()
176
+ * [fix] Fix form entries count function name
177
+
178
+ = v2.5.4 (30 July, 2017) =
179
+
180
+ * [new] Added WPUF admin menu icon
181
+ + [new] Added Recaptcha field
182
+ + [new] Added tracker (weDevs Insights)
183
+ * [improve] Add Spanish Translation
184
+ * [improve] Re-design addons page according to WP plugins page listing
185
+ * [improve] When duplicating a form, add a form ID in the form name
186
+ * [improve] Remove Google map and reCaptcha settings
187
+ * [improve] Remove “Fixed form elements” from settings → general
188
+ * [improve] Remove additional + - buttons on radio buttons
189
+ * [improve] Removed Autoloader, Single JS Templates
190
+ * [improve] Form settings saving: compatible with JSON payload
191
+ * [improve] Editor: show warning only when some form field have changed
192
+ * [improve] Added integrations class
193
+ * [improve] Form notification, modal, integration components added
194
+ * [improve] Added first/middle/last name support on merge tag
195
+ * [fix] Sweetalert returning text "true" instead of original message
196
+ * [fix] Hide subscription menu from "my account" page when user has no subscription pack
197
+ * [fix] On saving as draft post custom taxonomy not saved
198
+ * [fix] Page content not loading after successful submission of Ajax
199
+ * [fix] URL is not clickable on the frontend
200
+ * [fix] Mail & URL Field not have validation
201
+ * [fix] Fix infinite post and make compatible with ACF plugin
202
+ * [fix] Cannot delete attribute field from product form after delete attribute
203
+ * [fix] Apply coupon returned unexpected value for separator
204
+ * [fix] swal: fix text and button color
205
+ * [fix] Form render error when using shortcodes in custom html field
206
+ * [fix] Conflict with Imagify Image Optimizer plugin
207
+ * [fix] When site language changed, Add Form/ Edit Form page display nothing
208
+ * [fix] Fix sweetalert promise
209
+ * [fix] Subscription don't display any value if there has no remaining post
210
+ * [fix] Google map not loading on multistep form
211
+ * [fix] Fix undefined index in count
212
+ * [fix] Invalid post type due to class loading hook
213
+
214
  = v2.5.3 (8 June, 2017) =
215
 
216
  * [improve] Update action name by removing language changing option
templates/account.php CHANGED
@@ -2,12 +2,17 @@
2
  <nav class="wpuf-dashboard-navigation">
3
  <ul>
4
  <?php
5
- foreach ( $sections as $section ) {
6
- echo sprintf(
7
- '<li><a href="%s">%s</a></li>',
8
- add_query_arg( array( 'section' => $section['slug'] ), get_permalink() ),
9
- $section['label']
10
- );
 
 
 
 
 
11
  }
12
  ?>
13
  </ul>
@@ -15,7 +20,7 @@
15
 
16
  <div class="wpuf-dashboard-content <?php echo ( ! empty( $current_section ) ) ? $current_section['slug'] : ''; ?>">
17
  <?php
18
- if ( ! empty( $current_section ) ) {
19
  do_action( "wpuf_account_content_{$current_section['slug']}", $sections, $current_section );
20
  }
21
  ?>
2
  <nav class="wpuf-dashboard-navigation">
3
  <ul>
4
  <?php
5
+ if ( is_user_logged_in() ) {
6
+ foreach ( $sections as $section ) {
7
+ if ( 'subscription' === $section['slug'] && wpuf_get_option( 'charge_posting', 'wpuf_payment' ) != 'yes' ) {
8
+ continue;
9
+ }
10
+ echo sprintf(
11
+ '<li><a href="%s">%s</a></li>',
12
+ add_query_arg( array( 'section' => $section['slug'] ), get_permalink() ),
13
+ $section['label']
14
+ );
15
+ }
16
  }
17
  ?>
18
  </ul>
20
 
21
  <div class="wpuf-dashboard-content <?php echo ( ! empty( $current_section ) ) ? $current_section['slug'] : ''; ?>">
22
  <?php
23
+ if ( ! empty( $current_section ) && is_user_logged_in() ) {
24
  do_action( "wpuf_account_content_{$current_section['slug']}", $sections, $current_section );
25
  }
26
  ?>
templates/dashboard/subscription.php CHANGED
@@ -9,6 +9,7 @@
9
  <div>
10
  <strong><?php _e( 'Remaining post: ', 'wpuf'); ?></strong>
11
  <?php
 
12
  foreach ( $user_sub['posts'] as $key => $value ) {
13
  $value = intval( $value );
14
 
@@ -24,7 +25,9 @@
24
  ?>
25
  <div><?php echo $post_type_obj->labels->name . ': ' . $value; ?></div>
26
  <?php
 
27
  }
 
28
  ?>
29
  </div>
30
  <?php
9
  <div>
10
  <strong><?php _e( 'Remaining post: ', 'wpuf'); ?></strong>
11
  <?php
12
+ $i = 0;
13
  foreach ( $user_sub['posts'] as $key => $value ) {
14
  $value = intval( $value );
15
 
25
  ?>
26
  <div><?php echo $post_type_obj->labels->name . ': ' . $value; ?></div>
27
  <?php
28
+ $i++;
29
  }
30
+ echo $i ? '' : $i;
31
  ?>
32
  </div>
33
  <?php
wpuf-functions.php CHANGED
@@ -234,9 +234,11 @@ function wpuf_edit_post_link( $url, $post_id ) {
234
  return $url;
235
  }
236
 
237
- $override = wpuf_get_option( 'override_editlink', 'wpuf_general', 'yes' );
 
238
  if ( $override == 'yes' ) {
239
  $url = '';
 
240
  if ( wpuf_get_option( 'enable_post_edit', 'wpuf_dashboard', 'yes' ) == 'yes' ) {
241
  $edit_page = (int) wpuf_get_option( 'edit_page_id', 'wpuf_general' );
242
  $url = get_permalink( $edit_page );
@@ -388,9 +390,9 @@ function pre($data) {
388
  * @return array image sizes
389
  */
390
  function wpuf_get_image_sizes() {
391
- $image_sizes_orig = get_intermediate_image_sizes();
392
  $image_sizes_orig[] = 'full';
393
- $image_sizes = array();
394
 
395
  foreach ($image_sizes_orig as $size) {
396
  $image_sizes[$size] = $size;
@@ -402,13 +404,13 @@ function wpuf_get_image_sizes() {
402
  function wpuf_allowed_extensions() {
403
  $extesions = array(
404
  'images' => array('ext' => 'jpg,jpeg,gif,png,bmp', 'label' => __( 'Images', 'wpuf' )),
405
- 'audio' => array('ext' => 'mp3,wav,ogg,wma,mka,m4a,ra,mid,midi', 'label' => __( 'Audio', 'wpuf' )),
406
- 'video' => array('ext' => 'avi,divx,flv,mov,ogv,mkv,mp4,m4v,divx,mpg,mpeg,mpe', 'label' => __( 'Videos', 'wpuf' )),
407
- 'pdf' => array('ext' => 'pdf', 'label' => __( 'PDF', 'wpuf' )),
408
  'office' => array('ext' => 'doc,ppt,pps,xls,mdb,docx,xlsx,pptx,odt,odp,ods,odg,odc,odb,odf,rtf,txt', 'label' => __( 'Office Documents', 'wpuf' )),
409
- 'zip' => array('ext' => 'zip,gz,gzip,rar,7z', 'label' => __( 'Zip Archives' )),
410
- 'exe' => array('ext' => 'exe', 'label' => __( 'Executable Files', 'wpuf' )),
411
- 'csv' => array('ext' => 'csv', 'label' => __( 'CSV', 'wpuf' ))
412
  );
413
 
414
  return apply_filters( 'wpuf_allowed_extensions', $extesions );
@@ -446,10 +448,31 @@ add_filter( 'wpuf_addpost_notice', 'wpuf_addpost_notice' );
446
  * @param type $post_id
447
  */
448
  function wpuf_associate_attachment( $attachment_id, $post_id ) {
449
- wp_update_post( array(
450
  'ID' => $attachment_id,
451
  'post_parent' => $post_id
452
- ) );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
453
  }
454
 
455
  /**
@@ -780,6 +803,9 @@ add_filter( 'the_content', 'wpuf_show_custom_fields' );
780
  * @param array $args
781
  */
782
  function wpuf_shortcode_map( $location, $post_id = null, $args = array(), $meta_key = '' ) {
 
 
 
783
  global $post;
784
 
785
  // compatibility
@@ -894,7 +920,7 @@ function wpuf_meta_shortcode( $atts ) {
894
  } elseif ( $type == 'repeat' ) {
895
  return implode( '; ', get_post_meta( $post->ID, $name ) );
896
  } else {
897
- return implode( ', ', get_post_meta( $post->ID, $name ) );
898
  }
899
  }
900
 
@@ -1116,7 +1142,7 @@ function wpuf_date2mysql( $date, $gmt = 0 ) {
1116
  }
1117
  $time = strtotime( $date );
1118
 
1119
- return ( $gmt ) ? gmdate( 'Y-m-d H:i:s', $time ) : gmdate( 'Y-m-d H:i:s', ( $time + ( get_option( 'timezone_string' ) * 3600 ) ) );
1120
  }
1121
 
1122
  /**
@@ -1170,6 +1196,12 @@ function wpuf_get_form_fields( $form_id ) {
1170
  $field['multiple'] = '';
1171
  }
1172
 
 
 
 
 
 
 
1173
  $form_fields[] = apply_filters( 'wpuf-get-form-fields', $field );
1174
  }
1175
 
@@ -1233,13 +1265,58 @@ function wpuf_get_form_settings( $form_id, $status = true ) {
1233
  function wpuf_get_form_notifications( $form_id ) {
1234
  $notifications = get_post_meta( $form_id, 'notifications', true );
1235
 
1236
- if ( !$notifications ) {
1237
  return array();
1238
  }
1239
 
1240
  return $notifications;
1241
  }
1242
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1243
  /**
1244
  * Get the subscription page url
1245
  *
@@ -1608,9 +1685,9 @@ function wpuf_trim_zeros( $price ) {
1608
  function wpuf_format_price( $price, $formated = true, $args = array() ) {
1609
 
1610
  extract( apply_filters( 'wpuf_price_args', wp_parse_args( $args, array(
1611
- 'currency' => ( $formated ? wpuf_get_currency( 'symbol' ) : '' ),
1612
  'decimal_separator' => wpuf_get_price_decimal_separator(),
1613
- 'thousand_separator' => wpuf_get_price_thousand_separator(),
1614
  'decimals' => wpuf_get_price_decimals(),
1615
  'price_format' => get_wpuf_price_format()
1616
  ) ) ) );
@@ -1676,6 +1753,12 @@ function wpuf_duplicate_form( $post_id ) {
1676
  wpuf_insert_form_field( $form_id, $content );
1677
  }
1678
 
 
 
 
 
 
 
1679
  if ( $form_id ) {
1680
  $form_settings = wpuf_get_form_settings( $post_id );
1681
  $notifications = wpuf_get_form_notifications( $post_id );
@@ -1939,7 +2022,11 @@ function wpuf_is_form_submission_open( $form_id ) {
1939
  // handle the contact form
1940
  if ( 'wpuf_contact_form' == $form_type ) {
1941
  $limit = (int) $settings['limit_number'];
1942
- $form_entries = wpuf_cf_count_form_entries( $form_id );
 
 
 
 
1943
 
1944
  if ( $limit < $form_entries ) {
1945
  return new WP_Error( 'entry-limit', $settings['limit_message'] );
@@ -2014,4 +2101,4 @@ function wpuf_get_draft_post_status( $form_settings ) {
2014
  }
2015
  }
2016
  return $post_status;
2017
- }
234
  return $url;
235
  }
236
 
237
+ $override = wpuf_get_option( 'override_editlink', 'wpuf_general', 'no' );
238
+
239
  if ( $override == 'yes' ) {
240
  $url = '';
241
+
242
  if ( wpuf_get_option( 'enable_post_edit', 'wpuf_dashboard', 'yes' ) == 'yes' ) {
243
  $edit_page = (int) wpuf_get_option( 'edit_page_id', 'wpuf_general' );
244
  $url = get_permalink( $edit_page );
390
  * @return array image sizes
391
  */
392
  function wpuf_get_image_sizes() {
393
+ $image_sizes_orig = get_intermediate_image_sizes();
394
  $image_sizes_orig[] = 'full';
395
+ $image_sizes = array();
396
 
397
  foreach ($image_sizes_orig as $size) {
398
  $image_sizes[$size] = $size;
404
  function wpuf_allowed_extensions() {
405
  $extesions = array(
406
  'images' => array('ext' => 'jpg,jpeg,gif,png,bmp', 'label' => __( 'Images', 'wpuf' )),
407
+ 'audio' => array('ext' => 'mp3,wav,ogg,wma,mka,m4a,ra,mid,midi', 'label' => __( 'Audio', 'wpuf' )),
408
+ 'video' => array('ext' => 'avi,divx,flv,mov,ogv,mkv,mp4,m4v,divx,mpg,mpeg,mpe', 'label' => __( 'Videos', 'wpuf' )),
409
+ 'pdf' => array('ext' => 'pdf', 'label' => __( 'PDF', 'wpuf' )),
410
  'office' => array('ext' => 'doc,ppt,pps,xls,mdb,docx,xlsx,pptx,odt,odp,ods,odg,odc,odb,odf,rtf,txt', 'label' => __( 'Office Documents', 'wpuf' )),
411
+ 'zip' => array('ext' => 'zip,gz,gzip,rar,7z', 'label' => __( 'Zip Archives' )),
412
+ 'exe' => array('ext' => 'exe', 'label' => __( 'Executable Files', 'wpuf' )),
413
+ 'csv' => array('ext' => 'csv', 'label' => __( 'CSV', 'wpuf' ))
414
  );
415
 
416
  return apply_filters( 'wpuf_allowed_extensions', $extesions );
448
  * @param type $post_id
449
  */
450
  function wpuf_associate_attachment( $attachment_id, $post_id ) {
451
+ $args = array(
452
  'ID' => $attachment_id,
453
  'post_parent' => $post_id
454
+ );
455
+ wpuf_update_post( $args );
456
+ }
457
+
458
+ /**
459
+ * Update post when hooked to save_post
460
+ *
461
+ * @since 2.5.4
462
+ *
463
+ * @param array args
464
+ */
465
+ function wpuf_update_post( $args ) {
466
+ if ( ! wp_is_post_revision( $args['ID'] ) ){
467
+ // unhook this function so it doesn't loop infinitely
468
+ remove_action( 'save_post', array( WPUF_Admin_Posting::init(), 'save_meta' ), 1 );
469
+
470
+ // update the post, which calls save_post again
471
+ wp_update_post( $args );
472
+
473
+ // re-hook this function
474
+ add_action( 'save_post', array( WPUF_Admin_Posting::init(), 'save_meta' ), 1 );
475
+ }
476
  }
477
 
478
  /**
803
  * @param array $args
804
  */
805
  function wpuf_shortcode_map( $location, $post_id = null, $args = array(), $meta_key = '' ) {
806
+ if ( !wpuf()->is_pro() || !$location ) {
807
+ return;
808
+ }
809
  global $post;
810
 
811
  // compatibility
920
  } elseif ( $type == 'repeat' ) {
921
  return implode( '; ', get_post_meta( $post->ID, $name ) );
922
  } else {
923
+ return make_clickable( implode( ', ', get_post_meta( $post->ID, $name ) ) );
924
  }
925
  }
926
 
1142
  }
1143
  $time = strtotime( $date );
1144
 
1145
+ return ( $gmt ) ? gmdate( 'Y-m-d H:i:s', $time ) : gmdate( 'Y-m-d H:i:s', ( $time + ( intval( get_option( 'timezone_string' ) ) * 3600 ) ) );
1146
  }
1147
 
1148
  /**
1196
  $field['multiple'] = '';
1197
  }
1198
 
1199
+ if ( 'recaptcha' === $field['input_type'] ) {
1200
+ $field['name'] = 'recaptcha';
1201
+ $field['enable_no_captcha'] = isset( $field['enable_no_captcha'] ) ? $field['enable_no_captcha'] : '';
1202
+
1203
+ }
1204
+
1205
  $form_fields[] = apply_filters( 'wpuf-get-form-fields', $field );
1206
  }
1207
 
1265
  function wpuf_get_form_notifications( $form_id ) {
1266
  $notifications = get_post_meta( $form_id, 'notifications', true );
1267
 
1268
+ if ( ! $notifications ) {
1269
  return array();
1270
  }
1271
 
1272
  return $notifications;
1273
  }
1274
 
1275
+ /**
1276
+ * Get form integration settings
1277
+ *
1278
+ * @since 2.5.4
1279
+ *
1280
+ * @param int $form_id
1281
+ *
1282
+ * @return array
1283
+ */
1284
+ function wpuf_get_form_integrations( $form_id ) {
1285
+ $integrations = get_post_meta( $form_id, 'integrations', true );
1286
+
1287
+ if ( ! $integrations ) {
1288
+ return array();
1289
+ }
1290
+
1291
+ return $integrations;
1292
+ }
1293
+
1294
+ /**
1295
+ * Check if an integration is active
1296
+ *
1297
+ * @since 2.5.4
1298
+ *
1299
+ * @param int $form_id
1300
+ * @param string $integration_id
1301
+ *
1302
+ * @return boolean
1303
+ */
1304
+ function wpuf_is_integration_active( $form_id, $integration_id ) {
1305
+ $integrations = wpuf_get_form_integrations( $form_id );
1306
+
1307
+ if ( ! $integrations ) {
1308
+ return false;
1309
+ }
1310
+
1311
+ foreach ($integrations as $id => $integration) {
1312
+ if ( $integration_id == $id && $integration->enabled == true ) {
1313
+ return $integration;
1314
+ }
1315
+ }
1316
+
1317
+ return false;
1318
+ }
1319
+
1320
  /**
1321
  * Get the subscription page url
1322
  *
1685
  function wpuf_format_price( $price, $formated = true, $args = array() ) {
1686
 
1687
  extract( apply_filters( 'wpuf_price_args', wp_parse_args( $args, array(
1688
+ 'currency' => $formated ? wpuf_get_currency( 'symbol' ) : '',
1689
  'decimal_separator' => wpuf_get_price_decimal_separator(),
1690
+ 'thousand_separator' => $formated ? wpuf_get_price_thousand_separator() : '',
1691
  'decimals' => wpuf_get_price_decimals(),
1692
  'price_format' => get_wpuf_price_format()
1693
  ) ) ) );
1753
  wpuf_insert_form_field( $form_id, $content );
1754
  }
1755
 
1756
+ // update the post title to remove confusion
1757
+ wp_update_post( array(
1758
+ 'ID' => $form_id,
1759
+ 'post_title' => $post->post_title . ' (#' . $form_id . ')'
1760
+ ) );
1761
+
1762
  if ( $form_id ) {
1763
  $form_settings = wpuf_get_form_settings( $post_id );
1764
  $notifications = wpuf_get_form_notifications( $post_id );
2022
  // handle the contact form
2023
  if ( 'wpuf_contact_form' == $form_type ) {
2024
  $limit = (int) $settings['limit_number'];
2025
+ $form_entries = 0;
2026
+
2027
+ if ( function_exists( 'weforms_count_form_entries' ) ) {
2028
+ $form_entries = weforms_count_form_entries( $form_id );
2029
+ }
2030
 
2031
  if ( $limit < $form_entries ) {
2032
  return new WP_Error( 'entry-limit', $settings['limit_message'] );
2101
  }
2102
  }
2103
  return $post_status;
2104
+ }
wpuf.php CHANGED
@@ -4,79 +4,92 @@ Plugin Name: WP User Frontend
4
  Plugin URI: https://wordpress.org/plugins/wp-user-frontend/
5
  Description: Create, edit, delete, manages your post, pages or custom post types from frontend. Create registration forms, frontend profile and more...
6
  Author: Tareq Hasan
7
- Version: 2.5.3
8
  Author URI: https://tareq.co
9
  License: GPL2
10
  TextDomain: wpuf
11
  */
12
 
13
- define( 'WPUF_VERSION', '2.5.3' );
14
  define( 'WPUF_FILE', __FILE__ );
15
  define( 'WPUF_ROOT', dirname( __FILE__ ) );
16
  define( 'WPUF_ROOT_URI', plugins_url( '', __FILE__ ) );
17
  define( 'WPUF_ASSET_URI', WPUF_ROOT_URI . '/assets' );
18
 
19
- /**
20
- * Autoload class files on demand
21
- *
22
- * `WPUF_Form_Posting` becomes => form-posting.php
23
- * `WPUF_Dashboard` becomes => dashboard.php
24
- *
25
- * @param string $class requested class name
26
- */
27
- function wpuf_autoload( $class ) {
28
-
29
- if ( stripos( $class, 'WPUF_' ) !== false ) {
30
-
31
- $admin = ( stripos( $class, '_Admin_' ) !== false ) ? true : false;
32
-
33
- if ( $admin ) {
34
- $class_name = str_replace( array('WPUF_Admin_', '_'), array('', '-'), $class );
35
- $filename = dirname( __FILE__ ) . '/admin/' . strtolower( $class_name ) . '.php';
36
- } else {
37
- $class_name = str_replace( array('WPUF_', '_'), array('', '-'), $class );
38
- $filename = dirname( __FILE__ ) . '/class/' . strtolower( $class_name ) . '.php';
39
- }
40
-
41
- if ( file_exists( $filename ) ) {
42
- require_once $filename;
43
- }
44
- }
45
- }
46
-
47
- spl_autoload_register( 'wpuf_autoload' );
48
-
49
  /**
50
  * Main bootstrap class for WP User Frontend
51
  *
52
  * @package WP User Frontend
53
  */
54
- class WP_User_Frontend {
55
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
56
  private static $_instance;
 
 
 
 
 
 
57
  private $is_pro = false;
58
 
59
- function __construct() {
 
 
 
 
 
 
60
 
61
  $this->includes();
 
62
 
63
- $this->instantiate();
 
64
 
65
- // set schedule event
66
- add_action( 'wpuf_remove_expired_post_hook', array( $this, 'action_to_remove_exipred_post' ) );
 
 
 
 
 
 
 
 
 
 
 
 
67
 
68
  add_action( 'admin_init', array( $this, 'block_admin_access') );
69
  add_action( 'show_admin_bar', array( $this, 'show_admin_bar') );
70
 
71
- add_action( 'init', array( $this, 'load_textdomain') );
72
  add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts') );
73
 
74
  // do plugin upgrades
75
- add_action( 'plugins_loaded', array( $this, 'plugin_upgrades') );
76
  add_filter( 'plugin_action_links_' . plugin_basename(__FILE__), array( $this, 'plugin_action_links' ) );
77
 
78
  //add custom css
79
  add_action( 'wp_head', array( $this, 'add_custom_css' ) );
 
 
 
 
80
  }
81
 
82
  /**
@@ -124,6 +137,11 @@ class WP_User_Frontend {
124
  update_option( 'wpuf_expiry_posts_last_cleaned', date( 'F j, Y g:i a' ) );
125
  }
126
 
 
 
 
 
 
127
  public static function init() {
128
 
129
  if ( !self::$_instance ) {
@@ -133,30 +151,47 @@ class WP_User_Frontend {
133
  return self::$_instance;
134
  }
135
 
 
 
 
 
 
136
  public function includes() {
137
  require_once dirname( __FILE__ ) . '/wpuf-functions.php';
138
  require_once dirname( __FILE__ ) . '/lib/gateway/paypal.php';
139
  require_once dirname( __FILE__ ) . '/lib/gateway/bank.php';
140
-
141
- $is_expired = wpuf_is_license_expired();
142
- $has_pro = class_exists( 'WP_User_Frontend_Pro' );
143
-
144
- if ( $has_pro && $is_expired ) {
145
- add_action( 'admin_notices', array( $this, 'license_expired' ) );
146
- }
147
-
148
- if ( $has_pro ) {
149
- $this->is_pro = true;
150
- } else {
151
- include dirname( __FILE__ ) . '/includes/free/loader.php';
152
- }
153
 
154
  if ( is_admin() ) {
155
  require_once WPUF_ROOT . '/admin/settings-options.php';
 
 
 
 
 
 
156
  require_once WPUF_ROOT . '/admin/promotion.php';
 
157
  require_once WPUF_ROOT . '/includes/free/admin/shortcode-button.php';
158
  require_once WPUF_ROOT . '/admin/form-builder/class-wpuf-admin-form-builder.php';
159
  require_once WPUF_ROOT . '/admin/form-builder/class-wpuf-admin-form-builder-ajax.php';
 
 
 
 
 
 
160
  }
161
 
162
  // add reCaptcha library if not found
@@ -173,26 +208,32 @@ class WP_User_Frontend {
173
  */
174
  function instantiate() {
175
 
 
 
176
  new WPUF_Upload();
177
- new WPUF_Payment();
178
  new WPUF_Paypal();
179
  new WPUF_Admin_Form_Template();
180
 
181
- WPUF_Frontend_Form_Post::init(); // requires for form preview
182
  WPUF_Subscription::init();
183
-
184
- new WPUF_Frontend_Account();
185
 
186
  if ( is_admin() ) {
 
187
  WPUF_Admin_Settings::init();
188
  new WPUF_Admin_Form_Handler();
189
  new WPUF_Admin_Form();
190
- new WPUF_Admin_Posting();
191
  new WPUF_Admin_Subscription();
192
  new WPUF_Admin_Installer();
193
  new WPUF_Admin_Promotion();
 
 
 
194
  } else {
 
195
  new WPUF_Frontend_Dashboard();
 
 
196
  }
197
  }
198
 
@@ -229,6 +270,7 @@ class WP_User_Frontend {
229
 
230
  dbDelta( $sql_transaction );
231
 
 
232
  update_option( 'wpuf_version', WPUF_VERSION );
233
  }
234
 
@@ -236,6 +278,7 @@ class WP_User_Frontend {
236
  * Do plugin upgrades
237
  *
238
  * @since 2.2
 
239
  * @return void
240
  */
241
  function plugin_upgrades() {
@@ -244,9 +287,31 @@ class WP_User_Frontend {
244
  return;
245
  }
246
 
 
 
247
  new WPUF_Upgrades( WPUF_VERSION );
248
  }
249
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
250
  /**
251
  * Manage task on plugin deactivation
252
  *
@@ -260,6 +325,7 @@ class WP_User_Frontend {
260
  * Enqueues Styles and Scripts when the shortcodes are used only
261
  *
262
  * @uses has_shortcode()
 
263
  * @since 0.2
264
  */
265
  function enqueue_scripts() {
@@ -267,7 +333,7 @@ class WP_User_Frontend {
267
 
268
  global $post;
269
 
270
- $scheme = is_ssl() ? 'https' : 'http';
271
  $api_key = wpuf_get_option( 'gmap_api_key', 'wpuf_general' );
272
 
273
  if ( !empty( $api_key ) ) {
@@ -292,7 +358,7 @@ class WP_User_Frontend {
292
 
293
  if ( wpuf_get_option( 'load_script', 'wpuf_general', 'on') == 'on') {
294
  $this->plugin_scripts();
295
- } else if ( wpuf_has_shortcode( 'wpuf_form' ) || wpuf_has_shortcode( 'wpuf_edit' ) || wpuf_has_shortcode( 'wpuf_profile' ) || wpuf_has_shortcode( 'wpuf_dashboard' ) ) {
296
  $this->plugin_scripts();
297
  }
298
  }
@@ -464,6 +530,56 @@ class WP_User_Frontend {
464
  echo '<p>Your <strong>WP User Frontend Pro</strong> License has been expired. Please <a href="https://wedevs.com/account/" target="_blank">renew your license</a>.</p>';
465
  echo '</div>';
466
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
467
  }
468
 
469
  /**
@@ -475,6 +591,5 @@ function wpuf() {
475
  return WP_User_Frontend::init();
476
  }
477
 
478
- add_action( 'plugins_loaded', 'wpuf' );
479
- register_activation_hook( __FILE__, array( 'WP_User_Frontend', 'install' ) );
480
- register_deactivation_hook( __FILE__, array( 'WP_User_Frontend', 'uninstall' ) );
4
  Plugin URI: https://wordpress.org/plugins/wp-user-frontend/
5
  Description: Create, edit, delete, manages your post, pages or custom post types from frontend. Create registration forms, frontend profile and more...
6
  Author: Tareq Hasan
7
+ Version: 2.5.5
8
  Author URI: https://tareq.co
9
  License: GPL2
10
  TextDomain: wpuf
11
  */
12
 
13
+ define( 'WPUF_VERSION', '2.5.5' );
14
  define( 'WPUF_FILE', __FILE__ );
15
  define( 'WPUF_ROOT', dirname( __FILE__ ) );
16
  define( 'WPUF_ROOT_URI', plugins_url( '', __FILE__ ) );
17
  define( 'WPUF_ASSET_URI', WPUF_ROOT_URI . '/assets' );
18
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  /**
20
  * Main bootstrap class for WP User Frontend
21
  *
22
  * @package WP User Frontend
23
  */
24
+ final class WP_User_Frontend {
25
 
26
+ /**
27
+ * Integrations instance.
28
+ *
29
+ * @since 2.5.4
30
+ *
31
+ * @var WPUF_Integrations
32
+ */
33
+ public $integrations = null;
34
+
35
+ /**
36
+ * The singleton instance
37
+ *
38
+ * @var WP_User_Frontend
39
+ */
40
  private static $_instance;
41
+
42
+ /**
43
+ * Pro plugin checkup
44
+ *
45
+ * @var boolean
46
+ */
47
  private $is_pro = false;
48
 
49
+ /**
50
+ * Fire up the plugin
51
+ */
52
+ public function __construct() {
53
+
54
+ register_activation_hook( __FILE__, array( $this, 'install' ) );
55
+ register_deactivation_hook( __FILE__, array( $this, 'uninstall' ) );
56
 
57
  $this->includes();
58
+ $this->init_hooks();
59
 
60
+ do_action( 'wpuf_loaded' );
61
+ }
62
 
63
+ /**
64
+ * Initialize the hooks
65
+ *
66
+ * @since 2.5.4
67
+ *
68
+ * @return void
69
+ */
70
+ public function init_hooks() {
71
+
72
+ add_action( 'plugins_loaded', array( $this, 'wpuf_loader') );
73
+ add_action( 'plugins_loaded', array( $this, 'plugin_upgrades') );
74
+
75
+ add_action( 'plugins_loaded', array( $this, 'instantiate' ) );
76
+ add_action( 'init', array( $this, 'load_textdomain') );
77
 
78
  add_action( 'admin_init', array( $this, 'block_admin_access') );
79
  add_action( 'show_admin_bar', array( $this, 'show_admin_bar') );
80
 
 
81
  add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts') );
82
 
83
  // do plugin upgrades
84
+
85
  add_filter( 'plugin_action_links_' . plugin_basename(__FILE__), array( $this, 'plugin_action_links' ) );
86
 
87
  //add custom css
88
  add_action( 'wp_head', array( $this, 'add_custom_css' ) );
89
+
90
+ // set schedule event
91
+ add_action( 'wpuf_remove_expired_post_hook', array( $this, 'action_to_remove_exipred_post' ) );
92
+ add_action( 'wp_ajax_wpuf_weforms_install', array( $this, 'install_weforms' ) );
93
  }
94
 
95
  /**
137
  update_option( 'wpuf_expiry_posts_last_cleaned', date( 'F j, Y g:i a' ) );
138
  }
139
 
140
+ /**
141
+ * Singleton Instance
142
+ *
143
+ * @return \self
144
+ */
145
  public static function init() {
146
 
147
  if ( !self::$_instance ) {
151
  return self::$_instance;
152
  }
153
 
154
+ /**
155
+ * Include the required files
156
+ *
157
+ * @return void
158
+ */
159
  public function includes() {
160
  require_once dirname( __FILE__ ) . '/wpuf-functions.php';
161
  require_once dirname( __FILE__ ) . '/lib/gateway/paypal.php';
162
  require_once dirname( __FILE__ ) . '/lib/gateway/bank.php';
163
+ require_once dirname( __FILE__ ) . '/lib/class-wedevs-insights.php';
164
+
165
+ // global classes/functions
166
+ require_once WPUF_ROOT . '/class/upload.php';
167
+ require_once WPUF_ROOT . '/admin/form-template.php';
168
+ require_once WPUF_ROOT . '/class/post-form-template.php';
169
+ require_once WPUF_ROOT . '/class/subscription.php';
170
+ require_once WPUF_ROOT . '/class/render-form.php';
171
+ require_once WPUF_ROOT . '/class/payment.php';
172
+ require_once WPUF_ROOT . '/class/frontend-form-post.php';
173
+ require_once WPUF_ROOT . '/includes/class-abstract-integration.php';
174
+ require_once WPUF_ROOT . '/includes/class-integrations.php';
 
175
 
176
  if ( is_admin() ) {
177
  require_once WPUF_ROOT . '/admin/settings-options.php';
178
+ require_once WPUF_ROOT . '/admin/settings.php';
179
+ require_once WPUF_ROOT . '/admin/form-handler.php';
180
+ require_once WPUF_ROOT . '/admin/form.php';
181
+ require_once WPUF_ROOT . '/admin/posting.php';
182
+ require_once WPUF_ROOT . '/admin/subscription.php';
183
+ require_once WPUF_ROOT . '/admin/installer.php';
184
  require_once WPUF_ROOT . '/admin/promotion.php';
185
+ require_once WPUF_ROOT . '/admin/post-forms-list-table.php';
186
  require_once WPUF_ROOT . '/includes/free/admin/shortcode-button.php';
187
  require_once WPUF_ROOT . '/admin/form-builder/class-wpuf-admin-form-builder.php';
188
  require_once WPUF_ROOT . '/admin/form-builder/class-wpuf-admin-form-builder-ajax.php';
189
+ include_once WPUF_ROOT . '/lib/class-weforms-upsell.php';
190
+
191
+ } else {
192
+
193
+ require_once WPUF_ROOT . '/class/frontend-dashboard.php';
194
+ require_once WPUF_ROOT . '/class/frontend-account.php';
195
  }
196
 
197
  // add reCaptcha library if not found
208
  */
209
  function instantiate() {
210
 
211
+ $this->integrations = new WPUF_Integrations();
212
+
213
  new WPUF_Upload();
 
214
  new WPUF_Paypal();
215
  new WPUF_Admin_Form_Template();
216
 
 
217
  WPUF_Subscription::init();
218
+ WPUF_Frontend_Form_Post::init();
 
219
 
220
  if ( is_admin() ) {
221
+
222
  WPUF_Admin_Settings::init();
223
  new WPUF_Admin_Form_Handler();
224
  new WPUF_Admin_Form();
225
+ WPUF_Admin_Posting::init();
226
  new WPUF_Admin_Subscription();
227
  new WPUF_Admin_Installer();
228
  new WPUF_Admin_Promotion();
229
+ new WeDevs_Insights( 'wp-user-frontend', 'WP User Frontend', __FILE__ );
230
+ new WeForms_Upsell( 'wpuf' );
231
+
232
  } else {
233
+
234
  new WPUF_Frontend_Dashboard();
235
+ new WPUF_Payment();
236
+ new WPUF_Frontend_Account();
237
  }
238
  }
239
 
270
 
271
  dbDelta( $sql_transaction );
272
 
273
+ update_option( 'wpuf_installed', time() );
274
  update_option( 'wpuf_version', WPUF_VERSION );
275
  }
276
 
278
  * Do plugin upgrades
279
  *
280
  * @since 2.2
281
+ *
282
  * @return void
283
  */
284
  function plugin_upgrades() {
287
  return;
288
  }
289
 
290
+ require_once WPUF_ROOT . '/class/upgrades.php';
291
+
292
  new WPUF_Upgrades( WPUF_VERSION );
293
  }
294
 
295
+ /**
296
+ * Load wpuf free class if not pro
297
+ *
298
+ * @since 2.5.4
299
+ */
300
+ function wpuf_loader() {
301
+ $is_expired = wpuf_is_license_expired();
302
+ $has_pro = class_exists( 'WP_User_Frontend_Pro' );
303
+
304
+ if ( $has_pro && $is_expired ) {
305
+ add_action( 'admin_notices', array( $this, 'license_expired' ) );
306
+ }
307
+
308
+ if ( $has_pro ) {
309
+ $this->is_pro = true;
310
+ } else {
311
+ include dirname( __FILE__ ) . '/includes/free/loader.php';
312
+ }
313
+ }
314
+
315
  /**
316
  * Manage task on plugin deactivation
317
  *
325
  * Enqueues Styles and Scripts when the shortcodes are used only
326
  *
327
  * @uses has_shortcode()
328
+ *
329
  * @since 0.2
330
  */
331
  function enqueue_scripts() {
333
 
334
  global $post;
335
 
336
+ $scheme = is_ssl() ? 'https' : 'http';
337
  $api_key = wpuf_get_option( 'gmap_api_key', 'wpuf_general' );
338
 
339
  if ( !empty( $api_key ) ) {
358
 
359
  if ( wpuf_get_option( 'load_script', 'wpuf_general', 'on') == 'on') {
360
  $this->plugin_scripts();
361
+ } else if ( wpuf_has_shortcode( 'wpuf_form' ) || wpuf_has_shortcode( 'wpuf_edit' ) || wpuf_has_shortcode( 'wpuf_profile' ) || wpuf_has_shortcode( 'wpuf_dashboard' ) || wpuf_has_shortcode( 'weforms' ) ) {
362
  $this->plugin_scripts();
363
  }
364
  }
530
  echo '<p>Your <strong>WP User Frontend Pro</strong> License has been expired. Please <a href="https://wedevs.com/account/" target="_blank">renew your license</a>.</p>';
531
  echo '</div>';
532
  }
533
+
534
+ /**
535
+ * If the core isn't installed
536
+ *
537
+ * @return void
538
+ */
539
+ public function maybe_weforms_install() {
540
+ if ( class_exists('WeForms') ) {
541
+ return;
542
+ }
543
+ // install the core
544
+ add_action( 'wp_ajax_wpuf_weforms_install', array( $this, 'install_weforms' ) );
545
+ }
546
+ /**
547
+ * Install weforms plugin via ajax
548
+ *
549
+ * @return void
550
+ */
551
+ public function install_weforms() {
552
+
553
+ if ( ! isset( $_REQUEST['_wpnonce'] ) || ! wp_verify_nonce( $_REQUEST['_wpnonce'], 'wpuf-weforms-installer-nonce' ) ) {
554
+ wp_send_json_error( __( 'Error: Nonce verification failed', 'weforms' ) );
555
+ }
556
+
557
+ include_once ABSPATH . 'wp-admin/includes/plugin-install.php';
558
+ include_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php';
559
+
560
+ if ( file_exists( WP_PLUGIN_DIR . '/weforms/weforms.php' ) ) {
561
+ activate_plugin( 'weforms/weforms.php' );
562
+ wp_send_json_success();
563
+ }
564
+
565
+ $plugin = 'weforms';
566
+ $api = plugins_api( 'plugin_information', array( 'slug' => $plugin, 'fields' => array( 'sections' => false ) ) );
567
+
568
+ $upgrader = new Plugin_Upgrader( new WP_Ajax_Upgrader_Skin() );
569
+ $result = $upgrader->install( $api->download_link );
570
+
571
+ if ( is_wp_error( $result ) ) {
572
+ wp_send_json_error( $result );
573
+ }
574
+
575
+ $result = activate_plugin( 'weforms/weforms.php' );
576
+
577
+ if ( is_wp_error( $result ) ) {
578
+ wp_send_json_error( $result );
579
+ }
580
+
581
+ wp_send_json_success();
582
+ }
583
  }
584
 
585
  /**
591
  return WP_User_Frontend::init();
592
  }
593
 
594
+ // kickoff
595
+ wpuf();