Form builder to get in touch with visitors, grow your email list and collect payments — Happyforms - Version 1.8.15

Version Description

  • Bugfix: Fix admin notices.
Download this release

Release Info

Developer thethemefoundry
Plugin Icon 128x128 Form builder to get in touch with visitors, grow your email list and collect payments — Happyforms
Version 1.8.15
Comparing to
See all releases

Code changes from version 1.8.14 to 1.8.15

happyforms.php CHANGED
@@ -5,7 +5,7 @@
5
  * Plugin URI: https://happyforms.me
6
  * Description: Your friendly drag and drop contact form builder for creating contact forms, lead generation forms, feedback forms, quote forms, survey forms and more!
7
  * Author: The Theme Foundry
8
- * Version: 1.8.14
9
  * Author URI: https://thethemefoundry.com
10
  * Upgrade URI: https://thethemefoundry.com
11
  */
@@ -13,7 +13,7 @@
13
  /**
14
  * The current version of the plugin.
15
  */
16
- define( 'HAPPYFORMS_VERSION', '1.8.14' );
17
 
18
  if ( ! function_exists( 'happyforms_plugin_file' ) ):
19
  /**
@@ -87,6 +87,11 @@ require_once( happyforms_get_include_folder() . '/core/classes/class-happyforms-
87
 
88
  require_once( happyforms_get_include_folder() . '/classes/class-happyforms.php' );
89
 
 
 
 
 
 
90
  /**
91
  * Main handler
92
  */
5
  * Plugin URI: https://happyforms.me
6
  * Description: Your friendly drag and drop contact form builder for creating contact forms, lead generation forms, feedback forms, quote forms, survey forms and more!
7
  * Author: The Theme Foundry
8
+ * Version: 1.8.15
9
  * Author URI: https://thethemefoundry.com
10
  * Upgrade URI: https://thethemefoundry.com
11
  */
13
  /**
14
  * The current version of the plugin.
15
  */
16
+ define( 'HAPPYFORMS_VERSION', '1.8.15' );
17
 
18
  if ( ! function_exists( 'happyforms_plugin_file' ) ):
19
  /**
87
 
88
  require_once( happyforms_get_include_folder() . '/classes/class-happyforms.php' );
89
 
90
+ /**
91
+ * Helpers
92
+ */
93
+ require_once( happyforms_get_include_folder() . '/helpers/helper-activation.php' );
94
+
95
  /**
96
  * Main handler
97
  */
inc/assets/js/admin/dashboard.js CHANGED
@@ -6,8 +6,9 @@
6
  happyForms.freeDashboard = {
7
  init: function() {
8
  $( document ).on( 'click', '#adminmenu #toplevel_page_happyforms li:last-child a', this.onUpgradeClick.bind(this) );
9
- $( document ).on( 'click', '#adminmenu #toplevel_page_happyforms li:eq(3) a', this.onResponsesClick.bind(this) );
10
- $( document ).on( 'click', '#adminmenu #toplevel_page_happyforms li:eq(4) a', this.onExportClick.bind(this) );
 
11
  $( document ).on( 'click', '.happyforms-upgrade-modal .happyforms-continue-link', this.onContinueClick.bind(this) );
12
  $( document ).on( 'click', '.happyforms-upgrade-modal .happyforms-export-button', this.onExportButtonClick.bind(this) );
13
  $( document ).on( 'click', '.happyforms-upgrade-modal .happyforms-upgrade-modal__close', this.onCloseClick.bind(this) );
@@ -21,16 +22,10 @@
21
  window.open( $link.attr('href') );
22
  },
23
 
24
- onResponsesClick: function( e ) {
25
  e.preventDefault();
26
 
27
- this.openModal( settings.responses_modal_id );
28
- },
29
-
30
- onExportClick: function( e ) {
31
- e.preventDefault();
32
-
33
- this.openModal( settings.export_modal_id );
34
  },
35
 
36
  openModal: function( modalId ) {
6
  happyForms.freeDashboard = {
7
  init: function() {
8
  $( document ).on( 'click', '#adminmenu #toplevel_page_happyforms li:last-child a', this.onUpgradeClick.bind(this) );
9
+ $( document ).on( 'click', '#adminmenu #toplevel_page_happyforms a[href="#responses"]', this.onModalTriggerClick.bind(this) );
10
+ $( document ).on( 'click', '#adminmenu #toplevel_page_happyforms a[href="#import-export"]', this.onModalTriggerClick.bind(this) );
11
+ $( document ).on( 'click', '#adminmenu #toplevel_page_happyforms a[href="#integrations"]', this.onModalTriggerClick.bind(this) );
12
  $( document ).on( 'click', '.happyforms-upgrade-modal .happyforms-continue-link', this.onContinueClick.bind(this) );
13
  $( document ).on( 'click', '.happyforms-upgrade-modal .happyforms-export-button', this.onExportButtonClick.bind(this) );
14
  $( document ).on( 'click', '.happyforms-upgrade-modal .happyforms-upgrade-modal__close', this.onCloseClick.bind(this) );
22
  window.open( $link.attr('href') );
23
  },
24
 
25
+ onModalTriggerClick: function( e ) {
26
  e.preventDefault();
27
 
28
+ this.openModal( settings.modal_id );
 
 
 
 
 
 
29
  },
30
 
31
  openModal: function( modalId ) {
inc/classes/class-happyforms.php CHANGED
@@ -65,6 +65,9 @@ class HappyForms extends HappyForms_Core {
65
 
66
  require_once( happyforms_get_include_folder() . '/classes/parts/class-part-placeholder-dummy.php' );
67
  $part_library->register_part( 'HappyForms_Part_Placeholder_Dummy', 21 );
 
 
 
68
  }
69
 
70
  public function add_dummy_setup_controls( $controls ) {
@@ -189,8 +192,7 @@ class HappyForms extends HappyForms_Core {
189
  }
190
 
191
  public function print_upgrade_modals() {
192
- require_once( happyforms_get_include_folder() . '/templates/admin/responses-upgrade-modal.php' );
193
- require_once( happyforms_get_include_folder() . '/templates/admin/export-upgrade-modal.php' );
194
  }
195
 
196
  public function admin_menu() {
@@ -238,15 +240,11 @@ class HappyForms extends HappyForms_Core {
238
  }
239
  }
240
 
241
- $responses_modal_id = ( 1 === intval( $has_responses ) ) ? 'happyforms-responses-upgrade-existing' : 'happyforms-responses-upgrade-new';
242
- $export_modal_id = ( 1 === intval( $has_responses ) ) ? 'happyforms-export-upgrade-existing' : 'happyforms-export-upgrade-new';
243
-
244
  wp_localize_script(
245
  'happyforms-free-admin',
246
  '_happyFormsDashboardSettings',
247
  array(
248
- 'responses_modal_id' => $responses_modal_id,
249
- 'export_modal_id' => $export_modal_id
250
  )
251
  );
252
 
@@ -319,10 +317,7 @@ class HappyForms extends HappyForms_Core {
319
 
320
  happyforms_get_admin_notices()->register(
321
  'happyforms_feature_removal',
322
- sprintf(
323
- __( '<p><strong>Important changes to HappyForms</strong></p><p>We want to continue developing the free HappyForms plugin, but we can\'t do this without the support of more paying customers. So, starting with HappyForms 1.8.11, we\'ve transitioned the following features to the paid plugin: Scale, Rating, Story, Website Link, Table, Phone, Date & Time, Address, Title, Legal, Placeholder and Text Editor form parts along with redirects, submit button fade, Google ReCaptcha and response reviews.</p><p>If you\'re using these parts and features in your forms, they will be removed from the free plugin with this release. Please review all your existing forms for changes.</p><p>To make your transition easier, <a href="%s" target="_blank" class="external">we\'re offering $20 off upgrades</a>. Use the coupon code “TRANSITION20” to save.</p>', 'happyforms' ),
324
- $upgrade_link
325
- ),
326
  array(
327
  'type' => 'error',
328
  'screen' => array( 'dashboard', 'edit-post', 'edit-page', 'edit-happyform', 'plugins' ),
@@ -332,11 +327,12 @@ class HappyForms extends HappyForms_Core {
332
  }
333
 
334
  public function display_review_notice( $forms ) {
335
- $form = $forms[0];
 
336
  $form_date = new DateTime( $form['post_date'] );
337
  $now = new DateTime();
338
  $difference = $now->diff( $form_date );
339
- $days = $difference->format( '%d' );
340
 
341
  if ( 3 > intval( $days ) ) {
342
  return;
65
 
66
  require_once( happyforms_get_include_folder() . '/classes/parts/class-part-placeholder-dummy.php' );
67
  $part_library->register_part( 'HappyForms_Part_Placeholder_Dummy', 21 );
68
+
69
+ require_once( happyforms_get_include_folder() . '/classes/parts/class-part-mailchimp-dummy.php' );
70
+ $part_library->register_part( 'HappyForms_Part_Mailchimp_Dummy', 22 );
71
  }
72
 
73
  public function add_dummy_setup_controls( $controls ) {
192
  }
193
 
194
  public function print_upgrade_modals() {
195
+ require_once( happyforms_get_include_folder() . '/templates/admin/upgrade-modal.php' );
 
196
  }
197
 
198
  public function admin_menu() {
240
  }
241
  }
242
 
 
 
 
243
  wp_localize_script(
244
  'happyforms-free-admin',
245
  '_happyFormsDashboardSettings',
246
  array(
247
+ 'modal_id' => 'happyforms-upgrade-modal'
 
248
  )
249
  );
250
 
317
 
318
  happyforms_get_admin_notices()->register(
319
  'happyforms_feature_removal',
320
+ __( '<p><strong>Important changes to HappyForms</strong></p><p>We want to continue developing the free HappyForms plugin, but we can\'t do this without the support of more paying customers. So, starting with HappyForms 1.8.11, we\'ve transitioned the following features to the paid plugin: Scale, Rating, Story, Website Link, Table, Phone, Date & Time, Address, Title, Legal, Placeholder and Text Editor form parts along with redirects, submit button fade, reCAPTCHA and response reviews.</p><p>If you\'re using these parts and features in your forms, they will be removed from the free plugin with this release. Please review all your existing forms for changes.</p>', 'happyforms' ),
 
 
 
321
  array(
322
  'type' => 'error',
323
  'screen' => array( 'dashboard', 'edit-post', 'edit-page', 'edit-happyform', 'plugins' ),
327
  }
328
 
329
  public function display_review_notice( $forms ) {
330
+ $last_form_index = count( $forms ) - 1;
331
+ $form = $forms[$last_form_index];
332
  $form_date = new DateTime( $form['post_date'] );
333
  $now = new DateTime();
334
  $difference = $now->diff( $form_date );
335
+ $days = $difference->format( '%a' );
336
 
337
  if ( 3 > intval( $days ) ) {
338
  return;
inc/classes/parts/class-part-mailchimp-dummy.php ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class HappyForms_Part_Mailchimp_Dummy extends HappyForms_Form_Part {
4
+
5
+ public $type = 'mailchimp_dummy';
6
+
7
+ public function __construct() {
8
+ $this->label = __( 'Mailchimp', 'happyforms' );
9
+ $this->description = __( 'For requiring permission before opting into your mailing list.', 'happyforms' );
10
+ }
11
+
12
+ }
inc/core/assets/css/admin.css CHANGED
@@ -22,7 +22,7 @@ i.mce-i-happyforms-form-picker:before, i.mce-i-happyforms-form-picker:before {
22
  background-position: center;
23
  }
24
 
25
- #toplevel_page_happyforms ul.wp-submenu li:nth-child(6) {
26
  display: none;
27
  }
28
 
22
  background-position: center;
23
  }
24
 
25
+ #toplevel_page_happyforms a[href="admin.php?page=happyforms-welcome"] {
26
  display: none;
27
  }
28
 
inc/core/assets/css/color.css CHANGED
@@ -1344,3 +1344,8 @@
1344
  .happyforms-styles.happyforms-form--part-border-off .happyforms-part--rich_text .happyforms-visual-editor {
1345
  padding-bottom: 1px;
1346
  }
 
 
 
 
 
1344
  .happyforms-styles.happyforms-form--part-border-off .happyforms-part--rich_text .happyforms-visual-editor {
1345
  padding-bottom: 1px;
1346
  }
1347
+
1348
+ .happyforms-part--legal .option-label .label p,
1349
+ .happyforms-part--mailchimp .option-label .label p {
1350
+ margin-bottom: 0;
1351
+ }
inc/core/assets/css/customize.css CHANGED
@@ -461,6 +461,10 @@ a.happyforms-form-part-remove:hover {
461
  padding: 0;
462
  }
463
 
 
 
 
 
464
  .happyforms-setup-view .customize-control-title {
465
  line-height: 1;
466
  padding-bottom: 5px;
@@ -1029,6 +1033,11 @@ ul.happyforms-parts-list li[data-part-type="placeholder_dummy"] .happyforms-part
1029
  background-image: url(../svg/icons/placeholder.svg);
1030
  }
1031
 
 
 
 
 
 
1032
  ul.happyforms-parts-list .happyforms-parts-list-item-title {
1033
  padding: 0 0 5px;
1034
  }
461
  padding: 0;
462
  }
463
 
464
+ .happyforms-setup-view .customize-control .customize-inside-control-row h4 {
465
+ margin: 0.5em 0;
466
+ }
467
+
468
  .happyforms-setup-view .customize-control-title {
469
  line-height: 1;
470
  padding-bottom: 5px;
1033
  background-image: url(../svg/icons/placeholder.svg);
1034
  }
1035
 
1036
+ ul.happyforms-parts-list li[data-part-type="mailchimp_dummy"] .happyforms-parts-list-item-title:before {
1037
+ opacity: 0.5;
1038
+ background-image: url(../svg/icons/integration.svg);
1039
+ }
1040
+
1041
  ul.happyforms-parts-list .happyforms-parts-list-item-title {
1042
  padding: 0 0 5px;
1043
  }
inc/core/assets/svg/icons/integration.svg ADDED
@@ -0,0 +1 @@
 
1
+ <svg enable-background="new 0 0 64 64" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg"><g fill="none" stroke="#32373c" stroke-miterlimit="10" stroke-width="6"><path d="m58.1 27.7h-52.2c-1.6 0-2.9 1-2.9 2.1v8.1c0 5.7.8 9.7 8 11.7 2.1.6 3.6 3.8 3.6 3.8l2 6.5c0 .6.6 1.1 1.3 1.1h28.2c.7 0 1.3-.5 1.3-1.1l2-6.5s1.5-3.1 3.6-3.8c7.2-1.9 8-5.9 8-11.7v-8.1c0-1.2-1.3-2.1-2.9-2.1z" stroke-linecap="round"/><path d="m14.2 27.7v-19.9c0-2.6 2.6-4.8 6-4.8 3.2 0 6 2.1 6 4.8v19.9"/><path d="m37.8 27.7v-19.9c0-2.6 2.6-4.8 6-4.8 3.2 0 6 2.1 6 4.8v19.9"/><path d="m24.5 41.9h15" stroke-linecap="round"/></g></svg>
inc/core/classes/class-form-setup.php CHANGED
@@ -324,7 +324,6 @@ class HappyForms_Form_Setup {
324
  switch( $control['type'] ) {
325
  case 'editor':
326
  case 'checkbox':
327
- case 'checkbox-group':
328
  case 'text':
329
  case 'number':
330
  case 'radio':
324
  switch( $control['type'] ) {
325
  case 'editor':
326
  case 'checkbox':
 
327
  case 'text':
328
  case 'number':
329
  case 'radio':
inc/core/classes/class-happyforms-core.php CHANGED
@@ -188,16 +188,26 @@ class HappyForms_Core {
188
  'happyforms',
189
  __( 'Responses', 'happyforms' ),
190
  __( 'Responses', 'happyforms' ),
191
- 'manage_options',
192
- '#'
 
 
 
 
 
 
 
 
 
 
193
  );
194
 
195
  add_submenu_page(
196
  'happyforms',
197
  __( 'Import/Export', 'happyforms' ),
198
  __( 'Import/Export', 'happyforms' ),
199
- 'manage_options',
200
- apply_filters( 'happyforms_export_page_url', '#' ),
201
  apply_filters( 'happyforms_export_page_method', '' )
202
  );
203
 
188
  'happyforms',
189
  __( 'Responses', 'happyforms' ),
190
  __( 'Responses', 'happyforms' ),
191
+ apply_filters( 'happyforms_responses_page_capabilities', 'manage_options' ),
192
+ apply_filters( 'happyforms_responses_page_url', '#responses' ),
193
+ apply_filters( 'happyforms_responses_page_method', '' )
194
+ );
195
+
196
+ add_submenu_page(
197
+ 'happyforms',
198
+ __( 'Integrations', 'happyforms' ),
199
+ __( 'Integrations', 'happyforms' ),
200
+ apply_filters( 'happyforms_integrations_page_capabilities', 'manage_options' ),
201
+ apply_filters( 'happyforms_integrations_page_url', '#integrations' ),
202
+ apply_filters( 'happyforms_integrations_page_method', '' )
203
  );
204
 
205
  add_submenu_page(
206
  'happyforms',
207
  __( 'Import/Export', 'happyforms' ),
208
  __( 'Import/Export', 'happyforms' ),
209
+ apply_filters( 'happyforms_export_page_capabilities', 'manage_options' ),
210
+ apply_filters( 'happyforms_export_page_url', '#import-export' ),
211
  apply_filters( 'happyforms_export_page_method', '' )
212
  );
213
 
inc/core/helpers/helper-activation.php CHANGED
@@ -177,40 +177,5 @@ function happyforms_deactivate_tracking() {
177
  }
178
  }
179
 
180
- function happyforms_uninstall_cleanup() {
181
- if ( file_exists( ABSPATH . 'wp-content/plugins/happyforms-upgrade' ) ) {
182
- return;
183
- }
184
-
185
- // Cleanup forms
186
- $forms = get_posts( array(
187
- 'post_type' => 'happyform',
188
- 'post_status' => 'any',
189
- 'numberposts' => -1,
190
- ) );
191
-
192
- foreach( $forms as $form ) {
193
- wp_delete_post( $form->ID, true );
194
- }
195
-
196
- // Cleanup responses
197
- $responses = get_posts( array(
198
- 'post_type' => 'happyforms-message',
199
- 'post_status' => 'any',
200
- 'numberposts' => -1,
201
- ) );
202
-
203
- foreach( $responses as $response ) {
204
- wp_delete_post( $response->ID, true );
205
- }
206
-
207
- // Cleanup options
208
- delete_option( 'happyforms-data-version' );
209
- delete_option( 'happyforms-tracking' );
210
- delete_option( 'widget_happyforms_widget' );
211
- delete_transient( '_happyforms_has_responses' );
212
- }
213
-
214
  add_action( 'happyforms_activate', 'happyforms_create_samples' );
215
  add_action( 'happyforms_deactivate', 'happyforms_deactivate_tracking' );
216
- add_action( 'happyforms_uninstall', 'happyforms_uninstall_cleanup' );
177
  }
178
  }
179
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
180
  add_action( 'happyforms_activate', 'happyforms_create_samples' );
181
  add_action( 'happyforms_deactivate', 'happyforms_deactivate_tracking' );
 
inc/core/templates/customize-controls/setup/checkbox-group.php DELETED
@@ -1,16 +0,0 @@
1
- <div class="customize-control customize-control-checkbox <% if ( <?php echo $control['field']; ?> ) { %>checked<% } %>" id="customize-control-<?php echo $control['field']; ?>">
2
- <?php do_action( "happyforms_setup_control_{$control['field']}_before", $control ); ?>
3
-
4
- <p class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="fa fa-question-circle" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></p>
5
-
6
- <div class="customize-inside-control-row" data-pointer-target>
7
- <?php foreach ( $control['options'] as $option => $label ) : ?>
8
- <div>
9
- <input type="checkbox" id="<?php echo $control['field']; ?>_<?php echo $option; ?>" value="<?php echo $option; ?>" <% if ( -1 !== <?php echo $control['field']; ?>.indexOf( '<?php echo $option; ?>' ) ) { %>checked="checked"<% } %> data-attribute="<?php echo $control['field']; ?>" />
10
- <label for="<?php echo $control['field']; ?>_<?php echo $option; ?>"><?php echo $label; ?></label>
11
- </div>
12
- <?php endforeach; ?>
13
- </div>
14
-
15
- <?php do_action( "happyforms_setup_control_{$control['field']}_after", $control ); ?>
16
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
inc/core/templates/customize-controls/setup/select.php CHANGED
@@ -3,6 +3,9 @@
3
 
4
  <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="fa fa-question-circle" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
5
  <select name="<?php echo $control['field']; ?>" id="<?php echo $control['field']; ?>" data-attribute="<?php echo $control['field']; ?>" data-pointer-target>
 
 
 
6
  <?php foreach ( $control['options'] as $option => $label ) : ?>
7
  <option value="<?php echo $option; ?>" <% if ( '<?php echo $option; ?>' === <?php echo $control['field']; ?> ) { %>selected="selected"<% } %>><?php echo $label; ?></option>
8
  <?php endforeach; ?>
3
 
4
  <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="fa fa-question-circle" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
5
  <select name="<?php echo $control['field']; ?>" id="<?php echo $control['field']; ?>" data-attribute="<?php echo $control['field']; ?>" data-pointer-target>
6
+ <?php if ( isset( $control['placeholder'] ) ) : ?>
7
+ <option value="" disabled selected><?php echo $control['placeholder']; ?></option>
8
+ <?php endif; ?>
9
  <?php foreach ( $control['options'] as $option => $label ) : ?>
10
  <option value="<?php echo $option; ?>" <% if ( '<?php echo $option; ?>' === <?php echo $control['field']; ?> ) { %>selected="selected"<% } %>><?php echo $label; ?></option>
11
  <?php endforeach; ?>
inc/core/templates/customize-controls/setup/text.php CHANGED
@@ -2,7 +2,7 @@
2
  <?php do_action( "happyforms_setup_control_{$control['field']}_before", $control ); ?>
3
 
4
  <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="fa fa-question-circle" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
5
- <input type="text" id="<?php echo $control['field']; ?>" value="<%= <?php echo $control['field']; ?> %>" data-attribute="<?php echo $control['field']; ?>" data-pointer-target />
6
 
7
  <?php do_action( "happyforms_setup_control_{$control['field']}_after", $control ); ?>
8
  </div>
2
  <?php do_action( "happyforms_setup_control_{$control['field']}_before", $control ); ?>
3
 
4
  <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="fa fa-question-circle" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
5
+ <input type="text" id="<?php echo $control['field']; ?>" value="<%= <?php echo $control['field']; ?> %>" data-attribute="<?php echo $control['field']; ?>" placeholder="<?php echo ( isset( $control['placeholder'] ) ) ? $control['placeholder'] : ''; ?>" data-pointer-target />
6
 
7
  <?php do_action( "happyforms_setup_control_{$control['field']}_after", $control ); ?>
8
  </div>
inc/core/templates/parts/customize-email.php CHANGED
@@ -64,10 +64,6 @@
64
  <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="width" /> <?php _e( 'Apply to all parts', 'happyforms' ); ?>
65
  </label>
66
  </p>
67
- <p>
68
- <label for="<%= instance.id %>_css_class"><?php _e( 'Custom CSS class', 'happyforms' ); ?></label>
69
- <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
70
- </p>
71
  <p>
72
  <label>
73
  <input type="checkbox" class="checkbox" value="1" <% if ( instance.autocomplete_domains ) { %>checked="checked"<% } %> data-bind="autocomplete_domains" /> <?php _e( 'Suggest common email domains', 'happyforms' ); ?>
@@ -84,6 +80,11 @@
84
  </p>
85
 
86
  <?php do_action( 'happyforms_part_customize_email_after_advanced_options' ); ?>
 
 
 
 
 
87
  </div>
88
 
89
  <div class="happyforms-part-logic-wrap">
64
  <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="width" /> <?php _e( 'Apply to all parts', 'happyforms' ); ?>
65
  </label>
66
  </p>
 
 
 
 
67
  <p>
68
  <label>
69
  <input type="checkbox" class="checkbox" value="1" <% if ( instance.autocomplete_domains ) { %>checked="checked"<% } %> data-bind="autocomplete_domains" /> <?php _e( 'Suggest common email domains', 'happyforms' ); ?>
80
  </p>
81
 
82
  <?php do_action( 'happyforms_part_customize_email_after_advanced_options' ); ?>
83
+
84
+ <p>
85
+ <label for="<%= instance.id %>_css_class"><?php _e( 'Custom CSS class', 'happyforms' ); ?></label>
86
+ <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
87
+ </p>
88
  </div>
89
 
90
  <div class="happyforms-part-logic-wrap">
inc/helpers/helper-activation.php ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ function happyforms_uninstall_cleanup() {
3
+ if ( file_exists( ABSPATH . 'wp-content/plugins/happyforms-upgrade' ) ) {
4
+ return;
5
+ }
6
+
7
+ // Cleanup forms
8
+ $forms = get_posts( array(
9
+ 'post_type' => 'happyform',
10
+ 'post_status' => 'any',
11
+ 'numberposts' => -1,
12
+ ) );
13
+
14
+ foreach( $forms as $form ) {
15
+ wp_delete_post( $form->ID, true );
16
+ }
17
+
18
+ // Cleanup responses
19
+ $responses = get_posts( array(
20
+ 'post_type' => 'happyforms-message',
21
+ 'post_status' => 'any',
22
+ 'numberposts' => -1,
23
+ ) );
24
+
25
+ foreach( $responses as $response ) {
26
+ wp_delete_post( $response->ID, true );
27
+ }
28
+
29
+ // Cleanup options
30
+ delete_option( 'happyforms-data-version' );
31
+ delete_option( 'happyforms-tracking' );
32
+ delete_option( 'widget_happyforms_widget' );
33
+ delete_transient( '_happyforms_has_responses' );
34
+ }
35
+
36
+ add_action( 'happyforms_uninstall', 'happyforms_uninstall_cleanup' );
inc/templates/admin/export-upgrade-modal.php DELETED
@@ -1,49 +0,0 @@
1
- <div id="happyforms-export-upgrade-existing" class="happyforms-upgrade-modal-container" style="display: none">
2
- <div class="happyforms-upgrade-modal">
3
- <a href="#" class="happyforms-upgrade-modal__close">
4
- <svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="times-circle" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="svg-inline--fa fa-times-circle fa-w-16 fa-3x"><path fill="currentColor" d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm121.6 313.1c4.7 4.7 4.7 12.3 0 17L338 377.6c-4.7 4.7-12.3 4.7-17 0L256 312l-65.1 65.6c-4.7 4.7-12.3 4.7-17 0L134.4 338c-4.7-4.7-4.7-12.3 0-17l65.6-65-65.6-65.1c-4.7-4.7-4.7-12.3 0-17l39.6-39.6c4.7-4.7 12.3-4.7 17 0l65 65.7 65.1-65.6c4.7-4.7 12.3-4.7 17 0l39.6 39.6c4.7 4.7 4.7 12.3 0 17L312 256l65.6 65.1z" class=""></path></svg>
5
- <span class="screen-reader-text">Close</span>
6
- </a>
7
-
8
- <img src="<?php echo happyforms_get_plugin_url(); ?>/inc/assets/img/logo.png" alt="HappyForms" class="happyforms-logo">
9
-
10
- <h2>Save, backup and transfer data…</h2>
11
-
12
- <p>Want to backup all data? Transfer forms and responses? Or share form designs from this website to another? We have good news! Our upgrade plans now make these tricky tasks super-easy.</p>
13
-
14
- <p>To make your transition easier, we're offering $20 off upgrades.<br>Use the coupon code “TRANSITION20” or <a href="mailto:support@thethemefoundry.com">email us for help</a>.</p>
15
-
16
- <div class="happyforms-upgrade-modal__buttons">
17
- <div class="happyforms-upgrade-modal__button">
18
- <a href="https://happyforms.me/upgrade" target="_blank" class="button button-primary">Support HappyForms By Upgrading</a>
19
- </div>
20
- <div class="happyforms-upgrade-modal__button happyforms-upgrade-modal__button--grey">
21
- Or <a href="#" class="happyforms-continue-link">continue with free version</a>
22
- </div>
23
- </div>
24
- </div>
25
- </div>
26
-
27
- <div id="happyforms-export-upgrade-new" class="happyforms-upgrade-modal-container" style="display: none">
28
- <div class="happyforms-upgrade-modal">
29
- <a href="#" class="happyforms-upgrade-modal__close">
30
- <svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="times-circle" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="svg-inline--fa fa-times-circle fa-w-16 fa-3x"><path fill="currentColor" d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm121.6 313.1c4.7 4.7 4.7 12.3 0 17L338 377.6c-4.7 4.7-12.3 4.7-17 0L256 312l-65.1 65.6c-4.7 4.7-12.3 4.7-17 0L134.4 338c-4.7-4.7-4.7-12.3 0-17l65.6-65-65.6-65.1c-4.7-4.7-4.7-12.3 0-17l39.6-39.6c4.7-4.7 12.3-4.7 17 0l65 65.7 65.1-65.6c4.7-4.7 12.3-4.7 17 0l39.6 39.6c4.7 4.7 4.7 12.3 0 17L312 256l65.6 65.1z" class=""></path></svg>
31
- <span class="screen-reader-text">Close</span>
32
- </a>
33
-
34
- <img src="<?php echo happyforms_get_plugin_url(); ?>/inc/assets/img/logo.png" alt="HappyForms" class="happyforms-logo">
35
-
36
- <h2>Save, backup and transfer data…</h2>
37
-
38
- <p>Want to backup all data? Transfer forms and responses? Or share form designs from this website to another? We have good news! Our upgrade plans now make these tricky tasks super-easy.</p>
39
-
40
- <div class="happyforms-upgrade-modal__buttons">
41
- <div class="happyforms-upgrade-modal__button">
42
- <a href="https://happyforms.me/upgrade" target="_blank" class="button button-primary">Support HappyForms By Upgrading</a>
43
- </div>
44
- <div class="happyforms-upgrade-modal__button happyforms-upgrade-modal__button--grey">
45
- Or <a href="#" class="happyforms-continue-link">continue with free version</a>
46
- </div>
47
- </div>
48
- </div>
49
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
inc/templates/admin/responses-upgrade-modal.php DELETED
@@ -1,64 +0,0 @@
1
- <div id="happyforms-responses-upgrade-existing" class="happyforms-upgrade-modal-container" style="display: none">
2
- <div class="happyforms-upgrade-modal">
3
- <a href="#" class="happyforms-upgrade-modal__close">
4
- <svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="times-circle" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="svg-inline--fa fa-times-circle fa-w-16 fa-3x"><path fill="currentColor" d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm121.6 313.1c4.7 4.7 4.7 12.3 0 17L338 377.6c-4.7 4.7-12.3 4.7-17 0L256 312l-65.1 65.6c-4.7 4.7-12.3 4.7-17 0L134.4 338c-4.7-4.7-4.7-12.3 0-17l65.6-65-65.6-65.1c-4.7-4.7-4.7-12.3 0-17l39.6-39.6c4.7-4.7 12.3-4.7 17 0l65 65.7 65.1-65.6c4.7-4.7 12.3-4.7 17 0l39.6 39.6c4.7 4.7 4.7 12.3 0 17L312 256l65.6 65.1z" class=""></path></svg>
5
- <span class="screen-reader-text">Close</span>
6
- </a>
7
-
8
- <img src="<?php echo happyforms_get_plugin_url(); ?>/inc/assets/img/logo.png" alt="HappyForms" class="happyforms-logo">
9
-
10
- <h2>We've removed free responses…</h2>
11
-
12
- <p>Starting today, you'll need to upgrade HappyForms to save responses and get access to <a href="https://happyforms.me/features" target="_blank">all paid features</a>.</p>
13
-
14
- <p>We know this is surprising, and we're sorry! 😔 We want to continue developing the free HappyForms plugin, but we can't do this without the support of more paying customers.</p>
15
-
16
- <p>To make your transition easier, we're offering $20 off upgrades.<br>Use the coupon code “TRANSITION20” or <a href="mailto:support@thethemefoundry.com">email us for help</a>.</p>
17
-
18
- <div class="happyforms-upgrade-modal__buttons">
19
- <?php $forms = happyforms_get_message_controller()->get_archivable_forms(); ?>
20
- <div class="happyforms-upgrade-modal__button">
21
- <a href="#" class="button happyforms-export-button">Download My Archived Responses</a>
22
- </div>
23
- <form action="<?php echo admin_url( 'edit.php?post_type=happyform' ); ?>">
24
- <input type="hidden" name="post_type" value="happyform" />
25
- <select name="archive">
26
- <?php foreach( $forms as $form ) : ?>
27
- <option value="<?php echo $form->ID; ?>"><?php echo $form->post_title; ?></option>
28
- <?php endforeach; ?>
29
- </select>
30
- <input type="submit" class="button" value="Download">
31
- </form>
32
- <div class="happyforms-upgrade-modal__button">
33
- <a href="https://happyforms.me/upgrade" target="_blank" class="button button-primary">Support HappyForms By Upgrading</a>
34
- </div>
35
- <div class="happyforms-upgrade-modal__button happyforms-upgrade-modal__button--grey">
36
- Or <a href="#" class="happyforms-continue-link">continue with free version</a>
37
- </div>
38
- </div>
39
- </div>
40
- </div>
41
-
42
- <div id="happyforms-responses-upgrade-new" class="happyforms-upgrade-modal-container" style="display: none">
43
- <div class="happyforms-upgrade-modal">
44
- <a href="#" class="happyforms-upgrade-modal__close">
45
- <svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="times-circle" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="svg-inline--fa fa-times-circle fa-w-16 fa-3x"><path fill="currentColor" d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm121.6 313.1c4.7 4.7 4.7 12.3 0 17L338 377.6c-4.7 4.7-12.3 4.7-17 0L256 312l-65.1 65.6c-4.7 4.7-12.3 4.7-17 0L134.4 338c-4.7-4.7-4.7-12.3 0-17l65.6-65-65.6-65.1c-4.7-4.7-4.7-12.3 0-17l39.6-39.6c4.7-4.7 12.3-4.7 17 0l65 65.7 65.1-65.6c4.7-4.7 12.3-4.7 17 0l39.6 39.6c4.7 4.7 4.7 12.3 0 17L312 256l65.6 65.1z" class=""></path></svg>
46
- <span class="screen-reader-text">Close</span>
47
- </a>
48
-
49
- <img src="<?php echo happyforms_get_plugin_url(); ?>/inc/assets/img/logo.png" alt="HappyForms" class="happyforms-logo">
50
-
51
- <h2>Read responses and see recipient data…</h2>
52
-
53
- <p>HappyForms doesn't have the function to save responses.<br> You'll need to upgrade HappyForms to save responses and get access to <a href="https://happyforms.me/features" target="_blank">all paid features</a>.</p>
54
-
55
- <div class="happyforms-upgrade-modal__buttons">
56
- <div class="happyforms-upgrade-modal__button">
57
- <a href="https://happyforms.me/upgrade" target="_blank" class="button button-primary">Discover HappyForms Upgrade</a>
58
- </div>
59
- <div class="happyforms-upgrade-modal__button happyforms-upgrade-modal__button--grey">
60
- Or <a href="#" class="happyforms-continue-link">continue with free version</a>
61
- </div>
62
- </div>
63
- </div>
64
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
inc/templates/admin/upgrade-modal.php ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <div id="happyforms-upgrade-modal" class="happyforms-upgrade-modal-container" style="display: none">
2
+ <div class="happyforms-upgrade-modal">
3
+ <a href="#" class="happyforms-upgrade-modal__close">
4
+ <svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="times-circle" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="svg-inline--fa fa-times-circle fa-w-16 fa-3x"><path fill="currentColor" d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm121.6 313.1c4.7 4.7 4.7 12.3 0 17L338 377.6c-4.7 4.7-12.3 4.7-17 0L256 312l-65.1 65.6c-4.7 4.7-12.3 4.7-17 0L134.4 338c-4.7-4.7-4.7-12.3 0-17l65.6-65-65.6-65.1c-4.7-4.7-4.7-12.3 0-17l39.6-39.6c4.7-4.7 12.3-4.7 17 0l65 65.7 65.1-65.6c4.7-4.7 12.3-4.7 17 0l39.6 39.6c4.7 4.7 4.7 12.3 0 17L312 256l65.6 65.1z" class=""></path></svg>
5
+ <span class="screen-reader-text">Close</span>
6
+ </a>
7
+
8
+ <img src="<?php echo happyforms_get_plugin_url(); ?>/inc/assets/img/logo.png" alt="HappyForms" class="happyforms-logo">
9
+
10
+ <h2>You’ll need to upgrade to access this</h2>
11
+
12
+ <p>We offer several, affordable paid plans that include our best features. Upgrade today and increase your customer interactions.</p>
13
+
14
+ <div class="happyforms-upgrade-modal__buttons">
15
+ <div class="happyforms-upgrade-modal__button">
16
+ <a href="https://happyforms.me/upgrade" target="_blank" class="button button-primary">Pick a Plan Now</a>
17
+ </div>
18
+ <div class="happyforms-upgrade-modal__button happyforms-upgrade-modal__button--grey">
19
+ Or <a href="#" class="happyforms-continue-link">continue with free version</a>
20
+ </div>
21
+ </div>
22
+ </div>
23
+ </div>
languages/happyforms.pot CHANGED
@@ -2,9 +2,9 @@
2
  # This file is distributed under the same license as the HappyForms package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: HappyForms 1.8.14\n"
6
  "Report-Msgid-Bugs-To: https://thethemefoundry.com/support/\n"
7
- "POT-Creation-Date: 2019-08-15 06:47:00+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -13,147 +13,147 @@ msgstr ""
13
  "Language-Team: The Theme Foundry\n"
14
  "X-Generator: grunt-wp-i18n 0.4.9\n"
15
 
16
- #: inc/classes/class-happyforms.php:74
17
  msgid "Include mark and reply link"
18
  msgstr ""
19
 
20
- #: inc/classes/class-happyforms.php:75
21
  msgid "Reply to your users and mark their submission as read in one click."
22
  msgstr ""
23
 
24
- #: inc/classes/class-happyforms.php:81
25
  msgid "Redirect on complete"
26
  msgstr ""
27
 
28
- #: inc/classes/class-happyforms.php:82
29
  msgid ""
30
  "By default, recipients will be redirected to the post or page displaying "
31
  "this form. To set a custom redirect webpage, add a link here."
32
  msgstr ""
33
 
34
- #: inc/classes/class-happyforms.php:88
35
  msgid "Track goal link"
36
  msgstr ""
37
 
38
- #: inc/classes/class-happyforms.php:89
39
  msgid ""
40
  "Track recipients landing on this internal page after successfully "
41
  "submitting this form."
42
  msgstr ""
43
 
44
- #: inc/classes/class-happyforms.php:95
45
  msgid "Use theme styles"
46
  msgstr ""
47
 
48
- #: inc/classes/class-happyforms.php:96
49
  msgid "Inherit theme default styles instead of using HappyForms styles."
50
  msgstr ""
51
 
52
- #: inc/classes/class-happyforms.php:102
53
  msgid "Shuffle parts"
54
  msgstr ""
55
 
56
- #: inc/classes/class-happyforms.php:103
57
  msgid "Shuffle the order of all form parts to avoid biases in your responses."
58
  msgstr ""
59
 
60
- #: inc/classes/class-happyforms.php:110
61
  msgid ""
62
  "Use <a href=\"%s\" target=\"_blank\" class=\"external\"> Google "
63
  "ReCaptcha</a>"
64
  msgstr ""
65
 
66
- #: inc/classes/class-happyforms.php:113
67
  msgid "Protect your form against bots using your Google ReCaptcha credentials."
68
  msgstr ""
69
 
70
- #: inc/classes/class-happyforms.php:119
71
  msgid "Require password"
72
  msgstr ""
73
 
74
- #: inc/classes/class-happyforms.php:120
75
  msgid "Only users with password will be able to view and submit the form."
76
  msgstr ""
77
 
78
- #: inc/classes/class-happyforms.php:126
79
  msgid "Open in overlay window"
80
  msgstr ""
81
 
82
- #: inc/classes/class-happyforms.php:127
83
  msgid "Generate a link that can be clicked to open an overlay window for this form."
84
  msgstr ""
85
 
86
- #: inc/classes/class-happyforms.php:133
87
  msgid "Save responses"
88
  msgstr ""
89
 
90
- #: inc/classes/class-happyforms.php:134
91
  msgid "Keep recipients responses stored in your WordPress database."
92
  msgstr ""
93
 
94
- #: inc/classes/class-happyforms.php:141
95
  msgid "Save abandoned responses"
96
  msgstr ""
97
 
98
- #: inc/classes/class-happyforms.php:142
99
  msgid "Keep incomplete recipients responses stored in your WordPress database."
100
  msgstr ""
101
 
102
- #: inc/classes/class-happyforms.php:148
103
  msgid "Give each response an ID number"
104
  msgstr ""
105
 
106
- #: inc/classes/class-happyforms.php:149
107
  msgid "Tag responses with a unique, incremental identifier."
108
  msgstr ""
109
 
110
- #: inc/classes/class-happyforms.php:155
111
  msgid "Preview values before submission"
112
  msgstr ""
113
 
114
- #: inc/classes/class-happyforms.php:156
115
  msgid "Let your users review their submission before confirming it."
116
  msgstr ""
117
 
118
- #: inc/classes/class-happyforms.php:162
119
  msgid "Fade submit button until valid"
120
  msgstr ""
121
 
122
- #: inc/classes/class-happyforms.php:163
123
  msgid ""
124
  "Reduce the opacity of the submit button until all required form parts are "
125
  "valid."
126
  msgstr ""
127
 
128
- #: inc/classes/class-happyforms.php:169
129
  msgid "Limit responses"
130
  msgstr ""
131
 
132
- #: inc/classes/class-happyforms.php:170
133
  msgid "Set limit on number of allowed form submission in general or per user."
134
  msgstr ""
135
 
136
- #: inc/classes/class-happyforms.php:176
137
  msgid "Schedule visibility"
138
  msgstr ""
139
 
140
- #: inc/classes/class-happyforms.php:177
141
  msgid ""
142
  "Show or hide this form during a chosen time and day. Go to Settings > "
143
  "Timezone to set your city offset."
144
  msgstr ""
145
 
146
- #: inc/classes/class-happyforms.php:203
147
  msgid "HappyForms Upgrade"
148
  msgstr ""
149
 
150
- #: inc/classes/class-happyforms.php:204
151
  #: inc/core/templates/customize-form-parts-drawer.php:30
152
  #: inc/templates/customize-controls/checkbox_dummy.php:7
153
  msgid "Upgrade"
154
  msgstr ""
155
 
156
- #: inc/classes/class-happyforms.php:323
157
  msgid ""
158
  "<p><strong>Important changes to HappyForms</strong></p><p>We want to "
159
  "continue developing the free HappyForms plugin, but we can't do this "
@@ -161,15 +161,13 @@ msgid ""
161
  "1.8.11, we've transitioned the following features to the paid plugin: "
162
  "Scale, Rating, Story, Website Link, Table, Phone, Date & Time, Address, "
163
  "Title, Legal, Placeholder and Text Editor form parts along with redirects, "
164
- "submit button fade, Google ReCaptcha and response reviews.</p><p>If you're "
165
- "using these parts and features in your forms, they will be removed from the "
166
- "free plugin with this release. Please review all your existing forms for "
167
- "changes.</p><p>To make your transition easier, <a href=\"%s\" "
168
- "target=\"_blank\" class=\"external\">we're offering $20 off upgrades</a>. "
169
- "Use the coupon code “TRANSITION20” to save.</p>"
170
  msgstr ""
171
 
172
- #: inc/classes/class-happyforms.php:352
173
  msgid ""
174
  "<p>Can we ask a favor?</p><p>You created your first form %s days ago — how "
175
  "time flies! Since then, we’ve answered hundreds of community emails and "
@@ -219,6 +217,14 @@ msgstr ""
219
  msgid "For requiring fine print before accepting submission."
220
  msgstr ""
221
 
 
 
 
 
 
 
 
 
222
  #: inc/classes/parts/class-part-narrative-dummy.php:8
223
  msgid "Story"
224
  msgstr ""
@@ -1076,29 +1082,34 @@ msgstr ""
1076
  msgid "Responses"
1077
  msgstr ""
1078
 
1079
- #: inc/core/classes/class-happyforms-core.php:197
1080
  #: inc/core/classes/class-happyforms-core.php:198
1081
- msgid "Import/Export"
 
1082
  msgstr ""
1083
 
1084
- #: inc/core/classes/class-happyforms-core.php:206
1085
  #: inc/core/classes/class-happyforms-core.php:207
 
 
 
 
 
 
1086
  msgid "Welcome"
1087
  msgstr ""
1088
 
1089
- #: inc/core/classes/class-happyforms-core.php:326
1090
  msgid "HappyForm"
1091
  msgstr ""
1092
 
1093
- #: inc/core/classes/class-happyforms-core.php:330
1094
  msgid "New HappyForm"
1095
  msgstr ""
1096
 
1097
- #: inc/core/classes/class-happyforms-core.php:451
1098
  msgid "Insert HappyForm"
1099
  msgstr ""
1100
 
1101
- #: inc/core/classes/class-happyforms-core.php:451
1102
  msgid "Add HappyForms"
1103
  msgstr ""
1104
 
@@ -3563,7 +3574,7 @@ msgid "Auto"
3563
  msgstr ""
3564
 
3565
  #: inc/core/templates/parts/customize-checkbox.php:97
3566
- #: inc/core/templates/parts/customize-email.php:68
3567
  #: inc/core/templates/parts/customize-multi-line-text.php:83
3568
  #: inc/core/templates/parts/customize-number.php:99
3569
  #: inc/core/templates/parts/customize-radio.php:89
@@ -3609,16 +3620,16 @@ msgstr ""
3609
  msgid "Reveal on focus"
3610
  msgstr ""
3611
 
3612
- #: inc/core/templates/parts/customize-email.php:73
3613
  msgid "Suggest common email domains"
3614
  msgstr ""
3615
 
3616
- #: inc/core/templates/parts/customize-email.php:78
3617
  #: inc/core/templates/parts/customize-number.php:104
3618
  msgid "Require confirmation of the value"
3619
  msgstr ""
3620
 
3621
- #: inc/core/templates/parts/customize-email.php:82
3622
  #: inc/core/templates/parts/customize-number.php:108
3623
  msgid "Confirmation field title"
3624
  msgstr ""
2
  # This file is distributed under the same license as the HappyForms package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: HappyForms 1.8.15\n"
6
  "Report-Msgid-Bugs-To: https://thethemefoundry.com/support/\n"
7
+ "POT-Creation-Date: 2019-08-28 07:59:33+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
13
  "Language-Team: The Theme Foundry\n"
14
  "X-Generator: grunt-wp-i18n 0.4.9\n"
15
 
16
+ #: inc/classes/class-happyforms.php:77
17
  msgid "Include mark and reply link"
18
  msgstr ""
19
 
20
+ #: inc/classes/class-happyforms.php:78
21
  msgid "Reply to your users and mark their submission as read in one click."
22
  msgstr ""
23
 
24
+ #: inc/classes/class-happyforms.php:84
25
  msgid "Redirect on complete"
26
  msgstr ""
27
 
28
+ #: inc/classes/class-happyforms.php:85
29
  msgid ""
30
  "By default, recipients will be redirected to the post or page displaying "
31
  "this form. To set a custom redirect webpage, add a link here."
32
  msgstr ""
33
 
34
+ #: inc/classes/class-happyforms.php:91
35
  msgid "Track goal link"
36
  msgstr ""
37
 
38
+ #: inc/classes/class-happyforms.php:92
39
  msgid ""
40
  "Track recipients landing on this internal page after successfully "
41
  "submitting this form."
42
  msgstr ""
43
 
44
+ #: inc/classes/class-happyforms.php:98
45
  msgid "Use theme styles"
46
  msgstr ""
47
 
48
+ #: inc/classes/class-happyforms.php:99
49
  msgid "Inherit theme default styles instead of using HappyForms styles."
50
  msgstr ""
51
 
52
+ #: inc/classes/class-happyforms.php:105
53
  msgid "Shuffle parts"
54
  msgstr ""
55
 
56
+ #: inc/classes/class-happyforms.php:106
57
  msgid "Shuffle the order of all form parts to avoid biases in your responses."
58
  msgstr ""
59
 
60
+ #: inc/classes/class-happyforms.php:113
61
  msgid ""
62
  "Use <a href=\"%s\" target=\"_blank\" class=\"external\"> Google "
63
  "ReCaptcha</a>"
64
  msgstr ""
65
 
66
+ #: inc/classes/class-happyforms.php:116
67
  msgid "Protect your form against bots using your Google ReCaptcha credentials."
68
  msgstr ""
69
 
70
+ #: inc/classes/class-happyforms.php:122
71
  msgid "Require password"
72
  msgstr ""
73
 
74
+ #: inc/classes/class-happyforms.php:123
75
  msgid "Only users with password will be able to view and submit the form."
76
  msgstr ""
77
 
78
+ #: inc/classes/class-happyforms.php:129
79
  msgid "Open in overlay window"
80
  msgstr ""
81
 
82
+ #: inc/classes/class-happyforms.php:130
83
  msgid "Generate a link that can be clicked to open an overlay window for this form."
84
  msgstr ""
85
 
86
+ #: inc/classes/class-happyforms.php:136
87
  msgid "Save responses"
88
  msgstr ""
89
 
90
+ #: inc/classes/class-happyforms.php:137
91
  msgid "Keep recipients responses stored in your WordPress database."
92
  msgstr ""
93
 
94
+ #: inc/classes/class-happyforms.php:144
95
  msgid "Save abandoned responses"
96
  msgstr ""
97
 
98
+ #: inc/classes/class-happyforms.php:145
99
  msgid "Keep incomplete recipients responses stored in your WordPress database."
100
  msgstr ""
101
 
102
+ #: inc/classes/class-happyforms.php:151
103
  msgid "Give each response an ID number"
104
  msgstr ""
105
 
106
+ #: inc/classes/class-happyforms.php:152
107
  msgid "Tag responses with a unique, incremental identifier."
108
  msgstr ""
109
 
110
+ #: inc/classes/class-happyforms.php:158
111
  msgid "Preview values before submission"
112
  msgstr ""
113
 
114
+ #: inc/classes/class-happyforms.php:159
115
  msgid "Let your users review their submission before confirming it."
116
  msgstr ""
117
 
118
+ #: inc/classes/class-happyforms.php:165
119
  msgid "Fade submit button until valid"
120
  msgstr ""
121
 
122
+ #: inc/classes/class-happyforms.php:166
123
  msgid ""
124
  "Reduce the opacity of the submit button until all required form parts are "
125
  "valid."
126
  msgstr ""
127
 
128
+ #: inc/classes/class-happyforms.php:172
129
  msgid "Limit responses"
130
  msgstr ""
131
 
132
+ #: inc/classes/class-happyforms.php:173
133
  msgid "Set limit on number of allowed form submission in general or per user."
134
  msgstr ""
135
 
136
+ #: inc/classes/class-happyforms.php:179
137
  msgid "Schedule visibility"
138
  msgstr ""
139
 
140
+ #: inc/classes/class-happyforms.php:180
141
  msgid ""
142
  "Show or hide this form during a chosen time and day. Go to Settings > "
143
  "Timezone to set your city offset."
144
  msgstr ""
145
 
146
+ #: inc/classes/class-happyforms.php:205
147
  msgid "HappyForms Upgrade"
148
  msgstr ""
149
 
150
+ #: inc/classes/class-happyforms.php:206
151
  #: inc/core/templates/customize-form-parts-drawer.php:30
152
  #: inc/templates/customize-controls/checkbox_dummy.php:7
153
  msgid "Upgrade"
154
  msgstr ""
155
 
156
+ #: inc/classes/class-happyforms.php:320
157
  msgid ""
158
  "<p><strong>Important changes to HappyForms</strong></p><p>We want to "
159
  "continue developing the free HappyForms plugin, but we can't do this "
161
  "1.8.11, we've transitioned the following features to the paid plugin: "
162
  "Scale, Rating, Story, Website Link, Table, Phone, Date & Time, Address, "
163
  "Title, Legal, Placeholder and Text Editor form parts along with redirects, "
164
+ "submit button fade, reCAPTCHA and response reviews.</p><p>If you're using "
165
+ "these parts and features in your forms, they will be removed from the free "
166
+ "plugin with this release. Please review all your existing forms for "
167
+ "changes.</p>"
 
 
168
  msgstr ""
169
 
170
+ #: inc/classes/class-happyforms.php:348
171
  msgid ""
172
  "<p>Can we ask a favor?</p><p>You created your first form %s days ago — how "
173
  "time flies! Since then, we’ve answered hundreds of community emails and "
217
  msgid "For requiring fine print before accepting submission."
218
  msgstr ""
219
 
220
+ #: inc/classes/parts/class-part-mailchimp-dummy.php:8
221
+ msgid "Mailchimp"
222
+ msgstr ""
223
+
224
+ #: inc/classes/parts/class-part-mailchimp-dummy.php:9
225
+ msgid "For requiring permission before opting into your mailing list."
226
+ msgstr ""
227
+
228
  #: inc/classes/parts/class-part-narrative-dummy.php:8
229
  msgid "Story"
230
  msgstr ""
1082
  msgid "Responses"
1083
  msgstr ""
1084
 
 
1085
  #: inc/core/classes/class-happyforms-core.php:198
1086
+ #: inc/core/classes/class-happyforms-core.php:199
1087
+ msgid "Integrations"
1088
  msgstr ""
1089
 
 
1090
  #: inc/core/classes/class-happyforms-core.php:207
1091
+ #: inc/core/classes/class-happyforms-core.php:208
1092
+ msgid "Import/Export"
1093
+ msgstr ""
1094
+
1095
+ #: inc/core/classes/class-happyforms-core.php:216
1096
+ #: inc/core/classes/class-happyforms-core.php:217
1097
  msgid "Welcome"
1098
  msgstr ""
1099
 
1100
+ #: inc/core/classes/class-happyforms-core.php:336
1101
  msgid "HappyForm"
1102
  msgstr ""
1103
 
1104
+ #: inc/core/classes/class-happyforms-core.php:340
1105
  msgid "New HappyForm"
1106
  msgstr ""
1107
 
1108
+ #: inc/core/classes/class-happyforms-core.php:461
1109
  msgid "Insert HappyForm"
1110
  msgstr ""
1111
 
1112
+ #: inc/core/classes/class-happyforms-core.php:461
1113
  msgid "Add HappyForms"
1114
  msgstr ""
1115
 
3574
  msgstr ""
3575
 
3576
  #: inc/core/templates/parts/customize-checkbox.php:97
3577
+ #: inc/core/templates/parts/customize-email.php:85
3578
  #: inc/core/templates/parts/customize-multi-line-text.php:83
3579
  #: inc/core/templates/parts/customize-number.php:99
3580
  #: inc/core/templates/parts/customize-radio.php:89
3620
  msgid "Reveal on focus"
3621
  msgstr ""
3622
 
3623
+ #: inc/core/templates/parts/customize-email.php:69
3624
  msgid "Suggest common email domains"
3625
  msgstr ""
3626
 
3627
+ #: inc/core/templates/parts/customize-email.php:74
3628
  #: inc/core/templates/parts/customize-number.php:104
3629
  msgid "Require confirmation of the value"
3630
  msgstr ""
3631
 
3632
+ #: inc/core/templates/parts/customize-email.php:78
3633
  #: inc/core/templates/parts/customize-number.php:108
3634
  msgid "Confirmation field title"
3635
  msgstr ""
readme.txt CHANGED
@@ -5,7 +5,7 @@ Tags: contact, contact form, email, feedback form, form, form builder, custom fo
5
  Requires at least: 4.8
6
  Tested up to: 5.2
7
  Requires PHP: 5.3
8
- Stable tag: 1.8.14
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
@@ -97,6 +97,9 @@ Yep! HappyForms free isn't going anywhere but for those looking for even more yo
97
 
98
  == Changelog ==
99
 
 
 
 
100
  = 1.8.14 =
101
  * New feature: Form error message and required field label are now easy to edit in Step 2.
102
 
@@ -525,6 +528,9 @@ Yep! HappyForms free isn't going anywhere but for those looking for even more yo
525
 
526
  == Upgrade Notice ==
527
 
 
 
 
528
  = 1.8.14 =
529
  * Customizable form error message and required field label.
530
 
5
  Requires at least: 4.8
6
  Tested up to: 5.2
7
  Requires PHP: 5.3
8
+ Stable tag: 1.8.15
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
97
 
98
  == Changelog ==
99
 
100
+ = 1.8.15 =
101
+ * Bugfix: Fix admin notices.
102
+
103
  = 1.8.14 =
104
  * New feature: Form error message and required field label are now easy to edit in Step 2.
105
 
528
 
529
  == Upgrade Notice ==
530
 
531
+ = 1.8.15 =
532
+ * Fix admin notices.
533
+
534
  = 1.8.14 =
535
  * Customizable form error message and required field label.
536