PluginProbe
Ever Compare – Products Compare Plugin for WooCommerce / 1.2.0
Ever Compare – Products Compare Plugin for WooCommerce v1.2.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 / Ajax.php

Ajax.php in Ever Compare – Products Compare Plugin for WooCommerce 1.2.0, at includes/classes/Ajax.php

57 lines 1.5 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 * Ajax handlers class
5 */
6 class Ajax {
7
8 /**
9 * [$_instance]
10 * @var null
11 */
12 private static $_instance = null;
13
14 /**
15 * [instance] Initializes a singleton instance
16 * @return [Ajax]
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 * Initialize the class
27 */
28 private function __construct() {
29
30 // Add Ajax Callback
31 add_action( 'wp_ajax_ever_compare_add_to_compare', [ $this, 'add_to_compare' ] );
32 add_action( 'wp_ajax_nopriv_ever_compare_add_to_compare', [ $this, 'add_to_compare' ] );
33
34 // Remove Ajax Callback
35 add_action( 'wp_ajax_ever_compare_remove_from_compare', [ $this, 'remove_from_compare' ] );
36 add_action( 'wp_ajax_nopriv_ever_compare_remove_from_compare', [ $this,'remove_from_compare' ] );
37
38 }
39
40 /**
41 * [add_to_compare] Product add ajax callback
42 */
43 public function add_to_compare(){
44 $id = sanitize_text_field( $_GET['id'] );
45 \EverCompare\Frontend\Manage_Compare::instance()->add_to_compare( $id );
46 }
47
48 /**
49 * [remove_from_compare] Product delete ajax callback
50 * @return [void]
51 */
52 public function remove_from_compare(){
53 $id = sanitize_text_field( $_GET['id'] );
54 \EverCompare\Frontend\Manage_Compare::instance()->remove_from_compare( $id );
55 }
56
57 }