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'));
     }
 }