PluginProbe ʕ •ᴥ•ʔ
Photo Gallery by FooGallery : Responsive Image Gallery, Masonry Gallery & Carousel / trunk
Photo Gallery by FooGallery : Responsive Image Gallery, Masonry Gallery & Carousel vtrunk
trunk 1.10.3 2.0.24 2.1.34 2.2.44 2.3.3 2.4.32 3.0.6 3.1.11 3.1.12 3.1.13 3.1.20 3.1.25 3.1.26 3.1.26.1 3.1.26.2
foogallery / includes / compatibility / class-autoptimize-compatibility.php
foogallery / includes / compatibility Last commit date
elementor 7 months ago class-autoptimize-compatibility.php 7 months ago class-elasticpress-compatibility.php 7 months ago class-elementor-compatibility.php 7 months ago class-foobox-compatibility.php 7 months ago class-foogallery-compatibility.php 7 months ago class-foovideo-compatibility.php 7 months ago class-jetpack-compatibility.php 7 months ago class-polylang-compatibility.php 7 months ago class-responsive-lightbox-dfactory-compatibility.php 7 months ago class-wpoptimize-compatibility.php 7 months ago class-wprocket-compatibility.php 7 months ago view-foovideo-offer.php 7 months ago
class-autoptimize-compatibility.php
74 lines
1 <?php
2 /**
3 * Class to help users who also use Autoptomize plugin
4 * Date: 2017/11/12
5 */
6
7 if ( !class_exists( 'FooGallery_Autoptimize_Compatibility' ) ) {
8
9 class FooGallery_Autoptimize_Compatibility {
10
11 const transient_key = 'foogallery_autoptimize_notice';
12
13 function __construct() {
14 if ( is_admin() ) {
15 add_action( 'admin_notices', array( $this, 'admin_notice' ) );
16 add_action( 'foogallery_admin_new_version_detected', array( $this, 'set_to_show_admin_notice' ) );
17
18 add_action( 'wp_ajax_foogallery_autoptimize_dismiss', array( $this, 'admin_notice_dismiss' ) );
19 }
20 }
21
22 /**
23 * Set the transient for 3 days to display the message to flush the cache
24 */
25 function set_to_show_admin_notice() {
26 if ( class_exists( 'autoptimizeCache' ) ) {
27 set_transient(FooGallery_Autoptimize_Compatibility::transient_key, true, 3 * 24 * 60 * 60);
28 }
29 }
30
31 /**
32 * Display the admin notice
33 */
34 function admin_notice() {
35 if ( !class_exists( 'autoptimizeCache' ) ) return;
36 $show_notice = get_transient( FooGallery_Autoptimize_Compatibility::transient_key );
37 if ( false === $show_notice ) return;
38 ?>
39 <script type="text/javascript">
40 ( function ( $ ) {
41 $( document ).ready( function () {
42 $( '.foogallery-autoptimize-notice.is-dismissible' )
43 .on( 'click', '.notice-dismiss', function ( e ) {
44 e.preventDefault();
45 $.post( ajaxurl, {
46 action: 'foogallery_autoptimize_dismiss',
47 url: '<?php echo esc_url( admin_url( 'admin-ajax.php' ) ); ?>',
48 _wpnonce: '<?php echo esc_attr( wp_create_nonce( 'foogallery_autoptimize_dismiss' ) ); ?>'
49 } );
50 } );
51 } );
52 } )( jQuery );
53 </script>
54 <div class="foogallery-autoptimize-notice notice error is-dismissible">
55 <p>
56 <strong><?php esc_html_e( 'FooGallery + Autoptimize : ', 'foobox-image-lightbox' ); ?></strong>
57 <?php esc_html_e( 'We noticed that you have the Autoptimize plugin installed. After updating FooGallery, please make sure you delete the Autoptimize cache from the admin bar above to make sure your galleries continue to display correctly.' ); ?>
58 <br />
59 <?php esc_html_e( 'If you continue to have issues using FooGallery and Autoptimize together, then please goto Autoptimize Plugin settings –> Java Script Options –> Exclude Scripts and add foogallery.min.js' ); ?>
60 </p>
61 </div>
62 <?php
63 }
64
65 /**
66 * Dismiss the admin notice
67 */
68 function admin_notice_dismiss() {
69 if ( check_admin_referer( 'foogallery_autoptimize_dismiss' ) ) {
70 delete_transient( FooGallery_Autoptimize_Compatibility::transient_key );
71 }
72 }
73 }
74 }