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

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.5.20
Comparing to
See all releases

Code changes from version 3.5.19 to 3.5.20

admin/class-admin-subscription.php CHANGED
@@ -16,15 +16,15 @@ class WPUF_Admin_Subscription {
16
  * The constructor
17
  */
18
  public function __construct() {
19
- add_filter( 'post_updated_messages', [$this, 'form_updated_message'] );
20
 
21
- add_action( 'show_user_profile', [$this, 'profile_subscription_details'], 30 );
22
- add_action( 'edit_user_profile', [$this, 'profile_subscription_details'], 30 );
23
- add_action( 'personal_options_update', [$this, 'profile_subscription_update'] );
24
- add_action( 'edit_user_profile_update', [$this, 'profile_subscription_update'] );
25
- add_action( 'wp_ajax_wpuf_delete_user_package', [$this, 'delete_user_package'] );
26
 
27
- add_filter( 'manage_wpuf_subscription_posts_columns', [ $this, 'subscription_columns_head'] );
28
  add_action( 'manage_wpuf_subscription_posts_custom_column', [ $this, 'subscription_columns_content' ], 10, 2 );
29
 
30
  // display help link to docs
@@ -43,7 +43,7 @@ class WPUF_Admin_Subscription {
43
  * @return [type] [description]
44
  */
45
  public static function getInstance() {
46
- if ( !self::$_instance ) {
47
  self::$_instance = new self();
48
  }
49
 
@@ -54,7 +54,7 @@ class WPUF_Admin_Subscription {
54
  * Add settings metaboxes
55
  */
56
  public function add_meta_boxes() {
57
- add_meta_box( 'wpuf-metabox-subscription', __( 'Pack Description', 'wp-user-frontend' ), [$this, 'pack_description_metabox'], 'wpuf_subscription', 'normal', 'high' );
58
  add_meta_box( 'wpuf_subs_metabox', 'Subscription Options', [ $this, 'subs_meta_box' ], 'wpuf_subscription' );
59
  }
60
 
@@ -91,16 +91,16 @@ class WPUF_Admin_Subscription {
91
  * @param int $user_id
92
  */
93
  public function profile_subscription_update( $user_id ) {
94
- if ( !is_admin() && !current_user_can( 'edit_users' ) ) {
95
  return;
96
  }
97
  $nonce = isset( $_REQUEST['wpuf-subscription-nonce'] ) ? sanitize_key( wp_unslash( $_REQUEST['wpuf-subscription-nonce'] ) ) : '';
98
 
99
  if ( isset( $nonce ) && ! wp_verify_nonce( $nonce, 'update-profile_' . $user_id ) ) {
100
- return ;
101
  }
102
 
103
- if ( !isset( $_POST['pack_id'] ) ) {
104
  return;
105
  }
106
 
@@ -118,9 +118,9 @@ class WPUF_Admin_Subscription {
118
  //updating number of posts
119
 
120
  if ( isset( $user_pack['posts'] ) ) {
121
- $p_type = isset( $_POST[$post_type] ) ? sanitize_text_field( wp_unslash( $_POST[$post_type] ) ) : '';
122
  foreach ( $user_pack['posts'] as $post_type => $post_num ) {
123
- $user_pack['posts'][$post_type] = $p_type;
124
  }
125
  }
126
 
@@ -143,11 +143,11 @@ class WPUF_Admin_Subscription {
143
 
144
  if ( isset( $user_pack['recurring'] ) && $user_pack['recurring'] == 'yes' ) {
145
  foreach ( $user_pack['posts'] as $type => $value ) {
146
- $user_pack['posts'][$type] = isset( $_POST[$type] ) ? sanitize_text_field( wp_unslash( $_POST[$type] ) ) : 0;
147
  }
148
  } else {
149
  foreach ( $user_pack['posts'] as $type => $value ) {
150
- $user_pack['posts'][$type] = isset( $_POST[$type] ) ? sanitize_text_field( wp_unslash( $_POST[$type] ) ) : 0;
151
  }
152
  $user_pack['expire'] = isset( $_POST['expire'] ) ? wpuf_date2mysql( sanitize_text_field( wp_unslash( $_POST['expire'] ) ) ) : $user_pack['expire'];
153
  }
@@ -219,7 +219,6 @@ class WPUF_Admin_Subscription {
219
  public function subscription_columns_content( $column_name, $post_ID ) {
220
  switch ( $column_name ) {
221
  case 'amount':
222
-
223
  $amount = get_post_meta( $post_ID, '_billing_amount', true );
224
 
225
  if ( intval( $amount ) == 0 ) {
@@ -231,14 +230,12 @@ class WPUF_Admin_Subscription {
231
  break;
232
 
233
  case 'subscribers':
234
-
235
  $users = WPUF_Subscription::init()->subscription_pack_users( $post_ID );
236
 
237
  echo wp_kses_post( '<a href="' . admin_url( 'edit.php?post_type=wpuf_subscription&page=wpuf_subscribers&post_ID=' . $post_ID ) . '" />' . count( $users ) . '</a>' );
238
  break;
239
 
240
  case 'recurring':
241
-
242
  $recurring = get_post_meta( $post_ID, '_recurring_pay', true );
243
 
244
  if ( $recurring == 'yes' ) {
@@ -249,16 +246,15 @@ class WPUF_Admin_Subscription {
249
  break;
250
 
251
  case 'duration':
252
-
253
- $recurring_pay = get_post_meta( $post_ID, '_recurring_pay', true );
254
- $billing_cycle_number = get_post_meta( $post_ID, '_billing_cycle_number', true );
255
- $cycle_period = get_post_meta( $post_ID, '_cycle_period', true );
256
 
257
  if ( $recurring_pay == 'yes' ) {
258
  echo esc_attr( $billing_cycle_number . ' ' . $cycle_period ) . '\'s (cycle)';
259
  } else {
260
- $expiration_number = get_post_meta( $post_ID, '_expiration_number', true );
261
- $expiration_period = get_post_meta( $post_ID, '_expiration_period', true );
262
  echo esc_attr( $expiration_number . ' ' . $expiration_period ) . '\'s';
263
  }
264
  break;
@@ -266,7 +262,7 @@ class WPUF_Admin_Subscription {
266
  }
267
 
268
  public function get_post_types( $post_types = null ) {
269
- if ( !$post_types ) {
270
  $post_types = WPUF_Subscription::init()->get_all_post_type();
271
  }
272
 
@@ -283,7 +279,7 @@ class WPUF_Admin_Subscription {
283
  <div><span class="description"><span><?php printf( 'How many %s the user can list with this pack? Enter <strong>-1</strong> for unlimited.', esc_html( $key ) ); ?></span></span></div>
284
  </td>
285
  </tr>
286
- <?php
287
  }
288
  }
289
 
@@ -300,7 +296,13 @@ class WPUF_Admin_Subscription {
300
  public function pack_description_metabox( $pack_id = null ) {
301
  global $post;
302
 
303
- wp_editor( $post->post_content, 'post_content', ['editor_height' => 100, 'quicktags' => false, 'media_buttons' => false] );
 
 
 
 
 
 
304
  }
305
 
306
  /**
@@ -323,7 +325,8 @@ class WPUF_Admin_Subscription {
323
 
324
  $expired_post_status = isset( $sub_meta['_expired_post_status'] ) ? $sub_meta['_expired_post_status'] : '';
325
  $is_enable_mail_after_expired = isset( $sub_meta['_enable_mail_after_expired'] ) && $sub_meta['_enable_mail_after_expired'] == 'on' ? 'checked' : '';
326
- $post_expiration_message = isset( $sub_meta['_post_expiration_message'] ) ? $sub_meta['_post_expiration_message'] : ''; ?>
 
327
 
328
  <div class="wpuf-subscription-pack-settings">
329
  <nav class="subscription-nav-tab">
@@ -380,14 +383,15 @@ class WPUF_Admin_Subscription {
380
  <table class="form-table">
381
  <tbody>
382
  <?php
383
- echo wp_kses( $this->get_post_types( $sub_meta['post_type_name'] ),
 
384
  [
385
  'div' => [],
386
  'tr' => [],
387
  'td' => [],
388
  'th' => [],
389
  'label' => [
390
- 'for' => []
391
  ],
392
  'input' => [
393
  'type' => [],
@@ -395,17 +399,17 @@ class WPUF_Admin_Subscription {
395
  'style' => [],
396
  'id' => [],
397
  'value' => [],
398
- 'name' => []
399
  ],
400
  'span' => [
401
- 'class' => []
402
  ],
403
- 'strong' => []
404
  ]
405
  );
406
  ?>
407
  <?php
408
- // do_action( 'wpuf_admin_subscription_detail', $sub_meta, $hidden_recurring_class, $hidden_trial_class, $this );
409
  ?>
410
  <tr class="wpuf-metabox-post_expiration">
411
 
@@ -421,27 +425,22 @@ class WPUF_Admin_Subscription {
421
  <tr class="wpuf-metabox-post_expiration wpuf_subscription_expiration_field">
422
  <?php
423
  $timeType_array = [
424
- 'year' => 100,
425
- 'month' => 12,
426
- 'day' => 30,
427
- ]; ?>
 
428
  <th class="wpuf-post-exp-time"> <?php esc_html_e( 'Post Expiration Time', 'wp-user-frontend' ); ?> </th>
429
  <td class="wpuf-post-exp-time">
430
- <select name="post_expiration_settings[expiration_time_value]" id="wpuf-expiration_time_value">
431
- <?php
432
- for ( $i = 1; $i <= $timeType_array[$time_type]; $i++ ) {
433
- ?>
434
- <option value="<?php echo esc_attr( $i ); ?>" <?php echo $i == $time_value ? 'selected' : ''; ?>><?php echo esc_attr( $i ); ?></option>
435
- <?php
436
- } ?>
437
- </select>
438
  <select name="post_expiration_settings[expiration_time_type]" id="wpuf-expiration_time_type">
439
  <?php
440
- foreach ( $timeType_array as $each_time_type=>$each_time_type_val ) {
441
  ?>
442
- <option value="<?php echo esc_attr( $each_time_type ); ?>" <?php echo $each_time_type == $time_type ? 'selected' : ''; ?>><?php echo esc_html( ucfirst( $each_time_type ) ); ?></option>
443
- <?php
444
- } ?>
 
445
  </select>
446
  </td>
447
 
@@ -457,8 +456,9 @@ class WPUF_Admin_Subscription {
457
  foreach ( $post_statuses as $post_status => $text ) {
458
  ?>
459
  <option value="<?php echo esc_attr( $post_status ); ?>" <?php echo ( $expired_post_status == $post_status ) ? 'selected' : ''; ?>><?php echo esc_html( $text ); ?></option>
460
- <?php
461
- } ?>
 
462
  </select>
463
  <p class="description"><?php esc_html_e( 'Status of post after post expiration time is over ', 'wp-user-frontend' ); ?></p>
464
  </td>
@@ -490,7 +490,8 @@ class WPUF_Admin_Subscription {
490
  /**
491
  * @since 2.7.0
492
  */
493
- do_action( 'wpuf_admin_subscription_post_restriction', $sub_meta, $post, $this ); ?>
 
494
  </tbody>
495
  </table>
496
  </section>
@@ -557,7 +558,8 @@ class WPUF_Admin_Subscription {
557
 
558
  if ( $recurring == 'yes' ) {
559
  continue;
560
- } ?>
 
561
  <option value="<?php echo esc_attr( $pack->ID ); ?>" <?php selected( $selected, $pack->ID ); ?>><?php echo esc_attr( $pack->post_title ); ?></option>
562
  <?php
563
  }
@@ -569,13 +571,13 @@ class WPUF_Admin_Subscription {
569
  * @param object $profileuser
570
  */
571
  public function profile_subscription_details( $profileuser ) {
572
- if ( !current_user_can( 'edit_users' ) ) {
573
  return;
574
  }
575
 
576
- $current_user = wpuf_get_user();
577
 
578
- if ( !$current_user->subscription()->current_pack_id() ) {
579
  // return;
580
  }
581
 
@@ -583,7 +585,8 @@ class WPUF_Admin_Subscription {
583
 
584
  $packs = WPUF_Subscription::init()->get_subscriptions();
585
  $user_sub = WPUF_Subscription::get_user_pack( $userdata->ID );
586
- $pack_id = isset( $user_sub['pack_id'] ) ? $user_sub['pack_id'] : ''; ?>
 
587
  <div class="wpuf-user-subscription" style="width: 640px;">
588
  <h3><?php esc_html_e( 'WPUF Subscription Information', 'wp-user-frontend' ); ?></h3>
589
 
@@ -597,12 +600,13 @@ class WPUF_Admin_Subscription {
597
  $recurring_pay = ( isset( $pack->meta_value['recurring_pay'] ) && $pack->meta_value['recurring_pay'] == 'yes' ) ? true : false;
598
 
599
  if ( $billing_amount && $recurring_pay ) {
600
- $recurring_des = sprintf( __( 'For each %s %s', 'wp-user-frontend' ), $pack->meta_value['billing_cycle_number'], $pack->meta_value['cycle_period'], $pack->meta_value['trial_duration_type'] );
601
- $recurring_des .= !empty( $pack->meta_value['billing_limit'] ) ? sprintf( __( ', for %s installments', 'wp-user-frontend' ), $pack->meta_value['billing_limit'] ) : '';
602
  $recurring_des = $recurring_des;
603
  } else {
604
  $recurring_des = '';
605
- } ?>
 
606
  <div class="wpuf-user-sub-info">
607
 
608
  <div class="wpuf-sub-summary">
@@ -642,18 +646,20 @@ class WPUF_Admin_Subscription {
642
 
643
  <table class="form-table">
644
 
645
- <?php foreach ( $user_sub['posts'] as $key => $value ) {
646
- $post_type_object = get_post_type_object( $key );
 
647
 
648
- if ( $post_type_object ) {
649
- ?>
650
  <tr>
651
  <th><label><?php echo esc_html( $post_type_object->labels->name ); ?></label></th>
652
  <td><input type="text" value="<?php echo esc_attr( $value ); ?>" name="<?php echo esc_attr( $key ); ?>" ></td>
653
  </tr>
654
  <?php
655
- }
656
- } ?>
 
657
  </table>
658
  </div>
659
 
@@ -663,8 +669,9 @@ class WPUF_Admin_Subscription {
663
  <table class="form-table">
664
  <?php
665
  if ( $user_sub['recurring'] != 'yes' ) {
666
- if ( !empty( $user_sub['expire'] ) ) {
667
- $expire = ( $user_sub['expire'] == 'unlimited' ) ? ucfirst( 'unlimited' ) : wpuf_get_date( wpuf_date2mysql( $user_sub['expire'] ) ); ?>
 
668
  <tr>
669
  <th><label><?php esc_html_e( 'Expire date:', 'wp-user-frontend' ); ?></label></th>
670
  <td><input type="text" class="wpuf-date-picker" name="expire" value="<?php echo esc_html( $expire ); ?>"></td>
@@ -673,10 +680,11 @@ class WPUF_Admin_Subscription {
673
  }
674
  }
675
 
676
- $is_post_exp_selected = isset( $user_sub['_enable_post_expiration'] ) ? 'checked' : '';
677
- $_post_expiration_time = explode( ' ', isset( $user_sub['_post_expiration_time'] ) ? $user_sub['_post_expiration_time'] : '' );
678
- $time_value = isset( $_post_expiration_time[0] ) && !empty( $_post_expiration_time[0] ) ? $_post_expiration_time[0] : '1';
679
- $time_type = isset( $_post_expiration_time[1] ) && !empty( $_post_expiration_time[1] ) ? $_post_expiration_time[1] : 'day'; ?>
 
680
  <tr>
681
  <th><label><?php esc_html_e( 'Post Expiration Enabled', 'wp-user-frontend' ); ?></label></th>
682
  <td><input type="checkbox" class="wpuf-post-exp-enabled" name="is_post_expiration_enabled" value="on" <?php echo esc_attr( $is_post_exp_selected ); ?>></td>
@@ -687,24 +695,27 @@ class WPUF_Admin_Subscription {
687
  'year' => 100,
688
  'month' => 12,
689
  'day' => 30,
690
- ]; ?>
 
691
  <th><?php esc_html_e( 'Post Expiration Time', 'wp-user-frontend' ); ?></th>
692
  <td>
693
  <select name="post_expiration_settings[expiration_time_value]" id="wpuf-expiration_time_value">
694
  <?php
695
- for ( $i = 1; $i <= $timeType_array[$time_type]; $i++ ) {
696
  ?>
697
  <option value="<?php echo esc_attr( $i ); ?>" <?php echo $i == $time_value ? 'selected' : ''; ?>><?php echo esc_attr( $i ); ?></option>
698
- <?php
699
- } ?>
 
700
  </select>
701
  <select name="post_expiration_settings[expiration_time_type]" id="wpuf-expiration_time_type">
702
  <?php
703
- foreach ( $timeType_array as $each_time_type=>$each_time_type_val ) {
704
  ?>
705
  <option value="<?php echo esc_attr( $each_time_type ); ?>" <?php echo $each_time_type == $time_type ? 'selected' : ''; ?>><?php echo esc_html( ucfirst( $each_time_type ) ); ?></option>
706
- <?php
707
- } ?>
 
708
  </select>
709
  </td>
710
  </tr>
@@ -718,55 +729,67 @@ class WPUF_Admin_Subscription {
718
  <tr>
719
  <?php
720
  $allowed_tax_id_arr = [];
721
- $allowed_tax_id_arr = get_post_meta( $pack_id, '_sub_allowed_term_ids', true );
722
 
723
- if ( !$allowed_tax_id_arr ) {
724
- $allowed_tax_id_arr = [];
725
- }
726
 
727
- $builtin_taxs = get_taxonomies( [
 
728
  '_builtin' => true,
729
- ], 'objects' );
 
730
 
731
- foreach ( $builtin_taxs as $builtin_tax ) {
732
- if ( is_taxonomy_hierarchical( $builtin_tax->name ) ) {
733
- $tax_terms = get_terms( [
 
734
  'taxonomy' => $builtin_tax->name,
735
  'hide_empty' => false,
736
- ] );
737
-
738
- foreach ( $tax_terms as $tax_term ) {
739
- if ( in_array( $tax_term->term_id, $allowed_tax_id_arr ) ) {
740
- ?> <td> <?php echo esc_html( $tax_term->name ); ?> </td> <?php
741
- }
742
- }
743
- }
744
- }
 
 
 
745
 
746
- $custom_taxs = get_taxonomies( ['_builtin'=>false], 'objects' );
747
 
748
- foreach ( $custom_taxs as $custom_tax ) {
749
- if ( is_taxonomy_hierarchical( $custom_tax->name ) ) {
750
- $tax_terms = get_terms( [
 
751
  'taxonomy' => $custom_tax->name,
752
  'hide_empty' => false,
753
- ] );
754
-
755
- foreach ( $tax_terms as $tax_term ) {
756
- if ( in_array( $tax_term->term_id, $allowed_tax_id_arr ) ) {
757
- ?> <td> <?php echo esc_html( $tax_term->name ); ?> </td> <?php
758
- }
759
- }
760
- }
761
- } ?>
 
 
 
 
762
  </tr>
763
  </table>
764
  </div>
765
  </div>
766
- <?php
767
- } ?>
 
768
 
769
- <?php if ( !isset( $user_sub['recurring'] ) || $user_sub['recurring'] != 'yes' ) { ?>
770
 
771
  <?php if ( empty( $user_sub ) ) { ?>
772
  <div class="wpuf-sub-actions">
@@ -781,7 +804,7 @@ class WPUF_Admin_Subscription {
781
  <td>
782
  <select name="pack_id" id="wpuf_sub_pack">
783
  <option value="-1"><?php esc_html_e( '&mdash; Select &mdash;', 'wp-user-frontend' ); ?></option>
784
- <?php $this->packdropdown_without_recurring( $packs, $pack_id ); //WPUF_Subscription::init()->packdropdown( $packs, $selected = '' );?>
785
  </select>
786
  <br>
787
  <span class="description"><?php esc_html_e( 'Only non-recurring pack can be assigned', 'wp-user-frontend' ); ?></span>
@@ -790,9 +813,10 @@ class WPUF_Admin_Subscription {
790
  </table>
791
  <?php } ?>
792
  <?php
793
- wp_nonce_field( 'update-profile_' . $userdata->ID, 'wpuf-subscription-nonce' );
794
- do_action( 'wpuf_admin_subscription_content', $userdata->ID ); ?>
795
- <?php if ( !empty( $user_sub ) ) { ?>
 
796
  <div class="wpuf-sub-actions">
797
  <a class="btn button-secondary wpuf-delete-pack-btn" href="javascript:" data-userid="<?php echo esc_attr( $userdata->ID ); ?>" data-packid="<?php echo isset( $user_sub['pack_id'] ) ? esc_attr( $user_sub['pack_id'] ) : ''; ?>"><?php esc_html_e( 'Delete Package', 'wp-user-frontend' ); ?></a>
798
  </div>
@@ -818,7 +842,7 @@ class WPUF_Admin_Subscription {
818
  $nonce = isset( $_REQUEST['wpuf_subscription_delete_nonce'] ) ? sanitize_key( wp_unslash( $_REQUEST['wpuf_subscription_delete_nonce'] ) ) : '';
819
 
820
  if ( isset( $nonce ) && ! wp_verify_nonce( $nonce, 'wpuf-subscription-delete-nonce' ) ) {
821
- return ;
822
  }
823
  $userid = isset( $_POST['userid'] ) ? intval( wp_unslash( $_POST['userid'] ) ) : 0;
824
 
@@ -843,7 +867,8 @@ class WPUF_Admin_Subscription {
843
 
844
  if ( 'edit-wpuf_subscription' != $screen->id ) {
845
  return;
846
- } ?>
 
847
  <div class="wpuf-footer-help">
848
  <span class="wpuf-footer-help-content">
849
  <span class="dashicons dashicons-editor-help"></span>
16
  * The constructor
17
  */
18
  public function __construct() {
19
+ add_filter( 'post_updated_messages', [ $this, 'form_updated_message' ] );
20
 
21
+ add_action( 'show_user_profile', [ $this, 'profile_subscription_details' ], 30 );
22
+ add_action( 'edit_user_profile', [ $this, 'profile_subscription_details' ], 30 );
23
+ add_action( 'personal_options_update', [ $this, 'profile_subscription_update' ] );
24
+ add_action( 'edit_user_profile_update', [ $this, 'profile_subscription_update' ] );
25
+ add_action( 'wp_ajax_wpuf_delete_user_package', [ $this, 'delete_user_package' ] );
26
 
27
+ add_filter( 'manage_wpuf_subscription_posts_columns', [ $this, 'subscription_columns_head' ] );
28
  add_action( 'manage_wpuf_subscription_posts_custom_column', [ $this, 'subscription_columns_content' ], 10, 2 );
29
 
30
  // display help link to docs
43
  * @return [type] [description]
44
  */
45
  public static function getInstance() {
46
+ if ( ! self::$_instance ) {
47
  self::$_instance = new self();
48
  }
49
 
54
  * Add settings metaboxes
55
  */
56
  public function add_meta_boxes() {
57
+ add_meta_box( 'wpuf-metabox-subscription', __( 'Pack Description', 'wp-user-frontend' ), [ $this, 'pack_description_metabox' ], 'wpuf_subscription', 'normal', 'high' );
58
  add_meta_box( 'wpuf_subs_metabox', 'Subscription Options', [ $this, 'subs_meta_box' ], 'wpuf_subscription' );
59
  }
60
 
91
  * @param int $user_id
92
  */
93
  public function profile_subscription_update( $user_id ) {
94
+ if ( ! is_admin() && ! current_user_can( 'edit_users' ) ) {
95
  return;
96
  }
97
  $nonce = isset( $_REQUEST['wpuf-subscription-nonce'] ) ? sanitize_key( wp_unslash( $_REQUEST['wpuf-subscription-nonce'] ) ) : '';
98
 
99
  if ( isset( $nonce ) && ! wp_verify_nonce( $nonce, 'update-profile_' . $user_id ) ) {
100
+ return;
101
  }
102
 
103
+ if ( ! isset( $_POST['pack_id'] ) ) {
104
  return;
105
  }
106
 
118
  //updating number of posts
119
 
120
  if ( isset( $user_pack['posts'] ) ) {
121
+ $p_type = isset( $_POST[ $post_type ] ) ? sanitize_text_field( wp_unslash( $_POST[ $post_type ] ) ) : '';
122
  foreach ( $user_pack['posts'] as $post_type => $post_num ) {
123
+ $user_pack['posts'][ $post_type ] = $p_type;
124
  }
125
  }
126
 
143
 
144
  if ( isset( $user_pack['recurring'] ) && $user_pack['recurring'] == 'yes' ) {
145
  foreach ( $user_pack['posts'] as $type => $value ) {
146
+ $user_pack['posts'][ $type ] = isset( $_POST[ $type ] ) ? sanitize_text_field( wp_unslash( $_POST[ $type ] ) ) : 0;
147
  }
148
  } else {
149
  foreach ( $user_pack['posts'] as $type => $value ) {
150
+ $user_pack['posts'][ $type ] = isset( $_POST[ $type ] ) ? sanitize_text_field( wp_unslash( $_POST[ $type ] ) ) : 0;
151
  }
152
  $user_pack['expire'] = isset( $_POST['expire'] ) ? wpuf_date2mysql( sanitize_text_field( wp_unslash( $_POST['expire'] ) ) ) : $user_pack['expire'];
153
  }
219
  public function subscription_columns_content( $column_name, $post_ID ) {
220
  switch ( $column_name ) {
221
  case 'amount':
 
222
  $amount = get_post_meta( $post_ID, '_billing_amount', true );
223
 
224
  if ( intval( $amount ) == 0 ) {
230
  break;
231
 
232
  case 'subscribers':
 
233
  $users = WPUF_Subscription::init()->subscription_pack_users( $post_ID );
234
 
235
  echo wp_kses_post( '<a href="' . admin_url( 'edit.php?post_type=wpuf_subscription&page=wpuf_subscribers&post_ID=' . $post_ID ) . '" />' . count( $users ) . '</a>' );
236
  break;
237
 
238
  case 'recurring':
 
239
  $recurring = get_post_meta( $post_ID, '_recurring_pay', true );
240
 
241
  if ( $recurring == 'yes' ) {
246
  break;
247
 
248
  case 'duration':
249
+ $recurring_pay = get_post_meta( $post_ID, '_recurring_pay', true );
250
+ $billing_cycle_number = get_post_meta( $post_ID, '_billing_cycle_number', true );
251
+ $cycle_period = get_post_meta( $post_ID, '_cycle_period', true );
 
252
 
253
  if ( $recurring_pay == 'yes' ) {
254
  echo esc_attr( $billing_cycle_number . ' ' . $cycle_period ) . '\'s (cycle)';
255
  } else {
256
+ $expiration_number = get_post_meta( $post_ID, '_expiration_number', true );
257
+ $expiration_period = get_post_meta( $post_ID, '_expiration_period', true );
258
  echo esc_attr( $expiration_number . ' ' . $expiration_period ) . '\'s';
259
  }
260
  break;
262
  }
263
 
264
  public function get_post_types( $post_types = null ) {
265
+ if ( ! $post_types ) {
266
  $post_types = WPUF_Subscription::init()->get_all_post_type();
267
  }
268
 
279
  <div><span class="description"><span><?php printf( 'How many %s the user can list with this pack? Enter <strong>-1</strong> for unlimited.', esc_html( $key ) ); ?></span></span></div>
280
  </td>
281
  </tr>
282
+ <?php
283
  }
284
  }
285
 
296
  public function pack_description_metabox( $pack_id = null ) {
297
  global $post;
298
 
299
+ wp_editor(
300
+ $post->post_content, 'post_content', [
301
+ 'editor_height' => 100,
302
+ 'quicktags' => false,
303
+ 'media_buttons' => false,
304
+ ]
305
+ );
306
  }
307
 
308
  /**
325
 
326
  $expired_post_status = isset( $sub_meta['_expired_post_status'] ) ? $sub_meta['_expired_post_status'] : '';
327
  $is_enable_mail_after_expired = isset( $sub_meta['_enable_mail_after_expired'] ) && $sub_meta['_enable_mail_after_expired'] == 'on' ? 'checked' : '';
328
+ $post_expiration_message = isset( $sub_meta['_post_expiration_message'] ) ? $sub_meta['_post_expiration_message'] : '';
329
+ ?>
330
 
331
  <div class="wpuf-subscription-pack-settings">
332
  <nav class="subscription-nav-tab">
383
  <table class="form-table">
384
  <tbody>
385
  <?php
386
+ echo wp_kses(
387
+ $this->get_post_types( $sub_meta['post_type_name'] ),
388
  [
389
  'div' => [],
390
  'tr' => [],
391
  'td' => [],
392
  'th' => [],
393
  'label' => [
394
+ 'for' => [],
395
  ],
396
  'input' => [
397
  'type' => [],
399
  'style' => [],
400
  'id' => [],
401
  'value' => [],
402
+ 'name' => [],
403
  ],
404
  'span' => [
405
+ 'class' => [],
406
  ],
407
+ 'strong' => [],
408
  ]
409
  );
410
  ?>
411
  <?php
412
+ // do_action( 'wpuf_admin_subscription_detail', $sub_meta, $hidden_recurring_class, $hidden_trial_class, $this );
413
  ?>
414
  <tr class="wpuf-metabox-post_expiration">
415
 
425
  <tr class="wpuf-metabox-post_expiration wpuf_subscription_expiration_field">
426
  <?php
427
  $timeType_array = [
428
+ 'year',
429
+ 'month',
430
+ 'day',
431
+ ];
432
+ ?>
433
  <th class="wpuf-post-exp-time"> <?php esc_html_e( 'Post Expiration Time', 'wp-user-frontend' ); ?> </th>
434
  <td class="wpuf-post-exp-time">
435
+ <input type="number" name="post_expiration_settings[expiration_time_value]" id="wpuf-expiration_time_value" value="<?php echo $time_value; ?>" id="wpuf-expiration_time_value" min="1">
 
 
 
 
 
 
 
436
  <select name="post_expiration_settings[expiration_time_type]" id="wpuf-expiration_time_type">
437
  <?php
438
+ foreach ( $timeType_array as $each_time_type ) {
439
  ?>
440
+ <option value="<?php echo esc_attr( $each_time_type ); ?>" <?php echo $each_time_type == $time_type ? 'selected' : ''; ?>><?php echo esc_html( ucfirst( $each_time_type ) . '(s)' ); ?></option>
441
+ <?php
442
+ }
443
+ ?>
444
  </select>
445
  </td>
446
 
456
  foreach ( $post_statuses as $post_status => $text ) {
457
  ?>
458
  <option value="<?php echo esc_attr( $post_status ); ?>" <?php echo ( $expired_post_status == $post_status ) ? 'selected' : ''; ?>><?php echo esc_html( $text ); ?></option>
459
+ <?php
460
+ }
461
+ ?>
462
  </select>
463
  <p class="description"><?php esc_html_e( 'Status of post after post expiration time is over ', 'wp-user-frontend' ); ?></p>
464
  </td>
490
  /**
491
  * @since 2.7.0
492
  */
493
+ do_action( 'wpuf_admin_subscription_post_restriction', $sub_meta, $post, $this );
494
+ ?>
495
  </tbody>
496
  </table>
497
  </section>
558
 
559
  if ( $recurring == 'yes' ) {
560
  continue;
561
+ }
562
+ ?>
563
  <option value="<?php echo esc_attr( $pack->ID ); ?>" <?php selected( $selected, $pack->ID ); ?>><?php echo esc_attr( $pack->post_title ); ?></option>
564
  <?php
565
  }
571
  * @param object $profileuser
572
  */
573
  public function profile_subscription_details( $profileuser ) {
574
+ if ( ! current_user_can( 'edit_users' ) ) {
575
  return;
576
  }
577
 
578
+ $current_user = wpuf_get_user();
579
 
580
+ if ( ! $current_user->subscription()->current_pack_id() ) {
581
  // return;
582
  }
583
 
585
 
586
  $packs = WPUF_Subscription::init()->get_subscriptions();
587
  $user_sub = WPUF_Subscription::get_user_pack( $userdata->ID );
588
+ $pack_id = isset( $user_sub['pack_id'] ) ? $user_sub['pack_id'] : '';
589
+ ?>
590
  <div class="wpuf-user-subscription" style="width: 640px;">
591
  <h3><?php esc_html_e( 'WPUF Subscription Information', 'wp-user-frontend' ); ?></h3>
592
 
600
  $recurring_pay = ( isset( $pack->meta_value['recurring_pay'] ) && $pack->meta_value['recurring_pay'] == 'yes' ) ? true : false;
601
 
602
  if ( $billing_amount && $recurring_pay ) {
603
+ $recurring_des = sprintf( __( 'For each %1$s %2$s', 'wp-user-frontend' ), $pack->meta_value['billing_cycle_number'], $pack->meta_value['cycle_period'], $pack->meta_value['trial_duration_type'] );
604
+ $recurring_des .= ! empty( $pack->meta_value['billing_limit'] ) ? sprintf( __( ', for %s installments', 'wp-user-frontend' ), $pack->meta_value['billing_limit'] ) : '';
605
  $recurring_des = $recurring_des;
606
  } else {
607
  $recurring_des = '';
608
+ }
609
+ ?>
610
  <div class="wpuf-user-sub-info">
611
 
612
  <div class="wpuf-sub-summary">
646
 
647
  <table class="form-table">
648
 
649
+ <?php
650
+ foreach ( $user_sub['posts'] as $key => $value ) {
651
+ $post_type_object = get_post_type_object( $key );
652
 
653
+ if ( $post_type_object ) {
654
+ ?>
655
  <tr>
656
  <th><label><?php echo esc_html( $post_type_object->labels->name ); ?></label></th>
657
  <td><input type="text" value="<?php echo esc_attr( $value ); ?>" name="<?php echo esc_attr( $key ); ?>" ></td>
658
  </tr>
659
  <?php
660
+ }
661
+ }
662
+ ?>
663
  </table>
664
  </div>
665
 
669
  <table class="form-table">
670
  <?php
671
  if ( $user_sub['recurring'] != 'yes' ) {
672
+ if ( ! empty( $user_sub['expire'] ) ) {
673
+ $expire = ( $user_sub['expire'] == 'unlimited' ) ? ucfirst( 'unlimited' ) : wpuf_get_date( wpuf_date2mysql( $user_sub['expire'] ) );
674
+ ?>
675
  <tr>
676
  <th><label><?php esc_html_e( 'Expire date:', 'wp-user-frontend' ); ?></label></th>
677
  <td><input type="text" class="wpuf-date-picker" name="expire" value="<?php echo esc_html( $expire ); ?>"></td>
680
  }
681
  }
682
 
683
+ $is_post_exp_selected = isset( $user_sub['_enable_post_expiration'] ) ? 'checked' : '';
684
+ $_post_expiration_time = explode( ' ', isset( $user_sub['_post_expiration_time'] ) ? $user_sub['_post_expiration_time'] : '' );
685
+ $time_value = isset( $_post_expiration_time[0] ) && ! empty( $_post_expiration_time[0] ) ? $_post_expiration_time[0] : '1';
686
+ $time_type = isset( $_post_expiration_time[1] ) && ! empty( $_post_expiration_time[1] ) ? $_post_expiration_time[1] : 'day';
687
+ ?>
688
  <tr>
689
  <th><label><?php esc_html_e( 'Post Expiration Enabled', 'wp-user-frontend' ); ?></label></th>
690
  <td><input type="checkbox" class="wpuf-post-exp-enabled" name="is_post_expiration_enabled" value="on" <?php echo esc_attr( $is_post_exp_selected ); ?>></td>
695
  'year' => 100,
696
  'month' => 12,
697
  'day' => 30,
698
+ ];
699
+ ?>
700
  <th><?php esc_html_e( 'Post Expiration Time', 'wp-user-frontend' ); ?></th>
701
  <td>
702
  <select name="post_expiration_settings[expiration_time_value]" id="wpuf-expiration_time_value">
703
  <?php
704
+ for ( $i = 1; $i <= $timeType_array[ $time_type ]; $i++ ) {
705
  ?>
706
  <option value="<?php echo esc_attr( $i ); ?>" <?php echo $i == $time_value ? 'selected' : ''; ?>><?php echo esc_attr( $i ); ?></option>
707
+ <?php
708
+ }
709
+ ?>
710
  </select>
711
  <select name="post_expiration_settings[expiration_time_type]" id="wpuf-expiration_time_type">
712
  <?php
713
+ foreach ( $timeType_array as $each_time_type => $each_time_type_val ) {
714
  ?>
715
  <option value="<?php echo esc_attr( $each_time_type ); ?>" <?php echo $each_time_type == $time_type ? 'selected' : ''; ?>><?php echo esc_html( ucfirst( $each_time_type ) ); ?></option>
716
+ <?php
717
+ }
718
+ ?>
719
  </select>
720
  </td>
721
  </tr>
729
  <tr>
730
  <?php
731
  $allowed_tax_id_arr = [];
732
+ $allowed_tax_id_arr = get_post_meta( $pack_id, '_sub_allowed_term_ids', true );
733
 
734
+ if ( ! $allowed_tax_id_arr ) {
735
+ $allowed_tax_id_arr = [];
736
+ }
737
 
738
+ $builtin_taxs = get_taxonomies(
739
+ [
740
  '_builtin' => true,
741
+ ], 'objects'
742
+ );
743
 
744
+ foreach ( $builtin_taxs as $builtin_tax ) {
745
+ if ( is_taxonomy_hierarchical( $builtin_tax->name ) ) {
746
+ $tax_terms = get_terms(
747
+ [
748
  'taxonomy' => $builtin_tax->name,
749
  'hide_empty' => false,
750
+ ]
751
+ );
752
+
753
+ foreach ( $tax_terms as $tax_term ) {
754
+ if ( in_array( $tax_term->term_id, $allowed_tax_id_arr ) ) {
755
+ ?>
756
+ <td> <?php echo esc_html( $tax_term->name ); ?> </td>
757
+ <?php
758
+ }
759
+ }
760
+ }
761
+ }
762
 
763
+ $custom_taxs = get_taxonomies( [ '_builtin' => false ], 'objects' );
764
 
765
+ foreach ( $custom_taxs as $custom_tax ) {
766
+ if ( is_taxonomy_hierarchical( $custom_tax->name ) ) {
767
+ $tax_terms = get_terms(
768
+ [
769
  'taxonomy' => $custom_tax->name,
770
  'hide_empty' => false,
771
+ ]
772
+ );
773
+
774
+ foreach ( $tax_terms as $tax_term ) {
775
+ if ( in_array( $tax_term->term_id, $allowed_tax_id_arr ) ) {
776
+ ?>
777
+ <td> <?php echo esc_html( $tax_term->name ); ?> </td>
778
+ <?php
779
+ }
780
+ }
781
+ }
782
+ }
783
+ ?>
784
  </tr>
785
  </table>
786
  </div>
787
  </div>
788
+ <?php
789
+ }
790
+ ?>
791
 
792
+ <?php if ( ! isset( $user_sub['recurring'] ) || $user_sub['recurring'] != 'yes' ) { ?>
793
 
794
  <?php if ( empty( $user_sub ) ) { ?>
795
  <div class="wpuf-sub-actions">
804
  <td>
805
  <select name="pack_id" id="wpuf_sub_pack">
806
  <option value="-1"><?php esc_html_e( '&mdash; Select &mdash;', 'wp-user-frontend' ); ?></option>
807
+ <?php $this->packdropdown_without_recurring( $packs, $pack_id ); //WPUF_Subscription::init()->packdropdown( $packs, $selected = '' ); ?>
808
  </select>
809
  <br>
810
  <span class="description"><?php esc_html_e( 'Only non-recurring pack can be assigned', 'wp-user-frontend' ); ?></span>
813
  </table>
814
  <?php } ?>
815
  <?php
816
+ wp_nonce_field( 'update-profile_' . $userdata->ID, 'wpuf-subscription-nonce' );
817
+ do_action( 'wpuf_admin_subscription_content', $userdata->ID );
818
+ ?>
819
+ <?php if ( ! empty( $user_sub ) ) { ?>
820
  <div class="wpuf-sub-actions">
821
  <a class="btn button-secondary wpuf-delete-pack-btn" href="javascript:" data-userid="<?php echo esc_attr( $userdata->ID ); ?>" data-packid="<?php echo isset( $user_sub['pack_id'] ) ? esc_attr( $user_sub['pack_id'] ) : ''; ?>"><?php esc_html_e( 'Delete Package', 'wp-user-frontend' ); ?></a>
822
  </div>
842
  $nonce = isset( $_REQUEST['wpuf_subscription_delete_nonce'] ) ? sanitize_key( wp_unslash( $_REQUEST['wpuf_subscription_delete_nonce'] ) ) : '';
843
 
844
  if ( isset( $nonce ) && ! wp_verify_nonce( $nonce, 'wpuf-subscription-delete-nonce' ) ) {
845
+ return;
846
  }
847
  $userid = isset( $_POST['userid'] ) ? intval( wp_unslash( $_POST['userid'] ) ) : 0;
848
 
867
 
868
  if ( 'edit-wpuf_subscription' != $screen->id ) {
869
  return;
870
+ }
871
+ ?>
872
  <div class="wpuf-footer-help">
873
  <span class="wpuf-footer-help-content">
874
  <span class="dashicons dashicons-editor-help"></span>
admin/form-builder/assets/js/form-builder.js CHANGED
@@ -151,8 +151,8 @@
151
  var el = $('#form-preview-stage .wpuf-form .field-items').eq(payload.toIndex);
152
  if ('yes' == payload.field.is_meta && state.show_custom_field_tooltip) {
153
 
154
- var image_one = wpuf_assets_url + '/images/custom-fields/settings.png';
155
- var image_two = wpuf_assets_url + '/images/custom-fields/advance.png';
156
  var html = '<div class="wpuf-custom-field-instruction">';
157
  html += '<div class="step-one">';
158
  html += sprintf( '<p style="font-weight: 400">%s<strong><code>%s</code></strong>%s"</p>', __( 'Navigate through', 'wp-user-frontend' ), __( 'WP-admin > WPUF > Settings > Frontend Posting', 'wp-user-frontend' ), __( '- there you have to check the checkbox: "Show custom field data in the post content area', 'wp-user-frontend' ) );
@@ -177,7 +177,7 @@
177
  if (result) {
178
  state.show_custom_field_tooltip = false;
179
  } else {
180
-
181
  }
182
  } );
183
  }
@@ -672,10 +672,9 @@
672
  if ( $(this).is(':checked') ) {
673
  table.find('tr.show-if-payment').show();
674
  table.find('tr.show-if-force-pack').hide();
675
-
676
  } else {
677
  table.find('tr.show-if-payment').hide();
678
-
679
  }
680
  },
681
 
151
  var el = $('#form-preview-stage .wpuf-form .field-items').eq(payload.toIndex);
152
  if ('yes' == payload.field.is_meta && state.show_custom_field_tooltip) {
153
 
154
+ var image_one = wpuf_assets_url.url + '/images/custom-fields/settings.png';
155
+ var image_two = wpuf_assets_url.url + '/images/custom-fields/advance.png';
156
  var html = '<div class="wpuf-custom-field-instruction">';
157
  html += '<div class="step-one">';
158
  html += sprintf( '<p style="font-weight: 400">%s<strong><code>%s</code></strong>%s"</p>', __( 'Navigate through', 'wp-user-frontend' ), __( 'WP-admin > WPUF > Settings > Frontend Posting', 'wp-user-frontend' ), __( '- there you have to check the checkbox: "Show custom field data in the post content area', 'wp-user-frontend' ) );
177
  if (result) {
178
  state.show_custom_field_tooltip = false;
179
  } else {
180
+
181
  }
182
  } );
183
  }
672
  if ( $(this).is(':checked') ) {
673
  table.find('tr.show-if-payment').show();
674
  table.find('tr.show-if-force-pack').hide();
 
675
  } else {
676
  table.find('tr.show-if-payment').hide();
677
+ table.find('input[type=checkbox]').removeAttr('checked');
678
  }
679
  },
680
 
admin/form-builder/assets/js/mixins/add-form-field.js CHANGED
@@ -1,9 +1,16 @@
1
  wpuf_mixins.add_form_field = {
2
  methods: {
3
  add_form_field: function (field_template) {
4
- var payload = {
5
- toIndex: this.$store.state.index_to_insert === 0 ? this.$store.state.form_fields.length : this.$store.state.index_to_insert,
6
- };
 
 
 
 
 
 
 
7
 
8
  this.$store.state.index_to_insert = 0;
9
 
1
  wpuf_mixins.add_form_field = {
2
  methods: {
3
  add_form_field: function (field_template) {
4
+ var payload = {};
5
+ var event_type = event.type;
6
+
7
+ if( 'click' === event_type ){
8
+ payload.toIndex = this.$store.state.index_to_insert === 0 ? this.$store.state.form_fields.length : this.$store.state.index_to_insert;
9
+ }
10
+
11
+ if ( 'mouseup' === event_type ){
12
+ payload.toIndex = this.$store.state.index_to_insert === 0 ? 0 : this.$store.state.index_to_insert;
13
+ }
14
 
15
  this.$store.state.index_to_insert = 0;
16
 
admin/html/form-settings-payment.php CHANGED
@@ -10,6 +10,7 @@ $force_pack_purchase = isset( $form_settings['force_pack_purchase'] ) ? $form_
10
  $pay_per_post_cost = isset( $form_settings['pay_per_post_cost'] ) ? $form_settings['pay_per_post_cost'] : 2;
11
  $fallback_ppp_enable = isset( $form_settings['fallback_ppp_enable'] ) ? $form_settings['fallback_ppp_enable'] : 'false';
12
  $fallback_ppp_cost = isset( $form_settings['fallback_ppp_cost'] ) ? $form_settings['fallback_ppp_cost'] : 1;
 
13
 
14
  ?>
15
  <table class="form-table">
@@ -83,5 +84,22 @@ $fallback_ppp_cost = isset( $form_settings['fallback_ppp_cost'] ) ? $form_se
83
  <p class="description"><?php esc_html_e( 'Amount to be charged per post', 'wp-user-frontend' ); ?></p>
84
  </td>
85
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
86
  <?php do_action( 'wpuf_form_setting_payment', $form_settings, $post ); ?>
87
  </table>
10
  $pay_per_post_cost = isset( $form_settings['pay_per_post_cost'] ) ? $form_settings['pay_per_post_cost'] : 2;
11
  $fallback_ppp_enable = isset( $form_settings['fallback_ppp_enable'] ) ? $form_settings['fallback_ppp_enable'] : 'false';
12
  $fallback_ppp_cost = isset( $form_settings['fallback_ppp_cost'] ) ? $form_settings['fallback_ppp_cost'] : 1;
13
+ $ppp_success_page = isset( $form_settings['ppp_payment_success_page'] ) ? $form_settings['ppp_payment_success_page'] : '';
14
 
15
  ?>
16
  <table class="form-table">
84
  <p class="description"><?php esc_html_e( 'Amount to be charged per post', 'wp-user-frontend' ); ?></p>
85
  </td>
86
  </tr>
87
+ <tr class="show-if-payment show-if-pay-per-post">
88
+ <th>&mdash; &mdash; <?php esc_html_e( 'Payment Success Page', 'wp-user-frontend' ); ?></th>
89
+ <td>
90
+ <label>
91
+ <select name="wpuf_settings[ppp_payment_success_page]" >
92
+ <?php
93
+ foreach ( wpuf_get_pages() as $page_id => $page_name ) {
94
+ ?>
95
+ <option value="<?php echo $page_id; ?>" <?php echo $page_id === (int) $ppp_success_page ? 'selected' : ''; ?> ><?php echo $page_name; ?></option>
96
+ <?php
97
+ }
98
+ ?>
99
+ </select>
100
+ </label>
101
+ <p class="description"><?php esc_html_e( 'Page will show after successful payment', 'wp-user-frontend' ); ?></p>
102
+ </td>
103
+ </tr>
104
  <?php do_action( 'wpuf_form_setting_payment', $form_settings, $post ); ?>
105
  </table>
admin/html/form-settings-post.php CHANGED
@@ -4,7 +4,7 @@ global $post;
4
  $form_settings = wpuf_get_form_settings( $post->ID );
5
 
6
  $post_status_selected = isset( $form_settings['post_status'] ) ? $form_settings['post_status'] : 'publish';
7
- $restrict_message = __( 'This page is restricted. Please Log in / Register to view this page.', 'wp-user-frontend' );
8
 
9
  $post_type_selected = isset( $form_settings['post_type'] ) ? $form_settings['post_type'] : 'post';
10
 
4
  $form_settings = wpuf_get_form_settings( $post->ID );
5
 
6
  $post_status_selected = isset( $form_settings['post_status'] ) ? $form_settings['post_status'] : 'publish';
7
+ $restrict_message = __( 'This page is restricted. Please %login% / %register% to view this page.', 'wp-user-frontend' );
8
 
9
  $post_type_selected = isset( $form_settings['post_type'] ) ? $form_settings['post_type'] : 'post';
10
 
admin/html/form-submission-restriction.php CHANGED
@@ -3,24 +3,24 @@ global $post;
3
 
4
  $form_settings = wpuf_get_form_settings( $post->ID );
5
 
6
- $guest_post = !empty( $form_settings['guest_post'] ) ? $form_settings['guest_post'] : 'false';
7
- $role_base = !empty( $form_settings['role_base'] ) ? $form_settings['role_base'] : 'false';
8
- $roles = !empty( $form_settings['roles'] ) ? $form_settings['roles'] : [ 'administrator' ];
9
- $guest_details = !empty( $form_settings['guest_details'] ) ? $form_settings['guest_details'] : 'true';
10
- $guest_email_verify = !empty( $form_settings['guest_email_verify'] ) ? $form_settings['guest_email_verify'] : 'false';
11
- $name_label = !empty( $form_settings['name_label'] ) ? $form_settings['name_label'] : __( 'Name', 'wp-user-frontend' );
12
- $email_label = !empty( $form_settings['email_label'] ) ? $form_settings['email_label'] : __( 'Email', 'wp-user-frontend' );
13
- $message_restrict = !empty( $form_settings['message_restrict'] ) ? $form_settings['message_restrict'] : $restrict_message;
14
-
15
- $schedule_form = !empty( $form_settings['schedule_form'] ) ? $form_settings['schedule_form'] : 'false';
16
- $schedule_start = !empty( $form_settings['schedule_start'] ) ? $form_settings['schedule_start'] : '';
17
- $schedule_end = !empty( $form_settings['schedule_end'] ) ? $form_settings['schedule_end'] : '';
18
- $form_pending_message = !empty( $form_settings['form_pending_message'] ) ? $form_settings['form_pending_message'] : 'Form submission not started.';
19
- $form_expired_message = !empty( $form_settings['form_expired_message'] ) ? $form_settings['form_expired_message'] : 'Submission date expired.';
20
-
21
- $limit_entries = !empty( $form_settings['limit_entries'] ) ? $form_settings['limit_entries'] : 'false';
22
- $limit_number = !empty( $form_settings['limit_number'] ) ? $form_settings['limit_number'] : 100;
23
- $limit_message = !empty( $form_settings['limit_message'] ) ? $form_settings['limit_message'] : 'Form submission limit exceeded';
24
  ?>
25
  <table class="form-table">
26
 
@@ -96,12 +96,15 @@ $limit_message = !empty( $form_settings['limit_message'] ) ? $form_settings['l
96
  <th>&mdash; &mdash; <?php esc_html_e( 'Roles', 'wp-user-frontend' ); ?></th>
97
  <td>
98
  <?php
99
- foreach ( wpuf_get_user_roles() as $key => $role ) { ?>
 
100
  <label>
101
  <input type="checkbox" name="wpuf_settings[roles][]" value="<?php echo esc_attr( $key ); ?>"
102
- <?php echo in_array( $key, $roles ) || 'administrator' == $key ? 'checked="checked"' : '';
 
103
  echo 'administrator' == $key ? 'disabled' : '';
104
- ?> />
 
105
  <?php echo esc_html( $role ); ?>
106
  </label><br>
107
  <?php } ?>
@@ -113,8 +116,8 @@ $limit_message = !empty( $form_settings['limit_message'] ) ? $form_settings['l
113
  <tr class="show-if-not-guest">
114
  <th>&mdash; <?php esc_html_e( 'Unauthorized Message', 'wp-user-frontend' ); ?></th>
115
  <td>
116
- <textarea rows="3" cols="40" name="wpuf_settings[message_restrict]"><?php echo esc_textarea( $message_restrict ); ?></textarea>
117
- <p class="description"><?php esc_html_e( 'Not logged in users will see this message', 'wp-user-frontend' ); ?></p>
118
  </td>
119
  </tr>
120
 
3
 
4
  $form_settings = wpuf_get_form_settings( $post->ID );
5
 
6
+ $guest_post = ! empty( $form_settings['guest_post'] ) ? $form_settings['guest_post'] : 'false';
7
+ $role_base = ! empty( $form_settings['role_base'] ) ? $form_settings['role_base'] : 'false';
8
+ $roles = ! empty( $form_settings['roles'] ) ? $form_settings['roles'] : [ 'administrator' ];
9
+ $guest_details = ! empty( $form_settings['guest_details'] ) ? $form_settings['guest_details'] : 'true';
10
+ $guest_email_verify = ! empty( $form_settings['guest_email_verify'] ) ? $form_settings['guest_email_verify'] : 'false';
11
+ $name_label = ! empty( $form_settings['name_label'] ) ? $form_settings['name_label'] : __( 'Name', 'wp-user-frontend' );
12
+ $email_label = ! empty( $form_settings['email_label'] ) ? $form_settings['email_label'] : __( 'Email', 'wp-user-frontend' );
13
+ $message_restrict = ! empty( $form_settings['message_restrict'] ) ? $form_settings['message_restrict'] : $restrict_message;
14
+
15
+ $schedule_form = ! empty( $form_settings['schedule_form'] ) ? $form_settings['schedule_form'] : 'false';
16
+ $schedule_start = ! empty( $form_settings['schedule_start'] ) ? $form_settings['schedule_start'] : '';
17
+ $schedule_end = ! empty( $form_settings['schedule_end'] ) ? $form_settings['schedule_end'] : '';
18
+ $form_pending_message = ! empty( $form_settings['form_pending_message'] ) ? $form_settings['form_pending_message'] : 'Form submission not started.';
19
+ $form_expired_message = ! empty( $form_settings['form_expired_message'] ) ? $form_settings['form_expired_message'] : 'Submission date expired.';
20
+
21
+ $limit_entries = ! empty( $form_settings['limit_entries'] ) ? $form_settings['limit_entries'] : 'false';
22
+ $limit_number = ! empty( $form_settings['limit_number'] ) ? $form_settings['limit_number'] : 100;
23
+ $limit_message = ! empty( $form_settings['limit_message'] ) ? $form_settings['limit_message'] : 'Form submission limit exceeded';
24
  ?>
25
  <table class="form-table">
26
 
96
  <th>&mdash; &mdash; <?php esc_html_e( 'Roles', 'wp-user-frontend' ); ?></th>
97
  <td>
98
  <?php
99
+ foreach ( wpuf_get_user_roles() as $key => $role ) {
100
+ ?>
101
  <label>
102
  <input type="checkbox" name="wpuf_settings[roles][]" value="<?php echo esc_attr( $key ); ?>"
103
+ <?php
104
+ echo in_array( $key, $roles ) || 'administrator' == $key ? 'checked="checked"' : '';
105
  echo 'administrator' == $key ? 'disabled' : '';
106
+ ?>
107
+ />
108
  <?php echo esc_html( $role ); ?>
109
  </label><br>
110
  <?php } ?>
116
  <tr class="show-if-not-guest">
117
  <th>&mdash; <?php esc_html_e( 'Unauthorized Message', 'wp-user-frontend' ); ?></th>
118
  <td>
119
+ <textarea rows="6" cols="45" name="wpuf_settings[message_restrict]"><?php echo esc_textarea( $message_restrict ); ?></textarea>
120
+ <p class="description"><?php esc_html_e( 'Not logged in users will see this message. You may use %login%, %register% for link', 'wp-user-frontend' ); ?></p>
121
  </td>
122
  </tr>
123
 
admin/html/whats-new.php CHANGED
@@ -1,5 +1,68 @@
1
  <?php
2
  $changelog = [
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  [
4
  'version' => 'Version 3.5.18',
5
  'released' => '2021-07-06',
1
  <?php
2
  $changelog = [
3
+ [
4
+ 'version' => 'Version 3.5.20',
5
+ 'released' => '2021-09-16',
6
+ 'changes' => [
7
+
8
+ [
9
+ 'title' => __( 'Content restriction for minimum, maximum value enhanced', 'wp-user-frontend' ),
10
+ 'type' => 'Enhancement',
11
+ ],
12
+ [
13
+ 'title' => __( 'New option for redirection after pay per post payment in form setting', 'wp-user-frontend' ),
14
+ 'type' => 'Enhancement',
15
+ ],
16
+ [
17
+ 'title' => __( 'Controller added for various email notification', 'wp-user-frontend' ),
18
+ 'type' => 'Enhancement',
19
+ ],
20
+ [
21
+ 'title' => __( 'Placeholder added for unauth message option', 'wp-user-frontend' ),
22
+ 'type' => 'Enhancement',
23
+ ],
24
+ [
25
+ 'title' => __( 'Subscription Post expiration option change to input field', 'wp-user-frontend' ),
26
+ 'type' => 'Update',
27
+ ],
28
+ [
29
+ 'title' => __( 'Content restriction message translatable', 'wp-user-frontend' ),
30
+ 'type' => 'Fix',
31
+ ],
32
+ [
33
+ 'title' => __( 'ACF integration inconsistency handled', 'wp-user-frontend' ),
34
+ 'type' => 'Fix',
35
+ ],
36
+ [
37
+ 'title' => __( 'Enable payment checkbox handled for child option', 'wp-user-frontend' ),
38
+ 'type' => 'Fix',
39
+ ],
40
+ [
41
+ 'title' => __( 'Broken asset link handled for custom field popup', 'wp-user-frontend' ),
42
+ 'type' => 'Fix',
43
+ ],
44
+ [
45
+ 'title' => __( 'Rollback inconsistency for CPT handled', 'wp-user-frontend' ),
46
+ 'type' => 'Fix',
47
+ ],
48
+ [
49
+ 'title' => __( 'Login form loaded after resetting password', 'wp-user-frontend' ),
50
+ 'type' => 'Fix',
51
+ ],
52
+ [
53
+ 'title' => __( 'Billing address inconsistency handled', 'wp-user-frontend' ),
54
+ 'type' => 'Fix',
55
+ ],
56
+ [
57
+ 'title' => __( 'Form duplication on creation handled', 'wp-user-frontend' ),
58
+ 'type' => 'Fix',
59
+ ],
60
+ [
61
+ 'title' => __( 'Field Dragging inconsistency fixed', 'wp-user-frontend' ),
62
+ 'type' => 'Fix',
63
+ ],
64
+ ],
65
+ ],
66
  [
67
  'version' => 'Version 3.5.18',
68
  'released' => '2021-07-06',
admin/settings-options.php CHANGED
@@ -501,6 +501,14 @@ function wpuf_settings_fields() {
501
  'type' => 'html',
502
  'class' => 'guest-email-setting',
503
  ],
 
 
 
 
 
 
 
 
504
  [
505
  'name' => 'guest_email_subject',
506
  'label' => __( 'Guest mail subject', 'wp-user-frontend' ),
501
  'type' => 'html',
502
  'class' => 'guest-email-setting',
503
  ],
504
+ [
505
+ 'name' => 'enable_guest_email_notification',
506
+ 'class' => 'guest-email-setting-option',
507
+ 'label' => __( 'Guest Email Notification', 'wp-user-frontend' ),
508
+ 'desc' => __( 'Enable Guest Email Notification .', 'wp-user-frontend' ),
509
+ 'default' => 'on',
510
+ 'type' => 'checkbox',
511
+ ],
512
  [
513
  'name' => 'guest_email_subject',
514
  'label' => __( 'Guest mail subject', 'wp-user-frontend' ),
assets/js/billing-address.js CHANGED
@@ -72,7 +72,11 @@ jQuery(function($){
72
  });
73
  });
74
 
75
- $(document.body).on('change', 'select#wpuf_biiling_state', function () {
 
 
 
 
76
  wpuf_calculate_tax();
77
  });
78
 
72
  });
73
  });
74
 
75
+ $(document).ready( function () {
76
+ wpuf_calculate_tax();
77
+ });
78
+
79
+ $(document.body).on('change', 'form#wpuf-ajax-address-form', function () {
80
  wpuf_calculate_tax();
81
  });
82
 
assets/js/frontend-form.js CHANGED
@@ -719,6 +719,9 @@
719
  case 'validation' :
720
  error_string = error_string + ' ' + error_str_obj[error_type];
721
  break
 
 
 
722
  }
723
  $(item).siblings('.wpuf-error-msg').remove();
724
  $(item).after('<div class="wpuf-error-msg">'+ error_string +'</div>')
@@ -850,22 +853,22 @@
850
 
851
  editorLimit: {
852
 
853
- bind: function(limit, field, type, limit_type) {
854
  if ( type === 'no' ) {
855
  // it's a textarea
856
  $('textarea#' + field).keydown( function(event) {
857
- WP_User_Frontend.editorLimit.textLimit.call(this, event, limit, limit_type);
858
  });
859
 
860
  $('input#' + field).keydown( function(event) {
861
- WP_User_Frontend.editorLimit.textLimit.call(this, event, limit, limit_type);
862
  });
863
 
864
  $('textarea#' + field).on('paste', function(event) {
865
  var self = $(this);
866
 
867
  setTimeout(function() {
868
- WP_User_Frontend.editorLimit.textLimit.call(self, event, limit, limit_type);
869
  }, 100);
870
  });
871
 
@@ -873,7 +876,7 @@
873
  var self = $(this);
874
 
875
  setTimeout(function() {
876
- WP_User_Frontend.editorLimit.textLimit.call(self, event, limit, limit_type);
877
  }, 100);
878
  });
879
 
@@ -881,12 +884,12 @@
881
  // it's a rich textarea
882
  setTimeout(function () {
883
  tinyMCE.get(field).onKeyDown.add(function(ed, event) {
884
- WP_User_Frontend.editorLimit.tinymce.onKeyDown(ed, event, limit, limit_type);
885
  } );
886
 
887
  tinyMCE.get(field).onPaste.add(function(ed, event) {
888
  setTimeout(function() {
889
- WP_User_Frontend.editorLimit.tinymce.onPaste(ed, event, limit, limit_type);
890
  }, 100);
891
  });
892
 
@@ -905,20 +908,26 @@
905
  };
906
  },
907
 
908
- onKeyDown: function(ed, event, limit, limit_type) {
 
909
 
910
  var numWords = WP_User_Frontend.editorLimit.tinymce.getStats(ed).chars + 1,
911
  limit_label = ( 'word' === limit_type ) ? 'Word Limit : ' : 'Character Limit : ';
912
 
913
  if ( 'word' === limit_type ) {
914
- numWords = WP_User_Frontend.editorLimit.tinymce.getStats(ed).words - 1;
915
  }
916
 
917
- limit ? $('.mce-path-item.mce-last', ed.container).html( limit_label + numWords +'/'+limit):'';
918
-
919
- if ( limit && numWords > limit ) {
920
  WP_User_Frontend.editorLimit.blockTyping(event);
921
- jQuery('.mce-path-item.mce-last', ed.container).html( WP_User_Frontend.content_limit_message( limit_type ) );
 
 
 
 
 
 
 
922
  }
923
  },
924
 
@@ -933,7 +942,7 @@
933
  }
934
  },
935
 
936
- textLimit: function(event, limit, limit_type) {
937
  var self = $(this),
938
  content_length = self.val().length + 1;
939
 
@@ -941,10 +950,13 @@
941
  content_length = self.val().split(' ').length;
942
  }
943
 
944
- if ( limit && content_length > limit ) {
945
- self.closest('.wpuf-fields').find('span.wpuf-wordlimit-message').html( WP_User_Frontend.content_limit_message( limit_type ) );
946
  WP_User_Frontend.editorLimit.blockTyping(event);
947
- } else {
 
 
 
948
  self.closest('.wpuf-fields').find('span.wpuf-wordlimit-message').html('');
949
  }
950
 
@@ -990,8 +1002,18 @@
990
  el.checked = false;
991
  },
992
 
993
- content_limit_message: function( content_limit_type ) {
994
- return ( 'word' === content_limit_type ) ? 'Word limit reached.' : 'Character limit reached.';
 
 
 
 
 
 
 
 
 
 
995
  }
996
  };
997
 
719
  case 'validation' :
720
  error_string = error_string + ' ' + error_str_obj[error_type];
721
  break
722
+ case 'limit':
723
+ error_string = '';
724
+ break
725
  }
726
  $(item).siblings('.wpuf-error-msg').remove();
727
  $(item).after('<div class="wpuf-error-msg">'+ error_string +'</div>')
853
 
854
  editorLimit: {
855
 
856
+ bind: function(limit, field, type, limit_type, limit_to ) {
857
  if ( type === 'no' ) {
858
  // it's a textarea
859
  $('textarea#' + field).keydown( function(event) {
860
+ WP_User_Frontend.editorLimit.textLimit.call(this, event, limit, limit_type, limit_to );
861
  });
862
 
863
  $('input#' + field).keydown( function(event) {
864
+ WP_User_Frontend.editorLimit.textLimit.call(this, event, limit, limit_type, limit_to );
865
  });
866
 
867
  $('textarea#' + field).on('paste', function(event) {
868
  var self = $(this);
869
 
870
  setTimeout(function() {
871
+ WP_User_Frontend.editorLimit.textLimit.call(self, event, limit, limit_type, limit_to );
872
  }, 100);
873
  });
874
 
876
  var self = $(this);
877
 
878
  setTimeout(function() {
879
+ WP_User_Frontend.editorLimit.textLimit.call(self, event, limit, limit_type, limit_to );
880
  }, 100);
881
  });
882
 
884
  // it's a rich textarea
885
  setTimeout(function () {
886
  tinyMCE.get(field).onKeyDown.add(function(ed, event) {
887
+ WP_User_Frontend.editorLimit.tinymce.onKeyDown(ed, event, limit, limit_type, limit_to );
888
  } );
889
 
890
  tinyMCE.get(field).onPaste.add(function(ed, event) {
891
  setTimeout(function() {
892
+ WP_User_Frontend.editorLimit.tinymce.onPaste(ed, event, limit, limit_type, limit_to );
893
  }, 100);
894
  });
895
 
908
  };
909
  },
910
 
911
+ onKeyDown: function(ed, event, limit, limit_type, limit_to ) {
912
+ field = $('.post_content');
913
 
914
  var numWords = WP_User_Frontend.editorLimit.tinymce.getStats(ed).chars + 1,
915
  limit_label = ( 'word' === limit_type ) ? 'Word Limit : ' : 'Character Limit : ';
916
 
917
  if ( 'word' === limit_type ) {
918
+ numWords = WP_User_Frontend.editorLimit.tinymce.getStats(ed).words;
919
  }
920
 
921
+ if ( limit && numWords > limit && 'max' === limit_to ) {
 
 
922
  WP_User_Frontend.editorLimit.blockTyping(event);
923
+ WP_User_Frontend.markError( field, 'limit' );
924
+ jQuery('.mce-path-item.mce-last', ed.container).html( wpuf_frontend['word_'+limit_to ] + numWords +'/'+ limit );
925
+ }else if ( limit && numWords < limit && 'min' === limit_to ) {
926
+ WP_User_Frontend.markError( field, 'limit' );
927
+ jQuery('.mce-path-item.mce-last', ed.container).html( wpuf_frontend['word_'+limit_to ] + numWords +'/'+ limit );
928
+ }else {
929
+ field.removeClass('has-error')
930
+ jQuery('.mce-path-item.mce-last', ed.container).html('');
931
  }
932
  },
933
 
942
  }
943
  },
944
 
945
+ textLimit: function(event, limit, limit_type, limit_to ) {
946
  var self = $(this),
947
  content_length = self.val().length + 1;
948
 
950
  content_length = self.val().split(' ').length;
951
  }
952
 
953
+ if ( limit && content_length > limit && 'max' === limit_to ) {
954
+ WP_User_Frontend.content_limit_message( self, limit_type, limit_to, limit )
955
  WP_User_Frontend.editorLimit.blockTyping(event);
956
+ }else if ( limit && content_length < limit && 'min' === limit_to ) {
957
+ WP_User_Frontend.content_limit_message( self, limit_type, limit_to, limit )
958
+ }else {
959
+ self.closest('li').removeClass('has-error')
960
  self.closest('.wpuf-fields').find('span.wpuf-wordlimit-message').html('');
961
  }
962
 
1002
  el.checked = false;
1003
  },
1004
 
1005
+ content_limit_message: function( field, content_limit_type, limit_to, limit ) {
1006
+ WP_User_Frontend.markError( field, 'limit' );
1007
+
1008
+ if ( 'word' === content_limit_type ){
1009
+ limit_message = wpuf_frontend['word_'+limit_to ] + limit;
1010
+ }
1011
+
1012
+ if ( 'character' === content_limit_type ){
1013
+ limit_message = wpuf_frontend['char_'+limit_to] + limit ;
1014
+ }
1015
+
1016
+ field.closest('.wpuf-fields').find('span.wpuf-wordlimit-message').html( limit_message );
1017
  }
1018
  };
1019
 
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),b.matchMedia("(max-width: 600px)").matches&&(a("table.items-table tr td .post-edit-icon").click(function(b){b.preventDefault(),a(this).parents("tr").find(".data-column").toggleClass("flex-column"),a(this).toggleClass("toggle-icon")}),a(".wpuf-dashboard-navigation ul li:first-child").after().click(function(b){b.preventDefault(),a(".wpuf-dashboard-navigation ul li").not(":first").toggle()})),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(){a(".category-wrap").on("change",".cat-ajax",function(){var b=a(this).data("form-id");currentLevel=parseInt(a(this).parent().attr("level")),WP_User_Frontend.getChildCats(a(this),currentLevel+1,"category",b)})},getChildCats:function(b,c,d,e){var f=a(b).val(),g="wpuf-category-dropdown-lvl-"+c,d=void 0!==d?d:"category",h=a(b).siblings("span").data("taxonomy");a.ajax({type:"post",url:wpuf_frontend.ajaxurl,data:{action:"wpuf_get_child_cat",catID:f,nonce:wpuf_frontend.nonce,field_attr:h,form_id:e},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="'+g+'" level="'+c+'"></div>'),b.parent().parent().find("#"+g).html(e).slideDown("fast")),a(document).trigger("wpuf-ajax-fetched-child-categories",g,c,d)}})},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"]').parents(".wpuf-form-google-map-container");if(a.each(d,function(b,d){""==a(d).val()&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type))}),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:wpuf_frontend_upload.max_filesize,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,e){"no"===d?(a("textarea#"+c).keydown(function(a){WP_User_Frontend.editorLimit.textLimit.call(this,a,b,e)}),a("input#"+c).keydown(function(a){WP_User_Frontend.editorLimit.textLimit.call(this,a,b,e)}),a("textarea#"+c).on("paste",function(c){var d=a(this);setTimeout(function(){WP_User_Frontend.editorLimit.textLimit.call(d,c,b,e)},100)}),a("input#"+c).on("paste",function(c){var d=a(this);setTimeout(function(){WP_User_Frontend.editorLimit.textLimit.call(d,c,b,e)},100)})):setTimeout(function(){tinyMCE.get(c).onKeyDown.add(function(a,c){WP_User_Frontend.editorLimit.tinymce.onKeyDown(a,c,b,e)}),tinyMCE.get(c).onPaste.add(function(a,c){setTimeout(function(){WP_User_Frontend.editorLimit.tinymce.onPaste(a,c,b,e)},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,e){var f=WP_User_Frontend.editorLimit.tinymce.getStats(b).chars+1,g="word"===e?"Word Limit : ":"Character Limit : ";"word"===e&&(f=WP_User_Frontend.editorLimit.tinymce.getStats(b).words-1),d&&a(".mce-path-item.mce-last",b.container).html(g+f+"/"+d),d&&f>d&&(WP_User_Frontend.editorLimit.blockTyping(c),jQuery(".mce-path-item.mce-last",b.container).html(WP_User_Frontend.content_limit_message(e)))},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,d){var e=a(this),f=e.val().length+1;"word"===d&&(f=e.val().split(" ").length),c&&f>c?(e.closest(".wpuf-fields").find("span.wpuf-wordlimit-message").html(WP_User_Frontend.content_limit_message(d)),WP_User_Frontend.editorLimit.blockTyping(b)):e.closest(".wpuf-fields").find("span.wpuf-wordlimit-message").html(""),"paste"===b.type&&(e.val(content.substring(0,c)),"word"===d&&e.val(content.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))})}},doUncheckRadioBtn:function(a){a.checked=!1},content_limit_message:function(a){return"word"===a?"Word limit reached.":"Character limit reached."}},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),b.matchMedia("(max-width: 600px)").matches&&(a("table.items-table tr td .post-edit-icon").click(function(b){b.preventDefault(),a(this).parents("tr").find(".data-column").toggleClass("flex-column"),a(this).toggleClass("toggle-icon")}),a(".wpuf-dashboard-navigation ul li:first-child").after().click(function(b){b.preventDefault(),a(".wpuf-dashboard-navigation ul li").not(":first").toggle()})),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(){a(".category-wrap").on("change",".cat-ajax",function(){var b=a(this).data("form-id");currentLevel=parseInt(a(this).parent().attr("level")),WP_User_Frontend.getChildCats(a(this),currentLevel+1,"category",b)})},getChildCats:function(b,c,d,e){var f=a(b).val(),g="wpuf-category-dropdown-lvl-"+c,d=void 0!==d?d:"category",h=a(b).siblings("span").data("taxonomy");a.ajax({type:"post",url:wpuf_frontend.ajaxurl,data:{action:"wpuf_get_child_cat",catID:f,nonce:wpuf_frontend.nonce,field_attr:h,form_id:e},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="'+g+'" level="'+c+'"></div>'),b.parent().parent().find("#"+g).html(e).slideDown("fast")),a(document).trigger("wpuf-ajax-fetched-child-categories",g,c,d)}})},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"]').parents(".wpuf-form-google-map-container");if(a.each(d,function(b,d){""==a(d).val()&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type))}),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];break;case"limit":d=""}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:wpuf_frontend_upload.max_filesize,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,e,f){"no"===d?(a("textarea#"+c).keydown(function(a){WP_User_Frontend.editorLimit.textLimit.call(this,a,b,e,f)}),a("input#"+c).keydown(function(a){WP_User_Frontend.editorLimit.textLimit.call(this,a,b,e,f)}),a("textarea#"+c).on("paste",function(c){var d=a(this);setTimeout(function(){WP_User_Frontend.editorLimit.textLimit.call(d,c,b,e,f)},100)}),a("input#"+c).on("paste",function(c){var d=a(this);setTimeout(function(){WP_User_Frontend.editorLimit.textLimit.call(d,c,b,e,f)},100)})):setTimeout(function(){tinyMCE.get(c).onKeyDown.add(function(a,c){WP_User_Frontend.editorLimit.tinymce.onKeyDown(a,c,b,e,f)}),tinyMCE.get(c).onPaste.add(function(a,c){setTimeout(function(){WP_User_Frontend.editorLimit.tinymce.onPaste(a,c,b,e,f)},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,e,f){field=a(".post_content");var g=WP_User_Frontend.editorLimit.tinymce.getStats(b).chars+1;"word"===e&&(g=WP_User_Frontend.editorLimit.tinymce.getStats(b).words),d&&g>d&&"max"===f?(WP_User_Frontend.editorLimit.blockTyping(c),WP_User_Frontend.markError(field,"limit"),jQuery(".mce-path-item.mce-last",b.container).html(wpuf_frontend["word_"+f]+g+"/"+d)):d&&g<d&&"min"===f?(WP_User_Frontend.markError(field,"limit"),jQuery(".mce-path-item.mce-last",b.container).html(wpuf_frontend["word_"+f]+g+"/"+d)):(field.removeClass("has-error"),jQuery(".mce-path-item.mce-last",b.container).html(""))},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,d,e){var f=a(this),g=f.val().length+1;"word"===d&&(g=f.val().split(" ").length),c&&g>c&&"max"===e?(WP_User_Frontend.content_limit_message(f,d,e,c),WP_User_Frontend.editorLimit.blockTyping(b)):c&&g<c&&"min"===e?WP_User_Frontend.content_limit_message(f,d,e,c):(f.closest("li").removeClass("has-error"),f.closest(".wpuf-fields").find("span.wpuf-wordlimit-message").html("")),"paste"===b.type&&(f.val(content.substring(0,c)),"word"===d&&f.val(content.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))})}},doUncheckRadioBtn:function(a){a.checked=!1},content_limit_message:function(a,b,c,d){WP_User_Frontend.markError(a,"limit"),"word"===b&&(limit_message=wpuf_frontend["word_"+c]+d),"character"===b&&(limit_message=wpuf_frontend["char_"+c]+d),a.closest(".wpuf-fields").find("span.wpuf-wordlimit-message").html(limit_message)}},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
@@ -186,9 +186,9 @@
186
  }
187
 
188
  if ( FileProgress === uploaded ) {
189
- // if ( typeof grecaptcha !== 'undefined' && !grecaptcha.getResponse().length ) {
190
- // return;
191
- // }
192
 
193
  $(".wpuf-submit-button").removeAttr("disabled");
194
  }
186
  }
187
 
188
  if ( FileProgress === uploaded ) {
189
+ if ( typeof grecaptcha !== 'undefined' && !grecaptcha.getResponse().length ) {
190
+ return;
191
+ }
192
 
193
  $(".wpuf-submit-button").removeAttr("disabled");
194
  }
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")},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){try{var e=a.parseJSON(d.response)}catch(a){var f=!0}var g=this;if(a("#"+c.id+" b").html("100%"),a("#"+c.id).remove(),f){this.perFileCount++,this.UploadedFiles++;var h=a("#"+this.container).find(".wpuf-attachment-list");if(h.append(d.response),this.perFileCount>this.max){var i=a(".wpuf-image-wrap:last a.attachment-delete",h).data("attach-id");g.removeExtraAttachment(i),a(".wpuf-image-wrap",h).last().remove(),this.perFileCount--}}else alert(e.data.replace(/(<([^>]+)>)/gi,"")),b.files.pop(),this.count-=1,this.showHide();var j=this.UploadedFiles,k=b.files.length;this.count>=this.max&&a("#"+this.container).find(".file-selector").hide(),k===j&&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")},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){try{var e=a.parseJSON(d.response)}catch(a){var f=!0}var g=this;if(a("#"+c.id+" b").html("100%"),a("#"+c.id).remove(),f){this.perFileCount++,this.UploadedFiles++;var h=a("#"+this.container).find(".wpuf-attachment-list");if(h.append(d.response),this.perFileCount>this.max){var i=a(".wpuf-image-wrap:last a.attachment-delete",h).data("attach-id");g.removeExtraAttachment(i),a(".wpuf-image-wrap",h).last().remove(),this.perFileCount--}}else alert(e.data.replace(/(<([^>]+)>)/gi,"")),b.files.pop(),this.count-=1,this.showHide();var j=this.UploadedFiles,k=b.files.length;if(this.count>=this.max&&a("#"+this.container).find(".file-selector").hide(),k===j){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-mixins.js CHANGED
@@ -4,9 +4,16 @@
4
  wpuf_mixins.add_form_field = {
5
  methods: {
6
  add_form_field: function (field_template) {
7
- var payload = {
8
- toIndex: this.$store.state.index_to_insert === 0 ? this.$store.state.form_fields.length : this.$store.state.index_to_insert,
9
- };
 
 
 
 
 
 
 
10
 
11
  this.$store.state.index_to_insert = 0;
12
 
4
  wpuf_mixins.add_form_field = {
5
  methods: {
6
  add_form_field: function (field_template) {
7
+ var payload = {};
8
+ var event_type = event.type;
9
+
10
+ if( 'click' === event_type ){
11
+ payload.toIndex = this.$store.state.index_to_insert === 0 ? this.$store.state.form_fields.length : this.$store.state.index_to_insert;
12
+ }
13
+
14
+ if ( 'mouseup' === event_type ){
15
+ payload.toIndex = this.$store.state.index_to_insert === 0 ? 0 : this.$store.state.index_to_insert;
16
+ }
17
 
18
  this.$store.state.index_to_insert = 0;
19
 
assets/js/wpuf-form-builder.js CHANGED
@@ -151,8 +151,8 @@
151
  var el = $('#form-preview-stage .wpuf-form .field-items').eq(payload.toIndex);
152
  if ('yes' == payload.field.is_meta && state.show_custom_field_tooltip) {
153
 
154
- var image_one = wpuf_assets_url + '/images/custom-fields/settings.png';
155
- var image_two = wpuf_assets_url + '/images/custom-fields/advance.png';
156
  var html = '<div class="wpuf-custom-field-instruction">';
157
  html += '<div class="step-one">';
158
  html += sprintf( '<p style="font-weight: 400">%s<strong><code>%s</code></strong>%s"</p>', __( 'Navigate through', 'wp-user-frontend' ), __( 'WP-admin > WPUF > Settings > Frontend Posting', 'wp-user-frontend' ), __( '- there you have to check the checkbox: "Show custom field data in the post content area', 'wp-user-frontend' ) );
@@ -177,7 +177,7 @@
177
  if (result) {
178
  state.show_custom_field_tooltip = false;
179
  } else {
180
-
181
  }
182
  } );
183
  }
@@ -672,10 +672,9 @@
672
  if ( $(this).is(':checked') ) {
673
  table.find('tr.show-if-payment').show();
674
  table.find('tr.show-if-force-pack').hide();
675
-
676
  } else {
677
  table.find('tr.show-if-payment').hide();
678
-
679
  }
680
  },
681
 
151
  var el = $('#form-preview-stage .wpuf-form .field-items').eq(payload.toIndex);
152
  if ('yes' == payload.field.is_meta && state.show_custom_field_tooltip) {
153
 
154
+ var image_one = wpuf_assets_url.url + '/images/custom-fields/settings.png';
155
+ var image_two = wpuf_assets_url.url + '/images/custom-fields/advance.png';
156
  var html = '<div class="wpuf-custom-field-instruction">';
157
  html += '<div class="step-one">';
158
  html += sprintf( '<p style="font-weight: 400">%s<strong><code>%s</code></strong>%s"</p>', __( 'Navigate through', 'wp-user-frontend' ), __( 'WP-admin > WPUF > Settings > Frontend Posting', 'wp-user-frontend' ), __( '- there you have to check the checkbox: "Show custom field data in the post content area', 'wp-user-frontend' ) );
177
  if (result) {
178
  state.show_custom_field_tooltip = false;
179
  } else {
180
+
181
  }
182
  } );
183
  }
672
  if ( $(this).is(':checked') ) {
673
  table.find('tr.show-if-payment').show();
674
  table.find('tr.show-if-force-pack').hide();
 
675
  } else {
676
  table.find('tr.show-if-payment').hide();
677
+ table.find('input[type=checkbox]').removeAttr('checked');
678
  }
679
  },
680
 
changelog.txt CHANGED
@@ -1,3 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  = v3.5.18 (06 Jul, 2021) =
2
 
3
  * Enhancement - Google Map field enhanced along with acf google map
1
+ = v3.5.20 (16 Sep, 2021) =
2
+
3
+ * Enhancement - Content restriction for minimum, maximum value enhanced
4
+ * Enhancement - New option for redirection after pay per post payment in form setting
5
+ * Enhancement - Controller added for various email notification
6
+ * Enhancement - Placeholder added for unauth message option
7
+ * Update - Subscription Post expiration option change to input field
8
+ * Fix - Content restriction message translatable
9
+ * Fix - ACF integration inconsistency handled
10
+ * Fix - Enable payment checkbox handled for child option
11
+ * Fix - Broken asset link handled for custom field popup
12
+ * Fix - Rollback inconsistency for CPT handled
13
+ * Fix - Login form loaded after resetting password
14
+ * Fix - Billing address inconsistency handled
15
+ * Fix - Form duplication on creation handled
16
+ * Fix - Field Dragging inconsistency fixed
17
+
18
  = v3.5.18 (06 Jul, 2021) =
19
 
20
  * Enhancement - Google Map field enhanced along with acf google map
class/post-form-templates/post.php CHANGED
@@ -124,7 +124,7 @@ class WPUF_Post_Form_Template_Post extends WPUF_Post_Form_Template {
124
  'post_status' => 'publish',
125
  'default_cat' => '-1',
126
  'guest_post' => 'false',
127
- 'message_restrict' => __( 'This page is restricted. Please Log in / Register to view this page.', 'wp-user-frontend' ),
128
  'redirect_to' => 'post',
129
  'comment_status' => 'open',
130
  'submit_text' => __( 'Create Post', 'wp-user-frontend' ),
124
  'post_status' => 'publish',
125
  'default_cat' => '-1',
126
  'guest_post' => 'false',
127
+ 'message_restrict' => __( 'This page is restricted. Please %login% / %register% to view this page.', 'wp-user-frontend' ),
128
  'redirect_to' => 'post',
129
  'comment_status' => 'open',
130
  'submit_text' => __( 'Create Post', 'wp-user-frontend' ),
includes/class-acf.php CHANGED
@@ -5,9 +5,9 @@
5
  */
6
  class WPUF_ACF_Compatibility {
7
 
8
- public $id = 'acf';
9
 
10
- public $title = 'Advanced Custom Fields';
11
 
12
  public function __construct() {
13
  add_action( 'admin_notices', [ $this, 'maybe_show_notice' ] );
@@ -16,6 +16,7 @@ class WPUF_ACF_Compatibility {
16
  add_action( 'wp_ajax_wpuf_compatibility_' . $this->id, [ $this, 'maybe_compatible' ] );
17
  add_action( 'wp_ajax_wpuf_migrate_' . $this->id, [ $this, 'migrate_cf_data' ] );
18
  add_filter( 'acf/load_value', [ $this, 'load_compatible_value' ], 10, 3 );
 
19
  }
20
 
21
  /**
@@ -82,7 +83,7 @@ class WPUF_ACF_Compatibility {
82
  public function migrate_cf_data() {
83
  $forms = $this->get_post_forms();
84
 
85
- if ( !empty( $forms ) ) {
86
  foreach ( $forms as $form ) {
87
  $form_id = $form->ID;
88
  $form_vars = wpuf_get_form_fields( $form_id );
@@ -102,13 +103,13 @@ class WPUF_ACF_Compatibility {
102
  ];
103
  $posts = get_posts( $args );
104
 
105
- if ( !empty( $posts ) ) {
106
  foreach ( $posts as $post ) {
107
  $post_id = $post->ID;
108
  $separator = '| ';
109
  $meta_value = get_post_meta( $post_id, $meta_key );
110
 
111
- if ( !empty( $meta_value ) ) {
112
  $new_value = explode( $separator, $meta_value[0] );
113
  $new_value = maybe_serialize( $new_value );
114
 
@@ -122,7 +123,7 @@ class WPUF_ACF_Compatibility {
122
  }
123
 
124
  update_option( 'wpuf_migrate_' . $this->id, 'yes' );
125
- wpuf_update_option( 'wpuf_compatibility_' . $this->id, 'wpuf_general', 'yes' );
126
 
127
  wp_send_json_success();
128
  }
@@ -158,11 +159,11 @@ class WPUF_ACF_Compatibility {
158
  * @return void
159
  */
160
  public function maybe_show_notice() {
161
- if ( !$this->plugin_exists() ) {
162
  return;
163
  }
164
 
165
- if ( $this->is_dismissed() || $this->is_compatible() || $this->is_migrated() || !current_user_can( 'manage_options' ) ) {
166
  return;
167
  } ?>
168
  <div class="notice notice-info">
@@ -264,4 +265,43 @@ class WPUF_ACF_Compatibility {
264
 
265
  return $value;
266
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
267
  }
5
  */
6
  class WPUF_ACF_Compatibility {
7
 
8
+ public $id = 'acf';
9
 
10
+ public $title = 'Advanced Custom Fields';
11
 
12
  public function __construct() {
13
  add_action( 'admin_notices', [ $this, 'maybe_show_notice' ] );
16
  add_action( 'wp_ajax_wpuf_compatibility_' . $this->id, [ $this, 'maybe_compatible' ] );
17
  add_action( 'wp_ajax_wpuf_migrate_' . $this->id, [ $this, 'migrate_cf_data' ] );
18
  add_filter( 'acf/load_value', [ $this, 'load_compatible_value' ], 10, 3 );
19
+ add_action( 'wpuf_add_post_after_insert', [ $this, 'update_acf_field_meta' ], 10, 4 );
20
  }
21
 
22
  /**
83
  public function migrate_cf_data() {
84
  $forms = $this->get_post_forms();
85
 
86
+ if ( ! empty( $forms ) ) {
87
  foreach ( $forms as $form ) {
88
  $form_id = $form->ID;
89
  $form_vars = wpuf_get_form_fields( $form_id );
103
  ];
104
  $posts = get_posts( $args );
105
 
106
+ if ( ! empty( $posts ) ) {
107
  foreach ( $posts as $post ) {
108
  $post_id = $post->ID;
109
  $separator = '| ';
110
  $meta_value = get_post_meta( $post_id, $meta_key );
111
 
112
+ if ( ! empty( $meta_value ) ) {
113
  $new_value = explode( $separator, $meta_value[0] );
114
  $new_value = maybe_serialize( $new_value );
115
 
123
  }
124
 
125
  update_option( 'wpuf_migrate_' . $this->id, 'yes' );
126
+ wpuf_update_option( 'wpuf_compatibility_' . $this->id, 'wpuf_general', 'yes' );
127
 
128
  wp_send_json_success();
129
  }
159
  * @return void
160
  */
161
  public function maybe_show_notice() {
162
+ if ( ! $this->plugin_exists() ) {
163
  return;
164
  }
165
 
166
+ if ( $this->is_dismissed() || $this->is_compatible() || $this->is_migrated() || ! current_user_can( 'manage_options' ) ) {
167
  return;
168
  } ?>
169
  <div class="notice notice-info">
265
 
266
  return $value;
267
  }
268
+
269
+ /**
270
+ * Update acf post meta
271
+ *
272
+ * @since 3.5.20
273
+ *
274
+ * @param $post_id
275
+ * @param $form_id
276
+ * @param $form_settings
277
+ * @param $meta_vars
278
+ */
279
+ public function update_acf_field_meta( $post_id, $form_id, $form_settings, $meta_vars ) {
280
+ if ( ! $this->plugin_exists() ){
281
+ return;
282
+ }
283
+
284
+ $groups = acf_get_field_groups( [ 'post_type' => $form_settings['post_type'] ] );
285
+ $existing_meta = get_post_meta( $post_id );
286
+
287
+ foreach ( acf_get_fields( $groups ) as $group ) {
288
+ $meta_key = '_' . $group['name'];
289
+ $name = $group['name'];
290
+
291
+ if ( 'repeater' === $group['type'] ) {
292
+ $meta_key = 'repeater';
293
+ }
294
+
295
+ //check key also in meta vars
296
+ $meta_keys = array_map(
297
+ function ( $meta_var ) {
298
+ return $meta_var['name'];
299
+ }, $meta_vars
300
+ );
301
+
302
+ if ( ! array_key_exists( $meta_key, $existing_meta ) && in_array( $name, $meta_keys, true ) ) {
303
+ update_post_meta( $post_id, $meta_key, $group['key'] );
304
+ }
305
+ }
306
+ }
307
  }
includes/class-frontend-render-form.php CHANGED
@@ -305,8 +305,15 @@ class WPUF_Frontend_Render_Form {
305
  wp_enqueue_style( 'wpuf-' . $layout );
306
  }
307
 
308
- if ( ! is_user_logged_in() && $this->form_settings['guest_post'] != 'true' ) {
309
- echo wp_kses_post( '<div class="wpuf-message">' . $this->form_settings['message_restrict'] . '</div>' );
 
 
 
 
 
 
 
310
 
311
  return;
312
  }
305
  wp_enqueue_style( 'wpuf-' . $layout );
306
  }
307
 
308
+ if ( ! is_user_logged_in() && $this->form_settings['guest_post'] !== 'true' ) {
309
+ $login = wpuf()->login->get_login_url();
310
+ $register = wpuf()->login->get_registration_url();
311
+ $replace = [ "<a href='" . $login . "'>Login</a>", "<a href='" . $register . "'>Register</a>" ];
312
+ $placeholders = [ '%login%', '%register%' ];
313
+
314
+ $restrict_message = str_replace( $placeholders, $replace, $this->form_settings['message_restrict'] );
315
+
316
+ echo wp_kses_post( '<div class="wpuf-message">' . $restrict_message . '</div>' );
317
 
318
  return;
319
  }
includes/fields/class-abstract-fields.php CHANGED
@@ -29,6 +29,50 @@ abstract class WPUF_Field_Contract {
29
  // protected $icon = '';
30
  protected $icon = 'header';
31
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32
  /**
33
  * Get the name of the field
34
  *
@@ -500,32 +544,7 @@ abstract class WPUF_Field_Contract {
500
  ];
501
 
502
  if ( $content_restriction ) {
503
- $properties = array_merge(
504
- $properties, [
505
- [
506
- 'name' => 'restriction_type',
507
- 'title' => __( 'Content restricted by', 'wp-user-frontend' ),
508
- 'type' => 'radio',
509
- 'options' => [
510
- 'character' => __( 'Character', 'wp-user-frontend' ),
511
- 'word' => __( 'Word', 'wp-user-frontend' ),
512
- ],
513
- 'section' => 'advanced',
514
- 'priority' => 15,
515
- 'inline' => true,
516
- 'default' => 'character',
517
- ],
518
-
519
- [
520
- 'name' => 'content_restriction',
521
- 'title' => __( 'Content Restriction', 'wp-user-frontend' ),
522
- 'type' => 'text',
523
- 'section' => 'advanced',
524
- 'priority' => 16,
525
- 'help_text' => __( 'Number of characters or words the author to be restricted in', 'wp-user-frontend' ),
526
- ],
527
- ]
528
- );
529
  }
530
 
531
  return apply_filters( 'wpuf-form-builder-common-taxonomy-fields-properties', $properties );
@@ -574,32 +593,7 @@ abstract class WPUF_Field_Contract {
574
  ];
575
 
576
  if ( $content_restriction ) {
577
- $properties = array_merge(
578
- $properties, [
579
- [
580
- 'name' => 'restriction_type',
581
- 'title' => __( 'Content restricted by', 'wp-user-frontend' ),
582
- 'type' => 'radio',
583
- 'options' => [
584
- 'character' => __( 'Character', 'wp-user-frontend' ),
585
- 'word' => __( 'Word', 'wp-user-frontend' ),
586
- ],
587
- 'section' => 'advanced',
588
- 'priority' => 15,
589
- 'inline' => true,
590
- 'default' => 'character',
591
- ],
592
-
593
- [
594
- 'name' => 'content_restriction',
595
- 'title' => __( 'Content Restriction', 'wp-user-frontend' ),
596
- 'type' => 'text',
597
- 'section' => 'advanced',
598
- 'priority' => 16,
599
- 'help_text' => __( 'Number of characters or words the author to be restricted in', 'wp-user-frontend' ),
600
- ],
601
- ]
602
- );
603
  }
604
 
605
  return apply_filters( 'wpuf-form-builder-common-text-fields-properties', $properties );
@@ -630,7 +624,7 @@ abstract class WPUF_Field_Contract {
630
  * @return array
631
  */
632
  public function get_default_textarea_option_settings() {
633
- return [
634
  [
635
  'name' => 'rows',
636
  'title' => __( 'Rows', 'wp-user-frontend' ),
@@ -683,29 +677,6 @@ abstract class WPUF_Field_Contract {
683
  'priority' => 14,
684
  'default' => 'no',
685
  ],
686
-
687
- [
688
- 'name' => 'restriction_type',
689
- 'title' => __( 'Content restricted by', 'wp-user-frontend' ),
690
- 'type' => 'radio',
691
- 'options' => [
692
- 'character' => __( 'Character', 'wp-user-frontend' ),
693
- 'word' => __( 'Word', 'wp-user-frontend' ),
694
- ],
695
- 'section' => 'advanced',
696
- 'priority' => 15,
697
- 'inline' => true,
698
- 'default' => 'character',
699
- ],
700
-
701
- [
702
- 'name' => 'content_restriction',
703
- 'title' => __( 'Content Restriction', 'wp-user-frontend' ),
704
- 'type' => 'text',
705
- 'section' => 'advanced',
706
- 'priority' => 16,
707
- 'help_text' => __( 'Number of characters or words the author to be restricted in', 'wp-user-frontend' ),
708
- ],
709
  ];
710
  }
711
 
@@ -892,7 +863,7 @@ abstract class WPUF_Field_Contract {
892
  *
893
  * @param $content_limit number of words allowed
894
  */
895
- public function check_content_restriction_func( $content_limit, $rich_text, $field_name, $limit_type ) {
896
  // bail out if it is dashboard
897
  if ( is_admin() ) {
898
  return;
@@ -901,7 +872,7 @@ abstract class WPUF_Field_Contract {
901
  <script type="text/javascript">
902
  ;(function($) {
903
  $(document).ready( function(){
904
- WP_User_Frontend.editorLimit.bind(<?php printf( '%d, "%s", "%s", "%s"', esc_attr( $content_limit ), esc_attr( $field_name ), esc_attr( $rich_text ), esc_attr( $limit_type ) ); ?>);
905
  });
906
  })(jQuery);
907
  </script>
29
  // protected $icon = '';
30
  protected $icon = 'header';
31
 
32
+ /**
33
+ * @return array[]
34
+ */
35
+ public static function common_field() {
36
+ return [
37
+ [
38
+ 'name' => 'restriction_to',
39
+ 'title' => __( 'Content restricted type', 'wp-user-frontend' ),
40
+ 'type' => 'radio',
41
+ 'options' => [
42
+ 'min' => __( 'Minimun', 'wp-user-frontend' ),
43
+ 'max' => __( 'Maximum', 'wp-user-frontend' ),
44
+ ],
45
+ 'section' => 'advanced',
46
+ 'priority' => 15,
47
+ 'inline' => true,
48
+ 'default' => 'max',
49
+ ],
50
+
51
+ [
52
+ 'name' => 'restriction_type',
53
+ 'title' => __( 'Content restricted by', 'wp-user-frontend' ),
54
+ 'type' => 'radio',
55
+ 'options' => [
56
+ 'character' => __( 'Character', 'wp-user-frontend' ),
57
+ 'word' => __( 'Word', 'wp-user-frontend' ),
58
+ ],
59
+ 'section' => 'advanced',
60
+ 'priority' => 15,
61
+ 'inline' => true,
62
+ 'default' => 'character',
63
+ ],
64
+
65
+ [
66
+ 'name' => 'content_restriction',
67
+ 'title' => __( 'Content Restriction', 'wp-user-frontend' ),
68
+ 'type' => 'text',
69
+ 'section' => 'advanced',
70
+ 'priority' => 16,
71
+ 'help_text' => __( 'Number of characters or words the author to be restricted in', 'wp-user-frontend' ),
72
+ ],
73
+ ];
74
+ }
75
+
76
  /**
77
  * Get the name of the field
78
  *
544
  ];
545
 
546
  if ( $content_restriction ) {
547
+ $properties = array_merge( $properties, self::common_field() );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
548
  }
549
 
550
  return apply_filters( 'wpuf-form-builder-common-taxonomy-fields-properties', $properties );
593
  ];
594
 
595
  if ( $content_restriction ) {
596
+ $properties = array_merge( $properties, self::common_field() );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
597
  }
598
 
599
  return apply_filters( 'wpuf-form-builder-common-text-fields-properties', $properties );
624
  * @return array
625
  */
626
  public function get_default_textarea_option_settings() {
627
+ return self::common_field() + [
628
  [
629
  'name' => 'rows',
630
  'title' => __( 'Rows', 'wp-user-frontend' ),
677
  'priority' => 14,
678
  'default' => 'no',
679
  ],
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
680
  ];
681
  }
682
 
863
  *
864
  * @param $content_limit number of words allowed
865
  */
866
+ public function check_content_restriction_func( $content_limit, $rich_text, $field_name, $limit_type, $limit_to = null ) {
867
  // bail out if it is dashboard
868
  if ( is_admin() ) {
869
  return;
872
  <script type="text/javascript">
873
  ;(function($) {
874
  $(document).ready( function(){
875
+ WP_User_Frontend.editorLimit.bind(<?php printf( '%d, "%s", "%s", "%s", "%s"', esc_attr( $content_limit ), esc_attr( $field_name ), esc_attr( $rich_text ), esc_attr( $limit_type ), esc_attr( $limit_to ) ); ?>);
876
  });
877
  })(jQuery);
878
  </script>
includes/fields/class-field-post-content.php CHANGED
@@ -25,7 +25,7 @@ class WPUF_Form_Field_Post_Content extends WPUF_Field_Contract {
25
  if ( isset( $post_id ) ) {
26
  $value = get_post_field( $field_settings['name'], $post_id );
27
  } else {
28
- $value = $field_settings['default'];
29
  }
30
 
31
  $req_class = ( $field_settings['required'] == 'yes' ) ? 'required' : 'rich-editor';
@@ -41,11 +41,12 @@ class WPUF_Form_Field_Post_Content extends WPUF_Field_Contract {
41
 
42
  <?php
43
 
44
- if ( isset( $field_settings['insert_image'] ) && $field_settings['insert_image'] == 'yes' ) { ?>
 
45
  <div id="wpuf-insert-image-container">
46
- <a class="wpuf-button wpuf-insert-image" id="wpuf-insert-image_<?php echo esc_attr($form_id ); ?>" href="#" data-form_id="<?php echo esc_attr( $form_id ); ?>">
47
  <span class="wpuf-media-icon"></span>
48
- <?php esc_html_e( 'Insert Photo', 'wp-user-frontend' ); ?>
49
  </a>
50
  </div>
51
 
@@ -56,33 +57,34 @@ class WPUF_Form_Field_Post_Content extends WPUF_Field_Contract {
56
  });
57
  })(jQuery);
58
  </script>
59
- <?php }
60
-
61
- if ( $field_settings['rich'] == 'yes' ) {
62
- $editor_settings = [
63
- // 'textarea_rows' => $field_settings['rows'],
64
- 'quicktags' => false,
65
- 'media_buttons' => false,
66
- 'editor_class' => $req_class,
67
- 'textarea_name' => $field_settings['name'],
68
- ];
69
-
70
- $editor_settings = apply_filters( 'wpuf_textarea_editor_args', $editor_settings );
71
- wp_editor( $value, $textarea_id, $editor_settings );
72
- } elseif ( $field_settings['rich'] == 'teeny' ) {
73
- $editor_settings = [
74
- 'textarea_rows' => $field_settings['rows'],
75
- 'quicktags' => false,
76
- 'media_buttons' => false,
77
- 'teeny' => true,
78
- 'editor_class' => $req_class,
79
- 'textarea_name' => $field_settings['name'],
80
- ];
81
-
82
- $editor_settings = apply_filters( 'wpuf_textarea_editor_args', $editor_settings );
83
- wp_editor( $value, $textarea_id, $editor_settings );
84
- } else {
85
- ?>
 
86
  <textarea
87
  class="textareafield <?php echo ' wpuf_' . esc_attr( $field_settings['name'] ) . '_' . esc_attr( $form_id ); ?>"
88
  id="<?php echo esc_attr( $field_settings['name'] ) . '_' . esc_attr( $form_id ); ?>"
@@ -95,8 +97,9 @@ class WPUF_Form_Field_Post_Content extends WPUF_Field_Contract {
95
  ><?php echo esc_textarea( $value ); ?></textarea>
96
  <span class="wpuf-wordlimit-message wpuf-help"></span>
97
 
98
- <?php
99
- } ?>
 
100
 
101
  <?php
102
  $this->help_text( $field_settings );
@@ -106,9 +109,11 @@ class WPUF_Form_Field_Post_Content extends WPUF_Field_Contract {
106
  $field_settings['content_restriction'],
107
  $field_settings['rich'],
108
  $field_settings['name'] . '_' . $form_id,
109
- $field_settings['restriction_type']
 
110
  );
111
- } ?>
 
112
  </li>
113
  <?php
114
  }
@@ -119,7 +124,7 @@ class WPUF_Form_Field_Post_Content extends WPUF_Field_Contract {
119
  * @return array
120
  */
121
  public function get_options_settings() {
122
- $default_options = $this->get_default_option_settings( false, ['dynamic'] );
123
  $default_text_options = $this->get_default_textarea_option_settings();
124
 
125
  $settings = [
@@ -145,7 +150,7 @@ class WPUF_Form_Field_Post_Content extends WPUF_Field_Contract {
145
  public function get_field_props() {
146
  $defaults = $this->default_attributes();
147
 
148
- $props = [
149
  'input_type' => 'textarea',
150
  'is_meta' => 'no',
151
  'name' => 'post_content',
@@ -155,6 +160,7 @@ class WPUF_Form_Field_Post_Content extends WPUF_Field_Contract {
155
  'id' => 0,
156
  'is_new' => true,
157
  'restriction_type' => 'character',
 
158
  ];
159
 
160
  return array_merge( $defaults, $props );
@@ -170,7 +176,7 @@ class WPUF_Form_Field_Post_Content extends WPUF_Field_Contract {
170
  public function prepare_entry( $field ) {
171
  check_ajax_referer( 'wpuf_form_add' );
172
 
173
- $field = isset( $_POST[$field['name']] ) ? sanitize_text_field( wp_unslash( $_POST[$field['name']] ) ) : '';
174
 
175
  return trim( $field );
176
  }
25
  if ( isset( $post_id ) ) {
26
  $value = get_post_field( $field_settings['name'], $post_id );
27
  } else {
28
+ $value = $field_settings['default'];
29
  }
30
 
31
  $req_class = ( $field_settings['required'] == 'yes' ) ? 'required' : 'rich-editor';
41
 
42
  <?php
43
 
44
+ if ( isset( $field_settings['insert_image'] ) && $field_settings['insert_image'] == 'yes' ) {
45
+ ?>
46
  <div id="wpuf-insert-image-container">
47
+ <a class="wpuf-button wpuf-insert-image" id="wpuf-insert-image_<?php echo esc_attr( $form_id ); ?>" href="#" data-form_id="<?php echo esc_attr( $form_id ); ?>">
48
  <span class="wpuf-media-icon"></span>
49
+ <?php esc_html_e( 'Insert Photo', 'wp-user-frontend' ); ?>
50
  </a>
51
  </div>
52
 
57
  });
58
  })(jQuery);
59
  </script>
60
+ <?php
61
+ }
62
+
63
+ if ( $field_settings['rich'] == 'yes' ) {
64
+ $editor_settings = [
65
+ // 'textarea_rows' => $field_settings['rows'],
66
+ 'quicktags' => false,
67
+ 'media_buttons' => false,
68
+ 'editor_class' => $req_class,
69
+ 'textarea_name' => $field_settings['name'],
70
+ ];
71
+
72
+ $editor_settings = apply_filters( 'wpuf_textarea_editor_args', $editor_settings );
73
+ wp_editor( $value, $textarea_id, $editor_settings );
74
+ } elseif ( $field_settings['rich'] == 'teeny' ) {
75
+ $editor_settings = [
76
+ 'textarea_rows' => $field_settings['rows'],
77
+ 'quicktags' => false,
78
+ 'media_buttons' => false,
79
+ 'teeny' => true,
80
+ 'editor_class' => $req_class,
81
+ 'textarea_name' => $field_settings['name'],
82
+ ];
83
+
84
+ $editor_settings = apply_filters( 'wpuf_textarea_editor_args', $editor_settings );
85
+ wp_editor( $value, $textarea_id, $editor_settings );
86
+ } else {
87
+ ?>
88
  <textarea
89
  class="textareafield <?php echo ' wpuf_' . esc_attr( $field_settings['name'] ) . '_' . esc_attr( $form_id ); ?>"
90
  id="<?php echo esc_attr( $field_settings['name'] ) . '_' . esc_attr( $form_id ); ?>"
97
  ><?php echo esc_textarea( $value ); ?></textarea>
98
  <span class="wpuf-wordlimit-message wpuf-help"></span>
99
 
100
+ <?php
101
+ }
102
+ ?>
103
 
104
  <?php
105
  $this->help_text( $field_settings );
109
  $field_settings['content_restriction'],
110
  $field_settings['rich'],
111
  $field_settings['name'] . '_' . $form_id,
112
+ $field_settings['restriction_type'],
113
+ $field_settings['restriction_to']
114
  );
115
+ }
116
+ ?>
117
  </li>
118
  <?php
119
  }
124
  * @return array
125
  */
126
  public function get_options_settings() {
127
+ $default_options = $this->get_default_option_settings( false, [ 'dynamic' ] );
128
  $default_text_options = $this->get_default_textarea_option_settings();
129
 
130
  $settings = [
150
  public function get_field_props() {
151
  $defaults = $this->default_attributes();
152
 
153
+ $props = [
154
  'input_type' => 'textarea',
155
  'is_meta' => 'no',
156
  'name' => 'post_content',
160
  'id' => 0,
161
  'is_new' => true,
162
  'restriction_type' => 'character',
163
+ 'restriction_to' => 'max',
164
  ];
165
 
166
  return array_merge( $defaults, $props );
176
  public function prepare_entry( $field ) {
177
  check_ajax_referer( 'wpuf_form_add' );
178
 
179
+ $field = isset( $_POST[ $field['name'] ] ) ? sanitize_text_field( wp_unslash( $_POST[ $field['name'] ] ) ) : '';
180
 
181
  return trim( $field );
182
  }
includes/fields/class-field-post-excerpt.php CHANGED
@@ -27,7 +27,7 @@ class WPUF_Form_Field_Post_Excerpt extends WPUF_Field_Contract {
27
  if ( isset( $post_id ) ) {
28
  $value = get_post_field( $field_settings['name'], $post_id );
29
  } else {
30
- $value = $field_settings['default'];
31
  }
32
 
33
  $req_class = ( $field_settings['required'] == 'yes' ) ? 'required' : 'rich-editor';
@@ -80,20 +80,23 @@ class WPUF_Form_Field_Post_Excerpt extends WPUF_Field_Contract {
80
  ><?php echo esc_textarea( $value ); ?></textarea>
81
  <span class="wpuf-wordlimit-message wpuf-help"></span>
82
 
83
- <?php
84
- } ?>
 
85
 
86
  <?php
87
  $this->help_text( $field_settings );
88
 
89
- if ( isset( $field_settings['content_restriction'] ) && $field_settings['content_restriction'] ) {
90
- $this->check_content_restriction_func(
91
- $field_settings['content_restriction'],
92
- $field_settings['rich'],
93
- $field_settings['name'] . '_' . $form_id,
94
- $field_settings['restriction_type']
95
- );
96
- } ?>
 
 
97
  </li>
98
  <?php
99
  }
@@ -104,7 +107,7 @@ class WPUF_Form_Field_Post_Excerpt extends WPUF_Field_Contract {
104
  * @return array
105
  */
106
  public function get_options_settings() {
107
- $default_options = $this->get_default_option_settings( false, ['dynamic'] );
108
  $default_text_options = $this->get_default_textarea_option_settings();
109
 
110
  return array_merge( $default_options, $default_text_options );
@@ -118,7 +121,7 @@ class WPUF_Form_Field_Post_Excerpt extends WPUF_Field_Contract {
118
  public function get_field_props() {
119
  $defaults = $this->default_attributes();
120
 
121
- $props = [
122
  'input_type' => 'textarea',
123
  'is_meta' => 'no',
124
  'name' => 'post_excerpt',
@@ -128,6 +131,7 @@ class WPUF_Form_Field_Post_Excerpt extends WPUF_Field_Contract {
128
  'id' => 0,
129
  'is_new' => true,
130
  'restriction_type' => 'character',
 
131
  ];
132
 
133
  return array_merge( $defaults, $props );
@@ -143,7 +147,7 @@ class WPUF_Form_Field_Post_Excerpt extends WPUF_Field_Contract {
143
  public function prepare_entry( $field ) {
144
  check_ajax_referer( 'wpuf_form_add' );
145
 
146
- $field = isset( $_POST[$field['name']] ) ? sanitize_text_field( wp_unslash( $_POST[$field['name']] ) ) : '';
147
 
148
  return wp_kses_post( $field );
149
  }
27
  if ( isset( $post_id ) ) {
28
  $value = get_post_field( $field_settings['name'], $post_id );
29
  } else {
30
+ $value = $field_settings['default'];
31
  }
32
 
33
  $req_class = ( $field_settings['required'] == 'yes' ) ? 'required' : 'rich-editor';
80
  ><?php echo esc_textarea( $value ); ?></textarea>
81
  <span class="wpuf-wordlimit-message wpuf-help"></span>
82
 
83
+ <?php
84
+ }
85
+ ?>
86
 
87
  <?php
88
  $this->help_text( $field_settings );
89
 
90
+ if ( isset( $field_settings['content_restriction'] ) && $field_settings['content_restriction'] ) {
91
+ $this->check_content_restriction_func(
92
+ $field_settings['content_restriction'],
93
+ $field_settings['rich'],
94
+ $field_settings['name'] . '_' . $form_id,
95
+ $field_settings['restriction_type'],
96
+ $field_settings['restriction_to']
97
+ );
98
+ }
99
+ ?>
100
  </li>
101
  <?php
102
  }
107
  * @return array
108
  */
109
  public function get_options_settings() {
110
+ $default_options = $this->get_default_option_settings( false, [ 'dynamic' ] );
111
  $default_text_options = $this->get_default_textarea_option_settings();
112
 
113
  return array_merge( $default_options, $default_text_options );
121
  public function get_field_props() {
122
  $defaults = $this->default_attributes();
123
 
124
+ $props = [
125
  'input_type' => 'textarea',
126
  'is_meta' => 'no',
127
  'name' => 'post_excerpt',
131
  'id' => 0,
132
  'is_new' => true,
133
  'restriction_type' => 'character',
134
+ 'restriction_to' => 'max',
135
  ];
136
 
137
  return array_merge( $defaults, $props );
147
  public function prepare_entry( $field ) {
148
  check_ajax_referer( 'wpuf_form_add' );
149
 
150
+ $field = isset( $_POST[ $field['name'] ] ) ? sanitize_text_field( wp_unslash( $_POST[ $field['name'] ] ) ) : '';
151
 
152
  return wp_kses_post( $field );
153
  }
includes/fields/class-field-post-title.php CHANGED
@@ -30,7 +30,7 @@ class WPUF_Form_Field_Post_Title extends WPUF_Field_Contract {
30
  class="textfield <?php echo esc_attr( 'wpuf_' . $field_settings['name'] . '_' . $form_id ); ?>"
31
  id="<?php echo esc_attr( $field_settings['name'] . '_' . $form_id ); ?>"
32
  type="text"
33
- data-duplicate="<?php // echo $field_settings['duplicate'] ? $field_settings['duplicate'] : 'no';?>"
34
  data-required="<?php echo esc_attr( $field_settings['required'] ); ?>"
35
  data-type="text" name="<?php echo esc_attr( $field_settings['name'] ); ?>"
36
  placeholder="<?php echo esc_attr( $field_settings['placeholder'] ); ?>"
@@ -47,14 +47,15 @@ class WPUF_Form_Field_Post_Title extends WPUF_Field_Contract {
47
  $field_settings['content_restriction'],
48
  'no',
49
  $field_settings['name'] . '_' . $form_id,
50
- $field_settings['restriction_type']
 
51
  );
52
  }
53
 
54
- $mask_option = isset( $field_settings['mask_options'] ) ? $field_settings['mask_options'] : '';
55
 
56
- if ( $mask_option ) {
57
- ?>
58
  <script>
59
  jQuery(document).ready(function($) {
60
  var text_field = $( "input[name*=<?php echo esc_attr( $field_settings['name'] ); ?>]" );
@@ -79,8 +80,9 @@ class WPUF_Form_Field_Post_Title extends WPUF_Field_Contract {
79
  }
80
  });
81
  </script>
82
- <?php
83
- } ?>
 
84
  </li>
85
  <?php
86
  }
@@ -91,7 +93,7 @@ class WPUF_Form_Field_Post_Title extends WPUF_Field_Contract {
91
  * @return array
92
  */
93
  public function get_options_settings() {
94
- $default_options = $this->get_default_option_settings( false, ['dynamic'] );
95
  $default_text_options = $this->get_default_text_option_settings( true );
96
 
97
  return array_merge( $default_options, $default_text_options );
@@ -113,6 +115,7 @@ class WPUF_Form_Field_Post_Title extends WPUF_Field_Contract {
113
  'id' => 0,
114
  'is_new' => true,
115
  'restriction_type' => 'character',
 
116
  ];
117
 
118
  return array_merge( $defaults, $props );
@@ -128,7 +131,7 @@ class WPUF_Form_Field_Post_Title extends WPUF_Field_Contract {
128
  public function prepare_entry( $field ) {
129
  check_ajax_referer( 'wpuf_form_add' );
130
 
131
- $field = isset( $_POST[$field['name']] ) ? sanitize_text_field( wp_unslash( $_POST[$field['name']] ) ) : '';
132
  return $field;
133
  }
134
  }
30
  class="textfield <?php echo esc_attr( 'wpuf_' . $field_settings['name'] . '_' . $form_id ); ?>"
31
  id="<?php echo esc_attr( $field_settings['name'] . '_' . $form_id ); ?>"
32
  type="text"
33
+ data-duplicate="<?php // echo $field_settings['duplicate'] ? $field_settings['duplicate'] : 'no'; ?>"
34
  data-required="<?php echo esc_attr( $field_settings['required'] ); ?>"
35
  data-type="text" name="<?php echo esc_attr( $field_settings['name'] ); ?>"
36
  placeholder="<?php echo esc_attr( $field_settings['placeholder'] ); ?>"
47
  $field_settings['content_restriction'],
48
  'no',
49
  $field_settings['name'] . '_' . $form_id,
50
+ $field_settings['restriction_type'],
51
+ $field_settings['restriction_to']
52
  );
53
  }
54
 
55
+ $mask_option = isset( $field_settings['mask_options'] ) ? $field_settings['mask_options'] : '';
56
 
57
+ if ( $mask_option ) {
58
+ ?>
59
  <script>
60
  jQuery(document).ready(function($) {
61
  var text_field = $( "input[name*=<?php echo esc_attr( $field_settings['name'] ); ?>]" );
80
  }
81
  });
82
  </script>
83
+ <?php
84
+ }
85
+ ?>
86
  </li>
87
  <?php
88
  }
93
  * @return array
94
  */
95
  public function get_options_settings() {
96
+ $default_options = $this->get_default_option_settings( false, [ 'dynamic' ] );
97
  $default_text_options = $this->get_default_text_option_settings( true );
98
 
99
  return array_merge( $default_options, $default_text_options );
115
  'id' => 0,
116
  'is_new' => true,
117
  'restriction_type' => 'character',
118
+ 'restriction_to' => 'max',
119
  ];
120
 
121
  return array_merge( $defaults, $props );
131
  public function prepare_entry( $field ) {
132
  check_ajax_referer( 'wpuf_form_add' );
133
 
134
+ $field = isset( $_POST[ $field['name'] ] ) ? sanitize_text_field( wp_unslash( $_POST[ $field['name'] ] ) ) : '';
135
  return $field;
136
  }
137
  }
includes/fields/class-field-text.php CHANGED
@@ -54,14 +54,15 @@ class WPUF_Form_Field_Text extends WPUF_Field_Contract {
54
  $field_settings['content_restriction'],
55
  'no',
56
  $field_settings['name'] . '_' . $form_id,
57
- $field_settings['restriction_type']
 
58
  );
59
  }
60
 
61
- $mask_option = isset( $field_settings['mask_options'] ) ? $field_settings['mask_options'] : '';
62
 
63
- if ( $mask_option ) {
64
- ?>
65
  <script>
66
  jQuery(document).ready(function($) {
67
  var text_field = $( "input[name*=<?php echo esc_attr( $field_settings['name'] ); ?>]" );
@@ -87,12 +88,14 @@ class WPUF_Form_Field_Text extends WPUF_Field_Contract {
87
  });
88
  </script>
89
 
90
- <?php
91
- } ?>
 
92
 
93
  </li>
94
 
95
- <?php $this->after_field_print_label();
 
96
  }
97
 
98
  /**
@@ -101,7 +104,7 @@ class WPUF_Form_Field_Text extends WPUF_Field_Contract {
101
  * @return array
102
  */
103
  public function get_options_settings() {
104
- $default_options = $this->get_default_option_settings();
105
 
106
  $default_text_options = $this->get_default_text_option_settings( true );
107
 
@@ -118,7 +121,7 @@ class WPUF_Form_Field_Text extends WPUF_Field_Contract {
118
  public function get_field_props() {
119
  $defaults = $this->default_attributes();
120
 
121
- $props = [
122
  'input_type' => 'text',
123
  'label' => __( 'Text', 'wp-user-frontend' ),
124
  'is_meta' => 'yes',
@@ -127,7 +130,8 @@ class WPUF_Form_Field_Text extends WPUF_Field_Contract {
127
  'is_new' => true,
128
  'show_in_post' => 'yes',
129
  'hide_field_label' => 'no',
130
- 'restriction_type' => 'character'
 
131
  ];
132
 
133
  return array_merge( $defaults, $props );
@@ -143,7 +147,7 @@ class WPUF_Form_Field_Text extends WPUF_Field_Contract {
143
  public function prepare_entry( $field ) {
144
  check_ajax_referer( 'wpuf_form_add' );
145
 
146
- $value = isset( $_POST[$field['name']] ) ? sanitize_text_field( wp_unslash( $_POST[$field['name']] ) ) : '';
147
  // return sanitize_text_field( trim( $_POST[$field['name']] ) );
148
  return $value;
149
  }
@@ -159,7 +163,7 @@ class WPUF_Form_Field_Text extends WPUF_Field_Contract {
159
  * @return string
160
  */
161
  public function render_field_data( $data, $field ) {
162
- $data = implode( ',' , $data );
163
  $hide_label = isset( $field['hide_field_label'] )
164
  ? wpuf_validate_boolean( $field['hide_field_label'] )
165
  : false;
@@ -172,8 +176,8 @@ class WPUF_Form_Field_Text extends WPUF_Field_Contract {
172
 
173
  ob_start();
174
  ?>
175
- <li class="<?php echo esc_attr( implode( ' ' , $container_classnames ) ); ?>">
176
- <?php if ( ! $hide_label ): ?>
177
  <label><?php echo esc_html( $field['label'] ); ?>:</label>
178
  <?php endif; ?>
179
  <?php echo esc_html( $data ); ?>
54
  $field_settings['content_restriction'],
55
  'no',
56
  $field_settings['name'] . '_' . $form_id,
57
+ $field_settings['restriction_type'],
58
+ $field_settings['restriction_to']
59
  );
60
  }
61
 
62
+ $mask_option = isset( $field_settings['mask_options'] ) ? $field_settings['mask_options'] : '';
63
 
64
+ if ( $mask_option ) {
65
+ ?>
66
  <script>
67
  jQuery(document).ready(function($) {
68
  var text_field = $( "input[name*=<?php echo esc_attr( $field_settings['name'] ); ?>]" );
88
  });
89
  </script>
90
 
91
+ <?php
92
+ }
93
+ ?>
94
 
95
  </li>
96
 
97
+ <?php
98
+ $this->after_field_print_label();
99
  }
100
 
101
  /**
104
  * @return array
105
  */
106
  public function get_options_settings() {
107
+ $default_options = $this->get_default_option_settings();
108
 
109
  $default_text_options = $this->get_default_text_option_settings( true );
110
 
121
  public function get_field_props() {
122
  $defaults = $this->default_attributes();
123
 
124
+ $props = [
125
  'input_type' => 'text',
126
  'label' => __( 'Text', 'wp-user-frontend' ),
127
  'is_meta' => 'yes',
130
  'is_new' => true,
131
  'show_in_post' => 'yes',
132
  'hide_field_label' => 'no',
133
+ 'restriction_type' => 'character',
134
+ 'restriction_to' => 'max',
135
  ];
136
 
137
  return array_merge( $defaults, $props );
147
  public function prepare_entry( $field ) {
148
  check_ajax_referer( 'wpuf_form_add' );
149
 
150
+ $value = isset( $_POST[ $field['name'] ] ) ? sanitize_text_field( wp_unslash( $_POST[ $field['name'] ] ) ) : '';
151
  // return sanitize_text_field( trim( $_POST[$field['name']] ) );
152
  return $value;
153
  }
163
  * @return string
164
  */
165
  public function render_field_data( $data, $field ) {
166
+ $data = implode( ',', $data );
167
  $hide_label = isset( $field['hide_field_label'] )
168
  ? wpuf_validate_boolean( $field['hide_field_label'] )
169
  : false;
176
 
177
  ob_start();
178
  ?>
179
+ <li class="<?php echo esc_attr( implode( ' ', $container_classnames ) ); ?>">
180
+ <?php if ( ! $hide_label ) : ?>
181
  <label><?php echo esc_html( $field['label'] ); ?>:</label>
182
  <?php endif; ?>
183
  <?php echo esc_html( $data ); ?>
includes/fields/class-field-textarea.php CHANGED
@@ -1,8 +1,8 @@
1
- <?php
2
 
3
  /**
4
- * Textarea Field Class
5
- */
6
  class WPUF_Form_Field_Textarea extends WPUF_Field_Contract {
7
 
8
  public function __construct() {
@@ -11,16 +11,16 @@ class WPUF_Form_Field_Textarea extends WPUF_Field_Contract {
11
  $this->icon = 'paragraph';
12
  }
13
 
14
- /**
15
- * Render the Textarea field
16
- *
17
- * @param array $field_settings
18
- * @param int $form_id
19
- * @param string $type
20
- * @param int $post_id
21
- *
22
- * @return void
23
- */
24
  public function render( $field_settings, $form_id, $type = 'post', $post_id = null ) {
25
  if ( isset( $post_id ) && $post_id != '0' ) {
26
  if ( $this->is_meta( $field_settings ) ) {
@@ -35,39 +35,39 @@ class WPUF_Form_Field_Textarea extends WPUF_Field_Contract {
35
 
36
  $this->field_print_label( $field_settings, $form_id ); ?>
37
 
38
- <?php if ( in_array( $field_settings['rich'], [ 'yes', 'teeny' ] ) ) { ?>
39
  <div class="wpuf-fields wpuf-rich-validation <?php printf( 'wpuf_%s_%s', esc_attr( $field_settings['name'] ), esc_attr( $form_id ) ); ?>" data-type="rich" data-required="<?php echo esc_attr( $field_settings['required'] ); ?>" data-id="<?php echo esc_attr( $field_settings['name'] ) . '_' . esc_attr( $form_id ); ?>" data-name="<?php echo esc_attr( $field_settings['name'] ); ?>">
40
  <?php } else { ?>
41
  <div class="wpuf-fields">
42
  <?php } ?>
43
 
44
- <?php
45
-
46
- if ( $field_settings['rich'] == 'yes' ) {
47
- $editor_settings = [
48
- 'textarea_rows' => $field_settings['rows'],
49
- 'quicktags' => false,
50
- 'media_buttons' => false,
51
- 'editor_class' => $req_class,
52
- 'textarea_name' => $field_settings['name'],
53
- ];
54
-
55
- $editor_settings = apply_filters( 'wpuf_textarea_editor_args', $editor_settings );
56
- wp_editor( $value, $textarea_id, $editor_settings );
57
- } elseif ( $field_settings['rich'] == 'teeny' ) {
58
- $editor_settings = [
59
- 'textarea_rows' => $field_settings['rows'],
60
- 'quicktags' => false,
61
- 'media_buttons' => false,
62
- 'teeny' => true,
63
- 'editor_class' => $req_class,
64
- 'textarea_name' => $field_settings['name'],
65
- ];
66
-
67
- $editor_settings = apply_filters( 'wpuf_textarea_editor_args', $editor_settings );
68
- wp_editor( $value, $textarea_id, $editor_settings );
69
- } else {
70
- ?>
71
  <textarea
72
  class="textareafield <?php echo esc_attr( ' wpuf_' . $field_settings['name'] . '_' . $form_id ); ?>"
73
  id="<?php echo esc_attr( $field_settings['name'] . '_' . $form_id ); ?>"
@@ -80,30 +80,32 @@ class WPUF_Form_Field_Textarea extends WPUF_Field_Contract {
80
  ><?php echo esc_textarea( $value ); ?></textarea>
81
  <span class="wpuf-wordlimit-message wpuf-help"></span>
82
 
83
- <?php
84
- } ?>
85
-
86
- <?php
87
- $this->help_text( $field_settings );
88
- error_log(print_r($field_settings, true));
89
-
90
- if ( isset( $field_settings['content_restriction'] ) && $field_settings['content_restriction'] ) {
91
- $this->check_content_restriction_func(
92
- $field_settings['content_restriction'],
93
- 'no',
94
- $field_settings['name'] . '_' . $form_id,
95
- $field_settings['restriction_type']
96
- );
97
- } ?>
98
-
99
- <?php $this->after_field_print_label();
 
 
100
  }
101
 
102
- /**
103
- * Get field options setting
104
- *
105
- * @return array
106
- */
107
  public function get_options_settings() {
108
  $default_options = $this->get_default_option_settings();
109
  $default_text_options = $this->get_default_textarea_option_settings();
@@ -111,11 +113,11 @@ class WPUF_Form_Field_Textarea extends WPUF_Field_Contract {
111
  return array_merge( $default_options, $default_text_options );
112
  }
113
 
114
- /**
115
- * Get the field props
116
- *
117
- * @return array
118
- */
119
  public function get_field_props() {
120
  $defaults = $this->default_attributes();
121
  $props = [
@@ -129,41 +131,42 @@ class WPUF_Form_Field_Textarea extends WPUF_Field_Contract {
129
  'is_new' => true,
130
  'show_in_post' => 'yes',
131
  'hide_field_label' => 'no',
132
- 'restriction_type' => 'character'
 
133
  ];
134
 
135
  return array_merge( $defaults, $props );
136
  }
137
 
138
- /**
139
- * Prepare entry
140
- *
141
- * @param $field
142
- *
143
- * @return mixed
144
- */
145
  public function prepare_entry( $field ) {
146
  check_ajax_referer( 'wpuf_form_add' );
147
 
148
- $field = isset( $_POST[$field['name']] ) ? sanitize_text_field( wp_unslash( $_POST[$field['name']] ) ) : '';
149
  return trim( $field );
150
  }
151
 
152
- /**
153
- * Render textarea field data
154
- *
155
- * @since 3.3.0
156
- *
157
- * @param mixed $data
158
- * @param array $field
159
- *
160
- * @return string
161
- */
162
  public function render_field_data( $data, $field ) {
163
- $data = implode( ',' , $data );
164
  $hide_label = isset( $field['hide_field_label'] )
165
- ? wpuf_validate_boolean( $field['hide_field_label'] )
166
- : false;
167
 
168
  if ( empty( $data ) ) {
169
  return '';
@@ -173,26 +176,26 @@ class WPUF_Form_Field_Textarea extends WPUF_Field_Contract {
173
 
174
  ob_start();
175
  ?>
176
- <li class="<?php echo esc_attr( implode( ' ' , $container_classnames ) ); ?>">
177
- <?php if ( ! $hide_label ): ?>
178
  <label><?php echo esc_html( $field['label'] ); ?>:</label>
179
  <?php endif; ?>
180
- <?php echo wp_kses_post( wpautop( make_clickable( $data ) ) ); ?>
181
  </li>
182
- <?php
183
- return ob_get_clean();
184
  }
185
 
186
- /**
187
- * Sanitize field data
188
- *
189
- * @since 3.3.1
190
- *
191
- * @param string $data
192
- * @param array $field
193
- *
194
- * @return string
195
- */
196
  public function sanitize_field_data( $data, $field ) {
197
  return wp_kses_post( $data );
198
  }
1
+ <?php
2
 
3
  /**
4
+ * Textarea Field Class
5
+ */
6
  class WPUF_Form_Field_Textarea extends WPUF_Field_Contract {
7
 
8
  public function __construct() {
11
  $this->icon = 'paragraph';
12
  }
13
 
14
+ /**
15
+ * Render the Textarea field
16
+ *
17
+ * @param array $field_settings
18
+ * @param int $form_id
19
+ * @param string $type
20
+ * @param int $post_id
21
+ *
22
+ * @return void
23
+ */
24
  public function render( $field_settings, $form_id, $type = 'post', $post_id = null ) {
25
  if ( isset( $post_id ) && $post_id != '0' ) {
26
  if ( $this->is_meta( $field_settings ) ) {
35
 
36
  $this->field_print_label( $field_settings, $form_id ); ?>
37
 
38
+ <?php if ( in_array( $field_settings['rich'], [ 'yes', 'teeny' ] ) ) { ?>
39
  <div class="wpuf-fields wpuf-rich-validation <?php printf( 'wpuf_%s_%s', esc_attr( $field_settings['name'] ), esc_attr( $form_id ) ); ?>" data-type="rich" data-required="<?php echo esc_attr( $field_settings['required'] ); ?>" data-id="<?php echo esc_attr( $field_settings['name'] ) . '_' . esc_attr( $form_id ); ?>" data-name="<?php echo esc_attr( $field_settings['name'] ); ?>">
40
  <?php } else { ?>
41
  <div class="wpuf-fields">
42
  <?php } ?>
43
 
44
+ <?php
45
+
46
+ if ( $field_settings['rich'] == 'yes' ) {
47
+ $editor_settings = [
48
+ 'textarea_rows' => $field_settings['rows'],
49
+ 'quicktags' => false,
50
+ 'media_buttons' => false,
51
+ 'editor_class' => $req_class,
52
+ 'textarea_name' => $field_settings['name'],
53
+ ];
54
+
55
+ $editor_settings = apply_filters( 'wpuf_textarea_editor_args', $editor_settings );
56
+ wp_editor( $value, $textarea_id, $editor_settings );
57
+ } elseif ( $field_settings['rich'] == 'teeny' ) {
58
+ $editor_settings = [
59
+ 'textarea_rows' => $field_settings['rows'],
60
+ 'quicktags' => false,
61
+ 'media_buttons' => false,
62
+ 'teeny' => true,
63
+ 'editor_class' => $req_class,
64
+ 'textarea_name' => $field_settings['name'],
65
+ ];
66
+
67
+ $editor_settings = apply_filters( 'wpuf_textarea_editor_args', $editor_settings );
68
+ wp_editor( $value, $textarea_id, $editor_settings );
69
+ } else {
70
+ ?>
71
  <textarea
72
  class="textareafield <?php echo esc_attr( ' wpuf_' . $field_settings['name'] . '_' . $form_id ); ?>"
73
  id="<?php echo esc_attr( $field_settings['name'] . '_' . $form_id ); ?>"
80
  ><?php echo esc_textarea( $value ); ?></textarea>
81
  <span class="wpuf-wordlimit-message wpuf-help"></span>
82
 
83
+ <?php
84
+ }
85
+ ?>
86
+
87
+ <?php
88
+ $this->help_text( $field_settings );
89
+ if ( isset( $field_settings['content_restriction'] ) && $field_settings['content_restriction'] ) {
90
+ $this->check_content_restriction_func(
91
+ $field_settings['content_restriction'],
92
+ 'no',
93
+ $field_settings['name'] . '_' . $form_id,
94
+ $field_settings['restriction_type'],
95
+ $field_settings['restriction_to']
96
+ );
97
+ }
98
+ ?>
99
+
100
+ <?php
101
+ $this->after_field_print_label();
102
  }
103
 
104
+ /**
105
+ * Get field options setting
106
+ *
107
+ * @return array
108
+ */
109
  public function get_options_settings() {
110
  $default_options = $this->get_default_option_settings();
111
  $default_text_options = $this->get_default_textarea_option_settings();
113
  return array_merge( $default_options, $default_text_options );
114
  }
115
 
116
+ /**
117
+ * Get the field props
118
+ *
119
+ * @return array
120
+ */
121
  public function get_field_props() {
122
  $defaults = $this->default_attributes();
123
  $props = [
131
  'is_new' => true,
132
  'show_in_post' => 'yes',
133
  'hide_field_label' => 'no',
134
+ 'restriction_type' => 'character',
135
+ 'restriction_to' => 'max',
136
  ];
137
 
138
  return array_merge( $defaults, $props );
139
  }
140
 
141
+ /**
142
+ * Prepare entry
143
+ *
144
+ * @param $field
145
+ *
146
+ * @return mixed
147
+ */
148
  public function prepare_entry( $field ) {
149
  check_ajax_referer( 'wpuf_form_add' );
150
 
151
+ $field = isset( $_POST[ $field['name'] ] ) ? sanitize_text_field( wp_unslash( $_POST[ $field['name'] ] ) ) : '';
152
  return trim( $field );
153
  }
154
 
155
+ /**
156
+ * Render textarea field data
157
+ *
158
+ * @since 3.3.0
159
+ *
160
+ * @param mixed $data
161
+ * @param array $field
162
+ *
163
+ * @return string
164
+ */
165
  public function render_field_data( $data, $field ) {
166
+ $data = implode( ',', $data );
167
  $hide_label = isset( $field['hide_field_label'] )
168
+ ? wpuf_validate_boolean( $field['hide_field_label'] )
169
+ : false;
170
 
171
  if ( empty( $data ) ) {
172
  return '';
176
 
177
  ob_start();
178
  ?>
179
+ <li class="<?php echo esc_attr( implode( ' ', $container_classnames ) ); ?>">
180
+ <?php if ( ! $hide_label ) : ?>
181
  <label><?php echo esc_html( $field['label'] ); ?>:</label>
182
  <?php endif; ?>
183
+ <?php echo wp_kses_post( wpautop( make_clickable( $data ) ) ); ?>
184
  </li>
185
+ <?php
186
+ return ob_get_clean();
187
  }
188
 
189
+ /**
190
+ * Sanitize field data
191
+ *
192
+ * @since 3.3.1
193
+ *
194
+ * @param string $data
195
+ * @param array $field
196
+ *
197
+ * @return string
198
+ */
199
  public function sanitize_field_data( $data, $field ) {
200
  return wp_kses_post( $data );
201
  }
includes/free/class-login.php CHANGED
@@ -371,10 +371,11 @@ class WPUF_Simple_Login {
371
  case 'rp':
372
  case 'resetpass':
373
  if ( $reset === 'true' ) {
374
- /* translators: %s: login url */
375
- printf( '<div class="wpuf-message">' . esc_html( __( 'Your password has been reset. %s', 'wp-user-frontend' ) ) . '</div>', sprintf( '<a href="%s">%s</a>', esc_attr( $this->get_action_url( 'login' ) ), esc_html( __( 'Log In', 'wp-user-frontend' ) ) ) );
376
 
377
- return;
 
 
378
  } else {
379
  $this->messages[] = __( 'Enter your new password below.', 'wp-user-frontend' );
380
 
371
  case 'rp':
372
  case 'resetpass':
373
  if ( $reset === 'true' ) {
374
+ $this->messages[] = __( 'Your password has been reset successfully', 'wp-user-frontend' );
 
375
 
376
+ wpuf_load_template( 'login-form.php', $args );
377
+
378
+ break;
379
  } else {
380
  $this->messages[] = __( 'Enter your new password below.', 'wp-user-frontend' );
381
 
includes/free/post-form-templates/woocommerce.php CHANGED
@@ -179,7 +179,7 @@ class WPUF_Post_Form_Template_WooCommerce extends WPUF_Post_Form_Template {
179
  'post_status' => 'publish',
180
  'default_cat' => '-1',
181
  'guest_post' => 'false',
182
- 'message_restrict' => 'This page is restricted. Please Log in / Register to view this page.',
183
  'redirect_to' => 'post',
184
  'comment_status' => 'open',
185
  'submit_text' => 'Create Product',
179
  'post_status' => 'publish',
180
  'default_cat' => '-1',
181
  'guest_post' => 'false',
182
+ 'message_restrict' => 'This page is restricted. Please %login% / %register% to view this page.',
183
  'redirect_to' => 'post',
184
  'comment_status' => 'open',
185
  'submit_text' => 'Create Product',
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.5.19\n"
6
  "Report-Msgid-Bugs-To: https://wedevs.com/contact/\n"
7
- "POT-Creation-Date: 2021-07-16 08:26:33+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -160,78 +160,78 @@ msgstr ""
160
  msgid "Duration"
161
  msgstr ""
162
 
163
- #: admin/class-admin-subscription.php:226
164
- #: admin/class-admin-subscription.php:596 class/frontend-account.php:263
165
  #: class/subscription.php:927 includes/class-user-subscription.php:305
166
  #: templates/subscriptions/pack-details.php:24
167
  msgid "Free"
168
  msgstr ""
169
 
170
- #: admin/class-admin-subscription.php:245
171
  #: admin/html/form-settings-display.php:41 admin/post-forms-list-table.php:360
172
  #: admin/settings-options.php:116 admin/settings-options.php:127
173
  #: admin/settings-options.php:223 admin/settings-options.php:234
174
  #: admin/template.php:63 class/asset-loader.php:50
175
- #: includes/fields/class-abstract-fields.php:253
176
- #: includes/fields/class-abstract-fields.php:334
177
- #: includes/fields/class-abstract-fields.php:348
178
- #: includes/fields/class-abstract-fields.php:412
179
  #: includes/fields/class-field-checkbox.php:74
180
  #: includes/fields/class-field-radio.php:83 includes/free/form-element.php:499
181
- #: wpuf.php:714
182
  msgid "Yes"
183
  msgstr ""
184
 
185
- #: admin/class-admin-subscription.php:247
186
  #: admin/html/form-settings-display.php:40 admin/post-forms-list-table.php:361
187
  #: admin/settings-options.php:117 admin/settings-options.php:128
188
  #: admin/settings-options.php:224 admin/settings-options.php:235
189
  #: admin/template.php:64 class/asset-loader.php:51
190
- #: includes/fields/class-abstract-fields.php:254
191
- #: includes/fields/class-abstract-fields.php:335
192
- #: includes/fields/class-abstract-fields.php:349
193
- #: includes/fields/class-abstract-fields.php:413
194
  #: includes/fields/class-field-checkbox.php:75
195
  #: includes/fields/class-field-radio.php:84 includes/free/form-element.php:500
196
- #: wpuf.php:715
197
  msgid "No"
198
  msgstr ""
199
 
200
- #: admin/class-admin-subscription.php:334 admin/form.php:225
201
  msgid "Payment Settings"
202
  msgstr ""
203
 
204
- #: admin/class-admin-subscription.php:341
205
  msgid "Posting Restriction"
206
  msgstr ""
207
 
208
- #: admin/class-admin-subscription.php:355
209
  msgid "Billing amount:"
210
  msgstr ""
211
 
212
- #: admin/class-admin-subscription.php:356
213
  msgid "Billing amount each cycle:"
214
  msgstr ""
215
 
216
- #: admin/class-admin-subscription.php:364
217
  msgid "Expires In:"
218
  msgstr ""
219
 
220
- #: admin/class-admin-subscription.php:412 admin/form.php:227
221
  #: includes/free/form-element.php:57
222
  msgid "Post Expiration"
223
  msgstr ""
224
 
225
- #: admin/class-admin-subscription.php:417 includes/free/form-element.php:61
226
  msgid "Enable Post Expiration"
227
  msgstr ""
228
 
229
- #: admin/class-admin-subscription.php:428
230
- #: admin/class-admin-subscription.php:691 includes/free/form-element.php:67
231
  msgid "Post Expiration Time"
232
  msgstr ""
233
 
234
- #: admin/class-admin-subscription.php:451 admin/html/form-settings-post.php:56
235
  #: admin/post-forms-list-table.php:313
236
  msgid "Post Status"
237
  msgstr ""
@@ -260,74 +260,74 @@ msgstr ""
260
  msgid "You may use: {post_author} {post_url} {blogname} {post_title} {post_status}"
261
  msgstr ""
262
 
263
- #: admin/class-admin-subscription.php:545
264
  msgid "Day(s)"
265
  msgstr ""
266
 
267
- #: admin/class-admin-subscription.php:546
268
  msgid "Week(s)"
269
  msgstr ""
270
 
271
- #: admin/class-admin-subscription.php:547
272
  msgid "Month(s)"
273
  msgstr ""
274
 
275
- #: admin/class-admin-subscription.php:548
276
  msgid "Year(s)"
277
  msgstr ""
278
 
279
- #: admin/class-admin-subscription.php:588
280
  msgid "WPUF Subscription Information"
281
  msgstr ""
282
 
283
- #: admin/class-admin-subscription.php:600
284
- msgid "For each %s %s"
285
  msgstr ""
286
 
287
- #: admin/class-admin-subscription.php:601 class/frontend-account.php:269
288
  #. translators: %s: number of installments
289
  msgid ", for %s installments"
290
  msgstr ""
291
 
292
- #: admin/class-admin-subscription.php:611
293
  msgid "Subcription Name"
294
  msgstr ""
295
 
296
- #: admin/class-admin-subscription.php:621
297
  msgid "Billing Info"
298
  msgstr ""
299
 
300
- #: admin/class-admin-subscription.php:635
301
  msgid "This user is using recurring subscription pack"
302
  msgstr ""
303
 
304
- #: admin/class-admin-subscription.php:641
305
  msgid "Remaining Posting Count"
306
  msgstr ""
307
 
308
- #: admin/class-admin-subscription.php:661
309
  msgid "Subscription Expiration Info"
310
  msgstr ""
311
 
312
- #: admin/class-admin-subscription.php:669
313
  #: includes/class-user-subscription.php:354
314
  #: templates/dashboard/subscription.php:46
315
  msgid "Expire date:"
316
  msgstr ""
317
 
318
- #: admin/class-admin-subscription.php:681
319
  msgid "Post Expiration Enabled"
320
  msgstr ""
321
 
322
- #: admin/class-admin-subscription.php:715
323
  msgid "Allowed Taxonomy Terms"
324
  msgstr ""
325
 
326
- #: admin/class-admin-subscription.php:773
327
  msgid "Assign Package"
328
  msgstr ""
329
 
330
- #: admin/class-admin-subscription.php:774
331
  #: admin/form-builder/class-wpuf-admin-form-builder.php:284
332
  #: class/payment.php:225 class/subscription.php:825
333
  #: includes/class-list-table-subscribers.php:138 lib/appsero/Insights.php:764
@@ -335,24 +335,24 @@ msgstr ""
335
  msgid "Cancel"
336
  msgstr ""
337
 
338
- #: admin/class-admin-subscription.php:780
339
  msgid "Select Package:"
340
  msgstr ""
341
 
342
- #: admin/class-admin-subscription.php:783 admin/settings-options.php:572
343
  #: wpuf-functions.php:210 wpuf-functions.php:1808 wpuf-functions.php:2056
344
  msgid "&mdash; Select &mdash;"
345
  msgstr ""
346
 
347
- #: admin/class-admin-subscription.php:787
348
  msgid "Only non-recurring pack can be assigned"
349
  msgstr ""
350
 
351
- #: admin/class-admin-subscription.php:797
352
  msgid "Delete Package"
353
  msgstr ""
354
 
355
- #: admin/class-admin-subscription.php:850
356
  msgid "Learn more about <a href=\"%s\" target=\"_blank\">Subscription</a>"
357
  msgstr ""
358
 
@@ -366,7 +366,7 @@ msgstr ""
366
 
367
  #: admin/class-tools.php:43 admin/class-tools.php:106
368
  #: admin/post-forms-list-table.php:43 class/transactions-list-table.php:90
369
- #: includes/class-list-table-subscribers.php:136 wpuf-functions.php:3336
370
  msgid "All"
371
  msgstr ""
372
 
@@ -553,7 +553,7 @@ msgid "Select Image"
553
  msgstr ""
554
 
555
  #: admin/form-builder/assets/js/components/form-post_content/template.php:4
556
- #: class/render-form.php:1052 includes/fields/class-field-post-content.php:48
557
  msgid "Insert Photo"
558
  msgstr ""
559
 
@@ -593,12 +593,12 @@ msgid "Are you sure you want to delete this field?"
593
  msgstr ""
594
 
595
  #: admin/form-builder/class-wpuf-admin-form-builder.php:281
596
- #: admin/posting.php:73 class/asset-loader.php:56 wpuf.php:724
597
  msgid "Yes, delete it"
598
  msgstr ""
599
 
600
  #: admin/form-builder/class-wpuf-admin-form-builder.php:282
601
- #: admin/posting.php:74 class/asset-loader.php:57 wpuf.php:725
602
  msgid "No, cancel it"
603
  msgstr ""
604
 
@@ -644,7 +644,7 @@ msgid "Get the Pro version"
644
  msgstr ""
645
 
646
  #: admin/form-builder/class-wpuf-admin-form-builder.php:293
647
- #: includes/fields/class-abstract-fields.php:387
648
  msgid "Select"
649
  msgstr ""
650
 
@@ -858,7 +858,7 @@ msgid "Right of Element"
858
  msgstr ""
859
 
860
  #: admin/html/form-settings-display.php:19 includes/class-customizer.php:104
861
- #: includes/fields/class-abstract-fields.php:306
862
  msgid "Hidden"
863
  msgstr ""
864
 
@@ -878,75 +878,83 @@ msgstr ""
878
  msgid "Form Style"
879
  msgstr ""
880
 
881
- #: admin/html/form-settings-payment.php:20
882
  msgid "Payment Options"
883
  msgstr ""
884
 
885
- #: admin/html/form-settings-payment.php:25 admin/settings-options.php:389
886
  #: includes/setup-wizard.php:301
887
  msgid "Enable Payments"
888
  msgstr ""
889
 
890
- #: admin/html/form-settings-payment.php:27
891
  msgid "Check to enable Payments for this form."
892
  msgstr ""
893
 
894
- #: admin/html/form-settings-payment.php:32
895
  msgid "Force Pack"
896
  msgstr ""
897
 
898
- #: admin/html/form-settings-payment.php:37
899
  msgid "Force subscription pack"
900
  msgstr ""
901
 
902
- #: admin/html/form-settings-payment.php:39
903
  msgid "Force users to purchase and use subscription pack."
904
  msgstr ""
905
 
906
- #: admin/html/form-settings-payment.php:44
907
  msgid "Fallback to pay per post"
908
  msgstr ""
909
 
910
- #: admin/html/form-settings-payment.php:49
911
  msgid "Fallback pay per post charging"
912
  msgstr ""
913
 
914
- #: admin/html/form-settings-payment.php:51
915
  msgid "Fallback to pay per post charging if pack limit exceeds"
916
  msgstr ""
917
 
918
- #: admin/html/form-settings-payment.php:56
919
  msgid "Fallback cost"
920
  msgstr ""
921
 
922
- #: admin/html/form-settings-payment.php:61
923
  msgid "Cost of pay per post after a subscription pack limit is reached."
924
  msgstr ""
925
 
926
- #: admin/html/form-settings-payment.php:66
927
  msgid "Pay Per Post"
928
  msgstr ""
929
 
930
- #: admin/html/form-settings-payment.php:71
931
  msgid "Enable Pay Per Post"
932
  msgstr ""
933
 
934
- #: admin/html/form-settings-payment.php:73
935
  msgid "Charge users for posting,"
936
  msgstr ""
937
 
938
- #: admin/html/form-settings-payment.php:73
939
  msgid " Learn More about Pay Per Post."
940
  msgstr ""
941
 
942
- #: admin/html/form-settings-payment.php:78
943
  msgid "Cost Settings"
944
  msgstr ""
945
 
946
- #: admin/html/form-settings-payment.php:83
947
  msgid "Amount to be charged per post"
948
  msgstr ""
949
 
 
 
 
 
 
 
 
 
950
  #: admin/html/form-settings-post-edit.php:4
951
  #: admin/html/form-settings-post.php:16
952
  msgid "Post updated successfully"
@@ -1029,8 +1037,7 @@ msgid "After how many hours user will be locked from editing the submitted post.
1029
  msgstr ""
1030
 
1031
  #: admin/html/form-settings-post.php:7 class/post-form-templates/post.php:127
1032
- #: includes/free/post-form-templates/the_events_calendar.php:171
1033
- msgid "This page is restricted. Please Log in / Register to view this page."
1034
  msgstr ""
1035
 
1036
  #: admin/html/form-settings-post.php:15
@@ -1100,7 +1107,7 @@ msgid "It will show a button to save as draft"
1100
  msgstr ""
1101
 
1102
  #: admin/html/form-submission-restriction.php:11 admin/template-post.php:160
1103
- #: includes/fields/class-abstract-fields.php:427
1104
  #: includes/free/edit-profile.php:98 templates/registration-form.php:30
1105
  msgid "Name"
1106
  msgstr ""
@@ -1186,70 +1193,71 @@ msgstr ""
1186
  msgid "Roles"
1187
  msgstr ""
1188
 
1189
- #: admin/html/form-submission-restriction.php:109
1190
  msgid "Choose which roles can submit posts."
1191
  msgstr ""
1192
 
1193
- #: admin/html/form-submission-restriction.php:114
1194
  #: admin/settings-options.php:287
1195
  msgid "Unauthorized Message"
1196
  msgstr ""
1197
 
1198
- #: admin/html/form-submission-restriction.php:117
1199
- #: admin/settings-options.php:288
1200
- msgid "Not logged in users will see this message"
 
1201
  msgstr ""
1202
 
1203
- #: admin/html/form-submission-restriction.php:122
1204
  msgid "Schedule form"
1205
  msgstr ""
1206
 
1207
- #: admin/html/form-submission-restriction.php:127
1208
  msgid "Schedule form for a period"
1209
  msgstr ""
1210
 
1211
- #: admin/html/form-submission-restriction.php:129
1212
  msgid "Schedule for a time period the form is active."
1213
  msgstr ""
1214
 
1215
- #: admin/html/form-submission-restriction.php:134
1216
  msgid "Schedule Period"
1217
  msgstr ""
1218
 
1219
- #: admin/html/form-submission-restriction.php:137
1220
  msgid "From"
1221
  msgstr ""
1222
 
1223
- #: admin/html/form-submission-restriction.php:141
1224
  #: includes/free/form-element.php:230 includes/free/form-element.php:267
1225
  msgid "To"
1226
  msgstr ""
1227
 
1228
- #: admin/html/form-submission-restriction.php:148
1229
  msgid "Form Pending Message"
1230
  msgstr ""
1231
 
1232
- #: admin/html/form-submission-restriction.php:155
1233
  msgid "Form Expired Message"
1234
  msgstr ""
1235
 
1236
- #: admin/html/form-submission-restriction.php:162
1237
  msgid "Limit Entries"
1238
  msgstr ""
1239
 
1240
- #: admin/html/form-submission-restriction.php:167
1241
  msgid "Enable form entry limit"
1242
  msgstr ""
1243
 
1244
- #: admin/html/form-submission-restriction.php:171
1245
  msgid "Limit the number of entries allowed for this form"
1246
  msgstr ""
1247
 
1248
- #: admin/html/form-submission-restriction.php:177
1249
  msgid "Number of Entries"
1250
  msgstr ""
1251
 
1252
- #: admin/html/form-submission-restriction.php:184
1253
  msgid "Limit Reached Message"
1254
  msgstr ""
1255
 
@@ -1340,9 +1348,7 @@ msgstr ""
1340
  msgid "Subscription &amp; Payment"
1341
  msgstr ""
1342
 
1343
- #: admin/html/support.php:282 includes/fields/class-abstract-fields.php:521
1344
- #: includes/fields/class-abstract-fields.php:595
1345
- #: includes/fields/class-abstract-fields.php:703
1346
  msgid "Content Restriction"
1347
  msgstr ""
1348
 
@@ -1415,689 +1421,745 @@ msgid "Contact Support"
1415
  msgstr ""
1416
 
1417
  #: admin/html/whats-new.php:9
1418
- msgid "Google Map field enhanced along with acf google map"
1419
  msgstr ""
1420
 
1421
  #: admin/html/whats-new.php:13
1422
- msgid "Filter added for dashboard account menu"
1423
  msgstr ""
1424
 
1425
  #: admin/html/whats-new.php:17
1426
- msgid "Fallback Pay Per Post inconsistency handled"
1427
  msgstr ""
1428
 
1429
  #: admin/html/whats-new.php:21
1430
- msgid "Google map search field not showing"
1431
  msgstr ""
1432
 
1433
  #: admin/html/whats-new.php:25
1434
- msgid "Form preview page inconsistency with builder"
1435
  msgstr ""
1436
 
1437
  #: admin/html/whats-new.php:29
1438
- msgid "Category not showing as hierarchy"
1439
  msgstr ""
1440
 
1441
  #: admin/html/whats-new.php:33
1442
- msgid "TOC field randering issue with registration form"
1443
  msgstr ""
1444
 
1445
  #: admin/html/whats-new.php:37
1446
- msgid "Custom plupload filter inconsistency with file upload handled"
1447
  msgstr ""
1448
 
1449
  #: admin/html/whats-new.php:41
1450
- msgid "Guest Pay Per Post inconsistency handled"
1451
  msgstr ""
1452
 
1453
  #: admin/html/whats-new.php:45
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1454
  msgid "Responsive and font issue handled"
1455
  msgstr ""
1456
 
1457
- #: admin/html/whats-new.php:56
1458
  msgid "Preview page added for post form and registration form"
1459
  msgstr ""
1460
 
1461
- #: admin/html/whats-new.php:60
1462
  msgid "Post types menu on account page added"
1463
  msgstr ""
1464
 
1465
- #: admin/html/whats-new.php:64
1466
  msgid "Dashboard shortcode attributes enhanced"
1467
  msgstr ""
1468
 
1469
- #: admin/html/whats-new.php:68
1470
  msgid "Account page post type list new design"
1471
  msgstr ""
1472
 
1473
- #: admin/html/whats-new.php:72
1474
  msgid "Payment page restricted from direct unauthenticated access"
1475
  msgstr ""
1476
 
1477
- #: admin/html/whats-new.php:76
1478
  msgid "Timepicker conflict with dokan handled"
1479
  msgstr ""
1480
 
1481
- #: admin/html/whats-new.php:80
1482
  msgid "Trial inconsistency with paypal fixed"
1483
  msgstr ""
1484
 
1485
- #: admin/html/whats-new.php:84
1486
  msgid "Subscription does not cancel with paypal due to profile missing id"
1487
  msgstr ""
1488
 
1489
- #: admin/html/whats-new.php:88
1490
  msgid "Subscription email notification inconsistency fixed"
1491
  msgstr ""
1492
 
1493
- #: admin/html/whats-new.php:92
1494
  msgid "Various issues on payment page for non-logged in user handled"
1495
  msgstr ""
1496
 
1497
- #: admin/html/whats-new.php:96
1498
  msgid "Column inner field cloning inconsistency fixed"
1499
  msgstr ""
1500
 
1501
- #: admin/html/whats-new.php:100
1502
  msgid "Popup z-index changed due to other plugin z-index"
1503
  msgstr ""
1504
 
1505
- #: admin/html/whats-new.php:112
1506
  msgid "Added Mauritian Rupee for currency"
1507
  msgstr ""
1508
 
1509
- #: admin/html/whats-new.php:116
1510
  msgid "Added eid promotional offer notice"
1511
  msgstr ""
1512
 
1513
- #: admin/html/whats-new.php:120
1514
  msgid "Multiple google map validation for same form"
1515
  msgstr ""
1516
 
1517
- #: admin/html/whats-new.php:124
1518
  msgid "Various issues on verification, autologin payments & address field"
1519
  msgstr ""
1520
 
1521
- #: admin/html/whats-new.php:128
1522
  msgid "Docs update for file & attachments feature which is pro only"
1523
  msgstr ""
1524
 
1525
- #: admin/html/whats-new.php:139
1526
  msgid "Overflow footer on form builder page"
1527
  msgstr ""
1528
 
1529
- #: admin/html/whats-new.php:143
1530
  msgid "WordPress 5.7 compatibility"
1531
  msgstr ""
1532
 
1533
- #: admin/html/whats-new.php:147
1534
  msgid "Limited time promotion for weDevs birthday"
1535
  msgstr ""
1536
 
1537
- #: admin/html/whats-new.php:158
1538
  msgid "Meta key will not change if label update"
1539
  msgstr ""
1540
 
1541
- #: admin/html/whats-new.php:162
1542
  msgid "Login redirect empty previous url"
1543
  msgstr ""
1544
 
1545
- #: admin/html/whats-new.php:166
1546
  msgid "Email doesnt set as username"
1547
  msgstr ""
1548
 
1549
- #: admin/html/whats-new.php:170
1550
  msgid "Post redirection to payment doesn't work"
1551
  msgstr ""
1552
 
1553
- #: admin/html/whats-new.php:174
1554
  msgid "Address field not working when used with conditional logic"
1555
  msgstr ""
1556
 
1557
- #: admin/html/whats-new.php:178
1558
  msgid "Ajax type category child of not working"
1559
  msgstr ""
1560
 
1561
- #: admin/html/whats-new.php:182
1562
  msgid "Non recurring subscription did not work"
1563
  msgstr ""
1564
 
1565
- #: admin/html/whats-new.php:193
1566
  msgid "Menu position has chenged due to dokan has same menu position"
1567
  msgstr ""
1568
 
1569
- #: admin/html/whats-new.php:197
1570
  msgid "Drag and drop not working properly for new field"
1571
  msgstr ""
1572
 
1573
- #: admin/html/whats-new.php:208
1574
  msgid "QR and math captcha added to pro feature list"
1575
  msgstr ""
1576
 
1577
- #: admin/html/whats-new.php:212
1578
  msgid "Tooltip for category navigate"
1579
  msgstr ""
1580
 
1581
- #: admin/html/whats-new.php:216
1582
  msgid "Understandable guest payment notice"
1583
  msgstr ""
1584
 
1585
- #: admin/html/whats-new.php:220
1586
  msgid "Paypal non recurring pack id does not set"
1587
  msgstr ""
1588
 
1589
- #: admin/html/whats-new.php:231
1590
  msgid "Once trial subscription is used, it couldn't reset"
1591
  msgstr ""
1592
 
1593
- #: admin/html/whats-new.php:235
1594
  msgid "Subscription cancel doesn't work"
1595
  msgstr ""
1596
 
1597
- #: admin/html/whats-new.php:239
1598
  msgid "The tax rate was not calculated with the total amount"
1599
  msgstr ""
1600
 
1601
- #: admin/html/whats-new.php:243
1602
  msgid "The width of the column field was breaking"
1603
  msgstr ""
1604
 
1605
- #: admin/html/whats-new.php:247
1606
  msgid "Paypal recurring payment"
1607
  msgstr ""
1608
 
1609
- #: admin/html/whats-new.php:258
1610
  msgid "Updated codebase to fix timezone mismatch"
1611
  msgstr ""
1612
 
1613
- #: admin/html/whats-new.php:269
1614
  msgid "Custom html content field's width"
1615
  msgstr ""
1616
 
1617
- #: admin/html/whats-new.php:273
1618
  msgid "All states of New Zealand are added"
1619
  msgstr ""
1620
 
1621
- #: admin/html/whats-new.php:284
1622
  msgid "Get appropriate user id when role based conditions are present"
1623
  msgstr ""
1624
 
1625
- #: admin/html/whats-new.php:288
1626
  msgid "Show Invalid subscription message if wrong pack id passed"
1627
  msgstr ""
1628
 
1629
- #: admin/html/whats-new.php:292
1630
  msgid "URL field new window not working"
1631
  msgstr ""
1632
 
1633
- #: admin/html/whats-new.php:296
1634
  msgid "Option label not working when & use"
1635
  msgstr ""
1636
 
1637
- #: admin/html/whats-new.php:300
1638
  msgid "Ajax type category not showing on edit"
1639
  msgstr ""
1640
 
1641
- #: admin/html/whats-new.php:304
1642
  msgid "Multiple file image can't select"
1643
  msgstr ""
1644
 
1645
- #: admin/html/whats-new.php:308
1646
  msgid "Subscription pack PayPal Checkout gets \"Error: Access Denied\""
1647
  msgstr ""
1648
 
1649
- #: admin/html/whats-new.php:312
1650
  msgid "Conflict image field with acf image field"
1651
  msgstr ""
1652
 
1653
- #: admin/html/whats-new.php:316
1654
  msgid "Missing Auckland State for New Zealand country"
1655
  msgstr ""
1656
 
1657
- #: admin/html/whats-new.php:320
1658
  msgid "Added support for WooCommerce product category value replacemen"
1659
  msgstr ""
1660
 
1661
- #: admin/html/whats-new.php:330
1662
  msgid "Add character restriction feature"
1663
  msgstr ""
1664
 
1665
- #: admin/html/whats-new.php:334
1666
  msgid "Make sure post author edit link works only in frontend"
1667
  msgstr ""
1668
 
1669
- #: admin/html/whats-new.php:338
1670
  msgid "Inconsistency in lost password reset email message"
1671
  msgstr ""
1672
 
1673
- #: admin/html/whats-new.php:342
1674
  msgid "Saving custom taxonomy terms when input type is text"
1675
  msgstr ""
1676
 
1677
- #: admin/html/whats-new.php:346
1678
  msgid "Taxonomy field JS error in builder"
1679
  msgstr ""
1680
 
1681
- #: admin/html/whats-new.php:350
1682
  msgid "Showing WPUF edit link for WP default roles"
1683
  msgstr ""
1684
 
1685
- #: admin/html/whats-new.php:354
1686
  msgid "Upload button unresponsive issue in iOS"
1687
  msgstr ""
1688
 
1689
- #: admin/html/whats-new.php:364
1690
  msgid "Add post edit link for post authors in single or archive pages"
1691
  msgstr ""
1692
 
1693
- #: admin/html/whats-new.php:368
1694
  msgid "Enhance post delete message"
1695
  msgstr ""
1696
 
1697
- #: admin/html/whats-new.php:372
1698
  msgid "Refactor control buttons visibility in form builder"
1699
  msgstr ""
1700
 
1701
- #: admin/html/whats-new.php:376
1702
  msgid "Add missing colons after field label"
1703
  msgstr ""
1704
 
1705
- #: admin/html/whats-new.php:380
1706
  msgid "Post edit map capability condition"
1707
  msgstr ""
1708
 
1709
- #: admin/html/whats-new.php:384
1710
  msgid "Role based permission for accessing a post form"
1711
  msgstr ""
1712
 
1713
- #: admin/html/whats-new.php:388
1714
  msgid "Section-break field alignment"
1715
  msgstr ""
1716
 
1717
- #: admin/html/whats-new.php:392
1718
  msgid "Pay per post doesn't work if subscription pack is activated"
1719
  msgstr ""
1720
 
1721
- #: admin/html/whats-new.php:396
1722
  msgid "Mime type for uploading JSON files"
1723
  msgstr ""
1724
 
1725
- #: admin/html/whats-new.php:400
1726
  msgid "File upload with same file name"
1727
  msgstr ""
1728
 
1729
- #: admin/html/whats-new.php:404
1730
  msgid "Post preview missing fields"
1731
  msgstr ""
1732
 
1733
- #: admin/html/whats-new.php:408
1734
  msgid "Illigal variable declartion"
1735
  msgstr ""
1736
 
1737
- #: admin/html/whats-new.php:412
1738
  msgid "Featured image updating issue"
1739
  msgstr ""
1740
 
1741
- #: admin/html/whats-new.php:416
1742
  msgid "Conflict with Phlox theme"
1743
  msgstr ""
1744
 
1745
- #: admin/html/whats-new.php:420
1746
  msgid "Textarea custom field data sanitization"
1747
  msgstr ""
1748
 
1749
- #: admin/html/whats-new.php:424
1750
  msgid "exclude_type warning in wpuf_category_checklist"
1751
  msgstr ""
1752
 
1753
- #: admin/html/whats-new.php:428
1754
  msgid "Category field not showing all child categories for selection type child of"
1755
  msgstr ""
1756
 
1757
- #: admin/html/whats-new.php:432
1758
  msgid "Conflict between image and file upload custom fields"
1759
  msgstr ""
1760
 
1761
- #: admin/html/whats-new.php:436
1762
  msgid "Login url when login page is not set"
1763
  msgstr ""
1764
 
1765
- #: admin/html/whats-new.php:446
1766
  msgid ""
1767
  "Use common names for Ivory Coast, North Korea and Sourth Korea instead of "
1768
  "their official names"
1769
  msgstr ""
1770
 
1771
- #: admin/html/whats-new.php:450
1772
  msgid "Fix condition to use default avatar"
1773
  msgstr ""
1774
 
1775
- #: admin/html/whats-new.php:454
1776
  msgid "Make Email and URL fields clickable"
1777
  msgstr ""
1778
 
1779
- #: admin/html/whats-new.php:458
1780
  msgid "Fix redirect after user login"
1781
  msgstr ""
1782
 
1783
- #: admin/html/whats-new.php:462
1784
  msgid "Sanitize textarea field data"
1785
  msgstr ""
1786
 
1787
- #: admin/html/whats-new.php:466
1788
  msgid ""
1789
  "Fix missing colon to email, URL, text and textarea labels when renders "
1790
  "their data"
1791
  msgstr ""
1792
 
1793
- #: admin/html/whats-new.php:470
1794
  msgid "Prevent showing empty labels for fields that have render_field_data method"
1795
  msgstr ""
1796
 
1797
- #: admin/html/whats-new.php:480
1798
  msgid "Add Namibian Dollar in currency list"
1799
  msgstr ""
1800
 
1801
- #: admin/html/whats-new.php:484
1802
  msgid "Add sync values option for option data fields"
1803
  msgstr ""
1804
 
1805
- #: admin/html/whats-new.php:488
1806
  msgid "Allow uploading image that having filesize meets php ini settings"
1807
  msgstr ""
1808
 
1809
- #: admin/html/whats-new.php:492
1810
  msgid "Limit the selection of one image at a time"
1811
  msgstr ""
1812
 
1813
- #: admin/html/whats-new.php:496
1814
  msgid "Use file name and size to generate hash to prevent duplicant image upload"
1815
  msgstr ""
1816
 
1817
- #: admin/html/whats-new.php:500
1818
  msgid "Sanitize text and textarea field data"
1819
  msgstr ""
1820
 
1821
- #: admin/html/whats-new.php:504
1822
  msgid ""
1823
  "Show label instead of values for radio, checkbox, dropdown and multiselect "
1824
  "data"
1825
  msgstr ""
1826
 
1827
- #: admin/html/whats-new.php:508
1828
  msgid "Saving custom taxonomies for type text input"
1829
  msgstr ""
1830
 
1831
- #: admin/html/whats-new.php:512
1832
  msgid "Admin settings link for recaptcha helper text"
1833
  msgstr ""
1834
 
1835
- #: admin/html/whats-new.php:516
1836
  msgid "Undefined name property for Custom HTML fields"
1837
  msgstr ""
1838
 
1839
- #: admin/html/whats-new.php:520
1840
  msgid "Delete attachment process"
1841
  msgstr ""
1842
 
1843
- #: admin/html/whats-new.php:524
1844
  msgid "Missing billing address in invoice PDF"
1845
  msgstr ""
1846
 
1847
- #: admin/html/whats-new.php:528
1848
  msgid "Showing country field value in frontend post content"
1849
  msgstr ""
1850
 
1851
- #: admin/html/whats-new.php:532
1852
  msgid "Avatar size display not complying with admin settings size"
1853
  msgstr ""
1854
 
1855
- #: admin/html/whats-new.php:536
1856
  msgid "Display default avatars on admin settings discussion page"
1857
  msgstr ""
1858
 
1859
- #: admin/html/whats-new.php:540
1860
  msgid "Redirect to subscription page at registration"
1861
  msgstr ""
1862
 
1863
- #: admin/html/whats-new.php:544
1864
  msgid "Error notice regarding registration page redirect"
1865
  msgstr ""
1866
 
1867
- #: admin/html/whats-new.php:548
1868
  msgid "Escaping html in registration errors"
1869
  msgstr ""
1870
 
1871
- #: admin/html/whats-new.php:552
1872
  msgid "Default login redirect link"
1873
  msgstr ""
1874
 
1875
- #: admin/html/whats-new.php:556
1876
  msgid "Implementing default WP login page override option"
1877
  msgstr ""
1878
 
1879
- #: admin/html/whats-new.php:560
1880
  msgid "Transparent background of autosuggestion dropdown"
1881
  msgstr ""
1882
 
1883
- #: admin/html/whats-new.php:570
1884
  msgid "Import forms system"
1885
  msgstr ""
1886
 
1887
- #: admin/html/whats-new.php:574
1888
  msgid "Password reset system"
1889
  msgstr ""
1890
 
1891
- #: admin/html/whats-new.php:578
1892
  msgid "Updated url validation regex to support modern tlds"
1893
  msgstr ""
1894
 
1895
- #: admin/html/whats-new.php:582
1896
  msgid "Export WPUF forms individually from admin tools page"
1897
  msgstr ""
1898
 
1899
- #: admin/html/whats-new.php:586
1900
  msgid "Subscription cycle label translation issue"
1901
  msgstr ""
1902
 
1903
- #: admin/html/whats-new.php:590
1904
  msgid "ACF integration for checkbox fields"
1905
  msgstr ""
1906
 
1907
- #: admin/html/whats-new.php:594
1908
  msgid "Illegal string offset warning while updating settings"
1909
  msgstr ""
1910
 
1911
- #: admin/html/whats-new.php:598
1912
  msgid "Conditional logic for Section Break field"
1913
  msgstr ""
1914
 
1915
- #: admin/html/whats-new.php:602
1916
  msgid "Subscriptions cannot be deleted from backend"
1917
  msgstr ""
1918
 
1919
- #: admin/html/whats-new.php:606
1920
  msgid "A regression regarding saving checkbox data"
1921
  msgstr ""
1922
 
1923
- #: admin/html/whats-new.php:610
1924
  msgid "Default value of multi-select fields is not showing"
1925
  msgstr ""
1926
 
1927
- #: admin/html/whats-new.php:620
1928
  msgid "Hide post edit option when subscription is expired"
1929
  msgstr ""
1930
 
1931
- #: admin/html/whats-new.php:622
1932
  msgid "Hide post edit option from users whose subscription pack is expired."
1933
  msgstr ""
1934
 
1935
- #: admin/html/whats-new.php:625
1936
  msgid "Check files to prevent duplicity in media upload"
1937
  msgstr ""
1938
 
1939
- #: admin/html/whats-new.php:627
1940
  msgid ""
1941
  "A simple measure has been taken to prevent maliciously flooding the site by "
1942
  "uploading same file multiple times. Though this won't work with already "
1943
  "uploaded medias."
1944
  msgstr ""
1945
 
1946
- #: admin/html/whats-new.php:630
1947
  msgid "Refactor address fields in Account section"
1948
  msgstr ""
1949
 
1950
- #: admin/html/whats-new.php:632
1951
  msgid "Address edit section from Account section has been rewritten to improve UX."
1952
  msgstr ""
1953
 
1954
- #: admin/html/whats-new.php:635
1955
  msgid "Update Paypal payment gateway"
1956
  msgstr ""
1957
 
1958
- #: admin/html/whats-new.php:637
1959
  msgid "Paypal payment gateway has seen some improvements."
1960
  msgstr ""
1961
 
1962
- #: admin/html/whats-new.php:640
1963
  msgid "Default Category selection improvements"
1964
  msgstr ""
1965
 
1966
- #: admin/html/whats-new.php:642
1967
  msgid ""
1968
  "An intuitive way of selecting default category of a selected post type has "
1969
  "been introduced."
1970
  msgstr ""
1971
 
1972
- #: admin/html/whats-new.php:645
1973
  msgid "Compatibility issue with ACF date time field"
1974
  msgstr ""
1975
 
1976
- #: admin/html/whats-new.php:647
1977
  msgid "A Compatibility issue with ACF date time field has been addressed."
1978
  msgstr ""
1979
 
1980
- #: admin/html/whats-new.php:650
1981
  msgid "Media title, caption & description not saving"
1982
  msgstr ""
1983
 
1984
- #: admin/html/whats-new.php:652
1985
  msgid ""
1986
  "Media title, caption & description were not saving from frontend. They will "
1987
  "now."
1988
  msgstr ""
1989
 
1990
- #: admin/html/whats-new.php:655
1991
  msgid ""
1992
  "The Events Calendar venue and organizer fields issue in WPUF Custom Fields "
1993
  "metabox"
1994
  msgstr ""
1995
 
1996
- #: admin/html/whats-new.php:657
1997
  msgid ""
1998
  "A workaround has been introduced to save The Events Calendar Venue and "
1999
  "Organizer fields properly from WPUF Custom Fields metabox."
2000
  msgstr ""
2001
 
2002
- #: admin/html/whats-new.php:660
2003
  msgid "Checkbox data not saving from WPUF Custom Fields metabox"
2004
  msgstr ""
2005
 
2006
- #: admin/html/whats-new.php:662
2007
  msgid ""
2008
  "Checkboxe data from WPUF Custom Fields metabox were not saving. It has been "
2009
  "fixed."
2010
  msgstr ""
2011
 
2012
- #: admin/html/whats-new.php:665
2013
  msgid "Multi-column Repeater field data saving issue"
2014
  msgstr ""
2015
 
2016
- #: admin/html/whats-new.php:667
2017
  msgid ""
2018
  "Multi-column Repeater field data from a form was not saving. It has been "
2019
  "fixed."
2020
  msgstr ""
2021
 
2022
- #: admin/html/whats-new.php:670
2023
  msgid "Multistep form conflict with Elementor"
2024
  msgstr ""
2025
 
2026
- #: admin/html/whats-new.php:672
2027
  msgid "Multistep form had a conflict with Elementor. It has been fixed."
2028
  msgstr ""
2029
 
2030
- #: admin/html/whats-new.php:675
2031
  msgid "Multiple images showing issue in frontend"
2032
  msgstr ""
2033
 
2034
- #: admin/html/whats-new.php:677
2035
  msgid "Multiple images in a post were not showing in frontend. Now they will."
2036
  msgstr ""
2037
 
2038
- #: admin/html/whats-new.php:686
2039
  msgid "Nonce not verify on login"
2040
  msgstr ""
2041
 
2042
- #: admin/html/whats-new.php:688
2043
  msgid "Return of function wp_verify_nonce() was ignored."
2044
  msgstr ""
2045
 
2046
- #: admin/html/whats-new.php:697
2047
  msgid "Option to set which tab shows as active on the account page"
2048
  msgstr ""
2049
 
2050
- #: admin/html/whats-new.php:699
2051
  msgid ""
2052
  "Option to set which tab shows as active on the account page. To configure "
2053
  "this setting navigate to wp-admin->User Frontend->Settings->My "
2054
  "Account->Active Tab "
2055
  msgstr ""
2056
 
2057
- #: admin/html/whats-new.php:702
2058
  msgid "Unlock option was unavailable after the post being locked"
2059
  msgstr ""
2060
 
2061
- #: admin/html/whats-new.php:704
2062
  msgid "Unlock option was unavailable after the post being locked."
2063
  msgstr ""
2064
 
2065
- #: admin/html/whats-new.php:707
2066
  msgid "Gutenberg block of WPUF didn't work on bedrock installation"
2067
  msgstr ""
2068
 
2069
- #: admin/html/whats-new.php:709
2070
  msgid "Gutenberg block of WPUF didn't work on bedrock installation."
2071
  msgstr ""
2072
 
2073
- #: admin/html/whats-new.php:712
2074
  msgid "Sending admin payment received email twice"
2075
  msgstr ""
2076
 
2077
- #: admin/html/whats-new.php:714
2078
  msgid ""
2079
  "After processing payment admin & user was receiving payment received email "
2080
  "twice."
2081
  msgstr ""
2082
 
2083
- #: admin/html/whats-new.php:717
2084
  msgid ""
2085
  "Add shortcode support to display post information in the Post Expiration "
2086
  "Message"
2087
  msgstr ""
2088
 
2089
- #: admin/html/whats-new.php:719
2090
  msgid ""
2091
  "Add shortcode support to display post information in the Post Expiration "
2092
  "Message. You can use: <strong>{post_author} {post_url} {blogname} "
2093
  "{post_title} {post_status}</strong>"
2094
  msgstr ""
2095
 
2096
- #: admin/html/whats-new.php:722
2097
  msgid "Add optin on the setup wizard"
2098
  msgstr ""
2099
 
2100
- #: admin/html/whats-new.php:724
2101
  msgid ""
2102
  "Added optin on the setup wizard, admin can choose whether he/she wants to "
2103
  "share server environment details (php, mysql, server, WordPress versions), "
@@ -2105,126 +2167,126 @@ msgid ""
2105
  "name and url, admin name and email address. No sensitive data is tracked"
2106
  msgstr ""
2107
 
2108
- #: admin/html/whats-new.php:733
2109
  msgid "Post Owner problem"
2110
  msgstr ""
2111
 
2112
- #: admin/html/whats-new.php:735
2113
  msgid ""
2114
  "Posts were not assigned to the selected default post owner, this issue has "
2115
  "been fixed."
2116
  msgstr ""
2117
 
2118
- #: admin/html/whats-new.php:738
2119
  msgid "Google reCaptcha was not working"
2120
  msgstr ""
2121
 
2122
- #: admin/html/whats-new.php:740
2123
  msgid ""
2124
  "Google reCaptcha was not working, users could submit the form without "
2125
  "reCaptcha validation."
2126
  msgstr ""
2127
 
2128
- #: admin/html/whats-new.php:749
2129
  msgid "Added column field"
2130
  msgstr ""
2131
 
2132
- #: admin/html/whats-new.php:754
2133
  msgid "Unable to render the events on the front-end dashboard"
2134
  msgstr ""
2135
 
2136
- #: admin/html/whats-new.php:756
2137
  msgid ""
2138
  "On the frontend dashboard, the submitted events were not showing, you will "
2139
  "get it fixed in this version."
2140
  msgstr ""
2141
 
2142
- #: admin/html/whats-new.php:759
2143
  msgid "Page order getting 0(zero) after editing from the frontend"
2144
  msgstr ""
2145
 
2146
- #: admin/html/whats-new.php:761
2147
  msgid ""
2148
  "Page order was not saving while editing a post using WPUF form, it has been "
2149
  "fixed."
2150
  msgstr ""
2151
 
2152
- #: admin/html/whats-new.php:764
2153
  msgid "Text input field for taxonomies not working"
2154
  msgstr ""
2155
 
2156
- #: admin/html/whats-new.php:766
2157
  msgid ""
2158
  "When taxonomy field type is set to `Text Input` then a fatal error was "
2159
  "showing on the frontend, no error with taxonomy field in the latest version."
2160
  msgstr ""
2161
 
2162
- #: admin/html/whats-new.php:769
2163
  msgid ""
2164
  "In radio and checkbox field use conditional logic that value does not save "
2165
  "in database"
2166
  msgstr ""
2167
 
2168
- #: admin/html/whats-new.php:771
2169
  msgid ""
2170
  "The selected value of radio and checkbox field were not showing while "
2171
  "editing posts from the backend or frontend, you can see the selected value "
2172
  "in this version."
2173
  msgstr ""
2174
 
2175
- #: admin/html/whats-new.php:774
2176
  msgid "The args param not working with get_avatar filter"
2177
  msgstr ""
2178
 
2179
- #: admin/html/whats-new.php:776
2180
  msgid "The args parameter did not exist with get_avatar filter, which now exists."
2181
  msgstr ""
2182
 
2183
- #: admin/html/whats-new.php:779
2184
  msgid "The item in ajax taxonomy field was not selected"
2185
  msgstr ""
2186
 
2187
- #: admin/html/whats-new.php:781
2188
  msgid ""
2189
  "When the taxonomy field type is set to Ajax, the submitted terms were not "
2190
  "showing in the backend and frontend which have been fixed."
2191
  msgstr ""
2192
 
2193
- #: admin/html/whats-new.php:790
2194
  msgid "Unable to send new user registration email"
2195
  msgstr ""
2196
 
2197
- #: admin/html/whats-new.php:792
2198
  msgid ""
2199
  "WP User Frontend default registration form `[wpuf-registration]` was unable "
2200
  "to send the new user registration email."
2201
  msgstr ""
2202
 
2203
- #: admin/html/whats-new.php:795
2204
  msgid "WPUF forms block compatibility issue with the latest WP version"
2205
  msgstr ""
2206
 
2207
- #: admin/html/whats-new.php:797
2208
  msgid ""
2209
  "With the latest version of WordPress the gutenberg block of WP User "
2210
  "Frontend were not working. In this version, you will get it fixed."
2211
  msgstr ""
2212
 
2213
- #: admin/html/whats-new.php:800
2214
  msgid "Page not update where `[wpuf_dashboard]` shortcode exist"
2215
  msgstr ""
2216
 
2217
- #: admin/html/whats-new.php:802
2218
  msgid ""
2219
  "While using Gutenberg, the page were not being updated with WPUF shortcode "
2220
  "[wpuf dashboard]"
2221
  msgstr ""
2222
 
2223
- #: admin/html/whats-new.php:805
2224
  msgid "Retain default when determining whether to display the admin bar"
2225
  msgstr ""
2226
 
2227
- #: admin/html/whats-new.php:807
2228
  msgid ""
2229
  "From the User Frontend Settings, set that Administrator, Editor, Vendor can "
2230
  "see the admin bar. Now, the super admin want, one specific user ( who has "
@@ -2234,11 +2296,11 @@ msgid ""
2234
  "frontend."
2235
  msgstr ""
2236
 
2237
- #: admin/html/whats-new.php:810
2238
  msgid "Fatal error when use PHP lower version (5.4 or lower)"
2239
  msgstr ""
2240
 
2241
- #: admin/html/whats-new.php:812
2242
  msgid ""
2243
  "It was unable to install WP User Frontend with PHP 5.4 or lower version. "
2244
  "Here is the error details: <br><br><strong>Fatal error: Can't use method "
@@ -2246,42 +2308,42 @@ msgid ""
2246
  "/wp-user-frontend/class/frontend-form-post.php on line 194</strong>"
2247
  msgstr ""
2248
 
2249
- #: admin/html/whats-new.php:815
2250
  msgid "Product form was unable to show the single gallery image"
2251
  msgstr ""
2252
 
2253
- #: admin/html/whats-new.php:817
2254
  msgid ""
2255
  "When user upload single image for product gallery using WPUF WooCommerce "
2256
  "product form, that image were not showing on the frontend."
2257
  msgstr ""
2258
 
2259
- #: admin/html/whats-new.php:826
2260
  msgid "WooCommerce gallery images not getting saved"
2261
  msgstr ""
2262
 
2263
- #: admin/html/whats-new.php:828
2264
  msgid ""
2265
  "After releasing version 2.9.3, WooCommerce gallery image field stopped "
2266
  "working. You will get it fixed in this version."
2267
  msgstr ""
2268
 
2269
- #: admin/html/whats-new.php:837
2270
  msgid "The Events Calendar Integration Form"
2271
  msgstr ""
2272
 
2273
- #: admin/html/whats-new.php:839
2274
  msgid ""
2275
  "Now admin can allow users to create event from the frontend. Currently WPUF "
2276
  "has a one click pre-build event form that has been integrated with The "
2277
  "Events Calendar plugin"
2278
  msgstr ""
2279
 
2280
- #: admin/html/whats-new.php:842
2281
  msgid "Post Submission Facility From Account Page"
2282
  msgstr ""
2283
 
2284
- #: admin/html/whats-new.php:844
2285
  msgid ""
2286
  "On the frontend account page, added a new menu item named <b>Submit "
2287
  "Post</b>. Now admin can allow users to submit post from their default "
@@ -2290,504 +2352,504 @@ msgid ""
2290
  "you can assign any post form that will use to submit posts."
2291
  msgstr ""
2292
 
2293
- #: admin/html/whats-new.php:847
2294
  msgid "Login/Lost Password Link Under Registration Form"
2295
  msgstr ""
2296
 
2297
- #: admin/html/whats-new.php:849
2298
  msgid "Added Login/Lost Password link under registration form"
2299
  msgstr ""
2300
 
2301
- #: admin/html/whats-new.php:858
2302
  msgid "Added drag and drop image ordering on image upload"
2303
  msgstr ""
2304
 
2305
- #: admin/html/whats-new.php:860
2306
  msgid ""
2307
  "Now frontend users can drag & drop the images/files to change the order "
2308
  "while uploading."
2309
  msgstr ""
2310
 
2311
- #: admin/html/whats-new.php:863
2312
  msgid "Added reCAPTCHA field in login form"
2313
  msgstr ""
2314
 
2315
- #: admin/html/whats-new.php:865
2316
  msgid ""
2317
  "Admin has the option to show reCAPTCHA field in login form. Check the "
2318
  "related settings from <strong>User Frontend > Settings > "
2319
  "Login/Registration</strong>"
2320
  msgstr ""
2321
 
2322
- #: admin/html/whats-new.php:868
2323
  msgid "Added preview option in forms"
2324
  msgstr ""
2325
 
2326
- #: admin/html/whats-new.php:870
2327
  msgid ""
2328
  "You can see a nice <strong>Preview</strong> button with <strong>Save "
2329
  "Form</strong> button, admin can take a quick look of the form without using "
2330
  "shortcode"
2331
  msgstr ""
2332
 
2333
- #: admin/html/whats-new.php:873
2334
  msgid "Fixed hiding “Select Image” button while uploading multiple images."
2335
  msgstr ""
2336
 
2337
- #: admin/html/whats-new.php:875
2338
  msgid ""
2339
  "The upload button will not be hidden until the user selects max number of "
2340
  "files "
2341
  msgstr ""
2342
 
2343
- #: admin/html/whats-new.php:878
2344
  msgid "Added form limit notice before form submission"
2345
  msgstr ""
2346
 
2347
- #: admin/html/whats-new.php:880
2348
  msgid ""
2349
  "Limit notice message was showing after submission, now it is showing when "
2350
  "rendering the form"
2351
  msgstr ""
2352
 
2353
- #: admin/html/whats-new.php:883
2354
  msgid "Fixed: default post category not saving"
2355
  msgstr ""
2356
 
2357
- #: admin/html/whats-new.php:885
2358
  msgid ""
2359
  "From the form <strong>Settings > Post Settings</strong>, default post "
2360
  "category options were not saving. Now, it's fixed."
2361
  msgstr ""
2362
 
2363
- #: admin/html/whats-new.php:888
2364
  msgid ""
2365
  "WPUF dashboard shortcode with form_id attribute was not showing posts "
2366
  "properly"
2367
  msgstr ""
2368
 
2369
- #: admin/html/whats-new.php:890
2370
  msgid ""
2371
  "Now you can list posts on the frontend by using <strong>form_id<strong/> "
2372
  "attribute with <strong>[wpuf_dashboard]</strong> shortcode"
2373
  msgstr ""
2374
 
2375
- #: admin/html/whats-new.php:899
2376
  msgid "Changed text domain to `wp-user-frontend` from `wpuf` "
2377
  msgstr ""
2378
 
2379
- #: admin/html/whats-new.php:901
2380
  msgid ""
2381
  "If you are using other language than English. Please <b>rename</b> your "
2382
  "<i>.po and .mo </i> files to `wp-user-frontend_` from `wpuf_` <br> This "
2383
  "change was made to support translations from translate.wordpress.org"
2384
  msgstr ""
2385
 
2386
- #: admin/html/whats-new.php:904
2387
  msgid "Added WP User Frontend Data export and erase functionality."
2388
  msgstr ""
2389
 
2390
- #: admin/html/whats-new.php:906
2391
  msgid "Added functionality to export WP User Frontend Data to comply with GDPR."
2392
  msgstr ""
2393
 
2394
- #: admin/html/whats-new.php:909
2395
  msgid "Added billing address customizer."
2396
  msgstr ""
2397
 
2398
- #: admin/html/whats-new.php:911
2399
  msgid "Added customizer options for billing address in payment page."
2400
  msgstr ""
2401
 
2402
- #: admin/html/whats-new.php:914
2403
  msgid "Make the payment page responsive."
2404
  msgstr ""
2405
 
2406
- #: admin/html/whats-new.php:916
2407
  msgid "Some css adjustments are made in payment page to make it responsive."
2408
  msgstr ""
2409
 
2410
- #: admin/html/whats-new.php:919
2411
  msgid "Fixed image upload issue in Safari."
2412
  msgstr ""
2413
 
2414
- #: admin/html/whats-new.php:921
2415
  msgid "Images were not showing after upload in safari, it is fixed now."
2416
  msgstr ""
2417
 
2418
- #: admin/html/whats-new.php:924
2419
  msgid "Post update issue after updating or removing post images."
2420
  msgstr ""
2421
 
2422
- #: admin/html/whats-new.php:926
2423
  msgid ""
2424
  "Posts cannot be updated after updating or removing post images, it is fixed "
2425
  "now."
2426
  msgstr ""
2427
 
2428
- #: admin/html/whats-new.php:935
2429
  msgid "Allow overriding form input styles using theme styling."
2430
  msgstr ""
2431
 
2432
- #: admin/html/whats-new.php:937
2433
  msgid "Overriding form input styles using theme style is now possible."
2434
  msgstr ""
2435
 
2436
- #: admin/html/whats-new.php:940
2437
  msgid "Fixed Auto Login after registration."
2438
  msgstr ""
2439
 
2440
- #: admin/html/whats-new.php:942
2441
  msgid "Auto Login after registration was not working is fixed now."
2442
  msgstr ""
2443
 
2444
- #: admin/html/whats-new.php:945
2445
  msgid "Fixed fallback cost calculation"
2446
  msgstr ""
2447
 
2448
- #: admin/html/whats-new.php:947
2449
  msgid "Fallback cost calculation was inaccurate for some cases, it is fixed now."
2450
  msgstr ""
2451
 
2452
- #: admin/html/whats-new.php:950
2453
  msgid "Removal of subscription from User Profile gets reverted if updated"
2454
  msgstr ""
2455
 
2456
- #: admin/html/whats-new.php:952
2457
  msgid "User subscription deletion gets reverted if updated is fixed."
2458
  msgstr ""
2459
 
2460
- #: admin/html/whats-new.php:955
2461
  msgid "Show Free pack users in subscribers list."
2462
  msgstr ""
2463
 
2464
- #: admin/html/whats-new.php:957
2465
  msgid "Free pack users were not showing in subscribers list, now they will."
2466
  msgstr ""
2467
 
2468
- #: admin/html/whats-new.php:966
2469
  msgid "WP User Frontend Guten Block is added"
2470
  msgstr ""
2471
 
2472
- #: admin/html/whats-new.php:968
2473
  msgid ""
2474
  "WPUF Form Block is now available to be used within gutenberg editor with "
2475
  "preview of the form. "
2476
  msgstr ""
2477
 
2478
- #: admin/html/whats-new.php:971
2479
  msgid "Advanced Custom Fields plugin compatibility"
2480
  msgstr ""
2481
 
2482
- #: admin/html/whats-new.php:973
2483
  msgid "Now all your ACF fields can be used within WPUF Post forms. "
2484
  msgstr ""
2485
 
2486
- #: admin/html/whats-new.php:976
2487
  msgid "Taxonomy Terms not showing for custom post types"
2488
  msgstr ""
2489
 
2490
- #: admin/html/whats-new.php:978
2491
  msgid ""
2492
  "Fixed an issue with taxonomy terms not appearing for Custom Post types "
2493
  "within Form Settings and Dashboard Post Listing"
2494
  msgstr ""
2495
 
2496
- #: admin/html/whats-new.php:981
2497
  msgid "Various other code optimizations"
2498
  msgstr ""
2499
 
2500
- #: admin/html/whats-new.php:983 admin/html/whats-new.php:1040
2501
  msgid "Code structure organization and optimization for better performance"
2502
  msgstr ""
2503
 
2504
- #: admin/html/whats-new.php:992
2505
  msgid "WoooCommerce billing address Sync"
2506
  msgstr ""
2507
 
2508
- #: admin/html/whats-new.php:994
2509
  msgid ""
2510
  "If an existing customer has previously set his billing address, that will "
2511
  "be imported into WPUF Billing address "
2512
  msgstr ""
2513
 
2514
- #: admin/html/whats-new.php:997
2515
  msgid "Trial subscription message not showing properly"
2516
  msgstr ""
2517
 
2518
- #: admin/html/whats-new.php:999
2519
  msgid "Subscriptions with Trial now shows trial notices"
2520
  msgstr ""
2521
 
2522
- #: admin/html/whats-new.php:1002
2523
  msgid "Reset email Key not working"
2524
  msgstr ""
2525
 
2526
- #: admin/html/whats-new.php:1004
2527
  msgid "Reset Email key was not working in some cases"
2528
  msgstr ""
2529
 
2530
- #: admin/html/whats-new.php:1007
2531
  msgid "Post count not showing on the frontend dashboard"
2532
  msgstr ""
2533
 
2534
- #: admin/html/whats-new.php:1009
2535
  msgid ""
2536
  "Dashboard with multiple post type was not showing post counts properly, is "
2537
  "now fixed and shows count for each post type"
2538
  msgstr ""
2539
 
2540
- #: admin/html/whats-new.php:1012
2541
  msgid "Login Redirect showing blank page is fixed"
2542
  msgstr ""
2543
 
2544
- #: admin/html/whats-new.php:1014
2545
  msgid ""
2546
  "If \"Previous Page\" was set for redirection, login redirect was "
2547
  "redirecting to blank page for users who hit login page directly"
2548
  msgstr ""
2549
 
2550
- #: admin/html/whats-new.php:1023
2551
  msgid "Enhanced Login Redirect to redirect users to previous page"
2552
  msgstr ""
2553
 
2554
- #: admin/html/whats-new.php:1025
2555
  msgid ""
2556
  "You can choose Previous Page as Login Redirect page settings now to "
2557
  "redirect users to the page from which they went for Login. "
2558
  msgstr ""
2559
 
2560
- #: admin/html/whats-new.php:1028
2561
  msgid "Email HTML links not Rendreing properly issue is fixed"
2562
  msgstr ""
2563
 
2564
- #: admin/html/whats-new.php:1030
2565
  msgid ""
2566
  "For some clients emails were not rendering the HTML links properly, this is "
2567
  "now fixed"
2568
  msgstr ""
2569
 
2570
- #: admin/html/whats-new.php:1033
2571
  msgid "Form Builder : Form Field's Help text styles not showing properly"
2572
  msgstr ""
2573
 
2574
- #: admin/html/whats-new.php:1035
2575
  msgid "Help texts styling is now fixed and much easier to read and understand"
2576
  msgstr ""
2577
 
2578
- #: admin/html/whats-new.php:1038
2579
  msgid "Various other code improvements"
2580
  msgstr ""
2581
 
2582
- #: admin/html/whats-new.php:1049
2583
  msgid "Dashboard Post Listing now supports multiple post types"
2584
  msgstr ""
2585
 
2586
- #: admin/html/whats-new.php:1051
2587
  msgid ""
2588
  "Now you can show multiple post type in user dashboard using shortcode like "
2589
  "this : <br><b>[wpuf_dashboard post_type=\"post,page,custom_type\"]</b> "
2590
  msgstr ""
2591
 
2592
- #: admin/html/whats-new.php:1054
2593
  msgid "Added Login Redirect Settings"
2594
  msgstr ""
2595
 
2596
- #: admin/html/whats-new.php:1056
2597
  msgid ""
2598
  "You can now set a page from <i>WPUF Settings > Login/Registration > "
2599
  "Redirect after Login</i>. When login redirection is active the user will be "
2600
  "redirected to this page after login."
2601
  msgstr ""
2602
 
2603
- #: admin/html/whats-new.php:1059
2604
  msgid "Image Upload field button text can be changed"
2605
  msgstr ""
2606
 
2607
- #: admin/html/whats-new.php:1061
2608
  msgid ""
2609
  "The upload button text can now be changed for image upload fields which "
2610
  "defaults to \"Select Image\" if not set. "
2611
  msgstr ""
2612
 
2613
- #: admin/html/whats-new.php:1064
2614
  msgid "Multi Step Form styles made compatible with more themes"
2615
  msgstr ""
2616
 
2617
- #: admin/html/whats-new.php:1066
2618
  msgid "Multi Step form can now be styled more easily with other themes "
2619
  msgstr ""
2620
 
2621
- #: admin/html/whats-new.php:1069
2622
  msgid "Required field condition for google map not working is fixed"
2623
  msgstr ""
2624
 
2625
- #: admin/html/whats-new.php:1071
2626
  msgid ""
2627
  "If Google Map field was set as required users were able to submit form "
2628
  "without changing the default value."
2629
  msgstr ""
2630
 
2631
- #: admin/html/whats-new.php:1080
2632
  msgid "Admin form builder is now fully responsive."
2633
  msgstr ""
2634
 
2635
- #: admin/html/whats-new.php:1082
2636
  msgid ""
2637
  "Now you can edit forms from your mobile devices directly. Our improved "
2638
  "responsive layouts of form builder makes it easy for you to build forms on "
2639
  "the go."
2640
  msgstr ""
2641
 
2642
- #: admin/html/whats-new.php:1085
2643
  msgid "Added color schemes for creating attractive form layouts."
2644
  msgstr ""
2645
 
2646
- #: admin/html/whats-new.php:1087
2647
  msgid ""
2648
  "We have added 3 new color schemes for the form layouts which you can choose "
2649
  "from each form's new display settings."
2650
  msgstr ""
2651
 
2652
- #: admin/html/whats-new.php:1090
2653
  msgid "Restrict Free subscription pack to be enabled multiple times "
2654
  msgstr ""
2655
 
2656
- #: admin/html/whats-new.php:1092
2657
  msgid ""
2658
  "Free subscription packs now can only be purchased once and the limit "
2659
  "applies properly"
2660
  msgstr ""
2661
 
2662
- #: admin/html/whats-new.php:1095
2663
  msgid "Various other bug fixes and improvements were made "
2664
  msgstr ""
2665
 
2666
- #: admin/html/whats-new.php:1097
2667
  msgid "Please see the change log to see full details."
2668
  msgstr ""
2669
 
2670
- #: admin/html/whats-new.php:1106
2671
  msgid "Added upgrade function for default category"
2672
  msgstr ""
2673
 
2674
- #: admin/html/whats-new.php:1108
2675
  msgid "Upgrader added to upgrade previously set default post category."
2676
  msgstr ""
2677
 
2678
- #: admin/html/whats-new.php:1111
2679
  msgid "Subscription pack cannot be canceled"
2680
  msgstr ""
2681
 
2682
- #: admin/html/whats-new.php:1113
2683
  msgid ""
2684
  "Fixed recurring subscription pack cannot be canceled from my account page "
2685
  "in subscription details section."
2686
  msgstr ""
2687
 
2688
- #: admin/html/whats-new.php:1116
2689
  msgid "page installer admin notice logic issue"
2690
  msgstr ""
2691
 
2692
- #: admin/html/whats-new.php:1118
2693
  msgid ""
2694
  "Fixed page installer admin notice logic problem due to new payment settings "
2695
  "default value not set."
2696
  msgstr ""
2697
 
2698
- #: admin/html/whats-new.php:1128
2699
  msgid "Setup Wizard"
2700
  msgstr ""
2701
 
2702
- #: admin/html/whats-new.php:1130
2703
  msgid "Setup Wizard added to turn off payment options and install pages."
2704
  msgstr ""
2705
 
2706
- #: admin/html/whats-new.php:1134
2707
  msgid "Multi-select Category"
2708
  msgstr ""
2709
 
2710
- #: admin/html/whats-new.php:1136
2711
  msgid "Add multi-select to default category in post form settings."
2712
  msgstr ""
2713
 
2714
- #: admin/html/whats-new.php:1140
2715
  msgid "Select Text option for Taxonomy"
2716
  msgstr ""
2717
 
2718
- #: admin/html/whats-new.php:1142
2719
  msgid ""
2720
  "Add Select Text option for taxonomy fields. Now you can add default text "
2721
  "with empty value as first option for Taxonomy dropdown."
2722
  msgstr ""
2723
 
2724
- #: admin/html/whats-new.php:1145
2725
  msgid "Taxonomy Checkbox Inline"
2726
  msgstr ""
2727
 
2728
- #: admin/html/whats-new.php:1147
2729
  msgid ""
2730
  "Added checkbox inline option to taxonomy checkbox. You can now display "
2731
  "Taxonomy checkbox fields inline."
2732
  msgstr ""
2733
 
2734
- #: admin/html/whats-new.php:1157
2735
  msgid "Manage schedule for form submission"
2736
  msgstr ""
2737
 
2738
- #: admin/html/whats-new.php:1159
2739
  msgid ""
2740
  "Do not accept form submission if the current date is not between the date "
2741
  "range of the schedule."
2742
  msgstr ""
2743
 
2744
- #: admin/html/whats-new.php:1163
2745
  msgid "Restrict form submission based on the user roles"
2746
  msgstr ""
2747
 
2748
- #: admin/html/whats-new.php:1165
2749
  msgid ""
2750
  "Restrict form submission based on the user roles. Now you can manage user "
2751
  "role base permission on form submission."
2752
  msgstr ""
2753
 
2754
- #: admin/html/whats-new.php:1169
2755
  msgid "Limit how many entries a form will accept"
2756
  msgstr ""
2757
 
2758
- #: admin/html/whats-new.php:1171
2759
  msgid ""
2760
  "Limit how many entries a form will accept and display a custom message when "
2761
  "that limit is reached."
2762
  msgstr ""
2763
 
2764
- #: admin/html/whats-new.php:1175
2765
  msgid "Show/hide Admin Bar"
2766
  msgstr ""
2767
 
2768
- #: admin/html/whats-new.php:1177
2769
  msgid "Control the admin bar visibility based on user roles."
2770
  msgstr ""
2771
 
2772
- #: admin/html/whats-new.php:1181
2773
  msgid "Ajax Login widget"
2774
  msgstr ""
2775
 
2776
- #: admin/html/whats-new.php:1183
2777
  msgid ""
2778
  "Login user is more simple now with Ajax Login Widget. The simple ajax login "
2779
  "form do not required page loading for login."
2780
  msgstr ""
2781
 
2782
- #: admin/html/whats-new.php:1187
2783
  msgid "Form submission with Captcha field"
2784
  msgstr ""
2785
 
2786
- #: admin/html/whats-new.php:1189
2787
  msgid "Form field validation process updated if form submits with captcha field."
2788
  msgstr ""
2789
 
2790
- #: admin/html/whats-new.php:1203
2791
  msgid "What's New in WPUF?"
2792
  msgstr ""
2793
 
@@ -2921,23 +2983,23 @@ msgid "Draft"
2921
  msgstr ""
2922
 
2923
  #: admin/posting.php:72 class/asset-loader.php:55 class/render-form.php:1673
2924
- #: wpuf.php:723
2925
  msgid "Are you sure?"
2926
  msgstr ""
2927
 
2928
- #: admin/posting.php:80 class/asset-loader.php:63 wpuf.php:734
2929
  msgid "Allowed Files"
2930
  msgstr ""
2931
 
2932
- #: admin/posting.php:83 class/asset-loader.php:66 wpuf.php:740
2933
  msgid "Maximum number of files reached!"
2934
  msgstr ""
2935
 
2936
- #: admin/posting.php:84 class/asset-loader.php:67 wpuf.php:741
2937
  msgid "The file you have uploaded exceeds the file size limit. Please try again."
2938
  msgstr ""
2939
 
2940
- #: admin/posting.php:85 class/asset-loader.php:68 wpuf.php:742
2941
  msgid "You have uploaded an incorrect file type. Please try again."
2942
  msgstr ""
2943
 
@@ -3513,6 +3575,10 @@ msgstr ""
3513
  msgid "Featured Image size"
3514
  msgstr ""
3515
 
 
 
 
 
3516
  #: admin/settings-options.php:297
3517
  msgid "Account Page"
3518
  msgstr ""
@@ -3704,10 +3770,6 @@ msgstr ""
3704
  msgid "This page will be used to process payment options"
3705
  msgstr ""
3706
 
3707
- #: admin/settings-options.php:470
3708
- msgid "Payment Success Page"
3709
- msgstr ""
3710
-
3711
  #: admin/settings-options.php:471 lib/gateway/bank.php:36
3712
  msgid "After payment users will be redirected here"
3713
  msgstr ""
@@ -3732,33 +3794,41 @@ msgstr ""
3732
  msgid "<span class=\"dashicons dashicons-universal-access-alt\"></span> Guest Email"
3733
  msgstr ""
3734
 
3735
- #: admin/settings-options.php:506
 
 
 
 
 
 
 
 
3736
  msgid "Guest mail subject"
3737
  msgstr ""
3738
 
3739
- #: admin/settings-options.php:507
3740
  msgid "This sets the subject of the emails sent to guest users"
3741
  msgstr ""
3742
 
3743
- #: admin/settings-options.php:514
3744
  msgid "Guest mail body"
3745
  msgstr ""
3746
 
3747
- #: admin/settings-options.php:515
3748
  msgid ""
3749
  "This sets the body of the emails sent to guest users. Please DON'T edit the "
3750
  "<code>{activation_link}</code> part, you can use {sitename} too."
3751
  msgstr ""
3752
 
3753
- #: admin/settings-options.php:534
3754
  msgid "Post Types"
3755
  msgstr ""
3756
 
3757
- #: admin/settings-options.php:535
3758
  msgid "Select the post types you will allow users to export."
3759
  msgstr ""
3760
 
3761
- #: admin/settings-options.php:561
3762
  msgid ""
3763
  "Select profile/registration forms for user roles. These forms will be used "
3764
  "to populate extra edit profile fields in backend."
@@ -3768,11 +3838,11 @@ msgstr ""
3768
  msgid "Number of subscribers per page:"
3769
  msgstr ""
3770
 
3771
- #: admin/template-post.php:36 includes/fields/class-field-post-content.php:128
3772
  msgid "Enable Image Insertion"
3773
  msgstr ""
3774
 
3775
- #: admin/template-post.php:42 includes/fields/class-field-post-content.php:130
3776
  msgid "Enable image upload in post area"
3777
  msgstr ""
3778
 
@@ -3788,7 +3858,7 @@ msgstr ""
3788
  msgid "Max. file size"
3789
  msgstr ""
3790
 
3791
- #: admin/template-post.php:147 includes/fields/class-abstract-fields.php:384
3792
  msgid "Type"
3793
  msgstr ""
3794
 
@@ -3797,70 +3867,70 @@ msgstr ""
3797
  msgid "Dropdown"
3798
  msgstr ""
3799
 
3800
- #: admin/template-post.php:150 includes/fields/class-abstract-fields.php:388
3801
  #: includes/fields/class-field-multidropdown.php:9
3802
  #: includes/fields/class-field-multidropdown.php:79
3803
  msgid "Multi Select"
3804
  msgstr ""
3805
 
3806
- #: admin/template-post.php:151 includes/fields/class-abstract-fields.php:389
3807
  #: includes/fields/class-field-checkbox.php:9
3808
  msgid "Checkbox"
3809
  msgstr ""
3810
 
3811
- #: admin/template-post.php:152 includes/fields/class-abstract-fields.php:390
3812
  msgid "Text Input"
3813
  msgstr ""
3814
 
3815
- #: admin/template-post.php:153 includes/fields/class-abstract-fields.php:391
3816
  msgid "Ajax"
3817
  msgstr ""
3818
 
3819
- #: admin/template-post.php:158 includes/fields/class-abstract-fields.php:424
3820
  msgid "Order By"
3821
  msgstr ""
3822
 
3823
- #: admin/template-post.php:161 includes/fields/class-abstract-fields.php:428
3824
  msgid "Term ID"
3825
  msgstr ""
3826
 
3827
- #: admin/template-post.php:162 includes/fields/class-abstract-fields.php:429
3828
  msgid "Slug"
3829
  msgstr ""
3830
 
3831
- #: admin/template-post.php:163 includes/fields/class-abstract-fields.php:430
3832
  msgid "Count"
3833
  msgstr ""
3834
 
3835
- #: admin/template-post.php:164 includes/fields/class-abstract-fields.php:431
3836
  msgid "Term Group"
3837
  msgstr ""
3838
 
3839
- #: admin/template-post.php:169 includes/fields/class-abstract-fields.php:440
3840
  msgid "Order"
3841
  msgstr ""
3842
 
3843
- #: admin/template-post.php:171 includes/fields/class-abstract-fields.php:444
3844
  msgid "ASC"
3845
  msgstr ""
3846
 
3847
- #: admin/template-post.php:172 includes/fields/class-abstract-fields.php:445
3848
  msgid "DESC"
3849
  msgstr ""
3850
 
3851
- #: admin/template-post.php:177 includes/fields/class-abstract-fields.php:454
3852
  msgid "Selection Type"
3853
  msgstr ""
3854
 
3855
- #: admin/template-post.php:179 includes/fields/class-abstract-fields.php:457
3856
  msgid "Exclude"
3857
  msgstr ""
3858
 
3859
- #: admin/template-post.php:180 includes/fields/class-abstract-fields.php:458
3860
  msgid "Include"
3861
  msgstr ""
3862
 
3863
- #: admin/template-post.php:181 includes/fields/class-abstract-fields.php:459
3864
  msgid "Child of"
3865
  msgstr ""
3866
 
@@ -3876,15 +3946,15 @@ msgstr ""
3876
  msgid "WooCommerce Attribute"
3877
  msgstr ""
3878
 
3879
- #: admin/template-post.php:197 includes/fields/class-abstract-fields.php:481
3880
  msgid "This taxonomy is a WooCommerce attribute"
3881
  msgstr ""
3882
 
3883
- #: admin/template-post.php:203 includes/fields/class-abstract-fields.php:301
3884
  msgid "Visibility"
3885
  msgstr ""
3886
 
3887
- #: admin/template-post.php:209 includes/fields/class-abstract-fields.php:492
3888
  msgid "Visible on product page"
3889
  msgstr ""
3890
 
@@ -3933,39 +4003,39 @@ msgid "Toggle"
3933
  msgstr ""
3934
 
3935
  #: admin/template.php:60 includes/class-customizer.php:106
3936
- #: includes/fields/class-abstract-fields.php:250
3937
  msgid "Required"
3938
  msgstr ""
3939
 
3940
- #: admin/template.php:69 includes/fields/class-abstract-fields.php:232
3941
  msgid "Field Label"
3942
  msgstr ""
3943
 
3944
- #: admin/template.php:70 includes/fields/class-abstract-fields.php:236
3945
  msgid "Enter a title of this field"
3946
  msgstr ""
3947
 
3948
  #: admin/template.php:75 admin/template.php:550
3949
- #: includes/fields/class-abstract-fields.php:319
3950
  #: includes/fields/class-field-hidden.php:39
3951
  msgid "Meta Key"
3952
  msgstr ""
3953
 
3954
  #: admin/template.php:76 admin/template.php:551
3955
- #: includes/fields/class-abstract-fields.php:323
3956
  #: includes/fields/class-field-hidden.php:43
3957
  msgid "Name of the meta key this field will save to"
3958
  msgstr ""
3959
 
3960
- #: admin/template.php:87 includes/fields/class-abstract-fields.php:241
3961
  msgid "Help text"
3962
  msgstr ""
3963
 
3964
- #: admin/template.php:88 includes/fields/class-abstract-fields.php:245
3965
  msgid "Give the user some information about this field"
3966
  msgstr ""
3967
 
3968
- #: admin/template.php:92 includes/fields/class-abstract-fields.php:280
3969
  #: includes/fields/class-field-column.php:86
3970
  msgid "CSS Class Name"
3971
  msgstr ""
@@ -3975,32 +4045,32 @@ msgid "Add a CSS class name for this field"
3975
  msgstr ""
3976
 
3977
  #: admin/template.php:117 admin/template.php:175
3978
- #: includes/fields/class-abstract-fields.php:545
3979
- #: includes/fields/class-abstract-fields.php:654
3980
  msgid "Placeholder text"
3981
  msgstr ""
3982
 
3983
- #: admin/template.php:118 includes/fields/class-abstract-fields.php:551
3984
- #: includes/fields/class-abstract-fields.php:658
3985
  msgid "Text for HTML5 placeholder attribute"
3986
  msgstr ""
3987
 
3988
  #: admin/template.php:122 admin/template.php:180
3989
- #: includes/fields/class-abstract-fields.php:556
3990
- #: includes/fields/class-abstract-fields.php:666
3991
  msgid "Default value"
3992
  msgstr ""
3993
 
3994
- #: admin/template.php:123 includes/fields/class-abstract-fields.php:562
3995
- #: includes/fields/class-abstract-fields.php:670
3996
  msgid "The default value this field will have"
3997
  msgstr ""
3998
 
3999
- #: admin/template.php:127 includes/fields/class-abstract-fields.php:567
4000
  msgid "Size"
4001
  msgstr ""
4002
 
4003
- #: admin/template.php:128 includes/fields/class-abstract-fields.php:572
4004
  msgid "Size of this input field"
4005
  msgstr ""
4006
 
@@ -4012,30 +4082,30 @@ msgstr ""
4012
  msgid "Numebr of words the author to be restricted in"
4013
  msgstr ""
4014
 
4015
- #: admin/template.php:165 includes/fields/class-abstract-fields.php:636
4016
  msgid "Rows"
4017
  msgstr ""
4018
 
4019
- #: admin/template.php:170 includes/fields/class-abstract-fields.php:645
4020
  #: includes/fields/class-field-column.php:9
4021
  msgid "Columns"
4022
  msgstr ""
4023
 
4024
- #: admin/template.php:185 includes/fields/class-abstract-fields.php:675
4025
  #: includes/fields/class-field-textarea.php:9
4026
- #: includes/fields/class-field-textarea.php:123
4027
  msgid "Textarea"
4028
  msgstr ""
4029
 
4030
- #: admin/template.php:188 includes/fields/class-abstract-fields.php:678
4031
  msgid "Normal"
4032
  msgstr ""
4033
 
4034
- #: admin/template.php:189 includes/fields/class-abstract-fields.php:679
4035
  msgid "Rich textarea"
4036
  msgstr ""
4037
 
4038
- #: admin/template.php:190 includes/fields/class-abstract-fields.php:680
4039
  msgid "Teeny Rich textarea"
4040
  msgstr ""
4041
 
@@ -4044,13 +4114,13 @@ msgid "show values"
4044
  msgstr ""
4045
 
4046
  #: admin/template.php:377 admin/template.php:401 admin/template.php:432
4047
- #: admin/template.php:463 includes/fields/class-abstract-fields.php:618
4048
  #: templates/dashboard/posts.php:119 templates/dashboard.php:139
4049
  msgid "Options"
4050
  msgstr ""
4051
 
4052
  #: admin/template.php:417 admin/template.php:448
4053
- #: includes/fields/class-abstract-fields.php:404
4054
  #: includes/fields/class-field-dropdown.php:87
4055
  msgid ""
4056
  "First element of the select dropdown. Leave this empty if you don't want to "
@@ -4058,7 +4128,7 @@ msgid ""
4058
  msgstr ""
4059
 
4060
  #: admin/template.php:427 admin/template.php:458
4061
- #: includes/fields/class-abstract-fields.php:400
4062
  #: includes/fields/class-field-dropdown.php:83
4063
  msgid "Select Text"
4064
  msgstr ""
@@ -4118,27 +4188,27 @@ msgstr ""
4118
  msgid "Import"
4119
  msgstr ""
4120
 
4121
- #: class/asset-loader.php:32 wpuf.php:632
4122
  msgid "is required"
4123
  msgstr ""
4124
 
4125
- #: class/asset-loader.php:33 wpuf.php:633
4126
  msgid "does not match"
4127
  msgstr ""
4128
 
4129
- #: class/asset-loader.php:34 wpuf.php:634
4130
  msgid "is not valid"
4131
  msgstr ""
4132
 
4133
- #: class/asset-loader.php:46 wpuf.php:710
4134
  msgid "Please fix the errors to proceed"
4135
  msgstr ""
4136
 
4137
- #: class/asset-loader.php:48 wpuf.php:712
4138
  msgid "Word limit reached"
4139
  msgstr ""
4140
 
4141
- #: class/asset-loader.php:49 wpuf.php:713
4142
  msgid "Are you sure you want to cancel your current subscription ?"
4143
  msgstr ""
4144
 
@@ -4360,7 +4430,7 @@ msgid "Select a category for your post"
4360
  msgstr ""
4361
 
4362
  #: class/post-form-templates/post.php:40
4363
- #: includes/fields/class-abstract-fields.php:189
4364
  #: includes/fields/class-field-dropdown.php:106
4365
  #: includes/fields/class-field-multidropdown.php:83
4366
  #: includes/fields/class-field-post-taxonomy.php:455
@@ -4700,37 +4770,37 @@ msgstr ""
4700
  msgid "Something went wrong."
4701
  msgstr ""
4702
 
4703
- #: includes/class-acf.php:169
4704
  msgid "%s Detected"
4705
  msgstr ""
4706
 
4707
- #: includes/class-acf.php:170
4708
  msgid ""
4709
  "Hey, looks like you have <strong>%s</strong> installed. What do you want to "
4710
  "do with WPUF?"
4711
  msgstr ""
4712
 
4713
- #: includes/class-acf.php:171
4714
  msgid ""
4715
  "It will update compatibility option only, so existing custom fields data "
4716
  "format will not change."
4717
  msgstr ""
4718
 
4719
- #: includes/class-acf.php:172
4720
  msgid ""
4721
  "It will update existing custom fields data to ACF format and update "
4722
  "compatibility option too."
4723
  msgstr ""
4724
 
4725
- #: includes/class-acf.php:175
4726
  msgid "Compatible"
4727
  msgstr ""
4728
 
4729
- #: includes/class-acf.php:176
4730
  msgid "Compatible & Migrate"
4731
  msgstr ""
4732
 
4733
- #: includes/class-acf.php:177
4734
  msgid "No Thanks"
4735
  msgstr ""
4736
 
@@ -4745,33 +4815,33 @@ msgid "Country"
4745
  msgstr ""
4746
 
4747
  #: includes/class-billing-address.php:184
4748
- #: templates/dashboard/billing-address.php:66
4749
  msgid "Choose a country"
4750
  msgstr ""
4751
 
4752
  #: includes/class-billing-address.php:203 includes/class-customizer.php:23
4753
- #: includes/class-customizer.php:67 templates/dashboard/billing-address.php:85
4754
  msgid "State/Province/Region"
4755
  msgstr ""
4756
 
4757
  #: includes/class-billing-address.php:217
4758
- #: templates/dashboard/billing-address.php:105
4759
  msgid "Choose a state"
4760
  msgstr ""
4761
 
4762
  #: includes/class-billing-address.php:236
4763
- #: templates/dashboard/billing-address.php:125
4764
  msgid "Address Line 1 "
4765
  msgstr ""
4766
 
4767
  #: includes/class-billing-address.php:247
4768
- #: templates/dashboard/billing-address.php:134
4769
  msgid "Address Line 2 "
4770
  msgstr ""
4771
 
4772
  #: includes/class-billing-address.php:258 includes/class-customizer.php:26
4773
  #: includes/class-customizer.php:70 includes/class-privacy.php:253
4774
- #: templates/dashboard/billing-address.php:142
4775
  msgid "City"
4776
  msgstr ""
4777
 
@@ -4781,7 +4851,7 @@ msgid "Postal Code/ZIP"
4781
  msgstr ""
4782
 
4783
  #: includes/class-billing-address.php:278
4784
- #: templates/dashboard/billing-address.php:161
4785
  msgid "Update Billing Address"
4786
  msgstr ""
4787
 
@@ -4929,7 +4999,7 @@ msgid ""
4929
  msgstr ""
4930
 
4931
  #: includes/class-frontend-form-post.php:621
4932
- #: includes/class-frontend-render-form.php:320
4933
  msgid "You do not have sufficient permissions to access this form."
4934
  msgstr ""
4935
 
@@ -4944,8 +5014,8 @@ msgid ""
4944
  "Please check your inbox!"
4945
  msgstr ""
4946
 
4947
- #: includes/class-frontend-render-form.php:863
4948
- #: includes/free/class-login.php:448
4949
  msgid "Empty reCaptcha Field"
4950
  msgstr ""
4951
 
@@ -5022,21 +5092,21 @@ msgstr ""
5022
  msgid "Someone has requested a password reset for the following account:"
5023
  msgstr ""
5024
 
5025
- #: includes/class-login-widget.php:147 includes/free/class-login.php:858
5026
- #: includes/free/class-login.php:970 includes/free/class-registration.php:299
5027
  #. translators: %s: username
5028
  msgid "Username: %s"
5029
  msgstr ""
5030
 
5031
- #: includes/class-login-widget.php:148 includes/free/class-login.php:971
5032
  msgid "If this was a mistake, just ignore this email and nothing will happen."
5033
  msgstr ""
5034
 
5035
- #: includes/class-login-widget.php:149 includes/free/class-login.php:972
5036
  msgid "To reset your password, visit the following address:"
5037
  msgstr ""
5038
 
5039
- #: includes/class-login-widget.php:154 includes/free/class-login.php:983
5040
  #. translators: %s: blogname
5041
  msgid "[%s] Password Reset"
5042
  msgstr ""
@@ -5095,7 +5165,7 @@ msgid "Remember Me"
5095
  msgstr ""
5096
 
5097
  #: includes/class-login-widget.php:281 includes/free/class-login.php:311
5098
- #: includes/free/class-login.php:375 templates/login-form.php:75
5099
  msgid "Log In"
5100
  msgstr ""
5101
 
@@ -5519,29 +5589,57 @@ msgstr ""
5519
  msgid "Bangladesh"
5520
  msgstr ""
5521
 
5522
- #: includes/fields/class-abstract-fields.php:260
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5523
  msgid ""
5524
  "Check this option to mark the field required. A form will not submit unless "
5525
  "all required fields are provided."
5526
  msgstr ""
5527
 
5528
- #: includes/fields/class-abstract-fields.php:265
5529
  msgid "Field Size"
5530
  msgstr ""
5531
 
5532
- #: includes/fields/class-abstract-fields.php:268
5533
  msgid "Small"
5534
  msgstr ""
5535
 
5536
- #: includes/fields/class-abstract-fields.php:269
5537
  msgid "Medium"
5538
  msgstr ""
5539
 
5540
- #: includes/fields/class-abstract-fields.php:270
5541
  msgid "Large"
5542
  msgstr ""
5543
 
5544
- #: includes/fields/class-abstract-fields.php:284
5545
  #: includes/fields/class-field-column.php:90
5546
  msgid ""
5547
  "Provide a container class name for this field. Available classes: "
@@ -5549,91 +5647,67 @@ msgid ""
5549
  "wpuf-col-one-third-last"
5550
  msgstr ""
5551
 
5552
- #: includes/fields/class-abstract-fields.php:305
5553
  msgid "Everyone"
5554
  msgstr ""
5555
 
5556
- #: includes/fields/class-abstract-fields.php:307
5557
  msgid "Logged in users only"
5558
  msgstr ""
5559
 
5560
- #: includes/fields/class-abstract-fields.php:308
5561
  msgid "Subscription users only"
5562
  msgstr ""
5563
 
5564
- #: includes/fields/class-abstract-fields.php:312
5565
  msgid "Select option"
5566
  msgstr ""
5567
 
5568
- #: includes/fields/class-abstract-fields.php:331
5569
  msgid "Show Data in Post"
5570
  msgstr ""
5571
 
5572
- #: includes/fields/class-abstract-fields.php:341
5573
  msgid "Select Yes if you want to show the field data in single post."
5574
  msgstr ""
5575
 
5576
- #: includes/fields/class-abstract-fields.php:345
5577
  msgid "Hide Field Label in Post"
5578
  msgstr ""
5579
 
5580
- #: includes/fields/class-abstract-fields.php:355
5581
  msgid "Select Yes if you want to hide the field label in single post."
5582
  msgstr ""
5583
 
5584
- #: includes/fields/class-abstract-fields.php:409
5585
  #: includes/fields/class-field-checkbox.php:71
5586
  #: includes/fields/class-field-radio.php:80
5587
  msgid "Show in inline list"
5588
  msgstr ""
5589
 
5590
- #: includes/fields/class-abstract-fields.php:419
5591
  #: includes/fields/class-field-checkbox.php:81
5592
  #: includes/fields/class-field-radio.php:90
5593
  msgid "Show this option in an inline list"
5594
  msgstr ""
5595
 
5596
- #: includes/fields/class-abstract-fields.php:468
5597
  msgid "Selection Terms"
5598
  msgstr ""
5599
 
5600
- #: includes/fields/class-abstract-fields.php:472
5601
  msgid "Search the terms name. use ⇦ ⇨ for navigate"
5602
  msgstr ""
5603
 
5604
- #: includes/fields/class-abstract-fields.php:507
5605
- #: includes/fields/class-abstract-fields.php:581
5606
- #: includes/fields/class-abstract-fields.php:689
5607
- msgid "Content restricted by"
5608
- msgstr ""
5609
-
5610
- #: includes/fields/class-abstract-fields.php:510
5611
- #: includes/fields/class-abstract-fields.php:584
5612
- #: includes/fields/class-abstract-fields.php:692
5613
- msgid "Character"
5614
- msgstr ""
5615
-
5616
- #: includes/fields/class-abstract-fields.php:511
5617
- #: includes/fields/class-abstract-fields.php:585
5618
- #: includes/fields/class-abstract-fields.php:693
5619
- msgid "Word"
5620
- msgstr ""
5621
-
5622
- #: includes/fields/class-abstract-fields.php:525
5623
- #: includes/fields/class-abstract-fields.php:599
5624
- #: includes/fields/class-abstract-fields.php:707
5625
- msgid "Number of characters or words the author to be restricted in"
5626
- msgstr ""
5627
-
5628
- #: includes/fields/class-abstract-fields.php:623
5629
  msgid "Add options for the form field"
5630
  msgstr ""
5631
 
5632
- #: includes/fields/class-abstract-fields.php:640
5633
  msgid "Number of rows in textarea"
5634
  msgstr ""
5635
 
5636
- #: includes/fields/class-abstract-fields.php:649
5637
  msgid "Number of columns in textarea"
5638
  msgstr ""
5639
 
@@ -5760,7 +5834,7 @@ msgid "Some description about this section"
5760
  msgstr ""
5761
 
5762
  #: includes/fields/class-field-text.php:9
5763
- #: includes/fields/class-field-text.php:123
5764
  msgid "Text"
5765
  msgstr ""
5766
 
@@ -5878,32 +5952,31 @@ msgid ""
5878
  "create a new password via email."
5879
  msgstr ""
5880
 
5881
- #: includes/free/class-login.php:375
5882
- #. translators: %s: login url
5883
- msgid "Your password has been reset. %s"
5884
  msgstr ""
5885
 
5886
- #: includes/free/class-login.php:379
5887
  msgid "Enter your new password below."
5888
  msgstr ""
5889
 
5890
- #: includes/free/class-login.php:390
5891
  msgid "You are now logged out."
5892
  msgstr ""
5893
 
5894
- #: includes/free/class-login.php:416
5895
  msgid "Nonce is invalid"
5896
  msgstr ""
5897
 
5898
- #: includes/free/class-login.php:435 includes/free/class-registration.php:228
5899
  msgid "Username is required."
5900
  msgstr ""
5901
 
5902
- #: includes/free/class-login.php:441 includes/free/class-registration.php:234
5903
  msgid "Password is required."
5904
  msgstr ""
5905
 
5906
- #: includes/free/class-login.php:463 includes/free/class-registration.php:204
5907
  #: includes/free/class-registration.php:210
5908
  #: includes/free/class-registration.php:216
5909
  #: includes/free/class-registration.php:222
@@ -5916,35 +5989,35 @@ msgstr ""
5916
  msgid "Error"
5917
  msgstr ""
5918
 
5919
- #: includes/free/class-login.php:463 includes/free/class-registration.php:265
5920
  msgid "A user could not be found with this email address."
5921
  msgstr ""
5922
 
5923
- #: includes/free/class-login.php:645
5924
  msgid "Please enter your password."
5925
  msgstr ""
5926
 
5927
- #: includes/free/class-login.php:651
5928
  msgid "Passwords do not match."
5929
  msgstr ""
5930
 
5931
- #: includes/free/class-login.php:699
5932
  msgid "Enter a username or e-mail address."
5933
  msgstr ""
5934
 
5935
- #: includes/free/class-login.php:706
5936
  msgid "There is no user registered with that email address."
5937
  msgstr ""
5938
 
5939
- #: includes/free/class-login.php:723
5940
  msgid "Invalid username or e-mail."
5941
  msgstr ""
5942
 
5943
- #: includes/free/class-login.php:737
5944
  msgid "Password reset is not allowed for this user"
5945
  msgstr ""
5946
 
5947
- #: includes/free/class-login.php:776
5948
  #. translators: %s: activation link
5949
  msgid ""
5950
  "<strong>Your account is not active.</strong><br>Please check your email for "
@@ -5952,64 +6025,64 @@ msgid ""
5952
  "link"
5953
  msgstr ""
5954
 
5955
- #: includes/free/class-login.php:797 includes/free/class-login.php:822
5956
  msgid "Activation URL is not valid"
5957
  msgstr ""
5958
 
5959
- #: includes/free/class-login.php:808
5960
  msgid "Invalid User activation url"
5961
  msgstr ""
5962
 
5963
- #: includes/free/class-login.php:814
5964
  msgid "User already verified"
5965
  msgstr ""
5966
 
5967
- #: includes/free/class-login.php:830 includes/free/class-login.php:918
5968
  msgid "Your account has been activated"
5969
  msgstr ""
5970
 
5971
- #: includes/free/class-login.php:833
5972
  msgid ""
5973
  "Your account has been verified , but you can't login until manually "
5974
  "approved your account by an administrator."
5975
  msgstr ""
5976
 
5977
- #: includes/free/class-login.php:856
5978
  #. translators: %s: blogname
5979
  msgid "[%s] Your username and password info"
5980
  msgstr ""
5981
 
5982
- #: includes/free/class-login.php:859
5983
  msgid "To set your password, visit the following address:"
5984
  msgstr ""
5985
 
5986
- #: includes/free/class-login.php:870
5987
  #. translators: %s: blogname
5988
  msgid "[%s] Account has been activated"
5989
  msgstr ""
5990
 
5991
- #: includes/free/class-login.php:872
5992
  #. translators: %s: username
5993
  msgid "Hi %s,"
5994
  msgstr ""
5995
 
5996
- #: includes/free/class-login.php:873
5997
  msgid "Congrats! Your account has been activated. To login visit the following url:"
5998
  msgstr ""
5999
 
6000
- #: includes/free/class-login.php:875
6001
  msgid "Thanks"
6002
  msgstr ""
6003
 
6004
- #: includes/free/class-login.php:967
6005
  msgid "Someone requested that the password be reset for the following account:"
6006
  msgstr ""
6007
 
6008
- #: includes/free/class-login.php:989
6009
  msgid "The e-mail could not be sent."
6010
  msgstr ""
6011
 
6012
- #: includes/free/class-login.php:989
6013
  msgid "Possible reason: your host may have disabled the mail() function."
6014
  msgstr ""
6015
 
@@ -6447,6 +6520,10 @@ msgstr ""
6447
  msgid "Event Tags"
6448
  msgstr ""
6449
 
 
 
 
 
6450
  #: includes/free/post-form-templates/the_events_calendar.php:174
6451
  msgid "Create Event"
6452
  msgstr ""
@@ -6637,7 +6714,7 @@ msgstr ""
6637
  msgid "PayPal API signature"
6638
  msgstr ""
6639
 
6640
- #: templates/dashboard/billing-address.php:151
6641
  msgid "Postal/ZIP Code"
6642
  msgstr ""
6643
 
@@ -7107,7 +7184,7 @@ msgstr ""
7107
  msgid "Jordanian dinar"
7108
  msgstr ""
7109
 
7110
- #: wpuf-functions.php:3337
7111
  msgid "None"
7112
  msgstr ""
7113
 
@@ -7127,7 +7204,7 @@ msgstr ""
7127
  msgid "Your Post Has Been Expired"
7128
  msgstr ""
7129
 
7130
- #: wpuf.php:456
7131
  msgid ""
7132
  "<p style=\"font-size: 13px\">\n"
7133
  " <strong class=\"highlight-text\" "
@@ -7140,19 +7217,31 @@ msgid ""
7140
  " </p>"
7141
  msgstr ""
7142
 
7143
- #: wpuf.php:470
7144
  msgid "Update WP User Frontend Pro Now"
7145
  msgstr ""
7146
 
7147
- #: wpuf.php:474
7148
  msgid "Update WP User Frontend Pro NOW"
7149
  msgstr ""
7150
 
7151
- #: wpuf.php:719
 
 
 
 
 
 
 
 
 
 
 
 
7152
  msgid "Please Cancel Your Currently Active Pack first!"
7153
  msgstr ""
7154
 
7155
- #: wpuf.php:886
7156
  msgid "Error: Nonce verification failed"
7157
  msgstr ""
7158
 
2
  # This file is distributed under the GPL2 or later.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: WP User Frontend 3.5.20\n"
6
  "Report-Msgid-Bugs-To: https://wedevs.com/contact/\n"
7
+ "POT-Creation-Date: 2021-09-16 12:03:22+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
160
  msgid "Duration"
161
  msgstr ""
162
 
163
+ #: admin/class-admin-subscription.php:225
164
+ #: admin/class-admin-subscription.php:599 class/frontend-account.php:263
165
  #: class/subscription.php:927 includes/class-user-subscription.php:305
166
  #: templates/subscriptions/pack-details.php:24
167
  msgid "Free"
168
  msgstr ""
169
 
170
+ #: admin/class-admin-subscription.php:242
171
  #: admin/html/form-settings-display.php:41 admin/post-forms-list-table.php:360
172
  #: admin/settings-options.php:116 admin/settings-options.php:127
173
  #: admin/settings-options.php:223 admin/settings-options.php:234
174
  #: admin/template.php:63 class/asset-loader.php:50
175
+ #: includes/fields/class-abstract-fields.php:297
176
+ #: includes/fields/class-abstract-fields.php:378
177
+ #: includes/fields/class-abstract-fields.php:392
178
+ #: includes/fields/class-abstract-fields.php:456
179
  #: includes/fields/class-field-checkbox.php:74
180
  #: includes/fields/class-field-radio.php:83 includes/free/form-element.php:499
181
+ #: wpuf.php:719
182
  msgid "Yes"
183
  msgstr ""
184
 
185
+ #: admin/class-admin-subscription.php:244
186
  #: admin/html/form-settings-display.php:40 admin/post-forms-list-table.php:361
187
  #: admin/settings-options.php:117 admin/settings-options.php:128
188
  #: admin/settings-options.php:224 admin/settings-options.php:235
189
  #: admin/template.php:64 class/asset-loader.php:51
190
+ #: includes/fields/class-abstract-fields.php:298
191
+ #: includes/fields/class-abstract-fields.php:379
192
+ #: includes/fields/class-abstract-fields.php:393
193
+ #: includes/fields/class-abstract-fields.php:457
194
  #: includes/fields/class-field-checkbox.php:75
195
  #: includes/fields/class-field-radio.php:84 includes/free/form-element.php:500
196
+ #: wpuf.php:720
197
  msgid "No"
198
  msgstr ""
199
 
200
+ #: admin/class-admin-subscription.php:337 admin/form.php:225
201
  msgid "Payment Settings"
202
  msgstr ""
203
 
204
+ #: admin/class-admin-subscription.php:344
205
  msgid "Posting Restriction"
206
  msgstr ""
207
 
208
+ #: admin/class-admin-subscription.php:358
209
  msgid "Billing amount:"
210
  msgstr ""
211
 
212
+ #: admin/class-admin-subscription.php:359
213
  msgid "Billing amount each cycle:"
214
  msgstr ""
215
 
216
+ #: admin/class-admin-subscription.php:367
217
  msgid "Expires In:"
218
  msgstr ""
219
 
220
+ #: admin/class-admin-subscription.php:416 admin/form.php:227
221
  #: includes/free/form-element.php:57
222
  msgid "Post Expiration"
223
  msgstr ""
224
 
225
+ #: admin/class-admin-subscription.php:421 includes/free/form-element.php:61
226
  msgid "Enable Post Expiration"
227
  msgstr ""
228
 
229
+ #: admin/class-admin-subscription.php:433
230
+ #: admin/class-admin-subscription.php:700 includes/free/form-element.php:67
231
  msgid "Post Expiration Time"
232
  msgstr ""
233
 
234
+ #: admin/class-admin-subscription.php:450 admin/html/form-settings-post.php:56
235
  #: admin/post-forms-list-table.php:313
236
  msgid "Post Status"
237
  msgstr ""
260
  msgid "You may use: {post_author} {post_url} {blogname} {post_title} {post_status}"
261
  msgstr ""
262
 
263
+ #: admin/class-admin-subscription.php:546
264
  msgid "Day(s)"
265
  msgstr ""
266
 
267
+ #: admin/class-admin-subscription.php:547
268
  msgid "Week(s)"
269
  msgstr ""
270
 
271
+ #: admin/class-admin-subscription.php:548
272
  msgid "Month(s)"
273
  msgstr ""
274
 
275
+ #: admin/class-admin-subscription.php:549
276
  msgid "Year(s)"
277
  msgstr ""
278
 
279
+ #: admin/class-admin-subscription.php:591
280
  msgid "WPUF Subscription Information"
281
  msgstr ""
282
 
283
+ #: admin/class-admin-subscription.php:603
284
+ msgid "For each %1$s %2$s"
285
  msgstr ""
286
 
287
+ #: admin/class-admin-subscription.php:604 class/frontend-account.php:269
288
  #. translators: %s: number of installments
289
  msgid ", for %s installments"
290
  msgstr ""
291
 
292
+ #: admin/class-admin-subscription.php:615
293
  msgid "Subcription Name"
294
  msgstr ""
295
 
296
+ #: admin/class-admin-subscription.php:625
297
  msgid "Billing Info"
298
  msgstr ""
299
 
300
+ #: admin/class-admin-subscription.php:639
301
  msgid "This user is using recurring subscription pack"
302
  msgstr ""
303
 
304
+ #: admin/class-admin-subscription.php:645
305
  msgid "Remaining Posting Count"
306
  msgstr ""
307
 
308
+ #: admin/class-admin-subscription.php:667
309
  msgid "Subscription Expiration Info"
310
  msgstr ""
311
 
312
+ #: admin/class-admin-subscription.php:676
313
  #: includes/class-user-subscription.php:354
314
  #: templates/dashboard/subscription.php:46
315
  msgid "Expire date:"
316
  msgstr ""
317
 
318
+ #: admin/class-admin-subscription.php:689
319
  msgid "Post Expiration Enabled"
320
  msgstr ""
321
 
322
+ #: admin/class-admin-subscription.php:726
323
  msgid "Allowed Taxonomy Terms"
324
  msgstr ""
325
 
326
+ #: admin/class-admin-subscription.php:796
327
  msgid "Assign Package"
328
  msgstr ""
329
 
330
+ #: admin/class-admin-subscription.php:797
331
  #: admin/form-builder/class-wpuf-admin-form-builder.php:284
332
  #: class/payment.php:225 class/subscription.php:825
333
  #: includes/class-list-table-subscribers.php:138 lib/appsero/Insights.php:764
335
  msgid "Cancel"
336
  msgstr ""
337
 
338
+ #: admin/class-admin-subscription.php:803
339
  msgid "Select Package:"
340
  msgstr ""
341
 
342
+ #: admin/class-admin-subscription.php:806 admin/settings-options.php:580
343
  #: wpuf-functions.php:210 wpuf-functions.php:1808 wpuf-functions.php:2056
344
  msgid "&mdash; Select &mdash;"
345
  msgstr ""
346
 
347
+ #: admin/class-admin-subscription.php:810
348
  msgid "Only non-recurring pack can be assigned"
349
  msgstr ""
350
 
351
+ #: admin/class-admin-subscription.php:821
352
  msgid "Delete Package"
353
  msgstr ""
354
 
355
+ #: admin/class-admin-subscription.php:875
356
  msgid "Learn more about <a href=\"%s\" target=\"_blank\">Subscription</a>"
357
  msgstr ""
358
 
366
 
367
  #: admin/class-tools.php:43 admin/class-tools.php:106
368
  #: admin/post-forms-list-table.php:43 class/transactions-list-table.php:90
369
+ #: includes/class-list-table-subscribers.php:136 wpuf-functions.php:3340
370
  msgid "All"
371
  msgstr ""
372
 
553
  msgstr ""
554
 
555
  #: admin/form-builder/assets/js/components/form-post_content/template.php:4
556
+ #: class/render-form.php:1052 includes/fields/class-field-post-content.php:49
557
  msgid "Insert Photo"
558
  msgstr ""
559
 
593
  msgstr ""
594
 
595
  #: admin/form-builder/class-wpuf-admin-form-builder.php:281
596
+ #: admin/posting.php:73 class/asset-loader.php:56 wpuf.php:740
597
  msgid "Yes, delete it"
598
  msgstr ""
599
 
600
  #: admin/form-builder/class-wpuf-admin-form-builder.php:282
601
+ #: admin/posting.php:74 class/asset-loader.php:57 wpuf.php:741
602
  msgid "No, cancel it"
603
  msgstr ""
604
 
644
  msgstr ""
645
 
646
  #: admin/form-builder/class-wpuf-admin-form-builder.php:293
647
+ #: includes/fields/class-abstract-fields.php:431
648
  msgid "Select"
649
  msgstr ""
650
 
858
  msgstr ""
859
 
860
  #: admin/html/form-settings-display.php:19 includes/class-customizer.php:104
861
+ #: includes/fields/class-abstract-fields.php:350
862
  msgid "Hidden"
863
  msgstr ""
864
 
878
  msgid "Form Style"
879
  msgstr ""
880
 
881
+ #: admin/html/form-settings-payment.php:21
882
  msgid "Payment Options"
883
  msgstr ""
884
 
885
+ #: admin/html/form-settings-payment.php:26 admin/settings-options.php:389
886
  #: includes/setup-wizard.php:301
887
  msgid "Enable Payments"
888
  msgstr ""
889
 
890
+ #: admin/html/form-settings-payment.php:28
891
  msgid "Check to enable Payments for this form."
892
  msgstr ""
893
 
894
+ #: admin/html/form-settings-payment.php:33
895
  msgid "Force Pack"
896
  msgstr ""
897
 
898
+ #: admin/html/form-settings-payment.php:38
899
  msgid "Force subscription pack"
900
  msgstr ""
901
 
902
+ #: admin/html/form-settings-payment.php:40
903
  msgid "Force users to purchase and use subscription pack."
904
  msgstr ""
905
 
906
+ #: admin/html/form-settings-payment.php:45
907
  msgid "Fallback to pay per post"
908
  msgstr ""
909
 
910
+ #: admin/html/form-settings-payment.php:50
911
  msgid "Fallback pay per post charging"
912
  msgstr ""
913
 
914
+ #: admin/html/form-settings-payment.php:52
915
  msgid "Fallback to pay per post charging if pack limit exceeds"
916
  msgstr ""
917
 
918
+ #: admin/html/form-settings-payment.php:57
919
  msgid "Fallback cost"
920
  msgstr ""
921
 
922
+ #: admin/html/form-settings-payment.php:62
923
  msgid "Cost of pay per post after a subscription pack limit is reached."
924
  msgstr ""
925
 
926
+ #: admin/html/form-settings-payment.php:67
927
  msgid "Pay Per Post"
928
  msgstr ""
929
 
930
+ #: admin/html/form-settings-payment.php:72
931
  msgid "Enable Pay Per Post"
932
  msgstr ""
933
 
934
+ #: admin/html/form-settings-payment.php:74
935
  msgid "Charge users for posting,"
936
  msgstr ""
937
 
938
+ #: admin/html/form-settings-payment.php:74
939
  msgid " Learn More about Pay Per Post."
940
  msgstr ""
941
 
942
+ #: admin/html/form-settings-payment.php:79
943
  msgid "Cost Settings"
944
  msgstr ""
945
 
946
+ #: admin/html/form-settings-payment.php:84
947
  msgid "Amount to be charged per post"
948
  msgstr ""
949
 
950
+ #: admin/html/form-settings-payment.php:88 admin/settings-options.php:470
951
+ msgid "Payment Success Page"
952
+ msgstr ""
953
+
954
+ #: admin/html/form-settings-payment.php:101
955
+ msgid "Page will show after successful payment"
956
+ msgstr ""
957
+
958
  #: admin/html/form-settings-post-edit.php:4
959
  #: admin/html/form-settings-post.php:16
960
  msgid "Post updated successfully"
1037
  msgstr ""
1038
 
1039
  #: admin/html/form-settings-post.php:7 class/post-form-templates/post.php:127
1040
+ msgid "This page is restricted. Please %login% / %register% to view this page."
 
1041
  msgstr ""
1042
 
1043
  #: admin/html/form-settings-post.php:15
1107
  msgstr ""
1108
 
1109
  #: admin/html/form-submission-restriction.php:11 admin/template-post.php:160
1110
+ #: includes/fields/class-abstract-fields.php:471
1111
  #: includes/free/edit-profile.php:98 templates/registration-form.php:30
1112
  msgid "Name"
1113
  msgstr ""
1193
  msgid "Roles"
1194
  msgstr ""
1195
 
1196
+ #: admin/html/form-submission-restriction.php:112
1197
  msgid "Choose which roles can submit posts."
1198
  msgstr ""
1199
 
1200
+ #: admin/html/form-submission-restriction.php:117
1201
  #: admin/settings-options.php:287
1202
  msgid "Unauthorized Message"
1203
  msgstr ""
1204
 
1205
+ #: admin/html/form-submission-restriction.php:120
1206
+ msgid ""
1207
+ "Not logged in users will see this message. You may use %login%, %register% "
1208
+ "for link"
1209
  msgstr ""
1210
 
1211
+ #: admin/html/form-submission-restriction.php:125
1212
  msgid "Schedule form"
1213
  msgstr ""
1214
 
1215
+ #: admin/html/form-submission-restriction.php:130
1216
  msgid "Schedule form for a period"
1217
  msgstr ""
1218
 
1219
+ #: admin/html/form-submission-restriction.php:132
1220
  msgid "Schedule for a time period the form is active."
1221
  msgstr ""
1222
 
1223
+ #: admin/html/form-submission-restriction.php:137
1224
  msgid "Schedule Period"
1225
  msgstr ""
1226
 
1227
+ #: admin/html/form-submission-restriction.php:140
1228
  msgid "From"
1229
  msgstr ""
1230
 
1231
+ #: admin/html/form-submission-restriction.php:144
1232
  #: includes/free/form-element.php:230 includes/free/form-element.php:267
1233
  msgid "To"
1234
  msgstr ""
1235
 
1236
+ #: admin/html/form-submission-restriction.php:151
1237
  msgid "Form Pending Message"
1238
  msgstr ""
1239
 
1240
+ #: admin/html/form-submission-restriction.php:158
1241
  msgid "Form Expired Message"
1242
  msgstr ""
1243
 
1244
+ #: admin/html/form-submission-restriction.php:165
1245
  msgid "Limit Entries"
1246
  msgstr ""
1247
 
1248
+ #: admin/html/form-submission-restriction.php:170
1249
  msgid "Enable form entry limit"
1250
  msgstr ""
1251
 
1252
+ #: admin/html/form-submission-restriction.php:174
1253
  msgid "Limit the number of entries allowed for this form"
1254
  msgstr ""
1255
 
1256
+ #: admin/html/form-submission-restriction.php:180
1257
  msgid "Number of Entries"
1258
  msgstr ""
1259
 
1260
+ #: admin/html/form-submission-restriction.php:187
1261
  msgid "Limit Reached Message"
1262
  msgstr ""
1263
 
1348
  msgid "Subscription &amp; Payment"
1349
  msgstr ""
1350
 
1351
+ #: admin/html/support.php:282 includes/fields/class-abstract-fields.php:67
 
 
1352
  msgid "Content Restriction"
1353
  msgstr ""
1354
 
1421
  msgstr ""
1422
 
1423
  #: admin/html/whats-new.php:9
1424
+ msgid "Content restriction for minimum, maximum value enhanced"
1425
  msgstr ""
1426
 
1427
  #: admin/html/whats-new.php:13
1428
+ msgid "New option for redirection after pay per post payment in form setting"
1429
  msgstr ""
1430
 
1431
  #: admin/html/whats-new.php:17
1432
+ msgid "Controller added for various email notification"
1433
  msgstr ""
1434
 
1435
  #: admin/html/whats-new.php:21
1436
+ msgid "Placeholder added for unauth message option"
1437
  msgstr ""
1438
 
1439
  #: admin/html/whats-new.php:25
1440
+ msgid "Subscription Post expiration option change to input field"
1441
  msgstr ""
1442
 
1443
  #: admin/html/whats-new.php:29
1444
+ msgid "Content restriction message translatable"
1445
  msgstr ""
1446
 
1447
  #: admin/html/whats-new.php:33
1448
+ msgid "ACF integration inconsistency handled"
1449
  msgstr ""
1450
 
1451
  #: admin/html/whats-new.php:37
1452
+ msgid "Enable payment checkbox handled for child option"
1453
  msgstr ""
1454
 
1455
  #: admin/html/whats-new.php:41
1456
+ msgid "Broken asset link handled for custom field popup"
1457
  msgstr ""
1458
 
1459
  #: admin/html/whats-new.php:45
1460
+ msgid "Rollback inconsistency for CPT handled"
1461
+ msgstr ""
1462
+
1463
+ #: admin/html/whats-new.php:49
1464
+ msgid "Login form loaded after resetting password"
1465
+ msgstr ""
1466
+
1467
+ #: admin/html/whats-new.php:53
1468
+ msgid "Billing address inconsistency handled"
1469
+ msgstr ""
1470
+
1471
+ #: admin/html/whats-new.php:57
1472
+ msgid "Form duplication on creation handled"
1473
+ msgstr ""
1474
+
1475
+ #: admin/html/whats-new.php:61
1476
+ msgid "Field Dragging inconsistency fixed"
1477
+ msgstr ""
1478
+
1479
+ #: admin/html/whats-new.php:72
1480
+ msgid "Google Map field enhanced along with acf google map"
1481
+ msgstr ""
1482
+
1483
+ #: admin/html/whats-new.php:76
1484
+ msgid "Filter added for dashboard account menu"
1485
+ msgstr ""
1486
+
1487
+ #: admin/html/whats-new.php:80
1488
+ msgid "Fallback Pay Per Post inconsistency handled"
1489
+ msgstr ""
1490
+
1491
+ #: admin/html/whats-new.php:84
1492
+ msgid "Google map search field not showing"
1493
+ msgstr ""
1494
+
1495
+ #: admin/html/whats-new.php:88
1496
+ msgid "Form preview page inconsistency with builder"
1497
+ msgstr ""
1498
+
1499
+ #: admin/html/whats-new.php:92
1500
+ msgid "Category not showing as hierarchy"
1501
+ msgstr ""
1502
+
1503
+ #: admin/html/whats-new.php:96
1504
+ msgid "TOC field randering issue with registration form"
1505
+ msgstr ""
1506
+
1507
+ #: admin/html/whats-new.php:100
1508
+ msgid "Custom plupload filter inconsistency with file upload handled"
1509
+ msgstr ""
1510
+
1511
+ #: admin/html/whats-new.php:104
1512
+ msgid "Guest Pay Per Post inconsistency handled"
1513
+ msgstr ""
1514
+
1515
+ #: admin/html/whats-new.php:108
1516
  msgid "Responsive and font issue handled"
1517
  msgstr ""
1518
 
1519
+ #: admin/html/whats-new.php:119
1520
  msgid "Preview page added for post form and registration form"
1521
  msgstr ""
1522
 
1523
+ #: admin/html/whats-new.php:123
1524
  msgid "Post types menu on account page added"
1525
  msgstr ""
1526
 
1527
+ #: admin/html/whats-new.php:127
1528
  msgid "Dashboard shortcode attributes enhanced"
1529
  msgstr ""
1530
 
1531
+ #: admin/html/whats-new.php:131
1532
  msgid "Account page post type list new design"
1533
  msgstr ""
1534
 
1535
+ #: admin/html/whats-new.php:135
1536
  msgid "Payment page restricted from direct unauthenticated access"
1537
  msgstr ""
1538
 
1539
+ #: admin/html/whats-new.php:139
1540
  msgid "Timepicker conflict with dokan handled"
1541
  msgstr ""
1542
 
1543
+ #: admin/html/whats-new.php:143
1544
  msgid "Trial inconsistency with paypal fixed"
1545
  msgstr ""
1546
 
1547
+ #: admin/html/whats-new.php:147
1548
  msgid "Subscription does not cancel with paypal due to profile missing id"
1549
  msgstr ""
1550
 
1551
+ #: admin/html/whats-new.php:151
1552
  msgid "Subscription email notification inconsistency fixed"
1553
  msgstr ""
1554
 
1555
+ #: admin/html/whats-new.php:155
1556
  msgid "Various issues on payment page for non-logged in user handled"
1557
  msgstr ""
1558
 
1559
+ #: admin/html/whats-new.php:159
1560
  msgid "Column inner field cloning inconsistency fixed"
1561
  msgstr ""
1562
 
1563
+ #: admin/html/whats-new.php:163
1564
  msgid "Popup z-index changed due to other plugin z-index"
1565
  msgstr ""
1566
 
1567
+ #: admin/html/whats-new.php:175
1568
  msgid "Added Mauritian Rupee for currency"
1569
  msgstr ""
1570
 
1571
+ #: admin/html/whats-new.php:179
1572
  msgid "Added eid promotional offer notice"
1573
  msgstr ""
1574
 
1575
+ #: admin/html/whats-new.php:183
1576
  msgid "Multiple google map validation for same form"
1577
  msgstr ""
1578
 
1579
+ #: admin/html/whats-new.php:187
1580
  msgid "Various issues on verification, autologin payments & address field"
1581
  msgstr ""
1582
 
1583
+ #: admin/html/whats-new.php:191
1584
  msgid "Docs update for file & attachments feature which is pro only"
1585
  msgstr ""
1586
 
1587
+ #: admin/html/whats-new.php:202
1588
  msgid "Overflow footer on form builder page"
1589
  msgstr ""
1590
 
1591
+ #: admin/html/whats-new.php:206
1592
  msgid "WordPress 5.7 compatibility"
1593
  msgstr ""
1594
 
1595
+ #: admin/html/whats-new.php:210
1596
  msgid "Limited time promotion for weDevs birthday"
1597
  msgstr ""
1598
 
1599
+ #: admin/html/whats-new.php:221
1600
  msgid "Meta key will not change if label update"
1601
  msgstr ""
1602
 
1603
+ #: admin/html/whats-new.php:225
1604
  msgid "Login redirect empty previous url"
1605
  msgstr ""
1606
 
1607
+ #: admin/html/whats-new.php:229
1608
  msgid "Email doesnt set as username"
1609
  msgstr ""
1610
 
1611
+ #: admin/html/whats-new.php:233
1612
  msgid "Post redirection to payment doesn't work"
1613
  msgstr ""
1614
 
1615
+ #: admin/html/whats-new.php:237
1616
  msgid "Address field not working when used with conditional logic"
1617
  msgstr ""
1618
 
1619
+ #: admin/html/whats-new.php:241
1620
  msgid "Ajax type category child of not working"
1621
  msgstr ""
1622
 
1623
+ #: admin/html/whats-new.php:245
1624
  msgid "Non recurring subscription did not work"
1625
  msgstr ""
1626
 
1627
+ #: admin/html/whats-new.php:256
1628
  msgid "Menu position has chenged due to dokan has same menu position"
1629
  msgstr ""
1630
 
1631
+ #: admin/html/whats-new.php:260
1632
  msgid "Drag and drop not working properly for new field"
1633
  msgstr ""
1634
 
1635
+ #: admin/html/whats-new.php:271
1636
  msgid "QR and math captcha added to pro feature list"
1637
  msgstr ""
1638
 
1639
+ #: admin/html/whats-new.php:275
1640
  msgid "Tooltip for category navigate"
1641
  msgstr ""
1642
 
1643
+ #: admin/html/whats-new.php:279
1644
  msgid "Understandable guest payment notice"
1645
  msgstr ""
1646
 
1647
+ #: admin/html/whats-new.php:283
1648
  msgid "Paypal non recurring pack id does not set"
1649
  msgstr ""
1650
 
1651
+ #: admin/html/whats-new.php:294
1652
  msgid "Once trial subscription is used, it couldn't reset"
1653
  msgstr ""
1654
 
1655
+ #: admin/html/whats-new.php:298
1656
  msgid "Subscription cancel doesn't work"
1657
  msgstr ""
1658
 
1659
+ #: admin/html/whats-new.php:302
1660
  msgid "The tax rate was not calculated with the total amount"
1661
  msgstr ""
1662
 
1663
+ #: admin/html/whats-new.php:306
1664
  msgid "The width of the column field was breaking"
1665
  msgstr ""
1666
 
1667
+ #: admin/html/whats-new.php:310
1668
  msgid "Paypal recurring payment"
1669
  msgstr ""
1670
 
1671
+ #: admin/html/whats-new.php:321
1672
  msgid "Updated codebase to fix timezone mismatch"
1673
  msgstr ""
1674
 
1675
+ #: admin/html/whats-new.php:332
1676
  msgid "Custom html content field's width"
1677
  msgstr ""
1678
 
1679
+ #: admin/html/whats-new.php:336
1680
  msgid "All states of New Zealand are added"
1681
  msgstr ""
1682
 
1683
+ #: admin/html/whats-new.php:347
1684
  msgid "Get appropriate user id when role based conditions are present"
1685
  msgstr ""
1686
 
1687
+ #: admin/html/whats-new.php:351
1688
  msgid "Show Invalid subscription message if wrong pack id passed"
1689
  msgstr ""
1690
 
1691
+ #: admin/html/whats-new.php:355
1692
  msgid "URL field new window not working"
1693
  msgstr ""
1694
 
1695
+ #: admin/html/whats-new.php:359
1696
  msgid "Option label not working when & use"
1697
  msgstr ""
1698
 
1699
+ #: admin/html/whats-new.php:363
1700
  msgid "Ajax type category not showing on edit"
1701
  msgstr ""
1702
 
1703
+ #: admin/html/whats-new.php:367
1704
  msgid "Multiple file image can't select"
1705
  msgstr ""
1706
 
1707
+ #: admin/html/whats-new.php:371
1708
  msgid "Subscription pack PayPal Checkout gets \"Error: Access Denied\""
1709
  msgstr ""
1710
 
1711
+ #: admin/html/whats-new.php:375
1712
  msgid "Conflict image field with acf image field"
1713
  msgstr ""
1714
 
1715
+ #: admin/html/whats-new.php:379
1716
  msgid "Missing Auckland State for New Zealand country"
1717
  msgstr ""
1718
 
1719
+ #: admin/html/whats-new.php:383
1720
  msgid "Added support for WooCommerce product category value replacemen"
1721
  msgstr ""
1722
 
1723
+ #: admin/html/whats-new.php:393
1724
  msgid "Add character restriction feature"
1725
  msgstr ""
1726
 
1727
+ #: admin/html/whats-new.php:397
1728
  msgid "Make sure post author edit link works only in frontend"
1729
  msgstr ""
1730
 
1731
+ #: admin/html/whats-new.php:401
1732
  msgid "Inconsistency in lost password reset email message"
1733
  msgstr ""
1734
 
1735
+ #: admin/html/whats-new.php:405
1736
  msgid "Saving custom taxonomy terms when input type is text"
1737
  msgstr ""
1738
 
1739
+ #: admin/html/whats-new.php:409
1740
  msgid "Taxonomy field JS error in builder"
1741
  msgstr ""
1742
 
1743
+ #: admin/html/whats-new.php:413
1744
  msgid "Showing WPUF edit link for WP default roles"
1745
  msgstr ""
1746
 
1747
+ #: admin/html/whats-new.php:417
1748
  msgid "Upload button unresponsive issue in iOS"
1749
  msgstr ""
1750
 
1751
+ #: admin/html/whats-new.php:427
1752
  msgid "Add post edit link for post authors in single or archive pages"
1753
  msgstr ""
1754
 
1755
+ #: admin/html/whats-new.php:431
1756
  msgid "Enhance post delete message"
1757
  msgstr ""
1758
 
1759
+ #: admin/html/whats-new.php:435
1760
  msgid "Refactor control buttons visibility in form builder"
1761
  msgstr ""
1762
 
1763
+ #: admin/html/whats-new.php:439
1764
  msgid "Add missing colons after field label"
1765
  msgstr ""
1766
 
1767
+ #: admin/html/whats-new.php:443
1768
  msgid "Post edit map capability condition"
1769
  msgstr ""
1770
 
1771
+ #: admin/html/whats-new.php:447
1772
  msgid "Role based permission for accessing a post form"
1773
  msgstr ""
1774
 
1775
+ #: admin/html/whats-new.php:451
1776
  msgid "Section-break field alignment"
1777
  msgstr ""
1778
 
1779
+ #: admin/html/whats-new.php:455
1780
  msgid "Pay per post doesn't work if subscription pack is activated"
1781
  msgstr ""
1782
 
1783
+ #: admin/html/whats-new.php:459
1784
  msgid "Mime type for uploading JSON files"
1785
  msgstr ""
1786
 
1787
+ #: admin/html/whats-new.php:463
1788
  msgid "File upload with same file name"
1789
  msgstr ""
1790
 
1791
+ #: admin/html/whats-new.php:467
1792
  msgid "Post preview missing fields"
1793
  msgstr ""
1794
 
1795
+ #: admin/html/whats-new.php:471
1796
  msgid "Illigal variable declartion"
1797
  msgstr ""
1798
 
1799
+ #: admin/html/whats-new.php:475
1800
  msgid "Featured image updating issue"
1801
  msgstr ""
1802
 
1803
+ #: admin/html/whats-new.php:479
1804
  msgid "Conflict with Phlox theme"
1805
  msgstr ""
1806
 
1807
+ #: admin/html/whats-new.php:483
1808
  msgid "Textarea custom field data sanitization"
1809
  msgstr ""
1810
 
1811
+ #: admin/html/whats-new.php:487
1812
  msgid "exclude_type warning in wpuf_category_checklist"
1813
  msgstr ""
1814
 
1815
+ #: admin/html/whats-new.php:491
1816
  msgid "Category field not showing all child categories for selection type child of"
1817
  msgstr ""
1818
 
1819
+ #: admin/html/whats-new.php:495
1820
  msgid "Conflict between image and file upload custom fields"
1821
  msgstr ""
1822
 
1823
+ #: admin/html/whats-new.php:499
1824
  msgid "Login url when login page is not set"
1825
  msgstr ""
1826
 
1827
+ #: admin/html/whats-new.php:509
1828
  msgid ""
1829
  "Use common names for Ivory Coast, North Korea and Sourth Korea instead of "
1830
  "their official names"
1831
  msgstr ""
1832
 
1833
+ #: admin/html/whats-new.php:513
1834
  msgid "Fix condition to use default avatar"
1835
  msgstr ""
1836
 
1837
+ #: admin/html/whats-new.php:517
1838
  msgid "Make Email and URL fields clickable"
1839
  msgstr ""
1840
 
1841
+ #: admin/html/whats-new.php:521
1842
  msgid "Fix redirect after user login"
1843
  msgstr ""
1844
 
1845
+ #: admin/html/whats-new.php:525
1846
  msgid "Sanitize textarea field data"
1847
  msgstr ""
1848
 
1849
+ #: admin/html/whats-new.php:529
1850
  msgid ""
1851
  "Fix missing colon to email, URL, text and textarea labels when renders "
1852
  "their data"
1853
  msgstr ""
1854
 
1855
+ #: admin/html/whats-new.php:533
1856
  msgid "Prevent showing empty labels for fields that have render_field_data method"
1857
  msgstr ""
1858
 
1859
+ #: admin/html/whats-new.php:543
1860
  msgid "Add Namibian Dollar in currency list"
1861
  msgstr ""
1862
 
1863
+ #: admin/html/whats-new.php:547
1864
  msgid "Add sync values option for option data fields"
1865
  msgstr ""
1866
 
1867
+ #: admin/html/whats-new.php:551
1868
  msgid "Allow uploading image that having filesize meets php ini settings"
1869
  msgstr ""
1870
 
1871
+ #: admin/html/whats-new.php:555
1872
  msgid "Limit the selection of one image at a time"
1873
  msgstr ""
1874
 
1875
+ #: admin/html/whats-new.php:559
1876
  msgid "Use file name and size to generate hash to prevent duplicant image upload"
1877
  msgstr ""
1878
 
1879
+ #: admin/html/whats-new.php:563
1880
  msgid "Sanitize text and textarea field data"
1881
  msgstr ""
1882
 
1883
+ #: admin/html/whats-new.php:567
1884
  msgid ""
1885
  "Show label instead of values for radio, checkbox, dropdown and multiselect "
1886
  "data"
1887
  msgstr ""
1888
 
1889
+ #: admin/html/whats-new.php:571
1890
  msgid "Saving custom taxonomies for type text input"
1891
  msgstr ""
1892
 
1893
+ #: admin/html/whats-new.php:575
1894
  msgid "Admin settings link for recaptcha helper text"
1895
  msgstr ""
1896
 
1897
+ #: admin/html/whats-new.php:579
1898
  msgid "Undefined name property for Custom HTML fields"
1899
  msgstr ""
1900
 
1901
+ #: admin/html/whats-new.php:583
1902
  msgid "Delete attachment process"
1903
  msgstr ""
1904
 
1905
+ #: admin/html/whats-new.php:587
1906
  msgid "Missing billing address in invoice PDF"
1907
  msgstr ""
1908
 
1909
+ #: admin/html/whats-new.php:591
1910
  msgid "Showing country field value in frontend post content"
1911
  msgstr ""
1912
 
1913
+ #: admin/html/whats-new.php:595
1914
  msgid "Avatar size display not complying with admin settings size"
1915
  msgstr ""
1916
 
1917
+ #: admin/html/whats-new.php:599
1918
  msgid "Display default avatars on admin settings discussion page"
1919
  msgstr ""
1920
 
1921
+ #: admin/html/whats-new.php:603
1922
  msgid "Redirect to subscription page at registration"
1923
  msgstr ""
1924
 
1925
+ #: admin/html/whats-new.php:607
1926
  msgid "Error notice regarding registration page redirect"
1927
  msgstr ""
1928
 
1929
+ #: admin/html/whats-new.php:611
1930
  msgid "Escaping html in registration errors"
1931
  msgstr ""
1932
 
1933
+ #: admin/html/whats-new.php:615
1934
  msgid "Default login redirect link"
1935
  msgstr ""
1936
 
1937
+ #: admin/html/whats-new.php:619
1938
  msgid "Implementing default WP login page override option"
1939
  msgstr ""
1940
 
1941
+ #: admin/html/whats-new.php:623
1942
  msgid "Transparent background of autosuggestion dropdown"
1943
  msgstr ""
1944
 
1945
+ #: admin/html/whats-new.php:633
1946
  msgid "Import forms system"
1947
  msgstr ""
1948
 
1949
+ #: admin/html/whats-new.php:637
1950
  msgid "Password reset system"
1951
  msgstr ""
1952
 
1953
+ #: admin/html/whats-new.php:641
1954
  msgid "Updated url validation regex to support modern tlds"
1955
  msgstr ""
1956
 
1957
+ #: admin/html/whats-new.php:645
1958
  msgid "Export WPUF forms individually from admin tools page"
1959
  msgstr ""
1960
 
1961
+ #: admin/html/whats-new.php:649
1962
  msgid "Subscription cycle label translation issue"
1963
  msgstr ""
1964
 
1965
+ #: admin/html/whats-new.php:653
1966
  msgid "ACF integration for checkbox fields"
1967
  msgstr ""
1968
 
1969
+ #: admin/html/whats-new.php:657
1970
  msgid "Illegal string offset warning while updating settings"
1971
  msgstr ""
1972
 
1973
+ #: admin/html/whats-new.php:661
1974
  msgid "Conditional logic for Section Break field"
1975
  msgstr ""
1976
 
1977
+ #: admin/html/whats-new.php:665
1978
  msgid "Subscriptions cannot be deleted from backend"
1979
  msgstr ""
1980
 
1981
+ #: admin/html/whats-new.php:669
1982
  msgid "A regression regarding saving checkbox data"
1983
  msgstr ""
1984
 
1985
+ #: admin/html/whats-new.php:673
1986
  msgid "Default value of multi-select fields is not showing"
1987
  msgstr ""
1988
 
1989
+ #: admin/html/whats-new.php:683
1990
  msgid "Hide post edit option when subscription is expired"
1991
  msgstr ""
1992
 
1993
+ #: admin/html/whats-new.php:685
1994
  msgid "Hide post edit option from users whose subscription pack is expired."
1995
  msgstr ""
1996
 
1997
+ #: admin/html/whats-new.php:688
1998
  msgid "Check files to prevent duplicity in media upload"
1999
  msgstr ""
2000
 
2001
+ #: admin/html/whats-new.php:690
2002
  msgid ""
2003
  "A simple measure has been taken to prevent maliciously flooding the site by "
2004
  "uploading same file multiple times. Though this won't work with already "
2005
  "uploaded medias."
2006
  msgstr ""
2007
 
2008
+ #: admin/html/whats-new.php:693
2009
  msgid "Refactor address fields in Account section"
2010
  msgstr ""
2011
 
2012
+ #: admin/html/whats-new.php:695
2013
  msgid "Address edit section from Account section has been rewritten to improve UX."
2014
  msgstr ""
2015
 
2016
+ #: admin/html/whats-new.php:698
2017
  msgid "Update Paypal payment gateway"
2018
  msgstr ""
2019
 
2020
+ #: admin/html/whats-new.php:700
2021
  msgid "Paypal payment gateway has seen some improvements."
2022
  msgstr ""
2023
 
2024
+ #: admin/html/whats-new.php:703
2025
  msgid "Default Category selection improvements"
2026
  msgstr ""
2027
 
2028
+ #: admin/html/whats-new.php:705
2029
  msgid ""
2030
  "An intuitive way of selecting default category of a selected post type has "
2031
  "been introduced."
2032
  msgstr ""
2033
 
2034
+ #: admin/html/whats-new.php:708
2035
  msgid "Compatibility issue with ACF date time field"
2036
  msgstr ""
2037
 
2038
+ #: admin/html/whats-new.php:710
2039
  msgid "A Compatibility issue with ACF date time field has been addressed."
2040
  msgstr ""
2041
 
2042
+ #: admin/html/whats-new.php:713
2043
  msgid "Media title, caption & description not saving"
2044
  msgstr ""
2045
 
2046
+ #: admin/html/whats-new.php:715
2047
  msgid ""
2048
  "Media title, caption & description were not saving from frontend. They will "
2049
  "now."
2050
  msgstr ""
2051
 
2052
+ #: admin/html/whats-new.php:718
2053
  msgid ""
2054
  "The Events Calendar venue and organizer fields issue in WPUF Custom Fields "
2055
  "metabox"
2056
  msgstr ""
2057
 
2058
+ #: admin/html/whats-new.php:720
2059
  msgid ""
2060
  "A workaround has been introduced to save The Events Calendar Venue and "
2061
  "Organizer fields properly from WPUF Custom Fields metabox."
2062
  msgstr ""
2063
 
2064
+ #: admin/html/whats-new.php:723
2065
  msgid "Checkbox data not saving from WPUF Custom Fields metabox"
2066
  msgstr ""
2067
 
2068
+ #: admin/html/whats-new.php:725
2069
  msgid ""
2070
  "Checkboxe data from WPUF Custom Fields metabox were not saving. It has been "
2071
  "fixed."
2072
  msgstr ""
2073
 
2074
+ #: admin/html/whats-new.php:728
2075
  msgid "Multi-column Repeater field data saving issue"
2076
  msgstr ""
2077
 
2078
+ #: admin/html/whats-new.php:730
2079
  msgid ""
2080
  "Multi-column Repeater field data from a form was not saving. It has been "
2081
  "fixed."
2082
  msgstr ""
2083
 
2084
+ #: admin/html/whats-new.php:733
2085
  msgid "Multistep form conflict with Elementor"
2086
  msgstr ""
2087
 
2088
+ #: admin/html/whats-new.php:735
2089
  msgid "Multistep form had a conflict with Elementor. It has been fixed."
2090
  msgstr ""
2091
 
2092
+ #: admin/html/whats-new.php:738
2093
  msgid "Multiple images showing issue in frontend"
2094
  msgstr ""
2095
 
2096
+ #: admin/html/whats-new.php:740
2097
  msgid "Multiple images in a post were not showing in frontend. Now they will."
2098
  msgstr ""
2099
 
2100
+ #: admin/html/whats-new.php:749
2101
  msgid "Nonce not verify on login"
2102
  msgstr ""
2103
 
2104
+ #: admin/html/whats-new.php:751
2105
  msgid "Return of function wp_verify_nonce() was ignored."
2106
  msgstr ""
2107
 
2108
+ #: admin/html/whats-new.php:760
2109
  msgid "Option to set which tab shows as active on the account page"
2110
  msgstr ""
2111
 
2112
+ #: admin/html/whats-new.php:762
2113
  msgid ""
2114
  "Option to set which tab shows as active on the account page. To configure "
2115
  "this setting navigate to wp-admin->User Frontend->Settings->My "
2116
  "Account->Active Tab "
2117
  msgstr ""
2118
 
2119
+ #: admin/html/whats-new.php:765
2120
  msgid "Unlock option was unavailable after the post being locked"
2121
  msgstr ""
2122
 
2123
+ #: admin/html/whats-new.php:767
2124
  msgid "Unlock option was unavailable after the post being locked."
2125
  msgstr ""
2126
 
2127
+ #: admin/html/whats-new.php:770
2128
  msgid "Gutenberg block of WPUF didn't work on bedrock installation"
2129
  msgstr ""
2130
 
2131
+ #: admin/html/whats-new.php:772
2132
  msgid "Gutenberg block of WPUF didn't work on bedrock installation."
2133
  msgstr ""
2134
 
2135
+ #: admin/html/whats-new.php:775
2136
  msgid "Sending admin payment received email twice"
2137
  msgstr ""
2138
 
2139
+ #: admin/html/whats-new.php:777
2140
  msgid ""
2141
  "After processing payment admin & user was receiving payment received email "
2142
  "twice."
2143
  msgstr ""
2144
 
2145
+ #: admin/html/whats-new.php:780
2146
  msgid ""
2147
  "Add shortcode support to display post information in the Post Expiration "
2148
  "Message"
2149
  msgstr ""
2150
 
2151
+ #: admin/html/whats-new.php:782
2152
  msgid ""
2153
  "Add shortcode support to display post information in the Post Expiration "
2154
  "Message. You can use: <strong>{post_author} {post_url} {blogname} "
2155
  "{post_title} {post_status}</strong>"
2156
  msgstr ""
2157
 
2158
+ #: admin/html/whats-new.php:785
2159
  msgid "Add optin on the setup wizard"
2160
  msgstr ""
2161
 
2162
+ #: admin/html/whats-new.php:787
2163
  msgid ""
2164
  "Added optin on the setup wizard, admin can choose whether he/she wants to "
2165
  "share server environment details (php, mysql, server, WordPress versions), "
2167
  "name and url, admin name and email address. No sensitive data is tracked"
2168
  msgstr ""
2169
 
2170
+ #: admin/html/whats-new.php:796
2171
  msgid "Post Owner problem"
2172
  msgstr ""
2173
 
2174
+ #: admin/html/whats-new.php:798
2175
  msgid ""
2176
  "Posts were not assigned to the selected default post owner, this issue has "
2177
  "been fixed."
2178
  msgstr ""
2179
 
2180
+ #: admin/html/whats-new.php:801
2181
  msgid "Google reCaptcha was not working"
2182
  msgstr ""
2183
 
2184
+ #: admin/html/whats-new.php:803
2185
  msgid ""
2186
  "Google reCaptcha was not working, users could submit the form without "
2187
  "reCaptcha validation."
2188
  msgstr ""
2189
 
2190
+ #: admin/html/whats-new.php:812
2191
  msgid "Added column field"
2192
  msgstr ""
2193
 
2194
+ #: admin/html/whats-new.php:817
2195
  msgid "Unable to render the events on the front-end dashboard"
2196
  msgstr ""
2197
 
2198
+ #: admin/html/whats-new.php:819
2199
  msgid ""
2200
  "On the frontend dashboard, the submitted events were not showing, you will "
2201
  "get it fixed in this version."
2202
  msgstr ""
2203
 
2204
+ #: admin/html/whats-new.php:822
2205
  msgid "Page order getting 0(zero) after editing from the frontend"
2206
  msgstr ""
2207
 
2208
+ #: admin/html/whats-new.php:824
2209
  msgid ""
2210
  "Page order was not saving while editing a post using WPUF form, it has been "
2211
  "fixed."
2212
  msgstr ""
2213
 
2214
+ #: admin/html/whats-new.php:827
2215
  msgid "Text input field for taxonomies not working"
2216
  msgstr ""
2217
 
2218
+ #: admin/html/whats-new.php:829
2219
  msgid ""
2220
  "When taxonomy field type is set to `Text Input` then a fatal error was "
2221
  "showing on the frontend, no error with taxonomy field in the latest version."
2222
  msgstr ""
2223
 
2224
+ #: admin/html/whats-new.php:832
2225
  msgid ""
2226
  "In radio and checkbox field use conditional logic that value does not save "
2227
  "in database"
2228
  msgstr ""
2229
 
2230
+ #: admin/html/whats-new.php:834
2231
  msgid ""
2232
  "The selected value of radio and checkbox field were not showing while "
2233
  "editing posts from the backend or frontend, you can see the selected value "
2234
  "in this version."
2235
  msgstr ""
2236
 
2237
+ #: admin/html/whats-new.php:837
2238
  msgid "The args param not working with get_avatar filter"
2239
  msgstr ""
2240
 
2241
+ #: admin/html/whats-new.php:839
2242
  msgid "The args parameter did not exist with get_avatar filter, which now exists."
2243
  msgstr ""
2244
 
2245
+ #: admin/html/whats-new.php:842
2246
  msgid "The item in ajax taxonomy field was not selected"
2247
  msgstr ""
2248
 
2249
+ #: admin/html/whats-new.php:844
2250
  msgid ""
2251
  "When the taxonomy field type is set to Ajax, the submitted terms were not "
2252
  "showing in the backend and frontend which have been fixed."
2253
  msgstr ""
2254
 
2255
+ #: admin/html/whats-new.php:853
2256
  msgid "Unable to send new user registration email"
2257
  msgstr ""
2258
 
2259
+ #: admin/html/whats-new.php:855
2260
  msgid ""
2261
  "WP User Frontend default registration form `[wpuf-registration]` was unable "
2262
  "to send the new user registration email."
2263
  msgstr ""
2264
 
2265
+ #: admin/html/whats-new.php:858
2266
  msgid "WPUF forms block compatibility issue with the latest WP version"
2267
  msgstr ""
2268
 
2269
+ #: admin/html/whats-new.php:860
2270
  msgid ""
2271
  "With the latest version of WordPress the gutenberg block of WP User "
2272
  "Frontend were not working. In this version, you will get it fixed."
2273
  msgstr ""
2274
 
2275
+ #: admin/html/whats-new.php:863
2276
  msgid "Page not update where `[wpuf_dashboard]` shortcode exist"
2277
  msgstr ""
2278
 
2279
+ #: admin/html/whats-new.php:865
2280
  msgid ""
2281
  "While using Gutenberg, the page were not being updated with WPUF shortcode "
2282
  "[wpuf dashboard]"
2283
  msgstr ""
2284
 
2285
+ #: admin/html/whats-new.php:868
2286
  msgid "Retain default when determining whether to display the admin bar"
2287
  msgstr ""
2288
 
2289
+ #: admin/html/whats-new.php:870
2290
  msgid ""
2291
  "From the User Frontend Settings, set that Administrator, Editor, Vendor can "
2292
  "see the admin bar. Now, the super admin want, one specific user ( who has "
2296
  "frontend."
2297
  msgstr ""
2298
 
2299
+ #: admin/html/whats-new.php:873
2300
  msgid "Fatal error when use PHP lower version (5.4 or lower)"
2301
  msgstr ""
2302
 
2303
+ #: admin/html/whats-new.php:875
2304
  msgid ""
2305
  "It was unable to install WP User Frontend with PHP 5.4 or lower version. "
2306
  "Here is the error details: <br><br><strong>Fatal error: Can't use method "
2308
  "/wp-user-frontend/class/frontend-form-post.php on line 194</strong>"
2309
  msgstr ""
2310
 
2311
+ #: admin/html/whats-new.php:878
2312
  msgid "Product form was unable to show the single gallery image"
2313
  msgstr ""
2314
 
2315
+ #: admin/html/whats-new.php:880
2316
  msgid ""
2317
  "When user upload single image for product gallery using WPUF WooCommerce "
2318
  "product form, that image were not showing on the frontend."
2319
  msgstr ""
2320
 
2321
+ #: admin/html/whats-new.php:889
2322
  msgid "WooCommerce gallery images not getting saved"
2323
  msgstr ""
2324
 
2325
+ #: admin/html/whats-new.php:891
2326
  msgid ""
2327
  "After releasing version 2.9.3, WooCommerce gallery image field stopped "
2328
  "working. You will get it fixed in this version."
2329
  msgstr ""
2330
 
2331
+ #: admin/html/whats-new.php:900
2332
  msgid "The Events Calendar Integration Form"
2333
  msgstr ""
2334
 
2335
+ #: admin/html/whats-new.php:902
2336
  msgid ""
2337
  "Now admin can allow users to create event from the frontend. Currently WPUF "
2338
  "has a one click pre-build event form that has been integrated with The "
2339
  "Events Calendar plugin"
2340
  msgstr ""
2341
 
2342
+ #: admin/html/whats-new.php:905
2343
  msgid "Post Submission Facility From Account Page"
2344
  msgstr ""
2345
 
2346
+ #: admin/html/whats-new.php:907
2347
  msgid ""
2348
  "On the frontend account page, added a new menu item named <b>Submit "
2349
  "Post</b>. Now admin can allow users to submit post from their default "
2352
  "you can assign any post form that will use to submit posts."
2353
  msgstr ""
2354
 
2355
+ #: admin/html/whats-new.php:910
2356
  msgid "Login/Lost Password Link Under Registration Form"
2357
  msgstr ""
2358
 
2359
+ #: admin/html/whats-new.php:912
2360
  msgid "Added Login/Lost Password link under registration form"
2361
  msgstr ""
2362
 
2363
+ #: admin/html/whats-new.php:921
2364
  msgid "Added drag and drop image ordering on image upload"
2365
  msgstr ""
2366
 
2367
+ #: admin/html/whats-new.php:923
2368
  msgid ""
2369
  "Now frontend users can drag & drop the images/files to change the order "
2370
  "while uploading."
2371
  msgstr ""
2372
 
2373
+ #: admin/html/whats-new.php:926
2374
  msgid "Added reCAPTCHA field in login form"
2375
  msgstr ""
2376
 
2377
+ #: admin/html/whats-new.php:928
2378
  msgid ""
2379
  "Admin has the option to show reCAPTCHA field in login form. Check the "
2380
  "related settings from <strong>User Frontend > Settings > "
2381
  "Login/Registration</strong>"
2382
  msgstr ""
2383
 
2384
+ #: admin/html/whats-new.php:931
2385
  msgid "Added preview option in forms"
2386
  msgstr ""
2387
 
2388
+ #: admin/html/whats-new.php:933
2389
  msgid ""
2390
  "You can see a nice <strong>Preview</strong> button with <strong>Save "
2391
  "Form</strong> button, admin can take a quick look of the form without using "
2392
  "shortcode"
2393
  msgstr ""
2394
 
2395
+ #: admin/html/whats-new.php:936
2396
  msgid "Fixed hiding “Select Image” button while uploading multiple images."
2397
  msgstr ""
2398
 
2399
+ #: admin/html/whats-new.php:938
2400
  msgid ""
2401
  "The upload button will not be hidden until the user selects max number of "
2402
  "files "
2403
  msgstr ""
2404
 
2405
+ #: admin/html/whats-new.php:941
2406
  msgid "Added form limit notice before form submission"
2407
  msgstr ""
2408
 
2409
+ #: admin/html/whats-new.php:943
2410
  msgid ""
2411
  "Limit notice message was showing after submission, now it is showing when "
2412
  "rendering the form"
2413
  msgstr ""
2414
 
2415
+ #: admin/html/whats-new.php:946
2416
  msgid "Fixed: default post category not saving"
2417
  msgstr ""
2418
 
2419
+ #: admin/html/whats-new.php:948
2420
  msgid ""
2421
  "From the form <strong>Settings > Post Settings</strong>, default post "
2422
  "category options were not saving. Now, it's fixed."
2423
  msgstr ""
2424
 
2425
+ #: admin/html/whats-new.php:951
2426
  msgid ""
2427
  "WPUF dashboard shortcode with form_id attribute was not showing posts "
2428
  "properly"
2429
  msgstr ""
2430
 
2431
+ #: admin/html/whats-new.php:953
2432
  msgid ""
2433
  "Now you can list posts on the frontend by using <strong>form_id<strong/> "
2434
  "attribute with <strong>[wpuf_dashboard]</strong> shortcode"
2435
  msgstr ""
2436
 
2437
+ #: admin/html/whats-new.php:962
2438
  msgid "Changed text domain to `wp-user-frontend` from `wpuf` "
2439
  msgstr ""
2440
 
2441
+ #: admin/html/whats-new.php:964
2442
  msgid ""
2443
  "If you are using other language than English. Please <b>rename</b> your "
2444
  "<i>.po and .mo </i> files to `wp-user-frontend_` from `wpuf_` <br> This "
2445
  "change was made to support translations from translate.wordpress.org"
2446
  msgstr ""
2447
 
2448
+ #: admin/html/whats-new.php:967
2449
  msgid "Added WP User Frontend Data export and erase functionality."
2450
  msgstr ""
2451
 
2452
+ #: admin/html/whats-new.php:969
2453
  msgid "Added functionality to export WP User Frontend Data to comply with GDPR."
2454
  msgstr ""
2455
 
2456
+ #: admin/html/whats-new.php:972
2457
  msgid "Added billing address customizer."
2458
  msgstr ""
2459
 
2460
+ #: admin/html/whats-new.php:974
2461
  msgid "Added customizer options for billing address in payment page."
2462
  msgstr ""
2463
 
2464
+ #: admin/html/whats-new.php:977
2465
  msgid "Make the payment page responsive."
2466
  msgstr ""
2467
 
2468
+ #: admin/html/whats-new.php:979
2469
  msgid "Some css adjustments are made in payment page to make it responsive."
2470
  msgstr ""
2471
 
2472
+ #: admin/html/whats-new.php:982
2473
  msgid "Fixed image upload issue in Safari."
2474
  msgstr ""
2475
 
2476
+ #: admin/html/whats-new.php:984
2477
  msgid "Images were not showing after upload in safari, it is fixed now."
2478
  msgstr ""
2479
 
2480
+ #: admin/html/whats-new.php:987
2481
  msgid "Post update issue after updating or removing post images."
2482
  msgstr ""
2483
 
2484
+ #: admin/html/whats-new.php:989
2485
  msgid ""
2486
  "Posts cannot be updated after updating or removing post images, it is fixed "
2487
  "now."
2488
  msgstr ""
2489
 
2490
+ #: admin/html/whats-new.php:998
2491
  msgid "Allow overriding form input styles using theme styling."
2492
  msgstr ""
2493
 
2494
+ #: admin/html/whats-new.php:1000
2495
  msgid "Overriding form input styles using theme style is now possible."
2496
  msgstr ""
2497
 
2498
+ #: admin/html/whats-new.php:1003
2499
  msgid "Fixed Auto Login after registration."
2500
  msgstr ""
2501
 
2502
+ #: admin/html/whats-new.php:1005
2503
  msgid "Auto Login after registration was not working is fixed now."
2504
  msgstr ""
2505
 
2506
+ #: admin/html/whats-new.php:1008
2507
  msgid "Fixed fallback cost calculation"
2508
  msgstr ""
2509
 
2510
+ #: admin/html/whats-new.php:1010
2511
  msgid "Fallback cost calculation was inaccurate for some cases, it is fixed now."
2512
  msgstr ""
2513
 
2514
+ #: admin/html/whats-new.php:1013
2515
  msgid "Removal of subscription from User Profile gets reverted if updated"
2516
  msgstr ""
2517
 
2518
+ #: admin/html/whats-new.php:1015
2519
  msgid "User subscription deletion gets reverted if updated is fixed."
2520
  msgstr ""
2521
 
2522
+ #: admin/html/whats-new.php:1018
2523
  msgid "Show Free pack users in subscribers list."
2524
  msgstr ""
2525
 
2526
+ #: admin/html/whats-new.php:1020
2527
  msgid "Free pack users were not showing in subscribers list, now they will."
2528
  msgstr ""
2529
 
2530
+ #: admin/html/whats-new.php:1029
2531
  msgid "WP User Frontend Guten Block is added"
2532
  msgstr ""
2533
 
2534
+ #: admin/html/whats-new.php:1031
2535
  msgid ""
2536
  "WPUF Form Block is now available to be used within gutenberg editor with "
2537
  "preview of the form. "
2538
  msgstr ""
2539
 
2540
+ #: admin/html/whats-new.php:1034
2541
  msgid "Advanced Custom Fields plugin compatibility"
2542
  msgstr ""
2543
 
2544
+ #: admin/html/whats-new.php:1036
2545
  msgid "Now all your ACF fields can be used within WPUF Post forms. "
2546
  msgstr ""
2547
 
2548
+ #: admin/html/whats-new.php:1039
2549
  msgid "Taxonomy Terms not showing for custom post types"
2550
  msgstr ""
2551
 
2552
+ #: admin/html/whats-new.php:1041
2553
  msgid ""
2554
  "Fixed an issue with taxonomy terms not appearing for Custom Post types "
2555
  "within Form Settings and Dashboard Post Listing"
2556
  msgstr ""
2557
 
2558
+ #: admin/html/whats-new.php:1044
2559
  msgid "Various other code optimizations"
2560
  msgstr ""
2561
 
2562
+ #: admin/html/whats-new.php:1046 admin/html/whats-new.php:1103
2563
  msgid "Code structure organization and optimization for better performance"
2564
  msgstr ""
2565
 
2566
+ #: admin/html/whats-new.php:1055
2567
  msgid "WoooCommerce billing address Sync"
2568
  msgstr ""
2569
 
2570
+ #: admin/html/whats-new.php:1057
2571
  msgid ""
2572
  "If an existing customer has previously set his billing address, that will "
2573
  "be imported into WPUF Billing address "
2574
  msgstr ""
2575
 
2576
+ #: admin/html/whats-new.php:1060
2577
  msgid "Trial subscription message not showing properly"
2578
  msgstr ""
2579
 
2580
+ #: admin/html/whats-new.php:1062
2581
  msgid "Subscriptions with Trial now shows trial notices"
2582
  msgstr ""
2583
 
2584
+ #: admin/html/whats-new.php:1065
2585
  msgid "Reset email Key not working"
2586
  msgstr ""
2587
 
2588
+ #: admin/html/whats-new.php:1067
2589
  msgid "Reset Email key was not working in some cases"
2590
  msgstr ""
2591
 
2592
+ #: admin/html/whats-new.php:1070
2593
  msgid "Post count not showing on the frontend dashboard"
2594
  msgstr ""
2595
 
2596
+ #: admin/html/whats-new.php:1072
2597
  msgid ""
2598
  "Dashboard with multiple post type was not showing post counts properly, is "
2599
  "now fixed and shows count for each post type"
2600
  msgstr ""
2601
 
2602
+ #: admin/html/whats-new.php:1075
2603
  msgid "Login Redirect showing blank page is fixed"
2604
  msgstr ""
2605
 
2606
+ #: admin/html/whats-new.php:1077
2607
  msgid ""
2608
  "If \"Previous Page\" was set for redirection, login redirect was "
2609
  "redirecting to blank page for users who hit login page directly"
2610
  msgstr ""
2611
 
2612
+ #: admin/html/whats-new.php:1086
2613
  msgid "Enhanced Login Redirect to redirect users to previous page"
2614
  msgstr ""
2615
 
2616
+ #: admin/html/whats-new.php:1088
2617
  msgid ""
2618
  "You can choose Previous Page as Login Redirect page settings now to "
2619
  "redirect users to the page from which they went for Login. "
2620
  msgstr ""
2621
 
2622
+ #: admin/html/whats-new.php:1091
2623
  msgid "Email HTML links not Rendreing properly issue is fixed"
2624
  msgstr ""
2625
 
2626
+ #: admin/html/whats-new.php:1093
2627
  msgid ""
2628
  "For some clients emails were not rendering the HTML links properly, this is "
2629
  "now fixed"
2630
  msgstr ""
2631
 
2632
+ #: admin/html/whats-new.php:1096
2633
  msgid "Form Builder : Form Field's Help text styles not showing properly"
2634
  msgstr ""
2635
 
2636
+ #: admin/html/whats-new.php:1098
2637
  msgid "Help texts styling is now fixed and much easier to read and understand"
2638
  msgstr ""
2639
 
2640
+ #: admin/html/whats-new.php:1101
2641
  msgid "Various other code improvements"
2642
  msgstr ""
2643
 
2644
+ #: admin/html/whats-new.php:1112
2645
  msgid "Dashboard Post Listing now supports multiple post types"
2646
  msgstr ""
2647
 
2648
+ #: admin/html/whats-new.php:1114
2649
  msgid ""
2650
  "Now you can show multiple post type in user dashboard using shortcode like "
2651
  "this : <br><b>[wpuf_dashboard post_type=\"post,page,custom_type\"]</b> "
2652
  msgstr ""
2653
 
2654
+ #: admin/html/whats-new.php:1117
2655
  msgid "Added Login Redirect Settings"
2656
  msgstr ""
2657
 
2658
+ #: admin/html/whats-new.php:1119
2659
  msgid ""
2660
  "You can now set a page from <i>WPUF Settings > Login/Registration > "
2661
  "Redirect after Login</i>. When login redirection is active the user will be "
2662
  "redirected to this page after login."
2663
  msgstr ""
2664
 
2665
+ #: admin/html/whats-new.php:1122
2666
  msgid "Image Upload field button text can be changed"
2667
  msgstr ""
2668
 
2669
+ #: admin/html/whats-new.php:1124
2670
  msgid ""
2671
  "The upload button text can now be changed for image upload fields which "
2672
  "defaults to \"Select Image\" if not set. "
2673
  msgstr ""
2674
 
2675
+ #: admin/html/whats-new.php:1127
2676
  msgid "Multi Step Form styles made compatible with more themes"
2677
  msgstr ""
2678
 
2679
+ #: admin/html/whats-new.php:1129
2680
  msgid "Multi Step form can now be styled more easily with other themes "
2681
  msgstr ""
2682
 
2683
+ #: admin/html/whats-new.php:1132
2684
  msgid "Required field condition for google map not working is fixed"
2685
  msgstr ""
2686
 
2687
+ #: admin/html/whats-new.php:1134
2688
  msgid ""
2689
  "If Google Map field was set as required users were able to submit form "
2690
  "without changing the default value."
2691
  msgstr ""
2692
 
2693
+ #: admin/html/whats-new.php:1143
2694
  msgid "Admin form builder is now fully responsive."
2695
  msgstr ""
2696
 
2697
+ #: admin/html/whats-new.php:1145
2698
  msgid ""
2699
  "Now you can edit forms from your mobile devices directly. Our improved "
2700
  "responsive layouts of form builder makes it easy for you to build forms on "
2701
  "the go."
2702
  msgstr ""
2703
 
2704
+ #: admin/html/whats-new.php:1148
2705
  msgid "Added color schemes for creating attractive form layouts."
2706
  msgstr ""
2707
 
2708
+ #: admin/html/whats-new.php:1150
2709
  msgid ""
2710
  "We have added 3 new color schemes for the form layouts which you can choose "
2711
  "from each form's new display settings."
2712
  msgstr ""
2713
 
2714
+ #: admin/html/whats-new.php:1153
2715
  msgid "Restrict Free subscription pack to be enabled multiple times "
2716
  msgstr ""
2717
 
2718
+ #: admin/html/whats-new.php:1155
2719
  msgid ""
2720
  "Free subscription packs now can only be purchased once and the limit "
2721
  "applies properly"
2722
  msgstr ""
2723
 
2724
+ #: admin/html/whats-new.php:1158
2725
  msgid "Various other bug fixes and improvements were made "
2726
  msgstr ""
2727
 
2728
+ #: admin/html/whats-new.php:1160
2729
  msgid "Please see the change log to see full details."
2730
  msgstr ""
2731
 
2732
+ #: admin/html/whats-new.php:1169
2733
  msgid "Added upgrade function for default category"
2734
  msgstr ""
2735
 
2736
+ #: admin/html/whats-new.php:1171
2737
  msgid "Upgrader added to upgrade previously set default post category."
2738
  msgstr ""
2739
 
2740
+ #: admin/html/whats-new.php:1174
2741
  msgid "Subscription pack cannot be canceled"
2742
  msgstr ""
2743
 
2744
+ #: admin/html/whats-new.php:1176
2745
  msgid ""
2746
  "Fixed recurring subscription pack cannot be canceled from my account page "
2747
  "in subscription details section."
2748
  msgstr ""
2749
 
2750
+ #: admin/html/whats-new.php:1179
2751
  msgid "page installer admin notice logic issue"
2752
  msgstr ""
2753
 
2754
+ #: admin/html/whats-new.php:1181
2755
  msgid ""
2756
  "Fixed page installer admin notice logic problem due to new payment settings "
2757
  "default value not set."
2758
  msgstr ""
2759
 
2760
+ #: admin/html/whats-new.php:1191
2761
  msgid "Setup Wizard"
2762
  msgstr ""
2763
 
2764
+ #: admin/html/whats-new.php:1193
2765
  msgid "Setup Wizard added to turn off payment options and install pages."
2766
  msgstr ""
2767
 
2768
+ #: admin/html/whats-new.php:1197
2769
  msgid "Multi-select Category"
2770
  msgstr ""
2771
 
2772
+ #: admin/html/whats-new.php:1199
2773
  msgid "Add multi-select to default category in post form settings."
2774
  msgstr ""
2775
 
2776
+ #: admin/html/whats-new.php:1203
2777
  msgid "Select Text option for Taxonomy"
2778
  msgstr ""
2779
 
2780
+ #: admin/html/whats-new.php:1205
2781
  msgid ""
2782
  "Add Select Text option for taxonomy fields. Now you can add default text "
2783
  "with empty value as first option for Taxonomy dropdown."
2784
  msgstr ""
2785
 
2786
+ #: admin/html/whats-new.php:1208
2787
  msgid "Taxonomy Checkbox Inline"
2788
  msgstr ""
2789
 
2790
+ #: admin/html/whats-new.php:1210
2791
  msgid ""
2792
  "Added checkbox inline option to taxonomy checkbox. You can now display "
2793
  "Taxonomy checkbox fields inline."
2794
  msgstr ""
2795
 
2796
+ #: admin/html/whats-new.php:1220
2797
  msgid "Manage schedule for form submission"
2798
  msgstr ""
2799
 
2800
+ #: admin/html/whats-new.php:1222
2801
  msgid ""
2802
  "Do not accept form submission if the current date is not between the date "
2803
  "range of the schedule."
2804
  msgstr ""
2805
 
2806
+ #: admin/html/whats-new.php:1226
2807
  msgid "Restrict form submission based on the user roles"
2808
  msgstr ""
2809
 
2810
+ #: admin/html/whats-new.php:1228
2811
  msgid ""
2812
  "Restrict form submission based on the user roles. Now you can manage user "
2813
  "role base permission on form submission."
2814
  msgstr ""
2815
 
2816
+ #: admin/html/whats-new.php:1232
2817
  msgid "Limit how many entries a form will accept"
2818
  msgstr ""
2819
 
2820
+ #: admin/html/whats-new.php:1234
2821
  msgid ""
2822
  "Limit how many entries a form will accept and display a custom message when "
2823
  "that limit is reached."
2824
  msgstr ""
2825
 
2826
+ #: admin/html/whats-new.php:1238
2827
  msgid "Show/hide Admin Bar"
2828
  msgstr ""
2829
 
2830
+ #: admin/html/whats-new.php:1240
2831
  msgid "Control the admin bar visibility based on user roles."
2832
  msgstr ""
2833
 
2834
+ #: admin/html/whats-new.php:1244
2835
  msgid "Ajax Login widget"
2836
  msgstr ""
2837
 
2838
+ #: admin/html/whats-new.php:1246
2839
  msgid ""
2840
  "Login user is more simple now with Ajax Login Widget. The simple ajax login "
2841
  "form do not required page loading for login."
2842
  msgstr ""
2843
 
2844
+ #: admin/html/whats-new.php:1250
2845
  msgid "Form submission with Captcha field"
2846
  msgstr ""
2847
 
2848
+ #: admin/html/whats-new.php:1252
2849
  msgid "Form field validation process updated if form submits with captcha field."
2850
  msgstr ""
2851
 
2852
+ #: admin/html/whats-new.php:1266
2853
  msgid "What's New in WPUF?"
2854
  msgstr ""
2855
 
2983
  msgstr ""
2984
 
2985
  #: admin/posting.php:72 class/asset-loader.php:55 class/render-form.php:1673
2986
+ #: wpuf.php:739
2987
  msgid "Are you sure?"
2988
  msgstr ""
2989
 
2990
+ #: admin/posting.php:80 class/asset-loader.php:63 wpuf.php:750
2991
  msgid "Allowed Files"
2992
  msgstr ""
2993
 
2994
+ #: admin/posting.php:83 class/asset-loader.php:66 wpuf.php:756
2995
  msgid "Maximum number of files reached!"
2996
  msgstr ""
2997
 
2998
+ #: admin/posting.php:84 class/asset-loader.php:67 wpuf.php:757
2999
  msgid "The file you have uploaded exceeds the file size limit. Please try again."
3000
  msgstr ""
3001
 
3002
+ #: admin/posting.php:85 class/asset-loader.php:68 wpuf.php:758
3003
  msgid "You have uploaded an incorrect file type. Please try again."
3004
  msgstr ""
3005
 
3575
  msgid "Featured Image size"
3576
  msgstr ""
3577
 
3578
+ #: admin/settings-options.php:288
3579
+ msgid "Not logged in users will see this message"
3580
+ msgstr ""
3581
+
3582
  #: admin/settings-options.php:297
3583
  msgid "Account Page"
3584
  msgstr ""
3770
  msgid "This page will be used to process payment options"
3771
  msgstr ""
3772
 
 
 
 
 
3773
  #: admin/settings-options.php:471 lib/gateway/bank.php:36
3774
  msgid "After payment users will be redirected here"
3775
  msgstr ""
3794
  msgid "<span class=\"dashicons dashicons-universal-access-alt\"></span> Guest Email"
3795
  msgstr ""
3796
 
3797
+ #: admin/settings-options.php:507
3798
+ msgid "Guest Email Notification"
3799
+ msgstr ""
3800
+
3801
+ #: admin/settings-options.php:508
3802
+ msgid "Enable Guest Email Notification ."
3803
+ msgstr ""
3804
+
3805
+ #: admin/settings-options.php:514
3806
  msgid "Guest mail subject"
3807
  msgstr ""
3808
 
3809
+ #: admin/settings-options.php:515
3810
  msgid "This sets the subject of the emails sent to guest users"
3811
  msgstr ""
3812
 
3813
+ #: admin/settings-options.php:522
3814
  msgid "Guest mail body"
3815
  msgstr ""
3816
 
3817
+ #: admin/settings-options.php:523
3818
  msgid ""
3819
  "This sets the body of the emails sent to guest users. Please DON'T edit the "
3820
  "<code>{activation_link}</code> part, you can use {sitename} too."
3821
  msgstr ""
3822
 
3823
+ #: admin/settings-options.php:542
3824
  msgid "Post Types"
3825
  msgstr ""
3826
 
3827
+ #: admin/settings-options.php:543
3828
  msgid "Select the post types you will allow users to export."
3829
  msgstr ""
3830
 
3831
+ #: admin/settings-options.php:569
3832
  msgid ""
3833
  "Select profile/registration forms for user roles. These forms will be used "
3834
  "to populate extra edit profile fields in backend."
3838
  msgid "Number of subscribers per page:"
3839
  msgstr ""
3840
 
3841
+ #: admin/template-post.php:36 includes/fields/class-field-post-content.php:133
3842
  msgid "Enable Image Insertion"
3843
  msgstr ""
3844
 
3845
+ #: admin/template-post.php:42 includes/fields/class-field-post-content.php:135
3846
  msgid "Enable image upload in post area"
3847
  msgstr ""
3848
 
3858
  msgid "Max. file size"
3859
  msgstr ""
3860
 
3861
+ #: admin/template-post.php:147 includes/fields/class-abstract-fields.php:428
3862
  msgid "Type"
3863
  msgstr ""
3864
 
3867
  msgid "Dropdown"
3868
  msgstr ""
3869
 
3870
+ #: admin/template-post.php:150 includes/fields/class-abstract-fields.php:432
3871
  #: includes/fields/class-field-multidropdown.php:9
3872
  #: includes/fields/class-field-multidropdown.php:79
3873
  msgid "Multi Select"
3874
  msgstr ""
3875
 
3876
+ #: admin/template-post.php:151 includes/fields/class-abstract-fields.php:433
3877
  #: includes/fields/class-field-checkbox.php:9
3878
  msgid "Checkbox"
3879
  msgstr ""
3880
 
3881
+ #: admin/template-post.php:152 includes/fields/class-abstract-fields.php:434
3882
  msgid "Text Input"
3883
  msgstr ""
3884
 
3885
+ #: admin/template-post.php:153 includes/fields/class-abstract-fields.php:435
3886
  msgid "Ajax"
3887
  msgstr ""
3888
 
3889
+ #: admin/template-post.php:158 includes/fields/class-abstract-fields.php:468
3890
  msgid "Order By"
3891
  msgstr ""
3892
 
3893
+ #: admin/template-post.php:161 includes/fields/class-abstract-fields.php:472
3894
  msgid "Term ID"
3895
  msgstr ""
3896
 
3897
+ #: admin/template-post.php:162 includes/fields/class-abstract-fields.php:473
3898
  msgid "Slug"
3899
  msgstr ""
3900
 
3901
+ #: admin/template-post.php:163 includes/fields/class-abstract-fields.php:474
3902
  msgid "Count"
3903
  msgstr ""
3904
 
3905
+ #: admin/template-post.php:164 includes/fields/class-abstract-fields.php:475
3906
  msgid "Term Group"
3907
  msgstr ""
3908
 
3909
+ #: admin/template-post.php:169 includes/fields/class-abstract-fields.php:484
3910
  msgid "Order"
3911
  msgstr ""
3912
 
3913
+ #: admin/template-post.php:171 includes/fields/class-abstract-fields.php:488
3914
  msgid "ASC"
3915
  msgstr ""
3916
 
3917
+ #: admin/template-post.php:172 includes/fields/class-abstract-fields.php:489
3918
  msgid "DESC"
3919
  msgstr ""
3920
 
3921
+ #: admin/template-post.php:177 includes/fields/class-abstract-fields.php:498
3922
  msgid "Selection Type"
3923
  msgstr ""
3924
 
3925
+ #: admin/template-post.php:179 includes/fields/class-abstract-fields.php:501
3926
  msgid "Exclude"
3927
  msgstr ""
3928
 
3929
+ #: admin/template-post.php:180 includes/fields/class-abstract-fields.php:502
3930
  msgid "Include"
3931
  msgstr ""
3932
 
3933
+ #: admin/template-post.php:181 includes/fields/class-abstract-fields.php:503
3934
  msgid "Child of"
3935
  msgstr ""
3936
 
3946
  msgid "WooCommerce Attribute"
3947
  msgstr ""
3948
 
3949
+ #: admin/template-post.php:197 includes/fields/class-abstract-fields.php:525
3950
  msgid "This taxonomy is a WooCommerce attribute"
3951
  msgstr ""
3952
 
3953
+ #: admin/template-post.php:203 includes/fields/class-abstract-fields.php:345
3954
  msgid "Visibility"
3955
  msgstr ""
3956
 
3957
+ #: admin/template-post.php:209 includes/fields/class-abstract-fields.php:536
3958
  msgid "Visible on product page"
3959
  msgstr ""
3960
 
4003
  msgstr ""
4004
 
4005
  #: admin/template.php:60 includes/class-customizer.php:106
4006
+ #: includes/fields/class-abstract-fields.php:294
4007
  msgid "Required"
4008
  msgstr ""
4009
 
4010
+ #: admin/template.php:69 includes/fields/class-abstract-fields.php:276
4011
  msgid "Field Label"
4012
  msgstr ""
4013
 
4014
+ #: admin/template.php:70 includes/fields/class-abstract-fields.php:280
4015
  msgid "Enter a title of this field"
4016
  msgstr ""
4017
 
4018
  #: admin/template.php:75 admin/template.php:550
4019
+ #: includes/fields/class-abstract-fields.php:363
4020
  #: includes/fields/class-field-hidden.php:39
4021
  msgid "Meta Key"
4022
  msgstr ""
4023
 
4024
  #: admin/template.php:76 admin/template.php:551
4025
+ #: includes/fields/class-abstract-fields.php:367
4026
  #: includes/fields/class-field-hidden.php:43
4027
  msgid "Name of the meta key this field will save to"
4028
  msgstr ""
4029
 
4030
+ #: admin/template.php:87 includes/fields/class-abstract-fields.php:285
4031
  msgid "Help text"
4032
  msgstr ""
4033
 
4034
+ #: admin/template.php:88 includes/fields/class-abstract-fields.php:289
4035
  msgid "Give the user some information about this field"
4036
  msgstr ""
4037
 
4038
+ #: admin/template.php:92 includes/fields/class-abstract-fields.php:324
4039
  #: includes/fields/class-field-column.php:86
4040
  msgid "CSS Class Name"
4041
  msgstr ""
4045
  msgstr ""
4046
 
4047
  #: admin/template.php:117 admin/template.php:175
4048
+ #: includes/fields/class-abstract-fields.php:564
4049
+ #: includes/fields/class-abstract-fields.php:648
4050
  msgid "Placeholder text"
4051
  msgstr ""
4052
 
4053
+ #: admin/template.php:118 includes/fields/class-abstract-fields.php:570
4054
+ #: includes/fields/class-abstract-fields.php:652
4055
  msgid "Text for HTML5 placeholder attribute"
4056
  msgstr ""
4057
 
4058
  #: admin/template.php:122 admin/template.php:180
4059
+ #: includes/fields/class-abstract-fields.php:575
4060
+ #: includes/fields/class-abstract-fields.php:660
4061
  msgid "Default value"
4062
  msgstr ""
4063
 
4064
+ #: admin/template.php:123 includes/fields/class-abstract-fields.php:581
4065
+ #: includes/fields/class-abstract-fields.php:664
4066
  msgid "The default value this field will have"
4067
  msgstr ""
4068
 
4069
+ #: admin/template.php:127 includes/fields/class-abstract-fields.php:586
4070
  msgid "Size"
4071
  msgstr ""
4072
 
4073
+ #: admin/template.php:128 includes/fields/class-abstract-fields.php:591
4074
  msgid "Size of this input field"
4075
  msgstr ""
4076
 
4082
  msgid "Numebr of words the author to be restricted in"
4083
  msgstr ""
4084
 
4085
+ #: admin/template.php:165 includes/fields/class-abstract-fields.php:630
4086
  msgid "Rows"
4087
  msgstr ""
4088
 
4089
+ #: admin/template.php:170 includes/fields/class-abstract-fields.php:639
4090
  #: includes/fields/class-field-column.php:9
4091
  msgid "Columns"
4092
  msgstr ""
4093
 
4094
+ #: admin/template.php:185 includes/fields/class-abstract-fields.php:669
4095
  #: includes/fields/class-field-textarea.php:9
4096
+ #: includes/fields/class-field-textarea.php:125
4097
  msgid "Textarea"
4098
  msgstr ""
4099
 
4100
+ #: admin/template.php:188 includes/fields/class-abstract-fields.php:672
4101
  msgid "Normal"
4102
  msgstr ""
4103
 
4104
+ #: admin/template.php:189 includes/fields/class-abstract-fields.php:673
4105
  msgid "Rich textarea"
4106
  msgstr ""
4107
 
4108
+ #: admin/template.php:190 includes/fields/class-abstract-fields.php:674
4109
  msgid "Teeny Rich textarea"
4110
  msgstr ""
4111
 
4114
  msgstr ""
4115
 
4116
  #: admin/template.php:377 admin/template.php:401 admin/template.php:432
4117
+ #: admin/template.php:463 includes/fields/class-abstract-fields.php:612
4118
  #: templates/dashboard/posts.php:119 templates/dashboard.php:139
4119
  msgid "Options"
4120
  msgstr ""
4121
 
4122
  #: admin/template.php:417 admin/template.php:448
4123
+ #: includes/fields/class-abstract-fields.php:448
4124
  #: includes/fields/class-field-dropdown.php:87
4125
  msgid ""
4126
  "First element of the select dropdown. Leave this empty if you don't want to "
4128
  msgstr ""
4129
 
4130
  #: admin/template.php:427 admin/template.php:458
4131
+ #: includes/fields/class-abstract-fields.php:444
4132
  #: includes/fields/class-field-dropdown.php:83
4133
  msgid "Select Text"
4134
  msgstr ""
4188
  msgid "Import"
4189
  msgstr ""
4190
 
4191
+ #: class/asset-loader.php:32 wpuf.php:636
4192
  msgid "is required"
4193
  msgstr ""
4194
 
4195
+ #: class/asset-loader.php:33 wpuf.php:637
4196
  msgid "does not match"
4197
  msgstr ""
4198
 
4199
+ #: class/asset-loader.php:34 wpuf.php:638
4200
  msgid "is not valid"
4201
  msgstr ""
4202
 
4203
+ #: class/asset-loader.php:46 wpuf.php:716
4204
  msgid "Please fix the errors to proceed"
4205
  msgstr ""
4206
 
4207
+ #: class/asset-loader.php:48 wpuf.php:723
4208
  msgid "Word limit reached"
4209
  msgstr ""
4210
 
4211
+ #: class/asset-loader.php:49 wpuf.php:718
4212
  msgid "Are you sure you want to cancel your current subscription ?"
4213
  msgstr ""
4214
 
4430
  msgstr ""
4431
 
4432
  #: class/post-form-templates/post.php:40
4433
+ #: includes/fields/class-abstract-fields.php:233
4434
  #: includes/fields/class-field-dropdown.php:106
4435
  #: includes/fields/class-field-multidropdown.php:83
4436
  #: includes/fields/class-field-post-taxonomy.php:455
4770
  msgid "Something went wrong."
4771
  msgstr ""
4772
 
4773
+ #: includes/class-acf.php:170
4774
  msgid "%s Detected"
4775
  msgstr ""
4776
 
4777
+ #: includes/class-acf.php:171
4778
  msgid ""
4779
  "Hey, looks like you have <strong>%s</strong> installed. What do you want to "
4780
  "do with WPUF?"
4781
  msgstr ""
4782
 
4783
+ #: includes/class-acf.php:172
4784
  msgid ""
4785
  "It will update compatibility option only, so existing custom fields data "
4786
  "format will not change."
4787
  msgstr ""
4788
 
4789
+ #: includes/class-acf.php:173
4790
  msgid ""
4791
  "It will update existing custom fields data to ACF format and update "
4792
  "compatibility option too."
4793
  msgstr ""
4794
 
4795
+ #: includes/class-acf.php:176
4796
  msgid "Compatible"
4797
  msgstr ""
4798
 
4799
+ #: includes/class-acf.php:177
4800
  msgid "Compatible & Migrate"
4801
  msgstr ""
4802
 
4803
+ #: includes/class-acf.php:178
4804
  msgid "No Thanks"
4805
  msgstr ""
4806
 
4815
  msgstr ""
4816
 
4817
  #: includes/class-billing-address.php:184
4818
+ #: templates/dashboard/billing-address.php:74
4819
  msgid "Choose a country"
4820
  msgstr ""
4821
 
4822
  #: includes/class-billing-address.php:203 includes/class-customizer.php:23
4823
+ #: includes/class-customizer.php:67 templates/dashboard/billing-address.php:93
4824
  msgid "State/Province/Region"
4825
  msgstr ""
4826
 
4827
  #: includes/class-billing-address.php:217
4828
+ #: templates/dashboard/billing-address.php:113
4829
  msgid "Choose a state"
4830
  msgstr ""
4831
 
4832
  #: includes/class-billing-address.php:236
4833
+ #: templates/dashboard/billing-address.php:133
4834
  msgid "Address Line 1 "
4835
  msgstr ""
4836
 
4837
  #: includes/class-billing-address.php:247
4838
+ #: templates/dashboard/billing-address.php:142
4839
  msgid "Address Line 2 "
4840
  msgstr ""
4841
 
4842
  #: includes/class-billing-address.php:258 includes/class-customizer.php:26
4843
  #: includes/class-customizer.php:70 includes/class-privacy.php:253
4844
+ #: templates/dashboard/billing-address.php:150
4845
  msgid "City"
4846
  msgstr ""
4847
 
4851
  msgstr ""
4852
 
4853
  #: includes/class-billing-address.php:278
4854
+ #: templates/dashboard/billing-address.php:169
4855
  msgid "Update Billing Address"
4856
  msgstr ""
4857
 
4999
  msgstr ""
5000
 
5001
  #: includes/class-frontend-form-post.php:621
5002
+ #: includes/class-frontend-render-form.php:327
5003
  msgid "You do not have sufficient permissions to access this form."
5004
  msgstr ""
5005
 
5014
  "Please check your inbox!"
5015
  msgstr ""
5016
 
5017
+ #: includes/class-frontend-render-form.php:870
5018
+ #: includes/free/class-login.php:449
5019
  msgid "Empty reCaptcha Field"
5020
  msgstr ""
5021
 
5092
  msgid "Someone has requested a password reset for the following account:"
5093
  msgstr ""
5094
 
5095
+ #: includes/class-login-widget.php:147 includes/free/class-login.php:859
5096
+ #: includes/free/class-login.php:971 includes/free/class-registration.php:299
5097
  #. translators: %s: username
5098
  msgid "Username: %s"
5099
  msgstr ""
5100
 
5101
+ #: includes/class-login-widget.php:148 includes/free/class-login.php:972
5102
  msgid "If this was a mistake, just ignore this email and nothing will happen."
5103
  msgstr ""
5104
 
5105
+ #: includes/class-login-widget.php:149 includes/free/class-login.php:973
5106
  msgid "To reset your password, visit the following address:"
5107
  msgstr ""
5108
 
5109
+ #: includes/class-login-widget.php:154 includes/free/class-login.php:984
5110
  #. translators: %s: blogname
5111
  msgid "[%s] Password Reset"
5112
  msgstr ""
5165
  msgstr ""
5166
 
5167
  #: includes/class-login-widget.php:281 includes/free/class-login.php:311
5168
+ #: templates/login-form.php:75
5169
  msgid "Log In"
5170
  msgstr ""
5171
 
5589
  msgid "Bangladesh"
5590
  msgstr ""
5591
 
5592
+ #: includes/fields/class-abstract-fields.php:39
5593
+ msgid "Content restricted type"
5594
+ msgstr ""
5595
+
5596
+ #: includes/fields/class-abstract-fields.php:42
5597
+ msgid "Minimun"
5598
+ msgstr ""
5599
+
5600
+ #: includes/fields/class-abstract-fields.php:43
5601
+ msgid "Maximum"
5602
+ msgstr ""
5603
+
5604
+ #: includes/fields/class-abstract-fields.php:53
5605
+ msgid "Content restricted by"
5606
+ msgstr ""
5607
+
5608
+ #: includes/fields/class-abstract-fields.php:56
5609
+ msgid "Character"
5610
+ msgstr ""
5611
+
5612
+ #: includes/fields/class-abstract-fields.php:57
5613
+ msgid "Word"
5614
+ msgstr ""
5615
+
5616
+ #: includes/fields/class-abstract-fields.php:71
5617
+ msgid "Number of characters or words the author to be restricted in"
5618
+ msgstr ""
5619
+
5620
+ #: includes/fields/class-abstract-fields.php:304
5621
  msgid ""
5622
  "Check this option to mark the field required. A form will not submit unless "
5623
  "all required fields are provided."
5624
  msgstr ""
5625
 
5626
+ #: includes/fields/class-abstract-fields.php:309
5627
  msgid "Field Size"
5628
  msgstr ""
5629
 
5630
+ #: includes/fields/class-abstract-fields.php:312
5631
  msgid "Small"
5632
  msgstr ""
5633
 
5634
+ #: includes/fields/class-abstract-fields.php:313
5635
  msgid "Medium"
5636
  msgstr ""
5637
 
5638
+ #: includes/fields/class-abstract-fields.php:314
5639
  msgid "Large"
5640
  msgstr ""
5641
 
5642
+ #: includes/fields/class-abstract-fields.php:328
5643
  #: includes/fields/class-field-column.php:90
5644
  msgid ""
5645
  "Provide a container class name for this field. Available classes: "
5647
  "wpuf-col-one-third-last"
5648
  msgstr ""
5649
 
5650
+ #: includes/fields/class-abstract-fields.php:349
5651
  msgid "Everyone"
5652
  msgstr ""
5653
 
5654
+ #: includes/fields/class-abstract-fields.php:351
5655
  msgid "Logged in users only"
5656
  msgstr ""
5657
 
5658
+ #: includes/fields/class-abstract-fields.php:352
5659
  msgid "Subscription users only"
5660
  msgstr ""
5661
 
5662
+ #: includes/fields/class-abstract-fields.php:356
5663
  msgid "Select option"
5664
  msgstr ""
5665
 
5666
+ #: includes/fields/class-abstract-fields.php:375
5667
  msgid "Show Data in Post"
5668
  msgstr ""
5669
 
5670
+ #: includes/fields/class-abstract-fields.php:385
5671
  msgid "Select Yes if you want to show the field data in single post."
5672
  msgstr ""
5673
 
5674
+ #: includes/fields/class-abstract-fields.php:389
5675
  msgid "Hide Field Label in Post"
5676
  msgstr ""
5677
 
5678
+ #: includes/fields/class-abstract-fields.php:399
5679
  msgid "Select Yes if you want to hide the field label in single post."
5680
  msgstr ""
5681
 
5682
+ #: includes/fields/class-abstract-fields.php:453
5683
  #: includes/fields/class-field-checkbox.php:71
5684
  #: includes/fields/class-field-radio.php:80
5685
  msgid "Show in inline list"
5686
  msgstr ""
5687
 
5688
+ #: includes/fields/class-abstract-fields.php:463
5689
  #: includes/fields/class-field-checkbox.php:81
5690
  #: includes/fields/class-field-radio.php:90
5691
  msgid "Show this option in an inline list"
5692
  msgstr ""
5693
 
5694
+ #: includes/fields/class-abstract-fields.php:512
5695
  msgid "Selection Terms"
5696
  msgstr ""
5697
 
5698
+ #: includes/fields/class-abstract-fields.php:516
5699
  msgid "Search the terms name. use ⇦ ⇨ for navigate"
5700
  msgstr ""
5701
 
5702
+ #: includes/fields/class-abstract-fields.php:617
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5703
  msgid "Add options for the form field"
5704
  msgstr ""
5705
 
5706
+ #: includes/fields/class-abstract-fields.php:634
5707
  msgid "Number of rows in textarea"
5708
  msgstr ""
5709
 
5710
+ #: includes/fields/class-abstract-fields.php:643
5711
  msgid "Number of columns in textarea"
5712
  msgstr ""
5713
 
5834
  msgstr ""
5835
 
5836
  #: includes/fields/class-field-text.php:9
5837
+ #: includes/fields/class-field-text.php:126
5838
  msgid "Text"
5839
  msgstr ""
5840
 
5952
  "create a new password via email."
5953
  msgstr ""
5954
 
5955
+ #: includes/free/class-login.php:374
5956
+ msgid "Your password has been reset successfully"
 
5957
  msgstr ""
5958
 
5959
+ #: includes/free/class-login.php:380
5960
  msgid "Enter your new password below."
5961
  msgstr ""
5962
 
5963
+ #: includes/free/class-login.php:391
5964
  msgid "You are now logged out."
5965
  msgstr ""
5966
 
5967
+ #: includes/free/class-login.php:417
5968
  msgid "Nonce is invalid"
5969
  msgstr ""
5970
 
5971
+ #: includes/free/class-login.php:436 includes/free/class-registration.php:228
5972
  msgid "Username is required."
5973
  msgstr ""
5974
 
5975
+ #: includes/free/class-login.php:442 includes/free/class-registration.php:234
5976
  msgid "Password is required."
5977
  msgstr ""
5978
 
5979
+ #: includes/free/class-login.php:464 includes/free/class-registration.php:204
5980
  #: includes/free/class-registration.php:210
5981
  #: includes/free/class-registration.php:216
5982
  #: includes/free/class-registration.php:222
5989
  msgid "Error"
5990
  msgstr ""
5991
 
5992
+ #: includes/free/class-login.php:464 includes/free/class-registration.php:265
5993
  msgid "A user could not be found with this email address."
5994
  msgstr ""
5995
 
5996
+ #: includes/free/class-login.php:646
5997
  msgid "Please enter your password."
5998
  msgstr ""
5999
 
6000
+ #: includes/free/class-login.php:652
6001
  msgid "Passwords do not match."
6002
  msgstr ""
6003
 
6004
+ #: includes/free/class-login.php:700
6005
  msgid "Enter a username or e-mail address."
6006
  msgstr ""
6007
 
6008
+ #: includes/free/class-login.php:707
6009
  msgid "There is no user registered with that email address."
6010
  msgstr ""
6011
 
6012
+ #: includes/free/class-login.php:724
6013
  msgid "Invalid username or e-mail."
6014
  msgstr ""
6015
 
6016
+ #: includes/free/class-login.php:738
6017
  msgid "Password reset is not allowed for this user"
6018
  msgstr ""
6019
 
6020
+ #: includes/free/class-login.php:777
6021
  #. translators: %s: activation link
6022
  msgid ""
6023
  "<strong>Your account is not active.</strong><br>Please check your email for "
6025
  "link"
6026
  msgstr ""
6027
 
6028
+ #: includes/free/class-login.php:798 includes/free/class-login.php:823
6029
  msgid "Activation URL is not valid"
6030
  msgstr ""
6031
 
6032
+ #: includes/free/class-login.php:809
6033
  msgid "Invalid User activation url"
6034
  msgstr ""
6035
 
6036
+ #: includes/free/class-login.php:815
6037
  msgid "User already verified"
6038
  msgstr ""
6039
 
6040
+ #: includes/free/class-login.php:831 includes/free/class-login.php:919
6041
  msgid "Your account has been activated"
6042
  msgstr ""
6043
 
6044
+ #: includes/free/class-login.php:834
6045
  msgid ""
6046
  "Your account has been verified , but you can't login until manually "
6047
  "approved your account by an administrator."
6048
  msgstr ""
6049
 
6050
+ #: includes/free/class-login.php:857
6051
  #. translators: %s: blogname
6052
  msgid "[%s] Your username and password info"
6053
  msgstr ""
6054
 
6055
+ #: includes/free/class-login.php:860
6056
  msgid "To set your password, visit the following address:"
6057
  msgstr ""
6058
 
6059
+ #: includes/free/class-login.php:871
6060
  #. translators: %s: blogname
6061
  msgid "[%s] Account has been activated"
6062
  msgstr ""
6063
 
6064
+ #: includes/free/class-login.php:873
6065
  #. translators: %s: username
6066
  msgid "Hi %s,"
6067
  msgstr ""
6068
 
6069
+ #: includes/free/class-login.php:874
6070
  msgid "Congrats! Your account has been activated. To login visit the following url:"
6071
  msgstr ""
6072
 
6073
+ #: includes/free/class-login.php:876
6074
  msgid "Thanks"
6075
  msgstr ""
6076
 
6077
+ #: includes/free/class-login.php:968
6078
  msgid "Someone requested that the password be reset for the following account:"
6079
  msgstr ""
6080
 
6081
+ #: includes/free/class-login.php:990
6082
  msgid "The e-mail could not be sent."
6083
  msgstr ""
6084
 
6085
+ #: includes/free/class-login.php:990
6086
  msgid "Possible reason: your host may have disabled the mail() function."
6087
  msgstr ""
6088
 
6520
  msgid "Event Tags"
6521
  msgstr ""
6522
 
6523
+ #: includes/free/post-form-templates/the_events_calendar.php:171
6524
+ msgid "This page is restricted. Please Log in / Register to view this page."
6525
+ msgstr ""
6526
+
6527
  #: includes/free/post-form-templates/the_events_calendar.php:174
6528
  msgid "Create Event"
6529
  msgstr ""
6714
  msgid "PayPal API signature"
6715
  msgstr ""
6716
 
6717
+ #: templates/dashboard/billing-address.php:159
6718
  msgid "Postal/ZIP Code"
6719
  msgstr ""
6720
 
7184
  msgid "Jordanian dinar"
7185
  msgstr ""
7186
 
7187
+ #: wpuf-functions.php:3341
7188
  msgid "None"
7189
  msgstr ""
7190
 
7204
  msgid "Your Post Has Been Expired"
7205
  msgstr ""
7206
 
7207
+ #: wpuf.php:457
7208
  msgid ""
7209
  "<p style=\"font-size: 13px\">\n"
7210
  " <strong class=\"highlight-text\" "
7217
  " </p>"
7218
  msgstr ""
7219
 
7220
+ #: wpuf.php:474
7221
  msgid "Update WP User Frontend Pro Now"
7222
  msgstr ""
7223
 
7224
+ #: wpuf.php:478
7225
  msgid "Update WP User Frontend Pro NOW"
7226
  msgstr ""
7227
 
7228
+ #: wpuf.php:721
7229
+ msgid "Character limit reached"
7230
+ msgstr ""
7231
+
7232
+ #: wpuf.php:722
7233
+ msgid "Minimum character required "
7234
+ msgstr ""
7235
+
7236
+ #: wpuf.php:724
7237
+ msgid "Minimum word required "
7238
+ msgstr ""
7239
+
7240
+ #: wpuf.php:732
7241
  msgid "Please Cancel Your Currently Active Pack first!"
7242
  msgstr ""
7243
 
7244
+ #: wpuf.php:903
7245
  msgid "Error: Nonce verification failed"
7246
  msgstr ""
7247
 
lib/gateway/bank.php CHANGED
@@ -71,7 +71,7 @@ class WPUF_Gateway_Bank {
71
 
72
  do_action( 'wpuf_gateway_bank_order_submit', $data, $order_id );
73
 
74
- $success = get_permalink( wpuf_get_option( 'bank_success', 'wpuf_payment' ) );
75
  wp_redirect( $success );
76
  exit;
77
  }
71
 
72
  do_action( 'wpuf_gateway_bank_order_submit', $data, $order_id );
73
 
74
+ $success = wpuf_payment_success_page( $data );
75
  wp_redirect( $success );
76
  exit;
77
  }
lib/gateway/paypal.php CHANGED
@@ -168,13 +168,9 @@ class WPUF_Paypal {
168
  $listener_url = add_query_arg( 'action', 'wpuf_paypal_success', home_url( '' ) );
169
  //$listener_url = 'http://a53d2f68b609.ngrok.io/?action=wpuf_paypal_success';
170
  //$listener_url = 'https://wpuf.sharedwithexpose.com/?action=wpuf_paypal_success';
171
- $redirect_page_id = wpuf_get_option( 'payment_success', 'wpuf_payment' );
 
172
 
173
- if ( $redirect_page_id ) {
174
- $return_url = add_query_arg( 'action', 'wpuf_paypal_success', untrailingslashit( get_permalink( $redirect_page_id ) ) );
175
- } else {
176
- $return_url = add_query_arg( 'action', 'wpuf_paypal_success', untrailingslashit( get_permalink( wpuf_get_option( 'subscription_page', 'wpuf_payment' ) ) ) );
177
- }
178
 
179
  $billing_amount = empty( $data['price'] ) ? 0 : $data['price'];
180
 
168
  $listener_url = add_query_arg( 'action', 'wpuf_paypal_success', home_url( '' ) );
169
  //$listener_url = 'http://a53d2f68b609.ngrok.io/?action=wpuf_paypal_success';
170
  //$listener_url = 'https://wpuf.sharedwithexpose.com/?action=wpuf_paypal_success';
171
+ $return_url = wpuf_payment_success_page( $data );
172
+
173
 
 
 
 
 
 
174
 
175
  $billing_amount = empty( $data['price'] ) ? 0 : $data['price'];
176
 
readme.txt CHANGED
@@ -5,7 +5,7 @@ Tags: Forms, registration, profile-builder, login, membership, frontend-post
5
  Requires at least: 4.0
6
  Tested up to: 5.8
7
  Requires PHP: 5.6
8
- Stable tag: 3.5.19
9
  License: GPLv2
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
11
 
@@ -264,7 +264,24 @@ redirected to the edit page with that post id. Then you'll see the edit post for
264
 
265
  == Changelog ==
266
 
267
- = v3.5.18 (16 Jul, 2021) =
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
268
 
269
  * Enhancement - Updated compatibility with WordPress 5.8
270
  * Enhancement - Promotional campaign
5
  Requires at least: 4.0
6
  Tested up to: 5.8
7
  Requires PHP: 5.6
8
+ Stable tag: 3.5.20
9
  License: GPLv2
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
11
 
264
 
265
  == Changelog ==
266
 
267
+ = v3.5.20 (16 Sep, 2021) =
268
+
269
+ * Enhancement - Content restriction for minimum, maximum value enhanced
270
+ * Enhancement - New option for redirection after pay per post payment in form setting
271
+ * Enhancement - Controller added for various email notification
272
+ * Enhancement - Placeholder added for unauth message option
273
+ * Update - Subscription Post expiration option change to input field
274
+ * Fix - Content restriction message translatable
275
+ * Fix - ACF integration inconsistency handled
276
+ * Fix - Enable payment checkbox handled for child option
277
+ * Fix - Broken asset link handled for custom field popup
278
+ * Fix - Rollback inconsistency for CPT handled
279
+ * Fix - Login form loaded after resetting password
280
+ * Fix - Billing address inconsistency handled
281
+ * Fix - Form duplication on creation handled
282
+ * Fix - Field Dragging inconsistency fixed
283
+
284
+ = v3.5.19 (16 Jul, 2021) =
285
 
286
  * Enhancement - Updated compatibility with WordPress 5.8
287
  * Enhancement - Promotional campaign
templates/dashboard/billing-address.php CHANGED
@@ -52,6 +52,14 @@ if ( isset( $_POST['update_billing_address'] ) ) {
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( [
52
  <label class="wpuf-fields wpuf-label"><?php esc_html_e( 'Country', 'wp-user-frontend' ); ?><span
53
  class="required">*</span></label>
54
  <?php
55
+ //Inconsistency with keys, remap keys, Back compat with keys
56
+ if ( array_key_exists('billing_country', $address_fields ) ){
57
+ foreach ( $address_fields as $key => $val ) {
58
+ unset( $address_fields[$key] );
59
+ $address_fields[str_replace('billing_','',$key)] = $val;
60
+ }
61
+ }
62
+
63
  $selected['country'] = ! ( empty( $address_fields['country'] ) ) ? $address_fields['country'] : 'US';
64
 
65
  echo wp_kses( wpuf_select( [
templates/dashboard/posts.php CHANGED
@@ -24,7 +24,7 @@ if ( $action == 'del' ) {
24
  $maybe_delete = get_post( $pid );
25
 
26
  if ( ( $maybe_delete->post_author == $userdata->ID ) || current_user_can( 'delete_others_pages' ) ) {
27
- wp_delete_post( $pid );
28
 
29
  //redirect
30
  $redirect = add_query_arg( [ 'section' => $type, 'msg' => 'deleted'], get_permalink() );
@@ -224,7 +224,7 @@ $post_type_obj = get_post_type_object( $post_type );
224
  ?>
225
 
226
  </tbody>
227
- </table>
228
  </div>
229
 
230
  <div class="wpuf-pagination">
24
  $maybe_delete = get_post( $pid );
25
 
26
  if ( ( $maybe_delete->post_author == $userdata->ID ) || current_user_can( 'delete_others_pages' ) ) {
27
+ wp_trash_post( $pid );
28
 
29
  //redirect
30
  $redirect = add_query_arg( [ 'section' => $type, 'msg' => 'deleted'], get_permalink() );
224
  ?>
225
 
226
  </tbody>
227
+ </table>
228
  </div>
229
 
230
  <div class="wpuf-pagination">
wpuf-functions.php CHANGED
@@ -2766,7 +2766,7 @@ function wpuf_create_sample_form( $post_title = 'Sample Form', $post_type = 'wpu
2766
  'guest_details' => 'true',
2767
  'name_label' => 'Name',
2768
  'email_label' => 'Email',
2769
- 'message_restrict' => 'This page is restricted. Please Log in / Register to view this page.',
2770
  'redirect_to' => 'post',
2771
  'message' => 'Post saved',
2772
  'page_id' => '',
@@ -3063,6 +3063,10 @@ function wpuf_decryption( $id ) {
3063
  * @return void
3064
  */
3065
  function wpuf_send_mail_to_guest( $post_id_encoded, $form_id_encoded, $charging_enabled, $flag ) {
 
 
 
 
3066
  $noce = isset( $_REQUEST['_wpnonce'] ) ? sanitize_key( wp_unslash( $_REQUEST['_wpnonce'] ) ) : '';
3067
 
3068
  if ( isset( $nonce ) && ! wp_verify_nonce( $noce, 'wpuf_edit' ) ) {
@@ -3904,11 +3908,11 @@ function get_wpuf_preview_page() {
3904
  $post_status = '';
3905
  $preview_page_id = get_option( 'wpuf_preview_page', false );
3906
 
3907
- if ( isset( $preview_page_id ) ){
3908
  $page_url = get_permalink( $preview_page_id );
3909
  }
3910
 
3911
- if ( isset( $page_url ) ){
3912
  $post_status = get_post_status( $preview_page_id );
3913
  }
3914
 
@@ -3916,7 +3920,7 @@ function get_wpuf_preview_page() {
3916
  return $page_url;
3917
  }
3918
 
3919
- if ( $post_status !== 'private' ) {
3920
  wp_update_post(
3921
  [
3922
  'ID' => $preview_page_id,
@@ -3961,3 +3965,32 @@ function wpuf_recursive_sanitize_text_field($arr){
3961
 
3962
  return $arr;
3963
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2766
  'guest_details' => 'true',
2767
  'name_label' => 'Name',
2768
  'email_label' => 'Email',
2769
+ 'message_restrict' => 'This page is restricted. Please %login% / %register% to view this page.',
2770
  'redirect_to' => 'post',
2771
  'message' => 'Post saved',
2772
  'page_id' => '',
3063
  * @return void
3064
  */
3065
  function wpuf_send_mail_to_guest( $post_id_encoded, $form_id_encoded, $charging_enabled, $flag ) {
3066
+ if ( 'on' !== wpuf_get_option( 'enable_guest_email_notification', 'wpuf_mails', 'on' ) ) {
3067
+ return;
3068
+ }
3069
+
3070
  $noce = isset( $_REQUEST['_wpnonce'] ) ? sanitize_key( wp_unslash( $_REQUEST['_wpnonce'] ) ) : '';
3071
 
3072
  if ( isset( $nonce ) && ! wp_verify_nonce( $noce, 'wpuf_edit' ) ) {
3908
  $post_status = '';
3909
  $preview_page_id = get_option( 'wpuf_preview_page', false );
3910
 
3911
+ if ( $preview_page_id ){
3912
  $page_url = get_permalink( $preview_page_id );
3913
  }
3914
 
3915
+ if ( $page_url ){
3916
  $post_status = get_post_status( $preview_page_id );
3917
  }
3918
 
3920
  return $page_url;
3921
  }
3922
 
3923
+ if ( $post_status && $post_status !== 'private' ) {
3924
  wp_update_post(
3925
  [
3926
  'ID' => $preview_page_id,
3965
 
3966
  return $arr;
3967
  }
3968
+
3969
+ /**
3970
+ * Determine page after payment success
3971
+ *
3972
+ * @since WPUF_PRO
3973
+ *
3974
+ * @param $data
3975
+ *
3976
+ * @return bool|false|string|WP_Error
3977
+ */
3978
+ function wpuf_payment_success_page( $data ){
3979
+ $gateway = ! empty( $data['wpuf_payment_method'] ) ? $data['wpuf_payment_method'] : '';
3980
+ $success_query = "wpuf_${gateway}_success";
3981
+ $redirect_page = '';
3982
+ $redirect_page_id = wpuf_get_option( 'payment_success', 'wpuf_payment' );
3983
+ if ( 'post' === $data['type'] ){
3984
+ $post_id = array_key_exists( 'item_number', $data ) && ! empty( $data['item_number'] ) ? $data['item_number'] : $_GET['post_id'];
3985
+ $form_id = get_post_meta( $post_id, '_wpuf_form_id', true );
3986
+ $form_settings = wpuf_get_form_settings( $form_id );
3987
+ $ppp_success_page = ! empty( $form_settings['ppp_payment_success_page'] ) ? $form_settings['ppp_payment_success_page'] : '';
3988
+ $redirect_page_id = $ppp_success_page ? $ppp_success_page : $redirect_page_id;
3989
+ }
3990
+
3991
+ $redirect_page = $redirect_page_id ? add_query_arg( 'action', $success_query, untrailingslashit( get_permalink( $redirect_page_id ) ) ) : add_query_arg( 'action', $success_query, untrailingslashit( get_permalink( wpuf_get_option( 'subscription_page', 'wpuf_payment' ) ) ) );
3992
+ //for bank
3993
+ $redirect_page = ! empty( $data['wpuf_payment_method'] ) && 'bank' === $data['wpuf_payment_method'] ? get_permalink( wpuf_get_option( 'bank_success', 'wpuf_payment' ) ) : $redirect_page;
3994
+
3995
+ return $redirect_page;
3996
+ }
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: weDevs
7
- Version: 3.5.19
8
  Author URI: https://wedevs.com/?utm_source=WPUF_Author_URI
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.5.19' );
16
  define( 'WPUF_FILE', __FILE__ );
17
  define( 'WPUF_ROOT', __DIR__ );
18
  define( 'WPUF_ROOT_URI', plugins_url( '', __FILE__ ) );
@@ -64,7 +64,7 @@ final class WP_User_Frontend {
64
  * Fire up the plugin
65
  */
66
  public function __construct() {
67
- if ( !$this->is_supported_php() ) {
68
  add_action( 'admin_notices', [ $this, 'php_version_notice' ] );
69
 
70
  return;
@@ -100,7 +100,7 @@ final class WP_User_Frontend {
100
  * @return void
101
  */
102
  public function php_version_notice() {
103
- if ( $this->is_supported_php() || !current_user_can( 'manage_options' ) ) {
104
  return;
105
  }
106
 
@@ -226,7 +226,7 @@ final class WP_User_Frontend {
226
  $message = str_replace( $search, $replace, $message );
227
  $message = get_formatted_mail_body( $message, $mail_subject );
228
 
229
- if ( !empty( $message ) ) {
230
  wp_mail( get_the_author_meta( 'user_email', $each_post->post_author ), $mail_subject, $message );
231
  }
232
  }
@@ -240,7 +240,7 @@ final class WP_User_Frontend {
240
  * @return \self
241
  */
242
  public static function init() {
243
- if ( !self::$_instance ) {
244
  self::$_instance = new WP_User_Frontend();
245
  }
246
 
@@ -280,6 +280,7 @@ final class WP_User_Frontend {
280
  include_once WPUF_ROOT . '/includes/class-customizer.php';
281
  include_once WPUF_ROOT . '/includes/log/class-log.php';
282
  include_once WPUF_ROOT . '/includes/log/class-log-wpdb-query.php';
 
283
 
284
  if ( class_exists( 'WeDevs_Dokan' ) ) {
285
  require_once WPUF_ROOT . '/includes/class-dokan-integration.php';
@@ -320,7 +321,7 @@ final class WP_User_Frontend {
320
  }
321
 
322
  // add reCaptcha library if not found
323
- if ( !function_exists( 'recaptcha_get_html' ) ) {
324
  require_once __DIR__ . '/lib/recaptchalib.php';
325
  require_once __DIR__ . '/lib/invisible_recaptcha.php';
326
  }
@@ -352,15 +353,15 @@ final class WP_User_Frontend {
352
  $this->container['log'] = new WPUF_Log();
353
 
354
  if ( class_exists( 'WeDevs_Dokan' ) ) {
355
- $this->container['dokan_integration'] = new WPUF_Dokan_Integration();
356
  }
357
 
358
  if ( class_exists( 'WCMp' ) ) {
359
- $this->container['wcmp_integration'] = new WPUF_WCMp_Integration();
360
  }
361
 
362
  if ( class_exists( 'WC_Vendors' ) ) {
363
- $this->container['WCV_Integration'] = new WPUF_WC_Vendors_Integration();
364
  }
365
 
366
  if ( is_admin() ) {
@@ -407,7 +408,7 @@ final class WP_User_Frontend {
407
  * @return void
408
  */
409
  public function plugin_upgrades() {
410
- if ( !is_admin() && !current_user_can( 'manage_options' ) ) {
411
  return;
412
  }
413
 
@@ -435,7 +436,7 @@ final class WP_User_Frontend {
435
 
436
  if ( $has_pro ) {
437
  $this->is_pro = true;
438
- add_action( 'admin_notices', [ $this, 'wpuf_latest_pro_activation_notice'] );
439
  } else {
440
  include __DIR__ . '/includes/free/loader.php';
441
 
@@ -449,14 +450,17 @@ final class WP_User_Frontend {
449
  * @return void
450
  */
451
  public function wpuf_latest_pro_activation_notice() {
452
- if ( !version_compare( WPUF_PRO_VERSION, '3.1.0', '<' ) ) {
453
  return;
454
  }
455
 
456
- $offer_msg = __( '<p style="font-size: 13px">
 
457
  <strong class="highlight-text" style="font-size: 18px; display:block; margin-bottom:8px"> UPDATE REQUIRED </strong>
458
  WP User Frontend Pro is not working because you are using an old version of WP User Frontend Pro. Please update <strong>WPUF Pro</strong> to >= <strong>v3.1.0</strong> to work with the latest version of WP User Frontend
459
- </p>', 'wp-user-frontend' ); ?>
 
 
460
  <div class="notice is-dismissible" id="wpuf-update-offer-notice">
461
  <table>
462
  <tbody>
@@ -621,7 +625,7 @@ final class WP_User_Frontend {
621
 
622
  $pay_page = intval( wpuf_get_option( 'payment_page', 'wpuf_payment' ) );
623
 
624
- if ( !empty( $api_key ) && $load_gmap ) {
625
  wp_enqueue_script( 'google-maps', $scheme . '://maps.google.com/maps/api/js?libraries=places&key=' . $api_key, [], null );
626
  }
627
 
@@ -651,7 +655,7 @@ final class WP_User_Frontend {
651
 
652
  if ( wpuf_get_option( 'load_script', 'wpuf_general', 'on' ) == 'on' ) {
653
  $this->plugin_scripts();
654
- } elseif ( wpuf_has_shortcode( 'wpuf-login' ) || wpuf_has_shortcode( 'wpuf-registration' ) || wpuf_has_shortcode( 'wpuf-meta' ) || wpuf_has_shortcode( 'wpuf_form' ) || wpuf_has_shortcode( 'wpuf_edit' ) || wpuf_has_shortcode( 'wpuf_profile' ) || wpuf_has_shortcode( 'wpuf_dashboard' ) || wpuf_has_shortcode( 'weforms' ) || wpuf_has_shortcode( 'wpuf_account' ) || wpuf_has_shortcode( 'wpuf_sub_pack' ) || ( isset( $post->ID ) && ( $pay_page == $post->ID ) ) || isset( $_GET['wpuf_preview'] ) || class_exists('\Elementor\Plugin')) {
655
  $this->plugin_scripts();
656
  }
657
  }
@@ -662,7 +666,7 @@ final class WP_User_Frontend {
662
  public function add_custom_css() {
663
  global $post;
664
 
665
- if ( !is_a( $post, 'WP_Post' ) ) {
666
  return;
667
  }
668
 
@@ -705,43 +709,56 @@ final class WP_User_Frontend {
705
  wp_enqueue_script( 'wpuf-subscriptions' );
706
  wp_enqueue_script( 'wpuf-sweetalert2', WPUF_ASSET_URI . '/vendor/sweetalert2/dist/sweetalert2.js', [], WPUF_VERSION );
707
 
708
- wp_localize_script( 'wpuf-form', 'wpuf_frontend', apply_filters( 'wpuf_frontend_js_data', [
709
- 'ajaxurl' => admin_url( 'admin-ajax.php' ),
710
- 'error_message' => __( 'Please fix the errors to proceed', 'wp-user-frontend' ),
711
- 'nonce' => wp_create_nonce( 'wpuf_nonce' ),
712
- 'word_limit' => __( 'Word limit reached', 'wp-user-frontend' ),
713
- 'cancelSubMsg' => __( 'Are you sure you want to cancel your current subscription ?', 'wp-user-frontend' ),
714
- 'delete_it' => __( 'Yes', 'wp-user-frontend' ),
715
- 'cancel_it' => __( 'No', 'wp-user-frontend' ),
716
- ] ) );
717
-
718
- wp_localize_script( 'wpuf-subscriptions', 'wpuf_subscription', apply_filters( 'wpuf_subscription_js_data', [
719
- 'pack_notice' => __( 'Please Cancel Your Currently Active Pack first!', 'wp-user-frontend' ),
720
- ] ) );
721
-
722
- wp_localize_script( 'wpuf-upload', 'wpuf_frontend_upload', [
723
- 'confirmMsg' => __( 'Are you sure?', 'wp-user-frontend' ),
724
- 'delete_it' => __( 'Yes, delete it', 'wp-user-frontend' ),
725
- 'cancel_it' => __( 'No, cancel it', 'wp-user-frontend' ),
726
- 'nonce' => wp_create_nonce( 'wpuf_nonce' ),
727
- 'ajaxurl' => admin_url( 'admin-ajax.php' ),
728
- 'max_filesize' => wpuf_max_upload_size(),
729
- 'plupload' => [
730
- 'url' => admin_url( 'admin-ajax.php' ) . '?nonce=' . wp_create_nonce( 'wpuf-upload-nonce' ),
731
- 'flash_swf_url' => includes_url( 'js/plupload/plupload.flash.swf' ),
732
- 'filters' => [
733
- [
734
- 'title' => __( 'Allowed Files', 'wp-user-frontend' ),
735
- 'extensions' => '*',
 
 
 
 
 
 
 
 
 
 
 
 
 
736
  ],
 
 
 
 
 
737
  ],
738
- 'multipart' => true,
739
- 'urlstream_upload' => true,
740
- 'warning' => __( 'Maximum number of files reached!', 'wp-user-frontend' ),
741
- 'size_error' => __( 'The file you have uploaded exceeds the file size limit. Please try again.', 'wp-user-frontend' ),
742
- 'type_error' => __( 'You have uploaded an incorrect file type. Please try again.', 'wp-user-frontend' ),
743
- ],
744
- ] );
745
  }
746
 
747
  /**
@@ -760,7 +777,7 @@ final class WP_User_Frontend {
760
  $access_level = wpuf_get_option( 'admin_access', 'wpuf_general', 'read' );
761
  $valid_pages = [ 'admin-ajax.php', 'admin-post.php', 'async-upload.php', 'media-upload.php' ];
762
 
763
- if ( !current_user_can( $access_level ) && !in_array( $pagenow, $valid_pages ) ) {
764
  // wp_die( __( 'Access Denied. Your site administrator has blocked your access to the WordPress back-office.', 'wpuf' ) );
765
  wp_redirect( home_url() );
766
  exit;
@@ -775,16 +792,16 @@ final class WP_User_Frontend {
775
  * @return void
776
  */
777
  public function show_admin_bar( $val ) {
778
- if ( !is_user_logged_in() ) {
779
  return false;
780
  }
781
 
782
  $roles = wpuf_get_option( 'show_admin_bar', 'wpuf_general', [ 'administrator', 'editor', 'author', 'contributor', 'subscriber' ] );
783
- $roles = $roles && is_string($roles) ? [strtolower($roles)] : $roles;
784
  $current_user = wp_get_current_user();
785
 
786
  if ( ! empty( $current_user->roles ) && ! empty( $current_user->roles[0] ) ) {
787
- if ( !in_array( $current_user->roles[0], $roles ) ) {
788
  return false;
789
  }
790
  }
@@ -837,7 +854,7 @@ final class WP_User_Frontend {
837
  * @return array
838
  */
839
  public function plugin_action_links( $links ) {
840
- if ( !$this->is_pro() ) {
841
  $links[] = '<a href="' . WPUF_Pro_Prompt::get_pro_url() . '" target="_blank" style="color: red;">Get PRO</a>';
842
  }
843
 
@@ -882,7 +899,7 @@ final class WP_User_Frontend {
882
  public function install_weforms() {
883
  $nonce = isset( $_REQUEST['_wpnonce'] ) ? sanitize_key( wp_unslash( $_REQUEST['_wpnonce'] ) ) : '';
884
 
885
- if ( isset( $nonce ) && !wp_verify_nonce( $nonce, 'wpuf-weforms-installer-nonce' ) ) {
886
  wp_send_json_error( __( 'Error: Nonce verification failed', 'wp-user-frontend' ) );
887
  }
888
 
@@ -895,12 +912,14 @@ final class WP_User_Frontend {
895
  }
896
 
897
  $plugin = 'weforms';
898
- $api = plugins_api( 'plugin_information', [
899
- 'slug' => $plugin,
900
- 'fields' => [
901
- 'sections' => false,
902
- ],
903
- ] );
 
 
904
 
905
  $upgrader = new Plugin_Upgrader( new WP_Ajax_Upgrader_Skin() );
906
  $result = $upgrader->install( $api->download_link );
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: weDevs
7
+ Version: 3.5.20
8
  Author URI: https://wedevs.com/?utm_source=WPUF_Author_URI
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.5.20' );
16
  define( 'WPUF_FILE', __FILE__ );
17
  define( 'WPUF_ROOT', __DIR__ );
18
  define( 'WPUF_ROOT_URI', plugins_url( '', __FILE__ ) );
64
  * Fire up the plugin
65
  */
66
  public function __construct() {
67
+ if ( ! $this->is_supported_php() ) {
68
  add_action( 'admin_notices', [ $this, 'php_version_notice' ] );
69
 
70
  return;
100
  * @return void
101
  */
102
  public function php_version_notice() {
103
+ if ( $this->is_supported_php() || ! current_user_can( 'manage_options' ) ) {
104
  return;
105
  }
106
 
226
  $message = str_replace( $search, $replace, $message );
227
  $message = get_formatted_mail_body( $message, $mail_subject );
228
 
229
+ if ( ! empty( $message ) ) {
230
  wp_mail( get_the_author_meta( 'user_email', $each_post->post_author ), $mail_subject, $message );
231
  }
232
  }
240
  * @return \self
241
  */
242
  public static function init() {
243
+ if ( ! self::$_instance ) {
244
  self::$_instance = new WP_User_Frontend();
245
  }
246
 
280
  include_once WPUF_ROOT . '/includes/class-customizer.php';
281
  include_once WPUF_ROOT . '/includes/log/class-log.php';
282
  include_once WPUF_ROOT . '/includes/log/class-log-wpdb-query.php';
283
+ // include_once WPUF_ROOT . '/includes/class-user-prorate.php';
284
 
285
  if ( class_exists( 'WeDevs_Dokan' ) ) {
286
  require_once WPUF_ROOT . '/includes/class-dokan-integration.php';
321
  }
322
 
323
  // add reCaptcha library if not found
324
+ if ( ! function_exists( 'recaptcha_get_html' ) ) {
325
  require_once __DIR__ . '/lib/recaptchalib.php';
326
  require_once __DIR__ . '/lib/invisible_recaptcha.php';
327
  }
353
  $this->container['log'] = new WPUF_Log();
354
 
355
  if ( class_exists( 'WeDevs_Dokan' ) ) {
356
+ $this->container['dokan_integration'] = new WPUF_Dokan_Integration();
357
  }
358
 
359
  if ( class_exists( 'WCMp' ) ) {
360
+ $this->container['wcmp_integration'] = new WPUF_WCMp_Integration();
361
  }
362
 
363
  if ( class_exists( 'WC_Vendors' ) ) {
364
+ $this->container['WCV_Integration'] = new WPUF_WC_Vendors_Integration();
365
  }
366
 
367
  if ( is_admin() ) {
408
  * @return void
409
  */
410
  public function plugin_upgrades() {
411
+ if ( ! is_admin() && ! current_user_can( 'manage_options' ) ) {
412
  return;
413
  }
414
 
436
 
437
  if ( $has_pro ) {
438
  $this->is_pro = true;
439
+ add_action( 'admin_notices', [ $this, 'wpuf_latest_pro_activation_notice' ] );
440
  } else {
441
  include __DIR__ . '/includes/free/loader.php';
442
 
450
  * @return void
451
  */
452
  public function wpuf_latest_pro_activation_notice() {
453
+ if ( ! version_compare( WPUF_PRO_VERSION, '3.1.0', '<' ) ) {
454
  return;
455
  }
456
 
457
+ $offer_msg = __(
458
+ '<p style="font-size: 13px">
459
  <strong class="highlight-text" style="font-size: 18px; display:block; margin-bottom:8px"> UPDATE REQUIRED </strong>
460
  WP User Frontend Pro is not working because you are using an old version of WP User Frontend Pro. Please update <strong>WPUF Pro</strong> to >= <strong>v3.1.0</strong> to work with the latest version of WP User Frontend
461
+ </p>', 'wp-user-frontend'
462
+ );
463
+ ?>
464
  <div class="notice is-dismissible" id="wpuf-update-offer-notice">
465
  <table>
466
  <tbody>
625
 
626
  $pay_page = intval( wpuf_get_option( 'payment_page', 'wpuf_payment' ) );
627
 
628
+ if ( ! empty( $api_key ) && $load_gmap ) {
629
  wp_enqueue_script( 'google-maps', $scheme . '://maps.google.com/maps/api/js?libraries=places&key=' . $api_key, [], null );
630
  }
631
 
655
 
656
  if ( wpuf_get_option( 'load_script', 'wpuf_general', 'on' ) == 'on' ) {
657
  $this->plugin_scripts();
658
+ } elseif ( wpuf_has_shortcode( 'wpuf-login' ) || wpuf_has_shortcode( 'wpuf-registration' ) || wpuf_has_shortcode( 'wpuf-meta' ) || wpuf_has_shortcode( 'wpuf_form' ) || wpuf_has_shortcode( 'wpuf_edit' ) || wpuf_has_shortcode( 'wpuf_profile' ) || wpuf_has_shortcode( 'wpuf_dashboard' ) || wpuf_has_shortcode( 'weforms' ) || wpuf_has_shortcode( 'wpuf_account' ) || wpuf_has_shortcode( 'wpuf_sub_pack' ) || ( isset( $post->ID ) && ( $pay_page == $post->ID ) ) || isset( $_GET['wpuf_preview'] ) || class_exists( '\Elementor\Plugin' ) ) {
659
  $this->plugin_scripts();
660
  }
661
  }
666
  public function add_custom_css() {
667
  global $post;
668
 
669
+ if ( ! is_a( $post, 'WP_Post' ) ) {
670
  return;
671
  }
672
 
709
  wp_enqueue_script( 'wpuf-subscriptions' );
710
  wp_enqueue_script( 'wpuf-sweetalert2', WPUF_ASSET_URI . '/vendor/sweetalert2/dist/sweetalert2.js', [], WPUF_VERSION );
711
 
712
+ wp_localize_script(
713
+ 'wpuf-form', 'wpuf_frontend', apply_filters(
714
+ 'wpuf_frontend_js_data', [
715
+ 'ajaxurl' => admin_url( 'admin-ajax.php' ),
716
+ 'error_message' => __( 'Please fix the errors to proceed', 'wp-user-frontend' ),
717
+ 'nonce' => wp_create_nonce( 'wpuf_nonce' ),
718
+ 'cancelSubMsg' => __( 'Are you sure you want to cancel your current subscription ?', 'wp-user-frontend' ),
719
+ 'delete_it' => __( 'Yes', 'wp-user-frontend' ),
720
+ 'cancel_it' => __( 'No', 'wp-user-frontend' ),
721
+ 'char_max' => __( 'Character limit reached', 'wp-user-frontend' ),
722
+ 'char_min' => __( 'Minimum character required ', 'wp-user-frontend' ),
723
+ 'word_max' => __( 'Word limit reached', 'wp-user-frontend' ),
724
+ 'word_min' => __( 'Minimum word required ', 'wp-user-frontend' ),
725
+ ]
726
+ )
727
+ );
728
+
729
+ wp_localize_script(
730
+ 'wpuf-subscriptions', 'wpuf_subscription', apply_filters(
731
+ 'wpuf_subscription_js_data', [
732
+ 'pack_notice' => __( 'Please Cancel Your Currently Active Pack first!', 'wp-user-frontend' ),
733
+ ]
734
+ )
735
+ );
736
+
737
+ wp_localize_script(
738
+ 'wpuf-upload', 'wpuf_frontend_upload', [
739
+ 'confirmMsg' => __( 'Are you sure?', 'wp-user-frontend' ),
740
+ 'delete_it' => __( 'Yes, delete it', 'wp-user-frontend' ),
741
+ 'cancel_it' => __( 'No, cancel it', 'wp-user-frontend' ),
742
+ 'nonce' => wp_create_nonce( 'wpuf_nonce' ),
743
+ 'ajaxurl' => admin_url( 'admin-ajax.php' ),
744
+ 'max_filesize' => wpuf_max_upload_size(),
745
+ 'plupload' => [
746
+ 'url' => admin_url( 'admin-ajax.php' ) . '?nonce=' . wp_create_nonce( 'wpuf-upload-nonce' ),
747
+ 'flash_swf_url' => includes_url( 'js/plupload/plupload.flash.swf' ),
748
+ 'filters' => [
749
+ [
750
+ 'title' => __( 'Allowed Files', 'wp-user-frontend' ),
751
+ 'extensions' => '*',
752
+ ],
753
  ],
754
+ 'multipart' => true,
755
+ 'urlstream_upload' => true,
756
+ 'warning' => __( 'Maximum number of files reached!', 'wp-user-frontend' ),
757
+ 'size_error' => __( 'The file you have uploaded exceeds the file size limit. Please try again.', 'wp-user-frontend' ),
758
+ 'type_error' => __( 'You have uploaded an incorrect file type. Please try again.', 'wp-user-frontend' ),
759
  ],
760
+ ]
761
+ );
 
 
 
 
 
762
  }
763
 
764
  /**
777
  $access_level = wpuf_get_option( 'admin_access', 'wpuf_general', 'read' );
778
  $valid_pages = [ 'admin-ajax.php', 'admin-post.php', 'async-upload.php', 'media-upload.php' ];
779
 
780
+ if ( ! current_user_can( $access_level ) && ! in_array( $pagenow, $valid_pages ) ) {
781
  // wp_die( __( 'Access Denied. Your site administrator has blocked your access to the WordPress back-office.', 'wpuf' ) );
782
  wp_redirect( home_url() );
783
  exit;
792
  * @return void
793
  */
794
  public function show_admin_bar( $val ) {
795
+ if ( ! is_user_logged_in() ) {
796
  return false;
797
  }
798
 
799
  $roles = wpuf_get_option( 'show_admin_bar', 'wpuf_general', [ 'administrator', 'editor', 'author', 'contributor', 'subscriber' ] );
800
+ $roles = $roles && is_string( $roles ) ? [ strtolower( $roles ) ] : $roles;
801
  $current_user = wp_get_current_user();
802
 
803
  if ( ! empty( $current_user->roles ) && ! empty( $current_user->roles[0] ) ) {
804
+ if ( ! in_array( $current_user->roles[0], $roles ) ) {
805
  return false;
806
  }
807
  }
854
  * @return array
855
  */
856
  public function plugin_action_links( $links ) {
857
+ if ( ! $this->is_pro() ) {
858
  $links[] = '<a href="' . WPUF_Pro_Prompt::get_pro_url() . '" target="_blank" style="color: red;">Get PRO</a>';
859
  }
860
 
899
  public function install_weforms() {
900
  $nonce = isset( $_REQUEST['_wpnonce'] ) ? sanitize_key( wp_unslash( $_REQUEST['_wpnonce'] ) ) : '';
901
 
902
+ if ( isset( $nonce ) && ! wp_verify_nonce( $nonce, 'wpuf-weforms-installer-nonce' ) ) {
903
  wp_send_json_error( __( 'Error: Nonce verification failed', 'wp-user-frontend' ) );
904
  }
905
 
912
  }
913
 
914
  $plugin = 'weforms';
915
+ $api = plugins_api(
916
+ 'plugin_information', [
917
+ 'slug' => $plugin,
918
+ 'fields' => [
919
+ 'sections' => false,
920
+ ],
921
+ ]
922
+ );
923
 
924
  $upgrader = new Plugin_Upgrader( new WP_Ajax_Upgrader_Skin() );
925
  $result = $upgrader->install( $api->download_link );