WD Google Maps – Google Maps builder Plugin - Version 1.0.57

Version Description

Changed: Links to 10Web.io.

Download this release

Release Info

Developer webdorado
Plugin Icon 128x128 WD Google Maps – Google Maps builder Plugin
Version 1.0.57
Comparing to
See all releases

Code changes from version 1.0.55 to 1.0.57

Files changed (53) hide show
  1. addons/addons.php +3 -3
  2. admin/controllers/GMWDControllerUninstall_gmwd.php +3 -3
  3. admin/views/GMWDViewUninstall_gmwd.php +4 -4
  4. framework/functions.php +7 -4
  5. gmwd_admin_class.php +16 -29
  6. google-maps-setup.php +4 -4
  7. js/tw-gb/block.js +81 -62
  8. preview.php +1 -1
  9. readme.txt +50 -52
  10. wd-google-maps.php +226 -214
  11. wd/README.md +21 -38
  12. wd/assets/css/deactivate_popup.css +30 -17
  13. wd/assets/css/img/close.svg +16 -0
  14. wd/assets/css/overview.css +414 -404
  15. wd/assets/css/subscribe.css +186 -90
  16. wd/assets/img/allow-and-continue.png +0 -0
  17. wd/assets/img/fmc_main_plugin.png +0 -0
  18. wd/assets/img/header.svg +1 -0
  19. wd/assets/img/how_it_works.png +0 -0
  20. wd/assets/img/iowd_main_plugin.png +0 -0
  21. wd/assets/img/plugins/business_elite.png +0 -0
  22. wd/assets/img/plugins/business_world.png +0 -0
  23. wd/assets/img/plugins/event-calendar-wd.png +0 -0
  24. wd/assets/img/plugins/form-maker.png +0 -0
  25. wd/assets/img/plugins/photo-gallery.png +0 -0
  26. wd/assets/img/plugins/portfolio_gallery.png +0 -0
  27. wd/assets/img/plugins/sauron.png +0 -0
  28. wd/assets/img/plugins/slider-wd.png +0 -0
  29. wd/assets/img/plugins/spider-event-calendar.png +0 -0
  30. wd/assets/img/plugins/wd-google-maps.png +0 -0
  31. wd/assets/img/plugins/wd-instagram-feed.png +0 -0
  32. wd/assets/img/slide-1366.jpg +0 -0
  33. wd/assets/img/sub_1.png +0 -0
  34. wd/assets/img/sub_2.png +0 -0
  35. wd/assets/img/sub_4.png +0 -0
  36. wd/assets/js/deactivate_popup.js +106 -74
  37. wd/assets/js/overview.js +13 -53
  38. wd/assets/js/subsribe.js +3 -2
  39. wd/config.php +22 -16
  40. wd/includes/api.php +2 -2
  41. wd/includes/deactivate.php +171 -171
  42. wd/includes/notices.php +1 -1
  43. wd/includes/overview.php +3 -231
  44. wd/includes/subscribe.php +120 -134
  45. wd/start.php +6 -6
  46. wd/templates/display_deactivation_popup.php +13 -12
  47. wd/templates/display_overview.php +120 -39
  48. wd/templates/display_overview_deals.php +0 -81
  49. wd/templates/display_overview_support.php +0 -43
  50. wd/templates/display_overview_user_guide.php +0 -46
  51. wd/templates/display_overview_welcome.php +0 -31
  52. wd/templates/display_subscribe.php +31 -28
  53. wd/wd.php +148 -132
addons/addons.php CHANGED
@@ -2,9 +2,9 @@
2
  function gmwd_addons_display() {
3
  $addons = array(
4
  'marker-clusters' => array(
5
- 'name' => __('GMWD Marker Clustering', 'gmwd'),
6
- 'url' => 'https://web-dorado.com/products/wordpress-google-maps-plugin/add-ons/marker-clustering.html',
7
- 'description' => __('GMWD Marker Clustering is designed for grouping close markers for more user-friendly display over the map.', 'gmwd'),
8
  'icon' => '',
9
  'image' => GMWD_URL . '/addons/images/marker_clusters.png',
10
  ),
2
  function gmwd_addons_display() {
3
  $addons = array(
4
  'marker-clusters' => array(
5
+ 'name' => 'Google Maps Marker Clustering',
6
+ 'url' => 'https://10web.io/plugins/wordpress-google-maps/',
7
+ 'description' => 'Google Maps Marker Clustering is designed for grouping close markers for more user-friendly display over the map.',
8
  'icon' => '',
9
  'image' => GMWD_URL . '/addons/images/marker_clusters.png',
10
  ),
admin/controllers/GMWDControllerUninstall_gmwd.php CHANGED
@@ -16,14 +16,14 @@ class GMWDControllerUninstall_gmwd extends GMWDController{
16
  public function __construct(){
17
  parent::__construct();
18
  global $gmwd_options;
19
- if(!class_exists("DoradoWebConfig")){
20
  include_once (GMWD_DIR . "/wd/config.php");
21
  }
22
- $config = new DoradoWebConfig();
23
 
24
  $config->set_options( $gmwd_options );
25
 
26
- $deactivate_reasons = new DoradoWebDeactivate($config);
27
  //$deactivate_reasons->add_deactivation_feedback_dialog_box();
28
  $deactivate_reasons->submit_and_deactivate();
29
 
16
  public function __construct(){
17
  parent::__construct();
18
  global $gmwd_options;
19
+ if(!class_exists("TenWebLibConfig")){
20
  include_once (GMWD_DIR . "/wd/config.php");
21
  }
22
+ $config = new TenWebLibConfig();
23
 
24
  $config->set_options( $gmwd_options );
25
 
26
+ $deactivate_reasons = new TenWebLibDeactivate($config);
27
  //$deactivate_reasons->add_deactivation_feedback_dialog_box();
28
  $deactivate_reasons->submit_and_deactivate();
29
 
admin/views/GMWDViewUninstall_gmwd.php CHANGED
@@ -27,18 +27,18 @@ class GMWDViewUninstall_gmwd extends GMWDView{
27
  <div class="gmwd">
28
  <h2>
29
  <img src="<?php echo GMWD_URL . '/images/uninstall.png';?>" width="30" style="vertical-align:middle;">
30
- <span><?php _e("Uninstall Google Maps WD","gmwd"); ?></span>
31
  </h2>
32
  <div class="goodbye-text">
33
  <?php
34
- $support_team = '<a href="https://web-dorado.com/support/contact-us.html?source=wd-google-maps" target="_blank">' . __('support team', 'bwg_back') . '</a>';
35
- $contact_us = '<a href="https://web-dorado.com/support/contact-us.html?source=wd-google-maps" target="_blank">' . __('Contact us', 'bwg_back') . '</a>';
36
 
37
  echo sprintf(__("Before uninstalling the plugin, please Contact our %s. We'll do our best to help you out with your issue. We value each and every user and value what's right for our users in everything we do.<br />
38
  However, if anyway you have made a decision to uninstall the plugin, please take a minute to %s and tell what you didn't like for our plugins further improvement and development. Thank you !!!", "gmwd"), $support_team, $contact_us); ?>
39
  </div>
40
  <p>
41
- <?php _e("Deactivating Google Maps WD plugin does not remove any data that may have been created. To completely remove this plugin, you can uninstall it here.","gmwd"); ?>
42
  </p>
43
  <p style="color: red;">
44
  <strong><?php _e("WARNING:","gmwd"); ?></strong>
27
  <div class="gmwd">
28
  <h2>
29
  <img src="<?php echo GMWD_URL . '/images/uninstall.png';?>" width="30" style="vertical-align:middle;">
30
+ <span><?php _e("Uninstall Google Maps","gmwd"); ?></span>
31
  </h2>
32
  <div class="goodbye-text">
33
  <?php
34
+ $support_team = '<a href="https://10web.io/contact-us/" target="_blank">' . __('support team', 'bwg_back') . '</a>';
35
+ $contact_us = '<a href="https://10web.io/contact-us/" target="_blank">' . __('Contact us', 'bwg_back') . '</a>';
36
 
37
  echo sprintf(__("Before uninstalling the plugin, please Contact our %s. We'll do our best to help you out with your issue. We value each and every user and value what's right for our users in everything we do.<br />
38
  However, if anyway you have made a decision to uninstall the plugin, please take a minute to %s and tell what you didn't like for our plugins further improvement and development. Thank you !!!", "gmwd"), $support_team, $contact_us); ?>
39
  </div>
40
  <p>
41
+ <?php _e("Deactivating Google Maps plugin does not remove any data that may have been created. To completely remove this plugin, you can uninstall it here.","gmwd"); ?>
42
  </p>
43
  <p style="color: red;">
44
  <strong><?php _e("WARNING:","gmwd"); ?></strong>
framework/functions.php CHANGED
@@ -36,7 +36,7 @@ function upgrade_pro($text = false)
36
  <div style="font-size: 14px;margin-top: 6px;">
37
  <?php _e(" This section allows you to add/edit map.", "gmwd"); ?>
38
  <a style="color: #5CAEBD; text-decoration: none;border-bottom: 1px dotted;" target="_blank"
39
- href="https://web-dorado.com/wordpress-google-maps/creating-map.html"><?php _e("Read More in User Manual.", "gmwd"); ?></a>
40
  </div>
41
  <?php
42
  } else {
@@ -44,7 +44,7 @@ function upgrade_pro($text = false)
44
  <div style="font-size: 14px;margin-top: 6px;">
45
  <?php _e(" This section allows you to create, edit and delete maps.", "gmwd"); ?>
46
  <a style="color: #5CAEBD; text-decoration: none;border-bottom: 1px dotted;" target="_blank"
47
- href="https://web-dorado.com/wordpress-google-maps/creating-map.html"><?php _e("Read More in User Manual.", "gmwd"); ?></a>
48
  </div>
49
  <?php
50
  }
@@ -54,7 +54,7 @@ function upgrade_pro($text = false)
54
  <div style="font-size: 14px;margin-top: 6px;">
55
  <?php _e("This section allows you to change general options.", "gmwd"); ?>
56
  <a style="color: #5CAEBD; text-decoration: none;border-bottom: 1px dotted;" target="_blank"
57
- href="https://web-dorado.com/wordpress-google-maps/installation-wizard-options-menu.html"><?php _e("Read More in User Manual.", "gmwd"); ?></a>
58
  </div>
59
  <?php
60
  break;
@@ -69,7 +69,7 @@ function upgrade_pro($text = false)
69
  Support Forum </a>
70
  </div>
71
  <div class="wd-cell wd-cell-valign-middle">
72
- <a href="https://web-dorado.com/files/fromGoogleMaps.php" target="_blank">
73
  <?php _e("UPGRADE TO PAID VERSION", "gmwd"); ?>
74
  <!--<div class="wd-table">
75
  <div class="wd-cell wd-cell-valign-middle">
@@ -101,6 +101,9 @@ function api_key_notice()
101
  <p style="font-size:18px;"><strong>' . __("Important. API key is required for Google Maps to work.", "gmwd") . '</strong></p>
102
  <p style="font-size:18px;"><strong>' . __("To avoid limitation errors, fill in your own App key.", "gmwd") . '</strong></p>
103
  <p><a target="_blank" href=\'https://console.developers.google.com/henhouse/?pb=["hh-1","maps_backend",null,[],"https://developers.google.com",null,["maps_backend","geocoding_backend","directions_backend","distance_matrix_backend","elevation_backend","places_backend","static_maps_backend","roads","street_view_image_backend","geolocation"],null]\' class="wd-btn wd-btn-primary" style="text-decoration:none;" name="' . __("Generate API Key - ( MUST be logged in to your Google account )", "gmwd") . '">' . __("Generate Key", "gmwd") . '</a> or <a target="_blank" href="https://console.developers.google.com/flows/enableapi?apiid=maps_backend,geocoding_backend,directions_backend,distance_matrix_backend,elevation_backend,static_maps_backend,roads,street_view_image_backend,geolocation,places_backend&keyType=CLIENT_SIDE&reusekey=true">click here</a> to Get a Google Maps API KEY</p>
 
 
 
104
  <p>After creating the API key, please paste it here.</p>
105
  <form method="post">
106
  ' . wp_nonce_field('nonce_gmwd', 'nonce_gmwd') . '
36
  <div style="font-size: 14px;margin-top: 6px;">
37
  <?php _e(" This section allows you to add/edit map.", "gmwd"); ?>
38
  <a style="color: #5CAEBD; text-decoration: none;border-bottom: 1px dotted;" target="_blank"
39
+ href="https://help.10web.io/hc/en-us/articles/360018133851-Creating-Map"><?php _e("Read More in User Manual.", "gmwd"); ?></a>
40
  </div>
41
  <?php
42
  } else {
44
  <div style="font-size: 14px;margin-top: 6px;">
45
  <?php _e(" This section allows you to create, edit and delete maps.", "gmwd"); ?>
46
  <a style="color: #5CAEBD; text-decoration: none;border-bottom: 1px dotted;" target="_blank"
47
+ href="https://help.10web.io/hc/en-us/articles/360018133851-Creating-Map"><?php _e("Read More in User Manual.", "gmwd"); ?></a>
48
  </div>
49
  <?php
50
  }
54
  <div style="font-size: 14px;margin-top: 6px;">
55
  <?php _e("This section allows you to change general options.", "gmwd"); ?>
56
  <a style="color: #5CAEBD; text-decoration: none;border-bottom: 1px dotted;" target="_blank"
57
+ href="https://help.10web.io/hc/en-us/articles/360017853132-Configuring-Google-Maps-General-Settings"><?php _e("Read More in User Manual.", "gmwd"); ?></a>
58
  </div>
59
  <?php
60
  break;
69
  Support Forum </a>
70
  </div>
71
  <div class="wd-cell wd-cell-valign-middle">
72
+ <a href="https://10web.io/plugins/wordpress-google-maps/" target="_blank">
73
  <?php _e("UPGRADE TO PAID VERSION", "gmwd"); ?>
74
  <!--<div class="wd-table">
75
  <div class="wd-cell wd-cell-valign-middle">
101
  <p style="font-size:18px;"><strong>' . __("Important. API key is required for Google Maps to work.", "gmwd") . '</strong></p>
102
  <p style="font-size:18px;"><strong>' . __("To avoid limitation errors, fill in your own App key.", "gmwd") . '</strong></p>
103
  <p><a target="_blank" href=\'https://console.developers.google.com/henhouse/?pb=["hh-1","maps_backend",null,[],"https://developers.google.com",null,["maps_backend","geocoding_backend","directions_backend","distance_matrix_backend","elevation_backend","places_backend","static_maps_backend","roads","street_view_image_backend","geolocation"],null]\' class="wd-btn wd-btn-primary" style="text-decoration:none;" name="' . __("Generate API Key - ( MUST be logged in to your Google account )", "gmwd") . '">' . __("Generate Key", "gmwd") . '</a> or <a target="_blank" href="https://console.developers.google.com/flows/enableapi?apiid=maps_backend,geocoding_backend,directions_backend,distance_matrix_backend,elevation_backend,static_maps_backend,roads,street_view_image_backend,geolocation,places_backend&keyType=CLIENT_SIDE&reusekey=true">click here</a> to Get a Google Maps API KEY</p>
104
+ <p>' . __("For getting API key read more in", "gmwd") . '
105
+ <a href="https://help.10web.io/hc/en-us/articles/360017782751-Installation-Wizard-and-API-Configuration" target="_blank" style="color: #00A0D2;">' . __("User Manual", "gmwd") . '</a>.
106
+ </p>
107
  <p>After creating the API key, please paste it here.</p>
108
  <form method="post">
109
  ' . wp_nonce_field('nonce_gmwd', 'nonce_gmwd') . '
gmwd_admin_class.php CHANGED
@@ -12,7 +12,7 @@ class GMWDAdmin
12
  // Variables //
13
  ////////////////////////////////////////////////////////////////////////////////////////
14
  protected static $instance = null;
15
- private static $version = '1.0.55';
16
  ////////////////////////////////////////////////////////////////////////////////////////
17
  // Constructor & Destructor //
18
  ////////////////////////////////////////////////////////////////////////////////////////
@@ -43,7 +43,7 @@ class GMWDAdmin
43
  add_action('wp_ajax_gmwd_shortcode', array('GMWDAdmin', 'gmwd_ajax'));
44
 
45
  // Enqueue block editor assets for Gutenberg.
46
- add_filter('tw_get_block_editor_assets', array($this, 'register_block_editor_assets'));
47
  add_action( 'enqueue_block_editor_assets', array($this, 'enqueue_block_editor_assets') );
48
 
49
  add_filter('mce_buttons', array($this, 'gmwd_add_button'), 0);
@@ -194,7 +194,7 @@ class GMWDAdmin
194
  $parent_slug = null;
195
  if (get_option("gmwd_subscribe_done") == 1) {
196
  $parent_slug = "maps_gmwd";
197
- $gmwd_page = add_menu_page("Google Maps WD", "Google Maps WD", 'manage_options', 'maps_gmwd', array($this, 'gmwd'), GMWD_URL . '/images/icon-map-20.png', 9);
198
  add_action('load-' . $gmwd_page, array($this, 'gmwd_maps_per_page_option'));
199
 
200
  }
@@ -212,7 +212,7 @@ class GMWDAdmin
212
 
213
  $gmwd_uninstall_page = add_submenu_page($parent_slug, __('Uninstall', 'gmwd'), __('Uninstall', 'gmwd'), 'manage_options', 'uninstall_gmwd', array($this, 'gmwd'));
214
 
215
- add_submenu_page('maps_gmwd', __('Google Maps WD Add-ons', 'gmwd'), __('Google Maps WD Add-ons', 'gmwd'), 'manage_options', 'gmwd_addons', array($this, "gmwd_addons"));
216
 
217
  }
218
 
@@ -449,47 +449,34 @@ class GMWDAdmin
449
  * Enqueue block editor assets.
450
  */
451
  public function enqueue_block_editor_assets() {
452
- $key = 'tw/gmwd';
453
  $plugin_name = 'WD Google Maps';
454
  $data = GMWDHelper::get_shortcode_data();
455
  $icon_url = GMWD_URL . '/images/icon-map-50.png';
456
  $icon_svg = GMWD_URL . '/images/icon-map-50.png';
457
- ?>
458
- <script>
459
- if ( !window['tw_gb'] ) {
460
- window['tw_gb'] = {};
461
- }
462
- if ( !window['tw_gb']['<?php echo $key; ?>'] ) {
463
- window['tw_gb']['<?php echo $key; ?>'] = {
464
- title: '<?php echo $plugin_name; ?>',
465
- titleSelect: '<?php echo sprintf(__('Select %s', 'gmwd'), $plugin_name); ?>',
466
- iconUrl: '<?php echo $icon_url; ?>',
467
- iconSvg: {
468
- width: '30',
469
- height: '30',
470
- src: '<?php echo $icon_svg; ?>'
471
- },
472
- data: '<?php echo $data; ?>',
473
- };
474
- }
475
- </script>
476
- <?php
477
  // Remove previously registered or enqueued versions
478
  $wp_scripts = wp_scripts();
479
  foreach ($wp_scripts->registered as $key => $value) {
480
  // Check for an older versions with prefix.
481
- if (strpos($key, 'tw-gb-block') > 0) {
482
  wp_deregister_script( $key );
483
  wp_deregister_style( $key );
484
  }
485
  }
486
  // Get the last version from all 10Web plugins.
487
- $assets = apply_filters('tw_get_block_editor_assets', array());
488
  // Not performing unregister or unenqueue as in old versions all are with prefixes.
489
- wp_enqueue_script('tw-gb-block', $assets['js_path'], array( 'wp-blocks', 'wp-element' ), $assets['version']);
490
- wp_localize_script('tw-gb-block', 'tw_obj', array(
491
  'nothing_selected' => __('Nothing selected.','gmwd'),
492
  'empty_item' => __('- Select -', 'gmwd'),
 
 
 
 
 
 
493
  ));
494
  wp_enqueue_style('tw-gb-block', $assets['css_path'], array( 'wp-edit-blocks' ), $assets['version']);
495
  }
12
  // Variables //
13
  ////////////////////////////////////////////////////////////////////////////////////////
14
  protected static $instance = null;
15
+ private static $version = '1.0.57';
16
  ////////////////////////////////////////////////////////////////////////////////////////
17
  // Constructor & Destructor //
18
  ////////////////////////////////////////////////////////////////////////////////////////
43
  add_action('wp_ajax_gmwd_shortcode', array('GMWDAdmin', 'gmwd_ajax'));
44
 
45
  // Enqueue block editor assets for Gutenberg.
46
+ add_filter('gmwd_tw_get_block_editor_assets', array($this, 'register_block_editor_assets'));
47
  add_action( 'enqueue_block_editor_assets', array($this, 'enqueue_block_editor_assets') );
48
 
49
  add_filter('mce_buttons', array($this, 'gmwd_add_button'), 0);
194
  $parent_slug = null;
195
  if (get_option("gmwd_subscribe_done") == 1) {
196
  $parent_slug = "maps_gmwd";
197
+ $gmwd_page = add_menu_page("Google Maps", "Google Maps", 'manage_options', 'maps_gmwd', array($this, 'gmwd'), GMWD_URL . '/images/icon-map-20.png', 9);
198
  add_action('load-' . $gmwd_page, array($this, 'gmwd_maps_per_page_option'));
199
 
200
  }
212
 
213
  $gmwd_uninstall_page = add_submenu_page($parent_slug, __('Uninstall', 'gmwd'), __('Uninstall', 'gmwd'), 'manage_options', 'uninstall_gmwd', array($this, 'gmwd'));
214
 
215
+ add_submenu_page('maps_gmwd', __('Google Maps Add-ons', 'gmwd'), __('Google Maps Add-ons', 'gmwd'), 'manage_options', 'gmwd_addons', array($this, "gmwd_addons"));
216
 
217
  }
218
 
449
  * Enqueue block editor assets.
450
  */
451
  public function enqueue_block_editor_assets() {
452
+ $product_key = 'tw/gmwd';
453
  $plugin_name = 'WD Google Maps';
454
  $data = GMWDHelper::get_shortcode_data();
455
  $icon_url = GMWD_URL . '/images/icon-map-50.png';
456
  $icon_svg = GMWD_URL . '/images/icon-map-50.png';
457
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
458
  // Remove previously registered or enqueued versions
459
  $wp_scripts = wp_scripts();
460
  foreach ($wp_scripts->registered as $key => $value) {
461
  // Check for an older versions with prefix.
462
+ if (strpos($key, 'gmwd-tw-gb-block') > 0) {
463
  wp_deregister_script( $key );
464
  wp_deregister_style( $key );
465
  }
466
  }
467
  // Get the last version from all 10Web plugins.
468
+ $assets = apply_filters('gmwd_tw_get_block_editor_assets', array());
469
  // Not performing unregister or unenqueue as in old versions all are with prefixes.
470
+ wp_enqueue_script('gmwd-tw-gb-block', $assets['js_path'], array( 'wp-blocks', 'wp-element' ), $assets['version']);
471
+ wp_localize_script('gmwd-tw-gb-block', 'tw_obj', array(
472
  'nothing_selected' => __('Nothing selected.','gmwd'),
473
  'empty_item' => __('- Select -', 'gmwd'),
474
+ 'key' => $product_key,
475
+ 'title' => $plugin_name,
476
+ 'titleSelect' => sprintf(__('Select %s', 'gmwd'), $plugin_name),
477
+ 'iconUrl' => $icon_url,
478
+ 'iconSvg' => $icon_svg,
479
+ 'data' => $data,
480
  ));
481
  wp_enqueue_style('tw-gb-block', $assets['css_path'], array( 'wp-edit-blocks' ), $assets['version']);
482
  }
google-maps-setup.php CHANGED
@@ -109,7 +109,7 @@ class GMWDSetupWizard {
109
  <head>
110
  <meta name="viewport" content="width=device-width" />
111
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
112
- <title><?php _e( 'Google Maps WD &rsaquo; Setup Wizard', 'gmwd' ); ?></title>
113
 
114
  <?php if (get_bloginfo('version') >= '4.5') { ?>
115
  <link media="all" type="text/css" href="<?php echo get_admin_url(); ?>load-styles.php?c=1&dir=ltr&load%5B%5D=dashicons,admin-bar,common,forms,admin-menu,dashboard,list-tables,edit,revisions,media,themes,about,nav-menus,widgets,site-icon,&load%5B%5D=l10n,buttons,wp-auth-check,media-views" rel="stylesheet">
@@ -146,7 +146,7 @@ class GMWDSetupWizard {
146
  <body style="background: #eee;">
147
  <h1 class="gmwd_wizard_title">
148
  <img src="<?php echo GMWD_URL."/images/icon-map-50.png";?>">
149
- Google Maps WD
150
  </h1>
151
  <?php
152
  }
@@ -187,10 +187,10 @@ class GMWDSetupWizard {
187
  <div class="gmwd_wizard_containers">
188
  <?php $this->gmwd_steps();?>
189
  <div class="gmwd_wizard_container gmwd_wizard_geting_start">
190
- <h2><?php _e("We welcome you in Google Maps WD plugin! ","gmwd");?></h2>
191
  <div>
192
  <p>
193
- <?php _e("We appreciate your confidence in choosing Google Maps WD! ","gmwd");?>
194
  </p>
195
 
196
  <p>
109
  <head>
110
  <meta name="viewport" content="width=device-width" />
111
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
112
+ <title><?php _e( 'Google Maps &rsaquo; Setup Wizard', 'gmwd' ); ?></title>
113
 
114
  <?php if (get_bloginfo('version') >= '4.5') { ?>
115
  <link media="all" type="text/css" href="<?php echo get_admin_url(); ?>load-styles.php?c=1&dir=ltr&load%5B%5D=dashicons,admin-bar,common,forms,admin-menu,dashboard,list-tables,edit,revisions,media,themes,about,nav-menus,widgets,site-icon,&load%5B%5D=l10n,buttons,wp-auth-check,media-views" rel="stylesheet">
146
  <body style="background: #eee;">
147
  <h1 class="gmwd_wizard_title">
148
  <img src="<?php echo GMWD_URL."/images/icon-map-50.png";?>">
149
+ Google Maps
150
  </h1>
151
  <?php
152
  }
187
  <div class="gmwd_wizard_containers">
188
  <?php $this->gmwd_steps();?>
189
  <div class="gmwd_wizard_container gmwd_wizard_geting_start">
190
+ <h2>We welcome you in Google Maps plugin!</h2>
191
  <div>
192
  <p>
193
+ We appreciate your confidence in choosing Google Maps!
194
  </p>
195
 
196
  <p>
js/tw-gb/block.js CHANGED
@@ -2,39 +2,55 @@
2
  * 10Web plugins Gutenberg integration
3
  * version 2.0.0
4
  */
5
- ( function ( blocks, element ) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6
  registerAllPluginBlocks();
7
 
8
  function registerAllPluginBlocks() {
9
  var twPluginsData = window['tw_gb'];
10
- if ( !twPluginsData ) {
11
  return;
12
  }
13
 
14
- for ( var pluginId in twPluginsData ) {
15
- if ( !twPluginsData.hasOwnProperty( pluginId ) ) {
16
  continue;
17
  }
18
 
19
- if ( !twPluginsData[pluginId].inited ) {
20
  twPluginsData[pluginId].inited = true;
21
- registerPluginBlock( blocks, element, pluginId, twPluginsData[pluginId] );
22
  }
23
  }
24
  }
25
 
26
- function registerPluginBlock( blocks, element, pluginId, pluginData ) {
27
  var el = element.createElement;
28
 
29
  var isPopup = pluginData.isPopup;
30
 
31
- var iconEl = el( 'img', {
32
  width: pluginData.iconSvg.width,
33
  height: pluginData.iconSvg.height,
34
  src: pluginData.iconSvg.src
35
- } );
36
 
37
- blocks.registerBlockType( pluginId, {
38
  title: pluginData.title,
39
  icon: iconEl,
40
  category: 'common',
@@ -54,99 +70,102 @@
54
  }
55
  },
56
 
57
- edit: function ( props ) {
58
- if ( !props.attributes.notInitial ) {
59
- props.setAttributes( {
60
  notInitial: true,
61
  popupOpened: true
62
- } );
63
 
64
- return el( 'p' );
65
  }
66
 
67
- if ( props.attributes.popupOpened ) {
68
- if ( isPopup ) {
69
- return showPopup( props.attributes.shortcode, props.attributes.shortcode_id );
70
  }
71
  else {
72
- return showShortcodeList( props.attributes.shortcode );
73
  }
74
  }
75
 
76
- if ( props.attributes.shortcode ) {
77
  return showShortcode();
78
  }
79
  else {
80
  return showShortcodePlaceholder();
81
  }
82
 
83
- function showPopup( shortcode, shortcode_id ) {
84
- var shortcodeCbName = generateUniqueCbName( pluginId );
85
  // Store shortcode attribute into a global variable to get it from an iframe.
86
  window[shortcodeCbName + '_shortcode'] = shortcode ? shortcode : '';
87
- window[shortcodeCbName] = function ( shortcode, shortcode_id ) {
88
  delete window[shortcodeCbName];
89
 
90
- if ( props ) {
91
- props.setAttributes( { shortcode: shortcode, shortcode_id: shortcode_id, popupOpened: false } );
92
  }
93
  };
94
- props.setAttributes( { popupOpened: true } );
95
- var elem = el( 'form', { className: 'tw-container' }, el( 'div', { className: 'tw-container-wrap' + (pluginData.containerClass ? ' ' + pluginData.containerClass : '') }, el( 'span', {
96
  className: "media-modal-close",
97
  onClick: close
98
- }, el( "span", { className: "media-modal-icon" } ) ), el( 'iframe', { src: pluginData.data.shortcodeUrl + '&callback=' + shortcodeCbName + '&edit=' + shortcode_id } ) ) );
99
  return elem;
100
  }
101
 
102
- function showShortcodeList( shortcode ) {
103
- props.setAttributes( { popupOpened: true } );
104
  var children = [];
105
- var shortcodeList = JSON.parse( pluginData.data );
106
- shortcodeList.inputs.forEach( function ( inputItem ) {
107
- if ( inputItem.type === 'select' ) {
108
- children.push( el( 'option', { value: '', dataId: 0 }, tw_obj.empty_item ) );
109
- if ( inputItem.options.length ) {
110
- inputItem.options.forEach( function ( optionItem ) {
111
  var shortcode = '[' + shortcodeList.shortcode_prefix + ' ' + inputItem.shortcode_attibute_name + '="' + optionItem.id + '"]';
112
  children.push(
113
- el( 'option', { value: shortcode, dataId: optionItem.id }, optionItem.name )
114
  );
115
- } )
116
  }
117
  }
118
- } );
119
 
120
- if ( shortcodeList.shortcodes ) {
121
- shortcodeList.shortcodes.forEach( function ( shortcodeItem ) {
122
  children.push(
123
- el( 'option', { value: shortcodeItem.shortcode, dataId: shortcodeItem.id }, shortcodeItem.name )
 
 
 
124
  );
125
- } );
126
  }
127
 
128
- return el( 'form', { onSubmit: chooseFromList }, el( 'div', {}, pluginData.titleSelect ), el( 'select', {
129
  value: shortcode,
130
  onChange: chooseFromList,
131
  class: 'tw-gb-select'
132
- }, children ) );
133
  }
134
 
135
  function showShortcodePlaceholder() {
136
- props.setAttributes( { popupOpened: false } );
137
- return el( 'p', {
138
  style: {
139
  'cursor': "pointer"
140
  },
141
 
142
  onClick: function () {
143
- props.setAttributes( { popupOpened: true } );
144
- }.bind( this )
145
- }, tw_obj.nothing_selected );
146
  }
147
 
148
  function showShortcode() {
149
- return el( 'img', {
150
  src: pluginData.iconUrl,
151
  alt: pluginData.title,
152
  style: {
@@ -154,32 +173,32 @@
154
  'width': "36px"
155
  },
156
  onClick: function () {
157
- props.setAttributes( { popupOpened: true } );
158
- }.bind( this )
159
- } );
160
  }
161
 
162
  function close() {
163
- props.setAttributes( { popupOpened: false } );
164
  }
165
 
166
- function chooseFromList( event, shortcode_id ) {
167
- var selected = event.target.querySelector( 'option:checked' );
168
- props.setAttributes( { shortcode: selected.value, shortcode_id: selected.dataId, popupOpened: false } );
169
  event.preventDefault();
170
  }
171
  },
172
 
173
- save: function ( props ) {
174
  return props.attributes.shortcode;
175
  }
176
- } );
177
  }
178
 
179
- function generateUniqueCbName( pluginId ) {
180
  return 'wdg_cb_' + pluginId;
181
  }
182
- } )(
183
  window.wp.blocks,
184
  window.wp.element
185
  );
2
  * 10Web plugins Gutenberg integration
3
  * version 2.0.0
4
  */
5
+ if (!window['tw_gb']) {
6
+ window['tw_gb'] = {};
7
+ }
8
+ if (!window['tw_gb'][tw_obj.key]) {
9
+ window['tw_gb'][tw_obj.key] = {
10
+ title: tw_obj.title,
11
+ titleSelect: tw_obj.titleSelect,
12
+ iconUrl: tw_obj.iconUrl,
13
+ iconSvg: {
14
+ width: '30',
15
+ height: '30',
16
+ src: tw_obj.iconSvg
17
+ },
18
+ data: tw_obj.data,
19
+ };
20
+ }
21
+ (function (blocks, element) {
22
  registerAllPluginBlocks();
23
 
24
  function registerAllPluginBlocks() {
25
  var twPluginsData = window['tw_gb'];
26
+ if (!twPluginsData) {
27
  return;
28
  }
29
 
30
+ for (var pluginId in twPluginsData) {
31
+ if (!twPluginsData.hasOwnProperty(pluginId)) {
32
  continue;
33
  }
34
 
35
+ if (!twPluginsData[pluginId].inited) {
36
  twPluginsData[pluginId].inited = true;
37
+ registerPluginBlock(blocks, element, pluginId, twPluginsData[pluginId]);
38
  }
39
  }
40
  }
41
 
42
+ function registerPluginBlock(blocks, element, pluginId, pluginData) {
43
  var el = element.createElement;
44
 
45
  var isPopup = pluginData.isPopup;
46
 
47
+ var iconEl = el('img', {
48
  width: pluginData.iconSvg.width,
49
  height: pluginData.iconSvg.height,
50
  src: pluginData.iconSvg.src
51
+ });
52
 
53
+ blocks.registerBlockType(pluginId, {
54
  title: pluginData.title,
55
  icon: iconEl,
56
  category: 'common',
70
  }
71
  },
72
 
73
+ edit: function (props) {
74
+ if (!props.attributes.notInitial) {
75
+ props.setAttributes({
76
  notInitial: true,
77
  popupOpened: true
78
+ });
79
 
80
+ return el('p');
81
  }
82
 
83
+ if (props.attributes.popupOpened) {
84
+ if (isPopup) {
85
+ return showPopup(props.attributes.shortcode, props.attributes.shortcode_id);
86
  }
87
  else {
88
+ return showShortcodeList(props.attributes.shortcode);
89
  }
90
  }
91
 
92
+ if (props.attributes.shortcode) {
93
  return showShortcode();
94
  }
95
  else {
96
  return showShortcodePlaceholder();
97
  }
98
 
99
+ function showPopup(shortcode, shortcode_id) {
100
+ var shortcodeCbName = generateUniqueCbName(pluginId);
101
  // Store shortcode attribute into a global variable to get it from an iframe.
102
  window[shortcodeCbName + '_shortcode'] = shortcode ? shortcode : '';
103
+ window[shortcodeCbName] = function (shortcode, shortcode_id) {
104
  delete window[shortcodeCbName];
105
 
106
+ if (props) {
107
+ props.setAttributes({shortcode: shortcode, shortcode_id: shortcode_id, popupOpened: false});
108
  }
109
  };
110
+ props.setAttributes({popupOpened: true});
111
+ var elem = el('form', {className: 'tw-container'}, el('div', {className: 'tw-container-wrap' + (pluginData.containerClass ? ' ' + pluginData.containerClass : '')}, el('span', {
112
  className: "media-modal-close",
113
  onClick: close
114
+ }, el("span", {className: "media-modal-icon"})), el('iframe', {src: pluginData.data.shortcodeUrl + '&callback=' + shortcodeCbName + '&edit=' + shortcode_id})));
115
  return elem;
116
  }
117
 
118
+ function showShortcodeList(shortcode) {
119
+ props.setAttributes({popupOpened: true});
120
  var children = [];
121
+ var shortcodeList = JSON.parse(pluginData.data);
122
+ shortcodeList.inputs.forEach(function (inputItem) {
123
+ if (inputItem.type === 'select') {
124
+ children.push(el('option', {value: '', dataId: 0}, tw_obj.empty_item));
125
+ if (inputItem.options.length) {
126
+ inputItem.options.forEach(function (optionItem) {
127
  var shortcode = '[' + shortcodeList.shortcode_prefix + ' ' + inputItem.shortcode_attibute_name + '="' + optionItem.id + '"]';
128
  children.push(
129
+ el('option', {value: shortcode, dataId: optionItem.id}, optionItem.name)
130
  );
131
+ })
132
  }
133
  }
134
+ });
135
 
136
+ if (shortcodeList.shortcodes) {
137
+ shortcodeList.shortcodes.forEach(function (shortcodeItem) {
138
  children.push(
139
+ el('option', {
140
+ value: shortcodeItem.shortcode,
141
+ dataId: shortcodeItem.id
142
+ }, shortcodeItem.name)
143
  );
144
+ });
145
  }
146
 
147
+ return el('form', {onSubmit: chooseFromList}, el('div', {}, pluginData.titleSelect), el('select', {
148
  value: shortcode,
149
  onChange: chooseFromList,
150
  class: 'tw-gb-select'
151
+ }, children));
152
  }
153
 
154
  function showShortcodePlaceholder() {
155
+ props.setAttributes({popupOpened: false});
156
+ return el('p', {
157
  style: {
158
  'cursor': "pointer"
159
  },
160
 
161
  onClick: function () {
162
+ props.setAttributes({popupOpened: true});
163
+ }.bind(this)
164
+ }, tw_obj.nothing_selected);
165
  }
166
 
167
  function showShortcode() {
168
+ return el('img', {
169
  src: pluginData.iconUrl,
170
  alt: pluginData.title,
171
  style: {
173
  'width': "36px"
174
  },
175
  onClick: function () {
176
+ props.setAttributes({popupOpened: true});
177
+ }.bind(this)
178
+ });
179
  }
180
 
181
  function close() {
182
+ props.setAttributes({popupOpened: false});
183
  }
184
 
185
+ function chooseFromList(event, shortcode_id) {
186
+ var selected = event.target.querySelector('option:checked');
187
+ props.setAttributes({shortcode: selected.value, shortcode_id: selected.dataId, popupOpened: false});
188
  event.preventDefault();
189
  }
190
  },
191
 
192
+ save: function (props) {
193
  return props.attributes.shortcode;
194
  }
195
+ });
196
  }
197
 
198
+ function generateUniqueCbName(pluginId) {
199
  return 'wdg_cb_' + pluginId;
200
  }
201
+ })(
202
  window.wp.blocks,
203
  window.wp.element
204
  );
preview.php CHANGED
@@ -84,7 +84,7 @@ class GMWDPreview {
84
  <head>
85
  <meta name="viewport" content="width=device-width" />
86
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
87
- <title><?php _e( 'Google Maps WD &rsaquo; Setup Wizard', 'gmwd' ); ?></title>
88
 
89
  <link media="all" type="text/css" href="<?php echo get_admin_url(); ?>load-styles.php?c=1&amp;dir=ltr&amp;load=admin-bar,wp-admin,dashicons,buttons,wp-auth-check" rel="stylesheet">
90
  <?php if (get_bloginfo('version') < '3.9') { ?>
84
  <head>
85
  <meta name="viewport" content="width=device-width" />
86
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
87
+ <title><?php _e( 'Google Maps &rsaquo; Setup Wizard', 'gmwd' ); ?></title>
88
 
89
  <link media="all" type="text/css" href="<?php echo get_admin_url(); ?>load-styles.php?c=1&amp;dir=ltr&amp;load=admin-bar,wp-admin,dashicons,buttons,wp-auth-check" rel="stylesheet">
90
  <?php if (get_bloginfo('version') < '3.9') { ?>
readme.txt CHANGED
@@ -1,30 +1,26 @@
1
- === WD Google Maps - Google Maps builder Plugin ===
2
  Contributors: webdorado,10web,wdsupport
3
  Tags: google map, google maps, map, map markers, maps, directions, google map plugin, google maps plugin, map plugin, wp google map, wp google maps, google map widget
4
  Requires at least: 3.4
5
- Tested up to: 5.0
6
- Stable tag: 1.0.55
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
10
- WD Google Maps is an intuitive tool for creating Google maps with advanced markers, custom layers and overlays for your website.
11
 
12
  == Description ==
13
 
14
- https://www.youtube.com/watch?v=bUI4ObvKlkA
15
-
16
- [Special Offer for all Premium Plugins](https://web-dorado.com/wordpress-plugins-bundle.html)
17
- [WordPress WD Google Maps](https://web-dorado.com/products/wordpress-google-maps-plugin.html)
18
- [Demo](http://wpdemo.web-dorado.com/google-maps/)
19
- [Demo Admin](http://wpdemo.web-dorado.com/wp-admin/admin.php?page=maps_gmwd)
20
- [User Guide](https://web-dorado.com/wordpress-google-maps/installing.html)
21
- [Support Forum](https://web-dorado.com/forum/wordpress-google-maps-wd.html)
22
 
23
- = WD Google Maps Add-ons: =
24
- [GMWD Marker Clustering Add-on](https://web-dorado.com/products/wordpress-google-maps-plugin/add-ons/marker-clustering.html)
25
 
26
 
27
- WD Google Maps combines quality and simplicity, offering you an easy way to add unlimited Maps to your website. It’s an out of the box solution with some powerful functionality and additional customization options. The plugin is distinguished for its feature-packed free version, offering what are usually premium features absolutely free, such as unlimited number of responsive maps, geolocation feature, store locator, layers, unlimited markers, and more. Another great thing about it is that it features an intuitive builder, letting you customize your maps and preview the changes immediately with the live preview option. For additional quality features like marker icon builder, directions, skins and themes, marker listing and multi-level marker categories there is the premium version, which will let you further personalize your maps. Plugin uses clean code, which guarantees smooth operation and compatibility with any WordPress theme.
28
 
29
 
30
 
@@ -88,7 +84,7 @@ You can import/export all Google Maps attributes, including markers, circles, re
88
  The plugin has a pretty intuitive and user-friendly interface, making it easy to create maps and display them on your website. It comes with a comprehensive set of default settings, which include choosing the map center address, center longitude and latitude, zooming level among others. Once you add a new map and start making changes to it, you’ll find a settings tab, where you can set and configure individual settings for every new entry you create. Under this tab, you can configure the settings for store locator, options for controls, and some of the layer settings. Users of the Premium version will also have the settings for marker listing, directions, marker category filter and some other advanced settings available. The latter has separate tab for themes right above the map display, where you can choose a theme for the map. Adding markers and layers requires just a few clicks. Once you click on the Add Marker tab a new window will open, where you can specify marker options, depending on the plugin version you’re using.
89
 
90
 
91
- [Premium version adds](https://web-dorado.com/products/wordpress-google-maps-plugin.html)
92
 
93
  * Customizable Google Maps skins
94
  * Google Maps themes/customize existing themes based on detailed styles and colors section
@@ -104,46 +100,48 @@ The plugin has a pretty intuitive and user-friendly interface, making it easy to
104
 
105
 
106
  ###IMPORTANT:
107
- If you think you found a bug or have any problem/question concerning this plugin, please check out [Support Forum](https://wordpress.org/support/plugin/wd-google-maps). If you do not find a solution here, do not hesitate to [click here to contact us](https://web-dorado.com/support/contact-us.html).
108
-
109
 
110
 
111
  == Installation ==
112
 
113
- #### Thank you for your interest in WD Google Maps.
114
 
115
- Here are two ways of installing WD Google Maps: via WordPress backend and via FTP. Let’s discuss each case individually:
116
 
117
  **Installing via WordPress**
118
 
119
  Login to the WordPress Administrator Panel.
120
  Go to Plugins> Add New>Upload.
121
- Click Choose file button and select the zip folder of WD Google Maps plugin and press Install now button.
122
  Click Activate button.
123
 
124
  **Installing via FTP**
125
 
126
  Login to your hosting space via an FTP software, e.g. FileZilla.
127
- Unzip the downloaded WD Google Maps plugin folder without making any changes to the folder.
128
  Upload the Google Mapsplugin into the following location wp-content>wp-plugins.
129
  Login to the WordPress Administrator Panel.
130
- Activate WD Google Maps by going to Plugins and pressing Activate button.
131
 
132
 
133
  == Screenshots ==
134
- 1. WD Google Maps - Edit Map
135
- 2. WD Google Maps - Add Marker
136
- 3. WD Google Maps - Add Polygon
137
- 4. WD Google Maps - Map Settings
138
- 5. WD Google Maps - Edit Theme
139
- 6. WD Google Maps - Basic Google Maps
140
- 7. WD Google Maps - Google Maps Directions
141
- 8. WD Google Maps - Google Maps Advanced Marker Listing
142
- 9. WD Google Maps - Google Maps Store locator
143
- 10. WD Google Maps - Google Maps Polygons and Polylines
144
 
145
  == Changelog ==
146
 
 
 
 
147
  = 1.0.55 =
148
  * Added: Gutenberg integration
149
 
@@ -322,7 +320,7 @@ Activate WD Google Maps by going to Plugins and pressing Activate button.
322
 
323
  After activation of WordPress Google Maps plugin, the setup wizard of maps will be automatically launched. You can press **Skip** the wizard and relaunch it later or configure the options in **Google Maps > Options** submenu.
324
 
325
- WD Google Maps plugin requires Google Maps API keys for functioning. It currently allows to have up to 25 000 requests per day free of charge. For further requests you will be charged. You can find out more about this [here](https://developers.google.com/maps/documentation/javascript/usage).
326
 
327
  To create an Maps API key login to Google API Console following [this link](https://console.developers.google.com/apis/library/maps-backend.googleapis.com/?project=resolute-bloom-181412).
328
 
@@ -334,18 +332,18 @@ Press **Continue** button. A new page will be opened. Fill in the name and domai
334
 
335
  and press **Create** button. It creation process will take up to a few minutes.
336
 
337
- Copy the API key and fill them in **WD Google Maps > Options** page.
338
 
339
  = How do I publish a map on posts or pages? =
340
 
341
  To insert WordPress Google Map into a Page or Post you should open the post/page from Admin Panel. Here you will see Google Maps icon. Press on it to open the maps.
342
 
343
  Select the map you want to add to the page/post from the list.
344
- Alternatively you can copy the shortcode of this mapping service available in **WD Google Maps > Maps** section. Go your Post/Page where you wish to add a map. Change the content box from **Visual** to **Text** tab and add the code.
345
 
346
- If you want to add map to custom area on your site please use PHP shortcode of WD Google Maps instead. Copy and paste it to the .php file, where you plan to include the map.
347
 
348
- To insert the Map as a widget, navigate to **Appearance > Widgets,** and look for **WD Google Maps** widget. Select a position for the maps widget, then configure the settings. Press the **Save** button to publish your new map widget.
349
 
350
  * **Title.** Provide title for the widget.
351
  * **Select Map.** Choose one of the created Google Maps to insert as widget.
@@ -357,7 +355,7 @@ To insert the Map as a widget, navigate to **Appearance > Widgets,** and look fo
357
 
358
  = How do I add a marker to Google Maps? =
359
 
360
- Navigate to WD Google Maps > Maps page and edit the entry where you wish to add map markers. In this section you are able to to add markers to your WordPress Google Map.
361
 
362
  Markers are used for indicating specific location on a map. The icon of the marker appears as an overlay of the map and may give some additional information.
363
  Note, that all changes made in the markers of this quick map builder will be previewed on small map sample on the right side of the screen.
@@ -381,7 +379,7 @@ The created marker will appear below the map within Markers tab: here you will h
381
 
382
  = How can I create marker categories? =
383
 
384
- To create a marker category navigate to **WD Google Maps > Marker Category** page.
385
 
386
  **Title.** Provide a title for the marker category.
387
  **Select Parent Category.** Here you can leave to root to create a first-level map category or choose one of existing (already added) categories to be used as a parent for the category.
@@ -441,20 +439,20 @@ The created rectangle overlay will appear below the map within Rectangles tab: h
441
 
442
  = Can I use Google Maps in Widgets? =
443
 
444
- Yes WD Google Maps comes with a widget. You can insert created Google Maps into a custom area depending on your theme widget areas assigning it to certain position. You can configure the Google Maps settings and define its dimension.
445
 
446
  = How many Google maps can I insert into a post? =
447
 
448
- The number of Google Maps per post is not limited. You can choose to display multiple Google Maps per post/page using WD Google Maps standard shortcode.
449
 
450
  = Are taxonomies supported in Marker categories? =
451
 
452
- If you use Pro version of WD Google Maps the option is possible to achieve. Different marker categories of the Google Maps can serve as parent category for another marker category.
453
 
454
 
455
- = Can I create shapes with free version of WD Google Maps? =
456
 
457
- Yes, free version of WD Google Maps allows to create polygon and polyline overlays for the maps, whereas WD Google Maps Pro version adds circle and rectangular overlays to this list.
458
 
459
  **Polygon**
460
 
@@ -490,7 +488,7 @@ When all settings are set up, press **Add Polyline** button. The created polylin
490
 
491
  = How to display directions with custom Google Maps? =
492
 
493
- WD Google Maps Pro version allows to add directions tab with Google Maps displaying the standard directions process and modes of reaching from point A to point B on the Google Map.
494
 
495
  To edit the **Directions** settings of the WordPress Google Maps, open **Settings** tab of your Google map, then go to **Directions** section.
496
 
@@ -503,13 +501,13 @@ This allows users to choose two locations and get directions. The mode can be dr
503
 
504
  = How to insert Google maps into a template? =
505
 
506
- If you plan to include your Google Map into a custom **PHP template,** you need to use the **PHP Function** of WD Google Maps.
507
 
508
- The shortcode does not require additional customization, simply copy the code and paste it into the PHP file, where you want the Google Maps to be displayed. You can find the function on **WD Google Maps > Maps** page.
509
 
510
  = How can I style the maps? =
511
 
512
- **Premium version** of WD Google Maps provides numerous customizable map skins and map themes. This allows you to fully customize Google Maps choosing map skins and changing styles and colors for certain Google Maps attributes.
513
 
514
  You can select a theme from already created themes for your WordPress Google Map. In case you want to create a new theme, you need to **Google Maps > Themes** section and press **Add New** button.
515
 
@@ -548,9 +546,9 @@ To create a custom skin first press Add new Style button. Then navigate to Edit
548
 
549
  If you want to have a custom map skin based on Google Map styling standard, you can uncheck Auto Generate Map Style Code and paste the custom script in content area below.
550
 
551
- = Is WD Google Maps responsive? =
552
 
553
- WD Google Maps plugin is developed to provide excellent user experience on any mobile or desktop device. It has a responsive design and layout, thus functions correctly on any screen size.
554
 
555
  = Is it possible to show a list of all markers with the map? =
556
 
@@ -573,7 +571,7 @@ When **None** option is selected, the map legend of markers is deactivated. Afte
573
 
574
  = Can I allow users to locate my venues on the Google map?
575
 
576
- You can do this with WD Google Maps **Store Locator** Settings.
577
 
578
  To edit the **Store Locator** settings of the WordPress Google Maps plugin, navigate to **Settings** tab of your map, then open **Store Locator** section.
579
 
1
+ === 10Web Google Maps - Google Maps builder Plugin ===
2
  Contributors: webdorado,10web,wdsupport
3
  Tags: google map, google maps, map, map markers, maps, directions, google map plugin, google maps plugin, map plugin, wp google map, wp google maps, google map widget
4
  Requires at least: 3.4
5
+ Tested up to: 5.1
6
+ Stable tag: 1.0.57
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
10
+ 10Web Google Maps is an intuitive tool for creating Google maps with advanced markers, custom layers and overlays for your website.
11
 
12
  == Description ==
13
 
14
+ [Special Offer for all Premium Plugins](https://10web.io/plugins-bundle-pricing/)
15
+ [WordPress 10Web Google Maps](https://10web.io/plugins/wordpress-google-maps/)
16
+ [Demo](https://demo.10web.io/google-maps/)
17
+ [User Guide](https://help.10web.io/hc/en-us/articles/360017782751-Installation-Wizard-and-API-Configuration)
18
+
 
 
 
19
 
20
+ https://www.youtube.com/watch?v=bUI4ObvKlkA
 
21
 
22
 
23
+ 10Web Google Maps combines quality and simplicity, offering you an easy way to add unlimited Maps to your website. It’s an out of the box solution with some powerful functionality and additional customization options. The plugin is distinguished for its feature-packed free version, offering what are usually premium features absolutely free, such as unlimited number of responsive maps, geolocation feature, store locator, layers, unlimited markers, and more. Another great thing about it is that it features an intuitive builder, letting you customize your maps and preview the changes immediately with the live preview option. For additional quality features like marker icon builder, directions, skins and themes, marker listing and multi-level marker categories there is the premium version, which will let you further personalize your maps. Plugin uses clean code, which guarantees smooth operation and compatibility with any WordPress theme.
24
 
25
 
26
 
84
  The plugin has a pretty intuitive and user-friendly interface, making it easy to create maps and display them on your website. It comes with a comprehensive set of default settings, which include choosing the map center address, center longitude and latitude, zooming level among others. Once you add a new map and start making changes to it, you’ll find a settings tab, where you can set and configure individual settings for every new entry you create. Under this tab, you can configure the settings for store locator, options for controls, and some of the layer settings. Users of the Premium version will also have the settings for marker listing, directions, marker category filter and some other advanced settings available. The latter has separate tab for themes right above the map display, where you can choose a theme for the map. Adding markers and layers requires just a few clicks. Once you click on the Add Marker tab a new window will open, where you can specify marker options, depending on the plugin version you’re using.
85
 
86
 
87
+ [Premium version adds](https://10web.io/plugins/wordpress-google-maps/)
88
 
89
  * Customizable Google Maps skins
90
  * Google Maps themes/customize existing themes based on detailed styles and colors section
100
 
101
 
102
  ###IMPORTANT:
103
+ If you think you found a bug or have any problem/question concerning this plugin, please check out [Support Forum](https://wordpress.org/support/plugin/wd-google-maps).
 
104
 
105
 
106
  == Installation ==
107
 
108
+ #### Thank you for your interest in 10Web Google Maps.
109
 
110
+ Here are two ways of installing 10Web Google Maps: via WordPress backend and via FTP. Let’s discuss each case individually:
111
 
112
  **Installing via WordPress**
113
 
114
  Login to the WordPress Administrator Panel.
115
  Go to Plugins> Add New>Upload.
116
+ Click Choose file button and select the zip folder of 10Web Google Maps plugin and press Install now button.
117
  Click Activate button.
118
 
119
  **Installing via FTP**
120
 
121
  Login to your hosting space via an FTP software, e.g. FileZilla.
122
+ Unzip the downloaded 10Web Google Maps plugin folder without making any changes to the folder.
123
  Upload the Google Mapsplugin into the following location wp-content>wp-plugins.
124
  Login to the WordPress Administrator Panel.
125
+ Activate 10Web Google Maps by going to Plugins and pressing Activate button.
126
 
127
 
128
  == Screenshots ==
129
+ 1. 10Web Google Maps - Edit Map
130
+ 2. 10Web Google Maps - Add Marker
131
+ 3. 10Web Google Maps - Add Polygon
132
+ 4. 10Web Google Maps - Map Settings
133
+ 5. 10Web Google Maps - Edit Theme
134
+ 6. 10Web Google Maps - Basic Google Maps
135
+ 7. 10Web Google Maps - Google Maps Directions
136
+ 8. 10Web Google Maps - Google Maps Advanced Marker Listing
137
+ 9. 10Web Google Maps - Google Maps Store locator
138
+ 10. 10Web Google Maps - Google Maps Polygons and Polylines
139
 
140
  == Changelog ==
141
 
142
+ = 1.0.57 =
143
+ Changed: Links to 10Web.io.
144
+
145
  = 1.0.55 =
146
  * Added: Gutenberg integration
147
 
320
 
321
  After activation of WordPress Google Maps plugin, the setup wizard of maps will be automatically launched. You can press **Skip** the wizard and relaunch it later or configure the options in **Google Maps > Options** submenu.
322
 
323
+ 10Web Google Maps plugin requires Google Maps API keys for functioning. It currently allows to have up to 25 000 requests per day free of charge. For further requests you will be charged. You can find out more about this [here](https://developers.google.com/maps/documentation/javascript/usage).
324
 
325
  To create an Maps API key login to Google API Console following [this link](https://console.developers.google.com/apis/library/maps-backend.googleapis.com/?project=resolute-bloom-181412).
326
 
332
 
333
  and press **Create** button. It creation process will take up to a few minutes.
334
 
335
+ Copy the API key and fill them in **10Web Google Maps > Options** page.
336
 
337
  = How do I publish a map on posts or pages? =
338
 
339
  To insert WordPress Google Map into a Page or Post you should open the post/page from Admin Panel. Here you will see Google Maps icon. Press on it to open the maps.
340
 
341
  Select the map you want to add to the page/post from the list.
342
+ Alternatively you can copy the shortcode of this mapping service available in **10Web Google Maps > Maps** section. Go your Post/Page where you wish to add a map. Change the content box from **Visual** to **Text** tab and add the code.
343
 
344
+ If you want to add map to custom area on your site please use PHP shortcode of 10Web Google Maps instead. Copy and paste it to the .php file, where you plan to include the map.
345
 
346
+ To insert the Map as a widget, navigate to **Appearance > Widgets,** and look for **10Web Google Maps** widget. Select a position for the maps widget, then configure the settings. Press the **Save** button to publish your new map widget.
347
 
348
  * **Title.** Provide title for the widget.
349
  * **Select Map.** Choose one of the created Google Maps to insert as widget.
355
 
356
  = How do I add a marker to Google Maps? =
357
 
358
+ Navigate to 10Web Google Maps > Maps page and edit the entry where you wish to add map markers. In this section you are able to to add markers to your WordPress Google Map.
359
 
360
  Markers are used for indicating specific location on a map. The icon of the marker appears as an overlay of the map and may give some additional information.
361
  Note, that all changes made in the markers of this quick map builder will be previewed on small map sample on the right side of the screen.
379
 
380
  = How can I create marker categories? =
381
 
382
+ To create a marker category navigate to **10Web Google Maps > Marker Category** page.
383
 
384
  **Title.** Provide a title for the marker category.
385
  **Select Parent Category.** Here you can leave to root to create a first-level map category or choose one of existing (already added) categories to be used as a parent for the category.
439
 
440
  = Can I use Google Maps in Widgets? =
441
 
442
+ Yes 10Web Google Maps comes with a widget. You can insert created Google Maps into a custom area depending on your theme widget areas assigning it to certain position. You can configure the Google Maps settings and define its dimension.
443
 
444
  = How many Google maps can I insert into a post? =
445
 
446
+ The number of Google Maps per post is not limited. You can choose to display multiple Google Maps per post/page using 10Web Google Maps standard shortcode.
447
 
448
  = Are taxonomies supported in Marker categories? =
449
 
450
+ If you use Pro version of 10Web Google Maps the option is possible to achieve. Different marker categories of the Google Maps can serve as parent category for another marker category.
451
 
452
 
453
+ = Can I create shapes with free version of 10Web Google Maps? =
454
 
455
+ Yes, free version of 10Web Google Maps allows to create polygon and polyline overlays for the maps, whereas 10Web Google Maps Pro version adds circle and rectangular overlays to this list.
456
 
457
  **Polygon**
458
 
488
 
489
  = How to display directions with custom Google Maps? =
490
 
491
+ 10Web Google Maps Pro version allows to add directions tab with Google Maps displaying the standard directions process and modes of reaching from point A to point B on the Google Map.
492
 
493
  To edit the **Directions** settings of the WordPress Google Maps, open **Settings** tab of your Google map, then go to **Directions** section.
494
 
501
 
502
  = How to insert Google maps into a template? =
503
 
504
+ If you plan to include your Google Map into a custom **PHP template,** you need to use the **PHP Function** of 10Web Google Maps.
505
 
506
+ The shortcode does not require additional customization, simply copy the code and paste it into the PHP file, where you want the Google Maps to be displayed. You can find the function on **10Web Google Maps > Maps** page.
507
 
508
  = How can I style the maps? =
509
 
510
+ **Premium version** of 10Web Google Maps provides numerous customizable map skins and map themes. This allows you to fully customize Google Maps choosing map skins and changing styles and colors for certain Google Maps attributes.
511
 
512
  You can select a theme from already created themes for your WordPress Google Map. In case you want to create a new theme, you need to **Google Maps > Themes** section and press **Add New** button.
513
 
546
 
547
  If you want to have a custom map skin based on Google Map styling standard, you can uncheck Auto Generate Map Style Code and paste the custom script in content area below.
548
 
549
+ = Is 10Web Google Maps responsive? =
550
 
551
+ 10Web Google Maps plugin is developed to provide excellent user experience on any mobile or desktop device. It has a responsive design and layout, thus functions correctly on any screen size.
552
 
553
  = Is it possible to show a list of all markers with the map? =
554
 
571
 
572
  = Can I allow users to locate my venues on the Google map?
573
 
574
+ You can do this with 10Web Google Maps **Store Locator** Settings.
575
 
576
  To edit the **Store Locator** settings of the WordPress Google Maps plugin, navigate to **Settings** tab of your map, then open **Store Locator** section.
577
 
wd-google-maps.php CHANGED
@@ -1,28 +1,28 @@
1
  <?php
2
 
3
  /**
4
- * Plugin Name: WD Google Maps
5
- * Plugin URI: https://web-dorado.com/products/wordpress-google-maps-plugin.html
6
- * Description: WD Google Maps is an intuitive tool for creating Google maps with advanced markers, custom layers and overlays for your website.
7
- * Version: 1.0.55
8
- * Author: WebDorado
9
- * Author URI: https://web-dorado.com/wordpress-plugins-bundle.html
10
  * License: GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
11
  */
12
-
13
  define('GMWD_DIR', WP_PLUGIN_DIR . "/" . plugin_basename(dirname(__FILE__)));
14
  define('GMWD_NAME', plugin_basename(dirname(__FILE__)));
15
  define('GMWD_URL', plugins_url(plugin_basename(dirname(__FILE__))));
16
  define('GMWD_MAIN_FILE', plugin_basename(__FILE__));
17
 
18
- require_once( GMWD_DIR. '/framework/functions.php' );
19
- if ( is_admin() ) {
20
- require_once( 'gmwd_admin_class.php' );
21
  register_activation_hook(__FILE__, array('GMWDAdmin', 'gmwd_activate'));
22
- add_action( 'plugins_loaded', array('GMWDAdmin', 'gmwd_get_instance'));
23
 
24
- add_action('wp_ajax_add_marker', array('GMWDAdmin', 'gmwd_ajax'));
25
- add_action('wp_ajax_download_markers', array('GMWDAdmin', 'gmwd_ajax'));
26
  add_action('wp_ajax_select_marker_icon', array('GMWDAdmin', 'gmwd_ajax'));
27
  add_action('wp_ajax_marker_size', array('GMWDAdmin', 'gmwd_ajax'));
28
  add_action('wp_ajax_add_polygon', array('GMWDAdmin', 'gmwd_ajax'));
@@ -32,17 +32,17 @@ if ( is_admin() ) {
32
 
33
  }
34
 
35
- require_once( 'gmwd_class.php' );
36
 
37
- add_action( 'plugins_loaded', array('GMWD', 'gmwd_get_instance'));
38
 
39
 
40
- add_action('wp_ajax_get_ajax_markers', array('GMWD','gmwd_frontend'));
41
- add_action('wp_ajax_nopriv_get_ajax_markers', array('GMWD','gmwd_frontend'));
42
- add_action('wp_ajax_get_ajax_store_loactor', array('GMWD','gmwd_frontend'));
43
- add_action('wp_ajax_nopriv_get_ajax_store_loactor', array('GMWD','gmwd_frontend'));
44
- add_action('wp_ajax_ajax_accept_gdpr', array('GMWD','gmwd_frontend'));
45
- add_action('wp_ajax_nopriv_ajax_accept_gdpr', array('GMWD','gmwd_frontend'));
46
 
47
 
48
  add_action('elementor/widgets/widgets_registered', 'register_elementor_widget');
@@ -53,17 +53,19 @@ add_action('elementor/editor/after_enqueue_styles', 'enqueue_editor_styles', 11)
53
  // Register 10Web category for Elementor widget if 10Web builder doesn't installed.
54
  add_action('elementor/elements/categories_registered', 'register_widget_category', 1, 1);
55
 
56
- function enqueue_editor_styles() {
57
- wp_enqueue_style('twbb-editor-styles', GMWD_URL . '/css/gmwd_elementor_icon/gmwd_elementor_icon.css', array(), '1.0.0');
 
58
  }
59
 
60
  /**
61
  * Register widget for Elementor builder.
62
  */
63
- function register_elementor_widget() {
64
- if ( defined('ELEMENTOR_PATH') && class_exists('Elementor\Widget_Base') ) {
65
- require_once (GMWD_DIR . '/admin/controllers/elementorWidget.php');
66
- }
 
67
  }
68
 
69
  /**
@@ -71,16 +73,17 @@ function register_elementor_widget() {
71
  *
72
  * @param $elements_manager
73
  */
74
- function register_widget_category( $elements_manager ) {
75
- $elements_manager->add_category('tenweb-plugins-widgets', array(
76
- 'title' => __('10WEB Plugins', 'tenweb-builder'),
77
- 'icon' => 'fa fa-plug',
78
- ));
 
79
  }
80
 
81
 
82
-
83
- function gmwd_map($shortcode_id, $map_id ){
84
  GMWD::gmwd_get_instance();
85
  $params = array();
86
  $params ['map'] = $map_id;
@@ -89,53 +92,57 @@ function gmwd_map($shortcode_id, $map_id ){
89
  $map_controller = new GMWDControllerFrontendMap($params);
90
  $map_controller->display();
91
  }
92
- require_once( GMWD_DIR. '/widgets.php' );
93
 
94
- function gmwd_bp_script_style() {
95
- wp_enqueue_script('wd_bck_install', GMWD_URL . '/js/wd_bp_install.js', array('jquery'));
96
- wp_enqueue_style('wd_bck_install', GMWD_URL . '/css/wd_bp_install.css');
 
 
 
97
  }
 
98
  add_action('admin_enqueue_scripts', 'gmwd_bp_script_style');
99
 
100
  /**
101
  * Show notice to install backup plugin
102
  */
103
- function gnwd_bp_install_notice() {
104
- if ( get_option('wds_bk_notice_status') !== FALSE ) {
105
- update_option('wds_bk_notice_status', '1', 'no');
106
- }
107
- if ( !isset($_GET['page']) || strpos(esc_html($_GET['page']), '_gmwd') === FALSE ) {
108
- return '';
109
- }
110
-
111
- $prefix = "gmwd";
112
- $meta_value = get_option('wd_bk_notice_status');
113
- if ($meta_value === '' || $meta_value === false) {
114
- ob_start();
115
- ?>
116
- <div class="notice notice-info" id="wd_bp_notice_cont">
117
- <p>
118
- <img id="wd_bp_logo_notice" src="<?php echo GMWD_URL . '/images/logo.png'; ?>">
119
- <?php _e("Google Maps advises: Install brand new FREE", $prefix) ?>
120
- <a href="https://wordpress.org/plugins/backup-wd/" title="<?php _e("More details", $prefix) ?>"
121
- target="_blank"><?php _e("Backup WD", $prefix) ?></a>
122
- <?php _e("plugin to keep your data and website safe.", $prefix) ?>
123
- <a class="button button-primary"
124
- href="<?php echo esc_url(wp_nonce_url(self_admin_url('update.php?action=install-plugin&plugin=backup-wd'), 'install-plugin_backup-wd')); ?>">
125
- <span onclick="wd_bp_notice_install()"><?php _e("Install", $prefix); ?></span>
126
- </a>
127
- </p>
128
- <button type="button" class="wd_bp_notice_dissmiss notice-dismiss"><span class="screen-reader-text"></span>
129
- </button>
130
- </div>
131
- <script>wd_bp_url = '<?php echo add_query_arg(array('action' => 'wd_bp_dismiss',), admin_url('admin-ajax.php')); ?>'</script>
132
- <?php
133
- echo ob_get_clean();
134
- }
 
135
  }
136
 
137
  if (!is_dir(plugin_dir_path(__DIR__) . 'backup-wd')) {
138
- add_action('admin_notices', 'gnwd_bp_install_notice');
139
  }
140
 
141
  /**
@@ -144,158 +151,163 @@ if (!is_dir(plugin_dir_path(__DIR__) . 'backup-wd')) {
144
  * empty: notice,
145
  * 1 : never show again
146
  */
147
- function gmwd_bp_install_notice_status() {
 
148
 
149
- update_option('wd_bk_notice_status', '1', 'no');
150
 
151
  }
152
- add_action('wp_ajax_wd_bp_dismiss', 'gmwd_bp_install_notice_status');
153
 
 
154
 
155
 
156
- function wd_gmwd_init(){
157
- if( !isset($_REQUEST['ajax']) && is_admin() ){
158
- if( !class_exists("DoradoWeb") ){
159
- require_once(GMWD_DIR . '/wd/start.php');
160
- }
161
- global $gmwd_options;
162
- $gmwd_options = array (
163
- "prefix" => "gmwd",
164
- "wd_plugin_id" => 147,
165
- "plugin_title" => "Google Maps WD",
166
- "plugin_wordpress_slug" => "wd-google-maps",
167
- "plugin_dir" => GMWD_DIR,
168
- "plugin_main_file" => __FILE__,
169
- "description" => __('Plugin for creating Google maps with advanced markers, custom layers and overlays for your website.', 'gmwd'),
170
- // from web-dorado.com
171
- "plugin_features" => array(
172
- 0 => array(
173
- "title" => __("Easy set up", "gmwd"),
174
- "description" => __("After installation a set-up guide will help you configure general options and get started on the dashboard. The plugin also displays tooltips in the whole admin area and settings. Moreover, you get instant live previews of changes you make in the working area, so you don’t have to save and publish maps to see the results.", "gmwd"),
175
- ),
176
- 1 => array(
177
- "title" => __("Unlimited Everything", "gmwd"),
178
- "description" => __("Display unlimited maps on any page or post. Same is true for markers, rectangles, circles, polygons and polylines.", "gmwd"),
179
- ),
180
- 2 => array(
181
- "title" => __("100+ Marker Icons", "gmwd"),
182
- "description" => __("Choose from 100+ readymade marker icons with different shapes and colors. Can’t find what you need? Create your own icons with the icon marker editor, setting background color and icon color or upload your own image.", "gmwd"),
183
- ),
184
- 3 => array(
185
- "title" => __("Beautiful Maps Theme", "gmwd"),
186
- "description" => __("Select or create a beautiful map theme that best fits your business and website needs. Choose from readymade themes or design your own map skin, by using the advanced editor.", "gmwd"),
187
- ),
188
- 4 => array(
189
- "title" => __("Multilevel Marker Categories", "gmwd"),
190
- "description" => __("Do you have a large number of markers on locations? Then the marker clustering option is for you! Add multiple marker categories and subcategories. Assign categories to markers quickly and easily by choosing from a dropdown menu.", "gmwd"),
191
- )
192
- ),
193
- // user guide from web-dorado.com
194
- "user_guide" => array(
195
- 0 => array(
196
- "main_title" => __("Installation Wizard/ Options Menu", "gmwd"),
197
- "url" => "https://web-dorado.com/wordpress-google-maps/installation-wizard-options-menu.html",
198
- "titles" => array(
199
- array(
200
- "title" => __("Configuring Map API Key", "gmwd"),
201
- "url" => "https://web-dorado.com/wordpress-google-maps/installation-wizard-options-menu/configuring-api-key.html"
202
- )
203
- )
204
- ),
205
- 1 => array(
206
- "main_title" => __("Creating Map", "gmwd"),
207
- "url" => "https://web-dorado.com/wordpress-google-maps/creating-map.html",
208
- "titles" => array()
209
- ),
210
- 2 => array(
211
- "main_title" => __("Settings", "gmwd"),
212
- "url" => "https://web-dorado.com/wordpress-google-maps/settings.html",
213
- "titles" => array(
214
- array(
215
- "title" => __("General", "gmwd"),
216
- "url" => "https://web-dorado.com/wordpress-google-maps/settings/general.html",
217
- ),
218
- array(
219
- "title" => __("Controls", "gmwd"),
220
- "url" => "https://web-dorado.com/wordpress-google-maps/settings/controls.html",
221
- ),
222
- array(
223
- "title" => __("Layers", "gmwd"),
224
- "url" => "https://web-dorado.com/wordpress-google-maps/settings/layers.html",
225
- ),
226
- array(
227
- "title" => __("Directions", "gmwd"),
228
- "url" => "https://web-dorado.com/wordpress-google-maps/settings/directions.html",
229
- ),
230
- array(
231
- "title" => __("Store Locator", "gmwd"),
232
- "url" => "https://web-dorado.com/wordpress-google-maps/settings/store-locator.html",
233
- ),
234
- array(
235
- "title" => __("Marker Listing", "gmwd"),
236
- "url" => "https://web-dorado.com/wordpress-google-maps/settings/marker-listing.html",
237
- ),
238
- )
239
- ),
240
- 3 => array(
241
- "main_title" => __("Map", "gmwd"),
242
- "url" => "https://web-dorado.com/wordpress-google-maps/map.html",
243
- "titles" => array(
244
- array(
245
- "title" => __("Adding Marker", "gmwd"),
246
- "url" => "https://web-dorado.com/wordpress-google-maps/map/adding-marker.html",
247
- ),
248
- array(
249
- "title" => __("Adding Circle", "gmwd"),
250
- "url" => "https://web-dorado.com/wordpress-google-maps/map/adding-circle.html",
251
- ),
252
- array(
253
- "title" => __("Adding Rectangle", "gmwd"),
254
- "url" => "https://web-dorado.com/wordpress-google-maps/map/adding-rectangle.html",
255
- ),
256
- array(
257
- "title" => __("Adding Polygon", "gmwd"),
258
- "url" => "https://web-dorado.com/wordpress-google-maps/map/adding-polygon.html",
259
- ),
260
- array(
261
- "title" => __("Adding Polylines", "gmwd"),
262
- "url" => "https://web-dorado.com/wordpress-google-maps/map/adding-polylines.html",
263
- ),
264
- )
265
- ),
266
- 4 => array(
267
- "main_title" => __("Preview/Themes", "gmwd"),
268
- "url" => "https://web-dorado.com/wordpress-google-maps/preview-themes.html",
269
- "titles" => array()
270
- ),
271
- 5 => array(
272
- "main_title" => __("Creating Marker Categories", "gmwd"),
273
- "url" => "https://web-dorado.com/wordpress-google-maps/creating-marker-categories.html",
274
- "titles" => array()
275
- ),
276
- ),
277
- "overview_welcome_image" => null,
278
- "video_youtube_id" => "acaexefeP7o", // e.g. https://www.youtube.com/watch?v=acaexefeP7o youtube id is the acaexefeP7o
279
- "plugin_wd_url" => "https://web-dorado.com/products/wordpress-google-maps-plugin.html",
280
- "plugin_wd_demo_link" => "http://wpdemo.web-dorado.com/google-maps/?_ga=1.55907819.1794949467.1468394897",
281
- "plugin_wd_addons_link" => "https://web-dorado.com/products/wordpress-google-maps-plugin/add-ons/marker-clustering.html",
282
- "after_subscribe" => "admin.php?page=overview_gmwd", // this can be plagin overview page or set up page
283
- "plugin_wizard_link" => admin_url('index.php?page=gmwd_setup'),
284
- "plugin_menu_title" => "Google Maps WD",
285
- "plugin_menu_icon" => GMWD_URL . '/images/icon-map-20.png',
286
- "deactivate" => true,
287
- "subscribe" => true,
288
- "custom_post" => "maps_gmwd", // if true => edit.php?post_type=contact
289
- "menu_capability" => "manage_options",
290
- "menu_position" => 9,
291
- );
292
-
293
- dorado_web_init($gmwd_options);
294
- }
 
 
 
 
295
 
296
  }
297
 
298
- add_action( 'init', "wd_gmwd_init" );
299
 
300
 
301
  ?>
1
  <?php
2
 
3
  /**
4
+ * Plugin Name: 10Web Google Maps
5
+ * Plugin URI: https://10web.io/plugins/wordpress-google-maps/
6
+ * Description: 10Web Google Maps is an intuitive tool for creating Google maps with advanced markers, custom layers and overlays for your website.
7
+ * Version: 1.0.57
8
+ * Author: 10Web
9
+ * Author URI: https://10web.io/plugins
10
  * License: GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
11
  */
12
+
13
  define('GMWD_DIR', WP_PLUGIN_DIR . "/" . plugin_basename(dirname(__FILE__)));
14
  define('GMWD_NAME', plugin_basename(dirname(__FILE__)));
15
  define('GMWD_URL', plugins_url(plugin_basename(dirname(__FILE__))));
16
  define('GMWD_MAIN_FILE', plugin_basename(__FILE__));
17
 
18
+ require_once(GMWD_DIR . '/framework/functions.php');
19
+ if (is_admin()) {
20
+ require_once('gmwd_admin_class.php');
21
  register_activation_hook(__FILE__, array('GMWDAdmin', 'gmwd_activate'));
22
+ add_action('plugins_loaded', array('GMWDAdmin', 'gmwd_get_instance'));
23
 
24
+ add_action('wp_ajax_add_marker', array('GMWDAdmin', 'gmwd_ajax'));
25
+ add_action('wp_ajax_download_markers', array('GMWDAdmin', 'gmwd_ajax'));
26
  add_action('wp_ajax_select_marker_icon', array('GMWDAdmin', 'gmwd_ajax'));
27
  add_action('wp_ajax_marker_size', array('GMWDAdmin', 'gmwd_ajax'));
28
  add_action('wp_ajax_add_polygon', array('GMWDAdmin', 'gmwd_ajax'));
32
 
33
  }
34
 
35
+ require_once('gmwd_class.php');
36
 
37
+ add_action('plugins_loaded', array('GMWD', 'gmwd_get_instance'));
38
 
39
 
40
+ add_action('wp_ajax_get_ajax_markers', array('GMWD', 'gmwd_frontend'));
41
+ add_action('wp_ajax_nopriv_get_ajax_markers', array('GMWD', 'gmwd_frontend'));
42
+ add_action('wp_ajax_get_ajax_store_loactor', array('GMWD', 'gmwd_frontend'));
43
+ add_action('wp_ajax_nopriv_get_ajax_store_loactor', array('GMWD', 'gmwd_frontend'));
44
+ add_action('wp_ajax_ajax_accept_gdpr', array('GMWD', 'gmwd_frontend'));
45
+ add_action('wp_ajax_nopriv_ajax_accept_gdpr', array('GMWD', 'gmwd_frontend'));
46
 
47
 
48
  add_action('elementor/widgets/widgets_registered', 'register_elementor_widget');
53
  // Register 10Web category for Elementor widget if 10Web builder doesn't installed.
54
  add_action('elementor/elements/categories_registered', 'register_widget_category', 1, 1);
55
 
56
+ function enqueue_editor_styles()
57
+ {
58
+ wp_enqueue_style('twbb-editor-styles', GMWD_URL . '/css/gmwd_elementor_icon/gmwd_elementor_icon.css', array(), '1.0.0');
59
  }
60
 
61
  /**
62
  * Register widget for Elementor builder.
63
  */
64
+ function register_elementor_widget()
65
+ {
66
+ if (defined('ELEMENTOR_PATH') && class_exists('Elementor\Widget_Base')) {
67
+ require_once(GMWD_DIR . '/admin/controllers/elementorWidget.php');
68
+ }
69
  }
70
 
71
  /**
73
  *
74
  * @param $elements_manager
75
  */
76
+ function register_widget_category($elements_manager)
77
+ {
78
+ $elements_manager->add_category('tenweb-plugins-widgets', array(
79
+ 'title' => __('10WEB Plugins', 'tenweb-builder'),
80
+ 'icon' => 'fa fa-plug',
81
+ ));
82
  }
83
 
84
 
85
+ function gmwd_map($shortcode_id, $map_id)
86
+ {
87
  GMWD::gmwd_get_instance();
88
  $params = array();
89
  $params ['map'] = $map_id;
92
  $map_controller = new GMWDControllerFrontendMap($params);
93
  $map_controller->display();
94
  }
 
95
 
96
+ require_once(GMWD_DIR . '/widgets.php');
97
+
98
+ function gmwd_bp_script_style()
99
+ {
100
+ wp_enqueue_script('wd_bck_install', GMWD_URL . '/js/wd_bp_install.js', array('jquery'));
101
+ wp_enqueue_style('wd_bck_install', GMWD_URL . '/css/wd_bp_install.css');
102
  }
103
+
104
  add_action('admin_enqueue_scripts', 'gmwd_bp_script_style');
105
 
106
  /**
107
  * Show notice to install backup plugin
108
  */
109
+ function gmwd_bp_install_notice()
110
+ {
111
+ if (get_option('wds_bk_notice_status') !== false) {
112
+ update_option('wds_bk_notice_status', '1', 'no');
113
+ }
114
+ if (!isset($_GET['page']) || strpos(esc_html($_GET['page']), '_gmwd') === false) {
115
+ return '';
116
+ }
117
+
118
+ $prefix = "gmwd";
119
+ $meta_value = get_option('wd_bk_notice_status');
120
+ if ($meta_value === '' || $meta_value === false) {
121
+ ob_start();
122
+ ?>
123
+ <div class="notice notice-info" id="wd_bp_notice_cont">
124
+ <p>
125
+ <img id="wd_bp_logo_notice" src="<?php echo GMWD_URL . '/images/logo.png'; ?>">
126
+ <?php _e("Google Maps advises: Install brand new FREE", $prefix) ?>
127
+ <a href="https://wordpress.org/plugins/backup-wd/" title="<?php _e("More details", $prefix) ?>"
128
+ target="_blank"><?php _e("Backup WD", $prefix) ?></a>
129
+ <?php _e("plugin to keep your data and website safe.", $prefix) ?>
130
+ <a class="button button-primary"
131
+ href="<?php echo esc_url(wp_nonce_url(self_admin_url('update.php?action=install-plugin&plugin=backup-wd'), 'install-plugin_backup-wd')); ?>">
132
+ <span onclick="wd_bp_notice_install()"><?php _e("Install", $prefix); ?></span>
133
+ </a>
134
+ </p>
135
+ <button type="button" class="wd_bp_notice_dissmiss notice-dismiss"><span class="screen-reader-text"></span>
136
+ </button>
137
+ </div>
138
+ <script>wd_bp_url = '<?php echo add_query_arg(array('action' => 'wd_bp_dismiss',), admin_url('admin-ajax.php')); ?>'</script>
139
+ <?php
140
+ echo ob_get_clean();
141
+ }
142
  }
143
 
144
  if (!is_dir(plugin_dir_path(__DIR__) . 'backup-wd')) {
145
+ add_action('admin_notices', 'gmwd_bp_install_notice');
146
  }
147
 
148
  /**
151
  * empty: notice,
152
  * 1 : never show again
153
  */
154
+ function gmwd_bp_install_notice_status()
155
+ {
156
 
157
+ update_option('wd_bk_notice_status', '1', 'no');
158
 
159
  }
 
160
 
161
+ add_action('wp_ajax_wd_bp_dismiss', 'gmwd_bp_install_notice_status');
162
 
163
 
164
+ function wd_gmwd_init()
165
+ {
166
+ if (!isset($_REQUEST['ajax']) && is_admin()) {
167
+
168
+ if (!class_exists("TenWebLib")) {
169
+ require_once(GMWD_DIR . '/wd/start.php');
170
+ }
171
+ global $gmwd_options;
172
+ $gmwd_options = array(
173
+ "prefix" => "gmwd",
174
+ "wd_plugin_id" => 147,
175
+ "plugin_id" => 89,
176
+ "plugin_title" => "Google Maps",
177
+ "plugin_wordpress_slug" => "wd-google-maps",
178
+ "plugin_dir" => GMWD_DIR,
179
+ "plugin_main_file" => __FILE__,
180
+ "description" => __('Plugin for creating Google maps with advanced markers, custom layers and overlays for your website.', 'gmwd'),
181
+ // from web-dorado.com
182
+ "plugin_features" => array(
183
+ 0 => array(
184
+ "title" => __("Easy set up", "gmwd"),
185
+ "description" => __("After installation a set-up guide will help you configure general options and get started on the dashboard. The plugin also displays tooltips in the whole admin area and settings. Moreover, you get instant live previews of changes you make in the working area, so you don’t have to save and publish maps to see the results.", "gmwd"),
186
+ ),
187
+ 1 => array(
188
+ "title" => __("Unlimited Everything", "gmwd"),
189
+ "description" => __("Display unlimited maps on any page or post. Same is true for markers, rectangles, circles, polygons and polylines.", "gmwd"),
190
+ ),
191
+ 2 => array(
192
+ "title" => __("100+ Marker Icons", "gmwd"),
193
+ "description" => __("Choose from 100+ readymade marker icons with different shapes and colors. Can’t find what you need? Create your own icons with the icon marker editor, setting background color and icon color or upload your own image.", "gmwd"),
194
+ ),
195
+ 3 => array(
196
+ "title" => __("Beautiful Maps Theme", "gmwd"),
197
+ "description" => __("Select or create a beautiful map theme that best fits your business and website needs. Choose from readymade themes or design your own map skin, by using the advanced editor.", "gmwd"),
198
+ ),
199
+ 4 => array(
200
+ "title" => __("Multilevel Marker Categories", "gmwd"),
201
+ "description" => __("Do you have a large number of markers on locations? Then the marker clustering option is for you! Add multiple marker categories and subcategories. Assign categories to markers quickly and easily by choosing from a dropdown menu.", "gmwd"),
202
+ )
203
+ ),
204
+ // user guide from web-dorado.com
205
+ "user_guide" => array(
206
+ 0 => array(
207
+ "main_title" => __("Installation Wizard/ Options Menu", "gmwd"),
208
+ "url" => "https://help.10web.io/hc/en-us/articles/360017782751-Installation-Wizard-and-API-Configuration",
209
+ "titles" => array(
210
+ array(
211
+ "title" => __("Configuring Map API Key", "gmwd"),
212
+ "url" => "https://help.10web.io/hc/en-us/articles/360017782751-Installation-Wizard-and-API-Configuration"
213
+ )
214
+ )
215
+ ),
216
+ 1 => array(
217
+ "main_title" => __("Creating Map", "gmwd"),
218
+ "url" => "https://help.10web.io/hc/en-us/articles/360018133851-Creating-Map",
219
+ "titles" => array()
220
+ ),
221
+ 2 => array(
222
+ "main_title" => __("Settings", "gmwd"),
223
+ "url" => "https://help.10web.io/hc/en-us/articles/360017853132-Configuring-Google-Maps-General-Settings",
224
+ "titles" => array(
225
+ array(
226
+ "title" => __("General", "gmwd"),
227
+ "url" => "https://help.10web.io/hc/en-us/articles/360017853132-Configuring-Google-Maps-General-Settings",
228
+ ),
229
+ array(
230
+ "title" => __("Controls", "gmwd"),
231
+ "url" => "https://help.10web.io/hc/en-us/articles/360017853192-Google-Map-Controls",
232
+ ),
233
+ array(
234
+ "title" => __("Layers", "gmwd"),
235
+ "url" => "https://help.10web.io/hc/en-us/articles/360017853312-Google-Maps-Layers",
236
+ ),
237
+ array(
238
+ "title" => __("Directions", "gmwd"),
239
+ "url" => "https://help.10web.io/hc/en-us/articles/360017853372-Directions-Settings",
240
+ ),
241
+ array(
242
+ "title" => __("Store Locator", "gmwd"),
243
+ "url" => "https://help.10web.io/hc/en-us/articles/360017853472-Store-Locator-Options",
244
+ ),
245
+ array(
246
+ "title" => __("Marker Listing", "gmwd"),
247
+ "url" => "https://help.10web.io/hc/en-us/articles/360017853512-Google-Maps-Marker-Listing",
248
+ ),
249
+ )
250
+ ),
251
+ 3 => array(
252
+ "main_title" => __("Map", "gmwd"),
253
+ "url" => "https://help.10web.io/hc/en-us/articles/360018134351-Adding-Google-Maps-Attributes",
254
+ "titles" => array(
255
+ array(
256
+ "title" => __("Adding Marker", "gmwd"),
257
+ "url" => "https://web-dorado.com/wordpress-google-maps/map/adding-marker.html",
258
+ ),
259
+ array(
260
+ "title" => __("Adding Circle", "gmwd"),
261
+ "url" => "https://help.10web.io/hc/en-us/articles/360017853652-Adding-Markers-to-Google-Maps",
262
+ ),
263
+ array(
264
+ "title" => __("Adding Rectangle", "gmwd"),
265
+ "url" => "https://help.10web.io/hc/en-us/articles/360017853992-Adding-Rectangles",
266
+ ),
267
+ array(
268
+ "title" => __("Adding Polygon", "gmwd"),
269
+ "url" => "https://help.10web.io/hc/en-us/articles/360018135011-Adding-Polygons-to-your-Google-Map",
270
+ ),
271
+ array(
272
+ "title" => __("Adding Polylines", "gmwd"),
273
+ "url" => "https://help.10web.io/hc/en-us/articles/360018135091-Adding-Polylines",
274
+ ),
275
+ )
276
+ ),
277
+ 4 => array(
278
+ "main_title" => __("Preview/Themes", "gmwd"),
279
+ "url" => "https://help.10web.io/hc/en-us/articles/360017854292-Modifying-Google-Maps-Themes",
280
+ "titles" => array()
281
+ ),
282
+ 5 => array(
283
+ "main_title" => __("Creating Marker Categories", "gmwd"),
284
+ "url" => "https://help.10web.io/hc/en-us/articles/360018135431-Creating-Marker-Categories",
285
+ "titles" => array()
286
+ ),
287
+ ),
288
+ "overview_welcome_image" => null,
289
+ "video_youtube_id" => "acaexefeP7o", // e.g. https://www.youtube.com/watch?v=acaexefeP7o youtube id is the acaexefeP7o
290
+ "plugin_wd_url" => "https://10web.io/plugins/wordpress-google-maps/",
291
+ "plugin_wd_demo_link" => "https://demo.10web.io/google-maps/?_ga=2.107313026.1852679516.1550666932-1168307491.1539778623",
292
+ "plugin_wd_addons_link" => "https://10web.io/plugins/wordpress-google-maps/",
293
+ "after_subscribe" => "index.php?page=gmwd_setup", // this can be plagin overview page or set up page
294
+ "plugin_wizard_link" => admin_url('index.php?page=gmwd_setup'),
295
+ "plugin_menu_title" => "Google Maps",
296
+ "plugin_menu_icon" => GMWD_URL . '/images/icon-map-20.png',
297
+ "deactivate" => true,
298
+ "subscribe" => true,
299
+ "custom_post" => "maps_gmwd", // if true => edit.php?post_type=contact
300
+ "menu_capability" => "manage_options",
301
+ "menu_position" => null,
302
+ "display_overview" => 0
303
+ );
304
+
305
+ ten_web_lib_init($gmwd_options);
306
+ }
307
 
308
  }
309
 
310
+ add_action('init', "wd_gmwd_init");
311
 
312
 
313
  ?>
wd/README.md CHANGED
@@ -5,10 +5,26 @@ Version: 1.0.13
5
  Usage:
6
 
7
  Copy and paste wd library into your plugin folder.
8
- In your plugin main file check if library main DoradoWeb class doesn't exist, include it
9
- if( !class_exists("DoradoWeb") ){
10
- require_once(PATH_TO_YOUR_PLUGIN_DIR . '/wd/start.php');
11
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12
 
13
  Then call dorado_web_init($options) function.
14
  $options = array (
@@ -31,22 +47,8 @@ $options = array (
31
  ),
32
  ...
33
  ),
34
- "user_guide" => array(
35
- 0 => array(
36
- "main_title" => "user guide step 1",
37
- "url" => "link to step 1",
38
- "titles" => array(
39
- array(
40
- "title" => "step 1 sub title",
41
- "url" => "link to step 1 sub"
42
- )
43
- )
44
- ),
45
- ...
46
- ),
47
- "overview_welcome_image" => null,
48
  "video_youtube_id" => "your plugin youtube video id", // e.g. https://www.youtube.com/watch?v=acaexefeP7o youtube id is the acaexefeP7o
49
- "plugin_wd_url" => "https://web-dorado.com/products/your plugin",
50
  "plugin_wd_demo_link" => "http://wpdemo.web-dorado.com/your plugin",
51
  "plugin_wd_addons_link" => "https://web-dorado.com/products/your plugin addons",
52
  "after_subscribe" => "after subsribe page", // this can be plagin overview page or set up page admin.php?page=overview_YOUR_PREFIX
@@ -85,25 +87,6 @@ array(
85
  ....
86
  )
87
 
88
- user_guide - (type array) plugin user guide links from web-dorado.com
89
- e.g. (for google maps plugin)
90
- array(
91
- 0 => array(
92
- "main_title" => __("Installation Wizard/ Options Menu", "gmwd"),
93
- "url" => "https://web-dorado.com/wordpress-google-maps/installation-wizard-options-menu.html",
94
- "titles" => array(
95
- array(
96
- "title" => __("Configuring Map API Key", "gmwd"),
97
- "url" => "https://web-dorado.com/wordpress-google-maps/installation-wizard-options-menu/configuring-api-key.html"
98
- )
99
- )
100
- ),
101
- 1 => array(
102
- "main_title" => __("Creating Map", "gmwd"),
103
- "url" => "https://web-dorado.com/wordpress-google-maps/creating-map.html",
104
- "titles" => array()
105
- ),
106
- )
107
 
108
  video_youtube_id - (type string) if your plugin has video, video's id, else null
109
  ( e.g. for https://www.youtube.com/watch?v=acaexefeP7o , youtube id is the 'acaexefeP7o' )
5
  Usage:
6
 
7
  Copy and paste wd library into your plugin folder.
8
+ add_action('init', array($this, 'init_free_users_lib'), 8);
9
+ public function init_free_users_lib() {
10
+ add_filter('tenweb_free_users_lib_path', array($this, 'tenweb_lib_path'));
11
+ }
12
+
13
+ public function tenweb_lib_path($path) {
14
+ // The version of WD Lib
15
+ $version = '1.1.0';
16
+ if (!isset($path['version']) || version_compare($path['version'], $version) === -1) {
17
+ $path['version'] = $version;
18
+ $path['path'] = $this->plugin_dir;
19
+ }
20
+ return $path;
21
+ }
22
+
23
+ In your plugin main file check if library main TenWebLib class doesn't exist, include it
24
+ if (!class_exists("TenWebLib")) {
25
+ $plugin_dir = apply_filters('tenweb_free_users_lib_path', array('version' => '1.1.0', 'path' => $this->plugin_dir));
26
+ require_once($plugin_dir['path'] . '/wd/start.php');
27
+ }
28
 
29
  Then call dorado_web_init($options) function.
30
  $options = array (
47
  ),
48
  ...
49
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
50
  "video_youtube_id" => "your plugin youtube video id", // e.g. https://www.youtube.com/watch?v=acaexefeP7o youtube id is the acaexefeP7o
51
+ "plugin_wd_url" => "https://10web.io/plugins/your plugin",
52
  "plugin_wd_demo_link" => "http://wpdemo.web-dorado.com/your plugin",
53
  "plugin_wd_addons_link" => "https://web-dorado.com/products/your plugin addons",
54
  "after_subscribe" => "after subsribe page", // this can be plagin overview page or set up page admin.php?page=overview_YOUR_PREFIX
87
  ....
88
  )
89
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
90
 
91
  video_youtube_id - (type string) if your plugin has video, video's id, else null
92
  ( e.g. for https://www.youtube.com/watch?v=acaexefeP7o , youtube id is the 'acaexefeP7o' )
wd/assets/css/deactivate_popup.css CHANGED
@@ -1,8 +1,4 @@
1
- .wd-bwg-reasons:nth-child(3) {
2
- display: none;
3
- }
4
-
5
- .wd-opacity{
6
  position: fixed;
7
  top: 0px;
8
  bottom: 0px;
@@ -14,7 +10,7 @@
14
  display: none;
15
  }
16
 
17
- .wd-deactivate-popup{
18
  position: fixed;
19
  top: 0px;
20
  bottom: 0px;
@@ -30,24 +26,24 @@
30
  }
31
 
32
 
33
- .wd-deactivate-popup-header{
34
  border-bottom: 1px solid #ccc;
35
  padding: 18px 40px;
36
  font-size: 16px;
37
  background: rgba(221, 221, 221, 0.14);
38
  }
39
- .wd-deactivate-popup-body{
40
  padding: 20px 40px;
41
  border-bottom: 1px solid #ccc;
42
  }
43
- .wd-deactivate-popup-body input[type=text]{
44
  width: 220px;
45
  }
46
- .wd-deactivate-popup-body textarea{
47
  width: 100%;
48
  }
49
 
50
- .wd-btns{
51
  position: absolute;
52
  bottom: 19px;
53
  right: 19px
@@ -57,19 +53,23 @@
57
  margin-top: 20px;
58
  }
59
 
60
- .wd-additional-active{
61
  background: rgba(204, 204, 204, 0.18);
62
  padding: 15px;
63
  margin: 14px 0px 5px;
64
  }
65
- .wd-popup-active1{
66
- height: 523px !important;
67
  }
68
 
69
- .wd-popup-active2{
70
  height: 426px !important
71
  }
72
- .wd-deactivate-popup-opacity{
 
 
 
 
73
  width: 100%;
74
  height: 100%;
75
  background: #D9D9D9;
@@ -79,7 +79,7 @@
79
  display: none;
80
  }
81
 
82
- .wd-deactivate-popup-opacity .wd-img-loader{
83
  position: absolute;
84
  top: 0;
85
  left: 0;
@@ -87,4 +87,17 @@
87
  bottom: 0;
88
  margin: auto;
89
  z-index: 63;
 
 
 
 
 
 
 
 
 
 
 
 
 
90
  }
1
+ .tenweb-opacity{
 
 
 
 
2
  position: fixed;
3
  top: 0px;
4
  bottom: 0px;
10
  display: none;
11
  }
12
 
13
+ .tenweb-deactivate-popup{
14
  position: fixed;
15
  top: 0px;
16
  bottom: 0px;
26
  }
27
 
28
 
29
+ .tenweb-deactivate-popup-header{
30
  border-bottom: 1px solid #ccc;
31
  padding: 18px 40px;
32
  font-size: 16px;
33
  background: rgba(221, 221, 221, 0.14);
34
  }
35
+ .tenweb-deactivate-popup-body{
36
  padding: 20px 40px;
37
  border-bottom: 1px solid #ccc;
38
  }
39
+ .tenweb-deactivate-popup-body input[type=text]{
40
  width: 220px;
41
  }
42
+ .tenweb-deactivate-popup-body textarea{
43
  width: 100%;
44
  }
45
 
46
+ .tenweb-btns{
47
  position: absolute;
48
  bottom: 19px;
49
  right: 19px
53
  margin-top: 20px;
54
  }
55
 
56
+ .tenweb-additional-active{
57
  background: rgba(204, 204, 204, 0.18);
58
  padding: 15px;
59
  margin: 14px 0px 5px;
60
  }
61
+ .tenweb-popup-active1{
62
+ height: 583px !important;
63
  }
64
 
65
+ .tenweb-popup-active2{
66
  height: 426px !important
67
  }
68
+
69
+ .tenweb-popup-active4{
70
+ height: 340px !important
71
+ }
72
+ .tenweb-deactivate-popup-opacity{
73
  width: 100%;
74
  height: 100%;
75
  background: #D9D9D9;
79
  display: none;
80
  }
81
 
82
+ .tenweb-deactivate-popup-opacity .tenweb-img-loader{
83
  position: absolute;
84
  top: 0;
85
  left: 0;
87
  bottom: 0;
88
  margin: auto;
89
  z-index: 63;
90
+ }
91
+
92
+ .tenweb-deactivate-popup-close-btn{
93
+ background-image: url(img/close.svg);
94
+ background-repeat: no-repeat;
95
+ background-size: 16px;
96
+ display: inline-block;
97
+ width: 16px;
98
+ height: 16px;
99
+ position: absolute;
100
+ top: 7px;
101
+ right: 8px;
102
+ cursor: pointer;
103
  }
wd/assets/css/img/close.svg ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="6917.521 490.293 11.414 11.414">
2
+ <defs>
3
+ <style>
4
+ .cls-1 {
5
+ fill: none;
6
+ stroke: #cbcbcb;
7
+ stroke-linecap: round;
8
+ stroke-linejoin: round;
9
+ }
10
+ </style>
11
+ </defs>
12
+ <g id="if_misc-_close__1276877_3_" data-name="if_misc-_close__1276877 (3)" transform="translate(6917.229 490)">
13
+ <line id="Line_262" data-name="Line 262" class="cls-1" y1="10" x2="10" transform="translate(1 1)"/>
14
+ <line id="Line_263" data-name="Line 263" class="cls-1" x2="10" y2="10" transform="translate(1 1)"/>
15
+ </g>
16
+ </svg>
wd/assets/css/overview.css CHANGED
@@ -1,462 +1,472 @@
1
- /* general */
2
- .wd-table{
3
- display: table;
4
- width: 100%;
5
- }
6
- .wd-cell{
7
- display: table-cell;
8
- }
9
- .wd-valign-top{
10
- vertical-align: top;
11
- }
12
- .wd-valign-middle{
13
- vertical-align: middle;
14
- }
15
- .wd-valign-bottom{
16
- vertical-align: bottom;
17
- }
18
- .wd-text-right{
19
- text-align: right;
20
- }
21
- .wd-text-center{
22
- text-align: center;
23
- }
24
- .hide{
25
  display: none;
26
  }
27
- a:focus{
28
- border: none !important;
29
- outline: none !important;
30
- box-shadow: none !important;
31
- }
32
-
33
- /*end general */
34
- .wd-video_container{
35
- text-align: center;
36
- }
37
- .overview_welcome{
38
- background: url(img/welcome_bg.png) no-repeat;
39
- margin: 21px 0px;
40
- background-size: 100% 100%;
41
- line-height: 28px;
42
- }
43
- .overview_welcome .wd-cell{
44
- padding: 15px;
45
  }
46
- .overview_welcome .wd-cell:first-child{
47
- position: relative;
48
  }
49
 
50
- .overview_welcome h2{
51
- text-transform: uppercase;
52
- font-size: 26px;
53
- margin-top: 0;
54
- margin-bottom: 15px;
55
- color: #424141;
56
- }
57
- .overview_welcome img{
58
- width: 120px;
59
- padding-right: 100px;
60
- padding-left: 25px;
61
- }
62
- .overview_wrap{
63
- width: 935px;
64
- background: #fff;
65
- }
66
- .overview_welcome .overview_welcome_text{
67
- font-size: 15px;
68
- color: #424141;
69
- }
70
- .overview_tabs:after, .deals_content:after, .deal_desc_footer:after{
71
- content: "";
72
- display: table;
73
- clear: both;
74
- }
75
- .overview_tabs li{
76
- float: left;
77
- width: 16.666%;
78
- }
79
-
80
- .overview_tabs li a{
81
- text-decoration: none !important;
82
- color: #000;
83
- background: #D6D6D6;
84
- background: -webkit-linear-gradient(#D6D6D6, #D7D7D7, #D6D6D6); /* For Safari 5.1 to 6.0 */
85
- background: -o-linear-gradient(#D6D6D6, #D7D7D7, #D6D6D6); /* For Opera 11.1 to 12.0 */
86
- background: -moz-linear-gradient(#D6D6D6, #D7D7D7, #D6D6D6); /* For Firefox 3.6 to 15 */
87
- background: linear-gradient(#D6D6D6, #D7D7D7, #D6D6D6); /* Standard syntax */
88
- text-transform: uppercase;
89
- display: block;
90
- padding: 7px 10px;
91
- text-align: center;
92
- font-weight: bold;
93
- border-top: 4px solid #F1F1F1;
94
- position: relative;
95
- top: -4px;
96
- }
97
- .overview_tabs li a:hover,.overview_tabs li a:active, .overview_tabs li a:focus, .overview_tab_active{
98
- background: #fff !important;
99
- border-top: 4px solid #2A495F !important;
100
-
101
- }
102
- #welcome, #user_guide, #support, .deals_content{
103
- padding: 15px 10px;
104
- background: #fff;
105
- }
106
- .plugin_feature_title{
107
- font-size: 19px;
108
- }
109
- .more_features_wrap{
110
- margin-top: 25px;
111
- text-align: right;
112
- }
113
- .more_features, .more_features:hover, .more_features:focus{
114
- color: #fff;
115
- background: #00384F;
116
- padding: 3px 15px;
117
- text-decoration: none;
118
- }
119
- .user_guide_item{
120
- margin-bottom: 19px;
121
  }
122
- .user_guide_title, .user_guide_title:hover, .user_guide_title:focus{
123
- font-size: 16px;
124
- color: #192D3B;
125
- font-weight: bold;
126
- margin-bottom: 5px;
127
- text-decoration: none;
128
- }
129
- .user_guide_titles, .user_guide_titles:hover, .user_guide_titles:focus{
130
- color: #192D3B;
131
- text-decoration: none;
132
- }
133
- .user_guide_demo, .user_guide_plugin, .user_guide_support_forum, .user_guide_addons, .user_guide_faq,
134
- .user_guide_demo:hover, .user_guide_plugin:hover, .user_guide_support_forum:hover, .user_guide_addons:hover, .user_guide_faq:hover{
135
- background-color: #F5F5F5;
136
  background-repeat: no-repeat;
137
- background-position: right -4px center;
138
- border-top-left-radius: 25px;
139
- border-bottom-left-radius: 25px;
140
- padding: 3px 23px 3px 16px;
141
- width: 144px;
142
- font-weight: bold;
143
- text-transform: uppercase;
144
- color: #192D3B;
145
- margin-bottom: 7px;
146
- display: block;
147
- text-decoration: none;
148
  }
149
- .user_guide_demo{
150
- background-image: url(img/ug-icon-1.png);
151
  }
152
- .user_guide_plugin{
153
- background-image: url(img/ug-icon-2.png);
 
154
  }
155
- .user_guide_support_forum{
156
- background-image: url(img/ug-icon-3.png);
 
157
  }
158
- .user_guide_addons{
159
- background-image: url(img/ug-icon-4.png);
160
  }
161
- .user_guide_faq{
162
- background-image: url(img/ug-icon-5.png);
 
 
163
  }
164
-
165
- #support .wd-support-main{
166
- width: 800px;
167
- margin: 0 auto;
168
- font-size: 16px;
169
- text-align: center;
170
- margin-bottom: 15px;
171
-
172
- }
173
- .wd-overview-site-deatils{
174
- width: 800px;
175
- background: #FBFBFB;
176
- padding: 10px;
177
- margin: 0 auto;
178
- }
179
- .wd-overview-site-deatils h2, .wd-overview-site-deatils p{
180
- text-align: center;
181
- }
182
- .wd-overview-site-deatils p{
183
- font-size: 16px;
184
- }
185
- .contact_us, .contact_us:hover, .contact_us:focus{
186
- display: block;
187
- background: #27475D;
188
- color: #fff;
189
- text-decoration: none;
190
- width: 173px;
191
- padding: 8px 0px;
192
- text-align: center;
193
- margin-bottom: 5px;
194
- font-size: 16px;
195
- margin-left: 8px;
196
- border: 1px solid #B7B7B7;
197
  text-transform: uppercase;
 
 
 
 
 
198
  }
199
-
200
- .support_email{
201
- color: #F47A31;
202
- }
203
- .wd-site-deatils{
204
- padding: 23px;
205
- background: #f1f1f1;
206
- box-sizing: border-box;
207
  }
208
- .wd-site-deatils textarea{
209
- width: 100%;
210
- }
211
- .contact_us{
212
- margin-left: auto !important;
213
- margin-right: auto;
214
- margin-top: 10px;
215
- }
216
- #wd-copy{
217
- display: block;
218
- background: #27475D;
219
- color: #fff;
220
- padding: 5px 8px;
221
- text-align: center;
222
- margin-bottom: 5px;
223
- font-size: 14px;
224
- border: 1px solid #B7B7B7;
225
- cursor: pointer;
226
- }
227
- #plugins{
228
- padding-bottom: 15px;
229
- background: #fff;
230
  }
231
 
232
- .deals_header_plugins{
233
- background: url(img/plugins_header_bg.png) #fff no-repeat;
234
- }
235
- .deals_header_themes{
236
- background: url(img/themes_headrer_bg.png) #fff no-repeat;
 
 
 
 
 
 
 
 
 
 
 
237
  }
238
- .deals_header{
239
- background-size: cover;
240
- height: 241px;
241
  }
242
- .deals_header .wd-table .wd-cell{
243
- position: relative;
 
 
 
 
 
244
  }
245
- .deals_header_plugins .wd-table .wd-cell{
246
- padding: 27px 10px 10px;
247
  }
248
- .deals_header_themes .wd-table .wd-cell{
249
- padding: 0px 10px 10px;
250
  }
251
- .deals_header_plugins .wd-table .wd-cell:first-child{
252
- padding-left: 23px;
253
- width: 30%;
 
254
  }
255
- .deals_header_themes .wd-table .wd-cell:first-child{
256
- padding-left: 23px;
257
- width: 36%;
 
 
 
 
 
258
  }
259
- .deals_header_themes .wd-table{
260
- height: 100%
261
  }
262
-
263
- .titles_wrap{
264
  display: inline-block;
 
265
  }
266
- .deals_main_title, .deals_secondary_title{
267
- color: #00425A;
268
- font-weight: bold;
269
- line-height: 55px;
270
- text-align: center;
271
  text-transform: uppercase;
 
272
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
273
 
274
- .deals_main_title{
275
- font-size: 39px;
276
- }
277
- .deals_secondary_title{
278
- font-size: 30px;
279
  }
 
 
 
280
 
281
- .higlight{
282
- color: #E5682E;
 
283
  }
 
 
 
284
 
285
- .deals_save{
286
- position: absolute;
287
- right: 87px;
288
- -webkit-transform: rotate(-27deg);
289
- transform: rotate(-30deg);
290
- font-weight: bold;
291
- font-size: 39px;
292
- color: #E5682E;
293
- text-transform: uppercase;
294
- }
295
- .deals_header_plugins .deals_save{
296
- bottom: 37px;
297
- }
298
- .deals_header_themes .deals_save{
299
- bottom: 76px;
300
- }
301
- .deal_block{
302
- width: 31.2%;
303
- display: inline-block;
304
- vertical-align: top;
305
- margin: 5px;
306
- }
307
- .deal_title{
308
- text-align: center;
309
- text-transform: uppercase;
310
- font-size: 20px;
311
- background: #FAFAFA;
312
- padding: 10px 5px;
313
- line-height: 23px;
314
  }
315
- .deal_title a, .deal_title a:hover, .deal_title a:focus{
316
- text-decoration: none !important;
317
- color: #000 !important;
318
- }
319
- .deal_desc{
320
- background: #F5F5F5;
321
- padding: 10px 5px;
322
- }
323
- .deal_desc p{
324
- margin-bottom: 15px;
325
  }
 
 
 
326
 
327
- .deal_desc_footer .downloads{
328
- float: left;
 
329
  }
330
- .deal_desc_footer .download_btn{
331
- /*float: right;*/
332
- margin-top: 10px;
333
- text-align: center;
 
 
 
334
  }
335
- .deal_desc_footer .downloads .spans span:first-child{
336
- background: #26455A;
337
- color: #fff;
338
  text-transform: uppercase;
339
- padding: 5px;
 
 
 
 
340
  display: inline-block;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
341
  }
342
- .deal_desc_footer .downloads .spans span:last-child{
343
- background: #fff;
344
- padding: 5px;
345
- border-top-right-radius: 25px;
346
- border-bottom-right-radius: 25px;
347
- margin-left: -3px;
348
  }
349
-
350
- .download_btn a, .download_btn a:hover, .download_btn a:focus{
351
- color: #fff !important;
352
- background: #E97025;
353
- text-decoration: none;
354
- padding: 4px 16px;
355
- display: inline-block;
356
- margin-top: 10px;
357
- border-radius: 13px;
358
- text-transform: uppercase;
359
  }
360
 
361
- .stars-container {
362
- position: relative;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
363
  display: inline-block;
364
- color: transparent;
365
- font-size: 21px;
366
- }
367
-
368
- .stars-container:before {
369
- position: absolute;
370
- top: 0;
371
- left: 0;
372
- content: '★★★★★';
373
- color: #F4AB7F;
374
- }
375
-
376
- .stars-container:after {
377
- position: absolute;
378
- top: 0;
379
- left: 0;
380
- content: '★★★★★';
381
- color: #F4762A;
382
- overflow: hidden;
383
  }
384
 
385
- .get_all_deals{
386
- margin: 15px 0px;
387
- text-align: center;
388
- }
389
- .get_all_deals a, .get_all_deals a:hover, .get_all_deals a:active, .get_all_deals a:focus {
390
- color: #fff !important;
391
- background: #E97025;
392
- text-decoration: none;
393
- padding: 8px 21px;
394
- display: inline-block;
395
- margin-top: 10px;
396
  text-transform: uppercase;
397
- border: 2px solid #D2631E;
398
- font-size: 21px;
399
- }
400
-
401
- #themes{
402
- border-top: 35px solid #F1F1F1;
403
- padding-bottom: 15px;
404
- }
405
-
406
- .theme_block{
407
- width: 48%;
408
- margin: 5px;
409
- border: 1px solid #ECE9E9;
410
- float: left;
411
  }
412
- .theme_block a, .theme_block a:hover, .theme_block a:focus{
413
- display: block;
414
- text-decoration: none !important;
415
- background: #F7F7F7;
416
- color: #000 !important;
417
- padding: 5px;
 
 
 
418
  }
419
-
420
- /* noteices */
421
- .notice_wrap{
422
- padding: 15px;
423
- border: 1px solid #C4C4C4;
424
- width: 98%;
425
- margin: 10px auto;
426
- box-sizing: border-box;
427
-
428
  }
429
- .notice_wrap .notice_title, .notice_wrap .notice_title:hover, .notice_wrap .notice_title:focus{
430
- color: #E5682E !important;
431
- text-decoration: none;
432
- margin-bottom: 17px;
433
- font-size: 20px;
434
- display: block;
435
  }
436
-
437
- .notice_wrap .notice_txt{
438
- font-size: 15px;
439
  }
440
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
441
 
442
- .wd-tour{
443
- text-align: right;
444
- }
445
- .wd-tour-btn, .wd-tour-btn:hover, .wd-tour-btn:focus{
446
- background: #F47629;
447
- color: #fff;
448
- text-decoration: none;
449
- padding: 5px;
450
- display: inline-block;
451
- font-size: 16px;
452
- }
453
-
454
- .wd-start-using-button .button{
455
- margin-left: 7px;
456
- margin-top: 7px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
457
  }
458
-
459
- .wd-start-using-button{
460
- margin-right:10px;
461
- float: right;
462
- }
1
+ #wpfooter {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  display: none;
3
  }
4
+ #wpbody-content > div:not(.tenweb_overview){
5
+ display:none;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6
  }
7
+ #wpbody-content {
8
+ padding-bottom: 0;
9
  }
10
 
11
+ .tenweb_overview .tenweb_header{
12
+ background:url(../img/slide-1366.jpg);
13
+ background-size: cover;
14
+ background-repeat: no-repeat;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15
  }
16
+ .tenweb_overview .tenweb_footer.without_demo,
17
+ .tenweb_overview .tenweb_how_it_works{
18
+ background:url(../img/how_it_works.png);
19
+ background-size: cover;
 
 
 
 
 
 
 
 
 
 
20
  background-repeat: no-repeat;
 
 
 
 
 
 
 
 
 
 
 
21
  }
22
+ .tenweb_overview {
23
+ margin-left: -20px;
24
  }
25
+ .tenweb_overview .tenweb_plugin_features,
26
+ .tenweb_overview .tenweb_footer{
27
+ background:#ffffff;
28
  }
29
+ .tenweb_overview .tenweb_plugin_features *,
30
+ .tenweb_overview .tenweb_footer *{
31
+ color:#2c3144;
32
  }
33
+ .tenweb_overview .tenweb_how_it_works .container{
34
+ padding:60px 0 52px;
35
  }
36
+ .tenweb_overview .tenweb_footer.without_demo *,
37
+ .tenweb_overview .tenweb_how_it_works *,
38
+ .tenweb_overview .tenweb_header *{
39
+ color:#fff;
40
  }
41
+ .tenweb_overview h2 {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
42
  text-transform: uppercase;
43
+ font-size: 24px;
44
+ letter-spacing: 1px;
45
+ margin:0;
46
+ padding: 0 0 20px;
47
+ line-height: 1.4em;
48
  }
49
+ h3.more_features {
50
+ font-size: 21px;
51
+ text-transform: uppercase;
 
 
 
 
 
52
  }
53
+ img.plugin_logo {
54
+ margin-bottom: 18px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
55
  }
56
 
57
+ .tenweb_overview .and {
58
+ font-size: 50px;
59
+ margin: 17px 14px 19px;
60
+ line-height: 1;
61
+ font-weight: lighter;
62
+ }
63
+ .tenweb_overview .and.circle {
64
+ font-size: 50px;
65
+ margin: 15px 14px;
66
+ line-height: 1.3;
67
+ font-weight: lighter;
68
+ display: inline-block;
69
+ width: 70px;
70
+ height: 70px;
71
+ box-shadow: 0 0 8px rgba(0,0,0,.2);
72
+ border-radius: 35px;
73
  }
74
+ .tenweb_plugin_features .container {
75
+ padding: 30px 0;
 
76
  }
77
+ .tenweb_overview a.more {
78
+ text-transform: uppercase;
79
+ letter-spacing: 1px;
80
+ font-size: 16px;
81
+ line-height: 1;
82
+ display: inline-block;
83
+ text-decoration: none;
84
  }
85
+ .tenweb_overview a.more:not(.blue) {
86
+ margin-top: 23px;
87
  }
88
+ .tenweb_overview a.more.blue {
89
+ color:#397cf1;
90
  }
91
+ .tenweb_clear:after{
92
+ content:"";
93
+ display:table;
94
+ clear:both;
95
  }
96
+ .tenweb_overview .container{
97
+ width:1190px;
98
+ max-width:100%;
99
+ margin:0 auto;
100
+ text-align:center;
101
+ box-sizing: border-box;
102
+ -webkit-box-sizing: border-box;
103
+ -moz-box-sizing: border-box;
104
  }
105
+ .plan_features.tenweb_clear {
106
+ font-size: 0;
107
  }
108
+ .tenweb_overview .plan_feature {
109
+ width: 24%;
110
  display: inline-block;
111
+ margin: 0 .5% 30px;
112
  }
113
+ .tenweb_overview .plan_feature h3 {
114
+ font-size: 17px;
 
 
 
115
  text-transform: uppercase;
116
+ margin: 18px 0;
117
  }
118
+ .tenweb_overview .plan_feature p {
119
+ font-size: 15px;
120
+ overflow: hidden;
121
+ display: -webkit-box;
122
+ -webkit-line-clamp: 3;
123
+ -webkit-box-orient: vertical;
124
+ text-overflow: ellipsis;
125
+ line-height: 1.4em;
126
+ }
127
+ .tenweb_overview .plan_feature .logo {
128
+ background: url(../img/header.svg);
129
+ margin:0 auto;
130
+ }
131
+ .tenweb_overview .plan_feature.image_optimizer .logo {
132
+ background-size: 191px;
133
+ background-position: 0px -55px;
134
+ width: 68px;
135
+ height: 51px;
136
+ margin: 0 auto 35px;
137
+ }
138
+ .tenweb_overview .plan_feature.pro_plugins .logo {
139
+ background-size: 194px;
140
+ background-position: 0px -118px;
141
+ width: 55px;
142
+ height: 68px;
143
+ }
144
+ .tenweb_overview .plan_feature.dashboard .logo {
145
+ background-size: 195px;
146
+ background-position: 0px -196px;
147
 
148
+ width: 68px;
149
+ height: 56px;
150
+ margin: 0 auto 30px;
 
 
151
  }
152
+ .tenweb_overview .plan_feature.pro_themes .logo {
153
+ background-size: 190px;
154
+ background-position: 0px -254px;
155
 
156
+ width: 57px;
157
+ height: 58px;
158
+ margin: 0 auto 28px;
159
  }
160
+ .tenweb_overview .plan_feature.seo .logo {
161
+ background-size: 200px;
162
+ background-position: 0px -338px;
163
 
164
+ width: 61px;
165
+ height: 63px;
166
+ margin: 0 auto 23px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
167
  }
168
+ .tenweb_overview .plan_feature.security .logo {
169
+ background-size: 194px;
170
+ background-position: 0px -398px;
171
+
172
+ width: 55px;
173
+ height: 62px;
174
+ margin: 0 auto 24px;
 
 
 
175
  }
176
+ .tenweb_overview .plan_feature.backup .logo {
177
+ background-size: 250px;
178
+ background-position: 0px -602px;
179
 
180
+ width: 100px;
181
+ height: 60px;
182
+ margin: 0 auto 26px;
183
  }
184
+ .tenweb_overview .plan_feature.hosting .logo {
185
+ background-size: 196px;
186
+ background-position: 0px -527px;
187
+
188
+ width: 64px;
189
+ height: 64px;
190
+ margin: 0 auto 22px;
191
  }
192
+ .tenweb_overview a.button {
193
+ background: #367bf2;
194
+ color: #ffffff;
195
  text-transform: uppercase;
196
+ letter-spacing: 1px;
197
+ font-size: 16px;
198
+ padding: 16px 30px;
199
+ line-height: 1;
200
+ border-radius: 2px;
201
  display: inline-block;
202
+ border: 0 !important;
203
+ box-shadow: none;
204
+ height: auto;
205
+ }
206
+ .tenweb_overview a.button.transparent {
207
+ background: transparent !important;
208
+ color: #ffffff;
209
+ border: 1px solid #ffffff !important;
210
+ width: 160px;
211
+ margin: 0 5px;
212
+ }
213
+ .tenweb_overview a.button:hover {
214
+ background: #367bf2;
215
+ color: #ffffff;
216
+ box-shadow: 2px 2px 8px rgba(0,0,0,0.2);
217
+ }
218
+ .tenweb_overview .tenweb_header .container_top a.button {
219
+ font-size: 18px;
220
+ padding: 13px 30px;
221
+ display:table-cell;
222
+ }
223
+ .tenweb_overview .tenweb_logo {
224
+ float: left;
225
+ width: 197px;
226
  }
227
+ .tenweb_overview .tenweb_logo a div {
228
+ background: url(../img/header.svg);
229
+ height: 53px;
230
+ background-size: 196px;
231
+ background-position: 0 0;
232
+ background-repeat: no-repeat;
233
  }
234
+ .tenweb_overview .tenweb_header_right {
235
+ float: right;
236
+ text-align: right;
237
+ display: table;
 
 
 
 
 
 
238
  }
239
 
240
+ .tenweb_overview .inline-block.header_text {
241
+ text-transform: uppercase;
242
+ font-size: 15px;
243
+ line-height: 1.5;
244
+ padding-right: 10px;
245
+ letter-spacing: 0;
246
+ margin-top: 2px;
247
+ width: calc(100% - 180px);
248
+ display:table-cell;
249
+ vertical-align:middle;
250
+ }
251
+ .tenweb_overview .tenweb_header_divider {
252
+ height:18px;
253
+ background:#fff;
254
+ }
255
+ .tenweb_overview .container_top {
256
+ padding:24px 15px;
257
+ }
258
+ .tenweb_overview .container_bottom {
259
+ padding: 50px 0 40px;
260
+ }
261
+ .tenweb_overview .plugin_features.tenweb_clear {
262
+ margin-top: 40px;
263
+ }
264
+ .plugin_features .plugin_feature_logo{
265
+ height:54px;
266
+ }
267
+ .plugin_features .plugin_feature{
268
+ width: 31%;
269
+ margin: 0 1% 20px;
270
+ /*float: left;*/
271
  display: inline-block;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
272
  }
273
 
274
+ .plugin_features .plugin_feature h3 {
275
+ font-size: 18px;
 
 
 
 
 
 
 
 
 
276
  text-transform: uppercase;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
277
  }
278
+ .plugin_features .plugin_feature p {
279
+ font-size: 15px;
280
+ overflow: hidden;
281
+ display: -webkit-box;
282
+ -webkit-line-clamp: 3;
283
+ -webkit-box-orient: vertical;
284
+ text-overflow: ellipsis;
285
+ line-height: 1.4em;
286
+ min-height: 63px;
287
  }
288
+ .tenweb_how_it_works a.button {
289
+ margin-top: 12px;
 
 
 
 
 
 
 
290
  }
291
+ .plugin_features .plugin_feature img{
292
+ width:54px;
293
+ max-height: 100%;
 
 
 
294
  }
295
+ .tenweb_footer {
296
+ padding: 70px 0 80px;
 
297
  }
298
 
299
+ .tenweb_footer p {
300
+ font-size: 22px;
301
+ font-weight: lighter;
302
+ margin: 8px 0 20px;
303
+ }
304
+ .tenweb_footer h2 {
305
+ font-size: 31px;
306
+ }
307
+ .tenweb_overview img.plugin_logo {
308
+ width: 100px;
309
+ }
310
+ @media only screen and (min-width: 1620px){
311
+ .plugin_features .plugin_feature p {
312
+ font-size: 17px;
313
+ }
314
+ .tenweb_overview img.plugin_logo {
315
+ width: 130px;
316
+ }
317
+ .tenweb_overview .container{
318
+ width:1600px;
319
+ }
320
+ .tenweb_overview .inline-block.header_text{
321
+ font-size: 19px;
322
+ line-height: 1.2;
323
+ padding-right: 18px;
324
+ letter-spacing: .8px;
325
+ width: calc(100% - 193px);
326
+ margin-top: 0;
327
+ }
328
+ .tenweb_overview h2 {
329
+ font-size: 28px;
330
+ padding: 10px 0 20px;
331
+ }
332
+ .tenweb_overview .and {
333
+ font-size: 60px;
334
+ margin: 18px 14px;
335
+ }
336
+ .tenweb_overview .and.circle {
337
+ font-size: 60px;
338
+ margin: 20px 14px;
339
+ line-height: 1.4;
340
+ width: 90px;
341
+ height: 90px;
342
+ border-radius: 45px;
343
+ }
344
+ .tenweb_overview .plan_feature {
345
+ width: 23%;
346
+ display:inline-block;
347
+ margin: 0 1% 40px;
348
+ }
349
+ .tenweb_overview .plan_feature h3 {
350
+ font-size:20px;
351
+ }
352
+ .tenweb_overview .plan_feature p {
353
+ height: 72px;
354
+ font-size:16px;
355
+ }
356
+ .plugin_features .plugin_feature p{
357
+ font-size:18px;
358
+ height: 75px;
359
+ }
360
+ .plugin_features .plugin_feature h3{
361
+ font-size:20px;
362
+ }
363
+ .tenweb_footer h2{
364
+ font-size:37px;
365
+ }
366
+ .tenweb_footer p {
367
+ font-size: 24px;
368
+ }
369
+ .tenweb_overview .container_top {
370
+ padding: 29px 0;
371
+ }
372
+ }
373
+ @media only screen and (max-width: 1320px){
374
+ .plugin_features .plugin_feature,
375
+ .tenweb_overview .plan_feature {
376
+ width: 46%;
377
+ display: inline-block;
378
+ margin: 0 1.5% 10px;
379
+ }
380
+ .tenweb_footer h2 {
381
+ font-size: 26px;
382
+ }
383
+ .tenweb_footer p {
384
+ font-size: 20px;
385
+ line-height: 1.4em;
386
+ }
387
+ .tenweb_overview .container {
388
+ width: 99%;
389
+ }
390
+ .tenweb_overview .inline-block.header_text {
391
+ text-transform: uppercase;
392
+ font-size: 13px;
393
+ }
394
+ }
395
+ @media only screen and (max-width: 1200px){
396
 
397
+ .tenweb_overview .tenweb_header_right {
398
+ float: right;
399
+ text-align: right;
400
+ display: table;
401
+ width: calc(100% - 267px);
402
+ }
403
+ }
404
+ @media only screen and (max-width: 840px){
405
+ .tenweb_overview .inline-block.header_text {
406
+ display:block;
407
+ padding-right: 0;
408
+ margin-top: 10px;
409
+ width: 100%;
410
+ clear:both;
411
+ }
412
+ .tenweb_overview .tenweb_header .container_top a.button {
413
+ display:inline-block;
414
+ }
415
+ .tenweb_overview .tenweb_logo a div {
416
+ height: 37px;
417
+ background-size: 145px;
418
+ background-position: 0 0px;
419
+ }
420
+ .tenweb_overview .tenweb_logo {
421
+ float: left;
422
+ width: 150px;
423
+ }
424
+ .tenweb_overview {
425
+ margin-left: -10px;
426
+ }
427
+ .plugin_features .plugin_feature,
428
+ .tenweb_overview .plan_feature {
429
+ width: 88%;
430
+ margin: 0 auto 10px;
431
+ float: none;
432
+ }
433
+ .tenweb_overview .plan_feature p,
434
+ .plugin_features .plugin_feature p {
435
+ overflow: visible;
436
+ -webkit-line-clamp: none;
437
+ height: auto;
438
+ }
439
+ .tenweb_footer h2 {
440
+ font-size: 23px;
441
+ }
442
+ .tenweb_footer p {
443
+ font-size: 18px;
444
+ line-height: 1.4em;
445
+ }
446
+ .tenweb_overview .plugin_features.tenweb_clear {
447
+ margin-top: 20px;
448
+ }
449
+ .tenweb_footer {
450
+ padding: 50px 0 60px;
451
+ }
452
+ .tenweb_overview .tenweb_logo {
453
+ float: none;
454
+ width: 150px;
455
+ margin: 0 auto 10px;
456
+ }
457
+ .tenweb_overview .tenweb_header_right {
458
+ float: none;
459
+ width: 100%;
460
+ text-align: center;
461
+ }
462
+ .tenweb_overview .tenweb_header_right a.button {
463
+ float: none;
464
+ }
465
+ .tenweb_overview .inline-block.header_text {
466
+ float: none;
467
+ margin-top: 10px;
468
+ }
469
+ .tenweb_overview h2 {
470
+ font-size: 21px;
471
+ }
472
  }
 
 
 
 
 
wd/assets/css/subscribe.css CHANGED
@@ -1,114 +1,210 @@
1
- body {
2
- color: #444;
3
- font-family: "Open Sans",sans-serif;
4
- line-height: 1.4em;
5
- min-width: 600px;
6
  }
7
-
8
- .wd-subscribe{
9
- background: #fff;
10
- border: 2px solid #E2E5EC;
11
- width: 55%;
12
- margin-top: 40px;
13
- }
14
- .wd-subscribe-content{
15
- padding: 30px 92px;
16
  }
17
- .imgs{
18
- text-align: center;
19
  }
20
- .imgs img{
21
- vertical-align: middle;
22
- width: 125px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
23
  }
24
- .imgs span {
25
- color: #21759B;
26
- font-weight: bold;
27
- font-size: 52px;
28
- padding: 0px 28px;
29
  }
30
- .texts{
31
- margin-top: 10px;
32
- margin-bottom: 25px;
 
 
33
  }
34
 
35
- .btns .allow_and_continue, .btns .allow_and_continue:hover, .btns .allow_and_continue:focus{
36
- display: inline-block;
37
- background: url(img/allow&continue.png) no-repeat;
38
- width: 279px;
39
- height: 61px;
40
- border: none;
 
 
 
 
41
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
42
  }
43
- .btns .skip, .btns .skip:hover, .btns .skip:focus{
44
- margin-left: 66px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
45
  display: inline-block;
46
- background: url(img/skip.png) no-repeat;
47
- width: 76px;
48
- height: 59px;
49
  }
50
- .permissions{
51
- color: #525252 !important;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
52
  }
53
- .list{
54
- margin-top: 15px;
 
 
 
 
 
 
 
 
 
55
  display:none;
56
  }
57
- .list_item{
58
- display: table;
59
- margin-bottom: 15px;
60
  }
61
- .list_item:after{
62
- content: "";
63
- clear: both;
64
- display: table;
65
  }
66
- .list_img_wrap{
67
- float: left;
 
68
  }
69
- .list_img_wrap img{
70
- width: 27px;
 
 
 
71
  }
72
- .list_text_wrap{
73
- margin-left: 33px;
74
- float: right;
75
  }
76
- .list_title, .list_text{
77
- color: #525252;
78
- font-size: 13px;
79
  }
80
- .wd_loader{
81
- vertical-align: top;
82
- width: 30px;
83
- margin-top: 11px;
84
- visibility: hidden;
85
  }
86
- .wd-subscribe-footer{
87
- text-align: center;
88
- padding: 4px 0px;
89
- border-top: 1px solid rgba(204, 204, 204, 0.52);
90
- }
91
- .wd-footer-menu {
92
- display: inline-block;
93
- list-style-type: none;
94
- padding: 0;
95
- margin: 0;
96
- }
97
- .wd-footer-menu li{
98
- float: left;
99
- }
100
- .wd-footer-menu li, .wd-footer-menu li a{
101
- color: rgba(62, 60, 60, 0.57) !important;
102
- text-decoration: none;
103
- font-size: 12px;
104
- padding: 2px;
105
- font-weight: bold;
106
- display: inline-block;
107
- vertical-align: middle;
108
  }
109
 
110
-
111
- .wd-footer-menu li a:hover{
112
- color: rgba(62, 60, 60, 0.57) !important;
113
- text-decoration: underline;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
114
  }
1
+ #wpfooter {
2
+ display: none;
 
 
 
3
  }
4
+ #wpbody-content > div:not(.tenweb_subscribe){
5
+ display:none;
 
 
 
 
 
 
 
6
  }
7
+ #wpbody-content {
8
+ padding-bottom: 0;
9
  }
10
+
11
+
12
+ .tenweb_clear:after{
13
+ content:"";
14
+ display:table;
15
+ clear:both;
16
+ }
17
+ .tenweb_subscribe a.button {
18
+ background: #367bf2;
19
+ color: #ffffff;
20
+ text-transform: uppercase;
21
+ letter-spacing: 1px;
22
+ font-size: 16px;
23
+ padding: 16px 30px;
24
+ line-height: 1;
25
+ border-radius: 2px;
26
+ display: inline-block;
27
+ border: 0 !important;
28
+ box-shadow: none;
29
+ height: auto;
30
  }
31
+ .tenweb_subscribe a:focus {
32
+ box-shadow:none;
 
 
 
33
  }
34
+ .tenweb_subscribe a.button:active,
35
+ .tenweb_subscribe a.button:hover {
36
+ background: #367bf2;
37
+ color: #ffffff;
38
+ box-shadow: 2px 2px 8px rgba(0,0,0,0.2);
39
  }
40
 
41
+ .tenweb_subscribe a.more {
42
+ text-transform: uppercase;
43
+ letter-spacing: 1px;
44
+ font-size: 14px;
45
+ line-height: 1;
46
+ display: block;
47
+ text-decoration: none;
48
+ color: #4e4e4e;
49
+ margin-top: 9px;
50
+ }
51
 
52
+ .wd_loader{
53
+ vertical-align: top;
54
+ width: 30px;
55
+ margin-top: 11px;
56
+ display: none;
57
+ }
58
+ .tenweb_subscribe {
59
+ background: #ffffff;
60
+ box-shadow: 0 0 10px rgba(0,0,0,0.2);
61
+ width: calc(100% - 20px);
62
+ padding: 105px 20px 0;
63
+ margin: 20px 0 0 0;
64
+ box-sizing: border-box;
65
+ -webkit-box-sizing: border-box;
66
+ -moz-box-sizing: border-box;
67
+ text-align: center;
68
  }
69
+ .tenweb_subscribe .texts h2 {
70
+ font-size:28px;
71
+ text-transform: uppercase;
72
+ margin: 26px 0 16px;
73
+ }
74
+ .tenweb_subscribe .texts h5 {
75
+ font-size:18px;
76
+ text-transform: uppercase;
77
+ margin: 6px 0;
78
+ line-height: 1.4em;
79
+ }
80
+ .tenweb_subscribe .texts p {
81
+ font-size:16px;
82
+ }
83
+ .tenweb_subscribe .texts .hi_there {
84
+ width:66px;
85
+ height:103px;
86
+ background: url(../img/allow-and-continue.png) no-repeat;
87
+ margin: 0 auto;
88
+ }
89
+ .tenweb_subscribe-content{
90
+ width: 960px;
91
+ max-width: 100%;
92
+ margin: 0 auto;
93
+ }
94
+ .tenweb_subscribe .permissions {
95
+ font-size: 16px;
96
+ cursor: pointer;
97
+ margin: 10px 0 30px;
98
+ position: relative;
99
  display: inline-block;
 
 
 
100
  }
101
+ .tenweb_subscribe .permissions:after {
102
+ content: "";
103
+ position: absolute;
104
+ width: 13px;
105
+ height: 13px;
106
+ background: url(../img/allow-and-continue.png) no-repeat;
107
+ background-position: 1px -237px;
108
+ right: -19px;
109
+ top: 2px;
110
+ transition:transform .2s;
111
+ }
112
+ .tenweb_subscribe .permissions.active:after {
113
+ content: "";
114
+ transform: rotateZ(-180deg);
115
+ -webkit-transform: rotateZ(-180deg);
116
+ -moz-transform: rotateZ(-180deg);
117
+ top: 3px;
118
  }
119
+ .tenweb_subscribe .list_item {
120
+ width: 31%;
121
+ float: left;
122
+ box-shadow: 0 0 10px rgba(0,0,0,0.2);
123
+ margin-right: 3%;
124
+ padding: 20px 0;
125
+ box-sizing: border-box;
126
+ -webkit-box-sizing: border-box;
127
+ -moz-box-sizing: border-box;
128
+ }
129
+ .tenweb_subscribe .list{
130
  display:none;
131
  }
132
+ .tenweb_subscribe .list_item:last-child {
133
+ margin-right: 0;
 
134
  }
135
+ .tenweb_subscribe .list.tenweb_clear {
136
+ max-width: 100%;
137
+ width: 580px;
138
+ margin: 0 auto 28px;
139
  }
140
+ .tenweb_subscribe .list_text_wrap {
141
+ font-size: 12px;
142
+ font-weight: bold;
143
  }
144
+ .tenweb_subscribe .list_logo {
145
+ width: 36px;
146
+ height:33px;
147
+ background: url(../img/allow-and-continue.png) no-repeat;
148
+ margin:0 auto 20px;
149
  }
150
+ .tenweb_subscribe .user_info .list_logo {
151
+ background-position: 3px -110px;
 
152
  }
153
+ .tenweb_subscribe .wp_info .list_logo {
154
+ background-position: 2px -153px;
 
155
  }
156
+ .tenweb_subscribe .plugins_info .list_logo {
157
+ background-position: 6px -196px;
 
 
 
158
  }
159
+ .tenweb_subscribe-footer * {
160
+ color: #afafaf;
161
+ }
162
+ .tenweb_footer-menu a {
163
+ font-size: 12px;
164
+ text-transform: uppercase;
165
+ letter-spacing: 1px;
166
+ text-decoration: none;
167
+ }
168
+ .tenweb_footer-menu li{
169
+ display:inline-block;
170
+ margin: 0 10px;
171
+ }
172
+ ul.tenweb_footer-menu.tenweb_clear {
173
+ padding: 18px 0 15px;
174
+ line-height: 1;
175
+ border-top: 1px solid #ececec;
176
+ margin: 16px 0 0;
 
 
 
 
177
  }
178
 
179
+ .tenweb_subscribe-top-footer {
180
+ font-size: 13px;
181
+ color: #afafaf;
182
+ margin-top: 112px;
183
+ }
184
+ @media only screen and (min-width: 1620px){
185
+ .tenweb_subscribe-top-footer {
186
+ margin-top: 130px;
187
+ }
188
+ .tenweb_subscribe {
189
+ padding: 150px 20px 0;
190
+ }
191
+ }
192
+ @media only screen and (max-width: 768px){
193
+ .tenweb_subscribe {
194
+ width: calc(100% - 10px);
195
+ padding: 60px 20px 0;
196
+ }
197
+ .tenweb_subscribe-top-footer {
198
+ margin-top: 60px;
199
+ }
200
+ .tenweb_subscribe .list_item {
201
+ width: 100%;
202
+ float: none;
203
+ margin-right: 0;
204
+ padding: 20px 10px;
205
+ margin-bottom: 10px;
206
+ }
207
+ .tenweb_subscribe .list.tenweb_clear {
208
+ margin: 0 auto 15px;
209
+ }
210
  }
wd/assets/img/allow-and-continue.png ADDED
Binary file
wd/assets/img/fmc_main_plugin.png ADDED
Binary file
wd/assets/img/header.svg ADDED
@@ -0,0 +1 @@
 
1
+ <svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" width="190.51" height="655.4" viewBox="0 0 190.51 655.4"><defs><style>.cls-1{fill:#fff;}</style></defs><title>ICONS SPRITE</title><path class="cls-1" d="M35.4,147.3a20.82,20.82,0,0,1,9,2c-1-1-2-1.9-3.1-2.9.2-.2.4-.3.5-.4l10.3-10.3a2.85,2.85,0,0,0,.8-1.4,2.35,2.35,0,0,0-1.2-2.6,2.31,2.31,0,0,0-2.9.5l-9.9,9.9a7,7,0,0,0-.8,1c-3.8-3.8-7.4-7.4-11.2-11.1.1-.1.3-.2.4-.3l10.5-10.5a2.41,2.41,0,1,0-3.4-3.4l-6.3,6.3c-1.5,1.5-3,3.1-4.7,4.7-1.3-1.3-2.5-2.6-3.8-3.9l-.4.4c-2,2-4.1,4-6.1,6.1a17.89,17.89,0,0,0-4.9,17.8,47.31,47.31,0,0,0,2,5L0,164.4l5.3,5.4,10.3-10.3A22.47,22.47,0,0,1,35.4,147.3Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M34.5,149.8A16.5,16.5,0,1,0,51,166.3,16.52,16.52,0,0,0,34.5,149.8Zm0,31.6a15.1,15.1,0,1,1,15.1-15.1A15.15,15.15,0,0,1,34.5,181.4Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M29.6,165.9a2.65,2.65,0,0,0-1.9-.9,2.47,2.47,0,0,0-2.1.7,4.42,4.42,0,0,0-.8.9v-.7a5.39,5.39,0,0,1,.5-2.1,3,3,0,0,1,1.3-1.2,5.57,5.57,0,0,1,3-.3v-1h-1a4.67,4.67,0,0,0-3.7,1.4,7.11,7.11,0,0,0-1.2,4.5,6.05,6.05,0,0,0,.4,2.4,3.33,3.33,0,0,0,1.2,1.4,3.45,3.45,0,0,0,1.8.5,3.1,3.1,0,0,0,3.3-3.3A4,4,0,0,0,29.6,165.9Zm-1.1,3.9a1.68,1.68,0,0,1-1.4.6,1.9,1.9,0,0,1-1.5-.8,2.62,2.62,0,0,1-.5-1.7,1.61,1.61,0,0,1,.6-1.3,2,2,0,0,1,1.5-.6,1.68,1.68,0,0,1,1.4.6,2.46,2.46,0,0,1,.5,1.5A4.71,4.71,0,0,1,28.5,169.8Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M33,170.2a2.91,2.91,0,0,0,2.5,1.2,2.79,2.79,0,0,0,2.5-1.2,6.68,6.68,0,0,0,.8-3.9,7,7,0,0,0-.9-3.9,3.2,3.2,0,0,0-5,0,6.68,6.68,0,0,0-.8,3.9A6.59,6.59,0,0,0,33,170.2Zm.9-6.8a1.57,1.57,0,0,1,3,0,7.39,7.39,0,0,1,.4,3,7.7,7.7,0,0,1-.4,3,1.58,1.58,0,0,1-1.5,1.1,1.5,1.5,0,0,1-1.5-1.1,11.45,11.45,0,0,1,0-6Z" transform="translate(0 -0.7)"/><polygon class="cls-1" points="47.2 165.4 44.4 165.4 44.4 162.5 43.6 162.5 43.6 165.4 40.8 165.4 40.8 166.1 43.6 166.1 43.6 168.9 44.4 168.9 44.4 166.1 47.2 166.1 47.2 165.4"/><path class="cls-1" d="M33.3,247.9H10a2.89,2.89,0,0,1-2.4-1.1A32.6,32.6,0,0,1,.3,224a33.05,33.05,0,0,1,62.3-13.3A33.07,33.07,0,0,1,58.7,247a2.74,2.74,0,0,1-2.2.9Zm0-4.5H55.2a1.43,1.43,0,0,0,1.2-.6A28.53,28.53,0,0,0,27.8,198,28.58,28.58,0,0,0,5,223.4a27.78,27.78,0,0,0,5.3,19.3,1.51,1.51,0,0,0,1.4.7C18.8,243.3,26.1,243.4,33.3,243.4Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M29,233.2a3.14,3.14,0,0,0,2.9,2h0a3.17,3.17,0,0,0,2.5-1.2l.2-.3c.1-.1.2-.3.3-.4l3.1-3.8c2.1-2.5,4.2-5.1,6.3-7.6a1.57,1.57,0,0,0,0-2.2,1.61,1.61,0,0,0-1.1-.5,1.5,1.5,0,0,0-1.1.4L29.8,229.8A3.07,3.07,0,0,0,29,233.2Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M18.8,211.2a2.84,2.84,0,0,1-.9,1,1.72,1.72,0,0,1-1.4-.1,19.86,19.86,0,0,1-2.1-2,1.24,1.24,0,0,1,.1-1.7c.5-.5,1.1-.7,1.6-.3.8.7,1.6,1.5,2.4,2.3C18.7,210.6,18.7,210.8,18.8,211.2Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M52.8,209.1c-.1,1-2.4,3.3-3.3,3.2a2.1,2.1,0,0,1-1.1-.7,1.72,1.72,0,0,1,.1-1.4,9.47,9.47,0,0,1,2-2,1.69,1.69,0,0,1,1.4-.1C52.3,208.3,52.5,208.8,52.8,209.1Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M56.2,227.6H54.9a1.24,1.24,0,0,1-1.3-1.2,1.4,1.4,0,0,1,1.2-1.4,13.1,13.1,0,0,1,2.8,0,1.19,1.19,0,0,1,1.1,1.4,1.16,1.16,0,0,1-1.2,1.2Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M10.3,227.6H9.1a1.26,1.26,0,0,1-1.3-1.3A1.24,1.24,0,0,1,9,225h2.5a1.34,1.34,0,0,1,1.3,1.4,1.4,1.4,0,0,1-1.3,1.3A4.48,4.48,0,0,0,10.3,227.6Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M35,202.8V204a1.21,1.21,0,0,1-1.4,1.2,1.32,1.32,0,0,1-1.3-1.3v-2.4a1.3,1.3,0,1,1,2.6,0,6.15,6.15,0,0,1,.1,1.3Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M44.2,298.1a5.51,5.51,0,0,0-2-2.7c-.3-.3-.4-.5,0-.9a45.34,45.34,0,0,0,5-5.7,11.88,11.88,0,0,0,1.3-2.5,1.7,1.7,0,0,0-1.8-2.3,5.63,5.63,0,0,0-3,1.2l-1.2.9c-.1.1-.3.3-.5.1s0-.3.1-.4a8.23,8.23,0,0,0,1.2-2.5,3,3,0,0,0-.2-2.6,1.8,1.8,0,0,0-1.6-.9,8.09,8.09,0,0,0-3.7,1.2,13.25,13.25,0,0,0-2.5,1.6c-.2.1-.4.4-.6.1s0-.4.2-.6a10.53,10.53,0,0,0,1.7-2.9c1.2-2.9-.6-5.1-3.7-4.7a4.33,4.33,0,0,0-.5.1c-.2,0-.4.2-.5-.1s.1-.4.2-.5a5.37,5.37,0,0,0,1-1.6,2.5,2.5,0,0,0-.3-2.5,1.9,1.9,0,0,0-2.2-.8,8.79,8.79,0,0,0-3.4,1.9c-.1.1-.2.2-.3.2s-.3.3-.5.1,0-.3.1-.4c.2-.4.5-.7.7-1.1a1.2,1.2,0,0,0,0-1.5,1.1,1.1,0,0,0-1.4-.3,10.31,10.31,0,0,0-2.8,1.8,35.83,35.83,0,0,0-2.9,2.6c-.3.3-.4.2-.7,0a6.69,6.69,0,0,0-2.8-2.1l.5-.5L27.9,259a2,2,0,0,1,3.2,0l24.6,24.6a2,2,0,0,1,0,3.2L44.9,297.6A1.16,1.16,0,0,0,44.2,298.1Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M26.5,288c-4.5-4.5-9-9-13.5-13.4-.4-.4-.4-.6,0-.9a9.43,9.43,0,0,0,1-1,2,2,0,0,1,2.7,0l.3.3,24.4,24.4c1.2,1.2,1.2,2.2,0,3.3-.4.4-.7,1-1.1,1s-.8-.6-1.2-1C35,296.5,30.8,292.2,26.5,288Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M9.8,276.9a3.92,3.92,0,0,0,0,5.5c.6.7,1.3,1.3,1.9,2a12.28,12.28,0,0,1,2.3,4,4.7,4.7,0,0,1-1.3,5,18.51,18.51,0,0,1-4.8,3.5,15.92,15.92,0,0,0-6.1,4.8,6.64,6.64,0,0,0-.6,7.6,10.49,10.49,0,0,0,3,3.3,6.61,6.61,0,0,0,8.1.3,14.14,14.14,0,0,0,4.9-5.7,22.64,22.64,0,0,1,2.6-4.2c2.5-3.1,5.1-3.6,8.5-1.4a18.46,18.46,0,0,1,3.7,3.1,3.92,3.92,0,0,0,4.9.5,11.37,11.37,0,0,0,1.6-1.5c.4-.3.4-.5,0-.9L25.1,289.4,12.6,276.9c-.5-.5-.9-1.3-1.4-1.2S10.3,276.4,9.8,276.9Zm1.5,26.3a4,4,0,0,1,0,5.6,3.92,3.92,0,1,1,0-5.6Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M42,361.9a23.36,23.36,0,1,0-18.3,8.9,22.77,22.77,0,0,0,12.9-3.9L54,384.2l5.2-5.2Zm.3-14.4a18.6,18.6,0,1,1-18.6-18.6A18.69,18.69,0,0,1,42.3,347.5Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M1,403.6l-.7.1v.7C.3,417.3,3,428,8.7,437.2a46.22,46.22,0,0,0,16.2,16.1,4,4,0,0,0,2.1.7,3.68,3.68,0,0,0,2.1-.8c.6-.5,1.4-1,2-1.5.8-.6,1.6-1.1,2.4-1.8a53.31,53.31,0,0,0,17.7-27.4,62.88,62.88,0,0,0,2.3-18.2v-.7l-.7-.1c-7.8-1.4-14.9-4.9-21.8-8.4l-.1-.1c-2.7-1.4-5.8-1.2-8.9.4C14.6,399.4,8.1,402.3,1,403.6Zm29.4-4.3a80.16,80.16,0,0,0,18.4,7.5c.2.1.6.5.6.6h0c-.4,13.4-4.2,24.1-11.6,32.8a51.71,51.71,0,0,1-6.4,6c-1.1.9-2.2,1.9-3.3,2.8a1.76,1.76,0,0,1-1.3.6,2.69,2.69,0,0,1-1.6-.7A46.11,46.11,0,0,1,6.5,422.2a94.78,94.78,0,0,1-2.3-14.3c0-1.1.2-1.2.9-1.4a71.15,71.15,0,0,0,18.2-7.4A7.45,7.45,0,0,1,30.4,399.3Z" transform="translate(0 -0.7)"/><polygon class="cls-1" points="35.7 410.4 25.6 426 18.6 419.8 15.9 422.6 26.4 432.1 39 412.6 35.7 410.4"/><path class="cls-1" d="M48.5,501.7H15.1a11.9,11.9,0,1,1,0-23.8,12.22,12.22,0,0,1,5.6,1.4l1.4.8.5-1.5A17.49,17.49,0,0,1,39,467.1a17.3,17.3,0,0,1,17,13.6,24.58,24.58,0,0,1,2.8-.2A20.52,20.52,0,0,0,53.1,470,20.06,20.06,0,0,0,39,464.3a20.46,20.46,0,0,0-18.5,12A14.69,14.69,0,1,0,15,504.6H51.3C49.6,503.7,48.5,502.8,48.5,501.7Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M51.7,504.5H15.1a14.8,14.8,0,1,1,0-29.6,14,14,0,0,1,5.4,1,20.3,20.3,0,0,1,18.5-12,20.06,20.06,0,0,1,14.1,5.7,19.74,19.74,0,0,1,5.7,10.6v.1h-.1a24.58,24.58,0,0,0-2.8.2h-.1v-.1a17.3,17.3,0,0,0-33.2-2.1l-.6,1.6-1.5-.8A11.88,11.88,0,1,0,15,501.5H48.5v.1c0,1,1,2,2.7,2.7ZM15.1,475.1a14.6,14.6,0,0,0,0,29.2H50.9c-1.6-.7-2.5-1.7-2.5-2.6H15.1a12,12,0,1,1,5.6-22.6l1.3.7.5-1.4A17.61,17.61,0,0,1,39,466.8a17.18,17.18,0,0,1,17,13.6,24.52,24.52,0,0,1,2.7-.2A20.22,20.22,0,0,0,53,469.8a20,20,0,0,0-14-5.7A20.23,20.23,0,0,0,20.6,476v.1h-.1A16.16,16.16,0,0,0,15.1,475.1Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M69.7,485.9a2.84,2.84,0,0,0-.7-1.7c-1.6-1.7-5.5-2.6-9.4-2.6h-.7a24.52,24.52,0,0,0-2.7.2c-3.7.5-6.7,1.9-6.7,4v13.8a2.2,2.2,0,0,0,.6,1.5c1.3,1.6,4.6,2.5,8.1,2.7h1.5c3.9,0,7.9-.9,9.4-2.6a2.19,2.19,0,0,0,.7-1.7V486.1C69.7,486.2,69.7,486,69.7,485.9ZM59.5,497.4a19.3,19.3,0,0,1-6.2-.9c-1.5-.5-2.1-1.1-2.1-1.4v-2a17.82,17.82,0,0,0,8.2,1.7,23.1,23.1,0,0,0,6.1-.8,6.67,6.67,0,0,0,2.1-.9v2c0,.3-.5.9-2.1,1.4l-.9.3A18.28,18.28,0,0,1,59.5,497.4Zm8.3-7.9v1c0,.3-.5.9-2.1,1.4h-.1a18.25,18.25,0,0,1-6.1.9,19.3,19.3,0,0,1-6.2-.9c-1.5-.5-2.1-1.1-2.1-1.4v-2a17.82,17.82,0,0,0,8.2,1.7,22.65,22.65,0,0,0,5.3-.6,10,10,0,0,0,2.6-.9c.1-.1.2-.1.3-.2v1Zm-14.5-5a17.65,17.65,0,0,1,2.9-.7,32.51,32.51,0,0,1,3.3-.2,19.83,19.83,0,0,1,3.5.3,17.63,17.63,0,0,1,2.7.7c1.5.5,2.1,1.1,2.1,1.4s-.4.7-1.3,1.1a6.88,6.88,0,0,1-.8.3,11.7,11.7,0,0,1-2,.5,27.22,27.22,0,0,1-4.2.4,19.3,19.3,0,0,1-6.2-.9c-1.5-.5-2.1-1.1-2.1-1.4S51.8,485,53.3,484.5Zm14.5,15.2c0,.3-.5.9-2.1,1.4-.4.1-.8.3-1.3.4a23.84,23.84,0,0,1-4.9.5,21.79,21.79,0,0,1-6-.8c-.1,0-.2,0-.2-.1-1.5-.5-2.1-1.1-2.1-1.4v-2a17.82,17.82,0,0,0,8.2,1.7c1.2,0,2.4-.1,3.5-.2a12.23,12.23,0,0,0,4.2-1.2c.2-.1.3-.2.5-.3v2Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M59.5,504.1H58c-3.9-.2-7-1.3-8.2-2.8a2.45,2.45,0,0,1-.6-1.6V485.9c0-2,2.6-3.6,6.9-4.2a24.52,24.52,0,0,1,2.7-.2h.7c4.3,0,8.1,1,9.5,2.6a2.5,2.5,0,0,1,.8,1.8v13.8a2.9,2.9,0,0,1-.8,1.8C67.6,503.1,63.8,504.1,59.5,504.1Zm0-22.3h-.7a24.52,24.52,0,0,0-2.7.2c-4.1.6-6.6,2-6.6,3.9v.4h0v4.5h0v4.5h0v4.1a2.39,2.39,0,0,0,.5,1.4c1.1,1.4,4.2,2.4,8,2.6h1.5c4.2,0,7.9-1,9.3-2.5a2.57,2.57,0,0,0,.7-1.6v-4.1h0v-4.5h0v-4.5h0v-.4a2.13,2.13,0,0,0-.7-1.6C67.4,482.8,63.8,481.8,59.5,481.8Zm0,20.4a21.26,21.26,0,0,1-6-.8.35.35,0,0,1-.2-.1c-1.5-.5-2.2-1.2-2.2-1.6v-2.3l.2.1a18.34,18.34,0,0,0,8.2,1.6c1.2,0,2.4-.1,3.5-.2a15.08,15.08,0,0,0,4.2-1.1c.2-.1.3-.2.5-.2l.2-.1v2.3c0,.4-.7,1-2.2,1.6-.4.1-.8.3-1.3.4A34.67,34.67,0,0,1,59.5,502.2Zm-8.1-4.3v1.8c0,.2.5.8,2,1.3.1,0,.1,0,.2.1a20.53,20.53,0,0,0,5.9.8,24.61,24.61,0,0,0,4.9-.5,5,5,0,0,0,1.3-.4c1.5-.5,2-1.1,2-1.3v-1.8c-.1,0-.2.1-.3.1a18.69,18.69,0,0,1-4.3,1.2,20,20,0,0,1-3.5.2A17.42,17.42,0,0,1,51.4,497.9Zm8.1-.3a18.46,18.46,0,0,1-6.2-.9c-1.5-.5-2.2-1.2-2.2-1.6v-2.3l.2.1a18.34,18.34,0,0,0,8.2,1.6,22.54,22.54,0,0,0,6.1-.8,6.67,6.67,0,0,0,2.1-.9l.2-.1V495c0,.4-.7,1-2.2,1.6l-.9.3A17,17,0,0,1,59.5,497.6Zm-8.1-4.3v1.8c0,.2.5.8,2,1.3a18.25,18.25,0,0,0,6.1.9,20.64,20.64,0,0,0,5.2-.6l.9-.3c1.5-.5,2-1.1,2-1.3v-1.8a18.19,18.19,0,0,1-1.9.8,22.76,22.76,0,0,1-6.2.8A18.49,18.49,0,0,1,51.4,493.3Zm8.1-.3a18.46,18.46,0,0,1-6.2-.9c-1.5-.5-2.2-1.2-2.2-1.6v-2.3l.2.1a18.34,18.34,0,0,0,8.2,1.6,22,22,0,0,0,5.3-.6,8.15,8.15,0,0,0,2.5-.9c.1-.1.2-.1.3-.2l.2-.1v2.3c0,.4-.7,1-2.2,1.6h-.1A15.06,15.06,0,0,1,59.5,493Zm-8.1-4.3v1.8c0,.2.5.8,2,1.3a18.25,18.25,0,0,0,6.1.9,17.63,17.63,0,0,0,6-.9h.1c1.5-.5,2-1.1,2-1.3v-1.8a.1.1,0,0,0-.1.1,8.81,8.81,0,0,1-2.6.9,22.65,22.65,0,0,1-5.3.6A18.65,18.65,0,0,1,51.4,488.7Zm8.1-.3a18.46,18.46,0,0,1-6.2-.9c-1.5-.5-2.2-1.2-2.2-1.6s.7-1,2.2-1.6h0a19.06,19.06,0,0,1,3-.7,32.51,32.51,0,0,1,3.3-.2,19.83,19.83,0,0,1,3.5.3,15,15,0,0,1,2.7.7c1.5.5,2.2,1.2,2.2,1.6s-.5.8-1.4,1.2a6.88,6.88,0,0,1-.8.3,11.7,11.7,0,0,1-2,.5A20.24,20.24,0,0,1,59.5,488.4Zm-6.1-3.8c-1.5.5-2,1.1-2,1.3s.5.8,2,1.3a18.25,18.25,0,0,0,6.1.9,17.28,17.28,0,0,0,4.1-.4,11.7,11.7,0,0,0,2-.5,4.88,4.88,0,0,0,.7-.3c.9-.4,1.2-.8,1.2-1s-.5-.8-2-1.3a10.71,10.71,0,0,0-2.7-.6,18.84,18.84,0,0,0-3.4-.2c-1.1,0-2.2.1-3.2.2a11.54,11.54,0,0,0-2.8.6Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M56.4,560.1H51.3a5.42,5.42,0,0,0-5.5,5.5v.8H39.2a5.78,5.78,0,0,0-1.6-4.6,6.19,6.19,0,0,0-4.7-1.7v-6.6H45c1.6,0,3.5,0,5.3-.1a13.08,13.08,0,0,0,11.3-15.8c-1.3-5.9-5.8-9.7-12-10.1-.3,0-.3,0-.4-.3a18.89,18.89,0,0,0-20.5-12.3,18.8,18.8,0,0,0-15.6,12.4c-.1.3-.1.3-.3.3a11,11,0,0,0-1.8.2,12.55,12.55,0,0,0-8.2,5.1,13.16,13.16,0,0,0,11,20.7H29.4v6.6a5.79,5.79,0,0,0-4.7,1.6,5.57,5.57,0,0,0-1.6,4.6H16.5v-.7a5.48,5.48,0,0,0-5.5-5.5H5.9a5.48,5.48,0,0,0-5.5,5.5v5.1a5.42,5.42,0,0,0,5.5,5.5h5a5.4,5.4,0,0,0,5.4-4.5,8.08,8.08,0,0,0,.1-1.6V570H23v.8a5.6,5.6,0,0,0,5.5,5.4h5.2a5.47,5.47,0,0,0,5.4-4.5,7.57,7.57,0,0,0,.1-1.5V570h6.6v.8a5.48,5.48,0,0,0,5.5,5.5h5a5.42,5.42,0,0,0,5.5-5.5h0v-5.1A5.42,5.42,0,0,0,56.4,560.1Zm2,7.2v3.2a2.1,2.1,0,0,1-2.2,2.2h-5a2,2,0,0,1-2.1-2v-5.1a2.11,2.11,0,0,1,2.1-2.1h5.1a2,2,0,0,1,2.1,2.1Zm-29.8,5.4a2,2,0,0,1-2.1-2.2v-5a1.94,1.94,0,0,1,2.1-2.1h5a1.94,1.94,0,0,1,2.1,2.1v5.1a2,2,0,0,1-2.1,2C31.9,572.7,30.2,572.7,28.6,572.7ZM31,550H13.5a9.6,9.6,0,0,1-8.1-4.1,9.35,9.35,0,0,1-.9-9.4,9.43,9.43,0,0,1,7.7-5.6,5.74,5.74,0,0,1,1.2-.1h.2c1.3,0,1.8-.3,2.2-1.5a15.17,15.17,0,0,1,6.7-8.6,15.58,15.58,0,0,1,13.9-1.5,16.11,16.11,0,0,1,9.8,10.1c.4,1.3.8,1.6,2.2,1.6a9.73,9.73,0,0,1,10,9.5,9.19,9.19,0,0,1-2.7,6.8,9.76,9.76,0,0,1-7,3H36.2ZM9.4,572.7H6a2.1,2.1,0,0,1-2.2-2.2v-4.8a2.07,2.07,0,0,1,2.1-2.2h4.9a2,2,0,0,1,2.1,2.2v4.8a2,2,0,0,1-2.2,2.2Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M27.4,42.8l-3.9,3.9L.3,23.6l2.9-2.9a1.52,1.52,0,0,1,2,0Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M33.5,23.9l-3.9,3.9-9.4-9.4a1.52,1.52,0,0,1,0-2l1.9-1.9a1.52,1.52,0,0,1,2,0Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M21,23.5l-2.9,2.9a1.52,1.52,0,0,1-2,0l-1.9-1.9a1.52,1.52,0,0,1,0-2l1.9-1.9a1.52,1.52,0,0,1,2,0Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M46.3,23.9l-2.9,2.9a1.52,1.52,0,0,1-2,0L19.2,4.6,23.1.7Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M23.5,46.7l-3.9-3.9L35,27.4a1.52,1.52,0,0,1,2,0l2.9,2.9Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M22.5,32.9l-2-1.9a1.52,1.52,0,0,1,0-2l9-9,3.9,3.9-9,9A1.23,1.23,0,0,1,22.5,32.9Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M9.6,20.1,6.7,17.2,23.1.7,27,4.6,11.6,20.1A1.52,1.52,0,0,1,9.6,20.1Z" transform="translate(0 -0.7)"/><polygon class="cls-1" points="60.8 12.7 62 15.8 66.6 14.5 66.6 35.4 70.4 35.4 70.4 10.5 67.8 10.5 60.8 12.7"/><path class="cls-1" d="M86.5,10.9c-6.7,0-11.7,5.5-11.7,12.8v.1c0,7.4,4.9,12.7,11.7,12.7S98.2,31,98.2,23.7v-.1C98.2,16.3,93.3,10.9,86.5,10.9ZM78.7,23.6c0-4.5,2.7-9.3,7.7-9.3s7.8,4.8,7.8,9.3v.1c0,4.5-2.7,9.3-7.7,9.3s-7.8-4.7-7.8-9.4Z" transform="translate(0 -0.7)"/><polygon class="cls-1" points="128.4 29.3 121.5 10.6 121.5 10.6 118.7 10.6 111.7 29.3 104.3 10.7 104.3 10.6 100 10.6 110.2 35.5 110.2 35.6 113.1 35.6 120 17.4 126.9 35.5 126.9 35.6 129.8 35.6 140 10.6 135.9 10.6 128.4 29.3"/><polygon class="cls-1" points="147.1 24.6 162 24.6 162 21.2 147.1 21.2 147.1 14.1 163.7 14.1 163.7 10.6 143.3 10.6 143.3 35.4 163.8 35.4 163.8 31.9 147.1 31.9 147.1 24.6"/><path class="cls-1" d="M186.3,23.2a6,6,0,0,0,2.8-5.2v-.1a5.5,5.5,0,0,0-2-4.3,11.1,11.1,0,0,0-7.4-2.3H168V36.1h12.3c6.2,0,10.2-2.8,10.2-7.2v-.1C190.6,27.1,189.8,24.7,186.3,23.2Zm.4,5.6h0c0,2.4-2.4,3.8-6.3,3.8h-8.5V25.3h7.8C182.4,25.3,186.7,25.8,186.7,28.8Zm-1.4-10.7c0,2.8-3,3.8-5.7,3.8H172V14.8h7.8c3.4,0,5.5,1.2,5.5,3.3Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M63.3,622.2a6.9,6.9,0,0,0-3.5-5.9,10.79,10.79,0,0,0-6.5-8.2h.6a21.5,21.5,0,1,0-43-.3c-3.5,1.5-6.5,4.7-7.1,8.5a6.58,6.58,0,0,0-3.5,5.9,6.77,6.77,0,0,0,3.5,5.9,11,11,0,0,0,10.9,9.1,2.58,2.58,0,0,0,2.6-2.6v-25a2.58,2.58,0,0,0-2.6-2.6h-.3a18,18,0,0,1,36,.3H48.9a2.58,2.58,0,0,0-2.6,2.6v24.7a2.58,2.58,0,0,0,2.6,2.6,6.61,6.61,0,0,0,2.4-.3v5.9a6.38,6.38,0,0,1-5.9,6.2H39.2a5.55,5.55,0,0,0-10.9,1.5,5.79,5.79,0,0,0,5.6,5.6,5.49,5.49,0,0,0,5.3-4.1h6.1a9.6,9.6,0,0,0,9.1-9.4v-7.4a12.13,12.13,0,0,0,5.3-7.7C62.1,626.9,63.3,624.5,63.3,622.2Z" transform="translate(0 -0.7)"/><circle class="cls-1" cx="23.59" cy="70.7" r="4.24"/><path class="cls-1" d="M34.32,101.8H3.56v-8l7.1-6.53,4.32-4,1.34,1.08,1.84,1.49c.83.67,3.06,2.51,8.8,7.3L29.2,95,31.45,93,36,89.1l3-2.57,9.39-8.12.17.14,1.75,1.51,1.07.92,1,.85.91.78,4.35,3.75L61,89.28h0a25.74,25.74,0,0,1,4.58,5.28q0-1.73.07-3.47.27-15.35,0-30.3a4.72,4.72,0,0,0-1.53-3,4.66,4.66,0,0,0-2.57-1.13H4.1A4.1,4.1,0,0,0,0,60.8v41a4.1,4.1,0,0,0,4.1,4.1H34.79a15.3,15.3,0,0,1-.48-3.8C34.31,102,34.32,101.9,34.32,101.8ZM3.56,60.8H61q0,12.34,0,24.68l-3.37-2.9-4.35-3.75-4.71-4.06-.17-.14L39,82.73l-9.77,8.45h0L18.26,82.09,15,79.44,8.59,85.36,3.56,90Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M66.25,102.8H62.58a11.83,11.83,0,0,1-.63,3.11h3.87a14.93,14.93,0,0,0,.49-3.11Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M49.73,100a2.45,2.45,0,0,0-1.24,1.84,2.42,2.42,0,0,0,0,.29,2.45,2.45,0,0,0,4.63,1.12h0l.78-1.41,3.7-6.67L49.72,100Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M51.34,86.61v3.73A10.57,10.57,0,0,1,58.08,93l2.73-2.63A15.59,15.59,0,0,0,51.34,86.61Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M49.48,90.33V86.61a15.44,15.44,0,0,0-14.4,15.21c0,.1,0,.19,0,.29a15.3,15.3,0,0,0,.48,3.8h3.89a11.42,11.42,0,0,1-.66-3.82c0-.09,0-.18,0-.27A12.05,12.05,0,0,1,49.48,90.33Z" transform="translate(0 -0.7)"/><path class="cls-1" d="M66.29,100.94a15,15,0,0,0-4-9.26l-.6.6-2,2a11.91,11.91,0,0,1,2,3.31,11.71,11.71,0,0,1,.83,3.33Z" transform="translate(0 -0.7)"/></svg>
wd/assets/img/how_it_works.png ADDED
Binary file
wd/assets/img/iowd_main_plugin.png ADDED
Binary file
wd/assets/img/plugins/business_elite.png DELETED
Binary file
wd/assets/img/plugins/business_world.png DELETED
Binary file
wd/assets/img/plugins/event-calendar-wd.png DELETED
Binary file
wd/assets/img/plugins/form-maker.png DELETED
Binary file
wd/assets/img/plugins/photo-gallery.png DELETED
Binary file
wd/assets/img/plugins/portfolio_gallery.png DELETED
Binary file
wd/assets/img/plugins/sauron.png DELETED
Binary file
wd/assets/img/plugins/slider-wd.png DELETED
Binary file
wd/assets/img/plugins/spider-event-calendar.png DELETED
Binary file
wd/assets/img/plugins/wd-google-maps.png DELETED
Binary file
wd/assets/img/plugins/wd-instagram-feed.png DELETED
Binary file
wd/assets/img/slide-1366.jpg ADDED
Binary file
wd/assets/img/sub_1.png DELETED
Binary file
wd/assets/img/sub_2.png DELETED
Binary file
wd/assets/img/sub_4.png DELETED
Binary file
wd/assets/js/deactivate_popup.js CHANGED
@@ -19,80 +19,112 @@ var btnVal = 3;
19
  ////////////////////////////////////////////////////////////////////////////////////////
20
  // Public Methods //
21
  ////////////////////////////////////////////////////////////////////////////////////////
22
- function wdReady(prefix){
23
-
24
- jQuery(document).on("click", "." + window[prefix + "WDDeactivateVars"].deactivate_class, function(){
25
- jQuery(".wd-" + prefix + "-opacity").show();
26
- jQuery(".wd-" + prefix + "-deactivate-popup").show();
27
- if(jQuery(this).attr("data-uninstall") == "1"){
28
- btnVal = 2 ;
29
- }
30
-
31
- return false;
32
- });
33
-
34
- jQuery(document).on("change", "[name=" + prefix + "_reasons]", function(){
35
-
36
- jQuery("." + prefix + "_additional_details_wrap").html("");
37
- jQuery(".wd-" + prefix + "-deactivate-popup").removeClass("wd-popup-active1 wd-popup-active2");
38
- if(jQuery(this).val() == "reason_plugin_is_hard_to_use_technical_problems"){
39
-
40
- additionalInfo = '<div class="wd-additional-active"><div><strong>Please describe your issue.</strong></div><br>' +
41
- '<textarea name="' + prefix + '_additional_details" rows = "4"></textarea><br>' +
42
- '<div>Our support will contact <input type="text" name="' + prefix + '_email" value="' + window[prefix + "WDDeactivateVars"].email + '"> shortly.</div>'+
43
- '<br><div><button class="button button-primary wd-' + prefix + '-deactivate" data-val="' + btnVal + '">Submit support ticket</button></div></div>';
44
- jQuery("." + prefix + "_additional_details_wrap").append(additionalInfo);
45
- jQuery(".wd-" + prefix + "-deactivate-popup").addClass("wd-popup-active1");
46
-
47
- }
48
- else if(jQuery(this).val() == "reason_free_version_limited"){
49
- additionalInfo = '<div class="wd-additional-active">' +
50
- '<div><strong>We believe our premium version will fit your needs.</strong></div>' +
51
- '<div><a href="' + window[prefix + "WDDeactivateVars"].plugin_wd_url+ '" target="_blank">Try with 30 day money back guarantee.</a></div>';
52
-
53
- jQuery("." + prefix + "_additional_details_wrap").append(additionalInfo);
54
- jQuery(".wd-" + prefix + "-deactivate-popup").addClass("wd-popup-active2");
55
- }
56
- else if(jQuery(this).val() == "reason_premium_expensive"){
57
- additionalInfo = '<div class="wd-additional-active">' +
58
- '<div><strong>We have a special offer for you.</strong></div>' +
59
- '<div>Submit this form to get the offer to <input type="text" name="' + prefix + '_email" value="' + window[prefix + "WDDeactivateVars"].email + '"></div>' +
60
- '<br><div><button class="button button-primary wd-' + prefix + '-deactivate" data-val="' + btnVal + '">Submit</button></div></div>';
61
-
62
- jQuery("." + prefix + "_additional_details_wrap").append(additionalInfo);
63
- jQuery(".wd-" + prefix + "-deactivate-popup").addClass("wd-popup-active2");
64
- }
65
-
66
- jQuery("#wd-" + prefix + "-deactivate").hide();
67
- jQuery("#wd-" + prefix + "-submit-and-deactivate").show();
68
-
69
- });
70
- jQuery(document).on("keyup", "[name=" + prefix + "_additional_details]", function(){
71
- if(jQuery(this).val().trim() || jQuery("[name=" + prefix + "_reasons]:checked").length > 0){
72
- jQuery("#wd-" + prefix + "-deactivate").hide();
73
- jQuery("#wd-" + prefix + "-submit-and-deactivate").show();
74
- }
75
- else{
76
- jQuery("#wd-" + prefix + "-deactivate").show();
77
- jQuery("#wd-" + prefix + "-submit-and-deactivate").hide();
78
- }
79
-
80
- });
81
- jQuery(document).on("click", ".wd-" + prefix + "-deactivate", function(){
82
- jQuery(".wd-deactivate-popup-opacity-" + prefix).show();
83
- if(jQuery(this).hasClass("wd-clicked") == false){
84
- jQuery(this).addClass("wd-clicked");
85
- jQuery("[name=" + prefix + "_submit_and_deactivate]").val(jQuery(this).attr("data-val"));
86
- jQuery("#" + prefix + "_deactivate_form").submit();
87
- }
88
- return false;
89
- });
90
-
91
- jQuery(document).on("click", ".wd-" + prefix + "-cancel, .wd-opacity", function(){
92
- jQuery(".wd-" + prefix + "-opacity").hide();
93
- jQuery(".wd-" + prefix + "-deactivate-popup").hide();
94
- return false;
95
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
96
 
97
  }
98
 
19
  ////////////////////////////////////////////////////////////////////////////////////////
20
  // Public Methods //
21
  ////////////////////////////////////////////////////////////////////////////////////////
22
+ function tenwebReady( prefix ) {
23
+
24
+ var agree_with_pp = false;
25
+ reset_popup();
26
+ jQuery( document ).on( "click", "." + window[prefix + "WDDeactivateVars"].deactivate_class, function () {
27
+ agree_with_pp = false;
28
+ if ( !jQuery( '#tenweb-' + prefix + '-submit-and-deactivate' ).hasClass( 'button-primary-disabled' ) ) {
29
+ jQuery( '#tenweb-' + prefix + '-submit-and-deactivate' ).addClass( 'button-primary-disabled' )
30
+ }
31
+ jQuery( ".tenweb-" + prefix + "-opacity" ).show();
32
+ jQuery( ".tenweb-" + prefix + "-deactivate-popup" ).show();
33
+ if ( jQuery( this ).attr( "data-uninstall" ) == "1" ) {
34
+ btnVal = 2;
35
+ }
36
+
37
+ return false;
38
+ } );
39
+
40
+ jQuery( document ).on( "change", "[name=" + prefix + "_reasons]", function () {
41
+ var disabled_class = ( agree_with_pp === false ) ? "button-primary-disabled" : "";
42
+
43
+ jQuery( "." + prefix + "_additional_details_wrap" ).html( "" );
44
+ jQuery( ".tenweb-" + prefix + "-deactivate-popup" ).removeClass( "tenweb-popup-active1 tenweb-popup-active2 tenweb-popup-active4" );
45
+ if ( jQuery( this ).val() == "reason_plugin_is_hard_to_use_technical_problems" ) {
46
+
47
+ additionalInfo = '<div class="tenweb-additional-active"><div><strong>Please describe your issue.</strong></div><br>' +
48
+ '<textarea name="' + prefix + '_additional_details" rows = "4"></textarea><br>' +
49
+ '<div>Our support will contact <input type="text" name="' + prefix + '_email" value="' + window[prefix + "WDDeactivateVars"].email + '"> shortly.</div>' +
50
+ '<br><div><button class="button button-primary ' + disabled_class + ' tenweb-' + prefix + '-deactivate" data-val="' + btnVal + '">Submit support ticket</button></div></div>';
51
+ jQuery( "." + prefix + "_additional_details_wrap" ).append( additionalInfo );
52
+ jQuery( ".tenweb-" + prefix + "-deactivate-popup" ).addClass( "tenweb-popup-active1" );
53
+
54
+ }
55
+ else if ( jQuery( this ).val() == "reason_free_version_limited" ) {
56
+ additionalInfo = '<div class="tenweb-additional-active">' +
57
+ '<div><strong>We believe our premium version will fit your needs.</strong></div>' +
58
+ '<div><a href="' + window[prefix + "WDDeactivateVars"].plugin_wd_url + '" target="_blank">Try with 30 day money back guarantee.</a></div>';
59
+
60
+ jQuery( "." + prefix + "_additional_details_wrap" ).append( additionalInfo );
61
+ jQuery( ".tenweb-" + prefix + "-deactivate-popup" ).addClass( "tenweb-popup-active2" );
62
+ }
63
+ else {
64
+ jQuery( ".tenweb-" + prefix + "-deactivate-popup" ).addClass( "tenweb-popup-active4" );
65
+ }
66
+
67
+ var checked = ( agree_with_pp === true ) ? "checked" : "";
68
+ var agree_checkbox =
69
+ "<div style='margin-top: 5px;'>" +
70
+ "<input type='checkbox' " + checked + " name='" + prefix + "_agree_with_pp" + "' id='" + prefix + "_agree_with_pp" + "'/>" +
71
+ "By submitting this form your email and website URL will be sent to 10Web. Click the checkbox if you consent to usage of mentioned data by 10Web in accordance with our <a target='_blank' href='https://10web.io/privacy-policy/'>Privacy Policy</a>." +
72
+ "</div>";
73
+ jQuery( "." + prefix + "_additional_details_wrap" ).prepend( agree_checkbox );
74
+
75
+ jQuery( "#tenweb-" + prefix + "-submit-and-deactivate" ).show();
76
+ } );
77
+ jQuery( document ).on( "keyup", "[name=" + prefix + "_additional_details]", function () {
78
+ if ( jQuery( this ).val().trim() || jQuery( "[name=" + prefix + "_reasons]:checked" ).length > 0 ) {
79
+ jQuery( "#tenweb-" + prefix + "-submit-and-deactivate" ).show();
80
+ }
81
+ else {
82
+ jQuery( "#tenweb-" + prefix + "-submit-and-deactivate" ).hide();
83
+ }
84
+ } );
85
+
86
+ jQuery( document ).on( "change", "[name=" + prefix + "_agree_with_pp]", function () {
87
+ if ( jQuery( this ).prop( 'checked' ) ) {
88
+ jQuery( ".tenweb-" + prefix + "-deactivate" ).removeClass( 'button-primary-disabled' );
89
+ agree_with_pp = true;
90
+ } else {
91
+ jQuery( ".tenweb-" + prefix + "-deactivate" ).addClass( 'button-primary-disabled' );
92
+ agree_with_pp = false;
93
+ }
94
+ } );
95
+
96
+ jQuery( document ).on( "click", ".tenweb-" + prefix + "-deactivate", function ( e ) {
97
+ var data_val = jQuery( this ).data( 'val' );
98
+ var checkbox = jQuery( "#" + prefix + "_agree_with_pp" );
99
+
100
+ if ( data_val !== 1 && ( checkbox.length === 0 || checkbox.prop( 'checked' ) === false ) ) {
101
+ return false;
102
+ }
103
+
104
+ jQuery( ".tenweb-deactivate-popup-opacity-" + prefix ).show();
105
+ if ( jQuery( this ).hasClass( "tenweb-clicked" ) == false ) {
106
+ jQuery( this ).addClass( "tenweb-clicked" );
107
+ jQuery( "[name=" + prefix + "_submit_and_deactivate]" ).val( jQuery( this ).attr( "data-val" ) );
108
+ jQuery( "#" + prefix + "_deactivate_form" ).submit();
109
+ }
110
+ return false;
111
+ } );
112
+
113
+ jQuery( document ).on( "click", ".tenweb-" + prefix + "-cancel, .tenweb-opacity, .tenweb-deactivate-popup-close-btn", function () {
114
+ jQuery( ".tenweb-" + prefix + "-opacity" ).hide();
115
+ jQuery( ".tenweb-" + prefix + "-deactivate-popup" ).hide();
116
+ reset_popup();
117
+
118
+ return false;
119
+ } );
120
+
121
+ function reset_popup() {
122
+ jQuery( "." + prefix + "_additional_details_wrap" ).html( "" );
123
+ jQuery( ".tenweb-" + prefix + "-deactivate-popup" ).removeClass( "tenweb-popup-active1 tenweb-popup-active2 tenweb-popup-active4" );
124
+
125
+ jQuery( "#tenweb-" + prefix + "-submit-and-deactivate" ).hide();
126
+ jQuery( '#' + prefix + '_deactivate_form input[name="' + prefix + '_reasons' + '"]' ).prop( 'checked', false );
127
+ }
128
 
129
  }
130
 
wd/assets/js/overview.js CHANGED
@@ -1,56 +1,16 @@
1
- ////////////////////////////////////////////////////////////////////////////////////////
2
- // Events //
3
- ////////////////////////////////////////////////////////////////////////////////////////
4
- ////////////////////////////////////////////////////////////////////////////////////////
5
- // Constants //
6
- ////////////////////////////////////////////////////////////////////////////////////////
7
- ////////////////////////////////////////////////////////////////////////////////////////
8
- // Variables //
9
- ////////////////////////////////////////////////////////////////////////////////////////
10
- ////////////////////////////////////////////////////////////////////////////////////////
11
- // Constructor & Destructor //
12
- ////////////////////////////////////////////////////////////////////////////////////////
13
  jQuery(document).ready(function () {
14
- jQuery(".overview_content > div:not(#welcome)").hide();
15
- jQuery(".overview_tabs li a:not(.not_tab)").on("click", function(){
16
- jQuery(".overview_tabs li a").removeClass("overview_tab_active");
17
- jQuery(this).addClass("overview_tab_active");
18
- jQuery(".overview_content > div").hide();
19
- var id = jQuery(this).attr("href");
20
- jQuery(id).show();
21
- return false;
22
- });
23
-
24
- // rating
25
- // jQuery(".rating").each(function(){
26
- // var rate = jQuery(this).attr("data-rating");
27
- // jQuery("<span class='stars-container'>")
28
- // .addClass("stars-" + rate.toString())
29
- // .text("★★★★★")
30
- // .appendTo(jQuery(this));
31
- // jQuery("body").append('<style>.stars-' + rate.toString() + ':after{width:' + rate + '%;}</style>');
32
- // });
33
-
34
- jQuery("#wd-copy").on("click", function(){
35
- var selector = document.querySelector('#wd-site-deatils-textarea');
36
- selector.select();
37
- document.execCommand('copy');
38
-
39
- return false;
40
-
41
- });
42
-
43
  });
44
 
45
- ////////////////////////////////////////////////////////////////////////////////////////
46
- // Public Methods //
47
- ////////////////////////////////////////////////////////////////////////////////////////
48
- ////////////////////////////////////////////////////////////////////////////////////////
49
- // Getters & Setters //
50
- ////////////////////////////////////////////////////////////////////////////////////////
51
- ////////////////////////////////////////////////////////////////////////////////////////
52
- // Private Methods //
53
- ////////////////////////////////////////////////////////////////////////////////////////
54
- ////////////////////////////////////////////////////////////////////////////////////////
55
- // Listeners //
56
- ////////////////////////////////////////////////////////////////////////////////////////
1
+ jQuery(window).resize(function () {
2
+ tenWebOverviewResize();
3
+ });
 
 
 
 
 
 
 
 
 
4
  jQuery(document).ready(function () {
5
+ tenWebOverviewResize();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6
  });
7
 
8
+ function tenWebOverviewResize(){
9
+ if(jQuery(".tenweb_header_right").length){
10
+ if (matchMedia('only screen and (max-width: 840px)').matches) {
11
+ jQuery(".tenweb_header_right").after(jQuery(".tenweb_header_right .header_text"));
12
+ } else{
13
+ jQuery(".tenweb_header_right .button").before(jQuery(".tenweb_overview .inline-block.header_text"));
14
+ }
15
+ }
16
+ }
 
 
 
wd/assets/js/subsribe.js CHANGED
@@ -12,13 +12,14 @@
12
  ////////////////////////////////////////////////////////////////////////////////////////
13
  jQuery(document).on("ready", function () {
14
  jQuery(".permissions").on("click", function(){
15
- jQuery(".list").toggle();
 
16
  return false;
17
  });
18
 
19
  jQuery(".allow_and_continue").on("click", function(){
20
  jQuery(this).css("opacity", "0.5");
21
- jQuery(".wd_loader").css("visibility", "visible");
22
  });
23
  });
24
 
12
  ////////////////////////////////////////////////////////////////////////////////////////
13
  jQuery(document).on("ready", function () {
14
  jQuery(".permissions").on("click", function(){
15
+ jQuery(this).toggleClass("active") ;
16
+ jQuery(".list").slideToggle("fast");
17
  return false;
18
  });
19
 
20
  jQuery(".allow_and_continue").on("click", function(){
21
  jQuery(this).css("opacity", "0.5");
22
+ jQuery(".wd_loader").css("display", "inline-block");
23
  });
24
  });
25
 
wd/config.php CHANGED
@@ -3,19 +3,18 @@
3
  exit;
4
  }
5
 
6
- class DoradoWebConfig {
7
  public static $instance;
8
 
9
  public $prefix = null;
10
- public $wd_plugin_id = null;
11
- public $plugin_title = null;
 
12
  public $plugin_wordpress_slug = null;
13
  public $plugin_dir = null;
14
  public $plugin_main_file = null;
15
  public $description = null;
16
  public $plugin_features = null;
17
- public $user_guide = null;
18
- public $overview_welcome_image = null;
19
  public $video_youtube_id = null;
20
  public $plugin_wd_url = null;
21
  public $plugin_wd_demo_link = null;
@@ -36,12 +35,17 @@
36
  public $custom_post = null;
37
  public $menu_capability = null;
38
  public $menu_position = null;
 
 
39
 
40
  public function set_options( $options ){
41
 
42
  if(isset( $options["prefix"] )) {
43
  $this->prefix = $options["prefix"];
44
  }
 
 
 
45
  if(isset( $options["wd_plugin_id"] )) {
46
  $this->wd_plugin_id = $options["wd_plugin_id"];
47
  }
@@ -64,23 +68,20 @@
64
  if(isset( $options["plugin_features"] )) {
65
  $this->plugin_features = $options["plugin_features"];
66
  }
67
- if(isset( $options["user_guide"] )) {
68
- $this->user_guide = $options["user_guide"];
69
- }
70
  if(isset( $options["video_youtube_id"] )) {
71
  $this->video_youtube_id = $options["video_youtube_id"];
72
  }
73
- if(isset( $options["overview_welcome_image"] )) {
74
- $this->overview_welcome_image = $options["overview_welcome_image"];
75
- }
76
  if(isset( $options["plugin_wd_url"] )) {
77
  $this->plugin_wd_url = $options["plugin_wd_url"];
78
  }
79
  if(isset( $options["plugin_wd_demo_link"] )) {
80
  $this->plugin_wd_demo_link = $options["plugin_wd_demo_link"];
81
- }
82
- if(isset( $options["plugin_wd_addons_link"] )) {
83
- $this->plugin_wd_addons_link = $options["plugin_wd_addons_link"];
 
 
 
84
  }
85
  if(isset( $options["plugin_wizard_link"] )) {
86
  $this->plugin_wizard_link = $options["plugin_wizard_link"];
@@ -108,8 +109,13 @@
108
  }
109
  if(isset( $options["menu_position"] )) {
110
  $this->menu_position = $options["menu_position"];
111
- }
112
-
 
 
 
 
 
113
  // directories
114
  $this->wd_dir = dirname( $this->plugin_main_file ) . '/wd';
115
  $this->wd_dir_includes = $this->wd_dir . '/includes';
3
  exit;
4
  }
5
 
6
+ class TenWebLibConfig {
7
  public static $instance;
8
 
9
  public $prefix = null;
10
+ public $plugin_id = null;
11
+ public $wd_plugin_id = null;
12
+ public $plugin_title = null;
13
  public $plugin_wordpress_slug = null;
14
  public $plugin_dir = null;
15
  public $plugin_main_file = null;
16
  public $description = null;
17
  public $plugin_features = null;
 
 
18
  public $video_youtube_id = null;
19
  public $plugin_wd_url = null;
20
  public $plugin_wd_demo_link = null;
35
  public $custom_post = null;
36
  public $menu_capability = null;
37
  public $menu_position = null;
38
+ public $overview_welcome_image = null;
39
+ public $display_overview = true;
40
 
41
  public function set_options( $options ){
42
 
43
  if(isset( $options["prefix"] )) {
44
  $this->prefix = $options["prefix"];
45
  }
46
+ if(isset( $options["plugin_id"] )) {
47
+ $this->plugin_id = $options["plugin_id"];
48
+ }
49
  if(isset( $options["wd_plugin_id"] )) {
50
  $this->wd_plugin_id = $options["wd_plugin_id"];
51
  }
68
  if(isset( $options["plugin_features"] )) {
69
  $this->plugin_features = $options["plugin_features"];
70
  }
 
 
 
71
  if(isset( $options["video_youtube_id"] )) {
72
  $this->video_youtube_id = $options["video_youtube_id"];
73
  }
 
 
 
74
  if(isset( $options["plugin_wd_url"] )) {
75
  $this->plugin_wd_url = $options["plugin_wd_url"];
76
  }
77
  if(isset( $options["plugin_wd_demo_link"] )) {
78
  $this->plugin_wd_demo_link = $options["plugin_wd_demo_link"];
79
+ }
80
+ if(isset( $options["plugin_wd_demo_link"] )) {
81
+ $this->plugin_wd_demo_link = $options["plugin_wd_demo_link"];
82
+ }
83
+ if(isset( $options["plugin_wd_docs_link"] )) {
84
+ $this->plugin_wd_docs_link = $options["plugin_wd_docs_link"];
85
  }
86
  if(isset( $options["plugin_wizard_link"] )) {
87
  $this->plugin_wizard_link = $options["plugin_wizard_link"];
109
  }
110
  if(isset( $options["menu_position"] )) {
111
  $this->menu_position = $options["menu_position"];
112
+ }
113
+ if(isset( $options["overview_welcome_image"] )) {
114
+ $this->overview_welcome_image = $options["overview_welcome_image"];
115
+ }
116
+ if(isset( $options["display_overview"] )) {
117
+ $this->display_overview = $options["display_overview"];
118
+ }
119
  // directories
120
  $this->wd_dir = dirname( $this->plugin_main_file ) . '/wd';
121
  $this->wd_dir_includes = $this->wd_dir . '/includes';
wd/includes/api.php CHANGED
@@ -3,7 +3,7 @@
3
  exit;
4
  }
5
 
6
- class DoradoWebApi{
7
  ////////////////////////////////////////////////////////////////////////////////////////
8
  // Events //
9
  ////////////////////////////////////////////////////////////////////////////////////////
@@ -31,7 +31,7 @@
31
 
32
 
33
  public function get_remote_data( $id ) {
34
- $remote_data_path = DORADO_WEB_API_PLUGIN_DATA_PATH . '/' . $this->userhash;
35
  $request = wp_remote_get( ( str_replace( '_id_', $id, $remote_data_path ) ) );
36
 
37
  if ( !is_wp_error($request) || wp_remote_retrieve_response_code($request) === 200 ) {
3
  exit;
4
  }
5
 
6
+ class TenWebLibApi{
7
  ////////////////////////////////////////////////////////////////////////////////////////
8
  // Events //
9
  ////////////////////////////////////////////////////////////////////////////////////////
31
 
32
 
33
  public function get_remote_data( $id ) {
34
+ $remote_data_path = TEN_WEB_LIB_API_PLUGIN_DATA_PATH . '/' . $this->userhash;
35
  $request = wp_remote_get( ( str_replace( '_id_', $id, $remote_data_path ) ) );
36
 
37
  if ( !is_wp_error($request) || wp_remote_retrieve_response_code($request) === 200 ) {
wd/includes/deactivate.php CHANGED
@@ -1,179 +1,179 @@
1
  <?php
2
- if ( ! defined( 'ABSPATH' ) ) {
3
- exit;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  }
 
 
 
 
 
 
 
5
 
6
- class DoradoWebDeactivate{
7
- ////////////////////////////////////////////////////////////////////////////////////////
8
- // Events //
9
- ////////////////////////////////////////////////////////////////////////////////////////
10
- ////////////////////////////////////////////////////////////////////////////////////////
11
- // Constants //
12
- ////////////////////////////////////////////////////////////////////////////////////////
13
- ////////////////////////////////////////////////////////////////////////////////////////
14
- // Variables //
15
- ////////////////////////////////////////////////////////////////////////////////////////
16
- public $deactivate_reasons = array();
17
- public $config;
18
- // Reason IDs
19
- const REASON_PLUGIN_IS_HARD_TO_USE_TECHNICAL_PROBLEMS = "reason_plugin_is_hard_to_use_technical_problems";
20
- const REASON_FREE_VERSION_IS_LIMITED = "reason_free_version_limited";
21
- const REASON_PRO_EXPENSIVE = "reason_premium_expensive";
22
- const REASON_UPGRADING_TO_PAID_VERSION = "reason_upgrading_to_paid_version";
23
- const REASON_TEMPORARY_DEACTIVATION = "reason_temporary_deactivation";
24
-
25
- ////////////////////////////////////////////////////////////////////////////////////////
26
- // Constructor & Destructor //
27
- ////////////////////////////////////////////////////////////////////////////////////////
28
- public function __construct( $config = array() ) {
29
- $this->config = $config;
30
- $wd_options = $this->config;
31
-
32
- $this->deactivate_reasons = array(
33
- 1 => array(
34
- 'id' => self::REASON_PLUGIN_IS_HARD_TO_USE_TECHNICAL_PROBLEMS,
35
- 'text' => __( 'Technical problems / hard to use', $wd_options->prefix ),
36
- ),
37
- 2 => array(
38
- 'id' => self::REASON_FREE_VERSION_IS_LIMITED,
39
- 'text' => __( 'Free version is limited', $wd_options->prefix ),
40
- ),
41
- 3 => array(
42
- 'id' => self::REASON_PRO_EXPENSIVE,
43
- 'text' => __( 'Premium is expensive', $wd_options->prefix ),
44
- ),
45
- 4 => array(
46
- 'id' => self::REASON_UPGRADING_TO_PAID_VERSION,
47
- 'text' => __( 'Upgrading to paid version', $wd_options->prefix ),
48
- ),
49
- 5 => array(
50
- 'id' => self::REASON_TEMPORARY_DEACTIVATION,
51
- 'text' => __( 'Temporary deactivation', $wd_options->prefix ),
52
- ),
53
- );
54
-
55
- add_action( 'admin_footer', array( $this, 'add_deactivation_feedback_dialog_box' ) );
56
- add_action( 'admin_init', array( $this, 'submit_and_deactivate' ) );
57
-
58
-
59
- add_action( 'admin_enqueue_scripts', array( $this, 'scripts' ) );
60
-
61
-
62
-
63
 
64
- }
65
- ////////////////////////////////////////////////////////////////////////////////////////
66
- // Public Methods //
67
- ////////////////////////////////////////////////////////////////////////////////////////
68
- public function add_deactivation_feedback_dialog_box(){
69
- $deactivate_reasons = $this->deactivate_reasons;
70
- $wd_options = $this->config;
71
-
72
- ?>
73
- <script>
74
- jQuery(document).ready(function () {
75
- wdReady("<?php echo $wd_options->prefix; ?>");
76
- });
77
- </script>
78
- <?php
79
-
80
- $deactivate_url =
81
- add_query_arg(
82
- array(
83
- 'action' => 'deactivate',
84
- 'plugin' => plugin_basename( $wd_options->plugin_main_file ),
85
- '_wpnonce' => wp_create_nonce( 'deactivate-plugin_' . plugin_basename( $wd_options->plugin_main_file ) )
86
- ),
87
- admin_url( 'plugins.php' )
88
- );
89
-
90
- require ( $wd_options->wd_dir_templates . '/display_deactivation_popup.php' );
91
- }
92
-
93
-
94
-
95
- public function scripts(){
96
- $wd_options = $this->config;
97
- wp_enqueue_style( 'wd-deactivate-popup', $wd_options->wd_url_css . '/deactivate_popup.css', array(), get_option($wd_options->prefix . "_version" ) );
98
- wp_enqueue_script( 'wd-deactivate-popup', $wd_options->wd_url_js . '/deactivate_popup.js', array(), get_option($wd_options->prefix . "_version" ));
99
-
100
- $admin_data = wp_get_current_user();
101
- wp_localize_script( 'wd-deactivate-popup', $wd_options->prefix . 'WDDeactivateVars' , array(
102
- "prefix" => $wd_options->prefix ,
103
- "deactivate_class" => $wd_options->prefix . '_deactivate_link',
104
- "email" => $admin_data->data->user_email,
105
- "plugin_wd_url" => $wd_options->plugin_wd_url,
106
- ));
107
-
108
-
109
- }
110
- public function submit_and_deactivate(){
111
- $wd_options = $this->config;
112
- if( isset( $_POST[$wd_options->prefix . "_submit_and_deactivate"] ) ){
113
-
114
- if( $_POST[$wd_options->prefix . "_submit_and_deactivate"] == 2 || $_POST[$wd_options->prefix . "_submit_and_deactivate"] == 3 ){
115
- $api = new DoradoWebApi( $wd_options );
116
- $hash = $api->get_hash();
117
- if($hash != null){
118
- $data = array();
119
-
120
- $data["reason"] = isset($_POST[$wd_options->prefix . "_reasons"]) ? $_POST[$wd_options->prefix . "_reasons"] : "";
121
- $data["site_url"] = site_url();
122
- $data["plugin_id"] = $wd_options->wd_plugin_id;
123
-
124
- $data["additional_details"] = isset($_POST[$wd_options->prefix . "_additional_details"]) ? $_POST[$wd_options->prefix . "_additional_details"] : "";
125
- $admin_data = wp_get_current_user();
126
- $data["email"] = isset($_POST[$wd_options->prefix . "_email"]) ? $_POST[$wd_options->prefix . "_email"] : $admin_data->data->user_email;
127
- $user_first_name = get_user_meta( $admin_data->ID, "first_name", true );
128
- $user_last_name = get_user_meta( $admin_data->ID, "last_name", true );
129
-
130
- $data["name"] = $user_first_name || $user_last_name ? $user_first_name . " " . $user_last_name : $admin_data->data->user_login;
131
- $data["hash"] = $hash;
132
- $response = wp_remote_post( "https://api.web-dorado.com/deactivatereasons", array(
133
- 'method' => 'POST',
134
- 'timeout' => 45,
135
- 'redirection' => 5,
136
- 'httpversion' => '1.0',
137
- 'blocking' => true,
138
- 'headers' => array(),
139
- 'body' => json_encode($data),
140
- 'cookies' => array()
141
- )
142
- );
143
-
144
- $response_body = (!is_wp_error($response) && isset( $response["body"] )) ? json_decode( $response["body"], true ) : null;
145
- if( is_array( $response_body ) && $response_body["body"]["msg"] == "Access" ) {
146
-
147
- }
148
- }
149
- }
150
- if($_POST[$wd_options->prefix . "_submit_and_deactivate"] == 2 || $_POST[$wd_options->prefix . "_submit_and_deactivate"] == 1 ){
151
- $deactivate_url =
152
- add_query_arg(
153
- array(
154
- 'action' => 'deactivate',
155
- 'plugin' => plugin_basename( $wd_options->plugin_main_file ),
156
- '_wpnonce' => wp_create_nonce( 'deactivate-plugin_' . plugin_basename( $wd_options->plugin_main_file ) )
157
- ),
158
- admin_url( 'plugins.php' )
159
- );
160
- echo '<script>window.location.href="' . $deactivate_url . '";</script>';
161
- }
162
-
163
- }
164
- }
165
-
166
- ////////////////////////////////////////////////////////////////////////////////////////
167
- // Getters & Setters //
168
- ////////////////////////////////////////////////////////////////////////////////////////
169
- ////////////////////////////////////////////////////////////////////////////////////////
170
- // Private Methods //
171
- ////////////////////////////////////////////////////////////////////////////////////////
172
-
173
- ////////////////////////////////////////////////////////////////////////////////////////
174
- // Listeners //
175
- ////////////////////////////////////////////////////////////////////////////////////////
176
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
177
  }
178
 
 
 
 
 
 
 
 
 
 
 
 
 
 
179
 
1
  <?php
2
+ if (!defined('ABSPATH')) {
3
+ exit;
4
+ }
5
+
6
+ class TenWebLibDeactivate
7
+ {
8
+ ////////////////////////////////////////////////////////////////////////////////////////
9
+ // Events //
10
+ ////////////////////////////////////////////////////////////////////////////////////////
11
+ ////////////////////////////////////////////////////////////////////////////////////////
12
+ // Constants //
13
+ ////////////////////////////////////////////////////////////////////////////////////////
14
+ ////////////////////////////////////////////////////////////////////////////////////////
15
+ // Variables //
16
+ ////////////////////////////////////////////////////////////////////////////////////////
17
+ public $deactivate_reasons = array();
18
+ public $config;
19
+ // Reason IDs
20
+ const REASON_PLUGIN_IS_HARD_TO_USE_TECHNICAL_PROBLEMS = "reason_plugin_is_hard_to_use_technical_problems";
21
+ const REASON_FREE_VERSION_IS_LIMITED = "reason_free_version_limited";
22
+ const REASON_PRO_EXPENSIVE = "reason_premium_expensive";
23
+ const REASON_UPGRADING_TO_PAID_VERSION = "reason_upgrading_to_paid_version";
24
+ const REASON_TEMPORARY_DEACTIVATION = "reason_temporary_deactivation";
25
+
26
+ ////////////////////////////////////////////////////////////////////////////////////////
27
+ // Constructor & Destructor //
28
+ ////////////////////////////////////////////////////////////////////////////////////////
29
+ public function __construct($config = array())
30
+ {
31
+ include_once(ABSPATH . "wp-includes/pluggable.php");
32
+ $this->config = $config;
33
+ $wd_options = $this->config;
34
+
35
+ $this->deactivate_reasons = array(
36
+ 1 => array(
37
+ 'id' => self::REASON_PLUGIN_IS_HARD_TO_USE_TECHNICAL_PROBLEMS,
38
+ 'text' => __('Technical problems / hard to use', $wd_options->prefix),
39
+ ),
40
+ 2 => array(
41
+ 'id' => self::REASON_FREE_VERSION_IS_LIMITED,
42
+ 'text' => __('Free version is limited', $wd_options->prefix),
43
+ ),
44
+ 3 => array(
45
+ 'id' => self::REASON_UPGRADING_TO_PAID_VERSION,
46
+ 'text' => __('Upgrading to paid version', $wd_options->prefix),
47
+ ),
48
+ 4 => array(
49
+ 'id' => self::REASON_TEMPORARY_DEACTIVATION,
50
+ 'text' => __('Temporary deactivation', $wd_options->prefix),
51
+ ),
52
+ );
53
+
54
+ add_action('admin_footer', array($this, 'add_deactivation_feedback_dialog_box'));
55
+ add_action('admin_init', array($this, 'submit_and_deactivate'));
56
+
57
+
58
+ // add_action('admin_enqueue_scripts', array($this, 'scripts'));
59
+ // Just enqueue styles/scripts and they will be in the footer.
60
+ $this->scripts();
61
+
62
  }
63
+ ////////////////////////////////////////////////////////////////////////////////////////
64
+ // Public Methods //
65
+ ////////////////////////////////////////////////////////////////////////////////////////
66
+ public function add_deactivation_feedback_dialog_box()
67
+ {
68
+ $deactivate_reasons = $this->deactivate_reasons;
69
+ $wd_options = $this->config;
70
 
71
+ ?>
72
+ <script>
73
+ jQuery(document).ready(function () {
74
+ tenwebReady("<?php echo $wd_options->prefix; ?>");
75
+ });
76
+ </script>
77
+ <?php
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
78
 
79
+ $deactivate_url =
80
+ add_query_arg(
81
+ array(
82
+ 'action' => 'deactivate',
83
+ 'plugin' => plugin_basename($wd_options->plugin_main_file),
84
+ '_wpnonce' => wp_create_nonce('deactivate-plugin_' . plugin_basename($wd_options->plugin_main_file))
85
+ ),
86
+ admin_url('plugins.php')
87
+ );
88
+
89
+ require($wd_options->wd_dir_templates . '/display_deactivation_popup.php');
90
+ }
91
+
92
+
93
+ public function scripts()
94
+ {
95
+ $wd_options = $this->config;
96
+ wp_enqueue_style('tenweb-deactivate-popup', $wd_options->wd_url_css . '/deactivate_popup.css', array(), get_option($wd_options->prefix . "_version"));
97
+ wp_enqueue_script('tenweb-deactivate-popup', $wd_options->wd_url_js . '/deactivate_popup.js', array(), get_option($wd_options->prefix . "_version"));
98
+
99
+ $admin_data = wp_get_current_user();
100
+ wp_localize_script('tenweb-deactivate-popup', $wd_options->prefix . 'WDDeactivateVars', array(
101
+ "prefix" => $wd_options->prefix,
102
+ "deactivate_class" => $wd_options->prefix . '_deactivate_link',
103
+ "email" => $admin_data->data->user_email,
104
+ "plugin_wd_url" => $wd_options->plugin_wd_url,
105
+ ));
106
+
107
+
108
+ }
109
+
110
+ public function submit_and_deactivate()
111
+ {
112
+ $wd_options = $this->config;
113
+ if (isset($_POST[$wd_options->prefix . "_submit_and_deactivate"])) {
114
+
115
+ if ($_POST[$wd_options->prefix . "_submit_and_deactivate"] == 2 || $_POST[$wd_options->prefix . "_submit_and_deactivate"] == 3) {
116
+ //$api = new TenWebLibApi( $wd_options );
117
+
118
+ $data = array();
119
+
120
+ $data["reason"] = isset($_POST[$wd_options->prefix . "_reasons"]) ? $_POST[$wd_options->prefix . "_reasons"] : "";
121
+ $data["site_url"] = site_url();
122
+ $data["product_id"] = $wd_options->plugin_id;
123
+
124
+ $data["additional_details"] = isset($_POST[$wd_options->prefix . "_additional_details"]) ? $_POST[$wd_options->prefix . "_additional_details"] : "";
125
+ $admin_data = wp_get_current_user();
126
+ $data["email"] = isset($_POST[$wd_options->prefix . "_email"]) ? $_POST[$wd_options->prefix . "_email"] : $admin_data->data->user_email;
127
+ $user_first_name = get_user_meta($admin_data->ID, "first_name", true);
128
+ $user_last_name = get_user_meta($admin_data->ID, "last_name", true);
129
+
130
+ $data["name"] = $user_first_name || $user_last_name ? $user_first_name . " " . $user_last_name : $admin_data->data->user_login;
131
+
132
+ $response = wp_remote_post(TEN_WEB_LIB_DEACTIVATION_URL, array(
133
+ 'method' => 'POST',
134
+ 'timeout' => 45,
135
+ 'redirection' => 5,
136
+ 'httpversion' => '1.0',
137
+ 'blocking' => true,
138
+ 'headers' => array("Accept" => "application/x.10webcore.v1+json"),
139
+ 'body' => $data,
140
+ 'cookies' => array()
141
+ )
142
+ );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
143
 
144
+ $response_body = (!is_wp_error($response) && isset($response["body"])) ? json_decode($response["body"], true) : null;
145
+ /*if (is_array($response_body) && $response_body["body"]["msg"] == "Access") {
146
+
147
+ }*/
148
+
149
+ }
150
+ if ($_POST[$wd_options->prefix . "_submit_and_deactivate"] == 2 || $_POST[$wd_options->prefix . "_submit_and_deactivate"] == 1) {
151
+ $deactivate_url =
152
+ add_query_arg(
153
+ array(
154
+ 'action' => 'deactivate',
155
+ 'plugin' => plugin_basename($wd_options->plugin_main_file),
156
+ '_wpnonce' => wp_create_nonce('deactivate-plugin_' . plugin_basename($wd_options->plugin_main_file))
157
+ ),
158
+ admin_url('plugins.php')
159
+ );
160
+ echo '<script>window.location.href="' . $deactivate_url . '";</script>';
161
+ }
162
+
163
+ }
164
  }
165
 
166
+ ////////////////////////////////////////////////////////////////////////////////////////
167
+ // Getters & Setters //
168
+ ////////////////////////////////////////////////////////////////////////////////////////
169
+ ////////////////////////////////////////////////////////////////////////////////////////
170
+ // Private Methods //
171
+ ////////////////////////////////////////////////////////////////////////////////////////
172
+
173
+ ////////////////////////////////////////////////////////////////////////////////////////
174
+ // Listeners //
175
+ ////////////////////////////////////////////////////////////////////////////////////////
176
+
177
+ }
178
+
179
 
wd/includes/notices.php CHANGED
@@ -3,7 +3,7 @@ if ( !defined( 'ABSPATH' ) ) {
3
  exit;
4
  }
5
 
6
- class DoradoWebNotices {
7
 
8
  protected $promo_link = '';
9
 
3
  exit;
4
  }
5
 
6
+ class TenWebLibNotices {
7
 
8
  protected $promo_link = '';
9
 
wd/includes/overview.php CHANGED
@@ -3,7 +3,7 @@
3
  exit;
4
  }
5
 
6
- class DoradoWebOverview{
7
  ////////////////////////////////////////////////////////////////////////////////////////
8
  // Events //
9
  ////////////////////////////////////////////////////////////////////////////////////////
@@ -14,50 +14,19 @@
14
  // Variables //
15
  ////////////////////////////////////////////////////////////////////////////////////////
16
  public $config ;
17
- private $tabs = array();
18
 
19
  ////////////////////////////////////////////////////////////////////////////////////////
20
  // Constructor & Destructor //
21
  ////////////////////////////////////////////////////////////////////////////////////////
22
  public function __construct( $config = array() ) {
23
  $this->config = $config;
24
- $wd_options = $this->config;
25
- $this->tabs = array(
26
- 'welcome' => array(
27
- 'name' => __( "Welcome", $wd_options->prefix ),
28
- 'view' => array( $this, 'wd_overview_welcome' )
29
- ),
30
- 'user_guide' => array(
31
- 'name' => __( "User Guide", $wd_options->prefix ),
32
- 'view' => array( $this, 'wd_overview_user_guide' )
33
- ),
34
- 'deals' => array(
35
- 'name' => __( 'Deals', $wd_options->prefix ),
36
- 'view' => array( $this, 'wd_overview_deals' )
37
- ),
38
- 'support' => array(
39
- 'name' => __( "Support", $wd_options->prefix ),
40
- 'view' => array( $this, 'wd_overview_support' )
41
- ),
42
- 'https://web-dorado.com/support/submit-your-idea.html' => array(
43
- 'name' => __( "Submit Your Idea", $wd_options->prefix ),
44
- 'view' => false
45
- ),
46
- 'https://wordpress.org/support/plugin/' . $wd_options->plugin_wordpress_slug => array(
47
- 'name' => __( "Forum", $wd_options->prefix ),
48
- 'view' => false
49
- )
50
- );
51
-
52
-
53
-
54
  }
55
  ////////////////////////////////////////////////////////////////////////////////////////
56
  // Public Methods //
57
  ////////////////////////////////////////////////////////////////////////////////////////
58
  public function display_overview_page(){
59
  $wd_options = $this->config;
60
- $tabs = $this->tabs;
61
  $start_using_url = "";
62
  if(!empty($this->config->custom_post)) {
63
  if (strpos($this->config->custom_post, 'post_type', 0) !== false) {
@@ -68,204 +37,7 @@
68
  }
69
  require_once( $wd_options->wd_dir_templates . "/display_overview.php" );
70
  }
71
- public function wd_overview_welcome(){
72
- $wd_options = $this->config;
73
- //http://api.wordpress.org/plugins/info/1.0/wd-google-maps
74
- require_once( $wd_options->wd_dir_templates . "/display_overview_welcome.php" );
75
- }
76
- public function wd_overview_user_guide(){
77
- $wd_options = $this->config;
78
- $user_guide = $wd_options->user_guide;
79
- require_once( $wd_options->wd_dir_templates . "/display_overview_user_guide.php" );
80
- }
81
- public function wd_overview_deals(){
82
-
83
- $wd_options = $this->config;
84
- $plugins = array(
85
- "form-maker" => array(
86
- 'title' => 'Form Maker',
87
- 'text' => __( 'Wordpress form builder plugin', $wd_options->prefix ),
88
- 'content' => __( 'Form Maker is a modern and advanced tool for creating WordPress forms easily and fast.', $wd_options->prefix ),
89
- 'href' => 'https://web-dorado.com/products/wordpress-form.html'
90
- ),
91
- "photo-gallery" => array(
92
- 'title' => 'Photo Gallery',
93
- 'text' => __( 'WordPress Photo Gallery plugin', $wd_options->prefix ),
94
- 'content' => __( 'Photo Gallery is a fully responsive WordPress Gallery plugin with advanced functionality.', $wd_options->prefix ),
95
- 'href' => 'https://web-dorado.com/products/wordpress-photo-gallery-plugin.html'
96
- ),
97
- "event-calendar-wd" => array(
98
- 'title' => 'Event Calendar WD',
99
- 'text' => __( 'WordPress calendar plugin', $wd_options->prefix ),
100
- 'content' => __( 'Organize and publish your events in an easy and elegant way using Event Calendar WD.', $wd_options->prefix ),
101
- 'href' => 'https://web-dorado.com/products/wordpress-event-calendar-wd.html'
102
- ),
103
- "wd-google-maps" => array(
104
- 'title' => 'WD Google Maps',
105
- 'text' => __( 'WD Google Maps plugin', $wd_options->prefix ),
106
- 'content' => __( 'Google Maps WD is an intuitive tool for creating Google maps with advanced markers, custom layers and overlays for your website.', $wd_options->prefix ),
107
- 'href' => 'https://web-dorado.com/products/wordpress-google-maps-plugin.html'
108
- ),
109
- "slider-wd" => array(
110
- 'title' => 'Slider WD',
111
- 'text' => __( 'WordPress slider plugin', $wd_options->prefix ),
112
- 'content' => __( 'Create responsive, highly configurable sliders with various effects for your WordPress site.', $wd_options->prefix ),
113
- 'href' => 'https://web-dorado.com/products/wordpress-slider-plugin.html'
114
- ),
115
- "spider-event-calendar" => array(
116
- 'title' => 'Spider Calendar',
117
- 'text' => __( 'WordPress event calendar plugin', $wd_options->prefix ),
118
- 'content' => __( 'Spider Event Calendar is a highly configurable product which allows you to have multiple organized events.', $wd_options->prefix ),
119
- 'href' => 'https://web-dorado.com/products/wordpress-calendar.html'
120
- ),
121
- "wd-instagram-feed" => array(
122
- 'title' => 'Instagram Feed WD',
123
- 'text' => __( 'WordPress Instagram Feed plugin', $wd_options->prefix ),
124
- 'content' => __( 'WD Instagram Feed is a user-friendly tool for displaying user or hashtag-based feeds on your website.', $wd_options->prefix ),
125
- 'href' => 'https://web-dorado.com/products/wordpress-instagram-feed-wd.html'
126
- ),
127
- );
128
- unset($plugins[$wd_options->plugin_wordpress_slug]) ;
129
-
130
- // foreach ( $plugins as $wp_slug => &$plugin ){
131
- // $wp_data = $this->
132
- //remote_get($wp_slug);
133
- // $plugin["downloaded"] = $wp_data["downloaded"];
134
- // $plugin["rating"] = $wp_data["rating"];
135
- // }
136
-
137
- $themes = array(
138
- "business_elite" => array(
139
- 'title' => 'Business Elite Theme',
140
- 'href' => 'https://web-dorado.com/wordpress-themes/business-elite.html'
141
- ),
142
- "portfolio_gallery" => array(
143
- 'title' => 'Portfolio Gallery Theme',
144
- 'href' => 'https://web-dorado.com/wordpress-themes/portfolio-gallery.html'
145
- ),
146
- "sauron" => array(
147
- 'title' => 'Sauron Theme',
148
- 'href' => 'https://web-dorado.com/wordpress-themes/sauron.html'
149
- ),
150
- "business_world" => array(
151
- 'title' => 'Business World Theme',
152
- 'href' => 'https://web-dorado.com/wordpress-themes/business-world.html'
153
- ),
154
- );
155
-
156
- require_once( $wd_options->wd_dir_templates . "/display_overview_deals.php" );
157
- }
158
- public function wd_overview_support(){
159
- $wd_options = $this->config;
160
- global $wpdb;
161
- $server_info = array();
162
-
163
- // Get PHP Version
164
- $server_info["Operating System"] = PHP_OS . " (" . ( PHP_INT_SIZE * 8 ) . ")";
165
- $server_info["PHP Version"] = PHP_VERSION;
166
- $server_info["Server"] = $_SERVER["SERVER_SOFTWARE"];
167
-
168
- // Get MYSQL Version
169
- $sql_version = $wpdb->get_var( "SELECT VERSION() AS version" );
170
- $server_info["MySQL Version"] = $sql_version;
171
-
172
- // GET SQL Mode
173
- $mysqlinfo = $wpdb->get_results( "SHOW VARIABLES LIKE 'sql_mode'" );
174
- if ( is_array( $mysqlinfo ) )
175
- $sql_mode = $mysqlinfo[0]->Value;
176
- if ( empty( $sql_mode ) )
177
- $sql_mode = __( 'Not set', $wd_options->prefix );
178
- $server_info["SQL Mode"] = $sql_mode;
179
-
180
- // Get PHP allow_url_fopen
181
- if( ini_get( 'allow_url_fopen' ) )
182
- $allow_url_fopen = __( 'On', $wd_options->prefix );
183
- else
184
- $allow_url_fopen = __( 'Off', $wd_options->prefix );
185
- $server_info["PHP Allow URL fopen"] = $allow_url_fopen;
186
-
187
- // Get PHP Max Upload Size
188
- if (function_exists('wp_max_upload_size'))
189
- $upload_max = strval(round((int) wp_max_upload_size() / (1024 * 1024))) . 'M';
190
- else if(ini_get('upload_max_filesize'))
191
- $upload_max = ini_get('upload_max_filesize');
192
- else
193
- $upload_max = __('N/A', $wd_options->prefix);
194
-
195
- $server_info["PHP Max Upload Size"] = $upload_max;
196
-
197
- // Get PHP Output buffer Size
198
- if( ini_get( 'pcre.backtrack_limit' ) )
199
- $backtrack_limit = ini_get( 'pcre.backtrack_limit' );
200
- else
201
- $backtrack_limit = __( 'N/A', $wd_options->prefix );
202
- $server_info["PCRE Backtracking Limit"] = $backtrack_limit;
203
-
204
- // Get PHP Max Post Size
205
- if( ini_get( 'post_max_size' ) )
206
- $post_max = ini_get( 'post_max_size' );
207
- else
208
- $post_max = __( 'N/A', $wd_options->prefix );
209
- $server_info["PHP Max Post Size"] = $post_max;
210
-
211
- // Get PHP Max execution time
212
- if( ini_get( 'max_execution_time' ) )
213
- $max_execute = ini_get( 'max_execution_time' );
214
- else
215
- $max_execute = __( 'N/A', $wd_options->prefix );
216
- $server_info["PHP Max Script Execute Time"] = $max_execute;
217
-
218
-
219
- // Get PHP Memory Limit
220
- if( ini_get( 'memory_limit' ) )
221
- $memory_limit = ini_get( 'memory_limit' );
222
- else
223
- $memory_limit = __( 'N/A', $wd_options->prefix );
224
- $server_info["PHP Memory Limit"] = $memory_limit;
225
-
226
- // Get actual memory_get_usage
227
- if ( function_exists( 'memory_get_usage' ) )
228
- $memory_usage = round( memory_get_usage() / 1024 / 1024, 2 ) . __( ' MByte', $wd_options->prefix );
229
- else
230
- $memory_usage = __( 'N/A', $wd_options->prefix );
231
- $server_info["Memory usage"] = $memory_usage;
232
-
233
- // required for EXIF read
234
- if ( is_callable( 'exif_read_data' ) )
235
- $exif = __( 'Yes', $wd_options->prefix ). " (V" . substr( phpversion( 'exif' ), 0, 4 ) . ")" ;
236
- else
237
- $exif = __( 'No', $wd_options->prefix );
238
- $server_info["PHP Exif support"] = $exif;
239
-
240
- // required for meta data
241
- if ( is_callable( 'iptcparse' ) )
242
- $iptc = __( 'Yes', $wd_options->prefix );
243
- else
244
- $iptc = __( 'No', $wd_options->prefix );
245
- $server_info["PHP IPTC support"] = $iptc;
246
-
247
- // required for meta data
248
- if ( is_callable( 'xml_parser_create' ) )
249
- $xml = __( 'Yes', $wd_options->prefix );
250
- else
251
- $xml = __( 'No', $wd_options->prefix );
252
- $server_info["PHP XML support"] = $xml;
253
-
254
- $gd_info = array( "GD support" => __( 'No', $wd_options->prefix ) );
255
- if( function_exists( "gd_info" ) ){
256
- $gd_info = array();
257
- foreach( gd_info() as $key => $val ){
258
- if( is_bool($val) ){
259
- $gd_info[$key] = $val ? __( 'Yes', $wd_options->prefix ) : __( 'No', $wd_options->prefix );
260
- }
261
- else{
262
- $gd_info[$key] = $val;
263
- }
264
- }
265
- }
266
-
267
- require_once( $wd_options->wd_dir_templates . "/display_overview_support.php" );
268
- }
269
 
270
  public function overview_styles() {
271
  $wd_options = $this->config;
3
  exit;
4
  }
5
 
6
+ class TenWebLibOverview{
7
  ////////////////////////////////////////////////////////////////////////////////////////
8
  // Events //
9
  ////////////////////////////////////////////////////////////////////////////////////////
14
  // Variables //
15
  ////////////////////////////////////////////////////////////////////////////////////////
16
  public $config ;
 
17
 
18
  ////////////////////////////////////////////////////////////////////////////////////////
19
  // Constructor & Destructor //
20
  ////////////////////////////////////////////////////////////////////////////////////////
21
  public function __construct( $config = array() ) {
22
  $this->config = $config;
23
+ $wd_options = $this->config;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
24
  }
25
  ////////////////////////////////////////////////////////////////////////////////////////
26
  // Public Methods //
27
  ////////////////////////////////////////////////////////////////////////////////////////
28
  public function display_overview_page(){
29
  $wd_options = $this->config;
 
30
  $start_using_url = "";
31
  if(!empty($this->config->custom_post)) {
32
  if (strpos($this->config->custom_post, 'post_type', 0) !== false) {
37
  }
38
  require_once( $wd_options->wd_dir_templates . "/display_overview.php" );
39
  }
40
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
41
 
42
  public function overview_styles() {
43
  $wd_options = $this->config;
wd/includes/subscribe.php CHANGED
@@ -1,138 +1,124 @@
1
  <?php
2
- if ( ! defined( 'ABSPATH' ) ) {
3
- exit;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  }
5
- class DoradoWebSubscribe {
6
- // //////////////////////////////////////////////////////////////////////////////////////
7
- // Events //
8
- // //////////////////////////////////////////////////////////////////////////////////////
9
- // //////////////////////////////////////////////////////////////////////////////////////
10
- // Constants //
11
- // //////////////////////////////////////////////////////////////////////////////////////
12
- // //////////////////////////////////////////////////////////////////////////////////////
13
- // Variables //
14
- // //////////////////////////////////////////////////////////////////////////////////////
15
- public $config;
16
- // //////////////////////////////////////////////////////////////////////////////////////
17
- // Constructor & Destructor //
18
- // //////////////////////////////////////////////////////////////////////////////////////
19
- public function __construct( $config = array() ){
20
- $this->config = $config;
21
- add_action( 'admin_init', array( $this, 'after_subscribe' ) );
22
- }
23
- // //////////////////////////////////////////////////////////////////////////////////////
24
- // Public Methods //
25
- // //////////////////////////////////////////////////////////////////////////////////////
26
-
27
- public function subscribe_scripts() {
28
- $wd_options = $this->config;
29
- wp_register_script ( 'subscribe_js', $wd_options->wd_url_js . '/subsribe.js' );
30
- wp_enqueue_script ( 'subscribe_js' );
31
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32
  }
33
- public function subscribe_styles() {
34
- $wd_options = $this->config;
35
- wp_enqueue_style( $wd_options->prefix . 'subscribe', $wd_options->wd_url_css . '/subscribe.css' );
36
-
37
- }
38
-
39
- public function subscribe_display_page() {
40
- $wd_options = $this->config;
41
- $list = array(
42
- 0 => array(
43
- "title" => __( "Your name &", $wd_options->prefix ),
44
- "small_text" => __( "Email address", $wd_options->prefix ),
45
- "img" => $wd_options->wd_url_img . '/sub_1.png',
46
- ),
47
- 1 => array(
48
- "title" => __( "Site URL", $wd_options->prefix ),
49
- "small_text" => __( "Wordpress version", $wd_options->prefix ),
50
- "img" => $wd_options->wd_url_img . '/sub_2.png',
51
- ),
52
- 2 => array(
53
- "title" => __( "List of plugins", $wd_options->prefix ),
54
- "small_text" => "",
55
- "img" => $wd_options->wd_url_img . '/sub_4.png',
56
- ),
57
- );
58
-
59
- require_once ( $wd_options->wd_dir_templates . "/display_subscribe.php" );
60
- }
61
- public function after_subscribe(){
62
- $wd_options = $this->config;
63
- if( isset( $_GET[ $wd_options->prefix . "_sub_action"] ) ){
64
-
65
- if( $_GET[$wd_options->prefix . "_sub_action"] == "allow" ){
66
- $api = new DoradoWebApi($wd_options);
67
- $hash = $api->get_hash();
68
-
69
- if( $hash != null ){
70
- $all_plugins = array();
71
- $plugins = get_plugins();
72
- foreach ( $plugins as $slug => $data ) {
73
- $plugin = array(
74
- "Name" => $data["Name"],
75
- "PluginURI" => $data["PluginURI"],
76
- "Author" => $data["Author"],
77
- "AuthorURI" => $data["AuthorURI"]
78
- );
79
- $all_plugins[$slug] = $plugin;
80
- }
81
-
82
- $data = array();
83
- $data["site_url"] = site_url();
84
-
85
- $admin_data = wp_get_current_user();
86
-
87
- $user_first_name = get_user_meta( $admin_data->ID, "first_name", true );
88
- $user_last_name = get_user_meta( $admin_data->ID, "last_name", true );
89
-
90
- $data["name"] = $user_first_name || $user_last_name ? $user_first_name . " " . $user_last_name : $admin_data->data->user_login;
91
-
92
- $data["email"] = $admin_data->data->user_email;
93
- $data["wp_version"] = get_bloginfo( 'version' );
94
- $data["plugin_id"] = $wd_options->wd_plugin_id;
95
- $data["hash"] = $hash;
96
- $data["all_plugins"] = $all_plugins;
97
-
98
-
99
- $response = wp_remote_post( "https://api.web-dorado.com/collectuserdata", array(
100
- 'method' => 'POST',
101
- 'timeout' => 45,
102
- 'redirection' => 5,
103
- 'httpversion' => '1.0',
104
- 'blocking' => true,
105
- 'headers' => array(),
106
- 'body' => json_encode($data),
107
- 'cookies' => array()
108
- )
109
- );
110
-
111
- $response_body = (!is_wp_error($response) && isset( $response["body"] )) ? json_decode( $response["body"], true ) : null;
112
-
113
- if( is_array( $response_body ) && $response_body["body"]["msg"] == "Access" ) {
114
-
115
- }
116
- }
117
- }
118
- if ( get_option( $wd_options->prefix . "_subscribe_done" ) != 1 ) {
119
- update_option( $wd_options->prefix . "_subscribe_done", 1 );
120
- }
121
- else {
122
- add_option( $wd_options->prefix . "_subscribe_done" , "1", '', 'no');
123
- }
124
-
125
- wp_safe_redirect( $wd_options->after_subscribe );
126
- }
127
-
128
- }
129
- // //////////////////////////////////////////////////////////////////////////////////////
130
- // Getters & Setters //
131
- // //////////////////////////////////////////////////////////////////////////////////////
132
- // //////////////////////////////////////////////////////////////////////////////////////
133
- // Private Methods //
134
- // //////////////////////////////////////////////////////////////////////////////////////
135
- // //////////////////////////////////////////////////////////////////////////////////////
136
- // Listeners //
137
- // //////////////////////////////////////////////////////////////////////////////////////
138
  }
 
 
 
 
 
 
 
 
 
 
1
  <?php
2
+ if (!defined('ABSPATH')) {
3
+ exit;
4
+ }
5
+
6
+ class TenWebLibSubscribe
7
+ {
8
+ // //////////////////////////////////////////////////////////////////////////////////////
9
+ // Events //
10
+ // //////////////////////////////////////////////////////////////////////////////////////
11
+ // //////////////////////////////////////////////////////////////////////////////////////
12
+ // Constants //
13
+ // //////////////////////////////////////////////////////////////////////////////////////
14
+ // //////////////////////////////////////////////////////////////////////////////////////
15
+ // Variables //
16
+ // //////////////////////////////////////////////////////////////////////////////////////
17
+ public $config;
18
+ // //////////////////////////////////////////////////////////////////////////////////////
19
+ // Constructor & Destructor //
20
+ // //////////////////////////////////////////////////////////////////////////////////////
21
+ public function __construct($config = array())
22
+ {
23
+ $this->config = $config;
24
+ add_action('admin_init', array($this, 'after_subscribe'));
25
+ }
26
+ // //////////////////////////////////////////////////////////////////////////////////////
27
+ // Public Methods //
28
+ // //////////////////////////////////////////////////////////////////////////////////////
29
+
30
+ public function subscribe_scripts()
31
+ {
32
+ $wd_options = $this->config;
33
+ wp_register_script('subscribe_js', $wd_options->wd_url_js . '/subsribe.js');
34
+ wp_enqueue_script('subscribe_js');
35
+
36
+ }
37
+
38
+ public function subscribe_styles()
39
+ {
40
+ $wd_options = $this->config;
41
+ wp_enqueue_style($wd_options->prefix . 'subscribe', $wd_options->wd_url_css . '/subscribe.css');
42
+
43
+ }
44
+
45
+ public function subscribe_display_page()
46
+ {
47
+ $wd_options = $this->config;
48
+ require_once($wd_options->wd_dir_templates . "/display_subscribe.php");
49
  }
50
+
51
+ public function after_subscribe()
52
+ {
53
+ $wd_options = $this->config;
54
+ if (isset($_GET[$wd_options->prefix . "_sub_action"])) {
55
+
56
+ if ($_GET[$wd_options->prefix . "_sub_action"] == "allow") {
57
+ //$api = new TenWebLibApi($wd_options);
58
+ $all_plugins = array();
59
+ $plugins = get_plugins();
60
+ foreach ($plugins as $slug => $data) {
61
+ $plugin = array(
62
+ "Name" => $data["Name"],
63
+ "PluginURI" => $data["PluginURI"],
64
+ "Author" => $data["Author"],
65
+ "AuthorURI" => $data["AuthorURI"]
66
+ );
67
+ $all_plugins[$slug] = $plugin;
68
+ }
69
+
70
+ $data = array();
71
+ $data["wp_site_url"] = site_url();
72
+
73
+ $admin_data = wp_get_current_user();
74
+
75
+ $user_first_name = get_user_meta($admin_data->ID, "first_name", true);
76
+ $user_last_name = get_user_meta($admin_data->ID, "last_name", true);
77
+
78
+ $data["name"] = $user_first_name || $user_last_name ? $user_first_name . " " . $user_last_name : $admin_data->data->user_login;
79
+
80
+ $data["email"] = $admin_data->data->user_email;
81
+ $data["wp_version"] = get_bloginfo('version');
82
+ $data["product_id"] = $wd_options->plugin_id;
83
+ $data["all_plugins"] = json_encode($all_plugins);
84
+
85
+
86
+ $response = wp_remote_post(TEN_WEB_LIB_SUBSCRIBE_URL, array(
87
+ 'method' => 'POST',
88
+ 'timeout' => 45,
89
+ 'redirection' => 5,
90
+ 'httpversion' => '1.0',
91
+ 'blocking' => true,
92
+ 'headers' => array("Accept" => "application/x.10webcore.v1+json"),
93
+ 'body' => $data,
94
+ 'cookies' => array()
95
+ )
96
+ );
97
+
98
+ $response_body = (!is_wp_error($response) && isset($response["body"])) ? json_decode($response["body"], true) : null;
99
+
100
+ if (is_array($response_body) && $response_body["body"]["msg"] == "ok") {
101
+
102
+ }
103
+
104
+ }
105
+ if (get_option($wd_options->prefix . "_subscribe_done") != 1) {
106
+ update_option($wd_options->prefix . "_subscribe_done", 1);
107
+ } else {
108
+ add_option($wd_options->prefix . "_subscribe_done", "1", '', 'no');
109
+ }
110
+
111
+ wp_safe_redirect($wd_options->after_subscribe);
112
  }
113
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
114
  }
115
+ // //////////////////////////////////////////////////////////////////////////////////////
116
+ // Getters & Setters //
117
+ // //////////////////////////////////////////////////////////////////////////////////////
118
+ // //////////////////////////////////////////////////////////////////////////////////////
119
+ // Private Methods //
120
+ // //////////////////////////////////////////////////////////////////////////////////////
121
+ // //////////////////////////////////////////////////////////////////////////////////////
122
+ // Listeners //
123
+ // //////////////////////////////////////////////////////////////////////////////////////
124
+ }
wd/start.php CHANGED
@@ -2,7 +2,10 @@
2
  if ( ! defined( 'ABSPATH' ) ) {
3
  exit;
4
  }
5
- define( 'DORADO_WEB_API_PLUGIN_DATA_PATH', 'https://api.web-dorado.com/v2/_id_/plugindata' );
 
 
 
6
  require_once dirname( __FILE__ ) . '/config.php';
7
 
8
  /**
@@ -14,7 +17,6 @@
14
  * plugin_main_file;
15
  * description;
16
  * plugin_features;
17
- * user_guide;
18
  * video_youtube_id;
19
  * plugin_wd_url;
20
  * plugin_wd_demo_link;
@@ -25,13 +27,11 @@
25
  * plugin_menu_icon;
26
  * custom_post;
27
  */
28
-
29
- function dorado_web_init( $options ) {
30
-
31
  // load files
32
  require_once dirname( __FILE__ ) . '/wd.php';
33
 
34
- $wd = new DoradoWeb();
35
  $wd->wd_init( $options );
36
 
37
  }
2
  if ( ! defined( 'ABSPATH' ) ) {
3
  exit;
4
  }
5
+ define( 'TEN_WEB_LIB_API_PLUGIN_DATA_PATH', 'https://api.web-dorado.com/v2/_id_/plugindata' );
6
+ define( 'TEN_WEB_LIB_SUBSCRIBE_URL', 'https://core.10web.io/api/wp-subscribe' );
7
+ define( 'TEN_WEB_LIB_DEACTIVATION_URL', 'https://core.10web.io/api/deactivation_reasons' );
8
+
9
  require_once dirname( __FILE__ ) . '/config.php';
10
 
11
  /**
17
  * plugin_main_file;
18
  * description;
19
  * plugin_features;
 
20
  * video_youtube_id;
21
  * plugin_wd_url;
22
  * plugin_wd_demo_link;
27
  * plugin_menu_icon;
28
  * custom_post;
29
  */
30
+ function ten_web_lib_init( $options ) {
 
 
31
  // load files
32
  require_once dirname( __FILE__ ) . '/wd.php';
33
 
34
+ $wd = new TenWebLib();
35
  $wd->wd_init( $options );
36
 
37
  }
wd/templates/display_deactivation_popup.php CHANGED
@@ -1,27 +1,28 @@
1
- <div class="wd-opacity wd-<?php echo $wd_options->prefix; ?>-opacity"></div>
2
- <div class="wd-deactivate-popup wd-<?php echo $wd_options->prefix; ?>-deactivate-popup">
3
- <div class="wd-deactivate-popup-opacity wd-deactivate-popup-opacity-<?php echo $wd_options->prefix; ?>">
4
- <img src="<?php echo $wd_options->wd_url_img . '/spinner.gif'; ?>" class="wd-img-loader" >
5
  </div>
6
  <form method="post" id="<?php echo $wd_options->prefix; ?>_deactivate_form">
7
- <div class="wd-deactivate-popup-header">
8
- <?php _e( "Please let us know why you are deactivating. Your answer will help us to serve you better (Optional)", $wd_options->prefix ); ?>:
 
9
  </div>
10
 
11
- <div class="wd-deactivate-popup-body">
12
  <?php foreach( $deactivate_reasons as $deactivate_reason_slug => $deactivate_reason ) { ?>
13
- <div class="wd-<?php echo $wd_options->prefix; ?>-reasons">
14
  <input type="radio" value="<?php echo $deactivate_reason["id"];?>" id="<?php echo $wd_options->prefix . "-" .$deactivate_reason["id"]; ?>" name="<?php echo $wd_options->prefix; ?>_reasons" >
15
  <label for="<?php echo $wd_options->prefix . "-" . $deactivate_reason["id"]; ?>"><?php echo $deactivate_reason["text"];?></label>
16
  </div>
17
  <?php } ?>
18
  <div class="<?php echo $wd_options->prefix; ?>_additional_details_wrap"></div>
19
  </div>
20
- <div class="wd-btns">
21
- <a href="<?php echo $deactivate_url; ?>" data-val="1" class="button button-primary button-close wd-<?php echo $wd_options->prefix; ?>-deactivate" id="wd-<?php echo $wd_options->prefix; ?>-deactivate"><?php _e( "Skip and Deactivate" , $wd_options->prefix ); ?></a>
22
- <a href="<?php echo $deactivate_url; ?>" data-val="2" class="button button-primary button-close wd-<?php echo $wd_options->prefix; ?>-deactivate" id="wd-<?php echo $wd_options->prefix; ?>-submit-and-deactivate" style="display:none;"><?php _e( "Submit and Deactivate" , $wd_options->prefix ); ?></a>
23
  </div>
24
  <input type="hidden" name="<?php echo $wd_options->prefix . "_submit_and_deactivate"; ?>" value="" >
25
  <?php wp_nonce_field( $wd_options->prefix . '_save_form', $wd_options->prefix . '_save_form_fild'); ?>
26
  </form>
27
- </div>
1
+ <div class="tenweb-opacity tenweb-<?php echo $wd_options->prefix; ?>-opacity"></div>
2
+ <div class="tenweb-deactivate-popup tenweb-<?php echo $wd_options->prefix; ?>-deactivate-popup">
3
+ <div class="tenweb-deactivate-popup-opacity tenweb-deactivate-popup-opacity-<?php echo $wd_options->prefix; ?>">
4
+ <img src="<?php echo $wd_options->wd_url_img . '/spinner.gif'; ?>" class="tenweb-img-loader" >
5
  </div>
6
  <form method="post" id="<?php echo $wd_options->prefix; ?>_deactivate_form">
7
+ <div class="tenweb-deactivate-popup-header">
8
+ <?php _e( "Please let us know why you are deactivating. Your answer will help us to provide you support or sometimes offer discounts. (Optional)", $wd_options->prefix ); ?>:
9
+ <span class="tenweb-deactivate-popup-close-btn"></span>
10
  </div>
11
 
12
+ <div class="tenweb-deactivate-popup-body">
13
  <?php foreach( $deactivate_reasons as $deactivate_reason_slug => $deactivate_reason ) { ?>
14
+ <div class="tenweb-<?php echo $wd_options->prefix; ?>-reasons">
15
  <input type="radio" value="<?php echo $deactivate_reason["id"];?>" id="<?php echo $wd_options->prefix . "-" .$deactivate_reason["id"]; ?>" name="<?php echo $wd_options->prefix; ?>_reasons" >
16
  <label for="<?php echo $wd_options->prefix . "-" . $deactivate_reason["id"]; ?>"><?php echo $deactivate_reason["text"];?></label>
17
  </div>
18
  <?php } ?>
19
  <div class="<?php echo $wd_options->prefix; ?>_additional_details_wrap"></div>
20
  </div>
21
+ <div class="tenweb-btns">
22
+ <a href="<?php echo $deactivate_url; ?>" data-val="1" class="button button-secondary button-close" id="tenweb-<?php echo $wd_options->prefix; ?>-deactivate"><?php _e( "Skip and Deactivate" , $wd_options->prefix ); ?></a>
23
+ <a href="<?php echo $deactivate_url; ?>" data-val="2" class="button button-primary button-primary-disabled button-close tenweb-<?php echo $wd_options->prefix; ?>-deactivate" id="tenweb-<?php echo $wd_options->prefix; ?>-submit-and-deactivate"><?php _e( "Submit and Deactivate" , $wd_options->prefix ); ?></a>
24
  </div>
25
  <input type="hidden" name="<?php echo $wd_options->prefix . "_submit_and_deactivate"; ?>" value="" >
26
  <?php wp_nonce_field( $wd_options->prefix . '_save_form', $wd_options->prefix . '_save_form_fild'); ?>
27
  </form>
28
+ </div>
wd/templates/display_overview.php CHANGED
@@ -1,43 +1,124 @@
1
- <div class="overview_welcome">
2
- <div class="wd-cell wd-valign-middle">
3
- <a href="<?php echo $wd_options->plugin_wd_url; ?>" target="_blank"><img
4
- src="<?php echo $wd_options->wd_url_img . '/' . $wd_options->prefix . '_main_plugin.png'; ?>"></a>
5
- </div>
6
- <div class="wd-cell wd-valign-middle">
7
-
8
- <h2><?php echo sprintf(__("Welcome to %s", $wd_options->prefix), $wd_options->plugin_title); ?> <?php if (!empty($start_using_url)) { ?>
9
- <div class="wd-start-using-button">
10
- <a href="<?php echo $start_using_url; ?>" class="button button-primary button-large">Start using</a>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11
  </div>
12
- <?php } ?></h2>
13
-
14
- <div class="overview_welcome_text">
15
-
16
- <div><?php echo sprintf(__("CONGRATS! You've successfully installed %s WordPress plugin.", $wd_options->prefix), $wd_options->plugin_title); ?></div>
17
- <div><?php echo $wd_options->description; ?></div>
18
  </div>
19
- </div>
20
- </div>
21
- <div class="overview_wrap">
22
- <ul class="overview_tabs">
23
- <?php
24
- foreach ($tabs as $tab_key => $tab) {
25
- $href = $tab['view'] !== false ? "#" . $tab_key : $tab_key;
26
- $target = $tab['view'] == false ? 'target="_blank" class="not_tab"' : '';
27
- $overview_tab_active_class = $tab_key == 'welcome' ? 'class="overview_tab_active"' : ''
28
- ?>
29
- <li class=""><a
30
- href="<?php echo $href; ?>" <?php echo $overview_tab_active_class; ?> <?php echo $target; ?>><?php echo esc_html($tab['name']); ?></a>
31
- </li>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32
  <?php } ?>
33
- </ul>
34
- <div class="overview_content">
35
- <?php
36
- foreach ($tabs as $tab_key => $tab) {
37
- if ($tab['view'] !== false) {
38
- echo call_user_func($tab['view']);
39
- }
40
- }
41
- ?>
42
- </div>
43
  </div>
1
+ <div class="tenweb_overview">
2
+ <div class="tenweb_header">
3
+ <div class="container tenweb_clear container_top">
4
+ <div class="tenweb_logo">
5
+ <a href="https://10web.io/" target="_blank">
6
+ <div></div>
7
+ </a>
8
+ </div>
9
+ <div class="tenweb_header_right tenweb_clear">
10
+ <div class="inline-block header_text"><?php echo sprintf(__("Get Premium %s and Other Solutions Essential for Your WordPress Site.", $wd_options->prefix), $wd_options->plugin_title); ?>
11
+ </div>
12
+ <a href="https://my.10web.io/checkout/" target="_blank"
13
+ class="button"><?php _e("Try Free", $wd_options->prefix); ?></a>
14
+ </div>
15
+ </div>
16
+ <div class="tenweb_header_divider">
17
+ </div>
18
+ <div class="container container_bottom">
19
+ <div class="plugin_info">
20
+ <img src="<?php echo $wd_options->overview_welcome_image; ?>" class="plugin_logo">
21
+ <h2><?php _e("Premium ", $wd_options->prefix); ?><?php echo $wd_options->plugin_title; ?></h2>
22
+ <div class="and"> & </div>
23
+ </div>
24
+ <div class="plan_features tenweb_clear">
25
+ <div class="plan_feature pro_plugins">
26
+ <div class="logo"></div>
27
+ <h3><?php _e("60+ pro plugins/Add-ons", $wd_options->prefix); ?></h3>
28
+ <p><?php _e("Access 60+ plugins and add-ons, including key plugins, such as gallery, form, slider, social plugins and more.", $wd_options->prefix); ?></p>
29
+ </div>
30
+ <div class="plan_feature dashboard">
31
+ <div class="logo"></div>
32
+ <h3><?php _e("Unified dashboard", $wd_options->prefix); ?></h3>
33
+ <p><?php _e("Manage your WordPress websites all in one place within a single dashboard. No need to switch between sites.", $wd_options->prefix); ?></p>
34
+ </div>
35
+ <div class="plan_feature pro_themes">
36
+ <div class="logo"></div>
37
+ <h3><?php _e("Premium WordPress themes", $wd_options->prefix); ?></h3>
38
+ <p><?php _e("Professionally designed, responsive themes for your website. Build fully-functional, elegant websites effortlessly.", $wd_options->prefix); ?></p>
39
+ </div>
40
+ <?php if ($wd_options->plugin_wordpress_slug != "backup-wd") { ?>
41
+ <div class="plan_feature backup">
42
+ <div class="logo"></div>
43
+ <h3><?php _e("Backup", $wd_options->prefix); ?></h3>
44
+ <p><?php _e("10Web cloud storage space. Easily and securely backup your website in our storage.", $wd_options->prefix); ?></p>
45
+ </div>
46
+ <?php } ?>
47
+ <?php if ($wd_options->plugin_wordpress_slug != "seo-by-10web") { ?>
48
+ <div class="plan_feature seo">
49
+ <div class="logo"></div>
50
+ <h3><?php _e("SEO", $wd_options->prefix); ?></h3>
51
+ <p><?php _e("Improve search rankings of your WordPress site with a comprehensive search engine optimization solution.", $wd_options->prefix); ?></p>
52
+ </div>
53
+ <?php } ?>
54
+ <div class="plan_feature security">
55
+ <div class="logo"></div>
56
+ <h3><?php _e("Security", $wd_options->prefix); ?></h3>
57
+ <p><?php _e("Protect your WordPress site from security issues and threats with a powerful security service coming soon to 10Web.", $wd_options->prefix); ?></p>
58
+ </div>
59
+ <?php if ($wd_options->plugin_wordpress_slug != "image-optimizer-wd") { ?>
60
+ <div class="plan_feature image_optimizer">
61
+ <div class="logo"></div>
62
+ <h3><?php _e("Image optimization", $wd_options->prefix); ?></h3>
63
+ <p><?php _e("Automatically resize and compress all images on your website to save space and improve site speed.", $wd_options->prefix); ?></p>
64
+ </div>
65
+ <?php } ?>
66
+ <div class="plan_feature hosting">
67
+ <div class="logo"></div>
68
+ <h3><?php _e("Hosting", $wd_options->prefix); ?></h3>
69
+ <p><?php _e("We’ll soon be offering affordable hosting solution with WordPress-friendly features and great customer support.", $wd_options->prefix); ?></p>
70
+ </div>
71
+ </div>
72
+ <a href="https://my.10web.io/checkout/" target="_blank"
73
+ class="button"><?php _e("Get free for 14 days", $wd_options->prefix); ?></a>
74
+ <div><a href="https://10web.io/" target="_blank"
75
+ class="more white"><?php _e("Learn More", $wd_options->prefix); ?></a></div>
76
  </div>
 
 
 
 
 
 
77
  </div>
78
+ <?php if (count($wd_options->plugin_features)) { ?>
79
+ <div class="tenweb_plugin_features">
80
+ <div class="container">
81
+ <h2><?php _e("Premium ", $wd_options->prefix); ?><?php echo $wd_options->plugin_title; ?><?php _e(" features you get!", $wd_options->prefix); ?></h2>
82
+ <div class="plugin_features tenweb_clear">
83
+ <?php foreach ($wd_options->plugin_features as $features) { ?>
84
+ <div class="plugin_feature">
85
+ <div class="plugin_feature_logo">
86
+ <img src="<?php echo $features['logo']; ?>">
87
+ </div>
88
+ <h3><?php echo $features['title']; ?></h3>
89
+ <p><?php echo $features['description']; ?></p>
90
+ </div>
91
+ <?php } ?>
92
+ </div>
93
+ <div class="and circle"> & </div>
94
+ <h3 class="more_features"><?php _e("More great features of the plugin", $wd_options->prefix); ?></h3>
95
+ <a href="<?php echo $wd_options->plugin_wd_url; ?>" target="_blank"
96
+ class="more blue"><?php _e("Learn More", $wd_options->prefix); ?></a>
97
+ </div>
98
+ </div>
99
+ <?php }
100
+ if(trim($wd_options->plugin_wd_demo_link) != "" || trim($wd_options->plugin_wd_docs_link) != ""){ ?>
101
+ <div class="tenweb_how_it_works">
102
+ <div class="container">
103
+ <h2><?php _e("Checkout how it works", $wd_options->prefix); ?></h2>
104
+ <?php
105
+ if(trim($wd_options->plugin_wd_demo_link) != ""){ ?>
106
+ <a href="<?php echo $wd_options->plugin_wd_demo_link; ?>" target="_blank"
107
+ class="button transparent"><?php _e("Demo", $wd_options->prefix); ?></a>
108
+ <?php }
109
+ if(trim($wd_options->plugin_wd_docs_link) != ""){ ?>
110
+ <a href="<?php echo $wd_options->plugin_wd_docs_link; ?>" target="_blank"
111
+ class="button transparent"><?php _e("User Guide", $wd_options->prefix); ?></a>
112
+ <?php } ?>
113
+ </div>
114
+ </div>
115
  <?php } ?>
116
+ <div class="tenweb_footer <?php echo trim($wd_options->plugin_wd_demo_link) == "" ? "without_demo" : ""; ?>">
117
+ <div class="container">
118
+ <h2><?php echo $wd_options->description; ?></h2>
119
+ <p><?php echo sprintf(__("Get Premium %s and Other Solutions Essential for Your WordPress Site.", $wd_options->prefix), $wd_options->plugin_title); ?></p>
120
+ <a href="https://my.10web.io/checkout/" target="_blank"
121
+ class="button"><?php _e("Get free for 14 days", $wd_options->prefix); ?></a>
122
+ </div>
123
+ </div>
 
 
124
  </div>
wd/templates/display_overview_deals.php DELETED
@@ -1,81 +0,0 @@
1
- <div id="deals">
2
-
3
- <div id="plugins">
4
- <div class="deals_header deals_header_plugins">
5
- <a href="https://web-dorado.com/wordpress-plugins-bundle.html" target="_blank">
6
- <div class="wd-table">
7
- <div class="wd-cell wd-text-right wd-valign-middle">
8
- <img src="<?php echo $wd_options->wd_url_img . '/' . $wd_options->prefix . '_main_plugin.png'; ?>" width="100px">
9
- </div>
10
- <div class="wd-cell wd-valign-middle">
11
- <div class="titles_wrap">
12
- <div class="deals_main_title"><?php echo sprintf( __( "Get %s", $wd_options->prefix ), $wd_options->plugin_title ); ?></div>
13
- <div class="deals_main_title"><span class="higlight">+27 </span><?php echo __( "plugins", $wd_options->prefix ); ?></div>
14
- <div class="deals_secondary_title"><?php echo __( "for", $wd_options->prefix ); ?><span class="higlight"> $99 </span><?php echo __( "only", $wd_options->prefix ); ?></div>
15
- </div>
16
- <div class="deals_save"><?php echo __( "Save 80%", $wd_options->prefix ); ?></div>
17
- </div>
18
- </div>
19
- </a>
20
- </div>
21
- <div class="deals_content">
22
- <?php foreach( $plugins as $wp_slug => &$plugin ){ ?>
23
-
24
- <div class="deal_block">
25
- <div class="deal_title">
26
- <a href="<?php echo $plugin["href"]; ?>" target="_blank" >
27
- <img src = "<?php echo $wd_options->wd_url_img . '/plugins/' . $wp_slug . '.png'; ?>">
28
- <h2><?php echo $plugin["title"]; ?></h2>
29
- </a>
30
- </div>
31
- <div class="deal_desc">
32
- <p><?php echo $plugin["content"]; ?></p>
33
- <div class="deal_desc_footer">
34
- <div class="download_btn">
35
- <a href="<?php echo $plugin["href"]; ?>" target="_blank" ><?php _e( "Download", $wd_options->prefix ); ?></a>
36
- </div>
37
- </div>
38
- </div>
39
-
40
- </div>
41
- <?php } ?>
42
- </div>
43
- <div class="get_all_deals">
44
- <a href="https://web-dorado.com/wordpress-plugins-bundle.html" target="_blank" >
45
- <?php _e( "Get all plugins", $wd_options->prefix ); ?>
46
- </a>
47
- </div>
48
- </div>
49
- <div id="themes">
50
- <div class="deals_header deals_header_themes">
51
- <a href="https://web-dorado.com/wordpress-themes-bundle.html" target="_blank">
52
- <div class="wd-table">
53
- <div class="wd-cell wd-text-right wd-valign-middle">
54
- </div>
55
- <div class="wd-cell wd-valign-middle">
56
- <div class="titles_wrap">
57
- <div class="deals_main_title"><?php echo __( "Get all 11 themes", $wd_options->prefix ); ?></div>
58
- <div class="deals_main_title"><?php echo __( "for", $wd_options->prefix ); ?><span class="higlight"> $40 </span><?php echo __( "only", $wd_options->prefix ); ?></div>
59
- </div>
60
- <div class="deals_save"><?php echo __( "Save 70%", $wd_options->prefix ); ?></div>
61
- </div>
62
- </div>
63
- </a>
64
- </div>
65
- <div class="deals_content">
66
- <?php foreach( $themes as $slug => $theme ){ ?>
67
- <div class="theme_block">
68
- <a href="<?php echo $theme["href"]; ?>" target="_blank" >
69
- <img src = "<?php echo $wd_options->wd_url_img . '/plugins/' . $slug . '.png'; ?>" width="100%;">
70
- <div><?php echo $theme["title"]; ?></div>
71
- </a>
72
- </div>
73
- <?php } ?>
74
- </div>
75
- <div class="get_all_deals">
76
- <a href="https://web-dorado.com/wordpress-themes-bundle.html" target="_blank" >
77
- <?php _e( "Find out more", $wd_options->prefix ); ?>
78
- </a>
79
- </div>
80
- </div>
81
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
wd/templates/display_overview_support.php DELETED
@@ -1,43 +0,0 @@
1
- <div id="support">
2
- <p class="wd-support-main">
3
- <?php echo sprintf( __("You may contact us by filling in this form or by email %s any time you need professional support or have any questions. You can also fill in the form to leave your comments or feedback.", $wd_options->prefix), "<span class='support_email'>(support@web-dorado.com)</span>") ;?>
4
- </p>
5
- <div class="wd-overview-site-deatils">
6
- <h2><?php _e( "Site Details", $wd_options->prefix ); ?></h2>
7
- <p>
8
- <?php _e( "When contacting support, consider copying and pasting this information in your support request.", $wd_options->prefix ); ?>
9
- <br>
10
- <?php _e( "It helps us troubleshoot more quickly.", $wd_options->prefix ); ?>
11
- </p>
12
- <?php
13
- if ( function_exists('current_user_can' ) ) {
14
- if ( current_user_can('manage_options') ) {
15
- ?>
16
- <div class="wd-site-deatils wd-table">
17
- <button id="wd-copy"><?php _e( "Copy to Clipboard", $wd_options->prefix ); ?></button>
18
- <div id="wd-site-deatils">
19
- <textarea rows="10" id="wd-site-deatils-textarea"><?php
20
- _e( "Server Settings", $wd_options->prefix );
21
- echo '&#13;&#10;&#13;&#10;';
22
- foreach( $server_info as $key => $val ){
23
- echo $key . ": " . $val . '&#13;&#10;';
24
- }
25
- echo '&#13;&#10;';
26
- _e( "Graphic Library", $wd_options->prefix );
27
- echo '&#13;&#10;&#13;&#10;';
28
- foreach( $gd_info as $key => $val ){
29
- echo $key . ": " . $val . '&#13;&#10;';
30
- }
31
- ?></textarea>
32
- </div>
33
- </div>
34
- <?php
35
- }
36
- }
37
- ?>
38
-
39
- </div>
40
- <div class="contact_us_wrap">
41
- <a href="https://web-dorado.com/support/contact-us.html" target="_blank" class="contact_us"><?php _e("Contact us", $wd_options->prefix); ?></a>
42
- </div>
43
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
wd/templates/display_overview_user_guide.php DELETED
@@ -1,46 +0,0 @@
1
- <div id="user_guide">
2
- <div class="wd-table">
3
- <div class="wd-cell">
4
- <?php for( $i = 0; $i < ceil( count($user_guide) / 2 ); $i++) { ?>
5
- <div class="user_guide_item">
6
- <a href="<?php echo $user_guide[$i]["url"]; ?>" class="user_guide_title" target="_blank"><?php echo $user_guide[$i]["main_title"]; ?></a>
7
- <?php foreach( $user_guide[$i]["titles"] as $title ) { ?>
8
- <div><a href="<?php echo $title["url"]; ?>" target="_blank" class="user_guide_titles"><?php echo $title["title"]; ?></a></div>
9
- <?php } ?>
10
- </div>
11
- <?php } ?>
12
- </div>
13
- <div class="wd-cell">
14
- <?php for( $i = $i; $i < count($user_guide); $i++) { ?>
15
- <div class="user_guide_item">
16
- <a href="<?php echo $user_guide[$i]["url"]; ?>" class="user_guide_title" target="_blank"><?php echo $user_guide[$i]["main_title"]; ?></a>
17
- <?php foreach( $user_guide[$i]["titles"] as $title ) { ?>
18
- <div><a href="<?php echo $title["url"]; ?>" target="_blank" class="user_guide_titles"><?php echo $title["title"]; ?></a></div>
19
- <?php } ?>
20
- </div>
21
- <?php } ?>
22
- </div>
23
- <div class="wd-cell">
24
- <?php if($wd_options->plugin_wd_demo_link) { ?>
25
- <a href="<?php echo $wd_options->plugin_wd_demo_link; ?>" class="user_guide_demo" target="_blank">
26
- <?php _e( "Demo", $wd_options->prefix ); ?>
27
- </a>
28
- <?php } ?>
29
- <a href="<?php echo $wd_options->plugin_wd_url; ?>" class="user_guide_plugin" target="_blank">
30
- <?php echo $wd_options->plugin_title; ?>
31
- </a>
32
- <a href="https://wordpress.org/support/plugin/<?php echo $wd_options->plugin_wordpress_slug; ?>" class="user_guide_support_forum" target="_blank">
33
- <?php _e( "Support Forum", $wd_options->prefix ); ?>
34
- </a>
35
- <a href="https://web-dorado.com/support/faq.html" class="user_guide_faq" target="_blank">
36
- <?php _e( "FAQ", $wd_options->prefix ); ?>
37
- </a>
38
- <?php if($wd_options->plugin_wd_addons_link) { ?>
39
- <a href="<?php echo $wd_options->plugin_wd_addons_link; ?>" class="user_guide_addons" target="_blank">
40
- <?php _e( "Addons", $wd_options->prefix ); ?>
41
- </a>
42
- <?php } ?>
43
- </div>
44
- </div>
45
- </div>
46
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
wd/templates/display_overview_welcome.php DELETED
@@ -1,31 +0,0 @@
1
- <div id="welcome">
2
- <!-- display plugin video -->
3
- <?php if( $wd_options->video_youtube_id ){ ?>
4
- <div class="wd-video_container">
5
- <iframe width="100%" height="400" src="//www.youtube.com/embed/<?php echo $wd_options->video_youtube_id; ?>?rel=0" frameborder="0" allowfullscreen></iframe>
6
- </div>
7
- <?php }
8
- else if( $wd_options->overview_welcome_image ) { ?>
9
- <img src="<?php echo $wd_options->overview_welcome_image; ?>" width="100%" />
10
-
11
- <?php } ?>
12
-
13
- <!-- display plugin features -->
14
- <div class="plugin_features">
15
- <!-- if your plugin has a wizard-->
16
- <?php if( $wd_options->plugin_wizard_link ) { ?>
17
- <div class="wd-tour">
18
- <a class="wd-tour-btn" href="<?php echo $wd_options->plugin_wizard_link;?>"><?php _e( "Run Install Wizard ",$wd_options->prefix); ?></a>
19
- </div>
20
- <?php } ?>
21
- <?php foreach( $wd_options->plugin_features as $feature ){ ?>
22
- <h2 class="plugin_feature_title"><?php echo $feature["title"]; ?></h2>
23
- <div class="plugin_feature_description"><?php echo $feature["description"]; ?></div>
24
- <?php } ?>
25
- <div class="more_features_wrap">
26
- <a href="<?php echo $wd_options->plugin_wd_url; ?>" class="more_features" target="_blank"><?php _e( "More features", $wd_options->prefix ); ?></a>
27
- </div>
28
- </div>
29
-
30
- </div>
31
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
wd/templates/display_subscribe.php CHANGED
@@ -1,44 +1,47 @@
1
- <div class="wd-subscribe">
2
- <div class="wd-subscribe-content">
3
- <div class="imgs">
4
- <img src="<?php echo $wd_options->wd_url_img . '/wp_logo.png'; ?>">
5
- <span>+</span>
6
- <img src="<?php echo $wd_options->wd_url_img . '/' . $wd_options->prefix . '_main_plugin.png'; ?>">
7
- </div>
8
  <div class="texts">
9
- <p><?php _e( "Hi there", $wd_options->prefix ); ?>,</p>
 
 
10
  <p>
11
- <?php echo sprintf( __( "Allow %s to collect some usage data. This will allow you to get more out of your plugin experience - get awesome customer support, receive exclusive deals and discounts on premium products and more. You can choose to skip this step, %s will still work just fine.", $wd_options->prefix ), '<strong>Web-Dorado</strong>', $wd_options->plugin_title ); ?>
12
  </p>
13
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14
  <div class="btns">
15
- <a href="<?php echo "admin.php?page=" . $wd_options->prefix . "_subscribe&". $wd_options->prefix . "_sub_action=allow" ;?>" class="allow_and_continue"></a>
16
  <img src="<?php echo $wd_options->wd_url_img . '/loader.gif';?>" class="wd_loader">
17
- <a href="<?php echo "admin.php?page=" . $wd_options->prefix . "_subscribe&" . $wd_options->prefix . "_sub_action=skip" ;?>" class="skip" ></a>
18
- </div>
19
- <a href="#" class="permissions"><?php _e( "What data is being collected?" , $wd_options->prefix ); ?></a>
20
- <div class="list">
21
- <?php foreach( $list as $list_item ) { ?>
22
- <div class="list_item">
23
- <div class="list_img_wrap"><img src="<?php echo $list_item["img"]; ?>"></div>
24
- <div class="list_text_wrap">
25
- <div class="list_title"><?php echo $list_item["title"]; ?></div>
26
- <div class="list_text"><?php echo $list_item["small_text"]; ?></div>
27
- </div>
28
- </div>
29
- <?php } ?>
30
  </div>
31
  </div>
32
- <div class="wd-subscribe-footer">
33
- <ul class="wd-footer-menu">
 
 
 
34
  <li>
35
- <a href="https://web-dorado.com/web-dorado-privacy-statement.html" target="_blank">
36
  <?php _e( "Privacy Policy", $wd_options->prefix ); ?>
37
  </a>
38
- <span>.</span>
39
  </li>
 
40
  <li>
41
- <a href="https://web-dorado.com/terms-of-service.html" target="_blank">
42
  <?php _e( "Terms of Use", $wd_options->prefix ); ?>
43
  </a>
44
  </li>
1
+ <div class="tenweb_subscribe">
2
+ <div class="tenweb_subscribe-content">
 
 
 
 
 
3
  <div class="texts">
4
+ <div class="hi_there"></div>
5
+ <h2><?php _e( "Hi there!", $wd_options->prefix ); ?></h2>
6
+ <h5><?php _e( "Allow 10Web to collect some usage data", $wd_options->prefix ); ?></h5>
7
  <p>
8
+ <?php echo sprintf( __( "This will allow you to get more out of your plugin experience - get awesome customer support, receive exclusive deals and discounts on premium products and more. You can choose to skip this step, %s will still work just fine.", $wd_options->prefix ), $wd_options->plugin_title ); ?>
9
  </p>
10
  </div>
11
+ <div class="permissions"><?php _e( "What data is being collected?" , $wd_options->prefix ); ?></div>
12
+ <div class="list tenweb_clear">
13
+ <div class="list_item user_info">
14
+ <div class="list_logo"></div>
15
+ <div class="list_text_wrap"> <?php _e( "Your name & Email address", $wd_options->prefix ); ?></div>
16
+ </div>
17
+ <div class="list_item wp_info">
18
+ <div class="list_logo"></div>
19
+ <div class="list_text_wrap"> <?php _e( "Site URL, Wordpress version", $wd_options->prefix ); ?></div>
20
+ </div>
21
+ <div class="list_item plugins_info">
22
+ <div class="list_logo"></div>
23
+ <div class="list_text_wrap"> <?php _e( "List of plugins", $wd_options->prefix ); ?></div>
24
+ </div>
25
+ </div>
26
  <div class="btns">
27
+ <a href="<?php echo "admin.php?page=" . $wd_options->prefix . "_subscribe&". $wd_options->prefix . "_sub_action=allow" ;?>" class="allow_and_continue button"><?php _e( "Allow & Continue", $wd_options->prefix ); ?></a>
28
  <img src="<?php echo $wd_options->wd_url_img . '/loader.gif';?>" class="wd_loader">
29
+ <a href="<?php echo "admin.php?page=" . $wd_options->prefix . "_subscribe&" . $wd_options->prefix . "_sub_action=skip" ;?>" class="skip more" ><?php _e( "Skip", $wd_options->prefix ); ?></a>
 
 
 
 
 
 
 
 
 
 
 
 
30
  </div>
31
  </div>
32
+ <div class="tenweb_subscribe-top-footer">
33
+ <?php _e( "We will not sell, share, or distribute your personal information to third parties.", $wd_options->prefix ); ?>
34
+ </div>
35
+ <div class="tenweb_subscribe-footer">
36
+ <ul class="tenweb_footer-menu tenweb_clear">
37
  <li>
38
+ <a href="https://10web.io/privacy-policy/" target="_blank">
39
  <?php _e( "Privacy Policy", $wd_options->prefix ); ?>
40
  </a>
 
41
  </li>
42
+ <li>| </li>
43
  <li>
44
+ <a href="https://10web.io/terms-of-services/" target="_blank">
45
  <?php _e( "Terms of Use", $wd_options->prefix ); ?>
46
  </a>
47
  </li>
wd/wd.php CHANGED
@@ -1,156 +1,172 @@
1
  <?php
2
- if ( ! defined( 'ABSPATH' ) ) {
3
- exit;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  }
 
 
 
5
 
6
- class DoradoWeb {
7
- ////////////////////////////////////////////////////////////////////////////////////////
8
- // Events //
9
- ////////////////////////////////////////////////////////////////////////////////////////
10
- ////////////////////////////////////////////////////////////////////////////////////////
11
- // Constants //
12
- ////////////////////////////////////////////////////////////////////////////////////////
13
- ////////////////////////////////////////////////////////////////////////////////////////
14
- // Variables //
15
- ////////////////////////////////////////////////////////////////////////////////////////
16
- public static $instance;
17
- public $overview_instance;
18
- public $subscribe_instance;
19
- public $config;
20
- private $version = "1.0.13";
21
-
22
- ////////////////////////////////////////////////////////////////////////////////////////
23
- // Constructor & Destructor //
24
- ////////////////////////////////////////////////////////////////////////////////////////
25
- public function __construct() {
26
- // Add menu for Overview page
27
- add_action( 'admin_menu', array( $this, 'wd_overview_menu_page' ), 10 );
28
 
 
 
 
 
 
 
 
 
29
  }
30
- ////////////////////////////////////////////////////////////////////////////////////////
31
- // Public Methods //
32
- ////////////////////////////////////////////////////////////////////////////////////////
33
 
34
- // Init plugin data
35
- public function wd_init( $options ) {
36
 
37
- if(!is_array($options)){
38
- return false;
39
- }
40
- $config = new DoradoWebConfig();
41
- $config->set_options( $options );
42
- $this->config = $config;
43
- if( !class_exists("DoradoWebApi") ){
44
- $this->wd_includes();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
45
  }
 
46
 
47
- $this->init_classes();
48
- $this->register_hooks();
49
 
 
 
 
 
50
  }
 
51
 
52
- // Create overview menu page
53
- public function wd_overview_menu_page() {
54
- $wd_options = $this->config;
55
-
56
- $capability = $wd_options->menu_capability ? $wd_options->menu_capability : "manage_options";
57
- if( get_option( $wd_options->prefix . "_subscribe_done" ) == 1 || $wd_options->subscribe === false ){
58
- $parent_slug = $wd_options->custom_post;
59
- }
60
- else{
 
61
 
62
- $subscribe_page = add_menu_page( $wd_options->plugin_menu_title, $wd_options->plugin_menu_title, "manage_options", $wd_options->prefix . '_subscribe' , array( $this, 'display_subscribew_page' ), $wd_options->plugin_menu_icon, $wd_options->menu_position );
63
 
64
- $subscribe_instance = new DoradoWebSubscribe($this->config);
65
- $this->subscribe_instance = $subscribe_instance;
66
- add_action( 'admin_print_styles-' . $subscribe_page, array( $subscribe_instance, 'subscribe_styles' ) );
67
- add_action( 'admin_print_scripts-' . $subscribe_page, array( $subscribe_instance, 'subscribe_scripts' ) );
68
-
69
- $parent_slug = null;
70
- }
71
 
72
- $overview_page = add_submenu_page( $parent_slug, __( 'Overview', $wd_options->prefix ), __( 'Overview', $wd_options->prefix ), $capability, 'overview_' . $wd_options->prefix, array( $this, 'display_overview_page' ));
 
 
 
 
 
73
 
74
-
75
- $overview_instance = new DoradoWebOverview($this->config);
76
- $this->overview_instance = $overview_instance;
77
- add_action( 'admin_print_styles-' . $overview_page, array( $overview_instance, 'overview_styles' ) );
78
- add_action( 'admin_print_scripts-' . $overview_page, array( $overview_instance, 'overview_scripts' ) );
79
- }
80
-
81
- public function display_subscribew_page(){
82
- $this->subscribe_instance->subscribe_display_page();
83
- }
84
-
85
- // Display overview page
86
- public function display_overview_page() {
87
- $this->overview_instance->display_overview_page();
88
- }
89
-
90
-
91
- // Includs
92
- public function wd_includes(){
93
- $wd_options = $this->config;
94
-
95
- require_once $wd_options->wd_dir_includes . '/deactivate.php' ;
96
- // notices
97
- require_once $wd_options->wd_dir_includes . '/api.php';
98
- require_once $wd_options->wd_dir_includes . '/notices.php';
99
- require_once $wd_options->wd_dir_includes . "/overview.php";
100
- require_once $wd_options->wd_dir_includes . "/subscribe.php";
101
-
102
  }
103
- public function init_classes(){
104
- $wd_options = $this->config;
105
-
106
- $current_url = $_SERVER['REQUEST_URI'];
107
- if( $wd_options->deactivate === true ){
108
- if(strpos( $current_url, "plugins.php" ) !== false ){
109
- new DoradoWebDeactivate( $this->config );
110
- }
111
- }
112
-
113
- new DoradoWebNotices( $this->config );
114
 
 
 
 
 
 
 
 
 
 
115
  }
116
-
117
- public function register_hooks(){
118
- $wd_options = $this->config;
119
- if( $wd_options->deactivate === true ){
120
- add_filter( 'plugin_action_links_' . plugin_basename( $wd_options->plugin_main_file ), array( $this, 'change_deactivation_link' ) );
121
- }
122
-
123
- }
124
-
125
-
126
- public function change_deactivation_link ( $links ) {
127
- $wd_options = $this->config;
128
- $deactivate_url =
129
- add_query_arg(
130
- array(
131
- 'action' => 'deactivate',
132
- 'plugin' => plugin_basename( $wd_options->plugin_main_file ),
133
- '_wpnonce' => wp_create_nonce( 'deactivate-plugin_' . plugin_basename( $wd_options->plugin_main_file ) )
134
- ),
135
- admin_url( 'plugins.php' )
136
- );
137
-
138
- $links["deactivate"] = '<a href="'.$deactivate_url.'" class="' . $wd_options->prefix . '_deactivate_link">Deactivate</a>';
139
- return $links;
140
- }
141
-
142
- ////////////////////////////////////////////////////////////////////////////////////////
143
- // Getters & Setters //
144
- ////////////////////////////////////////////////////////////////////////////////////////
145
- ////////////////////////////////////////////////////////////////////////////////////////
146
- // Private Methods //
147
- ////////////////////////////////////////////////////////////////////////////////////////
148
-
149
- ////////////////////////////////////////////////////////////////////////////////////////
150
- // Listeners //
151
- ////////////////////////////////////////////////////////////////////////////////////////
152
 
153
  }
154
 
155
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
156
 
1
  <?php
2
+ if (!defined('ABSPATH')) {
3
+ exit;
4
+ }
5
+
6
+ class TenWebLib
7
+ {
8
+ ////////////////////////////////////////////////////////////////////////////////////////
9
+ // Events //
10
+ ////////////////////////////////////////////////////////////////////////////////////////
11
+ ////////////////////////////////////////////////////////////////////////////////////////
12
+ // Constants //
13
+ ////////////////////////////////////////////////////////////////////////////////////////
14
+ ////////////////////////////////////////////////////////////////////////////////////////
15
+ // Variables //
16
+ ////////////////////////////////////////////////////////////////////////////////////////
17
+ public static $instance;
18
+ public $overview_instance;
19
+ public $subscribe_instance;
20
+ public $config;
21
+ private $version = "1.1.1";
22
+
23
+ ////////////////////////////////////////////////////////////////////////////////////////
24
+ // Constructor & Destructor //
25
+ ////////////////////////////////////////////////////////////////////////////////////////
26
+ public function __construct()
27
+ {
28
+ // Add menu for Overview page
29
+ add_action('admin_menu', array($this, 'wd_overview_menu_page'), 10);
30
+
31
  }
32
+ ////////////////////////////////////////////////////////////////////////////////////////
33
+ // Public Methods //
34
+ ////////////////////////////////////////////////////////////////////////////////////////
35
 
36
+ // Init plugin data
37
+ public function wd_init($options)
38
+ {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39
 
40
+ if (!is_array($options)) {
41
+ return false;
42
+ }
43
+ $config = new TenWebLibConfig();
44
+ $config->set_options($options);
45
+ $this->config = $config;
46
+ if (!class_exists("TenWebLibApi")) {
47
+ $this->wd_includes();
48
  }
 
 
 
49
 
50
+ $this->init_classes();
51
+ $this->register_hooks();
52
 
53
+ }
54
+
55
+ // Create overview menu page
56
+ public function wd_overview_menu_page()
57
+ {
58
+ $wd_options = $this->config;
59
+
60
+ $capability = $wd_options->menu_capability ? $wd_options->menu_capability : "manage_options";
61
+ if (get_option($wd_options->prefix . "_subscribe_done") == 1 || $wd_options->subscribe === false) {
62
+ $parent_slug = $wd_options->custom_post;
63
+ } else {
64
+
65
+ $subscribe_page = add_menu_page($wd_options->plugin_menu_title, $wd_options->plugin_menu_title, "manage_options", $wd_options->prefix . '_subscribe', array($this, 'display_subscribew_page'), $wd_options->plugin_menu_icon, $wd_options->menu_position);
66
+
67
+ $subscribe_instance = new TenWebLibSubscribe($this->config);
68
+ $this->subscribe_instance = $subscribe_instance;
69
+ add_action('admin_print_styles-' . $subscribe_page, array($subscribe_instance, 'subscribe_styles'));
70
+ add_action('admin_print_scripts-' . $subscribe_page, array($subscribe_instance, 'subscribe_scripts'));
71
+
72
+ $parent_slug = null;
73
+ }
74
+ if ($wd_options->display_overview) {
75
+ $title = __('Premium', $wd_options->prefix);
76
+ if (false && !get_transient($wd_options->prefix . '_overview_visited')) {
77
+ $title .= ' <span class="update-plugins count-2" > <span class="plugin-count">1</span></span>';
78
  }
79
+ $overview_page = add_submenu_page($parent_slug, __('Premium', $wd_options->prefix), '<span style="color:#4481ea;">' . $title . '</span>', $capability, 'overview_' . $wd_options->prefix, array($this, 'display_overview_page'));
80
 
 
 
81
 
82
+ $overview_instance = new TenWebLibOverview($this->config);
83
+ $this->overview_instance = $overview_instance;
84
+ add_action('admin_print_styles-' . $overview_page, array($overview_instance, 'overview_styles'));
85
+ add_action('admin_print_scripts-' . $overview_page, array($overview_instance, 'overview_scripts'));
86
  }
87
+ }
88
 
89
+ public function display_subscribew_page()
90
+ {
91
+ $this->subscribe_instance->subscribe_display_page();
92
+ }
93
+
94
+ // Display overview page
95
+ public function display_overview_page()
96
+ {
97
+ $this->overview_instance->display_overview_page();
98
+ }
99
 
 
100
 
101
+ // Includs
102
+ public function wd_includes()
103
+ {
104
+ $wd_options = $this->config;
 
 
 
105
 
106
+ require_once $wd_options->wd_dir_includes . '/deactivate.php';
107
+ // notices
108
+ require_once $wd_options->wd_dir_includes . '/api.php';
109
+ require_once $wd_options->wd_dir_includes . '/notices.php';
110
+ require_once $wd_options->wd_dir_includes . "/overview.php";
111
+ require_once $wd_options->wd_dir_includes . "/subscribe.php";
112
 
113
+ }
114
+
115
+ public function init_classes()
116
+ {
117
+ $wd_options = $this->config;
118
+
119
+ $current_url = $_SERVER['REQUEST_URI'];
120
+ if ($wd_options->deactivate === true) {
121
+ if (strpos($current_url, "plugins.php") !== false) {
122
+ new TenWebLibDeactivate($this->config);
123
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
124
  }
 
 
 
 
 
 
 
 
 
 
 
125
 
126
+ new TenWebLibNotices($this->config);
127
+
128
+ }
129
+
130
+ public function register_hooks()
131
+ {
132
+ $wd_options = $this->config;
133
+ if ($wd_options->deactivate === true) {
134
+ add_filter('plugin_action_links_' . plugin_basename($wd_options->plugin_main_file), array($this, 'change_deactivation_link'));
135
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
136
 
137
  }
138
 
139
 
140
+ public function change_deactivation_link($links)
141
+ {
142
+ $wd_options = $this->config;
143
+ $deactivate_url =
144
+ add_query_arg(
145
+ array(
146
+ 'action' => 'deactivate',
147
+ 'plugin' => plugin_basename($wd_options->plugin_main_file),
148
+ '_wpnonce' => wp_create_nonce('deactivate-plugin_' . plugin_basename($wd_options->plugin_main_file))
149
+ ),
150
+ admin_url('plugins.php')
151
+ );
152
+
153
+ $links["deactivate"] = '<a href="' . $deactivate_url . '" class="' . $wd_options->prefix . '_deactivate_link">Deactivate</a>';
154
+
155
+ return $links;
156
+ }
157
+
158
+ ////////////////////////////////////////////////////////////////////////////////////////
159
+ // Getters & Setters //
160
+ ////////////////////////////////////////////////////////////////////////////////////////
161
+ ////////////////////////////////////////////////////////////////////////////////////////
162
+ // Private Methods //
163
+ ////////////////////////////////////////////////////////////////////////////////////////
164
+
165
+ ////////////////////////////////////////////////////////////////////////////////////////
166
+ // Listeners //
167
+ ////////////////////////////////////////////////////////////////////////////////////////
168
+
169
+ }
170
+
171
+
172