Plugin Directory

Changeset 3429311


Ignore:
Timestamp:
12/29/2025 10:09:46 PM (7 weeks ago)
Author:
maximumsoftware
Message:

Deploy from Git

Location:
pdf-forms-for-woocommerce/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • pdf-forms-for-woocommerce/trunk/pdf-forms-for-woocommerce.php

    r3399234 r3429311  
    44 * Plugin URI: https://pdfformsfiller.org/
    55 * Description: Automatically fill PDF forms with WooCommerce orders and attach generated PDFs to email notifications and order downloads.
    6  * Version: 1.1.4
     6 * Version: 1.1.5
    77 * Requires at least: 5.4
    88 * Requires PHP: 5.5
    99 * Requires Plugins: woocommerce
    1010 * WC requires at least: 7.1.0
    11  * WC tested up to: 10.3
     11 * WC tested up to: 10.4
    1212 * Author: Maximum.Software
    1313 * Author URI: https://maximum.software/
     
    2727    class Pdf_Forms_For_WooCommerce
    2828    {
    29         const VERSION = '1.1.4';
     29        const VERSION = '1.1.5';
    3030        const MIN_WC_VERSION = '7.1.0';
    31         const MAX_WC_VERSION = '10.3.99';
     31        const MAX_WC_VERSION = '10.4.99';
    3232        private static $BLACKLISTED_WC_VERSIONS = array();
    3333       
     
    934934                    throw new Exception( __( "Invalid order", 'pdf-forms-for-woocommerce' ) );
    935935               
     936                // remove old downloadable files
     937                $this->unset_downloadable_files( $order );
     938               
    936939                $this->reset_order_settings( $order );
    937940            }
     
    971974                $this->unset_downloadable_files( $order );
    972975               
    973                 // refilling is necessary only if PDFs are being saved in wp-uploads
     976                // refilling is necessary only if PDFs are being saved in wp-uploads or there are downloadable files
    974977                $product_settings = $this->get_order_metadata( $order, 'product-settings' );
    975978                if( is_array( $product_settings ) && ! empty( $product_settings ) )
     
    10021005                            if( isset( $attachment['options'] )
    10031006                            && is_array( $options = $attachment['options'] )
    1004                             && isset( $options['save_directory'] )
    1005                             && $options['save_directory'] !== "" )
     1007                            && ( ( isset( $options['save_directory'] ) && $options['save_directory'] !== "" )
     1008                              || ( isset( $options['download_id'] ) && $options['download_id'] !== "" ) ) )
    10061009                            {
    10071010                                $this->fill_pdfs( $settings, $placeholder_processor );
  • pdf-forms-for-woocommerce/trunk/readme.txt

    r3399234 r3429311  
    11=== PDF Forms Filler for WooCommerce ===
    2 Version: 1.1.4
    3 Stable tag: 1.1.4
    4 Tested up to: 6.7
     2Version: 1.1.5
     3Stable tag: 1.1.5
     4Tested up to: 6.9
    55Tags: pdf, form, woocommerce, email, download
    66Plugin URI: https://pdfformsfiller.org/
     
    5454
    5555== Changelog ==
     56
     57= 1.1.5 =
     58
     59* Release date: December 29, 2025
     60
     61* Verified support for WC 10.4
     62* Other minor bug fixes and improvements
    5663
    5764= 1.1.4 =
  • pdf-forms-for-woocommerce/trunk/src/integration/wc-placeholder-processor.php

    r3120969 r3429311  
    186186            {
    187187                if( is_a( $this->email, 'WC_Email' ) )
     188                {
     189                    // ensure {order_billing_full_name} is set if we have an order and it's not already set
     190                    if( is_a( $this->order, 'WC_Order' ) && empty( $this->email->placeholders['{order_billing_full_name}'] ) )
     191                        $this->email->placeholders['{order_billing_full_name}'] = $this->order->get_formatted_billing_full_name();
     192
    188193                    // this will process {blogname} (hardcoded in format_string),
    189194                    // {site_title}, {site_address}, {site_url} (hardcoded in class WC_Email)
    190195                    // and tags from woocommerce_email_format_string, woocommerce_email_format_string_find and woocommerce_email_format_string_replace filters
    191196                    return $this->email->format_string( $content );
     197                }
    192198               
    193199                if( is_a( $this->order, 'WC_Order' ) )
     
    239245                        );
    240246                       
    241                         $find = array_keys( $placeholders );
    242                         $replace = array_values( $placeholders );
    243                        
    244                         $email->find = array_merge( (array) $email->find, $find );
    245                         $email->replace = array_merge( (array) $email->replace, $replace );
     247                        $email->placeholders = array_merge( (array) $email->placeholders, $placeholders );
    246248                       
    247249                        return $email->format_string( $content );
Note: See TracChangeset for help on using the changeset viewer.