} /** * delete_document. * * @version 2.3.0 * @since 2.3.0 */ function delete_document($order_id, $invoice_type) { if (true == wcj_is_invoice_created($order_id, $invoice_type)) { wcj_delete_invoice($order_id, $invoice_type); }
/** * Renumerate invoices function. * * @version 2.3.10 */ function renumerate_invoices($invoice_type, $start_number, $start_date, $end_date, $order_statuses, $the_delete_all) { $output = ''; if (0 != $start_number) { update_option('wcj_invoicing_' . $invoice_type . '_numbering_counter', $start_number); } $date_query_array = array(array('after' => $start_date, 'inclusive' => true)); if ('' != $end_date) { $date_query_array[0]['before'] = $end_date; } $deleted_invoices_counter = 0; $created_invoices_counter = 0; $offset = 0; $block_size = 96; while (true) { $args = array('post_type' => 'shop_order', 'post_status' => 'any', 'posts_per_page' => $block_size, 'offset' => $offset, 'orderby' => 'date', 'order' => 'ASC', 'date_query' => $date_query_array); $loop = new WP_Query($args); if (!$loop->have_posts()) { break; } while ($loop->have_posts()) { $loop->the_post(); $order_id = $loop->post->ID; if (in_array($loop->post->post_status, $order_statuses) && strtotime($loop->post->post_date) >= strtotime($start_date) && (strtotime($loop->post->post_date) <= strtotime($end_date) || '' == $end_date)) { $the_order = wc_get_order($order_id); if (0 != $the_order->get_total()) { wcj_create_invoice($order_id, $invoice_type, strtotime($loop->post->post_date)); $created_invoices_counter++; } } else { if ($the_delete_all && wcj_is_invoice_created($order_id, $invoice_type)) { wcj_delete_invoice($order_id, $invoice_type); $deleted_invoices_counter++; } } } $offset += $block_size; } $output .= '<p>' . sprintf(__('Total documents created: %d', 'woocommerce-jetpack'), $created_invoices_counter) . '</p>'; $output .= '<p>' . sprintf(__('Total documents deleted: %d', 'woocommerce-jetpack'), $deleted_invoices_counter) . '</p>'; return $output; }
/** * Renumerate invoices function. */ public function renumerate_invoices($invoice_type, $start_number, $start_date, $order_statuses, $the_delete_all) { $output = ''; if (0 != $start_number) { update_option('wcj_invoicing_' . $invoice_type . '_numbering_counter', $start_number); } $args = array('post_type' => 'shop_order', 'post_status' => 'any', 'posts_per_page' => -1, 'orderby' => 'date', 'order' => 'ASC'); $loop = new WP_Query($args); $deleted_invoices_counter = 0; $created_invoices_counter = 0; while ($loop->have_posts()) { $loop->the_post(); $order_id = $loop->post->ID; if (in_array($loop->post->post_status, $order_statuses) && strtotime($loop->post->post_date) >= strtotime($start_date)) { $the_order = wc_get_order($order_id); if (0 != $the_order->get_total()) { wcj_create_invoice($order_id, $invoice_type, strtotime($loop->post->post_date)); $created_invoices_counter++; } } else { if ($the_delete_all && wcj_is_invoice_created($order_id, $invoice_type)) { wcj_delete_invoice($order_id, $invoice_type); $deleted_invoices_counter++; } } } $output .= '<p>' . sprintf(__('Total documents created: %d', 'woocommerce-jetpack'), $created_invoices_counter) . '</p>'; $output .= '<p>' . sprintf(__('Total documents deleted: %d', 'woocommerce-jetpack'), $deleted_invoices_counter) . '</p>'; return $output; }