Passed
Pull Request — master (#275)
by Brian
06:25
created
widgets/checkout.php 1 patch
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if ( ! defined( 'ABSPATH' ) ) {
2
+if (!defined('ABSPATH')) {
3 3
     exit;
4 4
 }
5 5
 
@@ -23,15 +23,15 @@  discard block
 block discarded – undo
23 23
             'block-keywords'=> "['invoicing','checkout']",
24 24
             'class_name'     => __CLASS__,
25 25
             'base_id'       => 'wpinv_checkout',
26
-            'name'          => __('Invoicing > Checkout','invoicing'),
26
+            'name'          => __('Invoicing > Checkout', 'invoicing'),
27 27
             'widget_ops'    => array(
28 28
                 'classname'   => 'wpinv-checkout-class wpi-g',
29
-                'description' => esc_html__('Displays checkout form.','invoicing'),
29
+                'description' => esc_html__('Displays checkout form.', 'invoicing'),
30 30
             ),
31 31
             'arguments'     => array(
32 32
                 'title'  => array(
33
-                    'title'       => __( 'Widget title', 'invoicing' ),
34
-                    'desc'        => __( 'Enter widget title.', 'invoicing' ),
33
+                    'title'       => __('Widget title', 'invoicing'),
34
+                    'desc'        => __('Enter widget title.', 'invoicing'),
35 35
                     'type'        => 'text',
36 36
                     'desc_tip'    => true,
37 37
                     'default'     => '',
@@ -42,7 +42,7 @@  discard block
 block discarded – undo
42 42
         );
43 43
 
44 44
 
45
-        parent::__construct( $options );
45
+        parent::__construct($options);
46 46
     }
47 47
 
48 48
 	/**
@@ -54,7 +54,7 @@  discard block
 block discarded – undo
54 54
 	 *
55 55
 	 * @return mixed|string|bool
56 56
 	 */
57
-    public function output( $args = array(), $widget_args = array(), $content = '' ) {
57
+    public function output($args = array(), $widget_args = array(), $content = '') {
58 58
 
59 59
 	    return wpinv_checkout_form();
60 60
 
Please login to merge, or discard this patch.
widgets/invoice-messages.php 1 patch
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if ( ! defined( 'ABSPATH' ) ) {
2
+if (!defined('ABSPATH')) {
3 3
     exit;
4 4
 }
5 5
 
@@ -22,15 +22,15 @@  discard block
 block discarded – undo
22 22
             'block-keywords'=> "['invoicing','history']",
23 23
             'class_name'     => __CLASS__,
24 24
             'base_id'       => 'wpinv_messages',
25
-            'name'          => __('Invoicing > Invoice Messages','invoicing'),
25
+            'name'          => __('Invoicing > Invoice Messages', 'invoicing'),
26 26
             'widget_ops'    => array(
27 27
                 'classname'   => 'wpinv-messages-class  wpi-g',
28
-                'description' => esc_html__('Displays invoice error and warning messages on checkout page.','invoicing'),
28
+                'description' => esc_html__('Displays invoice error and warning messages on checkout page.', 'invoicing'),
29 29
             ),
30 30
             'arguments'     => array(
31 31
                 'title'  => array(
32
-                    'title'       => __( 'Widget title', 'invoicing' ),
33
-                    'desc'        => __( 'Enter widget title.', 'invoicing' ),
32
+                    'title'       => __('Widget title', 'invoicing'),
33
+                    'desc'        => __('Enter widget title.', 'invoicing'),
34 34
                     'type'        => 'text',
35 35
                     'desc_tip'    => true,
36 36
                     'default'     => '',
@@ -41,7 +41,7 @@  discard block
 block discarded – undo
41 41
         );
42 42
 
43 43
 
44
-        parent::__construct( $options );
44
+        parent::__construct($options);
45 45
     }
46 46
 
47 47
 	/**
@@ -53,7 +53,7 @@  discard block
 block discarded – undo
53 53
 	 *
54 54
 	 * @return mixed|string|bool
55 55
 	 */
56
-    public function output( $args = array(), $widget_args = array(), $content = '' ) {
56
+    public function output($args = array(), $widget_args = array(), $content = '') {
57 57
 
58 58
 	    ob_start();
59 59
 
Please login to merge, or discard this patch.
widgets/invoice-history.php 1 patch
Spacing   +10 added lines, -10 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if ( ! defined( 'ABSPATH' ) ) {
2
+if (!defined('ABSPATH')) {
3 3
     exit;
4 4
 }
5 5
 
@@ -22,15 +22,15 @@  discard block
 block discarded – undo
22 22
             'block-keywords'=> "['invoicing','history']",
23 23
             'class_name'     => __CLASS__,
24 24
             'base_id'       => 'wpinv_history',
25
-            'name'          => __('Invoicing > Invoice History','invoicing'),
25
+            'name'          => __('Invoicing > Invoice History', 'invoicing'),
26 26
             'widget_ops'    => array(
27 27
                 'classname'   => 'wpinv-history-class wpi-g',
28
-                'description' => esc_html__('Displays invoice history.','invoicing'),
28
+                'description' => esc_html__('Displays invoice history.', 'invoicing'),
29 29
             ),
30 30
             'arguments'     => array(
31 31
                 'title'  => array(
32
-                    'title'       => __( 'Widget title', 'invoicing' ),
33
-                    'desc'        => __( 'Enter widget title.', 'invoicing' ),
32
+                    'title'       => __('Widget title', 'invoicing'),
33
+                    'desc'        => __('Enter widget title.', 'invoicing'),
34 34
                     'type'        => 'text',
35 35
                     'desc_tip'    => true,
36 36
                     'default'     => '',
@@ -41,7 +41,7 @@  discard block
 block discarded – undo
41 41
         );
42 42
 
43 43
 
44
-        parent::__construct( $options );
44
+        parent::__construct($options);
45 45
     }
46 46
 
47 47
 	/**
@@ -53,13 +53,13 @@  discard block
 block discarded – undo
53 53
 	 *
54 54
 	 * @return mixed|string|bool
55 55
 	 */
56
-    public function output( $args = array(), $widget_args = array(), $content = '' ) {
56
+    public function output($args = array(), $widget_args = array(), $content = '') {
57 57
 
58 58
 	    ob_start();
59 59
 
60
-	    do_action( 'wpinv_before_user_invoice_history' );
61
-	    wpinv_get_template_part( 'wpinv-invoice-history' );
62
-	    do_action( 'wpinv_after_user_invoice_history' );
60
+	    do_action('wpinv_before_user_invoice_history');
61
+	    wpinv_get_template_part('wpinv-invoice-history');
62
+	    do_action('wpinv_after_user_invoice_history');
63 63
 
64 64
 	    $output = ob_get_clean();
65 65
 	    return trim($output);
Please login to merge, or discard this patch.
widgets/invoice-receipt.php 1 patch
Spacing   +10 added lines, -10 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if ( ! defined( 'ABSPATH' ) ) {
2
+if (!defined('ABSPATH')) {
3 3
     exit;
4 4
 }
5 5
 
@@ -22,15 +22,15 @@  discard block
 block discarded – undo
22 22
             'block-keywords'=> "['invoicing','receipt']",
23 23
             'class_name'     => __CLASS__,
24 24
             'base_id'       => 'wpinv_receipt',
25
-            'name'          => __('Invoicing > Invoice Receipt','invoicing'),
25
+            'name'          => __('Invoicing > Invoice Receipt', 'invoicing'),
26 26
             'widget_ops'    => array(
27 27
                 'classname'   => 'wpinv-receipt-class  wpi-g',
28
-                'description' => esc_html__('Displays invoice receipt after checkout.','invoicing'),
28
+                'description' => esc_html__('Displays invoice receipt after checkout.', 'invoicing'),
29 29
             ),
30 30
             'arguments'     => array(
31 31
                 'title'  => array(
32
-                    'title'       => __( 'Widget title', 'invoicing' ),
33
-                    'desc'        => __( 'Enter widget title.', 'invoicing' ),
32
+                    'title'       => __('Widget title', 'invoicing'),
33
+                    'desc'        => __('Enter widget title.', 'invoicing'),
34 34
                     'type'        => 'text',
35 35
                     'desc_tip'    => true,
36 36
                     'default'     => '',
@@ -41,7 +41,7 @@  discard block
 block discarded – undo
41 41
         );
42 42
 
43 43
 
44
-        parent::__construct( $options );
44
+        parent::__construct($options);
45 45
     }
46 46
 
47 47
 	/**
@@ -53,13 +53,13 @@  discard block
 block discarded – undo
53 53
 	 *
54 54
 	 * @return mixed|string|bool
55 55
 	 */
56
-    public function output( $args = array(), $widget_args = array(), $content = '' ) {
56
+    public function output($args = array(), $widget_args = array(), $content = '') {
57 57
 
58 58
 	    ob_start();
59 59
 
60
-	    do_action( 'wpinv_success_content_before' );
61
-	    echo wpinv_payment_receipt( $args );
62
-	    do_action( 'wpinv_success_content_after' );
60
+	    do_action('wpinv_success_content_before');
61
+	    echo wpinv_payment_receipt($args);
62
+	    do_action('wpinv_success_content_after');
63 63
 
64 64
 	    $output = ob_get_clean();
65 65
 	    return trim($output);
Please login to merge, or discard this patch.
includes/libraries/wpinv-euvat/class-wpinv-euvat.php 1 patch
Spacing   +723 added lines, -723 removed lines patch added patch discarded remove patch
@@ -1,6 +1,6 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 // Exit if accessed directly.
3
-if (!defined( 'ABSPATH' ) ) exit;
3
+if (!defined('ABSPATH')) exit;
4 4
 
5 5
 class WPInv_EUVat {
6 6
     private static $is_ajax = false;
@@ -8,7 +8,7 @@  discard block
 block discarded – undo
8 8
     private static $instance = false;
9 9
     
10 10
     public static function get_instance() {
11
-        if ( !self::$instance ) {
11
+        if (!self::$instance) {
12 12
             self::$instance = new self();
13 13
             self::$instance->actions();
14 14
         }
@@ -17,137 +17,137 @@  discard block
 block discarded – undo
17 17
     }
18 18
     
19 19
     public function __construct() {
20
-        self::$is_ajax          = defined( 'DOING_AJAX' ) && DOING_AJAX;
20
+        self::$is_ajax          = defined('DOING_AJAX') && DOING_AJAX;
21 21
         self::$default_country  = wpinv_get_default_country();
22 22
     }
23 23
     
24 24
     public static function actions() {
25
-        if ( is_admin() ) {
26
-            add_action( 'admin_enqueue_scripts', array( self::$instance, 'enqueue_admin_scripts' ) );
27
-            add_action( 'wpinv_settings_sections_taxes', array( self::$instance, 'section_vat_settings' ) ); 
28
-            add_action( 'wpinv_settings_taxes', array( self::$instance, 'vat_settings' ) );
29
-            add_filter( 'wpinv_settings_taxes-vat_sanitize', array( self::$instance, 'sanitize_vat_settings' ) );
30
-            add_filter( 'wpinv_settings_taxes-vat_rates_sanitize', array( self::$instance, 'sanitize_vat_rates' ) );
31
-            add_action( 'wp_ajax_wpinv_add_vat_class', array( self::$instance, 'add_class' ) );
32
-            add_action( 'wp_ajax_nopriv_wpinv_add_vat_class', array( self::$instance, 'add_class' ) );
33
-            add_action( 'wp_ajax_wpinv_delete_vat_class', array( self::$instance, 'delete_class' ) );
34
-            add_action( 'wp_ajax_nopriv_wpinv_delete_vat_class', array( self::$instance, 'delete_class' ) );
35
-            add_action( 'wp_ajax_wpinv_update_vat_rates', array( self::$instance, 'update_eu_rates' ) );
36
-            add_action( 'wp_ajax_nopriv_wpinv_update_vat_rates', array( self::$instance, 'update_eu_rates' ) );
37
-            add_action( 'wp_ajax_wpinv_geoip2', array( self::$instance, 'geoip2_download_database' ) );
38
-            add_action( 'wp_ajax_nopriv_wpinv_geoip2', array( self::$instance, 'geoip2_download_database' ) );
39
-        }
40
-        
41
-        add_action( 'wp_enqueue_scripts', array( self::$instance, 'enqueue_vat_scripts' ) );
42
-        add_filter( 'wpinv_default_billing_country', array( self::$instance, 'get_user_country' ), 10 );
43
-        add_filter( 'wpinv_get_user_country', array( self::$instance, 'set_user_country' ), 10 );
44
-        add_action( 'wp_ajax_wpinv_vat_validate', array( self::$instance, 'ajax_vat_validate' ) );
45
-        add_action( 'wp_ajax_nopriv_wpinv_vat_validate', array( self::$instance, 'ajax_vat_validate' ) );
46
-        add_action( 'wp_ajax_wpinv_vat_reset', array( self::$instance, 'ajax_vat_reset' ) );
47
-        add_action( 'wp_ajax_nopriv_wpinv_vat_reset', array( self::$instance, 'ajax_vat_reset' ) );
48
-        add_action( 'wpinv_invoice_print_after_line_items', array( self::$instance, 'show_vat_notice' ), 999, 1 );
49
-        if ( wpinv_use_taxes() ) {
50
-            add_action( 'wpinv_after_billing_fields', array( self::$instance, 'checkout_vat_fields' ) );
51
-            if ( self::allow_vat_rules() ) {
52
-                add_action( 'wpinv_checkout_error_checks', array( self::$instance, 'checkout_vat_validate' ), 10, 2 );
53
-                add_filter( 'wpinv_tax_rate', array( self::$instance, 'get_rate' ), 10, 4 );
25
+        if (is_admin()) {
26
+            add_action('admin_enqueue_scripts', array(self::$instance, 'enqueue_admin_scripts'));
27
+            add_action('wpinv_settings_sections_taxes', array(self::$instance, 'section_vat_settings')); 
28
+            add_action('wpinv_settings_taxes', array(self::$instance, 'vat_settings'));
29
+            add_filter('wpinv_settings_taxes-vat_sanitize', array(self::$instance, 'sanitize_vat_settings'));
30
+            add_filter('wpinv_settings_taxes-vat_rates_sanitize', array(self::$instance, 'sanitize_vat_rates'));
31
+            add_action('wp_ajax_wpinv_add_vat_class', array(self::$instance, 'add_class'));
32
+            add_action('wp_ajax_nopriv_wpinv_add_vat_class', array(self::$instance, 'add_class'));
33
+            add_action('wp_ajax_wpinv_delete_vat_class', array(self::$instance, 'delete_class'));
34
+            add_action('wp_ajax_nopriv_wpinv_delete_vat_class', array(self::$instance, 'delete_class'));
35
+            add_action('wp_ajax_wpinv_update_vat_rates', array(self::$instance, 'update_eu_rates'));
36
+            add_action('wp_ajax_nopriv_wpinv_update_vat_rates', array(self::$instance, 'update_eu_rates'));
37
+            add_action('wp_ajax_wpinv_geoip2', array(self::$instance, 'geoip2_download_database'));
38
+            add_action('wp_ajax_nopriv_wpinv_geoip2', array(self::$instance, 'geoip2_download_database'));
39
+        }
40
+        
41
+        add_action('wp_enqueue_scripts', array(self::$instance, 'enqueue_vat_scripts'));
42
+        add_filter('wpinv_default_billing_country', array(self::$instance, 'get_user_country'), 10);
43
+        add_filter('wpinv_get_user_country', array(self::$instance, 'set_user_country'), 10);
44
+        add_action('wp_ajax_wpinv_vat_validate', array(self::$instance, 'ajax_vat_validate'));
45
+        add_action('wp_ajax_nopriv_wpinv_vat_validate', array(self::$instance, 'ajax_vat_validate'));
46
+        add_action('wp_ajax_wpinv_vat_reset', array(self::$instance, 'ajax_vat_reset'));
47
+        add_action('wp_ajax_nopriv_wpinv_vat_reset', array(self::$instance, 'ajax_vat_reset'));
48
+        add_action('wpinv_invoice_print_after_line_items', array(self::$instance, 'show_vat_notice'), 999, 1);
49
+        if (wpinv_use_taxes()) {
50
+            add_action('wpinv_after_billing_fields', array(self::$instance, 'checkout_vat_fields'));
51
+            if (self::allow_vat_rules()) {
52
+                add_action('wpinv_checkout_error_checks', array(self::$instance, 'checkout_vat_validate'), 10, 2);
53
+                add_filter('wpinv_tax_rate', array(self::$instance, 'get_rate'), 10, 4);
54 54
             }
55 55
         }
56 56
     }        
57 57
     
58
-    public static function get_eu_states( $sort = true ) {
59
-        $eu_states = array( 'AT', 'BE', 'BG', 'HR', 'CY', 'CZ', 'DK', 'EE', 'FI', 'FR', 'DE', 'GB', 'GR', 'HU', 'IE', 'IT', 'LV', 'LT', 'LU', 'MT', 'NL', 'PL', 'PT', 'RO', 'SK', 'SI', 'ES', 'SE' );
60
-        if ( $sort ) {
61
-            $sort = sort( $eu_states );
58
+    public static function get_eu_states($sort = true) {
59
+        $eu_states = array('AT', 'BE', 'BG', 'HR', 'CY', 'CZ', 'DK', 'EE', 'FI', 'FR', 'DE', 'GB', 'GR', 'HU', 'IE', 'IT', 'LV', 'LT', 'LU', 'MT', 'NL', 'PL', 'PT', 'RO', 'SK', 'SI', 'ES', 'SE');
60
+        if ($sort) {
61
+            $sort = sort($eu_states);
62 62
         }
63 63
         
64
-        return apply_filters( 'wpinv_get_eu_states', $eu_states, $sort );
64
+        return apply_filters('wpinv_get_eu_states', $eu_states, $sort);
65 65
     }
66 66
     
67
-    public static function get_gst_countries( $sort = true ) {
68
-        $gst_countries  = array( 'AU', 'NZ', 'CA', 'CN' );
67
+    public static function get_gst_countries($sort = true) {
68
+        $gst_countries = array('AU', 'NZ', 'CA', 'CN');
69 69
         
70
-        if ( $sort ) {
71
-            $sort = sort( $gst_countries );
70
+        if ($sort) {
71
+            $sort = sort($gst_countries);
72 72
         }
73 73
         
74
-        return apply_filters( 'wpinv_get_gst_countries', $gst_countries, $sort );
74
+        return apply_filters('wpinv_get_gst_countries', $gst_countries, $sort);
75 75
     }
76 76
     
77
-    public static function is_eu_state( $country_code ) {
78
-        $return = !empty( $country_code ) && in_array( strtoupper( $country_code ), self::get_eu_states() ) ? true : false;
77
+    public static function is_eu_state($country_code) {
78
+        $return = !empty($country_code) && in_array(strtoupper($country_code), self::get_eu_states()) ? true : false;
79 79
                 
80
-        return apply_filters( 'wpinv_is_eu_state', $return, $country_code );
80
+        return apply_filters('wpinv_is_eu_state', $return, $country_code);
81 81
     }
82 82
     
83
-    public static function is_gst_country( $country_code ) {
84
-        $return = !empty( $country_code ) && in_array( strtoupper( $country_code ), self::get_gst_countries() ) ? true : false;
83
+    public static function is_gst_country($country_code) {
84
+        $return = !empty($country_code) && in_array(strtoupper($country_code), self::get_gst_countries()) ? true : false;
85 85
                 
86
-        return apply_filters( 'wpinv_is_gst_country', $return, $country_code );
86
+        return apply_filters('wpinv_is_gst_country', $return, $country_code);
87 87
     }
88 88
     
89 89
     public static function enqueue_vat_scripts() {
90
-        if( wpinv_use_taxes() && wpinv_get_option( 'apply_vat_rules' ) ) {
90
+        if (wpinv_use_taxes() && wpinv_get_option('apply_vat_rules')) {
91 91
             self::load_vat_scripts();
92 92
         }
93 93
     }
94 94
 
95
-    public static function load_vat_scripts(){
96
-        $suffix     = '';//defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
95
+    public static function load_vat_scripts() {
96
+        $suffix = ''; //defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
97 97
 
98
-        wp_register_script( 'wpinv-vat-validation-script', WPINV_PLUGIN_URL . 'assets/js/jsvat' . $suffix . '.js', array( 'jquery' ),  WPINV_VERSION );
99
-        wp_register_script( 'wpinv-vat-script', WPINV_PLUGIN_URL . 'assets/js/euvat' . $suffix . '.js', array( 'jquery' ),  WPINV_VERSION );
98
+        wp_register_script('wpinv-vat-validation-script', WPINV_PLUGIN_URL . 'assets/js/jsvat' . $suffix . '.js', array('jquery'), WPINV_VERSION);
99
+        wp_register_script('wpinv-vat-script', WPINV_PLUGIN_URL . 'assets/js/euvat' . $suffix . '.js', array('jquery'), WPINV_VERSION);
100 100
 
101
-        $vat_name   = self::get_vat_name();
101
+        $vat_name = self::get_vat_name();
102 102
 
103 103
         $vars = array();
104 104
         $vars['UseTaxes'] = wpinv_use_taxes();
105 105
         $vars['EUStates'] = self::get_eu_states();
106
-        $vars['NoRateSet'] = __( 'You have not set a rate. Do you want to continue?', 'invoicing' );
107
-        $vars['EmptyCompany'] = __( 'Please enter your registered company name!', 'invoicing' );
108
-        $vars['EmptyVAT'] = wp_sprintf( __( 'Please enter your %s number!', 'invoicing' ), $vat_name );
109
-        $vars['TotalsRefreshed'] = wp_sprintf( __( 'The invoice totals will be refreshed to update the %s.', 'invoicing' ), $vat_name );
110
-        $vars['ErrValidateVAT'] = wp_sprintf( __( 'Fail to validate the %s number!', 'invoicing' ), $vat_name );
111
-        $vars['ErrResetVAT'] = wp_sprintf( __( 'Fail to reset the %s number!', 'invoicing' ), $vat_name );
112
-        $vars['ErrInvalidVat'] = wp_sprintf( __( 'The %s number supplied does not have a valid format!', 'invoicing' ), $vat_name );
113
-        $vars['ErrInvalidResponse'] = __( 'An invalid response has been received from the server!', 'invoicing' );
106
+        $vars['NoRateSet'] = __('You have not set a rate. Do you want to continue?', 'invoicing');
107
+        $vars['EmptyCompany'] = __('Please enter your registered company name!', 'invoicing');
108
+        $vars['EmptyVAT'] = wp_sprintf(__('Please enter your %s number!', 'invoicing'), $vat_name);
109
+        $vars['TotalsRefreshed'] = wp_sprintf(__('The invoice totals will be refreshed to update the %s.', 'invoicing'), $vat_name);
110
+        $vars['ErrValidateVAT'] = wp_sprintf(__('Fail to validate the %s number!', 'invoicing'), $vat_name);
111
+        $vars['ErrResetVAT'] = wp_sprintf(__('Fail to reset the %s number!', 'invoicing'), $vat_name);
112
+        $vars['ErrInvalidVat'] = wp_sprintf(__('The %s number supplied does not have a valid format!', 'invoicing'), $vat_name);
113
+        $vars['ErrInvalidResponse'] = __('An invalid response has been received from the server!', 'invoicing');
114 114
         $vars['ApplyVATRules'] = $vars['UseTaxes'] ? self::allow_vat_rules() : false;
115 115
         $vars['HideVatFields'] = $vars['ApplyVATRules'] ? self::hide_vat_fields() : true;
116
-        $vars['ErrResponse'] = __( 'The request response is invalid!', 'invoicing' );
117
-        $vars['ErrRateResponse'] = __( 'The get rate request response is invalid', 'invoicing' );
118
-        $vars['PageRefresh'] = __( 'The page will be refreshed in 10 seconds to show the new options.', 'invoicing' );
119
-        $vars['RequestResponseNotValidJSON'] = __( 'The get rate request response is not valid JSON', 'invoicing' );
120
-        $vars['GetRateRequestFailed'] = __( 'The get rate request failed: ', 'invoicing' );
121
-        $vars['NoRateInformationInResponse'] = __( 'The get rate request response does not contain any rate information', 'invoicing' );
122
-        $vars['RatesUpdated'] = __( 'The rates have been updated. Press the save button to record these new rates.', 'invoicing' );
123
-        $vars['IPAddressInformation'] = __( 'IP Address Information', 'invoicing' );
124
-        $vars['VatValidating'] = wp_sprintf( __( 'Validating %s number...', 'invoicing' ), $vat_name );
125
-        $vars['VatReseting'] = __( 'Reseting...', 'invoicing' );
126
-        $vars['VatValidated'] = wp_sprintf( __( '%s number validated', 'invoicing' ), $vat_name );
127
-        $vars['VatNotValidated'] = wp_sprintf( __( '%s number not validated', 'invoicing' ), $vat_name );
128
-        $vars['ConfirmDeleteClass'] = __( 'Are you sure you wish to delete this rates class?', 'invoicing' );
116
+        $vars['ErrResponse'] = __('The request response is invalid!', 'invoicing');
117
+        $vars['ErrRateResponse'] = __('The get rate request response is invalid', 'invoicing');
118
+        $vars['PageRefresh'] = __('The page will be refreshed in 10 seconds to show the new options.', 'invoicing');
119
+        $vars['RequestResponseNotValidJSON'] = __('The get rate request response is not valid JSON', 'invoicing');
120
+        $vars['GetRateRequestFailed'] = __('The get rate request failed: ', 'invoicing');
121
+        $vars['NoRateInformationInResponse'] = __('The get rate request response does not contain any rate information', 'invoicing');
122
+        $vars['RatesUpdated'] = __('The rates have been updated. Press the save button to record these new rates.', 'invoicing');
123
+        $vars['IPAddressInformation'] = __('IP Address Information', 'invoicing');
124
+        $vars['VatValidating'] = wp_sprintf(__('Validating %s number...', 'invoicing'), $vat_name);
125
+        $vars['VatReseting'] = __('Reseting...', 'invoicing');
126
+        $vars['VatValidated'] = wp_sprintf(__('%s number validated', 'invoicing'), $vat_name);
127
+        $vars['VatNotValidated'] = wp_sprintf(__('%s number not validated', 'invoicing'), $vat_name);
128
+        $vars['ConfirmDeleteClass'] = __('Are you sure you wish to delete this rates class?', 'invoicing');
129 129
         $vars['isFront'] = is_admin() ? false : true;
130 130
         $vars['baseCountry'] = wpinv_get_default_country();
131
-        $vars['disableVATSameCountry'] = ( self::same_country_rule() == 'no' ? true : false );
132
-        $vars['disableVATSimpleCheck'] = wpinv_get_option( 'vat_offline_check' ) ? true : false;
131
+        $vars['disableVATSameCountry'] = (self::same_country_rule() == 'no' ? true : false);
132
+        $vars['disableVATSimpleCheck'] = wpinv_get_option('vat_offline_check') ? true : false;
133 133
 
134
-        wp_enqueue_script( 'wpinv-vat-validation-script' );
135
-        wp_enqueue_script( 'wpinv-vat-script' );
136
-        wp_localize_script( 'wpinv-vat-script', 'WPInv_VAT_Vars', $vars );
134
+        wp_enqueue_script('wpinv-vat-validation-script');
135
+        wp_enqueue_script('wpinv-vat-script');
136
+        wp_localize_script('wpinv-vat-script', 'WPInv_VAT_Vars', $vars);
137 137
     }
138 138
 
139 139
     public static function enqueue_admin_scripts() {
140
-        if( isset( $_GET['page'] ) && 'wpinv-settings' == $_GET['page'] ) {
140
+        if (isset($_GET['page']) && 'wpinv-settings' == $_GET['page']) {
141 141
             self::load_vat_scripts();
142 142
         }
143 143
     }
144 144
     
145
-    public static function section_vat_settings( $sections ) {
146
-        if ( !empty( $sections ) ) {
147
-            $sections['vat'] = __( 'EU VAT Settings', 'invoicing' );
145
+    public static function section_vat_settings($sections) {
146
+        if (!empty($sections)) {
147
+            $sections['vat'] = __('EU VAT Settings', 'invoicing');
148 148
             
149
-            if ( self::allow_vat_classes() ) {
150
-                $sections['vat_rates'] = __( 'EU VAT Rates', 'invoicing' );
149
+            if (self::allow_vat_classes()) {
150
+                $sections['vat_rates'] = __('EU VAT Rates', 'invoicing');
151 151
             }
152 152
         }
153 153
         return $sections;
@@ -156,52 +156,52 @@  discard block
 block discarded – undo
156 156
     public static function vat_rates_settings() {
157 157
         $vat_classes = self::get_rate_classes();
158 158
         $vat_rates = array();
159
-        $vat_class = isset( $_REQUEST['wpi_sub'] ) && $_REQUEST['wpi_sub'] !== '' && isset( $vat_classes[$_REQUEST['wpi_sub']] )? sanitize_text_field( $_REQUEST['wpi_sub'] ) : '_new';
160
-        $current_url = remove_query_arg( 'wpi_sub' );
159
+        $vat_class = isset($_REQUEST['wpi_sub']) && $_REQUEST['wpi_sub'] !== '' && isset($vat_classes[$_REQUEST['wpi_sub']]) ? sanitize_text_field($_REQUEST['wpi_sub']) : '_new';
160
+        $current_url = remove_query_arg('wpi_sub');
161 161
         
162 162
         $vat_rates['vat_rates_header'] = array(
163 163
             'id' => 'vat_rates_header',
164
-            'name' => '<h3>' . __( 'Manage VAT Rates', 'invoicing' ) . '</h3>',
164
+            'name' => '<h3>' . __('Manage VAT Rates', 'invoicing') . '</h3>',
165 165
             'desc' => '',
166 166
             'type' => 'header',
167 167
             'size' => 'regular'
168 168
         );
169 169
         $vat_rates['vat_rates_class'] = array(
170 170
             'id'          => 'vat_rates_class',
171
-            'name'        => __( 'Edit VAT Rates', 'invoicing' ),
172
-            'desc'        => __( 'The standard rate will apply where no explicit rate is provided.', 'invoicing' ),
171
+            'name'        => __('Edit VAT Rates', 'invoicing'),
172
+            'desc'        => __('The standard rate will apply where no explicit rate is provided.', 'invoicing'),
173 173
             'type'        => 'select',
174
-            'options'     => array_merge( $vat_classes, array( '_new' => __( 'Add New Rate Class', 'invoicing' ) ) ),
175
-            'placeholder' => __( 'Select a VAT Rate', 'invoicing' ),
174
+            'options'     => array_merge($vat_classes, array('_new' => __('Add New Rate Class', 'invoicing'))),
175
+            'placeholder' => __('Select a VAT Rate', 'invoicing'),
176 176
             'selected'    => $vat_class,
177 177
             'class'       => 'wpi_select2',
178 178
             'onchange'    => 'document.location.href="' . $current_url . '&wpi_sub=" + this.value;',
179 179
         );
180 180
         
181
-        if ( $vat_class != '_standard' && $vat_class != '_new' ) {
181
+        if ($vat_class != '_standard' && $vat_class != '_new') {
182 182
             $vat_rates['vat_rate_delete'] = array(
183 183
                 'id'   => 'vat_rate_delete',
184 184
                 'type' => 'vat_rate_delete',
185 185
             );
186 186
         }
187 187
                     
188
-        if ( $vat_class == '_new' ) {
188
+        if ($vat_class == '_new') {
189 189
             $vat_rates['vat_rates_settings'] = array(
190 190
                 'id' => 'vat_rates_settings',
191
-                'name' => '<h3>' . __( 'Add New Rate Class', 'invoicing' ) . '</h3>',
191
+                'name' => '<h3>' . __('Add New Rate Class', 'invoicing') . '</h3>',
192 192
                 'type' => 'header',
193 193
             );
194 194
             $vat_rates['vat_rate_name'] = array(
195 195
                 'id'   => 'vat_rate_name',
196
-                'name' => __( 'Name', 'invoicing' ),
197
-                'desc' => __( 'A short name for the new VAT Rate class', 'invoicing' ),
196
+                'name' => __('Name', 'invoicing'),
197
+                'desc' => __('A short name for the new VAT Rate class', 'invoicing'),
198 198
                 'type' => 'text',
199 199
                 'size' => 'regular',
200 200
             );
201 201
             $vat_rates['vat_rate_desc'] = array(
202 202
                 'id'   => 'vat_rate_desc',
203
-                'name' => __( 'Description', 'invoicing' ),
204
-                'desc' => __( 'Manage VAT Rate class', 'invoicing' ),
203
+                'name' => __('Description', 'invoicing'),
204
+                'desc' => __('Manage VAT Rate class', 'invoicing'),
205 205
                 'type' => 'text',
206 206
                 'size' => 'regular',
207 207
             );
@@ -213,7 +213,7 @@  discard block
 block discarded – undo
213 213
             $vat_rates['vat_rates'] = array(
214 214
                 'id'   => 'vat_rates',
215 215
                 'name' => '<h3>' . $vat_classes[$vat_class] . '</h3>',
216
-                'desc' => self::get_class_desc( $vat_class ),
216
+                'desc' => self::get_class_desc($vat_class),
217 217
                 'type' => 'vat_rates',
218 218
             );
219 219
         }
@@ -221,12 +221,12 @@  discard block
 block discarded – undo
221 221
         return $vat_rates;
222 222
     }
223 223
     
224
-    public static function vat_settings( $settings ) {
225
-        if ( !empty( $settings ) ) {    
224
+    public static function vat_settings($settings) {
225
+        if (!empty($settings)) {    
226 226
             $vat_settings = array();
227 227
             $vat_settings['vat_company_title'] = array(
228 228
                 'id' => 'vat_company_title',
229
-                'name' => '<h3>' . __( 'Your Company Details', 'invoicing' ) . '</h3>',
229
+                'name' => '<h3>' . __('Your Company Details', 'invoicing') . '</h3>',
230 230
                 'desc' => '',
231 231
                 'type' => 'header',
232 232
                 'size' => 'regular'
@@ -234,22 +234,22 @@  discard block
 block discarded – undo
234 234
             
235 235
             $vat_settings['vat_company_name'] = array(
236 236
                 'id' => 'vat_company_name',
237
-                'name' => __( 'Your Company Name', 'invoicing' ),
238
-                'desc' => wp_sprintf(__( 'Your company name as it appears on your VAT return, you can verify it via your VAT ID on the %sEU VIES System.%s', 'invoicing' ), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>' ),
237
+                'name' => __('Your Company Name', 'invoicing'),
238
+                'desc' => wp_sprintf(__('Your company name as it appears on your VAT return, you can verify it via your VAT ID on the %sEU VIES System.%s', 'invoicing'), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>'),
239 239
                 'type' => 'text',
240 240
                 'size' => 'regular',
241 241
             );
242 242
             
243 243
             $vat_settings['vat_number'] = array(
244 244
                 'id'   => 'vat_number',
245
-                'name' => __( 'Your VAT Number', 'invoicing' ),
245
+                'name' => __('Your VAT Number', 'invoicing'),
246 246
                 'type' => 'vat_number',
247 247
                 'size' => 'regular',
248 248
             );
249 249
 
250 250
             $vat_settings['vat_settings_title'] = array(
251 251
                 'id' => 'vat_settings_title',
252
-                'name' => '<h3>' . __( 'Apply VAT Settings', 'invoicing' ) . '</h3>',
252
+                'name' => '<h3>' . __('Apply VAT Settings', 'invoicing') . '</h3>',
253 253
                 'desc' => '',
254 254
                 'type' => 'header',
255 255
                 'size' => 'regular'
@@ -257,8 +257,8 @@  discard block
 block discarded – undo
257 257
 
258 258
             $vat_settings['apply_vat_rules'] = array(
259 259
                 'id' => 'apply_vat_rules',
260
-                'name' => __( 'Enable VAT Rules', 'invoicing' ),
261
-                'desc' => __( 'Apply VAT to consumer sales from IP addresses within the EU, even if the billing address is outside the EU.', 'invoicing' ) . '<br><font style="color:red">' . __( 'Do not disable unless you know what you are doing.', 'invoicing' ) . '</font>',
260
+                'name' => __('Enable VAT Rules', 'invoicing'),
261
+                'desc' => __('Apply VAT to consumer sales from IP addresses within the EU, even if the billing address is outside the EU.', 'invoicing') . '<br><font style="color:red">' . __('Do not disable unless you know what you are doing.', 'invoicing') . '</font>',
262 262
                 'type' => 'checkbox',
263 263
                 'std' => '1'
264 264
             );
@@ -274,8 +274,8 @@  discard block
 block discarded – undo
274 274
 
275 275
             $vat_settings['vat_prevent_b2c_purchase'] = array(
276 276
                 'id' => 'vat_prevent_b2c_purchase',
277
-                'name' => __( 'Prevent EU B2C Sales', 'invoicing' ),
278
-                'desc' => __( 'Enable this option if you are not registered for VAT in the EU.', 'invoicing' ),
277
+                'name' => __('Prevent EU B2C Sales', 'invoicing'),
278
+                'desc' => __('Enable this option if you are not registered for VAT in the EU.', 'invoicing'),
279 279
                 'type' => 'checkbox'
280 280
             );
281 281
 
@@ -283,22 +283,22 @@  discard block
 block discarded – undo
283 283
 
284 284
             $vat_settings['vat_same_country_rule'] = array(
285 285
                 'id'          => 'vat_same_country_rule',
286
-                'name'        => __( 'Same Country Rule', 'invoicing' ),
287
-                'desc'        => __( 'Select how you want to handle VAT charge if sales are in the same country as the base country.', 'invoicing' ),
286
+                'name'        => __('Same Country Rule', 'invoicing'),
287
+                'desc'        => __('Select how you want to handle VAT charge if sales are in the same country as the base country.', 'invoicing'),
288 288
                 'type'        => 'select',
289 289
                 'options'     => array(
290
-                    ''          => __( 'Normal', 'invoicing' ),
291
-                    'no'        => __( 'No VAT', 'invoicing' ),
292
-                    'always'    => __( 'Always apply VAT', 'invoicing' ),
290
+                    ''          => __('Normal', 'invoicing'),
291
+                    'no'        => __('No VAT', 'invoicing'),
292
+                    'always'    => __('Always apply VAT', 'invoicing'),
293 293
                 ),
294
-                'placeholder' => __( 'Select an option', 'invoicing' ),
294
+                'placeholder' => __('Select an option', 'invoicing'),
295 295
                 'std'         => '',
296 296
                 'class'   => 'wpi_select2',
297 297
             );
298 298
 
299 299
             $vat_settings['vat_checkout_title'] = array(
300 300
                 'id' => 'vat_checkout_title',
301
-                'name' => '<h3>' . __( 'Checkout Fields', 'invoicing' ) . '</h3>',
301
+                'name' => '<h3>' . __('Checkout Fields', 'invoicing') . '</h3>',
302 302
                 'desc' => '',
303 303
                 'type' => 'header',
304 304
                 'size' => 'regular'
@@ -306,14 +306,14 @@  discard block
 block discarded – undo
306 306
 
307 307
             $vat_settings['vat_disable_fields'] = array(
308 308
                 'id' => 'vat_disable_fields',
309
-                'name' => __( 'Disable VAT Fields', 'invoicing' ),
310
-                'desc' => __( 'Disable VAT fields if Invoicing is being used for GST.', 'invoicing' ) . '<br><font style="color:red">' . __( 'Do not disable if you have enabled Prevent EU B2C sales, otherwise Prevent EU B2C sales setting will not work.', 'invoicing' ) . '</font>',
309
+                'name' => __('Disable VAT Fields', 'invoicing'),
310
+                'desc' => __('Disable VAT fields if Invoicing is being used for GST.', 'invoicing') . '<br><font style="color:red">' . __('Do not disable if you have enabled Prevent EU B2C sales, otherwise Prevent EU B2C sales setting will not work.', 'invoicing') . '</font>',
311 311
                 'type' => 'checkbox'
312 312
             );
313 313
 
314 314
             $vat_settings['vat_ip_lookup'] = array(
315 315
                 'id'   => 'vat_ip_lookup',
316
-                'name' => __( 'IP Country Look-up', 'invoicing' ),
316
+                'name' => __('IP Country Look-up', 'invoicing'),
317 317
                 'type' => 'vat_ip_lookup',
318 318
                 'size' => 'regular',
319 319
                 'std' => 'default',
@@ -322,21 +322,21 @@  discard block
 block discarded – undo
322 322
 
323 323
             $vat_settings['hide_ip_address'] = array(
324 324
                 'id' => 'hide_ip_address',
325
-                'name' => __( 'Hide IP Info at Checkout', 'invoicing' ),
326
-                'desc' => __( 'Hide the user IP info at checkout.', 'invoicing' ),
325
+                'name' => __('Hide IP Info at Checkout', 'invoicing'),
326
+                'desc' => __('Hide the user IP info at checkout.', 'invoicing'),
327 327
                 'type' => 'checkbox'
328 328
             );
329 329
 
330 330
             $vat_settings['vat_ip_country_default'] = array(
331 331
                 'id' => 'vat_ip_country_default',
332
-                'name' => __( 'Enable IP Country as Default', 'invoicing' ),
333
-                'desc' => __( 'Show the country of the users IP as the default country, otherwise the site default country will be used.', 'invoicing' ),
332
+                'name' => __('Enable IP Country as Default', 'invoicing'),
333
+                'desc' => __('Show the country of the users IP as the default country, otherwise the site default country will be used.', 'invoicing'),
334 334
                 'type' => 'checkbox'
335 335
             );
336 336
 
337 337
             $vat_settings['vies_validation_title'] = array(
338 338
                 'id' => 'vies_validation_title',
339
-                'name' => '<h3>' . __( 'VIES Validation', 'invoicing' ) . '</h3>',
339
+                'name' => '<h3>' . __('VIES Validation', 'invoicing') . '</h3>',
340 340
                 'desc' => '',
341 341
                 'type' => 'header',
342 342
                 'size' => 'regular'
@@ -344,37 +344,37 @@  discard block
 block discarded – undo
344 344
 
345 345
             $vat_settings['vat_vies_check'] = array(
346 346
                 'id' => 'vat_vies_check',
347
-                'name' => __( 'Disable VIES VAT ID Check', 'invoicing' ),
348
-                'desc' => wp_sprintf( __( 'Prevent VAT numbers from being validated by the %sEU VIES System.%s', 'invoicing' ), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>' ),
347
+                'name' => __('Disable VIES VAT ID Check', 'invoicing'),
348
+                'desc' => wp_sprintf(__('Prevent VAT numbers from being validated by the %sEU VIES System.%s', 'invoicing'), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>'),
349 349
                 'type' => 'checkbox'
350 350
             );
351 351
 
352 352
             $vat_settings['vat_disable_company_name_check'] = array(
353 353
                 'id' => 'vat_disable_company_name_check',
354
-                'name' => __( 'Disable VIES Name Check', 'invoicing' ),
355
-                'desc' => wp_sprintf( __( 'Prevent company name from being validated by the %sEU VIES System.%s', 'invoicing' ), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>' ),
354
+                'name' => __('Disable VIES Name Check', 'invoicing'),
355
+                'desc' => wp_sprintf(__('Prevent company name from being validated by the %sEU VIES System.%s', 'invoicing'), '<a href="http://ec.europa.eu/taxation_customs/vies/" target="_blank">', '</a>'),
356 356
                 'type' => 'checkbox'
357 357
             );
358 358
 
359 359
             $vat_settings['vat_offline_check'] = array(
360 360
                 'id' => 'vat_offline_check',
361
-                'name' => __( 'Disable Basic Checks', 'invoicing' ),
362
-                'desc' => __( 'Disable basic JS checks for correct format of VAT number. (Not Recommended)', 'invoicing' ),
361
+                'name' => __('Disable Basic Checks', 'invoicing'),
362
+                'desc' => __('Disable basic JS checks for correct format of VAT number. (Not Recommended)', 'invoicing'),
363 363
                 'type' => 'checkbox'
364 364
             );
365 365
             
366 366
 
367 367
             $settings['vat'] = $vat_settings;
368 368
             
369
-            if ( self::allow_vat_classes() ) {
369
+            if (self::allow_vat_classes()) {
370 370
                 $settings['vat_rates'] = self::vat_rates_settings();
371 371
             }
372 372
             
373 373
             $eu_fallback_rate = array(
374 374
                 'id'   => 'eu_fallback_rate',
375
-                'name' => '<h3>' . __( 'VAT rate for EU member states', 'invoicing' ) . '</h3>',
375
+                'name' => '<h3>' . __('VAT rate for EU member states', 'invoicing') . '</h3>',
376 376
                 'type' => 'eu_fallback_rate',
377
-                'desc' => __( 'Enter the VAT rate to be charged for EU member states. You can edit the rates for each member state when a country rate has been set up by pressing this button.', 'invoicing' ),
377
+                'desc' => __('Enter the VAT rate to be charged for EU member states. You can edit the rates for each member state when a country rate has been set up by pressing this button.', 'invoicing'),
378 378
                 'std'  => '20',
379 379
                 'size' => 'small'
380 380
             );
@@ -390,11 +390,11 @@  discard block
 block discarded – undo
390 390
         $database_url       = 'http' . (isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] === 'on' ? 's' : '') . '://geolite.maxmind.com/download/geoip/database/';
391 391
         $destination_dir    = $upload_dir['basedir'] . '/invoicing';
392 392
         
393
-        if ( !is_dir( $destination_dir ) ) { 
394
-            mkdir( $destination_dir );
393
+        if (!is_dir($destination_dir)) { 
394
+            mkdir($destination_dir);
395 395
         }
396 396
         
397
-        $database_files     = array(
397
+        $database_files = array(
398 398
             'country'   => array(
399 399
                 'source'        => $database_url . 'GeoLite2-Country.mmdb.gz',
400 400
                 'destination'   => $destination_dir . '/GeoLite2-Country.mmdb',
@@ -405,57 +405,57 @@  discard block
 block discarded – undo
405 405
             )
406 406
         );
407 407
 
408
-        foreach( $database_files as $database => $files ) {
409
-            $result = self::geoip2_download_file( $files['source'], $files['destination'] );
408
+        foreach ($database_files as $database => $files) {
409
+            $result = self::geoip2_download_file($files['source'], $files['destination']);
410 410
             
411
-            if ( empty( $result['success'] ) ) {
411
+            if (empty($result['success'])) {
412 412
                 echo $result['message'];
413 413
                 exit;
414 414
             }
415 415
             
416
-            wpinv_update_option( 'wpinv_geoip2_date_updated', current_time( 'timestamp' ) );
417
-            echo sprintf(__( 'GeoIP2 %s database updated successfully.', 'invoicing' ), $database ) . ' ';
416
+            wpinv_update_option('wpinv_geoip2_date_updated', current_time('timestamp'));
417
+            echo sprintf(__('GeoIP2 %s database updated successfully.', 'invoicing'), $database) . ' ';
418 418
         }
419 419
         
420 420
         exit;
421 421
     }
422 422
     
423
-    public static function geoip2_download_file( $source_url, $destination_file ) {
423
+    public static function geoip2_download_file($source_url, $destination_file) {
424 424
         $success    = false;
425 425
         $message    = '';
426 426
         
427
-        if ( !function_exists( 'download_url' ) ) {
428
-            require_once( ABSPATH . 'wp-admin/includes/file.php' );
427
+        if (!function_exists('download_url')) {
428
+            require_once(ABSPATH . 'wp-admin/includes/file.php');
429 429
         }
430 430
 
431
-        $temp_file  = download_url( $source_url );
431
+        $temp_file = download_url($source_url);
432 432
         
433
-        if ( is_wp_error( $temp_file ) ) {
434
-            $message = sprintf( __( 'Error while downloading GeoIp2 database( %s ): %s', 'invoicing' ), $source_url, $temp_file->get_error_message() );
433
+        if (is_wp_error($temp_file)) {
434
+            $message = sprintf(__('Error while downloading GeoIp2 database( %s ): %s', 'invoicing'), $source_url, $temp_file->get_error_message());
435 435
         } else {
436
-            $handle = gzopen( $temp_file, 'rb' );
436
+            $handle = gzopen($temp_file, 'rb');
437 437
             
438
-            if ( $handle ) {
439
-                $fopen  = fopen( $destination_file, 'wb' );
440
-                if ( $fopen ) {
441
-                    while ( ( $data = gzread( $handle, 4096 ) ) != false ) {
442
-                        fwrite( $fopen, $data );
438
+            if ($handle) {
439
+                $fopen = fopen($destination_file, 'wb');
440
+                if ($fopen) {
441
+                    while (($data = gzread($handle, 4096)) != false) {
442
+                        fwrite($fopen, $data);
443 443
                     }
444 444
 
445
-                    gzclose( $handle );
446
-                    fclose( $fopen );
445
+                    gzclose($handle);
446
+                    fclose($fopen);
447 447
                         
448 448
                     $success = true;
449 449
                 } else {
450
-                    gzclose( $handle );
451
-                    $message = sprintf( __( 'Error could not open destination GeoIp2 database file for writing: %s', 'invoicing' ), $destination_file );
450
+                    gzclose($handle);
451
+                    $message = sprintf(__('Error could not open destination GeoIp2 database file for writing: %s', 'invoicing'), $destination_file);
452 452
                 }
453 453
             } else {
454
-                $message = sprintf( __( 'Error could not open GeoIp2 database file for reading: %s', 'invoicing' ), $temp_file );
454
+                $message = sprintf(__('Error could not open GeoIp2 database file for reading: %s', 'invoicing'), $temp_file);
455 455
             }
456 456
             
457
-            if ( file_exists( $temp_file ) ) {
458
-                unlink( $temp_file );
457
+            if (file_exists($temp_file)) {
458
+                unlink($temp_file);
459 459
             }
460 460
         }
461 461
         
@@ -467,11 +467,11 @@  discard block
 block discarded – undo
467 467
     }
468 468
     
469 469
     public static function load_geoip2() {
470
-        if ( defined( 'WPINV_GEOIP2_LODDED' ) ) {
470
+        if (defined('WPINV_GEOIP2_LODDED')) {
471 471
             return;
472 472
         }
473 473
         
474
-        if ( !class_exists( '\MaxMind\Db\Reader' ) ) {
474
+        if (!class_exists('\MaxMind\Db\Reader')) {
475 475
             $maxmind_db_files = array(
476 476
                 'Reader/Decoder.php',
477 477
                 'Reader/InvalidDatabaseException.php',
@@ -480,12 +480,12 @@  discard block
 block discarded – undo
480 480
                 'Reader.php',
481 481
             );
482 482
             
483
-            foreach ( $maxmind_db_files as $key => $file ) {
484
-                require_once( WPINV_PLUGIN_DIR . 'includes/libraries/MaxMind/Db/' . $file );
483
+            foreach ($maxmind_db_files as $key => $file) {
484
+                require_once(WPINV_PLUGIN_DIR . 'includes/libraries/MaxMind/Db/' . $file);
485 485
             }
486 486
         }
487 487
         
488
-        if ( !class_exists( '\GeoIp2\Database\Reader' ) ) {        
488
+        if (!class_exists('\GeoIp2\Database\Reader')) {        
489 489
             $geoip2_files = array(
490 490
                 'ProviderInterface.php',
491 491
                 'Compat/JsonSerializable.php',
@@ -519,23 +519,23 @@  discard block
 block discarded – undo
519 519
                 'WebService/Client.php',
520 520
             );
521 521
             
522
-            foreach ( $geoip2_files as $key => $file ) {
523
-                require_once( WPINV_PLUGIN_DIR . 'includes/libraries/GeoIp2/' . $file );
522
+            foreach ($geoip2_files as $key => $file) {
523
+                require_once(WPINV_PLUGIN_DIR . 'includes/libraries/GeoIp2/' . $file);
524 524
             }
525 525
         }
526 526
 
527
-        define( 'WPINV_GEOIP2_LODDED', true );
527
+        define('WPINV_GEOIP2_LODDED', true);
528 528
     }
529 529
 
530 530
     public static function geoip2_country_dbfile() {
531 531
         $upload_dir = wp_upload_dir();
532 532
 
533
-        if ( !isset( $upload_dir['basedir'] ) ) {
533
+        if (!isset($upload_dir['basedir'])) {
534 534
             return false;
535 535
         }
536 536
 
537 537
         $filename = $upload_dir['basedir'] . '/invoicing/GeoLite2-Country.mmdb';
538
-        if ( !file_exists( $filename ) ) {
538
+        if (!file_exists($filename)) {
539 539
             return false;
540 540
         }
541 541
         
@@ -545,12 +545,12 @@  discard block
 block discarded – undo
545 545
     public static function geoip2_city_dbfile() {
546 546
         $upload_dir = wp_upload_dir();
547 547
 
548
-        if ( !isset( $upload_dir['basedir'] ) ) {
548
+        if (!isset($upload_dir['basedir'])) {
549 549
             return false;
550 550
         }
551 551
 
552 552
         $filename = $upload_dir['basedir'] . '/invoicing/GeoLite2-City.mmdb';
553
-        if ( !file_exists( $filename ) ) {
553
+        if (!file_exists($filename)) {
554 554
             return false;
555 555
         }
556 556
         
@@ -561,10 +561,10 @@  discard block
 block discarded – undo
561 561
         try {
562 562
             self::load_geoip2();
563 563
 
564
-            if ( $filename = self::geoip2_country_dbfile() ) {
565
-                return new \GeoIp2\Database\Reader( $filename );
564
+            if ($filename = self::geoip2_country_dbfile()) {
565
+                return new \GeoIp2\Database\Reader($filename);
566 566
             }
567
-        } catch( Exception $e ) {
567
+        } catch (Exception $e) {
568 568
             return false;
569 569
         }
570 570
         
@@ -575,183 +575,183 @@  discard block
 block discarded – undo
575 575
         try {
576 576
             self::load_geoip2();
577 577
 
578
-            if ( $filename = self::geoip2_city_dbfile() ) {
579
-                return new \GeoIp2\Database\Reader( $filename );
578
+            if ($filename = self::geoip2_city_dbfile()) {
579
+                return new \GeoIp2\Database\Reader($filename);
580 580
             }
581
-        } catch( Exception $e ) {
581
+        } catch (Exception $e) {
582 582
             return false;
583 583
         }
584 584
         
585 585
         return false;
586 586
     }
587 587
 
588
-    public static function geoip2_country_record( $ip_address ) {
588
+    public static function geoip2_country_record($ip_address) {
589 589
         try {
590 590
             $reader = self::geoip2_country_reader();
591 591
 
592
-            if ( $reader ) {
593
-                $record = $reader->country( $ip_address );
592
+            if ($reader) {
593
+                $record = $reader->country($ip_address);
594 594
                 
595
-                if ( !empty( $record->country->isoCode ) ) {
595
+                if (!empty($record->country->isoCode)) {
596 596
                     return $record;
597 597
                 }
598 598
             }
599
-        } catch(\InvalidArgumentException $e) {
600
-            wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' );
599
+        } catch (\InvalidArgumentException $e) {
600
+            wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )');
601 601
             
602 602
             return false;
603
-        } catch(\GeoIp2\Exception\AddressNotFoundException $e) {
604
-            wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' );
603
+        } catch (\GeoIp2\Exception\AddressNotFoundException $e) {
604
+            wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )');
605 605
             
606 606
             return false;
607
-        } catch( Exception $e ) {
607
+        } catch (Exception $e) {
608 608
             return false;
609 609
         }
610 610
         
611 611
         return false;
612 612
     }
613 613
 
614
-    public static function geoip2_city_record( $ip_address ) {
614
+    public static function geoip2_city_record($ip_address) {
615 615
         try {
616 616
             $reader = self::geoip2_city_reader();
617 617
 
618
-            if ( $reader ) {
619
-                $record = $reader->city( $ip_address );
618
+            if ($reader) {
619
+                $record = $reader->city($ip_address);
620 620
                 
621
-                if ( !empty( $record->country->isoCode ) ) {
621
+                if (!empty($record->country->isoCode)) {
622 622
                     return $record;
623 623
                 }
624 624
             }
625
-        } catch(\InvalidArgumentException $e) {
626
-            wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' );
625
+        } catch (\InvalidArgumentException $e) {
626
+            wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )');
627 627
             
628 628
             return false;
629
-        } catch(\GeoIp2\Exception\AddressNotFoundException $e) {
630
-            wpinv_error_log( $e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )' );
629
+        } catch (\GeoIp2\Exception\AddressNotFoundException $e) {
630
+            wpinv_error_log($e->getMessage(), 'GeoIp2 Lookup( ' . $ip_address . ' )');
631 631
             
632 632
             return false;
633
-        } catch( Exception $e ) {
633
+        } catch (Exception $e) {
634 634
             return false;
635 635
         }
636 636
         
637 637
         return false;
638 638
     }
639 639
 
640
-    public static function geoip2_country_code( $ip_address ) {
641
-        $record = self::geoip2_country_record( $ip_address );
642
-        return !empty( $record->country->isoCode ) ? $record->country->isoCode : wpinv_get_default_country();
640
+    public static function geoip2_country_code($ip_address) {
641
+        $record = self::geoip2_country_record($ip_address);
642
+        return !empty($record->country->isoCode) ? $record->country->isoCode : wpinv_get_default_country();
643 643
     }
644 644
 
645 645
     // Find country by IP address.
646
-    public static function get_country_by_ip( $ip = '' ) {
646
+    public static function get_country_by_ip($ip = '') {
647 647
         global $wpinv_ip_address_country;
648 648
         
649
-        if ( !empty( $wpinv_ip_address_country ) ) {
649
+        if (!empty($wpinv_ip_address_country)) {
650 650
             return $wpinv_ip_address_country;
651 651
         }
652 652
         
653
-        if ( empty( $ip ) ) {
653
+        if (empty($ip)) {
654 654
             $ip = wpinv_get_ip();
655 655
         }
656 656
 
657
-        $ip_country_service = wpinv_get_option( 'vat_ip_lookup' );
658
-        $is_default         = empty( $ip_country_service ) || $ip_country_service === 'default' ? true : false;
657
+        $ip_country_service = wpinv_get_option('vat_ip_lookup');
658
+        $is_default         = empty($ip_country_service) || $ip_country_service === 'default' ? true : false;
659 659
 
660
-        if ( !empty( $ip ) && $ip !== '127.0.0.1' ) { // For 127.0.0.1(localhost) use default country.
661
-            if ( function_exists( 'geoip_country_code_by_name') && ( $ip_country_service === 'geoip' || $is_default ) ) {
660
+        if (!empty($ip) && $ip !== '127.0.0.1') { // For 127.0.0.1(localhost) use default country.
661
+            if (function_exists('geoip_country_code_by_name') && ($ip_country_service === 'geoip' || $is_default)) {
662 662
                 try {
663
-                    $wpinv_ip_address_country = geoip_country_code_by_name( $ip );
664
-                } catch( Exception $e ) {
665
-                    wpinv_error_log( $e->getMessage(), 'GeoIP Lookup( ' . $ip . ' )' );
663
+                    $wpinv_ip_address_country = geoip_country_code_by_name($ip);
664
+                } catch (Exception $e) {
665
+                    wpinv_error_log($e->getMessage(), 'GeoIP Lookup( ' . $ip . ' )');
666 666
                 }
667
-            } else if ( self::geoip2_country_dbfile() && ( $ip_country_service === 'geoip2' || $is_default ) ) {
668
-                $wpinv_ip_address_country = self::geoip2_country_code( $ip );
669
-            } else if ( function_exists( 'simplexml_load_file' ) && ini_get('allow_url_fopen') && ( $ip_country_service === 'geoplugin' || $is_default ) ) {
670
-                $load_xml = simplexml_load_file( 'http://www.geoplugin.net/xml.gp?ip=' . $ip );
667
+            } else if (self::geoip2_country_dbfile() && ($ip_country_service === 'geoip2' || $is_default)) {
668
+                $wpinv_ip_address_country = self::geoip2_country_code($ip);
669
+            } else if (function_exists('simplexml_load_file') && ini_get('allow_url_fopen') && ($ip_country_service === 'geoplugin' || $is_default)) {
670
+                $load_xml = simplexml_load_file('http://www.geoplugin.net/xml.gp?ip=' . $ip);
671 671
                 
672
-                if ( !empty( $load_xml ) && !empty( $load_xml->geoplugin_countryCode ) ) {
673
-                    $wpinv_ip_address_country = (string)$load_xml->geoplugin_countryCode;
672
+                if (!empty($load_xml) && !empty($load_xml->geoplugin_countryCode)) {
673
+                    $wpinv_ip_address_country = (string) $load_xml->geoplugin_countryCode;
674 674
                 }
675
-            }elseif(!empty( $ip )){
675
+            }elseif (!empty($ip)) {
676 676
                 $url = 'http://ip-api.com/json/' . $ip;
677 677
                 $response = wp_remote_get($url);
678 678
 
679
-                if ( is_array( $response ) && wp_remote_retrieve_response_code( $response ) == '200' ) {
680
-                    $data = json_decode(wp_remote_retrieve_body( $response ),true);
681
-                    if(!empty($data['countryCode'])){
682
-                        $wpinv_ip_address_country = (string)$data['countryCode'];
679
+                if (is_array($response) && wp_remote_retrieve_response_code($response) == '200') {
680
+                    $data = json_decode(wp_remote_retrieve_body($response), true);
681
+                    if (!empty($data['countryCode'])) {
682
+                        $wpinv_ip_address_country = (string) $data['countryCode'];
683 683
                     }
684 684
                 }
685 685
             }
686 686
         }
687 687
 
688
-        if ( empty( $wpinv_ip_address_country ) ) {
688
+        if (empty($wpinv_ip_address_country)) {
689 689
             $wpinv_ip_address_country = wpinv_get_default_country();
690 690
         }
691 691
 
692 692
         return $wpinv_ip_address_country;
693 693
     }
694 694
     
695
-    public static function sanitize_vat_settings( $input ) {
695
+    public static function sanitize_vat_settings($input) {
696 696
         global $wpinv_options;
697 697
         
698 698
         $valid      = false;
699 699
         $message    = '';
700 700
         
701
-        if ( !empty( $wpinv_options['vat_vies_check'] ) ) {
702
-            if ( empty( $wpinv_options['vat_offline_check'] ) ) {
703
-                $valid = self::offline_check( $input['vat_number'] );
701
+        if (!empty($wpinv_options['vat_vies_check'])) {
702
+            if (empty($wpinv_options['vat_offline_check'])) {
703
+                $valid = self::offline_check($input['vat_number']);
704 704
             } else {
705 705
                 $valid = true;
706 706
             }
707 707
             
708
-            $message = $valid ? '' : __( 'VAT number not validated', 'invoicing' );
708
+            $message = $valid ? '' : __('VAT number not validated', 'invoicing');
709 709
         } else {
710
-            $result = self::check_vat( $input['vat_number'] );
710
+            $result = self::check_vat($input['vat_number']);
711 711
             
712
-            if ( empty( $result['valid'] ) ) {
712
+            if (empty($result['valid'])) {
713 713
                 $valid      = false;
714 714
                 $message    = $result['message'];
715 715
             } else {
716
-                $valid      = ( isset( $result['company'] ) && ( $result['company'] == '---' || ( strcasecmp( trim( $result['company'] ), trim( $input['vat_company_name'] ) ) == 0 ) ) ) || !empty( $wpinv_options['vat_disable_company_name_check'] );
717
-                $message    = $valid ? '' : __( 'The company name associated with the VAT number provided is not the same as the company name provided.', 'invoicing' );
716
+                $valid      = (isset($result['company']) && ($result['company'] == '---' || (strcasecmp(trim($result['company']), trim($input['vat_company_name'])) == 0))) || !empty($wpinv_options['vat_disable_company_name_check']);
717
+                $message    = $valid ? '' : __('The company name associated with the VAT number provided is not the same as the company name provided.', 'invoicing');
718 718
             }
719 719
         }
720 720
 
721
-        if ( $message && self::is_vat_validated() != $valid ) {
722
-            add_settings_error( 'wpinv-notices', '', $message, ( $valid ? 'updated' : 'error' ) );
721
+        if ($message && self::is_vat_validated() != $valid) {
722
+            add_settings_error('wpinv-notices', '', $message, ($valid ? 'updated' : 'error'));
723 723
         }
724 724
 
725 725
         $input['vat_valid'] = $valid;
726 726
         return $input;
727 727
     }
728 728
     
729
-    public static function sanitize_vat_rates( $input ) {
730
-        if( !wpinv_current_user_can_manage_invoicing() ) {
731
-            add_settings_error( 'wpinv-notices', '', __( 'Your account does not have permission to add rate classes.', 'invoicing' ), 'error' );
729
+    public static function sanitize_vat_rates($input) {
730
+        if (!wpinv_current_user_can_manage_invoicing()) {
731
+            add_settings_error('wpinv-notices', '', __('Your account does not have permission to add rate classes.', 'invoicing'), 'error');
732 732
             return $input;
733 733
         }
734 734
         
735 735
         $vat_classes = self::get_rate_classes();
736
-        $vat_class = !empty( $_REQUEST['wpi_vat_class'] ) && isset( $vat_classes[$_REQUEST['wpi_vat_class']] )? sanitize_text_field( $_REQUEST['wpi_vat_class'] ) : '';
736
+        $vat_class = !empty($_REQUEST['wpi_vat_class']) && isset($vat_classes[$_REQUEST['wpi_vat_class']]) ? sanitize_text_field($_REQUEST['wpi_vat_class']) : '';
737 737
         
738
-        if ( empty( $vat_class ) ) {
739
-            add_settings_error( 'wpinv-notices', '', __( 'No valid VAT rates class contained in the request to save rates.', 'invoicing' ), 'error' );
738
+        if (empty($vat_class)) {
739
+            add_settings_error('wpinv-notices', '', __('No valid VAT rates class contained in the request to save rates.', 'invoicing'), 'error');
740 740
             
741 741
             return $input;
742 742
         }
743 743
 
744
-        $new_rates = ! empty( $_POST['vat_rates'] ) ? array_values( $_POST['vat_rates'] ) : array();
744
+        $new_rates = !empty($_POST['vat_rates']) ? array_values($_POST['vat_rates']) : array();
745 745
 
746
-        if ( $vat_class === '_standard' ) {
746
+        if ($vat_class === '_standard') {
747 747
             // Save the active rates in the invoice settings
748
-            update_option( 'wpinv_tax_rates', $new_rates );
748
+            update_option('wpinv_tax_rates', $new_rates);
749 749
         } else {
750 750
             // Get the existing set of rates
751 751
             $rates = self::get_non_standard_rates();
752 752
             $rates[$vat_class] = $new_rates;
753 753
 
754
-            update_option( 'wpinv_vat_rates', $rates );
754
+            update_option('wpinv_vat_rates', $rates);
755 755
         }
756 756
         
757 757
         return $input;
@@ -761,71 +761,71 @@  discard block
 block discarded – undo
761 761
         $response = array();
762 762
         $response['success'] = false;
763 763
         
764
-        if ( !wpinv_current_user_can_manage_invoicing() ) {
765
-            $response['error'] = __( 'Invalid access!', 'invoicing' );
766
-            wp_send_json( $response );
764
+        if (!wpinv_current_user_can_manage_invoicing()) {
765
+            $response['error'] = __('Invalid access!', 'invoicing');
766
+            wp_send_json($response);
767 767
         }
768 768
         
769
-        $vat_class_name = !empty( $_POST['name'] ) ? sanitize_text_field( $_POST['name'] ) : false;
770
-        $vat_class_desc = !empty( $_POST['desc'] ) ? sanitize_text_field( $_POST['desc'] ) : false;
769
+        $vat_class_name = !empty($_POST['name']) ? sanitize_text_field($_POST['name']) : false;
770
+        $vat_class_desc = !empty($_POST['desc']) ? sanitize_text_field($_POST['desc']) : false;
771 771
         
772
-        if ( empty( $vat_class_name ) ) {
773
-            $response['error'] = __( 'Select the VAT rate name', 'invoicing' );
774
-            wp_send_json( $response );
772
+        if (empty($vat_class_name)) {
773
+            $response['error'] = __('Select the VAT rate name', 'invoicing');
774
+            wp_send_json($response);
775 775
         }
776 776
         
777
-        $vat_classes = (array)self::get_rate_classes();
777
+        $vat_classes = (array) self::get_rate_classes();
778 778
 
779
-        if ( !empty( $vat_classes ) && in_array( strtolower( $vat_class_name ), array_map( 'strtolower', array_values( $vat_classes ) ) ) ) {
780
-            $response['error'] = wp_sprintf( __( 'A VAT Rate name "%s" already exists', 'invoicing' ), $vat_class_name );
781
-            wp_send_json( $response );
779
+        if (!empty($vat_classes) && in_array(strtolower($vat_class_name), array_map('strtolower', array_values($vat_classes)))) {
780
+            $response['error'] = wp_sprintf(__('A VAT Rate name "%s" already exists', 'invoicing'), $vat_class_name);
781
+            wp_send_json($response);
782 782
         }
783 783
         
784
-        $rate_class_key = normalize_whitespace( 'wpi-' . $vat_class_name );
785
-        $rate_class_key = sanitize_key( str_replace( " ", "-", $rate_class_key ) );
784
+        $rate_class_key = normalize_whitespace('wpi-' . $vat_class_name);
785
+        $rate_class_key = sanitize_key(str_replace(" ", "-", $rate_class_key));
786 786
         
787
-        $vat_classes = (array)self::get_rate_classes( true );
788
-        $vat_classes[$rate_class_key] = array( 'name' => $vat_class_name, 'desc' => $vat_class_desc );
787
+        $vat_classes = (array) self::get_rate_classes(true);
788
+        $vat_classes[$rate_class_key] = array('name' => $vat_class_name, 'desc' => $vat_class_desc);
789 789
         
790
-        update_option( '_wpinv_vat_rate_classes', $vat_classes );
790
+        update_option('_wpinv_vat_rate_classes', $vat_classes);
791 791
         
792 792
         $response['success'] = true;
793
-        $response['redirect'] = admin_url( 'admin.php?page=wpinv-settings&tab=taxes&section=vat_rates&wpi_sub=' . $rate_class_key );
793
+        $response['redirect'] = admin_url('admin.php?page=wpinv-settings&tab=taxes&section=vat_rates&wpi_sub=' . $rate_class_key);
794 794
         
795
-        wp_send_json( $response );
795
+        wp_send_json($response);
796 796
     }
797 797
     
798 798
     public static function delete_class() {
799 799
         $response = array();
800 800
         $response['success'] = false;
801 801
         
802
-        if ( !wpinv_current_user_can_manage_invoicing() || !isset( $_POST['class'] ) ) {
803
-            $response['error'] = __( 'Invalid access!', 'invoicing' );
804
-            wp_send_json( $response );
802
+        if (!wpinv_current_user_can_manage_invoicing() || !isset($_POST['class'])) {
803
+            $response['error'] = __('Invalid access!', 'invoicing');
804
+            wp_send_json($response);
805 805
         }
806 806
         
807
-        $vat_class = isset( $_POST['class'] ) && $_POST['class'] !== '' ? sanitize_text_field( $_POST['class'] ) : false;
808
-        $vat_classes = (array)self::get_rate_classes();
807
+        $vat_class = isset($_POST['class']) && $_POST['class'] !== '' ? sanitize_text_field($_POST['class']) : false;
808
+        $vat_classes = (array) self::get_rate_classes();
809 809
 
810
-        if ( !isset( $vat_classes[$vat_class] ) ) {
811
-            $response['error'] = __( 'Requested class does not exists', 'invoicing' );
812
-            wp_send_json( $response );
810
+        if (!isset($vat_classes[$vat_class])) {
811
+            $response['error'] = __('Requested class does not exists', 'invoicing');
812
+            wp_send_json($response);
813 813
         }
814 814
         
815
-        if ( $vat_class == '_new' || $vat_class == '_standard' ) {
816
-            $response['error'] = __( 'You can not delete standard rates class', 'invoicing' );
817
-            wp_send_json( $response );
815
+        if ($vat_class == '_new' || $vat_class == '_standard') {
816
+            $response['error'] = __('You can not delete standard rates class', 'invoicing');
817
+            wp_send_json($response);
818 818
         }
819 819
             
820
-        $vat_classes = (array)self::get_rate_classes( true );
821
-        unset( $vat_classes[$vat_class] );
820
+        $vat_classes = (array) self::get_rate_classes(true);
821
+        unset($vat_classes[$vat_class]);
822 822
         
823
-        update_option( '_wpinv_vat_rate_classes', $vat_classes );
823
+        update_option('_wpinv_vat_rate_classes', $vat_classes);
824 824
         
825 825
         $response['success'] = true;
826
-        $response['redirect'] = admin_url( 'admin.php?page=wpinv-settings&tab=taxes&section=vat_rates&wpi_sub=_new' );
826
+        $response['redirect'] = admin_url('admin.php?page=wpinv-settings&tab=taxes&section=vat_rates&wpi_sub=_new');
827 827
         
828
-        wp_send_json( $response );
828
+        wp_send_json($response);
829 829
     }
830 830
     
831 831
     public static function update_eu_rates() {        
@@ -834,72 +834,72 @@  discard block
 block discarded – undo
834 834
         $response['error']      = null;
835 835
         $response['data']       = null;
836 836
         
837
-        if ( !wpinv_current_user_can_manage_invoicing() ) {
838
-            $response['error'] = __( 'Invalid access!', 'invoicing' );
839
-            wp_send_json( $response );
837
+        if (!wpinv_current_user_can_manage_invoicing()) {
838
+            $response['error'] = __('Invalid access!', 'invoicing');
839
+            wp_send_json($response);
840 840
         }
841 841
         
842
-        $group      = !empty( $_POST['group'] ) ? sanitize_text_field( $_POST['group'] ) : '';
843
-        $euvatrates = self::request_euvatrates( $group );
842
+        $group      = !empty($_POST['group']) ? sanitize_text_field($_POST['group']) : '';
843
+        $euvatrates = self::request_euvatrates($group);
844 844
         
845
-        if ( !empty( $euvatrates ) ) {
846
-            if ( !empty( $euvatrates['success'] ) && !empty( $euvatrates['rates'] ) ) {
845
+        if (!empty($euvatrates)) {
846
+            if (!empty($euvatrates['success']) && !empty($euvatrates['rates'])) {
847 847
                 $response['success']        = true;
848 848
                 $response['data']['rates']  = $euvatrates['rates'];
849
-            } else if ( !empty( $euvatrates['error'] ) ) {
849
+            } else if (!empty($euvatrates['error'])) {
850 850
                 $response['error']          = $euvatrates['error'];
851 851
             }
852 852
         }
853 853
             
854
-        wp_send_json( $response );
854
+        wp_send_json($response);
855 855
     }
856 856
     
857 857
     public static function hide_vat_fields() {
858
-        $hide = wpinv_get_option( 'vat_disable_fields' );
858
+        $hide = wpinv_get_option('vat_disable_fields');
859 859
         
860
-        return apply_filters( 'wpinv_hide_vat_fields', $hide );
860
+        return apply_filters('wpinv_hide_vat_fields', $hide);
861 861
     }
862 862
     
863 863
     public static function same_country_rule() {
864
-        $same_country_rule = wpinv_get_option( 'vat_same_country_rule' );
864
+        $same_country_rule = wpinv_get_option('vat_same_country_rule');
865 865
         
866
-        return apply_filters( 'wpinv_vat_same_country_rule', $same_country_rule );
866
+        return apply_filters('wpinv_vat_same_country_rule', $same_country_rule);
867 867
     }
868 868
     
869 869
     public static function get_vat_name() {
870
-        $vat_name   = wpinv_get_option( 'vat_name' );
871
-        $vat_name   = !empty( $vat_name ) ? $vat_name : 'VAT';
870
+        $vat_name   = wpinv_get_option('vat_name');
871
+        $vat_name   = !empty($vat_name) ? $vat_name : 'VAT';
872 872
         
873
-        return apply_filters( 'wpinv_get_owner_vat_name', $vat_name );
873
+        return apply_filters('wpinv_get_owner_vat_name', $vat_name);
874 874
     }
875 875
     
876 876
     public static function get_company_name() {
877
-        $company_name = wpinv_get_option( 'vat_company_name' );
877
+        $company_name = wpinv_get_option('vat_company_name');
878 878
         
879
-        return apply_filters( 'wpinv_get_owner_company_name', $company_name );
879
+        return apply_filters('wpinv_get_owner_company_name', $company_name);
880 880
     }
881 881
     
882 882
     public static function get_vat_number() {
883
-        $vat_number = wpinv_get_option( 'vat_number' );
883
+        $vat_number = wpinv_get_option('vat_number');
884 884
         
885
-        return apply_filters( 'wpinv_get_owner_vat_number', $vat_number );
885
+        return apply_filters('wpinv_get_owner_vat_number', $vat_number);
886 886
     }
887 887
     
888 888
     public static function is_vat_validated() {
889
-        $validated = self::get_vat_number() && wpinv_get_option( 'vat_valid' );
889
+        $validated = self::get_vat_number() && wpinv_get_option('vat_valid');
890 890
         
891
-        return apply_filters( 'wpinv_is_owner_vat_validated', $validated );
891
+        return apply_filters('wpinv_is_owner_vat_validated', $validated);
892 892
     }
893 893
     
894
-    public static function sanitize_vat( $vat_number, $country_code = '' ) {        
895
-        $vat_number = str_replace( array(' ', '.', '-', '_', ',' ), '', strtoupper( trim( $vat_number ) ) );
894
+    public static function sanitize_vat($vat_number, $country_code = '') {        
895
+        $vat_number = str_replace(array(' ', '.', '-', '_', ','), '', strtoupper(trim($vat_number)));
896 896
         
897
-        if ( empty( $country_code ) ) {
898
-            $country_code = substr( $vat_number, 0, 2 );
897
+        if (empty($country_code)) {
898
+            $country_code = substr($vat_number, 0, 2);
899 899
         }
900 900
         
901
-        if ( strpos( $vat_number , $country_code ) === 0 ) {
902
-            $vat = str_replace( $country_code, '', $vat_number );
901
+        if (strpos($vat_number, $country_code) === 0) {
902
+            $vat = str_replace($country_code, '', $vat_number);
903 903
         } else {
904 904
             $vat = $country_code . $vat_number;
905 905
         }
@@ -912,140 +912,140 @@  discard block
 block discarded – undo
912 912
         return $return;
913 913
     }
914 914
     
915
-    public static function offline_check( $vat_number, $country_code = '', $formatted = false ) {
916
-        $vat            = self::sanitize_vat( $vat_number, $country_code );
915
+    public static function offline_check($vat_number, $country_code = '', $formatted = false) {
916
+        $vat            = self::sanitize_vat($vat_number, $country_code);
917 917
         $vat_number     = $vat['vat_number'];
918 918
         $country_code   = $vat['iso'];
919 919
         $regex          = array();
920 920
         
921
-        switch ( $country_code ) {
921
+        switch ($country_code) {
922 922
             case 'AT':
923
-                $regex[] = '/^(AT)U(\d{8})$/';                           // Austria
923
+                $regex[] = '/^(AT)U(\d{8})$/'; // Austria
924 924
                 break;
925 925
             case 'BE':
926
-                $regex[] = '/^(BE)(0?\d{9})$/';                          // Belgium
926
+                $regex[] = '/^(BE)(0?\d{9})$/'; // Belgium
927 927
                 break;
928 928
             case 'BG':
929
-                $regex[] = '/^(BG)(\d{9,10})$/';                         // Bulgaria
929
+                $regex[] = '/^(BG)(\d{9,10})$/'; // Bulgaria
930 930
                 break;
931 931
             case 'CH':
932 932
             case 'CHE':
933
-                $regex[] = '/^(CHE)(\d{9})MWST$/';                       // Switzerland (Not EU)
933
+                $regex[] = '/^(CHE)(\d{9})MWST$/'; // Switzerland (Not EU)
934 934
                 break;
935 935
             case 'CY':
936
-                $regex[] = '/^(CY)([0-5|9]\d{7}[A-Z])$/';                // Cyprus
936
+                $regex[] = '/^(CY)([0-5|9]\d{7}[A-Z])$/'; // Cyprus
937 937
                 break;
938 938
             case 'CZ':
939
-                $regex[] = '/^(CZ)(\d{8,13})$/';                         // Czech Republic
939
+                $regex[] = '/^(CZ)(\d{8,13})$/'; // Czech Republic
940 940
                 break;
941 941
             case 'DE':
942
-                $regex[] = '/^(DE)([1-9]\d{8})$/';                       // Germany
942
+                $regex[] = '/^(DE)([1-9]\d{8})$/'; // Germany
943 943
                 break;
944 944
             case 'DK':
945
-                $regex[] = '/^(DK)(\d{8})$/';                            // Denmark
945
+                $regex[] = '/^(DK)(\d{8})$/'; // Denmark
946 946
                 break;
947 947
             case 'EE':
948
-                $regex[] = '/^(EE)(10\d{7})$/';                          // Estonia
948
+                $regex[] = '/^(EE)(10\d{7})$/'; // Estonia
949 949
                 break;
950 950
             case 'EL':
951
-                $regex[] = '/^(EL)(\d{9})$/';                            // Greece
951
+                $regex[] = '/^(EL)(\d{9})$/'; // Greece
952 952
                 break;
953 953
             case 'ES':
954
-                $regex[] = '/^(ES)([A-Z]\d{8})$/';                       // Spain (National juridical entities)
955
-                $regex[] = '/^(ES)([A-H|N-S|W]\d{7}[A-J])$/';            // Spain (Other juridical entities)
956
-                $regex[] = '/^(ES)([0-9|Y|Z]\d{7}[A-Z])$/';              // Spain (Personal entities type 1)
957
-                $regex[] = '/^(ES)([K|L|M|X]\d{7}[A-Z])$/';              // Spain (Personal entities type 2)
954
+                $regex[] = '/^(ES)([A-Z]\d{8})$/'; // Spain (National juridical entities)
955
+                $regex[] = '/^(ES)([A-H|N-S|W]\d{7}[A-J])$/'; // Spain (Other juridical entities)
956
+                $regex[] = '/^(ES)([0-9|Y|Z]\d{7}[A-Z])$/'; // Spain (Personal entities type 1)
957
+                $regex[] = '/^(ES)([K|L|M|X]\d{7}[A-Z])$/'; // Spain (Personal entities type 2)
958 958
                 break;
959 959
             case 'EU':
960
-                $regex[] = '/^(EU)(\d{9})$/';                            // EU-type
960
+                $regex[] = '/^(EU)(\d{9})$/'; // EU-type
961 961
                 break;
962 962
             case 'FI':
963
-                $regex[] = '/^(FI)(\d{8})$/';                            // Finland
963
+                $regex[] = '/^(FI)(\d{8})$/'; // Finland
964 964
                 break;
965 965
             case 'FR':
966
-                $regex[] = '/^(FR)(\d{11})$/';                           // France (1)
967
-                $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)](\d{10})$/';        // France (2)
968
-                $regex[] = '/^(FR)\d[(A-H)|(J-N)|(P-Z)](\d{9})$/';       // France (3)
969
-                $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)]{2}(\d{9})$/';      // France (4)
966
+                $regex[] = '/^(FR)(\d{11})$/'; // France (1)
967
+                $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)](\d{10})$/'; // France (2)
968
+                $regex[] = '/^(FR)\d[(A-H)|(J-N)|(P-Z)](\d{9})$/'; // France (3)
969
+                $regex[] = '/^(FR)[(A-H)|(J-N)|(P-Z)]{2}(\d{9})$/'; // France (4)
970 970
                 break;
971 971
             case 'GB':
972
-                $regex[] = '/^(GB)?(\d{9})$/';                           // UK (Standard)
973
-                $regex[] = '/^(GB)?(\d{12})$/';                          // UK (Branches)
974
-                $regex[] = '/^(GB)?(GD\d{3})$/';                         // UK (Government)
975
-                $regex[] = '/^(GB)?(HA\d{3})$/';                         // UK (Health authority)
972
+                $regex[] = '/^(GB)?(\d{9})$/'; // UK (Standard)
973
+                $regex[] = '/^(GB)?(\d{12})$/'; // UK (Branches)
974
+                $regex[] = '/^(GB)?(GD\d{3})$/'; // UK (Government)
975
+                $regex[] = '/^(GB)?(HA\d{3})$/'; // UK (Health authority)
976 976
                 break;
977 977
             case 'GR':
978
-                $regex[] = '/^(GR)(\d{8,9})$/';                          // Greece
978
+                $regex[] = '/^(GR)(\d{8,9})$/'; // Greece
979 979
                 break;
980 980
             case 'HR':
981
-                $regex[] = '/^(HR)(\d{11})$/';                           // Croatia
981
+                $regex[] = '/^(HR)(\d{11})$/'; // Croatia
982 982
                 break;
983 983
             case 'HU':
984
-                $regex[] = '/^(HU)(\d{8})$/';                            // Hungary
984
+                $regex[] = '/^(HU)(\d{8})$/'; // Hungary
985 985
                 break;
986 986
             case 'IE':
987
-                $regex[] = '/^(IE)(\d{7}[A-W])$/';                       // Ireland (1)
988
-                $regex[] = '/^(IE)([7-9][A-Z\*\+)]\d{5}[A-W])$/';        // Ireland (2)
989
-                $regex[] = '/^(IE)(\d{7}[A-Z][AH])$/';                   // Ireland (3) (new format from 1 Jan 2013)
987
+                $regex[] = '/^(IE)(\d{7}[A-W])$/'; // Ireland (1)
988
+                $regex[] = '/^(IE)([7-9][A-Z\*\+)]\d{5}[A-W])$/'; // Ireland (2)
989
+                $regex[] = '/^(IE)(\d{7}[A-Z][AH])$/'; // Ireland (3) (new format from 1 Jan 2013)
990 990
                 break;
991 991
             case 'IT':
992
-                $regex[] = '/^(IT)(\d{11})$/';                           // Italy
992
+                $regex[] = '/^(IT)(\d{11})$/'; // Italy
993 993
                 break;
994 994
             case 'LV':
995
-                $regex[] = '/^(LV)(\d{11})$/';                           // Latvia
995
+                $regex[] = '/^(LV)(\d{11})$/'; // Latvia
996 996
                 break;
997 997
             case 'LT':
998
-                $regex[] = '/^(LT)(\d{9}|\d{12})$/';                     // Lithuania
998
+                $regex[] = '/^(LT)(\d{9}|\d{12})$/'; // Lithuania
999 999
                 break;
1000 1000
             case 'LU':
1001
-                $regex[] = '/^(LU)(\d{8})$/';                            // Luxembourg
1001
+                $regex[] = '/^(LU)(\d{8})$/'; // Luxembourg
1002 1002
                 break;
1003 1003
             case 'MT':
1004
-                $regex[] = '/^(MT)([1-9]\d{7})$/';                       // Malta
1004
+                $regex[] = '/^(MT)([1-9]\d{7})$/'; // Malta
1005 1005
                 break;
1006 1006
             case 'NL':
1007
-                $regex[] = '/^(NL)(\d{9})B\d{2}$/';                      // Netherlands
1007
+                $regex[] = '/^(NL)(\d{9})B\d{2}$/'; // Netherlands
1008 1008
                 break;
1009 1009
             case 'NO':
1010
-                $regex[] = '/^(NO)(\d{9})$/';                            // Norway (Not EU)
1010
+                $regex[] = '/^(NO)(\d{9})$/'; // Norway (Not EU)
1011 1011
                 break;
1012 1012
             case 'PL':
1013
-                $regex[] = '/^(PL)(\d{10})$/';                           // Poland
1013
+                $regex[] = '/^(PL)(\d{10})$/'; // Poland
1014 1014
                 break;
1015 1015
             case 'PT':
1016
-                $regex[] = '/^(PT)(\d{9})$/';                            // Portugal
1016
+                $regex[] = '/^(PT)(\d{9})$/'; // Portugal
1017 1017
                 break;
1018 1018
             case 'RO':
1019
-                $regex[] = '/^(RO)([1-9]\d{1,9})$/';                     // Romania
1019
+                $regex[] = '/^(RO)([1-9]\d{1,9})$/'; // Romania
1020 1020
                 break;
1021 1021
             case 'RS':
1022
-                $regex[] = '/^(RS)(\d{9})$/';                            // Serbia (Not EU)
1022
+                $regex[] = '/^(RS)(\d{9})$/'; // Serbia (Not EU)
1023 1023
                 break;
1024 1024
             case 'SI':
1025
-                $regex[] = '/^(SI)([1-9]\d{7})$/';                       // Slovenia
1025
+                $regex[] = '/^(SI)([1-9]\d{7})$/'; // Slovenia
1026 1026
                 break;
1027 1027
             case 'SK':
1028
-                $regex[] = '/^(SK)([1-9]\d[(2-4)|(6-9)]\d{7})$/';        // Slovakia Republic
1028
+                $regex[] = '/^(SK)([1-9]\d[(2-4)|(6-9)]\d{7})$/'; // Slovakia Republic
1029 1029
                 break;
1030 1030
             case 'SE':
1031
-                $regex[] = '/^(SE)(\d{10}01)$/';                         // Sweden
1031
+                $regex[] = '/^(SE)(\d{10}01)$/'; // Sweden
1032 1032
                 break;
1033 1033
             default:
1034 1034
                 $regex = array();
1035 1035
             break;
1036 1036
         }
1037 1037
         
1038
-        if ( empty( $regex ) ) {
1038
+        if (empty($regex)) {
1039 1039
             return false;
1040 1040
         }
1041 1041
         
1042
-        foreach ( $regex as $pattern ) {
1042
+        foreach ($regex as $pattern) {
1043 1043
             $matches = null;
1044
-            preg_match_all( $pattern, $vat_number, $matches );
1044
+            preg_match_all($pattern, $vat_number, $matches);
1045 1045
             
1046
-            if ( !empty( $matches[1][0] ) && !empty( $matches[2][0] ) ) {
1047
-                if ( $formatted ) {
1048
-                    return array( 'code' => $matches[1][0], 'number' => $matches[2][0] );
1046
+            if (!empty($matches[1][0]) && !empty($matches[2][0])) {
1047
+                if ($formatted) {
1048
+                    return array('code' => $matches[1][0], 'number' => $matches[2][0]);
1049 1049
                 } else {
1050 1050
                     return true;
1051 1051
                 }
@@ -1055,75 +1055,75 @@  discard block
 block discarded – undo
1055 1055
         return false;
1056 1056
     }
1057 1057
     
1058
-    public static function vies_check( $vat_number, $country_code = '', $result = false ) {
1059
-        $vat            = self::sanitize_vat( $vat_number, $country_code );
1058
+    public static function vies_check($vat_number, $country_code = '', $result = false) {
1059
+        $vat            = self::sanitize_vat($vat_number, $country_code);
1060 1060
         $vat_number     = $vat['vat'];
1061 1061
         $iso            = $vat['iso'];
1062 1062
         
1063
-        $url = 'http://ec.europa.eu/taxation_customs/vies/viesquer.do?ms=' . urlencode( $iso ) . '&iso=' . urlencode( $iso ) . '&vat=' . urlencode( $vat_number );
1063
+        $url = 'http://ec.europa.eu/taxation_customs/vies/viesquer.do?ms=' . urlencode($iso) . '&iso=' . urlencode($iso) . '&vat=' . urlencode($vat_number);
1064 1064
         
1065
-        if ( ini_get( 'allow_url_fopen' ) ) {
1066
-            $response = file_get_contents( $url );
1067
-        } else if ( function_exists( 'curl_init' ) ) {
1065
+        if (ini_get('allow_url_fopen')) {
1066
+            $response = file_get_contents($url);
1067
+        } else if (function_exists('curl_init')) {
1068 1068
             $ch = curl_init();
1069 1069
             
1070
-            curl_setopt( $ch, CURLOPT_URL, $url );
1071
-            curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, 30 );
1072
-            curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
1073
-            curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, 0 );
1074
-            curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, 0 );
1070
+            curl_setopt($ch, CURLOPT_URL, $url);
1071
+            curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
1072
+            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
1073
+            curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
1074
+            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
1075 1075
             
1076
-            $response = curl_exec( $ch );
1076
+            $response = curl_exec($ch);
1077 1077
             
1078
-            if ( curl_errno( $ch ) ) {
1079
-                wpinv_error_log( curl_error( $ch ), 'VIES CHECK ERROR' );
1078
+            if (curl_errno($ch)) {
1079
+                wpinv_error_log(curl_error($ch), 'VIES CHECK ERROR');
1080 1080
                 $response = '';
1081 1081
             }
1082 1082
             
1083
-            curl_close( $ch );
1083
+            curl_close($ch);
1084 1084
         } else {
1085
-            wpinv_error_log( 'To use VIES CHECK you must have allow_url_fopen is ON or cURL installed & active on your server.', 'VIES CHECK ERROR' );
1085
+            wpinv_error_log('To use VIES CHECK you must have allow_url_fopen is ON or cURL installed & active on your server.', 'VIES CHECK ERROR');
1086 1086
         }
1087 1087
         
1088
-        if ( empty( $response ) ) {
1088
+        if (empty($response)) {
1089 1089
             return $result;
1090 1090
         }
1091 1091
 
1092
-        if ( preg_match( '/invalid VAT number/i', $response ) ) {
1092
+        if (preg_match('/invalid VAT number/i', $response)) {
1093 1093
             return false;
1094
-        } else if ( preg_match( '/valid VAT number/i', $response, $matches ) ) {
1095
-            $content = explode( "valid VAT number", htmlentities( $response ) );
1094
+        } else if (preg_match('/valid VAT number/i', $response, $matches)) {
1095
+            $content = explode("valid VAT number", htmlentities($response));
1096 1096
             
1097
-            if ( !empty( $content[1] ) ) {
1098
-                preg_match_all( '/<tr>(.*?)<td.*?>(.*?)<\/td>(.*?)<\/tr>/si', html_entity_decode( $content[1] ), $matches );
1097
+            if (!empty($content[1])) {
1098
+                preg_match_all('/<tr>(.*?)<td.*?>(.*?)<\/td>(.*?)<\/tr>/si', html_entity_decode($content[1]), $matches);
1099 1099
                 
1100
-                if ( !empty( $matches[2] ) && $matches[3] ) {
1100
+                if (!empty($matches[2]) && $matches[3]) {
1101 1101
                     $return = array();
1102 1102
                     
1103
-                    foreach ( $matches[2] as $key => $label ) {
1104
-                        $label = trim( $label );
1103
+                    foreach ($matches[2] as $key => $label) {
1104
+                        $label = trim($label);
1105 1105
                         
1106
-                        switch ( strtolower( $label ) ) {
1106
+                        switch (strtolower($label)) {
1107 1107
                             case 'member state':
1108
-                                $return['state'] = trim( strip_tags( $matches[3][$key] ) );
1108
+                                $return['state'] = trim(strip_tags($matches[3][$key]));
1109 1109
                             break;
1110 1110
                             case 'vat number':
1111
-                                $return['number'] = trim( strip_tags( $matches[3][$key] ) );
1111
+                                $return['number'] = trim(strip_tags($matches[3][$key]));
1112 1112
                             break;
1113 1113
                             case 'name':
1114
-                                $return['company'] = trim( strip_tags( $matches[3][$key] ) );
1114
+                                $return['company'] = trim(strip_tags($matches[3][$key]));
1115 1115
                             break;
1116 1116
                             case 'address':
1117
-                                $address           = str_replace( array( "<br><br>", "<br /><br />", "<br/><br/>" ), "<br>", html_entity_decode( trim( $matches[3][$key] ) ) );
1118
-                                $return['address'] = trim( strip_tags( $address, '<br>' ) );
1117
+                                $address           = str_replace(array("<br><br>", "<br /><br />", "<br/><br/>"), "<br>", html_entity_decode(trim($matches[3][$key])));
1118
+                                $return['address'] = trim(strip_tags($address, '<br>'));
1119 1119
                             break;
1120 1120
                             case 'consultation number':
1121
-                                $return['consultation'] = trim( strip_tags( $matches[3][$key] ) );
1121
+                                $return['consultation'] = trim(strip_tags($matches[3][$key]));
1122 1122
                             break;
1123 1123
                         }
1124 1124
                     }
1125 1125
                     
1126
-                    if ( !empty( $return ) ) {
1126
+                    if (!empty($return)) {
1127 1127
                         return $return;
1128 1128
                     }
1129 1129
                 }
@@ -1135,63 +1135,63 @@  discard block
 block discarded – undo
1135 1135
         }
1136 1136
     }
1137 1137
     
1138
-    public static function check_vat( $vat_number, $country_code = '' ) {        
1138
+    public static function check_vat($vat_number, $country_code = '') {        
1139 1139
         $vat_name           = self::get_vat_name();
1140 1140
         
1141 1141
         $return             = array();
1142 1142
         $return['valid']    = false;
1143
-        $return['message']  = wp_sprintf( __( '%s number not validated', 'invoicing' ), $vat_name );
1143
+        $return['message']  = wp_sprintf(__('%s number not validated', 'invoicing'), $vat_name);
1144 1144
                 
1145
-        if ( !wpinv_get_option( 'vat_offline_check' ) && !self::offline_check( $vat_number, $country_code ) ) {
1145
+        if (!wpinv_get_option('vat_offline_check') && !self::offline_check($vat_number, $country_code)) {
1146 1146
             return $return;
1147 1147
         }
1148 1148
             
1149
-        $response = self::vies_check( $vat_number, $country_code );
1149
+        $response = self::vies_check($vat_number, $country_code);
1150 1150
         
1151
-        if ( $response ) {
1152
-            $return['valid']    = true;
1151
+        if ($response) {
1152
+            $return['valid'] = true;
1153 1153
             
1154
-            if ( is_array( $response ) ) {
1155
-                $return['company'] = isset( $response['company'] ) ? $response['company'] : '';
1156
-                $return['address'] = isset( $response['address'] ) ? $response['address'] : '';
1154
+            if (is_array($response)) {
1155
+                $return['company'] = isset($response['company']) ? $response['company'] : '';
1156
+                $return['address'] = isset($response['address']) ? $response['address'] : '';
1157 1157
                 $return['message'] = $return['company'] . '<br/>' . $return['address'];
1158 1158
             }
1159 1159
         } else {
1160 1160
             $return['valid']    = false;
1161
-            $return['message']  = wp_sprintf( __( 'Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing' ), $vat_name );
1161
+            $return['message']  = wp_sprintf(__('Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing'), $vat_name);
1162 1162
         }
1163 1163
         
1164 1164
         return $return;
1165 1165
     }
1166 1166
     
1167
-    public static function request_euvatrates( $group ) {
1167
+    public static function request_euvatrates($group) {
1168 1168
         $response               = array();
1169 1169
         $response['success']    = false;
1170 1170
         $response['error']      = null;
1171 1171
         $response['eurates']    = null;
1172 1172
         
1173 1173
         $euvatrates_url = 'https://euvatrates.com/rates.json';
1174
-        $euvatrates_url = apply_filters( 'wpinv_euvatrates_url', $euvatrates_url );
1175
-        $api_response   = wp_remote_get( $euvatrates_url );
1174
+        $euvatrates_url = apply_filters('wpinv_euvatrates_url', $euvatrates_url);
1175
+        $api_response   = wp_remote_get($euvatrates_url);
1176 1176
     
1177 1177
         try {
1178
-            if ( is_wp_error( $api_response ) ) {
1179
-                $response['error']      = __( $api_response->get_error_message(), 'invoicing' );
1178
+            if (is_wp_error($api_response)) {
1179
+                $response['error'] = __($api_response->get_error_message(), 'invoicing');
1180 1180
             } else {
1181
-                $body = json_decode( $api_response['body'] );
1181
+                $body = json_decode($api_response['body']);
1182 1182
                 
1183
-                if ( isset( $body->rates ) ) {
1183
+                if (isset($body->rates)) {
1184 1184
                     $rates = array();
1185 1185
                     
1186
-                    foreach ( $body->rates as $country_code => $rate ) {
1186
+                    foreach ($body->rates as $country_code => $rate) {
1187 1187
                         $vat_rate = array();
1188 1188
                         $vat_rate['country']        = $rate->country;
1189
-                        $vat_rate['standard']       = (float)$rate->standard_rate;
1190
-                        $vat_rate['reduced']        = (float)$rate->reduced_rate;
1191
-                        $vat_rate['superreduced']   = (float)$rate->super_reduced_rate;
1192
-                        $vat_rate['parking']        = (float)$rate->parking_rate;
1189
+                        $vat_rate['standard']       = (float) $rate->standard_rate;
1190
+                        $vat_rate['reduced']        = (float) $rate->reduced_rate;
1191
+                        $vat_rate['superreduced']   = (float) $rate->super_reduced_rate;
1192
+                        $vat_rate['parking']        = (float) $rate->parking_rate;
1193 1193
                         
1194
-                        if ( $group !== '' && in_array( $group, array( 'standard', 'reduced', 'superreduced', 'parking' ) ) ) {
1194
+                        if ($group !== '' && in_array($group, array('standard', 'reduced', 'superreduced', 'parking'))) {
1195 1195
                             $vat_rate_group = array();
1196 1196
                             $vat_rate_group['country'] = $rate->country;
1197 1197
                             $vat_rate_group[$group]    = $vat_rate[$group];
@@ -1203,79 +1203,79 @@  discard block
 block discarded – undo
1203 1203
                     }
1204 1204
                     
1205 1205
                     $response['success']    = true;                                
1206
-                    $response['rates']      = apply_filters( 'wpinv_process_euvatrates', $rates, $api_response, $group );
1206
+                    $response['rates']      = apply_filters('wpinv_process_euvatrates', $rates, $api_response, $group);
1207 1207
                 } else {
1208
-                    $response['error']      = __( 'No EU rates found!', 'invoicing' );
1208
+                    $response['error']      = __('No EU rates found!', 'invoicing');
1209 1209
                 }
1210 1210
             }
1211
-        } catch ( Exception $e ) {
1212
-            $response['error'] = __( $e->getMessage(), 'invoicing' );
1211
+        } catch (Exception $e) {
1212
+            $response['error'] = __($e->getMessage(), 'invoicing');
1213 1213
         }
1214 1214
         
1215
-        return apply_filters( 'wpinv_response_euvatrates', $response, $group );
1215
+        return apply_filters('wpinv_response_euvatrates', $response, $group);
1216 1216
     }    
1217 1217
     
1218
-    public static function requires_vat( $requires_vat = false, $user_id = 0, $is_digital = null ) {
1218
+    public static function requires_vat($requires_vat = false, $user_id = 0, $is_digital = null) {
1219 1219
         global $wpi_item_id, $wpi_country;
1220 1220
         
1221
-        if ( !empty( $_POST['wpinv_country'] ) ) {
1222
-            $country_code = trim( $_POST['wpinv_country'] );
1223
-        } else if ( !empty( $_POST['country'] ) ) {
1224
-            $country_code = trim( $_POST['country'] );
1225
-        } else if ( !empty( $wpi_country ) ) {
1221
+        if (!empty($_POST['wpinv_country'])) {
1222
+            $country_code = trim($_POST['wpinv_country']);
1223
+        } else if (!empty($_POST['country'])) {
1224
+            $country_code = trim($_POST['country']);
1225
+        } else if (!empty($wpi_country)) {
1226 1226
             $country_code = $wpi_country;
1227 1227
         } else {
1228
-            $country_code = self::get_user_country( '', $user_id );
1228
+            $country_code = self::get_user_country('', $user_id);
1229 1229
         }
1230 1230
         
1231
-        if ( $is_digital === null && $wpi_item_id ) {
1232
-            $is_digital = $wpi_item_id ? self::item_has_digital_rule( $wpi_item_id ) : self::allow_vat_rules();
1231
+        if ($is_digital === null && $wpi_item_id) {
1232
+            $is_digital = $wpi_item_id ? self::item_has_digital_rule($wpi_item_id) : self::allow_vat_rules();
1233 1233
         }
1234 1234
         
1235
-        if ( !empty( $country_code ) ) {
1236
-            $requires_vat = ( self::is_eu_state( $country_code ) && ( self::is_eu_state( self::$default_country ) || $is_digital ) ) || ( self::is_gst_country( $country_code ) && self::is_gst_country( self::$default_country ) );
1235
+        if (!empty($country_code)) {
1236
+            $requires_vat = (self::is_eu_state($country_code) && (self::is_eu_state(self::$default_country) || $is_digital)) || (self::is_gst_country($country_code) && self::is_gst_country(self::$default_country));
1237 1237
         }
1238 1238
         
1239
-        return apply_filters( 'wpinv_requires_vat', $requires_vat, $user_id );
1239
+        return apply_filters('wpinv_requires_vat', $requires_vat, $user_id);
1240 1240
     }
1241 1241
     
1242
-    public static function tax_label( $label = '' ) {
1242
+    public static function tax_label($label = '') {
1243 1243
         global $wpi_requires_vat;
1244 1244
         
1245
-        if ( !( $wpi_requires_vat !== 0 && $wpi_requires_vat ) ) {
1246
-            $wpi_requires_vat = self::requires_vat( 0, false );
1245
+        if (!($wpi_requires_vat !== 0 && $wpi_requires_vat)) {
1246
+            $wpi_requires_vat = self::requires_vat(0, false);
1247 1247
         }
1248 1248
         
1249
-        return $wpi_requires_vat ? __( self::get_vat_name(), 'invoicing' ) : ( $label ? $label : __( 'Tax', 'invoicing' ) );
1249
+        return $wpi_requires_vat ? __(self::get_vat_name(), 'invoicing') : ($label ? $label : __('Tax', 'invoicing'));
1250 1250
     }
1251 1251
     
1252 1252
     public static function standard_rates_label() {
1253
-        return __( 'Standard Rates', 'invoicing' );
1253
+        return __('Standard Rates', 'invoicing');
1254 1254
     }
1255 1255
     
1256
-    public static function get_rate_classes( $with_desc = false ) {        
1257
-        $rate_classes_option = get_option( '_wpinv_vat_rate_classes', true );
1258
-        $classes = maybe_unserialize( $rate_classes_option );
1256
+    public static function get_rate_classes($with_desc = false) {        
1257
+        $rate_classes_option = get_option('_wpinv_vat_rate_classes', true);
1258
+        $classes = maybe_unserialize($rate_classes_option);
1259 1259
         
1260
-        if ( empty( $classes ) || !is_array( $classes ) ) {
1260
+        if (empty($classes) || !is_array($classes)) {
1261 1261
             $classes = array();
1262 1262
         }
1263 1263
 
1264 1264
         $rate_classes = array();
1265
-        if ( !array_key_exists( '_standard', $classes ) ) {
1266
-            if ( $with_desc ) {
1267
-                $rate_classes['_standard'] = array( 'name' => self::standard_rates_label(), 'desc' => __( 'EU member states standard VAT rates', 'invoicing' ) );
1265
+        if (!array_key_exists('_standard', $classes)) {
1266
+            if ($with_desc) {
1267
+                $rate_classes['_standard'] = array('name' => self::standard_rates_label(), 'desc' => __('EU member states standard VAT rates', 'invoicing'));
1268 1268
             } else {
1269 1269
                 $rate_classes['_standard'] = self::standard_rates_label();
1270 1270
             }
1271 1271
         }
1272 1272
         
1273
-        foreach ( $classes as $key => $class ) {
1274
-            $name = !empty( $class['name'] ) ? __( $class['name'], 'invoicing' ) : $key;
1275
-            $desc = !empty( $class['desc'] ) ? __( $class['desc'], 'invoicing' ) : '';
1273
+        foreach ($classes as $key => $class) {
1274
+            $name = !empty($class['name']) ? __($class['name'], 'invoicing') : $key;
1275
+            $desc = !empty($class['desc']) ? __($class['desc'], 'invoicing') : '';
1276 1276
             
1277
-            if ( $with_desc ) {
1278
-                $rate_classes[$key] = array( 'name' => $name, 'desc' => $desc );
1277
+            if ($with_desc) {
1278
+                $rate_classes[$key] = array('name' => $name, 'desc' => $desc);
1279 1279
             } else {
1280 1280
                 $rate_classes[$key] = $name;
1281 1281
             }
@@ -1286,15 +1286,15 @@  discard block
 block discarded – undo
1286 1286
     
1287 1287
     public static function get_all_classes() {        
1288 1288
         $classes            = self::get_rate_classes();
1289
-        $classes['_exempt'] = __( 'Exempt (0%)', 'invoicing' );
1289
+        $classes['_exempt'] = __('Exempt (0%)', 'invoicing');
1290 1290
         
1291
-        return apply_filters( 'wpinv_vat_get_all_classes', $classes );
1291
+        return apply_filters('wpinv_vat_get_all_classes', $classes);
1292 1292
     }
1293 1293
     
1294
-    public static function get_class_desc( $rate_class ) {        
1295
-        $rate_classes = self::get_rate_classes( true );
1294
+    public static function get_class_desc($rate_class) {        
1295
+        $rate_classes = self::get_rate_classes(true);
1296 1296
 
1297
-        if ( !empty( $rate_classes ) && isset( $rate_classes[$rate_class] ) && isset( $rate_classes[$rate_class]['desc'] ) ) {
1297
+        if (!empty($rate_classes) && isset($rate_classes[$rate_class]) && isset($rate_classes[$rate_class]['desc'])) {
1298 1298
             return $rate_classes[$rate_class]['desc'];
1299 1299
         }
1300 1300
         
@@ -1310,106 +1310,106 @@  discard block
 block discarded – undo
1310 1310
             'increased'     => 'Increased'
1311 1311
         );
1312 1312
         
1313
-        return apply_filters( 'wpinv_get_vat_groups', $vat_groups );
1313
+        return apply_filters('wpinv_get_vat_groups', $vat_groups);
1314 1314
     }
1315 1315
 
1316 1316
     public static function get_rules() {
1317 1317
         $vat_rules = array(
1318
-            'digital' => __( 'Digital Product', 'invoicing' ),
1319
-            'physical' => __( 'Physical Product', 'invoicing' )
1318
+            'digital' => __('Digital Product', 'invoicing'),
1319
+            'physical' => __('Physical Product', 'invoicing')
1320 1320
         );
1321
-        return apply_filters( 'wpinv_get_vat_rules', $vat_rules );
1321
+        return apply_filters('wpinv_get_vat_rules', $vat_rules);
1322 1322
     }
1323 1323
 
1324
-    public static function get_vat_rates( $class ) {
1325
-        if ( $class === '_standard' ) {
1324
+    public static function get_vat_rates($class) {
1325
+        if ($class === '_standard') {
1326 1326
             return wpinv_get_tax_rates();
1327 1327
         }
1328 1328
 
1329 1329
         $rates = self::get_non_standard_rates();
1330 1330
 
1331
-        return array_key_exists( $class, $rates ) ? $rates[$class] : array();
1331
+        return array_key_exists($class, $rates) ? $rates[$class] : array();
1332 1332
     }
1333 1333
 
1334 1334
     public static function get_non_standard_rates() {
1335
-        $option = get_option( 'wpinv_vat_rates', array());
1336
-        return is_array( $option ) ? $option : array();
1335
+        $option = get_option('wpinv_vat_rates', array());
1336
+        return is_array($option) ? $option : array();
1337 1337
     }
1338 1338
     
1339 1339
     public static function allow_vat_rules() {
1340
-        return ( wpinv_use_taxes() && wpinv_get_option( 'apply_vat_rules' ) ? true : false );
1340
+        return (wpinv_use_taxes() && wpinv_get_option('apply_vat_rules') ? true : false);
1341 1341
     }
1342 1342
     
1343 1343
     public static function allow_vat_classes() {
1344 1344
         return false; // TODO
1345
-        return ( wpinv_get_option( 'vat_allow_classes' ) ? true : false );
1345
+        return (wpinv_get_option('vat_allow_classes') ? true : false);
1346 1346
     }
1347 1347
     
1348
-    public static function get_item_class( $postID ) {
1349
-        $class = get_post_meta( $postID, '_wpinv_vat_class', true );
1348
+    public static function get_item_class($postID) {
1349
+        $class = get_post_meta($postID, '_wpinv_vat_class', true);
1350 1350
 
1351
-        if ( empty( $class ) ) {
1351
+        if (empty($class)) {
1352 1352
             $class = '_standard';
1353 1353
         }
1354 1354
         
1355
-        return apply_filters( 'wpinv_get_item_vat_class', $class, $postID );
1355
+        return apply_filters('wpinv_get_item_vat_class', $class, $postID);
1356 1356
     }
1357 1357
     
1358
-    public static function item_class_label( $postID ) {        
1358
+    public static function item_class_label($postID) {        
1359 1359
         $vat_classes = self::get_all_classes();
1360 1360
         
1361
-        $class = self::get_item_class( $postID );
1362
-        $class = isset( $vat_classes[$class] ) ? $vat_classes[$class] : __( $class, 'invoicing' );
1361
+        $class = self::get_item_class($postID);
1362
+        $class = isset($vat_classes[$class]) ? $vat_classes[$class] : __($class, 'invoicing');
1363 1363
         
1364
-        return apply_filters( 'wpinv_item_class_label', $class, $postID );
1364
+        return apply_filters('wpinv_item_class_label', $class, $postID);
1365 1365
     }
1366 1366
     
1367
-    public static function get_item_rule( $postID ) {        
1368
-        $rule_type = get_post_meta( $postID, '_wpinv_vat_rule', true );
1367
+    public static function get_item_rule($postID) {        
1368
+        $rule_type = get_post_meta($postID, '_wpinv_vat_rule', true);
1369 1369
         
1370
-        if ( empty( $rule_type ) ) {        
1370
+        if (empty($rule_type)) {        
1371 1371
             $rule_type = self::allow_vat_rules() ? 'digital' : 'physical';
1372 1372
         }
1373 1373
         
1374
-        return apply_filters( 'wpinv_item_get_vat_rule', $rule_type, $postID );
1374
+        return apply_filters('wpinv_item_get_vat_rule', $rule_type, $postID);
1375 1375
     }
1376 1376
     
1377
-    public static function item_rule_label( $postID ) {
1377
+    public static function item_rule_label($postID) {
1378 1378
         $vat_rules  = self::get_rules();
1379
-        $vat_rule   = self::get_item_rule( $postID );
1380
-        $vat_rule   = isset( $vat_rules[$vat_rule] ) ? $vat_rules[$vat_rule] : $vat_rule;
1379
+        $vat_rule   = self::get_item_rule($postID);
1380
+        $vat_rule   = isset($vat_rules[$vat_rule]) ? $vat_rules[$vat_rule] : $vat_rule;
1381 1381
         
1382
-        return apply_filters( 'wpinv_item_rule_label', $vat_rule, $postID );
1382
+        return apply_filters('wpinv_item_rule_label', $vat_rule, $postID);
1383 1383
     }
1384 1384
     
1385
-    public static function item_has_digital_rule( $item_id = 0 ) {        
1386
-        return self::get_item_rule( $item_id ) == 'digital' ? true : false;
1385
+    public static function item_has_digital_rule($item_id = 0) {        
1386
+        return self::get_item_rule($item_id) == 'digital' ? true : false;
1387 1387
     }
1388 1388
     
1389
-    public static function invoice_has_digital_rule( $invoice = 0 ) {        
1390
-        if ( !self::allow_vat_rules() ) {
1389
+    public static function invoice_has_digital_rule($invoice = 0) {        
1390
+        if (!self::allow_vat_rules()) {
1391 1391
             return false;
1392 1392
         }
1393 1393
         
1394
-        if ( empty( $invoice ) ) {
1394
+        if (empty($invoice)) {
1395 1395
             return true;
1396 1396
         }
1397 1397
         
1398
-        if ( is_int( $invoice ) ) {
1399
-            $invoice = new WPInv_Invoice( $invoice );
1398
+        if (is_int($invoice)) {
1399
+            $invoice = new WPInv_Invoice($invoice);
1400 1400
         }
1401 1401
         
1402
-        if ( !( is_object( $invoice ) && is_a( $invoice, 'WPInv_Invoice' ) ) ) {
1402
+        if (!(is_object($invoice) && is_a($invoice, 'WPInv_Invoice'))) {
1403 1403
             return true;
1404 1404
         }
1405 1405
         
1406
-        $cart_items  = $invoice->get_cart_details();
1406
+        $cart_items = $invoice->get_cart_details();
1407 1407
         
1408
-        if ( !empty( $cart_items ) ) {
1408
+        if (!empty($cart_items)) {
1409 1409
             $has_digital_rule = false;
1410 1410
             
1411
-            foreach ( $cart_items as $key => $item ) {
1412
-                if ( self::item_has_digital_rule( $item['id'] ) ) {
1411
+            foreach ($cart_items as $key => $item) {
1412
+                if (self::item_has_digital_rule($item['id'])) {
1413 1413
                     $has_digital_rule = true;
1414 1414
                     break;
1415 1415
                 }
@@ -1421,67 +1421,67 @@  discard block
 block discarded – undo
1421 1421
         return $has_digital_rule;
1422 1422
     }
1423 1423
     
1424
-    public static function item_is_taxable( $item_id = 0, $country = false, $state = false ) {        
1425
-        if ( !wpinv_use_taxes() ) {
1424
+    public static function item_is_taxable($item_id = 0, $country = false, $state = false) {        
1425
+        if (!wpinv_use_taxes()) {
1426 1426
             return false;
1427 1427
         }
1428 1428
         
1429 1429
         $is_taxable = true;
1430 1430
 
1431
-        if ( !empty( $item_id ) && self::get_item_class( $item_id ) == '_exempt' ) {
1431
+        if (!empty($item_id) && self::get_item_class($item_id) == '_exempt') {
1432 1432
             $is_taxable = false;
1433 1433
         }
1434 1434
         
1435
-        return apply_filters( 'wpinv_item_is_taxable', $is_taxable, $item_id, $country , $state );
1435
+        return apply_filters('wpinv_item_is_taxable', $is_taxable, $item_id, $country, $state);
1436 1436
     }
1437 1437
     
1438
-    public static function find_rate( $country, $state, $rate, $class ) {
1438
+    public static function find_rate($country, $state, $rate, $class) {
1439 1439
         global $wpi_zero_tax;
1440 1440
 
1441
-        if ( $class === '_exempt' || $wpi_zero_tax ) {
1441
+        if ($class === '_exempt' || $wpi_zero_tax) {
1442 1442
             return 0;
1443 1443
         }
1444 1444
 
1445
-        $tax_rates   = wpinv_get_tax_rates();
1445
+        $tax_rates = wpinv_get_tax_rates();
1446 1446
         
1447
-        if ( $class !== '_standard' ) {
1448
-            $class_rates = self::get_vat_rates( $class );
1447
+        if ($class !== '_standard') {
1448
+            $class_rates = self::get_vat_rates($class);
1449 1449
             
1450
-            if ( is_array( $class_rates ) ) {
1450
+            if (is_array($class_rates)) {
1451 1451
                 $indexed_class_rates = array();
1452 1452
                 
1453
-                foreach ( $class_rates as $key => $cr ) {
1453
+                foreach ($class_rates as $key => $cr) {
1454 1454
                     $indexed_class_rates[$cr['country']] = $cr;
1455 1455
                 }
1456 1456
 
1457
-                $tax_rates = array_map( function( $tr ) use( $indexed_class_rates ) {
1457
+                $tax_rates = array_map(function($tr) use($indexed_class_rates) {
1458 1458
                     $tr_country = $tr['country'];
1459
-                    if ( !isset( $indexed_class_rates[$tr_country] ) ) {
1459
+                    if (!isset($indexed_class_rates[$tr_country])) {
1460 1460
                         return $tr;
1461 1461
                     }
1462 1462
                     $icr = $indexed_class_rates[$tr_country];
1463
-                    return ( empty( $icr['rate'] ) && $icr['rate'] !== '0' ) ? $tr : $icr;
1463
+                    return (empty($icr['rate']) && $icr['rate'] !== '0') ? $tr : $icr;
1464 1464
 
1465
-                }, $tax_rates, $class_rates );
1465
+                }, $tax_rates, $class_rates);
1466 1466
             }
1467 1467
         }
1468 1468
 
1469
-        if ( !empty( $tax_rates ) ) {
1470
-            foreach ( $tax_rates as $key => $tax_rate ) {
1471
-                if ( $country != $tax_rate['country'] )
1469
+        if (!empty($tax_rates)) {
1470
+            foreach ($tax_rates as $key => $tax_rate) {
1471
+                if ($country != $tax_rate['country'])
1472 1472
                     continue;
1473 1473
 
1474
-                if ( !empty( $tax_rate['global'] ) ) {
1475
-                    if ( 0 !== $tax_rate['rate'] || !empty( $tax_rate['rate'] ) ) {
1476
-                        $rate = number_format( $tax_rate['rate'], 4 );
1474
+                if (!empty($tax_rate['global'])) {
1475
+                    if (0 !== $tax_rate['rate'] || !empty($tax_rate['rate'])) {
1476
+                        $rate = number_format($tax_rate['rate'], 4);
1477 1477
                     }
1478 1478
                 } else {
1479
-                    if ( empty( $tax_rate['state'] ) || strtolower( $state ) != strtolower( $tax_rate['state'] ) )
1479
+                    if (empty($tax_rate['state']) || strtolower($state) != strtolower($tax_rate['state']))
1480 1480
                         continue;
1481 1481
 
1482 1482
                     $state_rate = $tax_rate['rate'];
1483
-                    if ( 0 !== $state_rate || !empty( $state_rate ) ) {
1484
-                        $rate = number_format( $state_rate, 4 );
1483
+                    if (0 !== $state_rate || !empty($state_rate)) {
1484
+                        $rate = number_format($state_rate, 4);
1485 1485
                     }
1486 1486
                 }
1487 1487
             }
@@ -1490,84 +1490,84 @@  discard block
 block discarded – undo
1490 1490
         return $rate;
1491 1491
     }
1492 1492
     
1493
-    public static function get_rate( $rate = 1, $country = '', $state = '', $item_id = 0 ) {
1493
+    public static function get_rate($rate = 1, $country = '', $state = '', $item_id = 0) {
1494 1494
         global $wpinv_options, $wpi_session, $wpi_item_id, $wpi_zero_tax;
1495 1495
         
1496 1496
         $item_id = $item_id > 0 ? $item_id : $wpi_item_id;
1497 1497
         $allow_vat_classes = self::allow_vat_classes();
1498
-        $class = $item_id ? self::get_item_class( $item_id ) : '_standard';
1498
+        $class = $item_id ? self::get_item_class($item_id) : '_standard';
1499 1499
 
1500
-        if ( $class === '_exempt' || $wpi_zero_tax ) {
1500
+        if ($class === '_exempt' || $wpi_zero_tax) {
1501 1501
             return 0;
1502
-        } else if ( !$allow_vat_classes ) {
1502
+        } else if (!$allow_vat_classes) {
1503 1503
             $class = '_standard';
1504 1504
         }
1505 1505
 
1506
-        if( !empty( $_POST['wpinv_country'] ) ) {
1506
+        if (!empty($_POST['wpinv_country'])) {
1507 1507
             $post_country = $_POST['wpinv_country'];
1508
-        } elseif( !empty( $_POST['wpinv_country'] ) ) {
1508
+        } elseif (!empty($_POST['wpinv_country'])) {
1509 1509
             $post_country = $_POST['wpinv_country'];
1510
-        } elseif( !empty( $_POST['country'] ) ) {
1510
+        } elseif (!empty($_POST['country'])) {
1511 1511
             $post_country = $_POST['country'];
1512 1512
         } else {
1513 1513
             $post_country = '';
1514 1514
         }
1515 1515
 
1516
-        $country        = !empty( $post_country ) ? $post_country : wpinv_default_billing_country( $country );
1517
-        $base_country   = wpinv_is_base_country( $country );
1516
+        $country        = !empty($post_country) ? $post_country : wpinv_default_billing_country($country);
1517
+        $base_country   = wpinv_is_base_country($country);
1518 1518
         
1519
-        $requires_vat   = self::requires_vat( 0, false );
1520
-        $is_digital     = self::get_item_rule( $item_id ) == 'digital' ;
1521
-        $rate           = $requires_vat && isset( $wpinv_options['eu_fallback_rate'] ) ? $wpinv_options['eu_fallback_rate'] : $rate;
1519
+        $requires_vat   = self::requires_vat(0, false);
1520
+        $is_digital     = self::get_item_rule($item_id) == 'digital';
1521
+        $rate           = $requires_vat && isset($wpinv_options['eu_fallback_rate']) ? $wpinv_options['eu_fallback_rate'] : $rate;
1522 1522
           
1523
-        if ( self::same_country_rule() == 'no' && $base_country ) { // Disable VAT to same country
1523
+        if (self::same_country_rule() == 'no' && $base_country) { // Disable VAT to same country
1524 1524
             $rate = 0;
1525
-        } else if ( $requires_vat ) {
1526
-            $vat_number = self::get_user_vat_number( '', 0, true );
1525
+        } else if ($requires_vat) {
1526
+            $vat_number = self::get_user_vat_number('', 0, true);
1527 1527
             $vat_info   = self::current_vat_data();
1528 1528
             
1529
-            if ( is_array( $vat_info ) ) {
1530
-                $vat_number = isset( $vat_info['number'] ) && !empty( $vat_info['valid'] ) ? $vat_info['number'] : "";
1529
+            if (is_array($vat_info)) {
1530
+                $vat_number = isset($vat_info['number']) && !empty($vat_info['valid']) ? $vat_info['number'] : "";
1531 1531
             }
1532 1532
             
1533
-            if ( $country == 'UK' ) {
1533
+            if ($country == 'UK') {
1534 1534
                 $country = 'GB';
1535 1535
             }
1536 1536
 
1537
-            if ( !empty( $vat_number ) ) {
1537
+            if (!empty($vat_number)) {
1538 1538
                 $rate = 0;
1539 1539
             } else {
1540
-                $rate = self::find_rate( $country, $state, $rate, $class ); // Fix if there are no tax rated and you try to pay an invoice it does not add the fallback tax rate
1540
+                $rate = self::find_rate($country, $state, $rate, $class); // Fix if there are no tax rated and you try to pay an invoice it does not add the fallback tax rate
1541 1541
             }
1542 1542
 
1543
-            if ( empty( $vat_number ) && !$is_digital ) {
1544
-                if ( $base_country ) {
1545
-                    $rate = self::find_rate( $country, null, $rate, $class );
1543
+            if (empty($vat_number) && !$is_digital) {
1544
+                if ($base_country) {
1545
+                    $rate = self::find_rate($country, null, $rate, $class);
1546 1546
                 } else {
1547
-                    if ( empty( $country ) && isset( $wpinv_options['eu_fallback_rate'] ) ) {
1547
+                    if (empty($country) && isset($wpinv_options['eu_fallback_rate'])) {
1548 1548
                         $rate = $wpinv_options['eu_fallback_rate'];
1549
-                    } else if( !empty( $country ) ) {
1550
-                        $rate = self::find_rate( $country, $state, $rate, $class );
1549
+                    } else if (!empty($country)) {
1550
+                        $rate = self::find_rate($country, $state, $rate, $class);
1551 1551
                     }
1552 1552
                 }
1553
-            } else if ( empty( $vat_number ) || ( self::same_country_rule() == 'always' && $base_country ) ) {
1554
-                if ( empty( $country ) && isset( $wpinv_options['eu_fallback_rate'] ) ) {
1553
+            } else if (empty($vat_number) || (self::same_country_rule() == 'always' && $base_country)) {
1554
+                if (empty($country) && isset($wpinv_options['eu_fallback_rate'])) {
1555 1555
                     $rate = $wpinv_options['eu_fallback_rate'];
1556
-                } else if( !empty( $country ) ) {
1557
-                    $rate = self::find_rate( $country, $state, $rate, $class );
1556
+                } else if (!empty($country)) {
1557
+                    $rate = self::find_rate($country, $state, $rate, $class);
1558 1558
                 }
1559 1559
             }
1560 1560
         } else {
1561
-            if ( $is_digital ) {
1561
+            if ($is_digital) {
1562 1562
                 $ip_country_code = self::get_country_by_ip();
1563 1563
                 
1564
-                if ( $ip_country_code && self::is_eu_state( $ip_country_code ) ) {
1565
-                    $rate = self::find_rate( $ip_country_code, '', 0, $class );
1564
+                if ($ip_country_code && self::is_eu_state($ip_country_code)) {
1565
+                    $rate = self::find_rate($ip_country_code, '', 0, $class);
1566 1566
                 } else {
1567
-                    $rate = self::find_rate( $country, $state, $rate, $class );
1567
+                    $rate = self::find_rate($country, $state, $rate, $class);
1568 1568
                 }
1569 1569
             } else {
1570
-                $rate = self::find_rate( $country, $state, $rate, $class );
1570
+                $rate = self::find_rate($country, $state, $rate, $class);
1571 1571
             }
1572 1572
         }
1573 1573
 
@@ -1577,48 +1577,48 @@  discard block
 block discarded – undo
1577 1577
     public static function current_vat_data() {
1578 1578
         global $wpi_session;
1579 1579
         
1580
-        return $wpi_session->get( 'user_vat_data' );
1580
+        return $wpi_session->get('user_vat_data');
1581 1581
     }
1582 1582
     
1583
-    public static function get_user_country( $country = '', $user_id = 0 ) {
1584
-        $user_address = wpinv_get_user_address( $user_id, false );
1583
+    public static function get_user_country($country = '', $user_id = 0) {
1584
+        $user_address = wpinv_get_user_address($user_id, false);
1585 1585
         
1586
-        if ( wpinv_get_option( 'vat_ip_country_default' ) ) {
1586
+        if (wpinv_get_option('vat_ip_country_default')) {
1587 1587
             $country = '';
1588 1588
         }
1589 1589
         
1590
-        $country    = empty( $user_address ) || !isset( $user_address['country'] ) || empty( $user_address['country'] ) ? $country : $user_address['country'];
1591
-        $result     = apply_filters( 'wpinv_get_user_country', $country, $user_id );
1590
+        $country    = empty($user_address) || !isset($user_address['country']) || empty($user_address['country']) ? $country : $user_address['country'];
1591
+        $result     = apply_filters('wpinv_get_user_country', $country, $user_id);
1592 1592
 
1593
-        if ( empty( $result ) ) {
1593
+        if (empty($result)) {
1594 1594
             $result = self::get_country_by_ip();
1595 1595
         }
1596 1596
 
1597 1597
         return $result;
1598 1598
     }
1599 1599
     
1600
-    public static function set_user_country( $country = '', $user_id = 0 ) {
1600
+    public static function set_user_country($country = '', $user_id = 0) {
1601 1601
         global $wpi_userID;
1602 1602
         
1603
-        if ( empty($country) && !empty($wpi_userID) && get_current_user_id() != $wpi_userID ) {
1603
+        if (empty($country) && !empty($wpi_userID) && get_current_user_id() != $wpi_userID) {
1604 1604
             $country = wpinv_get_default_country();
1605 1605
         }
1606 1606
         
1607 1607
         return $country;
1608 1608
     }
1609 1609
     
1610
-    public static function get_user_vat_number( $vat_number = '', $user_id = 0, $is_valid = false ) {
1610
+    public static function get_user_vat_number($vat_number = '', $user_id = 0, $is_valid = false) {
1611 1611
         global $wpi_current_id, $wpi_userID;
1612 1612
         
1613
-        if ( !empty( $_POST['new_user'] ) ) {
1613
+        if (!empty($_POST['new_user'])) {
1614 1614
             return '';
1615 1615
         }
1616 1616
         
1617
-        if ( empty( $user_id ) ) {
1618
-            $user_id = !empty( $wpi_userID ) ? $wpi_userID : ( $wpi_current_id ? wpinv_get_user_id( $wpi_current_id ) : get_current_user_id() );
1617
+        if (empty($user_id)) {
1618
+            $user_id = !empty($wpi_userID) ? $wpi_userID : ($wpi_current_id ? wpinv_get_user_id($wpi_current_id) : get_current_user_id());
1619 1619
         }
1620 1620
 
1621
-        $vat_number = empty( $user_id ) ? '' : get_user_meta( $user_id, '_wpinv_vat_number', true );
1621
+        $vat_number = empty($user_id) ? '' : get_user_meta($user_id, '_wpinv_vat_number', true);
1622 1622
         
1623 1623
         /* TODO
1624 1624
         if ( $is_valid && $vat_number ) {
@@ -1629,38 +1629,38 @@  discard block
 block discarded – undo
1629 1629
         }
1630 1630
         */
1631 1631
 
1632
-        return apply_filters('wpinv_get_user_vat_number', $vat_number, $user_id, $is_valid );
1632
+        return apply_filters('wpinv_get_user_vat_number', $vat_number, $user_id, $is_valid);
1633 1633
     }
1634 1634
     
1635
-    public static function get_user_company( $company = '', $user_id = 0 ) {
1635
+    public static function get_user_company($company = '', $user_id = 0) {
1636 1636
         global $wpi_current_id, $wpi_userID;
1637 1637
         
1638
-        if ( empty( $user_id ) ) {
1639
-            $user_id = !empty( $wpi_userID ) ? $wpi_userID : ( $wpi_current_id ? wpinv_get_user_id( $wpi_current_id ) : get_current_user_id() );
1638
+        if (empty($user_id)) {
1639
+            $user_id = !empty($wpi_userID) ? $wpi_userID : ($wpi_current_id ? wpinv_get_user_id($wpi_current_id) : get_current_user_id());
1640 1640
         }
1641 1641
 
1642
-        $company = empty( $user_id ) ? "" : get_user_meta( $user_id, '_wpinv_company', true );
1642
+        $company = empty($user_id) ? "" : get_user_meta($user_id, '_wpinv_company', true);
1643 1643
 
1644
-        return apply_filters( 'wpinv_user_company', $company, $user_id );
1644
+        return apply_filters('wpinv_user_company', $company, $user_id);
1645 1645
     }
1646 1646
     
1647
-    public static function save_user_vat_details( $company = '', $vat_number = '' ) {
1648
-        $save = apply_filters( 'wpinv_allow_save_user_vat_details', true );
1647
+    public static function save_user_vat_details($company = '', $vat_number = '') {
1648
+        $save = apply_filters('wpinv_allow_save_user_vat_details', true);
1649 1649
 
1650
-        if ( is_user_logged_in() && $save ) {
1650
+        if (is_user_logged_in() && $save) {
1651 1651
             $user_id = get_current_user_id();
1652 1652
 
1653
-            if ( !empty( $vat_number ) ) {
1654
-                update_user_meta( $user_id, '_wpinv_vat_number', $vat_number );
1653
+            if (!empty($vat_number)) {
1654
+                update_user_meta($user_id, '_wpinv_vat_number', $vat_number);
1655 1655
             } else {
1656
-                delete_user_meta( $user_id, '_wpinv_vat_number');
1656
+                delete_user_meta($user_id, '_wpinv_vat_number');
1657 1657
             }
1658 1658
 
1659
-            if ( !empty( $company ) ) {
1660
-                update_user_meta( $user_id, '_wpinv_company', $company );
1659
+            if (!empty($company)) {
1660
+                update_user_meta($user_id, '_wpinv_company', $company);
1661 1661
             } else {
1662
-                delete_user_meta( $user_id, '_wpinv_company');
1663
-                delete_user_meta( $user_id, '_wpinv_vat_number');
1662
+                delete_user_meta($user_id, '_wpinv_company');
1663
+                delete_user_meta($user_id, '_wpinv_vat_number');
1664 1664
             }
1665 1665
         }
1666 1666
 
@@ -1670,113 +1670,113 @@  discard block
 block discarded – undo
1670 1670
     public static function ajax_vat_validate() {
1671 1671
         global $wpinv_options, $wpi_session;
1672 1672
         
1673
-        $is_checkout            = ( !empty( $_POST['source'] ) && $_POST['source'] == 'checkout' ) ? true : false;
1673
+        $is_checkout            = (!empty($_POST['source']) && $_POST['source'] == 'checkout') ? true : false;
1674 1674
         $response               = array();
1675 1675
         $response['success']    = false;
1676 1676
         
1677
-        if ( empty( $_REQUEST['_wpi_nonce'] ) || ( !empty( $_REQUEST['_wpi_nonce'] ) && !wp_verify_nonce( $_REQUEST['_wpi_nonce'], 'vat_validation' ) ) ) {
1678
-            $response['error'] = __( 'Invalid security nonce', 'invoicing' );
1679
-            wp_send_json( $response );
1677
+        if (empty($_REQUEST['_wpi_nonce']) || (!empty($_REQUEST['_wpi_nonce']) && !wp_verify_nonce($_REQUEST['_wpi_nonce'], 'vat_validation'))) {
1678
+            $response['error'] = __('Invalid security nonce', 'invoicing');
1679
+            wp_send_json($response);
1680 1680
         }
1681 1681
         
1682
-        $vat_name   = self::get_vat_name();
1682
+        $vat_name = self::get_vat_name();
1683 1683
         
1684
-        if ( $is_checkout ) {
1684
+        if ($is_checkout) {
1685 1685
             $invoice = wpinv_get_invoice_cart();
1686 1686
             
1687
-            if ( !self::requires_vat( false, 0, self::invoice_has_digital_rule( $invoice ) ) ) {
1687
+            if (!self::requires_vat(false, 0, self::invoice_has_digital_rule($invoice))) {
1688 1688
                 $vat_info = array();
1689
-                $wpi_session->set( 'user_vat_data', $vat_info );
1689
+                $wpi_session->set('user_vat_data', $vat_info);
1690 1690
 
1691 1691
                 self::save_user_vat_details();
1692 1692
                 
1693 1693
                 $response['success'] = true;
1694
-                $response['message'] = wp_sprintf( __( 'Ignore %s', 'invoicing' ), $vat_name );
1695
-                wp_send_json( $response );
1694
+                $response['message'] = wp_sprintf(__('Ignore %s', 'invoicing'), $vat_name);
1695
+                wp_send_json($response);
1696 1696
             }
1697 1697
         }
1698 1698
         
1699
-        $company    = !empty( $_POST['company'] ) ? sanitize_text_field( $_POST['company'] ) : '';
1700
-        $vat_number = !empty( $_POST['number'] ) ? sanitize_text_field( $_POST['number'] ) : '';
1699
+        $company    = !empty($_POST['company']) ? sanitize_text_field($_POST['company']) : '';
1700
+        $vat_number = !empty($_POST['number']) ? sanitize_text_field($_POST['number']) : '';
1701 1701
         
1702
-        $vat_info = $wpi_session->get( 'user_vat_data' );
1703
-        if ( !is_array( $vat_info ) || empty( $vat_info ) ) {
1704
-            $vat_info = array( 'company'=> $company, 'number' => '', 'valid' => true );
1702
+        $vat_info = $wpi_session->get('user_vat_data');
1703
+        if (!is_array($vat_info) || empty($vat_info)) {
1704
+            $vat_info = array('company'=> $company, 'number' => '', 'valid' => true);
1705 1705
         }
1706 1706
         
1707
-        if ( empty( $vat_number ) ) {
1708
-            if ( $is_checkout ) {
1707
+        if (empty($vat_number)) {
1708
+            if ($is_checkout) {
1709 1709
                 $response['success'] = true;
1710
-                $response['message'] = wp_sprintf( __( 'No %s number has been applied. %s will be added to invoice totals', 'invoicing' ), $vat_name, $vat_name );
1710
+                $response['message'] = wp_sprintf(__('No %s number has been applied. %s will be added to invoice totals', 'invoicing'), $vat_name, $vat_name);
1711 1711
                 
1712
-                $vat_info = $wpi_session->get( 'user_vat_data' );
1712
+                $vat_info = $wpi_session->get('user_vat_data');
1713 1713
                 $vat_info['number'] = "";
1714 1714
                 $vat_info['valid'] = true;
1715 1715
                 
1716
-                self::save_user_vat_details( $company );
1716
+                self::save_user_vat_details($company);
1717 1717
             } else {
1718
-                $response['error'] = wp_sprintf( __( 'Please enter your %s number!', 'invoicing' ), $vat_name );
1718
+                $response['error'] = wp_sprintf(__('Please enter your %s number!', 'invoicing'), $vat_name);
1719 1719
                 
1720 1720
                 $vat_info['valid'] = false;
1721 1721
             }
1722 1722
 
1723
-            $wpi_session->set( 'user_vat_data', $vat_info );
1724
-            wp_send_json( $response );
1723
+            $wpi_session->set('user_vat_data', $vat_info);
1724
+            wp_send_json($response);
1725 1725
         }
1726 1726
         
1727
-        if ( empty( $company ) ) {
1727
+        if (empty($company)) {
1728 1728
             $vat_info['valid'] = false;
1729
-            $wpi_session->set( 'user_vat_data', $vat_info );
1729
+            $wpi_session->set('user_vat_data', $vat_info);
1730 1730
             
1731
-            $response['error'] = __( 'Please enter your registered company name!', 'invoicing' );
1732
-            wp_send_json( $response );
1731
+            $response['error'] = __('Please enter your registered company name!', 'invoicing');
1732
+            wp_send_json($response);
1733 1733
         }
1734 1734
         
1735
-        if ( !empty( $wpinv_options['vat_vies_check'] ) ) {
1736
-            if ( empty( $wpinv_options['vat_offline_check'] ) && !self::offline_check( $vat_number ) ) {
1735
+        if (!empty($wpinv_options['vat_vies_check'])) {
1736
+            if (empty($wpinv_options['vat_offline_check']) && !self::offline_check($vat_number)) {
1737 1737
                 $vat_info['valid'] = false;
1738
-                $wpi_session->set( 'user_vat_data', $vat_info );
1738
+                $wpi_session->set('user_vat_data', $vat_info);
1739 1739
                 
1740
-                $response['error'] = wp_sprintf( __( '%s number not validated', 'invoicing' ), $vat_name );
1741
-                wp_send_json( $response );
1740
+                $response['error'] = wp_sprintf(__('%s number not validated', 'invoicing'), $vat_name);
1741
+                wp_send_json($response);
1742 1742
             }
1743 1743
             
1744 1744
             $response['success'] = true;
1745
-            $response['message'] = wp_sprintf( __( '%s number validated', 'invoicing' ), $vat_name );
1745
+            $response['message'] = wp_sprintf(__('%s number validated', 'invoicing'), $vat_name);
1746 1746
         } else {
1747
-            $result = self::check_vat( $vat_number );
1747
+            $result = self::check_vat($vat_number);
1748 1748
             
1749
-            if ( empty( $result['valid'] ) ) {
1749
+            if (empty($result['valid'])) {
1750 1750
                 $response['error'] = $result['message'];
1751
-                wp_send_json( $response );
1751
+                wp_send_json($response);
1752 1752
             }
1753 1753
             
1754
-            $vies_company = !empty( $result['company'] ) ? $result['company'] : '';
1755
-            $vies_company = apply_filters( 'wpinv_vies_company_name', $vies_company );
1754
+            $vies_company = !empty($result['company']) ? $result['company'] : '';
1755
+            $vies_company = apply_filters('wpinv_vies_company_name', $vies_company);
1756 1756
             
1757
-            $valid_company = $vies_company && $company && ( $vies_company == '---' || strcasecmp( trim( $vies_company ), trim( $company ) ) == 0 ) ? true : false;
1757
+            $valid_company = $vies_company && $company && ($vies_company == '---' || strcasecmp(trim($vies_company), trim($company)) == 0) ? true : false;
1758 1758
 
1759
-            if ( !empty( $wpinv_options['vat_disable_company_name_check'] ) || $valid_company ) {
1759
+            if (!empty($wpinv_options['vat_disable_company_name_check']) || $valid_company) {
1760 1760
                 $response['success'] = true;
1761
-                $response['message'] = wp_sprintf( __( '%s number validated', 'invoicing' ), $vat_name );
1761
+                $response['message'] = wp_sprintf(__('%s number validated', 'invoicing'), $vat_name);
1762 1762
             } else {           
1763 1763
                 $vat_info['valid'] = false;
1764
-                $wpi_session->set( 'user_vat_data', $vat_info );
1764
+                $wpi_session->set('user_vat_data', $vat_info);
1765 1765
                 
1766 1766
                 $response['success'] = false;
1767
-                $response['message'] = wp_sprintf( __( 'The company name associated with the %s number provided is not the same as the company name provided.', 'invoicing' ), $vat_name );
1768
-                wp_send_json( $response );
1767
+                $response['message'] = wp_sprintf(__('The company name associated with the %s number provided is not the same as the company name provided.', 'invoicing'), $vat_name);
1768
+                wp_send_json($response);
1769 1769
             }
1770 1770
         }
1771 1771
         
1772
-        if ( $is_checkout ) {
1773
-            self::save_user_vat_details( $company, $vat_number );
1772
+        if ($is_checkout) {
1773
+            self::save_user_vat_details($company, $vat_number);
1774 1774
 
1775
-            $vat_info = array('company' => $company, 'number' => $vat_number, 'valid' => true );
1776
-            $wpi_session->set( 'user_vat_data', $vat_info );
1775
+            $vat_info = array('company' => $company, 'number' => $vat_number, 'valid' => true);
1776
+            $wpi_session->set('user_vat_data', $vat_info);
1777 1777
         }
1778 1778
 
1779
-        wp_send_json( $response );
1779
+        wp_send_json($response);
1780 1780
     }
1781 1781
     
1782 1782
     public static function ajax_vat_reset() {
@@ -1785,161 +1785,161 @@  discard block
 block discarded – undo
1785 1785
         $company    = is_user_logged_in() ? self::get_user_company() : '';
1786 1786
         $vat_number = self::get_user_vat_number();
1787 1787
         
1788
-        $vat_info   = array('company' => $company, 'number' => $vat_number, 'valid' => false );
1789
-        $wpi_session->set( 'user_vat_data', $vat_info );
1788
+        $vat_info   = array('company' => $company, 'number' => $vat_number, 'valid' => false);
1789
+        $wpi_session->set('user_vat_data', $vat_info);
1790 1790
         
1791 1791
         $response                       = array();
1792 1792
         $response['success']            = true;
1793 1793
         $response['data']['company']    = $company;
1794 1794
         $response['data']['number']     = $vat_number;
1795 1795
         
1796
-        wp_send_json( $response );
1796
+        wp_send_json($response);
1797 1797
     }
1798 1798
     
1799
-    public static function checkout_vat_validate( $valid_data, $post ) {
1799
+    public static function checkout_vat_validate($valid_data, $post) {
1800 1800
         global $wpinv_options, $wpi_session;
1801 1801
         
1802
-        $vat_name  = __( self::get_vat_name(), 'invoicing' );
1802
+        $vat_name = __(self::get_vat_name(), 'invoicing');
1803 1803
         
1804
-        if ( !isset( $_POST['_wpi_nonce'] ) || !wp_verify_nonce( $_POST['_wpi_nonce'], 'vat_validation' ) ) {
1805
-            wpinv_set_error( 'vat_validation', wp_sprintf( __( "Invalid %s validation request.", 'invoicing' ), $vat_name ) );
1804
+        if (!isset($_POST['_wpi_nonce']) || !wp_verify_nonce($_POST['_wpi_nonce'], 'vat_validation')) {
1805
+            wpinv_set_error('vat_validation', wp_sprintf(__("Invalid %s validation request.", 'invoicing'), $vat_name));
1806 1806
             return;
1807 1807
         }
1808 1808
         
1809
-        $vat_saved = $wpi_session->get( 'user_vat_data' );
1810
-        $wpi_session->set( 'user_vat_data', null );
1809
+        $vat_saved = $wpi_session->get('user_vat_data');
1810
+        $wpi_session->set('user_vat_data', null);
1811 1811
         
1812 1812
         $invoice        = wpinv_get_invoice_cart();
1813 1813
         $amount         = $invoice->get_total();
1814
-        $is_digital     = self::invoice_has_digital_rule( $invoice );
1815
-        $no_vat         = !self::requires_vat( 0, false, $is_digital );
1814
+        $is_digital     = self::invoice_has_digital_rule($invoice);
1815
+        $no_vat         = !self::requires_vat(0, false, $is_digital);
1816 1816
         
1817
-        $company        = !empty( $_POST['wpinv_company'] ) ? $_POST['wpinv_company'] : null;
1818
-        $vat_number     = !empty( $_POST['wpinv_vat_number'] ) ? $_POST['wpinv_vat_number'] : null;
1819
-        $country        = !empty( $_POST['wpinv_country'] ) ? $_POST['wpinv_country'] : $invoice->country;
1820
-        if ( empty( $country ) ) {
1817
+        $company        = !empty($_POST['wpinv_company']) ? $_POST['wpinv_company'] : null;
1818
+        $vat_number     = !empty($_POST['wpinv_vat_number']) ? $_POST['wpinv_vat_number'] : null;
1819
+        $country        = !empty($_POST['wpinv_country']) ? $_POST['wpinv_country'] : $invoice->country;
1820
+        if (empty($country)) {
1821 1821
             $country = wpinv_default_billing_country();
1822 1822
         }
1823 1823
         
1824
-        if ( !$is_digital && $no_vat ) {
1824
+        if (!$is_digital && $no_vat) {
1825 1825
             return;
1826 1826
         }
1827 1827
             
1828
-        $vat_data           = array( 'company' => '', 'number' => '', 'valid' => false );
1828
+        $vat_data           = array('company' => '', 'number' => '', 'valid' => false);
1829 1829
         
1830 1830
         $ip_country_code    = self::get_country_by_ip();
1831
-        $is_eu_state        = self::is_eu_state( $country );
1832
-        $is_eu_state_ip     = self::is_eu_state( $ip_country_code );
1831
+        $is_eu_state        = self::is_eu_state($country);
1832
+        $is_eu_state_ip     = self::is_eu_state($ip_country_code);
1833 1833
         $is_non_eu_user     = !$is_eu_state && !$is_eu_state_ip;
1834 1834
         
1835
-        if ( $is_digital && !$is_non_eu_user && empty( $vat_number ) && apply_filters( 'wpinv_checkout_requires_country', true, $amount ) ) {
1835
+        if ($is_digital && !$is_non_eu_user && empty($vat_number) && apply_filters('wpinv_checkout_requires_country', true, $amount)) {
1836 1836
             $vat_data['adddress_confirmed'] = false;
1837 1837
             
1838
-            if ( !isset( $_POST['wpinv_adddress_confirmed'] ) ) {
1839
-                if ( $ip_country_code != $country ) {
1840
-                    wpinv_set_error( 'vat_validation', sprintf( __( 'The country of your current location must be the same as the country of your billing location or you must %s confirm %s the billing address is your home country.', 'invoicing' ), '<a href="#wpinv_adddress_confirm">', '</a>' ) );
1838
+            if (!isset($_POST['wpinv_adddress_confirmed'])) {
1839
+                if ($ip_country_code != $country) {
1840
+                    wpinv_set_error('vat_validation', sprintf(__('The country of your current location must be the same as the country of your billing location or you must %s confirm %s the billing address is your home country.', 'invoicing'), '<a href="#wpinv_adddress_confirm">', '</a>'));
1841 1841
                 }
1842 1842
             } else {
1843 1843
                 $vat_data['adddress_confirmed'] = true;
1844 1844
             }
1845 1845
         }
1846 1846
         
1847
-        if ( !empty( $wpinv_options['vat_prevent_b2c_purchase'] ) && !$is_non_eu_user && ( empty( $vat_number ) || $no_vat ) ) {
1848
-            if ( $is_eu_state ) {
1849
-                wpinv_set_error( 'vat_validation', wp_sprintf( __( 'Please enter and validate your %s number to verify your purchase is by an EU business.', 'invoicing' ), $vat_name ) );
1850
-            } else if ( $is_digital && $is_eu_state_ip ) {
1851
-                wpinv_set_error( 'vat_validation', wp_sprintf( __( 'Sales to non-EU countries cannot be completed because %s must be applied.', 'invoicing' ), $vat_name ) );
1847
+        if (!empty($wpinv_options['vat_prevent_b2c_purchase']) && !$is_non_eu_user && (empty($vat_number) || $no_vat)) {
1848
+            if ($is_eu_state) {
1849
+                wpinv_set_error('vat_validation', wp_sprintf(__('Please enter and validate your %s number to verify your purchase is by an EU business.', 'invoicing'), $vat_name));
1850
+            } else if ($is_digital && $is_eu_state_ip) {
1851
+                wpinv_set_error('vat_validation', wp_sprintf(__('Sales to non-EU countries cannot be completed because %s must be applied.', 'invoicing'), $vat_name));
1852 1852
             }
1853 1853
         }
1854 1854
         
1855
-        if ( !$is_eu_state || $no_vat || empty( $vat_number ) ) {
1855
+        if (!$is_eu_state || $no_vat || empty($vat_number)) {
1856 1856
             return;
1857 1857
         }
1858 1858
 
1859
-        if ( !empty( $vat_saved ) && isset( $vat_saved['valid'] ) ) {
1860
-            $vat_data['valid']  = $vat_saved['valid'];
1859
+        if (!empty($vat_saved) && isset($vat_saved['valid'])) {
1860
+            $vat_data['valid'] = $vat_saved['valid'];
1861 1861
         }
1862 1862
             
1863
-        if ( $company !== null ) {
1863
+        if ($company !== null) {
1864 1864
             $vat_data['company'] = $company;
1865 1865
         }
1866 1866
 
1867 1867
         $message = '';
1868
-        if ( $vat_number !== null ) {
1868
+        if ($vat_number !== null) {
1869 1869
             $vat_data['number'] = $vat_number;
1870 1870
             
1871
-            if ( !$vat_data['valid'] || ( $vat_saved['number'] !== $vat_data['number'] ) || ( $vat_saved['company'] !== $vat_data['company'] ) ) {
1872
-                if ( !empty( $wpinv_options['vat_vies_check'] ) ) {            
1873
-                    if ( empty( $wpinv_options['vat_offline_check'] ) && !self::offline_check( $vat_number ) ) {
1871
+            if (!$vat_data['valid'] || ($vat_saved['number'] !== $vat_data['number']) || ($vat_saved['company'] !== $vat_data['company'])) {
1872
+                if (!empty($wpinv_options['vat_vies_check'])) {            
1873
+                    if (empty($wpinv_options['vat_offline_check']) && !self::offline_check($vat_number)) {
1874 1874
                         $vat_data['valid'] = false;
1875 1875
                     }
1876 1876
                 } else {
1877
-                    $result = self::check_vat( $vat_number );
1877
+                    $result = self::check_vat($vat_number);
1878 1878
                     
1879
-                    if ( !empty( $result['valid'] ) ) {                
1879
+                    if (!empty($result['valid'])) {                
1880 1880
                         $vat_data['valid'] = true;
1881
-                        $vies_company = !empty( $result['company'] ) ? $result['company'] : '';
1882
-                        $vies_company = apply_filters( 'wpinv_vies_company_name', $vies_company );
1881
+                        $vies_company = !empty($result['company']) ? $result['company'] : '';
1882
+                        $vies_company = apply_filters('wpinv_vies_company_name', $vies_company);
1883 1883
                     
1884
-                        $valid_company = $vies_company && $company && ( $vies_company == '---' || strcasecmp( trim( $vies_company ), trim( $company ) ) == 0 ) ? true : false;
1884
+                        $valid_company = $vies_company && $company && ($vies_company == '---' || strcasecmp(trim($vies_company), trim($company)) == 0) ? true : false;
1885 1885
 
1886
-                        if ( !( !empty( $wpinv_options['vat_disable_company_name_check'] ) || $valid_company ) ) {         
1886
+                        if (!(!empty($wpinv_options['vat_disable_company_name_check']) || $valid_company)) {         
1887 1887
                             $vat_data['valid'] = false;
1888 1888
                             
1889
-                            $message = wp_sprintf( __( 'The company name associated with the %s number provided is not the same as the company name provided.', 'invoicing' ), $vat_name );
1889
+                            $message = wp_sprintf(__('The company name associated with the %s number provided is not the same as the company name provided.', 'invoicing'), $vat_name);
1890 1890
                         }
1891 1891
                     } else {
1892
-                        $message = wp_sprintf( __( 'Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing' ), $vat_name );
1892
+                        $message = wp_sprintf(__('Fail to validate the %s number: EU Commission VAT server (VIES) check fails.', 'invoicing'), $vat_name);
1893 1893
                     }
1894 1894
                 }
1895 1895
                 
1896
-                if ( !$vat_data['valid'] ) {
1897
-                    $error = wp_sprintf( __( 'The %s %s number %s you have entered has not been validated', 'invoicing' ), '<a href="#wpi-vat-details">', $vat_name, '</a>' ) . ( $message ? ' ( ' . $message . ' )' : '' );
1898
-                    wpinv_set_error( 'vat_validation', $error );
1896
+                if (!$vat_data['valid']) {
1897
+                    $error = wp_sprintf(__('The %s %s number %s you have entered has not been validated', 'invoicing'), '<a href="#wpi-vat-details">', $vat_name, '</a>') . ($message ? ' ( ' . $message . ' )' : '');
1898
+                    wpinv_set_error('vat_validation', $error);
1899 1899
                 }
1900 1900
             }
1901 1901
         }
1902 1902
 
1903
-        $wpi_session->set( 'user_vat_data', $vat_data );
1903
+        $wpi_session->set('user_vat_data', $vat_data);
1904 1904
     }
1905 1905
     
1906
-    public static function checkout_vat_fields( $billing_details ) {
1906
+    public static function checkout_vat_fields($billing_details) {
1907 1907
         global $wpi_session, $wpinv_options, $wpi_country, $wpi_requires_vat;
1908 1908
         
1909 1909
         $ip_address         = wpinv_get_ip();
1910 1910
         $ip_country_code    = self::get_country_by_ip();
1911 1911
         
1912
-        $tax_label          = __( self::get_vat_name(), 'invoicing' );
1912
+        $tax_label          = __(self::get_vat_name(), 'invoicing');
1913 1913
         $invoice            = wpinv_get_invoice_cart();
1914
-        $is_digital         = self::invoice_has_digital_rule( $invoice );
1914
+        $is_digital         = self::invoice_has_digital_rule($invoice);
1915 1915
         $wpi_country        = $invoice->country;
1916 1916
         
1917
-        $requires_vat       = !self::hide_vat_fields() && !$invoice->is_free() && self::requires_vat( 0, false, $is_digital );
1917
+        $requires_vat       = !self::hide_vat_fields() && !$invoice->is_free() && self::requires_vat(0, false, $is_digital);
1918 1918
         $wpi_requires_vat   = $requires_vat;
1919 1919
         
1920 1920
         $company            = self::get_user_company();
1921 1921
         $vat_number         = self::get_user_vat_number();
1922 1922
         
1923
-        $validated          = $vat_number ? self::get_user_vat_number( '', 0, true ) : 1;
1924
-        $vat_info           = $wpi_session->get( 'user_vat_data' );
1923
+        $validated          = $vat_number ? self::get_user_vat_number('', 0, true) : 1;
1924
+        $vat_info           = $wpi_session->get('user_vat_data');
1925 1925
 
1926
-        if ( is_array( $vat_info ) ) {
1927
-            $company    = isset( $vat_info['company'] ) ? $vat_info['company'] : '';
1928
-            $vat_number = isset( $vat_info['number'] ) ? $vat_info['number'] : '';
1929
-            $validated  = isset( $vat_info['valid'] ) ? $vat_info['valid'] : false;
1926
+        if (is_array($vat_info)) {
1927
+            $company    = isset($vat_info['company']) ? $vat_info['company'] : '';
1928
+            $vat_number = isset($vat_info['number']) ? $vat_info['number'] : '';
1929
+            $validated  = isset($vat_info['valid']) ? $vat_info['valid'] : false;
1930 1930
         }
1931 1931
         
1932 1932
         $selected_country = $invoice->country ? $invoice->country : wpinv_default_billing_country();
1933 1933
 
1934
-        if ( $ip_country_code == 'UK' ) {
1934
+        if ($ip_country_code == 'UK') {
1935 1935
             $ip_country_code = 'GB';
1936 1936
         }
1937 1937
         
1938
-        if ( $selected_country == 'UK' ) {
1938
+        if ($selected_country == 'UK') {
1939 1939
             $selected_country = 'GB';
1940 1940
         }
1941 1941
         
1942
-        if ( $requires_vat && ( self::same_country_rule() == 'no' && wpinv_is_base_country( $selected_country ) || !self::allow_vat_rules() ) ) {
1942
+        if ($requires_vat && (self::same_country_rule() == 'no' && wpinv_is_base_country($selected_country) || !self::allow_vat_rules())) {
1943 1943
             $requires_vat = false;
1944 1944
         }
1945 1945
 
@@ -1947,52 +1947,52 @@  discard block
 block discarded – undo
1947 1947
         $display_validate_btn   = 'none';
1948 1948
         $display_reset_btn      = 'none';
1949 1949
         
1950
-        if ( !empty( $vat_number ) && $validated ) {
1951
-            $vat_vailidated_text    = wp_sprintf( __( '%s number validated', 'invoicing' ), $tax_label );
1950
+        if (!empty($vat_number) && $validated) {
1951
+            $vat_vailidated_text    = wp_sprintf(__('%s number validated', 'invoicing'), $tax_label);
1952 1952
             $vat_vailidated_class   = 'wpinv-vat-stat-1';
1953 1953
             $display_reset_btn      = 'block';
1954 1954
         } else {
1955
-            $vat_vailidated_text    = empty( $vat_number ) ? '' : wp_sprintf( __( '%s number not validated', 'invoicing' ), $tax_label );
1956
-            $vat_vailidated_class   = empty( $vat_number ) ? '' : 'wpinv-vat-stat-0';
1955
+            $vat_vailidated_text    = empty($vat_number) ? '' : wp_sprintf(__('%s number not validated', 'invoicing'), $tax_label);
1956
+            $vat_vailidated_class   = empty($vat_number) ? '' : 'wpinv-vat-stat-0';
1957 1957
             $display_validate_btn   = 'block';
1958 1958
         }
1959 1959
         
1960
-        $show_ip_country        = $is_digital && ( empty( $vat_number ) || !$requires_vat ) && $ip_country_code != $selected_country ? 'block' : 'none';
1960
+        $show_ip_country = $is_digital && (empty($vat_number) || !$requires_vat) && $ip_country_code != $selected_country ? 'block' : 'none';
1961 1961
         ?>
1962 1962
         <div id="wpi-vat-details" class="wpi-vat-details clearfix" style="display:<?php echo $display_vat_details; ?>">
1963 1963
             <div id="wpi_vat_info" class="clearfix panel panel-default">
1964
-                <div class="panel-heading"><h3 class="panel-title"><?php echo wp_sprintf( __( '%s Details', 'invoicing' ), $tax_label );?></h3></div>
1964
+                <div class="panel-heading"><h3 class="panel-title"><?php echo wp_sprintf(__('%s Details', 'invoicing'), $tax_label); ?></h3></div>
1965 1965
                 <div id="wpinv-fields-box" class="panel-body">
1966 1966
                     <p id="wpi_show_vat_note">
1967
-                        <?php echo wp_sprintf( __( 'Validate your registered %s number to exclude tax.', 'invoicing' ), $tax_label ); ?>
1967
+                        <?php echo wp_sprintf(__('Validate your registered %s number to exclude tax.', 'invoicing'), $tax_label); ?>
1968 1968
                     </p>
1969 1969
                     <div id="wpi_vat_fields" class="wpi_vat_info">
1970 1970
                         <p class="wpi-cart-field wpi-col2 wpi-colf">
1971
-                            <label for="wpinv_company" class="wpi-label"><?php _e( 'Company Name', 'invoicing' );?></label>
1971
+                            <label for="wpinv_company" class="wpi-label"><?php _e('Company Name', 'invoicing'); ?></label>
1972 1972
                             <?php
1973
-                            echo wpinv_html_text( array(
1973
+                            echo wpinv_html_text(array(
1974 1974
                                     'id'            => 'wpinv_company',
1975 1975
                                     'name'          => 'wpinv_company',
1976 1976
                                     'value'         => $company,
1977 1977
                                     'class'         => 'wpi-input form-control',
1978
-                                    'placeholder'   => __( 'Company name', 'invoicing' ),
1979
-                                ) );
1978
+                                    'placeholder'   => __('Company name', 'invoicing'),
1979
+                                ));
1980 1980
                             ?>
1981 1981
                         </p>
1982 1982
                         <p class="wpi-cart-field wpi-col2 wpi-coll wpi-cart-field-vat">
1983
-                            <label for="wpinv_vat_number" class="wpi-label"><?php echo wp_sprintf( __( '%s Number', 'invoicing' ), $tax_label );?></label>
1983
+                            <label for="wpinv_vat_number" class="wpi-label"><?php echo wp_sprintf(__('%s Number', 'invoicing'), $tax_label); ?></label>
1984 1984
                             <span id="wpinv_vat_number-wrap">
1985 1985
                                 <label for="wpinv_vat_number" class="wpinv-label"></label>
1986
-                                <input type="text" class="wpi-input form-control" placeholder="<?php echo esc_attr( wp_sprintf( __( '%s number', 'invoicing' ), $tax_label ) );?>" value="<?php esc_attr_e( $vat_number );?>" id="wpinv_vat_number" name="wpinv_vat_number">
1987
-                                <span class="wpinv-vat-stat <?php echo $vat_vailidated_class;?>"><i class="fa"></i>&nbsp;<font><?php echo $vat_vailidated_text;?></font></span>
1986
+                                <input type="text" class="wpi-input form-control" placeholder="<?php echo esc_attr(wp_sprintf(__('%s number', 'invoicing'), $tax_label)); ?>" value="<?php esc_attr_e($vat_number); ?>" id="wpinv_vat_number" name="wpinv_vat_number">
1987
+                                <span class="wpinv-vat-stat <?php echo $vat_vailidated_class; ?>"><i class="fa"></i>&nbsp;<font><?php echo $vat_vailidated_text; ?></font></span>
1988 1988
                             </span>
1989 1989
                         </p>
1990 1990
                         <p class="wpi-cart-field wpi-col wpi-colf wpi-cart-field-actions">
1991
-                            <button class="btn btn-success btn-sm wpinv-vat-validate" type="button" id="wpinv_vat_validate" style="display:<?php echo $display_validate_btn; ?>"><?php echo wp_sprintf( __("Validate %s Number", 'invoicing'), $tax_label ); ?></button>
1992
-                            <button class="btn btn-danger btn-sm wpinv-vat-reset" type="button" id="wpinv_vat_reset" style="display:<?php echo $display_reset_btn; ?>"><?php echo wp_sprintf( __("Reset %s", 'invoicing'), $tax_label ); ?></button>
1991
+                            <button class="btn btn-success btn-sm wpinv-vat-validate" type="button" id="wpinv_vat_validate" style="display:<?php echo $display_validate_btn; ?>"><?php echo wp_sprintf(__("Validate %s Number", 'invoicing'), $tax_label); ?></button>
1992
+                            <button class="btn btn-danger btn-sm wpinv-vat-reset" type="button" id="wpinv_vat_reset" style="display:<?php echo $display_reset_btn; ?>"><?php echo wp_sprintf(__("Reset %s", 'invoicing'), $tax_label); ?></button>
1993 1993
                             <span class="wpi-vat-box wpi-vat-box-info"><span id="text"></span></span>
1994 1994
                             <span class="wpi-vat-box wpi-vat-box-error"><span id="text"></span></span>
1995
-                            <input type="hidden" name="_wpi_nonce" value="<?php echo wp_create_nonce( 'vat_validation' ) ?>" />
1995
+                            <input type="hidden" name="_wpi_nonce" value="<?php echo wp_create_nonce('vat_validation') ?>" />
1996 1996
                         </p>
1997 1997
                     </div>
1998 1998
                 </div>
@@ -2006,32 +2006,32 @@  discard block
 block discarded – undo
2006 2006
                 </span>
2007 2007
             </div>
2008 2008
         </div>
2009
-        <?php if ( empty( $wpinv_options['hide_ip_address'] ) ) { 
2010
-            $ip_link = '<a title="' . esc_attr( __( 'View more details on map', 'invoicing' ) ) . '" target="_blank" href="' . esc_url( admin_url( 'admin-ajax.php?action=wpinv_ip_geolocation&ip=' . $ip_address ) ) . '" class="wpi-ip-address-link">' . $ip_address . '&nbsp;&nbsp;<i class="fa fa-external-link-square" aria-hidden="true"></i></a>';
2009
+        <?php if (empty($wpinv_options['hide_ip_address'])) { 
2010
+            $ip_link = '<a title="' . esc_attr(__('View more details on map', 'invoicing')) . '" target="_blank" href="' . esc_url(admin_url('admin-ajax.php?action=wpinv_ip_geolocation&ip=' . $ip_address)) . '" class="wpi-ip-address-link">' . $ip_address . '&nbsp;&nbsp;<i class="fa fa-external-link-square" aria-hidden="true"></i></a>';
2011 2011
         ?>
2012 2012
         <div class="wpi-ip-info clearfix panel panel-info">
2013 2013
             <div id="wpinv-fields-box" class="panel-body">
2014
-                <span><?php echo wp_sprintf( __( "Your IP address is: %s", 'invoicing' ), $ip_link ); ?></span>
2014
+                <span><?php echo wp_sprintf(__("Your IP address is: %s", 'invoicing'), $ip_link); ?></span>
2015 2015
             </div>
2016 2016
         </div>
2017 2017
         <?php }
2018 2018
     }
2019 2019
     
2020
-    public static function show_vat_notice( $invoice ) {
2021
-        if ( empty( $invoice ) ) {
2020
+    public static function show_vat_notice($invoice) {
2021
+        if (empty($invoice)) {
2022 2022
             return NULL;
2023 2023
         }
2024 2024
         
2025
-        $label      = wpinv_get_option( 'vat_invoice_notice_label' );
2026
-        $notice     = wpinv_get_option( 'vat_invoice_notice' );
2027
-        if ( $label || $notice ) {
2025
+        $label      = wpinv_get_option('vat_invoice_notice_label');
2026
+        $notice     = wpinv_get_option('vat_invoice_notice');
2027
+        if ($label || $notice) {
2028 2028
         ?>
2029 2029
         <div class="row wpinv-vat-notice">
2030 2030
             <div class="col-sm-12">
2031
-                <?php if ( $label ) { ?>
2032
-                <strong><?php _e( $label, 'invoicing' ); ?></strong>
2033
-                <?php } if ( $notice ) { ?>
2034
-                <?php echo wpautop( wptexturize( __( $notice, 'invoicing' ) ) ) ?>
2031
+                <?php if ($label) { ?>
2032
+                <strong><?php _e($label, 'invoicing'); ?></strong>
2033
+                <?php } if ($notice) { ?>
2034
+                <?php echo wpautop(wptexturize(__($notice, 'invoicing'))) ?>
2035 2035
                 <?php } ?>
2036 2036
             </div>
2037 2037
         </div>
Please login to merge, or discard this patch.
vendor/ayecode/wp-super-duper/wp-super-duper.php 1 patch
Spacing   +440 added lines, -440 removed lines patch added patch discarded remove patch
@@ -1,9 +1,9 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if ( ! defined( 'ABSPATH' ) ) {
2
+if (!defined('ABSPATH')) {
3 3
 	exit;
4 4
 }
5 5
 
6
-if ( ! class_exists( 'WP_Super_Duper' ) ) {
6
+if (!class_exists('WP_Super_Duper')) {
7 7
 
8 8
 
9 9
 	/**
@@ -36,27 +36,27 @@  discard block
 block discarded – undo
36 36
 		/**
37 37
 		 * Take the array options and use them to build.
38 38
 		 */
39
-		public function __construct( $options ) {
39
+		public function __construct($options) {
40 40
 			global $sd_widgets;
41 41
 
42
-			$sd_widgets[ $options['base_id'] ] = array(
42
+			$sd_widgets[$options['base_id']] = array(
43 43
 				'name'       => $options['name'],
44 44
 				'class_name' => $options['class_name']
45 45
 			);
46
-			$this->base_id                     = $options['base_id'];
46
+			$this->base_id = $options['base_id'];
47 47
 			// lets filter the options before we do anything
48
-			$options       = apply_filters( "wp_super_duper_options", $options );
49
-			$options       = apply_filters( "wp_super_duper_options_{$this->base_id}", $options );
50
-			$options       = $this->add_name_from_key( $options );
48
+			$options       = apply_filters("wp_super_duper_options", $options);
49
+			$options       = apply_filters("wp_super_duper_options_{$this->base_id}", $options);
50
+			$options       = $this->add_name_from_key($options);
51 51
 			$this->options = $options;
52 52
 
53 53
 			$this->base_id   = $options['base_id'];
54
-			$this->arguments = isset( $options['arguments'] ) ? $options['arguments'] : array();
54
+			$this->arguments = isset($options['arguments']) ? $options['arguments'] : array();
55 55
 
56 56
 			// init parent
57
-			parent::__construct( $options['base_id'], $options['name'], $options['widget_ops'] );
57
+			parent::__construct($options['base_id'], $options['name'], $options['widget_ops']);
58 58
 
59
-			if ( isset( $options['class_name'] ) ) {
59
+			if (isset($options['class_name'])) {
60 60
 				// register widget
61 61
 				$this->class_name = $options['class_name'];
62 62
 
@@ -64,54 +64,54 @@  discard block
 block discarded – undo
64 64
 				$this->register_shortcode();
65 65
 
66 66
 				// Fusion Builder (avada) support
67
-				if( function_exists('fusion_builder_map') ){ $this->register_fusion_element(); }
67
+				if (function_exists('fusion_builder_map')) { $this->register_fusion_element(); }
68 68
 
69 69
 				// register block
70
-				add_action( 'admin_enqueue_scripts', array( $this, 'register_block' ) );
70
+				add_action('admin_enqueue_scripts', array($this, 'register_block'));
71 71
 			}
72 72
 
73 73
 			// add the CSS and JS we need ONCE
74 74
 			global $sd_widget_scripts;
75 75
 
76
-			if ( ! $sd_widget_scripts ) {
77
-				wp_add_inline_script( 'admin-widgets', $this->widget_js() );
78
-				wp_add_inline_script( 'customize-controls', $this->widget_js() );
79
-				wp_add_inline_style( 'widgets', $this->widget_css() );
76
+			if (!$sd_widget_scripts) {
77
+				wp_add_inline_script('admin-widgets', $this->widget_js());
78
+				wp_add_inline_script('customize-controls', $this->widget_js());
79
+				wp_add_inline_style('widgets', $this->widget_css());
80 80
 
81 81
 				$sd_widget_scripts = true;
82 82
 
83 83
 				// add shortcode insert button once
84
-				add_action( 'media_buttons', array( $this, 'shortcode_insert_button' ) );
84
+				add_action('media_buttons', array($this, 'shortcode_insert_button'));
85 85
 				// generatepress theme sections compatibility
86
-				if ( function_exists( 'generate_sections_sections_metabox' ) ) {
87
-					add_action( 'generate_sections_metabox', array( $this, 'shortcode_insert_button_script' ) );
86
+				if (function_exists('generate_sections_sections_metabox')) {
87
+					add_action('generate_sections_metabox', array($this, 'shortcode_insert_button_script'));
88 88
 				}
89
-				if ( $this->is_preview() ) {
90
-					add_action( 'wp_footer', array( $this, 'shortcode_insert_button_script' ) );
89
+				if ($this->is_preview()) {
90
+					add_action('wp_footer', array($this, 'shortcode_insert_button_script'));
91 91
 					// this makes the insert button work for elementor
92
-					add_action( 'elementor/editor/after_enqueue_scripts', array(
92
+					add_action('elementor/editor/after_enqueue_scripts', array(
93 93
 						$this,
94 94
 						'shortcode_insert_button_script'
95
-					) ); // for elementor
95
+					)); // for elementor
96 96
 				}
97 97
 				// this makes the insert button work for cornerstone
98
-				add_action('wp_print_footer_scripts',array( __CLASS__, 'maybe_cornerstone_builder' ));
98
+				add_action('wp_print_footer_scripts', array(__CLASS__, 'maybe_cornerstone_builder'));
99 99
 
100
-				add_action( 'wp_ajax_super_duper_get_widget_settings', array( __CLASS__, 'get_widget_settings' ) );
101
-				add_action( 'wp_ajax_super_duper_get_picker', array( __CLASS__, 'get_picker' ) );
100
+				add_action('wp_ajax_super_duper_get_widget_settings', array(__CLASS__, 'get_widget_settings'));
101
+				add_action('wp_ajax_super_duper_get_picker', array(__CLASS__, 'get_picker'));
102 102
 
103 103
 				// add generator text to admin head
104
-				add_action( 'admin_head', array( $this, 'generator' ) );
104
+				add_action('admin_head', array($this, 'generator'));
105 105
 			}
106 106
 
107
-			do_action( 'wp_super_duper_widget_init', $options, $this );
107
+			do_action('wp_super_duper_widget_init', $options, $this);
108 108
 		}
109 109
 
110
-		public function register_fusion_element(){
110
+		public function register_fusion_element() {
111 111
 
112 112
 			$options = $this->options;
113 113
 
114
-			if($this->base_id){
114
+			if ($this->base_id) {
115 115
 
116 116
 				$params = $this->get_fusion_params();
117 117
 
@@ -122,7 +122,7 @@  discard block
 block discarded – undo
122 122
 					'allow_generator' => true,
123 123
 				);
124 124
 
125
-				if(!empty($params)){
125
+				if (!empty($params)) {
126 126
 					$args['params'] = $params;
127 127
 				}
128 128
 
@@ -131,12 +131,12 @@  discard block
 block discarded – undo
131 131
 
132 132
 		}
133 133
 
134
-		public function get_fusion_params(){
134
+		public function get_fusion_params() {
135 135
 			$params = array();
136 136
 			$arguments = $this->get_arguments();
137 137
 
138
-			if(!empty($arguments)){
139
-				foreach($arguments as $key => $val){
138
+			if (!empty($arguments)) {
139
+				foreach ($arguments as $key => $val) {
140 140
 					$param = array();
141 141
 					// type
142 142
 					$param['type'] = str_replace(
@@ -170,19 +170,19 @@  discard block
 block discarded – undo
170 170
 					$param['default'] = isset($val['default']) ? $val['default'] : '';
171 171
 
172 172
 					// Group
173
-					if(isset($val['group'])){
173
+					if (isset($val['group'])) {
174 174
 						$param['group'] = $val['group'];
175 175
 					}
176 176
 
177 177
 					// value
178
-					if($val['type'] == 'checkbox'){
179
-						if(isset($val['default']) && $val['default'] == '0'){
178
+					if ($val['type'] == 'checkbox') {
179
+						if (isset($val['default']) && $val['default'] == '0') {
180 180
 							unset($param['default']);
181 181
 						}
182
-						$param['value'] = array(''=>__("No"),'1'=>__("Yes"));
183
-					}elseif($param['type'] == 'select'){
182
+						$param['value'] = array(''=>__("No"), '1'=>__("Yes"));
183
+					}elseif ($param['type'] == 'select') {
184 184
 						$param['value'] = isset($val['options']) ? $val['options'] : array();
185
-					}else{
185
+					} else {
186 186
 						$param['value'] = isset($val['default']) ? $val['default'] : '';
187 187
 					}
188 188
 
@@ -199,8 +199,8 @@  discard block
 block discarded – undo
199 199
 		/**
200 200
 		 * Maybe insert the shortcode inserter button in the footer if we are in the cornerstone builder
201 201
 		 */
202
-		public static function maybe_cornerstone_builder(){
203
-			if(did_action('cornerstone_before_boot_app')){
202
+		public static function maybe_cornerstone_builder() {
203
+			if (did_action('cornerstone_before_boot_app')) {
204 204
 				self::shortcode_insert_button_script();
205 205
 			}
206 206
 		}
@@ -212,12 +212,12 @@  discard block
 block discarded – undo
212 212
 		 *
213 213
 		 * @return string
214 214
 		 */
215
-		public static function get_picker( $editor_id = '' ) {
215
+		public static function get_picker($editor_id = '') {
216 216
 
217 217
 			ob_start();
218
-			if ( isset( $_POST['editor_id'] ) ) {
219
-				$editor_id = esc_attr( $_POST['editor_id'] );
220
-			} elseif ( isset( $_REQUEST['et_fb'] ) ) {
218
+			if (isset($_POST['editor_id'])) {
219
+				$editor_id = esc_attr($_POST['editor_id']);
220
+			} elseif (isset($_REQUEST['et_fb'])) {
221 221
 				$editor_id = 'main_content_content_vb_tiny_mce';
222 222
 			}
223 223
 
@@ -226,13 +226,13 @@  discard block
 block discarded – undo
226 226
 
227 227
 			<div class="sd-shortcode-left-wrap">
228 228
 				<?php
229
-				ksort( $sd_widgets );
229
+				ksort($sd_widgets);
230 230
 				//				print_r($sd_widgets);exit;
231
-				if ( ! empty( $sd_widgets ) ) {
231
+				if (!empty($sd_widgets)) {
232 232
 					echo '<select class="widefat" onchange="sd_get_shortcode_options(this);">';
233
-					echo "<option>" . __( 'Select shortcode' ) . "</option>";
234
-					foreach ( $sd_widgets as $shortcode => $class ) {
235
-						echo "<option value='" . esc_attr( $shortcode ) . "'>" . esc_attr( $shortcode ) . " (" . esc_attr( $class['name'] ) . ")</option>";
233
+					echo "<option>" . __('Select shortcode') . "</option>";
234
+					foreach ($sd_widgets as $shortcode => $class) {
235
+						echo "<option value='" . esc_attr($shortcode) . "'>" . esc_attr($shortcode) . " (" . esc_attr($class['name']) . ")</option>";
236 236
 					}
237 237
 					echo "</select>";
238 238
 
@@ -245,37 +245,37 @@  discard block
 block discarded – undo
245 245
 			<div class="sd-shortcode-right-wrap">
246 246
 				<textarea id='sd-shortcode-output' disabled></textarea>
247 247
 				<div id='sd-shortcode-output-actions'>
248
-					<?php if ( $editor_id != '' ) { ?>
248
+					<?php if ($editor_id != '') { ?>
249 249
 						<button class="button sd-insert-shortcode-button"
250
-						        onclick="sd_insert_shortcode(<?php if ( ! empty( $editor_id ) ) {
250
+						        onclick="sd_insert_shortcode(<?php if (!empty($editor_id)) {
251 251
 							        echo "'" . $editor_id . "'";
252
-						        } ?>)"><?php _e( 'Insert shortcode' ); ?></button>
252
+						        } ?>)"><?php _e('Insert shortcode'); ?></button>
253 253
 					<?php } ?>
254 254
 					<button class="button"
255
-					        onclick="sd_copy_to_clipboard()"><?php _e( 'Copy shortcode' ); ?></button>
255
+					        onclick="sd_copy_to_clipboard()"><?php _e('Copy shortcode'); ?></button>
256 256
 				</div>
257 257
 			</div>
258 258
 			<?php
259 259
 
260 260
 			$html = ob_get_clean();
261 261
 
262
-			if ( wp_doing_ajax() ) {
262
+			if (wp_doing_ajax()) {
263 263
 				echo $html;
264 264
 				$should_die = true;
265 265
 
266 266
 				// some builder get the editor via ajax so we should not die on those ocasions
267 267
 				$dont_die = array(
268
-					'parent_tag',// WP Bakery
268
+					'parent_tag', // WP Bakery
269 269
 					'avia_request' // enfold
270 270
 				);
271 271
 
272
-				foreach ( $dont_die as $request ) {
273
-					if ( isset( $_REQUEST[ $request ] ) ) {
272
+				foreach ($dont_die as $request) {
273
+					if (isset($_REQUEST[$request])) {
274 274
 						$should_die = false;
275 275
 					}
276 276
 				}
277 277
 
278
-				if ( $should_die ) {
278
+				if ($should_die) {
279 279
 					wp_die();
280 280
 				}
281 281
 
@@ -302,16 +302,16 @@  discard block
 block discarded – undo
302 302
 		public static function get_widget_settings() {
303 303
 			global $sd_widgets;
304 304
 
305
-			$shortcode = isset( $_REQUEST['shortcode'] ) && $_REQUEST['shortcode'] ? sanitize_title_with_dashes( $_REQUEST['shortcode'] ) : '';
306
-			if ( ! $shortcode ) {
305
+			$shortcode = isset($_REQUEST['shortcode']) && $_REQUEST['shortcode'] ? sanitize_title_with_dashes($_REQUEST['shortcode']) : '';
306
+			if (!$shortcode) {
307 307
 				wp_die();
308 308
 			}
309
-			$widget_args = isset( $sd_widgets[ $shortcode ] ) ? $sd_widgets[ $shortcode ] : '';
310
-			if ( ! $widget_args ) {
309
+			$widget_args = isset($sd_widgets[$shortcode]) ? $sd_widgets[$shortcode] : '';
310
+			if (!$widget_args) {
311 311
 				wp_die();
312 312
 			}
313
-			$class_name = isset( $widget_args['class_name'] ) && $widget_args['class_name'] ? $widget_args['class_name'] : '';
314
-			if ( ! $class_name ) {
313
+			$class_name = isset($widget_args['class_name']) && $widget_args['class_name'] ? $widget_args['class_name'] : '';
314
+			if (!$class_name) {
315 315
 				wp_die();
316 316
 			}
317 317
 
@@ -319,7 +319,7 @@  discard block
 block discarded – undo
319 319
 			$widget = new $class_name;
320 320
 
321 321
 			ob_start();
322
-			$widget->form( array() );
322
+			$widget->form(array());
323 323
 			$form = ob_get_clean();
324 324
 			echo "<form id='$shortcode'>" . $form . "<div class=\"widget-control-save\"></div></form>";
325 325
 			echo "<style>" . $widget->widget_css() . "</style>";
@@ -337,9 +337,9 @@  discard block
 block discarded – undo
337 337
 		 * @param string $editor_id Optional. Shortcode editor id. Default null.
338 338
 		 * @param string $insert_shortcode_function Optional. Insert shotcode function. Default null.
339 339
 		 */
340
-		public static function shortcode_insert_button( $editor_id = '', $insert_shortcode_function = '' ) {
340
+		public static function shortcode_insert_button($editor_id = '', $insert_shortcode_function = '') {
341 341
 			global $sd_widgets, $shortcode_insert_button_once;
342
-			if ( $shortcode_insert_button_once ) {
342
+			if ($shortcode_insert_button_once) {
343 343
 				return;
344 344
 			}
345 345
 			add_thickbox();
@@ -349,21 +349,21 @@  discard block
 block discarded – undo
349 349
 			 * Cornerstone makes us play dirty tricks :/
350 350
 			 * All media_buttons are removed via JS unless they are two specific id's so we wrap our content in this ID so it is not removed.
351 351
 			 */
352
-			if ( function_exists( 'cornerstone_plugin_init' ) && ! is_admin() ) {
352
+			if (function_exists('cornerstone_plugin_init') && !is_admin()) {
353 353
 				echo '<span id="insert-media-button">';
354 354
 			}
355 355
 
356
-			echo self::shortcode_button( 'this', 'true' );
356
+			echo self::shortcode_button('this', 'true');
357 357
 
358 358
 			// see opening note
359
-			if ( function_exists( 'cornerstone_plugin_init' ) && ! is_admin() ) {
359
+			if (function_exists('cornerstone_plugin_init') && !is_admin()) {
360 360
 				echo '</span>'; // end #insert-media-button
361 361
 			}
362 362
 
363 363
 			// Add separate script for generatepress theme sections
364
-			if ( function_exists( 'generate_sections_sections_metabox' ) && did_action( 'generate_sections_metabox' ) ) {
364
+			if (function_exists('generate_sections_sections_metabox') && did_action('generate_sections_metabox')) {
365 365
 			} else {
366
-				self::shortcode_insert_button_script( $editor_id, $insert_shortcode_function );
366
+				self::shortcode_insert_button_script($editor_id, $insert_shortcode_function);
367 367
 			}
368 368
 
369 369
 			$shortcode_insert_button_once = true;
@@ -377,12 +377,12 @@  discard block
 block discarded – undo
377 377
 		 *
378 378
 		 * @return mixed
379 379
 		 */
380
-		public static function shortcode_button( $id = '', $search_for_id = '' ) {
380
+		public static function shortcode_button($id = '', $search_for_id = '') {
381 381
 			ob_start();
382 382
 			?>
383 383
 			<span class="sd-lable-shortcode-inserter">
384 384
 				<a onclick="sd_ajax_get_picker(<?php echo $id;
385
-				if ( $search_for_id ) {
385
+				if ($search_for_id) {
386 386
 					echo "," . $search_for_id;
387 387
 				} ?>);" href="#TB_inline?width=100%&height=550&inlineId=super-duper-content-ajaxed"
388 388
 				   class="thickbox button super-duper-content-open" title="Add Shortcode">
@@ -398,7 +398,7 @@  discard block
 block discarded – undo
398 398
 			$html = ob_get_clean();
399 399
 
400 400
 			// remove line breaks so we can use it in js
401
-			return preg_replace( "/\r|\n/", "", trim( $html ) );
401
+			return preg_replace("/\r|\n/", "", trim($html));
402 402
 		}
403 403
 
404 404
 		/**
@@ -456,7 +456,7 @@  discard block
 block discarded – undo
456 456
 						jQuery($this).data('sd-widget-enabled', true);
457 457
 					}
458 458
 
459
-					var $button = '<button title="<?php _e( 'Advanced Settings' );?>" class="button button-primary right sd-advanced-button" onclick="sd_so_toggle_advanced(this);return false;"><i class="fas fa-sliders-h" aria-hidden="true"></i></button>';
459
+					var $button = '<button title="<?php _e('Advanced Settings'); ?>" class="button button-primary right sd-advanced-button" onclick="sd_so_toggle_advanced(this);return false;"><i class="fas fa-sliders-h" aria-hidden="true"></i></button>';
460 460
 					var form = jQuery($this).parents('' + $selector + '');
461 461
 
462 462
 					if (jQuery($this).val() == '1' && jQuery(form).find('.sd-advanced-button').length == 0) {
@@ -493,10 +493,10 @@  discard block
 block discarded – undo
493 493
 			 * We only add the <script> tags for code highlighting, so we strip them from the output.
494 494
 			 */
495 495
 
496
-			return str_replace( array(
496
+			return str_replace(array(
497 497
 				'<script>',
498 498
 				'</script>'
499
-			), '', $output );
499
+			), '', $output);
500 500
 		}
501 501
 
502 502
 		/**
@@ -507,7 +507,7 @@  discard block
 block discarded – undo
507 507
 		 * @param string $editor_id
508 508
 		 * @param string $insert_shortcode_function
509 509
 		 */
510
-		public static function shortcode_insert_button_script( $editor_id = '', $insert_shortcode_function = '' ) {
510
+		public static function shortcode_insert_button_script($editor_id = '', $insert_shortcode_function = '') {
511 511
 			?>
512 512
 			<style>
513 513
 				.sd-shortcode-left-wrap {
@@ -625,22 +625,22 @@  discard block
 block discarded – undo
625 625
 					height: 250px;
626 626
 					width: 100%;
627 627
 				}
628
-				<?php if ( function_exists( 'generate_sections_sections_metabox' ) ) { ?>
628
+				<?php if (function_exists('generate_sections_sections_metabox')) { ?>
629 629
 				.generate-sections-modal #custom-media-buttons > .sd-lable-shortcode-inserter {
630 630
 					display: inline;
631 631
 				}
632 632
 				<?php } ?>
633 633
 			</style>
634 634
 			<?php
635
-			if ( class_exists( 'SiteOrigin_Panels' ) ) {
635
+			if (class_exists('SiteOrigin_Panels')) {
636 636
 				echo "<script>" . self::siteorigin_js() . "</script>";
637 637
 			}
638 638
 			?>
639 639
 			<script>
640 640
 				<?php
641
-				if(! empty( $insert_shortcode_function )){
641
+				if (!empty($insert_shortcode_function)) {
642 642
 					echo $insert_shortcode_function;
643
-				}else{
643
+				} else {
644 644
 
645 645
 				/**
646 646
 				 * Function for super duper insert shortcode.
@@ -653,9 +653,9 @@  discard block
 block discarded – undo
653 653
 					if ($shortcode) {
654 654
 						if (!$editor_id) {
655 655
 							<?php
656
-							if ( isset( $_REQUEST['et_fb'] ) ) {
656
+							if (isset($_REQUEST['et_fb'])) {
657 657
 								echo '$editor_id = "#main_content_content_vb_tiny_mce";';
658
-							} elseif ( isset( $_REQUEST['action'] ) && $_REQUEST['action'] == 'elementor' ) {
658
+							} elseif (isset($_REQUEST['action']) && $_REQUEST['action'] == 'elementor') {
659 659
 								echo '$editor_id = "#elementor-controls .wp-editor-container textarea";';
660 660
 							} else {
661 661
 								echo '$editor_id = "#wp-content-editor-container textarea";';
@@ -740,11 +740,11 @@  discard block
 block discarded – undo
740 740
 							'shortcode': $short_code,
741 741
 							'attributes': 123,
742 742
 							'post_id': 321,
743
-							'_ajax_nonce': '<?php echo wp_create_nonce( 'super_duper_output_shortcode' );?>'
743
+							'_ajax_nonce': '<?php echo wp_create_nonce('super_duper_output_shortcode'); ?>'
744 744
 						};
745 745
 
746 746
 						if (typeof ajaxurl === 'undefined') {
747
-							var ajaxurl = "<?php echo admin_url( 'admin-ajax.php' );?>";
747
+							var ajaxurl = "<?php echo admin_url('admin-ajax.php'); ?>";
748 748
 						}
749 749
 
750 750
 						jQuery.post(ajaxurl, data, function (response) {
@@ -953,11 +953,11 @@  discard block
 block discarded – undo
953 953
 					var data = {
954 954
 						'action': 'super_duper_get_picker',
955 955
 						'editor_id': $id,
956
-						'_ajax_nonce': '<?php echo wp_create_nonce( 'super_duper_picker' );?>'
956
+						'_ajax_nonce': '<?php echo wp_create_nonce('super_duper_picker'); ?>'
957 957
 					};
958 958
 
959 959
 					if (!ajaxurl) {
960
-						var ajaxurl = "<?php echo admin_url( 'admin-ajax.php' ); ?>";
960
+						var ajaxurl = "<?php echo admin_url('admin-ajax.php'); ?>";
961 961
 					}
962 962
 
963 963
 					jQuery.post(ajaxurl, data, function (response) {
@@ -978,9 +978,9 @@  discard block
 block discarded – undo
978 978
 				 */
979 979
 				function sd_shortcode_button($id) {
980 980
 					if ($id) {
981
-						return '<?php echo self::shortcode_button( "\\''+\$id+'\\'" );?>';
981
+						return '<?php echo self::shortcode_button("\\''+\$id+'\\'"); ?>';
982 982
 					} else {
983
-						return '<?php echo self::shortcode_button();?>';
983
+						return '<?php echo self::shortcode_button(); ?>';
984 984
 					}
985 985
 				}
986 986
 
@@ -1036,10 +1036,10 @@  discard block
 block discarded – undo
1036 1036
 			 * We only add the <script> tags for code highlighting, so we strip them from the output.
1037 1037
 			 */
1038 1038
 
1039
-			return str_replace( array(
1039
+			return str_replace(array(
1040 1040
 				'<style>',
1041 1041
 				'</style>'
1042
-			), '', $output );
1042
+			), '', $output);
1043 1043
 		}
1044 1044
 
1045 1045
 		/**
@@ -1109,7 +1109,7 @@  discard block
 block discarded – undo
1109 1109
 						jQuery($this).data('sd-widget-enabled', true);
1110 1110
 					}
1111 1111
 
1112
-					var $button = '<button title="<?php _e( 'Advanced Settings' );?>" class="button button-primary right sd-advanced-button" onclick="sd_toggle_advanced(this);return false;"><span class="dashicons dashicons-admin-settings" style="width: 28px;font-size: 28px;"></span></button>';
1112
+					var $button = '<button title="<?php _e('Advanced Settings'); ?>" class="button button-primary right sd-advanced-button" onclick="sd_toggle_advanced(this);return false;"><span class="dashicons dashicons-admin-settings" style="width: 28px;font-size: 28px;"></span></button>';
1113 1113
 					var form = jQuery($this).parents('' + $selector + '');
1114 1114
 
1115 1115
 					if (jQuery($this).val() == '1' && jQuery(form).find('.sd-advanced-button').length == 0) {
@@ -1201,7 +1201,7 @@  discard block
 block discarded – undo
1201 1201
 					});
1202 1202
 
1203 1203
 				}
1204
-				<?php do_action( 'wp_super_duper_widget_js', $this ); ?>
1204
+				<?php do_action('wp_super_duper_widget_js', $this); ?>
1205 1205
 			</script>
1206 1206
 			<?php
1207 1207
 			$output = ob_get_clean();
@@ -1210,10 +1210,10 @@  discard block
 block discarded – undo
1210 1210
 			 * We only add the <script> tags for code highlighting, so we strip them from the output.
1211 1211
 			 */
1212 1212
 
1213
-			return str_replace( array(
1213
+			return str_replace(array(
1214 1214
 				'<script>',
1215 1215
 				'</script>'
1216
-			), '', $output );
1216
+			), '', $output);
1217 1217
 		}
1218 1218
 
1219 1219
 
@@ -1224,14 +1224,14 @@  discard block
 block discarded – undo
1224 1224
 		 *
1225 1225
 		 * @return mixed
1226 1226
 		 */
1227
-		private function add_name_from_key( $options, $arguments = false ) {
1228
-			if ( ! empty( $options['arguments'] ) ) {
1229
-				foreach ( $options['arguments'] as $key => $val ) {
1230
-					$options['arguments'][ $key ]['name'] = $key;
1227
+		private function add_name_from_key($options, $arguments = false) {
1228
+			if (!empty($options['arguments'])) {
1229
+				foreach ($options['arguments'] as $key => $val) {
1230
+					$options['arguments'][$key]['name'] = $key;
1231 1231
 				}
1232
-			} elseif ( $arguments && is_array( $options ) && ! empty( $options ) ) {
1233
-				foreach ( $options as $key => $val ) {
1234
-					$options[ $key ]['name'] = $key;
1232
+			} elseif ($arguments && is_array($options) && !empty($options)) {
1233
+				foreach ($options as $key => $val) {
1234
+					$options[$key]['name'] = $key;
1235 1235
 				}
1236 1236
 			}
1237 1237
 
@@ -1244,8 +1244,8 @@  discard block
 block discarded – undo
1244 1244
 		 * @since 1.0.0
1245 1245
 		 */
1246 1246
 		public function register_shortcode() {
1247
-			add_shortcode( $this->base_id, array( $this, 'shortcode_output' ) );
1248
-			add_action( 'wp_ajax_super_duper_output_shortcode', array( __CLASS__, 'render_shortcode' ) );
1247
+			add_shortcode($this->base_id, array($this, 'shortcode_output'));
1248
+			add_action('wp_ajax_super_duper_output_shortcode', array(__CLASS__, 'render_shortcode'));
1249 1249
 		}
1250 1250
 
1251 1251
 		/**
@@ -1255,33 +1255,33 @@  discard block
 block discarded – undo
1255 1255
 		 */
1256 1256
 		public static function render_shortcode() {
1257 1257
 
1258
-			check_ajax_referer( 'super_duper_output_shortcode', '_ajax_nonce', true );
1259
-			if ( ! current_user_can( 'manage_options' ) ) {
1258
+			check_ajax_referer('super_duper_output_shortcode', '_ajax_nonce', true);
1259
+			if (!current_user_can('manage_options')) {
1260 1260
 				wp_die();
1261 1261
 			}
1262 1262
 
1263 1263
 			// we might need the $post value here so lets set it.
1264
-			if ( isset( $_POST['post_id'] ) && $_POST['post_id'] ) {
1265
-				$post_obj = get_post( absint( $_POST['post_id'] ) );
1266
-				if ( ! empty( $post_obj ) && empty( $post ) ) {
1264
+			if (isset($_POST['post_id']) && $_POST['post_id']) {
1265
+				$post_obj = get_post(absint($_POST['post_id']));
1266
+				if (!empty($post_obj) && empty($post)) {
1267 1267
 					global $post;
1268 1268
 					$post = $post_obj;
1269 1269
 				}
1270 1270
 			}
1271 1271
 
1272
-			if ( isset( $_POST['shortcode'] ) && $_POST['shortcode'] ) {
1273
-				$shortcode_name   = sanitize_title_with_dashes( $_POST['shortcode'] );
1274
-				$attributes_array = isset( $_POST['attributes'] ) && $_POST['attributes'] ? $_POST['attributes'] : array();
1272
+			if (isset($_POST['shortcode']) && $_POST['shortcode']) {
1273
+				$shortcode_name   = sanitize_title_with_dashes($_POST['shortcode']);
1274
+				$attributes_array = isset($_POST['attributes']) && $_POST['attributes'] ? $_POST['attributes'] : array();
1275 1275
 				$attributes       = '';
1276
-				if ( ! empty( $attributes_array ) ) {
1277
-					foreach ( $attributes_array as $key => $value ) {
1278
-						$attributes .= " " . sanitize_title_with_dashes( $key ) . "='" . wp_slash( $value ) . "' ";
1276
+				if (!empty($attributes_array)) {
1277
+					foreach ($attributes_array as $key => $value) {
1278
+						$attributes .= " " . sanitize_title_with_dashes($key) . "='" . wp_slash($value) . "' ";
1279 1279
 					}
1280 1280
 				}
1281 1281
 
1282 1282
 				$shortcode = "[" . $shortcode_name . " " . $attributes . "]";
1283 1283
 
1284
-				echo do_shortcode( $shortcode );
1284
+				echo do_shortcode($shortcode);
1285 1285
 
1286 1286
 			}
1287 1287
 			wp_die();
@@ -1295,42 +1295,42 @@  discard block
 block discarded – undo
1295 1295
 		 *
1296 1296
 		 * @return string
1297 1297
 		 */
1298
-		public function shortcode_output( $args = array(), $content = '' ) {
1299
-			$args = self::argument_values( $args );
1298
+		public function shortcode_output($args = array(), $content = '') {
1299
+			$args = self::argument_values($args);
1300 1300
 
1301 1301
 			// add extra argument so we know its a output to gutenberg
1302 1302
 			//$args
1303
-			$args = $this->string_to_bool( $args );
1303
+			$args = $this->string_to_bool($args);
1304 1304
 
1305 1305
 			// if we have a enclosed shortcode we add it to the special `html` argument
1306
-			if(!empty($content)){
1306
+			if (!empty($content)) {
1307 1307
 				$args['html'] = $content;
1308 1308
 			}
1309 1309
 
1310
-			$class = isset( $this->options['widget_ops']['classname'] ) ? esc_attr( $this->options['widget_ops']['classname'] ) : '';
1310
+			$class = isset($this->options['widget_ops']['classname']) ? esc_attr($this->options['widget_ops']['classname']) : '';
1311 1311
 
1312
-			$class = apply_filters( 'wp_super_duper_div_classname', $class, $args, $this );
1313
-			$class = apply_filters( 'wp_super_duper_div_classname_' . $this->base_id, $class, $args, $this );
1312
+			$class = apply_filters('wp_super_duper_div_classname', $class, $args, $this);
1313
+			$class = apply_filters('wp_super_duper_div_classname_' . $this->base_id, $class, $args, $this);
1314 1314
 
1315
-			$attrs = apply_filters( 'wp_super_duper_div_attrs', '', $args, $this );
1316
-			$attrs = apply_filters( 'wp_super_duper_div_attrs_' . $this->base_id, '', $args, $this ); //@todo this does not seem right @kiran?
1315
+			$attrs = apply_filters('wp_super_duper_div_attrs', '', $args, $this);
1316
+			$attrs = apply_filters('wp_super_duper_div_attrs_' . $this->base_id, '', $args, $this); //@todo this does not seem right @kiran?
1317 1317
 
1318 1318
 			$shortcode_args = array();
1319 1319
 			$output         = '';
1320
-			$no_wrap        = isset( $this->options['no_wrap'] ) && $this->options['no_wrap'] ? true : false;
1321
-			if( isset( $args['no_wrap'] ) && $args['no_wrap'] ){ $no_wrap = true; }
1322
-			$main_content   = $this->output( $args, $shortcode_args, $content );
1323
-			if ( $main_content && ! $no_wrap ) {
1320
+			$no_wrap        = isset($this->options['no_wrap']) && $this->options['no_wrap'] ? true : false;
1321
+			if (isset($args['no_wrap']) && $args['no_wrap']) { $no_wrap = true; }
1322
+			$main_content   = $this->output($args, $shortcode_args, $content);
1323
+			if ($main_content && !$no_wrap) {
1324 1324
 				// wrap the shortcode in a div with the same class as the widget
1325 1325
 				$output .= '<div class="' . $class . '" ' . $attrs . '>';
1326
-				if ( ! empty( $args['title'] ) ) {
1326
+				if (!empty($args['title'])) {
1327 1327
 					// if its a shortcode and there is a title try to grab the title wrappers
1328
-					$shortcode_args = array( 'before_title' => '', 'after_title' => '' );
1329
-					if ( empty( $instance ) ) {
1328
+					$shortcode_args = array('before_title' => '', 'after_title' => '');
1329
+					if (empty($instance)) {
1330 1330
 						global $wp_registered_sidebars;
1331
-						if ( ! empty( $wp_registered_sidebars ) ) {
1332
-							foreach ( $wp_registered_sidebars as $sidebar ) {
1333
-								if ( ! empty( $sidebar['before_title'] ) ) {
1331
+						if (!empty($wp_registered_sidebars)) {
1332
+							foreach ($wp_registered_sidebars as $sidebar) {
1333
+								if (!empty($sidebar['before_title'])) {
1334 1334
 									$shortcode_args['before_title'] = $sidebar['before_title'];
1335 1335
 									$shortcode_args['after_title']  = $sidebar['after_title'];
1336 1336
 									break;
@@ -1338,20 +1338,20 @@  discard block
 block discarded – undo
1338 1338
 							}
1339 1339
 						}
1340 1340
 					}
1341
-					$output .= $this->output_title( $shortcode_args, $args );
1341
+					$output .= $this->output_title($shortcode_args, $args);
1342 1342
 				}
1343 1343
 				$output .= $main_content;
1344 1344
 				$output .= '</div>';
1345
-			} elseif ( $main_content && $no_wrap ) {
1345
+			} elseif ($main_content && $no_wrap) {
1346 1346
 				$output .= $main_content;
1347 1347
 			}
1348 1348
 
1349 1349
 			// if preview show a placeholder if empty
1350
-			if ( $this->is_preview() && $output == '' ) {
1351
-				$output = $this->preview_placeholder_text( "[{" . $this->base_id . "}]" );
1350
+			if ($this->is_preview() && $output == '') {
1351
+				$output = $this->preview_placeholder_text("[{" . $this->base_id . "}]");
1352 1352
 			}
1353 1353
 
1354
-			return apply_filters( 'wp_super_duper_widget_output', $output, $args, $shortcode_args, $this );
1354
+			return apply_filters('wp_super_duper_widget_output', $output, $args, $shortcode_args, $this);
1355 1355
 		}
1356 1356
 
1357 1357
 		/**
@@ -1361,8 +1361,8 @@  discard block
 block discarded – undo
1361 1361
 		 *
1362 1362
 		 * @return string
1363 1363
 		 */
1364
-		public function preview_placeholder_text( $name = '' ) {
1365
-			return "<div style='background:#0185ba33;padding: 10px;border: 4px #ccc dashed;'>" . sprintf( __( 'Placeholder for: %s' ), $name ) . "</div>";
1364
+		public function preview_placeholder_text($name = '') {
1365
+			return "<div style='background:#0185ba33;padding: 10px;border: 4px #ccc dashed;'>" . sprintf(__('Placeholder for: %s'), $name) . "</div>";
1366 1366
 		}
1367 1367
 
1368 1368
 		/**
@@ -1372,13 +1372,13 @@  discard block
 block discarded – undo
1372 1372
 		 *
1373 1373
 		 * @return mixed
1374 1374
 		 */
1375
-		public function string_to_bool( $options ) {
1375
+		public function string_to_bool($options) {
1376 1376
 			// convert bool strings to booleans
1377
-			foreach ( $options as $key => $val ) {
1378
-				if ( $val == 'false' ) {
1379
-					$options[ $key ] = false;
1380
-				} elseif ( $val == 'true' ) {
1381
-					$options[ $key ] = true;
1377
+			foreach ($options as $key => $val) {
1378
+				if ($val == 'false') {
1379
+					$options[$key] = false;
1380
+				} elseif ($val == 'true') {
1381
+					$options[$key] = true;
1382 1382
 				}
1383 1383
 			}
1384 1384
 
@@ -1394,27 +1394,27 @@  discard block
 block discarded – undo
1394 1394
 		 *
1395 1395
 		 * @return array
1396 1396
 		 */
1397
-		public function argument_values( $instance ) {
1397
+		public function argument_values($instance) {
1398 1398
 			$argument_values = array();
1399 1399
 
1400 1400
 			// set widget instance
1401 1401
 			$this->instance = $instance;
1402 1402
 
1403
-			if ( empty( $this->arguments ) ) {
1403
+			if (empty($this->arguments)) {
1404 1404
 				$this->arguments = $this->get_arguments();
1405 1405
 			}
1406 1406
 
1407
-			if ( ! empty( $this->arguments ) ) {
1408
-				foreach ( $this->arguments as $key => $args ) {
1407
+			if (!empty($this->arguments)) {
1408
+				foreach ($this->arguments as $key => $args) {
1409 1409
 					// set the input name from the key
1410 1410
 					$args['name'] = $key;
1411 1411
 					//
1412
-					$argument_values[ $key ] = isset( $instance[ $key ] ) ? $instance[ $key ] : '';
1413
-					if($args['type']=='checkbox' && $argument_values[ $key ] == ''){
1412
+					$argument_values[$key] = isset($instance[$key]) ? $instance[$key] : '';
1413
+					if ($args['type'] == 'checkbox' && $argument_values[$key] == '') {
1414 1414
 						// don't set default for an empty checkbox
1415 1415
 					}
1416
-					elseif ( $argument_values[ $key ] == '' && isset( $args['default'] ) ) {
1417
-						$argument_values[ $key ] = $args['default'];
1416
+					elseif ($argument_values[$key] == '' && isset($args['default'])) {
1417
+						$argument_values[$key] = $args['default'];
1418 1418
 					}
1419 1419
 				}
1420 1420
 			}
@@ -1441,12 +1441,12 @@  discard block
 block discarded – undo
1441 1441
 		 * @return array Get arguments.
1442 1442
 		 */
1443 1443
 		public function get_arguments() {
1444
-			if ( empty( $this->arguments ) ) {
1444
+			if (empty($this->arguments)) {
1445 1445
 				$this->arguments = $this->set_arguments();
1446 1446
 			}
1447 1447
 
1448
-			$this->arguments = apply_filters( 'wp_super_duper_arguments', $this->arguments, $this->options, $this->instance );
1449
-			$this->arguments = $this->add_name_from_key( $this->arguments, true );
1448
+			$this->arguments = apply_filters('wp_super_duper_arguments', $this->arguments, $this->options, $this->instance);
1449
+			$this->arguments = $this->add_name_from_key($this->arguments, true);
1450 1450
 
1451 1451
 			return $this->arguments;
1452 1452
 		}
@@ -1458,7 +1458,7 @@  discard block
 block discarded – undo
1458 1458
 		 * @param array $widget_args
1459 1459
 		 * @param string $content
1460 1460
 		 */
1461
-		public function output( $args = array(), $widget_args = array(), $content = '' ) {
1461
+		public function output($args = array(), $widget_args = array(), $content = '') {
1462 1462
 
1463 1463
 		}
1464 1464
 
@@ -1466,10 +1466,10 @@  discard block
 block discarded – undo
1466 1466
 		 * Add the dynamic block code inline when the wp-block in enqueued.
1467 1467
 		 */
1468 1468
 		public function register_block() {
1469
-			wp_add_inline_script( 'wp-blocks', $this->block() );
1470
-			if ( class_exists( 'SiteOrigin_Panels' ) ) {
1469
+			wp_add_inline_script('wp-blocks', $this->block());
1470
+			if (class_exists('SiteOrigin_Panels')) {
1471 1471
 
1472
-				wp_add_inline_script( 'wp-blocks', $this->siteorigin_js() );
1472
+				wp_add_inline_script('wp-blocks', $this->siteorigin_js());
1473 1473
 
1474 1474
 			}
1475 1475
 		}
@@ -1484,13 +1484,13 @@  discard block
 block discarded – undo
1484 1484
 			$show      = false;
1485 1485
 			$arguments = $this->arguments;
1486 1486
 
1487
-			if ( empty( $arguments ) ) {
1487
+			if (empty($arguments)) {
1488 1488
 				$arguments = $this->get_arguments();
1489 1489
 			}
1490 1490
 
1491
-			if ( ! empty( $arguments ) ) {
1492
-				foreach ( $arguments as $argument ) {
1493
-					if ( isset( $argument['advanced'] ) && $argument['advanced'] ) {
1491
+			if (!empty($arguments)) {
1492
+				foreach ($arguments as $argument) {
1493
+					if (isset($argument['advanced']) && $argument['advanced']) {
1494 1494
 						$show = true;
1495 1495
 						break; // no need to continue if we know we have it
1496 1496
 					}
@@ -1509,15 +1509,15 @@  discard block
 block discarded – undo
1509 1509
 
1510 1510
 			$url = $this->url;
1511 1511
 
1512
-			if(!$url){
1512
+			if (!$url) {
1513 1513
 				// check if we are inside a plugin
1514
-				$file_dir = str_replace("/includes","", dirname( __FILE__ ));
1514
+				$file_dir = str_replace("/includes", "", dirname(__FILE__));
1515 1515
 
1516
-				$dir_parts = explode("/wp-content/",$file_dir);
1517
-				$url_parts = explode("/wp-content/",plugins_url());
1516
+				$dir_parts = explode("/wp-content/", $file_dir);
1517
+				$url_parts = explode("/wp-content/", plugins_url());
1518 1518
 
1519
-				if(!empty($url_parts[0]) && !empty($dir_parts[1])){
1520
-					$url = trailingslashit( $url_parts[0]."/wp-content/".$dir_parts[1] );
1519
+				if (!empty($url_parts[0]) && !empty($dir_parts[1])) {
1520
+					$url = trailingslashit($url_parts[0] . "/wp-content/" . $dir_parts[1]);
1521 1521
 					$this->url = $url;
1522 1522
 				}
1523 1523
 			}
@@ -1536,46 +1536,46 @@  discard block
 block discarded – undo
1536 1536
 		 * @since 1.1.0
1537 1537
 		 * @return string
1538 1538
 		 */
1539
-		public function get_block_icon($icon){
1539
+		public function get_block_icon($icon) {
1540 1540
 
1541 1541
 			// check if we have a Font Awesome icon
1542 1542
 			$fa_type = '';
1543
-			if(substr( $icon, 0, 7 ) === "fas fa-"){
1543
+			if (substr($icon, 0, 7) === "fas fa-") {
1544 1544
 				$fa_type = 'solid';
1545
-			}elseif(substr( $icon, 0, 7 ) === "far fa-"){
1545
+			}elseif (substr($icon, 0, 7) === "far fa-") {
1546 1546
 				$fa_type = 'regular';
1547
-			}elseif(substr( $icon, 0, 7 ) === "fab fa-"){
1547
+			}elseif (substr($icon, 0, 7) === "fab fa-") {
1548 1548
 				$fa_type = 'brands';
1549
-			}else{
1550
-				$icon = "'".$icon."'";
1549
+			} else {
1550
+				$icon = "'" . $icon . "'";
1551 1551
 			}
1552 1552
 
1553 1553
 			// set the icon if we found one
1554
-			if($fa_type){
1555
-				$fa_icon = str_replace(array("fas fa-","far fa-","fab fa-"),"",$icon);
1556
-				$icon  = "el('svg',{width: 20, height: 20, viewBox: '0 0 20 20'},el('use', {'xlink:href': '".$this->get_url()."icons/".$fa_type.".svg#".$fa_icon."','href': '".$this->get_url()."icons/".$fa_type.".svg#".$fa_icon."'}))";
1554
+			if ($fa_type) {
1555
+				$fa_icon = str_replace(array("fas fa-", "far fa-", "fab fa-"), "", $icon);
1556
+				$icon = "el('svg',{width: 20, height: 20, viewBox: '0 0 20 20'},el('use', {'xlink:href': '" . $this->get_url() . "icons/" . $fa_type . ".svg#" . $fa_icon . "','href': '" . $this->get_url() . "icons/" . $fa_type . ".svg#" . $fa_icon . "'}))";
1557 1557
 			}
1558 1558
 
1559 1559
 			return $icon;
1560 1560
 		}
1561 1561
 
1562
-		public function group_arguments($arguments){
1562
+		public function group_arguments($arguments) {
1563 1563
 //			echo '###';print_r($arguments);
1564
-			if(!empty($arguments)){
1564
+			if (!empty($arguments)) {
1565 1565
 				$temp_arguments = array();
1566 1566
 				$general = __("General");
1567 1567
 				$add_sections = false;
1568
-				foreach($arguments as $key => $args){
1569
-					if(isset($args['group'])){
1568
+				foreach ($arguments as $key => $args) {
1569
+					if (isset($args['group'])) {
1570 1570
 						$temp_arguments[$args['group']][$key] = $args;
1571 1571
 						$add_sections = true;
1572
-					}else{
1572
+					} else {
1573 1573
 						$temp_arguments[$general][$key] = $args;
1574 1574
 					}
1575 1575
 				}
1576 1576
 
1577 1577
 				// only add sections if more than one
1578
-				if($add_sections){
1578
+				if ($add_sections) {
1579 1579
 					$arguments = $temp_arguments;
1580 1580
 				}
1581 1581
 			}
@@ -1627,28 +1627,28 @@  discard block
 block discarded – undo
1627 1627
 					 * @return {?WPBlock}          The block, if it has been successfully
1628 1628
 					 *                             registered; otherwise `undefined`.
1629 1629
 					 */
1630
-					registerBlockType('<?php echo str_replace( "_", "-", sanitize_title_with_dashes( $this->options['textdomain'] ) . '/' . sanitize_title_with_dashes( $this->options['class_name'] ) );  ?>', { // Block name. Block names must be string that contains a namespace prefix. Example: my-plugin/my-custom-block.
1631
-						title: '<?php echo $this->options['name'];?>', // Block title.
1632
-						description: '<?php echo esc_attr( $this->options['widget_ops']['description'] )?>', // Block title.
1633
-						icon: <?php echo $this->get_block_icon($this->options['block-icon']);?>,//'<?php echo isset( $this->options['block-icon'] ) ? esc_attr( $this->options['block-icon'] ) : 'shield-alt';?>', // Block icon from Dashicons → https://developer.wordpress.org/resource/dashicons/.
1630
+					registerBlockType('<?php echo str_replace("_", "-", sanitize_title_with_dashes($this->options['textdomain']) . '/' . sanitize_title_with_dashes($this->options['class_name'])); ?>', { // Block name. Block names must be string that contains a namespace prefix. Example: my-plugin/my-custom-block.
1631
+						title: '<?php echo $this->options['name']; ?>', // Block title.
1632
+						description: '<?php echo esc_attr($this->options['widget_ops']['description'])?>', // Block title.
1633
+						icon: <?php echo $this->get_block_icon($this->options['block-icon']); ?>,//'<?php echo isset($this->options['block-icon']) ? esc_attr($this->options['block-icon']) : 'shield-alt'; ?>', // Block icon from Dashicons → https://developer.wordpress.org/resource/dashicons/.
1634 1634
 						supports: {
1635 1635
 							<?php
1636
-							if(isset($this->options['block-supports'])){
1637
-								echo $this->array_to_attributes( $this->options['block-supports'] );
1636
+							if (isset($this->options['block-supports'])) {
1637
+								echo $this->array_to_attributes($this->options['block-supports']);
1638 1638
 							}
1639 1639
 							?>
1640 1640
 						},
1641
-						category: '<?php echo isset( $this->options['block-category'] ) ? esc_attr( $this->options['block-category'] ) : 'common';?>', // Block category — Group blocks together based on common traits E.g. common, formatting, layout widgets, embed.
1642
-						<?php if ( isset( $this->options['block-keywords'] ) ) {
1641
+						category: '<?php echo isset($this->options['block-category']) ? esc_attr($this->options['block-category']) : 'common'; ?>', // Block category — Group blocks together based on common traits E.g. common, formatting, layout widgets, embed.
1642
+						<?php if (isset($this->options['block-keywords'])) {
1643 1643
 						echo "keywords : " . $this->options['block-keywords'] . ",";
1644 1644
 					}?>
1645 1645
 
1646 1646
 						<?php
1647 1647
 
1648 1648
 						// maybe set no_wrap
1649
-						$no_wrap        = isset( $this->options['no_wrap'] ) && $this->options['no_wrap'] ? true : false;
1650
-						if( isset( $this->arguments['no_wrap'] ) && $this->arguments['no_wrap'] ){ $no_wrap = true; }
1651
-						if( $no_wrap ){ $this->options['block-wrap'] = ''; }
1649
+						$no_wrap = isset($this->options['no_wrap']) && $this->options['no_wrap'] ? true : false;
1650
+						if (isset($this->arguments['no_wrap']) && $this->arguments['no_wrap']) { $no_wrap = true; }
1651
+						if ($no_wrap) { $this->options['block-wrap'] = ''; }
1652 1652
 
1653 1653
 						$show_advanced = $this->block_show_advanced();
1654 1654
 
@@ -1659,10 +1659,10 @@  discard block
 block discarded – undo
1659 1659
 						echo "  html: false";
1660 1660
 						echo "},";*/
1661 1661
 
1662
-						if ( ! empty( $this->arguments ) ) {
1662
+						if (!empty($this->arguments)) {
1663 1663
 							echo "attributes : {";
1664 1664
 
1665
-							if ( $show_advanced ) {
1665
+							if ($show_advanced) {
1666 1666
 								echo "show_advanced: {";
1667 1667
 								echo "	type: 'boolean',";
1668 1668
 								echo "  default: false,";
@@ -1670,41 +1670,41 @@  discard block
 block discarded – undo
1670 1670
 							}
1671 1671
 
1672 1672
 							// block wrap element
1673
-							if ( !empty( $this->options['block-wrap'] ) ) { //@todo we should validate this?
1673
+							if (!empty($this->options['block-wrap'])) { //@todo we should validate this?
1674 1674
 								echo "block_wrap: {";
1675 1675
 								echo "	type: 'string',";
1676
-								echo "  default: '" . esc_attr( $this->options['block-wrap'] ) . "',";
1676
+								echo "  default: '" . esc_attr($this->options['block-wrap']) . "',";
1677 1677
 								echo "},";
1678 1678
 							}
1679 1679
 
1680
-							foreach ( $this->arguments as $key => $args ) {
1680
+							foreach ($this->arguments as $key => $args) {
1681 1681
 
1682 1682
 								// set if we should show alignment
1683
-								if ( $key == 'alignment' ) {
1683
+								if ($key == 'alignment') {
1684 1684
 									$show_alignment = true;
1685 1685
 								}
1686 1686
 
1687 1687
 								$extra = '';
1688 1688
 
1689
-								if ( $args['type'] == 'checkbox' ) {
1689
+								if ($args['type'] == 'checkbox') {
1690 1690
 									$type    = 'boolean';
1691
-									$default = isset( $args['default'] ) && $args['default'] ? 'true' : 'false';
1692
-								} elseif ( $args['type'] == 'number' ) {
1691
+									$default = isset($args['default']) && $args['default'] ? 'true' : 'false';
1692
+								} elseif ($args['type'] == 'number') {
1693 1693
 									$type    = 'number';
1694
-									$default = isset( $args['default'] ) ? "'" . $args['default'] . "'" : "''";
1695
-								} elseif ( $args['type'] == 'select' && ! empty( $args['multiple'] ) ) {
1694
+									$default = isset($args['default']) ? "'" . $args['default'] . "'" : "''";
1695
+								} elseif ($args['type'] == 'select' && !empty($args['multiple'])) {
1696 1696
 									$type = 'array';
1697
-									if ( is_array( $args['default'] ) ) {
1698
-										$default = isset( $args['default'] ) ? "['" . implode( "','", $args['default'] ) . "']" : "[]";
1697
+									if (is_array($args['default'])) {
1698
+										$default = isset($args['default']) ? "['" . implode("','", $args['default']) . "']" : "[]";
1699 1699
 									} else {
1700
-										$default = isset( $args['default'] ) ? "'" . $args['default'] . "'" : "''";
1700
+										$default = isset($args['default']) ? "'" . $args['default'] . "'" : "''";
1701 1701
 									}
1702
-								} elseif ( $args['type'] == 'multiselect' ) {
1702
+								} elseif ($args['type'] == 'multiselect') {
1703 1703
 									$type    = 'array';
1704
-									$default = isset( $args['default'] ) ? "'" . $args['default'] . "'" : "''";
1704
+									$default = isset($args['default']) ? "'" . $args['default'] . "'" : "''";
1705 1705
 								} else {
1706 1706
 									$type    = 'string';
1707
-									$default = isset( $args['default'] ) ? "'" . $args['default'] . "'" : "''";
1707
+									$default = isset($args['default']) ? "'" . $args['default'] . "'" : "''";
1708 1708
 								}
1709 1709
 								echo $key . " : {";
1710 1710
 								echo "type : '$type',";
@@ -1735,12 +1735,12 @@  discard block
 block discarded – undo
1735 1735
 									is_fetching = true;
1736 1736
 									var data = {
1737 1737
 										'action': 'super_duper_output_shortcode',
1738
-										'shortcode': '<?php echo $this->options['base_id'];?>',
1738
+										'shortcode': '<?php echo $this->options['base_id']; ?>',
1739 1739
 										'attributes': props.attributes,
1740
-										'post_id': <?php global $post; if ( isset( $post->ID ) ) {
1740
+										'post_id': <?php global $post; if (isset($post->ID)) {
1741 1741
 										echo $post->ID;
1742 1742
 									}?>,
1743
-										'_ajax_nonce': '<?php echo wp_create_nonce( 'super_duper_output_shortcode' );?>'
1743
+										'_ajax_nonce': '<?php echo wp_create_nonce('super_duper_output_shortcode'); ?>'
1744 1744
 									};
1745 1745
 
1746 1746
 									jQuery.post(ajaxurl, data, function (response) {
@@ -1749,7 +1749,7 @@  discard block
 block discarded – undo
1749 1749
 
1750 1750
 										// if the content is empty then we place some placeholder text
1751 1751
 										if (env == '') {
1752
-											env = "<div style='background:#0185ba33;padding: 10px;border: 4px #ccc dashed;'>" + "<?php _e( 'Placeholder for: ' );?>" + props.name + "</div>";
1752
+											env = "<div style='background:#0185ba33;padding: 10px;border: 4px #ccc dashed;'>" + "<?php _e('Placeholder for: '); ?>" + props.name + "</div>";
1753 1753
 										}
1754 1754
 
1755 1755
 										props.setAttributes({content: env});
@@ -1768,7 +1768,7 @@  discard block
 block discarded – undo
1768 1768
 
1769 1769
 								el(wp.blockEditor.BlockControls, {key: 'controls'},
1770 1770
 
1771
-									<?php if($show_alignment){?>
1771
+									<?php if ($show_alignment) {?>
1772 1772
 									el(
1773 1773
 										wp.blockEditor.AlignmentToolbar,
1774 1774
 										{
@@ -1786,9 +1786,9 @@  discard block
 block discarded – undo
1786 1786
 
1787 1787
 									<?php
1788 1788
 
1789
-									if(! empty( $this->arguments )){
1789
+									if (!empty($this->arguments)) {
1790 1790
 
1791
-									if ( $show_advanced ) {
1791
+									if ($show_advanced) {
1792 1792
 									?>
1793 1793
 									el(
1794 1794
 										wp.components.ToggleControl,
@@ -1810,17 +1810,17 @@  discard block
 block discarded – undo
1810 1810
 									$has_sections = $arguments == $this->arguments ? false : true;
1811 1811
 
1812 1812
 
1813
-									if($has_sections){
1813
+									if ($has_sections) {
1814 1814
 									$panel_count = 0;
1815
-									foreach($arguments as $key => $args){
1815
+									foreach ($arguments as $key => $args) {
1816 1816
 									?>
1817 1817
 									el(wp.components.PanelBody, {
1818 1818
 											title: '<?php esc_attr_e($key); ?>',
1819
-											initialOpen: <?php if($panel_count){echo "false";}else{echo "true";}?>
1819
+											initialOpen: <?php if ($panel_count) {echo "false"; } else {echo "true"; }?>
1820 1820
 										},
1821 1821
 										<?php
1822 1822
 
1823
-										foreach($args as $k => $a){
1823
+										foreach ($args as $k => $a) {
1824 1824
 											$this->build_block_arguments($k, $a);
1825 1825
 										}
1826 1826
 										?>
@@ -1829,8 +1829,8 @@  discard block
 block discarded – undo
1829 1829
 									$panel_count++;
1830 1830
 
1831 1831
 									}
1832
-									}else{
1833
-										foreach($this->arguments as $key => $args){
1832
+									} else {
1833
+										foreach ($this->arguments as $key => $args) {
1834 1834
 											$this->build_block_arguments($key, $args);
1835 1835
 										}
1836 1836
 									}
@@ -1844,9 +1844,9 @@  discard block
 block discarded – undo
1844 1844
 
1845 1845
 								<?php
1846 1846
 								// If the user sets block-output array then build it
1847
-								if ( ! empty( $this->options['block-output'] ) ) {
1848
-								$this->block_element( $this->options['block-output'] );
1849
-							}else{
1847
+								if (!empty($this->options['block-output'])) {
1848
+								$this->block_element($this->options['block-output']);
1849
+							} else {
1850 1850
 								// if no block-output is set then we try and get the shortcode html output via ajax.
1851 1851
 								?>
1852 1852
 								el('div', {
@@ -1870,19 +1870,19 @@  discard block
 block discarded – undo
1870 1870
 							var align = '';
1871 1871
 
1872 1872
 							// build the shortcode.
1873
-							var content = "[<?php echo $this->options['base_id'];?>";
1873
+							var content = "[<?php echo $this->options['base_id']; ?>";
1874 1874
 							$html = '';
1875 1875
 							<?php
1876 1876
 
1877
-							if(! empty( $this->arguments )){
1877
+							if (!empty($this->arguments)) {
1878 1878
 
1879
-							foreach($this->arguments as $key => $args){
1879
+							foreach ($this->arguments as $key => $args) {
1880 1880
 							?>
1881
-							if (attr.hasOwnProperty("<?php echo esc_attr( $key );?>")) {
1882
-								if('<?php echo esc_attr( $key );?>' == 'html'){
1883
-									$html = attr.<?php echo esc_attr( $key );?>;
1881
+							if (attr.hasOwnProperty("<?php echo esc_attr($key); ?>")) {
1882
+								if('<?php echo esc_attr($key); ?>' == 'html'){
1883
+									$html = attr.<?php echo esc_attr($key); ?>;
1884 1884
 								}else{
1885
-									content += " <?php echo esc_attr( $key );?>='" + attr.<?php echo esc_attr( $key );?>+ "' ";
1885
+									content += " <?php echo esc_attr($key); ?>='" + attr.<?php echo esc_attr($key); ?>+ "' ";
1886 1886
 								}
1887 1887
 							}
1888 1888
 							<?php
@@ -1894,7 +1894,7 @@  discard block
 block discarded – undo
1894 1894
 							
1895 1895
 							// if has html element
1896 1896
 							if($html){
1897
-								content += $html + "[/<?php echo $this->options['base_id'];?>]";
1897
+								content += $html + "[/<?php echo $this->options['base_id']; ?>]";
1898 1898
 							}
1899 1899
 
1900 1900
 
@@ -1912,11 +1912,11 @@  discard block
 block discarded – undo
1912 1912
 							}
1913 1913
 
1914 1914
 							<?php
1915
-							if(isset( $this->options['block-wrap'] ) && $this->options['block-wrap'] == ''){
1915
+							if (isset($this->options['block-wrap']) && $this->options['block-wrap'] == '') {
1916 1916
 							?>
1917 1917
 							return content;
1918 1918
 							<?php
1919
-							}else{
1919
+							} else {
1920 1920
 							?>
1921 1921
 							var block_wrap = 'div';
1922 1922
 							if (attr.hasOwnProperty("block_wrap")) {
@@ -1939,88 +1939,88 @@  discard block
 block discarded – undo
1939 1939
 			 * We only add the <script> tags for code highlighting, so we strip them from the output.
1940 1940
 			 */
1941 1941
 
1942
-			return str_replace( array(
1942
+			return str_replace(array(
1943 1943
 				'<script>',
1944 1944
 				'</script>'
1945
-			), '', $output );
1945
+			), '', $output);
1946 1946
 		}
1947 1947
 
1948
-		public function build_block_arguments($key,$args){
1949
-			$custom_attributes = ! empty( $args['custom_attributes'] ) ? $this->array_to_attributes( $args['custom_attributes'] ) : '';
1948
+		public function build_block_arguments($key, $args) {
1949
+			$custom_attributes = !empty($args['custom_attributes']) ? $this->array_to_attributes($args['custom_attributes']) : '';
1950 1950
 			$options = '';
1951 1951
 			$extra = '';
1952 1952
 			$require = '';
1953 1953
 
1954 1954
 			// `content` is a protected and special argument
1955
-			if($key == 'content'){return;}
1955
+			if ($key == 'content') {return; }
1956 1956
 
1957 1957
 			$onchange = "props.setAttributes({ $key: $key } )";
1958 1958
 			$value = "props.attributes.$key";
1959
-			$text_type = array( 'text', 'password', 'number', 'email', 'tel', 'url', 'color' );
1960
-			if ( in_array( $args['type'], $text_type ) ) {
1959
+			$text_type = array('text', 'password', 'number', 'email', 'tel', 'url', 'color');
1960
+			if (in_array($args['type'], $text_type)) {
1961 1961
 				$type = 'TextControl';
1962 1962
 				// Save numbers as numbers and not strings
1963
-				if ( $args['type'] == 'number' ) {
1963
+				if ($args['type'] == 'number') {
1964 1964
 					$onchange = "props.setAttributes({ $key: Number($key) } )";
1965 1965
 				}
1966 1966
 			}
1967 1967
 			//									elseif ( $args['type'] == 'color' ) { //@todo ColorPicker labels are not shown yet, we use html5 color input for now https://github.com/WordPress/gutenberg/issues/14378
1968 1968
 			//										$type = 'ColorPicker';
1969 1969
 			//									}
1970
-			elseif ( $args['type'] == 'checkbox' ) {
1970
+			elseif ($args['type'] == 'checkbox') {
1971 1971
 				$type = 'CheckboxControl';
1972 1972
 				$extra .= "checked: props.attributes.$key,";
1973 1973
 				$onchange = "props.setAttributes({ $key: ! props.attributes.$key } )";
1974
-			}elseif ( $args['type'] == 'textarea' ) {
1974
+			}elseif ($args['type'] == 'textarea') {
1975 1975
 				$type = 'TextareaControl';
1976
-			} elseif ( $args['type'] == 'select' || $args['type'] == 'multiselect' ) {
1976
+			} elseif ($args['type'] == 'select' || $args['type'] == 'multiselect') {
1977 1977
 				$type = 'SelectControl';
1978
-				if ( ! empty( $args['options'] ) ) {
1978
+				if (!empty($args['options'])) {
1979 1979
 					$options .= "options  : [";
1980
-					foreach ( $args['options'] as $option_val => $option_label ) {
1981
-						$options .= "{ value : '" . esc_attr( $option_val ) . "',     label : '" . esc_attr( $option_label ) . "'     },";
1980
+					foreach ($args['options'] as $option_val => $option_label) {
1981
+						$options .= "{ value : '" . esc_attr($option_val) . "',     label : '" . esc_attr($option_label) . "'     },";
1982 1982
 					}
1983 1983
 					$options .= "],";
1984 1984
 				}
1985
-				if ( isset( $args['multiple'] ) && $args['multiple'] ) { //@todo multiselect does not work at the moment: https://github.com/WordPress/gutenberg/issues/5550
1985
+				if (isset($args['multiple']) && $args['multiple']) { //@todo multiselect does not work at the moment: https://github.com/WordPress/gutenberg/issues/5550
1986 1986
 					$extra .= ' multiple: true, ';
1987 1987
 					//$onchange = "props.setAttributes({ $key: ['edit'] } )";
1988 1988
 					//$value = "['edit', 'delete']";
1989 1989
 				}
1990
-			} elseif ( $args['type'] == 'alignment' ) {
1990
+			} elseif ($args['type'] == 'alignment') {
1991 1991
 				$type = 'AlignmentToolbar'; // @todo this does not seem to work but cant find a example
1992 1992
 			} else {
1993
-				return;// if we have not implemented the control then don't break the JS.
1993
+				return; // if we have not implemented the control then don't break the JS.
1994 1994
 			}
1995 1995
 
1996 1996
 			// add show only if advanced
1997
-			if ( ! empty( $args['advanced'] ) ) {
1997
+			if (!empty($args['advanced'])) {
1998 1998
 				echo "props.attributes.show_advanced && ";
1999 1999
 			}
2000 2000
 			// add setting require if defined
2001
-			if ( ! empty( $args['element_require'] ) ) {
2002
-				echo $this->block_props_replace( $args['element_require'], true ) . " && ";
2001
+			if (!empty($args['element_require'])) {
2002
+				echo $this->block_props_replace($args['element_require'], true) . " && ";
2003 2003
 			}
2004 2004
 			?>
2005 2005
 			el(
2006
-			wp.components.<?php echo esc_attr( $type );?>,
2006
+			wp.components.<?php echo esc_attr($type); ?>,
2007 2007
 			{
2008
-			label: '<?php echo esc_attr( $args['title'] );?>',
2009
-			help: '<?php if ( isset( $args['desc'] ) ) {
2010
-				echo esc_attr( $args['desc'] );
2008
+			label: '<?php echo esc_attr($args['title']); ?>',
2009
+			help: '<?php if (isset($args['desc'])) {
2010
+				echo esc_attr($args['desc']);
2011 2011
 			}?>',
2012
-			value: <?php echo $value;?>,
2013
-			<?php if ( $type == 'TextControl' && $args['type'] != 'text' ) {
2014
-				echo "type: '" . esc_attr( $args['type'] ) . "',";
2012
+			value: <?php echo $value; ?>,
2013
+			<?php if ($type == 'TextControl' && $args['type'] != 'text') {
2014
+				echo "type: '" . esc_attr($args['type']) . "',";
2015 2015
 			}?>
2016
-			<?php if ( ! empty( $args['placeholder'] ) ) {
2017
-				echo "placeholder: '" . esc_attr( $args['placeholder'] ) . "',";
2016
+			<?php if (!empty($args['placeholder'])) {
2017
+				echo "placeholder: '" . esc_attr($args['placeholder']) . "',";
2018 2018
 			}?>
2019
-			<?php echo $options;?>
2020
-			<?php echo $extra;?>
2021
-			<?php echo $custom_attributes;?>
2022
-			onChange: function ( <?php echo $key;?> ) {
2023
-			<?php echo $onchange;?>
2019
+			<?php echo $options; ?>
2020
+			<?php echo $extra; ?>
2021
+			<?php echo $custom_attributes; ?>
2022
+			onChange: function ( <?php echo $key; ?> ) {
2023
+			<?php echo $onchange; ?>
2024 2024
 			}
2025 2025
 			}
2026 2026
 			),
@@ -2036,16 +2036,16 @@  discard block
 block discarded – undo
2036 2036
 		 *
2037 2037
 		 * @return string
2038 2038
 		 */
2039
-		public function array_to_attributes( $custom_attributes, $html = false ) {
2039
+		public function array_to_attributes($custom_attributes, $html = false) {
2040 2040
 			$attributes = '';
2041
-			if ( ! empty( $custom_attributes ) ) {
2041
+			if (!empty($custom_attributes)) {
2042 2042
 
2043
-				if ( $html ) {
2044
-					foreach ( $custom_attributes as $key => $val ) {
2043
+				if ($html) {
2044
+					foreach ($custom_attributes as $key => $val) {
2045 2045
 						$attributes .= " $key='$val' ";
2046 2046
 					}
2047 2047
 				} else {
2048
-					foreach ( $custom_attributes as $key => $val ) {
2048
+					foreach ($custom_attributes as $key => $val) {
2049 2049
 						$attributes .= "'$key': '$val',";
2050 2050
 					}
2051 2051
 				}
@@ -2061,86 +2061,86 @@  discard block
 block discarded – undo
2061 2061
 		 *
2062 2062
 		 * @param $args
2063 2063
 		 */
2064
-		public function block_element( $args ) {
2064
+		public function block_element($args) {
2065 2065
 
2066 2066
 
2067
-			if ( ! empty( $args ) ) {
2068
-				foreach ( $args as $element => $new_args ) {
2067
+			if (!empty($args)) {
2068
+				foreach ($args as $element => $new_args) {
2069 2069
 
2070
-					if ( is_array( $new_args ) ) { // its an element
2070
+					if (is_array($new_args)) { // its an element
2071 2071
 
2072 2072
 
2073
-						if ( isset( $new_args['element'] ) ) {
2073
+						if (isset($new_args['element'])) {
2074 2074
 
2075
-							if ( isset( $new_args['element_require'] ) ) {
2076
-								echo str_replace( array(
2075
+							if (isset($new_args['element_require'])) {
2076
+								echo str_replace(array(
2077 2077
 										"'+",
2078 2078
 										"+'"
2079
-									), '', $this->block_props_replace( $new_args['element_require'] ) ) . " &&  ";
2080
-								unset( $new_args['element_require'] );
2079
+									), '', $this->block_props_replace($new_args['element_require'])) . " &&  ";
2080
+								unset($new_args['element_require']);
2081 2081
 							}
2082 2082
 
2083 2083
 							echo "\n el( '" . $new_args['element'] . "', {";
2084 2084
 
2085 2085
 							// get the attributes
2086
-							foreach ( $new_args as $new_key => $new_value ) {
2086
+							foreach ($new_args as $new_key => $new_value) {
2087 2087
 
2088 2088
 
2089
-								if ( $new_key == 'element' || $new_key == 'content' || $new_key == 'element_require' || $new_key == 'element_repeat' || is_array( $new_value ) ) {
2089
+								if ($new_key == 'element' || $new_key == 'content' || $new_key == 'element_require' || $new_key == 'element_repeat' || is_array($new_value)) {
2090 2090
 									// do nothing
2091 2091
 								} else {
2092
-									echo $this->block_element( array( $new_key => $new_value ) );
2092
+									echo $this->block_element(array($new_key => $new_value));
2093 2093
 								}
2094 2094
 							}
2095 2095
 
2096
-							echo "},";// end attributes
2096
+							echo "},"; // end attributes
2097 2097
 
2098 2098
 							// get the content
2099 2099
 							$first_item = 0;
2100
-							foreach ( $new_args as $new_key => $new_value ) {
2101
-								if ( $new_key === 'content' || is_array( $new_value ) ) {
2100
+							foreach ($new_args as $new_key => $new_value) {
2101
+								if ($new_key === 'content' || is_array($new_value)) {
2102 2102
 
2103
-									if ( $new_key === 'content' ) {
2104
-										echo "'" . $this->block_props_replace( wp_slash( $new_value ) ) . "'";
2103
+									if ($new_key === 'content') {
2104
+										echo "'" . $this->block_props_replace(wp_slash($new_value)) . "'";
2105 2105
 									}
2106 2106
 
2107
-									if ( is_array( $new_value ) ) {
2107
+									if (is_array($new_value)) {
2108 2108
 
2109
-										if ( isset( $new_value['element_require'] ) ) {
2110
-											echo str_replace( array(
2109
+										if (isset($new_value['element_require'])) {
2110
+											echo str_replace(array(
2111 2111
 													"'+",
2112 2112
 													"+'"
2113
-												), '', $this->block_props_replace( $new_value['element_require'] ) ) . " &&  ";
2114
-											unset( $new_value['element_require'] );
2113
+												), '', $this->block_props_replace($new_value['element_require'])) . " &&  ";
2114
+											unset($new_value['element_require']);
2115 2115
 										}
2116 2116
 
2117
-										if ( isset( $new_value['element_repeat'] ) ) {
2117
+										if (isset($new_value['element_repeat'])) {
2118 2118
 											$x = 1;
2119
-											while ( $x <= absint( $new_value['element_repeat'] ) ) {
2120
-												$this->block_element( array( '' => $new_value ) );
2121
-												$x ++;
2119
+											while ($x <= absint($new_value['element_repeat'])) {
2120
+												$this->block_element(array('' => $new_value));
2121
+												$x++;
2122 2122
 											}
2123 2123
 										} else {
2124
-											$this->block_element( array( '' => $new_value ) );
2124
+											$this->block_element(array('' => $new_value));
2125 2125
 										}
2126 2126
 									}
2127
-									$first_item ++;
2127
+									$first_item++;
2128 2128
 								}
2129 2129
 							}
2130 2130
 
2131
-							echo ")";// end content
2131
+							echo ")"; // end content
2132 2132
 
2133 2133
 							echo ", \n";
2134 2134
 
2135 2135
 						}
2136 2136
 					} else {
2137 2137
 
2138
-						if ( substr( $element, 0, 3 ) === "if_" ) {
2139
-							echo str_replace( "if_", "", $element ) . ": " . $this->block_props_replace( $new_args, true ) . ",";
2140
-						} elseif ( $element == 'style' ) {
2141
-							echo $element . ": " . $this->block_props_replace( $new_args ) . ",";
2138
+						if (substr($element, 0, 3) === "if_") {
2139
+							echo str_replace("if_", "", $element) . ": " . $this->block_props_replace($new_args, true) . ",";
2140
+						} elseif ($element == 'style') {
2141
+							echo $element . ": " . $this->block_props_replace($new_args) . ",";
2142 2142
 						} else {
2143
-							echo $element . ": '" . $this->block_props_replace( $new_args ) . "',";
2143
+							echo $element . ": '" . $this->block_props_replace($new_args) . "',";
2144 2144
 						}
2145 2145
 
2146 2146
 					}
@@ -2155,12 +2155,12 @@  discard block
 block discarded – undo
2155 2155
 		 *
2156 2156
 		 * @return mixed
2157 2157
 		 */
2158
-		public function block_props_replace( $string, $no_wrap = false ) {
2158
+		public function block_props_replace($string, $no_wrap = false) {
2159 2159
 
2160
-			if ( $no_wrap ) {
2161
-				$string = str_replace( array( "[%", "%]" ), array( "props.attributes.", "" ), $string );
2160
+			if ($no_wrap) {
2161
+				$string = str_replace(array("[%", "%]"), array("props.attributes.", ""), $string);
2162 2162
 			} else {
2163
-				$string = str_replace( array( "[%", "%]" ), array( "'+props.attributes.", "+'" ), $string );
2163
+				$string = str_replace(array("[%", "%]"), array("'+props.attributes.", "+'"), $string);
2164 2164
 			}
2165 2165
 
2166 2166
 			return $string;
@@ -2172,48 +2172,48 @@  discard block
 block discarded – undo
2172 2172
 		 * @param array $args
2173 2173
 		 * @param array $instance
2174 2174
 		 */
2175
-		public function widget( $args, $instance ) {
2175
+		public function widget($args, $instance) {
2176 2176
 
2177 2177
 			// get the filtered values
2178
-			$argument_values = $this->argument_values( $instance );
2179
-			$argument_values = $this->string_to_bool( $argument_values );
2180
-			$output          = $this->output( $argument_values, $args );
2178
+			$argument_values = $this->argument_values($instance);
2179
+			$argument_values = $this->string_to_bool($argument_values);
2180
+			$output          = $this->output($argument_values, $args);
2181 2181
 
2182 2182
 			$no_wrap = false;
2183
-			if( isset( $argument_values['no_wrap'] ) && $argument_values['no_wrap'] ){ $no_wrap = true; }
2183
+			if (isset($argument_values['no_wrap']) && $argument_values['no_wrap']) { $no_wrap = true; }
2184 2184
 
2185 2185
 			ob_start();
2186
-			if ( $output && !$no_wrap) {
2186
+			if ($output && !$no_wrap) {
2187 2187
 				// Before widget
2188 2188
 				$before_widget = $args['before_widget'];
2189
-				$before_widget = apply_filters( 'wp_super_duper_before_widget', $before_widget, $args, $instance, $this );
2190
-				$before_widget = apply_filters( 'wp_super_duper_before_widget_' . $this->base_id, $before_widget, $args, $instance, $this );
2189
+				$before_widget = apply_filters('wp_super_duper_before_widget', $before_widget, $args, $instance, $this);
2190
+				$before_widget = apply_filters('wp_super_duper_before_widget_' . $this->base_id, $before_widget, $args, $instance, $this);
2191 2191
 
2192 2192
 				// After widget
2193 2193
 				$after_widget = $args['after_widget'];
2194
-				$after_widget = apply_filters( 'wp_super_duper_after_widget', $after_widget, $args, $instance, $this );
2195
-				$after_widget = apply_filters( 'wp_super_duper_after_widget_' . $this->base_id, $after_widget, $args, $instance, $this );
2194
+				$after_widget = apply_filters('wp_super_duper_after_widget', $after_widget, $args, $instance, $this);
2195
+				$after_widget = apply_filters('wp_super_duper_after_widget_' . $this->base_id, $after_widget, $args, $instance, $this);
2196 2196
 
2197 2197
 				echo $before_widget;
2198 2198
 				// elementor strips the widget wrapping div so we check for and add it back if needed
2199
-				if ( $this->is_elementor_widget_output() ) {
2200
-					echo ! empty( $this->options['widget_ops']['classname'] ) ? "<span class='" . esc_attr( $this->options['widget_ops']['classname'] ) . "'>" : '';
2199
+				if ($this->is_elementor_widget_output()) {
2200
+					echo !empty($this->options['widget_ops']['classname']) ? "<span class='" . esc_attr($this->options['widget_ops']['classname']) . "'>" : '';
2201 2201
 				}
2202
-				echo $this->output_title( $args, $instance );
2202
+				echo $this->output_title($args, $instance);
2203 2203
 				echo $output;
2204
-				if ( $this->is_elementor_widget_output() ) {
2205
-					echo ! empty( $this->options['widget_ops']['classname'] ) ? "</span>" : '';
2204
+				if ($this->is_elementor_widget_output()) {
2205
+					echo !empty($this->options['widget_ops']['classname']) ? "</span>" : '';
2206 2206
 				}
2207 2207
 				echo $after_widget;
2208
-			} elseif ( $this->is_preview() && $output == '' ) {// if preview show a placeholder if empty
2209
-				$output = $this->preview_placeholder_text( "{{" . $this->base_id . "}}" );
2208
+			} elseif ($this->is_preview() && $output == '') {// if preview show a placeholder if empty
2209
+				$output = $this->preview_placeholder_text("{{" . $this->base_id . "}}");
2210 2210
 				echo $output;
2211
-			} elseif($output && $no_wrap){
2211
+			} elseif ($output && $no_wrap) {
2212 2212
 				echo $output;
2213 2213
 			}
2214 2214
 			$output = ob_get_clean();
2215 2215
 
2216
-			$output = apply_filters( 'wp_super_duper_widget_output', $output, $instance, $args, $this );
2216
+			$output = apply_filters('wp_super_duper_widget_output', $output, $instance, $args, $this);
2217 2217
 
2218 2218
 			echo $output;
2219 2219
 		}
@@ -2226,7 +2226,7 @@  discard block
 block discarded – undo
2226 2226
 		 */
2227 2227
 		public function is_elementor_widget_output() {
2228 2228
 			$result = false;
2229
-			if ( defined( 'ELEMENTOR_VERSION' ) && isset( $this->number ) && $this->number == 'REPLACE_TO_ID' ) {
2229
+			if (defined('ELEMENTOR_VERSION') && isset($this->number) && $this->number == 'REPLACE_TO_ID') {
2230 2230
 				$result = true;
2231 2231
 			}
2232 2232
 
@@ -2241,7 +2241,7 @@  discard block
 block discarded – undo
2241 2241
 		 */
2242 2242
 		public function is_elementor_preview() {
2243 2243
 			$result = false;
2244
-			if ( isset( $_REQUEST['elementor-preview'] ) || ( is_admin() && isset( $_REQUEST['action'] ) && $_REQUEST['action'] == 'elementor' ) || ( isset( $_REQUEST['action'] ) && $_REQUEST['action'] == 'elementor_ajax' ) ) {
2244
+			if (isset($_REQUEST['elementor-preview']) || (is_admin() && isset($_REQUEST['action']) && $_REQUEST['action'] == 'elementor') || (isset($_REQUEST['action']) && $_REQUEST['action'] == 'elementor_ajax')) {
2245 2245
 				$result = true;
2246 2246
 			}
2247 2247
 
@@ -2256,7 +2256,7 @@  discard block
 block discarded – undo
2256 2256
 		 */
2257 2257
 		public function is_divi_preview() {
2258 2258
 			$result = false;
2259
-			if ( isset( $_REQUEST['et_fb'] ) || isset( $_REQUEST['et_pb_preview'] ) || ( is_admin() && isset( $_REQUEST['action'] ) && $_REQUEST['action'] == 'elementor' ) ) {
2259
+			if (isset($_REQUEST['et_fb']) || isset($_REQUEST['et_pb_preview']) || (is_admin() && isset($_REQUEST['action']) && $_REQUEST['action'] == 'elementor')) {
2260 2260
 				$result = true;
2261 2261
 			}
2262 2262
 
@@ -2271,7 +2271,7 @@  discard block
 block discarded – undo
2271 2271
 		 */
2272 2272
 		public function is_beaver_preview() {
2273 2273
 			$result = false;
2274
-			if ( isset( $_REQUEST['fl_builder'] ) ) {
2274
+			if (isset($_REQUEST['fl_builder'])) {
2275 2275
 				$result = true;
2276 2276
 			}
2277 2277
 
@@ -2286,7 +2286,7 @@  discard block
 block discarded – undo
2286 2286
 		 */
2287 2287
 		public function is_siteorigin_preview() {
2288 2288
 			$result = false;
2289
-			if ( ! empty( $_REQUEST['siteorigin_panels_live_editor'] ) ) {
2289
+			if (!empty($_REQUEST['siteorigin_panels_live_editor'])) {
2290 2290
 				$result = true;
2291 2291
 			}
2292 2292
 
@@ -2301,7 +2301,7 @@  discard block
 block discarded – undo
2301 2301
 		 */
2302 2302
 		public function is_cornerstone_preview() {
2303 2303
 			$result = false;
2304
-			if ( ! empty( $_REQUEST['cornerstone_preview'] ) || basename( $_SERVER['REQUEST_URI'] ) == 'cornerstone-endpoint' ) {
2304
+			if (!empty($_REQUEST['cornerstone_preview']) || basename($_SERVER['REQUEST_URI']) == 'cornerstone-endpoint') {
2305 2305
 				$result = true;
2306 2306
 			}
2307 2307
 
@@ -2316,7 +2316,7 @@  discard block
 block discarded – undo
2316 2316
 		 */
2317 2317
 		public function is_fusion_preview() {
2318 2318
 			$result = false;
2319
-			if ( ! empty( $_REQUEST['fb-edit'] ) || ! empty( $_REQUEST['fusion_load_nonce'] ) ) {
2319
+			if (!empty($_REQUEST['fb-edit']) || !empty($_REQUEST['fusion_load_nonce'])) {
2320 2320
 				$result = true;
2321 2321
 			}
2322 2322
 
@@ -2331,17 +2331,17 @@  discard block
 block discarded – undo
2331 2331
 		 */
2332 2332
 		public function is_preview() {
2333 2333
 			$preview = false;
2334
-			if ( $this->is_divi_preview() ) {
2334
+			if ($this->is_divi_preview()) {
2335 2335
 				$preview = true;
2336
-			} elseif ( $this->is_elementor_preview() ) {
2336
+			} elseif ($this->is_elementor_preview()) {
2337 2337
 				$preview = true;
2338
-			} elseif ( $this->is_beaver_preview() ) {
2338
+			} elseif ($this->is_beaver_preview()) {
2339 2339
 				$preview = true;
2340
-			} elseif ( $this->is_siteorigin_preview() ) {
2340
+			} elseif ($this->is_siteorigin_preview()) {
2341 2341
 				$preview = true;
2342
-			} elseif ( $this->is_cornerstone_preview() ) {
2342
+			} elseif ($this->is_cornerstone_preview()) {
2343 2343
 				$preview = true;
2344
-			} elseif ( $this->is_fusion_preview() ) {
2344
+			} elseif ($this->is_fusion_preview()) {
2345 2345
 				$preview = true;
2346 2346
 			}
2347 2347
 
@@ -2356,11 +2356,11 @@  discard block
 block discarded – undo
2356 2356
 		 *
2357 2357
 		 * @return string
2358 2358
 		 */
2359
-		public function output_title( $args, $instance = array() ) {
2359
+		public function output_title($args, $instance = array()) {
2360 2360
 			$output = '';
2361
-			if ( ! empty( $instance['title'] ) ) {
2361
+			if (!empty($instance['title'])) {
2362 2362
 				/** This filter is documented in wp-includes/widgets/class-wp-widget-pages.php */
2363
-				$title  = apply_filters( 'widget_title', $instance['title'], $instance, $this->id_base );
2363
+				$title  = apply_filters('widget_title', $instance['title'], $instance, $this->id_base);
2364 2364
 				$output = $args['before_title'] . $title . $args['after_title'];
2365 2365
 			}
2366 2366
 
@@ -2372,7 +2372,7 @@  discard block
 block discarded – undo
2372 2372
 		 *
2373 2373
 		 * @param array $instance The widget options.
2374 2374
 		 */
2375
-		public function form( $instance ) {
2375
+		public function form($instance) {
2376 2376
 
2377 2377
 			// set widget instance
2378 2378
 			$this->instance = $instance;
@@ -2380,10 +2380,10 @@  discard block
 block discarded – undo
2380 2380
 			// set it as a SD widget
2381 2381
 			echo $this->widget_advanced_toggle();
2382 2382
 
2383
-			echo "<p>" . esc_attr( $this->options['widget_ops']['description'] ) . "</p>";
2383
+			echo "<p>" . esc_attr($this->options['widget_ops']['description']) . "</p>";
2384 2384
 			$arguments_raw = $this->get_arguments();
2385 2385
 
2386
-			if ( is_array( $arguments_raw ) ) {
2386
+			if (is_array($arguments_raw)) {
2387 2387
 
2388 2388
 				$arguments = $this->group_arguments($arguments_raw);
2389 2389
 
@@ -2391,9 +2391,9 @@  discard block
 block discarded – undo
2391 2391
 				$has_sections = $arguments == $arguments_raw ? false : true;
2392 2392
 
2393 2393
 
2394
-				if($has_sections){
2394
+				if ($has_sections) {
2395 2395
 					$panel_count = 0;
2396
-					foreach($arguments as $key => $args){
2396
+					foreach ($arguments as $key => $args) {
2397 2397
 
2398 2398
 						?>
2399 2399
 						<script>
@@ -2403,10 +2403,10 @@  discard block
 block discarded – undo
2403 2403
 
2404 2404
 						$hide = $panel_count ? ' style="display:none;" ' : '';
2405 2405
 						$icon_class = $panel_count ? 'fas fa-chevron-up' : 'fas fa-chevron-down';
2406
-						echo "<button onclick='jQuery(this).find(\"i\").toggleClass(\"fas fa-chevron-up fas fa-chevron-down\");jQuery(this).next().slideToggle();' type='button' class='sd-toggle-group-button sd-input-group-toggle".sanitize_title_with_dashes($key)."'>".esc_attr($key)." <i style='float:right;' class='".$icon_class."'></i></button>";
2407
-						echo "<div class='sd-toggle-group sd-input-group-".sanitize_title_with_dashes($key)."' $hide>";
2406
+						echo "<button onclick='jQuery(this).find(\"i\").toggleClass(\"fas fa-chevron-up fas fa-chevron-down\");jQuery(this).next().slideToggle();' type='button' class='sd-toggle-group-button sd-input-group-toggle" . sanitize_title_with_dashes($key) . "'>" . esc_attr($key) . " <i style='float:right;' class='" . $icon_class . "'></i></button>";
2407
+						echo "<div class='sd-toggle-group sd-input-group-" . sanitize_title_with_dashes($key) . "' $hide>";
2408 2408
 
2409
-						foreach($args as $k => $a){
2409
+						foreach ($args as $k => $a) {
2410 2410
 							$this->widget_inputs($a, $instance);
2411 2411
 						}
2412 2412
 
@@ -2415,9 +2415,9 @@  discard block
 block discarded – undo
2415 2415
 						$panel_count++;
2416 2416
 
2417 2417
 					}
2418
-				}else{
2419
-					foreach ( $arguments as $key => $args ) {
2420
-						$this->widget_inputs( $args, $instance );
2418
+				} else {
2419
+					foreach ($arguments as $key => $args) {
2420
+						$this->widget_inputs($args, $instance);
2421 2421
 					}
2422 2422
 				}
2423 2423
 
@@ -2432,7 +2432,7 @@  discard block
 block discarded – undo
2432 2432
 		public function widget_advanced_toggle() {
2433 2433
 
2434 2434
 			$output = '';
2435
-			if ( $this->block_show_advanced() ) {
2435
+			if ($this->block_show_advanced()) {
2436 2436
 				$val = 1;
2437 2437
 			} else {
2438 2438
 				$val = 0;
@@ -2452,14 +2452,14 @@  discard block
 block discarded – undo
2452 2452
 		 *
2453 2453
 		 * @return string $output
2454 2454
 		 */
2455
-		public function convert_element_require( $input ) {
2455
+		public function convert_element_require($input) {
2456 2456
 
2457
-			$input = str_replace( "'", '"', $input );// we only want double quotes
2457
+			$input = str_replace("'", '"', $input); // we only want double quotes
2458 2458
 
2459
-			$output = esc_attr( str_replace( array( "[%", "%]" ), array(
2459
+			$output = esc_attr(str_replace(array("[%", "%]"), array(
2460 2460
 				"jQuery(form).find('[data-argument=\"",
2461 2461
 				"\"]').find('input,select,textarea').val()"
2462
-			), $input ) );
2462
+			), $input));
2463 2463
 
2464 2464
 			return $output;
2465 2465
 		}
@@ -2470,54 +2470,54 @@  discard block
 block discarded – undo
2470 2470
 		 * @param $args
2471 2471
 		 * @param $instance
2472 2472
 		 */
2473
-		public function widget_inputs( $args, $instance ) {
2473
+		public function widget_inputs($args, $instance) {
2474 2474
 
2475 2475
 			$class             = "";
2476 2476
 			$element_require   = "";
2477 2477
 			$custom_attributes = "";
2478 2478
 
2479 2479
 			// get value
2480
-			if ( isset( $instance[ $args['name'] ] ) ) {
2481
-				$value = $instance[ $args['name'] ];
2482
-			} elseif ( ! isset( $instance[ $args['name'] ] ) && ! empty( $args['default'] ) ) {
2483
-				$value = is_array( $args['default'] ) ? array_map( "esc_html", $args['default'] ) : esc_html( $args['default'] );
2480
+			if (isset($instance[$args['name']])) {
2481
+				$value = $instance[$args['name']];
2482
+			} elseif (!isset($instance[$args['name']]) && !empty($args['default'])) {
2483
+				$value = is_array($args['default']) ? array_map("esc_html", $args['default']) : esc_html($args['default']);
2484 2484
 			} else {
2485 2485
 				$value = '';
2486 2486
 			}
2487 2487
 
2488 2488
 			// get placeholder
2489
-			if ( ! empty( $args['placeholder'] ) ) {
2490
-				$placeholder = "placeholder='" . esc_html( $args['placeholder'] ) . "'";
2489
+			if (!empty($args['placeholder'])) {
2490
+				$placeholder = "placeholder='" . esc_html($args['placeholder']) . "'";
2491 2491
 			} else {
2492 2492
 				$placeholder = '';
2493 2493
 			}
2494 2494
 
2495 2495
 			// get if advanced
2496
-			if ( isset( $args['advanced'] ) && $args['advanced'] ) {
2496
+			if (isset($args['advanced']) && $args['advanced']) {
2497 2497
 				$class .= " sd-advanced-setting ";
2498 2498
 			}
2499 2499
 
2500 2500
 			// element_require
2501
-			if ( isset( $args['element_require'] ) && $args['element_require'] ) {
2501
+			if (isset($args['element_require']) && $args['element_require']) {
2502 2502
 				$element_require = $args['element_require'];
2503 2503
 			}
2504 2504
 
2505 2505
 			// custom_attributes
2506
-			if ( isset( $args['custom_attributes'] ) && $args['custom_attributes'] ) {
2507
-				$custom_attributes = $this->array_to_attributes( $args['custom_attributes'], true );
2506
+			if (isset($args['custom_attributes']) && $args['custom_attributes']) {
2507
+				$custom_attributes = $this->array_to_attributes($args['custom_attributes'], true);
2508 2508
 			}
2509 2509
 
2510 2510
 			// before wrapper
2511 2511
 			?>
2512
-			<p class="sd-argument <?php echo esc_attr( $class ); ?>"
2513
-			   data-argument='<?php echo esc_attr( $args['name'] ); ?>'
2514
-			   data-element_require='<?php if ( $element_require ) {
2515
-				   echo $this->convert_element_require( $element_require );
2512
+			<p class="sd-argument <?php echo esc_attr($class); ?>"
2513
+			   data-argument='<?php echo esc_attr($args['name']); ?>'
2514
+			   data-element_require='<?php if ($element_require) {
2515
+				   echo $this->convert_element_require($element_require);
2516 2516
 			   } ?>'
2517 2517
 			>
2518 2518
 				<?php
2519 2519
 
2520
-				switch ( $args['type'] ) {
2520
+				switch ($args['type']) {
2521 2521
 					//array('text','password','number','email','tel','url','color')
2522 2522
 					case "text":
2523 2523
 					case "password":
@@ -2528,46 +2528,46 @@  discard block
 block discarded – undo
2528 2528
 					case "color":
2529 2529
 						?>
2530 2530
 						<label
2531
-							for="<?php echo esc_attr( $this->get_field_id( $args['name'] ) ); ?>"><?php echo esc_attr( $args['title'] ); ?><?php echo $this->widget_field_desc( $args ); ?></label>
2531
+							for="<?php echo esc_attr($this->get_field_id($args['name'])); ?>"><?php echo esc_attr($args['title']); ?><?php echo $this->widget_field_desc($args); ?></label>
2532 2532
 						<input <?php echo $placeholder; ?> class="widefat"
2533 2533
 							<?php echo $custom_attributes; ?>
2534
-							                               id="<?php echo esc_attr( $this->get_field_id( $args['name'] ) ); ?>"
2535
-							                               name="<?php echo esc_attr( $this->get_field_name( $args['name'] ) ); ?>"
2536
-							                               type="<?php echo esc_attr( $args['type'] ); ?>"
2537
-							                               value="<?php echo esc_attr( $value ); ?>">
2534
+							                               id="<?php echo esc_attr($this->get_field_id($args['name'])); ?>"
2535
+							                               name="<?php echo esc_attr($this->get_field_name($args['name'])); ?>"
2536
+							                               type="<?php echo esc_attr($args['type']); ?>"
2537
+							                               value="<?php echo esc_attr($value); ?>">
2538 2538
 						<?php
2539 2539
 
2540 2540
 						break;
2541 2541
 					case "select":
2542
-						$multiple = isset( $args['multiple'] ) && $args['multiple'] ? true : false;
2543
-						if ( $multiple ) {
2544
-							if ( empty( $value ) ) {
2542
+						$multiple = isset($args['multiple']) && $args['multiple'] ? true : false;
2543
+						if ($multiple) {
2544
+							if (empty($value)) {
2545 2545
 								$value = array();
2546 2546
 							}
2547 2547
 						}
2548 2548
 						?>
2549 2549
 						<label
2550
-							for="<?php echo esc_attr( $this->get_field_id( $args['name'] ) ); ?>"><?php echo esc_attr( $args['title'] ); ?><?php echo $this->widget_field_desc( $args ); ?></label>
2550
+							for="<?php echo esc_attr($this->get_field_id($args['name'])); ?>"><?php echo esc_attr($args['title']); ?><?php echo $this->widget_field_desc($args); ?></label>
2551 2551
 						<select <?php echo $placeholder; ?> class="widefat"
2552 2552
 							<?php echo $custom_attributes; ?>
2553
-							                                id="<?php echo esc_attr( $this->get_field_id( $args['name'] ) ); ?>"
2554
-							                                name="<?php echo esc_attr( $this->get_field_name( $args['name'] ) );
2555
-							                                if ( $multiple ) {
2553
+							                                id="<?php echo esc_attr($this->get_field_id($args['name'])); ?>"
2554
+							                                name="<?php echo esc_attr($this->get_field_name($args['name']));
2555
+							                                if ($multiple) {
2556 2556
 								                                echo "[]";
2557 2557
 							                                } ?>"
2558
-							<?php if ( $multiple ) {
2558
+							<?php if ($multiple) {
2559 2559
 								echo "multiple";
2560 2560
 							} //@todo not implemented yet due to gutenberg not supporting it
2561 2561
 							?>
2562 2562
 						>
2563 2563
 							<?php
2564 2564
 
2565
-							if ( ! empty( $args['options'] ) ) {
2566
-								foreach ( $args['options'] as $val => $label ) {
2567
-									if ( $multiple ) {
2568
-										$selected = in_array( $val, $value ) ? 'selected="selected"' : '';
2565
+							if (!empty($args['options'])) {
2566
+								foreach ($args['options'] as $val => $label) {
2567
+									if ($multiple) {
2568
+										$selected = in_array($val, $value) ? 'selected="selected"' : '';
2569 2569
 									} else {
2570
-										$selected = selected( $value, $val, false );
2570
+										$selected = selected($value, $val, false);
2571 2571
 									}
2572 2572
 									echo "<option value='$val' " . $selected . ">$label</option>";
2573 2573
 								}
@@ -2579,32 +2579,32 @@  discard block
 block discarded – undo
2579 2579
 					case "checkbox":
2580 2580
 						?>
2581 2581
 						<input <?php echo $placeholder; ?>
2582
-							<?php checked( 1, $value, true ) ?>
2582
+							<?php checked(1, $value, true) ?>
2583 2583
 							<?php echo $custom_attributes; ?>
2584
-							class="widefat" id="<?php echo esc_attr( $this->get_field_id( $args['name'] ) ); ?>"
2585
-							name="<?php echo esc_attr( $this->get_field_name( $args['name'] ) ); ?>" type="checkbox"
2584
+							class="widefat" id="<?php echo esc_attr($this->get_field_id($args['name'])); ?>"
2585
+							name="<?php echo esc_attr($this->get_field_name($args['name'])); ?>" type="checkbox"
2586 2586
 							value="1">
2587 2587
 						<label
2588
-							for="<?php echo esc_attr( $this->get_field_id( $args['name'] ) ); ?>"><?php echo esc_attr( $args['title'] ); ?><?php echo $this->widget_field_desc( $args ); ?></label>
2588
+							for="<?php echo esc_attr($this->get_field_id($args['name'])); ?>"><?php echo esc_attr($args['title']); ?><?php echo $this->widget_field_desc($args); ?></label>
2589 2589
 						<?php
2590 2590
 						break;
2591 2591
 					case "textarea":
2592 2592
 						?>
2593 2593
 						<label
2594
-							for="<?php echo esc_attr( $this->get_field_id( $args['name'] ) ); ?>"><?php echo esc_attr( $args['title'] ); ?><?php echo $this->widget_field_desc( $args ); ?></label>
2594
+							for="<?php echo esc_attr($this->get_field_id($args['name'])); ?>"><?php echo esc_attr($args['title']); ?><?php echo $this->widget_field_desc($args); ?></label>
2595 2595
 						<textarea <?php echo $placeholder; ?> class="widefat"
2596 2596
 							<?php echo $custom_attributes; ?>
2597
-							                               id="<?php echo esc_attr( $this->get_field_id( $args['name'] ) ); ?>"
2598
-							                               name="<?php echo esc_attr( $this->get_field_name( $args['name'] ) ); ?>"
2599
-							                               ><?php echo esc_attr( $value ); ?></textarea>
2597
+							                               id="<?php echo esc_attr($this->get_field_id($args['name'])); ?>"
2598
+							                               name="<?php echo esc_attr($this->get_field_name($args['name'])); ?>"
2599
+							                               ><?php echo esc_attr($value); ?></textarea>
2600 2600
 						<?php
2601 2601
 
2602 2602
 						break;
2603 2603
 					case "hidden":
2604 2604
 						?>
2605
-						<input id="<?php echo esc_attr( $this->get_field_id( $args['name'] ) ); ?>"
2606
-						       name="<?php echo esc_attr( $this->get_field_name( $args['name'] ) ); ?>" type="hidden"
2607
-						       value="<?php echo esc_attr( $value ); ?>">
2605
+						<input id="<?php echo esc_attr($this->get_field_id($args['name'])); ?>"
2606
+						       name="<?php echo esc_attr($this->get_field_name($args['name'])); ?>" type="hidden"
2607
+						       value="<?php echo esc_attr($value); ?>">
2608 2608
 						<?php
2609 2609
 						break;
2610 2610
 					default:
@@ -2626,14 +2626,14 @@  discard block
 block discarded – undo
2626 2626
 		 * @return string
2627 2627
 		 * @todo, need to make its own tooltip script
2628 2628
 		 */
2629
-		public function widget_field_desc( $args ) {
2629
+		public function widget_field_desc($args) {
2630 2630
 
2631 2631
 			$description = '';
2632
-			if ( isset( $args['desc'] ) && $args['desc'] ) {
2633
-				if ( isset( $args['desc_tip'] ) && $args['desc_tip'] ) {
2634
-					$description = $this->desc_tip( $args['desc'] );
2632
+			if (isset($args['desc']) && $args['desc']) {
2633
+				if (isset($args['desc_tip']) && $args['desc_tip']) {
2634
+					$description = $this->desc_tip($args['desc']);
2635 2635
 				} else {
2636
-					$description = '<span class="description">' . wp_kses_post( $args['desc'] ) . '</span>';
2636
+					$description = '<span class="description">' . wp_kses_post($args['desc']) . '</span>';
2637 2637
 				}
2638 2638
 			}
2639 2639
 
@@ -2648,11 +2648,11 @@  discard block
 block discarded – undo
2648 2648
 		 *
2649 2649
 		 * @return string
2650 2650
 		 */
2651
-		function desc_tip( $tip, $allow_html = false ) {
2652
-			if ( $allow_html ) {
2653
-				$tip = $this->sanitize_tooltip( $tip );
2651
+		function desc_tip($tip, $allow_html = false) {
2652
+			if ($allow_html) {
2653
+				$tip = $this->sanitize_tooltip($tip);
2654 2654
 			} else {
2655
-				$tip = esc_attr( $tip );
2655
+				$tip = esc_attr($tip);
2656 2656
 			}
2657 2657
 
2658 2658
 			return '<span class="gd-help-tip dashicons dashicons-editor-help" title="' . $tip . '"></span>';
@@ -2665,8 +2665,8 @@  discard block
 block discarded – undo
2665 2665
 		 *
2666 2666
 		 * @return string
2667 2667
 		 */
2668
-		public function sanitize_tooltip( $var ) {
2669
-			return htmlspecialchars( wp_kses( html_entity_decode( $var ), array(
2668
+		public function sanitize_tooltip($var) {
2669
+			return htmlspecialchars(wp_kses(html_entity_decode($var), array(
2670 2670
 				'br'     => array(),
2671 2671
 				'em'     => array(),
2672 2672
 				'strong' => array(),
@@ -2676,7 +2676,7 @@  discard block
 block discarded – undo
2676 2676
 				'li'     => array(),
2677 2677
 				'ol'     => array(),
2678 2678
 				'p'      => array(),
2679
-			) ) );
2679
+			)));
2680 2680
 		}
2681 2681
 
2682 2682
 		/**
@@ -2688,23 +2688,23 @@  discard block
 block discarded – undo
2688 2688
 		 * @return array
2689 2689
 		 * @todo we should add some sanitation here.
2690 2690
 		 */
2691
-		public function update( $new_instance, $old_instance ) {
2691
+		public function update($new_instance, $old_instance) {
2692 2692
 
2693 2693
 			//save the widget
2694
-			$instance = array_merge( (array) $old_instance, (array) $new_instance );
2694
+			$instance = array_merge((array) $old_instance, (array) $new_instance);
2695 2695
 
2696 2696
 			// set widget instance
2697 2697
 			$this->instance = $instance;
2698 2698
 
2699
-			if ( empty( $this->arguments ) ) {
2699
+			if (empty($this->arguments)) {
2700 2700
 				$this->get_arguments();
2701 2701
 			}
2702 2702
 
2703 2703
 			// check for checkboxes
2704
-			if ( ! empty( $this->arguments ) ) {
2705
-				foreach ( $this->arguments as $argument ) {
2706
-					if ( isset( $argument['type'] ) && $argument['type'] == 'checkbox' && ! isset( $new_instance[ $argument['name'] ] ) ) {
2707
-						$instance[ $argument['name'] ] = '0';
2704
+			if (!empty($this->arguments)) {
2705
+				foreach ($this->arguments as $argument) {
2706
+					if (isset($argument['type']) && $argument['type'] == 'checkbox' && !isset($new_instance[$argument['name']])) {
2707
+						$instance[$argument['name']] = '0';
2708 2708
 					}
2709 2709
 				}
2710 2710
 			}
@@ -2722,7 +2722,7 @@  discard block
 block discarded – undo
2722 2722
 		 */
2723 2723
 		public function is_block_content_call() {
2724 2724
 			$result = false;
2725
-			if ( wp_doing_ajax() && isset( $_REQUEST['action'] ) && $_REQUEST['action'] == 'super_duper_output_shortcode' ) {
2725
+			if (wp_doing_ajax() && isset($_REQUEST['action']) && $_REQUEST['action'] == 'super_duper_output_shortcode') {
2726 2726
 				$result = true;
2727 2727
 			}
2728 2728
 
Please login to merge, or discard this patch.
includes/data/continents.php 1 patch
Spacing   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -8,11 +8,11 @@  discard block
 block discarded – undo
8 8
  * @version 1.0.14
9 9
  */
10 10
 
11
-defined( 'ABSPATH' ) || exit;
11
+defined('ABSPATH') || exit;
12 12
 
13 13
 return array(
14 14
 	'AF' => array(
15
-		'name'      => __( 'Africa', 'invoicing' ),
15
+		'name'      => __('Africa', 'invoicing'),
16 16
 		'countries' => array(
17 17
 			'AO',
18 18
 			'BF',
@@ -75,7 +75,7 @@  discard block
 block discarded – undo
75 75
 		),
76 76
 	),
77 77
 	'AN' => array(
78
-		'name'      => __( 'Antarctica', 'invoicing' ),
78
+		'name'      => __('Antarctica', 'invoicing'),
79 79
 		'countries' => array(
80 80
 			'AQ',
81 81
 			'BV',
@@ -85,7 +85,7 @@  discard block
 block discarded – undo
85 85
 		),
86 86
 	),
87 87
 	'AS' => array(
88
-		'name'      => __( 'Asia', 'invoicing' ),
88
+		'name'      => __('Asia', 'invoicing'),
89 89
 		'countries' => array(
90 90
 			'AE',
91 91
 			'AF',
@@ -143,7 +143,7 @@  discard block
 block discarded – undo
143 143
 		),
144 144
 	),
145 145
 	'EU' => array(
146
-		'name'      => __( 'Europe', 'invoicing' ),
146
+		'name'      => __('Europe', 'invoicing'),
147 147
 		'countries' => array(
148 148
 			'AD',
149 149
 			'AL',
@@ -201,7 +201,7 @@  discard block
 block discarded – undo
201 201
 		),
202 202
 	),
203 203
 	'NA' => array(
204
-		'name'      => __( 'North America', 'invoicing' ),
204
+		'name'      => __('North America', 'invoicing'),
205 205
 		'countries' => array(
206 206
 			'AG',
207 207
 			'AI',
@@ -247,7 +247,7 @@  discard block
 block discarded – undo
247 247
 		),
248 248
 	),
249 249
 	'OC' => array(
250
-		'name'      => __( 'Oceania', 'invoicing' ),
250
+		'name'      => __('Oceania', 'invoicing'),
251 251
 		'countries' => array(
252 252
 			'AS',
253 253
 			'AU',
@@ -278,7 +278,7 @@  discard block
 block discarded – undo
278 278
 		),
279 279
 	),
280 280
 	'SA' => array(
281
-		'name'      => __( 'South America', 'invoicing' ),
281
+		'name'      => __('South America', 'invoicing'),
282 282
 		'countries' => array(
283 283
 			'AR',
284 284
 			'BO',
Please login to merge, or discard this patch.
includes/data/states.php 1 patch
Spacing   +1405 added lines, -1405 removed lines patch added patch discarded remove patch
@@ -11,632 +11,632 @@  discard block
 block discarded – undo
11 11
  * @version 1.0.14
12 12
  */
13 13
 
14
-defined( 'ABSPATH' ) || exit;
14
+defined('ABSPATH') || exit;
15 15
 
16 16
 return array(
17 17
 	'AF' => array(),
18 18
 	'AO' => array( // Angola states.
19
-		'BGO' => __( 'Bengo', 'invoicing' ),
20
-		'BLU' => __( 'Benguela', 'invoicing' ),
21
-		'BIE' => __( 'Bié', 'invoicing' ),
22
-		'CAB' => __( 'Cabinda', 'invoicing' ),
23
-		'CNN' => __( 'Cunene', 'invoicing' ),
24
-		'HUA' => __( 'Huambo', 'invoicing' ),
25
-		'HUI' => __( 'Huíla', 'invoicing' ),
26
-		'CCU' => __( 'Kuando Kubango', 'invoicing' ),
27
-		'CNO' => __( 'Kwanza-Norte', 'invoicing' ),
28
-		'CUS' => __( 'Kwanza-Sul', 'invoicing' ),
29
-		'LUA' => __( 'Luanda', 'invoicing' ),
30
-		'LNO' => __( 'Lunda-Norte', 'invoicing' ),
31
-		'LSU' => __( 'Lunda-Sul', 'invoicing' ),
32
-		'MAL' => __( 'Malanje', 'invoicing' ),
33
-		'MOX' => __( 'Moxico', 'invoicing' ),
34
-		'NAM' => __( 'Namibe', 'invoicing' ),
35
-		'UIG' => __( 'Uíge', 'invoicing' ),
36
-		'ZAI' => __( 'Zaire', 'invoicing' ),
19
+		'BGO' => __('Bengo', 'invoicing'),
20
+		'BLU' => __('Benguela', 'invoicing'),
21
+		'BIE' => __('Bié', 'invoicing'),
22
+		'CAB' => __('Cabinda', 'invoicing'),
23
+		'CNN' => __('Cunene', 'invoicing'),
24
+		'HUA' => __('Huambo', 'invoicing'),
25
+		'HUI' => __('Huíla', 'invoicing'),
26
+		'CCU' => __('Kuando Kubango', 'invoicing'),
27
+		'CNO' => __('Kwanza-Norte', 'invoicing'),
28
+		'CUS' => __('Kwanza-Sul', 'invoicing'),
29
+		'LUA' => __('Luanda', 'invoicing'),
30
+		'LNO' => __('Lunda-Norte', 'invoicing'),
31
+		'LSU' => __('Lunda-Sul', 'invoicing'),
32
+		'MAL' => __('Malanje', 'invoicing'),
33
+		'MOX' => __('Moxico', 'invoicing'),
34
+		'NAM' => __('Namibe', 'invoicing'),
35
+		'UIG' => __('Uíge', 'invoicing'),
36
+		'ZAI' => __('Zaire', 'invoicing'),
37 37
 	),
38 38
 	'AR' => array( // Argentinian provinces.
39
-		'C' => __( 'Ciudad Aut&oacute;noma de Buenos Aires', 'invoicing' ),
40
-		'B' => __( 'Buenos Aires', 'invoicing' ),
41
-		'K' => __( 'Catamarca', 'invoicing' ),
42
-		'H' => __( 'Chaco', 'invoicing' ),
43
-		'U' => __( 'Chubut', 'invoicing' ),
44
-		'X' => __( 'C&oacute;rdoba', 'invoicing' ),
45
-		'W' => __( 'Corrientes', 'invoicing' ),
46
-		'E' => __( 'Entre R&iacute;os', 'invoicing' ),
47
-		'P' => __( 'Formosa', 'invoicing' ),
48
-		'Y' => __( 'Jujuy', 'invoicing' ),
49
-		'L' => __( 'La Pampa', 'invoicing' ),
50
-		'F' => __( 'La Rioja', 'invoicing' ),
51
-		'M' => __( 'Mendoza', 'invoicing' ),
52
-		'N' => __( 'Misiones', 'invoicing' ),
53
-		'Q' => __( 'Neuqu&eacute;n', 'invoicing' ),
54
-		'R' => __( 'R&iacute;o Negro', 'invoicing' ),
55
-		'A' => __( 'Salta', 'invoicing' ),
56
-		'J' => __( 'San Juan', 'invoicing' ),
57
-		'D' => __( 'San Luis', 'invoicing' ),
58
-		'Z' => __( 'Santa Cruz', 'invoicing' ),
59
-		'S' => __( 'Santa Fe', 'invoicing' ),
60
-		'G' => __( 'Santiago del Estero', 'invoicing' ),
61
-		'V' => __( 'Tierra del Fuego', 'invoicing' ),
62
-		'T' => __( 'Tucum&aacute;n', 'invoicing' ),
39
+		'C' => __('Ciudad Aut&oacute;noma de Buenos Aires', 'invoicing'),
40
+		'B' => __('Buenos Aires', 'invoicing'),
41
+		'K' => __('Catamarca', 'invoicing'),
42
+		'H' => __('Chaco', 'invoicing'),
43
+		'U' => __('Chubut', 'invoicing'),
44
+		'X' => __('C&oacute;rdoba', 'invoicing'),
45
+		'W' => __('Corrientes', 'invoicing'),
46
+		'E' => __('Entre R&iacute;os', 'invoicing'),
47
+		'P' => __('Formosa', 'invoicing'),
48
+		'Y' => __('Jujuy', 'invoicing'),
49
+		'L' => __('La Pampa', 'invoicing'),
50
+		'F' => __('La Rioja', 'invoicing'),
51
+		'M' => __('Mendoza', 'invoicing'),
52
+		'N' => __('Misiones', 'invoicing'),
53
+		'Q' => __('Neuqu&eacute;n', 'invoicing'),
54
+		'R' => __('R&iacute;o Negro', 'invoicing'),
55
+		'A' => __('Salta', 'invoicing'),
56
+		'J' => __('San Juan', 'invoicing'),
57
+		'D' => __('San Luis', 'invoicing'),
58
+		'Z' => __('Santa Cruz', 'invoicing'),
59
+		'S' => __('Santa Fe', 'invoicing'),
60
+		'G' => __('Santiago del Estero', 'invoicing'),
61
+		'V' => __('Tierra del Fuego', 'invoicing'),
62
+		'T' => __('Tucum&aacute;n', 'invoicing'),
63 63
 	),
64 64
 	'AT' => array(),
65 65
 	'AU' => array( // Australian states.
66
-		'ACT' => __( 'Australian Capital Territory', 'invoicing' ),
67
-		'NSW' => __( 'New South Wales', 'invoicing' ),
68
-		'NT'  => __( 'Northern Territory', 'invoicing' ),
69
-		'QLD' => __( 'Queensland', 'invoicing' ),
70
-		'SA'  => __( 'South Australia', 'invoicing' ),
71
-		'TAS' => __( 'Tasmania', 'invoicing' ),
72
-		'VIC' => __( 'Victoria', 'invoicing' ),
73
-		'WA'  => __( 'Western Australia', 'invoicing' ),
66
+		'ACT' => __('Australian Capital Territory', 'invoicing'),
67
+		'NSW' => __('New South Wales', 'invoicing'),
68
+		'NT'  => __('Northern Territory', 'invoicing'),
69
+		'QLD' => __('Queensland', 'invoicing'),
70
+		'SA'  => __('South Australia', 'invoicing'),
71
+		'TAS' => __('Tasmania', 'invoicing'),
72
+		'VIC' => __('Victoria', 'invoicing'),
73
+		'WA'  => __('Western Australia', 'invoicing'),
74 74
 	),
75 75
 	'AX' => array(),
76 76
 	'BD' => array( // Bangladeshi states (districts).
77
-		'BD-05' => __( 'Bagerhat', 'invoicing' ),
78
-		'BD-01' => __( 'Bandarban', 'invoicing' ),
79
-		'BD-02' => __( 'Barguna', 'invoicing' ),
80
-		'BD-06' => __( 'Barishal', 'invoicing' ),
81
-		'BD-07' => __( 'Bhola', 'invoicing' ),
82
-		'BD-03' => __( 'Bogura', 'invoicing' ),
83
-		'BD-04' => __( 'Brahmanbaria', 'invoicing' ),
84
-		'BD-09' => __( 'Chandpur', 'invoicing' ),
85
-		'BD-10' => __( 'Chattogram', 'invoicing' ),
86
-		'BD-12' => __( 'Chuadanga', 'invoicing' ),
87
-		'BD-11' => __( "Cox's Bazar", 'invoicing' ),
88
-		'BD-08' => __( 'Cumilla', 'invoicing' ),
89
-		'BD-13' => __( 'Dhaka', 'invoicing' ),
90
-		'BD-14' => __( 'Dinajpur', 'invoicing' ),
91
-		'BD-15' => __( 'Faridpur ', 'invoicing' ),
92
-		'BD-16' => __( 'Feni', 'invoicing' ),
93
-		'BD-19' => __( 'Gaibandha', 'invoicing' ),
94
-		'BD-18' => __( 'Gazipur', 'invoicing' ),
95
-		'BD-17' => __( 'Gopalganj', 'invoicing' ),
96
-		'BD-20' => __( 'Habiganj', 'invoicing' ),
97
-		'BD-21' => __( 'Jamalpur', 'invoicing' ),
98
-		'BD-22' => __( 'Jashore', 'invoicing' ),
99
-		'BD-25' => __( 'Jhalokati', 'invoicing' ),
100
-		'BD-23' => __( 'Jhenaidah', 'invoicing' ),
101
-		'BD-24' => __( 'Joypurhat', 'invoicing' ),
102
-		'BD-29' => __( 'Khagrachhari', 'invoicing' ),
103
-		'BD-27' => __( 'Khulna', 'invoicing' ),
104
-		'BD-26' => __( 'Kishoreganj', 'invoicing' ),
105
-		'BD-28' => __( 'Kurigram', 'invoicing' ),
106
-		'BD-30' => __( 'Kushtia', 'invoicing' ),
107
-		'BD-31' => __( 'Lakshmipur', 'invoicing' ),
108
-		'BD-32' => __( 'Lalmonirhat', 'invoicing' ),
109
-		'BD-36' => __( 'Madaripur', 'invoicing' ),
110
-		'BD-37' => __( 'Magura', 'invoicing' ),
111
-		'BD-33' => __( 'Manikganj ', 'invoicing' ),
112
-		'BD-39' => __( 'Meherpur', 'invoicing' ),
113
-		'BD-38' => __( 'Moulvibazar', 'invoicing' ),
114
-		'BD-35' => __( 'Munshiganj', 'invoicing' ),
115
-		'BD-34' => __( 'Mymensingh', 'invoicing' ),
116
-		'BD-48' => __( 'Naogaon', 'invoicing' ),
117
-		'BD-43' => __( 'Narail', 'invoicing' ),
118
-		'BD-40' => __( 'Narayanganj', 'invoicing' ),
119
-		'BD-42' => __( 'Narsingdi', 'invoicing' ),
120
-		'BD-44' => __( 'Natore', 'invoicing' ),
121
-		'BD-45' => __( 'Nawabganj', 'invoicing' ),
122
-		'BD-41' => __( 'Netrakona', 'invoicing' ),
123
-		'BD-46' => __( 'Nilphamari', 'invoicing' ),
124
-		'BD-47' => __( 'Noakhali', 'invoicing' ),
125
-		'BD-49' => __( 'Pabna', 'invoicing' ),
126
-		'BD-52' => __( 'Panchagarh', 'invoicing' ),
127
-		'BD-51' => __( 'Patuakhali', 'invoicing' ),
128
-		'BD-50' => __( 'Pirojpur', 'invoicing' ),
129
-		'BD-53' => __( 'Rajbari', 'invoicing' ),
130
-		'BD-54' => __( 'Rajshahi', 'invoicing' ),
131
-		'BD-56' => __( 'Rangamati', 'invoicing' ),
132
-		'BD-55' => __( 'Rangpur', 'invoicing' ),
133
-		'BD-58' => __( 'Satkhira', 'invoicing' ),
134
-		'BD-62' => __( 'Shariatpur', 'invoicing' ),
135
-		'BD-57' => __( 'Sherpur', 'invoicing' ),
136
-		'BD-59' => __( 'Sirajganj', 'invoicing' ),
137
-		'BD-61' => __( 'Sunamganj', 'invoicing' ),
138
-		'BD-60' => __( 'Sylhet', 'invoicing' ),
139
-		'BD-63' => __( 'Tangail', 'invoicing' ),
140
-		'BD-64' => __( 'Thakurgaon', 'invoicing' ),
77
+		'BD-05' => __('Bagerhat', 'invoicing'),
78
+		'BD-01' => __('Bandarban', 'invoicing'),
79
+		'BD-02' => __('Barguna', 'invoicing'),
80
+		'BD-06' => __('Barishal', 'invoicing'),
81
+		'BD-07' => __('Bhola', 'invoicing'),
82
+		'BD-03' => __('Bogura', 'invoicing'),
83
+		'BD-04' => __('Brahmanbaria', 'invoicing'),
84
+		'BD-09' => __('Chandpur', 'invoicing'),
85
+		'BD-10' => __('Chattogram', 'invoicing'),
86
+		'BD-12' => __('Chuadanga', 'invoicing'),
87
+		'BD-11' => __("Cox's Bazar", 'invoicing'),
88
+		'BD-08' => __('Cumilla', 'invoicing'),
89
+		'BD-13' => __('Dhaka', 'invoicing'),
90
+		'BD-14' => __('Dinajpur', 'invoicing'),
91
+		'BD-15' => __('Faridpur ', 'invoicing'),
92
+		'BD-16' => __('Feni', 'invoicing'),
93
+		'BD-19' => __('Gaibandha', 'invoicing'),
94
+		'BD-18' => __('Gazipur', 'invoicing'),
95
+		'BD-17' => __('Gopalganj', 'invoicing'),
96
+		'BD-20' => __('Habiganj', 'invoicing'),
97
+		'BD-21' => __('Jamalpur', 'invoicing'),
98
+		'BD-22' => __('Jashore', 'invoicing'),
99
+		'BD-25' => __('Jhalokati', 'invoicing'),
100
+		'BD-23' => __('Jhenaidah', 'invoicing'),
101
+		'BD-24' => __('Joypurhat', 'invoicing'),
102
+		'BD-29' => __('Khagrachhari', 'invoicing'),
103
+		'BD-27' => __('Khulna', 'invoicing'),
104
+		'BD-26' => __('Kishoreganj', 'invoicing'),
105
+		'BD-28' => __('Kurigram', 'invoicing'),
106
+		'BD-30' => __('Kushtia', 'invoicing'),
107
+		'BD-31' => __('Lakshmipur', 'invoicing'),
108
+		'BD-32' => __('Lalmonirhat', 'invoicing'),
109
+		'BD-36' => __('Madaripur', 'invoicing'),
110
+		'BD-37' => __('Magura', 'invoicing'),
111
+		'BD-33' => __('Manikganj ', 'invoicing'),
112
+		'BD-39' => __('Meherpur', 'invoicing'),
113
+		'BD-38' => __('Moulvibazar', 'invoicing'),
114
+		'BD-35' => __('Munshiganj', 'invoicing'),
115
+		'BD-34' => __('Mymensingh', 'invoicing'),
116
+		'BD-48' => __('Naogaon', 'invoicing'),
117
+		'BD-43' => __('Narail', 'invoicing'),
118
+		'BD-40' => __('Narayanganj', 'invoicing'),
119
+		'BD-42' => __('Narsingdi', 'invoicing'),
120
+		'BD-44' => __('Natore', 'invoicing'),
121
+		'BD-45' => __('Nawabganj', 'invoicing'),
122
+		'BD-41' => __('Netrakona', 'invoicing'),
123
+		'BD-46' => __('Nilphamari', 'invoicing'),
124
+		'BD-47' => __('Noakhali', 'invoicing'),
125
+		'BD-49' => __('Pabna', 'invoicing'),
126
+		'BD-52' => __('Panchagarh', 'invoicing'),
127
+		'BD-51' => __('Patuakhali', 'invoicing'),
128
+		'BD-50' => __('Pirojpur', 'invoicing'),
129
+		'BD-53' => __('Rajbari', 'invoicing'),
130
+		'BD-54' => __('Rajshahi', 'invoicing'),
131
+		'BD-56' => __('Rangamati', 'invoicing'),
132
+		'BD-55' => __('Rangpur', 'invoicing'),
133
+		'BD-58' => __('Satkhira', 'invoicing'),
134
+		'BD-62' => __('Shariatpur', 'invoicing'),
135
+		'BD-57' => __('Sherpur', 'invoicing'),
136
+		'BD-59' => __('Sirajganj', 'invoicing'),
137
+		'BD-61' => __('Sunamganj', 'invoicing'),
138
+		'BD-60' => __('Sylhet', 'invoicing'),
139
+		'BD-63' => __('Tangail', 'invoicing'),
140
+		'BD-64' => __('Thakurgaon', 'invoicing'),
141 141
 	),
142 142
 	'BE' => array(),
143 143
 	'BG' => array( // Bulgarian states.
144
-		'BG-01' => __( 'Blagoevgrad', 'invoicing' ),
145
-		'BG-02' => __( 'Burgas', 'invoicing' ),
146
-		'BG-08' => __( 'Dobrich', 'invoicing' ),
147
-		'BG-07' => __( 'Gabrovo', 'invoicing' ),
148
-		'BG-26' => __( 'Haskovo', 'invoicing' ),
149
-		'BG-09' => __( 'Kardzhali', 'invoicing' ),
150
-		'BG-10' => __( 'Kyustendil', 'invoicing' ),
151
-		'BG-11' => __( 'Lovech', 'invoicing' ),
152
-		'BG-12' => __( 'Montana', 'invoicing' ),
153
-		'BG-13' => __( 'Pazardzhik', 'invoicing' ),
154
-		'BG-14' => __( 'Pernik', 'invoicing' ),
155
-		'BG-15' => __( 'Pleven', 'invoicing' ),
156
-		'BG-16' => __( 'Plovdiv', 'invoicing' ),
157
-		'BG-17' => __( 'Razgrad', 'invoicing' ),
158
-		'BG-18' => __( 'Ruse', 'invoicing' ),
159
-		'BG-27' => __( 'Shumen', 'invoicing' ),
160
-		'BG-19' => __( 'Silistra', 'invoicing' ),
161
-		'BG-20' => __( 'Sliven', 'invoicing' ),
162
-		'BG-21' => __( 'Smolyan', 'invoicing' ),
163
-		'BG-23' => __( 'Sofia', 'invoicing' ),
164
-		'BG-22' => __( 'Sofia-Grad', 'invoicing' ),
165
-		'BG-24' => __( 'Stara Zagora', 'invoicing' ),
166
-		'BG-25' => __( 'Targovishte', 'invoicing' ),
167
-		'BG-03' => __( 'Varna', 'invoicing' ),
168
-		'BG-04' => __( 'Veliko Tarnovo', 'invoicing' ),
169
-		'BG-05' => __( 'Vidin', 'invoicing' ),
170
-		'BG-06' => __( 'Vratsa', 'invoicing' ),
171
-		'BG-28' => __( 'Yambol', 'invoicing' ),
144
+		'BG-01' => __('Blagoevgrad', 'invoicing'),
145
+		'BG-02' => __('Burgas', 'invoicing'),
146
+		'BG-08' => __('Dobrich', 'invoicing'),
147
+		'BG-07' => __('Gabrovo', 'invoicing'),
148
+		'BG-26' => __('Haskovo', 'invoicing'),
149
+		'BG-09' => __('Kardzhali', 'invoicing'),
150
+		'BG-10' => __('Kyustendil', 'invoicing'),
151
+		'BG-11' => __('Lovech', 'invoicing'),
152
+		'BG-12' => __('Montana', 'invoicing'),
153
+		'BG-13' => __('Pazardzhik', 'invoicing'),
154
+		'BG-14' => __('Pernik', 'invoicing'),
155
+		'BG-15' => __('Pleven', 'invoicing'),
156
+		'BG-16' => __('Plovdiv', 'invoicing'),
157
+		'BG-17' => __('Razgrad', 'invoicing'),
158
+		'BG-18' => __('Ruse', 'invoicing'),
159
+		'BG-27' => __('Shumen', 'invoicing'),
160
+		'BG-19' => __('Silistra', 'invoicing'),
161
+		'BG-20' => __('Sliven', 'invoicing'),
162
+		'BG-21' => __('Smolyan', 'invoicing'),
163
+		'BG-23' => __('Sofia', 'invoicing'),
164
+		'BG-22' => __('Sofia-Grad', 'invoicing'),
165
+		'BG-24' => __('Stara Zagora', 'invoicing'),
166
+		'BG-25' => __('Targovishte', 'invoicing'),
167
+		'BG-03' => __('Varna', 'invoicing'),
168
+		'BG-04' => __('Veliko Tarnovo', 'invoicing'),
169
+		'BG-05' => __('Vidin', 'invoicing'),
170
+		'BG-06' => __('Vratsa', 'invoicing'),
171
+		'BG-28' => __('Yambol', 'invoicing'),
172 172
 	),
173 173
 	'BH' => array(),
174 174
 	'BI' => array(),
175 175
 	'BO' => array( // Bolivian states.
176
-		'B' => __( 'Chuquisaca', 'invoicing' ),
177
-		'H' => __( 'Beni', 'invoicing' ),
178
-		'C' => __( 'Cochabamba', 'invoicing' ),
179
-		'L' => __( 'La Paz', 'invoicing' ),
180
-		'O' => __( 'Oruro', 'invoicing' ),
181
-		'N' => __( 'Pando', 'invoicing' ),
182
-		'P' => __( 'Potosí', 'invoicing' ),
183
-		'S' => __( 'Santa Cruz', 'invoicing' ),
184
-		'T' => __( 'Tarija', 'invoicing' ),
176
+		'B' => __('Chuquisaca', 'invoicing'),
177
+		'H' => __('Beni', 'invoicing'),
178
+		'C' => __('Cochabamba', 'invoicing'),
179
+		'L' => __('La Paz', 'invoicing'),
180
+		'O' => __('Oruro', 'invoicing'),
181
+		'N' => __('Pando', 'invoicing'),
182
+		'P' => __('Potosí', 'invoicing'),
183
+		'S' => __('Santa Cruz', 'invoicing'),
184
+		'T' => __('Tarija', 'invoicing'),
185 185
 	),
186 186
 	'BR' => array( // Brazillian states.
187
-		'AC' => __( 'Acre', 'invoicing' ),
188
-		'AL' => __( 'Alagoas', 'invoicing' ),
189
-		'AP' => __( 'Amap&aacute;', 'invoicing' ),
190
-		'AM' => __( 'Amazonas', 'invoicing' ),
191
-		'BA' => __( 'Bahia', 'invoicing' ),
192
-		'CE' => __( 'Cear&aacute;', 'invoicing' ),
193
-		'DF' => __( 'Distrito Federal', 'invoicing' ),
194
-		'ES' => __( 'Esp&iacute;rito Santo', 'invoicing' ),
195
-		'GO' => __( 'Goi&aacute;s', 'invoicing' ),
196
-		'MA' => __( 'Maranh&atilde;o', 'invoicing' ),
197
-		'MT' => __( 'Mato Grosso', 'invoicing' ),
198
-		'MS' => __( 'Mato Grosso do Sul', 'invoicing' ),
199
-		'MG' => __( 'Minas Gerais', 'invoicing' ),
200
-		'PA' => __( 'Par&aacute;', 'invoicing' ),
201
-		'PB' => __( 'Para&iacute;ba', 'invoicing' ),
202
-		'PR' => __( 'Paran&aacute;', 'invoicing' ),
203
-		'PE' => __( 'Pernambuco', 'invoicing' ),
204
-		'PI' => __( 'Piau&iacute;', 'invoicing' ),
205
-		'RJ' => __( 'Rio de Janeiro', 'invoicing' ),
206
-		'RN' => __( 'Rio Grande do Norte', 'invoicing' ),
207
-		'RS' => __( 'Rio Grande do Sul', 'invoicing' ),
208
-		'RO' => __( 'Rond&ocirc;nia', 'invoicing' ),
209
-		'RR' => __( 'Roraima', 'invoicing' ),
210
-		'SC' => __( 'Santa Catarina', 'invoicing' ),
211
-		'SP' => __( 'S&atilde;o Paulo', 'invoicing' ),
212
-		'SE' => __( 'Sergipe', 'invoicing' ),
213
-		'TO' => __( 'Tocantins', 'invoicing' ),
187
+		'AC' => __('Acre', 'invoicing'),
188
+		'AL' => __('Alagoas', 'invoicing'),
189
+		'AP' => __('Amap&aacute;', 'invoicing'),
190
+		'AM' => __('Amazonas', 'invoicing'),
191
+		'BA' => __('Bahia', 'invoicing'),
192
+		'CE' => __('Cear&aacute;', 'invoicing'),
193
+		'DF' => __('Distrito Federal', 'invoicing'),
194
+		'ES' => __('Esp&iacute;rito Santo', 'invoicing'),
195
+		'GO' => __('Goi&aacute;s', 'invoicing'),
196
+		'MA' => __('Maranh&atilde;o', 'invoicing'),
197
+		'MT' => __('Mato Grosso', 'invoicing'),
198
+		'MS' => __('Mato Grosso do Sul', 'invoicing'),
199
+		'MG' => __('Minas Gerais', 'invoicing'),
200
+		'PA' => __('Par&aacute;', 'invoicing'),
201
+		'PB' => __('Para&iacute;ba', 'invoicing'),
202
+		'PR' => __('Paran&aacute;', 'invoicing'),
203
+		'PE' => __('Pernambuco', 'invoicing'),
204
+		'PI' => __('Piau&iacute;', 'invoicing'),
205
+		'RJ' => __('Rio de Janeiro', 'invoicing'),
206
+		'RN' => __('Rio Grande do Norte', 'invoicing'),
207
+		'RS' => __('Rio Grande do Sul', 'invoicing'),
208
+		'RO' => __('Rond&ocirc;nia', 'invoicing'),
209
+		'RR' => __('Roraima', 'invoicing'),
210
+		'SC' => __('Santa Catarina', 'invoicing'),
211
+		'SP' => __('S&atilde;o Paulo', 'invoicing'),
212
+		'SE' => __('Sergipe', 'invoicing'),
213
+		'TO' => __('Tocantins', 'invoicing'),
214 214
 	),
215 215
 	'CA' => array( // Canadian states.
216
-		'AB' => __( 'Alberta', 'invoicing' ),
217
-		'BC' => __( 'British Columbia', 'invoicing' ),
218
-		'MB' => __( 'Manitoba', 'invoicing' ),
219
-		'NB' => __( 'New Brunswick', 'invoicing' ),
220
-		'NL' => __( 'Newfoundland and Labrador', 'invoicing' ),
221
-		'NT' => __( 'Northwest Territories', 'invoicing' ),
222
-		'NS' => __( 'Nova Scotia', 'invoicing' ),
223
-		'NU' => __( 'Nunavut', 'invoicing' ),
224
-		'ON' => __( 'Ontario', 'invoicing' ),
225
-		'PE' => __( 'Prince Edward Island', 'invoicing' ),
226
-		'QC' => __( 'Quebec', 'invoicing' ),
227
-		'SK' => __( 'Saskatchewan', 'invoicing' ),
228
-		'YT' => __( 'Yukon Territory', 'invoicing' ),
216
+		'AB' => __('Alberta', 'invoicing'),
217
+		'BC' => __('British Columbia', 'invoicing'),
218
+		'MB' => __('Manitoba', 'invoicing'),
219
+		'NB' => __('New Brunswick', 'invoicing'),
220
+		'NL' => __('Newfoundland and Labrador', 'invoicing'),
221
+		'NT' => __('Northwest Territories', 'invoicing'),
222
+		'NS' => __('Nova Scotia', 'invoicing'),
223
+		'NU' => __('Nunavut', 'invoicing'),
224
+		'ON' => __('Ontario', 'invoicing'),
225
+		'PE' => __('Prince Edward Island', 'invoicing'),
226
+		'QC' => __('Quebec', 'invoicing'),
227
+		'SK' => __('Saskatchewan', 'invoicing'),
228
+		'YT' => __('Yukon Territory', 'invoicing'),
229 229
 	),
230 230
 	'CH' => array( // Cantons of Switzerland.
231
-		'AG' => __( 'Aargau', 'invoicing' ),
232
-		'AR' => __( 'Appenzell Ausserrhoden', 'invoicing' ),
233
-		'AI' => __( 'Appenzell Innerrhoden', 'invoicing' ),
234
-		'BL' => __( 'Basel-Landschaft', 'invoicing' ),
235
-		'BS' => __( 'Basel-Stadt', 'invoicing' ),
236
-		'BE' => __( 'Bern', 'invoicing' ),
237
-		'FR' => __( 'Fribourg', 'invoicing' ),
238
-		'GE' => __( 'Geneva', 'invoicing' ),
239
-		'GL' => __( 'Glarus', 'invoicing' ),
240
-		'GR' => __( 'Graub&uuml;nden', 'invoicing' ),
241
-		'JU' => __( 'Jura', 'invoicing' ),
242
-		'LU' => __( 'Luzern', 'invoicing' ),
243
-		'NE' => __( 'Neuch&acirc;tel', 'invoicing' ),
244
-		'NW' => __( 'Nidwalden', 'invoicing' ),
245
-		'OW' => __( 'Obwalden', 'invoicing' ),
246
-		'SH' => __( 'Schaffhausen', 'invoicing' ),
247
-		'SZ' => __( 'Schwyz', 'invoicing' ),
248
-		'SO' => __( 'Solothurn', 'invoicing' ),
249
-		'SG' => __( 'St. Gallen', 'invoicing' ),
250
-		'TG' => __( 'Thurgau', 'invoicing' ),
251
-		'TI' => __( 'Ticino', 'invoicing' ),
252
-		'UR' => __( 'Uri', 'invoicing' ),
253
-		'VS' => __( 'Valais', 'invoicing' ),
254
-		'VD' => __( 'Vaud', 'invoicing' ),
255
-		'ZG' => __( 'Zug', 'invoicing' ),
256
-		'ZH' => __( 'Z&uuml;rich', 'invoicing' ),
231
+		'AG' => __('Aargau', 'invoicing'),
232
+		'AR' => __('Appenzell Ausserrhoden', 'invoicing'),
233
+		'AI' => __('Appenzell Innerrhoden', 'invoicing'),
234
+		'BL' => __('Basel-Landschaft', 'invoicing'),
235
+		'BS' => __('Basel-Stadt', 'invoicing'),
236
+		'BE' => __('Bern', 'invoicing'),
237
+		'FR' => __('Fribourg', 'invoicing'),
238
+		'GE' => __('Geneva', 'invoicing'),
239
+		'GL' => __('Glarus', 'invoicing'),
240
+		'GR' => __('Graub&uuml;nden', 'invoicing'),
241
+		'JU' => __('Jura', 'invoicing'),
242
+		'LU' => __('Luzern', 'invoicing'),
243
+		'NE' => __('Neuch&acirc;tel', 'invoicing'),
244
+		'NW' => __('Nidwalden', 'invoicing'),
245
+		'OW' => __('Obwalden', 'invoicing'),
246
+		'SH' => __('Schaffhausen', 'invoicing'),
247
+		'SZ' => __('Schwyz', 'invoicing'),
248
+		'SO' => __('Solothurn', 'invoicing'),
249
+		'SG' => __('St. Gallen', 'invoicing'),
250
+		'TG' => __('Thurgau', 'invoicing'),
251
+		'TI' => __('Ticino', 'invoicing'),
252
+		'UR' => __('Uri', 'invoicing'),
253
+		'VS' => __('Valais', 'invoicing'),
254
+		'VD' => __('Vaud', 'invoicing'),
255
+		'ZG' => __('Zug', 'invoicing'),
256
+		'ZH' => __('Z&uuml;rich', 'invoicing'),
257 257
 	),
258 258
 	'CN' => array( // Chinese states.
259
-		'CN1'  => __( 'Yunnan / &#20113;&#21335;', 'invoicing' ),
260
-		'CN2'  => __( 'Beijing / &#21271;&#20140;', 'invoicing' ),
261
-		'CN3'  => __( 'Tianjin / &#22825;&#27941;', 'invoicing' ),
262
-		'CN4'  => __( 'Hebei / &#27827;&#21271;', 'invoicing' ),
263
-		'CN5'  => __( 'Shanxi / &#23665;&#35199;', 'invoicing' ),
264
-		'CN6'  => __( 'Inner Mongolia / &#20839;&#33945;&#21476;', 'invoicing' ),
265
-		'CN7'  => __( 'Liaoning / &#36797;&#23425;', 'invoicing' ),
266
-		'CN8'  => __( 'Jilin / &#21513;&#26519;', 'invoicing' ),
267
-		'CN9'  => __( 'Heilongjiang / &#40657;&#40857;&#27743;', 'invoicing' ),
268
-		'CN10' => __( 'Shanghai / &#19978;&#28023;', 'invoicing' ),
269
-		'CN11' => __( 'Jiangsu / &#27743;&#33487;', 'invoicing' ),
270
-		'CN12' => __( 'Zhejiang / &#27993;&#27743;', 'invoicing' ),
271
-		'CN13' => __( 'Anhui / &#23433;&#24509;', 'invoicing' ),
272
-		'CN14' => __( 'Fujian / &#31119;&#24314;', 'invoicing' ),
273
-		'CN15' => __( 'Jiangxi / &#27743;&#35199;', 'invoicing' ),
274
-		'CN16' => __( 'Shandong / &#23665;&#19996;', 'invoicing' ),
275
-		'CN17' => __( 'Henan / &#27827;&#21335;', 'invoicing' ),
276
-		'CN18' => __( 'Hubei / &#28246;&#21271;', 'invoicing' ),
277
-		'CN19' => __( 'Hunan / &#28246;&#21335;', 'invoicing' ),
278
-		'CN20' => __( 'Guangdong / &#24191;&#19996;', 'invoicing' ),
279
-		'CN21' => __( 'Guangxi Zhuang / &#24191;&#35199;&#22766;&#26063;', 'invoicing' ),
280
-		'CN22' => __( 'Hainan / &#28023;&#21335;', 'invoicing' ),
281
-		'CN23' => __( 'Chongqing / &#37325;&#24198;', 'invoicing' ),
282
-		'CN24' => __( 'Sichuan / &#22235;&#24029;', 'invoicing' ),
283
-		'CN25' => __( 'Guizhou / &#36149;&#24030;', 'invoicing' ),
284
-		'CN26' => __( 'Shaanxi / &#38485;&#35199;', 'invoicing' ),
285
-		'CN27' => __( 'Gansu / &#29976;&#32899;', 'invoicing' ),
286
-		'CN28' => __( 'Qinghai / &#38738;&#28023;', 'invoicing' ),
287
-		'CN29' => __( 'Ningxia Hui / &#23425;&#22799;', 'invoicing' ),
288
-		'CN30' => __( 'Macao / &#28595;&#38376;', 'invoicing' ),
289
-		'CN31' => __( 'Tibet / &#35199;&#34255;', 'invoicing' ),
290
-		'CN32' => __( 'Xinjiang / &#26032;&#30086;', 'invoicing' ),
259
+		'CN1'  => __('Yunnan / &#20113;&#21335;', 'invoicing'),
260
+		'CN2'  => __('Beijing / &#21271;&#20140;', 'invoicing'),
261
+		'CN3'  => __('Tianjin / &#22825;&#27941;', 'invoicing'),
262
+		'CN4'  => __('Hebei / &#27827;&#21271;', 'invoicing'),
263
+		'CN5'  => __('Shanxi / &#23665;&#35199;', 'invoicing'),
264
+		'CN6'  => __('Inner Mongolia / &#20839;&#33945;&#21476;', 'invoicing'),
265
+		'CN7'  => __('Liaoning / &#36797;&#23425;', 'invoicing'),
266
+		'CN8'  => __('Jilin / &#21513;&#26519;', 'invoicing'),
267
+		'CN9'  => __('Heilongjiang / &#40657;&#40857;&#27743;', 'invoicing'),
268
+		'CN10' => __('Shanghai / &#19978;&#28023;', 'invoicing'),
269
+		'CN11' => __('Jiangsu / &#27743;&#33487;', 'invoicing'),
270
+		'CN12' => __('Zhejiang / &#27993;&#27743;', 'invoicing'),
271
+		'CN13' => __('Anhui / &#23433;&#24509;', 'invoicing'),
272
+		'CN14' => __('Fujian / &#31119;&#24314;', 'invoicing'),
273
+		'CN15' => __('Jiangxi / &#27743;&#35199;', 'invoicing'),
274
+		'CN16' => __('Shandong / &#23665;&#19996;', 'invoicing'),
275
+		'CN17' => __('Henan / &#27827;&#21335;', 'invoicing'),
276
+		'CN18' => __('Hubei / &#28246;&#21271;', 'invoicing'),
277
+		'CN19' => __('Hunan / &#28246;&#21335;', 'invoicing'),
278
+		'CN20' => __('Guangdong / &#24191;&#19996;', 'invoicing'),
279
+		'CN21' => __('Guangxi Zhuang / &#24191;&#35199;&#22766;&#26063;', 'invoicing'),
280
+		'CN22' => __('Hainan / &#28023;&#21335;', 'invoicing'),
281
+		'CN23' => __('Chongqing / &#37325;&#24198;', 'invoicing'),
282
+		'CN24' => __('Sichuan / &#22235;&#24029;', 'invoicing'),
283
+		'CN25' => __('Guizhou / &#36149;&#24030;', 'invoicing'),
284
+		'CN26' => __('Shaanxi / &#38485;&#35199;', 'invoicing'),
285
+		'CN27' => __('Gansu / &#29976;&#32899;', 'invoicing'),
286
+		'CN28' => __('Qinghai / &#38738;&#28023;', 'invoicing'),
287
+		'CN29' => __('Ningxia Hui / &#23425;&#22799;', 'invoicing'),
288
+		'CN30' => __('Macao / &#28595;&#38376;', 'invoicing'),
289
+		'CN31' => __('Tibet / &#35199;&#34255;', 'invoicing'),
290
+		'CN32' => __('Xinjiang / &#26032;&#30086;', 'invoicing'),
291 291
 	),
292 292
 	'CZ' => array(),
293 293
 	'DE' => array(),
294 294
 	'DK' => array(),
295 295
 	'EE' => array(),
296 296
 	'ES' => array( // Spanish states.
297
-		'C'  => __( 'A Coru&ntilde;a', 'invoicing' ),
298
-		'VI' => __( 'Araba/&Aacute;lava', 'invoicing' ),
299
-		'AB' => __( 'Albacete', 'invoicing' ),
300
-		'A'  => __( 'Alicante', 'invoicing' ),
301
-		'AL' => __( 'Almer&iacute;a', 'invoicing' ),
302
-		'O'  => __( 'Asturias', 'invoicing' ),
303
-		'AV' => __( '&Aacute;vila', 'invoicing' ),
304
-		'BA' => __( 'Badajoz', 'invoicing' ),
305
-		'PM' => __( 'Baleares', 'invoicing' ),
306
-		'B'  => __( 'Barcelona', 'invoicing' ),
307
-		'BU' => __( 'Burgos', 'invoicing' ),
308
-		'CC' => __( 'C&aacute;ceres', 'invoicing' ),
309
-		'CA' => __( 'C&aacute;diz', 'invoicing' ),
310
-		'S'  => __( 'Cantabria', 'invoicing' ),
311
-		'CS' => __( 'Castell&oacute;n', 'invoicing' ),
312
-		'CE' => __( 'Ceuta', 'invoicing' ),
313
-		'CR' => __( 'Ciudad Real', 'invoicing' ),
314
-		'CO' => __( 'C&oacute;rdoba', 'invoicing' ),
315
-		'CU' => __( 'Cuenca', 'invoicing' ),
316
-		'GI' => __( 'Girona', 'invoicing' ),
317
-		'GR' => __( 'Granada', 'invoicing' ),
318
-		'GU' => __( 'Guadalajara', 'invoicing' ),
319
-		'SS' => __( 'Gipuzkoa', 'invoicing' ),
320
-		'H'  => __( 'Huelva', 'invoicing' ),
321
-		'HU' => __( 'Huesca', 'invoicing' ),
322
-		'J'  => __( 'Ja&eacute;n', 'invoicing' ),
323
-		'LO' => __( 'La Rioja', 'invoicing' ),
324
-		'GC' => __( 'Las Palmas', 'invoicing' ),
325
-		'LE' => __( 'Le&oacute;n', 'invoicing' ),
326
-		'L'  => __( 'Lleida', 'invoicing' ),
327
-		'LU' => __( 'Lugo', 'invoicing' ),
328
-		'M'  => __( 'Madrid', 'invoicing' ),
329
-		'MA' => __( 'M&aacute;laga', 'invoicing' ),
330
-		'ML' => __( 'Melilla', 'invoicing' ),
331
-		'MU' => __( 'Murcia', 'invoicing' ),
332
-		'NA' => __( 'Navarra', 'invoicing' ),
333
-		'OR' => __( 'Ourense', 'invoicing' ),
334
-		'P'  => __( 'Palencia', 'invoicing' ),
335
-		'PO' => __( 'Pontevedra', 'invoicing' ),
336
-		'SA' => __( 'Salamanca', 'invoicing' ),
337
-		'TF' => __( 'Santa Cruz de Tenerife', 'invoicing' ),
338
-		'SG' => __( 'Segovia', 'invoicing' ),
339
-		'SE' => __( 'Sevilla', 'invoicing' ),
340
-		'SO' => __( 'Soria', 'invoicing' ),
341
-		'T'  => __( 'Tarragona', 'invoicing' ),
342
-		'TE' => __( 'Teruel', 'invoicing' ),
343
-		'TO' => __( 'Toledo', 'invoicing' ),
344
-		'V'  => __( 'Valencia', 'invoicing' ),
345
-		'VA' => __( 'Valladolid', 'invoicing' ),
346
-		'BI' => __( 'Bizkaia', 'invoicing' ),
347
-		'ZA' => __( 'Zamora', 'invoicing' ),
348
-		'Z'  => __( 'Zaragoza', 'invoicing' ),
297
+		'C'  => __('A Coru&ntilde;a', 'invoicing'),
298
+		'VI' => __('Araba/&Aacute;lava', 'invoicing'),
299
+		'AB' => __('Albacete', 'invoicing'),
300
+		'A'  => __('Alicante', 'invoicing'),
301
+		'AL' => __('Almer&iacute;a', 'invoicing'),
302
+		'O'  => __('Asturias', 'invoicing'),
303
+		'AV' => __('&Aacute;vila', 'invoicing'),
304
+		'BA' => __('Badajoz', 'invoicing'),
305
+		'PM' => __('Baleares', 'invoicing'),
306
+		'B'  => __('Barcelona', 'invoicing'),
307
+		'BU' => __('Burgos', 'invoicing'),
308
+		'CC' => __('C&aacute;ceres', 'invoicing'),
309
+		'CA' => __('C&aacute;diz', 'invoicing'),
310
+		'S'  => __('Cantabria', 'invoicing'),
311
+		'CS' => __('Castell&oacute;n', 'invoicing'),
312
+		'CE' => __('Ceuta', 'invoicing'),
313
+		'CR' => __('Ciudad Real', 'invoicing'),
314
+		'CO' => __('C&oacute;rdoba', 'invoicing'),
315
+		'CU' => __('Cuenca', 'invoicing'),
316
+		'GI' => __('Girona', 'invoicing'),
317
+		'GR' => __('Granada', 'invoicing'),
318
+		'GU' => __('Guadalajara', 'invoicing'),
319
+		'SS' => __('Gipuzkoa', 'invoicing'),
320
+		'H'  => __('Huelva', 'invoicing'),
321
+		'HU' => __('Huesca', 'invoicing'),
322
+		'J'  => __('Ja&eacute;n', 'invoicing'),
323
+		'LO' => __('La Rioja', 'invoicing'),
324
+		'GC' => __('Las Palmas', 'invoicing'),
325
+		'LE' => __('Le&oacute;n', 'invoicing'),
326
+		'L'  => __('Lleida', 'invoicing'),
327
+		'LU' => __('Lugo', 'invoicing'),
328
+		'M'  => __('Madrid', 'invoicing'),
329
+		'MA' => __('M&aacute;laga', 'invoicing'),
330
+		'ML' => __('Melilla', 'invoicing'),
331
+		'MU' => __('Murcia', 'invoicing'),
332
+		'NA' => __('Navarra', 'invoicing'),
333
+		'OR' => __('Ourense', 'invoicing'),
334
+		'P'  => __('Palencia', 'invoicing'),
335
+		'PO' => __('Pontevedra', 'invoicing'),
336
+		'SA' => __('Salamanca', 'invoicing'),
337
+		'TF' => __('Santa Cruz de Tenerife', 'invoicing'),
338
+		'SG' => __('Segovia', 'invoicing'),
339
+		'SE' => __('Sevilla', 'invoicing'),
340
+		'SO' => __('Soria', 'invoicing'),
341
+		'T'  => __('Tarragona', 'invoicing'),
342
+		'TE' => __('Teruel', 'invoicing'),
343
+		'TO' => __('Toledo', 'invoicing'),
344
+		'V'  => __('Valencia', 'invoicing'),
345
+		'VA' => __('Valladolid', 'invoicing'),
346
+		'BI' => __('Bizkaia', 'invoicing'),
347
+		'ZA' => __('Zamora', 'invoicing'),
348
+		'Z'  => __('Zaragoza', 'invoicing'),
349 349
 	),
350 350
 	'FI' => array(),
351 351
 	'FR' => array(),
352 352
 	'GP' => array(),
353 353
 	'GR' => array( // Greek Regions.
354
-		'I' => __( 'Αττική', 'invoicing' ),
355
-		'A' => __( 'Ανατολική Μακεδονία και Θράκη', 'invoicing' ),
356
-		'B' => __( 'Κεντρική Μακεδονία', 'invoicing' ),
357
-		'C' => __( 'Δυτική Μακεδονία', 'invoicing' ),
358
-		'D' => __( 'Ήπειρος', 'invoicing' ),
359
-		'E' => __( 'Θεσσαλία', 'invoicing' ),
360
-		'F' => __( 'Ιόνιοι Νήσοι', 'invoicing' ),
361
-		'G' => __( 'Δυτική Ελλάδα', 'invoicing' ),
362
-		'H' => __( 'Στερεά Ελλάδα', 'invoicing' ),
363
-		'J' => __( 'Πελοπόννησος', 'invoicing' ),
364
-		'K' => __( 'Βόρειο Αιγαίο', 'invoicing' ),
365
-		'L' => __( 'Νότιο Αιγαίο', 'invoicing' ),
366
-		'M' => __( 'Κρήτη', 'invoicing' ),
354
+		'I' => __('Αττική', 'invoicing'),
355
+		'A' => __('Ανατολική Μακεδονία και Θράκη', 'invoicing'),
356
+		'B' => __('Κεντρική Μακεδονία', 'invoicing'),
357
+		'C' => __('Δυτική Μακεδονία', 'invoicing'),
358
+		'D' => __('Ήπειρος', 'invoicing'),
359
+		'E' => __('Θεσσαλία', 'invoicing'),
360
+		'F' => __('Ιόνιοι Νήσοι', 'invoicing'),
361
+		'G' => __('Δυτική Ελλάδα', 'invoicing'),
362
+		'H' => __('Στερεά Ελλάδα', 'invoicing'),
363
+		'J' => __('Πελοπόννησος', 'invoicing'),
364
+		'K' => __('Βόρειο Αιγαίο', 'invoicing'),
365
+		'L' => __('Νότιο Αιγαίο', 'invoicing'),
366
+		'M' => __('Κρήτη', 'invoicing'),
367 367
 	),
368 368
 	'GF' => array(),
369 369
 	'HK' => array( // Hong Kong states.
370
-		'HONG KONG'       => __( 'Hong Kong Island', 'invoicing' ),
371
-		'KOWLOON'         => __( 'Kowloon', 'invoicing' ),
372
-		'NEW TERRITORIES' => __( 'New Territories', 'invoicing' ),
370
+		'HONG KONG'       => __('Hong Kong Island', 'invoicing'),
371
+		'KOWLOON'         => __('Kowloon', 'invoicing'),
372
+		'NEW TERRITORIES' => __('New Territories', 'invoicing'),
373 373
 	),
374 374
 	'HU' => array( // Hungary states.
375
-		'BK' => __( 'Bács-Kiskun', 'invoicing' ),
376
-		'BE' => __( 'Békés', 'invoicing' ),
377
-		'BA' => __( 'Baranya', 'invoicing' ),
378
-		'BZ' => __( 'Borsod-Abaúj-Zemplén', 'invoicing' ),
379
-		'BU' => __( 'Budapest', 'invoicing' ),
380
-		'CS' => __( 'Csongrád', 'invoicing' ),
381
-		'FE' => __( 'Fejér', 'invoicing' ),
382
-		'GS' => __( 'Győr-Moson-Sopron', 'invoicing' ),
383
-		'HB' => __( 'Hajdú-Bihar', 'invoicing' ),
384
-		'HE' => __( 'Heves', 'invoicing' ),
385
-		'JN' => __( 'Jász-Nagykun-Szolnok', 'invoicing' ),
386
-		'KE' => __( 'Komárom-Esztergom', 'invoicing' ),
387
-		'NO' => __( 'Nógrád', 'invoicing' ),
388
-		'PE' => __( 'Pest', 'invoicing' ),
389
-		'SO' => __( 'Somogy', 'invoicing' ),
390
-		'SZ' => __( 'Szabolcs-Szatmár-Bereg', 'invoicing' ),
391
-		'TO' => __( 'Tolna', 'invoicing' ),
392
-		'VA' => __( 'Vas', 'invoicing' ),
393
-		'VE' => __( 'Veszprém', 'invoicing' ),
394
-		'ZA' => __( 'Zala', 'invoicing' ),
375
+		'BK' => __('Bács-Kiskun', 'invoicing'),
376
+		'BE' => __('Békés', 'invoicing'),
377
+		'BA' => __('Baranya', 'invoicing'),
378
+		'BZ' => __('Borsod-Abaúj-Zemplén', 'invoicing'),
379
+		'BU' => __('Budapest', 'invoicing'),
380
+		'CS' => __('Csongrád', 'invoicing'),
381
+		'FE' => __('Fejér', 'invoicing'),
382
+		'GS' => __('Győr-Moson-Sopron', 'invoicing'),
383
+		'HB' => __('Hajdú-Bihar', 'invoicing'),
384
+		'HE' => __('Heves', 'invoicing'),
385
+		'JN' => __('Jász-Nagykun-Szolnok', 'invoicing'),
386
+		'KE' => __('Komárom-Esztergom', 'invoicing'),
387
+		'NO' => __('Nógrád', 'invoicing'),
388
+		'PE' => __('Pest', 'invoicing'),
389
+		'SO' => __('Somogy', 'invoicing'),
390
+		'SZ' => __('Szabolcs-Szatmár-Bereg', 'invoicing'),
391
+		'TO' => __('Tolna', 'invoicing'),
392
+		'VA' => __('Vas', 'invoicing'),
393
+		'VE' => __('Veszprém', 'invoicing'),
394
+		'ZA' => __('Zala', 'invoicing'),
395 395
 	),
396 396
 	'ID' => array( // Indonesia Provinces.
397
-		'AC' => __( 'Daerah Istimewa Aceh', 'invoicing' ),
398
-		'SU' => __( 'Sumatera Utara', 'invoicing' ),
399
-		'SB' => __( 'Sumatera Barat', 'invoicing' ),
400
-		'RI' => __( 'Riau', 'invoicing' ),
401
-		'KR' => __( 'Kepulauan Riau', 'invoicing' ),
402
-		'JA' => __( 'Jambi', 'invoicing' ),
403
-		'SS' => __( 'Sumatera Selatan', 'invoicing' ),
404
-		'BB' => __( 'Bangka Belitung', 'invoicing' ),
405
-		'BE' => __( 'Bengkulu', 'invoicing' ),
406
-		'LA' => __( 'Lampung', 'invoicing' ),
407
-		'JK' => __( 'DKI Jakarta', 'invoicing' ),
408
-		'JB' => __( 'Jawa Barat', 'invoicing' ),
409
-		'BT' => __( 'Banten', 'invoicing' ),
410
-		'JT' => __( 'Jawa Tengah', 'invoicing' ),
411
-		'JI' => __( 'Jawa Timur', 'invoicing' ),
412
-		'YO' => __( 'Daerah Istimewa Yogyakarta', 'invoicing' ),
413
-		'BA' => __( 'Bali', 'invoicing' ),
414
-		'NB' => __( 'Nusa Tenggara Barat', 'invoicing' ),
415
-		'NT' => __( 'Nusa Tenggara Timur', 'invoicing' ),
416
-		'KB' => __( 'Kalimantan Barat', 'invoicing' ),
417
-		'KT' => __( 'Kalimantan Tengah', 'invoicing' ),
418
-		'KI' => __( 'Kalimantan Timur', 'invoicing' ),
419
-		'KS' => __( 'Kalimantan Selatan', 'invoicing' ),
420
-		'KU' => __( 'Kalimantan Utara', 'invoicing' ),
421
-		'SA' => __( 'Sulawesi Utara', 'invoicing' ),
422
-		'ST' => __( 'Sulawesi Tengah', 'invoicing' ),
423
-		'SG' => __( 'Sulawesi Tenggara', 'invoicing' ),
424
-		'SR' => __( 'Sulawesi Barat', 'invoicing' ),
425
-		'SN' => __( 'Sulawesi Selatan', 'invoicing' ),
426
-		'GO' => __( 'Gorontalo', 'invoicing' ),
427
-		'MA' => __( 'Maluku', 'invoicing' ),
428
-		'MU' => __( 'Maluku Utara', 'invoicing' ),
429
-		'PA' => __( 'Papua', 'invoicing' ),
430
-		'PB' => __( 'Papua Barat', 'invoicing' ),
397
+		'AC' => __('Daerah Istimewa Aceh', 'invoicing'),
398
+		'SU' => __('Sumatera Utara', 'invoicing'),
399
+		'SB' => __('Sumatera Barat', 'invoicing'),
400
+		'RI' => __('Riau', 'invoicing'),
401
+		'KR' => __('Kepulauan Riau', 'invoicing'),
402
+		'JA' => __('Jambi', 'invoicing'),
403
+		'SS' => __('Sumatera Selatan', 'invoicing'),
404
+		'BB' => __('Bangka Belitung', 'invoicing'),
405
+		'BE' => __('Bengkulu', 'invoicing'),
406
+		'LA' => __('Lampung', 'invoicing'),
407
+		'JK' => __('DKI Jakarta', 'invoicing'),
408
+		'JB' => __('Jawa Barat', 'invoicing'),
409
+		'BT' => __('Banten', 'invoicing'),
410
+		'JT' => __('Jawa Tengah', 'invoicing'),
411
+		'JI' => __('Jawa Timur', 'invoicing'),
412
+		'YO' => __('Daerah Istimewa Yogyakarta', 'invoicing'),
413
+		'BA' => __('Bali', 'invoicing'),
414
+		'NB' => __('Nusa Tenggara Barat', 'invoicing'),
415
+		'NT' => __('Nusa Tenggara Timur', 'invoicing'),
416
+		'KB' => __('Kalimantan Barat', 'invoicing'),
417
+		'KT' => __('Kalimantan Tengah', 'invoicing'),
418
+		'KI' => __('Kalimantan Timur', 'invoicing'),
419
+		'KS' => __('Kalimantan Selatan', 'invoicing'),
420
+		'KU' => __('Kalimantan Utara', 'invoicing'),
421
+		'SA' => __('Sulawesi Utara', 'invoicing'),
422
+		'ST' => __('Sulawesi Tengah', 'invoicing'),
423
+		'SG' => __('Sulawesi Tenggara', 'invoicing'),
424
+		'SR' => __('Sulawesi Barat', 'invoicing'),
425
+		'SN' => __('Sulawesi Selatan', 'invoicing'),
426
+		'GO' => __('Gorontalo', 'invoicing'),
427
+		'MA' => __('Maluku', 'invoicing'),
428
+		'MU' => __('Maluku Utara', 'invoicing'),
429
+		'PA' => __('Papua', 'invoicing'),
430
+		'PB' => __('Papua Barat', 'invoicing'),
431 431
 	),
432 432
 	'IE' => array( // Republic of Ireland.
433
-		'CW' => __( 'Carlow', 'invoicing' ),
434
-		'CN' => __( 'Cavan', 'invoicing' ),
435
-		'CE' => __( 'Clare', 'invoicing' ),
436
-		'CO' => __( 'Cork', 'invoicing' ),
437
-		'DL' => __( 'Donegal', 'invoicing' ),
438
-		'D'  => __( 'Dublin', 'invoicing' ),
439
-		'G'  => __( 'Galway', 'invoicing' ),
440
-		'KY' => __( 'Kerry', 'invoicing' ),
441
-		'KE' => __( 'Kildare', 'invoicing' ),
442
-		'KK' => __( 'Kilkenny', 'invoicing' ),
443
-		'LS' => __( 'Laois', 'invoicing' ),
444
-		'LM' => __( 'Leitrim', 'invoicing' ),
445
-		'LK' => __( 'Limerick', 'invoicing' ),
446
-		'LD' => __( 'Longford', 'invoicing' ),
447
-		'LH' => __( 'Louth', 'invoicing' ),
448
-		'MO' => __( 'Mayo', 'invoicing' ),
449
-		'MH' => __( 'Meath', 'invoicing' ),
450
-		'MN' => __( 'Monaghan', 'invoicing' ),
451
-		'OY' => __( 'Offaly', 'invoicing' ),
452
-		'RN' => __( 'Roscommon', 'invoicing' ),
453
-		'SO' => __( 'Sligo', 'invoicing' ),
454
-		'TA' => __( 'Tipperary', 'invoicing' ),
455
-		'WD' => __( 'Waterford', 'invoicing' ),
456
-		'WH' => __( 'Westmeath', 'invoicing' ),
457
-		'WX' => __( 'Wexford', 'invoicing' ),
458
-		'WW' => __( 'Wicklow', 'invoicing' ),
433
+		'CW' => __('Carlow', 'invoicing'),
434
+		'CN' => __('Cavan', 'invoicing'),
435
+		'CE' => __('Clare', 'invoicing'),
436
+		'CO' => __('Cork', 'invoicing'),
437
+		'DL' => __('Donegal', 'invoicing'),
438
+		'D'  => __('Dublin', 'invoicing'),
439
+		'G'  => __('Galway', 'invoicing'),
440
+		'KY' => __('Kerry', 'invoicing'),
441
+		'KE' => __('Kildare', 'invoicing'),
442
+		'KK' => __('Kilkenny', 'invoicing'),
443
+		'LS' => __('Laois', 'invoicing'),
444
+		'LM' => __('Leitrim', 'invoicing'),
445
+		'LK' => __('Limerick', 'invoicing'),
446
+		'LD' => __('Longford', 'invoicing'),
447
+		'LH' => __('Louth', 'invoicing'),
448
+		'MO' => __('Mayo', 'invoicing'),
449
+		'MH' => __('Meath', 'invoicing'),
450
+		'MN' => __('Monaghan', 'invoicing'),
451
+		'OY' => __('Offaly', 'invoicing'),
452
+		'RN' => __('Roscommon', 'invoicing'),
453
+		'SO' => __('Sligo', 'invoicing'),
454
+		'TA' => __('Tipperary', 'invoicing'),
455
+		'WD' => __('Waterford', 'invoicing'),
456
+		'WH' => __('Westmeath', 'invoicing'),
457
+		'WX' => __('Wexford', 'invoicing'),
458
+		'WW' => __('Wicklow', 'invoicing'),
459 459
 	),
460 460
 	'IN' => array( // Indian states.
461
-		'AP' => __( 'Andhra Pradesh', 'invoicing' ),
462
-		'AR' => __( 'Arunachal Pradesh', 'invoicing' ),
463
-		'AS' => __( 'Assam', 'invoicing' ),
464
-		'BR' => __( 'Bihar', 'invoicing' ),
465
-		'CT' => __( 'Chhattisgarh', 'invoicing' ),
466
-		'GA' => __( 'Goa', 'invoicing' ),
467
-		'GJ' => __( 'Gujarat', 'invoicing' ),
468
-		'HR' => __( 'Haryana', 'invoicing' ),
469
-		'HP' => __( 'Himachal Pradesh', 'invoicing' ),
470
-		'JK' => __( 'Jammu and Kashmir', 'invoicing' ),
471
-		'JH' => __( 'Jharkhand', 'invoicing' ),
472
-		'KA' => __( 'Karnataka', 'invoicing' ),
473
-		'KL' => __( 'Kerala', 'invoicing' ),
474
-		'MP' => __( 'Madhya Pradesh', 'invoicing' ),
475
-		'MH' => __( 'Maharashtra', 'invoicing' ),
476
-		'MN' => __( 'Manipur', 'invoicing' ),
477
-		'ML' => __( 'Meghalaya', 'invoicing' ),
478
-		'MZ' => __( 'Mizoram', 'invoicing' ),
479
-		'NL' => __( 'Nagaland', 'invoicing' ),
480
-		'OR' => __( 'Orissa', 'invoicing' ),
481
-		'PB' => __( 'Punjab', 'invoicing' ),
482
-		'RJ' => __( 'Rajasthan', 'invoicing' ),
483
-		'SK' => __( 'Sikkim', 'invoicing' ),
484
-		'TN' => __( 'Tamil Nadu', 'invoicing' ),
485
-		'TS' => __( 'Telangana', 'invoicing' ),
486
-		'TR' => __( 'Tripura', 'invoicing' ),
487
-		'UK' => __( 'Uttarakhand', 'invoicing' ),
488
-		'UP' => __( 'Uttar Pradesh', 'invoicing' ),
489
-		'WB' => __( 'West Bengal', 'invoicing' ),
490
-		'AN' => __( 'Andaman and Nicobar Islands', 'invoicing' ),
491
-		'CH' => __( 'Chandigarh', 'invoicing' ),
492
-		'DN' => __( 'Dadra and Nagar Haveli', 'invoicing' ),
493
-		'DD' => __( 'Daman and Diu', 'invoicing' ),
494
-		'DL' => __( 'Delhi', 'invoicing' ),
495
-		'LD' => __( 'Lakshadeep', 'invoicing' ),
496
-		'PY' => __( 'Pondicherry (Puducherry)', 'invoicing' ),
461
+		'AP' => __('Andhra Pradesh', 'invoicing'),
462
+		'AR' => __('Arunachal Pradesh', 'invoicing'),
463
+		'AS' => __('Assam', 'invoicing'),
464
+		'BR' => __('Bihar', 'invoicing'),
465
+		'CT' => __('Chhattisgarh', 'invoicing'),
466
+		'GA' => __('Goa', 'invoicing'),
467
+		'GJ' => __('Gujarat', 'invoicing'),
468
+		'HR' => __('Haryana', 'invoicing'),
469
+		'HP' => __('Himachal Pradesh', 'invoicing'),
470
+		'JK' => __('Jammu and Kashmir', 'invoicing'),
471
+		'JH' => __('Jharkhand', 'invoicing'),
472
+		'KA' => __('Karnataka', 'invoicing'),
473
+		'KL' => __('Kerala', 'invoicing'),
474
+		'MP' => __('Madhya Pradesh', 'invoicing'),
475
+		'MH' => __('Maharashtra', 'invoicing'),
476
+		'MN' => __('Manipur', 'invoicing'),
477
+		'ML' => __('Meghalaya', 'invoicing'),
478
+		'MZ' => __('Mizoram', 'invoicing'),
479
+		'NL' => __('Nagaland', 'invoicing'),
480
+		'OR' => __('Orissa', 'invoicing'),
481
+		'PB' => __('Punjab', 'invoicing'),
482
+		'RJ' => __('Rajasthan', 'invoicing'),
483
+		'SK' => __('Sikkim', 'invoicing'),
484
+		'TN' => __('Tamil Nadu', 'invoicing'),
485
+		'TS' => __('Telangana', 'invoicing'),
486
+		'TR' => __('Tripura', 'invoicing'),
487
+		'UK' => __('Uttarakhand', 'invoicing'),
488
+		'UP' => __('Uttar Pradesh', 'invoicing'),
489
+		'WB' => __('West Bengal', 'invoicing'),
490
+		'AN' => __('Andaman and Nicobar Islands', 'invoicing'),
491
+		'CH' => __('Chandigarh', 'invoicing'),
492
+		'DN' => __('Dadra and Nagar Haveli', 'invoicing'),
493
+		'DD' => __('Daman and Diu', 'invoicing'),
494
+		'DL' => __('Delhi', 'invoicing'),
495
+		'LD' => __('Lakshadeep', 'invoicing'),
496
+		'PY' => __('Pondicherry (Puducherry)', 'invoicing'),
497 497
 	),
498 498
 	'IR' => array( // Iran States.
499
-		'KHZ' => __( 'Khuzestan  (خوزستان)', 'invoicing' ),
500
-		'THR' => __( 'Tehran  (تهران)', 'invoicing' ),
501
-		'ILM' => __( 'Ilaam (ایلام)', 'invoicing' ),
502
-		'BHR' => __( 'Bushehr (بوشهر)', 'invoicing' ),
503
-		'ADL' => __( 'Ardabil (اردبیل)', 'invoicing' ),
504
-		'ESF' => __( 'Isfahan (اصفهان)', 'invoicing' ),
505
-		'YZD' => __( 'Yazd (یزد)', 'invoicing' ),
506
-		'KRH' => __( 'Kermanshah (کرمانشاه)', 'invoicing' ),
507
-		'KRN' => __( 'Kerman (کرمان)', 'invoicing' ),
508
-		'HDN' => __( 'Hamadan (همدان)', 'invoicing' ),
509
-		'GZN' => __( 'Ghazvin (قزوین)', 'invoicing' ),
510
-		'ZJN' => __( 'Zanjan (زنجان)', 'invoicing' ),
511
-		'LRS' => __( 'Luristan (لرستان)', 'invoicing' ),
512
-		'ABZ' => __( 'Alborz (البرز)', 'invoicing' ),
513
-		'EAZ' => __( 'East Azarbaijan (آذربایجان شرقی)', 'invoicing' ),
514
-		'WAZ' => __( 'West Azarbaijan (آذربایجان غربی)', 'invoicing' ),
515
-		'CHB' => __( 'Chaharmahal and Bakhtiari (چهارمحال و بختیاری)', 'invoicing' ),
516
-		'SKH' => __( 'South Khorasan (خراسان جنوبی)', 'invoicing' ),
517
-		'RKH' => __( 'Razavi Khorasan (خراسان رضوی)', 'invoicing' ),
518
-		'NKH' => __( 'North Khorasan (خراسان شمالی)', 'invoicing' ),
519
-		'SMN' => __( 'Semnan (سمنان)', 'invoicing' ),
520
-		'FRS' => __( 'Fars (فارس)', 'invoicing' ),
521
-		'QHM' => __( 'Qom (قم)', 'invoicing' ),
522
-		'KRD' => __( 'Kurdistan / کردستان)', 'invoicing' ),
523
-		'KBD' => __( 'Kohgiluyeh and BoyerAhmad (کهگیلوییه و بویراحمد)', 'invoicing' ),
524
-		'GLS' => __( 'Golestan (گلستان)', 'invoicing' ),
525
-		'GIL' => __( 'Gilan (گیلان)', 'invoicing' ),
526
-		'MZN' => __( 'Mazandaran (مازندران)', 'invoicing' ),
527
-		'MKZ' => __( 'Markazi (مرکزی)', 'invoicing' ),
528
-		'HRZ' => __( 'Hormozgan (هرمزگان)', 'invoicing' ),
529
-		'SBN' => __( 'Sistan and Baluchestan (سیستان و بلوچستان)', 'invoicing' ),
499
+		'KHZ' => __('Khuzestan  (خوزستان)', 'invoicing'),
500
+		'THR' => __('Tehran  (تهران)', 'invoicing'),
501
+		'ILM' => __('Ilaam (ایلام)', 'invoicing'),
502
+		'BHR' => __('Bushehr (بوشهر)', 'invoicing'),
503
+		'ADL' => __('Ardabil (اردبیل)', 'invoicing'),
504
+		'ESF' => __('Isfahan (اصفهان)', 'invoicing'),
505
+		'YZD' => __('Yazd (یزد)', 'invoicing'),
506
+		'KRH' => __('Kermanshah (کرمانشاه)', 'invoicing'),
507
+		'KRN' => __('Kerman (کرمان)', 'invoicing'),
508
+		'HDN' => __('Hamadan (همدان)', 'invoicing'),
509
+		'GZN' => __('Ghazvin (قزوین)', 'invoicing'),
510
+		'ZJN' => __('Zanjan (زنجان)', 'invoicing'),
511
+		'LRS' => __('Luristan (لرستان)', 'invoicing'),
512
+		'ABZ' => __('Alborz (البرز)', 'invoicing'),
513
+		'EAZ' => __('East Azarbaijan (آذربایجان شرقی)', 'invoicing'),
514
+		'WAZ' => __('West Azarbaijan (آذربایجان غربی)', 'invoicing'),
515
+		'CHB' => __('Chaharmahal and Bakhtiari (چهارمحال و بختیاری)', 'invoicing'),
516
+		'SKH' => __('South Khorasan (خراسان جنوبی)', 'invoicing'),
517
+		'RKH' => __('Razavi Khorasan (خراسان رضوی)', 'invoicing'),
518
+		'NKH' => __('North Khorasan (خراسان شمالی)', 'invoicing'),
519
+		'SMN' => __('Semnan (سمنان)', 'invoicing'),
520
+		'FRS' => __('Fars (فارس)', 'invoicing'),
521
+		'QHM' => __('Qom (قم)', 'invoicing'),
522
+		'KRD' => __('Kurdistan / کردستان)', 'invoicing'),
523
+		'KBD' => __('Kohgiluyeh and BoyerAhmad (کهگیلوییه و بویراحمد)', 'invoicing'),
524
+		'GLS' => __('Golestan (گلستان)', 'invoicing'),
525
+		'GIL' => __('Gilan (گیلان)', 'invoicing'),
526
+		'MZN' => __('Mazandaran (مازندران)', 'invoicing'),
527
+		'MKZ' => __('Markazi (مرکزی)', 'invoicing'),
528
+		'HRZ' => __('Hormozgan (هرمزگان)', 'invoicing'),
529
+		'SBN' => __('Sistan and Baluchestan (سیستان و بلوچستان)', 'invoicing'),
530 530
 	),
531 531
 	'IS' => array(),
532 532
 	'IT' => array( // Italy Provinces.
533
-		'AG' => __( 'Agrigento', 'invoicing' ),
534
-		'AL' => __( 'Alessandria', 'invoicing' ),
535
-		'AN' => __( 'Ancona', 'invoicing' ),
536
-		'AO' => __( 'Aosta', 'invoicing' ),
537
-		'AR' => __( 'Arezzo', 'invoicing' ),
538
-		'AP' => __( 'Ascoli Piceno', 'invoicing' ),
539
-		'AT' => __( 'Asti', 'invoicing' ),
540
-		'AV' => __( 'Avellino', 'invoicing' ),
541
-		'BA' => __( 'Bari', 'invoicing' ),
542
-		'BT' => __( 'Barletta-Andria-Trani', 'invoicing' ),
543
-		'BL' => __( 'Belluno', 'invoicing' ),
544
-		'BN' => __( 'Benevento', 'invoicing' ),
545
-		'BG' => __( 'Bergamo', 'invoicing' ),
546
-		'BI' => __( 'Biella', 'invoicing' ),
547
-		'BO' => __( 'Bologna', 'invoicing' ),
548
-		'BZ' => __( 'Bolzano', 'invoicing' ),
549
-		'BS' => __( 'Brescia', 'invoicing' ),
550
-		'BR' => __( 'Brindisi', 'invoicing' ),
551
-		'CA' => __( 'Cagliari', 'invoicing' ),
552
-		'CL' => __( 'Caltanissetta', 'invoicing' ),
553
-		'CB' => __( 'Campobasso', 'invoicing' ),
554
-		'CE' => __( 'Caserta', 'invoicing' ),
555
-		'CT' => __( 'Catania', 'invoicing' ),
556
-		'CZ' => __( 'Catanzaro', 'invoicing' ),
557
-		'CH' => __( 'Chieti', 'invoicing' ),
558
-		'CO' => __( 'Como', 'invoicing' ),
559
-		'CS' => __( 'Cosenza', 'invoicing' ),
560
-		'CR' => __( 'Cremona', 'invoicing' ),
561
-		'KR' => __( 'Crotone', 'invoicing' ),
562
-		'CN' => __( 'Cuneo', 'invoicing' ),
563
-		'EN' => __( 'Enna', 'invoicing' ),
564
-		'FM' => __( 'Fermo', 'invoicing' ),
565
-		'FE' => __( 'Ferrara', 'invoicing' ),
566
-		'FI' => __( 'Firenze', 'invoicing' ),
567
-		'FG' => __( 'Foggia', 'invoicing' ),
568
-		'FC' => __( 'Forlì-Cesena', 'invoicing' ),
569
-		'FR' => __( 'Frosinone', 'invoicing' ),
570
-		'GE' => __( 'Genova', 'invoicing' ),
571
-		'GO' => __( 'Gorizia', 'invoicing' ),
572
-		'GR' => __( 'Grosseto', 'invoicing' ),
573
-		'IM' => __( 'Imperia', 'invoicing' ),
574
-		'IS' => __( 'Isernia', 'invoicing' ),
575
-		'SP' => __( 'La Spezia', 'invoicing' ),
576
-		'AQ' => __( "L'Aquila", 'invoicing' ),
577
-		'LT' => __( 'Latina', 'invoicing' ),
578
-		'LE' => __( 'Lecce', 'invoicing' ),
579
-		'LC' => __( 'Lecco', 'invoicing' ),
580
-		'LI' => __( 'Livorno', 'invoicing' ),
581
-		'LO' => __( 'Lodi', 'invoicing' ),
582
-		'LU' => __( 'Lucca', 'invoicing' ),
583
-		'MC' => __( 'Macerata', 'invoicing' ),
584
-		'MN' => __( 'Mantova', 'invoicing' ),
585
-		'MS' => __( 'Massa-Carrara', 'invoicing' ),
586
-		'MT' => __( 'Matera', 'invoicing' ),
587
-		'ME' => __( 'Messina', 'invoicing' ),
588
-		'MI' => __( 'Milano', 'invoicing' ),
589
-		'MO' => __( 'Modena', 'invoicing' ),
590
-		'MB' => __( 'Monza e della Brianza', 'invoicing' ),
591
-		'NA' => __( 'Napoli', 'invoicing' ),
592
-		'NO' => __( 'Novara', 'invoicing' ),
593
-		'NU' => __( 'Nuoro', 'invoicing' ),
594
-		'OR' => __( 'Oristano', 'invoicing' ),
595
-		'PD' => __( 'Padova', 'invoicing' ),
596
-		'PA' => __( 'Palermo', 'invoicing' ),
597
-		'PR' => __( 'Parma', 'invoicing' ),
598
-		'PV' => __( 'Pavia', 'invoicing' ),
599
-		'PG' => __( 'Perugia', 'invoicing' ),
600
-		'PU' => __( 'Pesaro e Urbino', 'invoicing' ),
601
-		'PE' => __( 'Pescara', 'invoicing' ),
602
-		'PC' => __( 'Piacenza', 'invoicing' ),
603
-		'PI' => __( 'Pisa', 'invoicing' ),
604
-		'PT' => __( 'Pistoia', 'invoicing' ),
605
-		'PN' => __( 'Pordenone', 'invoicing' ),
606
-		'PZ' => __( 'Potenza', 'invoicing' ),
607
-		'PO' => __( 'Prato', 'invoicing' ),
608
-		'RG' => __( 'Ragusa', 'invoicing' ),
609
-		'RA' => __( 'Ravenna', 'invoicing' ),
610
-		'RC' => __( 'Reggio Calabria', 'invoicing' ),
611
-		'RE' => __( 'Reggio Emilia', 'invoicing' ),
612
-		'RI' => __( 'Rieti', 'invoicing' ),
613
-		'RN' => __( 'Rimini', 'invoicing' ),
614
-		'RM' => __( 'Roma', 'invoicing' ),
615
-		'RO' => __( 'Rovigo', 'invoicing' ),
616
-		'SA' => __( 'Salerno', 'invoicing' ),
617
-		'SS' => __( 'Sassari', 'invoicing' ),
618
-		'SV' => __( 'Savona', 'invoicing' ),
619
-		'SI' => __( 'Siena', 'invoicing' ),
620
-		'SR' => __( 'Siracusa', 'invoicing' ),
621
-		'SO' => __( 'Sondrio', 'invoicing' ),
622
-		'SU' => __( 'Sud Sardegna', 'invoicing' ),
623
-		'TA' => __( 'Taranto', 'invoicing' ),
624
-		'TE' => __( 'Teramo', 'invoicing' ),
625
-		'TR' => __( 'Terni', 'invoicing' ),
626
-		'TO' => __( 'Torino', 'invoicing' ),
627
-		'TP' => __( 'Trapani', 'invoicing' ),
628
-		'TN' => __( 'Trento', 'invoicing' ),
629
-		'TV' => __( 'Treviso', 'invoicing' ),
630
-		'TS' => __( 'Trieste', 'invoicing' ),
631
-		'UD' => __( 'Udine', 'invoicing' ),
632
-		'VA' => __( 'Varese', 'invoicing' ),
633
-		'VE' => __( 'Venezia', 'invoicing' ),
634
-		'VB' => __( 'Verbano-Cusio-Ossola', 'invoicing' ),
635
-		'VC' => __( 'Vercelli', 'invoicing' ),
636
-		'VR' => __( 'Verona', 'invoicing' ),
637
-		'VV' => __( 'Vibo Valentia', 'invoicing' ),
638
-		'VI' => __( 'Vicenza', 'invoicing' ),
639
-		'VT' => __( 'Viterbo', 'invoicing' ),
533
+		'AG' => __('Agrigento', 'invoicing'),
534
+		'AL' => __('Alessandria', 'invoicing'),
535
+		'AN' => __('Ancona', 'invoicing'),
536
+		'AO' => __('Aosta', 'invoicing'),
537
+		'AR' => __('Arezzo', 'invoicing'),
538
+		'AP' => __('Ascoli Piceno', 'invoicing'),
539
+		'AT' => __('Asti', 'invoicing'),
540
+		'AV' => __('Avellino', 'invoicing'),
541
+		'BA' => __('Bari', 'invoicing'),
542
+		'BT' => __('Barletta-Andria-Trani', 'invoicing'),
543
+		'BL' => __('Belluno', 'invoicing'),
544
+		'BN' => __('Benevento', 'invoicing'),
545
+		'BG' => __('Bergamo', 'invoicing'),
546
+		'BI' => __('Biella', 'invoicing'),
547
+		'BO' => __('Bologna', 'invoicing'),
548
+		'BZ' => __('Bolzano', 'invoicing'),
549
+		'BS' => __('Brescia', 'invoicing'),
550
+		'BR' => __('Brindisi', 'invoicing'),
551
+		'CA' => __('Cagliari', 'invoicing'),
552
+		'CL' => __('Caltanissetta', 'invoicing'),
553
+		'CB' => __('Campobasso', 'invoicing'),
554
+		'CE' => __('Caserta', 'invoicing'),
555
+		'CT' => __('Catania', 'invoicing'),
556
+		'CZ' => __('Catanzaro', 'invoicing'),
557
+		'CH' => __('Chieti', 'invoicing'),
558
+		'CO' => __('Como', 'invoicing'),
559
+		'CS' => __('Cosenza', 'invoicing'),
560
+		'CR' => __('Cremona', 'invoicing'),
561
+		'KR' => __('Crotone', 'invoicing'),
562
+		'CN' => __('Cuneo', 'invoicing'),
563
+		'EN' => __('Enna', 'invoicing'),
564
+		'FM' => __('Fermo', 'invoicing'),
565
+		'FE' => __('Ferrara', 'invoicing'),
566
+		'FI' => __('Firenze', 'invoicing'),
567
+		'FG' => __('Foggia', 'invoicing'),
568
+		'FC' => __('Forlì-Cesena', 'invoicing'),
569
+		'FR' => __('Frosinone', 'invoicing'),
570
+		'GE' => __('Genova', 'invoicing'),
571
+		'GO' => __('Gorizia', 'invoicing'),
572
+		'GR' => __('Grosseto', 'invoicing'),
573
+		'IM' => __('Imperia', 'invoicing'),
574
+		'IS' => __('Isernia', 'invoicing'),
575
+		'SP' => __('La Spezia', 'invoicing'),
576
+		'AQ' => __("L'Aquila", 'invoicing'),
577
+		'LT' => __('Latina', 'invoicing'),
578
+		'LE' => __('Lecce', 'invoicing'),
579
+		'LC' => __('Lecco', 'invoicing'),
580
+		'LI' => __('Livorno', 'invoicing'),
581
+		'LO' => __('Lodi', 'invoicing'),
582
+		'LU' => __('Lucca', 'invoicing'),
583
+		'MC' => __('Macerata', 'invoicing'),
584
+		'MN' => __('Mantova', 'invoicing'),
585
+		'MS' => __('Massa-Carrara', 'invoicing'),
586
+		'MT' => __('Matera', 'invoicing'),
587
+		'ME' => __('Messina', 'invoicing'),
588
+		'MI' => __('Milano', 'invoicing'),
589
+		'MO' => __('Modena', 'invoicing'),
590
+		'MB' => __('Monza e della Brianza', 'invoicing'),
591
+		'NA' => __('Napoli', 'invoicing'),
592
+		'NO' => __('Novara', 'invoicing'),
593
+		'NU' => __('Nuoro', 'invoicing'),
594
+		'OR' => __('Oristano', 'invoicing'),
595
+		'PD' => __('Padova', 'invoicing'),
596
+		'PA' => __('Palermo', 'invoicing'),
597
+		'PR' => __('Parma', 'invoicing'),
598
+		'PV' => __('Pavia', 'invoicing'),
599
+		'PG' => __('Perugia', 'invoicing'),
600
+		'PU' => __('Pesaro e Urbino', 'invoicing'),
601
+		'PE' => __('Pescara', 'invoicing'),
602
+		'PC' => __('Piacenza', 'invoicing'),
603
+		'PI' => __('Pisa', 'invoicing'),
604
+		'PT' => __('Pistoia', 'invoicing'),
605
+		'PN' => __('Pordenone', 'invoicing'),
606
+		'PZ' => __('Potenza', 'invoicing'),
607
+		'PO' => __('Prato', 'invoicing'),
608
+		'RG' => __('Ragusa', 'invoicing'),
609
+		'RA' => __('Ravenna', 'invoicing'),
610
+		'RC' => __('Reggio Calabria', 'invoicing'),
611
+		'RE' => __('Reggio Emilia', 'invoicing'),
612
+		'RI' => __('Rieti', 'invoicing'),
613
+		'RN' => __('Rimini', 'invoicing'),
614
+		'RM' => __('Roma', 'invoicing'),
615
+		'RO' => __('Rovigo', 'invoicing'),
616
+		'SA' => __('Salerno', 'invoicing'),
617
+		'SS' => __('Sassari', 'invoicing'),
618
+		'SV' => __('Savona', 'invoicing'),
619
+		'SI' => __('Siena', 'invoicing'),
620
+		'SR' => __('Siracusa', 'invoicing'),
621
+		'SO' => __('Sondrio', 'invoicing'),
622
+		'SU' => __('Sud Sardegna', 'invoicing'),
623
+		'TA' => __('Taranto', 'invoicing'),
624
+		'TE' => __('Teramo', 'invoicing'),
625
+		'TR' => __('Terni', 'invoicing'),
626
+		'TO' => __('Torino', 'invoicing'),
627
+		'TP' => __('Trapani', 'invoicing'),
628
+		'TN' => __('Trento', 'invoicing'),
629
+		'TV' => __('Treviso', 'invoicing'),
630
+		'TS' => __('Trieste', 'invoicing'),
631
+		'UD' => __('Udine', 'invoicing'),
632
+		'VA' => __('Varese', 'invoicing'),
633
+		'VE' => __('Venezia', 'invoicing'),
634
+		'VB' => __('Verbano-Cusio-Ossola', 'invoicing'),
635
+		'VC' => __('Vercelli', 'invoicing'),
636
+		'VR' => __('Verona', 'invoicing'),
637
+		'VV' => __('Vibo Valentia', 'invoicing'),
638
+		'VI' => __('Vicenza', 'invoicing'),
639
+		'VT' => __('Viterbo', 'invoicing'),
640 640
 	),
641 641
 	'IL' => array(),
642 642
 	'IM' => array(),
@@ -648,903 +648,903 @@  discard block
 block discarded – undo
648 648
 	 * The suffix corresponds with the Japanese translation file.
649 649
 	 */
650 650
 	'JP' => array(
651
-		'JP01' => __( 'Hokkaido', 'invoicing' ),
652
-		'JP02' => __( 'Aomori', 'invoicing' ),
653
-		'JP03' => __( 'Iwate', 'invoicing' ),
654
-		'JP04' => __( 'Miyagi', 'invoicing' ),
655
-		'JP05' => __( 'Akita', 'invoicing' ),
656
-		'JP06' => __( 'Yamagata', 'invoicing' ),
657
-		'JP07' => __( 'Fukushima', 'invoicing' ),
658
-		'JP08' => __( 'Ibaraki', 'invoicing' ),
659
-		'JP09' => __( 'Tochigi', 'invoicing' ),
660
-		'JP10' => __( 'Gunma', 'invoicing' ),
661
-		'JP11' => __( 'Saitama', 'invoicing' ),
662
-		'JP12' => __( 'Chiba', 'invoicing' ),
663
-		'JP13' => __( 'Tokyo', 'invoicing' ),
664
-		'JP14' => __( 'Kanagawa', 'invoicing' ),
665
-		'JP15' => __( 'Niigata', 'invoicing' ),
666
-		'JP16' => __( 'Toyama', 'invoicing' ),
667
-		'JP17' => __( 'Ishikawa', 'invoicing' ),
668
-		'JP18' => __( 'Fukui', 'invoicing' ),
669
-		'JP19' => __( 'Yamanashi', 'invoicing' ),
670
-		'JP20' => __( 'Nagano', 'invoicing' ),
671
-		'JP21' => __( 'Gifu', 'invoicing' ),
672
-		'JP22' => __( 'Shizuoka', 'invoicing' ),
673
-		'JP23' => __( 'Aichi', 'invoicing' ),
674
-		'JP24' => __( 'Mie', 'invoicing' ),
675
-		'JP25' => __( 'Shiga', 'invoicing' ),
676
-		'JP26' => __( 'Kyoto', 'invoicing' ),
677
-		'JP27' => __( 'Osaka', 'invoicing' ),
678
-		'JP28' => __( 'Hyogo', 'invoicing' ),
679
-		'JP29' => __( 'Nara', 'invoicing' ),
680
-		'JP30' => __( 'Wakayama', 'invoicing' ),
681
-		'JP31' => __( 'Tottori', 'invoicing' ),
682
-		'JP32' => __( 'Shimane', 'invoicing' ),
683
-		'JP33' => __( 'Okayama', 'invoicing' ),
684
-		'JP34' => __( 'Hiroshima', 'invoicing' ),
685
-		'JP35' => __( 'Yamaguchi', 'invoicing' ),
686
-		'JP36' => __( 'Tokushima', 'invoicing' ),
687
-		'JP37' => __( 'Kagawa', 'invoicing' ),
688
-		'JP38' => __( 'Ehime', 'invoicing' ),
689
-		'JP39' => __( 'Kochi', 'invoicing' ),
690
-		'JP40' => __( 'Fukuoka', 'invoicing' ),
691
-		'JP41' => __( 'Saga', 'invoicing' ),
692
-		'JP42' => __( 'Nagasaki', 'invoicing' ),
693
-		'JP43' => __( 'Kumamoto', 'invoicing' ),
694
-		'JP44' => __( 'Oita', 'invoicing' ),
695
-		'JP45' => __( 'Miyazaki', 'invoicing' ),
696
-		'JP46' => __( 'Kagoshima', 'invoicing' ),
697
-		'JP47' => __( 'Okinawa', 'invoicing' ),
651
+		'JP01' => __('Hokkaido', 'invoicing'),
652
+		'JP02' => __('Aomori', 'invoicing'),
653
+		'JP03' => __('Iwate', 'invoicing'),
654
+		'JP04' => __('Miyagi', 'invoicing'),
655
+		'JP05' => __('Akita', 'invoicing'),
656
+		'JP06' => __('Yamagata', 'invoicing'),
657
+		'JP07' => __('Fukushima', 'invoicing'),
658
+		'JP08' => __('Ibaraki', 'invoicing'),
659
+		'JP09' => __('Tochigi', 'invoicing'),
660
+		'JP10' => __('Gunma', 'invoicing'),
661
+		'JP11' => __('Saitama', 'invoicing'),
662
+		'JP12' => __('Chiba', 'invoicing'),
663
+		'JP13' => __('Tokyo', 'invoicing'),
664
+		'JP14' => __('Kanagawa', 'invoicing'),
665
+		'JP15' => __('Niigata', 'invoicing'),
666
+		'JP16' => __('Toyama', 'invoicing'),
667
+		'JP17' => __('Ishikawa', 'invoicing'),
668
+		'JP18' => __('Fukui', 'invoicing'),
669
+		'JP19' => __('Yamanashi', 'invoicing'),
670
+		'JP20' => __('Nagano', 'invoicing'),
671
+		'JP21' => __('Gifu', 'invoicing'),
672
+		'JP22' => __('Shizuoka', 'invoicing'),
673
+		'JP23' => __('Aichi', 'invoicing'),
674
+		'JP24' => __('Mie', 'invoicing'),
675
+		'JP25' => __('Shiga', 'invoicing'),
676
+		'JP26' => __('Kyoto', 'invoicing'),
677
+		'JP27' => __('Osaka', 'invoicing'),
678
+		'JP28' => __('Hyogo', 'invoicing'),
679
+		'JP29' => __('Nara', 'invoicing'),
680
+		'JP30' => __('Wakayama', 'invoicing'),
681
+		'JP31' => __('Tottori', 'invoicing'),
682
+		'JP32' => __('Shimane', 'invoicing'),
683
+		'JP33' => __('Okayama', 'invoicing'),
684
+		'JP34' => __('Hiroshima', 'invoicing'),
685
+		'JP35' => __('Yamaguchi', 'invoicing'),
686
+		'JP36' => __('Tokushima', 'invoicing'),
687
+		'JP37' => __('Kagawa', 'invoicing'),
688
+		'JP38' => __('Ehime', 'invoicing'),
689
+		'JP39' => __('Kochi', 'invoicing'),
690
+		'JP40' => __('Fukuoka', 'invoicing'),
691
+		'JP41' => __('Saga', 'invoicing'),
692
+		'JP42' => __('Nagasaki', 'invoicing'),
693
+		'JP43' => __('Kumamoto', 'invoicing'),
694
+		'JP44' => __('Oita', 'invoicing'),
695
+		'JP45' => __('Miyazaki', 'invoicing'),
696
+		'JP46' => __('Kagoshima', 'invoicing'),
697
+		'JP47' => __('Okinawa', 'invoicing'),
698 698
 	),
699 699
 	'KE' => array( // Kenya Counties.
700
-		'1'  => __( 'Mombasa', 'invoicing' ),
701
-		'2'  => __( 'Kwale', 'invoicing' ),
702
-		'3'  => __( 'Kilifi', 'invoicing' ),
703
-		'4'  => __( 'Tana River', 'invoicing' ),
704
-		'5'  => __( 'Lamu', 'invoicing' ),
705
-		'6'  => __( 'Taita-Taveta', 'invoicing' ),
706
-		'7'  => __( 'Garissa', 'invoicing' ),
707
-		'8'  => __( 'Wajir', 'invoicing' ),
708
-		'9'  => __( 'Mandera', 'invoicing' ),
709
-		'10' => __( 'Marsabit', 'invoicing' ),
710
-		'11' => __( 'Isiolo', 'invoicing' ),
711
-		'12' => __( 'Meru', 'invoicing' ),
712
-		'13' => __( 'Tharaka-Nithi', 'invoicing' ),
713
-		'14' => __( 'Embu', 'invoicing' ),
714
-		'15' => __( 'Kitui', 'invoicing' ),
715
-		'16' => __( 'Machakos', 'invoicing' ),
716
-		'17' => __( 'Makueni', 'invoicing' ),
717
-		'18' => __( 'Nyandarua', 'invoicing' ),
718
-		'19' => __( 'Nyeri', 'invoicing' ),
719
-		'20' => __( 'Kirinyaga', 'invoicing' ),
720
-		'21' => __( "Murang'a", 'invoicing' ),
721
-		'22' => __( 'Kiambu', 'invoicing' ),
722
-		'23' => __( 'Turkana', 'invoicing' ),
723
-		'24' => __( 'West Pokot', 'invoicing' ),
724
-		'25' => __( 'Samburu', 'invoicing' ),
725
-		'26' => __( 'Trans-Nzoia', 'invoicing' ),
726
-		'27' => __( 'Uasin Gishu', 'invoicing' ),
727
-		'28' => __( 'Elgeyo-Marakwet', 'invoicing' ),
728
-		'29' => __( 'Nandi', 'invoicing' ),
729
-		'30' => __( 'Baringo', 'invoicing' ),
730
-		'31' => __( 'Laikipia', 'invoicing' ),
731
-		'32' => __( 'Nakuru', 'invoicing' ),
732
-		'33' => __( 'Narok', 'invoicing' ),
733
-		'34' => __( 'Kajiado', 'invoicing' ),
734
-		'35' => __( 'Kericho', 'invoicing' ),
735
-		'36' => __( 'Bomet', 'invoicing' ),
736
-		'37' => __( 'Kakamega', 'invoicing' ),
737
-		'38' => __( 'Vihiga', 'invoicing' ),
738
-		'39' => __( 'Bungoma', 'invoicing' ),
739
-		'40' => __( 'Busia', 'invoicing' ),
740
-		'41' => __( 'Siaya', 'invoicing' ),
741
-		'42' => __( 'Kisumu', 'invoicing' ),
742
-		'43' => __( 'Homa bay', 'invoicing' ),
743
-		'44' => __( 'Migori', 'invoicing' ),
744
-		'45' => __( 'Kisii', 'invoicing' ),
745
-		'46' => __( 'Nyamira', 'invoicing' ),
746
-		'47' => __( 'Nairobi', 'invoicing' ),
700
+		'1'  => __('Mombasa', 'invoicing'),
701
+		'2'  => __('Kwale', 'invoicing'),
702
+		'3'  => __('Kilifi', 'invoicing'),
703
+		'4'  => __('Tana River', 'invoicing'),
704
+		'5'  => __('Lamu', 'invoicing'),
705
+		'6'  => __('Taita-Taveta', 'invoicing'),
706
+		'7'  => __('Garissa', 'invoicing'),
707
+		'8'  => __('Wajir', 'invoicing'),
708
+		'9'  => __('Mandera', 'invoicing'),
709
+		'10' => __('Marsabit', 'invoicing'),
710
+		'11' => __('Isiolo', 'invoicing'),
711
+		'12' => __('Meru', 'invoicing'),
712
+		'13' => __('Tharaka-Nithi', 'invoicing'),
713
+		'14' => __('Embu', 'invoicing'),
714
+		'15' => __('Kitui', 'invoicing'),
715
+		'16' => __('Machakos', 'invoicing'),
716
+		'17' => __('Makueni', 'invoicing'),
717
+		'18' => __('Nyandarua', 'invoicing'),
718
+		'19' => __('Nyeri', 'invoicing'),
719
+		'20' => __('Kirinyaga', 'invoicing'),
720
+		'21' => __("Murang'a", 'invoicing'),
721
+		'22' => __('Kiambu', 'invoicing'),
722
+		'23' => __('Turkana', 'invoicing'),
723
+		'24' => __('West Pokot', 'invoicing'),
724
+		'25' => __('Samburu', 'invoicing'),
725
+		'26' => __('Trans-Nzoia', 'invoicing'),
726
+		'27' => __('Uasin Gishu', 'invoicing'),
727
+		'28' => __('Elgeyo-Marakwet', 'invoicing'),
728
+		'29' => __('Nandi', 'invoicing'),
729
+		'30' => __('Baringo', 'invoicing'),
730
+		'31' => __('Laikipia', 'invoicing'),
731
+		'32' => __('Nakuru', 'invoicing'),
732
+		'33' => __('Narok', 'invoicing'),
733
+		'34' => __('Kajiado', 'invoicing'),
734
+		'35' => __('Kericho', 'invoicing'),
735
+		'36' => __('Bomet', 'invoicing'),
736
+		'37' => __('Kakamega', 'invoicing'),
737
+		'38' => __('Vihiga', 'invoicing'),
738
+		'39' => __('Bungoma', 'invoicing'),
739
+		'40' => __('Busia', 'invoicing'),
740
+		'41' => __('Siaya', 'invoicing'),
741
+		'42' => __('Kisumu', 'invoicing'),
742
+		'43' => __('Homa bay', 'invoicing'),
743
+		'44' => __('Migori', 'invoicing'),
744
+		'45' => __('Kisii', 'invoicing'),
745
+		'46' => __('Nyamira', 'invoicing'),
746
+		'47' => __('Nairobi', 'invoicing'),
747 747
 	),
748 748
 	'KR' => array(),
749 749
 	'KW' => array(),
750 750
 	'LB' => array(),
751 751
 	'LR' => array( // Liberia provinces.
752
-		'BM' => __( 'Bomi', 'invoicing' ),
753
-		'BN' => __( 'Bong', 'invoicing' ),
754
-		'GA' => __( 'Gbarpolu', 'invoicing' ),
755
-		'GB' => __( 'Grand Bassa', 'invoicing' ),
756
-		'GC' => __( 'Grand Cape Mount', 'invoicing' ),
757
-		'GG' => __( 'Grand Gedeh', 'invoicing' ),
758
-		'GK' => __( 'Grand Kru', 'invoicing' ),
759
-		'LO' => __( 'Lofa', 'invoicing' ),
760
-		'MA' => __( 'Margibi', 'invoicing' ),
761
-		'MY' => __( 'Maryland', 'invoicing' ),
762
-		'MO' => __( 'Montserrado', 'invoicing' ),
763
-		'NM' => __( 'Nimba', 'invoicing' ),
764
-		'RV' => __( 'Rivercess', 'invoicing' ),
765
-		'RG' => __( 'River Gee', 'invoicing' ),
766
-		'SN' => __( 'Sinoe', 'invoicing' ),
752
+		'BM' => __('Bomi', 'invoicing'),
753
+		'BN' => __('Bong', 'invoicing'),
754
+		'GA' => __('Gbarpolu', 'invoicing'),
755
+		'GB' => __('Grand Bassa', 'invoicing'),
756
+		'GC' => __('Grand Cape Mount', 'invoicing'),
757
+		'GG' => __('Grand Gedeh', 'invoicing'),
758
+		'GK' => __('Grand Kru', 'invoicing'),
759
+		'LO' => __('Lofa', 'invoicing'),
760
+		'MA' => __('Margibi', 'invoicing'),
761
+		'MY' => __('Maryland', 'invoicing'),
762
+		'MO' => __('Montserrado', 'invoicing'),
763
+		'NM' => __('Nimba', 'invoicing'),
764
+		'RV' => __('Rivercess', 'invoicing'),
765
+		'RG' => __('River Gee', 'invoicing'),
766
+		'SN' => __('Sinoe', 'invoicing'),
767 767
 	),
768 768
 	'LU' => array(),
769 769
 	'MD' => array( // Moldova states.
770
-		'C'  => __( 'Chi&#537;in&#259;u', 'invoicing' ),
771
-		'BL' => __( 'B&#259;l&#539;i', 'invoicing' ),
772
-		'AN' => __( 'Anenii Noi', 'invoicing' ),
773
-		'BS' => __( 'Basarabeasca', 'invoicing' ),
774
-		'BR' => __( 'Briceni', 'invoicing' ),
775
-		'CH' => __( 'Cahul', 'invoicing' ),
776
-		'CT' => __( 'Cantemir', 'invoicing' ),
777
-		'CL' => __( 'C&#259;l&#259;ra&#537;i', 'invoicing' ),
778
-		'CS' => __( 'C&#259;u&#537;eni', 'invoicing' ),
779
-		'CM' => __( 'Cimi&#537;lia', 'invoicing' ),
780
-		'CR' => __( 'Criuleni', 'invoicing' ),
781
-		'DN' => __( 'Dondu&#537;eni', 'invoicing' ),
782
-		'DR' => __( 'Drochia', 'invoicing' ),
783
-		'DB' => __( 'Dub&#259;sari', 'invoicing' ),
784
-		'ED' => __( 'Edine&#539;', 'invoicing' ),
785
-		'FL' => __( 'F&#259;le&#537;ti', 'invoicing' ),
786
-		'FR' => __( 'Flore&#537;ti', 'invoicing' ),
787
-		'GE' => __( 'UTA G&#259;g&#259;uzia', 'invoicing' ),
788
-		'GL' => __( 'Glodeni', 'invoicing' ),
789
-		'HN' => __( 'H&icirc;nce&#537;ti', 'invoicing' ),
790
-		'IL' => __( 'Ialoveni', 'invoicing' ),
791
-		'LV' => __( 'Leova', 'invoicing' ),
792
-		'NS' => __( 'Nisporeni', 'invoicing' ),
793
-		'OC' => __( 'Ocni&#539;a', 'invoicing' ),
794
-		'OR' => __( 'Orhei', 'invoicing' ),
795
-		'RZ' => __( 'Rezina', 'invoicing' ),
796
-		'RS' => __( 'R&icirc;&#537;cani', 'invoicing' ),
797
-		'SG' => __( 'S&icirc;ngerei', 'invoicing' ),
798
-		'SR' => __( 'Soroca', 'invoicing' ),
799
-		'ST' => __( 'Str&#259;&#537;eni', 'invoicing' ),
800
-		'SD' => __( '&#536;old&#259;ne&#537;ti', 'invoicing' ),
801
-		'SV' => __( '&#536;tefan Vod&#259;', 'invoicing' ),
802
-		'TR' => __( 'Taraclia', 'invoicing' ),
803
-		'TL' => __( 'Telene&#537;ti', 'invoicing' ),
804
-		'UN' => __( 'Ungheni', 'invoicing' ),
770
+		'C'  => __('Chi&#537;in&#259;u', 'invoicing'),
771
+		'BL' => __('B&#259;l&#539;i', 'invoicing'),
772
+		'AN' => __('Anenii Noi', 'invoicing'),
773
+		'BS' => __('Basarabeasca', 'invoicing'),
774
+		'BR' => __('Briceni', 'invoicing'),
775
+		'CH' => __('Cahul', 'invoicing'),
776
+		'CT' => __('Cantemir', 'invoicing'),
777
+		'CL' => __('C&#259;l&#259;ra&#537;i', 'invoicing'),
778
+		'CS' => __('C&#259;u&#537;eni', 'invoicing'),
779
+		'CM' => __('Cimi&#537;lia', 'invoicing'),
780
+		'CR' => __('Criuleni', 'invoicing'),
781
+		'DN' => __('Dondu&#537;eni', 'invoicing'),
782
+		'DR' => __('Drochia', 'invoicing'),
783
+		'DB' => __('Dub&#259;sari', 'invoicing'),
784
+		'ED' => __('Edine&#539;', 'invoicing'),
785
+		'FL' => __('F&#259;le&#537;ti', 'invoicing'),
786
+		'FR' => __('Flore&#537;ti', 'invoicing'),
787
+		'GE' => __('UTA G&#259;g&#259;uzia', 'invoicing'),
788
+		'GL' => __('Glodeni', 'invoicing'),
789
+		'HN' => __('H&icirc;nce&#537;ti', 'invoicing'),
790
+		'IL' => __('Ialoveni', 'invoicing'),
791
+		'LV' => __('Leova', 'invoicing'),
792
+		'NS' => __('Nisporeni', 'invoicing'),
793
+		'OC' => __('Ocni&#539;a', 'invoicing'),
794
+		'OR' => __('Orhei', 'invoicing'),
795
+		'RZ' => __('Rezina', 'invoicing'),
796
+		'RS' => __('R&icirc;&#537;cani', 'invoicing'),
797
+		'SG' => __('S&icirc;ngerei', 'invoicing'),
798
+		'SR' => __('Soroca', 'invoicing'),
799
+		'ST' => __('Str&#259;&#537;eni', 'invoicing'),
800
+		'SD' => __('&#536;old&#259;ne&#537;ti', 'invoicing'),
801
+		'SV' => __('&#536;tefan Vod&#259;', 'invoicing'),
802
+		'TR' => __('Taraclia', 'invoicing'),
803
+		'TL' => __('Telene&#537;ti', 'invoicing'),
804
+		'UN' => __('Ungheni', 'invoicing'),
805 805
 	),
806 806
 	'MQ' => array(),
807 807
 	'MT' => array(),
808 808
 	'MX' => array( // Mexico States.
809
-		'DF' => __( 'Ciudad de M&eacute;xico', 'invoicing' ),
810
-		'JA' => __( 'Jalisco', 'invoicing' ),
811
-		'NL' => __( 'Nuevo Le&oacute;n', 'invoicing' ),
812
-		'AG' => __( 'Aguascalientes', 'invoicing' ),
813
-		'BC' => __( 'Baja California', 'invoicing' ),
814
-		'BS' => __( 'Baja California Sur', 'invoicing' ),
815
-		'CM' => __( 'Campeche', 'invoicing' ),
816
-		'CS' => __( 'Chiapas', 'invoicing' ),
817
-		'CH' => __( 'Chihuahua', 'invoicing' ),
818
-		'CO' => __( 'Coahuila', 'invoicing' ),
819
-		'CL' => __( 'Colima', 'invoicing' ),
820
-		'DG' => __( 'Durango', 'invoicing' ),
821
-		'GT' => __( 'Guanajuato', 'invoicing' ),
822
-		'GR' => __( 'Guerrero', 'invoicing' ),
823
-		'HG' => __( 'Hidalgo', 'invoicing' ),
824
-		'MX' => __( 'Estado de M&eacute;xico', 'invoicing' ),
825
-		'MI' => __( 'Michoac&aacute;n', 'invoicing' ),
826
-		'MO' => __( 'Morelos', 'invoicing' ),
827
-		'NA' => __( 'Nayarit', 'invoicing' ),
828
-		'OA' => __( 'Oaxaca', 'invoicing' ),
829
-		'PU' => __( 'Puebla', 'invoicing' ),
830
-		'QT' => __( 'Quer&eacute;taro', 'invoicing' ),
831
-		'QR' => __( 'Quintana Roo', 'invoicing' ),
832
-		'SL' => __( 'San Luis Potos&iacute;', 'invoicing' ),
833
-		'SI' => __( 'Sinaloa', 'invoicing' ),
834
-		'SO' => __( 'Sonora', 'invoicing' ),
835
-		'TB' => __( 'Tabasco', 'invoicing' ),
836
-		'TM' => __( 'Tamaulipas', 'invoicing' ),
837
-		'TL' => __( 'Tlaxcala', 'invoicing' ),
838
-		'VE' => __( 'Veracruz', 'invoicing' ),
839
-		'YU' => __( 'Yucat&aacute;n', 'invoicing' ),
840
-		'ZA' => __( 'Zacatecas', 'invoicing' ),
809
+		'DF' => __('Ciudad de M&eacute;xico', 'invoicing'),
810
+		'JA' => __('Jalisco', 'invoicing'),
811
+		'NL' => __('Nuevo Le&oacute;n', 'invoicing'),
812
+		'AG' => __('Aguascalientes', 'invoicing'),
813
+		'BC' => __('Baja California', 'invoicing'),
814
+		'BS' => __('Baja California Sur', 'invoicing'),
815
+		'CM' => __('Campeche', 'invoicing'),
816
+		'CS' => __('Chiapas', 'invoicing'),
817
+		'CH' => __('Chihuahua', 'invoicing'),
818
+		'CO' => __('Coahuila', 'invoicing'),
819
+		'CL' => __('Colima', 'invoicing'),
820
+		'DG' => __('Durango', 'invoicing'),
821
+		'GT' => __('Guanajuato', 'invoicing'),
822
+		'GR' => __('Guerrero', 'invoicing'),
823
+		'HG' => __('Hidalgo', 'invoicing'),
824
+		'MX' => __('Estado de M&eacute;xico', 'invoicing'),
825
+		'MI' => __('Michoac&aacute;n', 'invoicing'),
826
+		'MO' => __('Morelos', 'invoicing'),
827
+		'NA' => __('Nayarit', 'invoicing'),
828
+		'OA' => __('Oaxaca', 'invoicing'),
829
+		'PU' => __('Puebla', 'invoicing'),
830
+		'QT' => __('Quer&eacute;taro', 'invoicing'),
831
+		'QR' => __('Quintana Roo', 'invoicing'),
832
+		'SL' => __('San Luis Potos&iacute;', 'invoicing'),
833
+		'SI' => __('Sinaloa', 'invoicing'),
834
+		'SO' => __('Sonora', 'invoicing'),
835
+		'TB' => __('Tabasco', 'invoicing'),
836
+		'TM' => __('Tamaulipas', 'invoicing'),
837
+		'TL' => __('Tlaxcala', 'invoicing'),
838
+		'VE' => __('Veracruz', 'invoicing'),
839
+		'YU' => __('Yucat&aacute;n', 'invoicing'),
840
+		'ZA' => __('Zacatecas', 'invoicing'),
841 841
 	),
842 842
 	'MY' => array( // Malaysian states.
843
-		'JHR' => __( 'Johor', 'invoicing' ),
844
-		'KDH' => __( 'Kedah', 'invoicing' ),
845
-		'KTN' => __( 'Kelantan', 'invoicing' ),
846
-		'LBN' => __( 'Labuan', 'invoicing' ),
847
-		'MLK' => __( 'Malacca (Melaka)', 'invoicing' ),
848
-		'NSN' => __( 'Negeri Sembilan', 'invoicing' ),
849
-		'PHG' => __( 'Pahang', 'invoicing' ),
850
-		'PNG' => __( 'Penang (Pulau Pinang)', 'invoicing' ),
851
-		'PRK' => __( 'Perak', 'invoicing' ),
852
-		'PLS' => __( 'Perlis', 'invoicing' ),
853
-		'SBH' => __( 'Sabah', 'invoicing' ),
854
-		'SWK' => __( 'Sarawak', 'invoicing' ),
855
-		'SGR' => __( 'Selangor', 'invoicing' ),
856
-		'TRG' => __( 'Terengganu', 'invoicing' ),
857
-		'PJY' => __( 'Putrajaya', 'invoicing' ),
858
-		'KUL' => __( 'Kuala Lumpur', 'invoicing' ),
843
+		'JHR' => __('Johor', 'invoicing'),
844
+		'KDH' => __('Kedah', 'invoicing'),
845
+		'KTN' => __('Kelantan', 'invoicing'),
846
+		'LBN' => __('Labuan', 'invoicing'),
847
+		'MLK' => __('Malacca (Melaka)', 'invoicing'),
848
+		'NSN' => __('Negeri Sembilan', 'invoicing'),
849
+		'PHG' => __('Pahang', 'invoicing'),
850
+		'PNG' => __('Penang (Pulau Pinang)', 'invoicing'),
851
+		'PRK' => __('Perak', 'invoicing'),
852
+		'PLS' => __('Perlis', 'invoicing'),
853
+		'SBH' => __('Sabah', 'invoicing'),
854
+		'SWK' => __('Sarawak', 'invoicing'),
855
+		'SGR' => __('Selangor', 'invoicing'),
856
+		'TRG' => __('Terengganu', 'invoicing'),
857
+		'PJY' => __('Putrajaya', 'invoicing'),
858
+		'KUL' => __('Kuala Lumpur', 'invoicing'),
859 859
 	),
860 860
 	'NG' => array( // Nigerian provinces.
861
-		'AB' => __( 'Abia', 'invoicing' ),
862
-		'FC' => __( 'Abuja', 'invoicing' ),
863
-		'AD' => __( 'Adamawa', 'invoicing' ),
864
-		'AK' => __( 'Akwa Ibom', 'invoicing' ),
865
-		'AN' => __( 'Anambra', 'invoicing' ),
866
-		'BA' => __( 'Bauchi', 'invoicing' ),
867
-		'BY' => __( 'Bayelsa', 'invoicing' ),
868
-		'BE' => __( 'Benue', 'invoicing' ),
869
-		'BO' => __( 'Borno', 'invoicing' ),
870
-		'CR' => __( 'Cross River', 'invoicing' ),
871
-		'DE' => __( 'Delta', 'invoicing' ),
872
-		'EB' => __( 'Ebonyi', 'invoicing' ),
873
-		'ED' => __( 'Edo', 'invoicing' ),
874
-		'EK' => __( 'Ekiti', 'invoicing' ),
875
-		'EN' => __( 'Enugu', 'invoicing' ),
876
-		'GO' => __( 'Gombe', 'invoicing' ),
877
-		'IM' => __( 'Imo', 'invoicing' ),
878
-		'JI' => __( 'Jigawa', 'invoicing' ),
879
-		'KD' => __( 'Kaduna', 'invoicing' ),
880
-		'KN' => __( 'Kano', 'invoicing' ),
881
-		'KT' => __( 'Katsina', 'invoicing' ),
882
-		'KE' => __( 'Kebbi', 'invoicing' ),
883
-		'KO' => __( 'Kogi', 'invoicing' ),
884
-		'KW' => __( 'Kwara', 'invoicing' ),
885
-		'LA' => __( 'Lagos', 'invoicing' ),
886
-		'NA' => __( 'Nasarawa', 'invoicing' ),
887
-		'NI' => __( 'Niger', 'invoicing' ),
888
-		'OG' => __( 'Ogun', 'invoicing' ),
889
-		'ON' => __( 'Ondo', 'invoicing' ),
890
-		'OS' => __( 'Osun', 'invoicing' ),
891
-		'OY' => __( 'Oyo', 'invoicing' ),
892
-		'PL' => __( 'Plateau', 'invoicing' ),
893
-		'RI' => __( 'Rivers', 'invoicing' ),
894
-		'SO' => __( 'Sokoto', 'invoicing' ),
895
-		'TA' => __( 'Taraba', 'invoicing' ),
896
-		'YO' => __( 'Yobe', 'invoicing' ),
897
-		'ZA' => __( 'Zamfara', 'invoicing' ),
861
+		'AB' => __('Abia', 'invoicing'),
862
+		'FC' => __('Abuja', 'invoicing'),
863
+		'AD' => __('Adamawa', 'invoicing'),
864
+		'AK' => __('Akwa Ibom', 'invoicing'),
865
+		'AN' => __('Anambra', 'invoicing'),
866
+		'BA' => __('Bauchi', 'invoicing'),
867
+		'BY' => __('Bayelsa', 'invoicing'),
868
+		'BE' => __('Benue', 'invoicing'),
869
+		'BO' => __('Borno', 'invoicing'),
870
+		'CR' => __('Cross River', 'invoicing'),
871
+		'DE' => __('Delta', 'invoicing'),
872
+		'EB' => __('Ebonyi', 'invoicing'),
873
+		'ED' => __('Edo', 'invoicing'),
874
+		'EK' => __('Ekiti', 'invoicing'),
875
+		'EN' => __('Enugu', 'invoicing'),
876
+		'GO' => __('Gombe', 'invoicing'),
877
+		'IM' => __('Imo', 'invoicing'),
878
+		'JI' => __('Jigawa', 'invoicing'),
879
+		'KD' => __('Kaduna', 'invoicing'),
880
+		'KN' => __('Kano', 'invoicing'),
881
+		'KT' => __('Katsina', 'invoicing'),
882
+		'KE' => __('Kebbi', 'invoicing'),
883
+		'KO' => __('Kogi', 'invoicing'),
884
+		'KW' => __('Kwara', 'invoicing'),
885
+		'LA' => __('Lagos', 'invoicing'),
886
+		'NA' => __('Nasarawa', 'invoicing'),
887
+		'NI' => __('Niger', 'invoicing'),
888
+		'OG' => __('Ogun', 'invoicing'),
889
+		'ON' => __('Ondo', 'invoicing'),
890
+		'OS' => __('Osun', 'invoicing'),
891
+		'OY' => __('Oyo', 'invoicing'),
892
+		'PL' => __('Plateau', 'invoicing'),
893
+		'RI' => __('Rivers', 'invoicing'),
894
+		'SO' => __('Sokoto', 'invoicing'),
895
+		'TA' => __('Taraba', 'invoicing'),
896
+		'YO' => __('Yobe', 'invoicing'),
897
+		'ZA' => __('Zamfara', 'invoicing'),
898 898
 	),
899 899
 	'NL' => array(),
900 900
 	'NO' => array(),
901 901
 	'NP' => array( // Nepal states (Zones).
902
-		'BAG' => __( 'Bagmati', 'invoicing' ),
903
-		'BHE' => __( 'Bheri', 'invoicing' ),
904
-		'DHA' => __( 'Dhaulagiri', 'invoicing' ),
905
-		'GAN' => __( 'Gandaki', 'invoicing' ),
906
-		'JAN' => __( 'Janakpur', 'invoicing' ),
907
-		'KAR' => __( 'Karnali', 'invoicing' ),
908
-		'KOS' => __( 'Koshi', 'invoicing' ),
909
-		'LUM' => __( 'Lumbini', 'invoicing' ),
910
-		'MAH' => __( 'Mahakali', 'invoicing' ),
911
-		'MEC' => __( 'Mechi', 'invoicing' ),
912
-		'NAR' => __( 'Narayani', 'invoicing' ),
913
-		'RAP' => __( 'Rapti', 'invoicing' ),
914
-		'SAG' => __( 'Sagarmatha', 'invoicing' ),
915
-		'SET' => __( 'Seti', 'invoicing' ),
902
+		'BAG' => __('Bagmati', 'invoicing'),
903
+		'BHE' => __('Bheri', 'invoicing'),
904
+		'DHA' => __('Dhaulagiri', 'invoicing'),
905
+		'GAN' => __('Gandaki', 'invoicing'),
906
+		'JAN' => __('Janakpur', 'invoicing'),
907
+		'KAR' => __('Karnali', 'invoicing'),
908
+		'KOS' => __('Koshi', 'invoicing'),
909
+		'LUM' => __('Lumbini', 'invoicing'),
910
+		'MAH' => __('Mahakali', 'invoicing'),
911
+		'MEC' => __('Mechi', 'invoicing'),
912
+		'NAR' => __('Narayani', 'invoicing'),
913
+		'RAP' => __('Rapti', 'invoicing'),
914
+		'SAG' => __('Sagarmatha', 'invoicing'),
915
+		'SET' => __('Seti', 'invoicing'),
916 916
 	),
917 917
 	'NZ' => array( // New Zealand States.
918
-		'NL' => __( 'Northland', 'invoicing' ),
919
-		'AK' => __( 'Auckland', 'invoicing' ),
920
-		'WA' => __( 'Waikato', 'invoicing' ),
921
-		'BP' => __( 'Bay of Plenty', 'invoicing' ),
922
-		'TK' => __( 'Taranaki', 'invoicing' ),
923
-		'GI' => __( 'Gisborne', 'invoicing' ),
924
-		'HB' => __( 'Hawke&rsquo;s Bay', 'invoicing' ),
925
-		'MW' => __( 'Manawatu-Wanganui', 'invoicing' ),
926
-		'WE' => __( 'Wellington', 'invoicing' ),
927
-		'NS' => __( 'Nelson', 'invoicing' ),
928
-		'MB' => __( 'Marlborough', 'invoicing' ),
929
-		'TM' => __( 'Tasman', 'invoicing' ),
930
-		'WC' => __( 'West Coast', 'invoicing' ),
931
-		'CT' => __( 'Canterbury', 'invoicing' ),
932
-		'OT' => __( 'Otago', 'invoicing' ),
933
-		'SL' => __( 'Southland', 'invoicing' ),
918
+		'NL' => __('Northland', 'invoicing'),
919
+		'AK' => __('Auckland', 'invoicing'),
920
+		'WA' => __('Waikato', 'invoicing'),
921
+		'BP' => __('Bay of Plenty', 'invoicing'),
922
+		'TK' => __('Taranaki', 'invoicing'),
923
+		'GI' => __('Gisborne', 'invoicing'),
924
+		'HB' => __('Hawke&rsquo;s Bay', 'invoicing'),
925
+		'MW' => __('Manawatu-Wanganui', 'invoicing'),
926
+		'WE' => __('Wellington', 'invoicing'),
927
+		'NS' => __('Nelson', 'invoicing'),
928
+		'MB' => __('Marlborough', 'invoicing'),
929
+		'TM' => __('Tasman', 'invoicing'),
930
+		'WC' => __('West Coast', 'invoicing'),
931
+		'CT' => __('Canterbury', 'invoicing'),
932
+		'OT' => __('Otago', 'invoicing'),
933
+		'SL' => __('Southland', 'invoicing'),
934 934
 	),
935 935
 	'PE' => array( // Peru states.
936
-		'CAL' => __( 'El Callao', 'invoicing' ),
937
-		'LMA' => __( 'Municipalidad Metropolitana de Lima', 'invoicing' ),
938
-		'AMA' => __( 'Amazonas', 'invoicing' ),
939
-		'ANC' => __( 'Ancash', 'invoicing' ),
940
-		'APU' => __( 'Apur&iacute;mac', 'invoicing' ),
941
-		'ARE' => __( 'Arequipa', 'invoicing' ),
942
-		'AYA' => __( 'Ayacucho', 'invoicing' ),
943
-		'CAJ' => __( 'Cajamarca', 'invoicing' ),
944
-		'CUS' => __( 'Cusco', 'invoicing' ),
945
-		'HUV' => __( 'Huancavelica', 'invoicing' ),
946
-		'HUC' => __( 'Hu&aacute;nuco', 'invoicing' ),
947
-		'ICA' => __( 'Ica', 'invoicing' ),
948
-		'JUN' => __( 'Jun&iacute;n', 'invoicing' ),
949
-		'LAL' => __( 'La Libertad', 'invoicing' ),
950
-		'LAM' => __( 'Lambayeque', 'invoicing' ),
951
-		'LIM' => __( 'Lima', 'invoicing' ),
952
-		'LOR' => __( 'Loreto', 'invoicing' ),
953
-		'MDD' => __( 'Madre de Dios', 'invoicing' ),
954
-		'MOQ' => __( 'Moquegua', 'invoicing' ),
955
-		'PAS' => __( 'Pasco', 'invoicing' ),
956
-		'PIU' => __( 'Piura', 'invoicing' ),
957
-		'PUN' => __( 'Puno', 'invoicing' ),
958
-		'SAM' => __( 'San Mart&iacute;n', 'invoicing' ),
959
-		'TAC' => __( 'Tacna', 'invoicing' ),
960
-		'TUM' => __( 'Tumbes', 'invoicing' ),
961
-		'UCA' => __( 'Ucayali', 'invoicing' ),
936
+		'CAL' => __('El Callao', 'invoicing'),
937
+		'LMA' => __('Municipalidad Metropolitana de Lima', 'invoicing'),
938
+		'AMA' => __('Amazonas', 'invoicing'),
939
+		'ANC' => __('Ancash', 'invoicing'),
940
+		'APU' => __('Apur&iacute;mac', 'invoicing'),
941
+		'ARE' => __('Arequipa', 'invoicing'),
942
+		'AYA' => __('Ayacucho', 'invoicing'),
943
+		'CAJ' => __('Cajamarca', 'invoicing'),
944
+		'CUS' => __('Cusco', 'invoicing'),
945
+		'HUV' => __('Huancavelica', 'invoicing'),
946
+		'HUC' => __('Hu&aacute;nuco', 'invoicing'),
947
+		'ICA' => __('Ica', 'invoicing'),
948
+		'JUN' => __('Jun&iacute;n', 'invoicing'),
949
+		'LAL' => __('La Libertad', 'invoicing'),
950
+		'LAM' => __('Lambayeque', 'invoicing'),
951
+		'LIM' => __('Lima', 'invoicing'),
952
+		'LOR' => __('Loreto', 'invoicing'),
953
+		'MDD' => __('Madre de Dios', 'invoicing'),
954
+		'MOQ' => __('Moquegua', 'invoicing'),
955
+		'PAS' => __('Pasco', 'invoicing'),
956
+		'PIU' => __('Piura', 'invoicing'),
957
+		'PUN' => __('Puno', 'invoicing'),
958
+		'SAM' => __('San Mart&iacute;n', 'invoicing'),
959
+		'TAC' => __('Tacna', 'invoicing'),
960
+		'TUM' => __('Tumbes', 'invoicing'),
961
+		'UCA' => __('Ucayali', 'invoicing'),
962 962
 	),
963 963
 
964 964
 	/**
965 965
 	 * Philippine Provinces.
966 966
 	 */
967 967
 	'PH' => array(
968
-		'ABR' => __( 'Abra', 'invoicing' ),
969
-		'AGN' => __( 'Agusan del Norte', 'invoicing' ),
970
-		'AGS' => __( 'Agusan del Sur', 'invoicing' ),
971
-		'AKL' => __( 'Aklan', 'invoicing' ),
972
-		'ALB' => __( 'Albay', 'invoicing' ),
973
-		'ANT' => __( 'Antique', 'invoicing' ),
974
-		'APA' => __( 'Apayao', 'invoicing' ),
975
-		'AUR' => __( 'Aurora', 'invoicing' ),
976
-		'BAS' => __( 'Basilan', 'invoicing' ),
977
-		'BAN' => __( 'Bataan', 'invoicing' ),
978
-		'BTN' => __( 'Batanes', 'invoicing' ),
979
-		'BTG' => __( 'Batangas', 'invoicing' ),
980
-		'BEN' => __( 'Benguet', 'invoicing' ),
981
-		'BIL' => __( 'Biliran', 'invoicing' ),
982
-		'BOH' => __( 'Bohol', 'invoicing' ),
983
-		'BUK' => __( 'Bukidnon', 'invoicing' ),
984
-		'BUL' => __( 'Bulacan', 'invoicing' ),
985
-		'CAG' => __( 'Cagayan', 'invoicing' ),
986
-		'CAN' => __( 'Camarines Norte', 'invoicing' ),
987
-		'CAS' => __( 'Camarines Sur', 'invoicing' ),
988
-		'CAM' => __( 'Camiguin', 'invoicing' ),
989
-		'CAP' => __( 'Capiz', 'invoicing' ),
990
-		'CAT' => __( 'Catanduanes', 'invoicing' ),
991
-		'CAV' => __( 'Cavite', 'invoicing' ),
992
-		'CEB' => __( 'Cebu', 'invoicing' ),
993
-		'COM' => __( 'Compostela Valley', 'invoicing' ),
994
-		'NCO' => __( 'Cotabato', 'invoicing' ),
995
-		'DAV' => __( 'Davao del Norte', 'invoicing' ),
996
-		'DAS' => __( 'Davao del Sur', 'invoicing' ),
997
-		'DAC' => __( 'Davao Occidental', 'invoicing' ),
998
-		'DAO' => __( 'Davao Oriental', 'invoicing' ),
999
-		'DIN' => __( 'Dinagat Islands', 'invoicing' ),
1000
-		'EAS' => __( 'Eastern Samar', 'invoicing' ),
1001
-		'GUI' => __( 'Guimaras', 'invoicing' ),
1002
-		'IFU' => __( 'Ifugao', 'invoicing' ),
1003
-		'ILN' => __( 'Ilocos Norte', 'invoicing' ),
1004
-		'ILS' => __( 'Ilocos Sur', 'invoicing' ),
1005
-		'ILI' => __( 'Iloilo', 'invoicing' ),
1006
-		'ISA' => __( 'Isabela', 'invoicing' ),
1007
-		'KAL' => __( 'Kalinga', 'invoicing' ),
1008
-		'LUN' => __( 'La Union', 'invoicing' ),
1009
-		'LAG' => __( 'Laguna', 'invoicing' ),
1010
-		'LAN' => __( 'Lanao del Norte', 'invoicing' ),
1011
-		'LAS' => __( 'Lanao del Sur', 'invoicing' ),
1012
-		'LEY' => __( 'Leyte', 'invoicing' ),
1013
-		'MAG' => __( 'Maguindanao', 'invoicing' ),
1014
-		'MAD' => __( 'Marinduque', 'invoicing' ),
1015
-		'MAS' => __( 'Masbate', 'invoicing' ),
1016
-		'MSC' => __( 'Misamis Occidental', 'invoicing' ),
1017
-		'MSR' => __( 'Misamis Oriental', 'invoicing' ),
1018
-		'MOU' => __( 'Mountain Province', 'invoicing' ),
1019
-		'NEC' => __( 'Negros Occidental', 'invoicing' ),
1020
-		'NER' => __( 'Negros Oriental', 'invoicing' ),
1021
-		'NSA' => __( 'Northern Samar', 'invoicing' ),
1022
-		'NUE' => __( 'Nueva Ecija', 'invoicing' ),
1023
-		'NUV' => __( 'Nueva Vizcaya', 'invoicing' ),
1024
-		'MDC' => __( 'Occidental Mindoro', 'invoicing' ),
1025
-		'MDR' => __( 'Oriental Mindoro', 'invoicing' ),
1026
-		'PLW' => __( 'Palawan', 'invoicing' ),
1027
-		'PAM' => __( 'Pampanga', 'invoicing' ),
1028
-		'PAN' => __( 'Pangasinan', 'invoicing' ),
1029
-		'QUE' => __( 'Quezon', 'invoicing' ),
1030
-		'QUI' => __( 'Quirino', 'invoicing' ),
1031
-		'RIZ' => __( 'Rizal', 'invoicing' ),
1032
-		'ROM' => __( 'Romblon', 'invoicing' ),
1033
-		'WSA' => __( 'Samar', 'invoicing' ),
1034
-		'SAR' => __( 'Sarangani', 'invoicing' ),
1035
-		'SIQ' => __( 'Siquijor', 'invoicing' ),
1036
-		'SOR' => __( 'Sorsogon', 'invoicing' ),
1037
-		'SCO' => __( 'South Cotabato', 'invoicing' ),
1038
-		'SLE' => __( 'Southern Leyte', 'invoicing' ),
1039
-		'SUK' => __( 'Sultan Kudarat', 'invoicing' ),
1040
-		'SLU' => __( 'Sulu', 'invoicing' ),
1041
-		'SUN' => __( 'Surigao del Norte', 'invoicing' ),
1042
-		'SUR' => __( 'Surigao del Sur', 'invoicing' ),
1043
-		'TAR' => __( 'Tarlac', 'invoicing' ),
1044
-		'TAW' => __( 'Tawi-Tawi', 'invoicing' ),
1045
-		'ZMB' => __( 'Zambales', 'invoicing' ),
1046
-		'ZAN' => __( 'Zamboanga del Norte', 'invoicing' ),
1047
-		'ZAS' => __( 'Zamboanga del Sur', 'invoicing' ),
1048
-		'ZSI' => __( 'Zamboanga Sibugay', 'invoicing' ),
1049
-		'00'  => __( 'Metro Manila', 'invoicing' ),
968
+		'ABR' => __('Abra', 'invoicing'),
969
+		'AGN' => __('Agusan del Norte', 'invoicing'),
970
+		'AGS' => __('Agusan del Sur', 'invoicing'),
971
+		'AKL' => __('Aklan', 'invoicing'),
972
+		'ALB' => __('Albay', 'invoicing'),
973
+		'ANT' => __('Antique', 'invoicing'),
974
+		'APA' => __('Apayao', 'invoicing'),
975
+		'AUR' => __('Aurora', 'invoicing'),
976
+		'BAS' => __('Basilan', 'invoicing'),
977
+		'BAN' => __('Bataan', 'invoicing'),
978
+		'BTN' => __('Batanes', 'invoicing'),
979
+		'BTG' => __('Batangas', 'invoicing'),
980
+		'BEN' => __('Benguet', 'invoicing'),
981
+		'BIL' => __('Biliran', 'invoicing'),
982
+		'BOH' => __('Bohol', 'invoicing'),
983
+		'BUK' => __('Bukidnon', 'invoicing'),
984
+		'BUL' => __('Bulacan', 'invoicing'),
985
+		'CAG' => __('Cagayan', 'invoicing'),
986
+		'CAN' => __('Camarines Norte', 'invoicing'),
987
+		'CAS' => __('Camarines Sur', 'invoicing'),
988
+		'CAM' => __('Camiguin', 'invoicing'),
989
+		'CAP' => __('Capiz', 'invoicing'),
990
+		'CAT' => __('Catanduanes', 'invoicing'),
991
+		'CAV' => __('Cavite', 'invoicing'),
992
+		'CEB' => __('Cebu', 'invoicing'),
993
+		'COM' => __('Compostela Valley', 'invoicing'),
994
+		'NCO' => __('Cotabato', 'invoicing'),
995
+		'DAV' => __('Davao del Norte', 'invoicing'),
996
+		'DAS' => __('Davao del Sur', 'invoicing'),
997
+		'DAC' => __('Davao Occidental', 'invoicing'),
998
+		'DAO' => __('Davao Oriental', 'invoicing'),
999
+		'DIN' => __('Dinagat Islands', 'invoicing'),
1000
+		'EAS' => __('Eastern Samar', 'invoicing'),
1001
+		'GUI' => __('Guimaras', 'invoicing'),
1002
+		'IFU' => __('Ifugao', 'invoicing'),
1003
+		'ILN' => __('Ilocos Norte', 'invoicing'),
1004
+		'ILS' => __('Ilocos Sur', 'invoicing'),
1005
+		'ILI' => __('Iloilo', 'invoicing'),
1006
+		'ISA' => __('Isabela', 'invoicing'),
1007
+		'KAL' => __('Kalinga', 'invoicing'),
1008
+		'LUN' => __('La Union', 'invoicing'),
1009
+		'LAG' => __('Laguna', 'invoicing'),
1010
+		'LAN' => __('Lanao del Norte', 'invoicing'),
1011
+		'LAS' => __('Lanao del Sur', 'invoicing'),
1012
+		'LEY' => __('Leyte', 'invoicing'),
1013
+		'MAG' => __('Maguindanao', 'invoicing'),
1014
+		'MAD' => __('Marinduque', 'invoicing'),
1015
+		'MAS' => __('Masbate', 'invoicing'),
1016
+		'MSC' => __('Misamis Occidental', 'invoicing'),
1017
+		'MSR' => __('Misamis Oriental', 'invoicing'),
1018
+		'MOU' => __('Mountain Province', 'invoicing'),
1019
+		'NEC' => __('Negros Occidental', 'invoicing'),
1020
+		'NER' => __('Negros Oriental', 'invoicing'),
1021
+		'NSA' => __('Northern Samar', 'invoicing'),
1022
+		'NUE' => __('Nueva Ecija', 'invoicing'),
1023
+		'NUV' => __('Nueva Vizcaya', 'invoicing'),
1024
+		'MDC' => __('Occidental Mindoro', 'invoicing'),
1025
+		'MDR' => __('Oriental Mindoro', 'invoicing'),
1026
+		'PLW' => __('Palawan', 'invoicing'),
1027
+		'PAM' => __('Pampanga', 'invoicing'),
1028
+		'PAN' => __('Pangasinan', 'invoicing'),
1029
+		'QUE' => __('Quezon', 'invoicing'),
1030
+		'QUI' => __('Quirino', 'invoicing'),
1031
+		'RIZ' => __('Rizal', 'invoicing'),
1032
+		'ROM' => __('Romblon', 'invoicing'),
1033
+		'WSA' => __('Samar', 'invoicing'),
1034
+		'SAR' => __('Sarangani', 'invoicing'),
1035
+		'SIQ' => __('Siquijor', 'invoicing'),
1036
+		'SOR' => __('Sorsogon', 'invoicing'),
1037
+		'SCO' => __('South Cotabato', 'invoicing'),
1038
+		'SLE' => __('Southern Leyte', 'invoicing'),
1039
+		'SUK' => __('Sultan Kudarat', 'invoicing'),
1040
+		'SLU' => __('Sulu', 'invoicing'),
1041
+		'SUN' => __('Surigao del Norte', 'invoicing'),
1042
+		'SUR' => __('Surigao del Sur', 'invoicing'),
1043
+		'TAR' => __('Tarlac', 'invoicing'),
1044
+		'TAW' => __('Tawi-Tawi', 'invoicing'),
1045
+		'ZMB' => __('Zambales', 'invoicing'),
1046
+		'ZAN' => __('Zamboanga del Norte', 'invoicing'),
1047
+		'ZAS' => __('Zamboanga del Sur', 'invoicing'),
1048
+		'ZSI' => __('Zamboanga Sibugay', 'invoicing'),
1049
+		'00'  => __('Metro Manila', 'invoicing'),
1050 1050
 	),
1051 1051
 	'PK' => array( // Pakistan's states.
1052
-		'JK' => __( 'Azad Kashmir', 'invoicing' ),
1053
-		'BA' => __( 'Balochistan', 'invoicing' ),
1054
-		'TA' => __( 'FATA', 'invoicing' ),
1055
-		'GB' => __( 'Gilgit Baltistan', 'invoicing' ),
1056
-		'IS' => __( 'Islamabad Capital Territory', 'invoicing' ),
1057
-		'KP' => __( 'Khyber Pakhtunkhwa', 'invoicing' ),
1058
-		'PB' => __( 'Punjab', 'invoicing' ),
1059
-		'SD' => __( 'Sindh', 'invoicing' ),
1052
+		'JK' => __('Azad Kashmir', 'invoicing'),
1053
+		'BA' => __('Balochistan', 'invoicing'),
1054
+		'TA' => __('FATA', 'invoicing'),
1055
+		'GB' => __('Gilgit Baltistan', 'invoicing'),
1056
+		'IS' => __('Islamabad Capital Territory', 'invoicing'),
1057
+		'KP' => __('Khyber Pakhtunkhwa', 'invoicing'),
1058
+		'PB' => __('Punjab', 'invoicing'),
1059
+		'SD' => __('Sindh', 'invoicing'),
1060 1060
 	),
1061 1061
 	'PL' => array(),
1062 1062
 	'PT' => array(),
1063 1063
 	'PY' => array( // Paraguay states.
1064
-		'PY-ASU' => __( 'Asunci&oacute;n', 'invoicing' ),
1065
-		'PY-1'   => __( 'Concepci&oacute;n', 'invoicing' ),
1066
-		'PY-2'   => __( 'San Pedro', 'invoicing' ),
1067
-		'PY-3'   => __( 'Cordillera', 'invoicing' ),
1068
-		'PY-4'   => __( 'Guair&aacute;', 'invoicing' ),
1069
-		'PY-5'   => __( 'Caaguaz&uacute;', 'invoicing' ),
1070
-		'PY-6'   => __( 'Caazap&aacute;', 'invoicing' ),
1071
-		'PY-7'   => __( 'Itap&uacute;a', 'invoicing' ),
1072
-		'PY-8'   => __( 'Misiones', 'invoicing' ),
1073
-		'PY-9'   => __( 'Paraguar&iacute;', 'invoicing' ),
1074
-		'PY-10'  => __( 'Alto Paran&aacute;', 'invoicing' ),
1075
-		'PY-11'  => __( 'Central', 'invoicing' ),
1076
-		'PY-12'  => __( '&Ntilde;eembuc&uacute;', 'invoicing' ),
1077
-		'PY-13'  => __( 'Amambay', 'invoicing' ),
1078
-		'PY-14'  => __( 'Canindey&uacute;', 'invoicing' ),
1079
-		'PY-15'  => __( 'Presidente Hayes', 'invoicing' ),
1080
-		'PY-16'  => __( 'Alto Paraguay', 'invoicing' ),
1081
-		'PY-17'  => __( 'Boquer&oacute;n', 'invoicing' ),
1064
+		'PY-ASU' => __('Asunci&oacute;n', 'invoicing'),
1065
+		'PY-1'   => __('Concepci&oacute;n', 'invoicing'),
1066
+		'PY-2'   => __('San Pedro', 'invoicing'),
1067
+		'PY-3'   => __('Cordillera', 'invoicing'),
1068
+		'PY-4'   => __('Guair&aacute;', 'invoicing'),
1069
+		'PY-5'   => __('Caaguaz&uacute;', 'invoicing'),
1070
+		'PY-6'   => __('Caazap&aacute;', 'invoicing'),
1071
+		'PY-7'   => __('Itap&uacute;a', 'invoicing'),
1072
+		'PY-8'   => __('Misiones', 'invoicing'),
1073
+		'PY-9'   => __('Paraguar&iacute;', 'invoicing'),
1074
+		'PY-10'  => __('Alto Paran&aacute;', 'invoicing'),
1075
+		'PY-11'  => __('Central', 'invoicing'),
1076
+		'PY-12'  => __('&Ntilde;eembuc&uacute;', 'invoicing'),
1077
+		'PY-13'  => __('Amambay', 'invoicing'),
1078
+		'PY-14'  => __('Canindey&uacute;', 'invoicing'),
1079
+		'PY-15'  => __('Presidente Hayes', 'invoicing'),
1080
+		'PY-16'  => __('Alto Paraguay', 'invoicing'),
1081
+		'PY-17'  => __('Boquer&oacute;n', 'invoicing'),
1082 1082
 	),
1083 1083
 	'RE' => array(),
1084 1084
 	'RO' => array( // Romania states.
1085
-		'AB' => __( 'Alba', 'invoicing' ),
1086
-		'AR' => __( 'Arad', 'invoicing' ),
1087
-		'AG' => __( 'Arge&#537;', 'invoicing' ),
1088
-		'BC' => __( 'Bac&#259;u', 'invoicing' ),
1089
-		'BH' => __( 'Bihor', 'invoicing' ),
1090
-		'BN' => __( 'Bistri&#539;a-N&#259;s&#259;ud', 'invoicing' ),
1091
-		'BT' => __( 'Boto&#537;ani', 'invoicing' ),
1092
-		'BR' => __( 'Br&#259;ila', 'invoicing' ),
1093
-		'BV' => __( 'Bra&#537;ov', 'invoicing' ),
1094
-		'B'  => __( 'Bucure&#537;ti', 'invoicing' ),
1095
-		'BZ' => __( 'Buz&#259;u', 'invoicing' ),
1096
-		'CL' => __( 'C&#259;l&#259;ra&#537;i', 'invoicing' ),
1097
-		'CS' => __( 'Cara&#537;-Severin', 'invoicing' ),
1098
-		'CJ' => __( 'Cluj', 'invoicing' ),
1099
-		'CT' => __( 'Constan&#539;a', 'invoicing' ),
1100
-		'CV' => __( 'Covasna', 'invoicing' ),
1101
-		'DB' => __( 'D&acirc;mbovi&#539;a', 'invoicing' ),
1102
-		'DJ' => __( 'Dolj', 'invoicing' ),
1103
-		'GL' => __( 'Gala&#539;i', 'invoicing' ),
1104
-		'GR' => __( 'Giurgiu', 'invoicing' ),
1105
-		'GJ' => __( 'Gorj', 'invoicing' ),
1106
-		'HR' => __( 'Harghita', 'invoicing' ),
1107
-		'HD' => __( 'Hunedoara', 'invoicing' ),
1108
-		'IL' => __( 'Ialomi&#539;a', 'invoicing' ),
1109
-		'IS' => __( 'Ia&#537;i', 'invoicing' ),
1110
-		'IF' => __( 'Ilfov', 'invoicing' ),
1111
-		'MM' => __( 'Maramure&#537;', 'invoicing' ),
1112
-		'MH' => __( 'Mehedin&#539;i', 'invoicing' ),
1113
-		'MS' => __( 'Mure&#537;', 'invoicing' ),
1114
-		'NT' => __( 'Neam&#539;', 'invoicing' ),
1115
-		'OT' => __( 'Olt', 'invoicing' ),
1116
-		'PH' => __( 'Prahova', 'invoicing' ),
1117
-		'SJ' => __( 'S&#259;laj', 'invoicing' ),
1118
-		'SM' => __( 'Satu Mare', 'invoicing' ),
1119
-		'SB' => __( 'Sibiu', 'invoicing' ),
1120
-		'SV' => __( 'Suceava', 'invoicing' ),
1121
-		'TR' => __( 'Teleorman', 'invoicing' ),
1122
-		'TM' => __( 'Timi&#537;', 'invoicing' ),
1123
-		'TL' => __( 'Tulcea', 'invoicing' ),
1124
-		'VL' => __( 'V&acirc;lcea', 'invoicing' ),
1125
-		'VS' => __( 'Vaslui', 'invoicing' ),
1126
-		'VN' => __( 'Vrancea', 'invoicing' ),
1085
+		'AB' => __('Alba', 'invoicing'),
1086
+		'AR' => __('Arad', 'invoicing'),
1087
+		'AG' => __('Arge&#537;', 'invoicing'),
1088
+		'BC' => __('Bac&#259;u', 'invoicing'),
1089
+		'BH' => __('Bihor', 'invoicing'),
1090
+		'BN' => __('Bistri&#539;a-N&#259;s&#259;ud', 'invoicing'),
1091
+		'BT' => __('Boto&#537;ani', 'invoicing'),
1092
+		'BR' => __('Br&#259;ila', 'invoicing'),
1093
+		'BV' => __('Bra&#537;ov', 'invoicing'),
1094
+		'B'  => __('Bucure&#537;ti', 'invoicing'),
1095
+		'BZ' => __('Buz&#259;u', 'invoicing'),
1096
+		'CL' => __('C&#259;l&#259;ra&#537;i', 'invoicing'),
1097
+		'CS' => __('Cara&#537;-Severin', 'invoicing'),
1098
+		'CJ' => __('Cluj', 'invoicing'),
1099
+		'CT' => __('Constan&#539;a', 'invoicing'),
1100
+		'CV' => __('Covasna', 'invoicing'),
1101
+		'DB' => __('D&acirc;mbovi&#539;a', 'invoicing'),
1102
+		'DJ' => __('Dolj', 'invoicing'),
1103
+		'GL' => __('Gala&#539;i', 'invoicing'),
1104
+		'GR' => __('Giurgiu', 'invoicing'),
1105
+		'GJ' => __('Gorj', 'invoicing'),
1106
+		'HR' => __('Harghita', 'invoicing'),
1107
+		'HD' => __('Hunedoara', 'invoicing'),
1108
+		'IL' => __('Ialomi&#539;a', 'invoicing'),
1109
+		'IS' => __('Ia&#537;i', 'invoicing'),
1110
+		'IF' => __('Ilfov', 'invoicing'),
1111
+		'MM' => __('Maramure&#537;', 'invoicing'),
1112
+		'MH' => __('Mehedin&#539;i', 'invoicing'),
1113
+		'MS' => __('Mure&#537;', 'invoicing'),
1114
+		'NT' => __('Neam&#539;', 'invoicing'),
1115
+		'OT' => __('Olt', 'invoicing'),
1116
+		'PH' => __('Prahova', 'invoicing'),
1117
+		'SJ' => __('S&#259;laj', 'invoicing'),
1118
+		'SM' => __('Satu Mare', 'invoicing'),
1119
+		'SB' => __('Sibiu', 'invoicing'),
1120
+		'SV' => __('Suceava', 'invoicing'),
1121
+		'TR' => __('Teleorman', 'invoicing'),
1122
+		'TM' => __('Timi&#537;', 'invoicing'),
1123
+		'TL' => __('Tulcea', 'invoicing'),
1124
+		'VL' => __('V&acirc;lcea', 'invoicing'),
1125
+		'VS' => __('Vaslui', 'invoicing'),
1126
+		'VN' => __('Vrancea', 'invoicing'),
1127 1127
 	),
1128 1128
 	'RS' => array(),
1129 1129
 	'SG' => array(),
1130 1130
 	'SK' => array(),
1131 1131
 	'SI' => array(),
1132 1132
 	'TH' => array( // Thailand states.
1133
-		'TH-37' => __( 'Amnat Charoen', 'invoicing' ),
1134
-		'TH-15' => __( 'Ang Thong', 'invoicing' ),
1135
-		'TH-14' => __( 'Ayutthaya', 'invoicing' ),
1136
-		'TH-10' => __( 'Bangkok', 'invoicing' ),
1137
-		'TH-38' => __( 'Bueng Kan', 'invoicing' ),
1138
-		'TH-31' => __( 'Buri Ram', 'invoicing' ),
1139
-		'TH-24' => __( 'Chachoengsao', 'invoicing' ),
1140
-		'TH-18' => __( 'Chai Nat', 'invoicing' ),
1141
-		'TH-36' => __( 'Chaiyaphum', 'invoicing' ),
1142
-		'TH-22' => __( 'Chanthaburi', 'invoicing' ),
1143
-		'TH-50' => __( 'Chiang Mai', 'invoicing' ),
1144
-		'TH-57' => __( 'Chiang Rai', 'invoicing' ),
1145
-		'TH-20' => __( 'Chonburi', 'invoicing' ),
1146
-		'TH-86' => __( 'Chumphon', 'invoicing' ),
1147
-		'TH-46' => __( 'Kalasin', 'invoicing' ),
1148
-		'TH-62' => __( 'Kamphaeng Phet', 'invoicing' ),
1149
-		'TH-71' => __( 'Kanchanaburi', 'invoicing' ),
1150
-		'TH-40' => __( 'Khon Kaen', 'invoicing' ),
1151
-		'TH-81' => __( 'Krabi', 'invoicing' ),
1152
-		'TH-52' => __( 'Lampang', 'invoicing' ),
1153
-		'TH-51' => __( 'Lamphun', 'invoicing' ),
1154
-		'TH-42' => __( 'Loei', 'invoicing' ),
1155
-		'TH-16' => __( 'Lopburi', 'invoicing' ),
1156
-		'TH-58' => __( 'Mae Hong Son', 'invoicing' ),
1157
-		'TH-44' => __( 'Maha Sarakham', 'invoicing' ),
1158
-		'TH-49' => __( 'Mukdahan', 'invoicing' ),
1159
-		'TH-26' => __( 'Nakhon Nayok', 'invoicing' ),
1160
-		'TH-73' => __( 'Nakhon Pathom', 'invoicing' ),
1161
-		'TH-48' => __( 'Nakhon Phanom', 'invoicing' ),
1162
-		'TH-30' => __( 'Nakhon Ratchasima', 'invoicing' ),
1163
-		'TH-60' => __( 'Nakhon Sawan', 'invoicing' ),
1164
-		'TH-80' => __( 'Nakhon Si Thammarat', 'invoicing' ),
1165
-		'TH-55' => __( 'Nan', 'invoicing' ),
1166
-		'TH-96' => __( 'Narathiwat', 'invoicing' ),
1167
-		'TH-39' => __( 'Nong Bua Lam Phu', 'invoicing' ),
1168
-		'TH-43' => __( 'Nong Khai', 'invoicing' ),
1169
-		'TH-12' => __( 'Nonthaburi', 'invoicing' ),
1170
-		'TH-13' => __( 'Pathum Thani', 'invoicing' ),
1171
-		'TH-94' => __( 'Pattani', 'invoicing' ),
1172
-		'TH-82' => __( 'Phang Nga', 'invoicing' ),
1173
-		'TH-93' => __( 'Phatthalung', 'invoicing' ),
1174
-		'TH-56' => __( 'Phayao', 'invoicing' ),
1175
-		'TH-67' => __( 'Phetchabun', 'invoicing' ),
1176
-		'TH-76' => __( 'Phetchaburi', 'invoicing' ),
1177
-		'TH-66' => __( 'Phichit', 'invoicing' ),
1178
-		'TH-65' => __( 'Phitsanulok', 'invoicing' ),
1179
-		'TH-54' => __( 'Phrae', 'invoicing' ),
1180
-		'TH-83' => __( 'Phuket', 'invoicing' ),
1181
-		'TH-25' => __( 'Prachin Buri', 'invoicing' ),
1182
-		'TH-77' => __( 'Prachuap Khiri Khan', 'invoicing' ),
1183
-		'TH-85' => __( 'Ranong', 'invoicing' ),
1184
-		'TH-70' => __( 'Ratchaburi', 'invoicing' ),
1185
-		'TH-21' => __( 'Rayong', 'invoicing' ),
1186
-		'TH-45' => __( 'Roi Et', 'invoicing' ),
1187
-		'TH-27' => __( 'Sa Kaeo', 'invoicing' ),
1188
-		'TH-47' => __( 'Sakon Nakhon', 'invoicing' ),
1189
-		'TH-11' => __( 'Samut Prakan', 'invoicing' ),
1190
-		'TH-74' => __( 'Samut Sakhon', 'invoicing' ),
1191
-		'TH-75' => __( 'Samut Songkhram', 'invoicing' ),
1192
-		'TH-19' => __( 'Saraburi', 'invoicing' ),
1193
-		'TH-91' => __( 'Satun', 'invoicing' ),
1194
-		'TH-17' => __( 'Sing Buri', 'invoicing' ),
1195
-		'TH-33' => __( 'Sisaket', 'invoicing' ),
1196
-		'TH-90' => __( 'Songkhla', 'invoicing' ),
1197
-		'TH-64' => __( 'Sukhothai', 'invoicing' ),
1198
-		'TH-72' => __( 'Suphan Buri', 'invoicing' ),
1199
-		'TH-84' => __( 'Surat Thani', 'invoicing' ),
1200
-		'TH-32' => __( 'Surin', 'invoicing' ),
1201
-		'TH-63' => __( 'Tak', 'invoicing' ),
1202
-		'TH-92' => __( 'Trang', 'invoicing' ),
1203
-		'TH-23' => __( 'Trat', 'invoicing' ),
1204
-		'TH-34' => __( 'Ubon Ratchathani', 'invoicing' ),
1205
-		'TH-41' => __( 'Udon Thani', 'invoicing' ),
1206
-		'TH-61' => __( 'Uthai Thani', 'invoicing' ),
1207
-		'TH-53' => __( 'Uttaradit', 'invoicing' ),
1208
-		'TH-95' => __( 'Yala', 'invoicing' ),
1209
-		'TH-35' => __( 'Yasothon', 'invoicing' ),
1133
+		'TH-37' => __('Amnat Charoen', 'invoicing'),
1134
+		'TH-15' => __('Ang Thong', 'invoicing'),
1135
+		'TH-14' => __('Ayutthaya', 'invoicing'),
1136
+		'TH-10' => __('Bangkok', 'invoicing'),
1137
+		'TH-38' => __('Bueng Kan', 'invoicing'),
1138
+		'TH-31' => __('Buri Ram', 'invoicing'),
1139
+		'TH-24' => __('Chachoengsao', 'invoicing'),
1140
+		'TH-18' => __('Chai Nat', 'invoicing'),
1141
+		'TH-36' => __('Chaiyaphum', 'invoicing'),
1142
+		'TH-22' => __('Chanthaburi', 'invoicing'),
1143
+		'TH-50' => __('Chiang Mai', 'invoicing'),
1144
+		'TH-57' => __('Chiang Rai', 'invoicing'),
1145
+		'TH-20' => __('Chonburi', 'invoicing'),
1146
+		'TH-86' => __('Chumphon', 'invoicing'),
1147
+		'TH-46' => __('Kalasin', 'invoicing'),
1148
+		'TH-62' => __('Kamphaeng Phet', 'invoicing'),
1149
+		'TH-71' => __('Kanchanaburi', 'invoicing'),
1150
+		'TH-40' => __('Khon Kaen', 'invoicing'),
1151
+		'TH-81' => __('Krabi', 'invoicing'),
1152
+		'TH-52' => __('Lampang', 'invoicing'),
1153
+		'TH-51' => __('Lamphun', 'invoicing'),
1154
+		'TH-42' => __('Loei', 'invoicing'),
1155
+		'TH-16' => __('Lopburi', 'invoicing'),
1156
+		'TH-58' => __('Mae Hong Son', 'invoicing'),
1157
+		'TH-44' => __('Maha Sarakham', 'invoicing'),
1158
+		'TH-49' => __('Mukdahan', 'invoicing'),
1159
+		'TH-26' => __('Nakhon Nayok', 'invoicing'),
1160
+		'TH-73' => __('Nakhon Pathom', 'invoicing'),
1161
+		'TH-48' => __('Nakhon Phanom', 'invoicing'),
1162
+		'TH-30' => __('Nakhon Ratchasima', 'invoicing'),
1163
+		'TH-60' => __('Nakhon Sawan', 'invoicing'),
1164
+		'TH-80' => __('Nakhon Si Thammarat', 'invoicing'),
1165
+		'TH-55' => __('Nan', 'invoicing'),
1166
+		'TH-96' => __('Narathiwat', 'invoicing'),
1167
+		'TH-39' => __('Nong Bua Lam Phu', 'invoicing'),
1168
+		'TH-43' => __('Nong Khai', 'invoicing'),
1169
+		'TH-12' => __('Nonthaburi', 'invoicing'),
1170
+		'TH-13' => __('Pathum Thani', 'invoicing'),
1171
+		'TH-94' => __('Pattani', 'invoicing'),
1172
+		'TH-82' => __('Phang Nga', 'invoicing'),
1173
+		'TH-93' => __('Phatthalung', 'invoicing'),
1174
+		'TH-56' => __('Phayao', 'invoicing'),
1175
+		'TH-67' => __('Phetchabun', 'invoicing'),
1176
+		'TH-76' => __('Phetchaburi', 'invoicing'),
1177
+		'TH-66' => __('Phichit', 'invoicing'),
1178
+		'TH-65' => __('Phitsanulok', 'invoicing'),
1179
+		'TH-54' => __('Phrae', 'invoicing'),
1180
+		'TH-83' => __('Phuket', 'invoicing'),
1181
+		'TH-25' => __('Prachin Buri', 'invoicing'),
1182
+		'TH-77' => __('Prachuap Khiri Khan', 'invoicing'),
1183
+		'TH-85' => __('Ranong', 'invoicing'),
1184
+		'TH-70' => __('Ratchaburi', 'invoicing'),
1185
+		'TH-21' => __('Rayong', 'invoicing'),
1186
+		'TH-45' => __('Roi Et', 'invoicing'),
1187
+		'TH-27' => __('Sa Kaeo', 'invoicing'),
1188
+		'TH-47' => __('Sakon Nakhon', 'invoicing'),
1189
+		'TH-11' => __('Samut Prakan', 'invoicing'),
1190
+		'TH-74' => __('Samut Sakhon', 'invoicing'),
1191
+		'TH-75' => __('Samut Songkhram', 'invoicing'),
1192
+		'TH-19' => __('Saraburi', 'invoicing'),
1193
+		'TH-91' => __('Satun', 'invoicing'),
1194
+		'TH-17' => __('Sing Buri', 'invoicing'),
1195
+		'TH-33' => __('Sisaket', 'invoicing'),
1196
+		'TH-90' => __('Songkhla', 'invoicing'),
1197
+		'TH-64' => __('Sukhothai', 'invoicing'),
1198
+		'TH-72' => __('Suphan Buri', 'invoicing'),
1199
+		'TH-84' => __('Surat Thani', 'invoicing'),
1200
+		'TH-32' => __('Surin', 'invoicing'),
1201
+		'TH-63' => __('Tak', 'invoicing'),
1202
+		'TH-92' => __('Trang', 'invoicing'),
1203
+		'TH-23' => __('Trat', 'invoicing'),
1204
+		'TH-34' => __('Ubon Ratchathani', 'invoicing'),
1205
+		'TH-41' => __('Udon Thani', 'invoicing'),
1206
+		'TH-61' => __('Uthai Thani', 'invoicing'),
1207
+		'TH-53' => __('Uttaradit', 'invoicing'),
1208
+		'TH-95' => __('Yala', 'invoicing'),
1209
+		'TH-35' => __('Yasothon', 'invoicing'),
1210 1210
 	),
1211 1211
 	'TR' => array( // Turkey States.
1212
-		'TR01' => __( 'Adana', 'invoicing' ),
1213
-		'TR02' => __( 'Ad&#305;yaman', 'invoicing' ),
1214
-		'TR03' => __( 'Afyon', 'invoicing' ),
1215
-		'TR04' => __( 'A&#287;r&#305;', 'invoicing' ),
1216
-		'TR05' => __( 'Amasya', 'invoicing' ),
1217
-		'TR06' => __( 'Ankara', 'invoicing' ),
1218
-		'TR07' => __( 'Antalya', 'invoicing' ),
1219
-		'TR08' => __( 'Artvin', 'invoicing' ),
1220
-		'TR09' => __( 'Ayd&#305;n', 'invoicing' ),
1221
-		'TR10' => __( 'Bal&#305;kesir', 'invoicing' ),
1222
-		'TR11' => __( 'Bilecik', 'invoicing' ),
1223
-		'TR12' => __( 'Bing&#246;l', 'invoicing' ),
1224
-		'TR13' => __( 'Bitlis', 'invoicing' ),
1225
-		'TR14' => __( 'Bolu', 'invoicing' ),
1226
-		'TR15' => __( 'Burdur', 'invoicing' ),
1227
-		'TR16' => __( 'Bursa', 'invoicing' ),
1228
-		'TR17' => __( '&#199;anakkale', 'invoicing' ),
1229
-		'TR18' => __( '&#199;ank&#305;r&#305;', 'invoicing' ),
1230
-		'TR19' => __( '&#199;orum', 'invoicing' ),
1231
-		'TR20' => __( 'Denizli', 'invoicing' ),
1232
-		'TR21' => __( 'Diyarbak&#305;r', 'invoicing' ),
1233
-		'TR22' => __( 'Edirne', 'invoicing' ),
1234
-		'TR23' => __( 'Elaz&#305;&#287;', 'invoicing' ),
1235
-		'TR24' => __( 'Erzincan', 'invoicing' ),
1236
-		'TR25' => __( 'Erzurum', 'invoicing' ),
1237
-		'TR26' => __( 'Eski&#351;ehir', 'invoicing' ),
1238
-		'TR27' => __( 'Gaziantep', 'invoicing' ),
1239
-		'TR28' => __( 'Giresun', 'invoicing' ),
1240
-		'TR29' => __( 'G&#252;m&#252;&#351;hane', 'invoicing' ),
1241
-		'TR30' => __( 'Hakkari', 'invoicing' ),
1242
-		'TR31' => __( 'Hatay', 'invoicing' ),
1243
-		'TR32' => __( 'Isparta', 'invoicing' ),
1244
-		'TR33' => __( '&#304;&#231;el', 'invoicing' ),
1245
-		'TR34' => __( '&#304;stanbul', 'invoicing' ),
1246
-		'TR35' => __( '&#304;zmir', 'invoicing' ),
1247
-		'TR36' => __( 'Kars', 'invoicing' ),
1248
-		'TR37' => __( 'Kastamonu', 'invoicing' ),
1249
-		'TR38' => __( 'Kayseri', 'invoicing' ),
1250
-		'TR39' => __( 'K&#305;rklareli', 'invoicing' ),
1251
-		'TR40' => __( 'K&#305;r&#351;ehir', 'invoicing' ),
1252
-		'TR41' => __( 'Kocaeli', 'invoicing' ),
1253
-		'TR42' => __( 'Konya', 'invoicing' ),
1254
-		'TR43' => __( 'K&#252;tahya', 'invoicing' ),
1255
-		'TR44' => __( 'Malatya', 'invoicing' ),
1256
-		'TR45' => __( 'Manisa', 'invoicing' ),
1257
-		'TR46' => __( 'Kahramanmara&#351;', 'invoicing' ),
1258
-		'TR47' => __( 'Mardin', 'invoicing' ),
1259
-		'TR48' => __( 'Mu&#287;la', 'invoicing' ),
1260
-		'TR49' => __( 'Mu&#351;', 'invoicing' ),
1261
-		'TR50' => __( 'Nev&#351;ehir', 'invoicing' ),
1262
-		'TR51' => __( 'Ni&#287;de', 'invoicing' ),
1263
-		'TR52' => __( 'Ordu', 'invoicing' ),
1264
-		'TR53' => __( 'Rize', 'invoicing' ),
1265
-		'TR54' => __( 'Sakarya', 'invoicing' ),
1266
-		'TR55' => __( 'Samsun', 'invoicing' ),
1267
-		'TR56' => __( 'Siirt', 'invoicing' ),
1268
-		'TR57' => __( 'Sinop', 'invoicing' ),
1269
-		'TR58' => __( 'Sivas', 'invoicing' ),
1270
-		'TR59' => __( 'Tekirda&#287;', 'invoicing' ),
1271
-		'TR60' => __( 'Tokat', 'invoicing' ),
1272
-		'TR61' => __( 'Trabzon', 'invoicing' ),
1273
-		'TR62' => __( 'Tunceli', 'invoicing' ),
1274
-		'TR63' => __( '&#350;anl&#305;urfa', 'invoicing' ),
1275
-		'TR64' => __( 'U&#351;ak', 'invoicing' ),
1276
-		'TR65' => __( 'Van', 'invoicing' ),
1277
-		'TR66' => __( 'Yozgat', 'invoicing' ),
1278
-		'TR67' => __( 'Zonguldak', 'invoicing' ),
1279
-		'TR68' => __( 'Aksaray', 'invoicing' ),
1280
-		'TR69' => __( 'Bayburt', 'invoicing' ),
1281
-		'TR70' => __( 'Karaman', 'invoicing' ),
1282
-		'TR71' => __( 'K&#305;r&#305;kkale', 'invoicing' ),
1283
-		'TR72' => __( 'Batman', 'invoicing' ),
1284
-		'TR73' => __( '&#350;&#305;rnak', 'invoicing' ),
1285
-		'TR74' => __( 'Bart&#305;n', 'invoicing' ),
1286
-		'TR75' => __( 'Ardahan', 'invoicing' ),
1287
-		'TR76' => __( 'I&#287;d&#305;r', 'invoicing' ),
1288
-		'TR77' => __( 'Yalova', 'invoicing' ),
1289
-		'TR78' => __( 'Karab&#252;k', 'invoicing' ),
1290
-		'TR79' => __( 'Kilis', 'invoicing' ),
1291
-		'TR80' => __( 'Osmaniye', 'invoicing' ),
1292
-		'TR81' => __( 'D&#252;zce', 'invoicing' ),
1212
+		'TR01' => __('Adana', 'invoicing'),
1213
+		'TR02' => __('Ad&#305;yaman', 'invoicing'),
1214
+		'TR03' => __('Afyon', 'invoicing'),
1215
+		'TR04' => __('A&#287;r&#305;', 'invoicing'),
1216
+		'TR05' => __('Amasya', 'invoicing'),
1217
+		'TR06' => __('Ankara', 'invoicing'),
1218
+		'TR07' => __('Antalya', 'invoicing'),
1219
+		'TR08' => __('Artvin', 'invoicing'),
1220
+		'TR09' => __('Ayd&#305;n', 'invoicing'),
1221
+		'TR10' => __('Bal&#305;kesir', 'invoicing'),
1222
+		'TR11' => __('Bilecik', 'invoicing'),
1223
+		'TR12' => __('Bing&#246;l', 'invoicing'),
1224
+		'TR13' => __('Bitlis', 'invoicing'),
1225
+		'TR14' => __('Bolu', 'invoicing'),
1226
+		'TR15' => __('Burdur', 'invoicing'),
1227
+		'TR16' => __('Bursa', 'invoicing'),
1228
+		'TR17' => __('&#199;anakkale', 'invoicing'),
1229
+		'TR18' => __('&#199;ank&#305;r&#305;', 'invoicing'),
1230
+		'TR19' => __('&#199;orum', 'invoicing'),
1231
+		'TR20' => __('Denizli', 'invoicing'),
1232
+		'TR21' => __('Diyarbak&#305;r', 'invoicing'),
1233
+		'TR22' => __('Edirne', 'invoicing'),
1234
+		'TR23' => __('Elaz&#305;&#287;', 'invoicing'),
1235
+		'TR24' => __('Erzincan', 'invoicing'),
1236
+		'TR25' => __('Erzurum', 'invoicing'),
1237
+		'TR26' => __('Eski&#351;ehir', 'invoicing'),
1238
+		'TR27' => __('Gaziantep', 'invoicing'),
1239
+		'TR28' => __('Giresun', 'invoicing'),
1240
+		'TR29' => __('G&#252;m&#252;&#351;hane', 'invoicing'),
1241
+		'TR30' => __('Hakkari', 'invoicing'),
1242
+		'TR31' => __('Hatay', 'invoicing'),
1243
+		'TR32' => __('Isparta', 'invoicing'),
1244
+		'TR33' => __('&#304;&#231;el', 'invoicing'),
1245
+		'TR34' => __('&#304;stanbul', 'invoicing'),
1246
+		'TR35' => __('&#304;zmir', 'invoicing'),
1247
+		'TR36' => __('Kars', 'invoicing'),
1248
+		'TR37' => __('Kastamonu', 'invoicing'),
1249
+		'TR38' => __('Kayseri', 'invoicing'),
1250
+		'TR39' => __('K&#305;rklareli', 'invoicing'),
1251
+		'TR40' => __('K&#305;r&#351;ehir', 'invoicing'),
1252
+		'TR41' => __('Kocaeli', 'invoicing'),
1253
+		'TR42' => __('Konya', 'invoicing'),
1254
+		'TR43' => __('K&#252;tahya', 'invoicing'),
1255
+		'TR44' => __('Malatya', 'invoicing'),
1256
+		'TR45' => __('Manisa', 'invoicing'),
1257
+		'TR46' => __('Kahramanmara&#351;', 'invoicing'),
1258
+		'TR47' => __('Mardin', 'invoicing'),
1259
+		'TR48' => __('Mu&#287;la', 'invoicing'),
1260
+		'TR49' => __('Mu&#351;', 'invoicing'),
1261
+		'TR50' => __('Nev&#351;ehir', 'invoicing'),
1262
+		'TR51' => __('Ni&#287;de', 'invoicing'),
1263
+		'TR52' => __('Ordu', 'invoicing'),
1264
+		'TR53' => __('Rize', 'invoicing'),
1265
+		'TR54' => __('Sakarya', 'invoicing'),
1266
+		'TR55' => __('Samsun', 'invoicing'),
1267
+		'TR56' => __('Siirt', 'invoicing'),
1268
+		'TR57' => __('Sinop', 'invoicing'),
1269
+		'TR58' => __('Sivas', 'invoicing'),
1270
+		'TR59' => __('Tekirda&#287;', 'invoicing'),
1271
+		'TR60' => __('Tokat', 'invoicing'),
1272
+		'TR61' => __('Trabzon', 'invoicing'),
1273
+		'TR62' => __('Tunceli', 'invoicing'),
1274
+		'TR63' => __('&#350;anl&#305;urfa', 'invoicing'),
1275
+		'TR64' => __('U&#351;ak', 'invoicing'),
1276
+		'TR65' => __('Van', 'invoicing'),
1277
+		'TR66' => __('Yozgat', 'invoicing'),
1278
+		'TR67' => __('Zonguldak', 'invoicing'),
1279
+		'TR68' => __('Aksaray', 'invoicing'),
1280
+		'TR69' => __('Bayburt', 'invoicing'),
1281
+		'TR70' => __('Karaman', 'invoicing'),
1282
+		'TR71' => __('K&#305;r&#305;kkale', 'invoicing'),
1283
+		'TR72' => __('Batman', 'invoicing'),
1284
+		'TR73' => __('&#350;&#305;rnak', 'invoicing'),
1285
+		'TR74' => __('Bart&#305;n', 'invoicing'),
1286
+		'TR75' => __('Ardahan', 'invoicing'),
1287
+		'TR76' => __('I&#287;d&#305;r', 'invoicing'),
1288
+		'TR77' => __('Yalova', 'invoicing'),
1289
+		'TR78' => __('Karab&#252;k', 'invoicing'),
1290
+		'TR79' => __('Kilis', 'invoicing'),
1291
+		'TR80' => __('Osmaniye', 'invoicing'),
1292
+		'TR81' => __('D&#252;zce', 'invoicing'),
1293 1293
 	),
1294 1294
 	'TZ' => array( // Tanzania States.
1295
-		'TZ01' => __( 'Arusha', 'invoicing' ),
1296
-		'TZ02' => __( 'Dar es Salaam', 'invoicing' ),
1297
-		'TZ03' => __( 'Dodoma', 'invoicing' ),
1298
-		'TZ04' => __( 'Iringa', 'invoicing' ),
1299
-		'TZ05' => __( 'Kagera', 'invoicing' ),
1300
-		'TZ06' => __( 'Pemba North', 'invoicing' ),
1301
-		'TZ07' => __( 'Zanzibar North', 'invoicing' ),
1302
-		'TZ08' => __( 'Kigoma', 'invoicing' ),
1303
-		'TZ09' => __( 'Kilimanjaro', 'invoicing' ),
1304
-		'TZ10' => __( 'Pemba South', 'invoicing' ),
1305
-		'TZ11' => __( 'Zanzibar South', 'invoicing' ),
1306
-		'TZ12' => __( 'Lindi', 'invoicing' ),
1307
-		'TZ13' => __( 'Mara', 'invoicing' ),
1308
-		'TZ14' => __( 'Mbeya', 'invoicing' ),
1309
-		'TZ15' => __( 'Zanzibar West', 'invoicing' ),
1310
-		'TZ16' => __( 'Morogoro', 'invoicing' ),
1311
-		'TZ17' => __( 'Mtwara', 'invoicing' ),
1312
-		'TZ18' => __( 'Mwanza', 'invoicing' ),
1313
-		'TZ19' => __( 'Coast', 'invoicing' ),
1314
-		'TZ20' => __( 'Rukwa', 'invoicing' ),
1315
-		'TZ21' => __( 'Ruvuma', 'invoicing' ),
1316
-		'TZ22' => __( 'Shinyanga', 'invoicing' ),
1317
-		'TZ23' => __( 'Singida', 'invoicing' ),
1318
-		'TZ24' => __( 'Tabora', 'invoicing' ),
1319
-		'TZ25' => __( 'Tanga', 'invoicing' ),
1320
-		'TZ26' => __( 'Manyara', 'invoicing' ),
1321
-		'TZ27' => __( 'Geita', 'invoicing' ),
1322
-		'TZ28' => __( 'Katavi', 'invoicing' ),
1323
-		'TZ29' => __( 'Njombe', 'invoicing' ),
1324
-		'TZ30' => __( 'Simiyu', 'invoicing' ),
1295
+		'TZ01' => __('Arusha', 'invoicing'),
1296
+		'TZ02' => __('Dar es Salaam', 'invoicing'),
1297
+		'TZ03' => __('Dodoma', 'invoicing'),
1298
+		'TZ04' => __('Iringa', 'invoicing'),
1299
+		'TZ05' => __('Kagera', 'invoicing'),
1300
+		'TZ06' => __('Pemba North', 'invoicing'),
1301
+		'TZ07' => __('Zanzibar North', 'invoicing'),
1302
+		'TZ08' => __('Kigoma', 'invoicing'),
1303
+		'TZ09' => __('Kilimanjaro', 'invoicing'),
1304
+		'TZ10' => __('Pemba South', 'invoicing'),
1305
+		'TZ11' => __('Zanzibar South', 'invoicing'),
1306
+		'TZ12' => __('Lindi', 'invoicing'),
1307
+		'TZ13' => __('Mara', 'invoicing'),
1308
+		'TZ14' => __('Mbeya', 'invoicing'),
1309
+		'TZ15' => __('Zanzibar West', 'invoicing'),
1310
+		'TZ16' => __('Morogoro', 'invoicing'),
1311
+		'TZ17' => __('Mtwara', 'invoicing'),
1312
+		'TZ18' => __('Mwanza', 'invoicing'),
1313
+		'TZ19' => __('Coast', 'invoicing'),
1314
+		'TZ20' => __('Rukwa', 'invoicing'),
1315
+		'TZ21' => __('Ruvuma', 'invoicing'),
1316
+		'TZ22' => __('Shinyanga', 'invoicing'),
1317
+		'TZ23' => __('Singida', 'invoicing'),
1318
+		'TZ24' => __('Tabora', 'invoicing'),
1319
+		'TZ25' => __('Tanga', 'invoicing'),
1320
+		'TZ26' => __('Manyara', 'invoicing'),
1321
+		'TZ27' => __('Geita', 'invoicing'),
1322
+		'TZ28' => __('Katavi', 'invoicing'),
1323
+		'TZ29' => __('Njombe', 'invoicing'),
1324
+		'TZ30' => __('Simiyu', 'invoicing'),
1325 1325
 	),
1326 1326
 	'LK' => array(),
1327 1327
 	'SE' => array(),
1328 1328
 	'UG' => array( // Uganda districts. Ref: https://en.wikipedia.org/wiki/ISO_3166-2:UG.
1329
-		'UG314' => __( 'Abim', 'invoicing' ),
1330
-		'UG301' => __( 'Adjumani', 'invoicing' ),
1331
-		'UG322' => __( 'Agago', 'invoicing' ),
1332
-		'UG323' => __( 'Alebtong', 'invoicing' ),
1333
-		'UG315' => __( 'Amolatar', 'invoicing' ),
1334
-		'UG324' => __( 'Amudat', 'invoicing' ),
1335
-		'UG216' => __( 'Amuria', 'invoicing' ),
1336
-		'UG316' => __( 'Amuru', 'invoicing' ),
1337
-		'UG302' => __( 'Apac', 'invoicing' ),
1338
-		'UG303' => __( 'Arua', 'invoicing' ),
1339
-		'UG217' => __( 'Budaka', 'invoicing' ),
1340
-		'UG218' => __( 'Bududa', 'invoicing' ),
1341
-		'UG201' => __( 'Bugiri', 'invoicing' ),
1342
-		'UG235' => __( 'Bugweri', 'invoicing' ),
1343
-		'UG420' => __( 'Buhweju', 'invoicing' ),
1344
-		'UG117' => __( 'Buikwe', 'invoicing' ),
1345
-		'UG219' => __( 'Bukedea', 'invoicing' ),
1346
-		'UG118' => __( 'Bukomansimbi', 'invoicing' ),
1347
-		'UG220' => __( 'Bukwa', 'invoicing' ),
1348
-		'UG225' => __( 'Bulambuli', 'invoicing' ),
1349
-		'UG416' => __( 'Buliisa', 'invoicing' ),
1350
-		'UG401' => __( 'Bundibugyo', 'invoicing' ),
1351
-		'UG430' => __( 'Bunyangabu', 'invoicing' ),
1352
-		'UG402' => __( 'Bushenyi', 'invoicing' ),
1353
-		'UG202' => __( 'Busia', 'invoicing' ),
1354
-		'UG221' => __( 'Butaleja', 'invoicing' ),
1355
-		'UG119' => __( 'Butambala', 'invoicing' ),
1356
-		'UG233' => __( 'Butebo', 'invoicing' ),
1357
-		'UG120' => __( 'Buvuma', 'invoicing' ),
1358
-		'UG226' => __( 'Buyende', 'invoicing' ),
1359
-		'UG317' => __( 'Dokolo', 'invoicing' ),
1360
-		'UG121' => __( 'Gomba', 'invoicing' ),
1361
-		'UG304' => __( 'Gulu', 'invoicing' ),
1362
-		'UG403' => __( 'Hoima', 'invoicing' ),
1363
-		'UG417' => __( 'Ibanda', 'invoicing' ),
1364
-		'UG203' => __( 'Iganga', 'invoicing' ),
1365
-		'UG418' => __( 'Isingiro', 'invoicing' ),
1366
-		'UG204' => __( 'Jinja', 'invoicing' ),
1367
-		'UG318' => __( 'Kaabong', 'invoicing' ),
1368
-		'UG404' => __( 'Kabale', 'invoicing' ),
1369
-		'UG405' => __( 'Kabarole', 'invoicing' ),
1370
-		'UG213' => __( 'Kaberamaido', 'invoicing' ),
1371
-		'UG427' => __( 'Kagadi', 'invoicing' ),
1372
-		'UG428' => __( 'Kakumiro', 'invoicing' ),
1373
-		'UG101' => __( 'Kalangala', 'invoicing' ),
1374
-		'UG222' => __( 'Kaliro', 'invoicing' ),
1375
-		'UG122' => __( 'Kalungu', 'invoicing' ),
1376
-		'UG102' => __( 'Kampala', 'invoicing' ),
1377
-		'UG205' => __( 'Kamuli', 'invoicing' ),
1378
-		'UG413' => __( 'Kamwenge', 'invoicing' ),
1379
-		'UG414' => __( 'Kanungu', 'invoicing' ),
1380
-		'UG206' => __( 'Kapchorwa', 'invoicing' ),
1381
-		'UG236' => __( 'Kapelebyong', 'invoicing' ),
1382
-		'UG126' => __( 'Kasanda', 'invoicing' ),
1383
-		'UG406' => __( 'Kasese', 'invoicing' ),
1384
-		'UG207' => __( 'Katakwi', 'invoicing' ),
1385
-		'UG112' => __( 'Kayunga', 'invoicing' ),
1386
-		'UG407' => __( 'Kibaale', 'invoicing' ),
1387
-		'UG103' => __( 'Kiboga', 'invoicing' ),
1388
-		'UG227' => __( 'Kibuku', 'invoicing' ),
1389
-		'UG432' => __( 'Kikuube', 'invoicing' ),
1390
-		'UG419' => __( 'Kiruhura', 'invoicing' ),
1391
-		'UG421' => __( 'Kiryandongo', 'invoicing' ),
1392
-		'UG408' => __( 'Kisoro', 'invoicing' ),
1393
-		'UG305' => __( 'Kitgum', 'invoicing' ),
1394
-		'UG319' => __( 'Koboko', 'invoicing' ),
1395
-		'UG325' => __( 'Kole', 'invoicing' ),
1396
-		'UG306' => __( 'Kotido', 'invoicing' ),
1397
-		'UG208' => __( 'Kumi', 'invoicing' ),
1398
-		'UG333' => __( 'Kwania', 'invoicing' ),
1399
-		'UG228' => __( 'Kween', 'invoicing' ),
1400
-		'UG123' => __( 'Kyankwanzi', 'invoicing' ),
1401
-		'UG422' => __( 'Kyegegwa', 'invoicing' ),
1402
-		'UG415' => __( 'Kyenjojo', 'invoicing' ),
1403
-		'UG125' => __( 'Kyotera', 'invoicing' ),
1404
-		'UG326' => __( 'Lamwo', 'invoicing' ),
1405
-		'UG307' => __( 'Lira', 'invoicing' ),
1406
-		'UG229' => __( 'Luuka', 'invoicing' ),
1407
-		'UG104' => __( 'Luwero', 'invoicing' ),
1408
-		'UG124' => __( 'Lwengo', 'invoicing' ),
1409
-		'UG114' => __( 'Lyantonde', 'invoicing' ),
1410
-		'UG223' => __( 'Manafwa', 'invoicing' ),
1411
-		'UG320' => __( 'Maracha', 'invoicing' ),
1412
-		'UG105' => __( 'Masaka', 'invoicing' ),
1413
-		'UG409' => __( 'Masindi', 'invoicing' ),
1414
-		'UG214' => __( 'Mayuge', 'invoicing' ),
1415
-		'UG209' => __( 'Mbale', 'invoicing' ),
1416
-		'UG410' => __( 'Mbarara', 'invoicing' ),
1417
-		'UG423' => __( 'Mitooma', 'invoicing' ),
1418
-		'UG115' => __( 'Mityana', 'invoicing' ),
1419
-		'UG308' => __( 'Moroto', 'invoicing' ),
1420
-		'UG309' => __( 'Moyo', 'invoicing' ),
1421
-		'UG106' => __( 'Mpigi', 'invoicing' ),
1422
-		'UG107' => __( 'Mubende', 'invoicing' ),
1423
-		'UG108' => __( 'Mukono', 'invoicing' ),
1424
-		'UG334' => __( 'Nabilatuk', 'invoicing' ),
1425
-		'UG311' => __( 'Nakapiripirit', 'invoicing' ),
1426
-		'UG116' => __( 'Nakaseke', 'invoicing' ),
1427
-		'UG109' => __( 'Nakasongola', 'invoicing' ),
1428
-		'UG230' => __( 'Namayingo', 'invoicing' ),
1429
-		'UG234' => __( 'Namisindwa', 'invoicing' ),
1430
-		'UG224' => __( 'Namutumba', 'invoicing' ),
1431
-		'UG327' => __( 'Napak', 'invoicing' ),
1432
-		'UG310' => __( 'Nebbi', 'invoicing' ),
1433
-		'UG231' => __( 'Ngora', 'invoicing' ),
1434
-		'UG424' => __( 'Ntoroko', 'invoicing' ),
1435
-		'UG411' => __( 'Ntungamo', 'invoicing' ),
1436
-		'UG328' => __( 'Nwoya', 'invoicing' ),
1437
-		'UG331' => __( 'Omoro', 'invoicing' ),
1438
-		'UG329' => __( 'Otuke', 'invoicing' ),
1439
-		'UG321' => __( 'Oyam', 'invoicing' ),
1440
-		'UG312' => __( 'Pader', 'invoicing' ),
1441
-		'UG332' => __( 'Pakwach', 'invoicing' ),
1442
-		'UG210' => __( 'Pallisa', 'invoicing' ),
1443
-		'UG110' => __( 'Rakai', 'invoicing' ),
1444
-		'UG429' => __( 'Rubanda', 'invoicing' ),
1445
-		'UG425' => __( 'Rubirizi', 'invoicing' ),
1446
-		'UG431' => __( 'Rukiga', 'invoicing' ),
1447
-		'UG412' => __( 'Rukungiri', 'invoicing' ),
1448
-		'UG111' => __( 'Sembabule', 'invoicing' ),
1449
-		'UG232' => __( 'Serere', 'invoicing' ),
1450
-		'UG426' => __( 'Sheema', 'invoicing' ),
1451
-		'UG215' => __( 'Sironko', 'invoicing' ),
1452
-		'UG211' => __( 'Soroti', 'invoicing' ),
1453
-		'UG212' => __( 'Tororo', 'invoicing' ),
1454
-		'UG113' => __( 'Wakiso', 'invoicing' ),
1455
-		'UG313' => __( 'Yumbe', 'invoicing' ),
1456
-		'UG330' => __( 'Zombo', 'invoicing' ),
1329
+		'UG314' => __('Abim', 'invoicing'),
1330
+		'UG301' => __('Adjumani', 'invoicing'),
1331
+		'UG322' => __('Agago', 'invoicing'),
1332
+		'UG323' => __('Alebtong', 'invoicing'),
1333
+		'UG315' => __('Amolatar', 'invoicing'),
1334
+		'UG324' => __('Amudat', 'invoicing'),
1335
+		'UG216' => __('Amuria', 'invoicing'),
1336
+		'UG316' => __('Amuru', 'invoicing'),
1337
+		'UG302' => __('Apac', 'invoicing'),
1338
+		'UG303' => __('Arua', 'invoicing'),
1339
+		'UG217' => __('Budaka', 'invoicing'),
1340
+		'UG218' => __('Bududa', 'invoicing'),
1341
+		'UG201' => __('Bugiri', 'invoicing'),
1342
+		'UG235' => __('Bugweri', 'invoicing'),
1343
+		'UG420' => __('Buhweju', 'invoicing'),
1344
+		'UG117' => __('Buikwe', 'invoicing'),
1345
+		'UG219' => __('Bukedea', 'invoicing'),
1346
+		'UG118' => __('Bukomansimbi', 'invoicing'),
1347
+		'UG220' => __('Bukwa', 'invoicing'),
1348
+		'UG225' => __('Bulambuli', 'invoicing'),
1349
+		'UG416' => __('Buliisa', 'invoicing'),
1350
+		'UG401' => __('Bundibugyo', 'invoicing'),
1351
+		'UG430' => __('Bunyangabu', 'invoicing'),
1352
+		'UG402' => __('Bushenyi', 'invoicing'),
1353
+		'UG202' => __('Busia', 'invoicing'),
1354
+		'UG221' => __('Butaleja', 'invoicing'),
1355
+		'UG119' => __('Butambala', 'invoicing'),
1356
+		'UG233' => __('Butebo', 'invoicing'),
1357
+		'UG120' => __('Buvuma', 'invoicing'),
1358
+		'UG226' => __('Buyende', 'invoicing'),
1359
+		'UG317' => __('Dokolo', 'invoicing'),
1360
+		'UG121' => __('Gomba', 'invoicing'),
1361
+		'UG304' => __('Gulu', 'invoicing'),
1362
+		'UG403' => __('Hoima', 'invoicing'),
1363
+		'UG417' => __('Ibanda', 'invoicing'),
1364
+		'UG203' => __('Iganga', 'invoicing'),
1365
+		'UG418' => __('Isingiro', 'invoicing'),
1366
+		'UG204' => __('Jinja', 'invoicing'),
1367
+		'UG318' => __('Kaabong', 'invoicing'),
1368
+		'UG404' => __('Kabale', 'invoicing'),
1369
+		'UG405' => __('Kabarole', 'invoicing'),
1370
+		'UG213' => __('Kaberamaido', 'invoicing'),
1371
+		'UG427' => __('Kagadi', 'invoicing'),
1372
+		'UG428' => __('Kakumiro', 'invoicing'),
1373
+		'UG101' => __('Kalangala', 'invoicing'),
1374
+		'UG222' => __('Kaliro', 'invoicing'),
1375
+		'UG122' => __('Kalungu', 'invoicing'),
1376
+		'UG102' => __('Kampala', 'invoicing'),
1377
+		'UG205' => __('Kamuli', 'invoicing'),
1378
+		'UG413' => __('Kamwenge', 'invoicing'),
1379
+		'UG414' => __('Kanungu', 'invoicing'),
1380
+		'UG206' => __('Kapchorwa', 'invoicing'),
1381
+		'UG236' => __('Kapelebyong', 'invoicing'),
1382
+		'UG126' => __('Kasanda', 'invoicing'),
1383
+		'UG406' => __('Kasese', 'invoicing'),
1384
+		'UG207' => __('Katakwi', 'invoicing'),
1385
+		'UG112' => __('Kayunga', 'invoicing'),
1386
+		'UG407' => __('Kibaale', 'invoicing'),
1387
+		'UG103' => __('Kiboga', 'invoicing'),
1388
+		'UG227' => __('Kibuku', 'invoicing'),
1389
+		'UG432' => __('Kikuube', 'invoicing'),
1390
+		'UG419' => __('Kiruhura', 'invoicing'),
1391
+		'UG421' => __('Kiryandongo', 'invoicing'),
1392
+		'UG408' => __('Kisoro', 'invoicing'),
1393
+		'UG305' => __('Kitgum', 'invoicing'),
1394
+		'UG319' => __('Koboko', 'invoicing'),
1395
+		'UG325' => __('Kole', 'invoicing'),
1396
+		'UG306' => __('Kotido', 'invoicing'),
1397
+		'UG208' => __('Kumi', 'invoicing'),
1398
+		'UG333' => __('Kwania', 'invoicing'),
1399
+		'UG228' => __('Kween', 'invoicing'),
1400
+		'UG123' => __('Kyankwanzi', 'invoicing'),
1401
+		'UG422' => __('Kyegegwa', 'invoicing'),
1402
+		'UG415' => __('Kyenjojo', 'invoicing'),
1403
+		'UG125' => __('Kyotera', 'invoicing'),
1404
+		'UG326' => __('Lamwo', 'invoicing'),
1405
+		'UG307' => __('Lira', 'invoicing'),
1406
+		'UG229' => __('Luuka', 'invoicing'),
1407
+		'UG104' => __('Luwero', 'invoicing'),
1408
+		'UG124' => __('Lwengo', 'invoicing'),
1409
+		'UG114' => __('Lyantonde', 'invoicing'),
1410
+		'UG223' => __('Manafwa', 'invoicing'),
1411
+		'UG320' => __('Maracha', 'invoicing'),
1412
+		'UG105' => __('Masaka', 'invoicing'),
1413
+		'UG409' => __('Masindi', 'invoicing'),
1414
+		'UG214' => __('Mayuge', 'invoicing'),
1415
+		'UG209' => __('Mbale', 'invoicing'),
1416
+		'UG410' => __('Mbarara', 'invoicing'),
1417
+		'UG423' => __('Mitooma', 'invoicing'),
1418
+		'UG115' => __('Mityana', 'invoicing'),
1419
+		'UG308' => __('Moroto', 'invoicing'),
1420
+		'UG309' => __('Moyo', 'invoicing'),
1421
+		'UG106' => __('Mpigi', 'invoicing'),
1422
+		'UG107' => __('Mubende', 'invoicing'),
1423
+		'UG108' => __('Mukono', 'invoicing'),
1424
+		'UG334' => __('Nabilatuk', 'invoicing'),
1425
+		'UG311' => __('Nakapiripirit', 'invoicing'),
1426
+		'UG116' => __('Nakaseke', 'invoicing'),
1427
+		'UG109' => __('Nakasongola', 'invoicing'),
1428
+		'UG230' => __('Namayingo', 'invoicing'),
1429
+		'UG234' => __('Namisindwa', 'invoicing'),
1430
+		'UG224' => __('Namutumba', 'invoicing'),
1431
+		'UG327' => __('Napak', 'invoicing'),
1432
+		'UG310' => __('Nebbi', 'invoicing'),
1433
+		'UG231' => __('Ngora', 'invoicing'),
1434
+		'UG424' => __('Ntoroko', 'invoicing'),
1435
+		'UG411' => __('Ntungamo', 'invoicing'),
1436
+		'UG328' => __('Nwoya', 'invoicing'),
1437
+		'UG331' => __('Omoro', 'invoicing'),
1438
+		'UG329' => __('Otuke', 'invoicing'),
1439
+		'UG321' => __('Oyam', 'invoicing'),
1440
+		'UG312' => __('Pader', 'invoicing'),
1441
+		'UG332' => __('Pakwach', 'invoicing'),
1442
+		'UG210' => __('Pallisa', 'invoicing'),
1443
+		'UG110' => __('Rakai', 'invoicing'),
1444
+		'UG429' => __('Rubanda', 'invoicing'),
1445
+		'UG425' => __('Rubirizi', 'invoicing'),
1446
+		'UG431' => __('Rukiga', 'invoicing'),
1447
+		'UG412' => __('Rukungiri', 'invoicing'),
1448
+		'UG111' => __('Sembabule', 'invoicing'),
1449
+		'UG232' => __('Serere', 'invoicing'),
1450
+		'UG426' => __('Sheema', 'invoicing'),
1451
+		'UG215' => __('Sironko', 'invoicing'),
1452
+		'UG211' => __('Soroti', 'invoicing'),
1453
+		'UG212' => __('Tororo', 'invoicing'),
1454
+		'UG113' => __('Wakiso', 'invoicing'),
1455
+		'UG313' => __('Yumbe', 'invoicing'),
1456
+		'UG330' => __('Zombo', 'invoicing'),
1457 1457
 	),
1458 1458
 	'UM' => array(
1459
-		'81' => __( 'Baker Island', 'invoicing' ),
1460
-		'84' => __( 'Howland Island', 'invoicing' ),
1461
-		'86' => __( 'Jarvis Island', 'invoicing' ),
1462
-		'67' => __( 'Johnston Atoll', 'invoicing' ),
1463
-		'89' => __( 'Kingman Reef', 'invoicing' ),
1464
-		'71' => __( 'Midway Atoll', 'invoicing' ),
1465
-		'76' => __( 'Navassa Island', 'invoicing' ),
1466
-		'95' => __( 'Palmyra Atoll', 'invoicing' ),
1467
-		'79' => __( 'Wake Island', 'invoicing' ),
1459
+		'81' => __('Baker Island', 'invoicing'),
1460
+		'84' => __('Howland Island', 'invoicing'),
1461
+		'86' => __('Jarvis Island', 'invoicing'),
1462
+		'67' => __('Johnston Atoll', 'invoicing'),
1463
+		'89' => __('Kingman Reef', 'invoicing'),
1464
+		'71' => __('Midway Atoll', 'invoicing'),
1465
+		'76' => __('Navassa Island', 'invoicing'),
1466
+		'95' => __('Palmyra Atoll', 'invoicing'),
1467
+		'79' => __('Wake Island', 'invoicing'),
1468 1468
 	),
1469 1469
 	'US' => array( // United States.
1470
-		'AL' => __( 'Alabama', 'invoicing' ),
1471
-		'AK' => __( 'Alaska', 'invoicing' ),
1472
-		'AZ' => __( 'Arizona', 'invoicing' ),
1473
-		'AR' => __( 'Arkansas', 'invoicing' ),
1474
-		'CA' => __( 'California', 'invoicing' ),
1475
-		'CO' => __( 'Colorado', 'invoicing' ),
1476
-		'CT' => __( 'Connecticut', 'invoicing' ),
1477
-		'DE' => __( 'Delaware', 'invoicing' ),
1478
-		'DC' => __( 'District Of Columbia', 'invoicing' ),
1479
-		'FL' => __( 'Florida', 'invoicing' ),
1480
-		'GA' => _x( 'Georgia', 'US state of Georgia', 'invoicing' ),
1481
-		'HI' => __( 'Hawaii', 'invoicing' ),
1482
-		'ID' => __( 'Idaho', 'invoicing' ),
1483
-		'IL' => __( 'Illinois', 'invoicing' ),
1484
-		'IN' => __( 'Indiana', 'invoicing' ),
1485
-		'IA' => __( 'Iowa', 'invoicing' ),
1486
-		'KS' => __( 'Kansas', 'invoicing' ),
1487
-		'KY' => __( 'Kentucky', 'invoicing' ),
1488
-		'LA' => __( 'Louisiana', 'invoicing' ),
1489
-		'ME' => __( 'Maine', 'invoicing' ),
1490
-		'MD' => __( 'Maryland', 'invoicing' ),
1491
-		'MA' => __( 'Massachusetts', 'invoicing' ),
1492
-		'MI' => __( 'Michigan', 'invoicing' ),
1493
-		'MN' => __( 'Minnesota', 'invoicing' ),
1494
-		'MS' => __( 'Mississippi', 'invoicing' ),
1495
-		'MO' => __( 'Missouri', 'invoicing' ),
1496
-		'MT' => __( 'Montana', 'invoicing' ),
1497
-		'NE' => __( 'Nebraska', 'invoicing' ),
1498
-		'NV' => __( 'Nevada', 'invoicing' ),
1499
-		'NH' => __( 'New Hampshire', 'invoicing' ),
1500
-		'NJ' => __( 'New Jersey', 'invoicing' ),
1501
-		'NM' => __( 'New Mexico', 'invoicing' ),
1502
-		'NY' => __( 'New York', 'invoicing' ),
1503
-		'NC' => __( 'North Carolina', 'invoicing' ),
1504
-		'ND' => __( 'North Dakota', 'invoicing' ),
1505
-		'OH' => __( 'Ohio', 'invoicing' ),
1506
-		'OK' => __( 'Oklahoma', 'invoicing' ),
1507
-		'OR' => __( 'Oregon', 'invoicing' ),
1508
-		'PA' => __( 'Pennsylvania', 'invoicing' ),
1509
-		'RI' => __( 'Rhode Island', 'invoicing' ),
1510
-		'SC' => __( 'South Carolina', 'invoicing' ),
1511
-		'SD' => __( 'South Dakota', 'invoicing' ),
1512
-		'TN' => __( 'Tennessee', 'invoicing' ),
1513
-		'TX' => __( 'Texas', 'invoicing' ),
1514
-		'UT' => __( 'Utah', 'invoicing' ),
1515
-		'VT' => __( 'Vermont', 'invoicing' ),
1516
-		'VA' => __( 'Virginia', 'invoicing' ),
1517
-		'WA' => __( 'Washington', 'invoicing' ),
1518
-		'WV' => __( 'West Virginia', 'invoicing' ),
1519
-		'WI' => __( 'Wisconsin', 'invoicing' ),
1520
-		'WY' => __( 'Wyoming', 'invoicing' ),
1521
-		'AA' => __( 'Armed Forces (AA)', 'invoicing' ),
1522
-		'AE' => __( 'Armed Forces (AE)', 'invoicing' ),
1523
-		'AP' => __( 'Armed Forces (AP)', 'invoicing' ),
1470
+		'AL' => __('Alabama', 'invoicing'),
1471
+		'AK' => __('Alaska', 'invoicing'),
1472
+		'AZ' => __('Arizona', 'invoicing'),
1473
+		'AR' => __('Arkansas', 'invoicing'),
1474
+		'CA' => __('California', 'invoicing'),
1475
+		'CO' => __('Colorado', 'invoicing'),
1476
+		'CT' => __('Connecticut', 'invoicing'),
1477
+		'DE' => __('Delaware', 'invoicing'),
1478
+		'DC' => __('District Of Columbia', 'invoicing'),
1479
+		'FL' => __('Florida', 'invoicing'),
1480
+		'GA' => _x('Georgia', 'US state of Georgia', 'invoicing'),
1481
+		'HI' => __('Hawaii', 'invoicing'),
1482
+		'ID' => __('Idaho', 'invoicing'),
1483
+		'IL' => __('Illinois', 'invoicing'),
1484
+		'IN' => __('Indiana', 'invoicing'),
1485
+		'IA' => __('Iowa', 'invoicing'),
1486
+		'KS' => __('Kansas', 'invoicing'),
1487
+		'KY' => __('Kentucky', 'invoicing'),
1488
+		'LA' => __('Louisiana', 'invoicing'),
1489
+		'ME' => __('Maine', 'invoicing'),
1490
+		'MD' => __('Maryland', 'invoicing'),
1491
+		'MA' => __('Massachusetts', 'invoicing'),
1492
+		'MI' => __('Michigan', 'invoicing'),
1493
+		'MN' => __('Minnesota', 'invoicing'),
1494
+		'MS' => __('Mississippi', 'invoicing'),
1495
+		'MO' => __('Missouri', 'invoicing'),
1496
+		'MT' => __('Montana', 'invoicing'),
1497
+		'NE' => __('Nebraska', 'invoicing'),
1498
+		'NV' => __('Nevada', 'invoicing'),
1499
+		'NH' => __('New Hampshire', 'invoicing'),
1500
+		'NJ' => __('New Jersey', 'invoicing'),
1501
+		'NM' => __('New Mexico', 'invoicing'),
1502
+		'NY' => __('New York', 'invoicing'),
1503
+		'NC' => __('North Carolina', 'invoicing'),
1504
+		'ND' => __('North Dakota', 'invoicing'),
1505
+		'OH' => __('Ohio', 'invoicing'),
1506
+		'OK' => __('Oklahoma', 'invoicing'),
1507
+		'OR' => __('Oregon', 'invoicing'),
1508
+		'PA' => __('Pennsylvania', 'invoicing'),
1509
+		'RI' => __('Rhode Island', 'invoicing'),
1510
+		'SC' => __('South Carolina', 'invoicing'),
1511
+		'SD' => __('South Dakota', 'invoicing'),
1512
+		'TN' => __('Tennessee', 'invoicing'),
1513
+		'TX' => __('Texas', 'invoicing'),
1514
+		'UT' => __('Utah', 'invoicing'),
1515
+		'VT' => __('Vermont', 'invoicing'),
1516
+		'VA' => __('Virginia', 'invoicing'),
1517
+		'WA' => __('Washington', 'invoicing'),
1518
+		'WV' => __('West Virginia', 'invoicing'),
1519
+		'WI' => __('Wisconsin', 'invoicing'),
1520
+		'WY' => __('Wyoming', 'invoicing'),
1521
+		'AA' => __('Armed Forces (AA)', 'invoicing'),
1522
+		'AE' => __('Armed Forces (AE)', 'invoicing'),
1523
+		'AP' => __('Armed Forces (AP)', 'invoicing'),
1524 1524
 	),
1525 1525
 	'VN' => array(),
1526 1526
 	'YT' => array(),
1527 1527
 	'ZA' => array( // South African states.
1528
-		'EC'  => __( 'Eastern Cape', 'invoicing' ),
1529
-		'FS'  => __( 'Free State', 'invoicing' ),
1530
-		'GP'  => __( 'Gauteng', 'invoicing' ),
1531
-		'KZN' => __( 'KwaZulu-Natal', 'invoicing' ),
1532
-		'LP'  => __( 'Limpopo', 'invoicing' ),
1533
-		'MP'  => __( 'Mpumalanga', 'invoicing' ),
1534
-		'NC'  => __( 'Northern Cape', 'invoicing' ),
1535
-		'NW'  => __( 'North West', 'invoicing' ),
1536
-		'WC'  => __( 'Western Cape', 'invoicing' ),
1528
+		'EC'  => __('Eastern Cape', 'invoicing'),
1529
+		'FS'  => __('Free State', 'invoicing'),
1530
+		'GP'  => __('Gauteng', 'invoicing'),
1531
+		'KZN' => __('KwaZulu-Natal', 'invoicing'),
1532
+		'LP'  => __('Limpopo', 'invoicing'),
1533
+		'MP'  => __('Mpumalanga', 'invoicing'),
1534
+		'NC'  => __('Northern Cape', 'invoicing'),
1535
+		'NW'  => __('North West', 'invoicing'),
1536
+		'WC'  => __('Western Cape', 'invoicing'),
1537 1537
 	),
1538 1538
 	'ZM' => array( // Zambia's Provinces. Ref: https://en.wikipedia.org/wiki/ISO_3166-2:ZM.
1539
-		'ZM-01' => __( 'Western', 'invoicing' ),
1540
-		'ZM-02' => __( 'Central', 'invoicing' ),
1541
-		'ZM-03' => __( 'Eastern', 'invoicing' ),
1542
-		'ZM-04' => __( 'Luapula', 'invoicing' ),
1543
-		'ZM-05' => __( 'Northern', 'invoicing' ),
1544
-		'ZM-06' => __( 'North-Western', 'invoicing' ),
1545
-		'ZM-07' => __( 'Southern', 'invoicing' ),
1546
-		'ZM-08' => __( 'Copperbelt', 'invoicing' ),
1547
-		'ZM-09' => __( 'Lusaka', 'invoicing' ),
1548
-		'ZM-10' => __( 'Muchinga', 'invoicing' ),
1539
+		'ZM-01' => __('Western', 'invoicing'),
1540
+		'ZM-02' => __('Central', 'invoicing'),
1541
+		'ZM-03' => __('Eastern', 'invoicing'),
1542
+		'ZM-04' => __('Luapula', 'invoicing'),
1543
+		'ZM-05' => __('Northern', 'invoicing'),
1544
+		'ZM-06' => __('North-Western', 'invoicing'),
1545
+		'ZM-07' => __('Southern', 'invoicing'),
1546
+		'ZM-08' => __('Copperbelt', 'invoicing'),
1547
+		'ZM-09' => __('Lusaka', 'invoicing'),
1548
+		'ZM-10' => __('Muchinga', 'invoicing'),
1549 1549
 	),
1550 1550
 );
Please login to merge, or discard this patch.
includes/data/phone-codes.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -7,7 +7,7 @@
 block discarded – undo
7 7
  * @package Invoicing/data
8 8
  */
9 9
 
10
-defined( 'ABSPATH' ) || exit;
10
+defined('ABSPATH') || exit;
11 11
 
12 12
 return array(
13 13
 	'BD' => '+880',
Please login to merge, or discard this patch.