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

Version Description

Download this release

Release Info

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

Code changes from version 3.1.17 to 3.1.18

Files changed (74) hide show
  1. admin/class-admin-settings.php +2 -13
  2. admin/class-tools.php +4 -4
  3. admin/form-builder/assets/js/components/form-checkbox_field/template.php +1 -1
  4. admin/form-builder/assets/js/components/form-column_field/index.js +17 -10
  5. admin/form-builder/assets/js/components/form-custom_hidden_field/template.php +1 -1
  6. admin/form-builder/assets/js/components/form-dropdown_field/template.php +1 -1
  7. admin/form-builder/assets/js/components/form-email_address/template.php +1 -1
  8. admin/form-builder/assets/js/components/form-featured_image/template.php +1 -1
  9. admin/form-builder/assets/js/components/form-image_upload/template.php +1 -1
  10. admin/form-builder/assets/js/components/form-multiple_select/template.php +1 -1
  11. admin/form-builder/assets/js/components/form-post_content/template.php +1 -1
  12. admin/form-builder/assets/js/components/form-post_excerpt/template.php +1 -1
  13. admin/form-builder/assets/js/components/form-post_tags/template.php +1 -1
  14. admin/form-builder/assets/js/components/form-post_title/template.php +1 -1
  15. admin/form-builder/assets/js/components/form-radio_field/template.php +1 -1
  16. admin/form-builder/assets/js/components/form-taxonomy/template.php +2 -2
  17. admin/form-builder/assets/js/components/form-text_field/template.php +1 -1
  18. admin/form-builder/assets/js/components/form-textarea_field/template.php +1 -1
  19. admin/form-builder/assets/js/components/form-website_url/template.php +1 -1
  20. admin/form-builder/assets/js/form-builder.js +18 -0
  21. admin/form-builder/assets/js/mixins/global.js +9 -6
  22. admin/form-builder/class-wpuf-admin-form-builder-ajax.php +39 -1
  23. admin/form-builder/class-wpuf-admin-form-builder.php +21 -1
  24. admin/html/form-settings-post.php +34 -48
  25. admin/html/support.php +3 -3
  26. admin/html/whats-new.php +67 -1
  27. admin/posting.php +28 -26
  28. admin/premium.php +18 -18
  29. admin/promotion.php +4 -4
  30. admin/weforms.php +0 -56
  31. assets/js-templates/form-components.php +17 -17
  32. assets/js/frontend-form.js +2 -2
  33. assets/js/frontend-form.min.js +1 -1
  34. assets/js/upload.js +4 -0
  35. assets/js/upload.min.js +1 -1
  36. assets/js/wpuf-form-builder-components.js +17 -10
  37. assets/js/wpuf-form-builder-mixins.js +9 -6
  38. assets/js/wpuf-form-builder.js +18 -0
  39. class/frontend-account.php +12 -6
  40. class/render-form.php +0 -3
  41. class/subscription.php +1 -1
  42. class/upload.php +59 -28
  43. includes/class-billing-address.php +62 -45
  44. includes/class-form-manager.php +2 -0
  45. includes/class-frontend-form-post.php +29 -10
  46. includes/class-frontend-render-form.php +40 -27
  47. includes/class-privacy.php +27 -29
  48. includes/class-user-subscription.php +1 -1
  49. includes/class-whats-new.php +1 -1
  50. includes/fields/class-abstract-fields.php +1 -1
  51. includes/fields/class-field-checkbox.php +1 -1
  52. includes/fields/class-field-dropdown.php +42 -0
  53. includes/fields/class-field-featured-image.php +0 -1
  54. includes/fields/class-field-image.php +1 -27
  55. includes/fields/class-field-post-taxonomy.php +2 -3
  56. includes/fields/class-field-radio.php +1 -1
  57. includes/fields/class-field-recaptcha.php +9 -9
  58. includes/free/class-login.php +1 -1
  59. includes/free/edit-user.php +2 -2
  60. includes/setup-wizard.php +1 -1
  61. languages/wp-user-frontend.pot +642 -507
  62. lib/class.settings-api.php +6 -4
  63. lib/gateway/paypal.php +73 -59
  64. readme.txt +35 -1
  65. templates/dashboard.php +28 -14
  66. templates/dashboard/billing-address.php +99 -56
  67. templates/dashboard/posts.php +18 -5
  68. templates/dashboard/subscription.php +48 -41
  69. vendor/autoload.php +1 -1
  70. vendor/composer/autoload_real.php +4 -4
  71. vendor/composer/autoload_static.php +4 -4
  72. views/welcome-page.php +17 -17
  73. wpuf-functions.php +53 -23
  74. wpuf.php +2 -2
admin/class-admin-settings.php CHANGED
@@ -61,7 +61,6 @@ class WPUF_Admin_Settings {
61
  }
62
 
63
  public function admin_init() {
64
-
65
  //set the settings
66
  $this->settings_api->set_sections( $this->get_settings_sections() );
67
  $this->settings_api->set_fields( $this->get_settings_fields() );
@@ -91,10 +90,6 @@ class WPUF_Admin_Settings {
91
  */
92
  do_action( 'wpuf_admin_menu_top' );
93
 
94
- if ( !class_exists( 'WeForms' ) ) {
95
- $this->menu_pages[] = add_submenu_page( 'wp-user-frontend', __( 'weForms', 'wp-user-frontend' ), __( 'Contact Form', 'wp-user-frontend' ), $capability, 'wpuf_weforms', [$this, 'weforms_page'] );
96
- }
97
-
98
  if ( 'on' == wpuf_get_option( 'enable_payment', 'wpuf_payment', 'on' ) ) {
99
  $this->menu_pages[] = add_submenu_page( 'wp-user-frontend', __( 'Subscriptions', 'wp-user-frontend' ), __( 'Subscriptions', 'wp-user-frontend' ), $capability, 'edit.php?post_type=wpuf_subscription' );
100
  }
@@ -195,18 +190,10 @@ class WPUF_Admin_Settings {
195
  }
196
  }
197
 
198
- public function subscription_page() {
199
- require_once dirname( __DIR__ ) . '/admin/subscription.php';
200
- }
201
-
202
  public function subscribers_page( $post_ID ) {
203
  include dirname( __DIR__ ) . '/admin/subscribers.php';
204
  }
205
 
206
- public function weforms_page() {
207
- require_once dirname( __DIR__ ) . '/admin/weforms.php';
208
- }
209
-
210
  public function premium_page() {
211
  require_once dirname( __DIR__ ) . '/admin/premium.php';
212
  }
@@ -364,6 +351,8 @@ class WPUF_Admin_Settings {
364
  wp_delete_post( $item->ID, true );
365
  }
366
  }
 
 
367
  }
368
 
369
  /**
61
  }
62
 
63
  public function admin_init() {
 
64
  //set the settings
65
  $this->settings_api->set_sections( $this->get_settings_sections() );
66
  $this->settings_api->set_fields( $this->get_settings_fields() );
90
  */
91
  do_action( 'wpuf_admin_menu_top' );
92
 
 
 
 
 
93
  if ( 'on' == wpuf_get_option( 'enable_payment', 'wpuf_payment', 'on' ) ) {
94
  $this->menu_pages[] = add_submenu_page( 'wp-user-frontend', __( 'Subscriptions', 'wp-user-frontend' ), __( 'Subscriptions', 'wp-user-frontend' ), $capability, 'edit.php?post_type=wpuf_subscription' );
95
  }
190
  }
191
  }
192
 
 
 
 
 
193
  public function subscribers_page( $post_ID ) {
194
  include dirname( __DIR__ ) . '/admin/subscribers.php';
195
  }
196
 
 
 
 
 
197
  public function premium_page() {
198
  require_once dirname( __DIR__ ) . '/admin/premium.php';
199
  }
351
  wp_delete_post( $item->ID, true );
352
  }
353
  }
354
+
355
+ wp_reset_postdata();
356
  }
357
 
358
  /**
admin/class-tools.php CHANGED
@@ -223,7 +223,7 @@ class WPUF_Admin_Tools {
223
  if ( $export_type == 'all' && check_admin_referer( 'wpuf-export-regs-form' ) ) {
224
  static::export_to_json( 'wpuf_profile' );
225
  } elseif ( $export_type == 'selected' && check_admin_referer( 'wpuf-export-regs-form' ) ) {
226
- $formlist = isset( $_POST['formlist'] ) ? sanitize_text_field( wp_unslash( $_POST['formlist'] ) ) : '';
227
 
228
  if ( $formlist == null ) {
229
  printf( '<div class="error"><p>%s</p></div>', esc_html( __( 'Please select some form for exporting', 'wp-user-frontend' ) ) );
@@ -240,7 +240,7 @@ class WPUF_Admin_Tools {
240
  * @param int $post_ids
241
  */
242
  public function export_data( $export_type, $post_ids ) {
243
- $formlist = isset( $_POST['formlist'] ) ? sanitize_text_field( wp_unslash( $_POST['formlist'] ) ) : '';
244
 
245
  if ( $export_type == 'all' && check_admin_referer( 'wpuf-export-form' ) ) {
246
  static::export_to_json( 'wpuf_forms' );
@@ -367,7 +367,7 @@ class WPUF_Admin_Tools {
367
  <h3><?php esc_html_e( 'Reset Settings', 'wp-user-frontend' ); ?></h3>
368
 
369
  <div class="inside">
370
- <p><?php wp_kses_post('<strong>Caution:</strong> This tool will delete all the plugin settings of WP User Frontend Pro', 'wp-user-frontend' ); ?></p>
371
  <a class="button button-primary" href="<?php echo esc_url( wp_nonce_url( add_query_arg( [ 'wpuf_action' => 'clear_settings' ], 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ) ); ?>" onclick="return confirm('Are you sure?');"><?php esc_html_e( 'Reset Settings', 'wp-user-frontend' ); ?></a>
372
  </div>
373
  </div>
@@ -376,7 +376,7 @@ class WPUF_Admin_Tools {
376
  <h3><?php esc_html_e( 'Delete Forms', 'wp-user-frontend' ); ?></h3>
377
 
378
  <div class="inside">
379
- <p><?php wp_kses_post( '<strong>Caution:</strong> This tool will delete all the post and registration/profile forms.', 'wp-user-frontend' ); ?></p>
380
 
381
  <a class="button button-primary" href="<?php echo esc_url( wp_nonce_url( add_query_arg( [ 'wpuf_action' => 'del_post_forms' ], 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ) ); ?>" onclick="return confirm('<?php echo esc_attr( $confirmation_message ); ?>');"><?php esc_html_e( 'Delete Post Forms', 'wp-user-frontend' ); ?></a>
382
  <a class="button button-primary" href="<?php echo esc_url( wp_nonce_url( add_query_arg( [ 'wpuf_action' => 'del_pro_forms' ], 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ) ); ?>" onclick="return confirm('<?php echo esc_attr( $confirmation_message ); ?>');"><?php esc_html_e( 'Delete Registration Forms', 'wp-user-frontend' ); ?></a>
223
  if ( $export_type == 'all' && check_admin_referer( 'wpuf-export-regs-form' ) ) {
224
  static::export_to_json( 'wpuf_profile' );
225
  } elseif ( $export_type == 'selected' && check_admin_referer( 'wpuf-export-regs-form' ) ) {
226
+ $formlist = isset( $_POST['formlist'] ) ? array_map( 'sanitize_text_field', wp_unslash( $_POST['formlist'] ) ) : [];
227
 
228
  if ( $formlist == null ) {
229
  printf( '<div class="error"><p>%s</p></div>', esc_html( __( 'Please select some form for exporting', 'wp-user-frontend' ) ) );
240
  * @param int $post_ids
241
  */
242
  public function export_data( $export_type, $post_ids ) {
243
+ $formlist = isset( $_POST['formlist'] ) ? array_map( 'sanitize_text_field', wp_unslash( $_POST['formlist'] ) ) : [];
244
 
245
  if ( $export_type == 'all' && check_admin_referer( 'wpuf-export-form' ) ) {
246
  static::export_to_json( 'wpuf_forms' );
367
  <h3><?php esc_html_e( 'Reset Settings', 'wp-user-frontend' ); ?></h3>
368
 
369
  <div class="inside">
370
+ <strong><p><?php esc_html_e( 'Caution: This tool will delete all the plugin settings of WP User Frontend Pro', 'wp-user-frontend' ); ?></p></strong>
371
  <a class="button button-primary" href="<?php echo esc_url( wp_nonce_url( add_query_arg( [ 'wpuf_action' => 'clear_settings' ], 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ) ); ?>" onclick="return confirm('Are you sure?');"><?php esc_html_e( 'Reset Settings', 'wp-user-frontend' ); ?></a>
372
  </div>
373
  </div>
376
  <h3><?php esc_html_e( 'Delete Forms', 'wp-user-frontend' ); ?></h3>
377
 
378
  <div class="inside">
379
+ <strong><p><?php esc_html_e( 'Caution: This tool will delete all the post and registration/profile forms.', 'wp-user-frontend' ); ?></p></strong>
380
 
381
  <a class="button button-primary" href="<?php echo esc_url( wp_nonce_url( add_query_arg( [ 'wpuf_action' => 'del_post_forms' ], 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ) ); ?>" onclick="return confirm('<?php echo esc_attr( $confirmation_message ); ?>');"><?php esc_html_e( 'Delete Post Forms', 'wp-user-frontend' ); ?></a>
382
  <a class="button button-primary" href="<?php echo esc_url( wp_nonce_url( add_query_arg( [ 'wpuf_action' => 'del_pro_forms' ], 'admin.php?page=wpuf_tools&action=tools' ), 'wpuf-tools-action' ) ); ?>" onclick="return confirm('<?php echo esc_attr( $confirmation_message ); ?>');"><?php esc_html_e( 'Delete Registration Forms', 'wp-user-frontend' ); ?></a>
admin/form-builder/assets/js/components/form-checkbox_field/template.php CHANGED
@@ -12,5 +12,5 @@
12
  </li>
13
  </ul>
14
 
15
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
16
  </div>
12
  </li>
13
  </ul>
14
 
15
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
16
  </div>
admin/form-builder/assets/js/components/form-column_field/index.js CHANGED
@@ -330,16 +330,23 @@ Vue.component('form-column_field', {
330
  });
331
 
332
  $(self.$el).find(".wpuf-column-field-inner-columns .wpuf-column-inner-fields").mouseup(function() {
333
- var columnOneWidth = $(columnField).find(".column-1").width(),
334
- columnTwoWidth = $(columnField).find(".column-2").width(),
335
- colOneWidth = (100*columnOneWidth) / total_width,
336
- colTwoWidth = 100 - colOneWidth,
337
- colThreeWidth = 0;
338
-
339
- if (columnsNumber === 3) {
340
- colTwoWidth = (100*columnTwoWidth) / total_width;
341
- colThreeWidth = 100 - (colOneWidth + colTwoWidth);
342
- }
 
 
 
 
 
 
 
343
 
344
  self.field.inner_columns_size['column-1'] = colOneWidth + '%';
345
  self.field.inner_columns_size['column-2'] = colTwoWidth + '%';
330
  });
331
 
332
  $(self.$el).find(".wpuf-column-field-inner-columns .wpuf-column-inner-fields").mouseup(function() {
333
+ let colOneWidth = 0,
334
+ colTwoWidth = 0,
335
+ colThreeWidth = 0;
336
+
337
+ if (columnsNumber === 3) {
338
+ colOneWidth = 100 / columnsNumber;
339
+ colTwoWidth = 100 / columnsNumber;
340
+ colThreeWidth = 100 / columnsNumber;
341
+ } else if (columnsNumber === 2) {
342
+ colOneWidth = 100 / columnsNumber;
343
+ colTwoWidth = 100 / columnsNumber;
344
+ colThreeWidth = 0;
345
+ } else {
346
+ colOneWidth = $(columnField).find(".column-1").width();
347
+ colTwoWidth = $(columnField).find(".column-2").width();
348
+ colThreeWidth = 0;
349
+ }
350
 
351
  self.field.inner_columns_size['column-1'] = colOneWidth + '%';
352
  self.field.inner_columns_size['column-2'] = colTwoWidth + '%';
admin/form-builder/assets/js/components/form-custom_hidden_field/template.php CHANGED
@@ -6,5 +6,5 @@
6
  :value="field.default"
7
  :size="field.size"
8
  >
9
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
10
  </div>
6
  :value="field.default"
7
  :size="field.size"
8
  >
9
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
10
  </div>
admin/form-builder/assets/js/components/form-dropdown_field/template.php CHANGED
@@ -12,5 +12,5 @@
12
  >{{ label }}</option>
13
  </select>
14
 
15
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
16
  </div>
12
  >{{ label }}</option>
13
  </select>
14
 
15
+ <span v-if="field.help" class="wpuf-help" v-html="field.help"> </span>
16
  </div>
admin/form-builder/assets/js/components/form-email_address/template.php CHANGED
@@ -6,5 +6,5 @@
6
  :value="field.default"
7
  :size="field.size"
8
  >
9
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
10
  </div>
6
  :value="field.default"
7
  :size="field.size"
8
  >
9
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
10
  </div>
admin/form-builder/assets/js/components/form-featured_image/template.php CHANGED
@@ -12,5 +12,5 @@
12
  </div>
13
  </div>
14
 
15
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
16
  </div>
12
  </div>
13
  </div>
14
 
15
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
16
  </div>
admin/form-builder/assets/js/components/form-image_upload/template.php CHANGED
@@ -12,5 +12,5 @@
12
  </div>
13
  </div>
14
 
15
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
16
  </div>
12
  </div>
13
  </div>
14
 
15
+ <span v-if="field.help" class="wpuf-help" v-html="field.help"/>
16
  </div>
admin/form-builder/assets/js/components/form-multiple_select/template.php CHANGED
@@ -13,5 +13,5 @@
13
  >{{ label }}</option>
14
  </select>
15
 
16
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
17
  </div>
13
  >{{ label }}</option>
14
  </select>
15
 
16
+ <span v-if="field.help" class="wpuf-help" v-html="field.help"></span>
17
  </div>
admin/form-builder/assets/js/components/form-post_content/template.php CHANGED
@@ -17,5 +17,5 @@
17
 
18
  <text-editor v-if="'no' !== field.rich" :rich="field.rich" :default_text="field.default"></text-editor>
19
 
20
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
21
  </div>
17
 
18
  <text-editor v-if="'no' !== field.rich" :rich="field.rich" :default_text="field.default"></text-editor>
19
 
20
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
21
  </div>
admin/form-builder/assets/js/components/form-post_excerpt/template.php CHANGED
@@ -5,5 +5,5 @@
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>
5
  :rows="field.rows"
6
  :cols="field.cols"
7
  >{{ field.default }}</textarea>
8
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" ></span>
9
  </div>
admin/form-builder/assets/js/components/form-post_tags/template.php CHANGED
@@ -7,5 +7,5 @@
7
  :size="field.size"
8
  >
9
 
10
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
11
  </div>
7
  :size="field.size"
8
  >
9
 
10
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
11
  </div>
admin/form-builder/assets/js/components/form-post_title/template.php CHANGED
@@ -6,5 +6,5 @@
6
  :value="field.default"
7
  :size="field.size"
8
  >
9
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
10
  </div>
6
  :value="field.default"
7
  :size="field.size"
8
  >
9
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
10
  </div>
admin/form-builder/assets/js/components/form-radio_field/template.php CHANGED
@@ -12,5 +12,5 @@
12
  </li>
13
  </ul>
14
 
15
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
16
  </div>
12
  </li>
13
  </ul>
14
 
15
+ <span v-if="field.help" class="wpuf-help" v-html="field.help"/>
16
  </div>
admin/form-builder/assets/js/components/form-taxonomy/template.php CHANGED
@@ -31,7 +31,7 @@
31
  <div v-html="get_term_checklist()"></div>
32
  </div>
33
  </div>
34
-
35
 
36
  <input
37
  v-if="'text' === field.type"
@@ -42,5 +42,5 @@
42
  autocomplete="off"
43
  >
44
 
45
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
46
  </div>
31
  <div v-html="get_term_checklist()"></div>
32
  </div>
33
  </div>
34
+
35
 
36
  <input
37
  v-if="'text' === field.type"
42
  autocomplete="off"
43
  >
44
 
45
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
46
  </div>
admin/form-builder/assets/js/components/form-text_field/template.php CHANGED
@@ -6,5 +6,5 @@
6
  :value="field.default"
7
  :size="field.size"
8
  >
9
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
10
  </div>
6
  :value="field.default"
7
  :size="field.size"
8
  >
9
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
10
  </div>
admin/form-builder/assets/js/components/form-textarea_field/template.php CHANGED
@@ -10,5 +10,5 @@
10
 
11
  <text-editor v-if="'no' !== field.rich" :default_text="field.default" :rich="field.rich"></text-editor>
12
 
13
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
14
  </div>
10
 
11
  <text-editor v-if="'no' !== field.rich" :default_text="field.default" :rich="field.rich"></text-editor>
12
 
13
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
14
  </div>
admin/form-builder/assets/js/components/form-website_url/template.php CHANGED
@@ -6,5 +6,5 @@
6
  :value="field.default"
7
  :size="field.size"
8
  >
9
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
10
  </div>
6
  :value="field.default"
7
  :size="field.size"
8
  >
9
+ <span v-if="field.help" class="wpuf-help" v-html="field.help"/>
10
  </div>
admin/form-builder/assets/js/form-builder.js CHANGED
@@ -835,4 +835,22 @@
835
  $('#builder-form-fields').toggleClass('show');
836
  });
837
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
838
  })(jQuery);
835
  $('#builder-form-fields').toggleClass('show');
836
  });
837
 
838
+ $('#wpuf_settings_posttype').on('change', function() {
839
+ event.preventDefault();
840
+ var post_type = $(this).val();
841
+ wp.ajax.send('wpuf_form_setting_post', {
842
+ data: {
843
+ post_type: post_type,
844
+ wpuf_form_builder_setting_nonce: wpuf_form_builder.nonce
845
+ },
846
+ success: function (response) {
847
+ $('.wpuf_settings_taxonomy').remove();
848
+ $('.wpuf-post-fromat').after(response.data);
849
+ },
850
+ error: function ( error ) {
851
+ console.log(error);
852
+ }
853
+ });
854
+ });
855
+
856
  })(jQuery);
admin/form-builder/assets/js/mixins/global.js CHANGED
@@ -54,6 +54,10 @@ Vue.mixin({
54
  return true;
55
  }
56
 
 
 
 
 
57
  // check if the single instance field exist in column fields
58
  if (self.$store.state.form_fields[i].template === 'column_field') {
59
  var innerColumnFields = self.$store.state.form_fields[i].inner_fields;
@@ -78,14 +82,13 @@ Vue.mixin({
78
  },
79
 
80
  isSingleInstance: function(field_name) {
81
- var singleInstance = ['post_title', 'post_content', 'post_excerpt', 'featured_image',
82
- 'user_login', 'first_name', 'last_name', 'nickname', 'user_email', 'user_url',
83
- 'user_bio', 'password', 'user_avatar', 'taxonomy'];
84
 
85
- if ( $.inArray(field_name, singleInstance) >= 0 ) {
86
- return true;
 
 
87
  }
88
-
89
  return false;
90
  }
91
  }
54
  return true;
55
  }
56
 
57
+ if (self.$store.state.form_fields[i].name === field_name) {
58
+ return true;
59
+ }
60
+
61
  // check if the single instance field exist in column fields
62
  if (self.$store.state.form_fields[i].template === 'column_field') {
63
  var innerColumnFields = self.$store.state.form_fields[i].inner_fields;
82
  },
83
 
84
  isSingleInstance: function(field_name) {
85
+ let singleInstance = wpuf_single_objects;
 
 
86
 
87
+ for( let instance of singleInstance ) {
88
+ if ( field_name === instance ) {
89
+ return true;
90
+ }
91
  }
 
92
  return false;
93
  }
94
  }
admin/form-builder/class-wpuf-admin-form-builder-ajax.php CHANGED
@@ -13,6 +13,7 @@ class WPUF_Admin_Form_Builder_Ajax {
13
  */
14
  public function __construct() {
15
  add_action( 'wp_ajax_wpuf_form_builder_save_form', [ $this, 'save_form' ] );
 
16
  }
17
 
18
  /**
@@ -24,7 +25,6 @@ class WPUF_Admin_Form_Builder_Ajax {
24
  */
25
  public function save_form() {
26
  $post_data = wp_unslash($_POST);
27
-
28
  if ( isset( $post_data['form_data'] ) ) {
29
  parse_str( $post_data['form_data'], $form_data );
30
  } else {
@@ -72,6 +72,44 @@ class WPUF_Admin_Form_Builder_Ajax {
72
 
73
  wp_send_json_success( [ 'form_fields' => $form_fields, 'form_settings' => $settings ] );
74
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
75
  }
76
 
77
  new WPUF_Admin_Form_Builder_Ajax();
13
  */
14
  public function __construct() {
15
  add_action( 'wp_ajax_wpuf_form_builder_save_form', [ $this, 'save_form' ] );
16
+ add_action( 'wp_ajax_wpuf_form_setting_post', [ $this, 'wpuf_get_post_taxonomies' ] );
17
  }
18
 
19
  /**
25
  */
26
  public function save_form() {
27
  $post_data = wp_unslash($_POST);
 
28
  if ( isset( $post_data['form_data'] ) ) {
29
  parse_str( $post_data['form_data'], $form_data );
30
  } else {
72
 
73
  wp_send_json_success( [ 'form_fields' => $form_fields, 'form_settings' => $settings ] );
74
  }
75
+
76
+ public function wpuf_get_post_taxonomies() {
77
+ $post_data = wp_unslash($_POST);
78
+ $post_type = $post_data['post_type'];
79
+ $nonce = $post_data['wpuf_form_builder_setting_nonce'];
80
+
81
+ if ( isset( $nonce ) && !wp_verify_nonce( $post_data['wpuf_form_builder_setting_nonce'], 'form-builder-setting-nonce' ) ) {
82
+ wp_send_json_error( __( 'Unauthorized operation', 'wp-user-frontend' ) );
83
+ }
84
+
85
+ if ( isset( $post_type ) && empty( $post_data['post_type'] ) ) {
86
+ wp_send_json_error( __( 'Invalid post type', 'wp-user-frontend' ) );
87
+ }
88
+
89
+ $post_taxonomies = get_object_taxonomies( $post_type, 'objects' );
90
+ $cat = '';
91
+ foreach ( $post_taxonomies as $tax ) {
92
+ if ( $tax->hierarchical ) {
93
+ $args = [
94
+ 'hide_empty' => false,
95
+ 'hierarchical' => true,
96
+ 'taxonomy' => $tax->name,
97
+ ];
98
+
99
+ $cat .= '<tr class="wpuf_settings_taxonomy"> <th> Default '. $post_type . ' '. $tax->name .'</th> <td>
100
+ <select multiple name="wpuf_settings[default_'.$tax->name.'][]">';
101
+ $categories = get_terms( $args );
102
+
103
+ foreach ( $categories as $category ) {
104
+ $cat .= '<option value="' . $category->term_id . '">' . $category->name . '</option>';
105
+ }
106
+
107
+ $cat .='</select></td>';
108
+ }
109
+ }
110
+
111
+ wp_send_json_success( [ 'success' => 'true' , 'data' => $cat ] );
112
+ }
113
  }
114
 
115
  new WPUF_Admin_Form_Builder_Ajax();
admin/form-builder/class-wpuf-admin-form-builder.php CHANGED
@@ -114,8 +114,27 @@ class WPUF_Admin_Form_Builder {
114
  'wpuf-selectize', 'wpuf-toastr', 'wpuf-clipboard', 'wpuf-tooltip',
115
  ] );
116
 
117
- wp_enqueue_script( 'wpuf-form-builder-mixins', WPUF_ASSET_URI . '/js/wpuf-form-builder-mixins.js', $form_builder_js_deps, WPUF_VERSION, true );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
118
 
 
 
119
  do_action( 'wpuf-form-builder-enqueue-after-mixins' );
120
 
121
  wp_enqueue_script( 'wpuf-form-builder-components', WPUF_ASSET_URI . '/js/wpuf-form-builder-components.js', [ 'wpuf-form-builder-mixins' ], WPUF_VERSION, true );
@@ -146,6 +165,7 @@ class WPUF_Admin_Form_Builder {
146
  'site_url' => site_url( '/' ),
147
  'recaptcha_site' => wpuf_get_option( 'recaptcha_public', 'wpuf_general' ),
148
  'recaptcha_secret' => wpuf_get_option( 'recaptcha_private', 'wpuf_general' ),
 
149
  ] );
150
 
151
  wp_localize_script( 'wpuf-form-builder-mixins', 'wpuf_form_builder', $wpuf_form_builder );
114
  'wpuf-selectize', 'wpuf-toastr', 'wpuf-clipboard', 'wpuf-tooltip',
115
  ] );
116
 
117
+ $single_objects = [
118
+ 'post_title',
119
+ 'post_content',
120
+ 'post_excerpt',
121
+ 'featured_image',
122
+ 'user_login',
123
+ 'first_name',
124
+ 'last_name',
125
+ 'nickname',
126
+ 'user_email',
127
+ 'user_url',
128
+ 'user_bio',
129
+ 'password',
130
+ 'user_avatar',
131
+ 'taxonomy'
132
+ ];
133
+ $taxonomy_terms = array_keys( get_taxonomies() );
134
+ $single_objects = array_merge( $single_objects, $taxonomy_terms );
135
 
136
+ wp_enqueue_script( 'wpuf-form-builder-mixins', WPUF_ASSET_URI . '/js/wpuf-form-builder-mixins.js', $form_builder_js_deps, WPUF_VERSION, true );
137
+ wp_localize_script( 'wpuf-form-builder-mixins', 'wpuf_single_objects', $single_objects );
138
  do_action( 'wpuf-form-builder-enqueue-after-mixins' );
139
 
140
  wp_enqueue_script( 'wpuf-form-builder-components', WPUF_ASSET_URI . '/js/wpuf-form-builder-components.js', [ 'wpuf-form-builder-mixins' ], WPUF_VERSION, true );
165
  'site_url' => site_url( '/' ),
166
  'recaptcha_site' => wpuf_get_option( 'recaptcha_public', 'wpuf_general' ),
167
  'recaptcha_secret' => wpuf_get_option( 'recaptcha_private', 'wpuf_general' ),
168
+ 'nonce' => wp_create_nonce( 'form-builder-setting-nonce' )
169
  ] );
170
 
171
  wp_localize_script( 'wpuf-form-builder-mixins', 'wpuf_form_builder', $wpuf_form_builder );
admin/html/form-settings-post.php CHANGED
@@ -22,14 +22,13 @@ $submit_text = isset( $form_settings['submit_text'] ) ? $form_settings
22
  $draft_text = isset( $form_settings['draft_text'] ) ? $form_settings['draft_text'] : __( 'Save Draft', 'wp-user-frontend' );
23
  $preview_text = isset( $form_settings['preview_text'] ) ? $form_settings['preview_text'] : __( 'Preview', 'wp-user-frontend' );
24
  $draft_post = isset( $form_settings['draft_post'] ) ? $form_settings['draft_post'] : 'false';
25
-
26
  ?>
27
  <table class="form-table">
28
 
29
  <tr class="wpuf-post-type">
30
  <th><?php esc_html_e( 'Post Type', 'wp-user-frontend' ); ?></th>
31
  <td>
32
- <select name="wpuf_settings[post_type]">
33
  <?php
34
  $post_types = get_post_types();
35
  unset( $post_types['attachment'] );
@@ -86,59 +85,46 @@ $draft_post = isset( $form_settings['draft_post'] ) ? $form_settings[
86
  </td>
87
  </tr>
88
 
89
- <tr class="wpuf-default-cat">
90
- <th><?php esc_html_e( 'Default Post Category', 'wp-user-frontend' ); ?></th>
91
- <td>
92
- <?php
93
-
94
- if ( !is_array( $default_cat ) ) {
95
- $default_cat = (array) $default_cat;
96
- }
97
-
98
- $post_taxonomies = get_object_taxonomies( $post_type_selected, 'objects' );
99
- $post_terms = [];
100
-
101
- foreach ( $post_taxonomies as $tax ) {
102
- if ( $tax->hierarchical ) {
103
- $post_terms[] = $tax->name;
104
  }
105
- }
106
 
107
- $args = [
108
- 'hide_empty' => false,
109
- 'hierarchical' => true,
110
- 'selected' => $default_cat,
111
- 'taxonomy' => $post_terms,
112
- ];
113
 
114
- $cat = '<select multiple name="wpuf_settings[default_cat][]">';
115
- $categories = get_terms( $args );
 
116
 
117
- foreach ( $categories as $category ) {
118
- $selected = '';
 
 
 
119
 
120
- if ( in_array( $category->term_id, $default_cat ) ) {
121
- $selected = 'selected ';
122
  }
123
- $cat .= '<option ' . $selected . 'value="' . $category->term_id . '">' . $category->name . '</option>';
124
- }
125
 
126
- $cat .='</select>';
127
- echo wp_kses( $cat, [
128
- 'select' => [
129
- 'multiple' => [],
130
- 'name' => []
131
- ],
132
- 'option' => [
133
- 'selected' => [],
134
- 'value' => [],
135
- ]
136
- ]);
137
-
138
- ?>
139
- <p class="description"><?php echo esc_html( __( 'If users are not allowed to choose any category, this category will be used instead (if post type supports)', 'wp-user-frontend' ) ); ?></p>
140
- </td>
141
- </tr>
142
 
143
  <tr class="wpuf-redirect-to">
144
  <th><?php esc_html_e( 'Redirect To', 'wp-user-frontend' ); ?></th>
22
  $draft_text = isset( $form_settings['draft_text'] ) ? $form_settings['draft_text'] : __( 'Save Draft', 'wp-user-frontend' );
23
  $preview_text = isset( $form_settings['preview_text'] ) ? $form_settings['preview_text'] : __( 'Preview', 'wp-user-frontend' );
24
  $draft_post = isset( $form_settings['draft_post'] ) ? $form_settings['draft_post'] : 'false';
 
25
  ?>
26
  <table class="form-table">
27
 
28
  <tr class="wpuf-post-type">
29
  <th><?php esc_html_e( 'Post Type', 'wp-user-frontend' ); ?></th>
30
  <td>
31
+ <select name="wpuf_settings[post_type]" id="wpuf_settings_posttype">
32
  <?php
33
  $post_types = get_post_types();
34
  unset( $post_types['attachment'] );
85
  </td>
86
  </tr>
87
 
88
+ <?php
89
+ $post_taxonomies = get_object_taxonomies( $post_type_selected, 'objects' );
90
+ foreach ( $post_taxonomies as $tax ) {
91
+ if ( $tax->hierarchical ) {
92
+ $name = 'default_'. $tax->name;
93
+ $default_category = !empty( $form_settings[$name] ) ? $form_settings[$name] : [];
94
+ if ( !is_array( $default_category ) ) {
95
+ $default_category = (array) $default_category;
 
 
 
 
 
 
 
96
  }
 
97
 
98
+ $args = [
99
+ 'hide_empty' => false,
100
+ 'hierarchical' => true,
101
+ 'selected' => $default_category,
102
+ 'taxonomy' => $tax->name,
103
+ ];
104
 
105
+ $tax = '<tr class="wpuf_settings_taxonomy"> <th> Default '. $post_type_selected . ' '. $tax->name .'</th> <td>
106
+ <select multiple name="wpuf_settings[default_'.$tax->name.'][]">';
107
+ $categories = get_terms( $args );
108
 
109
+ foreach ( $categories as $category ) {
110
+ $selected = '';
111
+ if ( in_array( $category->term_id, $default_category ) ) {
112
+ $selected = 'selected ';
113
+ }
114
 
115
+ $tax .= '<option ' . $selected . 'value="' . $category->term_id . '">' . $category->name . '</option>';
 
116
  }
 
 
117
 
118
+ $tax .='</select>
119
+ <p class="description">'.
120
+ esc_html( __( "If users are not allowed to choose any category, this category will be used instead (if post type supports)", "wp-user-frontend" ) )
121
+ .'</p>
122
+ </td>';
123
+
124
+ echo $tax; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
125
+ }
126
+ }
127
+ ?>
 
 
 
 
 
 
128
 
129
  <tr class="wpuf-redirect-to">
130
  <th><?php esc_html_e( 'Redirect To', 'wp-user-frontend' ); ?></th>
admin/html/support.php CHANGED
@@ -464,7 +464,7 @@ function wpuf_help_related_articles( $articles ) {
464
 
465
  <div class="help-blocks">
466
  <div class="help-block">
467
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/help/like.svg" alt="<?php esc_attr_e( 'Like The Plugin?', 'wp-user-frontend' ); ?>">
468
 
469
  <h3><?php esc_html_e( 'Like The Plugin?', 'wp-user-frontend' ); ?></h3>
470
 
@@ -474,7 +474,7 @@ function wpuf_help_related_articles( $articles ) {
474
  </div>
475
 
476
  <div class="help-block">
477
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/help/bugs.svg" alt="<?php esc_attr_e( 'Found Any Bugs?', 'wp-user-frontend' ); ?>">
478
 
479
  <h3><?php esc_html_e( 'Found Any Bugs?', 'wp-user-frontend' ); ?></h3>
480
 
@@ -484,7 +484,7 @@ function wpuf_help_related_articles( $articles ) {
484
  </div>
485
 
486
  <div class="help-block">
487
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/help/support.svg" alt="<?php esc_attr_e( 'Need Any Assistance?', 'wp-user-frontend' ); ?>">
488
 
489
  <h3><?php esc_html_e( 'Need Any Assistance?', 'wp-user-frontend' ); ?></h3>
490
 
464
 
465
  <div class="help-blocks">
466
  <div class="help-block">
467
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/help/like.svg" alt="<?php esc_attr_e( 'Like The Plugin?', 'wp-user-frontend' ); ?>">
468
 
469
  <h3><?php esc_html_e( 'Like The Plugin?', 'wp-user-frontend' ); ?></h3>
470
 
474
  </div>
475
 
476
  <div class="help-block">
477
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/help/bugs.svg" alt="<?php esc_attr_e( 'Found Any Bugs?', 'wp-user-frontend' ); ?>">
478
 
479
  <h3><?php esc_html_e( 'Found Any Bugs?', 'wp-user-frontend' ); ?></h3>
480
 
484
  </div>
485
 
486
  <div class="help-block">
487
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/help/support.svg" alt="<?php esc_attr_e( 'Need Any Assistance?', 'wp-user-frontend' ); ?>">
488
 
489
  <h3><?php esc_html_e( 'Need Any Assistance?', 'wp-user-frontend' ); ?></h3>
490
 
admin/html/whats-new.php CHANGED
@@ -1,5 +1,71 @@
1
  <?php
2
  $changelog = [
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  [
4
  'version' => 'Version 3.1.12',
5
  'released' => '2019-10-17',
@@ -544,7 +610,7 @@ function _wpuf_changelog_content( $content ) {
544
  </h4>
545
 
546
  <div class="description">
547
- <?php echo esc_html( _wpuf_changelog_content( $change['description'] ) ); ?>
548
  </div>
549
  </li>
550
  <?php } ?>
1
  <?php
2
  $changelog = [
3
+ [
4
+ 'version' => 'Version 3.1.18',
5
+ 'released' => '2020-03-13',
6
+ 'changes' => [
7
+ [
8
+ 'title' => __( 'Hide post edit option when subscription is expired', 'wp-user-frontend' ),
9
+ 'type' => 'Improvement',
10
+ 'description' => __( 'Hide post edit option from users whose subscription pack is expired.', 'wp-user-frontend' ),
11
+ ],
12
+ [
13
+ 'title' => __( 'Check files to prevent duplicity in media upload', 'wp-user-frontend' ),
14
+ 'type' => 'Improvement',
15
+ 'description' => __( 'A simple measure has been taken to prevent maliciously flooding the site by uploading same file multiple times. Though this won\'t work with already uploaded medias.', 'wp-user-frontend' ),
16
+ ],
17
+ [
18
+ 'title' => __( 'Refactor address fields in Account section', 'wp-user-frontend' ),
19
+ 'type' => 'Improvement',
20
+ 'description' => __( 'Address edit section from Account section has been rewritten to improve UX.', 'wp-user-frontend' ),
21
+ ],
22
+ [
23
+ 'title' => __( 'Update Paypal payment gateway', 'wp-user-frontend' ),
24
+ 'type' => 'Improvement',
25
+ 'description' => __( 'Paypal payment gateway has seen some improvements.', 'wp-user-frontend' ),
26
+ ],
27
+ [
28
+ 'title' => __( 'Default Category selection improvements', 'wp-user-frontend' ),
29
+ 'type' => 'Improvement',
30
+ 'description' => __( 'An intuitive way of selecting default category of a selected post type has been introduced.', 'wp-user-frontend' ),
31
+ ],
32
+ [
33
+ 'title' => __( 'Compatibility issue with ACF date time field', 'wp-user-frontend' ),
34
+ 'type' => 'Fix',
35
+ 'description' => __( 'A Compatibility issue with ACF date time field has been addressed.', 'wp-user-frontend' ),
36
+ ],
37
+ [
38
+ 'title' => __( 'Media title, caption & description not saving', 'wp-user-frontend' ),
39
+ 'type' => 'Fix',
40
+ 'description' => __( 'Media title, caption & description were not saving from frontend. They will now.', 'wp-user-frontend' ),
41
+ ],
42
+ [
43
+ 'title' => __( 'The Events Calendar venue and organizer fields issue in WPUF Custom Fields metabox', 'wp-user-frontend' ),
44
+ 'type' => 'Fix',
45
+ 'description' => __( 'A workaround has been introduced to save The Events Calendar Venue and Organizer fields properly from WPUF Custom Fields metabox.', 'wp-user-frontend' ),
46
+ ],
47
+ [
48
+ 'title' => __( 'Checkbox data not saving from WPUF Custom Fields metabox', 'wp-user-frontend' ),
49
+ 'type' => 'Fix',
50
+ 'description' => __( 'Checkboxe data from WPUF Custom Fields metabox were not saving. It has been fixed.', 'wp-user-frontend' ),
51
+ ],
52
+ [
53
+ 'title' => __( 'Multi-column Repeater field data saving issue', 'wp-user-frontend' ),
54
+ 'type' => 'Fix',
55
+ 'description' => __( 'Multi-column Repeater field data from a form was not saving. It has been fixed.', 'wp-user-frontend' ),
56
+ ],
57
+ [
58
+ 'title' => __( 'Multistep form conflict with Elementor', 'wp-user-frontend' ),
59
+ 'type' => 'Fix',
60
+ 'description' => __( 'Multistep form had a conflict with Elementor. It has been fixed.', 'wp-user-frontend' ),
61
+ ],
62
+ [
63
+ 'title' => __( 'Multiple images showing issue in frontend', 'wp-user-frontend' ),
64
+ 'type' => 'Fix',
65
+ 'description' => __( 'Multiple images in a post were not showing in frontend. Now they will.', 'wp-user-frontend' ),
66
+ ]
67
+ ],
68
+ ],
69
  [
70
  'version' => 'Version 3.1.12',
71
  'released' => '2019-10-17',
610
  </h4>
611
 
612
  <div class="description">
613
+ <?php echo wp_kses_post( _wpuf_changelog_content( $change['description'] ) ); ?>
614
  </div>
615
  </li>
616
  <?php } ?>
admin/posting.php CHANGED
@@ -16,7 +16,7 @@ class WPUF_Admin_Posting {
16
  add_action( 'add_meta_boxes', [ $this, 'add_meta_box_form_select'] );
17
  add_action( 'add_meta_boxes', [ $this, 'add_meta_box_post_lock'] );
18
  add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_script'] );
19
- add_action( 'save_post', [ $this, 'save_meta'], 1, 2 ); // save the custom fields
20
  add_action( 'save_post', [ $this, 'form_selection_metabox_save' ], 1, 2 ); // save edit form id
21
  add_action( 'save_post', [ $this, 'post_lock_metabox_save' ], 1, 2 ); // save post lock option
22
  add_action( 'wp_ajax_wpuf_clear_schedule_lock', [$this, 'clear_schedule_lock'] );
@@ -41,10 +41,12 @@ class WPUF_Admin_Posting {
41
  $api_key = wpuf_get_option( 'gmap_api_key', 'wpuf_general' );
42
 
43
  wp_enqueue_style( 'jquery-ui', WPUF_ASSET_URI . '/css/jquery-ui-1.9.1.custom.css' );
44
-
45
- wp_enqueue_script( 'jquery-ui-datepicker' );
46
  wp_enqueue_script( 'jquery-ui-slider' );
47
- wp_enqueue_script( 'jquery-ui-timepicker', WPUF_ASSET_URI . '/js/jquery-ui-timepicker-addon.js', ['jquery-ui-datepicker'] );
 
 
 
 
48
 
49
  if ( !empty( $api_key ) ) {
50
  wp_enqueue_script( 'google-maps', $scheme . '://maps.google.com/maps/api/js?libraries=places&key=' . $api_key, [], null );
@@ -57,9 +59,9 @@ class WPUF_Admin_Posting {
57
  display: none;
58
  }
59
  </style>", [
60
- 'style' => [],
61
- 'button' => []
62
- ] );
63
  }
64
  }
65
 
@@ -123,7 +125,7 @@ class WPUF_Admin_Posting {
123
  <select name="wpuf_form_select">
124
  <option value="">--</option>
125
  <?php foreach ( $forms as $form ) { ?>
126
- <option value="<?php echo esc_attr( $form->ID ); ?>"<?php selected( $selected, $form->ID ); ?>><?php echo esc_html( $form->post_title ); ?></option>
127
  <?php } ?>
128
  </select>
129
  <div>
@@ -211,7 +213,7 @@ class WPUF_Admin_Posting {
211
  } ?>
212
 
213
  <!-- <input type="hidden" name="wpuf_lock_editing_post_nonce" value="<?php // echo wp_create_nonce( plugin_basename( __FILE__ ) ); ?>" /> -->
214
- <?php wp_nonce_field( plugin_basename( __FILE__ ), 'wpuf_lock_editing_post_nonce' ); ?>
215
  <p><?php echo wp_kses_post( $msg ); ?></p>
216
 
217
  <label>
@@ -338,24 +340,24 @@ class WPUF_Admin_Posting {
338
  <table class="form-table wpuf-cf-table">
339
  <tbody>
340
 
341
- <script type="text/javascript">
342
- if ( typeof wpuf_conditional_items === 'undefined' ) {
343
- wpuf_conditional_items = [];
344
- }
345
 
346
- if ( typeof wpuf_plupload_items === 'undefined' ) {
347
- wpuf_plupload_items = [];
348
- }
349
 
350
- if ( typeof wpuf_map_items === 'undefined' ) {
351
- wpuf_map_items = [];
352
- }
353
- </script>
354
 
355
- <?php
356
- $atts = [];
357
- wpuf()->fields->render_fields( $custom_fields, $form_id, $atts, $type = 'post', $post->ID );
358
- // wp_nonce_field( 'wpuf_form_add' ); ?>
359
  </tbody>
360
  </table>
361
  <?php
@@ -486,8 +488,8 @@ class WPUF_Admin_Posting {
486
  */
487
  // Save the Metabox Data
488
  public function save_meta( $post_id, $post = null ) {
489
- $wpuf_cf_update = isset( $_POST['wpuf_cf_update'] ) ? sanitize_text_field( wp_unslash( $_POST['wpuf_cf_update'] ) ) : '';
490
- $wpuf_cf_form_id = isset( $_POST['wpuf_cf_form_id'] ) ? sanitize_text_field( wp_unslash( $_POST['wpuf_cf_form_id'] ) ) : '';
491
 
492
  if ( !isset( $post_id ) ) {
493
  return;
16
  add_action( 'add_meta_boxes', [ $this, 'add_meta_box_form_select'] );
17
  add_action( 'add_meta_boxes', [ $this, 'add_meta_box_post_lock'] );
18
  add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_script'] );
19
+ add_action( 'save_post', [ $this, 'save_meta'], 100, 2 ); // save the custom fields
20
  add_action( 'save_post', [ $this, 'form_selection_metabox_save' ], 1, 2 ); // save edit form id
21
  add_action( 'save_post', [ $this, 'post_lock_metabox_save' ], 1, 2 ); // save post lock option
22
  add_action( 'wp_ajax_wpuf_clear_schedule_lock', [$this, 'clear_schedule_lock'] );
41
  $api_key = wpuf_get_option( 'gmap_api_key', 'wpuf_general' );
42
 
43
  wp_enqueue_style( 'jquery-ui', WPUF_ASSET_URI . '/css/jquery-ui-1.9.1.custom.css' );
 
 
44
  wp_enqueue_script( 'jquery-ui-slider' );
45
+
46
+ if( ! class_exists('ACF') ) {
47
+ wp_enqueue_script( 'jquery-ui-datepicker' );
48
+ wp_enqueue_script( 'jquery-ui-timepicker', WPUF_ASSET_URI . '/js/jquery-ui-timepicker-addon.js', ['jquery-ui-datepicker'] );
49
+ }
50
 
51
  if ( !empty( $api_key ) ) {
52
  wp_enqueue_script( 'google-maps', $scheme . '://maps.google.com/maps/api/js?libraries=places&key=' . $api_key, [], null );
59
  display: none;
60
  }
61
  </style>", [
62
+ 'style' => [],
63
+ 'button' => []
64
+ ] );
65
  }
66
  }
67
 
125
  <select name="wpuf_form_select">
126
  <option value="">--</option>
127
  <?php foreach ( $forms as $form ) { ?>
128
+ <option value="<?php echo esc_attr( $form->ID ); ?>"<?php selected( $selected, $form->ID ); ?>><?php echo esc_html( $form->post_title ); ?></option>
129
  <?php } ?>
130
  </select>
131
  <div>
213
  } ?>
214
 
215
  <!-- <input type="hidden" name="wpuf_lock_editing_post_nonce" value="<?php // echo wp_create_nonce( plugin_basename( __FILE__ ) ); ?>" /> -->
216
+ <?php wp_nonce_field( plugin_basename( __FILE__ ), 'wpuf_lock_editing_post_nonce' ); ?>
217
  <p><?php echo wp_kses_post( $msg ); ?></p>
218
 
219
  <label>
340
  <table class="form-table wpuf-cf-table">
341
  <tbody>
342
 
343
+ <script type="text/javascript">
344
+ if ( typeof wpuf_conditional_items === 'undefined' ) {
345
+ wpuf_conditional_items = [];
346
+ }
347
 
348
+ if ( typeof wpuf_plupload_items === 'undefined' ) {
349
+ wpuf_plupload_items = [];
350
+ }
351
 
352
+ if ( typeof wpuf_map_items === 'undefined' ) {
353
+ wpuf_map_items = [];
354
+ }
355
+ </script>
356
 
357
+ <?php
358
+ $atts = [];
359
+ wpuf()->fields->render_fields( $custom_fields, $form_id, $atts, $type = 'post', $post->ID );
360
+ // wp_nonce_field( 'wpuf_form_add' ); ?>
361
  </tbody>
362
  </table>
363
  <?php
488
  */
489
  // Save the Metabox Data
490
  public function save_meta( $post_id, $post = null ) {
491
+ $wpuf_cf_update = isset( $_POST['wpuf_cf_update'] ) ? sanitize_key( wp_unslash( $_POST['wpuf_cf_update'] ) ) : '';
492
+ $wpuf_cf_form_id = isset( $_POST['wpuf_cf_form_id'] ) ? intval( $_POST['wpuf_cf_form_id'] ) : 0;
493
 
494
  if ( !isset( $post_id ) ) {
495
  return;
admin/premium.php CHANGED
@@ -15,7 +15,7 @@
15
  <div class="feature-section two-col">
16
  <div class="col feature-wrap">
17
  <div class="feature-image">
18
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/premium/registration.gif" alt="<?php esc_html_e( 'Registration Form Builder', 'wp-user-frontend' ); ?>">
19
  </div>
20
  <div class="feature-details">
21
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/registration-profile-forms/how-to-setup-registrationlogin-page/" target="_blank"><?php esc_html_e( 'Registration Form Builder', 'wp-user-frontend' ); ?></a></h3>
@@ -25,7 +25,7 @@
25
 
26
  <div class="col feature-wrap">
27
  <div class="feature-image">
28
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/premium/advanced-fields.png" alt="<?php esc_html_e( 'Advanced Fields', 'wp-user-frontend' ); ?>">
29
  </div>
30
  <div class="feature-details">
31
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/form-elements/" target="_blank"><?php esc_html_e( 'Advanced Fields', 'wp-user-frontend' ); ?></a></h3>
@@ -48,7 +48,7 @@
48
 
49
  <div class="col feature-wrap">
50
  <div class="feature-image">
51
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/premium/coupon.gif" alt="<?php esc_html_e( 'Manage Coupons', 'wp-user-frontend' ); ?>">
52
  </div>
53
  <div class="feature-details">
54
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/subscription-payment/coupons/" target="_blank"><?php esc_html_e( 'Manage Coupons', 'wp-user-frontend' ); ?></a></h3>
@@ -58,7 +58,7 @@
58
 
59
  <div class="col feature-wrap">
60
  <div class="feature-image">
61
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/premium/content-restrictions.gif" alt="<?php esc_html_e( 'Content Restrictions', 'wp-user-frontend' ); ?>">
62
  </div>
63
  <div class="feature-details">
64
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/content-restriction/content-restriction/" target="_blank"><?php esc_html_e( 'Content Restrictions', 'wp-user-frontend' ); ?></a></h3>
@@ -68,7 +68,7 @@
68
 
69
  <div class="col feature-wrap">
70
  <div class="feature-image">
71
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/premium/conditional-logic.gif" alt="<?php esc_html_e( 'Conditional Logic', 'wp-user-frontend' ); ?>">
72
  </div>
73
  <div class="feature-details">
74
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/how-to-use-conditional-logic/" target="_blank"><?php esc_html_e( 'Conditional Logic', 'wp-user-frontend' ); ?></a></h3>
@@ -78,7 +78,7 @@
78
 
79
  <div class="col feature-wrap">
80
  <div class="feature-image">
81
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/premium/multi-step.gif" alt="<?php esc_html_e( 'Multi-step Form', 'wp-user-frontend' ); ?>">
82
  </div>
83
  <div class="feature-details">
84
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/how-to-add-multi-step-form/" target="_blank"><?php esc_html_e( 'Multi-step Form', 'wp-user-frontend' ); ?></a></h3>
@@ -98,7 +98,7 @@
98
  <div class="headline-feature two-col">
99
  <div class="col module-wrap">
100
  <div class="module-image">
101
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/modules/Social-Media-Login.png" alt="<?php esc_html_e( 'BuddyPress Profile', 'wp-user-frontend' ); ?>">
102
  </div>
103
  <div class="module-details">
104
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/social-login-registration/" target="_blank"><?php esc_html_e( 'Social Login', 'wp-user-frontend' ); ?></a></h3>
@@ -108,7 +108,7 @@
108
 
109
  <div class="col module-wrap">
110
  <div class="module-image">
111
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/modules/wpuf-ul.png" alt="<?php esc_html_e( 'User Directory', 'wp-user-frontend' ); ?>">
112
  </div>
113
  <div class="module-details">
114
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/user-listing-profile/" target="_blank"><?php esc_html_e( 'User Directory', 'wp-user-frontend' ); ?></a></h3>
@@ -118,7 +118,7 @@
118
 
119
  <div class="col module-wrap">
120
  <div class="module-image">
121
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/modules/wpuf-buddypress.png" alt="<?php esc_html_e( 'BuddyPress Profile', 'wp-user-frontend' ); ?>">
122
  </div>
123
  <div class="module-details">
124
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/buddypress-profile-integration/" target="_blank"><?php esc_html_e( 'BuddyPress Profile', 'wp-user-frontend' ); ?></a></h3>
@@ -128,7 +128,7 @@
128
 
129
  <div class="col module-wrap">
130
  <div class="module-image">
131
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/modules/wpuf-ua.png" alt="<?php esc_html_e( 'MailChimp Integration', 'wp-user-frontend' ); ?>">
132
  </div>
133
  <div class="module-details">
134
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/user-analytics/" target="_blank"><?php esc_html_e( 'User Analytics', 'wp-user-frontend' ); ?></a></h3>
@@ -138,7 +138,7 @@
138
 
139
  <div class="col module-wrap">
140
  <div class="module-image">
141
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/modules/wpuf-pmpro.png" alt="<?php esc_html_e( 'Paid Membership Pro', 'wp-user-frontend' ); ?>">
142
  </div>
143
  <div class="module-details">
144
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/install-and-configure-pmpro-add-on-for-wpuf/" target="_blank"><?php esc_html_e( 'Paid Membership Pro', 'wp-user-frontend' ); ?></a></h3>
@@ -148,7 +148,7 @@
148
 
149
  <div class="col module-wrap">
150
  <div class="module-image">
151
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/modules/wpuf-stripe.png" alt="<?php esc_html_e( 'Stripe Payment', 'wp-user-frontend' ); ?>">
152
  </div>
153
  <div class="module-details">
154
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/stripe/" target="_blank"><?php esc_html_e( 'Stripe Payment', 'wp-user-frontend' ); ?></a></h3>
@@ -158,7 +158,7 @@
158
 
159
  <div class="col module-wrap">
160
  <div class="module-image">
161
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/modules/wpuf-mailpoet.png" alt="<?php esc_html_e( 'Mailpoet', 'wp-user-frontend' ); ?>">
162
  </div>
163
  <div class="module-details">
164
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/mailpoet/" target="_blank"><?php esc_html_e( 'Mailpoet', 'wp-user-frontend' ); ?></a></h3>
@@ -168,7 +168,7 @@
168
 
169
  <div class="col module-wrap">
170
  <div class="module-image">
171
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/modules/wpuf-mailchimp.png" alt="<?php esc_html_e( 'MailChimp Integration', 'wp-user-frontend' ); ?>">
172
  </div>
173
  <div class="module-details">
174
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/add-users-to-mailchimp-subscribers-list-upon-registration-from-frontend/" target="_blank"><?php esc_html_e( 'MailChimp', 'wp-user-frontend' ); ?></a></h3>
@@ -178,7 +178,7 @@
178
 
179
  <div class="col module-wrap">
180
  <div class="module-image">
181
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/modules/wpuf-sms.png" alt="<?php esc_html_e( 'SMS Notification', 'wp-user-frontend' ); ?>">
182
  </div>
183
  <div class="module-details">
184
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/sms-notification/" target="_blank"><?php esc_html_e( 'SMS Notification', 'wp-user-frontend' ); ?></a></h3>
@@ -188,7 +188,7 @@
188
 
189
  <div class="col module-wrap">
190
  <div class="module-image">
191
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/modules/wpuf-comment.png" alt="<?php esc_html_e( 'SMS Notification', 'wp-user-frontend' ); ?>">
192
  </div>
193
  <div class="module-details">
194
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/frontend-comment-manager/" target="_blank"><?php esc_html_e( 'Comment Manager', 'wp-user-frontend' ); ?></a></h3>
@@ -198,7 +198,7 @@
198
 
199
  <div class="col module-wrap">
200
  <div class="module-image">
201
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/modules/wpuf-qr.png" alt="<?php esc_html_e( 'SMS Notification', 'wp-user-frontend' ); ?>">
202
  </div>
203
  <div class="module-details">
204
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/qr-code/" target="_blank"><?php esc_html_e( 'QR Code Generator', 'wp-user-frontend' ); ?></a></h3>
@@ -208,7 +208,7 @@
208
 
209
  <div class="col module-wrap">
210
  <div class="module-image">
211
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/modules/more.png" alt="<?php esc_html_e( 'More...', 'wp-user-frontend' ); ?>">
212
  </div>
213
  <div class="module-details">
214
  <h3><?php esc_html_e( 'More...', 'wp-user-frontend' ); ?></h3>
15
  <div class="feature-section two-col">
16
  <div class="col feature-wrap">
17
  <div class="feature-image">
18
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/premium/registration.gif" alt="<?php esc_html_e( 'Registration Form Builder', 'wp-user-frontend' ); ?>">
19
  </div>
20
  <div class="feature-details">
21
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/registration-profile-forms/how-to-setup-registrationlogin-page/" target="_blank"><?php esc_html_e( 'Registration Form Builder', 'wp-user-frontend' ); ?></a></h3>
25
 
26
  <div class="col feature-wrap">
27
  <div class="feature-image">
28
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/premium/advanced-fields.png" alt="<?php esc_html_e( 'Advanced Fields', 'wp-user-frontend' ); ?>">
29
  </div>
30
  <div class="feature-details">
31
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/form-elements/" target="_blank"><?php esc_html_e( 'Advanced Fields', 'wp-user-frontend' ); ?></a></h3>
48
 
49
  <div class="col feature-wrap">
50
  <div class="feature-image">
51
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/premium/coupon.gif" alt="<?php esc_html_e( 'Manage Coupons', 'wp-user-frontend' ); ?>">
52
  </div>
53
  <div class="feature-details">
54
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/subscription-payment/coupons/" target="_blank"><?php esc_html_e( 'Manage Coupons', 'wp-user-frontend' ); ?></a></h3>
58
 
59
  <div class="col feature-wrap">
60
  <div class="feature-image">
61
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/premium/content-restrictions.gif" alt="<?php esc_html_e( 'Content Restrictions', 'wp-user-frontend' ); ?>">
62
  </div>
63
  <div class="feature-details">
64
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/content-restriction/content-restriction/" target="_blank"><?php esc_html_e( 'Content Restrictions', 'wp-user-frontend' ); ?></a></h3>
68
 
69
  <div class="col feature-wrap">
70
  <div class="feature-image">
71
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/premium/conditional-logic.gif" alt="<?php esc_html_e( 'Conditional Logic', 'wp-user-frontend' ); ?>">
72
  </div>
73
  <div class="feature-details">
74
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/how-to-use-conditional-logic/" target="_blank"><?php esc_html_e( 'Conditional Logic', 'wp-user-frontend' ); ?></a></h3>
78
 
79
  <div class="col feature-wrap">
80
  <div class="feature-image">
81
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/premium/multi-step.gif" alt="<?php esc_html_e( 'Multi-step Form', 'wp-user-frontend' ); ?>">
82
  </div>
83
  <div class="feature-details">
84
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/how-to-add-multi-step-form/" target="_blank"><?php esc_html_e( 'Multi-step Form', 'wp-user-frontend' ); ?></a></h3>
98
  <div class="headline-feature two-col">
99
  <div class="col module-wrap">
100
  <div class="module-image">
101
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/modules/Social-Media-Login.png" alt="<?php esc_html_e( 'BuddyPress Profile', 'wp-user-frontend' ); ?>">
102
  </div>
103
  <div class="module-details">
104
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/social-login-registration/" target="_blank"><?php esc_html_e( 'Social Login', 'wp-user-frontend' ); ?></a></h3>
108
 
109
  <div class="col module-wrap">
110
  <div class="module-image">
111
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/modules/wpuf-ul.png" alt="<?php esc_html_e( 'User Directory', 'wp-user-frontend' ); ?>">
112
  </div>
113
  <div class="module-details">
114
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/user-listing-profile/" target="_blank"><?php esc_html_e( 'User Directory', 'wp-user-frontend' ); ?></a></h3>
118
 
119
  <div class="col module-wrap">
120
  <div class="module-image">
121
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/modules/wpuf-buddypress.png" alt="<?php esc_html_e( 'BuddyPress Profile', 'wp-user-frontend' ); ?>">
122
  </div>
123
  <div class="module-details">
124
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/buddypress-profile-integration/" target="_blank"><?php esc_html_e( 'BuddyPress Profile', 'wp-user-frontend' ); ?></a></h3>
128
 
129
  <div class="col module-wrap">
130
  <div class="module-image">
131
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/modules/wpuf-ua.png" alt="<?php esc_html_e( 'MailChimp Integration', 'wp-user-frontend' ); ?>">
132
  </div>
133
  <div class="module-details">
134
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/user-analytics/" target="_blank"><?php esc_html_e( 'User Analytics', 'wp-user-frontend' ); ?></a></h3>
138
 
139
  <div class="col module-wrap">
140
  <div class="module-image">
141
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/modules/wpuf-pmpro.png" alt="<?php esc_html_e( 'Paid Membership Pro', 'wp-user-frontend' ); ?>">
142
  </div>
143
  <div class="module-details">
144
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/install-and-configure-pmpro-add-on-for-wpuf/" target="_blank"><?php esc_html_e( 'Paid Membership Pro', 'wp-user-frontend' ); ?></a></h3>
148
 
149
  <div class="col module-wrap">
150
  <div class="module-image">
151
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/modules/wpuf-stripe.png" alt="<?php esc_html_e( 'Stripe Payment', 'wp-user-frontend' ); ?>">
152
  </div>
153
  <div class="module-details">
154
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/stripe/" target="_blank"><?php esc_html_e( 'Stripe Payment', 'wp-user-frontend' ); ?></a></h3>
158
 
159
  <div class="col module-wrap">
160
  <div class="module-image">
161
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/modules/wpuf-mailpoet.png" alt="<?php esc_html_e( 'Mailpoet', 'wp-user-frontend' ); ?>">
162
  </div>
163
  <div class="module-details">
164
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/mailpoet/" target="_blank"><?php esc_html_e( 'Mailpoet', 'wp-user-frontend' ); ?></a></h3>
168
 
169
  <div class="col module-wrap">
170
  <div class="module-image">
171
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/modules/wpuf-mailchimp.png" alt="<?php esc_html_e( 'MailChimp Integration', 'wp-user-frontend' ); ?>">
172
  </div>
173
  <div class="module-details">
174
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/add-users-to-mailchimp-subscribers-list-upon-registration-from-frontend/" target="_blank"><?php esc_html_e( 'MailChimp', 'wp-user-frontend' ); ?></a></h3>
178
 
179
  <div class="col module-wrap">
180
  <div class="module-image">
181
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/modules/wpuf-sms.png" alt="<?php esc_html_e( 'SMS Notification', 'wp-user-frontend' ); ?>">
182
  </div>
183
  <div class="module-details">
184
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/sms-notification/" target="_blank"><?php esc_html_e( 'SMS Notification', 'wp-user-frontend' ); ?></a></h3>
188
 
189
  <div class="col module-wrap">
190
  <div class="module-image">
191
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/modules/wpuf-comment.png" alt="<?php esc_html_e( 'SMS Notification', 'wp-user-frontend' ); ?>">
192
  </div>
193
  <div class="module-details">
194
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/frontend-comment-manager/" target="_blank"><?php esc_html_e( 'Comment Manager', 'wp-user-frontend' ); ?></a></h3>
198
 
199
  <div class="col module-wrap">
200
  <div class="module-image">
201
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/modules/wpuf-qr.png" alt="<?php esc_html_e( 'SMS Notification', 'wp-user-frontend' ); ?>">
202
  </div>
203
  <div class="module-details">
204
  <h3><a href="https://wedevs.com/docs/wp-user-frontend-pro/modules/qr-code/" target="_blank"><?php esc_html_e( 'QR Code Generator', 'wp-user-frontend' ); ?></a></h3>
208
 
209
  <div class="col module-wrap">
210
  <div class="module-image">
211
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/modules/more.png" alt="<?php esc_html_e( 'More...', 'wp-user-frontend' ); ?>">
212
  </div>
213
  <div class="module-details">
214
  <h3><?php esc_html_e( 'More...', 'wp-user-frontend' ); ?></h3>
admin/promotion.php CHANGED
@@ -42,7 +42,7 @@ class WPUF_Admin_Promotion {
42
  ?>
43
  <div class="notice notice-success is-dismissible" id="wpuf-bfcm-notice">
44
  <div class="logo">
45
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ) . '/images/promo-logo.png'; ?>" alt="WPUF">
46
  </div>
47
  <div class="content">
48
  <p>Biggest Sale of the year on this</p>
@@ -52,7 +52,7 @@ class WPUF_Admin_Promotion {
52
  </div>
53
  <div class="call-to-action">
54
  <a target="_blank" href="https://wedevs.com/wp-user-frontend-pro/pricing?utm_campaign=black_friday_&_cyber_monday&utm_medium=banner&utm_source=plugin_dashboard">
55
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ) . '/images/promo-btn.png'; ?>" alt="Btn">
56
  </a>
57
  <p>
58
  <span class="highlight-green2">Coupon: </span>
@@ -181,10 +181,10 @@ class WPUF_Admin_Promotion {
181
  } ?>
182
  <div id="wpuf-review-notice" class="wpuf-review-notice">
183
  <div class="wpuf-review-thumbnail">
184
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ) . '/images/icon-128x128.png'; ?>" alt="">
185
  </div>
186
  <div class="wpuf-review-text">
187
- <h3><?php echo wp_kses_post( 'Enjoying <strong>WP User Frontend</strong>?', 'wp-user-frontend' ); ?></h3>
188
  <p><?php echo wp_kses_post( 'Hope that you had a neat and snappy experience with the tool. Would you please show us a little love by rating us in the <a href="https://wordpress.org/support/plugin/wp-user-frontend/reviews/#new-post" target="_blank"><strong>WordPress.org</strong></a>?', 'wp-user-frontend' ); ?></p>
189
 
190
  <ul class="wpuf-review-ul">
42
  ?>
43
  <div class="notice notice-success is-dismissible" id="wpuf-bfcm-notice">
44
  <div class="logo">
45
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ) . '/images/promo-logo.png'; ?>" alt="WPUF">
46
  </div>
47
  <div class="content">
48
  <p>Biggest Sale of the year on this</p>
52
  </div>
53
  <div class="call-to-action">
54
  <a target="_blank" href="https://wedevs.com/wp-user-frontend-pro/pricing?utm_campaign=black_friday_&_cyber_monday&utm_medium=banner&utm_source=plugin_dashboard">
55
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ) . '/images/promo-btn.png'; ?>" alt="Btn">
56
  </a>
57
  <p>
58
  <span class="highlight-green2">Coupon: </span>
181
  } ?>
182
  <div id="wpuf-review-notice" class="wpuf-review-notice">
183
  <div class="wpuf-review-thumbnail">
184
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ) . '/images/icon-128x128.png'; ?>" alt="">
185
  </div>
186
  <div class="wpuf-review-text">
187
+ <h3><?php echo wp_kses_post( 'Enjoying WP User Frontend?', 'wp-user-frontend' ); ?></h3>
188
  <p><?php echo wp_kses_post( 'Hope that you had a neat and snappy experience with the tool. Would you please show us a little love by rating us in the <a href="https://wordpress.org/support/plugin/wp-user-frontend/reviews/#new-post" target="_blank"><strong>WordPress.org</strong></a>?', 'wp-user-frontend' ); ?></p>
189
 
190
  <ul class="wpuf-review-ul">
admin/weforms.php DELETED
@@ -1,56 +0,0 @@
1
- <div class="wrap about-wrap">
2
- <h1><?php esc_html_e( 'weForms', 'wp-user-frontend' ); ?></h1>
3
-
4
- <p class="about-text"><?php esc_html_e( 'The Easiest &amp; Fastest Contact Form Plugin on WordPress', 'wp-user-frontend' ); ?></p>
5
-
6
- <hr>
7
- <p><?php echo wp_kses_post( __( '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.', 'wp-user-frontend' ) ); ?>
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 esc_html_e( 'Install Now', 'wp-user-frontend' ); ?></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="esc_url(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 esc_html( 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 esc_url( 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/js-templates/form-components.php CHANGED
@@ -407,7 +407,7 @@
407
  </li>
408
  </ul>
409
 
410
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
411
  </div>
412
  </script>
413
 
@@ -469,7 +469,7 @@
469
  :value="field.default"
470
  :size="field.size"
471
  >
472
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
473
  </div>
474
  </script>
475
 
@@ -492,7 +492,7 @@
492
  >{{ label }}</option>
493
  </select>
494
 
495
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
496
  </div>
497
  </script>
498
 
@@ -505,7 +505,7 @@
505
  :value="field.default"
506
  :size="field.size"
507
  >
508
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
509
  </div>
510
  </script>
511
 
@@ -524,7 +524,7 @@
524
  </div>
525
  </div>
526
 
527
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
528
  </div>
529
  </script>
530
 
@@ -595,7 +595,7 @@
595
  </div>
596
  </div>
597
 
598
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
599
  </div>
600
  </script>
601
 
@@ -615,7 +615,7 @@
615
  >{{ label }}</option>
616
  </select>
617
 
618
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
619
  </div>
620
  </script>
621
 
@@ -639,7 +639,7 @@
639
 
640
  <text-editor v-if="'no' !== field.rich" :rich="field.rich" :default_text="field.default"></text-editor>
641
 
642
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
643
  </div>
644
  </script>
645
 
@@ -651,7 +651,7 @@
651
  :rows="field.rows"
652
  :cols="field.cols"
653
  >{{ field.default }}</textarea>
654
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
655
  </div>
656
  </script>
657
 
@@ -665,7 +665,7 @@
665
  :size="field.size"
666
  >
667
 
668
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
669
  </div>
670
  </script>
671
 
@@ -678,7 +678,7 @@
678
  :value="field.default"
679
  :size="field.size"
680
  >
681
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
682
  </div>
683
  </script>
684
 
@@ -697,7 +697,7 @@
697
  </li>
698
  </ul>
699
 
700
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
701
  </div>
702
  </script>
703
 
@@ -757,7 +757,7 @@
757
  <div v-html="get_term_checklist()"></div>
758
  </div>
759
  </div>
760
-
761
 
762
  <input
763
  v-if="'text' === field.type"
@@ -768,7 +768,7 @@
768
  autocomplete="off"
769
  >
770
 
771
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
772
  </div>
773
  </script>
774
 
@@ -781,7 +781,7 @@
781
  :value="field.default"
782
  :size="field.size"
783
  >
784
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
785
  </div>
786
  </script>
787
 
@@ -798,7 +798,7 @@
798
 
799
  <text-editor v-if="'no' !== field.rich" :default_text="field.default" :rich="field.rich"></text-editor>
800
 
801
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
802
  </div>
803
  </script>
804
 
@@ -811,7 +811,7 @@
811
  :value="field.default"
812
  :size="field.size"
813
  >
814
- <span v-if="field.help" class="wpuf-help">{{ field.help }}</span>
815
  </div>
816
  </script>
817
 
407
  </li>
408
  </ul>
409
 
410
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
411
  </div>
412
  </script>
413
 
469
  :value="field.default"
470
  :size="field.size"
471
  >
472
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
473
  </div>
474
  </script>
475
 
492
  >{{ label }}</option>
493
  </select>
494
 
495
+ <span v-if="field.help" class="wpuf-help" v-html="field.help"> </span>
496
  </div>
497
  </script>
498
 
505
  :value="field.default"
506
  :size="field.size"
507
  >
508
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
509
  </div>
510
  </script>
511
 
524
  </div>
525
  </div>
526
 
527
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
528
  </div>
529
  </script>
530
 
595
  </div>
596
  </div>
597
 
598
+ <span v-if="field.help" class="wpuf-help" v-html="field.help"/>
599
  </div>
600
  </script>
601
 
615
  >{{ label }}</option>
616
  </select>
617
 
618
+ <span v-if="field.help" class="wpuf-help" v-html="field.help"></span>
619
  </div>
620
  </script>
621
 
639
 
640
  <text-editor v-if="'no' !== field.rich" :rich="field.rich" :default_text="field.default"></text-editor>
641
 
642
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
643
  </div>
644
  </script>
645
 
651
  :rows="field.rows"
652
  :cols="field.cols"
653
  >{{ field.default }}</textarea>
654
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" ></span>
655
  </div>
656
  </script>
657
 
665
  :size="field.size"
666
  >
667
 
668
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
669
  </div>
670
  </script>
671
 
678
  :value="field.default"
679
  :size="field.size"
680
  >
681
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
682
  </div>
683
  </script>
684
 
697
  </li>
698
  </ul>
699
 
700
+ <span v-if="field.help" class="wpuf-help" v-html="field.help"/>
701
  </div>
702
  </script>
703
 
757
  <div v-html="get_term_checklist()"></div>
758
  </div>
759
  </div>
760
+
761
 
762
  <input
763
  v-if="'text' === field.type"
768
  autocomplete="off"
769
  >
770
 
771
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
772
  </div>
773
  </script>
774
 
781
  :value="field.default"
782
  :size="field.size"
783
  >
784
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
785
  </div>
786
  </script>
787
 
798
 
799
  <text-editor v-if="'no' !== field.rich" :default_text="field.default" :rich="field.rich"></text-editor>
800
 
801
+ <span v-if="field.help" class="wpuf-help" v-html="field.help" />
802
  </div>
803
  </script>
804
 
811
  :value="field.default"
812
  :size="field.size"
813
  >
814
+ <span v-if="field.help" class="wpuf-help" v-html="field.help"/>
815
  </div>
816
  </script>
817
 
assets/js/frontend-form.js CHANGED
@@ -177,8 +177,8 @@
177
  o.change_fieldset( --step_number,progressbar_type );
178
  }
179
 
180
- var formDiv = document.querySelector( "form.wpuf-form-add" );
181
- var position = formDiv.offsetTop;
182
 
183
  // this changes the scrolling behavior to "smooth"
184
  window.scrollTo({
177
  o.change_fieldset( --step_number,progressbar_type );
178
  }
179
 
180
+ var formDiv = $( "form.wpuf-form-add" );
181
+ var position = formDiv.offset().top;
182
 
183
  // this changes the scrolling behavior to "smooth"
184
  window.scrollTo({
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();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_user_subscription_cancel"]').click(function(b){b.preventDefault(),swal({text:wpuf_frontend.cancelSubMsg,type:"warning",showCancelButton:!0,confirmButtonColor:"#d54e21",confirmButtonText:wpuf_frontend.delete_it,cancelButtonText:wpuf_frontend.cancel_it,confirmButtonClass:"btn btn-success",cancelButtonClass:"btn btn-danger"}).then(function(b){if(!b)return!1;a("#wpuf_cancel_subscription").submit()})})},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(c){var d=this,e=0,f=a(':hidden[name="wpuf_multistep_type"]').val();if(null!=f){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"==f&&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 g=a(".wpuf-multistep-progressbar"),h=a(".wpuf-progress-percentage");a(".wpuf-multistep-progressbar").progressbar({change:function(){h.text(g.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(e,f),a("fieldset .wpuf-multistep-prev-btn, fieldset .wpuf-multistep-next-btn").click(function(g){if(a(this).hasClass("wpuf-multistep-next-btn")){0!=d.formStepCheck("",a(this).closest("fieldset"))&&c.change_fieldset(++e,f)}else a(this).hasClass("wpuf-multistep-prev-btn")&&c.change_fieldset(--e,f);var h=document.querySelector("form.wpuf-form-add"),i=h.offsetTop;return b.scrollTo({top:i-32,behavior:"smooth"}),!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(),swal({html:c.error,type:"warning",showCancelButton:!1,confirmButtonColor:"#d54e21",confirmButtonText:"OK",cancelButtonClass:"btn btn-danger"}),e.removeAttr("disabled")}e.removeClass("button-primary-disabled"),d.find("span.wpuf-loading").remove()}))},validateForm:function(b){var c=!1;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)))}});var d=b.find('[data-required="yes"][name="google_map"]');if(d){","==a(d).val()&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type))}if(c)return WP_User_Frontend.addErrorNotice(b,"end"),!1;var e=b.serialize(),f=[];return a(".wpuf-rich-validation",b).each(function(b,c){var c=a(c),d=c.data("id"),e=c.data("name"),g=a.trim(tinyMCE.get(d).getContent());f.push(e+"="+encodeURIComponent(g))}),e=e+"&"+f.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":case"mismatch":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(),a("[id^=wpuf-avatar]").css("display","")})},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){-1!==a.inArray(b.keyCode,[46,8,9,27,13,110,190,189])||65==b.keyCode&&!0===b.ctrlKey||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()}),a(function(){a('input[name="first_name"], input[name="last_name"]').on("change keyup",function(){var b,c=a.makeArray(a('input[name="first_name"], input[name="last_name"]').map(function(){if(b=a(this).val())return b})).join(" ");a('input[name="display_name"]').val(c)})}),a(function(a){a('.wpuf-form-add input[name="dokan_store_name"]').on("focusout",function(){var b=a(this).val().toLowerCase().replace(/-+/g,"").replace(/\s+/g,"-").replace(/[^a-z0-9-]/g,"");a('input[name="shopurl"]').val(b),a("#url-alart").text(b),a('input[name="shopurl"]').focus()}),a('.wpuf-form-add input[name="shopurl"]').keydown(function(b){a(this).val();-1!==a.inArray(b.keyCode,[46,8,9,27,13,91,109,110,173,189,190])||65==b.keyCode&&!0===b.ctrlKey||b.keyCode>=35&&b.keyCode<=39||(b.shiftKey||(b.keyCode<65||b.keyCode>90)&&(b.keyCode<48||b.keyCode>57))&&(b.keyCode<96||b.keyCode>105)&&b.preventDefault()}),a('.wpuf-form-add input[name="shopurl"]').keyup(function(b){a("#url-alart").text(a(this).val())}),a('.wpuf-form-add input[name="shopurl"]').on("focusout",function(){var b=a(this),c={action:"shop_url",url_slug:b.val(),_nonce:dokan.nonce};""!==b.val()&&a.post(dokan.ajaxurl,c,function(b){0==b?(a("#url-alart").removeClass("text-success").addClass("text-danger"),a("#url-alart-mgs").removeClass("text-success").addClass("text-danger").text(dokan.seller.notAvailable)):(a("#url-alart").removeClass("text-danger").addClass("text-success"),a("#url-alart-mgs").removeClass("text-danger").addClass("text-success").text(dokan.seller.available))})}),a(".wpuf-form-add #wpuf-map-add-location").attr("name","find_address")})}(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_user_subscription_cancel"]').click(function(b){b.preventDefault(),swal({text:wpuf_frontend.cancelSubMsg,type:"warning",showCancelButton:!0,confirmButtonColor:"#d54e21",confirmButtonText:wpuf_frontend.delete_it,cancelButtonText:wpuf_frontend.cancel_it,confirmButtonClass:"btn btn-success",cancelButtonClass:"btn btn-danger"}).then(function(b){if(!b)return!1;a("#wpuf_cancel_subscription").submit()})})},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(c){var d=this,e=0,f=a(':hidden[name="wpuf_multistep_type"]').val();if(null!=f){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"==f&&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 g=a(".wpuf-multistep-progressbar"),h=a(".wpuf-progress-percentage");a(".wpuf-multistep-progressbar").progressbar({change:function(){h.text(g.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(e,f),a("fieldset .wpuf-multistep-prev-btn, fieldset .wpuf-multistep-next-btn").click(function(g){if(a(this).hasClass("wpuf-multistep-next-btn")){0!=d.formStepCheck("",a(this).closest("fieldset"))&&c.change_fieldset(++e,f)}else a(this).hasClass("wpuf-multistep-prev-btn")&&c.change_fieldset(--e,f);var h=a("form.wpuf-form-add"),i=h.offset().top;return b.scrollTo({top:i-32,behavior:"smooth"}),!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(),swal({html:c.error,type:"warning",showCancelButton:!1,confirmButtonColor:"#d54e21",confirmButtonText:"OK",cancelButtonClass:"btn btn-danger"}),e.removeAttr("disabled")}e.removeClass("button-primary-disabled"),d.find("span.wpuf-loading").remove()}))},validateForm:function(b){var c=!1;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)))}});var d=b.find('[data-required="yes"][name="google_map"]');if(d){","==a(d).val()&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type))}if(c)return WP_User_Frontend.addErrorNotice(b,"end"),!1;var e=b.serialize(),f=[];return a(".wpuf-rich-validation",b).each(function(b,c){var c=a(c),d=c.data("id"),e=c.data("name"),g=a.trim(tinyMCE.get(d).getContent());f.push(e+"="+encodeURIComponent(g))}),e=e+"&"+f.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":case"mismatch":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(),a("[id^=wpuf-avatar]").css("display","")})},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){-1!==a.inArray(b.keyCode,[46,8,9,27,13,110,190,189])||65==b.keyCode&&!0===b.ctrlKey||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()}),a(function(){a('input[name="first_name"], input[name="last_name"]').on("change keyup",function(){var b,c=a.makeArray(a('input[name="first_name"], input[name="last_name"]').map(function(){if(b=a(this).val())return b})).join(" ");a('input[name="display_name"]').val(c)})}),a(function(a){a('.wpuf-form-add input[name="dokan_store_name"]').on("focusout",function(){var b=a(this).val().toLowerCase().replace(/-+/g,"").replace(/\s+/g,"-").replace(/[^a-z0-9-]/g,"");a('input[name="shopurl"]').val(b),a("#url-alart").text(b),a('input[name="shopurl"]').focus()}),a('.wpuf-form-add input[name="shopurl"]').keydown(function(b){a(this).val();-1!==a.inArray(b.keyCode,[46,8,9,27,13,91,109,110,173,189,190])||65==b.keyCode&&!0===b.ctrlKey||b.keyCode>=35&&b.keyCode<=39||(b.shiftKey||(b.keyCode<65||b.keyCode>90)&&(b.keyCode<48||b.keyCode>57))&&(b.keyCode<96||b.keyCode>105)&&b.preventDefault()}),a('.wpuf-form-add input[name="shopurl"]').keyup(function(b){a("#url-alart").text(a(this).val())}),a('.wpuf-form-add input[name="shopurl"]').on("focusout",function(){var b=a(this),c={action:"shop_url",url_slug:b.val(),_nonce:dokan.nonce};""!==b.val()&&a.post(dokan.ajaxurl,c,function(b){0==b?(a("#url-alart").removeClass("text-success").addClass("text-danger"),a("#url-alart-mgs").removeClass("text-success").addClass("text-danger").text(dokan.seller.notAvailable)):(a("#url-alart").removeClass("text-danger").addClass("text-success"),a("#url-alart-mgs").removeClass("text-danger").addClass("text-success").text(dokan.seller.available))})}),a(".wpuf-form-add #wpuf-map-add-location").attr("name","find_address")})}(jQuery,window);
assets/js/upload.js CHANGED
@@ -184,6 +184,10 @@
184
  }
185
 
186
  if ( FileProgress === uploaded ) {
 
 
 
 
187
  $(".wpuf-submit-button").removeAttr("disabled");
188
  }
189
  },
184
  }
185
 
186
  if ( FileProgress === uploaded ) {
187
+ if ( typeof grecaptcha !== 'undefined' && !grecaptcha.getResponse().length ) {
188
+ return;
189
+ }
190
+
191
  $(".wpuf-submit-button").removeAttr("disabled");
192
  }
193
  },
assets/js/upload.min.js CHANGED
@@ -1 +1 @@
1
- !function(a){window.WPUF_Uploader=function(b,c,d,e,f,g){if(this.removed_files=[],this.container=c,this.browse_button=b,this.max=d||1,this.count=a("#"+c).find(".wpuf-attachment-list > li").length,this.perFileCount=0,this.UploadedFiles=0,a("#"+b).length)return a("ul.wpuf-attachment-list").sortable({placeholder:"highlight"}),a("ul.wpuf-attachment-list").disableSelection(),this.uploader=new plupload.Uploader({runtimes:"html5,html4",browse_button:b,container:c,multipart:!0,multipart_params:{action:"wpuf_upload_file",form_id:a("#"+b).data("form_id")},max_file_count:2,multiple_queues:!1,multi_selection:"wpuf-avatar-pickfiles"!=b&&"wpuf-featured_image-pickfiles"!=b,urlstream_upload:!0,file_data_name:"wpuf_file",max_file_size:g+"kb",url:wpuf_frontend_upload.plupload.url+"&type="+e,flash_swf_url:wpuf_frontend_upload.flash_swf_url,filters:[{title:"Allowed Files",extensions:f}]}),this.uploader.bind("Init",a.proxy(this,"init")),this.uploader.bind("FilesAdded",a.proxy(this,"added")),this.uploader.bind("QueueChanged",a.proxy(this,"upload")),this.uploader.bind("UploadProgress",a.proxy(this,"progress")),this.uploader.bind("Error",a.proxy(this,"error")),this.uploader.bind("FileUploaded",a.proxy(this,"uploaded")),this.uploader.init(),a("#"+c).on("click","a.attachment-delete",a.proxy(this.removeAttachment,this)),this.uploader},WPUF_Uploader.prototype={init:function(b,c){this.showHide(),a("#"+this.container).prepend('<div class="wpuf-file-warning"></div>')},showHide:function(){if(this.count>=this.max)return this.count,this.max,a("#"+this.container+" .wpuf-file-warning").html(wpuf_frontend_upload.warning),void a("#"+this.container).find(".file-selector").hide();a("#"+this.container+" .wpuf-file-warning").html(""),a("#"+this.container).find(".file-selector").show()},added:function(b,c){var d=a("#"+this.container).find(".wpuf-attachment-upload-filelist");this.showHide(),a.each(c,function(b,c){a(".wpuf-submit-button").attr("disabled","disabled"),d.append('<div class="upload-item" id="'+c.id+'"><div class="progress progress-striped active"><div class="bar"></div></div><div class="filename original">'+c.name+" ("+plupload.formatSize(c.size)+") <b></b></div></div>")}),b.refresh(),b.start()},upload:function(a){this.count=a.files.length-this.removed_files.length,this.showHide()},progress:function(b,c){var d=a("#"+c.id);a(".bar",d).css({width:c.percent+"%"}),a(".percent",d).html(c.percent+"%")},error:function(b,c){a("#"+this.container).find("#"+c.file.id).remove();var d="";switch(c.code){case-600:d=wpuf_frontend_upload.plupload.size_error;break;case-601:d=wpuf_frontend_upload.plupload.type_error;break;default:d="Error #"+c.code+": "+c.message}alert(d),this.count-=1,this.showHide(),this.uploader.refresh()},uploaded:function(b,c,d){var e=this;if(a("#"+c.id+" b").html("100%"),a("#"+c.id).remove(),"error"!==d.response){this.perFileCount++,this.UploadedFiles++;var f=a("#"+this.container).find(".wpuf-attachment-list");if(f.append(d.response),this.perFileCount>this.max){var g=a(".wpuf-image-wrap:last a.attachment-delete",f).data("attach_id");e.removeExtraAttachment(g),a(".wpuf-image-wrap",f).last().remove(),this.perFileCount--}}else alert(d.error),this.count-=1,this.showHide();var h=this.UploadedFiles,i=b.files.length;a("ul.wpuf-attachment-list > li").length>=this.max&&a("#"+this.container).find(".file-selector").hide(),i===h&&a(".wpuf-submit-button").removeAttr("disabled")},removeAttachment:function(b){b.preventDefault();var c=this,d=a(b.currentTarget);swal({text:wpuf_frontend_upload.confirmMsg,type:"warning",showCancelButton:!0,confirmButtonColor:"#d54e21",confirmButtonText:wpuf_frontend_upload.delete_it,cancelButtonText:wpuf_frontend_upload.cancel_it,confirmButtonClass:"btn btn-success",cancelButtonClass:"btn btn-danger"}).then(function(){var a={attach_id:d.data("attach_id"),nonce:wpuf_frontend_upload.nonce,action:"wpuf_file_del"};c.removed_files.push(a),jQuery("#del_attach").val(d.data("attach_id")),jQuery.post(wpuf_frontend_upload.ajaxurl,a,function(){c.perFileCount--,d.parent().parent().remove(),c.count-=1,c.showHide(),c.uploader.refresh()})})},removeExtraAttachment:function(a){var b=this,c={attach_id:a,nonce:wpuf_frontend_upload.nonce,action:"wpuf_file_del"};this.removed_files.push(c),jQuery.post(wpuf_frontend_upload.ajaxurl,c,function(){b.count-=1,b.showHide(),b.uploader.refresh()})}}}(jQuery);
1
+ !function(a){window.WPUF_Uploader=function(b,c,d,e,f,g){if(this.removed_files=[],this.container=c,this.browse_button=b,this.max=d||1,this.count=a("#"+c).find(".wpuf-attachment-list > li").length,this.perFileCount=0,this.UploadedFiles=0,a("#"+b).length)return a("ul.wpuf-attachment-list").sortable({placeholder:"highlight"}),a("ul.wpuf-attachment-list").disableSelection(),this.uploader=new plupload.Uploader({runtimes:"html5,html4",browse_button:b,container:c,multipart:!0,multipart_params:{action:"wpuf_upload_file",form_id:a("#"+b).data("form_id")},max_file_count:2,multiple_queues:!1,multi_selection:"wpuf-avatar-pickfiles"!=b&&"wpuf-featured_image-pickfiles"!=b,urlstream_upload:!0,file_data_name:"wpuf_file",max_file_size:g+"kb",url:wpuf_frontend_upload.plupload.url+"&type="+e,flash_swf_url:wpuf_frontend_upload.flash_swf_url,filters:[{title:"Allowed Files",extensions:f}]}),this.uploader.bind("Init",a.proxy(this,"init")),this.uploader.bind("FilesAdded",a.proxy(this,"added")),this.uploader.bind("QueueChanged",a.proxy(this,"upload")),this.uploader.bind("UploadProgress",a.proxy(this,"progress")),this.uploader.bind("Error",a.proxy(this,"error")),this.uploader.bind("FileUploaded",a.proxy(this,"uploaded")),this.uploader.init(),a("#"+c).on("click","a.attachment-delete",a.proxy(this.removeAttachment,this)),this.uploader},WPUF_Uploader.prototype={init:function(b,c){this.showHide(),a("#"+this.container).prepend('<div class="wpuf-file-warning"></div>')},showHide:function(){if(this.count>=this.max)return this.count,this.max,a("#"+this.container+" .wpuf-file-warning").html(wpuf_frontend_upload.warning),void a("#"+this.container).find(".file-selector").hide();a("#"+this.container+" .wpuf-file-warning").html(""),a("#"+this.container).find(".file-selector").show()},added:function(b,c){var d=a("#"+this.container).find(".wpuf-attachment-upload-filelist");this.showHide(),a.each(c,function(b,c){a(".wpuf-submit-button").attr("disabled","disabled"),d.append('<div class="upload-item" id="'+c.id+'"><div class="progress progress-striped active"><div class="bar"></div></div><div class="filename original">'+c.name+" ("+plupload.formatSize(c.size)+") <b></b></div></div>")}),b.refresh(),b.start()},upload:function(a){this.count=a.files.length-this.removed_files.length,this.showHide()},progress:function(b,c){var d=a("#"+c.id);a(".bar",d).css({width:c.percent+"%"}),a(".percent",d).html(c.percent+"%")},error:function(b,c){a("#"+this.container).find("#"+c.file.id).remove();var d="";switch(c.code){case-600:d=wpuf_frontend_upload.plupload.size_error;break;case-601:d=wpuf_frontend_upload.plupload.type_error;break;default:d="Error #"+c.code+": "+c.message}alert(d),this.count-=1,this.showHide(),this.uploader.refresh()},uploaded:function(b,c,d){var e=this;if(a("#"+c.id+" b").html("100%"),a("#"+c.id).remove(),"error"!==d.response){this.perFileCount++,this.UploadedFiles++;var f=a("#"+this.container).find(".wpuf-attachment-list");if(f.append(d.response),this.perFileCount>this.max){var g=a(".wpuf-image-wrap:last a.attachment-delete",f).data("attach_id");e.removeExtraAttachment(g),a(".wpuf-image-wrap",f).last().remove(),this.perFileCount--}}else alert(d.error),this.count-=1,this.showHide();var h=this.UploadedFiles,i=b.files.length;if(a("ul.wpuf-attachment-list > li").length>=this.max&&a("#"+this.container).find(".file-selector").hide(),i===h){if("undefined"!=typeof grecaptcha&&!grecaptcha.getResponse().length)return;a(".wpuf-submit-button").removeAttr("disabled")}},removeAttachment:function(b){b.preventDefault();var c=this,d=a(b.currentTarget);swal({text:wpuf_frontend_upload.confirmMsg,type:"warning",showCancelButton:!0,confirmButtonColor:"#d54e21",confirmButtonText:wpuf_frontend_upload.delete_it,cancelButtonText:wpuf_frontend_upload.cancel_it,confirmButtonClass:"btn btn-success",cancelButtonClass:"btn btn-danger"}).then(function(){var a={attach_id:d.data("attach_id"),nonce:wpuf_frontend_upload.nonce,action:"wpuf_file_del"};c.removed_files.push(a),jQuery("#del_attach").val(d.data("attach_id")),jQuery.post(wpuf_frontend_upload.ajaxurl,a,function(){c.perFileCount--,d.parent().parent().remove(),c.count-=1,c.showHide(),c.uploader.refresh()})})},removeExtraAttachment:function(a){var b=this,c={attach_id:a,nonce:wpuf_frontend_upload.nonce,action:"wpuf_file_del"};this.removed_files.push(c),jQuery.post(wpuf_frontend_upload.ajaxurl,c,function(){b.count-=1,b.showHide(),b.uploader.refresh()})}}}(jQuery);
assets/js/wpuf-form-builder-components.js CHANGED
@@ -1109,16 +1109,23 @@ Vue.component('form-column_field', {
1109
  });
1110
 
1111
  $(self.$el).find(".wpuf-column-field-inner-columns .wpuf-column-inner-fields").mouseup(function() {
1112
- var columnOneWidth = $(columnField).find(".column-1").width(),
1113
- columnTwoWidth = $(columnField).find(".column-2").width(),
1114
- colOneWidth = (100*columnOneWidth) / total_width,
1115
- colTwoWidth = 100 - colOneWidth,
1116
- colThreeWidth = 0;
1117
-
1118
- if (columnsNumber === 3) {
1119
- colTwoWidth = (100*columnTwoWidth) / total_width;
1120
- colThreeWidth = 100 - (colOneWidth + colTwoWidth);
1121
- }
 
 
 
 
 
 
 
1122
 
1123
  self.field.inner_columns_size['column-1'] = colOneWidth + '%';
1124
  self.field.inner_columns_size['column-2'] = colTwoWidth + '%';
1109
  });
1110
 
1111
  $(self.$el).find(".wpuf-column-field-inner-columns .wpuf-column-inner-fields").mouseup(function() {
1112
+ let colOneWidth = 0,
1113
+ colTwoWidth = 0,
1114
+ colThreeWidth = 0;
1115
+
1116
+ if (columnsNumber === 3) {
1117
+ colOneWidth = 100 / columnsNumber;
1118
+ colTwoWidth = 100 / columnsNumber;
1119
+ colThreeWidth = 100 / columnsNumber;
1120
+ } else if (columnsNumber === 2) {
1121
+ colOneWidth = 100 / columnsNumber;
1122
+ colTwoWidth = 100 / columnsNumber;
1123
+ colThreeWidth = 0;
1124
+ } else {
1125
+ colOneWidth = $(columnField).find(".column-1").width();
1126
+ colTwoWidth = $(columnField).find(".column-2").width();
1127
+ colThreeWidth = 0;
1128
+ }
1129
 
1130
  self.field.inner_columns_size['column-1'] = colOneWidth + '%';
1131
  self.field.inner_columns_size['column-2'] = colTwoWidth + '%';
assets/js/wpuf-form-builder-mixins.js CHANGED
@@ -111,6 +111,10 @@ Vue.mixin({
111
  return true;
112
  }
113
 
 
 
 
 
114
  // check if the single instance field exist in column fields
115
  if (self.$store.state.form_fields[i].template === 'column_field') {
116
  var innerColumnFields = self.$store.state.form_fields[i].inner_fields;
@@ -135,14 +139,13 @@ Vue.mixin({
135
  },
136
 
137
  isSingleInstance: function(field_name) {
138
- var singleInstance = ['post_title', 'post_content', 'post_excerpt', 'featured_image',
139
- 'user_login', 'first_name', 'last_name', 'nickname', 'user_email', 'user_url',
140
- 'user_bio', 'password', 'user_avatar', 'taxonomy'];
141
 
142
- if ( $.inArray(field_name, singleInstance) >= 0 ) {
143
- return true;
 
 
144
  }
145
-
146
  return false;
147
  }
148
  }
111
  return true;
112
  }
113
 
114
+ if (self.$store.state.form_fields[i].name === field_name) {
115
+ return true;
116
+ }
117
+
118
  // check if the single instance field exist in column fields
119
  if (self.$store.state.form_fields[i].template === 'column_field') {
120
  var innerColumnFields = self.$store.state.form_fields[i].inner_fields;
139
  },
140
 
141
  isSingleInstance: function(field_name) {
142
+ let singleInstance = wpuf_single_objects;
 
 
143
 
144
+ for( let instance of singleInstance ) {
145
+ if ( field_name === instance ) {
146
+ return true;
147
+ }
148
  }
 
149
  return false;
150
  }
151
  }
assets/js/wpuf-form-builder.js CHANGED
@@ -835,4 +835,22 @@
835
  $('#builder-form-fields').toggleClass('show');
836
  });
837
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
838
  })(jQuery);
835
  $('#builder-form-fields').toggleClass('show');
836
  });
837
 
838
+ $('#wpuf_settings_posttype').on('change', function() {
839
+ event.preventDefault();
840
+ var post_type = $(this).val();
841
+ wp.ajax.send('wpuf_form_setting_post', {
842
+ data: {
843
+ post_type: post_type,
844
+ wpuf_form_builder_setting_nonce: wpuf_form_builder.nonce
845
+ },
846
+ success: function (response) {
847
+ $('.wpuf_settings_taxonomy').remove();
848
+ $('.wpuf-post-fromat').after(response.data);
849
+ },
850
+ error: function ( error ) {
851
+ console.log(error);
852
+ }
853
+ });
854
+ });
855
+
856
  })(jQuery);
class/frontend-account.php CHANGED
@@ -94,6 +94,8 @@ class WPUF_Frontend_Account {
94
  }
95
  }
96
 
 
 
97
  return $forms;
98
  }
99
 
@@ -108,6 +110,10 @@ class WPUF_Frontend_Account {
108
  $allow_post_submission = wpuf_get_option( 'allow_post_submission', 'wpuf_my_account', 'on' );
109
  $submission_label = wpuf_get_option( 'post_submission_label', 'wpuf_my_account', __( 'Submit Post', 'wp-user-frontend' ) );
110
 
 
 
 
 
111
  if ( $allow_post_submission == 'on' ) {
112
  $sections = array_merge( $sections, [ [ 'slug' => 'submit-post', 'label' => $submission_label ] ] );
113
  }
@@ -221,19 +227,19 @@ class WPUF_Frontend_Account {
221
  * @return void
222
  */
223
  public function subscription_section( $sections, $current_section ) {
224
- $wpuf_user = wpuf_get_user();
225
- $sub_id = $wpuf_user->subscription()->current_pack_id();
226
 
227
- if ( !$sub_id ) {
228
- echo wp_kses_post( __( '<p>You are not subscribed to any package yet.</p>', 'wp-user-frontend' ) );
229
 
230
  return;
231
  }
232
  $user_subscription = new WPUF_User_Subscription( $wpuf_user );
233
  $user_sub = $user_subscription->current_pack();
234
 
235
- if ( $user_sub['status'] != 'completed' && $user_sub['status'] != 'free' ) {
236
- esc_html_e( '<p>You may processed your payment, but the pack is not activated yet.</p>', 'wp-user-frontend' );
237
 
238
  return;
239
  }
94
  }
95
  }
96
 
97
+ wp_reset_postdata();
98
+
99
  return $forms;
100
  }
101
 
110
  $allow_post_submission = wpuf_get_option( 'allow_post_submission', 'wpuf_my_account', 'on' );
111
  $submission_label = wpuf_get_option( 'post_submission_label', 'wpuf_my_account', __( 'Submit Post', 'wp-user-frontend' ) );
112
 
113
+ if ( ! is_array( $sections ) ) {
114
+ $sections = (array) $sections;
115
+ }
116
+
117
  if ( $allow_post_submission == 'on' ) {
118
  $sections = array_merge( $sections, [ [ 'slug' => 'submit-post', 'label' => $submission_label ] ] );
119
  }
227
  * @return void
228
  */
229
  public function subscription_section( $sections, $current_section ) {
230
+ $wpuf_user = wpuf_get_user();
231
+ $sub_id = $wpuf_user->subscription()->current_pack_id();
232
 
233
+ if ( ! $sub_id ) {
234
+ echo wp_kses_post( __( '<p>You have not subscribed to any package yet.</p>', 'wp-user-frontend' ) );
235
 
236
  return;
237
  }
238
  $user_subscription = new WPUF_User_Subscription( $wpuf_user );
239
  $user_sub = $user_subscription->current_pack();
240
 
241
+ if ( ! is_wp_error( $user_sub ) && $user_sub['status'] != 'completed' && $user_sub['status'] != 'free' ) {
242
+ esc_html_e( '<p>You may have processed your payment, but the pack is not active yet.</p>', 'wp-user-frontend' );
243
 
244
  return;
245
  }
class/render-form.php CHANGED
@@ -849,8 +849,6 @@ class WPUF_Render_Form {
849
  * @return string
850
  */
851
  public function required_class( $attr ) {
852
- return;
853
-
854
  if ( $attr['required'] == 'yes' ) {
855
  echo ' required';
856
  }
@@ -1428,7 +1426,6 @@ class WPUF_Render_Form {
1428
  'exclude' => isset( $attr['exclude'] ) ? $attr['exclude'] : '',
1429
  'orderby' => $attr['orderby'],
1430
  'order' => $attr['order'],
1431
- 'name' => $attr['name'],
1432
  //'last_term_id' => isset( $attr['parent_cat'] ) ? $attr['parent_cat'] : '',
1433
  //'term_id' => $selected
1434
  ];
849
  * @return string
850
  */
851
  public function required_class( $attr ) {
 
 
852
  if ( $attr['required'] == 'yes' ) {
853
  echo ' required';
854
  }
1426
  'exclude' => isset( $attr['exclude'] ) ? $attr['exclude'] : '',
1427
  'orderby' => $attr['orderby'],
1428
  'order' => $attr['order'],
 
1429
  //'last_term_id' => isset( $attr['parent_cat'] ) ? $attr['parent_cat'] : '',
1430
  //'term_id' => $selected
1431
  ];
class/subscription.php CHANGED
@@ -773,7 +773,7 @@ class WPUF_Subscription {
773
  <?php echo wp_kses_post( __('<p><i>You have a subscription pack activated. </i></p>', 'wp-user-frontend' ) ); ?>
774
  <?php echo sprintf( wp_kses_post( __( '<p><i>Pack name: %s </i></p>', 'wp-user-frontend' ) ), esc_html( get_the_title( $current_pack['pack_id'] ) ) ); ?>
775
 
776
- <?php wp_kses_post('<p><i>' . __( 'To cancel the pack, press the following cancel button', 'wp-user-frontend' ) . '</i></p>', 'wp-user-frontend' ); ?>
777
 
778
  <form action="" id="wpuf_cancel_subscription" method="post">
779
  <?php wp_nonce_field( 'wpuf-sub-cancel' ); ?>
773
  <?php echo wp_kses_post( __('<p><i>You have a subscription pack activated. </i></p>', 'wp-user-frontend' ) ); ?>
774
  <?php echo sprintf( wp_kses_post( __( '<p><i>Pack name: %s </i></p>', 'wp-user-frontend' ) ), esc_html( get_the_title( $current_pack['pack_id'] ) ) ); ?>
775
 
776
+ <?php echo '<p><i>' . esc_html__( 'To cancel the pack, press the following cancel button', 'wp-user-frontend' ) . '</i></p>' ?>
777
 
778
  <form action="" id="wpuf_cancel_subscription" method="post">
779
  <?php wp_nonce_field( 'wpuf-sub-cancel' ); ?>
class/upload.php CHANGED
@@ -8,11 +8,11 @@
8
  class WPUF_Upload {
9
 
10
  public function __construct() {
11
- add_action( 'wp_ajax_wpuf_upload_file', [$this, 'upload_file'] );
12
- add_action( 'wp_ajax_nopriv_wpuf_upload_file', [$this, 'upload_file'] );
13
 
14
- add_action( 'wp_ajax_wpuf_file_del', [$this, 'delete_file'] );
15
- add_action( 'wp_ajax_nopriv_wpuf_file_del', [$this, 'delete_file'] );
16
 
17
  add_action( 'wp_ajax_wpuf_insert_image', [ $this, 'insert_image' ] );
18
  add_action( 'wp_ajax_nopriv_wpuf_insert_image', [ $this, 'insert_image' ] );
@@ -26,27 +26,27 @@ class WPUF_Upload {
26
  public function validate_nonce() {
27
  $nonce = isset( $_GET['nonce'] ) ? sanitize_key( wp_unslash( $_GET['nonce'] ) ) : '';
28
 
29
- if ( isset( $nonce ) && !wp_verify_nonce( $nonce, 'wpuf-upload-nonce' ) ) {
30
- return ;
31
  }
32
  }
33
 
34
  public function upload_file( $image_only = false ) {
35
- $nonce = isset( $_GET['nonce'] ) ? sanitize_key( wp_unslash( $_GET['nonce'] ) ) : '';
36
 
37
- if ( isset( $nonce ) && !wp_verify_nonce( $nonce, 'wpuf-upload-nonce' ) ) {
38
- return ;
39
  }
40
 
41
  // a valid request will have a form ID
42
  $form_id = isset( $_POST['form_id'] ) ? intval( wp_unslash( $_POST['form_id'] ) ) : false;
43
 
44
- if ( !$form_id ) {
45
  die( 'error' );
46
  }
47
 
48
  // check if guest post enabled for guests
49
- if ( !is_user_logged_in() ) {
50
  $guest_post = false;
51
  $form_settings = wpuf_get_form_settings( $form_id );
52
 
@@ -64,12 +64,13 @@ class WPUF_Upload {
64
  $guest_post = true;
65
  }
66
 
67
- if ( !$guest_post ) {
68
  die( 'error' );
69
  }
70
  }
71
 
72
- $wpuf_file = isset( $_FILES['wpuf_file'] ) ? array_map( 'sanitize_text_field', wp_unslash( $_FILES['wpuf_file'] ) ) : [];
 
73
 
74
  $upload = [
75
  'name' => $wpuf_file['name'],
@@ -100,17 +101,17 @@ class WPUF_Upload {
100
  }
101
 
102
  echo wp_kses( $response['html'], [
103
- 'li' => [
104
  'class' => []
105
  ],
106
- 'div' => [
107
  'class' => []
108
  ],
109
- 'img' => [
110
  'src' => [],
111
  'alt' => [],
112
  ],
113
- 'input' => [
114
  'type' => [],
115
  'name' => [],
116
  'value' => [],
@@ -120,15 +121,15 @@ class WPUF_Upload {
120
  'name' => [],
121
  'placeholder' => []
122
  ],
123
- 'a' => [
124
  'href' => [],
125
  'class' => [],
126
  'data-attach_id' => [],
127
  ],
128
- 'span' => [
129
  'class' => []
130
  ]
131
- ]);
132
  } else {
133
  echo wp_kses_post( $attach['error'] );
134
  }
@@ -146,13 +147,20 @@ class WPUF_Upload {
146
  * @return bool|int attachment id on success, bool false instead
147
  */
148
  public function handle_upload( $upload_data ) {
149
- $uploaded_file = wp_handle_upload( $upload_data, ['test_form' => false] );
 
 
 
 
 
 
150
 
151
  // If the wp_handle_upload call returned a local path for the image
152
  if ( isset( $uploaded_file['file'] ) ) {
153
- $file_loc = $uploaded_file['file'];
154
- $file_name = basename( $upload_data['name'] );
155
- $file_type = wp_check_filetype( $file_name );
 
156
 
157
  $attachment = [
158
  'post_mime_type' => $file_type['type'],
@@ -164,21 +172,22 @@ class WPUF_Upload {
164
  $attach_id = wp_insert_attachment( $attachment, $file_loc );
165
  $attach_data = wp_generate_attachment_metadata( $attach_id, $file_loc );
166
  wp_update_attachment_metadata( $attach_id, $attach_data );
 
167
 
168
- return ['success' => true, 'attach_id' => $attach_id];
169
  }
170
 
171
- return ['success' => false, 'error' => $uploaded_file['error']];
172
  }
173
 
174
  public static function attach_html( $attach_id, $type = null ) {
175
- if ( !$type ) {
176
  $type = isset( $_GET['type'] ) ? sanitize_text_field( wp_unslash( $_GET['type'] ) ) : 'image';
177
  }
178
 
179
  $attachment = get_post( $attach_id );
180
 
181
- if ( !$attachment ) {
182
  return;
183
  }
184
 
@@ -234,4 +243,26 @@ class WPUF_Upload {
234
  public function insert_image() {
235
  $this->upload_file( true );
236
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
237
  }
8
  class WPUF_Upload {
9
 
10
  public function __construct() {
11
+ add_action( 'wp_ajax_wpuf_upload_file', [ $this, 'upload_file' ] );
12
+ add_action( 'wp_ajax_nopriv_wpuf_upload_file', [ $this, 'upload_file' ] );
13
 
14
+ add_action( 'wp_ajax_wpuf_file_del', [ $this, 'delete_file' ] );
15
+ add_action( 'wp_ajax_nopriv_wpuf_file_del', [ $this, 'delete_file' ] );
16
 
17
  add_action( 'wp_ajax_wpuf_insert_image', [ $this, 'insert_image' ] );
18
  add_action( 'wp_ajax_nopriv_wpuf_insert_image', [ $this, 'insert_image' ] );
26
  public function validate_nonce() {
27
  $nonce = isset( $_GET['nonce'] ) ? sanitize_key( wp_unslash( $_GET['nonce'] ) ) : '';
28
 
29
+ if ( isset( $nonce ) && ! wp_verify_nonce( $nonce, 'wpuf-upload-nonce' ) ) {
30
+ return;
31
  }
32
  }
33
 
34
  public function upload_file( $image_only = false ) {
35
+ $nonce = isset( $_REQUEST['nonce'] ) ? sanitize_key( wp_unslash( $_REQUEST['nonce'] ) ) : '';
36
 
37
+ if ( isset( $nonce ) && ! wp_verify_nonce( $nonce, 'wpuf-upload-nonce' ) ) {
38
+ return;
39
  }
40
 
41
  // a valid request will have a form ID
42
  $form_id = isset( $_POST['form_id'] ) ? intval( wp_unslash( $_POST['form_id'] ) ) : false;
43
 
44
+ if ( ! $form_id ) {
45
  die( 'error' );
46
  }
47
 
48
  // check if guest post enabled for guests
49
+ if ( ! is_user_logged_in() ) {
50
  $guest_post = false;
51
  $form_settings = wpuf_get_form_settings( $form_id );
52
 
64
  $guest_post = true;
65
  }
66
 
67
+ if ( ! $guest_post ) {
68
  die( 'error' );
69
  }
70
  }
71
 
72
+ //$wpuf_file = isset( $_FILES['wpuf_file'] ) ? array_map( 'sanitize_text_field', wp_unslash( $_FILES['wpuf_file'] ) ) : []; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
73
+ $wpuf_file = isset( $_FILES['wpuf_file'] ) ? $_FILES['wpuf_file'] : []; // WPCS: sanitization ok.
74
 
75
  $upload = [
76
  'name' => $wpuf_file['name'],
101
  }
102
 
103
  echo wp_kses( $response['html'], [
104
+ 'li' => [
105
  'class' => []
106
  ],
107
+ 'div' => [
108
  'class' => []
109
  ],
110
+ 'img' => [
111
  'src' => [],
112
  'alt' => [],
113
  ],
114
+ 'input' => [
115
  'type' => [],
116
  'name' => [],
117
  'value' => [],
121
  'name' => [],
122
  'placeholder' => []
123
  ],
124
+ 'a' => [
125
  'href' => [],
126
  'class' => [],
127
  'data-attach_id' => [],
128
  ],
129
+ 'span' => [
130
  'class' => []
131
  ]
132
+ ] );
133
  } else {
134
  echo wp_kses_post( $attach['error'] );
135
  }
147
  * @return bool|int attachment id on success, bool false instead
148
  */
149
  public function handle_upload( $upload_data ) {
150
+ $check_duplicate = $this->duplicate_upload( $upload_data );
151
+
152
+ if ( isset( $check_duplicate['duplicate'] ) && $check_duplicate['duplicate'] ) {
153
+ return [ 'success' => true, 'attach_id' => $check_duplicate['duplicate'] ];
154
+ }
155
+
156
+ $uploaded_file = wp_handle_upload( $upload_data, [ 'test_form' => false ] );
157
 
158
  // If the wp_handle_upload call returned a local path for the image
159
  if ( isset( $uploaded_file['file'] ) ) {
160
+ $file_loc = $uploaded_file['file'];
161
+ $file_name = basename( $upload_data['name'] );
162
+ $upload_hash = md5( $upload_data['name'] );
163
+ $file_type = wp_check_filetype( $file_name );
164
 
165
  $attachment = [
166
  'post_mime_type' => $file_type['type'],
172
  $attach_id = wp_insert_attachment( $attachment, $file_loc );
173
  $attach_data = wp_generate_attachment_metadata( $attach_id, $file_loc );
174
  wp_update_attachment_metadata( $attach_id, $attach_data );
175
+ update_post_meta( $attach_id, 'wpuf_file_hash', $upload_hash );
176
 
177
+ return [ 'success' => true, 'attach_id' => $attach_id ];
178
  }
179
 
180
+ return [ 'success' => false, 'error' => $uploaded_file['error'] ];
181
  }
182
 
183
  public static function attach_html( $attach_id, $type = null ) {
184
+ if ( ! $type ) {
185
  $type = isset( $_GET['type'] ) ? sanitize_text_field( wp_unslash( $_GET['type'] ) ) : 'image';
186
  }
187
 
188
  $attachment = get_post( $attach_id );
189
 
190
+ if ( ! $attachment ) {
191
  return;
192
  }
193
 
243
  public function insert_image() {
244
  $this->upload_file( true );
245
  }
246
+
247
+ /**
248
+ * Check if duplicate file
249
+ *
250
+ * @param array $file
251
+ *
252
+ * @return mixed
253
+ */
254
+ function duplicate_upload( $file ) {
255
+ global $wpdb;
256
+
257
+ $upload_hash = md5( $file['name'] );
258
+
259
+ $sql = $wpdb->prepare( "SELECT post_id FROM $wpdb->postmeta m JOIN $wpdb->posts p ON p.ID = m.post_id WHERE m.meta_key = 'wpuf_file_hash' AND m.meta_value = %s AND p.post_status != 'trash' LIMIT 1;", $upload_hash );
260
+ $match = $wpdb->get_var( $sql );
261
+
262
+ if ( $match ) {
263
+ $file['duplicate'] = $match;
264
+ }
265
+
266
+ return $file;
267
+ }
268
  }
includes/class-billing-address.php CHANGED
@@ -21,7 +21,7 @@ class WPUF_Ajax_Address_Form {
21
 
22
  if ( wpuf_get_option( 'load_script', 'wpuf_general', 'on' ) == 'on' ) {
23
  $this->plugin_scripts();
24
- } elseif ( isset( $post->ID ) && ( $pay_page == $post->ID ) ) {
25
  $this->plugin_scripts();
26
  }
27
  }
@@ -30,8 +30,10 @@ class WPUF_Ajax_Address_Form {
30
  * Load billing scripts
31
  */
32
  public function plugin_scripts() {
33
- wp_enqueue_script( 'wpuf-ajax-script', plugins_url( 'assets/js/billing-address.js', __DIR__ ), ['jquery'], false );
34
- wp_localize_script( 'wpuf-ajax-script', 'ajax_object', [ 'ajaxurl' => admin_url( 'admin-ajax.php' ), 'fill_notice' => __( 'Some Required Fields are not filled!', 'wp-user-frontend' ) ] );
 
 
35
  }
36
 
37
  /**
@@ -69,48 +71,48 @@ class WPUF_Ajax_Address_Form {
69
 
70
  switch ( $show_country ) {
71
  case 'required':
72
- $country_required = true;
73
  break;
74
 
75
  case 'hidden':
76
  $country_hide = 'display: none;';
77
- // no break
78
  default:
79
  break;
80
  }
81
 
82
  switch ( $show_state ) {
83
  case 'required':
84
- $state_required = true;
85
  break;
86
 
87
  case 'hidden':
88
- $state_hide = 'display: none;';
89
- // no break
90
  default:
91
  break;
92
  }
93
 
94
  switch ( $show_add1 ) {
95
  case 'required':
96
- $address1_required = true;
97
  break;
98
 
99
  case 'hidden':
100
- $add1_hide = 'display: none;';
101
- // no break
102
  default:
103
  break;
104
  }
105
 
106
  switch ( $show_add2 ) {
107
  case 'required':
108
- $address2_required = true;
109
  break;
110
 
111
  case 'hidden':
112
- $add2_hide = 'display: none;';
113
- // no break
114
  default:
115
  break;
116
  }
@@ -120,8 +122,8 @@ class WPUF_Ajax_Address_Form {
120
  break;
121
 
122
  case 'hidden':
123
- $city_hide = 'display: none;';
124
- // no break
125
  default:
126
  break;
127
  }
@@ -132,7 +134,7 @@ class WPUF_Ajax_Address_Form {
132
 
133
  case 'hidden':
134
  $zip_hide = 'display: none;';
135
- // no break
136
  default:
137
  break;
138
  }
@@ -148,7 +150,8 @@ class WPUF_Ajax_Address_Form {
148
 
149
  <table id="wpuf-address-country-state" class="wp-list-table widefat">
150
  <tr>
151
- <td class="<?php echo isset( $country_required ) ? esc_attr( $required_class ) : null; ?>" style="display:inline-block;float:left;width:100%;margin:0px;padding:5px;<?php echo esc_attr( $country_hide ); ?>">
 
152
  <label><?php esc_html_e( 'Country', 'wp-user-frontend' ); ?><?php echo isset( $country_required ) ? wp_kses( '<span class="required">*</span>', array( 'span' => array() ) ) : null; ?></label>
153
  <br>
154
  <?php
@@ -161,7 +164,7 @@ class WPUF_Ajax_Address_Form {
161
  $selected = [];
162
  $base_addr = get_option( 'wpuf_base_country_state', false );
163
 
164
- $selected['country'] = !( empty( $address_fields['country'] ) ) ? $address_fields['country'] : $base_addr['country'];
165
 
166
  echo wp_kses( wpuf_select( [
167
  'options' => $cs->countries(),
@@ -182,9 +185,10 @@ class WPUF_Ajax_Address_Form {
182
  'data-placeholder' => []
183
  ],
184
  'option' => [
185
- 'value' => [],
186
- 'class' => [],
187
- 'id' => []
 
188
  ],
189
  ] ); ?>
190
  </td>
@@ -214,39 +218,52 @@ class WPUF_Ajax_Address_Form {
214
  'data-placeholder' => []
215
  ],
216
  'option' => [
217
- 'value' => [],
218
- 'class' => [],
219
- 'id' => []
 
220
  ],
221
  ] ); ?>
222
  </td>
223
  <td style="display:inline-block;float:left;width:100%;margin:0px;padding:5px;<?php echo esc_attr( $add1_hide ); ?>">
224
- <div class="wpuf-label"><?php esc_html_e( 'Address Line 1 ', 'wp-user-frontend' ); ?><?php echo isset( $address1_required ) ? wp_kses( '<span class="required">*</span>', array( 'span' => array() ) ) : null; ?></div>
 
225
  <div class="wpuf-fields">
226
- <input type="text" class="input <?php echo isset( $address1_required ) ? esc_attr( $required_class ) : null; ?>" name="wpuf_biiling_add_line_1"
 
 
227
  id="wpuf_biiling_add_line_1"
228
  value="<?php echo esc_attr( $address_fields['add_line_1'] ); ?>"/>
229
  </div>
230
  </td>
231
  <td style="display:inline-block;float:left;width:100%;margin:0px;padding:5px;<?php echo esc_attr( $add2_hide ); ?>">
232
- <div class="wpuf-label"><?php esc_html_e( 'Address Line 2 ', 'wp-user-frontend' ); ?><?php echo isset( $address2_required ) ? wp_kses( '<span class="required">*</span>', array( 'span' => array() ) ) : null; ?></div>
 
233
  <div class="wpuf-fields">
234
- <input type="text" class="input <?php echo isset( $address2_required ) ? esc_attr( $required_class ) : null; ?>" name="wpuf_biiling_add_line_2"
 
 
235
  id="wpuf_biiling_add_line_2"
236
  value="<?php echo esc_attr( $address_fields['add_line_2'] ); ?>"/>
237
  </div>
238
  </td>
239
  <td style="display:inline-block;float:left;width:100%;margin:0px;padding:5px;<?php echo esc_attr( $city_hide ); ?>">
240
- <div class="wpuf-label"><?php esc_html_e( 'City', 'wp-user-frontend' ); ?><?php echo isset( $city_required ) ? wp_kses( '<span class="required">*</span>', array( 'span' => array() ) ) : null; ?></div>
 
241
  <div class="wpuf-fields">
242
- <input type="text" class="input <?php echo isset( $city_required ) ? esc_attr( $required_class ) : null; ?>" name="wpuf_biiling_city" id="wpuf_biiling_city"
 
 
243
  value="<?php echo esc_attr( $address_fields['city'] ); ?>"/>
244
  </div>
245
  </td>
246
  <td style="display:inline-block;float:left;width:100%;margin:0px;padding:5px;<?php echo esc_attr( $zip_hide ); ?>">
247
- <div class="wpuf-label"><?php esc_html_e( 'Postal Code/ZIP', 'wp-user-frontend' ); ?><?php echo isset( $zip_required ) ? esc_html( wp_kses( '<span class="required">*</span>', array( 'span' => array() ) ) ) : null; ?></div>
 
248
  <div class="wpuf-fields">
249
- <input type="text" class="input <?php echo isset( $zip_required ) ? esc_attr( $required_class ) : null; ?>" name="wpuf_biiling_zip_code" id="wpuf_biiling_zip_code"
 
 
250
  value="<?php echo esc_attr( $address_fields['zip_code'] ); ?>"/>
251
  </div>
252
  </td>
@@ -260,7 +277,7 @@ class WPUF_Ajax_Address_Form {
260
  <div class="clear"></div>
261
  </form>
262
 
263
- <?php
264
  }
265
  }
266
 
@@ -271,30 +288,30 @@ class WPUF_Ajax_Address_Form {
271
  $nonce = isset( $_POST['wpuf_save_address_nonce'] ) ? sanitize_key( wp_unslash( $_POST['wpuf_save_address_nonce'] ) ) : '';
272
 
273
  if ( ! empty( $nonce ) && ! wp_verify_nonce( $nonce, 'wpuf_address_ajax_action' ) ) {
274
- return ;
275
  }
276
 
277
  $post_data = wp_unslash( $_POST );
278
 
279
  $user_id = get_current_user_id();
280
 
281
- $address_fields = [];
282
 
283
  $add_line_1 = isset( $post_data['billing_add_line1'] ) ? sanitize_text_field( wp_unslash( $post_data['billing_add_line1'] ) ) : '';
284
  $add_line_2 = isset( $post_data['billing_add_line2'] ) ? sanitize_text_field( wp_unslash( $post_data['billing_add_line2'] ) ) : '';
285
  $city = isset( $post_data['billing_city'] ) ? sanitize_text_field( wp_unslash( $post_data['billing_city'] ) ) : '';
286
 
287
- $state = isset( $post_data['billing_state'] ) ? sanitize_text_field( wp_unslash( $post_data['billing_state'] ) ) : '';
288
- $zip_code = isset( $post_data['billing_zip'] ) ? sanitize_text_field( wp_unslash( $post_data['billing_zip'] ) ) : '';
289
- $country = isset( $post_data['billing_country'] ) ? sanitize_text_field( wp_unslash( $post_data['billing_country'] ) ) : '';
290
 
291
  $address_fields = [
292
- 'add_line_1' => $add_line_1,
293
- 'add_line_2' => $add_line_2,
294
- 'city' => $city,
295
- 'state' => $state,
296
- 'zip_code' => $zip_code,
297
- 'country' => $country,
298
  ];
299
 
300
  update_user_meta( $user_id, 'wpuf_address_fields', $address_fields );
21
 
22
  if ( wpuf_get_option( 'load_script', 'wpuf_general', 'on' ) == 'on' ) {
23
  $this->plugin_scripts();
24
+ } elseif ( isset( $post->ID ) && ( $pay_page == $post->ID ) ) {
25
  $this->plugin_scripts();
26
  }
27
  }
30
  * Load billing scripts
31
  */
32
  public function plugin_scripts() {
33
+ wp_enqueue_script( 'wpuf-ajax-script', plugins_url( 'assets/js/billing-address.js', __DIR__ ), [ 'jquery' ], false );
34
+ wp_localize_script( 'wpuf-ajax-script', 'ajax_object', [ 'ajaxurl' => admin_url( 'admin-ajax.php' ),
35
+ 'fill_notice' => __( 'Some Required Fields are not filled!', 'wp-user-frontend' )
36
+ ] );
37
  }
38
 
39
  /**
71
 
72
  switch ( $show_country ) {
73
  case 'required':
74
+ $country_required = true;
75
  break;
76
 
77
  case 'hidden':
78
  $country_hide = 'display: none;';
79
+ // no break
80
  default:
81
  break;
82
  }
83
 
84
  switch ( $show_state ) {
85
  case 'required':
86
+ $state_required = true;
87
  break;
88
 
89
  case 'hidden':
90
+ $state_hide = 'display: none;';
91
+ // no break
92
  default:
93
  break;
94
  }
95
 
96
  switch ( $show_add1 ) {
97
  case 'required':
98
+ $address1_required = true;
99
  break;
100
 
101
  case 'hidden':
102
+ $add1_hide = 'display: none;';
103
+ // no break
104
  default:
105
  break;
106
  }
107
 
108
  switch ( $show_add2 ) {
109
  case 'required':
110
+ $address2_required = true;
111
  break;
112
 
113
  case 'hidden':
114
+ $add2_hide = 'display: none;';
115
+ // no break
116
  default:
117
  break;
118
  }
122
  break;
123
 
124
  case 'hidden':
125
+ $city_hide = 'display: none;';
126
+ // no break
127
  default:
128
  break;
129
  }
134
 
135
  case 'hidden':
136
  $zip_hide = 'display: none;';
137
+ // no break
138
  default:
139
  break;
140
  }
150
 
151
  <table id="wpuf-address-country-state" class="wp-list-table widefat">
152
  <tr>
153
+ <td class="<?php echo isset( $country_required ) ? esc_attr( $required_class ) : null; ?>"
154
+ style="display:inline-block;float:left;width:100%;margin:0px;padding:5px;<?php echo esc_attr( $country_hide ); ?>">
155
  <label><?php esc_html_e( 'Country', 'wp-user-frontend' ); ?><?php echo isset( $country_required ) ? wp_kses( '<span class="required">*</span>', array( 'span' => array() ) ) : null; ?></label>
156
  <br>
157
  <?php
164
  $selected = [];
165
  $base_addr = get_option( 'wpuf_base_country_state', false );
166
 
167
+ $selected['country'] = ! ( empty( $address_fields['country'] ) ) ? $address_fields['country'] : $base_addr['country'];
168
 
169
  echo wp_kses( wpuf_select( [
170
  'options' => $cs->countries(),
185
  'data-placeholder' => []
186
  ],
187
  'option' => [
188
+ 'value' => [],
189
+ 'class' => [],
190
+ 'id' => [],
191
+ 'selected' => []
192
  ],
193
  ] ); ?>
194
  </td>
218
  'data-placeholder' => []
219
  ],
220
  'option' => [
221
+ 'value' => [],
222
+ 'class' => [],
223
+ 'id' => [],
224
+ 'selected' => []
225
  ],
226
  ] ); ?>
227
  </td>
228
  <td style="display:inline-block;float:left;width:100%;margin:0px;padding:5px;<?php echo esc_attr( $add1_hide ); ?>">
229
+ <div
230
+ class="wpuf-label"><?php esc_html_e( 'Address Line 1 ', 'wp-user-frontend' ); ?><?php echo isset( $address1_required ) ? wp_kses( '<span class="required">*</span>', array( 'span' => array() ) ) : null; ?></div>
231
  <div class="wpuf-fields">
232
+ <input type="text"
233
+ class="input <?php echo isset( $address1_required ) ? esc_attr( $required_class ) : null; ?>"
234
+ name="wpuf_biiling_add_line_1"
235
  id="wpuf_biiling_add_line_1"
236
  value="<?php echo esc_attr( $address_fields['add_line_1'] ); ?>"/>
237
  </div>
238
  </td>
239
  <td style="display:inline-block;float:left;width:100%;margin:0px;padding:5px;<?php echo esc_attr( $add2_hide ); ?>">
240
+ <div
241
+ class="wpuf-label"><?php esc_html_e( 'Address Line 2 ', 'wp-user-frontend' ); ?><?php echo isset( $address2_required ) ? wp_kses( '<span class="required">*</span>', array( 'span' => array() ) ) : null; ?></div>
242
  <div class="wpuf-fields">
243
+ <input type="text"
244
+ class="input <?php echo isset( $address2_required ) ? esc_attr( $required_class ) : null; ?>"
245
+ name="wpuf_biiling_add_line_2"
246
  id="wpuf_biiling_add_line_2"
247
  value="<?php echo esc_attr( $address_fields['add_line_2'] ); ?>"/>
248
  </div>
249
  </td>
250
  <td style="display:inline-block;float:left;width:100%;margin:0px;padding:5px;<?php echo esc_attr( $city_hide ); ?>">
251
+ <div
252
+ class="wpuf-label"><?php esc_html_e( 'City', 'wp-user-frontend' ); ?><?php echo isset( $city_required ) ? wp_kses( '<span class="required">*</span>', array( 'span' => array() ) ) : null; ?></div>
253
  <div class="wpuf-fields">
254
+ <input type="text"
255
+ class="input <?php echo isset( $city_required ) ? esc_attr( $required_class ) : null; ?>"
256
+ name="wpuf_biiling_city" id="wpuf_biiling_city"
257
  value="<?php echo esc_attr( $address_fields['city'] ); ?>"/>
258
  </div>
259
  </td>
260
  <td style="display:inline-block;float:left;width:100%;margin:0px;padding:5px;<?php echo esc_attr( $zip_hide ); ?>">
261
+ <div
262
+ class="wpuf-label"><?php esc_html_e( 'Postal Code/ZIP', 'wp-user-frontend' ); ?><?php echo isset( $zip_required ) ? wp_kses( '<span class="required">*</span>', array( 'span' => array() ) ) : null; ?></div>
263
  <div class="wpuf-fields">
264
+ <input type="text"
265
+ class="input <?php echo isset( $zip_required ) ? esc_attr( $required_class ) : null; ?>"
266
+ name="wpuf_biiling_zip_code" id="wpuf_biiling_zip_code"
267
  value="<?php echo esc_attr( $address_fields['zip_code'] ); ?>"/>
268
  </div>
269
  </td>
277
  <div class="clear"></div>
278
  </form>
279
 
280
+ <?php
281
  }
282
  }
283
 
288
  $nonce = isset( $_POST['wpuf_save_address_nonce'] ) ? sanitize_key( wp_unslash( $_POST['wpuf_save_address_nonce'] ) ) : '';
289
 
290
  if ( ! empty( $nonce ) && ! wp_verify_nonce( $nonce, 'wpuf_address_ajax_action' ) ) {
291
+ return;
292
  }
293
 
294
  $post_data = wp_unslash( $_POST );
295
 
296
  $user_id = get_current_user_id();
297
 
298
+ $address_fields = [];
299
 
300
  $add_line_1 = isset( $post_data['billing_add_line1'] ) ? sanitize_text_field( wp_unslash( $post_data['billing_add_line1'] ) ) : '';
301
  $add_line_2 = isset( $post_data['billing_add_line2'] ) ? sanitize_text_field( wp_unslash( $post_data['billing_add_line2'] ) ) : '';
302
  $city = isset( $post_data['billing_city'] ) ? sanitize_text_field( wp_unslash( $post_data['billing_city'] ) ) : '';
303
 
304
+ $state = isset( $post_data['billing_state'] ) ? sanitize_text_field( wp_unslash( $post_data['billing_state'] ) ) : '';
305
+ $zip_code = isset( $post_data['billing_zip'] ) ? sanitize_text_field( wp_unslash( $post_data['billing_zip'] ) ) : '';
306
+ $country = isset( $post_data['billing_country'] ) ? sanitize_text_field( wp_unslash( $post_data['billing_country'] ) ) : '';
307
 
308
  $address_fields = [
309
+ 'add_line_1' => $add_line_1,
310
+ 'add_line_2' => $add_line_2,
311
+ 'city' => $city,
312
+ 'state' => $state,
313
+ 'zip_code' => $zip_code,
314
+ 'country' => $country,
315
  ];
316
 
317
  update_user_meta( $user_id, 'wpuf_address_fields', $address_fields );
includes/class-form-manager.php CHANGED
@@ -51,6 +51,8 @@ class WPUF_Form_Manager {
51
  $forms_array['meta']['total'] = (int) $query->found_posts;
52
  $forms_array['meta']['pages'] = (int) $query->max_num_pages;
53
 
 
 
54
  return $forms_array;
55
  }
56
 
51
  $forms_array['meta']['total'] = (int) $query->found_posts;
52
  $forms_array['meta']['pages'] = (int) $query->max_num_pages;
53
 
54
+ wp_reset_postdata();
55
+
56
  return $forms_array;
57
  }
58
 
includes/class-frontend-form-post.php CHANGED
@@ -45,9 +45,10 @@ class WPUF_Frontend_Form extends WPUF_Frontend_Render_Form {
45
 
46
  ob_start();
47
 
48
- if ( !is_user_logged_in() ) {
49
- echo wp_kses_post( '<div class="wpuf-message">' . __( 'You are not logged in', 'wp-user-frontend' ) . '</div>',
50
- wp_login_form() );
 
51
 
52
  return;
53
  }
@@ -189,7 +190,11 @@ class WPUF_Frontend_Form extends WPUF_Frontend_Render_Form {
189
  'post_excerpt' => isset( $_POST['post_excerpt'] ) ? wp_kses( wp_unslash( $_POST['post_excerpt'] ), $allowed_tags ) : '',
190
  ];
191
 
192
- $category = isset( $_POST['category'] ) ? array_map( 'sanitize_text_field', wp_unslash( $_POST['category'] ) ) : '';
 
 
 
 
193
 
194
  if ( $category != '' && $category != '0' && $category[0] != '-1' ) {
195
  $postarr['post_category'] = is_array( $category ) ? $category : [ $category ];
@@ -240,6 +245,8 @@ class WPUF_Frontend_Form extends WPUF_Frontend_Render_Form {
240
 
241
  if ( !empty( $taxonomy_vars ) ) {
242
  $this->set_custom_taxonomy( $post_id, $taxonomy_vars );
 
 
243
  }
244
  }
245
 
@@ -350,11 +357,13 @@ class WPUF_Frontend_Form extends WPUF_Frontend_Render_Form {
350
  }
351
  }
352
 
353
- $category = isset( $_POST['category'] ) ? array_map( 'sanitize_text_field', wp_unslash( $_POST['category'] ) ) : '';
 
 
 
 
354
 
355
  if ( $category != '' && $category != '0' && $category[0] != '-1' ) {
356
-
357
-
358
  if ( !is_array( $category ) && is_string( $category ) ) {
359
  $category_strings = explode( ',', $category );
360
  $cat_ids = [];
@@ -486,7 +495,10 @@ class WPUF_Frontend_Form extends WPUF_Frontend_Render_Form {
486
 
487
  if ( !empty( $taxonomy_vars ) ) {
488
  $this->set_custom_taxonomy( $post_id, $taxonomy_vars );
 
 
489
  }
 
490
  $response = $this->send_mail_for_guest( $charging_enabled, $post_id, $form_id, $is_update, $post_author, $meta_vars );
491
  wpuf_clear_buffer();
492
  wp_send_json( $response );
@@ -624,7 +636,7 @@ class WPUF_Frontend_Form extends WPUF_Frontend_Render_Form {
624
  wpuf_associate_attachment( $attachment_id, $post_id );
625
  set_post_thumbnail( $post_id, $attachment_id );
626
 
627
- $file_data = isset( $wpuf_files[$attachment_id] ) ? $wpuf_files[$attachment_id] : false;
628
 
629
  if ( $file_data ) {
630
  $args = [
@@ -689,7 +701,7 @@ class WPUF_Frontend_Form extends WPUF_Frontend_Render_Form {
689
  //add_post_meta( $post_id, $file_input['name'], $attachment_id );
690
 
691
  // file title, caption, desc update
692
- $file_data = isset( $wpuf_files[$attachment_id] ) ? $wpuf_files[$attachment_id] : false;
693
 
694
  if ( $file_data ) {
695
  $args = [
@@ -738,7 +750,9 @@ class WPUF_Frontend_Form extends WPUF_Frontend_Render_Form {
738
  if ( $replace ) {
739
  foreach ( $replace as $index => $meta_key ) {
740
  $value = get_post_meta( $post_id, $meta_key, false );
741
- $new_value = implode( '; ', $value );
 
 
742
 
743
  $original_value = '';
744
  $meta_val = '';
@@ -770,6 +784,11 @@ class WPUF_Frontend_Form extends WPUF_Frontend_Render_Form {
770
  }
771
  $original_value = $original_value . $meta_val;
772
  } else {
 
 
 
 
 
773
  if ( get_post_mime_type( (int) $new_value ) ) {
774
  $original_value = wp_get_attachment_url( $new_value );
775
  } else {
45
 
46
  ob_start();
47
 
48
+ if ( ! is_user_logged_in() ) {
49
+ echo wp_kses_post( '<div class="wpuf-message">' . __( 'You are not logged in', 'wp-user-frontend' ) . '</div>' ),
50
+
51
+ wp_login_form();
52
 
53
  return;
54
  }
190
  'post_excerpt' => isset( $_POST['post_excerpt'] ) ? wp_kses( wp_unslash( $_POST['post_excerpt'] ), $allowed_tags ) : '',
191
  ];
192
 
193
+ if ( isset( $_POST['category'] ) && is_array( $_POST['category'] ) ) { // WPCS: sanitization ok.
194
+ $category = isset( $_POST['category'] ) ? array_map( 'sanitize_text_field', wp_unslash( $_POST['category'] ) ) : [];
195
+ } else {
196
+ $category = isset( $_POST['category'] ) ? sanitize_text_field( wp_unslash( $_POST['category'] ) ) : '';
197
+ }
198
 
199
  if ( $category != '' && $category != '0' && $category[0] != '-1' ) {
200
  $postarr['post_category'] = is_array( $category ) ? $category : [ $category ];
245
 
246
  if ( !empty( $taxonomy_vars ) ) {
247
  $this->set_custom_taxonomy( $post_id, $taxonomy_vars );
248
+ } else {
249
+ $this->set_default_taxonomy( $post_id );
250
  }
251
  }
252
 
357
  }
358
  }
359
 
360
+ if ( isset( $_POST['category'] ) && is_array( $_POST['category'] ) ) { // WPCS: sanitization ok.
361
+ $category = isset( $_POST['category'] ) ? array_map( 'sanitize_text_field', wp_unslash( $_POST['category'] ) ) : [];
362
+ } else {
363
+ $category = isset( $_POST['category'] ) ? sanitize_text_field( wp_unslash( $_POST['category'] ) ) : '';
364
+ }
365
 
366
  if ( $category != '' && $category != '0' && $category[0] != '-1' ) {
 
 
367
  if ( !is_array( $category ) && is_string( $category ) ) {
368
  $category_strings = explode( ',', $category );
369
  $cat_ids = [];
495
 
496
  if ( !empty( $taxonomy_vars ) ) {
497
  $this->set_custom_taxonomy( $post_id, $taxonomy_vars );
498
+ } else {
499
+ $this->set_default_taxonomy( $post_id );
500
  }
501
+
502
  $response = $this->send_mail_for_guest( $charging_enabled, $post_id, $form_id, $is_update, $post_author, $meta_vars );
503
  wpuf_clear_buffer();
504
  wp_send_json( $response );
636
  wpuf_associate_attachment( $attachment_id, $post_id );
637
  set_post_thumbnail( $post_id, $attachment_id );
638
 
639
+ $file_data = isset( $_POST['wpuf_files_data'][$attachment_id] ) ? wp_unslash( $_POST['wpuf_files_data'][$attachment_id] ) : false;
640
 
641
  if ( $file_data ) {
642
  $args = [
701
  //add_post_meta( $post_id, $file_input['name'], $attachment_id );
702
 
703
  // file title, caption, desc update
704
+ $file_data = isset( $_POST['wpuf_files_data'][$attachment_id] ) ? wp_unslash( $_POST['wpuf_files_data'][$attachment_id] ) : false;
705
 
706
  if ( $file_data ) {
707
  $args = [
750
  if ( $replace ) {
751
  foreach ( $replace as $index => $meta_key ) {
752
  $value = get_post_meta( $post_id, $meta_key, false );
753
+ if ( is_array( $value ) ) {
754
+ $new_value = implode( '; ', $value );
755
+ }
756
 
757
  $original_value = '';
758
  $meta_val = '';
784
  }
785
  $original_value = $original_value . $meta_val;
786
  } else {
787
+ if ( 'address_field' == $meta_key ) {
788
+ $value = get_post_meta( $post_id, $meta_key, true );
789
+ $new_value = implode( ', ', $value );
790
+ }
791
+
792
  if ( get_post_mime_type( (int) $new_value ) ) {
793
  $original_value = wp_get_attachment_url( $new_value );
794
  } else {
includes/class-frontend-render-form.php CHANGED
@@ -227,8 +227,8 @@ class WPUF_Frontend_Render_Form {
227
  <html lang="en">
228
  <head>
229
  <meta charset="UTF-8">
230
- <title>Form Preview</title>
231
- <link rel="stylesheet" href="<?php echo esc_attr( plugins_url( 'assets/css/frontend-forms.css', __DIR__ ) ); ?>">
232
 
233
  <style type="text/css">
234
  body {
@@ -500,9 +500,9 @@ class WPUF_Frontend_Render_Form {
500
  if ( $column_field['input_type'] == 'taxonomy' ) {
501
 
502
  // don't add "category"
503
- if ( $column_field['name'] == 'category' ) {
504
- continue;
505
- }
506
 
507
  $taxonomy_vars[] = $column_field;
508
  } else {
@@ -528,9 +528,9 @@ class WPUF_Frontend_Render_Form {
528
  if ( $value['input_type'] == 'taxonomy' ) {
529
 
530
  // don't add "category"
531
- if ( $value['name'] == 'category' ) {
532
- continue;
533
- }
534
 
535
  $taxonomy_vars[] = $value;
536
  } else {
@@ -548,7 +548,6 @@ class WPUF_Frontend_Render_Form {
548
  * @param array $taxonomy_vars
549
  */
550
  public function set_custom_taxonomy( $post_id, $taxonomy_vars ) {
551
-
552
  check_ajax_referer( 'wpuf_form_add' );
553
  // save any custom taxonomies
554
  $woo_attr = [];
@@ -562,7 +561,7 @@ class WPUF_Frontend_Render_Form {
562
  $taxonomy_name = sanitize_text_field( wp_unslash( $_POST[$taxonomy['name']] ) );
563
  }
564
 
565
- if ( $taxonomy_name != '' ) {
566
  if ( is_object_in_taxonomy( $this->form_settings['post_type'], $taxonomy['name'] ) ) {
567
  $tax = $taxonomy_name;
568
  // if it's not an array, make it one
@@ -612,14 +611,8 @@ class WPUF_Frontend_Render_Form {
612
  } // isset tax
613
 
614
  else {
615
- if ( isset( $taxonomy['woo_attr'] ) && $taxonomy['woo_attr'] == 'no' && !empty( $taxonomy_name ) ) {
616
- if ( is_object_in_taxonomy( $this->form_settings['post_type'], $taxonomy['name'] ) ) {
617
- foreach ( $this->form_settings['default_cat'] as $value ) {
618
- $term = get_term( $value );
619
- wp_set_post_terms( $post_id, $value, $term->taxonomy );
620
- }
621
- // wp_set_post_terms( $post_id, $form_settings['default_cat'], $taxonomy['name'] );
622
- }
623
  }
624
  }
625
  }
@@ -632,6 +625,20 @@ class WPUF_Frontend_Render_Form {
632
  return $woo_attr;
633
  }
634
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
635
  /**
636
  * prepare meta fields
637
  *
@@ -680,25 +687,27 @@ class WPUF_Frontend_Render_Form {
680
  break;
681
 
682
  case 'repeat':
 
683
 
684
  // if it is a multi column repeat field
685
  if ( isset( $value['multiple'] ) && $value['multiple'] == 'true' ) {
686
 
687
  // if there's any items in the array, process it
688
- if ( $value_name ) {
689
- $ref_arr = [];
 
690
  $cols = count( $value['columns'] );
691
- $first = array_shift( array_values( $value_name ) ); //first element
692
  $rows = count( $first );
693
 
694
  // loop through columns
695
- for ( $i = 0; $i < $rows; $i++ ) {
696
 
697
  // loop through the rows and store in a temp array
698
- $temp = [];
 
699
 
700
- for ( $j = 0; $j < $cols; $j++ ) {
701
- $temp[] = $value_name[$j][$i];
702
  }
703
 
704
  // store all fields in a row with self::$separator separated
@@ -711,7 +720,7 @@ class WPUF_Frontend_Render_Form {
711
  }
712
  }
713
  } else {
714
- $meta_key_value[$value['name']] = implode( self::$separator, $value_name );
715
  }
716
 
717
  break;
@@ -751,6 +760,10 @@ class WPUF_Frontend_Render_Form {
751
  }
752
  break;
753
 
 
 
 
 
754
  default:
755
  // if it's an array, implode with this->separator
756
  if ( !empty( $value_name ) && is_array( $value_name ) ) {
@@ -761,7 +774,7 @@ class WPUF_Frontend_Render_Form {
761
  } elseif ( !empty( $acf_compatibility ) && $acf_compatibility == 'yes' ) {
762
  $meta_key_value[$value['name']] = $value_name;
763
  } else {
764
- $meta_key_value[$value['name']] = implode( self::$separator, $value_name );
765
  }
766
  } elseif ( !empty( $value_name ) ) {
767
  $meta_key_value[$value['name']] = trim( $value_name );
227
  <html lang="en">
228
  <head>
229
  <meta charset="UTF-8">
230
+ <title>__( 'Form Preview', 'wp-user-frontend' )</title>
231
+ <link rel="stylesheet" href="<?php echo esc_url( plugins_url( 'assets/css/frontend-forms.css', __DIR__ ) ); ?>">
232
 
233
  <style type="text/css">
234
  body {
500
  if ( $column_field['input_type'] == 'taxonomy' ) {
501
 
502
  // don't add "category"
503
+ // if ( $column_field['name'] == 'category' ) {
504
+ // continue;
505
+ // }
506
 
507
  $taxonomy_vars[] = $column_field;
508
  } else {
528
  if ( $value['input_type'] == 'taxonomy' ) {
529
 
530
  // don't add "category"
531
+ // if ( $value['name'] == 'category' ) {
532
+ // continue;
533
+ // }
534
 
535
  $taxonomy_vars[] = $value;
536
  } else {
548
  * @param array $taxonomy_vars
549
  */
550
  public function set_custom_taxonomy( $post_id, $taxonomy_vars ) {
 
551
  check_ajax_referer( 'wpuf_form_add' );
552
  // save any custom taxonomies
553
  $woo_attr = [];
561
  $taxonomy_name = sanitize_text_field( wp_unslash( $_POST[$taxonomy['name']] ) );
562
  }
563
 
564
+ if ( isset( $taxonomy_name ) && $taxonomy_name !=0 && $taxonomy_name !=-1 ) {
565
  if ( is_object_in_taxonomy( $this->form_settings['post_type'], $taxonomy['name'] ) ) {
566
  $tax = $taxonomy_name;
567
  // if it's not an array, make it one
611
  } // isset tax
612
 
613
  else {
614
+ if ( !isset( $taxonomy['woo_attr'] ) ) {
615
+ $this->set_default_taxonomy( $post_id );
 
 
 
 
 
 
616
  }
617
  }
618
  }
625
  return $woo_attr;
626
  }
627
 
628
+
629
+ public function set_default_taxonomy( $post_id ) {
630
+ $post_taxonomies = get_object_taxonomies( $this->form_settings['post_type'], 'objects' );
631
+ foreach ( $post_taxonomies as $tax ) {
632
+ if ( $tax->hierarchical ) {
633
+ $name = 'default_'. $tax->name;
634
+ if( isset( $this->form_settings[$name] ) && !empty( $this->form_settings[$name] ) ){
635
+ $value = $this->form_settings[$name];
636
+ wp_set_post_terms( $post_id, $value, $tax->name );
637
+ }
638
+ }
639
+ }
640
+ }
641
+
642
  /**
643
  * prepare meta fields
644
  *
687
  break;
688
 
689
  case 'repeat':
690
+ $repeater_value = wp_unslash( $_POST[$value['name']] ); // WPCS: sanitization ok.
691
 
692
  // if it is a multi column repeat field
693
  if ( isset( $value['multiple'] ) && $value['multiple'] == 'true' ) {
694
 
695
  // if there's any items in the array, process it
696
+ if ( $repeater_value ) {
697
+
698
+ $ref_arr = array();
699
  $cols = count( $value['columns'] );
700
+ $first = array_shift( array_values( $repeater_value ) ); //first element
701
  $rows = count( $first );
702
 
703
  // loop through columns
704
+ for ($i = 0; $i < $rows; $i++) {
705
 
706
  // loop through the rows and store in a temp array
707
+ $temp = array();
708
+ for ($j = 0; $j < $cols; $j++) {
709
 
710
+ $temp[] = $repeater_value[$j][$i];
 
711
  }
712
 
713
  // store all fields in a row with self::$separator separated
720
  }
721
  }
722
  } else {
723
+ $meta_key_value[$value['name']] = implode( self::$separator, $repeater_value );
724
  }
725
 
726
  break;
760
  }
761
  break;
762
 
763
+ case 'checkbox':
764
+ $meta_key_value[ $value['name'] ] = $value_name[0];
765
+ break;
766
+
767
  default:
768
  // if it's an array, implode with this->separator
769
  if ( !empty( $value_name ) && is_array( $value_name ) ) {
774
  } elseif ( !empty( $acf_compatibility ) && $acf_compatibility == 'yes' ) {
775
  $meta_key_value[$value['name']] = $value_name;
776
  } else {
777
+ $meta_key_value[$value['name']] = implode( $value_name[0] );
778
  }
779
  } elseif ( !empty( $value_name ) ) {
780
  $meta_key_value[$value['name']] = trim( $value_name );
includes/class-privacy.php CHANGED
@@ -30,11 +30,10 @@ class WPUF_Privacy {
30
  */
31
  public function get_privacy_message() {
32
  $content = '
33
- <div contenteditable="false">' .
34
- '<p class="wp-policy-help">' .
35
  __( 'This sample policy includes the basics around what personal data you may be collecting, storing and sharing, as well as who may have access to that data. Depending on what settings are enabled and which additional plugins are used, the specific information shared by your form will vary. We recommend consulting with a lawyer when deciding what information to disclose on your privacy policy.', 'wp-user-frontend' ) .
36
  '</p>' .
37
- '</div>' .
38
  '<p>' . __( 'We collect information about you during the form submission process on our WordPress website.', 'wp-user-frontend' ) . '</p>' .
39
  '<h2>' . __( 'What we collect and store', 'wp-user-frontend' ) . '</h2>' .
40
  '<p>' . __( 'While you visit our , we’ll track:', 'wp-user-frontend' ) . '</p>' .
@@ -44,9 +43,7 @@ class WPUF_Privacy {
44
  '<li>' . __( 'Transaction Details: we’ll ask you to enter this so we can, for instance, provide & regulate subscription packs that you bought and keep track of your payment details for subscription packs!', 'wp-user-frontend' ) . '</li>' .
45
  '</ul>' .
46
  '<p>' . __( 'We’ll also use cookies to keep track of form elements while you’re browsing our site.', 'wp-user-frontend' ) . '</p>' .
47
- '<div contenteditable="false">' .
48
- '<p class="wp-policy-help">' . __( 'Note: you may want to further detail your cookie policy, and link to that section from here.', 'wp-user-frontend' ) . '</p>' .
49
- '</div>' .
50
  '<p>' . __( 'When you fill up a form, we’ll ask you to provide information including your name, billing address, shipping address, email address, phone number, credit card/payment details and optional account information like username and password and any other form fields found in the form building options. We’ll use this information for purposes, such as, to:', 'wp-user-frontend' ) . '</p>' .
51
  '<ul>' .
52
  '<li>' . __( 'Send you information about your account and order', 'wp-user-frontend' ) . '</li>' .
@@ -67,14 +64,10 @@ class WPUF_Privacy {
67
  '</ul>' .
68
  '<p>' . __( 'Our team members have access to this information to help fulfill transactions and support you.', 'wp-user-frontend' ) . '</p>' .
69
  '<h2>' . __( 'What we share with others', 'wp-user-frontend' ) . '</h2>' .
70
- '<div contenteditable="false">' .
71
- '<p class="wp-policy-help">' . __( 'In this section you should list who you’re sharing data with, and for what purpose. This could include, but may not be limited to, analytics, marketing, payment gateways, shipping providers, and third party embeds.', 'wp-user-frontend' ) . '</p>' .
72
- '</div>' .
73
  '<p>' . __( 'We share information with third parties who help us provide our orders and store services to you; for example --', 'wp-user-frontend' ) . '</p>' .
74
  '<h3>' . __( 'Payments', 'wp-user-frontend' ) . '</h3>' .
75
- '<div contenteditable="false">' .
76
- '<p class="wp-policy-help">' . __( 'In this subsection you should list which third party payment processors you’re using to take payments on your site since these may handle customer data. We’ve included PayPal as an example, but you should remove this if you’re not using PayPal.', 'wp-user-frontend' ) . '</p>' .
77
- '</div>' .
78
  '<p>' . __( 'We accept payments through PayPal. When processing payments, some of your data will be passed to PayPal, including information required to process or support the payment, such as the purchase total and billing information.', 'wp-user-frontend' ) . '</p>' .
79
  '<p>' . __( 'Please see the <a href="https://www.paypal.com/us/webapps/mpp/ua/privacy-full">PayPal Privacy Policy</a> for more details.', 'wp-user-frontend' ) . '</p>' .
80
  '<p>' . __( 'Also, we accept payments through Stripe. When processing payments, some of your data will be passed to Stripe, including information required to process or support the payment, such as the purchase total and billing information.', 'wp-user-frontend' ) . '</p>' .
@@ -83,7 +76,8 @@ class WPUF_Privacy {
83
  '<p>' . __( 'In this subsection you should list which third party modules you’re using to increase the functionality of your created forms using WP User Frontend since these may handle customer data.', 'wp-user-frontend' ) . '</p>' .
84
  '<p>' . __( 'WP User Frontend Pro comes with support for modules like MailChimp, ConvertKit, Stipe, Paid Membership Pro, MailPoet, Zapier, GetResponse, MailPoet 3, Campaign Monitor, Social Login, BuddyPress. Please note any future modules that will be added will have some data transferred to their own platform which falls in their own data policy. ', 'wp-user-frontend' ) . '</p>' .
85
  '<p>' . __( 'As an example while using MailChimp for your marketing email automation service by integrating it with WP User Frontend, some of your data will be passed to MailChimp, including information required to process or support the email marketing services, such as name, email address and any other information that you intend to pass or collect including all collected information through subscription. ', 'wp-user-frontend' ) . '</p>' .
86
- '<p>' . __( 'Please see the <a href="https://mailchimp.com/legal/privacy/">MailChimp Privacy Policy</a> for more details.', 'wp-user-frontend' ) . '</p>';
 
87
 
88
  return apply_filters( 'wpuf_privacy_policy_content', $content );
89
  }
@@ -167,10 +161,11 @@ class WPUF_Privacy {
167
  $wpuf_user = self::get_user( $email_address );
168
 
169
  $data_to_export[] = [
170
- 'group_id' => 'wpuf-user-data',
171
- 'group_label' => __( 'WPUF User Data', 'wp-user-frontend' ),
172
- 'item_id' => 'wpuf-user',
173
- 'data' => apply_filters( 'wpuf_privacy_user_data', [], $wpuf_user, $page ),
 
174
  ];
175
 
176
  /**
@@ -288,10 +283,11 @@ class WPUF_Privacy {
288
  */
289
  public static function export_subscription_data( $email_address, $page ) {
290
  $data_to_export[] = [
291
- 'group_id' => 'wpuf-subscription-data',
292
- 'group_label' => __( 'WPUF Subscription Data', 'wp-user-frontend' ),
293
- 'item_id' => 'wpuf-subscription',
294
- 'data' => self::get_subscription_data( $email_address, $page ),
 
295
  ];
296
 
297
  $response = [
@@ -317,10 +313,11 @@ class WPUF_Privacy {
317
  if ( !empty( $transaction_data ) ) {
318
  foreach ( $transaction_data as $txn_data ) {
319
  $data_to_export[] = [
320
- 'group_id' => 'wpuf-transaction-data',
321
- 'group_label' => __( 'WPUF Transaction Data', 'wp-user-frontend' ),
322
- 'item_id' => 'wpuf-transaction' . $txn_data['transaction_id'],
323
- 'data' => [
 
324
  [
325
  'name' => __( 'Transaction ID', 'wp-user-frontend' ),
326
  'value' => $txn_data['transaction_id'],
@@ -407,10 +404,11 @@ class WPUF_Privacy {
407
  if ( !empty( $post_data ) ) {
408
  foreach ( $post_data as $data ) {
409
  $data_to_export[] = [
410
- 'group_id' => 'wpuf-post-data',
411
- 'group_label' => __( 'WPUF Post Data', 'wp-user-frontend' ),
412
- 'item_id' => 'wpuf-posts-' . $data['id'],
413
- 'data' => [
 
414
  [
415
  'name' => __( 'Post ID', 'wp-user-frontend' ),
416
  'value' => $data['id'],
30
  */
31
  public function get_privacy_message() {
32
  $content = '
33
+ <div class="wp-suggested-text">' .
34
+ '<p class="privacy-policy-tutorial">' .
35
  __( 'This sample policy includes the basics around what personal data you may be collecting, storing and sharing, as well as who may have access to that data. Depending on what settings are enabled and which additional plugins are used, the specific information shared by your form will vary. We recommend consulting with a lawyer when deciding what information to disclose on your privacy policy.', 'wp-user-frontend' ) .
36
  '</p>' .
 
37
  '<p>' . __( 'We collect information about you during the form submission process on our WordPress website.', 'wp-user-frontend' ) . '</p>' .
38
  '<h2>' . __( 'What we collect and store', 'wp-user-frontend' ) . '</h2>' .
39
  '<p>' . __( 'While you visit our , we’ll track:', 'wp-user-frontend' ) . '</p>' .
43
  '<li>' . __( 'Transaction Details: we’ll ask you to enter this so we can, for instance, provide & regulate subscription packs that you bought and keep track of your payment details for subscription packs!', 'wp-user-frontend' ) . '</li>' .
44
  '</ul>' .
45
  '<p>' . __( 'We’ll also use cookies to keep track of form elements while you’re browsing our site.', 'wp-user-frontend' ) . '</p>' .
46
+ '<p class="privacy-policy-tutorial">' . __( 'Note: you may want to further detail your cookie policy, and link to that section from here.', 'wp-user-frontend' ) . '</p>' .
 
 
47
  '<p>' . __( 'When you fill up a form, we’ll ask you to provide information including your name, billing address, shipping address, email address, phone number, credit card/payment details and optional account information like username and password and any other form fields found in the form building options. We’ll use this information for purposes, such as, to:', 'wp-user-frontend' ) . '</p>' .
48
  '<ul>' .
49
  '<li>' . __( 'Send you information about your account and order', 'wp-user-frontend' ) . '</li>' .
64
  '</ul>' .
65
  '<p>' . __( 'Our team members have access to this information to help fulfill transactions and support you.', 'wp-user-frontend' ) . '</p>' .
66
  '<h2>' . __( 'What we share with others', 'wp-user-frontend' ) . '</h2>' .
67
+ '<p class="privacy-policy-tutorial">' . __( 'In this section you should list who you’re sharing data with, and for what purpose. This could include, but may not be limited to, analytics, marketing, payment gateways, shipping providers, and third party embeds.', 'wp-user-frontend' ) . '</p>' .
 
 
68
  '<p>' . __( 'We share information with third parties who help us provide our orders and store services to you; for example --', 'wp-user-frontend' ) . '</p>' .
69
  '<h3>' . __( 'Payments', 'wp-user-frontend' ) . '</h3>' .
70
+ '<p class="privacy-policy-tutorial">' . __( 'In this subsection you should list which third party payment processors you’re using to take payments on your site since these may handle customer data. We’ve included PayPal as an example, but you should remove this if you’re not using PayPal.', 'wp-user-frontend' ) . '</p>' .
 
 
71
  '<p>' . __( 'We accept payments through PayPal. When processing payments, some of your data will be passed to PayPal, including information required to process or support the payment, such as the purchase total and billing information.', 'wp-user-frontend' ) . '</p>' .
72
  '<p>' . __( 'Please see the <a href="https://www.paypal.com/us/webapps/mpp/ua/privacy-full">PayPal Privacy Policy</a> for more details.', 'wp-user-frontend' ) . '</p>' .
73
  '<p>' . __( 'Also, we accept payments through Stripe. When processing payments, some of your data will be passed to Stripe, including information required to process or support the payment, such as the purchase total and billing information.', 'wp-user-frontend' ) . '</p>' .
76
  '<p>' . __( 'In this subsection you should list which third party modules you’re using to increase the functionality of your created forms using WP User Frontend since these may handle customer data.', 'wp-user-frontend' ) . '</p>' .
77
  '<p>' . __( 'WP User Frontend Pro comes with support for modules like MailChimp, ConvertKit, Stipe, Paid Membership Pro, MailPoet, Zapier, GetResponse, MailPoet 3, Campaign Monitor, Social Login, BuddyPress. Please note any future modules that will be added will have some data transferred to their own platform which falls in their own data policy. ', 'wp-user-frontend' ) . '</p>' .
78
  '<p>' . __( 'As an example while using MailChimp for your marketing email automation service by integrating it with WP User Frontend, some of your data will be passed to MailChimp, including information required to process or support the email marketing services, such as name, email address and any other information that you intend to pass or collect including all collected information through subscription. ', 'wp-user-frontend' ) . '</p>' .
79
+ '<p>' . __( 'Please see the <a href="https://mailchimp.com/legal/privacy/">MailChimp Privacy Policy</a> for more details.', 'wp-user-frontend' ) . '</p>' .
80
+ '</div>';
81
 
82
  return apply_filters( 'wpuf_privacy_policy_content', $content );
83
  }
161
  $wpuf_user = self::get_user( $email_address );
162
 
163
  $data_to_export[] = [
164
+ 'group_id' => 'wpuf-user-data',
165
+ 'group_label' => __( 'WPUF User Data', 'wp-user-frontend' ),
166
+ 'group_description' => __( 'WP User Frontend user data.', 'wp-user-frontend' ),
167
+ 'item_id' => 'wpuf-user',
168
+ 'data' => apply_filters( 'wpuf_privacy_user_data', [], $wpuf_user, $page ),
169
  ];
170
 
171
  /**
283
  */
284
  public static function export_subscription_data( $email_address, $page ) {
285
  $data_to_export[] = [
286
+ 'group_id' => 'wpuf-subscription-data',
287
+ 'group_label' => __( 'WPUF Subscription Data', 'wp-user-frontend' ),
288
+ 'group_description' => __( 'WP User Frontend subscription data.', 'wp-user-frontend' ),
289
+ 'item_id' => 'wpuf-subscription',
290
+ 'data' => self::get_subscription_data( $email_address, $page ),
291
  ];
292
 
293
  $response = [
313
  if ( !empty( $transaction_data ) ) {
314
  foreach ( $transaction_data as $txn_data ) {
315
  $data_to_export[] = [
316
+ 'group_id' => 'wpuf-transaction-data',
317
+ 'group_label' => __( 'WPUF Transaction Data', 'wp-user-frontend' ),
318
+ 'group_description' => __( 'WP User Frontend transaction data.', 'wp-user-frontend' ),
319
+ 'item_id' => 'wpuf-transaction' . $txn_data['transaction_id'],
320
+ 'data' => [
321
  [
322
  'name' => __( 'Transaction ID', 'wp-user-frontend' ),
323
  'value' => $txn_data['transaction_id'],
404
  if ( !empty( $post_data ) ) {
405
  foreach ( $post_data as $data ) {
406
  $data_to_export[] = [
407
+ 'group_id' => 'wpuf-post-data',
408
+ 'group_label' => __( 'WPUF Post Data', 'wp-user-frontend' ),
409
+ 'group_description' => __( 'WP User Frontend post data.', 'wp-user-frontend' ),
410
+ 'item_id' => 'wpuf-posts-' . $data['id'],
411
+ 'data' => [
412
  [
413
  'name' => __( 'Post ID', 'wp-user-frontend' ),
414
  'value' => $data['id'],
includes/class-user-subscription.php CHANGED
@@ -351,7 +351,7 @@ class WPUF_User_Subscription {
351
  if ( !empty( $this->pack['expire'] ) ) {
352
  $expire = ( $this->pack['expire'] == 'unlimited' ) ? ucfirst( 'unlimited' ) : wpuf_date2mysql( $this->pack['expire'] ); ?>
353
  <div class="wpuf-expire">
354
- <strong><?php echo esc_html( 'Expire date:', 'wp-user-frontend' ); ?></strong> <?php echo esc_html( wpuf_get_date( $expire ) ); ?>
355
  </div>
356
  <?php
357
  }
351
  if ( !empty( $this->pack['expire'] ) ) {
352
  $expire = ( $this->pack['expire'] == 'unlimited' ) ? ucfirst( 'unlimited' ) : wpuf_date2mysql( $this->pack['expire'] ); ?>
353
  <div class="wpuf-expire">
354
+ <strong><?php esc_html_e( 'Expire date:', 'wp-user-frontend' ); ?></strong> <?php echo esc_html( wpuf_get_date( $expire ) ); ?>
355
  </div>
356
  <?php
357
  }
includes/class-whats-new.php CHANGED
@@ -90,7 +90,7 @@ class WPUF_Whats_New {
90
  <div class="notice notice-success wpuf-whats-new-notice free">
91
 
92
  <div class="wpuf-whats-new-icon">
93
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ) . '/images/icon-128x128.png'; ?>" alt="WPUF Icon">
94
  </div>
95
 
96
  <div class="wpuf-whats-new-text">
90
  <div class="notice notice-success wpuf-whats-new-notice free">
91
 
92
  <div class="wpuf-whats-new-icon">
93
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ) . '/images/icon-128x128.png'; ?>" alt="WPUF Icon">
94
  </div>
95
 
96
  <div class="wpuf-whats-new-text">
includes/fields/class-abstract-fields.php CHANGED
@@ -749,7 +749,7 @@ abstract class WPUF_Field_Contract {
749
  if ( empty( $field['help'] ) ) {
750
  return;
751
  } ?>
752
- <span class="wpuf-help"><?php echo esc_html( stripslashes( $field['help'] ) ); ?></span>
753
  <?php
754
  }
755
 
749
  if ( empty( $field['help'] ) ) {
750
  return;
751
  } ?>
752
+ <span class="wpuf-help"><?php echo stripslashes( $field['help'] ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></span>
753
  <?php
754
  }
755
 
includes/fields/class-field-checkbox.php CHANGED
@@ -53,7 +53,7 @@ class WPUF_Form_Field_Checkbox extends WPUF_Field_Contract {
53
  ?>
54
  <label <?php echo esc_attr( $field_settings['inline'] ) == 'yes' ? 'class="wpuf-checkbox-inline"' : 'class="wpuf-checkbox-block"'; ?>>
55
  <input type="checkbox" class="<?php echo 'wpuf_' . esc_attr( $field_settings['name'] ) . '_' . esc_attr( $form_id ); ?>" name="<?php echo esc_attr( $field_settings['name'] ); ?>[]" value="<?php echo esc_attr( $value ); ?>"<?php echo in_array( $value, $selected ) ? ' checked="checked"' : ''; ?> />
56
- <?php echo esc_html( $option ); ?>
57
  </label>
58
  <?php
59
  }
53
  ?>
54
  <label <?php echo esc_attr( $field_settings['inline'] ) == 'yes' ? 'class="wpuf-checkbox-inline"' : 'class="wpuf-checkbox-block"'; ?>>
55
  <input type="checkbox" class="<?php echo 'wpuf_' . esc_attr( $field_settings['name'] ) . '_' . esc_attr( $form_id ); ?>" name="<?php echo esc_attr( $field_settings['name'] ); ?>[]" value="<?php echo esc_attr( $value ); ?>"<?php echo in_array( $value, $selected ) ? ' checked="checked"' : ''; ?> />
56
+ <?php echo $option; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
57
  </label>
58
  <?php
59
  }
includes/fields/class-field-dropdown.php CHANGED
@@ -28,6 +28,15 @@ class WPUF_Form_Field_Dropdown extends WPUF_Field_Contract {
28
  $selected = isset( $field_settings['selected'] ) ? $field_settings['selected'] : '';
29
  }
30
 
 
 
 
 
 
 
 
 
 
31
  $name = $field_settings['name'];
32
 
33
  $this->field_print_label( $field_settings, $form_id ); ?>
@@ -118,4 +127,37 @@ class WPUF_Form_Field_Dropdown extends WPUF_Field_Contract {
118
 
119
  return isset( $field['options'][$val] ) ? $field['options'][$val] : '';
120
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
121
  }
28
  $selected = isset( $field_settings['selected'] ) ? $field_settings['selected'] : '';
29
  }
30
 
31
+ /* Workaround for Events calendar venue and organizer field render in wpuf custom fields metabox */
32
+ if ( 'tribe_events' == get_post_type( $post_id ) ) {
33
+ if ( '_EventVenueID' == $field_settings['name'] ) {
34
+ $field_settings['options'] = $this->get_posts( 'tribe_venue' );
35
+ } else if ( '_EventOrganizerID' == $field_settings['name'] ) {
36
+ $field_settings['options'] = $this->get_posts( 'tribe_organizer' );
37
+ }
38
+ }
39
+
40
  $name = $field_settings['name'];
41
 
42
  $this->field_print_label( $field_settings, $form_id ); ?>
127
 
128
  return isset( $field['options'][$val] ) ? $field['options'][$val] : '';
129
  }
130
+
131
+ public function get_posts( $post_type ) {
132
+ $args = array(
133
+ 'post_type' => $post_type,
134
+ 'post_status' => 'publish',
135
+ 'orderby' => 'DESC',
136
+ 'order' => 'ID',
137
+ 'posts_per_page' => -1
138
+ );
139
+
140
+ $query = new WP_Query( $args );
141
+
142
+ $posts = array();
143
+
144
+ if ( $query->have_posts() ) {
145
+
146
+ $i = 0;
147
+
148
+ while ( $query->have_posts() ) {
149
+ $query->the_post();
150
+
151
+ $post = $query->posts[ $i ];
152
+
153
+ $posts[ $post->ID ] = $post->post_title;
154
+
155
+ $i++;
156
+ }
157
+ }
158
+
159
+ wp_reset_postdata();
160
+
161
+ return $posts;
162
+ }
163
  }
includes/fields/class-field-featured-image.php CHANGED
@@ -142,7 +142,6 @@ class WPUF_Form_Field_Featured_Image extends WPUF_Field_Contract {
142
  'button_label' => __( 'Featured Image', 'wp-user-frontend' ),
143
  'is_meta' => 'no',
144
  'name' => 'featured_image',
145
- 'max_size' => '1024',
146
  'count' => '1',
147
  'id' => 0,
148
  'is_new' => true,
142
  'button_label' => __( 'Featured Image', 'wp-user-frontend' ),
143
  'is_meta' => 'no',
144
  'name' => 'featured_image',
 
145
  'count' => '1',
146
  'id' => 0,
147
  'is_new' => true,
includes/fields/class-field-image.php CHANGED
@@ -58,31 +58,7 @@ class WPUF_Form_Field_Image extends WPUF_Field_Contract {
58
  <?php
59
  if ( $has_images ) {
60
  foreach ( $images as $attach_id ) {
61
- echo wp_kses( WPUF_Upload::attach_html( $attach_id, $field_settings['name'] ),[
62
- 'li' => [
63
- 'class' => []
64
- ],
65
- 'div' => [
66
- 'class' => []
67
- ],
68
- 'img' => [
69
- 'src' => [],
70
- 'alt' => [],
71
- ],
72
- 'input' => [
73
- 'type' => [],
74
- 'name' => [],
75
- 'value' => [],
76
- ],
77
- 'a' => [
78
- 'href' => [],
79
- 'class' => [],
80
- 'data-attach_id' => [],
81
- ],
82
- 'span' => [
83
- 'class' => []
84
- ]
85
- ] );
86
  }
87
  } ?>
88
  </ul>
@@ -159,8 +135,6 @@ class WPUF_Form_Field_Image extends WPUF_Field_Contract {
159
  'count' => '1',
160
  'button_label' => __( 'Select Image', 'wp-user-frontend' ),
161
  'is_meta' => 'yes',
162
- 'max_size' => '1024',
163
- 'count' => '1',
164
  'id' => 0,
165
  'is_new' => true,
166
  'show_in_post' => 'yes',
58
  <?php
59
  if ( $has_images ) {
60
  foreach ( $images as $attach_id ) {
61
+ echo WPUF_Upload::attach_html( $attach_id, $field_settings['name'] ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
62
  }
63
  } ?>
64
  </ul>
135
  'count' => '1',
136
  'button_label' => __( 'Select Image', 'wp-user-frontend' ),
137
  'is_meta' => 'yes',
 
 
138
  'id' => 0,
139
  'is_new' => true,
140
  'show_in_post' => 'yes',
includes/fields/class-field-post-taxonomy.php CHANGED
@@ -144,7 +144,6 @@ class WPUF_Form_Field_Post_Taxonomy extends WPUF_Field_Contract {
144
  'exclude' => $attr['exclude'],
145
  'orderby' => $attr['orderby'],
146
  'order' => $attr['order'],
147
- 'name' => $attr['name'],
148
  // 'last_term_id' => isset( $attr['parent_cat'] ) ? $attr['parent_cat'] : '',
149
  //'term_id' => $selected
150
  ];
@@ -225,7 +224,7 @@ class WPUF_Form_Field_Post_Taxonomy extends WPUF_Field_Contract {
225
  'hide_empty' => 0,
226
  'orderby' => isset( $attr['orderby'] ) ? $attr['orderby'] : 'name',
227
  'order' => isset( $attr['order'] ) ? $attr['order'] : 'ASC',
228
- 'name' => $this->taxonomy . '[]',
229
  'taxonomy' => $this->taxonomy,
230
  'echo' => 0,
231
  'title_li' => '',
@@ -355,7 +354,7 @@ class WPUF_Form_Field_Post_Taxonomy extends WPUF_Field_Contract {
355
  // return sanitize_text_field($_POST[$field['name']]);
356
  check_ajax_referer( 'wpuf_form_add' );
357
 
358
- return $val = isset( $_POST[$field['name']] ) ? sanitize_text_field( wp_unslash( $_POST[$field['name']] ) ) : '';
359
 
360
  return isset( $field['options'][$val] ) ? $field['options'][$val] : '';
361
  }
144
  'exclude' => $attr['exclude'],
145
  'orderby' => $attr['orderby'],
146
  'order' => $attr['order'],
 
147
  // 'last_term_id' => isset( $attr['parent_cat'] ) ? $attr['parent_cat'] : '',
148
  //'term_id' => $selected
149
  ];
224
  'hide_empty' => 0,
225
  'orderby' => isset( $attr['orderby'] ) ? $attr['orderby'] : 'name',
226
  'order' => isset( $attr['order'] ) ? $attr['order'] : 'ASC',
227
+ 'name' => $this->taxonomy,
228
  'taxonomy' => $this->taxonomy,
229
  'echo' => 0,
230
  'title_li' => '',
354
  // return sanitize_text_field($_POST[$field['name']]);
355
  check_ajax_referer( 'wpuf_form_add' );
356
 
357
+ $val = isset( $_POST[$field['name']] ) ? sanitize_text_field( wp_unslash( $_POST[$field['name']] ) ) : '';
358
 
359
  return isset( $field['options'][$val] ) ? $field['options'][$val] : '';
360
  }
includes/fields/class-field-radio.php CHANGED
@@ -52,7 +52,7 @@ class WPUF_Form_Field_Radio extends WPUF_Form_Field_Checkbox {
52
  type="radio"
53
  value="<?php echo esc_attr( $value ); ?>"<?php checked( $selected, $value ); ?>
54
  />
55
- <?php echo esc_html( $option ); ?>
56
  </label>
57
  <?php
58
  }
52
  type="radio"
53
  value="<?php echo esc_attr( $value ); ?>"<?php checked( $selected, $value ); ?>
54
  />
55
+ <?php echo $option; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
56
  </label>
57
  <?php
58
  }
includes/fields/class-field-recaptcha.php CHANGED
@@ -51,10 +51,10 @@ class WPUF_Form_Field_reCaptcha extends WPUF_Field_Contract {
51
 
52
  <div class="wpuf-fields <?php echo esc_attr( ' wpuf_' . $field_settings['name'] . '_' . $form_id ); ?>">
53
  <script>
54
- function weformsRecaptchaCallback(token) {
55
  jQuery('[name="g-recaptcha-response"]').val(token);
56
  jQuery('.wpuf-submit-button').attr('disabled',false).show();
57
- jQuery('.weforms_submit_btn_recaptcha').hide();
58
  }
59
 
60
  jQuery(document).ready( function($) {
@@ -67,41 +67,41 @@ class WPUF_Form_Field_reCaptcha extends WPUF_Field_Contract {
67
 
68
  if ( $is_invisible ) { ?>
69
 
70
- <script src="https://www.google.com/recaptcha/api.js?onload=weFormsreCaptchaLoaded&render=explicit&hl=en" async defer></script>
71
 
72
  <script>
73
 
74
  jQuery(document).ready(function($) {
75
  var btn = $('.wpuf-submit-button');
76
- var gc_btn = btn.clone().removeClass().addClass('weforms_submit_btn_recaptcha').attr('disabled',false);
77
  btn.after(gc_btn);
78
  btn.hide();
79
 
80
- $(document).on('click','.weforms_submit_btn_recaptcha',function(e){
81
  e.preventDefault();
82
  e.stopPropagation();
83
  grecaptcha.execute();
84
  })
85
  });
86
 
87
- var weFormsreCaptchaLoaded = function() {
88
 
89
  grecaptcha.render('recaptcha', {
90
  'size' : 'invisible',
91
  'sitekey' : '<?php echo esc_attr( $public_key ); ?>',
92
- 'callback' : weformsRecaptchaCallback
93
  });
94
 
95
  grecaptcha.execute();
96
  };
97
  </script>
98
 
99
- <div id='recaptcha' class="g-recaptcha" data-theme="<?php echo esc_attr( $theme ); ?>" data-sitekey="<?php echo esc_attr( $public_key ); ?>" data-callback="weformsRecaptchaCallback" data-size="invisible"></div>
100
 
101
  <?php } else { ?>
102
 
103
  <script src="https://www.google.com/recaptcha/api.js"></script>
104
- <div id='recaptcha' data-theme="<?php echo esc_attr( $theme ); ?>" class="g-recaptcha" data-sitekey="<?php echo esc_attr( $public_key ); ?>" data-callback="weformsRecaptchaCallback"></div>
105
  <?php } ?>
106
 
107
  </div>
51
 
52
  <div class="wpuf-fields <?php echo esc_attr( ' wpuf_' . $field_settings['name'] . '_' . $form_id ); ?>">
53
  <script>
54
+ function wpufRecaptchaCallback(token) {
55
  jQuery('[name="g-recaptcha-response"]').val(token);
56
  jQuery('.wpuf-submit-button').attr('disabled',false).show();
57
+ jQuery('.wpuf-submit-btn-recaptcha').hide();
58
  }
59
 
60
  jQuery(document).ready( function($) {
67
 
68
  if ( $is_invisible ) { ?>
69
 
70
+ <script src="https://www.google.com/recaptcha/api.js?onload=wpufreCaptchaLoaded&render=explicit&hl=en" async defer></script>
71
 
72
  <script>
73
 
74
  jQuery(document).ready(function($) {
75
  var btn = $('.wpuf-submit-button');
76
+ var gc_btn = btn.clone().removeClass().addClass('wpuf-submit-btn-recaptcha').attr('disabled',false);
77
  btn.after(gc_btn);
78
  btn.hide();
79
 
80
+ $(document).on('click','.wpuf-submit-btn-recaptcha',function(e){
81
  e.preventDefault();
82
  e.stopPropagation();
83
  grecaptcha.execute();
84
  })
85
  });
86
 
87
+ var wpufreCaptchaLoaded = function() {
88
 
89
  grecaptcha.render('recaptcha', {
90
  'size' : 'invisible',
91
  'sitekey' : '<?php echo esc_attr( $public_key ); ?>',
92
+ 'callback' : wpufRecaptchaCallback
93
  });
94
 
95
  grecaptcha.execute();
96
  };
97
  </script>
98
 
99
+ <div id='recaptcha' class="g-recaptcha" data-theme="<?php echo esc_attr( $theme ); ?>" data-sitekey="<?php echo esc_attr( $public_key ); ?>" data-callback="wpufRecaptchaCallback" data-size="invisible"></div>
100
 
101
  <?php } else { ?>
102
 
103
  <script src="https://www.google.com/recaptcha/api.js"></script>
104
+ <div id='recaptcha' data-theme="<?php echo esc_attr( $theme ); ?>" class="g-recaptcha" data-sitekey="<?php echo esc_attr( $public_key ); ?>" data-callback="wpufRecaptchaCallback"></div>
105
  <?php } ?>
106
 
107
  </div>
includes/free/class-login.php CHANGED
@@ -369,7 +369,7 @@ class WPUF_Simple_Login {
369
 
370
  return;
371
  } else {
372
- $this->messages[] = __( 'Enter your new password below..', 'wp-user-frontend' );
373
 
374
  wpuf_load_template( 'reset-pass-form.php', $args );
375
  }
369
 
370
  return;
371
  } else {
372
+ $this->messages[] = __( 'Enter your new password below.', 'wp-user-frontend' );
373
 
374
  wpuf_load_template( 'reset-pass-form.php', $args );
375
  }
includes/free/edit-user.php CHANGED
@@ -158,7 +158,7 @@ function wpuf_add_user() {
158
  </label>
159
  <input type="text" name="user_login" id="user_login" minlength="2" value="<?php if ( isset( $_POST['user_login'] ) ) {
160
  $u_login = sanitize_text_field( wp_unslash( $_POST['user_login'] ) );
161
- echo esc_html( wpuf_clean_tags( $u_login ) );
162
  } ?>">
163
  <div class="clear"></div>
164
  </li>
@@ -169,7 +169,7 @@ function wpuf_add_user() {
169
  </label>
170
  <input type="text" name="user_email" id="user_email" minlength="2" value="<?php if ( isset( $_POST['user_email'] ) ) {
171
  $u_email = sanitize_email( wp_unslash( $_POST['user_email'] ) );
172
- echo esc_html( wpuf_clean_tags( $u_email ) );
173
  } ?>">
174
  <div class="clear"></div>
175
  </li>
158
  </label>
159
  <input type="text" name="user_login" id="user_login" minlength="2" value="<?php if ( isset( $_POST['user_login'] ) ) {
160
  $u_login = sanitize_text_field( wp_unslash( $_POST['user_login'] ) );
161
+ echo $u_login;
162
  } ?>">
163
  <div class="clear"></div>
164
  </li>
169
  </label>
170
  <input type="text" name="user_email" id="user_email" minlength="2" value="<?php if ( isset( $_POST['user_email'] ) ) {
171
  $u_email = sanitize_email( wp_unslash( $_POST['user_email'] ) );
172
+ echo $u_email;
173
  } ?>">
174
  <div class="clear"></div>
175
  </li>
includes/setup-wizard.php CHANGED
@@ -219,7 +219,7 @@ class WPUF_Setup_Wizard {
219
  </style>
220
  </head>
221
  <body class="wpuf-setup wp-core-ui">
222
- <h1 id="wpuf-logo"><a href="https://wedevs.com/wp-user-frontend-pro/"><img src="<?php echo esc_attr( WPUF_ASSET_URI ) . '/images/icon-128x128.png'; ?>" alt="WPUF" /></a></h1>
223
  <?php
224
  }
225
 
219
  </style>
220
  </head>
221
  <body class="wpuf-setup wp-core-ui">
222
+ <h1 id="wpuf-logo"><a href="https://wedevs.com/wp-user-frontend-pro/"><img src="<?php echo esc_url( WPUF_ASSET_URI ) . '/images/icon-128x128.png'; ?>" alt="WPUF" /></a></h1>
223
  <?php
224
  }
225
 
languages/wp-user-frontend.pot CHANGED
@@ -2,9 +2,9 @@
2
  # This file is distributed under the GPL2 or later.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: WP User Frontend 3.1.17\n"
6
  "Report-Msgid-Bugs-To: https://wedevs.com/contact/\n"
7
- "POT-Creation-Date: 2020-01-31 06:48:49+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -28,62 +28,54 @@ msgstr ""
28
  msgid "WP User Frontend"
29
  msgstr ""
30
 
31
- #: admin/class-admin-settings.php:84
32
  msgid "User Frontend"
33
  msgstr ""
34
 
35
- #: admin/class-admin-settings.php:86 admin/post-forms-list-table-view.php:4
36
  msgid "Post Forms"
37
  msgstr ""
38
 
39
- #: admin/class-admin-settings.php:95 admin/weforms.php:2
40
- msgid "weForms"
41
- msgstr ""
42
-
43
- #: admin/class-admin-settings.php:95
44
- msgid "Contact Form"
45
- msgstr ""
46
-
47
- #: admin/class-admin-settings.php:99
48
  msgid "Subscriptions"
49
  msgstr ""
50
 
51
- #: admin/class-admin-settings.php:105 admin/class-tools.php:389
52
  #: admin/transactions.php:2
53
  msgid "Transactions"
54
  msgstr ""
55
 
56
- #: admin/class-admin-settings.php:108 admin/tools.php:13
57
  msgid "Tools"
58
  msgstr ""
59
 
60
- #: admin/class-admin-settings.php:113
61
  msgid "Premium"
62
  msgstr ""
63
 
64
- #: admin/class-admin-settings.php:115
65
  msgid "Help"
66
  msgstr ""
67
 
68
- #: admin/class-admin-settings.php:115
69
  msgid "<span style=\"color:#f18500\">Help</span>"
70
  msgstr ""
71
 
72
- #: admin/class-admin-settings.php:116 admin/class-admin-settings.php:156
73
  #: admin/form-builder/views/form-builder.php:9 includes/setup-wizard.php:125
74
  msgid "Settings"
75
  msgstr ""
76
 
77
- #: admin/class-admin-settings.php:118 admin/class-admin-subscription.php:204
78
  #: admin/subscribers.php:18
79
  msgid "Subscribers"
80
  msgstr ""
81
 
82
- #: admin/class-admin-settings.php:377
83
  msgid "Number of items per page:"
84
  msgstr ""
85
 
86
- #: admin/class-admin-settings.php:407
87
  msgid "Post lock has been cleared"
88
  msgstr ""
89
 
@@ -131,7 +123,7 @@ msgstr ""
131
  msgid "Amount"
132
  msgstr ""
133
 
134
- #: admin/class-admin-subscription.php:205 includes/class-privacy.php:480
135
  #: includes/free/subscription.php:8
136
  msgid "Recurring"
137
  msgstr ""
@@ -141,7 +133,7 @@ msgid "Duration"
141
  msgstr ""
142
 
143
  #: admin/class-admin-subscription.php:226
144
- #: admin/class-admin-subscription.php:596 class/frontend-account.php:249
145
  #: class/subscription.php:879 includes/class-user-subscription.php:305
146
  #: templates/subscriptions/pack-details.php:24
147
  msgid "Free"
@@ -211,7 +203,7 @@ msgstr ""
211
  msgid "Post Expiration Time"
212
  msgstr ""
213
 
214
- #: admin/class-admin-subscription.php:451 admin/html/form-settings-post.php:57
215
  #: admin/post-forms-list-table.php:313
216
  msgid "Post Status"
217
  msgstr ""
@@ -264,7 +256,7 @@ msgstr ""
264
  msgid "For each %s %s"
265
  msgstr ""
266
 
267
- #: admin/class-admin-subscription.php:601 class/frontend-account.php:253
268
  msgid ", for %s installments"
269
  msgstr ""
270
 
@@ -289,6 +281,8 @@ msgid "Subscription Expiration Info"
289
  msgstr ""
290
 
291
  #: admin/class-admin-subscription.php:669
 
 
292
  msgid "Expire date:"
293
  msgstr ""
294
 
@@ -305,10 +299,10 @@ msgid "Assign Package"
305
  msgstr ""
306
 
307
  #: admin/class-admin-subscription.php:774
308
- #: admin/form-builder/class-wpuf-admin-form-builder.php:264
309
  #: class/payment.php:205 class/subscription.php:783
310
  #: includes/class-list-table-subscribers.php:138 lib/appsero/Insights.php:764
311
- #: templates/dashboard/subscription.php:59
312
  msgid "Cancel"
313
  msgstr ""
314
 
@@ -342,7 +336,7 @@ msgstr ""
342
 
343
  #: admin/class-tools.php:44 admin/class-tools.php:111
344
  #: admin/post-forms-list-table.php:43 class/transactions-list-table.php:87
345
- #: includes/class-list-table-subscribers.php:136 wpuf-functions.php:2830
346
  msgid "All"
347
  msgstr ""
348
 
@@ -429,10 +423,20 @@ msgstr ""
429
  msgid "Reset Settings"
430
  msgstr ""
431
 
 
 
 
 
 
 
432
  #: admin/class-tools.php:376
433
  msgid "Delete Forms"
434
  msgstr ""
435
 
 
 
 
 
436
  #: admin/class-tools.php:381
437
  msgid "Delete Post Forms"
438
  msgstr ""
@@ -511,15 +515,15 @@ msgstr ""
511
 
512
  #: admin/form-builder/assets/js/components/form-featured_image/template.php:6
513
  #: admin/form-builder/assets/js/components/form-image_upload/template.php:6
514
- #: class/render-form.php:1658
515
  #: includes/fields/class-field-featured-image.php:122
516
- #: includes/fields/class-field-image.php:139
517
- #: includes/fields/class-field-image.php:160
518
  msgid "Select Image"
519
  msgstr ""
520
 
521
  #: admin/form-builder/assets/js/components/form-post_content/template.php:4
522
- #: class/render-form.php:1054 includes/fields/class-field-post-content.php:48
523
  msgid "Insert Photo"
524
  msgstr ""
525
 
@@ -536,6 +540,7 @@ msgid "form data is missing"
536
  msgstr ""
537
 
538
  #: admin/form-builder/class-wpuf-admin-form-builder-ajax.php:35
 
539
  #: admin/promotion.php:290 admin/promotion.php:294 admin/promotion.php:312
540
  #: admin/promotion.php:316
541
  msgid "Unauthorized operation"
@@ -545,79 +550,83 @@ msgstr ""
545
  msgid "Invalid form id"
546
  msgstr ""
547
 
548
- #: admin/form-builder/class-wpuf-admin-form-builder.php:259
 
 
 
 
549
  msgid "Advanced Options"
550
  msgstr ""
551
 
552
- #: admin/form-builder/class-wpuf-admin-form-builder.php:260
553
  msgid "Are you sure you want to delete this field?"
554
  msgstr ""
555
 
556
- #: admin/form-builder/class-wpuf-admin-form-builder.php:261
557
- #: admin/posting.php:71 class/asset-loader.php:56 wpuf.php:722
558
  msgid "Yes, delete it"
559
  msgstr ""
560
 
561
- #: admin/form-builder/class-wpuf-admin-form-builder.php:262
562
- #: admin/posting.php:72 class/asset-loader.php:57 wpuf.php:723
563
  msgid "No, cancel it"
564
  msgstr ""
565
 
566
- #: admin/form-builder/class-wpuf-admin-form-builder.php:263
567
  msgid "OK"
568
  msgstr ""
569
 
570
- #: admin/form-builder/class-wpuf-admin-form-builder.php:265
571
  #: includes/free/admin/shortcode-builder.php:70
572
  msgid "Close"
573
  msgstr ""
574
 
575
- #: admin/form-builder/class-wpuf-admin-form-builder.php:266
576
  msgid "This field must contain at least one choice"
577
  msgstr ""
578
 
579
- #: admin/form-builder/class-wpuf-admin-form-builder.php:267
580
  #: includes/fields/class-field-checkbox.php:112
581
- #: includes/fields/class-field-dropdown.php:96
582
  #: includes/fields/class-field-multidropdown.php:82
583
  #: includes/fields/class-field-radio.php:108
584
  msgid "Option"
585
  msgstr ""
586
 
587
- #: admin/form-builder/class-wpuf-admin-form-builder.php:268
588
  msgid "Column"
589
  msgstr ""
590
 
591
- #: admin/form-builder/class-wpuf-admin-form-builder.php:269
592
  msgid "This field must contain at least one column"
593
  msgstr ""
594
 
595
- #: admin/form-builder/class-wpuf-admin-form-builder.php:270
596
  msgid "is available in Pro version"
597
  msgstr ""
598
 
599
- #: admin/form-builder/class-wpuf-admin-form-builder.php:271
600
  msgid "Please upgrade to the Pro version to unlock all these awesome features"
601
  msgstr ""
602
 
603
- #: admin/form-builder/class-wpuf-admin-form-builder.php:272
604
  msgid "Get the Pro version"
605
  msgstr ""
606
 
607
- #: admin/form-builder/class-wpuf-admin-form-builder.php:273
608
  #: includes/fields/class-abstract-fields.php:384
609
  msgid "Select"
610
  msgstr ""
611
 
612
- #: admin/form-builder/class-wpuf-admin-form-builder.php:274
613
  msgid "Saved form data"
614
  msgstr ""
615
 
616
- #: admin/form-builder/class-wpuf-admin-form-builder.php:275
617
  msgid "You have unsaved changes."
618
  msgstr ""
619
 
620
- #: admin/form-builder/class-wpuf-admin-form-builder.php:276
621
  #: admin/form-builder/views/form-builder.php:49
622
  msgid "Click to copy shortcode"
623
  msgstr ""
@@ -719,7 +728,7 @@ msgstr ""
719
  #: admin/form.php:71 admin/form.php:109 admin/installer.php:86
720
  #: admin/post-forms-list-table.php:406 class/subscription.php:402
721
  #: includes/free/admin/shortcode-button.php:87 includes/free/edit-user.php:104
722
- #: templates/dashboard/posts.php:163 templates/dashboard.php:254
723
  msgid "Edit"
724
  msgstr ""
725
 
@@ -925,32 +934,32 @@ msgid "No Change"
925
  msgstr ""
926
 
927
  #: admin/html/form-settings-post-edit.php:31
928
- #: admin/html/form-settings-post.php:144 includes/free/form-element.php:362
929
  msgid "Redirect To"
930
  msgstr ""
931
 
932
  #: admin/html/form-settings-post-edit.php:36
933
- #: admin/html/form-settings-post.php:149
934
  msgid "Newly created post"
935
  msgstr ""
936
 
937
  #: admin/html/form-settings-post-edit.php:37
938
- #: admin/html/form-settings-post.php:150 includes/free/form-element.php:367
939
  msgid "Same Page"
940
  msgstr ""
941
 
942
  #: admin/html/form-settings-post-edit.php:38
943
- #: admin/html/form-settings-post.php:151 includes/free/form-element.php:368
944
  msgid "To a page"
945
  msgstr ""
946
 
947
  #: admin/html/form-settings-post-edit.php:39
948
- #: admin/html/form-settings-post.php:152 includes/free/form-element.php:369
949
  msgid "To a custom URL"
950
  msgstr ""
951
 
952
  #: admin/html/form-settings-post-edit.php:48
953
- #: admin/html/form-settings-post.php:161 includes/free/form-element.php:377
954
  msgid "After successfull submit, where the page will redirect to"
955
  msgstr ""
956
 
@@ -959,12 +968,12 @@ msgid "Post Update Message"
959
  msgstr ""
960
 
961
  #: admin/html/form-settings-post-edit.php:61
962
- #: admin/html/form-settings-post.php:174 includes/free/form-element.php:397
963
  msgid "Page"
964
  msgstr ""
965
 
966
  #: admin/html/form-settings-post-edit.php:76
967
- #: admin/html/form-settings-post.php:189 includes/free/form-element.php:411
968
  msgid "Custom URL"
969
  msgstr ""
970
 
@@ -1001,65 +1010,61 @@ msgstr ""
1001
  msgid "Submit"
1002
  msgstr ""
1003
 
1004
- #: admin/html/form-settings-post.php:30 admin/post-forms-list-table.php:312
1005
  msgid "Post Type"
1006
  msgstr ""
1007
 
1008
- #: admin/html/form-settings-post.php:52
1009
  msgid "Custom Post Type will appear here. "
1010
  msgstr ""
1011
 
1012
- #: admin/html/form-settings-post.php:52
1013
  msgid "Learn More "
1014
  msgstr ""
1015
 
1016
- #: admin/html/form-settings-post.php:72
1017
  msgid "Post Format"
1018
  msgstr ""
1019
 
1020
- #: admin/html/form-settings-post.php:75
1021
  msgid "- None -"
1022
  msgstr ""
1023
 
1024
- #: admin/html/form-settings-post.php:90
1025
- msgid "Default Post Category"
1026
- msgstr ""
1027
-
1028
- #: admin/html/form-settings-post.php:139
1029
  msgid ""
1030
  "If users are not allowed to choose any category, this category will be used "
1031
  "instead (if post type supports)"
1032
  msgstr ""
1033
 
1034
- #: admin/html/form-settings-post.php:167
1035
  msgid "Message to show"
1036
  msgstr ""
1037
 
1038
- #: admin/html/form-settings-post.php:196
1039
  msgid "Comment Status"
1040
  msgstr ""
1041
 
1042
- #: admin/html/form-settings-post.php:199
1043
  msgid "Open"
1044
  msgstr ""
1045
 
1046
- #: admin/html/form-settings-post.php:200
1047
  msgid "Closed"
1048
  msgstr ""
1049
 
1050
- #: admin/html/form-settings-post.php:206
1051
  msgid "Submit Post Button text"
1052
  msgstr ""
1053
 
1054
- #: admin/html/form-settings-post.php:213
1055
  msgid "Post Draft"
1056
  msgstr ""
1057
 
1058
- #: admin/html/form-settings-post.php:218
1059
  msgid "Enable Saving as draft"
1060
  msgstr ""
1061
 
1062
- #: admin/html/form-settings-post.php:220
1063
  msgid "It will show a button to save as draft"
1064
  msgstr ""
1065
 
@@ -1070,7 +1075,7 @@ msgid "Name"
1070
  msgstr ""
1071
 
1072
  #: admin/html/form-submission-restriction.php:12 admin/html/support.php:223
1073
- #: class/transactions-list-table.php:50 includes/class-privacy.php:361
1074
  #: includes/free/edit-user.php:168 templates/registration-form.php:47
1075
  msgid "Email"
1076
  msgstr ""
@@ -1267,7 +1272,7 @@ msgid ""
1267
  "<strong>offers</strong> and <strong>news updates</strong>."
1268
  msgstr ""
1269
 
1270
- #: admin/html/support.php:218 includes/class-privacy.php:353
1271
  #: includes/free/edit-profile.php:106
1272
  msgid "First Name"
1273
  msgstr ""
@@ -1377,68 +1382,179 @@ msgid "Contact Support"
1377
  msgstr ""
1378
 
1379
  #: admin/html/whats-new.php:8
1380
- msgid "Nonce not verify on login"
1381
  msgstr ""
1382
 
1383
  #: admin/html/whats-new.php:10
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1384
  msgid "Return of function wp_verify_nonce() was ignored."
1385
  msgstr ""
1386
 
1387
- #: admin/html/whats-new.php:19
1388
  msgid "Option to set which tab shows as active on the account page"
1389
  msgstr ""
1390
 
1391
- #: admin/html/whats-new.php:21
1392
  msgid ""
1393
  "Option to set which tab shows as active on the account page. To configure "
1394
  "this setting navigate to wp-admin->User Frontend->Settings->My "
1395
  "Account->Active Tab "
1396
  msgstr ""
1397
 
1398
- #: admin/html/whats-new.php:24
1399
  msgid "Unlock option was unavailable after the post being locked"
1400
  msgstr ""
1401
 
1402
- #: admin/html/whats-new.php:26
1403
  msgid "Unlock option was unavailable after the post being locked."
1404
  msgstr ""
1405
 
1406
- #: admin/html/whats-new.php:29
1407
  msgid "Gutenberg block of WPUF didn't work on bedrock installation"
1408
  msgstr ""
1409
 
1410
- #: admin/html/whats-new.php:31
1411
  msgid "Gutenberg block of WPUF didn't work on bedrock installation."
1412
  msgstr ""
1413
 
1414
- #: admin/html/whats-new.php:34
1415
  msgid "Sending admin payment received email twice"
1416
  msgstr ""
1417
 
1418
- #: admin/html/whats-new.php:36
1419
  msgid ""
1420
  "After processing payment admin & user was receiving payment received email "
1421
  "twice."
1422
  msgstr ""
1423
 
1424
- #: admin/html/whats-new.php:39
1425
  msgid ""
1426
  "Add shortcode support to display post information in the Post Expiration "
1427
  "Message"
1428
  msgstr ""
1429
 
1430
- #: admin/html/whats-new.php:41
1431
  msgid ""
1432
  "Add shortcode support to display post information in the Post Expiration "
1433
  "Message. You can use: <strong>{post_author} {post_url} {blogname} "
1434
  "{post_title} {post_status}</strong>"
1435
  msgstr ""
1436
 
1437
- #: admin/html/whats-new.php:44
1438
  msgid "Add optin on the setup wizard"
1439
  msgstr ""
1440
 
1441
- #: admin/html/whats-new.php:46
1442
  msgid ""
1443
  "Added optin on the setup wizard, admin can choose whether he/she wants to "
1444
  "share server environment details (php, mysql, server, WordPress versions), "
@@ -1446,126 +1562,126 @@ msgid ""
1446
  "name and url, admin name and email address. No sensitive data is tracked"
1447
  msgstr ""
1448
 
1449
- #: admin/html/whats-new.php:55
1450
  msgid "Post Owner problem"
1451
  msgstr ""
1452
 
1453
- #: admin/html/whats-new.php:57
1454
  msgid ""
1455
  "Posts were not assigned to the selected default post owner, this issue has "
1456
  "been fixed."
1457
  msgstr ""
1458
 
1459
- #: admin/html/whats-new.php:60
1460
  msgid "Google reCaptcha was not working"
1461
  msgstr ""
1462
 
1463
- #: admin/html/whats-new.php:62
1464
  msgid ""
1465
  "Google reCaptcha was not working, users could submit the form without "
1466
  "reCaptcha validation."
1467
  msgstr ""
1468
 
1469
- #: admin/html/whats-new.php:71
1470
  msgid "Added column field"
1471
  msgstr ""
1472
 
1473
- #: admin/html/whats-new.php:76
1474
  msgid "Unable to render the events on the front-end dashboard"
1475
  msgstr ""
1476
 
1477
- #: admin/html/whats-new.php:78
1478
  msgid ""
1479
  "On the frontend dashboard, the submitted events were not showing, you will "
1480
  "get it fixed in this version."
1481
  msgstr ""
1482
 
1483
- #: admin/html/whats-new.php:81
1484
  msgid "Page order getting 0(zero) after editing from the frontend"
1485
  msgstr ""
1486
 
1487
- #: admin/html/whats-new.php:83
1488
  msgid ""
1489
  "Page order was not saving while editing a post using WPUF form, it has been "
1490
  "fixed."
1491
  msgstr ""
1492
 
1493
- #: admin/html/whats-new.php:86
1494
  msgid "Text input field for taxonomies not working"
1495
  msgstr ""
1496
 
1497
- #: admin/html/whats-new.php:88
1498
  msgid ""
1499
  "When taxonomy field type is set to `Text Input` then a fatal error was "
1500
  "showing on the frontend, no error with taxonomy field in the latest version."
1501
  msgstr ""
1502
 
1503
- #: admin/html/whats-new.php:91
1504
  msgid ""
1505
  "In radio and checkbox field use conditional logic that value does not save "
1506
  "in database"
1507
  msgstr ""
1508
 
1509
- #: admin/html/whats-new.php:93
1510
  msgid ""
1511
  "The selected value of radio and checkbox field were not showing while "
1512
  "editing posts from the backend or frontend, you can see the selected value "
1513
  "in this version."
1514
  msgstr ""
1515
 
1516
- #: admin/html/whats-new.php:96
1517
  msgid "The args param not working with get_avatar filter"
1518
  msgstr ""
1519
 
1520
- #: admin/html/whats-new.php:98
1521
  msgid "The args parameter did not exist with get_avatar filter, which now exists."
1522
  msgstr ""
1523
 
1524
- #: admin/html/whats-new.php:101
1525
  msgid "The item in ajax taxonomy field was not selected"
1526
  msgstr ""
1527
 
1528
- #: admin/html/whats-new.php:103
1529
  msgid ""
1530
  "When the taxonomy field type is set to Ajax, the submitted terms were not "
1531
  "showing in the backend and frontend which have been fixed."
1532
  msgstr ""
1533
 
1534
- #: admin/html/whats-new.php:112
1535
  msgid "Unable to send new user registration email"
1536
  msgstr ""
1537
 
1538
- #: admin/html/whats-new.php:114
1539
  msgid ""
1540
  "WP User Frontend default registration form `[wpuf-registration]` was unable "
1541
  "to send the new user registration email."
1542
  msgstr ""
1543
 
1544
- #: admin/html/whats-new.php:117
1545
  msgid "WPUF forms block compatibility issue with the latest WP version"
1546
  msgstr ""
1547
 
1548
- #: admin/html/whats-new.php:119
1549
  msgid ""
1550
  "With the latest version of WordPress the gutenberg block of WP User "
1551
  "Frontend were not working. In this version, you will get it fixed."
1552
  msgstr ""
1553
 
1554
- #: admin/html/whats-new.php:122
1555
  msgid "Page not update where `[wpuf_dashboard]` shortcode exist"
1556
  msgstr ""
1557
 
1558
- #: admin/html/whats-new.php:124
1559
  msgid ""
1560
  "While using Gutenberg, the page were not being updated with WPUF shortcode "
1561
  "[wpuf dashboard]"
1562
  msgstr ""
1563
 
1564
- #: admin/html/whats-new.php:127
1565
  msgid "Retain default when determining whether to display the admin bar"
1566
  msgstr ""
1567
 
1568
- #: admin/html/whats-new.php:129
1569
  msgid ""
1570
  "From the User Frontend Settings, set that Administrator, Editor, Vendor can "
1571
  "see the admin bar. Now, the super admin want, one specific user ( who has "
@@ -1575,11 +1691,11 @@ msgid ""
1575
  "frontend."
1576
  msgstr ""
1577
 
1578
- #: admin/html/whats-new.php:132
1579
  msgid "Fatal error when use PHP lower version (5.4 or lower)"
1580
  msgstr ""
1581
 
1582
- #: admin/html/whats-new.php:134
1583
  msgid ""
1584
  "It was unable to install WP User Frontend with PHP 5.4 or lower version. "
1585
  "Here is the error details: <br><br><strong>Fatal error: Can't use method "
@@ -1587,42 +1703,42 @@ msgid ""
1587
  "/wp-user-frontend/class/frontend-form-post.php on line 194</strong>"
1588
  msgstr ""
1589
 
1590
- #: admin/html/whats-new.php:137
1591
  msgid "Product form was unable to show the single gallery image"
1592
  msgstr ""
1593
 
1594
- #: admin/html/whats-new.php:139
1595
  msgid ""
1596
  "When user upload single image for product gallery using WPUF WooCommerce "
1597
  "product form, that image were not showing on the frontend."
1598
  msgstr ""
1599
 
1600
- #: admin/html/whats-new.php:148
1601
  msgid "WooCommerce gallery images not getting saved"
1602
  msgstr ""
1603
 
1604
- #: admin/html/whats-new.php:150
1605
  msgid ""
1606
  "After releasing version 2.9.3, WooCommerce gallery image field stopped "
1607
  "working. You will get it fixed in this version."
1608
  msgstr ""
1609
 
1610
- #: admin/html/whats-new.php:159
1611
  msgid "The Events Calendar Integration Form"
1612
  msgstr ""
1613
 
1614
- #: admin/html/whats-new.php:161
1615
  msgid ""
1616
  "Now admin can allow users to create event from the frontend. Currently WPUF "
1617
  "has a one click pre-build event form that has been integrated with The "
1618
  "Events Calendar plugin"
1619
  msgstr ""
1620
 
1621
- #: admin/html/whats-new.php:164
1622
  msgid "Post Submission Facility From Account Page"
1623
  msgstr ""
1624
 
1625
- #: admin/html/whats-new.php:166
1626
  msgid ""
1627
  "On the frontend account page, added a new menu item named <b>Submit "
1628
  "Post</b>. Now admin can allow users to submit post from their default "
@@ -1631,504 +1747,504 @@ msgid ""
1631
  "you can assign any post form that will use to submit posts."
1632
  msgstr ""
1633
 
1634
- #: admin/html/whats-new.php:169
1635
  msgid "Login/Lost Password Link Under Registration Form"
1636
  msgstr ""
1637
 
1638
- #: admin/html/whats-new.php:171
1639
  msgid "Added Login/Lost Password link under registration form"
1640
  msgstr ""
1641
 
1642
- #: admin/html/whats-new.php:180
1643
  msgid "Added drag and drop image ordering on image upload"
1644
  msgstr ""
1645
 
1646
- #: admin/html/whats-new.php:182
1647
  msgid ""
1648
  "Now frontend users can drag & drop the images/files to change the order "
1649
  "while uploading."
1650
  msgstr ""
1651
 
1652
- #: admin/html/whats-new.php:185
1653
  msgid "Added reCAPTCHA field in login form"
1654
  msgstr ""
1655
 
1656
- #: admin/html/whats-new.php:187
1657
  msgid ""
1658
  "Admin has the option to show reCAPTCHA field in login form. Check the "
1659
  "related settings from <strong>User Frontend > Settings > "
1660
  "Login/Registration</strong>"
1661
  msgstr ""
1662
 
1663
- #: admin/html/whats-new.php:190
1664
  msgid "Added preview option in forms"
1665
  msgstr ""
1666
 
1667
- #: admin/html/whats-new.php:192
1668
  msgid ""
1669
  "You can see a nice <strong>Preview</strong> button with <strong>Save "
1670
  "Form</strong> button, admin can take a quick look of the form without using "
1671
  "shortcode"
1672
  msgstr ""
1673
 
1674
- #: admin/html/whats-new.php:195
1675
  msgid "Fixed hiding “Select Image” button while uploading multiple images."
1676
  msgstr ""
1677
 
1678
- #: admin/html/whats-new.php:197
1679
  msgid ""
1680
  "The upload button will not be hidden until the user selects max number of "
1681
  "files "
1682
  msgstr ""
1683
 
1684
- #: admin/html/whats-new.php:200
1685
  msgid "Added form limit notice before form submission"
1686
  msgstr ""
1687
 
1688
- #: admin/html/whats-new.php:202
1689
  msgid ""
1690
  "Limit notice message was showing after submission, now it is showing when "
1691
  "rendering the form"
1692
  msgstr ""
1693
 
1694
- #: admin/html/whats-new.php:205
1695
  msgid "Fixed: default post category not saving"
1696
  msgstr ""
1697
 
1698
- #: admin/html/whats-new.php:207
1699
  msgid ""
1700
  "From the form <strong>Settings > Post Settings</strong>, default post "
1701
  "category options were not saving. Now, it's fixed."
1702
  msgstr ""
1703
 
1704
- #: admin/html/whats-new.php:210
1705
  msgid ""
1706
  "WPUF dashboard shortcode with form_id attribute was not showing posts "
1707
  "properly"
1708
  msgstr ""
1709
 
1710
- #: admin/html/whats-new.php:212
1711
  msgid ""
1712
  "Now you can list posts on the frontend by using <strong>form_id<strong/> "
1713
  "attribute with <strong>[wpuf_dashboard]</strong> shortcode"
1714
  msgstr ""
1715
 
1716
- #: admin/html/whats-new.php:221
1717
  msgid "Changed text domain to `wp-user-frontend` from `wpuf` "
1718
  msgstr ""
1719
 
1720
- #: admin/html/whats-new.php:223
1721
  msgid ""
1722
  "If you are using other language than English. Please <b>rename</b> your "
1723
  "<i>.po and .mo </i> files to `wp-user-frontend_` from `wpuf_` <br> This "
1724
  "change was made to support translations from translate.wordpress.org"
1725
  msgstr ""
1726
 
1727
- #: admin/html/whats-new.php:226
1728
  msgid "Added WP User Frontend Data export and erase functionality."
1729
  msgstr ""
1730
 
1731
- #: admin/html/whats-new.php:228
1732
  msgid "Added functionality to export WP User Frontend Data to comply with GDPR."
1733
  msgstr ""
1734
 
1735
- #: admin/html/whats-new.php:231
1736
  msgid "Added billing address customizer."
1737
  msgstr ""
1738
 
1739
- #: admin/html/whats-new.php:233
1740
  msgid "Added customizer options for billing address in payment page."
1741
  msgstr ""
1742
 
1743
- #: admin/html/whats-new.php:236
1744
  msgid "Make the payment page responsive."
1745
  msgstr ""
1746
 
1747
- #: admin/html/whats-new.php:238
1748
  msgid "Some css adjustments are made in payment page to make it responsive."
1749
  msgstr ""
1750
 
1751
- #: admin/html/whats-new.php:241
1752
  msgid "Fixed image upload issue in Safari."
1753
  msgstr ""
1754
 
1755
- #: admin/html/whats-new.php:243
1756
  msgid "Images were not showing after upload in safari, it is fixed now."
1757
  msgstr ""
1758
 
1759
- #: admin/html/whats-new.php:246
1760
  msgid "Post update issue after updating or removing post images."
1761
  msgstr ""
1762
 
1763
- #: admin/html/whats-new.php:248
1764
  msgid ""
1765
  "Posts cannot be updated after updating or removing post images, it is fixed "
1766
  "now."
1767
  msgstr ""
1768
 
1769
- #: admin/html/whats-new.php:257
1770
  msgid "Allow overriding form input styles using theme styling."
1771
  msgstr ""
1772
 
1773
- #: admin/html/whats-new.php:259
1774
  msgid "Overriding form input styles using theme style is now possible."
1775
  msgstr ""
1776
 
1777
- #: admin/html/whats-new.php:262
1778
  msgid "Fixed Auto Login after registration."
1779
  msgstr ""
1780
 
1781
- #: admin/html/whats-new.php:264
1782
  msgid "Auto Login after registration was not working is fixed now."
1783
  msgstr ""
1784
 
1785
- #: admin/html/whats-new.php:267
1786
  msgid "Fixed fallback cost calculation"
1787
  msgstr ""
1788
 
1789
- #: admin/html/whats-new.php:269
1790
  msgid "Fallback cost calculation was inaccurate for some cases, it is fixed now."
1791
  msgstr ""
1792
 
1793
- #: admin/html/whats-new.php:272
1794
  msgid "Removal of subscription from User Profile gets reverted if updated"
1795
  msgstr ""
1796
 
1797
- #: admin/html/whats-new.php:274
1798
  msgid "User subscription deletion gets reverted if updated is fixed."
1799
  msgstr ""
1800
 
1801
- #: admin/html/whats-new.php:277
1802
  msgid "Show Free pack users in subscribers list."
1803
  msgstr ""
1804
 
1805
- #: admin/html/whats-new.php:279
1806
  msgid "Free pack users were not showing in subscribers list, now they will."
1807
  msgstr ""
1808
 
1809
- #: admin/html/whats-new.php:288
1810
  msgid "WP User Frontend Guten Block is added"
1811
  msgstr ""
1812
 
1813
- #: admin/html/whats-new.php:290
1814
  msgid ""
1815
  "WPUF Form Block is now available to be used within gutenberg editor with "
1816
  "preview of the form. "
1817
  msgstr ""
1818
 
1819
- #: admin/html/whats-new.php:293
1820
  msgid "Advanced Custom Fields plugin compatibility"
1821
  msgstr ""
1822
 
1823
- #: admin/html/whats-new.php:295
1824
  msgid "Now all your ACF fields can be used within WPUF Post forms. "
1825
  msgstr ""
1826
 
1827
- #: admin/html/whats-new.php:298
1828
  msgid "Taxonomy Terms not showing for custom post types"
1829
  msgstr ""
1830
 
1831
- #: admin/html/whats-new.php:300
1832
  msgid ""
1833
  "Fixed an issue with taxonomy terms not appearing for Custom Post types "
1834
  "within Form Settings and Dashboard Post Listing"
1835
  msgstr ""
1836
 
1837
- #: admin/html/whats-new.php:303
1838
  msgid "Various other code optimizations"
1839
  msgstr ""
1840
 
1841
- #: admin/html/whats-new.php:305 admin/html/whats-new.php:362
1842
  msgid "Code structure organization and optimization for better performance"
1843
  msgstr ""
1844
 
1845
- #: admin/html/whats-new.php:314
1846
  msgid "WoooCommerce billing address Sync"
1847
  msgstr ""
1848
 
1849
- #: admin/html/whats-new.php:316
1850
  msgid ""
1851
  "If an existing customer has previously set his billing address, that will "
1852
  "be imported into WPUF Billing address "
1853
  msgstr ""
1854
 
1855
- #: admin/html/whats-new.php:319
1856
  msgid "Trial subscription message not showing properly"
1857
  msgstr ""
1858
 
1859
- #: admin/html/whats-new.php:321
1860
  msgid "Subscriptions with Trial now shows trial notices"
1861
  msgstr ""
1862
 
1863
- #: admin/html/whats-new.php:324
1864
  msgid "Reset email Key not working"
1865
  msgstr ""
1866
 
1867
- #: admin/html/whats-new.php:326
1868
  msgid "Reset Email key was not working in some cases"
1869
  msgstr ""
1870
 
1871
- #: admin/html/whats-new.php:329
1872
  msgid "Post count not showing on the frontend dashboard"
1873
  msgstr ""
1874
 
1875
- #: admin/html/whats-new.php:331
1876
  msgid ""
1877
  "Dashboard with multiple post type was not showing post counts properly, is "
1878
  "now fixed and shows count for each post type"
1879
  msgstr ""
1880
 
1881
- #: admin/html/whats-new.php:334
1882
  msgid "Login Redirect showing blank page is fixed"
1883
  msgstr ""
1884
 
1885
- #: admin/html/whats-new.php:336
1886
  msgid ""
1887
  "If \"Previous Page\" was set for redirection, login redirect was "
1888
  "redirecting to blank page for users who hit login page directly"
1889
  msgstr ""
1890
 
1891
- #: admin/html/whats-new.php:345
1892
  msgid "Enhanced Login Redirect to redirect users to previous page"
1893
  msgstr ""
1894
 
1895
- #: admin/html/whats-new.php:347
1896
  msgid ""
1897
  "You can choose Previous Page as Login Redirect page settings now to "
1898
  "redirect users to the page from which they went for Login. "
1899
  msgstr ""
1900
 
1901
- #: admin/html/whats-new.php:350
1902
  msgid "Email HTML links not Rendreing properly issue is fixed"
1903
  msgstr ""
1904
 
1905
- #: admin/html/whats-new.php:352
1906
  msgid ""
1907
  "For some clients emails were not rendering the HTML links properly, this is "
1908
  "now fixed"
1909
  msgstr ""
1910
 
1911
- #: admin/html/whats-new.php:355
1912
  msgid "Form Builder : Form Field's Help text styles not showing properly"
1913
  msgstr ""
1914
 
1915
- #: admin/html/whats-new.php:357
1916
  msgid "Help texts styling is now fixed and much easier to read and understand"
1917
  msgstr ""
1918
 
1919
- #: admin/html/whats-new.php:360
1920
  msgid "Various other code improvements"
1921
  msgstr ""
1922
 
1923
- #: admin/html/whats-new.php:371
1924
  msgid "Dashboard Post Listing now supports multiple post types"
1925
  msgstr ""
1926
 
1927
- #: admin/html/whats-new.php:373
1928
  msgid ""
1929
  "Now you can show multiple post type in user dashboard using shortcode like "
1930
  "this : <br><b>[wpuf_dashboard post_type=\"post,page,custom_type\"]</b> "
1931
  msgstr ""
1932
 
1933
- #: admin/html/whats-new.php:376
1934
  msgid "Added Login Redirect Settings"
1935
  msgstr ""
1936
 
1937
- #: admin/html/whats-new.php:378
1938
  msgid ""
1939
  "You can now set a page from <i>WPUF Settings > Login/Registration > "
1940
  "Redirect after Login</i>. When login redirection is active the user will be "
1941
  "redirected to this page after login."
1942
  msgstr ""
1943
 
1944
- #: admin/html/whats-new.php:381
1945
  msgid "Image Upload field button text can be changed"
1946
  msgstr ""
1947
 
1948
- #: admin/html/whats-new.php:383
1949
  msgid ""
1950
  "The upload button text can now be changed for image upload fields which "
1951
  "defaults to \"Select Image\" if not set. "
1952
  msgstr ""
1953
 
1954
- #: admin/html/whats-new.php:386
1955
  msgid "Multi Step Form styles made compatible with more themes"
1956
  msgstr ""
1957
 
1958
- #: admin/html/whats-new.php:388
1959
  msgid "Multi Step form can now be styled more easily with other themes "
1960
  msgstr ""
1961
 
1962
- #: admin/html/whats-new.php:391
1963
  msgid "Required field condition for google map not working is fixed"
1964
  msgstr ""
1965
 
1966
- #: admin/html/whats-new.php:393
1967
  msgid ""
1968
  "If Google Map field was set as required users were able to submit form "
1969
  "without changing the default value."
1970
  msgstr ""
1971
 
1972
- #: admin/html/whats-new.php:402
1973
  msgid "Admin form builder is now fully responsive."
1974
  msgstr ""
1975
 
1976
- #: admin/html/whats-new.php:404
1977
  msgid ""
1978
  "Now you can edit forms from your mobile devices directly. Our improved "
1979
  "responsive layouts of form builder makes it easy for you to build forms on "
1980
  "the go."
1981
  msgstr ""
1982
 
1983
- #: admin/html/whats-new.php:407
1984
  msgid "Added color schemes for creating attractive form layouts."
1985
  msgstr ""
1986
 
1987
- #: admin/html/whats-new.php:409
1988
  msgid ""
1989
  "We have added 3 new color schemes for the form layouts which you can choose "
1990
  "from each form's new display settings."
1991
  msgstr ""
1992
 
1993
- #: admin/html/whats-new.php:412
1994
  msgid "Restrict Free subscription pack to be enabled multiple times "
1995
  msgstr ""
1996
 
1997
- #: admin/html/whats-new.php:414
1998
  msgid ""
1999
  "Free subscription packs now can only be purchased once and the limit "
2000
  "applies properly"
2001
  msgstr ""
2002
 
2003
- #: admin/html/whats-new.php:417
2004
  msgid "Various other bug fixes and improvements were made "
2005
  msgstr ""
2006
 
2007
- #: admin/html/whats-new.php:419
2008
  msgid "Please see the change log to see full details."
2009
  msgstr ""
2010
 
2011
- #: admin/html/whats-new.php:428
2012
  msgid "Added upgrade function for default category"
2013
  msgstr ""
2014
 
2015
- #: admin/html/whats-new.php:430
2016
  msgid "Upgrader added to upgrade previously set default post category."
2017
  msgstr ""
2018
 
2019
- #: admin/html/whats-new.php:433
2020
  msgid "Subscription pack cannot be canceled"
2021
  msgstr ""
2022
 
2023
- #: admin/html/whats-new.php:435
2024
  msgid ""
2025
  "Fixed recurring subscription pack cannot be canceled from my account page "
2026
  "in subscription details section."
2027
  msgstr ""
2028
 
2029
- #: admin/html/whats-new.php:438
2030
  msgid "page installer admin notice logic issue"
2031
  msgstr ""
2032
 
2033
- #: admin/html/whats-new.php:440
2034
  msgid ""
2035
  "Fixed page installer admin notice logic problem due to new payment settings "
2036
  "default value not set."
2037
  msgstr ""
2038
 
2039
- #: admin/html/whats-new.php:450
2040
  msgid "Setup Wizard"
2041
  msgstr ""
2042
 
2043
- #: admin/html/whats-new.php:452
2044
  msgid "Setup Wizard added to turn off payment options and install pages."
2045
  msgstr ""
2046
 
2047
- #: admin/html/whats-new.php:456
2048
  msgid "Multi-select Category"
2049
  msgstr ""
2050
 
2051
- #: admin/html/whats-new.php:458
2052
  msgid "Add multi-select to default category in post form settings."
2053
  msgstr ""
2054
 
2055
- #: admin/html/whats-new.php:462
2056
  msgid "Select Text option for Taxonomy"
2057
  msgstr ""
2058
 
2059
- #: admin/html/whats-new.php:464
2060
  msgid ""
2061
  "Add Select Text option for taxonomy fields. Now you can add default text "
2062
  "with empty value as first option for Taxonomy dropdown."
2063
  msgstr ""
2064
 
2065
- #: admin/html/whats-new.php:467
2066
  msgid "Taxonomy Checkbox Inline"
2067
  msgstr ""
2068
 
2069
- #: admin/html/whats-new.php:469
2070
  msgid ""
2071
  "Added checkbox inline option to taxonomy checkbox. You can now display "
2072
  "Taxonomy checkbox fields inline."
2073
  msgstr ""
2074
 
2075
- #: admin/html/whats-new.php:479
2076
  msgid "Manage schedule for form submission"
2077
  msgstr ""
2078
 
2079
- #: admin/html/whats-new.php:481
2080
  msgid ""
2081
  "Do not accept form submission if the current date is not between the date "
2082
  "range of the schedule."
2083
  msgstr ""
2084
 
2085
- #: admin/html/whats-new.php:485
2086
  msgid "Restrict form submission based on the user roles"
2087
  msgstr ""
2088
 
2089
- #: admin/html/whats-new.php:487
2090
  msgid ""
2091
  "Restrict form submission based on the user roles. Now you can manage user "
2092
  "role base permission on form submission."
2093
  msgstr ""
2094
 
2095
- #: admin/html/whats-new.php:491
2096
  msgid "Limit how many entries a form will accept"
2097
  msgstr ""
2098
 
2099
- #: admin/html/whats-new.php:493
2100
  msgid ""
2101
  "Limit how many entries a form will accept and display a custom message when "
2102
  "that limit is reached."
2103
  msgstr ""
2104
 
2105
- #: admin/html/whats-new.php:497
2106
  msgid "Show/hide Admin Bar"
2107
  msgstr ""
2108
 
2109
- #: admin/html/whats-new.php:499
2110
  msgid "Control the admin bar visibility based on user roles."
2111
  msgstr ""
2112
 
2113
- #: admin/html/whats-new.php:503
2114
  msgid "Ajax Login widget"
2115
  msgstr ""
2116
 
2117
- #: admin/html/whats-new.php:505
2118
  msgid ""
2119
  "Login user is more simple now with Ajax Login Widget. The simple ajax login "
2120
  "form do not required page loading for login."
2121
  msgstr ""
2122
 
2123
- #: admin/html/whats-new.php:509
2124
  msgid "Form submission with Captcha field"
2125
  msgstr ""
2126
 
2127
- #: admin/html/whats-new.php:511
2128
  msgid "Form field validation process updated if form submits with captcha field."
2129
  msgstr ""
2130
 
2131
- #: admin/html/whats-new.php:525
2132
  msgid "What's New in WPUF?"
2133
  msgstr ""
2134
 
@@ -2151,7 +2267,7 @@ msgid "Congratulations!"
2151
  msgstr ""
2152
 
2153
  #: admin/installer.php:84 admin/settings-options.php:24
2154
- #: includes/free/admin/shortcode-button.php:79 wpuf-functions.php:1779
2155
  msgid "Dashboard"
2156
  msgstr ""
2157
 
@@ -2167,7 +2283,7 @@ msgstr ""
2167
  #: admin/installer.php:95 class/subscription.php:377 class/subscription.php:397
2168
  #: class/subscription.php:398 class/subscription.php:399
2169
  #: includes/free/admin/shortcode-button.php:99
2170
- #: templates/dashboard/dashboard.php:19 wpuf-functions.php:1782
2171
  msgid "Subscription"
2172
  msgstr ""
2173
 
@@ -2175,8 +2291,8 @@ msgstr ""
2175
  msgid "[wpuf_sub_pack]"
2176
  msgstr ""
2177
 
2178
- #: admin/installer.php:96 templates/dashboard/posts.php:85
2179
- #: templates/dashboard.php:126
2180
  msgid "Payment"
2181
  msgstr ""
2182
 
@@ -2262,64 +2378,64 @@ msgstr ""
2262
  msgid "Draft"
2263
  msgstr ""
2264
 
2265
- #: admin/posting.php:70 class/asset-loader.php:55 class/render-form.php:1676
2266
  #: wpuf.php:721
2267
  msgid "Are you sure?"
2268
  msgstr ""
2269
 
2270
- #: admin/posting.php:78 class/asset-loader.php:63 wpuf.php:731
2271
  msgid "Allowed Files"
2272
  msgstr ""
2273
 
2274
- #: admin/posting.php:81 class/asset-loader.php:66 wpuf.php:737
2275
  msgid "Maximum number of files reached!"
2276
  msgstr ""
2277
 
2278
- #: admin/posting.php:82 class/asset-loader.php:67 wpuf.php:738
2279
  msgid "The file you have uploaded exceeds the file size limit. Please try again."
2280
  msgstr ""
2281
 
2282
- #: admin/posting.php:83 class/asset-loader.php:68 wpuf.php:739
2283
  msgid "You have uploaded an incorrect file type. Please try again."
2284
  msgstr ""
2285
 
2286
- #: admin/posting.php:102
2287
  msgid "WPUF Form"
2288
  msgstr ""
2289
 
2290
- #: admin/posting.php:130
2291
  msgid "Learn more"
2292
  msgstr ""
2293
 
2294
- #: admin/posting.php:177
2295
  msgid "WPUF Lock User"
2296
  msgstr ""
2297
 
2298
- #: admin/posting.php:203
2299
  msgid ""
2300
  "Post is locked, to allow user to edit this post <a "
2301
  "id=\"wpuf_clear_schedule_lock\" data=\"%s\" href=\"#\">Click here</a>"
2302
  msgstr ""
2303
 
2304
- #: admin/posting.php:210
2305
  msgid ""
2306
  "Frontend edit access for this post will be automatically locked after %s, "
2307
  "<a id=\"wpuf_clear_schedule_lock\" data=\"%s\" href=\"#\">Clear Lock</a> Or,"
2308
  msgstr ""
2309
 
2310
- #: admin/posting.php:221
2311
  msgid "Lock Post Permanently"
2312
  msgstr ""
2313
 
2314
- #: admin/posting.php:226
2315
  msgid "Lock user from editing this post from the frontend dashboard"
2316
  msgstr ""
2317
 
2318
- #: admin/posting.php:277
2319
  msgid "WPUF Custom Fields"
2320
  msgstr ""
2321
 
2322
- #: admin/posting.php:329
2323
  msgid "No custom fields found."
2324
  msgstr ""
2325
 
@@ -2598,7 +2714,7 @@ msgstr ""
2598
  msgid "Login / Registration"
2599
  msgstr ""
2600
 
2601
- #: admin/settings-options.php:39 includes/class-privacy.php:74
2602
  msgid "Payments"
2603
  msgstr ""
2604
 
@@ -3094,13 +3210,13 @@ msgstr ""
3094
 
3095
  #: admin/template-post.php:88 admin/template.php:608
3096
  #: includes/fields/class-field-featured-image.php:116
3097
- #: includes/fields/class-field-image.php:124
3098
  msgid "Enter maximum upload size limit in KB"
3099
  msgstr ""
3100
 
3101
  #: admin/template-post.php:99 admin/template.php:619
3102
  #: includes/fields/class-field-featured-image.php:112
3103
- #: includes/fields/class-field-image.php:120
3104
  msgid "Max. file size"
3105
  msgstr ""
3106
 
@@ -3109,7 +3225,7 @@ msgid "Type"
3109
  msgstr ""
3110
 
3111
  #: admin/template-post.php:149 includes/fields/class-field-dropdown.php:9
3112
- #: includes/fields/class-field-dropdown.php:94
3113
  msgid "Dropdown"
3114
  msgstr ""
3115
 
@@ -3366,13 +3482,13 @@ msgstr ""
3366
 
3367
  #: admin/template.php:377 admin/template.php:401 admin/template.php:432
3368
  #: admin/template.php:463 includes/fields/class-abstract-fields.php:579
3369
- #: templates/dashboard/posts.php:88 templates/dashboard.php:129
3370
  msgid "Options"
3371
  msgstr ""
3372
 
3373
  #: admin/template.php:417 admin/template.php:448
3374
  #: includes/fields/class-abstract-fields.php:401
3375
- #: includes/fields/class-field-dropdown.php:78
3376
  msgid ""
3377
  "First element of the select dropdown. Leave this empty if you don't want to "
3378
  "show this field"
@@ -3380,15 +3496,15 @@ msgstr ""
3380
 
3381
  #: admin/template.php:427 admin/template.php:458
3382
  #: includes/fields/class-abstract-fields.php:397
3383
- #: includes/fields/class-field-dropdown.php:74
3384
  msgid "Select Text"
3385
  msgstr ""
3386
 
3387
  #: admin/template.php:520 admin/template.php:578 admin/template.php:656
3388
- #: class/upload.php:197 includes/fields/class-field-recaptcha.php:147
3389
  #: includes/fields/class-field-sectionbreak.php:54
3390
- #: templates/dashboard/posts.php:79 templates/dashboard.php:94
3391
- #: wpuf-functions.php:840
3392
  msgid "Title"
3393
  msgstr ""
3394
 
@@ -3404,16 +3520,16 @@ msgstr ""
3404
  msgid "Enter the meta value"
3405
  msgstr ""
3406
 
3407
- #: admin/template.php:583 class/upload.php:199
3408
- #: includes/fields/class-field-sectionbreak.php:62 wpuf-functions.php:848
3409
  msgid "Description"
3410
  msgstr ""
3411
 
3412
- #: admin/template.php:609 includes/fields/class-field-image.php:133
3413
  msgid "Number of images can be uploaded"
3414
  msgstr ""
3415
 
3416
- #: admin/template.php:624 includes/fields/class-field-image.php:129
3417
  msgid "Max. files"
3418
  msgstr ""
3419
 
@@ -3435,21 +3551,6 @@ msgstr ""
3435
  msgid "Enable noCaptcha"
3436
  msgstr ""
3437
 
3438
- #: admin/weforms.php:4
3439
- msgid "The Easiest &amp; Fastest Contact Form Plugin on WordPress"
3440
- msgstr ""
3441
-
3442
- #: admin/weforms.php:7
3443
- msgid ""
3444
- "Quickly create rich contact forms to generate leads, taking feedbacks, "
3445
- "onboarding visitors and flourishing <br /> your imagination! Comes with the "
3446
- "best frontend post submission plugin for WordPress, WP User Frontend."
3447
- msgstr ""
3448
-
3449
- #: admin/weforms.php:12 lib/class-weforms-upsell.php:73
3450
- msgid "Install Now"
3451
- msgstr ""
3452
-
3453
  #: class/asset-loader.php:32 wpuf.php:629
3454
  msgid "is required"
3455
  msgstr ""
@@ -3490,7 +3591,7 @@ msgstr ""
3490
  msgid "Label for post submission menu"
3491
  msgstr ""
3492
 
3493
- #: class/frontend-account.php:48 class/frontend-account.php:109
3494
  #: includes/class-wcmp-integration.php:127
3495
  #: includes/class-wcmp-integration.php:144
3496
  msgid "Submit Post"
@@ -3506,59 +3607,59 @@ msgid ""
3506
  "account page."
3507
  msgstr ""
3508
 
3509
- #: class/frontend-account.php:228
3510
- msgid "<p>You are not subscribed to any package yet.</p>"
3511
  msgstr ""
3512
 
3513
- #: class/frontend-account.php:236
3514
- msgid "<p>You may processed your payment, but the pack is not activated yet.</p>"
3515
  msgstr ""
3516
 
3517
- #: class/frontend-account.php:252
3518
  msgid "For each"
3519
  msgstr ""
3520
 
3521
- #: class/frontend-account.php:313
3522
  msgid "Nonce failure"
3523
  msgstr ""
3524
 
3525
- #: class/frontend-account.php:327
3526
  msgid "First Name is a required field."
3527
  msgstr ""
3528
 
3529
- #: class/frontend-account.php:331
3530
  msgid "Last Name is a required field."
3531
  msgstr ""
3532
 
3533
- #: class/frontend-account.php:335
3534
  msgid "Email is a required field."
3535
  msgstr ""
3536
 
3537
- #: class/frontend-account.php:347
3538
  msgid "Please provide a valid email address."
3539
  msgstr ""
3540
 
3541
- #: class/frontend-account.php:349
3542
  msgid "This email address is already registered."
3543
  msgstr ""
3544
 
3545
- #: class/frontend-account.php:355
3546
  msgid "Please fill out all password fields."
3547
  msgstr ""
3548
 
3549
- #: class/frontend-account.php:358
3550
  msgid "Please enter your current password."
3551
  msgstr ""
3552
 
3553
- #: class/frontend-account.php:361
3554
  msgid "Please re-enter your password."
3555
  msgstr ""
3556
 
3557
- #: class/frontend-account.php:364
3558
  msgid "New passwords do not match."
3559
  msgstr ""
3560
 
3561
- #: class/frontend-account.php:367 class/frontend-account.php:378
3562
  msgid "Your current password is incorrect."
3563
  msgstr ""
3564
 
@@ -3599,7 +3700,7 @@ msgid "You already have activated a free package previously."
3599
  msgstr ""
3600
 
3601
  #: class/payment.php:138 includes/class-customizer.php:56
3602
- #: wpuf-functions.php:1783
3603
  msgid "Billing Address"
3604
  msgstr ""
3605
 
@@ -3619,7 +3720,7 @@ msgstr ""
3619
  msgid "Pack Price "
3620
  msgstr ""
3621
 
3622
- #: class/payment.php:191 class/payment.php:240 includes/class-privacy.php:341
3623
  msgid "Total"
3624
  msgstr ""
3625
 
@@ -3664,7 +3765,7 @@ msgstr ""
3664
  msgid "Form for creating a blog post."
3665
  msgstr ""
3666
 
3667
- #: class/post-form-templates/post.php:20 includes/class-privacy.php:419
3668
  #: includes/fields/class-field-post-title.php:6
3669
  msgid "Post Title"
3670
  msgstr ""
@@ -3673,7 +3774,7 @@ msgstr ""
3673
  msgid "Please enter your post name"
3674
  msgstr ""
3675
 
3676
- #: class/post-form-templates/post.php:35 templates/dashboard.php:98
3677
  msgid "Category"
3678
  msgstr ""
3679
 
@@ -3683,9 +3784,9 @@ msgstr ""
3683
 
3684
  #: class/post-form-templates/post.php:39
3685
  #: includes/fields/class-abstract-fields.php:188
3686
- #: includes/fields/class-field-dropdown.php:97
3687
  #: includes/fields/class-field-multidropdown.php:83
3688
- #: includes/fields/class-field-post-taxonomy.php:333
3689
  msgid "- select -"
3690
  msgstr ""
3691
 
@@ -3702,7 +3803,7 @@ msgstr ""
3702
  #: includes/fields/class-field-featured-image.php:142
3703
  #: includes/free/post-form-templates/the_events_calendar.php:125
3704
  #: includes/free/post-form-templates/the_events_calendar.php:126
3705
- #: templates/dashboard/posts.php:76 templates/dashboard.php:92
3706
  msgid "Featured Image"
3707
  msgstr ""
3708
 
@@ -3712,7 +3813,7 @@ msgstr ""
3712
 
3713
  #: class/post-form-templates/post.php:90
3714
  #: includes/free/post-form-templates/the_events_calendar.php:138
3715
- #: templates/dashboard.php:118
3716
  msgid "Excerpt"
3717
  msgstr ""
3718
 
@@ -3768,28 +3869,28 @@ msgstr ""
3768
  msgid "Please make sure you've published your form."
3769
  msgstr ""
3770
 
3771
- #: class/render-form.php:1319 includes/free/edit-profile.php:200
3772
  #: templates/registration-form.php:68
3773
  msgid "Confirm Password"
3774
  msgstr ""
3775
 
3776
- #: class/render-form.php:1341 includes/free/edit-profile.php:209
3777
  #: templates/dashboard/edit-profile.php:71
3778
  msgid "Strength indicator"
3779
  msgstr ""
3780
 
3781
- #: class/render-form.php:1403 includes/fields/class-field-post-taxonomy.php:119
3782
- #: wpuf-functions.php:1566
3783
  msgid "-- Select --"
3784
  msgstr ""
3785
 
3786
- #: class/render-form.php:1468 includes/fields/class-field-post-taxonomy.php:65
3787
  msgid "This field is no longer available."
3788
  msgstr ""
3789
 
3790
- #: class/render-form.php:1676 class/transactions-list-table.php:119
3791
  #: class/transactions-list-table.php:193 includes/free/edit-user.php:105
3792
- #: templates/dashboard/posts.php:172 templates/dashboard.php:263
3793
  msgid "Delete"
3794
  msgstr ""
3795
 
@@ -3933,7 +4034,7 @@ msgstr ""
3933
 
3934
  #: class/transactions-list-table.php:42
3935
  #: includes/class-list-table-subscribers.php:44
3936
- #: templates/dashboard/posts.php:80 templates/dashboard.php:121
3937
  msgid "Status"
3938
  msgstr ""
3939
 
@@ -3946,17 +4047,17 @@ msgstr ""
3946
  msgid "Cost"
3947
  msgstr ""
3948
 
3949
- #: class/transactions-list-table.php:45 includes/class-privacy.php:337
3950
  msgid "Tax"
3951
  msgstr ""
3952
 
3953
- #: class/transactions-list-table.php:46 includes/class-privacy.php:345
3954
- #: includes/class-privacy.php:415
3955
  msgid "Post ID"
3956
  msgstr ""
3957
 
3958
- #: class/transactions-list-table.php:47 includes/class-privacy.php:349
3959
- #: includes/class-privacy.php:468
3960
  msgid "Pack ID"
3961
  msgstr ""
3962
 
@@ -3993,7 +4094,7 @@ msgstr ""
3993
  msgid "No transactions found."
3994
  msgstr ""
3995
 
3996
- #: class/upload.php:198 wpuf-functions.php:844
3997
  msgid "Caption"
3998
  msgstr ""
3999
 
@@ -4031,57 +4132,59 @@ msgstr ""
4031
  msgid "No Thanks"
4032
  msgstr ""
4033
 
4034
- #: includes/class-billing-address.php:34
4035
  msgid "Some Required Fields are not filled!"
4036
  msgstr ""
4037
 
4038
- #: includes/class-billing-address.php:152 includes/class-customizer.php:22
4039
- #: includes/class-customizer.php:66 includes/class-privacy.php:270
4040
- #: templates/dashboard/billing-address.php:89
4041
  msgid "Country"
4042
  msgstr ""
4043
 
4044
- #: includes/class-billing-address.php:175
 
4045
  msgid "Choose a country"
4046
  msgstr ""
4047
 
4048
- #: includes/class-billing-address.php:193 includes/class-customizer.php:23
4049
- #: includes/class-customizer.php:67 templates/dashboard/billing-address.php:74
4050
  msgid "State/Province/Region"
4051
  msgstr ""
4052
 
4053
- #: includes/class-billing-address.php:207
 
4054
  msgid "Choose a state"
4055
  msgstr ""
4056
 
4057
- #: includes/class-billing-address.php:224
4058
- #: templates/dashboard/billing-address.php:53
4059
  msgid "Address Line 1 "
4060
  msgstr ""
4061
 
4062
- #: includes/class-billing-address.php:232
4063
- #: templates/dashboard/billing-address.php:60
4064
  msgid "Address Line 2 "
4065
  msgstr ""
4066
 
4067
- #: includes/class-billing-address.php:240 includes/class-customizer.php:26
4068
- #: includes/class-customizer.php:70 includes/class-privacy.php:258
4069
- #: templates/dashboard/billing-address.php:67
4070
  msgid "City"
4071
  msgstr ""
4072
 
4073
- #: includes/class-billing-address.php:247 includes/class-customizer.php:27
4074
- #: includes/class-customizer.php:71 templates/dashboard/billing-address.php:84
4075
  msgid "Postal Code/ZIP"
4076
  msgstr ""
4077
 
4078
- #: includes/class-billing-address.php:255
4079
- #: templates/dashboard/billing-address.php:113
4080
  msgid "Update Billing Address"
4081
  msgstr ""
4082
 
4083
- #: includes/class-billing-address.php:302
4084
- #: templates/dashboard/billing-address.php:35
4085
  msgid "Billing address is updated."
4086
  msgstr ""
4087
 
@@ -4112,7 +4215,7 @@ msgstr ""
4112
 
4113
  #: includes/class-dokan-integration.php:34
4114
  #: includes/class-wc-vendors-integration.php:108
4115
- #: templates/dashboard/dashboard.php:15 wpuf-functions.php:1780
4116
  msgid "Posts"
4117
  msgstr ""
4118
 
@@ -4167,48 +4270,48 @@ msgstr ""
4167
  msgid "You are not logged in"
4168
  msgstr ""
4169
 
4170
- #: includes/class-frontend-form-post.php:58
4171
- #: includes/class-frontend-form-post.php:88
4172
  msgid "Invalid post"
4173
  msgstr ""
4174
 
4175
- #: includes/class-frontend-form-post.php:65
4176
  msgid "Your edit access for this post has been locked by an administrator."
4177
  msgstr ""
4178
 
4179
- #: includes/class-frontend-form-post.php:69
4180
  msgid "Your allocated time for editing this post has been expired."
4181
  msgstr ""
4182
 
4183
- #: includes/class-frontend-form-post.php:77
4184
  msgid "Your post edit access has been locked by an administrator."
4185
  msgstr ""
4186
 
4187
- #: includes/class-frontend-form-post.php:82
4188
  msgid "Post Editing is disabled"
4189
  msgstr ""
4190
 
4191
- #: includes/class-frontend-form-post.php:93
4192
  msgid "You are not allowed to edit"
4193
  msgstr ""
4194
 
4195
- #: includes/class-frontend-form-post.php:104
4196
  msgid "I don't know how to edit this post, I don't have the form ID"
4197
  msgstr ""
4198
 
4199
- #: includes/class-frontend-form-post.php:116
4200
  msgid "You can't edit a post while in pending mode."
4201
  msgstr ""
4202
 
4203
- #: includes/class-frontend-form-post.php:494
4204
  msgid "Something went wrong"
4205
  msgstr ""
4206
 
4207
- #: includes/class-frontend-form-post.php:515
4208
  msgid "Invalid email address."
4209
  msgstr ""
4210
 
4211
- #: includes/class-frontend-form-post.php:525
4212
  msgid ""
4213
  "You already have an account in our site. Please login to continue.\n"
4214
  "\n"
@@ -4217,22 +4320,22 @@ msgid ""
4217
  "Click 'Cancel' to stay at this page."
4218
  msgstr ""
4219
 
4220
- #: includes/class-frontend-form-post.php:576
4221
  msgid "You do not have sufficient permissions to access this form."
4222
  msgstr ""
4223
 
4224
- #: includes/class-frontend-form-post.php:842
4225
  msgid "Email successfully verified. Please Login."
4226
  msgstr ""
4227
 
4228
- #: includes/class-frontend-form-post.php:949
4229
- #: includes/class-frontend-form-post.php:955
4230
  msgid ""
4231
  "Thank you for posting on our site. We have sent you an confirmation email. "
4232
  "Please check your inbox!"
4233
  msgstr ""
4234
 
4235
- #: includes/class-frontend-render-form.php:802
4236
  #: includes/free/class-login.php:445
4237
  msgid "Empty reCaptcha Field"
4238
  msgstr ""
@@ -4253,7 +4356,7 @@ msgstr ""
4253
  msgid "Subscription ID"
4254
  msgstr ""
4255
 
4256
- #: includes/class-list-table-subscribers.php:46 includes/class-privacy.php:325
4257
  msgid "Transaction ID"
4258
  msgstr ""
4259
 
@@ -4266,7 +4369,7 @@ msgid "Expire date"
4266
  msgstr ""
4267
 
4268
  #: includes/class-list-table-subscribers.php:137
4269
- #: templates/dashboard/posts.php:139 templates/dashboard.php:227
4270
  msgid "Completed"
4271
  msgstr ""
4272
 
@@ -4431,54 +4534,54 @@ msgid ""
4431
  "disclose on your privacy policy."
4432
  msgstr ""
4433
 
4434
- #: includes/class-privacy.php:38
4435
  msgid ""
4436
  "We collect information about you during the form submission process on our "
4437
  "WordPress website."
4438
  msgstr ""
4439
 
4440
- #: includes/class-privacy.php:39
4441
  msgid "What we collect and store"
4442
  msgstr ""
4443
 
4444
- #: includes/class-privacy.php:40
4445
  msgid "While you visit our , we’ll track:"
4446
  msgstr ""
4447
 
4448
- #: includes/class-privacy.php:42
4449
  msgid ""
4450
  "Form Fields Data: Forms Fields data includes the available field types when "
4451
  "creating a form. We’ll use this to, for example, collect informations like "
4452
  "Name, Email and other available fields."
4453
  msgstr ""
4454
 
4455
- #: includes/class-privacy.php:43
4456
  msgid ""
4457
  "Location, IP address and browser type: we’ll use this for purposes like "
4458
  "estimating taxes and shipping. Also, for reducing fraudulent activities and "
4459
  "prevent identity theft while placing orders"
4460
  msgstr ""
4461
 
4462
- #: includes/class-privacy.php:44
4463
  msgid ""
4464
  "Transaction Details: we’ll ask you to enter this so we can, for instance, "
4465
  "provide & regulate subscription packs that you bought and keep track of "
4466
  "your payment details for subscription packs!"
4467
  msgstr ""
4468
 
4469
- #: includes/class-privacy.php:46
4470
  msgid ""
4471
  "We’ll also use cookies to keep track of form elements while you’re browsing "
4472
  "our site."
4473
  msgstr ""
4474
 
4475
- #: includes/class-privacy.php:48
4476
  msgid ""
4477
  "Note: you may want to further detail your cookie policy, and link to that "
4478
  "section from here."
4479
  msgstr ""
4480
 
4481
- #: includes/class-privacy.php:50
4482
  msgid ""
4483
  "When you fill up a form, we’ll ask you to provide information including "
4484
  "your name, billing address, shipping address, email address, phone number, "
@@ -4487,42 +4590,42 @@ msgid ""
4487
  "We’ll use this information for purposes, such as, to:"
4488
  msgstr ""
4489
 
4490
- #: includes/class-privacy.php:52
4491
  msgid "Send you information about your account and order"
4492
  msgstr ""
4493
 
4494
- #: includes/class-privacy.php:53
4495
  msgid "Respond to your requests, including transaction details and complaints"
4496
  msgstr ""
4497
 
4498
- #: includes/class-privacy.php:54
4499
  msgid "Process payments and prevent fraud"
4500
  msgstr ""
4501
 
4502
- #: includes/class-privacy.php:55
4503
  msgid "Set up your account"
4504
  msgstr ""
4505
 
4506
- #: includes/class-privacy.php:56
4507
  msgid "Comply with any legal obligations we have, such as calculating taxes"
4508
  msgstr ""
4509
 
4510
- #: includes/class-privacy.php:57
4511
  msgid "Improve our form offerings"
4512
  msgstr ""
4513
 
4514
- #: includes/class-privacy.php:58
4515
  msgid "Send you marketing messages, if you choose to receive them"
4516
  msgstr ""
4517
 
4518
- #: includes/class-privacy.php:60
4519
  msgid ""
4520
  "If you create an account, we will store your name, address, email and phone "
4521
  "number, which will be used to populate the form fields for future "
4522
  "submissions."
4523
  msgstr ""
4524
 
4525
- #: includes/class-privacy.php:61
4526
  msgid ""
4527
  "We generally store information about you for as long as we need the "
4528
  "information for the purposes for which we collect and use it, and we are "
@@ -4532,51 +4635,51 @@ msgid ""
4532
  "addresses."
4533
  msgstr ""
4534
 
4535
- #: includes/class-privacy.php:62
4536
  msgid "Who on our team has access"
4537
  msgstr ""
4538
 
4539
- #: includes/class-privacy.php:63
4540
  msgid ""
4541
  "Members of our team have access to the information you provide us. For "
4542
  "example, Administrators and Editors and any body else who has permission "
4543
  "can access:"
4544
  msgstr ""
4545
 
4546
- #: includes/class-privacy.php:65
4547
  msgid "Form submission information and other details related to it"
4548
  msgstr ""
4549
 
4550
- #: includes/class-privacy.php:66
4551
  msgid ""
4552
  "Customer information like your name, email address, and billing and "
4553
  "shipping information."
4554
  msgstr ""
4555
 
4556
- #: includes/class-privacy.php:68
4557
  msgid ""
4558
  "Our team members have access to this information to help fulfill "
4559
  "transactions and support you."
4560
  msgstr ""
4561
 
4562
- #: includes/class-privacy.php:69
4563
  msgid "What we share with others"
4564
  msgstr ""
4565
 
4566
- #: includes/class-privacy.php:71
4567
  msgid ""
4568
  "In this section you should list who you’re sharing data with, and for what "
4569
  "purpose. This could include, but may not be limited to, analytics, "
4570
  "marketing, payment gateways, shipping providers, and third party embeds."
4571
  msgstr ""
4572
 
4573
- #: includes/class-privacy.php:73
4574
  msgid ""
4575
  "We share information with third parties who help us provide our orders and "
4576
  "store services to you; for example --"
4577
  msgstr ""
4578
 
4579
- #: includes/class-privacy.php:76
4580
  msgid ""
4581
  "In this subsection you should list which third party payment processors "
4582
  "you’re using to take payments on your site since these may handle customer "
@@ -4584,21 +4687,21 @@ msgid ""
4584
  "you’re not using PayPal."
4585
  msgstr ""
4586
 
4587
- #: includes/class-privacy.php:78
4588
  msgid ""
4589
  "We accept payments through PayPal. When processing payments, some of your "
4590
  "data will be passed to PayPal, including information required to process or "
4591
  "support the payment, such as the purchase total and billing information."
4592
  msgstr ""
4593
 
4594
- #: includes/class-privacy.php:79
4595
  msgid ""
4596
  "Please see the <a "
4597
  "href=\"https://www.paypal.com/us/webapps/mpp/ua/privacy-full\">PayPal "
4598
  "Privacy Policy</a> for more details."
4599
  msgstr ""
4600
 
4601
- #: includes/class-privacy.php:80
4602
  msgid ""
4603
  "Also, we accept payments through Stripe. When processing payments, some of "
4604
  "your data will be passed to Stripe, including information required to "
@@ -4606,24 +4709,24 @@ msgid ""
4606
  "information."
4607
  msgstr ""
4608
 
4609
- #: includes/class-privacy.php:81
4610
  msgid ""
4611
  "Please see the <a href=\"https://stripe.com/us/privacy\">Stripe Privacy "
4612
  "Policy</a> for more details."
4613
  msgstr ""
4614
 
4615
- #: includes/class-privacy.php:82
4616
  msgid "Available Modules"
4617
  msgstr ""
4618
 
4619
- #: includes/class-privacy.php:83
4620
  msgid ""
4621
  "In this subsection you should list which third party modules you’re using "
4622
  "to increase the functionality of your created forms using WP User Frontend "
4623
  "since these may handle customer data."
4624
  msgstr ""
4625
 
4626
- #: includes/class-privacy.php:84
4627
  msgid ""
4628
  "WP User Frontend Pro comes with support for modules like MailChimp, "
4629
  "ConvertKit, Stipe, Paid Membership Pro, MailPoet, Zapier, GetResponse, "
@@ -4632,7 +4735,7 @@ msgid ""
4632
  "own platform which falls in their own data policy. "
4633
  msgstr ""
4634
 
4635
- #: includes/class-privacy.php:85
4636
  msgid ""
4637
  "As an example while using MailChimp for your marketing email automation "
4638
  "service by integrating it with WP User Frontend, some of your data will be "
@@ -4642,82 +4745,98 @@ msgid ""
4642
  "information through subscription. "
4643
  msgstr ""
4644
 
4645
- #: includes/class-privacy.php:86
4646
  msgid ""
4647
  "Please see the <a href=\"https://mailchimp.com/legal/privacy/\">MailChimp "
4648
  "Privacy Policy</a> for more details."
4649
  msgstr ""
4650
 
4651
- #: includes/class-privacy.php:100 includes/class-privacy.php:131
4652
- #: includes/class-privacy.php:171
4653
  msgid "WPUF User Data"
4654
  msgstr ""
4655
 
4656
- #: includes/class-privacy.php:105 includes/class-privacy.php:292
4657
  msgid "WPUF Subscription Data"
4658
  msgstr ""
4659
 
4660
- #: includes/class-privacy.php:110 includes/class-privacy.php:321
4661
  msgid "WPUF Transaction Data"
4662
  msgstr ""
4663
 
4664
- #: includes/class-privacy.php:115 includes/class-privacy.php:411
4665
  msgid "WPUF Post Data"
4666
  msgstr ""
4667
 
4668
- #: includes/class-privacy.php:250
 
 
 
 
4669
  msgid "Billing Address 1"
4670
  msgstr ""
4671
 
4672
- #: includes/class-privacy.php:254
4673
  msgid "Billing Address 2"
4674
  msgstr ""
4675
 
4676
- #: includes/class-privacy.php:262
4677
  msgid "State"
4678
  msgstr ""
4679
 
4680
- #: includes/class-privacy.php:266
4681
  msgid "Zip"
4682
  msgstr ""
4683
 
4684
- #: includes/class-privacy.php:329
 
 
 
 
 
 
 
 
4685
  msgid "Payment Status"
4686
  msgstr ""
4687
 
4688
- #: includes/class-privacy.php:333
4689
  msgid "Subtotal"
4690
  msgstr ""
4691
 
4692
- #: includes/class-privacy.php:357 includes/free/edit-profile.php:111
4693
  msgid "Last Name"
4694
  msgstr ""
4695
 
4696
- #: includes/class-privacy.php:365
4697
  msgid "Payment Type"
4698
  msgstr ""
4699
 
4700
- #: includes/class-privacy.php:369
4701
  msgid "payer_address"
4702
  msgstr ""
4703
 
4704
- #: includes/class-privacy.php:379
4705
  msgid "Transaction Date"
4706
  msgstr ""
4707
 
4708
- #: includes/class-privacy.php:423
 
 
 
 
4709
  msgid "Post URL"
4710
  msgstr ""
4711
 
4712
- #: includes/class-privacy.php:427
4713
  msgid "Post Date"
4714
  msgstr ""
4715
 
4716
- #: includes/class-privacy.php:472
4717
  msgid "Pack Title"
4718
  msgstr ""
4719
 
4720
- #: includes/class-privacy.php:476
4721
  msgid "Expiry"
4722
  msgstr ""
4723
 
@@ -4745,12 +4864,12 @@ msgid "Package & billing details: "
4745
  msgstr ""
4746
 
4747
  #: includes/class-user-subscription.php:330
4748
- #: templates/dashboard/subscription.php:11
4749
  msgid "Remaining post: "
4750
  msgstr ""
4751
 
4752
  #: includes/class-user-subscription.php:344
4753
- #: templates/dashboard/subscription.php:27
4754
  msgid "Unlimited"
4755
  msgstr ""
4756
 
@@ -4915,12 +5034,12 @@ msgid "Email Address"
4915
  msgstr ""
4916
 
4917
  #: includes/fields/class-field-featured-image.php:120
4918
- #: includes/fields/class-field-image.php:137
4919
  msgid "Button Label"
4920
  msgstr ""
4921
 
4922
  #: includes/fields/class-field-featured-image.php:125
4923
- #: includes/fields/class-field-image.php:142
4924
  msgid "Enter a label for the Select button"
4925
  msgstr ""
4926
 
@@ -5126,7 +5245,7 @@ msgid "Your password has been reset. %s"
5126
  msgstr ""
5127
 
5128
  #: includes/free/class-login.php:372
5129
- msgid "Enter your new password below.."
5130
  msgstr ""
5131
 
5132
  #: includes/free/class-login.php:385
@@ -5814,11 +5933,15 @@ msgstr ""
5814
  msgid "Submit & Deactivate"
5815
  msgstr ""
5816
 
 
 
 
 
5817
  #: lib/class-weforms-upsell.php:349
5818
  msgid "You don't have permission to install the plugins"
5819
  msgstr ""
5820
 
5821
- #: lib/class.settings-api.php:366
5822
  msgid "Choose File"
5823
  msgstr ""
5824
 
@@ -5850,32 +5973,32 @@ msgstr ""
5850
  msgid "Thanks for being with us."
5851
  msgstr ""
5852
 
5853
- #: lib/gateway/paypal.php:63
5854
  msgid "Subscription %s at %s"
5855
  msgstr ""
5856
 
5857
- #: lib/gateway/paypal.php:93
5858
  msgid "PayPal Email"
5859
  msgstr ""
5860
 
5861
- #: lib/gateway/paypal.php:98
5862
  msgid "PayPal Instruction"
5863
  msgstr ""
5864
 
5865
- #: lib/gateway/paypal.php:105
5866
  msgid "PayPal API username"
5867
  msgstr ""
5868
 
5869
- #: lib/gateway/paypal.php:109
5870
  msgid "PayPal API password"
5871
  msgstr ""
5872
 
5873
- #: lib/gateway/paypal.php:113
5874
  msgid "PayPal API signature"
5875
  msgstr ""
5876
 
5877
- #: templates/dashboard/billing-address.php:95
5878
- msgid "Select Country"
5879
  msgstr ""
5880
 
5881
  #: templates/dashboard/dashboard.php:5
@@ -5926,35 +6049,35 @@ msgstr ""
5926
  msgid "You have created <span>%d</span> %s"
5927
  msgstr ""
5928
 
5929
- #: templates/dashboard/posts.php:108 templates/dashboard.php:149
5930
  msgid "No Image"
5931
  msgstr ""
5932
 
5933
- #: templates/dashboard/posts.php:122 templates/dashboard.php:163
5934
  msgid "Permalink to %s"
5935
  msgstr ""
5936
 
5937
- #: templates/dashboard/posts.php:135 templates/dashboard.php:223
5938
  msgid "Not Applicable"
5939
  msgstr ""
5940
 
5941
- #: templates/dashboard/posts.php:137 templates/dashboard.php:225
5942
  msgid "Pay Now"
5943
  msgstr ""
5944
 
5945
- #: templates/dashboard/posts.php:171 templates/dashboard.php:262
5946
  msgid "Are you sure to delete?"
5947
  msgstr ""
5948
 
5949
- #: templates/dashboard/posts.php:192 templates/dashboard.php:282
5950
  msgid "&laquo;"
5951
  msgstr ""
5952
 
5953
- #: templates/dashboard/posts.php:193 templates/dashboard.php:283
5954
  msgid "&raquo;"
5955
  msgstr ""
5956
 
5957
- #: templates/dashboard/posts.php:216 templates/dashboard.php:305
5958
  msgid "No %s found"
5959
  msgstr ""
5960
 
@@ -5962,7 +6085,15 @@ msgstr ""
5962
  msgid "You've subscribed to the following package."
5963
  msgstr ""
5964
 
5965
- #: templates/dashboard/subscription.php:55
 
 
 
 
 
 
 
 
5966
  msgid "<p><i>To cancel the pack, press the following cancel button.</i></p>"
5967
  msgstr ""
5968
 
@@ -6056,255 +6187,259 @@ msgstr ""
6056
  msgid "Private"
6057
  msgstr ""
6058
 
6059
- #: wpuf-functions.php:212 wpuf-functions.php:1798
6060
  msgid "-- select --"
6061
  msgstr ""
6062
 
6063
- #: wpuf-functions.php:455
6064
  msgid "Images"
6065
  msgstr ""
6066
 
6067
- #: wpuf-functions.php:456
6068
  msgid "Audio"
6069
  msgstr ""
6070
 
6071
- #: wpuf-functions.php:457
6072
  msgid "Videos"
6073
  msgstr ""
6074
 
6075
- #: wpuf-functions.php:458
6076
  msgid "PDF"
6077
  msgstr ""
6078
 
6079
- #: wpuf-functions.php:459
6080
  msgid "Office Documents"
6081
  msgstr ""
6082
 
6083
- #: wpuf-functions.php:460
6084
  msgid "Zip Archives"
6085
  msgstr ""
6086
 
6087
- #: wpuf-functions.php:461
6088
  msgid "Executable Files"
6089
  msgstr ""
6090
 
6091
- #: wpuf-functions.php:462
6092
  msgid "CSV"
6093
  msgstr ""
6094
 
6095
- #: wpuf-functions.php:867
6096
  msgid "Directions »"
6097
  msgstr ""
6098
 
6099
- #: wpuf-functions.php:1781
6100
  msgid "Edit Profile"
6101
  msgstr ""
6102
 
6103
- #: wpuf-functions.php:1908
6104
  msgid "United Arab Emirates Dirham"
6105
  msgstr ""
6106
 
6107
- #: wpuf-functions.php:1909
6108
  msgid "Australian Dollars"
6109
  msgstr ""
6110
 
6111
- #: wpuf-functions.php:1910
6112
  msgid "Argentine Peso"
6113
  msgstr ""
6114
 
6115
- #: wpuf-functions.php:1911
6116
  msgid "Bangladeshi Taka"
6117
  msgstr ""
6118
 
6119
- #: wpuf-functions.php:1912
6120
  msgid "Brazilian Real"
6121
  msgstr ""
6122
 
6123
- #: wpuf-functions.php:1913
6124
  msgid "Bulgarian Lev"
6125
  msgstr ""
6126
 
6127
- #: wpuf-functions.php:1914
6128
  msgid "Canadian Dollars"
6129
  msgstr ""
6130
 
6131
- #: wpuf-functions.php:1915
6132
  msgid "Chilean Peso"
6133
  msgstr ""
6134
 
6135
- #: wpuf-functions.php:1916
6136
  msgid "Chinese Yuan"
6137
  msgstr ""
6138
 
6139
- #: wpuf-functions.php:1917
6140
  msgid "Colombian Peso"
6141
  msgstr ""
6142
 
6143
- #: wpuf-functions.php:1918
6144
  msgid "Czech Koruna"
6145
  msgstr ""
6146
 
6147
- #: wpuf-functions.php:1919
6148
  msgid "Danish Krone"
6149
  msgstr ""
6150
 
6151
- #: wpuf-functions.php:1920
6152
  msgid "Dominican Peso"
6153
  msgstr ""
6154
 
6155
- #: wpuf-functions.php:1921
6156
  msgid "Algerian Dinar"
6157
  msgstr ""
6158
 
6159
- #: wpuf-functions.php:1922
6160
  msgid "Euros"
6161
  msgstr ""
6162
 
6163
- #: wpuf-functions.php:1923
6164
  msgid "Hong Kong Dollar"
6165
  msgstr ""
6166
 
6167
- #: wpuf-functions.php:1924
6168
  msgid "Croatia kuna"
6169
  msgstr ""
6170
 
6171
- #: wpuf-functions.php:1925
6172
  msgid "Hungarian Forint"
6173
  msgstr ""
6174
 
6175
- #: wpuf-functions.php:1926
6176
  msgid "Icelandic krona"
6177
  msgstr ""
6178
 
6179
- #: wpuf-functions.php:1927
6180
  msgid "Indonesia Rupiah"
6181
  msgstr ""
6182
 
6183
- #: wpuf-functions.php:1928
6184
  msgid "Indian Rupee"
6185
  msgstr ""
6186
 
6187
- #: wpuf-functions.php:1929
6188
  msgid "Nepali Rupee"
6189
  msgstr ""
6190
 
6191
- #: wpuf-functions.php:1930
6192
  msgid "Israeli Shekel"
6193
  msgstr ""
6194
 
6195
- #: wpuf-functions.php:1931
6196
  msgid "Japanese Yen"
6197
  msgstr ""
6198
 
6199
- #: wpuf-functions.php:1932
6200
  msgid "Lao Kip"
6201
  msgstr ""
6202
 
6203
- #: wpuf-functions.php:1933
6204
  msgid "South Korean Won"
6205
  msgstr ""
6206
 
6207
- #: wpuf-functions.php:1934
6208
  msgid "Malaysian Ringgits"
6209
  msgstr ""
6210
 
6211
- #: wpuf-functions.php:1935
6212
  msgid "Mexican Peso"
6213
  msgstr ""
6214
 
6215
- #: wpuf-functions.php:1936
6216
  msgid "Nigerian Naira"
6217
  msgstr ""
6218
 
6219
- #: wpuf-functions.php:1937
6220
  msgid "Norwegian Krone"
6221
  msgstr ""
6222
 
6223
- #: wpuf-functions.php:1938
6224
  msgid "New Zealand Dollar"
6225
  msgstr ""
6226
 
6227
- #: wpuf-functions.php:1939
6228
  msgid "Omani Rial"
6229
  msgstr ""
6230
 
6231
- #: wpuf-functions.php:1940
6232
  msgid "Iranian Rial"
6233
  msgstr ""
6234
 
6235
- #: wpuf-functions.php:1941
6236
  msgid "Pakistani Rupee"
6237
  msgstr ""
6238
 
6239
- #: wpuf-functions.php:1942
6240
  msgid "Paraguayan Guaraní"
6241
  msgstr ""
6242
 
6243
- #: wpuf-functions.php:1943
6244
  msgid "Philippine Pesos"
6245
  msgstr ""
6246
 
6247
- #: wpuf-functions.php:1944
6248
  msgid "Polish Zloty"
6249
  msgstr ""
6250
 
6251
- #: wpuf-functions.php:1945
6252
  msgid "Pounds Sterling"
6253
  msgstr ""
6254
 
6255
- #: wpuf-functions.php:1946
6256
  msgid "Romanian Leu"
6257
  msgstr ""
6258
 
6259
- #: wpuf-functions.php:1947
6260
  msgid "Russian Ruble"
6261
  msgstr ""
6262
 
6263
- #: wpuf-functions.php:1948
6264
  msgid "Saudi Riyal"
6265
  msgstr ""
6266
 
6267
- #: wpuf-functions.php:1949
6268
  msgid "Singapore Dollar"
6269
  msgstr ""
6270
 
6271
- #: wpuf-functions.php:1950
6272
  msgid "South African rand"
6273
  msgstr ""
6274
 
6275
- #: wpuf-functions.php:1951
6276
  msgid "Swedish Krona"
6277
  msgstr ""
6278
 
6279
- #: wpuf-functions.php:1952
6280
  msgid "Swiss Franc"
6281
  msgstr ""
6282
 
6283
- #: wpuf-functions.php:1953
6284
  msgid "Taiwan New Dollars"
6285
  msgstr ""
6286
 
6287
- #: wpuf-functions.php:1954
6288
  msgid "Thai Baht"
6289
  msgstr ""
6290
 
6291
- #: wpuf-functions.php:1955
6292
  msgid "Turkish Lira"
6293
  msgstr ""
6294
 
6295
- #: wpuf-functions.php:1956
6296
  msgid "US Dollar"
6297
  msgstr ""
6298
 
6299
- #: wpuf-functions.php:1957
6300
  msgid "Vietnamese Dong"
6301
  msgstr ""
6302
 
6303
- #: wpuf-functions.php:1958
6304
  msgid "Egyptian Pound"
6305
  msgstr ""
6306
 
6307
- #: wpuf-functions.php:2831
 
 
 
 
6308
  msgid "None"
6309
  msgstr ""
6310
 
@@ -6431,7 +6566,7 @@ msgctxt "enhanced select"
6431
  msgid "Searching&hellip;"
6432
  msgstr ""
6433
 
6434
- #: wpuf-functions.php:1291
6435
  msgctxt "tag delimiter"
6436
  msgid ","
6437
  msgstr ""
2
  # This file is distributed under the GPL2 or later.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: WP User Frontend 3.1.18\n"
6
  "Report-Msgid-Bugs-To: https://wedevs.com/contact/\n"
7
+ "POT-Creation-Date: 2020-03-13 10:36:35+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
28
  msgid "WP User Frontend"
29
  msgstr ""
30
 
31
+ #: admin/class-admin-settings.php:83
32
  msgid "User Frontend"
33
  msgstr ""
34
 
35
+ #: admin/class-admin-settings.php:85 admin/post-forms-list-table-view.php:4
36
  msgid "Post Forms"
37
  msgstr ""
38
 
39
+ #: admin/class-admin-settings.php:94
 
 
 
 
 
 
 
 
40
  msgid "Subscriptions"
41
  msgstr ""
42
 
43
+ #: admin/class-admin-settings.php:100 admin/class-tools.php:389
44
  #: admin/transactions.php:2
45
  msgid "Transactions"
46
  msgstr ""
47
 
48
+ #: admin/class-admin-settings.php:103 admin/tools.php:13
49
  msgid "Tools"
50
  msgstr ""
51
 
52
+ #: admin/class-admin-settings.php:108
53
  msgid "Premium"
54
  msgstr ""
55
 
56
+ #: admin/class-admin-settings.php:110
57
  msgid "Help"
58
  msgstr ""
59
 
60
+ #: admin/class-admin-settings.php:110
61
  msgid "<span style=\"color:#f18500\">Help</span>"
62
  msgstr ""
63
 
64
+ #: admin/class-admin-settings.php:111 admin/class-admin-settings.php:151
65
  #: admin/form-builder/views/form-builder.php:9 includes/setup-wizard.php:125
66
  msgid "Settings"
67
  msgstr ""
68
 
69
+ #: admin/class-admin-settings.php:113 admin/class-admin-subscription.php:204
70
  #: admin/subscribers.php:18
71
  msgid "Subscribers"
72
  msgstr ""
73
 
74
+ #: admin/class-admin-settings.php:366
75
  msgid "Number of items per page:"
76
  msgstr ""
77
 
78
+ #: admin/class-admin-settings.php:396
79
  msgid "Post lock has been cleared"
80
  msgstr ""
81
 
123
  msgid "Amount"
124
  msgstr ""
125
 
126
+ #: admin/class-admin-subscription.php:205 includes/class-privacy.php:478
127
  #: includes/free/subscription.php:8
128
  msgid "Recurring"
129
  msgstr ""
133
  msgstr ""
134
 
135
  #: admin/class-admin-subscription.php:226
136
+ #: admin/class-admin-subscription.php:596 class/frontend-account.php:255
137
  #: class/subscription.php:879 includes/class-user-subscription.php:305
138
  #: templates/subscriptions/pack-details.php:24
139
  msgid "Free"
203
  msgid "Post Expiration Time"
204
  msgstr ""
205
 
206
+ #: admin/class-admin-subscription.php:451 admin/html/form-settings-post.php:56
207
  #: admin/post-forms-list-table.php:313
208
  msgid "Post Status"
209
  msgstr ""
256
  msgid "For each %s %s"
257
  msgstr ""
258
 
259
+ #: admin/class-admin-subscription.php:601 class/frontend-account.php:259
260
  msgid ", for %s installments"
261
  msgstr ""
262
 
281
  msgstr ""
282
 
283
  #: admin/class-admin-subscription.php:669
284
+ #: includes/class-user-subscription.php:354
285
+ #: templates/dashboard/subscription.php:46
286
  msgid "Expire date:"
287
  msgstr ""
288
 
299
  msgstr ""
300
 
301
  #: admin/class-admin-subscription.php:774
302
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:284
303
  #: class/payment.php:205 class/subscription.php:783
304
  #: includes/class-list-table-subscribers.php:138 lib/appsero/Insights.php:764
305
+ #: templates/dashboard/subscription.php:65
306
  msgid "Cancel"
307
  msgstr ""
308
 
336
 
337
  #: admin/class-tools.php:44 admin/class-tools.php:111
338
  #: admin/post-forms-list-table.php:43 class/transactions-list-table.php:87
339
+ #: includes/class-list-table-subscribers.php:136 wpuf-functions.php:2860
340
  msgid "All"
341
  msgstr ""
342
 
423
  msgid "Reset Settings"
424
  msgstr ""
425
 
426
+ #: admin/class-tools.php:370
427
+ msgid ""
428
+ "Caution: This tool will delete all the plugin settings of WP User Frontend "
429
+ "Pro"
430
+ msgstr ""
431
+
432
  #: admin/class-tools.php:376
433
  msgid "Delete Forms"
434
  msgstr ""
435
 
436
+ #: admin/class-tools.php:379
437
+ msgid "Caution: This tool will delete all the post and registration/profile forms."
438
+ msgstr ""
439
+
440
  #: admin/class-tools.php:381
441
  msgid "Delete Post Forms"
442
  msgstr ""
515
 
516
  #: admin/form-builder/assets/js/components/form-featured_image/template.php:6
517
  #: admin/form-builder/assets/js/components/form-image_upload/template.php:6
518
+ #: class/render-form.php:1655
519
  #: includes/fields/class-field-featured-image.php:122
520
+ #: includes/fields/class-field-image.php:115
521
+ #: includes/fields/class-field-image.php:136
522
  msgid "Select Image"
523
  msgstr ""
524
 
525
  #: admin/form-builder/assets/js/components/form-post_content/template.php:4
526
+ #: class/render-form.php:1052 includes/fields/class-field-post-content.php:48
527
  msgid "Insert Photo"
528
  msgstr ""
529
 
540
  msgstr ""
541
 
542
  #: admin/form-builder/class-wpuf-admin-form-builder-ajax.php:35
543
+ #: admin/form-builder/class-wpuf-admin-form-builder-ajax.php:82
544
  #: admin/promotion.php:290 admin/promotion.php:294 admin/promotion.php:312
545
  #: admin/promotion.php:316
546
  msgid "Unauthorized operation"
550
  msgid "Invalid form id"
551
  msgstr ""
552
 
553
+ #: admin/form-builder/class-wpuf-admin-form-builder-ajax.php:86
554
+ msgid "Invalid post type"
555
+ msgstr ""
556
+
557
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:279
558
  msgid "Advanced Options"
559
  msgstr ""
560
 
561
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:280
562
  msgid "Are you sure you want to delete this field?"
563
  msgstr ""
564
 
565
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:281
566
+ #: admin/posting.php:73 class/asset-loader.php:56 wpuf.php:722
567
  msgid "Yes, delete it"
568
  msgstr ""
569
 
570
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:282
571
+ #: admin/posting.php:74 class/asset-loader.php:57 wpuf.php:723
572
  msgid "No, cancel it"
573
  msgstr ""
574
 
575
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:283
576
  msgid "OK"
577
  msgstr ""
578
 
579
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:285
580
  #: includes/free/admin/shortcode-builder.php:70
581
  msgid "Close"
582
  msgstr ""
583
 
584
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:286
585
  msgid "This field must contain at least one choice"
586
  msgstr ""
587
 
588
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:287
589
  #: includes/fields/class-field-checkbox.php:112
590
+ #: includes/fields/class-field-dropdown.php:105
591
  #: includes/fields/class-field-multidropdown.php:82
592
  #: includes/fields/class-field-radio.php:108
593
  msgid "Option"
594
  msgstr ""
595
 
596
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:288
597
  msgid "Column"
598
  msgstr ""
599
 
600
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:289
601
  msgid "This field must contain at least one column"
602
  msgstr ""
603
 
604
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:290
605
  msgid "is available in Pro version"
606
  msgstr ""
607
 
608
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:291
609
  msgid "Please upgrade to the Pro version to unlock all these awesome features"
610
  msgstr ""
611
 
612
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:292
613
  msgid "Get the Pro version"
614
  msgstr ""
615
 
616
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:293
617
  #: includes/fields/class-abstract-fields.php:384
618
  msgid "Select"
619
  msgstr ""
620
 
621
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:294
622
  msgid "Saved form data"
623
  msgstr ""
624
 
625
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:295
626
  msgid "You have unsaved changes."
627
  msgstr ""
628
 
629
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:296
630
  #: admin/form-builder/views/form-builder.php:49
631
  msgid "Click to copy shortcode"
632
  msgstr ""
728
  #: admin/form.php:71 admin/form.php:109 admin/installer.php:86
729
  #: admin/post-forms-list-table.php:406 class/subscription.php:402
730
  #: includes/free/admin/shortcode-button.php:87 includes/free/edit-user.php:104
731
+ #: templates/dashboard/posts.php:176 templates/dashboard.php:268
732
  msgid "Edit"
733
  msgstr ""
734
 
934
  msgstr ""
935
 
936
  #: admin/html/form-settings-post-edit.php:31
937
+ #: admin/html/form-settings-post.php:130 includes/free/form-element.php:362
938
  msgid "Redirect To"
939
  msgstr ""
940
 
941
  #: admin/html/form-settings-post-edit.php:36
942
+ #: admin/html/form-settings-post.php:135
943
  msgid "Newly created post"
944
  msgstr ""
945
 
946
  #: admin/html/form-settings-post-edit.php:37
947
+ #: admin/html/form-settings-post.php:136 includes/free/form-element.php:367
948
  msgid "Same Page"
949
  msgstr ""
950
 
951
  #: admin/html/form-settings-post-edit.php:38
952
+ #: admin/html/form-settings-post.php:137 includes/free/form-element.php:368
953
  msgid "To a page"
954
  msgstr ""
955
 
956
  #: admin/html/form-settings-post-edit.php:39
957
+ #: admin/html/form-settings-post.php:138 includes/free/form-element.php:369
958
  msgid "To a custom URL"
959
  msgstr ""
960
 
961
  #: admin/html/form-settings-post-edit.php:48
962
+ #: admin/html/form-settings-post.php:147 includes/free/form-element.php:377
963
  msgid "After successfull submit, where the page will redirect to"
964
  msgstr ""
965
 
968
  msgstr ""
969
 
970
  #: admin/html/form-settings-post-edit.php:61
971
+ #: admin/html/form-settings-post.php:160 includes/free/form-element.php:397
972
  msgid "Page"
973
  msgstr ""
974
 
975
  #: admin/html/form-settings-post-edit.php:76
976
+ #: admin/html/form-settings-post.php:175 includes/free/form-element.php:411
977
  msgid "Custom URL"
978
  msgstr ""
979
 
1010
  msgid "Submit"
1011
  msgstr ""
1012
 
1013
+ #: admin/html/form-settings-post.php:29 admin/post-forms-list-table.php:312
1014
  msgid "Post Type"
1015
  msgstr ""
1016
 
1017
+ #: admin/html/form-settings-post.php:51
1018
  msgid "Custom Post Type will appear here. "
1019
  msgstr ""
1020
 
1021
+ #: admin/html/form-settings-post.php:51
1022
  msgid "Learn More "
1023
  msgstr ""
1024
 
1025
+ #: admin/html/form-settings-post.php:71
1026
  msgid "Post Format"
1027
  msgstr ""
1028
 
1029
+ #: admin/html/form-settings-post.php:74
1030
  msgid "- None -"
1031
  msgstr ""
1032
 
1033
+ #: admin/html/form-settings-post.php:120
 
 
 
 
1034
  msgid ""
1035
  "If users are not allowed to choose any category, this category will be used "
1036
  "instead (if post type supports)"
1037
  msgstr ""
1038
 
1039
+ #: admin/html/form-settings-post.php:153
1040
  msgid "Message to show"
1041
  msgstr ""
1042
 
1043
+ #: admin/html/form-settings-post.php:182
1044
  msgid "Comment Status"
1045
  msgstr ""
1046
 
1047
+ #: admin/html/form-settings-post.php:185
1048
  msgid "Open"
1049
  msgstr ""
1050
 
1051
+ #: admin/html/form-settings-post.php:186
1052
  msgid "Closed"
1053
  msgstr ""
1054
 
1055
+ #: admin/html/form-settings-post.php:192
1056
  msgid "Submit Post Button text"
1057
  msgstr ""
1058
 
1059
+ #: admin/html/form-settings-post.php:199
1060
  msgid "Post Draft"
1061
  msgstr ""
1062
 
1063
+ #: admin/html/form-settings-post.php:204
1064
  msgid "Enable Saving as draft"
1065
  msgstr ""
1066
 
1067
+ #: admin/html/form-settings-post.php:206
1068
  msgid "It will show a button to save as draft"
1069
  msgstr ""
1070
 
1075
  msgstr ""
1076
 
1077
  #: admin/html/form-submission-restriction.php:12 admin/html/support.php:223
1078
+ #: class/transactions-list-table.php:50 includes/class-privacy.php:358
1079
  #: includes/free/edit-user.php:168 templates/registration-form.php:47
1080
  msgid "Email"
1081
  msgstr ""
1272
  "<strong>offers</strong> and <strong>news updates</strong>."
1273
  msgstr ""
1274
 
1275
+ #: admin/html/support.php:218 includes/class-privacy.php:350
1276
  #: includes/free/edit-profile.php:106
1277
  msgid "First Name"
1278
  msgstr ""
1382
  msgstr ""
1383
 
1384
  #: admin/html/whats-new.php:8
1385
+ msgid "Hide post edit option when subscription is expired"
1386
  msgstr ""
1387
 
1388
  #: admin/html/whats-new.php:10
1389
+ msgid "Hide post edit option from users whose subscription pack is expired."
1390
+ msgstr ""
1391
+
1392
+ #: admin/html/whats-new.php:13
1393
+ msgid "Check files to prevent duplicity in media upload"
1394
+ msgstr ""
1395
+
1396
+ #: admin/html/whats-new.php:15
1397
+ msgid ""
1398
+ "A simple measure has been taken to prevent maliciously flooding the site by "
1399
+ "uploading same file multiple times. Though this won't work with already "
1400
+ "uploaded medias."
1401
+ msgstr ""
1402
+
1403
+ #: admin/html/whats-new.php:18
1404
+ msgid "Refactor address fields in Account section"
1405
+ msgstr ""
1406
+
1407
+ #: admin/html/whats-new.php:20
1408
+ msgid "Address edit section from Account section has been rewritten to improve UX."
1409
+ msgstr ""
1410
+
1411
+ #: admin/html/whats-new.php:23
1412
+ msgid "Update Paypal payment gateway"
1413
+ msgstr ""
1414
+
1415
+ #: admin/html/whats-new.php:25
1416
+ msgid "Paypal payment gateway has seen some improvements."
1417
+ msgstr ""
1418
+
1419
+ #: admin/html/whats-new.php:28
1420
+ msgid "Default Category selection improvements"
1421
+ msgstr ""
1422
+
1423
+ #: admin/html/whats-new.php:30
1424
+ msgid ""
1425
+ "An intuitive way of selecting default category of a selected post type has "
1426
+ "been introduced."
1427
+ msgstr ""
1428
+
1429
+ #: admin/html/whats-new.php:33
1430
+ msgid "Compatibility issue with ACF date time field"
1431
+ msgstr ""
1432
+
1433
+ #: admin/html/whats-new.php:35
1434
+ msgid "A Compatibility issue with ACF date time field has been addressed."
1435
+ msgstr ""
1436
+
1437
+ #: admin/html/whats-new.php:38
1438
+ msgid "Media title, caption & description not saving"
1439
+ msgstr ""
1440
+
1441
+ #: admin/html/whats-new.php:40
1442
+ msgid ""
1443
+ "Media title, caption & description were not saving from frontend. They will "
1444
+ "now."
1445
+ msgstr ""
1446
+
1447
+ #: admin/html/whats-new.php:43
1448
+ msgid ""
1449
+ "The Events Calendar venue and organizer fields issue in WPUF Custom Fields "
1450
+ "metabox"
1451
+ msgstr ""
1452
+
1453
+ #: admin/html/whats-new.php:45
1454
+ msgid ""
1455
+ "A workaround has been introduced to save The Events Calendar Venue and "
1456
+ "Organizer fields properly from WPUF Custom Fields metabox."
1457
+ msgstr ""
1458
+
1459
+ #: admin/html/whats-new.php:48
1460
+ msgid "Checkbox data not saving from WPUF Custom Fields metabox"
1461
+ msgstr ""
1462
+
1463
+ #: admin/html/whats-new.php:50
1464
+ msgid ""
1465
+ "Checkboxe data from WPUF Custom Fields metabox were not saving. It has been "
1466
+ "fixed."
1467
+ msgstr ""
1468
+
1469
+ #: admin/html/whats-new.php:53
1470
+ msgid "Multi-column Repeater field data saving issue"
1471
+ msgstr ""
1472
+
1473
+ #: admin/html/whats-new.php:55
1474
+ msgid ""
1475
+ "Multi-column Repeater field data from a form was not saving. It has been "
1476
+ "fixed."
1477
+ msgstr ""
1478
+
1479
+ #: admin/html/whats-new.php:58
1480
+ msgid "Multistep form conflict with Elementor"
1481
+ msgstr ""
1482
+
1483
+ #: admin/html/whats-new.php:60
1484
+ msgid "Multistep form had a conflict with Elementor. It has been fixed."
1485
+ msgstr ""
1486
+
1487
+ #: admin/html/whats-new.php:63
1488
+ msgid "Multiple images showing issue in frontend"
1489
+ msgstr ""
1490
+
1491
+ #: admin/html/whats-new.php:65
1492
+ msgid "Multiple images in a post were not showing in frontend. Now they will."
1493
+ msgstr ""
1494
+
1495
+ #: admin/html/whats-new.php:74
1496
+ msgid "Nonce not verify on login"
1497
+ msgstr ""
1498
+
1499
+ #: admin/html/whats-new.php:76
1500
  msgid "Return of function wp_verify_nonce() was ignored."
1501
  msgstr ""
1502
 
1503
+ #: admin/html/whats-new.php:85
1504
  msgid "Option to set which tab shows as active on the account page"
1505
  msgstr ""
1506
 
1507
+ #: admin/html/whats-new.php:87
1508
  msgid ""
1509
  "Option to set which tab shows as active on the account page. To configure "
1510
  "this setting navigate to wp-admin->User Frontend->Settings->My "
1511
  "Account->Active Tab "
1512
  msgstr ""
1513
 
1514
+ #: admin/html/whats-new.php:90
1515
  msgid "Unlock option was unavailable after the post being locked"
1516
  msgstr ""
1517
 
1518
+ #: admin/html/whats-new.php:92
1519
  msgid "Unlock option was unavailable after the post being locked."
1520
  msgstr ""
1521
 
1522
+ #: admin/html/whats-new.php:95
1523
  msgid "Gutenberg block of WPUF didn't work on bedrock installation"
1524
  msgstr ""
1525
 
1526
+ #: admin/html/whats-new.php:97
1527
  msgid "Gutenberg block of WPUF didn't work on bedrock installation."
1528
  msgstr ""
1529
 
1530
+ #: admin/html/whats-new.php:100
1531
  msgid "Sending admin payment received email twice"
1532
  msgstr ""
1533
 
1534
+ #: admin/html/whats-new.php:102
1535
  msgid ""
1536
  "After processing payment admin & user was receiving payment received email "
1537
  "twice."
1538
  msgstr ""
1539
 
1540
+ #: admin/html/whats-new.php:105
1541
  msgid ""
1542
  "Add shortcode support to display post information in the Post Expiration "
1543
  "Message"
1544
  msgstr ""
1545
 
1546
+ #: admin/html/whats-new.php:107
1547
  msgid ""
1548
  "Add shortcode support to display post information in the Post Expiration "
1549
  "Message. You can use: <strong>{post_author} {post_url} {blogname} "
1550
  "{post_title} {post_status}</strong>"
1551
  msgstr ""
1552
 
1553
+ #: admin/html/whats-new.php:110
1554
  msgid "Add optin on the setup wizard"
1555
  msgstr ""
1556
 
1557
+ #: admin/html/whats-new.php:112
1558
  msgid ""
1559
  "Added optin on the setup wizard, admin can choose whether he/she wants to "
1560
  "share server environment details (php, mysql, server, WordPress versions), "
1562
  "name and url, admin name and email address. No sensitive data is tracked"
1563
  msgstr ""
1564
 
1565
+ #: admin/html/whats-new.php:121
1566
  msgid "Post Owner problem"
1567
  msgstr ""
1568
 
1569
+ #: admin/html/whats-new.php:123
1570
  msgid ""
1571
  "Posts were not assigned to the selected default post owner, this issue has "
1572
  "been fixed."
1573
  msgstr ""
1574
 
1575
+ #: admin/html/whats-new.php:126
1576
  msgid "Google reCaptcha was not working"
1577
  msgstr ""
1578
 
1579
+ #: admin/html/whats-new.php:128
1580
  msgid ""
1581
  "Google reCaptcha was not working, users could submit the form without "
1582
  "reCaptcha validation."
1583
  msgstr ""
1584
 
1585
+ #: admin/html/whats-new.php:137
1586
  msgid "Added column field"
1587
  msgstr ""
1588
 
1589
+ #: admin/html/whats-new.php:142
1590
  msgid "Unable to render the events on the front-end dashboard"
1591
  msgstr ""
1592
 
1593
+ #: admin/html/whats-new.php:144
1594
  msgid ""
1595
  "On the frontend dashboard, the submitted events were not showing, you will "
1596
  "get it fixed in this version."
1597
  msgstr ""
1598
 
1599
+ #: admin/html/whats-new.php:147
1600
  msgid "Page order getting 0(zero) after editing from the frontend"
1601
  msgstr ""
1602
 
1603
+ #: admin/html/whats-new.php:149
1604
  msgid ""
1605
  "Page order was not saving while editing a post using WPUF form, it has been "
1606
  "fixed."
1607
  msgstr ""
1608
 
1609
+ #: admin/html/whats-new.php:152
1610
  msgid "Text input field for taxonomies not working"
1611
  msgstr ""
1612
 
1613
+ #: admin/html/whats-new.php:154
1614
  msgid ""
1615
  "When taxonomy field type is set to `Text Input` then a fatal error was "
1616
  "showing on the frontend, no error with taxonomy field in the latest version."
1617
  msgstr ""
1618
 
1619
+ #: admin/html/whats-new.php:157
1620
  msgid ""
1621
  "In radio and checkbox field use conditional logic that value does not save "
1622
  "in database"
1623
  msgstr ""
1624
 
1625
+ #: admin/html/whats-new.php:159
1626
  msgid ""
1627
  "The selected value of radio and checkbox field were not showing while "
1628
  "editing posts from the backend or frontend, you can see the selected value "
1629
  "in this version."
1630
  msgstr ""
1631
 
1632
+ #: admin/html/whats-new.php:162
1633
  msgid "The args param not working with get_avatar filter"
1634
  msgstr ""
1635
 
1636
+ #: admin/html/whats-new.php:164
1637
  msgid "The args parameter did not exist with get_avatar filter, which now exists."
1638
  msgstr ""
1639
 
1640
+ #: admin/html/whats-new.php:167
1641
  msgid "The item in ajax taxonomy field was not selected"
1642
  msgstr ""
1643
 
1644
+ #: admin/html/whats-new.php:169
1645
  msgid ""
1646
  "When the taxonomy field type is set to Ajax, the submitted terms were not "
1647
  "showing in the backend and frontend which have been fixed."
1648
  msgstr ""
1649
 
1650
+ #: admin/html/whats-new.php:178
1651
  msgid "Unable to send new user registration email"
1652
  msgstr ""
1653
 
1654
+ #: admin/html/whats-new.php:180
1655
  msgid ""
1656
  "WP User Frontend default registration form `[wpuf-registration]` was unable "
1657
  "to send the new user registration email."
1658
  msgstr ""
1659
 
1660
+ #: admin/html/whats-new.php:183
1661
  msgid "WPUF forms block compatibility issue with the latest WP version"
1662
  msgstr ""
1663
 
1664
+ #: admin/html/whats-new.php:185
1665
  msgid ""
1666
  "With the latest version of WordPress the gutenberg block of WP User "
1667
  "Frontend were not working. In this version, you will get it fixed."
1668
  msgstr ""
1669
 
1670
+ #: admin/html/whats-new.php:188
1671
  msgid "Page not update where `[wpuf_dashboard]` shortcode exist"
1672
  msgstr ""
1673
 
1674
+ #: admin/html/whats-new.php:190
1675
  msgid ""
1676
  "While using Gutenberg, the page were not being updated with WPUF shortcode "
1677
  "[wpuf dashboard]"
1678
  msgstr ""
1679
 
1680
+ #: admin/html/whats-new.php:193
1681
  msgid "Retain default when determining whether to display the admin bar"
1682
  msgstr ""
1683
 
1684
+ #: admin/html/whats-new.php:195
1685
  msgid ""
1686
  "From the User Frontend Settings, set that Administrator, Editor, Vendor can "
1687
  "see the admin bar. Now, the super admin want, one specific user ( who has "
1691
  "frontend."
1692
  msgstr ""
1693
 
1694
+ #: admin/html/whats-new.php:198
1695
  msgid "Fatal error when use PHP lower version (5.4 or lower)"
1696
  msgstr ""
1697
 
1698
+ #: admin/html/whats-new.php:200
1699
  msgid ""
1700
  "It was unable to install WP User Frontend with PHP 5.4 or lower version. "
1701
  "Here is the error details: <br><br><strong>Fatal error: Can't use method "
1703
  "/wp-user-frontend/class/frontend-form-post.php on line 194</strong>"
1704
  msgstr ""
1705
 
1706
+ #: admin/html/whats-new.php:203
1707
  msgid "Product form was unable to show the single gallery image"
1708
  msgstr ""
1709
 
1710
+ #: admin/html/whats-new.php:205
1711
  msgid ""
1712
  "When user upload single image for product gallery using WPUF WooCommerce "
1713
  "product form, that image were not showing on the frontend."
1714
  msgstr ""
1715
 
1716
+ #: admin/html/whats-new.php:214
1717
  msgid "WooCommerce gallery images not getting saved"
1718
  msgstr ""
1719
 
1720
+ #: admin/html/whats-new.php:216
1721
  msgid ""
1722
  "After releasing version 2.9.3, WooCommerce gallery image field stopped "
1723
  "working. You will get it fixed in this version."
1724
  msgstr ""
1725
 
1726
+ #: admin/html/whats-new.php:225
1727
  msgid "The Events Calendar Integration Form"
1728
  msgstr ""
1729
 
1730
+ #: admin/html/whats-new.php:227
1731
  msgid ""
1732
  "Now admin can allow users to create event from the frontend. Currently WPUF "
1733
  "has a one click pre-build event form that has been integrated with The "
1734
  "Events Calendar plugin"
1735
  msgstr ""
1736
 
1737
+ #: admin/html/whats-new.php:230
1738
  msgid "Post Submission Facility From Account Page"
1739
  msgstr ""
1740
 
1741
+ #: admin/html/whats-new.php:232
1742
  msgid ""
1743
  "On the frontend account page, added a new menu item named <b>Submit "
1744
  "Post</b>. Now admin can allow users to submit post from their default "
1747
  "you can assign any post form that will use to submit posts."
1748
  msgstr ""
1749
 
1750
+ #: admin/html/whats-new.php:235
1751
  msgid "Login/Lost Password Link Under Registration Form"
1752
  msgstr ""
1753
 
1754
+ #: admin/html/whats-new.php:237
1755
  msgid "Added Login/Lost Password link under registration form"
1756
  msgstr ""
1757
 
1758
+ #: admin/html/whats-new.php:246
1759
  msgid "Added drag and drop image ordering on image upload"
1760
  msgstr ""
1761
 
1762
+ #: admin/html/whats-new.php:248
1763
  msgid ""
1764
  "Now frontend users can drag & drop the images/files to change the order "
1765
  "while uploading."
1766
  msgstr ""
1767
 
1768
+ #: admin/html/whats-new.php:251
1769
  msgid "Added reCAPTCHA field in login form"
1770
  msgstr ""
1771
 
1772
+ #: admin/html/whats-new.php:253
1773
  msgid ""
1774
  "Admin has the option to show reCAPTCHA field in login form. Check the "
1775
  "related settings from <strong>User Frontend > Settings > "
1776
  "Login/Registration</strong>"
1777
  msgstr ""
1778
 
1779
+ #: admin/html/whats-new.php:256
1780
  msgid "Added preview option in forms"
1781
  msgstr ""
1782
 
1783
+ #: admin/html/whats-new.php:258
1784
  msgid ""
1785
  "You can see a nice <strong>Preview</strong> button with <strong>Save "
1786
  "Form</strong> button, admin can take a quick look of the form without using "
1787
  "shortcode"
1788
  msgstr ""
1789
 
1790
+ #: admin/html/whats-new.php:261
1791
  msgid "Fixed hiding “Select Image” button while uploading multiple images."
1792
  msgstr ""
1793
 
1794
+ #: admin/html/whats-new.php:263
1795
  msgid ""
1796
  "The upload button will not be hidden until the user selects max number of "
1797
  "files "
1798
  msgstr ""
1799
 
1800
+ #: admin/html/whats-new.php:266
1801
  msgid "Added form limit notice before form submission"
1802
  msgstr ""
1803
 
1804
+ #: admin/html/whats-new.php:268
1805
  msgid ""
1806
  "Limit notice message was showing after submission, now it is showing when "
1807
  "rendering the form"
1808
  msgstr ""
1809
 
1810
+ #: admin/html/whats-new.php:271
1811
  msgid "Fixed: default post category not saving"
1812
  msgstr ""
1813
 
1814
+ #: admin/html/whats-new.php:273
1815
  msgid ""
1816
  "From the form <strong>Settings > Post Settings</strong>, default post "
1817
  "category options were not saving. Now, it's fixed."
1818
  msgstr ""
1819
 
1820
+ #: admin/html/whats-new.php:276
1821
  msgid ""
1822
  "WPUF dashboard shortcode with form_id attribute was not showing posts "
1823
  "properly"
1824
  msgstr ""
1825
 
1826
+ #: admin/html/whats-new.php:278
1827
  msgid ""
1828
  "Now you can list posts on the frontend by using <strong>form_id<strong/> "
1829
  "attribute with <strong>[wpuf_dashboard]</strong> shortcode"
1830
  msgstr ""
1831
 
1832
+ #: admin/html/whats-new.php:287
1833
  msgid "Changed text domain to `wp-user-frontend` from `wpuf` "
1834
  msgstr ""
1835
 
1836
+ #: admin/html/whats-new.php:289
1837
  msgid ""
1838
  "If you are using other language than English. Please <b>rename</b> your "
1839
  "<i>.po and .mo </i> files to `wp-user-frontend_` from `wpuf_` <br> This "
1840
  "change was made to support translations from translate.wordpress.org"
1841
  msgstr ""
1842
 
1843
+ #: admin/html/whats-new.php:292
1844
  msgid "Added WP User Frontend Data export and erase functionality."
1845
  msgstr ""
1846
 
1847
+ #: admin/html/whats-new.php:294
1848
  msgid "Added functionality to export WP User Frontend Data to comply with GDPR."
1849
  msgstr ""
1850
 
1851
+ #: admin/html/whats-new.php:297
1852
  msgid "Added billing address customizer."
1853
  msgstr ""
1854
 
1855
+ #: admin/html/whats-new.php:299
1856
  msgid "Added customizer options for billing address in payment page."
1857
  msgstr ""
1858
 
1859
+ #: admin/html/whats-new.php:302
1860
  msgid "Make the payment page responsive."
1861
  msgstr ""
1862
 
1863
+ #: admin/html/whats-new.php:304
1864
  msgid "Some css adjustments are made in payment page to make it responsive."
1865
  msgstr ""
1866
 
1867
+ #: admin/html/whats-new.php:307
1868
  msgid "Fixed image upload issue in Safari."
1869
  msgstr ""
1870
 
1871
+ #: admin/html/whats-new.php:309
1872
  msgid "Images were not showing after upload in safari, it is fixed now."
1873
  msgstr ""
1874
 
1875
+ #: admin/html/whats-new.php:312
1876
  msgid "Post update issue after updating or removing post images."
1877
  msgstr ""
1878
 
1879
+ #: admin/html/whats-new.php:314
1880
  msgid ""
1881
  "Posts cannot be updated after updating or removing post images, it is fixed "
1882
  "now."
1883
  msgstr ""
1884
 
1885
+ #: admin/html/whats-new.php:323
1886
  msgid "Allow overriding form input styles using theme styling."
1887
  msgstr ""
1888
 
1889
+ #: admin/html/whats-new.php:325
1890
  msgid "Overriding form input styles using theme style is now possible."
1891
  msgstr ""
1892
 
1893
+ #: admin/html/whats-new.php:328
1894
  msgid "Fixed Auto Login after registration."
1895
  msgstr ""
1896
 
1897
+ #: admin/html/whats-new.php:330
1898
  msgid "Auto Login after registration was not working is fixed now."
1899
  msgstr ""
1900
 
1901
+ #: admin/html/whats-new.php:333
1902
  msgid "Fixed fallback cost calculation"
1903
  msgstr ""
1904
 
1905
+ #: admin/html/whats-new.php:335
1906
  msgid "Fallback cost calculation was inaccurate for some cases, it is fixed now."
1907
  msgstr ""
1908
 
1909
+ #: admin/html/whats-new.php:338
1910
  msgid "Removal of subscription from User Profile gets reverted if updated"
1911
  msgstr ""
1912
 
1913
+ #: admin/html/whats-new.php:340
1914
  msgid "User subscription deletion gets reverted if updated is fixed."
1915
  msgstr ""
1916
 
1917
+ #: admin/html/whats-new.php:343
1918
  msgid "Show Free pack users in subscribers list."
1919
  msgstr ""
1920
 
1921
+ #: admin/html/whats-new.php:345
1922
  msgid "Free pack users were not showing in subscribers list, now they will."
1923
  msgstr ""
1924
 
1925
+ #: admin/html/whats-new.php:354
1926
  msgid "WP User Frontend Guten Block is added"
1927
  msgstr ""
1928
 
1929
+ #: admin/html/whats-new.php:356
1930
  msgid ""
1931
  "WPUF Form Block is now available to be used within gutenberg editor with "
1932
  "preview of the form. "
1933
  msgstr ""
1934
 
1935
+ #: admin/html/whats-new.php:359
1936
  msgid "Advanced Custom Fields plugin compatibility"
1937
  msgstr ""
1938
 
1939
+ #: admin/html/whats-new.php:361
1940
  msgid "Now all your ACF fields can be used within WPUF Post forms. "
1941
  msgstr ""
1942
 
1943
+ #: admin/html/whats-new.php:364
1944
  msgid "Taxonomy Terms not showing for custom post types"
1945
  msgstr ""
1946
 
1947
+ #: admin/html/whats-new.php:366
1948
  msgid ""
1949
  "Fixed an issue with taxonomy terms not appearing for Custom Post types "
1950
  "within Form Settings and Dashboard Post Listing"
1951
  msgstr ""
1952
 
1953
+ #: admin/html/whats-new.php:369
1954
  msgid "Various other code optimizations"
1955
  msgstr ""
1956
 
1957
+ #: admin/html/whats-new.php:371 admin/html/whats-new.php:428
1958
  msgid "Code structure organization and optimization for better performance"
1959
  msgstr ""
1960
 
1961
+ #: admin/html/whats-new.php:380
1962
  msgid "WoooCommerce billing address Sync"
1963
  msgstr ""
1964
 
1965
+ #: admin/html/whats-new.php:382
1966
  msgid ""
1967
  "If an existing customer has previously set his billing address, that will "
1968
  "be imported into WPUF Billing address "
1969
  msgstr ""
1970
 
1971
+ #: admin/html/whats-new.php:385
1972
  msgid "Trial subscription message not showing properly"
1973
  msgstr ""
1974
 
1975
+ #: admin/html/whats-new.php:387
1976
  msgid "Subscriptions with Trial now shows trial notices"
1977
  msgstr ""
1978
 
1979
+ #: admin/html/whats-new.php:390
1980
  msgid "Reset email Key not working"
1981
  msgstr ""
1982
 
1983
+ #: admin/html/whats-new.php:392
1984
  msgid "Reset Email key was not working in some cases"
1985
  msgstr ""
1986
 
1987
+ #: admin/html/whats-new.php:395
1988
  msgid "Post count not showing on the frontend dashboard"
1989
  msgstr ""
1990
 
1991
+ #: admin/html/whats-new.php:397
1992
  msgid ""
1993
  "Dashboard with multiple post type was not showing post counts properly, is "
1994
  "now fixed and shows count for each post type"
1995
  msgstr ""
1996
 
1997
+ #: admin/html/whats-new.php:400
1998
  msgid "Login Redirect showing blank page is fixed"
1999
  msgstr ""
2000
 
2001
+ #: admin/html/whats-new.php:402
2002
  msgid ""
2003
  "If \"Previous Page\" was set for redirection, login redirect was "
2004
  "redirecting to blank page for users who hit login page directly"
2005
  msgstr ""
2006
 
2007
+ #: admin/html/whats-new.php:411
2008
  msgid "Enhanced Login Redirect to redirect users to previous page"
2009
  msgstr ""
2010
 
2011
+ #: admin/html/whats-new.php:413
2012
  msgid ""
2013
  "You can choose Previous Page as Login Redirect page settings now to "
2014
  "redirect users to the page from which they went for Login. "
2015
  msgstr ""
2016
 
2017
+ #: admin/html/whats-new.php:416
2018
  msgid "Email HTML links not Rendreing properly issue is fixed"
2019
  msgstr ""
2020
 
2021
+ #: admin/html/whats-new.php:418
2022
  msgid ""
2023
  "For some clients emails were not rendering the HTML links properly, this is "
2024
  "now fixed"
2025
  msgstr ""
2026
 
2027
+ #: admin/html/whats-new.php:421
2028
  msgid "Form Builder : Form Field's Help text styles not showing properly"
2029
  msgstr ""
2030
 
2031
+ #: admin/html/whats-new.php:423
2032
  msgid "Help texts styling is now fixed and much easier to read and understand"
2033
  msgstr ""
2034
 
2035
+ #: admin/html/whats-new.php:426
2036
  msgid "Various other code improvements"
2037
  msgstr ""
2038
 
2039
+ #: admin/html/whats-new.php:437
2040
  msgid "Dashboard Post Listing now supports multiple post types"
2041
  msgstr ""
2042
 
2043
+ #: admin/html/whats-new.php:439
2044
  msgid ""
2045
  "Now you can show multiple post type in user dashboard using shortcode like "
2046
  "this : <br><b>[wpuf_dashboard post_type=\"post,page,custom_type\"]</b> "
2047
  msgstr ""
2048
 
2049
+ #: admin/html/whats-new.php:442
2050
  msgid "Added Login Redirect Settings"
2051
  msgstr ""
2052
 
2053
+ #: admin/html/whats-new.php:444
2054
  msgid ""
2055
  "You can now set a page from <i>WPUF Settings > Login/Registration > "
2056
  "Redirect after Login</i>. When login redirection is active the user will be "
2057
  "redirected to this page after login."
2058
  msgstr ""
2059
 
2060
+ #: admin/html/whats-new.php:447
2061
  msgid "Image Upload field button text can be changed"
2062
  msgstr ""
2063
 
2064
+ #: admin/html/whats-new.php:449
2065
  msgid ""
2066
  "The upload button text can now be changed for image upload fields which "
2067
  "defaults to \"Select Image\" if not set. "
2068
  msgstr ""
2069
 
2070
+ #: admin/html/whats-new.php:452
2071
  msgid "Multi Step Form styles made compatible with more themes"
2072
  msgstr ""
2073
 
2074
+ #: admin/html/whats-new.php:454
2075
  msgid "Multi Step form can now be styled more easily with other themes "
2076
  msgstr ""
2077
 
2078
+ #: admin/html/whats-new.php:457
2079
  msgid "Required field condition for google map not working is fixed"
2080
  msgstr ""
2081
 
2082
+ #: admin/html/whats-new.php:459
2083
  msgid ""
2084
  "If Google Map field was set as required users were able to submit form "
2085
  "without changing the default value."
2086
  msgstr ""
2087
 
2088
+ #: admin/html/whats-new.php:468
2089
  msgid "Admin form builder is now fully responsive."
2090
  msgstr ""
2091
 
2092
+ #: admin/html/whats-new.php:470
2093
  msgid ""
2094
  "Now you can edit forms from your mobile devices directly. Our improved "
2095
  "responsive layouts of form builder makes it easy for you to build forms on "
2096
  "the go."
2097
  msgstr ""
2098
 
2099
+ #: admin/html/whats-new.php:473
2100
  msgid "Added color schemes for creating attractive form layouts."
2101
  msgstr ""
2102
 
2103
+ #: admin/html/whats-new.php:475
2104
  msgid ""
2105
  "We have added 3 new color schemes for the form layouts which you can choose "
2106
  "from each form's new display settings."
2107
  msgstr ""
2108
 
2109
+ #: admin/html/whats-new.php:478
2110
  msgid "Restrict Free subscription pack to be enabled multiple times "
2111
  msgstr ""
2112
 
2113
+ #: admin/html/whats-new.php:480
2114
  msgid ""
2115
  "Free subscription packs now can only be purchased once and the limit "
2116
  "applies properly"
2117
  msgstr ""
2118
 
2119
+ #: admin/html/whats-new.php:483
2120
  msgid "Various other bug fixes and improvements were made "
2121
  msgstr ""
2122
 
2123
+ #: admin/html/whats-new.php:485
2124
  msgid "Please see the change log to see full details."
2125
  msgstr ""
2126
 
2127
+ #: admin/html/whats-new.php:494
2128
  msgid "Added upgrade function for default category"
2129
  msgstr ""
2130
 
2131
+ #: admin/html/whats-new.php:496
2132
  msgid "Upgrader added to upgrade previously set default post category."
2133
  msgstr ""
2134
 
2135
+ #: admin/html/whats-new.php:499
2136
  msgid "Subscription pack cannot be canceled"
2137
  msgstr ""
2138
 
2139
+ #: admin/html/whats-new.php:501
2140
  msgid ""
2141
  "Fixed recurring subscription pack cannot be canceled from my account page "
2142
  "in subscription details section."
2143
  msgstr ""
2144
 
2145
+ #: admin/html/whats-new.php:504
2146
  msgid "page installer admin notice logic issue"
2147
  msgstr ""
2148
 
2149
+ #: admin/html/whats-new.php:506
2150
  msgid ""
2151
  "Fixed page installer admin notice logic problem due to new payment settings "
2152
  "default value not set."
2153
  msgstr ""
2154
 
2155
+ #: admin/html/whats-new.php:516
2156
  msgid "Setup Wizard"
2157
  msgstr ""
2158
 
2159
+ #: admin/html/whats-new.php:518
2160
  msgid "Setup Wizard added to turn off payment options and install pages."
2161
  msgstr ""
2162
 
2163
+ #: admin/html/whats-new.php:522
2164
  msgid "Multi-select Category"
2165
  msgstr ""
2166
 
2167
+ #: admin/html/whats-new.php:524
2168
  msgid "Add multi-select to default category in post form settings."
2169
  msgstr ""
2170
 
2171
+ #: admin/html/whats-new.php:528
2172
  msgid "Select Text option for Taxonomy"
2173
  msgstr ""
2174
 
2175
+ #: admin/html/whats-new.php:530
2176
  msgid ""
2177
  "Add Select Text option for taxonomy fields. Now you can add default text "
2178
  "with empty value as first option for Taxonomy dropdown."
2179
  msgstr ""
2180
 
2181
+ #: admin/html/whats-new.php:533
2182
  msgid "Taxonomy Checkbox Inline"
2183
  msgstr ""
2184
 
2185
+ #: admin/html/whats-new.php:535
2186
  msgid ""
2187
  "Added checkbox inline option to taxonomy checkbox. You can now display "
2188
  "Taxonomy checkbox fields inline."
2189
  msgstr ""
2190
 
2191
+ #: admin/html/whats-new.php:545
2192
  msgid "Manage schedule for form submission"
2193
  msgstr ""
2194
 
2195
+ #: admin/html/whats-new.php:547
2196
  msgid ""
2197
  "Do not accept form submission if the current date is not between the date "
2198
  "range of the schedule."
2199
  msgstr ""
2200
 
2201
+ #: admin/html/whats-new.php:551
2202
  msgid "Restrict form submission based on the user roles"
2203
  msgstr ""
2204
 
2205
+ #: admin/html/whats-new.php:553
2206
  msgid ""
2207
  "Restrict form submission based on the user roles. Now you can manage user "
2208
  "role base permission on form submission."
2209
  msgstr ""
2210
 
2211
+ #: admin/html/whats-new.php:557
2212
  msgid "Limit how many entries a form will accept"
2213
  msgstr ""
2214
 
2215
+ #: admin/html/whats-new.php:559
2216
  msgid ""
2217
  "Limit how many entries a form will accept and display a custom message when "
2218
  "that limit is reached."
2219
  msgstr ""
2220
 
2221
+ #: admin/html/whats-new.php:563
2222
  msgid "Show/hide Admin Bar"
2223
  msgstr ""
2224
 
2225
+ #: admin/html/whats-new.php:565
2226
  msgid "Control the admin bar visibility based on user roles."
2227
  msgstr ""
2228
 
2229
+ #: admin/html/whats-new.php:569
2230
  msgid "Ajax Login widget"
2231
  msgstr ""
2232
 
2233
+ #: admin/html/whats-new.php:571
2234
  msgid ""
2235
  "Login user is more simple now with Ajax Login Widget. The simple ajax login "
2236
  "form do not required page loading for login."
2237
  msgstr ""
2238
 
2239
+ #: admin/html/whats-new.php:575
2240
  msgid "Form submission with Captcha field"
2241
  msgstr ""
2242
 
2243
+ #: admin/html/whats-new.php:577
2244
  msgid "Form field validation process updated if form submits with captcha field."
2245
  msgstr ""
2246
 
2247
+ #: admin/html/whats-new.php:591
2248
  msgid "What's New in WPUF?"
2249
  msgstr ""
2250
 
2267
  msgstr ""
2268
 
2269
  #: admin/installer.php:84 admin/settings-options.php:24
2270
+ #: includes/free/admin/shortcode-button.php:79 wpuf-functions.php:1806
2271
  msgid "Dashboard"
2272
  msgstr ""
2273
 
2283
  #: admin/installer.php:95 class/subscription.php:377 class/subscription.php:397
2284
  #: class/subscription.php:398 class/subscription.php:399
2285
  #: includes/free/admin/shortcode-button.php:99
2286
+ #: templates/dashboard/dashboard.php:19 wpuf-functions.php:1809
2287
  msgid "Subscription"
2288
  msgstr ""
2289
 
2291
  msgid "[wpuf_sub_pack]"
2292
  msgstr ""
2293
 
2294
+ #: admin/installer.php:96 templates/dashboard/posts.php:94
2295
+ #: templates/dashboard.php:136
2296
  msgid "Payment"
2297
  msgstr ""
2298
 
2378
  msgid "Draft"
2379
  msgstr ""
2380
 
2381
+ #: admin/posting.php:72 class/asset-loader.php:55 class/render-form.php:1673
2382
  #: wpuf.php:721
2383
  msgid "Are you sure?"
2384
  msgstr ""
2385
 
2386
+ #: admin/posting.php:80 class/asset-loader.php:63 wpuf.php:731
2387
  msgid "Allowed Files"
2388
  msgstr ""
2389
 
2390
+ #: admin/posting.php:83 class/asset-loader.php:66 wpuf.php:737
2391
  msgid "Maximum number of files reached!"
2392
  msgstr ""
2393
 
2394
+ #: admin/posting.php:84 class/asset-loader.php:67 wpuf.php:738
2395
  msgid "The file you have uploaded exceeds the file size limit. Please try again."
2396
  msgstr ""
2397
 
2398
+ #: admin/posting.php:85 class/asset-loader.php:68 wpuf.php:739
2399
  msgid "You have uploaded an incorrect file type. Please try again."
2400
  msgstr ""
2401
 
2402
+ #: admin/posting.php:104
2403
  msgid "WPUF Form"
2404
  msgstr ""
2405
 
2406
+ #: admin/posting.php:132
2407
  msgid "Learn more"
2408
  msgstr ""
2409
 
2410
+ #: admin/posting.php:179
2411
  msgid "WPUF Lock User"
2412
  msgstr ""
2413
 
2414
+ #: admin/posting.php:205
2415
  msgid ""
2416
  "Post is locked, to allow user to edit this post <a "
2417
  "id=\"wpuf_clear_schedule_lock\" data=\"%s\" href=\"#\">Click here</a>"
2418
  msgstr ""
2419
 
2420
+ #: admin/posting.php:212
2421
  msgid ""
2422
  "Frontend edit access for this post will be automatically locked after %s, "
2423
  "<a id=\"wpuf_clear_schedule_lock\" data=\"%s\" href=\"#\">Clear Lock</a> Or,"
2424
  msgstr ""
2425
 
2426
+ #: admin/posting.php:223
2427
  msgid "Lock Post Permanently"
2428
  msgstr ""
2429
 
2430
+ #: admin/posting.php:228
2431
  msgid "Lock user from editing this post from the frontend dashboard"
2432
  msgstr ""
2433
 
2434
+ #: admin/posting.php:279
2435
  msgid "WPUF Custom Fields"
2436
  msgstr ""
2437
 
2438
+ #: admin/posting.php:331
2439
  msgid "No custom fields found."
2440
  msgstr ""
2441
 
2714
  msgid "Login / Registration"
2715
  msgstr ""
2716
 
2717
+ #: admin/settings-options.php:39 includes/class-privacy.php:69
2718
  msgid "Payments"
2719
  msgstr ""
2720
 
3210
 
3211
  #: admin/template-post.php:88 admin/template.php:608
3212
  #: includes/fields/class-field-featured-image.php:116
3213
+ #: includes/fields/class-field-image.php:100
3214
  msgid "Enter maximum upload size limit in KB"
3215
  msgstr ""
3216
 
3217
  #: admin/template-post.php:99 admin/template.php:619
3218
  #: includes/fields/class-field-featured-image.php:112
3219
+ #: includes/fields/class-field-image.php:96
3220
  msgid "Max. file size"
3221
  msgstr ""
3222
 
3225
  msgstr ""
3226
 
3227
  #: admin/template-post.php:149 includes/fields/class-field-dropdown.php:9
3228
+ #: includes/fields/class-field-dropdown.php:103
3229
  msgid "Dropdown"
3230
  msgstr ""
3231
 
3482
 
3483
  #: admin/template.php:377 admin/template.php:401 admin/template.php:432
3484
  #: admin/template.php:463 includes/fields/class-abstract-fields.php:579
3485
+ #: templates/dashboard/posts.php:97 templates/dashboard.php:139
3486
  msgid "Options"
3487
  msgstr ""
3488
 
3489
  #: admin/template.php:417 admin/template.php:448
3490
  #: includes/fields/class-abstract-fields.php:401
3491
+ #: includes/fields/class-field-dropdown.php:87
3492
  msgid ""
3493
  "First element of the select dropdown. Leave this empty if you don't want to "
3494
  "show this field"
3496
 
3497
  #: admin/template.php:427 admin/template.php:458
3498
  #: includes/fields/class-abstract-fields.php:397
3499
+ #: includes/fields/class-field-dropdown.php:83
3500
  msgid "Select Text"
3501
  msgstr ""
3502
 
3503
  #: admin/template.php:520 admin/template.php:578 admin/template.php:656
3504
+ #: class/upload.php:206 includes/fields/class-field-recaptcha.php:147
3505
  #: includes/fields/class-field-sectionbreak.php:54
3506
+ #: templates/dashboard/posts.php:88 templates/dashboard.php:104
3507
+ #: wpuf-functions.php:845
3508
  msgid "Title"
3509
  msgstr ""
3510
 
3520
  msgid "Enter the meta value"
3521
  msgstr ""
3522
 
3523
+ #: admin/template.php:583 class/upload.php:208
3524
+ #: includes/fields/class-field-sectionbreak.php:62 wpuf-functions.php:853
3525
  msgid "Description"
3526
  msgstr ""
3527
 
3528
+ #: admin/template.php:609 includes/fields/class-field-image.php:109
3529
  msgid "Number of images can be uploaded"
3530
  msgstr ""
3531
 
3532
+ #: admin/template.php:624 includes/fields/class-field-image.php:105
3533
  msgid "Max. files"
3534
  msgstr ""
3535
 
3551
  msgid "Enable noCaptcha"
3552
  msgstr ""
3553
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3554
  #: class/asset-loader.php:32 wpuf.php:629
3555
  msgid "is required"
3556
  msgstr ""
3591
  msgid "Label for post submission menu"
3592
  msgstr ""
3593
 
3594
+ #: class/frontend-account.php:48 class/frontend-account.php:111
3595
  #: includes/class-wcmp-integration.php:127
3596
  #: includes/class-wcmp-integration.php:144
3597
  msgid "Submit Post"
3607
  "account page."
3608
  msgstr ""
3609
 
3610
+ #: class/frontend-account.php:234
3611
+ msgid "<p>You have not subscribed to any package yet.</p>"
3612
  msgstr ""
3613
 
3614
+ #: class/frontend-account.php:242
3615
+ msgid "<p>You may have processed your payment, but the pack is not active yet.</p>"
3616
  msgstr ""
3617
 
3618
+ #: class/frontend-account.php:258
3619
  msgid "For each"
3620
  msgstr ""
3621
 
3622
+ #: class/frontend-account.php:319
3623
  msgid "Nonce failure"
3624
  msgstr ""
3625
 
3626
+ #: class/frontend-account.php:333
3627
  msgid "First Name is a required field."
3628
  msgstr ""
3629
 
3630
+ #: class/frontend-account.php:337
3631
  msgid "Last Name is a required field."
3632
  msgstr ""
3633
 
3634
+ #: class/frontend-account.php:341
3635
  msgid "Email is a required field."
3636
  msgstr ""
3637
 
3638
+ #: class/frontend-account.php:353
3639
  msgid "Please provide a valid email address."
3640
  msgstr ""
3641
 
3642
+ #: class/frontend-account.php:355
3643
  msgid "This email address is already registered."
3644
  msgstr ""
3645
 
3646
+ #: class/frontend-account.php:361
3647
  msgid "Please fill out all password fields."
3648
  msgstr ""
3649
 
3650
+ #: class/frontend-account.php:364
3651
  msgid "Please enter your current password."
3652
  msgstr ""
3653
 
3654
+ #: class/frontend-account.php:367
3655
  msgid "Please re-enter your password."
3656
  msgstr ""
3657
 
3658
+ #: class/frontend-account.php:370
3659
  msgid "New passwords do not match."
3660
  msgstr ""
3661
 
3662
+ #: class/frontend-account.php:373 class/frontend-account.php:384
3663
  msgid "Your current password is incorrect."
3664
  msgstr ""
3665
 
3700
  msgstr ""
3701
 
3702
  #: class/payment.php:138 includes/class-customizer.php:56
3703
+ #: wpuf-functions.php:1810
3704
  msgid "Billing Address"
3705
  msgstr ""
3706
 
3720
  msgid "Pack Price "
3721
  msgstr ""
3722
 
3723
+ #: class/payment.php:191 class/payment.php:240 includes/class-privacy.php:338
3724
  msgid "Total"
3725
  msgstr ""
3726
 
3765
  msgid "Form for creating a blog post."
3766
  msgstr ""
3767
 
3768
+ #: class/post-form-templates/post.php:20 includes/class-privacy.php:417
3769
  #: includes/fields/class-field-post-title.php:6
3770
  msgid "Post Title"
3771
  msgstr ""
3774
  msgid "Please enter your post name"
3775
  msgstr ""
3776
 
3777
+ #: class/post-form-templates/post.php:35 templates/dashboard.php:108
3778
  msgid "Category"
3779
  msgstr ""
3780
 
3784
 
3785
  #: class/post-form-templates/post.php:39
3786
  #: includes/fields/class-abstract-fields.php:188
3787
+ #: includes/fields/class-field-dropdown.php:106
3788
  #: includes/fields/class-field-multidropdown.php:83
3789
+ #: includes/fields/class-field-post-taxonomy.php:332
3790
  msgid "- select -"
3791
  msgstr ""
3792
 
3803
  #: includes/fields/class-field-featured-image.php:142
3804
  #: includes/free/post-form-templates/the_events_calendar.php:125
3805
  #: includes/free/post-form-templates/the_events_calendar.php:126
3806
+ #: templates/dashboard/posts.php:85 templates/dashboard.php:102
3807
  msgid "Featured Image"
3808
  msgstr ""
3809
 
3813
 
3814
  #: class/post-form-templates/post.php:90
3815
  #: includes/free/post-form-templates/the_events_calendar.php:138
3816
+ #: templates/dashboard.php:128
3817
  msgid "Excerpt"
3818
  msgstr ""
3819
 
3869
  msgid "Please make sure you've published your form."
3870
  msgstr ""
3871
 
3872
+ #: class/render-form.php:1317 includes/free/edit-profile.php:200
3873
  #: templates/registration-form.php:68
3874
  msgid "Confirm Password"
3875
  msgstr ""
3876
 
3877
+ #: class/render-form.php:1339 includes/free/edit-profile.php:209
3878
  #: templates/dashboard/edit-profile.php:71
3879
  msgid "Strength indicator"
3880
  msgstr ""
3881
 
3882
+ #: class/render-form.php:1401 includes/fields/class-field-post-taxonomy.php:119
3883
+ #: wpuf-functions.php:1594
3884
  msgid "-- Select --"
3885
  msgstr ""
3886
 
3887
+ #: class/render-form.php:1465 includes/fields/class-field-post-taxonomy.php:65
3888
  msgid "This field is no longer available."
3889
  msgstr ""
3890
 
3891
+ #: class/render-form.php:1673 class/transactions-list-table.php:119
3892
  #: class/transactions-list-table.php:193 includes/free/edit-user.php:105
3893
+ #: templates/dashboard/posts.php:185 templates/dashboard.php:277
3894
  msgid "Delete"
3895
  msgstr ""
3896
 
4034
 
4035
  #: class/transactions-list-table.php:42
4036
  #: includes/class-list-table-subscribers.php:44
4037
+ #: templates/dashboard/posts.php:89 templates/dashboard.php:131
4038
  msgid "Status"
4039
  msgstr ""
4040
 
4047
  msgid "Cost"
4048
  msgstr ""
4049
 
4050
+ #: class/transactions-list-table.php:45 includes/class-privacy.php:334
4051
  msgid "Tax"
4052
  msgstr ""
4053
 
4054
+ #: class/transactions-list-table.php:46 includes/class-privacy.php:342
4055
+ #: includes/class-privacy.php:413
4056
  msgid "Post ID"
4057
  msgstr ""
4058
 
4059
+ #: class/transactions-list-table.php:47 includes/class-privacy.php:346
4060
+ #: includes/class-privacy.php:466
4061
  msgid "Pack ID"
4062
  msgstr ""
4063
 
4094
  msgid "No transactions found."
4095
  msgstr ""
4096
 
4097
+ #: class/upload.php:207 wpuf-functions.php:849
4098
  msgid "Caption"
4099
  msgstr ""
4100
 
4132
  msgid "No Thanks"
4133
  msgstr ""
4134
 
4135
+ #: includes/class-billing-address.php:35
4136
  msgid "Some Required Fields are not filled!"
4137
  msgstr ""
4138
 
4139
+ #: includes/class-billing-address.php:155 includes/class-customizer.php:22
4140
+ #: includes/class-customizer.php:66 includes/class-privacy.php:265
4141
+ #: templates/dashboard/billing-address.php:52
4142
  msgid "Country"
4143
  msgstr ""
4144
 
4145
+ #: includes/class-billing-address.php:178
4146
+ #: templates/dashboard/billing-address.php:66
4147
  msgid "Choose a country"
4148
  msgstr ""
4149
 
4150
+ #: includes/class-billing-address.php:197 includes/class-customizer.php:23
4151
+ #: includes/class-customizer.php:67 templates/dashboard/billing-address.php:85
4152
  msgid "State/Province/Region"
4153
  msgstr ""
4154
 
4155
+ #: includes/class-billing-address.php:211
4156
+ #: templates/dashboard/billing-address.php:100
4157
  msgid "Choose a state"
4158
  msgstr ""
4159
 
4160
+ #: includes/class-billing-address.php:230
4161
+ #: templates/dashboard/billing-address.php:120
4162
  msgid "Address Line 1 "
4163
  msgstr ""
4164
 
4165
+ #: includes/class-billing-address.php:241
4166
+ #: templates/dashboard/billing-address.php:129
4167
  msgid "Address Line 2 "
4168
  msgstr ""
4169
 
4170
+ #: includes/class-billing-address.php:252 includes/class-customizer.php:26
4171
+ #: includes/class-customizer.php:70 includes/class-privacy.php:253
4172
+ #: templates/dashboard/billing-address.php:137
4173
  msgid "City"
4174
  msgstr ""
4175
 
4176
+ #: includes/class-billing-address.php:262 includes/class-customizer.php:27
4177
+ #: includes/class-customizer.php:71
4178
  msgid "Postal Code/ZIP"
4179
  msgstr ""
4180
 
4181
+ #: includes/class-billing-address.php:272
4182
+ #: templates/dashboard/billing-address.php:156
4183
  msgid "Update Billing Address"
4184
  msgstr ""
4185
 
4186
+ #: includes/class-billing-address.php:319
4187
+ #: templates/dashboard/billing-address.php:32
4188
  msgid "Billing address is updated."
4189
  msgstr ""
4190
 
4215
 
4216
  #: includes/class-dokan-integration.php:34
4217
  #: includes/class-wc-vendors-integration.php:108
4218
+ #: templates/dashboard/dashboard.php:15 wpuf-functions.php:1807
4219
  msgid "Posts"
4220
  msgstr ""
4221
 
4270
  msgid "You are not logged in"
4271
  msgstr ""
4272
 
4273
+ #: includes/class-frontend-form-post.php:59
4274
+ #: includes/class-frontend-form-post.php:89
4275
  msgid "Invalid post"
4276
  msgstr ""
4277
 
4278
+ #: includes/class-frontend-form-post.php:66
4279
  msgid "Your edit access for this post has been locked by an administrator."
4280
  msgstr ""
4281
 
4282
+ #: includes/class-frontend-form-post.php:70
4283
  msgid "Your allocated time for editing this post has been expired."
4284
  msgstr ""
4285
 
4286
+ #: includes/class-frontend-form-post.php:78
4287
  msgid "Your post edit access has been locked by an administrator."
4288
  msgstr ""
4289
 
4290
+ #: includes/class-frontend-form-post.php:83
4291
  msgid "Post Editing is disabled"
4292
  msgstr ""
4293
 
4294
+ #: includes/class-frontend-form-post.php:94
4295
  msgid "You are not allowed to edit"
4296
  msgstr ""
4297
 
4298
+ #: includes/class-frontend-form-post.php:105
4299
  msgid "I don't know how to edit this post, I don't have the form ID"
4300
  msgstr ""
4301
 
4302
+ #: includes/class-frontend-form-post.php:117
4303
  msgid "You can't edit a post while in pending mode."
4304
  msgstr ""
4305
 
4306
+ #: includes/class-frontend-form-post.php:506
4307
  msgid "Something went wrong"
4308
  msgstr ""
4309
 
4310
+ #: includes/class-frontend-form-post.php:527
4311
  msgid "Invalid email address."
4312
  msgstr ""
4313
 
4314
+ #: includes/class-frontend-form-post.php:537
4315
  msgid ""
4316
  "You already have an account in our site. Please login to continue.\n"
4317
  "\n"
4320
  "Click 'Cancel' to stay at this page."
4321
  msgstr ""
4322
 
4323
+ #: includes/class-frontend-form-post.php:588
4324
  msgid "You do not have sufficient permissions to access this form."
4325
  msgstr ""
4326
 
4327
+ #: includes/class-frontend-form-post.php:861
4328
  msgid "Email successfully verified. Please Login."
4329
  msgstr ""
4330
 
4331
+ #: includes/class-frontend-form-post.php:968
4332
+ #: includes/class-frontend-form-post.php:974
4333
  msgid ""
4334
  "Thank you for posting on our site. We have sent you an confirmation email. "
4335
  "Please check your inbox!"
4336
  msgstr ""
4337
 
4338
+ #: includes/class-frontend-render-form.php:815
4339
  #: includes/free/class-login.php:445
4340
  msgid "Empty reCaptcha Field"
4341
  msgstr ""
4356
  msgid "Subscription ID"
4357
  msgstr ""
4358
 
4359
+ #: includes/class-list-table-subscribers.php:46 includes/class-privacy.php:322
4360
  msgid "Transaction ID"
4361
  msgstr ""
4362
 
4369
  msgstr ""
4370
 
4371
  #: includes/class-list-table-subscribers.php:137
4372
+ #: templates/dashboard/posts.php:148 templates/dashboard.php:237
4373
  msgid "Completed"
4374
  msgstr ""
4375
 
4534
  "disclose on your privacy policy."
4535
  msgstr ""
4536
 
4537
+ #: includes/class-privacy.php:37
4538
  msgid ""
4539
  "We collect information about you during the form submission process on our "
4540
  "WordPress website."
4541
  msgstr ""
4542
 
4543
+ #: includes/class-privacy.php:38
4544
  msgid "What we collect and store"
4545
  msgstr ""
4546
 
4547
+ #: includes/class-privacy.php:39
4548
  msgid "While you visit our , we’ll track:"
4549
  msgstr ""
4550
 
4551
+ #: includes/class-privacy.php:41
4552
  msgid ""
4553
  "Form Fields Data: Forms Fields data includes the available field types when "
4554
  "creating a form. We’ll use this to, for example, collect informations like "
4555
  "Name, Email and other available fields."
4556
  msgstr ""
4557
 
4558
+ #: includes/class-privacy.php:42
4559
  msgid ""
4560
  "Location, IP address and browser type: we’ll use this for purposes like "
4561
  "estimating taxes and shipping. Also, for reducing fraudulent activities and "
4562
  "prevent identity theft while placing orders"
4563
  msgstr ""
4564
 
4565
+ #: includes/class-privacy.php:43
4566
  msgid ""
4567
  "Transaction Details: we’ll ask you to enter this so we can, for instance, "
4568
  "provide & regulate subscription packs that you bought and keep track of "
4569
  "your payment details for subscription packs!"
4570
  msgstr ""
4571
 
4572
+ #: includes/class-privacy.php:45
4573
  msgid ""
4574
  "We’ll also use cookies to keep track of form elements while you’re browsing "
4575
  "our site."
4576
  msgstr ""
4577
 
4578
+ #: includes/class-privacy.php:46
4579
  msgid ""
4580
  "Note: you may want to further detail your cookie policy, and link to that "
4581
  "section from here."
4582
  msgstr ""
4583
 
4584
+ #: includes/class-privacy.php:47
4585
  msgid ""
4586
  "When you fill up a form, we’ll ask you to provide information including "
4587
  "your name, billing address, shipping address, email address, phone number, "
4590
  "We’ll use this information for purposes, such as, to:"
4591
  msgstr ""
4592
 
4593
+ #: includes/class-privacy.php:49
4594
  msgid "Send you information about your account and order"
4595
  msgstr ""
4596
 
4597
+ #: includes/class-privacy.php:50
4598
  msgid "Respond to your requests, including transaction details and complaints"
4599
  msgstr ""
4600
 
4601
+ #: includes/class-privacy.php:51
4602
  msgid "Process payments and prevent fraud"
4603
  msgstr ""
4604
 
4605
+ #: includes/class-privacy.php:52
4606
  msgid "Set up your account"
4607
  msgstr ""
4608
 
4609
+ #: includes/class-privacy.php:53
4610
  msgid "Comply with any legal obligations we have, such as calculating taxes"
4611
  msgstr ""
4612
 
4613
+ #: includes/class-privacy.php:54
4614
  msgid "Improve our form offerings"
4615
  msgstr ""
4616
 
4617
+ #: includes/class-privacy.php:55
4618
  msgid "Send you marketing messages, if you choose to receive them"
4619
  msgstr ""
4620
 
4621
+ #: includes/class-privacy.php:57
4622
  msgid ""
4623
  "If you create an account, we will store your name, address, email and phone "
4624
  "number, which will be used to populate the form fields for future "
4625
  "submissions."
4626
  msgstr ""
4627
 
4628
+ #: includes/class-privacy.php:58
4629
  msgid ""
4630
  "We generally store information about you for as long as we need the "
4631
  "information for the purposes for which we collect and use it, and we are "
4635
  "addresses."
4636
  msgstr ""
4637
 
4638
+ #: includes/class-privacy.php:59
4639
  msgid "Who on our team has access"
4640
  msgstr ""
4641
 
4642
+ #: includes/class-privacy.php:60
4643
  msgid ""
4644
  "Members of our team have access to the information you provide us. For "
4645
  "example, Administrators and Editors and any body else who has permission "
4646
  "can access:"
4647
  msgstr ""
4648
 
4649
+ #: includes/class-privacy.php:62
4650
  msgid "Form submission information and other details related to it"
4651
  msgstr ""
4652
 
4653
+ #: includes/class-privacy.php:63
4654
  msgid ""
4655
  "Customer information like your name, email address, and billing and "
4656
  "shipping information."
4657
  msgstr ""
4658
 
4659
+ #: includes/class-privacy.php:65
4660
  msgid ""
4661
  "Our team members have access to this information to help fulfill "
4662
  "transactions and support you."
4663
  msgstr ""
4664
 
4665
+ #: includes/class-privacy.php:66
4666
  msgid "What we share with others"
4667
  msgstr ""
4668
 
4669
+ #: includes/class-privacy.php:67
4670
  msgid ""
4671
  "In this section you should list who you’re sharing data with, and for what "
4672
  "purpose. This could include, but may not be limited to, analytics, "
4673
  "marketing, payment gateways, shipping providers, and third party embeds."
4674
  msgstr ""
4675
 
4676
+ #: includes/class-privacy.php:68
4677
  msgid ""
4678
  "We share information with third parties who help us provide our orders and "
4679
  "store services to you; for example --"
4680
  msgstr ""
4681
 
4682
+ #: includes/class-privacy.php:70
4683
  msgid ""
4684
  "In this subsection you should list which third party payment processors "
4685
  "you’re using to take payments on your site since these may handle customer "
4687
  "you’re not using PayPal."
4688
  msgstr ""
4689
 
4690
+ #: includes/class-privacy.php:71
4691
  msgid ""
4692
  "We accept payments through PayPal. When processing payments, some of your "
4693
  "data will be passed to PayPal, including information required to process or "
4694
  "support the payment, such as the purchase total and billing information."
4695
  msgstr ""
4696
 
4697
+ #: includes/class-privacy.php:72
4698
  msgid ""
4699
  "Please see the <a "
4700
  "href=\"https://www.paypal.com/us/webapps/mpp/ua/privacy-full\">PayPal "
4701
  "Privacy Policy</a> for more details."
4702
  msgstr ""
4703
 
4704
+ #: includes/class-privacy.php:73
4705
  msgid ""
4706
  "Also, we accept payments through Stripe. When processing payments, some of "
4707
  "your data will be passed to Stripe, including information required to "
4709
  "information."
4710
  msgstr ""
4711
 
4712
+ #: includes/class-privacy.php:74
4713
  msgid ""
4714
  "Please see the <a href=\"https://stripe.com/us/privacy\">Stripe Privacy "
4715
  "Policy</a> for more details."
4716
  msgstr ""
4717
 
4718
+ #: includes/class-privacy.php:75
4719
  msgid "Available Modules"
4720
  msgstr ""
4721
 
4722
+ #: includes/class-privacy.php:76
4723
  msgid ""
4724
  "In this subsection you should list which third party modules you’re using "
4725
  "to increase the functionality of your created forms using WP User Frontend "
4726
  "since these may handle customer data."
4727
  msgstr ""
4728
 
4729
+ #: includes/class-privacy.php:77
4730
  msgid ""
4731
  "WP User Frontend Pro comes with support for modules like MailChimp, "
4732
  "ConvertKit, Stipe, Paid Membership Pro, MailPoet, Zapier, GetResponse, "
4735
  "own platform which falls in their own data policy. "
4736
  msgstr ""
4737
 
4738
+ #: includes/class-privacy.php:78
4739
  msgid ""
4740
  "As an example while using MailChimp for your marketing email automation "
4741
  "service by integrating it with WP User Frontend, some of your data will be "
4745
  "information through subscription. "
4746
  msgstr ""
4747
 
4748
+ #: includes/class-privacy.php:79
4749
  msgid ""
4750
  "Please see the <a href=\"https://mailchimp.com/legal/privacy/\">MailChimp "
4751
  "Privacy Policy</a> for more details."
4752
  msgstr ""
4753
 
4754
+ #: includes/class-privacy.php:94 includes/class-privacy.php:125
4755
+ #: includes/class-privacy.php:165
4756
  msgid "WPUF User Data"
4757
  msgstr ""
4758
 
4759
+ #: includes/class-privacy.php:99 includes/class-privacy.php:287
4760
  msgid "WPUF Subscription Data"
4761
  msgstr ""
4762
 
4763
+ #: includes/class-privacy.php:104 includes/class-privacy.php:317
4764
  msgid "WPUF Transaction Data"
4765
  msgstr ""
4766
 
4767
+ #: includes/class-privacy.php:109 includes/class-privacy.php:408
4768
  msgid "WPUF Post Data"
4769
  msgstr ""
4770
 
4771
+ #: includes/class-privacy.php:166
4772
+ msgid "WP User Frontend user data."
4773
+ msgstr ""
4774
+
4775
+ #: includes/class-privacy.php:245
4776
  msgid "Billing Address 1"
4777
  msgstr ""
4778
 
4779
+ #: includes/class-privacy.php:249
4780
  msgid "Billing Address 2"
4781
  msgstr ""
4782
 
4783
+ #: includes/class-privacy.php:257
4784
  msgid "State"
4785
  msgstr ""
4786
 
4787
+ #: includes/class-privacy.php:261
4788
  msgid "Zip"
4789
  msgstr ""
4790
 
4791
+ #: includes/class-privacy.php:288
4792
+ msgid "WP User Frontend subscription data."
4793
+ msgstr ""
4794
+
4795
+ #: includes/class-privacy.php:318
4796
+ msgid "WP User Frontend transaction data."
4797
+ msgstr ""
4798
+
4799
+ #: includes/class-privacy.php:326
4800
  msgid "Payment Status"
4801
  msgstr ""
4802
 
4803
+ #: includes/class-privacy.php:330
4804
  msgid "Subtotal"
4805
  msgstr ""
4806
 
4807
+ #: includes/class-privacy.php:354 includes/free/edit-profile.php:111
4808
  msgid "Last Name"
4809
  msgstr ""
4810
 
4811
+ #: includes/class-privacy.php:362
4812
  msgid "Payment Type"
4813
  msgstr ""
4814
 
4815
+ #: includes/class-privacy.php:366
4816
  msgid "payer_address"
4817
  msgstr ""
4818
 
4819
+ #: includes/class-privacy.php:376
4820
  msgid "Transaction Date"
4821
  msgstr ""
4822
 
4823
+ #: includes/class-privacy.php:409
4824
+ msgid "WP User Frontend post data."
4825
+ msgstr ""
4826
+
4827
+ #: includes/class-privacy.php:421
4828
  msgid "Post URL"
4829
  msgstr ""
4830
 
4831
+ #: includes/class-privacy.php:425
4832
  msgid "Post Date"
4833
  msgstr ""
4834
 
4835
+ #: includes/class-privacy.php:470
4836
  msgid "Pack Title"
4837
  msgstr ""
4838
 
4839
+ #: includes/class-privacy.php:474
4840
  msgid "Expiry"
4841
  msgstr ""
4842
 
4864
  msgstr ""
4865
 
4866
  #: includes/class-user-subscription.php:330
4867
+ #: templates/dashboard/subscription.php:17
4868
  msgid "Remaining post: "
4869
  msgstr ""
4870
 
4871
  #: includes/class-user-subscription.php:344
4872
+ #: templates/dashboard/subscription.php:33
4873
  msgid "Unlimited"
4874
  msgstr ""
4875
 
5034
  msgstr ""
5035
 
5036
  #: includes/fields/class-field-featured-image.php:120
5037
+ #: includes/fields/class-field-image.php:113
5038
  msgid "Button Label"
5039
  msgstr ""
5040
 
5041
  #: includes/fields/class-field-featured-image.php:125
5042
+ #: includes/fields/class-field-image.php:118
5043
  msgid "Enter a label for the Select button"
5044
  msgstr ""
5045
 
5245
  msgstr ""
5246
 
5247
  #: includes/free/class-login.php:372
5248
+ msgid "Enter your new password below."
5249
  msgstr ""
5250
 
5251
  #: includes/free/class-login.php:385
5933
  msgid "Submit & Deactivate"
5934
  msgstr ""
5935
 
5936
+ #: lib/class-weforms-upsell.php:73
5937
+ msgid "Install Now"
5938
+ msgstr ""
5939
+
5940
  #: lib/class-weforms-upsell.php:349
5941
  msgid "You don't have permission to install the plugins"
5942
  msgstr ""
5943
 
5944
+ #: lib/class.settings-api.php:368
5945
  msgid "Choose File"
5946
  msgstr ""
5947
 
5973
  msgid "Thanks for being with us."
5974
  msgstr ""
5975
 
5976
+ #: lib/gateway/paypal.php:60
5977
  msgid "Subscription %s at %s"
5978
  msgstr ""
5979
 
5980
+ #: lib/gateway/paypal.php:90
5981
  msgid "PayPal Email"
5982
  msgstr ""
5983
 
5984
+ #: lib/gateway/paypal.php:95
5985
  msgid "PayPal Instruction"
5986
  msgstr ""
5987
 
5988
+ #: lib/gateway/paypal.php:102
5989
  msgid "PayPal API username"
5990
  msgstr ""
5991
 
5992
+ #: lib/gateway/paypal.php:106
5993
  msgid "PayPal API password"
5994
  msgstr ""
5995
 
5996
+ #: lib/gateway/paypal.php:110
5997
  msgid "PayPal API signature"
5998
  msgstr ""
5999
 
6000
+ #: templates/dashboard/billing-address.php:146
6001
+ msgid "Postal/ZIP Code"
6002
  msgstr ""
6003
 
6004
  #: templates/dashboard/dashboard.php:5
6049
  msgid "You have created <span>%d</span> %s"
6050
  msgstr ""
6051
 
6052
+ #: templates/dashboard/posts.php:117 templates/dashboard.php:159
6053
  msgid "No Image"
6054
  msgstr ""
6055
 
6056
+ #: templates/dashboard/posts.php:131 templates/dashboard.php:173
6057
  msgid "Permalink to %s"
6058
  msgstr ""
6059
 
6060
+ #: templates/dashboard/posts.php:144 templates/dashboard.php:233
6061
  msgid "Not Applicable"
6062
  msgstr ""
6063
 
6064
+ #: templates/dashboard/posts.php:146 templates/dashboard.php:235
6065
  msgid "Pay Now"
6066
  msgstr ""
6067
 
6068
+ #: templates/dashboard/posts.php:184 templates/dashboard.php:276
6069
  msgid "Are you sure to delete?"
6070
  msgstr ""
6071
 
6072
+ #: templates/dashboard/posts.php:205 templates/dashboard.php:296
6073
  msgid "&laquo;"
6074
  msgstr ""
6075
 
6076
+ #: templates/dashboard/posts.php:206 templates/dashboard.php:297
6077
  msgid "&raquo;"
6078
  msgstr ""
6079
 
6080
+ #: templates/dashboard/posts.php:229 templates/dashboard.php:319
6081
  msgid "No %s found"
6082
  msgstr ""
6083
 
6085
  msgid "You've subscribed to the following package."
6086
  msgstr ""
6087
 
6088
+ #: templates/dashboard/subscription.php:12
6089
+ msgid "Subscription Status: "
6090
+ msgstr ""
6091
+
6092
+ #: templates/dashboard/subscription.php:13
6093
+ msgid "Subscription Expired!"
6094
+ msgstr ""
6095
+
6096
+ #: templates/dashboard/subscription.php:61
6097
  msgid "<p><i>To cancel the pack, press the following cancel button.</i></p>"
6098
  msgstr ""
6099
 
6187
  msgid "Private"
6188
  msgstr ""
6189
 
6190
+ #: wpuf-functions.php:210 wpuf-functions.php:1825
6191
  msgid "-- select --"
6192
  msgstr ""
6193
 
6194
+ #: wpuf-functions.php:460
6195
  msgid "Images"
6196
  msgstr ""
6197
 
6198
+ #: wpuf-functions.php:461
6199
  msgid "Audio"
6200
  msgstr ""
6201
 
6202
+ #: wpuf-functions.php:462
6203
  msgid "Videos"
6204
  msgstr ""
6205
 
6206
+ #: wpuf-functions.php:463
6207
  msgid "PDF"
6208
  msgstr ""
6209
 
6210
+ #: wpuf-functions.php:464
6211
  msgid "Office Documents"
6212
  msgstr ""
6213
 
6214
+ #: wpuf-functions.php:465
6215
  msgid "Zip Archives"
6216
  msgstr ""
6217
 
6218
+ #: wpuf-functions.php:466
6219
  msgid "Executable Files"
6220
  msgstr ""
6221
 
6222
+ #: wpuf-functions.php:467
6223
  msgid "CSV"
6224
  msgstr ""
6225
 
6226
+ #: wpuf-functions.php:872
6227
  msgid "Directions »"
6228
  msgstr ""
6229
 
6230
+ #: wpuf-functions.php:1808
6231
  msgid "Edit Profile"
6232
  msgstr ""
6233
 
6234
+ #: wpuf-functions.php:1937
6235
  msgid "United Arab Emirates Dirham"
6236
  msgstr ""
6237
 
6238
+ #: wpuf-functions.php:1938
6239
  msgid "Australian Dollars"
6240
  msgstr ""
6241
 
6242
+ #: wpuf-functions.php:1939
6243
  msgid "Argentine Peso"
6244
  msgstr ""
6245
 
6246
+ #: wpuf-functions.php:1940
6247
  msgid "Bangladeshi Taka"
6248
  msgstr ""
6249
 
6250
+ #: wpuf-functions.php:1941
6251
  msgid "Brazilian Real"
6252
  msgstr ""
6253
 
6254
+ #: wpuf-functions.php:1942
6255
  msgid "Bulgarian Lev"
6256
  msgstr ""
6257
 
6258
+ #: wpuf-functions.php:1943
6259
  msgid "Canadian Dollars"
6260
  msgstr ""
6261
 
6262
+ #: wpuf-functions.php:1944
6263
  msgid "Chilean Peso"
6264
  msgstr ""
6265
 
6266
+ #: wpuf-functions.php:1945
6267
  msgid "Chinese Yuan"
6268
  msgstr ""
6269
 
6270
+ #: wpuf-functions.php:1946
6271
  msgid "Colombian Peso"
6272
  msgstr ""
6273
 
6274
+ #: wpuf-functions.php:1947
6275
  msgid "Czech Koruna"
6276
  msgstr ""
6277
 
6278
+ #: wpuf-functions.php:1948
6279
  msgid "Danish Krone"
6280
  msgstr ""
6281
 
6282
+ #: wpuf-functions.php:1949
6283
  msgid "Dominican Peso"
6284
  msgstr ""
6285
 
6286
+ #: wpuf-functions.php:1950
6287
  msgid "Algerian Dinar"
6288
  msgstr ""
6289
 
6290
+ #: wpuf-functions.php:1951
6291
  msgid "Euros"
6292
  msgstr ""
6293
 
6294
+ #: wpuf-functions.php:1952
6295
  msgid "Hong Kong Dollar"
6296
  msgstr ""
6297
 
6298
+ #: wpuf-functions.php:1953
6299
  msgid "Croatia kuna"
6300
  msgstr ""
6301
 
6302
+ #: wpuf-functions.php:1954
6303
  msgid "Hungarian Forint"
6304
  msgstr ""
6305
 
6306
+ #: wpuf-functions.php:1955
6307
  msgid "Icelandic krona"
6308
  msgstr ""
6309
 
6310
+ #: wpuf-functions.php:1956
6311
  msgid "Indonesia Rupiah"
6312
  msgstr ""
6313
 
6314
+ #: wpuf-functions.php:1957
6315
  msgid "Indian Rupee"
6316
  msgstr ""
6317
 
6318
+ #: wpuf-functions.php:1958
6319
  msgid "Nepali Rupee"
6320
  msgstr ""
6321
 
6322
+ #: wpuf-functions.php:1959
6323
  msgid "Israeli Shekel"
6324
  msgstr ""
6325
 
6326
+ #: wpuf-functions.php:1960
6327
  msgid "Japanese Yen"
6328
  msgstr ""
6329
 
6330
+ #: wpuf-functions.php:1961
6331
  msgid "Lao Kip"
6332
  msgstr ""
6333
 
6334
+ #: wpuf-functions.php:1962
6335
  msgid "South Korean Won"
6336
  msgstr ""
6337
 
6338
+ #: wpuf-functions.php:1963
6339
  msgid "Malaysian Ringgits"
6340
  msgstr ""
6341
 
6342
+ #: wpuf-functions.php:1964
6343
  msgid "Mexican Peso"
6344
  msgstr ""
6345
 
6346
+ #: wpuf-functions.php:1965
6347
  msgid "Nigerian Naira"
6348
  msgstr ""
6349
 
6350
+ #: wpuf-functions.php:1966
6351
  msgid "Norwegian Krone"
6352
  msgstr ""
6353
 
6354
+ #: wpuf-functions.php:1967
6355
  msgid "New Zealand Dollar"
6356
  msgstr ""
6357
 
6358
+ #: wpuf-functions.php:1968
6359
  msgid "Omani Rial"
6360
  msgstr ""
6361
 
6362
+ #: wpuf-functions.php:1969
6363
  msgid "Iranian Rial"
6364
  msgstr ""
6365
 
6366
+ #: wpuf-functions.php:1970
6367
  msgid "Pakistani Rupee"
6368
  msgstr ""
6369
 
6370
+ #: wpuf-functions.php:1971
6371
  msgid "Paraguayan Guaraní"
6372
  msgstr ""
6373
 
6374
+ #: wpuf-functions.php:1972
6375
  msgid "Philippine Pesos"
6376
  msgstr ""
6377
 
6378
+ #: wpuf-functions.php:1973
6379
  msgid "Polish Zloty"
6380
  msgstr ""
6381
 
6382
+ #: wpuf-functions.php:1974
6383
  msgid "Pounds Sterling"
6384
  msgstr ""
6385
 
6386
+ #: wpuf-functions.php:1975
6387
  msgid "Romanian Leu"
6388
  msgstr ""
6389
 
6390
+ #: wpuf-functions.php:1976
6391
  msgid "Russian Ruble"
6392
  msgstr ""
6393
 
6394
+ #: wpuf-functions.php:1977
6395
  msgid "Saudi Riyal"
6396
  msgstr ""
6397
 
6398
+ #: wpuf-functions.php:1978
6399
  msgid "Singapore Dollar"
6400
  msgstr ""
6401
 
6402
+ #: wpuf-functions.php:1979
6403
  msgid "South African rand"
6404
  msgstr ""
6405
 
6406
+ #: wpuf-functions.php:1980
6407
  msgid "Swedish Krona"
6408
  msgstr ""
6409
 
6410
+ #: wpuf-functions.php:1981
6411
  msgid "Swiss Franc"
6412
  msgstr ""
6413
 
6414
+ #: wpuf-functions.php:1982
6415
  msgid "Taiwan New Dollars"
6416
  msgstr ""
6417
 
6418
+ #: wpuf-functions.php:1983
6419
  msgid "Thai Baht"
6420
  msgstr ""
6421
 
6422
+ #: wpuf-functions.php:1984
6423
  msgid "Turkish Lira"
6424
  msgstr ""
6425
 
6426
+ #: wpuf-functions.php:1985
6427
  msgid "US Dollar"
6428
  msgstr ""
6429
 
6430
+ #: wpuf-functions.php:1986
6431
  msgid "Vietnamese Dong"
6432
  msgstr ""
6433
 
6434
+ #: wpuf-functions.php:1987
6435
  msgid "Egyptian Pound"
6436
  msgstr ""
6437
 
6438
+ #: wpuf-functions.php:1988
6439
+ msgid "Jordanian dinar"
6440
+ msgstr ""
6441
+
6442
+ #: wpuf-functions.php:2861
6443
  msgid "None"
6444
  msgstr ""
6445
 
6566
  msgid "Searching&hellip;"
6567
  msgstr ""
6568
 
6569
+ #: wpuf-functions.php:1319
6570
  msgctxt "tag delimiter"
6571
  msgid ","
6572
  msgstr ""
lib/class.settings-api.php CHANGED
@@ -34,11 +34,13 @@ class WeDevs_Settings_API {
34
  * Enqueue scripts and styles
35
  */
36
  function admin_enqueue_scripts() {
37
- wp_enqueue_style( 'wp-color-picker' );
38
-
39
- wp_enqueue_media();
40
- wp_enqueue_script( 'wp-color-picker' );
41
  wp_enqueue_script( 'jquery' );
 
 
 
 
 
 
42
  }
43
 
44
  /**
34
  * Enqueue scripts and styles
35
  */
36
  function admin_enqueue_scripts() {
 
 
 
 
37
  wp_enqueue_script( 'jquery' );
38
+
39
+ if ( isset( $_GET['page'] ) && ( $_GET['page'] == 'wpuf-settings' || $_GET['page'] == 'wpuf-post-forms' || $_GET['page'] == 'wpuf-modules' || $_GET['page'] == 'wpuf-profile-forms' ) ) {
40
+ wp_enqueue_media();
41
+ wp_enqueue_style( 'wp-color-picker' );
42
+ wp_enqueue_script( 'wp-color-picker' );
43
+ }
44
  }
45
 
46
  /**
lib/gateway/paypal.php CHANGED
@@ -23,7 +23,6 @@ class WPUF_Paypal {
23
  add_action( 'wpuf_paypal_ipn_success', [ $this, 'paypal_success' ] );
24
  add_action( 'wpuf_cancel_payment_paypal', [ $this, 'handle_cancel_subscription' ] );
25
  add_action( 'wpuf_cancel_subscription_paypal', [ $this, 'handle_cancel_subscription' ] );
26
- add_action( 'wpuf_paypal_ipn_success', [ $this, 'update_paypal_subscr_payment' ] );
27
  }
28
 
29
  public function subscription_cancel( $user_id ) {
@@ -34,14 +33,12 @@ class WPUF_Paypal {
34
  /**
35
  * Change PayPal recurring payment status
36
  *
37
- * @param int $user_id
38
  * @param string $status
39
  *
40
  * @return void
41
  */
42
  public function recurring_change_status( $user_id, $status ) {
43
- global $wp_version;
44
-
45
  $sub_info = get_user_meta( $user_id, '_wpuf_subscription_pack', true );
46
  $api_username = wpuf_get_option( 'paypal_api_username', 'wpuf_payment' );
47
  $api_password = wpuf_get_option( 'paypal_api_password', 'wpuf_payment' );
@@ -119,9 +116,10 @@ class WPUF_Paypal {
119
  /**
120
  * Prepare the payment form and send to paypal
121
  *
 
 
122
  * @since 0.8
123
  *
124
- * @param array $data payment info
125
  */
126
  public function prepare_to_send( $data ) {
127
  $user_id = $data['user_info']['id'];
@@ -129,14 +127,14 @@ class WPUF_Paypal {
129
  $redirect_page_id = wpuf_get_option( 'payment_success', 'wpuf_payment' );
130
 
131
  if ( $redirect_page_id ) {
132
- $return_url = add_query_arg( 'action', 'wpuf_paypal_success', get_permalink( $redirect_page_id ) );
133
  } else {
134
- $return_url = add_query_arg( 'action', 'wpuf_paypal_success', get_permalink( wpuf_get_option( 'subscription_page', 'wpuf_payment' ) ) );
135
  }
136
 
137
  $billing_amount = empty( $data['price'] ) ? 0 : $data['price'];
138
 
139
- if ( isset( $_POST['coupon_id'] ) && !empty( $_POST['coupon_id'] ) ) {
140
  $billing_amount = WPUF_Coupons::init()->discount( $billing_amount, $_POST['coupon_id'], $data['item_number'] );
141
 
142
  $coupon_id = $_POST['coupon_id'];
@@ -179,22 +177,30 @@ class WPUF_Paypal {
179
  'cmd' => '_xclick-subscriptions',
180
  'business' => wpuf_get_option( 'paypal_email', 'wpuf_payment' ),
181
  'a3' => $billing_amount,
182
- 'p3' => !empty( $data['custom']['billing_cycle_number'] ) ? $data['custom']['billing_cycle_number'] : '0',
 
183
  't3' => $period,
184
  'item_name' => $data['custom']['post_title'],
185
- 'custom' => json_encode( [ 'billing_amount' => $billing_amount, 'type' => $data['type'], 'user_id' => $user_id, 'coupon_id' => $coupon_id, 'subtotal' => $data['subtotal'], 'tax' => $data['tax'] ] ),
186
- 'no_shipping' => '1',
187
- 'shipping' => '0',
188
- 'no_note' => '1',
 
 
 
 
 
 
189
  'currency_code' => $data['currency'],
190
  'item_number' => $data['item_number'],
191
- 'charset' => 'UTF-8',
192
- 'rm' => '2',
193
  'return' => $return_url,
 
194
  'notify_url' => $listener_url,
195
- 'src' => '1',
196
- 'sra' => '1',
197
  'srt' => intval( $data['custom']['billing_limit'] ),
 
198
  ];
199
 
200
  if ( $data['custom']['trial_status'] == 'yes' ) {
@@ -214,7 +220,12 @@ class WPUF_Paypal {
214
  'item_number' => $data['item_number'],
215
  'charset' => 'UTF-8',
216
  'rm' => '2',
217
- 'custom' => json_encode( [ 'type' => $data['type'], 'user_id' => $user_id, 'coupon_id' => $coupon_id, 'subtotal' => $data['subtotal'], 'tax' => $data['tax'] ] ),
 
 
 
 
 
218
  'return' => $return_url,
219
  'notify_url' => $listener_url,
220
  ];
@@ -229,7 +240,7 @@ class WPUF_Paypal {
229
  */
230
  $paypal_args = apply_filters( 'wpuf_paypal_args', $paypal_args );
231
 
232
- $paypal_url = $this->gateway_url . http_build_query( $paypal_args );
233
 
234
  wp_redirect( $paypal_url );
235
  exit;
@@ -252,7 +263,7 @@ class WPUF_Paypal {
252
  * Check for PayPal IPN Response.
253
  */
254
  public function check_response() {
255
- if ( isset( $_GET['action'] ) && $_GET['action'] == 'wpuf_paypal_success' && $this->validateIpn() ) {
256
  do_action( 'wpuf_paypal_ipn_success' );
257
  }
258
  }
@@ -263,6 +274,8 @@ class WPUF_Paypal {
263
  * @since 0.8
264
  */
265
  public function paypal_success() {
 
 
266
  $postdata = $_POST;
267
 
268
  // when subscription expire
@@ -291,18 +304,34 @@ class WPUF_Paypal {
291
  $item_number = $postdata['item_number'];
292
  $amount = $postdata['mc_gross'];
293
  $is_recurring = false;
 
 
294
 
295
  $custom = json_decode( stripcslashes( $postdata['custom'] ) );
296
  $coupon_id = isset( $custom->coupon_id ) ? $custom->coupon_id : false;
297
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
298
  // check if recurring payment
299
  if ( isset( $postdata['txn_type'] ) && ( $postdata['txn_type'] == 'subscr_payment' ) && ( strtolower( $postdata['payment_status'] ) == 'completed' ) ) {
300
- if ( $postdata['mc_gross'] == $custom->billing_amount ) {
301
- $insert_payment = true;
302
- $post_id = 0;
303
- $pack_id = $item_number;
304
- $is_recurring = true;
305
- $status = 'subscr_payment';
306
 
307
  WP_User_Frontend::log( 'paypal-recurring', 'got subscr_payment, should insert of pack_id: ' . $pack_id );
308
  } else {
@@ -314,7 +343,7 @@ class WPUF_Paypal {
314
  WP_User_Frontend::log( 'paypal', 'got web_accept. type: ' . $custom->type . '. item_number: ' . $item_number );
315
 
316
  //verify payment
317
- $status = 'web_accept';
318
 
319
  switch ( $custom->type ) {
320
  case 'post':
@@ -329,16 +358,16 @@ class WPUF_Paypal {
329
  }
330
  } elseif (
331
  isset( $postdata['verify_sign'] )
332
- && !empty( $postdata['verify_sign'] )
333
  && isset( $postdata['payment_status'] )
334
  && $postdata['payment_status'] == 'Pending'
335
  && isset( $postdata['pending_reason'] )
336
  && $postdata['pending_reason'] == 'multi_currency'
337
  && isset( $postdata['txn_type'] )
338
  && $postdata['txn_type'] == 'web_accept'
339
- ) {
340
  //verify payment
341
- $status = 'web_accept';
342
  switch ( $custom->type ) {
343
  case 'post':
344
  $post_id = $item_number;
@@ -367,12 +396,12 @@ class WPUF_Paypal {
367
  'payer_address' => isset( $postdata['residence_country'] ) ? $postdata['residence_country'] : null,
368
  'transaction_id' => $postdata['txn_id'],
369
  'created' => current_time( 'mysql' ),
370
- 'profile_id' => isset( $postdata['subscr_id'] ) ? $postdata['subscr_id'] : null,
371
  ];
372
 
373
  WP_User_Frontend::log( 'payment', 'inserting payment to database. ' . print_r( $data, true ) );
374
 
375
  $transaction_id = wp_strip_all_tags( $postdata['txn_id'] );
 
376
  WPUF_Payment::insert_payment( $data, $transaction_id, $is_recurring );
377
 
378
  if ( $coupon_id ) {
@@ -383,6 +412,12 @@ class WPUF_Paypal {
383
  update_post_meta( $coupon_id, '_coupon_used', $new_use );
384
  }
385
 
 
 
 
 
 
 
386
  delete_user_meta( $custom->user_id, '_wpuf_user_active' );
387
  delete_user_meta( $custom->user_id, '_wpuf_activation_key' );
388
  }
@@ -408,8 +443,6 @@ class WPUF_Paypal {
408
  * @return bool
409
  */
410
  public function validateIpn() {
411
- global $wp_version;
412
-
413
  WP_User_Frontend::log( 'paypal', 'Checking if PayPal IPN response is valid' );
414
 
415
  $this->set_mode();
@@ -439,7 +472,7 @@ class WPUF_Paypal {
439
  WP_User_Frontend::log( 'paypal', 'IPN Response: ' . print_r( $response, true ) );
440
 
441
  // check to see if the request was valid
442
- if ( !is_wp_error( $response ) && $response['response']['code'] >= 200 && $response['response']['code'] < 300 && strstr( $response['body'], 'VERIFIED' ) ) {
443
  WP_User_Frontend::log( 'paypal', 'Received valid response from PayPal' );
444
 
445
  return true;
@@ -454,33 +487,14 @@ class WPUF_Paypal {
454
  return false;
455
  }
456
 
457
- /**
458
- * Update users subscription
459
- *
460
- * Updates the pack when new recurring payment IPN notification is being
461
- * sent from PayPal.
462
- *
463
- * @return void
464
- */
465
- public function update_paypal_subscr_payment() {
466
- $txn_type = isset( $_POST['txn_type'] ) ? sanitize_text_field( wp_unslash( $_POST['txn_type'] ) ) : '';
467
- $payment_status = isset( $_POST['payment_status'] ) ? sanitize_text_field( wp_unslash( $_POST['payment_status'] ) ) : '';
468
-
469
- $custom = isset( $_POST['custom'] ) ? sanitize_text_field( wp_unslash( $_POST['custom'] ) ) : '';
470
-
471
- $pack_id = $_POST['item_number'];
472
 
473
- if ( $txn_type != 'subscr_payment' ) {
474
- return;
475
- }
476
-
477
- if ( strtolower( $payment_status ) != 'completed' ) {
478
- return;
479
  }
480
 
481
- $pack = $this->get_subscription( $pack_id );
482
- $payer = json_decode( stripcslashes( $custom ) );
483
-
484
- $this->update_user_subscription_meta( $payer->payer_id, $pack );
485
  }
 
486
  }
23
  add_action( 'wpuf_paypal_ipn_success', [ $this, 'paypal_success' ] );
24
  add_action( 'wpuf_cancel_payment_paypal', [ $this, 'handle_cancel_subscription' ] );
25
  add_action( 'wpuf_cancel_subscription_paypal', [ $this, 'handle_cancel_subscription' ] );
 
26
  }
27
 
28
  public function subscription_cancel( $user_id ) {
33
  /**
34
  * Change PayPal recurring payment status
35
  *
36
+ * @param int $user_id
37
  * @param string $status
38
  *
39
  * @return void
40
  */
41
  public function recurring_change_status( $user_id, $status ) {
 
 
42
  $sub_info = get_user_meta( $user_id, '_wpuf_subscription_pack', true );
43
  $api_username = wpuf_get_option( 'paypal_api_username', 'wpuf_payment' );
44
  $api_password = wpuf_get_option( 'paypal_api_password', 'wpuf_payment' );
116
  /**
117
  * Prepare the payment form and send to paypal
118
  *
119
+ * @param array $data payment info
120
+ *
121
  * @since 0.8
122
  *
 
123
  */
124
  public function prepare_to_send( $data ) {
125
  $user_id = $data['user_info']['id'];
127
  $redirect_page_id = wpuf_get_option( 'payment_success', 'wpuf_payment' );
128
 
129
  if ( $redirect_page_id ) {
130
+ $return_url = add_query_arg( 'action', 'wpuf_paypal_success', get_permalink( $redirect_page_id ) );
131
  } else {
132
+ $return_url = add_query_arg( 'action', 'wpuf_paypal_success', get_permalink( wpuf_get_option( 'subscription_page', 'wpuf_payment' ) ) );
133
  }
134
 
135
  $billing_amount = empty( $data['price'] ) ? 0 : $data['price'];
136
 
137
+ if ( isset( $_POST['coupon_id'] ) && ! empty( $_POST['coupon_id'] ) ) {
138
  $billing_amount = WPUF_Coupons::init()->discount( $billing_amount, $_POST['coupon_id'], $data['item_number'] );
139
 
140
  $coupon_id = $_POST['coupon_id'];
177
  'cmd' => '_xclick-subscriptions',
178
  'business' => wpuf_get_option( 'paypal_email', 'wpuf_payment' ),
179
  'a3' => $billing_amount,
180
+ 'mc_amount3' => $billing_amount,
181
+ 'p3' => ! empty( $data['custom']['billing_cycle_number'] ) ? $data['custom']['billing_cycle_number'] : '0',
182
  't3' => $period,
183
  'item_name' => $data['custom']['post_title'],
184
+ 'custom' => json_encode( [
185
+ 'billing_amount' => $billing_amount,
186
+ 'type' => $data['type'],
187
+ 'user_id' => $user_id,
188
+ 'coupon_id' => $coupon_id,
189
+ 'subtotal' => $data['subtotal'],
190
+ 'tax' => $data['tax']
191
+ ] ),
192
+ 'shipping' => 0,
193
+ 'no_note' => 1,
194
  'currency_code' => $data['currency'],
195
  'item_number' => $data['item_number'],
196
+ 'rm' => 2,
 
197
  'return' => $return_url,
198
+ 'cancel_return' => $return_url,
199
  'notify_url' => $listener_url,
200
+ 'src' => 1,
201
+ 'sra' => 1,
202
  'srt' => intval( $data['custom']['billing_limit'] ),
203
+ 'recurring' => 1
204
  ];
205
 
206
  if ( $data['custom']['trial_status'] == 'yes' ) {
220
  'item_number' => $data['item_number'],
221
  'charset' => 'UTF-8',
222
  'rm' => '2',
223
+ 'custom' => json_encode( [ 'type' => $data['type'],
224
+ 'user_id' => $user_id,
225
+ 'coupon_id' => $coupon_id,
226
+ 'subtotal' => $data['subtotal'],
227
+ 'tax' => $data['tax']
228
+ ] ),
229
  'return' => $return_url,
230
  'notify_url' => $listener_url,
231
  ];
240
  */
241
  $paypal_args = apply_filters( 'wpuf_paypal_args', $paypal_args );
242
 
243
+ $paypal_url = $this->gateway_url . http_build_query( $paypal_args );
244
 
245
  wp_redirect( $paypal_url );
246
  exit;
263
  * Check for PayPal IPN Response.
264
  */
265
  public function check_response() {
266
+ if ( isset( $_REQUEST['action'] ) && $_REQUEST['action'] == 'wpuf_paypal_success' && $this->validateIpn() ) {
267
  do_action( 'wpuf_paypal_ipn_success' );
268
  }
269
  }
274
  * @since 0.8
275
  */
276
  public function paypal_success() {
277
+ global $wpdb;
278
+
279
  $postdata = $_POST;
280
 
281
  // when subscription expire
304
  $item_number = $postdata['item_number'];
305
  $amount = $postdata['mc_gross'];
306
  $is_recurring = false;
307
+ $post_id = 0;
308
+ $pack_id = 0;
309
 
310
  $custom = json_decode( stripcslashes( $postdata['custom'] ) );
311
  $coupon_id = isset( $custom->coupon_id ) ? $custom->coupon_id : false;
312
 
313
+ if ( isset( $postdata['txn_type'] ) && ( $postdata['txn_type'] == 'subscr_signup' ) ) {
314
+ WP_User_Frontend::log( 'paypal-recurring', 'got subscriber with email ' . $postdata['payer_email'] );
315
+
316
+ return;
317
+ }
318
+
319
+ if ( isset( $postdata['txn_id'] ) && $this->transaction_exists( $postdata['txn_id'] ) ) {
320
+ $wpdb->update( $wpdb->prefix . 'wpuf_transaction',
321
+ array( 'status' => strtolower( $postdata['payment_status'] ) ),
322
+ array(
323
+ 'transaction_id' => $postdata['txn_id']
324
+ ) );
325
+ }
326
+
327
  // check if recurring payment
328
  if ( isset( $postdata['txn_type'] ) && ( $postdata['txn_type'] == 'subscr_payment' ) && ( strtolower( $postdata['payment_status'] ) == 'completed' ) ) {
329
+ if ( $postdata['mc_gross'] <= ceil( $custom->billing_amount ) ) {
330
+ $insert_payment = true;
331
+ $post_id = 0;
332
+ $pack_id = $item_number;
333
+ $is_recurring = true;
334
+ $status = 'subscr_payment';
335
 
336
  WP_User_Frontend::log( 'paypal-recurring', 'got subscr_payment, should insert of pack_id: ' . $pack_id );
337
  } else {
343
  WP_User_Frontend::log( 'paypal', 'got web_accept. type: ' . $custom->type . '. item_number: ' . $item_number );
344
 
345
  //verify payment
346
+ $status = 'web_accept';
347
 
348
  switch ( $custom->type ) {
349
  case 'post':
358
  }
359
  } elseif (
360
  isset( $postdata['verify_sign'] )
361
+ && ! empty( $postdata['verify_sign'] )
362
  && isset( $postdata['payment_status'] )
363
  && $postdata['payment_status'] == 'Pending'
364
  && isset( $postdata['pending_reason'] )
365
  && $postdata['pending_reason'] == 'multi_currency'
366
  && isset( $postdata['txn_type'] )
367
  && $postdata['txn_type'] == 'web_accept'
368
+ ) {
369
  //verify payment
370
+ $status = 'web_accept';
371
  switch ( $custom->type ) {
372
  case 'post':
373
  $post_id = $item_number;
396
  'payer_address' => isset( $postdata['residence_country'] ) ? $postdata['residence_country'] : null,
397
  'transaction_id' => $postdata['txn_id'],
398
  'created' => current_time( 'mysql' ),
 
399
  ];
400
 
401
  WP_User_Frontend::log( 'payment', 'inserting payment to database. ' . print_r( $data, true ) );
402
 
403
  $transaction_id = wp_strip_all_tags( $postdata['txn_id'] );
404
+
405
  WPUF_Payment::insert_payment( $data, $transaction_id, $is_recurring );
406
 
407
  if ( $coupon_id ) {
412
  update_post_meta( $coupon_id, '_coupon_used', $new_use );
413
  }
414
 
415
+ if ( isset( $postdata['profile_id'] ) ) {
416
+ $umeta = get_user_meta( $custom->user_id, '_wpuf_subscription_pack', true );
417
+ $umeta['profile_id'] = $postdata['profile_id'];
418
+ update_user_meta( $custom->user_id, '_wpuf_subscription_pack', $umeta );
419
+ }
420
+
421
  delete_user_meta( $custom->user_id, '_wpuf_user_active' );
422
  delete_user_meta( $custom->user_id, '_wpuf_activation_key' );
423
  }
443
  * @return bool
444
  */
445
  public function validateIpn() {
 
 
446
  WP_User_Frontend::log( 'paypal', 'Checking if PayPal IPN response is valid' );
447
 
448
  $this->set_mode();
472
  WP_User_Frontend::log( 'paypal', 'IPN Response: ' . print_r( $response, true ) );
473
 
474
  // check to see if the request was valid
475
+ if ( ! is_wp_error( $response ) && $response['response']['code'] >= 200 && $response['response']['code'] < 300 && strstr( $response['body'], 'VERIFIED' ) ) {
476
  WP_User_Frontend::log( 'paypal', 'Received valid response from PayPal' );
477
 
478
  return true;
487
  return false;
488
  }
489
 
490
+ public function transaction_exists( $trns_id ) {
491
+ global $wpdb;
 
 
 
 
 
 
 
 
 
 
 
 
 
492
 
493
+ if ( $wpdb->get_var( "SELECT transaction_id FROM `{$wpdb->prefix}wpuf_transaction` WHERE transaction_id='{$trns_id}' LIMIT 0, 1" ) ) {
494
+ return true;
 
 
 
 
495
  }
496
 
497
+ return false;
 
 
 
498
  }
499
+
500
  }
readme.txt CHANGED
@@ -5,7 +5,7 @@ Tags: Forms, registration, profile-builder, login, membership
5
  Requires at least: 4.0
6
  Tested up to: 5.3.2
7
  Requires PHP: 5.6
8
- Stable tag: 3.1.17
9
  License: GPLv2
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
11
 
@@ -264,6 +264,40 @@ redirected to the edit page with that post id. Then you'll see the edit post for
264
 
265
  == Changelog ==
266
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
267
  = v3.1.17 (31 January, 2020) =
268
  * **Fix:** some regressions after phpcs fixes
269
 
5
  Requires at least: 4.0
6
  Tested up to: 5.3.2
7
  Requires PHP: 5.6
8
+ Stable tag: 3.1.18
9
  License: GPLv2
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
11
 
264
 
265
  == Changelog ==
266
 
267
+ = v3.1.18 (13 March, 2020) =
268
+ * **Improvement:** Hide post edit option when subscription is expired
269
+ * **Improvement:** Check files to prevent duplicity in media upload
270
+ * **Improvement:** Added Jordanian Dinar to currency list
271
+ * **Improvement:** Update post edit button display logic
272
+ * **Improvement:** Update some notice messages
273
+ * **Improvement:** Made some query and asset loading improvements
274
+ * **Improvement:** Refactor address fields in Account section & Payment page
275
+ * **Improvement:** Enqueue color picker only in some WPUF pages
276
+ * **Improvement:** Update Paypal payment gateway
277
+ * **Improvement:** Inconsistency with the Shop Name & Shop URL in WPUF Vendor registration form
278
+ * **Fix:** Prevent taxonomy and category fields from being duplicated
279
+ * **Fix:** Selected form export issue
280
+ * **Fix:** Category column issue in dashboard
281
+ * **Fix:** Taxonomy checkbox checked not showing
282
+ * **Fix:** Fatal error after updating privacy policy page
283
+ * **Fix:** Fixed some instances of wrong escaping
284
+ * **Fix:** Submit issue with image and reCaptcha
285
+ * **Fix:** Expired subscription pack throwing error on dashboard
286
+ * **Fix:** Photo insert option in content editor and feature image field is not working on windows server
287
+ * **Fix:** HTML Tags are not rendering the HTML format for the Radio or Checkbox Field
288
+ * **Fix:** Country List field issue in frontend
289
+ * **Fix:** Multi-column Repeater field data saving issue
290
+ * **Fix:** Multistep form conflict with Elementor
291
+ * **Fix:** Compatibility issue with ACF date time field
292
+ * **Fix:** Meta field issue with multiple images
293
+ * **Fix:** Category type as "Text Input" is not saving.
294
+ * **Fix:** Some warnings in user directory
295
+ * **Fix:** File upload can fail in some cases
296
+ * **Fix:** Media title, caption & description not saving
297
+ * **Fix:** Address Field not rendering properly in email notification
298
+ * **Fix:** Checkbox data not saving from WPUF Custom Fields metabox
299
+ * **Fix:** Workaround for The Events Calendar venue and organizer fields in metabox
300
+
301
  = v3.1.17 (31 January, 2020) =
302
  * **Fix:** some regressions after phpcs fixes
303
 
templates/dashboard.php CHANGED
@@ -17,9 +17,9 @@
17
  }
18
 
19
  printf(
20
- wp_kses_post( __( 'You have created <span>%d</span> (%s)', 'wp-user-frontend' ) ),
21
- esc_html( $dashboard_query->found_posts ),
22
- esc_html( implode( ', ', $labels ) )
23
  );
24
  ?>
25
  </div>
@@ -47,7 +47,7 @@
47
  <?php if ( $dashboard_query->have_posts() ) {
48
  $args = [
49
  'post_status' => 'publish',
50
- 'post_type' => 'wpuf_forms',
51
  ];
52
 
53
  $query = new WP_Query( $args );
@@ -75,16 +75,26 @@
75
 
76
  wp_reset_postdata();
77
 
78
- $len = count( $meta_key );
79
- $len_label = count( $meta_label );
80
- $len_id = count( $meta_id );
81
- $featured_img = wpuf_get_option( 'show_ft_image', 'wpuf_dashboard' );
82
- $featured_img_size = wpuf_get_option( 'ft_img_size', 'wpuf_dashboard' );
83
- $enable_payment = wpuf_get_option( 'enable_payment', 'wpuf_payment' );
84
- $current_user = wpuf_get_user(); ?>
 
 
 
 
 
 
 
 
 
 
85
 
86
  <div class="items-table-container">
87
- <table class="items-table <?php echo implode( ' ', esc_attr( $post_type ) ); ?>" cellpadding="0" cellspacing="0">
88
  <thead>
89
  <tr class="items-list-header">
90
  <?php
@@ -179,14 +189,14 @@
179
  if ( !empty( $terms ) ) {
180
  foreach ( $terms as $term ) {
181
  $post_tax_terms[] = sprintf( '<a href="%1$s">%2$s</a>',
182
- esc_url( get_term_link( $term->slug, $taxonomy_slug ) ),
183
  esc_html( $term->name )
184
  );
185
  }
186
  }
187
  }
188
  }
189
- echo esc_html( apply_filters( 'wpuf_dashboard_post_taxonomy', implode( ',', $post_tax_terms ) ) );
190
 
191
  ?>
192
  </td>
@@ -249,6 +259,10 @@
249
  $show_edit = false;
250
  }
251
 
 
 
 
 
252
  if ( $show_edit ) {
253
  ?>
254
  <a href="<?php echo esc_url( wp_nonce_url( $edit_page_url, 'wpuf_edit' ) ); ?>"><?php esc_html_e( 'Edit', 'wp-user-frontend' ); ?></a>
17
  }
18
 
19
  printf(
20
+ wp_kses_post( __( 'You have created <span>%d</span> (%s)', 'wp-user-frontend' ) ),
21
+ wp_kses_post( $dashboard_query->found_posts ),
22
+ wp_kses_post( implode( ', ', $labels ) )
23
  );
24
  ?>
25
  </div>
47
  <?php if ( $dashboard_query->have_posts() ) {
48
  $args = [
49
  'post_status' => 'publish',
50
+ 'post_type' => [ 'wpuf_forms' ],
51
  ];
52
 
53
  $query = new WP_Query( $args );
75
 
76
  wp_reset_postdata();
77
 
78
+ $len = count( $meta_key );
79
+ $len_label = count( $meta_label );
80
+ $len_id = count( $meta_id );
81
+ $featured_img = wpuf_get_option( 'show_ft_image', 'wpuf_dashboard' );
82
+ $featured_img_size = wpuf_get_option( 'ft_img_size', 'wpuf_dashboard' );
83
+ $enable_payment = wpuf_get_option( 'enable_payment', 'wpuf_payment' );
84
+ $current_user = wpuf_get_user();
85
+ $user_subscription = new WPUF_User_Subscription( $current_user );
86
+ $user_sub = $user_subscription->current_pack();
87
+ $sub_id = $current_user->subscription()->current_pack_id();
88
+
89
+ if ( $sub_id ) {
90
+ $subs_expired = $user_subscription->expired();
91
+ } else {
92
+ $subs_expired = false;
93
+ }
94
+ ?>
95
 
96
  <div class="items-table-container">
97
+ <table class="items-table <?php echo wp_kses_post( implode( ' ', $post_type ) ); ?>" cellpadding="0" cellspacing="0">
98
  <thead>
99
  <tr class="items-list-header">
100
  <?php
189
  if ( !empty( $terms ) ) {
190
  foreach ( $terms as $term ) {
191
  $post_tax_terms[] = sprintf( '<a href="%1$s">%2$s</a>',
192
+ esc_url_raw( get_term_link( $term->slug, $taxonomy_slug ) ),
193
  esc_html( $term->name )
194
  );
195
  }
196
  }
197
  }
198
  }
199
+ echo wp_kses_post( apply_filters( 'wpuf_dashboard_post_taxonomy', implode( ',', $post_tax_terms ) ) );
200
 
201
  ?>
202
  </td>
259
  $show_edit = false;
260
  }
261
 
262
+ if ( $subs_expired ) {
263
+ $show_edit = false;
264
+ }
265
+
266
  if ( $show_edit ) {
267
  ?>
268
  <a href="<?php echo esc_url( wp_nonce_url( $edit_page_url, 'wpuf_edit' ) ); ?>"><?php esc_html_e( 'Edit', 'wp-user-frontend' ); ?></a>
templates/dashboard/billing-address.php CHANGED
@@ -7,36 +7,32 @@ $countries = [];
7
  $cs = new CountryState();
8
 
9
 
10
-
11
  if ( isset( $_POST['update_billing_address'] ) ) {
12
 
13
- if ( ! isset( $_REQUEST['_wpnonce'] ) || ! wp_verify_nonce( sanitize_key( $_REQUEST['_wpnonce'] ), 'dashboard_update_billing_address' ) ) {
14
  return;
15
  }
16
 
17
-
18
-
19
- $add_line_1 = isset( $_POST['add_line_1'] ) ? sanitize_text_field( wp_unslash( $_POST['add_line_1'] ) ) : '';
20
- $add_line_2 = isset( $_POST['add_line_2'] ) ? sanitize_text_field( wp_unslash( $_POST['add_line_2'] ) ) : '';
21
- $city = isset( $_POST['city'] ) ? sanitize_text_field( wp_unslash( $_POST['city'] ) ) : '';
22
- $state = isset( $_POST['state'] ) ? sanitize_text_field( wp_unslash( $_POST['state'] ) ) : '';
23
- $zip_code = isset( $_POST['zip_code'] ) ? sanitize_text_field( wp_unslash( $_POST['zip_code'] ) ) : '';
24
- $country = isset( $_POST['country'] ) ? sanitize_text_field( wp_unslash( $_POST['country'] ) ) : '';
25
 
26
  $address_fields = [
27
- 'add_line_1' => $add_line_1,
28
- 'add_line_2' => $add_line_2,
29
- 'city' => $city,
30
- 'state' => strtolower( str_replace( ' ', '', $state ) ),
31
- 'zip_code' => $zip_code,
32
- 'country' => $country,
33
  ];
34
  update_user_meta( $user_id, 'wpuf_address_fields', $address_fields );
35
  echo '<div class="wpuf-success">' . esc_html( __( 'Billing address is updated.', 'wp-user-frontend' ) ) . '</div>';
36
  } else {
37
  if ( metadata_exists( 'user', $user_id, 'wpuf_address_fields' ) ) {
38
- $address_fields = get_user_meta( $user_id, 'wpuf_address_fields', true );
39
- $address_fields = $address_fields;
40
  } else {
41
  $address_fields = array_fill_keys(
42
  [ 'add_line_1', 'add_line_2', 'city', 'state', 'zip_code', 'country' ], '' );
@@ -46,75 +42,122 @@ if ( isset( $_POST['update_billing_address'] ) ) {
46
 
47
  <form class="wpuf-form form-label-above" action="" method="post">
48
  <div class="wpuf-fields">
49
- <?php wp_nonce_field('dashboard_update_billing_address'); ?>
 
 
 
50
  <ul class="wpuf-form form-label-above">
51
 
52
  <li>
53
- <div class="wpuf-label"><?php esc_html_e( 'Address Line 1 ', 'wp-user-frontend' ); ?><span class="required">*</span></div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
54
  <div class="wpuf-fields">
55
- <input type="text" class="input" name="add_line_1" id="add_line_1" value="<?php echo esc_attr( $address_fields['add_line_1'] ); ?>" />
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
56
  </div>
57
  </li>
58
 
59
  <li>
60
- <div class="wpuf-label"><?php esc_html_e( 'Address Line 2 ', 'wp-user-frontend' ); ?></div>
 
61
  <div class="wpuf-fields">
62
- <input type="text" class="input" name="add_line_2" id="add_line_2" value="<?php echo esc_attr( $address_fields['add_line_2'] ); ?>" />
 
63
  </div>
64
  </li>
65
 
66
  <li>
67
- <div class="wpuf-label"><?php esc_html_e( 'City', 'wp-user-frontend' ); ?> <span class="required">*</span></div>
68
  <div class="wpuf-fields">
69
- <input type="text" class="input" name="city" id="city" value="<?php echo esc_attr( $address_fields['city'] ); ?>" />
 
70
  </div>
71
  </li>
72
 
73
  <li>
74
- <div class="wpuf-label"><?php esc_html_e( 'State/Province/Region', 'wp-user-frontend' ); ?> <span class="required">*</span></div>
 
75
  <div class="wpuf-fields">
76
- <input type="text" class="input" name="state" id="state" value="<?php echo esc_attr( $cs->getStateName( $address_fields['state'], esc_attr( $address_fields['country'] ) ) ) ; ?>" />
 
77
  </div>
78
  </li>
79
 
80
  <li>
 
 
81
  <div class="wpuf-fields">
82
- <div class="wpuf-name-field-wrap format-first-last">
83
- <div class="wpuf-name-field-first-name">
84
- <label class="wpuf-fields wpuf-label"><?php esc_html_e( 'Postal Code/ZIP', 'wp-user-frontend' ); ?></label>
85
- <input type="text" class="input" name="zip_code" id="zip_code" value="<?php echo esc_attr( $address_fields['zip_code'] ); ?>" />
86
- </div>
87
-
88
- <div class="wpuf-name-field-last-name">
89
- <label class="wpuf-fields wpuf-label"><?php esc_html_e( 'Country', 'wp-user-frontend' ); ?></label>
90
- <div class="wpuf-fields">
91
- <?php
92
- $countries = $cs->countries();
93
- ?>
94
- <select name="country" id="country">
95
- <option selected value="-1"><?php esc_html_e( 'Select Country', 'wp-user-frontend' ); ?></option>
96
- <?php
97
- foreach ( $countries as $key => $value ) {
98
- if ( $key == $address_fields['country'] ) { ?>
99
- <option selected value="<?php $key; ?>" selected ><?php echo esc_attr( $value ); ?></option>
100
- <?php } else { ?>
101
- <option value="<?php echo esc_attr( $key ); ?>"><?php echo esc_html($value ); ?></option>
102
- <?php }
103
- } ?>
104
- </select>
105
-
106
- </div>
107
- </div>
108
- </div>
109
  </div>
110
  </li>
111
 
112
  <li class="wpuf-submit">
113
- <input type="submit" name="update_billing_address" id="wpuf-account-update-billing_address" value="<?php esc_html_e( 'Update Billing Address', 'wp-user-frontend' ); ?>" />
 
114
  </li>
115
  </ul>
116
 
117
- <div class="clear"></div>
118
 
119
  </div>
120
  </form>
7
  $cs = new CountryState();
8
 
9
 
 
10
  if ( isset( $_POST['update_billing_address'] ) ) {
11
 
12
+ if ( ! isset( $_POST['wpuf_save_address_nonce'] ) || ! wp_verify_nonce( sanitize_key( $_POST['wpuf_save_address_nonce'] ), 'wpuf_address_ajax_action' ) ) {
13
  return;
14
  }
15
 
16
+ $add_line_1 = isset( $_POST['wpuf_biiling_add_line_1'] ) ? sanitize_text_field( wp_unslash( $_POST['wpuf_biiling_add_line_1'] ) ) : '';
17
+ $add_line_2 = isset( $_POST['wpuf_biiling_add_line_2'] ) ? sanitize_text_field( wp_unslash( $_POST['wpuf_biiling_add_line_2'] ) ) : '';
18
+ $city = isset( $_POST['wpuf_biiling_city'] ) ? sanitize_text_field( wp_unslash( $_POST['wpuf_biiling_city'] ) ) : '';
19
+ $state = isset( $_POST['wpuf_biiling_state'] ) ? sanitize_text_field( wp_unslash( $_POST['wpuf_biiling_state'] ) ) : '';
20
+ $zip_code = isset( $_POST['wpuf_biiling_zip_code'] ) ? sanitize_text_field( wp_unslash( $_POST['wpuf_biiling_zip_code'] ) ) : '';
21
+ $country = isset( $_POST['wpuf_biiling_country'] ) ? sanitize_text_field( wp_unslash( $_POST['wpuf_biiling_country'] ) ) : '';
 
 
22
 
23
  $address_fields = [
24
+ 'add_line_1' => $add_line_1,
25
+ 'add_line_2' => $add_line_2,
26
+ 'city' => $city,
27
+ 'state' => strtolower( str_replace( ' ', '', $state ) ),
28
+ 'zip_code' => $zip_code,
29
+ 'country' => $country,
30
  ];
31
  update_user_meta( $user_id, 'wpuf_address_fields', $address_fields );
32
  echo '<div class="wpuf-success">' . esc_html( __( 'Billing address is updated.', 'wp-user-frontend' ) ) . '</div>';
33
  } else {
34
  if ( metadata_exists( 'user', $user_id, 'wpuf_address_fields' ) ) {
35
+ $address_fields = wpuf_get_user_address();
 
36
  } else {
37
  $address_fields = array_fill_keys(
38
  [ 'add_line_1', 'add_line_2', 'city', 'state', 'zip_code', 'country' ], '' );
42
 
43
  <form class="wpuf-form form-label-above" action="" method="post">
44
  <div class="wpuf-fields">
45
+ <?php
46
+ wp_nonce_field( 'wpuf-ajax-address' );
47
+ wp_nonce_field( 'wpuf_address_ajax_action', 'wpuf_save_address_nonce' );
48
+ ?>
49
  <ul class="wpuf-form form-label-above">
50
 
51
  <li>
52
+ <label class="wpuf-fields wpuf-label"><?php esc_html_e( 'Country', 'wp-user-frontend' ); ?><span
53
+ class="required">*</span></label>
54
+ <?php
55
+ $selected['country'] = ! ( empty( $address_fields['country'] ) ) ? $address_fields['country'] : 'US';
56
+
57
+ echo wp_kses( wpuf_select( [
58
+ 'options' => $cs->countries(),
59
+ 'name' => 'wpuf_biiling_country',
60
+ 'selected' => $selected['country'],
61
+ 'show_option_all' => false,
62
+ 'show_option_none' => false,
63
+ 'id' => 'wpuf_biiling_country',
64
+ 'class' => 'wpuf_biiling_country',
65
+ 'chosen' => false,
66
+ 'placeholder' => __( 'Choose a country', 'wp-user-frontend' ),
67
+ ]
68
+ ), [
69
+ 'select' => [
70
+ 'class' => [],
71
+ 'name' => [],
72
+ 'id' => [],
73
+ 'data-placeholder' => []
74
+ ],
75
+ 'option' => [
76
+ 'value' => [],
77
+ 'class' => [],
78
+ 'id' => [],
79
+ 'selected' => []
80
+ ],
81
+ ] ); ?>
82
+ </li>
83
+
84
+ <li>
85
+ <div class="wpuf-label"><?php esc_html_e( 'State/Province/Region', 'wp-user-frontend' ); ?> <span
86
+ class="required">*</span></div>
87
  <div class="wpuf-fields">
88
+ <?php
89
+ $states = $cs->getStates( $selected['country'] );
90
+ $selected['state'] = ! ( empty( $address_fields['state'] ) ) ? $address_fields['state'] : '';
91
+ echo wp_kses( wpuf_select( [
92
+ 'options' => $states,
93
+ 'name' => 'wpuf_biiling_state',
94
+ 'selected' => $selected['state'],
95
+ 'show_option_all' => false,
96
+ 'show_option_none' => false,
97
+ 'id' => 'wpuf_biiling_state',
98
+ 'class' => 'wpuf_biiling_state',
99
+ 'chosen' => false,
100
+ 'placeholder' => __( 'Choose a state', 'wp-user-frontend' ),
101
+ ]
102
+ ), [
103
+ 'select' => [
104
+ 'class' => [],
105
+ 'name' => [],
106
+ 'id' => [],
107
+ 'data-placeholder' => []
108
+ ],
109
+ 'option' => [
110
+ 'value' => [],
111
+ 'class' => [],
112
+ 'id' => [],
113
+ 'selected' => []
114
+ ],
115
+ ] ); ?>
116
  </div>
117
  </li>
118
 
119
  <li>
120
+ <div class="wpuf-label"><?php esc_html_e( 'Address Line 1 ', 'wp-user-frontend' ); ?><span
121
+ class="required">*</span></div>
122
  <div class="wpuf-fields">
123
+ <input type="text" class="input" name="wpuf_biiling_add_line_1" id="wpuf_biiling_add_line_1"
124
+ value="<?php echo esc_attr( $address_fields['add_line_1'] ); ?>"/>
125
  </div>
126
  </li>
127
 
128
  <li>
129
+ <div class="wpuf-label"><?php esc_html_e( 'Address Line 2 ', 'wp-user-frontend' ); ?></div>
130
  <div class="wpuf-fields">
131
+ <input type="text" class="input" name="wpuf_biiling_add_line_2" id="wpuf_biiling_add_line_2"
132
+ value="<?php echo esc_attr( $address_fields['add_line_2'] ); ?>"/>
133
  </div>
134
  </li>
135
 
136
  <li>
137
+ <div class="wpuf-label"><?php esc_html_e( 'City', 'wp-user-frontend' ); ?> <span
138
+ class="required">*</span></div>
139
  <div class="wpuf-fields">
140
+ <input type="text" class="input" name="wpuf_biiling_city" id="wpuf_biiling_city"
141
+ value="<?php echo esc_attr( $address_fields['city'] ); ?>"/>
142
  </div>
143
  </li>
144
 
145
  <li>
146
+ <div class="wpuf-label"><?php esc_html_e( 'Postal/ZIP Code', 'wp-user-frontend' ); ?> <span
147
+ class="required">*</span></div>
148
  <div class="wpuf-fields">
149
+ <input type="text" class="input" name="wpuf_biiling_zip_code" id="wpuf_biiling_zip_code"
150
+ value="<?php echo esc_attr( $address_fields['zip_code'] ); ?>"/>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
151
  </div>
152
  </li>
153
 
154
  <li class="wpuf-submit">
155
+ <input type="submit" name="update_billing_address" id="wpuf-account-update-billing_address"
156
+ value="<?php esc_html_e( 'Update Billing Address', 'wp-user-frontend' ); ?>"/>
157
  </li>
158
  </ul>
159
 
160
+ <div class="clear"></div>
161
 
162
  </div>
163
  </form>
templates/dashboard/posts.php CHANGED
@@ -61,11 +61,20 @@ $post_type_obj = get_post_type_object( $post_type );
61
  <?php if ( $dashboard_query->have_posts() ) { ?>
62
 
63
  <?php
64
- $featured_img = wpuf_get_option( 'show_ft_image', 'wpuf_dashboard' );
65
- $featured_img_size = wpuf_get_option( 'ft_img_size', 'wpuf_dashboard' );
66
- $payment_column = wpuf_get_option( 'show_payment_column', 'wpuf_dashboard', 'on' );
67
- $enable_payment = wpuf_get_option( 'enable_payment', 'wpuf_payment', 'on' );
68
- $current_user = wpuf_get_user();
 
 
 
 
 
 
 
 
 
69
  ?>
70
  <div class="items-table-container">
71
  <table class="items-table <?php echo esc_attr( $post_type ); ?>" cellpadding="0" cellspacing="0">
@@ -158,6 +167,10 @@ $post_type_obj = get_post_type_object( $post_type );
158
  $show_edit = false;
159
  }
160
 
 
 
 
 
161
  if ( $show_edit ) {
162
  ?>
163
  <a class="wpuf-posts-options wpuf-posts-edit" href="<?php echo esc_url( wp_nonce_url( $url, 'wpuf_edit' ) ); ?>"><?php esc_html_e( 'Edit', 'wp-user-frontend' ); ?></a>
61
  <?php if ( $dashboard_query->have_posts() ) { ?>
62
 
63
  <?php
64
+ $featured_img = wpuf_get_option( 'show_ft_image', 'wpuf_dashboard' );
65
+ $featured_img_size = wpuf_get_option( 'ft_img_size', 'wpuf_dashboard' );
66
+ $payment_column = wpuf_get_option( 'show_payment_column', 'wpuf_dashboard', 'on' );
67
+ $enable_payment = wpuf_get_option( 'enable_payment', 'wpuf_payment', 'on' );
68
+ $current_user = wpuf_get_user();
69
+ $user_subscription = new WPUF_User_Subscription( $current_user );
70
+ $user_sub = $user_subscription->current_pack();
71
+ $sub_id = $current_user->subscription()->current_pack_id();
72
+
73
+ if ( $sub_id ) {
74
+ $subs_expired = $user_subscription->expired();
75
+ } else {
76
+ $subs_expired = false;
77
+ }
78
  ?>
79
  <div class="items-table-container">
80
  <table class="items-table <?php echo esc_attr( $post_type ); ?>" cellpadding="0" cellspacing="0">
167
  $show_edit = false;
168
  }
169
 
170
+ if ( $subs_expired ) {
171
+ $show_edit = false;
172
+ }
173
+
174
  if ( $show_edit ) {
175
  ?>
176
  <a class="wpuf-posts-options wpuf-posts-edit" href="<?php echo esc_url( wp_nonce_url( $url, 'wpuf_edit' ) ); ?>"><?php esc_html_e( 'Edit', 'wp-user-frontend' ); ?></a>
templates/dashboard/subscription.php CHANGED
@@ -7,58 +7,65 @@
7
  <strong><?php esc_html_e( 'Package & billing details: ', 'wp-user-frontend' ); ?></strong>
8
  <?php echo esc_html( $billing_amount . ' ' . $recurring_des ); ?>
9
  </div>
 
10
  <div>
11
- <strong><?php esc_html_e( 'Remaining post: ', 'wp-user-frontend' ); ?></strong>
12
- <?php
13
- $i = 0;
 
 
 
 
 
14
 
15
- foreach ( $user_sub['posts'] as $key => $value ) {
16
- $value = intval( $value );
17
 
18
- if ( $value === 0 ) {
19
- continue;
20
- }
21
 
22
- $post_type_obj = get_post_type_object( $key );
23
 
24
- if ( !$post_type_obj ) {
25
- continue;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
26
  }
27
- $value = ( $value == '-1' ) ? __( 'Unlimited', 'wp-user-frontend' ) : $value; ?>
28
- <div><?php echo esc_html( $post_type_obj->labels->name ) . ': ' . esc_html( $value ); ?></div>
29
- <?php
30
- $i++;
31
- }
32
- echo $i ? '' : esc_attr( $i );
33
- ?>
34
- </div>
35
- <?php
36
- if ( $user_sub['recurring'] != 'yes' ) {
37
- if ( !empty( $user_sub['expire'] ) ) {
38
- $expiry_date = ( $user_sub['expire'] == 'unlimited' ) ? ucfirst( 'unlimited' ) : wpuf_get_date( wpuf_date2mysql( $user_sub['expire'] ) ); ?>
39
- <div class="wpuf-expire">
40
- <strong><?php echo esc_html( 'Expire date:', 'wp-user-frontend' ); ?></strong> <?php echo esc_html( $expiry_date ); ?>
41
- </div>
42
- <?php
43
  }
44
- }
45
 
46
- if ( $user_sub['recurring'] == 'yes' ) {
47
- global $wpdb;
48
 
49
- $user_id = get_current_user_id();
50
- $payment_gateway = $wpdb->get_var( "SELECT payment_type FROM {$wpdb->prefix}wpuf_transaction WHERE user_id = {$user_id} AND status = 'completed' ORDER BY created DESC" );
51
 
52
- $payment_gateway = strtolower( $payment_gateway );
53
 
54
- echo wp_kses_post( '<br />' );
55
- esc_html_e( '<p><i>To cancel the pack, press the following cancel button.</i></p>', 'wp-user-frontend' ); ?>
56
- <form action="" method="post" style="text-align: center;">
57
- <?php wp_nonce_field( 'wpuf-sub-cancel' ); ?>
58
- <input type="hidden" name="gateway" value="<?php echo esc_attr( $payment_gateway ); ?>">
59
- <input type="submit" name="wpuf_cancel_subscription" class="btn btn-sm btn-danger" value="<?php esc_html_e( 'Cancel', 'wp-user-frontend' ); ?>">
60
- </form>
61
- <?php
 
62
  }
63
  ?>
64
  </div>
7
  <strong><?php esc_html_e( 'Package & billing details: ', 'wp-user-frontend' ); ?></strong>
8
  <?php echo esc_html( $billing_amount . ' ' . $recurring_des ); ?>
9
  </div>
10
+ <?php if ( is_wp_error( $user_sub ) ) { ?>
11
  <div>
12
+ <strong><?php esc_html_e( 'Subscription Status: ', 'wp-user-frontend' ); ?></strong>
13
+ <?php esc_html_e( 'Subscription Expired!', 'wp-user-frontend' ); ?>
14
+ </div>
15
+ <?php } else { ?>
16
+ <div>
17
+ <strong><?php esc_html_e( 'Remaining post: ', 'wp-user-frontend' ); ?></strong>
18
+ <?php
19
+ $i = 0;
20
 
21
+ foreach ( $user_sub['posts'] as $key => $value ) {
22
+ $value = intval( $value );
23
 
24
+ if ( $value === 0 ) {
25
+ continue;
26
+ }
27
 
28
+ $post_type_obj = get_post_type_object( $key );
29
 
30
+ if ( ! $post_type_obj ) {
31
+ continue;
32
+ }
33
+ $value = ( $value == '-1' ) ? __( 'Unlimited', 'wp-user-frontend' ) : $value; ?>
34
+ <div><?php echo esc_html( $post_type_obj->labels->name ) . ': ' . esc_html( $value ); ?></div>
35
+ <?php
36
+ $i ++;
37
+ }
38
+ echo $i ? '' : esc_attr( $i );
39
+ ?>
40
+ </div>
41
+ <?php
42
+ if ( $user_sub['recurring'] != 'yes' ) {
43
+ if ( !empty( $user_sub['expire'] ) ) {
44
+ $expiry_date = ( $user_sub['expire'] == 'unlimited' ) ? ucfirst( 'unlimited' ) : wpuf_get_date( wpuf_date2mysql( $user_sub['expire'] ) ); ?>
45
+ <div class="wpuf-expire">
46
+ <strong><?php echo esc_html__( 'Expire date:', 'wp-user-frontend' ); ?></strong> <?php echo esc_html( $expiry_date ); ?>
47
+ </div>
48
+ <?php
49
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
50
  }
 
51
 
52
+ if ( $user_sub['recurring'] == 'yes' ) {
53
+ global $wpdb;
54
 
55
+ $user_id = get_current_user_id();
56
+ $payment_gateway = $wpdb->get_var( "SELECT payment_type FROM {$wpdb->prefix}wpuf_transaction WHERE user_id = {$user_id} AND status = 'completed' ORDER BY created DESC" );
57
 
58
+ $payment_gateway = strtolower( $payment_gateway );
59
 
60
+ echo wp_kses_post( '<br />' );
61
+ esc_html_e( '<p><i>To cancel the pack, press the following cancel button.</i></p>', 'wp-user-frontend' ); ?>
62
+ <form action="" method="post" style="text-align: center;">
63
+ <?php wp_nonce_field( 'wpuf-sub-cancel' ); ?>
64
+ <input type="hidden" name="gateway" value="<?php echo esc_attr( $payment_gateway ); ?>">
65
+ <input type="submit" name="wpuf_cancel_subscription" class="btn btn-sm btn-danger" value="<?php esc_html_e( 'Cancel', 'wp-user-frontend' ); ?>">
66
+ </form>
67
+ <?php
68
+ }
69
  }
70
  ?>
71
  </div>
vendor/autoload.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
- return ComposerAutoloaderInit5aa1a47362a80993c5f3f9a878859190::getLoader();
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
+ return ComposerAutoloaderInit76c3dcdf69aa43c6f108999da9483a96::getLoader();
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInit5aa1a47362a80993c5f3f9a878859190
6
  {
7
  private static $loader;
8
 
@@ -19,15 +19,15 @@ class ComposerAutoloaderInit5aa1a47362a80993c5f3f9a878859190
19
  return self::$loader;
20
  }
21
 
22
- spl_autoload_register(array('ComposerAutoloaderInit5aa1a47362a80993c5f3f9a878859190', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
- spl_autoload_unregister(array('ComposerAutoloaderInit5aa1a47362a80993c5f3f9a878859190', 'loadClassLoader'));
25
 
26
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
27
  if ($useStaticLoader) {
28
  require_once __DIR__ . '/autoload_static.php';
29
 
30
- call_user_func(\Composer\Autoload\ComposerStaticInit5aa1a47362a80993c5f3f9a878859190::getInitializer($loader));
31
  } else {
32
  $map = require __DIR__ . '/autoload_namespaces.php';
33
  foreach ($map as $namespace => $path) {
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
+ class ComposerAutoloaderInit76c3dcdf69aa43c6f108999da9483a96
6
  {
7
  private static $loader;
8
 
19
  return self::$loader;
20
  }
21
 
22
+ spl_autoload_register(array('ComposerAutoloaderInit76c3dcdf69aa43c6f108999da9483a96', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
+ spl_autoload_unregister(array('ComposerAutoloaderInit76c3dcdf69aa43c6f108999da9483a96', 'loadClassLoader'));
25
 
26
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
27
  if ($useStaticLoader) {
28
  require_once __DIR__ . '/autoload_static.php';
29
 
30
+ call_user_func(\Composer\Autoload\ComposerStaticInit76c3dcdf69aa43c6f108999da9483a96::getInitializer($loader));
31
  } else {
32
  $map = require __DIR__ . '/autoload_namespaces.php';
33
  foreach ($map as $namespace => $path) {
vendor/composer/autoload_static.php CHANGED
@@ -4,7 +4,7 @@
4
 
5
  namespace Composer\Autoload;
6
 
7
- class ComposerStaticInit5aa1a47362a80993c5f3f9a878859190
8
  {
9
  public static $prefixLengthsPsr4 = array (
10
  'C' =>
@@ -121,9 +121,9 @@ class ComposerStaticInit5aa1a47362a80993c5f3f9a878859190
121
  public static function getInitializer(ClassLoader $loader)
122
  {
123
  return \Closure::bind(function () use ($loader) {
124
- $loader->prefixLengthsPsr4 = ComposerStaticInit5aa1a47362a80993c5f3f9a878859190::$prefixLengthsPsr4;
125
- $loader->prefixDirsPsr4 = ComposerStaticInit5aa1a47362a80993c5f3f9a878859190::$prefixDirsPsr4;
126
- $loader->classMap = ComposerStaticInit5aa1a47362a80993c5f3f9a878859190::$classMap;
127
 
128
  }, null, ClassLoader::class);
129
  }
4
 
5
  namespace Composer\Autoload;
6
 
7
+ class ComposerStaticInit76c3dcdf69aa43c6f108999da9483a96
8
  {
9
  public static $prefixLengthsPsr4 = array (
10
  'C' =>
121
  public static function getInitializer(ClassLoader $loader)
122
  {
123
  return \Closure::bind(function () use ($loader) {
124
+ $loader->prefixLengthsPsr4 = ComposerStaticInit76c3dcdf69aa43c6f108999da9483a96::$prefixLengthsPsr4;
125
+ $loader->prefixDirsPsr4 = ComposerStaticInit76c3dcdf69aa43c6f108999da9483a96::$prefixDirsPsr4;
126
+ $loader->classMap = ComposerStaticInit76c3dcdf69aa43c6f108999da9483a96::$classMap;
127
 
128
  }, null, ClassLoader::class);
129
  }
views/welcome-page.php CHANGED
@@ -434,12 +434,12 @@
434
  </div>
435
 
436
  <div class="logo">
437
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/wpuf-logo.png" alt="WP User Frontend Pro">
438
  </div>
439
  </div>
440
  <div class="video-block" id="wpuf-welcome-prompt">
441
  <a href="#" class="play-video learn-more" title="Watch how to create your first form" data-tube="NJvjy9WFyAM">
442
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/welcome-video.png" alt="Watch how to create your first form" class="video-thumbnail">
443
  </a>
444
  <div class="action-block">
445
  <a href="<?php echo esc_url_raw( admin_url( 'admin.php?page=wpuf-post-forms' ) ); ?>" class="wpuf-btn primary"><?php esc_html_e( 'Create Your First Form', 'wp-user-frontend' ); ?></a>
@@ -464,81 +464,81 @@
464
 
465
  <div class="section">
466
  <div class="features-block">
467
- <h2><img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/frontend-posting.png" alt="Frontend Posting"> Frontend Posting</h2>
468
 
469
  <div class="features-list">
470
  <div class="feature-block">
471
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/Form-Builder.svg">
472
  <h5>Post Form Builder</h5>
473
  <p><a href="https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/creating-posting-forms/" target="_blank">Design your forms</a> with drag & Drop builder with live preview</p>
474
  </div>
475
 
476
  <div class="feature-block">
477
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/Support.svg">
478
  <h5>Custom Field Support</h5>
479
  <p>Build exclusive submission forms with <a href="https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/form-elements/" target="_blank">30+ custom field types</a>.</p>
480
  </div>
481
  <div class="feature-block">
482
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/Post-Taxonomies.svg">
483
  <h5>Post Types & Taxonomies</h5>
484
  <p>Unleash your creativity with <a href="https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/different-custom-post-type-submission-2/" target="_blank">custom post types</a> & taxonomies</p>
485
  </div>
486
  <div class="feature-block">
487
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/Guest-Posting.svg">
488
  <h5>Guest Posting</h5>
489
  <p>Allow your guests to post from the frontend with full capabilities. <a href="https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/guest-posting/" target="_blank">Learn more</a>.</p>
490
  </div>
491
  </div>
492
  </div>
493
  <div class="features-block">
494
- <h2><img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/Profile-Builder.png" alt="Frontend Posting"> Registration &amp; Profile Builder</h2>
495
 
496
  <div class="features-list">
497
  <div class="feature-block">
498
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/Registration-form.svg">
499
  <h5>Registration form builder</h5>
500
  <p>Create <a href="https://wedevs.com/docs/wp-user-frontend-pro/registration-profile-forms/registration-forms/" target="_blank">frontend registration forms</a> with powerful builder using shortcodes.</p>
501
  </div>
502
 
503
  <div class="feature-block">
504
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/Profile-Builder.svg">
505
  <h5>User Profile Builder</h5>
506
  <p>Use shortcodes to publish frontend profile page and <a href="https://wedevs.com/docs/wp-user-frontend-pro/registration-profile-forms/wordpress-edit-user-profile-from-front-end/" target="_blank">profile edit</a> page.</p>
507
  </div>
508
  <div class="feature-block">
509
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/My-Account.svg">
510
  <h5>My Account on Frontend</h5>
511
  <p>Use shortcodes to generate frontend <a href="https://wedevs.com/docs/wp-user-frontend-pro/frontend/how-to-create-my-account-page/" target="_blank">my account</a> pages.</p>
512
  </div>
513
  <div class="feature-block">
514
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/Create-Database.svg">
515
  <h5>Login Page</h5>
516
  <p>Create themed login and registration page for a unified user experience for the user.</p>
517
  </div>
518
  </div>
519
  </div>
520
  <div class="features-block">
521
- <h2><img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/Subscriptions.png" alt="Subscriptions"> Subscriptions</h2>
522
 
523
  <div class="features-list">
524
  <div class="feature-block">
525
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/User.svg">
526
  <h5>Charge User for Posting</h5>
527
  <p><a href="https://wedevs.com/docs/wp-user-frontend-pro/subscription-payment/" target="_blank">Accept payments</a> from multiple gateways for post submissions</p>
528
  </div>
529
 
530
  <div class="feature-block">
531
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/pay-per-post.svg">
532
  <h5>Pay-per-post on Forms</h5>
533
  <p>Earn from <a href="https://wedevs.com/docs/wp-user-frontend-pro/subscription-payment/how-to-charge-for-each-post-submission/" target="_blank">each guest post</a> with different subscription packs</p>
534
  </div>
535
  <div class="feature-block">
536
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/Content-Locking.svg">
537
  <h5>Content Locking</h5>
538
  <p><a href="https://wedevs.com/docs/wp-user-frontend-pro/content-restriction/" target="_blank">Lock high value &amp; quality contents</a> for your subscribed users</p>
539
  </div>
540
  <div class="feature-block">
541
- <img src="<?php echo esc_attr( WPUF_ASSET_URI ); ?>/images/welcome/Subscription-Signup.svg">
542
  <h5>Subscription Signup</h5>
543
  <p>Build a membership site where users can <a href="https://wedevs.com/docs/wp-user-frontend-pro/registration-profile-forms/paid-membership-registration/" target="_blank">signup with a subscription plan</a>.</p>
544
  </div>
434
  </div>
435
 
436
  <div class="logo">
437
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/wpuf-logo.png" alt="WP User Frontend Pro">
438
  </div>
439
  </div>
440
  <div class="video-block" id="wpuf-welcome-prompt">
441
  <a href="#" class="play-video learn-more" title="Watch how to create your first form" data-tube="NJvjy9WFyAM">
442
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/welcome-video.png" alt="Watch how to create your first form" class="video-thumbnail">
443
  </a>
444
  <div class="action-block">
445
  <a href="<?php echo esc_url_raw( admin_url( 'admin.php?page=wpuf-post-forms' ) ); ?>" class="wpuf-btn primary"><?php esc_html_e( 'Create Your First Form', 'wp-user-frontend' ); ?></a>
464
 
465
  <div class="section">
466
  <div class="features-block">
467
+ <h2><img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/frontend-posting.png" alt="Frontend Posting"> Frontend Posting</h2>
468
 
469
  <div class="features-list">
470
  <div class="feature-block">
471
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/Form-Builder.svg">
472
  <h5>Post Form Builder</h5>
473
  <p><a href="https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/creating-posting-forms/" target="_blank">Design your forms</a> with drag & Drop builder with live preview</p>
474
  </div>
475
 
476
  <div class="feature-block">
477
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/Support.svg">
478
  <h5>Custom Field Support</h5>
479
  <p>Build exclusive submission forms with <a href="https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/form-elements/" target="_blank">30+ custom field types</a>.</p>
480
  </div>
481
  <div class="feature-block">
482
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/Post-Taxonomies.svg">
483
  <h5>Post Types & Taxonomies</h5>
484
  <p>Unleash your creativity with <a href="https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/different-custom-post-type-submission-2/" target="_blank">custom post types</a> & taxonomies</p>
485
  </div>
486
  <div class="feature-block">
487
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/Guest-Posting.svg">
488
  <h5>Guest Posting</h5>
489
  <p>Allow your guests to post from the frontend with full capabilities. <a href="https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/guest-posting/" target="_blank">Learn more</a>.</p>
490
  </div>
491
  </div>
492
  </div>
493
  <div class="features-block">
494
+ <h2><img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/Profile-Builder.png" alt="Frontend Posting"> Registration &amp; Profile Builder</h2>
495
 
496
  <div class="features-list">
497
  <div class="feature-block">
498
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/Registration-form.svg">
499
  <h5>Registration form builder</h5>
500
  <p>Create <a href="https://wedevs.com/docs/wp-user-frontend-pro/registration-profile-forms/registration-forms/" target="_blank">frontend registration forms</a> with powerful builder using shortcodes.</p>
501
  </div>
502
 
503
  <div class="feature-block">
504
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/Profile-Builder.svg">
505
  <h5>User Profile Builder</h5>
506
  <p>Use shortcodes to publish frontend profile page and <a href="https://wedevs.com/docs/wp-user-frontend-pro/registration-profile-forms/wordpress-edit-user-profile-from-front-end/" target="_blank">profile edit</a> page.</p>
507
  </div>
508
  <div class="feature-block">
509
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/My-Account.svg">
510
  <h5>My Account on Frontend</h5>
511
  <p>Use shortcodes to generate frontend <a href="https://wedevs.com/docs/wp-user-frontend-pro/frontend/how-to-create-my-account-page/" target="_blank">my account</a> pages.</p>
512
  </div>
513
  <div class="feature-block">
514
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/Create-Database.svg">
515
  <h5>Login Page</h5>
516
  <p>Create themed login and registration page for a unified user experience for the user.</p>
517
  </div>
518
  </div>
519
  </div>
520
  <div class="features-block">
521
+ <h2><img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/Subscriptions.png" alt="Subscriptions"> Subscriptions</h2>
522
 
523
  <div class="features-list">
524
  <div class="feature-block">
525
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/User.svg">
526
  <h5>Charge User for Posting</h5>
527
  <p><a href="https://wedevs.com/docs/wp-user-frontend-pro/subscription-payment/" target="_blank">Accept payments</a> from multiple gateways for post submissions</p>
528
  </div>
529
 
530
  <div class="feature-block">
531
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/pay-per-post.svg">
532
  <h5>Pay-per-post on Forms</h5>
533
  <p>Earn from <a href="https://wedevs.com/docs/wp-user-frontend-pro/subscription-payment/how-to-charge-for-each-post-submission/" target="_blank">each guest post</a> with different subscription packs</p>
534
  </div>
535
  <div class="feature-block">
536
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/Content-Locking.svg">
537
  <h5>Content Locking</h5>
538
  <p><a href="https://wedevs.com/docs/wp-user-frontend-pro/content-restriction/" target="_blank">Lock high value &amp; quality contents</a> for your subscribed users</p>
539
  </div>
540
  <div class="feature-block">
541
+ <img src="<?php echo esc_url( WPUF_ASSET_URI ); ?>/images/welcome/Subscription-Signup.svg">
542
  <h5>Subscription Signup</h5>
543
  <p>Build a membership site where users can <a href="https://wedevs.com/docs/wp-user-frontend-pro/registration-profile-forms/paid-membership-registration/" target="_blank">signup with a subscription plan</a>.</p>
544
  </div>
wpuf-functions.php CHANGED
@@ -100,7 +100,7 @@ function wpuf_upload_attachment( $post_id ) {
100
  'size' => $wpuf_post_attachments['size'][$i],
101
  ];
102
 
103
- wpuf_upload_file( $upload );
104
  }//file exists
105
  }// end for
106
  }
@@ -207,14 +207,17 @@ function wpuf_list_users() {
207
  * @return string HTML content, if not displaying
208
  */
209
  function wpuf_get_pages( $post_type = 'page' ) {
210
- global $wpdb;
211
-
212
  $array = [ '' => __( '-- select --', 'wp-user-frontend' ) ];
213
- $pages = get_posts( ['post_type' => $post_type, 'numberposts' => -1] );
 
 
 
 
 
214
 
215
  if ( $pages ) {
216
  foreach ( $pages as $page ) {
217
- $array[$page->ID] = esc_attr( $page->post_title );
218
  }
219
  }
220
 
@@ -357,15 +360,16 @@ class WPUF_Walker_Category_Checklist extends Walker {
357
  /**
358
  * Displays checklist of a taxonomy
359
  *
 
 
 
360
  * @since 0.8
361
  *
362
- * @param int $post_id
363
- * @param array $selected_cats
364
  */
365
  function wpuf_category_checklist( $post_id = 0, $selected_cats = false, $attr = [], $class = null ) {
366
  require_once ABSPATH . '/wp-admin/includes/template.php';
367
 
368
- $walker = new WPUF_Walker_Category_Checklist();
369
 
370
  $exclude_type = isset( $attr['exclude_type'] ) ? $attr['exclude_type'] : 'exclude';
371
  $exclude = $attr['exclude'];
@@ -382,7 +386,7 @@ function wpuf_category_checklist( $post_id = 0, $selected_cats = false, $attr =
382
  ];
383
 
384
  if ( $post_id ) {
385
- $args['selected_cats'] = wp_get_object_terms( $post_id, $tax, ['fields' => 'ids'] );
386
  } elseif ( $selected_cats ) {
387
  $args['selected_cats'] = $selected_cats;
388
  } else {
@@ -406,21 +410,22 @@ function wpuf_category_checklist( $post_id = 0, $selected_cats = false, $attr =
406
 
407
  echo wp_kses_post( '<ul class="wpuf-category-checklist">' );
408
  printf( '<input type="hidden" name="%s" value="0" />', esc_attr( $tax ) );
409
- echo wp_kses( call_user_func_array( [&$walker, 'walk'], [$categories, 0, $args] ),[
410
- 'li' => [
411
  'class' => []
412
  ],
413
  'label' => [
414
  'class' => []
415
  ],
416
  'input' => [
417
- 'class' =>[],
418
- 'type' =>[],
419
- 'value' =>[],
420
- 'name' => [],
421
- 'id' => [],
 
422
  ],
423
- 'ul' => [
424
  'class' => []
425
  ]
426
  ] );
@@ -975,6 +980,25 @@ function wpuf_show_custom_fields( $content ) {
975
  $html .= sprintf( ' %s</li>', make_clickable( $value ) );
976
  break;
977
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
978
  default:
979
  $value = get_post_meta( $post->ID, $attr['name'] );
980
  $filter_html = apply_filters( 'wpuf_custom_field_render', '', $value, $attr, $form_settings );
@@ -1142,7 +1166,11 @@ function wpuf_meta_shortcode( $atts ) {
1142
  }
1143
 
1144
  if ( $type == 'image' || $type == 'file' ) {
1145
- $images = get_post_meta( $post->ID, $name );
 
 
 
 
1146
 
1147
  if ( $images ) {
1148
  $html = '';
@@ -1155,7 +1183,7 @@ function wpuf_meta_shortcode( $atts ) {
1155
  }
1156
 
1157
  $full_size = wp_get_attachment_url( $attachment_id );
1158
- $html .= sprintf( '<a href="%s">%s</a> ', $full_size, $thumb );
1159
  }
1160
 
1161
  return $html;
@@ -1530,7 +1558,7 @@ function wpuf_get_child_cats() {
1530
  $result = '';
1531
 
1532
  if ( $parentCat < 1 ) {
1533
- die( wp_kses_post( $result, $allowed_tags ) );
1534
  }
1535
 
1536
  if ( $terms = get_categories( 'taxonomy=' . $taxonomy . '&child_of=' . $parentCat . '&hide_empty=0' ) ) {
@@ -1547,7 +1575,7 @@ function wpuf_get_child_cats() {
1547
  } else {
1548
  die( '' );
1549
  }
1550
- die( wp_kses_post( $result, $allowed_tags ) );
1551
  }
1552
 
1553
  function taxnomy_select( $terms, $attr ) {
@@ -1591,7 +1619,6 @@ function taxnomy_select( $terms, $attr ) {
1591
  'exclude' => isset( $attr['exclude'] ) ? $attr['exclude'] : '',
1592
  'orderby' => $attr['orderby'],
1593
  'order' => $attr['order'],
1594
- 'name' => $attr['name'],
1595
  //'last_term_id' => isset( $attr['parent_cat'] ) ? $attr['parent_cat'] : '',
1596
  //'term_id' => $selected
1597
  ];
@@ -1893,6 +1920,8 @@ function wpuf_get_pending_transactions( $args = [] ) {
1893
  ];
1894
  }
1895
 
 
 
1896
  return $items;
1897
  }
1898
 
@@ -1956,6 +1985,7 @@ function wpuf_get_currencies() {
1956
  [ 'currency' => 'USD', 'label' => __( 'US Dollar', 'wp-user-frontend' ), 'symbol' => '&#36;' ],
1957
  [ 'currency' => 'VND', 'label' => __( 'Vietnamese Dong', 'wp-user-frontend' ), 'symbol' => '&#8363;' ],
1958
  [ 'currency' => 'EGP', 'label' => __( 'Egyptian Pound', 'wp-user-frontend' ), 'symbol' => 'EGP' ],
 
1959
  ];
1960
 
1961
  return apply_filters( 'wpuf_currencies', $currencies );
@@ -3059,7 +3089,7 @@ function wpuf_ajax_get_states_field() {
3059
  }
3060
 
3061
  wp_send_json( $response ) ; // phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped
3062
-
3063
  }
3064
  add_action( 'wp_ajax_wpuf-ajax-address', 'wpuf_ajax_get_states_field' );
3065
  add_action( 'wp_ajax_nopriv_wpuf-ajax-address', 'wpuf_ajax_get_states_field' );
100
  'size' => $wpuf_post_attachments['size'][$i],
101
  ];
102
 
103
+ wp_handle_upload( $upload );
104
  }//file exists
105
  }// end for
106
  }
207
  * @return string HTML content, if not displaying
208
  */
209
  function wpuf_get_pages( $post_type = 'page' ) {
 
 
210
  $array = [ '' => __( '-- select --', 'wp-user-frontend' ) ];
211
+ $pages = get_posts( [ 'post_type' => $post_type,
212
+ 'numberposts' => - 1,
213
+ 'no_found_rows' => true,
214
+ 'update_post_meta_cache' => false,
215
+ 'update_post_term_cache' => false
216
+ ] );
217
 
218
  if ( $pages ) {
219
  foreach ( $pages as $page ) {
220
+ $array[ $page->ID ] = esc_attr( $page->post_title );
221
  }
222
  }
223
 
360
  /**
361
  * Displays checklist of a taxonomy
362
  *
363
+ * @param int $post_id
364
+ * @param array $selected_cats
365
+ *
366
  * @since 0.8
367
  *
 
 
368
  */
369
  function wpuf_category_checklist( $post_id = 0, $selected_cats = false, $attr = [], $class = null ) {
370
  require_once ABSPATH . '/wp-admin/includes/template.php';
371
 
372
+ $walker = new WPUF_Walker_Category_Checklist();
373
 
374
  $exclude_type = isset( $attr['exclude_type'] ) ? $attr['exclude_type'] : 'exclude';
375
  $exclude = $attr['exclude'];
386
  ];
387
 
388
  if ( $post_id ) {
389
+ $args['selected_cats'] = wp_get_object_terms( $post_id, $tax, [ 'fields' => 'ids' ] );
390
  } elseif ( $selected_cats ) {
391
  $args['selected_cats'] = $selected_cats;
392
  } else {
410
 
411
  echo wp_kses_post( '<ul class="wpuf-category-checklist">' );
412
  printf( '<input type="hidden" name="%s" value="0" />', esc_attr( $tax ) );
413
+ echo wp_kses( call_user_func_array( [ &$walker, 'walk' ], [ $categories, 0, $args ] ), [
414
+ 'li' => [
415
  'class' => []
416
  ],
417
  'label' => [
418
  'class' => []
419
  ],
420
  'input' => [
421
+ 'class' => [],
422
+ 'type' => [],
423
+ 'value' => [],
424
+ 'name' => [],
425
+ 'id' => [],
426
+ 'checked' => [],
427
  ],
428
+ 'ul' => [
429
  'class' => []
430
  ]
431
  ] );
980
  $html .= sprintf( ' %s</li>', make_clickable( $value ) );
981
  break;
982
 
983
+ case 'country_list':
984
+ $value = get_post_meta( $post->ID, $attr['name'], true );
985
+ $countries = wpuf_get_countries();
986
+
987
+ $value = array_filter( $countries, function( $item ) use ( $value ) {
988
+ return $item['code'] == $value;
989
+ } );
990
+
991
+ $value = $value[0]['name'];
992
+
993
+ $html .= '<li>';
994
+
995
+ if ( $hide_label == 'no' ) {
996
+ $html .= '<label>' . $attr['label'] . '</label>:';
997
+ }
998
+
999
+ $html .= sprintf( ' %s</li>', make_clickable( $value ) );
1000
+ break;
1001
+
1002
  default:
1003
  $value = get_post_meta( $post->ID, $attr['name'] );
1004
  $filter_html = apply_filters( 'wpuf_custom_field_render', '', $value, $attr, $form_settings );
1166
  }
1167
 
1168
  if ( $type == 'image' || $type == 'file' ) {
1169
+ $images = get_post_meta( $post->ID, $name, true );
1170
+
1171
+ if ( ! is_array( $images ) ) {
1172
+ $images = (array) $images;
1173
+ }
1174
 
1175
  if ( $images ) {
1176
  $html = '';
1183
  }
1184
 
1185
  $full_size = wp_get_attachment_url( $attachment_id );
1186
+ $html .= sprintf( '<a href="%s">%s</a> ', $full_size, $thumb );
1187
  }
1188
 
1189
  return $html;
1558
  $result = '';
1559
 
1560
  if ( $parentCat < 1 ) {
1561
+ die( wp_kses( $result, $allowed_tags ) );
1562
  }
1563
 
1564
  if ( $terms = get_categories( 'taxonomy=' . $taxonomy . '&child_of=' . $parentCat . '&hide_empty=0' ) ) {
1575
  } else {
1576
  die( '' );
1577
  }
1578
+ die( wp_kses( $result, $allowed_tags ) );
1579
  }
1580
 
1581
  function taxnomy_select( $terms, $attr ) {
1619
  'exclude' => isset( $attr['exclude'] ) ? $attr['exclude'] : '',
1620
  'orderby' => $attr['orderby'],
1621
  'order' => $attr['order'],
 
1622
  //'last_term_id' => isset( $attr['parent_cat'] ) ? $attr['parent_cat'] : '',
1623
  //'term_id' => $selected
1624
  ];
1920
  ];
1921
  }
1922
 
1923
+ wp_reset_postdata();
1924
+
1925
  return $items;
1926
  }
1927
 
1985
  [ 'currency' => 'USD', 'label' => __( 'US Dollar', 'wp-user-frontend' ), 'symbol' => '&#36;' ],
1986
  [ 'currency' => 'VND', 'label' => __( 'Vietnamese Dong', 'wp-user-frontend' ), 'symbol' => '&#8363;' ],
1987
  [ 'currency' => 'EGP', 'label' => __( 'Egyptian Pound', 'wp-user-frontend' ), 'symbol' => 'EGP' ],
1988
+ [ 'currency' => 'JOD', 'label' => __( 'Jordanian dinar', 'wp-user-frontend' ), 'symbol' => 'د.أ' ],
1989
  ];
1990
 
1991
  return apply_filters( 'wpuf_currencies', $currencies );
3089
  }
3090
 
3091
  wp_send_json( $response ) ; // phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped
3092
+
3093
  }
3094
  add_action( 'wp_ajax_wpuf-ajax-address', 'wpuf_ajax_get_states_field' );
3095
  add_action( 'wp_ajax_nopriv_wpuf-ajax-address', 'wpuf_ajax_get_states_field' );
wpuf.php CHANGED
@@ -4,7 +4,7 @@ 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: 3.1.17
8
  Author URI: https://tareq.co
9
  License: GPL2 or later
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
@@ -12,7 +12,7 @@ Text Domain: wp-user-frontend
12
  Domain Path: /languages
13
  */
14
 
15
- define( 'WPUF_VERSION', '3.1.17' );
16
  define( 'WPUF_FILE', __FILE__ );
17
  define( 'WPUF_ROOT', __DIR__ );
18
  define( 'WPUF_ROOT_URI', plugins_url( '', __FILE__ ) );
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: 3.1.18
8
  Author URI: https://tareq.co
9
  License: GPL2 or later
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
12
  Domain Path: /languages
13
  */
14
 
15
+ define( 'WPUF_VERSION', '3.1.18' );
16
  define( 'WPUF_FILE', __FILE__ );
17
  define( 'WPUF_ROOT', __DIR__ );
18
  define( 'WPUF_ROOT_URI', plugins_url( '', __FILE__ ) );