/** * Get the order info fields */ function wcdn_get_order_info($order) { global $wcdn; $fields = array(); $create_invoice_number = get_option(WooCommerce_Delivery_Notes::$plugin_prefix . 'create_invoice_number'); if (wcdn_get_template_type() == 'invoice' && !empty($create_invoice_number)) { $fields['invoice_number'] = array('label' => __('Invoice Number', 'woocommerce-delivery-notes'), 'value' => wcdn_get_order_invoice_number($order->id)); } $fields['order_number'] = array('label' => __('Order Number', 'woocommerce-delivery-notes'), 'value' => $order->get_order_number()); $fields['order_date'] = array('label' => __('Order Date', 'woocommerce-delivery-notes'), 'value' => date_i18n(get_option('date_format'), strtotime($order->order_date))); $fields['payment_method'] = array('label' => __('Payment Method', 'woocommerce-delivery-notes'), 'value' => __($order->payment_method_title, 'woocommerce')); if ($order->billing_email) { $fields['billing_email'] = array('label' => __('Email', 'woocommerce-delivery-notes'), 'value' => $order->billing_email); } if ($order->billing_phone) { $fields['billing_phone'] = array('label' => __('Telephone', 'woocommerce-delivery-notes'), 'value' => $order->billing_phone); } return $fields; }
/** * Create the meta box content on the single order page */ public function create_box_content() { global $post_id, $wcdn; ?> <div class="print-actions"> <?php foreach (WooCommerce_Delivery_Notes_Print::$template_registrations as $template_registration) { ?> <?php if (get_option('wcdn_template_type_' . $template_registration['type']) == 'yes' && $template_registration['type'] !== 'order') { ?> <a href="<?php echo wcdn_get_print_link($post_id, $template_registration['type']); ?> " class="button print-preview-button <?php echo $template_registration['type']; ?> " target="_blank" alt="<?php esc_attr_e(__($template_registration['labels']['print'], 'woocommerce-delivery-notes')); ?> "><?php _e($template_registration['labels']['print'], 'woocommerce-delivery-notes'); ?> </a> <?php } ?> <?php } ?> <span class="print-preview-loading spinner"></span> </div> <div class="print-status"> <!-- added on 2015-12-08 by Fuyuko Gratton --> <input type="checkbox" name="printed" value="printed"> Invoice printed </div> <?php $create_invoice_number = get_option('wcdn_create_invoice_number'); $has_invoice_number = get_post_meta($post_id, '_wcdn_invoice_number', true); if (!empty($create_invoice_number) && $create_invoice_number == 'yes' && $has_invoice_number) { $invoice_number = wcdn_get_order_invoice_number($post_id); $invoice_date = wcdn_get_order_invoice_date($post_id); ?> <ul class="print-info"> <li><strong><?php _e('Invoice number: ', 'woocommerce-delivery-notes'); ?> </strong> <?php echo $invoice_number; ?> </li> <li><strong><?php _e('Invoice date: ', 'woocommerce-delivery-notes'); ?> </strong> <?php echo $invoice_date; ?> </li> </ul> <?php } ?> <?php }
/** * Create the meta box content on the single order page */ public function create_box_content() { global $post_id, $wcdn; ?> <div class="print-actions"> <?php foreach (WooCommerce_Delivery_Notes_Print::$templates as $template) { ?> <?php $option = get_option(WooCommerce_Delivery_Notes::$plugin_prefix . 'template_type_' . $template['type']); if ($option) { ?> <a href="<?php echo wcdn_get_print_link($post_id, $template['type']); ?> " class="button print-preview-button <?php echo $template['type']; ?> " target="_blank" alt="<?php esc_attr_e(__($template['labels']['print'], 'woocommerce-delivery-notes')); ?> "><?php _e($template['labels']['print'], 'woocommerce-delivery-notes'); ?> </a> <?php } ?> <?php } ?> <span class="print-preview-loading spinner"></span> </div> <?php $create_invoice_number = get_option(WooCommerce_Delivery_Notes::$plugin_prefix . 'create_invoice_number'); $has_invoice_number = get_post_meta($post_id, '_' . WooCommerce_Delivery_Notes::$plugin_prefix . 'invoice_number', true); if (!empty($create_invoice_number) && $has_invoice_number) { $invoice_number = wcdn_get_order_invoice_number($post_id); $invoice_date = wcdn_get_order_invoice_date($post_id); ?> <ul class="print-info"> <li><strong><?php _e('Invoice number: ', 'woocommerce-delivery-notes'); ?> </strong> <?php echo $invoice_number; ?> </li> <li><strong><?php _e('Invoice date: ', 'woocommerce-delivery-notes'); ?> </strong> <?php echo $invoice_date; ?> </li> </ul> <?php } ?> <?php }
function woo_ce_order_extend( $order, $order_id ) { // WooCommerce Sequential Order Numbers - http://www.skyverge.com/blog/woocommerce-sequential-order-numbers/ if( class_exists( 'WC_Seq_Order_Number' ) ) { // Override the Purchase ID if this Plugin exists and Post meta isn't empty $order_number = get_post_meta( $order_id, '_order_number', true ); if( !empty( $order_id ) ) $order->purchase_id = $order_number; unset( $order_number ); } // Sequential Order Numbers Pro - http://www.woothemes.com/products/sequential-order-numbers-pro/ if( class_exists( 'WC_Seq_Order_Number_Pro' ) ) { // Override the Purchase ID if this Plugin exists and Post meta isn't empty $order_number = get_post_meta( $order_id, '_order_number_formatted', true ); if( !empty( $order_id ) ) $order->purchase_id = $order_number; unset( $order_number ); } // WooCommerce Jetpack - https://wordpress.org/plugins/woocommerce-jetpack/ // WooCommerce Jetpack Plus - http://woojetpack.com/shop/wordpress-woocommerce-jetpack-plus/ if( class_exists( 'WC_Jetpack' ) || class_exists( 'WC_Jetpack_Plus' ) ) { // Use WooCommerce Jetpack Plus's display_order_number() to handle formatting if( class_exists( 'WCJ_Order_Numbers' ) ) { $order_numbers = new WCJ_Order_Numbers(); $order->purchase_id = $order_numbers->display_order_number( $order_id, $order ); unset( $order_numbers ); } else { // Fall-back to old school get_post_meta() $order_number = get_post_meta( $order->ID, '_wcj_order_number', true ); // Override the Purchase ID if this Plugin exists and Post meta isn't empty if( !empty( $order_number ) && get_option( 'wcj_order_numbers_enabled', 'no' ) !== 'no' ) $order->purchase_id = $order_number; unset( $order_number ); } } // WooCommerce Checkout Manager - http://wordpress.org/plugins/woocommerce-checkout-manager/ // WooCommerce Checkout Manager Pro - http://www.trottyzone.com/product/woocommerce-checkout-manager-pro if( function_exists( 'wccs_install' ) || function_exists( 'wccs_install_pro' ) ) { $options = get_option( 'wccs_settings' ); if( isset( $options['buttons'] ) ) { $buttons = $options['buttons']; if( !empty( $buttons ) ) { foreach( $buttons as $button ) { if( $button['type'] == 'heading' ) continue; $order->{$button['label']} = get_post_meta( $order_id, $button['cow'], true ); } unset( $buttons, $button ); } } unset( $options ); } // Poor Guys Swiss Knife - http://wordpress.org/plugins/woocommerce-poor-guys-swiss-knife/ if( function_exists( 'wcpgsk_init' ) ) { $options = get_option( 'wcpgsk_settings' ); $billing_fields = ( isset( $options['woofields']['billing'] ) ? $options['woofields']['billing'] : array() ); $shipping_fields = ( isset( $options['woofields']['shipping'] ) ? $options['woofields']['shipping'] : array() ); // Custom billing fields if( !empty( $billing_fields ) ) { foreach( $billing_fields as $key => $billing_field ) $order->$key = get_post_meta( $order_id, '_' . $key, true ); unset( $billing_fields, $billing_field ); } // Custom shipping fields if( !empty( $shipping_fields ) ) { foreach( $shipping_fields as $key => $shipping_field ) $order->$key = get_post_meta( $order_id, '_' . $key, true ); unset( $shipping_fields, $shipping_field ); } unset( $options ); } // Checkout Field Editor - http://woothemes.com/woocommerce/ if( function_exists( 'woocommerce_init_checkout_field_editor' ) ) { $billing_fields = get_option( 'wc_fields_billing', array() ); $shipping_fields = get_option( 'wc_fields_shipping', array() ); $custom_fields = get_option( 'wc_fields_additional', array() ); // Custom billing fields if( !empty( $billing_fields ) ) { foreach( $billing_fields as $key => $billing_field ) { // Only add non-default Checkout fields to export columns list if( $billing_field['custom'] == 1 ) { $billing_field['value'] = get_post_meta( $order_id, $key, true ); if( $billing_field['value'] != '' ) { if( $billing_field['type'] == 'checkbox' ) $order->{sprintf( 'wc_billing_%s', $key )} = $billing_field['value'] == '1' ? __( 'Yes', 'woo_ce' ) : __( 'No', 'woo_ce' ); else $order->{sprintf( 'wc_billing_%s', $key )} = $billing_field['value']; } } } } unset( $billing_fields, $billing_field ); // Custom shipping fields if( !empty( $shipping_fields ) ) { foreach( $shipping_fields as $key => $shipping_field ) { // Only add non-default Checkout fields to export columns list if( $shipping_field['custom'] == 1 ) { $shipping_field['value'] = get_post_meta( $order_id, $key, true ); if( $shipping_field['value'] != '' ) { if( $shipping_field['type'] == 'checkbox' ) $order->{sprintf( 'wc_shipping_%s', $key )} = $shipping_field['value'] == '1' ? __( 'Yes', 'woo_ce' ) : __( 'No', 'woo_ce' ); else $order->{sprintf( 'wc_shipping_%s', $key )} = $shipping_field['value']; } } } } unset( $shipping_fields, $shipping_field ); // Custom fields if( !empty( $custom_fields ) ) { foreach( $custom_fields as $key => $custom_field ) { // Only add non-default Checkout fields to export columns list if( $custom_field['custom'] == 1 ) { $custom_field['value'] = get_post_meta( $order_id, $key, true ); if( $custom_field['value'] != '' ) { if( $custom_field['type'] == 'checkbox' ) $order->{sprintf( 'wc_custom_%s', $key )} = $custom_field['value'] == '1' ? __( 'Yes', 'woo_ce' ) : __( 'No', 'woo_ce' ); else $order->{sprintf( 'wc_custom_%s', $key )} = $custom_field['value']; } } } } unset( $custom_fields, $custom_field ); } // Checkout Field Manager - http://61extensions.com if( function_exists( 'sod_woocommerce_checkout_manager_settings' ) ) { // Custom billing fields $billing_fields = get_option( 'woocommerce_checkout_billing_fields', array() ); $shipping_fields = get_option( 'woocommerce_checkout_shipping_fields', array() ); $custom_fields = get_option( 'woocommerce_checkout_additional_fields', array() ); // Custom billing fields if( !empty( $billing_fields ) ) { foreach( $billing_fields as $key => $billing_field ) { // Only add non-default Checkout fields to export columns list if( strtolower( $billing_field['default_field'] ) != 'on' ) { $billing_field['value'] = get_post_meta( $order_id, '_' . $billing_field['name'], true ); if( $billing_field['value'] != '' ) { // Override for the checkbox field type if( $billing_field['type'] == 'checkbox' ) $order->{sprintf( 'sod_billing_%s', $billing_field['name'] )} = strtolower( $billing_field['value'] == 'on' ) ? __( 'Yes', 'woo_ce' ) : __( 'No', 'woo_ce' ); else $order->{sprintf( 'sod_billing_%s', $billing_field['name'] )} = $billing_field['value']; } } } } unset( $billing_fields, $billing_field ); // Custom shipping fields if( !empty( $shipping_fields ) ) { foreach( $shipping_fields as $key => $shipping_field ) { // Only add non-default Checkout fields to export columns list if( strtolower( $shipping_field['default_field'] ) != 'on' ) { $shipping_field['value'] = get_post_meta( $order_id, '_' . $shipping_field['name'], true ); if( $shipping_field['value'] != '' ) { // Override for the checkbox field type if( $shipping_field['type'] == 'checkbox' ) $order->{sprintf( 'sod_shipping_%s', $shipping_field['name'] )} = strtolower( $shipping_field['value'] == 'on' ) ? __( 'Yes', 'woo_ce' ) : __( 'No', 'woo_ce' ); else $order->{sprintf( 'sod_shipping_%s', $shipping_field['name'] )} = $shipping_field['value']; } } } } unset( $shipping_fields, $shipping_field ); // Custom fields if( !empty( $custom_fields ) ) { foreach( $custom_fields as $key => $custom_field ) { // Only add non-default Checkout fields to export columns list if( strtolower( $custom_field['default_field'] ) != 'on' ) { $custom_field['value'] = get_post_meta( $order_id, '_' . $custom_field['name'], true ); if( $custom_field['value'] != '' ) { // Override for the checkbox field type if( $custom_field['type'] == 'checkbox' ) $order->{sprintf( 'sod_additional_%s', $custom_field['name'] )} = strtolower( $custom_field['value'] == 'on' ) ? __( 'Yes', 'woo_ce' ) : __( 'No', 'woo_ce' ); else $order->{sprintf( 'sod_additional_%s', $custom_field['name'] )} = $custom_field['value']; } } } } unset( $custom_fields, $custom_field ); } // WooCommerce Print Invoice & Delivery Note - https://wordpress.org/plugins/woocommerce-delivery-notes/ if( class_exists( 'WooCommerce_Delivery_Notes' ) ) { if( function_exists( 'wcdn_get_order_invoice_number' ) ) $order->invoice_number = wcdn_get_order_invoice_number( $order_id ); if( function_exists( 'wcdn_get_order_invoice_date' ) ) $order->invoice_date = wcdn_get_order_invoice_date( $order_id ); } // WooCommerce PDF Invoices & Packing Slips - http://www.wpovernight.com if( class_exists( 'WooCommerce_PDF_Invoices' ) ) { // Check if the PDF Invoice has been generated $invoice_exists = get_post_meta( $order_id, '_wcpdf_invoice_exists', true ); if( !empty( $invoice_exists ) ) { // Check if the Invoice Number formatting Class is available if( class_exists( 'WooCommerce_PDF_Invoices_Export' ) ) { $wcpdf = new WooCommerce_PDF_Invoices_Export(); $order->pdf_invoice_number = $wcpdf->get_invoice_number( $order_id ); unset( $wcpdf ); } else { $order->pdf_invoice_number = get_post_meta( $order_id, '_wcpdf_invoice_number', true ); } $invoice_date = get_post_meta( $order_id, '_wcpdf_invoice_date', true ); $order->pdf_invoice_date = date_i18n( get_option( 'date_format' ), strtotime( $invoice_date ) ); } unset( $invoice_exists, $invoice_date ); } // WooCommerce Hear About Us - https://wordpress.org/plugins/woocommerce-hear-about-us/ if( class_exists( 'WooCommerce_HearAboutUs' ) ) { $source = get_post_meta( $order_id, 'source', true ); if( $source == '' ) $source = __( 'N/A', 'woo_ce' ); $order->hear_about_us = $source; unset( $source ); } // Cost of Goods - http://www.skyverge.com/product/woocommerce-cost-of-goods-tracking/ if( class_exists( 'WC_COG' ) ) $order->cost_of_goods = woo_ce_format_price( get_post_meta( $order_id, '_wc_cog_order_total_cost', true ), $order->order_currency ); // WooCommerce Ship to Multiple Addresses - http://woothemes.com/woocommerce if( class_exists( 'WC_Ship_Multiple' ) ) { $shipping_packages = get_post_meta( $order_id, '_wcms_packages', true ); if( !empty( $shipping_packages ) ) { $order->wcms_number_packages = count( $shipping_packages ); } unset( $shipping_packages ); } // WooCommerce EU VAT Number - http://woothemes.com/woocommerce if( function_exists( '__wc_eu_vat_number_init' ) ) { $vat_id = get_post_meta( $order_id, '_vat_number', true ); $order->eu_vat = $vat_id; $order->eu_vat_b2b = ( !empty( $vat_id ) ? __( 'Yes', 'woo_ce' ) : __( 'No', 'woo_ce' ) ); if( !empty( $vat_id ) ) { if( get_post_meta( $order_id, '_vat_number_is_validated', true ) !== 'true' ) { $order->eu_vat_validated = __( 'Not possible', 'woo_ce' ); } else { $order->eu_vat_validated = ( get_post_meta( $order_id, '_vat_number_is_valid', true ) === 'true' ? __( 'Yes', 'woo_ce' ) : __( 'No', 'woo_ce' ) ); } } unset( $vat_id ); } return $order; }
/** * Create the meta box content on the single order page */ public function create_box_content() { global $post_id; ?> <div class="print-actions"> <a href="<?php echo wcdn_get_print_link($post_id, 'invoice'); ?> " class="button print-preview-button invoice" target="_blank" alt="<?php esc_attr_e('Print Invoice', 'woocommerce-delivery-notes'); ?> "><?php _e('Print Invoice', 'woocommerce-delivery-notes'); ?> </a> <a href="<?php echo wcdn_get_print_link($post_id, 'delivery-note'); ?> " class="button print-preview-button delivery-note" target="_blank" alt="<?php esc_attr_e('Print Delivery Note', 'woocommerce-delivery-notes'); ?> "><?php _e('Print Delivery Note', 'woocommerce-delivery-notes'); ?> </a> <!-- <a href="<?php echo wcdn_get_print_link($post_id, 'receipt'); ?> " class="button print-preview-button receipt" target="_blank" alt="<?php esc_attr_e('Print Receipt', 'woocommerce-delivery-notes'); ?> "><?php _e('Print Receipt', 'woocommerce-delivery-notes'); ?> </a> --> <span class="print-preview-loading spinner"></span> </div> <?php $create_invoice_number = get_option(WooCommerce_Delivery_Notes::$plugin_prefix . 'create_invoice_number'); $has_invoice_number = get_post_meta($post_id, '_' . WooCommerce_Delivery_Notes::$plugin_prefix . 'invoice_number', true); if (!empty($create_invoice_number) && $has_invoice_number) { $invoice_number = wcdn_get_order_invoice_number($post_id); $invoice_date = wcdn_get_order_invoice_date($post_id); ?> <ul class="print-info"> <li><strong><?php _e('Invoice number: ', 'woocommerce-delivery-notes'); ?> </strong> <?php echo $invoice_number; ?> </li> <li><strong><?php _e('Invoice date: ', 'woocommerce-delivery-notes'); ?> </strong> <?php echo $invoice_date; ?> </li> </ul> <?php } ?> <?php }