Google Captcha (reCAPTCHA) by BestWebSoft - Version 1.44

Version Description

  • 09.05.2019 =
  • NEW : The ability to keep submit button disabled until user passes the reCAPTCHA test has been added.
  • Bugfix : The bug with "Advanced Protection" option has been fixed.
Download this release

Release Info

Developer bestwebsoft
Plugin Icon 128x128 Google Captcha (reCAPTCHA) by BestWebSoft
Version 1.44
Comparing to
See all releases

Code changes from version 1.43 to 1.44

bws_menu/bws_functions.php CHANGED
@@ -91,7 +91,7 @@ if ( ! function_exists( 'bws_plugin_reviews_block' ) ) {
91
  <div class="bws-plugin-reviews-rate">
92
  <?php _e( 'Like the plugin?', 'bestwebsoft' ); ?>
93
  <a href="https://wordpress.org/support/view/plugin-reviews/<?php echo esc_attr( $plugin_slug ); ?>?filter=5" target="_blank" title="<?php printf( __( '%s reviews', 'bestwebsoft' ), sanitize_text_field( $plugin_name ) ); ?>">
94
- <?php _e( 'Rate it', 'bestwebsoft' ); ?>
95
  <span class="dashicons dashicons-star-filled"></span>
96
  <span class="dashicons dashicons-star-filled"></span>
97
  <span class="dashicons dashicons-star-filled"></span>
@@ -261,8 +261,8 @@ if ( ! function_exists( 'bws_admin_notices' ) ) {
261
  */
262
  if ( ! empty( $bstwbsftwppdtplgns_options['deprecated_function'] ) ) { ?>
263
  <div class="update-nag">
264
- <strong><?php _e( 'Deprecated function(-s) is used on the site here:', 'bestwebsoft' ); ?></strong>
265
- <?php $i = 1;
266
  foreach ( $bstwbsftwppdtplgns_options['deprecated_function'] as $function_name => $attr ) {
267
  if ( 1 != $i )
268
  echo ' ,';
@@ -275,8 +275,8 @@ if ( ! function_exists( 'bws_admin_notices' ) ) {
275
  $i++;
276
  } ?>.
277
  <br/>
278
- <?php _e( 'This function(-s) will be removed over time. Please update the product(-s).', 'bestwebsoft' ); ?>
279
- </div>
280
  <?php if ( is_multisite() )
281
  update_site_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options );
282
  else
@@ -594,7 +594,7 @@ if ( ! function_exists ( 'bws_admin_enqueue_scripts' ) ) {
594
  add_thickbox();
595
  wp_enqueue_script( 'plugin-install' );
596
  }
597
-
598
  if ( 'plugins.php' == $hook_suffix && ! defined( 'DOING_AJAX' ) ) {
599
  wp_enqueue_style( 'bws-modal-css', bws_menu_url( 'css/modal.css' ) );
600
  }
@@ -887,7 +887,7 @@ if ( ! function_exists( 'bws_shortcode_media_button_popup' ) ) {
887
  }
888
  }
889
 
890
- /**
891
  * output shortcode in a special block
892
  * @since 1.9.8
893
  */
@@ -897,7 +897,7 @@ if ( ! function_exists( 'bws_shortcode_output' ) ) {
897
  <?php }
898
  }
899
 
900
- /**
901
  * output tooltip
902
  * @since 1.9.8
903
  * @param string $content - HTML content for the tooltip
91
  <div class="bws-plugin-reviews-rate">
92
  <?php _e( 'Like the plugin?', 'bestwebsoft' ); ?>
93
  <a href="https://wordpress.org/support/view/plugin-reviews/<?php echo esc_attr( $plugin_slug ); ?>?filter=5" target="_blank" title="<?php printf( __( '%s reviews', 'bestwebsoft' ), sanitize_text_field( $plugin_name ) ); ?>">
94
+ <?php _e( 'Rate it', 'bestwebsoft' ); ?>
95
  <span class="dashicons dashicons-star-filled"></span>
96
  <span class="dashicons dashicons-star-filled"></span>
97
  <span class="dashicons dashicons-star-filled"></span>
261
  */
262
  if ( ! empty( $bstwbsftwppdtplgns_options['deprecated_function'] ) ) { ?>
263
  <div class="update-nag">
264
+ <strong><?php _e( 'Deprecated function(-s) is used on the site here:', 'bestwebsoft' ); ?></strong>
265
+ <?php $i = 1;
266
  foreach ( $bstwbsftwppdtplgns_options['deprecated_function'] as $function_name => $attr ) {
267
  if ( 1 != $i )
268
  echo ' ,';
275
  $i++;
276
  } ?>.
277
  <br/>
278
+ <?php _e( 'This function(-s) will be removed over time. Please update the product(-s).', 'bestwebsoft' ); ?>
279
+ </div>
280
  <?php if ( is_multisite() )
281
  update_site_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options );
282
  else
594
  add_thickbox();
595
  wp_enqueue_script( 'plugin-install' );
596
  }
597
+
598
  if ( 'plugins.php' == $hook_suffix && ! defined( 'DOING_AJAX' ) ) {
599
  wp_enqueue_style( 'bws-modal-css', bws_menu_url( 'css/modal.css' ) );
600
  }
887
  }
888
  }
889
 
890
+ /**
891
  * output shortcode in a special block
892
  * @since 1.9.8
893
  */
897
  <?php }
898
  }
899
 
900
+ /**
901
  * output tooltip
902
  * @since 1.9.8
903
  * @param string $content - HTML content for the tooltip
bws_menu/bws_menu.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
  /*
3
  * Function for displaying BestWebSoft menu
4
- * Version: 2.1.5
5
  */
6
 
7
  if ( ! function_exists ( 'bws_admin_enqueue_scripts' ) )
@@ -13,8 +13,8 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
13
  $error = $message = '';
14
 
15
  /**
16
- * @deprecated 1.9.8 (15.12.2016)
17
- */
18
  $is_main_page = in_array( $_GET['page'], array( 'bws_panel', 'bws_themes', 'bws_system_status' ) );
19
  $page = esc_attr( $_GET['page'] );
20
  $tab = isset( $_GET['tab'] ) ? esc_attr( $_GET['tab'] ) : '';
@@ -66,7 +66,7 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
66
  }
67
  /* check expired */
68
  if ( $is_pro_installed && isset( $bstwbsftwppdtplgns_options['time_out'][ $value_plugin['pro_version'] ] ) &&
69
- strtotime( $bstwbsftwppdtplgns_options['time_out'][ $value_plugin['pro_version'] ] ) < strtotime( date( "m/d/Y" ) ) ) {
70
  unset( $bws_plugins[ $key_plugin ] );
71
  $value_plugin['expired'] = $bstwbsftwppdtplgns_options['time_out'][ $value_plugin['pro_version'] ];
72
  $bws_plugins_expired[ $key_plugin ] = $value_plugin;
@@ -157,7 +157,7 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
157
  if ( is_multisite() )
158
  update_site_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options );
159
  else
160
- update_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options );
161
  }
162
  } else {
163
  $error = __( "Please enter your license key.", 'bestwebsoft' );
@@ -167,11 +167,11 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
167
 
168
  $all_plugins = get_plugins();
169
  $active_plugins = get_option( 'active_plugins' );
170
- $mysql_info = $wpdb->get_results( "SHOW VARIABLES LIKE 'sql_mode'" );
171
- if ( is_array( $mysql_info ) )
172
- $sql_mode = $mysql_info[0]->Value;
173
- if ( empty( $sql_mode ) )
174
- $sql_mode = __( 'Not set', 'bestwebsoft' );
175
 
176
  $allow_url_fopen = ( ini_get( 'allow_url_fopen' ) ) ? __( 'On', 'bestwebsoft' ) : __( 'Off', 'bestwebsoft' );
177
  $upload_max_filesize = ( ini_get( 'upload_max_filesize' ) )? ini_get( 'upload_max_filesize' ) : __( 'N/A', 'bestwebsoft' );
@@ -290,82 +290,82 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
290
  }
291
  }
292
  } ?>
293
- <div class="bws-wrap">
294
- <div class="bws-header">
295
- <div class="bws-title">
296
- <a href="<?php echo ( $is_main_page ) ? self_admin_url( 'admin.php?page=bws_panel' ) : esc_url( self_admin_url( 'admin.php?page=' . $page ) ); ?>">
297
- <span class="bws-logo bwsicons bwsicons-bws-logo"></span>
298
- BestWebSoft
299
- <span>panel</span>
300
- </a>
301
- </div>
302
- <div class="bws-menu-item-icon">&#8226;&#8226;&#8226;</div>
303
- <div class="bws-nav-tab-wrapper">
304
  <?php if ( $is_main_page ) { ?>
305
- <a class="bws-nav-tab<?php if ( 'bws_panel' == $page ) echo ' bws-nav-tab-active'; ?>" href="<?php echo self_admin_url( 'admin.php?page=bws_panel' ); ?>"><?php _e( 'Plugins', 'bestwebsoft' ); ?></a>
306
- <a class="bws-nav-tab<?php if ( 'bws_themes' == $page ) echo ' bws-nav-tab-active'; ?>" href="<?php echo self_admin_url( 'admin.php?page=bws_themes' ); ?>"><?php _e( 'Themes', 'bestwebsoft' ); ?></a>
307
- <a class="bws-nav-tab<?php if ( 'bws_system_status' == $page ) echo ' bws-nav-tab-active'; ?>" href="<?php echo self_admin_url( 'admin.php?page=bws_system_status' ); ?>"><?php _e( 'System status', 'bestwebsoft' ); ?></a>
308
  <?php } else { ?>
309
- <a class="bws-nav-tab<?php if ( ! isset( $_GET['tab'] ) ) echo ' bws-nav-tab-active'; ?>" href="<?php echo esc_url( self_admin_url( 'admin.php?page=' . $page ) ); ?>"><?php _e( 'Plugins', 'bestwebsoft' ); ?></a>
310
- <a class="bws-nav-tab<?php if ( 'themes' == $tab ) echo ' bws-nav-tab-active'; ?>" href="<?php echo esc_url( self_admin_url( 'admin.php?page=' . $page . '&tab=themes' ) ); ?>"><?php _e( 'Themes', 'bestwebsoft' ); ?></a>
311
- <a class="bws-nav-tab<?php if ( 'system-status' == $tab ) echo ' bws-nav-tab-active'; ?>" href="<?php echo esc_url( self_admin_url( 'admin.php?page=' . $page . '&tab=system-status' ) ); ?>"><?php _e( 'System status', 'bestwebsoft' ); ?></a>
312
  <?php } ?>
313
- </div>
314
- <div class="bws-help-links-wrapper">
315
- <a href="https://support.bestwebsoft.com" target="_blank"><?php _e( 'Support', 'bestwebsoft' ); ?></a>
316
- <a href="https://bestwebsoft.com/client-area" target="_blank" title="<?php _e( 'Manage purchased licenses & subscriptions', 'bestwebsoft' ); ?>">Client Area</a>
317
- </div>
318
- <div class="clear"></div>
319
- </div>
320
  <?php if ( ( 'bws_panel' == $page || ( ! isset( $_GET['tab'] ) && ! $is_main_page ) ) && ! isset( $_POST['bws_plugin_action_submit'] ) ) { ?>
321
- <div class="bws-membership-wrap">
322
- <div class="bws-membership-backround"></div>
323
- <div class="bws-membership">
324
- <div class="bws-membership-title"><?php printf( __( 'Get Access to %s+ Premium Plugins', 'bestwebsoft' ), '30' ); ?></div>
325
- <form class="bws-membership-form" method="post" action="">
326
- <span class="bws-membership-link"><a target="_blank" href="https://bestwebsoft.com/membership/"><?php _e( 'Subscribe to Pro Membership', 'bestwebsoft' ); ?></a> <?php _e( 'or', 'bestwebsoft' ); ?></span>
327
  <?php if ( isset( $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] ) &&
328
- '5' < $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] &&
329
- $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['time'] > ( time() - ( 24 * 60 * 60 ) ) ) { ?>
330
- <div class="bws_form_input_wrap">
331
- <input disabled="disabled" type="text" name="bws_license_key" value="<?php echo esc_attr( $bws_license_key); ?>" />
332
- <div class="bws_error"><?php _e( "Unfortunately, you have exceeded the number of available tries per day.", 'bestwebsoft' ); ?></div>
333
- </div>
334
- <input disabled="disabled" type="submit" class="bws-button" value="<?php _e( 'Check license key', 'bestwebsoft' ); ?>" />
335
  <?php } else { ?>
336
- <div class="bws_form_input_wrap">
337
- <input <?php if ( "" != $error ) echo 'class="bws_input_error"'; ?> type="text" placeholder="<?php _e( 'Enter your license key', 'bestwebsoft' ); ?>" maxlength="100" name="bws_license_key" value="<?php echo esc_attr( $bws_license_key ); ?>" />
338
- <div class="bws_error" <?php if ( "" == $error ) echo 'style="display:none"'; ?>><?php echo $error; ?></div>
339
- </div>
340
- <input type="hidden" name="bws_license_plugin" value="<?php echo esc_attr( $bws_license_plugin ); ?>" />
341
- <input type="hidden" name="bws_license_submit" value="submit" />
342
  <?php if ( empty( $plugins_array ) ) { ?>
343
- <input type="submit" class="bws-button" value="<?php _e( 'Activate', 'bestwebsoft' ); ?>" />
344
  <?php } else { ?>
345
- <input type="submit" class="bws-button" value="<?php _e( 'Check license key', 'bestwebsoft' ); ?>" />
346
  <?php } ?>
347
  <?php wp_nonce_field( plugin_basename(__FILE__), 'bws_license_nonce_name' ); ?>
348
  <?php } ?>
349
- </form>
350
- <div class="clear"></div>
351
- </div>
352
- </div>
353
  <?php } ?>
354
- <div class="bws-wrap-content wrap">
355
  <?php if ( 'bws_panel' == $page || ( ! isset( $_GET['tab'] ) && ! $is_main_page ) ) { ?>
356
- <div class="updated notice is-dismissible inline" <?php if ( '' == $message || '' != $error ) echo 'style="display:none"'; ?>><p><?php echo $message; ?></p></div>
357
- <h1>
358
  <?php _e( 'Plugins', 'bestwebsoft' ); ?>
359
- <a href="<?php echo self_admin_url( 'plugin-install.php?tab=upload' ); ?>" class="upload page-title-action add-new-h2"><?php _e( 'Upload Plugin', 'bestwebsoft' ); ?></a>
360
- </h1>
361
  <?php if ( isset( $_GET['error'] ) ) {
362
  if ( isset( $_GET['charsout'] ) )
363
  $errmsg = sprintf( __( 'The plugin generated %d characters of <strong>unexpected output</strong> during activation. If you notice &#8220;headers already sent&#8221; messages, problems with syndication feeds or other issues, try deactivating or removing this plugin.' ), $_GET['charsout'] );
364
  else
365
  $errmsg = __( 'Plugin could not be activated because it triggered a <strong>fatal error</strong>.' ); ?>
366
- <div id="message" class="error is-dismissible"><p><?php echo $errmsg; ?></p></div>
367
  <?php } elseif ( isset( $_GET['activate'] ) ) { ?>
368
- <div id="message" class="updated notice is-dismissible"><p><?php _e( 'Plugin <strong>activated</strong>.' ) ?></p></div>
369
  <?php }
370
 
371
  if ( isset( $_POST['bws_plugin_action_submit'] ) && isset( $_POST['bws_install_plugin'] ) && check_admin_referer( plugin_basename(__FILE__), 'bws_license_install_nonce_name' ) ) {
@@ -442,47 +442,47 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
442
  echo '<p class="error">' . $error . '</p>';
443
  echo '<p><a href="' . esc_url( self_admin_url( $current_page ) ) . '" target="_parent">' . __( 'Return to BestWebSoft Panel', 'bestwebsoft' ) . '</a></p>';
444
  }
445
- } else {
446
  $category_href = $current_page;
447
  if ( 'all' != $plugin_category )
448
  $category_href .= '&category=' . $plugin_category; ?>
449
- <ul class="subsubsub">
450
- <li>
451
- <a <?php if ( ! isset( $_GET['sub'] ) ) echo 'class="current" '; ?>href="<?php echo esc_url( self_admin_url( $category_href ) ); ?>"><?php _e( 'All', 'bestwebsoft' ); ?></a>
452
- </li> |
453
- <li>
454
- <a <?php if ( isset( $_GET['sub'] ) && 'installed' == $_GET['sub'] ) echo 'class="current" '; ?>href="<?php echo esc_url( self_admin_url( $category_href . '&sub=installed' ) ); ?>"><?php _e( 'Installed', 'bestwebsoft' ); ?></a>
455
- </li> |
456
- <li>
457
- <a <?php if ( isset( $_GET['sub'] ) && 'not_installed' == $_GET['sub'] ) echo 'class="current" '; ?>href="<?php echo esc_url( self_admin_url( $category_href . '&sub=not_installed' ) ); ?>"><?php _e( 'Not Installed', 'bestwebsoft' ); ?></a>
458
- </li>
459
- </ul>
460
- <div class="clear"></div>
461
- <div class="bws-filter-top">
462
- <h2>
463
- <span class="bws-toggle-indicator"></span>
464
  <?php _e( 'Filter results', 'bestwebsoft' ); ?>
465
- </h2>
466
- <div class="bws-filter-top-inside">
467
- <div class="bws-filter-title"><?php _e( 'Category', 'bestwebsoft' ); ?></div>
468
- <ul class="bws-category">
469
- <li>
470
  <?php $sub_in_url = ( isset( $_GET['sub'] ) && in_array( $_GET['sub'], array( 'installed', 'not_installed' ) ) ) ? '&sub=' . $_GET['sub'] : ''; ?>
471
- <a <?php if ( 'all' == $plugin_category ) echo ' class="bws-active"'; ?> href="<?php echo esc_url(self_admin_url( $current_page . $sub_in_url ) ); ?>"><?php _e( 'All', 'bestwebsoft' ); ?>
472
- <span>(<?php echo count( $bws_plugins ); ?>)</span>
473
- </a>
474
- </li>
475
  <?php foreach ( $bws_plugins_category as $category_key => $category_value ) { ?>
476
- <li>
477
- <a <?php if ( $category_key == $plugin_category ) echo ' class="bws-active"'; ?> href="<?php echo esc_url( self_admin_url( $current_page . $sub_in_url . '&category=' . $category_key ) ); ?>"><?php echo $category_value['name']; ?>
478
- <span>(<?php echo $category_value['count']; ?>)</span>
479
- </a>
480
- </li>
481
  <?php } ?>
482
- </ul>
483
- </div>
484
- </div>
485
- <div class="bws-products">
486
  <?php $nothing_found = true;
487
  foreach ( $bws_plugins as $key_plugin => $value_plugin ) {
488
 
@@ -503,19 +503,19 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
503
  }
504
 
505
  if ( ( isset( $_GET['sub'] ) && 'installed' == $_GET['sub'] && ! $is_pro_installed && ! $is_installed ) ||
506
- ( isset( $_GET['sub'] ) && 'not_installed' == $_GET['sub'] && ( $is_pro_installed || $is_installed ) ) )
507
  continue;
508
 
509
  $link_attr = isset( $value_plugin['install_url'] ) ? 'href="' . esc_url( $value_plugin['install_url'] ) . '" target="_blank"' : 'href="' . esc_url( self_admin_url( 'plugin-install.php?tab=plugin-information&plugin=' . $key_plugin_explode[0] . '&from=import&TB_iframe=true&width=600&height=550' ) ) . '" class="thickbox open-plugin-details-modal"';
510
 
511
  $nothing_found = false; ?>
512
- <div class="bws_product_box<?php if ( $is_active || $is_pro_active ) echo ' bws_product_active'; ?>">
513
- <div class="bws_product_image">
514
- <a <?php echo $link_attr; ?>><img src="<?php echo $icon; ?>"/></a>
515
- </div>
516
- <div class="bws_product_content">
517
- <div class="bws_product_title"><a <?php echo $link_attr; ?>><?php echo $value_plugin['name']; ?></a></div>
518
- <div class="bws-version">
519
  <?php
520
  if ( $is_pro_installed ) {
521
  echo '<span';
@@ -537,158 +537,158 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
537
  $r = $update_availible_all->response[ $value_plugin['update_availible'] ];
538
  echo ' - <a class="bws-update-now" href="' . esc_url( wp_nonce_url( self_admin_url( 'update.php?action=upgrade-plugin&plugin=' . $value_plugin['update_availible'] ), 'upgrade-plugin_' . $value_plugin['update_availible'] ) ) . '" class="update-link" aria-label="' . sprintf( __( 'Update to v %s', 'bestwebsoft' ), $r->new_version ) . '">' . sprintf( __( 'Update to v %s', 'bestwebsoft' ), $r->new_version ) . '</a>';
539
  } ?>
540
- </div>
541
- <div class="bws_product_description">
542
  <?php echo ( strlen( $value_plugin['description'] ) > 100 ) ? mb_substr( $value_plugin['description'], 0, 100 ) . '...' : $value_plugin['description']; ?>
543
- </div>
544
- <div class="bws_product_links">
545
  <?php if ( $is_active || $is_pro_active ) {
546
- if ( $is_pro_isset ) {
547
  if ( ! $is_pro_installed ) {
548
  if ( ! empty( $plugins_array ) && array_key_exists( $value_plugin['pro_version'], $plugins_array ) ) { ?>
549
- <form method="post" action="">
550
- <input type="submit" class="button button-secondary" value="<?php _e( 'Install Now', 'bestwebsoft' ); ?>" />
551
- <input type="hidden" name="bws_plugin_action_submit" value="submit" />
552
- <input type="hidden" name="bws_install_plugin" value="<?php echo $value_plugin['pro_version']; ?>" />
553
  <?php wp_nonce_field( plugin_basename(__FILE__), 'bws_license_install_nonce_name' ); ?>
554
- </form>
555
  <?php } else { ?>
556
- <a class="button button-secondary bws_upgrade_button" href="<?php echo esc_url( $bws_plugins[ $key_plugin ]['purchase'] ); ?>" target="_blank"><?php _e( 'Upgrade to Pro', 'bestwebsoft' ); ?></a>
557
  <?php }
558
  }
559
  } else { ?>
560
- <a class="bws_donate" href="https://bestwebsoft.com/donate/" target="_blank"><?php _e( 'Donate', 'bestwebsoft' ); ?></a> <span>|</span>
561
  <?php }
562
 
563
  if ( $is_pro_active ) { ?>
564
- <a class="bws_settings" href="<?php echo esc_url( self_admin_url( $bws_plugins[ $key_plugin ]["pro_settings"] ) ); ?>"><?php _e( 'Settings', 'bestwebsoft' ); ?></a>
565
  <?php } else { ?>
566
- <a class="bws_settings" href="<?php echo esc_url( self_admin_url( $bws_plugins[ $key_plugin ]["settings"] ) ); ?>"><?php _e( 'Settings', 'bestwebsoft' ); ?></a>
567
  <?php }
568
  } else {
569
  if ( $is_pro_installed ) { ?>
570
- <a class="button button-secondary" href="<?php echo esc_url( wp_nonce_url( self_admin_url( $current_page . '&bws_activate_plugin=' . $value_plugin['pro_version'] ), 'bws_activate_plugin' . $value_plugin['pro_version'] ) ); ?>" title="<?php _e( 'Activate this plugin', 'bestwebsoft' ); ?>"><?php _e( 'Activate', 'bestwebsoft' ); ?></a>
571
  <?php } elseif ( ! empty( $plugins_array ) && isset( $value_plugin['pro_version'] ) && array_key_exists( $value_plugin['pro_version'], $plugins_array ) ) { ?>
572
- <form method="post" action="">
573
- <input type="submit" class="button button-secondary" value="<?php _e( 'Install Now', 'bestwebsoft' ); ?>" />
574
- <input type="hidden" name="bws_plugin_action_submit" value="submit" />
575
- <input type="hidden" name="bws_install_plugin" value="<?php echo $value_plugin['pro_version']; ?>" />
576
  <?php wp_nonce_field( plugin_basename(__FILE__), 'bws_license_install_nonce_name' ); ?>
577
- </form>
578
  <?php } elseif ( $is_installed ) { ?>
579
- <a class="button button-secondary" href="<?php echo esc_url( wp_nonce_url( self_admin_url( $current_page . '&bws_activate_plugin=' . $key_plugin ), 'bws_activate_plugin' . $key_plugin ) ); ?>" title="<?php _e( 'Activate this plugin', 'bestwebsoft' ); ?>"><?php _e( 'Activate', 'bestwebsoft' ); ?></a>
580
  <?php } else {
581
  $install_url = isset( $value_plugin['install_url'] ) ? $value_plugin['install_url'] : self_admin_url( 'plugin-install.php?tab=search&type=term&s=' . str_replace( ' ', '+', str_replace( '-', '', $value_plugin['name'] ) ) . '+BestWebSoft&plugin-search-input=Search+Plugins' ); ?>
582
- <a class="button button-secondary" href="<?php echo esc_url( $install_url ); ?>" title="<?php _e( 'Install this plugin', 'bestwebsoft' ); ?>" target="_blank"><?php _e( 'Install Now', 'bestwebsoft' ); ?></a>
583
  <?php }
584
  } ?>
585
- </div>
586
- </div>
587
- <div class="clear"></div>
588
- </div>
589
  <?php }
590
  if ( $nothing_found ) { ?>
591
- <p class="description"><?php _e( 'Nothing found. Try another criteria.', 'bestwebsoft' ); ?></p>
592
  <?php } ?>
593
- </div>
594
- <div id="bws-filter-wrapper">
595
- <div class="bws-filter">
596
- <div class="bws-filter-title"><?php _e( 'Category', 'bestwebsoft' ); ?></div>
597
- <ul class="bws-category">
598
- <li>
599
  <?php $sub_in_url = ( isset( $_GET['sub'] ) && in_array( $_GET['sub'], array( 'installed', 'not_installed' ) ) ) ? '&sub=' . $_GET['sub'] : ''; ?>
600
- <a <?php if ( 'all' == $plugin_category ) echo ' class="bws-active"'; ?> href="<?php echo esc_url( self_admin_url( $current_page . $sub_in_url ) ); ?>"><?php _e( 'All', 'bestwebsoft' ); ?>
601
- <span>(<?php echo count( $bws_plugins ); ?>)</span>
602
- </a>
603
- </li>
604
  <?php foreach ( $bws_plugins_category as $category_key => $category_value ) { ?>
605
- <li>
606
- <a <?php if ( $category_key == $plugin_category ) echo ' class="bws-active"'; ?> href="<?php echo esc_url( self_admin_url( $current_page . $sub_in_url . '&category=' . $category_key ) ); ?>"><?php echo $category_value['name']; ?>
607
- <span>(<?php echo $category_value['count']; ?>)</span>
608
- </a>
609
- </li>
610
  <?php } ?>
611
- </ul>
612
- </div>
613
- </div><!-- #bws-filter-wrapper -->
614
- <div class="clear"></div>
615
  <?php }
616
  } elseif ( 'bws_themes' == $page || 'themes' == $tab ) {
617
  require( dirname( __FILE__ ) . '/product_list.php' ); ?>
618
- <h1><?php _e( 'Themes', 'bestwebsoft' ); ?></h1>
619
- <div id="availablethemes" class="bws-availablethemes">
620
- <div class="theme-browser content-filterable rendered">
621
- <div class="themes wp-clearfix">
622
  <?php foreach ( $themes as $key => $theme ) {
623
  $installed_theme = wp_get_theme( $theme->slug ); ?>
624
- <div class="theme" tabindex="0">
625
- <div class="theme-screenshot">
626
- <img src="<?php echo bws_menu_url( "icons/themes/" ) . $theme->slug . '.png'; ?>" alt="" />
627
- </div>
628
- <div class="theme-author"><?php printf( __( 'By %s', 'bestwebsoft' ), 'BestWebSoft' ); ?></div>
629
- <h3 class="theme-name"><?php echo $theme->name; ?></h3>
630
- <div class="theme-actions">
631
- <a class="button button-secondary preview install-theme-preview" href="<?php echo esc_url( $theme->href ); ?>" target="_blank"><?php _e( 'Learn More', 'bestwebsoft' ); ?></a>
632
- </div>
633
  <?php if ( $installed_theme->exists() ) {
634
  if ( $wp_version < '4.6' ) { ?>
635
- <div class="theme-installed"><?php _e( 'Already Installed', 'bestwebsoft' ); ?></div>
636
  <?php } else { ?>
637
- <div class="notice notice-success notice-alt inline"><p><?php _e( 'Installed', 'bestwebsoft' ); ?></p></div>
638
  <?php }
639
  } ?>
640
- </div>
641
  <?php } ?>
642
- <br class="clear" />
643
- </div>
644
- </div>
645
- <p><a class="bws_browse_link" href="https://bestwebsoft.com/products/wordpress/themes/" target="_blank"><?php _e( 'Browse More WordPress Themes', 'bestwebsoft' ); ?> <span class="dashicons dashicons-arrow-right-alt2"></span></a></p>
646
- </div>
647
  <?php } elseif ( 'bws_system_status' == $page || 'system-status' == $tab ) { ?>
648
- <h1><?php _e( 'System status', 'bestwebsoft' ); ?></h1>
649
- <div class="updated fade notice is-dismissible inline" <?php if ( ! ( isset( $_REQUEST['bwsmn_form_submit'] ) || isset( $_REQUEST['bwsmn_form_submit_custom_email'] ) ) || $error != "" ) echo 'style="display:none"'; ?>><p><strong><?php echo $message; ?></strong></p></div>
650
- <div class="error" <?php if ( "" == $error ) echo 'style="display:none"'; ?>><p><strong><?php echo $error; ?></strong></p></div>
651
- <form method="post" action="">
652
- <p>
653
- <input type="hidden" name="bwsmn_form_submit" value="submit" />
654
- <input type="submit" class="button-primary" value="<?php _e( 'Send to support', 'bestwebsoft' ) ?>" />
655
  <?php wp_nonce_field( plugin_basename(__FILE__), 'bwsmn_nonce_submit' ); ?>
656
- </p>
657
- </form>
658
- <form method="post" action="">
659
- <p>
660
- <input type="hidden" name="bwsmn_form_submit_custom_email" value="submit" />
661
- <input type="submit" class="button" value="<?php _e( 'Send to custom email &#187;', 'bestwebsoft' ) ?>" />
662
- <input type="text" maxlength="250" value="" name="bwsmn_form_email" />
663
  <?php wp_nonce_field( plugin_basename(__FILE__), 'bwsmn_nonce_submit_custom_email' ); ?>
664
- </p>
665
- </form>
666
  <?php foreach ( $system_info as $info ) { ?>
667
- <table class="widefat bws-system-info" cellspacing="0">
668
- <thead>
669
- <tr>
670
- <th colspan="2">
671
- <strong>
672
- <?php echo $info['name'];
673
- if ( isset( $info['count'] ) )
674
- echo ' (' . $info['count'] . ')'; ?>
675
- </strong>
676
- </th>
677
- </tr>
678
- </thead>
679
- <tbody>
680
- <?php foreach ( $info['data'] as $key => $value ) { ?>
681
- <tr>
682
- <td scope="row"><?php echo $key; ?></td>
683
- <td scope="row"><?php echo $value; ?></td>
684
- </tr>
685
- <?php } ?>
686
- </tbody>
687
- </table>
688
  <?php }
689
  } ?>
690
- </div>
691
- </div>
692
  <?php }
693
  }
694
 
@@ -729,9 +729,12 @@ if ( ! function_exists( 'bws_get_banner_array' ) ) {
729
  array( 'gglstmp_hide_banner_on_plugin_page', 'google-sitemap-plugin/google-sitemap-plugin.php', '2.8.4' ),
730
  array( 'cntctfrmpr_for_ctfrmtdb_hide_banner_on_plugin_page', 'contact-form-pro/contact_form_pro.php', '1.14' ),
731
  array( 'cntctfrm_hide_banner_on_plugin_page', 'contact-form-plugin/contact_form.php', '3.47' ),
732
- array( 'cptch_hide_banner_on_plugin_page', 'captcha/captcha.php', '3.8.4' ),
733
  array( 'gllr_hide_banner_on_plugin_page', 'gallery-plugin/gallery-plugin.php', '3.9.1' ),
734
- array( 'cntctfrm_for_ctfrmtdb_hide_banner_on_plugin_page', 'contact-form-plugin/contact_form.php', '3.62' )
 
 
 
735
  );
736
  }
737
  }
1
  <?php
2
  /*
3
  * Function for displaying BestWebSoft menu
4
+ * Version: 2.1.7
5
  */
6
 
7
  if ( ! function_exists ( 'bws_admin_enqueue_scripts' ) )
13
  $error = $message = '';
14
 
15
  /**
16
+ * @deprecated 1.9.8 (15.12.2016)
17
+ */
18
  $is_main_page = in_array( $_GET['page'], array( 'bws_panel', 'bws_themes', 'bws_system_status' ) );
19
  $page = esc_attr( $_GET['page'] );
20
  $tab = isset( $_GET['tab'] ) ? esc_attr( $_GET['tab'] ) : '';
66
  }
67
  /* check expired */
68
  if ( $is_pro_installed && isset( $bstwbsftwppdtplgns_options['time_out'][ $value_plugin['pro_version'] ] ) &&
69
+ strtotime( $bstwbsftwppdtplgns_options['time_out'][ $value_plugin['pro_version'] ] ) < strtotime( date( "m/d/Y" ) ) ) {
70
  unset( $bws_plugins[ $key_plugin ] );
71
  $value_plugin['expired'] = $bstwbsftwppdtplgns_options['time_out'][ $value_plugin['pro_version'] ];
72
  $bws_plugins_expired[ $key_plugin ] = $value_plugin;
157
  if ( is_multisite() )
158
  update_site_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options );
159
  else
160
+ update_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options );
161
  }
162
  } else {
163
  $error = __( "Please enter your license key.", 'bestwebsoft' );
167
 
168
  $all_plugins = get_plugins();
169
  $active_plugins = get_option( 'active_plugins' );
170
+ $mysql_info = $wpdb->get_results( "SHOW VARIABLES LIKE 'sql_mode'" );
171
+ if ( is_array( $mysql_info ) )
172
+ $sql_mode = $mysql_info[0]->Value;
173
+ if ( empty( $sql_mode ) )
174
+ $sql_mode = __( 'Not set', 'bestwebsoft' );
175
 
176
  $allow_url_fopen = ( ini_get( 'allow_url_fopen' ) ) ? __( 'On', 'bestwebsoft' ) : __( 'Off', 'bestwebsoft' );
177
  $upload_max_filesize = ( ini_get( 'upload_max_filesize' ) )? ini_get( 'upload_max_filesize' ) : __( 'N/A', 'bestwebsoft' );
290
  }
291
  }
292
  } ?>
293
+ <div class="bws-wrap">
294
+ <div class="bws-header">
295
+ <div class="bws-title">
296
+ <a href="<?php echo ( $is_main_page ) ? self_admin_url( 'admin.php?page=bws_panel' ) : esc_url( self_admin_url( 'admin.php?page=' . $page ) ); ?>">
297
+ <span class="bws-logo bwsicons bwsicons-bws-logo"></span>
298
+ BestWebSoft
299
+ <span>panel</span>
300
+ </a>
301
+ </div>
302
+ <div class="bws-menu-item-icon">&#8226;&#8226;&#8226;</div>
303
+ <div class="bws-nav-tab-wrapper">
304
  <?php if ( $is_main_page ) { ?>
305
+ <a class="bws-nav-tab<?php if ( 'bws_panel' == $page ) echo ' bws-nav-tab-active'; ?>" href="<?php echo self_admin_url( 'admin.php?page=bws_panel' ); ?>"><?php _e( 'Plugins', 'bestwebsoft' ); ?></a>
306
+ <a class="bws-nav-tab<?php if ( 'bws_themes' == $page ) echo ' bws-nav-tab-active'; ?>" href="<?php echo self_admin_url( 'admin.php?page=bws_themes' ); ?>"><?php _e( 'Themes', 'bestwebsoft' ); ?></a>
307
+ <a class="bws-nav-tab<?php if ( 'bws_system_status' == $page ) echo ' bws-nav-tab-active'; ?>" href="<?php echo self_admin_url( 'admin.php?page=bws_system_status' ); ?>"><?php _e( 'System status', 'bestwebsoft' ); ?></a>
308
  <?php } else { ?>
309
+ <a class="bws-nav-tab<?php if ( ! isset( $_GET['tab'] ) ) echo ' bws-nav-tab-active'; ?>" href="<?php echo esc_url( self_admin_url( 'admin.php?page=' . $page ) ); ?>"><?php _e( 'Plugins', 'bestwebsoft' ); ?></a>
310
+ <a class="bws-nav-tab<?php if ( 'themes' == $tab ) echo ' bws-nav-tab-active'; ?>" href="<?php echo esc_url( self_admin_url( 'admin.php?page=' . $page . '&tab=themes' ) ); ?>"><?php _e( 'Themes', 'bestwebsoft' ); ?></a>
311
+ <a class="bws-nav-tab<?php if ( 'system-status' == $tab ) echo ' bws-nav-tab-active'; ?>" href="<?php echo esc_url( self_admin_url( 'admin.php?page=' . $page . '&tab=system-status' ) ); ?>"><?php _e( 'System status', 'bestwebsoft' ); ?></a>
312
  <?php } ?>
313
+ </div>
314
+ <div class="bws-help-links-wrapper">
315
+ <a href="https://support.bestwebsoft.com" target="_blank"><?php _e( 'Support', 'bestwebsoft' ); ?></a>
316
+ <a href="https://bestwebsoft.com/client-area" target="_blank" title="<?php _e( 'Manage purchased licenses & subscriptions', 'bestwebsoft' ); ?>">Client Area</a>
317
+ </div>
318
+ <div class="clear"></div>
319
+ </div>
320
  <?php if ( ( 'bws_panel' == $page || ( ! isset( $_GET['tab'] ) && ! $is_main_page ) ) && ! isset( $_POST['bws_plugin_action_submit'] ) ) { ?>
321
+ <div class="bws-membership-wrap">
322
+ <div class="bws-membership-backround"></div>
323
+ <div class="bws-membership">
324
+ <div class="bws-membership-title"><?php printf( __( 'Get Access to %s+ Premium Plugins', 'bestwebsoft' ), '30' ); ?></div>
325
+ <form class="bws-membership-form" method="post" action="">
326
+ <span class="bws-membership-link"><a target="_blank" href="https://bestwebsoft.com/membership/"><?php _e( 'Subscribe to Pro Membership', 'bestwebsoft' ); ?></a> <?php _e( 'or', 'bestwebsoft' ); ?></span>
327
  <?php if ( isset( $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] ) &&
328
+ '5' < $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] &&
329
+ $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['time'] > ( time() - ( 24 * 60 * 60 ) ) ) { ?>
330
+ <div class="bws_form_input_wrap">
331
+ <input disabled="disabled" type="text" name="bws_license_key" value="<?php echo esc_attr( $bws_license_key); ?>" />
332
+ <div class="bws_error"><?php _e( "Unfortunately, you have exceeded the number of available tries per day.", 'bestwebsoft' ); ?></div>
333
+ </div>
334
+ <input disabled="disabled" type="submit" class="bws-button" value="<?php _e( 'Check license key', 'bestwebsoft' ); ?>" />
335
  <?php } else { ?>
336
+ <div class="bws_form_input_wrap">
337
+ <input <?php if ( "" != $error ) echo 'class="bws_input_error"'; ?> type="text" placeholder="<?php _e( 'Enter your license key', 'bestwebsoft' ); ?>" maxlength="100" name="bws_license_key" value="<?php echo esc_attr( $bws_license_key ); ?>" />
338
+ <div class="bws_error" <?php if ( "" == $error ) echo 'style="display:none"'; ?>><?php echo $error; ?></div>
339
+ </div>
340
+ <input type="hidden" name="bws_license_plugin" value="<?php echo esc_attr( $bws_license_plugin ); ?>" />
341
+ <input type="hidden" name="bws_license_submit" value="submit" />
342
  <?php if ( empty( $plugins_array ) ) { ?>
343
+ <input type="submit" class="bws-button" value="<?php _e( 'Activate', 'bestwebsoft' ); ?>" />
344
  <?php } else { ?>
345
+ <input type="submit" class="bws-button" value="<?php _e( 'Check license key', 'bestwebsoft' ); ?>" />
346
  <?php } ?>
347
  <?php wp_nonce_field( plugin_basename(__FILE__), 'bws_license_nonce_name' ); ?>
348
  <?php } ?>
349
+ </form>
350
+ <div class="clear"></div>
351
+ </div>
352
+ </div>
353
  <?php } ?>
354
+ <div class="bws-wrap-content wrap">
355
  <?php if ( 'bws_panel' == $page || ( ! isset( $_GET['tab'] ) && ! $is_main_page ) ) { ?>
356
+ <div class="updated notice is-dismissible inline" <?php if ( '' == $message || '' != $error ) echo 'style="display:none"'; ?>><p><?php echo $message; ?></p></div>
357
+ <h1>
358
  <?php _e( 'Plugins', 'bestwebsoft' ); ?>
359
+ <a href="<?php echo self_admin_url( 'plugin-install.php?tab=upload' ); ?>" class="upload page-title-action add-new-h2"><?php _e( 'Upload Plugin', 'bestwebsoft' ); ?></a>
360
+ </h1>
361
  <?php if ( isset( $_GET['error'] ) ) {
362
  if ( isset( $_GET['charsout'] ) )
363
  $errmsg = sprintf( __( 'The plugin generated %d characters of <strong>unexpected output</strong> during activation. If you notice &#8220;headers already sent&#8221; messages, problems with syndication feeds or other issues, try deactivating or removing this plugin.' ), $_GET['charsout'] );
364
  else
365
  $errmsg = __( 'Plugin could not be activated because it triggered a <strong>fatal error</strong>.' ); ?>
366
+ <div id="message" class="error is-dismissible"><p><?php echo $errmsg; ?></p></div>
367
  <?php } elseif ( isset( $_GET['activate'] ) ) { ?>
368
+ <div id="message" class="updated notice is-dismissible"><p><?php _e( 'Plugin <strong>activated</strong>.' ) ?></p></div>
369
  <?php }
370
 
371
  if ( isset( $_POST['bws_plugin_action_submit'] ) && isset( $_POST['bws_install_plugin'] ) && check_admin_referer( plugin_basename(__FILE__), 'bws_license_install_nonce_name' ) ) {
442
  echo '<p class="error">' . $error . '</p>';
443
  echo '<p><a href="' . esc_url( self_admin_url( $current_page ) ) . '" target="_parent">' . __( 'Return to BestWebSoft Panel', 'bestwebsoft' ) . '</a></p>';
444
  }
445
+ } else {
446
  $category_href = $current_page;
447
  if ( 'all' != $plugin_category )
448
  $category_href .= '&category=' . $plugin_category; ?>
449
+ <ul class="subsubsub">
450
+ <li>
451
+ <a <?php if ( ! isset( $_GET['sub'] ) ) echo 'class="current" '; ?>href="<?php echo esc_url( self_admin_url( $category_href ) ); ?>"><?php _e( 'All', 'bestwebsoft' ); ?></a>
452
+ </li> |
453
+ <li>
454
+ <a <?php if ( isset( $_GET['sub'] ) && 'installed' == $_GET['sub'] ) echo 'class="current" '; ?>href="<?php echo esc_url( self_admin_url( $category_href . '&sub=installed' ) ); ?>"><?php _e( 'Installed', 'bestwebsoft' ); ?></a>
455
+ </li> |
456
+ <li>
457
+ <a <?php if ( isset( $_GET['sub'] ) && 'not_installed' == $_GET['sub'] ) echo 'class="current" '; ?>href="<?php echo esc_url( self_admin_url( $category_href . '&sub=not_installed' ) ); ?>"><?php _e( 'Not Installed', 'bestwebsoft' ); ?></a>
458
+ </li>
459
+ </ul>
460
+ <div class="clear"></div>
461
+ <div class="bws-filter-top">
462
+ <h2>
463
+ <span class="bws-toggle-indicator"></span>
464
  <?php _e( 'Filter results', 'bestwebsoft' ); ?>
465
+ </h2>
466
+ <div class="bws-filter-top-inside">
467
+ <div class="bws-filter-title"><?php _e( 'Category', 'bestwebsoft' ); ?></div>
468
+ <ul class="bws-category">
469
+ <li>
470
  <?php $sub_in_url = ( isset( $_GET['sub'] ) && in_array( $_GET['sub'], array( 'installed', 'not_installed' ) ) ) ? '&sub=' . $_GET['sub'] : ''; ?>
471
+ <a <?php if ( 'all' == $plugin_category ) echo ' class="bws-active"'; ?> href="<?php echo esc_url(self_admin_url( $current_page . $sub_in_url ) ); ?>"><?php _e( 'All', 'bestwebsoft' ); ?>
472
+ <span>(<?php echo count( $bws_plugins ); ?>)</span>
473
+ </a>
474
+ </li>
475
  <?php foreach ( $bws_plugins_category as $category_key => $category_value ) { ?>
476
+ <li>
477
+ <a <?php if ( $category_key == $plugin_category ) echo ' class="bws-active"'; ?> href="<?php echo esc_url( self_admin_url( $current_page . $sub_in_url . '&category=' . $category_key ) ); ?>"><?php echo $category_value['name']; ?>
478
+ <span>(<?php echo $category_value['count']; ?>)</span>
479
+ </a>
480
+ </li>
481
  <?php } ?>
482
+ </ul>
483
+ </div>
484
+ </div>
485
+ <div class="bws-products">
486
  <?php $nothing_found = true;
487
  foreach ( $bws_plugins as $key_plugin => $value_plugin ) {
488
 
503
  }
504
 
505
  if ( ( isset( $_GET['sub'] ) && 'installed' == $_GET['sub'] && ! $is_pro_installed && ! $is_installed ) ||
506
+ ( isset( $_GET['sub'] ) && 'not_installed' == $_GET['sub'] && ( $is_pro_installed || $is_installed ) ) )
507
  continue;
508
 
509
  $link_attr = isset( $value_plugin['install_url'] ) ? 'href="' . esc_url( $value_plugin['install_url'] ) . '" target="_blank"' : 'href="' . esc_url( self_admin_url( 'plugin-install.php?tab=plugin-information&plugin=' . $key_plugin_explode[0] . '&from=import&TB_iframe=true&width=600&height=550' ) ) . '" class="thickbox open-plugin-details-modal"';
510
 
511
  $nothing_found = false; ?>
512
+ <div class="bws_product_box<?php if ( $is_active || $is_pro_active ) echo ' bws_product_active'; ?>">
513
+ <div class="bws_product_image">
514
+ <a <?php echo $link_attr; ?>><img src="<?php echo $icon; ?>"/></a>
515
+ </div>
516
+ <div class="bws_product_content">
517
+ <div class="bws_product_title"><a <?php echo $link_attr; ?>><?php echo $value_plugin['name']; ?></a></div>
518
+ <div class="bws-version">
519
  <?php
520
  if ( $is_pro_installed ) {
521
  echo '<span';
537
  $r = $update_availible_all->response[ $value_plugin['update_availible'] ];
538
  echo ' - <a class="bws-update-now" href="' . esc_url( wp_nonce_url( self_admin_url( 'update.php?action=upgrade-plugin&plugin=' . $value_plugin['update_availible'] ), 'upgrade-plugin_' . $value_plugin['update_availible'] ) ) . '" class="update-link" aria-label="' . sprintf( __( 'Update to v %s', 'bestwebsoft' ), $r->new_version ) . '">' . sprintf( __( 'Update to v %s', 'bestwebsoft' ), $r->new_version ) . '</a>';
539
  } ?>
540
+ </div>
541
+ <div class="bws_product_description">
542
  <?php echo ( strlen( $value_plugin['description'] ) > 100 ) ? mb_substr( $value_plugin['description'], 0, 100 ) . '...' : $value_plugin['description']; ?>
543
+ </div>
544
+ <div class="bws_product_links">
545
  <?php if ( $is_active || $is_pro_active ) {
546
+ if ( $is_pro_isset ) {
547
  if ( ! $is_pro_installed ) {
548
  if ( ! empty( $plugins_array ) && array_key_exists( $value_plugin['pro_version'], $plugins_array ) ) { ?>
549
+ <form method="post" action="">
550
+ <input type="submit" class="button button-secondary" value="<?php _e( 'Install Now', 'bestwebsoft' ); ?>" />
551
+ <input type="hidden" name="bws_plugin_action_submit" value="submit" />
552
+ <input type="hidden" name="bws_install_plugin" value="<?php echo $value_plugin['pro_version']; ?>" />
553
  <?php wp_nonce_field( plugin_basename(__FILE__), 'bws_license_install_nonce_name' ); ?>
554
+ </form>
555
  <?php } else { ?>
556
+ <a class="button button-secondary bws_upgrade_button" href="<?php echo esc_url( $bws_plugins[ $key_plugin ]['purchase'] ); ?>" target="_blank"><?php _e( 'Upgrade to Pro', 'bestwebsoft' ); ?></a>
557
  <?php }
558
  }
559
  } else { ?>
560
+ <a class="bws_donate" href="https://bestwebsoft.com/donate/" target="_blank"><?php _e( 'Donate', 'bestwebsoft' ); ?></a> <span>|</span>
561
  <?php }
562
 
563
  if ( $is_pro_active ) { ?>
564
+ <a class="bws_settings" href="<?php echo esc_url( self_admin_url( $bws_plugins[ $key_plugin ]["pro_settings"] ) ); ?>"><?php _e( 'Settings', 'bestwebsoft' ); ?></a>
565
  <?php } else { ?>
566
+ <a class="bws_settings" href="<?php echo esc_url( self_admin_url( $bws_plugins[ $key_plugin ]["settings"] ) ); ?>"><?php _e( 'Settings', 'bestwebsoft' ); ?></a>
567
  <?php }
568
  } else {
569
  if ( $is_pro_installed ) { ?>
570
+ <a class="button button-secondary" href="<?php echo esc_url( wp_nonce_url( self_admin_url( $current_page . '&bws_activate_plugin=' . $value_plugin['pro_version'] ), 'bws_activate_plugin' . $value_plugin['pro_version'] ) ); ?>" title="<?php _e( 'Activate this plugin', 'bestwebsoft' ); ?>"><?php _e( 'Activate', 'bestwebsoft' ); ?></a>
571
  <?php } elseif ( ! empty( $plugins_array ) && isset( $value_plugin['pro_version'] ) && array_key_exists( $value_plugin['pro_version'], $plugins_array ) ) { ?>
572
+ <form method="post" action="">
573
+ <input type="submit" class="button button-secondary" value="<?php _e( 'Install Now', 'bestwebsoft' ); ?>" />
574
+ <input type="hidden" name="bws_plugin_action_submit" value="submit" />
575
+ <input type="hidden" name="bws_install_plugin" value="<?php echo $value_plugin['pro_version']; ?>" />
576
  <?php wp_nonce_field( plugin_basename(__FILE__), 'bws_license_install_nonce_name' ); ?>
577
+ </form>
578
  <?php } elseif ( $is_installed ) { ?>
579
+ <a class="button button-secondary" href="<?php echo esc_url( wp_nonce_url( self_admin_url( $current_page . '&bws_activate_plugin=' . $key_plugin ), 'bws_activate_plugin' . $key_plugin ) ); ?>" title="<?php _e( 'Activate this plugin', 'bestwebsoft' ); ?>"><?php _e( 'Activate', 'bestwebsoft' ); ?></a>
580
  <?php } else {
581
  $install_url = isset( $value_plugin['install_url'] ) ? $value_plugin['install_url'] : self_admin_url( 'plugin-install.php?tab=search&type=term&s=' . str_replace( ' ', '+', str_replace( '-', '', $value_plugin['name'] ) ) . '+BestWebSoft&plugin-search-input=Search+Plugins' ); ?>
582
+ <a class="button button-secondary" href="<?php echo esc_url( $install_url ); ?>" title="<?php _e( 'Install this plugin', 'bestwebsoft' ); ?>" target="_blank"><?php _e( 'Install Now', 'bestwebsoft' ); ?></a>
583
  <?php }
584
  } ?>
585
+ </div>
586
+ </div>
587
+ <div class="clear"></div>
588
+ </div>
589
  <?php }
590
  if ( $nothing_found ) { ?>
591
+ <p class="description"><?php _e( 'Nothing found. Try another criteria.', 'bestwebsoft' ); ?></p>
592
  <?php } ?>
593
+ </div>
594
+ <div id="bws-filter-wrapper">
595
+ <div class="bws-filter">
596
+ <div class="bws-filter-title"><?php _e( 'Category', 'bestwebsoft' ); ?></div>
597
+ <ul class="bws-category">
598
+ <li>
599
  <?php $sub_in_url = ( isset( $_GET['sub'] ) && in_array( $_GET['sub'], array( 'installed', 'not_installed' ) ) ) ? '&sub=' . $_GET['sub'] : ''; ?>
600
+ <a <?php if ( 'all' == $plugin_category ) echo ' class="bws-active"'; ?> href="<?php echo esc_url( self_admin_url( $current_page . $sub_in_url ) ); ?>"><?php _e( 'All', 'bestwebsoft' ); ?>
601
+ <span>(<?php echo count( $bws_plugins ); ?>)</span>
602
+ </a>
603
+ </li>
604
  <?php foreach ( $bws_plugins_category as $category_key => $category_value ) { ?>
605
+ <li>
606
+ <a <?php if ( $category_key == $plugin_category ) echo ' class="bws-active"'; ?> href="<?php echo esc_url( self_admin_url( $current_page . $sub_in_url . '&category=' . $category_key ) ); ?>"><?php echo $category_value['name']; ?>
607
+ <span>(<?php echo $category_value['count']; ?>)</span>
608
+ </a>
609
+ </li>
610
  <?php } ?>
611
+ </ul>
612
+ </div>
613
+ </div><!-- #bws-filter-wrapper -->
614
+ <div class="clear"></div>
615
  <?php }
616
  } elseif ( 'bws_themes' == $page || 'themes' == $tab ) {
617
  require( dirname( __FILE__ ) . '/product_list.php' ); ?>
618
+ <h1><?php _e( 'Themes', 'bestwebsoft' ); ?></h1>
619
+ <div id="availablethemes" class="bws-availablethemes">
620
+ <div class="theme-browser content-filterable rendered">
621
+ <div class="themes wp-clearfix">
622
  <?php foreach ( $themes as $key => $theme ) {
623
  $installed_theme = wp_get_theme( $theme->slug ); ?>
624
+ <div class="theme" tabindex="0">
625
+ <div class="theme-screenshot">
626
+ <img src="<?php echo bws_menu_url( "icons/themes/" ) . $theme->slug . '.png'; ?>" alt="" />
627
+ </div>
628
+ <div class="theme-author"><?php printf( __( 'By %s', 'bestwebsoft' ), 'BestWebSoft' ); ?></div>
629
+ <h3 class="theme-name"><?php echo $theme->name; ?></h3>
630
+ <div class="theme-actions">
631
+ <a class="button button-secondary preview install-theme-preview" href="<?php echo esc_url( $theme->href ); ?>" target="_blank"><?php _e( 'Learn More', 'bestwebsoft' ); ?></a>
632
+ </div>
633
  <?php if ( $installed_theme->exists() ) {
634
  if ( $wp_version < '4.6' ) { ?>
635
+ <div class="theme-installed"><?php _e( 'Already Installed', 'bestwebsoft' ); ?></div>
636
  <?php } else { ?>
637
+ <div class="notice notice-success notice-alt inline"><p><?php _e( 'Installed', 'bestwebsoft' ); ?></p></div>
638
  <?php }
639
  } ?>
640
+ </div>
641
  <?php } ?>
642
+ <br class="clear" />
643
+ </div>
644
+ </div>
645
+ <p><a class="bws_browse_link" href="https://bestwebsoft.com/products/wordpress/themes/" target="_blank"><?php _e( 'Browse More WordPress Themes', 'bestwebsoft' ); ?> <span class="dashicons dashicons-arrow-right-alt2"></span></a></p>
646
+ </div>
647
  <?php } elseif ( 'bws_system_status' == $page || 'system-status' == $tab ) { ?>
648
+ <h1><?php _e( 'System status', 'bestwebsoft' ); ?></h1>
649
+ <div class="updated fade notice is-dismissible inline" <?php if ( ! ( isset( $_REQUEST['bwsmn_form_submit'] ) || isset( $_REQUEST['bwsmn_form_submit_custom_email'] ) ) || $error != "" ) echo 'style="display:none"'; ?>><p><strong><?php echo $message; ?></strong></p></div>
650
+ <div class="error" <?php if ( "" == $error ) echo 'style="display:none"'; ?>><p><strong><?php echo $error; ?></strong></p></div>
651
+ <form method="post" action="">
652
+ <p>
653
+ <input type="hidden" name="bwsmn_form_submit" value="submit" />
654
+ <input type="submit" class="button-primary" value="<?php _e( 'Send to support', 'bestwebsoft' ) ?>" />
655
  <?php wp_nonce_field( plugin_basename(__FILE__), 'bwsmn_nonce_submit' ); ?>
656
+ </p>
657
+ </form>
658
+ <form method="post" action="">
659
+ <p>
660
+ <input type="hidden" name="bwsmn_form_submit_custom_email" value="submit" />
661
+ <input type="submit" class="button" value="<?php _e( 'Send to custom email &#187;', 'bestwebsoft' ) ?>" />
662
+ <input type="text" maxlength="250" value="" name="bwsmn_form_email" />
663
  <?php wp_nonce_field( plugin_basename(__FILE__), 'bwsmn_nonce_submit_custom_email' ); ?>
664
+ </p>
665
+ </form>
666
  <?php foreach ( $system_info as $info ) { ?>
667
+ <table class="widefat bws-system-info" cellspacing="0">
668
+ <thead>
669
+ <tr>
670
+ <th colspan="2">
671
+ <strong>
672
+ <?php echo $info['name'];
673
+ if ( isset( $info['count'] ) )
674
+ echo ' (' . $info['count'] . ')'; ?>
675
+ </strong>
676
+ </th>
677
+ </tr>
678
+ </thead>
679
+ <tbody>
680
+ <?php foreach ( $info['data'] as $key => $value ) { ?>
681
+ <tr>
682
+ <td scope="row"><?php echo $key; ?></td>
683
+ <td scope="row"><?php echo $value; ?></td>
684
+ </tr>
685
+ <?php } ?>
686
+ </tbody>
687
+ </table>
688
  <?php }
689
  } ?>
690
+ </div>
691
+ </div>
692
  <?php }
693
  }
694
 
729
  array( 'gglstmp_hide_banner_on_plugin_page', 'google-sitemap-plugin/google-sitemap-plugin.php', '2.8.4' ),
730
  array( 'cntctfrmpr_for_ctfrmtdb_hide_banner_on_plugin_page', 'contact-form-pro/contact_form_pro.php', '1.14' ),
731
  array( 'cntctfrm_hide_banner_on_plugin_page', 'contact-form-plugin/contact_form.php', '3.47' ),
732
+ array( 'cptch_hide_banner_on_plugin_page', 'captcha-bws/captcha-bws.php', '3.8.4' ),
733
  array( 'gllr_hide_banner_on_plugin_page', 'gallery-plugin/gallery-plugin.php', '3.9.1' ),
734
+ array( 'cntctfrm_for_ctfrmtdb_hide_banner_on_plugin_page', 'contact-form-plugin/contact_form.php', '3.62' ),
735
+ array( 'bwscrrntl_hide_banner_on_plugin_page', 'bws-car-rental/bws-car-rental.php', '0.0.1' ),
736
+ array( 'rtng_hide_banner_on_plugin_page', 'rating-bws/rating-bws.php', '1.0.0' ),
737
+ array( 'prflxtrflds_hide_banner_on_plugin_page', 'profile-extra-fields/profile-extra-fields.php', '1.1.3' )
738
  );
739
  }
740
  }
bws_menu/class-bws-settings.php CHANGED
@@ -14,10 +14,10 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
14
  public $plugin_basename;
15
  public $prefix;
16
  public $wp_slug;
17
-
18
  public $options;
19
  public $default_options;
20
- public $is_network_options;
21
  public $plugins_info = array();
22
  public $hide_pro_tabs = false;
23
  public $demo_data;
@@ -28,8 +28,9 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
28
  public $link_key;
29
  public $link_pn;
30
  public $is_trial = false;
 
31
  public $trial_days;
32
- public $bws_hide_pro_option_exist = true;
33
 
34
  public $forbid_view = false;
35
  public $change_permission_attr = '';
@@ -48,35 +49,36 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
48
  * The child class should call this constructor from its own constructor to override
49
  * the default $args.
50
  * @access public
51
- *
52
  * @param array|string $args
53
  */
54
  public function __construct( $args = array() ) {
55
  $args = wp_parse_args( $args, array(
56
  'plugin_basename' => '',
57
  'prefix' => '',
58
- 'plugins_info' => array(),
59
  'default_options' => array(),
60
  'options' => array(),
61
  'is_network_options' => false,
62
  'tabs' => array(),
63
- 'doc_link' => '',
64
- 'doc_video_link' => '',
65
- 'wp_slug' => '',
66
- 'demo_data' => false,
67
  /* if this is free version and pro exist */
68
- 'pro_page' => '',
69
- 'bws_license_plugin'=> '',
70
- 'link_key' => '',
71
- 'link_pn' => '',
72
- 'trial_days' => false
 
73
  ) );
74
 
75
  $args['plugins_info']['Name'] = str_replace( ' by BestWebSoft', '', $args['plugins_info']['Name'] );
76
-
77
  $this->plugin_basename = $args['plugin_basename'];
78
  $this->prefix = $args['prefix'];
79
- $this->plugins_info = $args['plugins_info'];
80
  $this->options = $args['options'];
81
  $this->default_options = $args['default_options'];
82
  $this->wp_slug = $args['wp_slug'];
@@ -93,13 +95,28 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
93
  $this->link_key = $args['link_key'];
94
  $this->link_pn = $args['link_pn'];
95
  $this->trial_days = $args['trial_days'];
 
96
 
97
  $this->hide_pro_tabs = bws_hide_premium_options_check( $this->options );
98
  $this->version = '1.0.0';
99
  $this->is_multisite = is_multisite();
100
 
101
- if ( empty( $this->pro_page ) && array_key_exists( 'license', $this->tabs ) )
102
  $this->is_pro = true;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
103
  }
104
 
105
  /**
@@ -124,20 +141,20 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
124
  $this->demo_data->bws_demo_confirm();
125
  } else {
126
  bws_show_settings_notice(); ?>
127
- <form class="bws_form" method="post" action="" enctype="multipart/form-data">
128
- <div id="poststuff">
129
- <div id="post-body" class="metabox-holder columns-2">
130
- <div id="post-body-content" style="position: relative;">
131
- <?php $this->display_tabs(); ?>
132
- </div><!-- #post-body-content -->
133
- <div id="postbox-container-1" class="postbox-container">
134
- <div class="meta-box-sortables ui-sortable">
135
- <div id="submitdiv" class="postbox">
136
- <h3 class="hndle"><?php _e( 'Information', 'bestwebsoft' ); ?></h3>
137
- <div class="inside">
138
- <div class="submitbox" id="submitpost">
139
- <div id="minor-publishing">
140
- <div id="misc-publishing-actions">
141
  <?php if ( $this->is_pro ) {
142
  if ( ! isset( $bstwbsftwppdtplgns_options['time_out'][ $this->plugin_basename ] ) || isset( $bstwbsftwppdtplgns_options['wrong_license_key'][ $this->plugin_basename ] ) ) {
143
  $license_type = 'Pro';
@@ -145,7 +162,7 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
145
  } else {
146
  $finish = strtotime( $bstwbsftwppdtplgns_options['time_out'][ $this->plugin_basename ] );
147
  $today = strtotime( date( "m/d/Y" ) );
148
- if ( isset( $bstwbsftwppdtplgns_options['trial'][ $this->plugin_basename ] ) ) {
149
  $license_type = 'Trial Pro';
150
 
151
  if ( $finish < $today ) {
@@ -154,7 +171,7 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
154
  $daysleft = floor( ( $finish - $today ) / ( 60*60*24 ) );
155
  $license_status = sprintf( __( '%s day(-s) left', 'bestwebsoft' ), $daysleft );
156
  }
157
- $license_status .= '. <a target="_blank" href="' . esc_url( $this->plugins_info['PluginURI'] ) . '">' . __( 'Upgrade to Pro', 'bestwebsoft' ) . '</a>';
158
  } else {
159
  $license_type = isset( $bstwbsftwppdtplgns_options['nonprofit'][ $this->plugin_basename ] ) ? 'Nonprofit Pro' : 'Pro';
160
  if ( $finish < $today ) {
@@ -164,50 +181,50 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
164
  }
165
  }
166
  } ?>
167
- <div class="misc-pub-section">
168
- <strong><?php _e( 'License', 'bestwebsoft' ); ?>:</strong> <?php echo $license_type; ?>
169
- </div>
170
- <div class="misc-pub-section">
171
- <strong><?php _e( 'Status', 'bestwebsoft' ); ?>:</strong> <?php echo $license_status; ?>
172
- </div><!-- .misc-pub-section -->
173
  <?php } ?>
174
- <div class="misc-pub-section">
175
- <strong><?php _e( 'Version', 'bestwebsoft' ); ?>:</strong> <?php echo $this->plugins_info['Version']; ?>
176
- </div><!-- .misc-pub-section -->
177
- </div>
178
- <div class="clear"></div>
179
- </div>
180
- <div id="major-publishing-actions">
181
- <div id="publishing-action">
182
- <input type="hidden" name="<?php echo $this->prefix; ?>_form_submit" value="submit" />
183
- <input id="bws-submit-button" type="submit" class="button button-primary button-large" value="<?php _e( 'Save Changes', 'bestwebsoft' ); ?>" />
184
- <?php wp_nonce_field( $this->plugin_basename, 'bws_nonce_name' ); ?>
185
- </div>
186
- <div class="clear"></div>
187
- </div>
188
- </div>
189
- </div>
190
- </div>
191
  <?php /**
192
  * action - Display custom metabox
193
  */
194
  do_action( __CLASS__ . '_display_metabox' ); ?>
195
- </div>
196
- </div>
197
- <div id="postbox-container-2" class="postbox-container">
198
  <?php /**
199
  * action - Display additional content for #postbox-container-2
200
  */
201
  do_action( __CLASS__ . '_display_second_postbox' ); ?>
202
- <div class="submit">
203
- <input type="submit" class="button button-primary button-large" value="<?php _e( 'Save Changes', 'bestwebsoft' ); ?>" />
204
- </div>
205
  <?php if ( ! empty( $this->wp_slug ) )
206
  bws_plugin_reviews_block( $this->plugins_info['Name'], $this->wp_slug ); ?>
207
- </div>
208
- </div>
209
- </form>
210
- </div>
211
  <?php }
212
  }
213
 
@@ -217,16 +234,16 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
217
  * @param void
218
  * @return void
219
  */
220
- public function display_tabs() {
221
  global $wp_version; ?>
222
- <div id="bws_settings_tabs_wrapper"<?php if ( version_compare( $wp_version, '4.0', '<' ) ) echo ' class="edit-form-section"'; ?>>
223
- <ul id="bws_settings_tabs">
224
  <?php $this->display_tabs_list(); ?>
225
- </ul>
226
  <?php $this->display_tabs_content(); ?>
227
- <div class="clear"></div>
228
- <input type="hidden" name="bws_active_tab" value="<?php if ( isset( $_REQUEST['bws_active_tab'] ) ) echo esc_attr( $_REQUEST['bws_active_tab'] ); ?>" />
229
- </div>
230
  <?php }
231
 
232
  /**
@@ -243,11 +260,11 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
243
  $tab_class .= ' bws_pro_tab';
244
  if ( ! empty( $data['class'] ) )
245
  $tab_class .= ' ' . $data['class']; ?>
246
- <li class="<?php echo $tab_class; ?>" data-slug="<?php echo $tab_slug; ?>">
247
- <a href="#<?php echo $this->prefix; ?>_<?php echo $tab_slug; ?>_tab">
248
- <span><?php echo esc_html( $data['label'] ); ?></span>
249
- </a>
250
- </li>
251
  <?php }
252
  }
253
 
@@ -258,16 +275,16 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
258
  * @return void
259
  */
260
  public function display_tabs_content() {
261
- foreach ( $this->tabs as $tab_slug => $data ) {
262
  if ( ! empty( $data['is_pro'] ) && $this->hide_pro_tabs )
263
  continue; ?>
264
- <div class="bws_tab ui-tabs-panel ui-widget-content ui-corner-bottom" id="<?php echo esc_attr( $this->prefix . '_' . $tab_slug . '_tab' ); ?>" aria-labelledby="ui-id-2" role="tabpanel" aria-hidden="false" style="display: block;">
265
  <?php $tab_slug = str_replace( '-', '_', $tab_slug );
266
  if ( method_exists( $this, 'tab_' . $tab_slug ) ) {
267
  call_user_func( array( $this, 'tab_' . $tab_slug ) );
268
  do_action_ref_array( __CLASS__ . '_after_tab_' . $tab_slug, array( &$this ) );
269
  } ?>
270
- </div>
271
  <?php }
272
  }
273
 
@@ -283,16 +300,18 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
283
  if ( isset( $_POST['bws_restore_confirm'] ) && check_admin_referer( $this->plugin_basename, 'bws_settings_nonce_name' ) ) {
284
  $this->restore_options();
285
  $message = __( 'All plugin settings were restored.', 'bestwebsoft' );
286
- /* Go Pro - check license key */
287
  } elseif ( isset( $_POST['bws_license_submit'] ) && check_admin_referer( $this->plugin_basename, 'bws_nonce_name' ) ) {
288
  $result = $this->save_options_license_key();
 
 
289
  if ( ! empty( $result['error'] ) )
290
  $error = $result['error'];
291
  if ( ! empty( $result['message'] ) )
292
  $message = $result['message'];
293
  if ( ! empty( $result['notice'] ) )
294
  $notice = $result['notice'];
295
- /* check demo data */
296
  } else {
297
  $demo_result = ! empty( $this->demo_data ) ? $this->demo_data->bws_handle_demo_data() : false;
298
  if ( false !== $demo_result ) {
@@ -302,9 +321,9 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
302
  if ( ! empty( $demo_result['done'] ) && ! empty( $demo_result['options'] ) )
303
  $this->options = $demo_result['options'];
304
  }
305
- /* Save options */
306
  } elseif ( ! isset( $_REQUEST['bws_restore_default'] ) && ! isset( $_POST['bws_handle_demo'] ) && isset( $_REQUEST[ $this->prefix . '_form_submit'] ) && check_admin_referer( $this->plugin_basename, 'bws_nonce_name' ) ) {
307
- /* save tabs */
308
  $result = $this->save_options();
309
  if ( ! empty( $result['error'] ) )
310
  $error = $result['error'];
@@ -341,9 +360,9 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
341
  * action - Display custom error\message\notice
342
  */
343
  do_action( __CLASS__ . '_display_custom_messages', $save_results ); ?>
344
- <div class="updated fade inline" <?php if ( empty( $save_results['message'] ) ) echo "style=\"display:none\""; ?>><p><strong><?php echo $save_results['message']; ?></strong></p></div>
345
- <div class="updated bws-notice inline" <?php if ( empty( $save_results['notice'] ) ) echo "style=\"display:none\""; ?>><p><strong><?php echo $save_results['notice']; ?></strong></p></div>
346
- <div class="error inline" <?php if ( empty( $save_results['error'] ) ) echo "style=\"display:none\""; ?>><p><strong><?php echo $save_results['error']; ?></strong></p></div>
347
  <?php }
348
 
349
  /**
@@ -390,19 +409,19 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
390
  fclose( $f );
391
  }
392
  }
393
-
394
  if ( $this->is_multisite )
395
  $this->custom_code_args['blog_id'] = get_current_blog_id();
396
 
397
  foreach ( array( 'css', 'php', 'js' ) as $extension ) {
398
  $file = 'bws-custom-code.' . $extension;
399
  $real_file = $folder . '/' . $file;
400
-
401
  if ( file_exists( $real_file ) ) {
402
  update_recently_edited( $real_file );
403
  $this->custom_code_args["content_{$extension}"] = file_get_contents( $real_file );
404
  if ( ( $this->is_multisite && isset( $bstwbsftwppdtplgns_options['custom_code'][ $this->custom_code_args['blog_id'] ][ $file ] ) ) ||
405
- ( ! $this->is_multisite && isset( $bstwbsftwppdtplgns_options['custom_code'][ $file ] ) ) ) {
406
  $this->custom_code_args["is_{$extension}_active"] = true;
407
  }
408
  if ( is_writeable( $real_file ) )
@@ -420,55 +439,55 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
420
  * @access private
421
  */
422
  private function tab_custom_code() { ?>
423
- <h3 class="bws_tab_label"><?php _e( 'Custom Code', 'bestwebsoft' ); ?></h3>
424
  <?php $this->help_phrase(); ?>
425
- <hr>
426
  <?php if ( ! current_user_can( 'edit_plugins' ) ) {
427
  echo '<p>' . __( 'You do not have sufficient permissions to edit plugins for this site.', 'bestwebsoft' ) . '</p>';
428
  return;
429
  }
430
 
431
- $list = array(
432
  'css' => array( 'description' => __( 'These styles will be added to the header on all pages of your site.', 'bestwebsoft' ),
433
- 'learn_more_link' => 'https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Getting_started'
434
- ),
435
  'php' => array( 'description' => sprintf( __( 'This PHP code will be hooked to the %s action and will be printed on front end only.', 'bestwebsoft' ), '<a href="https://codex.wordpress.org/Plugin_API/Action_Reference/init" target="_blank"><code>init</code></a>' ),
436
- 'learn_more_link' => 'http://php.net/'
437
- ),
438
  'js' => array( 'description' => __( 'These code will be added to the header on all pages of your site.', 'bestwebsoft' ),
439
- 'learn_more_link' => 'https://developer.mozilla.org/en-US/docs/Web/JavaScript'
440
- ),
441
  );
442
 
443
  if ( ! $this->custom_code_args['css_writeable'] ||
444
- ! $this->custom_code_args['php_writeable'] ||
445
- ! $this->custom_code_args['js_writeable'] ) { ?>
446
- <p><em><?php printf( __( 'You need to make this files writable before you can save your changes. See %s the Codex %s for more information.', 'bestwebsoft' ),
447
- '<a href="https://codex.wordpress.org/Changing_File_Permissions" target="_blank">',
448
- '</a>' ); ?></em></p>
449
  <?php }
450
 
451
  foreach ( $list as $extension => $extension_data ) {
452
  $name = 'js' == $extension ? 'JavaScript' : strtoupper( $extension ); ?>
453
- <p><big>
454
- <strong><?php echo $name; ?></strong>
455
- <?php if ( ! $this->custom_code_args["{$extension}_writeable"] )
456
- echo '(' . __( 'Browsing', 'bestwebsoft' ) . ')'; ?>
457
- </big></p>
458
- <p class="bws_info">
459
- <label>
460
- <input type="checkbox" name="bws_custom_<?php echo $extension; ?>_active" value="1" <?php if ( $this->custom_code_args["is_{$extension}_active"] ) echo "checked"; ?> />
461
  <?php printf( __( 'Activate custom %s code.', 'bestwebsoft' ), $name ); ?>
462
- </label>
463
- </p>
464
- <textarea cols="70" rows="25" name="bws_newcontent_<?php echo $extension; ?>" id="bws_newcontent_<?php echo $extension; ?>"><?php if ( isset( $this->custom_code_args["content_{$extension}"] ) ) echo esc_textarea( $this->custom_code_args["content_{$extension}"] ); ?></textarea>
465
- <p class="bws_info">
466
  <?php echo $extension_data['description']; ?>
467
- <br>
468
- <a href="<?php echo esc_url( $extension_data['learn_more_link'] ); ?>" target="_blank">
469
  <?php printf( __( 'Learn more about %s', 'bestwebsoft' ), $name ); ?>
470
- </a>
471
- </p>
472
  <?php }
473
  }
474
 
@@ -481,15 +500,15 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
481
  global $bstwbsftwppdtplgns_options;
482
  $folder = $this->upload_dir['basedir'] . '/bws-custom-code';
483
 
484
- foreach ( array( 'css', 'php', 'js' ) as $extension ) {
485
  $file = 'bws-custom-code.' . $extension;
486
  $real_file = $folder . '/' . $file;
487
 
488
  if ( isset( $_POST["bws_newcontent_{$extension}"] ) &&
489
- $this->custom_code_args["{$extension}_writeable"] ) {
490
  $newcontent = trim( wp_unslash( $_POST["bws_newcontent_{$extension}"] ) );
491
  if ( 'css' == $extension )
492
- $newcontent = wp_kses( $newcontent, 'strip' );
493
 
494
  if ( ! empty( $newcontent ) && isset( $_POST["bws_custom_{$extension}_active"] ) ) {
495
  $this->custom_code_args["is_{$extension}_active"] = true;
@@ -526,55 +545,55 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
526
  * Display 'misc' tab
527
  * @access private
528
  */
529
- private function tab_misc() {
530
  global $bstwbsftwppdtplgns_options; ?>
531
- <h3 class="bws_tab_label"><?php _e( 'Miscellaneous Settings', 'bestwebsoft' ); ?></h3>
532
  <?php $this->help_phrase(); ?>
533
- <hr>
534
  <?php /**
535
  * action - Display custom options on the Import / Export' tab
536
  */
537
  do_action( __CLASS__ . '_additional_misc_options' );
538
 
539
  if ( ! $this->forbid_view && ! empty( $this->change_permission_attr ) ) { ?>
540
- <div class="error inline bws_visible"><p><strong><?php _e( "Notice", 'bestwebsoft' ); ?>:</strong> <strong><?php printf( __( "It is prohibited to change %s settings on this site in the %s network settings.", 'bestwebsoft' ), $this->plugins_info["Name"], $this->plugins_info["Name"] ); ?></strong></p></div>
541
  <?php }
542
  if ( $this->forbid_view ) { ?>
543
- <div class="error inline bws_visible"><p><strong><?php _e( "Notice", 'bestwebsoft' ); ?>:</strong> <strong><?php printf( __( "It is prohibited to view %s settings on this site in the %s network settings.", 'bestwebsoft' ), $this->plugins_info["Name"], $this->plugins_info["Name"] ); ?></strong></p></div>
544
  <?php } else { ?>
545
- <table class="form-table">
546
  <?php /**
547
  * action - Display custom options on the 'misc' tab
548
  */
549
  do_action( __CLASS__ . '_additional_misc_options_affected' );
550
  if ( ! empty( $this->pro_page ) && $this->bws_hide_pro_option_exist ) { ?>
551
- <tr>
552
- <th scope="row"><?php _e( 'Pro Options', 'bestwebsoft' ); ?></th>
553
- <td>
554
- <label>
555
- <input <?php echo $this->change_permission_attr; ?> name="bws_hide_premium_options_submit" type="checkbox" value="1" <?php if ( ! $this->hide_pro_tabs ) echo 'checked="checked "'; ?> />
556
- <span class="bws_info"><?php _e( 'Enable to display plugin Pro options.', 'bestwebsoft' ); ?></span>
557
- </label>
558
- </td>
559
- </tr>
560
  <?php } ?>
561
- <tr>
562
- <th scope="row"><?php _e( 'Track Usage', 'bestwebsoft' ); ?></th>
563
- <td>
564
- <label>
565
- <input <?php echo $this->change_permission_attr; ?> name="bws_track_usage" type="checkbox" value="1" <?php if ( ! empty( $bstwbsftwppdtplgns_options['track_usage']['products'][ $this->plugin_basename ] ) ) echo 'checked="checked "'; ?>/>
566
- <span class="bws_info"><?php _e( 'Enable to allow tracking plugin usage anonymously in order to make it better.', 'bestwebsoft' ); ?></span>
567
- </label>
568
- </td>
569
- </tr>
570
- <tr>
571
- <th scope="row"><?php _e( 'Default Settings', 'bestwebsoft' ); ?></th>
572
- <td>
573
- <input<?php echo $this->change_permission_attr; ?> name="bws_restore_default" type="submit" class="button" value="<?php _e( 'Restore Settings', 'bestwebsoft' ); ?>" />
574
- <div class="bws_info"><?php _e( 'This will restore plugin settings to defaults.', 'bestwebsoft' ); ?></div>
575
- </td>
576
- </tr>
577
- </table>
578
  <?php }
579
  }
580
 
@@ -583,26 +602,26 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
583
  * @access private
584
  */
585
  public function tab_import_export() { ?>
586
- <h3 class="bws_tab_label"><?php _e( 'Import / Export', 'bestwebsoft' ); ?></h3>
587
  <?php $this->help_phrase(); ?>
588
- <hr>
589
  <?php /**
590
  * action - Display custom options on the Import / Export' tab
591
  */
592
  do_action( __CLASS__ . '_additional_import_export_options' );
593
 
594
  if ( ! $this->forbid_view && ! empty( $this->change_permission_attr ) ) { ?>
595
- <div class="error inline bws_visible"><p><strong><?php _e( "Notice", 'bestwebsoft' ); ?>:</strong> <strong><?php printf( __( "It is prohibited to change %s settings on this site in the %s network settings.", 'bestwebsoft' ), $this->plugins_info["Name"], $this->plugins_info["Name"] ); ?></strong></p></div>
596
  <?php }
597
  if ( $this->forbid_view ) { ?>
598
- <div class="error inline bws_visible"><p><strong><?php _e( "Notice", 'bestwebsoft' ); ?>:</strong> <strong><?php printf( __( "It is prohibited to view %s settings on this site in the %s network settings.", 'bestwebsoft' ), $this->plugins_info["Name"], $this->plugins_info["Name"] ); ?></strong></p></div>
599
  <?php } else { ?>
600
- <table class="form-table">
601
  <?php /**
602
  * action - Display custom options on the Import / Export' tab
603
  */
604
  do_action( __CLASS__ . '_additional_import_export_options_affected' ); ?>
605
- </table>
606
  <?php }
607
  }
608
 
@@ -634,7 +653,7 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
634
  else
635
  update_option( $this->prefix . '_options', $this->options );
636
  }
637
- $this->hide_pro_tabs = false;
638
  } else {
639
  if ( empty( $this->options['hide_premium_options'] ) ) {
640
  $this->options['hide_premium_options'][] = get_current_user_id();
@@ -679,8 +698,8 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
679
  $response = maybe_unserialize( wp_remote_retrieve_body( $raw_response ) );
680
 
681
  if ( is_array( $response ) &&
682
- ! empty( $response['usage_id'] ) &&
683
- $response['usage_id'] != $usage_id ) {
684
  $bstwbsftwppdtplgns_options['track_usage']['usage_id'] = $response['usage_id'];
685
  }
686
  }
@@ -692,89 +711,102 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
692
  }
693
 
694
  return compact( 'notice' );
695
- }
696
 
697
  /**
698
  *
699
  */
700
  public function tab_license() {
701
  global $wp_version, $bstwbsftwppdtplgns_options; ?>
702
- <h3 class="bws_tab_label"><?php _e( 'License Key', 'bestwebsoft' ); ?></h3>
703
  <?php $this->help_phrase(); ?>
704
- <hr>
705
- <?php if ( ! empty( $this->pro_page ) ) {
706
- $bws_license_key = ( isset( $_POST['bws_license_key'] ) ) ? stripslashes( sanitize_text_field( $_POST['bws_license_key'] ) ) : "";
707
-
708
- if ( $this->pro_plugin_is_activated ) {
709
- deactivate_plugins( $this->plugin_basename ); ?>
710
- <script type="text/javascript">
711
- (function($) {
712
- var i = 7;
713
- function bws_set_timeout() {
714
- i--;
715
- if ( 0 == i ) {
716
- window.location.href = '<?php echo esc_url( self_admin_url( $this->pro_page ) ); ?>';
717
- } else {
718
- $( '#bws_timeout_counter' ).text( i );
719
- window.setTimeout( bws_set_timeout, 1000 );
 
 
 
720
  }
721
- }
722
- window.setTimeout( bws_set_timeout, 1000 );
723
- })(jQuery);
724
- </script>
725
- <p><strong><?php _e( 'Congratulations! Pro license is activated successfully.', 'bestwebsoft' ); ?></strong></p>
726
- <p><?php printf( __( 'You will be automatically redirected to the %s in %s seconds.', 'bestwebsoft' ), '<a href="' . esc_url( self_admin_url( $this->pro_page ) ) . '">' . __( 'Settings page', 'bestwebsoft' ) . '</a>', '<span id="bws_timeout_counter">7</span>' ); ?></p>
727
- <?php } else {
728
- $attr = '';
729
- if ( isset( $bstwbsftwppdtplgns_options['go_pro'][ $this->bws_license_plugin ]['count'] ) &&
730
- '5' < $bstwbsftwppdtplgns_options['go_pro'][ $this->bws_license_plugin ]['count'] &&
731
- $bstwbsftwppdtplgns_options['go_pro'][ $this->bws_license_plugin ]['time'] > ( time() - ( 24 * 60 * 60 ) ) )
732
- $attr = 'disabled="disabled"'; ?>
733
- <table class="form-table">
734
- <tr>
735
- <th scope="row"><?php _e( 'License Key', 'bestwebsoft' ); ?></th>
736
- <td>
737
- <input <?php echo $attr; ?> type="text" name="bws_license_key" value="<?php echo esc_attr( $bws_license_key ); ?>" />
738
- <input <?php echo $attr; ?> type="hidden" name="bws_license_plugin" value="<?php echo esc_attr( $this->bws_license_plugin ); ?>" />
739
- <input <?php echo $attr; ?> type="submit" class="button button-secondary" name="bws_license_submit" value="<?php _e( 'Activate', 'bestwebsoft' ); ?>" />
740
- <div class="bws_info">
741
- <?php printf( __( 'Enter your license key to activate %s and get premium plugin features.', 'bestwebsoft' ), '<a href="' . esc_url( $this->plugins_info['PluginURI'] . '?k=' . $this->link_key . '&pn=' . $this->link_pn . '&v=' . $this->plugins_info["Version"] . '&wp_v=' . $wp_version ) . '" target="_blank" title="' . $this->plugins_info["Name"] . ' Pro">' . $this->plugins_info["Name"] . ' Pro</a>' ); ?>
742
- </div>
743
- <?php if ( '' != $attr ) { ?>
744
- <p><?php _e( "Unfortunately, you have exceeded the number of available tries per day. Please, upload the plugin manually.", 'bestwebsoft' ); ?></p>
745
- <?php }
746
- if ( $this->trial_days !== false )
747
- echo '<p>' . __( 'or', 'bestwebsoft' ) . ' <a href="' . esc_url( $this->plugins_info['PluginURI'] . 'trial/?k=' . $this->link_key . '&pn=' . $this->link_pn . '&v=' . $this->plugins_info["Version"] . '&wp_v=' . $wp_version ) . '" target="_blank">' . sprintf( __( 'Start Your Free %s-Day Trial Now', 'bestwebsoft' ), $this->trial_days ) . '</a></p>'; ?>
748
- </td>
749
- </tr>
750
- </table>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
751
  <?php }
752
- } else {
753
- global $bstwbsftwppdtplgns_options;
754
- $license_key = ( isset( $bstwbsftwppdtplgns_options[ $this->plugin_basename ] ) ) ? $bstwbsftwppdtplgns_options[ $this->plugin_basename ] : ''; ?>
755
- <table class="form-table">
756
- <tr>
757
- <th scope="row"><?php _e( 'License Key', 'bestwebsoft' ); ?></th>
758
- <td>
759
- <input type="text" maxlength="100" name="bws_license_key" value="<?php echo esc_attr( $license_key ); ?>" />
760
- <input type="submit" class="button button-secondary" name="bws_license_submit" value="<?php _e( 'Check license key', 'bestwebsoft' ); ?>" />
761
- <div class="bws_info">
762
- <?php _e( 'If necessary, you can check if the license key is correct or reenter it in the field below.', 'bestwebsoft' ); ?>
763
- </div>
764
- </td>
765
- </tr>
766
- <tr>
767
- <th scope="row"><?php _e( 'Manage License Settings', 'bestwebsoft' ); ?></th>
768
- <td>
769
- <a class="button button-secondary" href="https://bestwebsoft.com/client-area" target="_blank"><?php _e( 'Login to Client Area', 'bestwebsoft' ); ?></a>
770
- <div class="bws_info">
771
- <?php _e( 'Manage active licenses, download BWS products, and view your payment history using BestWebSoft Client Area.', 'bestwebsoft' ); ?>
772
- </div>
773
- </td>
774
- </tr>
775
- </table>
776
- <?php }
777
- }
778
 
779
  /**
780
  * Save plugin options to the database
@@ -784,264 +816,278 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
784
  */
785
  private function save_options_license_key() {
786
  global $wp_version, $bstwbsftwppdtplgns_options;
 
 
 
 
 
 
 
 
787
 
788
- $bws_license_key = ( isset( $_POST['bws_license_key'] ) ) ? stripslashes( sanitize_text_field( $_POST['bws_license_key'] ) ) : '';
789
-
790
- if ( '' != $bws_license_key ) {
791
- if ( strlen( $bws_license_key ) != 18 ) {
792
- $error = __( 'Wrong license key', 'bestwebsoft' );
793
- } else {
794
-
795
- /* CHECK license key */
796
- if ( $this->is_pro ) {
797
- delete_transient( 'bws_plugins_update' );
798
- if ( ! $this->all_plugins ) {
799
- if ( ! function_exists( 'get_plugins' ) )
800
- require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
801
- $this->all_plugins = get_plugins();
802
- }
803
- $current = get_site_transient( 'update_plugins' );
804
-
805
- if ( ! empty( $this->all_plugins ) && ! empty( $current ) && isset( $current->response ) && is_array( $current->response ) ) {
806
- $to_send = array();
807
- $to_send["plugins"][ $this->plugin_basename ] = $this->all_plugins[ $this->plugin_basename ];
808
- $to_send["plugins"][ $this->plugin_basename ]["bws_license_key"] = $bws_license_key;
809
- $to_send["plugins"][ $this->plugin_basename ]["bws_illegal_client"] = true;
810
- $options = array(
811
- 'timeout' => ( ( defined('DOING_CRON') && DOING_CRON ) ? 30 : 3 ),
812
- 'body' => array( 'plugins' => serialize( $to_send ) ),
813
- 'user-agent' => 'WordPress/' . $wp_version . '; ' . get_bloginfo( 'url' )
814
- );
815
- $raw_response = wp_remote_post( 'http://bestwebsoft.com/wp-content/plugins/paid-products/plugins/update-check/1.0/', $options );
816
-
817
- if ( is_wp_error( $raw_response ) || 200 != wp_remote_retrieve_response_code( $raw_response ) ) {
818
- $error = __( 'Something went wrong. Please try again later. If the error appears again, please contact us', 'bestwebsoft' ) . ': <a href=https://support.bestwebsoft.com>BestWebSoft</a>. ' . __( 'We are sorry for inconvenience.', 'bestwebsoft' );
819
- } else {
820
- $response = maybe_unserialize( wp_remote_retrieve_body( $raw_response ) );
821
- if ( is_array( $response ) && !empty( $response ) ) {
822
- foreach ( $response as $single_response ) {
823
- if ( "wrong_license_key" == $single_response->package ) {
824
- $error = __( 'Wrong license key.', 'bestwebsoft' );
825
- } else if ( "wrong_domain" == $single_response->package ) {
826
- $error = __( 'This license key is bound to another site.', 'bestwebsoft' );
827
- } else if ( "time_out" == $single_response->package ) {
828
- $message = __( 'This license key is valid, but Your license has expired. If you want to update our plugin in future, you should extend the license.', 'bestwebsoft' );
829
- } elseif ( "you_are_banned" == $single_response->package ) {
830
- $error = __( "Unfortunately, you have exceeded the number of available tries.", 'bestwebsoft' );
831
- } elseif ( "duplicate_domen_for_trial" == $single_response->package ) {
832
- $error = __( "Unfortunately, the Pro Trial licence was already installed to this domain. The Pro Trial license can be installed only once.", 'bestwebsoft' );
833
- }
834
- if ( empty( $error ) ) {
835
- if ( empty( $message ) ) {
836
- if ( isset( $single_response->trial ) )
837
- $message = __( 'The Pro Trial license key is valid.', 'bestwebsoft' );
838
- else
839
- $message = __( 'The license key is valid.', 'bestwebsoft' );
840
-
841
- if ( ! empty( $single_response->time_out ) )
842
- $message .= ' ' . __( 'Your license will expire on', 'bestwebsoft' ) . ' ' . $single_response->time_out . '.';
843
-
844
- if ( isset( $single_response->trial ) && $this->is_trial )
845
- $message .= ' ' . sprintf( __( 'In order to continue using the plugin it is necessary to buy a %s license.', 'bestwebsoft' ), '<a href="' . esc_url( $this->plugins_info['PluginURI'] . '?k=' . $this->link_key . '&pn=' . $this->link_pn . '&v=' . $this->plugins_info["Version"] . '&wp_v=' . $wp_version ) . '" target="_blank" title="' . $this->plugins_info["Name"] . '">Pro</a>' );
846
- }
847
-
848
- if ( isset( $single_response->trial ) ) {
849
- $bstwbsftwppdtplgns_options['trial'][ $this->plugin_basename ] = 1;
850
- } else {
851
- unset( $bstwbsftwppdtplgns_options['trial'][ $this->plugin_basename ] );
852
- }
853
-
854
- if ( isset( $single_response->nonprofit ) ) {
855
- $bstwbsftwppdtplgns_options['nonprofit'][ $this->plugin_basename ] = 1;
856
- } else {
857
- unset( $bstwbsftwppdtplgns_options['nonprofit'][ $this->plugin_basename ] );
858
- }
859
-
860
- if ( ! isset( $bstwbsftwppdtplgns_options[ $this->plugin_basename ] ) || $bstwbsftwppdtplgns_options[ $this->plugin_basename ] != $bws_license_key ) {
861
- $bstwbsftwppdtplgns_options[ $this->plugin_basename ] = $bws_license_key;
862
-
863
- $file = @fopen( dirname( dirname( __FILE__ ) ) . "/license_key.txt" , "w+" );
864
- if ( $file ) {
865
- @fwrite( $file, $bws_license_key );
866
- @fclose( $file );
867
- }
868
- $update_option = true;
869
- }
870
-
871
- if ( ! isset( $bstwbsftwppdtplgns_options['time_out'][ $this->plugin_basename ] ) || $bstwbsftwppdtplgns_options['time_out'][ $this->plugin_basename ] != $single_response->time_out ) {
872
- $bstwbsftwppdtplgns_options['time_out'][ $this->plugin_basename ] = $single_response->time_out;
873
- $update_option = true;
874
- }
875
-
876
- if ( isset( $update_option ) ) {
877
- if ( $this->is_multisite )
878
- update_site_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options );
879
- else
880
- update_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options );
881
- }
882
- }
883
- }
884
- } else {
885
- $error = __( 'Something went wrong. Please try again later. If the error appears again, please contact us', 'bestwebsoft' ) . ' <a href=https://support.bestwebsoft.com>BestWebSoft</a>. ' . __( 'We are sorry for inconvenience.', 'bestwebsoft' );
886
  }
 
887
  }
888
- }
889
- /* Go Pro */
890
- } else {
891
-
892
- $bws_license_plugin = stripslashes( sanitize_text_field( $_POST['bws_license_plugin'] ) );
893
- if ( isset( $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] ) && $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['time'] > ( time() - (24 * 60 * 60) ) ) {
894
- $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] = $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] + 1;
895
- } else {
896
- $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] = 1;
897
- $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['time'] = time();
898
- }
899
-
900
- /* download Pro */
901
- if ( ! $this->all_plugins ) {
902
- if ( ! function_exists( 'get_plugins' ) )
903
- require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
904
- $this->all_plugins = get_plugins();
905
- }
906
-
907
- if ( ! array_key_exists( $bws_license_plugin, $this->all_plugins ) ) {
908
  $current = get_site_transient( 'update_plugins' );
909
- if ( ! empty( $current ) && isset( $current->response ) && is_array( $current->response ) ) {
 
910
  $to_send = array();
911
- $to_send["plugins"][ $bws_license_plugin ] = array();
912
- $to_send["plugins"][ $bws_license_plugin ]["bws_license_key"] = $bws_license_key;
913
- $to_send["plugins"][ $bws_license_plugin ]["bws_illegal_client"] = true;
914
- $options = array(
915
- 'timeout' => ( ( defined( 'DOING_CRON' ) && DOING_CRON ) ? 30 : 3 ),
916
- 'body' => array( 'plugins' => serialize( $to_send ) ),
917
- 'user-agent' => 'WordPress/' . $wp_version . '; ' . get_bloginfo( 'url' ) );
 
918
  $raw_response = wp_remote_post( 'http://bestwebsoft.com/wp-content/plugins/paid-products/plugins/update-check/1.0/', $options );
919
 
920
  if ( is_wp_error( $raw_response ) || 200 != wp_remote_retrieve_response_code( $raw_response ) ) {
921
- $error = __( "Something went wrong. Please try again later. If the error appears again, please contact us", 'bestwebsoft' ) . ': <a href="https://support.bestwebsoft.com">BestWebSoft</a>. ' . __( "We are sorry for inconvenience.", 'bestwebsoft' );
922
  } else {
923
  $response = maybe_unserialize( wp_remote_retrieve_body( $raw_response ) );
924
  if ( is_array( $response ) && ! empty( $response ) ) {
925
  foreach ( $response as $single_response ) {
926
  if ( "wrong_license_key" == $single_response->package ) {
927
- $error = __( "Wrong license key.", 'bestwebsoft' );
928
- } elseif ( "wrong_domain" == $single_response->package ) {
929
- $error = __( "This license key is bound to another site.", 'bestwebsoft' );
 
 
930
  } elseif ( "you_are_banned" == $single_response->package ) {
931
- $error = __( "Unfortunately, you have exceeded the number of available tries per day. Please, upload the plugin manually.", 'bestwebsoft' );
932
- } elseif ( "time_out" == $single_response->package ) {
933
- $error = sprintf( __( "Unfortunately, Your license has expired. To continue getting top-priority support and plugin updates, you should extend it in your %s.", 'bestwebsoft' ), ' <a href="https://bestwebsoft.com/client-area">Client Area</a>' );
934
  } elseif ( "duplicate_domen_for_trial" == $single_response->package ) {
935
- $error = __( "Unfortunately, the Pro licence was already installed to this domain. The Pro Trial license can be installed only once.", 'bestwebsoft' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
936
  }
937
  }
938
- if ( empty( $error ) ) {
939
- $bstwbsftwppdtplgns_options[ $bws_license_plugin ] = $bws_license_key;
940
-
941
- $url = 'http://bestwebsoft.com/wp-content/plugins/paid-products/plugins/downloads/?bws_first_download=' . $bws_license_plugin . '&bws_license_key=' . $bws_license_key . '&download_from=5';
942
-
943
- if ( ! $this->upload_dir )
944
- $this->upload_dir = wp_upload_dir();
945
-
946
- $zip_name = explode( '/', $bws_license_plugin );
947
-
948
- if ( !function_exists( 'curl_init' ) ) {
949
- $received_content = file_get_contents( $url );
950
- } else {
951
- $ch = curl_init();
952
- curl_setopt( $ch, CURLOPT_URL, $url );
953
- curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
954
- $received_content = curl_exec( $ch );
955
- curl_close( $ch );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
956
  }
 
 
 
 
 
 
957
 
958
- if ( ! $received_content ) {
959
- $error = __( "Failed to download the zip archive. Please, upload the plugin manually.", 'bestwebsoft' );
960
- } else {
961
- if ( is_writable( $this->upload_dir["path"] ) ) {
962
- $file_put_contents = $this->upload_dir["path"] . "/" . $zip_name[0] . ".zip";
963
- if ( file_put_contents( $file_put_contents, $received_content ) ) {
964
- @chmod( $file_put_contents, octdec( 755 ) );
965
- if ( class_exists( 'ZipArchive' ) ) {
966
- $zip = new ZipArchive();
967
- if ( $zip->open( $file_put_contents ) === TRUE ) {
968
- $zip->extractTo( WP_PLUGIN_DIR );
969
- $zip->close();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
970
  } else {
971
- $error = __( "Failed to open the zip archive. Please, upload the plugin manually.", 'bestwebsoft' );
972
  }
973
- } elseif ( class_exists( 'Phar' ) ) {
974
- $phar = new PharData( $file_put_contents );
975
- $phar->extractTo( WP_PLUGIN_DIR );
976
  } else {
977
- $error = __( "Your server does not support either ZipArchive or Phar. Please, upload the plugin manually.", 'bestwebsoft' );
978
  }
979
- @unlink( $file_put_contents );
980
  } else {
981
- $error = __( "Failed to download the zip archive. Please, upload the plugin manually.", 'bestwebsoft' );
982
  }
983
- } else {
984
- $error = __( "UploadDir is not writable. Please, upload the plugin manually.", 'bestwebsoft' );
985
  }
986
- }
987
 
988
- /* activate Pro */
989
- if ( file_exists( WP_PLUGIN_DIR . '/' . $zip_name[0] ) ) {
990
- if ( $this->is_multisite && is_plugin_active_for_network( $this->plugin_basename ) ) {
991
- /* if multisite and free plugin is network activated */
992
- $active_plugins = get_site_option( 'active_sitewide_plugins' );
993
- $active_plugins[ $bws_license_plugin ] = time();
994
- update_site_option( 'active_sitewide_plugins', $active_plugins );
995
- } else {
996
- /* activate on a single blog */
997
- $active_plugins = get_option( 'active_plugins' );
998
- array_push( $active_plugins, $bws_license_plugin );
999
- update_option( 'active_plugins', $active_plugins );
 
 
 
 
1000
  }
1001
- $this->pro_plugin_is_activated = true;
1002
- } elseif ( empty( $error ) ) {
1003
- $error = __( "Failed to download the zip archive. Please, upload the plugin manually.", 'bestwebsoft' );
1004
  }
 
 
1005
  }
 
 
 
 
 
 
 
 
 
1006
  } else {
1007
- $error = __( "Something went wrong. Try again later or upload the plugin manually. We are sorry for inconvenience.", 'bestwebsoft' );
 
1008
  }
 
 
1009
  }
1010
  }
1011
- } else {
1012
- $bstwbsftwppdtplgns_options[ $bws_license_plugin ] = $bws_license_key;
1013
- /* activate Pro */
1014
- if ( ! is_plugin_active( $bws_license_plugin ) ) {
1015
- if ( $this->is_multisite && is_plugin_active_for_network( $this->plugin_basename ) ) {
1016
- /* if multisite and free plugin is network activated */
1017
- $network_wide = true;
1018
- } else {
1019
- /* activate on a single blog */
1020
- $network_wide = false;
1021
- }
1022
- activate_plugin( $bws_license_plugin, NULL, $network_wide );
1023
- $this->pro_plugin_is_activated = true;
1024
  }
1025
- }
1026
- /* add 'track_usage' for Pro version */
1027
- if ( ! empty( $bstwbsftwppdtplgns_options['track_usage'][ $this->plugin_basename ] ) &&
1028
- empty( $bstwbsftwppdtplgns_options['track_usage'][ $bws_license_plugin ] ) ) {
1029
- $bstwbsftwppdtplgns_options['track_usage'][ $bws_license_plugin ] = $bstwbsftwppdtplgns_options['track_usage'][ $this->plugin_basename ];
1030
- }
1031
 
1032
- if ( $this->is_multisite )
1033
- update_site_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options );
1034
- else
1035
- update_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options );
 
1036
 
1037
- if ( $this->pro_plugin_is_activated )
1038
- delete_transient( 'bws_plugins_update' );
 
 
1039
  }
 
 
1040
  }
1041
- } else {
1042
- $error = __( "Please, enter Your license key", 'bestwebsoft' );
1043
  }
1044
- return compact( 'error', 'message' );
1045
  }
1046
 
1047
  /**
@@ -1061,18 +1107,18 @@ if ( ! class_exists( 'Bws_Settings_Tabs' ) ) {
1061
  echo '</a></div>';
1062
  }
1063
 
1064
- public function bws_pro_block_links() {
1065
  global $wp_version; ?>
1066
- <div class="bws_pro_version_tooltip">
1067
- <a class="bws_button" href="<?php echo esc_url( $this->plugins_info['PluginURI'] ); ?>?k=<?php echo $this->link_key; ?>&amp;pn=<?php echo $this->link_pn; ?>&amp;v=<?php echo $this->plugins_info["Version"]; ?>&amp;wp_v=<?php echo $wp_version; ?>" target="_blank" title="<?php echo $this->plugins_info["Name"]; ?>"><?php _e( 'Upgrade to Pro', 'bestwebsoft' ); ?></a>
1068
  <?php if ( $this->trial_days !== false ) { ?>
1069
- <span class="bws_trial_info">
1070
- <?php _e( 'or', 'bestwebsoft' ); ?>
1071
- <a href="<?php echo esc_url( $this->plugins_info['PluginURI'] . '?k=' . $this->link_key . '&pn=' . $this->link_pn . '&v=' . $this->plugins_info["Version"] . '&wp_v=' . $wp_version ); ?>" target="_blank" title="<?php echo $this->plugins_info["Name"]; ?>"><?php _e( 'Start Your Free Trial', 'bestwebsoft' ); ?></a>
1072
  </span>
1073
  <?php } ?>
1074
- <div class="clear"></div>
1075
- </div>
1076
  <?php }
1077
 
1078
  /**
14
  public $plugin_basename;
15
  public $prefix;
16
  public $wp_slug;
17
+
18
  public $options;
19
  public $default_options;
20
+ public $is_network_options;
21
  public $plugins_info = array();
22
  public $hide_pro_tabs = false;
23
  public $demo_data;
28
  public $link_key;
29
  public $link_pn;
30
  public $is_trial = false;
31
+ public $licenses;
32
  public $trial_days;
33
+ public $bws_hide_pro_option_exist = true;
34
 
35
  public $forbid_view = false;
36
  public $change_permission_attr = '';
49
  * The child class should call this constructor from its own constructor to override
50
  * the default $args.
51
  * @access public
52
+ *
53
  * @param array|string $args
54
  */
55
  public function __construct( $args = array() ) {
56
  $args = wp_parse_args( $args, array(
57
  'plugin_basename' => '',
58
  'prefix' => '',
59
+ 'plugins_info' => array(),
60
  'default_options' => array(),
61
  'options' => array(),
62
  'is_network_options' => false,
63
  'tabs' => array(),
64
+ 'doc_link' => '',
65
+ 'doc_video_link' => '',
66
+ 'wp_slug' => '',
67
+ 'demo_data' => false,
68
  /* if this is free version and pro exist */
69
+ 'pro_page' => '',
70
+ 'bws_license_plugin' => '',
71
+ 'link_key' => '',
72
+ 'link_pn' => '',
73
+ 'trial_days' => false,
74
+ 'licenses' => array()
75
  ) );
76
 
77
  $args['plugins_info']['Name'] = str_replace( ' by BestWebSoft', '', $args['plugins_info']['Name'] );
78
+
79
  $this->plugin_basename = $args['plugin_basename'];
80
  $this->prefix = $args['prefix'];
81
+ $this->plugins_info = $args['plugins_info'];
82
  $this->options = $args['options'];
83
  $this->default_options = $args['default_options'];
84
  $this->wp_slug = $args['wp_slug'];
95
  $this->link_key = $args['link_key'];
96
  $this->link_pn = $args['link_pn'];
97
  $this->trial_days = $args['trial_days'];
98
+ $this->licenses = $args['licenses'];
99
 
100
  $this->hide_pro_tabs = bws_hide_premium_options_check( $this->options );
101
  $this->version = '1.0.0';
102
  $this->is_multisite = is_multisite();
103
 
104
+ if ( empty( $this->pro_page ) && array_key_exists( 'license', $this->tabs ) ) {
105
  $this->is_pro = true;
106
+ $this->licenses[ $this->plugins_info['TextDomain'] ] = array(
107
+ 'name' => $this->plugins_info['Name'],
108
+ 'slug' => $this->plugins_info['TextDomain'],
109
+ 'basename' => $this->plugin_basename
110
+ );
111
+ } else {
112
+ $this->licenses[ $this->plugins_info['TextDomain'] ] = array(
113
+ 'name' => $this->plugins_info['Name'],
114
+ 'slug' => $this->plugins_info['TextDomain'],
115
+ 'pro_slug' => stristr( $this->bws_license_plugin, '/', TRUE ),
116
+ 'basename' => $this->plugin_basename,
117
+ 'pro_basename' => $this->bws_license_plugin
118
+ );
119
+ }
120
  }
121
 
122
  /**
141
  $this->demo_data->bws_demo_confirm();
142
  } else {
143
  bws_show_settings_notice(); ?>
144
+ <form class="bws_form" method="post" action="" enctype="multipart/form-data">
145
+ <div id="poststuff">
146
+ <div id="post-body" class="metabox-holder columns-2">
147
+ <div id="post-body-content" style="position: relative;">
148
+ <?php $this->display_tabs(); ?>
149
+ </div><!-- #post-body-content -->
150
+ <div id="postbox-container-1" class="postbox-container">
151
+ <div class="meta-box-sortables ui-sortable">
152
+ <div id="submitdiv" class="postbox">
153
+ <h3 class="hndle"><?php _e( 'Information', 'bestwebsoft' ); ?></h3>
154
+ <div class="inside">
155
+ <div class="submitbox" id="submitpost">
156
+ <div id="minor-publishing">
157
+ <div id="misc-publishing-actions">
158
  <?php if ( $this->is_pro ) {
159
  if ( ! isset( $bstwbsftwppdtplgns_options['time_out'][ $this->plugin_basename ] ) || isset( $bstwbsftwppdtplgns_options['wrong_license_key'][ $this->plugin_basename ] ) ) {
160
  $license_type = 'Pro';
162
  } else {
163
  $finish = strtotime( $bstwbsftwppdtplgns_options['time_out'][ $this->plugin_basename ] );
164
  $today = strtotime( date( "m/d/Y" ) );
165
+ if ( isset( $bstwbsftwppdtplgns_options['trial'][ $this->plugin_basename ] ) ) {
166
  $license_type = 'Trial Pro';
167
 
168
  if ( $finish < $today ) {
171
  $daysleft = floor( ( $finish - $today ) / ( 60*60*24 ) );
172
  $license_status = sprintf( __( '%s day(-s) left', 'bestwebsoft' ), $daysleft );
173
  }
174
+ $license_status .= '. <a target="_blank" href="' . esc_url( $this->plugins_info['PluginURI'] ) . '">' . __( 'Upgrade to Pro', 'bestwebsoft' ) . '</a>';
175
  } else {
176
  $license_type = isset( $bstwbsftwppdtplgns_options['nonprofit'][ $this->plugin_basename ] ) ? 'Nonprofit Pro' : 'Pro';
177
  if ( $finish < $today ) {
181
  }
182
  }
183
  } ?>
184
+ <div class="misc-pub-section">
185
+ <strong><?php _e( 'License', 'bestwebsoft' ); ?>:</strong> <?php echo $license_type; ?>
186
+ </div>
187
+ <div class="misc-pub-section">
188
+ <strong><?php _e( 'Status', 'bestwebsoft' ); ?>:</strong> <?php echo $license_status; ?>
189
+ </div><!-- .misc-pub-section -->
190
  <?php } ?>
191
+ <div class="misc-pub-section">
192
+ <strong><?php _e( 'Version', 'bestwebsoft' ); ?>:</strong> <?php echo $this->plugins_info['Version']; ?>
193
+ </div><!-- .misc-pub-section -->
194
+ </div>
195
+ <div class="clear"></div>
196
+ </div>
197
+ <div id="major-publishing-actions">
198
+ <div id="publishing-action">
199
+ <input type="hidden" name="<?php echo $this->prefix; ?>_form_submit" value="submit" />
200
+ <input id="bws-submit-button" type="submit" class="button button-primary button-large" value="<?php _e( 'Save Changes', 'bestwebsoft' ); ?>" />
201
+ <?php wp_nonce_field( $this->plugin_basename, 'bws_nonce_name' ); ?>
202
+ </div>
203
+ <div class="clear"></div>
204
+ </div>
205
+ </div>
206
+ </div>
207
+ </div>
208
  <?php /**
209
  * action - Display custom metabox
210
  */
211
  do_action( __CLASS__ . '_display_metabox' ); ?>
212
+ </div>
213
+ </div>
214
+ <div id="postbox-container-2" class="postbox-container">
215
  <?php /**
216
  * action - Display additional content for #postbox-container-2
217
  */
218
  do_action( __CLASS__ . '_display_second_postbox' ); ?>
219
+ <div class="submit">
220
+ <input type="submit" class="button button-primary button-large" value="<?php _e( 'Save Changes', 'bestwebsoft' ); ?>" />
221
+ </div>
222
  <?php if ( ! empty( $this->wp_slug ) )
223
  bws_plugin_reviews_block( $this->plugins_info['Name'], $this->wp_slug ); ?>
224
+ </div>
225
+ </div>
226
+ </form>
227
+ </div>
228
  <?php }
229
  }
230
 
234
  * @param void
235
  * @return void
236
  */
237
+ public function display_tabs() {
238
  global $wp_version; ?>
239
+ <div id="bws_settings_tabs_wrapper"<?php if ( version_compare( $wp_version, '4.0', '<' ) ) echo ' class="edit-form-section"'; ?>>
240
+ <ul id="bws_settings_tabs">
241
  <?php $this->display_tabs_list(); ?>
242
+ </ul>
243
  <?php $this->display_tabs_content(); ?>
244
+ <div class="clear"></div>
245
+ <input type="hidden" name="bws_active_tab" value="<?php if ( isset( $_REQUEST['bws_active_tab'] ) ) echo esc_attr( $_REQUEST['bws_active_tab'] ); ?>" />
246
+ </div>
247
  <?php }
248
 
249
  /**
260
  $tab_class .= ' bws_pro_tab';
261
  if ( ! empty( $data['class'] ) )
262
  $tab_class .= ' ' . $data['class']; ?>
263
+ <li class="<?php echo $tab_class; ?>" data-slug="<?php echo $tab_slug; ?>">
264
+ <a href="#<?php echo $this->prefix; ?>_<?php echo $tab_slug; ?>_tab">
265
+ <span><?php echo esc_html( $data['label'] ); ?></span>
266
+ </a>
267
+ </li>
268
  <?php }
269
  }
270
 
275
  * @return void
276
  */
277
  public function display_tabs_content() {
278
+ foreach ( $this->tabs as $tab_slug => $data ) {
279
  if ( ! empty( $data['is_pro'] ) && $this->hide_pro_tabs )
280
  continue; ?>
281
+ <div class="bws_tab ui-tabs-panel ui-widget-content ui-corner-bottom" id="<?php echo esc_attr( $this->prefix . '_' . $tab_slug . '_tab' ); ?>" aria-labelledby="ui-id-2" role="tabpanel" aria-hidden="false" style="display: block;">
282
  <?php $tab_slug = str_replace( '-', '_', $tab_slug );
283
  if ( method_exists( $this, 'tab_' . $tab_slug ) ) {
284
  call_user_func( array( $this, 'tab_' . $tab_slug ) );
285
  do_action_ref_array( __CLASS__ . '_after_tab_' . $tab_slug, array( &$this ) );
286
  } ?>
287
+ </div>
288
  <?php }
289
  }
290
 
300
  if ( isset( $_POST['bws_restore_confirm'] ) && check_admin_referer( $this->plugin_basename, 'bws_settings_nonce_name' ) ) {
301
  $this->restore_options();
302
  $message = __( 'All plugin settings were restored.', 'bestwebsoft' );
303
+ /* Go Pro - check license key */
304
  } elseif ( isset( $_POST['bws_license_submit'] ) && check_admin_referer( $this->plugin_basename, 'bws_nonce_name' ) ) {
305
  $result = $this->save_options_license_key();
306
+ if ( ! empty( $result['empty_field_error'] ) )
307
+ $error = $result['empty_field_error'];
308
  if ( ! empty( $result['error'] ) )
309
  $error = $result['error'];
310
  if ( ! empty( $result['message'] ) )
311
  $message = $result['message'];
312
  if ( ! empty( $result['notice'] ) )
313
  $notice = $result['notice'];
314
+ /* check demo data */
315
  } else {
316
  $demo_result = ! empty( $this->demo_data ) ? $this->demo_data->bws_handle_demo_data() : false;
317
  if ( false !== $demo_result ) {
321
  if ( ! empty( $demo_result['done'] ) && ! empty( $demo_result['options'] ) )
322
  $this->options = $demo_result['options'];
323
  }
324
+ /* Save options */
325
  } elseif ( ! isset( $_REQUEST['bws_restore_default'] ) && ! isset( $_POST['bws_handle_demo'] ) && isset( $_REQUEST[ $this->prefix . '_form_submit'] ) && check_admin_referer( $this->plugin_basename, 'bws_nonce_name' ) ) {
326
+ /* save tabs */
327
  $result = $this->save_options();
328
  if ( ! empty( $result['error'] ) )
329
  $error = $result['error'];
360
  * action - Display custom error\message\notice
361
  */
362
  do_action( __CLASS__ . '_display_custom_messages', $save_results ); ?>
363
+ <div class="updated fade inline" <?php if ( empty( $save_results['message'] ) ) echo "style=\"display:none\""; ?>><p><strong><?php echo $save_results['message']; ?></strong></p></div>
364
+ <div class="updated bws-notice inline" <?php if ( empty( $save_results['notice'] ) ) echo "style=\"display:none\""; ?>><p><strong><?php echo $save_results['notice']; ?></strong></p></div>
365
+ <div class="error inline" <?php if ( empty( $save_results['error'] ) ) echo "style=\"display:none\""; ?>><p><strong><?php echo $save_results['error']; ?></strong></p></div>
366
  <?php }
367
 
368
  /**
409
  fclose( $f );
410
  }
411
  }
412
+
413
  if ( $this->is_multisite )
414
  $this->custom_code_args['blog_id'] = get_current_blog_id();
415
 
416
  foreach ( array( 'css', 'php', 'js' ) as $extension ) {
417
  $file = 'bws-custom-code.' . $extension;
418
  $real_file = $folder . '/' . $file;
419
+
420
  if ( file_exists( $real_file ) ) {
421
  update_recently_edited( $real_file );
422
  $this->custom_code_args["content_{$extension}"] = file_get_contents( $real_file );
423
  if ( ( $this->is_multisite && isset( $bstwbsftwppdtplgns_options['custom_code'][ $this->custom_code_args['blog_id'] ][ $file ] ) ) ||
424
+ ( ! $this->is_multisite && isset( $bstwbsftwppdtplgns_options['custom_code'][ $file ] ) ) ) {
425
  $this->custom_code_args["is_{$extension}_active"] = true;
426
  }
427
  if ( is_writeable( $real_file ) )
439
  * @access private
440
  */
441
  private function tab_custom_code() { ?>
442
+ <h3 class="bws_tab_label"><?php _e( 'Custom Code', 'bestwebsoft' ); ?></h3>
443
  <?php $this->help_phrase(); ?>
444
+ <hr>
445
  <?php if ( ! current_user_can( 'edit_plugins' ) ) {
446
  echo '<p>' . __( 'You do not have sufficient permissions to edit plugins for this site.', 'bestwebsoft' ) . '</p>';
447
  return;
448
  }
449
 
450
+ $list = array(
451
  'css' => array( 'description' => __( 'These styles will be added to the header on all pages of your site.', 'bestwebsoft' ),
452
+ 'learn_more_link' => 'https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Getting_started'
453
+ ),
454
  'php' => array( 'description' => sprintf( __( 'This PHP code will be hooked to the %s action and will be printed on front end only.', 'bestwebsoft' ), '<a href="https://codex.wordpress.org/Plugin_API/Action_Reference/init" target="_blank"><code>init</code></a>' ),
455
+ 'learn_more_link' => 'http://php.net/'
456
+ ),
457
  'js' => array( 'description' => __( 'These code will be added to the header on all pages of your site.', 'bestwebsoft' ),
458
+ 'learn_more_link' => 'https://developer.mozilla.org/en-US/docs/Web/JavaScript'
459
+ ),
460
  );
461
 
462
  if ( ! $this->custom_code_args['css_writeable'] ||
463
+ ! $this->custom_code_args['php_writeable'] ||
464
+ ! $this->custom_code_args['js_writeable'] ) { ?>
465
+ <p><em><?php printf( __( 'You need to make this files writable before you can save your changes. See %s the Codex %s for more information.', 'bestwebsoft' ),
466
+ '<a href="https://codex.wordpress.org/Changing_File_Permissions" target="_blank">',
467
+ '</a>' ); ?></em></p>
468
  <?php }
469
 
470
  foreach ( $list as $extension => $extension_data ) {
471
  $name = 'js' == $extension ? 'JavaScript' : strtoupper( $extension ); ?>
472
+ <p><big>
473
+ <strong><?php echo $name; ?></strong>
474
+ <?php if ( ! $this->custom_code_args["{$extension}_writeable"] )
475
+ echo '(' . __( 'Browsing', 'bestwebsoft' ) . ')'; ?>
476
+ </big></p>
477
+ <p class="bws_info">
478
+ <label>
479
+ <input type="checkbox" name="bws_custom_<?php echo $extension; ?>_active" value="1" <?php if ( $this->custom_code_args["is_{$extension}_active"] ) echo "checked"; ?> />
480
  <?php printf( __( 'Activate custom %s code.', 'bestwebsoft' ), $name ); ?>
481
+ </label>
482
+ </p>
483
+ <textarea cols="70" rows="25" name="bws_newcontent_<?php echo $extension; ?>" id="bws_newcontent_<?php echo $extension; ?>"><?php if ( isset( $this->custom_code_args["content_{$extension}"] ) ) echo esc_textarea( $this->custom_code_args["content_{$extension}"] ); ?></textarea>
484
+ <p class="bws_info">
485
  <?php echo $extension_data['description']; ?>
486
+ <br>
487
+ <a href="<?php echo esc_url( $extension_data['learn_more_link'] ); ?>" target="_blank">
488
  <?php printf( __( 'Learn more about %s', 'bestwebsoft' ), $name ); ?>
489
+ </a>
490
+ </p>
491
  <?php }
492
  }
493
 
500
  global $bstwbsftwppdtplgns_options;
501
  $folder = $this->upload_dir['basedir'] . '/bws-custom-code';
502
 
503
+ foreach ( array( 'css', 'php', 'js' ) as $extension ) {
504
  $file = 'bws-custom-code.' . $extension;
505
  $real_file = $folder . '/' . $file;
506
 
507
  if ( isset( $_POST["bws_newcontent_{$extension}"] ) &&
508
+ $this->custom_code_args["{$extension}_writeable"] ) {
509
  $newcontent = trim( wp_unslash( $_POST["bws_newcontent_{$extension}"] ) );
510
  if ( 'css' == $extension )
511
+ $newcontent = wp_kses( $newcontent, array( '\'', '\"' ) );
512
 
513
  if ( ! empty( $newcontent ) && isset( $_POST["bws_custom_{$extension}_active"] ) ) {
514
  $this->custom_code_args["is_{$extension}_active"] = true;
545
  * Display 'misc' tab
546
  * @access private
547
  */
548
+ private function tab_misc() {
549
  global $bstwbsftwppdtplgns_options; ?>
550
+ <h3 class="bws_tab_label"><?php _e( 'Miscellaneous Settings', 'bestwebsoft' ); ?></h3>
551
  <?php $this->help_phrase(); ?>
552
+ <hr>
553
  <?php /**
554
  * action - Display custom options on the Import / Export' tab
555
  */
556
  do_action( __CLASS__ . '_additional_misc_options' );
557
 
558
  if ( ! $this->forbid_view && ! empty( $this->change_permission_attr ) ) { ?>
559
+ <div class="error inline bws_visible"><p><strong><?php _e( "Notice", 'bestwebsoft' ); ?>:</strong> <strong><?php printf( __( "It is prohibited to change %s settings on this site in the %s network settings.", 'bestwebsoft' ), $this->plugins_info["Name"], $this->plugins_info["Name"] ); ?></strong></p></div>
560
  <?php }
561
  if ( $this->forbid_view ) { ?>
562
+ <div class="error inline bws_visible"><p><strong><?php _e( "Notice", 'bestwebsoft' ); ?>:</strong> <strong><?php printf( __( "It is prohibited to view %s settings on this site in the %s network settings.", 'bestwebsoft' ), $this->plugins_info["Name"], $this->plugins_info["Name"] ); ?></strong></p></div>
563
  <?php } else { ?>
564
+ <table class="form-table">
565
  <?php /**
566
  * action - Display custom options on the 'misc' tab
567
  */
568
  do_action( __CLASS__ . '_additional_misc_options_affected' );
569
  if ( ! empty( $this->pro_page ) && $this->bws_hide_pro_option_exist ) { ?>
570
+ <tr>
571
+ <th scope="row"><?php _e( 'Pro Options', 'bestwebsoft' ); ?></th>
572
+ <td>
573
+ <label>
574
+ <input <?php echo $this->change_permission_attr; ?> name="bws_hide_premium_options_submit" type="checkbox" value="1" <?php if ( ! $this->hide_pro_tabs ) echo 'checked="checked "'; ?> />
575
+ <span class="bws_info"><?php _e( 'Enable to display plugin Pro options.', 'bestwebsoft' ); ?></span>
576
+ </label>
577
+ </td>
578
+ </tr>
579
  <?php } ?>
580
+ <tr>
581
+ <th scope="row"><?php _e( 'Track Usage', 'bestwebsoft' ); ?></th>
582
+ <td>
583
+ <label>
584
+ <input <?php echo $this->change_permission_attr; ?> name="bws_track_usage" type="checkbox" value="1" <?php if ( ! empty( $bstwbsftwppdtplgns_options['track_usage']['products'][ $this->plugin_basename ] ) ) echo 'checked="checked "'; ?>/>
585
+ <span class="bws_info"><?php _e( 'Enable to allow tracking plugin usage anonymously in order to make it better.', 'bestwebsoft' ); ?></span>
586
+ </label>
587
+ </td>
588
+ </tr>
589
+ <tr>
590
+ <th scope="row"><?php _e( 'Default Settings', 'bestwebsoft' ); ?></th>
591
+ <td>
592
+ <input<?php echo $this->change_permission_attr; ?> name="bws_restore_default" type="submit" class="button" value="<?php _e( 'Restore Settings', 'bestwebsoft' ); ?>" />
593
+ <div class="bws_info"><?php _e( 'This will restore plugin settings to defaults.', 'bestwebsoft' ); ?></div>
594
+ </td>
595
+ </tr>
596
+ </table>
597
  <?php }
598
  }
599
 
602
  * @access private
603
  */
604
  public function tab_import_export() { ?>
605
+ <h3 class="bws_tab_label"><?php _e( 'Import / Export', 'bestwebsoft' ); ?></h3>
606
  <?php $this->help_phrase(); ?>
607
+ <hr>
608
  <?php /**
609
  * action - Display custom options on the Import / Export' tab
610
  */
611
  do_action( __CLASS__ . '_additional_import_export_options' );
612
 
613
  if ( ! $this->forbid_view && ! empty( $this->change_permission_attr ) ) { ?>
614
+ <div class="error inline bws_visible"><p><strong><?php _e( "Notice", 'bestwebsoft' ); ?>:</strong> <strong><?php printf( __( "It is prohibited to change %s settings on this site in the %s network settings.", 'bestwebsoft' ), $this->plugins_info["Name"], $this->plugins_info["Name"] ); ?></strong></p></div>
615
  <?php }
616
  if ( $this->forbid_view ) { ?>
617
+ <div class="error inline bws_visible"><p><strong><?php _e( "Notice", 'bestwebsoft' ); ?>:</strong> <strong><?php printf( __( "It is prohibited to view %s settings on this site in the %s network settings.", 'bestwebsoft' ), $this->plugins_info["Name"], $this->plugins_info["Name"] ); ?></strong></p></div>
618
  <?php } else { ?>
619
+ <table class="form-table">
620
  <?php /**
621
  * action - Display custom options on the Import / Export' tab
622
  */
623
  do_action( __CLASS__ . '_additional_import_export_options_affected' ); ?>
624
+ </table>
625
  <?php }
626
  }
627
 
653
  else
654
  update_option( $this->prefix . '_options', $this->options );
655
  }
656
+ $this->hide_pro_tabs = false;
657
  } else {
658
  if ( empty( $this->options['hide_premium_options'] ) ) {
659
  $this->options['hide_premium_options'][] = get_current_user_id();
698
  $response = maybe_unserialize( wp_remote_retrieve_body( $raw_response ) );
699
 
700
  if ( is_array( $response ) &&
701
+ ! empty( $response['usage_id'] ) &&
702
+ $response['usage_id'] != $usage_id ) {
703
  $bstwbsftwppdtplgns_options['track_usage']['usage_id'] = $response['usage_id'];
704
  }
705
  }
711
  }
712
 
713
  return compact( 'notice' );
714
+ }
715
 
716
  /**
717
  *
718
  */
719
  public function tab_license() {
720
  global $wp_version, $bstwbsftwppdtplgns_options; ?>
721
+ <h3 class="bws_tab_label"><?php _e( 'License Key', 'bestwebsoft' ); ?></h3>
722
  <?php $this->help_phrase(); ?>
723
+ <hr>
724
+ <?php
725
+ foreach ( $this->licenses as $single_license) {
726
+ $pro_plugin_name = ( strpos( $single_license['name'], 'Pro' ) ) ? $single_license['name'] : $single_license['name'] . ' ' . 'Pro';
727
+ if ( ! empty( $this->pro_page ) || ! empty( $single_license['pro_basename'] ) ) {
728
+
729
+ if ( $this->pro_plugin_is_activated && ( empty( $single_license['pro_basename'] ) || isset( $this->bws_license_plugin ) ) ) {
730
+ deactivate_plugins( $single_license['basename'] ); ?>
731
+ <script type="text/javascript">
732
+ (function($) {
733
+ var i = 7;
734
+ function bws_set_timeout() {
735
+ i--;
736
+ if ( 0 == i ) {
737
+ window.location.href = '<?php echo esc_url( self_admin_url( $this->pro_page ) ); ?>';
738
+ } else {
739
+ $( '#bws_timeout_counter' ).text( i );
740
+ window.setTimeout( bws_set_timeout, 1000 );
741
+ }
742
  }
743
+ window.setTimeout( bws_set_timeout, 1000 );
744
+ })(jQuery);
745
+ </script>
746
+ <p><strong><?php printf( __( 'Congratulations! %s license is activated successfully.', 'bestwebsoft' ), $pro_plugin_name ); ?></strong></p>
747
+ <p><?php printf( __( 'You will be automatically redirected to the %s in %s seconds.', 'bestwebsoft' ), '<a href="' . esc_url( self_admin_url( $this->pro_page ) ) . '">' . __( 'Settings page', 'bestwebsoft' ) . '</a>', '<span id="bws_timeout_counter">7</span>' ); ?></p>
748
+ <?php } else {
749
+ $attr = '';
750
+ if ( isset( $bstwbsftwppdtplgns_options['go_pro'][ $this->bws_license_plugin ]['count'] ) &&
751
+ '5' < $bstwbsftwppdtplgns_options['go_pro'][ $this->bws_license_plugin ]['count'] &&
752
+ $bstwbsftwppdtplgns_options['go_pro'][ $this->bws_license_plugin ]['time'] > ( time() - ( 24 * 60 * 60 ) ) )
753
+ $attr = 'disabled="disabled"';
754
+
755
+
756
+ $license_key = '';
757
+ if( ! empty( $single_license['pro_basename'] ) ) {
758
+ $license_key = ! empty( $bstwbsftwppdtplgns_options[ $single_license['pro_basename'] ] ) ? $bstwbsftwppdtplgns_options[ $single_license['pro_basename'] ] : '';
759
+ }
760
+ $current_plugin_link = ( ! empty( $this->link_key ) && ! empty( $this->link_pn ) ? esc_url( 'https://bestwebsoft.com/products/wordpress/plugins/' . $single_license['slug'] . '/' . '?k=' . $this->link_key . '&pn=' . $this->link_pn . '&v=' . $this->plugins_info["Version"] . '&wp_v=' . $wp_version ) : esc_url( 'https://bestwebsoft.com/products/wordpress/plugins/' . $single_license['slug'] . '/' ) );
761
+ ?>
762
+ <table class="form-table">
763
+ <tr>
764
+ <th scope="row"><?php echo $pro_plugin_name . ' License'; ?></th>
765
+ <td>
766
+ <input <?php echo $attr; ?> type="text" name="bws_license_key_<?php echo ( ! empty( $single_license['pro_slug'] ) ) ? $single_license['pro_slug'] : $single_license['slug']; ?>" value="<?php echo esc_attr( $license_key ); ?>" />
767
+ <input <?php echo $attr; ?> type="hidden" name="bws_license_plugin_<?php echo ( ! empty( $single_license['pro_slug'] ) ) ? $single_license['pro_slug'] : $single_license['slug']; ?>" value="<?php echo esc_attr( ( ! empty( $single_license['pro_slug'] ) ) ? $single_license['pro_slug'] : $single_license['slug'] ); ?>" />
768
+ <input <?php echo $attr; ?> type="submit" class="button button-secondary" name="bws_license_submit" value="<?php _e( 'Activate', 'bestwebsoft' ); ?>" />
769
+ <div class="bws_info">
770
+ <?php printf( __( 'Enter your license key to activate %s and get premium plugin features.', 'bestwebsoft' ), '<a href="' . $current_plugin_link . '" target="_blank" title="' . $pro_plugin_name . '">' . $pro_plugin_name . '</a>' ); ?>
771
+ </div>
772
+ <?php if ( '' != $attr ) { ?>
773
+ <p><?php _e( "Unfortunately, you have exceeded the number of available tries per day. Please, upload the plugin manually.", 'bestwebsoft' ); ?></p>
774
+ <?php }
775
+ if ( $this->trial_days !== false )
776
+ echo '<p>' . __( 'or', 'bestwebsoft' ) . ' <a href="' . esc_url( $this->plugins_info['PluginURI'] . 'trial/?k=' . $this->link_key . '&pn=' . $this->link_pn . '&v=' . $this->plugins_info["Version"] . '&wp_v=' . $wp_version ) . '" target="_blank">' . sprintf( __( 'Start Your Free %s-Day Trial Now', 'bestwebsoft' ), $this->trial_days ) . '</a></p>'; ?>
777
+ </td>
778
+ </tr>
779
+ </table>
780
+ <?php }
781
+ } else {
782
+ global $bstwbsftwppdtplgns_options;
783
+ $license_key = ( isset( $bstwbsftwppdtplgns_options[ $single_license['basename'] ] ) ) ? $bstwbsftwppdtplgns_options[ $single_license['basename'] ] : ''; ?>
784
+ <table class="form-table">
785
+ <tr>
786
+ <th scope="row"><?php echo $pro_plugin_name . ' License'; ?></th>
787
+ <td>
788
+ <input type="text" maxlength="100" name="bws_license_key_<?php echo $single_license['slug']; ?>" value="<?php echo esc_attr( $license_key ); ?>" />
789
+ <input type="submit" class="button button-secondary" name="bws_license_submit" value="<?php _e( 'Check license key', 'bestwebsoft' ); ?>" />
790
+ <div class="bws_info">
791
+ <?php _e( 'If necessary, you can check if the license key is correct or reenter it in the field below.', 'bestwebsoft' ); ?>
792
+ </div>
793
+ </td>
794
+ </tr>
795
+ </table>
796
  <?php }
797
+ } ?>
798
+ <table class="form-table">
799
+ <tr>
800
+ <th scope="row"><?php _e( 'Manage License Settings', 'bestwebsoft' ); ?></th>
801
+ <td>
802
+ <a class="button button-secondary" href="https://bestwebsoft.com/client-area" target="_blank"><?php _e( 'Login to Client Area', 'bestwebsoft' ); ?></a>
803
+ <div class="bws_info">
804
+ <?php _e( 'Manage active licenses, download BWS products, and view your payment history using BestWebSoft Client Area.', 'bestwebsoft' ); ?>
805
+ </div>
806
+ </td>
807
+ </tr>
808
+ </table>
809
+ <?php }
 
 
 
 
 
 
 
 
 
 
 
 
 
810
 
811
  /**
812
  * Save plugin options to the database
816
  */
817
  private function save_options_license_key() {
818
  global $wp_version, $bstwbsftwppdtplgns_options;
819
+ /*$empty_field_error - added to avoid error when 1 field is empty while another field contains license key*/
820
+ $empty_field_error = '';
821
+ foreach ( $this->licenses as $single_license) {
822
+ $bws_license_key = ( isset( $_POST[ ( ! empty( $single_license['pro_slug'] ) ) ? 'bws_license_key_' . $single_license['pro_slug'] : 'bws_license_key_' . $single_license['slug'] ] ) ) ? stripslashes( sanitize_text_field( $_POST[ ( ! empty( $single_license['pro_slug'] ) ) ? 'bws_license_key_' . $single_license['pro_slug'] : 'bws_license_key_' . $single_license['slug'] ] ) ) : '';
823
+ if ( '' != $bws_license_key ) {
824
+ if ( strlen( $bws_license_key ) != 18 ) {
825
+ $error = __( 'Wrong license key', 'bestwebsoft' );
826
+ } else {
827
 
828
+ /* CHECK license key */
829
+ if ( $this->is_pro && empty( $single_license['pro_basename'] ) ) {
830
+ delete_transient( 'bws_plugins_update' );
831
+ if ( ! $this->all_plugins ) {
832
+ if ( ! function_exists( 'get_plugins' ) ) {
833
+ require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
834
  }
835
+ $this->all_plugins = get_plugins();
836
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
837
  $current = get_site_transient( 'update_plugins' );
838
+
839
+ if ( ! empty( $this->all_plugins ) && ! empty( $current ) && isset( $current->response ) && is_array( $current->response ) ) {
840
  $to_send = array();
841
+ $to_send["plugins"][ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ] = $this->all_plugins[ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ];
842
+ $to_send["plugins"][ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ]["bws_license_key"] = $bws_license_key;
843
+ $to_send["plugins"][ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ]["bws_illegal_client"] = true;
844
+ $options = array(
845
+ 'timeout' => ( ( defined( 'DOING_CRON' ) && DOING_CRON ) ? 30 : 3 ),
846
+ 'body' => array( 'plugins' => serialize( $to_send ) ),
847
+ 'user-agent' => 'WordPress/' . $wp_version . '; ' . get_bloginfo( 'url' )
848
+ );
849
  $raw_response = wp_remote_post( 'http://bestwebsoft.com/wp-content/plugins/paid-products/plugins/update-check/1.0/', $options );
850
 
851
  if ( is_wp_error( $raw_response ) || 200 != wp_remote_retrieve_response_code( $raw_response ) ) {
852
+ $error = __( 'Something went wrong. Please try again later. If the error appears again, please contact us', 'bestwebsoft' ) . ': <a href=https://support.bestwebsoft.com>BestWebSoft</a>. ' . __( 'We are sorry for inconvenience.', 'bestwebsoft' );
853
  } else {
854
  $response = maybe_unserialize( wp_remote_retrieve_body( $raw_response ) );
855
  if ( is_array( $response ) && ! empty( $response ) ) {
856
  foreach ( $response as $single_response ) {
857
  if ( "wrong_license_key" == $single_response->package ) {
858
+ $error = __( 'Wrong license key.', 'bestwebsoft' );
859
+ } else if ( "wrong_domain" == $single_response->package ) {
860
+ $error = __( 'This license key is bound to another site.', 'bestwebsoft' );
861
+ } else if ( "time_out" == $single_response->package ) {
862
+ $message = __( 'This license key is valid, but Your license has expired. If you want to update our plugin in future, you should extend the license.', 'bestwebsoft' );
863
  } elseif ( "you_are_banned" == $single_response->package ) {
864
+ $error = __( "Unfortunately, you have exceeded the number of available tries.", 'bestwebsoft' );
 
 
865
  } elseif ( "duplicate_domen_for_trial" == $single_response->package ) {
866
+ $error = __( "Unfortunately, the Pro Trial licence was already installed to this domain. The Pro Trial license can be installed only once.", 'bestwebsoft' );
867
+ }
868
+ if ( empty( $error ) ) {
869
+ if ( empty( $message ) ) {
870
+ if ( isset( $single_response->trial ) ) {
871
+ $message = __( 'The Pro Trial license key is valid.', 'bestwebsoft' );
872
+ } else {
873
+ $message = __( 'The license key is valid.', 'bestwebsoft' );
874
+ }
875
+
876
+ if ( ! empty( $single_response->time_out ) ) {
877
+ $message .= ' ' . __( 'Your license will expire on', 'bestwebsoft' ) . ' ' . $single_response->time_out . '.';
878
+ }
879
+
880
+ if ( isset( $single_response->trial ) && $this->is_trial ) {
881
+ $message .= ' ' . sprintf( __( 'In order to continue using the plugin it is necessary to buy a %s license.', 'bestwebsoft' ), '<a href="' . esc_url( $this->plugins_info['PluginURI'] . '?k=' . $this->link_key . '&pn=' . $this->link_pn . '&v=' . $this->plugins_info["Version"] . '&wp_v=' . $wp_version ) . '" target="_blank" title="' . $this->plugins_info["Name"] . '">Pro</a>' );
882
+ }
883
+ }
884
+
885
+ if ( isset( $single_response->trial ) ) {
886
+ $bstwbsftwppdtplgns_options['trial'][ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ] = 1;
887
+ } else {
888
+ unset( $bstwbsftwppdtplgns_options['trial'][ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ] );
889
+ }
890
+
891
+ if ( isset( $single_response->nonprofit ) ) {
892
+ $bstwbsftwppdtplgns_options['nonprofit'][ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ] = 1;
893
+ } else {
894
+ unset( $bstwbsftwppdtplgns_options['nonprofit'][ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ] );
895
+ }
896
+
897
+ if ( ! isset( $bstwbsftwppdtplgns_options[ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ] ) || $bstwbsftwppdtplgns_options[ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ] != $bws_license_key ) {
898
+ $bstwbsftwppdtplgns_options[ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ] = $bws_license_key;
899
+
900
+ $file = @fopen( dirname( dirname( __FILE__ ) ) . "/license_key.txt", "w+" );
901
+ if ( $file ) {
902
+ @fwrite( $file, $bws_license_key );
903
+ @fclose( $file );
904
+ }
905
+ $update_option = true;
906
+ }
907
+
908
+ if ( ! isset( $bstwbsftwppdtplgns_options['time_out'][ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ] ) || $bstwbsftwppdtplgns_options['time_out'][ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ] != $single_response->time_out ) {
909
+ $bstwbsftwppdtplgns_options['time_out'][ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ] = $single_response->time_out;
910
+ $update_option = true;
911
+ }
912
+
913
+ if ( isset( $update_option ) ) {
914
+ if ( $this->is_multisite ) {
915
+ update_site_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options );
916
+ } else {
917
+ update_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options );
918
+ }
919
+ }
920
  }
921
  }
922
+ } else {
923
+ $error = __( 'Something went wrong. Please try again later. If the error appears again, please contact us', 'bestwebsoft' ) . ' <a href=https://support.bestwebsoft.com>BestWebSoft</a>. ' . __( 'We are sorry for inconvenience.', 'bestwebsoft' );
924
+ }
925
+ }
926
+ }
927
+ /* Go Pro */
928
+ } else {
929
+
930
+ $bws_license_plugin = stripslashes( sanitize_text_field( $_POST[ ( ! empty( $single_license['pro_slug'] ) ) ? 'bws_license_plugin_' . $single_license['pro_slug'] : 'bws_license_plugin_' . $single_license['slug'] ] ) );
931
+ if ( isset( $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] ) && $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['time'] > ( time() - ( 24 * 60 * 60 ) ) ) {
932
+ $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] = $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] + 1;
933
+ } else {
934
+ $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['count'] = 1;
935
+ $bstwbsftwppdtplgns_options['go_pro'][ $bws_license_plugin ]['time'] = time();
936
+ }
937
+
938
+ /* download Pro */
939
+ if ( ! $this->all_plugins ) {
940
+ if ( ! function_exists( 'get_plugins' ) ) {
941
+ require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
942
+ }
943
+ $this->all_plugins = get_plugins();
944
+ }
945
+
946
+ if ( ! array_key_exists( $bws_license_plugin, $this->all_plugins ) ) {
947
+ $current = get_site_transient( 'update_plugins' );
948
+ if ( ! empty( $current ) && isset( $current->response ) && is_array( $current->response ) ) {
949
+ $to_send = array();
950
+ $to_send["plugins"][ $bws_license_plugin ] = array();
951
+ $to_send["plugins"][ $bws_license_plugin ]["bws_license_key"] = $bws_license_key;
952
+ $to_send["plugins"][ $bws_license_plugin ]["bws_illegal_client"] = true;
953
+ $options = array(
954
+ 'timeout' => ( ( defined( 'DOING_CRON' ) && DOING_CRON ) ? 30 : 3 ),
955
+ 'body' => array( 'plugins' => serialize( $to_send ) ),
956
+ 'user-agent' => 'WordPress/' . $wp_version . '; ' . get_bloginfo( 'url' )
957
+ );
958
+ $raw_response = wp_remote_post( 'http://bestwebsoft.com/wp-content/plugins/paid-products/plugins/update-check/1.0/', $options );
959
+
960
+ if ( is_wp_error( $raw_response ) || 200 != wp_remote_retrieve_response_code( $raw_response ) ) {
961
+ $error = __( "Something went wrong. Please try again later. If the error appears again, please contact us", 'bestwebsoft' ) . ': <a href="https://support.bestwebsoft.com">BestWebSoft</a>. ' . __( "We are sorry for inconvenience.", 'bestwebsoft' );
962
+ } else {
963
+ $response = maybe_unserialize( wp_remote_retrieve_body( $raw_response ) );
964
+ if ( is_array( $response ) && ! empty( $response ) ) {
965
+ foreach ( $response as $single_response ) {
966
+ if ( "wrong_license_key" == $single_response->package ) {
967
+ $error = __( "Wrong license key.", 'bestwebsoft' );
968
+ } elseif ( "wrong_domain" == $single_response->package ) {
969
+ $error = __( "This license key is bound to another site.", 'bestwebsoft' );
970
+ } elseif ( "you_are_banned" == $single_response->package ) {
971
+ $error = __( "Unfortunately, you have exceeded the number of available tries per day. Please, upload the plugin manually.", 'bestwebsoft' );
972
+ } elseif ( "time_out" == $single_response->package ) {
973
+ $error = sprintf( __( "Unfortunately, Your license has expired. To continue getting top-priority support and plugin updates, you should extend it in your %s.", 'bestwebsoft' ), ' <a href="https://bestwebsoft.com/client-area">Client Area</a>' );
974
+ } elseif ( "duplicate_domen_for_trial" == $single_response->package ) {
975
+ $error = __( "Unfortunately, the Pro licence was already installed to this domain. The Pro Trial license can be installed only once.", 'bestwebsoft' );
976
+ }
977
  }
978
+ if ( empty( $error ) ) {
979
+ $bws_license_plugin = ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'];
980
+
981
+ $bstwbsftwppdtplgns_options[ $bws_license_plugin ] = $bws_license_key;
982
+
983
+ $url = 'http://bestwebsoft.com/wp-content/plugins/paid-products/plugins/downloads/?bws_first_download=' . $bws_license_plugin . '&bws_license_key=' . $bws_license_key . '&download_from=5';
984
 
985
+ if ( ! $this->upload_dir ) {
986
+ $this->upload_dir = wp_upload_dir();
987
+ }
988
+
989
+ $zip_name = explode( '/', $bws_license_plugin );
990
+
991
+ if ( ! function_exists( 'curl_init' ) ) {
992
+ $received_content = file_get_contents( $url );
993
+ } else {
994
+ $ch = curl_init();
995
+ curl_setopt( $ch, CURLOPT_URL, $url );
996
+ curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
997
+ $received_content = curl_exec( $ch );
998
+ curl_close( $ch );
999
+ }
1000
+
1001
+ if ( ! $received_content ) {
1002
+ $error = __( "Failed to download the zip archive. Please, upload the plugin manually.", 'bestwebsoft' );
1003
+ } else {
1004
+ if ( is_writable( $this->upload_dir["path"] ) ) {
1005
+ $file_put_contents = $this->upload_dir["path"] . "/" . $zip_name[0] . ".zip";
1006
+ if ( file_put_contents( $file_put_contents, $received_content ) ) {
1007
+ @chmod( $file_put_contents, octdec( 755 ) );
1008
+ if ( class_exists( 'ZipArchive' ) ) {
1009
+ $zip = new ZipArchive();
1010
+ if ( $zip->open( $file_put_contents ) === true ) {
1011
+ $zip->extractTo( WP_PLUGIN_DIR );
1012
+ $zip->close();
1013
+ } else {
1014
+ $error = __( "Failed to open the zip archive. Please, upload the plugin manually.", 'bestwebsoft' );
1015
+ }
1016
+ } elseif ( class_exists( 'Phar' ) ) {
1017
+ $phar = new PharData( $file_put_contents );
1018
+ $phar->extractTo( WP_PLUGIN_DIR );
1019
  } else {
1020
+ $error = __( "Your server does not support either ZipArchive or Phar. Please, upload the plugin manually.", 'bestwebsoft' );
1021
  }
1022
+ @unlink( $file_put_contents );
 
 
1023
  } else {
1024
+ $error = __( "Failed to download the zip archive. Please, upload the plugin manually.", 'bestwebsoft' );
1025
  }
 
1026
  } else {
1027
+ $error = __( "UploadDir is not writable. Please, upload the plugin manually.", 'bestwebsoft' );
1028
  }
 
 
1029
  }
 
1030
 
1031
+ /* activate Pro */
1032
+ if ( file_exists( WP_PLUGIN_DIR . '/' . $zip_name[0] ) ) {
1033
+ if ( $this->is_multisite && is_plugin_active_for_network( ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ) ) {
1034
+ /* if multisite and free plugin is network activated */
1035
+ $active_plugins = get_site_option( 'active_sitewide_plugins' );
1036
+ $active_plugins[ $bws_license_plugin ] = time();
1037
+ update_site_option( 'active_sitewide_plugins', $active_plugins );
1038
+ } else {
1039
+ /* activate on a single blog */
1040
+ $active_plugins = get_option( 'active_plugins' );
1041
+ array_push( $active_plugins, $bws_license_plugin );
1042
+ update_option( 'active_plugins', $active_plugins );
1043
+ }
1044
+ $this->pro_plugin_is_activated = true;
1045
+ } elseif ( empty( $error ) ) {
1046
+ $error = __( "Failed to download the zip archive. Please, upload the plugin manually.", 'bestwebsoft' );
1047
  }
 
 
 
1048
  }
1049
+ } else {
1050
+ $error = __( "Something went wrong. Try again later or upload the plugin manually. We are sorry for inconvenience.", 'bestwebsoft' );
1051
  }
1052
+ }
1053
+ }
1054
+ } else {
1055
+ $bstwbsftwppdtplgns_options[ $bws_license_plugin ] = $bws_license_key;
1056
+ /* activate Pro */
1057
+ if ( ! is_plugin_active( $bws_license_plugin ) ) {
1058
+ if ( $this->is_multisite && is_plugin_active_for_network( ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ) ) {
1059
+ /* if multisite and free plugin is network activated */
1060
+ $network_wide = true;
1061
  } else {
1062
+ /* activate on a single blog */
1063
+ $network_wide = false;
1064
  }
1065
+ activate_plugin( $bws_license_plugin, null, $network_wide );
1066
+ $this->pro_plugin_is_activated = true;
1067
  }
1068
  }
1069
+ /* add 'track_usage' for Pro version */
1070
+ if ( ! empty( $bstwbsftwppdtplgns_options['track_usage'][ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ] ) &&
1071
+ empty( $bstwbsftwppdtplgns_options['track_usage'][ $bws_license_plugin ] ) ) {
1072
+ $bstwbsftwppdtplgns_options['track_usage'][ $bws_license_plugin ] = $bstwbsftwppdtplgns_options['track_usage'][ ( ! empty( $single_license['pro_basename'] ) ) ? $single_license['pro_basename'] : $single_license['basename'] ];
 
 
 
 
 
 
 
 
 
1073
  }
 
 
 
 
 
 
1074
 
1075
+ if ( $this->is_multisite ) {
1076
+ update_site_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options );
1077
+ } else {
1078
+ update_option( 'bstwbsftwppdtplgns_options', $bstwbsftwppdtplgns_options );
1079
+ }
1080
 
1081
+ if ( $this->pro_plugin_is_activated ) {
1082
+ delete_transient( 'bws_plugins_update' );
1083
+ }
1084
+ }
1085
  }
1086
+ } else {
1087
+ $empty_field_error = __( "Please, enter Your license key", 'bestwebsoft' );
1088
  }
 
 
1089
  }
1090
+ return compact( 'error', 'message', 'empty_field_error' );
1091
  }
1092
 
1093
  /**
1107
  echo '</a></div>';
1108
  }
1109
 
1110
+ public function bws_pro_block_links() {
1111
  global $wp_version; ?>
1112
+ <div class="bws_pro_version_tooltip">
1113
+ <a class="bws_button" href="<?php echo esc_url( $this->plugins_info['PluginURI'] ); ?>?k=<?php echo $this->link_key; ?>&amp;pn=<?php echo $this->link_pn; ?>&amp;v=<?php echo $this->plugins_info["Version"]; ?>&amp;wp_v=<?php echo $wp_version; ?>" target="_blank" title="<?php echo $this->plugins_info["Name"]; ?>"><?php _e( 'Upgrade to Pro', 'bestwebsoft' ); ?></a>
1114
  <?php if ( $this->trial_days !== false ) { ?>
1115
+ <span class="bws_trial_info">
1116
+ <?php _e( 'or', 'bestwebsoft' ); ?>
1117
+ <a href="<?php echo esc_url( $this->plugins_info['PluginURI'] . '?k=' . $this->link_key . '&pn=' . $this->link_pn . '&v=' . $this->plugins_info["Version"] . '&wp_v=' . $wp_version ); ?>" target="_blank" title="<?php echo $this->plugins_info["Name"]; ?>"><?php _e( 'Start Your Free Trial', 'bestwebsoft' ); ?></a>
1118
  </span>
1119
  <?php } ?>
1120
+ <div class="clear"></div>
1121
+ </div>
1122
  <?php }
1123
 
1124
  /**
bws_menu/js/bws_menu.js CHANGED
@@ -43,4 +43,4 @@
43
  });
44
 
45
  });
46
- })(jQuery);
43
  });
44
 
45
  });
46
+ })(jQuery);
bws_menu/languages/bestwebsoft-cs_CZ.mo CHANGED
Binary file
bws_menu/languages/bestwebsoft-cs_CZ.po CHANGED
@@ -2,8 +2,8 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: bestwebsoft\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2017-09-11 16:42+0300\n"
6
- "PO-Revision-Date: 2017-09-11 16:42+0300\n"
7
  "Last-Translator: Mik013\n"
8
  "Language-Team: Mik013\n"
9
  "Language: cs_CZ\n"
@@ -43,7 +43,7 @@ msgstr "Líbí se vám plugin?"
43
  #: bws_functions.php:93
44
  #, php-format
45
  msgid "%s reviews"
46
- msgstr ""
47
 
48
  #: bws_functions.php:94
49
  msgid "Rate it"
@@ -51,9 +51,9 @@ msgstr "Ohodnoťte jej"
51
 
52
  #: bws_functions.php:103
53
  msgid "Need help?"
54
- msgstr "Potřebujete pomoc?"
55
 
56
- #: bws_functions.php:104 bws_functions.php:917 class-bws-settings.php:1058
57
  msgid "Visit Help Center"
58
  msgstr "Navštivte Centrum pomoci"
59
 
@@ -130,7 +130,7 @@ msgstr ""
130
  #: bws_functions.php:208
131
  #, php-format
132
  msgid "Thank you for installing %s plugin!"
133
- msgstr "Děkujeme vám za instalaci %s pluginu!"
134
 
135
  #: bws_functions.php:210
136
  msgid "Let's get started"
@@ -205,7 +205,7 @@ msgstr ""
205
  #: bws_functions.php:482
206
  #, php-format
207
  msgid "Thank you for choosing %s plugin!"
208
- msgstr "Děkujeme, že jste si vybrali %s plugin!"
209
 
210
  #: bws_functions.php:483
211
  msgid ""
@@ -243,20 +243,20 @@ msgstr ""
243
 
244
  #: bws_functions.php:653
245
  msgid "Add BWS Shortcode"
246
- msgstr "Přidávejte zkrácený kód BWS"
247
 
248
  #: bws_functions.php:654
249
  msgid "Add BWS Plugins Shortcode"
250
- msgstr "Přidávejte zkrácený kód BWS pluginů"
251
 
252
  #: bws_functions.php:673
253
  msgid "Add shortcode"
254
- msgstr "Přidat krátký kód"
255
 
256
  #: bws_functions.php:673
257
  msgid "Add BestWebSoft plugins' shortcodes using this button."
258
  msgstr ""
259
- "Pomocí tohoto tlačítka můžete přidávat krátké kódy BestWebSoft pluginu."
260
 
261
  #: bws_functions.php:729
262
  msgid "Close"
@@ -280,29 +280,30 @@ msgstr "Plugin"
280
 
281
  #: bws_functions.php:876
282
  msgid "Shortcode settings"
283
- msgstr "Nastavení krátkých kódů"
284
 
285
  #: bws_functions.php:881
286
  msgid "The shortcode will be inserted"
287
- msgstr "Bude vložen krátký kód"
288
 
289
- #: bws_functions.php:922
290
  msgid "FAQ"
291
- msgstr "Často kladené otázky (FAQ)"
 
292
 
293
- #: bws_functions.php:928
294
  msgid "For more information:"
295
  msgstr "Pro více informací:"
296
 
297
- #: bws_functions.php:929
298
  msgid "Documentation"
299
  msgstr "Dokumentace"
300
 
301
- #: bws_functions.php:930
302
  msgid "Video Instructions"
303
  msgstr "Video instrukce"
304
 
305
- #: bws_functions.php:931
306
  msgid "Submit a Request"
307
  msgstr "Odeslat požadavek"
308
 
@@ -374,7 +375,7 @@ msgstr "Vaše licence vyprší"
374
 
375
  #: bws_menu.php:146
376
  msgid "Congratulations! Pro Membership license is activated successfully."
377
- msgstr ""
378
 
379
  #: bws_menu.php:153 class-bws-settings.php:1007 deprecated.php:436
380
  msgid ""
@@ -449,7 +450,7 @@ msgstr "Aktivovat šablonu"
449
  #: bws_menu.php:203 bws_menu.php:248 bws_menu.php:251
450
  #, php-format
451
  msgid "by %s"
452
- msgstr "podle %s"
453
 
454
  #: bws_menu.php:207
455
  msgid "Server Environment"
@@ -538,7 +539,7 @@ msgstr "Prosím vložte platnou e-mailovou adresu."
538
  #: bws_menu.php:262
539
  #, php-format
540
  msgid "Email with system info is sent to %s."
541
- msgstr ""
542
 
543
  #: bws_menu.php:266
544
  msgid "Thank you for contacting us."
@@ -575,7 +576,7 @@ msgstr "Získejte přístup k %s+ Premiovým pluginům"
575
 
576
  #: bws_menu.php:326
577
  msgid "Subscribe to Pro Membership"
578
- msgstr "Přihlásit se k Pro členství"
579
 
580
  #: bws_menu.php:334 bws_menu.php:345 class-bws-settings.php:760
581
  #: deprecated.php:227
@@ -735,7 +736,7 @@ msgstr "Již instalováno"
735
 
736
  #: bws_menu.php:645
737
  msgid "Browse More WordPress Themes"
738
- msgstr ""
739
 
740
  #: bws_menu.php:654
741
  msgid "Send to support"
@@ -901,7 +902,7 @@ msgstr "Gratulujeme! PRO licence byla úspěšně aktivována."
901
  #: class-bws-settings.php:726
902
  #, php-format
903
  msgid "You will be automatically redirected to the %s in %s seconds."
904
- msgstr "Za %s sekund budete automaticky přesměrováni na %s."
905
 
906
  #: class-bws-settings.php:726
907
  msgid "Settings page"
@@ -911,7 +912,8 @@ msgstr "Stránka nastavení"
911
  #, php-format
912
  msgid "Enter your license key to activate %s and get premium plugin features."
913
  msgstr ""
914
- "Vložte váš licenční klíč pro aktivaci %s a získání prémiových fukcí pluginu."
 
915
 
916
  #: class-bws-settings.php:744 class-bws-settings.php:931 deprecated.php:363
917
  #: deprecated.php:706
@@ -925,7 +927,7 @@ msgstr ""
925
  #: class-bws-settings.php:747 deprecated.php:697
926
  #, php-format
927
  msgid "Start Your Free %s-Day Trial Now"
928
- msgstr "Vyzkoušejte vaší %s-denní zkušební verzi zdarma nyní"
929
 
930
  #: class-bws-settings.php:762
931
  msgid ""
@@ -993,25 +995,29 @@ msgid ""
993
  "Unfortunately, Your license has expired. To continue getting top-priority "
994
  "support and plugin updates, you should extend it in your %s."
995
  msgstr ""
 
 
996
 
997
  #: class-bws-settings.php:959 class-bws-settings.php:981
998
  #: class-bws-settings.php:1003
999
  msgid "Failed to download the zip archive. Please, upload the plugin manually."
1000
- msgstr ""
1001
 
1002
  #: class-bws-settings.php:971
1003
  msgid "Failed to open the zip archive. Please, upload the plugin manually."
1004
- msgstr ""
1005
 
1006
  #: class-bws-settings.php:977
1007
  msgid ""
1008
  "Your server does not support either ZipArchive or Phar. Please, upload the "
1009
  "plugin manually."
1010
  msgstr ""
 
 
1011
 
1012
  #: class-bws-settings.php:984
1013
  msgid "UploadDir is not writable. Please, upload the plugin manually."
1014
- msgstr ""
1015
 
1016
  #: class-bws-settings.php:1042 deprecated.php:464
1017
  msgid "Please, enter Your license key"
@@ -1019,7 +1025,7 @@ msgstr "Prosím, vložte váš licenční klíč"
1019
 
1020
  #: class-bws-settings.php:1054
1021
  msgid "Need Help?"
1022
- msgstr "Potřebujete pomoc?"
1023
 
1024
  #: class-bws-settings.php:1056
1025
  msgid "Read the Instruction"
@@ -1061,7 +1067,7 @@ msgstr "Co jste očekávali?"
1061
 
1062
  #: deactivation-form.php:44
1063
  msgid "The plugin suddenly stopped working"
1064
- msgstr "Plugin náhle přestal pracovat"
1065
 
1066
  #: deactivation-form.php:51
1067
  msgid "The plugin broke my site"
@@ -1094,7 +1100,7 @@ msgstr "Nadále již tento plugin nepotřebuji"
1094
 
1095
  #: deactivation-form.php:83
1096
  msgid "It's a temporary deactivation, I'm just debugging an issue"
1097
- msgstr "Jedná se o dočasnou deaktivaci, pouze jsem ladím problém"
1098
 
1099
  #: deactivation-form.php:89
1100
  msgid "Other"
@@ -1110,7 +1116,7 @@ msgstr "Máte-li chvilku, sdělte nám důvod, proč deaktivujete tento plugin"
1110
 
1111
  #: deactivation-form.php:127
1112
  msgid "Send website data and allow to contact me back"
1113
- msgstr ""
1114
 
1115
  #: deactivation-form.php:132
1116
  msgid "Cancel"
@@ -1177,7 +1183,7 @@ msgstr "Gratulujeme! PRO licence pluginu je úspěšně aktivována."
1177
 
1178
  #: deprecated.php:281 deprecated.php:672
1179
  msgid "Please, go to"
1180
- msgstr "Prosím, jděte na"
1181
 
1182
  #: deprecated.php:281 deprecated.php:672
1183
  msgid "the setting page"
@@ -1272,7 +1278,7 @@ msgstr "SMM"
1272
 
1273
  #: product_list.php:22
1274
  msgid "Best secure captcha plugin to protect your WordPress forms."
1275
- msgstr ""
1276
 
1277
  #: product_list.php:32
1278
  msgid "Create your personal car rental/booking and reservation website."
@@ -1596,7 +1602,7 @@ msgid ""
1596
  "Add Twitter Follow, Tweet, Hashtag, and Mention buttons to WordPress posts "
1597
  "and pages."
1598
  msgstr ""
1599
- "Přidávejte Twitter tlačítka sledovat, twítnout a zmínit do WordPress "
1600
  "příspěvků a stránek."
1601
 
1602
  #: product_list.php:427
@@ -1630,73 +1636,3 @@ msgid ""
1630
  msgstr ""
1631
  "Automaticky zálohujte a exportujte obsah centra nápovědy Zendesk do databáze "
1632
  "vašeho WordPress webu."
1633
-
1634
- #~ msgid "Anonymous feedback"
1635
- #~ msgstr "Anonymní zpětná vazba"
1636
-
1637
- #~ msgid ""
1638
- #~ "Protect WordPress website forms from spam entries by means of math logic."
1639
- #~ msgstr ""
1640
- #~ "Chraňte WordPress webové formuláře před spamem pomocí matematické logiky."
1641
-
1642
- #~ msgid "Congratulations! Pro Membership license is activated successfully."
1643
- #~ msgstr "Gratulujeme! PRO členství bylo úspěšně aktivováno."
1644
-
1645
- #~ msgid "Email with system info is sent to"
1646
- #~ msgstr "E-mail se systémovým nastavením byl odeslán na"
1647
-
1648
- #~ msgid "Browse Free WordPress Themes"
1649
- #~ msgstr "Procházet WordPress šablony zdarma"
1650
-
1651
- #~ msgid ""
1652
- #~ "You can use one license of the Pro plugin for one domain only. Please "
1653
- #~ "check and edit your license or domain if necessary using you personal "
1654
- #~ "Client Area. We strongly recommend you to solve the problem within 24 "
1655
- #~ "hours, otherwise the Pro plugin will be deactivated."
1656
- #~ msgstr ""
1657
- #~ "Pro licenci pluginu můžete používat pouze pro jednu doménu. Prosím "
1658
- #~ "zkontrolujte a případně upravte Váš licenční klíč na vaší osobní stránce "
1659
- #~ "- Klientské zóně. Důrazně doporučujeme, aby jste tento problém odstranili "
1660
- #~ "během 24 hodin, jinak bude Pro plugin deaktivován."
1661
-
1662
- #~ msgid "Insert"
1663
- #~ msgstr "Vložit"
1664
-
1665
- #~ msgid ""
1666
- #~ "Automatically add outgoing email messages to queue instead of sending "
1667
- #~ "them immediately."
1668
- #~ msgstr ""
1669
- #~ "Automaticky přidávejte odchozí e-mailové zprávy do fronty namísto jejich "
1670
- #~ "okamžitého odesílání."
1671
-
1672
- #~ msgid ""
1673
- #~ "Add unlimited gallery categories. Organize images to make the navigation "
1674
- #~ "through content easier."
1675
- #~ msgstr ""
1676
- #~ "Přidávejte neomezený počet kategorií galerie. Organizujte obrázky pro "
1677
- #~ "jednodušší orientaci v obsahu."
1678
-
1679
- #~ msgid ""
1680
- #~ "Attach, un-attach and re-attach media files quickly to WordPress posts "
1681
- #~ "and pages."
1682
- #~ msgstr ""
1683
- #~ "Připojujte, odpojujte a znovu připojujte mediální soubory do WordPress "
1684
- #~ "příspěvků a stránek."
1685
-
1686
- #~ msgid "Advertisement"
1687
- #~ msgstr "Reklama"
1688
-
1689
- #~ msgid "Content & Media"
1690
- #~ msgstr "Obsah & Média"
1691
-
1692
- #~ msgid "Management"
1693
- #~ msgstr "Správa"
1694
-
1695
- #~ msgid "Site Stats"
1696
- #~ msgstr "Statistiky webu"
1697
-
1698
- #~ msgid "Social"
1699
- #~ msgstr "Sociální"
1700
-
1701
- #~ msgid "Utilities"
1702
- #~ msgstr "Utility"
2
  msgstr ""
3
  "Project-Id-Version: bestwebsoft\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2018-03-02 10:14+0200\n"
6
+ "PO-Revision-Date: 2018-03-02 10:15+0200\n"
7
  "Last-Translator: Mik013\n"
8
  "Language-Team: Mik013\n"
9
  "Language: cs_CZ\n"
43
  #: bws_functions.php:93
44
  #, php-format
45
  msgid "%s reviews"
46
+ msgstr "%s hodnocení"
47
 
48
  #: bws_functions.php:94
49
  msgid "Rate it"
51
 
52
  #: bws_functions.php:103
53
  msgid "Need help?"
54
+ msgstr "Potřebujete pomoci?"
55
 
56
+ #: bws_functions.php:104 bws_functions.php:919 class-bws-settings.php:1058
57
  msgid "Visit Help Center"
58
  msgstr "Navštivte Centrum pomoci"
59
 
130
  #: bws_functions.php:208
131
  #, php-format
132
  msgid "Thank you for installing %s plugin!"
133
+ msgstr "Děkujeme vám za instalaci pluginu %s!"
134
 
135
  #: bws_functions.php:210
136
  msgid "Let's get started"
205
  #: bws_functions.php:482
206
  #, php-format
207
  msgid "Thank you for choosing %s plugin!"
208
+ msgstr "Děkujeme, že jste si vybrali plugin %s!"
209
 
210
  #: bws_functions.php:483
211
  msgid ""
243
 
244
  #: bws_functions.php:653
245
  msgid "Add BWS Shortcode"
246
+ msgstr "Přidat zkrácený kód BWS"
247
 
248
  #: bws_functions.php:654
249
  msgid "Add BWS Plugins Shortcode"
250
+ msgstr "Přidat zkrácený kód BWS pluginu"
251
 
252
  #: bws_functions.php:673
253
  msgid "Add shortcode"
254
+ msgstr "Přidat zkrácený kód"
255
 
256
  #: bws_functions.php:673
257
  msgid "Add BestWebSoft plugins' shortcodes using this button."
258
  msgstr ""
259
+ "Pomocí tohoto tlačítka můžete přidávat zkrácené kódy BestWebSoft pluginů."
260
 
261
  #: bws_functions.php:729
262
  msgid "Close"
280
 
281
  #: bws_functions.php:876
282
  msgid "Shortcode settings"
283
+ msgstr "Nastavení zkrácených kódů"
284
 
285
  #: bws_functions.php:881
286
  msgid "The shortcode will be inserted"
287
+ msgstr "Bude vložen zkrácený kód"
288
 
289
+ #: bws_functions.php:924
290
  msgid "FAQ"
291
+ msgstr ""
292
+ "Časté dotazy <acronym title=\"Frequently asked questions\">(FAQ)</acronym>"
293
 
294
+ #: bws_functions.php:930
295
  msgid "For more information:"
296
  msgstr "Pro více informací:"
297
 
298
+ #: bws_functions.php:931
299
  msgid "Documentation"
300
  msgstr "Dokumentace"
301
 
302
+ #: bws_functions.php:932
303
  msgid "Video Instructions"
304
  msgstr "Video instrukce"
305
 
306
+ #: bws_functions.php:933
307
  msgid "Submit a Request"
308
  msgstr "Odeslat požadavek"
309
 
375
 
376
  #: bws_menu.php:146
377
  msgid "Congratulations! Pro Membership license is activated successfully."
378
+ msgstr "Gratulujeme! PRO členství bylo úspěšně aktivováno."
379
 
380
  #: bws_menu.php:153 class-bws-settings.php:1007 deprecated.php:436
381
  msgid ""
450
  #: bws_menu.php:203 bws_menu.php:248 bws_menu.php:251
451
  #, php-format
452
  msgid "by %s"
453
+ msgstr "od %s"
454
 
455
  #: bws_menu.php:207
456
  msgid "Server Environment"
539
  #: bws_menu.php:262
540
  #, php-format
541
  msgid "Email with system info is sent to %s."
542
+ msgstr "E-mail s informacemi o systému byl odeslán na %s."
543
 
544
  #: bws_menu.php:266
545
  msgid "Thank you for contacting us."
576
 
577
  #: bws_menu.php:326
578
  msgid "Subscribe to Pro Membership"
579
+ msgstr "Přihlaste se k PRO členství"
580
 
581
  #: bws_menu.php:334 bws_menu.php:345 class-bws-settings.php:760
582
  #: deprecated.php:227
736
 
737
  #: bws_menu.php:645
738
  msgid "Browse More WordPress Themes"
739
+ msgstr "Procházet další WordPress šablony"
740
 
741
  #: bws_menu.php:654
742
  msgid "Send to support"
902
  #: class-bws-settings.php:726
903
  #, php-format
904
  msgid "You will be automatically redirected to the %s in %s seconds."
905
+ msgstr "Budete automaticky přesměrováni na %s za %s sekund."
906
 
907
  #: class-bws-settings.php:726
908
  msgid "Settings page"
912
  #, php-format
913
  msgid "Enter your license key to activate %s and get premium plugin features."
914
  msgstr ""
915
+ "Vložte váš licenční klíč pro aktivaci %s a získejte tak prémiové fukcе "
916
+ "pluginu."
917
 
918
  #: class-bws-settings.php:744 class-bws-settings.php:931 deprecated.php:363
919
  #: deprecated.php:706
927
  #: class-bws-settings.php:747 deprecated.php:697
928
  #, php-format
929
  msgid "Start Your Free %s-Day Trial Now"
930
+ msgstr "Vyzkoušejte %s-denní zkušební verzi zdarma nyní"
931
 
932
  #: class-bws-settings.php:762
933
  msgid ""
995
  "Unfortunately, Your license has expired. To continue getting top-priority "
996
  "support and plugin updates, you should extend it in your %s."
997
  msgstr ""
998
+ "Bohužel, Vaše licence vypršela. Chcete-li mít nadále přístup k top-prioritní "
999
+ "podpoře a aktualizacím pluginu měli byste ji prodloužit ve vašem %s."
1000
 
1001
  #: class-bws-settings.php:959 class-bws-settings.php:981
1002
  #: class-bws-settings.php:1003
1003
  msgid "Failed to download the zip archive. Please, upload the plugin manually."
1004
+ msgstr "Stažení zip archivu selhalo. Nahrajte prosím plugin ručně."
1005
 
1006
  #: class-bws-settings.php:971
1007
  msgid "Failed to open the zip archive. Please, upload the plugin manually."
1008
+ msgstr "Otevření zip archivu selhalo. Nahrajte prosím plugin ručně."
1009
 
1010
  #: class-bws-settings.php:977
1011
  msgid ""
1012
  "Your server does not support either ZipArchive or Phar. Please, upload the "
1013
  "plugin manually."
1014
  msgstr ""
1015
+ "Váš server nepodporuje buď ZipArchive nebo Phar. Prosím, nahrajte plugin "
1016
+ "ručně."
1017
 
1018
  #: class-bws-settings.php:984
1019
  msgid "UploadDir is not writable. Please, upload the plugin manually."
1020
+ msgstr "Nelze zapisovat do UploadDir. Prosím, nahrajte plugin ručně."
1021
 
1022
  #: class-bws-settings.php:1042 deprecated.php:464
1023
  msgid "Please, enter Your license key"
1025
 
1026
  #: class-bws-settings.php:1054
1027
  msgid "Need Help?"
1028
+ msgstr "Potřebujete pomoci?"
1029
 
1030
  #: class-bws-settings.php:1056
1031
  msgid "Read the Instruction"
1067
 
1068
  #: deactivation-form.php:44
1069
  msgid "The plugin suddenly stopped working"
1070
+ msgstr "Plugin přestal náhle pracovat"
1071
 
1072
  #: deactivation-form.php:51
1073
  msgid "The plugin broke my site"
1100
 
1101
  #: deactivation-form.php:83
1102
  msgid "It's a temporary deactivation, I'm just debugging an issue"
1103
+ msgstr "Jedná se o dočasnou deaktivaci, pouze ladím problém"
1104
 
1105
  #: deactivation-form.php:89
1106
  msgid "Other"
1116
 
1117
  #: deactivation-form.php:127
1118
  msgid "Send website data and allow to contact me back"
1119
+ msgstr "Odeslat data webu a umožnit zpětně mě kontaktovat"
1120
 
1121
  #: deactivation-form.php:132
1122
  msgid "Cancel"
1183
 
1184
  #: deprecated.php:281 deprecated.php:672
1185
  msgid "Please, go to"
1186
+ msgstr "Prosím, přejděte na"
1187
 
1188
  #: deprecated.php:281 deprecated.php:672
1189
  msgid "the setting page"
1278
 
1279
  #: product_list.php:22
1280
  msgid "Best secure captcha plugin to protect your WordPress forms."
1281
+ msgstr "Nejbezpečnější captcha plugin k ochraně WordPress formulářů."
1282
 
1283
  #: product_list.php:32
1284
  msgid "Create your personal car rental/booking and reservation website."
1602
  "Add Twitter Follow, Tweet, Hashtag, and Mention buttons to WordPress posts "
1603
  "and pages."
1604
  msgstr ""
1605
+ "Přidávejte Twitter tlačítka Sledovat, Tweetnout a Zmínit do WordPress "
1606
  "příspěvků a stránek."
1607
 
1608
  #: product_list.php:427
1636
  msgstr ""
1637
  "Automaticky zálohujte a exportujte obsah centra nápovědy Zendesk do databáze "
1638
  "vašeho WordPress webu."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
bws_menu/languages/bestwebsoft-fr_FR.mo CHANGED
Binary file
bws_menu/languages/bestwebsoft-fr_FR.po CHANGED
@@ -2,15 +2,15 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: bestwebsoft\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2017-09-11 16:42+0300\n"
6
- "PO-Revision-Date: 2017-09-11 16:42+0300\n"
7
  "Last-Translator: Luc Capronnier <lcapronnier@yahoo.com>\n"
8
  "Language-Team: Luc Capronnier <lcapronnier@yahoo.com>\n"
9
- "Language: fr_FR\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
- "X-Poedit-KeywordsList: __;_e;esc_attr_e\n"
 
14
  "X-Poedit-Basepath: ..\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "Plural-Forms: nplurals=2;plural=n>2;\n"
@@ -22,12 +22,8 @@ msgid "requires"
22
  msgstr "obligatoire"
23
 
24
  #: bws_functions.php:75
25
- msgid ""
26
- "or higher, that is why it has been deactivated! Please upgrade WordPress and "
27
- "try again."
28
- msgstr ""
29
- "ou supérieure, c'est pourquoi il a été désactivé! Merci de faire la mise à "
30
- "jour de WordPress puis de ré-essayer."
31
 
32
  #: bws_functions.php:76
33
  msgid "Back to the WordPress"
@@ -39,12 +35,12 @@ msgstr "Page des extensions"
39
 
40
  #: bws_functions.php:92
41
  msgid "Like the plugin?"
42
- msgstr "Voter pour l'extension"
43
 
44
  #: bws_functions.php:93
45
  #, php-format
46
  msgid "%s reviews"
47
- msgstr ""
48
 
49
  #: bws_functions.php:94
50
  msgid "Rate it"
@@ -52,15 +48,15 @@ msgstr "Notez là"
52
 
53
  #: bws_functions.php:103
54
  msgid "Need help?"
55
- msgstr "Besoin d'aide ?"
56
 
57
- #: bws_functions.php:104 bws_functions.php:917 class-bws-settings.php:1058
58
  msgid "Visit Help Center"
59
  msgstr "Visiter le site du support"
60
 
61
  #: bws_functions.php:107
62
  msgid "Want to support the plugin?"
63
- msgstr "Voter pour l'extension"
64
 
65
  #: bws_functions.php:108 bws_menu.php:560
66
  msgid "Donate"
@@ -68,15 +64,11 @@ msgstr "Don"
68
 
69
  #: bws_functions.php:128
70
  msgid "WARNING: Illegal use notification"
71
- msgstr "AVERTISSEMENT : Notification d'utilisation abusive"
72
 
73
  #: bws_functions.php:128
74
- msgid ""
75
- "You can use one license of the Pro plugin for one domain only. Please check "
76
- "and edit your license or domain if necessary using your personal Client "
77
- "Area. We strongly recommend you to solve the problem within 24 hours, "
78
- "otherwise the Pro plugin will be deactivated."
79
- msgstr ""
80
 
81
  #: bws_functions.php:128 bws_functions.php:341 bws_menu.php:631
82
  #: class-bws-settings.php:144
@@ -84,20 +76,12 @@ msgid "Learn More"
84
  msgstr "En savoir plus"
85
 
86
  #: bws_functions.php:145
87
- msgid ""
88
- "Notice: Your Pro Trial license has expired. To continue using the plugin, "
89
- "you should buy a Pro license"
90
- msgstr ""
91
- "Information&nbsp;:Votre licence d'évaluation est terminée. Pour continuer à "
92
- "utiliser cette extension, vous devez acheter une licence PRO."
93
 
94
  #: bws_functions.php:147
95
- msgid ""
96
- "Your license has expired. To continue getting top-priority support and "
97
- "plugin updates, you should extend it."
98
- msgstr ""
99
- "Votre licence est terminée. Pour continuer à disposer du support rapide et "
100
- "des mises à jour de l'extension vous devez la renouveler."
101
 
102
  #: bws_functions.php:147 bws_functions.php:389 deprecated.php:586
103
  msgid "Learn more"
@@ -106,29 +90,24 @@ msgstr "En savoir plus"
106
  #: bws_functions.php:165
107
  #, php-format
108
  msgid "Notice: You are using the Pro Trial license of %s plugin."
109
- msgstr ""
110
- "Avertissement : vous utilisez la version d'évaluation de l'extension %s."
111
 
112
  #: bws_functions.php:167
113
  msgid "Notice: You are using the Pro Trial license of plugin."
114
- msgstr "Avertissement : vous utilisez la version d'évaluation de l'extension."
115
 
116
  #: bws_functions.php:170
117
  msgid "The Pro Trial license will expire on"
118
- msgstr "La licence PRO d'évaluation expirera le"
119
 
120
  #: bws_functions.php:193
121
- msgid ""
122
- "or higher! We do not guarantee that our plugin will work correctly. Please "
123
- "upgrade to WordPress latest version."
124
- msgstr ""
125
- "ou plus ! Nous ne garantissons pas que notre extension fonctionne "
126
- "correctement. Merci de mettre à jour Wordpress avec la dernière version."
127
 
128
  #: bws_functions.php:208
129
  #, php-format
130
  msgid "Thank you for installing %s plugin!"
131
- msgstr ""
132
 
133
  #: bws_functions.php:210
134
  msgid "Let's get started"
@@ -137,7 +116,7 @@ msgstr "Démarrer"
137
  #: bws_functions.php:211 bws_functions.php:244 bws_menu.php:564
138
  #: bws_menu.php:566
139
  msgid "Settings"
140
- msgstr "Réglages"
141
 
142
  #: bws_functions.php:213 bws_menu.php:326 class-bws-settings.php:747
143
  #: class-bws-settings.php:1060 class-bws-settings.php:1070 deprecated.php:697
@@ -151,11 +130,11 @@ msgstr "Ajouter"
151
  #: bws_functions.php:218 bws_functions.php:228 bws_functions.php:332
152
  #: bws_functions.php:385 bws_functions.php:487
153
  msgid "Close notice"
154
- msgstr "Effacer l'avertissement"
155
 
156
  #: bws_functions.php:233
157
  msgid "Thank you for installing plugins by BestWebSoft!"
158
- msgstr "Merci d'avoir installé des extensions de BestWebSoft!"
159
 
160
  #: bws_functions.php:235
161
  msgid "More Details"
@@ -170,15 +149,12 @@ msgid "Deprecated function(-s) is used on the site here:"
170
  msgstr "Une ou des fonction(s) obsolètes sont utilisées sur ce site ici&nbsp;:"
171
 
172
  #: bws_functions.php:278
173
- msgid ""
174
- "This function(-s) will be removed over time. Please update the product(-s)."
175
- msgstr ""
176
- "Ces fonctions seront supprimées rapidement. Merci de mettre à jour vos "
177
- "produits."
178
 
179
  #: bws_functions.php:337
180
  msgid "It’s time to upgrade your"
181
- msgstr "C'est le moment de mettre à jour votre "
182
 
183
  #: bws_functions.php:337
184
  msgid "to"
@@ -186,35 +162,25 @@ msgstr "à"
186
 
187
  #: bws_functions.php:337
188
  msgid "version!"
189
- msgstr "version"
190
 
191
  #: bws_functions.php:338
192
  msgid "Extend standard plugin functionality with new great options."
193
- msgstr ""
194
- "Étend les fonctionnalités classiques de l'extension avec des nouvelles "
195
- "options."
196
 
197
  #: bws_functions.php:389
198
  #, php-format
199
- msgid ""
200
- "Your license key for %s expires on %s and you won't be granted TOP-PRIORITY "
201
- "SUPPORT or UPDATES."
202
- msgstr ""
203
- "Votre clé de licence pour %s est terminée le %s et vous ne disposerez plus "
204
- "du support rapide et des mises à jour."
205
 
206
  #: bws_functions.php:482
207
  #, php-format
208
  msgid "Thank you for choosing %s plugin!"
209
- msgstr ""
210
 
211
  #: bws_functions.php:483
212
- msgid ""
213
- "If you have a feature, suggestion or idea you'd like to see in the plugin, "
214
- "we'd love to hear about it!"
215
- msgstr ""
216
- "Si vous avez une fonctionnalité, une suggestion ou une idée que vous "
217
- "souhaitez pour cette extension, nous serons ravis d'en parler avec vous !"
218
 
219
  #: bws_functions.php:484
220
  msgid "Suggest a Feature"
@@ -227,7 +193,7 @@ msgstr "Avertissement"
227
 
228
  #: bws_functions.php:500
229
  msgid "The plugin's settings have been changed."
230
- msgstr "Les paramètres de l'extension ont été modifiés."
231
 
232
  #: bws_functions.php:501 class-bws-settings.php:183 class-bws-settings.php:203
233
  #: deprecated.php:642
@@ -235,20 +201,8 @@ msgid "Save Changes"
235
  msgstr "Enregistrer les modifications"
236
 
237
  #: bws_functions.php:515
238
- msgid ""
239
- "You can always look at premium options by checking the \"Pro Options\" in "
240
- "the \"Misc\" tab."
241
- msgstr ""
242
- "Vous pouvez toujours consulter les options premium en cliquant sur le lien "
243
- "\"Voir les fonctionnalités de la version PRO\" dans l'onglet divers."
244
-
245
- #: bws_functions.php:653
246
- msgid "Add BWS Shortcode"
247
- msgstr ""
248
-
249
- #: bws_functions.php:654
250
- msgid "Add BWS Plugins Shortcode"
251
- msgstr "Ajouter le code court de l'extension BWS"
252
 
253
  #: bws_functions.php:673
254
  msgid "Add shortcode"
@@ -264,7 +218,7 @@ msgstr "Fermer"
264
 
265
  #: bws_functions.php:821
266
  msgid "Are you sure you want to restore default settings?"
267
- msgstr "Êtes vous sûr de vouloir remettre toutes les valeurs par défaut ?"
268
 
269
  #: bws_functions.php:824
270
  msgid "Yes, restore all settings"
@@ -286,23 +240,23 @@ msgstr "Paramètres du code court"
286
  msgid "The shortcode will be inserted"
287
  msgstr "Le code court sera inséré"
288
 
289
- #: bws_functions.php:922
290
  msgid "FAQ"
291
  msgstr "FAQ"
292
 
293
- #: bws_functions.php:928
294
  msgid "For more information:"
295
- msgstr "Pour plus d'informations&nbsp;:"
296
 
297
- #: bws_functions.php:929
298
  msgid "Documentation"
299
  msgstr "Documentation"
300
 
301
- #: bws_functions.php:930
302
  msgid "Video Instructions"
303
  msgstr "Vidéo explicative"
304
 
305
- #: bws_functions.php:931
306
  msgid "Submit a Request"
307
  msgstr "Soumettre une requête"
308
 
@@ -313,13 +267,8 @@ msgstr "Clé de licence incorrecte"
313
  #: bws_menu.php:122 class-bws-settings.php:818 class-bws-settings.php:885
314
  #: class-bws-settings.php:921 deprecated.php:133 deprecated.php:199
315
  #: deprecated.php:353
316
- msgid ""
317
- "Something went wrong. Please try again later. If the error appears again, "
318
- "please contact us"
319
- msgstr ""
320
- "Il est survenu une erreur. Essayer de nouveau. Si l'erreur se produit de "
321
- "nouveau, merci de contacter <a href=http://support.bestwebsoft."
322
- "com>BestWebSoft</a>. Nous sommes désolés pour le désagrément."
323
 
324
  #: bws_menu.php:122 class-bws-settings.php:818 class-bws-settings.php:885
325
  #: class-bws-settings.php:921 deprecated.php:133 deprecated.php:199
@@ -333,12 +282,8 @@ msgid "Wrong license key."
333
  msgstr "Clé de licence incorrecte."
334
 
335
  #: bws_menu.php:130
336
- msgid ""
337
- "This license key is bound to another site. Change it via personal Client "
338
- "Area."
339
- msgstr ""
340
- "La clé de licence correspond à un autre site. Modifier là au travers de "
341
- "votre espace client."
342
 
343
  #: bws_menu.php:130
344
  msgid "Log in"
@@ -346,27 +291,16 @@ msgstr "Connexion"
346
 
347
  #: bws_menu.php:132 bws_menu.php:332 deprecated.php:261
348
  msgid "Unfortunately, you have exceeded the number of available tries per day."
349
- msgstr ""
350
- "Désoler mais vous avez dépassé le nombre d'essai de la journée. Merci de "
351
- "télécharger l'extension manuellement."
352
 
353
  #: bws_menu.php:134 deprecated.php:365
354
  #, php-format
355
- msgid ""
356
- "Unfortunately, Your license has expired. To continue getting top-priority "
357
- "support and plugin updates, you should extend it in your %s"
358
- msgstr ""
359
- "Désoler, votre licence est terminée. Pour continuer à disposer du support "
360
- "rapide et des mises à jour de l'extension vous devez la renouveler dans "
361
- "votre %s"
362
 
363
  #: bws_menu.php:136 class-bws-settings.php:935 deprecated.php:367
364
- msgid ""
365
- "Unfortunately, the Pro licence was already installed to this domain. The Pro "
366
- "Trial license can be installed only once."
367
- msgstr ""
368
- "Une licence a déjà été installée sur ce domaine. La licence d'évaluation ne "
369
- "peut-être installée qu'une seule fois."
370
 
371
  #: bws_menu.php:142 class-bws-settings.php:839 deprecated.php:153
372
  msgid "The license key is valid."
@@ -378,15 +312,11 @@ msgstr "Votre licence se termine le "
378
 
379
  #: bws_menu.php:146
380
  msgid "Congratulations! Pro Membership license is activated successfully."
381
- msgstr ""
382
 
383
  #: bws_menu.php:153 class-bws-settings.php:1007 deprecated.php:436
384
- msgid ""
385
- "Something went wrong. Try again later or upload the plugin manually. We are "
386
- "sorry for inconvenience."
387
- msgstr ""
388
- "Il est survenu une erreur. Essayer de nouveau ou bien télécharger "
389
- "l'extension manuellement.Nous sommes désolés pour le désagrément."
390
 
391
  #: bws_menu.php:163
392
  msgid "Please enter your license key."
@@ -456,7 +386,7 @@ msgstr "par %s"
456
 
457
  #: bws_menu.php:207
458
  msgid "Server Environment"
459
- msgstr "Server Environnent"
460
 
461
  #: bws_menu.php:209
462
  msgid "Operating System"
@@ -537,7 +467,7 @@ msgstr "Merci de saisir une adresse e-mail valide."
537
  #: bws_menu.php:262
538
  #, php-format
539
  msgid "Email with system info is sent to %s."
540
- msgstr ""
541
 
542
  #: bws_menu.php:266
543
  msgid "Thank you for contacting us."
@@ -545,7 +475,7 @@ msgstr "Merci de nous avoir contacté."
545
 
546
  #: bws_menu.php:289
547
  msgid "Sorry, email message could not be delivered."
548
- msgstr "Désolé, votre e-mail n'a pas pu être envoyé."
549
 
550
  #: bws_menu.php:305 bws_menu.php:309 bws_menu.php:358 deprecated.php:91
551
  msgid "Plugins"
@@ -565,12 +495,12 @@ msgstr "Support"
565
 
566
  #: bws_menu.php:316
567
  msgid "Manage purchased licenses & subscriptions"
568
- msgstr "Gérer les licences et les adhésions"
569
 
570
  #: bws_menu.php:324
571
  #, php-format
572
  msgid "Get Access to %s+ Premium Plugins"
573
- msgstr "Accéder à plus de %s extension premiums"
574
 
575
  #: bws_menu.php:326
576
  msgid "Subscribe to Pro Membership"
@@ -593,28 +523,16 @@ msgstr "Activé"
593
 
594
  #: bws_menu.php:359
595
  msgid "Upload Plugin"
596
- msgstr "Charger l'extension"
597
 
598
  #: bws_menu.php:363
599
  #, php-format
600
- msgid ""
601
- "The plugin generated %d characters of <strong>unexpected output</strong> "
602
- "during activation. If you notice &#8220;headers already sent&#8221; "
603
- "messages, problems with syndication feeds or other issues, try deactivating "
604
- "or removing this plugin."
605
- msgstr ""
606
- "Cette extension a produit %d caractères <strong>inattendus</strong> durant "
607
- "l'activation. Si vous constatez le message &#8220;headers already "
608
- "sent&#8221;, des problèmes avec les flux de syndication ou autres, essayez "
609
- "de désactiver l'extension ou supprimer l'extension."
610
 
611
  #: bws_menu.php:365
612
- msgid ""
613
- "Plugin could not be activated because it triggered a <strong>fatal error</"
614
- "strong>."
615
- msgstr ""
616
- "L'extension ne peut pas être activée car une <strong>erreur fatale</strong> "
617
- "a été détectée."
618
 
619
  #: bws_menu.php:368
620
  msgid "Plugin <strong>activated</strong>."
@@ -622,18 +540,16 @@ msgstr "Extension <strong>activée</strong>."
622
 
623
  #: bws_menu.php:375
624
  msgid "Installing Plugin"
625
- msgstr "Extensions installées"
626
 
627
  #: bws_menu.php:381
628
  msgid "Downloading install package from"
629
- msgstr "Télécharger le paquet d'installation depuis"
630
 
631
  #: bws_menu.php:398 bws_menu.php:429 bws_menu.php:440 deprecated.php:388
632
  #: deprecated.php:410 deprecated.php:432
633
  msgid "Failed to download the zip archive. Please, upload the plugin manually"
634
- msgstr ""
635
- "Erreur de téléchargement de l'archive ZIP. Merci de télécharger l'extension "
636
- "manuellement."
637
 
638
  #: bws_menu.php:406
639
  msgid "Unpacking the package"
@@ -641,40 +557,32 @@ msgstr "Décompresser le paquet"
641
 
642
  #: bws_menu.php:411 bws_menu.php:419
643
  msgid "Installing the plugin"
644
- msgstr "Installer l'extension"
645
 
646
  #: bws_menu.php:415 deprecated.php:400
647
  msgid "Failed to open the zip archive. Please, upload the plugin manually"
648
- msgstr ""
649
- "Erreur d'ouverture de l'archive zip. Merci de télécharger l'extension "
650
- "manuellement."
651
 
652
  #: bws_menu.php:422 deprecated.php:406
653
- msgid ""
654
- "Your server does not support either ZipArchive or Phar. Please, upload the "
655
- "plugin manually"
656
- msgstr ""
657
- "Votre serveur n'a pas le support du format des archives ZIP ou Phar. Merci "
658
- "de télécharger l'extension manuellement."
659
 
660
  #: bws_menu.php:425
661
  #, php-format
662
  msgid "The plugin %s is successfully installed."
663
- msgstr "L'extension %s a été installée avec succès."
664
 
665
  #: bws_menu.php:432 deprecated.php:413
666
  msgid "UploadDir is not writable. Please, upload the plugin manually"
667
- msgstr ""
668
- "Erreur d'ouverture de l'archive zip. Merci de télécharger l'extension "
669
- "manuellement."
670
 
671
  #: bws_menu.php:437
672
  msgid "Activate Plugin"
673
- msgstr "Activer l'extension"
674
 
675
  #: bws_menu.php:437 bws_menu.php:443
676
  msgid "Return to BestWebSoft Panel"
677
- msgstr "Retourner à l'administration BestWebSoft"
678
 
679
  #: bws_menu.php:451 bws_menu.php:471 bws_menu.php:600
680
  msgid "All"
@@ -727,7 +635,7 @@ msgstr "Installer cette extension"
727
 
728
  #: bws_menu.php:591
729
  msgid "Nothing found. Try another criteria."
730
- msgstr "Pas de réponse. essayer d'autres critères."
731
 
732
  #: bws_menu.php:628
733
  #, php-format
@@ -740,7 +648,7 @@ msgstr "Déjà installé"
740
 
741
  #: bws_menu.php:645
742
  msgid "Browse More WordPress Themes"
743
- msgstr ""
744
 
745
  #: bws_menu.php:654
746
  msgid "Send to support"
@@ -794,7 +702,7 @@ msgstr "Version"
794
 
795
  #: class-bws-settings.php:285
796
  msgid "All plugin settings were restored."
797
- msgstr "Les paramètres de l'extension ont été remis aux valeurs d'origine."
798
 
799
  #: class-bws-settings.php:423
800
  msgid "Custom Code"
@@ -802,22 +710,16 @@ msgstr "Code personnalisé"
802
 
803
  #: class-bws-settings.php:427 deprecated.php:498
804
  msgid "You do not have sufficient permissions to edit plugins for this site."
805
- msgstr ""
806
- "Vous n'avez pas assez de droits pour modifier l'extension pour ce site."
807
 
808
  #: class-bws-settings.php:432 deprecated.php:620
809
  msgid "These styles will be added to the header on all pages of your site."
810
- msgstr ""
811
- "Ces styles seront ajoutés aux entêtes sur tous les pages de votre site."
812
 
813
  #: class-bws-settings.php:435 deprecated.php:622
814
  #, php-format
815
- msgid ""
816
- "This PHP code will be hooked to the %s action and will be printed on front "
817
- "end only."
818
- msgstr ""
819
- "Ce code PHP sera rattaché à l'action %s et sera affiché uniquement sur la "
820
- "partie publique."
821
 
822
  #: class-bws-settings.php:438
823
  msgid "These code will be added to the header on all pages of your site."
@@ -825,12 +727,8 @@ msgstr "Ce code sera ajouté aux entêtes sur tous les pages de votre site."
825
 
826
  #: class-bws-settings.php:446 deprecated.php:646
827
  #, php-format
828
- msgid ""
829
- "You need to make this files writable before you can save your changes. See "
830
- "%s the Codex %s for more information."
831
- msgstr ""
832
- "Vous devez rendre ce fichier modifiable avant de pouvoir enregistrer vos "
833
- "modifications. Regarder %s du Codex %s pour plus d'informations."
834
 
835
  #: class-bws-settings.php:456 deprecated.php:628
836
  msgid "Browsing"
@@ -852,20 +750,13 @@ msgstr "Paramètres divers"
852
 
853
  #: class-bws-settings.php:540 class-bws-settings.php:595
854
  #, php-format
855
- msgid ""
856
- "It is prohibited to change %s settings on this site in the %s network "
857
- "settings."
858
- msgstr ""
859
- "Il est interdit de changer le paramètre %s sur ce site dans les paramètres "
860
- "%s du réseau."
861
 
862
  #: class-bws-settings.php:543 class-bws-settings.php:598
863
  #, php-format
864
- msgid ""
865
- "It is prohibited to view %s settings on this site in the %s network settings."
866
- msgstr ""
867
- "Il est interdit de voir le paramètre %s sur ce site dans les paramètres %s "
868
- "du réseau."
869
 
870
  #: class-bws-settings.php:552
871
  msgid "Pro Options"
@@ -873,22 +764,19 @@ msgstr "Options Pro"
873
 
874
  #: class-bws-settings.php:556
875
  msgid "Enable to display plugin Pro options."
876
- msgstr "Activer pour voir les options PRO de l'extension."
877
 
878
  #: class-bws-settings.php:562
879
  msgid "Track Usage"
880
- msgstr "Suivi de l'utilisation"
881
 
882
  #: class-bws-settings.php:566
883
- msgid ""
884
- "Enable to allow tracking plugin usage anonymously in order to make it better."
885
- msgstr ""
886
- "Activer pour autoriser le suivi de l'utilisation de l'extension de manière "
887
- "anonyme afin de le rendre meilleur."
888
 
889
  #: class-bws-settings.php:571
890
  msgid "Default Settings"
891
- msgstr "Réglages par défauts"
892
 
893
  #: class-bws-settings.php:573
894
  msgid "Restore Settings"
@@ -896,7 +784,7 @@ msgstr "Remettre les paramètres"
896
 
897
  #: class-bws-settings.php:574
898
  msgid "This will restore plugin settings to defaults."
899
- msgstr "Remettre les valeurs par défaut des paramètres de l'extension."
900
 
901
  #: class-bws-settings.php:586
902
  msgid "Import / Export"
@@ -909,13 +797,12 @@ msgstr "Clé de licence"
909
 
910
  #: class-bws-settings.php:725
911
  msgid "Congratulations! Pro license is activated successfully."
912
- msgstr ""
913
- "Félicitations! La version PRO de cette extension a été activée avec succès."
914
 
915
  #: class-bws-settings.php:726
916
  #, php-format
917
  msgid "You will be automatically redirected to the %s in %s seconds."
918
- msgstr ""
919
 
920
  #: class-bws-settings.php:726
921
  msgid "Settings page"
@@ -924,31 +811,21 @@ msgstr "Page des paramètres"
924
  #: class-bws-settings.php:741
925
  #, php-format
926
  msgid "Enter your license key to activate %s and get premium plugin features."
927
- msgstr ""
928
- "Saisir votre clé de licence pour activer %s et obtenir les fonctionnalités "
929
- "premium."
930
 
931
  #: class-bws-settings.php:744 class-bws-settings.php:931 deprecated.php:363
932
  #: deprecated.php:706
933
- msgid ""
934
- "Unfortunately, you have exceeded the number of available tries per day. "
935
- "Please, upload the plugin manually."
936
- msgstr ""
937
- "Désoler mais vous avez dépassé le nombre d'essai de la journée. Merci de "
938
- "télécharger l'extension manuellement."
939
 
940
  #: class-bws-settings.php:747 deprecated.php:697
941
  #, php-format
942
  msgid "Start Your Free %s-Day Trial Now"
943
- msgstr "Débuter votre licence d'évaluation gratuite de %s jours"
944
 
945
  #: class-bws-settings.php:762
946
- msgid ""
947
- "If necessary, you can check if the license key is correct or reenter it in "
948
- "the field below."
949
- msgstr ""
950
- "Si nécessaire vous pouvez vérifier que la clé de licence est correcte ou la "
951
- "saisir de nouveau dans le champ ci-dessous."
952
 
953
  #: class-bws-settings.php:767
954
  msgid "Manage License Settings"
@@ -956,15 +833,11 @@ msgstr "Gérer les paramètres de licence"
956
 
957
  #: class-bws-settings.php:769
958
  msgid "Login to Client Area"
959
- msgstr "Se connecter à l'espace client"
960
 
961
  #: class-bws-settings.php:771
962
- msgid ""
963
- "Manage active licenses, download BWS products, and view your payment history "
964
- "using BestWebSoft Client Area."
965
- msgstr ""
966
- "Gérer les licences actives, télécharger les produits BWS, et voir "
967
- "l'historique de vos règlements dans l'interface client de BestWebSoft."
968
 
969
  #: class-bws-settings.php:826 class-bws-settings.php:929 deprecated.php:141
970
  #: deprecated.php:361
@@ -972,65 +845,47 @@ msgid "This license key is bound to another site."
972
  msgstr "La clé de licence correspond à un autre site."
973
 
974
  #: class-bws-settings.php:828 deprecated.php:143
975
- msgid ""
976
- "This license key is valid, but Your license has expired. If you want to "
977
- "update our plugin in future, you should extend the license."
978
- msgstr ""
979
- "La clé de licence est valide mais votre durée de validité est passée. Pour "
980
- "continuer à disposer du support rapide et des mises à jour de l'extension "
981
- "vous devez la renouveller."
982
 
983
  #: class-bws-settings.php:830 deprecated.php:145
984
  msgid "Unfortunately, you have exceeded the number of available tries."
985
- msgstr ""
986
- "Désoler mais vous avez dépassé le nombre d'essai de la journée. Merci de "
987
- "télécharger l'extension manuellement."
988
 
989
  #: class-bws-settings.php:832 deprecated.php:147
990
- msgid ""
991
- "Unfortunately, the Pro Trial licence was already installed to this domain. "
992
- "The Pro Trial license can be installed only once."
993
- msgstr ""
994
- "Une licence a déjà été installée sur ce domaine. La licence d'évaluation ne "
995
- "peut-être installée qu'une seule fois."
996
 
997
  #: class-bws-settings.php:837 deprecated.php:151
998
  msgid "The Pro Trial license key is valid."
999
- msgstr "La clé de licence d'évaluation est valide."
1000
 
1001
  #: class-bws-settings.php:845 deprecated.php:159 deprecated.php:246
1002
  #, php-format
1003
- msgid ""
1004
- "In order to continue using the plugin it is necessary to buy a %s license."
1005
- msgstr ""
1006
- "Afin de pouvoir continuer à utiliser cette extension il est nécessaire "
1007
- "d'acheter une licence %s."
1008
 
1009
  #: class-bws-settings.php:933
1010
  #, php-format
1011
- msgid ""
1012
- "Unfortunately, Your license has expired. To continue getting top-priority "
1013
- "support and plugin updates, you should extend it in your %s."
1014
- msgstr ""
1015
 
1016
  #: class-bws-settings.php:959 class-bws-settings.php:981
1017
  #: class-bws-settings.php:1003
1018
  msgid "Failed to download the zip archive. Please, upload the plugin manually."
1019
- msgstr ""
1020
 
1021
  #: class-bws-settings.php:971
1022
  msgid "Failed to open the zip archive. Please, upload the plugin manually."
1023
- msgstr ""
1024
 
1025
  #: class-bws-settings.php:977
1026
- msgid ""
1027
- "Your server does not support either ZipArchive or Phar. Please, upload the "
1028
- "plugin manually."
1029
- msgstr ""
1030
 
1031
  #: class-bws-settings.php:984
1032
  msgid "UploadDir is not writable. Please, upload the plugin manually."
1033
- msgstr ""
1034
 
1035
  #: class-bws-settings.php:1042 deprecated.php:464
1036
  msgid "Please, enter Your license key"
@@ -1038,7 +893,7 @@ msgstr "Merci de saisir votre clé de licence"
1038
 
1039
  #: class-bws-settings.php:1054
1040
  msgid "Need Help?"
1041
- msgstr "Besoin d'aide ?"
1042
 
1043
  #: class-bws-settings.php:1056
1044
  msgid "Read the Instruction"
@@ -1050,67 +905,67 @@ msgstr "Regarder la vidéo"
1050
 
1051
  #: class-bws-settings.php:1071
1052
  msgid "Start Your Free Trial"
1053
- msgstr "Débuter votre licence d'évaluation gratuite"
1054
 
1055
  #: deactivation-form.php:27
1056
  msgid "Need help? We are ready to answer your questions."
1057
- msgstr ""
1058
 
1059
  #: deactivation-form.php:27
1060
  msgid "Contact Support"
1061
- msgstr ""
1062
 
1063
  #: deactivation-form.php:32
1064
  msgid "The plugin is not working"
1065
- msgstr ""
1066
 
1067
  #: deactivation-form.php:34
1068
  msgid "Kindly share what didn't work so we can fix it in future updates..."
1069
- msgstr ""
1070
 
1071
  #: deactivation-form.php:38
1072
  msgid "The plugin didn't work as expected"
1073
- msgstr ""
1074
 
1075
  #: deactivation-form.php:40
1076
  msgid "What did you expect?"
1077
- msgstr ""
1078
 
1079
  #: deactivation-form.php:44
1080
  msgid "The plugin suddenly stopped working"
1081
- msgstr ""
1082
 
1083
  #: deactivation-form.php:51
1084
  msgid "The plugin broke my site"
1085
- msgstr ""
1086
 
1087
  #: deactivation-form.php:58
1088
  msgid "I couldn't understand how to get it work"
1089
- msgstr ""
1090
 
1091
  #: deactivation-form.php:65
1092
  msgid "I found a better plugin"
1093
- msgstr ""
1094
 
1095
  #: deactivation-form.php:67
1096
  msgid "What's the plugin name?"
1097
- msgstr ""
1098
 
1099
  #: deactivation-form.php:71
1100
  msgid "The plugin is great, but I need specific feature that you don't support"
1101
- msgstr ""
1102
 
1103
  #: deactivation-form.php:73
1104
  msgid "What feature?"
1105
- msgstr ""
1106
 
1107
  #: deactivation-form.php:77
1108
  msgid "I no longer need the plugin"
1109
- msgstr ""
1110
 
1111
  #: deactivation-form.php:83
1112
  msgid "It's a temporary deactivation, I'm just debugging an issue"
1113
- msgstr ""
1114
 
1115
  #: deactivation-form.php:89
1116
  msgid "Other"
@@ -1118,35 +973,35 @@ msgstr "Autre"
1118
 
1119
  #: deactivation-form.php:123
1120
  msgid "Quick Feedback"
1121
- msgstr ""
1122
 
1123
  #: deactivation-form.php:124
1124
  msgid "If you have a moment, please let us know why you are deactivating"
1125
- msgstr ""
1126
 
1127
  #: deactivation-form.php:127
1128
  msgid "Send website data and allow to contact me back"
1129
- msgstr ""
1130
 
1131
  #: deactivation-form.php:132
1132
  msgid "Cancel"
1133
- msgstr ""
1134
 
1135
  #: deactivation-form.php:233
1136
  msgid "Processing"
1137
- msgstr ""
1138
 
1139
  #: deactivation-form.php:262
1140
  msgid "Submit & Deactivate"
1141
- msgstr ""
1142
 
1143
  #: deactivation-form.php:277
1144
  msgid "Please tell us the reason so we can improve it."
1145
- msgstr ""
1146
 
1147
  #: deactivation-form.php:345
1148
  msgid "Deactivate"
1149
- msgstr ""
1150
 
1151
  #: deprecated.php:93
1152
  msgid "System Status"
@@ -1157,28 +1012,16 @@ msgid "Please, enter your license key"
1157
  msgstr "Merci de saisir votre clé de licence"
1158
 
1159
  #: deprecated.php:223
1160
- msgid ""
1161
- "If necessary, you can check if the license key is correct or reenter it in "
1162
- "the field below. You can find your license key on your personal page - "
1163
- "Client Area - on our website"
1164
- msgstr ""
1165
- "Si nécessaire vous pouvez vérifier que la clé de licence est correcte ou la "
1166
- "saisir de nouveau dans le champ ci-dessous. Vous pouvez trouver votre clé de "
1167
- "licence sur votre page personnelle (zone client) sur notre site web."
1168
 
1169
  #: deprecated.php:223
1170
- msgid ""
1171
- "(your username is the email address specified during the purchase). If "
1172
- "necessary, please submit \"Lost your password?\" request."
1173
- msgstr ""
1174
- "(votre nom d'utilisateur est l'adresse e-mail que vous avez donnée lors de "
1175
- "l'achat de l'extension). Si nécessaire, utilisez la fonction de demande de "
1176
- "mot de passe perdu."
1177
 
1178
  #: deprecated.php:246
1179
  msgid "After that, you can activate it by entering your license key."
1180
- msgstr ""
1181
- " Après vous pouvez activer cette extension en donnant votre clé de licence."
1182
 
1183
  #: deprecated.php:249 deprecated.php:691
1184
  msgid "License key can be found in the"
@@ -1186,19 +1029,15 @@ msgstr "La clé de licence peut être trouvée dans "
1186
 
1187
  #: deprecated.php:251 deprecated.php:693
1188
  msgid "(your username is the email address specified during the purchase)."
1189
- msgstr ""
1190
- "(votre nom d'utilisateur est l'adresse e-mail que vous avez donnée lors de "
1191
- "l'achat de l'extension)."
1192
 
1193
  #: deprecated.php:279
1194
- msgid ""
1195
- "Congratulations! The Pro license of the plugin is activated successfully."
1196
- msgstr ""
1197
- "Félicitations! La version PRO de cette extension a été activée avec succès."
1198
 
1199
  #: deprecated.php:281 deprecated.php:672
1200
  msgid "Please, go to"
1201
- msgstr "Merci daller à"
1202
 
1203
  #: deprecated.php:281 deprecated.php:672
1204
  msgid "the setting page"
@@ -1210,12 +1049,11 @@ msgstr "Vous allez être redirigé automatiquement dans 5 secondes"
1210
 
1211
  #: deprecated.php:316
1212
  msgid "Check premium options on the plugin settings page!"
1213
- msgstr ""
1214
- "Vérifier les options premium sur la page des paramètres de l'extension!"
1215
 
1216
  #: deprecated.php:479
1217
  msgid "Restore all plugin settings to defaults"
1218
- msgstr "Remettre les valeurs par défaut des paramètres de l'extension"
1219
 
1220
  #: deprecated.php:481
1221
  msgid "Restore settings"
@@ -1239,12 +1077,8 @@ msgid "Editing"
1239
  msgstr "Modifier"
1240
 
1241
  #: deprecated.php:670
1242
- msgid ""
1243
- "Congratulations! Pro version of the plugin is installed and activated "
1244
- "successfully."
1245
- msgstr ""
1246
- "Félicitations! La version PRO de cette extension a été téléchargée et "
1247
- "activée avec succès."
1248
 
1249
  #: deprecated.php:680
1250
  msgid "Show Pro features"
@@ -1256,27 +1090,27 @@ msgstr "Saisir votre clé de licence pour installer et activer"
1256
 
1257
  #: deprecated.php:689
1258
  msgid "version of the plugin."
1259
- msgstr "version de l'extension."
1260
 
1261
  #: product_list.php:7
1262
  msgid "Admin Tools"
1263
- msgstr ""
1264
 
1265
  #: product_list.php:8
1266
  msgid "Content"
1267
- msgstr ""
1268
 
1269
  #: product_list.php:9
1270
  msgid "eCommerce"
1271
- msgstr ""
1272
 
1273
  #: product_list.php:10
1274
  msgid "Marketing"
1275
- msgstr ""
1276
 
1277
  #: product_list.php:11
1278
  msgid "Navigation"
1279
- msgstr ""
1280
 
1281
  #: product_list.php:12
1282
  msgid "Recommended"
@@ -1288,948 +1122,204 @@ msgstr "Sécurité"
1288
 
1289
  #: product_list.php:14
1290
  msgid "SEO"
1291
- msgstr ""
1292
 
1293
  #: product_list.php:15
1294
  msgid "SMM"
1295
- msgstr ""
1296
 
1297
  #: product_list.php:22
1298
  msgid "Best secure captcha plugin to protect your WordPress forms."
1299
- msgstr ""
1300
 
1301
  #: product_list.php:32
1302
  msgid "Create your personal car rental/booking and reservation website."
1303
- msgstr ""
1304
 
1305
  #: product_list.php:42
1306
- msgid ""
1307
- "Allow customers to reach you using secure contact form plugin any website "
1308
- "must have."
1309
- msgstr ""
1310
 
1311
  #: product_list.php:52
1312
  msgid "Add unlimited number of contact forms to WordPress website."
1313
- msgstr ""
1314
 
1315
  #: product_list.php:62
1316
  msgid "Save and manage Contact Form messages. Never lose important data."
1317
- msgstr ""
1318
 
1319
  #: product_list.php:72
1320
  msgid "Add unlimited custom pages to WordPress admin dashboard."
1321
- msgstr ""
1322
 
1323
  #: product_list.php:79
1324
  msgid "Add custom fields to WordPress website search results."
1325
- msgstr ""
1326
 
1327
  #: product_list.php:86
1328
- msgid ""
1329
- "Add custom post types and taxonomies to WordPress website search results."
1330
- msgstr ""
1331
 
1332
  #: product_list.php:96
1333
  msgid "Add PayPal and 2CO donate buttons to receive charity payments."
1334
- msgstr ""
1335
 
1336
  #: product_list.php:103
1337
- msgid ""
1338
- "Get latest error log messages to diagnose website problems. Define and fix "
1339
- "issues faster."
1340
- msgstr ""
1341
 
1342
  #: product_list.php:110
1343
- msgid ""
1344
- "Add Facebook Follow, Like, and Share buttons to WordPress posts, pages, and "
1345
- "widgets."
1346
- msgstr ""
1347
 
1348
  #: product_list.php:120
1349
- msgid ""
1350
- "Add beautiful galleries, albums & images to your WordPress website in a few "
1351
- "clicks."
1352
- msgstr ""
1353
 
1354
  #: product_list.php:130
1355
- msgid ""
1356
- "Add Google +1, Share, Follow, Hangout buttons and profile badge to WordPress "
1357
- "posts, pages and widgets."
1358
- msgstr ""
1359
 
1360
  #: product_list.php:140
1361
- msgid ""
1362
- "Stronger security solution which protects your WordPress website from hacks "
1363
- "and unauthorized login attempts."
1364
- msgstr ""
1365
 
1366
  #: product_list.php:150
1367
- msgid ""
1368
- "Add Adsense ads to WordPress website pages, posts, custom posts, search "
1369
- "results, categories, tags, and widgets."
1370
- msgstr ""
1371
 
1372
  #: product_list.php:160
1373
  msgid "Add Google Analytics code to WordPress website and track basic stats."
1374
- msgstr ""
1375
 
1376
  #: product_list.php:170
1377
- msgid ""
1378
- "Protect WordPress website forms from spam entries with Google Captcha "
1379
- "(reCaptcha)."
1380
- msgstr ""
1381
 
1382
  #: product_list.php:180
1383
  msgid "Add customized Google maps to WordPress posts, pages and widgets."
1384
- msgstr ""
1385
 
1386
  #: product_list.php:190
1387
- msgid ""
1388
- "Generate and add XML sitemap to WordPress website. Help search engines index "
1389
- "your blog."
1390
- msgstr ""
1391
 
1392
  #: product_list.php:200
1393
- msgid ""
1394
- "Replace external WordPress website links with Google shortlinks and track "
1395
- "click stats."
1396
- msgstr ""
1397
 
1398
  #: product_list.php:207
1399
- msgid ""
1400
- "Protect WordPress website allow and deny access for certain IP addresses, "
1401
- "hostnames, etc."
1402
- msgstr ""
1403
 
1404
  #: product_list.php:217
1405
- msgid ""
1406
- "Create your personal job board and listing WordPress website. Search jobs, "
1407
- "submit CV/resumes, choose candidates."
1408
- msgstr ""
1409
 
1410
  #: product_list.php:224
1411
- msgid ""
1412
- "Protect WordPress website against brute force attacks. Limit rate of login "
1413
- "attempts."
1414
- msgstr ""
1415
 
1416
  #: product_list.php:234
1417
- msgid ""
1418
- "Add LinkedIn Share and Follow buttons to WordPress posts, pages and widgets. "
1419
- "5 plugins included – profile, insider, etc."
1420
- msgstr ""
1421
 
1422
  #: product_list.php:244
1423
- msgid ""
1424
- "Translate WordPress website content to other languages manually. Create "
1425
- "multilingual pages, posts, widgets, menus, etc."
1426
- msgstr ""
1427
 
1428
  #: product_list.php:254
1429
- msgid ""
1430
- "Add customizable pagination to WordPress website. Split long content to "
1431
- "multiple pages for better navigation."
1432
- msgstr ""
1433
 
1434
  #: product_list.php:264
1435
- msgid ""
1436
- "Generate PDF files and print WordPress posts/pages. Customize document "
1437
- "header/footer styles and appearance."
1438
- msgstr ""
1439
 
1440
  #: product_list.php:274
1441
- msgid ""
1442
- "Add Pinterest Follow, Pin It buttons and profile widgets (Pin, Board, "
1443
- "Profile) to WordPress posts, pages and widgets."
1444
- msgstr ""
1445
 
1446
  #: product_list.php:284
1447
- msgid ""
1448
- "Create your personal portfolio WordPress website. Manage and showcase past "
1449
- "projects to get more clients."
1450
- msgstr ""
1451
 
1452
  #: product_list.php:294
1453
  msgid "Export WordPress posts to CSV file format easily. Configure data order."
1454
- msgstr ""
1455
 
1456
  #: product_list.php:301
1457
- msgid ""
1458
- "Add extra fields to default WordPress user profile. The easiest way to "
1459
- "create and manage additional custom values."
1460
- msgstr ""
1461
 
1462
  #: product_list.php:308
1463
- msgid ""
1464
- "Add and display HTML advertisement banner on WordPress website. Customize "
1465
- "bar styles and appearance."
1466
- msgstr ""
1467
 
1468
  #: product_list.php:318
1469
- msgid ""
1470
- "Add customizable quotes and tips blocks to WordPress posts, pages and "
1471
- "widgets."
1472
- msgstr ""
1473
 
1474
  #: product_list.php:325
1475
- msgid ""
1476
- "Add rating plugin to your WordPress website to receive feedback from your "
1477
- "customers."
1478
- msgstr ""
1479
 
1480
  #: product_list.php:332
1481
- msgid ""
1482
- "Create your personal real estate WordPress website. Sell, rent and buy "
1483
- "properties. Add, search and browse listings easily."
1484
- msgstr ""
1485
 
1486
  #: product_list.php:342
1487
- msgid ""
1488
- "Add related, featured, latest, and popular posts to your WordPress website. "
1489
- "Connect your blog readers with a relevant content."
1490
- msgstr ""
1491
 
1492
  #: product_list.php:349
1493
- msgid ""
1494
- "Send bulk email messages to WordPress users. Custom templates, advanced "
1495
- "settings and detailed reports."
1496
- msgstr ""
1497
 
1498
  #: product_list.php:359
1499
- msgid ""
1500
- "The best responsive slider plugin for your WordPress website. Create "
1501
- "beautifully animated slides just in a few clicks."
1502
- msgstr ""
1503
 
1504
  #: product_list.php:366
1505
- msgid ""
1506
- "Configure SMTP server to receive email messages from WordPress to Gmail, "
1507
- "Yahoo, Hotmail and other services."
1508
- msgstr ""
1509
 
1510
  #: product_list.php:373
1511
- msgid ""
1512
- "Add social media buttons and widgets to WordPress posts, pages and widgets. "
1513
- "FB, Twitter, G+1, Pinterest, LinkedIn."
1514
- msgstr ""
1515
 
1516
  #: product_list.php:383
1517
- msgid ""
1518
- "Add social media login, registration, and commenting to your WordPress "
1519
- "website."
1520
- msgstr ""
1521
 
1522
  #: product_list.php:390
1523
- msgid ""
1524
- "Add email newsletter sign up form to WordPress posts, pages and widgets. "
1525
- "Collect data and subscribe your users."
1526
- msgstr ""
1527
 
1528
  #: product_list.php:400
1529
- msgid ""
1530
- "Add testimonials and feedbacks from your customers to WordPress website "
1531
- "posts, pages, and widgets."
1532
- msgstr ""
1533
 
1534
  #: product_list.php:407
1535
- msgid ""
1536
- "Best timesheet plugin for WordPress. Track employee time, streamline "
1537
- "attendance and generate reports."
1538
- msgstr ""
1539
 
1540
  #: product_list.php:417
1541
- msgid ""
1542
- "Add Twitter Follow, Tweet, Hashtag, and Mention buttons to WordPress posts "
1543
- "and pages."
1544
- msgstr ""
1545
 
1546
  #: product_list.php:427
1547
- msgid ""
1548
- "Automatically check and update WordPress website core with all installed "
1549
- "plugins and themes to the latest versions."
1550
- msgstr ""
1551
 
1552
  #: product_list.php:437
1553
- msgid ""
1554
- "Powerful user role management plugin for WordPress website. Create, edit, "
1555
- "copy, and delete user roles."
1556
- msgstr ""
1557
 
1558
  #: product_list.php:447
1559
- msgid ""
1560
- "Display live count of online visitors who are currently browsing your "
1561
- "WordPress website."
1562
- msgstr ""
1563
 
1564
  #: product_list.php:457
1565
- msgid ""
1566
- "Backup and export Zendesk Help Center content automatically to your "
1567
- "WordPress website database."
1568
- msgstr ""
1569
-
1570
- #~ msgid "Congratulations! Pro Membership license is activated successfully."
1571
- #~ msgstr ""
1572
- #~ "Félicitations! La version PRO de cette extension a été activée avec "
1573
- #~ "succès."
1574
-
1575
- #~ msgid "Email with system info is sent to"
1576
- #~ msgstr "Le courriel avec les informations système est envoyé à"
1577
-
1578
- #~ msgid "Browse Free WordPress Themes"
1579
- #~ msgstr "Parcourir les thèmes gratuits pour WordPress"
1580
-
1581
- #~ msgid ""
1582
- #~ "You can use one license of the Pro plugin for one domain only. Please "
1583
- #~ "check and edit your license or domain if necessary using you personal "
1584
- #~ "Client Area. We strongly recommend you to solve the problem within 24 "
1585
- #~ "hours, otherwise the Pro plugin will be deactivated."
1586
- #~ msgstr ""
1587
- #~ "Vous ne pouvez utilisez qu'une licence de la version Pro de l'extension "
1588
- #~ "pour un seul domaine. Merci de vérifier et de modifier votre licence ou "
1589
- #~ "votre domaine si nécessaire en utilisant votre zone client. Nous vous "
1590
- #~ "recommandons de résoudre ce problème dans les 24 heures, sinon "
1591
- #~ "l'extension sera rendue inactive."
1592
-
1593
- #~ msgid "Insert"
1594
- #~ msgstr "Insérer"
1595
-
1596
- #~ msgid "Advertisement"
1597
- #~ msgstr "Publicité"
1598
-
1599
- #~ msgid "Content & Media"
1600
- #~ msgstr "Contenu & média"
1601
-
1602
- #~ msgid "Management"
1603
- #~ msgstr "Administration"
1604
-
1605
- #~ msgid "Site Stats"
1606
- #~ msgstr "Statistiques"
1607
-
1608
- #~ msgid "Social"
1609
- #~ msgstr "Social"
1610
-
1611
- #~ msgid "Utilities"
1612
- #~ msgstr "Utilitaires"
1613
-
1614
- #~ msgid "Thank you for installing"
1615
- #~ msgstr "Merci d'avoir installé"
1616
-
1617
- #~ msgid "Thank you for choosing"
1618
- #~ msgstr "Merci d'avoir choisi"
1619
-
1620
- #~ msgid "You will be automatically redirected to the %s in 7 seconds."
1621
- #~ msgstr "Vous allez être redirigé automatiquement vers %s dans 7 secondes"
1622
-
1623
- #~ msgid "PHP Safe Mode"
1624
- #~ msgstr "PHP Safe Mode"
1625
-
1626
- #~ msgid "WordPress Version"
1627
- #~ msgstr "WordPress Version"
1628
-
1629
- #~ msgid "Successfully installed the plugin"
1630
- #~ msgstr "Extension installée avec succès"
1631
-
1632
- #~ msgid "If you enjoy our plugin, please give it 5 stars on WordPress"
1633
- #~ msgstr ""
1634
- #~ "Si notre extension vous satisfait, merci de la notée avec 5 étoiles dans "
1635
- #~ "Wordpress"
1636
-
1637
- #~ msgid "If there is something wrong about it, please contact us"
1638
- #~ msgstr "Si vous avez une question, n'hésitez pas à nous contacter"
1639
-
1640
- #~ msgid "Donations play an important role in supporting great projects"
1641
- #~ msgstr "Les dons jouent un rôle important dans l'aide aux projets"
1642
-
1643
- #~ msgid "This license key is bind to another site"
1644
- #~ msgstr "La clé de licence correspond à un autre site."
1645
-
1646
- #~ msgid "You license for"
1647
- #~ msgstr "Votre licence pour"
1648
-
1649
- #~ msgid "Activate Membership"
1650
- #~ msgstr "Activer l'adhésion"
1651
-
1652
- #~ msgid "Don’t have valid license key yet?"
1653
- #~ msgstr "Vous n'avez pas encore de licence valide ?"
1654
-
1655
- #~ msgid ""
1656
- #~ "Join BestWebSoft Pro Membership today, cancel any time and use all "
1657
- #~ "plugins on a single website %s for only %s per month."
1658
- #~ msgstr ""
1659
- #~ "Rejoignez le réseau PRO de BestWebSoft, arrêtez quand vous le vouler et "
1660
- #~ "utiliser toutes les extensions sur un seul site %s pour seulement %s par "
1661
- #~ "mois."
1662
-
1663
- #~ msgid "My Account"
1664
- #~ msgstr "Mon compte"
1665
-
1666
- #~ msgid "Go"
1667
- #~ msgstr "Passez"
1668
-
1669
- #~ msgid "DONATE"
1670
- #~ msgstr "Faire un don"
1671
-
1672
- #~ msgid "Recommended plugins"
1673
- #~ msgstr "Extensions recommandées"
1674
-
1675
- #~ msgid "Install now"
1676
- #~ msgstr "Installer maintenant"
1677
-
1678
- #~ msgid "Configure Settings"
1679
- #~ msgstr "Configuration des paramètres"
1680
-
1681
- #~ msgid "Try again"
1682
- #~ msgstr "Essayer de nouveau"
1683
-
1684
- #~ msgid "Preview &#8220;%s&#8221;"
1685
- #~ msgstr "Pré-visualiser &#8220;%s&#8221;"
1686
-
1687
- #~ msgid "Install %s"
1688
- #~ msgstr "%s installé"
1689
-
1690
- #~ msgid "Update"
1691
- #~ msgstr "Mettre à jour"
1692
-
1693
- #~ msgid "Preview %s"
1694
- #~ msgstr "Pré-visualiser %s"
1695
-
1696
- #~ msgid "Preview"
1697
- #~ msgstr "Pré-visualiser"
1698
-
1699
- #~ msgid "You can download and activate"
1700
- #~ msgstr "Vous pouvez télécharger et activer la version "
1701
-
1702
- #~ msgid "version of this plugin by entering Your license key."
1703
- #~ msgstr " de cette extension en donnant votre clé de licence."
1704
-
1705
- #~ msgid ""
1706
- #~ "You can find your license key on your personal page Client area, by "
1707
- #~ "clicking on the link"
1708
- #~ msgstr ""
1709
- #~ "Vous pouvez trouver votre clé de licence sur votre page personnelle dans "
1710
- #~ "la zone cliente en cliquant sur le lien"
1711
-
1712
- #~ msgid ""
1713
- #~ "(your username is the email you specify when purchasing the product), "
1714
- #~ "where you can make the necessary changes."
1715
- #~ msgstr ""
1716
- #~ "(votre nom d'utilisateur est l'adresse e-mail que vous avez donné lors de "
1717
- #~ "l'achat de l'extension), où vous pourrez faire les modifications "
1718
- #~ "nécessaires."
1719
-
1720
- #~ msgid "Switch to new interface"
1721
- #~ msgstr "Basculer vers la nouvelle interface"
1722
-
1723
- #~ msgid "Activated plugins"
1724
- #~ msgstr "Plugin activé"
1725
-
1726
- #~ msgid "Read more"
1727
- #~ msgstr "Lire la suite"
1728
-
1729
- #~ msgid "Purchase"
1730
- #~ msgstr "Achetez"
1731
-
1732
- #~ msgid "Free plugins"
1733
- #~ msgstr "Plugins gratuits"
1734
-
1735
- #~ msgid "Download"
1736
- #~ msgstr "Téléchargement"
1737
-
1738
- #~ msgid "Install now from wordpress.org"
1739
- #~ msgstr "Installer maintenant depuis wordpress.org"
1740
-
1741
- #~ msgid "Free themes"
1742
- #~ msgstr "Thèmes gratuits"
1743
-
1744
- #~ msgid "Customize &#8220;%s&#8221;"
1745
- #~ msgstr "Personnaliser &#8220;%s&#8221;"
1746
-
1747
- #~ msgid "Installed themes"
1748
- #~ msgstr "Thèmes installés"
1749
-
1750
- #~ msgid "Recommended themes"
1751
- #~ msgstr "Thèmes recommandés"
1752
-
1753
- #~ msgid "Switch to old interface"
1754
- #~ msgstr "Basculer vers l'ancienne interface"
1755
-
1756
- #, fuzzy
1757
- #~ msgid "installed"
1758
- #~ msgstr "%s installé"
1759
-
1760
- #~ msgid "Contact Form"
1761
- #~ msgstr "Formulaire de Contact"
1762
-
1763
- #~ msgid "Contact Form Pro Extra Settings"
1764
- #~ msgstr ""
1765
- #~ "Options supplémentaires de la version Pro pour le formulaire de Contact"
1766
-
1767
- #~ msgid "Contact Form Pro"
1768
- #~ msgstr "Formulaire Pro de Contact"
1769
-
1770
- #~ msgid "Name:"
1771
- #~ msgstr "Nom:"
1772
-
1773
- #~ msgid "Address:"
1774
- #~ msgstr "Adresse :"
1775
-
1776
- #~ msgid "Email Address:"
1777
- #~ msgstr "Adresse e-mail:"
1778
-
1779
- #~ msgid "Phone number:"
1780
- #~ msgstr "Téléphone:"
1781
-
1782
- #~ msgid "Subject:"
1783
- #~ msgstr "Sujet:"
1784
-
1785
- #~ msgid "Message:"
1786
- #~ msgstr "Message:"
1787
-
1788
- #~ msgid "Attachment:"
1789
- #~ msgstr "Pièce-jointe:"
1790
-
1791
- #~ msgid "Send me a copy"
1792
- #~ msgstr "M'envoyer une copie"
1793
-
1794
- #~ msgid "Submit"
1795
- #~ msgstr "Envoyer"
1796
-
1797
- #~ msgid "Your name is required."
1798
- #~ msgstr "Un nom est obligatoire."
1799
-
1800
- #~ msgid "Address is required."
1801
- #~ msgstr "Une adresse est obligatoire."
1802
-
1803
- #~ msgid "A valid email address is required."
1804
- #~ msgstr "Une adresse e-mail valide est obligatoire."
1805
-
1806
- #~ msgid "Phone number is required."
1807
- #~ msgstr "Le numéro de téléphone est obligatoire."
1808
-
1809
- #~ msgid "Subject is required."
1810
- #~ msgstr "Sujet obligatoire."
1811
-
1812
- #~ msgid "Message text is required."
1813
- #~ msgstr "Un message est obligatoire."
1814
-
1815
- #~ msgid "File format is not valid."
1816
- #~ msgstr "La pièce-jointe n'est pas valide."
1817
-
1818
- #~ msgid "File upload error."
1819
- #~ msgstr "Erreur de chargement du fichier."
1820
-
1821
- #~ msgid "The file could not be uploaded."
1822
- #~ msgstr "Le fichier n'a pas pu être envoyé."
1823
-
1824
- #~ msgid "This file is too large."
1825
- #~ msgstr "Le fichier est trop volumineux."
1826
-
1827
- #~ msgid "Please fill out the CAPTCHA."
1828
- #~ msgstr "Merci de compléter le CAPTCHA."
1829
-
1830
- #~ msgid "Please make corrections below and try again."
1831
- #~ msgstr "Merci de faire les corrections suivantes et de réessayer."
1832
-
1833
- #~ msgid ""
1834
- #~ "If the 'Redirect to page' option is selected then the URL field should be "
1835
- #~ "in the following format"
1836
- #~ msgstr ""
1837
- #~ "Si l'ioption 'Rediriger vers la page' est positionnée, alors le champ Url "
1838
- #~ "doit être rempli avec le format suivant"
1839
-
1840
- #~ msgid "Such user does not exist. Settings are not saved."
1841
- #~ msgstr ""
1842
- #~ "Cet utilisateur est inconnu. Les modifications ne sont pas sauvegardées."
1843
-
1844
- #~ msgid ""
1845
- #~ "Please enter a valid email address in the 'FROM' field. Settings are not "
1846
- #~ "saved."
1847
- #~ msgstr ""
1848
- #~ "Merci de saisir une adresse e-mail valide pour le 'FROM'. Les "
1849
- #~ "modifications ne sont pas sauvegardées."
1850
-
1851
- #~ msgid ""
1852
- #~ "If you would like to add the Contact Form to your website, just copy and "
1853
- #~ "paste this shortcode to your post or page or widget:"
1854
- #~ msgstr ""
1855
- #~ "Si vous souhaiter ajouter un formulaire de contact à votre site web, "
1856
- #~ "copiez juste ce code dans un article ou sur une page ou un widget:"
1857
-
1858
- #~ msgid ""
1859
- #~ "If you leave the fields empty, the messages will be sent to the email "
1860
- #~ "address specified during registration."
1861
- #~ msgstr ""
1862
- #~ "Si les champs ci-dessous ne sont pas renseignés le message sera envoyé à "
1863
- #~ "l'adresse spécifiée lors de l'enregistrement."
1864
-
1865
- #~ msgid "The user's email address:"
1866
- #~ msgstr "Utiliser l'e-mail du compte wordpress:"
1867
-
1868
- #~ msgid "Create a username"
1869
- #~ msgstr "Choisir un nom d'utilisateur"
1870
-
1871
- #~ msgid ""
1872
- #~ "Enter a username of the person who should get the messages from the "
1873
- #~ "contact form."
1874
- #~ msgstr ""
1875
- #~ "Choisir le nom d'utilisateur qui recevra les messages envoyés depuis le "
1876
- #~ "formulaire de contact."
1877
-
1878
- #~ msgid "Use this email address:"
1879
- #~ msgstr "Utiliser cette adresse e-mail:"
1880
-
1881
- #~ msgid "Enter the email address you want the messages forwarded to."
1882
- #~ msgstr ""
1883
- #~ "Choisir l'adresse e-mail qui sera utilisée pour recevoir les messages."
1884
-
1885
- #~ msgid "Additional options"
1886
- #~ msgstr "Options supplémentaires"
1887
-
1888
- #~ msgid "What to use?"
1889
- #~ msgstr "Quelle méthode d'envoie ?"
1890
-
1891
- #~ msgid "Wp-mail"
1892
- #~ msgstr "Wp-mail"
1893
-
1894
- #~ msgid "You can use the wp_mail function for mailing"
1895
- #~ msgstr ""
1896
- #~ "Pour envoyer l'e-mail, vous pouvez utiliser la fonction wp_mail de "
1897
- #~ "wordpress"
1898
-
1899
- #~ msgid "Mail"
1900
- #~ msgstr "E-mail"
1901
-
1902
- #~ msgid "To send mail you can use the php mail function"
1903
- #~ msgstr "Pour envoyer l'e-mail, vous pouvez utiliser la fonction mail de php"
1904
-
1905
- #~ msgid "Change text of the 'FROM' field"
1906
- #~ msgstr "Modifier le texte pour le champ 'FROM' du courriel"
1907
-
1908
- #~ msgid "Enter the email address in the 'From' field"
1909
- #~ msgstr "Sélectionner l'adresse e-mail pour le champ 'FROM' du courriel"
1910
-
1911
- #~ msgid "User email"
1912
- #~ msgstr "E-mail de l'utlisateur"
1913
-
1914
- #~ msgid ""
1915
- #~ "The email address of the user who fills the form will be used in the "
1916
- #~ "field 'From'."
1917
- #~ msgstr ""
1918
- #~ "Dans le champ 'From' du courriel, il sera utilisé l'adresse e-mail de "
1919
- #~ "l'utlisateur qui rempli le formulaire."
1920
-
1921
- #~ msgid "This email address will be used in the 'From' field."
1922
- #~ msgstr "Dans le champ 'FROM', cette adresse e-mail sera utilisée."
1923
-
1924
- #~ msgid "Display fields"
1925
- #~ msgstr "Afficher le texte"
1926
-
1927
- #~ msgid "Address"
1928
- #~ msgstr "Adresse"
1929
-
1930
- #~ msgid "Phone"
1931
- #~ msgstr "Téléphone"
1932
-
1933
- #~ msgid "Attachment block"
1934
- #~ msgstr "Bloc pièce-jointe"
1935
-
1936
- #~ msgid "Users can attach the following file formats"
1937
- #~ msgstr "Les utilisateurs peuvent joindre des documents des types suivants"
1938
-
1939
- #~ msgid "Captcha"
1940
- #~ msgstr "Captcha"
1941
-
1942
- #~ msgid "(powered by bestwebsoft.com)"
1943
- #~ msgstr "(fourni par bestwebsoft.com)"
1944
-
1945
- #~ msgid "Download captcha"
1946
- #~ msgstr "Télécharger le captcha"
1947
-
1948
- #, fuzzy
1949
- #~ msgid "Display tips below the Attachment block"
1950
- #~ msgstr "Afficher les explications après le bloc des pièces jointes"
1951
-
1952
- #, fuzzy
1953
- #~ msgid "Display 'Send me a copy' block"
1954
- #~ msgstr "S'envoyer une copie"
1955
-
1956
- #~ msgid "Name"
1957
- #~ msgstr "Nom"
1958
-
1959
- #~ msgid "Email Address"
1960
- #~ msgstr "Adresse e-mail"
1961
-
1962
- #~ msgid "Subject"
1963
- #~ msgstr "Sujet"
1964
-
1965
- #~ msgid "Message"
1966
- #~ msgstr "Message"
1967
-
1968
- #~ msgid "Display additional info in the email"
1969
- #~ msgstr "Afficher les informations complémentaires dans le courriel"
1970
-
1971
- #~ msgid "Sent from (ip address)"
1972
- #~ msgstr "Envoyé de (adresse IP)"
1973
-
1974
- #, fuzzy
1975
- #~ msgid "Example: Sent from (IP address):\t127.0.0.1"
1976
- #~ msgstr "Envoyé de (adresse IP)"
1977
-
1978
- #~ msgid "Date/Time"
1979
- #~ msgstr "Date/Heure"
1980
-
1981
- #~ msgid "Sent from (referer)"
1982
- #~ msgstr "Envoyer de (référence)"
1983
-
1984
- #~ msgid "Using (user agent)"
1985
- #~ msgstr "Depuis (navigateur)"
1986
-
1987
- #~ msgid "Language settings for the field names in the form"
1988
- #~ msgstr "Définition des langues pour les titres des champs"
1989
-
1990
- #~ msgid "Add a language"
1991
- #~ msgstr "Ajouter une langue"
1992
-
1993
- #~ msgid "Change the names of the contact form fields and error messages"
1994
- #~ msgstr ""
1995
- #~ "Modifier le texte pour les champs du formulaire de contact et les "
1996
- #~ "messages d'erreur"
1997
-
1998
- #~ msgid "English"
1999
- #~ msgstr "Anglais"
2000
-
2001
- #~ msgid "Error message for the Name field"
2002
- #~ msgstr "Message d'erreur pour le champ nom"
2003
-
2004
- #~ msgid "Error message for the Address field"
2005
- #~ msgstr "Message d'erreur pour le champ Adresse"
2006
-
2007
- #~ msgid "Error message for the Email field"
2008
- #~ msgstr "Message d'erreur pour le champ e-mail"
2009
-
2010
- #~ msgid "Error message for the Phone field"
2011
- #~ msgstr "Message d'erreur pour le champ téléphone"
2012
-
2013
- #~ msgid "Error message for the Subject field"
2014
- #~ msgstr "Message d'erreur pour le champ sujet"
2015
-
2016
- #~ msgid "Error message for the Message field"
2017
- #~ msgstr "Message d'erreur pour le champ message"
2018
-
2019
- #~ msgid "Error message about the file type for the Attachment field"
2020
- #~ msgstr "Message d'erreur pour le champ fichier joint (type du fichier)"
2021
-
2022
- #~ msgid ""
2023
- #~ "Error message while uploading a file for the Attachment field to the "
2024
- #~ "server"
2025
- #~ msgstr ""
2026
- #~ "Message d'erreur pour le champ fichier joint (problème d'envoie vers le "
2027
- #~ "serveur)"
2028
-
2029
- #~ msgid "Error message while moving the file for the Attachment field"
2030
- #~ msgstr ""
2031
- #~ "Message d'erreur pour le champ fichier joint (déplacement du fichier)"
2032
-
2033
- #~ msgid ""
2034
- #~ "Error message when file size limit for the Attachment field is exceeded"
2035
- #~ msgstr ""
2036
- #~ "Message d'erreur pour le champ fichier joint (taille limite du fichier "
2037
- #~ "atteinte)"
2038
-
2039
- #~ msgid "Error message for the Captcha field"
2040
- #~ msgstr "Message d'erreur pour le captcha"
2041
-
2042
- #~ msgid "Error message for the whole form"
2043
- #~ msgstr "Message d'erreur demandant à compléter les champs manquants"
2044
-
2045
- #~ msgid "for this language"
2046
- #~ msgstr "pour cette langue"
2047
-
2048
- #~ msgid "Action after email is sent"
2049
- #~ msgstr "Action après l'envoie de l'e-mail"
2050
-
2051
- #~ msgid "Display text"
2052
- #~ msgstr "Afficher le texte"
2053
-
2054
- #~ msgid "Text"
2055
- #~ msgstr "Texte"
2056
-
2057
- #~ msgid "Url"
2058
- #~ msgstr "Url"
2059
-
2060
- #~ msgid "Contact Form Pro | Extra Settings"
2061
- #~ msgstr "Formulaire Pro de Contact | Options supplémentaires"
2062
-
2063
- #~ msgid ""
2064
- #~ "This functionality is available in the Pro version of the plugin. For "
2065
- #~ "more details, please follow the link"
2066
- #~ msgstr ""
2067
- #~ "Cette fonctionalité est disponible dans le version Pro de cette "
2068
- #~ "extension. Pour plus de détails, merci de suivre ce lien"
2069
-
2070
- #~ msgid "Errors output"
2071
- #~ msgstr "Affichage des erreurs"
2072
-
2073
- #~ msgid "Display error messages"
2074
- #~ msgstr "Aficher les messages d'erreur"
2075
-
2076
- #~ msgid "Color of the input field errors."
2077
- #~ msgstr "Mettre en couleur les champs ayant des erreurs"
2078
-
2079
- #~ msgid "Display error messages & color of the input field errors"
2080
- #~ msgstr ""
2081
- #~ "Afficher les messages d'erreur et mettre en couleur les champs ayant des "
2082
- #~ "erreurs"
2083
-
2084
- #~ msgid "Add placeholder to the input blocks"
2085
- #~ msgstr "Ajouter la localisation dans le bloc de saisie"
2086
-
2087
- #~ msgid "Add tooltips"
2088
- #~ msgstr "Ajouter les conseils"
2089
-
2090
- #~ msgid "Email address"
2091
- #~ msgstr "Adresse e-mail"
2092
-
2093
- #~ msgid "Phone Number"
2094
- #~ msgstr "Téléphone"
2095
-
2096
- #~ msgid "Attachment"
2097
- #~ msgstr "Pièce-jointe"
2098
-
2099
- #~ msgid "Style options"
2100
- #~ msgstr "Options de style"
2101
-
2102
- #~ msgid "Text color"
2103
- #~ msgstr "Couleur du texte"
2104
-
2105
- #~ msgid "Default"
2106
- #~ msgstr "Défaut"
2107
-
2108
- #~ msgid "Label text color"
2109
- #~ msgstr "Couleur des textes des intitulés"
2110
-
2111
- #~ msgid "Placeholder color"
2112
- #~ msgstr "Couleur pour la localisation"
2113
-
2114
- #~ msgid "Errors color"
2115
- #~ msgstr "Couleur pour les erreurs"
2116
-
2117
- #~ msgid "Error text color"
2118
- #~ msgstr "Couleur pour le texte des erreurs"
2119
-
2120
- #~ msgid "Background color of the input field errors"
2121
- #~ msgstr "Couleur de fond pour les erreurs de saisie dans les champs"
2122
-
2123
- #~ msgid "Border color of the input field errors"
2124
- #~ msgstr "Couleur de la bordure pour les erreurs de saisie dans les champs"
2125
-
2126
- #~ msgid "Placeholder color of the input field errors"
2127
- #~ msgstr "Couleur pour la localisation lors d'une erreur de saisie du champ"
2128
-
2129
- #~ msgid "Input fields"
2130
- #~ msgstr "Champs de saisie"
2131
-
2132
- #~ msgid "Input fields background color"
2133
- #~ msgstr "Couleur de fond pour les champs de saisie"
2134
-
2135
- #~ msgid "Text fields color"
2136
- #~ msgstr "Couleur pour les textes des champs de saisie"
2137
-
2138
- #~ msgid "Border width in px, numbers only"
2139
- #~ msgstr "Largeur des bordures en px, nombre seulement"
2140
-
2141
- #~ msgid "Border color"
2142
- #~ msgstr "Couleur des bordures"
2143
-
2144
- #~ msgid "Width in px, numbers only"
2145
- #~ msgstr "Largeur en px, nombre seulement"
2146
-
2147
- #~ msgid "Button color"
2148
- #~ msgstr "Couleur du bouton"
2149
-
2150
- #~ msgid "Button text color"
2151
- #~ msgstr "Couleur du texte du bouton"
2152
-
2153
- #~ msgid "Contact Form Pro | Preview"
2154
- #~ msgstr "Formulaire Pro de Contact | Prévisualisation"
2155
-
2156
- #~ msgid "Show with errors"
2157
- #~ msgstr "Afficher avec les erreurs"
2158
-
2159
- #~ msgid "Please enter your full name..."
2160
- #~ msgstr "Merci de saisir votre nom..."
2161
-
2162
- #~ msgid "Please enter your address..."
2163
- #~ msgstr "Merci de saisir votre adresse..."
2164
-
2165
- #~ msgid "Please enter your email address..."
2166
- #~ msgstr "Merci de saisir votre adresse e-mail..."
2167
-
2168
- #~ msgid "Please enter your phone number..."
2169
- #~ msgstr "Merci de saisir votre numéro de téléphone..."
2170
-
2171
- #~ msgid "Please enter subject..."
2172
- #~ msgstr "Merci de saisir le sujet..."
2173
-
2174
- #~ msgid ""
2175
- #~ "Supported file types: HTML, TXT, CSS, GIF, PNG, JPEG, JPG, TIFF, BMP, AI, "
2176
- #~ "EPS, PS, RTF, PDF, DOC, DOCX, XLS, ZIP, RAR, WAV, MP3, PPT. Max file "
2177
- #~ "size: 2MB"
2178
- #~ msgstr ""
2179
- #~ "Types de fichiers autorisés: HTML, TXT, CSS, GIF, PNG, JPEG, JPG, TIFF, "
2180
- #~ "BMP, AI, EPS, PS, RTF, PDF, DOC, DOCX, XLS, ZIP, RAR, WAV, MP3, PPT. "
2181
- #~ "Taille maximum 2MB"
2182
-
2183
- #~ msgid "You can attach the following file formats"
2184
- #~ msgstr "Vous pouvez joindre des fichiers aux formats suivants"
2185
-
2186
- #~ msgid "Contact from"
2187
- #~ msgstr "Contact de"
2188
-
2189
- #~ msgid "Email"
2190
- #~ msgstr "E-mail"
2191
-
2192
- #~ msgid "Site"
2193
- #~ msgstr "Site"
2194
-
2195
- #~ msgid ""
2196
- #~ "If you can see this MIME, it means that the MIME type is not supported by "
2197
- #~ "your email client!"
2198
- #~ msgstr ""
2199
- #~ "Si vous voyez ce MIME c'est que votre navigateur n'accepte pas ce type de "
2200
- #~ "MIME !"
2201
-
2202
- #~ msgid "Display Attachment tips"
2203
- #~ msgstr "Afficher les explications sur les pièces jointes"
2204
-
2205
- #~ msgid "Display a phone number field"
2206
- #~ msgstr "Afficher le champ téléphone"
2207
-
2208
- #~ msgid "Please enter a valid email address. Settings are not saved."
2209
- #~ msgstr ""
2210
- #~ "Merci de saisir une adresse e-mail valide. Les modifications ne sont pas "
2211
- #~ "sauvegardées."
2212
-
2213
- #~ msgid "E-Mail Address"
2214
- #~ msgstr "Adresse e-mail"
2215
-
2216
- #, fuzzy
2217
- #~ msgid ""
2218
- #~ "If you would like to add a Contact Form to your website, just copy and "
2219
- #~ "put this shortcode onto your post or page:"
2220
- #~ msgstr ""
2221
- #~ "Si vous souhaiter ajouter un formulaire de contact à votre site web, "
2222
- #~ "copiez juste ce code dans un article ou sur une page ou un widget:"
2223
-
2224
- #, fuzzy
2225
- #~ msgid "Thank you for contact."
2226
- #~ msgstr "Merci de nous avoir contacté."
2227
-
2228
- #, fuzzy
2229
- #~ msgid "Set a name of user wo will get messages from a contact form."
2230
- #~ msgstr ""
2231
- #~ "Choisir le nom d'utilisateur qui recevra les messages envoyés depuis le "
2232
- #~ "formulaire de contact."
2233
-
2234
- #~ msgid "E-Mail Addresse:"
2235
- #~ msgstr "Indirizzo e-mail:"
2
  msgstr ""
3
  "Project-Id-Version: bestwebsoft\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2018-01-26 12:09+0100\n"
6
+ "PO-Revision-Date: 2018-03-02 10:06+0200\n"
7
  "Last-Translator: Luc Capronnier <lcapronnier@yahoo.com>\n"
8
  "Language-Team: Luc Capronnier <lcapronnier@yahoo.com>\n"
 
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
+ "Language: fr_FR\n"
13
+ "X-Poedit-KeywordsList: __;_e\n"
14
  "X-Poedit-Basepath: ..\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "Plural-Forms: nplurals=2;plural=n>2;\n"
22
  msgstr "obligatoire"
23
 
24
  #: bws_functions.php:75
25
+ msgid "or higher, that is why it has been deactivated! Please upgrade WordPress and try again."
26
+ msgstr "ou supérieure, c&rsquo;est pourquoi il a été désactivé&nbsp;! Merci de faire la mise à jour de WordPress puis de ré-essayer."
 
 
 
 
27
 
28
  #: bws_functions.php:76
29
  msgid "Back to the WordPress"
35
 
36
  #: bws_functions.php:92
37
  msgid "Like the plugin?"
38
+ msgstr "Voter pour l&rsquo;extension"
39
 
40
  #: bws_functions.php:93
41
  #, php-format
42
  msgid "%s reviews"
43
+ msgstr "%s appréciations"
44
 
45
  #: bws_functions.php:94
46
  msgid "Rate it"
48
 
49
  #: bws_functions.php:103
50
  msgid "Need help?"
51
+ msgstr "Besoin d&rsquo;aide&nbsp;?"
52
 
53
+ #: bws_functions.php:104 bws_functions.php:919 class-bws-settings.php:1058
54
  msgid "Visit Help Center"
55
  msgstr "Visiter le site du support"
56
 
57
  #: bws_functions.php:107
58
  msgid "Want to support the plugin?"
59
+ msgstr "Voter pour l&rsquo;extension"
60
 
61
  #: bws_functions.php:108 bws_menu.php:560
62
  msgid "Donate"
64
 
65
  #: bws_functions.php:128
66
  msgid "WARNING: Illegal use notification"
67
+ msgstr "AVERTISSEMENT&nbsp;: Notification d&rsquo;utilisation abusive"
68
 
69
  #: bws_functions.php:128
70
+ msgid "You can use one license of the Pro plugin for one domain only. Please check and edit your license or domain if necessary using your personal Client Area. We strongly recommend you to solve the problem within 24 hours, otherwise the Pro plugin will be deactivated."
71
+ msgstr "Vous ne pouvez utilisez qu&rsquo;une licence de la version Pro de l&rsquo;extension pour un seul domaine. Merci de vérifier et de modifier votre licence ou votre domaine si nécessaire en utilisant votre zone client. Nous vous recommandons de résoudre ce problème dans les 24 heures, sinon l&rsquo;extension sera rendue inactive."
 
 
 
 
72
 
73
  #: bws_functions.php:128 bws_functions.php:341 bws_menu.php:631
74
  #: class-bws-settings.php:144
76
  msgstr "En savoir plus"
77
 
78
  #: bws_functions.php:145
79
+ msgid "Notice: Your Pro Trial license has expired. To continue using the plugin, you should buy a Pro license"
80
+ msgstr "Information&nbsp;:Votre licence d&rsquo;évaluation est terminée. Pour continuer à utiliser cette extension, vous devez acheter une licence PRO."
 
 
 
 
81
 
82
  #: bws_functions.php:147
83
+ msgid "Your license has expired. To continue getting top-priority support and plugin updates, you should extend it."
84
+ msgstr "Votre licence est terminée. Pour continuer à disposer du support rapide et des mises à jour de l&rsquo;extension vous devez la renouveler."
 
 
 
 
85
 
86
  #: bws_functions.php:147 bws_functions.php:389 deprecated.php:586
87
  msgid "Learn more"
90
  #: bws_functions.php:165
91
  #, php-format
92
  msgid "Notice: You are using the Pro Trial license of %s plugin."
93
+ msgstr "Avertissement&nbsp;: vous utilisez la version d&rsquo;évaluation de l&rsquo;extension %s."
 
94
 
95
  #: bws_functions.php:167
96
  msgid "Notice: You are using the Pro Trial license of plugin."
97
+ msgstr "Avertissement&nbsp;: vous utilisez la version d&rsquo;évaluation de l&rsquo;extension."
98
 
99
  #: bws_functions.php:170
100
  msgid "The Pro Trial license will expire on"
101
+ msgstr "La licence PRO d&rsquo;évaluation expirera le"
102
 
103
  #: bws_functions.php:193
104
+ msgid "or higher! We do not guarantee that our plugin will work correctly. Please upgrade to WordPress latest version."
105
+ msgstr "ou plus&nbsp;! Nous ne garantissons pas que notre extension fonctionne correctement. Merci de mettre à jour WordPress avec la dernière version."
 
 
 
 
106
 
107
  #: bws_functions.php:208
108
  #, php-format
109
  msgid "Thank you for installing %s plugin!"
110
+ msgstr "Merci d&rsquo;avoir installé l&rsquo;extension %s&nbsp;!"
111
 
112
  #: bws_functions.php:210
113
  msgid "Let's get started"
116
  #: bws_functions.php:211 bws_functions.php:244 bws_menu.php:564
117
  #: bws_menu.php:566
118
  msgid "Settings"
119
+ msgstr "Paramètres"
120
 
121
  #: bws_functions.php:213 bws_menu.php:326 class-bws-settings.php:747
122
  #: class-bws-settings.php:1060 class-bws-settings.php:1070 deprecated.php:697
130
  #: bws_functions.php:218 bws_functions.php:228 bws_functions.php:332
131
  #: bws_functions.php:385 bws_functions.php:487
132
  msgid "Close notice"
133
+ msgstr "Effacer l&rsquo;avertissement"
134
 
135
  #: bws_functions.php:233
136
  msgid "Thank you for installing plugins by BestWebSoft!"
137
+ msgstr "Merci d&rsquo;avoir installé des extensions de BestWebSoft&nbsp;!"
138
 
139
  #: bws_functions.php:235
140
  msgid "More Details"
149
  msgstr "Une ou des fonction(s) obsolètes sont utilisées sur ce site ici&nbsp;:"
150
 
151
  #: bws_functions.php:278
152
+ msgid "This function(-s) will be removed over time. Please update the product(-s)."
153
+ msgstr "Ces fonctions seront supprimées rapidement. Merci de mettre à jour vos produits."
 
 
 
154
 
155
  #: bws_functions.php:337
156
  msgid "It’s time to upgrade your"
157
+ msgstr "C&rsquo;est le moment de mettre à jour votre "
158
 
159
  #: bws_functions.php:337
160
  msgid "to"
162
 
163
  #: bws_functions.php:337
164
  msgid "version!"
165
+ msgstr "version&nbsp;!"
166
 
167
  #: bws_functions.php:338
168
  msgid "Extend standard plugin functionality with new great options."
169
+ msgstr "Étend les fonctionnalités classiques de l&rsquo;extension avec des nouvelles options."
 
 
170
 
171
  #: bws_functions.php:389
172
  #, php-format
173
+ msgid "Your license key for %s expires on %s and you won't be granted TOP-PRIORITY SUPPORT or UPDATES."
174
+ msgstr "Votre clé de licence pour %s est terminée le %s et vous ne disposerez plus du support rapide et des mises à jour."
 
 
 
 
175
 
176
  #: bws_functions.php:482
177
  #, php-format
178
  msgid "Thank you for choosing %s plugin!"
179
+ msgstr "Merci d&rsquo;avoir choisi l&rsquo;extension %s&nbsp;!"
180
 
181
  #: bws_functions.php:483
182
+ msgid "If you have a feature, suggestion or idea you'd like to see in the plugin, we'd love to hear about it!"
183
+ msgstr "Si vous avez une fonctionnalité, une suggestion ou une idée que vous souhaitez pour cette extension, nous serons ravis d&rsquo;en parler avec vous&nbsp;!"
 
 
 
 
184
 
185
  #: bws_functions.php:484
186
  msgid "Suggest a Feature"
193
 
194
  #: bws_functions.php:500
195
  msgid "The plugin's settings have been changed."
196
+ msgstr "Les paramètres de l&rsquo;extension ont été modifiés."
197
 
198
  #: bws_functions.php:501 class-bws-settings.php:183 class-bws-settings.php:203
199
  #: deprecated.php:642
201
  msgstr "Enregistrer les modifications"
202
 
203
  #: bws_functions.php:515
204
+ msgid "You can always look at premium options by checking the \"Pro Options\" in the \"Misc\" tab."
205
+ msgstr "Vous pouvez toujours consulter les options premium en cliquant sur le lien \"Voir les fonctionnalités de la version PRO\" dans l&rsquo;onglet divers."
 
 
 
 
 
 
 
 
 
 
 
 
206
 
207
  #: bws_functions.php:673
208
  msgid "Add shortcode"
218
 
219
  #: bws_functions.php:821
220
  msgid "Are you sure you want to restore default settings?"
221
+ msgstr "Êtes vous sûr de vouloir remettre toutes les valeurs par défaut&nbsp;?"
222
 
223
  #: bws_functions.php:824
224
  msgid "Yes, restore all settings"
240
  msgid "The shortcode will be inserted"
241
  msgstr "Le code court sera inséré"
242
 
243
+ #: bws_functions.php:924
244
  msgid "FAQ"
245
  msgstr "FAQ"
246
 
247
+ #: bws_functions.php:930
248
  msgid "For more information:"
249
+ msgstr "Pour plus d&rsquo;informations&nbsp;:"
250
 
251
+ #: bws_functions.php:931
252
  msgid "Documentation"
253
  msgstr "Documentation"
254
 
255
+ #: bws_functions.php:932
256
  msgid "Video Instructions"
257
  msgstr "Vidéo explicative"
258
 
259
+ #: bws_functions.php:933
260
  msgid "Submit a Request"
261
  msgstr "Soumettre une requête"
262
 
267
  #: bws_menu.php:122 class-bws-settings.php:818 class-bws-settings.php:885
268
  #: class-bws-settings.php:921 deprecated.php:133 deprecated.php:199
269
  #: deprecated.php:353
270
+ msgid "Something went wrong. Please try again later. If the error appears again, please contact us"
271
+ msgstr "Il est survenu une erreur. Essayer de nouveau. Si l&rsquo;erreur se produit de nouveau, merci de contacter <a href=http://support.bestwebsoft.com>BestWebSoft</a>. Nous sommes désolés pour le désagrément."
 
 
 
 
 
272
 
273
  #: bws_menu.php:122 class-bws-settings.php:818 class-bws-settings.php:885
274
  #: class-bws-settings.php:921 deprecated.php:133 deprecated.php:199
282
  msgstr "Clé de licence incorrecte."
283
 
284
  #: bws_menu.php:130
285
+ msgid "This license key is bound to another site. Change it via personal Client Area."
286
+ msgstr "La clé de licence correspond à un autre site. Modifier au travers de votre espace client."
 
 
 
 
287
 
288
  #: bws_menu.php:130
289
  msgid "Log in"
291
 
292
  #: bws_menu.php:132 bws_menu.php:332 deprecated.php:261
293
  msgid "Unfortunately, you have exceeded the number of available tries per day."
294
+ msgstr "Désoler mais vous avez dépassé le nombre d&rsquo;essai de la journée. Merci de télécharger l&rsquo;extension manuellement."
 
 
295
 
296
  #: bws_menu.php:134 deprecated.php:365
297
  #, php-format
298
+ msgid "Unfortunately, Your license has expired. To continue getting top-priority support and plugin updates, you should extend it in your %s"
299
+ msgstr "Désoler, votre licence est terminée. Pour continuer à disposer du support rapide et des mises à jour de l&rsquo;extension vous devez la renouveler dans votre %s"
 
 
 
 
 
300
 
301
  #: bws_menu.php:136 class-bws-settings.php:935 deprecated.php:367
302
+ msgid "Unfortunately, the Pro licence was already installed to this domain. The Pro Trial license can be installed only once."
303
+ msgstr "Une licence a déjà été installée sur ce domaine. La licence d&rsquo;évaluation ne peut-être installée qu&rsquo;une seule fois."
 
 
 
 
304
 
305
  #: bws_menu.php:142 class-bws-settings.php:839 deprecated.php:153
306
  msgid "The license key is valid."
312
 
313
  #: bws_menu.php:146
314
  msgid "Congratulations! Pro Membership license is activated successfully."
315
+ msgstr "Félicitations&nbsp;! La version PRO de cette extension a été activée avec succès."
316
 
317
  #: bws_menu.php:153 class-bws-settings.php:1007 deprecated.php:436
318
+ msgid "Something went wrong. Try again later or upload the plugin manually. We are sorry for inconvenience."
319
+ msgstr "Il est survenu une erreur. Essayer de nouveau ou bien télécharger l&rsquo;extension manuellement.Nous sommes désolés pour le désagrément."
 
 
 
 
320
 
321
  #: bws_menu.php:163
322
  msgid "Please enter your license key."
386
 
387
  #: bws_menu.php:207
388
  msgid "Server Environment"
389
+ msgstr "Environnent serveur"
390
 
391
  #: bws_menu.php:209
392
  msgid "Operating System"
467
  #: bws_menu.php:262
468
  #, php-format
469
  msgid "Email with system info is sent to %s."
470
+ msgstr "Le courriel avec les informations système est envoyé à %s."
471
 
472
  #: bws_menu.php:266
473
  msgid "Thank you for contacting us."
475
 
476
  #: bws_menu.php:289
477
  msgid "Sorry, email message could not be delivered."
478
+ msgstr "Désolé, votre e-mail n&rsquo;a pas pu être envoyé."
479
 
480
  #: bws_menu.php:305 bws_menu.php:309 bws_menu.php:358 deprecated.php:91
481
  msgid "Plugins"
495
 
496
  #: bws_menu.php:316
497
  msgid "Manage purchased licenses & subscriptions"
498
+ msgstr "Gérer les licences et les inscriptions"
499
 
500
  #: bws_menu.php:324
501
  #, php-format
502
  msgid "Get Access to %s+ Premium Plugins"
503
+ msgstr "Accéder à plus de %s extensions premiums"
504
 
505
  #: bws_menu.php:326
506
  msgid "Subscribe to Pro Membership"
523
 
524
  #: bws_menu.php:359
525
  msgid "Upload Plugin"
526
+ msgstr "Charger l&rsquo;extension"
527
 
528
  #: bws_menu.php:363
529
  #, php-format
530
+ msgid "The plugin generated %d characters of <strong>unexpected output</strong> during activation. If you notice &#8220;headers already sent&#8221; messages, problems with syndication feeds or other issues, try deactivating or removing this plugin."
531
+ msgstr "Cette extension a produit %d caractères <strong>inattendus</strong> durant l&rsquo;activation. Si vous constatez le message &#8220;headers already sent&#8221;, des problèmes avec les flux de syndication ou autres, essayez de désactiver l&rsquo;extension ou supprimer l&rsquo;extension."
 
 
 
 
 
 
 
 
532
 
533
  #: bws_menu.php:365
534
+ msgid "Plugin could not be activated because it triggered a <strong>fatal error</strong>."
535
+ msgstr "L&rsquo;extension ne peut pas être activée car une <strong>erreur fatale</strong> a été détectée."
 
 
 
 
536
 
537
  #: bws_menu.php:368
538
  msgid "Plugin <strong>activated</strong>."
540
 
541
  #: bws_menu.php:375
542
  msgid "Installing Plugin"
543
+ msgstr "Extension installée"
544
 
545
  #: bws_menu.php:381
546
  msgid "Downloading install package from"
547
+ msgstr "Télécharger le paquet d&rsquo;installation depuis"
548
 
549
  #: bws_menu.php:398 bws_menu.php:429 bws_menu.php:440 deprecated.php:388
550
  #: deprecated.php:410 deprecated.php:432
551
  msgid "Failed to download the zip archive. Please, upload the plugin manually"
552
+ msgstr "Erreur de téléchargement de l&rsquo;archive ZIP. Merci de télécharger l&rsquo;extension manuellement."
 
 
553
 
554
  #: bws_menu.php:406
555
  msgid "Unpacking the package"
557
 
558
  #: bws_menu.php:411 bws_menu.php:419
559
  msgid "Installing the plugin"
560
+ msgstr "Installer l&rsquo;extension"
561
 
562
  #: bws_menu.php:415 deprecated.php:400
563
  msgid "Failed to open the zip archive. Please, upload the plugin manually"
564
+ msgstr "Erreur d&rsquo;ouverture de l&rsquo;archive zip. Merci de télécharger l&rsquo;extension manuellement."
 
 
565
 
566
  #: bws_menu.php:422 deprecated.php:406
567
+ msgid "Your server does not support either ZipArchive or Phar. Please, upload the plugin manually"
568
+ msgstr "Votre serveur n&rsquo;a pas le support du format des archives ZIP ou Phar. Merci de télécharger l&rsquo;extension manuellement."
 
 
 
 
569
 
570
  #: bws_menu.php:425
571
  #, php-format
572
  msgid "The plugin %s is successfully installed."
573
+ msgstr "L&rsquo;extension %s a été installée avec succès."
574
 
575
  #: bws_menu.php:432 deprecated.php:413
576
  msgid "UploadDir is not writable. Please, upload the plugin manually"
577
+ msgstr "Erreur d&rsquo;ouverture de l&rsquo;archive zip. Merci de télécharger l&rsquo;extension manuellement."
 
 
578
 
579
  #: bws_menu.php:437
580
  msgid "Activate Plugin"
581
+ msgstr "Activer l&rsquo;extension"
582
 
583
  #: bws_menu.php:437 bws_menu.php:443
584
  msgid "Return to BestWebSoft Panel"
585
+ msgstr "Retourner à l&rsquo;administration BestWebSoft"
586
 
587
  #: bws_menu.php:451 bws_menu.php:471 bws_menu.php:600
588
  msgid "All"
635
 
636
  #: bws_menu.php:591
637
  msgid "Nothing found. Try another criteria."
638
+ msgstr "Pas de réponse. Essayer d&rsquo;autres critères."
639
 
640
  #: bws_menu.php:628
641
  #, php-format
648
 
649
  #: bws_menu.php:645
650
  msgid "Browse More WordPress Themes"
651
+ msgstr "Parcourir les thèmes gratuits pour WordPress"
652
 
653
  #: bws_menu.php:654
654
  msgid "Send to support"
702
 
703
  #: class-bws-settings.php:285
704
  msgid "All plugin settings were restored."
705
+ msgstr "Les paramètres de l&rsquo;extension ont été remis aux valeurs d&rsquo;origine."
706
 
707
  #: class-bws-settings.php:423
708
  msgid "Custom Code"
710
 
711
  #: class-bws-settings.php:427 deprecated.php:498
712
  msgid "You do not have sufficient permissions to edit plugins for this site."
713
+ msgstr "Vous n&rsquo;avez pas assez de droits pour modifier l&rsquo;extension pour ce site."
 
714
 
715
  #: class-bws-settings.php:432 deprecated.php:620
716
  msgid "These styles will be added to the header on all pages of your site."
717
+ msgstr "Ces styles seront ajoutés aux entêtes sur tous les pages de votre site."
 
718
 
719
  #: class-bws-settings.php:435 deprecated.php:622
720
  #, php-format
721
+ msgid "This PHP code will be hooked to the %s action and will be printed on front end only."
722
+ msgstr "Ce code PHP sera rattaché à l&rsquo;action %s et sera affiché uniquement sur la partie publique."
 
 
 
 
723
 
724
  #: class-bws-settings.php:438
725
  msgid "These code will be added to the header on all pages of your site."
727
 
728
  #: class-bws-settings.php:446 deprecated.php:646
729
  #, php-format
730
+ msgid "You need to make this files writable before you can save your changes. See %s the Codex %s for more information."
731
+ msgstr "Vous devez rendre ce fichier modifiable avant de pouvoir enregistrer vos modifications. Regarder %s du Codex %s pour plus d&rsquo;informations."
 
 
 
 
732
 
733
  #: class-bws-settings.php:456 deprecated.php:628
734
  msgid "Browsing"
750
 
751
  #: class-bws-settings.php:540 class-bws-settings.php:595
752
  #, php-format
753
+ msgid "It is prohibited to change %s settings on this site in the %s network settings."
754
+ msgstr "Il est interdit de changer le paramètre %s sur ce site dans les paramètres %s du réseau."
 
 
 
 
755
 
756
  #: class-bws-settings.php:543 class-bws-settings.php:598
757
  #, php-format
758
+ msgid "It is prohibited to view %s settings on this site in the %s network settings."
759
+ msgstr "Il est interdit de voir le paramètre %s sur ce site dans les paramètres %s du réseau."
 
 
 
760
 
761
  #: class-bws-settings.php:552
762
  msgid "Pro Options"
764
 
765
  #: class-bws-settings.php:556
766
  msgid "Enable to display plugin Pro options."
767
+ msgstr "Activer pour voir les options PRO de l&rsquo;extension."
768
 
769
  #: class-bws-settings.php:562
770
  msgid "Track Usage"
771
+ msgstr "Suivi de l&rsquo;utilisation"
772
 
773
  #: class-bws-settings.php:566
774
+ msgid "Enable to allow tracking plugin usage anonymously in order to make it better."
775
+ msgstr "Activer pour autoriser le suivi de l&rsquo;utilisation de l&rsquo;extension de manière anonyme afin de la rendre meilleure."
 
 
 
776
 
777
  #: class-bws-settings.php:571
778
  msgid "Default Settings"
779
+ msgstr "Réglages par défaut"
780
 
781
  #: class-bws-settings.php:573
782
  msgid "Restore Settings"
784
 
785
  #: class-bws-settings.php:574
786
  msgid "This will restore plugin settings to defaults."
787
+ msgstr "Remettre les valeurs par défaut des paramètres de l&rsquo;extension."
788
 
789
  #: class-bws-settings.php:586
790
  msgid "Import / Export"
797
 
798
  #: class-bws-settings.php:725
799
  msgid "Congratulations! Pro license is activated successfully."
800
+ msgstr "Félicitations&nbsp;! La version PRO de cette extension a été activée avec succès."
 
801
 
802
  #: class-bws-settings.php:726
803
  #, php-format
804
  msgid "You will be automatically redirected to the %s in %s seconds."
805
+ msgstr "Vous allez être redirigé automatiquement vers %s dans %s secondes."
806
 
807
  #: class-bws-settings.php:726
808
  msgid "Settings page"
811
  #: class-bws-settings.php:741
812
  #, php-format
813
  msgid "Enter your license key to activate %s and get premium plugin features."
814
+ msgstr "Saisir votre clé de licence pour activer %s et obtenir les fonctionnalités premium."
 
 
815
 
816
  #: class-bws-settings.php:744 class-bws-settings.php:931 deprecated.php:363
817
  #: deprecated.php:706
818
+ msgid "Unfortunately, you have exceeded the number of available tries per day. Please, upload the plugin manually."
819
+ msgstr "Désoler mais vous avez dépassé le nombre d&rsquo;essai de la journée. Merci de télécharger l&rsquo;extension manuellement."
 
 
 
 
820
 
821
  #: class-bws-settings.php:747 deprecated.php:697
822
  #, php-format
823
  msgid "Start Your Free %s-Day Trial Now"
824
+ msgstr "Débuter votre licence d&rsquo;évaluation gratuite de %s jours"
825
 
826
  #: class-bws-settings.php:762
827
+ msgid "If necessary, you can check if the license key is correct or reenter it in the field below."
828
+ msgstr "Si nécessaire vous pouvez vérifier que la clé de licence est correcte ou la saisir de nouveau dans le champ ci-dessous."
 
 
 
 
829
 
830
  #: class-bws-settings.php:767
831
  msgid "Manage License Settings"
833
 
834
  #: class-bws-settings.php:769
835
  msgid "Login to Client Area"
836
+ msgstr "Se connecter à l&rsquo;espace client"
837
 
838
  #: class-bws-settings.php:771
839
+ msgid "Manage active licenses, download BWS products, and view your payment history using BestWebSoft Client Area."
840
+ msgstr "Gérer les licences actives, télécharger les produits BWS, et voir l&rsquo;historique de vos règlements dans l&rsquo;interface client de BestWebSoft."
 
 
 
 
841
 
842
  #: class-bws-settings.php:826 class-bws-settings.php:929 deprecated.php:141
843
  #: deprecated.php:361
845
  msgstr "La clé de licence correspond à un autre site."
846
 
847
  #: class-bws-settings.php:828 deprecated.php:143
848
+ msgid "This license key is valid, but Your license has expired. If you want to update our plugin in future, you should extend the license."
849
+ msgstr "La clé de licence est valide mais votre durée de validité est passée. Pour continuer à disposer du support rapide et des mises à jour de l&rsquo;extension vous devez la renouveller."
 
 
 
 
 
850
 
851
  #: class-bws-settings.php:830 deprecated.php:145
852
  msgid "Unfortunately, you have exceeded the number of available tries."
853
+ msgstr "Désoler mais vous avez dépassé le nombre d&rsquo;essai de la journée. Merci de télécharger l&rsquo;extension manuellement."
 
 
854
 
855
  #: class-bws-settings.php:832 deprecated.php:147
856
+ msgid "Unfortunately, the Pro Trial licence was already installed to this domain. The Pro Trial license can be installed only once."
857
+ msgstr "Une licence a déjà été installée sur ce domaine. La licence d&rsquo;évaluation ne peut-être installée qu&rsquo;une seule fois."
 
 
 
 
858
 
859
  #: class-bws-settings.php:837 deprecated.php:151
860
  msgid "The Pro Trial license key is valid."
861
+ msgstr "La clé de licence d&rsquo;évaluation est valide."
862
 
863
  #: class-bws-settings.php:845 deprecated.php:159 deprecated.php:246
864
  #, php-format
865
+ msgid "In order to continue using the plugin it is necessary to buy a %s license."
866
+ msgstr "Afin de pouvoir continuer à utiliser cette extension il est nécessaire d&rsquo;acheter une licence %s."
 
 
 
867
 
868
  #: class-bws-settings.php:933
869
  #, php-format
870
+ msgid "Unfortunately, Your license has expired. To continue getting top-priority support and plugin updates, you should extend it in your %s."
871
+ msgstr "Désoler, votre licence est terminée. Pour continuer à disposer du support rapide et des mises à jour de l&rsquo;extension vous devez la renouveler dans votre %s."
 
 
872
 
873
  #: class-bws-settings.php:959 class-bws-settings.php:981
874
  #: class-bws-settings.php:1003
875
  msgid "Failed to download the zip archive. Please, upload the plugin manually."
876
+ msgstr "Erreur de téléchargement de l&rsquo;archive ZIP. Merci de télécharger l&rsquo;extension manuellement."
877
 
878
  #: class-bws-settings.php:971
879
  msgid "Failed to open the zip archive. Please, upload the plugin manually."
880
+ msgstr "Erreur d&rsquo;ouverture de l&rsquo;archive zip. Merci de télécharger l&rsquo;extension manuellement."
881
 
882
  #: class-bws-settings.php:977
883
+ msgid "Your server does not support either ZipArchive or Phar. Please, upload the plugin manually."
884
+ msgstr "Votre serveur n&rsquo;a pas le support du format des archives ZIP ou Phar. Merci de télécharger l&rsquo;extension manuellement."
 
 
885
 
886
  #: class-bws-settings.php:984
887
  msgid "UploadDir is not writable. Please, upload the plugin manually."
888
+ msgstr "Le répertoire de destination n&rsquo;est pas disponible en écriture. Merci de télécharger l&rsquo;extension manuellement."
889
 
890
  #: class-bws-settings.php:1042 deprecated.php:464
891
  msgid "Please, enter Your license key"
893
 
894
  #: class-bws-settings.php:1054
895
  msgid "Need Help?"
896
+ msgstr "Besoin d&rsquo;aide&nbsp;?"
897
 
898
  #: class-bws-settings.php:1056
899
  msgid "Read the Instruction"
905
 
906
  #: class-bws-settings.php:1071
907
  msgid "Start Your Free Trial"
908
+ msgstr "Débuter votre licence d&rsquo;évaluation gratuite"
909
 
910
  #: deactivation-form.php:27
911
  msgid "Need help? We are ready to answer your questions."
912
+ msgstr "Besoin d&rsquo;aide&nbsp;? Nous sommes prêts à répondre à vos questions."
913
 
914
  #: deactivation-form.php:27
915
  msgid "Contact Support"
916
+ msgstr "Contacter le support"
917
 
918
  #: deactivation-form.php:32
919
  msgid "The plugin is not working"
920
+ msgstr "L&rsquo;extension ne fonctionna pas"
921
 
922
  #: deactivation-form.php:34
923
  msgid "Kindly share what didn't work so we can fix it in future updates..."
924
+ msgstr "Merci de partager ce qui ne fonctionne pas afin que nous puissions le corriger dans une prochaine version..."
925
 
926
  #: deactivation-form.php:38
927
  msgid "The plugin didn't work as expected"
928
+ msgstr "L&rsquo;extension ne fonctionne pas comme prévue"
929
 
930
  #: deactivation-form.php:40
931
  msgid "What did you expect?"
932
+ msgstr "Quel est le fonctionnement attendu&nbsp;?"
933
 
934
  #: deactivation-form.php:44
935
  msgid "The plugin suddenly stopped working"
936
+ msgstr "L&rsquo;extension a subitement cessé de fonctionner"
937
 
938
  #: deactivation-form.php:51
939
  msgid "The plugin broke my site"
940
+ msgstr "L&rsquo;extension a cassé mon site"
941
 
942
  #: deactivation-form.php:58
943
  msgid "I couldn't understand how to get it work"
944
+ msgstr "Je n&rsquo;arrive pas à comprendre commen la faire fonctionner"
945
 
946
  #: deactivation-form.php:65
947
  msgid "I found a better plugin"
948
+ msgstr "J&rsquo;ai trouvé une meuilleure extension"
949
 
950
  #: deactivation-form.php:67
951
  msgid "What's the plugin name?"
952
+ msgstr "Quel est le nom de l&rsquo;extension&nbsp;?"
953
 
954
  #: deactivation-form.php:71
955
  msgid "The plugin is great, but I need specific feature that you don't support"
956
+ msgstr "L&rsquo;extension est magnifique, mais j&rsquo;ai besoin d&rsquo;une fonctionnalité spécifique que vous n&rsquo;offrez pas"
957
 
958
  #: deactivation-form.php:73
959
  msgid "What feature?"
960
+ msgstr "Quelle fonctionalité&nbsp;?"
961
 
962
  #: deactivation-form.php:77
963
  msgid "I no longer need the plugin"
964
+ msgstr "Je n&rsquo;ai plus besoin de cette extension"
965
 
966
  #: deactivation-form.php:83
967
  msgid "It's a temporary deactivation, I'm just debugging an issue"
968
+ msgstr "C&rsquo;est une désactivation temporaire, je suis entrain de résoudre un problème"
969
 
970
  #: deactivation-form.php:89
971
  msgid "Other"
973
 
974
  #: deactivation-form.php:123
975
  msgid "Quick Feedback"
976
+ msgstr "Retour rapide"
977
 
978
  #: deactivation-form.php:124
979
  msgid "If you have a moment, please let us know why you are deactivating"
980
+ msgstr "Si vous avez quelques instants, merci de nous dire pourquoi vous désactivez l&rsquo;extension"
981
 
982
  #: deactivation-form.php:127
983
  msgid "Send website data and allow to contact me back"
984
+ msgstr "Envoyer les informations sur le site et autorisez un contact en retour"
985
 
986
  #: deactivation-form.php:132
987
  msgid "Cancel"
988
+ msgstr "Annuler"
989
 
990
  #: deactivation-form.php:233
991
  msgid "Processing"
992
+ msgstr "En cours"
993
 
994
  #: deactivation-form.php:262
995
  msgid "Submit & Deactivate"
996
+ msgstr "Envoyer et désactiver"
997
 
998
  #: deactivation-form.php:277
999
  msgid "Please tell us the reason so we can improve it."
1000
+ msgstr "Merci de nous en dire la raison afin que nous puission l&rsquo;améliorer."
1001
 
1002
  #: deactivation-form.php:345
1003
  msgid "Deactivate"
1004
+ msgstr "Désactivé"
1005
 
1006
  #: deprecated.php:93
1007
  msgid "System Status"
1012
  msgstr "Merci de saisir votre clé de licence"
1013
 
1014
  #: deprecated.php:223
1015
+ msgid "If necessary, you can check if the license key is correct or reenter it in the field below. You can find your license key on your personal page - Client Area - on our website"
1016
+ msgstr "Si nécessaire vous pouvez vérifier que la clé de licence est correcte ou la saisir de nouveau dans le champ ci-dessous. Vous pouvez trouver votre clé de licence sur votre page personnelle (zone client) sur notre site web."
 
 
 
 
 
 
1017
 
1018
  #: deprecated.php:223
1019
+ msgid "(your username is the email address specified during the purchase). If necessary, please submit \"Lost your password?\" request."
1020
+ msgstr "(votre nom d&rsquo;utilisateur est l&rsquo;adresse e-mail que vous avez donnée lors de l&rsquo;achat de l&rsquo;extension). Si nécessaire, utilisez la fonction de demande de mot de passe perdu."
 
 
 
 
 
1021
 
1022
  #: deprecated.php:246
1023
  msgid "After that, you can activate it by entering your license key."
1024
+ msgstr " Après vous pouvez activer cette extension en donnant votre clé de licence."
 
1025
 
1026
  #: deprecated.php:249 deprecated.php:691
1027
  msgid "License key can be found in the"
1029
 
1030
  #: deprecated.php:251 deprecated.php:693
1031
  msgid "(your username is the email address specified during the purchase)."
1032
+ msgstr "(votre nom d&rsquo;utilisateur est l&rsquo;adresse e-mail que vous avez donnée lors de l&rsquo;achat de l&rsquo;extension)."
 
 
1033
 
1034
  #: deprecated.php:279
1035
+ msgid "Congratulations! The Pro license of the plugin is activated successfully."
1036
+ msgstr "Félicitations&nbsp;! La version PRO de cette extension a été activée avec succès."
 
 
1037
 
1038
  #: deprecated.php:281 deprecated.php:672
1039
  msgid "Please, go to"
1040
+ msgstr "Merci d&rsquo;aller à"
1041
 
1042
  #: deprecated.php:281 deprecated.php:672
1043
  msgid "the setting page"
1049
 
1050
  #: deprecated.php:316
1051
  msgid "Check premium options on the plugin settings page!"
1052
+ msgstr "Vérifier les options premium sur la page des paramètres de l&rsquo;extension&nbsp;!"
 
1053
 
1054
  #: deprecated.php:479
1055
  msgid "Restore all plugin settings to defaults"
1056
+ msgstr "Remettre les valeurs par défaut des paramètres de l&rsquo;extension"
1057
 
1058
  #: deprecated.php:481
1059
  msgid "Restore settings"
1077
  msgstr "Modifier"
1078
 
1079
  #: deprecated.php:670
1080
+ msgid "Congratulations! Pro version of the plugin is installed and activated successfully."
1081
+ msgstr "Félicitations&nbsp;! La version PRO de cette extension a été téléchargée et activée avec succès."
 
 
 
 
1082
 
1083
  #: deprecated.php:680
1084
  msgid "Show Pro features"
1090
 
1091
  #: deprecated.php:689
1092
  msgid "version of the plugin."
1093
+ msgstr "version de l&rsquo;extension."
1094
 
1095
  #: product_list.php:7
1096
  msgid "Admin Tools"
1097
+ msgstr "Outils d&rsquo;administration"
1098
 
1099
  #: product_list.php:8
1100
  msgid "Content"
1101
+ msgstr "Contenu"
1102
 
1103
  #: product_list.php:9
1104
  msgid "eCommerce"
1105
+ msgstr "eCommerce"
1106
 
1107
  #: product_list.php:10
1108
  msgid "Marketing"
1109
+ msgstr "Marketing"
1110
 
1111
  #: product_list.php:11
1112
  msgid "Navigation"
1113
+ msgstr "Navigation"
1114
 
1115
  #: product_list.php:12
1116
  msgid "Recommended"
1122
 
1123
  #: product_list.php:14
1124
  msgid "SEO"
1125
+ msgstr "SEO"
1126
 
1127
  #: product_list.php:15
1128
  msgid "SMM"
1129
+ msgstr "SMM"
1130
 
1131
  #: product_list.php:22
1132
  msgid "Best secure captcha plugin to protect your WordPress forms."
1133
+ msgstr "Extension de Captach meuilleure et plus sécurisée pour vos formulaires."
1134
 
1135
  #: product_list.php:32
1136
  msgid "Create your personal car rental/booking and reservation website."
1137
+ msgstr "Créer votre site personnel de vente/location de voitures."
1138
 
1139
  #: product_list.php:42
1140
+ msgid "Allow customers to reach you using secure contact form plugin any website must have."
1141
+ msgstr "Permet à vos clients de vous joindre en utilisant un formulaire de contact sécurisé que tout site doit avoir."
 
 
1142
 
1143
  #: product_list.php:52
1144
  msgid "Add unlimited number of contact forms to WordPress website."
1145
+ msgstr "Ajoute une nombre illimité de formulaires de contact."
1146
 
1147
  #: product_list.php:62
1148
  msgid "Save and manage Contact Form messages. Never lose important data."
1149
+ msgstr "Enregistrer et gérer les messages issu du formulaire de contact. Permet de ne pas perdre des informations importantes."
1150
 
1151
  #: product_list.php:72
1152
  msgid "Add unlimited custom pages to WordPress admin dashboard."
1153
+ msgstr "Ajouter un nombre illimté de pages dans l&rsquo;administration."
1154
 
1155
  #: product_list.php:79
1156
  msgid "Add custom fields to WordPress website search results."
1157
+ msgstr "Ajouter des champs personalisés dans le résultats de la recherche."
1158
 
1159
  #: product_list.php:86
1160
+ msgid "Add custom post types and taxonomies to WordPress website search results."
1161
+ msgstr "Ajouter des types d&rsquo;articles personalisés et des taxonomies dans le résultat de la recherche."
 
1162
 
1163
  #: product_list.php:96
1164
  msgid "Add PayPal and 2CO donate buttons to receive charity payments."
1165
+ msgstr "Ajouter des boutons de dons avec PayPal et 2CO pour recevoir des donations."
1166
 
1167
  #: product_list.php:103
1168
+ msgid "Get latest error log messages to diagnose website problems. Define and fix issues faster."
1169
+ msgstr "Obtenir les derniers messages d&rsquo;erreur pour diagnostiquer les problèmes du site. Permet de corriger plus rapidement."
 
 
1170
 
1171
  #: product_list.php:110
1172
+ msgid "Add Facebook Follow, Like, and Share buttons to WordPress posts, pages, and widgets."
1173
+ msgstr "Ajouter les boutons Suivre, Aimer et Partager pour FaceBook aux articles, pages et widgets."
 
 
1174
 
1175
  #: product_list.php:120
1176
+ msgid "Add beautiful galleries, albums & images to your WordPress website in a few clicks."
1177
+ msgstr "Ajouter des galeries, albums et images en quelques clics."
 
 
1178
 
1179
  #: product_list.php:130
1180
+ msgid "Add Google +1, Share, Follow, Hangout buttons and profile badge to WordPress posts, pages and widgets."
1181
+ msgstr "Ajouter les boutons Partager, Suivre, Particciper et le profile de Google +1 aux articles, pages et widgets."
 
 
1182
 
1183
  #: product_list.php:140
1184
+ msgid "Stronger security solution which protects your WordPress website from hacks and unauthorized login attempts."
1185
+ msgstr "Solution forte de sécurité qui protège votre site des attaques et des tentatives de connexions."
 
 
1186
 
1187
  #: product_list.php:150
1188
+ msgid "Add Adsense ads to WordPress website pages, posts, custom posts, search results, categories, tags, and widgets."
1189
+ msgstr "Ajouter les publicités Adsense aux pages, articles, types personalisés, résultats de recherche, catégories, tags, widgets."
 
 
1190
 
1191
  #: product_list.php:160
1192
  msgid "Add Google Analytics code to WordPress website and track basic stats."
1193
+ msgstr "Ajouter le code Google Analytics et permet de suivre les statistiques basiques."
1194
 
1195
  #: product_list.php:170
1196
+ msgid "Protect WordPress website forms from spam entries with Google Captcha (reCaptcha)."
1197
+ msgstr "Protéger vos formulaires avec Google Captcha (reCaptcha)."
 
 
1198
 
1199
  #: product_list.php:180
1200
  msgid "Add customized Google maps to WordPress posts, pages and widgets."
1201
+ msgstr "Ajouter des cartes de Google maps aux articles, pages et widgets."
1202
 
1203
  #: product_list.php:190
1204
+ msgid "Generate and add XML sitemap to WordPress website. Help search engines index your blog."
1205
+ msgstr "Générer et ajouter un fichier XML de sitemap. Aide les moteurs de recherche à parcourir votre site."
 
 
1206
 
1207
  #: product_list.php:200
1208
+ msgid "Replace external WordPress website links with Google shortlinks and track click stats."
1209
+ msgstr "Remplacer les liens externes dans votre site par des liens courts de Google et disposer de statistiques."
 
 
1210
 
1211
  #: product_list.php:207
1212
+ msgid "Protect WordPress website – allow and deny access for certain IP addresses, hostnames, etc."
1213
+ msgstr "Protéger votre site en autorisant ou interdissant certaines adresses IP, nom de machine, ..."
 
 
1214
 
1215
  #: product_list.php:217
1216
+ msgid "Create your personal job board and listing WordPress website. Search jobs, submit CV/resumes, choose candidates."
1217
+ msgstr "Créer votre site d&rsquo;offres d&rsquo;emploies. Rechercher des emplois, envoyer des CV/des candidatures."
 
 
1218
 
1219
  #: product_list.php:224
1220
+ msgid "Protect WordPress website against brute force attacks. Limit rate of login attempts."
1221
+ msgstr "Protéger le site contre les attaques de brute force. Limite la fréquence des tentatives de connexions."
 
 
1222
 
1223
  #: product_list.php:234
1224
+ msgid "Add LinkedIn Share and Follow buttons to WordPress posts, pages and widgets. 5 plugins included – profile, insider, etc."
1225
+ msgstr "Ajouter les boutons partager et suivre de LinkedIn aux articles, pages et widgets. 5 extensions incluses (profile, insider, etc.)"
 
 
1226
 
1227
  #: product_list.php:244
1228
+ msgid "Translate WordPress website content to other languages manually. Create multilingual pages, posts, widgets, menus, etc."
1229
+ msgstr "Traduire le contenu du site dans d&rsquo;autres langues manuellement. Créer des pages, des articles, des widgets, des menus, etc dans plusieurs langues."
 
 
1230
 
1231
  #: product_list.php:254
1232
+ msgid "Add customizable pagination to WordPress website. Split long content to multiple pages for better navigation."
1233
+ msgstr "Ajouter une pagination presonalisée. Découper un contenu long en plusieurs pages pour une meuilleure navigation."
 
 
1234
 
1235
  #: product_list.php:264
1236
+ msgid "Generate PDF files and print WordPress posts/pages. Customize document header/footer styles and appearance."
1237
+ msgstr "Générer des fichiers PDF pour des pages ou des articles. Personaliser l&rsquo;en-tête/pied de page, les styles et l&rsquo;apparence."
 
 
1238
 
1239
  #: product_list.php:274
1240
+ msgid "Add Pinterest Follow, Pin It buttons and profile widgets (Pin, Board, Profile) to WordPress posts, pages and widgets."
1241
+ msgstr "Ajouter les boutons Suivre, Epingler et le widget de profile (Epingle, Tableau de bord, profile) pour Pinterest aux articles, pages et widgets."
 
 
1242
 
1243
  #: product_list.php:284
1244
+ msgid "Create your personal portfolio WordPress website. Manage and showcase past projects to get more clients."
1245
+ msgstr "Créer votre site de portfolio. Gérer et présenter vos anciens projets pour acquérir de nouveaux clients."
 
 
1246
 
1247
  #: product_list.php:294
1248
  msgid "Export WordPress posts to CSV file format easily. Configure data order."
1249
+ msgstr "Exporter vos articles dans un format CSV facilement. Configurer l&rsquo;ordre des données."
1250
 
1251
  #: product_list.php:301
1252
+ msgid "Add extra fields to default WordPress user profile. The easiest way to create and manage additional custom values."
1253
+ msgstr "Ajouter des champs personalisés au profil utilisateur. La façon la plus simple de créer et gérer des informations supplémentaires."
 
 
1254
 
1255
  #: product_list.php:308
1256
+ msgid "Add and display HTML advertisement banner on WordPress website. Customize bar styles and appearance."
1257
+ msgstr "Ajouter et afficher une bannière de publicité en HTML. Personaliser le style et l&rsquo;apparence de la barre."
 
 
1258
 
1259
  #: product_list.php:318
1260
+ msgid "Add customizable quotes and tips blocks to WordPress posts, pages and widgets."
1261
+ msgstr "Ajouter des blocs d&rsquo;avis et d&rsquo;astuces sur vos pages, articles et widgets."
 
 
1262
 
1263
  #: product_list.php:325
1264
+ msgid "Add rating plugin to your WordPress website to receive feedback from your customers."
1265
+ msgstr "Ajouter une notation pour avoir un retour de vos utilisateurs/clients."
 
 
1266
 
1267
  #: product_list.php:332
1268
+ msgid "Create your personal real estate WordPress website. Sell, rent and buy properties. Add, search and browse listings easily."
1269
+ msgstr "Créer votre site d&rsquo;annonces immobilières. Vendre, louer et acheter des biens. Recherche et catalogue facilement mis en place."
 
 
1270
 
1271
  #: product_list.php:342
1272
+ msgid "Add related, featured, latest, and popular posts to your WordPress website. Connect your blog readers with a relevant content."
1273
+ msgstr "Ajouter des informations sur les articles en relations, mis en avant, populaires. Fournisser à vos lecteurs un contenu passionant."
 
 
1274
 
1275
  #: product_list.php:349
1276
+ msgid "Send bulk email messages to WordPress users. Custom templates, advanced settings and detailed reports."
1277
+ msgstr "Envoyer des messages e-mail en masse à vos utilisateurs. Modèles personalisables, paramétrage avancé et reporting complet."
 
 
1278
 
1279
  #: product_list.php:359
1280
+ msgid "The best responsive slider plugin for your WordPress website. Create beautifully animated slides just in a few clicks."
1281
+ msgstr "Extension pour mettre en place des diaporamas responsive. Créer des diaporamas animés en quelques clics."
 
 
1282
 
1283
  #: product_list.php:366
1284
+ msgid "Configure SMTP server to receive email messages from WordPress to Gmail, Yahoo, Hotmail and other services."
1285
+ msgstr "Configurer un serveur SMTP pour envoyer des e-mails vers Gmail, Yahoo, Hotmail et d&rsquo;autres services."
 
 
1286
 
1287
  #: product_list.php:373
1288
+ msgid "Add social media buttons and widgets to WordPress posts, pages and widgets. FB, Twitter, G+1, Pinterest, LinkedIn."
1289
+ msgstr "Ajouter des boutons pour les réseaux sociaux FB, Twitter, G+1, Pinterest, LinkedIn aux articles, pages et widgets."
 
 
1290
 
1291
  #: product_list.php:383
1292
+ msgid "Add social media login, registration, and commenting to your WordPress website."
1293
+ msgstr "Ajouter la connection, l&rsquo;enregistrement et la rédaction de commentaires pour vos réseaux sociaux."
 
 
1294
 
1295
  #: product_list.php:390
1296
+ msgid "Add email newsletter sign up form to WordPress posts, pages and widgets. Collect data and subscribe your users."
1297
+ msgstr "Ajouter un formulaire d&rsquo;inscription à votre lettre d&rsquo;information sur vos pages, articles et widgets. Récolter les inscriptions et les données de vos utilisateurs."
 
 
1298
 
1299
  #: product_list.php:400
1300
+ msgid "Add testimonials and feedbacks from your customers to WordPress website posts, pages, and widgets."
1301
+ msgstr "Ajouter des témoignages et des retours de vos clients aux articles, pages et widgets."
 
 
1302
 
1303
  #: product_list.php:407
1304
+ msgid "Best timesheet plugin for WordPress. Track employee time, streamline attendance and generate reports."
1305
+ msgstr "La meuilleure extension de suivi du temps. Suiver le temps de vos employés, le temps de présence et créer des rapports."
 
 
1306
 
1307
  #: product_list.php:417
1308
+ msgid "Add Twitter Follow, Tweet, Hashtag, and Mention buttons to WordPress posts and pages."
1309
+ msgstr "Ajouter les boutons Suivre, Tweet, Hastag pour Twitter aux articles, pages et widgets."
 
 
1310
 
1311
  #: product_list.php:427
1312
+ msgid "Automatically check and update WordPress website core with all installed plugins and themes to the latest versions."
1313
+ msgstr "Mettre à jour automatiquement votre site pour WordPress, les extensions et les thèmes."
 
 
1314
 
1315
  #: product_list.php:437
1316
+ msgid "Powerful user role management plugin for WordPress website. Create, edit, copy, and delete user roles."
1317
+ msgstr "Gestion des droits des utilisateurs. Créer, modifier et supprimer des droits utilisateurs."
 
 
1318
 
1319
  #: product_list.php:447
1320
+ msgid "Display live count of online visitors who are currently browsing your WordPress website."
1321
+ msgstr "Afficher en direct le compteur des visiteurs sur votre site."
 
 
1322
 
1323
  #: product_list.php:457
1324
+ msgid "Backup and export Zendesk Help Center content automatically to your WordPress website database."
1325
+ msgstr "Sauvegarder et exporter le contenu de votre Zendesk Help Center vers votre site."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
bws_menu/languages/bestwebsoft-ru_RU.mo CHANGED
Binary file
bws_menu/languages/bestwebsoft-ru_RU.po CHANGED
@@ -3,7 +3,7 @@ msgstr ""
3
  "Project-Id-Version: bestwebsoft\n"
4
  "Report-Msgid-Bugs-To: \n"
5
  "POT-Creation-Date: 2017-09-11 16:44+0300\n"
6
- "PO-Revision-Date: 2017-09-11 16:44+0300\n"
7
  "Last-Translator: bestwebsoft.com <plugins@bestwebsoft.com>\n"
8
  "Language-Team: bestwebsoft.com <https://support.bestwebsoft.com>\n"
9
  "Language: ru\n"
3
  "Project-Id-Version: bestwebsoft\n"
4
  "Report-Msgid-Bugs-To: \n"
5
  "POT-Creation-Date: 2017-09-11 16:44+0300\n"
6
+ "PO-Revision-Date: 2018-03-02 10:06+0200\n"
7
  "Last-Translator: bestwebsoft.com <plugins@bestwebsoft.com>\n"
8
  "Language-Team: bestwebsoft.com <https://support.bestwebsoft.com>\n"
9
  "Language: ru\n"
bws_menu/product_list.php CHANGED
@@ -36,6 +36,18 @@ $bws_plugins = array(
36
  'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/car-rental/buy/?k=7643d4f0698252fa1159de078d22269c&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
37
  'pro_settings' => 'admin.php?page=car-rental-pro-settings'
38
  ),
 
 
 
 
 
 
 
 
 
 
 
 
39
  'contact-form-plugin/contact_form.php' => array(
40
  'category' => array( 'marketing', 'recommended' ),
41
  'name' => 'Contact Form',
@@ -300,7 +312,10 @@ $bws_plugins = array(
300
  'name' => 'Profile Extra Fields',
301
  'description' => __( 'Add extra fields to default WordPress user profile. The easiest way to create and manage additional custom values.', 'bestwebsoft' ),
302
  'link' => 'https://bestwebsoft.com/products/wordpress/plugins/profile-extra-fields/?k=fe3b6c3dbc80bd4b1cf9a27a2f339820&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
303
- 'settings' => 'admin.php?page=profile-extra-fields.php'
 
 
 
304
  ),
305
  'promobar/promobar.php' => array(
306
  'category' => array( 'marketing' ),
@@ -324,7 +339,10 @@ $bws_plugins = array(
324
  'name' => 'Rating',
325
  'description' => __( 'Add rating plugin to your WordPress website to receive feedback from your customers.', 'bestwebsoft' ),
326
  'link' => 'https://bestwebsoft.com/products/wordpress/plugins/rating/?k=c00e0824bb999735a3224616ef51f4c5&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
327
- 'settings' => 'admin.php?page=rating.php'
 
 
 
328
  ),
329
  'realty/realty.php' => array(
330
  'category' => array( 'ecommerce' ),
36
  'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/car-rental/buy/?k=7643d4f0698252fa1159de078d22269c&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
37
  'pro_settings' => 'admin.php?page=car-rental-pro-settings'
38
  ),
39
+ 'bws-car-rental/bws-car-rental.php' => array(
40
+ 'category' => array( 'ecommerce' ),
41
+ 'name' => 'Car Rental V2',
42
+ 'description' => __( 'Create your own rental website for car renting and booking.', 'bestwebsoft' ),
43
+ 'link' => 'https://bestwebsoft.com/products/wordpress/plugins/car-rental-v2/?k=ca43df54beefae7128a7005bce0ec651&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
44
+ 'settings' => 'admin.php?page=bws-car-rental-settings',
45
+ 'pro_version' => 'bws-car-rental-pro/bws-car-rental-pro.php',
46
+ 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/car-rental-v2/buy/?k=63cac1b736047a3f5a2f5a7c5336f3c4&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
47
+ 'pro_settings' => 'admin.php?page=bws-car-rental-pro-settings',
48
+ 'icon' => '//ps.w.org/car-rental/assets/icon-128x128.png',
49
+ 'install_url' => 'https://bestwebsoft.com/products/wordpress/plugins/car-rental-v2/'
50
+ ),
51
  'contact-form-plugin/contact_form.php' => array(
52
  'category' => array( 'marketing', 'recommended' ),
53
  'name' => 'Contact Form',
312
  'name' => 'Profile Extra Fields',
313
  'description' => __( 'Add extra fields to default WordPress user profile. The easiest way to create and manage additional custom values.', 'bestwebsoft' ),
314
  'link' => 'https://bestwebsoft.com/products/wordpress/plugins/profile-extra-fields/?k=fe3b6c3dbc80bd4b1cf9a27a2f339820&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
315
+ 'settings' => 'admin.php?page=profile-extra-fields.php',
316
+ 'pro_version' => 'profile-extra-fields-pro/profile-extra-fields-pro.php',
317
+ 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/profile-extra-fields/buy/?k=a1f0b20e50ea10e5453aba399de496c0&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
318
+ 'pro_settings' => 'admin.php?page=profile-extra-fields-pro.php'
319
  ),
320
  'promobar/promobar.php' => array(
321
  'category' => array( 'marketing' ),
339
  'name' => 'Rating',
340
  'description' => __( 'Add rating plugin to your WordPress website to receive feedback from your customers.', 'bestwebsoft' ),
341
  'link' => 'https://bestwebsoft.com/products/wordpress/plugins/rating/?k=c00e0824bb999735a3224616ef51f4c5&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
342
+ 'settings' => 'admin.php?page=rating.php',
343
+ 'pro_version' => 'rating-bws-pro/rating-bws-pro.php',
344
+ 'purchase' => 'https://bestwebsoft.com/products/wordpress/plugins/rating/buy/?k=ba459f3115edb7be610e8d6f8e05df6c&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
345
+ 'pro_settings' => 'admin.php?page=rating-bws-pro.php'
346
  ),
347
  'realty/realty.php' => array(
348
  'category' => array( 'ecommerce' ),
google-captcha.php CHANGED
@@ -6,7 +6,7 @@ Description: Protect WordPress website forms from spam entries with Google Captc
6
  Author: BestWebSoft
7
  Text Domain: google-captcha
8
  Domain Path: /languages
9
- Version: 1.43
10
  Author URI: https://bestwebsoft.com/
11
  License: GPLv3 or later
12
  */
@@ -35,15 +35,43 @@ if ( ! function_exists( 'gglcptch_admin_menu' ) ) {
35
  global $submenu, $wp_version, $gglcptch_plugin_info;
36
 
37
  if ( ! is_plugin_active( 'google-captcha-pro/google-captcha-pro.php' ) ) {
38
- $settings_page = add_menu_page( __( 'Google Captcha Settings', 'google-captcha' ), 'Google Captcha', 'manage_options', 'google-captcha.php', 'gglcptch_add_settings_page', 'none' );
39
-
40
- add_submenu_page( 'google-captcha.php', __( 'Google Captcha Settings', 'google-captcha'), __( 'Settings', 'google-captcha' ), 'manage_options', 'google-captcha.php', 'gglcptch_add_settings_page' );
41
-
42
- $whitelist_page = add_submenu_page( 'google-captcha.php', __( 'Google Captcha Whitelist', 'google-captcha' ), __( 'Whitelist', 'google-captcha' ), 'manage_options', 'google-captcha-whitelist.php', 'gglcptch_add_settings_page' );
43
-
44
- add_submenu_page( 'google-captcha.php', 'BWS Panel', 'BWS Panel', 'manage_options', 'gglcptch-bws-panel', 'bws_add_menu_render' );
45
-
46
- if ( isset($submenu['google-captcha.php'] ) ) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
47
  $submenu['google-captcha.php'][] = array(
48
  '<span style="color:#d86463"> ' . __('Upgrade to Pro', 'google-captcha' ) . '</span>',
49
  'manage_options',
@@ -78,7 +106,7 @@ if ( ! function_exists( 'gglcptch_init' ) ) {
78
  }
79
 
80
  /* Function check if plugin is compatible with current WP version */
81
- bws_wp_min_version_check( plugin_basename( __FILE__ ), $gglcptch_plugin_info, '3.9' );
82
 
83
  $is_admin = is_admin() && ! defined( 'DOING_AJAX' );
84
  /* Call register settings function */
@@ -128,7 +156,7 @@ if ( ! function_exists( 'gglcptch_add_admin_script_styles' ) ) {
128
  /* css for displaing an icon */
129
  wp_enqueue_style( 'gglcptch_admin_page_stylesheet', plugins_url( 'css/admin_page.css', __FILE__ ) );
130
 
131
- if ( 1 == $gglcptch_options['hide_badge'] ) {
132
  wp_enqueue_style( 'gglcptch_hide', plugins_url( 'css/hide_badge.css', __FILE__ ), array(), $gglcptch_plugin_info['Version'] );
133
  }
134
  if ( isset( $_REQUEST['page'] ) && ( 'google-captcha.php' == $_REQUEST['page'] || 'google-captcha-whitelist.php' == $_REQUEST['page'] ) ) {
@@ -201,13 +229,13 @@ if ( ! function_exists( 'gglcptch_add_styles' ) ) {
201
  $deps = array();
202
  }
203
 
204
- wp_register_script( 'gglcptch_api', $api_url,$deps, $gglcptch_plugin_info['Version'], true );
205
 
206
  add_action( 'wp_footer', 'gglcptch_add_scripts' );
207
  if (
208
- '1' == $gglcptch_options['login_form'] ||
209
- '1' == $gglcptch_options['reset_pwd_form'] ||
210
- '1' == $gglcptch_options['registration_form']
211
  ) {
212
  add_action('login_footer', 'gglcptch_add_scripts');
213
  }
@@ -227,7 +255,7 @@ if ( ! function_exists( 'gglcptch_add_scripts' ) ) {
227
  register_gglcptch_settings();
228
  }
229
 
230
- if ( isset( $gglcptch_options['recaptcha_version'] ) && 'v1' != $gglcptch_options['recaptcha_version'] ) {
231
  gglcptch_remove_dublicate_scripts();
232
  if ( ! empty( $gglcptch_options['disable_submit'] ) ) {
233
  wp_enqueue_script( 'gglcptch_pre_api', plugins_url( 'js/pre-api-script.js', __FILE__ ), array( 'jquery'), $gglcptch_plugin_info['Version'], true );
@@ -250,14 +278,15 @@ if ( ! function_exists( 'gglcptch_add_scripts' ) ) {
250
  'version' => $gglcptch_options['recaptcha_version'],
251
  'sitekey' => $gglcptch_options['public_key'],
252
  'theme' => $gglcptch_options[ 'theme' . $version ],
253
- 'error' => sprintf( '<strong>%s</strong>:&nbsp;%s', __( 'Warning', 'google-captcha' ), gglcptch_get_message( 'multiple_blocks' ) )
 
254
  ),
255
  'vars' => array(
256
  'visibility' => ( 'login_footer' == current_filter() )
257
  )
258
  ) );
259
 
260
- if ( 1 == $gglcptch_options['hide_badge'] ) {
261
  wp_enqueue_style( 'gglcptch_hide', plugins_url( 'css/hide_badge.css', __FILE__ ), array(), $gglcptch_plugin_info['Version'] );
262
  }
263
  }
@@ -286,30 +315,28 @@ if ( ! function_exists( 'gglcptch_create_table' ) ) {
286
  function gglcptch_create_table() {
287
  global $wpdb;
288
  require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
289
- $whitelist_exist = $wpdb->query( "SHOW TABLES LIKE '{$wpdb->prefix}gglcptch_whitelist';" );
290
- if ( ! $whitelist_exist ) {
291
- $sql = "CREATE TABLE `{$wpdb->prefix}gglcptch_whitelist` (
292
- `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
293
- `ip` CHAR(31) NOT NULL,
294
- `ip_from_int` BIGINT,
295
- `ip_to_int` BIGINT,
296
- `add_time` DATETIME,
297
- PRIMARY KEY (`id`)
298
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8;";
299
- dbDelta( $sql );
300
-
301
- /* add unique key */
302
- if ( 0 == $wpdb->query( "SHOW KEYS FROM `{$wpdb->prefix}gglcptch_whitelist` WHERE Key_name='ip'" ) ) {
303
- $wpdb->query( "ALTER TABLE `{$wpdb->prefix}gglcptch_whitelist` ADD UNIQUE(`ip`);" );
304
- }
305
- }
306
  }
307
  }
308
 
309
  /* Google catpcha settings */
310
  if ( ! function_exists( 'register_gglcptch_settings' ) ) {
311
  function register_gglcptch_settings() {
312
- global $gglcptch_options, $bws_plugin_info, $gglcptch_plugin_info;
313
 
314
  $plugin_db_version = '0.1';
315
 
@@ -321,7 +348,10 @@ if ( ! function_exists( 'register_gglcptch_settings' ) ) {
321
  $gglcptch_options = get_option( 'gglcptch_options' );
322
 
323
  /* Array merge incase this version has added new options */
324
- if ( ! isset( $gglcptch_options['plugin_option_version'] ) || $gglcptch_options['plugin_option_version'] != $gglcptch_plugin_info["Version"] ) {
 
 
 
325
  $gglcptch_options = array_merge( gglcptch_get_default_options(), $gglcptch_options );
326
  $gglcptch_options['plugin_option_version'] = $gglcptch_plugin_info["Version"];
327
 
@@ -336,8 +366,11 @@ if ( ! function_exists( 'register_gglcptch_settings' ) ) {
336
  }
337
  /* Update tables when update plugin and tables changes*/
338
  if (
339
- ! isset( $gglcptch_options['plugin_db_version'] ) ||
340
- ( isset( $gglcptch_options['plugin_db_version'] ) && $gglcptch_options['plugin_db_version'] != $plugin_db_version )
 
 
 
341
  ) {
342
  if ( ! isset( $gglcptch_options['plugin_db_version'] ) ) {
343
  gglcptch_create_table();
@@ -370,7 +403,8 @@ if ( ! function_exists( 'gglcptch_get_default_options' ) ) {
370
  'display_settings_notice' => 1,
371
  'suggest_feature_banner' => 1,
372
  'score_v3' => 0.5,
373
- 'hide_badge' => 0
 
374
  );
375
 
376
  if ( function_exists( 'get_editable_roles' ) ) {
@@ -433,8 +467,6 @@ if ( ! function_exists( 'gglcptch_whitelisted_ip' ) ) {
433
  WHERE ( `ip_from_int` <= {$ip_int} AND `ip_to_int` >= {$ip_int} ) OR `ip` LIKE '{$ip}' LIMIT 1;"
434
  );
435
  $checked = is_null( $result ) || ! $result ? false : true;
436
- } else {
437
- $checked = false;
438
  }
439
  }
440
  return $checked;
@@ -481,12 +513,12 @@ if ( ! function_exists( 'gglcptch_is_recaptcha_required' ) ) {
481
  }
482
  }
483
 
484
- return
485
- ! isset( $gglcptch_options[ $form_slug ] ) ||
486
- (
487
- ! empty( $gglcptch_options[ $form_slug ] ) &&
488
- ( ! $is_user_logged_in || ! gglcptch_is_hidden_for_role() )
489
- );
490
  }
491
  }
492
 
@@ -495,19 +527,13 @@ if ( ! function_exists( 'gglcptch_is_hidden_for_role' ) ) {
495
  function gglcptch_is_hidden_for_role() {
496
  global $current_user, $gglcptch_options;
497
 
498
- if ( ! is_user_logged_in() ) {
499
- return false;
500
- }
501
 
502
- if ( ! empty( $current_user->roles[0] ) ) {
503
- $role = $current_user->roles[0];
504
- if ( empty( $gglcptch_options ) ) {
505
- register_gglcptch_settings();
506
- }
507
- return ! empty( $gglcptch_options[ $role ] );
508
- } else {
509
- return false;
510
- }
511
  }
512
  }
513
 
@@ -526,12 +552,9 @@ if ( ! function_exists( 'gglcptch_display' ) ) {
526
  $gglcptch_count = 1;
527
  }
528
 
529
- $publickey = $gglcptch_options['public_key'];
530
- $privatekey = $gglcptch_options['private_key'];
531
-
532
  $content .= '<div class="gglcptch gglcptch_' . $gglcptch_options['recaptcha_version'] . '">';
533
 
534
- if ( 1 == $gglcptch_options['hide_badge'] ) {
535
  $content .= sprintf(
536
  '<div>%s<a href="https://policies.google.com/privacy">%s</a>%s<a href="https://policies.google.com/terms">%s</a>%s</div>',
537
  __( 'This site is protected by reCAPTCHA and the Google ', 'google-captcha' ),
@@ -541,7 +564,7 @@ if ( ! function_exists( 'gglcptch_display' ) ) {
541
  __( ' apply.', 'google-captcha' )
542
  );
543
  }
544
- if ( ! $privatekey || ! $publickey ) {
545
  if ( current_user_can( 'manage_options' ) ) {
546
  $content .= sprintf(
547
  '<strong>%s <a target="_blank" href="https://www.google.com/recaptcha/admin#list">%s</a> %s <a target="_blank" href="%s">%s</a>.</strong>',
@@ -567,7 +590,7 @@ if ( ! function_exists( 'gglcptch_display' ) ) {
567
  <div style="width: 302px;">
568
  <div style="width: 302px; height: 422px; position: relative;">
569
  <div style="width: 302px; height: 422px; position: absolute;">
570
- <iframe src="https://www.google.com/recaptcha/api/fallback?k=' . $publickey . '" frameborder="0" scrolling="no" style="width: 302px; height:422px; border-style: none;"></iframe>
571
  </div>
572
  </div>
573
  <div style="border-style: none; bottom: 12px; left: 25px; margin: 0px; padding: 0px; right: 25px; background: #f9f9f9; border: 1px solid #c1c1c1; border-radius: 3px; height: 60px; width: 300px;">
@@ -577,12 +600,11 @@ if ( ! function_exists( 'gglcptch_display' ) ) {
577
  </noscript>';
578
  $deps = ( ! empty( $gglcptch_options['disable_submit'] ) ) ? array( 'gglcptch_pre_api' ) : array( 'jquery' );
579
  } elseif ( isset( $gglcptch_options['recaptcha_version'] ) && 'v3' == $gglcptch_options['recaptcha_version'] ) {
580
- $action = 'BWS_reCaptcha';
581
  $content .= '<input type="hidden" id="g-recaptcha-response" name="g-recaptcha-response"> ' ;
582
  $content .= '<script src="' . $api_url . '"></script>
583
  <script>
584
  grecaptcha.ready(function() {
585
- grecaptcha.execute(\''.$publickey.'\', {action: \''. $action. '\'}).then(function(token) {
586
  document.getElementById(\'g-recaptcha-response\').value=token;
587
  });
588
  });
@@ -600,9 +622,9 @@ if ( ! function_exists( 'gglcptch_display' ) ) {
600
  }
601
  add_action( 'wp_footer', 'gglcptch_add_scripts' );
602
  if (
603
- '1' == $gglcptch_options['login_form'] ||
604
- '1' == $gglcptch_options['reset_pwd_form'] ||
605
- '1' == $gglcptch_options['registration_form']
606
  ) {
607
  add_action( 'login_footer', 'gglcptch_add_scripts' );
608
  }
@@ -641,15 +663,23 @@ if ( ! function_exists( 'gglcptch_get_api_url' ) ) {
641
  function gglcptch_get_api_url() {
642
  global $gglcptch_options;
643
 
644
- if ( isset( $gglcptch_options['recaptcha_version'] ) && in_array( $gglcptch_options['recaptcha_version'], array( 'v2', 'invisible' ) ) ) {
645
- $callback = ( ! empty( $gglcptch_options['disable_submit'] ) ) ? "onload=gglcptch_onload_callback&" : "";
646
-
647
- $api_url = sprintf( "https://www.google.com/recaptcha/api.js?%srender=explicit", $callback );
648
- } elseif ( isset( $gglcptch_options['recaptcha_version'] ) && 'v3' == $gglcptch_options['recaptcha_version'] ) {
649
- $api_url = sprintf( "https://www.google.com/recaptcha/api.js?render=%s", $gglcptch_options['public_key'] );
650
- } else {
651
- $api_url = "https://www.google.com/recaptcha/api/js/recaptcha_ajax.js";
652
- }
 
 
 
 
 
 
 
 
653
  return $api_url;
654
  }
655
  }
@@ -686,10 +716,7 @@ if ( ! function_exists( 'gglcptch_check' ) ) {
686
  register_gglcptch_settings();
687
  }
688
 
689
- $publickey = $gglcptch_options['public_key'];
690
- $privatekey = $gglcptch_options['private_key'];
691
-
692
- if ( ! $privatekey || ! $publickey ) {
693
  $errors = new WP_Error;
694
  $errors->add( 'gglcptch_error', gglcptch_get_message() );
695
  return array(
@@ -716,7 +743,7 @@ if ( ! function_exists( 'gglcptch_check' ) ) {
716
  'reason' => 'RECAPTCHA_EMPTY_RESPONSE'
717
  );
718
  } else {
719
- $response = gglcptch_get_response( $privatekey, $gglcptch_remote_addr );
720
  if ( isset( $response['success'] ) && !! $response['success'] ) {
721
  if ( 'v3' == $gglcptch_options['recaptcha_version'] && $response['score'] < $gglcptch_options['score_v3'] ) {
722
  $result = array(
@@ -876,13 +903,10 @@ if ( ! function_exists( 'gglcptch_handle_by_limit_attempts' ) ) {
876
  $la_form_slug = "{$form_slug}_recaptcha_check";
877
 
878
  /* if reCAPTCHA answer is right */
879
- if ( true === $check_result ) {
880
  /* check if user IP is blocked in the Limit Attempts plugin lists */
881
  $check_result = apply_filters( 'lmtttmpts_check_ip', $check_result );
882
- /* if IP isn't blocked */
883
- if ( true === $check_result ) {
884
- do_action( 'lmtttmpts_form_success', $la_form_slug, gglcptch_get_ip(), array( 'form_name' => $gglcptch_forms[ $form_slug ]['form_name'] ) );
885
- }
886
  } else {
887
  /* if reCAPTCHA answer is wrong */
888
  $form_data = array( 'form_name' => $gglcptch_forms[ $form_slug ]['form_name'] );
@@ -909,7 +933,7 @@ if ( ! function_exists( 'gglcptch_get_ip' ) ) {
909
  if ( isset( $_SERVER ) ) {
910
  $server_vars = array( 'HTTP_X_REAL_IP', 'HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'REMOTE_ADDR' );
911
  foreach( $server_vars as $var ) {
912
- if ( isset( $_SERVER[ $var ] ) && ! empty( $_SERVER[ $var ] ) ) {
913
  if ( filter_var( $_SERVER[ $var ], FILTER_VALIDATE_IP ) ) {
914
  $ip = $_SERVER[ $var ];
915
  break;
@@ -942,13 +966,6 @@ if ( ! function_exists( 'gglcptch_get_message' ) ) {
942
  $messages = array(
943
  /* custom error */
944
  'RECAPTCHA_EMPTY_RESPONSE' => __( 'User response is missing.', 'google-captcha' ),
945
- /* v1 error */
946
- 'invalid-site-private-key' => sprintf(
947
- '<strong>%s</strong> <a target="_blank" href="https://www.google.com/recaptcha/admin#list">%s</a> %s.',
948
- __( 'Secret Key is invalid.', 'google-captcha' ),
949
- __( 'Check your domain configurations', 'google-captcha' ),
950
- __( 'and enter it again', 'google-captcha' )
951
- ),
952
  /* v2 error */
953
  'missing-input-secret' => __( 'Secret Key is missing.', 'google-captcha' ),
954
  'invalid-input-secret' => sprintf(
6
  Author: BestWebSoft
7
  Text Domain: google-captcha
8
  Domain Path: /languages
9
+ Version: 1.44
10
  Author URI: https://bestwebsoft.com/
11
  License: GPLv3 or later
12
  */
35
  global $submenu, $wp_version, $gglcptch_plugin_info;
36
 
37
  if ( ! is_plugin_active( 'google-captcha-pro/google-captcha-pro.php' ) ) {
38
+ $settings_page = add_menu_page(
39
+ __( 'Google Captcha Settings', 'google-captcha' ),
40
+ 'Google Captcha',
41
+ 'manage_options',
42
+ 'google-captcha.php',
43
+ 'gglcptch_add_settings_page',
44
+ 'none'
45
+ );
46
+
47
+ add_submenu_page(
48
+ 'google-captcha.php',
49
+ __( 'Google Captcha Settings', 'google-captcha'),
50
+ __( 'Settings', 'google-captcha' ),
51
+ 'manage_options',
52
+ 'google-captcha.php',
53
+ 'gglcptch_add_settings_page'
54
+ );
55
+
56
+ $whitelist_page = add_submenu_page(
57
+ 'google-captcha.php',
58
+ __( 'Google Captcha Whitelist', 'google-captcha' ),
59
+ __( 'Whitelist', 'google-captcha' ),
60
+ 'manage_options',
61
+ 'google-captcha-whitelist.php',
62
+ 'gglcptch_add_settings_page'
63
+ );
64
+
65
+ add_submenu_page(
66
+ 'google-captcha.php',
67
+ 'BWS Panel',
68
+ 'BWS Panel',
69
+ 'manage_options',
70
+ 'gglcptch-bws-panel',
71
+ 'bws_add_menu_render'
72
+ );
73
+
74
+ if ( isset( $submenu['google-captcha.php'] ) ) {
75
  $submenu['google-captcha.php'][] = array(
76
  '<span style="color:#d86463"> ' . __('Upgrade to Pro', 'google-captcha' ) . '</span>',
77
  'manage_options',
106
  }
107
 
108
  /* Function check if plugin is compatible with current WP version */
109
+ bws_wp_min_version_check( plugin_basename( __FILE__ ), $gglcptch_plugin_info, '4.0' );
110
 
111
  $is_admin = is_admin() && ! defined( 'DOING_AJAX' );
112
  /* Call register settings function */
156
  /* css for displaing an icon */
157
  wp_enqueue_style( 'gglcptch_admin_page_stylesheet', plugins_url( 'css/admin_page.css', __FILE__ ) );
158
 
159
+ if ( $gglcptch_options['hide_badge'] ) {
160
  wp_enqueue_style( 'gglcptch_hide', plugins_url( 'css/hide_badge.css', __FILE__ ), array(), $gglcptch_plugin_info['Version'] );
161
  }
162
  if ( isset( $_REQUEST['page'] ) && ( 'google-captcha.php' == $_REQUEST['page'] || 'google-captcha-whitelist.php' == $_REQUEST['page'] ) ) {
229
  $deps = array();
230
  }
231
 
232
+ wp_register_script( 'gglcptch_api', $api_url,$deps, $gglcptch_plugin_info['Version'], true );
233
 
234
  add_action( 'wp_footer', 'gglcptch_add_scripts' );
235
  if (
236
+ $gglcptch_options['login_form'] ||
237
+ $gglcptch_options['reset_pwd_form'] ||
238
+ $gglcptch_options['registration_form']
239
  ) {
240
  add_action('login_footer', 'gglcptch_add_scripts');
241
  }
255
  register_gglcptch_settings();
256
  }
257
 
258
+ if ( isset( $gglcptch_options['recaptcha_version'] ) ) {
259
  gglcptch_remove_dublicate_scripts();
260
  if ( ! empty( $gglcptch_options['disable_submit'] ) ) {
261
  wp_enqueue_script( 'gglcptch_pre_api', plugins_url( 'js/pre-api-script.js', __FILE__ ), array( 'jquery'), $gglcptch_plugin_info['Version'], true );
278
  'version' => $gglcptch_options['recaptcha_version'],
279
  'sitekey' => $gglcptch_options['public_key'],
280
  'theme' => $gglcptch_options[ 'theme' . $version ],
281
+ 'error' => sprintf( '<strong>%s</strong>:&nbsp;%s', __( 'Warning', 'google-captcha' ), gglcptch_get_message( 'multiple_blocks' ) ),
282
+ 'disable' => $gglcptch_options['disable_submit_button']
283
  ),
284
  'vars' => array(
285
  'visibility' => ( 'login_footer' == current_filter() )
286
  )
287
  ) );
288
 
289
+ if ( $gglcptch_options['hide_badge'] ) {
290
  wp_enqueue_style( 'gglcptch_hide', plugins_url( 'css/hide_badge.css', __FILE__ ), array(), $gglcptch_plugin_info['Version'] );
291
  }
292
  }
315
  function gglcptch_create_table() {
316
  global $wpdb;
317
  require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
318
+
319
+ $sql = "CREATE TABLE IF NOT EXISTS `{$wpdb->prefix}gglcptch_whitelist` (
320
+ `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
321
+ `ip` CHAR(31) NOT NULL,
322
+ `ip_from_int` BIGINT,
323
+ `ip_to_int` BIGINT,
324
+ `add_time` DATETIME,
325
+ PRIMARY KEY (`id`)
326
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8;";
327
+ dbDelta( $sql );
328
+
329
+ /* add unique key */
330
+ if ( ! $wpdb->query( "SHOW KEYS FROM `{$wpdb->prefix}gglcptch_whitelist` WHERE Key_name='ip'" ) ) {
331
+ $wpdb->query( "ALTER TABLE `{$wpdb->prefix}gglcptch_whitelist` ADD UNIQUE(`ip`);" );
332
+ }
 
 
333
  }
334
  }
335
 
336
  /* Google catpcha settings */
337
  if ( ! function_exists( 'register_gglcptch_settings' ) ) {
338
  function register_gglcptch_settings() {
339
+ global $gglcptch_options, $gglcptch_plugin_info;
340
 
341
  $plugin_db_version = '0.1';
342
 
348
  $gglcptch_options = get_option( 'gglcptch_options' );
349
 
350
  /* Array merge incase this version has added new options */
351
+ if (
352
+ ! isset( $gglcptch_options['plugin_option_version'] ) ||
353
+ $gglcptch_options['plugin_option_version'] != $gglcptch_plugin_info["Version"]
354
+ ) {
355
  $gglcptch_options = array_merge( gglcptch_get_default_options(), $gglcptch_options );
356
  $gglcptch_options['plugin_option_version'] = $gglcptch_plugin_info["Version"];
357
 
366
  }
367
  /* Update tables when update plugin and tables changes*/
368
  if (
369
+ ! isset( $gglcptch_options['plugin_db_version'] ) ||
370
+ (
371
+ isset( $gglcptch_options['plugin_db_version'] ) &&
372
+ $gglcptch_options['plugin_db_version'] != $plugin_db_version
373
+ )
374
  ) {
375
  if ( ! isset( $gglcptch_options['plugin_db_version'] ) ) {
376
  gglcptch_create_table();
403
  'display_settings_notice' => 1,
404
  'suggest_feature_banner' => 1,
405
  'score_v3' => 0.5,
406
+ 'hide_badge' => 0,
407
+ 'disable_submit_button' => 0
408
  );
409
 
410
  if ( function_exists( 'get_editable_roles' ) ) {
467
  WHERE ( `ip_from_int` <= {$ip_int} AND `ip_to_int` >= {$ip_int} ) OR `ip` LIKE '{$ip}' LIMIT 1;"
468
  );
469
  $checked = is_null( $result ) || ! $result ? false : true;
 
 
470
  }
471
  }
472
  return $checked;
513
  }
514
  }
515
 
516
+ $result = (
517
+ ! empty( $gglcptch_options[ $form_slug ] ) &&
518
+ ( ! $is_user_logged_in || ! gglcptch_is_hidden_for_role() )
519
+ );
520
+
521
+ return $result;
522
  }
523
  }
524
 
527
  function gglcptch_is_hidden_for_role() {
528
  global $current_user, $gglcptch_options;
529
 
530
+ $result = false;
 
 
531
 
532
+ if ( ! empty( $current_user->roles ) ) {
533
+ $role = $current_user->roles[0];
534
+ $result = ! empty( $gglcptch_options[ $role ] );
535
+ }
536
+ return $result;
 
 
 
 
537
  }
538
  }
539
 
552
  $gglcptch_count = 1;
553
  }
554
 
 
 
 
555
  $content .= '<div class="gglcptch gglcptch_' . $gglcptch_options['recaptcha_version'] . '">';
556
 
557
+ if ( $gglcptch_options['hide_badge'] ) {
558
  $content .= sprintf(
559
  '<div>%s<a href="https://policies.google.com/privacy">%s</a>%s<a href="https://policies.google.com/terms">%s</a>%s</div>',
560
  __( 'This site is protected by reCAPTCHA and the Google ', 'google-captcha' ),
564
  __( ' apply.', 'google-captcha' )
565
  );
566
  }
567
+ if ( ! $gglcptch_options['private_key'] || ! $gglcptch_options['public_key'] ) {
568
  if ( current_user_can( 'manage_options' ) ) {
569
  $content .= sprintf(
570
  '<strong>%s <a target="_blank" href="https://www.google.com/recaptcha/admin#list">%s</a> %s <a target="_blank" href="%s">%s</a>.</strong>',
590
  <div style="width: 302px;">
591
  <div style="width: 302px; height: 422px; position: relative;">
592
  <div style="width: 302px; height: 422px; position: absolute;">
593
+ <iframe src="https://www.google.com/recaptcha/api/fallback?k=' . $gglcptch_options['public_key'] . '" frameborder="0" scrolling="no" style="width: 302px; height:422px; border-style: none;"></iframe>
594
  </div>
595
  </div>
596
  <div style="border-style: none; bottom: 12px; left: 25px; margin: 0px; padding: 0px; right: 25px; background: #f9f9f9; border: 1px solid #c1c1c1; border-radius: 3px; height: 60px; width: 300px;">
600
  </noscript>';
601
  $deps = ( ! empty( $gglcptch_options['disable_submit'] ) ) ? array( 'gglcptch_pre_api' ) : array( 'jquery' );
602
  } elseif ( isset( $gglcptch_options['recaptcha_version'] ) && 'v3' == $gglcptch_options['recaptcha_version'] ) {
 
603
  $content .= '<input type="hidden" id="g-recaptcha-response" name="g-recaptcha-response"> ' ;
604
  $content .= '<script src="' . $api_url . '"></script>
605
  <script>
606
  grecaptcha.ready(function() {
607
+ grecaptcha.execute(\''. $gglcptch_options['public_key'] .'\', {action: \'BWS_reCaptcha\'}).then(function(token) {
608
  document.getElementById(\'g-recaptcha-response\').value=token;
609
  });
610
  });
622
  }
623
  add_action( 'wp_footer', 'gglcptch_add_scripts' );
624
  if (
625
+ $gglcptch_options['login_form'] ||
626
+ $gglcptch_options['reset_pwd_form'] ||
627
+ $gglcptch_options['registration_form']
628
  ) {
629
  add_action( 'login_footer', 'gglcptch_add_scripts' );
630
  }
663
  function gglcptch_get_api_url() {
664
  global $gglcptch_options;
665
 
666
+ switch ( true ) {
667
+ case (
668
+ isset( $gglcptch_options['recaptcha_version'] ) &&
669
+ in_array( $gglcptch_options['recaptcha_version'], array( 'v2', 'invisible' ) )
670
+ ) :
671
+ $callback = ( ! empty( $gglcptch_options['disable_submit'] ) ) ? 'onload=gglcptch_onload_callback&' : '';
672
+ $api_url = sprintf( 'https://www.google.com/recaptcha/api.js?%srender=explicit', $callback );
673
+ break;
674
+ case (
675
+ isset( $gglcptch_options['recaptcha_version'] ) &&
676
+ 'v3' == $gglcptch_options['recaptcha_version']
677
+ ) :
678
+ $api_url = sprintf( 'https://www.google.com/recaptcha/api.js?render=%s', $gglcptch_options['public_key'] );
679
+ break;
680
+ default :
681
+ $api_url = 'https://www.google.com/recaptcha/api/js/recaptcha_ajax.js';
682
+ }
683
  return $api_url;
684
  }
685
  }
716
  register_gglcptch_settings();
717
  }
718
 
719
+ if ( ! $gglcptch_options['public_key'] || ! $gglcptch_options['private_key'] ) {
 
 
 
720
  $errors = new WP_Error;
721
  $errors->add( 'gglcptch_error', gglcptch_get_message() );
722
  return array(
743
  'reason' => 'RECAPTCHA_EMPTY_RESPONSE'
744
  );
745
  } else {
746
+ $response = gglcptch_get_response( $gglcptch_options['private_key'], $gglcptch_remote_addr );
747
  if ( isset( $response['success'] ) && !! $response['success'] ) {
748
  if ( 'v3' == $gglcptch_options['recaptcha_version'] && $response['score'] < $gglcptch_options['score_v3'] ) {
749
  $result = array(
903
  $la_form_slug = "{$form_slug}_recaptcha_check";
904
 
905
  /* if reCAPTCHA answer is right */
906
+ if ( true == $check_result ) {
907
  /* check if user IP is blocked in the Limit Attempts plugin lists */
908
  $check_result = apply_filters( 'lmtttmpts_check_ip', $check_result );
909
+ do_action( 'lmtttmpts_form_success', $la_form_slug, gglcptch_get_ip(), array( 'form_name' => $gglcptch_forms[ $form_slug ]['form_name'] ) );
 
 
 
910
  } else {
911
  /* if reCAPTCHA answer is wrong */
912
  $form_data = array( 'form_name' => $gglcptch_forms[ $form_slug ]['form_name'] );
933
  if ( isset( $_SERVER ) ) {
934
  $server_vars = array( 'HTTP_X_REAL_IP', 'HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'REMOTE_ADDR' );
935
  foreach( $server_vars as $var ) {
936
+ if ( ! empty( $_SERVER[ $var ] ) ) {
937
  if ( filter_var( $_SERVER[ $var ], FILTER_VALIDATE_IP ) ) {
938
  $ip = $_SERVER[ $var ];
939
  break;
966
  $messages = array(
967
  /* custom error */
968
  'RECAPTCHA_EMPTY_RESPONSE' => __( 'User response is missing.', 'google-captcha' ),
 
 
 
 
 
 
 
969
  /* v2 error */
970
  'missing-input-secret' => __( 'Secret Key is missing.', 'google-captcha' ),
971
  'invalid-input-secret' => sprintf(
includes/class-gglcptch-settings-tabs.php CHANGED
@@ -113,14 +113,15 @@ if ( ! class_exists( 'Gglcptch_Settings_Tabs' ) ) {
113
  $this->options['need_keys_verified_check'] = true;
114
  }
115
 
116
- $this->options['whitelist_message'] = stripslashes( esc_html( $_POST['gglcptch_whitelist_message'] ) );
117
- $this->options['public_key'] = trim( stripslashes( esc_html( $_POST['gglcptch_public_key'] ) ) );
118
- $this->options['private_key'] = trim( stripslashes( esc_html( $_POST['gglcptch_private_key'] ) ) );
119
- $this->options['recaptcha_version'] = in_array( $_POST['gglcptch_recaptcha_version'], array( 'v2', 'invisible', 'v3' ) ) ? $_POST['gglcptch_recaptcha_version']: 'v2';
120
- $this->options['theme_v2'] = stripslashes( esc_html( $_POST['gglcptch_theme_v2'] ) );
121
- $this->options['score_v3'] = isset( $_POST['gglcptch_score_v3'] ) ? (float)$_POST['gglcptch_score_v3'] : 0.5;
122
- $this->options['disable_submit'] = isset( $_POST['gglcptch_disable_submit'] ) ? 1 : 0;
123
- $this->options['hide_badge'] = isset( $_POST['gglcptch_hide_badge'] ) ? 1 : 0;
 
124
 
125
  foreach ( $this->forms as $form_slug => $form_data ) {
126
  $this->options[ $form_slug ] = isset( $_POST["gglcptch_{$form_slug}"] ) ? 1 : 0;
@@ -265,7 +266,7 @@ if ( ! class_exists( 'Gglcptch_Settings_Tabs' ) ) {
265
  <?php _e( 'Hide reCAPTCHA Badge', 'google-captcha' ); ?>
266
  </th>
267
  <td>
268
- <input<?php echo $this->change_permission_attr; ?> id="gglcptch_hide_badge" type="checkbox" <?php checked( ! empty( $this->options["hide_badge"] ) ); ?> name="gglcptch_hide_badge" value="1" />&nbsp;
269
  <span class="bws_info">
270
  <?php _e( 'Enable to hide reCAPTCHA Badge for Version 3 and Invisble reCAPTCHA.', 'google-captcha' ); ?>
271
  </span>
@@ -277,8 +278,8 @@ if ( ! class_exists( 'Gglcptch_Settings_Tabs' ) ) {
277
  </th>
278
  <td>
279
  <select name="gglcptch_theme_v2">
280
- <option value="light" <?php selected( 'light', $this->options['theme_v2'] ); ?>>Light</option>
281
- <option value="dark" <?php selected( 'dark', $this->options['theme_v2'] ); ?>>Dark</option>
282
  </select>
283
  </td>
284
  </tr>
@@ -312,14 +313,25 @@ if ( ! class_exists( 'Gglcptch_Settings_Tabs' ) ) {
312
  </td>
313
  </tr>
314
  <tr valign="top">
315
- <th scope="row"><?php _e( 'Disabled Submit Button', 'google-captcha' ); ?></th>
316
  <td>
317
- <input<?php echo $this->change_permission_attr; ?> id="gglcptch_disable_submit" type="checkbox" <?php checked( ! empty( $this->options["disable_submit"] ) ); ?> name="gglcptch_disable_submit" value="1" />&nbsp;
318
  <span class="bws_info">
319
  <?php _e( 'Enable to keep submit button disabled until reCAPTCHA is loaded (do not use this option if you see "Failed to load Google reCAPTCHA" message).', 'google-captcha' ); ?>
320
  </span>
321
  </td>
322
  </tr>
 
 
 
 
 
 
 
 
 
 
 
323
  </table>
324
  <?php }
325
 
113
  $this->options['need_keys_verified_check'] = true;
114
  }
115
 
116
+ $this->options['whitelist_message'] = stripslashes( esc_html( $_POST['gglcptch_whitelist_message'] ) );
117
+ $this->options['public_key'] = trim( stripslashes( esc_html( $_POST['gglcptch_public_key'] ) ) );
118
+ $this->options['private_key'] = trim( stripslashes( esc_html( $_POST['gglcptch_private_key'] ) ) );
119
+ $this->options['recaptcha_version'] = in_array( $_POST['gglcptch_recaptcha_version'], array( 'v2', 'invisible', 'v3' ) ) ? $_POST['gglcptch_recaptcha_version']: 'v2';
120
+ $this->options['theme_v2'] = stripslashes( esc_html( $_POST['gglcptch_theme_v2'] ) );
121
+ $this->options['score_v3'] = isset( $_POST['gglcptch_score_v3'] ) ? (float)$_POST['gglcptch_score_v3'] : 0.5;
122
+ $this->options['disable_submit'] = isset( $_POST['gglcptch_disable_submit'] ) ? 1 : 0;
123
+ $this->options['hide_badge'] = isset( $_POST['gglcptch_hide_badge'] ) ? 1 : 0;
124
+ $this->options['disable_submit_button'] = isset( $_POST['gglcptch_disable_submit_button'] ) ? 1 : 0;
125
 
126
  foreach ( $this->forms as $form_slug => $form_data ) {
127
  $this->options[ $form_slug ] = isset( $_POST["gglcptch_{$form_slug}"] ) ? 1 : 0;
266
  <?php _e( 'Hide reCAPTCHA Badge', 'google-captcha' ); ?>
267
  </th>
268
  <td>
269
+ <input<?php echo $this->change_permission_attr; ?> id="gglcptch_hide_badge" type="checkbox" <?php checked( ! empty( $this->options['hide_badge'] ) ); ?> name="gglcptch_hide_badge" value="1" />&nbsp;
270
  <span class="bws_info">
271
  <?php _e( 'Enable to hide reCAPTCHA Badge for Version 3 and Invisble reCAPTCHA.', 'google-captcha' ); ?>
272
  </span>
278
  </th>
279
  <td>
280
  <select name="gglcptch_theme_v2">
281
+ <option value="light" <?php selected( 'light', $this->options['theme_v2'] ); ?>><?php _e( 'Light', 'google-captcha' ); ?></option>
282
+ <option value="dark" <?php selected( 'dark', $this->options['theme_v2'] ); ?>><?php _e( 'Dark', 'google-captcha' ); ?></option>
283
  </select>
284
  </td>
285
  </tr>
313
  </td>
314
  </tr>
315
  <tr valign="top">
316
+ <th scope="row"><?php _e( 'Advanced Protection', 'google-captcha' ); ?></th>
317
  <td>
318
+ <input<?php echo $this->change_permission_attr; ?> id="gglcptch_disable_submit" type="checkbox" <?php checked( ! empty( $this->options["disable_submit"] ) ); ?> name="gglcptch_disable_submit" value="1" />
319
  <span class="bws_info">
320
  <?php _e( 'Enable to keep submit button disabled until reCAPTCHA is loaded (do not use this option if you see "Failed to load Google reCAPTCHA" message).', 'google-captcha' ); ?>
321
  </span>
322
  </td>
323
  </tr>
324
+ <tr class="gglcptch_submit_v2" valign="top">
325
+ <th scope="row">
326
+ <?php _e( 'Disabled Submit Button', 'google-captcha' ); ?>
327
+ </th>
328
+ <td>
329
+ <input<?php echo $this->change_permission_attr; ?> id="gglcptch_disable_submit_button" type="checkbox" <?php checked( ! empty( $this->options['disable_submit_button'] ) ); ?> name="gglcptch_disable_submit_button" value="1" />
330
+ <span class="bws_info">
331
+ <?php _e( 'Enable to keep submit button disabled until user passes the reCAPTCHA test (for Version 2).', 'google-captcha' ); ?>
332
+ </span>
333
+ </td>
334
+ </tr>
335
  </table>
336
  <?php }
337
 
includes/forms.php CHANGED
@@ -5,7 +5,7 @@
5
  */
6
  if ( ! function_exists( 'gglcptch_get_forms' ) ) {
7
  function gglcptch_get_forms() {
8
- global $gglcptch_options, $gglcptch_forms;
9
 
10
  $default_forms = array(
11
  'login_form' => array( 'form_name' => __( 'Login form', 'google-captcha' ) ),
@@ -112,9 +112,7 @@ if ( ! function_exists( 'gglcptch_get_section_notice' ) ) {
112
  $slug = explode( '/', $plugins[ $section_slug ] );
113
  $slug = $slug[0];
114
  $plugin_info = gglcptch_plugin_status( $plugins[ $section_slug ], get_plugins(), $is_network_admin );
115
- if ( 'activated' == $plugin_info['status'] ) {
116
- /* check required conditions */
117
- } elseif ( 'deactivated' == $plugin_info['status'] ) {
118
  $section_notice = '<a href="' . self_admin_url( 'plugins.php' ) . '">' . __( 'Activate', 'google-captcha' ) . '</a>';
119
  } elseif ( 'not_installed' == $plugin_info['status'] ) {
120
  $section_notice = sprintf( '<a href="http://wordpress.org/plugins/%s/" target="_blank">%s</a>', $slug, __( 'Install Now', 'google-captcha' ) );
@@ -138,9 +136,7 @@ if ( ! function_exists( 'gglcptch_get_form_notice' ) ) {
138
  if ( isset( $plugins[ $form_slug ] ) ) {
139
  $plugin_info = gglcptch_plugin_status( $plugins[ $form_slug ], get_plugins(), is_network_admin() );
140
 
141
- if ( 'activated' == $plugin_info['status'] ) {
142
- /* check required conditions */
143
- } elseif ( 'deactivated' == $plugin_info['status'] ) {
144
  $form_notice = '<a href="' . self_admin_url( 'plugins.php' ) . '">' . __( 'Activate', 'google-captcha' ) . '</a>';
145
  } elseif ( 'not_installed' == $plugin_info['status'] ) {
146
  if ( 'contact_form' == $form_slug ) {
@@ -158,7 +154,7 @@ if ( ! function_exists( 'gglcptch_get_form_notice' ) ) {
158
 
159
  if ( ! function_exists( 'gglcptch_add_actions' ) ) {
160
  function gglcptch_add_actions() {
161
- global $gglcptch_options, $wp_version;
162
 
163
  $is_user_logged_in = is_user_logged_in();
164
 
5
  */
6
  if ( ! function_exists( 'gglcptch_get_forms' ) ) {
7
  function gglcptch_get_forms() {
8
+ global $gglcptch_forms;
9
 
10
  $default_forms = array(
11
  'login_form' => array( 'form_name' => __( 'Login form', 'google-captcha' ) ),
112
  $slug = explode( '/', $plugins[ $section_slug ] );
113
  $slug = $slug[0];
114
  $plugin_info = gglcptch_plugin_status( $plugins[ $section_slug ], get_plugins(), $is_network_admin );
115
+ if ( 'deactivated' == $plugin_info['status'] ) {
 
 
116
  $section_notice = '<a href="' . self_admin_url( 'plugins.php' ) . '">' . __( 'Activate', 'google-captcha' ) . '</a>';
117
  } elseif ( 'not_installed' == $plugin_info['status'] ) {
118
  $section_notice = sprintf( '<a href="http://wordpress.org/plugins/%s/" target="_blank">%s</a>', $slug, __( 'Install Now', 'google-captcha' ) );
136
  if ( isset( $plugins[ $form_slug ] ) ) {
137
  $plugin_info = gglcptch_plugin_status( $plugins[ $form_slug ], get_plugins(), is_network_admin() );
138
 
139
+ if ( 'deactivated' == $plugin_info['status'] ) {
 
 
140
  $form_notice = '<a href="' . self_admin_url( 'plugins.php' ) . '">' . __( 'Activate', 'google-captcha' ) . '</a>';
141
  } elseif ( 'not_installed' == $plugin_info['status'] ) {
142
  if ( 'contact_form' == $form_slug ) {
154
 
155
  if ( ! function_exists( 'gglcptch_add_actions' ) ) {
156
  function gglcptch_add_actions() {
157
+ global $gglcptch_options;
158
 
159
  $is_user_logged_in = is_user_logged_in();
160
 
includes/whitelist.php CHANGED
@@ -42,7 +42,7 @@ if ( ! class_exists( 'Gglcptch_Whitelist' ) ) {
42
  * @return void
43
  */
44
  function display_content() {
45
- global $wp_version, $gglcptch_options; ?>
46
  <h1 class="wp-heading-inline"><?php _e( 'Google Captcha Whitelist', 'google-captcha' ); ?></h1>
47
  <?php if ( ! ( isset( $_REQUEST['gglcptch_show_whitelist_form'] ) || isset( $_REQUEST['gglcptch_add_to_whitelist'] ) ) ) { ?>
48
  <form method="post" action="admin.php?page=google-captcha-whitelist.php" style="display: inline;">
42
  * @return void
43
  */
44
  function display_content() {
45
+ global $gglcptch_options; ?>
46
  <h1 class="wp-heading-inline"><?php _e( 'Google Captcha Whitelist', 'google-captcha' ); ?></h1>
47
  <?php if ( ! ( isset( $_REQUEST['gglcptch_show_whitelist_form'] ) || isset( $_REQUEST['gglcptch_add_to_whitelist'] ) ) ) { ?>
48
  <form method="post" action="admin.php?page=google-captcha-whitelist.php" style="display: inline;">
js/admin_script.js CHANGED
@@ -14,10 +14,12 @@
14
  $( '.gglcptch_theme_' + $( this ).val() ).show();
15
  $( '.gglcptch_score_' + $( this ).val() ).show();
16
  $( '.gglcptch_badge_v3' ).show();
 
17
  } else {
18
  $( '.gglcptch_theme_' + $( this ).val() ).hide();
19
  $( '.gglcptch_score_' + $( this ).val() ).hide();
20
  $( '.gglcptch_badge_' + $( this ).val() ).hide();
 
21
  }
22
  } );
23
  } ).trigger( 'change' );
14
  $( '.gglcptch_theme_' + $( this ).val() ).show();
15
  $( '.gglcptch_score_' + $( this ).val() ).show();
16
  $( '.gglcptch_badge_v3' ).show();
17
+ $( '.gglcptch_submit_' + $( this ).val() ).show();
18
  } else {
19
  $( '.gglcptch_theme_' + $( this ).val() ).hide();
20
  $( '.gglcptch_score_' + $( this ).val() ).hide();
21
  $( '.gglcptch_badge_' + $( this ).val() ).hide();
22
+ $( '.gglcptch_submit_' + $( this ).val() ).hide();
23
  }
24
  } );
25
  } ).trigger( 'change' );
js/script.js CHANGED
@@ -6,7 +6,14 @@
6
  * display reCaptcha for plugin`s block
7
  */
8
  $( '.gglcptch_v1, .gglcptch_v2, .gglcptch_invisible' ).each( function() {
 
9
  var container = $( this ).find( '.gglcptch_recaptcha' );
 
 
 
 
 
 
10
  if (
11
  container.is( ':empty' ) &&
12
  ( gglcptch.vars.visibility || $( this ).is( ':visible' ) === $( this ).is( ':not(:hidden)' ) )
@@ -93,6 +100,11 @@
93
  return;
94
  }
95
 
 
 
 
 
 
96
  function storeEvents( el ) {
97
  var target = el,
98
  events = $._data( el.get( 0 ), 'events' );
@@ -213,6 +225,12 @@
213
  }
214
  };
215
 
 
 
 
 
 
 
216
  $( document ).ready( function() {
217
  var tryCounter = 0,
218
  /* launching timer so that the function keeps trying to display the reCAPTCHA again and again until google js api is loaded */
6
  * display reCaptcha for plugin`s block
7
  */
8
  $( '.gglcptch_v1, .gglcptch_v2, .gglcptch_invisible' ).each( function() {
9
+
10
  var container = $( this ).find( '.gglcptch_recaptcha' );
11
+
12
+ // add data-callback to disable submit
13
+ if ( 'v2' === gglcptch.options.version ) {
14
+ container.attr( 'data-callback', 'recaptchaCallback' );
15
+ }
16
+
17
  if (
18
  container.is( ':empty' ) &&
19
  ( gglcptch.vars.visibility || $( this ).is( ':visible' ) === $( this ).is( ':not(:hidden)' ) )
100
  return;
101
  }
102
 
103
+ // add attribute disable to the submit
104
+ if ( 'v2' === gglcptch.options.version && gglcptch.options.disable ) {
105
+ $( 'form input:submit, form button' ).prop( 'disabled', true );
106
+ }
107
+
108
  function storeEvents( el ) {
109
  var target = el,
110
  events = $._data( el.get( 0 ), 'events' );
225
  }
226
  };
227
 
228
+ // get callback and remove disabled attribute from submit
229
+ function recaptchaCallback() {
230
+ $( 'form input:submit, form button' ).prop( 'disabled', false );
231
+ }
232
+ window.recaptchaCallback = recaptchaCallback;
233
+
234
  $( document ).ready( function() {
235
  var tryCounter = 0,
236
  /* launching timer so that the function keeps trying to display the reCAPTCHA again and again until google js api is loaded */
languages/google-captcha-cs_CZ.po CHANGED
@@ -2,7 +2,7 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Google Сaptcha\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2019-03-04 12:07+0200\n"
6
  "PO-Revision-Date: \n"
7
  "Last-Translator: Mik013\n"
8
  "Language-Team: Mik013\n"
@@ -17,33 +17,33 @@ msgstr ""
17
  "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
18
  "X-Poedit-SearchPath-0: .\n"
19
 
20
- #: google-captcha.php:38 google-captcha.php:40 google-captcha.php:457
21
  #: includes/class-gglcptch-settings-tabs.php:148
22
  msgid "Google Captcha Settings"
23
  msgstr "Nastavení Google Captcha"
24
 
25
- #: google-captcha.php:40 google-captcha.php:1055 google-captcha.php:1068
26
  #: includes/class-gglcptch-settings-tabs.php:25
27
  msgid "Settings"
28
  msgstr "Nastavení"
29
 
30
- #: google-captcha.php:42 includes/whitelist.php:46
31
  msgid "Google Captcha Whitelist"
32
  msgstr "Google Captcha seznam povolených"
33
 
34
- #: google-captcha.php:42
35
  msgid "Whitelist"
36
  msgstr "Seznam povolených"
37
 
38
- #: google-captcha.php:48 includes/pro_banners.php:29
39
  msgid "Upgrade to Pro"
40
  msgstr "Aktualizovat na Pro"
41
 
42
- #: google-captcha.php:240
43
  msgid "Please wait until Google reCAPTCHA is loaded."
44
  msgstr "Počkejte, než se Google reCAPTCHA načte."
45
 
46
- #: google-captcha.php:241
47
  msgid ""
48
  "Failed to load Google reCAPTCHA. Please check your internet connection and "
49
  "reload this page."
@@ -51,87 +51,87 @@ msgstr ""
51
  "Nepodařilo se načíst Google reCAPTCHA. Zkontrolujte připojení k Internetu a "
52
  "znovu načtěte tuto stránku."
53
 
54
- #: google-captcha.php:257
55
  msgid "Warning"
56
  msgstr "Upozornění"
57
 
58
- #: google-captcha.php:360
59
  msgid "You are in the whitelist"
60
  msgstr "Jste na seznamu povolených"
61
 
62
- #: google-captcha.php:458
63
  msgid "Please enable JavaScript in your browser."
64
  msgstr ""
65
 
66
- #: google-captcha.php:541
67
  msgid "This site is protected by reCAPTCHA and the Google "
68
  msgstr ""
69
 
70
- #: google-captcha.php:542
71
  msgid "Privacy Policy"
72
  msgstr ""
73
 
74
- #: google-captcha.php:543
75
  msgid " and "
76
  msgstr ""
77
 
78
- #: google-captcha.php:544
79
  msgid "Terms of Service"
80
  msgstr ""
81
 
82
- #: google-captcha.php:545
83
  msgid " apply."
84
  msgstr ""
85
 
86
- #: google-captcha.php:552 google-captcha.php:1090
87
  msgid "To use Google Captcha you must get the keys from"
88
  msgstr "Chcete-li použít Google Captcha musíte získat klíče z"
89
 
90
- #: google-captcha.php:553 google-captcha.php:1091
91
  msgid "here"
92
  msgstr "zde"
93
 
94
- #: google-captcha.php:554 google-captcha.php:1092
95
  msgid "and enter them on the"
96
  msgstr "a zadejte je na"
97
 
98
- #: google-captcha.php:556 google-captcha.php:1094
99
  msgid "plugin setting page"
100
  msgstr "stránce nastavení pluginu"
101
 
102
- #: google-captcha.php:823 includes/forms.php:356
103
  msgid "Error"
104
  msgstr "Chyba"
105
 
106
- #: google-captcha.php:948
107
  msgid "User response is missing."
108
  msgstr "Chybí odezva uživatele."
109
 
110
- #: google-captcha.php:952 google-captcha.php:960
111
  msgid "Secret Key is invalid."
112
  msgstr "Tajný klíč je neplatný."
113
 
114
- #: google-captcha.php:953 google-captcha.php:961
115
  msgid "Check your domain configurations"
116
  msgstr "Zkontrolujte konfiguraci vaší domény"
117
 
118
- #: google-captcha.php:954 google-captcha.php:962
119
  msgid "and enter it again"
120
  msgstr "a zadejte jej znovu"
121
 
122
- #: google-captcha.php:957
123
  msgid "Secret Key is missing."
124
  msgstr "Tajný klíč chybí."
125
 
126
- #: google-captcha.php:964
127
  msgid "User response is invalid"
128
  msgstr "Neplatná odezva uživatele"
129
 
130
- #: google-captcha.php:965
131
  msgid "You have entered an incorrect reCAPTCHA value."
132
  msgstr "Zadali jste nesprávnou hodnotu reCAPTCHA ."
133
 
134
- #: google-captcha.php:966
135
  msgid ""
136
  "More than one reCAPTCHA has been found in the current form. Please remove "
137
  "all unnecessary reCAPTCHA fields to make it work properly."
@@ -139,33 +139,33 @@ msgstr ""
139
  "V aktuálním formuláři byla zjištěna více než jedna reCAPTCHA. Pro správnou "
140
  "funkcionalitu, odstraňte všechny nepotřebné reCAPTCHA pole."
141
 
142
- #: google-captcha.php:968
143
  msgid "reCAPTCHA v3 test failed"
144
  msgstr ""
145
 
146
- #: google-captcha.php:1006
147
  msgid "Please submit \"Test verification\""
148
  msgstr "Odešlete &#8222;Test ověření&#8220;"
149
 
150
- #: google-captcha.php:1008
151
  msgid "Please complete the captcha and submit \"Test verification\""
152
  msgstr "Doplňte captcha a odešlete &#8222;Test ověření&#8220;"
153
 
154
- #: google-captcha.php:1014
155
  msgid "Test verification"
156
  msgstr "Test ověření"
157
 
158
- #: google-captcha.php:1035
159
  msgid "The verification is successfully completed."
160
  msgstr "Ověření je úspěšně dokončeno."
161
 
162
- #: google-captcha.php:1070
163
  msgid "FAQ"
164
  msgstr ""
165
  "Časté dotazy <acronym title=\\\"Frequently asked questions\\\">(FAQ)</"
166
  "acronym>"
167
 
168
- #: google-captcha.php:1071
169
  msgid "Support"
170
  msgstr "Podpora"
171
 
@@ -270,6 +270,14 @@ msgstr ""
270
  msgid "Theme"
271
  msgstr "Šablona"
272
 
 
 
 
 
 
 
 
 
273
  #: includes/class-gglcptch-settings-tabs.php:287
274
  msgid "Score"
275
  msgstr ""
@@ -342,7 +350,7 @@ msgstr "Testimonials"
342
  msgid "WordPress default"
343
  msgstr "WordPress"
344
 
345
- #: includes/forms.php:47 includes/pro_banners.php:75
346
  msgid "External Plugins"
347
  msgstr "Externí pluginy"
348
 
@@ -465,36 +473,42 @@ msgstr ""
465
  #: includes/pro_banners.php:70
466
  #, fuzzy
467
  #| msgid "Jetpack Contact Form"
468
- msgid "Contact Forms"
469
  msgstr "Jetpack Contact Form"
470
 
471
  #: includes/pro_banners.php:71
472
  #, fuzzy
473
  #| msgid "Login form"
474
- msgid "Login Forms"
475
  msgstr "Přihlašovací formulář"
476
 
477
- #: includes/pro_banners.php:167
 
 
 
 
 
 
478
  msgid "Size"
479
  msgstr "Velikost"
480
 
481
- #: includes/pro_banners.php:171
482
  msgid "Normal"
483
  msgstr "Normální"
484
 
485
- #: includes/pro_banners.php:172
486
  msgid "Compact"
487
  msgstr "Kompaktní"
488
 
489
- #: includes/pro_banners.php:177
490
  msgid "Language"
491
  msgstr "Jazyk"
492
 
493
- #: includes/pro_banners.php:185
494
  msgid "Multilanguage"
495
  msgstr "Multilanguage"
496
 
497
- #: includes/pro_banners.php:188
498
  msgid ""
499
  "Enable to switch language automatically on multilingual website using "
500
  "Multilanguage plugin."
2
  msgstr ""
3
  "Project-Id-Version: Google Сaptcha\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2019-04-16 17:22+0300\n"
6
  "PO-Revision-Date: \n"
7
  "Last-Translator: Mik013\n"
8
  "Language-Team: Mik013\n"
17
  "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
18
  "X-Poedit-SearchPath-0: .\n"
19
 
20
+ #: google-captcha.php:39 google-captcha.php:46 google-captcha.php:476
21
  #: includes/class-gglcptch-settings-tabs.php:148
22
  msgid "Google Captcha Settings"
23
  msgstr "Nastavení Google Captcha"
24
 
25
+ #: google-captcha.php:47 google-captcha.php:1075 google-captcha.php:1088
26
  #: includes/class-gglcptch-settings-tabs.php:25
27
  msgid "Settings"
28
  msgstr "Nastavení"
29
 
30
+ #: google-captcha.php:54 includes/whitelist.php:46
31
  msgid "Google Captcha Whitelist"
32
  msgstr "Google Captcha seznam povolených"
33
 
34
+ #: google-captcha.php:55
35
  msgid "Whitelist"
36
  msgstr "Seznam povolených"
37
 
38
+ #: google-captcha.php:71 includes/pro_banners.php:29
39
  msgid "Upgrade to Pro"
40
  msgstr "Aktualizovat na Pro"
41
 
42
+ #: google-captcha.php:259
43
  msgid "Please wait until Google reCAPTCHA is loaded."
44
  msgstr "Počkejte, než se Google reCAPTCHA načte."
45
 
46
+ #: google-captcha.php:260
47
  msgid ""
48
  "Failed to load Google reCAPTCHA. Please check your internet connection and "
49
  "reload this page."
51
  "Nepodařilo se načíst Google reCAPTCHA. Zkontrolujte připojení k Internetu a "
52
  "znovu načtěte tuto stránku."
53
 
54
+ #: google-captcha.php:276
55
  msgid "Warning"
56
  msgstr "Upozornění"
57
 
58
+ #: google-captcha.php:379
59
  msgid "You are in the whitelist"
60
  msgstr "Jste na seznamu povolených"
61
 
62
+ #: google-captcha.php:477
63
  msgid "Please enable JavaScript in your browser."
64
  msgstr ""
65
 
66
+ #: google-captcha.php:560
67
  msgid "This site is protected by reCAPTCHA and the Google "
68
  msgstr ""
69
 
70
+ #: google-captcha.php:561
71
  msgid "Privacy Policy"
72
  msgstr ""
73
 
74
+ #: google-captcha.php:562
75
  msgid " and "
76
  msgstr ""
77
 
78
+ #: google-captcha.php:563
79
  msgid "Terms of Service"
80
  msgstr ""
81
 
82
+ #: google-captcha.php:564
83
  msgid " apply."
84
  msgstr ""
85
 
86
+ #: google-captcha.php:571 google-captcha.php:1110
87
  msgid "To use Google Captcha you must get the keys from"
88
  msgstr "Chcete-li použít Google Captcha musíte získat klíče z"
89
 
90
+ #: google-captcha.php:572 google-captcha.php:1111
91
  msgid "here"
92
  msgstr "zde"
93
 
94
+ #: google-captcha.php:573 google-captcha.php:1112
95
  msgid "and enter them on the"
96
  msgstr "a zadejte je na"
97
 
98
+ #: google-captcha.php:575 google-captcha.php:1114
99
  msgid "plugin setting page"
100
  msgstr "stránce nastavení pluginu"
101
 
102
+ #: google-captcha.php:843 includes/forms.php:356
103
  msgid "Error"
104
  msgstr "Chyba"
105
 
106
+ #: google-captcha.php:968
107
  msgid "User response is missing."
108
  msgstr "Chybí odezva uživatele."
109
 
110
+ #: google-captcha.php:972 google-captcha.php:980
111
  msgid "Secret Key is invalid."
112
  msgstr "Tajný klíč je neplatný."
113
 
114
+ #: google-captcha.php:973 google-captcha.php:981
115
  msgid "Check your domain configurations"
116
  msgstr "Zkontrolujte konfiguraci vaší domény"
117
 
118
+ #: google-captcha.php:974 google-captcha.php:982
119
  msgid "and enter it again"
120
  msgstr "a zadejte jej znovu"
121
 
122
+ #: google-captcha.php:977
123
  msgid "Secret Key is missing."
124
  msgstr "Tajný klíč chybí."
125
 
126
+ #: google-captcha.php:984
127
  msgid "User response is invalid"
128
  msgstr "Neplatná odezva uživatele"
129
 
130
+ #: google-captcha.php:985
131
  msgid "You have entered an incorrect reCAPTCHA value."
132
  msgstr "Zadali jste nesprávnou hodnotu reCAPTCHA ."
133
 
134
+ #: google-captcha.php:986
135
  msgid ""
136
  "More than one reCAPTCHA has been found in the current form. Please remove "
137
  "all unnecessary reCAPTCHA fields to make it work properly."
139
  "V aktuálním formuláři byla zjištěna více než jedna reCAPTCHA. Pro správnou "
140
  "funkcionalitu, odstraňte všechny nepotřebné reCAPTCHA pole."
141
 
142
+ #: google-captcha.php:988
143
  msgid "reCAPTCHA v3 test failed"
144
  msgstr ""
145
 
146
+ #: google-captcha.php:1026
147
  msgid "Please submit \"Test verification\""
148
  msgstr "Odešlete &#8222;Test ověření&#8220;"
149
 
150
+ #: google-captcha.php:1028
151
  msgid "Please complete the captcha and submit \"Test verification\""
152
  msgstr "Doplňte captcha a odešlete &#8222;Test ověření&#8220;"
153
 
154
+ #: google-captcha.php:1034
155
  msgid "Test verification"
156
  msgstr "Test ověření"
157
 
158
+ #: google-captcha.php:1055
159
  msgid "The verification is successfully completed."
160
  msgstr "Ověření je úspěšně dokončeno."
161
 
162
+ #: google-captcha.php:1090
163
  msgid "FAQ"
164
  msgstr ""
165
  "Časté dotazy <acronym title=\\\"Frequently asked questions\\\">(FAQ)</"
166
  "acronym>"
167
 
168
+ #: google-captcha.php:1091
169
  msgid "Support"
170
  msgstr "Podpora"
171
 
270
  msgid "Theme"
271
  msgstr "Šablona"
272
 
273
+ #: includes/class-gglcptch-settings-tabs.php:280
274
+ msgid "Light"
275
+ msgstr ""
276
+
277
+ #: includes/class-gglcptch-settings-tabs.php:281
278
+ msgid "Dark"
279
+ msgstr ""
280
+
281
  #: includes/class-gglcptch-settings-tabs.php:287
282
  msgid "Score"
283
  msgstr ""
350
  msgid "WordPress default"
351
  msgstr "WordPress"
352
 
353
+ #: includes/forms.php:47 includes/pro_banners.php:76
354
  msgid "External Plugins"
355
  msgstr "Externí pluginy"
356
 
473
  #: includes/pro_banners.php:70
474
  #, fuzzy
475
  #| msgid "Jetpack Contact Form"
476
+ msgid "Divi Contact Form"
477
  msgstr "Jetpack Contact Form"
478
 
479
  #: includes/pro_banners.php:71
480
  #, fuzzy
481
  #| msgid "Login form"
482
+ msgid "Divi Login Forms"
483
  msgstr "Přihlašovací formulář"
484
 
485
+ #: includes/pro_banners.php:72
486
+ #, fuzzy
487
+ #| msgid "Jetpack Contact Form"
488
+ msgid "Divi Theme Contact Form"
489
+ msgstr "Jetpack Contact Form"
490
+
491
+ #: includes/pro_banners.php:174
492
  msgid "Size"
493
  msgstr "Velikost"
494
 
495
+ #: includes/pro_banners.php:178
496
  msgid "Normal"
497
  msgstr "Normální"
498
 
499
+ #: includes/pro_banners.php:179
500
  msgid "Compact"
501
  msgstr "Kompaktní"
502
 
503
+ #: includes/pro_banners.php:184
504
  msgid "Language"
505
  msgstr "Jazyk"
506
 
507
+ #: includes/pro_banners.php:192
508
  msgid "Multilanguage"
509
  msgstr "Multilanguage"
510
 
511
+ #: includes/pro_banners.php:195
512
  msgid ""
513
  "Enable to switch language automatically on multilingual website using "
514
  "Multilanguage plugin."
languages/google-captcha-es_ES.po CHANGED
@@ -2,7 +2,7 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Google Сaptcha\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2019-03-04 12:06+0200\n"
6
  "PO-Revision-Date: \n"
7
  "Last-Translator: bestwebsoft.com <plugin@bestwebsoft.com>\n"
8
  "Language-Team: Cloudzeroxyz <cloudzeroxyz@gmail.com>\n"
@@ -17,33 +17,33 @@ msgstr ""
17
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
18
  "X-Poedit-SearchPath-0: .\n"
19
 
20
- #: google-captcha.php:38 google-captcha.php:40 google-captcha.php:457
21
  #: includes/class-gglcptch-settings-tabs.php:148
22
  msgid "Google Captcha Settings"
23
  msgstr "Google Captcha Ajustes"
24
 
25
- #: google-captcha.php:40 google-captcha.php:1055 google-captcha.php:1068
26
  #: includes/class-gglcptch-settings-tabs.php:25
27
  msgid "Settings"
28
  msgstr "Configuraciónes"
29
 
30
- #: google-captcha.php:42 includes/whitelist.php:46
31
  msgid "Google Captcha Whitelist"
32
  msgstr ""
33
 
34
- #: google-captcha.php:42
35
  msgid "Whitelist"
36
  msgstr "Lista Blanca"
37
 
38
- #: google-captcha.php:48 includes/pro_banners.php:29
39
  msgid "Upgrade to Pro"
40
  msgstr "Actualizar a Pro"
41
 
42
- #: google-captcha.php:240
43
  msgid "Please wait until Google reCAPTCHA is loaded."
44
  msgstr "Por favor espere hasta que se carga Google reCAPTCHA."
45
 
46
- #: google-captcha.php:241
47
  msgid ""
48
  "Failed to load Google reCAPTCHA. Please check your internet connection and "
49
  "reload this page."
@@ -51,87 +51,87 @@ msgstr ""
51
  "Error al cargar Google reCAPTCHA. Por favor, compruebe su conexión a "
52
  "internet y vuelva a cargar esta página."
53
 
54
- #: google-captcha.php:257
55
  msgid "Warning"
56
  msgstr "Atención"
57
 
58
- #: google-captcha.php:360
59
  msgid "You are in the whitelist"
60
  msgstr "Estás en la lista blanca"
61
 
62
- #: google-captcha.php:458
63
  msgid "Please enable JavaScript in your browser."
64
  msgstr ""
65
 
66
- #: google-captcha.php:541
67
  msgid "This site is protected by reCAPTCHA and the Google "
68
  msgstr ""
69
 
70
- #: google-captcha.php:542
71
  msgid "Privacy Policy"
72
  msgstr ""
73
 
74
- #: google-captcha.php:543
75
  msgid " and "
76
  msgstr ""
77
 
78
- #: google-captcha.php:544
79
  msgid "Terms of Service"
80
  msgstr ""
81
 
82
- #: google-captcha.php:545
83
  msgid " apply."
84
  msgstr ""
85
 
86
- #: google-captcha.php:552 google-captcha.php:1090
87
  msgid "To use Google Captcha you must get the keys from"
88
  msgstr "Para utilizar Google Captcha debe obtener las claves de"
89
 
90
- #: google-captcha.php:553 google-captcha.php:1091
91
  msgid "here"
92
  msgstr "aquí"
93
 
94
- #: google-captcha.php:554 google-captcha.php:1092
95
  msgid "and enter them on the"
96
  msgstr "e introducirlas en"
97
 
98
- #: google-captcha.php:556 google-captcha.php:1094
99
  msgid "plugin setting page"
100
  msgstr "página de configuración de plugin"
101
 
102
- #: google-captcha.php:823 includes/forms.php:356
103
  msgid "Error"
104
  msgstr "Error "
105
 
106
- #: google-captcha.php:948
107
  msgid "User response is missing."
108
  msgstr "Respuesta del usuario está ausente."
109
 
110
- #: google-captcha.php:952 google-captcha.php:960
111
  msgid "Secret Key is invalid."
112
  msgstr ""
113
 
114
- #: google-captcha.php:953 google-captcha.php:961
115
  msgid "Check your domain configurations"
116
  msgstr ""
117
 
118
- #: google-captcha.php:954 google-captcha.php:962
119
  msgid "and enter it again"
120
  msgstr "e introducirle otra vez"
121
 
122
- #: google-captcha.php:957
123
  msgid "Secret Key is missing."
124
  msgstr "Clave Secreta está ausente."
125
 
126
- #: google-captcha.php:964
127
  msgid "User response is invalid"
128
  msgstr "Respuesta del usuario no es válido"
129
 
130
- #: google-captcha.php:965
131
  msgid "You have entered an incorrect reCAPTCHA value."
132
  msgstr "Ha introducido un valor incorrecto de reCAPTCHA."
133
 
134
- #: google-captcha.php:966
135
  msgid ""
136
  "More than one reCAPTCHA has been found in the current form. Please remove "
137
  "all unnecessary reCAPTCHA fields to make it work properly."
@@ -139,31 +139,31 @@ msgstr ""
139
  "Más de un reCAPTCHA se ha encontrado en la forma actual. Por favor, elimine "
140
  "todos los campos de reCAPTCHA innecesarios para que funcione correctamente."
141
 
142
- #: google-captcha.php:968
143
  msgid "reCAPTCHA v3 test failed"
144
  msgstr ""
145
 
146
- #: google-captcha.php:1006
147
  msgid "Please submit \"Test verification\""
148
  msgstr ""
149
 
150
- #: google-captcha.php:1008
151
  msgid "Please complete the captcha and submit \"Test verification\""
152
  msgstr ""
153
 
154
- #: google-captcha.php:1014
155
  msgid "Test verification"
156
  msgstr "Test de verificación"
157
 
158
- #: google-captcha.php:1035
159
  msgid "The verification is successfully completed."
160
  msgstr ""
161
 
162
- #: google-captcha.php:1070
163
  msgid "FAQ"
164
  msgstr "Preguntas Frecuentes"
165
 
166
- #: google-captcha.php:1071
167
  msgid "Support"
168
  msgstr "Soporte"
169
 
@@ -267,6 +267,14 @@ msgstr ""
267
  msgid "Theme"
268
  msgstr ""
269
 
 
 
 
 
 
 
 
 
270
  #: includes/class-gglcptch-settings-tabs.php:287
271
  msgid "Score"
272
  msgstr ""
@@ -335,7 +343,7 @@ msgstr "Testimonials"
335
  msgid "WordPress default"
336
  msgstr "WordPress por defecto"
337
 
338
- #: includes/forms.php:47 includes/pro_banners.php:75
339
  msgid "External Plugins"
340
  msgstr ""
341
 
@@ -459,36 +467,42 @@ msgstr ""
459
  #: includes/pro_banners.php:70
460
  #, fuzzy
461
  #| msgid "Contact form"
462
- msgid "Contact Forms"
463
  msgstr "Formulario de contacto"
464
 
465
  #: includes/pro_banners.php:71
466
  #, fuzzy
467
  #| msgid "Login form"
468
- msgid "Login Forms"
469
  msgstr "Formulario de acceso"
470
 
471
- #: includes/pro_banners.php:167
 
 
 
 
 
 
472
  msgid "Size"
473
  msgstr ""
474
 
475
- #: includes/pro_banners.php:171
476
  msgid "Normal"
477
  msgstr "Normal"
478
 
479
- #: includes/pro_banners.php:172
480
  msgid "Compact"
481
  msgstr "Compacto"
482
 
483
- #: includes/pro_banners.php:177
484
  msgid "Language"
485
  msgstr ""
486
 
487
- #: includes/pro_banners.php:185
488
  msgid "Multilanguage"
489
  msgstr ""
490
 
491
- #: includes/pro_banners.php:188
492
  msgid ""
493
  "Enable to switch language automatically on multilingual website using "
494
  "Multilanguage plugin."
2
  msgstr ""
3
  "Project-Id-Version: Google Сaptcha\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2019-04-16 17:22+0300\n"
6
  "PO-Revision-Date: \n"
7
  "Last-Translator: bestwebsoft.com <plugin@bestwebsoft.com>\n"
8
  "Language-Team: Cloudzeroxyz <cloudzeroxyz@gmail.com>\n"
17
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
18
  "X-Poedit-SearchPath-0: .\n"
19
 
20
+ #: google-captcha.php:39 google-captcha.php:46 google-captcha.php:476
21
  #: includes/class-gglcptch-settings-tabs.php:148
22
  msgid "Google Captcha Settings"
23
  msgstr "Google Captcha Ajustes"
24
 
25
+ #: google-captcha.php:47 google-captcha.php:1075 google-captcha.php:1088
26
  #: includes/class-gglcptch-settings-tabs.php:25
27
  msgid "Settings"
28
  msgstr "Configuraciónes"
29
 
30
+ #: google-captcha.php:54 includes/whitelist.php:46
31
  msgid "Google Captcha Whitelist"
32
  msgstr ""
33
 
34
+ #: google-captcha.php:55
35
  msgid "Whitelist"
36
  msgstr "Lista Blanca"
37
 
38
+ #: google-captcha.php:71 includes/pro_banners.php:29
39
  msgid "Upgrade to Pro"
40
  msgstr "Actualizar a Pro"
41
 
42
+ #: google-captcha.php:259
43
  msgid "Please wait until Google reCAPTCHA is loaded."
44
  msgstr "Por favor espere hasta que se carga Google reCAPTCHA."
45
 
46
+ #: google-captcha.php:260
47
  msgid ""
48
  "Failed to load Google reCAPTCHA. Please check your internet connection and "
49
  "reload this page."
51
  "Error al cargar Google reCAPTCHA. Por favor, compruebe su conexión a "
52
  "internet y vuelva a cargar esta página."
53
 
54
+ #: google-captcha.php:276
55
  msgid "Warning"
56
  msgstr "Atención"
57
 
58
+ #: google-captcha.php:379
59
  msgid "You are in the whitelist"
60
  msgstr "Estás en la lista blanca"
61
 
62
+ #: google-captcha.php:477
63
  msgid "Please enable JavaScript in your browser."
64
  msgstr ""
65
 
66
+ #: google-captcha.php:560
67
  msgid "This site is protected by reCAPTCHA and the Google "
68
  msgstr ""
69
 
70
+ #: google-captcha.php:561
71
  msgid "Privacy Policy"
72
  msgstr ""
73
 
74
+ #: google-captcha.php:562
75
  msgid " and "
76
  msgstr ""
77
 
78
+ #: google-captcha.php:563
79
  msgid "Terms of Service"
80
  msgstr ""
81
 
82
+ #: google-captcha.php:564
83
  msgid " apply."
84
  msgstr ""
85
 
86
+ #: google-captcha.php:571 google-captcha.php:1110
87
  msgid "To use Google Captcha you must get the keys from"
88
  msgstr "Para utilizar Google Captcha debe obtener las claves de"
89
 
90
+ #: google-captcha.php:572 google-captcha.php:1111
91
  msgid "here"
92
  msgstr "aquí"
93
 
94
+ #: google-captcha.php:573 google-captcha.php:1112
95
  msgid "and enter them on the"
96
  msgstr "e introducirlas en"
97
 
98
+ #: google-captcha.php:575 google-captcha.php:1114
99
  msgid "plugin setting page"
100
  msgstr "página de configuración de plugin"
101
 
102
+ #: google-captcha.php:843 includes/forms.php:356
103
  msgid "Error"
104
  msgstr "Error "
105
 
106
+ #: google-captcha.php:968
107
  msgid "User response is missing."
108
  msgstr "Respuesta del usuario está ausente."
109
 
110
+ #: google-captcha.php:972 google-captcha.php:980
111
  msgid "Secret Key is invalid."
112
  msgstr ""
113
 
114
+ #: google-captcha.php:973 google-captcha.php:981
115
  msgid "Check your domain configurations"
116
  msgstr ""
117
 
118
+ #: google-captcha.php:974 google-captcha.php:982
119
  msgid "and enter it again"
120
  msgstr "e introducirle otra vez"
121
 
122
+ #: google-captcha.php:977
123
  msgid "Secret Key is missing."
124
  msgstr "Clave Secreta está ausente."
125
 
126
+ #: google-captcha.php:984
127
  msgid "User response is invalid"
128
  msgstr "Respuesta del usuario no es válido"
129
 
130
+ #: google-captcha.php:985
131
  msgid "You have entered an incorrect reCAPTCHA value."
132
  msgstr "Ha introducido un valor incorrecto de reCAPTCHA."
133
 
134
+ #: google-captcha.php:986
135
  msgid ""
136
  "More than one reCAPTCHA has been found in the current form. Please remove "
137
  "all unnecessary reCAPTCHA fields to make it work properly."
139
  "Más de un reCAPTCHA se ha encontrado en la forma actual. Por favor, elimine "
140
  "todos los campos de reCAPTCHA innecesarios para que funcione correctamente."
141
 
142
+ #: google-captcha.php:988
143
  msgid "reCAPTCHA v3 test failed"
144
  msgstr ""
145
 
146
+ #: google-captcha.php:1026
147
  msgid "Please submit \"Test verification\""
148
  msgstr ""
149
 
150
+ #: google-captcha.php:1028
151
  msgid "Please complete the captcha and submit \"Test verification\""
152
  msgstr ""
153
 
154
+ #: google-captcha.php:1034
155
  msgid "Test verification"
156
  msgstr "Test de verificación"
157
 
158
+ #: google-captcha.php:1055
159
  msgid "The verification is successfully completed."
160
  msgstr ""
161
 
162
+ #: google-captcha.php:1090
163
  msgid "FAQ"
164
  msgstr "Preguntas Frecuentes"
165
 
166
+ #: google-captcha.php:1091
167
  msgid "Support"
168
  msgstr "Soporte"
169
 
267
  msgid "Theme"
268
  msgstr ""
269
 
270
+ #: includes/class-gglcptch-settings-tabs.php:280
271
+ msgid "Light"
272
+ msgstr ""
273
+
274
+ #: includes/class-gglcptch-settings-tabs.php:281
275
+ msgid "Dark"
276
+ msgstr ""
277
+
278
  #: includes/class-gglcptch-settings-tabs.php:287
279
  msgid "Score"
280
  msgstr ""
343
  msgid "WordPress default"
344
  msgstr "WordPress por defecto"
345
 
346
+ #: includes/forms.php:47 includes/pro_banners.php:76
347
  msgid "External Plugins"
348
  msgstr ""
349
 
467
  #: includes/pro_banners.php:70
468
  #, fuzzy
469
  #| msgid "Contact form"
470
+ msgid "Divi Contact Form"
471
  msgstr "Formulario de contacto"
472
 
473
  #: includes/pro_banners.php:71
474
  #, fuzzy
475
  #| msgid "Login form"
476
+ msgid "Divi Login Forms"
477
  msgstr "Formulario de acceso"
478
 
479
+ #: includes/pro_banners.php:72
480
+ #, fuzzy
481
+ #| msgid "Contact form"
482
+ msgid "Divi Theme Contact Form"
483
+ msgstr "Formulario de contacto"
484
+
485
+ #: includes/pro_banners.php:174
486
  msgid "Size"
487
  msgstr ""
488
 
489
+ #: includes/pro_banners.php:178
490
  msgid "Normal"
491
  msgstr "Normal"
492
 
493
+ #: includes/pro_banners.php:179
494
  msgid "Compact"
495
  msgstr "Compacto"
496
 
497
+ #: includes/pro_banners.php:184
498
  msgid "Language"
499
  msgstr ""
500
 
501
+ #: includes/pro_banners.php:192
502
  msgid "Multilanguage"
503
  msgstr ""
504
 
505
+ #: includes/pro_banners.php:195
506
  msgid ""
507
  "Enable to switch language automatically on multilingual website using "
508
  "Multilanguage plugin."
languages/google-captcha-ru_RU.mo CHANGED
Binary file
languages/google-captcha-ru_RU.po CHANGED
@@ -2,7 +2,7 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Google Сaptcha\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2019-03-04 12:02+0200\n"
6
  "PO-Revision-Date: \n"
7
  "Last-Translator: bestwebsoft.com <plugin@bestwebsoft.com>\n"
8
  "Language-Team: the BestWebSoft Team <plugin@bestwebsoft.com>\n"
@@ -18,33 +18,33 @@ msgstr ""
18
  "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
19
  "X-Poedit-SearchPath-0: .\n"
20
 
21
- #: google-captcha.php:38 google-captcha.php:40 google-captcha.php:457
22
- #: includes/class-gglcptch-settings-tabs.php:148
23
  msgid "Google Captcha Settings"
24
  msgstr "Настройки Google Captcha"
25
 
26
- #: google-captcha.php:40 google-captcha.php:1055 google-captcha.php:1068
27
  #: includes/class-gglcptch-settings-tabs.php:25
28
  msgid "Settings"
29
  msgstr "Настройки"
30
 
31
- #: google-captcha.php:42 includes/whitelist.php:46
32
  msgid "Google Captcha Whitelist"
33
  msgstr "Белый cписок Google Captcha"
34
 
35
- #: google-captcha.php:42
36
  msgid "Whitelist"
37
  msgstr "Белый список"
38
 
39
- #: google-captcha.php:48 includes/pro_banners.php:29
40
  msgid "Upgrade to Pro"
41
  msgstr "Обновить до Pro"
42
 
43
- #: google-captcha.php:240
44
  msgid "Please wait until Google reCAPTCHA is loaded."
45
  msgstr "Пожалуйста, дождитесь окончания загрузки Google reCAPTCHA."
46
 
47
- #: google-captcha.php:241
48
  msgid ""
49
  "Failed to load Google reCAPTCHA. Please check your internet connection and "
50
  "reload this page."
@@ -52,87 +52,87 @@ msgstr ""
52
  "Не удалось загрузить Google reCAPTCHA. Пожалуйста, проверьте ваше "
53
  "подключение к сети Интернет и перезагрузите эту страницу."
54
 
55
- #: google-captcha.php:257
56
  msgid "Warning"
57
  msgstr "Внимание"
58
 
59
- #: google-captcha.php:360
60
  msgid "You are in the whitelist"
61
  msgstr "Вы в белом списке"
62
 
63
- #: google-captcha.php:458
64
  msgid "Please enable JavaScript in your browser."
65
  msgstr "Пожалуйста, включите поддержку JavaScript в вашем браузере."
66
 
67
- #: google-captcha.php:541
68
  msgid "This site is protected by reCAPTCHA and the Google "
69
  msgstr "Этот сайт защищен reCAPTCHA и применяются "
70
 
71
- #: google-captcha.php:542
72
  msgid "Privacy Policy"
73
  msgstr "Политика конфиденциальности"
74
 
75
- #: google-captcha.php:543
76
  msgid " and "
77
  msgstr " и "
78
 
79
- #: google-captcha.php:544
80
  msgid "Terms of Service"
81
  msgstr "Условия обслуживания"
82
 
83
- #: google-captcha.php:545
84
  msgid " apply."
85
  msgstr " Google."
86
 
87
- #: google-captcha.php:552 google-captcha.php:1090
88
  msgid "To use Google Captcha you must get the keys from"
89
  msgstr "Чтобы использовать Google Captcha, вам необходимо получить ключи"
90
 
91
- #: google-captcha.php:553 google-captcha.php:1091
92
  msgid "here"
93
  msgstr "здесь"
94
 
95
- #: google-captcha.php:554 google-captcha.php:1092
96
  msgid "and enter them on the"
97
  msgstr "и вставить их на"
98
 
99
- #: google-captcha.php:556 google-captcha.php:1094
100
  msgid "plugin setting page"
101
  msgstr "странице настроек плагина"
102
 
103
- #: google-captcha.php:823 includes/forms.php:356
104
  msgid "Error"
105
  msgstr "Ошибка"
106
 
107
- #: google-captcha.php:948
108
  msgid "User response is missing."
109
  msgstr "Ответ пользователя отсутствует."
110
 
111
- #: google-captcha.php:952 google-captcha.php:960
 
 
 
 
112
  msgid "Secret Key is invalid."
113
  msgstr "Некорректный секретный ключ."
114
 
115
- #: google-captcha.php:953 google-captcha.php:961
116
  msgid "Check your domain configurations"
117
  msgstr "Проверьте настройки вашего домена"
118
 
119
- #: google-captcha.php:954 google-captcha.php:962
120
  msgid "and enter it again"
121
  msgstr "и введите его снова"
122
 
123
- #: google-captcha.php:957
124
- msgid "Secret Key is missing."
125
- msgstr "Секретный ключ отсутствует."
126
-
127
- #: google-captcha.php:964
128
  msgid "User response is invalid"
129
  msgstr "Некорректный ответ пользователя"
130
 
131
- #: google-captcha.php:965
132
  msgid "You have entered an incorrect reCAPTCHA value."
133
  msgstr "Ошибка: Вы ввели неверное значение reCAPTCHA."
134
 
135
- #: google-captcha.php:966
136
  msgid ""
137
  "More than one reCAPTCHA has been found in the current form. Please remove "
138
  "all unnecessary reCAPTCHA fields to make it work properly."
@@ -140,32 +140,32 @@ msgstr ""
140
  "В текущей форме найдено более одного блока reCAPTCHA. Пожалуйста, удалите "
141
  "все лишние блоки reCAPTCHA для дальнейшей корректной работы."
142
 
143
- #: google-captcha.php:968
144
  msgid "reCAPTCHA v3 test failed"
145
  msgstr "Тест reCAPTCHA v3 не пройден"
146
 
147
- #: google-captcha.php:1006
148
  msgid "Please submit \"Test verification\""
149
  msgstr "Пожалуйста, нажмите кнопку \"Тестирование проверки\"."
150
 
151
- #: google-captcha.php:1008
152
  msgid "Please complete the captcha and submit \"Test verification\""
153
  msgstr ""
154
  "Пожалуйста, заполните капчу и нажмите кнопку \"Тестирование проверки\"."
155
 
156
- #: google-captcha.php:1014
157
  msgid "Test verification"
158
  msgstr "Тестирование проверки"
159
 
160
- #: google-captcha.php:1035
161
  msgid "The verification is successfully completed."
162
  msgstr "Тестирование проверки успешно завершено."
163
 
164
- #: google-captcha.php:1070
165
  msgid "FAQ"
166
  msgstr "FAQ"
167
 
168
- #: google-captcha.php:1071
169
  msgid "Support"
170
  msgstr "Поддержка"
171
 
@@ -213,15 +213,15 @@ msgstr ""
213
  msgid "Enter secret key"
214
  msgstr "Введите секретный ключ"
215
 
216
- #: includes/class-gglcptch-settings-tabs.php:136
217
  msgid "Settings saved."
218
  msgstr "Настройки сохранены."
219
 
220
- #: includes/class-gglcptch-settings-tabs.php:151
221
  msgid "Authentication"
222
  msgstr "Идентификация"
223
 
224
- #: includes/class-gglcptch-settings-tabs.php:152
225
  msgid ""
226
  "Register your website with Google to get required API keys and enter them "
227
  "below."
@@ -229,70 +229,78 @@ msgstr ""
229
  "Зарегистрируйте свой сайт с помощью Google, чтобы получить требуемые API "
230
  "ключи и введите их ниже."
231
 
232
- #: includes/class-gglcptch-settings-tabs.php:152
233
  msgid "Get the API Keys"
234
  msgstr "Получить API ключи"
235
 
236
- #: includes/class-gglcptch-settings-tabs.php:169
237
  msgid "Test reCAPTCHA"
238
  msgstr "Тестирование reCAPTCHA"
239
 
240
- #: includes/class-gglcptch-settings-tabs.php:175
241
  msgid "General"
242
  msgstr "Общее"
243
 
244
- #: includes/class-gglcptch-settings-tabs.php:178
245
  msgid "reCAPTCHA Version"
246
  msgstr "Версия reCAPTCHA"
247
 
248
- #: includes/class-gglcptch-settings-tabs.php:191
249
  msgid "Enable reCAPTCHA for"
250
  msgstr "Включить reCAPTCHA для"
251
 
252
- #: includes/class-gglcptch-settings-tabs.php:237
253
- #: includes/class-gglcptch-settings-tabs.php:299 includes/pro_banners.php:20
254
  msgid "Close"
255
  msgstr "Закрыть"
256
 
257
- #: includes/class-gglcptch-settings-tabs.php:246
258
  msgid "Hide reCAPTCHA for"
259
  msgstr "Спрятать reCAPTCHA для"
260
 
261
- #: includes/class-gglcptch-settings-tabs.php:265
262
  msgid "Hide reCAPTCHA Badge"
263
  msgstr "Спрятать значок reCAPTCHA"
264
 
265
- #: includes/class-gglcptch-settings-tabs.php:270
266
  msgid "Enable to hide reCAPTCHA Badge for Version 3 and Invisble reCAPTCHA."
267
  msgstr ""
268
  "Включите, чтобы скрыть значок reCAPTCHA для версии 3 и Invisible reCAPTCHA."
269
 
270
- #: includes/class-gglcptch-settings-tabs.php:276
271
  msgid "Theme"
272
  msgstr "Тема"
273
 
274
- #: includes/class-gglcptch-settings-tabs.php:287
 
 
 
 
 
 
 
 
275
  msgid "Score"
276
  msgstr "Количество очков"
277
 
278
- #: includes/class-gglcptch-settings-tabs.php:292
279
  msgid "Set the minimum verification score from 0 to 1"
280
  msgstr ""
281
  "Укажите пороговое значение, при котором проверка будет пройдена от 0 до 1"
282
 
283
- #: includes/class-gglcptch-settings-tabs.php:308
284
  msgid "Whitelist Notification"
285
  msgstr "Уведомление о нахождении в белом списке"
286
 
287
- #: includes/class-gglcptch-settings-tabs.php:311
288
  msgid "This message will be displayed instead of the reCAPTCHA."
289
  msgstr "Это сообщение будет отображено вместо поля reCAPTCHA."
290
 
291
- #: includes/class-gglcptch-settings-tabs.php:315
292
- msgid "Disabled Submit Button"
293
- msgstr "Отключенная кнопка подтверждения"
294
 
295
- #: includes/class-gglcptch-settings-tabs.php:319
296
  msgid ""
297
  "Enable to keep submit button disabled until reCAPTCHA is loaded (do not use "
298
  "this option if you see \"Failed to load Google reCAPTCHA\" message)."
@@ -301,7 +309,19 @@ msgstr ""
301
  "не будет загружена reCAPTCHA (Не используйте эту опцию, если вы видите "
302
  "сообщение \"Не удалось загрузить Google reCAPTCHA\")."
303
 
304
- #: includes/class-gglcptch-settings-tabs.php:333
 
 
 
 
 
 
 
 
 
 
 
 
305
  msgid ""
306
  "reCAPTCHA version was changed. Please submit \"Test reCAPTCHA\" and "
307
  "regenerate Site and Secret keys if necessary."
@@ -309,11 +329,11 @@ msgstr ""
309
  "Версия reCAPTCHA была изменена. Пожалуйста, нажмите \"Тестирование reCAPTCHA"
310
  "\" и при необходимости обновите секретный ключ и ключ сайта."
311
 
312
- #: includes/class-gglcptch-settings-tabs.php:346
313
  msgid "Google Captcha Shortcode"
314
  msgstr "Шорткод Google Captcha"
315
 
316
- #: includes/class-gglcptch-settings-tabs.php:349
317
  msgid ""
318
  "Add Google Captcha to your posts or pages using the following shortcode:"
319
  msgstr ""
@@ -344,7 +364,7 @@ msgstr "Testimonials"
344
  msgid "WordPress default"
345
  msgstr "Стандартных форм WordPress"
346
 
347
- #: includes/forms.php:47 includes/pro_banners.php:75
348
  msgid "External Plugins"
349
  msgstr "Внешние плагины"
350
 
@@ -356,19 +376,19 @@ msgstr "Пользовательские формы"
356
  msgid "Google Captcha Plugin"
357
  msgstr "Плагин Google Captcha"
358
 
359
- #: includes/forms.php:118 includes/forms.php:144
360
  msgid "Activate"
361
  msgstr "Активировать"
362
 
363
- #: includes/forms.php:120 includes/forms.php:147 includes/forms.php:151
364
  msgid "Install Now"
365
  msgstr "Установить сейчас"
366
 
367
- #: includes/forms.php:269
368
  msgid "Authentication failed."
369
  msgstr "Ошибка аутентификации."
370
 
371
- #: includes/forms.php:358
372
  msgid "Click the BACK button on your browser and try again."
373
  msgstr "Нажмите кнопку НАЗАД в вашем браузере и попытайтесь снова."
374
 
@@ -465,38 +485,38 @@ msgid "Ninja Forms"
465
  msgstr "Ninja Forms"
466
 
467
  #: includes/pro_banners.php:70
468
- #, fuzzy
469
- #| msgid "Contact form"
470
- msgid "Contact Forms"
471
- msgstr "Contact form"
472
 
473
  #: includes/pro_banners.php:71
474
- #, fuzzy
475
- #| msgid "Login form"
476
- msgid "Login Forms"
477
- msgstr "Форма логина"
 
 
478
 
479
- #: includes/pro_banners.php:167
480
  msgid "Size"
481
  msgstr "Размер"
482
 
483
- #: includes/pro_banners.php:171
484
  msgid "Normal"
485
  msgstr "Нормальный"
486
 
487
- #: includes/pro_banners.php:172
488
  msgid "Compact"
489
  msgstr "Компактный"
490
 
491
- #: includes/pro_banners.php:177
492
  msgid "Language"
493
  msgstr "Язык"
494
 
495
- #: includes/pro_banners.php:185
496
  msgid "Multilanguage"
497
  msgstr "Multilanguage"
498
 
499
- #: includes/pro_banners.php:188
500
  msgid ""
501
  "Enable to switch language automatically on multilingual website using "
502
  "Multilanguage plugin."
2
  msgstr ""
3
  "Project-Id-Version: Google Сaptcha\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2019-05-06 12:32+0300\n"
6
  "PO-Revision-Date: \n"
7
  "Last-Translator: bestwebsoft.com <plugin@bestwebsoft.com>\n"
8
  "Language-Team: the BestWebSoft Team <plugin@bestwebsoft.com>\n"
18
  "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
19
  "X-Poedit-SearchPath-0: .\n"
20
 
21
+ #: google-captcha.php:39 google-captcha.php:49 google-captcha.php:485
22
+ #: includes/class-gglcptch-settings-tabs.php:149
23
  msgid "Google Captcha Settings"
24
  msgstr "Настройки Google Captcha"
25
 
26
+ #: google-captcha.php:50 google-captcha.php:1068 google-captcha.php:1081
27
  #: includes/class-gglcptch-settings-tabs.php:25
28
  msgid "Settings"
29
  msgstr "Настройки"
30
 
31
+ #: google-captcha.php:58 includes/whitelist.php:46
32
  msgid "Google Captcha Whitelist"
33
  msgstr "Белый cписок Google Captcha"
34
 
35
+ #: google-captcha.php:59
36
  msgid "Whitelist"
37
  msgstr "Белый список"
38
 
39
+ #: google-captcha.php:76 includes/pro_banners.php:29
40
  msgid "Upgrade to Pro"
41
  msgstr "Обновить до Pro"
42
 
43
+ #: google-captcha.php:264
44
  msgid "Please wait until Google reCAPTCHA is loaded."
45
  msgstr "Пожалуйста, дождитесь окончания загрузки Google reCAPTCHA."
46
 
47
+ #: google-captcha.php:265
48
  msgid ""
49
  "Failed to load Google reCAPTCHA. Please check your internet connection and "
50
  "reload this page."
52
  "Не удалось загрузить Google reCAPTCHA. Пожалуйста, проверьте ваше "
53
  "подключение к сети Интернет и перезагрузите эту страницу."
54
 
55
+ #: google-captcha.php:281
56
  msgid "Warning"
57
  msgstr "Внимание"
58
 
59
+ #: google-captcha.php:389
60
  msgid "You are in the whitelist"
61
  msgstr "Вы в белом списке"
62
 
63
+ #: google-captcha.php:486
64
  msgid "Please enable JavaScript in your browser."
65
  msgstr "Пожалуйста, включите поддержку JavaScript в вашем браузере."
66
 
67
+ #: google-captcha.php:560
68
  msgid "This site is protected by reCAPTCHA and the Google "
69
  msgstr "Этот сайт защищен reCAPTCHA и применяются "
70
 
71
+ #: google-captcha.php:561
72
  msgid "Privacy Policy"
73
  msgstr "Политика конфиденциальности"
74
 
75
+ #: google-captcha.php:562
76
  msgid " and "
77
  msgstr " и "
78
 
79
+ #: google-captcha.php:563
80
  msgid "Terms of Service"
81
  msgstr "Условия обслуживания"
82
 
83
+ #: google-captcha.php:564
84
  msgid " apply."
85
  msgstr " Google."
86
 
87
+ #: google-captcha.php:571 google-captcha.php:1103
88
  msgid "To use Google Captcha you must get the keys from"
89
  msgstr "Чтобы использовать Google Captcha, вам необходимо получить ключи"
90
 
91
+ #: google-captcha.php:572 google-captcha.php:1104
92
  msgid "here"
93
  msgstr "здесь"
94
 
95
+ #: google-captcha.php:573 google-captcha.php:1105
96
  msgid "and enter them on the"
97
  msgstr "и вставить их на"
98
 
99
+ #: google-captcha.php:575 google-captcha.php:1107
100
  msgid "plugin setting page"
101
  msgstr "странице настроек плагина"
102
 
103
+ #: google-captcha.php:846 includes/forms.php:352
104
  msgid "Error"
105
  msgstr "Ошибка"
106
 
107
+ #: google-captcha.php:968
108
  msgid "User response is missing."
109
  msgstr "Ответ пользователя отсутствует."
110
 
111
+ #: google-captcha.php:970
112
+ msgid "Secret Key is missing."
113
+ msgstr "Секретный ключ отсутствует."
114
+
115
+ #: google-captcha.php:973
116
  msgid "Secret Key is invalid."
117
  msgstr "Некорректный секретный ключ."
118
 
119
+ #: google-captcha.php:974
120
  msgid "Check your domain configurations"
121
  msgstr "Проверьте настройки вашего домена"
122
 
123
+ #: google-captcha.php:975
124
  msgid "and enter it again"
125
  msgstr "и введите его снова"
126
 
127
+ #: google-captcha.php:977
 
 
 
 
128
  msgid "User response is invalid"
129
  msgstr "Некорректный ответ пользователя"
130
 
131
+ #: google-captcha.php:978
132
  msgid "You have entered an incorrect reCAPTCHA value."
133
  msgstr "Ошибка: Вы ввели неверное значение reCAPTCHA."
134
 
135
+ #: google-captcha.php:979
136
  msgid ""
137
  "More than one reCAPTCHA has been found in the current form. Please remove "
138
  "all unnecessary reCAPTCHA fields to make it work properly."
140
  "В текущей форме найдено более одного блока reCAPTCHA. Пожалуйста, удалите "
141
  "все лишние блоки reCAPTCHA для дальнейшей корректной работы."
142
 
143
+ #: google-captcha.php:981
144
  msgid "reCAPTCHA v3 test failed"
145
  msgstr "Тест reCAPTCHA v3 не пройден"
146
 
147
+ #: google-captcha.php:1019
148
  msgid "Please submit \"Test verification\""
149
  msgstr "Пожалуйста, нажмите кнопку \"Тестирование проверки\"."
150
 
151
+ #: google-captcha.php:1021
152
  msgid "Please complete the captcha and submit \"Test verification\""
153
  msgstr ""
154
  "Пожалуйста, заполните капчу и нажмите кнопку \"Тестирование проверки\"."
155
 
156
+ #: google-captcha.php:1027
157
  msgid "Test verification"
158
  msgstr "Тестирование проверки"
159
 
160
+ #: google-captcha.php:1048
161
  msgid "The verification is successfully completed."
162
  msgstr "Тестирование проверки успешно завершено."
163
 
164
+ #: google-captcha.php:1083
165
  msgid "FAQ"
166
  msgstr "FAQ"
167
 
168
+ #: google-captcha.php:1084
169
  msgid "Support"
170
  msgstr "Поддержка"
171
 
213
  msgid "Enter secret key"
214
  msgstr "Введите секретный ключ"
215
 
216
+ #: includes/class-gglcptch-settings-tabs.php:137
217
  msgid "Settings saved."
218
  msgstr "Настройки сохранены."
219
 
220
+ #: includes/class-gglcptch-settings-tabs.php:152
221
  msgid "Authentication"
222
  msgstr "Идентификация"
223
 
224
+ #: includes/class-gglcptch-settings-tabs.php:153
225
  msgid ""
226
  "Register your website with Google to get required API keys and enter them "
227
  "below."
229
  "Зарегистрируйте свой сайт с помощью Google, чтобы получить требуемые API "
230
  "ключи и введите их ниже."
231
 
232
+ #: includes/class-gglcptch-settings-tabs.php:153
233
  msgid "Get the API Keys"
234
  msgstr "Получить API ключи"
235
 
236
+ #: includes/class-gglcptch-settings-tabs.php:170
237
  msgid "Test reCAPTCHA"
238
  msgstr "Тестирование reCAPTCHA"
239
 
240
+ #: includes/class-gglcptch-settings-tabs.php:176
241
  msgid "General"
242
  msgstr "Общее"
243
 
244
+ #: includes/class-gglcptch-settings-tabs.php:179
245
  msgid "reCAPTCHA Version"
246
  msgstr "Версия reCAPTCHA"
247
 
248
+ #: includes/class-gglcptch-settings-tabs.php:192
249
  msgid "Enable reCAPTCHA for"
250
  msgstr "Включить reCAPTCHA для"
251
 
252
+ #: includes/class-gglcptch-settings-tabs.php:238
253
+ #: includes/class-gglcptch-settings-tabs.php:300 includes/pro_banners.php:20
254
  msgid "Close"
255
  msgstr "Закрыть"
256
 
257
+ #: includes/class-gglcptch-settings-tabs.php:247
258
  msgid "Hide reCAPTCHA for"
259
  msgstr "Спрятать reCAPTCHA для"
260
 
261
+ #: includes/class-gglcptch-settings-tabs.php:266
262
  msgid "Hide reCAPTCHA Badge"
263
  msgstr "Спрятать значок reCAPTCHA"
264
 
265
+ #: includes/class-gglcptch-settings-tabs.php:271
266
  msgid "Enable to hide reCAPTCHA Badge for Version 3 and Invisble reCAPTCHA."
267
  msgstr ""
268
  "Включите, чтобы скрыть значок reCAPTCHA для версии 3 и Invisible reCAPTCHA."
269
 
270
+ #: includes/class-gglcptch-settings-tabs.php:277
271
  msgid "Theme"
272
  msgstr "Тема"
273
 
274
+ #: includes/class-gglcptch-settings-tabs.php:281
275
+ msgid "Light"
276
+ msgstr "Светлая"
277
+
278
+ #: includes/class-gglcptch-settings-tabs.php:282
279
+ msgid "Dark"
280
+ msgstr "Тёмная"
281
+
282
+ #: includes/class-gglcptch-settings-tabs.php:288
283
  msgid "Score"
284
  msgstr "Количество очков"
285
 
286
+ #: includes/class-gglcptch-settings-tabs.php:293
287
  msgid "Set the minimum verification score from 0 to 1"
288
  msgstr ""
289
  "Укажите пороговое значение, при котором проверка будет пройдена от 0 до 1"
290
 
291
+ #: includes/class-gglcptch-settings-tabs.php:309
292
  msgid "Whitelist Notification"
293
  msgstr "Уведомление о нахождении в белом списке"
294
 
295
+ #: includes/class-gglcptch-settings-tabs.php:312
296
  msgid "This message will be displayed instead of the reCAPTCHA."
297
  msgstr "Это сообщение будет отображено вместо поля reCAPTCHA."
298
 
299
+ #: includes/class-gglcptch-settings-tabs.php:316
300
+ msgid "Advanced Protection"
301
+ msgstr "Усиленная защита"
302
 
303
+ #: includes/class-gglcptch-settings-tabs.php:320
304
  msgid ""
305
  "Enable to keep submit button disabled until reCAPTCHA is loaded (do not use "
306
  "this option if you see \"Failed to load Google reCAPTCHA\" message)."
309
  "не будет загружена reCAPTCHA (Не используйте эту опцию, если вы видите "
310
  "сообщение \"Не удалось загрузить Google reCAPTCHA\")."
311
 
312
+ #: includes/class-gglcptch-settings-tabs.php:326
313
+ msgid "Disabled Submit Button"
314
+ msgstr "Отключенная кнопка подтверждения"
315
+
316
+ #: includes/class-gglcptch-settings-tabs.php:331
317
+ msgid ""
318
+ "Enable to keep submit button disabled until user passes the reCAPTCHA test "
319
+ "(for Version 2)."
320
+ msgstr ""
321
+ "Включите, чтобы кнопка отправки оставалась отключенной до тех пор, пока "
322
+ "пользователь не пройдет тест reCAPTCHA (для версии 2)."
323
+
324
+ #: includes/class-gglcptch-settings-tabs.php:345
325
  msgid ""
326
  "reCAPTCHA version was changed. Please submit \"Test reCAPTCHA\" and "
327
  "regenerate Site and Secret keys if necessary."
329
  "Версия reCAPTCHA была изменена. Пожалуйста, нажмите \"Тестирование reCAPTCHA"
330
  "\" и при необходимости обновите секретный ключ и ключ сайта."
331
 
332
+ #: includes/class-gglcptch-settings-tabs.php:358
333
  msgid "Google Captcha Shortcode"
334
  msgstr "Шорткод Google Captcha"
335
 
336
+ #: includes/class-gglcptch-settings-tabs.php:361
337
  msgid ""
338
  "Add Google Captcha to your posts or pages using the following shortcode:"
339
  msgstr ""
364
  msgid "WordPress default"
365
  msgstr "Стандартных форм WordPress"
366
 
367
+ #: includes/forms.php:47 includes/pro_banners.php:76
368
  msgid "External Plugins"
369
  msgstr "Внешние плагины"
370
 
376
  msgid "Google Captcha Plugin"
377
  msgstr "Плагин Google Captcha"
378
 
379
+ #: includes/forms.php:116 includes/forms.php:140
380
  msgid "Activate"
381
  msgstr "Активировать"
382
 
383
+ #: includes/forms.php:118 includes/forms.php:143 includes/forms.php:147
384
  msgid "Install Now"
385
  msgstr "Установить сейчас"
386
 
387
+ #: includes/forms.php:265
388
  msgid "Authentication failed."
389
  msgstr "Ошибка аутентификации."
390
 
391
+ #: includes/forms.php:354
392
  msgid "Click the BACK button on your browser and try again."
393
  msgstr "Нажмите кнопку НАЗАД в вашем браузере и попытайтесь снова."
394
 
485
  msgstr "Ninja Forms"
486
 
487
  #: includes/pro_banners.php:70
488
+ msgid "Divi Contact Form"
489
+ msgstr "Divi Contact Form"
 
 
490
 
491
  #: includes/pro_banners.php:71
492
+ msgid "Divi Login Forms"
493
+ msgstr "Divi Login Forms"
494
+
495
+ #: includes/pro_banners.php:72
496
+ msgid "Divi Theme Contact Form"
497
+ msgstr "Divi Theme Contact Form"
498
 
499
+ #: includes/pro_banners.php:174
500
  msgid "Size"
501
  msgstr "Размер"
502
 
503
+ #: includes/pro_banners.php:178
504
  msgid "Normal"
505
  msgstr "Нормальный"
506
 
507
+ #: includes/pro_banners.php:179
508
  msgid "Compact"
509
  msgstr "Компактный"
510
 
511
+ #: includes/pro_banners.php:184
512
  msgid "Language"
513
  msgstr "Язык"
514
 
515
+ #: includes/pro_banners.php:192
516
  msgid "Multilanguage"
517
  msgstr "Multilanguage"
518
 
519
+ #: includes/pro_banners.php:195
520
  msgid ""
521
  "Enable to switch language automatically on multilingual website using "
522
  "Multilanguage plugin."
languages/google-captcha-sr_RS.po CHANGED
@@ -2,7 +2,7 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Google Сaptcha\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2019-03-04 12:06+0200\n"
6
  "PO-Revision-Date: \n"
7
  "Last-Translator: \n"
8
  "Language-Team: Team Link <teamlink@gmx.us>\n"
@@ -18,33 +18,33 @@ msgstr ""
18
  "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
19
  "X-Poedit-SearchPath-0: .\n"
20
 
21
- #: google-captcha.php:38 google-captcha.php:40 google-captcha.php:457
22
- #: includes/class-gglcptch-settings-tabs.php:148
23
  msgid "Google Captcha Settings"
24
  msgstr "Google Captcha Подешавања"
25
 
26
- #: google-captcha.php:40 google-captcha.php:1055 google-captcha.php:1068
27
  #: includes/class-gglcptch-settings-tabs.php:25
28
  msgid "Settings"
29
  msgstr "Подешавања"
30
 
31
- #: google-captcha.php:42 includes/whitelist.php:46
32
  msgid "Google Captcha Whitelist"
33
  msgstr ""
34
 
35
- #: google-captcha.php:42
36
  msgid "Whitelist"
37
  msgstr "Бела листа"
38
 
39
- #: google-captcha.php:48 includes/pro_banners.php:29
40
  msgid "Upgrade to Pro"
41
  msgstr "Пређи на Про"
42
 
43
- #: google-captcha.php:240
44
  msgid "Please wait until Google reCAPTCHA is loaded."
45
  msgstr "Молимо сачекајте док се Google reCAPTCHA учита."
46
 
47
- #: google-captcha.php:241
48
  msgid ""
49
  "Failed to load Google reCAPTCHA. Please check your internet connection and "
50
  "reload this page."
@@ -52,87 +52,87 @@ msgstr ""
52
  "Није успело учитавање Google reCAPTCHA-e Молимо проверите Вашу интернет "
53
  "конекцију и освежите страну."
54
 
55
- #: google-captcha.php:257
56
  msgid "Warning"
57
  msgstr "Упозорење"
58
 
59
- #: google-captcha.php:360
60
  msgid "You are in the whitelist"
61
  msgstr "Ви сте на белој листи"
62
 
63
- #: google-captcha.php:458
64
  msgid "Please enable JavaScript in your browser."
65
  msgstr ""
66
 
67
- #: google-captcha.php:541
68
  msgid "This site is protected by reCAPTCHA and the Google "
69
  msgstr ""
70
 
71
- #: google-captcha.php:542
72
  msgid "Privacy Policy"
73
  msgstr ""
74
 
75
- #: google-captcha.php:543
76
  msgid " and "
77
  msgstr ""
78
 
79
- #: google-captcha.php:544
80
  msgid "Terms of Service"
81
  msgstr ""
82
 
83
- #: google-captcha.php:545
84
  msgid " apply."
85
  msgstr ""
86
 
87
- #: google-captcha.php:552 google-captcha.php:1090
88
  msgid "To use Google Captcha you must get the keys from"
89
  msgstr "Да бисте користили Google Captcha морате узети кључеве од"
90
 
91
- #: google-captcha.php:553 google-captcha.php:1091
92
  msgid "here"
93
  msgstr "овде"
94
 
95
- #: google-captcha.php:554 google-captcha.php:1092
96
  msgid "and enter them on the"
97
  msgstr "и унесите их на"
98
 
99
- #: google-captcha.php:556 google-captcha.php:1094
100
  msgid "plugin setting page"
101
  msgstr "страна подешавања додатка"
102
 
103
- #: google-captcha.php:823 includes/forms.php:356
104
  msgid "Error"
105
  msgstr "Грешка"
106
 
107
- #: google-captcha.php:948
108
  msgid "User response is missing."
109
  msgstr "Одговор корисника недостаје."
110
 
111
- #: google-captcha.php:952 google-captcha.php:960
 
 
 
 
112
  msgid "Secret Key is invalid."
113
  msgstr ""
114
 
115
- #: google-captcha.php:953 google-captcha.php:961
116
  msgid "Check your domain configurations"
117
  msgstr ""
118
 
119
- #: google-captcha.php:954 google-captcha.php:962
120
  msgid "and enter it again"
121
  msgstr "и унесите поново"
122
 
123
- #: google-captcha.php:957
124
- msgid "Secret Key is missing."
125
- msgstr "Тајни кључ недостаје."
126
-
127
- #: google-captcha.php:964
128
  msgid "User response is invalid"
129
  msgstr "Одговор корисника није исправан"
130
 
131
- #: google-captcha.php:965
132
  msgid "You have entered an incorrect reCAPTCHA value."
133
  msgstr "Унели сте нетачну reCAPTCHA вредност."
134
 
135
- #: google-captcha.php:966
136
  msgid ""
137
  "More than one reCAPTCHA has been found in the current form. Please remove "
138
  "all unnecessary reCAPTCHA fields to make it work properly."
@@ -140,31 +140,31 @@ msgstr ""
140
  "Више од једне reCAPTCHA је нађено у тренутној форми. Молим вас да уклоните "
141
  "сва непотребна reCAPTCHA поља како би форма радила исправно."
142
 
143
- #: google-captcha.php:968
144
  msgid "reCAPTCHA v3 test failed"
145
  msgstr ""
146
 
147
- #: google-captcha.php:1006
148
  msgid "Please submit \"Test verification\""
149
  msgstr ""
150
 
151
- #: google-captcha.php:1008
152
  msgid "Please complete the captcha and submit \"Test verification\""
153
  msgstr ""
154
 
155
- #: google-captcha.php:1014
156
  msgid "Test verification"
157
  msgstr "Тестирај верификацију"
158
 
159
- #: google-captcha.php:1035
160
  msgid "The verification is successfully completed."
161
  msgstr ""
162
 
163
- #: google-captcha.php:1070
164
  msgid "FAQ"
165
  msgstr "ЧПП"
166
 
167
- #: google-captcha.php:1071
168
  msgid "Support"
169
  msgstr "Подршка"
170
 
@@ -210,104 +210,122 @@ msgstr ""
210
  msgid "Enter secret key"
211
  msgstr "Унесите тајни кључ"
212
 
213
- #: includes/class-gglcptch-settings-tabs.php:136
214
  msgid "Settings saved."
215
  msgstr ""
216
 
217
- #: includes/class-gglcptch-settings-tabs.php:151
218
  msgid "Authentication"
219
  msgstr "Аутентикација"
220
 
221
- #: includes/class-gglcptch-settings-tabs.php:152
222
  msgid ""
223
  "Register your website with Google to get required API keys and enter them "
224
  "below."
225
  msgstr ""
226
 
227
- #: includes/class-gglcptch-settings-tabs.php:152
228
  msgid "Get the API Keys"
229
  msgstr ""
230
 
231
- #: includes/class-gglcptch-settings-tabs.php:169
232
  #, fuzzy
233
  msgid "Test reCAPTCHA"
234
  msgstr "Невидљиви reCAPTCHA"
235
 
236
- #: includes/class-gglcptch-settings-tabs.php:175
237
  msgid "General"
238
  msgstr ""
239
 
240
- #: includes/class-gglcptch-settings-tabs.php:178
241
  msgid "reCAPTCHA Version"
242
  msgstr "reCAPTCHA верзија"
243
 
244
- #: includes/class-gglcptch-settings-tabs.php:191
245
  msgid "Enable reCAPTCHA for"
246
  msgstr "Омогући reCAPTCHA за"
247
 
248
- #: includes/class-gglcptch-settings-tabs.php:237
249
- #: includes/class-gglcptch-settings-tabs.php:299 includes/pro_banners.php:20
250
  msgid "Close"
251
  msgstr "Затвори"
252
 
253
- #: includes/class-gglcptch-settings-tabs.php:246
254
  #, fuzzy
255
  msgid "Hide reCAPTCHA for"
256
  msgstr "Омогући reCAPTCHA за"
257
 
258
- #: includes/class-gglcptch-settings-tabs.php:265
259
  #, fuzzy
260
  msgid "Hide reCAPTCHA Badge"
261
  msgstr "Омогући reCAPTCHA за"
262
 
263
- #: includes/class-gglcptch-settings-tabs.php:270
264
  msgid "Enable to hide reCAPTCHA Badge for Version 3 and Invisble reCAPTCHA."
265
  msgstr ""
266
 
267
- #: includes/class-gglcptch-settings-tabs.php:276
268
  msgid "Theme"
269
  msgstr ""
270
 
271
- #: includes/class-gglcptch-settings-tabs.php:287
 
 
 
 
 
 
 
 
272
  msgid "Score"
273
  msgstr ""
274
 
275
- #: includes/class-gglcptch-settings-tabs.php:292
276
  msgid "Set the minimum verification score from 0 to 1"
277
  msgstr ""
278
 
279
- #: includes/class-gglcptch-settings-tabs.php:308
280
  msgid "Whitelist Notification"
281
  msgstr "Нотификација за белу листу"
282
 
283
- #: includes/class-gglcptch-settings-tabs.php:311
284
  #, fuzzy
285
  msgid "This message will be displayed instead of the reCAPTCHA."
286
  msgstr ""
287
  "Ова порука ће бити приказана уместо reCAPTCHA уколико је кориснички IP додат "
288
  "у белу листу"
289
 
290
- #: includes/class-gglcptch-settings-tabs.php:315
291
- msgid "Disabled Submit Button"
292
  msgstr ""
293
 
294
- #: includes/class-gglcptch-settings-tabs.php:319
295
  msgid ""
296
  "Enable to keep submit button disabled until reCAPTCHA is loaded (do not use "
297
  "this option if you see \"Failed to load Google reCAPTCHA\" message)."
298
  msgstr ""
299
 
300
- #: includes/class-gglcptch-settings-tabs.php:333
 
 
 
 
 
 
 
 
 
 
301
  msgid ""
302
  "reCAPTCHA version was changed. Please submit \"Test reCAPTCHA\" and "
303
  "regenerate Site and Secret keys if necessary."
304
  msgstr ""
305
 
306
- #: includes/class-gglcptch-settings-tabs.php:346
307
  msgid "Google Captcha Shortcode"
308
  msgstr ""
309
 
310
- #: includes/class-gglcptch-settings-tabs.php:349
311
  msgid ""
312
  "Add Google Captcha to your posts or pages using the following shortcode:"
313
  msgstr ""
@@ -336,7 +354,7 @@ msgstr "Testimonials"
336
  msgid "WordPress default"
337
  msgstr "WordPress подразумевано"
338
 
339
- #: includes/forms.php:47 includes/pro_banners.php:75
340
  msgid "External Plugins"
341
  msgstr ""
342
 
@@ -348,19 +366,19 @@ msgstr ""
348
  msgid "Google Captcha Plugin"
349
  msgstr ""
350
 
351
- #: includes/forms.php:118 includes/forms.php:144
352
  msgid "Activate"
353
  msgstr "Активирај"
354
 
355
- #: includes/forms.php:120 includes/forms.php:147 includes/forms.php:151
356
  msgid "Install Now"
357
  msgstr ""
358
 
359
- #: includes/forms.php:269
360
  msgid "Authentication failed."
361
  msgstr ""
362
 
363
- #: includes/forms.php:358
364
  msgid "Click the BACK button on your browser and try again."
365
  msgstr ""
366
 
@@ -459,36 +477,42 @@ msgstr ""
459
  #: includes/pro_banners.php:70
460
  #, fuzzy
461
  #| msgid "Contact form"
462
- msgid "Contact Forms"
463
  msgstr "Контакт форма"
464
 
465
  #: includes/pro_banners.php:71
466
  #, fuzzy
467
  #| msgid "Login form"
468
- msgid "Login Forms"
469
  msgstr "Логин форма"
470
 
471
- #: includes/pro_banners.php:167
 
 
 
 
 
 
472
  msgid "Size"
473
  msgstr ""
474
 
475
- #: includes/pro_banners.php:171
476
  msgid "Normal"
477
  msgstr "Нормално"
478
 
479
- #: includes/pro_banners.php:172
480
  msgid "Compact"
481
  msgstr "Компактно"
482
 
483
- #: includes/pro_banners.php:177
484
  msgid "Language"
485
  msgstr ""
486
 
487
- #: includes/pro_banners.php:185
488
  msgid "Multilanguage"
489
  msgstr ""
490
 
491
- #: includes/pro_banners.php:188
492
  msgid ""
493
  "Enable to switch language automatically on multilingual website using "
494
  "Multilanguage plugin."
2
  msgstr ""
3
  "Project-Id-Version: Google Сaptcha\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2019-05-06 10:58+0300\n"
6
  "PO-Revision-Date: \n"
7
  "Last-Translator: \n"
8
  "Language-Team: Team Link <teamlink@gmx.us>\n"
18
  "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
19
  "X-Poedit-SearchPath-0: .\n"
20
 
21
+ #: google-captcha.php:39 google-captcha.php:49 google-captcha.php:485
22
+ #: includes/class-gglcptch-settings-tabs.php:149
23
  msgid "Google Captcha Settings"
24
  msgstr "Google Captcha Подешавања"
25
 
26
+ #: google-captcha.php:50 google-captcha.php:1068 google-captcha.php:1081
27
  #: includes/class-gglcptch-settings-tabs.php:25
28
  msgid "Settings"
29
  msgstr "Подешавања"
30
 
31
+ #: google-captcha.php:58 includes/whitelist.php:46
32
  msgid "Google Captcha Whitelist"
33
  msgstr ""
34
 
35
+ #: google-captcha.php:59
36
  msgid "Whitelist"
37
  msgstr "Бела листа"
38
 
39
+ #: google-captcha.php:76 includes/pro_banners.php:29
40
  msgid "Upgrade to Pro"
41
  msgstr "Пређи на Про"
42
 
43
+ #: google-captcha.php:264
44
  msgid "Please wait until Google reCAPTCHA is loaded."
45
  msgstr "Молимо сачекајте док се Google reCAPTCHA учита."
46
 
47
+ #: google-captcha.php:265
48
  msgid ""
49
  "Failed to load Google reCAPTCHA. Please check your internet connection and "
50
  "reload this page."
52
  "Није успело учитавање Google reCAPTCHA-e Молимо проверите Вашу интернет "
53
  "конекцију и освежите страну."
54
 
55
+ #: google-captcha.php:281
56
  msgid "Warning"
57
  msgstr "Упозорење"
58
 
59
+ #: google-captcha.php:389
60
  msgid "You are in the whitelist"
61
  msgstr "Ви сте на белој листи"
62
 
63
+ #: google-captcha.php:486
64
  msgid "Please enable JavaScript in your browser."
65
  msgstr ""
66
 
67
+ #: google-captcha.php:560
68
  msgid "This site is protected by reCAPTCHA and the Google "
69
  msgstr ""
70
 
71
+ #: google-captcha.php:561
72
  msgid "Privacy Policy"
73
  msgstr ""
74
 
75
+ #: google-captcha.php:562
76
  msgid " and "
77
  msgstr ""
78
 
79
+ #: google-captcha.php:563
80
  msgid "Terms of Service"
81
  msgstr ""
82
 
83
+ #: google-captcha.php:564
84
  msgid " apply."
85
  msgstr ""
86
 
87
+ #: google-captcha.php:571 google-captcha.php:1103
88
  msgid "To use Google Captcha you must get the keys from"
89
  msgstr "Да бисте користили Google Captcha морате узети кључеве од"
90
 
91
+ #: google-captcha.php:572 google-captcha.php:1104
92
  msgid "here"
93
  msgstr "овде"
94
 
95
+ #: google-captcha.php:573 google-captcha.php:1105
96
  msgid "and enter them on the"
97
  msgstr "и унесите их на"
98
 
99
+ #: google-captcha.php:575 google-captcha.php:1107
100
  msgid "plugin setting page"
101
  msgstr "страна подешавања додатка"
102
 
103
+ #: google-captcha.php:846 includes/forms.php:352
104
  msgid "Error"
105
  msgstr "Грешка"
106
 
107
+ #: google-captcha.php:968
108
  msgid "User response is missing."
109
  msgstr "Одговор корисника недостаје."
110
 
111
+ #: google-captcha.php:970
112
+ msgid "Secret Key is missing."
113
+ msgstr "Тајни кључ недостаје."
114
+
115
+ #: google-captcha.php:973
116
  msgid "Secret Key is invalid."
117
  msgstr ""
118
 
119
+ #: google-captcha.php:974
120
  msgid "Check your domain configurations"
121
  msgstr ""
122
 
123
+ #: google-captcha.php:975
124
  msgid "and enter it again"
125
  msgstr "и унесите поново"
126
 
127
+ #: google-captcha.php:977
 
 
 
 
128
  msgid "User response is invalid"
129
  msgstr "Одговор корисника није исправан"
130
 
131
+ #: google-captcha.php:978
132
  msgid "You have entered an incorrect reCAPTCHA value."
133
  msgstr "Унели сте нетачну reCAPTCHA вредност."
134
 
135
+ #: google-captcha.php:979
136
  msgid ""
137
  "More than one reCAPTCHA has been found in the current form. Please remove "
138
  "all unnecessary reCAPTCHA fields to make it work properly."
140
  "Више од једне reCAPTCHA је нађено у тренутној форми. Молим вас да уклоните "
141
  "сва непотребна reCAPTCHA поља како би форма радила исправно."
142
 
143
+ #: google-captcha.php:981
144
  msgid "reCAPTCHA v3 test failed"
145
  msgstr ""
146
 
147
+ #: google-captcha.php:1019
148
  msgid "Please submit \"Test verification\""
149
  msgstr ""
150
 
151
+ #: google-captcha.php:1021
152
  msgid "Please complete the captcha and submit \"Test verification\""
153
  msgstr ""
154
 
155
+ #: google-captcha.php:1027
156
  msgid "Test verification"
157
  msgstr "Тестирај верификацију"
158
 
159
+ #: google-captcha.php:1048
160
  msgid "The verification is successfully completed."
161
  msgstr ""
162
 
163
+ #: google-captcha.php:1083
164
  msgid "FAQ"
165
  msgstr "ЧПП"
166
 
167
+ #: google-captcha.php:1084
168
  msgid "Support"
169
  msgstr "Подршка"
170
 
210
  msgid "Enter secret key"
211
  msgstr "Унесите тајни кључ"
212
 
213
+ #: includes/class-gglcptch-settings-tabs.php:137
214
  msgid "Settings saved."
215
  msgstr ""
216
 
217
+ #: includes/class-gglcptch-settings-tabs.php:152
218
  msgid "Authentication"
219
  msgstr "Аутентикација"
220
 
221
+ #: includes/class-gglcptch-settings-tabs.php:153
222
  msgid ""
223
  "Register your website with Google to get required API keys and enter them "
224
  "below."
225
  msgstr ""
226
 
227
+ #: includes/class-gglcptch-settings-tabs.php:153
228
  msgid "Get the API Keys"
229
  msgstr ""
230
 
231
+ #: includes/class-gglcptch-settings-tabs.php:170
232
  #, fuzzy
233
  msgid "Test reCAPTCHA"
234
  msgstr "Невидљиви reCAPTCHA"
235
 
236
+ #: includes/class-gglcptch-settings-tabs.php:176
237
  msgid "General"
238
  msgstr ""
239
 
240
+ #: includes/class-gglcptch-settings-tabs.php:179
241
  msgid "reCAPTCHA Version"
242
  msgstr "reCAPTCHA верзија"
243
 
244
+ #: includes/class-gglcptch-settings-tabs.php:192
245
  msgid "Enable reCAPTCHA for"
246
  msgstr "Омогући reCAPTCHA за"
247
 
248
+ #: includes/class-gglcptch-settings-tabs.php:238
249
+ #: includes/class-gglcptch-settings-tabs.php:300 includes/pro_banners.php:20
250
  msgid "Close"
251
  msgstr "Затвори"
252
 
253
+ #: includes/class-gglcptch-settings-tabs.php:247
254
  #, fuzzy
255
  msgid "Hide reCAPTCHA for"
256
  msgstr "Омогући reCAPTCHA за"
257
 
258
+ #: includes/class-gglcptch-settings-tabs.php:266
259
  #, fuzzy
260
  msgid "Hide reCAPTCHA Badge"
261
  msgstr "Омогући reCAPTCHA за"
262
 
263
+ #: includes/class-gglcptch-settings-tabs.php:271
264
  msgid "Enable to hide reCAPTCHA Badge for Version 3 and Invisble reCAPTCHA."
265
  msgstr ""
266
 
267
+ #: includes/class-gglcptch-settings-tabs.php:277
268
  msgid "Theme"
269
  msgstr ""
270
 
271
+ #: includes/class-gglcptch-settings-tabs.php:281
272
+ msgid "Light"
273
+ msgstr ""
274
+
275
+ #: includes/class-gglcptch-settings-tabs.php:282
276
+ msgid "Dark"
277
+ msgstr ""
278
+
279
+ #: includes/class-gglcptch-settings-tabs.php:288
280
  msgid "Score"
281
  msgstr ""
282
 
283
+ #: includes/class-gglcptch-settings-tabs.php:293
284
  msgid "Set the minimum verification score from 0 to 1"
285
  msgstr ""
286
 
287
+ #: includes/class-gglcptch-settings-tabs.php:309
288
  msgid "Whitelist Notification"
289
  msgstr "Нотификација за белу листу"
290
 
291
+ #: includes/class-gglcptch-settings-tabs.php:312
292
  #, fuzzy
293
  msgid "This message will be displayed instead of the reCAPTCHA."
294
  msgstr ""
295
  "Ова порука ће бити приказана уместо reCAPTCHA уколико је кориснички IP додат "
296
  "у белу листу"
297
 
298
+ #: includes/class-gglcptch-settings-tabs.php:316
299
+ msgid "Advanced Protection"
300
  msgstr ""
301
 
302
+ #: includes/class-gglcptch-settings-tabs.php:320
303
  msgid ""
304
  "Enable to keep submit button disabled until reCAPTCHA is loaded (do not use "
305
  "this option if you see \"Failed to load Google reCAPTCHA\" message)."
306
  msgstr ""
307
 
308
+ #: includes/class-gglcptch-settings-tabs.php:326
309
+ msgid "Disabled Submit Button"
310
+ msgstr ""
311
+
312
+ #: includes/class-gglcptch-settings-tabs.php:331
313
+ msgid ""
314
+ "Enable to keep submit button disabled until user passes the reCAPTCHA test "
315
+ "(for Version 2)."
316
+ msgstr ""
317
+
318
+ #: includes/class-gglcptch-settings-tabs.php:345
319
  msgid ""
320
  "reCAPTCHA version was changed. Please submit \"Test reCAPTCHA\" and "
321
  "regenerate Site and Secret keys if necessary."
322
  msgstr ""
323
 
324
+ #: includes/class-gglcptch-settings-tabs.php:358
325
  msgid "Google Captcha Shortcode"
326
  msgstr ""
327
 
328
+ #: includes/class-gglcptch-settings-tabs.php:361
329
  msgid ""
330
  "Add Google Captcha to your posts or pages using the following shortcode:"
331
  msgstr ""
354
  msgid "WordPress default"
355
  msgstr "WordPress подразумевано"
356
 
357
+ #: includes/forms.php:47 includes/pro_banners.php:76
358
  msgid "External Plugins"
359
  msgstr ""
360
 
366
  msgid "Google Captcha Plugin"
367
  msgstr ""
368
 
369
+ #: includes/forms.php:116 includes/forms.php:140
370
  msgid "Activate"
371
  msgstr "Активирај"
372
 
373
+ #: includes/forms.php:118 includes/forms.php:143 includes/forms.php:147
374
  msgid "Install Now"
375
  msgstr ""
376
 
377
+ #: includes/forms.php:265
378
  msgid "Authentication failed."
379
  msgstr ""
380
 
381
+ #: includes/forms.php:354
382
  msgid "Click the BACK button on your browser and try again."
383
  msgstr ""
384
 
477
  #: includes/pro_banners.php:70
478
  #, fuzzy
479
  #| msgid "Contact form"
480
+ msgid "Divi Contact Form"
481
  msgstr "Контакт форма"
482
 
483
  #: includes/pro_banners.php:71
484
  #, fuzzy
485
  #| msgid "Login form"
486
+ msgid "Divi Login Forms"
487
  msgstr "Логин форма"
488
 
489
+ #: includes/pro_banners.php:72
490
+ #, fuzzy
491
+ #| msgid "Contact form"
492
+ msgid "Divi Theme Contact Form"
493
+ msgstr "Контакт форма"
494
+
495
+ #: includes/pro_banners.php:174
496
  msgid "Size"
497
  msgstr ""
498
 
499
+ #: includes/pro_banners.php:178
500
  msgid "Normal"
501
  msgstr "Нормално"
502
 
503
+ #: includes/pro_banners.php:179
504
  msgid "Compact"
505
  msgstr "Компактно"
506
 
507
+ #: includes/pro_banners.php:184
508
  msgid "Language"
509
  msgstr ""
510
 
511
+ #: includes/pro_banners.php:192
512
  msgid "Multilanguage"
513
  msgstr ""
514
 
515
+ #: includes/pro_banners.php:195
516
  msgid ""
517
  "Enable to switch language automatically on multilingual website using "
518
  "Multilanguage plugin."
languages/google-captcha-uk.mo CHANGED
Binary file
languages/google-captcha-uk.po CHANGED
@@ -2,7 +2,7 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Google Сaptcha\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2019-03-04 12:04+0200\n"
6
  "PO-Revision-Date: \n"
7
  "Last-Translator: bestwebsoft.com <plugin@bestwebsoft.com>\n"
8
  "Language-Team: the BestWebSoft Team <plugin@bestwebsoft.com>\n"
@@ -18,33 +18,33 @@ msgstr ""
18
  "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
19
  "X-Poedit-SearchPath-0: .\n"
20
 
21
- #: google-captcha.php:38 google-captcha.php:40 google-captcha.php:457
22
- #: includes/class-gglcptch-settings-tabs.php:148
23
  msgid "Google Captcha Settings"
24
  msgstr "Налаштування Google Captcha"
25
 
26
- #: google-captcha.php:40 google-captcha.php:1055 google-captcha.php:1068
27
  #: includes/class-gglcptch-settings-tabs.php:25
28
  msgid "Settings"
29
  msgstr "Налаштування"
30
 
31
- #: google-captcha.php:42 includes/whitelist.php:46
32
  msgid "Google Captcha Whitelist"
33
  msgstr "Білий список Google Captcha"
34
 
35
- #: google-captcha.php:42
36
  msgid "Whitelist"
37
  msgstr "Білий список"
38
 
39
- #: google-captcha.php:48 includes/pro_banners.php:29
40
  msgid "Upgrade to Pro"
41
  msgstr "Оновити до Pro"
42
 
43
- #: google-captcha.php:240
44
  msgid "Please wait until Google reCAPTCHA is loaded."
45
  msgstr "Будь ласка, зачекайте, поки буде завантаженo Google reCAPTCHA."
46
 
47
- #: google-captcha.php:241
48
  msgid ""
49
  "Failed to load Google reCAPTCHA. Please check your internet connection and "
50
  "reload this page."
@@ -52,87 +52,87 @@ msgstr ""
52
  "Не вдалося завантажити Google reCAPTCHA. Будь ласка, перевірте підключення "
53
  "до Інтернету та оновіть цю сторінку."
54
 
55
- #: google-captcha.php:257
56
  msgid "Warning"
57
  msgstr "Увага"
58
 
59
- #: google-captcha.php:360
60
  msgid "You are in the whitelist"
61
  msgstr "Ви знаходитесь в білому списку"
62
 
63
- #: google-captcha.php:458
64
  msgid "Please enable JavaScript in your browser."
65
  msgstr "Будь ласка, увімкніть JavaScript у вашому браузері."
66
 
67
- #: google-captcha.php:541
68
  msgid "This site is protected by reCAPTCHA and the Google "
69
  msgstr "Цей сайт захищений reCAPTCHA і застосовуються "
70
 
71
- #: google-captcha.php:542
72
  msgid "Privacy Policy"
73
  msgstr "Політика конфіденційності"
74
 
75
- #: google-captcha.php:543
76
  msgid " and "
77
  msgstr " та "
78
 
79
- #: google-captcha.php:544
80
  msgid "Terms of Service"
81
  msgstr "Умови обслуговування"
82
 
83
- #: google-captcha.php:545
84
  msgid " apply."
85
  msgstr " Google."
86
 
87
- #: google-captcha.php:552 google-captcha.php:1090
88
  msgid "To use Google Captcha you must get the keys from"
89
  msgstr "Щоб використовувати Google Captcha, вам необхідно отримати ключі з"
90
 
91
- #: google-captcha.php:553 google-captcha.php:1091
92
  msgid "here"
93
  msgstr "тут"
94
 
95
- #: google-captcha.php:554 google-captcha.php:1092
96
  msgid "and enter them on the"
97
  msgstr "і вставте їх у"
98
 
99
- #: google-captcha.php:556 google-captcha.php:1094
100
  msgid "plugin setting page"
101
  msgstr "сторінку налаштувань плагіну"
102
 
103
- #: google-captcha.php:823 includes/forms.php:356
104
  msgid "Error"
105
  msgstr "Помилка"
106
 
107
- #: google-captcha.php:948
108
  msgid "User response is missing."
109
  msgstr "Відповідь користувача відсутня."
110
 
111
- #: google-captcha.php:952 google-captcha.php:960
 
 
 
 
112
  msgid "Secret Key is invalid."
113
  msgstr "Секретний ключ некоректний."
114
 
115
- #: google-captcha.php:953 google-captcha.php:961
116
  msgid "Check your domain configurations"
117
  msgstr "Перевірте конфігурацію вашого домену"
118
 
119
- #: google-captcha.php:954 google-captcha.php:962
120
  msgid "and enter it again"
121
  msgstr "і введіть його знову"
122
 
123
- #: google-captcha.php:957
124
- msgid "Secret Key is missing."
125
- msgstr "Секретний ключ відсутній."
126
-
127
- #: google-captcha.php:964
128
  msgid "User response is invalid"
129
  msgstr "Некоректна відповідь користувача"
130
 
131
- #: google-captcha.php:965
132
  msgid "You have entered an incorrect reCAPTCHA value."
133
  msgstr "Ви ввели невірне значення reCAPTCHA."
134
 
135
- #: google-captcha.php:966
136
  msgid ""
137
  "More than one reCAPTCHA has been found in the current form. Please remove "
138
  "all unnecessary reCAPTCHA fields to make it work properly."
@@ -140,32 +140,32 @@ msgstr ""
140
  "В поточній формі знайдено більш ніж один блок reCAPTCHA. Будь-ласка видаліть "
141
  "усі зайві блоки reCAPTCHA для коректної подальшої роботи."
142
 
143
- #: google-captcha.php:968
144
  msgid "reCAPTCHA v3 test failed"
145
  msgstr "Тест reCAPTCHA v3 не пройдений"
146
 
147
- #: google-captcha.php:1006
148
  msgid "Please submit \"Test verification\""
149
  msgstr "Будь ласка, натисніть кнопку \"Тестування перевірки\""
150
 
151
- #: google-captcha.php:1008
152
  msgid "Please complete the captcha and submit \"Test verification\""
153
  msgstr ""
154
  "Будь ласка, заповніть капчу і натисніть кнопку \"Тестування перевірки\""
155
 
156
- #: google-captcha.php:1014
157
  msgid "Test verification"
158
  msgstr "Тестування перевірки"
159
 
160
- #: google-captcha.php:1035
161
  msgid "The verification is successfully completed."
162
  msgstr "Перевірка завершена успішно."
163
 
164
- #: google-captcha.php:1070
165
  msgid "FAQ"
166
  msgstr "FAQ"
167
 
168
- #: google-captcha.php:1071
169
  msgid "Support"
170
  msgstr "Техпідтримка"
171
 
@@ -212,15 +212,15 @@ msgstr ""
212
  msgid "Enter secret key"
213
  msgstr "Введіть секретний ключ"
214
 
215
- #: includes/class-gglcptch-settings-tabs.php:136
216
  msgid "Settings saved."
217
  msgstr "Налаштування збережені."
218
 
219
- #: includes/class-gglcptch-settings-tabs.php:151
220
  msgid "Authentication"
221
  msgstr "Ідентифікація"
222
 
223
- #: includes/class-gglcptch-settings-tabs.php:152
224
  msgid ""
225
  "Register your website with Google to get required API keys and enter them "
226
  "below."
@@ -228,70 +228,78 @@ msgstr ""
228
  "Зареєструйте свій веб-сайт за допомогою Google, щоб отримати необхідні API "
229
  "ключі та введіть їх нижче."
230
 
231
- #: includes/class-gglcptch-settings-tabs.php:152
232
  msgid "Get the API Keys"
233
  msgstr "Отримати API ключі"
234
 
235
- #: includes/class-gglcptch-settings-tabs.php:169
236
  msgid "Test reCAPTCHA"
237
  msgstr "Тестування reCAPTCHA"
238
 
239
- #: includes/class-gglcptch-settings-tabs.php:175
240
  msgid "General"
241
  msgstr "Загальне"
242
 
243
- #: includes/class-gglcptch-settings-tabs.php:178
244
  msgid "reCAPTCHA Version"
245
  msgstr "Версія reCAPTCHA"
246
 
247
- #: includes/class-gglcptch-settings-tabs.php:191
248
  msgid "Enable reCAPTCHA for"
249
  msgstr "Включити reCAPTCHA для"
250
 
251
- #: includes/class-gglcptch-settings-tabs.php:237
252
- #: includes/class-gglcptch-settings-tabs.php:299 includes/pro_banners.php:20
253
  msgid "Close"
254
  msgstr "Закрити"
255
 
256
- #: includes/class-gglcptch-settings-tabs.php:246
257
  msgid "Hide reCAPTCHA for"
258
  msgstr "Сховати reCAPTCHA для"
259
 
260
- #: includes/class-gglcptch-settings-tabs.php:265
261
  msgid "Hide reCAPTCHA Badge"
262
  msgstr "Сховати значок reCAPTCHA"
263
 
264
- #: includes/class-gglcptch-settings-tabs.php:270
265
  msgid "Enable to hide reCAPTCHA Badge for Version 3 and Invisble reCAPTCHA."
266
  msgstr ""
267
  "Увімкніть, щоб приховати значок reCAPTCHA для версії 3 і Invisible reCAPTCHA."
268
 
269
- #: includes/class-gglcptch-settings-tabs.php:276
270
  msgid "Theme"
271
  msgstr "Тема"
272
 
273
- #: includes/class-gglcptch-settings-tabs.php:287
 
 
 
 
 
 
 
 
274
  msgid "Score"
275
  msgstr "Кількість очок"
276
 
277
- #: includes/class-gglcptch-settings-tabs.php:292
278
  msgid "Set the minimum verification score from 0 to 1"
279
  msgstr ""
280
  "Вкажіть граничне значення, при якому перевірка буде пройдена від 0 до 1"
281
 
282
- #: includes/class-gglcptch-settings-tabs.php:308
283
  msgid "Whitelist Notification"
284
  msgstr "Повідомлення про знаходження у білому списку"
285
 
286
- #: includes/class-gglcptch-settings-tabs.php:311
287
  msgid "This message will be displayed instead of the reCAPTCHA."
288
  msgstr "Це повідомлення буде відображатися замість reCAPTCHA."
289
 
290
- #: includes/class-gglcptch-settings-tabs.php:315
291
- msgid "Disabled Submit Button"
292
- msgstr "Відключена кнопка підтвердження"
293
 
294
- #: includes/class-gglcptch-settings-tabs.php:319
295
  msgid ""
296
  "Enable to keep submit button disabled until reCAPTCHA is loaded (do not use "
297
  "this option if you see \"Failed to load Google reCAPTCHA\" message)."
@@ -300,7 +308,19 @@ msgstr ""
300
  "не буде завантажена reCAPTCHA (Не використовуйте цю опцію, якщо ви бачите "
301
  "повідомлення \"Не вдалося завантажити Google reCAPTCHA\")."
302
 
303
- #: includes/class-gglcptch-settings-tabs.php:333
 
 
 
 
 
 
 
 
 
 
 
 
304
  msgid ""
305
  "reCAPTCHA version was changed. Please submit \"Test reCAPTCHA\" and "
306
  "regenerate Site and Secret keys if necessary."
@@ -308,11 +328,11 @@ msgstr ""
308
  "Версію reCAPTCHA було змінено. Будь ласка, натисніть \"Тестування reCAPTCHA"
309
  "\" та оновіть секретний ключ та ключ сайту, якщо це необхідно."
310
 
311
- #: includes/class-gglcptch-settings-tabs.php:346
312
  msgid "Google Captcha Shortcode"
313
  msgstr "Шорткод Google Captcha"
314
 
315
- #: includes/class-gglcptch-settings-tabs.php:349
316
  msgid ""
317
  "Add Google Captcha to your posts or pages using the following shortcode:"
318
  msgstr ""
@@ -343,7 +363,7 @@ msgstr "Testimonials"
343
  msgid "WordPress default"
344
  msgstr "Стандартних форм WordPress"
345
 
346
- #: includes/forms.php:47 includes/pro_banners.php:75
347
  msgid "External Plugins"
348
  msgstr "Зовнішні плагіни"
349
 
@@ -355,19 +375,19 @@ msgstr "Користувацькі форми"
355
  msgid "Google Captcha Plugin"
356
  msgstr "Плагін Google Captcha"
357
 
358
- #: includes/forms.php:118 includes/forms.php:144
359
  msgid "Activate"
360
  msgstr "Активувати"
361
 
362
- #: includes/forms.php:120 includes/forms.php:147 includes/forms.php:151
363
  msgid "Install Now"
364
  msgstr "Встановити зараз"
365
 
366
- #: includes/forms.php:269
367
  msgid "Authentication failed."
368
  msgstr "Помилка аутентифікації."
369
 
370
- #: includes/forms.php:358
371
  msgid "Click the BACK button on your browser and try again."
372
  msgstr "Натисніть кнопку НАЗАД у браузері та спробуйте ще раз."
373
 
@@ -466,36 +486,42 @@ msgstr "Ninja Forms"
466
  #: includes/pro_banners.php:70
467
  #, fuzzy
468
  #| msgid "Contact form"
469
- msgid "Contact Forms"
470
  msgstr "Контактна форма"
471
 
472
  #: includes/pro_banners.php:71
473
  #, fuzzy
474
  #| msgid "Login form"
475
- msgid "Login Forms"
476
  msgstr "Форма логіну"
477
 
478
- #: includes/pro_banners.php:167
 
 
 
 
 
 
479
  msgid "Size"
480
  msgstr "Розмір"
481
 
482
- #: includes/pro_banners.php:171
483
  msgid "Normal"
484
  msgstr "Нормальний"
485
 
486
- #: includes/pro_banners.php:172
487
  msgid "Compact"
488
  msgstr "Компактний"
489
 
490
- #: includes/pro_banners.php:177
491
  msgid "Language"
492
  msgstr "Мова"
493
 
494
- #: includes/pro_banners.php:185
495
  msgid "Multilanguage"
496
  msgstr "Multilanguage"
497
 
498
- #: includes/pro_banners.php:188
499
  msgid ""
500
  "Enable to switch language automatically on multilingual website using "
501
  "Multilanguage plugin."
2
  msgstr ""
3
  "Project-Id-Version: Google Сaptcha\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2019-05-06 10:58+0300\n"
6
  "PO-Revision-Date: \n"
7
  "Last-Translator: bestwebsoft.com <plugin@bestwebsoft.com>\n"
8
  "Language-Team: the BestWebSoft Team <plugin@bestwebsoft.com>\n"
18
  "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
19
  "X-Poedit-SearchPath-0: .\n"
20
 
21
+ #: google-captcha.php:39 google-captcha.php:49 google-captcha.php:485
22
+ #: includes/class-gglcptch-settings-tabs.php:149
23
  msgid "Google Captcha Settings"
24
  msgstr "Налаштування Google Captcha"
25
 
26
+ #: google-captcha.php:50 google-captcha.php:1068 google-captcha.php:1081
27
  #: includes/class-gglcptch-settings-tabs.php:25
28
  msgid "Settings"
29
  msgstr "Налаштування"
30
 
31
+ #: google-captcha.php:58 includes/whitelist.php:46
32
  msgid "Google Captcha Whitelist"
33
  msgstr "Білий список Google Captcha"
34
 
35
+ #: google-captcha.php:59
36
  msgid "Whitelist"
37
  msgstr "Білий список"
38
 
39
+ #: google-captcha.php:76 includes/pro_banners.php:29
40
  msgid "Upgrade to Pro"
41
  msgstr "Оновити до Pro"
42
 
43
+ #: google-captcha.php:264
44
  msgid "Please wait until Google reCAPTCHA is loaded."
45
  msgstr "Будь ласка, зачекайте, поки буде завантаженo Google reCAPTCHA."
46
 
47
+ #: google-captcha.php:265
48
  msgid ""
49
  "Failed to load Google reCAPTCHA. Please check your internet connection and "
50
  "reload this page."
52
  "Не вдалося завантажити Google reCAPTCHA. Будь ласка, перевірте підключення "
53
  "до Інтернету та оновіть цю сторінку."
54
 
55
+ #: google-captcha.php:281
56
  msgid "Warning"
57
  msgstr "Увага"
58
 
59
+ #: google-captcha.php:389
60
  msgid "You are in the whitelist"
61
  msgstr "Ви знаходитесь в білому списку"
62
 
63
+ #: google-captcha.php:486
64
  msgid "Please enable JavaScript in your browser."
65
  msgstr "Будь ласка, увімкніть JavaScript у вашому браузері."
66
 
67
+ #: google-captcha.php:560
68
  msgid "This site is protected by reCAPTCHA and the Google "
69
  msgstr "Цей сайт захищений reCAPTCHA і застосовуються "
70
 
71
+ #: google-captcha.php:561
72
  msgid "Privacy Policy"
73
  msgstr "Політика конфіденційності"
74
 
75
+ #: google-captcha.php:562
76
  msgid " and "
77
  msgstr " та "
78
 
79
+ #: google-captcha.php:563
80
  msgid "Terms of Service"
81
  msgstr "Умови обслуговування"
82
 
83
+ #: google-captcha.php:564
84
  msgid " apply."
85
  msgstr " Google."
86
 
87
+ #: google-captcha.php:571 google-captcha.php:1103
88
  msgid "To use Google Captcha you must get the keys from"
89
  msgstr "Щоб використовувати Google Captcha, вам необхідно отримати ключі з"
90
 
91
+ #: google-captcha.php:572 google-captcha.php:1104
92
  msgid "here"
93
  msgstr "тут"
94
 
95
+ #: google-captcha.php:573 google-captcha.php:1105
96
  msgid "and enter them on the"
97
  msgstr "і вставте їх у"
98
 
99
+ #: google-captcha.php:575 google-captcha.php:1107
100
  msgid "plugin setting page"
101
  msgstr "сторінку налаштувань плагіну"
102
 
103
+ #: google-captcha.php:846 includes/forms.php:352
104
  msgid "Error"
105
  msgstr "Помилка"
106
 
107
+ #: google-captcha.php:968
108
  msgid "User response is missing."
109
  msgstr "Відповідь користувача відсутня."
110
 
111
+ #: google-captcha.php:970
112
+ msgid "Secret Key is missing."
113
+ msgstr "Секретний ключ відсутній."
114
+
115
+ #: google-captcha.php:973
116
  msgid "Secret Key is invalid."
117
  msgstr "Секретний ключ некоректний."
118
 
119
+ #: google-captcha.php:974
120
  msgid "Check your domain configurations"
121
  msgstr "Перевірте конфігурацію вашого домену"
122
 
123
+ #: google-captcha.php:975
124
  msgid "and enter it again"
125
  msgstr "і введіть його знову"
126
 
127
+ #: google-captcha.php:977
 
 
 
 
128
  msgid "User response is invalid"
129
  msgstr "Некоректна відповідь користувача"
130
 
131
+ #: google-captcha.php:978
132
  msgid "You have entered an incorrect reCAPTCHA value."
133
  msgstr "Ви ввели невірне значення reCAPTCHA."
134
 
135
+ #: google-captcha.php:979
136
  msgid ""
137
  "More than one reCAPTCHA has been found in the current form. Please remove "
138
  "all unnecessary reCAPTCHA fields to make it work properly."
140
  "В поточній формі знайдено більш ніж один блок reCAPTCHA. Будь-ласка видаліть "
141
  "усі зайві блоки reCAPTCHA для коректної подальшої роботи."
142
 
143
+ #: google-captcha.php:981
144
  msgid "reCAPTCHA v3 test failed"
145
  msgstr "Тест reCAPTCHA v3 не пройдений"
146
 
147
+ #: google-captcha.php:1019
148
  msgid "Please submit \"Test verification\""
149
  msgstr "Будь ласка, натисніть кнопку \"Тестування перевірки\""
150
 
151
+ #: google-captcha.php:1021
152
  msgid "Please complete the captcha and submit \"Test verification\""
153
  msgstr ""
154
  "Будь ласка, заповніть капчу і натисніть кнопку \"Тестування перевірки\""
155
 
156
+ #: google-captcha.php:1027
157
  msgid "Test verification"
158
  msgstr "Тестування перевірки"
159
 
160
+ #: google-captcha.php:1048
161
  msgid "The verification is successfully completed."
162
  msgstr "Перевірка завершена успішно."
163
 
164
+ #: google-captcha.php:1083
165
  msgid "FAQ"
166
  msgstr "FAQ"
167
 
168
+ #: google-captcha.php:1084
169
  msgid "Support"
170
  msgstr "Техпідтримка"
171
 
212
  msgid "Enter secret key"
213
  msgstr "Введіть секретний ключ"
214
 
215
+ #: includes/class-gglcptch-settings-tabs.php:137
216
  msgid "Settings saved."
217
  msgstr "Налаштування збережені."
218
 
219
+ #: includes/class-gglcptch-settings-tabs.php:152
220
  msgid "Authentication"
221
  msgstr "Ідентифікація"
222
 
223
+ #: includes/class-gglcptch-settings-tabs.php:153
224
  msgid ""
225
  "Register your website with Google to get required API keys and enter them "
226
  "below."
228
  "Зареєструйте свій веб-сайт за допомогою Google, щоб отримати необхідні API "
229
  "ключі та введіть їх нижче."
230
 
231
+ #: includes/class-gglcptch-settings-tabs.php:153
232
  msgid "Get the API Keys"
233
  msgstr "Отримати API ключі"
234
 
235
+ #: includes/class-gglcptch-settings-tabs.php:170
236
  msgid "Test reCAPTCHA"
237
  msgstr "Тестування reCAPTCHA"
238
 
239
+ #: includes/class-gglcptch-settings-tabs.php:176
240
  msgid "General"
241
  msgstr "Загальне"
242
 
243
+ #: includes/class-gglcptch-settings-tabs.php:179
244
  msgid "reCAPTCHA Version"
245
  msgstr "Версія reCAPTCHA"
246
 
247
+ #: includes/class-gglcptch-settings-tabs.php:192
248
  msgid "Enable reCAPTCHA for"
249
  msgstr "Включити reCAPTCHA для"
250
 
251
+ #: includes/class-gglcptch-settings-tabs.php:238
252
+ #: includes/class-gglcptch-settings-tabs.php:300 includes/pro_banners.php:20
253
  msgid "Close"
254
  msgstr "Закрити"
255
 
256
+ #: includes/class-gglcptch-settings-tabs.php:247
257
  msgid "Hide reCAPTCHA for"
258
  msgstr "Сховати reCAPTCHA для"
259
 
260
+ #: includes/class-gglcptch-settings-tabs.php:266
261
  msgid "Hide reCAPTCHA Badge"
262
  msgstr "Сховати значок reCAPTCHA"
263
 
264
+ #: includes/class-gglcptch-settings-tabs.php:271
265
  msgid "Enable to hide reCAPTCHA Badge for Version 3 and Invisble reCAPTCHA."
266
  msgstr ""
267
  "Увімкніть, щоб приховати значок reCAPTCHA для версії 3 і Invisible reCAPTCHA."
268
 
269
+ #: includes/class-gglcptch-settings-tabs.php:277
270
  msgid "Theme"
271
  msgstr "Тема"
272
 
273
+ #: includes/class-gglcptch-settings-tabs.php:281
274
+ msgid "Light"
275
+ msgstr "Свiтла"
276
+
277
+ #: includes/class-gglcptch-settings-tabs.php:282
278
+ msgid "Dark"
279
+ msgstr "Темна"
280
+
281
+ #: includes/class-gglcptch-settings-tabs.php:288
282
  msgid "Score"
283
  msgstr "Кількість очок"
284
 
285
+ #: includes/class-gglcptch-settings-tabs.php:293
286
  msgid "Set the minimum verification score from 0 to 1"
287
  msgstr ""
288
  "Вкажіть граничне значення, при якому перевірка буде пройдена від 0 до 1"
289
 
290
+ #: includes/class-gglcptch-settings-tabs.php:309
291
  msgid "Whitelist Notification"
292
  msgstr "Повідомлення про знаходження у білому списку"
293
 
294
+ #: includes/class-gglcptch-settings-tabs.php:312
295
  msgid "This message will be displayed instead of the reCAPTCHA."
296
  msgstr "Це повідомлення буде відображатися замість reCAPTCHA."
297
 
298
+ #: includes/class-gglcptch-settings-tabs.php:316
299
+ msgid "Advanced Protection"
300
+ msgstr "Посилений захист"
301
 
302
+ #: includes/class-gglcptch-settings-tabs.php:320
303
  msgid ""
304
  "Enable to keep submit button disabled until reCAPTCHA is loaded (do not use "
305
  "this option if you see \"Failed to load Google reCAPTCHA\" message)."
308
  "не буде завантажена reCAPTCHA (Не використовуйте цю опцію, якщо ви бачите "
309
  "повідомлення \"Не вдалося завантажити Google reCAPTCHA\")."
310
 
311
+ #: includes/class-gglcptch-settings-tabs.php:326
312
+ msgid "Disabled Submit Button"
313
+ msgstr "Відключена кнопка підтвердження"
314
+
315
+ #: includes/class-gglcptch-settings-tabs.php:331
316
+ msgid ""
317
+ "Enable to keep submit button disabled until user passes the reCAPTCHA test "
318
+ "(for Version 2)."
319
+ msgstr ""
320
+ "Увімкніть, щоб кнопка відправки залишалася відключеною до тих пір, поки "
321
+ "користувач не пройде тест reCAPTCHA (для версії 2)."
322
+
323
+ #: includes/class-gglcptch-settings-tabs.php:345
324
  msgid ""
325
  "reCAPTCHA version was changed. Please submit \"Test reCAPTCHA\" and "
326
  "regenerate Site and Secret keys if necessary."
328
  "Версію reCAPTCHA було змінено. Будь ласка, натисніть \"Тестування reCAPTCHA"
329
  "\" та оновіть секретний ключ та ключ сайту, якщо це необхідно."
330
 
331
+ #: includes/class-gglcptch-settings-tabs.php:358
332
  msgid "Google Captcha Shortcode"
333
  msgstr "Шорткод Google Captcha"
334
 
335
+ #: includes/class-gglcptch-settings-tabs.php:361
336
  msgid ""
337
  "Add Google Captcha to your posts or pages using the following shortcode:"
338
  msgstr ""
363
  msgid "WordPress default"
364
  msgstr "Стандартних форм WordPress"
365
 
366
+ #: includes/forms.php:47 includes/pro_banners.php:76
367
  msgid "External Plugins"
368
  msgstr "Зовнішні плагіни"
369
 
375
  msgid "Google Captcha Plugin"
376
  msgstr "Плагін Google Captcha"
377
 
378
+ #: includes/forms.php:116 includes/forms.php:140
379
  msgid "Activate"
380
  msgstr "Активувати"
381
 
382
+ #: includes/forms.php:118 includes/forms.php:143 includes/forms.php:147
383
  msgid "Install Now"
384
  msgstr "Встановити зараз"
385
 
386
+ #: includes/forms.php:265
387
  msgid "Authentication failed."
388
  msgstr "Помилка аутентифікації."
389
 
390
+ #: includes/forms.php:354
391
  msgid "Click the BACK button on your browser and try again."
392
  msgstr "Натисніть кнопку НАЗАД у браузері та спробуйте ще раз."
393
 
486
  #: includes/pro_banners.php:70
487
  #, fuzzy
488
  #| msgid "Contact form"
489
+ msgid "Divi Contact Form"
490
  msgstr "Контактна форма"
491
 
492
  #: includes/pro_banners.php:71
493
  #, fuzzy
494
  #| msgid "Login form"
495
+ msgid "Divi Login Forms"
496
  msgstr "Форма логіну"
497
 
498
+ #: includes/pro_banners.php:72
499
+ #, fuzzy
500
+ #| msgid "Contact form"
501
+ msgid "Divi Theme Contact Form"
502
+ msgstr "Контактна форма"
503
+
504
+ #: includes/pro_banners.php:174
505
  msgid "Size"
506
  msgstr "Розмір"
507
 
508
+ #: includes/pro_banners.php:178
509
  msgid "Normal"
510
  msgstr "Нормальний"
511
 
512
+ #: includes/pro_banners.php:179
513
  msgid "Compact"
514
  msgstr "Компактний"
515
 
516
+ #: includes/pro_banners.php:184
517
  msgid "Language"
518
  msgstr "Мова"
519
 
520
+ #: includes/pro_banners.php:192
521
  msgid "Multilanguage"
522
  msgstr "Multilanguage"
523
 
524
+ #: includes/pro_banners.php:195
525
  msgid ""
526
  "Enable to switch language automatically on multilingual website using "
527
  "Multilanguage plugin."
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://bestwebsoft.com/donate/
4
  Tags: anti-spam security, antispam, recaptcha, captcha, captha, Invisible reCaptcha, Invisible captcha, Invisibl reCaptcha, comment, cpatcha, google catcha, Invisible re captcha, recaptcha version3
5
  Requires at least: 3.9
6
  Tested up to: 5.1.1
7
- Stable tag: 1.43
8
  License: GPLv3 or later
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
10
 
@@ -31,6 +31,7 @@ http://www.youtube.com/watch?v=qwHsW3IJ7gQ
31
  * Testimonials
32
  * Custom form
33
  * Hide Google Captcha (reCAPTCHA) for the whitelisted IP addresses
 
34
  * Validity check of keys in admin panel
35
  * Available Google Captcha (reCAPTCHA) themes for:
36
  * Version 1
@@ -43,7 +44,7 @@ http://www.youtube.com/watch?v=qwHsW3IJ7gQ
43
  * Dark
44
  * Compatible with [Limit Attempts](https://bestwebsoft.com/products/wordpress/plugins/limit-attempts/?k=1b1865c556920231995b35c3ed889415)
45
  * Hide Google Captcha (reCAPTCHA) in your forms for certain user roles
46
- * Hide Google Captcha (reCAPTCHA) Badge (Invisible and V3) [NEW]
47
  * Supports Google Captcha (reCAPTCHA):
48
  * Version 2
49
  * Version 3
@@ -74,7 +75,7 @@ http://www.youtube.com/watch?v=qwHsW3IJ7gQ
74
  > * Compatible with Divi:
75
  > * Divi Builder Contact form
76
  > * Divi Builder Login form
77
- > * Divi Theme Contact form [NEW]
78
  > * Compatible with bbPress:
79
  > * New Topic form
80
  > * Reply form
@@ -265,6 +266,10 @@ Please make sure that the problem hasn't been discussed yet on our forum (<https
265
 
266
  == Changelog ==
267
 
 
 
 
 
268
  = V1.43 - 27.03.2019 =
269
  * NEW : The ability to hide reCAPTCHA Badge has been added.
270
  * PRO : The compatibility with Divi Theme has been added.
@@ -458,6 +463,10 @@ Please make sure that the problem hasn't been discussed yet on our forum (<https
458
 
459
  == Upgrade Notice ==
460
 
 
 
 
 
461
  = V1.43 =
462
  * New features added.
463
  * Bugs fixed.
4
  Tags: anti-spam security, antispam, recaptcha, captcha, captha, Invisible reCaptcha, Invisible captcha, Invisibl reCaptcha, comment, cpatcha, google catcha, Invisible re captcha, recaptcha version3
5
  Requires at least: 3.9
6
  Tested up to: 5.1.1
7
+ Stable tag: 1.44
8
  License: GPLv3 or later
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
10
 
31
  * Testimonials
32
  * Custom form
33
  * Hide Google Captcha (reCAPTCHA) for the whitelisted IP addresses
34
+ * Disable the submit button [NEW]
35
  * Validity check of keys in admin panel
36
  * Available Google Captcha (reCAPTCHA) themes for:
37
  * Version 1
44
  * Dark
45
  * Compatible with [Limit Attempts](https://bestwebsoft.com/products/wordpress/plugins/limit-attempts/?k=1b1865c556920231995b35c3ed889415)
46
  * Hide Google Captcha (reCAPTCHA) in your forms for certain user roles
47
+ * Hide Google Captcha (reCAPTCHA) Badge (Invisible and V3)
48
  * Supports Google Captcha (reCAPTCHA):
49
  * Version 2
50
  * Version 3
75
  > * Compatible with Divi:
76
  > * Divi Builder Contact form
77
  > * Divi Builder Login form
78
+ > * Divi Theme Contact form
79
  > * Compatible with bbPress:
80
  > * New Topic form
81
  > * Reply form
266
 
267
  == Changelog ==
268
 
269
+ = V1.44 - 09.05.2019 =
270
+ * NEW : The ability to keep submit button disabled until user passes the reCAPTCHA test has been added.
271
+ * Bugfix : The bug with "Advanced Protection" option has been fixed.
272
+
273
  = V1.43 - 27.03.2019 =
274
  * NEW : The ability to hide reCAPTCHA Badge has been added.
275
  * PRO : The compatibility with Divi Theme has been added.
463
 
464
  == Upgrade Notice ==
465
 
466
+ = V1.44 =
467
+ * New features added.
468
+ * Bugs fixed.
469
+
470
  = V1.43 =
471
  * New features added.
472
  * Bugs fixed.
screenshot-7.png CHANGED
Binary file