Version Description
(29.12.2017) =
This version has 1 bug fix.
Fix - Earlier with WooCommerce Local Pickup Plus v2.x.x, pickup locations were not displayed on the invoices, delivery notes & receipts. Now, the plugin is compatible with it and it will display the pickup locations.
Code Enhancement - Now, the plugin has the uninstall file for deleting the plugin options.
Download this release
Release Info
| Developer | tychesoftwares |
| Plugin | |
| Version | 4.4 |
| Comparing to | |
| See all releases | |
Code changes from version 4.3.6 to 4.4
- assets/images/icon-256x256.png +0 -0
- assets/images/wcdn-email-myaccount.png +0 -0
- assets/images/wcdn-invoice-numbering.png +0 -0
- assets/images/wcdn-settings.png +0 -0
- includes/class-wcdn-print.php +46 -0
- includes/wcdn-welcome.php +277 -0
- readme.txt +10 -2
- templates/print-order/print-content.php +206 -198
- uninstall.php +33 -0
- woocommerce-delivery-notes.php +7 -3
assets/images/icon-256x256.png
ADDED
|
Binary file
|
assets/images/wcdn-email-myaccount.png
ADDED
|
Binary file
|
assets/images/wcdn-invoice-numbering.png
ADDED
|
Binary file
|
assets/images/wcdn-settings.png
ADDED
|
Binary file
|
includes/class-wcdn-print.php
CHANGED
|
@@ -119,8 +119,54 @@ if ( ! class_exists( 'WooCommerce_Delivery_Notes_Print' ) ) {
|
|
| 119 |
add_action( 'parse_request', array( $this, 'parse_request' ) );
|
| 120 |
add_action( 'template_redirect', array( $this, 'template_redirect_theme' ) );
|
| 121 |
add_action( 'wp_ajax_print_order', array( $this, 'template_redirect_admin' ) );
|
|
|
|
| 122 |
}
|
| 123 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 124 |
/**
|
| 125 |
* Load the init hooks
|
| 126 |
*/
|
| 119 |
add_action( 'parse_request', array( $this, 'parse_request' ) );
|
| 120 |
add_action( 'template_redirect', array( $this, 'template_redirect_theme' ) );
|
| 121 |
add_action( 'wp_ajax_print_order', array( $this, 'template_redirect_admin' ) );
|
| 122 |
+
add_action( 'wcdn_after_items', array( $this, 'wdn_add_extra_data_after_items' ), 10 , 1 );
|
| 123 |
}
|
| 124 |
|
| 125 |
+
public function wdn_add_extra_data_after_items ( $order ) {
|
| 126 |
+
|
| 127 |
+
/**
|
| 128 |
+
* Local pickup plus plugin is active
|
| 129 |
+
*/
|
| 130 |
+
if ( class_exists( "WC_Local_Pickup_Plus") ) {
|
| 131 |
+
|
| 132 |
+
$cdn_local_pickup_plugin_plugins_version = wc_local_pickup_plus()->get_version();
|
| 133 |
+
|
| 134 |
+
if( version_compare( $cdn_local_pickup_plugin_plugins_version, '2.0.0', ">=" ) ) {
|
| 135 |
+
$cdn_local_pickup_object = new WC_Local_Pickup_Plus_Orders();
|
| 136 |
+
$local_pickup = wc_local_pickup_plus();
|
| 137 |
+
$cdn_local_pickup_locations = $cdn_local_pickup_object->get_order_pickup_data( $order );
|
| 138 |
+
$cdn_local_pickup__shipping_object = $local_pickup->get_shipping_method_instance();
|
| 139 |
+
WooCommerce_Delivery_Notes_Print::cdn_print_local_pickup_address( $cdn_local_pickup_locations, $cdn_local_pickup__shipping_object );
|
| 140 |
+
}
|
| 141 |
+
}
|
| 142 |
+
}
|
| 143 |
+
|
| 144 |
+
public function cdn_print_local_pickup_address( $cdn_local_pickup_locations, $shipping_method ) {
|
| 145 |
+
|
| 146 |
+
$package_number = 1;
|
| 147 |
+
$packages_count = count( $cdn_local_pickup_locations );
|
| 148 |
+
foreach ( $cdn_local_pickup_locations as $pickup_meta ) :
|
| 149 |
+
?>
|
| 150 |
+
<div>
|
| 151 |
+
<?php if ( $packages_count > 1 ) : ?>
|
| 152 |
+
<h5><?php echo sprintf( is_rtl() ? '#%2$s %1$s': '%1$s #%2$s', esc_html( $shipping_method->get_method_title() ), $package_number ); ?></h5>
|
| 153 |
+
<?php endif; ?>
|
| 154 |
+
<ul>
|
| 155 |
+
<?php foreach ( $pickup_meta as $label => $value ) : ?>
|
| 156 |
+
<li>
|
| 157 |
+
<?php if ( is_rtl() ) : ?>
|
| 158 |
+
<?php echo wp_kses_post( $value ); ?> <strong>:<?php echo esc_html( $label ); ?></strong>
|
| 159 |
+
<?php else : ?>
|
| 160 |
+
<strong><?php echo esc_html( $label ); ?>:</strong> <?php echo wp_kses_post( $value ); ?>
|
| 161 |
+
<?php endif; ?>
|
| 162 |
+
</li>
|
| 163 |
+
<?php endforeach; ?>
|
| 164 |
+
</ul>
|
| 165 |
+
<?php $package_number++; ?>
|
| 166 |
+
</div>
|
| 167 |
+
<?
|
| 168 |
+
endforeach;
|
| 169 |
+
}
|
| 170 |
/**
|
| 171 |
* Load the init hooks
|
| 172 |
*/
|
includes/wcdn-welcome.php
ADDED
|
@@ -0,0 +1,277 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
/**
|
| 3 |
+
* WooCommerce Print Invoice & Delivery Note Welcome Page Class
|
| 4 |
+
*
|
| 5 |
+
* Displays on plugin activation
|
| 6 |
+
*/
|
| 7 |
+
|
| 8 |
+
// Exit if accessed directly.
|
| 9 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
| 10 |
+
exit;
|
| 11 |
+
}
|
| 12 |
+
|
| 13 |
+
/**
|
| 14 |
+
* WCDN_Welcome Class
|
| 15 |
+
*
|
| 16 |
+
* A general class for About page.
|
| 17 |
+
*
|
| 18 |
+
* @since 4.4
|
| 19 |
+
*/
|
| 20 |
+
class WCDN_Welcome {
|
| 21 |
+
|
| 22 |
+
/**
|
| 23 |
+
* @var string The capability users should have to view the page
|
| 24 |
+
*/
|
| 25 |
+
public $minimum_capability = 'manage_options';
|
| 26 |
+
|
| 27 |
+
/**
|
| 28 |
+
* Get things started
|
| 29 |
+
*
|
| 30 |
+
* @since 4.4
|
| 31 |
+
*/
|
| 32 |
+
public function __construct() {
|
| 33 |
+
|
| 34 |
+
add_action( 'admin_menu', array( $this, 'wcdn_admin_menus' ) );
|
| 35 |
+
add_action( 'admin_head', array( $this, 'wcdn_admin_head' ) );
|
| 36 |
+
|
| 37 |
+
if ( !isset( $_GET[ 'page' ] ) ||
|
| 38 |
+
( isset( $_GET[ 'page' ] ) && $_GET[ 'page' ] != 'wcdn-about' ) ) {
|
| 39 |
+
add_action( 'admin_init', array( $this, 'wcdn_welcome' ) );
|
| 40 |
+
}
|
| 41 |
+
}
|
| 42 |
+
|
| 43 |
+
/**
|
| 44 |
+
* Register the Dashboard Page which is later hidden but this pages
|
| 45 |
+
* is used to render the Welcome page.
|
| 46 |
+
*
|
| 47 |
+
* @access public
|
| 48 |
+
* @since 4.4
|
| 49 |
+
* @return void
|
| 50 |
+
*/
|
| 51 |
+
public function wcdn_admin_menus() {
|
| 52 |
+
// About Page
|
| 53 |
+
add_dashboard_page(
|
| 54 |
+
sprintf( esc_html__( 'Welcome to WooCommerce Print Invoice & Delivery Note %s', 'woocommerce-delivery-notes' ), WooCommerce_Delivery_Notes::$plugin_version ),
|
| 55 |
+
esc_html__( 'Welcome to WooCommerce Print Invoice & Delivery Note', 'woocommerce-delivery-notes' ),
|
| 56 |
+
$this->minimum_capability,
|
| 57 |
+
'wcdn-about',
|
| 58 |
+
array( $this, 'wcdn_about_screen' )
|
| 59 |
+
);
|
| 60 |
+
}
|
| 61 |
+
|
| 62 |
+
/**
|
| 63 |
+
* Hide Individual Dashboard Pages
|
| 64 |
+
*
|
| 65 |
+
* @access public
|
| 66 |
+
* @since 4.4
|
| 67 |
+
* @return void
|
| 68 |
+
*/
|
| 69 |
+
public function wcdn_admin_head() {
|
| 70 |
+
remove_submenu_page( 'index.php', 'wcdn-about' );
|
| 71 |
+
}
|
| 72 |
+
|
| 73 |
+
/**
|
| 74 |
+
* Render About Screen
|
| 75 |
+
*
|
| 76 |
+
* @access public
|
| 77 |
+
* @since 4.4
|
| 78 |
+
* @return void
|
| 79 |
+
*/
|
| 80 |
+
public function wcdn_about_screen() {
|
| 81 |
+
$display_version = WooCommerce_Delivery_Notes::$plugin_version;
|
| 82 |
+
// Badge for welcome page
|
| 83 |
+
$badge_url = WooCommerce_Delivery_Notes::$plugin_url . 'assets/images/icon-256x256.png';
|
| 84 |
+
$wcdn_plugin_url = WooCommerce_Delivery_Notes::$plugin_url;
|
| 85 |
+
?>
|
| 86 |
+
<style>
|
| 87 |
+
.feature-section .feature-section-item {
|
| 88 |
+
float:left;
|
| 89 |
+
width:48%;
|
| 90 |
+
}
|
| 91 |
+
</style>
|
| 92 |
+
<div class="wrap about-wrap">
|
| 93 |
+
|
| 94 |
+
<?php $this->wcdn_get_welcome_header() ?>
|
| 95 |
+
|
| 96 |
+
<div style="float:left;width: 80%;">
|
| 97 |
+
<p class="about-text" style="margin-right:20px;"><?php
|
| 98 |
+
printf(
|
| 99 |
+
__( "Thank you for activating or updating to the latest version of WooCommerce Print Invoice & Delivery Note! If you're a first time user, welcome! You're well on your way to explore the print functionality for your WooCommerce orders." )
|
| 100 |
+
);
|
| 101 |
+
?></p>
|
| 102 |
+
</div>
|
| 103 |
+
<div class="wcdn-badge"><img src="<?php echo $badge_url; ?>" style="width:150px;"/></div>
|
| 104 |
+
|
| 105 |
+
<p> </p>
|
| 106 |
+
|
| 107 |
+
<div class="feature-section clearfix introduction">
|
| 108 |
+
|
| 109 |
+
<h3><?php esc_html_e( "Get Started with WooCommerce Print Invoice & Delivery Note", 'woocommerce-delivery-notes' ); ?></h3>
|
| 110 |
+
|
| 111 |
+
<div class="video feature-section-item" style="float:left;padding-right:10px;">
|
| 112 |
+
<img src="<?php echo $wcdn_plugin_url . '/assets/images/wcdn-settings.png' ?>"
|
| 113 |
+
alt="<?php esc_attr_e( 'WooCommerce Print Invoice & Delivery Note', 'woocommerce-delivery-notes' ); ?>" style="width:600px;">
|
| 114 |
+
</div>
|
| 115 |
+
|
| 116 |
+
<div class="content feature-section last-feature">
|
| 117 |
+
<h3><?php esc_html_e( 'Add settings', 'woocommerce-delivery-notes' ); ?></h3>
|
| 118 |
+
|
| 119 |
+
<p><?php esc_html_e( 'To enable the print functionality for your invoices, delivery notes & receipts, you just need to set it up under WooCommerce -> Settings -> Print page. Here you can also setup the Company Logo that will appear on the printed items, Company Address & other information.', 'woocommerce-delivery-notes' ); ?></p>
|
| 120 |
+
<a href="admin.php?page=wc-settings&tab=wcdn-settings" target="_blank" class="button-secondary">
|
| 121 |
+
<?php esc_html_e( 'Click Here to go to Print page', 'woocommerce-delivery-notes' ); ?>
|
| 122 |
+
<span class="dashicons dashicons-external"></span>
|
| 123 |
+
</a>
|
| 124 |
+
</div>
|
| 125 |
+
</div>
|
| 126 |
+
|
| 127 |
+
<div class="content">
|
| 128 |
+
|
| 129 |
+
<div class="feature-section clearfix">
|
| 130 |
+
<div class="content feature-section-item">
|
| 131 |
+
|
| 132 |
+
<h3><?php esc_html_e( 'Enable Print button for Customers.', 'woocommerce-delivery-notes' ); ?></h3>
|
| 133 |
+
|
| 134 |
+
<p><?php esc_html_e( 'Allow customers to print the WooCommerce order invoice from the customer notification email, from the My Account page or from the View Order page under My Account.', 'woocommerce-delivery-notes' ); ?></p>
|
| 135 |
+
<a href="admin.php?page=wc-settings&tab=wcdn-settings" target="_blank" class="button-secondary">
|
| 136 |
+
<?php esc_html_e( 'Click Here to Enable Print button for Customers', 'woocommerce-delivery-notes' ); ?>
|
| 137 |
+
<span class="dashicons dashicons-external"></span>
|
| 138 |
+
</a>
|
| 139 |
+
</div>
|
| 140 |
+
|
| 141 |
+
<div class="content feature-section-item last-feature">
|
| 142 |
+
<img src="<?php echo $wcdn_plugin_url . 'assets/images/wcdn-email-myaccount.png'; ?>" alt="<?php esc_attr_e( 'WooCommerce Print Invoice & Delivery Note', 'woocommerce-delivery-notes' ); ?>" style="width:500px;">
|
| 143 |
+
</div>
|
| 144 |
+
</div>
|
| 145 |
+
|
| 146 |
+
<div class="feature-section clearfix introduction">
|
| 147 |
+
<div class="video feature-section-item" style="float:left;padding-right:10px;">
|
| 148 |
+
<img src="<?php echo $wcdn_plugin_url . 'assets/images/wcdn-invoice-numbering.png'; ?>" alt="<?php esc_attr_e( 'WooCommerce Print Invoice & Delivery Note', 'woocommerce-delivery-notes' ); ?>" style="width:500px;">
|
| 149 |
+
</div>
|
| 150 |
+
|
| 151 |
+
<div class="content feature-section-item last-feature">
|
| 152 |
+
<h3><?php esc_html_e( 'Enable Invoice Numbering', 'woocommerce-delivery-notes' ); ?></h3>
|
| 153 |
+
|
| 154 |
+
<p><?php esc_html_e( 'f you want to change the default invoice numbers & set some numbering scheme of your own, then you can set it here with a starting invoice number, a prefix & suffix. For example, you could set it as: TS/001/17-18.', 'woocommerce-delivery-notes' ); ?></p>
|
| 155 |
+
<a href="admin.php?page=wc-settings&tab=wcdn-settings" target="_blank" class="button-secondary">
|
| 156 |
+
<?php esc_html_e( 'Click Here to Enable Invoice Numbering', 'woocommerce-delivery-notes' ); ?>
|
| 157 |
+
<span class="dashicons dashicons-external"></span>
|
| 158 |
+
</a>
|
| 159 |
+
</div>
|
| 160 |
+
</div>
|
| 161 |
+
</div>
|
| 162 |
+
|
| 163 |
+
<div class="feature-section clearfix">
|
| 164 |
+
|
| 165 |
+
<div class="content feature-section-item">
|
| 166 |
+
|
| 167 |
+
<h3><?php esc_html_e( 'Getting to Know Tyche Softwares', 'woocommerce-delivery-notes' ); ?></h3>
|
| 168 |
+
|
| 169 |
+
<ul class="ul-disc">
|
| 170 |
+
<li><a href="https://tychesoftwares.com/?utm_source=wpaboutpage&utm_medium=link&utm_campaign=WCDeliveryNotes" target="_blank"><?php esc_html_e( 'Visit the Tyche Softwares Website', 'woocommerce-delivery-notes' ); ?></a></li>
|
| 171 |
+
<li><a href="https://tychesoftwares.com/premium-plugins/?utm_source=wpaboutpage&utm_medium=link&utm_campaign=WCDeliveryNotes" target="_blank"><?php esc_html_e( 'View all Premium Plugins', 'woocommerce-delivery-notes' ); ?></a>
|
| 172 |
+
<ul class="ul-disc">
|
| 173 |
+
<li><a href="https://www.tychesoftwares.com/store/premium-plugins/woocommerce-abandoned-cart-pro/?utm_source=wpaboutpage&utm_medium=link&utm_campaign=WCDeliveryNotes" target="_blank">Abandoned Cart Pro Plugin for WooCommerce</a></li>
|
| 174 |
+
<li><a href="https://www.tychesoftwares.com/store/premium-plugins/woocommerce-booking-plugin/?utm_source=wpaboutpage&utm_medium=link&utm_campaign=WCDeliveryNotes" target="_blank">Booking & Appointment Plugin for WooCommerce</a></li>
|
| 175 |
+
<li><a href="https://www.tychesoftwares.com/store/premium-plugins/order-delivery-date-for-woocommerce-pro-21/?utm_source=wpaboutpage&utm_medium=link&utm_campaign=WCDeliveryNotes" target="_blank">Order Delivery Date for WooCommerce</a></li>
|
| 176 |
+
<li><a href="https://www.tychesoftwares.com/store/premium-plugins/product-delivery-date-pro-for-woocommerce/?utm_source=wpaboutpage&utm_medium=link&utm_campaign=WCDeliveryNotes" target="_blank">Product Delivery Date for WooCommerce</a></li>
|
| 177 |
+
<li><a href="https://www.tychesoftwares.com/store/premium-plugins/deposits-for-woocommerce/?utm_source=wpaboutpage&utm_medium=link&utm_campaign=WCDeliveryNotes" target="_blank">Deposits for WooCommerce</a></li>
|
| 178 |
+
</ul>
|
| 179 |
+
</li>
|
| 180 |
+
<li><a href="https://tychesoftwares.com/about/?utm_source=wpaboutpage&utm_medium=link&utm_campaign=WCDeliveryNotes" target="_blank"><?php esc_html_e( 'Meet the team', 'woocommerce-delivery-notes' ); ?></a></li>
|
| 181 |
+
</ul>
|
| 182 |
+
</div>
|
| 183 |
+
|
| 184 |
+
<div class="content feature-section-item">
|
| 185 |
+
|
| 186 |
+
<h3><?php esc_html_e( 'Current Offers', 'woocommerce-delivery-notes' ); ?></h3>
|
| 187 |
+
|
| 188 |
+
<p>Buy all our <a href="https://tychesoftwares.com/premium-plugins/?utm_source=wpaboutpage&utm_medium=link&utm_campaign=WCDeliveryNotes" target="_blank">premium plugins</a> at 30% off till 31st December 2017</p>
|
| 189 |
+
</div>
|
| 190 |
+
</div>
|
| 191 |
+
<!-- /.feature-section -->
|
| 192 |
+
</div>
|
| 193 |
+
<?php
|
| 194 |
+
|
| 195 |
+
update_option( 'wcdn_welcome_page_shown', 'yes' );
|
| 196 |
+
update_option( 'wcdn_welcome_page_shown_time', current_time( 'timestamp' ) );
|
| 197 |
+
}
|
| 198 |
+
|
| 199 |
+
|
| 200 |
+
/**
|
| 201 |
+
* The header section for the welcome screen.
|
| 202 |
+
*
|
| 203 |
+
* @since 4.4
|
| 204 |
+
*/
|
| 205 |
+
public function wcdn_get_welcome_header() {
|
| 206 |
+
// Badge for welcome page
|
| 207 |
+
$badge_url = WooCommerce_Delivery_Notes::$plugin_url . 'assets/images/icon-256x256.png';
|
| 208 |
+
?>
|
| 209 |
+
<h1 class="welcome-h1"><?php echo get_admin_page_title(); ?></h1>
|
| 210 |
+
<?php $this->wcdn_social_media_elements(); ?>
|
| 211 |
+
|
| 212 |
+
<?php }
|
| 213 |
+
|
| 214 |
+
|
| 215 |
+
/**
|
| 216 |
+
* Social Media Like Buttons
|
| 217 |
+
*
|
| 218 |
+
* Various social media elements to Tyche Softwares
|
| 219 |
+
* @since: 4.4
|
| 220 |
+
*/
|
| 221 |
+
public function wcdn_social_media_elements() { ?>
|
| 222 |
+
|
| 223 |
+
<div class="social-items-wrap">
|
| 224 |
+
|
| 225 |
+
<iframe src="//www.facebook.com/plugins/like.php?href=https%3A%2F%2Fwww.facebook.com%2Ftychesoftwares&send=false&layout=button_count&width=100&show_faces=false&font&colorscheme=light&action=like&height=21&appId=220596284639969"
|
| 226 |
+
scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:100px; height:21px;"
|
| 227 |
+
allowTransparency="true"></iframe>
|
| 228 |
+
|
| 229 |
+
<a href="https://twitter.com/tychesoftwares" class="twitter-follow-button" data-show-count="false"><?php
|
| 230 |
+
printf(
|
| 231 |
+
esc_html_e( 'Follow %s', 'tychesoftwares' ),
|
| 232 |
+
'@tychesoftwares'
|
| 233 |
+
);
|
| 234 |
+
?></a>
|
| 235 |
+
<script>!function (d, s, id) {
|
| 236 |
+
var js, fjs = d.getElementsByTagName(s)[0], p = /^http:/.test(d.location) ? 'http' : 'https';
|
| 237 |
+
if (!d.getElementById(id)) {
|
| 238 |
+
js = d.createElement(s);
|
| 239 |
+
js.id = id;
|
| 240 |
+
js.src = p + '://platform.twitter.com/widgets.js';
|
| 241 |
+
fjs.parentNode.insertBefore(js, fjs);
|
| 242 |
+
}
|
| 243 |
+
}(document, 'script', 'twitter-wjs');
|
| 244 |
+
</script>
|
| 245 |
+
|
| 246 |
+
</div>
|
| 247 |
+
<!--/.social-items-wrap -->
|
| 248 |
+
|
| 249 |
+
<?php
|
| 250 |
+
}
|
| 251 |
+
|
| 252 |
+
|
| 253 |
+
/**
|
| 254 |
+
* Sends user to the Welcome page on first activation of WooCommerce Print Invoice & Delivery Note as well as each
|
| 255 |
+
* time WooCommerce Print Invoice & Delivery Note is upgraded to a new version
|
| 256 |
+
*
|
| 257 |
+
* @access public
|
| 258 |
+
* @since 4.4
|
| 259 |
+
*
|
| 260 |
+
* @return void
|
| 261 |
+
*/
|
| 262 |
+
public function wcdn_welcome() {
|
| 263 |
+
|
| 264 |
+
// Bail if activating from network, or bulk
|
| 265 |
+
if ( is_network_admin() || isset( $_GET['activate-multi'] ) ) {
|
| 266 |
+
return;
|
| 267 |
+
}
|
| 268 |
+
|
| 269 |
+
if( !get_option( 'wcdn_welcome_page_shown' ) ) {
|
| 270 |
+
wp_safe_redirect( admin_url( 'index.php?page=wcdn-about' ) );
|
| 271 |
+
exit;
|
| 272 |
+
}
|
| 273 |
+
}
|
| 274 |
+
|
| 275 |
+
}
|
| 276 |
+
|
| 277 |
+
new WCDN_Welcome();
|
readme.txt
CHANGED
|
@@ -4,9 +4,9 @@ Contributors: ashokrane, bhavik.kiri, tychesoftwares, chabis
|
|
| 4 |
Donate link: https://www.paypal.me/TycheSoftwares
|
| 5 |
Tags: delivery note, packing slip, pdf invoice, delivery, shipping, print order, woocommerce, woothemes, shop
|
| 6 |
Requires at least: 4.0
|
| 7 |
-
Tested up to: 4.
|
| 8 |
Author URI: https://www.tychesoftwares.com/
|
| 9 |
-
Stable tag: 4.
|
| 10 |
License: GPLv3 or later
|
| 11 |
License URI: http://www.opensource.org/licenses/gpl-license.php
|
| 12 |
|
|
@@ -328,6 +328,14 @@ Please [contribute your translation](https://github.com/TycheSoftwares/woocommer
|
|
| 328 |
|
| 329 |
= Minimum Requirements: WooCommerce 2.2 =
|
| 330 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 331 |
= 4.3.6 (19.12.2017) =
|
| 332 |
|
| 333 |
* Added translation for the word 'Price' for dutch language
|
| 4 |
Donate link: https://www.paypal.me/TycheSoftwares
|
| 5 |
Tags: delivery note, packing slip, pdf invoice, delivery, shipping, print order, woocommerce, woothemes, shop
|
| 6 |
Requires at least: 4.0
|
| 7 |
+
Tested up to: 4.9.1
|
| 8 |
Author URI: https://www.tychesoftwares.com/
|
| 9 |
+
Stable tag: 4.4
|
| 10 |
License: GPLv3 or later
|
| 11 |
License URI: http://www.opensource.org/licenses/gpl-license.php
|
| 12 |
|
| 328 |
|
| 329 |
= Minimum Requirements: WooCommerce 2.2 =
|
| 330 |
|
| 331 |
+
= 4.4 (29.12.2017) =
|
| 332 |
+
|
| 333 |
+
* This version has 1 bug fix.
|
| 334 |
+
|
| 335 |
+
* Fix - Earlier with WooCommerce Local Pickup Plus v2.x.x, pickup locations were not displayed on the invoices, delivery notes & receipts. Now, the plugin is compatible with it and it will display the pickup locations.
|
| 336 |
+
|
| 337 |
+
* Code Enhancement - Now, the plugin has the uninstall file for deleting the plugin options.
|
| 338 |
+
|
| 339 |
= 4.3.6 (19.12.2017) =
|
| 340 |
|
| 341 |
* Added translation for the word 'Price' for dutch language
|
templates/print-order/print-content.php
CHANGED
|
@@ -9,212 +9,220 @@
|
|
| 9 |
if ( !defined( 'ABSPATH' ) ) exit;
|
| 10 |
?>
|
| 11 |
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
| 27 |
-
|
| 28 |
-
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 32 |
|
| 33 |
-
|
| 34 |
-
|
| 35 |
-
|
| 36 |
-
|
| 37 |
-
|
| 38 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 39 |
|
| 40 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 41 |
|
| 42 |
-
|
| 43 |
-
|
| 44 |
-
|
| 45 |
-
|
| 46 |
-
|
| 47 |
-
|
| 48 |
-
|
| 49 |
-
|
| 50 |
-
|
| 51 |
-
|
| 52 |
-
<ul class="info-list">
|
| 53 |
-
<?php $fields = apply_filters( 'wcdn_order_info_fields', wcdn_get_order_info( $order ), $order ); ?>
|
| 54 |
-
<?php foreach( $fields as $field ) : ?>
|
| 55 |
-
<li>
|
| 56 |
-
<strong><?php echo apply_filters( 'wcdn_order_info_name', $field['label'], $field ); ?></strong>
|
| 57 |
-
<span><?php echo apply_filters( 'wcdn_order_info_content', $field['value'], $field ); ?></span>
|
| 58 |
-
</li>
|
| 59 |
-
<?php endforeach; ?>
|
| 60 |
-
</ul>
|
| 61 |
-
|
| 62 |
-
<?php do_action( 'wcdn_after_info', $order ); ?>
|
| 63 |
-
</div><!-- .order-info -->
|
| 64 |
-
|
| 65 |
-
|
| 66 |
-
<div class="order-items">
|
| 67 |
-
<table>
|
| 68 |
-
<thead>
|
| 69 |
-
<tr>
|
| 70 |
-
<th class="head-name"><span><?php _e('Product', 'woocommerce-delivery-notes'); ?></span></th>
|
| 71 |
-
<th class="head-item-price"><span><?php _e('Price', 'woocommerce-delivery-notes'); ?></span></th>
|
| 72 |
-
<th class="head-quantity"><span><?php _e('Quantity', 'woocommerce-delivery-notes'); ?></span></th>
|
| 73 |
-
<th class="head-price"><span><?php _e('Total', 'woocommerce-delivery-notes'); ?></span></th>
|
| 74 |
-
</tr>
|
| 75 |
-
</thead>
|
| 76 |
|
| 77 |
-
<
|
| 78 |
-
|
| 79 |
-
<?php
|
| 80 |
-
|
| 81 |
-
<?php
|
| 82 |
-
$product = apply_filters( 'wcdn_order_item_product', $order->get_product_from_item( $item ), $item );
|
| 83 |
-
|
| 84 |
-
if ( version_compare( get_option( 'woocommerce_version' ), '3.0.0', ">=" ) ) {
|
| 85 |
-
$item_meta = new WC_Order_Item_Product( $item['item_meta'], $product );
|
| 86 |
-
}else{
|
| 87 |
-
$item_meta = new WC_Order_Item_Meta( $item['item_meta'], $product );
|
| 88 |
-
}
|
| 89 |
-
|
| 90 |
-
?>
|
| 91 |
-
|
| 92 |
-
<tr>
|
| 93 |
-
<td class="product-name">
|
| 94 |
-
<?php do_action( 'wcdn_order_item_before', $product, $order ); ?>
|
| 95 |
|
| 96 |
-
|
| 97 |
-
|
| 98 |
-
|
| 99 |
-
|
| 100 |
-
|
| 101 |
|
| 102 |
-
|
| 103 |
|
| 104 |
-
|
| 105 |
-
|
| 106 |
-
|
| 107 |
-
|
| 108 |
-
|
| 109 |
-
|
| 110 |
-
|
| 111 |
-
|
| 112 |
-
|
| 113 |
-
|
| 114 |
-
|
| 115 |
-
|
| 116 |
-
|
| 117 |
-
|
| 118 |
-
|
| 119 |
-
|
| 120 |
-
|
| 121 |
-
|
| 122 |
-
} else {
|
| 123 |
-
echo '<br>'.$attribute_name.':'.$value;
|
| 124 |
-
}
|
| 125 |
-
}
|
| 126 |
-
}
|
| 127 |
} else {
|
| 128 |
-
|
| 129 |
-
if( !( 0 === strpos( $key, '_' ) ) ) {
|
| 130 |
-
echo '<br>' . $key . ':' . $value;
|
| 131 |
-
}
|
| 132 |
-
}
|
| 133 |
}
|
| 134 |
-
}
|
| 135 |
-
|
| 136 |
-
|
| 137 |
-
|
| 138 |
-
|
| 139 |
-
|
| 140 |
-
|
| 141 |
-
|
| 142 |
-
|
| 143 |
-
|
| 144 |
-
|
| 145 |
-
|
| 146 |
-
|
| 147 |
-
|
| 148 |
-
|
| 149 |
-
|
| 150 |
-
|
| 151 |
-
|
| 152 |
-
?>
|
| 153 |
-
|
| 154 |
-
<dt><?php echo $field['label']; ?></dt>
|
| 155 |
-
<dd><?php echo $field['value']; ?></dd>
|
| 156 |
-
|
| 157 |
-
<?php endforeach; ?>
|
| 158 |
-
</dl>
|
| 159 |
-
</td>
|
| 160 |
-
<td class="product-item-price">
|
| 161 |
-
<span><?php echo wcdn_get_formatted_item_price( $order, $item ); ?></span>
|
| 162 |
-
</td>
|
| 163 |
-
<td class="product-quantity">
|
| 164 |
-
<span><?php echo apply_filters( 'wcdn_order_item_quantity', $item['qty'], $item ); ?></span>
|
| 165 |
-
</td>
|
| 166 |
-
<td class="product-price">
|
| 167 |
-
<span><?php echo $order->get_formatted_line_subtotal( $item ); ?></span>
|
| 168 |
-
</td>
|
| 169 |
-
</tr>
|
| 170 |
-
<?php endforeach; ?>
|
| 171 |
-
<?php endif; ?>
|
| 172 |
-
</tbody>
|
| 173 |
-
|
| 174 |
-
<tfoot>
|
| 175 |
-
<?php if( $totals = $order->get_order_item_totals() ) : ?>
|
| 176 |
-
<?php foreach( $totals as $total ) : ?>
|
| 177 |
-
<tr>
|
| 178 |
-
<td class="total-name"><span><?php echo $total['label']; ?></span></td>
|
| 179 |
-
<td class="total-item-price"></td>
|
| 180 |
-
<td class="total-quantity"></td>
|
| 181 |
-
<td class="total-price"><span><?php echo $total['value']; ?></span></td>
|
| 182 |
-
</tr>
|
| 183 |
-
<?php endforeach; ?>
|
| 184 |
-
<?php endif; ?>
|
| 185 |
-
</tfoot>
|
| 186 |
-
</table>
|
| 187 |
|
| 188 |
-
|
| 189 |
-
|
| 190 |
-
|
| 191 |
-
|
| 192 |
-
|
| 193 |
-
|
| 194 |
-
|
| 195 |
-
|
| 196 |
-
|
| 197 |
-
|
| 198 |
-
|
| 199 |
-
|
| 200 |
-
|
| 201 |
-
|
| 202 |
-
|
| 203 |
-
|
| 204 |
-
|
| 205 |
-
|
| 206 |
-
|
| 207 |
-
|
| 208 |
-
|
| 209 |
-
|
| 210 |
-
|
| 211 |
-
|
| 212 |
-
|
| 213 |
-
|
| 214 |
-
|
| 215 |
-
|
| 216 |
-
|
| 217 |
-
|
| 218 |
-
|
| 219 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 220 |
|
| 9 |
if ( !defined( 'ABSPATH' ) ) exit;
|
| 10 |
?>
|
| 11 |
|
| 12 |
+
<div class="order-branding">
|
| 13 |
+
<div class="company-logo">
|
| 14 |
+
<?php if( wcdn_get_company_logo_id() ) : ?><?php wcdn_company_logo(); ?><?php endif; ?>
|
| 15 |
+
</div>
|
| 16 |
+
|
| 17 |
+
<div class="company-info">
|
| 18 |
+
<?php if( !wcdn_get_company_logo_id() ) : ?><h1 class="company-name"><?php wcdn_company_name(); ?></h1><?php endif; ?>
|
| 19 |
+
<div class="company-address"><?php wcdn_company_info(); ?></div>
|
| 20 |
+
</div>
|
| 21 |
+
|
| 22 |
+
<?php do_action( 'wcdn_after_branding', $order ); ?>
|
| 23 |
+
</div><!-- .order-branding -->
|
| 24 |
+
|
| 25 |
+
|
| 26 |
+
<div class="order-addresses<?php if( !wcdn_has_shipping_address( $order ) ) : ?> no-shipping-address<?php endif; ?>">
|
| 27 |
+
<div class="billing-address">
|
| 28 |
+
<h3><?php _e( 'Billing Address', 'woocommerce-delivery-notes' ); ?></h3>
|
| 29 |
+
<address>
|
| 30 |
+
|
| 31 |
+
<?php if( !$order->get_formatted_billing_address() ) _e( 'N/A', 'woocommerce-delivery-notes' ); else echo apply_filters( 'wcdn_address_billing', $order->get_formatted_billing_address(), $order ); ?>
|
| 32 |
+
|
| 33 |
+
</address>
|
| 34 |
+
</div>
|
| 35 |
+
|
| 36 |
+
<div class="shipping-address">
|
| 37 |
+
<h3><?php _e( 'Shipping Address', 'woocommerce-delivery-notes' ); ?></h3>
|
| 38 |
+
<address>
|
| 39 |
+
|
| 40 |
+
<?php if( !$order->get_formatted_shipping_address() ) _e( 'N/A', 'woocommerce-delivery-notes' ); else echo apply_filters( 'wcdn_address_shipping', $order->get_formatted_shipping_address(), $order ); ?>
|
| 41 |
+
|
| 42 |
+
</address>
|
| 43 |
+
</div>
|
| 44 |
|
| 45 |
+
<?php do_action( 'wcdn_after_addresses', $order ); ?>
|
| 46 |
+
</div><!-- .order-addresses -->
|
| 47 |
+
|
| 48 |
+
|
| 49 |
+
<div class="order-info">
|
| 50 |
+
<h2><?php wcdn_document_title(); ?></h2>
|
| 51 |
+
|
| 52 |
+
<ul class="info-list">
|
| 53 |
+
<?php $fields = apply_filters( 'wcdn_order_info_fields', wcdn_get_order_info( $order ), $order );
|
| 54 |
+
?>
|
| 55 |
+
<?php foreach( $fields as $field ) : ?>
|
| 56 |
+
<li>
|
| 57 |
+
<strong><?php echo apply_filters( 'wcdn_order_info_name', $field['label'], $field ); ?></strong>
|
| 58 |
+
<span><?php echo apply_filters( 'wcdn_order_info_content', $field['value'], $field ); ?></span>
|
| 59 |
+
</li>
|
| 60 |
+
<?php endforeach; ?>
|
| 61 |
+
</ul>
|
| 62 |
+
|
| 63 |
+
<?php do_action( 'wcdn_after_info', $order ); ?>
|
| 64 |
+
</div><!-- .order-info -->
|
| 65 |
|
| 66 |
+
|
| 67 |
+
<div class="order-items">
|
| 68 |
+
<table>
|
| 69 |
+
<thead>
|
| 70 |
+
<tr>
|
| 71 |
+
<th class="head-name"><span><?php _e('Product', 'woocommerce-delivery-notes'); ?></span></th>
|
| 72 |
+
<th class="head-item-price"><span><?php _e('Price', 'woocommerce-delivery-notes'); ?></span></th>
|
| 73 |
+
<th class="head-quantity"><span><?php _e('Quantity', 'woocommerce-delivery-notes'); ?></span></th>
|
| 74 |
+
<th class="head-price"><span><?php _e('Total', 'woocommerce-delivery-notes'); ?></span></th>
|
| 75 |
+
</tr>
|
| 76 |
+
</thead>
|
| 77 |
+
|
| 78 |
+
<tbody>
|
| 79 |
+
<?php
|
| 80 |
+
|
| 81 |
+
if( sizeof( $order->get_items() ) > 0 ) : ?>
|
| 82 |
+
<?php foreach( $order->get_items() as $item ) : ?>
|
| 83 |
|
| 84 |
+
<?php
|
| 85 |
+
$product = apply_filters( 'wcdn_order_item_product', $order->get_product_from_item( $item ), $item );
|
| 86 |
+
|
| 87 |
+
if ( version_compare( get_option( 'woocommerce_version' ), '3.0.0', ">=" ) ) {
|
| 88 |
+
$item_meta = new WC_Order_Item_Product( $item['item_meta'], $product );
|
| 89 |
+
}else{
|
| 90 |
+
$item_meta = new WC_Order_Item_Meta( $item['item_meta'], $product );
|
| 91 |
+
}
|
| 92 |
+
|
| 93 |
+
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 94 |
|
| 95 |
+
<tr>
|
| 96 |
+
<td class="product-name">
|
| 97 |
+
<?php do_action( 'wcdn_order_item_before', $product, $order ); ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 98 |
|
| 99 |
+
<span class="name"><?php
|
| 100 |
+
$product_id = $item['product_id'];
|
| 101 |
+
$prod_name = get_post( $product_id );
|
| 102 |
+
$product_name = $prod_name->post_title;
|
| 103 |
+
|
| 104 |
|
| 105 |
+
echo apply_filters( 'wcdn_order_item_name', $product_name, $item ); ?></span>
|
| 106 |
|
| 107 |
+
<?php
|
| 108 |
+
// if ( version_compare( get_option( 'woocommerce_version' ), '3.1.0', ">=" ) ) {
|
| 109 |
+
// $item_meta->get_product();
|
| 110 |
+
|
| 111 |
+
// }else {
|
| 112 |
+
|
| 113 |
+
// $item_meta->display();
|
| 114 |
+
// }
|
| 115 |
+
|
| 116 |
+
if ( version_compare( get_option( 'woocommerce_version' ), '3.0.0', ">=" ) ) {
|
| 117 |
+
if( isset( $item[ 'variation_id' ] ) && $item[ 'variation_id' ] != 0 ) {
|
| 118 |
+
$variation = wc_get_product( $item[ 'product_id' ] );
|
| 119 |
+
foreach ( $item[ 'item_meta' ] as $key => $value ) {
|
| 120 |
+
if( !( 0 === strpos($key, '_' ) ) ) {
|
| 121 |
+
$term = get_term_by( 'slug', $value, $key );
|
| 122 |
+
$attribute_name = wc_attribute_label( $key, $variation );
|
| 123 |
+
if( isset( $term->name ) ) {
|
| 124 |
+
echo '<br>'.$attribute_name.':'.$term->name;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 125 |
} else {
|
| 126 |
+
echo '<br>'.$attribute_name.':'.$value;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 127 |
}
|
| 128 |
+
}
|
| 129 |
+
}
|
| 130 |
+
} else {
|
| 131 |
+
foreach ( $item[ 'item_meta' ] as $key => $value ) {
|
| 132 |
+
if( !( 0 === strpos( $key, '_' ) ) ) {
|
| 133 |
+
echo '<br>' . $key . ':' . $value;
|
| 134 |
+
}
|
| 135 |
+
}
|
| 136 |
+
}
|
| 137 |
+
} else {
|
| 138 |
+
$item_meta_new = new WC_Order_Item_Meta( $item['item_meta'], $product );
|
| 139 |
+
$item_meta_new->display( );
|
| 140 |
+
|
| 141 |
+
}
|
| 142 |
+
?>
|
| 143 |
+
<br>
|
| 144 |
+
<dl class="extras">
|
| 145 |
+
<?php if( $product && $product->exists() && $product->is_downloadable() && $order->is_download_permitted() ) : ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 146 |
|
| 147 |
+
<dt><?php _e( 'Download:', 'woocommerce-delivery-notes' ); ?></dt>
|
| 148 |
+
<dd><?php printf( __( '%s Files', 'woocommerce-delivery-notes' ), count( $item->get_item_downloads() ) ); ?></dd>
|
| 149 |
+
|
| 150 |
+
<?php endif; ?>
|
| 151 |
+
|
| 152 |
+
<?php
|
| 153 |
+
|
| 154 |
+
$fields = apply_filters( 'wcdn_order_item_fields', array(), $product, $order );
|
| 155 |
+
|
| 156 |
+
foreach ( $fields as $field ) :
|
| 157 |
+
?>
|
| 158 |
+
|
| 159 |
+
<dt><?php echo $field['label']; ?></dt>
|
| 160 |
+
<dd><?php echo $field['value']; ?></dd>
|
| 161 |
+
|
| 162 |
+
<?php endforeach; ?>
|
| 163 |
+
</dl>
|
| 164 |
+
</td>
|
| 165 |
+
<td class="product-item-price">
|
| 166 |
+
<span><?php echo wcdn_get_formatted_item_price( $order, $item ); ?></span>
|
| 167 |
+
</td>
|
| 168 |
+
<td class="product-quantity">
|
| 169 |
+
<span><?php echo apply_filters( 'wcdn_order_item_quantity', $item['qty'], $item ); ?></span>
|
| 170 |
+
</td>
|
| 171 |
+
<td class="product-price">
|
| 172 |
+
<span><?php echo $order->get_formatted_line_subtotal( $item ); ?></span>
|
| 173 |
+
</td>
|
| 174 |
+
</tr>
|
| 175 |
+
<?php endforeach; ?>
|
| 176 |
+
<?php endif; ?>
|
| 177 |
+
</tbody>
|
| 178 |
+
|
| 179 |
+
<tfoot>
|
| 180 |
+
<?php if( $totals = $order->get_order_item_totals() ) : ?>
|
| 181 |
+
<?php
|
| 182 |
+
|
| 183 |
+
|
| 184 |
+
foreach( $totals as $total ) : ?>
|
| 185 |
+
<tr>
|
| 186 |
+
<td class="total-name"><span><?php echo $total['label']; ?></span></td>
|
| 187 |
+
<td class="total-item-price"></td>
|
| 188 |
+
<td class="total-quantity"></td>
|
| 189 |
+
<td class="total-price"><span><?php echo $total['value']; ?></span></td>
|
| 190 |
+
</tr>
|
| 191 |
+
<?php endforeach; ?>
|
| 192 |
+
<?php endif; ?>
|
| 193 |
+
</tfoot>
|
| 194 |
+
</table>
|
| 195 |
+
|
| 196 |
+
<?php do_action( 'wcdn_after_items', $order ); ?>
|
| 197 |
+
</div><!-- .order-items -->
|
| 198 |
+
|
| 199 |
+
|
| 200 |
+
<div class="order-notes">
|
| 201 |
+
<?php if( wcdn_has_customer_notes( $order ) ) : ?>
|
| 202 |
+
<h4><?php _e( 'Customer Note', 'woocommerce-delivery-notes' ); ?></h4>
|
| 203 |
+
<?php wcdn_customer_notes( $order ); ?>
|
| 204 |
+
<?php endif; ?>
|
| 205 |
+
|
| 206 |
+
<?php do_action( 'wcdn_after_notes', $order ); ?>
|
| 207 |
+
</div><!-- .order-notes -->
|
| 208 |
+
|
| 209 |
+
|
| 210 |
+
<div class="order-thanks">
|
| 211 |
+
<?php wcdn_personal_notes(); ?>
|
| 212 |
+
|
| 213 |
+
<?php do_action( 'wcdn_after_thanks', $order ); ?>
|
| 214 |
+
</div><!-- .order-thanks -->
|
| 215 |
+
|
| 216 |
+
|
| 217 |
+
<div class="order-colophon">
|
| 218 |
+
<div class="colophon-policies">
|
| 219 |
+
<?php wcdn_policies_conditions(); ?>
|
| 220 |
+
</div>
|
| 221 |
+
|
| 222 |
+
<div class="colophon-imprint">
|
| 223 |
+
<?php wcdn_imprint(); ?>
|
| 224 |
+
</div>
|
| 225 |
+
|
| 226 |
+
<?php do_action( 'wcdn_after_colophon', $order ); ?>
|
| 227 |
+
</div><!-- .order-colophon -->
|
| 228 |
|
uninstall.php
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
/**
|
| 3 |
+
* WooCommerce Print Invoice & Delivery Note Uninstall
|
| 4 |
+
*
|
| 5 |
+
* Uninstalling WooCommerce Print Invoice & Delivery Note options.
|
| 6 |
+
*
|
| 7 |
+
*/
|
| 8 |
+
|
| 9 |
+
if ( ! defined( 'WP_UNINSTALL_PLUGIN' ) ) {
|
| 10 |
+
exit;
|
| 11 |
+
}
|
| 12 |
+
|
| 13 |
+
/**
|
| 14 |
+
* Delete the data for the WordPress Multisite.
|
| 15 |
+
*/
|
| 16 |
+
if ( is_multisite() ) {
|
| 17 |
+
$wcdn_blog_list = get_sites( );
|
| 18 |
+
|
| 19 |
+
foreach( $wcdn_blog_list as $wcdn_blog_list_key => $wcdn_blog_list_value ) {
|
| 20 |
+
$wcdn_blog_id = $wcdn_blog_list_value->blog_id;
|
| 21 |
+
delete_blog_option( $wcdn_blog_id, 'wcdn_welcome_page_shown' );
|
| 22 |
+
delete_blog_option( $wcdn_blog_id, 'wcdn_welcome_page_shown_time' );
|
| 23 |
+
}
|
| 24 |
+
|
| 25 |
+
} else {
|
| 26 |
+
/**
|
| 27 |
+
* Delete the data for the single website ( Non-Multisite )
|
| 28 |
+
*/
|
| 29 |
+
delete_option( 'wcdn_welcome_page_shown' );
|
| 30 |
+
delete_option( 'wcdn_welcome_page_shown_time' );
|
| 31 |
+
}
|
| 32 |
+
|
| 33 |
+
wp_cache_flush();
|
woocommerce-delivery-notes.php
CHANGED
|
@@ -5,7 +5,7 @@
|
|
| 5 |
* Plugin Name: WooCommerce Print Invoice & Delivery Note
|
| 6 |
* Plugin URI: https://www.tychesoftwares.com/
|
| 7 |
* Description: Print Invoices & Delivery Notes for WooCommerce Orders.
|
| 8 |
-
* Version: 4.
|
| 9 |
* Author: Tyche Softwares
|
| 10 |
* Author URI: https://www.tychesoftwares.com/
|
| 11 |
* License: GPLv3 or later
|
|
@@ -49,7 +49,7 @@ if ( !defined( 'ABSPATH' ) ) {
|
|
| 49 |
if ( !class_exists( 'WooCommerce_Delivery_Notes' ) ) {
|
| 50 |
|
| 51 |
final class WooCommerce_Delivery_Notes {
|
| 52 |
-
|
| 53 |
/**
|
| 54 |
* The single instance of the class
|
| 55 |
*/
|
|
@@ -58,7 +58,7 @@ if ( !class_exists( 'WooCommerce_Delivery_Notes' ) ) {
|
|
| 58 |
/**
|
| 59 |
* Default properties
|
| 60 |
*/
|
| 61 |
-
public static $plugin_version = '4.
|
| 62 |
public static $plugin_url;
|
| 63 |
public static $plugin_path;
|
| 64 |
public static $plugin_basefile;
|
|
@@ -131,6 +131,7 @@ if ( !class_exists( 'WooCommerce_Delivery_Notes' ) ) {
|
|
| 131 |
* Define constant if not already set
|
| 132 |
*/
|
| 133 |
private function define( $name, $value ) {
|
|
|
|
| 134 |
if( !defined( $name ) ) {
|
| 135 |
define( $name, $value );
|
| 136 |
}
|
|
@@ -144,6 +145,9 @@ if ( !class_exists( 'WooCommerce_Delivery_Notes' ) ) {
|
|
| 144 |
include_once( 'includes/class-wcdn-settings.php' );
|
| 145 |
include_once( 'includes/class-wcdn-writepanel.php' );
|
| 146 |
include_once( 'includes/class-wcdn-theme.php' );
|
|
|
|
|
|
|
|
|
|
| 147 |
}
|
| 148 |
|
| 149 |
/**
|
| 5 |
* Plugin Name: WooCommerce Print Invoice & Delivery Note
|
| 6 |
* Plugin URI: https://www.tychesoftwares.com/
|
| 7 |
* Description: Print Invoices & Delivery Notes for WooCommerce Orders.
|
| 8 |
+
* Version: 4.4
|
| 9 |
* Author: Tyche Softwares
|
| 10 |
* Author URI: https://www.tychesoftwares.com/
|
| 11 |
* License: GPLv3 or later
|
| 49 |
if ( !class_exists( 'WooCommerce_Delivery_Notes' ) ) {
|
| 50 |
|
| 51 |
final class WooCommerce_Delivery_Notes {
|
| 52 |
+
|
| 53 |
/**
|
| 54 |
* The single instance of the class
|
| 55 |
*/
|
| 58 |
/**
|
| 59 |
* Default properties
|
| 60 |
*/
|
| 61 |
+
public static $plugin_version = '4.4';
|
| 62 |
public static $plugin_url;
|
| 63 |
public static $plugin_path;
|
| 64 |
public static $plugin_basefile;
|
| 131 |
* Define constant if not already set
|
| 132 |
*/
|
| 133 |
private function define( $name, $value ) {
|
| 134 |
+
|
| 135 |
if( !defined( $name ) ) {
|
| 136 |
define( $name, $value );
|
| 137 |
}
|
| 145 |
include_once( 'includes/class-wcdn-settings.php' );
|
| 146 |
include_once( 'includes/class-wcdn-writepanel.php' );
|
| 147 |
include_once( 'includes/class-wcdn-theme.php' );
|
| 148 |
+
if ( is_admin() ) {
|
| 149 |
+
include_once( 'includes/wcdn-welcome.php' );
|
| 150 |
+
}
|
| 151 |
}
|
| 152 |
|
| 153 |
/**
|
