class-wpml-tm-ajax-factory.php
966 Bytes
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
<?php
abstract class WPML_TM_AJAX_Factory_Obsolete {
protected $ajax_actions;
/**
* @var WPML_WP_API
*/
protected $wpml_wp_api;
public function __construct( &$wpml_wp_api ) {
$this->wpml_wp_api = &$wpml_wp_api;
}
protected function init() {
$this->add_ajax_actions();
}
protected function add_ajax_action( $handle, $callback ) {
$this->ajax_actions[ $handle ] = $callback;
}
private function add_ajax_actions() {
if ( ! $this->wpml_wp_api->is_cron_job() ) {
foreach ( $this->ajax_actions as $handle => $callback ) {
if ( $this->wpml_wp_api->is_ajax() ) {
if ( stripos( $handle, 'wp_ajax_' ) !== 0 ) {
$handle = 'wp_ajax_' . $handle;
}
add_action( $handle, $callback );
}
if ( $this->wpml_wp_api->is_back_end() && $this->ajax_actions ) {
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_resources' ) );
}
}
}
}
abstract public function enqueue_resources( $hook_suffix );
}