PluginProbe
E2Pdf – Export Pdf Tool for WordPress / 1.32.15
E2Pdf – Export Pdf Tool for WordPress v1.32.15
1.32.49 1.32.48 1.32.43 1.32.40 1.32.34 1.32.32 1.32.31 1.32.26 1.32.22 1.32.23 1.32.18 1.32.17 1.32.15 trunk 1.00.00 1.00.13 1.01.01 1.02.02 1.03.07 1.04.07 1.05.03 1.06.02 1.07.11 1.08.00 1.08.06 All 72 releases
e2pdf / classes / controller / e2pdf-license.php

e2pdf-license.php in E2Pdf – Export Pdf Tool for WordPress 1.32.15, at classes/controller/e2pdf-license.php

164 lines 5.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 /**
4 * File: /controller/e2pdf-license.php
5 *
6 * @package E2Pdf
7 * @license GPLv3
8 * @link https://e2pdf.com
9 */
10 if (!defined('ABSPATH')) {
11 die('Access denied.');
12 }
13
14 class Controller_E2pdf_License extends Helper_E2pdf_View {
15
16 /**
17 * @url admin.php?page=e2pdf-license
18 */
19 public function index_action() {
20 $this->load_scripts();
21 $this->load_styles();
22 $this->view('license', $this->helper->get('license'));
23 }
24
25 /**
26 * Load javascript on license page
27 */
28 public function load_scripts() {
29 wp_enqueue_script('jquery-ui-dialog');
30 }
31
32 /**
33 * Load style on license page
34 */
35 public function load_styles() {
36 $version = get_option('e2pdf_debug', '0') === '1' ? strtotime('now') : $this->helper->get('version');
37 wp_enqueue_style('css/e2pdf.jquery-ui', plugins_url('css/jquery-ui.css', $this->helper->get('plugin_file_path')), false, $version, false);
38 }
39
40 /**
41 * Change license key via ajax
42 * action: wp_ajax_e2pdf_license_key
43 * function: e2pdf_license_key
44 * @return json
45 */
46 public function ajax_change_license_key() {
47 if (wp_verify_nonce($this->get->get('_wpnonce'), 'e2pdf_license')) {
48 $data = $this->post->get('data');
49 $model_e2pdf_api = new Model_E2pdf_Api();
50 $model_e2pdf_api->set(
51 [
52 'action' => 'license/update',
53 'data' => [
54 'license_key' => isset($data['license_key']) ? trim($data['license_key']) : '',
55 ],
56 ]
57 );
58 $request = $model_e2pdf_api->request();
59 if (isset($request['error'])) {
60 $this->add_notification('error', $request['error']);
61 } else {
62 /* translators: %s: Action */
63 $this->add_notification('update', sprintf(__('Success: %s', 'e2pdf'), __('License Key Updated', 'e2pdf')));
64 }
65 $response = [
66 'redirect' => $this->helper->get_url(
67 [
68 'page' => 'e2pdf-license',
69 ]
70 ),
71 ];
72 } else {
73 $response['error'] = $this->message('wp_verify_nonce_error');
74 }
75 $this->json_response($response);
76 }
77
78 /**
79 * Restore license key via ajax
80 * action: wp_ajax_e2pdf_restore_license_key
81 * function: e2pdf_restore_license_key
82 * @return json
83 */
84 public function ajax_restore_license_key() {
85 if (wp_verify_nonce($this->get->get('_wpnonce'), 'e2pdf_license')) {
86 $model_e2pdf_api = new Model_E2pdf_Api();
87 $model_e2pdf_api->set(
88 [
89 'action' => 'license/activation',
90 'data' => [],
91 ]
92 );
93 $request = $model_e2pdf_api->request();
94 if (isset($request['error'])) {
95 $this->add_notification('error', $request['error']);
96 } elseif (isset($request['success']) && isset($request['activation_key'])) {
97 $activation_key = $request['activation_key'];
98 $file = ABSPATH . $activation_key . '.html';
99 set_transient('e2pdf_activation_key', $activation_key, 600);
100 if (!file_exists($file)) {
101 $this->helper->create_file($file, $activation_key);
102 }
103 $model_e2pdf_api = new Model_E2pdf_Api();
104 $model_e2pdf_api->set(
105 [
106 'action' => 'license/request',
107 'data' => [],
108 ]
109 );
110 $request = $model_e2pdf_api->request();
111 if (isset($request['success'])) {
112 /* translators: %s: Action */
113 $this->add_notification('update', sprintf(__('Success: %s', 'e2pdf'), __('License Key Restored', 'e2pdf')));
114 } else {
115 /* translators: %1$s: Url, %2$s: Url */
116 $this->add_notification('error', sprintf(__('Failed to Restore License Key. Contact Support at <a target="_blank" href="%1$s">%2$s</a>', 'e2pdf'), 'https://e2pdf.com/support/contact', 'https://e2pdf.com/support/contact'));
117 }
118 if (file_exists($file)) {
119 unlink($file);
120 }
121 delete_transient('e2pdf_activation_key');
122 }
123 $response = [
124 'redirect' => $this->helper->get_url(
125 [
126 'page' => 'e2pdf-license',
127 ]
128 ),
129 ];
130 } else {
131 $response['error'] = $this->message('wp_verify_nonce_error');
132 }
133 $this->json_response($response);
134 }
135
136 public function ajax_deactivate_all_templates() {
137 if (wp_verify_nonce($this->get->get('_wpnonce'), 'e2pdf_license')) {
138 $model_e2pdf_api = new Model_E2pdf_Api();
139 $model_e2pdf_api->set(
140 [
141 'action' => 'template/deactivateall',
142 ]
143 );
144 $request = $model_e2pdf_api->request();
145 if (isset($request['error'])) {
146 $this->add_notification('error', $request['error']);
147 } else {
148 /* translators: %s: Action */
149 $this->add_notification('update', sprintf(__('Success: %s', 'e2pdf'), __('Deactivated', 'e2pdf')));
150 }
151 $response = [
152 'redirect' => $this->helper->get_url(
153 [
154 'page' => 'e2pdf-license',
155 ]
156 ),
157 ];
158 } else {
159 $response['error'] = $this->message('wp_verify_nonce_error');
160 }
161 $this->json_response($response);
162 }
163 }
164