C:\xampp\htdocs\landing\wp-content\plugins\mailchimp-for-wp\includes\admin\class-review-notice.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<?php

/**
 * Class MC4WP_Admin_Review_Notice
 *
 * @ignore
 */
class MC4WP_Admin_Review_Notice {


    
/**
     * @var MC4WP_Admin_Tools
     */
    
protected $tools;

    
/**
     * @var string
     */
    
protected $meta_key_dismissed '_mc4wp_review_notice_dismissed';

    
/**
     * MC4WP_Admin_Review_Notice constructor.
     *
     * @param MC4WP_Admin_Tools $tools
     */
    
public function __constructMC4WP_Admin_Tools $tools ) {
        
$this->tools $tools;
    }

    
/**
     * Add action & filter hooks.
     */
    
public function add_hooks() {
        
add_action'admin_notices', array( $this'show' ) );
        
add_action'mc4wp_admin_dismiss_review_notice', array( $this'dismiss' ) );
    }

    
/**
     * Set flag in user meta so notice won't be shown.
     */
    
public function dismiss() {
        
$user wp_get_current_user();
        
update_user_meta$user->ID$this->meta_key_dismissed);
    }

    
/**
     * @return bool
     */
    
public function show() {
        
// only show on Mailchimp for WordPress' pages.
        
if ( ! $this->tools->on_plugin_page() ) {
            return 
false;
        }

        
// only show if 2 weeks have passed since first use.
        
$two_weeks_in_seconds = ( 60 60 24 14 );
        if ( 
$this->time_since_first_use() <= $two_weeks_in_seconds ) {
            return 
false;
        }

        
// only show if user did not dismiss before
        
$user wp_get_current_user();
        if ( 
get_user_meta$user->ID$this->meta_key_dismissedtrue ) ) {
            return 
false;
        }

        echo 
'<div class="notice notice-info mc4wp-is-dismissible" id="mc4wp-review-notice">';
        echo 
'<p>';
        echo 
esc_html__'You\'ve been using Mailchimp for WordPress for some time now; we hope you love it!''mailchimp-for-wp' ), ' <br />';
        echo 
sprintfwp_kses__'If you do, please <a href="%s">leave us a 5★ rating on WordPress.org</a>. It would be of great help to us.''mailchimp-for-wp' ), array( 'a' => array( 'href' => array() ) ) ), 'https://wordpress.org/support/view/plugin-reviews/mailchimp-for-wp?rate=5#new-post' );
        echo 
'</p>';
        echo 
'<form method="POST" id="mc4wp-dismiss-review-form"><button type="submit" class="notice-dismiss"><span class="screen-reader-text">'esc_html__'Dismiss this notice.''mailchimp-for-wp' ), '</span></button><input type="hidden" name="_mc4wp_action" value="dismiss_review_notice"/></form>';
        echo 
'</div>';
        return 
true;
    }

    
/**
     * @return int
     */
    
private function time_since_first_use() {
        
$options get_option'mc4wp' );

        
// option was never added before, do it now.
        
if ( empty( $options['first_activated_on'] ) ) {
            
$options['first_activated_on'] = time();
            
update_option'mc4wp'$options );
        }

        return 
time() - $options['first_activated_on'];
    }
}
x

Windows NT KPTV 6.2 build 9200 (Windows Server 2012 Datacenter Edition) i586