public function download_invoice() { if (isset($_GET['action']) && $_GET['action'] == 'wc-gzdp-download') { $invoice = false; if (isset($_GET['preview']) && wp_verify_nonce($_REQUEST['_wpnonce'], 'wc-gzdp-download')) { $invoice = new WC_GZDP_Invoice_Preview(); $invoice->generate_pdf(true); exit; } else { if (isset($_GET['id']) && wp_verify_nonce($_REQUEST['_wpnonce'], 'wc-gzdp-download')) { $id = absint($_GET['id']); $invoice = wc_gzdp_get_invoice($id); if (!current_user_can('manage_woocommerce') && !current_user_can('view_order', $invoice->order)) { $invoice = false; } } else { wp_die(__('Cheatin huh?', 'woocommerce-germanized-pro')); } } if ($invoice) { WC_GZDP_Download_Handler::download($invoice, isset($_GET['force']) && $_GET['force'] ? true : false); } wp_die(__('Missing permissions to download invoice', 'woocommerce-germanized-pro')); } }