PluginProbe
Ever Compare – Products Compare Plugin for WooCommerce / 1.0.0
Ever Compare – Products Compare Plugin for WooCommerce v1.0.0
1.3.7 1.1.7 1.1.8 1.1.9 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 trunk 1.0.0 1.0.1 1.0.2 All 31 releases
ever-compare / includes / classes / Assets.php

Assets.php in Ever Compare – Products Compare Plugin for WooCommerce 1.0.0, at includes/classes/Assets.php

108 lines 3.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 namespace EverCompare;
3 /**
4 * Assets handlers class
5 */
6 class Assets {
7
8 /**
9 * [$_instance]
10 * @var null
11 */
12 private static $_instance = null;
13
14 /**
15 * [instance] Initializes a singleton instance
16 * @return [Base]
17 */
18 public static function instance() {
19 if ( is_null( self::$_instance ) ) {
20 self::$_instance = new self();
21 }
22 return self::$_instance;
23 }
24
25 /**
26 * Class constructor
27 */
28 private function __construct() {
29 add_action( 'wp_enqueue_scripts', [ $this, 'register_assets' ] );
30 add_action( 'admin_enqueue_scripts', [ $this, 'register_assets' ] );
31 }
32
33 /**
34 * All available scripts
35 *
36 * @return array
37 */
38 public function get_scripts() {
39 return [
40 'evercompare-admin' => [
41 'src' => EVERCOMPARE_ASSETS . '/js/admin.js',
42 'version' => filemtime( EVERCOMPARE_PATH . '/assets/js/admin.js' ),
43 'deps' => [ 'jquery' ]
44 ],
45 'evercompare-frontend' => [
46 'src' => EVERCOMPARE_ASSETS . '/js/frontend.js',
47 'version' => filemtime( EVERCOMPARE_PATH . '/assets/js/frontend.js' ),
48 'deps' => [ 'jquery' ]
49 ],
50 ];
51 }
52
53 /**
54 * All available styles
55 *
56 * @return array
57 */
58 public function get_styles() {
59 return [
60 'evercompare-admin' => [
61 'src' => EVERCOMPARE_ASSETS . '/css/admin.css',
62 'version' => filemtime( EVERCOMPARE_PATH . '/assets/css/admin.css' ),
63 ],
64 'evercompare-frontend' => [
65 'src' => EVERCOMPARE_ASSETS . '/css/frontend.css',
66 'version' => filemtime( EVERCOMPARE_PATH . '/assets/css/frontend.css' ),
67 ],
68 ];
69 }
70
71 /**
72 * Register scripts and styles
73 *
74 * @return void
75 */
76 public function register_assets() {
77 $scripts = $this->get_scripts();
78 $styles = $this->get_styles();
79
80 foreach ( $scripts as $handle => $script ) {
81 $deps = isset( $script['deps'] ) ? $script['deps'] : false;
82
83 wp_register_script( $handle, $script['src'], $deps, $script['version'], true );
84 }
85
86 foreach ( $styles as $handle => $style ) {
87 $deps = isset( $style['deps'] ) ? $style['deps'] : false;
88
89 wp_register_style( $handle, $style['src'], $deps, $style['version'] );
90 }
91
92 $setting_page = 0;
93 if( isset( $_GET['page'] ) && $_GET['page'] == 'evercompare' ){
94 $setting_page = 1;
95 }
96 $localize_data = array(
97 'ajaxurl' => admin_url( 'admin-ajax.php' ),
98 'popup' => ( ever_compare_get_option( 'open_popup', 'ever_compare_settings_tabs', 'on' ) === 'on' ) ? 'yes' : 'no',
99 'is_settings'=> $setting_page,
100 );
101 wp_localize_script( 'evercompare-frontend', 'evercompare', $localize_data );
102 wp_localize_script( 'evercompare-admin', 'evercompare', $localize_data );
103
104 }
105
106
107 }
108