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

Version Description

Download this release

Release Info

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

Code changes from version 2.5.7 to 2.5.8

Files changed (46) hide show
  1. admin/{settings.php → class-admin-settings.php} +54 -11
  2. admin/{subscription.php → class-admin-subscription.php} +34 -4
  3. admin/form-builder/class-wpuf-form-builder-field-settings.php +27 -0
  4. admin/form.php +5 -0
  5. admin/html/form-settings-post.php +13 -1
  6. admin/html/support.php +299 -0
  7. admin/post-forms-list-table-view.php +6 -0
  8. admin/settings-options.php +26 -3
  9. admin/support.php +0 -42
  10. assets/css/admin.css +22 -0
  11. assets/css/frontend-forms.css +88 -0
  12. assets/css/wpuf-form-builder.css +45 -0
  13. assets/images/help/bugs.svg +1 -0
  14. assets/images/help/customization.svg +1 -0
  15. assets/images/help/docs.svg +1 -0
  16. assets/images/help/like.svg +1 -0
  17. assets/images/help/support.svg +1 -0
  18. assets/js-templates/form-components.php +2 -242
  19. assets/js/frontend-form.js +11 -0
  20. assets/js/frontend-form.min.js +1 -1
  21. assets/js/wpuf-form-builder-components.js +1 -244
  22. class/frontend-dashboard.php +11 -7
  23. class/frontend-form-post.php +67 -13
  24. class/render-form.php +3 -2
  25. class/subscription.php +2 -2
  26. class/upgrades.php +0 -105
  27. includes/class-abstract-integration.php +0 -114
  28. includes/class-integrations.php +0 -39
  29. includes/class-upgrades.php +65 -0
  30. includes/free/admin/shortcode-button.php +4 -0
  31. includes/free/class-login.php +744 -0
  32. includes/free/class-registration.php +343 -0
  33. includes/free/loader.php +11 -9
  34. includes/free/post-form-templates/woocommerce.php +16 -0
  35. includes/upgrades/upgrade-2.1.9.php +88 -0
  36. languages/wpuf.pot +984 -864
  37. lib/class-weforms-upsell.php +0 -6
  38. lib/gateway/paypal.php +46 -53
  39. readme.txt +15 -1
  40. templates/dashboard.php +115 -13
  41. templates/login-form.php +4 -4
  42. templates/lost-pass-form.php +4 -4
  43. templates/registration-form.php +85 -0
  44. templates/reset-pass-form.php +4 -4
  45. wpuf-functions.php +119 -0
  46. wpuf.php +45 -34
admin/{settings.php → class-admin-settings.php} RENAMED
@@ -7,10 +7,30 @@
7
  */
8
  class WPUF_Admin_Settings {
9
 
 
 
 
 
 
10
  private $settings_api;
 
 
 
 
 
 
11
  private static $_instance;
12
 
13
- function __construct() {
 
 
 
 
 
 
 
 
 
14
 
15
  if ( ! class_exists( 'WeDevs_Settings_API' ) ) {
16
  require_once dirname( dirname( __FILE__ ) ) . '/lib/class.settings-api.php';
@@ -24,6 +44,7 @@ class WPUF_Admin_Settings {
24
  add_filter( 'parent_file', array($this, 'fix_parent_menu' ) );
25
 
26
  add_action( 'admin_init', array($this, 'handle_tools_action') );
 
27
  }
28
 
29
  public static function init() {
@@ -52,9 +73,9 @@ class WPUF_Admin_Settings {
52
  function admin_menu() {
53
  $capability = wpuf_admin_role();
54
  // Translation issue: Hook name change due to translate menu title
55
- add_menu_page( __( 'WP User Frontend', 'wpuf' ), __( 'User Frontend', '' ), $capability, 'wp-user-frontend', array($this, 'wpuf_post_forms_page'), 'data:image/svg+xml;base64,' . base64_encode( '<svg width="83px" height="76px" viewBox="0 0 83 76" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g id="wpuf-icon" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="ufp" fill-rule="nonzero" fill="#9EA3A8"><path d="M49.38,51.88 C49.503348,56.4604553 45.8999295,60.2784694 41.32,60.42 C36.7400705,60.2784694 33.136652,56.4604553 33.26,51.88 L33.26,40.23 L19,40.23 L19,51.88 C19,64.77 29,75.25 41.36,75.26 L41.36,75.26 C47.3622079,75.2559227 53.0954073,72.7693647 57.2,68.39 C61.4213559,63.9375842 63.7575868,58.0253435 63.72,51.89 L63.72,40.23 L49.38,40.23 L49.38,51.88 Z" id="Shape"></path><polygon id="Shape" points="32.96 0.59 0 0.59 3.77 16.68 32.96 16.68"></polygon><path d="M68,0 L49.75,0 L49.75,16.1 L68,16.1 C68.74,16.1 69.39,17.1 69.39,18.24 C69.39,19.38 68.74,20.38 68,20.38 L49.75,20.38 L49.75,36.5 L68,36.5 C76,36.5 82.5,28.31 82.5,18.25 C82.5,8.19 76,0 68,0 Z" id="Shape"></path><polygon id="Shape" points="32.96 20.41 5.31 20.41 9.07 36.5 32.96 36.5"></polygon></g></g></svg>' ), 55 );
56
 
57
- add_submenu_page( 'wp-user-frontend', __( 'Post Forms', 'wpuf' ), __( 'Post Forms', 'wpuf' ), $capability, 'wpuf-post-forms', array( $this, 'wpuf_post_forms_page' ) );
58
  remove_submenu_page( 'wp-user-frontend', 'wp-user-frontend' );
59
 
60
  /**
@@ -63,21 +84,23 @@ class WPUF_Admin_Settings {
63
  do_action( 'wpuf_admin_menu_top' );
64
 
65
  if ( !class_exists( 'WeForms' ) ) {
66
- add_submenu_page( 'wp-user-frontend', __( 'weForms', 'wpuf' ), __( 'Contact Form', 'wpuf' ), $capability, 'wpuf_weforms', array($this, 'weforms_page') );
67
  }
68
 
69
- add_submenu_page( 'wp-user-frontend', __( 'Subscriptions', 'wpuf' ), __( 'Subscriptions', 'wpuf' ), $capability, 'edit.php?post_type=wpuf_subscription' );
70
 
71
  do_action( 'wpuf_admin_menu' );
72
 
73
  $transactions_page = add_submenu_page( 'wp-user-frontend', __( 'Transactions', 'wpuf' ), __( 'Transactions', 'wpuf' ), $capability, 'wpuf_transaction', array($this, 'transactions_page') );
74
- add_submenu_page( 'wp-user-frontend', __( 'Add-ons', 'wpuf' ), __( 'Add-ons', 'wpuf' ), $capability, 'wpuf_addons', array($this, 'addons_page') );
75
- add_submenu_page( 'wp-user-frontend', __( 'Tools', 'wpuf' ), __( 'Tools', 'wpuf' ), $capability, 'wpuf_tools', array($this, 'tools_page') );
76
- add_submenu_page( 'wp-user-frontend', __( 'Support', 'wpuf' ), __( 'Support', 'wpuf' ), $capability, 'wpuf-support', array($this, 'support_page') );
77
- add_submenu_page( 'wp-user-frontend', __( 'Settings', 'wpuf' ), __( 'Settings', 'wpuf' ), $capability, 'wpuf-settings', array($this, 'plugin_page') );
 
 
 
78
 
79
  add_action( "load-$transactions_page", array( $this, 'transactions_screen_option' ) );
80
- add_action( "load-$transactions_page", array( $this, 'enqueue_styles' ) );
81
  }
82
 
83
  /**
@@ -163,7 +186,22 @@ class WPUF_Admin_Settings {
163
  }
164
 
165
  function support_page() {
166
- require_once dirname( dirname( __FILE__ ) ) . '/admin/support.php';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
167
  }
168
 
169
  /**
@@ -302,6 +340,11 @@ class WPUF_Admin_Settings {
302
  * @return void
303
  */
304
  public function enqueue_styles() {
 
 
 
 
 
305
  wp_enqueue_style( 'wpuf-admin', WPUF_ASSET_URI . '/css/admin.css' );
306
  }
307
  }
7
  */
8
  class WPUF_Admin_Settings {
9
 
10
+ /**
11
+ * Settings API
12
+ *
13
+ * @var \WeDevs_Settings_API
14
+ */
15
  private $settings_api;
16
+
17
+ /**
18
+ * Static instance of this class
19
+ *
20
+ * @var \self
21
+ */
22
  private static $_instance;
23
 
24
+ /**
25
+ * The menu page hooks
26
+ *
27
+ * Used for checking if any page is under WPUF menu
28
+ *
29
+ * @var array
30
+ */
31
+ private $menu_pages = array();
32
+
33
+ public function __construct() {
34
 
35
  if ( ! class_exists( 'WeDevs_Settings_API' ) ) {
36
  require_once dirname( dirname( __FILE__ ) ) . '/lib/class.settings-api.php';
44
  add_filter( 'parent_file', array($this, 'fix_parent_menu' ) );
45
 
46
  add_action( 'admin_init', array($this, 'handle_tools_action') );
47
+ add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_styles' ) );
48
  }
49
 
50
  public static function init() {
73
  function admin_menu() {
74
  $capability = wpuf_admin_role();
75
  // Translation issue: Hook name change due to translate menu title
76
+ $this->menu_pages[] = add_menu_page( __( 'WP User Frontend', 'wpuf' ), __( 'User Frontend', '' ), $capability, 'wp-user-frontend', array($this, 'wpuf_post_forms_page'), 'data:image/svg+xml;base64,' . base64_encode( '<svg width="83px" height="76px" viewBox="0 0 83 76" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g id="wpuf-icon" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="ufp" fill-rule="nonzero" fill="#9EA3A8"><path d="M49.38,51.88 C49.503348,56.4604553 45.8999295,60.2784694 41.32,60.42 C36.7400705,60.2784694 33.136652,56.4604553 33.26,51.88 L33.26,40.23 L19,40.23 L19,51.88 C19,64.77 29,75.25 41.36,75.26 L41.36,75.26 C47.3622079,75.2559227 53.0954073,72.7693647 57.2,68.39 C61.4213559,63.9375842 63.7575868,58.0253435 63.72,51.89 L63.72,40.23 L49.38,40.23 L49.38,51.88 Z" id="Shape"></path><polygon id="Shape" points="32.96 0.59 0 0.59 3.77 16.68 32.96 16.68"></polygon><path d="M68,0 L49.75,0 L49.75,16.1 L68,16.1 C68.74,16.1 69.39,17.1 69.39,18.24 C69.39,19.38 68.74,20.38 68,20.38 L49.75,20.38 L49.75,36.5 L68,36.5 C76,36.5 82.5,28.31 82.5,18.25 C82.5,8.19 76,0 68,0 Z" id="Shape"></path><polygon id="Shape" points="32.96 20.41 5.31 20.41 9.07 36.5 32.96 36.5"></polygon></g></g></svg>' ), 55 );
77
 
78
+ $this->menu_pages[] = add_submenu_page( 'wp-user-frontend', __( 'Post Forms', 'wpuf' ), __( 'Post Forms', 'wpuf' ), $capability, 'wpuf-post-forms', array( $this, 'wpuf_post_forms_page' ) );
79
  remove_submenu_page( 'wp-user-frontend', 'wp-user-frontend' );
80
 
81
  /**
84
  do_action( 'wpuf_admin_menu_top' );
85
 
86
  if ( !class_exists( 'WeForms' ) ) {
87
+ $this->menu_pages[] = add_submenu_page( 'wp-user-frontend', __( 'weForms', 'wpuf' ), __( 'Contact Form', 'wpuf' ), $capability, 'wpuf_weforms', array($this, 'weforms_page') );
88
  }
89
 
90
+ $this->menu_pages[] = add_submenu_page( 'wp-user-frontend', __( 'Subscriptions', 'wpuf' ), __( 'Subscriptions', 'wpuf' ), $capability, 'edit.php?post_type=wpuf_subscription' );
91
 
92
  do_action( 'wpuf_admin_menu' );
93
 
94
  $transactions_page = add_submenu_page( 'wp-user-frontend', __( 'Transactions', 'wpuf' ), __( 'Transactions', 'wpuf' ), $capability, 'wpuf_transaction', array($this, 'transactions_page') );
95
+ $this->menu_pages[] = add_submenu_page( 'wp-user-frontend', __( 'Add-ons', 'wpuf' ), __( 'Add-ons', 'wpuf' ), $capability, 'wpuf_addons', array($this, 'addons_page') );
96
+ $this->menu_pages[] = add_submenu_page( 'wp-user-frontend', __( 'Tools', 'wpuf' ), __( 'Tools', 'wpuf' ), $capability, 'wpuf_tools', array($this, 'tools_page') );
97
+ $this->menu_pages[] = add_submenu_page( 'wp-user-frontend', __( 'Help', 'wpuf' ), __( '<span style="color:#f18500">Help</span>', 'wpuf' ), $capability, 'wpuf-support', array($this, 'support_page') );
98
+ $this->menu_pages[] = add_submenu_page( 'wp-user-frontend', __( 'Settings', 'wpuf' ), __( 'Settings', 'wpuf' ), $capability, 'wpuf-settings', array($this, 'plugin_page') );
99
+
100
+ // manually add subsription page
101
+ $this->menu_pages[] = 'edit-wpuf_subscription';
102
 
103
  add_action( "load-$transactions_page", array( $this, 'transactions_screen_option' ) );
 
104
  }
105
 
106
  /**
186
  }
187
 
188
  function support_page() {
189
+ require_once dirname( dirname( __FILE__ ) ) . '/admin/html/support.php';
190
+ }
191
+
192
+ /**
193
+ * Check if the current page is a settings/menu page
194
+ *
195
+ * @param string $screen_id
196
+ *
197
+ * @return boolean
198
+ */
199
+ public function is_admin_menu_page( $screen ) {
200
+ if ( $screen && in_array( $screen->id, $this->menu_pages ) ) {
201
+ return true;
202
+ }
203
+
204
+ return false;
205
  }
206
 
207
  /**
340
  * @return void
341
  */
342
  public function enqueue_styles() {
343
+
344
+ if ( ! $this->is_admin_menu_page( get_current_screen() ) ) {
345
+ return;
346
+ }
347
+
348
  wp_enqueue_style( 'wpuf-admin', WPUF_ASSET_URI . '/css/admin.css' );
349
  }
350
  }
admin/{subscription.php → class-admin-subscription.php} RENAMED
@@ -23,8 +23,8 @@ class WPUF_Admin_Subscription {
23
  function __construct() {
24
  global $wpdb;
25
 
26
- $this->db = $wpdb;
27
- $this->table = $this->db->prefix . 'wpuf_subscription';
28
  $this->baseurl = admin_url( 'admin.php?page=wpuf_subscription' );
29
 
30
  add_filter( 'post_updated_messages', array($this, 'form_updated_message') );
@@ -35,9 +35,11 @@ class WPUF_Admin_Subscription {
35
  add_action( 'edit_user_profile_update', array($this, 'profile_subscription_update') );
36
  add_action( 'wp_ajax_wpuf_delete_user_package', array($this, 'delete_user_package') );
37
 
38
- add_filter('manage_wpuf_subscription_posts_columns', array( $this, 'subscription_columns_head') );
 
39
 
40
- add_action('manage_wpuf_subscription_posts_custom_column', array( $this, 'subscription_columns_content' ),10, 2 );
 
41
  }
42
 
43
  /**
@@ -604,6 +606,34 @@ class WPUF_Admin_Subscription {
604
  $wpuf_paypal->recurring_change_status( $_POST['userid'], 'Cancel' );
605
  exit;
606
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
607
  }
608
 
609
  //$subscription = new WPUF_Admin_Subscription();
23
  function __construct() {
24
  global $wpdb;
25
 
26
+ $this->db = $wpdb;
27
+ $this->table = $this->db->prefix . 'wpuf_subscription';
28
  $this->baseurl = admin_url( 'admin.php?page=wpuf_subscription' );
29
 
30
  add_filter( 'post_updated_messages', array($this, 'form_updated_message') );
35
  add_action( 'edit_user_profile_update', array($this, 'profile_subscription_update') );
36
  add_action( 'wp_ajax_wpuf_delete_user_package', array($this, 'delete_user_package') );
37
 
38
+ add_filter( 'manage_wpuf_subscription_posts_columns', array( $this, 'subscription_columns_head') );
39
+ add_action( 'manage_wpuf_subscription_posts_custom_column', array( $this, 'subscription_columns_content' ),10, 2 );
40
 
41
+ // display help link to docs
42
+ add_action( 'admin_notices', array( $this, 'add_help_link' ) );
43
  }
44
 
45
  /**
606
  $wpuf_paypal->recurring_change_status( $_POST['userid'], 'Cancel' );
607
  exit;
608
  }
609
+
610
+ /**
611
+ * Add help link to the subscriptions listing page
612
+ *
613
+ * @return void
614
+ */
615
+ public function add_help_link() {
616
+ $screen = get_current_screen();
617
+
618
+ if ( 'edit-wpuf_subscription' != $screen->id ) {
619
+ return;
620
+ }
621
+
622
+ ?>
623
+ <div class="wpuf-footer-help">
624
+ <span class="wpuf-footer-help-content">
625
+ <span class="dashicons dashicons-editor-help"></span>
626
+ <?php printf( __( 'Learn more about <a href="%s" target="_blank">Subscription</a>', 'wpuf' ), 'https://wedevs.com/docs/wp-user-frontend-pro/subscription-payment/?utm_source=wpuf-footer-help&utm_medium=text-link&utm_campaign=learn-more-subscription' ); ?>
627
+ </span>
628
+ </div>
629
+
630
+ <script type="text/javascript">
631
+ jQuery(function($) {
632
+ $('.wpuf-footer-help').appendTo('.wrap');
633
+ });
634
+ </script>
635
+ <?php
636
+ }
637
  }
638
 
639
  //$subscription = new WPUF_Admin_Subscription();
admin/form-builder/class-wpuf-form-builder-field-settings.php CHANGED
@@ -73,6 +73,21 @@ class WPUF_Form_Builder_Field_Settings {
73
  'help_text' => __( 'Check this option to mark the field required. A form will not submit unless all required fields are provided.', 'wpuf' ),
74
  ),
75
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
76
  array(
77
  'name' => 'css',
78
  'title' => __( 'CSS Class Name', 'wpuf' ),
@@ -263,6 +278,7 @@ class WPUF_Form_Builder_Field_Settings {
263
  'name' => '',
264
  'is_meta' => 'yes',
265
  'help' => '',
 
266
  'css' => '',
267
  'placeholder' => '',
268
  'default' => '',
@@ -299,6 +315,7 @@ class WPUF_Form_Builder_Field_Settings {
299
  'name' => '',
300
  'is_meta' => 'yes',
301
  'help' => '',
 
302
  'css' => '',
303
  'rows' => 5,
304
  'cols' => 25,
@@ -372,6 +389,7 @@ class WPUF_Form_Builder_Field_Settings {
372
  'name' => '',
373
  'is_meta' => 'yes',
374
  'help' => '',
 
375
  'css' => '',
376
  'selected' => '',
377
  'options' => array( 'Option' => __( 'Option', 'wpuf' ) ),
@@ -412,6 +430,7 @@ class WPUF_Form_Builder_Field_Settings {
412
  'name' => '',
413
  'is_meta' => 'yes',
414
  'help' => '',
 
415
  'css' => '',
416
  'selected' => array(),
417
  'options' => array( 'Option' => __( 'Option', 'wpuf' ) ),
@@ -467,6 +486,7 @@ class WPUF_Form_Builder_Field_Settings {
467
  'name' => '',
468
  'is_meta' => 'yes',
469
  'help' => '',
 
470
  'css' => '',
471
  'selected' => '',
472
  'inline' => 'no',
@@ -522,6 +542,7 @@ class WPUF_Form_Builder_Field_Settings {
522
  'name' => '',
523
  'is_meta' => 'yes',
524
  'help' => '',
 
525
  'css' => '',
526
  'selected' => array(),
527
  'inline' => 'no',
@@ -557,6 +578,7 @@ class WPUF_Form_Builder_Field_Settings {
557
  'name' => '',
558
  'is_meta' => 'yes',
559
  'help' => '',
 
560
  'css' => '',
561
  'placeholder' => '',
562
  'default' => '',
@@ -592,6 +614,7 @@ class WPUF_Form_Builder_Field_Settings {
592
  'name' => '',
593
  'is_meta' => 'yes',
594
  'help' => '',
 
595
  'css' => '',
596
  'placeholder' => '',
597
  'default' => '',
@@ -693,6 +716,7 @@ class WPUF_Form_Builder_Field_Settings {
693
  'name' => '',
694
  'is_meta' => 'yes',
695
  'help' => '',
 
696
  'css' => '',
697
  'max_size' => '1024',
698
  'count' => '1',
@@ -734,6 +758,7 @@ class WPUF_Form_Builder_Field_Settings {
734
  return array(
735
  'template' => 'section_break',
736
  'title' => __( 'Section Break', 'wpuf' ),
 
737
  'is_full_width' => true,
738
  'settings' => $settings,
739
  'field_props' => array(
@@ -770,6 +795,7 @@ class WPUF_Form_Builder_Field_Settings {
770
  return array(
771
  'template' => 'custom_html',
772
  'title' => __( 'Custom HTML', 'wpuf' ),
 
773
  'is_full_width' => true,
774
  'settings' => $settings,
775
  'field_props' => array(
@@ -820,6 +846,7 @@ class WPUF_Form_Builder_Field_Settings {
820
  return array(
821
  'template' => 'recaptcha',
822
  'title' => __( 'reCaptcha', 'wpuf' ),
 
823
  'validator' => array(
824
  'callback' => 'has_recaptcha_api_keys',
825
  'button_class' => 'button-faded',
73
  'help_text' => __( 'Check this option to mark the field required. A form will not submit unless all required fields are provided.', 'wpuf' ),
74
  ),
75
 
76
+ array(
77
+ 'name' => 'width',
78
+ 'title' => __( 'Field Size', 'weforms' ),
79
+ 'type' => 'radio',
80
+ 'options' => array(
81
+ 'small' => __( 'Small', 'weforms' ),
82
+ 'medium' => __( 'Medium', 'weforms' ),
83
+ 'large' => __( 'Large', 'weforms' ),
84
+ ),
85
+ 'section' => 'advanced',
86
+ 'priority' => 23,
87
+ 'default' => 'large',
88
+ 'inline' => true,
89
+ ),
90
+
91
  array(
92
  'name' => 'css',
93
  'title' => __( 'CSS Class Name', 'wpuf' ),
278
  'name' => '',
279
  'is_meta' => 'yes',
280
  'help' => '',
281
+ 'width' => 'large',
282
  'css' => '',
283
  'placeholder' => '',
284
  'default' => '',
315
  'name' => '',
316
  'is_meta' => 'yes',
317
  'help' => '',
318
+ 'width' => 'medium',
319
  'css' => '',
320
  'rows' => 5,
321
  'cols' => 25,
389
  'name' => '',
390
  'is_meta' => 'yes',
391
  'help' => '',
392
+ 'width' => 'medium',
393
  'css' => '',
394
  'selected' => '',
395
  'options' => array( 'Option' => __( 'Option', 'wpuf' ) ),
430
  'name' => '',
431
  'is_meta' => 'yes',
432
  'help' => '',
433
+ 'width' => 'medium',
434
  'css' => '',
435
  'selected' => array(),
436
  'options' => array( 'Option' => __( 'Option', 'wpuf' ) ),
486
  'name' => '',
487
  'is_meta' => 'yes',
488
  'help' => '',
489
+ 'width' => '',
490
  'css' => '',
491
  'selected' => '',
492
  'inline' => 'no',
542
  'name' => '',
543
  'is_meta' => 'yes',
544
  'help' => '',
545
+ 'width' => '',
546
  'css' => '',
547
  'selected' => array(),
548
  'inline' => 'no',
578
  'name' => '',
579
  'is_meta' => 'yes',
580
  'help' => '',
581
+ 'width' => 'large',
582
  'css' => '',
583
  'placeholder' => '',
584
  'default' => '',
614
  'name' => '',
615
  'is_meta' => 'yes',
616
  'help' => '',
617
+ 'width' => 'large',
618
  'css' => '',
619
  'placeholder' => '',
620
  'default' => '',
716
  'name' => '',
717
  'is_meta' => 'yes',
718
  'help' => '',
719
+ 'width' => '',
720
  'css' => '',
721
  'max_size' => '1024',
722
  'count' => '1',
758
  return array(
759
  'template' => 'section_break',
760
  'title' => __( 'Section Break', 'wpuf' ),
761
+ 'icon' => 'columns',
762
  'is_full_width' => true,
763
  'settings' => $settings,
764
  'field_props' => array(
795
  return array(
796
  'template' => 'custom_html',
797
  'title' => __( 'Custom HTML', 'wpuf' ),
798
+ 'icon' => 'code',
799
  'is_full_width' => true,
800
  'settings' => $settings,
801
  'field_props' => array(
846
  return array(
847
  'template' => 'recaptcha',
848
  'title' => __( 'reCaptcha', 'wpuf' ),
849
+ 'icon' => 'qrcode',
850
  'validator' => array(
851
  'callback' => 'has_recaptcha_api_keys',
852
  'button_class' => 'button-faded',
admin/form.php CHANGED
@@ -548,6 +548,7 @@ class WPUF_Admin_Form {
548
  'name' => 'post_title',
549
  'is_meta' => 'no',
550
  'help' => '',
 
551
  'css' => '',
552
  'placeholder' => '',
553
  'default' => '',
@@ -596,6 +597,7 @@ class WPUF_Admin_Form {
596
  'name' => 'post_content',
597
  'is_meta' => 'no',
598
  'help' => '',
 
599
  'css' => '',
600
  'rows' => 5,
601
  'cols' => 25,
@@ -640,6 +642,7 @@ class WPUF_Admin_Form {
640
  'name' => 'post_excerpt',
641
  'is_meta' => 'no',
642
  'help' => '',
 
643
  'css' => '',
644
  'rows' => 5,
645
  'cols' => 25,
@@ -721,6 +724,7 @@ class WPUF_Admin_Form {
721
  'name' => 'tags',
722
  'is_meta' => 'no',
723
  'help' => '',
 
724
  'css' => '',
725
  'placeholder' => '',
726
  'default' => '',
@@ -850,6 +854,7 @@ class WPUF_Admin_Form {
850
  'name' => $tax_name,
851
  'is_meta' => 'no',
852
  'help' => '',
 
853
  'css' => '',
854
  'type' => 'select',
855
  'orderby' => 'name',
548
  'name' => 'post_title',
549
  'is_meta' => 'no',
550
  'help' => '',
551
+ 'width' => 'large',
552
  'css' => '',
553
  'placeholder' => '',
554
  'default' => '',
597
  'name' => 'post_content',
598
  'is_meta' => 'no',
599
  'help' => '',
600
+ 'width' => 'medium',
601
  'css' => '',
602
  'rows' => 5,
603
  'cols' => 25,
642
  'name' => 'post_excerpt',
643
  'is_meta' => 'no',
644
  'help' => '',
645
+ 'width' => 'medium',
646
  'css' => '',
647
  'rows' => 5,
648
  'cols' => 25,
724
  'name' => 'tags',
725
  'is_meta' => 'no',
726
  'help' => '',
727
+ 'width' => 'large',
728
  'css' => '',
729
  'placeholder' => '',
730
  'default' => '',
854
  'name' => $tax_name,
855
  'is_meta' => 'no',
856
  'help' => '',
857
+ 'width' => 'small',
858
  'css' => '',
859
  'type' => 'select',
860
  'orderby' => 'name',
admin/html/form-settings-post.php CHANGED
@@ -13,6 +13,7 @@ $default_cat = isset( $form_settings['default_cat'] ) ? $form_settings
13
 
14
  $guest_post = isset( $form_settings['guest_post'] ) ? $form_settings['guest_post'] : 'false';
15
  $guest_details = isset( $form_settings['guest_details'] ) ? $form_settings['guest_details'] : 'true';
 
16
  $name_label = isset( $form_settings['name_label'] ) ? $form_settings['name_label'] : __( 'Name' );
17
  $email_label = isset( $form_settings['email_label'] ) ? $form_settings['email_label'] : __( 'Email' );
18
  $message_restrict = isset( $form_settings['message_restrict'] ) ? $form_settings['message_restrict'] : $restrict_message;
@@ -127,7 +128,7 @@ $subscription_disabled = isset( $form_settings['subscription_disabled'] ) ? $for
127
  <input type="checkbox" name="wpuf_settings[guest_post]" value="true"<?php checked( $guest_post, 'true' ); ?> />
128
  <?php _e( 'Enable Guest Post', 'wpuf' ) ?>
129
  </label>
130
- <p class="description"><?php _e( 'Unregistered users will be able to submit posts', 'wpuf' ); ?></p>
131
  </td>
132
  </tr>
133
 
@@ -143,6 +144,17 @@ $subscription_disabled = isset( $form_settings['subscription_disabled'] ) ? $for
143
  </td>
144
  </tr>
145
 
 
 
 
 
 
 
 
 
 
 
 
146
  <tr class="show-if-guest show-if-details">
147
  <th><?php _e( 'Name Label', 'wpuf' ); ?></th>
148
  <td>
13
 
14
  $guest_post = isset( $form_settings['guest_post'] ) ? $form_settings['guest_post'] : 'false';
15
  $guest_details = isset( $form_settings['guest_details'] ) ? $form_settings['guest_details'] : 'true';
16
+ $guest_email_verify = isset( $form_settings['guest_email_verify'] ) ? $form_settings['guest_email_verify'] : 'false';
17
  $name_label = isset( $form_settings['name_label'] ) ? $form_settings['name_label'] : __( 'Name' );
18
  $email_label = isset( $form_settings['email_label'] ) ? $form_settings['email_label'] : __( 'Email' );
19
  $message_restrict = isset( $form_settings['message_restrict'] ) ? $form_settings['message_restrict'] : $restrict_message;
128
  <input type="checkbox" name="wpuf_settings[guest_post]" value="true"<?php checked( $guest_post, 'true' ); ?> />
129
  <?php _e( 'Enable Guest Post', 'wpuf' ) ?>
130
  </label>
131
+ <p class="description"><?php _e( 'Unregistered users will be able to submit posts', 'wpuf' ); ?>. <a href="https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/guest-posting/"><?php _e( 'Learn more about guest posting.', 'wpuf' ); ?></a></p>
132
  </td>
133
  </tr>
134
 
144
  </td>
145
  </tr>
146
 
147
+ <tr class="show-if-guest">
148
+ <th><?php _e( 'Email Verification', 'wpuf' ); ?></th>
149
+ <td>
150
+ <label>
151
+ <input type="checkbox" name="wpuf_settings[guest_email_verify]" value="true"<?php checked( $guest_email_verify, 'true' ); ?> />
152
+ <?php _e( 'Require Email Verification for Guests', 'wpuf' ) ?>
153
+ </label>
154
+ <p class="description"><?php _e( 'If requires, users will be required to verify their email adress.', 'wpuf' ); ?></p>
155
+ </td>
156
+ </tr>
157
+
158
  <tr class="show-if-guest show-if-details">
159
  <th><?php _e( 'Name Label', 'wpuf' ); ?></th>
160
  <td>
admin/html/support.php ADDED
@@ -0,0 +1,299 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $left_column = array(
3
+ array(
4
+ 'heading' => 'Setting Up the Plugin',
5
+ 'questions' => array(
6
+ array(
7
+ 'title' => 'How to Install',
8
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/getting-started/how-to-install/'
9
+ ),
10
+ array(
11
+ 'title' => 'License Activation',
12
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/getting-started/license-activation/'
13
+ ),
14
+ array(
15
+ 'title' => 'Shortcodes',
16
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/getting-started/wpuf-shortcodes/'
17
+ ),
18
+ array(
19
+ 'title' => 'User Dashboard',
20
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/getting-started/user-dashboard/'
21
+ ),
22
+ )
23
+ ),
24
+ array(
25
+ 'heading' => 'Frontend Posting Forms',
26
+ 'questions' => array(
27
+ array(
28
+ 'title' => 'Creating Posting Forms',
29
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/creating-posting-forms/'
30
+ ),
31
+ array(
32
+ 'title' => 'Available Form Elements',
33
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/form-elements/'
34
+ ),
35
+ array(
36
+ 'title' => 'Creating Forms Using The Form Templates',
37
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/form-templates/'
38
+ ),
39
+ array(
40
+ 'title' => 'How to Allow Guest Posting',
41
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/guest-posting/'
42
+ ),
43
+ array(
44
+ 'title' => 'Setup Automatic Post Expiration',
45
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/using-post-expiration-wp-user-frontend/'
46
+ ),
47
+ array(
48
+ 'title' => 'How to create Multistep forms',
49
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/how-to-add-multi-step-form/'
50
+ ),
51
+ )
52
+ ),
53
+ array(
54
+ 'heading' => 'Developer Docs',
55
+ 'questions' => array(
56
+ array(
57
+ 'title' => 'Action Hook Field',
58
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/developer-docs/action-hook-field/'
59
+ ),
60
+ array(
61
+ 'title' => 'Add a New Tab on My Account Page',
62
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/developer-docs/add-a-new-tab-on-my-account-page/'
63
+ ),
64
+ array(
65
+ 'title' => 'Insert/update checkbox or radio field data as serialize',
66
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/developer-docs/insertupdate-checkbox-or-radio-field-data-as-serialize/'
67
+ ),
68
+ array(
69
+ 'title' => 'Filters',
70
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/developer-docs/filters/'
71
+ ),
72
+ array(
73
+ 'title' => 'Actions',
74
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/developer-docs/actions/'
75
+ ),
76
+ array(
77
+ 'title' => 'Changelog',
78
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/changelog/'
79
+ ),
80
+ )
81
+ ),
82
+ );
83
+
84
+ $right_column = array(
85
+ array(
86
+ 'heading' => 'Settings',
87
+ 'questions' => array(
88
+ array(
89
+ 'title' => 'General Options',
90
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/settings/configuring-general-options/'
91
+ ),
92
+ array(
93
+ 'title' => 'Dashboard Settings',
94
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/settings/configuring-dashboard-settings/'
95
+ ),
96
+ array(
97
+ 'title' => 'Login Registration Settings',
98
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/settings/login-registration-settings/'
99
+ ),
100
+ array(
101
+ 'title' => 'Payment Settings',
102
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/settings/configuring-payment-settings/'
103
+ ),
104
+ )
105
+ ),
106
+ array(
107
+ 'heading' => 'Registration Forms',
108
+ 'questions' => array(
109
+ array(
110
+ 'title' => 'Creating Registration Form',
111
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/registration-forms/'
112
+ ),
113
+ array(
114
+ 'title' => 'Creating a Profile Editing Form',
115
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/registration-profile-forms/wordpress-edit-user-profile-from-front-end/'
116
+ ),
117
+ array(
118
+ 'title' => 'Paid Membership Registration',
119
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/registration-profile-forms/paid-membership-registration/'
120
+ ),
121
+ array(
122
+ 'title' => 'Setting Up Email Verification for New Users',
123
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/registration-profile-forms/setting-up-email-verification-for-new-users/'
124
+ ),
125
+ )
126
+ ),
127
+ array(
128
+ 'heading' => 'Subscription & Payment',
129
+ 'questions' => array(
130
+ array(
131
+ 'title' => 'Creating Subscription Packs',
132
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/subscription-payment/creating-subscription-packs/'
133
+ ),
134
+ array(
135
+ 'title' => 'Payment & Gateway Settings',
136
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/subscription-payment/configuring-payment-settings/'
137
+ ),
138
+ array(
139
+ 'title' => 'Creating Coupons',
140
+ 'link' => 'https://wedevs.com/docs/wp-user-frontend-pro/coupons/'
141
+ ),
142
+ )
143
+ ),
144
+ );
145
+ ?>
146
+
147
+ <div class="wrap">
148
+ <h1><?php _e( 'General Help Questions', 'wpuf' ); ?> <a href="https://wedevs.com/docs/wp-user-frontend-pro/?utm_source=wpuf-help-page&utm_medium=button-primary&utm_campaign=view-all-docs" target="_blank" class="page-title-action"><span class="dashicons dashicons-external" style="margin-top: 8px;"></span> <?php _e( 'View all Documentations', 'wpuf' ); ?></a></h1>
149
+
150
+ <div id="dashboard-widgets-wrap">
151
+ <div id="dashboard-widgets" class="metabox-holder">
152
+ <div class="postbox-container">
153
+ <div class="meta-box-sortables">
154
+
155
+ <?php foreach ($left_column as $postbox) { ?>
156
+
157
+ <div class="postbox">
158
+ <h2 class="hndle"><span class="dashicons dashicons-book"></span> <?php echo $postbox['heading']; ?></h2>
159
+
160
+ <div class="wpuf-help-questions">
161
+ <ul>
162
+ <?php foreach ($postbox['questions'] as $question) { ?>
163
+ <li><span class="dashicons dashicons-media-text"></span> <a href="<?php echo trailingslashit( $question['link'] ); ?>?utm_source=wpuf-help-page&utm_medium=help-links&utm_campaign=wpuf-help&utm_term=<?php echo sanitize_title( $question['title'] ); ?>" target="_blank"><?php echo $question['title']; ?> <span class="dashicons dashicons-arrow-right-alt2"></span></a></li>
164
+ <?php } ?>
165
+ </ul>
166
+ </div>
167
+ </div>
168
+
169
+ <?php } ?>
170
+ </div>
171
+ </div>
172
+
173
+ <div class="postbox-container">
174
+ <div class="meta-box-sortables">
175
+
176
+ <?php foreach ($right_column as $postbox) { ?>
177
+
178
+ <div class="postbox">
179
+ <h2 class="hndle"><span class="dashicons dashicons-book"></span> <?php echo $postbox['heading']; ?></h2>
180
+
181
+ <div class="wpuf-help-questions">
182
+ <ul>
183
+ <?php foreach ($postbox['questions'] as $question) { ?>
184
+ <li><span class="dashicons dashicons-media-text"></span> <a href="<?php echo trailingslashit( $question['link'] ); ?>?utm_source=wpuf-help-page&utm_medium=help-links&utm_campaign=wpuf-help&utm_term=<?php echo sanitize_title( $question['title'] ); ?>" target="_blank"><?php echo $question['title']; ?> <span class="dashicons dashicons-arrow-right-alt2"></span></a></li>
185
+ <?php } ?>
186
+ </ul>
187
+ </div>
188
+ </div>
189
+
190
+ <?php } ?>
191
+ </div>
192
+ </div>
193
+ </div>
194
+ </div>
195
+
196
+ <div class="help-blocks">
197
+ <div class="help-block">
198
+ <img src="<?php echo WPUF_ASSET_URI; ?>/images/help/like.svg" alt="<?php esc_attr_e( 'Like The Plugin?', 'wpuf' ); ?>">
199
+
200
+ <h3><?php _e( 'Like The Plugin?', 'wpuf' ); ?></h3>
201
+
202
+ <p><?php _e( 'Your Review is very important to us as it helps us to grow more.', 'wpuf' ); ?></p>
203
+
204
+ <a target="_blank" class="button button-primary" href="https://wordpress.org/support/plugin/wp-user-frontend/reviews/?rate=5#new-post"><?php _e( 'Review Us on WP.org', 'wpuf' ); ?></a>
205
+ </div>
206
+
207
+ <div class="help-block">
208
+ <img src="<?php echo WPUF_ASSET_URI; ?>/images/help/bugs.svg" alt="<?php esc_attr_e( 'Found Any Bugs?', 'wpuf' ); ?>">
209
+
210
+ <h3><?php _e( 'Found Any Bugs?', 'wpuf' ); ?></h3>
211
+
212
+ <p><?php _e( 'Report any Bug that you Discovered, Get Instant Solutions.', 'wpuf' ); ?></p>
213
+
214
+ <a target="_blank" class="button button-primary" href="https://github.com/weDevsOfficial/wp-user-frontend"><?php _e( 'Report to GitHub', 'wpuf' ); ?></a>
215
+ </div>
216
+
217
+ <div class="help-block">
218
+ <img src="<?php echo WPUF_ASSET_URI; ?>/images/help/support.svg" alt="<?php esc_attr_e( 'Need Any Assistance?', 'wpuf' ); ?>">
219
+
220
+ <h3><?php _e( 'Need Any Assistance?', 'wpuf' ); ?></h3>
221
+
222
+ <p><?php _e( 'Our EXPERT Support Team is always ready to Help you out.', 'wpuf' ); ?></p>
223
+
224
+ <a target="_blank" class="button button-primary" href="https://wedevs.com/account/tickets/?utm_source=wpuf-help-page&utm_medium=help-block&utm_campaign=need-assistance"><?php _e( 'Contact Support', 'wpuf' ); ?></a>
225
+ </div>
226
+ </div>
227
+
228
+ </div>
229
+
230
+
231
+ <style>
232
+ #dashboard-widgets .postbox-container {
233
+ width: 50%;
234
+ }
235
+ h2.hndle{
236
+ background: #f5f5f5;
237
+ }
238
+
239
+ h2.hndle span{
240
+ color: #ccc;
241
+ }
242
+
243
+ .wpuf-help-questions ul {
244
+ margin: 5px 0;
245
+ }
246
+
247
+ .wpuf-help-questions li {
248
+ padding: 10px 5px;
249
+ margin: 0;
250
+ display: block;
251
+ border-bottom: 1px solid #eee;
252
+ }
253
+
254
+ .wpuf-help-questions li:hover {
255
+ background-color: #F5F5F5;
256
+ }
257
+
258
+ .wpuf-help-questions li:last-child {
259
+ border-bottom: none;
260
+ }
261
+
262
+ .wpuf-help-questions li .dashicons {
263
+ color: #ccc;
264
+ margin-top: -3px;
265
+ }
266
+
267
+ .wpuf-help-questions li .dashicons-media-text {
268
+ padding-left: 8px;
269
+ }
270
+
271
+ .wpuf-help-questions li .dashicons-arrow-right-alt2 {
272
+ float: right;
273
+ }
274
+
275
+ .help-blocks {
276
+ display: flex;
277
+ flex-wrap: wrap;
278
+ align-items: center;
279
+ margin-top: 30px;
280
+ }
281
+
282
+ .help-blocks .help-block {
283
+ flex: 1;
284
+ align-self: flex-start;
285
+ min-width: 25%;
286
+ max-width: 30%;
287
+ border: 1px solid #ddd;
288
+ margin-right: 2%;
289
+ margin-bottom: 25px;
290
+ border-radius: 3px;
291
+ padding: 25px 15px;
292
+ text-align: center;
293
+ background: #fff;
294
+ }
295
+
296
+ .help-blocks .help-block img {
297
+ max-height: 70px;
298
+ }
299
+ </style>
admin/post-forms-list-table-view.php CHANGED
@@ -33,4 +33,10 @@
33
  </div><!-- .list-table-inner -->
34
  </div><!-- .list-table-wrap -->
35
 
 
 
 
 
 
 
36
  </div>
33
  </div><!-- .list-table-inner -->
34
  </div><!-- .list-table-wrap -->
35
 
36
+ <div class="wpuf-footer-help">
37
+ <span class="wpuf-footer-help-content">
38
+ <span class="dashicons dashicons-editor-help"></span>
39
+ <?php printf( __( 'Learn more about <a href="%s" target="_blank">Frontend Posting</a>', 'wpuf' ), 'https://wedevs.com/docs/wp-user-frontend-pro/posting-forms/?utm_source=wpuf-footer-help&utm_medium=text-link&utm_campaign=learn-more-frontend-posting' ); ?>
40
+ </span>
41
+ </div>
42
  </div>
admin/settings-options.php CHANGED
@@ -24,6 +24,10 @@ function wpuf_settings_sections() {
24
  'id' => 'wpuf_payment',
25
  'title' => __( 'Payments', 'wpuf' )
26
  ),
 
 
 
 
27
  );
28
 
29
  return apply_filters( 'wpuf_settings_sections', $sections );
@@ -201,7 +205,7 @@ function wpuf_settings_fields() {
201
  array(
202
  'name' => 'show_ft_image',
203
  'label' => __( 'Show Featured Image', 'wpuf' ),
204
- 'desc' => __( 'Show featured image of the post', 'wpuf' ),
205
  'type' => 'checkbox'
206
  ),
207
  array(
@@ -223,14 +227,14 @@ function wpuf_settings_fields() {
223
  'label' => __( 'Auto Login After Registration', 'wpuf' ),
224
  'desc' => __( 'If enabled, users after registration will be logged in to the system', 'wpuf' ),
225
  'type' => 'checkbox',
226
- 'default' => 'off'
227
  ),
228
  array(
229
  'name' => 'register_link_override',
230
  'label' => __( 'Login/Registration override', 'wpuf' ),
231
  'desc' => __( 'If enabled, default login and registration forms will be overridden by WPUF with pages below', 'wpuf' ),
232
  'type' => 'checkbox',
233
- 'default' => 'off'
234
  ),
235
  array(
236
  'name' => 'reg_override_page',
@@ -366,6 +370,22 @@ function wpuf_settings_fields() {
366
  'options' => wpuf_get_gateways()
367
  )
368
  ) ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
369
  );
370
 
371
  return apply_filters( 'wpuf_settings_fields', $settings_fields );
@@ -379,6 +399,8 @@ function wpuf_settings_field_profile( $form ) {
379
  ) );
380
 
381
  $val = get_option( 'wpuf_profile', array() );
 
 
382
  ?>
383
 
384
  <p style="padding-left: 10px; font-style: italic; font-size: 13px;">
@@ -403,6 +425,7 @@ function wpuf_settings_field_profile( $form ) {
403
  <?php } ?>
404
  </table>
405
  <?php
 
406
  }
407
 
408
  add_action( 'wsa_form_bottom_wpuf_profile', 'wpuf_settings_field_profile' );
24
  'id' => 'wpuf_payment',
25
  'title' => __( 'Payments', 'wpuf' )
26
  ),
27
+ array(
28
+ 'id' => 'wpuf_guest_mails',
29
+ 'title' => __( 'E-Mails', 'wpuf' )
30
+ ),
31
  );
32
 
33
  return apply_filters( 'wpuf_settings_sections', $sections );
205
  array(
206
  'name' => 'show_ft_image',
207
  'label' => __( 'Show Featured Image', 'wpuf' ),
208
+ 'desc' => __( 'Show featured image of the post (Overridden by Shortcode)', 'wpuf' ),
209
  'type' => 'checkbox'
210
  ),
211
  array(
227
  'label' => __( 'Auto Login After Registration', 'wpuf' ),
228
  'desc' => __( 'If enabled, users after registration will be logged in to the system', 'wpuf' ),
229
  'type' => 'checkbox',
230
+ 'default' => 'on'
231
  ),
232
  array(
233
  'name' => 'register_link_override',
234
  'label' => __( 'Login/Registration override', 'wpuf' ),
235
  'desc' => __( 'If enabled, default login and registration forms will be overridden by WPUF with pages below', 'wpuf' ),
236
  'type' => 'checkbox',
237
+ 'default' => 'on'
238
  ),
239
  array(
240
  'name' => 'reg_override_page',
370
  'options' => wpuf_get_gateways()
371
  )
372
  ) ),
373
+ 'wpuf_guest_mails' => array(
374
+ array(
375
+ 'name' => 'guest_email_subject',
376
+ 'label' => __( 'Guest Email Subject', 'wpuf' ),
377
+ 'desc' => __( 'This sets the subject of the emails sent to guest users', 'wpuf' ),
378
+ 'default' => 'Please Confirm Your Email to Get the Post Published!',
379
+ 'type' => 'text',
380
+ ),
381
+ array(
382
+ 'name' => 'guest_email_body',
383
+ 'label' => __( 'Guest Email Body', 'wpuf' ),
384
+ 'desc' => __( "This sets the body of the emails sent to guest users. Please DON'T edit the '{activation_link}' part", 'wpuf' ),
385
+ 'default' => "Hey There, \r\n\r\nWe just received your guest post and now we want you to confirm your email so that we can verify the content and move on to the publishing process.\r\n\r\nPlease click the link below to verify: \r\n\r\n{activation_link}\r\n\r\nRegards,\r\n%sitename%",
386
+ 'type' => 'textarea',
387
+ )
388
+ )
389
  );
390
 
391
  return apply_filters( 'wpuf_settings_fields', $settings_fields );
399
  ) );
400
 
401
  $val = get_option( 'wpuf_profile', array() );
402
+
403
+ if ( class_exists('WP_User_Frontend_Pro') ) {
404
  ?>
405
 
406
  <p style="padding-left: 10px; font-style: italic; font-size: 13px;">
425
  <?php } ?>
426
  </table>
427
  <?php
428
+ }
429
  }
430
 
431
  add_action( 'wsa_form_bottom_wpuf_profile', 'wpuf_settings_field_profile' );
admin/support.php DELETED
@@ -1,42 +0,0 @@
1
- <div class="wrap">
2
- <h2><?php _e( 'WP User Frontend - Support', 'wpuf' ); ?></h2>
3
- <table>
4
- <tr>
5
- <th class="lebel">
6
- <?php _e( 'Need Help?', 'wpuf' ); ?>
7
- </th>
8
- <td class="description">
9
- <ul>
10
- <li>
11
- <strong><?php printf( __( 'Step 1: ', 'wpuf' ) ); ?><a target="_blank" href="http://docs.wedevs.com/"><?php printf( __( 'Read Documentation and FAQ', 'wpuf' ) ); ?></a></strong>
12
- <p><?php printf( __( 'We have created detailed step by step documentation for all the features (including docs for developers). We have also answered all possible FAQ queries based on user request. We hope you will find what you are looking for. If not, please continue to Step 2.', 'wpuf' ) ); ?></p>
13
- </li>
14
- <br/>
15
- <li>
16
- <strong><?php printf( __( 'Step 2: ', 'wpuf' ) ); ?><a href="https://wedevs.com/account/tickets" target="_blank"><?php printf( __( 'Create a Support Ticket', 'wpuf' ) ); ?></a></strong>
17
- <p><?php printf( __( 'We reply from <code>7am to 3pm (GMT+6)</code> except <code><strong>Friday</strong></code>. Our responses are usually under 12 hours to as quick as 1 hour depending on channel pressure.', 'wpuf' ) ); ?>
18
- </p>
19
- <p><?php printf( __( 'When you are creating a ticket, please care to include a screenshot of the issue if possible and write the problem as specificly as you can. This will help us track and solve your trouble quickly.', 'wpuf' ) ); ?>
20
- </p>
21
- </li>
22
- </ul>
23
- </td>
24
- </tr>
25
- </table>
26
- </div>
27
-
28
-
29
- <style>
30
- table{
31
- margin-top: 20px;
32
- }
33
- .lebel{
34
- width: 20%;
35
- vertical-align: top;
36
- text-align: left;
37
- }
38
- .description{
39
- width: 80%;
40
- vertical-align: top;
41
- }
42
- </style>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/css/admin.css CHANGED
@@ -166,3 +166,25 @@ span.wpuf_help{
166
  height: 18px;
167
  display: block;
168
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
166
  height: 18px;
167
  display: block;
168
  }
169
+
170
+ .wpuf-footer-help {
171
+ box-sizing: border-box;
172
+ width: auto;
173
+ margin: 2rem 0.8rem;
174
+ text-align: center;
175
+ }
176
+
177
+ .wpuf-footer-help .wpuf-footer-help-content {
178
+ border: 1px solid #ddd;
179
+ border-radius: 30px;
180
+ padding: 15px 25px;
181
+ font-size: 15px;
182
+ }
183
+
184
+ .wpuf-footer-help-content .dashicons {
185
+ color: #47c1bf;
186
+ font-size: 30px;
187
+ height: 30px;
188
+ width: 30px;
189
+ margin-top: -5px;
190
+ }
assets/css/frontend-forms.css CHANGED
@@ -1,3 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  .wpuf-loading {
2
  width: 16px;
3
  height: 16px;
@@ -91,6 +121,18 @@ ul.wpuf-form li .wpuf-label {
91
  ul.wpuf-form li .wpuf-label .required {
92
  color: red;
93
  }
 
 
 
 
 
 
 
 
 
 
 
 
94
  ul.wpuf-form li .wpuf-fields {
95
  float: left;
96
  width: 70%;
@@ -179,6 +221,10 @@ ul.wpuf-form li .wpuf-fields a.file-selector:focus {
179
  ul.wpuf-form li .wpuf-fields .google-map img {
180
  max-width: none !important;
181
  }
 
 
 
 
182
  ul.wpuf-form li .wpuf-fields .wpuf-name-field-wrap {
183
  margin-bottom: 8px;
184
  }
@@ -442,6 +488,21 @@ ul.wpuf-form.form-label-above li .wpuf-fields {
442
  float: none;
443
  width: 100%;
444
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
445
  ul.wpuf-form.form-label-above li .wpuf-label {
446
  margin-bottom: 10px;
447
  }
@@ -451,6 +512,21 @@ ul.wpuf-form.form-label-right li .wpuf-label {
451
  ul.wpuf-form.form-label-hidden li .wpuf-label {
452
  display: none;
453
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
454
  ul.wpuf-form.form-label-hidden li .wpuf-fields {
455
  display: block;
456
  float: none;
@@ -1056,6 +1132,18 @@ body.rtl ul.wpuf-form li .wpuf-label {
1056
  float: none;
1057
  width: 100%;
1058
  }
 
 
 
 
 
 
 
 
 
 
 
 
1059
  }
1060
  .wpuf-form .required {
1061
  color: red;
1
+ /* DivTable.com */
2
+ .wpufTable {
3
+ display: table;
4
+ width: 100%;
5
+ }
6
+ .wpufTableRow {
7
+ display: table-row;
8
+ }
9
+ .wpufTableRow:nth-child(even) {
10
+ background-color: #f5f5f5;
11
+ }
12
+ .wpufTableHeading {
13
+ background-color: #eee;
14
+ display: table-header-group;
15
+ font-weight: bold;
16
+ }
17
+ .wpufTableCell,
18
+ .wpufTableHead {
19
+ border: none;
20
+ display: table-cell;
21
+ padding: 3px 10px;
22
+ }
23
+ .wpufTableFoot {
24
+ background-color: #eee;
25
+ display: table-footer-group;
26
+ font-weight: bold;
27
+ }
28
+ .wpufTableBody {
29
+ display: table-row-group;
30
+ }
31
  .wpuf-loading {
32
  width: 16px;
33
  height: 16px;
121
  ul.wpuf-form li .wpuf-label .required {
122
  color: red;
123
  }
124
+ ul.wpuf-form li.field-size-large .wpuf-fields {
125
+ float: left;
126
+ width: 70%;
127
+ }
128
+ ul.wpuf-form li.field-size-medium .wpuf-fields {
129
+ float: left;
130
+ width: 50%;
131
+ }
132
+ ul.wpuf-form li.field-size-small .wpuf-fields {
133
+ float: left;
134
+ width: 30%;
135
+ }
136
  ul.wpuf-form li .wpuf-fields {
137
  float: left;
138
  width: 70%;
221
  ul.wpuf-form li .wpuf-fields .google-map img {
222
  max-width: none !important;
223
  }
224
+ ul.wpuf-form li .wpuf-fields .wpuf-product-qty {
225
+ float: left;
226
+ width: 10%;
227
+ }
228
  ul.wpuf-form li .wpuf-fields .wpuf-name-field-wrap {
229
  margin-bottom: 8px;
230
  }
488
  float: none;
489
  width: 100%;
490
  }
491
+ ul.wpuf-form.form-label-above li.field-size-large .wpuf-fields {
492
+ display: block;
493
+ float: none;
494
+ width: 100%;
495
+ }
496
+ ul.wpuf-form.form-label-above li.field-size-medium .wpuf-fields {
497
+ display: block;
498
+ float: none;
499
+ width: 65%;
500
+ }
501
+ ul.wpuf-form.form-label-above li.field-size-small .wpuf-fields {
502
+ display: block;
503
+ float: none;
504
+ width: 30%;
505
+ }
506
  ul.wpuf-form.form-label-above li .wpuf-label {
507
  margin-bottom: 10px;
508
  }
512
  ul.wpuf-form.form-label-hidden li .wpuf-label {
513
  display: none;
514
  }
515
+ ul.wpuf-form.form-label-hidden li.field-size-large .wpuf-fields {
516
+ display: block;
517
+ float: none;
518
+ width: 100%;
519
+ }
520
+ ul.wpuf-form.form-label-hidden li.field-size-medium .wpuf-fields {
521
+ display: block;
522
+ float: none;
523
+ width: 65%;
524
+ }
525
+ ul.wpuf-form.form-label-hidden li.field-size-small .wpuf-fields {
526
+ display: block;
527
+ float: none;
528
+ width: 30%;
529
+ }
530
  ul.wpuf-form.form-label-hidden li .wpuf-fields {
531
  display: block;
532
  float: none;
1132
  float: none;
1133
  width: 100%;
1134
  }
1135
+ ul.wpuf-form li.field-size-large .wpuf-fields {
1136
+ float: none;
1137
+ width: 100%;
1138
+ }
1139
+ ul.wpuf-form li.field-size-medium .wpuf-fields {
1140
+ float: none;
1141
+ width: 65%;
1142
+ }
1143
+ ul.wpuf-form li.field-size-small .wpuf-fields {
1144
+ float: none;
1145
+ width: 30%;
1146
+ }
1147
  }
1148
  .wpuf-form .required {
1149
  color: red;
assets/css/wpuf-form-builder.css CHANGED
@@ -306,6 +306,51 @@
306
  #wpuf-form-builder-settings .tab-contents .form-table {
307
  margin-top: 0;
308
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
309
  #wpuf-form-builder-container {
310
  position: relative;
311
  }
306
  #wpuf-form-builder-settings .tab-contents .form-table {
307
  margin-top: 0;
308
  }
309
+ #wpuf-form-builder-payment {
310
+ position: relative;
311
+ margin-top: 15px;
312
+ min-height: 380px;
313
+ }
314
+ #wpuf-form-builder-payment .nav-tab-wrapper {
315
+ position: absolute;
316
+ top: 0;
317
+ left: 0;
318
+ width: 170px;
319
+ border-bottom: 0;
320
+ }
321
+ #wpuf-form-builder-payment .nav-tab-wrapper a {
322
+ width: calc(100% - -1px);
323
+ margin-left: 0;
324
+ margin-bottom: .5em;
325
+ border-right: 1px solid #cccccc;
326
+ border-bottom: 1px solid #cccccc;
327
+ font-weight: 400;
328
+ font-size: 13px;
329
+ }
330
+ #wpuf-form-builder-payment .nav-tab-wrapper a.nav-tab-active {
331
+ border-right-color: #f1f1f1;
332
+ }
333
+ #wpuf-form-builder-payment .nav-tab-wrapper a:focus {
334
+ outline: 0;
335
+ -webkit-box-shadow: none;
336
+ box-shadow: none;
337
+ }
338
+ #wpuf-form-builder-payment .tab-contents {
339
+ margin-left: 170px;
340
+ border-left: 1px solid #cccccc;
341
+ padding-left: 20px;
342
+ }
343
+ #wpuf-form-builder-payment .tab-contents > .group {
344
+ display: none;
345
+ height: calc(100vh - 140px);
346
+ overflow-y: auto;
347
+ }
348
+ #wpuf-form-builder-payment .tab-contents > .group.active {
349
+ display: block;
350
+ }
351
+ #wpuf-form-builder-payment .tab-contents .form-table {
352
+ margin-top: 0;
353
+ }
354
  #wpuf-form-builder-container {
355
  position: relative;
356
  }
assets/images/help/bugs.svg ADDED
@@ -0,0 +1 @@
 
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 46 45.69"><defs><style>.cls-1{fill:#9b59b6;}</style></defs><title>Bugs</title><g id="Layer_2" data-name="Layer 2"><g id="Layer_1-2" data-name="Layer 1"><path class="cls-1" d="M18.87,28.37,9.16,38.08A8.66,8.66,0,0,0,14.49,40h4.38a9.55,9.55,0,0,0,2.28-.38v5.14a1,1,0,0,0,1.9,0v-5.9A4.83,4.83,0,0,0,25,37.31l.76-.76a.92.92,0,0,0,0-1.33Z"/><path class="cls-1" d="M11.64,21.13c-.19-.19-.57-.38-.76-.19H9c-.38,0-.57,0-.76.38L7.07,23H1.17a1,1,0,1,0,0,1.9H6.31a9.56,9.56,0,0,0-.38,2.28V31.6a8.66,8.66,0,0,0,1.9,5.33l9.71-9.71Z"/><path class="cls-1" d="M24.39,14.47c.19.19.38.19.76.19a.7.7,0,0,0,.57-.19.92.92,0,0,0,.38-1.14,11.08,11.08,0,0,1-1-3,.87.87,0,0,0-1-.76H22.3a1,1,0,0,0-.76.38,1.14,1.14,0,0,0-.19.76,2.35,2.35,0,0,0,.76,1.52Z"/><path class="cls-1" d="M35.81,28.56h3.43a1,1,0,0,0,0-1.9H33.91L20.77,13.52A5.2,5.2,0,0,1,19.25,9.9V6.66a.9.9,0,0,0-1-1h-.19A13.52,13.52,0,0,0,16.21,3,9.12,9.12,0,0,0,9.54,0a9.71,9.71,0,0,0-5.9,2.09,1.44,1.44,0,0,0-.38.76,1,1,0,0,0,.38.76L9.54,7a5.39,5.39,0,0,1-2.86,4.19l-5.14-3a.85.85,0,0,0-1,0c-.38.19-.57.38-.57.76a8.9,8.9,0,0,0,2.67,7,9.53,9.53,0,0,0,6.85,3,4.1,4.1,0,0,0,2.09-.38L26.87,33.89,37.15,44.17a5.2,5.2,0,0,0,3.62,1.52,5,5,0,0,0,4.95-4.95,5.2,5.2,0,0,0-1.52-3.62Z"/><path class="cls-1" d="M34.86,24.75c.19.19.38.19.76.19H36a1,1,0,0,0,.57-1V21.51c0-.38-.38-1-.76-1a7,7,0,0,1-3.43-.76.92.92,0,0,0-1.14.38c-.19.38-.19,1,.19,1.14Z"/><path class="cls-1" d="M45.71,9.9c-1.52-1.52-5.14-.38-7,.57L35.81,7.62c.76-2.09,1.9-5.71.57-7a.92.92,0,0,0-1.33,0,.92.92,0,0,0,0,1.33c.38.38,0,2.67-1,5.14L28,8a.87.87,0,0,0-.76,1C26.87,14.28,31.63,19,37.34,19c.38,0,1-.38,1-.76l1-6.09c2.47-1,4.76-1.33,5.14-1A.94.94,0,1,0,45.71,9.9Z"/></g></g></svg>
assets/images/help/customization.svg ADDED
@@ -0,0 +1 @@
 
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 46 45.91"><defs><style>.cls-1{fill:#e74c3c;}</style></defs><title>Customization</title><g id="Layer_2" data-name="Layer 2"><g id="Layer_1-2" data-name="Layer 1"><path class="cls-1" d="M23,15.6q11.21,0,22.42,0c.44,0,.56.13.56.56q0,13.75,0,27.5a2,2,0,0,1-2.26,2.25H2.31A2,2,0,0,1,0,43.61Q0,29.91,0,16.2c0-.6,0-.6.59-.6ZM19.08,37.22c.48.2.91.41,1.36.54a.58.58,0,0,1,.49.58A1.9,1.9,0,0,0,22.64,40a1.77,1.77,0,0,0,2-1.25c.13-.86.64-1.09,1.29-1.31a1.18,1.18,0,0,0,.29-.14.55.55,0,0,1,.76.06,1.81,1.81,0,0,0,2.29,0,1.69,1.69,0,0,0,.66-2.17,1.66,1.66,0,0,1,0-2,.28.28,0,0,0,0-.08c.07-.47.31-.66.81-.72a1.88,1.88,0,0,0,1.62-1.73,1.72,1.72,0,0,0-1.27-1.84c-.83-.11-1.06-.6-1.26-1.22a1.26,1.26,0,0,0-.15-.33.58.58,0,0,1,.08-.8,1.79,1.79,0,0,0,0-2.25,1.72,1.72,0,0,0-2.22-.65,1.57,1.57,0,0,1-1.87,0,1.19,1.19,0,0,0-.39-.13c-.31-.05-.4-.22-.43-.53a1.92,1.92,0,0,0-1.69-1.72,1.77,1.77,0,0,0-2,1.27c-.12.83-.61,1-1.23,1.26a1.2,1.2,0,0,0-.29.14.63.63,0,0,1-.88-.06,1.8,1.8,0,0,0-2.25,0,1.71,1.71,0,0,0-.63,2.18,1.57,1.57,0,0,1,0,1.84,1,1,0,0,0-.1.3c-.05.32-.21.43-.55.46a1.91,1.91,0,0,0-1.7,1.65,1.76,1.76,0,0,0,1.24,2,1.57,1.57,0,0,1,1.31,1.29,1.14,1.14,0,0,0,.14.29.56.56,0,0,1-.06.76,1.83,1.83,0,0,0,.23,2.56A1.94,1.94,0,0,0,19.08,37.22Z"/><path class="cls-1" d="M22.94,11.8H.61c-.61,0-.61,0-.61-.63Q0,6.73,0,2.29A2,2,0,0,1,2.31,0H43.59a2,2,0,0,1,2.3,2.3c0,3,0,6,0,9,0,.42-.12.54-.54.54ZM17.79,3.91a1.94,1.94,0,0,0-.07,3.89,2,2,0,0,0,2-1.92A2,2,0,0,0,17.79,3.91ZM6.46,5.81a1.94,1.94,0,1,0,2-1.9A1.94,1.94,0,0,0,6.46,5.81Z"/><path class="cls-1" d="M22.95,27a3.7,3.7,0,1,1-3.71,3.73A3.7,3.7,0,0,1,22.95,27Z"/></g></g></svg>
assets/images/help/docs.svg ADDED
@@ -0,0 +1 @@
 
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 46 46"><defs><style>.cls-1{fill:#1abc9c;}</style></defs><title>Plugin Documentation</title><g id="Layer_2" data-name="Layer 2"><g id="Layer_1-2" data-name="Layer 1"><rect class="cls-1" x="15.84" y="17.13" width="14.32" height="1.59"/><rect class="cls-1" x="15.84" y="24.19" width="14.32" height="1.59"/><rect class="cls-1" x="15.84" y="20.66" width="14.32" height="1.59"/><path class="cls-1" d="M23,0A23,23,0,1,0,46,23,23,23,0,0,0,23,0Zm5.47,9.9,4.83,4.4H28.47Zm-2.29,23v3.2H15.49a2.79,2.79,0,0,1-2.79-2.79V12.69A2.79,2.79,0,0,1,15.49,9.9H27.28v5.59h6V27.72H15.84v1.59H29.78v1.94H15.84v1.59H26.19Zm11.29,2.52H33.88V39H31.37V35.42H27.78V32.9h3.59V29.31h2.52V32.9h3.59Z"/></g></g></svg>
assets/images/help/like.svg ADDED
@@ -0,0 +1 @@
 
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 46 41.82"><defs><style>.cls-1{fill:#00aeff;}</style></defs><title>Like</title><g id="Layer_2" data-name="Layer 2"><g id="Layer_1-2" data-name="Layer 1"><g id="thumb-up"><path class="cls-1" d="M0,41.82H8.36V16.73H0Zm46-23a4.19,4.19,0,0,0-4.18-4.18H28.65L30.74,5V4.39a4.39,4.39,0,0,0-.84-2.3L27.6,0,13.8,13.8a3.51,3.51,0,0,0-1.25,2.93V37.64a4.19,4.19,0,0,0,4.18,4.18H35.55a4.13,4.13,0,0,0,3.76-2.51l6.27-14.85A3.56,3.56,0,0,0,45.79,23V18.82H46Z"/></g></g></g></svg>
assets/images/help/support.svg ADDED
@@ -0,0 +1 @@
 
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32.22 42.58"><defs><style>.cls-1{fill:#6c75ff;}</style></defs><title> Support Team</title><g id="Layer_2" data-name="Layer 2"><g id="Layer_1-2" data-name="Layer 1"><path class="cls-1" d="M6.36,29.34l1.09-1.09h8l-5.08-9.18-3.76.76a2.64,2.64,0,0,0-2,1.91L.09,36.31a2.64,2.64,0,0,0,2.55,3.31H6.36V29.34Z"/><path class="cls-1" d="M32.13,36.31,27.67,21.75a2.64,2.64,0,0,0-2.06-1.92l-3.74-.71-5.06,9.13h8.56l1.09,1.09V39.62h3.12a2.64,2.64,0,0,0,2.55-3.31Z"/><polygon class="cls-1" points="8.54 39.62 8.24 39.62 8.24 39.62 23.98 39.62 23.98 39.62 24.28 39.62 24.28 30.43 8.54 30.43 8.54 39.62"/><rect class="cls-1" x="4.19" y="40.61" width="23.83" height="1.97"/><path class="cls-1" d="M7.62,12.65c0,.09.1.22.15.36a3.58,3.58,0,0,0,.68,1.22c1.21,3.94,4.33,6.68,7.64,6.67s6.38-2.77,7.55-6.72A3.61,3.61,0,0,0,24.31,13c.06-.14.11-.27.15-.36a2,2,0,0,0-.33-2.41V10.1C24.12,5.2,23.48,0,16,0S7.92,5,7.94,10.15c0,0,0,.06,0,.09A2,2,0,0,0,7.62,12.65Zm1-1.58h0A.55.55,0,0,0,9,10.83l1.3.2a.28.28,0,0,0,.3-.16L11.39,9a35.31,35.31,0,0,0,7.2,1,7.76,7.76,0,0,0,2.11-.25L21.23,11a.27.27,0,0,0,.25.17h.07l1.51-.43a.56.56,0,0,0,.31.3h0c.23.11.3.6.06,1.09-.06.12-.12.27-.18.43a4.18,4.18,0,0,1-.4.82.55.55,0,0,0-.26.33c-1,3.58-3.68,6.08-6.54,6.09s-5.6-2.48-6.63-6a.55.55,0,0,0-.26-.33,4.3,4.3,0,0,1-.41-.82c-.06-.15-.13-.3-.18-.42C8.37,11.68,8.44,11.19,8.67,11.08Z"/></g></g></svg>
assets/js-templates/form-components.php CHANGED
@@ -10,7 +10,8 @@
10
  :key="field.id"
11
  :class="[
12
  'field-items', 'wpuf-el', field.name, field.css, 'form-field-' + field.template,
13
- ('hidden' === field.input_type) ? 'hidden-field' : '',
 
14
  parseInt(editing_form_id) === parseInt(field.id) ? 'current-editing' : ''
15
  ]"
16
  :data-index="index"
@@ -467,123 +468,6 @@
467
  </div>
468
  </script>
469
 
470
- <script type="text/x-template" id="tmpl-wpuf-form-notification">
471
- <div>
472
- <!-- <pre>{{ notifications.length }}</pre> -->
473
- <a href="#" class="button button-secondary add-notification" v-on:click.prevent="addNew"><span class="dashicons dashicons-plus-alt"></span> <?php _e( 'Add Notification', 'best-contact-form' ); ?></a>
474
-
475
- <div :class="[editing ? 'editing' : '', 'notification-wrap']">
476
- <!-- notification-wrap -->
477
-
478
- <div class="notification-table-wrap">
479
- <table class="wp-list-table widefat fixed striped posts wpuf-cf-notification-table">
480
- <thead>
481
- <tr>
482
- <th class="col-toggle">&nbsp;</th>
483
- <th class="col-name"><?php _e( 'Name', 'best-contact-form' ); ?></th>
484
- <th class="col-subject"><?php _e( 'Subject', 'best-contact-form' ); ?></th>
485
- <th class="col-action">&nbsp;</th>
486
- </tr>
487
- </thead>
488
- <tbody>
489
- <tr v-for="(notification, index) in notifications">
490
- <td class="col-toggle">
491
- <a href="#" v-on:click.prevent="toggelNotification(index)">
492
- <img v-if="notification.active" src="<?php echo WPUF_ASSET_URI; ?>/images/active.png" width="24" alt="status">
493
- <img v-else src="<?php echo WPUF_ASSET_URI; ?>/images/inactive.png" width="24" alt="status">
494
- </a>
495
- </td>
496
- <td class="col-name"><a href="#" v-on:click.prevent="editItem(index)">{{ notification.name }}</a></td>
497
- <td class="col-subject">{{ notification.subject }}</td>
498
- <td class="col-action">
499
- <a href="#" v-on:click.prevent="duplicate(index)" title="<?php esc_attr_e( 'Duplicate', 'best-contact-form' ); ?>"><span class="dashicons dashicons-admin-page"></span></a>
500
- <a href="#" v-on:click.prevent="editItem(index)" title="<?php esc_attr_e( 'Settings', 'best-contact-form' ); ?>"><span class="dashicons dashicons-admin-generic"></span></a>
501
- </td>
502
- </tr>
503
- <tr v-if="!notifications.length">
504
- <td colspan="4"><?php _e( 'No notifications found', 'best-contact-form' ); ?></td>
505
- </tr>
506
- </tbody>
507
- </table>
508
- </div><!-- .notification-table-wrap -->
509
-
510
- <div class="notification-edit-area" v-if="notifications[editingIndex]">
511
-
512
- <div class="notification-head">
513
- <input type="text" name="" v-model="notifications[editingIndex].name" v-on:keyup.enter="editDone()" value="Admin Notification">
514
- </div>
515
-
516
- <div class="form-fields">
517
- <div class="notification-row">
518
- <div class="row-one-half notification-field first">
519
- <label for="notification-title"><?php _e( 'To', 'best-contact-form' ); ?></label>
520
- <input type="text" v-model="notifications[editingIndex].to">
521
- <wpuf-merge-tags filter="email_address" v-on:insert="insertValue" field="to"></wpuf-merge-tags>
522
- </div>
523
-
524
- <div class="row-one-half notification-field">
525
- <label for="notification-title"><?php _e( 'Reply To', 'best-contact-form' ); ?></label>
526
- <input type="email" v-model="notifications[editingIndex].replyTo">
527
- <wpuf-merge-tags filter="email_address" v-on:insert="insertValue" field="replyTo"></wpuf-merge-tags>
528
- </div>
529
- </div>
530
-
531
- <div class="notification-row notification-field">
532
- <label for="notification-title"><?php _e( 'Subject', 'best-contact-form' ); ?></label>
533
- <input type="text" v-model="notifications[editingIndex].subject">
534
- <wpuf-merge-tags v-on:insert="insertValue" field="subject"></wpuf-merge-tags>
535
- </div>
536
-
537
- <div class="notification-row notification-field">
538
- <label for="notification-title"><?php _e( 'Email Message', 'best-contact-form' ); ?></label>
539
- <textarea name="" rows="6" v-model="notifications[editingIndex].message"></textarea>
540
- <wpuf-merge-tags v-on:insert="insertValue" field="message"></wpuf-merge-tags>
541
- </div>
542
-
543
- <section class="advanced-fields">
544
- <a href="#" class="field-toggle" v-on:click.prevent="toggleAdvanced()"><span class="dashicons dashicons-arrow-right"></span><?php _e( ' Advanced', 'best-contact-form' ); ?></a>
545
-
546
- <div class="advanced-field-wrap">
547
- <div class="notification-row">
548
- <div class="row-one-half notification-field first">
549
- <label for="notification-title"><?php _e( 'From Name', 'best-contact-form' ); ?></label>
550
- <input type="text" v-model="notifications[editingIndex].fromName">
551
- <wpuf-merge-tags v-on:insert="insertValue" field="fromName"></wpuf-merge-tags>
552
- </div>
553
-
554
- <div class="row-one-half notification-field">
555
- <label for="notification-title"><?php _e( 'From Address', 'best-contact-form' ); ?></label>
556
- <input type="email" name="" v-model="notifications[editingIndex].fromAddress">
557
- <wpuf-merge-tags filter="email_address" v-on:insert="insertValue" field="fromAddress"></wpuf-merge-tags>
558
- </div>
559
- </div>
560
-
561
- <div class="notification-row">
562
- <div class="row-one-half notification-field first">
563
- <label for="notification-title"><?php _e( 'CC', 'best-contact-form' ); ?></label>
564
- <input type="email" name="" v-model="notifications[editingIndex].cc">
565
- <wpuf-merge-tags filter="email_address" v-on:insert="insertValue" field="cc"></wpuf-merge-tags>
566
- </div>
567
-
568
- <div class="row-one-half notification-field">
569
- <label for="notification-title"><?php _e( 'BCC', 'best-contact-form' ); ?></label>
570
- <input type="email" name="" v-model="notifications[editingIndex].bcc">
571
- <wpuf-merge-tags filter="email_address" v-on:insert="insertValue" field="bcc"></wpuf-merge-tags>
572
- </div>
573
- </div>
574
- </div>
575
- </section><!-- .advanced-fields -->
576
- </div>
577
-
578
- <div class="submit-area">
579
- <a href="#" v-on:click.prevent="deleteItem(editingIndex)" title="<?php esc_attr_e( 'Delete', 'best-contact-form' ); ?>"><span class="dashicons dashicons-trash"></span></a>
580
- <button class="button button-secondary" v-on:click.prevent="editDone()"><?php _e( 'Done', 'best-contact-form' ); ?></button>
581
- </div>
582
- </div><!-- .notification-edit-area -->
583
-
584
- </div><!-- .notification-wrap -->
585
- </div></script>
586
-
587
  <script type="text/x-template" id="tmpl-wpuf-form-post_content">
588
  <div class="wpuf-fields">
589
  <div class="wp-media-buttons" v-if="field.insert_image == 'yes'">
@@ -776,130 +660,6 @@
776
  <i class="fa fa-question-circle field-helper-text wpuf-tooltip" data-placement="top" :title="text"></i>
777
  </script>
778
 
779
- <script type="text/x-template" id="tmpl-wpuf-integration">
780
- <div class="wpuf-integrations-wrap">
781
-
782
- <template v-if="hasIntegrations">
783
- <div :class="['wpuf-integration', isAvailable(integration.id) ? '' : 'collapsed']" v-for="integration in integrations">
784
- <div class="wpuf-integration-header">
785
- <div class="wpuf-integration-header-toggle">
786
- <span :class="['wpuf-toggle-switch', 'big', isActive(integration.id) ? 'checked' : '']" v-on:click="toggleState(integration.id, $event.target)"></span>
787
- </div>
788
- <div class="wpuf-integration-header-label">
789
- <img class="icon" :src="integration.icon" :alt="integration.title">
790
- {{ integration.title }} <span class="label-premium" v-if="!isAvailable(integration.id)"><?php _e( 'Premium Feature', 'best-contact-form' ); ?></span>
791
- </div>
792
-
793
- <div class="wpuf-integration-header-actions">
794
- <button type="button" class="toggle-area" v-on:click="showHide($event.target)">
795
- <span class="screen-reader-text"><?php _e( 'Toggle panel', 'best-contact-form' ); ?></span>
796
- <span class="toggle-indicator"></span>
797
- </button>
798
- </div>
799
- </div>
800
-
801
- <div class="wpuf-integration-settings">
802
-
803
- <div v-if="isAvailable(integration.id)">
804
- <component :is="'wpuf-integration-' + integration.id" :id="integration.id"></component>
805
- </div>
806
- <div v-else>
807
- <?php _e( 'This feature is available on the premium version only.', 'best-contact-form' ); ?>
808
- <a class="button" :href="pro_link" target="_blank"><?php _e( 'Upgrade to Pro', 'best-contact-form' ); ?></a>
809
- </div>
810
-
811
- </div>
812
- </div>
813
- </template>
814
-
815
- <div v-else>
816
- <?php _e( 'No integration found.', 'best-contact-form' ); ?>
817
- </div>
818
- </div></script>
819
-
820
- <script type="text/x-template" id="tmpl-wpuf-merge-tags">
821
- <div class="wpuf-merge-tag-wrap">
822
- <a href="#" v-on:click.prevent="toggleFields($event)" class="merge-tag-link" title="<?php echo esc_attr( 'Click to toggle merge tags', 'wpuf' ); ?>"><span class="dashicons dashicons-editor-code"></span></a>
823
-
824
- <!-- <pre>{{ form_fields.length }}</pre> -->
825
-
826
- <div class="wpuf-merge-tags">
827
- <div class="merge-tag-section">
828
- <div class="merge-tag-head"><?php _e( 'Form Fields', 'wpuf' ); ?></div>
829
-
830
- <ul>
831
- <template v-if="form_fields.length">
832
- <li v-for="field in form_fields">
833
-
834
- <template v-if="field.input_type === 'name'">
835
- <a href="#" v-on:click.prevent="insertField('name-full', field.name);">{{ field.label }}</a>
836
- (
837
- <a href="#" v-on:click.prevent="insertField('name-first', field.name);"><?php _e( 'first', 'wpuf' ); ?></a> |
838
- <a href="#" v-on:click.prevent="insertField('name-middle', field.name);"><?php _e( 'middle', 'wpuf' ); ?></a> |
839
- <a href="#" v-on:click.prevent="insertField('name-last', field.name);"><?php _e( 'last', 'wpuf' ); ?></a>
840
- )
841
- </template>
842
-
843
- <a v-else href="#" v-on:click.prevent="insertField('field', field.name);">{{ field.label }}</a>
844
-
845
- </li>
846
- </template>
847
- <li v-else><?php _e( 'No fields available', 'wpuf' ); ?></li>
848
- </ul>
849
- </div><!-- .merge-tag-section -->
850
-
851
- <?php
852
- if ( function_exists( 'weforms_get_merge_tags' ) ) {
853
-
854
- $merge_tags = weforms_get_merge_tags();
855
-
856
- foreach ($merge_tags as $section_key => $section) {
857
- ?>
858
-
859
- <div class="merge-tag-section">
860
- <div class="merge-tag-head"><?php echo $section['title'] ?></div>
861
-
862
- <ul>
863
- <?php foreach ($section['tags'] as $key => $value) { ?>
864
- <li>
865
- <a href="#" v-on:click.prevent="insertField('<?php echo $key; ?>');"><?php echo $value; ?></a>
866
- </li>
867
- <?php } ?>
868
- </ul>
869
- </div><!-- .merge-tag-section -->
870
-
871
- <?php
872
- }
873
- }
874
- ?>
875
- </div><!-- .merge-tags -->
876
- </div></script>
877
-
878
- <script type="text/x-template" id="tmpl-wpuf-modal">
879
- <div>
880
- <div :class="['wpuf-form-template-modal', show ? 'show' : 'hide' ]">
881
-
882
- <span class="screen-reader-text"><?php _e( 'Modal window. Press escape to close.', 'wpuf' ); ?></span>
883
- <a href="#" class="close" v-on:click.prevent="closeModal()">× <span class="screen-reader-text"><?php _e( 'Close modal window', 'wpuf' ); ?></span></a>
884
-
885
- <header class="modal-header">
886
- <slot name="header"></slot>
887
- </header>
888
-
889
- <div :class="['content-container', this.$slots.footer ? 'modal-footer' : 'no-footer']">
890
- <div class="content">
891
- <slot name="body"></slot>
892
- </div>
893
- </div>
894
-
895
- <footer v-if="this.$slots.footer">
896
- <slot name="footer"></slot>
897
- </footer>
898
- </div>
899
- <div :class="['wpuf-form-template-modal-backdrop', show ? 'show' : 'hide' ]"></div>
900
- </div>
901
- </script>
902
-
903
  <script type="text/x-template" id="tmpl-wpuf-text-editor">
904
  <div class="wpuf-text-editor">
905
 
10
  :key="field.id"
11
  :class="[
12
  'field-items', 'wpuf-el', field.name, field.css, 'form-field-' + field.template,
13
+ field.width ? 'field-size-' + field.width : '',
14
+ ('custom_hidden_field' === field.template) ? 'hidden-field' : '',
15
  parseInt(editing_form_id) === parseInt(field.id) ? 'current-editing' : ''
16
  ]"
17
  :data-index="index"
468
  </div>
469
  </script>
470
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
471
  <script type="text/x-template" id="tmpl-wpuf-form-post_content">
472
  <div class="wpuf-fields">
473
  <div class="wp-media-buttons" v-if="field.insert_image == 'yes'">
660
  <i class="fa fa-question-circle field-helper-text wpuf-tooltip" data-placement="top" :title="text"></i>
661
  </script>
662
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
663
  <script type="text/x-template" id="tmpl-wpuf-text-editor">
664
  <div class="wpuf-text-editor">
665
 
assets/js/frontend-form.js CHANGED
@@ -928,4 +928,15 @@
928
  }
929
  });
930
 
 
 
 
 
 
 
 
 
 
 
 
931
  })(jQuery, window);
928
  }
929
  });
930
 
931
+ $(function() {
932
+ $('input[name="first_name"], input[name="last_name"]').on('change keyup', function() {
933
+ var myVal, newVal = $.makeArray($('input[name="first_name"], input[name="last_name"]').map(function(){
934
+ if (myVal = $(this).val()) {
935
+ return(myVal);
936
+ }
937
+ })).join(' ');
938
+ $('input[name="display_name"]').val(newVal);
939
+ });
940
+ });
941
+
942
  })(jQuery, window);
assets/js/frontend-form.min.js CHANGED
@@ -1 +1 @@
1
- !function(a,b){a.fn.listautowidth=function(){return this.each(function(){var b=a(this).width(),c=b/a(this).children("li").length;a(this).children("li").each(function(){var b=a(this).outerWidth(!0)-a(this).width();a(this).width(c-b)})})},b.WP_User_Frontend={init:function(){this.enableMultistep(this),a(".wpuf-form").on("click","img.wpuf-clone-field",this.cloneField),a(".wpuf-form").on("click","img.wpuf-remove-field",this.removeField),a(".wpuf-form").on("click","a.wpuf-delete-avatar",this.deleteAvatar),a(".wpuf-form").on("click","a#wpuf-post-draft",this.draftPost),a(".wpuf-form").on("click","button#wpuf-account-update-profile",this.account_update_profile),a(".wpuf-form-add").on("submit",this.formSubmit),a("form#post").on("submit",this.adminPostSubmit),a(".wpuf-form").on("step-change-fieldset",function(a,b,c){if(wpuf_plupload_items.length)for(var d=wpuf_plupload_items.length-1;d>=0;d--)wpuf_plupload_items[d].refresh();if(wpuf_map_items.length)for(var d=wpuf_map_items.length-1;d>=0;d--)google.maps.event.trigger(wpuf_map_items[d].map,"resize"),wpuf_map_items[d].map.setCenter(wpuf_map_items[d].center)}),this.ajaxCategory(),a(':submit[name="wpuf_cancel_subscription"]').click(function(){if(!confirm("Are you sure you want to cancel your current subscription ?"))return!1})},check_pass_strength:function(){var b=a("#pass1").val();if(a("#pass-strength-result").show(),a("#pass-strength-result").removeClass("short bad good strong"),!b)return a("#pass-strength-result").html("&nbsp;"),void a("#pass-strength-result").hide();if(void 0!==wp.passwordStrength)switch(wp.passwordStrength.meter(b,wp.passwordStrength.userInputBlacklist(),b)){case 2:a("#pass-strength-result").addClass("bad").html(pwsL10n.bad);break;case 3:a("#pass-strength-result").addClass("good").html(pwsL10n.good);break;case 4:a("#pass-strength-result").addClass("strong").html(pwsL10n.strong);break;case 5:a("#pass-strength-result").addClass("short").html(pwsL10n.mismatch);break;default:a("#pass-strength-result").addClass("short").html(pwsL10n.short)}},enableMultistep:function(b){var c=this,d=0,e=a(':hidden[name="wpuf_multistep_type"]').val();if(null!=e){if(a("fieldset.wpuf-multistep-fieldset").find(".wpuf-multistep-prev-btn").first().remove(),a("fieldset.wpuf-multistep-fieldset").find(".wpuf-multistep-next-btn").last().remove(),a(".wpuf-form fieldset").removeClass("field-active").first().addClass("field-active"),"progressive"==e&&0!=a(".wpuf-form .wpuf-multistep-fieldset").length){a("fieldset.wpuf-multistep-fieldset legend").first();a(".wpuf-multistep-progressbar").html('<div class="wpuf-progress-percentage"></div>');var f=a(".wpuf-multistep-progressbar"),g=a(".wpuf-progress-percentage");a(".wpuf-multistep-progressbar").progressbar({change:function(){g.text(f.progressbar("value")+"%")}}),a(".wpuf-multistep-fieldset legend").hide()}else a(".wpuf-form").each(function(){var b=a(this),c=a(".wpuf-multistep-progressbar",b),d="";c.addClass("wizard-steps"),d+='<ul class="wpuf-step-wizard">',a(".wpuf-multistep-fieldset",this).each(function(){d+="<li>"+a.trim(a("legend",this).text())+"</li>",a("legend",this).hide()}),d+="</ul>",c.append(d),a(".wpuf-step-wizard li",c).first().addClass("active-step"),a(".wpuf-step-wizard",c).listautowidth()});this.change_fieldset(d,e),a("fieldset .wpuf-multistep-prev-btn, fieldset .wpuf-multistep-next-btn").click(function(f){if(a(this).hasClass("wpuf-multistep-next-btn")){0!=c.formStepCheck("",a(this).closest("fieldset"))&&b.change_fieldset(++d,e)}else a(this).hasClass("wpuf-multistep-prev-btn")&&b.change_fieldset(--d,e);return!1})}},change_fieldset:function(b,c){var d=a("fieldset.wpuf-multistep-fieldset").eq(b);a("fieldset.wpuf-multistep-fieldset").removeClass("field-active").eq(b).addClass("field-active"),a(".wpuf-step-wizard li").each(function(){a(this).index()<=b?"step_by_step"==c?a(this).addClass("passed-wpuf-ms-bar"):a(".wpuf-ps-bar",this).addClass("passed-wpuf-ms-bar"):"step_by_step"==c?a(this).removeClass("passed-wpuf-ms-bar"):a(".wpuf-ps-bar",this).removeClass("passed-wpuf-ms-bar")}),a(".wpuf-step-wizard li").removeClass("wpuf-ms-bar-active active-step completed-step"),a(".passed-wpuf-ms-bar").addClass("completed-step").last().addClass("wpuf-ms-bar-active"),a(".wpuf-ms-bar-active").addClass("active-step");var e=a("fieldset.wpuf-multistep-fieldset").eq(b).find("legend").text();if(e=a.trim(e),"progressive"==c&&0!=a(".wpuf-form .wpuf-multistep-fieldset").length){var f=100*(b+1)/a("fieldset.wpuf-multistep-fieldset").length,f=Number(f.toFixed(2));a(".wpuf-multistep-progressbar").progressbar({value:f}),a(".wpuf-progress-percentage").text(e+" ("+f+"%)")}a(".wpuf-form").trigger("step-change-fieldset",[b,d])},ajaxCategory:function(){var b=".category-wrap";a(b).on("change",".cat-ajax",function(){currentLevel=parseInt(a(this).parent().attr("level")),WP_User_Frontend.getChildCats(a(this),"lvl",currentLevel+1,b,"category")})},getChildCats:function(b,c,d,e,f){cat=a(b).val(),results_div=c+d,f=void 0!==f?f:"category",field_attr=a(b).siblings("span").data("taxonomy"),a.ajax({type:"post",url:wpuf_frontend.ajaxurl,data:{action:"wpuf_get_child_cat",catID:cat,nonce:wpuf_frontend.nonce,field_attr:field_attr},beforeSend:function(){a(b).parent().parent().next(".loading").addClass("wpuf-loading")},complete:function(){a(b).parent().parent().next(".loading").removeClass("wpuf-loading")},success:function(e){a(b).parent().nextAll().each(function(){a(this).remove()}),""!=e&&(a(b).parent().addClass("hasChild").parent().append('<div id="'+c+d+'" level="'+d+'"></div>'),b.parent().parent().find("#"+results_div).html(e).slideDown("fast"))}})},cloneField:function(b){b.preventDefault();var c=a(this).closest("tr"),d=c.clone();d.find("input").val(""),d.find(":checked").attr("checked",""),c.after(d)},removeField:function(){var b=a(this).closest("tr");b.siblings().andSelf().length>1&&b.remove()},adminPostSubmit:function(b){b.preventDefault();var c=a(this);if(WP_User_Frontend.validateForm(c))return!0},draftPost:function(b){b.preventDefault();var c=a(this),d=a(this).closest("form"),e=d.serialize()+"&action=wpuf_draft_post",f=d.find('input[type="hidden"][name="post_id"]').val(),g=[];a(".wpuf-rich-validation").each(function(b,c){var c=a(c),d=c.data("id"),e=c.data("name"),f=a.trim(tinyMCE.get(d).getContent());g.push(e+"="+encodeURIComponent(f))}),e=e+"&"+g.join("&"),c.after(' <span class="wpuf-loading"></span>'),a.post(wpuf_frontend.ajaxurl,e,function(b){if(void 0===f){var e='<input type="hidden" name="post_id" value="'+b.post_id+'">';e+='<input type="hidden" name="post_date" value="'+b.date+'">',e+='<input type="hidden" name="post_author" value="'+b.post_author+'">',e+='<input type="hidden" name="comment_status" value="'+b.comment_status+'">',d.append(e)}c.next("span.wpuf-loading").remove(),c.after('<span class="wpuf-draft-saved">&nbsp; Post Saved</span>'),a(".wpuf-draft-saved").delay(2500).fadeOut("fast",function(){a(this).remove()})})},account_update_profile:function(b){b.preventDefault();var c=a(this).closest("form");a.post(wpuf_frontend.ajaxurl,c.serialize(),function(a){a.success?(c.find(".wpuf-error").hide(),c.find(".wpuf-success").show()):(c.find(".wpuf-success").hide(),c.find(".wpuf-error").show(),c.find(".wpuf-error").text(a.data))})},formStepCheck:function(a,b){var c=b;c.find("input[type=submit]");return form_data=WP_User_Frontend.validateForm(c),0==form_data&&WP_User_Frontend.addErrorNotice(self,"bottom"),form_data},formSubmit:function(c){c.preventDefault();var d=a(this),e=d.find("input[type=submit]");form_data=WP_User_Frontend.validateForm(d),form_data&&(d.find("li.wpuf-submit").append('<span class="wpuf-loading"></span>'),e.attr("disabled","disabled").addClass("button-primary-disabled"),a.post(wpuf_frontend.ajaxurl,form_data,function(c){if(c.success)a("body").trigger("wpuf:postform:success",c),1==c.show_message?(d.before('<div class="wpuf-success">'+c.message+"</div>"),d.slideUp("fast",function(){d.remove()}),a("html, body").animate({scrollTop:a(".wpuf-success").offset().top-100},"fast")):b.location=c.redirect_to;else{if(void 0!==c.type&&"login"===c.type)return void(confirm(c.error)?b.location=c.redirect_to:(e.removeAttr("disabled"),e.removeClass("button-primary-disabled"),d.find("span.wpuf-loading").remove()));d.find(".g-recaptcha").length>0&&grecaptcha.reset(),alert(c.error),e.removeAttr("disabled")}e.removeClass("button-primary-disabled"),d.find("span.wpuf-loading").remove()}))},validateForm:function(b){var c=!1;if(error_type="",WP_User_Frontend.removeErrors(b),WP_User_Frontend.removeErrorNotice(b),b.find('[data-required="yes"]:visible').each(function(b,d){var e=a(d).data("type");switch(j="",e){case"rich":var f=a(d).data("id");""===(j=a.trim(tinyMCE.get(f).getContent()))&&(c=!0,WP_User_Frontend.markError(d));break;case"textarea":case"text":""===(j=a.trim(a(d).val()))&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"password":case"confirm_password":var g=a(d).data("repeat");if(j=a.trim(a(d).val()),""===j&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type)),g){var h=a('[data-type="confirm_password"]').eq(0);h.val()!=j&&(c=!0,error_type="mismatch",WP_User_Frontend.markError(h,error_type))}break;case"select":(j=a(d).val())&&"-1"!==j||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"multiselect":null!==(j=a(d).val())&&0!==j.length||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"tax-checkbox":var i=a(d).children().find("input:checked").length;i||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"radio":var i=a(d).find("input:checked").length;i||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"file":var i=a(d).find("ul").children().length;i||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"email":var j=a(d).val();""!==j?WP_User_Frontend.isValidEmail(j)||(c=!0,error_type="validation",WP_User_Frontend.markError(d,error_type)):""===j&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"url":var j=a(d).val();""!==j&&(WP_User_Frontend.isValidURL(j)||(c=!0,error_type="validation",WP_User_Frontend.markError(d,error_type)))}}),c)return WP_User_Frontend.addErrorNotice(b,"end"),!1;var d=b.serialize(),e=[];return a(".wpuf-rich-validation",b).each(function(b,c){var c=a(c),d=c.data("id"),f=c.data("name"),g=a.trim(tinyMCE.get(d).getContent());e.push(f+"="+encodeURIComponent(g))}),d=d+"&"+e.join("&")},addErrorNotice:function(b,c){"bottom"==c?a(".wpuf-multistep-fieldset:visible").append('<div class="wpuf-errors">'+wpuf_frontend.error_message+"</div>"):a(b).find("li.wpuf-submit").append('<div class="wpuf-errors">'+wpuf_frontend.error_message+"</div>")},removeErrorNotice:function(b){a(b).find(".wpuf-errors").remove()},markError:function(b,c){var d="";if(a(b).closest("li").addClass("has-error"),c){switch(d=a(b).closest("li").data("label"),c){case"required":d=d+" "+error_str_obj[c];break;case"mismatch":d=d+" "+error_str_obj[c];break;case"validation":d=d+" "+error_str_obj[c]}a(b).siblings(".wpuf-error-msg").remove(),a(b).after('<div class="wpuf-error-msg">'+d+"</div>")}a(b).focus()},removeErrors:function(b){a(b).find(".has-error").removeClass("has-error"),a(".wpuf-error-msg").remove()},isValidEmail:function(a){return new RegExp(/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i).test(a)},isValidURL:function(a){return new RegExp("^(http://www.|https://www.|ftp://www.|www.|http://|https://){1}([0-9A-Za-z]+.)").test(a)},insertImage:function(b,c){if(a("#"+b).length){var d=new plupload.Uploader({runtimes:"html5,html4",browse_button:b,container:"wpuf-insert-image-container",multipart:!0,multipart_params:{action:"wpuf_insert_image",form_id:a("#"+b).data("form_id")},multiple_queues:!1,multi_selection:!1,urlstream_upload:!0,file_data_name:"wpuf_file",max_file_size:"2mb",url:wpuf_frontend_upload.plupload.url,flash_swf_url:wpuf_frontend_upload.flash_swf_url,filters:[{title:"Allowed Files",extensions:"jpg,jpeg,gif,png,bmp"}]});d.bind("Init",function(a,b){}),d.bind("FilesAdded",function(b,c){var d=a("#wpuf-insert-image-container");a.each(c,function(a,b){d.append('<div class="upload-item" id="'+b.id+'"><div class="progress progress-striped active"><div class="bar"></div></div></div>')}),b.refresh(),b.start()}),d.bind("QueueChanged",function(a){d.start()}),d.bind("UploadProgress",function(b,c){var d=a("#"+c.id);a(".bar",d).css({width:c.percent+"%"}),a(".percent",d).html(c.percent+"%")}),d.bind("Error",function(a,b){alert("Error #"+b.code+": "+b.message)}),d.bind("FileUploaded",function(b,d,e){if(a("#"+d.id).remove(),"error"!==e.response){if("undefined"!=typeof tinyMCE)if("function"!=typeof tinyMCE.execInstanceCommand){var f=tinyMCE.get("post_content_"+c);null!==f&&f.insertContent(e.response)}else tinyMCE.execInstanceCommand("post_content_"+c,"mceInsertContent",!1,e.response);var g=a("#post_content_"+c);g.val(g.val()+e.response)}else alert("Something went wrong")}),d.init()}},deleteAvatar:function(b){b.preventDefault(),confirm(a(this).data("confirm"))&&a.post(wpuf_frontend.ajaxurl,{action:"wpuf_delete_avatar",_wpnonce:wpuf_frontend.nonce},function(){a(b.target).parent().remove()})},editorLimit:{bind:function(b,c,d){"no"===d?(a("textarea#"+c).keydown(function(a){WP_User_Frontend.editorLimit.textLimit.call(this,a,b)}),a("input#"+c).keydown(function(a){WP_User_Frontend.editorLimit.textLimit.call(this,a,b)}),a("textarea#"+c).on("paste",function(c){var d=a(this);setTimeout(function(){WP_User_Frontend.editorLimit.textLimit.call(d,c,b)},100)}),a("input#"+c).on("paste",function(c){var d=a(this);setTimeout(function(){WP_User_Frontend.editorLimit.textLimit.call(d,c,b)},100)})):setTimeout(function(){tinyMCE.get(c).onKeyDown.add(function(a,c){WP_User_Frontend.editorLimit.tinymce.onKeyDown(a,c,b)}),tinyMCE.get(c).onPaste.add(function(a,c){setTimeout(function(){WP_User_Frontend.editorLimit.tinymce.onPaste(a,c,b)},100)})},1e3)},tinymce:{getStats:function(a){var b=a.getBody(),c=tinymce.trim(b.innerText||b.textContent);return{chars:c.length,words:c.split(/[\w\u2019\'-]+/).length}},onKeyDown:function(b,c,d){var e=WP_User_Frontend.editorLimit.tinymce.getStats(b).words-1;d&&a(".mce-path-item.mce-last",b.container).html("Word Limit : "+e+"/"+d),d&&e>d&&(WP_User_Frontend.editorLimit.blockTyping(c),jQuery(".mce-path-item.mce-last",b.container).html(wpuf_frontend.word_limit))},onPaste:function(a,b,c){var d=a.getContent().split(" ").slice(0,c).join(" ");a.setContent(d),WP_User_Frontend.editorLimit.make_media_embed_code(d,a)}},textLimit:function(b,c){var d=a(this),e=d.val().split(" ");c&&e.length>c?(d.closest(".wpuf-fields").find("span.wpuf-wordlimit-message").html(wpuf_frontend.word_limit),WP_User_Frontend.editorLimit.blockTyping(b)):d.closest(".wpuf-fields").find("span.wpuf-wordlimit-message").html(""),"paste"===b.type&&d.val(e.slice(0,c).join(" "))},blockTyping:function(b){a.inArray(b.keyCode,[46,8,9,27,13,110,190,189])!==-1||65==b.keyCode&&b.ctrlKey===!0||b.keyCode>=35&&b.keyCode<=40||(b.preventDefault(),b.stopPropagation())},make_media_embed_code:function(b,c){a.post(ajaxurl,{action:"make_media_embed_code",content:b},function(a){c.setContent(c.getContent()+c.setContent(a))})}}},a(function(){if(WP_User_Frontend.init(),a("ul.wpuf-payment-gateways").on("click","input[type=radio]",function(b){a(".wpuf-payment-instruction").slideUp(250),a(this).parents("li").find(".wpuf-payment-instruction").slideDown(250)}),a("ul.wpuf-payment-gateways li").find("input[type=radio]").is(":checked")){a("ul.wpuf-payment-gateways li").find("input[type=radio]:checked").parents("li").find(".wpuf-payment-instruction").slideDown(250)}else a("ul.wpuf-payment-gateways li").first().find("input[type=radio]").click()})}(jQuery,window);
1
+ !function(a,b){a.fn.listautowidth=function(){return this.each(function(){var b=a(this).width(),c=b/a(this).children("li").length;a(this).children("li").each(function(){var b=a(this).outerWidth(!0)-a(this).width();a(this).width(c-b)})})},b.WP_User_Frontend={init:function(){this.enableMultistep(this),a(".wpuf-form").on("click","img.wpuf-clone-field",this.cloneField),a(".wpuf-form").on("click","img.wpuf-remove-field",this.removeField),a(".wpuf-form").on("click","a.wpuf-delete-avatar",this.deleteAvatar),a(".wpuf-form").on("click","a#wpuf-post-draft",this.draftPost),a(".wpuf-form").on("click","button#wpuf-account-update-profile",this.account_update_profile),a(".wpuf-form-add").on("submit",this.formSubmit),a("form#post").on("submit",this.adminPostSubmit),a(".wpuf-form").on("step-change-fieldset",function(a,b,c){if(wpuf_plupload_items.length)for(var d=wpuf_plupload_items.length-1;d>=0;d--)wpuf_plupload_items[d].refresh();if(wpuf_map_items.length)for(var d=wpuf_map_items.length-1;d>=0;d--)google.maps.event.trigger(wpuf_map_items[d].map,"resize"),wpuf_map_items[d].map.setCenter(wpuf_map_items[d].center)}),this.ajaxCategory(),a(':submit[name="wpuf_cancel_subscription"]').click(function(){if(!confirm("Are you sure you want to cancel your current subscription ?"))return!1})},check_pass_strength:function(){var b=a("#pass1").val();if(a("#pass-strength-result").show(),a("#pass-strength-result").removeClass("short bad good strong"),!b)return a("#pass-strength-result").html("&nbsp;"),void a("#pass-strength-result").hide();if(void 0!==wp.passwordStrength)switch(wp.passwordStrength.meter(b,wp.passwordStrength.userInputBlacklist(),b)){case 2:a("#pass-strength-result").addClass("bad").html(pwsL10n.bad);break;case 3:a("#pass-strength-result").addClass("good").html(pwsL10n.good);break;case 4:a("#pass-strength-result").addClass("strong").html(pwsL10n.strong);break;case 5:a("#pass-strength-result").addClass("short").html(pwsL10n.mismatch);break;default:a("#pass-strength-result").addClass("short").html(pwsL10n.short)}},enableMultistep:function(b){var c=this,d=0,e=a(':hidden[name="wpuf_multistep_type"]').val();if(null!=e){if(a("fieldset.wpuf-multistep-fieldset").find(".wpuf-multistep-prev-btn").first().remove(),a("fieldset.wpuf-multistep-fieldset").find(".wpuf-multistep-next-btn").last().remove(),a(".wpuf-form fieldset").removeClass("field-active").first().addClass("field-active"),"progressive"==e&&0!=a(".wpuf-form .wpuf-multistep-fieldset").length){a("fieldset.wpuf-multistep-fieldset legend").first();a(".wpuf-multistep-progressbar").html('<div class="wpuf-progress-percentage"></div>');var f=a(".wpuf-multistep-progressbar"),g=a(".wpuf-progress-percentage");a(".wpuf-multistep-progressbar").progressbar({change:function(){g.text(f.progressbar("value")+"%")}}),a(".wpuf-multistep-fieldset legend").hide()}else a(".wpuf-form").each(function(){var b=a(this),c=a(".wpuf-multistep-progressbar",b),d="";c.addClass("wizard-steps"),d+='<ul class="wpuf-step-wizard">',a(".wpuf-multistep-fieldset",this).each(function(){d+="<li>"+a.trim(a("legend",this).text())+"</li>",a("legend",this).hide()}),d+="</ul>",c.append(d),a(".wpuf-step-wizard li",c).first().addClass("active-step"),a(".wpuf-step-wizard",c).listautowidth()});this.change_fieldset(d,e),a("fieldset .wpuf-multistep-prev-btn, fieldset .wpuf-multistep-next-btn").click(function(f){if(a(this).hasClass("wpuf-multistep-next-btn")){0!=c.formStepCheck("",a(this).closest("fieldset"))&&b.change_fieldset(++d,e)}else a(this).hasClass("wpuf-multistep-prev-btn")&&b.change_fieldset(--d,e);return!1})}},change_fieldset:function(b,c){var d=a("fieldset.wpuf-multistep-fieldset").eq(b);a("fieldset.wpuf-multistep-fieldset").removeClass("field-active").eq(b).addClass("field-active"),a(".wpuf-step-wizard li").each(function(){a(this).index()<=b?"step_by_step"==c?a(this).addClass("passed-wpuf-ms-bar"):a(".wpuf-ps-bar",this).addClass("passed-wpuf-ms-bar"):"step_by_step"==c?a(this).removeClass("passed-wpuf-ms-bar"):a(".wpuf-ps-bar",this).removeClass("passed-wpuf-ms-bar")}),a(".wpuf-step-wizard li").removeClass("wpuf-ms-bar-active active-step completed-step"),a(".passed-wpuf-ms-bar").addClass("completed-step").last().addClass("wpuf-ms-bar-active"),a(".wpuf-ms-bar-active").addClass("active-step");var e=a("fieldset.wpuf-multistep-fieldset").eq(b).find("legend").text();if(e=a.trim(e),"progressive"==c&&0!=a(".wpuf-form .wpuf-multistep-fieldset").length){var f=100*(b+1)/a("fieldset.wpuf-multistep-fieldset").length,f=Number(f.toFixed(2));a(".wpuf-multistep-progressbar").progressbar({value:f}),a(".wpuf-progress-percentage").text(e+" ("+f+"%)")}a(".wpuf-form").trigger("step-change-fieldset",[b,d])},ajaxCategory:function(){var b=".category-wrap";a(b).on("change",".cat-ajax",function(){currentLevel=parseInt(a(this).parent().attr("level")),WP_User_Frontend.getChildCats(a(this),"lvl",currentLevel+1,b,"category")})},getChildCats:function(b,c,d,e,f){cat=a(b).val(),results_div=c+d,f=void 0!==f?f:"category",field_attr=a(b).siblings("span").data("taxonomy"),a.ajax({type:"post",url:wpuf_frontend.ajaxurl,data:{action:"wpuf_get_child_cat",catID:cat,nonce:wpuf_frontend.nonce,field_attr:field_attr},beforeSend:function(){a(b).parent().parent().next(".loading").addClass("wpuf-loading")},complete:function(){a(b).parent().parent().next(".loading").removeClass("wpuf-loading")},success:function(e){a(b).parent().nextAll().each(function(){a(this).remove()}),""!=e&&(a(b).parent().addClass("hasChild").parent().append('<div id="'+c+d+'" level="'+d+'"></div>'),b.parent().parent().find("#"+results_div).html(e).slideDown("fast"))}})},cloneField:function(b){b.preventDefault();var c=a(this).closest("tr"),d=c.clone();d.find("input").val(""),d.find(":checked").attr("checked",""),c.after(d)},removeField:function(){var b=a(this).closest("tr");b.siblings().andSelf().length>1&&b.remove()},adminPostSubmit:function(b){b.preventDefault();var c=a(this);if(WP_User_Frontend.validateForm(c))return!0},draftPost:function(b){b.preventDefault();var c=a(this),d=a(this).closest("form"),e=d.serialize()+"&action=wpuf_draft_post",f=d.find('input[type="hidden"][name="post_id"]').val(),g=[];a(".wpuf-rich-validation").each(function(b,c){var c=a(c),d=c.data("id"),e=c.data("name"),f=a.trim(tinyMCE.get(d).getContent());g.push(e+"="+encodeURIComponent(f))}),e=e+"&"+g.join("&"),c.after(' <span class="wpuf-loading"></span>'),a.post(wpuf_frontend.ajaxurl,e,function(b){if(void 0===f){var e='<input type="hidden" name="post_id" value="'+b.post_id+'">';e+='<input type="hidden" name="post_date" value="'+b.date+'">',e+='<input type="hidden" name="post_author" value="'+b.post_author+'">',e+='<input type="hidden" name="comment_status" value="'+b.comment_status+'">',d.append(e)}c.next("span.wpuf-loading").remove(),c.after('<span class="wpuf-draft-saved">&nbsp; Post Saved</span>'),a(".wpuf-draft-saved").delay(2500).fadeOut("fast",function(){a(this).remove()})})},account_update_profile:function(b){b.preventDefault();var c=a(this).closest("form");a.post(wpuf_frontend.ajaxurl,c.serialize(),function(a){a.success?(c.find(".wpuf-error").hide(),c.find(".wpuf-success").show()):(c.find(".wpuf-success").hide(),c.find(".wpuf-error").show(),c.find(".wpuf-error").text(a.data))})},formStepCheck:function(a,b){var c=b;c.find("input[type=submit]");return form_data=WP_User_Frontend.validateForm(c),0==form_data&&WP_User_Frontend.addErrorNotice(self,"bottom"),form_data},formSubmit:function(c){c.preventDefault();var d=a(this),e=d.find("input[type=submit]");form_data=WP_User_Frontend.validateForm(d),form_data&&(d.find("li.wpuf-submit").append('<span class="wpuf-loading"></span>'),e.attr("disabled","disabled").addClass("button-primary-disabled"),a.post(wpuf_frontend.ajaxurl,form_data,function(c){if(c.success)a("body").trigger("wpuf:postform:success",c),1==c.show_message?(d.before('<div class="wpuf-success">'+c.message+"</div>"),d.slideUp("fast",function(){d.remove()}),a("html, body").animate({scrollTop:a(".wpuf-success").offset().top-100},"fast")):b.location=c.redirect_to;else{if(void 0!==c.type&&"login"===c.type)return void(confirm(c.error)?b.location=c.redirect_to:(e.removeAttr("disabled"),e.removeClass("button-primary-disabled"),d.find("span.wpuf-loading").remove()));d.find(".g-recaptcha").length>0&&grecaptcha.reset(),alert(c.error),e.removeAttr("disabled")}e.removeClass("button-primary-disabled"),d.find("span.wpuf-loading").remove()}))},validateForm:function(b){var c=!1;if(error_type="",WP_User_Frontend.removeErrors(b),WP_User_Frontend.removeErrorNotice(b),b.find('[data-required="yes"]:visible').each(function(b,d){var e=a(d).data("type");switch(j="",e){case"rich":var f=a(d).data("id");""===(j=a.trim(tinyMCE.get(f).getContent()))&&(c=!0,WP_User_Frontend.markError(d));break;case"textarea":case"text":""===(j=a.trim(a(d).val()))&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"password":case"confirm_password":var g=a(d).data("repeat");if(j=a.trim(a(d).val()),""===j&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type)),g){var h=a('[data-type="confirm_password"]').eq(0);h.val()!=j&&(c=!0,error_type="mismatch",WP_User_Frontend.markError(h,error_type))}break;case"select":(j=a(d).val())&&"-1"!==j||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"multiselect":null!==(j=a(d).val())&&0!==j.length||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"tax-checkbox":var i=a(d).children().find("input:checked").length;i||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"radio":var i=a(d).find("input:checked").length;i||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"file":var i=a(d).find("ul").children().length;i||(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"email":var j=a(d).val();""!==j?WP_User_Frontend.isValidEmail(j)||(c=!0,error_type="validation",WP_User_Frontend.markError(d,error_type)):""===j&&(c=!0,error_type="required",WP_User_Frontend.markError(d,error_type));break;case"url":var j=a(d).val();""!==j&&(WP_User_Frontend.isValidURL(j)||(c=!0,error_type="validation",WP_User_Frontend.markError(d,error_type)))}}),c)return WP_User_Frontend.addErrorNotice(b,"end"),!1;var d=b.serialize(),e=[];return a(".wpuf-rich-validation",b).each(function(b,c){var c=a(c),d=c.data("id"),f=c.data("name"),g=a.trim(tinyMCE.get(d).getContent());e.push(f+"="+encodeURIComponent(g))}),d=d+"&"+e.join("&")},addErrorNotice:function(b,c){"bottom"==c?a(".wpuf-multistep-fieldset:visible").append('<div class="wpuf-errors">'+wpuf_frontend.error_message+"</div>"):a(b).find("li.wpuf-submit").append('<div class="wpuf-errors">'+wpuf_frontend.error_message+"</div>")},removeErrorNotice:function(b){a(b).find(".wpuf-errors").remove()},markError:function(b,c){var d="";if(a(b).closest("li").addClass("has-error"),c){switch(d=a(b).closest("li").data("label"),c){case"required":d=d+" "+error_str_obj[c];break;case"mismatch":d=d+" "+error_str_obj[c];break;case"validation":d=d+" "+error_str_obj[c]}a(b).siblings(".wpuf-error-msg").remove(),a(b).after('<div class="wpuf-error-msg">'+d+"</div>")}a(b).focus()},removeErrors:function(b){a(b).find(".has-error").removeClass("has-error"),a(".wpuf-error-msg").remove()},isValidEmail:function(a){return new RegExp(/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i).test(a)},isValidURL:function(a){return new RegExp("^(http://www.|https://www.|ftp://www.|www.|http://|https://){1}([0-9A-Za-z]+.)").test(a)},insertImage:function(b,c){if(a("#"+b).length){var d=new plupload.Uploader({runtimes:"html5,html4",browse_button:b,container:"wpuf-insert-image-container",multipart:!0,multipart_params:{action:"wpuf_insert_image",form_id:a("#"+b).data("form_id")},multiple_queues:!1,multi_selection:!1,urlstream_upload:!0,file_data_name:"wpuf_file",max_file_size:"2mb",url:wpuf_frontend_upload.plupload.url,flash_swf_url:wpuf_frontend_upload.flash_swf_url,filters:[{title:"Allowed Files",extensions:"jpg,jpeg,gif,png,bmp"}]});d.bind("Init",function(a,b){}),d.bind("FilesAdded",function(b,c){var d=a("#wpuf-insert-image-container");a.each(c,function(a,b){d.append('<div class="upload-item" id="'+b.id+'"><div class="progress progress-striped active"><div class="bar"></div></div></div>')}),b.refresh(),b.start()}),d.bind("QueueChanged",function(a){d.start()}),d.bind("UploadProgress",function(b,c){var d=a("#"+c.id);a(".bar",d).css({width:c.percent+"%"}),a(".percent",d).html(c.percent+"%")}),d.bind("Error",function(a,b){alert("Error #"+b.code+": "+b.message)}),d.bind("FileUploaded",function(b,d,e){if(a("#"+d.id).remove(),"error"!==e.response){if("undefined"!=typeof tinyMCE)if("function"!=typeof tinyMCE.execInstanceCommand){var f=tinyMCE.get("post_content_"+c);null!==f&&f.insertContent(e.response)}else tinyMCE.execInstanceCommand("post_content_"+c,"mceInsertContent",!1,e.response);var g=a("#post_content_"+c);g.val(g.val()+e.response)}else alert("Something went wrong")}),d.init()}},deleteAvatar:function(b){b.preventDefault(),confirm(a(this).data("confirm"))&&a.post(wpuf_frontend.ajaxurl,{action:"wpuf_delete_avatar",_wpnonce:wpuf_frontend.nonce},function(){a(b.target).parent().remove()})},editorLimit:{bind:function(b,c,d){"no"===d?(a("textarea#"+c).keydown(function(a){WP_User_Frontend.editorLimit.textLimit.call(this,a,b)}),a("input#"+c).keydown(function(a){WP_User_Frontend.editorLimit.textLimit.call(this,a,b)}),a("textarea#"+c).on("paste",function(c){var d=a(this);setTimeout(function(){WP_User_Frontend.editorLimit.textLimit.call(d,c,b)},100)}),a("input#"+c).on("paste",function(c){var d=a(this);setTimeout(function(){WP_User_Frontend.editorLimit.textLimit.call(d,c,b)},100)})):setTimeout(function(){tinyMCE.get(c).onKeyDown.add(function(a,c){WP_User_Frontend.editorLimit.tinymce.onKeyDown(a,c,b)}),tinyMCE.get(c).onPaste.add(function(a,c){setTimeout(function(){WP_User_Frontend.editorLimit.tinymce.onPaste(a,c,b)},100)})},1e3)},tinymce:{getStats:function(a){var b=a.getBody(),c=tinymce.trim(b.innerText||b.textContent);return{chars:c.length,words:c.split(/[\w\u2019\'-]+/).length}},onKeyDown:function(b,c,d){var e=WP_User_Frontend.editorLimit.tinymce.getStats(b).words-1;d&&a(".mce-path-item.mce-last",b.container).html("Word Limit : "+e+"/"+d),d&&e>d&&(WP_User_Frontend.editorLimit.blockTyping(c),jQuery(".mce-path-item.mce-last",b.container).html(wpuf_frontend.word_limit))},onPaste:function(a,b,c){var d=a.getContent().split(" ").slice(0,c).join(" ");a.setContent(d),WP_User_Frontend.editorLimit.make_media_embed_code(d,a)}},textLimit:function(b,c){var d=a(this),e=d.val().split(" ");c&&e.length>c?(d.closest(".wpuf-fields").find("span.wpuf-wordlimit-message").html(wpuf_frontend.word_limit),WP_User_Frontend.editorLimit.blockTyping(b)):d.closest(".wpuf-fields").find("span.wpuf-wordlimit-message").html(""),"paste"===b.type&&d.val(e.slice(0,c).join(" "))},blockTyping:function(b){a.inArray(b.keyCode,[46,8,9,27,13,110,190,189])!==-1||65==b.keyCode&&b.ctrlKey===!0||b.keyCode>=35&&b.keyCode<=40||(b.preventDefault(),b.stopPropagation())},make_media_embed_code:function(b,c){a.post(ajaxurl,{action:"make_media_embed_code",content:b},function(a){c.setContent(c.getContent()+c.setContent(a))})}}},a(function(){if(WP_User_Frontend.init(),a("ul.wpuf-payment-gateways").on("click","input[type=radio]",function(b){a(".wpuf-payment-instruction").slideUp(250),a(this).parents("li").find(".wpuf-payment-instruction").slideDown(250)}),a("ul.wpuf-payment-gateways li").find("input[type=radio]").is(":checked")){a("ul.wpuf-payment-gateways li").find("input[type=radio]:checked").parents("li").find(".wpuf-payment-instruction").slideDown(250)}else a("ul.wpuf-payment-gateways li").first().find("input[type=radio]").click()}),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)})})}(jQuery,window);
assets/js/wpuf-form-builder-components.js CHANGED
@@ -17,7 +17,7 @@ Vue.component('builder-stage', {
17
 
18
  hidden_fields: function () {
19
  return this.$store.state.form_fields.filter(function (item) {
20
- return 'hidden' === item.input_type;
21
  });
22
  },
23
 
@@ -784,79 +784,6 @@ Vue.component('form-multiple_select', {
784
  ]
785
  });
786
 
787
- Vue.component('wpuf-cf-form-notification', {
788
- template: '#tmpl-wpuf-form-notification',
789
- data: function() {
790
- return {
791
- editing: false,
792
- editingIndex: 0,
793
- };
794
- },
795
-
796
- computed: {
797
-
798
- notifications: function() {
799
- return this.$store.state.notifications;
800
- },
801
-
802
- hasNotifications: function() {
803
- return Object.keys( this.$store.state.notifications ).length;
804
- }
805
- },
806
-
807
- methods: {
808
- addNew: function() {
809
- this.$store.commit('addNotification', wpuf_form_builder.defaultNotification);
810
- },
811
-
812
- editItem: function(index) {
813
- this.editing = true;
814
- this.editingIndex = index;
815
- },
816
-
817
- editDone: function() {
818
- this.editing = false;
819
-
820
- this.$store.commit('updateNotification', {
821
- index: this.editingIndex,
822
- value: this.notifications[this.editingIndex]
823
- });
824
-
825
- jQuery('.advanced-field-wrap').slideUp('fast');
826
- },
827
-
828
- deleteItem: function(index) {
829
- if ( confirm( 'Are you sure' ) ) {
830
- this.editing = false;
831
- this.$store.commit( 'deleteNotification', index);
832
- }
833
- },
834
-
835
- toggelNotification: function(index) {
836
- this.$store.commit('updateNotificationProperty', {
837
- index: index,
838
- property: 'active',
839
- value: !this.notifications[index].active
840
- });
841
- },
842
-
843
- duplicate: function(index) {
844
- this.$store.commit('cloneNotification', index);
845
- },
846
-
847
- toggleAdvanced: function() {
848
- jQuery('.advanced-field-wrap').slideToggle('fast');
849
- },
850
-
851
- insertValue: function(type, field, property) {
852
- var notification = this.notifications[this.editingIndex],
853
- value = ( field !== undefined ) ? '{' + type + ':' + field + '}' : '{' + type + '}';
854
-
855
- notification[property] = notification[property] + value;
856
- }
857
- }
858
- });
859
-
860
  /**
861
  * Field Template: Post Content
862
  */
@@ -1153,176 +1080,6 @@ Vue.component('help-text', {
1153
  }
1154
  });
1155
 
1156
- Vue.component('wpuf-integration', {
1157
- template: '#tmpl-wpuf-integration',
1158
-
1159
- computed: {
1160
-
1161
- integrations: function() {
1162
- return wpuf_form_builder.integrations;
1163
- },
1164
-
1165
- hasIntegrations: function() {
1166
- return Object.keys(this.integrations).length;
1167
- },
1168
-
1169
- store: function() {
1170
- return this.$store.state.integrations;
1171
- },
1172
-
1173
- pro_link: function() {
1174
- return wpuf_form_builder.pro_link;
1175
- }
1176
- },
1177
-
1178
- methods: {
1179
-
1180
- getIntegration: function(id) {
1181
- return this.integrations[id];
1182
- },
1183
-
1184
- getIntegrationSettings: function(id) {
1185
- // find settings in store, otherwise take from default integration settings
1186
- return this.store[id] || this.getIntegration(id).settings;
1187
- },
1188
-
1189
- isActive: function(id) {
1190
- if ( !this.isAvailable(id) ) {
1191
- return false;
1192
- }
1193
-
1194
- return this.getIntegrationSettings(id).enabled === true;
1195
- },
1196
-
1197
- isAvailable: function(id) {
1198
- return ( this.integrations[id] && this.integrations[id].pro ) ? false : true;
1199
- },
1200
-
1201
- toggleState: function(id, target) {
1202
- if ( ! this.isAvailable(id) ) {
1203
- this.alert_pro_feature( id );
1204
- return;
1205
- }
1206
-
1207
- // toggle the enabled state
1208
- var settings = this.getIntegrationSettings(id);
1209
-
1210
- settings.enabled = !this.isActive(id);
1211
-
1212
- this.$store.commit('updateIntegration', {
1213
- index: id,
1214
- value: settings
1215
- });
1216
-
1217
- $(target).toggleClass('checked');
1218
- },
1219
-
1220
- alert_pro_feature: function (id) {
1221
- var title = this.getIntegration(id).title;
1222
-
1223
- swal({
1224
- title: '<i class="fa fa-lock"></i> ' + title + ' <br>' + this.i18n.is_a_pro_feature,
1225
- text: this.i18n.pro_feature_msg,
1226
- type: '',
1227
- showCancelButton: true,
1228
- cancelButtonText: this.i18n.close,
1229
- confirmButtonColor: '#46b450',
1230
- confirmButtonText: this.i18n.upgrade_to_pro
1231
- }).then(function (is_confirm) {
1232
- if (is_confirm) {
1233
- window.open(wpuf_form_builder.pro_link, '_blank');
1234
- }
1235
-
1236
- }, function() {});
1237
- },
1238
-
1239
- showHide: function(target) {
1240
- $(target).closest('.wpuf-integration').toggleClass('collapsed');
1241
- },
1242
- }
1243
- });
1244
-
1245
- Vue.component('wpuf-merge-tags', {
1246
- template: '#tmpl-wpuf-merge-tags',
1247
- props: {
1248
- field: String,
1249
- filter: {
1250
- type: String,
1251
- default: null
1252
- }
1253
- },
1254
-
1255
- data: function() {
1256
- return {
1257
- type: null,
1258
- };
1259
- },
1260
-
1261
- mounted: function() {
1262
-
1263
- // hide if clicked outside
1264
- $('body').on('click', function(event) {
1265
- if ( !$(event.target).closest('.wpuf-merge-tag-wrap').length) {
1266
- $(".wpuf-merge-tags").hide();
1267
- }
1268
- });
1269
- },
1270
-
1271
- computed: {
1272
- form_fields: function () {
1273
- var template = this.filter,
1274
- fields = this.$store.state.form_fields;
1275
-
1276
- if (template !== null) {
1277
- return fields.filter(function(item) {
1278
- return item.template === template;
1279
- });
1280
- }
1281
-
1282
- // remove the action/hidden fields
1283
- return fields.filter(function(item) {
1284
- return !_.contains( [ 'action_hook', 'custom_hidden_field'], item.template );
1285
- });
1286
- },
1287
- },
1288
-
1289
- methods: {
1290
- toggleFields: function(event) {
1291
- $(event.target).parent().siblings('.wpuf-merge-tags').toggle('fast');
1292
- },
1293
-
1294
- insertField: function(type, field) {
1295
- this.$emit('insert', type, field, this.field);
1296
- }
1297
- }
1298
- });
1299
- Vue.component('wpuf-modal', {
1300
- template: '#tmpl-wpuf-modal',
1301
- props: {
1302
- show: Boolean,
1303
- onClose: Function
1304
- },
1305
-
1306
- mounted: function () {
1307
- var self = this;
1308
-
1309
- $('body').on( 'keydown', function(e) {
1310
- if (self.show && e.keyCode === 27) {
1311
- self.closeModal();
1312
- }
1313
- });
1314
- },
1315
-
1316
- methods: {
1317
- closeModal: function() {
1318
- if ( typeof this.onClose !== 'undefined' ) {
1319
- this.onClose();
1320
- } else {
1321
- this.$emit('hideModal');
1322
- }
1323
- }
1324
- }
1325
- });
1326
  Vue.component('text-editor', {
1327
  template: '#tmpl-wpuf-text-editor',
1328
 
17
 
18
  hidden_fields: function () {
19
  return this.$store.state.form_fields.filter(function (item) {
20
+ return 'custom_hidden_field' === item.template;
21
  });
22
  },
23
 
784
  ]
785
  });
786
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
787
  /**
788
  * Field Template: Post Content
789
  */
1080
  }
1081
  });
1082
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1083
  Vue.component('text-editor', {
1084
  template: '#tmpl-wpuf-text-editor',
1085
 
class/frontend-dashboard.php CHANGED
@@ -27,13 +27,11 @@ class WPUF_Frontend_Dashboard {
27
  <?php //echo $custom_css = wpuf_get_option( 'custom_css', 'wpuf_general' ); ?>
28
  </style>
29
  <?php
30
-
31
- extract( shortcode_atts( array('post_type' => 'post'), $atts ) );
32
-
33
  ob_start();
34
 
35
  if ( is_user_logged_in() ) {
36
- $this->post_listing( $post_type );
37
  } else {
38
  $message = wpuf_get_option( 'un_auth_msg', 'wpuf_dashboard' );
39
  wpuf_load_template( 'unauthorized.php', array( 'message' => $message ) );
@@ -51,8 +49,9 @@ class WPUF_Frontend_Dashboard {
51
  * @global object $wpdb
52
  * @global object $userdata
53
  */
54
- function post_listing( $post_type ) {
55
  global $post;
 
56
 
57
  $pagenum = isset( $_GET['pagenum'] ) ? intval( $_GET['pagenum'] ) : 1;
58
 
@@ -84,7 +83,12 @@ class WPUF_Frontend_Dashboard {
84
  'dashboard_query' => $dashboard_query,
85
  'post_type_obj' => $post_type_obj,
86
  'post' => $post,
87
- 'pagenum' => $pagenum
 
 
 
 
 
88
  ) );
89
 
90
  wp_reset_postdata();
@@ -131,7 +135,7 @@ class WPUF_Frontend_Dashboard {
131
  $maybe_delete = get_post( $_REQUEST['pid'] );
132
 
133
  if ( ($maybe_delete->post_author == $userdata->ID) || current_user_can( 'delete_others_pages' ) ) {
134
- wp_delete_post( $_REQUEST['pid'] );
135
 
136
  //redirect
137
  $redirect = add_query_arg( array('msg' => 'deleted'), get_permalink() );
27
  <?php //echo $custom_css = wpuf_get_option( 'custom_css', 'wpuf_general' ); ?>
28
  </style>
29
  <?php
30
+ $attributes = shortcode_atts( array( 'form_id'=>'off', 'post_type' => 'post', 'category' =>'off', 'featured_image' => 'default', 'meta' => 'off', 'excerpt' =>'off'), $atts ) ;
 
 
31
  ob_start();
32
 
33
  if ( is_user_logged_in() ) {
34
+ $this->post_listing( $attributes );
35
  } else {
36
  $message = wpuf_get_option( 'un_auth_msg', 'wpuf_dashboard' );
37
  wpuf_load_template( 'unauthorized.php', array( 'message' => $message ) );
49
  * @global object $wpdb
50
  * @global object $userdata
51
  */
52
+ function post_listing( $attributes ) {
53
  global $post;
54
+ extract ( $attributes );
55
 
56
  $pagenum = isset( $_GET['pagenum'] ) ? intval( $_GET['pagenum'] ) : 1;
57
 
83
  'dashboard_query' => $dashboard_query,
84
  'post_type_obj' => $post_type_obj,
85
  'post' => $post,
86
+ 'pagenum' => $pagenum,
87
+ 'category' => $category,
88
+ 'featured_image' => $featured_image,
89
+ 'form_id' => $form_id,
90
+ 'meta' => $meta,
91
+ 'excerpt' => $excerpt
92
  ) );
93
 
94
  wp_reset_postdata();
135
  $maybe_delete = get_post( $_REQUEST['pid'] );
136
 
137
  if ( ($maybe_delete->post_author == $userdata->ID) || current_user_can( 'delete_others_pages' ) ) {
138
+ wp_trash_post( $_REQUEST['pid'] );
139
 
140
  //redirect
141
  $redirect = add_query_arg( array('msg' => 'deleted'), get_permalink() );
class/frontend-form-post.php CHANGED
@@ -20,6 +20,7 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
20
 
21
  // draft
22
  add_action( 'wp_ajax_wpuf_draft_post', array( $this, 'draft_post' ) );
 
23
 
24
  // form preview
25
  add_action( 'wp_ajax_wpuf_form_preview', array( $this, 'preview_form' ) );
@@ -182,6 +183,8 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
182
  $is_update = false;
183
  $post_author = null;
184
  $default_post_author = wpuf_get_option( 'default_post_owner', 'wpuf_general', 1 );
 
 
185
 
186
  // Guest Stuffs: check for guest post
187
  if ( !is_user_logged_in() ) {
@@ -247,9 +250,15 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
247
  $post_author = get_current_user_id();
248
  }
249
 
 
 
 
 
 
 
250
  $postarr = array(
251
  'post_type' => $form_settings['post_type'],
252
- 'post_status' => isset( $form_settings['post_status'] ) ? $form_settings['post_status'] : 'publish',
253
  'post_author' => $post_author,
254
  'post_title' => isset( $_POST['post_title'] ) ? trim( $_POST['post_title'] ) : '',
255
  'post_content' => isset( $_POST['post_content'] ) ? trim( $_POST['post_content'] ) : '',
@@ -296,7 +305,12 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
296
 
297
  if ( $form_settings['edit_post_status'] == '_nochange' ) {
298
  $postarr['post_status'] = get_post_field( 'post_status', $_POST['post_id'] );
299
- } else {
 
 
 
 
 
300
  $postarr['post_status'] = $form_settings['edit_post_status'];
301
  }
302
  } else {
@@ -517,6 +531,7 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
517
  //redirect URL
518
  $show_message = false;
519
  $redirect_to = false;
 
520
 
521
  if ( $is_update ) {
522
  if ( $form_settings['edit_redirect_to'] == 'page' ) {
@@ -533,6 +548,25 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
533
  } else {
534
  $redirect_to = get_permalink( $post_id );
535
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
536
  } else {
537
  if ( $form_settings['redirect_to'] == 'page' ) {
538
  $redirect_to = get_permalink( $form_settings['page_id'] );
@@ -546,17 +580,16 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
546
  }
547
 
548
  // send the response
549
- $response = array(
550
- 'success' => true,
551
- 'redirect_to' => $redirect_to,
552
- 'show_message' => $show_message,
553
- 'message' => $form_settings['message']
554
- );
555
-
556
- if ( $is_update ) {
557
- $response = apply_filters( 'wpuf_edit_post_redirect', $response, $post_id, $form_id, $form_settings );
558
  } else {
559
- $response = apply_filters( 'wpuf_add_post_redirect', $response, $post_id, $form_id, $form_settings );
 
560
  }
561
 
562
  wpuf_clear_buffer();
@@ -588,7 +621,7 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
588
  $form_id = isset( $_POST['form_id'] ) ? intval( $_POST['form_id'] ) : 0;
589
  $form_vars = $this->get_input_fields( $form_id );
590
  $form_settings = wpuf_get_form_settings( $form_id );
591
- $post_content = isset( $_POST[ 'post_content' ] ) ? $_POST[ 'post_content' ] : '';
592
 
593
  list( $post_vars, $taxonomy_vars, $meta_vars ) = $form_vars;
594
 
@@ -851,4 +884,25 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
851
  );
852
  }
853
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
854
  }
20
 
21
  // draft
22
  add_action( 'wp_ajax_wpuf_draft_post', array( $this, 'draft_post' ) );
23
+ add_action( 'init', array( $this, 'publish_guest_post' ) );
24
 
25
  // form preview
26
  add_action( 'wp_ajax_wpuf_form_preview', array( $this, 'preview_form' ) );
183
  $is_update = false;
184
  $post_author = null;
185
  $default_post_author = wpuf_get_option( 'default_post_owner', 'wpuf_general', 1 );
186
+ $guest_verify = isset( $form_settings['guest_email_verify'] ) ? $form_settings['guest_email_verify'] : 'false' ;
187
+ $guest_mode = $form_settings['guest_post'];
188
 
189
  // Guest Stuffs: check for guest post
190
  if ( !is_user_logged_in() ) {
250
  $post_author = get_current_user_id();
251
  }
252
 
253
+ $p_status = isset( $form_settings['post_status'] ) ? $form_settings['post_status'] : 'publish';
254
+
255
+ if ( !is_user_logged_in() && $guest_mode = 'true' && $guest_verify == 'true') {
256
+ $p_status = 'draft';
257
+ }
258
+
259
  $postarr = array(
260
  'post_type' => $form_settings['post_type'],
261
+ 'post_status' => $p_status,
262
  'post_author' => $post_author,
263
  'post_title' => isset( $_POST['post_title'] ) ? trim( $_POST['post_title'] ) : '',
264
  'post_content' => isset( $_POST['post_content'] ) ? trim( $_POST['post_content'] ) : '',
305
 
306
  if ( $form_settings['edit_post_status'] == '_nochange' ) {
307
  $postarr['post_status'] = get_post_field( 'post_status', $_POST['post_id'] );
308
+ } elseif ( $guest_mode == 'true' && $guest_verify == 'true' ) {
309
+ $postarr['post_status'] = 'draft';
310
+ } elseif ( $guest_mode == 'true' && $guest_verify == 'false' ) {
311
+ $postarr['post_status'] = 'publish';
312
+ }
313
+ else {
314
  $postarr['post_status'] = $form_settings['edit_post_status'];
315
  }
316
  } else {
531
  //redirect URL
532
  $show_message = false;
533
  $redirect_to = false;
534
+ $res_flag = false;
535
 
536
  if ( $is_update ) {
537
  if ( $form_settings['edit_redirect_to'] == 'page' ) {
548
  } else {
549
  $redirect_to = get_permalink( $post_id );
550
  }
551
+ } elseif ( $guest_mode == 'true' && $guest_verify == 'true' && !is_user_logged_in() ) {
552
+ $form_settings['redirect_to'] == 'same';
553
+ $show_message = true;
554
+ $res_flag = true;
555
+ $response = array(
556
+ 'success' => true,
557
+ 'redirect_to' => $redirect_to,
558
+ 'show_message' => $show_message,
559
+ 'message' => 'Thank you for posting on our site. We have sent you an confirmation email. Please check your inbox!'
560
+ );
561
+ } elseif ( $guest_mode == 'true' && $guest_verify == 'false' && !is_user_logged_in() ) {
562
+ $form_settings['redirect_to'] == 'same';
563
+ $res_flag = true;
564
+ $response = array(
565
+ 'success' => true,
566
+ 'redirect_to' => $redirect_to,
567
+ 'show_message' => $show_message,
568
+ 'message' => $form_settings['message']
569
+ );
570
  } else {
571
  if ( $form_settings['redirect_to'] == 'page' ) {
572
  $redirect_to = get_permalink( $form_settings['page_id'] );
580
  }
581
 
582
  // send the response
583
+ if ( $res_flag == false ) {
584
+ $response = array(
585
+ 'success' => true,
586
+ 'redirect_to' => $redirect_to,
587
+ 'show_message' => $show_message,
588
+ 'message' => $form_settings['message']
589
+ );
 
 
590
  } else {
591
+ $post_id_encoded = wpuf_encryption( $post_id ) ;
592
+ send_mail_to_guest ( $post_id_encoded );
593
  }
594
 
595
  wpuf_clear_buffer();
621
  $form_id = isset( $_POST['form_id'] ) ? intval( $_POST['form_id'] ) : 0;
622
  $form_vars = $this->get_input_fields( $form_id );
623
  $form_settings = wpuf_get_form_settings( $form_id );
624
+ $post_content = isset( $_POST[ 'post_content' ] ) ? $_POST[ 'post_content' ] : '';
625
 
626
  list( $post_vars, $taxonomy_vars, $meta_vars ) = $form_vars;
627
 
884
  );
885
  }
886
 
887
+ /**
888
+ * Hook to publish verified guest post
889
+ *
890
+ * @since 2.5.8
891
+ */
892
+ function publish_guest_post () {
893
+ if ( isset($_GET['post_msg']) && $_GET['post_msg'] == 'verified' ) {
894
+ $secret_key = AUTH_KEY;
895
+ $secret_iv = AUTH_SALT;
896
+
897
+ $encrypt_method = "AES-256-CBC";
898
+ $key = hash( 'sha256', $secret_key );
899
+ $iv = substr( hash( 'sha256', $secret_iv ), 0, 16 );
900
+
901
+ $post_id = openssl_decrypt( base64_decode( $_GET['p_id'] ), $encrypt_method, $key, 0, $iv );
902
+
903
+ if ( get_post_status ( $post_id ) ) {
904
+ wp_publish_post( $post_id );
905
+ }
906
+ }
907
+ }
908
  }
class/render-form.php CHANGED
@@ -382,8 +382,9 @@ class WPUF_Render_Form {
382
  $label_exclude = array('section_break', 'html', 'action_hook', 'toc', 'shortcode');
383
  $el_name = !empty( $form_field['name'] ) ? $form_field['name'] : '';
384
  $class_name = !empty( $form_field['css'] ) ? ' ' . $form_field['css'] : '';
 
385
 
386
- printf( '<li class="wpuf-el %s%s" data-label="%s">', $el_name, $class_name, $form_field['label'] );
387
 
388
  if ( isset( $form_field['input_type'] ) && !in_array( $form_field['input_type'], $label_exclude ) ) {
389
  $this->label( $form_field, $post_id );
@@ -734,7 +735,7 @@ class WPUF_Render_Form {
734
  if ( $post_id && $attr['input_type'] == 'password') {
735
  $attr['required'] = 'no';
736
  }
737
- if ( $attr['input_type'] == 'recaptcha' && $attr['recaptcha_type'] == 'invisible_recaptcha') {
738
  return;
739
  }
740
 
382
  $label_exclude = array('section_break', 'html', 'action_hook', 'toc', 'shortcode');
383
  $el_name = !empty( $form_field['name'] ) ? $form_field['name'] : '';
384
  $class_name = !empty( $form_field['css'] ) ? ' ' . $form_field['css'] : '';
385
+ $field_size = !empty( $form_field['width'] ) ? ' field-size-' . $form_field['width'] : '';
386
 
387
+ printf( '<li class="wpuf-el %s%s%s" data-label="%s">', $el_name, $class_name, $field_size, $form_field['label'] );
388
 
389
  if ( isset( $form_field['input_type'] ) && !in_array( $form_field['input_type'], $label_exclude ) ) {
390
  $this->label( $form_field, $post_id );
735
  if ( $post_id && $attr['input_type'] == 'password') {
736
  $attr['required'] = 'no';
737
  }
738
+ if ( isset( $attr['input_type'] ) && $attr['input_type'] == 'recaptcha' && $attr['recaptcha_type'] == 'invisible_recaptcha') {
739
  return;
740
  }
741
 
class/subscription.php CHANGED
@@ -62,7 +62,7 @@ class WPUF_Subscription {
62
  $current_pack = self::get_user_pack( $_POST['user_id'] );
63
 
64
  $gateway = ( $_POST['gateway'] == 'bank/manual' ) ? 'bank' : sanitize_text_field( $_POST['gateway'] );
65
-
66
  if ( 'bank' == $gateway || 'no' == $current_pack['recurring'] ) {
67
  $this->update_user_subscription_meta( $_POST['user_id'], 'Cancel' );
68
  } else {
@@ -398,7 +398,7 @@ class WPUF_Subscription {
398
  }
399
 
400
  function subscription_form_elements_post() {
401
- require_once dirname(__FILE__) . '/../admin/subscription.php';
402
  ?>
403
  <div class="wrap">
404
  <?php WPUF_Admin_Subscription::getInstance()->form(); ?>
62
  $current_pack = self::get_user_pack( $_POST['user_id'] );
63
 
64
  $gateway = ( $_POST['gateway'] == 'bank/manual' ) ? 'bank' : sanitize_text_field( $_POST['gateway'] );
65
+
66
  if ( 'bank' == $gateway || 'no' == $current_pack['recurring'] ) {
67
  $this->update_user_subscription_meta( $_POST['user_id'], 'Cancel' );
68
  } else {
398
  }
399
 
400
  function subscription_form_elements_post() {
401
+ require_once dirname(__FILE__) . '/../admin/class-admin-subscription.php';
402
  ?>
403
  <div class="wrap">
404
  <?php WPUF_Admin_Subscription::getInstance()->form(); ?>
class/upgrades.php DELETED
@@ -1,105 +0,0 @@
1
- <?php
2
-
3
- /**
4
- * Runs upgrade routines
5
- */
6
- class WPUF_Upgrades {
7
-
8
- private $version;
9
-
10
- function __construct( $version ) {
11
- $this->version = $version;
12
-
13
- $this->after_update_2_1_9();
14
- }
15
-
16
- function after_update_2_1_9() {
17
-
18
- $version = get_option( 'wpuf_version', '2.1.9' );
19
-
20
- if ( version_compare( $this->version, $version, '<=' ) ) {
21
- return;
22
- }
23
-
24
- $this->update_form_field();
25
- $this->update_subscription();
26
- $this->update_registration();
27
-
28
- update_option( 'wpuf_version', $this->version );
29
- }
30
-
31
- function update_registration() {
32
-
33
- }
34
-
35
- function update_form_field() {
36
- $posts = get_posts( array(
37
- 'post_type' => array( 'wpuf_forms', 'wpuf_profile' ),
38
- 'numberposts' => '-1'
39
- ) );
40
-
41
- if ( $posts ) {
42
- foreach ($posts as $key => $post) {
43
- $posts_meta = get_post_meta( $post->ID, 'wpuf_form', true );
44
- $posts_meta = is_array( $posts_meta ) ? $posts_meta : array();
45
- foreach ($posts_meta as $key => $post_meta) {
46
- $post_meta['wpuf_cond'] = array();
47
-
48
- // if key empty then replace by its value
49
- if ( array_key_exists('options', $post_meta ) ) {
50
- foreach ($post_meta['options'] as $key => $value) {
51
- $post_meta['options'][$value] = $value;
52
- unset( $post_meta['options'][$key] );
53
- }
54
- }
55
-
56
- wpuf_insert_form_field( $post->ID, $post_meta, null, $key );
57
- delete_post_meta( $post->ID, 'wpuf_form' );
58
- }
59
- }
60
- }
61
- }
62
-
63
- function update_subscription() {
64
- global $wpdb;
65
-
66
- $table = $wpdb->prefix . 'wpuf_subscription';
67
- $results = $wpdb->get_results( "SELECT name, description, count, duration, cost FROM $table" );
68
-
69
- if ( !$results ) {
70
- return;
71
- }
72
-
73
- $post_type = WPUF_Subscription::init()->get_all_post_type();
74
-
75
- foreach ( $results as $key => $result ) {
76
- $args = array(
77
- 'post_title' => $result->name,
78
- 'post_content' => $result->description,
79
- 'post_status' => 'publish',
80
- 'post_type' => 'wpuf_subscription'
81
- );
82
-
83
- $post_ID = wp_insert_post( $args );
84
-
85
- if ( $post_ID ) {
86
- foreach ( $post_type as $key => $name ) {
87
- $post_type[$key] = $result->count;
88
- }
89
-
90
- $post = array(
91
- 'cost' => $result->cost,
92
- 'duration' => $result->duration,
93
- 'recurring_pay' => 'no',
94
- 'trial_period' => '',
95
- 'post_type_name' => $post_type
96
- );
97
-
98
- WPUF_Subscription::init()->update_user_subscription_meta( $post_ID, $post );
99
- }
100
- }
101
-
102
- $sql = "DROP TABLE IF_EXISTS $table";
103
- $wpdb->query($sql);
104
- }
105
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
includes/class-abstract-integration.php DELETED
@@ -1,114 +0,0 @@
1
- <?php
2
-
3
- /**
4
- * The Integration abstract class
5
- */
6
- abstract class WPUF_Abstract_Integration {
7
-
8
- /**
9
- * The integration id
10
- *
11
- * @var boolean
12
- */
13
- public $id;
14
-
15
- /**
16
- * If the integration is enabled
17
- *
18
- * @var boolean
19
- */
20
- public $enabled;
21
-
22
- /**
23
- * Integration title
24
- *
25
- * @var string
26
- */
27
- public $title;
28
-
29
- /**
30
- * URL to the integration icon
31
- *
32
- * @var string
33
- */
34
- public $icon;
35
-
36
- /**
37
- * The settings fields for this integrations
38
- *
39
- * @var array
40
- */
41
- public $settings_fields = array();
42
-
43
- /**
44
- * Get the integration title
45
- *
46
- * @return string
47
- */
48
- public function get_title() {
49
- return apply_filters( 'wpuf_integration_title', $this->title, $this );
50
- }
51
-
52
- /**
53
- * Get the integration id
54
- *
55
- * @return string
56
- */
57
- public function get_id() {
58
- return apply_filters( 'wpuf_integration_title', $this->id, $this );
59
- }
60
-
61
- /**
62
- * Get intgration icon
63
- *
64
- * @return string
65
- */
66
- public function get_icon() {
67
- return apply_filters( 'wpuf_integration_icon', $this->icon, $this );
68
- }
69
-
70
- /**
71
- * Check if the integration is enabled
72
- *
73
- * @return boolean
74
- */
75
- public function is_enabled() {
76
- return $this->enabled == true;
77
- }
78
-
79
- /**
80
- * Get the settings fields
81
- *
82
- * @return array
83
- */
84
- public function get_settings_fields() {
85
- return $this->settings_fields;
86
- }
87
-
88
- /**
89
- * Get the integration settings for the component
90
- *
91
- * @return array
92
- */
93
- public function get_js_settings() {
94
- return array(
95
- 'id' => $this->get_id(),
96
- 'title' => $this->get_title(),
97
- 'icon' => $this->get_icon(),
98
- 'settings' => $this->get_settings_fields()
99
- );
100
- }
101
-
102
- /**
103
- * Register the integration in the builder settings
104
- *
105
- * @param array $integrations
106
- *
107
- * @return array
108
- */
109
- public function register_integration_settings( $integrations ) {
110
- $integrations[ $this->id ] = $this->get_js_settings();
111
-
112
- return $integrations;
113
- }
114
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
includes/class-integrations.php DELETED
@@ -1,39 +0,0 @@
1
- <?php
2
-
3
- /**
4
- * The Integration Loader
5
- */
6
- class WPUF_Integrations {
7
-
8
- /**
9
- * The integration instances
10
- *
11
- * @var array
12
- */
13
- public $integrations = array();
14
-
15
- /**
16
- * Initialize the integrations
17
- */
18
- public function __construct() {
19
-
20
- $integrations = apply_filters( 'wpuf_integrations', array() );
21
-
22
- // Load integration classes
23
- foreach ( $integrations as $integration ) {
24
-
25
- $integration_instance = new $integration();
26
-
27
- $this->integrations[ $integration_instance->id ] = $integration_instance;
28
- }
29
- }
30
-
31
- /**
32
- * Return loaded integrations.
33
- *
34
- * @return array
35
- */
36
- public function get_integrations() {
37
- return $this->integrations;
38
- }
39
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
includes/class-upgrades.php ADDED
@@ -0,0 +1,65 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Plugin Upgrade Routine
5
+ *
6
+ * @since 2.2
7
+ */
8
+ class WPUF_Upgrades {
9
+
10
+ /**
11
+ * The upgrades
12
+ *
13
+ * @var array
14
+ */
15
+ private static $upgrades = array(
16
+ '2.1.9' => 'upgrades/upgrade-2.1.9.php'
17
+ );
18
+
19
+ /**
20
+ * Get the plugin version
21
+ *
22
+ * @return string
23
+ */
24
+ public function get_version() {
25
+ return get_option( 'wpuf_version' );
26
+ }
27
+
28
+ /**
29
+ * Check if the plugin needs any update
30
+ *
31
+ * @return boolean
32
+ */
33
+ public function needs_update() {
34
+
35
+ // may be it's the first install
36
+ if ( ! $this->get_version() ) {
37
+ return false;
38
+ }
39
+
40
+ if ( version_compare( $this->get_version(), WPUF_VERSION, '<' ) ) {
41
+ return true;
42
+ }
43
+
44
+ return false;
45
+ }
46
+
47
+ /**
48
+ * Perform all the necessary upgrade routines
49
+ *
50
+ * @return void
51
+ */
52
+ function perform_updates() {
53
+ $installed_version = $this->get_version();
54
+ $path = trailingslashit( dirname( __FILE__ ) );
55
+
56
+ foreach ( self::$upgrades as $version => $file ) {
57
+ if ( version_compare( $installed_version, $version, '<' ) ) {
58
+ include $path . $file;
59
+ update_option( 'wpuf_version', $version );
60
+ }
61
+ }
62
+
63
+ update_option( 'wpuf_version', WPUF_VERSION );
64
+ }
65
+ }
includes/free/admin/shortcode-button.php CHANGED
@@ -94,6 +94,10 @@ class WPUF_Shortcodes_Button {
94
  'title' => __( 'Login', 'wpuf' ),
95
  'content' => '[wpuf-login]'
96
  ),
 
 
 
 
97
  'wpuf-sub-pack' => array(
98
  'title' => __( 'Subscription', 'wpuf' ),
99
  'content' => '[wpuf_sub_pack]'
94
  'title' => __( 'Login', 'wpuf' ),
95
  'content' => '[wpuf-login]'
96
  ),
97
+ 'wpuf-registration' => array(
98
+ 'title' => __( 'Registration', 'wpuf' ),
99
+ 'content' => '[wpuf-registration]'
100
+ ),
101
  'wpuf-sub-pack' => array(
102
  'title' => __( 'Subscription', 'wpuf' ),
103
  'content' => '[wpuf_sub_pack]'
includes/free/class-login.php ADDED
@@ -0,0 +1,744 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Login and forgot password handler class
5
+ *
6
+ * @since 2.2
7
+ * @author Tareq Hasan <tareq@wedevs.com>
8
+ */
9
+ class WPUF_Simple_Login {
10
+
11
+ private $login_errors = array();
12
+ private $messages = array();
13
+
14
+ private static $_instance;
15
+
16
+ function __construct() {
17
+ add_shortcode( 'wpuf-login', array($this, 'login_form') );
18
+
19
+ add_action( 'init', array($this, 'process_login') );
20
+ add_action( 'init', array($this, 'process_logout') );
21
+ add_action( 'init', array($this, 'process_reset_password') );
22
+
23
+ add_action( 'init', array($this, 'wp_login_page_redirect') );
24
+ add_action( 'init', array($this, 'activation_user_registration') );
25
+
26
+ // URL filters
27
+ add_filter( 'login_url', array($this, 'filter_login_url'), 10, 2 );
28
+ add_filter( 'logout_url', array($this, 'filter_logout_url'), 10, 2 );
29
+ add_filter( 'lostpassword_url', array($this, 'filter_lostpassword_url'), 10, 2 );
30
+ add_filter( 'register_url', array($this, 'get_registration_url') );
31
+
32
+ add_filter( 'authenticate', array($this, 'successfully_authenticate'), 30, 3 );
33
+ }
34
+
35
+ /**
36
+ * Singleton object
37
+ *
38
+ * @return self
39
+ */
40
+ public static function init() {
41
+ if ( !self::$_instance ) {
42
+ self::$_instance = new self;
43
+ }
44
+
45
+ return self::$_instance;
46
+ }
47
+
48
+ /**
49
+ * Is override enabled
50
+ *
51
+ * @return boolean
52
+ */
53
+ function is_override_enabled() {
54
+ $override = wpuf_get_option( 'register_link_override', 'wpuf_profile', 'off' );
55
+
56
+ if ( $override !== 'on' ) {
57
+ return false;
58
+ }
59
+
60
+ return true;
61
+ }
62
+
63
+ /**
64
+ * Get action url based on action type
65
+ *
66
+ * @param string $action
67
+ * @param string $redirect_to url to redirect to
68
+ * @return string
69
+ */
70
+ function get_action_url( $action = 'login', $redirect_to = '' ) {
71
+ $root_url = $this->get_login_url();
72
+
73
+ switch ($action) {
74
+ case 'resetpass':
75
+ return add_query_arg( array('action' => 'resetpass'), $root_url );
76
+ break;
77
+
78
+ case 'lostpassword':
79
+ return add_query_arg( array('action' => 'lostpassword'), $root_url );
80
+ break;
81
+
82
+ case 'register':
83
+ return $this->get_registration_url();
84
+ break;
85
+
86
+ case 'logout':
87
+ return wp_nonce_url( add_query_arg( array('action' => 'logout'), $root_url ), 'log-out' );
88
+ break;
89
+
90
+ default:
91
+ if ( empty( $redirect_to ) ) {
92
+ return $root_url;
93
+ }
94
+
95
+ return add_query_arg( array('redirect_to' => urlencode( $redirect_to )), $root_url );
96
+ break;
97
+ }
98
+ }
99
+
100
+ /**
101
+ * Get login page url
102
+ *
103
+ * @return boolean|string
104
+ */
105
+ function get_login_url() {
106
+ $page_id = wpuf_get_option( 'login_page', 'wpuf_profile', false );
107
+
108
+ if ( !$page_id ) {
109
+ return false;
110
+ }
111
+
112
+ $url = get_permalink( $page_id );
113
+
114
+ return apply_filters( 'wpuf_login_url', $url, $page_id );
115
+ }
116
+
117
+ /**
118
+ * Get registration page url
119
+ *
120
+ * @return boolean|string
121
+ */
122
+ function get_registration_url( $register_url = null ) {
123
+ $register_link_override = wpuf_get_option('register_link_override','wpuf_profile',false);
124
+ $page_id = wpuf_get_option( 'reg_override_page', 'wpuf_profile', false );
125
+
126
+ if ( $register_link_override == 'off' ) {
127
+ return $register_url;
128
+ }
129
+
130
+ if ( !$page_id ) {
131
+ return false;
132
+ }
133
+
134
+ $url = get_permalink( $page_id );
135
+
136
+ return apply_filters( 'wpuf_register_url', $url, $page_id );
137
+ }
138
+
139
+
140
+ /**
141
+ * Filter the login url with ours
142
+ *
143
+ * @param string $url
144
+ * @param string $redirect
145
+ * @return string
146
+ */
147
+ function filter_login_url( $url, $redirect ) {
148
+
149
+ if ( !$this->is_override_enabled() ) {
150
+ return $url;
151
+ }
152
+
153
+ return $this->get_action_url( 'login', $redirect );
154
+ }
155
+
156
+
157
+ /**
158
+ * Filter the logout url with ours
159
+ *
160
+ * @param string $url
161
+ * @param string $redirect
162
+ * @return string
163
+ */
164
+ function filter_logout_url( $url, $redirect ) {
165
+
166
+ if ( !$this->is_override_enabled() ) {
167
+ return $url;
168
+ }
169
+
170
+ return $this->get_action_url( 'logout', $redirect );
171
+ }
172
+
173
+
174
+ /**
175
+ * Filter the lost password url with ours
176
+ *
177
+ * @param string $url
178
+ * @param string $redirect
179
+ * @return string
180
+ */
181
+ function filter_lostpassword_url( $url, $redirect ) {
182
+
183
+ if ( !$this->is_override_enabled() ) {
184
+ return $url;
185
+ }
186
+
187
+ return $this->get_action_url( 'lostpassword', $redirect );
188
+ }
189
+
190
+
191
+ /**
192
+ * Get actions links for displaying in forms
193
+ *
194
+ * @param array $args
195
+ * @return string
196
+ */
197
+ function get_action_links( $args = array() ) {
198
+ $defaults = array(
199
+ 'login' => true,
200
+ 'register' => true,
201
+ 'lostpassword' => true
202
+ );
203
+
204
+ $args = wp_parse_args( $args, $defaults );
205
+ $links = array();
206
+
207
+ if ( $args['login'] ) {
208
+ $links[] = sprintf( '<a href="%s">%s</a>', $this->get_action_url( 'login' ), __( 'Log In', 'wpuf-pro' ) );
209
+ }
210
+
211
+ if ( $args['register'] ) {
212
+ $links[] = sprintf( '<a href="%s">%s</a>', $this->get_action_url( 'register' ), __( 'Register', 'wpuf-pro' ) );
213
+ }
214
+
215
+ if ( $args['lostpassword'] ) {
216
+ $links[] = sprintf( '<a href="%s">%s</a>', $this->get_action_url( 'lostpassword' ), __( 'Lost Password', 'wpuf-pro' ) );
217
+ }
218
+
219
+ return implode( ' | ', $links );
220
+ }
221
+
222
+ /**
223
+ * Shows the login form
224
+ *
225
+ * @return string
226
+ */
227
+ function login_form() {
228
+
229
+ $login_page = $this->get_login_url();
230
+
231
+ if ( false === $login_page ) {
232
+ return;
233
+ }
234
+
235
+ ob_start();
236
+
237
+ if ( is_user_logged_in() ) {
238
+
239
+ wpuf_load_template( 'logged-in.php', array(
240
+ 'user' => wp_get_current_user()
241
+ ) );
242
+
243
+ } else {
244
+
245
+ $action = isset( $_GET['action'] ) ? $_GET['action'] : 'login';
246
+
247
+ $args = array(
248
+ 'action_url' => $login_page,
249
+ );
250
+
251
+ switch ($action) {
252
+ case 'lostpassword':
253
+
254
+ $this->messages[] = __( 'Please enter your username or email address. You will receive a link to create a new password via email.', 'wpuf-pro' );
255
+
256
+ wpuf_load_template( 'lost-pass-form.php', $args );
257
+ break;
258
+
259
+ case 'rp':
260
+ case 'resetpass':
261
+
262
+ if ( isset( $_GET['reset'] ) && $_GET['reset'] == 'true' ) {
263
+
264
+ printf( '<div class="wpuf-message">' . __( 'Your password has been reset. %s', 'wpuf-pro' ) . '</div>', sprintf( '<a href="%s">%s</a>', $this->get_action_url( 'login' ), __( 'Log In', 'wpuf-pro' ) ) );
265
+ return;
266
+ } else {
267
+
268
+ $this->messages[] = __( 'Enter your new password below..', 'wpuf-pro' );
269
+
270
+ wpuf_load_template( 'reset-pass-form.php', $args );
271
+ }
272
+
273
+ break;
274
+
275
+ default:
276
+
277
+ if ( isset( $_GET['checkemail'] ) && $_GET['checkemail'] == 'confirm' ) {
278
+ $this->messages[] = __( 'Check your e-mail for the confirmation link.', 'wpuf-pro' );
279
+ }
280
+
281
+ if ( isset( $_GET['loggedout'] ) && $_GET['loggedout'] == 'true' ) {
282
+ $this->messages[] = __( 'You are now logged out.', 'wpuf-pro' );
283
+ }
284
+
285
+ wpuf_load_template( 'login-form.php', $args );
286
+
287
+ break;
288
+ }
289
+ }
290
+
291
+ return ob_get_clean();
292
+ }
293
+
294
+ /**
295
+ * Process login form
296
+ *
297
+ * @return void
298
+ */
299
+ function process_login() {
300
+ if ( !empty( $_POST['wpuf_login'] ) && !empty( $_POST['_wpnonce'] ) ) {
301
+ $creds = array();
302
+
303
+ if ( isset( $_POST['_wpnonce'] ) ) {
304
+ wp_verify_nonce( $_POST['_wpnonce'], 'wpuf_login_action' );
305
+ }
306
+
307
+ $validation_error = new WP_Error();
308
+ $validation_error = apply_filters( 'wpuf_process_login_errors', $validation_error, $_POST['log'], $_POST['pwd'] );
309
+
310
+ if ( $validation_error->get_error_code() ) {
311
+ $this->login_errors[] = '<strong>' . __( 'Error', 'wpuf-pro' ) . ':</strong> ' . $validation_error->get_error_message();
312
+ return;
313
+ }
314
+
315
+ if ( empty( $_POST['log'] ) ) {
316
+ $this->login_errors[] = '<strong>' . __( 'Error', 'wpuf-pro' ) . ':</strong> ' . __( 'Username is required.', 'wpuf-pro' );
317
+ return;
318
+ }
319
+
320
+ if ( empty( $_POST['pwd'] ) ) {
321
+ $this->login_errors[] = '<strong>' . __( 'Error', 'wpuf-pro' ) . ':</strong> ' . __( 'Password is required.', 'wpuf-pro' );
322
+ return;
323
+ }
324
+
325
+ if ( is_email( $_POST['log'] ) && apply_filters( 'wpuf_get_username_from_email', true ) ) {
326
+ $user = get_user_by( 'email', $_POST['log'] );
327
+
328
+ if ( isset( $user->user_login ) ) {
329
+ $creds['user_login'] = $user->user_login;
330
+ } else {
331
+ $this->login_errors[] = '<strong>' . __( 'Error', 'wpuf-pro' ) . ':</strong> ' . __( 'A user could not be found with this email address.', 'wpuf-pro' );
332
+ return;
333
+ }
334
+ } else {
335
+ $creds['user_login'] = $_POST['log'];
336
+ }
337
+
338
+ $creds['user_password'] = $_POST['pwd'];
339
+ $creds['remember'] = isset( $_POST['rememberme'] );
340
+ $secure_cookie = is_ssl() ? true : false;
341
+ $user = wp_signon( apply_filters( 'wpuf_login_credentials', $creds ), $secure_cookie );
342
+
343
+ if ( is_wp_error( $user ) ) {
344
+ $this->login_errors[] = $user->get_error_message();
345
+ return;
346
+ } else {
347
+
348
+ if ( !empty( $_POST['redirect_to'] ) ) {
349
+ $redirect = esc_url( $_POST['redirect_to'] );
350
+ } elseif ( wp_get_referer() ) {
351
+ $redirect = esc_url( wp_get_referer() );
352
+ } else {
353
+ $redirect = home_url( '/' );
354
+ }
355
+
356
+ wp_redirect( apply_filters( 'wpuf_login_redirect', $redirect, $user ) );
357
+ exit;
358
+ }
359
+ }
360
+ }
361
+
362
+ /**
363
+ * Logout the user
364
+ *
365
+ * @return void
366
+ */
367
+ function process_logout() {
368
+ if ( isset( $_GET['action'] ) && $_GET['action'] == 'logout' ) {
369
+
370
+ if ( !$this->is_override_enabled() ) {
371
+ return;
372
+ }
373
+
374
+ check_admin_referer('log-out');
375
+ wp_logout();
376
+
377
+ $redirect_to = !empty( $_REQUEST['redirect_to'] ) ? $_REQUEST['redirect_to'] : add_query_arg( array( 'loggedout' => 'true' ), $this->get_login_url() ) ;
378
+ wp_safe_redirect( $redirect_to );
379
+ exit();
380
+ }
381
+ }
382
+
383
+
384
+ /**
385
+ * Handle reset password form
386
+ *
387
+ * @return void
388
+ */
389
+ public function process_reset_password() {
390
+
391
+ if ( ! isset( $_POST['wpuf_reset_password'] ) ) {
392
+ return;
393
+ }
394
+
395
+ // process lost password form
396
+ if ( isset( $_POST['user_login'] ) && isset( $_POST['_wpnonce'] ) ) {
397
+ wp_verify_nonce( $_POST['_wpnonce'], 'wpuf_lost_pass' );
398
+
399
+ if ( $this->retrieve_password() ) {
400
+ $url = add_query_arg( array( 'checkemail' => 'confirm' ), $this->get_login_url() );
401
+ wp_redirect( $url );
402
+ exit;
403
+ }
404
+ }
405
+
406
+ // process reset password form
407
+ if ( isset( $_POST['pass1'] ) && isset( $_POST['pass2'] ) && isset( $_POST['key'] ) && isset( $_POST['login'] ) && isset( $_POST['_wpnonce'] ) ) {
408
+
409
+ // verify reset key again
410
+ $user = $this->check_password_reset_key( $_POST['key'], $_POST['login'] );
411
+
412
+ if ( is_object( $user ) ) {
413
+
414
+ // save these values into the form again in case of errors
415
+ $args['key'] = $_POST['key'];
416
+ $args['login'] = $_POST['login'];
417
+
418
+ wp_verify_nonce( $_POST['_wpnonce'], 'wpuf_reset_pass' );
419
+
420
+ if ( empty( $_POST['pass1'] ) || empty( $_POST['pass2'] ) ) {
421
+ $this->login_errors[] = __( 'Please enter your password.', 'wpuf-pro' );
422
+ return;
423
+ }
424
+
425
+ if ( $_POST[ 'pass1' ] !== $_POST[ 'pass2' ] ) {
426
+ $this->login_errors[] = __( 'Passwords do not match.', 'wpuf-pro' );
427
+ return;
428
+ }
429
+
430
+ $errors = new WP_Error();
431
+
432
+ do_action( 'validate_password_reset', $errors, $user );
433
+
434
+ if ( $errors->get_error_messages() ) {
435
+ foreach ( $errors->get_error_messages() as $error ) {
436
+ $this->login_errors[] = $error;
437
+ }
438
+
439
+ return;
440
+ }
441
+
442
+ if ( ! $this->login_errors ) {
443
+
444
+ $this->reset_password( $user, $_POST['pass1'] );
445
+
446
+ do_action( 'wpuf_customer_reset_password', $user );
447
+
448
+ wp_redirect( add_query_arg( 'reset', 'true', remove_query_arg( array( 'key', 'login' ) ) ) );
449
+ exit;
450
+ }
451
+ }
452
+
453
+ }
454
+ }
455
+
456
+
457
+ /**
458
+ * Handles sending password retrieval email to customer.
459
+ *
460
+ * @access public
461
+ * @uses $wpdb WordPress Database object
462
+ * @return bool True: when finish. False: on error
463
+ */
464
+ function retrieve_password() {
465
+ global $wpdb;
466
+
467
+ if ( empty( $_POST['user_login'] ) ) {
468
+
469
+ $this->login_errors[] = __( 'Enter a username or e-mail address.', 'wpuf-pro' );
470
+ return;
471
+
472
+ } elseif ( strpos( $_POST['user_login'], '@' ) && apply_filters( 'wpuf_get_username_from_email', true ) ) {
473
+
474
+ $user_data = get_user_by( 'email', trim( $_POST['user_login'] ) );
475
+
476
+ if ( empty( $user_data ) ) {
477
+ $this->login_errors[] = __( 'There is no user registered with that email address.', 'wpuf-pro' );
478
+ return;
479
+ }
480
+
481
+ } else {
482
+
483
+ $login = trim( $_POST['user_login'] );
484
+
485
+ $user_data = get_user_by( 'login', $login );
486
+ }
487
+
488
+ do_action('lostpassword_post');
489
+
490
+ if ( $this->login_errors ) {
491
+ return false;
492
+ }
493
+
494
+ if ( ! $user_data ) {
495
+ $this->login_errors[] = __( 'Invalid username or e-mail.', 'wpuf-pro' );
496
+ return false;
497
+ }
498
+
499
+ // redefining user_login ensures we return the right case in the email
500
+ $user_login = $user_data->user_login;
501
+ $user_email = $user_data->user_email;
502
+
503
+ do_action('retrieve_password', $user_login);
504
+
505
+ $allow = apply_filters('allow_password_reset', true, $user_data->ID);
506
+
507
+ if ( ! $allow ) {
508
+
509
+ $this->login_errors[] = __( 'Password reset is not allowed for this user', 'wpuf-pro' );
510
+ return false;
511
+
512
+ } elseif ( is_wp_error( $allow ) ) {
513
+
514
+ $this->login_errors[] = $allow->get_error_message();
515
+ return false;
516
+ }
517
+
518
+ $key = $wpdb->get_var( $wpdb->prepare( "SELECT user_activation_key FROM $wpdb->users WHERE user_login = %s", $user_login ) );
519
+
520
+ if ( empty( $key ) ) {
521
+
522
+ // Generate something random for a key...
523
+ $key = wp_generate_password( 20, false );
524
+
525
+ do_action('retrieve_password_key', $user_login, $user_email, $key);
526
+
527
+ // Now insert the new md5 key into the db
528
+ $wpdb->update( $wpdb->users, array( 'user_activation_key' => $key ), array( 'user_login' => $user_login ) );
529
+ }
530
+
531
+ // Send email notification
532
+ $this->email_reset_pass( $user_login, $user_email, $key );
533
+
534
+ return true;
535
+ }
536
+
537
+ /**
538
+ * Retrieves a user row based on password reset key and login
539
+ *
540
+ * @uses $wpdb WordPress Database object
541
+ *
542
+ * @access public
543
+ * @param string $key Hash to validate sending user's password
544
+ * @param string $login The user login
545
+ * @return object|bool User's database row on success, false for invalid keys
546
+ */
547
+ function check_password_reset_key( $key, $login ) {
548
+ global $wpdb;
549
+
550
+ $key = preg_replace( '/[^a-z0-9]/i', '', $key );
551
+
552
+ if ( empty( $key ) || ! is_string( $key ) ) {
553
+ $this->login_errors[] = __( 'Invalid key', 'wpuf-pro' );
554
+ return false;
555
+ }
556
+
557
+ if ( empty( $login ) || ! is_string( $login ) ) {
558
+ $this->login_errors[] = __( 'Invalid key', 'wpuf-pro' );
559
+ return false;
560
+ }
561
+
562
+ $user = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->users WHERE user_activation_key = %s AND user_login = %s", $key, $login ) );
563
+
564
+ if ( empty( $user ) ) {
565
+ $this->login_errors[] = __( 'Invalid key', 'wpuf-pro' );
566
+ return false;
567
+ }
568
+
569
+ return $user;
570
+ }
571
+
572
+ /**
573
+ * Successfull authenticate when enable email verfication in registration
574
+ *
575
+ * @param object $user
576
+ * @param string $username
577
+ * @param string $password
578
+ * @return object
579
+ */
580
+ function successfully_authenticate( $user, $username, $password ) {
581
+
582
+ if ( !is_wp_error( $user ) ) {
583
+
584
+ if ( $user->ID ) {
585
+
586
+ $error = new WP_Error();
587
+ if ( get_user_meta( $user->ID, '_wpuf_user_active', true ) == '0' ) {
588
+ $error->add( 'acitve_user', sprintf( __( '<strong>Your account is not active.</strong><br>Please check your email for activation link.', 'wpuf-pro' ) ) );
589
+ return $error;
590
+ }
591
+ }
592
+ }
593
+
594
+ return $user;
595
+ }
596
+
597
+ /**
598
+ * Check in activation of user registration
599
+ *
600
+ * @since 2.2
601
+ */
602
+ function activation_user_registration() {
603
+
604
+ if ( !isset( $_GET['wpuf_registration_activation'] ) && empty( $_GET['wpuf_registration_activation'] ) ) {
605
+ return;
606
+ }
607
+
608
+ if ( !isset( $_GET['id'] ) && empty( $_GET['id'] ) ) {
609
+ return;
610
+ }
611
+
612
+ $user_id = intval( $_GET['id'] );
613
+ $activation_key = $_GET['wpuf_registration_activation'];
614
+
615
+ if ( get_user_meta( $user_id, '_wpuf_activation_key', true ) != $activation_key ) {
616
+ return;
617
+ }
618
+
619
+ delete_user_meta( $user_id, '_wpuf_user_active' );
620
+ delete_user_meta( $user_id, '_wpuf_activation_key' );
621
+
622
+ // show activation message
623
+ add_filter( 'wp_login_errors', array($this, 'user_activation_message') );
624
+ wp_send_new_user_notifications( $user_id );
625
+
626
+ do_action( 'wpuf_user_activated', $user_id );
627
+ }
628
+
629
+ /**
630
+ * Shows activation message on success to wp-login.php
631
+ *
632
+ * @since 2.2
633
+ * @return \WP_Error
634
+ */
635
+ function user_activation_message() {
636
+ return new WP_Error( 'user-activated', __( 'Your account has been activated', 'wpuf-pro' ), 'message' );
637
+ }
638
+
639
+ function wp_login_page_redirect() {
640
+ global $pagenow;
641
+
642
+ if ( ! is_admin() && $pagenow == 'wp-login.php' && isset( $_GET['action'] ) && $_GET['action'] == 'register' ) {
643
+
644
+ if ( wpuf_get_option( 'register_link_override', 'wpuf_profile' ) != 'on' ) {
645
+ return;
646
+ }
647
+
648
+ $reg_page = get_permalink( wpuf_get_option( 'reg_override_page', 'wpuf_profile' ) );
649
+ wp_redirect( $reg_page );
650
+ exit;
651
+ }
652
+ }
653
+
654
+ /**
655
+ * Handles resetting the user's password.
656
+ *
657
+ * @access public
658
+ * @param object $user The user
659
+ * @param string $new_pass New password for the user in plaintext
660
+ * @return void
661
+ */
662
+ public function reset_password( $user, $new_pass ) {
663
+ do_action( 'password_reset', $user, $new_pass );
664
+
665
+ wp_set_password( $new_pass, $user->ID );
666
+
667
+ wp_password_change_notification( $user );
668
+ }
669
+
670
+ /**
671
+ * Email reset password link
672
+ *
673
+ * @param string $user_login
674
+ * @param string $user_email
675
+ * @param string $key
676
+ */
677
+ function email_reset_pass( $user_login, $user_email, $key ) {
678
+ $reset_url = add_query_arg( array( 'action' => 'rp', 'key' => $key, 'login' => urlencode( $user_login ) ), $this->get_login_url() );
679
+
680
+ $message = __('Someone requested that the password be reset for the following account:', 'wpuf-pro') . "\r\n\r\n";
681
+ $message .= network_home_url( '/' ) . "\r\n\r\n";
682
+ $message .= sprintf(__('Username: %s', 'wpuf-pro' ), $user_login) . "\r\n\r\n";
683
+ $message .= __('If this was a mistake, just ignore this email and nothing will happen.', 'wpuf-pro') . "\r\n\r\n";
684
+ $message .= __('To reset your password, visit the following address:', 'wpuf-pro') . "\r\n\r\n";
685
+ $message .= '<' . $reset_url . ">\r\n";
686
+
687
+ if ( is_multisite() ) {
688
+ $blogname = $GLOBALS['current_site']->site_name;
689
+ } else {
690
+ $blogname = wp_specialchars_decode(get_option('blogname'), ENT_QUOTES);
691
+ }
692
+
693
+ $title = sprintf( __('[%s] Password Reset', 'wpuf-pro' ), $blogname );
694
+ $title = apply_filters( 'retrieve_password_title', $title );
695
+ $message = apply_filters( 'retrieve_password_message', $message, $key, $user_login );
696
+
697
+ if ( $message && !wp_mail( $user_email, wp_specialchars_decode( $title ), $message ) ) {
698
+ wp_die( __('The e-mail could not be sent.', 'wpuf-pro') . "<br />\n" . __('Possible reason: your host may have disabled the mail() function.', 'wpuf-pro') );
699
+ }
700
+ }
701
+
702
+ /**
703
+ * Show erros on the form
704
+ *
705
+ * @return void
706
+ */
707
+ function show_errors() {
708
+ if ( $this->login_errors ) {
709
+ foreach ($this->login_errors as $error) {
710
+ echo '<div class="wpuf-error">';
711
+ _e( $error,'wpuf-pro' );
712
+ echo '</div>';
713
+ }
714
+ }
715
+ }
716
+
717
+ /**
718
+ * Show messages on the form
719
+ *
720
+ * @return void
721
+ */
722
+ function show_messages() {
723
+ if ( $this->messages ) {
724
+ foreach ($this->messages as $message) {
725
+ printf( '<div class="wpuf-message">%s</div>', $message );
726
+ }
727
+ }
728
+ }
729
+
730
+ /**
731
+ * Get a posted value for showing in the form field
732
+ *
733
+ * @param string $key
734
+ * @return string
735
+ */
736
+ public static function get_posted_value( $key ) {
737
+ if ( isset( $_REQUEST[$key] ) ) {
738
+ return esc_attr( $_REQUEST[$key] );
739
+ }
740
+
741
+ return '';
742
+ }
743
+
744
+ }
includes/free/class-registration.php ADDED
@@ -0,0 +1,343 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Registration handler class
5
+ *
6
+ * @since 2.5.8
7
+ */
8
+ class WPUF_Registration {
9
+
10
+ private $registration_errors = array();
11
+ private $messages = array();
12
+
13
+ private static $_instance;
14
+ public $atts = array();
15
+ public $userrole = '';
16
+
17
+ function __construct() {
18
+
19
+ add_shortcode( 'wpuf-registration', array($this, 'registration_form') );
20
+
21
+ add_action( 'init', array($this, 'process_registration') );
22
+ add_action( 'init', array($this, 'wp_registration_page_redirect') );
23
+
24
+ add_filter( 'register_url', array($this, 'get_registration_url') );
25
+ }
26
+
27
+ /**
28
+ * Singleton object
29
+ *
30
+ * @return self
31
+ */
32
+ public static function init() {
33
+
34
+ if ( !self::$_instance ) {
35
+ self::$_instance = new self;
36
+ }
37
+
38
+ return self::$_instance;
39
+ }
40
+
41
+ /**
42
+ * Is override enabled
43
+ *
44
+ * @return boolean
45
+ */
46
+ function is_override_enabled() {
47
+
48
+ $override = wpuf_get_option( 'register_link_override', 'wpuf_profile', 'off' );
49
+
50
+ if ( $override !== 'on' ) {
51
+ return false;
52
+ }
53
+
54
+ return true;
55
+ }
56
+
57
+ /**
58
+ * Get action url based on action type
59
+ *
60
+ * @param string $action
61
+ * @param string $redirect_to url to redirect to
62
+ * @return string
63
+ */
64
+ function get_action_url( $action = 'registration', $redirect_to = '' ) {
65
+
66
+ $root_url = $this->get_registration_url();
67
+
68
+ switch ($action) {
69
+ case 'register':
70
+ return $this->get_registration_url();
71
+ break;
72
+
73
+ default:
74
+ if ( empty( $redirect_to ) ) {
75
+ return $root_url;
76
+ }
77
+
78
+ return add_query_arg( array('redirect_to' => urlencode( $redirect_to )), $root_url );
79
+ break;
80
+ }
81
+ }
82
+
83
+
84
+ /**
85
+ * Get registration page url
86
+ *
87
+ * @return boolean|string
88
+ */
89
+ function get_registration_url( $register_url = null ) {
90
+
91
+ $register_link_override = wpuf_get_option('register_link_override','wpuf_profile',false);
92
+ $page_id = wpuf_get_option( 'reg_override_page', 'wpuf_profile', false );
93
+
94
+ if ( $register_link_override == 'off' ) {
95
+ return $register_url;
96
+ }
97
+
98
+ if ( !$page_id ) {
99
+ return false;
100
+ }
101
+
102
+ $url = get_permalink( $page_id );
103
+
104
+ return apply_filters( 'wpuf_register_url', $url, $page_id );
105
+ }
106
+
107
+
108
+ /**
109
+ * Get actions links for displaying in forms
110
+ *
111
+ * @param array $args
112
+ * @return string
113
+ */
114
+ function get_action_links( $args = array() ) {
115
+
116
+ $defaults = array(
117
+ 'register' => true
118
+ );
119
+
120
+ $args = wp_parse_args( $args, $defaults );
121
+ $links = array();
122
+
123
+ if ( $args['register'] ) {
124
+ $links[] = sprintf( '<a href="%s">%s</a>', $this->get_action_url( 'register' ), __( 'Register', 'wpuf' ) );
125
+ }
126
+
127
+ return implode( ' | ', $links );
128
+ }
129
+
130
+ /**
131
+ * Shows the registration form
132
+ *
133
+ * @return string
134
+ */
135
+ function registration_form( $atts ) {
136
+ $atts = shortcode_atts(
137
+ array(
138
+ 'role' => '',
139
+ ), $atts
140
+ );
141
+ $userrole = $atts['role'];
142
+
143
+ $roleencoded = wpuf_encryption( $userrole );
144
+
145
+ $reg_page = $this->get_registration_url();
146
+
147
+ if ( false === $reg_page ) {
148
+ return;
149
+ }
150
+
151
+ ob_start();
152
+
153
+ if ( is_user_logged_in() ) {
154
+
155
+ wpuf_load_template( 'logged-in.php', array(
156
+ 'user' => wp_get_current_user()
157
+ ) );
158
+
159
+ } else {
160
+
161
+ $action = isset( $_GET['action'] ) ? $_GET['action'] : 'register';
162
+
163
+ $args = array(
164
+ 'action_url' => $reg_page,
165
+ 'userrole' => $roleencoded
166
+ );
167
+
168
+ wpuf_load_template( 'registration-form.php', $args );
169
+
170
+ }
171
+
172
+ return ob_get_clean();
173
+ }
174
+
175
+ /**
176
+ * Process registration form
177
+ *
178
+ * @return void
179
+ */
180
+ function process_registration() {
181
+ if ( !empty( $_POST['wpuf_registration'] ) && !empty( $_POST['_wpnonce'] ) ) {
182
+ $userdata = array();
183
+
184
+ if ( isset( $_POST['_wpnonce'] ) ) {
185
+ wp_verify_nonce( $_POST['_wpnonce'], 'wpuf_registration_action' );
186
+ }
187
+
188
+ $validation_error = new WP_Error();
189
+ $validation_error = apply_filters( 'wpuf_process_registration_errors', $validation_error, $_POST['reg_fname'], $_POST['reg_lname'], $_POST['reg_email'], $_POST['log'], $_POST['pwd1'], $_POST['pwd2'] );
190
+
191
+ if ( $validation_error->get_error_code() ) {
192
+ $this->registration_errors[] = '<strong>' . __( 'Error', 'wpuf' ) . ':</strong> ' . $validation_error->get_error_message();
193
+ return;
194
+ }
195
+
196
+ if ( empty( $_POST['reg_fname'] ) ) {
197
+ $this->registration_errors[] = '<strong>' . __( 'Error', 'wpuf' ) . ':</strong> ' . __( 'First name is required.', 'wpuf' );
198
+ return;
199
+ }
200
+
201
+ if ( empty( $_POST['reg_lname'] ) ) {
202
+ $this->registration_errors[] = '<strong>' . __( 'Error', 'wpuf' ) . ':</strong> ' . __( 'Last name is required.', 'wpuf' );
203
+ return;
204
+ }
205
+
206
+ if ( empty( $_POST['reg_email'] ) ) {
207
+ $this->registration_errors[] = '<strong>' . __( 'Error', 'wpuf' ) . ':</strong> ' . __( 'Email is required.', 'wpuf' );
208
+ return;
209
+ }
210
+
211
+ if ( empty( $_POST['log'] ) ) {
212
+ $this->registration_errors[] = '<strong>' . __( 'Error', 'wpuf' ) . ':</strong> ' . __( 'Username is required.', 'wpuf' );
213
+ return;
214
+ }
215
+
216
+ if ( empty( $_POST['pwd1'] ) ) {
217
+ $this->registration_errors[] = '<strong>' . __( 'Error', 'wpuf' ) . ':</strong> ' . __( 'Password is required.', 'wpuf' );
218
+ return;
219
+ }
220
+
221
+ if ( empty( $_POST['pwd2'] ) ) {
222
+ $this->registration_errors[] = '<strong>' . __( 'Error', 'wpuf' ) . ':</strong> ' . __( 'Confirm Password is required.', 'wpuf' );
223
+ return;
224
+ }
225
+
226
+ if ( $_POST['pwd1'] != $_POST['pwd2'] ) {
227
+ $this->registration_errors[] = '<strong>' . __( 'Error', 'wpuf' ) . ':</strong> ' . __( 'Passwords are not same.', 'wpuf' );
228
+ return;
229
+ }
230
+
231
+ if ( get_user_by( 'login', $_POST['log'] ) === $_POST['log'] ) {
232
+ $this->registration_errors[] = '<strong>' . __( 'Error', 'wpuf' ) . ':</strong> ' . __( 'A user with same username already exists.', 'wpuf' );
233
+ return;
234
+ }
235
+
236
+ if ( is_email( $_POST['log'] ) && apply_filters( 'wpuf_get_username_from_email', true ) ) {
237
+ $user = get_user_by( 'email', $_POST['log'] );
238
+
239
+ if ( isset( $user->user_login ) ) {
240
+ $userdata['user_login'] = $user->user_login;
241
+ } else {
242
+ $this->registration_errors[] = '<strong>' . __( 'Error', 'wpuf' ) . ':</strong> ' . __( 'A user could not be found with this email address.', 'wpuf' );
243
+ return;
244
+ }
245
+ } else {
246
+ $userdata['user_login'] = $_POST['log'];
247
+ }
248
+
249
+ $dec_role = wpuf_decryption( $_POST['urhidden'] );
250
+
251
+ $userdata['first_name'] = $_POST['reg_fname'];
252
+ $userdata['last_name'] = $_POST['reg_lname'];
253
+ $userdata['user_email'] = $_POST['reg_email'];
254
+ $userdata['user_pass'] = $_POST['pwd1'];
255
+
256
+ if ( get_role( $dec_role ) ) {
257
+ $userdata['role'] = $dec_role;
258
+ }
259
+
260
+ $user = wp_insert_user( $userdata );
261
+
262
+ if ( is_wp_error( $user ) ) {
263
+ $this->registration_errors[] = $user->get_error_message();
264
+ return;
265
+ } else {
266
+
267
+ if ( !empty( $_POST['redirect_to'] ) ) {
268
+ $redirect = esc_url( $_POST['redirect_to'] );
269
+ } elseif ( wp_get_referer() ) {
270
+ $redirect = esc_url( wp_get_referer() );
271
+ } else {
272
+ $redirect = $this->get_registration_url() . '?success=yes';
273
+ }
274
+
275
+ wp_redirect( apply_filters( 'wpuf_registration_redirect', $redirect, $user ) );
276
+ exit;
277
+ }
278
+ }
279
+ }
280
+
281
+ /**
282
+ * Redirect to registration page
283
+ *
284
+ * @return void
285
+ */
286
+ function wp_registration_page_redirect() {
287
+ global $pagenow;
288
+
289
+ if ( ! is_admin() && $pagenow == 'wp-login.php' && isset( $_GET['action'] ) && $_GET['action'] == 'register' ) {
290
+
291
+ if ( wpuf_get_option( 'register_link_override', 'wpuf_profile' ) != 'on' ) {
292
+ return;
293
+ }
294
+
295
+ $reg_page = get_permalink( wpuf_get_option( 'reg_override_page', 'wpuf_profile' ) );
296
+ wp_redirect( $reg_page );
297
+ exit;
298
+ }
299
+ }
300
+
301
+ /**
302
+ * Show errors on the form
303
+ *
304
+ * @return void
305
+ */
306
+ function show_errors() {
307
+ if ( $this->registration_errors ) {
308
+ foreach ($this->registration_errors as $error) {
309
+ echo '<div class="wpuf-error">';
310
+ _e( $error,'wpuf' );
311
+ echo '</div>';
312
+ }
313
+ }
314
+ }
315
+
316
+ /**
317
+ * Show messages on the form
318
+ *
319
+ * @return void
320
+ */
321
+ function show_messages() {
322
+ if ( $this->messages ) {
323
+ foreach ($this->messages as $message) {
324
+ printf( '<div class="wpuf-message">%s</div>', $message );
325
+ }
326
+ }
327
+ }
328
+
329
+ /**
330
+ * Get a posted value for showing in the form field
331
+ *
332
+ * @param string $key
333
+ * @return string
334
+ */
335
+ public static function get_posted_value( $key ) {
336
+ if ( isset( $_REQUEST[$key] ) ) {
337
+ return esc_attr( $_REQUEST[$key] );
338
+ }
339
+
340
+ return '';
341
+ }
342
+
343
+ }
includes/free/loader.php CHANGED
@@ -102,6 +102,7 @@ class WPUF_Free_Loader extends WPUF_Pro_Prompt {
102
 
103
  <p>
104
  <a href="<?php echo self::get_pro_url(); ?>" target="_blank" class="button-primary"><?php _e( 'Upgrade to Pro Version', 'wpuf' ); ?></a>
 
105
  </p>
106
  </div>
107
  <?php
@@ -122,6 +123,7 @@ class WPUF_Free_Loader extends WPUF_Pro_Prompt {
122
 
123
  <p>
124
  <a href="<?php echo self::get_pro_url(); ?>" target="_blank" class="button-primary"><?php _e( 'Upgrade to Pro Version', 'wpuf' ); ?></a>
 
125
  </p>
126
  </div>
127
 
@@ -133,25 +135,25 @@ class WPUF_Free_Loader extends WPUF_Pro_Prompt {
133
 
134
  if ( $current_screen->id == 'user-frontend_page_wpuf-settings' ) {
135
  ?>
136
- <script type="text/javascript">
137
  jQuery(function($){
138
  $('#wpuf_profile').find('input, select').each(function(i, el){ $(el).attr('disabled','disabled'); });
139
  });
140
- </script>
141
  <?php
142
  }
143
  }
144
 
145
  function settings_login_prompt( $fields ) {
146
 
147
- $new_field = array(
148
- 'name' => 'something',
149
- 'label' => __( 'Pro Feature', 'wpuf' ),
150
- 'desc' => 'These Features are ' . self::get_pro_prompt_text() . ' Only.',
151
- 'type' => 'html',
152
- );
153
 
154
- array_unshift( $fields['wpuf_profile'], $new_field );
155
 
156
  return $fields;
157
  }
102
 
103
  <p>
104
  <a href="<?php echo self::get_pro_url(); ?>" target="_blank" class="button-primary"><?php _e( 'Upgrade to Pro Version', 'wpuf' ); ?></a>
105
+ <a href="https://wedevs.com/docs/wp-user-frontend-pro/registration-forms/" target="_blank" class="button"><?php _e( 'Learn more about Registration', 'wpuf' ); ?></a>
106
  </p>
107
  </div>
108
  <?php
123
 
124
  <p>
125
  <a href="<?php echo self::get_pro_url(); ?>" target="_blank" class="button-primary"><?php _e( 'Upgrade to Pro Version', 'wpuf' ); ?></a>
126
+ <a href="https://wedevs.com/docs/wp-user-frontend-pro/subscription-payment/coupons/" target="_blank" class="button"><?php _e( 'Learn more about Coupons', 'wpuf' ); ?></a>
127
  </p>
128
  </div>
129
 
135
 
136
  if ( $current_screen->id == 'user-frontend_page_wpuf-settings' ) {
137
  ?>
138
+ <!-- <script type="text/javascript">
139
  jQuery(function($){
140
  $('#wpuf_profile').find('input, select').each(function(i, el){ $(el).attr('disabled','disabled'); });
141
  });
142
+ </script> -->
143
  <?php
144
  }
145
  }
146
 
147
  function settings_login_prompt( $fields ) {
148
 
149
+ // $new_field = array(
150
+ // 'name' => 'something',
151
+ // 'label' => __( 'Pro Feature', 'wpuf' ),
152
+ // 'desc' => 'These Features are ' . self::get_pro_prompt_text() . ' Only.',
153
+ // 'type' => 'html',
154
+ // );
155
 
156
+ // array_unshift( $fields['wpuf_profile'], $new_field );
157
 
158
  return $fields;
159
  }
includes/free/post-form-templates/woocommerce.php CHANGED
@@ -257,6 +257,7 @@ Edit URL: %editlink%',
257
  $this->update_reviews( $post_id );
258
  $this->update_price( $post_id );
259
  $this->update_gallery_images( $post_id );
 
260
  }
261
 
262
  /**
@@ -302,4 +303,19 @@ Edit URL: %editlink%',
302
  $images = get_post_meta( $post_id, '_product_image' );
303
  update_post_meta( $post_id, '_product_image_gallery', implode(',', $images) );
304
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
305
  }
257
  $this->update_reviews( $post_id );
258
  $this->update_price( $post_id );
259
  $this->update_gallery_images( $post_id );
260
+ $this->update_meta( $post_id );
261
  }
262
 
263
  /**
303
  $images = get_post_meta( $post_id, '_product_image' );
304
  update_post_meta( $post_id, '_product_image_gallery', implode(',', $images) );
305
  }
306
+
307
+ /**
308
+ * Fix for visibily not updating from frontend post
309
+ *
310
+ * @param int $post_id
311
+ * @return void
312
+ */
313
+ public function update_meta( $post_id ) {
314
+
315
+ $visibility = get_post_meta( $post_id, '_visibility', true );
316
+
317
+ $product = wc_get_product( $post_id );
318
+ $product->set_catalog_visibility( $visibility );
319
+ $product->save();
320
+ }
321
  }
includes/upgrades/upgrade-2.1.9.php ADDED
@@ -0,0 +1,88 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Move form fields from meta to a post_type
5
+ *
6
+ * @return void
7
+ */
8
+ function wpuf_upgrade_2_1_9_form_fields() {
9
+ $posts = get_posts( array(
10
+ 'post_type' => array( 'wpuf_forms', 'wpuf_profile' ),
11
+ 'numberposts' => '-1'
12
+ ) );
13
+
14
+ if ( !$posts ) {
15
+ return;
16
+ }
17
+
18
+ foreach ($posts as $key => $post) {
19
+ $posts_meta = get_post_meta( $post->ID, 'wpuf_form', true );
20
+ $posts_meta = is_array( $posts_meta ) ? $posts_meta : array();
21
+
22
+ foreach ($posts_meta as $key => $post_meta) {
23
+ $post_meta['wpuf_cond'] = array();
24
+
25
+ // if key empty then replace by its value
26
+ if ( array_key_exists('options', $post_meta ) ) {
27
+ foreach ($post_meta['options'] as $key => $value) {
28
+ $post_meta['options'][$value] = $value;
29
+ unset( $post_meta['options'][$key] );
30
+ }
31
+ }
32
+
33
+ wpuf_insert_form_field( $post->ID, $post_meta, null, $key );
34
+ delete_post_meta( $post->ID, 'wpuf_form' );
35
+ }
36
+ }
37
+ }
38
+
39
+ /**
40
+ * Move subscriptions to post type from custom table
41
+ *
42
+ * @return void
43
+ */
44
+ function wpuf_upgrade_2_1_9_subscription() {
45
+ global $wpdb;
46
+
47
+ $table = $wpdb->prefix . 'wpuf_subscription';
48
+ $results = $wpdb->get_results( "SELECT name, description, count, duration, cost FROM $table" );
49
+
50
+ if ( !$results ) {
51
+ return;
52
+ }
53
+
54
+ $post_type = WPUF_Subscription::init()->get_all_post_type();
55
+
56
+ foreach ( $results as $key => $result ) {
57
+ $args = array(
58
+ 'post_title' => $result->name,
59
+ 'post_content' => $result->description,
60
+ 'post_status' => 'publish',
61
+ 'post_type' => 'wpuf_subscription'
62
+ );
63
+
64
+ $post_ID = wp_insert_post( $args );
65
+
66
+ if ( $post_ID ) {
67
+ foreach ( $post_type as $key => $name ) {
68
+ $post_type[$key] = $result->count;
69
+ }
70
+
71
+ $post = array(
72
+ 'cost' => $result->cost,
73
+ 'duration' => $result->duration,
74
+ 'recurring_pay' => 'no',
75
+ 'trial_period' => '',
76
+ 'post_type_name' => $post_type
77
+ );
78
+
79
+ WPUF_Subscription::init()->update_user_subscription_meta( $post_ID, $post );
80
+ }
81
+ }
82
+
83
+ $sql = "DROP TABLE IF_EXISTS $table";
84
+ $wpdb->query($sql);
85
+ }
86
+
87
+ wpuf_upgrade_2_1_9_form_fields();
88
+ wpuf_upgrade_2_1_9_subscription();
languages/wpuf.pot CHANGED
@@ -2,10 +2,10 @@
2
  # This file is distributed under the GPL2 or later.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: WP User Frontend 2.5.7\n"
6
  "Report-Msgid-Bugs-To: "
7
  "https://wedevs.com/support/forum/plugin-support/wp-user-frontend/\n"
8
- "POT-Creation-Date: 2017-09-10 18:57:48+00:00\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=utf-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
@@ -18,6 +18,298 @@ msgstr ""
18
  msgid "WP User Frontend - Add-Ons"
19
  msgstr ""
20
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
21
  #: admin/class-tools.php:33
22
  msgid "Form Export"
23
  msgstr ""
@@ -137,10 +429,6 @@ msgstr ""
137
  msgid "Delete Coupons"
138
  msgstr ""
139
 
140
- #: admin/class-tools.php:378 admin/settings.php:73 admin/transactions.php:2
141
- msgid "Transactions"
142
- msgstr ""
143
-
144
  #: admin/class-tools.php:381
145
  msgid "This tool will delete all the transactions from the transaction table."
146
  msgstr ""
@@ -154,228 +442,75 @@ msgstr ""
154
  msgid "Add fields by dragging the fields from the right sidebar to this area."
155
  msgstr ""
156
 
157
- #: admin/form-builder/assets/js/components/builder-stage/template.php:28
158
- #: assets/js-templates/form-components.php:29
159
  msgid "is available in Pro Version"
160
  msgstr ""
161
 
162
- #: admin/form-builder/assets/js/components/builder-stage/template.php:52
163
- #: assets/js-templates/form-components.php:53
164
  msgid "Hidden Fields"
165
  msgstr ""
166
 
167
- #: admin/form-builder/assets/js/components/builder-stage/template.php:59
168
- #: assets/js-templates/form-components.php:60
169
  msgid "key"
170
  msgstr ""
171
 
172
- #: admin/form-builder/assets/js/components/builder-stage/template.php:59
173
- #: assets/js-templates/form-components.php:60
174
  msgid "value"
175
  msgstr ""
176
 
177
  #: admin/form-builder/assets/js/components/field-option-data/template.php:5
178
- #: admin/template.php:244 assets/js-templates/form-components.php:101
179
  msgid "Show values"
180
  msgstr ""
181
 
182
  #: admin/form-builder/assets/js/components/field-option-data/template.php:16
183
  #: admin/template.php:247 admin/template.php:305
184
- #: assets/js-templates/form-components.php:112
185
  msgid "Label"
186
  msgstr ""
187
 
188
  #: admin/form-builder/assets/js/components/field-option-data/template.php:20
189
  #: admin/template.php:247 admin/template.php:305
190
- #: assets/js-templates/form-components.php:116
191
  msgid "Value"
192
  msgstr ""
193
 
194
  #: admin/form-builder/assets/js/components/field-option-data/template.php:68
195
- #: assets/js-templates/form-components.php:164
196
  msgid "Clear Selection"
197
  msgstr ""
198
 
199
  #: admin/form-builder/assets/js/components/field-option-pro-feature-alert/template.php:4
200
- #: assets/js-templates/form-components.php:172
201
  msgid "Available in Pro Version"
202
  msgstr ""
203
 
204
  #: admin/form-builder/assets/js/components/field-select/template.php:7
205
- #: assets/js-templates/form-components.php:250
206
  msgid "Select an option"
207
  msgstr ""
208
 
209
  #: admin/form-builder/assets/js/components/form-featured_image/template.php:5
210
  #: admin/form-builder/assets/js/components/form-image_upload/template.php:5
211
- #: assets/js-templates/form-components.php:375
212
- #: assets/js-templates/form-components.php:441 class/render-form.php:1505
213
  msgid "Select Image"
214
  msgstr ""
215
 
216
- #: admin/form-builder/assets/js/components/form-notification/template.php:3
217
- #: assets/js-templates/form-components.php:473
218
- msgid "Add Notification"
219
- msgstr ""
220
-
221
- #: admin/form-builder/assets/js/components/form-notification/template.php:13
222
- #: admin/form.php:767 admin/html/form-settings-post.php:16
223
- #: admin/subscription.php:205 admin/template-post.php:167
224
- #: assets/js-templates/form-components.php:483
225
- #: includes/free/edit-profile.php:97
226
- msgid "Name"
227
- msgstr ""
228
-
229
- #: admin/form-builder/assets/js/components/form-notification/template.php:14
230
- #: admin/form-builder/assets/js/components/form-notification/template.php:62
231
- #: assets/js-templates/form-components.php:484
232
- #: assets/js-templates/form-components.php:532
233
- #: includes/free/form-element.php:228 includes/free/form-element.php:263
234
- msgid "Subject"
235
- msgstr ""
236
-
237
- #: admin/form-builder/assets/js/components/form-notification/template.php:29
238
- #: admin/post-forms-list-table.php:394
239
- #: assets/js-templates/form-components.php:499
240
- msgid "Duplicate"
241
- msgstr ""
242
-
243
- #: admin/form-builder/assets/js/components/form-notification/template.php:30
244
- #: admin/form-builder/views/form-builder.php:9 admin/settings.php:77
245
- #: assets/js-templates/form-components.php:500
246
- msgid "Settings"
247
- msgstr ""
248
-
249
- #: admin/form-builder/assets/js/components/form-notification/template.php:34
250
- #: assets/js-templates/form-components.php:504
251
- msgid "No notifications found"
252
- msgstr ""
253
-
254
- #: admin/form-builder/assets/js/components/form-notification/template.php:49
255
- #: assets/js-templates/form-components.php:519
256
- #: includes/free/form-element.php:221 includes/free/form-element.php:258
257
- msgid "To"
258
- msgstr ""
259
-
260
- #: admin/form-builder/assets/js/components/form-notification/template.php:55
261
- #: assets/js-templates/form-components.php:525
262
- msgid "Reply To"
263
- msgstr ""
264
-
265
- #: admin/form-builder/assets/js/components/form-notification/template.php:68
266
- #: assets/js-templates/form-components.php:538
267
- msgid "Email Message"
268
- msgstr ""
269
-
270
- #: admin/form-builder/assets/js/components/form-notification/template.php:74
271
- #: assets/js-templates/form-components.php:544
272
- msgid " Advanced"
273
- msgstr ""
274
-
275
- #: admin/form-builder/assets/js/components/form-notification/template.php:79
276
- #: assets/js-templates/form-components.php:549
277
- msgid "From Name"
278
- msgstr ""
279
-
280
- #: admin/form-builder/assets/js/components/form-notification/template.php:85
281
- #: assets/js-templates/form-components.php:555
282
- msgid "From Address"
283
- msgstr ""
284
-
285
- #: admin/form-builder/assets/js/components/form-notification/template.php:93
286
- #: assets/js-templates/form-components.php:563
287
- msgid "CC"
288
- msgstr ""
289
-
290
- #: admin/form-builder/assets/js/components/form-notification/template.php:99
291
- #: assets/js-templates/form-components.php:569
292
- msgid "BCC"
293
- msgstr ""
294
-
295
- #: admin/form-builder/assets/js/components/form-notification/template.php:109
296
- #: admin/subscription.php:231 assets/js-templates/form-components.php:579
297
- #: class/render-form.php:1517 class/transactions-list-table.php:114
298
- #: class/transactions-list-table.php:175 class/upload.php:171
299
- #: includes/free/edit-user.php:100 templates/dashboard/posts.php:160
300
- #: templates/dashboard.php:114
301
- msgid "Delete"
302
- msgstr ""
303
-
304
- #: admin/form-builder/assets/js/components/form-notification/template.php:110
305
- #: assets/js-templates/form-components.php:580
306
- msgid "Done"
307
- msgstr ""
308
-
309
  #: admin/form-builder/assets/js/components/form-post_content/template.php:4
310
- #: assets/js-templates/form-components.php:591 class/render-form.php:926
311
  msgid "Insert Photo"
312
  msgstr ""
313
 
314
  #: admin/form-builder/assets/js/components/form-taxonomy/template.php:12
315
- #: assets/js-templates/form-components.php:701
316
  msgid "— Select —"
317
  msgstr ""
318
 
319
- #: admin/form-builder/assets/js/components/integration/template.php:11
320
- #: assets/js-templates/form-components.php:790
321
- msgid "Premium Feature"
322
- msgstr ""
323
-
324
- #: admin/form-builder/assets/js/components/integration/template.php:16
325
- #: assets/js-templates/form-components.php:795
326
- msgid "Toggle panel"
327
- msgstr ""
328
-
329
- #: admin/form-builder/assets/js/components/integration/template.php:28
330
- #: assets/js-templates/form-components.php:807
331
- msgid "This feature is available on the premium version only."
332
- msgstr ""
333
-
334
- #: admin/form-builder/assets/js/components/integration/template.php:29
335
- #: assets/js-templates/form-components.php:808 includes/free/loader.php:165
336
- msgid "Upgrade to Pro"
337
- msgstr ""
338
-
339
- #: admin/form-builder/assets/js/components/integration/template.php:37
340
- #: assets/js-templates/form-components.php:816
341
- msgid "No integration found."
342
- msgstr ""
343
-
344
- #: admin/form-builder/assets/js/components/merge-tags/template.php:8
345
- #: assets/js-templates/form-components.php:828
346
- msgid "Form Fields"
347
- msgstr ""
348
-
349
- #: admin/form-builder/assets/js/components/merge-tags/template.php:17
350
- #: assets/js-templates/form-components.php:837
351
- msgid "first"
352
- msgstr ""
353
-
354
- #: admin/form-builder/assets/js/components/merge-tags/template.php:18
355
- #: assets/js-templates/form-components.php:838
356
- msgid "middle"
357
- msgstr ""
358
-
359
- #: admin/form-builder/assets/js/components/merge-tags/template.php:19
360
- #: assets/js-templates/form-components.php:839
361
- msgid "last"
362
- msgstr ""
363
-
364
- #: admin/form-builder/assets/js/components/merge-tags/template.php:27
365
- #: assets/js-templates/form-components.php:847
366
- msgid "No fields available"
367
- msgstr ""
368
-
369
- #: admin/form-builder/assets/js/components/modal/template.php:4
370
- #: admin/html/modal.php:4 assets/js-templates/form-components.php:882
371
- msgid "Modal window. Press escape to close."
372
- msgstr ""
373
-
374
- #: admin/form-builder/assets/js/components/modal/template.php:5
375
- #: admin/html/modal.php:5 assets/js-templates/form-components.php:883
376
- msgid "Close modal window"
377
- msgstr ""
378
-
379
  #: admin/form-builder/class-wpuf-admin-form-builder-ajax.php:29
380
  msgid "Unauthorized operation"
381
  msgstr ""
@@ -428,10 +563,10 @@ msgid "This field must contain at least one choice"
428
  msgstr ""
429
 
430
  #: admin/form-builder/class-wpuf-admin-form-builder.php:328
431
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:377
432
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:417
433
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:473
434
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:528
435
  msgid "Option"
436
  msgstr ""
437
 
@@ -455,7 +590,7 @@ msgstr ""
455
  msgid "Get the Pro version"
456
  msgstr ""
457
 
458
- #: admin/form-builder/class-wpuf-admin-form-builder.php:334 admin/form.php:751
459
  msgid "Select"
460
  msgstr ""
461
 
@@ -497,26 +632,6 @@ msgstr ""
497
  msgid "Required"
498
  msgstr ""
499
 
500
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:66
501
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:444
502
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:499
503
- #: admin/post-forms-list-table.php:345 admin/settings-options.php:83
504
- #: admin/settings-options.php:158 admin/settings-options.php:169
505
- #: admin/settings-options.php:258 admin/subscription.php:145
506
- #: admin/template.php:70 includes/free/form-element.php:474
507
- msgid "Yes"
508
- msgstr ""
509
-
510
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:67
511
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:445
512
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:500
513
- #: admin/post-forms-list-table.php:346 admin/settings-options.php:84
514
- #: admin/settings-options.php:159 admin/settings-options.php:170
515
- #: admin/settings-options.php:259 admin/subscription.php:147
516
- #: admin/template.php:71 includes/free/form-element.php:475
517
- msgid "No"
518
- msgstr ""
519
-
520
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:73
521
  msgid ""
522
  "Check this option to mark the field required. A form will not submit unless "
@@ -524,311 +639,321 @@ msgid ""
524
  msgstr ""
525
 
526
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:78
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
527
  #: admin/template.php:99
528
  msgid "CSS Class Name"
529
  msgstr ""
530
 
531
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:82
532
  msgid "Provide a container class name for this field."
533
  msgstr ""
534
 
535
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:89
536
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:617
537
  #: admin/template.php:82 admin/template.php:575
538
  msgid "Meta Key"
539
  msgstr ""
540
 
541
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:93
542
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:621
543
  #: admin/template.php:83 admin/template.php:576
544
  msgid "Name of the meta key this field will save to"
545
  msgstr ""
546
 
547
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:111
548
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:181
549
  #: admin/template.php:126 admin/template.php:186
550
  msgid "Placeholder text"
551
  msgstr ""
552
 
553
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:115
554
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:185
555
  #: admin/template.php:127
556
  msgid "Text for HTML5 placeholder attribute"
557
  msgstr ""
558
 
559
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:120
560
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:193
561
  #: admin/template.php:131 admin/template.php:191
562
  msgid "Default value"
563
  msgstr ""
564
 
565
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:124
566
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:197
567
  #: admin/template.php:132
568
  msgid "The default value this field will have"
569
  msgstr ""
570
 
571
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:129
572
  #: admin/template.php:136
573
  msgid "Size"
574
  msgstr ""
575
 
576
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:134
577
  #: admin/template.php:137
578
  msgid "Size of this input field"
579
  msgstr ""
580
 
581
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:141
582
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:216
583
  #: admin/template.php:141 admin/template.php:206
584
  msgid "Word Restriction"
585
  msgstr ""
586
 
587
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:145
588
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:220
589
  #: admin/template.php:145 admin/template.php:210
590
  msgid "Numebr of words the author to be restricted in"
591
  msgstr ""
592
 
593
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:163
594
  #: admin/template.php:176
595
  msgid "Rows"
596
  msgstr ""
597
 
598
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:167
599
  msgid "Number of rows in textarea"
600
  msgstr ""
601
 
602
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:172
603
  #: admin/template.php:181
604
  msgid "Columns"
605
  msgstr ""
606
 
607
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:176
608
  msgid "Number of columns in textarea"
609
  msgstr ""
610
 
611
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:202
612
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:291
613
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:298
614
  #: admin/template.php:196
615
  msgid "Textarea"
616
  msgstr ""
617
 
618
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:205
619
  #: admin/template.php:199
620
  msgid "Normal"
621
  msgstr ""
622
 
623
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:206
624
  #: admin/template.php:200
625
  msgid "Rich textarea"
626
  msgstr ""
627
 
628
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:207
629
  #: admin/template.php:201
630
  msgid "Teeny Rich textarea"
631
  msgstr ""
632
 
633
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:237
634
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:378
635
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:418
636
  msgid "- select -"
637
  msgstr ""
638
 
639
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:255
640
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:262
641
  msgid "Text"
642
  msgstr ""
643
 
644
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:328
645
  #: admin/template.php:398 admin/template.php:422 admin/template.php:454
646
  #: admin/template.php:486 templates/dashboard/posts.php:84
647
- #: templates/dashboard.php:37
648
  msgid "Options"
649
  msgstr ""
650
 
651
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:333
652
  msgid "Add options for the form field"
653
  msgstr ""
654
 
655
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:352
656
  #: admin/template.php:449 admin/template.php:481
657
  msgid "Select Text"
658
  msgstr ""
659
 
660
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:356
661
  #: admin/template.php:438 admin/template.php:470
662
  msgid ""
663
  "First element of the select dropdown. Leave this empty if you don't want to "
664
  "show this field"
665
  msgstr ""
666
 
667
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:364
668
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:371
669
  #: admin/template-post.php:156
670
  msgid "Dropdown"
671
  msgstr ""
672
 
673
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:404
674
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:411
675
- #: admin/form.php:752 admin/template-post.php:157
676
  msgid "Multi Select"
677
  msgstr ""
678
 
679
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:441
680
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:496
681
  msgid "Show in inline list"
682
  msgstr ""
683
 
684
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:451
685
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:506
686
  msgid "Show this option in an inline list"
687
  msgstr ""
688
 
689
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:459
690
  msgid "Radio"
691
  msgstr ""
692
 
693
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:466
694
  msgid "Radio Field"
695
  msgstr ""
696
 
697
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:514
698
- #: admin/form.php:753 admin/template-post.php:158
699
  msgid "Checkbox"
700
  msgstr ""
701
 
702
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:521
703
  msgid "Checkbox Field"
704
  msgstr ""
705
 
706
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:549
707
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:556
708
  msgid "URL"
709
  msgstr ""
710
 
711
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:584
712
  msgid "Email Address"
713
  msgstr ""
714
 
715
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:591
716
- #: admin/html/form-settings-post.php:17 class/transactions-list-table.php:48
717
- #: includes/free/edit-user.php:152
718
  msgid "Email"
719
  msgstr ""
720
 
721
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:626
722
  #: admin/template.php:582
723
  msgid "Meta Value"
724
  msgstr ""
725
 
726
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:630
727
  #: admin/template.php:583
728
  msgid "Enter the meta value"
729
  msgstr ""
730
 
731
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:636
732
  msgid "Hidden Field"
733
  msgstr ""
734
 
735
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:666
736
- #: admin/form.php:670 admin/template-post.php:105 admin/template.php:646
737
  msgid "Max. file size"
738
  msgstr ""
739
 
740
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:670
741
- #: admin/form.php:674 admin/template-post.php:93 admin/template.php:634
742
  msgid "Enter maximum upload size limit in KB"
743
  msgstr ""
744
 
745
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:675
746
  #: admin/template.php:651
747
  msgid "Max. files"
748
  msgstr ""
749
 
750
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:679
751
  #: admin/template.php:635
752
  msgid "Number of images can be uploaded"
753
  msgstr ""
754
 
755
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:685
756
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:692
757
  #: includes/free/form-element.php:8
758
  msgid "Image Upload"
759
  msgstr ""
760
 
761
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:717
762
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:798
763
  #: admin/template.php:544 admin/template.php:604 admin/template.php:683
764
  #: class/upload.php:164 templates/dashboard/posts.php:74
765
- #: templates/dashboard.php:27 wpuf-functions.php:726
766
  msgid "Title"
767
  msgstr ""
768
 
769
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:721
770
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:802
771
  msgid "Title of the section"
772
  msgstr ""
773
 
774
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:726
775
- #: admin/subscription.php:206 admin/template.php:609 class/upload.php:166
776
- #: wpuf-functions.php:732
777
- msgid "Description"
778
- msgstr ""
779
-
780
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:730
781
  msgid "Some details text about the section"
782
  msgstr ""
783
 
784
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:736
785
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:742
786
  msgid "Section Break"
787
  msgstr ""
788
 
789
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:743
790
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:779
791
  msgid "Some description about this section"
792
  msgstr ""
793
 
794
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:762
795
  #: admin/template.php:549
796
  msgid "HTML Codes"
797
  msgstr ""
798
 
799
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:766
800
  msgid "Paste your HTML codes, WordPress shortcodes will also work here"
801
  msgstr ""
802
 
803
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:772
804
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:778
805
  msgid "Custom HTML"
806
  msgstr ""
807
 
808
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:810
809
  #: admin/template.php:703
810
  msgid "Enable noCaptcha"
811
  msgstr ""
812
 
813
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:811
814
  #: admin/template.php:699
815
  msgid "Enable Invisible reCaptcha"
816
  msgstr ""
817
 
818
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:816
819
  msgid "Select reCaptcha type"
820
  msgstr ""
821
 
822
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:822
823
  #: includes/free/form-element.php:31
824
  msgid "reCaptcha"
825
  msgstr ""
826
 
827
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:826
828
  msgid "Site key and Secret key"
829
  msgstr ""
830
 
831
- #: admin/form-builder/class-wpuf-form-builder-field-settings.php:828
832
  msgid ""
833
  "You need to set Site key and Secret key in <a href=\"%s\" "
834
  "target=\"_blank\">Settings</a> in order to use \"Recaptcha\" field. <a "
@@ -919,14 +1044,6 @@ msgstr ""
919
  msgid "Add New Form"
920
  msgstr ""
921
 
922
- #: admin/form.php:74 admin/form.php:112 admin/installer.php:75
923
- #: admin/post-forms-list-table.php:392 admin/subscription.php:227
924
- #: class/subscription.php:360 includes/free/admin/shortcode-button.php:90
925
- #: includes/free/edit-user.php:99 templates/dashboard/posts.php:150
926
- #: templates/dashboard.php:104
927
- msgid "Edit"
928
- msgstr ""
929
-
930
  #: admin/form.php:75 admin/form.php:113
931
  msgid "Edit Form"
932
  msgstr ""
@@ -996,8 +1113,8 @@ msgstr ""
996
  msgid "Taxonomies"
997
  msgstr ""
998
 
999
- #: admin/form.php:430 admin/html/form-settings-post.php:28
1000
- #: class/render-form.php:630
1001
  msgid "Save Draft"
1002
  msgstr ""
1003
 
@@ -1005,110 +1122,110 @@ msgstr ""
1005
  msgid "Post Title"
1006
  msgstr ""
1007
 
1008
- #: admin/form.php:577 admin/template-post.php:41
1009
  msgid "Enable Image Insertion"
1010
  msgstr ""
1011
 
1012
- #: admin/form.php:579 admin/template-post.php:47
1013
  msgid "Enable image upload in post area"
1014
  msgstr ""
1015
 
1016
- #: admin/form.php:588 admin/form.php:595
1017
  msgid "Post Body"
1018
  msgstr ""
1019
 
1020
- #: admin/form.php:632 admin/form.php:639
1021
  msgid "Excerpt"
1022
  msgstr ""
1023
 
1024
- #: admin/form.php:680 admin/form.php:687 templates/dashboard/posts.php:71
1025
- #: templates/dashboard.php:24
1026
  msgid "Featured Image"
1027
  msgstr ""
1028
 
1029
- #: admin/form.php:714 admin/form.php:720
1030
  msgid "Tags"
1031
  msgstr ""
1032
 
1033
- #: admin/form.php:748 admin/template-post.php:154
1034
  msgid "Type"
1035
  msgstr ""
1036
 
1037
- #: admin/form.php:754 admin/template-post.php:159
1038
  msgid "Text Input"
1039
  msgstr ""
1040
 
1041
- #: admin/form.php:755 admin/template-post.php:160
1042
  msgid "Ajax"
1043
  msgstr ""
1044
 
1045
- #: admin/form.php:764 admin/template-post.php:165
1046
  msgid "Order By"
1047
  msgstr ""
1048
 
1049
- #: admin/form.php:768 admin/template-post.php:168
1050
  msgid "Term ID"
1051
  msgstr ""
1052
 
1053
- #: admin/form.php:769 admin/template-post.php:169
1054
  msgid "Slug"
1055
  msgstr ""
1056
 
1057
- #: admin/form.php:770 admin/template-post.php:170
1058
  msgid "Count"
1059
  msgstr ""
1060
 
1061
- #: admin/form.php:771 admin/template-post.php:171
1062
  msgid "Term Group"
1063
  msgstr ""
1064
 
1065
- #: admin/form.php:780 admin/template-post.php:176
1066
  msgid "Order"
1067
  msgstr ""
1068
 
1069
- #: admin/form.php:784 admin/template-post.php:178
1070
  msgid "ASC"
1071
  msgstr ""
1072
 
1073
- #: admin/form.php:785 admin/template-post.php:179
1074
  msgid "DESC"
1075
  msgstr ""
1076
 
1077
- #: admin/form.php:794 admin/template-post.php:184
1078
  msgid "Selection Type"
1079
  msgstr ""
1080
 
1081
- #: admin/form.php:797 admin/template-post.php:186
1082
  msgid "Exclude"
1083
  msgstr ""
1084
 
1085
- #: admin/form.php:798 admin/template-post.php:187
1086
  msgid "Include"
1087
  msgstr ""
1088
 
1089
- #: admin/form.php:799 admin/template-post.php:188
1090
  msgid "Child of"
1091
  msgstr ""
1092
 
1093
- #: admin/form.php:808
1094
  msgid "Selection Terms"
1095
  msgstr ""
1096
 
1097
- #: admin/form.php:812 admin/template-post.php:194
1098
  msgid ""
1099
  "Enter the term IDs as comma separated (without space) to exclude/include in "
1100
  "the form."
1101
  msgstr ""
1102
 
1103
- #: admin/form.php:820 admin/template-post.php:204
1104
  msgid "This taxonomy is a WooCommerce attribute"
1105
  msgstr ""
1106
 
1107
- #: admin/form.php:831 admin/template-post.php:216
1108
  msgid "Visible on product page"
1109
  msgstr ""
1110
 
1111
- #: admin/form.php:879
1112
  msgid "Post Forms must have either Post Title, Post Body or Excerpt field"
1113
  msgstr ""
1114
 
@@ -1137,7 +1254,7 @@ msgid "Where the labels of the form should display"
1137
  msgstr ""
1138
 
1139
  #: admin/html/form-settings-post-edit.php:4
1140
- #: admin/html/form-settings-post.php:22
1141
  msgid "Post updated successfully"
1142
  msgstr ""
1143
 
@@ -1154,32 +1271,32 @@ msgid "No Change"
1154
  msgstr ""
1155
 
1156
  #: admin/html/form-settings-post-edit.php:30
1157
- #: admin/html/form-settings-post.php:175 includes/free/form-element.php:373
1158
  msgid "Redirect To"
1159
  msgstr ""
1160
 
1161
  #: admin/html/form-settings-post-edit.php:35
1162
- #: admin/html/form-settings-post.php:180
1163
  msgid "Newly created post"
1164
  msgstr ""
1165
 
1166
  #: admin/html/form-settings-post-edit.php:36
1167
- #: admin/html/form-settings-post.php:181 includes/free/form-element.php:378
1168
  msgid "Same Page"
1169
  msgstr ""
1170
 
1171
  #: admin/html/form-settings-post-edit.php:37
1172
- #: admin/html/form-settings-post.php:182 includes/free/form-element.php:379
1173
  msgid "To a page"
1174
  msgstr ""
1175
 
1176
  #: admin/html/form-settings-post-edit.php:38
1177
- #: admin/html/form-settings-post.php:183 includes/free/form-element.php:380
1178
  msgid "To a custom URL"
1179
  msgstr ""
1180
 
1181
  #: admin/html/form-settings-post-edit.php:47
1182
- #: admin/html/form-settings-post.php:192 includes/free/form-element.php:389
1183
  msgid "After successfull submit, where the page will redirect to"
1184
  msgstr ""
1185
 
@@ -1188,12 +1305,12 @@ msgid "Post Update Message"
1188
  msgstr ""
1189
 
1190
  #: admin/html/form-settings-post-edit.php:60
1191
- #: admin/html/form-settings-post.php:205 includes/free/form-element.php:409
1192
  msgid "Page"
1193
  msgstr ""
1194
 
1195
  #: admin/html/form-settings-post-edit.php:75
1196
- #: admin/html/form-settings-post.php:220 includes/free/form-element.php:424
1197
  msgid "Custom URL"
1198
  msgstr ""
1199
 
@@ -1209,136 +1326,160 @@ msgstr ""
1209
  msgid "This page is restricted. Please Log in / Register to view this page."
1210
  msgstr ""
1211
 
1212
- #: admin/html/form-settings-post.php:21
1213
  msgid "Post saved"
1214
  msgstr ""
1215
 
1216
- #: admin/html/form-settings-post.php:27
1217
  msgid "Submit"
1218
  msgstr ""
1219
 
1220
- #: admin/html/form-settings-post.php:29
1221
  msgid "Preview"
1222
  msgstr ""
1223
 
1224
- #: admin/html/form-settings-post.php:37 admin/html/form-settings-post.php:41
1225
  msgid "Disable Subscription"
1226
  msgstr ""
1227
 
1228
- #: admin/html/form-settings-post.php:44
1229
  msgid ""
1230
  "If checked, any subscription and pay-per-post will be disabled on the form "
1231
  "and will take no effect."
1232
  msgstr ""
1233
 
1234
- #: admin/html/form-settings-post.php:49 admin/post-forms-list-table.php:297
1235
  msgid "Post Type"
1236
  msgstr ""
1237
 
1238
- #: admin/html/form-settings-post.php:74 admin/post-forms-list-table.php:298
1239
  msgid "Post Status"
1240
  msgstr ""
1241
 
1242
- #: admin/html/form-settings-post.php:88
1243
  msgid "Post Format"
1244
  msgstr ""
1245
 
1246
- #: admin/html/form-settings-post.php:91 admin/html/form-settings-post.php:114
1247
  msgid "- None -"
1248
  msgstr ""
1249
 
1250
- #: admin/html/form-settings-post.php:106
1251
  msgid "Default Post Category"
1252
  msgstr ""
1253
 
1254
- #: admin/html/form-settings-post.php:118
1255
  msgid ""
1256
  "If users are not allowed to choose any category, this category will be used "
1257
  "instead (if post type supports)"
1258
  msgstr ""
1259
 
1260
- #: admin/html/form-settings-post.php:123 admin/post-forms-list-table.php:299
1261
  msgid "Guest Post"
1262
  msgstr ""
1263
 
1264
- #: admin/html/form-settings-post.php:128
1265
  msgid "Enable Guest Post"
1266
  msgstr ""
1267
 
1268
- #: admin/html/form-settings-post.php:130
1269
  msgid "Unregistered users will be able to submit posts"
1270
  msgstr ""
1271
 
1272
- #: admin/html/form-settings-post.php:135
 
 
 
 
1273
  msgid "User Details"
1274
  msgstr ""
1275
 
1276
- #: admin/html/form-settings-post.php:140
1277
  msgid "Require Name and Email address"
1278
  msgstr ""
1279
 
1280
- #: admin/html/form-settings-post.php:142
1281
  msgid ""
1282
  "If requires, users will be automatically registered to the site using the "
1283
  "name and email address"
1284
  msgstr ""
1285
 
1286
- #: admin/html/form-settings-post.php:147
1287
- msgid "Name Label"
1288
  msgstr ""
1289
 
1290
  #: admin/html/form-settings-post.php:152
 
 
 
 
 
 
 
 
 
 
 
 
1291
  msgid "Label text for name field"
1292
  msgstr ""
1293
 
1294
- #: admin/html/form-settings-post.php:157
1295
  msgid "E-Mail Label"
1296
  msgstr ""
1297
 
1298
- #: admin/html/form-settings-post.php:162
1299
  msgid "Label text for email field"
1300
  msgstr ""
1301
 
1302
- #: admin/html/form-settings-post.php:167 admin/settings-options.php:215
1303
  msgid "Unauthorized Message"
1304
  msgstr ""
1305
 
1306
- #: admin/html/form-settings-post.php:170 admin/settings-options.php:216
1307
  msgid "Not logged in users will see this message"
1308
  msgstr ""
1309
 
1310
- #: admin/html/form-settings-post.php:198
1311
  msgid "Message to show"
1312
  msgstr ""
1313
 
1314
- #: admin/html/form-settings-post.php:227
1315
  msgid "Comment Status"
1316
  msgstr ""
1317
 
1318
- #: admin/html/form-settings-post.php:230
1319
  msgid "Open"
1320
  msgstr ""
1321
 
1322
- #: admin/html/form-settings-post.php:231
1323
  msgid "Closed"
1324
  msgstr ""
1325
 
1326
- #: admin/html/form-settings-post.php:237
1327
  msgid "Submit Post Button text"
1328
  msgstr ""
1329
 
1330
- #: admin/html/form-settings-post.php:244
1331
  msgid "Post Draft"
1332
  msgstr ""
1333
 
1334
- #: admin/html/form-settings-post.php:249
1335
  msgid "Enable Saving as draft"
1336
  msgstr ""
1337
 
1338
- #: admin/html/form-settings-post.php:251
1339
  msgid "It will show a button to save as draft"
1340
  msgstr ""
1341
 
 
 
 
 
 
 
 
 
1342
  #: admin/html/modal.php:9
1343
  msgid "Select a Template"
1344
  msgstr ""
@@ -1355,6 +1496,50 @@ msgstr ""
1355
  msgid "This integration is not installed."
1356
  msgstr ""
1357
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1358
  #: admin/installer.php:27
1359
  msgid ""
1360
  "If you have not created <strong>WP User Frontend</strong> pages yet, you "
@@ -1390,7 +1575,7 @@ msgstr ""
1390
 
1391
  #: admin/installer.php:83 class/subscription.php:335 class/subscription.php:355
1392
  #: class/subscription.php:356 class/subscription.php:357
1393
- #: includes/free/admin/shortcode-button.php:98 wpuf-functions.php:1420
1394
  msgid "Subscription"
1395
  msgstr ""
1396
 
@@ -1399,7 +1584,7 @@ msgid "[wpuf_sub_pack]"
1399
  msgstr ""
1400
 
1401
  #: admin/installer.php:84 templates/dashboard/posts.php:81
1402
- #: templates/dashboard.php:34
1403
  msgid "Payment"
1404
  msgstr ""
1405
 
@@ -1427,7 +1612,7 @@ msgid ""
1427
  "necessary steps to move forward."
1428
  msgstr ""
1429
 
1430
- #: admin/installer.php:165
1431
  msgid "Registration"
1432
  msgstr ""
1433
 
@@ -1435,14 +1620,14 @@ msgstr ""
1435
  msgid "Sample Form"
1436
  msgstr ""
1437
 
1438
- #: admin/post-forms-list-table-view.php:4 admin/settings.php:57
1439
- msgid "Post Forms"
1440
- msgstr ""
1441
-
1442
  #: admin/post-forms-list-table-view.php:23
1443
  msgid "Search Forms"
1444
  msgstr ""
1445
 
 
 
 
 
1446
  #: admin/post-forms-list-table.php:44 wpuf-functions.php:61
1447
  msgid "Published"
1448
  msgstr ""
@@ -1477,28 +1662,32 @@ msgstr ""
1477
  msgid "Shortcode"
1478
  msgstr ""
1479
 
 
 
 
 
1480
  #: admin/post-forms-list-table.php:415 wpuf-functions.php:65
1481
  msgid "Draft"
1482
  msgstr ""
1483
 
1484
- #: admin/posting.php:66 class/asset-loader.php:51 class/render-form.php:1517
1485
- #: wpuf.php:447
1486
  msgid "Are you sure?"
1487
  msgstr ""
1488
 
1489
- #: admin/posting.php:72 class/asset-loader.php:57 wpuf.php:453
1490
  msgid "Allowed Files"
1491
  msgstr ""
1492
 
1493
- #: admin/posting.php:75 class/asset-loader.php:60 wpuf.php:456
1494
  msgid "Maximum number of files reached!"
1495
  msgstr ""
1496
 
1497
- #: admin/posting.php:76 class/asset-loader.php:61 wpuf.php:457
1498
  msgid "The file you have uploaded exceeds the file size limit. Please try again."
1499
  msgstr ""
1500
 
1501
- #: admin/posting.php:77 class/asset-loader.php:62 wpuf.php:458
1502
  msgid "You have uploaded an incorrect file type. Please try again."
1503
  msgstr ""
1504
 
@@ -1548,637 +1737,393 @@ msgstr ""
1548
  msgid "Payments"
1549
  msgstr ""
1550
 
1551
- #: admin/settings-options.php:49
 
 
 
 
1552
  msgid "Edit Page"
1553
  msgstr ""
1554
 
1555
- #: admin/settings-options.php:50
1556
  msgid "Select the page where [wpuf_edit] is located"
1557
  msgstr ""
1558
 
1559
- #: admin/settings-options.php:56
1560
  msgid "Default Post Owner"
1561
  msgstr ""
1562
 
1563
- #: admin/settings-options.php:57
1564
  msgid ""
1565
  "If guest post is enabled and user details are OFF, the posts are assigned "
1566
  "to this user"
1567
  msgstr ""
1568
 
1569
- #: admin/settings-options.php:64
1570
  msgid "Admin area access"
1571
  msgstr ""
1572
 
1573
- #: admin/settings-options.php:65
1574
  msgid "Allow you to block specific user role to WordPress admin area."
1575
  msgstr ""
1576
 
1577
- #: admin/settings-options.php:69
1578
  msgid "Admin Only"
1579
  msgstr ""
1580
 
1581
- #: admin/settings-options.php:70
1582
  msgid "Admins, Editors"
1583
  msgstr ""
1584
 
1585
- #: admin/settings-options.php:71
1586
  msgid "Admins, Editors, Authors"
1587
  msgstr ""
1588
 
1589
- #: admin/settings-options.php:72
1590
  msgid "Admins, Editors, Authors, Contributors"
1591
  msgstr ""
1592
 
1593
- #: admin/settings-options.php:73
1594
  msgid "Default"
1595
  msgstr ""
1596
 
1597
- #: admin/settings-options.php:78
1598
  msgid "Override the post edit link"
1599
  msgstr ""
1600
 
1601
- #: admin/settings-options.php:79
1602
  msgid ""
1603
  "Users see the edit link in post if s/he is capable to edit the post/page. "
1604
  "Selecting <strong>Yes</strong> will override the default WordPress edit "
1605
  "post link in frontend"
1606
  msgstr ""
1607
 
1608
- #: admin/settings-options.php:89
1609
  msgid "Custom Fields in post"
1610
  msgstr ""
1611
 
1612
- #: admin/settings-options.php:90
1613
  msgid "Show custom fields on post content area"
1614
  msgstr ""
1615
 
1616
- #: admin/settings-options.php:96
1617
  msgid "Load Scripts"
1618
  msgstr ""
1619
 
1620
- #: admin/settings-options.php:97
1621
  msgid "Load scripts/styles in all pages"
1622
  msgstr ""
1623
 
1624
- #: admin/settings-options.php:103
1625
  msgid "Insert Photo image size"
1626
  msgstr ""
1627
 
1628
- #: admin/settings-options.php:104
1629
  msgid ""
1630
  "Default image size of \"<strong>Insert Photo</strong>\" button in post "
1631
  "content area"
1632
  msgstr ""
1633
 
1634
- #: admin/settings-options.php:111
1635
- msgid "Insert Photo image type"
1636
- msgstr ""
1637
-
1638
- #: admin/settings-options.php:112
1639
- msgid ""
1640
- "Default image type of \"<strong>Insert Photo</strong>\" button in post "
1641
- "content area"
1642
- msgstr ""
1643
-
1644
- #: admin/settings-options.php:115
1645
- msgid "Image only"
1646
- msgstr ""
1647
-
1648
- #: admin/settings-options.php:116
1649
- msgid "Image with link"
1650
- msgstr ""
1651
-
1652
- #: admin/settings-options.php:122
1653
- msgid "Enable Image Caption"
1654
- msgstr ""
1655
-
1656
- #: admin/settings-options.php:123
1657
- msgid "Allow users to update image/video title, caption and description"
1658
- msgstr ""
1659
-
1660
- #: admin/settings-options.php:129
1661
- msgid "Default Post Form"
1662
- msgstr ""
1663
-
1664
- #: admin/settings-options.php:130
1665
- msgid "Fallback form for post editing if no associated form found"
1666
- msgstr ""
1667
-
1668
- #: admin/settings-options.php:136
1669
- msgid "reCAPTCHA Site Key"
1670
- msgstr ""
1671
-
1672
- #: admin/settings-options.php:140
1673
- msgid "reCAPTCHA Secret Key"
1674
- msgstr ""
1675
-
1676
- #: admin/settings-options.php:141
1677
- msgid ""
1678
- "<a target=\"_blank\" href=\"https://www.google.com/recaptcha/\">Register "
1679
- "here</a> to get reCaptcha Site and Secret keys."
1680
- msgstr ""
1681
-
1682
- #: admin/settings-options.php:145
1683
- msgid "Custom CSS codes"
1684
- msgstr ""
1685
-
1686
- #: admin/settings-options.php:146
1687
- msgid ""
1688
- "If you want to add your custom CSS code, it will be added on page header "
1689
- "wrapped with style tag"
1690
- msgstr ""
1691
-
1692
- #: admin/settings-options.php:153
1693
- msgid "Users can edit post?"
1694
- msgstr ""
1695
-
1696
- #: admin/settings-options.php:154
1697
- msgid "Users will be able to edit their own posts"
1698
- msgstr ""
1699
-
1700
- #: admin/settings-options.php:164
1701
- msgid "User can delete post?"
1702
- msgstr ""
1703
-
1704
- #: admin/settings-options.php:165
1705
- msgid "Users will be able to delete their own posts"
1706
- msgstr ""
1707
-
1708
- #: admin/settings-options.php:175
1709
- msgid "Pending Post Edit"
1710
- msgstr ""
1711
-
1712
- #: admin/settings-options.php:176
1713
- msgid "Disable post editing while post in \"pending\" status"
1714
- msgstr ""
1715
-
1716
- #: admin/settings-options.php:182
1717
- msgid "Posts per page"
1718
- msgstr ""
1719
-
1720
- #: admin/settings-options.php:183
1721
- msgid "How many posts will be listed in a page"
1722
- msgstr ""
1723
-
1724
- #: admin/settings-options.php:189
1725
- msgid "Show user bio"
1726
- msgstr ""
1727
-
1728
- #: admin/settings-options.php:190
1729
- msgid "Users biographical info will be shown"
1730
- msgstr ""
1731
-
1732
- #: admin/settings-options.php:196
1733
- msgid "Show post count"
1734
- msgstr ""
1735
-
1736
- #: admin/settings-options.php:197
1737
- msgid "Show how many posts are created by the user"
1738
- msgstr ""
1739
-
1740
- #: admin/settings-options.php:203
1741
- msgid "Show Featured Image"
1742
- msgstr ""
1743
-
1744
- #: admin/settings-options.php:204
1745
- msgid "Show featured image of the post"
1746
- msgstr ""
1747
-
1748
- #: admin/settings-options.php:209
1749
- msgid "Featured Image size"
1750
- msgstr ""
1751
-
1752
- #: admin/settings-options.php:223
1753
- msgid "Auto Login After Registration"
1754
- msgstr ""
1755
-
1756
- #: admin/settings-options.php:224
1757
- msgid "If enabled, users after registration will be logged in to the system"
1758
- msgstr ""
1759
-
1760
- #: admin/settings-options.php:230
1761
- msgid "Login/Registration override"
1762
- msgstr ""
1763
-
1764
- #: admin/settings-options.php:231
1765
- msgid ""
1766
- "If enabled, default login and registration forms will be overridden by WPUF "
1767
- "with pages below"
1768
- msgstr ""
1769
-
1770
- #: admin/settings-options.php:237
1771
- msgid "Registration Page"
1772
- msgstr ""
1773
-
1774
- #: admin/settings-options.php:238
1775
- msgid ""
1776
- "Select the page you want to use as registration page override <em>(should "
1777
- "have shortcode)</em>"
1778
- msgstr ""
1779
-
1780
- #: admin/settings-options.php:244
1781
- msgid "Login Page"
1782
- msgstr ""
1783
-
1784
- #: admin/settings-options.php:245
1785
- msgid "Select the page which contains <code>[wpuf-login]</code> shortcode"
1786
- msgstr ""
1787
-
1788
- #: admin/settings-options.php:253
1789
- msgid "Charge for posting"
1790
- msgstr ""
1791
-
1792
- #: admin/settings-options.php:254
1793
- msgid "Charge user for submitting a post"
1794
- msgstr ""
1795
-
1796
- #: admin/settings-options.php:264
1797
- msgid "Force pack purchase"
1798
- msgstr ""
1799
-
1800
- #: admin/settings-options.php:265
1801
- msgid "When active, users must have to buy a pack for posting"
1802
- msgstr ""
1803
-
1804
- #: admin/settings-options.php:269
1805
- msgid "Disable"
1806
- msgstr ""
1807
-
1808
- #: admin/settings-options.php:270
1809
- msgid "Enable"
1810
- msgstr ""
1811
-
1812
- #: admin/settings-options.php:275
1813
- msgid "Subscription Pack Page"
1814
- msgstr ""
1815
-
1816
- #: admin/settings-options.php:276
1817
- msgid "Select the page where <code>[wpuf_sub_pack]</code> located."
1818
- msgstr ""
1819
-
1820
- #: admin/settings-options.php:282
1821
- msgid "Subscription at registration"
1822
- msgstr ""
1823
-
1824
- #: admin/settings-options.php:283
1825
- msgid "Registration time redirect to subscription page"
1826
- msgstr ""
1827
-
1828
- #: admin/settings-options.php:288
1829
- msgid "Currency"
1830
- msgstr ""
1831
-
1832
- #: admin/settings-options.php:295
1833
- msgid "Currency Position"
1834
- msgstr ""
1835
-
1836
- #: admin/settings-options.php:299
1837
- msgid "Left"
1838
- msgstr ""
1839
-
1840
- #: admin/settings-options.php:300
1841
- msgid "Right"
1842
- msgstr ""
1843
-
1844
- #: admin/settings-options.php:301
1845
- msgid "Left with space"
1846
- msgstr ""
1847
-
1848
- #: admin/settings-options.php:302
1849
- msgid "Right with space"
1850
- msgstr ""
1851
-
1852
- #: admin/settings-options.php:307
1853
- msgid "Thousand Separator"
1854
- msgstr ""
1855
-
1856
- #: admin/settings-options.php:308
1857
- msgid "This sets the thousand separator of displayed prices."
1858
- msgstr ""
1859
-
1860
- #: admin/settings-options.php:316
1861
- msgid "Decimal Separator"
1862
- msgstr ""
1863
-
1864
- #: admin/settings-options.php:317
1865
- msgid "This sets the decimal separator of displayed prices."
1866
- msgstr ""
1867
-
1868
- #: admin/settings-options.php:324
1869
- msgid "Number of Decimals"
1870
- msgstr ""
1871
-
1872
- #: admin/settings-options.php:325
1873
- msgid "This sets the number of decimal points shown in displayed prices."
1874
- msgstr ""
1875
-
1876
- #: admin/settings-options.php:335 admin/subscription.php:207
1877
- #: class/transactions-list-table.php:43
1878
- msgid "Cost"
1879
  msgstr ""
1880
 
1881
- #: admin/settings-options.php:342
1882
- msgid "Enable demo/sandbox mode"
 
 
1883
  msgstr ""
1884
 
1885
- #: admin/settings-options.php:343
1886
- msgid "When sandbox mode is active, all payment gateway will be used in demo mode"
1887
  msgstr ""
1888
 
1889
- #: admin/settings-options.php:349
1890
- msgid "Payment Page"
1891
  msgstr ""
1892
 
1893
- #: admin/settings-options.php:350
1894
- msgid "This page will be used to process payment options"
1895
  msgstr ""
1896
 
1897
- #: admin/settings-options.php:356
1898
- msgid "Payment Success Page"
1899
  msgstr ""
1900
 
1901
- #: admin/settings-options.php:357 lib/gateway/bank.php:37
1902
- msgid "After payment users will be redirected here"
1903
  msgstr ""
1904
 
1905
- #: admin/settings-options.php:363
1906
- msgid "Payment Gateways"
1907
  msgstr ""
1908
 
1909
- #: admin/settings-options.php:364
1910
- msgid "Active payment gateways"
1911
  msgstr ""
1912
 
1913
- #: admin/settings-options.php:385
1914
- msgid ""
1915
- "Select profile/registration forms for user roles. These forms will be used "
1916
- "to populate extra edit profile fields in backend."
1917
  msgstr ""
1918
 
1919
- #: admin/settings-options.php:396
1920
- msgid " - select - "
 
 
1921
  msgstr ""
1922
 
1923
- #. Plugin Name of the plugin/theme
1924
- msgid "WP User Frontend"
1925
  msgstr ""
1926
 
1927
- #: admin/settings.php:55
1928
- msgid "User Frontend"
 
 
1929
  msgstr ""
1930
 
1931
- #: admin/settings.php:66 admin/weforms.php:2
1932
- msgid "weForms"
1933
  msgstr ""
1934
 
1935
- #: admin/settings.php:66
1936
- msgid "Contact Form"
1937
  msgstr ""
1938
 
1939
- #: admin/settings.php:69
1940
- msgid "Subscriptions"
1941
  msgstr ""
1942
 
1943
- #: admin/settings.php:74
1944
- msgid "Add-ons"
1945
  msgstr ""
1946
 
1947
- #: admin/settings.php:75 admin/tools.php:14
1948
- msgid "Tools"
1949
  msgstr ""
1950
 
1951
- #: admin/settings.php:76
1952
- msgid "Support"
1953
  msgstr ""
1954
 
1955
- #: admin/settings.php:285
1956
- msgid "Number of items per page:"
1957
  msgstr ""
1958
 
1959
- #: admin/subscription.php:52 admin/subscription.php:55
1960
- msgid "Subscription pack updated."
1961
  msgstr ""
1962
 
1963
- #: admin/subscription.php:53
1964
- msgid "Custom field updated."
1965
  msgstr ""
1966
 
1967
- #: admin/subscription.php:54
1968
- msgid "Custom field deleted."
1969
  msgstr ""
1970
 
1971
- #: admin/subscription.php:56
1972
- msgid "Subscription pack restored to revision from %s"
1973
  msgstr ""
1974
 
1975
- #: admin/subscription.php:57
1976
- msgid "Subscription pack published."
1977
  msgstr ""
1978
 
1979
- #: admin/subscription.php:58
1980
- msgid "Subscription pack saved."
1981
  msgstr ""
1982
 
1983
- #: admin/subscription.php:59
1984
- msgid "Subscription pack submitted."
1985
  msgstr ""
1986
 
1987
- #: admin/subscription.php:61
1988
- msgid "Subscription pack draft updated."
1989
  msgstr ""
1990
 
1991
- #: admin/subscription.php:134 admin/subscription.php:459
1992
- #: class/frontend-account.php:129 class/subscription.php:704
1993
- #: class/subscription.php:889 class/subscription.php:902
1994
- msgid "Free"
1995
  msgstr ""
1996
 
1997
- #: admin/subscription.php:170 class/subscription.php:276
1998
- msgid "Pack Name"
1999
  msgstr ""
2000
 
2001
- #: admin/subscription.php:171
2002
- msgid "Amount"
2003
  msgstr ""
2004
 
2005
- #: admin/subscription.php:172 includes/free/subscription.php:8
2006
- msgid "Recurring"
 
 
2007
  msgstr ""
2008
 
2009
- #: admin/subscription.php:173
2010
- msgid "Duration"
2011
  msgstr ""
2012
 
2013
- #: admin/subscription.php:196
2014
- msgid "Pack Deleted"
 
 
2015
  msgstr ""
2016
 
2017
- #: admin/subscription.php:208
2018
- msgid "Validity"
2019
  msgstr ""
2020
 
2021
- #: admin/subscription.php:209
2022
- msgid "Post Count"
2023
  msgstr ""
2024
 
2025
- #: admin/subscription.php:210 includes/free/edit-user.php:93
2026
- msgid "Action"
2027
  msgstr ""
2028
 
2029
- #: admin/subscription.php:230
2030
- msgid "Are you sure to delete this pack?"
2031
  msgstr ""
2032
 
2033
- #: admin/subscription.php:242
2034
- msgid "No subscription pack found"
2035
  msgstr ""
2036
 
2037
- #: admin/subscription.php:289
2038
- msgid "Pack Description"
2039
  msgstr ""
2040
 
2041
- #: admin/subscription.php:296
2042
- msgid "Billing amount:"
2043
  msgstr ""
2044
 
2045
- #: admin/subscription.php:297
2046
- msgid "Billing amount each cycle:"
2047
  msgstr ""
2048
 
2049
- #: admin/subscription.php:306
2050
- msgid "Expires In:"
2051
  msgstr ""
2052
 
2053
- #: admin/subscription.php:328 includes/free/form-element.php:60
2054
- msgid "Enable Post Expiration"
2055
  msgstr ""
2056
 
2057
- #: admin/subscription.php:341 admin/subscription.php:538
2058
- #: includes/free/form-element.php:65
2059
- msgid "Post Expiration Time"
2060
  msgstr ""
2061
 
2062
- #: admin/subscription.php:380 includes/free/form-element.php:111
2063
- msgid "Status of post after post expiration time is over "
2064
  msgstr ""
2065
 
2066
- #: admin/subscription.php:411
2067
- msgid "Day(s)"
2068
  msgstr ""
2069
 
2070
- #: admin/subscription.php:412
2071
- msgid "Week(s)"
2072
  msgstr ""
2073
 
2074
- #: admin/subscription.php:413
2075
- msgid "Month(s)"
2076
  msgstr ""
2077
 
2078
- #: admin/subscription.php:414
2079
- msgid "Year(s)"
2080
  msgstr ""
2081
 
2082
- #: admin/subscription.php:451 includes/free/edit-profile.php:280
2083
- msgid "WPUF Subscription"
2084
  msgstr ""
2085
 
2086
- #: admin/subscription.php:471 class/subscription.php:715
2087
- #: templates/dashboard/subscription.php:2
2088
- msgid "Subscription Details"
2089
  msgstr ""
2090
 
2091
- #: admin/subscription.php:475
2092
- msgid "This user is using recurring subscription pack"
2093
  msgstr ""
2094
 
2095
- #: admin/subscription.php:480 class/subscription.php:717
2096
- #: templates/dashboard/subscription.php:4
2097
- msgid "Subcription Name: "
2098
  msgstr ""
2099
 
2100
- #: admin/subscription.php:482
2101
- msgid "Package billing details: "
2102
  msgstr ""
2103
 
2104
- #: admin/subscription.php:491 class/subscription.php:730
2105
- #: templates/dashboard/subscription.php:10
2106
- msgid "Remaining post: "
2107
  msgstr ""
2108
 
2109
- #: admin/subscription.php:513 class/subscription.php:758
2110
- #: templates/dashboard/subscription.php:41
2111
- msgid "Expire date:"
2112
  msgstr ""
2113
 
2114
- #: admin/subscription.php:527
2115
- msgid "Post Expiration Enabled"
2116
  msgstr ""
2117
 
2118
- #: admin/subscription.php:565
2119
- msgid "Assign Package"
2120
  msgstr ""
2121
 
2122
- #: admin/subscription.php:566
2123
- msgid "Show Package"
2124
  msgstr ""
2125
 
2126
- #: admin/subscription.php:569 includes/free/edit-profile.php:284
2127
- msgid "Pack:"
2128
  msgstr ""
2129
 
2130
- #: admin/subscription.php:572
2131
- msgid "--Select--"
2132
  msgstr ""
2133
 
2134
- #: admin/subscription.php:580
2135
- msgid "Delete Package"
2136
  msgstr ""
2137
 
2138
- #: admin/support.php:2
2139
- msgid "WP User Frontend - Support"
2140
  msgstr ""
2141
 
2142
- #: admin/support.php:6
2143
- msgid "Need Help?"
2144
  msgstr ""
2145
 
2146
- #: admin/support.php:11
2147
- msgid "Step 1: "
2148
  msgstr ""
2149
 
2150
- #: admin/support.php:11
2151
- msgid "Read Documentation and FAQ"
2152
  msgstr ""
2153
 
2154
- #: admin/support.php:12
2155
- msgid ""
2156
- "We have created detailed step by step documentation for all the features "
2157
- "(including docs for developers). We have also answered all possible FAQ "
2158
- "queries based on user request. We hope you will find what you are looking "
2159
- "for. If not, please continue to Step 2."
2160
  msgstr ""
2161
 
2162
- #: admin/support.php:16
2163
- msgid "Step 2: "
2164
  msgstr ""
2165
 
2166
- #: admin/support.php:16
2167
- msgid "Create a Support Ticket"
 
 
2168
  msgstr ""
2169
 
2170
- #: admin/support.php:17
2171
  msgid ""
2172
- "We reply from <code>7am to 3pm (GMT+6)</code> except "
2173
- "<code><strong>Friday</strong></code>. Our responses are usually under 12 "
2174
- "hours to as quick as 1 hour depending on channel pressure."
2175
  msgstr ""
2176
 
2177
- #: admin/support.php:19
2178
- msgid ""
2179
- "When you are creating a ticket, please care to include a screenshot of the "
2180
- "issue if possible and write the problem as specificly as you can. This will "
2181
- "help us track and solve your trouble quickly."
2182
  msgstr ""
2183
 
2184
  #: admin/template-post.php:193
@@ -2278,23 +2223,23 @@ msgstr ""
2278
  msgid "Install Now"
2279
  msgstr ""
2280
 
2281
- #: class/asset-loader.php:31 wpuf.php:378
2282
  msgid "is required"
2283
  msgstr ""
2284
 
2285
- #: class/asset-loader.php:32 wpuf.php:379
2286
  msgid "does not match"
2287
  msgstr ""
2288
 
2289
- #: class/asset-loader.php:33 wpuf.php:380
2290
  msgid "is not valid"
2291
  msgstr ""
2292
 
2293
- #: class/asset-loader.php:45 wpuf.php:441
2294
  msgid "Please fix the errors to proceed"
2295
  msgstr ""
2296
 
2297
- #: class/asset-loader.php:47 wpuf.php:443
2298
  msgid "Word limit reached"
2299
  msgstr ""
2300
 
@@ -2350,51 +2295,51 @@ msgstr ""
2350
  msgid "Your current password is incorrect."
2351
  msgstr ""
2352
 
2353
- #: class/frontend-dashboard.php:66 templates/dashboard/posts.php:36
2354
  msgid "Post Deleted"
2355
  msgstr ""
2356
 
2357
- #: class/frontend-dashboard.php:104
2358
  msgid "Author Info"
2359
  msgstr ""
2360
 
2361
- #: class/frontend-dashboard.php:108 includes/free/edit-user.php:97
2362
  msgid "%s"
2363
  msgstr ""
2364
 
2365
- #: class/frontend-dashboard.php:140 templates/dashboard/posts.php:30
2366
  msgid "You are not the post author. Cheeting huh!"
2367
  msgstr ""
2368
 
2369
- #: class/frontend-form-post.php:85
2370
  msgid "You are not logged in"
2371
  msgstr ""
2372
 
2373
- #: class/frontend-form-post.php:93 class/frontend-form-post.php:104
2374
  msgid "Invalid post"
2375
  msgstr ""
2376
 
2377
- #: class/frontend-form-post.php:98
2378
  msgid "Post Editing is disabled"
2379
  msgstr ""
2380
 
2381
- #: class/frontend-form-post.php:109
2382
  msgid "You are not allowed to edit"
2383
  msgstr ""
2384
 
2385
- #: class/frontend-form-post.php:121
2386
  msgid "I don't know how to edit this post, I don't have the form ID"
2387
  msgstr ""
2388
 
2389
- #: class/frontend-form-post.php:127
2390
  msgid "You can't edit a post while in pending mode."
2391
  msgstr ""
2392
 
2393
- #: class/frontend-form-post.php:195
2394
  msgid "Invalid email address."
2395
  msgstr ""
2396
 
2397
- #: class/frontend-form-post.php:204
2398
  msgid ""
2399
  "You already have an account in our site. Please login to continue.\n"
2400
  "\n"
@@ -2403,7 +2348,7 @@ msgid ""
2403
  "Click 'Cancel' to stay at this page."
2404
  msgstr ""
2405
 
2406
- #: class/frontend-form-post.php:567
2407
  msgid "Something went wrong"
2408
  msgstr ""
2409
 
@@ -2496,16 +2441,16 @@ msgstr ""
2496
  msgid "Please make sure you've published your form."
2497
  msgstr ""
2498
 
2499
- #: class/render-form.php:1204 includes/free/edit-profile.php:203
2500
  #: templates/dashboard/edit-profile.php:36
2501
  msgid "Strength indicator"
2502
  msgstr ""
2503
 
2504
- #: class/render-form.php:1266 class/render-form.php:1379
2505
  msgid "-- Select --"
2506
  msgstr ""
2507
 
2508
- #: class/render-form.php:1321
2509
  msgid "This field is no longer available."
2510
  msgstr ""
2511
 
@@ -2614,7 +2559,7 @@ msgid "ID"
2614
  msgstr ""
2615
 
2616
  #: class/transactions-list-table.php:41 templates/dashboard/posts.php:75
2617
- #: templates/dashboard.php:28
2618
  msgid "Status"
2619
  msgstr ""
2620
 
@@ -2751,6 +2696,160 @@ msgstr ""
2751
  msgid " Add Form"
2752
  msgstr ""
2753
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2754
  #: includes/free/edit-profile.php:32 includes/free/edit-user.php:37
2755
  #: templates/unauthorized.php:3
2756
  msgid "This page is restricted. Please %s to view this page."
@@ -2762,6 +2861,7 @@ msgstr ""
2762
 
2763
  #: includes/free/edit-profile.php:101 includes/free/edit-user.php:92
2764
  #: includes/free/edit-user.php:144 templates/login-form.php:21
 
2765
  msgid "Username"
2766
  msgstr ""
2767
 
@@ -2819,7 +2919,7 @@ msgstr ""
2819
  msgid "New Password"
2820
  msgstr ""
2821
 
2822
- #: includes/free/edit-profile.php:194
2823
  msgid "Confirm Password"
2824
  msgstr ""
2825
 
@@ -2968,6 +3068,14 @@ msgstr ""
2968
  msgid "Enable post notification"
2969
  msgstr ""
2970
 
 
 
 
 
 
 
 
 
2971
  #: includes/free/form-element.php:233 includes/free/form-element.php:268
2972
  msgid "Message"
2973
  msgstr ""
@@ -2996,10 +3104,6 @@ msgstr ""
2996
  msgid "Profile updated successfully"
2997
  msgstr ""
2998
 
2999
- #: includes/free/form-element.php:342
3000
- msgid "Register"
3001
- msgstr ""
3002
-
3003
  #: includes/free/form-element.php:351
3004
  msgid "Enable Email Verfication"
3005
  msgstr ""
@@ -3024,7 +3128,7 @@ msgstr ""
3024
  msgid "Update Button text"
3025
  msgstr ""
3026
 
3027
- #: includes/free/loader.php:83 includes/free/loader.php:112
3028
  msgid "Coupons"
3029
  msgstr ""
3030
 
@@ -3038,20 +3142,28 @@ msgstr ""
3038
  msgid "Users can also register themselves by using a subscription pack."
3039
  msgstr ""
3040
 
3041
- #: includes/free/loader.php:100 includes/free/loader.php:120
3042
  msgid "This feature is only available in the Pro Version."
3043
  msgstr ""
3044
 
3045
- #: includes/free/loader.php:104 includes/free/loader.php:124
3046
  msgid "Upgrade to Pro Version"
3047
  msgstr ""
3048
 
3049
- #: includes/free/loader.php:116
 
 
 
 
3050
  msgid "Use Coupon codes for subscription for discounts."
3051
  msgstr ""
3052
 
3053
- #: includes/free/loader.php:149
3054
- msgid "Pro Feature"
 
 
 
 
3055
  msgstr ""
3056
 
3057
  #: includes/free/post-form-templates/woocommerce.php:12
@@ -3144,27 +3256,27 @@ msgstr ""
3144
  msgid "Thanks for being with us."
3145
  msgstr ""
3146
 
3147
- #: lib/gateway/paypal.php:60
3148
  msgid "Subscription %s at %s"
3149
  msgstr ""
3150
 
3151
- #: lib/gateway/paypal.php:91
3152
  msgid "PayPal Email"
3153
  msgstr ""
3154
 
3155
- #: lib/gateway/paypal.php:96
3156
  msgid "PayPal Instruction"
3157
  msgstr ""
3158
 
3159
- #: lib/gateway/paypal.php:103
3160
  msgid "PayPal API username"
3161
  msgstr ""
3162
 
3163
- #: lib/gateway/paypal.php:107
3164
  msgid "PayPal API password"
3165
  msgstr ""
3166
 
3167
- #: lib/gateway/paypal.php:111
3168
  msgid "PayPal API signature"
3169
  msgstr ""
3170
 
@@ -3219,27 +3331,27 @@ msgstr ""
3219
  msgid "You have created <span>%d</span> %s"
3220
  msgstr ""
3221
 
3222
- #: templates/dashboard/posts.php:104 templates/dashboard.php:57
3223
  msgid "No Image"
3224
  msgstr ""
3225
 
3226
- #: templates/dashboard/posts.php:118 templates/dashboard.php:71
3227
  msgid "Permalink to %s"
3228
  msgstr ""
3229
 
3230
- #: templates/dashboard/posts.php:134 templates/dashboard.php:88
3231
  msgid "Pay Now"
3232
  msgstr ""
3233
 
3234
- #: templates/dashboard/posts.php:178 templates/dashboard.php:132
3235
  msgid "&laquo;"
3236
  msgstr ""
3237
 
3238
- #: templates/dashboard/posts.php:179 templates/dashboard.php:133
3239
  msgid "&raquo;"
3240
  msgstr ""
3241
 
3242
- #: templates/dashboard/posts.php:193 templates/dashboard.php:146
3243
  msgid "No %s found"
3244
  msgstr ""
3245
 
@@ -3251,6 +3363,10 @@ msgstr ""
3251
  msgid "%s's Dashboard"
3252
  msgstr ""
3253
 
 
 
 
 
3254
  #: templates/logged-in.php:8
3255
  msgid "Hello %s"
3256
  msgstr ""
@@ -3259,7 +3375,7 @@ msgstr ""
3259
  msgid "You are currently logged in! %s?"
3260
  msgstr ""
3261
 
3262
- #: templates/login-form.php:25
3263
  msgid "Password"
3264
  msgstr ""
3265
 
@@ -3267,10 +3383,6 @@ msgstr ""
3267
  msgid "Remember Me"
3268
  msgstr ""
3269
 
3270
- #: templates/login-form.php:37
3271
- msgid "Log In"
3272
- msgstr ""
3273
-
3274
  #: templates/lost-pass-form.php:14
3275
  msgid "Username or E-mail:"
3276
  msgstr ""
@@ -3279,6 +3391,10 @@ msgstr ""
3279
  msgid "Get New Password"
3280
  msgstr ""
3281
 
 
 
 
 
3282
  #: templates/reset-pass-form.php:14
3283
  msgid "New password"
3284
  msgstr ""
@@ -3559,11 +3675,15 @@ msgstr ""
3559
  msgid "Egyptian Pound"
3560
  msgstr ""
3561
 
3562
- #: wpuf.php:147
 
 
 
 
3563
  msgid "Your Post Has Been Expired"
3564
  msgstr ""
3565
 
3566
- #: wpuf.php:585
3567
  msgid "Error: Nonce verification failed"
3568
  msgstr ""
3569
 
2
  # This file is distributed under the GPL2 or later.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: WP User Frontend 2.5.8\n"
6
  "Report-Msgid-Bugs-To: "
7
  "https://wedevs.com/support/forum/plugin-support/wp-user-frontend/\n"
8
+ "POT-Creation-Date: 2017-10-18 11:03:55+00:00\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=utf-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
18
  msgid "WP User Frontend - Add-Ons"
19
  msgstr ""
20
 
21
+ #. Plugin Name of the plugin/theme
22
+ msgid "WP User Frontend"
23
+ msgstr ""
24
+
25
+ #: admin/class-admin-settings.php:76
26
+ msgid "User Frontend"
27
+ msgstr ""
28
+
29
+ #: admin/class-admin-settings.php:78 admin/post-forms-list-table-view.php:4
30
+ msgid "Post Forms"
31
+ msgstr ""
32
+
33
+ #: admin/class-admin-settings.php:87 admin/weforms.php:2
34
+ msgid "weForms"
35
+ msgstr ""
36
+
37
+ #: admin/class-admin-settings.php:87
38
+ msgid "Contact Form"
39
+ msgstr ""
40
+
41
+ #: admin/class-admin-settings.php:90
42
+ msgid "Subscriptions"
43
+ msgstr ""
44
+
45
+ #: admin/class-admin-settings.php:94 admin/class-tools.php:378
46
+ #: admin/transactions.php:2
47
+ msgid "Transactions"
48
+ msgstr ""
49
+
50
+ #: admin/class-admin-settings.php:95
51
+ msgid "Add-ons"
52
+ msgstr ""
53
+
54
+ #: admin/class-admin-settings.php:96 admin/tools.php:14
55
+ msgid "Tools"
56
+ msgstr ""
57
+
58
+ #: admin/class-admin-settings.php:97
59
+ msgid "Help"
60
+ msgstr ""
61
+
62
+ #: admin/class-admin-settings.php:97
63
+ msgid "<span style=\"color:#f18500\">Help</span>"
64
+ msgstr ""
65
+
66
+ #: admin/class-admin-settings.php:98
67
+ #: admin/form-builder/views/form-builder.php:9
68
+ msgid "Settings"
69
+ msgstr ""
70
+
71
+ #: admin/class-admin-settings.php:323
72
+ msgid "Number of items per page:"
73
+ msgstr ""
74
+
75
+ #: admin/class-admin-subscription.php:54 admin/class-admin-subscription.php:57
76
+ msgid "Subscription pack updated."
77
+ msgstr ""
78
+
79
+ #: admin/class-admin-subscription.php:55
80
+ msgid "Custom field updated."
81
+ msgstr ""
82
+
83
+ #: admin/class-admin-subscription.php:56
84
+ msgid "Custom field deleted."
85
+ msgstr ""
86
+
87
+ #: admin/class-admin-subscription.php:58
88
+ msgid "Subscription pack restored to revision from %s"
89
+ msgstr ""
90
+
91
+ #: admin/class-admin-subscription.php:59
92
+ msgid "Subscription pack published."
93
+ msgstr ""
94
+
95
+ #: admin/class-admin-subscription.php:60
96
+ msgid "Subscription pack saved."
97
+ msgstr ""
98
+
99
+ #: admin/class-admin-subscription.php:61
100
+ msgid "Subscription pack submitted."
101
+ msgstr ""
102
+
103
+ #: admin/class-admin-subscription.php:63
104
+ msgid "Subscription pack draft updated."
105
+ msgstr ""
106
+
107
+ #: admin/class-admin-subscription.php:136
108
+ #: admin/class-admin-subscription.php:461 class/frontend-account.php:129
109
+ #: class/subscription.php:704 class/subscription.php:889
110
+ #: class/subscription.php:902
111
+ msgid "Free"
112
+ msgstr ""
113
+
114
+ #: admin/class-admin-subscription.php:147
115
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:66
116
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:463
117
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:519
118
+ #: admin/post-forms-list-table.php:345 admin/settings-options.php:87
119
+ #: admin/settings-options.php:162 admin/settings-options.php:173
120
+ #: admin/settings-options.php:262 admin/template.php:70
121
+ #: includes/free/form-element.php:474
122
+ msgid "Yes"
123
+ msgstr ""
124
+
125
+ #: admin/class-admin-subscription.php:149
126
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:67
127
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:464
128
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:520
129
+ #: admin/post-forms-list-table.php:346 admin/settings-options.php:88
130
+ #: admin/settings-options.php:163 admin/settings-options.php:174
131
+ #: admin/settings-options.php:263 admin/template.php:71
132
+ #: includes/free/form-element.php:475
133
+ msgid "No"
134
+ msgstr ""
135
+
136
+ #: admin/class-admin-subscription.php:172 class/subscription.php:276
137
+ msgid "Pack Name"
138
+ msgstr ""
139
+
140
+ #: admin/class-admin-subscription.php:173
141
+ msgid "Amount"
142
+ msgstr ""
143
+
144
+ #: admin/class-admin-subscription.php:174 includes/free/subscription.php:8
145
+ msgid "Recurring"
146
+ msgstr ""
147
+
148
+ #: admin/class-admin-subscription.php:175
149
+ msgid "Duration"
150
+ msgstr ""
151
+
152
+ #: admin/class-admin-subscription.php:198
153
+ msgid "Pack Deleted"
154
+ msgstr ""
155
+
156
+ #: admin/class-admin-subscription.php:207 admin/form.php:771
157
+ #: admin/html/form-settings-post.php:17 admin/template-post.php:167
158
+ #: includes/free/edit-profile.php:97 templates/registration-form.php:27
159
+ msgid "Name"
160
+ msgstr ""
161
+
162
+ #: admin/class-admin-subscription.php:208
163
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:750
164
+ #: admin/template.php:609 class/upload.php:166 wpuf-functions.php:732
165
+ msgid "Description"
166
+ msgstr ""
167
+
168
+ #: admin/class-admin-subscription.php:209 admin/settings-options.php:339
169
+ #: class/transactions-list-table.php:43
170
+ msgid "Cost"
171
+ msgstr ""
172
+
173
+ #: admin/class-admin-subscription.php:210
174
+ msgid "Validity"
175
+ msgstr ""
176
+
177
+ #: admin/class-admin-subscription.php:211
178
+ msgid "Post Count"
179
+ msgstr ""
180
+
181
+ #: admin/class-admin-subscription.php:212 includes/free/edit-user.php:93
182
+ msgid "Action"
183
+ msgstr ""
184
+
185
+ #: admin/class-admin-subscription.php:229 admin/form.php:74 admin/form.php:112
186
+ #: admin/installer.php:75 admin/post-forms-list-table.php:392
187
+ #: class/subscription.php:360 includes/free/admin/shortcode-button.php:90
188
+ #: includes/free/edit-user.php:99 templates/dashboard/posts.php:150
189
+ #: templates/dashboard.php:205
190
+ msgid "Edit"
191
+ msgstr ""
192
+
193
+ #: admin/class-admin-subscription.php:232
194
+ msgid "Are you sure to delete this pack?"
195
+ msgstr ""
196
+
197
+ #: admin/class-admin-subscription.php:233 class/render-form.php:1518
198
+ #: class/transactions-list-table.php:114 class/transactions-list-table.php:175
199
+ #: class/upload.php:171 includes/free/edit-user.php:100
200
+ #: templates/dashboard/posts.php:160 templates/dashboard.php:215
201
+ msgid "Delete"
202
+ msgstr ""
203
+
204
+ #: admin/class-admin-subscription.php:244
205
+ msgid "No subscription pack found"
206
+ msgstr ""
207
+
208
+ #: admin/class-admin-subscription.php:291
209
+ msgid "Pack Description"
210
+ msgstr ""
211
+
212
+ #: admin/class-admin-subscription.php:298
213
+ msgid "Billing amount:"
214
+ msgstr ""
215
+
216
+ #: admin/class-admin-subscription.php:299
217
+ msgid "Billing amount each cycle:"
218
+ msgstr ""
219
+
220
+ #: admin/class-admin-subscription.php:308
221
+ msgid "Expires In:"
222
+ msgstr ""
223
+
224
+ #: admin/class-admin-subscription.php:330 includes/free/form-element.php:60
225
+ msgid "Enable Post Expiration"
226
+ msgstr ""
227
+
228
+ #: admin/class-admin-subscription.php:343
229
+ #: admin/class-admin-subscription.php:540 includes/free/form-element.php:65
230
+ msgid "Post Expiration Time"
231
+ msgstr ""
232
+
233
+ #: admin/class-admin-subscription.php:382 includes/free/form-element.php:111
234
+ msgid "Status of post after post expiration time is over "
235
+ msgstr ""
236
+
237
+ #: admin/class-admin-subscription.php:413
238
+ msgid "Day(s)"
239
+ msgstr ""
240
+
241
+ #: admin/class-admin-subscription.php:414
242
+ msgid "Week(s)"
243
+ msgstr ""
244
+
245
+ #: admin/class-admin-subscription.php:415
246
+ msgid "Month(s)"
247
+ msgstr ""
248
+
249
+ #: admin/class-admin-subscription.php:416
250
+ msgid "Year(s)"
251
+ msgstr ""
252
+
253
+ #: admin/class-admin-subscription.php:453 includes/free/edit-profile.php:280
254
+ msgid "WPUF Subscription"
255
+ msgstr ""
256
+
257
+ #: admin/class-admin-subscription.php:473 class/subscription.php:715
258
+ #: templates/dashboard/subscription.php:2
259
+ msgid "Subscription Details"
260
+ msgstr ""
261
+
262
+ #: admin/class-admin-subscription.php:477
263
+ msgid "This user is using recurring subscription pack"
264
+ msgstr ""
265
+
266
+ #: admin/class-admin-subscription.php:482 class/subscription.php:717
267
+ #: templates/dashboard/subscription.php:4
268
+ msgid "Subcription Name: "
269
+ msgstr ""
270
+
271
+ #: admin/class-admin-subscription.php:484
272
+ msgid "Package billing details: "
273
+ msgstr ""
274
+
275
+ #: admin/class-admin-subscription.php:493 class/subscription.php:730
276
+ #: templates/dashboard/subscription.php:10
277
+ msgid "Remaining post: "
278
+ msgstr ""
279
+
280
+ #: admin/class-admin-subscription.php:515 class/subscription.php:758
281
+ #: templates/dashboard/subscription.php:41
282
+ msgid "Expire date:"
283
+ msgstr ""
284
+
285
+ #: admin/class-admin-subscription.php:529
286
+ msgid "Post Expiration Enabled"
287
+ msgstr ""
288
+
289
+ #: admin/class-admin-subscription.php:567
290
+ msgid "Assign Package"
291
+ msgstr ""
292
+
293
+ #: admin/class-admin-subscription.php:568
294
+ msgid "Show Package"
295
+ msgstr ""
296
+
297
+ #: admin/class-admin-subscription.php:571 includes/free/edit-profile.php:284
298
+ msgid "Pack:"
299
+ msgstr ""
300
+
301
+ #: admin/class-admin-subscription.php:574
302
+ msgid "--Select--"
303
+ msgstr ""
304
+
305
+ #: admin/class-admin-subscription.php:582
306
+ msgid "Delete Package"
307
+ msgstr ""
308
+
309
+ #: admin/class-admin-subscription.php:626
310
+ msgid "Learn more about <a href=\"%s\" target=\"_blank\">Subscription</a>"
311
+ msgstr ""
312
+
313
  #: admin/class-tools.php:33
314
  msgid "Form Export"
315
  msgstr ""
429
  msgid "Delete Coupons"
430
  msgstr ""
431
 
 
 
 
 
432
  #: admin/class-tools.php:381
433
  msgid "This tool will delete all the transactions from the transaction table."
434
  msgstr ""
442
  msgid "Add fields by dragging the fields from the right sidebar to this area."
443
  msgstr ""
444
 
445
+ #: admin/form-builder/assets/js/components/builder-stage/template.php:29
446
+ #: assets/js-templates/form-components.php:30
447
  msgid "is available in Pro Version"
448
  msgstr ""
449
 
450
+ #: admin/form-builder/assets/js/components/builder-stage/template.php:53
451
+ #: assets/js-templates/form-components.php:54
452
  msgid "Hidden Fields"
453
  msgstr ""
454
 
455
+ #: admin/form-builder/assets/js/components/builder-stage/template.php:60
456
+ #: assets/js-templates/form-components.php:61
457
  msgid "key"
458
  msgstr ""
459
 
460
+ #: admin/form-builder/assets/js/components/builder-stage/template.php:60
461
+ #: assets/js-templates/form-components.php:61
462
  msgid "value"
463
  msgstr ""
464
 
465
  #: admin/form-builder/assets/js/components/field-option-data/template.php:5
466
+ #: admin/template.php:244 assets/js-templates/form-components.php:102
467
  msgid "Show values"
468
  msgstr ""
469
 
470
  #: admin/form-builder/assets/js/components/field-option-data/template.php:16
471
  #: admin/template.php:247 admin/template.php:305
472
+ #: assets/js-templates/form-components.php:113
473
  msgid "Label"
474
  msgstr ""
475
 
476
  #: admin/form-builder/assets/js/components/field-option-data/template.php:20
477
  #: admin/template.php:247 admin/template.php:305
478
+ #: assets/js-templates/form-components.php:117
479
  msgid "Value"
480
  msgstr ""
481
 
482
  #: admin/form-builder/assets/js/components/field-option-data/template.php:68
483
+ #: assets/js-templates/form-components.php:165
484
  msgid "Clear Selection"
485
  msgstr ""
486
 
487
  #: admin/form-builder/assets/js/components/field-option-pro-feature-alert/template.php:4
488
+ #: assets/js-templates/form-components.php:173
489
  msgid "Available in Pro Version"
490
  msgstr ""
491
 
492
  #: admin/form-builder/assets/js/components/field-select/template.php:7
493
+ #: assets/js-templates/form-components.php:251
494
  msgid "Select an option"
495
  msgstr ""
496
 
497
  #: admin/form-builder/assets/js/components/form-featured_image/template.php:5
498
  #: admin/form-builder/assets/js/components/form-image_upload/template.php:5
499
+ #: assets/js-templates/form-components.php:376
500
+ #: assets/js-templates/form-components.php:442 class/render-form.php:1506
501
  msgid "Select Image"
502
  msgstr ""
503
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
504
  #: admin/form-builder/assets/js/components/form-post_content/template.php:4
505
+ #: assets/js-templates/form-components.php:475 class/render-form.php:927
506
  msgid "Insert Photo"
507
  msgstr ""
508
 
509
  #: admin/form-builder/assets/js/components/form-taxonomy/template.php:12
510
+ #: assets/js-templates/form-components.php:585
511
  msgid "— Select —"
512
  msgstr ""
513
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
514
  #: admin/form-builder/class-wpuf-admin-form-builder-ajax.php:29
515
  msgid "Unauthorized operation"
516
  msgstr ""
563
  msgstr ""
564
 
565
  #: admin/form-builder/class-wpuf-admin-form-builder.php:328
566
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:395
567
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:436
568
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:493
569
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:549
570
  msgid "Option"
571
  msgstr ""
572
 
590
  msgid "Get the Pro version"
591
  msgstr ""
592
 
593
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:334 admin/form.php:755
594
  msgid "Select"
595
  msgstr ""
596
 
632
  msgid "Required"
633
  msgstr ""
634
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
635
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:73
636
  msgid ""
637
  "Check this option to mark the field required. A form will not submit unless "
639
  msgstr ""
640
 
641
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:78
642
+ msgid "Field Size"
643
+ msgstr ""
644
+
645
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:81
646
+ msgid "Small"
647
+ msgstr ""
648
+
649
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:82
650
+ msgid "Medium"
651
+ msgstr ""
652
+
653
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:83
654
+ msgid "Large"
655
+ msgstr ""
656
+
657
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:93
658
  #: admin/template.php:99
659
  msgid "CSS Class Name"
660
  msgstr ""
661
 
662
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:97
663
  msgid "Provide a container class name for this field."
664
  msgstr ""
665
 
666
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:104
667
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:640
668
  #: admin/template.php:82 admin/template.php:575
669
  msgid "Meta Key"
670
  msgstr ""
671
 
672
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:108
673
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:644
674
  #: admin/template.php:83 admin/template.php:576
675
  msgid "Name of the meta key this field will save to"
676
  msgstr ""
677
 
678
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:126
679
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:196
680
  #: admin/template.php:126 admin/template.php:186
681
  msgid "Placeholder text"
682
  msgstr ""
683
 
684
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:130
685
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:200
686
  #: admin/template.php:127
687
  msgid "Text for HTML5 placeholder attribute"
688
  msgstr ""
689
 
690
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:135
691
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:208
692
  #: admin/template.php:131 admin/template.php:191
693
  msgid "Default value"
694
  msgstr ""
695
 
696
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:139
697
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:212
698
  #: admin/template.php:132
699
  msgid "The default value this field will have"
700
  msgstr ""
701
 
702
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:144
703
  #: admin/template.php:136
704
  msgid "Size"
705
  msgstr ""
706
 
707
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:149
708
  #: admin/template.php:137
709
  msgid "Size of this input field"
710
  msgstr ""
711
 
712
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:156
713
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:231
714
  #: admin/template.php:141 admin/template.php:206
715
  msgid "Word Restriction"
716
  msgstr ""
717
 
718
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:160
719
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:235
720
  #: admin/template.php:145 admin/template.php:210
721
  msgid "Numebr of words the author to be restricted in"
722
  msgstr ""
723
 
724
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:178
725
  #: admin/template.php:176
726
  msgid "Rows"
727
  msgstr ""
728
 
729
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:182
730
  msgid "Number of rows in textarea"
731
  msgstr ""
732
 
733
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:187
734
  #: admin/template.php:181
735
  msgid "Columns"
736
  msgstr ""
737
 
738
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:191
739
  msgid "Number of columns in textarea"
740
  msgstr ""
741
 
742
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:217
743
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:307
744
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:314
745
  #: admin/template.php:196
746
  msgid "Textarea"
747
  msgstr ""
748
 
749
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:220
750
  #: admin/template.php:199
751
  msgid "Normal"
752
  msgstr ""
753
 
754
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:221
755
  #: admin/template.php:200
756
  msgid "Rich textarea"
757
  msgstr ""
758
 
759
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:222
760
  #: admin/template.php:201
761
  msgid "Teeny Rich textarea"
762
  msgstr ""
763
 
764
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:252
765
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:396
766
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:437
767
  msgid "- select -"
768
  msgstr ""
769
 
770
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:270
771
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:277
772
  msgid "Text"
773
  msgstr ""
774
 
775
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:345
776
  #: admin/template.php:398 admin/template.php:422 admin/template.php:454
777
  #: admin/template.php:486 templates/dashboard/posts.php:84
778
+ #: templates/dashboard.php:111
779
  msgid "Options"
780
  msgstr ""
781
 
782
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:350
783
  msgid "Add options for the form field"
784
  msgstr ""
785
 
786
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:369
787
  #: admin/template.php:449 admin/template.php:481
788
  msgid "Select Text"
789
  msgstr ""
790
 
791
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:373
792
  #: admin/template.php:438 admin/template.php:470
793
  msgid ""
794
  "First element of the select dropdown. Leave this empty if you don't want to "
795
  "show this field"
796
  msgstr ""
797
 
798
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:381
799
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:388
800
  #: admin/template-post.php:156
801
  msgid "Dropdown"
802
  msgstr ""
803
 
804
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:422
805
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:429
806
+ #: admin/form.php:756 admin/template-post.php:157
807
  msgid "Multi Select"
808
  msgstr ""
809
 
810
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:460
811
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:516
812
  msgid "Show in inline list"
813
  msgstr ""
814
 
815
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:470
816
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:526
817
  msgid "Show this option in an inline list"
818
  msgstr ""
819
 
820
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:478
821
  msgid "Radio"
822
  msgstr ""
823
 
824
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:485
825
  msgid "Radio Field"
826
  msgstr ""
827
 
828
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:534
829
+ #: admin/form.php:757 admin/template-post.php:158
830
  msgid "Checkbox"
831
  msgstr ""
832
 
833
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:541
834
  msgid "Checkbox Field"
835
  msgstr ""
836
 
837
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:570
838
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:577
839
  msgid "URL"
840
  msgstr ""
841
 
842
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:606
843
  msgid "Email Address"
844
  msgstr ""
845
 
846
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:613
847
+ #: admin/html/form-settings-post.php:18 class/transactions-list-table.php:48
848
+ #: includes/free/edit-user.php:152 templates/registration-form.php:44
849
  msgid "Email"
850
  msgstr ""
851
 
852
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:649
853
  #: admin/template.php:582
854
  msgid "Meta Value"
855
  msgstr ""
856
 
857
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:653
858
  #: admin/template.php:583
859
  msgid "Enter the meta value"
860
  msgstr ""
861
 
862
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:659
863
  msgid "Hidden Field"
864
  msgstr ""
865
 
866
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:689
867
+ #: admin/form.php:673 admin/template-post.php:105 admin/template.php:646
868
  msgid "Max. file size"
869
  msgstr ""
870
 
871
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:693
872
+ #: admin/form.php:677 admin/template-post.php:93 admin/template.php:634
873
  msgid "Enter maximum upload size limit in KB"
874
  msgstr ""
875
 
876
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:698
877
  #: admin/template.php:651
878
  msgid "Max. files"
879
  msgstr ""
880
 
881
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:702
882
  #: admin/template.php:635
883
  msgid "Number of images can be uploaded"
884
  msgstr ""
885
 
886
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:708
887
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:715
888
  #: includes/free/form-element.php:8
889
  msgid "Image Upload"
890
  msgstr ""
891
 
892
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:741
893
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:824
894
  #: admin/template.php:544 admin/template.php:604 admin/template.php:683
895
  #: class/upload.php:164 templates/dashboard/posts.php:74
896
+ #: templates/dashboard.php:72 wpuf-functions.php:726
897
  msgid "Title"
898
  msgstr ""
899
 
900
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:745
901
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:828
902
  msgid "Title of the section"
903
  msgstr ""
904
 
905
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:754
 
 
 
 
 
 
906
  msgid "Some details text about the section"
907
  msgstr ""
908
 
909
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:760
910
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:767
911
  msgid "Section Break"
912
  msgstr ""
913
 
914
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:768
915
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:805
916
  msgid "Some description about this section"
917
  msgstr ""
918
 
919
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:787
920
  #: admin/template.php:549
921
  msgid "HTML Codes"
922
  msgstr ""
923
 
924
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:791
925
  msgid "Paste your HTML codes, WordPress shortcodes will also work here"
926
  msgstr ""
927
 
928
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:797
929
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:804
930
  msgid "Custom HTML"
931
  msgstr ""
932
 
933
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:836
934
  #: admin/template.php:703
935
  msgid "Enable noCaptcha"
936
  msgstr ""
937
 
938
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:837
939
  #: admin/template.php:699
940
  msgid "Enable Invisible reCaptcha"
941
  msgstr ""
942
 
943
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:842
944
  msgid "Select reCaptcha type"
945
  msgstr ""
946
 
947
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:848
948
  #: includes/free/form-element.php:31
949
  msgid "reCaptcha"
950
  msgstr ""
951
 
952
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:853
953
  msgid "Site key and Secret key"
954
  msgstr ""
955
 
956
+ #: admin/form-builder/class-wpuf-form-builder-field-settings.php:855
957
  msgid ""
958
  "You need to set Site key and Secret key in <a href=\"%s\" "
959
  "target=\"_blank\">Settings</a> in order to use \"Recaptcha\" field. <a "
1044
  msgid "Add New Form"
1045
  msgstr ""
1046
 
 
 
 
 
 
 
 
 
1047
  #: admin/form.php:75 admin/form.php:113
1048
  msgid "Edit Form"
1049
  msgstr ""
1113
  msgid "Taxonomies"
1114
  msgstr ""
1115
 
1116
+ #: admin/form.php:430 admin/html/form-settings-post.php:29
1117
+ #: class/render-form.php:631
1118
  msgid "Save Draft"
1119
  msgstr ""
1120
 
1122
  msgid "Post Title"
1123
  msgstr ""
1124
 
1125
+ #: admin/form.php:578 admin/template-post.php:41
1126
  msgid "Enable Image Insertion"
1127
  msgstr ""
1128
 
1129
+ #: admin/form.php:580 admin/template-post.php:47
1130
  msgid "Enable image upload in post area"
1131
  msgstr ""
1132
 
1133
+ #: admin/form.php:589 admin/form.php:596
1134
  msgid "Post Body"
1135
  msgstr ""
1136
 
1137
+ #: admin/form.php:634 admin/form.php:641 templates/dashboard.php:98
1138
  msgid "Excerpt"
1139
  msgstr ""
1140
 
1141
+ #: admin/form.php:683 admin/form.php:690 templates/dashboard/posts.php:71
1142
+ #: templates/dashboard.php:69
1143
  msgid "Featured Image"
1144
  msgstr ""
1145
 
1146
+ #: admin/form.php:717 admin/form.php:723
1147
  msgid "Tags"
1148
  msgstr ""
1149
 
1150
+ #: admin/form.php:752 admin/template-post.php:154
1151
  msgid "Type"
1152
  msgstr ""
1153
 
1154
+ #: admin/form.php:758 admin/template-post.php:159
1155
  msgid "Text Input"
1156
  msgstr ""
1157
 
1158
+ #: admin/form.php:759 admin/template-post.php:160
1159
  msgid "Ajax"
1160
  msgstr ""
1161
 
1162
+ #: admin/form.php:768 admin/template-post.php:165
1163
  msgid "Order By"
1164
  msgstr ""
1165
 
1166
+ #: admin/form.php:772 admin/template-post.php:168
1167
  msgid "Term ID"
1168
  msgstr ""
1169
 
1170
+ #: admin/form.php:773 admin/template-post.php:169
1171
  msgid "Slug"
1172
  msgstr ""
1173
 
1174
+ #: admin/form.php:774 admin/template-post.php:170
1175
  msgid "Count"
1176
  msgstr ""
1177
 
1178
+ #: admin/form.php:775 admin/template-post.php:171
1179
  msgid "Term Group"
1180
  msgstr ""
1181
 
1182
+ #: admin/form.php:784 admin/template-post.php:176
1183
  msgid "Order"
1184
  msgstr ""
1185
 
1186
+ #: admin/form.php:788 admin/template-post.php:178
1187
  msgid "ASC"
1188
  msgstr ""
1189
 
1190
+ #: admin/form.php:789 admin/template-post.php:179
1191
  msgid "DESC"
1192
  msgstr ""
1193
 
1194
+ #: admin/form.php:798 admin/template-post.php:184
1195
  msgid "Selection Type"
1196
  msgstr ""
1197
 
1198
+ #: admin/form.php:801 admin/template-post.php:186
1199
  msgid "Exclude"
1200
  msgstr ""
1201
 
1202
+ #: admin/form.php:802 admin/template-post.php:187
1203
  msgid "Include"
1204
  msgstr ""
1205
 
1206
+ #: admin/form.php:803 admin/template-post.php:188
1207
  msgid "Child of"
1208
  msgstr ""
1209
 
1210
+ #: admin/form.php:812
1211
  msgid "Selection Terms"
1212
  msgstr ""
1213
 
1214
+ #: admin/form.php:816 admin/template-post.php:194
1215
  msgid ""
1216
  "Enter the term IDs as comma separated (without space) to exclude/include in "
1217
  "the form."
1218
  msgstr ""
1219
 
1220
+ #: admin/form.php:824 admin/template-post.php:204
1221
  msgid "This taxonomy is a WooCommerce attribute"
1222
  msgstr ""
1223
 
1224
+ #: admin/form.php:835 admin/template-post.php:216
1225
  msgid "Visible on product page"
1226
  msgstr ""
1227
 
1228
+ #: admin/form.php:884
1229
  msgid "Post Forms must have either Post Title, Post Body or Excerpt field"
1230
  msgstr ""
1231
 
1254
  msgstr ""
1255
 
1256
  #: admin/html/form-settings-post-edit.php:4
1257
+ #: admin/html/form-settings-post.php:23
1258
  msgid "Post updated successfully"
1259
  msgstr ""
1260
 
1271
  msgstr ""
1272
 
1273
  #: admin/html/form-settings-post-edit.php:30
1274
+ #: admin/html/form-settings-post.php:187 includes/free/form-element.php:373
1275
  msgid "Redirect To"
1276
  msgstr ""
1277
 
1278
  #: admin/html/form-settings-post-edit.php:35
1279
+ #: admin/html/form-settings-post.php:192
1280
  msgid "Newly created post"
1281
  msgstr ""
1282
 
1283
  #: admin/html/form-settings-post-edit.php:36
1284
+ #: admin/html/form-settings-post.php:193 includes/free/form-element.php:378
1285
  msgid "Same Page"
1286
  msgstr ""
1287
 
1288
  #: admin/html/form-settings-post-edit.php:37
1289
+ #: admin/html/form-settings-post.php:194 includes/free/form-element.php:379
1290
  msgid "To a page"
1291
  msgstr ""
1292
 
1293
  #: admin/html/form-settings-post-edit.php:38
1294
+ #: admin/html/form-settings-post.php:195 includes/free/form-element.php:380
1295
  msgid "To a custom URL"
1296
  msgstr ""
1297
 
1298
  #: admin/html/form-settings-post-edit.php:47
1299
+ #: admin/html/form-settings-post.php:204 includes/free/form-element.php:389
1300
  msgid "After successfull submit, where the page will redirect to"
1301
  msgstr ""
1302
 
1305
  msgstr ""
1306
 
1307
  #: admin/html/form-settings-post-edit.php:60
1308
+ #: admin/html/form-settings-post.php:217 includes/free/form-element.php:409
1309
  msgid "Page"
1310
  msgstr ""
1311
 
1312
  #: admin/html/form-settings-post-edit.php:75
1313
+ #: admin/html/form-settings-post.php:232 includes/free/form-element.php:424
1314
  msgid "Custom URL"
1315
  msgstr ""
1316
 
1326
  msgid "This page is restricted. Please Log in / Register to view this page."
1327
  msgstr ""
1328
 
1329
+ #: admin/html/form-settings-post.php:22
1330
  msgid "Post saved"
1331
  msgstr ""
1332
 
1333
+ #: admin/html/form-settings-post.php:28
1334
  msgid "Submit"
1335
  msgstr ""
1336
 
1337
+ #: admin/html/form-settings-post.php:30
1338
  msgid "Preview"
1339
  msgstr ""
1340
 
1341
+ #: admin/html/form-settings-post.php:38 admin/html/form-settings-post.php:42
1342
  msgid "Disable Subscription"
1343
  msgstr ""
1344
 
1345
+ #: admin/html/form-settings-post.php:45
1346
  msgid ""
1347
  "If checked, any subscription and pay-per-post will be disabled on the form "
1348
  "and will take no effect."
1349
  msgstr ""
1350
 
1351
+ #: admin/html/form-settings-post.php:50 admin/post-forms-list-table.php:297
1352
  msgid "Post Type"
1353
  msgstr ""
1354
 
1355
+ #: admin/html/form-settings-post.php:75 admin/post-forms-list-table.php:298
1356
  msgid "Post Status"
1357
  msgstr ""
1358
 
1359
+ #: admin/html/form-settings-post.php:89
1360
  msgid "Post Format"
1361
  msgstr ""
1362
 
1363
+ #: admin/html/form-settings-post.php:92 admin/html/form-settings-post.php:115
1364
  msgid "- None -"
1365
  msgstr ""
1366
 
1367
+ #: admin/html/form-settings-post.php:107
1368
  msgid "Default Post Category"
1369
  msgstr ""
1370
 
1371
+ #: admin/html/form-settings-post.php:119
1372
  msgid ""
1373
  "If users are not allowed to choose any category, this category will be used "
1374
  "instead (if post type supports)"
1375
  msgstr ""
1376
 
1377
+ #: admin/html/form-settings-post.php:124 admin/post-forms-list-table.php:299
1378
  msgid "Guest Post"
1379
  msgstr ""
1380
 
1381
+ #: admin/html/form-settings-post.php:129
1382
  msgid "Enable Guest Post"
1383
  msgstr ""
1384
 
1385
+ #: admin/html/form-settings-post.php:131
1386
  msgid "Unregistered users will be able to submit posts"
1387
  msgstr ""
1388
 
1389
+ #: admin/html/form-settings-post.php:131
1390
+ msgid "Learn more about guest posting."
1391
+ msgstr ""
1392
+
1393
+ #: admin/html/form-settings-post.php:136
1394
  msgid "User Details"
1395
  msgstr ""
1396
 
1397
+ #: admin/html/form-settings-post.php:141
1398
  msgid "Require Name and Email address"
1399
  msgstr ""
1400
 
1401
+ #: admin/html/form-settings-post.php:143
1402
  msgid ""
1403
  "If requires, users will be automatically registered to the site using the "
1404
  "name and email address"
1405
  msgstr ""
1406
 
1407
+ #: admin/html/form-settings-post.php:148
1408
+ msgid "Email Verification"
1409
  msgstr ""
1410
 
1411
  #: admin/html/form-settings-post.php:152
1412
+ msgid "Require Email Verification for Guests"
1413
+ msgstr ""
1414
+
1415
+ #: admin/html/form-settings-post.php:154
1416
+ msgid "If requires, users will be required to verify their email adress."
1417
+ msgstr ""
1418
+
1419
+ #: admin/html/form-settings-post.php:159
1420
+ msgid "Name Label"
1421
+ msgstr ""
1422
+
1423
+ #: admin/html/form-settings-post.php:164
1424
  msgid "Label text for name field"
1425
  msgstr ""
1426
 
1427
+ #: admin/html/form-settings-post.php:169
1428
  msgid "E-Mail Label"
1429
  msgstr ""
1430
 
1431
+ #: admin/html/form-settings-post.php:174
1432
  msgid "Label text for email field"
1433
  msgstr ""
1434
 
1435
+ #: admin/html/form-settings-post.php:179 admin/settings-options.php:219
1436
  msgid "Unauthorized Message"
1437
  msgstr ""
1438
 
1439
+ #: admin/html/form-settings-post.php:182 admin/settings-options.php:220
1440
  msgid "Not logged in users will see this message"
1441
  msgstr ""
1442
 
1443
+ #: admin/html/form-settings-post.php:210
1444
  msgid "Message to show"
1445
  msgstr ""
1446
 
1447
+ #: admin/html/form-settings-post.php:239
1448
  msgid "Comment Status"
1449
  msgstr ""
1450
 
1451
+ #: admin/html/form-settings-post.php:242
1452
  msgid "Open"
1453
  msgstr ""
1454
 
1455
+ #: admin/html/form-settings-post.php:243
1456
  msgid "Closed"
1457
  msgstr ""
1458
 
1459
+ #: admin/html/form-settings-post.php:249
1460
  msgid "Submit Post Button text"
1461
  msgstr ""
1462
 
1463
+ #: admin/html/form-settings-post.php:256
1464
  msgid "Post Draft"
1465
  msgstr ""
1466
 
1467
+ #: admin/html/form-settings-post.php:261
1468
  msgid "Enable Saving as draft"
1469
  msgstr ""
1470
 
1471
+ #: admin/html/form-settings-post.php:263
1472
  msgid "It will show a button to save as draft"
1473
  msgstr ""
1474
 
1475
+ #: admin/html/modal.php:4
1476
+ msgid "Modal window. Press escape to close."
1477
+ msgstr ""
1478
+
1479
+ #: admin/html/modal.php:5
1480
+ msgid "Close modal window"
1481
+ msgstr ""
1482
+
1483
  #: admin/html/modal.php:9
1484
  msgid "Select a Template"
1485
  msgstr ""
1496
  msgid "This integration is not installed."
1497
  msgstr ""
1498
 
1499
+ #: admin/html/support.php:148
1500
+ msgid "General Help Questions"
1501
+ msgstr ""
1502
+
1503
+ #: admin/html/support.php:148
1504
+ msgid "View all Documentations"
1505
+ msgstr ""
1506
+
1507
+ #: admin/html/support.php:198 admin/html/support.php:200
1508
+ msgid "Like The Plugin?"
1509
+ msgstr ""
1510
+
1511
+ #: admin/html/support.php:202
1512
+ msgid "Your Review is very important to us as it helps us to grow more."
1513
+ msgstr ""
1514
+
1515
+ #: admin/html/support.php:204
1516
+ msgid "Review Us on WP.org"
1517
+ msgstr ""
1518
+
1519
+ #: admin/html/support.php:208 admin/html/support.php:210
1520
+ msgid "Found Any Bugs?"
1521
+ msgstr ""
1522
+
1523
+ #: admin/html/support.php:212
1524
+ msgid "Report any Bug that you Discovered, Get Instant Solutions."
1525
+ msgstr ""
1526
+
1527
+ #: admin/html/support.php:214
1528
+ msgid "Report to GitHub"
1529
+ msgstr ""
1530
+
1531
+ #: admin/html/support.php:218 admin/html/support.php:220
1532
+ msgid "Need Any Assistance?"
1533
+ msgstr ""
1534
+
1535
+ #: admin/html/support.php:222
1536
+ msgid "Our EXPERT Support Team is always ready to Help you out."
1537
+ msgstr ""
1538
+
1539
+ #: admin/html/support.php:224
1540
+ msgid "Contact Support"
1541
+ msgstr ""
1542
+
1543
  #: admin/installer.php:27
1544
  msgid ""
1545
  "If you have not created <strong>WP User Frontend</strong> pages yet, you "
1575
 
1576
  #: admin/installer.php:83 class/subscription.php:335 class/subscription.php:355
1577
  #: class/subscription.php:356 class/subscription.php:357
1578
+ #: includes/free/admin/shortcode-button.php:102 wpuf-functions.php:1420
1579
  msgid "Subscription"
1580
  msgstr ""
1581
 
1584
  msgstr ""
1585
 
1586
  #: admin/installer.php:84 templates/dashboard/posts.php:81
1587
+ #: templates/dashboard.php:108
1588
  msgid "Payment"
1589
  msgstr ""
1590
 
1612
  "necessary steps to move forward."
1613
  msgstr ""
1614
 
1615
+ #: admin/installer.php:165 includes/free/admin/shortcode-button.php:98
1616
  msgid "Registration"
1617
  msgstr ""
1618
 
1620
  msgid "Sample Form"
1621
  msgstr ""
1622
 
 
 
 
 
1623
  #: admin/post-forms-list-table-view.php:23
1624
  msgid "Search Forms"
1625
  msgstr ""
1626
 
1627
+ #: admin/post-forms-list-table-view.php:39
1628
+ msgid "Learn more about <a href=\"%s\" target=\"_blank\">Frontend Posting</a>"
1629
+ msgstr ""
1630
+
1631
  #: admin/post-forms-list-table.php:44 wpuf-functions.php:61
1632
  msgid "Published"
1633
  msgstr ""
1662
  msgid "Shortcode"
1663
  msgstr ""
1664
 
1665
+ #: admin/post-forms-list-table.php:394
1666
+ msgid "Duplicate"
1667
+ msgstr ""
1668
+
1669
  #: admin/post-forms-list-table.php:415 wpuf-functions.php:65
1670
  msgid "Draft"
1671
  msgstr ""
1672
 
1673
+ #: admin/posting.php:66 class/asset-loader.php:51 class/render-form.php:1518
1674
+ #: wpuf.php:460
1675
  msgid "Are you sure?"
1676
  msgstr ""
1677
 
1678
+ #: admin/posting.php:72 class/asset-loader.php:57 wpuf.php:466
1679
  msgid "Allowed Files"
1680
  msgstr ""
1681
 
1682
+ #: admin/posting.php:75 class/asset-loader.php:60 wpuf.php:469
1683
  msgid "Maximum number of files reached!"
1684
  msgstr ""
1685
 
1686
+ #: admin/posting.php:76 class/asset-loader.php:61 wpuf.php:470
1687
  msgid "The file you have uploaded exceeds the file size limit. Please try again."
1688
  msgstr ""
1689
 
1690
+ #: admin/posting.php:77 class/asset-loader.php:62 wpuf.php:471
1691
  msgid "You have uploaded an incorrect file type. Please try again."
1692
  msgstr ""
1693
 
1737
  msgid "Payments"
1738
  msgstr ""
1739
 
1740
+ #: admin/settings-options.php:29
1741
+ msgid "E-Mails"
1742
+ msgstr ""
1743
+
1744
+ #: admin/settings-options.php:53
1745
  msgid "Edit Page"
1746
  msgstr ""
1747
 
1748
+ #: admin/settings-options.php:54
1749
  msgid "Select the page where [wpuf_edit] is located"
1750
  msgstr ""
1751
 
1752
+ #: admin/settings-options.php:60
1753
  msgid "Default Post Owner"
1754
  msgstr ""
1755
 
1756
+ #: admin/settings-options.php:61
1757
  msgid ""
1758
  "If guest post is enabled and user details are OFF, the posts are assigned "
1759
  "to this user"
1760
  msgstr ""
1761
 
1762
+ #: admin/settings-options.php:68
1763
  msgid "Admin area access"
1764
  msgstr ""
1765
 
1766
+ #: admin/settings-options.php:69
1767
  msgid "Allow you to block specific user role to WordPress admin area."
1768
  msgstr ""
1769
 
1770
+ #: admin/settings-options.php:73
1771
  msgid "Admin Only"
1772
  msgstr ""
1773
 
1774
+ #: admin/settings-options.php:74
1775
  msgid "Admins, Editors"
1776
  msgstr ""
1777
 
1778
+ #: admin/settings-options.php:75
1779
  msgid "Admins, Editors, Authors"
1780
  msgstr ""
1781
 
1782
+ #: admin/settings-options.php:76
1783
  msgid "Admins, Editors, Authors, Contributors"
1784
  msgstr ""
1785
 
1786
+ #: admin/settings-options.php:77
1787
  msgid "Default"
1788
  msgstr ""
1789
 
1790
+ #: admin/settings-options.php:82
1791
  msgid "Override the post edit link"
1792
  msgstr ""
1793
 
1794
+ #: admin/settings-options.php:83
1795
  msgid ""
1796
  "Users see the edit link in post if s/he is capable to edit the post/page. "
1797
  "Selecting <strong>Yes</strong> will override the default WordPress edit "
1798
  "post link in frontend"
1799
  msgstr ""
1800
 
1801
+ #: admin/settings-options.php:93
1802
  msgid "Custom Fields in post"
1803
  msgstr ""
1804
 
1805
+ #: admin/settings-options.php:94
1806
  msgid "Show custom fields on post content area"
1807
  msgstr ""
1808
 
1809
+ #: admin/settings-options.php:100
1810
  msgid "Load Scripts"
1811
  msgstr ""
1812
 
1813
+ #: admin/settings-options.php:101
1814
  msgid "Load scripts/styles in all pages"
1815
  msgstr ""
1816
 
1817
+ #: admin/settings-options.php:107
1818
  msgid "Insert Photo image size"
1819
  msgstr ""
1820
 
1821
+ #: admin/settings-options.php:108
1822
  msgid ""
1823
  "Default image size of \"<strong>Insert Photo</strong>\" button in post "
1824
  "content area"
1825
  msgstr ""
1826
 
1827
+ #: admin/settings-options.php:115
1828
+ msgid "Insert Photo image type"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1829
  msgstr ""
1830
 
1831
+ #: admin/settings-options.php:116
1832
+ msgid ""
1833
+ "Default image type of \"<strong>Insert Photo</strong>\" button in post "
1834
+ "content area"
1835
  msgstr ""
1836
 
1837
+ #: admin/settings-options.php:119
1838
+ msgid "Image only"
1839
  msgstr ""
1840
 
1841
+ #: admin/settings-options.php:120
1842
+ msgid "Image with link"
1843
  msgstr ""
1844
 
1845
+ #: admin/settings-options.php:126
1846
+ msgid "Enable Image Caption"
1847
  msgstr ""
1848
 
1849
+ #: admin/settings-options.php:127
1850
+ msgid "Allow users to update image/video title, caption and description"
1851
  msgstr ""
1852
 
1853
+ #: admin/settings-options.php:133
1854
+ msgid "Default Post Form"
1855
  msgstr ""
1856
 
1857
+ #: admin/settings-options.php:134
1858
+ msgid "Fallback form for post editing if no associated form found"
1859
  msgstr ""
1860
 
1861
+ #: admin/settings-options.php:140
1862
+ msgid "reCAPTCHA Site Key"
1863
  msgstr ""
1864
 
1865
+ #: admin/settings-options.php:144
1866
+ msgid "reCAPTCHA Secret Key"
 
 
1867
  msgstr ""
1868
 
1869
+ #: admin/settings-options.php:145
1870
+ msgid ""
1871
+ "<a target=\"_blank\" href=\"https://www.google.com/recaptcha/\">Register "
1872
+ "here</a> to get reCaptcha Site and Secret keys."
1873
  msgstr ""
1874
 
1875
+ #: admin/settings-options.php:149
1876
+ msgid "Custom CSS codes"
1877
  msgstr ""
1878
 
1879
+ #: admin/settings-options.php:150
1880
+ msgid ""
1881
+ "If you want to add your custom CSS code, it will be added on page header "
1882
+ "wrapped with style tag"
1883
  msgstr ""
1884
 
1885
+ #: admin/settings-options.php:157
1886
+ msgid "Users can edit post?"
1887
  msgstr ""
1888
 
1889
+ #: admin/settings-options.php:158
1890
+ msgid "Users will be able to edit their own posts"
1891
  msgstr ""
1892
 
1893
+ #: admin/settings-options.php:168
1894
+ msgid "User can delete post?"
1895
  msgstr ""
1896
 
1897
+ #: admin/settings-options.php:169
1898
+ msgid "Users will be able to delete their own posts"
1899
  msgstr ""
1900
 
1901
+ #: admin/settings-options.php:179
1902
+ msgid "Pending Post Edit"
1903
  msgstr ""
1904
 
1905
+ #: admin/settings-options.php:180
1906
+ msgid "Disable post editing while post in \"pending\" status"
1907
  msgstr ""
1908
 
1909
+ #: admin/settings-options.php:186
1910
+ msgid "Posts per page"
1911
  msgstr ""
1912
 
1913
+ #: admin/settings-options.php:187
1914
+ msgid "How many posts will be listed in a page"
1915
  msgstr ""
1916
 
1917
+ #: admin/settings-options.php:193
1918
+ msgid "Show user bio"
1919
  msgstr ""
1920
 
1921
+ #: admin/settings-options.php:194
1922
+ msgid "Users biographical info will be shown"
1923
  msgstr ""
1924
 
1925
+ #: admin/settings-options.php:200
1926
+ msgid "Show post count"
1927
  msgstr ""
1928
 
1929
+ #: admin/settings-options.php:201
1930
+ msgid "Show how many posts are created by the user"
1931
  msgstr ""
1932
 
1933
+ #: admin/settings-options.php:207
1934
+ msgid "Show Featured Image"
1935
  msgstr ""
1936
 
1937
+ #: admin/settings-options.php:208
1938
+ msgid "Show featured image of the post (Overridden by Shortcode)"
1939
  msgstr ""
1940
 
1941
+ #: admin/settings-options.php:213
1942
+ msgid "Featured Image size"
1943
  msgstr ""
1944
 
1945
+ #: admin/settings-options.php:227
1946
+ msgid "Auto Login After Registration"
 
 
1947
  msgstr ""
1948
 
1949
+ #: admin/settings-options.php:228
1950
+ msgid "If enabled, users after registration will be logged in to the system"
1951
  msgstr ""
1952
 
1953
+ #: admin/settings-options.php:234
1954
+ msgid "Login/Registration override"
1955
  msgstr ""
1956
 
1957
+ #: admin/settings-options.php:235
1958
+ msgid ""
1959
+ "If enabled, default login and registration forms will be overridden by WPUF "
1960
+ "with pages below"
1961
  msgstr ""
1962
 
1963
+ #: admin/settings-options.php:241
1964
+ msgid "Registration Page"
1965
  msgstr ""
1966
 
1967
+ #: admin/settings-options.php:242
1968
+ msgid ""
1969
+ "Select the page you want to use as registration page override <em>(should "
1970
+ "have shortcode)</em>"
1971
  msgstr ""
1972
 
1973
+ #: admin/settings-options.php:248
1974
+ msgid "Login Page"
1975
  msgstr ""
1976
 
1977
+ #: admin/settings-options.php:249
1978
+ msgid "Select the page which contains <code>[wpuf-login]</code> shortcode"
1979
  msgstr ""
1980
 
1981
+ #: admin/settings-options.php:257
1982
+ msgid "Charge for posting"
1983
  msgstr ""
1984
 
1985
+ #: admin/settings-options.php:258
1986
+ msgid "Charge user for submitting a post"
1987
  msgstr ""
1988
 
1989
+ #: admin/settings-options.php:268
1990
+ msgid "Force pack purchase"
1991
  msgstr ""
1992
 
1993
+ #: admin/settings-options.php:269
1994
+ msgid "When active, users must have to buy a pack for posting"
1995
  msgstr ""
1996
 
1997
+ #: admin/settings-options.php:273
1998
+ msgid "Disable"
1999
  msgstr ""
2000
 
2001
+ #: admin/settings-options.php:274
2002
+ msgid "Enable"
2003
  msgstr ""
2004
 
2005
+ #: admin/settings-options.php:279
2006
+ msgid "Subscription Pack Page"
2007
  msgstr ""
2008
 
2009
+ #: admin/settings-options.php:280
2010
+ msgid "Select the page where <code>[wpuf_sub_pack]</code> located."
2011
  msgstr ""
2012
 
2013
+ #: admin/settings-options.php:286
2014
+ msgid "Subscription at registration"
 
2015
  msgstr ""
2016
 
2017
+ #: admin/settings-options.php:287
2018
+ msgid "Registration time redirect to subscription page"
2019
  msgstr ""
2020
 
2021
+ #: admin/settings-options.php:292
2022
+ msgid "Currency"
2023
  msgstr ""
2024
 
2025
+ #: admin/settings-options.php:299
2026
+ msgid "Currency Position"
2027
  msgstr ""
2028
 
2029
+ #: admin/settings-options.php:303
2030
+ msgid "Left"
2031
  msgstr ""
2032
 
2033
+ #: admin/settings-options.php:304
2034
+ msgid "Right"
2035
  msgstr ""
2036
 
2037
+ #: admin/settings-options.php:305
2038
+ msgid "Left with space"
2039
  msgstr ""
2040
 
2041
+ #: admin/settings-options.php:306
2042
+ msgid "Right with space"
 
2043
  msgstr ""
2044
 
2045
+ #: admin/settings-options.php:311
2046
+ msgid "Thousand Separator"
2047
  msgstr ""
2048
 
2049
+ #: admin/settings-options.php:312
2050
+ msgid "This sets the thousand separator of displayed prices."
 
2051
  msgstr ""
2052
 
2053
+ #: admin/settings-options.php:320
2054
+ msgid "Decimal Separator"
2055
  msgstr ""
2056
 
2057
+ #: admin/settings-options.php:321
2058
+ msgid "This sets the decimal separator of displayed prices."
 
2059
  msgstr ""
2060
 
2061
+ #: admin/settings-options.php:328
2062
+ msgid "Number of Decimals"
 
2063
  msgstr ""
2064
 
2065
+ #: admin/settings-options.php:329
2066
+ msgid "This sets the number of decimal points shown in displayed prices."
2067
  msgstr ""
2068
 
2069
+ #: admin/settings-options.php:346
2070
+ msgid "Enable demo/sandbox mode"
2071
  msgstr ""
2072
 
2073
+ #: admin/settings-options.php:347
2074
+ msgid "When sandbox mode is active, all payment gateway will be used in demo mode"
2075
  msgstr ""
2076
 
2077
+ #: admin/settings-options.php:353
2078
+ msgid "Payment Page"
2079
  msgstr ""
2080
 
2081
+ #: admin/settings-options.php:354
2082
+ msgid "This page will be used to process payment options"
2083
  msgstr ""
2084
 
2085
+ #: admin/settings-options.php:360
2086
+ msgid "Payment Success Page"
2087
  msgstr ""
2088
 
2089
+ #: admin/settings-options.php:361 lib/gateway/bank.php:37
2090
+ msgid "After payment users will be redirected here"
2091
  msgstr ""
2092
 
2093
+ #: admin/settings-options.php:367
2094
+ msgid "Payment Gateways"
2095
  msgstr ""
2096
 
2097
+ #: admin/settings-options.php:368
2098
+ msgid "Active payment gateways"
2099
  msgstr ""
2100
 
2101
+ #: admin/settings-options.php:376
2102
+ msgid "Guest Email Subject"
2103
  msgstr ""
2104
 
2105
+ #: admin/settings-options.php:377
2106
+ msgid "This sets the subject of the emails sent to guest users"
 
 
 
 
2107
  msgstr ""
2108
 
2109
+ #: admin/settings-options.php:383
2110
+ msgid "Guest Email Body"
2111
  msgstr ""
2112
 
2113
+ #: admin/settings-options.php:384
2114
+ msgid ""
2115
+ "This sets the body of the emails sent to guest users. Please DON'T edit the "
2116
+ "'{activation_link}' part"
2117
  msgstr ""
2118
 
2119
+ #: admin/settings-options.php:407
2120
  msgid ""
2121
+ "Select profile/registration forms for user roles. These forms will be used "
2122
+ "to populate extra edit profile fields in backend."
 
2123
  msgstr ""
2124
 
2125
+ #: admin/settings-options.php:418
2126
+ msgid " - select - "
 
 
 
2127
  msgstr ""
2128
 
2129
  #: admin/template-post.php:193
2223
  msgid "Install Now"
2224
  msgstr ""
2225
 
2226
+ #: class/asset-loader.php:31 wpuf.php:391
2227
  msgid "is required"
2228
  msgstr ""
2229
 
2230
+ #: class/asset-loader.php:32 wpuf.php:392
2231
  msgid "does not match"
2232
  msgstr ""
2233
 
2234
+ #: class/asset-loader.php:33 wpuf.php:393
2235
  msgid "is not valid"
2236
  msgstr ""
2237
 
2238
+ #: class/asset-loader.php:45 wpuf.php:454
2239
  msgid "Please fix the errors to proceed"
2240
  msgstr ""
2241
 
2242
+ #: class/asset-loader.php:47 wpuf.php:456
2243
  msgid "Word limit reached"
2244
  msgstr ""
2245
 
2295
  msgid "Your current password is incorrect."
2296
  msgstr ""
2297
 
2298
+ #: class/frontend-dashboard.php:65 templates/dashboard/posts.php:36
2299
  msgid "Post Deleted"
2300
  msgstr ""
2301
 
2302
+ #: class/frontend-dashboard.php:108
2303
  msgid "Author Info"
2304
  msgstr ""
2305
 
2306
+ #: class/frontend-dashboard.php:112 includes/free/edit-user.php:97
2307
  msgid "%s"
2308
  msgstr ""
2309
 
2310
+ #: class/frontend-dashboard.php:144 templates/dashboard/posts.php:30
2311
  msgid "You are not the post author. Cheeting huh!"
2312
  msgstr ""
2313
 
2314
+ #: class/frontend-form-post.php:86
2315
  msgid "You are not logged in"
2316
  msgstr ""
2317
 
2318
+ #: class/frontend-form-post.php:94 class/frontend-form-post.php:105
2319
  msgid "Invalid post"
2320
  msgstr ""
2321
 
2322
+ #: class/frontend-form-post.php:99
2323
  msgid "Post Editing is disabled"
2324
  msgstr ""
2325
 
2326
+ #: class/frontend-form-post.php:110
2327
  msgid "You are not allowed to edit"
2328
  msgstr ""
2329
 
2330
+ #: class/frontend-form-post.php:122
2331
  msgid "I don't know how to edit this post, I don't have the form ID"
2332
  msgstr ""
2333
 
2334
+ #: class/frontend-form-post.php:128
2335
  msgid "You can't edit a post while in pending mode."
2336
  msgstr ""
2337
 
2338
+ #: class/frontend-form-post.php:198
2339
  msgid "Invalid email address."
2340
  msgstr ""
2341
 
2342
+ #: class/frontend-form-post.php:207
2343
  msgid ""
2344
  "You already have an account in our site. Please login to continue.\n"
2345
  "\n"
2348
  "Click 'Cancel' to stay at this page."
2349
  msgstr ""
2350
 
2351
+ #: class/frontend-form-post.php:600
2352
  msgid "Something went wrong"
2353
  msgstr ""
2354
 
2441
  msgid "Please make sure you've published your form."
2442
  msgstr ""
2443
 
2444
+ #: class/render-form.php:1205 includes/free/edit-profile.php:203
2445
  #: templates/dashboard/edit-profile.php:36
2446
  msgid "Strength indicator"
2447
  msgstr ""
2448
 
2449
+ #: class/render-form.php:1267 class/render-form.php:1380
2450
  msgid "-- Select --"
2451
  msgstr ""
2452
 
2453
+ #: class/render-form.php:1322
2454
  msgid "This field is no longer available."
2455
  msgstr ""
2456
 
2559
  msgstr ""
2560
 
2561
  #: class/transactions-list-table.php:41 templates/dashboard/posts.php:75
2562
+ #: templates/dashboard.php:102
2563
  msgid "Status"
2564
  msgstr ""
2565
 
2696
  msgid " Add Form"
2697
  msgstr ""
2698
 
2699
+ #: includes/free/class-login.php:208 includes/free/class-login.php:264
2700
+ #: templates/login-form.php:37
2701
+ msgid "Log In"
2702
+ msgstr ""
2703
+
2704
+ #: includes/free/class-login.php:212 includes/free/class-registration.php:124
2705
+ #: includes/free/form-element.php:342 templates/registration-form.php:74
2706
+ msgid "Register"
2707
+ msgstr ""
2708
+
2709
+ #: includes/free/class-login.php:216
2710
+ msgid "Lost Password"
2711
+ msgstr ""
2712
+
2713
+ #: includes/free/class-login.php:254
2714
+ msgid ""
2715
+ "Please enter your username or email address. You will receive a link to "
2716
+ "create a new password via email."
2717
+ msgstr ""
2718
+
2719
+ #: includes/free/class-login.php:264
2720
+ msgid "Your password has been reset. %s"
2721
+ msgstr ""
2722
+
2723
+ #: includes/free/class-login.php:268
2724
+ msgid "Enter your new password below.."
2725
+ msgstr ""
2726
+
2727
+ #: includes/free/class-login.php:278
2728
+ msgid "Check your e-mail for the confirmation link."
2729
+ msgstr ""
2730
+
2731
+ #: includes/free/class-login.php:282
2732
+ msgid "You are now logged out."
2733
+ msgstr ""
2734
+
2735
+ #: includes/free/class-login.php:311 includes/free/class-login.php:316
2736
+ #: includes/free/class-login.php:321 includes/free/class-login.php:331
2737
+ #: includes/free/class-registration.php:192
2738
+ #: includes/free/class-registration.php:197
2739
+ #: includes/free/class-registration.php:202
2740
+ #: includes/free/class-registration.php:207
2741
+ #: includes/free/class-registration.php:212
2742
+ #: includes/free/class-registration.php:217
2743
+ #: includes/free/class-registration.php:222
2744
+ #: includes/free/class-registration.php:227
2745
+ #: includes/free/class-registration.php:232
2746
+ #: includes/free/class-registration.php:242
2747
+ msgid "Error"
2748
+ msgstr ""
2749
+
2750
+ #: includes/free/class-login.php:316 includes/free/class-registration.php:212
2751
+ msgid "Username is required."
2752
+ msgstr ""
2753
+
2754
+ #: includes/free/class-login.php:321 includes/free/class-registration.php:217
2755
+ msgid "Password is required."
2756
+ msgstr ""
2757
+
2758
+ #: includes/free/class-login.php:331 includes/free/class-registration.php:242
2759
+ msgid "A user could not be found with this email address."
2760
+ msgstr ""
2761
+
2762
+ #: includes/free/class-login.php:421
2763
+ msgid "Please enter your password."
2764
+ msgstr ""
2765
+
2766
+ #: includes/free/class-login.php:426
2767
+ msgid "Passwords do not match."
2768
+ msgstr ""
2769
+
2770
+ #: includes/free/class-login.php:469
2771
+ msgid "Enter a username or e-mail address."
2772
+ msgstr ""
2773
+
2774
+ #: includes/free/class-login.php:477
2775
+ msgid "There is no user registered with that email address."
2776
+ msgstr ""
2777
+
2778
+ #: includes/free/class-login.php:495
2779
+ msgid "Invalid username or e-mail."
2780
+ msgstr ""
2781
+
2782
+ #: includes/free/class-login.php:509
2783
+ msgid "Password reset is not allowed for this user"
2784
+ msgstr ""
2785
+
2786
+ #: includes/free/class-login.php:553 includes/free/class-login.php:558
2787
+ #: includes/free/class-login.php:565
2788
+ msgid "Invalid key"
2789
+ msgstr ""
2790
+
2791
+ #: includes/free/class-login.php:588
2792
+ msgid ""
2793
+ "<strong>Your account is not active.</strong><br>Please check your email for "
2794
+ "activation link."
2795
+ msgstr ""
2796
+
2797
+ #: includes/free/class-login.php:636
2798
+ msgid "Your account has been activated"
2799
+ msgstr ""
2800
+
2801
+ #: includes/free/class-login.php:680
2802
+ msgid "Someone requested that the password be reset for the following account:"
2803
+ msgstr ""
2804
+
2805
+ #: includes/free/class-login.php:682
2806
+ msgid "Username: %s"
2807
+ msgstr ""
2808
+
2809
+ #: includes/free/class-login.php:683
2810
+ msgid "If this was a mistake, just ignore this email and nothing will happen."
2811
+ msgstr ""
2812
+
2813
+ #: includes/free/class-login.php:684
2814
+ msgid "To reset your password, visit the following address:"
2815
+ msgstr ""
2816
+
2817
+ #: includes/free/class-login.php:693
2818
+ msgid "[%s] Password Reset"
2819
+ msgstr ""
2820
+
2821
+ #: includes/free/class-login.php:698
2822
+ msgid "The e-mail could not be sent."
2823
+ msgstr ""
2824
+
2825
+ #: includes/free/class-login.php:698
2826
+ msgid "Possible reason: your host may have disabled the mail() function."
2827
+ msgstr ""
2828
+
2829
+ #: includes/free/class-registration.php:197
2830
+ msgid "First name is required."
2831
+ msgstr ""
2832
+
2833
+ #: includes/free/class-registration.php:202
2834
+ msgid "Last name is required."
2835
+ msgstr ""
2836
+
2837
+ #: includes/free/class-registration.php:207
2838
+ msgid "Email is required."
2839
+ msgstr ""
2840
+
2841
+ #: includes/free/class-registration.php:222
2842
+ msgid "Confirm Password is required."
2843
+ msgstr ""
2844
+
2845
+ #: includes/free/class-registration.php:227
2846
+ msgid "Passwords are not same."
2847
+ msgstr ""
2848
+
2849
+ #: includes/free/class-registration.php:232
2850
+ msgid "A user with same username already exists."
2851
+ msgstr ""
2852
+
2853
  #: includes/free/edit-profile.php:32 includes/free/edit-user.php:37
2854
  #: templates/unauthorized.php:3
2855
  msgid "This page is restricted. Please %s to view this page."
2861
 
2862
  #: includes/free/edit-profile.php:101 includes/free/edit-user.php:92
2863
  #: includes/free/edit-user.php:144 templates/login-form.php:21
2864
+ #: templates/registration-form.php:51
2865
  msgid "Username"
2866
  msgstr ""
2867
 
2919
  msgid "New Password"
2920
  msgstr ""
2921
 
2922
+ #: includes/free/edit-profile.php:194 templates/registration-form.php:65
2923
  msgid "Confirm Password"
2924
  msgstr ""
2925
 
3068
  msgid "Enable post notification"
3069
  msgstr ""
3070
 
3071
+ #: includes/free/form-element.php:221 includes/free/form-element.php:258
3072
+ msgid "To"
3073
+ msgstr ""
3074
+
3075
+ #: includes/free/form-element.php:228 includes/free/form-element.php:263
3076
+ msgid "Subject"
3077
+ msgstr ""
3078
+
3079
  #: includes/free/form-element.php:233 includes/free/form-element.php:268
3080
  msgid "Message"
3081
  msgstr ""
3104
  msgid "Profile updated successfully"
3105
  msgstr ""
3106
 
 
 
 
 
3107
  #: includes/free/form-element.php:351
3108
  msgid "Enable Email Verfication"
3109
  msgstr ""
3128
  msgid "Update Button text"
3129
  msgstr ""
3130
 
3131
+ #: includes/free/loader.php:83 includes/free/loader.php:113
3132
  msgid "Coupons"
3133
  msgstr ""
3134
 
3142
  msgid "Users can also register themselves by using a subscription pack."
3143
  msgstr ""
3144
 
3145
+ #: includes/free/loader.php:100 includes/free/loader.php:121
3146
  msgid "This feature is only available in the Pro Version."
3147
  msgstr ""
3148
 
3149
+ #: includes/free/loader.php:104 includes/free/loader.php:125
3150
  msgid "Upgrade to Pro Version"
3151
  msgstr ""
3152
 
3153
+ #: includes/free/loader.php:105
3154
+ msgid "Learn more about Registration"
3155
+ msgstr ""
3156
+
3157
+ #: includes/free/loader.php:117
3158
  msgid "Use Coupon codes for subscription for discounts."
3159
  msgstr ""
3160
 
3161
+ #: includes/free/loader.php:126
3162
+ msgid "Learn more about Coupons"
3163
+ msgstr ""
3164
+
3165
+ #: includes/free/loader.php:167
3166
+ msgid "Upgrade to Pro"
3167
  msgstr ""
3168
 
3169
  #: includes/free/post-form-templates/woocommerce.php:12
3256
  msgid "Thanks for being with us."
3257
  msgstr ""
3258
 
3259
+ #: lib/gateway/paypal.php:61
3260
  msgid "Subscription %s at %s"
3261
  msgstr ""
3262
 
3263
+ #: lib/gateway/paypal.php:92
3264
  msgid "PayPal Email"
3265
  msgstr ""
3266
 
3267
+ #: lib/gateway/paypal.php:97
3268
  msgid "PayPal Instruction"
3269
  msgstr ""
3270
 
3271
+ #: lib/gateway/paypal.php:104
3272
  msgid "PayPal API username"
3273
  msgstr ""
3274
 
3275
+ #: lib/gateway/paypal.php:108
3276
  msgid "PayPal API password"
3277
  msgstr ""
3278
 
3279
+ #: lib/gateway/paypal.php:112
3280
  msgid "PayPal API signature"
3281
  msgstr ""
3282
 
3331
  msgid "You have created <span>%d</span> %s"
3332
  msgstr ""
3333
 
3334
+ #: templates/dashboard/posts.php:104 templates/dashboard.php:131
3335
  msgid "No Image"
3336
  msgstr ""
3337
 
3338
+ #: templates/dashboard/posts.php:118 templates/dashboard.php:145
3339
  msgid "Permalink to %s"
3340
  msgstr ""
3341
 
3342
+ #: templates/dashboard/posts.php:134 templates/dashboard.php:189
3343
  msgid "Pay Now"
3344
  msgstr ""
3345
 
3346
+ #: templates/dashboard/posts.php:178 templates/dashboard.php:233
3347
  msgid "&laquo;"
3348
  msgstr ""
3349
 
3350
+ #: templates/dashboard/posts.php:179 templates/dashboard.php:234
3351
  msgid "&raquo;"
3352
  msgstr ""
3353
 
3354
+ #: templates/dashboard/posts.php:193 templates/dashboard.php:248
3355
  msgid "No %s found"
3356
  msgstr ""
3357
 
3363
  msgid "%s's Dashboard"
3364
  msgstr ""
3365
 
3366
+ #: templates/dashboard.php:76
3367
+ msgid "Category"
3368
+ msgstr ""
3369
+
3370
  #: templates/logged-in.php:8
3371
  msgid "Hello %s"
3372
  msgstr ""
3375
  msgid "You are currently logged in! %s?"
3376
  msgstr ""
3377
 
3378
+ #: templates/login-form.php:25 templates/registration-form.php:58
3379
  msgid "Password"
3380
  msgstr ""
3381
 
3383
  msgid "Remember Me"
3384
  msgstr ""
3385
 
 
 
 
 
3386
  #: templates/lost-pass-form.php:14
3387
  msgid "Username or E-mail:"
3388
  msgstr ""
3391
  msgid "Get New Password"
3392
  msgstr ""
3393
 
3394
+ #: templates/registration-form.php:16
3395
+ msgid "Registration has been successful!"
3396
+ msgstr ""
3397
+
3398
  #: templates/reset-pass-form.php:14
3399
  msgid "New password"
3400
  msgstr ""
3675
  msgid "Egyptian Pound"
3676
  msgstr ""
3677
 
3678
+ #: wpuf-functions.php:2115
3679
+ msgid "WPUF Forms"
3680
+ msgstr ""
3681
+
3682
+ #: wpuf.php:138
3683
  msgid "Your Post Has Been Expired"
3684
  msgstr ""
3685
 
3686
+ #: wpuf.php:598
3687
  msgid "Error: Nonce verification failed"
3688
  msgstr ""
3689
 
lib/class-weforms-upsell.php CHANGED
@@ -353,12 +353,6 @@ class WeForms_Upsell {
353
  wp_send_json_error( __( 'You don\'t have permission to install the plugins' ) );
354
  }
355
 
356
- if ( ! class_exists( 'WP_User_Frontend' ) ) {
357
- $wpuf_status = $this->install_plugin( 'wp-user-frontend', 'wpuf.php' );
358
-
359
- $this->fail_on_error( $wpuf_status );
360
- }
361
-
362
  $weforms_status = $this->install_plugin( 'weforms', 'weforms.php' );
363
  $this->fail_on_error( $weforms_status );
364
 
353
  wp_send_json_error( __( 'You don\'t have permission to install the plugins' ) );
354
  }
355
 
 
 
 
 
 
 
356
  $weforms_status = $this->install_plugin( 'weforms', 'weforms.php' );
357
  $this->fail_on_error( $weforms_status );
358
 
lib/gateway/paypal.php CHANGED
@@ -12,19 +12,20 @@ class WPUF_Paypal {
12
  private $gateway_cancel_url;
13
  private $test_mode;
14
 
15
- function __construct() {
16
  $this->gateway_url = 'https://www.paypal.com/webscr/?';
17
  $this->gateway_cancel_url = 'https://api-3t.paypal.com/nvp';
18
  $this->test_mode = false;
19
 
20
  add_action( 'wpuf_gateway_paypal', array( $this, 'prepare_to_send' ) );
21
  add_action( 'wpuf_options_payment', array( $this, 'payment_options' ) );
22
- add_action( 'init', array( $this, 'paypal_success' ) );
 
23
  add_action( 'wpuf_cancel_payment_paypal', array( $this, 'handle_cancel_subscription' ) );
24
  add_action( 'wpuf_cancel_subscription_paypal', array( $this, 'handle_cancel_subscription' ) );
25
  }
26
 
27
- function subscription_cancel( $user_id ) {
28
  $sub_meta = 'cancel';
29
  WPUF_Subscription::init()->update_user_subscription_meta( $user_id, $sub_meta );
30
  }
@@ -36,7 +37,7 @@ class WPUF_Paypal {
36
  * @param string $status
37
  * @return void
38
  */
39
- function recurring_change_status( $user_id, $status ) {
40
  global $wp_version;
41
 
42
  $sub_info = get_user_meta( $user_id, '_wpuf_subscription_pack', true );
@@ -84,7 +85,7 @@ class WPUF_Paypal {
84
  * @param type $options
85
  * @return string
86
  */
87
- function payment_options( $options ) {
88
 
89
  $options[] = array(
90
  'name' => 'paypal_email',
@@ -120,7 +121,7 @@ class WPUF_Paypal {
120
  * @since 0.8
121
  * @param array $data payment info
122
  */
123
- function prepare_to_send( $data ) {
124
 
125
  $user_id = $data['user_info']['id'];
126
  $listener_url = add_query_arg ( 'action', 'wpuf_paypal_success', home_url( '/' ) );
@@ -229,7 +230,7 @@ class WPUF_Paypal {
229
  *
230
  * @since 0.8
231
  */
232
- function set_mode() {
233
  if ( wpuf_get_option( 'sandbox_mode', 'wpuf_payment' ) == 'on' ) {
234
  $this->gateway_url = 'https://www.sandbox.paypal.com/cgi-bin/webscr/?';
235
  $this->gateway_cancel_url = 'https://api-3t.sandbox.paypal.com/nvp';
@@ -237,12 +238,21 @@ class WPUF_Paypal {
237
  }
238
  }
239
 
 
 
 
 
 
 
 
 
 
240
  /**
241
  * Handle the payment info sent from paypal
242
  *
243
  * @since 0.8
244
  */
245
- function paypal_success() {
246
 
247
  $postdata = $_POST;
248
 
@@ -299,7 +309,6 @@ class WPUF_Paypal {
299
  WP_User_Frontend::log( 'paypal', 'got web_accept. type: ' . $custom->type . '. item_number: ' . $item_number );
300
 
301
  //verify payment
302
- $verified = $this->validateIpn();
303
  $status = 'web_accept';
304
 
305
  switch ($custom->type ) {
@@ -314,10 +323,6 @@ class WPUF_Paypal {
314
  break;
315
  }
316
 
317
- if ( $verified ) {
318
- $insert_payment = true;
319
- }
320
-
321
  } else if (
322
  isset ( $postdata['verify_sign'] )
323
  && !empty( $postdata['verify_sign'] )
@@ -328,11 +333,7 @@ class WPUF_Paypal {
328
  && isset ( $postdata['txn_type'] )
329
  && $postdata['txn_type'] == 'web_accept'
330
  ) {
331
-
332
-
333
-
334
  //verify payment
335
- $verified = $this->validateIpn();
336
  $status = 'web_accept';
337
  switch ($custom->type ) {
338
  case 'post':
@@ -346,47 +347,39 @@ class WPUF_Paypal {
346
  break;
347
  }
348
 
349
- if ( $verified ) {
350
- $insert_payment = true;
351
- }
352
-
353
  } // payment type
354
 
355
- if ( $insert_payment ) {
356
- $data = array(
357
- 'user_id' => (int) $custom->user_id,
358
- 'status' => strtolower( $postdata['payment_status'] ),
359
- 'cost' => $postdata['mc_gross'],
360
- 'post_id' => $post_id,
361
- 'pack_id' => $pack_id,
362
- 'payer_first_name' => $postdata['first_name'],
363
- 'payer_last_name' => $postdata['last_name'],
364
- 'payer_email' => $postdata['payer_email'],
365
- 'payment_type' => 'Paypal',
366
- 'payer_address' => $postdata['residence_country'],
367
- 'transaction_id' => $postdata['txn_id'],
368
- 'created' => current_time( 'mysql' ),
369
- 'profile_id' => isset( $postdata['subscr_id'] ) ? $postdata['subscr_id'] : null,
370
- );
371
-
372
- WP_User_Frontend::log( 'payment', 'inserting payment to database. ' . print_r( $data, true ) );
373
-
374
- $transaction_id = wp_strip_all_tags( $postdata['txn_id'] );
375
- WPUF_Payment::insert_payment( $data, $transaction_id, $is_recurring );
376
-
377
- if ( $coupon_id ) {
378
- $pre_usage = get_post_meta( $post_id, '_coupon_used', true );
379
- $new_use = $pre_usage + 1;
380
-
381
- update_post_meta( $post_id, '_coupon_used', $coupon_id );
382
- }
383
 
384
- delete_user_meta( $custom->user_id, '_wpuf_user_active' );
385
- delete_user_meta( $custom->user_id, '_wpuf_activation_key' );
386
 
387
- } else {
388
- WP_User_Frontend::log( 'payment', 'inserting payment failed.' );
 
 
 
 
 
 
389
  }
 
 
 
 
390
  }
391
  }
392
 
12
  private $gateway_cancel_url;
13
  private $test_mode;
14
 
15
+ public function __construct() {
16
  $this->gateway_url = 'https://www.paypal.com/webscr/?';
17
  $this->gateway_cancel_url = 'https://api-3t.paypal.com/nvp';
18
  $this->test_mode = false;
19
 
20
  add_action( 'wpuf_gateway_paypal', array( $this, 'prepare_to_send' ) );
21
  add_action( 'wpuf_options_payment', array( $this, 'payment_options' ) );
22
+ add_action( 'init', array( $this, 'check_response' ) );
23
+ add_action( 'wpuf_paypal_ipn_success', array( $this, 'paypal_success' ) );
24
  add_action( 'wpuf_cancel_payment_paypal', array( $this, 'handle_cancel_subscription' ) );
25
  add_action( 'wpuf_cancel_subscription_paypal', array( $this, 'handle_cancel_subscription' ) );
26
  }
27
 
28
+ public function subscription_cancel( $user_id ) {
29
  $sub_meta = 'cancel';
30
  WPUF_Subscription::init()->update_user_subscription_meta( $user_id, $sub_meta );
31
  }
37
  * @param string $status
38
  * @return void
39
  */
40
+ public function recurring_change_status( $user_id, $status ) {
41
  global $wp_version;
42
 
43
  $sub_info = get_user_meta( $user_id, '_wpuf_subscription_pack', true );
85
  * @param type $options
86
  * @return string
87
  */
88
+ public function payment_options( $options ) {
89
 
90
  $options[] = array(
91
  'name' => 'paypal_email',
121
  * @since 0.8
122
  * @param array $data payment info
123
  */
124
+ public function prepare_to_send( $data ) {
125
 
126
  $user_id = $data['user_info']['id'];
127
  $listener_url = add_query_arg ( 'action', 'wpuf_paypal_success', home_url( '/' ) );
230
  *
231
  * @since 0.8
232
  */
233
+ public function set_mode() {
234
  if ( wpuf_get_option( 'sandbox_mode', 'wpuf_payment' ) == 'on' ) {
235
  $this->gateway_url = 'https://www.sandbox.paypal.com/cgi-bin/webscr/?';
236
  $this->gateway_cancel_url = 'https://api-3t.sandbox.paypal.com/nvp';
238
  }
239
  }
240
 
241
+ /**
242
+ * Check for PayPal IPN Response.
243
+ */
244
+ public function check_response() {
245
+ if ( isset( $_GET['action'] ) && $_GET['action'] == 'wpuf_paypal_success' && $this->validateIpn() ) {
246
+ do_action( 'wpuf_paypal_ipn_success');
247
+ }
248
+ }
249
+
250
  /**
251
  * Handle the payment info sent from paypal
252
  *
253
  * @since 0.8
254
  */
255
+ public function paypal_success() {
256
 
257
  $postdata = $_POST;
258
 
309
  WP_User_Frontend::log( 'paypal', 'got web_accept. type: ' . $custom->type . '. item_number: ' . $item_number );
310
 
311
  //verify payment
 
312
  $status = 'web_accept';
313
 
314
  switch ($custom->type ) {
323
  break;
324
  }
325
 
 
 
 
 
326
  } else if (
327
  isset ( $postdata['verify_sign'] )
328
  && !empty( $postdata['verify_sign'] )
333
  && isset ( $postdata['txn_type'] )
334
  && $postdata['txn_type'] == 'web_accept'
335
  ) {
 
 
 
336
  //verify payment
 
337
  $status = 'web_accept';
338
  switch ($custom->type ) {
339
  case 'post':
347
  break;
348
  }
349
 
 
 
 
 
350
  } // payment type
351
 
352
+ $data = array(
353
+ 'user_id' => (int) $custom->user_id,
354
+ 'status' => strtolower( $postdata['payment_status'] ),
355
+ 'cost' => $postdata['mc_gross'],
356
+ 'post_id' => $post_id,
357
+ 'pack_id' => $pack_id,
358
+ 'payer_first_name' => $postdata['first_name'],
359
+ 'payer_last_name' => $postdata['last_name'],
360
+ 'payer_email' => $postdata['payer_email'],
361
+ 'payment_type' => 'Paypal',
362
+ 'payer_address' => isset( $postdata['residence_country'] ) ? $postdata['residence_country'] : null,
363
+ 'transaction_id' => $postdata['txn_id'],
364
+ 'created' => current_time( 'mysql' ),
365
+ 'profile_id' => isset( $postdata['subscr_id'] ) ? $postdata['subscr_id'] : null,
366
+ );
 
 
 
 
 
 
 
 
 
 
 
 
 
367
 
368
+ WP_User_Frontend::log( 'payment', 'inserting payment to database. ' . print_r( $data, true ) );
 
369
 
370
+ $transaction_id = wp_strip_all_tags( $postdata['txn_id'] );
371
+ WPUF_Payment::insert_payment( $data, $transaction_id, $is_recurring );
372
+
373
+ if ( $coupon_id ) {
374
+ $pre_usage = get_post_meta( $post_id, '_coupon_used', true );
375
+ $new_use = $pre_usage + 1;
376
+
377
+ update_post_meta( $post_id, '_coupon_used', $coupon_id );
378
  }
379
+
380
+ delete_user_meta( $custom->user_id, '_wpuf_user_active' );
381
+ delete_user_meta( $custom->user_id, '_wpuf_activation_key' );
382
+
383
  }
384
  }
385
 
readme.txt CHANGED
@@ -5,7 +5,7 @@ Tags: Forms, registration, profile-builder, login, membership
5
  Requires at least: 4.0
6
  Tested up to: 4.8.1
7
  Requires PHP: 5.4
8
- Stable tag: 2.5.7
9
  License: GPLv2
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
11
 
@@ -109,6 +109,8 @@ After having installed the plugin:
109
  1. Create a form from the form builder. Get the shortcode for a form. Copy and paste that shortcode to a page.
110
  1. Create a new Page “Edit” for editing posts and insert shortcode `[wpuf_edit]`
111
  1. Create a new Page “Profile” for editing profile and insert shortcode `[wpuf_editprofile]`
 
 
112
  1. Create a new Page “Dashboard” and insert shortcode `[wpuf_dashboard]`
113
  To list custom post type **event**, use `[wpuf_dashboard post_type="event"]`
114
  1. Set the *Edit Page* option from *Others* tab on settings page.
@@ -168,6 +170,18 @@ redirected to the edit page with that post id. Then you'll see the edit post for
168
 
169
  == Changelog ==
170
 
 
 
 
 
 
 
 
 
 
 
 
 
171
  = v2.5.7 (11 September, 2017) =
172
 
173
  * [improved] Added background in form builder div, so notices don’t overlap the form builder
5
  Requires at least: 4.0
6
  Tested up to: 4.8.1
7
  Requires PHP: 5.4
8
+ Stable tag: 2.5.8
9
  License: GPLv2
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
11
 
109
  1. Create a form from the form builder. Get the shortcode for a form. Copy and paste that shortcode to a page.
110
  1. Create a new Page “Edit” for editing posts and insert shortcode `[wpuf_edit]`
111
  1. Create a new Page “Profile” for editing profile and insert shortcode `[wpuf_editprofile]`
112
+ 1. To add Login feature, use the shortcode: `[wpuf-login]`
113
+ 1. To enable a registration form in the frontend, use the shortcode: `[wpuf-registration]`
114
  1. Create a new Page “Dashboard” and insert shortcode `[wpuf_dashboard]`
115
  To list custom post type **event**, use `[wpuf_dashboard post_type="event"]`
116
  1. Set the *Edit Page* option from *Others* tab on settings page.
170
 
171
  == Changelog ==
172
 
173
+ = v2.5.7 (18 October, 2017) =
174
+
175
+ * **New:** Guest post email verification feature added. When turned on, users need to click the activation link on their email before publising the post.
176
+ * **New:** Added Login and Registration shortcode support in the plugin. Now free version users will get the themed login and a simple registration feature.
177
+ * **Improved:** Add missing icon on field button (form builder).
178
+ * **Improved:** Added related help documents/links in various pages.
179
+ * **Fix:** Fix the upgrade routine. Version number mismatch gives fatal error. Fixes #179
180
+ * **Fix:** Removed integration classes, vue modal component from WPUF as it was not necessary anymore.
181
+ * **Fix:** Users could not update profile from my account page.
182
+ * **Fix:** Product visibility for WooCommerce wasn't working as they migrated to a taxonomy system.
183
+ * **Fix:** PayPal gateway security enforced. When checking the IPN request, few things weren't being done before checking the valid IPN response.
184
+
185
  = v2.5.7 (11 September, 2017) =
186
 
187
  * [improved] Added background in form builder div, so notices don’t overlap the form builder
templates/dashboard.php CHANGED
@@ -5,26 +5,100 @@
5
  </h2>
6
 
7
  <?php if ( wpuf_get_option( 'show_post_count', 'wpuf_dashboard', 'on' ) == 'on' ) { ?>
8
- <div class="post_count"><?php printf( __( 'You have created <span>%d</span> %s', 'wpuf' ), $dashboard_query->found_posts, $post_type_obj->label ); ?></div>
9
  <?php } ?>
10
 
11
- <?php do_action( 'wpuf_dashboard_top', $userdata->ID, $post_type_obj ) ?>
12
-
13
- <?php if ( $dashboard_query->have_posts() ) {
14
 
15
- $featured_img = wpuf_get_option( 'show_ft_image', 'wpuf_dashboard' );
16
- $featured_img_size = wpuf_get_option( 'ft_img_size', 'wpuf_dashboard' );
17
- $charging_enabled = wpuf_get_option( 'charge_posting', 'wpuf_payment' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
  ?>
19
  <table class="items-table <?php echo $post_type; ?>" cellpadding="0" cellspacing="0">
20
  <thead>
21
  <tr class="items-list-header">
22
  <?php
23
- if ( 'on' == $featured_img ) {
24
  echo '<th>' . __( 'Featured Image', 'wpuf' ) . '</th>';
25
  }
26
  ?>
27
  <th><?php _e( 'Title', 'wpuf' ); ?></th>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
28
  <th><?php _e( 'Status', 'wpuf' ); ?></th>
29
 
30
  <?php do_action( 'wpuf_dashboard_head_col', $args ) ?>
@@ -46,7 +120,7 @@
46
  $show_link = !in_array( $post->post_status, array('draft', 'future', 'pending') );
47
  ?>
48
  <tr>
49
- <?php if ( 'on' == $featured_img ) { ?>
50
  <td>
51
  <?php
52
  echo $show_link ? '<a href="' . get_permalink( $post->ID ) . '">' : '';
@@ -72,6 +146,33 @@
72
 
73
  <?php } ?>
74
  </td>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
75
  <td>
76
  <?php wpuf_show_post_status( $post->post_status ) ?>
77
  </td>
@@ -143,10 +244,11 @@
143
  </div>
144
  <?php
145
  } else {
146
- printf( '<div class="wpuf-message">' . __( 'No %s found', 'wpuf' ) . '</div>', $post_type_obj->label );
147
- do_action( 'wpuf_dashboard_nopost', $userdata->ID, $post_type_obj );
 
 
148
  }
149
-
150
- do_action( 'wpuf_dashboard_bottom', $userdata->ID, $post_type_obj ); ?>
151
 
152
  </div>
5
  </h2>
6
 
7
  <?php if ( wpuf_get_option( 'show_post_count', 'wpuf_dashboard', 'on' ) == 'on' ) { ?>
8
+ <div class="post_count"><?php if ( !empty( $post_type_obj ) ) printf( __( 'You have created <span>%d</span> %s', 'wpuf' ), $dashboard_query->found_posts, $post_type_obj->label ); ?></div>
9
  <?php } ?>
10
 
11
+ <?php if ( !empty( $post_type_obj ) ) do_action( 'wpuf_dashboard_top', $userdata->ID, $post_type_obj ) ?>
12
+ <?php
 
13
 
14
+ $meta_label = array();
15
+ $meta_name = array();
16
+ $meta_id = array();
17
+ $meta_key = array();
18
+ if ( !empty( $meta ) ) {
19
+ $arr = explode(',', $meta);
20
+ foreach ($arr as $mkey) {
21
+ $meta_key[] = trim($mkey);
22
+ }
23
+ }
24
+ ?>
25
+ <?php if ( $dashboard_query->have_posts() ) {
26
+
27
+ $args = array(
28
+ 'post_status' => 'publish',
29
+ 'post_type' => 'wpuf_forms'
30
+ );
31
+
32
+ $query = new WP_Query( $args );
33
+
34
+ foreach ( $query->posts as $post ) {
35
+ $postdata = get_object_vars( $post );
36
+ unset( $postdata['ID'] );
37
+
38
+ $data = array(
39
+ 'meta_data' => array(
40
+ 'fields' => wpuf_get_form_fields( $post->ID )
41
+ )
42
+ );
43
+
44
+ foreach ($data['meta_data']['fields'] as $fields) {
45
+ foreach ($fields as $key => $field_value) {
46
+ if ( $key == 'is_meta' && $field_value == 'yes' ) {
47
+ $meta_label[]= $fields['label'];
48
+ $meta_name[] = $fields['name'];
49
+ $meta_id[] = $fields['id'];
50
+ }
51
+ };
52
+ };
53
+ }
54
+
55
+ wp_reset_postdata();
56
+
57
+ $len = count( $meta_key );
58
+ $len_label = count( $meta_label );
59
+ $len_id = count( $meta_id );
60
+ $featured_img = wpuf_get_option( 'show_ft_image', 'wpuf_dashboard' );
61
+ $featured_img_size = wpuf_get_option( 'ft_img_size', 'wpuf_dashboard' );
62
+ $charging_enabled = wpuf_get_option( 'charge_posting', 'wpuf_payment' );
63
  ?>
64
  <table class="items-table <?php echo $post_type; ?>" cellpadding="0" cellspacing="0">
65
  <thead>
66
  <tr class="items-list-header">
67
  <?php
68
+ if ((( 'on' == $featured_img || 'on' == $featured_image ) || ( 'off' == $featured_img && 'on' == $featured_image ) || ( 'on' == $featured_img && 'default' == $featured_image )) && !( 'on' == $featured_img && 'off' == $featured_image )) {
69
  echo '<th>' . __( 'Featured Image', 'wpuf' ) . '</th>';
70
  }
71
  ?>
72
  <th><?php _e( 'Title', 'wpuf' ); ?></th>
73
+
74
+ <?php
75
+ if ( 'on' == $category ) {
76
+ echo '<th>' . __( 'Category', 'wpuf' ) . '</th>';
77
+ }
78
+ ?>
79
+
80
+ <?php
81
+ // populate meta column headers
82
+
83
+ if ( $meta != 'off' ) {
84
+ for ( $i = 0; $i < $len_label; $i++ ) {
85
+ for ( $j = 0; $j < $len; $j++ ) {
86
+ if ( $meta_key[$j] == $meta_name[$i] ) {
87
+ echo '<th>';
88
+ echo __( $meta_label[$i] );
89
+ echo '</th>';
90
+ }
91
+ }
92
+ }
93
+ }
94
+ ?>
95
+
96
+ <?php
97
+ if ( 'on' == $excerpt ) {
98
+ echo '<th>' . __( 'Excerpt', 'wpuf' ) . '</th>';
99
+ }
100
+ ?>
101
+
102
  <th><?php _e( 'Status', 'wpuf' ); ?></th>
103
 
104
  <?php do_action( 'wpuf_dashboard_head_col', $args ) ?>
120
  $show_link = !in_array( $post->post_status, array('draft', 'future', 'pending') );
121
  ?>
122
  <tr>
123
+ <?php if ((( 'on' == $featured_img || 'on' == $featured_image ) || ( 'off' == $featured_img && 'on' == $featured_image ) || ( 'on' == $featured_img && 'default' == $featured_image )) && !( 'on' == $featured_img && 'off' == $featured_image )) { ?>
124
  <td>
125
  <?php
126
  echo $show_link ? '<a href="' . get_permalink( $post->ID ) . '">' : '';
146
 
147
  <?php } ?>
148
  </td>
149
+
150
+ <?php if ( 'on' == $category ) { ?>
151
+ <td>
152
+ <?php the_category( ', ' ); ?>
153
+ </td>
154
+ <?php }
155
+
156
+ //populate meta column fields
157
+ ?>
158
+ <?php if ( $meta != 'off' ) {
159
+ for ( $i = 0; $i < $len_label; $i++ ) {
160
+ for ( $j = 0; $j < $len; $j++ ) {
161
+ if ( $meta_key[$j] == $meta_name[$i] ) {
162
+ echo '<td>';
163
+ $m_val = get_post_meta( $post->ID, $meta_name[$i], true );
164
+ echo $m_val;
165
+ echo '</td>';
166
+ }
167
+ }
168
+ }
169
+ } ?>
170
+
171
+ <?php if ( 'on' == $excerpt ) { ?>
172
+ <td>
173
+ <?php the_excerpt(); ?>
174
+ </td>
175
+ <?php } ?>
176
  <td>
177
  <?php wpuf_show_post_status( $post->post_status ) ?>
178
  </td>
244
  </div>
245
  <?php
246
  } else {
247
+ if ( !empty( $post_type_obj ) ) {
248
+ printf( '<div class="wpuf-message">' . __( 'No %s found', 'wpuf' ) . '</div>', $post_type_obj->label );
249
+ do_action( 'wpuf_dashboard_nopost', $userdata->ID, $post_type_obj );
250
+ }
251
  }
252
+ if ( !empty( $post_type_obj ) ) do_action( 'wpuf_dashboard_bottom', $userdata->ID, $post_type_obj ); ?>
 
253
 
254
  </div>
templates/login-form.php CHANGED
@@ -13,8 +13,8 @@
13
  }
14
  ?>
15
 
16
- <?php WPUF_Login::init()->show_errors(); ?>
17
- <?php WPUF_Login::init()->show_messages(); ?>
18
 
19
  <form name="loginform" class="wpuf-login-form" id="loginform" action="<?php echo $action_url; ?>" method="post">
20
  <p>
@@ -35,12 +35,12 @@
35
 
36
  <p class="submit">
37
  <input type="submit" name="wp-submit" id="wp-submit" value="<?php esc_attr_e( 'Log In', 'wpuf' ); ?>" />
38
- <input type="hidden" name="redirect_to" value="<?php echo WPUF_Login::get_posted_value( 'redirect_to' ); ?>" />
39
  <input type="hidden" name="wpuf_login" value="true" />
40
  <input type="hidden" name="action" value="login" />
41
  <?php wp_nonce_field( 'wpuf_login_action' ); ?>
42
  </p>
43
  </form>
44
 
45
- <?php echo WPUF_Login::init()->get_action_links( array( 'login' => false ) ); ?>
46
  </div>
13
  }
14
  ?>
15
 
16
+ <?php wpuf()->login->show_errors(); ?>
17
+ <?php wpuf()->login->show_messages(); ?>
18
 
19
  <form name="loginform" class="wpuf-login-form" id="loginform" action="<?php echo $action_url; ?>" method="post">
20
  <p>
35
 
36
  <p class="submit">
37
  <input type="submit" name="wp-submit" id="wp-submit" value="<?php esc_attr_e( 'Log In', 'wpuf' ); ?>" />
38
+ <input type="hidden" name="redirect_to" value="<?php echo wpuf()->login->get_posted_value( 'redirect_to' ); ?>" />
39
  <input type="hidden" name="wpuf_login" value="true" />
40
  <input type="hidden" name="action" value="login" />
41
  <?php wp_nonce_field( 'wpuf_login_action' ); ?>
42
  </p>
43
  </form>
44
 
45
+ <?php echo wpuf()->login->get_action_links( array( 'login' => false ) ); ?>
46
  </div>
templates/lost-pass-form.php CHANGED
@@ -6,8 +6,8 @@ WPUF will always look in your theme's directory first, before using this default
6
  ?>
7
  <div class="login" id="wpuf-login-form">
8
 
9
- <?php WPUF_Login::init()->show_errors(); ?>
10
- <?php WPUF_Login::init()->show_messages(); ?>
11
 
12
  <form name="lostpasswordform" id="lostpasswordform" action="" method="post">
13
  <p>
@@ -19,7 +19,7 @@ WPUF will always look in your theme's directory first, before using this default
19
 
20
  <p class="submit">
21
  <input type="submit" name="wp-submit" id="wp-submit" value="<?php esc_attr_e( 'Get New Password', 'wpuf' ); ?>" />
22
- <input type="hidden" name="redirect_to" value="<?php echo WPUF_Login::get_posted_value( 'redirect_to' ); ?>" />
23
  <input type="hidden" name="wpuf_reset_password" value="true" />
24
  <input type="hidden" name="action" value="lostpassword" />
25
 
@@ -27,5 +27,5 @@ WPUF will always look in your theme's directory first, before using this default
27
  </p>
28
  </form>
29
 
30
- <?php echo WPUF_Login::init()->get_action_links( array( 'lostpassword' => false ) ); ?>
31
  </div>
6
  ?>
7
  <div class="login" id="wpuf-login-form">
8
 
9
+ <?php WPUF_Simple_Login::init()->show_errors(); ?>
10
+ <?php WPUF_Simple_Login::init()->show_messages(); ?>
11
 
12
  <form name="lostpasswordform" id="lostpasswordform" action="" method="post">
13
  <p>
19
 
20
  <p class="submit">
21
  <input type="submit" name="wp-submit" id="wp-submit" value="<?php esc_attr_e( 'Get New Password', 'wpuf' ); ?>" />
22
+ <input type="hidden" name="redirect_to" value="<?php echo WPUF_Simple_Login::get_posted_value( 'redirect_to' ); ?>" />
23
  <input type="hidden" name="wpuf_reset_password" value="true" />
24
  <input type="hidden" name="action" value="lostpassword" />
25
 
27
  </p>
28
  </form>
29
 
30
+ <?php echo WPUF_Simple_Login::init()->get_action_links( array( 'lostpassword' => false ) ); ?>
31
  </div>
templates/registration-form.php ADDED
@@ -0,0 +1,85 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ If you would like to edit this file, copy it to your current theme's directory and edit it there.
4
+ WPUF will always look in your theme's directory first, before using this default template.
5
+ */
6
+ ?>
7
+ <div class="registration" id="wpuf-registration-form">
8
+
9
+ <?php
10
+ $message = apply_filters( 'registration_message', '' );
11
+ if ( ! empty( $message ) ) {
12
+ echo $message . "\n";
13
+ }
14
+
15
+ if ( isset($_GET['success']) && "yes" == $_GET['success'] ) {
16
+ echo "<div class='wpuf-success' style='text-align:center'>" . __( 'Registration has been successful!', 'wpuf' ) ."</div>";
17
+ }
18
+ ?>
19
+
20
+ <?php wpuf()->registration->show_errors(); ?>
21
+ <?php wpuf()->registration->show_messages(); ?>
22
+
23
+ <form name="registrationform" class="wpuf-registration-form" id="registrationform" action="<?php echo $action_url; ?>" method="post">
24
+
25
+ <ul class="wpuf-form form-label-above">
26
+ <li>
27
+ <div class="wpuf-label"><?php _e( 'Name', 'wpuf' ); ?> <span class="required">*</span></div>
28
+ <div class="wpuf-fields">
29
+ <div class="wpuf-name-field-wrap format-first-last">
30
+ <div class="wpuf-name-field-first-name">
31
+ <input type="text" name="reg_fname" id="wpuf-user_fname" class="input" value="<?php echo wpuf()->registration->get_posted_value( 'reg_fname' ); ?>" size="" />
32
+ <label class="wpuf-form-sub-label">First</label>
33
+ </div>
34
+
35
+ <div class="wpuf-name-field-last-name">
36
+ <input type="text" name="reg_lname" id="wpuf-user_lname" class="input" value="<?php echo wpuf()->registration->get_posted_value( 'reg_lname' ); ?>" size="16" />
37
+ <label class="wpuf-form-sub-label">Last</label>
38
+ </div>
39
+ </div>
40
+ </div>
41
+ </li>
42
+
43
+ <li>
44
+ <div class="wpuf-label"><?php _e( 'Email', 'wpuf' ); ?> <span class="required">*</span></div>
45
+ <div class="wpuf-fields">
46
+ <input type="text" name="reg_email" id="wpuf-user_email" class="input" value="<?php echo wpuf()->registration->get_posted_value( 'reg_email' ); ?>" size="40">
47
+ </div>
48
+ </li>
49
+
50
+ <li>
51
+ <div class="wpuf-label"><?php _e( 'Username', 'wpuf' ); ?> <span class="required">*</span></div>
52
+ <div class="wpuf-fields">
53
+ <input type="text" name="log" id="wpuf-user_login" class="input" value="<?php echo wpuf()->registration->get_posted_value( 'log' ); ?>" size="40" />
54
+ </div>
55
+ </li>
56
+
57
+ <li>
58
+ <div class="wpuf-label"><?php _e( 'Password', 'wpuf' ); ?> <span class="required">*</span></div>
59
+ <div class="wpuf-fields">
60
+ <input type="password" name="pwd1" id="wpuf-user_pass1" class="input" value="" size="40" />
61
+ </div>
62
+ </li>
63
+
64
+ <li>
65
+ <div class="wpuf-label"><?php _e( 'Confirm Password', 'wpuf' ); ?> <span class="required">*</span></div>
66
+ <div class="wpuf-fields">
67
+ <input type="password" name="pwd2" id="wpuf-user_pass2" class="input" value="" size="40" />
68
+ </div>
69
+ </li>
70
+
71
+ <?php do_action( 'registration_form' ); ?>
72
+
73
+ <li class="wpuf-submit">
74
+ <input type="submit" name="wp-submit" id="wp-submit" value="<?php esc_attr_e( 'Register', 'wpuf' ); ?>" />
75
+ <input type="hidden" name="urhidden" value=" <?php echo $userrole; ?>" />
76
+ <input type="hidden" name="redirect_to" value="<?php echo wpuf()->registration->get_posted_value( 'redirect_to' ); ?>" />
77
+ <input type="hidden" name="wpuf_registration" value="true" />
78
+ <input type="hidden" name="action" value="registration" />
79
+
80
+ <?php wp_nonce_field( 'wpuf_registration_action' ); ?>
81
+ </li>
82
+
83
+ </ul>
84
+ </form>
85
+ </div>
templates/reset-pass-form.php CHANGED
@@ -6,8 +6,8 @@ WPUF will always look in your theme's directory first, before using this default
6
  ?>
7
  <div class="login" id="wpuf-login-form">
8
 
9
- <?php WPUF_Login::init()->show_errors(); ?>
10
- <?php WPUF_Login::init()->show_messages(); ?>
11
 
12
  <form name="resetpasswordform" id="resetpasswordform" action="" method="post">
13
  <p>
@@ -24,8 +24,8 @@ WPUF will always look in your theme's directory first, before using this default
24
 
25
  <p class="submit">
26
  <input type="submit" name="wp-submit" id="wp-submit" value="<?php esc_attr_e( 'Reset Password', 'wpuf' ); ?>" />
27
- <input type="hidden" name="key" value="<?php echo WPUF_Login::get_posted_value( 'key' ); ?>" />
28
- <input type="hidden" name="login" id="user_login" value="<?php echo WPUF_Login::get_posted_value( 'login' ); ?>" />
29
  <input type="hidden" name="wpuf_reset_password" value="true" />
30
  </p>
31
 
6
  ?>
7
  <div class="login" id="wpuf-login-form">
8
 
9
+ <?php WPUF_Simple_Login::init()->show_errors(); ?>
10
+ <?php WPUF_Simple_Login::init()->show_messages(); ?>
11
 
12
  <form name="resetpasswordform" id="resetpasswordform" action="" method="post">
13
  <p>
24
 
25
  <p class="submit">
26
  <input type="submit" name="wp-submit" id="wp-submit" value="<?php esc_attr_e( 'Reset Password', 'wpuf' ); ?>" />
27
+ <input type="hidden" name="key" value="<?php echo WPUF_Simple_Login::get_posted_value( 'key' ); ?>" />
28
+ <input type="hidden" name="login" id="user_login" value="<?php echo WPUF_Simple_Login::get_posted_value( 'login' ); ?>" />
29
  <input type="hidden" name="wpuf_reset_password" value="true" />
30
  </p>
31
 
wpuf-functions.php CHANGED
@@ -2102,3 +2102,122 @@ function wpuf_get_draft_post_status( $form_settings ) {
2102
  }
2103
  return $post_status;
2104
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2102
  }
2103
  return $post_status;
2104
  }
2105
+
2106
+ /**
2107
+ * Hook to add WPUF Forms Column in Pages menu
2108
+ *
2109
+ * @since 2.5.8
2110
+ *
2111
+ */
2112
+ function wpuf_pages_columns_form ( $columns ) {
2113
+
2114
+ $myCustomColumns = array(
2115
+ 'wpuf_forms' => __( 'WPUF Forms', 'wpuf' )
2116
+ );
2117
+ $columns = array_merge( $columns, $myCustomColumns );
2118
+
2119
+ return $columns;
2120
+ }
2121
+ add_filter( 'manage_pages_columns', 'wpuf_pages_columns_form' );
2122
+
2123
+ /**
2124
+ * Hook to add WPUF Forms column contents in Pages menu
2125
+ *
2126
+ * @since 2.5.8
2127
+ *
2128
+ */
2129
+ function page_column_content_form ( $column_name, $post_id ) {
2130
+ if ( $column_name == 'wpuf_forms' ) {
2131
+ $content_page = get_post( $post_id );
2132
+
2133
+ $available_shortcodes = array();
2134
+ $wpuf_shortcodes = array();
2135
+
2136
+ $pattern = '/\[(wpuf[\w\-\_]+).+\]/';
2137
+
2138
+ preg_match_all ( $pattern , $content_page->post_content, $matches);
2139
+ $matches = array_unique( $matches[0] );
2140
+
2141
+ if ( !empty( $matches ) ) {
2142
+ echo $matches[0];
2143
+ }
2144
+ }
2145
+ }
2146
+ add_action( 'manage_pages_custom_column', 'page_column_content_form', 10, 2 );
2147
+
2148
+ /**
2149
+ * Encryption function for various usage
2150
+ *
2151
+ * @since 2.5.8
2152
+ *
2153
+ * @param string $id
2154
+ *
2155
+ * @return string $encoded_id
2156
+ */
2157
+ function wpuf_encryption ( $id ) {
2158
+
2159
+ $secret_key = AUTH_KEY;
2160
+ $secret_iv = AUTH_SALT;
2161
+
2162
+ $encrypt_method = "AES-256-CBC";
2163
+ $key = hash( 'sha256', $secret_key );
2164
+ $iv = substr( hash( 'sha256', $secret_iv ), 0, 16 );
2165
+ $encoded_id = base64_encode( openssl_encrypt( $id, $encrypt_method, $key, 0, $iv ) );
2166
+
2167
+ return $encoded_id;
2168
+ }
2169
+
2170
+ /**
2171
+ * Decryption function for various usage
2172
+ *
2173
+ * @since 2.5.8
2174
+ *
2175
+ * @param string $id
2176
+ *
2177
+ * @return string $encoded_id
2178
+ */
2179
+ function wpuf_decryption ( $id ) {
2180
+
2181
+ $secret_key = AUTH_KEY;
2182
+ $secret_iv = AUTH_SALT;
2183
+
2184
+ $encrypt_method = "AES-256-CBC";
2185
+ $key = hash( 'sha256', $secret_key );
2186
+ $iv = substr( hash( 'sha256', $secret_iv ), 0, 16 );
2187
+ $decoded_id = openssl_decrypt( base64_decode( $id ), $encrypt_method, $key, 0, $iv );
2188
+
2189
+ return $decoded_id;
2190
+ }
2191
+
2192
+ /**
2193
+ * Send guest verification mail
2194
+ *
2195
+ * @since 2.5.8
2196
+ *
2197
+ * @param string $post_id
2198
+ *
2199
+ * @return void
2200
+ */
2201
+ function send_mail_to_guest ( $post_id_encoded ) {
2202
+
2203
+ $encoded_guest_url = get_home_url() . '?p_id=' . $post_id_encoded . '&post_msg=verified';
2204
+
2205
+ $default_body = 'Hey There,' . '<br>' . '<br>' . 'We just received your guest post and now we want you to confirm your email so that we can verify the content and move on to the publishing process.' . '<br>' . '<br>' . 'Please click the link below to verify:' . '<br>' . '<br>' . '<a href="'.$encoded_guest_url.'">Publish Post</a>' . '<br>' . '<br>' . 'Regards,' . '<br>' . '<br>' . bloginfo('name');
2206
+ $to = trim( $_POST['guest_email'] );
2207
+ $guest_email_sub = wpuf_get_option( 'guest_email_subject', 'wpuf_guest_mails', 'Please Confirm Your Email to Get the Post Published!' );
2208
+ $subject = $guest_email_sub;
2209
+ $guest_email_body = wpuf_get_option( 'guest_email_body', 'wpuf_guest_mails', $default_body );
2210
+ if ( !empty( $guest_email_body ) )
2211
+ $body = str_replace( '{activation_link}', '<a href="'.$encoded_guest_url.'">Publish Post</a>', $guest_email_body );
2212
+ else
2213
+ $body = $default_body;
2214
+ $headers = array('Content-Type: text/html; charset=UTF-8');
2215
+
2216
+ wp_mail( $to, $subject, $body, $headers );
2217
+
2218
+ if ( $is_update ) {
2219
+ $response = apply_filters( 'wpuf_edit_post_redirect', $response, $post_id, $form_id, $form_settings );
2220
+ } else {
2221
+ $response = apply_filters( 'wpuf_add_post_redirect', $response, $post_id, $form_id, $form_settings );
2222
+ }
2223
+ }
wpuf.php CHANGED
@@ -4,7 +4,7 @@ Plugin Name: WP User Frontend
4
  Plugin URI: https://wordpress.org/plugins/wp-user-frontend/
5
  Description: Create, edit, delete, manages your post, pages or custom post types from frontend. Create registration forms, frontend profile and more...
6
  Author: Tareq Hasan
7
- Version: 2.5.7
8
  Author URI: https://tareq.co
9
  License: GPL2 or later
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
@@ -12,7 +12,7 @@ Text Domain: wpuf
12
  Domain Path: /languages
13
  */
14
 
15
- define( 'WPUF_VERSION', '2.5.7' );
16
  define( 'WPUF_FILE', __FILE__ );
17
  define( 'WPUF_ROOT', dirname( __FILE__ ) );
18
  define( 'WPUF_ROOT_URI', plugins_url( '', __FILE__ ) );
@@ -25,15 +25,6 @@ define( 'WPUF_ASSET_URI', WPUF_ROOT_URI . '/assets' );
25
  */
26
  final class WP_User_Frontend {
27
 
28
- /**
29
- * Integrations instance.
30
- *
31
- * @since 2.5.4
32
- *
33
- * @var WPUF_Integrations
34
- */
35
- public $integrations = null;
36
-
37
  /**
38
  * Holds various class instances
39
  *
@@ -198,16 +189,15 @@ final class WP_User_Frontend {
198
  require_once WPUF_ROOT . '/class/render-form.php';
199
  require_once WPUF_ROOT . '/class/payment.php';
200
  require_once WPUF_ROOT . '/class/frontend-form-post.php';
201
- require_once WPUF_ROOT . '/includes/class-abstract-integration.php';
202
- require_once WPUF_ROOT . '/includes/class-integrations.php';
203
 
204
  if ( is_admin() ) {
205
  require_once WPUF_ROOT . '/admin/settings-options.php';
206
- require_once WPUF_ROOT . '/admin/settings.php';
207
  require_once WPUF_ROOT . '/admin/form-handler.php';
208
  require_once WPUF_ROOT . '/admin/form.php';
209
  require_once WPUF_ROOT . '/admin/posting.php';
210
- require_once WPUF_ROOT . '/admin/subscription.php';
211
  require_once WPUF_ROOT . '/admin/installer.php';
212
  require_once WPUF_ROOT . '/admin/promotion.php';
213
  require_once WPUF_ROOT . '/admin/post-forms-list-table.php';
@@ -219,7 +209,8 @@ final class WP_User_Frontend {
219
  } else {
220
 
221
  require_once WPUF_ROOT . '/class/frontend-dashboard.php';
222
- require_once WPUF_ROOT . '/class/frontend-account.php';
 
223
  }
224
 
225
  // add reCaptcha library if not found
@@ -236,14 +227,13 @@ final class WP_User_Frontend {
236
  */
237
  function instantiate() {
238
 
239
- $this->integrations = new WPUF_Integrations();
240
-
241
  $this->container['upload'] = new WPUF_Upload();
242
  $this->container['paypal'] = new WPUF_Paypal();
243
  $this->container['form_template'] = new WPUF_Admin_Form_Template();
244
 
245
  $this->container['subscription'] = WPUF_Subscription::init();
246
  $this->container['frontend_post'] = WPUF_Frontend_Form_Post::init();
 
247
  $this->container['insights'] = new WeDevs_Insights( 'wp-user-frontend', 'WP User Frontend', __FILE__ );
248
 
249
  if ( is_admin() ) {
@@ -259,9 +249,10 @@ final class WP_User_Frontend {
259
 
260
  } else {
261
 
262
- $this->container['dashboard'] = new WPUF_Frontend_Dashboard();
263
- $this->container['payment'] = new WPUF_Payment();
264
- $this->container['account'] = new WPUF_Frontend_Account();
 
265
  }
266
  }
267
 
@@ -273,26 +264,42 @@ final class WP_User_Frontend {
273
  public static function install() {
274
  global $wpdb;
275
 
 
 
 
 
 
 
 
 
 
 
 
 
276
  self::set_schedule_events();
277
 
278
  flush_rewrite_rules( false );
279
 
280
  $sql_transaction = "CREATE TABLE IF NOT EXISTS {$wpdb->prefix}wpuf_transaction (
281
- `id` mediumint(9) NOT NULL AUTO_INCREMENT,
282
  `user_id` bigint(20) DEFAULT NULL,
283
- `status` varchar(255) NOT NULL DEFAULT 'pending_payment',
284
  `cost` varchar(255) DEFAULT '',
285
  `post_id` varchar(20) DEFAULT NULL,
286
  `pack_id` bigint(20) DEFAULT NULL,
287
- `payer_first_name` longtext,
288
- `payer_last_name` longtext,
289
- `payer_email` longtext,
290
- `payment_type` longtext,
291
  `payer_address` longtext,
292
- `transaction_id` longtext,
293
  `created` datetime NOT NULL,
294
- PRIMARY KEY (`id`)
295
- ) ENGINE=MyISAM DEFAULT CHARSET=utf8;";
 
 
 
 
296
 
297
  require_once ABSPATH . 'wp-admin/includes/upgrade.php';
298
 
@@ -315,9 +322,13 @@ final class WP_User_Frontend {
315
  return;
316
  }
317
 
318
- require_once WPUF_ROOT . '/class/upgrades.php';
 
 
319
 
320
- new WPUF_Upgrades( WPUF_VERSION );
 
 
321
  }
322
 
323
  /**
@@ -389,7 +400,7 @@ final class WP_User_Frontend {
389
 
390
  if ( wpuf_get_option( 'load_script', 'wpuf_general', 'on') == 'on') {
391
  $this->plugin_scripts();
392
- } else if ( wpuf_has_shortcode( 'wpuf_form' ) || wpuf_has_shortcode( 'wpuf_edit' ) || wpuf_has_shortcode( 'wpuf_profile' ) || wpuf_has_shortcode( 'wpuf_dashboard' ) || wpuf_has_shortcode( 'weforms' ) ) {
393
  $this->plugin_scripts();
394
  }
395
  }
@@ -411,7 +422,7 @@ final class WP_User_Frontend {
411
  || wpuf_has_shortcode( 'wpuf_sub_pack', $post->ID )
412
  || wpuf_has_shortcode( 'wpuf-login', $post->ID )
413
  || wpuf_has_shortcode( 'wpuf_form', $post->ID )
414
- || wpuf_has_shortcode( 'wpuf_profile', $post->ID )
415
  ) {
416
  ?>
417
  <style>
4
  Plugin URI: https://wordpress.org/plugins/wp-user-frontend/
5
  Description: Create, edit, delete, manages your post, pages or custom post types from frontend. Create registration forms, frontend profile and more...
6
  Author: Tareq Hasan
7
+ Version: 2.5.8
8
  Author URI: https://tareq.co
9
  License: GPL2 or later
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
12
  Domain Path: /languages
13
  */
14
 
15
+ define( 'WPUF_VERSION', '2.5.8' );
16
  define( 'WPUF_FILE', __FILE__ );
17
  define( 'WPUF_ROOT', dirname( __FILE__ ) );
18
  define( 'WPUF_ROOT_URI', plugins_url( '', __FILE__ ) );
25
  */
26
  final class WP_User_Frontend {
27
 
 
 
 
 
 
 
 
 
 
28
  /**
29
  * Holds various class instances
30
  *
189
  require_once WPUF_ROOT . '/class/render-form.php';
190
  require_once WPUF_ROOT . '/class/payment.php';
191
  require_once WPUF_ROOT . '/class/frontend-form-post.php';
192
+ require_once WPUF_ROOT . '/class/frontend-account.php';
 
193
 
194
  if ( is_admin() ) {
195
  require_once WPUF_ROOT . '/admin/settings-options.php';
196
+ require_once WPUF_ROOT . '/admin/class-admin-settings.php';
197
  require_once WPUF_ROOT . '/admin/form-handler.php';
198
  require_once WPUF_ROOT . '/admin/form.php';
199
  require_once WPUF_ROOT . '/admin/posting.php';
200
+ require_once WPUF_ROOT . '/admin/class-admin-subscription.php';
201
  require_once WPUF_ROOT . '/admin/installer.php';
202
  require_once WPUF_ROOT . '/admin/promotion.php';
203
  require_once WPUF_ROOT . '/admin/post-forms-list-table.php';
209
  } else {
210
 
211
  require_once WPUF_ROOT . '/class/frontend-dashboard.php';
212
+ require_once WPUF_ROOT . '/includes/free/class-registration.php';
213
+ require_once WPUF_ROOT . '/includes/free/class-login.php';
214
  }
215
 
216
  // add reCaptcha library if not found
227
  */
228
  function instantiate() {
229
 
 
 
230
  $this->container['upload'] = new WPUF_Upload();
231
  $this->container['paypal'] = new WPUF_Paypal();
232
  $this->container['form_template'] = new WPUF_Admin_Form_Template();
233
 
234
  $this->container['subscription'] = WPUF_Subscription::init();
235
  $this->container['frontend_post'] = WPUF_Frontend_Form_Post::init();
236
+ $this->container['account'] = new WPUF_Frontend_Account();
237
  $this->container['insights'] = new WeDevs_Insights( 'wp-user-frontend', 'WP User Frontend', __FILE__ );
238
 
239
  if ( is_admin() ) {
249
 
250
  } else {
251
 
252
+ $this->container['dashboard'] = new WPUF_Frontend_Dashboard();
253
+ $this->container['payment'] = new WPUF_Payment();
254
+ $this->container['login'] = WPUF_Simple_Login::init();
255
+ $this->container['registration'] = WPUF_Registration::init();
256
  }
257
  }
258
 
264
  public static function install() {
265
  global $wpdb;
266
 
267
+ $collate = '';
268
+
269
+ if ( $wpdb->has_cap( 'collation' ) ) {
270
+ if ( ! empty($wpdb->charset ) ) {
271
+ $collate .= "DEFAULT CHARACTER SET $wpdb->charset";
272
+ }
273
+
274
+ if ( ! empty($wpdb->collate ) ) {
275
+ $collate .= " COLLATE $wpdb->collate";
276
+ }
277
+ }
278
+
279
  self::set_schedule_events();
280
 
281
  flush_rewrite_rules( false );
282
 
283
  $sql_transaction = "CREATE TABLE IF NOT EXISTS {$wpdb->prefix}wpuf_transaction (
284
+ `id` int(11) NOT NULL AUTO_INCREMENT,
285
  `user_id` bigint(20) DEFAULT NULL,
286
+ `status` varchar(60) NOT NULL DEFAULT 'pending_payment',
287
  `cost` varchar(255) DEFAULT '',
288
  `post_id` varchar(20) DEFAULT NULL,
289
  `pack_id` bigint(20) DEFAULT NULL,
290
+ `payer_first_name` varchar(60),
291
+ `payer_last_name` varchar(60),
292
+ `payer_email` varchar(100),
293
+ `payment_type` varchar(20),
294
  `payer_address` longtext,
295
+ `transaction_id` varchar(60),
296
  `created` datetime NOT NULL,
297
+ PRIMARY KEY (`id`),
298
+ key `user_id` (`user_id`),
299
+ key `post_id` (`post_id`),
300
+ key `pack_id` (`pack_id`),
301
+ key `payer_email` (`payer_email`)
302
+ ) $collate;";
303
 
304
  require_once ABSPATH . 'wp-admin/includes/upgrade.php';
305
 
322
  return;
323
  }
324
 
325
+ require_once WPUF_ROOT . '/includes/class-upgrades.php';
326
+
327
+ $upgrader = new WPUF_Upgrades();
328
 
329
+ if ( $upgrader->needs_update() ) {
330
+ $upgrader->perform_updates();
331
+ }
332
  }
333
 
334
  /**
400
 
401
  if ( wpuf_get_option( 'load_script', 'wpuf_general', 'on') == 'on') {
402
  $this->plugin_scripts();
403
+ } else if ( wpuf_has_shortcode( 'wpuf_form' ) || wpuf_has_shortcode( 'wpuf_edit' ) || wpuf_has_shortcode( 'wpuf_profile' ) || wpuf_has_shortcode( 'wpuf_dashboard' ) || wpuf_has_shortcode( 'weforms' ) || wpuf_has_shortcode( 'wpuf_account' ) ) {
404
  $this->plugin_scripts();
405
  }
406
  }
422
  || wpuf_has_shortcode( 'wpuf_sub_pack', $post->ID )
423
  || wpuf_has_shortcode( 'wpuf-login', $post->ID )
424
  || wpuf_has_shortcode( 'wpuf_form', $post->ID )
425
+ || wpuf_has_shortcode( 'wpuf_account', $post->ID )
426
  ) {
427
  ?>
428
  <style>