PluginProbe
AutomatorWP – No-Code Workflow Automation, Integration & Webhooks Plugin, now with AI / 5.8.5
AutomatorWP – No-Code Workflow Automation, Integration & Webhooks Plugin, now with AI v5.8.5
6.0.3 6.0.2 6.0.1 6.0.0 5.8.6 5.8.5 5.8.4 5.8.3 5.8.2 5.8.1 5.8.0 5.7.9.2 5.7.9.1 5.7.8 5.7.9 5.7.6 5.7.7 5.7.5 5.7.4 5.7.3 5.7.2 5.7.1 trunk 5.6.0 5.6.1 All 34 releases
automatorwp / includes / admin / notices.php

notices.php in AutomatorWP – No-Code Workflow Automation, Integration & Webhooks Plugin, now with AI 5.8.5, at includes/admin/notices.php

83 lines 3.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Admin Notices
4 *
5 * @package AutomatorWP\Admin\Notices
6 * @author AutomatorWP <[email protected]>, Ruben Garcia <[email protected]>
7 * @since 1.1.1
8 */
9 // Exit if accessed directly
10 if( !defined( 'ABSPATH' ) ) exit;
11
12 /**
13 * AutomatorWP admin notices
14 *
15 * @since 1.1.1
16 */
17 function automatorwp_admin_notices() {
18
19 // Bail if current user is not a site administrator
20 if( ! current_user_can( 'update_plugins' ) ) {
21 return;
22 }
23
24 // Check if user checked already hide the review notice
25 $hide_review_notice = ( $exists = get_option( 'automatorwp_hide_review_notice' ) ) ? $exists : '';
26
27 if( $hide_review_notice !== 'yes' ) {
28
29 // Get the installation date
30 $automatorwp_install_date = ( $exists = get_option( 'automatorwp_install_date' ) ) ? $exists : date( 'Y-m-d H:i:s' );
31
32 $now = date( 'Y-m-d h:i:s' );
33 $datetime1 = new DateTime( $automatorwp_install_date );
34 $datetime2 = new DateTime( $now );
35
36 // Difference in days between installation date and now
37 $diff_interval = round( ( $datetime2->format( 'U' ) - $datetime1->format( 'U' ) ) / ( 60 * 60 * 24 ) );
38
39 if( $diff_interval >= 7 ) {
40 ?>
41
42 <div class="notice automatorwp-review-notice">
43 <div class="automatorwp-logo"></div>
44 <p>
45 <?php _e( 'Awesome! You\'ve been using <strong>AutomatorWP</strong> for a while.', 'automatorwp' ); ?><br>
46 <?php _e( 'May I ask you to give it a <strong>5-star rating</strong> on WordPress?', 'automatorwp' ); ?><br>
47 <?php _e( 'This will help to spread its popularity and to make this plugin a better one.', 'automatorwp' ); ?><br>
48 <br>
49 <?php _e( 'Your help is much appreciated. Thank you very much,', 'automatorwp' ); ?><br>
50 <span>~Ruben Garcia</span>
51 </p>
52 <ul>
53 <li><a href="https://wordpress.org/support/plugin/automatorwp/reviews/?rate=5#new-post" class="button button-primary" target="_blank" title="<?php _e( 'Yes, I want to rate it!', 'automatorwp' ); ?>"><?php _e( 'Yes, I want to rate it!', 'automatorwp' ); ?></a></li>
54 <li><a href="javascript:void(0);" class="automatorwp-hide-review-notice button" title="<?php _e( 'I already did', 'automatorwp' ); ?>"><?php _e( 'I already did', 'automatorwp' ); ?></a></li>
55 <li><a href="javascript:void(0);" class="automatorwp-hide-review-notice" title="<?php _e( 'No, I don\'t want to rate it', 'automatorwp' ); ?>"><small><?php _e( 'No, I don\'t want to rate it', 'automatorwp' ); ?></small></a></li>
56 </ul>
57 </div>
58
59 <?php
60 }
61
62 }
63
64 }
65 add_action( 'admin_notices', 'automatorwp_admin_notices' );
66
67 /**
68 * Ajax handler for hide review notice action
69 *
70 * @since 1.1.1
71 */
72 function automatorwp_ajax_hide_review_notice() {
73 // Security check, forces to die if not security passed
74 check_ajax_referer( 'automatorwp_admin', 'nonce' );
75
76 update_option( 'automatorwp_hide_review_notice', 'yes' );
77
78 wp_send_json_success( array( 'success' ) );
79 exit;
80 }
81
82 add_action( 'wp_ajax_automatorwp_hide_review_notice', 'automatorwp_ajax_hide_review_notice' );
83