← All changes
|
classes/controller/frontend/e2pdf-download.php
+313
-80
1.05.03
→
1.32.51
View file →
| @@ -1,14 +1,12 @@ | ||
| 1 | 1 | <?php |
| 2 | 2 | |
| 3 | 3 | /** |
| 4 | - * E2pdf Frontend Download Controller | |
| 5 | - * | |
| 6 | - * @copyright Copyright 2017 https://e2pdf.com | |
| 7 | - * @license GPL v2 | |
| 8 | - * @version 1 | |
| 9 | - * @link https://e2pdf.com | |
| 10 | - * @since 0.00.01 | |
| 4 | + * File: /controller/frontend/e2pdf-download.php | |
| 5 | + * | |
| 6 | + * @package E2Pdf | |
| 7 | + * @license GPLv3 | |
| 8 | + * @link https://e2pdf.com | |
| 11 | 9 | */ |
| 12 | 10 | if (!defined('ABSPATH')) { |
| 13 | 11 | die('Access denied.'); |
| 14 | 12 | } |
| @@ -14,96 +12,339 @@ | ||
| 14 | 12 | } |
| 15 | 13 | |
| 16 | 14 | class Controller_Frontend_E2pdf_Download extends Helper_E2pdf_View { |
| 17 | 15 | |
| 18 | - /** | |
| 19 | - * Frontend download action | |
| 20 | - * | |
| 21 | - * @url page=e2pdf-download&uid=$uid | |
| 22 | - */ | |
| 16 | + // url: page=e2pdf-download&uid=$uid | |
| 23 | 17 | public function index_action() { |
| 24 | 18 | global $wp_query; |
| 25 | 19 | |
| 26 | - $download = false; | |
| 27 | - $uid = $this->get->get('uid'); | |
| 20 | + $uid = false; | |
| 21 | + if ($this->get->get('uid')) { | |
| 22 | + $uid = $this->get->get('uid'); | |
| 23 | + } elseif (get_query_var('uid')) { | |
| 24 | + $uid = get_query_var('uid'); | |
| 25 | + } | |
| 28 | 26 | |
| 27 | + do_action('e2pdf_controller_frontend_e2pdf_pre_download', $this); | |
| 28 | + | |
| 29 | 29 | $entry = new Model_E2pdf_Entry(); |
| 30 | + if ($uid && $entry->load_by_uid($uid)) { | |
| 30 | 31 | |
| 31 | - if ($entry->load_by_uid($uid)) { | |
| 32 | - | |
| 33 | - $uid_params = $entry->get('entry'); | |
| 34 | - | |
| 35 | 32 | $template = new Model_E2pdf_Template(); |
| 33 | + if ($entry->get_data('file_id') || $entry->get_data('pdf') || $entry->get_data('attachment_id')) { | |
| 34 | + $downloadable = false; | |
| 35 | + if ($entry->get_data('file_id')) { | |
| 36 | + $stream = (new Model_E2pdf_Gdrive())->download($entry->get_data('file_id')); | |
| 37 | + $pdf = is_array($stream) && isset($stream['name']) ? $stream['name'] : ''; | |
| 38 | + if ($pdf) { | |
| 39 | + $downloadable = true; | |
| 40 | + } | |
| 41 | + } else { | |
| 42 | + $pdf = $entry->get_data('pdf') ? $entry->get_data('pdf') : get_attached_file($entry->get_data('attachment_id')); | |
| 43 | + $downloadable = file_exists($pdf) && $this->helper->load('filter')->is_downloadable($pdf); | |
| 44 | + } | |
| 36 | 45 | |
| 37 | - if (isset($uid_params['pdf'])) { | |
| 38 | - if ($uid_params['pdf'] && file_exists($uid_params['pdf']) && isset($uid_params['template_id']) && isset($uid_params['dataset']) && $template->load($uid_params['template_id'])) { | |
| 39 | - $download = true; | |
| 46 | + $downloadable = apply_filters('e2pdf_pdf_downloadable', $downloadable, $uid, $entry->get('entry')); | |
| 47 | + if ($downloadable) { | |
| 40 | 48 | $disposition = 'attachment'; |
| 41 | - if (isset($uid_params['inline'])) { | |
| 42 | - if ($uid_params['inline']) { | |
| 43 | - $disposition = 'inline'; | |
| 49 | + if ($entry->get_data('inline')) { | |
| 50 | + $disposition = 'inline'; | |
| 51 | + } | |
| 52 | + $ext = pathinfo($pdf, PATHINFO_EXTENSION); | |
| 53 | + if ($entry->get_data('name')) { | |
| 54 | + $download_name = $entry->get_data('name'); | |
| 55 | + } else { | |
| 56 | + $download_name = basename($pdf, '.' . $ext); | |
| 57 | + } | |
| 58 | + $download_name = apply_filters('e2pdf_controller_frontend_e2pdf_download_name', $download_name, $entry->get('uid'), $entry->get('entry')); | |
| 59 | + // phpcs:ignore WordPress.Security.NonceVerification.Recommended | |
| 60 | + if ($disposition == 'inline' && !isset($_GET['v'])) { | |
| 61 | + if (get_option('e2pdf_download_inline_chrome_ios_fix', '0') == '1' && $this->helper->load('server')->isIOS() && $this->helper->load('server')->isChrome()) { | |
| 62 | + $url_data = [ | |
| 63 | + 'page' => 'e2pdf-download', | |
| 64 | + 'uid' => $uid, | |
| 65 | + 'download_name' => rawurlencode($download_name . '.' . (strtolower($ext) == 'jpg' ? 'jpg' : 'pdf')), | |
| 66 | + 'v' => $this->helper->get('version'), | |
| 67 | + ]; | |
| 68 | + $url = $this->helper->get_frontend_pdf_url( | |
| 69 | + $url_data, false, | |
| 70 | + [ | |
| 71 | + 'e2pdf_model_shortcode_site_url', | |
| 72 | + 'e2pdf_model_shortcode_e2pdf_redirect_site_url', | |
| 73 | + ] | |
| 74 | + ); | |
| 75 | + // phpcs:ignore WordPress.Security.SafeRedirect.wp_redirect_wp_redirect | |
| 76 | + wp_redirect($url); | |
| 77 | + exit; | |
| 78 | + } elseif (get_option('e2pdf_download_inline_fallback_viewer', '0') == '1' && !$this->helper->load('server')->isViewerSupported() && strtolower($ext) == 'pdf') { | |
| 79 | + $url_data = [ | |
| 80 | + 'page' => 'e2pdf-download', | |
| 81 | + 'uid' => $uid, | |
| 82 | + 'v' => $this->helper->get('version'), | |
| 83 | + ]; | |
| 84 | + $url = $this->helper->get_frontend_pdf_url( | |
| 85 | + $url_data, false, | |
| 86 | + [ | |
| 87 | + 'e2pdf_model_shortcode_site_url', | |
| 88 | + 'e2pdf_model_shortcode_e2pdf_redirect_site_url', | |
| 89 | + ] | |
| 90 | + ); | |
| 91 | + // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.urlencode_urlencode | |
| 92 | + $file = urlencode($url); | |
| 93 | + $classes = [ | |
| 94 | + 'e2pdf-hide-print', | |
| 95 | + 'e2pdf-hide-editor', | |
| 96 | + 'e2pdf-hide-secondary-toolbar', | |
| 97 | + ]; | |
| 98 | + $viewer_url = add_query_arg( | |
| 99 | + [ | |
| 100 | + 'class' => implode(';', $classes), | |
| 101 | + 'file' => $file, | |
| 102 | + ], | |
| 103 | + plugins_url('assets/pdf.js/web/viewer.html', $this->helper->get('plugin_file_path')) | |
| 104 | + ); | |
| 105 | + // phpcs:ignore WordPress.Security.SafeRedirect.wp_redirect_wp_redirect | |
| 106 | + wp_redirect($viewer_url); | |
| 107 | + exit; | |
| 44 | 108 | } |
| 109 | + } | |
| 110 | + | |
| 111 | + if ($entry->get_data('file_id')) { | |
| 112 | + $file = $stream['file']; | |
| 45 | 113 | } else { |
| 46 | - if ($template->get('inline')) { | |
| 47 | - $disposition = 'inline'; | |
| 48 | - } | |
| 114 | + // phpcs:ignore WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents | |
| 115 | + $file = file_get_contents($pdf); | |
| 49 | 116 | } |
| 117 | + $this->download_response(strtolower($ext), $file, $download_name, $disposition); | |
| 118 | + if (has_action('e2pdf_controller_frontend_e2pdf_download_success')) { | |
| 119 | + // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_encode | |
| 120 | + do_action('e2pdf_controller_frontend_e2pdf_download_success', $uid, $entry->get('entry'), base64_encode($file)); | |
| 121 | + } | |
| 122 | + exit; | |
| 123 | + } | |
| 124 | + } elseif ($entry->get_data('template_id') && ($entry->get_data('dataset') || $entry->get_data('dataset2')) && $template->load($entry->get_data('template_id'))) { | |
| 50 | 125 | |
| 51 | - $name = basename($uid_params['pdf'], ".pdf"); | |
| 52 | - $file = base64_encode(file_get_contents($uid_params['pdf'])); | |
| 53 | - $this->download_response('pdf', $file, $name, $disposition); | |
| 126 | + $template->extension()->set('entry', $entry); | |
| 127 | + | |
| 128 | + if ($entry->get_data('dataset') !== false) { | |
| 129 | + $template->extension()->set('dataset', $entry->get_data('dataset')); | |
| 54 | 130 | } |
| 55 | - } elseif (isset($uid_params['template_id']) && isset($uid_params['dataset']) && $template->load($uid_params['template_id'])) { | |
| 56 | 131 | |
| 57 | - $template->extension()->set('dataset', $uid_params['dataset']); | |
| 132 | + if ($entry->get_data('dataset2') !== false) { | |
| 133 | + $template->extension()->set('dataset2', $entry->get_data('dataset2')); | |
| 134 | + } | |
| 58 | 135 | |
| 59 | - if (isset($uid_params['flatten'])) { | |
| 60 | - $template->set('flatten', $uid_params['flatten']); | |
| 136 | + if ($entry->get_data('user_id') !== false) { | |
| 137 | + $template->extension()->set('user_id', $entry->get_data('user_id')); | |
| 61 | 138 | } |
| 62 | 139 | |
| 63 | - if (isset($uid_params['format'])) { | |
| 64 | - $template->set('format', $uid_params['format']); | |
| 140 | + if ($entry->get_data('wc_order_id') !== false) { | |
| 141 | + $template->extension()->set('wc_order_id', $entry->get_data('wc_order_id')); | |
| 65 | 142 | } |
| 66 | 143 | |
| 67 | - if (isset($uid_params['password'])) { | |
| 68 | - $template->set('password', $uid_params['password']); | |
| 69 | - } else { | |
| 70 | - $template->set('password', $template->extension()->render($template->get('password'), 'value')); | |
| 144 | + if ($entry->get_data('wc_product_item_id') !== false) { | |
| 145 | + $template->extension()->set('wc_product_item_id', $entry->get_data('wc_product_item_id')); | |
| 71 | 146 | } |
| 72 | 147 | |
| 73 | - if (isset($uid_params['name'])) { | |
| 74 | - $template->set('name', $uid_params['name']); | |
| 75 | - } else { | |
| 76 | - $template->set('name', $template->extension()->render($template->get('name'), 'value')); | |
| 148 | + if ($entry->get_data('storing_engine') !== false) { | |
| 149 | + $template->extension()->set('storing_engine', $entry->get_data('storing_engine')); | |
| 77 | 150 | } |
| 78 | 151 | |
| 79 | - $disposition = 'attachment'; | |
| 80 | - if (isset($uid_params['inline'])) { | |
| 81 | - if ($uid_params['inline']) { | |
| 82 | - $disposition = 'inline'; | |
| 152 | + if ($entry->get_data('args') !== false) { | |
| 153 | + $template->extension()->set('args', $entry->get_data('args')); | |
| 154 | + } | |
| 155 | + | |
| 156 | + $downloadable = apply_filters('e2pdf_pdf_downloadable', true, $uid, $entry->get('entry')); | |
| 157 | + if ($downloadable && $template->extension()->verify()) { | |
| 158 | + if ($template->get('actions')) { | |
| 159 | + $model_e2pdf_action = new Model_E2pdf_Action(); | |
| 160 | + $model_e2pdf_action->load($template->extension()); | |
| 161 | + $actions = $model_e2pdf_action->process_global_actions($template->get('actions')); | |
| 162 | + foreach ($actions as $action) { | |
| 163 | + if (isset($action['action'])) { | |
| 164 | + switch (true) { | |
| 165 | + case $action['action'] == 'disable_access_by_url' && isset($action['success']): | |
| 166 | + case $action['action'] == 'enable_access_by_url' && !isset($action['success']): | |
| 167 | + $error_message = ''; | |
| 168 | + if (!empty($action['error_message'])) { | |
| 169 | + $error_message = $template->extension()->render($action['error_message']); | |
| 170 | + } | |
| 171 | + $error_message = $error_message ? $error_message : __('Access Denied!', 'e2pdf'); | |
| 172 | + if (isset($_SERVER['HTTP_X_E2PDF_REQUEST'])) { | |
| 173 | + $response = [ | |
| 174 | + 'error' => $error_message, | |
| 175 | + ]; | |
| 176 | + $this->json_response_ajax($response, 403); | |
| 177 | + } else { | |
| 178 | + wp_die($error_message, '', ['exit' => true]); | |
| 179 | + } | |
| 180 | + break; | |
| 181 | + case $action['action'] == 'redirect_access_by_url' && isset($action['success']): | |
| 182 | + $redirect_url = ''; | |
| 183 | + if (!empty($action['redirect_url'])) { | |
| 184 | + $redirect_url = $template->extension()->render($action['redirect_url']); | |
| 185 | + } | |
| 186 | + if ($redirect_url) { | |
| 187 | + $redirect_url = apply_filters('e2pdf_download_redirect_access_by_url', esc_url_raw($redirect_url), $entry); | |
| 188 | + if (isset($_SERVER['HTTP_X_E2PDF_REQUEST'])) { | |
| 189 | + $response = [ | |
| 190 | + 'redirect_url' => $redirect_url, | |
| 191 | + 'redirect_error_message' => !empty($action['redirect_error_message']) ? str_replace('%s', $redirect_url, $action['redirect_error_message']) : 'Access denied. Please, click <a href="' . $redirect_url . '" target="_blank">here</a> for more details...', | |
| 192 | + ]; | |
| 193 | + $this->json_response_ajax($response, 303); | |
| 194 | + } else { | |
| 195 | + // phpcs:ignore WordPress.Security.SafeRedirect.wp_redirect_wp_redirect | |
| 196 | + wp_redirect($redirect_url); | |
| 197 | + exit; | |
| 198 | + } | |
| 199 | + } | |
| 200 | + break; | |
| 201 | + default: | |
| 202 | + break; | |
| 203 | + } | |
| 204 | + } | |
| 205 | + } | |
| 83 | 206 | } |
| 84 | - } else { | |
| 85 | - if ($template->get('inline')) { | |
| 86 | - $disposition = 'inline'; | |
| 207 | + | |
| 208 | + if ($entry->get_data('flatten') !== false) { | |
| 209 | + $template->set('flatten', $entry->get_data('flatten')); | |
| 87 | 210 | } |
| 88 | - } | |
| 89 | 211 | |
| 90 | - if (isset($uid_params['pdf']) && file_exists($uid_params['pdf'])) { | |
| 212 | + if ($entry->get_data('format') !== false) { | |
| 213 | + $template->set('format', $entry->get_data('format')); | |
| 214 | + } | |
| 91 | 215 | |
| 92 | - $entry->set('pdf_num', $entry->get('pdf_num') + 1); | |
| 93 | - $entry->save(); | |
| 216 | + if ($entry->get_data('password') !== false) { | |
| 217 | + $template->set('password', $entry->get_data('password')); | |
| 218 | + } else { | |
| 219 | + $template->set('password', $template->extension()->render($template->get('password'))); | |
| 220 | + } | |
| 94 | 221 | |
| 95 | - $download = true; | |
| 222 | + if ($entry->get_data('dpdf') !== false) { | |
| 223 | + $template->set('dpdf', $entry->get_data('dpdf')); | |
| 224 | + } else { | |
| 225 | + $template->set('dpdf', $template->extension()->render($template->get('dpdf'))); | |
| 226 | + } | |
| 96 | 227 | |
| 97 | - if ($template->get('name')) { | |
| 98 | - $name = $template->get('name'); | |
| 228 | + if ($entry->get_data('owner_password') !== false) { | |
| 229 | + $template->set('owner_password', $entry->get_data('owner_password')); | |
| 99 | 230 | } else { |
| 100 | - $name = $template->extension()->render($template->get_filename(), 'value'); | |
| 231 | + $template->set('owner_password', $template->extension()->render($template->get('owner_password'))); | |
| 101 | 232 | } |
| 102 | - $file = base64_encode(file_get_contents($uid_params['pdf'])); | |
| 103 | - $this->download_response('pdf', $file, $name, $disposition); | |
| 104 | - } elseif ($template->extension()->verify()) { | |
| 105 | - $template->fill($uid_params['dataset'], $uid); | |
| 233 | + | |
| 234 | + if ($entry->get_data('meta_title') !== false) { | |
| 235 | + $template->set('meta_title', $entry->get_data('meta_title')); | |
| 236 | + } else { | |
| 237 | + $template->set('meta_title', $template->extension()->render($template->get('meta_title'))); | |
| 238 | + } | |
| 239 | + | |
| 240 | + if ($entry->get_data('meta_subject') !== false) { | |
| 241 | + $template->set('meta_subject', $entry->get_data('meta_subject')); | |
| 242 | + } else { | |
| 243 | + $template->set('meta_subject', $template->extension()->render($template->get('meta_subject'))); | |
| 244 | + } | |
| 245 | + | |
| 246 | + if ($entry->get_data('meta_author') !== false) { | |
| 247 | + $template->set('meta_author', $entry->get_data('meta_author')); | |
| 248 | + } else { | |
| 249 | + $template->set('meta_author', $template->extension()->render($template->get('meta_author'))); | |
| 250 | + } | |
| 251 | + | |
| 252 | + if ($entry->get_data('meta_keywords') !== false) { | |
| 253 | + $template->set('meta_keywords', $entry->get_data('meta_keywords')); | |
| 254 | + } else { | |
| 255 | + $template->set('meta_keywords', $template->extension()->render($template->get('meta_keywords'))); | |
| 256 | + } | |
| 257 | + | |
| 258 | + if ($entry->get_data('name') !== false) { | |
| 259 | + $template->set('name', $entry->get_data('name')); | |
| 260 | + } else { | |
| 261 | + $template->set( | |
| 262 | + 'name', | |
| 263 | + $template->extension()->render( | |
| 264 | + $this->helper->load('translator')->pre_translate($template->get('name'), $template->get('ID'), 'name', 'template') | |
| 265 | + ) | |
| 266 | + ); | |
| 267 | + } | |
| 268 | + if (!$template->get('name')) { | |
| 269 | + $template->set( | |
| 270 | + 'name', | |
| 271 | + $template->extension()->render( | |
| 272 | + $this->helper->load('translator')->pre_translate($template->get('title'), $template->get('ID'), 'title', 'template') | |
| 273 | + ) | |
| 274 | + ); | |
| 275 | + } | |
| 276 | + if (!$template->get('name')) { | |
| 277 | + $template->set(__('(no title)', 'e2pdf')); | |
| 278 | + } | |
| 279 | + | |
| 280 | + $disposition = 'attachment'; | |
| 281 | + if ($entry->get_data('inline') !== false) { | |
| 282 | + if ($entry->get_data('inline')) { | |
| 283 | + $disposition = 'inline'; | |
| 284 | + } | |
| 285 | + } elseif ($template->get('inline')) { | |
| 286 | + $disposition = 'inline'; | |
| 287 | + } | |
| 288 | + | |
| 289 | + /* Bug-fix with on the Chrome + iOS PDF inline download */ | |
| 290 | + // phpcs:ignore WordPress.Security.NonceVerification.Recommended | |
| 291 | + if ($disposition == 'inline' && !isset($_GET['v'])) { | |
| 292 | + if (get_option('e2pdf_download_inline_chrome_ios_fix', '0') == '1' && $this->helper->load('server')->isIOS() && $this->helper->load('server')->isChrome()) { | |
| 293 | + $download_name = apply_filters('e2pdf_controller_frontend_e2pdf_download_name', $template->get('name'), $entry->get('uid'), $entry->get('entry')); | |
| 294 | + $url_data = [ | |
| 295 | + 'page' => 'e2pdf-download', | |
| 296 | + 'uid' => $uid, | |
| 297 | + 'download_name' => rawurlencode($download_name . '.' . ($template->get('format') == 'jpg' ? 'jpg' : 'pdf')), | |
| 298 | + 'v' => $this->helper->get('version'), | |
| 299 | + ]; | |
| 300 | + $url = $this->helper->get_frontend_pdf_url( | |
| 301 | + $url_data, false, | |
| 302 | + [ | |
| 303 | + 'e2pdf_model_shortcode_site_url', | |
| 304 | + 'e2pdf_model_shortcode_e2pdf_redirect_site_url', | |
| 305 | + ] | |
| 306 | + ); | |
| 307 | + // phpcs:ignore WordPress.Security.SafeRedirect.wp_redirect_wp_redirect | |
| 308 | + wp_redirect($url); | |
| 309 | + exit; | |
| 310 | + } elseif (get_option('e2pdf_download_inline_fallback_viewer', '0') == '1' && !$this->helper->load('server')->isViewerSupported() && $template->get('format') == 'pdf') { | |
| 311 | + $download_name = apply_filters('e2pdf_controller_frontend_e2pdf_download_name', $template->get('name'), $entry->get('uid'), $entry->get('entry')); | |
| 312 | + $url_data = [ | |
| 313 | + 'page' => 'e2pdf-download', | |
| 314 | + 'uid' => $uid, | |
| 315 | + 'v' => $this->helper->get('version'), | |
| 316 | + ]; | |
| 317 | + $url = $this->helper->get_frontend_pdf_url( | |
| 318 | + $url_data, false, | |
| 319 | + [ | |
| 320 | + 'e2pdf_model_shortcode_site_url', | |
| 321 | + 'e2pdf_model_shortcode_e2pdf_redirect_site_url', | |
| 322 | + ] | |
| 323 | + ); | |
| 324 | + // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.urlencode_urlencode | |
| 325 | + $file = urlencode($url); | |
| 326 | + | |
| 327 | + $classes = [ | |
| 328 | + 'e2pdf-hide-print', | |
| 329 | + 'e2pdf-hide-editor', | |
| 330 | + 'e2pdf-hide-secondary-toolbar', | |
| 331 | + ]; | |
| 332 | + | |
| 333 | + $viewer_url = add_query_arg( | |
| 334 | + [ | |
| 335 | + 'class' => implode(';', $classes), | |
| 336 | + 'file' => $file, | |
| 337 | + ], | |
| 338 | + plugins_url('assets/pdf.js/web/viewer.html', $this->helper->get('plugin_file_path')) | |
| 339 | + ); | |
| 340 | + // phpcs:ignore WordPress.Security.SafeRedirect.wp_redirect_wp_redirect | |
| 341 | + wp_redirect($viewer_url); | |
| 342 | + exit; | |
| 343 | + } | |
| 344 | + } | |
| 345 | + | |
| 346 | + $template->fill(); | |
| 106 | 347 | $request = $template->render(); |
| 107 | 348 | if (isset($request['error'])) { |
| 108 | 349 | wp_die($request['error']); |
| 109 | 350 | } elseif ($request['file'] === '') { |
| @@ -110,28 +351,20 @@ | ||
| 110 | 351 | wp_die(__('Something went wrong!', 'e2pdf')); |
| 111 | 352 | } else { |
| 112 | 353 | $entry->set('pdf_num', $entry->get('pdf_num') + 1); |
| 113 | 354 | $entry->save(); |
| 114 | - | |
| 115 | - $download = true; | |
| 116 | - | |
| 117 | - if ($template->get('name')) { | |
| 118 | - $name = $template->get('name'); | |
| 119 | - } else { | |
| 120 | - $name = $template->extension()->render($template->get_filename(), 'value'); | |
| 355 | + $download_name = apply_filters('e2pdf_controller_frontend_e2pdf_download_name', $template->get('name'), $entry->get('uid'), $entry->get('entry')); | |
| 356 | + $this->download_response($template->get('format'), $request['file'], $download_name, $disposition); | |
| 357 | + if (has_action('e2pdf_controller_frontend_e2pdf_download_success')) { | |
| 358 | + // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_encode | |
| 359 | + do_action('e2pdf_controller_frontend_e2pdf_download_success', $uid, $entry->get('entry'), base64_encode($request['file'])); | |
| 121 | 360 | } |
| 122 | - | |
| 123 | - $file = $request['file']; | |
| 124 | - $this->download_response('pdf', $file, $name, $disposition); | |
| 361 | + exit; | |
| 125 | 362 | } |
| 126 | 363 | } |
| 127 | 364 | } |
| 128 | 365 | } |
| 129 | - | |
| 130 | - if (!$download) { | |
| 131 | - $wp_query->set_404(); | |
| 132 | - status_header(404); | |
| 133 | - nocache_headers(); | |
| 134 | - } | |
| 366 | + $wp_query->set_404(); | |
| 367 | + status_header(404); | |
| 368 | + nocache_headers(); | |
| 135 | 369 | } |
| 136 | - | |
| 137 | 370 | } |