Version Description
- 2019/03/18
- 300,000 installs hit on 2019/01/18 with 2,151,500 downloads
- bug fixes
- partnership with Weglot
Download this release
Release Info
Developer | WebFactory |
Plugin | Under Construction |
Version | 3.35 |
Comparing to | |
See all releases |
Code changes from version 3.31 to 3.35
- css/ucp-admin.css +41 -1
- images/weglot-logo-white.png +0 -0
- js/ucp-admin.js +43 -0
- readme.txt +12 -4
- under-construction.php +165 -6
css/ucp-admin.css
CHANGED
@@ -229,7 +229,8 @@ div.ucp-thumb img, .ucp-thumb-special img {
|
|
229 |
.ucp-list {
|
230 |
list-style-type: circle;
|
231 |
list-style-position: outside;
|
232 |
-
|
|
|
233 |
}
|
234 |
|
235 |
input[type=url]:invalid, input[type=email]:invalid, input[type=tel]:invalid {
|
@@ -919,3 +920,42 @@ option.mailoptin-promo {
|
|
919 |
border-top: 1px solid #2980b9;
|
920 |
}
|
921 |
/* upsell dialog */
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
229 |
.ucp-list {
|
230 |
list-style-type: circle;
|
231 |
list-style-position: outside;
|
232 |
+
margin-left: 14px;
|
233 |
+
line-height: 150%;
|
234 |
}
|
235 |
|
236 |
input[type=url]:invalid, input[type=email]:invalid, input[type=tel]:invalid {
|
920 |
border-top: 1px solid #2980b9;
|
921 |
}
|
922 |
/* upsell dialog */
|
923 |
+
|
924 |
+
/* weglot upsell dialog */
|
925 |
+
.weglot-upsell-dialog .ui-dialog-titlebar {
|
926 |
+
background: linear-gradient(140deg, #335ee2 10%, #271f50 90%);
|
927 |
+
text-align: center;
|
928 |
+
height: 55px;
|
929 |
+
}
|
930 |
+
.weglot-upsell-dialog .ui-dialog-titlebar img {
|
931 |
+
height: 32px;
|
932 |
+
display: inline-block;
|
933 |
+
margin: 11px 0 0 0;
|
934 |
+
}
|
935 |
+
.weglot-upsell-dialog .ui-dialog-titlebar-close {
|
936 |
+
color: #fff;
|
937 |
+
height: 55px;
|
938 |
+
}
|
939 |
+
.weglot-upsell-dialog .ui-dialog-titlebar-close:hover {
|
940 |
+
color: #333;
|
941 |
+
}
|
942 |
+
.weglot-upsell-dialog .ui-dialog-content {
|
943 |
+
padding: 0;
|
944 |
+
}
|
945 |
+
.weglot-upsell-dialog .ui-tabs-nav {
|
946 |
+
text-align: center;
|
947 |
+
}
|
948 |
+
.weglot-upsell-dialog .ui-tabs .upsell-tab {
|
949 |
+
padding: 20px 15px;
|
950 |
+
text-align: center;
|
951 |
+
}
|
952 |
+
.weglot-upsell-dialog a {
|
953 |
+
color: #333;
|
954 |
+
}
|
955 |
+
.weglot-upsell-dialog a:hover {
|
956 |
+
color: #000;
|
957 |
+
}
|
958 |
+
option.weglot-promo {
|
959 |
+
color: #2980b9;
|
960 |
+
}
|
961 |
+
/* upsell dialog */
|
images/weglot-logo-white.png
ADDED
Binary file
|
js/ucp-admin.js
CHANGED
@@ -331,6 +331,38 @@ jQuery(document).ready(function($) {
|
|
331 |
});
|
332 |
|
333 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
334 |
// zebra on pricing table, per column
|
335 |
$('#ucp-pricing-table').find('tr').each(function() {
|
336 |
$(this).find('td').eq(1).addClass('hover');
|
@@ -395,6 +427,17 @@ jQuery(document).ready(function($) {
|
|
395 |
});
|
396 |
|
397 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
398 |
$('#tabs_upsell').on('tabsactivate', function(event, ui) {
|
399 |
$('#upsell-dialog').dialog("option", "position", {my: "center", at: "center", of: window});
|
400 |
});
|
331 |
});
|
332 |
|
333 |
|
334 |
+
// upsell dialog init
|
335 |
+
$('#weglot-upsell-dialog').dialog({'dialogClass': 'wp-dialog ucp-dialog weglot-upsell-dialog',
|
336 |
+
'modal': 1,
|
337 |
+
'resizable': false,
|
338 |
+
'title': 'Translate your under construction page to any language',
|
339 |
+
'zIndex': 9999,
|
340 |
+
'width': 550,
|
341 |
+
'height': 'auto',
|
342 |
+
'show': 'fade',
|
343 |
+
'hide': 'fade',
|
344 |
+
'open': function(event, ui) {
|
345 |
+
ucp_fix_dialog_close(event, ui);
|
346 |
+
$(this).siblings().find('span.ui-dialog-title').html(ucp.weglot_dialog_upsell_title);
|
347 |
+
},
|
348 |
+
'close': function(event, ui) { },
|
349 |
+
'autoOpen': false,
|
350 |
+
'closeOnEscape': true
|
351 |
+
});
|
352 |
+
$(window).resize(function(e) {
|
353 |
+
$('#weglot-upsell-dialog').dialog("option", "position", {my: "center", at: "center", of: window});
|
354 |
+
});
|
355 |
+
|
356 |
+
|
357 |
+
jQuery('#install-weglot').on('click',function(e){
|
358 |
+
$('#weglot-upsell-dialog').dialog('close');
|
359 |
+
jQuery('body').append('<div style="width:550px;height:450px; position:fixed;top:10%;left:50%;margin-left:-275px; color:#444; background-color: #fbfbfb;border:1px solid #DDD; border-radius:4px;box-shadow: 0px 0px 0px 4000px rgba(0, 0, 0, 0.85);z-index: 9999999;"><iframe src="' + ucp.weglot_install_url + '" style="width:100%;height:100%;border:none;" /></div>');
|
360 |
+
jQuery('#wpwrap').css('pointer-events', 'none');
|
361 |
+
e.preventDefault();
|
362 |
+
return false;
|
363 |
+
});
|
364 |
+
|
365 |
+
|
366 |
// zebra on pricing table, per column
|
367 |
$('#ucp-pricing-table').find('tr').each(function() {
|
368 |
$(this).find('td').eq(1).addClass('hover');
|
427 |
});
|
428 |
|
429 |
|
430 |
+
$('.settings_page_ucp').on('click', '.open-weglot-upsell', function(e) {
|
431 |
+
e.preventDefault();
|
432 |
+
|
433 |
+
$(this).blur();
|
434 |
+
|
435 |
+
$('#weglot-upsell-dialog').dialog('open');
|
436 |
+
|
437 |
+
return false;
|
438 |
+
});
|
439 |
+
|
440 |
+
|
441 |
$('#tabs_upsell').on('tabsactivate', function(event, ui) {
|
442 |
$('#upsell-dialog').dialog("option", "position", {my: "center", at: "center", of: window});
|
443 |
});
|
readme.txt
CHANGED
@@ -1,14 +1,14 @@
|
|
1 |
=== Under Construction ===
|
2 |
Contributors: WebFactory, UnderConstructionPage, googlemapswidget, securityninja, wpreset
|
3 |
-
Tags: maintenance mode, maintenance page, coming soon page, landing page, under construction, under construction page, coming soon, launch page, coming soon mode, maintenance mode page, offline page, maintenance
|
4 |
Requires at least: 4.0
|
5 |
Requires PHP: 5.2
|
6 |
-
Tested up to: 5.
|
7 |
-
Stable tag: 3.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
11 |
-
|
12 |
|
13 |
|
14 |
== Description ==
|
@@ -23,6 +23,8 @@ A simple, no-nonsense plugin for all those situations when you have to hide the
|
|
23 |
|
24 |
UCP has full support for collecting leads and subscribers via optin boxes in content, and optin popups. We've integrated <a href="https://wordpress.org/plugins/mailoptin/">MailOptin</a> a great, free plugin into UCP that connects to MailChimp and numerous other autoresponder services allowing you to easily collect emails.
|
25 |
|
|
|
|
|
26 |
|
27 |
**Options**
|
28 |
|
@@ -135,6 +137,12 @@ Or if needed, upload manually;
|
|
135 |
|
136 |
== Changelog ==
|
137 |
|
|
|
|
|
|
|
|
|
|
|
|
|
138 |
= 3.31 =
|
139 |
* 2019/01/15
|
140 |
* minor security fix
|
1 |
=== Under Construction ===
|
2 |
Contributors: WebFactory, UnderConstructionPage, googlemapswidget, securityninja, wpreset
|
3 |
+
Tags: maintenance mode, maintenance page, coming soon page, landing page, under construction, under construction page, coming soon, launch page, coming soon mode, maintenance mode page, offline page, maintenance, multilingual, multilanguage
|
4 |
Requires at least: 4.0
|
5 |
Requires PHP: 5.2
|
6 |
+
Tested up to: 5.1
|
7 |
+
Stable tag: 3.35
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
11 |
+
Super-easy to use Under Construction Page, Landing Page, Maintenance Mode & Coming Soon WordPress plugin.
|
12 |
|
13 |
|
14 |
== Description ==
|
23 |
|
24 |
UCP has full support for collecting leads and subscribers via optin boxes in content, and optin popups. We've integrated <a href="https://wordpress.org/plugins/mailoptin/">MailOptin</a> a great, free plugin into UCP that connects to MailChimp and numerous other autoresponder services allowing you to easily collect emails.
|
25 |
|
26 |
+
Thanks to our partnership with <a href="https://wordpress.org/plugins/weglot/">Weglot</a>, UCP is fully multilanguage ready and you can instantly translate your under construction page to 100+ languages with one click.
|
27 |
+
|
28 |
|
29 |
**Options**
|
30 |
|
137 |
|
138 |
== Changelog ==
|
139 |
|
140 |
+
= 3.35 =
|
141 |
+
* 2019/03/18
|
142 |
+
* 300,000 installs hit on 2019/01/18 with 2,151,500 downloads
|
143 |
+
* bug fixes
|
144 |
+
* partnership with Weglot
|
145 |
+
|
146 |
= 3.31 =
|
147 |
* 2019/01/15
|
148 |
* minor security fix
|
under-construction.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
Plugin URI: https://underconstructionpage.com/
|
5 |
Description: Put your site behind a great looking under construction, coming soon, maintenance mode or landing page.
|
6 |
Author: WebFactory Ltd
|
7 |
-
Version: 3.
|
8 |
Author URI: https://www.webfactoryltd.com/
|
9 |
Text Domain: under-construction-page
|
10 |
Domain Path: lang
|
@@ -87,9 +87,10 @@ class UCP {
|
|
87 |
add_action('admin_action_ucp_change_status', array(__CLASS__, 'change_status'));
|
88 |
add_action('admin_action_ucp_reset_settings', array(__CLASS__, 'reset_settings'));
|
89 |
add_action('admin_action_install_mailoptin', array(__CLASS__, 'install_mailoptin'));
|
|
|
90 |
|
91 |
// enqueue admin scripts
|
92 |
-
add_action('admin_enqueue_scripts', array(__CLASS__, 'admin_enqueue_scripts'));
|
93 |
|
94 |
// AJAX endpoints
|
95 |
add_action('wp_ajax_ucp_dismiss_pointer', array(__CLASS__, 'dismiss_pointer_ajax'));
|
@@ -325,7 +326,9 @@ class UCP {
|
|
325 |
'is_activated' => UCP_license::is_activated(),
|
326 |
'dialog_upsell_title' => '<img alt="' . __('UnderConstructionPage PRO', 'under-construction-page') . '" title="' . __('UnderConstructionPage PRO', 'under-construction-page') . '" src="' . UCP_PLUGIN_URL . 'images/ucp_pro_logo_white.png' . '">',
|
327 |
'mailoptin_dialog_upsell_title' => '<img alt="' . __('MailOptin', 'under-construction-page') . '" title="' . __('MailOptin', 'under-construction-page') . '" src="' . UCP_PLUGIN_URL . 'images/mailoptin-logo-white.png' . '">',
|
|
|
328 |
'mailoptin_install_url' => add_query_arg(array('action' => 'install_mailoptin'), admin_url('admin.php')),
|
|
|
329 |
'nonce_dismiss_survey' => wp_create_nonce('ucp_dismiss_survey'),
|
330 |
'nonce_submit_survey' => wp_create_nonce('ucp_submit_survey'),
|
331 |
'nonce_submit_earlybird' => wp_create_nonce('ucp_submit_earlybird'),
|
@@ -634,6 +637,11 @@ class UCP {
|
|
634 |
|
635 |
$out .= '<link rel="shortcut icon" type="image/png" href="' . trailingslashit(UCP_PLUGIN_URL . 'themes/images') . 'favicon.png" />';
|
636 |
|
|
|
|
|
|
|
|
|
|
|
637 |
if (self::is_mailoptin_active()) {
|
638 |
$out .= '<script src="' . includes_url('/js/jquery/jquery.js') . '"></script>';
|
639 |
$out .= '<script type="text/javascript">
|
@@ -1502,8 +1510,55 @@ class UCP {
|
|
1502 |
$default_options = self::default_options();
|
1503 |
|
1504 |
echo '<div class="ucp-tab-content">';
|
|
|
|
|
|
|
|
|
|
|
|
|
1505 |
echo '<table class="form-table">';
|
1506 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1507 |
// todo: translate
|
1508 |
echo '<tr valign="top">
|
1509 |
<th scope="row"><label for="title">' . __('Title', 'under-construction-page') . '</label></th>
|
@@ -1801,7 +1856,6 @@ class UCP {
|
|
1801 |
|
1802 |
static function tab_design() {
|
1803 |
$options = self::get_options();
|
1804 |
-
$default_options = self::default_options();
|
1805 |
|
1806 |
$img_path = UCP_PLUGIN_URL . 'images/thumbnails/';
|
1807 |
$themes = self::get_themes();
|
@@ -2160,7 +2214,24 @@ class UCP {
|
|
2160 |
echo '</ul>';
|
2161 |
echo '<p class="upsell-footer"><a class="button button-primary" id="install-mailoptin">Install & activate MailOptin to start collecting leads</a></p>';
|
2162 |
echo '</div>';
|
2163 |
-
echo '</div>';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2164 |
|
2165 |
$promo = self::is_promo_active();
|
2166 |
if ($promo == 'welcome') {
|
@@ -2388,6 +2459,60 @@ class UCP {
|
|
2388 |
} // install_mailoptin
|
2389 |
|
2390 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2391 |
static function is_plugin_installed($slug) {
|
2392 |
if (!function_exists('get_plugins')) {
|
2393 |
require_once ABSPATH . 'wp-admin/includes/plugin.php';
|
@@ -2409,7 +2534,7 @@ class UCP {
|
|
2409 |
}
|
2410 |
|
2411 |
if (is_plugin_active('mailoptin/mailoptin.php')) {
|
2412 |
-
$mailoptin_info = get_plugin_data(ABSPATH.'wp-content/plugins/mailoptin/mailoptin.php');
|
2413 |
if( version_compare($mailoptin_info['Version'], '1.2.10.1', '<')) {
|
2414 |
return false;
|
2415 |
} else {
|
@@ -2421,6 +2546,40 @@ class UCP {
|
|
2421 |
} // is_mailoptin_active
|
2422 |
|
2423 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2424 |
// helper function for adding plugins to fav list
|
2425 |
static function featured_plugins_tab($args) {
|
2426 |
add_filter('plugins_api_result', array(__CLASS__, 'plugins_api_result'), 10, 3);
|
@@ -2433,7 +2592,7 @@ class UCP {
|
|
2433 |
static function add_plugin_favs($plugin_slug, $res) {
|
2434 |
if (!empty($res->plugins) && is_array($res->plugins)) {
|
2435 |
foreach ($res->plugins as $plugin) {
|
2436 |
-
if ($plugin->slug == $plugin_slug) {
|
2437 |
return $res;
|
2438 |
}
|
2439 |
} // foreach
|
4 |
Plugin URI: https://underconstructionpage.com/
|
5 |
Description: Put your site behind a great looking under construction, coming soon, maintenance mode or landing page.
|
6 |
Author: WebFactory Ltd
|
7 |
+
Version: 3.35
|
8 |
Author URI: https://www.webfactoryltd.com/
|
9 |
Text Domain: under-construction-page
|
10 |
Domain Path: lang
|
87 |
add_action('admin_action_ucp_change_status', array(__CLASS__, 'change_status'));
|
88 |
add_action('admin_action_ucp_reset_settings', array(__CLASS__, 'reset_settings'));
|
89 |
add_action('admin_action_install_mailoptin', array(__CLASS__, 'install_mailoptin'));
|
90 |
+
add_action('admin_action_install_weglot', array(__CLASS__, 'install_weglot'));
|
91 |
|
92 |
// enqueue admin scripts
|
93 |
+
add_action('admin_enqueue_scripts', array(__CLASS__, 'admin_enqueue_scripts'), 100, 1);
|
94 |
|
95 |
// AJAX endpoints
|
96 |
add_action('wp_ajax_ucp_dismiss_pointer', array(__CLASS__, 'dismiss_pointer_ajax'));
|
326 |
'is_activated' => UCP_license::is_activated(),
|
327 |
'dialog_upsell_title' => '<img alt="' . __('UnderConstructionPage PRO', 'under-construction-page') . '" title="' . __('UnderConstructionPage PRO', 'under-construction-page') . '" src="' . UCP_PLUGIN_URL . 'images/ucp_pro_logo_white.png' . '">',
|
328 |
'mailoptin_dialog_upsell_title' => '<img alt="' . __('MailOptin', 'under-construction-page') . '" title="' . __('MailOptin', 'under-construction-page') . '" src="' . UCP_PLUGIN_URL . 'images/mailoptin-logo-white.png' . '">',
|
329 |
+
'weglot_dialog_upsell_title' => '<img alt="' . __('Weglot', 'under-construction-page') . '" title="' . __('Weglot', 'under-construction-page') . '" src="' . UCP_PLUGIN_URL . 'images/weglot-logo-white.png' . '">',
|
330 |
'mailoptin_install_url' => add_query_arg(array('action' => 'install_mailoptin'), admin_url('admin.php')),
|
331 |
+
'weglot_install_url' => add_query_arg(array('action' => 'install_weglot'), admin_url('admin.php')),
|
332 |
'nonce_dismiss_survey' => wp_create_nonce('ucp_dismiss_survey'),
|
333 |
'nonce_submit_survey' => wp_create_nonce('ucp_submit_survey'),
|
334 |
'nonce_submit_earlybird' => wp_create_nonce('ucp_submit_earlybird'),
|
637 |
|
638 |
$out .= '<link rel="shortcut icon" type="image/png" href="' . trailingslashit(UCP_PLUGIN_URL . 'themes/images') . 'favicon.png" />';
|
639 |
|
640 |
+
if (self::is_weglot_setup()) {
|
641 |
+
$out .= '<link rel="stylesheet" href="' . WEGLOT_URL_DIST . '/css/front-css.css?v=' . WEGLOT_VERSION . '" type="text/css">';
|
642 |
+
$out .= '<script src="' . WEGLOT_URL_DIST . '/front-js.js?v=' . WEGLOT_VERSION . '"></script>';
|
643 |
+
}
|
644 |
+
|
645 |
if (self::is_mailoptin_active()) {
|
646 |
$out .= '<script src="' . includes_url('/js/jquery/jquery.js') . '"></script>';
|
647 |
$out .= '<script type="text/javascript">
|
1510 |
$default_options = self::default_options();
|
1511 |
|
1512 |
echo '<div class="ucp-tab-content">';
|
1513 |
+
|
1514 |
+
if (!self::is_weglot_active()) {
|
1515 |
+
echo '<div class="ucp-notice-small"><p><b>NEW</b> - Make your under construction page and your website <b>multilingual</b> with the Weglot Translate plugin.<br>To enable this feature, <a href="#" class="open-weglot-upsell">install the Weglot Translate freemium plugin</a>.';
|
1516 |
+
echo '</p></div>';
|
1517 |
+
}
|
1518 |
+
|
1519 |
echo '<table class="form-table">';
|
1520 |
|
1521 |
+
if (self::is_weglot_active()) {
|
1522 |
+
echo '<tr id="weglot-settings">';
|
1523 |
+
echo '<th><label for="weglot_lang">Multilingual Support</label></th>';
|
1524 |
+
echo '<td>';
|
1525 |
+
|
1526 |
+
|
1527 |
+
if (self::is_weglot_setup()) {
|
1528 |
+
$tmp = '';
|
1529 |
+
$active_languages = weglot_get_destination_language();
|
1530 |
+
$languages = weglot_get_languages_available();
|
1531 |
+
$original_language = weglot_get_original_language();
|
1532 |
+
|
1533 |
+
echo '<p>Your under construction page is currently available in the following languages.<br>To add more languages and configure translations open <a href="' . admin_url('admin.php?page=weglot-settings') . '">Weglot settings</a>.</p>';
|
1534 |
+
echo '<ul class="ucp-list">';
|
1535 |
+
foreach ($languages as $language) {
|
1536 |
+
if ($language->getIso639() == $original_language) {
|
1537 |
+
$tmp = '<li>' . esc_html($language->getEnglishName()) . ' - original language</li>' . $tmp;
|
1538 |
+
}
|
1539 |
+
if (in_array($language->getIso639(), $active_languages, true )) {
|
1540 |
+
$tmp .= '<li>' . esc_html($language->getLocalName()) . '</li>';
|
1541 |
+
}
|
1542 |
+
} // foreach language
|
1543 |
+
echo $tmp;
|
1544 |
+
echo '</ul>';
|
1545 |
+
} else {
|
1546 |
+
echo '<p>Your under construction page is currently not translated.<br>Open <a href="' . admin_url('admin.php?page=weglot-settings') . '">Weglot settings</a> to select languages you want to translate to.</p>';
|
1547 |
+
}
|
1548 |
+
echo '</td>';
|
1549 |
+
echo '</tr>';
|
1550 |
+
} else {
|
1551 |
+
echo '<tr>';
|
1552 |
+
echo '<th><label for="weglot_support">Multilingual Support</label></th>';
|
1553 |
+
echo '<td>';
|
1554 |
+
echo '<div class="toggle-wrapper">
|
1555 |
+
<input type="checkbox" id="weglot_support" type="checkbox" value="1" class="skip-save open-weglot-upsell">
|
1556 |
+
<label for="weglot_support" class="toggle"><span class="toggle_handler"></span></label></div>';
|
1557 |
+
echo '<p class="description">55% of online visitors prefer to browse in their mother tongue. If you have an audience speaking multiple languages, making your website multilingual is a must-have. To instantly translate your website and your under construction page, <a href="#" class="open-weglot-upsell">install the Weglot plugin</a> (free plan and free trial available). It seamlessly integrates with UCP and is compatible with all themes & plugins.</p>';
|
1558 |
+
echo '</td>';
|
1559 |
+
echo '</tr>';
|
1560 |
+
} // weglot not active
|
1561 |
+
|
1562 |
// todo: translate
|
1563 |
echo '<tr valign="top">
|
1564 |
<th scope="row"><label for="title">' . __('Title', 'under-construction-page') . '</label></th>
|
1856 |
|
1857 |
static function tab_design() {
|
1858 |
$options = self::get_options();
|
|
|
1859 |
|
1860 |
$img_path = UCP_PLUGIN_URL . 'images/thumbnails/';
|
1861 |
$themes = self::get_themes();
|
2214 |
echo '</ul>';
|
2215 |
echo '<p class="upsell-footer"><a class="button button-primary" id="install-mailoptin">Install & activate MailOptin to start collecting leads</a></p>';
|
2216 |
echo '</div>';
|
2217 |
+
echo '</div>';
|
2218 |
+
// mailoptin install dialog
|
2219 |
+
|
2220 |
+
// weglot install dialog
|
2221 |
+
echo '<div id="weglot-upsell-dialog" style="display: none;" title="Weglot"><span class="ui-helper-hidden-accessible"><input type="text"/></span>';
|
2222 |
+
echo '<div style="padding: 20px; font-size: 15px;">';
|
2223 |
+
echo '<ul class="ucp-list">';
|
2224 |
+
echo '<li>Best-rated WordPress multilingual plugin</li>';
|
2225 |
+
echo '<li>Simple 5-minute set-up. No coding required</li>';
|
2226 |
+
echo '<li>Accelerated translation management: Machine & human translations with access to professional translators</li>';
|
2227 |
+
echo '<li>Compatible with any WordPress theme or plugin</li>';
|
2228 |
+
echo '<li>Optimized for multilingual SEO</li>';
|
2229 |
+
echo '<li>10-day Free trial and free plan available</li>';
|
2230 |
+
echo '</ul>';
|
2231 |
+
echo '<p class="upsell-footer"><a class="button button-primary" id="install-weglot">Install & activate Weglot to make your website multilingual</a></p>';
|
2232 |
+
echo '</div>';
|
2233 |
+
echo '</div>';
|
2234 |
+
// weglot install dialog
|
2235 |
|
2236 |
$promo = self::is_promo_active();
|
2237 |
if ($promo == 'welcome') {
|
2459 |
} // install_mailoptin
|
2460 |
|
2461 |
|
2462 |
+
// auto download / install / activate Weglot plugin
|
2463 |
+
static function install_weglot() {
|
2464 |
+
$plugin_slug = 'weglot/weglot.php';
|
2465 |
+
$plugin_zip = 'https://downloads.wordpress.org/plugin/weglot.latest-stable.zip';
|
2466 |
+
|
2467 |
+
@include_once ABSPATH . 'wp-admin/includes/plugin.php';
|
2468 |
+
@include_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php';
|
2469 |
+
@include_once ABSPATH . 'wp-admin/includes/plugin-install.php';
|
2470 |
+
@include_once ABSPATH . 'wp-admin/includes/file.php';
|
2471 |
+
@include_once ABSPATH . 'wp-admin/includes/misc.php';
|
2472 |
+
echo '<style>
|
2473 |
+
body{
|
2474 |
+
font-family: sans-serif;
|
2475 |
+
font-size: 14px;
|
2476 |
+
line-height: 1.5;
|
2477 |
+
color: #444;
|
2478 |
+
}
|
2479 |
+
</style>';
|
2480 |
+
|
2481 |
+
echo '<div style="margin: 20px; color:#444;">';
|
2482 |
+
echo 'If things are not done in a minute <a target="_parent" href="' . admin_url('plugin-install.php?s=weglot&tab=search&type=term') .'">install the plugin manually via Plugins page</a><br><br>';
|
2483 |
+
echo 'Starting ...<br><br>';
|
2484 |
+
|
2485 |
+
wp_cache_flush();
|
2486 |
+
$upgrader = new Plugin_Upgrader();
|
2487 |
+
echo 'Check if Weglot is already installed ... <br />';
|
2488 |
+
if (self::is_plugin_installed($plugin_slug)) {
|
2489 |
+
echo 'Weglot is already installed! <br /><br />Making sure it\'s the latest version.<br />';
|
2490 |
+
$upgrader->upgrade($plugin_slug);
|
2491 |
+
$installed = true;
|
2492 |
+
} else {
|
2493 |
+
echo 'Installing Weglot.<br />';
|
2494 |
+
$installed = $upgrader->install($plugin_zip);
|
2495 |
+
}
|
2496 |
+
wp_cache_flush();
|
2497 |
+
|
2498 |
+
if (!is_wp_error($installed) && $installed) {
|
2499 |
+
echo 'Activating Weglot.<br />';
|
2500 |
+
$activate = activate_plugin($plugin_slug);
|
2501 |
+
|
2502 |
+
if (is_null($activate)) {
|
2503 |
+
echo 'Weglot Activated.<br />';
|
2504 |
+
|
2505 |
+
echo '<script>setTimeout(function() { top.location = "options-general.php?page=ucp"; }, 1000);</script>';
|
2506 |
+
echo '<br>If you are not redirected in a few seconds - <a href="options-general.php?page=ucp" target="_parent">click here</a>.';
|
2507 |
+
}
|
2508 |
+
} else {
|
2509 |
+
echo 'Could not install Weglot. You\'ll have to <a target="_parent" href="' . admin_url('plugin-install.php?s=weglot&tab=search&type=term') .'">download and install manually</a>.';
|
2510 |
+
}
|
2511 |
+
|
2512 |
+
echo '</div>';
|
2513 |
+
} // install_weglot
|
2514 |
+
|
2515 |
+
|
2516 |
static function is_plugin_installed($slug) {
|
2517 |
if (!function_exists('get_plugins')) {
|
2518 |
require_once ABSPATH . 'wp-admin/includes/plugin.php';
|
2534 |
}
|
2535 |
|
2536 |
if (is_plugin_active('mailoptin/mailoptin.php')) {
|
2537 |
+
$mailoptin_info = get_plugin_data(ABSPATH . 'wp-content/plugins/mailoptin/mailoptin.php');
|
2538 |
if( version_compare($mailoptin_info['Version'], '1.2.10.1', '<')) {
|
2539 |
return false;
|
2540 |
} else {
|
2546 |
} // is_mailoptin_active
|
2547 |
|
2548 |
|
2549 |
+
// check if Weglot plugin is active and min version installed
|
2550 |
+
static function is_weglot_active() {
|
2551 |
+
if (!function_exists('is_plugin_active') || !function_exists('get_plugin_data')) {
|
2552 |
+
require_once ABSPATH . 'wp-admin/includes/plugin.php';
|
2553 |
+
}
|
2554 |
+
|
2555 |
+
if (is_plugin_active('weglot/weglot.php')) {
|
2556 |
+
$weglot_info = get_plugin_data(ABSPATH . 'wp-content/plugins/weglot/weglot.php');
|
2557 |
+
if( version_compare($weglot_info['Version'], '2.5', '<')) {
|
2558 |
+
return false;
|
2559 |
+
} else {
|
2560 |
+
return true;
|
2561 |
+
}
|
2562 |
+
} else {
|
2563 |
+
return false;
|
2564 |
+
}
|
2565 |
+
} // is_weglot_active
|
2566 |
+
|
2567 |
+
|
2568 |
+
// check if Weglot is completely set up
|
2569 |
+
static function is_weglot_setup() {
|
2570 |
+
if (!self::is_weglot_active()) {
|
2571 |
+
return false;
|
2572 |
+
}
|
2573 |
+
|
2574 |
+
$active_languages = weglot_get_destination_language();
|
2575 |
+
if (!empty($active_languages)) {
|
2576 |
+
return true;
|
2577 |
+
} else {
|
2578 |
+
return false;
|
2579 |
+
}
|
2580 |
+
} // is_weglot_setup
|
2581 |
+
|
2582 |
+
|
2583 |
// helper function for adding plugins to fav list
|
2584 |
static function featured_plugins_tab($args) {
|
2585 |
add_filter('plugins_api_result', array(__CLASS__, 'plugins_api_result'), 10, 3);
|
2592 |
static function add_plugin_favs($plugin_slug, $res) {
|
2593 |
if (!empty($res->plugins) && is_array($res->plugins)) {
|
2594 |
foreach ($res->plugins as $plugin) {
|
2595 |
+
if (is_object($plugin) && $plugin->slug == $plugin_slug) {
|
2596 |
return $res;
|
2597 |
}
|
2598 |
} // foreach
|