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

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

Code changes from version 2.7.0 to 2.8.0

Files changed (40) hide show
  1. admin/class-admin-settings.php +1 -0
  2. admin/class-admin-subscription.php +1 -1
  3. admin/form-builder/class-wpuf-admin-form-builder.php +4 -0
  4. admin/form.php +5 -0
  5. admin/html/form-settings-payment.php +87 -87
  6. admin/html/form-settings-post.php +1 -71
  7. admin/html/form-submission-restriction.php +190 -0
  8. admin/html/whats-new.php +23 -17
  9. admin/installer.php +1 -1
  10. admin/settings-options.php +22 -9
  11. assets/css/admin.css +1 -1
  12. assets/images/whats-new/admin-bar.png +0 -0
  13. assets/images/whats-new/limit.png +0 -0
  14. assets/images/whats-new/module-activation.gif +0 -0
  15. assets/images/whats-new/role-base.png +0 -0
  16. assets/images/whats-new/schedule.png +0 -0
  17. assets/images/whats-new/settings.png +0 -0
  18. assets/images/whats-new/user-status.png +0 -0
  19. assets/js-templates/form-components.php +1 -1
  20. assets/js/wpuf-admin.js +34 -0
  21. assets/js/wpuf-form-builder.js +58 -7
  22. assets/js/wpuf-login-widget.js +88 -0
  23. assets/less/admin.less +1 -1
  24. class/frontend-form-post.php +58 -13
  25. class/render-form.php +45 -7
  26. class/subscription.php +4 -3
  27. includes/class-list-table-subscribers.php +1 -29
  28. includes/class-login-widget.php +355 -0
  29. includes/class-upgrades.php +2 -1
  30. includes/class-user-subscription.php +43 -16
  31. includes/free/form-element.php +2 -2
  32. includes/upgrades/upgrade-2.8.0.php +39 -0
  33. languages/wpuf.pot +613 -337
  34. lib/class.settings-api.php +2 -1
  35. lib/invisible_recaptcha.php +99 -0
  36. readme.txt +14 -1
  37. templates/dashboard.php +1 -1
  38. templates/dashboard/edit-profile.php +16 -4
  39. wpuf-functions.php +36 -56
  40. wpuf.php +17 -6
admin/class-admin-settings.php CHANGED
@@ -395,6 +395,7 @@ class WPUF_Admin_Settings {
395
  }
396
 
397
  wp_enqueue_style( 'wpuf-admin', WPUF_ASSET_URI . '/css/admin.css', false, WPUF_VERSION );
 
398
  }
399
 
400
  }
395
  }
396
 
397
  wp_enqueue_style( 'wpuf-admin', WPUF_ASSET_URI . '/css/admin.css', false, WPUF_VERSION );
398
+ wp_enqueue_script( 'wpuf-admin-script', WPUF_ASSET_URI . '/js/wpuf-admin.js', array( 'jquery' ), false, WPUF_VERSION );
399
  }
400
 
401
  }
admin/class-admin-subscription.php CHANGED
@@ -422,7 +422,7 @@ class WPUF_Admin_Subscription {
422
  }
423
  ?>
424
  </select>
425
- <p class="description"><?php echo _('Status of post after post expiration time is over ', 'wp-user-frontend', 'wpuf');?></p>
426
  </td>
427
  </tr>
428
  <tr class="wpuf_subscription_expiration_field">
422
  }
423
  ?>
424
  </select>
425
+ <p class="description"><?php _e('Status of post after post expiration time is over ', 'wpuf' );?></p>
426
  </td>
427
  </tr>
428
  <tr class="wpuf_subscription_expiration_field">
admin/form-builder/class-wpuf-admin-form-builder.php CHANGED
@@ -91,6 +91,8 @@ class WPUF_Admin_Form_Builder {
91
 
92
  wp_enqueue_style( 'wpuf-form-builder', WPUF_ASSET_URI . '/css/wpuf-form-builder.css', $form_builder_css_deps, WPUF_VERSION );
93
 
 
 
94
  do_action( 'wpuf-form-builder-enqueue-style' );
95
 
96
  /**
@@ -121,6 +123,8 @@ class WPUF_Admin_Form_Builder {
121
 
122
  do_action( 'wpuf-form-builder-enqueue-after-components' );
123
 
 
 
124
  wp_enqueue_script( 'wpuf-form-builder', WPUF_ASSET_URI . '/js/wpuf-form-builder.js', array( 'wpuf-form-builder-components' ), WPUF_VERSION, true );
125
 
126
  do_action( 'wpuf-form-builder-enqueue-after-main-instance' );
91
 
92
  wp_enqueue_style( 'wpuf-form-builder', WPUF_ASSET_URI . '/css/wpuf-form-builder.css', $form_builder_css_deps, WPUF_VERSION );
93
 
94
+ wp_enqueue_style( 'jquery-ui', WPUF_ASSET_URI . '/css/jquery-ui-1.9.1.custom.css' );
95
+
96
  do_action( 'wpuf-form-builder-enqueue-style' );
97
 
98
  /**
123
 
124
  do_action( 'wpuf-form-builder-enqueue-after-components' );
125
 
126
+ wp_enqueue_script( 'jquery-ui-timepicker', WPUF_ASSET_URI . '/js/jquery-ui-timepicker-addon.js', array( 'jquery-ui-datepicker' ) );
127
+
128
  wp_enqueue_script( 'wpuf-form-builder', WPUF_ASSET_URI . '/js/wpuf-form-builder.js', array( 'wpuf-form-builder-components' ), WPUF_VERSION, true );
129
 
130
  do_action( 'wpuf-form-builder-enqueue-after-main-instance' );
admin/form.php CHANGED
@@ -226,6 +226,7 @@ class WPUF_Admin_Form {
226
 
227
  <a href="#wpuf-metabox-settings" class="nav-tab"><?php _e( 'Post Settings', 'wpuf' ); ?></a>
228
  <a href="#wpuf-metabox-settings-update" class="nav-tab"><?php _e( 'Edit Settings', 'wpuf' ); ?></a>
 
229
  <a href="#wpuf-metabox-settings-payment" class="nav-tab"><?php _e( 'Payment Settings', 'wpuf' ); ?></a>
230
  <a href="#wpuf-metabox-settings-display" class="nav-tab"><?php _e( 'Display Settings', 'wpuf' ); ?></a>
231
  <a href="#wpuf-metabox-post_expiration" class="nav-tab"><?php _e( 'Post Expiration', 'wpuf' ); ?></a>
@@ -256,6 +257,10 @@ class WPUF_Admin_Form {
256
  <?php include_once dirname( __FILE__ ) . '/html/form-settings-post-edit.php'; ?>
257
  </div>
258
 
 
 
 
 
259
  <div id="wpuf-metabox-settings-payment" class="group">
260
  <?php include_once dirname( __FILE__ ) . '/html/form-settings-payment.php'; ?>
261
  </div>
226
 
227
  <a href="#wpuf-metabox-settings" class="nav-tab"><?php _e( 'Post Settings', 'wpuf' ); ?></a>
228
  <a href="#wpuf-metabox-settings-update" class="nav-tab"><?php _e( 'Edit Settings', 'wpuf' ); ?></a>
229
+ <a href="#wpuf-metabox-submission-restriction" class="nav-tab"><?php _e( 'Submission Restriction', 'wpuf' ); ?></a>
230
  <a href="#wpuf-metabox-settings-payment" class="nav-tab"><?php _e( 'Payment Settings', 'wpuf' ); ?></a>
231
  <a href="#wpuf-metabox-settings-display" class="nav-tab"><?php _e( 'Display Settings', 'wpuf' ); ?></a>
232
  <a href="#wpuf-metabox-post_expiration" class="nav-tab"><?php _e( 'Post Expiration', 'wpuf' ); ?></a>
257
  <?php include_once dirname( __FILE__ ) . '/html/form-settings-post-edit.php'; ?>
258
  </div>
259
 
260
+ <div id="wpuf-metabox-submission-restriction" class="group">
261
+ <?php include_once dirname( __FILE__ ) . '/html/form-submission-restriction.php'; ?>
262
+ </div>
263
+
264
  <div id="wpuf-metabox-settings-payment" class="group">
265
  <?php include_once dirname( __FILE__ ) . '/html/form-settings-payment.php'; ?>
266
  </div>
admin/html/form-settings-payment.php CHANGED
@@ -1,87 +1,87 @@
1
- <?php
2
- global $post;
3
-
4
- $form_settings = wpuf_get_form_settings( $post->ID );
5
-
6
- $payment_options = isset( $form_settings['payment_options'] ) ? $form_settings['payment_options'] : 'false';
7
- $enable_pay_per_post = isset( $form_settings['enable_pay_per_post'] ) ? $form_settings['enable_pay_per_post'] : 'false';
8
- $force_pack_purchase = isset( $form_settings['force_pack_purchase'] ) ? $form_settings['force_pack_purchase'] : 'false';
9
-
10
- $pay_per_post_cost = isset( $form_settings['pay_per_post_cost'] ) ? $form_settings['pay_per_post_cost'] : 2;
11
- $fallback_ppp_enable = isset( $form_settings['fallback_ppp_enable'] ) ? $form_settings['fallback_ppp_enable'] : 'false';
12
- $fallback_ppp_cost = isset( $form_settings['fallback_ppp_cost'] ) ? $form_settings['fallback_ppp_cost'] : 1;
13
-
14
- ?>
15
- <table class="form-table">
16
-
17
- <!-- Added Payment Settings -->
18
-
19
- <tr>
20
- <th><?php _e( 'Payment Options', 'wpuf' ); ?></th>
21
- <td>
22
- <label>
23
- <input type="hidden" name="wpuf_settings[payment_options]" value="false">
24
- <input type="checkbox" name="wpuf_settings[payment_options]" value="true"<?php checked( $payment_options, 'true' ); ?> />
25
- <?php _e( 'Enable Payments', 'wpuf' ) ?>
26
- </label>
27
- <p class="description"><?php _e( 'Check to enable Payments for this form.', 'wpuf' ); ?></p>
28
- </td>
29
- </tr>
30
-
31
- <tr class="show-if-payment">
32
- <th><?php _e( 'Force Pack', 'wpuf' ); ?></th>
33
- <td>
34
- <label>
35
- <input type="hidden" name="wpuf_settings[force_pack_purchase]" value="false">
36
- <input type="checkbox" name="wpuf_settings[force_pack_purchase]" value="true"<?php checked( $force_pack_purchase, 'true' ); ?> />
37
- <?php _e( 'Force subscription pack', 'wpuf' ) ?>
38
- </label>
39
- <p class="description"><?php _e( 'Force users to purchase and use subscription pack.', 'wpuf' ); ?></p>
40
- </td>
41
- </tr>
42
-
43
- <tr class="show-if-payment show-if-force-pack">
44
- <th><?php _e( 'Fallback to pay per post', 'wpuf' ); ?></th>
45
- <td>
46
- <label>
47
- <input type="hidden" name="wpuf_settings[fallback_ppp_enable]" value="false">
48
- <input type="checkbox" name="wpuf_settings[fallback_ppp_enable]" value="true"<?php checked( $fallback_ppp_enable, 'true' ); ?> />
49
- <?php _e( 'Fallback pay per post charging', 'wpuf' ) ?>
50
- </label>
51
- <p class="description"><?php _e( 'Fallback to pay per post charging if pack limit exceeds', 'wpuf' ); ?></p>
52
- </td>
53
- </tr>
54
-
55
- <tr class="show-if-payment show-if-force-pack">
56
- <th><?php _e( 'Fallback cost', 'wpuf' ); ?></th>
57
- <td>
58
- <label>
59
- <input type="number" name="wpuf_settings[fallback_ppp_cost]" value="<?php echo esc_attr( $fallback_ppp_cost ); ?>" />
60
- </label>
61
- <p class="description"><?php _e( 'Cost of pay per post after a subscription pack limit is reached.', 'wpuf' ); ?></p>
62
- </td>
63
- </tr>
64
-
65
- <tr class="show-if-payment">
66
- <th><?php _e( 'Pay Per Post', 'wpuf' ); ?></th>
67
- <td>
68
- <label>
69
- <input type="hidden" name="wpuf_settings[enable_pay_per_post]" value="false">
70
- <input type="checkbox" name="wpuf_settings[enable_pay_per_post]" value="true"<?php checked( $enable_pay_per_post, 'true' ); ?> />
71
- <?php _e( 'Enable Pay Per Post', 'wpuf' ) ?>
72
- </label>
73
- <p class="description"><?php _e( 'Charge users for posting,', 'wpuf' ); ?><a target="_blank" href="https://wedevs.com/docs/wp-user-frontend-pro/subscription-payment/how-to-charge-for-each-post-submission/"><?php _e( ' Learn More about Pay Per Post.', 'wpuf' ); ?></a></p>
74
- </td>
75
- </tr>
76
-
77
- <tr class="show-if-payment show-if-pay-per-post">
78
- <th><?php _e( 'Cost Settings', 'wpuf' ); ?></th>
79
- <td>
80
- <label>
81
- <input type="number" name="wpuf_settings[pay_per_post_cost]" value="<?php echo esc_attr( $pay_per_post_cost ); ?>" />
82
- </label>
83
- <p class="description"><?php _e( 'Amount to be charged per post', 'wpuf' ); ?></p>
84
- </td>
85
- </tr>
86
- <?php do_action( 'wpuf_form_setting_payment', $form_settings, $post ); ?>
87
- </table>
1
+ <?php
2
+ global $post;
3
+
4
+ $form_settings = wpuf_get_form_settings( $post->ID );
5
+
6
+ $payment_options = isset( $form_settings['payment_options'] ) ? $form_settings['payment_options'] : 'false';
7
+ $enable_pay_per_post = isset( $form_settings['enable_pay_per_post'] ) ? $form_settings['enable_pay_per_post'] : 'false';
8
+ $force_pack_purchase = isset( $form_settings['force_pack_purchase'] ) ? $form_settings['force_pack_purchase'] : 'false';
9
+
10
+ $pay_per_post_cost = isset( $form_settings['pay_per_post_cost'] ) ? $form_settings['pay_per_post_cost'] : 2;
11
+ $fallback_ppp_enable = isset( $form_settings['fallback_ppp_enable'] ) ? $form_settings['fallback_ppp_enable'] : 'false';
12
+ $fallback_ppp_cost = isset( $form_settings['fallback_ppp_cost'] ) ? $form_settings['fallback_ppp_cost'] : 1;
13
+
14
+ ?>
15
+ <table class="form-table">
16
+
17
+ <!-- Added Payment Settings -->
18
+
19
+ <tr>
20
+ <th><?php _e( 'Payment Options', 'wpuf' ); ?></th>
21
+ <td>
22
+ <label>
23
+ <input type="hidden" name="wpuf_settings[payment_options]" value="false">
24
+ <input type="checkbox" name="wpuf_settings[payment_options]" value="true"<?php checked( $payment_options, 'true' ); ?> />
25
+ <?php _e( 'Enable Payments', 'wpuf' ) ?>
26
+ </label>
27
+ <p class="description"><?php _e( 'Check to enable Payments for this form.', 'wpuf' ); ?></p>
28
+ </td>
29
+ </tr>
30
+
31
+ <tr class="show-if-payment">
32
+ <th>&mdash; <?php _e( 'Force Pack', 'wpuf' ); ?></th>
33
+ <td>
34
+ <label>
35
+ <input type="hidden" name="wpuf_settings[force_pack_purchase]" value="false">
36
+ <input type="checkbox" name="wpuf_settings[force_pack_purchase]" value="true"<?php checked( $force_pack_purchase, 'true' ); ?> />
37
+ <?php _e( 'Force subscription pack', 'wpuf' ) ?>
38
+ </label>
39
+ <p class="description"><?php _e( 'Force users to purchase and use subscription pack.', 'wpuf' ); ?></p>
40
+ </td>
41
+ </tr>
42
+
43
+ <tr class="show-if-payment show-if-force-pack">
44
+ <th>&mdash; &mdash; <?php _e( 'Fallback to pay per post', 'wpuf' ); ?></th>
45
+ <td>
46
+ <label>
47
+ <input type="hidden" name="wpuf_settings[fallback_ppp_enable]" value="false">
48
+ <input type="checkbox" name="wpuf_settings[fallback_ppp_enable]" value="true"<?php checked( $fallback_ppp_enable, 'true' ); ?> />
49
+ <?php _e( 'Fallback pay per post charging', 'wpuf' ) ?>
50
+ </label>
51
+ <p class="description"><?php _e( 'Fallback to pay per post charging if pack limit exceeds', 'wpuf' ); ?></p>
52
+ </td>
53
+ </tr>
54
+
55
+ <tr class="show-if-payment show-if-force-pack">
56
+ <th>&mdash; &mdash; <?php _e( 'Fallback cost', 'wpuf' ); ?></th>
57
+ <td>
58
+ <label>
59
+ <input type="number" name="wpuf_settings[fallback_ppp_cost]" value="<?php echo esc_attr( $fallback_ppp_cost ); ?>" />
60
+ </label>
61
+ <p class="description"><?php _e( 'Cost of pay per post after a subscription pack limit is reached.', 'wpuf' ); ?></p>
62
+ </td>
63
+ </tr>
64
+
65
+ <tr class="show-if-payment">
66
+ <th>&mdash; <?php _e( 'Pay Per Post', 'wpuf' ); ?></th>
67
+ <td>
68
+ <label>
69
+ <input type="hidden" name="wpuf_settings[enable_pay_per_post]" value="false">
70
+ <input type="checkbox" name="wpuf_settings[enable_pay_per_post]" value="true"<?php checked( $enable_pay_per_post, 'true' ); ?> />
71
+ <?php _e( 'Enable Pay Per Post', 'wpuf' ) ?>
72
+ </label>
73
+ <p class="description"><?php _e( 'Charge users for posting,', 'wpuf' ); ?><a target="_blank" href="https://wedevs.com/docs/wp-user-frontend-pro/subscription-payment/how-to-charge-for-each-post-submission/"><?php _e( ' Learn More about Pay Per Post.', 'wpuf' ); ?></a></p>
74
+ </td>
75
+ </tr>
76
+
77
+ <tr class="show-if-payment show-if-pay-per-post">
78
+ <th>&mdash; &mdash; <?php _e( 'Cost Settings', 'wpuf' ); ?></th>
79
+ <td>
80
+ <label>
81
+ <input type="number" name="wpuf_settings[pay_per_post_cost]" value="<?php echo esc_attr( $pay_per_post_cost ); ?>" />
82
+ </label>
83
+ <p class="description"><?php _e( 'Amount to be charged per post', 'wpuf' ); ?></p>
84
+ </td>
85
+ </tr>
86
+ <?php do_action( 'wpuf_form_setting_payment', $form_settings, $post ); ?>
87
+ </table>
admin/html/form-settings-post.php CHANGED
@@ -11,13 +11,6 @@ $post_type_selected = isset( $form_settings['post_type'] ) ? $form_settings['
11
  $post_format_selected = isset( $form_settings['post_format'] ) ? $form_settings['post_format'] : 0;
12
  $default_cat = isset( $form_settings['default_cat'] ) ? $form_settings['default_cat'] : -1;
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', 'wpuf' );
18
- $email_label = isset( $form_settings['email_label'] ) ? $form_settings['email_label'] : __( 'Email', 'wpuf' );
19
- $message_restrict = isset( $form_settings['message_restrict'] ) ? $form_settings['message_restrict'] : $restrict_message;
20
-
21
  $redirect_to = isset( $form_settings['redirect_to'] ) ? $form_settings['redirect_to'] : 'post';
22
  $message = isset( $form_settings['message'] ) ? $form_settings['message'] : __( 'Post saved', 'wpuf' );
23
  $update_message = isset( $form_settings['update_message'] ) ? $form_settings['update_message'] : __( 'Post updated successfully', 'wpuf' );
@@ -109,69 +102,6 @@ $draft_post = isset( $form_settings['draft_post'] ) ? $form_settings[
109
  </td>
110
  </tr>
111
 
112
- <tr>
113
- <th><?php _e( 'Guest Post', 'wpuf' ); ?></th>
114
- <td>
115
- <label>
116
- <input type="hidden" name="wpuf_settings[guest_post]" value="false">
117
- <input type="checkbox" name="wpuf_settings[guest_post]" value="true"<?php checked( $guest_post, 'true' ); ?> />
118
- <?php _e( 'Enable Guest Post', 'wpuf' ) ?>
119
- </label>
120
- <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>
121
- </td>
122
- </tr>
123
-
124
- <tr class="show-if-guest">
125
- <th><?php _e( 'User Details', 'wpuf' ); ?></th>
126
- <td>
127
- <label>
128
- <input type="hidden" name="wpuf_settings[guest_details]" value="false">
129
- <input type="checkbox" name="wpuf_settings[guest_details]" value="true"<?php checked( $guest_details, 'true' ); ?> />
130
- <?php _e( 'Require Name and Email address', 'wpuf' ) ?>
131
- </label>
132
- <p class="description"><?php _e( 'If requires, users will be automatically registered to the site using the name and email address', 'wpuf' ); ?></p>
133
- </td>
134
- </tr>
135
-
136
- <tr class="show-if-guest">
137
- <th><?php _e( 'Email Verification', 'wpuf' ); ?></th>
138
- <td>
139
- <label>
140
- <input type="checkbox" name="wpuf_settings[guest_email_verify]" value="true"<?php checked( $guest_email_verify, 'true' ); ?> />
141
- <?php _e( 'Require Email Verification for Guests', 'wpuf' ) ?>
142
- </label>
143
- <p class="description"><?php _e( 'If requires, users will be required to verify their email adress.', 'wpuf' ); ?></p>
144
- </td>
145
- </tr>
146
-
147
- <tr class="show-if-guest show-if-details">
148
- <th><?php _e( 'Name Label', 'wpuf' ); ?></th>
149
- <td>
150
- <label>
151
- <input type="text" name="wpuf_settings[name_label]" value="<?php echo esc_attr( $name_label ); ?>" />
152
- </label>
153
- <p class="description"><?php _e( 'Label text for name field', 'wpuf' ); ?></p>
154
- </td>
155
- </tr>
156
-
157
- <tr class="show-if-guest show-if-details">
158
- <th><?php _e( 'E-Mail Label', 'wpuf' ); ?></th>
159
- <td>
160
- <label>
161
- <input type="text" name="wpuf_settings[email_label]" value="<?php echo esc_attr( $email_label ); ?>" />
162
- </label>
163
- <p class="description"><?php _e( 'Label text for email field', 'wpuf' ); ?></p>
164
- </td>
165
- </tr>
166
-
167
- <tr class="show-if-not-guest">
168
- <th><?php _e( 'Unauthorized Message', 'wpuf' ); ?></th>
169
- <td>
170
- <textarea rows="3" cols="40" name="wpuf_settings[message_restrict]"><?php echo esc_textarea( $message_restrict ); ?></textarea>
171
- <p class="description"><?php _e( 'Not logged in users will see this message', 'wpuf' ); ?></p>
172
- </td>
173
- </tr>
174
-
175
  <tr class="wpuf-redirect-to">
176
  <th><?php _e( 'Redirect To', 'wpuf' ); ?></th>
177
  <td>
@@ -254,4 +184,4 @@ $draft_post = isset( $form_settings['draft_post'] ) ? $form_settings[
254
  </tr>
255
 
256
  <?php do_action( 'wpuf_form_setting', $form_settings, $post ); ?>
257
- </table>
11
  $post_format_selected = isset( $form_settings['post_format'] ) ? $form_settings['post_format'] : 0;
12
  $default_cat = isset( $form_settings['default_cat'] ) ? $form_settings['default_cat'] : -1;
13
 
 
 
 
 
 
 
 
14
  $redirect_to = isset( $form_settings['redirect_to'] ) ? $form_settings['redirect_to'] : 'post';
15
  $message = isset( $form_settings['message'] ) ? $form_settings['message'] : __( 'Post saved', 'wpuf' );
16
  $update_message = isset( $form_settings['update_message'] ) ? $form_settings['update_message'] : __( 'Post updated successfully', 'wpuf' );
102
  </td>
103
  </tr>
104
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
105
  <tr class="wpuf-redirect-to">
106
  <th><?php _e( 'Redirect To', 'wpuf' ); ?></th>
107
  <td>
184
  </tr>
185
 
186
  <?php do_action( 'wpuf_form_setting', $form_settings, $post ); ?>
187
+ </table>
admin/html/form-submission-restriction.php ADDED
@@ -0,0 +1,190 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ global $post;
3
+
4
+ $form_settings = wpuf_get_form_settings( $post->ID );
5
+
6
+ $guest_post = isset( $form_settings['guest_post'] ) ? $form_settings['guest_post'] : 'false';
7
+ $role_base = isset( $form_settings['role_base'] ) ? $form_settings['role_base'] : 'false';
8
+ $roles = isset( $form_settings['roles'] ) ? $form_settings['roles'] : array( 'administrator' );
9
+ $guest_details = isset( $form_settings['guest_details'] ) ? $form_settings['guest_details'] : 'true';
10
+ $guest_email_verify = isset( $form_settings['guest_email_verify'] ) ? $form_settings['guest_email_verify'] : 'false';
11
+ $name_label = isset( $form_settings['name_label'] ) ? $form_settings['name_label'] : __( 'Name', 'wpuf' );
12
+ $email_label = isset( $form_settings['email_label'] ) ? $form_settings['email_label'] : __( 'Email', 'wpuf' );
13
+ $message_restrict = isset( $form_settings['message_restrict'] ) ? $form_settings['message_restrict'] : $restrict_message;
14
+
15
+ $schedule_form = isset( $form_settings['schedule_form'] ) ? $form_settings['schedule_form'] : 'false';
16
+ $schedule_start = isset( $form_settings['schedule_start'] ) ? $form_settings['schedule_start'] : '';
17
+ $schedule_end = isset( $form_settings['schedule_end'] ) ? $form_settings['schedule_end'] : '';
18
+ $form_pending_message = isset( $form_settings['form_pending_message'] ) ? $form_settings['form_pending_message'] : 'Form submission not started.';
19
+ $form_expired_message = isset( $form_settings['form_expired_message'] ) ? $form_settings['form_expired_message'] : 'Submission date expired.';
20
+
21
+ $limit_entries = isset( $form_settings['limit_entries'] ) ? $form_settings['limit_entries'] : 'false';
22
+ $limit_number = isset( $form_settings['limit_number'] ) ? $form_settings['limit_number'] : 100;
23
+ $limit_message = isset( $form_settings['limit_message'] ) ? $form_settings['limit_message'] : 'Form submission limit exceeded';
24
+ ?>
25
+ <table class="form-table">
26
+
27
+ <!-- Added Submission Restriction Settings -->
28
+ <tr>
29
+ <th><?php _e( 'Guest Post', 'wpuf' ); ?></th>
30
+ <td>
31
+ <label>
32
+ <input type="hidden" name="wpuf_settings[guest_post]" value="false">
33
+ <input type="checkbox" name="wpuf_settings[guest_post]" value="true"<?php checked( $guest_post, 'true' ); ?> />
34
+ <?php _e( 'Enable Guest Post', 'wpuf' ) ?>
35
+ </label>
36
+ <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>
37
+ </td>
38
+ </tr>
39
+
40
+ <tr class="show-if-guest">
41
+ <th>&mdash; <?php _e( 'User Details', 'wpuf' ); ?></th>
42
+ <td>
43
+ <label>
44
+ <input type="hidden" name="wpuf_settings[guest_details]" value="false">
45
+ <input type="checkbox" name="wpuf_settings[guest_details]" value="true"<?php checked( $guest_details, 'true' ); ?> />
46
+ <?php _e( 'Require Name and Email address', 'wpuf' ) ?>
47
+ </label>
48
+ <p class="description"><?php _e( 'If requires, users will be automatically registered to the site using the name and email address', 'wpuf' ); ?></p>
49
+ </td>
50
+ </tr>
51
+
52
+ <tr class="show-if-guest show-if-details">
53
+ <th>&mdash; &mdash; <?php _e( 'Name Label', 'wpuf' ); ?></th>
54
+ <td>
55
+ <label>
56
+ <input type="text" name="wpuf_settings[name_label]" value="<?php echo esc_attr( $name_label ); ?>" />
57
+ </label>
58
+ <p class="description"><?php _e( 'Label text for name field', 'wpuf' ); ?></p>
59
+ </td>
60
+ </tr>
61
+
62
+ <tr class="show-if-guest show-if-details">
63
+ <th>&mdash; &mdash; <?php _e( 'E-Mail Label', 'wpuf' ); ?></th>
64
+ <td>
65
+ <label>
66
+ <input type="text" name="wpuf_settings[email_label]" value="<?php echo esc_attr( $email_label ); ?>" />
67
+ </label>
68
+ <p class="description"><?php _e( 'Label text for email field', 'wpuf' ); ?></p>
69
+ </td>
70
+ </tr>
71
+
72
+ <tr class="show-if-guest">
73
+ <th>&mdash; <?php _e( 'Email Verification', 'wpuf' ); ?></th>
74
+ <td>
75
+ <label>
76
+ <input type="checkbox" name="wpuf_settings[guest_email_verify]" value="true"<?php checked( $guest_email_verify, 'true' ); ?> />
77
+ <?php _e( 'Require Email Verification for Guests', 'wpuf' ) ?>
78
+ </label>
79
+ <p class="description"><?php _e( 'If requires, users will be required to verify their email adress.', 'wpuf' ); ?></p>
80
+ </td>
81
+ </tr>
82
+
83
+ <tr class="show-if-not-guest">
84
+ <th>&mdash; <?php _e( 'Role Base', 'wpuf' ); ?></th>
85
+ <td>
86
+ <label>
87
+ <input type="hidden" name="wpuf_settings[role_base]" value="false">
88
+ <input type="checkbox" name="wpuf_settings[role_base]" value="true"<?php checked( $role_base, 'true' ); ?> />
89
+ <?php _e( 'Enable role base post', 'wpuf' ) ?>
90
+ </label>
91
+ <p class="description"><?php _e( 'You can choose which role can submit posts by this form.', 'wpuf' ); ?></p>
92
+ </td>
93
+ </tr>
94
+
95
+ <tr class="show-if-not-guest show-if-roles">
96
+ <th>&mdash; &mdash; <?php _e( 'Roles', 'wpuf' ); ?></th>
97
+ <td>
98
+ <?php
99
+ foreach ( wpuf_get_user_roles() as $key => $role ) { ?>
100
+ <label>
101
+ <input type="checkbox" name="wpuf_settings[roles][]" value="<?php echo $key; ?>"
102
+ <?php echo in_array($key, $roles) ? 'checked="checked"' : '';
103
+ echo 'administrator' == $key ? 'disabled' : '';
104
+ ?> />
105
+ <?php echo $role; ?>
106
+ </label><br>
107
+ <?php } ?>
108
+
109
+ <p class="description"><?php _e( 'Choose which roles can submit posts.', 'wpuf' ); ?></p>
110
+ </td>
111
+ </tr>
112
+
113
+ <tr class="show-if-not-guest">
114
+ <th>&mdash; <?php _e( 'Unauthorized Message', 'wpuf' ); ?></th>
115
+ <td>
116
+ <textarea rows="3" cols="40" name="wpuf_settings[message_restrict]"><?php echo esc_textarea( $message_restrict ); ?></textarea>
117
+ <p class="description"><?php _e( 'Not logged in users will see this message', 'wpuf' ); ?></p>
118
+ </td>
119
+ </tr>
120
+
121
+ <tr>
122
+ <th><?php _e( 'Schedule form', 'wpuf' ); ?></th>
123
+ <td>
124
+ <label>
125
+ <input type="hidden" name="wpuf_settings[schedule_form]" value="false">
126
+ <input type="checkbox" name="wpuf_settings[schedule_form]" value="true"<?php checked( $schedule_form, 'true' ); ?> />
127
+ <?php _e( 'Schedule form for a period', 'wpuf' ) ?>
128
+ </label>
129
+ <p class="description"><?php _e( 'Schedule for a time period the form is active.', 'wpuf' ); ?></p>
130
+ </td>
131
+ </tr>
132
+
133
+ <tr class="show-if-schedule">
134
+ <th>&mdash; <?php _e( 'Schedule Period', 'wpuf' ); ?></th>
135
+ <td>
136
+
137
+ <?php _e( 'From', 'wpuf' ); ?>
138
+ <input type="text" name="wpuf_settings[schedule_start]" id="schedule_start" value="" class="datepicker">
139
+ <!-- <datepicker name="wpuf_settings[schedule_start]"></datepicker> -->
140
+
141
+ <?php _e( 'To', 'wpuf' ); ?>
142
+ <input type="text" name="wpuf_settings[schedule_end]" id="schedule_end" value="" class="datepicker">
143
+ <!-- <datepicker name="wpuf_settings[schedule_end]"></datepicker> -->
144
+ </td>
145
+ </tr>
146
+
147
+ <tr class="show-if-schedule">
148
+ <th>&mdash; <?php _e( 'Form Pending Message', 'wpuf' ); ?></th>
149
+ <td>
150
+ <textarea rows="3" cols="40" name="wpuf_settings[form_pending_message]"><?php echo esc_textarea( $form_pending_message ); ?></textarea>
151
+ </td>
152
+ </tr>
153
+
154
+ <tr class="show-if-schedule">
155
+ <th>&mdash; <?php _e( 'Form Expired Message', 'wpuf' ); ?></th>
156
+ <td>
157
+ <textarea rows="3" cols="40" name="wpuf_settings[form_expired_message]"><?php echo esc_textarea( $form_expired_message ); ?></textarea>
158
+ </td>
159
+ </tr>
160
+
161
+ <tr class="wpuf-limit-entries">
162
+ <th><?php _e( 'Limit Entries', 'wpuf' ); ?></th>
163
+ <td>
164
+ <label>
165
+ <input type="hidden" name="wpuf_settings[limit_entries]" value="false">
166
+ <input type="checkbox" name="wpuf_settings[limit_entries]" value="true"<?php checked( $limit_entries, 'true' ); ?> />
167
+ <?php _e( 'Enable form entry limit', 'wpuf' ); ?>
168
+ </label>
169
+
170
+ <p class="description">
171
+ <?php _e( 'Limit the number of entries allowed for this form', 'wpuf' ) ?>
172
+ </p>
173
+ </td>
174
+ </tr>
175
+
176
+ <tr class="show-if-limit-entries">
177
+ <th>&mdash; <?php _e( 'Number of Entries', 'wpuf' ); ?></th>
178
+ <td>
179
+ <input type="number" value="<?php echo esc_attr( $limit_number ); ?>" name="wpuf_settings[limit_number]">
180
+ </td>
181
+ </tr>
182
+
183
+ <tr class="show-if-limit-entries">
184
+ <th>&mdash; <?php _e( 'Limit Reached Message', 'wpuf' ); ?></th>
185
+ <td>
186
+ <textarea rows="3" cols="40" name="wpuf_settings[limit_message]"><?php echo esc_textarea( $limit_message ); ?></textarea>
187
+ </td>
188
+ </tr>
189
+ <?php do_action( 'wpuf_form_submission_restriction', $form_settings, $post ); ?>
190
+ </table>
admin/html/whats-new.php CHANGED
@@ -1,37 +1,43 @@
1
  <?php
2
  $changelog = array(
3
  array(
4
- 'version' => 'Version 2.7',
5
- 'released' => '2017-12-12',
6
  'changes' => array(
7
  array(
8
- 'title' => 'Interactive Settings Page to Manage it All',
9
- 'type' => 'Improvement',
10
- 'description' => 'WP User Frontend now has better and improved settings page where you can easily configure everything for your WP User Frontend.
11
- <img src="'. WPUF_ASSET_URI .'/images/whats-new/settings.png" alt="WP User Frontend Settings">'
12
  ),
13
  array(
14
- 'title' => 'Fallback cost for form subscription payment',
15
  'type' => 'New',
16
- 'description' => 'When a subscribed user reaches post limit before the pack expires, this option will allow user to pay per post and continue making posts until the membership is valid.
17
- <br><iframe width="100%" height="400" src="https://www.youtube.com/embed/-Z_uNM8eB_Y" frameborder="0" gesture="media" allow="encrypted-media" allowfullscreen></iframe>'
18
  ),
19
  array(
20
- 'title' => 'Integrated WP User Frontend with Dokan',
21
  'type' => 'New',
22
- 'description' => 'Admin can allow vendors to create and publish posts on the marketplace from the vendor dashboard. Admin can also select the form that vendor will use. Vendors will be able to make use of all the WPUF settings in this form.
23
- <br><iframe width="100%" height="400" src="https://www.youtube.com/embed/6n6CtGjTCF4" frameborder="0" gesture="media" allow="encrypted-media" allowfullscreen></iframe>'
24
  ),
25
  array(
26
- 'title' => 'Bulk accept pending transactions',
27
  'type' => 'New',
28
- 'description' => 'When you have a lots of pending transactions, completing all those individual transactions take time. Now you can bulk complete the selected transactions with at once.'
 
29
  ),
30
  array(
31
- 'title' => 'Subscribe to our newsletter',
32
  'type' => 'New',
33
- 'description' => 'Newsletter subscription form added on the help page to keep you staying updated with latest news from us.
34
- <img src="http://d.pr/i/QstTQq+" alt="Newsletter subscription form" />'
 
 
 
 
 
35
  ),
36
  )
37
  )
1
  <?php
2
  $changelog = array(
3
  array(
4
+ 'version' => 'Version 2.8',
5
+ 'released' => '2018-01-06',
6
  'changes' => array(
7
  array(
8
+ 'title' => __( 'Manage schedule for form submission', 'wpuf' ),
9
+ 'type' => 'New',
10
+ 'description' => __( 'Do not accept form submission if the current date is not between the date range of the schedule.', 'wpuf' ) .
11
+ '<img src="'. WPUF_ASSET_URI .'/images/whats-new/schedule.png" alt="Manage schedule for form submission">'
12
  ),
13
  array(
14
+ 'title' => __( 'Restrict form submission based on the user roles', 'wpuf' ),
15
  'type' => 'New',
16
+ 'description' => __( 'Restrict form submission based on the user roles. Now you can manage user role base permission on form submission.', 'wpuf' ) .
17
+ '<img src="'. WPUF_ASSET_URI .'/images/whats-new/role-base.png" alt="Restrict form submission based on the users role">'
18
  ),
19
  array(
20
+ 'title' => __( 'Limit how many entries a form will accept', 'wpuf' ),
21
  'type' => 'New',
22
+ 'description' => __( 'Limit how many entries a form will accept and display a custom message when that limit is reached.', 'wpuf' ) .
23
+ '<img src="'. WPUF_ASSET_URI .'/images/whats-new/limit.png" alt="Limit how many entries a form will accept">'
24
  ),
25
  array(
26
+ 'title' => __( 'Show/hide Admin Bar', 'wpuf' ),
27
  'type' => 'New',
28
+ 'description' => __( 'Control the admin bar visibility based on user roles.', 'wpuf' ) .
29
+ '<img src="'. WPUF_ASSET_URI .'/images/whats-new/admin-bar.png" alt="Show/hide Admin Bar">'
30
  ),
31
  array(
32
+ 'title' => __( 'Ajax Login widget', 'wpuf' ),
33
  'type' => 'New',
34
+ 'description' => __( 'Login user is more simple now with Ajax Login Widget. The simple ajax login form do not required page loading for login.', 'wpuf' ) .
35
+ '<br><br><iframe width="100%" height="372" src="https://www.youtube.com/embed/eZYSuXsCw8E" frameborder="0" gesture="media" allow="encrypted-media" allowfullscreen></iframe>'
36
+ ),
37
+ array(
38
+ 'title' => __( 'Form submission with Captcha field', 'wpuf' ),
39
+ 'type' => 'Improvement',
40
+ 'description' => __( 'Form field validation process updated if form submits with captcha field.', 'wpuf' )
41
  ),
42
  )
43
  )
admin/installer.php CHANGED
@@ -87,7 +87,7 @@ class WPUF_Admin_Installer {
87
 
88
  // save the settings
89
  if ( $edit_page ) {
90
- update_option( 'wpuf_general', array(
91
  'edit_page_id' => $edit_page,
92
  'default_post_form' => $post_form
93
  ) );
87
 
88
  // save the settings
89
  if ( $edit_page ) {
90
+ update_option( 'wpuf_frontend_posting', array(
91
  'edit_page_id' => $edit_page,
92
  'default_post_form' => $post_form
93
  ) );
admin/settings-options.php CHANGED
@@ -39,7 +39,7 @@ function wpuf_settings_sections() {
39
  'icon' => 'dashicons-money'
40
  ),
41
  array(
42
- 'id' => 'wpuf_guest_mails',
43
  'title' => __( 'E-Mails', 'wpuf' ),
44
  'icon' => 'dashicons-email-alt'
45
 
@@ -64,10 +64,23 @@ function wpuf_settings_fields() {
64
 
65
  $settings_fields = array(
66
  'wpuf_general' => apply_filters( 'wpuf_options_others', array(
 
 
 
 
 
 
 
 
 
 
 
 
 
67
  array(
68
  'name' => 'admin_access',
69
  'label' => __( 'Admin area access', 'wpuf' ),
70
- 'desc' => __( 'Allow you to block specific user role to WordPress admin area.', 'wpuf' ),
71
  'type' => 'select',
72
  'default' => 'read',
73
  'options' => array(
@@ -394,22 +407,22 @@ function wpuf_settings_fields() {
394
  'options' => wpuf_get_gateways()
395
  )
396
  ) ),
397
- 'wpuf_guest_mails' => array(
398
  array(
399
  'name' => 'guest_email_subject',
400
- 'label' => __( 'Guest Email Subject', 'wpuf' ),
401
  'desc' => __( 'This sets the subject of the emails sent to guest users', 'wpuf' ),
402
  'default' => 'Please Confirm Your Email to Get the Post Published!',
403
  'type' => 'text',
404
  ),
405
  array(
406
  'name' => 'guest_email_body',
407
- 'label' => __( 'Guest Email Body', 'wpuf' ),
408
  'desc' => __( "This sets the body of the emails sent to guest users. Please DON'T edit the <code>{activation_link}</code> part", 'wpuf' ),
409
  '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%",
410
- 'type' => 'textarea',
411
- )
412
- )
413
  );
414
 
415
  return apply_filters( 'wpuf_settings_fields', $settings_fields );
@@ -452,4 +465,4 @@ function wpuf_settings_field_profile( $form ) {
452
  }
453
  }
454
 
455
- add_action( 'wsa_form_bottom_wpuf_profile', 'wpuf_settings_field_profile' );
39
  'icon' => 'dashicons-money'
40
  ),
41
  array(
42
+ 'id' => 'wpuf_mails',
43
  'title' => __( 'E-Mails', 'wpuf' ),
44
  'icon' => 'dashicons-email-alt'
45
 
64
 
65
  $settings_fields = array(
66
  'wpuf_general' => apply_filters( 'wpuf_options_others', array(
67
+ array(
68
+ 'name' => 'show_admin_bar',
69
+ 'label' => __( 'Show Admin Bar', 'wpuf' ),
70
+ 'desc' => __( 'Select user by roles, who can view admin bar in frontend.', 'wpuf' ),
71
+ 'type' => 'multicheck',
72
+ 'options' => array(
73
+ 'administrator' => __( 'Administrator', 'wpuf' ),
74
+ 'editor' => __( 'Editor', 'wpuf' ),
75
+ 'author' => __( 'Author', 'wpuf' ),
76
+ 'contributor' => __( 'Contributor', 'wpuf' )
77
+ ),
78
+ 'default' => array( 'administrator', 'editor', 'author', 'contributor' ),
79
+ ),
80
  array(
81
  'name' => 'admin_access',
82
  'label' => __( 'Admin area access', 'wpuf' ),
83
+ 'desc' => __( 'Allow you to block specific user role to Ajax request and Media upload.', 'wpuf' ),
84
  'type' => 'select',
85
  'default' => 'read',
86
  'options' => array(
407
  'options' => wpuf_get_gateways()
408
  )
409
  ) ),
410
+ 'wpuf_mails' => apply_filters( 'wpuf_mail_options', array(
411
  array(
412
  'name' => 'guest_email_subject',
413
+ 'label' => __( 'Guest mail subject', 'wpuf' ),
414
  'desc' => __( 'This sets the subject of the emails sent to guest users', 'wpuf' ),
415
  'default' => 'Please Confirm Your Email to Get the Post Published!',
416
  'type' => 'text',
417
  ),
418
  array(
419
  'name' => 'guest_email_body',
420
+ 'label' => __( 'Guest mail body', 'wpuf' ),
421
  'desc' => __( "This sets the body of the emails sent to guest users. Please DON'T edit the <code>{activation_link}</code> part", 'wpuf' ),
422
  '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%",
423
+ 'type' => 'wysiwyg',
424
+ ),
425
+ ) )
426
  );
427
 
428
  return apply_filters( 'wpuf_settings_fields', $settings_fields );
465
  }
466
  }
467
 
468
+ add_action( 'wsa_form_bottom_wpuf_profile', 'wpuf_settings_field_profile' );
assets/css/admin.css CHANGED
@@ -218,7 +218,7 @@ span.wpuf_help {
218
  .wpuf-settings-wrap h2.nav-tab-wrapper a.nav-tab#wpuf_payment-tab .dashicons {
219
  color: #e67e22;
220
  }
221
- .wpuf-settings-wrap h2.nav-tab-wrapper a.nav-tab#wpuf_guest_mails-tab .dashicons {
222
  color: #115da7;
223
  }
224
  .wpuf-settings-wrap h2.nav-tab-wrapper a.nav-tab#wpuf_sms-tab .dashicons {
218
  .wpuf-settings-wrap h2.nav-tab-wrapper a.nav-tab#wpuf_payment-tab .dashicons {
219
  color: #e67e22;
220
  }
221
+ .wpuf-settings-wrap h2.nav-tab-wrapper a.nav-tab#wpuf_mails-tab .dashicons {
222
  color: #115da7;
223
  }
224
  .wpuf-settings-wrap h2.nav-tab-wrapper a.nav-tab#wpuf_sms-tab .dashicons {
assets/images/whats-new/admin-bar.png ADDED
Binary file
assets/images/whats-new/limit.png ADDED
Binary file
assets/images/whats-new/module-activation.gif DELETED
Binary file
assets/images/whats-new/role-base.png ADDED
Binary file
assets/images/whats-new/schedule.png ADDED
Binary file
assets/images/whats-new/settings.png DELETED
Binary file
assets/images/whats-new/user-status.png ADDED
Binary file
assets/js-templates/form-components.php CHANGED
@@ -336,7 +336,7 @@
336
  </div>
337
 
338
  <div v-if="'subscribed_users' === selected" class="condiotional-logic-container">
339
-
340
  <ul>
341
  <?php
342
 
336
  </div>
337
 
338
  <div v-if="'subscribed_users' === selected" class="condiotional-logic-container">
339
+
340
  <ul>
341
  <?php
342
 
assets/js/wpuf-admin.js ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jQuery(function($) {
2
+
3
+ function show_sub_sections() {
4
+ $('.pre-sub-exp-notify-date').show();
5
+ $('.post-sub-exp-notify-date').show();
6
+ $('.pre-sub-exp-sub').show();
7
+ $('.pre-sub-exp-body').show();
8
+ $('.post-sub-exp-sub').show();
9
+ $('.post-sub-exp-body').show()
10
+ }
11
+
12
+ function hide_sub_sections() {
13
+ $('.pre-sub-exp-notify-date').hide();
14
+ $('.post-sub-exp-notify-date').hide();
15
+ $('.pre-sub-exp-sub').hide();
16
+ $('.pre-sub-exp-body').hide();
17
+ $('.post-sub-exp-sub').hide();
18
+ $('.post-sub-exp-body').hide();
19
+ }
20
+
21
+ if ( $("#wpuf-wpuf_mails\\[enable_subs_notification\\]").attr('checked')) {
22
+ show_sub_sections();
23
+ } else {
24
+ hide_sub_sections();
25
+ }
26
+
27
+ $("#wpuf-wpuf_mails\\[enable_subs_notification\\]").click( function() {
28
+ if( $(this).prop("checked") ) {
29
+ show_sub_sections();
30
+ } else {
31
+ hide_sub_sections();
32
+ }
33
+ });
34
+ });
assets/js/wpuf-form-builder.js CHANGED
@@ -358,6 +358,7 @@
358
  var SettingsTab = {
359
  init: function() {
360
  $(function() {
 
361
  $('.wpuf-ms-color').wpColorPicker();
362
  });
363
 
@@ -366,13 +367,6 @@
366
  $('select[name="wpuf_settings[redirect_to]"]').change();
367
  $('select[name="wpuf_settings[edit_redirect_to]"]').change();
368
 
369
- // Form settings: Guest post
370
- $('#wpuf-metabox-settings').on('change', 'input[type=checkbox][name="wpuf_settings[guest_post]"]', this.settingsGuest);
371
- $('input[type=checkbox][name="wpuf_settings[guest_post]"]').trigger('change');
372
-
373
- // From settings: User details
374
- $('#wpuf-metabox-settings').on('change', 'input[type=checkbox][name="wpuf_settings[guest_details]"]', this.settingsGuestDetails);
375
-
376
  // Form settings: Payment
377
  $('#wpuf-metabox-settings-payment').on('change', 'input[type=checkbox][name="wpuf_settings[payment_options]"]', this.settingsPayment);
378
  $('input[type=checkbox][name="wpuf_settings[payment_options]"]').trigger('change');
@@ -385,6 +379,25 @@
385
  $('#wpuf-metabox-settings-payment').on('change', 'input[type=checkbox][name="wpuf_settings[force_pack_purchase]"]', this.settingsForcePack);
386
  $('input[type=checkbox][name="wpuf_settings[force_pack_purchase]"]').trigger('change');
387
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
388
  this.changeMultistepVisibility($('.wpuf_enable_multistep_section :input[type="checkbox"]'));
389
  var self = this;
390
  $('.wpuf_enable_multistep_section :input[type="checkbox"]').click(function() {
@@ -409,6 +422,18 @@
409
  }
410
  },
411
 
 
 
 
 
 
 
 
 
 
 
 
 
412
  settingsGuestDetails: function (e) {
413
  e.preventDefault();
414
 
@@ -464,6 +489,32 @@
464
  }
465
  },
466
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
467
  settingsRedirect: function(e) {
468
  e.preventDefault();
469
 
358
  var SettingsTab = {
359
  init: function() {
360
  $(function() {
361
+ $('.datepicker').datetimepicker();
362
  $('.wpuf-ms-color').wpColorPicker();
363
  });
364
 
367
  $('select[name="wpuf_settings[redirect_to]"]').change();
368
  $('select[name="wpuf_settings[edit_redirect_to]"]').change();
369
 
 
 
 
 
 
 
 
370
  // Form settings: Payment
371
  $('#wpuf-metabox-settings-payment').on('change', 'input[type=checkbox][name="wpuf_settings[payment_options]"]', this.settingsPayment);
372
  $('input[type=checkbox][name="wpuf_settings[payment_options]"]').trigger('change');
379
  $('#wpuf-metabox-settings-payment').on('change', 'input[type=checkbox][name="wpuf_settings[force_pack_purchase]"]', this.settingsForcePack);
380
  $('input[type=checkbox][name="wpuf_settings[force_pack_purchase]"]').trigger('change');
381
 
382
+ // Form settings: Submission Restriction
383
+
384
+ // Form settings: Guest post
385
+ $('#wpuf-metabox-submission-restriction').on('change', 'input[type=checkbox][name="wpuf_settings[guest_post]"]', this.settingsGuest);
386
+ $('input[type=checkbox][name="wpuf_settings[guest_post]"]').trigger('change');
387
+ $('#wpuf-metabox-submission-restriction').on('change', 'input[type=checkbox][name="wpuf_settings[role_base]"]', this.settingsRoles);
388
+ $('input[type=checkbox][name="wpuf_settings[role_base]"]').trigger('change');
389
+
390
+ // From settings: User details
391
+ $('#wpuf-metabox-submission-restriction').on('change', 'input[type=checkbox][name="wpuf_settings[guest_details]"]', this.settingsGuestDetails);
392
+
393
+ // From settings: schedule form
394
+ $('#wpuf-metabox-submission-restriction').on('change', 'input[type=checkbox][name="wpuf_settings[schedule_form]"]', this.settingsRestriction);
395
+ $('input[type=checkbox][name="wpuf_settings[schedule_form]"]').trigger('change');
396
+
397
+ // From settings: limit entries
398
+ $('#wpuf-metabox-submission-restriction').on('change', 'input[type=checkbox][name="wpuf_settings[limit_entries]"]', this.settingsLimit);
399
+ $('input[type=checkbox][name="wpuf_settings[limit_entries]"]').trigger('change');
400
+
401
  this.changeMultistepVisibility($('.wpuf_enable_multistep_section :input[type="checkbox"]'));
402
  var self = this;
403
  $('.wpuf_enable_multistep_section :input[type="checkbox"]').click(function() {
422
  }
423
  },
424
 
425
+ settingsRoles: function (e) {
426
+ e.preventDefault();
427
+
428
+ var table = $(this).closest('table');
429
+
430
+ if ( $(this).is(':checked') ) {
431
+ table.find('tr.show-if-roles').show();
432
+ } else {
433
+ table.find('tr.show-if-roles').hide();
434
+ }
435
+ },
436
+
437
  settingsGuestDetails: function (e) {
438
  e.preventDefault();
439
 
489
  }
490
  },
491
 
492
+ settingsRestriction: function (e) {
493
+ e.preventDefault();
494
+
495
+ var table = $(this).closest('table');
496
+
497
+ if ( $(this).is(':checked') ) {
498
+ table.find('tr.show-if-schedule').show();
499
+ } else {
500
+ table.find('tr.show-if-schedule').hide();
501
+
502
+ }
503
+ },
504
+
505
+ settingsLimit: function (e) {
506
+ e.preventDefault();
507
+
508
+ var table = $(this).closest('table');
509
+
510
+ if ( $(this).is(':checked') ) {
511
+ table.find('tr.show-if-limit-entries').show();
512
+ } else {
513
+ table.find('tr.show-if-limit-entries').hide();
514
+
515
+ }
516
+ },
517
+
518
  settingsRedirect: function(e) {
519
  e.preventDefault();
520
 
assets/js/wpuf-login-widget.js ADDED
@@ -0,0 +1,88 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jQuery( function($) {
2
+
3
+ $('.wpuf-ajax-reset-password-form').hide();
4
+
5
+ var login_widget = $('.login-widget-container');
6
+
7
+ login_widget.on('click', '#wpuf-ajax-login-url', function(e) {
8
+ e.preventDefault();
9
+
10
+ $('.wpuf-ajax-login-form').show();
11
+ $('.wpuf-ajax-reset-password-form').hide();
12
+ });
13
+
14
+ login_widget.on('click', '#wpuf-ajax-lost-pw-url', function(e) {
15
+ e.preventDefault();
16
+
17
+ $('.wpuf-ajax-reset-password-form').show();
18
+ $('.wpuf-ajax-login-form').hide();
19
+ });
20
+
21
+ // Login
22
+ login_widget.on('submit', function(e) {
23
+ e.preventDefault();
24
+
25
+ var button = $(this).find('submit');
26
+ form_data = $('#wpuf_ajax_login_form').serialize() + '&action=wpuf_ajax_login';
27
+
28
+ $.ajax({
29
+ url: wpuf_ajax.ajaxurl,
30
+ type: 'POST',
31
+ dataType: 'json',
32
+ data: form_data
33
+ })
34
+ .done( function( response, textStatus, jqXHR ) {
35
+ if ( response.success == false ) {
36
+ $('.wpuf-ajax-login-form .wpuf-ajax-errors').append(response.data.message);
37
+ } else {
38
+ window.location.reload(true);
39
+ button.hide();
40
+ }
41
+ } )
42
+ .fail( function( jqXHR, textStatus, errorThrown ) {
43
+ console.log( 'AJAX failed', errorThrown );
44
+ } );
45
+ });
46
+
47
+ // Reset Password
48
+ login_widget.on('submit', function(e) {
49
+ e.preventDefault();
50
+
51
+ var button = $(this).find('submit');
52
+
53
+ $.ajax({
54
+ url: wpuf_ajax.ajaxurl,
55
+ type: 'POST',
56
+ dataType: 'json',
57
+ data: {
58
+ 'action': 'wpuf_lost_password',
59
+ 'user_login': $('#wpuf-user_login').val(),
60
+ }
61
+ })
62
+ .done( function( response, textStatus, jqXHR ) {
63
+ $('.wpuf-ajax-reset-password-form .wpuf-ajax-errors').append(response.data.message);
64
+ } )
65
+ .fail( function( jqXHR, textStatus, errorThrown ) {
66
+ console.log( 'AJAX failed', errorThrown );
67
+ } );
68
+ });
69
+
70
+ // Logout
71
+ login_widget.on('click', '#logout-url', function(e) {
72
+ e.preventDefault();
73
+
74
+ $.ajax({
75
+ url: wpuf_ajax.ajaxurl,
76
+ type: 'POST',
77
+ dataType: 'json',
78
+ data: {
79
+ action: 'wpuf_ajax_logout',
80
+ },
81
+ success: function(data) {
82
+ $('.wpuf-ajax-logout .wpuf-ajax-errors').html(data.message);
83
+ window.location.reload(true);
84
+ }
85
+ });
86
+ });
87
+
88
+ });
assets/less/admin.less CHANGED
@@ -272,7 +272,7 @@ span {
272
  color: #e67e22;
273
  }
274
 
275
- &#wpuf_guest_mails-tab .dashicons {
276
  color: #115da7;
277
  }
278
 
272
  color: #e67e22;
273
  }
274
 
275
+ &#wpuf_mails-tab .dashicons {
276
  color: #115da7;
277
  }
278
 
class/frontend-form-post.php CHANGED
@@ -141,15 +141,9 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
141
  }
142
  }
143
 
144
- // var_dump( $user_can_post );
145
- // var_dump( $info );
146
-
147
  $info = apply_filters( 'wpuf_addpost_notice', $info, $id, $form_settings );
148
  $user_can_post = apply_filters( 'wpuf_can_post', $user_can_post, $id, $form_settings );
149
 
150
- // var_dump( $user_can_post );
151
- // var_dump( $info );
152
-
153
  if ( $user_can_post == 'yes' ) {
154
  $this->render_form( $id );
155
  } else {
@@ -260,21 +254,62 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
260
  // don't check captcha on post edit
261
  if ( !isset( $_POST['post_id'] ) ) {
262
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
263
  // search if rs captcha is there
264
  if ( $this->search( $post_vars, 'input_type', 'really_simple_captcha' ) ) {
265
  $this->validate_rs_captcha();
266
  }
 
 
 
 
267
 
268
  // check recaptcha
269
- if ( $this->search( $post_vars, 'input_type', 'recaptcha' ) ) {
270
 
271
- $no_captcha = '';
272
- if ( isset( $_POST["g-recaptcha-response"] ) ) {
273
- $no_captcha = 1;
274
- } else {
275
- $no_captcha = 0;
 
 
 
 
 
 
 
 
 
 
276
  }
277
- $this->validate_re_captcha( $no_captcha );
278
  }
279
  }
280
 
@@ -339,9 +374,19 @@ class WPUF_Frontend_Form_Post extends WPUF_Render_Form {
339
  // guest post is enabled and details are off
340
  } elseif ( isset( $form_settings['guest_post'] ) && $form_settings['guest_post'] == 'true' && $form_settings['guest_details'] == 'false' ) {
341
  $post_author = $default_post_author;
 
 
342
  }
343
 
344
  // the user must be logged in already
 
 
 
 
 
 
 
 
345
  } else {
346
  $post_author = get_current_user_id();
347
  }
141
  }
142
  }
143
 
 
 
 
144
  $info = apply_filters( 'wpuf_addpost_notice', $info, $id, $form_settings );
145
  $user_can_post = apply_filters( 'wpuf_can_post', $user_can_post, $id, $form_settings );
146
 
 
 
 
147
  if ( $user_can_post == 'yes' ) {
148
  $this->render_form( $id );
149
  } else {
254
  // don't check captcha on post edit
255
  if ( !isset( $_POST['post_id'] ) ) {
256
 
257
+ $has_limit = ( isset( $form_settings['limit_entries'] ) && $form_settings['limit_entries'] == 'true' ) ? true : false;
258
+ $is_scheduled = ( isset( $form_settings['schedule_form'] ) && $form_settings['schedule_form'] == 'true' ) ? true : false;
259
+
260
+ if ( $has_limit ) {
261
+
262
+ $limit = (int) isset( $form_settings['role_base'] ) && !empty( $form_settings['limit_number'] ) ? $form_settings['limit_number'] : 0;
263
+ $form_entries = wpuf_form_posts_count( $form_id );
264
+
265
+ if ( $limit && $limit <= $form_entries ) {
266
+ $this->send_error( $form_settings['limit_message'] );
267
+ }
268
+ }
269
+
270
+ if ( $is_scheduled ) {
271
+
272
+ $start_time = !empty( $form_settings['schedule_start'] ) ? strtotime( $form_settings['schedule_start'] ) : 0;
273
+ $end_time = !empty( $form_settings['schedule_end'] ) ? strtotime( $form_settings['schedule_end'] ) : 0;
274
+ $current_time = current_time( 'timestamp' );
275
+
276
+ // too early?
277
+ if ( $current_time < $start_time ) {
278
+ $this->send_error( $form_settings['form_pending_message'] );
279
+ } elseif ( $current_time > $end_time ) {
280
+ $this->send_error( $form_settings['form_expired_message'] );
281
+ }
282
+ }
283
+
284
  // search if rs captcha is there
285
  if ( $this->search( $post_vars, 'input_type', 'really_simple_captcha' ) ) {
286
  $this->validate_rs_captcha();
287
  }
288
+ $no_captcha = $invisible_captcha = '';
289
+
290
+ $check_recaptcha = $this->search( $post_vars, 'input_type', 'recaptcha' );
291
+ $recaptcha_type = $check_recaptcha[0]['recaptcha_type'];
292
 
293
  // check recaptcha
294
+ if ( $check_recaptcha ) {
295
 
296
+ if ( isset ( $_POST["g-recaptcha-response"] ) ) {
297
+ if ( empty( $_POST['g-recaptcha-response'] ) && $check_recaptcha[0]['recaptcha_type'] !== 'invisible_recaptcha') {
298
+ $this->send_error( __( 'Empty reCaptcha Field', 'wpuf' ) );
299
+ }
300
+
301
+ if ( $recaptcha_type == 'enable_no_captcha' ) {
302
+ $no_captcha = 1;
303
+ $invisible_captcha = 0;
304
+ } elseif ( $recaptcha_type == 'invisible_recaptcha' ) {
305
+ $invisible_captcha = 1;
306
+ $no_captcha = 0;
307
+ } else {
308
+ $invisible_captcha = 0;
309
+ $no_captcha = 0;
310
+ }
311
  }
312
+ $this->validate_re_captcha( $no_captcha, $invisible_captcha );
313
  }
314
  }
315
 
374
  // guest post is enabled and details are off
375
  } elseif ( isset( $form_settings['guest_post'] ) && $form_settings['guest_post'] == 'true' && $form_settings['guest_details'] == 'false' ) {
376
  $post_author = $default_post_author;
377
+ } elseif ( isset( $form_settings['guest_post'] ) && $form_settings['guest_post'] != 'true' ) {
378
+ $this->send_error( $form_settings['message_restrict'] );
379
  }
380
 
381
  // the user must be logged in already
382
+ } elseif ( isset( $form_settings['role_base'] ) && $form_settings['role_base'] == 'true' ) {
383
+
384
+ $current_user = wp_get_current_user();
385
+
386
+ if ( !in_array( $current_user->roles[0], $form_settings['roles'] ) ) {
387
+ $this->send_error( __( 'You do not have sufficient permissions to access this form.', 'wpuf' ) );
388
+ }
389
+
390
  } else {
391
  $post_author = get_current_user_id();
392
  }
class/render-form.php CHANGED
@@ -89,8 +89,9 @@ class WPUF_Render_Form {
89
  function validate_re_captcha( $no_captcha = '', $invisible = '' ) {
90
  // need to check if invisible reCaptcha need library or we can do it here.
91
  // ref: https://shareurcodes.com/blog/google%20invisible%20recaptcha%20integration%20with%20php
 
92
  $private_key = wpuf_get_option( 'recaptcha_private', 'wpuf_general' );
93
- if ( $no_captcha == 1 && '' != $invisible ) {
94
 
95
  $response = null;
96
  $reCaptcha = new ReCaptcha($private_key);
@@ -101,10 +102,10 @@ class WPUF_Render_Form {
101
  );
102
 
103
  if ( !$resp->success ) {
104
- $this->send_error( __( 'reCAPTCHA validation failed', 'wpuf' ) );
105
  }
106
 
107
- } elseif ( $no_captcha == 0 && '' != $invisible ) {
108
 
109
  $recap_challenge = isset( $_POST['recaptcha_challenge_field'] ) ? $_POST['recaptcha_challenge_field'] : '';
110
  $recap_response = isset( $_POST['recaptcha_response_field'] ) ? $_POST['recaptcha_response_field'] : '';
@@ -114,6 +115,18 @@ class WPUF_Render_Form {
114
  if ( !$resp->is_valid ) {
115
  $this->send_error( __( 'reCAPTCHA validation failed', 'wpuf' ) );
116
  }
 
 
 
 
 
 
 
 
 
 
 
 
117
  }
118
 
119
  }
@@ -679,9 +692,9 @@ class WPUF_Render_Form {
679
  <input type="hidden" name="post_date" value="<?php echo esc_attr( $cur_post->post_date ); ?>">
680
  <input type="hidden" name="comment_status" value="<?php echo esc_attr( $cur_post->comment_status ); ?>">
681
  <input type="hidden" name="post_author" value="<?php echo esc_attr( $cur_post->post_author ); ?>">
682
- <input type="submit" name="submit" value="<?php echo $form_settings['update_text']; ?>" />
683
  <?php } else { ?>
684
- <input type="submit" name="submit" value="<?php echo $form_settings['submit_text']; ?>" />
685
  <input type="hidden" name="wpuf_form_status" value="new">
686
  <?php } ?>
687
 
@@ -1644,8 +1657,33 @@ class WPUF_Render_Form {
1644
  }
1645
 
1646
  if ( $enable_invisible_recaptcha ) { ?>
1647
- <script src="https://www.google.com/recaptcha/api.js" async defer></script>
1648
- <div id='recaptcha' class="g-recaptcha" data-sitekey=<?php echo wpuf_get_option( 'recaptcha_public', 'wpuf_general' ); ?> data-callback="onSubmit" data-size="invisible"></div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1649
  <?php } else { ?>
1650
  <div class="wpuf-fields <?php echo ' wpuf_'.$attr['name'].'_'.$form_id; ?>">
1651
  <?php echo recaptcha_get_html( wpuf_get_option( 'recaptcha_public', 'wpuf_general' ), $enable_no_captcha, null, is_ssl() ); ?>
89
  function validate_re_captcha( $no_captcha = '', $invisible = '' ) {
90
  // need to check if invisible reCaptcha need library or we can do it here.
91
  // ref: https://shareurcodes.com/blog/google%20invisible%20recaptcha%20integration%20with%20php
92
+ $site_key = wpuf_get_option( 'recaptcha_public', 'wpuf_general' );
93
  $private_key = wpuf_get_option( 'recaptcha_private', 'wpuf_general' );
94
+ if ( $no_captcha == 1 && 0 == $invisible ) {
95
 
96
  $response = null;
97
  $reCaptcha = new ReCaptcha($private_key);
102
  );
103
 
104
  if ( !$resp->success ) {
105
+ $this->send_error( __( 'noCaptcha reCAPTCHA validation failed', 'wpuf' ) );
106
  }
107
 
108
+ } elseif ( $no_captcha == 0 && 0 == $invisible ) {
109
 
110
  $recap_challenge = isset( $_POST['recaptcha_challenge_field'] ) ? $_POST['recaptcha_challenge_field'] : '';
111
  $recap_response = isset( $_POST['recaptcha_response_field'] ) ? $_POST['recaptcha_response_field'] : '';
115
  if ( !$resp->is_valid ) {
116
  $this->send_error( __( 'reCAPTCHA validation failed', 'wpuf' ) );
117
  }
118
+
119
+ } elseif ( $no_captcha == 0 && 1 == $invisible ) {
120
+
121
+ $response = null;
122
+ $recaptcha = $_POST['g-recaptcha-response'];
123
+ $object = new Invisible_Recaptcha( $site_key , $private_key );
124
+
125
+ $response = $object->verifyResponse( $recaptcha );
126
+
127
+ if ( isset( $response['success'] ) and $response['success'] != true) {
128
+ $this->send_error( __( 'Invisible reCAPTCHA validation failed', 'wpuf' ) );
129
+ }
130
  }
131
 
132
  }
692
  <input type="hidden" name="post_date" value="<?php echo esc_attr( $cur_post->post_date ); ?>">
693
  <input type="hidden" name="comment_status" value="<?php echo esc_attr( $cur_post->comment_status ); ?>">
694
  <input type="hidden" name="post_author" value="<?php echo esc_attr( $cur_post->post_author ); ?>">
695
+ <input type="submit" class="wpuf-submit-button" name="submit" value="<?php echo $form_settings['update_text']; ?>" />
696
  <?php } else { ?>
697
+ <input type="submit" class="wpuf-submit-button" name="submit" value="<?php echo $form_settings['submit_text']; ?>" />
698
  <input type="hidden" name="wpuf_form_status" value="new">
699
  <?php } ?>
700
 
1657
  }
1658
 
1659
  if ( $enable_invisible_recaptcha ) { ?>
1660
+ <script src="https://www.google.com/recaptcha/api.js?onload=wpufreCaptchaLoaded&render=explicit&hl=en" async defer></script>
1661
+ <script>
1662
+ jQuery(document).ready(function($) {
1663
+ jQuery('[name="submit"]').removeClass('wpuf-submit-button').addClass('g-recaptcha').attr('data-sitekey', '<?php echo wpuf_get_option( 'recaptcha_public', 'wpuf_general' ); ?>');
1664
+
1665
+ $(document).on('click','.g-recaptcha', function(e){
1666
+ e.preventDefault();
1667
+ e.stopPropagation();
1668
+ grecaptcha.execute();
1669
+ })
1670
+ });
1671
+
1672
+ var wpufreCaptchaLoaded = function() {
1673
+ grecaptcha.render('recaptcha', {
1674
+ 'size' : 'invisible',
1675
+ 'callback' : wpufRecaptchaCallback
1676
+ });
1677
+ grecaptcha.execute();
1678
+ };
1679
+
1680
+ function wpufRecaptchaCallback(token) {
1681
+ jQuery('[name="g-recaptcha-response"]').val(token);
1682
+ jQuery('[name="submit"]').removeClass('g-recaptcha').addClass('wpuf-submit-button');
1683
+ }
1684
+ </script>
1685
+ <!-- <input type="submit" class="g-recaptcha" data-sitekey=<?php echo wpuf_get_option( 'recaptcha_public', 'wpuf_general' ); ?> data-callback="onSubmit"> -->
1686
+ <div type="submit" id='recaptcha' class="g-recaptcha" data-sitekey=<?php echo wpuf_get_option( 'recaptcha_public', 'wpuf_general' ); ?> data-callback="onSubmit" data-size="invisible"></div>
1687
  <?php } else { ?>
1688
  <div class="wpuf-fields <?php echo ' wpuf_'.$attr['name'].'_'.$form_id; ?>">
1689
  <?php echo recaptcha_get_html( wpuf_get_option( 'recaptcha_public', 'wpuf_general' ), $enable_no_captcha, null, is_ssl() ); ?>
class/subscription.php CHANGED
@@ -568,8 +568,9 @@ class WPUF_Subscription {
568
  $current_pack = $current_user->subscription()->current_pack();
569
  $has_pack = $current_user->subscription()->has_post_count( $form_settings['post_type'] );
570
  $ppp_cost_enabled = $form->is_enabled_pay_per_post();
 
571
 
572
- if ( $payment_options && !$has_pack ) {
573
  $order_id = get_post_meta( $post_id, '_wpuf_order_id', true );
574
 
575
  // check if there is a order ID
@@ -580,9 +581,9 @@ class WPUF_Subscription {
580
  'type' => 'post',
581
  'post_id' => $post_id
582
  ), get_permalink( wpuf_get_option( 'payment_page', 'wpuf_payment' ) ) );
583
- }
584
  if ( !$forcePack && $ppp_cost_enabled ) {
585
- $response['show_message'] = false;
586
  $response['redirect_to'] = add_query_arg( array(
587
  'action' => 'wpuf_pay',
588
  'type' => 'post',
568
  $current_pack = $current_user->subscription()->current_pack();
569
  $has_pack = $current_user->subscription()->has_post_count( $form_settings['post_type'] );
570
  $ppp_cost_enabled = $form->is_enabled_pay_per_post();
571
+ $sub_expired = $current_user->subscription()->expired();
572
 
573
+ if ( ( $payment_options && !$has_pack ) || ( $payment_options && $sub_expired ) ) {
574
  $order_id = get_post_meta( $post_id, '_wpuf_order_id', true );
575
 
576
  // check if there is a order ID
581
  'type' => 'post',
582
  'post_id' => $post_id
583
  ), get_permalink( wpuf_get_option( 'payment_page', 'wpuf_payment' ) ) );
584
+ }
585
  if ( !$forcePack && $ppp_cost_enabled ) {
586
+ $response['show_message'] = false;
587
  $response['redirect_to'] = add_query_arg( array(
588
  'action' => 'wpuf_pay',
589
  'type' => 'post',
includes/class-list-table-subscribers.php CHANGED
@@ -82,22 +82,6 @@ class WPUF_List_Table_Subscribers extends \WP_List_Table {
82
  }
83
  }
84
 
85
- // /**
86
- // * Render the designation name column
87
- // *
88
- // * @param object $item
89
- // *
90
- // * @return string
91
- // */
92
- // function column_id( $item ) {
93
- // // echo '<pre>';var_dump($item); echo "</pre>";
94
- // $actions = array();
95
- // $actions['edit'] = sprintf( '<a href="%s" data-id="%d" title="%s">%s</a>', admin_url( 'admin.php?page=pageslug&action=edit&id=' . $_REQUEST['post_ID'] ), $_REQUEST['post_ID'], __( 'Edit this item', 'wpuf' ), __( 'Edit', 'wpuf' ) );
96
- // $actions['delete'] = sprintf( '<a href="%s" class="submitdelete" data-id="%d" title="%s">%s</a>', admin_url( 'admin.php?page=pageslug&action=delete&id=' . $_REQUEST['post_ID'] ), $_REQUEST['post_ID'], __( 'Delete this item', 'wpuf' ), __( 'Delete', 'wpuf' ) );
97
-
98
- // return sprintf( '<a href="%1$s"><strong>%2$s</strong></a> %3$s', admin_url( 'admin.php?page=pageslug&action=view&id=' . $_REQUEST['post_ID'] ), $_REQUEST['post_ID'], $this->row_actions( $actions ) );
99
- // }
100
-
101
  /**
102
  * Get sortable columns
103
  *
@@ -111,18 +95,6 @@ class WPUF_List_Table_Subscribers extends \WP_List_Table {
111
  return $sortable_columns;
112
  }
113
 
114
- // /**
115
- // * Set the bulk actions
116
- // *
117
- // * @return array
118
- // */
119
- // function get_bulk_actions() {
120
- // $actions = array(
121
- // 'trash' => __( 'Move to Trash', 'wpuf' ),
122
- // );
123
- // return $actions;
124
- // }
125
-
126
  /**
127
  * Render the checkbox column
128
  *
@@ -198,4 +170,4 @@ class WPUF_List_Table_Subscribers extends \WP_List_Table {
198
  'per_page' => $per_page
199
  ) );
200
  }
201
- }
82
  }
83
  }
84
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
85
  /**
86
  * Get sortable columns
87
  *
95
  return $sortable_columns;
96
  }
97
 
 
 
 
 
 
 
 
 
 
 
 
 
98
  /**
99
  * Render the checkbox column
100
  *
170
  'per_page' => $per_page
171
  ) );
172
  }
173
+ }
includes/class-login-widget.php ADDED
@@ -0,0 +1,355 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Ajax Login and Forgot password handler class
5
+ *
6
+ * @since 2.8
7
+ */
8
+
9
+ class WPUF_Login_Widget extends WP_Widget {
10
+
11
+ function __construct() {
12
+
13
+ parent::__construct(
14
+ 'WPUF_Login_Widget',
15
+ __('WPUF Ajax Login', 'wpuf'),
16
+ array( 'description' => __( 'Ajax Login widget for WP User Frontend', 'wpuf' ), )
17
+ );
18
+
19
+ add_action( 'wp_ajax_nopriv_wpuf_ajax_login', array( $this, 'ajax_login' ) );
20
+ add_action( 'wp_ajax_nopriv_wpuf_lost_password', array( $this, 'ajax_reset_pass' ) );
21
+ add_action( 'wp_ajax_wpuf_ajax_logout', array( $this, 'ajax_logout' ) );
22
+ }
23
+
24
+ /**
25
+ * Ajax Login function
26
+ *
27
+ * @return void
28
+ */
29
+ public function ajax_login() {
30
+
31
+ $user_login = $_POST['log'];
32
+ $user_pass = $_POST['pwd'];
33
+ $rememberme = $_POST['rememberme'];
34
+
35
+ if ( empty( $user_login ) || empty( $user_pass ) ) {
36
+ wp_send_json_error( array( 'message'=> __( 'Please fill all form fields', 'wpuf') ) );
37
+ } else {
38
+ $user = wp_signon( array('user_login' => $user_login, 'user_password' => $user_pass), false );
39
+
40
+ if ( is_wp_error($user) ) {
41
+ wp_send_json_error( array( 'message'=> $user->get_error_message() ) );
42
+ } else {
43
+ wp_send_json_success( array( 'message'=> __( 'Login successful!', 'wpuf' ) ) );
44
+ }
45
+ }
46
+ wp_set_auth_cookie( $user->ID, $rememberme, $secure_cookie );
47
+ }
48
+
49
+ /**
50
+ * Ajax Logout function
51
+ *
52
+ * @return void
53
+ */
54
+ public function ajax_logout() {
55
+
56
+ wp_logout();
57
+ wp_send_json_success( array( 'message'=> __( 'Logout successful!', 'wpuf' ) ) );
58
+ }
59
+
60
+ /**
61
+ * Ajax password reset function
62
+ *
63
+ * @return void
64
+ */
65
+ function ajax_reset_pass() {
66
+
67
+ $username_or_email = $_POST['user_login'];
68
+
69
+ // Check if input variables are empty
70
+ if ( empty( $username_or_email ) ) {
71
+ wp_send_json_error( array( 'error' => true, 'message'=> __( 'Please fill all form fields', 'wpuf' ) ) );
72
+ } else {
73
+ $username = is_email( $username_or_email ) ? sanitize_email( $username_or_email ) : sanitize_user( $username_or_email );
74
+
75
+ $user_forgotten = $this->ajax_lostpassword_retrieve( $username );
76
+
77
+ if ( is_wp_error( $user_forgotten ) ) {
78
+ $lostpass_error_messages = $user_forgotten->errors;
79
+
80
+ $display_errors = '';
81
+ foreach ( $lostpass_error_messages as $error ) {
82
+ $display_errors .= '<p>'.$error[0].'</p>';
83
+ }
84
+
85
+ wp_send_json_error( array( 'message' => $display_errors ) );
86
+ } else {
87
+ wp_send_json_success( array( 'message' => __( 'Password has been reset. Please check your email.', 'wpuf' ) ) );
88
+ }
89
+ }
90
+ }
91
+
92
+ /**
93
+ * Password retrieve function
94
+ *
95
+ * @return mixed
96
+ */
97
+ private function ajax_lostpassword_retrieve( $user_input ) {
98
+ global $wpdb, $wp_hasher;
99
+
100
+ $errors = new WP_Error();
101
+
102
+ if ( empty( $user_input ) ) {
103
+ $errors->add('empty_username', __('<strong>ERROR</strong>: Enter a username or email address.', 'wpuf'));
104
+ } elseif ( strpos( $user_input, '@' ) ) {
105
+ $user_data = get_user_by( 'email', trim( $user_input ) );
106
+ if ( empty( $user_data ) )
107
+ $errors->add('invalid_email', __('<strong>ERROR</strong>: There is no user registered with that email address.', 'wpuf'));
108
+ } else {
109
+ $login = trim($user_input);
110
+ $user_data = get_user_by('login', $login);
111
+ }
112
+
113
+ /**
114
+ * Fires before errors are returned from a password reset request.
115
+ */
116
+ do_action( 'lostpassword_post', $errors );
117
+
118
+ if ( $errors->get_error_code() )
119
+ return $errors;
120
+
121
+ if ( !$user_data ) {
122
+ $errors->add( 'invalidcombo', __( '<strong>ERROR</strong>: Invalid username or email.', 'wpuf' ) );
123
+ return $errors;
124
+ }
125
+
126
+ // Redefining user_login ensures we return the right case in the email.
127
+ $user_login = $user_data->user_login;
128
+ $user_email = $user_data->user_email;
129
+ $key = get_password_reset_key( $user_data );
130
+
131
+ if ( is_wp_error( $key ) ) {
132
+ return $key;
133
+ }
134
+
135
+ $message = __('Someone has requested a password reset for the following account:', 'wpuf') . "\r\n\r\n";
136
+ $message .= network_home_url( '/' ) . "\r\n\r\n";
137
+ $message .= sprintf(__('Username: %s', 'wpuf'), $user_login) . "\r\n\r\n";
138
+ $message .= __('If this was a mistake, just ignore this email and nothing will happen.', 'wpuf') . "\r\n\r\n";
139
+ $message .= __('To reset your password, visit the following address:', 'wpuf') . "\r\n\r\n";
140
+ $message .= '<' . network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user_login), 'login') . ">\r\n";
141
+
142
+ $blogname = wp_specialchars_decode(get_option('blogname'), ENT_QUOTES);
143
+
144
+ $title = sprintf( __('[%s] Password Reset', 'wpuf'), $blogname );
145
+
146
+ $title = apply_filters( 'retrieve_password_title', $title, $user_login, $user_data );
147
+
148
+ $message = apply_filters( 'retrieve_password_message', $message, $key, $user_login, $user_data );
149
+
150
+ if ( $message && !wp_mail( $user_email, wp_specialchars_decode( $title ), $message ) )
151
+ $errors->add('mailfailed', __('<strong>ERROR</strong>: The email could not be sent.Possible reason: your host may have disabled the mail() function.', 'wpuf'));
152
+
153
+ return true;
154
+ }
155
+
156
+ /**
157
+ * Display Ajax Login widget
158
+ *
159
+ * @return void
160
+ */
161
+ public function widget( $args, $instance ) {
162
+
163
+ wp_enqueue_script( 'wpuf_ajax_login' );
164
+
165
+ $title = apply_filters( 'widget_title', $instance['title'] );
166
+ $log_in_header = apply_filters( 'widget_text_content', $instance['log_in_header'] );
167
+ $pwd_reset_header = apply_filters( 'widget_text_content', $instance['pwd_reset_header'] );
168
+ $uname_label = apply_filters( 'widget_text', $instance['uname_label'] );
169
+ $pwd_label = apply_filters( 'widget_text', $instance['pwd_label'] );
170
+ $remember_label = apply_filters( 'widget_text', $instance['remember_label'] );
171
+ $log_in_label = apply_filters( 'widget_text', $instance['log_in_label'] );
172
+ $pass_reset_label = apply_filters( 'widget_text', $instance['pass_reset_label'] );
173
+
174
+ echo $args['before_widget'];
175
+
176
+ if ( ! empty( $title ) ) {
177
+ echo $args['before_title'] . $title . $args['after_title'];
178
+ }
179
+
180
+ if ( is_user_logged_in() ) {
181
+ $user_id = get_current_user_id();
182
+ echo get_avatar( $user_id, 24 );
183
+ }
184
+
185
+ $login_args = array(
186
+ 'form_id' => 'wpuf_ajax_login_form',
187
+ 'label_username' => $uname_label,
188
+ 'label_password' => $pwd_label,
189
+ 'label_remember' => $remember_label,
190
+ 'label_log_in' => $log_in_label
191
+ );
192
+ ?>
193
+ <div class="login-widget-container">
194
+ <?php
195
+ if( ! is_user_logged_in() ) { ?>
196
+
197
+ <!-- Login form -->
198
+ <div class="wpuf-ajax-login-form">
199
+ <div class="wpuf-ajax-errors"></div>
200
+
201
+ <p><?php echo $log_in_header; ?></p>
202
+
203
+ <?php
204
+ wp_login_form( $login_args );
205
+ if ( get_option( 'users_can_register' ) ) {
206
+ $registration_url = sprintf( '<a href="%s">%s</a>', esc_url( wp_registration_url() ), __( 'Register', 'wpuf' ) );
207
+ echo $registration_url;
208
+ echo apply_filters( 'login_link_separator', ' | ' );
209
+ }?>
210
+ <a href="#wpuf-ajax-lost-pw-url" id="wpuf-ajax-lost-pw-url"><?php _e( 'Lost your password?', 'wpuf' ); ?></a>
211
+ </div>
212
+
213
+ <!-- Lost Password form -->
214
+ <div class="wpuf-ajax-reset-password-form">
215
+ <form id="wpuf_ajax_reset_pass_form" action="<?php echo home_url( '/' ); ?>" method="POST">
216
+ <div class="wpuf-ajax-errors"></div>
217
+ <p> <?php echo $pwd_reset_header; ?> </p>
218
+ <p>
219
+ <label for="wpuf-user_login"><?php _e( 'Username or E-mail:', 'wpuf' ); ?></label>
220
+ <input type="text" name="user_login" id="wpuf-user_login" class="input" value="" size="20" />
221
+ </p>
222
+
223
+ <?php do_action( 'lostpassword_form' ); ?>
224
+
225
+ <p class="submit">
226
+ <input type="submit" name="wp-submit" id="wp-submit" value="<?php echo $pass_reset_label; ?>" />
227
+ <input type="hidden" name="redirect_to" value="<?php echo WPUF_Simple_Login::get_posted_value( 'redirect_to' ); ?>" />
228
+ <input type="hidden" name="wpuf_reset_password" value="true" />
229
+ <input type="hidden" name="action" value="lost_password" />
230
+
231
+ <?php wp_nonce_field( 'wpuf_lost_pass' ); ?>
232
+ </p>
233
+ </form>
234
+ <div id="ajax-lp-section">
235
+ <a href="#wpuf-ajax-login-url" id="wpuf-ajax-login-url"> <?php _e( 'Login', 'wpuf' ); ?> </a>
236
+ <?php
237
+ if ( get_option( 'users_can_register' ) ) {
238
+ echo apply_filters( 'login_link_separator', ' | ' );
239
+ $registration_url = sprintf( '<a href="%s">%s</a>', esc_url( wp_registration_url() ), __( 'Register', 'wpuf' ) );
240
+ echo $registration_url;
241
+ }
242
+ ?>
243
+ </div>
244
+ </div>
245
+ <?php } else { ?>
246
+ <div class="wpuf-ajax-logout">
247
+ <a id="logout-url" href="#logout"><?php echo __('Log out', 'wpuf') ?></a>
248
+ </div>
249
+ <?php } ?>
250
+ </div>
251
+
252
+ <?php
253
+ echo $args['after_widget'];
254
+ }
255
+
256
+ /**
257
+ * Ajax Login widget backend
258
+ *
259
+ * @return void
260
+ */
261
+ public function form( $instance ) {
262
+
263
+ $title = isset( $instance[ 'title' ] ) ? $instance[ 'title' ] : __( 'WPUF Login Widget', 'wpuf' );
264
+ $log_in_header = isset( $instance[ 'log_in_header' ] ) ? $instance[ 'log_in_header' ] : __( 'Username or Email Address', 'wpuf' );
265
+ $pwd_reset_header = isset( $instance[ 'pwd_reset_header' ] ) ? $instance[ 'pwd_reset_header' ] : __( 'Please enter your username or email address. You will receive a link to create a new password via email', 'wpuf' );
266
+ $uname_label = isset( $instance[ 'uname_label' ] ) ? $instance[ 'uname_label' ] : __( 'Username', 'wpuf' );
267
+ $pwd_label = isset( $instance[ 'pwd_label' ] ) ? $instance[ 'pwd_label' ] : __( 'Password', 'wpuf' );
268
+ $remember_label = isset( $instance[ 'remember_label' ] ) ? $instance[ 'remember_label' ] : __( 'Remember Me', 'wpuf' );
269
+ $log_in_label = isset( $instance[ 'log_in_label' ] ) ? $instance[ 'log_in_label' ] : __( 'Log In', 'wpuf' );
270
+ $pass_reset_label = isset( $instance[ 'pass_reset_label' ] ) ? $instance[ 'pass_reset_label' ] : __( 'Reset Password', 'wpuf' );
271
+ ?>
272
+
273
+ <p>
274
+ <label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:', 'wpuf' ); ?></label>
275
+ <input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php echo esc_attr( $title ); ?>" />
276
+ </p>
277
+ <p>
278
+ <label for="<?php echo $this->get_field_id( 'log_in_header' ); ?>"><?php _e( 'Log-in Text:', 'wpuf' ); ?></label>
279
+ <input class="widefat" id="<?php echo $this->get_field_id( 'log_in_header' ); ?>" name="<?php echo $this->get_field_name( 'log_in_header' ); ?>" type="textarea" value="<?php echo esc_attr( $log_in_header ); ?>" />
280
+ </p>
281
+ <p>
282
+ <label for="<?php echo $this->get_field_id( 'uname_label' ); ?>"><?php _e( 'Username Label:', 'wpuf' ); ?></label>
283
+ <input class="widefat" id="<?php echo $this->get_field_id( 'uname_label' ); ?>" name="<?php echo $this->get_field_name( 'uname_label' ); ?>" type="text" value="<?php echo esc_attr( $uname_label ); ?>" />
284
+ </p>
285
+ <p>
286
+ <label for="<?php echo $this->get_field_id( 'pwd_label' ); ?>"><?php _e( 'Password Label:', 'wpuf' ); ?></label>
287
+ <input class="widefat" id="<?php echo $this->get_field_id( 'pwd_label' ); ?>" name="<?php echo $this->get_field_name( 'pwd_label' ); ?>" type="text" value="<?php echo esc_attr( $pwd_label ); ?>" />
288
+ </p>
289
+ <p>
290
+ <label for="<?php echo $this->get_field_id( 'remember_label' ); ?>"><?php _e( 'Remember Me Label:', 'wpuf' ); ?></label>
291
+ <input class="widefat" id="<?php echo $this->get_field_id( 'remember_label' ); ?>" name="<?php echo $this->get_field_name( 'remember_label' ); ?>" type="text" value="<?php echo esc_attr( $remember_label ); ?>" />
292
+ </p>
293
+ <label for="<?php echo $this->get_field_id( 'log_in_label' ); ?>"><?php _e( 'Log In Label:', 'wpuf' ); ?></label>
294
+ <input class="widefat" id="<?php echo $this->get_field_id( 'log_in_label' ); ?>" name="<?php echo $this->get_field_name( 'log_in_label' ); ?>" type="text" value="<?php echo esc_attr( $log_in_label ); ?>" />
295
+ </p>
296
+ <p>
297
+ <label for="<?php echo $this->get_field_id( 'pwd_reset_header' ); ?>"><?php _e( 'Password Reset Text:', 'wpuf' ); ?></label>
298
+ <input class="widefat" id="<?php echo $this->get_field_id( 'pwd_reset_header' ); ?>" name="<?php echo $this->get_field_name( 'pwd_reset_header' ); ?>" type="textarea" value="<?php echo esc_attr( $pwd_reset_header ); ?>" />
299
+ </p>
300
+ <p>
301
+ <label for="<?php echo $this->get_field_id( 'pass_reset_label' ); ?>"><?php _e( 'Password Reset Label:', 'wpuf' ); ?></label>
302
+ <input class="widefat" id="<?php echo $this->get_field_id( 'pass_reset_label' ); ?>" name="<?php echo $this->get_field_name( 'pass_reset_label' ); ?>" type="text" value="<?php echo esc_attr( $pass_reset_label ); ?>" />
303
+ </p>
304
+ <?php
305
+ }
306
+
307
+ /**
308
+ * Updating widget replacing old instances with new
309
+ *
310
+ * @return $instance
311
+ */
312
+ public function update( $new_instance, $old_instance ) {
313
+
314
+ $instance = array();
315
+ $instance['title'] = ( ! empty( $new_instance['title'] ) ) ? strip_tags( $new_instance['title'] ) : '';
316
+ $instance['log_in_header'] = ( ! empty( $new_instance['log_in_header'] ) ) ? strip_tags( $new_instance['log_in_header'] ) : '';
317
+ $instance['pwd_reset_header'] = ( ! empty( $new_instance['pwd_reset_header'] ) ) ? strip_tags( $new_instance['pwd_reset_header'] ) : '';
318
+ $instance['uname_label'] = ( ! empty( $new_instance['uname_label'] ) ) ? strip_tags( $new_instance['uname_label'] ) : '';
319
+ $instance['pwd_label'] = ( ! empty( $new_instance['pwd_label'] ) ) ? strip_tags( $new_instance['pwd_label'] ) : '';
320
+ $instance['remember_label'] = ( ! empty( $new_instance['remember_label'] ) ) ? strip_tags( $new_instance['remember_label'] ) : '';
321
+ $instance['log_in_label'] = ( ! empty( $new_instance['log_in_label'] ) ) ? strip_tags( $new_instance['log_in_label'] ) : '';
322
+ $instance['pass_reset_label'] = ( ! empty( $new_instance['pass_reset_label'] ) ) ? strip_tags( $new_instance['pass_reset_label'] ) : '';
323
+
324
+ return $instance;
325
+ }
326
+
327
+ }
328
+
329
+
330
+ /**
331
+ * Register WPUF_Login_Widget widget
332
+ *
333
+ * @return void
334
+ */
335
+ function wpuf_register_ajax_login_widget() {
336
+
337
+ register_widget( 'WPUF_Login_Widget' );
338
+ }
339
+ add_action( 'widgets_init', 'wpuf_register_ajax_login_widget' );
340
+
341
+
342
+ /**
343
+ * Registers widget scripts
344
+ *
345
+ * @return void
346
+ */
347
+ function wpuf_register_login_scripts() {
348
+
349
+ wp_register_script( 'wpuf_ajax_login', WPUF_ASSET_URI . '/js/wpuf-login-widget.js', array( 'jquery' ), false, true );
350
+
351
+ wp_localize_script( 'wpuf_ajax_login', 'wpuf_ajax', array(
352
+ 'ajaxurl' => admin_url( 'admin-ajax.php' ),
353
+ ));
354
+ }
355
+ add_action( 'wp_enqueue_scripts', 'wpuf_register_login_scripts' );
includes/class-upgrades.php CHANGED
@@ -15,7 +15,8 @@ class WPUF_Upgrades {
15
  private static $upgrades = array(
16
  '2.1.9' => 'upgrades/upgrade-2.1.9.php',
17
  '2.6.0' => 'upgrades/upgrade-2.6.0.php',
18
- '2.7.0' => 'upgrades/upgrade-2.7.0.php'
 
19
  );
20
 
21
  /**
15
  private static $upgrades = array(
16
  '2.1.9' => 'upgrades/upgrade-2.1.9.php',
17
  '2.6.0' => 'upgrades/upgrade-2.6.0.php',
18
+ '2.7.0' => 'upgrades/upgrade-2.7.0.php',
19
+ '2.8.0' => 'upgrades/upgrade-2.8.0.php',
20
  );
21
 
22
  /**
includes/class-user-subscription.php CHANGED
@@ -166,6 +166,7 @@ class WPUF_User_Subscription {
166
  */
167
  public function add_pack( $pack_id, $profile_id = null, $recurring, $status = null ) {
168
  global $wpdb;
 
169
  $subscription = WPUF_Subscription::init()->get_subscription( $pack_id );
170
  if ( $this->user->id && $subscription ) {
171
 
@@ -204,22 +205,28 @@ class WPUF_User_Subscription {
204
 
205
  $this->update_meta( $user_meta );
206
 
207
- $sql = $wpdb->prepare( "SELECT * FROM " . $wpdb->prefix . "wpuf_transaction
208
- WHERE user_id = %d AND pack_id = %d LIMIT 1", $this->user->id, $pack_id );
209
-
210
- $result = $wpdb->get_row( $sql );
211
- $table_data = array(
212
- 'user_id' => $this->user->id,
213
- 'name' => $this->user->user->data->display_name,
214
- 'subscribtion_id' => $pack_id,
215
- 'subscribtion_status' => $status,
216
- 'gateway' => isset( $result->payment_type ) ? 'bank' : $result->payment_type,
217
- 'transaction_id' => isset( $result->transaction_id ) ? 'NA' : $result->transaction_id,
218
- 'starts_from' => date( 'd-m-Y' ),
219
- 'expire' => $user_meta['expire'] == '' ? 'recurring' : $user_meta['expire'],
220
- );
221
 
222
- $wpdb->insert( $wpdb->prefix . 'wpuf_subscribers', $table_data );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
223
  }
224
  }
225
 
@@ -270,7 +277,7 @@ class WPUF_User_Subscription {
270
  $has_used = is_array( $has_used ) ? $has_used : array();
271
 
272
  $has_used[$pack_id] = $pack_id;
273
- update_meta( $has_used, 'wpuf_fp_used' );
274
  }
275
 
276
  public function pack_info( $form_id ) {
@@ -462,4 +469,24 @@ class WPUF_User_Subscription {
462
 
463
  return false;
464
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
465
  }
166
  */
167
  public function add_pack( $pack_id, $profile_id = null, $recurring, $status = null ) {
168
  global $wpdb;
169
+ $result = '';
170
  $subscription = WPUF_Subscription::init()->get_subscription( $pack_id );
171
  if ( $this->user->id && $subscription ) {
172
 
205
 
206
  $this->update_meta( $user_meta );
207
 
208
+ if ( ! $this->is_free_pack( $pack_id ) ) {
209
+ $sql = $wpdb->prepare( "SELECT * FROM " . $wpdb->prefix . "wpuf_transaction
210
+ WHERE user_id = %d AND pack_id = %d LIMIT 1", $this->user->id, $pack_id );
211
+
212
+ $result = $wpdb->get_row( $sql );
213
+ }
 
 
 
 
 
 
 
 
214
 
215
+ if ( $result ) {
216
+ $table_data = array(
217
+ 'user_id' => $this->user->id,
218
+ 'name' => $this->user->user->data->display_name,
219
+ 'subscribtion_id' => $pack_id,
220
+ 'subscribtion_status' => $status,
221
+ 'gateway' => isset( $result->payment_type ) ? 'bank' : $result->payment_type,
222
+ 'transaction_id' => isset( $result->transaction_id ) ? 'NA' : $result->transaction_id,
223
+ 'starts_from' => date( 'd-m-Y' ),
224
+ 'expire' => $user_meta['expire'] == '' ? 'recurring' : $user_meta['expire'],
225
+ );
226
+
227
+ $wpdb->insert( $wpdb->prefix . 'wpuf_subscribers', $table_data );
228
+ }
229
+
230
  }
231
  }
232
 
277
  $has_used = is_array( $has_used ) ? $has_used : array();
278
 
279
  $has_used[$pack_id] = $pack_id;
280
+ $this->update_meta( $has_used, 'wpuf_fp_used' );
281
  }
282
 
283
  public function pack_info( $form_id ) {
469
 
470
  return false;
471
  }
472
+
473
+ /**
474
+ * Checks if a pack is free
475
+ *
476
+ * @since 2.8.0
477
+ * @param $pack_id
478
+ * @return bool
479
+ */
480
+ public static function is_free_pack( $pack_id ) {
481
+ $subs = new WPUF_Subscription();
482
+ $pack = $subs->get_subscription( $pack_id );
483
+ $billing_amount = ( $pack->meta_value['billing_amount'] >= 0 && !empty( $pack->meta_value['billing_amount'] ) ) ? $pack->meta_value['billing_amount'] : false;
484
+
485
+ if ( $billing_amount === false ) {
486
+ return true;
487
+ }
488
+
489
+ return false;
490
+ }
491
+
492
  }
includes/free/form-element.php CHANGED
@@ -109,7 +109,7 @@ class WPUF_form_element extends WPUF_Pro_Prompt {
109
  }
110
  ?>
111
  </select>
112
- <p class="description"><?php echo _( 'Status of post after post expiration time is over ', 'wp-user-frontend', 'wpuf' ); ?></p>
113
 
114
  </td>
115
  </tr>
@@ -120,7 +120,7 @@ class WPUF_form_element extends WPUF_Pro_Prompt {
120
  <td>
121
  <label>
122
  <input disabled type="checkbox" name="" value="on" <?php echo $is_enable_mail_after_expired;?> />
123
- <?php echo _( 'Send Email to Author After Exceeding Post Expiration Time', 'wp-user-frontend', 'wpuf' );?>
124
  </label>
125
  </td>
126
  </tr>
109
  }
110
  ?>
111
  </select>
112
+ <p class="description"><?php echo __( 'Status of post after post expiration time is over ', 'wpuf' ); ?></p>
113
 
114
  </td>
115
  </tr>
120
  <td>
121
  <label>
122
  <input disabled type="checkbox" name="" value="on" <?php echo $is_enable_mail_after_expired;?> />
123
+ <?php echo __( 'Send Email to Author After Exceeding Post Expiration Time', 'wpuf' ); ?>
124
  </label>
125
  </td>
126
  </tr>
includes/upgrades/upgrade-2.8.0.php ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ function wpuf_upgrade_2_8_update_new_options() {
4
+ $wpuf_general = get_option( 'wpuf_general' );
5
+ switch ( $wpuf_general['admin_access'] ) {
6
+ case 'manage_options':
7
+ $roles = array( 'administrator' => 'administrator' );
8
+ break;
9
+
10
+ case 'edit_others_posts':
11
+ $roles = array( 'administrator' => 'administrator', 'editor' => 'editor' );
12
+ break;
13
+
14
+ case 'publish_posts':
15
+ $roles = array( 'administrator' => 'administrator', 'editor' => 'editor', 'author' => 'author' );
16
+ break;
17
+
18
+ case 'edit_posts':
19
+ case 'read':
20
+ default:
21
+ $roles = array( 'administrator' => 'administrator', 'editor' => 'editor', 'author' => 'author', 'contributor' => 'contributor' );
22
+ break;
23
+ }
24
+
25
+ $wpuf_general['show_admin_bar'] = $roles;
26
+
27
+ update_option( 'wpuf_general', $wpuf_general );
28
+ }
29
+
30
+ function wpuf_upgrade_2_8_update_mail_options() {
31
+ $old_mail_options = get_option( 'wpuf_guest_mails' );
32
+
33
+ if ( !empty ( $old_mail_options ) ) {
34
+ add_option( 'wpuf_mails', $old_mail_options );
35
+ }
36
+ }
37
+
38
+ wpuf_upgrade_2_8_update_new_options();
39
+ wpuf_upgrade_2_8_update_mail_options();
languages/wpuf.pot CHANGED
@@ -1,14 +1,14 @@
1
- # Copyright (C) 2017 Tareq Hasan
2
  # This file is distributed under the GPL2 or later.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: WP User Frontend 2.7.0\n"
6
  "Report-Msgid-Bugs-To: https://wedevs.com/contact/\n"
7
- "POT-Creation-Date: 2017-12-12 10:43:39+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
- "PO-Revision-Date: 2017-MO-DA HO:MI+ZONE\n"
12
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
  "Language-Team: LANGUAGE <EMAIL@ADDRESS>\n"
14
  "X-Generator: grunt-wp-i18n 0.5.4\n"
@@ -137,8 +137,8 @@ msgstr ""
137
 
138
  #: admin/class-admin-subscription.php:206
139
  #: admin/class-admin-subscription.php:560 class/frontend-account.php:134
140
- #: class/subscription.php:843 class/subscription.php:856
141
- #: includes/class-user-subscription.php:294
142
  msgid "Free"
143
  msgstr ""
144
 
@@ -147,10 +147,10 @@ msgstr ""
147
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:140
148
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:526
149
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:584
150
- #: admin/post-forms-list-table.php:345 admin/settings-options.php:88
151
- #: admin/settings-options.php:180 admin/settings-options.php:191
152
- #: admin/settings-options.php:250 admin/settings-options.php:261
153
- #: admin/settings-options.php:272 admin/template.php:70
154
  #: includes/free/form-element.php:477
155
  msgid "Yes"
156
  msgstr ""
@@ -160,15 +160,15 @@ msgstr ""
160
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:141
161
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:527
162
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:585
163
- #: admin/post-forms-list-table.php:346 admin/settings-options.php:89
164
- #: admin/settings-options.php:181 admin/settings-options.php:192
165
- #: admin/settings-options.php:251 admin/settings-options.php:262
166
- #: admin/settings-options.php:273 admin/template.php:71
167
  #: includes/free/form-element.php:478
168
  msgid "No"
169
  msgstr ""
170
 
171
- #: admin/class-admin-subscription.php:315 admin/form.php:229
172
  msgid "Payment Settings"
173
  msgstr ""
174
 
@@ -188,7 +188,7 @@ msgstr ""
188
  msgid "Expires In:"
189
  msgstr ""
190
 
191
- #: admin/class-admin-subscription.php:369 admin/form.php:231
192
  #: includes/free/form-element.php:56
193
  msgid "Post Expiration"
194
  msgstr ""
@@ -202,7 +202,7 @@ msgstr ""
202
  msgid "Post Expiration Time"
203
  msgstr ""
204
 
205
- #: admin/class-admin-subscription.php:411 admin/html/form-settings-post.php:64
206
  #: admin/post-forms-list-table.php:298
207
  msgid "Post Status"
208
  msgstr ""
@@ -268,7 +268,7 @@ msgid "Subscription Expiration Info"
268
  msgstr ""
269
 
270
  #: admin/class-admin-subscription.php:639
271
- #: includes/class-user-subscription.php:348
272
  #: templates/dashboard/subscription.php:41
273
  msgid "Expire date:"
274
  msgstr ""
@@ -286,9 +286,9 @@ msgid "Assign Package"
286
  msgstr ""
287
 
288
  #: admin/class-admin-subscription.php:746
289
- #: admin/form-builder/class-wpuf-admin-form-builder.php:325
290
- #: class/payment.php:168 class/subscription.php:770
291
- #: includes/class-list-table-subscribers.php:156
292
  #: templates/dashboard/subscription.php:62
293
  msgid "Cancel"
294
  msgstr ""
@@ -319,7 +319,7 @@ msgstr ""
319
 
320
  #: admin/class-tools.php:39 admin/class-tools.php:95
321
  #: admin/post-forms-list-table.php:43 class/transactions-list-table.php:85
322
- #: includes/class-list-table-subscribers.php:154
323
  msgid "All"
324
  msgstr ""
325
 
@@ -494,12 +494,12 @@ msgstr ""
494
 
495
  #: admin/form-builder/assets/js/components/form-featured_image/template.php:5
496
  #: admin/form-builder/assets/js/components/form-image_upload/template.php:5
497
- #: class/render-form.php:1572
498
  msgid "Select Image"
499
  msgstr ""
500
 
501
  #: admin/form-builder/assets/js/components/form-post_content/template.php:4
502
- #: class/render-form.php:985
503
  msgid "Insert Photo"
504
  msgstr ""
505
 
@@ -515,44 +515,44 @@ msgstr ""
515
  msgid "Invalid form id"
516
  msgstr ""
517
 
518
- #: admin/form-builder/class-wpuf-admin-form-builder.php:283
519
  msgid "Custom Fields"
520
  msgstr ""
521
 
522
- #: admin/form-builder/class-wpuf-admin-form-builder.php:304
523
  msgid "Others"
524
  msgstr ""
525
 
526
- #: admin/form-builder/class-wpuf-admin-form-builder.php:320
527
  msgid "Advanced Options"
528
  msgstr ""
529
 
530
- #: admin/form-builder/class-wpuf-admin-form-builder.php:321
531
  msgid "Are you sure you want to delete this field?"
532
  msgstr ""
533
 
534
- #: admin/form-builder/class-wpuf-admin-form-builder.php:322
535
  msgid "Yes, delete it"
536
  msgstr ""
537
 
538
- #: admin/form-builder/class-wpuf-admin-form-builder.php:323
539
  msgid "No, cancel it"
540
  msgstr ""
541
 
542
- #: admin/form-builder/class-wpuf-admin-form-builder.php:324
543
  msgid "OK"
544
  msgstr ""
545
 
546
- #: admin/form-builder/class-wpuf-admin-form-builder.php:326
547
  #: includes/free/admin/shortcode-builder.php:69
548
  msgid "Close"
549
  msgstr ""
550
 
551
- #: admin/form-builder/class-wpuf-admin-form-builder.php:327
552
  msgid "This field must contain at least one choice"
553
  msgstr ""
554
 
555
- #: admin/form-builder/class-wpuf-admin-form-builder.php:328
556
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:454
557
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:497
558
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:556
@@ -560,39 +560,39 @@ msgstr ""
560
  msgid "Option"
561
  msgstr ""
562
 
563
- #: admin/form-builder/class-wpuf-admin-form-builder.php:329
564
  msgid "Column"
565
  msgstr ""
566
 
567
- #: admin/form-builder/class-wpuf-admin-form-builder.php:330
568
  msgid "This field must contain at least one column"
569
  msgstr ""
570
 
571
- #: admin/form-builder/class-wpuf-admin-form-builder.php:331
572
  msgid "is available in Pro version"
573
  msgstr ""
574
 
575
- #: admin/form-builder/class-wpuf-admin-form-builder.php:332
576
  msgid "Please upgrade to the Pro version to unlock all these awesome features"
577
  msgstr ""
578
 
579
- #: admin/form-builder/class-wpuf-admin-form-builder.php:333
580
  msgid "Get the Pro version"
581
  msgstr ""
582
 
583
- #: admin/form-builder/class-wpuf-admin-form-builder.php:334 admin/form.php:765
584
  msgid "Select"
585
  msgstr ""
586
 
587
- #: admin/form-builder/class-wpuf-admin-form-builder.php:335
588
  msgid "Saved form data"
589
  msgstr ""
590
 
591
- #: admin/form-builder/class-wpuf-admin-form-builder.php:336
592
  msgid "You have unsaved changes."
593
  msgstr ""
594
 
595
- #: admin/form-builder/class-wpuf-admin-form-builder.php:337
596
  #: admin/form-builder/views/form-builder.php:45
597
  msgid "Click to copy shortcode"
598
  msgstr ""
@@ -827,7 +827,7 @@ msgstr ""
827
 
828
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:483
829
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:490
830
- #: admin/form.php:766 admin/template-post.php:157
831
  msgid "Multi Select"
832
  msgstr ""
833
 
@@ -850,7 +850,7 @@ msgid "Radio Field"
850
  msgstr ""
851
 
852
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:599
853
- #: admin/form.php:767 admin/template-post.php:158
854
  msgid "Checkbox"
855
  msgstr ""
856
 
@@ -868,7 +868,7 @@ msgid "Email Address"
868
  msgstr ""
869
 
870
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:682
871
- #: admin/html/form-settings-post.php:18 admin/html/support.php:224
872
  #: class/transactions-list-table.php:48 includes/free/edit-user.php:152
873
  #: templates/registration-form.php:44
874
  msgid "Email"
@@ -889,12 +889,12 @@ msgid "Hidden Field"
889
  msgstr ""
890
 
891
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:762
892
- #: admin/form.php:681 admin/template-post.php:105 admin/template.php:646
893
  msgid "Max. file size"
894
  msgstr ""
895
 
896
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:766
897
- #: admin/form.php:685 admin/template-post.php:93 admin/template.php:634
898
  msgid "Enter maximum upload size limit in KB"
899
  msgstr ""
900
 
@@ -1130,141 +1130,145 @@ msgstr ""
1130
  msgid "Edit Settings"
1131
  msgstr ""
1132
 
1133
- #: admin/form.php:230
 
 
 
 
1134
  msgid "Display Settings"
1135
  msgstr ""
1136
 
1137
- #: admin/form.php:289 admin/form.php:293
1138
  msgid "- Select -"
1139
  msgstr ""
1140
 
1141
- #: admin/form.php:327
1142
  msgid "Post Fields"
1143
  msgstr ""
1144
 
1145
- #: admin/form.php:333
1146
  msgid "Taxonomies"
1147
  msgstr ""
1148
 
1149
- #: admin/form.php:435 admin/html/form-settings-post.php:29
1150
- #: class/render-form.php:689
1151
  msgid "Save Draft"
1152
  msgstr ""
1153
 
1154
- #: admin/form.php:545 admin/form.php:552
1155
  msgid "Post Title"
1156
  msgstr ""
1157
 
1158
- #: admin/form.php:584 admin/template-post.php:41
1159
  msgid "Enable Image Insertion"
1160
  msgstr ""
1161
 
1162
- #: admin/form.php:586 admin/template-post.php:47
1163
  msgid "Enable image upload in post area"
1164
  msgstr ""
1165
 
1166
- #: admin/form.php:595 admin/form.php:602
1167
  msgid "Post Body"
1168
  msgstr ""
1169
 
1170
- #: admin/form.php:641 admin/form.php:648 templates/dashboard.php:99
1171
  msgid "Excerpt"
1172
  msgstr ""
1173
 
1174
- #: admin/form.php:691 admin/form.php:698 templates/dashboard/posts.php:72
1175
  #: templates/dashboard.php:70
1176
  msgid "Featured Image"
1177
  msgstr ""
1178
 
1179
- #: admin/form.php:726 admin/form.php:732
1180
  msgid "Tags"
1181
  msgstr ""
1182
 
1183
- #: admin/form.php:762 admin/template-post.php:154
1184
  msgid "Type"
1185
  msgstr ""
1186
 
1187
- #: admin/form.php:768 admin/template-post.php:159
1188
  msgid "Text Input"
1189
  msgstr ""
1190
 
1191
- #: admin/form.php:769 admin/template-post.php:160
1192
  msgid "Ajax"
1193
  msgstr ""
1194
 
1195
- #: admin/form.php:778 admin/template-post.php:165
1196
  msgid "Order By"
1197
  msgstr ""
1198
 
1199
- #: admin/form.php:781 admin/html/form-settings-post.php:17
1200
  #: admin/template-post.php:167 includes/free/edit-profile.php:97
1201
  #: templates/registration-form.php:27
1202
  msgid "Name"
1203
  msgstr ""
1204
 
1205
- #: admin/form.php:782 admin/template-post.php:168
1206
  msgid "Term ID"
1207
  msgstr ""
1208
 
1209
- #: admin/form.php:783 admin/template-post.php:169
1210
  msgid "Slug"
1211
  msgstr ""
1212
 
1213
- #: admin/form.php:784 admin/template-post.php:170
1214
  msgid "Count"
1215
  msgstr ""
1216
 
1217
- #: admin/form.php:785 admin/template-post.php:171
1218
  msgid "Term Group"
1219
  msgstr ""
1220
 
1221
- #: admin/form.php:794 admin/template-post.php:176
1222
  msgid "Order"
1223
  msgstr ""
1224
 
1225
- #: admin/form.php:798 admin/template-post.php:178
1226
  msgid "ASC"
1227
  msgstr ""
1228
 
1229
- #: admin/form.php:799 admin/template-post.php:179
1230
  msgid "DESC"
1231
  msgstr ""
1232
 
1233
- #: admin/form.php:808 admin/template-post.php:184
1234
  msgid "Selection Type"
1235
  msgstr ""
1236
 
1237
- #: admin/form.php:811 admin/template-post.php:186
1238
  msgid "Exclude"
1239
  msgstr ""
1240
 
1241
- #: admin/form.php:812 admin/template-post.php:187
1242
  msgid "Include"
1243
  msgstr ""
1244
 
1245
- #: admin/form.php:813 admin/template-post.php:188
1246
  msgid "Child of"
1247
  msgstr ""
1248
 
1249
- #: admin/form.php:822
1250
  msgid "Selection Terms"
1251
  msgstr ""
1252
 
1253
- #: admin/form.php:826 admin/template-post.php:194
1254
  msgid ""
1255
  "Enter the term IDs as comma separated (without space) to exclude/include in "
1256
  "the form."
1257
  msgstr ""
1258
 
1259
- #: admin/form.php:834 admin/template-post.php:204
1260
  msgid "This taxonomy is a WooCommerce attribute"
1261
  msgstr ""
1262
 
1263
- #: admin/form.php:845 admin/template-post.php:216
1264
  msgid "Visible on product page"
1265
  msgstr ""
1266
 
1267
- #: admin/form.php:895
1268
  msgid "Post Forms must have either Post Title, Post Body or Excerpt field"
1269
  msgstr ""
1270
 
@@ -1357,7 +1361,7 @@ msgid "Amount to be charged per post"
1357
  msgstr ""
1358
 
1359
  #: admin/html/form-settings-post-edit.php:4
1360
- #: admin/html/form-settings-post.php:23
1361
  msgid "Post updated successfully"
1362
  msgstr ""
1363
 
@@ -1374,32 +1378,32 @@ msgid "No Change"
1374
  msgstr ""
1375
 
1376
  #: admin/html/form-settings-post-edit.php:30
1377
- #: admin/html/form-settings-post.php:176 includes/free/form-element.php:376
1378
  msgid "Redirect To"
1379
  msgstr ""
1380
 
1381
  #: admin/html/form-settings-post-edit.php:35
1382
- #: admin/html/form-settings-post.php:181
1383
  msgid "Newly created post"
1384
  msgstr ""
1385
 
1386
  #: admin/html/form-settings-post-edit.php:36
1387
- #: admin/html/form-settings-post.php:182 includes/free/form-element.php:381
1388
  msgid "Same Page"
1389
  msgstr ""
1390
 
1391
  #: admin/html/form-settings-post-edit.php:37
1392
- #: admin/html/form-settings-post.php:183 includes/free/form-element.php:382
1393
  msgid "To a page"
1394
  msgstr ""
1395
 
1396
  #: admin/html/form-settings-post-edit.php:38
1397
- #: admin/html/form-settings-post.php:184 includes/free/form-element.php:383
1398
  msgid "To a custom URL"
1399
  msgstr ""
1400
 
1401
  #: admin/html/form-settings-post-edit.php:47
1402
- #: admin/html/form-settings-post.php:193 includes/free/form-element.php:392
1403
  msgid "After successfull submit, where the page will redirect to"
1404
  msgstr ""
1405
 
@@ -1408,12 +1412,12 @@ msgid "Post Update Message"
1408
  msgstr ""
1409
 
1410
  #: admin/html/form-settings-post-edit.php:60
1411
- #: admin/html/form-settings-post.php:206 includes/free/form-element.php:412
1412
  msgid "Page"
1413
  msgstr ""
1414
 
1415
  #: admin/html/form-settings-post-edit.php:75
1416
- #: admin/html/form-settings-post.php:221 includes/free/form-element.php:427
1417
  msgid "Custom URL"
1418
  msgstr ""
1419
 
@@ -1429,144 +1433,220 @@ msgstr ""
1429
  msgid "This page is restricted. Please Log in / Register to view this page."
1430
  msgstr ""
1431
 
1432
- #: admin/html/form-settings-post.php:22
1433
  msgid "Post saved"
1434
  msgstr ""
1435
 
1436
- #: admin/html/form-settings-post.php:28
1437
  msgid "Submit"
1438
  msgstr ""
1439
 
1440
- #: admin/html/form-settings-post.php:30
1441
  msgid "Preview"
1442
  msgstr ""
1443
 
1444
- #: admin/html/form-settings-post.php:37 admin/post-forms-list-table.php:297
1445
  msgid "Post Type"
1446
  msgstr ""
1447
 
1448
- #: admin/html/form-settings-post.php:59
1449
  msgid "Custom Post Type will appear here. "
1450
  msgstr ""
1451
 
1452
- #: admin/html/form-settings-post.php:59
1453
  msgid "Learn More "
1454
  msgstr ""
1455
 
1456
- #: admin/html/form-settings-post.php:78
1457
  msgid "Post Format"
1458
  msgstr ""
1459
 
1460
- #: admin/html/form-settings-post.php:81 admin/html/form-settings-post.php:104
1461
  msgid "- None -"
1462
  msgstr ""
1463
 
1464
- #: admin/html/form-settings-post.php:96
1465
  msgid "Default Post Category"
1466
  msgstr ""
1467
 
1468
- #: admin/html/form-settings-post.php:108
1469
  msgid ""
1470
  "If users are not allowed to choose any category, this category will be used "
1471
  "instead (if post type supports)"
1472
  msgstr ""
1473
 
1474
- #: admin/html/form-settings-post.php:113 admin/post-forms-list-table.php:299
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1475
  msgid "Guest Post"
1476
  msgstr ""
1477
 
1478
- #: admin/html/form-settings-post.php:118
1479
  msgid "Enable Guest Post"
1480
  msgstr ""
1481
 
1482
- #: admin/html/form-settings-post.php:120
1483
  msgid "Unregistered users will be able to submit posts"
1484
  msgstr ""
1485
 
1486
- #: admin/html/form-settings-post.php:120
1487
  msgid "Learn more about guest posting."
1488
  msgstr ""
1489
 
1490
- #: admin/html/form-settings-post.php:125
1491
  msgid "User Details"
1492
  msgstr ""
1493
 
1494
- #: admin/html/form-settings-post.php:130
1495
  msgid "Require Name and Email address"
1496
  msgstr ""
1497
 
1498
- #: admin/html/form-settings-post.php:132
1499
  msgid ""
1500
  "If requires, users will be automatically registered to the site using the "
1501
  "name and email address"
1502
  msgstr ""
1503
 
1504
- #: admin/html/form-settings-post.php:137
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1505
  msgid "Email Verification"
1506
  msgstr ""
1507
 
1508
- #: admin/html/form-settings-post.php:141
1509
  msgid "Require Email Verification for Guests"
1510
  msgstr ""
1511
 
1512
- #: admin/html/form-settings-post.php:143
1513
  msgid "If requires, users will be required to verify their email adress."
1514
  msgstr ""
1515
 
1516
- #: admin/html/form-settings-post.php:148
1517
- msgid "Name Label"
1518
  msgstr ""
1519
 
1520
- #: admin/html/form-settings-post.php:153
1521
- msgid "Label text for name field"
1522
  msgstr ""
1523
 
1524
- #: admin/html/form-settings-post.php:158
1525
- msgid "E-Mail Label"
1526
  msgstr ""
1527
 
1528
- #: admin/html/form-settings-post.php:163
1529
- msgid "Label text for email field"
1530
  msgstr ""
1531
 
1532
- #: admin/html/form-settings-post.php:168 admin/settings-options.php:237
 
 
 
 
 
1533
  msgid "Unauthorized Message"
1534
  msgstr ""
1535
 
1536
- #: admin/html/form-settings-post.php:171 admin/settings-options.php:238
 
1537
  msgid "Not logged in users will see this message"
1538
  msgstr ""
1539
 
1540
- #: admin/html/form-settings-post.php:199
1541
- msgid "Message to show"
1542
  msgstr ""
1543
 
1544
- #: admin/html/form-settings-post.php:228
1545
- msgid "Comment Status"
1546
  msgstr ""
1547
 
1548
- #: admin/html/form-settings-post.php:231
1549
- msgid "Open"
1550
  msgstr ""
1551
 
1552
- #: admin/html/form-settings-post.php:232
1553
- msgid "Closed"
1554
  msgstr ""
1555
 
1556
- #: admin/html/form-settings-post.php:238
1557
- msgid "Submit Post Button text"
1558
  msgstr ""
1559
 
1560
- #: admin/html/form-settings-post.php:245
1561
- msgid "Post Draft"
 
1562
  msgstr ""
1563
 
1564
- #: admin/html/form-settings-post.php:250
1565
- msgid "Enable Saving as draft"
1566
  msgstr ""
1567
 
1568
- #: admin/html/form-settings-post.php:252
1569
- msgid "It will show a button to save as draft"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1570
  msgstr ""
1571
 
1572
  #: admin/html/modal.php:4
@@ -1727,7 +1807,63 @@ msgstr ""
1727
  msgid "Contact Support"
1728
  msgstr ""
1729
 
1730
- #: admin/html/whats-new.php:48
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1731
  msgid "What's New in WPUF?"
1732
  msgstr ""
1733
 
@@ -1760,7 +1896,8 @@ msgstr ""
1760
  msgid "Account"
1761
  msgstr ""
1762
 
1763
- #: admin/installer.php:78 includes/free/admin/shortcode-button.php:94
 
1764
  msgid "Login"
1765
  msgstr ""
1766
 
@@ -1861,24 +1998,24 @@ msgstr ""
1861
  msgid "Draft"
1862
  msgstr ""
1863
 
1864
- #: admin/posting.php:66 class/asset-loader.php:51 class/render-form.php:1584
1865
- #: wpuf.php:480
1866
  msgid "Are you sure?"
1867
  msgstr ""
1868
 
1869
- #: admin/posting.php:72 class/asset-loader.php:57 wpuf.php:488
1870
  msgid "Allowed Files"
1871
  msgstr ""
1872
 
1873
- #: admin/posting.php:75 class/asset-loader.php:60 wpuf.php:494
1874
  msgid "Maximum number of files reached!"
1875
  msgstr ""
1876
 
1877
- #: admin/posting.php:76 class/asset-loader.php:61 wpuf.php:495
1878
  msgid "The file you have uploaded exceeds the file size limit. Please try again."
1879
  msgstr ""
1880
 
1881
- #: admin/posting.php:77 class/asset-loader.php:62 wpuf.php:496
1882
  msgid "You have uploaded an incorrect file type. Please try again."
1883
  msgstr ""
1884
 
@@ -2197,393 +2334,417 @@ msgid "E-Mails"
2197
  msgstr ""
2198
 
2199
  #: admin/settings-options.php:69
2200
- msgid "Admin area access"
2201
  msgstr ""
2202
 
2203
  #: admin/settings-options.php:70
2204
- msgid "Allow you to block specific user role to WordPress admin area."
 
 
 
 
2205
  msgstr ""
2206
 
2207
  #: admin/settings-options.php:74
2208
- msgid "Admin Only"
2209
  msgstr ""
2210
 
2211
  #: admin/settings-options.php:75
2212
- msgid "Admins, Editors"
2213
  msgstr ""
2214
 
2215
  #: admin/settings-options.php:76
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2216
  msgid "Admins, Editors, Authors"
2217
  msgstr ""
2218
 
2219
- #: admin/settings-options.php:77
2220
  msgid "Admins, Editors, Authors, Contributors"
2221
  msgstr ""
2222
 
2223
- #: admin/settings-options.php:78
2224
  msgid "Default"
2225
  msgstr ""
2226
 
2227
- #: admin/settings-options.php:83
2228
  msgid "Override the post edit link"
2229
  msgstr ""
2230
 
2231
- #: admin/settings-options.php:84
2232
  msgid ""
2233
  "Users see the edit link in post if s/he is capable to edit the post/page. "
2234
  "Selecting <strong>Yes</strong> will override the default WordPress edit "
2235
  "post link in frontend"
2236
  msgstr ""
2237
 
2238
- #: admin/settings-options.php:94
2239
  msgid "Load Scripts"
2240
  msgstr ""
2241
 
2242
- #: admin/settings-options.php:95
2243
  msgid "Load scripts/styles in all pages"
2244
  msgstr ""
2245
 
2246
- #: admin/settings-options.php:101
2247
  msgid "reCAPTCHA Site Key"
2248
  msgstr ""
2249
 
2250
- #: admin/settings-options.php:105
2251
  msgid "reCAPTCHA Secret Key"
2252
  msgstr ""
2253
 
2254
- #: admin/settings-options.php:106
2255
  msgid ""
2256
  "<a target=\"_blank\" href=\"https://www.google.com/recaptcha/\">Register "
2257
  "here</a> to get reCaptcha Site and Secret keys."
2258
  msgstr ""
2259
 
2260
- #: admin/settings-options.php:110
2261
  msgid "Custom CSS codes"
2262
  msgstr ""
2263
 
2264
- #: admin/settings-options.php:111
2265
  msgid ""
2266
  "If you want to add your custom CSS code, it will be added on page header "
2267
  "wrapped with style tag"
2268
  msgstr ""
2269
 
2270
- #: admin/settings-options.php:118
2271
  msgid "Edit Page"
2272
  msgstr ""
2273
 
2274
- #: admin/settings-options.php:119
2275
  msgid "Select the page where <code>[wpuf_edit]</code> is located"
2276
  msgstr ""
2277
 
2278
- #: admin/settings-options.php:125
2279
  msgid "Default Post Owner"
2280
  msgstr ""
2281
 
2282
- #: admin/settings-options.php:126
2283
  msgid ""
2284
  "If guest post is enabled and user details are OFF, the posts are assigned "
2285
  "to this user"
2286
  msgstr ""
2287
 
2288
- #: admin/settings-options.php:133
2289
  msgid "Custom Fields in post"
2290
  msgstr ""
2291
 
2292
- #: admin/settings-options.php:134
2293
  msgid "Show custom fields on post content area"
2294
  msgstr ""
2295
 
2296
- #: admin/settings-options.php:140
2297
  msgid "Insert Photo image size"
2298
  msgstr ""
2299
 
2300
- #: admin/settings-options.php:141
2301
  msgid ""
2302
  "Default image size of \"<strong>Insert Photo</strong>\" button in post "
2303
  "content area"
2304
  msgstr ""
2305
 
2306
- #: admin/settings-options.php:148
2307
  msgid "Insert Photo image type"
2308
  msgstr ""
2309
 
2310
- #: admin/settings-options.php:149
2311
  msgid ""
2312
  "Default image type of \"<strong>Insert Photo</strong>\" button in post "
2313
  "content area"
2314
  msgstr ""
2315
 
2316
- #: admin/settings-options.php:152
2317
  msgid "Image only"
2318
  msgstr ""
2319
 
2320
- #: admin/settings-options.php:153
2321
  msgid "Image with link"
2322
  msgstr ""
2323
 
2324
- #: admin/settings-options.php:159
2325
  msgid "Enable Image Caption"
2326
  msgstr ""
2327
 
2328
- #: admin/settings-options.php:160
2329
  msgid "Allow users to update image/video title, caption and description"
2330
  msgstr ""
2331
 
2332
- #: admin/settings-options.php:166
2333
  msgid "Default Post Form"
2334
  msgstr ""
2335
 
2336
- #: admin/settings-options.php:167
2337
  msgid "Fallback form for post editing if no associated form found"
2338
  msgstr ""
2339
 
2340
- #: admin/settings-options.php:175
2341
  msgid "Users can edit post?"
2342
  msgstr ""
2343
 
2344
- #: admin/settings-options.php:176
2345
  msgid "Users will be able to edit their own posts"
2346
  msgstr ""
2347
 
2348
- #: admin/settings-options.php:186
2349
  msgid "User can delete post?"
2350
  msgstr ""
2351
 
2352
- #: admin/settings-options.php:187
2353
  msgid "Users will be able to delete their own posts"
2354
  msgstr ""
2355
 
2356
- #: admin/settings-options.php:197
2357
  msgid "Pending Post Edit"
2358
  msgstr ""
2359
 
2360
- #: admin/settings-options.php:198
2361
  msgid "Disable post editing while post in \"pending\" status"
2362
  msgstr ""
2363
 
2364
- #: admin/settings-options.php:204
2365
  msgid "Posts per page"
2366
  msgstr ""
2367
 
2368
- #: admin/settings-options.php:205
2369
  msgid "How many posts will be listed in a page"
2370
  msgstr ""
2371
 
2372
- #: admin/settings-options.php:211
2373
  msgid "Show user bio"
2374
  msgstr ""
2375
 
2376
- #: admin/settings-options.php:212
2377
  msgid "Users biographical info will be shown"
2378
  msgstr ""
2379
 
2380
- #: admin/settings-options.php:218
2381
  msgid "Show post count"
2382
  msgstr ""
2383
 
2384
- #: admin/settings-options.php:219
2385
  msgid "Show how many posts are created by the user"
2386
  msgstr ""
2387
 
2388
- #: admin/settings-options.php:225
2389
  msgid "Show Featured Image"
2390
  msgstr ""
2391
 
2392
- #: admin/settings-options.php:226
2393
  msgid "Show featured image of the post (Overridden by Shortcode)"
2394
  msgstr ""
2395
 
2396
- #: admin/settings-options.php:231
2397
  msgid "Featured Image size"
2398
  msgstr ""
2399
 
2400
- #: admin/settings-options.php:245
2401
  msgid "Show Subscriptions"
2402
  msgstr ""
2403
 
2404
- #: admin/settings-options.php:246
2405
  msgid ""
2406
  "Show Subscriptions tab in \"my account\" page where "
2407
  "<code>[wpuf_account]</code> is located"
2408
  msgstr ""
2409
 
2410
- #: admin/settings-options.php:256
2411
  msgid "Show Invoice"
2412
  msgstr ""
2413
 
2414
- #: admin/settings-options.php:257
2415
  msgid ""
2416
  "Show Invoice tab in \"my account\" page where <code>[wpuf_account]</code> "
2417
  "is located"
2418
  msgstr ""
2419
 
2420
- #: admin/settings-options.php:267
2421
  msgid "Show Billing Address"
2422
  msgstr ""
2423
 
2424
- #: admin/settings-options.php:268
2425
  msgid ""
2426
  "Show Billing Address tab in \"my account\" page where "
2427
  "<code>[wpuf_account]</code> is located"
2428
  msgstr ""
2429
 
2430
- #: admin/settings-options.php:280
2431
  msgid "Auto Login After Registration"
2432
  msgstr ""
2433
 
2434
- #: admin/settings-options.php:281
2435
  msgid "If enabled, users after registration will be logged in to the system"
2436
  msgstr ""
2437
 
2438
- #: admin/settings-options.php:287
2439
  msgid "Login/Registration override"
2440
  msgstr ""
2441
 
2442
- #: admin/settings-options.php:288
2443
  msgid ""
2444
  "If enabled, default login and registration forms will be overridden by WPUF "
2445
  "with pages below"
2446
  msgstr ""
2447
 
2448
- #: admin/settings-options.php:294
2449
  msgid "Registration Page"
2450
  msgstr ""
2451
 
2452
- #: admin/settings-options.php:295
2453
  msgid ""
2454
  "Select the page you want to use as registration page override <em>(should "
2455
  "have shortcode)</em>"
2456
  msgstr ""
2457
 
2458
- #: admin/settings-options.php:301
2459
  msgid "Login Page"
2460
  msgstr ""
2461
 
2462
- #: admin/settings-options.php:302
2463
  msgid "Select the page which contains <code>[wpuf-login]</code> shortcode"
2464
  msgstr ""
2465
 
2466
- #: admin/settings-options.php:310
2467
  msgid "Subscription Pack Page"
2468
  msgstr ""
2469
 
2470
- #: admin/settings-options.php:311
2471
  msgid "Select the page where <code>[wpuf_sub_pack]</code> located."
2472
  msgstr ""
2473
 
2474
- #: admin/settings-options.php:317
2475
  msgid "Subscription at registration"
2476
  msgstr ""
2477
 
2478
- #: admin/settings-options.php:318
2479
  msgid "Registration time redirect to subscription page"
2480
  msgstr ""
2481
 
2482
- #: admin/settings-options.php:323
2483
  msgid "Currency"
2484
  msgstr ""
2485
 
2486
- #: admin/settings-options.php:330
2487
  msgid "Currency Position"
2488
  msgstr ""
2489
 
2490
- #: admin/settings-options.php:334
2491
  msgid "Left"
2492
  msgstr ""
2493
 
2494
- #: admin/settings-options.php:335
2495
  msgid "Right"
2496
  msgstr ""
2497
 
2498
- #: admin/settings-options.php:336
2499
  msgid "Left with space"
2500
  msgstr ""
2501
 
2502
- #: admin/settings-options.php:337
2503
  msgid "Right with space"
2504
  msgstr ""
2505
 
2506
- #: admin/settings-options.php:342
2507
  msgid "Thousand Separator"
2508
  msgstr ""
2509
 
2510
- #: admin/settings-options.php:343
2511
  msgid "This sets the thousand separator of displayed prices."
2512
  msgstr ""
2513
 
2514
- #: admin/settings-options.php:351
2515
  msgid "Decimal Separator"
2516
  msgstr ""
2517
 
2518
- #: admin/settings-options.php:352
2519
  msgid "This sets the decimal separator of displayed prices."
2520
  msgstr ""
2521
 
2522
- #: admin/settings-options.php:359
2523
  msgid "Number of Decimals"
2524
  msgstr ""
2525
 
2526
- #: admin/settings-options.php:360
2527
  msgid "This sets the number of decimal points shown in displayed prices."
2528
  msgstr ""
2529
 
2530
- #: admin/settings-options.php:370
2531
  msgid "Enable demo/sandbox mode"
2532
  msgstr ""
2533
 
2534
- #: admin/settings-options.php:371
2535
  msgid "When sandbox mode is active, all payment gateway will be used in demo mode"
2536
  msgstr ""
2537
 
2538
- #: admin/settings-options.php:377
2539
  msgid "Payment Page"
2540
  msgstr ""
2541
 
2542
- #: admin/settings-options.php:378
2543
  msgid "This page will be used to process payment options"
2544
  msgstr ""
2545
 
2546
- #: admin/settings-options.php:384
2547
  msgid "Payment Success Page"
2548
  msgstr ""
2549
 
2550
- #: admin/settings-options.php:385 lib/gateway/bank.php:37
2551
  msgid "After payment users will be redirected here"
2552
  msgstr ""
2553
 
2554
- #: admin/settings-options.php:391
2555
  msgid "Payment Gateways"
2556
  msgstr ""
2557
 
2558
- #: admin/settings-options.php:392
2559
  msgid "Active payment gateways"
2560
  msgstr ""
2561
 
2562
- #: admin/settings-options.php:400
2563
- msgid "Guest Email Subject"
2564
  msgstr ""
2565
 
2566
- #: admin/settings-options.php:401
2567
  msgid "This sets the subject of the emails sent to guest users"
2568
  msgstr ""
2569
 
2570
- #: admin/settings-options.php:407
2571
- msgid "Guest Email Body"
2572
  msgstr ""
2573
 
2574
- #: admin/settings-options.php:408
2575
  msgid ""
2576
  "This sets the body of the emails sent to guest users. Please DON'T edit the "
2577
  "<code>{activation_link}</code> part"
2578
  msgstr ""
2579
 
2580
- #: admin/settings-options.php:431
2581
  msgid ""
2582
  "Select profile/registration forms for user roles. These forms will be used "
2583
  "to populate extra edit profile fields in backend."
2584
  msgstr ""
2585
 
2586
- #: admin/settings-options.php:442
2587
  msgid " - select - "
2588
  msgstr ""
2589
 
@@ -2684,23 +2845,23 @@ msgstr ""
2684
  msgid "Install Now"
2685
  msgstr ""
2686
 
2687
- #: class/asset-loader.php:31 wpuf.php:411
2688
  msgid "is required"
2689
  msgstr ""
2690
 
2691
- #: class/asset-loader.php:32 wpuf.php:412
2692
  msgid "does not match"
2693
  msgstr ""
2694
 
2695
- #: class/asset-loader.php:33 wpuf.php:413
2696
  msgid "is not valid"
2697
  msgstr ""
2698
 
2699
- #: class/asset-loader.php:45 wpuf.php:474
2700
  msgid "Please fix the errors to proceed"
2701
  msgstr ""
2702
 
2703
- #: class/asset-loader.php:47 wpuf.php:476
2704
  msgid "Word limit reached"
2705
  msgstr ""
2706
 
@@ -2777,35 +2938,39 @@ msgstr ""
2777
  msgid "Payment type not selected for this form. Please contact admin."
2778
  msgstr ""
2779
 
2780
- #: class/frontend-form-post.php:182
2781
  msgid "You are not logged in"
2782
  msgstr ""
2783
 
2784
- #: class/frontend-form-post.php:190 class/frontend-form-post.php:201
2785
  msgid "Invalid post"
2786
  msgstr ""
2787
 
2788
- #: class/frontend-form-post.php:195
2789
  msgid "Post Editing is disabled"
2790
  msgstr ""
2791
 
2792
- #: class/frontend-form-post.php:206
2793
  msgid "You are not allowed to edit"
2794
  msgstr ""
2795
 
2796
- #: class/frontend-form-post.php:218
2797
  msgid "I don't know how to edit this post, I don't have the form ID"
2798
  msgstr ""
2799
 
2800
- #: class/frontend-form-post.php:224
2801
  msgid "You can't edit a post while in pending mode."
2802
  msgstr ""
2803
 
2804
- #: class/frontend-form-post.php:294
 
 
 
 
2805
  msgid "Invalid email address."
2806
  msgstr ""
2807
 
2808
- #: class/frontend-form-post.php:303
2809
  msgid ""
2810
  "You already have an account in our site. Please login to continue.\n"
2811
  "\n"
@@ -2814,11 +2979,15 @@ msgid ""
2814
  "Click 'Cancel' to stay at this page."
2815
  msgstr ""
2816
 
2817
- #: class/frontend-form-post.php:712
 
 
 
 
2818
  msgid "Something went wrong"
2819
  msgstr ""
2820
 
2821
- #: class/frontend-form-post.php:1069
2822
  msgid "Email successfully verified. Please Login."
2823
  msgstr ""
2824
 
@@ -2899,32 +3068,40 @@ msgstr ""
2899
  msgid "Really Simple Captcha validation failed"
2900
  msgstr ""
2901
 
2902
- #: class/render-form.php:104 class/render-form.php:115
 
 
 
 
2903
  msgid "reCAPTCHA validation failed"
2904
  msgstr ""
2905
 
2906
- #: class/render-form.php:327
 
 
 
 
2907
  msgid "Your selected form is no longer available."
2908
  msgstr ""
2909
 
2910
- #: class/render-form.php:332
2911
  msgid "Please make sure you've published your form."
2912
  msgstr ""
2913
 
2914
- #: class/render-form.php:1263 includes/free/edit-profile.php:203
2915
- #: templates/dashboard/edit-profile.php:45
2916
  msgid "Strength indicator"
2917
  msgstr ""
2918
 
2919
- #: class/render-form.php:1323 class/render-form.php:1439
2920
  msgid "-- Select --"
2921
  msgstr ""
2922
 
2923
- #: class/render-form.php:1383
2924
  msgid "This field is no longer available."
2925
  msgstr ""
2926
 
2927
- #: class/render-form.php:1584 class/transactions-list-table.php:114
2928
  #: class/transactions-list-table.php:178 class/upload.php:171
2929
  #: includes/free/edit-user.php:100 templates/dashboard/posts.php:161
2930
  #: templates/dashboard.php:222
@@ -2967,53 +3144,53 @@ msgstr ""
2967
  msgid "Parent Subscription"
2968
  msgstr ""
2969
 
2970
- #: class/subscription.php:738
2971
  msgid "Payment is complete"
2972
  msgstr ""
2973
 
2974
- #: class/subscription.php:738
2975
  msgid "Congratulations, your payment has been completed!"
2976
  msgstr ""
2977
 
2978
- #: class/subscription.php:742 class/subscription.php:746
2979
  msgid "Please buy a subscription pack to post"
2980
  msgstr ""
2981
 
2982
- #: class/subscription.php:760
2983
  msgid "<p><i>You have a subscription pack activated. </i></p>"
2984
  msgstr ""
2985
 
2986
- #: class/subscription.php:764
2987
  msgid "<p><i>To cancel the pack, press the following cancel button</i></p>"
2988
  msgstr ""
2989
 
2990
- #: class/subscription.php:824
2991
  msgid "Every"
2992
  msgstr ""
2993
 
2994
- #: class/subscription.php:828
2995
  msgid "One time payment"
2996
  msgstr ""
2997
 
2998
- #: class/subscription.php:840
2999
  msgid "Sign Up"
3000
  msgstr ""
3001
 
3002
- #: class/subscription.php:845
3003
  msgid "Buy Now"
3004
  msgstr ""
3005
 
3006
- #: class/subscription.php:910
3007
  msgid "There is a <strong>%s</strong> charge to add a new post."
3008
  msgstr ""
3009
 
3010
- #: class/subscription.php:922
3011
  msgid ""
3012
  "Your Subscription pack exhausted. There is a <strong>%s</strong> charge to "
3013
  "add a new post."
3014
  msgstr ""
3015
 
3016
- #: class/subscription.php:966
3017
  msgid "You must <a href=\"%s\">purchase a pack</a> before posting"
3018
  msgstr ""
3019
 
@@ -3136,10 +3313,160 @@ msgstr ""
3136
  msgid "Expire date"
3137
  msgstr ""
3138
 
3139
- #: includes/class-list-table-subscribers.php:155
3140
  msgid "Completed"
3141
  msgstr ""
3142
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3143
  #: includes/class-user-subscription.php:56
3144
  msgid "You must purchase a pack before posting"
3145
  msgstr ""
@@ -3148,27 +3475,27 @@ msgstr ""
3148
  msgid "The subscription pack has been expired. Please buy a pack."
3149
  msgstr ""
3150
 
3151
- #: includes/class-user-subscription.php:305
3152
  #: templates/dashboard/subscription.php:2
3153
  msgid "Subscription Details"
3154
  msgstr ""
3155
 
3156
- #: includes/class-user-subscription.php:307
3157
  #: templates/dashboard/subscription.php:4
3158
  msgid "Subcription Name: "
3159
  msgstr ""
3160
 
3161
- #: includes/class-user-subscription.php:309
3162
  #: templates/dashboard/subscription.php:6
3163
  msgid "Package & billing details: "
3164
  msgstr ""
3165
 
3166
- #: includes/class-user-subscription.php:320
3167
  #: templates/dashboard/subscription.php:10
3168
  msgid "Remaining post: "
3169
  msgstr ""
3170
 
3171
- #: includes/class-user-subscription.php:333
3172
  #: templates/dashboard/subscription.php:24
3173
  msgid "Unlimited"
3174
  msgstr ""
@@ -3257,16 +3584,6 @@ msgstr ""
3257
  msgid " Add Form"
3258
  msgstr ""
3259
 
3260
- #: includes/free/class-login.php:208 includes/free/class-login.php:264
3261
- #: templates/login-form.php:35
3262
- msgid "Log In"
3263
- msgstr ""
3264
-
3265
- #: includes/free/class-login.php:212 includes/free/class-registration.php:124
3266
- #: includes/free/form-element.php:345 templates/registration-form.php:72
3267
- msgid "Register"
3268
- msgstr ""
3269
-
3270
  #: includes/free/class-login.php:216
3271
  msgid "Lost Password"
3272
  msgstr ""
@@ -3363,22 +3680,6 @@ msgstr ""
3363
  msgid "Someone requested that the password be reset for the following account:"
3364
  msgstr ""
3365
 
3366
- #: includes/free/class-login.php:682
3367
- msgid "Username: %s"
3368
- msgstr ""
3369
-
3370
- #: includes/free/class-login.php:683
3371
- msgid "If this was a mistake, just ignore this email and nothing will happen."
3372
- msgstr ""
3373
-
3374
- #: includes/free/class-login.php:684
3375
- msgid "To reset your password, visit the following address:"
3376
- msgstr ""
3377
-
3378
- #: includes/free/class-login.php:693
3379
- msgid "[%s] Password Reset"
3380
- msgstr ""
3381
-
3382
  #: includes/free/class-login.php:698
3383
  msgid "The e-mail could not be sent."
3384
  msgstr ""
@@ -3420,12 +3721,6 @@ msgstr ""
3420
  msgid "<strong>Success</strong>: Profile updated"
3421
  msgstr ""
3422
 
3423
- #: includes/free/edit-profile.php:101 includes/free/edit-user.php:92
3424
- #: includes/free/edit-user.php:144 templates/login-form.php:21
3425
- #: templates/registration-form.php:51
3426
- msgid "Username"
3427
- msgstr ""
3428
-
3429
  #: includes/free/edit-profile.php:102
3430
  msgid "Usernames cannot be changed."
3431
  msgstr ""
@@ -3472,7 +3767,7 @@ msgid ""
3472
  "be shown publicly."
3473
  msgstr ""
3474
 
3475
- #: includes/free/edit-profile.php:188
3476
  msgid "New Password"
3477
  msgstr ""
3478
 
@@ -3489,6 +3784,7 @@ msgid "Password Strength"
3489
  msgstr ""
3490
 
3491
  #: includes/free/edit-profile.php:227 includes/free/form-element.php:346
 
3492
  msgid "Update Profile"
3493
  msgstr ""
3494
 
@@ -3632,10 +3928,6 @@ msgstr ""
3632
  msgid "Learn more about Email Notification"
3633
  msgstr ""
3634
 
3635
- #: includes/free/form-element.php:224 includes/free/form-element.php:261
3636
- msgid "To"
3637
- msgstr ""
3638
-
3639
  #: includes/free/form-element.php:231 includes/free/form-element.php:266
3640
  msgid "Subject"
3641
  msgstr ""
@@ -3786,7 +4078,7 @@ msgstr ""
3786
  msgid "You don't have permission to install the plugins"
3787
  msgstr ""
3788
 
3789
- #: lib/class.settings-api.php:364
3790
  msgid "Choose File"
3791
  msgstr ""
3792
 
@@ -3873,15 +4165,15 @@ msgstr ""
3873
  msgid "Email Address "
3874
  msgstr ""
3875
 
3876
- #: templates/dashboard/edit-profile.php:37
3877
  msgid "Current Password"
3878
  msgstr ""
3879
 
3880
- #: templates/dashboard/edit-profile.php:42
3881
- msgid "If you want to unchanged the password then just leave this section."
3882
  msgstr ""
3883
 
3884
- #: templates/dashboard/edit-profile.php:63
3885
  msgid "Confirm New Password"
3886
  msgstr ""
3887
 
@@ -3941,18 +4233,6 @@ msgstr ""
3941
  msgid "You are currently logged in! %s?"
3942
  msgstr ""
3943
 
3944
- #: templates/login-form.php:25 templates/registration-form.php:58
3945
- msgid "Password"
3946
- msgstr ""
3947
-
3948
- #: templates/login-form.php:31
3949
- msgid "Remember Me"
3950
- msgstr ""
3951
-
3952
- #: templates/lost-pass-form.php:14
3953
- msgid "Username or E-mail:"
3954
- msgstr ""
3955
-
3956
  #: templates/lost-pass-form.php:21
3957
  msgid "Get New Password"
3958
  msgstr ""
@@ -3969,10 +4249,6 @@ msgstr ""
3969
  msgid "Confirm new password"
3970
  msgstr ""
3971
 
3972
- #: templates/reset-pass-form.php:26
3973
- msgid "Reset Password"
3974
- msgstr ""
3975
-
3976
  #: views/welcome-page.php:445 views/welcome-page.php:586
3977
  msgid "Create Your First Form"
3978
  msgstr ""
@@ -4261,7 +4537,7 @@ msgstr ""
4261
  msgid "Your Post Has Been Expired"
4262
  msgstr ""
4263
 
4264
- #: wpuf.php:623
4265
  msgid "Error: Nonce verification failed"
4266
  msgstr ""
4267
 
1
+ # Copyright (C) 2018 Tareq Hasan
2
  # This file is distributed under the GPL2 or later.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: WP User Frontend 2.8.0\n"
6
  "Report-Msgid-Bugs-To: https://wedevs.com/contact/\n"
7
+ "POT-Creation-Date: 2018-01-06 15:58:06+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
+ "PO-Revision-Date: 2018-MO-DA HO:MI+ZONE\n"
12
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
  "Language-Team: LANGUAGE <EMAIL@ADDRESS>\n"
14
  "X-Generator: grunt-wp-i18n 0.5.4\n"
137
 
138
  #: admin/class-admin-subscription.php:206
139
  #: admin/class-admin-subscription.php:560 class/frontend-account.php:134
140
+ #: class/subscription.php:844 class/subscription.php:857
141
+ #: includes/class-user-subscription.php:301
142
  msgid "Free"
143
  msgstr ""
144
 
147
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:140
148
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:526
149
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:584
150
+ #: admin/post-forms-list-table.php:345 admin/settings-options.php:101
151
+ #: admin/settings-options.php:193 admin/settings-options.php:204
152
+ #: admin/settings-options.php:263 admin/settings-options.php:274
153
+ #: admin/settings-options.php:285 admin/template.php:70
154
  #: includes/free/form-element.php:477
155
  msgid "Yes"
156
  msgstr ""
160
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:141
161
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:527
162
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:585
163
+ #: admin/post-forms-list-table.php:346 admin/settings-options.php:102
164
+ #: admin/settings-options.php:194 admin/settings-options.php:205
165
+ #: admin/settings-options.php:264 admin/settings-options.php:275
166
+ #: admin/settings-options.php:286 admin/template.php:71
167
  #: includes/free/form-element.php:478
168
  msgid "No"
169
  msgstr ""
170
 
171
+ #: admin/class-admin-subscription.php:315 admin/form.php:230
172
  msgid "Payment Settings"
173
  msgstr ""
174
 
188
  msgid "Expires In:"
189
  msgstr ""
190
 
191
+ #: admin/class-admin-subscription.php:369 admin/form.php:232
192
  #: includes/free/form-element.php:56
193
  msgid "Post Expiration"
194
  msgstr ""
202
  msgid "Post Expiration Time"
203
  msgstr ""
204
 
205
+ #: admin/class-admin-subscription.php:411 admin/html/form-settings-post.php:57
206
  #: admin/post-forms-list-table.php:298
207
  msgid "Post Status"
208
  msgstr ""
268
  msgstr ""
269
 
270
  #: admin/class-admin-subscription.php:639
271
+ #: includes/class-user-subscription.php:355
272
  #: templates/dashboard/subscription.php:41
273
  msgid "Expire date:"
274
  msgstr ""
286
  msgstr ""
287
 
288
  #: admin/class-admin-subscription.php:746
289
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:329
290
+ #: class/payment.php:168 class/subscription.php:771
291
+ #: includes/class-list-table-subscribers.php:128
292
  #: templates/dashboard/subscription.php:62
293
  msgid "Cancel"
294
  msgstr ""
319
 
320
  #: admin/class-tools.php:39 admin/class-tools.php:95
321
  #: admin/post-forms-list-table.php:43 class/transactions-list-table.php:85
322
+ #: includes/class-list-table-subscribers.php:126
323
  msgid "All"
324
  msgstr ""
325
 
494
 
495
  #: admin/form-builder/assets/js/components/form-featured_image/template.php:5
496
  #: admin/form-builder/assets/js/components/form-image_upload/template.php:5
497
+ #: class/render-form.php:1585
498
  msgid "Select Image"
499
  msgstr ""
500
 
501
  #: admin/form-builder/assets/js/components/form-post_content/template.php:4
502
+ #: class/render-form.php:998
503
  msgid "Insert Photo"
504
  msgstr ""
505
 
515
  msgid "Invalid form id"
516
  msgstr ""
517
 
518
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:287
519
  msgid "Custom Fields"
520
  msgstr ""
521
 
522
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:308
523
  msgid "Others"
524
  msgstr ""
525
 
526
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:324
527
  msgid "Advanced Options"
528
  msgstr ""
529
 
530
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:325
531
  msgid "Are you sure you want to delete this field?"
532
  msgstr ""
533
 
534
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:326
535
  msgid "Yes, delete it"
536
  msgstr ""
537
 
538
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:327
539
  msgid "No, cancel it"
540
  msgstr ""
541
 
542
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:328
543
  msgid "OK"
544
  msgstr ""
545
 
546
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:330
547
  #: includes/free/admin/shortcode-builder.php:69
548
  msgid "Close"
549
  msgstr ""
550
 
551
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:331
552
  msgid "This field must contain at least one choice"
553
  msgstr ""
554
 
555
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:332
556
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:454
557
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:497
558
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:556
560
  msgid "Option"
561
  msgstr ""
562
 
563
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:333
564
  msgid "Column"
565
  msgstr ""
566
 
567
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:334
568
  msgid "This field must contain at least one column"
569
  msgstr ""
570
 
571
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:335
572
  msgid "is available in Pro version"
573
  msgstr ""
574
 
575
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:336
576
  msgid "Please upgrade to the Pro version to unlock all these awesome features"
577
  msgstr ""
578
 
579
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:337
580
  msgid "Get the Pro version"
581
  msgstr ""
582
 
583
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:338 admin/form.php:770
584
  msgid "Select"
585
  msgstr ""
586
 
587
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:339
588
  msgid "Saved form data"
589
  msgstr ""
590
 
591
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:340
592
  msgid "You have unsaved changes."
593
  msgstr ""
594
 
595
+ #: admin/form-builder/class-wpuf-admin-form-builder.php:341
596
  #: admin/form-builder/views/form-builder.php:45
597
  msgid "Click to copy shortcode"
598
  msgstr ""
827
 
828
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:483
829
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:490
830
+ #: admin/form.php:771 admin/template-post.php:157
831
  msgid "Multi Select"
832
  msgstr ""
833
 
850
  msgstr ""
851
 
852
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:599
853
+ #: admin/form.php:772 admin/template-post.php:158
854
  msgid "Checkbox"
855
  msgstr ""
856
 
868
  msgstr ""
869
 
870
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:682
871
+ #: admin/html/form-submission-restriction.php:12 admin/html/support.php:224
872
  #: class/transactions-list-table.php:48 includes/free/edit-user.php:152
873
  #: templates/registration-form.php:44
874
  msgid "Email"
889
  msgstr ""
890
 
891
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:762
892
+ #: admin/form.php:686 admin/template-post.php:105 admin/template.php:646
893
  msgid "Max. file size"
894
  msgstr ""
895
 
896
  #: admin/form-builder/class-wpuf-form-builder-field-settings.php:766
897
+ #: admin/form.php:690 admin/template-post.php:93 admin/template.php:634
898
  msgid "Enter maximum upload size limit in KB"
899
  msgstr ""
900
 
1130
  msgid "Edit Settings"
1131
  msgstr ""
1132
 
1133
+ #: admin/form.php:229
1134
+ msgid "Submission Restriction"
1135
+ msgstr ""
1136
+
1137
+ #: admin/form.php:231
1138
  msgid "Display Settings"
1139
  msgstr ""
1140
 
1141
+ #: admin/form.php:294 admin/form.php:298
1142
  msgid "- Select -"
1143
  msgstr ""
1144
 
1145
+ #: admin/form.php:332
1146
  msgid "Post Fields"
1147
  msgstr ""
1148
 
1149
+ #: admin/form.php:338
1150
  msgid "Taxonomies"
1151
  msgstr ""
1152
 
1153
+ #: admin/form.php:440 admin/html/form-settings-post.php:22
1154
+ #: class/render-form.php:702
1155
  msgid "Save Draft"
1156
  msgstr ""
1157
 
1158
+ #: admin/form.php:550 admin/form.php:557
1159
  msgid "Post Title"
1160
  msgstr ""
1161
 
1162
+ #: admin/form.php:589 admin/template-post.php:41
1163
  msgid "Enable Image Insertion"
1164
  msgstr ""
1165
 
1166
+ #: admin/form.php:591 admin/template-post.php:47
1167
  msgid "Enable image upload in post area"
1168
  msgstr ""
1169
 
1170
+ #: admin/form.php:600 admin/form.php:607
1171
  msgid "Post Body"
1172
  msgstr ""
1173
 
1174
+ #: admin/form.php:646 admin/form.php:653 templates/dashboard.php:99
1175
  msgid "Excerpt"
1176
  msgstr ""
1177
 
1178
+ #: admin/form.php:696 admin/form.php:703 templates/dashboard/posts.php:72
1179
  #: templates/dashboard.php:70
1180
  msgid "Featured Image"
1181
  msgstr ""
1182
 
1183
+ #: admin/form.php:731 admin/form.php:737
1184
  msgid "Tags"
1185
  msgstr ""
1186
 
1187
+ #: admin/form.php:767 admin/template-post.php:154
1188
  msgid "Type"
1189
  msgstr ""
1190
 
1191
+ #: admin/form.php:773 admin/template-post.php:159
1192
  msgid "Text Input"
1193
  msgstr ""
1194
 
1195
+ #: admin/form.php:774 admin/template-post.php:160
1196
  msgid "Ajax"
1197
  msgstr ""
1198
 
1199
+ #: admin/form.php:783 admin/template-post.php:165
1200
  msgid "Order By"
1201
  msgstr ""
1202
 
1203
+ #: admin/form.php:786 admin/html/form-submission-restriction.php:11
1204
  #: admin/template-post.php:167 includes/free/edit-profile.php:97
1205
  #: templates/registration-form.php:27
1206
  msgid "Name"
1207
  msgstr ""
1208
 
1209
+ #: admin/form.php:787 admin/template-post.php:168
1210
  msgid "Term ID"
1211
  msgstr ""
1212
 
1213
+ #: admin/form.php:788 admin/template-post.php:169
1214
  msgid "Slug"
1215
  msgstr ""
1216
 
1217
+ #: admin/form.php:789 admin/template-post.php:170
1218
  msgid "Count"
1219
  msgstr ""
1220
 
1221
+ #: admin/form.php:790 admin/template-post.php:171
1222
  msgid "Term Group"
1223
  msgstr ""
1224
 
1225
+ #: admin/form.php:799 admin/template-post.php:176
1226
  msgid "Order"
1227
  msgstr ""
1228
 
1229
+ #: admin/form.php:803 admin/template-post.php:178
1230
  msgid "ASC"
1231
  msgstr ""
1232
 
1233
+ #: admin/form.php:804 admin/template-post.php:179
1234
  msgid "DESC"
1235
  msgstr ""
1236
 
1237
+ #: admin/form.php:813 admin/template-post.php:184
1238
  msgid "Selection Type"
1239
  msgstr ""
1240
 
1241
+ #: admin/form.php:816 admin/template-post.php:186
1242
  msgid "Exclude"
1243
  msgstr ""
1244
 
1245
+ #: admin/form.php:817 admin/template-post.php:187
1246
  msgid "Include"
1247
  msgstr ""
1248
 
1249
+ #: admin/form.php:818 admin/template-post.php:188
1250
  msgid "Child of"
1251
  msgstr ""
1252
 
1253
+ #: admin/form.php:827
1254
  msgid "Selection Terms"
1255
  msgstr ""
1256
 
1257
+ #: admin/form.php:831 admin/template-post.php:194
1258
  msgid ""
1259
  "Enter the term IDs as comma separated (without space) to exclude/include in "
1260
  "the form."
1261
  msgstr ""
1262
 
1263
+ #: admin/form.php:839 admin/template-post.php:204
1264
  msgid "This taxonomy is a WooCommerce attribute"
1265
  msgstr ""
1266
 
1267
+ #: admin/form.php:850 admin/template-post.php:216
1268
  msgid "Visible on product page"
1269
  msgstr ""
1270
 
1271
+ #: admin/form.php:900
1272
  msgid "Post Forms must have either Post Title, Post Body or Excerpt field"
1273
  msgstr ""
1274
 
1361
  msgstr ""
1362
 
1363
  #: admin/html/form-settings-post-edit.php:4
1364
+ #: admin/html/form-settings-post.php:16
1365
  msgid "Post updated successfully"
1366
  msgstr ""
1367
 
1378
  msgstr ""
1379
 
1380
  #: admin/html/form-settings-post-edit.php:30
1381
+ #: admin/html/form-settings-post.php:106 includes/free/form-element.php:376
1382
  msgid "Redirect To"
1383
  msgstr ""
1384
 
1385
  #: admin/html/form-settings-post-edit.php:35
1386
+ #: admin/html/form-settings-post.php:111
1387
  msgid "Newly created post"
1388
  msgstr ""
1389
 
1390
  #: admin/html/form-settings-post-edit.php:36
1391
+ #: admin/html/form-settings-post.php:112 includes/free/form-element.php:381
1392
  msgid "Same Page"
1393
  msgstr ""
1394
 
1395
  #: admin/html/form-settings-post-edit.php:37
1396
+ #: admin/html/form-settings-post.php:113 includes/free/form-element.php:382
1397
  msgid "To a page"
1398
  msgstr ""
1399
 
1400
  #: admin/html/form-settings-post-edit.php:38
1401
+ #: admin/html/form-settings-post.php:114 includes/free/form-element.php:383
1402
  msgid "To a custom URL"
1403
  msgstr ""
1404
 
1405
  #: admin/html/form-settings-post-edit.php:47
1406
+ #: admin/html/form-settings-post.php:123 includes/free/form-element.php:392
1407
  msgid "After successfull submit, where the page will redirect to"
1408
  msgstr ""
1409
 
1412
  msgstr ""
1413
 
1414
  #: admin/html/form-settings-post-edit.php:60
1415
+ #: admin/html/form-settings-post.php:136 includes/free/form-element.php:412
1416
  msgid "Page"
1417
  msgstr ""
1418
 
1419
  #: admin/html/form-settings-post-edit.php:75
1420
+ #: admin/html/form-settings-post.php:151 includes/free/form-element.php:427
1421
  msgid "Custom URL"
1422
  msgstr ""
1423
 
1433
  msgid "This page is restricted. Please Log in / Register to view this page."
1434
  msgstr ""
1435
 
1436
+ #: admin/html/form-settings-post.php:15
1437
  msgid "Post saved"
1438
  msgstr ""
1439
 
1440
+ #: admin/html/form-settings-post.php:21
1441
  msgid "Submit"
1442
  msgstr ""
1443
 
1444
+ #: admin/html/form-settings-post.php:23
1445
  msgid "Preview"
1446
  msgstr ""
1447
 
1448
+ #: admin/html/form-settings-post.php:30 admin/post-forms-list-table.php:297
1449
  msgid "Post Type"
1450
  msgstr ""
1451
 
1452
+ #: admin/html/form-settings-post.php:52
1453
  msgid "Custom Post Type will appear here. "
1454
  msgstr ""
1455
 
1456
+ #: admin/html/form-settings-post.php:52
1457
  msgid "Learn More "
1458
  msgstr ""
1459
 
1460
+ #: admin/html/form-settings-post.php:71
1461
  msgid "Post Format"
1462
  msgstr ""
1463
 
1464
+ #: admin/html/form-settings-post.php:74 admin/html/form-settings-post.php:97
1465
  msgid "- None -"
1466
  msgstr ""
1467
 
1468
+ #: admin/html/form-settings-post.php:89
1469
  msgid "Default Post Category"
1470
  msgstr ""
1471
 
1472
+ #: admin/html/form-settings-post.php:101
1473
  msgid ""
1474
  "If users are not allowed to choose any category, this category will be used "
1475
  "instead (if post type supports)"
1476
  msgstr ""
1477
 
1478
+ #: admin/html/form-settings-post.php:129
1479
+ msgid "Message to show"
1480
+ msgstr ""
1481
+
1482
+ #: admin/html/form-settings-post.php:158
1483
+ msgid "Comment Status"
1484
+ msgstr ""
1485
+
1486
+ #: admin/html/form-settings-post.php:161
1487
+ msgid "Open"
1488
+ msgstr ""
1489
+
1490
+ #: admin/html/form-settings-post.php:162
1491
+ msgid "Closed"
1492
+ msgstr ""
1493
+
1494
+ #: admin/html/form-settings-post.php:168
1495
+ msgid "Submit Post Button text"
1496
+ msgstr ""
1497
+
1498
+ #: admin/html/form-settings-post.php:175
1499
+ msgid "Post Draft"
1500
+ msgstr ""
1501
+
1502
+ #: admin/html/form-settings-post.php:180
1503
+ msgid "Enable Saving as draft"
1504
+ msgstr ""
1505
+
1506
+ #: admin/html/form-settings-post.php:182
1507
+ msgid "It will show a button to save as draft"
1508
+ msgstr ""
1509
+
1510
+ #: admin/html/form-submission-restriction.php:29
1511
+ #: admin/post-forms-list-table.php:299
1512
  msgid "Guest Post"
1513
  msgstr ""
1514
 
1515
+ #: admin/html/form-submission-restriction.php:34
1516
  msgid "Enable Guest Post"
1517
  msgstr ""
1518
 
1519
+ #: admin/html/form-submission-restriction.php:36
1520
  msgid "Unregistered users will be able to submit posts"
1521
  msgstr ""
1522
 
1523
+ #: admin/html/form-submission-restriction.php:36
1524
  msgid "Learn more about guest posting."
1525
  msgstr ""
1526
 
1527
+ #: admin/html/form-submission-restriction.php:41
1528
  msgid "User Details"
1529
  msgstr ""
1530
 
1531
+ #: admin/html/form-submission-restriction.php:46
1532
  msgid "Require Name and Email address"
1533
  msgstr ""
1534
 
1535
+ #: admin/html/form-submission-restriction.php:48
1536
  msgid ""
1537
  "If requires, users will be automatically registered to the site using the "
1538
  "name and email address"
1539
  msgstr ""
1540
 
1541
+ #: admin/html/form-submission-restriction.php:53
1542
+ msgid "Name Label"
1543
+ msgstr ""
1544
+
1545
+ #: admin/html/form-submission-restriction.php:58
1546
+ msgid "Label text for name field"
1547
+ msgstr ""
1548
+
1549
+ #: admin/html/form-submission-restriction.php:63
1550
+ msgid "E-Mail Label"
1551
+ msgstr ""
1552
+
1553
+ #: admin/html/form-submission-restriction.php:68
1554
+ msgid "Label text for email field"
1555
+ msgstr ""
1556
+
1557
+ #: admin/html/form-submission-restriction.php:73
1558
  msgid "Email Verification"
1559
  msgstr ""
1560
 
1561
+ #: admin/html/form-submission-restriction.php:77
1562
  msgid "Require Email Verification for Guests"
1563
  msgstr ""
1564
 
1565
+ #: admin/html/form-submission-restriction.php:79
1566
  msgid "If requires, users will be required to verify their email adress."
1567
  msgstr ""
1568
 
1569
+ #: admin/html/form-submission-restriction.php:84
1570
+ msgid "Role Base"
1571
  msgstr ""
1572
 
1573
+ #: admin/html/form-submission-restriction.php:89
1574
+ msgid "Enable role base post"
1575
  msgstr ""
1576
 
1577
+ #: admin/html/form-submission-restriction.php:91
1578
+ msgid "You can choose which role can submit posts by this form."
1579
  msgstr ""
1580
 
1581
+ #: admin/html/form-submission-restriction.php:96
1582
+ msgid "Roles"
1583
  msgstr ""
1584
 
1585
+ #: admin/html/form-submission-restriction.php:109
1586
+ msgid "Choose which roles can submit posts."
1587
+ msgstr ""
1588
+
1589
+ #: admin/html/form-submission-restriction.php:114
1590
+ #: admin/settings-options.php:250
1591
  msgid "Unauthorized Message"
1592
  msgstr ""
1593
 
1594
+ #: admin/html/form-submission-restriction.php:117
1595
+ #: admin/settings-options.php:251
1596
  msgid "Not logged in users will see this message"
1597
  msgstr ""
1598
 
1599
+ #: admin/html/form-submission-restriction.php:122
1600
+ msgid "Schedule form"
1601
  msgstr ""
1602
 
1603
+ #: admin/html/form-submission-restriction.php:127
1604
+ msgid "Schedule form for a period"
1605
  msgstr ""
1606
 
1607
+ #: admin/html/form-submission-restriction.php:129
1608
+ msgid "Schedule for a time period the form is active."
1609
  msgstr ""
1610
 
1611
+ #: admin/html/form-submission-restriction.php:134
1612
+ msgid "Schedule Period"
1613
  msgstr ""
1614
 
1615
+ #: admin/html/form-submission-restriction.php:137
1616
+ msgid "From"
1617
  msgstr ""
1618
 
1619
+ #: admin/html/form-submission-restriction.php:141
1620
+ #: includes/free/form-element.php:224 includes/free/form-element.php:261
1621
+ msgid "To"
1622
  msgstr ""
1623
 
1624
+ #: admin/html/form-submission-restriction.php:148
1625
+ msgid "Form Pending Message"
1626
  msgstr ""
1627
 
1628
+ #: admin/html/form-submission-restriction.php:155
1629
+ msgid "Form Expired Message"
1630
+ msgstr ""
1631
+
1632
+ #: admin/html/form-submission-restriction.php:162
1633
+ msgid "Limit Entries"
1634
+ msgstr ""
1635
+
1636
+ #: admin/html/form-submission-restriction.php:167
1637
+ msgid "Enable form entry limit"
1638
+ msgstr ""
1639
+
1640
+ #: admin/html/form-submission-restriction.php:171
1641
+ msgid "Limit the number of entries allowed for this form"
1642
+ msgstr ""
1643
+
1644
+ #: admin/html/form-submission-restriction.php:177
1645
+ msgid "Number of Entries"
1646
+ msgstr ""
1647
+
1648
+ #: admin/html/form-submission-restriction.php:184
1649
+ msgid "Limit Reached Message"
1650
  msgstr ""
1651
 
1652
  #: admin/html/modal.php:4
1807
  msgid "Contact Support"
1808
  msgstr ""
1809
 
1810
+ #: admin/html/whats-new.php:8
1811
+ msgid "Manage schedule for form submission"
1812
+ msgstr ""
1813
+
1814
+ #: admin/html/whats-new.php:10
1815
+ msgid ""
1816
+ "Do not accept form submission if the current date is not between the date "
1817
+ "range of the schedule."
1818
+ msgstr ""
1819
+
1820
+ #: admin/html/whats-new.php:14
1821
+ msgid "Restrict form submission based on the user roles"
1822
+ msgstr ""
1823
+
1824
+ #: admin/html/whats-new.php:16
1825
+ msgid ""
1826
+ "Restrict form submission based on the user roles. Now you can manage user "
1827
+ "role base permission on form submission."
1828
+ msgstr ""
1829
+
1830
+ #: admin/html/whats-new.php:20
1831
+ msgid "Limit how many entries a form will accept"
1832
+ msgstr ""
1833
+
1834
+ #: admin/html/whats-new.php:22
1835
+ msgid ""
1836
+ "Limit how many entries a form will accept and display a custom message when "
1837
+ "that limit is reached."
1838
+ msgstr ""
1839
+
1840
+ #: admin/html/whats-new.php:26
1841
+ msgid "Show/hide Admin Bar"
1842
+ msgstr ""
1843
+
1844
+ #: admin/html/whats-new.php:28
1845
+ msgid "Control the admin bar visibility based on user roles."
1846
+ msgstr ""
1847
+
1848
+ #: admin/html/whats-new.php:32
1849
+ msgid "Ajax Login widget"
1850
+ msgstr ""
1851
+
1852
+ #: admin/html/whats-new.php:34
1853
+ msgid ""
1854
+ "Login user is more simple now with Ajax Login Widget. The simple ajax login "
1855
+ "form do not required page loading for login."
1856
+ msgstr ""
1857
+
1858
+ #: admin/html/whats-new.php:38
1859
+ msgid "Form submission with Captcha field"
1860
+ msgstr ""
1861
+
1862
+ #: admin/html/whats-new.php:40
1863
+ msgid "Form field validation process updated if form submits with captcha field."
1864
+ msgstr ""
1865
+
1866
+ #: admin/html/whats-new.php:54
1867
  msgid "What's New in WPUF?"
1868
  msgstr ""
1869
 
1896
  msgid "Account"
1897
  msgstr ""
1898
 
1899
+ #: admin/installer.php:78 includes/class-login-widget.php:235
1900
+ #: includes/free/admin/shortcode-button.php:94
1901
  msgid "Login"
1902
  msgstr ""
1903
 
1998
  msgid "Draft"
1999
  msgstr ""
2000
 
2001
+ #: admin/posting.php:66 class/asset-loader.php:51 class/render-form.php:1597
2002
+ #: wpuf.php:481
2003
  msgid "Are you sure?"
2004
  msgstr ""
2005
 
2006
+ #: admin/posting.php:72 class/asset-loader.php:57 wpuf.php:489
2007
  msgid "Allowed Files"
2008
  msgstr ""
2009
 
2010
+ #: admin/posting.php:75 class/asset-loader.php:60 wpuf.php:495
2011
  msgid "Maximum number of files reached!"
2012
  msgstr ""
2013
 
2014
+ #: admin/posting.php:76 class/asset-loader.php:61 wpuf.php:496
2015
  msgid "The file you have uploaded exceeds the file size limit. Please try again."
2016
  msgstr ""
2017
 
2018
+ #: admin/posting.php:77 class/asset-loader.php:62 wpuf.php:497
2019
  msgid "You have uploaded an incorrect file type. Please try again."
2020
  msgstr ""
2021
 
2334
  msgstr ""
2335
 
2336
  #: admin/settings-options.php:69
2337
+ msgid "Show Admin Bar"
2338
  msgstr ""
2339
 
2340
  #: admin/settings-options.php:70
2341
+ msgid "Select user by roles, who can view admin bar in frontend."
2342
+ msgstr ""
2343
+
2344
+ #: admin/settings-options.php:73
2345
+ msgid "Administrator"
2346
  msgstr ""
2347
 
2348
  #: admin/settings-options.php:74
2349
+ msgid "Editor"
2350
  msgstr ""
2351
 
2352
  #: admin/settings-options.php:75
2353
+ msgid "Author"
2354
  msgstr ""
2355
 
2356
  #: admin/settings-options.php:76
2357
+ msgid "Contributor"
2358
+ msgstr ""
2359
+
2360
+ #: admin/settings-options.php:82
2361
+ msgid "Admin area access"
2362
+ msgstr ""
2363
+
2364
+ #: admin/settings-options.php:83
2365
+ msgid "Allow you to block specific user role to Ajax request and Media upload."
2366
+ msgstr ""
2367
+
2368
+ #: admin/settings-options.php:87
2369
+ msgid "Admin Only"
2370
+ msgstr ""
2371
+
2372
+ #: admin/settings-options.php:88
2373
+ msgid "Admins, Editors"
2374
+ msgstr ""
2375
+
2376
+ #: admin/settings-options.php:89
2377
  msgid "Admins, Editors, Authors"
2378
  msgstr ""
2379
 
2380
+ #: admin/settings-options.php:90
2381
  msgid "Admins, Editors, Authors, Contributors"
2382
  msgstr ""
2383
 
2384
+ #: admin/settings-options.php:91
2385
  msgid "Default"
2386
  msgstr ""
2387
 
2388
+ #: admin/settings-options.php:96
2389
  msgid "Override the post edit link"
2390
  msgstr ""
2391
 
2392
+ #: admin/settings-options.php:97
2393
  msgid ""
2394
  "Users see the edit link in post if s/he is capable to edit the post/page. "
2395
  "Selecting <strong>Yes</strong> will override the default WordPress edit "
2396
  "post link in frontend"
2397
  msgstr ""
2398
 
2399
+ #: admin/settings-options.php:107
2400
  msgid "Load Scripts"
2401
  msgstr ""
2402
 
2403
+ #: admin/settings-options.php:108
2404
  msgid "Load scripts/styles in all pages"
2405
  msgstr ""
2406
 
2407
+ #: admin/settings-options.php:114
2408
  msgid "reCAPTCHA Site Key"
2409
  msgstr ""
2410
 
2411
+ #: admin/settings-options.php:118
2412
  msgid "reCAPTCHA Secret Key"
2413
  msgstr ""
2414
 
2415
+ #: admin/settings-options.php:119
2416
  msgid ""
2417
  "<a target=\"_blank\" href=\"https://www.google.com/recaptcha/\">Register "
2418
  "here</a> to get reCaptcha Site and Secret keys."
2419
  msgstr ""
2420
 
2421
+ #: admin/settings-options.php:123
2422
  msgid "Custom CSS codes"
2423
  msgstr ""
2424
 
2425
+ #: admin/settings-options.php:124
2426
  msgid ""
2427
  "If you want to add your custom CSS code, it will be added on page header "
2428
  "wrapped with style tag"
2429
  msgstr ""
2430
 
2431
+ #: admin/settings-options.php:131
2432
  msgid "Edit Page"
2433
  msgstr ""
2434
 
2435
+ #: admin/settings-options.php:132
2436
  msgid "Select the page where <code>[wpuf_edit]</code> is located"
2437
  msgstr ""
2438
 
2439
+ #: admin/settings-options.php:138
2440
  msgid "Default Post Owner"
2441
  msgstr ""
2442
 
2443
+ #: admin/settings-options.php:139
2444
  msgid ""
2445
  "If guest post is enabled and user details are OFF, the posts are assigned "
2446
  "to this user"
2447
  msgstr ""
2448
 
2449
+ #: admin/settings-options.php:146
2450
  msgid "Custom Fields in post"
2451
  msgstr ""
2452
 
2453
+ #: admin/settings-options.php:147
2454
  msgid "Show custom fields on post content area"
2455
  msgstr ""
2456
 
2457
+ #: admin/settings-options.php:153
2458
  msgid "Insert Photo image size"
2459
  msgstr ""
2460
 
2461
+ #: admin/settings-options.php:154
2462
  msgid ""
2463
  "Default image size of \"<strong>Insert Photo</strong>\" button in post "
2464
  "content area"
2465
  msgstr ""
2466
 
2467
+ #: admin/settings-options.php:161
2468
  msgid "Insert Photo image type"
2469
  msgstr ""
2470
 
2471
+ #: admin/settings-options.php:162
2472
  msgid ""
2473
  "Default image type of \"<strong>Insert Photo</strong>\" button in post "
2474
  "content area"
2475
  msgstr ""
2476
 
2477
+ #: admin/settings-options.php:165
2478
  msgid "Image only"
2479
  msgstr ""
2480
 
2481
+ #: admin/settings-options.php:166
2482
  msgid "Image with link"
2483
  msgstr ""
2484
 
2485
+ #: admin/settings-options.php:172
2486
  msgid "Enable Image Caption"
2487
  msgstr ""
2488
 
2489
+ #: admin/settings-options.php:173
2490
  msgid "Allow users to update image/video title, caption and description"
2491
  msgstr ""
2492
 
2493
+ #: admin/settings-options.php:179
2494
  msgid "Default Post Form"
2495
  msgstr ""
2496
 
2497
+ #: admin/settings-options.php:180
2498
  msgid "Fallback form for post editing if no associated form found"
2499
  msgstr ""
2500
 
2501
+ #: admin/settings-options.php:188
2502
  msgid "Users can edit post?"
2503
  msgstr ""
2504
 
2505
+ #: admin/settings-options.php:189
2506
  msgid "Users will be able to edit their own posts"
2507
  msgstr ""
2508
 
2509
+ #: admin/settings-options.php:199
2510
  msgid "User can delete post?"
2511
  msgstr ""
2512
 
2513
+ #: admin/settings-options.php:200
2514
  msgid "Users will be able to delete their own posts"
2515
  msgstr ""
2516
 
2517
+ #: admin/settings-options.php:210
2518
  msgid "Pending Post Edit"
2519
  msgstr ""
2520
 
2521
+ #: admin/settings-options.php:211
2522
  msgid "Disable post editing while post in \"pending\" status"
2523
  msgstr ""
2524
 
2525
+ #: admin/settings-options.php:217
2526
  msgid "Posts per page"
2527
  msgstr ""
2528
 
2529
+ #: admin/settings-options.php:218
2530
  msgid "How many posts will be listed in a page"
2531
  msgstr ""
2532
 
2533
+ #: admin/settings-options.php:224
2534
  msgid "Show user bio"
2535
  msgstr ""
2536
 
2537
+ #: admin/settings-options.php:225
2538
  msgid "Users biographical info will be shown"
2539
  msgstr ""
2540
 
2541
+ #: admin/settings-options.php:231
2542
  msgid "Show post count"
2543
  msgstr ""
2544
 
2545
+ #: admin/settings-options.php:232
2546
  msgid "Show how many posts are created by the user"
2547
  msgstr ""
2548
 
2549
+ #: admin/settings-options.php:238
2550
  msgid "Show Featured Image"
2551
  msgstr ""
2552
 
2553
+ #: admin/settings-options.php:239
2554
  msgid "Show featured image of the post (Overridden by Shortcode)"
2555
  msgstr ""
2556
 
2557
+ #: admin/settings-options.php:244
2558
  msgid "Featured Image size"
2559
  msgstr ""
2560
 
2561
+ #: admin/settings-options.php:258
2562
  msgid "Show Subscriptions"
2563
  msgstr ""
2564
 
2565
+ #: admin/settings-options.php:259
2566
  msgid ""
2567
  "Show Subscriptions tab in \"my account\" page where "
2568
  "<code>[wpuf_account]</code> is located"
2569
  msgstr ""
2570
 
2571
+ #: admin/settings-options.php:269
2572
  msgid "Show Invoice"
2573
  msgstr ""
2574
 
2575
+ #: admin/settings-options.php:270
2576
  msgid ""
2577
  "Show Invoice tab in \"my account\" page where <code>[wpuf_account]</code> "
2578
  "is located"
2579
  msgstr ""
2580
 
2581
+ #: admin/settings-options.php:280
2582
  msgid "Show Billing Address"
2583
  msgstr ""
2584
 
2585
+ #: admin/settings-options.php:281
2586
  msgid ""
2587
  "Show Billing Address tab in \"my account\" page where "
2588
  "<code>[wpuf_account]</code> is located"
2589
  msgstr ""
2590
 
2591
+ #: admin/settings-options.php:293
2592
  msgid "Auto Login After Registration"
2593
  msgstr ""
2594
 
2595
+ #: admin/settings-options.php:294
2596
  msgid "If enabled, users after registration will be logged in to the system"
2597
  msgstr ""
2598
 
2599
+ #: admin/settings-options.php:300
2600
  msgid "Login/Registration override"
2601
  msgstr ""
2602
 
2603
+ #: admin/settings-options.php:301
2604
  msgid ""
2605
  "If enabled, default login and registration forms will be overridden by WPUF "
2606
  "with pages below"
2607
  msgstr ""
2608
 
2609
+ #: admin/settings-options.php:307
2610
  msgid "Registration Page"
2611
  msgstr ""
2612
 
2613
+ #: admin/settings-options.php:308
2614
  msgid ""
2615
  "Select the page you want to use as registration page override <em>(should "
2616
  "have shortcode)</em>"
2617
  msgstr ""
2618
 
2619
+ #: admin/settings-options.php:314
2620
  msgid "Login Page"
2621
  msgstr ""
2622
 
2623
+ #: admin/settings-options.php:315
2624
  msgid "Select the page which contains <code>[wpuf-login]</code> shortcode"
2625
  msgstr ""
2626
 
2627
+ #: admin/settings-options.php:323
2628
  msgid "Subscription Pack Page"
2629
  msgstr ""
2630
 
2631
+ #: admin/settings-options.php:324
2632
  msgid "Select the page where <code>[wpuf_sub_pack]</code> located."
2633
  msgstr ""
2634
 
2635
+ #: admin/settings-options.php:330
2636
  msgid "Subscription at registration"
2637
  msgstr ""
2638
 
2639
+ #: admin/settings-options.php:331
2640
  msgid "Registration time redirect to subscription page"
2641
  msgstr ""
2642
 
2643
+ #: admin/settings-options.php:336
2644
  msgid "Currency"
2645
  msgstr ""
2646
 
2647
+ #: admin/settings-options.php:343
2648
  msgid "Currency Position"
2649
  msgstr ""
2650
 
2651
+ #: admin/settings-options.php:347
2652
  msgid "Left"
2653
  msgstr ""
2654
 
2655
+ #: admin/settings-options.php:348
2656
  msgid "Right"
2657
  msgstr ""
2658
 
2659
+ #: admin/settings-options.php:349
2660
  msgid "Left with space"
2661
  msgstr ""
2662
 
2663
+ #: admin/settings-options.php:350
2664
  msgid "Right with space"
2665
  msgstr ""
2666
 
2667
+ #: admin/settings-options.php:355
2668
  msgid "Thousand Separator"
2669
  msgstr ""
2670
 
2671
+ #: admin/settings-options.php:356
2672
  msgid "This sets the thousand separator of displayed prices."
2673
  msgstr ""
2674
 
2675
+ #: admin/settings-options.php:364
2676
  msgid "Decimal Separator"
2677
  msgstr ""
2678
 
2679
+ #: admin/settings-options.php:365
2680
  msgid "This sets the decimal separator of displayed prices."
2681
  msgstr ""
2682
 
2683
+ #: admin/settings-options.php:372
2684
  msgid "Number of Decimals"
2685
  msgstr ""
2686
 
2687
+ #: admin/settings-options.php:373
2688
  msgid "This sets the number of decimal points shown in displayed prices."
2689
  msgstr ""
2690
 
2691
+ #: admin/settings-options.php:383
2692
  msgid "Enable demo/sandbox mode"
2693
  msgstr ""
2694
 
2695
+ #: admin/settings-options.php:384
2696
  msgid "When sandbox mode is active, all payment gateway will be used in demo mode"
2697
  msgstr ""
2698
 
2699
+ #: admin/settings-options.php:390
2700
  msgid "Payment Page"
2701
  msgstr ""
2702
 
2703
+ #: admin/settings-options.php:391
2704
  msgid "This page will be used to process payment options"
2705
  msgstr ""
2706
 
2707
+ #: admin/settings-options.php:397
2708
  msgid "Payment Success Page"
2709
  msgstr ""
2710
 
2711
+ #: admin/settings-options.php:398 lib/gateway/bank.php:37
2712
  msgid "After payment users will be redirected here"
2713
  msgstr ""
2714
 
2715
+ #: admin/settings-options.php:404
2716
  msgid "Payment Gateways"
2717
  msgstr ""
2718
 
2719
+ #: admin/settings-options.php:405
2720
  msgid "Active payment gateways"
2721
  msgstr ""
2722
 
2723
+ #: admin/settings-options.php:413
2724
+ msgid "Guest mail subject"
2725
  msgstr ""
2726
 
2727
+ #: admin/settings-options.php:414
2728
  msgid "This sets the subject of the emails sent to guest users"
2729
  msgstr ""
2730
 
2731
+ #: admin/settings-options.php:420
2732
+ msgid "Guest mail body"
2733
  msgstr ""
2734
 
2735
+ #: admin/settings-options.php:421
2736
  msgid ""
2737
  "This sets the body of the emails sent to guest users. Please DON'T edit the "
2738
  "<code>{activation_link}</code> part"
2739
  msgstr ""
2740
 
2741
+ #: admin/settings-options.php:444
2742
  msgid ""
2743
  "Select profile/registration forms for user roles. These forms will be used "
2744
  "to populate extra edit profile fields in backend."
2745
  msgstr ""
2746
 
2747
+ #: admin/settings-options.php:455
2748
  msgid " - select - "
2749
  msgstr ""
2750
 
2845
  msgid "Install Now"
2846
  msgstr ""
2847
 
2848
+ #: class/asset-loader.php:31 wpuf.php:413
2849
  msgid "is required"
2850
  msgstr ""
2851
 
2852
+ #: class/asset-loader.php:32 wpuf.php:414
2853
  msgid "does not match"
2854
  msgstr ""
2855
 
2856
+ #: class/asset-loader.php:33 wpuf.php:415
2857
  msgid "is not valid"
2858
  msgstr ""
2859
 
2860
+ #: class/asset-loader.php:45 wpuf.php:475
2861
  msgid "Please fix the errors to proceed"
2862
  msgstr ""
2863
 
2864
+ #: class/asset-loader.php:47 wpuf.php:477
2865
  msgid "Word limit reached"
2866
  msgstr ""
2867
 
2938
  msgid "Payment type not selected for this form. Please contact admin."
2939
  msgstr ""
2940
 
2941
+ #: class/frontend-form-post.php:176
2942
  msgid "You are not logged in"
2943
  msgstr ""
2944
 
2945
+ #: class/frontend-form-post.php:184 class/frontend-form-post.php:195
2946
  msgid "Invalid post"
2947
  msgstr ""
2948
 
2949
+ #: class/frontend-form-post.php:189
2950
  msgid "Post Editing is disabled"
2951
  msgstr ""
2952
 
2953
+ #: class/frontend-form-post.php:200
2954
  msgid "You are not allowed to edit"
2955
  msgstr ""
2956
 
2957
+ #: class/frontend-form-post.php:212
2958
  msgid "I don't know how to edit this post, I don't have the form ID"
2959
  msgstr ""
2960
 
2961
+ #: class/frontend-form-post.php:218
2962
  msgid "You can't edit a post while in pending mode."
2963
  msgstr ""
2964
 
2965
+ #: class/frontend-form-post.php:298
2966
+ msgid "Empty reCaptcha Field"
2967
+ msgstr ""
2968
+
2969
+ #: class/frontend-form-post.php:329
2970
  msgid "Invalid email address."
2971
  msgstr ""
2972
 
2973
+ #: class/frontend-form-post.php:338
2974
  msgid ""
2975
  "You already have an account in our site. Please login to continue.\n"
2976
  "\n"
2979
  "Click 'Cancel' to stay at this page."
2980
  msgstr ""
2981
 
2982
+ #: class/frontend-form-post.php:387
2983
+ msgid "You do not have sufficient permissions to access this form."
2984
+ msgstr ""
2985
+
2986
+ #: class/frontend-form-post.php:757
2987
  msgid "Something went wrong"
2988
  msgstr ""
2989
 
2990
+ #: class/frontend-form-post.php:1114
2991
  msgid "Email successfully verified. Please Login."
2992
  msgstr ""
2993
 
3068
  msgid "Really Simple Captcha validation failed"
3069
  msgstr ""
3070
 
3071
+ #: class/render-form.php:105
3072
+ msgid "noCaptcha reCAPTCHA validation failed"
3073
+ msgstr ""
3074
+
3075
+ #: class/render-form.php:116
3076
  msgid "reCAPTCHA validation failed"
3077
  msgstr ""
3078
 
3079
+ #: class/render-form.php:128
3080
+ msgid "Invisible reCAPTCHA validation failed"
3081
+ msgstr ""
3082
+
3083
+ #: class/render-form.php:340
3084
  msgid "Your selected form is no longer available."
3085
  msgstr ""
3086
 
3087
+ #: class/render-form.php:345
3088
  msgid "Please make sure you've published your form."
3089
  msgstr ""
3090
 
3091
+ #: class/render-form.php:1276 includes/free/edit-profile.php:203
3092
+ #: templates/dashboard/edit-profile.php:54
3093
  msgid "Strength indicator"
3094
  msgstr ""
3095
 
3096
+ #: class/render-form.php:1336 class/render-form.php:1452
3097
  msgid "-- Select --"
3098
  msgstr ""
3099
 
3100
+ #: class/render-form.php:1396
3101
  msgid "This field is no longer available."
3102
  msgstr ""
3103
 
3104
+ #: class/render-form.php:1597 class/transactions-list-table.php:114
3105
  #: class/transactions-list-table.php:178 class/upload.php:171
3106
  #: includes/free/edit-user.php:100 templates/dashboard/posts.php:161
3107
  #: templates/dashboard.php:222
3144
  msgid "Parent Subscription"
3145
  msgstr ""
3146
 
3147
+ #: class/subscription.php:739
3148
  msgid "Payment is complete"
3149
  msgstr ""
3150
 
3151
+ #: class/subscription.php:739
3152
  msgid "Congratulations, your payment has been completed!"
3153
  msgstr ""
3154
 
3155
+ #: class/subscription.php:743 class/subscription.php:747
3156
  msgid "Please buy a subscription pack to post"
3157
  msgstr ""
3158
 
3159
+ #: class/subscription.php:761
3160
  msgid "<p><i>You have a subscription pack activated. </i></p>"
3161
  msgstr ""
3162
 
3163
+ #: class/subscription.php:765
3164
  msgid "<p><i>To cancel the pack, press the following cancel button</i></p>"
3165
  msgstr ""
3166
 
3167
+ #: class/subscription.php:825
3168
  msgid "Every"
3169
  msgstr ""
3170
 
3171
+ #: class/subscription.php:829
3172
  msgid "One time payment"
3173
  msgstr ""
3174
 
3175
+ #: class/subscription.php:841
3176
  msgid "Sign Up"
3177
  msgstr ""
3178
 
3179
+ #: class/subscription.php:846
3180
  msgid "Buy Now"
3181
  msgstr ""
3182
 
3183
+ #: class/subscription.php:911
3184
  msgid "There is a <strong>%s</strong> charge to add a new post."
3185
  msgstr ""
3186
 
3187
+ #: class/subscription.php:923
3188
  msgid ""
3189
  "Your Subscription pack exhausted. There is a <strong>%s</strong> charge to "
3190
  "add a new post."
3191
  msgstr ""
3192
 
3193
+ #: class/subscription.php:967
3194
  msgid "You must <a href=\"%s\">purchase a pack</a> before posting"
3195
  msgstr ""
3196
 
3313
  msgid "Expire date"
3314
  msgstr ""
3315
 
3316
+ #: includes/class-list-table-subscribers.php:127
3317
  msgid "Completed"
3318
  msgstr ""
3319
 
3320
+ #: includes/class-login-widget.php:15
3321
+ msgid "WPUF Ajax Login"
3322
+ msgstr ""
3323
+
3324
+ #: includes/class-login-widget.php:16
3325
+ msgid "Ajax Login widget for WP User Frontend"
3326
+ msgstr ""
3327
+
3328
+ #: includes/class-login-widget.php:36 includes/class-login-widget.php:71
3329
+ msgid "Please fill all form fields"
3330
+ msgstr ""
3331
+
3332
+ #: includes/class-login-widget.php:43
3333
+ msgid "Login successful!"
3334
+ msgstr ""
3335
+
3336
+ #: includes/class-login-widget.php:57
3337
+ msgid "Logout successful!"
3338
+ msgstr ""
3339
+
3340
+ #: includes/class-login-widget.php:87
3341
+ msgid "Password has been reset. Please check your email."
3342
+ msgstr ""
3343
+
3344
+ #: includes/class-login-widget.php:103
3345
+ msgid "<strong>ERROR</strong>: Enter a username or email address."
3346
+ msgstr ""
3347
+
3348
+ #: includes/class-login-widget.php:107
3349
+ msgid "<strong>ERROR</strong>: There is no user registered with that email address."
3350
+ msgstr ""
3351
+
3352
+ #: includes/class-login-widget.php:122
3353
+ msgid "<strong>ERROR</strong>: Invalid username or email."
3354
+ msgstr ""
3355
+
3356
+ #: includes/class-login-widget.php:135
3357
+ msgid "Someone has requested a password reset for the following account:"
3358
+ msgstr ""
3359
+
3360
+ #: includes/class-login-widget.php:137 includes/free/class-login.php:682
3361
+ msgid "Username: %s"
3362
+ msgstr ""
3363
+
3364
+ #: includes/class-login-widget.php:138 includes/free/class-login.php:683
3365
+ msgid "If this was a mistake, just ignore this email and nothing will happen."
3366
+ msgstr ""
3367
+
3368
+ #: includes/class-login-widget.php:139 includes/free/class-login.php:684
3369
+ msgid "To reset your password, visit the following address:"
3370
+ msgstr ""
3371
+
3372
+ #: includes/class-login-widget.php:144 includes/free/class-login.php:693
3373
+ msgid "[%s] Password Reset"
3374
+ msgstr ""
3375
+
3376
+ #: includes/class-login-widget.php:151
3377
+ msgid ""
3378
+ "<strong>ERROR</strong>: The email could not be sent.Possible reason: your "
3379
+ "host may have disabled the mail() function."
3380
+ msgstr ""
3381
+
3382
+ #: includes/class-login-widget.php:206 includes/class-login-widget.php:239
3383
+ #: includes/free/class-login.php:212 includes/free/class-registration.php:124
3384
+ #: includes/free/form-element.php:345 templates/registration-form.php:72
3385
+ msgid "Register"
3386
+ msgstr ""
3387
+
3388
+ #: includes/class-login-widget.php:210
3389
+ msgid "Lost your password?"
3390
+ msgstr ""
3391
+
3392
+ #: includes/class-login-widget.php:219 templates/lost-pass-form.php:14
3393
+ msgid "Username or E-mail:"
3394
+ msgstr ""
3395
+
3396
+ #: includes/class-login-widget.php:247
3397
+ msgid "Log out"
3398
+ msgstr ""
3399
+
3400
+ #: includes/class-login-widget.php:263
3401
+ msgid "WPUF Login Widget"
3402
+ msgstr ""
3403
+
3404
+ #: includes/class-login-widget.php:264
3405
+ msgid "Username or Email Address"
3406
+ msgstr ""
3407
+
3408
+ #: includes/class-login-widget.php:265
3409
+ msgid ""
3410
+ "Please enter your username or email address. You will receive a link to "
3411
+ "create a new password via email"
3412
+ msgstr ""
3413
+
3414
+ #: includes/class-login-widget.php:266 includes/free/edit-profile.php:101
3415
+ #: includes/free/edit-user.php:92 includes/free/edit-user.php:144
3416
+ #: templates/login-form.php:21 templates/registration-form.php:51
3417
+ msgid "Username"
3418
+ msgstr ""
3419
+
3420
+ #: includes/class-login-widget.php:267 templates/login-form.php:25
3421
+ #: templates/registration-form.php:58
3422
+ msgid "Password"
3423
+ msgstr ""
3424
+
3425
+ #: includes/class-login-widget.php:268 templates/login-form.php:31
3426
+ msgid "Remember Me"
3427
+ msgstr ""
3428
+
3429
+ #: includes/class-login-widget.php:269 includes/free/class-login.php:208
3430
+ #: includes/free/class-login.php:264 templates/login-form.php:35
3431
+ msgid "Log In"
3432
+ msgstr ""
3433
+
3434
+ #: includes/class-login-widget.php:270 templates/reset-pass-form.php:26
3435
+ msgid "Reset Password"
3436
+ msgstr ""
3437
+
3438
+ #: includes/class-login-widget.php:274
3439
+ msgid "Title:"
3440
+ msgstr ""
3441
+
3442
+ #: includes/class-login-widget.php:278
3443
+ msgid "Log-in Text:"
3444
+ msgstr ""
3445
+
3446
+ #: includes/class-login-widget.php:282
3447
+ msgid "Username Label:"
3448
+ msgstr ""
3449
+
3450
+ #: includes/class-login-widget.php:286
3451
+ msgid "Password Label:"
3452
+ msgstr ""
3453
+
3454
+ #: includes/class-login-widget.php:290
3455
+ msgid "Remember Me Label:"
3456
+ msgstr ""
3457
+
3458
+ #: includes/class-login-widget.php:293
3459
+ msgid "Log In Label:"
3460
+ msgstr ""
3461
+
3462
+ #: includes/class-login-widget.php:297
3463
+ msgid "Password Reset Text:"
3464
+ msgstr ""
3465
+
3466
+ #: includes/class-login-widget.php:301
3467
+ msgid "Password Reset Label:"
3468
+ msgstr ""
3469
+
3470
  #: includes/class-user-subscription.php:56
3471
  msgid "You must purchase a pack before posting"
3472
  msgstr ""
3475
  msgid "The subscription pack has been expired. Please buy a pack."
3476
  msgstr ""
3477
 
3478
+ #: includes/class-user-subscription.php:312
3479
  #: templates/dashboard/subscription.php:2
3480
  msgid "Subscription Details"
3481
  msgstr ""
3482
 
3483
+ #: includes/class-user-subscription.php:314
3484
  #: templates/dashboard/subscription.php:4
3485
  msgid "Subcription Name: "
3486
  msgstr ""
3487
 
3488
+ #: includes/class-user-subscription.php:316
3489
  #: templates/dashboard/subscription.php:6
3490
  msgid "Package & billing details: "
3491
  msgstr ""
3492
 
3493
+ #: includes/class-user-subscription.php:327
3494
  #: templates/dashboard/subscription.php:10
3495
  msgid "Remaining post: "
3496
  msgstr ""
3497
 
3498
+ #: includes/class-user-subscription.php:340
3499
  #: templates/dashboard/subscription.php:24
3500
  msgid "Unlimited"
3501
  msgstr ""
3584
  msgid " Add Form"
3585
  msgstr ""
3586
 
 
 
 
 
 
 
 
 
 
 
3587
  #: includes/free/class-login.php:216
3588
  msgid "Lost Password"
3589
  msgstr ""
3680
  msgid "Someone requested that the password be reset for the following account:"
3681
  msgstr ""
3682
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3683
  #: includes/free/class-login.php:698
3684
  msgid "The e-mail could not be sent."
3685
  msgstr ""
3721
  msgid "<strong>Success</strong>: Profile updated"
3722
  msgstr ""
3723
 
 
 
 
 
 
 
3724
  #: includes/free/edit-profile.php:102
3725
  msgid "Usernames cannot be changed."
3726
  msgstr ""
3767
  "be shown publicly."
3768
  msgstr ""
3769
 
3770
+ #: includes/free/edit-profile.php:188 templates/dashboard/edit-profile.php:49
3771
  msgid "New Password"
3772
  msgstr ""
3773
 
3784
  msgstr ""
3785
 
3786
  #: includes/free/edit-profile.php:227 includes/free/form-element.php:346
3787
+ #: templates/dashboard/edit-profile.php:86
3788
  msgid "Update Profile"
3789
  msgstr ""
3790
 
3928
  msgid "Learn more about Email Notification"
3929
  msgstr ""
3930
 
 
 
 
 
3931
  #: includes/free/form-element.php:231 includes/free/form-element.php:266
3932
  msgid "Subject"
3933
  msgstr ""
4078
  msgid "You don't have permission to install the plugins"
4079
  msgstr ""
4080
 
4081
+ #: lib/class.settings-api.php:365
4082
  msgid "Choose File"
4083
  msgstr ""
4084
 
4165
  msgid "Email Address "
4166
  msgstr ""
4167
 
4168
+ #: templates/dashboard/edit-profile.php:38
4169
  msgid "Current Password"
4170
  msgstr ""
4171
 
4172
+ #: templates/dashboard/edit-profile.php:43
4173
+ msgid "Leave this field empty to keep your password unchanged."
4174
  msgstr ""
4175
 
4176
+ #: templates/dashboard/edit-profile.php:75
4177
  msgid "Confirm New Password"
4178
  msgstr ""
4179
 
4233
  msgid "You are currently logged in! %s?"
4234
  msgstr ""
4235
 
 
 
 
 
 
 
 
 
 
 
 
 
4236
  #: templates/lost-pass-form.php:21
4237
  msgid "Get New Password"
4238
  msgstr ""
4249
  msgid "Confirm new password"
4250
  msgstr ""
4251
 
 
 
 
 
4252
  #: views/welcome-page.php:445 views/welcome-page.php:586
4253
  msgid "Create Your First Form"
4254
  msgstr ""
4537
  msgid "Your Post Has Been Expired"
4538
  msgstr ""
4539
 
4540
+ #: wpuf.php:634
4541
  msgid "Error: Nonce verification failed"
4542
  msgstr ""
4543
 
lib/class.settings-api.php CHANGED
@@ -123,6 +123,7 @@ class WeDevs_Settings_API {
123
 
124
  $args = array(
125
  'id' => $option['name'],
 
126
  'label_for' => $args['label_for'] = "{$section}[{$option['name']}]",
127
  'desc' => isset( $option['desc'] ) ? $option['desc'] : '',
128
  'name' => $option['label'],
@@ -240,7 +241,7 @@ class WeDevs_Settings_API {
240
  $html = '<fieldset>';
241
  $html .= sprintf( '<input type="hidden" name="%1$s[%2$s]" value="" />', $args['section'], $args['id'] );
242
  foreach ( $args['options'] as $key => $label ) {
243
- $checked = isset( $value[$key] ) ? $value[$key] : '0';
244
  $html .= sprintf( '<label for="wpuf-%1$s[%2$s][%3$s]">', $args['section'], $args['id'], $key );
245
  $html .= sprintf( '<input type="checkbox" class="checkbox" id="wpuf-%1$s[%2$s][%3$s]" name="%1$s[%2$s][%3$s]" value="%3$s" %4$s />', $args['section'], $args['id'], $key, checked( $checked, $key, false ) );
246
  $html .= sprintf( '%1$s</label><br>', $label );
123
 
124
  $args = array(
125
  'id' => $option['name'],
126
+ 'class' => isset( $option['class'] ) ? $option['class'] : '',
127
  'label_for' => $args['label_for'] = "{$section}[{$option['name']}]",
128
  'desc' => isset( $option['desc'] ) ? $option['desc'] : '',
129
  'name' => $option['label'],
241
  $html = '<fieldset>';
242
  $html .= sprintf( '<input type="hidden" name="%1$s[%2$s]" value="" />', $args['section'], $args['id'] );
243
  foreach ( $args['options'] as $key => $label ) {
244
+ $checked = in_array($key, $value) ? $key : '0';
245
  $html .= sprintf( '<label for="wpuf-%1$s[%2$s][%3$s]">', $args['section'], $args['id'], $key );
246
  $html .= sprintf( '<input type="checkbox" class="checkbox" id="wpuf-%1$s[%2$s][%3$s]" name="%1$s[%2$s][%3$s]" value="%3$s" %4$s />', $args['section'], $args['id'], $key, checked( $checked, $key, false ) );
247
  $html .= sprintf( '%1$s</label><br>', $label );
lib/invisible_recaptcha.php ADDED
@@ -0,0 +1,99 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Name: Google Invisible reCAPTCHA
5
+ *
6
+ * Author: Geordy James
7
+ * @geordyjames
8
+ *
9
+ * Location: https://github.com/geordyjames/google-Invisible-reCAPTCHA
10
+
11
+ * Created: 13.03.2017
12
+
13
+ * Created by Geordy James to make a easy version of google Invisible reCAPTCHA PHP Library
14
+ *
15
+ * Description: This is an unofficial version of google Invisible reCAPTCHA PHP Library
16
+ *
17
+ */
18
+
19
+ class Invisible_Recaptcha{
20
+
21
+ private static $_signupUrl = "https://www.google.com/recaptcha/admin";
22
+
23
+ public function __construct( $site_key, $secret_key ){
24
+
25
+ if ( $secret_key == null || $secret_key == "" ) {
26
+ die("To use reCAPTCHA you must get an API key from <a href='"
27
+ . self::$_signupUrl . "'>" . self::$_signupUrl . "</a>");
28
+ }
29
+ $this->config = array(
30
+ 'client-key' => $site_key,
31
+ 'secret-key' => $secret_key
32
+ );
33
+ }
34
+
35
+
36
+ public function verifyResponse($recaptcha){
37
+
38
+ $remoteIp = $this->getIPAddress();
39
+
40
+ // Discard empty solution submissions
41
+ if (empty($recaptcha)) {
42
+ return array(
43
+ 'success' => false,
44
+ 'error-codes' => 'missing-input',
45
+ );
46
+ }
47
+
48
+ $getResponse = $this->getHTTP(
49
+ array(
50
+ 'secret' => $this->config['secret-key'],
51
+ 'remoteip' => $remoteIp,
52
+ 'response' => $recaptcha,
53
+ )
54
+ );
55
+
56
+ // get reCAPTCHA server response
57
+ $responses = json_decode($getResponse, true);
58
+
59
+ if (isset($responses['success']) and $responses['success'] == true) {
60
+ $status = true;
61
+ } else {
62
+ $status = false;
63
+ $error = (isset($responses['error-codes'])) ? $responses['error-codes']
64
+ : 'invalid-input-response';
65
+ }
66
+
67
+ return array(
68
+ 'success' => $status,
69
+ 'error-codes' => (isset($error)) ? $error : null,
70
+ );
71
+ }
72
+
73
+
74
+ private function getIPAddress(){
75
+ if (!empty($_SERVER['HTTP_CLIENT_IP']))
76
+ {
77
+ $ip = $_SERVER['HTTP_CLIENT_IP'];
78
+ }
79
+ elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
80
+ {
81
+ $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
82
+ }
83
+ else
84
+ {
85
+ $ip = $_SERVER['REMOTE_ADDR'];
86
+ }
87
+
88
+ return $ip;
89
+ }
90
+
91
+ private function getHTTP($data){
92
+
93
+ $url = 'https://www.google.com/recaptcha/api/siteverify?'.http_build_query($data);
94
+ $response = file_get_contents($url);
95
+
96
+ return $response;
97
+ }
98
+ }
99
+
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.7.0
9
  License: GPLv2
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
11
 
@@ -170,6 +170,19 @@ redirected to the edit page with that post id. Then you'll see the edit post for
170
 
171
  == Changelog ==
172
 
 
 
 
 
 
 
 
 
 
 
 
 
 
173
  = v2.7.0 (12 December, 2017) =
174
 
175
  * **New:** Posting integration with Dokan added. Now you can create and edit blog posts from your Dokan dashboard.
5
  Requires at least: 4.0
6
  Tested up to: 4.8.1
7
  Requires PHP: 5.4
8
+ Stable tag: 2.8.0
9
  License: GPLv2
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
11
 
170
 
171
  == Changelog ==
172
 
173
+ = v2.8.0 (6 January, 2017) =
174
+
175
+ * **New:** Limit Entries: limit how many entries a form will accept and display a custom message when that limit is reached.
176
+ * **New:** Schedule form: Don't accept form submission if the current date is not between the date range of the schedule.
177
+ * **New:** Restrict Users: Restrict form submission based on the users role.
178
+ * **New:** Show/hide Admin Bar: Control the admin bar visibility based on user roles.
179
+ * **New:** Ajax Login widget: Login user is more simple now with Ajax Login Widget. The simple login form don't required page loding for login.
180
+ * **Improved:** Form submission with Captcha: Form field validation process updated if form submits with captcha field.
181
+ * **Fix:** Payment redirection: Pay per post payment redirection not working after subscription expired.
182
+ * **Fix:** Edit Profile: User cannot edit their profile by frontend profile edit form.
183
+ * **Fix:** Undefined error: Data processing error on purchasing free subscription pack.
184
+
185
+
186
  = v2.7.0 (12 December, 2017) =
187
 
188
  * **New:** Posting integration with Dokan added. Now you can create and edit blog posts from your Dokan dashboard.
templates/dashboard.php CHANGED
@@ -199,7 +199,7 @@
199
  <?php
200
  if ( wpuf_get_option( 'enable_post_edit', 'wpuf_frontend_posting', 'yes' ) == 'yes' ) {
201
  $disable_pending_edit = wpuf_get_option( 'disable_pending_edit', 'wpuf_dashboard', 'on' );
202
- $edit_page = (int) wpuf_get_option( 'edit_page_id', 'wpuf_general' );
203
  $post_id = $post->ID;
204
  $url = add_query_arg( array('pid' => $post->ID), get_permalink( $edit_page ) );
205
 
199
  <?php
200
  if ( wpuf_get_option( 'enable_post_edit', 'wpuf_frontend_posting', 'yes' ) == 'yes' ) {
201
  $disable_pending_edit = wpuf_get_option( 'disable_pending_edit', 'wpuf_dashboard', 'on' );
202
+ $edit_page = (int) wpuf_get_option( 'edit_page_id', 'wpuf_frontend_posting' );
203
  $post_id = $post->ID;
204
  $url = add_query_arg( array('pid' => $post->ID), get_permalink( $edit_page ) );
205
 
templates/dashboard/edit-profile.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php global $current_user; ?>
2
 
3
- <form class="wpuf-form wpuf-form-add wpuf-update-profile-form" action="" method="post">
4
 
5
  <div style="display: none;" class="wpuf-success"><?php _e( 'Profile updated successfully!', 'wpuf' ); ?></div>
6
  <div style="display: none;" class="wpuf-error"><?php _e( 'Something went wrong!', 'wpuf' ); ?></div>
@@ -31,17 +31,26 @@
31
  <input type="email" class="input-text" name="email" id="email" value="<?php echo $current_user->user_email; ?>" required>
32
  </div>
33
  </li>
 
34
 
35
  <li class="wpuf-el">
36
  <div class="wpuf-label" >
37
  <label for="current_password"><?php _e( 'Current Password', 'wpuf' ); ?></label>
38
  </div>
39
  <div class="wpuf-fields" >
40
- <input type="password" class="input-text" name="pass1" id="pass1" size="16" value="" autocomplete="off" />
41
  </div>
42
- <span class="wpuf-help"><?php _e( 'If you want to unchanged the password then just leave this section.', 'wpuf' ); ?></span>
43
  </li>
 
44
 
 
 
 
 
 
 
 
45
  <span style="width: 100%;" id="pass-strength-result"><?php _e( 'Strength indicator', 'wpuf' ); ?></span>
46
  <script src="<?php echo site_url(); ?>/wp-includes/js/zxcvbn.min.js"></script>
47
  <script src="<?php echo admin_url(); ?>/js/password-strength-meter.js"></script>
@@ -58,6 +67,9 @@
58
  convertEntities(pwsL10n);
59
  } catch (e) {};
60
  </script>
 
 
 
61
  <li class="wpuf-el">
62
  <div class="wpuf-label" >
63
  <label for="pass2"><?php _e( 'Confirm New Password', 'wpuf' ); ?></label>
@@ -71,7 +83,7 @@
71
  <li class="wpuf-submit">
72
  <?php wp_nonce_field( 'wpuf-account-update-profile' ); ?>
73
  <input type="hidden" name="action" value="wpuf_account_update_profile">
74
- <input type="submit" name="update_profile" id="wpuf-account-update-profile" value="Update Profile">
75
  </li>
76
  </ul>
77
 
1
  <?php global $current_user; ?>
2
 
3
+ <form class="wpuf-form wpuf-update-profile-form" action="" method="post">
4
 
5
  <div style="display: none;" class="wpuf-success"><?php _e( 'Profile updated successfully!', 'wpuf' ); ?></div>
6
  <div style="display: none;" class="wpuf-error"><?php _e( 'Something went wrong!', 'wpuf' ); ?></div>
31
  <input type="email" class="input-text" name="email" id="email" value="<?php echo $current_user->user_email; ?>" required>
32
  </div>
33
  </li>
34
+ <div class="clear"></div>
35
 
36
  <li class="wpuf-el">
37
  <div class="wpuf-label" >
38
  <label for="current_password"><?php _e( 'Current Password', 'wpuf' ); ?></label>
39
  </div>
40
  <div class="wpuf-fields" >
41
+ <input type="password" class="input-text" name="current_password" id="current_password" size="16" value="" autocomplete="off" />
42
  </div>
43
+ <span class="wpuf-help"><?php _e( 'Leave this field empty to keep your password unchanged.', 'wpuf' ); ?></span>
44
  </li>
45
+ <div class="clear"></div>
46
 
47
+ <li class="wpuf-el">
48
+ <div class="wpuf-label" >
49
+ <label for="pass1"><?php _e( 'New Password', 'wpuf' ); ?></label>
50
+ </div>
51
+ <div class="wpuf-fields" >
52
+ <input type="password" class="input-text" name="pass1" id="pass1" size="16" value="" autocomplete="off" />
53
+ </div>
54
  <span style="width: 100%;" id="pass-strength-result"><?php _e( 'Strength indicator', 'wpuf' ); ?></span>
55
  <script src="<?php echo site_url(); ?>/wp-includes/js/zxcvbn.min.js"></script>
56
  <script src="<?php echo admin_url(); ?>/js/password-strength-meter.js"></script>
67
  convertEntities(pwsL10n);
68
  } catch (e) {};
69
  </script>
70
+ </li>
71
+ <div class="clear"></div>
72
+
73
  <li class="wpuf-el">
74
  <div class="wpuf-label" >
75
  <label for="pass2"><?php _e( 'Confirm New Password', 'wpuf' ); ?></label>
83
  <li class="wpuf-submit">
84
  <?php wp_nonce_field( 'wpuf-account-update-profile' ); ?>
85
  <input type="hidden" name="action" value="wpuf_account_update_profile">
86
+ <button type="submit" name="update_profile" id="wpuf-account-update-profile"><?php _e( 'Update Profile', 'wpuf' ); ?></button>
87
  </li>
88
  </ul>
89
 
wpuf-functions.php CHANGED
@@ -2000,60 +2000,6 @@ function wpuf_get_client_ip() {
2000
  return $ipaddress;
2001
  }
2002
 
2003
- /**
2004
- * Check if the form submission is open
2005
- *
2006
- * @since 2.5.2
2007
- *
2008
- * @param int $form_id
2009
- *
2010
- * @return boolean|WP_Error
2011
- */
2012
- function wpuf_is_form_submission_open( $form_id ) {
2013
- $settings = wpuf_get_form_settings( $form_id );
2014
- $form_type = get_post_type( $form_id );;
2015
-
2016
- $needs_login = ( isset( $settings['require_login'] ) && $settings['require_login'] == 'true' ) ? true : false;
2017
- $has_limit = ( isset( $settings['limit_entries'] ) && $settings['limit_entries'] == 'true' ) ? true : false;
2018
- $is_scheduled = ( isset( $settings['schedule_form'] ) && $settings['schedule_form'] == 'true' ) ? true : false;
2019
-
2020
- if ( $needs_login && !is_user_logged_in() ) {
2021
- return new WP_Error( 'needs-login', $settings['req_login_message'] );
2022
- }
2023
-
2024
- if ( $has_limit ) {
2025
-
2026
- // handle the contact form
2027
- if ( 'wpuf_contact_form' == $form_type ) {
2028
- $limit = (int) $settings['limit_number'];
2029
- $form_entries = 0;
2030
-
2031
- if ( function_exists( 'weforms_count_form_entries' ) ) {
2032
- $form_entries = weforms_count_form_entries( $form_id );
2033
- }
2034
-
2035
- if ( $limit < $form_entries ) {
2036
- return new WP_Error( 'entry-limit', $settings['limit_message'] );
2037
- }
2038
- }
2039
- }
2040
-
2041
- if ( $is_scheduled ) {
2042
- $start_time = strtotime( $settings['schedule_start'] );
2043
- $end_time = strtotime( $settings['schedule_end'] );
2044
- $current_time = current_time( 'timestamp' );
2045
-
2046
- // too early?
2047
- if ( $current_time < $start_time ) {
2048
- return new WP_Error( 'form-pending', $settings['sc_pending_message'] );
2049
- } elseif ( $current_time > $end_time ) {
2050
- return new WP_Error( 'form-expired', $settings['sc_expired_message'] );
2051
- }
2052
- }
2053
-
2054
- return true;
2055
- }
2056
-
2057
  /**
2058
  * Delete a form with it's field and meta
2059
  *
@@ -2236,9 +2182,9 @@ function wpuf_send_mail_to_guest ( $post_id_encoded, $form_id_encoded, $charging
2236
 
2237
  $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');
2238
  $to = trim( $_POST['guest_email'] );
2239
- $guest_email_sub = wpuf_get_option( 'guest_email_subject', 'wpuf_guest_mails', 'Please Confirm Your Email to Get the Post Published!' );
2240
  $subject = $guest_email_sub;
2241
- $guest_email_body = wpuf_get_option( 'guest_email_body', 'wpuf_guest_mails', $default_body );
2242
 
2243
  if ( !empty( $guest_email_body ) ) {
2244
  $body = str_replace( '{activation_link}', '<a href="'.$encoded_guest_url.'">Publish Post</a>', $guest_email_body );
@@ -2343,5 +2289,39 @@ function wpuf_set_all_terms_as_allowed() {
2343
  }
2344
  }
2345
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2346
 
 
 
 
 
 
 
 
 
 
 
 
2347
  }
2000
  return $ipaddress;
2001
  }
2002
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2003
  /**
2004
  * Delete a form with it's field and meta
2005
  *
2182
 
2183
  $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');
2184
  $to = trim( $_POST['guest_email'] );
2185
+ $guest_email_sub = wpuf_get_option( 'guest_email_subject', 'wpuf_mails', 'Please Confirm Your Email to Get the Post Published!' );
2186
  $subject = $guest_email_sub;
2187
+ $guest_email_body = wpuf_get_option( 'guest_email_body', 'wpuf_mails', $default_body );
2188
 
2189
  if ( !empty( $guest_email_body ) ) {
2190
  $body = str_replace( '{activation_link}', '<a href="'.$encoded_guest_url.'">Publish Post</a>', $guest_email_body );
2289
  }
2290
  }
2291
  }
2292
+ }
2293
+
2294
+ /**
2295
+ * post submitted by form
2296
+ *
2297
+ * @since 2.8
2298
+ *
2299
+ * @param int $form_id
2300
+ *
2301
+ * @return List of WP_Post objects.
2302
+ */
2303
+ function wpuf_posts_submitted_by( $form_id ) {
2304
+ $settings = wpuf_get_form_settings( $form_id );
2305
+ $settings['post_type'];
2306
+ $args = array(
2307
+ 'meta_key' => '_wpuf_form_id',
2308
+ 'meta_value' => $form_id,
2309
+ 'post_type' => $settings['post_type'],
2310
+ 'post_status' => 'publish',
2311
+ );
2312
+ $posts_array = get_posts( $args );
2313
+ return $posts_array;
2314
+ }
2315
 
2316
+ /**
2317
+ * count post submitted by form
2318
+ *
2319
+ * @since 2.8
2320
+ *
2321
+ * @param int $form_id
2322
+ *
2323
+ * @return int
2324
+ */
2325
+ function wpuf_form_posts_count( $form_id ) {
2326
+ return count( wpuf_posts_submitted_by( $form_id ) );
2327
  }
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.7.0
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.7.0' );
16
  define( 'WPUF_FILE', __FILE__ );
17
  define( 'WPUF_ROOT', dirname( __FILE__ ) );
18
  define( 'WPUF_ROOT_URI', plugins_url( '', __FILE__ ) );
@@ -127,7 +127,7 @@ final class WP_User_Frontend {
127
 
128
  add_action( 'admin_init', array( $this, 'block_admin_access' ) );
129
 
130
- add_action( 'show_admin_bar', array( $this, 'show_admin_bar' ) );
131
 
132
  add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
133
 
@@ -239,6 +239,7 @@ final class WP_User_Frontend {
239
  require_once WPUF_ROOT . '/class/frontend-form-post.php';
240
  require_once WPUF_ROOT . '/class/frontend-account.php';
241
  require_once WPUF_ROOT . '/includes/class-form.php';
 
242
 
243
  if ( class_exists( 'WeDevs_Dokan' ) ) {
244
  require_once WPUF_ROOT . '/includes/class-dokan-integration.php';
@@ -275,6 +276,7 @@ final class WP_User_Frontend {
275
  if ( ! function_exists( 'recaptcha_get_html' ) ) {
276
  require_once dirname( __FILE__ ) . '/lib/recaptchalib.php';
277
  require_once dirname( __FILE__ ) . '/lib/recaptchalib_noCaptcha.php';
 
278
  }
279
  }
280
 
@@ -418,7 +420,6 @@ final class WP_User_Frontend {
418
  }
419
 
420
  wp_enqueue_style( 'wpuf-css', WPUF_ASSET_URI . '/css/frontend-forms.css' );
421
- wp_enqueue_script( 'wpuf-subscriptions', WPUF_ASSET_URI . '/js/subscriptions.js', array( 'jquery' ), false, true );
422
 
423
  if ( wpuf_get_option( 'load_script', 'wpuf_general', 'on' ) == 'on' ) {
424
  $this->plugin_scripts();
@@ -528,9 +529,19 @@ final class WP_User_Frontend {
528
  * @return void
529
  */
530
  function show_admin_bar() {
531
- $access_level = wpuf_get_option( 'admin_access', 'wpuf_general', 'read' );
532
 
533
- return current_user_can( $access_level );
 
 
 
 
 
 
 
 
 
 
 
534
  }
535
 
536
  /**
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.8.0
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.8.0' );
16
  define( 'WPUF_FILE', __FILE__ );
17
  define( 'WPUF_ROOT', dirname( __FILE__ ) );
18
  define( 'WPUF_ROOT_URI', plugins_url( '', __FILE__ ) );
127
 
128
  add_action( 'admin_init', array( $this, 'block_admin_access' ) );
129
 
130
+ add_filter( 'show_admin_bar', array( $this, 'show_admin_bar' ) );
131
 
132
  add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
133
 
239
  require_once WPUF_ROOT . '/class/frontend-form-post.php';
240
  require_once WPUF_ROOT . '/class/frontend-account.php';
241
  require_once WPUF_ROOT . '/includes/class-form.php';
242
+ require_once WPUF_ROOT . '/includes/class-login-widget.php';
243
 
244
  if ( class_exists( 'WeDevs_Dokan' ) ) {
245
  require_once WPUF_ROOT . '/includes/class-dokan-integration.php';
276
  if ( ! function_exists( 'recaptcha_get_html' ) ) {
277
  require_once dirname( __FILE__ ) . '/lib/recaptchalib.php';
278
  require_once dirname( __FILE__ ) . '/lib/recaptchalib_noCaptcha.php';
279
+ require_once dirname( __FILE__ ) . '/lib/invisible_recaptcha.php';
280
  }
281
  }
282
 
420
  }
421
 
422
  wp_enqueue_style( 'wpuf-css', WPUF_ASSET_URI . '/css/frontend-forms.css' );
 
423
 
424
  if ( wpuf_get_option( 'load_script', 'wpuf_general', 'on' ) == 'on' ) {
425
  $this->plugin_scripts();
529
  * @return void
530
  */
531
  function show_admin_bar() {
 
532
 
533
+ if ( !is_user_logged_in() ) {
534
+ return false;
535
+ }
536
+
537
+ $roles = wpuf_get_option( 'show_admin_bar', 'wpuf_general', array( 'administrator', 'editor', 'author', 'contributor', 'subscriber' ) );
538
+ $current_user = wp_get_current_user();
539
+
540
+ if ( !in_array( $current_user->roles[0], $roles ) ) {
541
+ return false;
542
+ }
543
+
544
+ return true;
545
  }
546
 
547
  /**