WordPress.org

Plugin Directory

Changeset 1728549


Ignore:
Timestamp:
09/12/17 10:05:08 (9 days ago)
Author:
Mte90
Message:

tagging version 1.2.3

Location:
woo-fiscalita-italiana
Files:
726 added
20 edited

Legend:

Unmodified
Added
Removed
  • woo-fiscalita-italiana/trunk/README.txt

    r1726246 r1728549  
    44Tags: fisco, tax, italian, italiano, italia, fiscalita, legge, digital, tasse, fatture, invoice, woocommerce, tasse 
    55Requires at least: 4.6 
    6 Tested up to: 4.7 
    7 Stable tag: 1.2.2 
     6Tested up to: 4.8 
     7Stable tag: 1.2.3 
    88License: GPLv2 or later 
    99License URI: http://www.gnu.org/licenses/gpl-2.0.html 
     
    1919Codeat created this plugin in order to resolve all the major issues without needing any coding skill at all! 
    2020 
    21 Install it, activate it, fill all the store info's fields and the job is done. Our plugin will make everything easy for you.  
     21Install it, activate it, fill all the store info's fields and the job is done. Our plugin will make everything easy for you. 
    2222 
    2323The free version contain all the basic stuff to be compliant with the Italian and European law, the Pro version contain specific features used by Italian shop for their workflow about to be compliant or needs as shop or enforce few law requirements. 
     
    9292== Changelog == 
    9393 
     94= 1.2.3 = 
     95* [PRO] Fix: For WooCommerce PDF Invoices & Packing Slips on credit notes 
     96* [PRO] Fix: Few fixes for WooCommerce PDF Invoices & Packing Slips 
     97* Feature: New filter `woofisco_checkout_pvtazd_default` to force the user by code on checkout as default 
     98* Fix: Few fixes for WooCommerce 3 
     99 
    94100= 1.2.2 = 
    95101* [PRO] Fix: Hide VAT when Ask invoice is not enable by the user 
  • woo-fiscalita-italiana/trunk/admin/class-woo-fiscalita-italiana-admin.php

    r1698250 r1728549  
    33/** 
    44 * WooCommerce Fiscalitá Italiana 
    5  *  
     5 * 
    66 * @package   Woo_Fiscalita_Italiana_Admin 
    77 * @author    Codeat <support@codeat.co> 
    8  * @copyright 2016  
     8 * @copyright 2016 
    99 * @license   GPL-2.0+ 
    1010 * @link      http://codeat.co 
     
    4949        /* 
    5050         * Load Wp_Admin_Notice for the notices in the backend 
    51          *  
     51         * 
    5252         * First parameter the HTML, the second is the css class 
    5353         */ 
     
    7373        require_once plugin_dir_path( __FILE__ ) . 'includes/WFI_Status_Init.php'; 
    7474        if ( empty(get_wfi_info()) && !strpos( $_SERVER['REQUEST_URI'], '/network/' ) ) { 
    75             new WP_Admin_Notice( sprintf( __( 'Check the %sWooCommerce Fiscalit&agrave; Italiana detection system%s for solve the missing issues!', WFI_TEXTDOMAIN ), '<a href="' . get_admin_url() . 'admin.php?page=woo-fiscalita-italiana#tabs-check" id="check-system-alert">', '</a>' ), 'error' ); 
     75            new WP_Admin_Notice( sprintf( __( 'Check the %1$sWooCommerce Fiscalit&agrave; Italiana detection system%2$s for solve the missing issues!', WFI_TEXTDOMAIN ), '<a href="' . get_admin_url() . 'admin.php?page=woo-fiscalita-italiana#tabs-check" id="check-system-alert">', '</a>' ), 'error' ); 
    7676        } 
    7777    } 
     
    160160     * 
    161161     * @since 1.0.0 
    162      *  
     162     * 
    163163     * @return void 
    164164     */ 
     
    179179     * 
    180180     * @since 1.0.0 
    181      *  
     181     * 
    182182     * @return void 
    183183     */ 
     
    190190    /** 
    191191     * Add settings action link to the plugins page. 
    192      *  
     192     * 
    193193     * @param array $links Array of links. 
    194194     * 
    195195     * @since 1.0.0 
    196      *  
     196     * 
    197197     * @return array 
    198198     */ 
  • woo-fiscalita-italiana/trunk/admin/includes/PointerPlus/class-pointerplus.php

    r1445612 r1728549  
    33/** 
    44 * Class PointerPlus based on QL_Pointer to facilitate creation of WP Pointers 
    5  *  
     5 * 
    66 * @package   PointerPlus 
    77 * @author    QueryLoop & Mte90 
     
    1212// Exit if accessed directly 
    1313if ( !defined( 'ABSPATH' ) ) { 
    14   exit; 
     14    exit; 
    1515} 
    1616 
    1717class PointerPlus { 
    1818 
    19   /** 
    20    * Prefix strings like styles, scripts and pointers IDs 
    21    * @var string 
    22    */ 
    23   var $prefix = 'pointerplus'; 
    24   var $pointers = array(); 
     19    /** 
     20     * Prefix strings like styles, scripts and pointers IDs 
     21     * 
     22     * @var string 
     23     */ 
     24    var $prefix = 'pointerplus'; 
     25    var $pointers = array(); 
    2526 
    26   function __construct( $args = array() ) { 
    27     if ( isset( $args[ 'prefix' ] ) ) { 
    28     $this->prefix = $args[ 'prefix' ]; 
    29     } 
    30     add_action( 'current_screen', array( $this, 'maybe_add_pointers' ) ); 
    31   } 
     27    function __construct( $args = array() ) { 
     28        if ( isset( $args[ 'prefix' ] ) ) { 
     29            $this->prefix = $args[ 'prefix' ]; 
     30        } 
     31        add_action( 'current_screen', array( $this, 'maybe_add_pointers' ) ); 
     32    } 
    3233 
    33   /** 
    34    * Set pointers and its options 
    35    * 
    36    * @since 1.0.0 
    37    */ 
    38   function initial_pointers() { 
    39     global $pagenow; 
    40     $defaults = array( 
    41       'class' => '', 
    42       'width' => 300, //only fixed value 
    43       'align' => 'middle', 
    44       'edge' => 'left', 
    45       'post_type' => array(), 
    46       'pages' => array(), 
    47       'icon_class' => '' 
    48     ); 
    49     $screen = get_current_screen(); 
    50     $current_post_type = isset( $screen->post_type ) ? $screen->post_type : false; 
    51     $search_pt = false; 
     34    /** 
     35     * Set pointers and its options 
     36     * 
     37     * @since 1.0.0 
     38     */ 
     39    function initial_pointers() { 
     40        global $pagenow; 
     41        $defaults = array( 
     42        'class' => '', 
     43        'width' => 300, // only fixed value 
     44        'align' => 'middle', 
     45        'edge' => 'left', 
     46        'post_type' => array(), 
     47        'pages' => array(), 
     48        'icon_class' => '', 
     49        ); 
     50        $screen = get_current_screen(); 
     51        $current_post_type = isset( $screen->post_type ) ? $screen->post_type : false; 
     52        $search_pt = false; 
    5253 
    53     $pointers = apply_filters( $this->prefix . '-pointerplus_list', array( 
    54         // Pointers are added through the 'initial_pointerplus' filter 
    55         ), $this->prefix ); 
     54        $pointers = apply_filters( 
     55         $this->prefix . '-pointerplus_list', array( 
     56          // Pointers are added through the 'initial_pointerplus' filter 
     57        ), $this->prefix 
     58        ); 
    5659 
    57     foreach ( $pointers as $key => $pointer ) { 
    58     $pointers[ $key ] = wp_parse_args( $pointer, $defaults ); 
    59     $search_pt = false; 
    60     // Clean from null ecc 
    61     $pointers[ $key ][ 'post_type' ] = array_filter( $pointers[ $key ][ 'post_type' ] ); 
    62     if ( !empty( $pointers[ $key ][ 'post_type' ] ) ) { 
    63       if ( !empty( $current_post_type ) ) { 
    64         if ( is_array( $pointers[ $key ][ 'post_type' ] ) ) { 
    65         // Search the post_type 
    66         foreach ( $pointers[ $key ][ 'post_type' ] as $value ) { 
    67           if ( $value === $current_post_type ) { 
    68             $search_pt = true; 
    69           } 
     60        foreach ( $pointers as $key => $pointer ) { 
     61            $pointers[ $key ] = wp_parse_args( $pointer, $defaults ); 
     62            $search_pt = false; 
     63            // Clean from null ecc 
     64            $pointers[ $key ][ 'post_type' ] = array_filter( $pointers[ $key ][ 'post_type' ] ); 
     65            if ( !empty( $pointers[ $key ][ 'post_type' ] ) ) { 
     66                if ( !empty( $current_post_type ) ) { 
     67                    if ( is_array( $pointers[ $key ][ 'post_type' ] ) ) { 
     68                        // Search the post_type 
     69                        foreach ( $pointers[ $key ][ 'post_type' ] as $value ) { 
     70                            if ( $value === $current_post_type ) { 
     71                                $search_pt = true; 
     72                            } 
     73                        } 
     74                        if ( $search_pt === false ) { 
     75                            unset( $pointers[ $key ] ); 
     76                        } 
     77                    } else { 
     78                        new WP_Error( 'broke', __( 'PointerPlus Error: post_type is not an array!' ) ); 
     79                    } 
     80                    // If not in CPT view remove all the pointers with post_type 
     81                } else { 
     82                    unset( $pointers[ $key ] ); 
     83                } 
     84            } 
     85            // Clean from null ecc 
     86            if ( is_array( $pointers[ $key ][ 'pages' ] ) ) { 
     87                $pointers[ $key ][ 'pages' ] = array_filter( $pointers[ $key ][ 'pages' ] ); 
     88            } 
     89            if ( !empty( $pointers[ $key ][ 'pages' ] ) ) { 
     90                if ( is_array( $pointers[ $key ][ 'pages' ] ) ) { 
     91                    // Search the page 
     92                    foreach ( $pointers[ $key ][ 'pages' ] as $value ) { 
     93                        if ( $pagenow === $value ) { 
     94                            $search_pt = true; 
     95                        } 
     96                    } 
     97                    if ( $search_pt === false ) { 
     98                        unset( $pointers[ $key ] ); 
     99                    } 
     100                } else { 
     101                    new WP_Error( 'broke', __( 'PointerPlus Error: pages is not an array!' ) ); 
     102                } 
     103            } 
    70104        } 
    71         if ( $search_pt === false ) { 
    72           unset( $pointers[ $key ] ); 
     105 
     106        return $pointers; 
     107    } 
     108 
     109    /** 
     110     * Check that pointers haven't been dismissed already. If there are pointers to show, enqueue assets. 
     111     * 
     112     * @since 1.0.0 
     113     */ 
     114    function maybe_add_pointers() { 
     115        // Get default pointers that we want to create 
     116        $default_keys = $this->initial_pointers(); 
     117 
     118        // Get pointers dismissed by user 
     119        $dismissed = explode( ',', get_user_meta( get_current_user_id(), 'dismissed_wp_pointers', true ) ); 
     120 
     121        // Check that our pointers haven't been dismissed already 
     122        $diff = array_diff_key( $default_keys, array_combine( $dismissed, $dismissed ) ); 
     123 
     124        // If we have some pointers to show, save them and start enqueuing assets to display them 
     125        if ( !empty( $diff ) ) { 
     126            $this->pointers = $diff; 
     127            add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_assets' ) ); 
     128 
     129            foreach ( $diff as $pointer ) { 
     130                if ( isset( $pointer[ 'phpcode' ] ) ) { 
     131                    add_action( 'admin_notices', $pointer[ 'phpcode' ] ); 
     132                } 
     133            } 
    73134        } 
    74         } else { 
    75         new WP_Error( 'broke', __( 'PointerPlus Error: post_type is not an array!' ) ); 
    76         } 
    77         // If not in CPT view remove all the pointers with post_type 
    78       } else { 
    79         unset( $pointers[ $key ] ); 
    80       } 
     135        $this->pointers[ 'l10n' ] = array( 
     136        'next' => __( 'Next' ), 
     137        ); 
    81138    } 
    82     // Clean from null ecc 
    83     if ( is_array( $pointers[ $key ][ 'pages' ] ) ) { 
    84       $pointers[ $key ][ 'pages' ] = array_filter( $pointers[ $key ][ 'pages' ] ); 
     139 
     140    /** 
     141     * Enqueue pointer styles and scripts to display them. 
     142     * 
     143     * @since 1.0.0 
     144     */ 
     145    function admin_enqueue_assets() { 
     146        $base_url = plugins_url( '', __FILE__ ); 
     147        wp_enqueue_style( $this->prefix, $base_url . '/pointerplus.css', array( 'wp-pointer' ) ); 
     148        wp_enqueue_script( $this->prefix, $base_url . '/pointerplus.js?var=' . str_replace( '-', '_', $this->prefix ) . '_pointerplus', array( 'wp-pointer' ) ); 
     149        wp_localize_script( $this->prefix, str_replace( '-', '_', $this->prefix ) . '_pointerplus', apply_filters( $this->prefix . '_pointerplus_js_vars', $this->pointers ) ); 
    85150    } 
    86     if ( !empty( $pointers[ $key ][ 'pages' ] ) ) { 
    87       if ( is_array( $pointers[ $key ][ 'pages' ] ) ) { 
    88         // Search the page 
    89         foreach ( $pointers[ $key ][ 'pages' ] as $value ) { 
    90         if ( $pagenow === $value ) { 
    91           $search_pt = true; 
     151 
     152    /** 
     153     * Reset pointer 
     154     * 
     155     * @since 1.0.0 
     156     */ 
     157    function reset_pointer() { 
     158        add_action( 'current_screen', array( $this, '_reset_pointer' ), 0 ); 
     159    } 
     160 
     161    /** 
     162     * Reset pointer in hook 
     163     * 
     164     * @since 1.0.0 
     165     */ 
     166    function _reset_pointer( $id = 'me' ) { 
     167        if ( $id === 'me' ) { 
     168            $id = get_current_user_id(); 
    92169        } 
    93         } 
    94         if ( $search_pt === false ) { 
    95         unset( $pointers[ $key ] ); 
    96         } 
    97       } else { 
    98         new WP_Error( 'broke', __( 'PointerPlus Error: pages is not an array!' ) ); 
    99       } 
     170        $pointers = explode( ',', get_user_meta( $id, 'dismissed_wp_pointers', true ) ); 
     171        foreach ( $pointers as $key => $pointer ) { 
     172            if ( strpos( $pointer, $this->prefix ) === 0 ) { 
     173                unset( $pointers[ $key ] ); 
     174            } 
     175        } 
     176        $meta = implode( ',', $pointers ); 
     177 
     178        update_user_meta( get_current_user_id(), 'dismissed_wp_pointers', $meta ); 
    100179    } 
    101     } 
    102  
    103     return $pointers; 
    104   } 
    105  
    106   /** 
    107    * Check that pointers haven't been dismissed already. If there are pointers to show, enqueue assets. 
    108    *  
    109    * @since 1.0.0 
    110    */ 
    111   function maybe_add_pointers() { 
    112     // Get default pointers that we want to create 
    113     $default_keys = $this->initial_pointers(); 
    114  
    115     // Get pointers dismissed by user 
    116     $dismissed = explode( ',', get_user_meta( get_current_user_id(), 'dismissed_wp_pointers', true ) ); 
    117  
    118     // Check that our pointers haven't been dismissed already 
    119     $diff = array_diff_key( $default_keys, array_combine( $dismissed, $dismissed ) ); 
    120  
    121     // If we have some pointers to show, save them and start enqueuing assets to display them 
    122     if ( !empty( $diff ) ) { 
    123     $this->pointers = $diff; 
    124     add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_assets' ) ); 
    125  
    126     foreach ( $diff as $pointer ) { 
    127       if ( isset( $pointer[ 'phpcode' ] ) ) { 
    128         add_action( 'admin_notices', $pointer[ 'phpcode' ] ); 
    129       } 
    130     } 
    131     } 
    132     $this->pointers[ 'l10n' ] = array( 'next' => __( 'Next' ) ); 
    133   } 
    134  
    135   /** 
    136    * Enqueue pointer styles and scripts to display them. 
    137    * 
    138    * @since 1.0.0 
    139    */ 
    140   function admin_enqueue_assets() { 
    141     $base_url = plugins_url( '', __FILE__ ); 
    142     wp_enqueue_style( $this->prefix, $base_url . '/pointerplus.css', array( 'wp-pointer' ) ); 
    143     wp_enqueue_script( $this->prefix, $base_url . '/pointerplus.js?var=' . str_replace( '-', '_', $this->prefix ) . '_pointerplus', array( 'wp-pointer' ) ); 
    144     wp_localize_script( $this->prefix, str_replace( '-', '_', $this->prefix ) . '_pointerplus', apply_filters( $this->prefix . '_pointerplus_js_vars', $this->pointers ) ); 
    145   } 
    146  
    147   /** 
    148    * Reset pointer 
    149    * 
    150    * @since 1.0.0 
    151    */ 
    152   function reset_pointer() { 
    153     add_action( 'current_screen', array( $this, '_reset_pointer' ), 0 ); 
    154   } 
    155  
    156   /** 
    157    * Reset pointer in hook 
    158    * 
    159    * @since 1.0.0 
    160    */ 
    161   function _reset_pointer( $id = 'me' ) { 
    162     if ( $id === 'me' ) { 
    163     $id = get_current_user_id(); 
    164     } 
    165     $pointers = explode( ',', get_user_meta( $id, 'dismissed_wp_pointers', true ) ); 
    166     foreach ( $pointers as $key => $pointer ) { 
    167     if ( strpos( $pointer, $this->prefix ) === 0 ) { 
    168       unset( $pointers[ $key ] ); 
    169     } 
    170     } 
    171     $meta = implode( ',', $pointers ); 
    172  
    173     update_user_meta( get_current_user_id(), 'dismissed_wp_pointers', $meta ); 
    174   } 
    175180 
    176181} 
  • woo-fiscalita-italiana/trunk/admin/includes/WFI_CMB.php

    r1571347 r1728549  
    3636    /** 
    3737     * Alert WFI updates 
    38      *  
     38     * 
    3939     * @param integer $object_id Object ID. 
    4040     * @param integer $cmb_id    CMB metabox ID. 
    4141     * @param object  $updated   Object. 
    4242     * @param object  $object    Object. 
    43      *  
     43     * 
    4444     * @return void 
    4545     */ 
     
    5757    /** 
    5858     * User fields in the backend profile 
     59     * 
    5960     * @return void 
    6061     */ 
    6162    public function user_profile_fields() { 
    62         $cmb = new_cmb2_box( array( 
     63        $cmb = new_cmb2_box( 
     64             array( 
    6365            'id' => WFI_TEXTDOMAIN . '_profile_metabox', 
    6466            'object_types' => array( 'user' ), 
    6567            'show_names' => true, 
    66             'new_user_section' => 'add-new-user' 
    67                 ) ); 
     68            'new_user_section' => 'add-new-user', 
     69                ) 
     70            ); 
    6871 
    69         $cmb->add_field( array( 
     72        $cmb->add_field( 
     73             array( 
    7074            'name' => esc_html__( 'VAT', WFI_TEXTDOMAIN ), 
    7175            'id' => 'piva', 
    7276            'type' => 'text', 
    73         ) ); 
     77        ) 
     78            ); 
    7479 
    75         $cmb->add_field( array( 
     80        $cmb->add_field( 
     81             array( 
    7682            'name' => esc_html__( 'SSN', WFI_TEXTDOMAIN ), 
    7783            'id' => 'cf', 
    7884            'type' => 'text', 
    79         ) ); 
     85        ) 
     86            ); 
    8087    } 
    8188 
  • woo-fiscalita-italiana/trunk/admin/includes/WFI_ImpExp.php

    r1698250 r1728549  
    33/** 
    44 * Woo Fiscalità Italiana 
    5  *  
     5 * 
    66 * @package   Woo_Fiscalita_Italiana 
    77 * @author    Mte90 <mte90net@gmail.com> 
     
    3131    /** 
    3232     * Process a settings export from config 
    33      *  
     33     * 
    3434     * @since 1.0.0 
    35      *  
     35     * 
    3636     * @return void 
    3737     */ 
     
    5858        header( 'Content-Type: application/json; charset=utf-8' ); 
    5959        header( 'Content-Disposition: attachment; filename=wfi-settings-export-' . date( 'm-d-Y' ) . '.json' ); 
    60         header( "Expires: 0" ); 
     60        header( 'Expires: 0' ); 
    6161        if ( version_compare( PHP_VERSION, '5.4.0', '>=' ) ) { 
    6262            echo wp_json_encode( $settings, JSON_PRETTY_PRINT ); 
     
    6969    /** 
    7070     * Process a settings import from a json file 
    71      *  
     71     * 
    7272     * @since 1.0.0 
    73      *  
     73     * 
    7474     * @return void 
    7575     */ 
     
    100100 
    101101        // Retrieve the settings from the file and convert the json object to an array. 
    102         $settings = ( array ) json_decode( file_get_contents( $import_file ) ); 
     102        $settings = (array) json_decode( file_get_contents( $import_file ) ); 
    103103 
    104104        update_option( WFI_TEXTDOMAIN . '', get_object_vars( $settings[ 0 ] ) ); 
  • woo-fiscalita-italiana/trunk/admin/includes/WFI_Status/WFI_PDF_Terms.php

    r1630216 r1728549  
    1616class WFI_PDF_Terms { 
    1717 
    18   /** 
    19    * Initialize the plugin 
    20    * 
    21    * @since 1.0.0 
    22    */ 
    23   public function __construct() { 
    24     // DOMPDF initialization 
    25     require_once( plugin_dir_path( __FILE__ ) . '../../../includes/vendor/autoload.php' ); 
    26     define( 'DOMPDF_ENABLE_AUTOLOAD', false ); 
    27     require plugin_dir_path( __FILE__ ) . '../../../includes/vendor/dompdf/dompdf/dompdf_config.inc.php'; 
    28     require_once(plugin_dir_path( __FILE__ ) . '../../../includes/vendor/dompdf/dompdf/include/autoload.inc.php'); 
    29     // Create the folder for the file of the plugins 
    30     $this->path = get_wfi_folder(); 
    31     wp_mkdir_p( $this->path ); 
    32   } 
     18    /** 
     19     * Initialize the plugin 
     20     * 
     21     * @since 1.0.0 
     22     */ 
     23    public function __construct() { 
     24        // DOMPDF initialization 
     25        require_once( plugin_dir_path( __FILE__ ) . '../../../includes/vendor/autoload.php' ); 
     26        define( 'DOMPDF_ENABLE_AUTOLOAD', false ); 
     27        require plugin_dir_path( __FILE__ ) . '../../../includes/vendor/dompdf/dompdf/dompdf_config.inc.php'; 
     28        require_once( plugin_dir_path( __FILE__ ) . '../../../includes/vendor/dompdf/dompdf/include/autoload.inc.php' ); 
     29        // Create the folder for the file of the plugins 
     30        $this->path = get_wfi_folder(); 
     31        wp_mkdir_p( $this->path ); 
     32    } 
    3333 
    34   /** 
    35    * Generate the term page 
    36    *  
    37    * @return void 
    38    */ 
    39   public function generated_terms() { 
    40     // Extract the text of terms & conditions 
    41     $terms_id = wc_get_page_id( 'terms' ); 
    42     if ( !empty( $terms_id ) ) { 
    43       if ( function_exists( 'icl_get_languages' ) ) { 
    44         $languages = icl_get_languages( 'skip_missing=1' ); 
    45         if ( 1 < count( $languages ) ) { 
    46           foreach ( $languages as $l ) { 
    47             $post = get_post( icl_object_id( $terms_id, 'page', false, $l[ 'language_code' ] ) ); 
    48             $this->generate_term( $post, $l[ 'language_code' ] ); 
    49           } 
    50         } 
    51       } else { 
    52         $post = get_post( $terms_id ); 
    53         $this->generate_term( $post ); 
    54       } 
    55       new WP_Admin_Notice( __( 'Terms and Conditions pdf successfully updated!', WFI_TEXTDOMAIN ), 'updated' ); 
    56     } else { 
    57       new WP_Admin_Notice( __( 'The page Terms and Conditions is not set in WooCommerce!', WFI_TEXTDOMAIN ), 'error' ); 
    58     } 
    59   } 
     34    /** 
     35     * Generate the term page 
     36     * 
     37     * @return void 
     38     */ 
     39    public function generated_terms() { 
     40        // Extract the text of terms & conditions 
     41        $terms_id = wc_get_page_id( 'terms' ); 
     42        if ( !empty( $terms_id ) ) { 
     43            if ( function_exists( 'icl_get_languages' ) ) { 
     44                $languages = icl_get_languages( 'skip_missing=1' ); 
     45                if ( 1 < count( $languages ) ) { 
     46                    foreach ( $languages as $l ) { 
     47                        $post = get_post( icl_object_id( $terms_id, 'page', false, $l[ 'language_code' ] ) ); 
     48                        $this->generate_term( $post, $l[ 'language_code' ] ); 
     49                    } 
     50                } 
     51            } else { 
     52                $post = get_post( $terms_id ); 
     53                $this->generate_term( $post ); 
     54            } 
     55            new WP_Admin_Notice( __( 'Terms and Conditions pdf successfully updated!', WFI_TEXTDOMAIN ), 'updated' ); 
     56        } else { 
     57            new WP_Admin_Notice( __( 'The page Terms and Conditions is not set in WooCommerce!', WFI_TEXTDOMAIN ), 'error' ); 
     58        } 
     59    } 
    6060 
    61   /** 
    62    * Generate the html content 
    63    *  
    64    * @param object $post Post object. 
    65    * @param string $lng  Language. 
    66    *  
    67    * @return void 
    68    */ 
    69   public function generate_term( $post, $lng = '' ) { 
    70     $content = '<h1>' . $post->post_title . '</h1>'; 
    71     $content .= apply_filters( 'the_content', $post->post_content ); 
    72     $content .= '<br>'; 
    73     if ( !empty( get_site_vat() ) ) { 
    74       $content .= __( 'Tax VAT', WFI_TEXTDOMAIN ) . get_site_vat() . ' - '; 
    75     } 
    76     if ( !empty( get_site_fc() ) ) { 
    77       $content .= __( 'SSN', WFI_TEXTDOMAIN ) . get_site_fc() . ' - '; 
    78     } 
    79     $content .=  get_bloginfo( 'name' ) . get_site_address(). get_site_phone(); 
    80     $content .=  ' - ' . get_option( 'admin_email' ) . ' - '. get_site_url(); 
    81     // Generate the pdf 
    82     $dompdf = new DOMPDF(); 
    83     $dompdf->load_html( $content ); 
    84     $dompdf->set_paper( 'A4', 'potrait' ); 
    85     $dompdf->render(); 
    86     if ( empty( $lng ) ) { 
    87       $lng = strtolower( get_locale() ); 
    88     } 
    89     file_put_contents( $this->path . '/terms-' . $lng . '.pdf', $dompdf->output() ); 
    90   } 
     61    /** 
     62     * Generate the html content 
     63     * 
     64     * @param object $post Post object. 
     65     * @param string $lng  Language. 
     66     * 
     67     * @return void 
     68     */ 
     69    public function generate_term( $post, $lng = '' ) { 
     70        $content = '<h1>' . $post->post_title . '</h1>'; 
     71        $content .= apply_filters( 'the_content', $post->post_content ); 
     72        $content .= '<br>'; 
     73        if ( !empty( get_site_vat() ) ) { 
     74            $content .= __( 'Tax VAT', WFI_TEXTDOMAIN ) . get_site_vat() . ' - '; 
     75        } 
     76        if ( !empty( get_site_fc() ) ) { 
     77            $content .= __( 'SSN', WFI_TEXTDOMAIN ) . get_site_fc() . ' - '; 
     78        } 
     79        $content .= get_bloginfo( 'name' ) . get_site_address() . get_site_phone(); 
     80        $content .= ' - ' . get_option( 'admin_email' ) . ' - ' . get_site_url(); 
     81        // Generate the pdf 
     82        $dompdf = new DOMPDF(); 
     83        $dompdf->load_html( $content ); 
     84        $dompdf->set_paper( 'A4', 'potrait' ); 
     85        $dompdf->render(); 
     86        if ( empty( $lng ) ) { 
     87            $lng = strtolower( get_locale() ); 
     88        } 
     89        file_put_contents( $this->path . '/terms-' . $lng . '.pdf', $dompdf->output() ); 
     90    } 
    9191 
    9292} 
  • woo-fiscalita-italiana/trunk/admin/includes/WFI_Status/WFI_Pages.php

    r1541903 r1728549  
    1919class WFI_Pages { 
    2020 
    21   /** 
    22    * Initialize the plugin 
    23    * 
    24    * @since     1.0.0 
    25    */ 
    26   public function __construct() { 
    27   } 
     21    /** 
     22     * Initialize the plugin 
     23     * 
     24     * @since     1.0.0 
     25     */ 
     26    public function __construct() { 
     27    } 
    2828 
    29   /** 
    30    * Create woocommerce pages 
    31    */ 
    32   public function create_woo_pages() { 
    33     wc_create_page( __( 'shipping-methods', WFI_VERSION ), 'woocommerce_shipping_methods_page_id', __( 'Shipping Methods', WFI_VERSION ), '[wfi_shipping_methods]' ); 
    34     wc_create_page( __( 'payment-methods', WFI_VERSION ), 'woocommerce_payment_methods_page_id', __( 'Payment Methods', WFI_VERSION ), '[wfi_payment_methods]' ); 
    35     new WP_Admin_Notice( __( 'Payment and Shipping methods page successfull created!', WFI_VERSION ), 'updated' ); 
    36   } 
     29    /** 
     30     * Create woocommerce pages 
     31     */ 
     32    public function create_woo_pages() { 
     33        wc_create_page( __( 'shipping-methods', WFI_VERSION ), 'woocommerce_shipping_methods_page_id', __( 'Shipping Methods', WFI_VERSION ), '[wfi_shipping_methods]' ); 
     34        wc_create_page( __( 'payment-methods', WFI_VERSION ), 'woocommerce_payment_methods_page_id', __( 'Payment Methods', WFI_VERSION ), '[wfi_payment_methods]' ); 
     35        new WP_Admin_Notice( __( 'Payment and Shipping methods page successfull created!', WFI_VERSION ), 'updated' ); 
     36    } 
    3737} 
  • woo-fiscalita-italiana/trunk/admin/includes/WFI_System_Check.php

    r1630216 r1728549  
    1919     * 
    2020     * @since 1.0.0 
    21      *  
     21     * 
    2222     * @return void 
    2323     */ 
     
    2929    /** 
    3030     * Generate the box with the status 
    31      *  
     31     * 
    3232     * @return void 
    3333     */ 
     
    6868    /** 
    6969     * Detect the function and print the status for the panel 
    70      *  
     70     * 
    7171     * @param number $id      ID. 
    7272     * @param string $name    Text. 
    7373     * @param string $tooltip The tooltip text. 
    74      *  
     74     * 
    7575     * @return void 
    7676     */ 
     
    125125                    $valid = 'success'; 
    126126                    $name .= ' WooCommerce PDF Invoices & Packing Slips'; 
     127                } elseif ( function_exists( 'yith_ywpi_init' ) ) { 
     128                    $valid = 'success'; 
     129                    $name .= ' YITH WooCommerce PDF Invoice and Shipping List'; 
    127130                } else { 
    128                      
    129                     if ( function_exists( 'yith_ywpi_init' ) ) { 
    130                         $valid = 'success'; 
    131                         $name .= ' YITH WooCommerce PDF Invoice and Shipping List'; 
    132                     } else { 
    133                         $name .= __( 'Nothing', WFI_TEXTDOMAIN ); 
    134                     } 
    135                  
     131                    $name .= __( 'Nothing', WFI_TEXTDOMAIN ); 
    136132                } 
    137133                 
     
    169165    /** 
    170166     * Print the status 
    171      *  
     167     * 
    172168     * @param array $args The attribute. 
    173      *  
     169     * 
    174170     * @return void 
    175171     */ 
     
    184180    /** 
    185181     * List of status detection required 
    186      *  
     182     * 
    187183     * @return array 
    188184     */ 
     
    228224    /** 
    229225     * List of status detection required 
    230      *  
     226     * 
    231227     * @return array 
    232228     */ 
     
    252248    /** 
    253249     * Print a button 
    254      *  
     250     * 
    255251     * @param number $id   ID. 
    256252     * @param string $name Text. 
    257      *  
     253     * 
    258254     * @return void 
    259255     */ 
     
    265261    /** 
    266262     * List of action button 
    267      *  
     263     * 
    268264     * @return array 
    269265     */ 
  • woo-fiscalita-italiana/trunk/admin/includes/WP-Admin-Notice/WP_Admin_Notice.php

    r1445612 r1728549  
    55    public $message = ''; 
    66 
    7     function __construct( $message, $class = 'updated' ){ 
     7    function __construct( $message, $class = 'updated' ) { 
    88        $this->class = $class; 
    99        $this->message = $message; 
     
    1212    } 
    1313 
    14     function output(){ 
    15         echo '<div class="message ' . $this->class .'"><p>' . $this->message . '</p></div>'; 
     14    function output() { 
     15        echo '<div class="message ' . $this->class . '"><p>' . $this->message . '</p></div>'; 
    1616    } 
    1717} 
  • woo-fiscalita-italiana/trunk/admin/includes/review.php

    r1698250 r1728549  
    226226            } 
    227227 
    228             dnh_register_notice( $this->key, 'updated', $this->get_message(), array( 
     228            dnh_register_notice( 
     229                 $this->key, 'updated', $this->get_message(), array( 
    229230                'scope' => $this->scope, 
    230                 'cap'   => $this->cap 
    231             ) ); 
     231                'cap'   => $this->cap, 
     232            ) 
     233                ); 
    232234 
    233235        } 
     
    239241         * @return void 
    240242         */ 
    241         public function script() { ?> 
     243        public function script() { 
     244    ?> 
    242245 
    243246            <script> 
     
    264267            </script> 
    265268 
    266         <?php } 
     269        <?php 
     270        } 
    267271 
    268272        /** 
     
    294298            $notice_id = DNH()->get_id( str_replace( 'wrm-review-link-', '', $id ) ); 
    295299            $dismissed = DNH()->dismiss_notice( $notice_id ); 
    296              
     300 
    297301            echo $dismissed; 
    298302 
  • woo-fiscalita-italiana/trunk/codeat.xml

    r1724382 r1728549  
    1111        <exclude-pattern>CMB2</exclude-pattern> 
    1212 
    13     <!-- https://github.com/CodeAtCode/PHPDoc-for-PHPCS-PHPCBF/ --> 
    14     <rule ref="PHPDoc"/> 
     13    <!-- Include some specific sniffs --> 
     14    <rule ref="Generic.CodeAnalysis.EmptyStatement"/> 
     15    <rule ref="Generic.Commenting.Todo"/> 
     16    <rule ref="Generic.Commenting.DocComment"/> 
     17    <rule ref="Generic.Commenting.DocComment.TagValueIndent"/> 
     18    <rule ref="Generic.Commenting.DocComment.ParamNotFirst"/> 
     19    <rule ref="Generic.Commenting.DocComment.ParamGroup"/> 
     20    <rule ref="Generic.Commenting.DocComment.NonParamGroup"/> 
     21    <rule ref="Generic.Commenting.DocComment.TagsNotGrouped"/> 
     22    <rule ref="Generic.Commenting.DocComment.ContentAfterOpen"/> 
     23    <rule ref="Generic.Commenting.DocComment.SpacingBeforeShort"/> 
     24    <rule ref="Generic.Commenting.DocComment.ContentBeforeClose"/> 
     25 
     26        <rule ref="Squiz.Commenting"> 
     27            <exclude name="Squiz.Commenting.FileComment.WrongStyle" /> 
     28            <exclude name="Squiz.Commenting.FileComment.SpacingAfterOpen" /> 
     29            <exclude name="Squiz.Commenting.PostStatementComment.Found" /> 
     30            <exclude name="Squiz.PHP.DisallowMultipleAssignments.Found" /> 
     31            <exclude name="Squiz.Commenting.LongConditionClosingComment.Missing" /> 
     32            <exclude name="Squiz.Commenting.LongConditionClosingComment.Invalid" /> 
     33            <exclude name="Squiz.Commenting.FunctionComment.Missing" /> 
     34        </rule> 
     35 
     36        <rule ref="PEAR.NamingConventions"> 
     37            <exclude name="PEAR.NamingConventions.ValidClassName.Invalid" /> 
     38        </rule> 
     39        <rule ref="PEAR.NamingConventions.ValidFunctionName"> 
     40            <exclude name="PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps" /> 
     41            <exclude name="PEAR.NamingConventions.ValidFunctionName.NotCamelCaps" /> 
     42        </rule> 
    1543 
    1644    <!-- https://github.com/wimg/PHPCompatibility/ --> 
  • woo-fiscalita-italiana/trunk/includes/functions.php

    r1724382 r1728549  
    422422        $attr['user_id'] = $order->get_user_id(); 
    423423        $attr['user_email'] = $order->get_billing_email(); 
    424         $attr['order_note'] = implode( ',', $order->get_customer_order_notes() ); 
     424        $comment = ''; 
     425        if ( isset( $order->get_customer_order_notes()[0] ) ) { 
     426            $comment = $order->get_customer_order_notes()[0]->comment_content; 
     427        } 
     428        $attr['order_note'] = $comment; 
    425429        $attr['user_registered'] = get_user_by( 'email', $order->get_billing_email() ); 
    426430        $attr['transaction'] = $order->get_transaction_id(); 
  • woo-fiscalita-italiana/trunk/public/class-woo-fiscalita-italiana.php

    r1578087 r1728549  
    66 * @package   Woo_Fiscalita_Italiana 
    77 * @author    Codeat <support@codeat.co> 
    8  * @copyright 2016  
     8 * @copyright 2016 
    99 * @license   GPL-2.0+ 
    1010 * @link      http://codeat.co 
  • woo-fiscalita-italiana/trunk/public/includes/WFI_ActDeact.php

    r1541903 r1728549  
    88 * @license   GPL-2.0+ 
    99 * @link      http://codeat.co 
    10  * @copyright 2016  
     10 * @copyright 2016 
    1111 */ 
    1212class WFI_ActDeact { 
    1313 
    14   /** 
    15    * Initialize the Act/Deact 
    16    */ 
    17   function __construct() { 
    18     // Activate plugin when new blog is added 
    19     add_action( 'wpmu_new_blog', array( $this, 'activate_new_site' ) ); 
    20   } 
     14    /** 
     15     * Initialize the Act/Deact 
     16     */ 
     17    function __construct() { 
     18        // Activate plugin when new blog is added 
     19        add_action( 'wpmu_new_blog', array( $this, 'activate_new_site' ) ); 
     20    } 
    2121 
    22   /** 
    23    * Fired when the plugin is activated. 
    24    * 
    25    * @since    1.0.0 
    26    * 
    27    * @param boolean $network_wide True if active in a multiste, false if classic site. 
    28    *  
    29    * @return void 
    30    */ 
    31   public static function activate( $network_wide ) { 
    32     if ( function_exists( 'is_multisite' ) && is_multisite() ) { 
    33       if ( $network_wide ) { 
    34         // Get all blog ids 
    35         $blog_ids = self::get_blog_ids(); 
    36         foreach ( $blog_ids as $blog_id ) { 
    37           switch_to_blog( $blog_id ); 
    38           self::single_activate(); 
    39           restore_current_blog(); 
    40         } 
    41       } else { 
    42         self::single_activate(); 
    43       } 
    44     } else { 
    45       self::single_activate(); 
    46     } 
    47   } 
     22    /** 
     23     * Fired when the plugin is activated. 
     24     * 
     25     * @since    1.0.0 
     26     * 
     27     * @param boolean $network_wide True if active in a multiste, false if classic site. 
     28     * 
     29     * @return void 
     30     */ 
     31    public static function activate( $network_wide ) { 
     32        if ( function_exists( 'is_multisite' ) && is_multisite() ) { 
     33            if ( $network_wide ) { 
     34                // Get all blog ids 
     35                $blog_ids = self::get_blog_ids(); 
     36                foreach ( $blog_ids as $blog_id ) { 
     37                    switch_to_blog( $blog_id ); 
     38                    self::single_activate(); 
     39                    restore_current_blog(); 
     40                } 
     41            } else { 
     42                self::single_activate(); 
     43            } 
     44        } else { 
     45            self::single_activate(); 
     46        } 
     47    } 
    4848 
    49   /** 
    50    * Fired when the plugin is deactivated. 
    51    * 
    52    * @since    1.0.0 
    53    * 
    54    * @param boolean $network_wide True if WPMU superadmin uses 
    55    *                              "Network Deactivate" action, false if 
    56    *                              WPMU is disabled or plugin is 
    57    *                              deactivated on an individual blog. 
    58    *  
    59    * @return void 
    60    */ 
    61   public static function deactivate( $network_wide ) { 
    62     if ( function_exists( 'is_multisite' ) && is_multisite() ) { 
    63       if ( $network_wide ) { 
    64         // Get all blog ids 
    65         $blog_ids = self::get_blog_ids(); 
    66         foreach ( $blog_ids as $blog_id ) { 
    67           switch_to_blog( $blog_id ); 
    68           self::single_deactivate(); 
    69           restore_current_blog(); 
    70         } 
    71       } else { 
    72         self::single_deactivate(); 
    73       } 
    74     } else { 
    75       self::single_deactivate(); 
    76     } 
    77   } 
     49    /** 
     50     * Fired when the plugin is deactivated. 
     51     * 
     52     * @since    1.0.0 
     53     * 
     54     * @param boolean $network_wide True if WPMU superadmin uses 
     55     *                              "Network Deactivate" action, false if 
     56     *                              WPMU is disabled or plugin is 
     57     *                              deactivated on an individual blog. 
     58     * 
     59     * @return void 
     60     */ 
     61    public static function deactivate( $network_wide ) { 
     62        if ( function_exists( 'is_multisite' ) && is_multisite() ) { 
     63            if ( $network_wide ) { 
     64                // Get all blog ids 
     65                $blog_ids = self::get_blog_ids(); 
     66                foreach ( $blog_ids as $blog_id ) { 
     67                    switch_to_blog( $blog_id ); 
     68                    self::single_deactivate(); 
     69                    restore_current_blog(); 
     70                } 
     71            } else { 
     72                self::single_deactivate(); 
     73            } 
     74        } else { 
     75            self::single_deactivate(); 
     76        } 
     77    } 
    7878 
    79   /** 
    80    * Fired when a new site is activated with a WPMU environment. 
    81    * 
    82    * @since    1.0.0 
    83    * 
    84    * @param integer $blog_id ID of the new blog. 
    85    *  
    86    * @return void 
    87    */ 
    88   public function activate_new_site( $blog_id ) { 
    89     if ( 1 !== did_action( 'wpmu_new_blog' ) ) { 
    90       return; 
    91     } 
     79    /** 
     80     * Fired when a new site is activated with a WPMU environment. 
     81     * 
     82     * @since    1.0.0 
     83     * 
     84     * @param integer $blog_id ID of the new blog. 
     85     * 
     86     * @return void 
     87     */ 
     88    public function activate_new_site( $blog_id ) { 
     89        if ( 1 !== did_action( 'wpmu_new_blog' ) ) { 
     90            return; 
     91        } 
    9292 
    93     switch_to_blog( $blog_id ); 
    94     self::single_activate(); 
    95     restore_current_blog(); 
    96   } 
     93        switch_to_blog( $blog_id ); 
     94        self::single_activate(); 
     95        restore_current_blog(); 
     96    } 
    9797 
    98   /** 
    99    * Get all blog ids of blogs in the current network that are: 
    100    * - not archived 
    101    * - not spam 
    102    * - not deleted 
    103    * 
    104    * @since    1.0.0 
    105    * 
    106    * @return array|false The blog ids, false if no matches. 
    107    */ 
    108   private static function get_blog_ids() { 
    109     global $wpdb; 
     98    /** 
     99     * Get all blog ids of blogs in the current network that are: 
     100     * - not archived 
     101     * - not spam 
     102     * - not deleted 
     103     * 
     104     * @since    1.0.0 
     105     * 
     106     * @return array|false The blog ids, false if no matches. 
     107     */ 
     108    private static function get_blog_ids() { 
     109        global $wpdb; 
    110110 
    111     // Get an array of blog ids 
    112     $sql = 'SELECT blog_id FROM ' . $wpdb->blogs . 
     111        // Get an array of blog ids 
     112        $sql = 'SELECT blog_id FROM ' . $wpdb->blogs . 
    113113            " WHERE archived = '0' AND spam = '0' 
    114114            AND deleted = '0'"; 
    115115 
    116     return $wpdb->get_col( $sql ); 
    117   } 
     116        return $wpdb->get_col( $sql ); 
     117    } 
    118118 
    119   /** 
    120    * Fired for each blog when the plugin is activated. 
    121    * 
    122    * @since    1.0.0 
    123    * @return void 
    124    */ 
    125   private static function single_activate() { 
    126     if ( !WC_Tax::find_rates( array( 'country' => 'IT' ) ) ) { 
    127       $tax_rate = array( 
    128           'tax_rate_country' => 'IT', 
    129           'tax_rate_state' => '', 
    130           'tax_rate' => '22', 
    131           'tax_rate_name' => __( 'Tax', WFI_TEXTDOMAIN ), 
    132           'tax_rate_priority' => 1, 
    133           'tax_rate_compound' => 0, 
    134           'tax_rate_shipping' => 1, 
    135           'tax_rate_order' => 0, 
    136           'tax_rate_class' => '' 
    137       ); 
     119    /** 
     120     * Fired for each blog when the plugin is activated. 
     121     * 
     122     * @since    1.0.0 
     123     * @return void 
     124     */ 
     125    private static function single_activate() { 
     126        if ( !WC_Tax::find_rates( 
     127           array( 
     128        'country' => 'IT', 
     129        ) 
     130          ) ) { 
     131            $tax_rate = array( 
     132            'tax_rate_country' => 'IT', 
     133            'tax_rate_state' => '', 
     134            'tax_rate' => '22', 
     135            'tax_rate_name' => __( 'Tax', WFI_TEXTDOMAIN ), 
     136            'tax_rate_priority' => 1, 
     137            'tax_rate_compound' => 0, 
     138            'tax_rate_shipping' => 1, 
     139            'tax_rate_order' => 0, 
     140            'tax_rate_class' => '', 
     141            ); 
    138142 
    139       WC_Tax::_insert_tax_rate( $tax_rate ); 
    140     }     
    141   } 
     143            WC_Tax::_insert_tax_rate( $tax_rate ); 
     144        } 
     145    } 
    142146 
    143   /** 
    144    * Fired for each blog when the plugin is deactivated. 
    145    * 
    146    * @since    1.0.0 
    147    * @return void 
    148    */ 
    149   private static function single_deactivate() { 
    150     wp_clear_scheduled_hook( 'wfi_eu_vat_sync' ); 
    151   } 
     147    /** 
     148     * Fired for each blog when the plugin is deactivated. 
     149     * 
     150     * @since    1.0.0 
     151     * @return void 
     152     */ 
     153    private static function single_deactivate() { 
     154        wp_clear_scheduled_hook( 'wfi_eu_vat_sync' ); 
     155    } 
    152156 
    153157} 
  • woo-fiscalita-italiana/trunk/public/includes/WFI_Email.php

    r1724382 r1728549  
    2424        $this->settings = get_wfi_settings(); 
    2525        // add_filter( 'woocommerce_email_footer_text', array( $this, 'add_terms' ), 10, 9999 ); 
    26  
    2726        if ( empty( $this->settings[ 'no_terms' ] ) ) { 
    2827            add_filter( 'woocommerce_email_attachments', array( $this, 'attach_terms' ), 10, 3 ); 
     
    3231    /** 
    3332     * Add the link 
    34      *  
     33     * 
    3534     * @param string $text The footer. 
    36      *  
     35     * 
    3736     * @return string 
    3837     */ 
     
    4342    /** 
    4443     * Attach the terms pdf in all the emails 
    45      *  
     44     * 
    4645     * @param array   $attachments Attachments. 
    4746     * @param integer $id          ID. 
    4847     * @param array   $object      Post object. 
    49      *  
     48     * 
    5049     * @return array 
    5150     */ 
  • woo-fiscalita-italiana/trunk/public/includes/WFI_Order_User_Info.php

    r1693971 r1728549  
    3232    /** 
    3333     * Show VAT and SSN to order in bemail 
    34      *  
     34     * 
    3535     * @param array $fields        Fields for user area.. 
    3636     * @param array $sent_to_admin Is admin?.. 
    3737     * @param array $order         Order object. 
    38      *  
     38     * 
    3939     * @return array 
    4040     */ 
     
    4545                $args[ 'vat' ] = __( 'Missing Data', WFI_TEXTDOMAIN ); 
    4646            } 
    47             $fields[] = array( 'label' => __( 'Tax VAT', WFI_TEXTDOMAIN ), 'value' => $args[ 'vat' ] ); 
     47            $fields[] = array( 
     48            'label' => __( 'Tax VAT', WFI_TEXTDOMAIN ), 
     49            'value' => $args[ 'vat' ], 
     50            ); 
    4851        } 
    4952        if ( empty( $args[ 'ssn' ] ) ) { 
    5053            $args[ 'ssn' ] = __( 'Missing Data', WFI_TEXTDOMAIN ); 
    5154        } 
    52         $fields[] = array( 'label' => __( 'SSN', WFI_TEXTDOMAIN ), 'value' => $args[ 'ssn' ] ); 
     55        $fields[] = array( 
     56        'label' => __( 'SSN', WFI_TEXTDOMAIN ), 
     57        'value' => $args[ 'ssn' ], 
     58        ); 
    5359        return $fields; 
    5460    } 
     
    5662    /** 
    5763     * Show VAT and SSN to order in backend 
    58      *  
     64     * 
    5965     * @param integer $order Order. 
    60      *  
     66     * 
    6167     * @return void 
    6268     */ 
     
    7985    /** 
    8086     * Print the italian law quote to not use taxation for country where is not configured a tax. 
    81      *  
     87     * 
    8288     * @param integer $order_id Order ID. 
    83      *  
     89     * 
    8490     * @return boolean 
    8591     */ 
  • woo-fiscalita-italiana/trunk/public/includes/WFI_Shipping_SamePC.php

    r1596496 r1728549  
    1616class WFI_Shipping_SamePC { 
    1717 
    18   /** 
    19    * Initialize the plugin by setting localization and loading public scripts 
    20    * and styles. 
    21    * 
    22    * @since 1.0.0 
    23    */ 
    24   public function __construct() { 
    25     add_action( 'woocommerce_proceed_to_checkout', array( $this, 'alert_for_samecap' ) ); 
    26     add_filter( 'woocommerce_update_order_review_fragments', array( $this, 'filter_alert_for_samecap' ) ); 
    27     add_action( 'woocommerce_cart_calculate_fees', array( $this, 'same_cap_free_retirement' ) ); 
    28     // AJAX reload 
    29     add_action( 'woocommerce_checkout_order_review', array( $this, 'alert_for_samecap' ) ); 
    30   } 
     18    /** 
     19     * Initialize the plugin by setting localization and loading public scripts 
     20     * and styles. 
     21     * 
     22     * @since 1.0.0 
     23     */ 
     24    public function __construct() { 
     25        add_action( 'woocommerce_proceed_to_checkout', array( $this, 'alert_for_samecap' ) ); 
     26        add_filter( 'woocommerce_update_order_review_fragments', array( $this, 'filter_alert_for_samecap' ) ); 
     27        add_action( 'woocommerce_cart_calculate_fees', array( $this, 'same_cap_free_retirement' ) ); 
     28        // AJAX reload 
     29        add_action( 'woocommerce_checkout_order_review', array( $this, 'alert_for_samecap' ) ); 
     30    } 
    3131 
    32   /** 
    33    * Set free 
    34    *  
    35    * @global object $woocommerce 
    36    *  
    37    * @return boolean 
    38    */ 
    39   public function same_cap_free_retirement() { 
    40     if ( is_same_postalcode() ) { 
    41       global $woocommerce; 
    42       $woocommerce->cart->add_fee( __( 'Retirement Headquarters', WFI_TEXTDOMAIN ), 0, true, '' ); 
    43       $woocommerce->cart->shipping_total = 0; 
    44       $woocommerce->shipping->reset_shipping(); 
    45       return true; 
    46     } 
    47     return false; 
    48   } 
     32    /** 
     33     * Set free 
     34     * 
     35     * @global object $woocommerce 
     36     * 
     37     * @return boolean 
     38     */ 
     39    public function same_cap_free_retirement() { 
     40        if ( is_same_postalcode() ) { 
     41            global $woocommerce; 
     42            $woocommerce->cart->add_fee( __( 'Retirement Headquarters', WFI_TEXTDOMAIN ), 0, true, '' ); 
     43            $woocommerce->cart->shipping_total = 0; 
     44            $woocommerce->shipping->reset_shipping(); 
     45            return true; 
     46        } 
     47        return false; 
     48    } 
    4949 
    50   /** 
    51    * Add alert 
    52    *  
    53    * @param array $fragments List of array. 
    54    *  
    55    * @return string 
    56    */ 
    57   public function filter_alert_for_samecap( $fragments = array() ) { 
    58     $fragments[ '.woocommerce-checkout-alert-samecap' ] = '<div class="woocommerce-checkout-alert-samecap">'; 
    59     if ( is_same_postalcode() ) { 
    60       $fragments[ '.woocommerce-checkout-alert-samecap' ] .= '<small>'; 
    61       $fragments[ '.woocommerce-checkout-alert-samecap' ] .= __( '<b>Note:</b> If your ZIP code is the same of the store you have to retire the package directly at our Headquarter.', WFI_TEXTDOMAIN ); 
    62       $fragments[ '.woocommerce-checkout-alert-samecap' ] .= '</small><div class="clearfix"></div>'; 
    63     } 
    64     $fragments[ '.woocommerce-checkout-alert-samecap' ].= '</div>'; 
    65     return $fragments; 
    66   } 
     50    /** 
     51     * Add alert 
     52     * 
     53     * @param array $fragments List of array. 
     54     * 
     55     * @return string 
     56     */ 
     57    public function filter_alert_for_samecap( $fragments = array() ) { 
     58        $fragments[ '.woocommerce-checkout-alert-samecap' ] = '<div class="woocommerce-checkout-alert-samecap">'; 
     59        if ( is_same_postalcode() ) { 
     60            $fragments[ '.woocommerce-checkout-alert-samecap' ] .= '<small>'; 
     61            $fragments[ '.woocommerce-checkout-alert-samecap' ] .= __( '<b>Note:</b> If your ZIP code is the same of the store you have to retire the package directly at our Headquarter.', WFI_TEXTDOMAIN ); 
     62            $fragments[ '.woocommerce-checkout-alert-samecap' ] .= '</small><div class="clearfix"></div>'; 
     63        } 
     64        $fragments[ '.woocommerce-checkout-alert-samecap' ] .= '</div>'; 
     65        return $fragments; 
     66    } 
    6767 
    68   /** 
    69    * Force the message  
    70    *  
    71    * @return void 
    72    */ 
    73   public function alert_for_samecap() { 
    74     $fragments = $this->filter_alert_for_samecap(); 
    75     echo $fragments[ '.woocommerce-checkout-alert-samecap' ]; 
    76   } 
     68    /** 
     69     * Force the message 
     70     * 
     71     * @return void 
     72     */ 
     73    public function alert_for_samecap() { 
     74        $fragments = $this->filter_alert_for_samecap(); 
     75        echo $fragments[ '.woocommerce-checkout-alert-samecap' ]; 
     76    } 
    7777 
    7878} 
  • woo-fiscalita-italiana/trunk/public/includes/WFI_User_Fields.php

    r1726246 r1728549  
    7979                'class'    => array( 'pvtazd form-row-wide' ), 
    8080                'required' => true, 
     81                'default'  => apply_filters( 'woofisco_checkout_pvtazd_default', '' ), 
    8182                'label'    => __( 'Are a you a company?', WFI_TEXTDOMAIN ), 
    8283            ), get_user_pvtazd() ); 
  • woo-fiscalita-italiana/trunk/public/includes/WFI_Widget.php

    r1578087 r1728549  
    66 * @package   Woo_Fiscalita_Italiana 
    77 * @author    Codeat <support@codeat.co> 
    8  * @copyright 2016  
     8 * @copyright 2016 
    99 * @license   GPL-2.0+ 
    1010 * @link      http://codeat.co 
     
    2020     */ 
    2121    public function __construct() { 
    22         $widget_ops = array(  
     22        $widget_ops = array( 
    2323            'classname' => 'wfi_widget_ODR', 
    2424            'description' => 'Print the ODR code', 
     
    3232     * @param array $args     Arguments. 
    3333     * @param array $instance Instance. 
    34      *  
     34     * 
    3535     * @return void 
    3636     */ 
    3737    public function widget( $args, $instance ) { 
    38         echo do_shortcode('[wfi_site_odr]'); 
     38        echo do_shortcode( '[wfi_site_odr]' ); 
    3939    } 
    4040 
    4141} 
    4242 
    43 add_action('widgets_init', 
    44     create_function('', 'return register_widget("WFI_Widget_ODR");') 
     43add_action( 
     44    'widgets_init', 
     45    create_function( '', 'return register_widget("WFI_Widget_ODR");' ) 
    4546); 
  • woo-fiscalita-italiana/trunk/woo-fiscalita-italiana.php

    r1726246 r1728549  
    1414 * Plugin URI:        https://wordpress.org/plugins/woo-fiscalita-italiana/ 
    1515 * Description:       Easy Italian Fiscality for WooCommerce: checkout fields, invoices, digital goods and everything you need for a store based in Italy  
    16  * Version:           1.2.2 
     16 * Version:           1.2.3 
    1717 * Author:            Codeat 
    1818 * Author URI:        http://codeat.co 
     
    4343 
    4444if ( woo_is_plugin_active() ) { 
    45     define( 'WFI_VERSION', '1.2.2' ); 
     45    define( 'WFI_VERSION', '1.2.3' ); 
    4646    define( 'WFI_TEXTDOMAIN', 'woo-fiscalita-italiana' ); 
    4747    /** 
Note: See TracChangeset for help on using the changeset viewer.