PluginProbe
EmailKit – Email Customizer for WooCommerce & WP / 1.5.3
EmailKit – Email Customizer for WooCommerce & WP v1.5.3
1.6.8 1.6.7 trunk 1.0.0 1.2.0 1.4.0 1.4.5 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6
emailkit / includes / Admin.php

Admin.php in EmailKit – Email Customizer for WooCommerce & WP 1.5.3, at includes/Admin.php

156 lines 4.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace EmailKit;
4
5 defined('ABSPATH') || exit;
6
7 use EmailKit\Admin as EmailKitAdmin;
8
9 /**
10 * The admin class
11 */
12 class Admin
13 {
14
15
16 /**
17 * Initialize the class
18 */
19 public function __construct()
20 {
21 $this->load_emailkit(); // Load emailkit classes
22 $this->run_apis(); // Run api classes
23 $this->run_wc_mails(); // Check if WooCommerce is active then run run wocommerce class
24 $this->run_wp_mails(); // Run wordpress emails class
25 add_action('admin_menu', [$this, 'admin_menu']);// Register main admin menu
26 // add_action('admin_menu', [$this, 'register_settings'], 999); //register settings submenu
27
28 }
29
30 protected function load_emailkit(){
31
32 new Admin\CPT();
33 new Admin\AssetsLoader();
34 new Admin\AssetConflictManager();
35 new Admin\EmailKitAjax();
36 new Admin\EmailKitHooks();
37 new Admin\Hooks();
38 new Admin\MetaBox();
39 new Admin\EmailKitEditor\EmailKitEditorInit();
40
41 return true;
42
43 }
44
45 /**
46 * Check if the woocommerce plugin is active run woocommerce class
47 *
48 * @return boolean
49 */
50 protected function run_wc_mails(){
51
52 if(!function_exists('is_plugin_active')){
53 // Include necessary WordPress files
54 require_once ABSPATH . 'wp-admin/includes/plugin.php';
55
56 }
57
58 if(is_plugin_active('woocommerce/woocommerce.php')){
59
60
61 new Admin\Emails\Woocommerce\NewOrder();
62 new Admin\Emails\Woocommerce\ProcessingOrder();
63 new Admin\Emails\Woocommerce\CancelledOrder();
64 new Admin\Emails\Woocommerce\FailedOrder();
65 new Admin\Emails\Woocommerce\OrderOnHold();
66 new Admin\Emails\Woocommerce\CompletedOrder();
67 new Admin\Emails\Woocommerce\RefundOrder();
68 new Admin\Emails\Woocommerce\CustomerNote();
69 new Admin\Emails\Woocommerce\InvoiceOrder();
70 new Admin\Emails\Woocommerce\ResetPassword();
71 new Admin\Emails\Woocommerce\NewAccount();
72 new Admin\Emails\Woocommerce\BackOrder();
73 new Admin\Emails\Woocommerce\LowStock();
74 new Admin\Emails\Woocommerce\NoStock();
75 new Admin\Emails\Woocommerce\PartialRefund();
76 new Admin\EmailSettings\WcEmailSettings();
77
78 return true;
79
80 }
81
82 return false;
83
84 }
85 protected function run_wp_mails(){
86
87 //Wordpress Emails class
88 new Admin\Emails\WordPress\NewUserRegister();
89 new Admin\Emails\WordPress\ResetAccount();
90 return true;
91
92 }
93
94
95 /**
96 * run api classes
97 * @return boolean true
98 */
99 public static function run_apis()
100 {
101
102 new Admin\Api\TemplateData();
103 new Admin\Api\FetchData();
104 new Admin\Api\DeleteData();
105 new Admin\Api\UpdateData();
106 new Admin\Api\UploadImage();
107 new Admin\Api\DeleteImage();
108 new Admin\Api\TestEmail();
109 new Admin\Api\ShortCodeData();
110 new Admin\Api\TemplateStatus();
111 new Admin\Api\OrderItem();
112 new Admin\Api\TemplateTypesData();
113
114 return true;
115
116 }
117
118 function admin_menu()
119 {
120 if (current_user_can('manage_options')) {
121 add_menu_page(
122 esc_html__('EmailKit', 'emailkit'),
123 esc_html__('EmailKit', 'emailkit'),
124 'read',
125 'emailkit-menu',
126 '',
127 'dashicons-email-alt',
128 35
129 );
130 }
131 }
132
133
134
135
136 public function register_settings(){
137 if (current_user_can('manage_options')) {
138
139 add_submenu_page( 'emailkit-menu', esc_html__( 'Settings', 'emailkit' ), esc_html__( 'Settings', 'emailkit' ), 'manage_options', 'emailkit-menu-settings', [$this, 'register_settings_contents__settings'], 11);
140 }
141 }
142
143 public function register_settings_contents__settings(){
144 ?>
145 <div class="wrap">
146 <h1 class="wp-heading-inline"> EmailKit Setings </h1>
147 <?php do_action('emailkit-settings'); ?>
148 <div class="clear"></div>
149 </div>
150 <?php
151
152 }
153
154
155
156 }