File: //proc/self/cwd/wp-content/plugins/google-analytics-for-wordpress/lite/includes/admin/helpers.php
<?php
/**
* Store the time when the float bar was hidden so it won't show again for 14 days.
*/
function monsterinsights_mark_floatbar_hidden() {
check_ajax_referer( 'mi-admin-nonce', 'nonce' );
update_option( 'monsterinsights_float_bar_hidden', time() );
wp_send_json_success();
}
add_action( 'wp_ajax_monsterinsights_hide_floatbar', 'monsterinsights_mark_floatbar_hidden' );
/**
* Store the time when the float bar was hidden so it won't show again for 14 days.
*/
function monsterinsights_get_floatbar() {
check_ajax_referer( 'mi-admin-nonce', 'nonce' );
$show_floatbar = get_option( 'monsterinsights_float_bar_hidden', 0 );
if ( time() - $show_floatbar > 14 * DAY_IN_SECONDS ) {
$show_floatbar = true;
} else {
$show_floatbar = false;
}
wp_send_json( array(
'show' => $show_floatbar,
) );
}
add_action( 'wp_ajax_monsterinsights_get_floatbar', 'monsterinsights_get_floatbar' );
/**
* Admin menu tooltip.
*/
function monsterinsights_get_admin_menu_tooltip() {
$show_tooltip = get_option( 'monsterinsights_admin_menu_tooltip', 0 );
$activated = get_option( 'monsterinsights_over_time', array() );
$tracking_id = monsterinsights_get_v4_id();
if ( monsterinsights_is_reports_page() || monsterinsights_is_settings_page() ) {
// Don't show on MI pages.
return;
}
if ( ! current_user_can( 'monsterinsights_save_settings' ) ) {
return;
}
if ( $show_tooltip && $show_tooltip + 30 * DAY_IN_SECONDS > time() ) {
// Dismissed less than 30 days ago.
return;
}
if ( empty( $activated['installed_date'] ) || ( $activated['installed_date'] + 30 * DAY_IN_SECONDS > time() ) || empty( $tracking_id ) ) {
return;
}
// More than 30 days since it was installed & is tracking.
$url = monsterinsights_get_upgrade_link( 'menu-tooltip', 'upgrade' );
?>
<div id="monterinsights-admin-menu-tooltip" class="monterinsights-admin-menu-tooltip-hide">
<div class="monsterinsights-admin-menu-tooltip-header">
<span class="monsterinsights-admin-menu-tooltip-icon"><span
class="dashicons dashicons-megaphone"></span></span>
<?php esc_html_e( 'Get Better Insights. Grow FASTER!', 'google-analytics-for-wordpress' ); ?>
<a href="#" class="monsterinsights-admin-menu-tooltip-close"><span
class="dashicons dashicons-dismiss"></span></a>
</div>
<div class="monsterinsights-admin-menu-tooltip-content">
<strong><?php esc_html_e( 'Grow Your Business with MonsterInsights Pro', 'google-analytics-for-wordpress' ); ?></strong>
<p><?php esc_html_e( 'It\'s easy to double your traffic and sales when you know exactly how people find and use your website.', 'google-analytics-for-wordpress' ); ?></p>
<p><?php esc_html_e( 'MonsterInsights Pro shows you the stats that matter, so you can boost your business growth!', 'google-analytics-for-wordpress' ); ?></p>
<p>
<?php
// Translators: makes text bold.
printf( esc_html__( '%1$sBonus:%2$s You also get 50%% off discount for being a loyal MonsterInsights Lite user.', 'google-analytics-for-wordpress' ), '<strong>', '</strong>' );
?>
</p>
<p>
<a href="<?php echo esc_url( $url ); ?>"
target="_blank"
rel="noopener"
class="button button-primary"><?php esc_html_e( 'Upgrade to MonsterInsights Pro', 'google-analytics-for-wordpress' ); ?></a>
</p>
</div>
</div>
<style type="text/css">
#monterinsights-admin-menu-tooltip {
position: absolute;
left: 100%;
top: 100%;
background: #fff;
margin-left: 16px;
width: 350px;
box-shadow: 0px 4px 7px 0px #ccc;
}
#monterinsights-admin-menu-tooltip:before {
content: '';
width: 0;
height: 0;
border-style: solid;
border-width: 12px 12px 12px 0;
border-color: transparent #fff transparent transparent;
position: absolute;
right: 100%;
top: 130px;
z-index: 10;
}
#monterinsights-admin-menu-tooltip:after {
content: '';
width: 0;
height: 0;
border-style: solid;
border-width: 13px 13px 13px 0;
border-color: transparent #ccc transparent transparent;
position: absolute;
right: 100%;
margin-left: -1px;
top: 129px;
z-index: 5;
}
#monterinsights-admin-menu-tooltip.monsterinsights-tooltip-arrow-top:before {
top: 254px;
}
#monterinsights-admin-menu-tooltip.monsterinsights-tooltip-arrow-top:after {
top: 253px;
}
.monsterinsights-admin-menu-tooltip-header {
background: #03a0d2;
padding: 5px 12px;
font-size: 14px;
font-weight: 700;
font-family: Arial, Helvetica, "Trebuchet MS", sans-serif;
color: #fff;
line-height: 1.6;
}
.monsterinsights-admin-menu-tooltip-icon {
background: #fff;
border-radius: 50%;
width: 28px;
height: 25px;
display: inline-block;
color: #03a0d2;
text-align: center;
padding: 3px 0 0;
margin-right: 6px;
}
.monterinsights-admin-menu-tooltip-hide {
display: none;
}
.monsterinsights-admin-menu-tooltip-content {
padding: 20px 15px 7px;
}
.monsterinsights-admin-menu-tooltip-content strong {
font-size: 14px;
}
.monsterinsights-admin-menu-tooltip-content p strong {
font-size: 13px;
}
.monsterinsights-admin-menu-tooltip-close {
color: #fff;
text-decoration: none;
position: absolute;
right: 10px;
top: 12px;
display: block;
}
.monsterinsights-admin-menu-tooltip-close:hover {
color: #fff;
text-decoration: none;
}
.monsterinsights-admin-menu-tooltip-close .dashicons {
font-size: 14px;
}
@media ( max-width: 782px ) {
#monterinsights-admin-menu-tooltip {
display: none;
}
}
</style>
<script type="text/javascript">
if ('undefined' !== typeof jQuery) {
jQuery(function ($) {
var $tooltip = $(document.getElementById('monterinsights-admin-menu-tooltip'));
var $menuwrapper = $(document.getElementById('adminmenuwrap'));
var $menuitem = $(document.getElementById('toplevel_page_monsterinsights_reports'));
if (0 === $menuitem.length) {
$menuitem = $(document.getElementById('toplevel_page_monsterinsights_network'));
}
if (0 === $menuitem.length) {
$menuitem = $(document.getElementById('toplevel_page_monsterinsights_settings'));
}
if (0 === $menuitem.length) {
return;
}
if ($menuitem.length) {
$menuwrapper.append($tooltip);
$tooltip.removeClass('monterinsights-admin-menu-tooltip-hide');
}
function alignTooltip() {
var sticky = $('body').hasClass('sticky-menu');
var menuitem_pos = $menuitem.position();
var tooltip_top = menuitem_pos.top - 124;
if (sticky && $(window).height() > $menuwrapper.height() + 150) {
$tooltip.removeClass('monsterinsights-tooltip-arrow-top');
} else {
tooltip_top = menuitem_pos.top - 250;
$tooltip.addClass('monsterinsights-tooltip-arrow-top');
}
// Don't let the tooltip go outside of the screen and make the close button not visible.
if (tooltip_top < 40) {
tooltip_top = 40;
}
$tooltip.css({
top: tooltip_top + 'px'
});
}
var $document = $(document);
var timeout = setTimeout(alignTooltip, 10);
$document.on('wp-pin-menu wp-window-resized.pin-menu postboxes-columnchange.pin-menu postbox-toggled.pin-menu wp-collapse-menu.pin-menu wp-scroll-start.pin-menu', function () {
if (timeout) {
clearTimeout(timeout);
}
timeout = setTimeout(alignTooltip, 10);
});
$('.monsterinsights-admin-menu-tooltip-close').on('click', function (e) {
e.preventDefault();
hideTooltip();
});
function hideTooltip() {
$tooltip.addClass('monterinsights-admin-menu-tooltip-hide');
$.post(ajaxurl, {
action: 'monsterinsights_hide_admin_menu_tooltip',
nonce: '<?php echo esc_js( wp_create_nonce( 'mi-admin-nonce' ) ); ?>',
});
}
});
}
</script>
<?php
}
add_action( 'adminmenu', 'monsterinsights_get_admin_menu_tooltip' );
/**
* Store the time when the float bar was hidden so it won't show again for 14 days.
*/
function monsterinsights_mark_admin_menu_tooltip_hidden() {
check_ajax_referer( 'mi-admin-nonce', 'nonce' );
update_option( 'monsterinsights_admin_menu_tooltip', time() );
wp_send_json_success();
}
add_action( 'wp_ajax_monsterinsights_hide_admin_menu_tooltip', 'monsterinsights_mark_admin_menu_tooltip_hidden' );