Passed
Push — master ( f175f0...18ec29 )
by Brian
07:49 queued 02:50
created
widgets/buy-item.php 2 patches
Indentation   +49 added lines, -49 removed lines patch added patch discarded remove patch
@@ -38,29 +38,29 @@  discard block
 block discarded – undo
38 38
                     'advanced'    => false
39 39
                 ),
40 40
                 'items'  => array(
41
-	                'title'       => __( 'Items to buy', 'invoicing' ),
42
-	                'desc'        => __( 'Enter comma separated list of invoicing item id and quantity (item_id|quantity). Ex. 101|2 ', 'invoicing' ),
43
-	                'type'        => 'text',
44
-	                'desc_tip'    => true,
45
-	                'default'     => '',
46
-	                'placeholder' => __('Items to buy','invoicing'),
47
-	                'advanced'    => false
41
+                    'title'       => __( 'Items to buy', 'invoicing' ),
42
+                    'desc'        => __( 'Enter comma separated list of invoicing item id and quantity (item_id|quantity). Ex. 101|2 ', 'invoicing' ),
43
+                    'type'        => 'text',
44
+                    'desc_tip'    => true,
45
+                    'default'     => '',
46
+                    'placeholder' => __('Items to buy','invoicing'),
47
+                    'advanced'    => false
48 48
                 ),
49 49
                 'label'  => array(
50
-	                'title'       => __( 'Button Label', 'invoicing' ),
51
-	                'desc'        => __( 'Enter button label. Default "Buy Now".', 'invoicing' ),
52
-	                'type'        => 'text',
53
-	                'desc_tip'    => true,
54
-	                'default'     => __( 'Buy Now', 'invoicing' ),
55
-	                'advanced'    => false
50
+                    'title'       => __( 'Button Label', 'invoicing' ),
51
+                    'desc'        => __( 'Enter button label. Default "Buy Now".', 'invoicing' ),
52
+                    'type'        => 'text',
53
+                    'desc_tip'    => true,
54
+                    'default'     => __( 'Buy Now', 'invoicing' ),
55
+                    'advanced'    => false
56 56
                 ),
57 57
                 'post_id'  => array(
58
-	                'title'       => __( 'Post ID', 'invoicing' ),
59
-	                'desc'        => __( 'Enter related post ID. This is for 3rd party add ons and not mandatory field.', 'invoicing' ),
60
-	                'type'        => 'number',
61
-	                'desc_tip'    => true,
62
-	                'default'     => '',
63
-	                'advanced'    => true
58
+                    'title'       => __( 'Post ID', 'invoicing' ),
59
+                    'desc'        => __( 'Enter related post ID. This is for 3rd party add ons and not mandatory field.', 'invoicing' ),
60
+                    'type'        => 'number',
61
+                    'desc_tip'    => true,
62
+                    'default'     => '',
63
+                    'advanced'    => true
64 64
                 ),
65 65
             )
66 66
 
@@ -70,43 +70,43 @@  discard block
 block discarded – undo
70 70
         parent::__construct( $options );
71 71
     }
72 72
 
73
-	/**
74
-	 * The Super block output function.
75
-	 *
76
-	 * @param array $args
77
-	 * @param array $widget_args
78
-	 * @param string $content
79
-	 *
80
-	 * @return string
81
-	 */
73
+    /**
74
+     * The Super block output function.
75
+     *
76
+     * @param array $args
77
+     * @param array $widget_args
78
+     * @param string $content
79
+     *
80
+     * @return string
81
+     */
82 82
     public function output( $args = array(), $widget_args = array(), $content = '' ) {
83 83
 
84
-	    $defaults = array(
85
-		    'items'     	=> '', // should be used like: item_id|quantity,item_id|quantity,item_id|quantity
86
-		    'label'  	    => __( 'Buy Now', 'invoicing' ), // the button title
87
-		    'post_id'   	=> '', // any related post_id
88
-	    );
84
+        $defaults = array(
85
+            'items'     	=> '', // should be used like: item_id|quantity,item_id|quantity,item_id|quantity
86
+            'label'  	    => __( 'Buy Now', 'invoicing' ), // the button title
87
+            'post_id'   	=> '', // any related post_id
88
+        );
89 89
 
90
-	    /**
91
-	     * Parse incoming $args into an array and merge it with $defaults
92
-	     */
93
-	    $args = wp_parse_args( $args, $defaults );
90
+        /**
91
+         * Parse incoming $args into an array and merge it with $defaults
92
+         */
93
+        $args = wp_parse_args( $args, $defaults );
94 94
 
95
-		$html = '<div class="wpi-buy-button-wrapper wpi-g">';
95
+        $html = '<div class="wpi-buy-button-wrapper wpi-g">';
96 96
 		
97
-		if ( empty( $args['items'] ) ) {
98
-			$html .= __( 'No items selected', 'invoicing' );
99
-		} else {
100
-			$post_id = isset( $args['post_id'] ) && is_numeric( $args['post_id'] ) ? sanitize_text_field( $args['post_id'] ) : 0;
101
-			$label   = isset( $args['label'] ) ? sanitize_text_field( $args['label'] ) : __( 'Buy Now', 'invoicing' );
102
-			$items   = esc_attr( $args['items'] );
103
-			$html   .= "<button class='button button-primary wpi-buy-button' type='button' onclick=\"wpi_buy(this, '$items','$post_id');\">$label</button>";
104
-		}
97
+        if ( empty( $args['items'] ) ) {
98
+            $html .= __( 'No items selected', 'invoicing' );
99
+        } else {
100
+            $post_id = isset( $args['post_id'] ) && is_numeric( $args['post_id'] ) ? sanitize_text_field( $args['post_id'] ) : 0;
101
+            $label   = isset( $args['label'] ) ? sanitize_text_field( $args['label'] ) : __( 'Buy Now', 'invoicing' );
102
+            $items   = esc_attr( $args['items'] );
103
+            $html   .= "<button class='button button-primary wpi-buy-button' type='button' onclick=\"wpi_buy(this, '$items','$post_id');\">$label</button>";
104
+        }
105 105
 	
106
-	    $html .= wp_nonce_field( 'wpinv_buy_items', 'wpinv_buy_nonce', true, false );
107
-	    $html .= '</div>';
106
+        $html .= wp_nonce_field( 'wpinv_buy_items', 'wpinv_buy_nonce', true, false );
107
+        $html .= '</div>';
108 108
 
109
-	    return $html;
109
+        return $html;
110 110
 
111 111
     }
112 112
 
Please login to merge, or discard this patch.
Spacing   +23 added lines, -23 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,40 +23,40 @@  discard block
 block discarded – undo
23 23
             'block-keywords'=> "['invoicing','buy', 'buy item']",
24 24
             'class_name'     => __CLASS__,
25 25
             'base_id'       => 'wpinv_buy',
26
-            'name'          => __('Get Paid > Buy Item Button (Deprecated)','invoicing'),
26
+            'name'          => __('Get Paid > Buy Item Button (Deprecated)', 'invoicing'),
27 27
             'widget_ops'    => array(
28 28
                 'classname'   => 'wpinv-buy-item-class  wpi-g',
29
-                'description' => esc_html__('This widget is deprecated. Use the GetPaid widget instead.','invoicing'),
29
+                'description' => esc_html__('This widget is deprecated. Use the GetPaid widget instead.', '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'     => '',
38 38
                     'advanced'    => false
39 39
                 ),
40 40
                 'items'  => array(
41
-	                'title'       => __( 'Items to buy', 'invoicing' ),
42
-	                'desc'        => __( 'Enter comma separated list of invoicing item id and quantity (item_id|quantity). Ex. 101|2 ', 'invoicing' ),
41
+	                'title'       => __('Items to buy', 'invoicing'),
42
+	                'desc'        => __('Enter comma separated list of invoicing item id and quantity (item_id|quantity). Ex. 101|2 ', 'invoicing'),
43 43
 	                'type'        => 'text',
44 44
 	                'desc_tip'    => true,
45 45
 	                'default'     => '',
46
-	                'placeholder' => __('Items to buy','invoicing'),
46
+	                'placeholder' => __('Items to buy', 'invoicing'),
47 47
 	                'advanced'    => false
48 48
                 ),
49 49
                 'label'  => array(
50
-	                'title'       => __( 'Button Label', 'invoicing' ),
51
-	                'desc'        => __( 'Enter button label. Default "Buy Now".', 'invoicing' ),
50
+	                'title'       => __('Button Label', 'invoicing'),
51
+	                'desc'        => __('Enter button label. Default "Buy Now".', 'invoicing'),
52 52
 	                'type'        => 'text',
53 53
 	                'desc_tip'    => true,
54
-	                'default'     => __( 'Buy Now', 'invoicing' ),
54
+	                'default'     => __('Buy Now', 'invoicing'),
55 55
 	                'advanced'    => false
56 56
                 ),
57 57
                 'post_id'  => array(
58
-	                'title'       => __( 'Post ID', 'invoicing' ),
59
-	                'desc'        => __( 'Enter related post ID. This is for 3rd party add ons and not mandatory field.', 'invoicing' ),
58
+	                'title'       => __('Post ID', 'invoicing'),
59
+	                'desc'        => __('Enter related post ID. This is for 3rd party add ons and not mandatory field.', 'invoicing'),
60 60
 	                'type'        => 'number',
61 61
 	                'desc_tip'    => true,
62 62
 	                'default'     => '',
@@ -67,7 +67,7 @@  discard block
 block discarded – undo
67 67
         );
68 68
 
69 69
 
70
-        parent::__construct( $options );
70
+        parent::__construct($options);
71 71
     }
72 72
 
73 73
 	/**
@@ -79,31 +79,31 @@  discard block
 block discarded – undo
79 79
 	 *
80 80
 	 * @return string
81 81
 	 */
82
-    public function output( $args = array(), $widget_args = array(), $content = '' ) {
82
+    public function output($args = array(), $widget_args = array(), $content = '') {
83 83
 
84 84
 	    $defaults = array(
85 85
 		    'items'     	=> '', // should be used like: item_id|quantity,item_id|quantity,item_id|quantity
86
-		    'label'  	    => __( 'Buy Now', 'invoicing' ), // the button title
86
+		    'label'  	    => __('Buy Now', 'invoicing'), // the button title
87 87
 		    'post_id'   	=> '', // any related post_id
88 88
 	    );
89 89
 
90 90
 	    /**
91 91
 	     * Parse incoming $args into an array and merge it with $defaults
92 92
 	     */
93
-	    $args = wp_parse_args( $args, $defaults );
93
+	    $args = wp_parse_args($args, $defaults);
94 94
 
95 95
 		$html = '<div class="wpi-buy-button-wrapper wpi-g">';
96 96
 		
97
-		if ( empty( $args['items'] ) ) {
98
-			$html .= __( 'No items selected', 'invoicing' );
97
+		if (empty($args['items'])) {
98
+			$html .= __('No items selected', 'invoicing');
99 99
 		} else {
100
-			$post_id = isset( $args['post_id'] ) && is_numeric( $args['post_id'] ) ? sanitize_text_field( $args['post_id'] ) : 0;
101
-			$label   = isset( $args['label'] ) ? sanitize_text_field( $args['label'] ) : __( 'Buy Now', 'invoicing' );
102
-			$items   = esc_attr( $args['items'] );
100
+			$post_id = isset($args['post_id']) && is_numeric($args['post_id']) ? sanitize_text_field($args['post_id']) : 0;
101
+			$label   = isset($args['label']) ? sanitize_text_field($args['label']) : __('Buy Now', 'invoicing');
102
+			$items   = esc_attr($args['items']);
103 103
 			$html   .= "<button class='button button-primary wpi-buy-button' type='button' onclick=\"wpi_buy(this, '$items','$post_id');\">$label</button>";
104 104
 		}
105 105
 	
106
-	    $html .= wp_nonce_field( 'wpinv_buy_items', 'wpinv_buy_nonce', true, false );
106
+	    $html .= wp_nonce_field('wpinv_buy_items', 'wpinv_buy_nonce', true, false);
107 107
 	    $html .= '</div>';
108 108
 
109 109
 	    return $html;
Please login to merge, or discard this patch.
includes/class-wpinv-discount.php 3 patches
Braces   +6 added lines, -4 removed lines patch added patch discarded remove patch
@@ -132,11 +132,13 @@
 block discarded – undo
132 132
 		if ( 'id' == strtolower( $field ) ) {
133 133
 			// Make sure the value is numeric to avoid casting objects, for example,
134 134
 			// to int 1.
135
-			if ( ! is_numeric( $value ) )
136
-				return false;
135
+			if ( ! is_numeric( $value ) ) {
136
+							return false;
137
+			}
137 138
 			$value = intval( $value );
138
-			if ( $value < 1 )
139
-				return false;
139
+			if ( $value < 1 ) {
140
+							return false;
141
+			}
140 142
 		}
141 143
 
142 144
 		if ( ! $value || ! is_string( $field ) ) {
Please login to merge, or discard this patch.
Indentation   +1261 added lines, -1261 removed lines patch added patch discarded remove patch
@@ -15,30 +15,30 @@  discard block
 block discarded – undo
15 15
  */
16 16
 class WPInv_Discount extends GetPaid_Data  {
17 17
 
18
-	/**
19
-	 * Which data store to load.
20
-	 *
21
-	 * @var string
22
-	 */
18
+    /**
19
+     * Which data store to load.
20
+     *
21
+     * @var string
22
+     */
23 23
     protected $data_store_name = 'discount';
24 24
 
25 25
     /**
26
-	 * This is the name of this object type.
27
-	 *
28
-	 * @var string
29
-	 */
30
-	protected $object_type = 'discount';
31
-
32
-	/**
33
-	 * Discount Data array. This is the core item data exposed in APIs.
34
-	 *
35
-	 * @since 1.0.19
36
-	 * @var array
37
-	 */
38
-	protected $data = array(
39
-		'status'               => 'draft',
40
-		'version'              => '',
41
-		'date_created'         => null,
26
+     * This is the name of this object type.
27
+     *
28
+     * @var string
29
+     */
30
+    protected $object_type = 'discount';
31
+
32
+    /**
33
+     * Discount Data array. This is the core item data exposed in APIs.
34
+     *
35
+     * @since 1.0.19
36
+     * @var array
37
+     */
38
+    protected $data = array(
39
+        'status'               => 'draft',
40
+        'version'              => '',
41
+        'date_created'         => null,
42 42
         'date_modified'        => null,
43 43
         'name'                 => 'no-name',
44 44
         'description'          => null,
@@ -58,144 +58,144 @@  discard block
 block discarded – undo
58 58
         'amount'               => null,
59 59
     );
60 60
 
61
-	/**
62
-	 * Stores meta in cache for future reads.
63
-	 *
64
-	 * A group must be set to to enable caching.
65
-	 *
66
-	 * @var string
67
-	 */
68
-	protected $cache_group = 'getpaid_discounts';
61
+    /**
62
+     * Stores meta in cache for future reads.
63
+     *
64
+     * A group must be set to to enable caching.
65
+     *
66
+     * @var string
67
+     */
68
+    protected $cache_group = 'getpaid_discounts';
69 69
 
70 70
     /**
71 71
      * Stores a reference to the original WP_Post object
72 72
      *
73 73
      * @var WP_Post
74 74
      */
75
-	protected $post = null;
76
-
77
-	/**
78
-	 * Get the discount if ID is passed, otherwise the discount is new and empty.
79
-	 *
80
-	 * @param int|array|string|WPInv_Discount|WP_Post $discount discount data, object, ID or code.
81
-	 */
82
-	public function __construct( $discount = 0 ) {
83
-		parent::__construct( $discount );
84
-
85
-		if ( is_numeric( $discount ) && 'wpi_discount' === get_post_type( $discount ) ) {
86
-			$this->set_id( $discount );
87
-		} elseif ( $discount instanceof self ) {
88
-			$this->set_id( $discount->get_id() );
89
-		} elseif ( ! empty( $discount->ID ) ) {
90
-			$this->set_id( $discount->ID );
91
-		} elseif ( is_array( $discount ) ) {
92
-			$this->set_props( $discount );
93
-
94
-			if ( isset( $discount['ID'] ) ) {
95
-				$this->set_id( $discount['ID'] );
96
-			}
97
-
98
-		} elseif ( is_scalar( $discount ) && $discount = self::get_discount_id_by_code( $discount ) ) {
99
-			$this->set_id( $discount );
100
-		} else {
101
-			$this->set_object_read( true );
102
-		}
75
+    protected $post = null;
76
+
77
+    /**
78
+     * Get the discount if ID is passed, otherwise the discount is new and empty.
79
+     *
80
+     * @param int|array|string|WPInv_Discount|WP_Post $discount discount data, object, ID or code.
81
+     */
82
+    public function __construct( $discount = 0 ) {
83
+        parent::__construct( $discount );
84
+
85
+        if ( is_numeric( $discount ) && 'wpi_discount' === get_post_type( $discount ) ) {
86
+            $this->set_id( $discount );
87
+        } elseif ( $discount instanceof self ) {
88
+            $this->set_id( $discount->get_id() );
89
+        } elseif ( ! empty( $discount->ID ) ) {
90
+            $this->set_id( $discount->ID );
91
+        } elseif ( is_array( $discount ) ) {
92
+            $this->set_props( $discount );
93
+
94
+            if ( isset( $discount['ID'] ) ) {
95
+                $this->set_id( $discount['ID'] );
96
+            }
97
+
98
+        } elseif ( is_scalar( $discount ) && $discount = self::get_discount_id_by_code( $discount ) ) {
99
+            $this->set_id( $discount );
100
+        } else {
101
+            $this->set_object_read( true );
102
+        }
103 103
 
104 104
         // Load the datastore.
105
-		$this->data_store = GetPaid_Data_Store::load( $this->data_store_name );
105
+        $this->data_store = GetPaid_Data_Store::load( $this->data_store_name );
106 106
 
107
-		if ( $this->get_id() > 0 ) {
107
+        if ( $this->get_id() > 0 ) {
108 108
             $this->post = get_post( $this->get_id() );
109 109
             $this->ID   = $this->get_id();
110
-			$this->data_store->read( $this );
110
+            $this->data_store->read( $this );
111
+        }
112
+
113
+    }
114
+
115
+    /**
116
+     * Fetch a discount from the db/cache
117
+     *
118
+     *
119
+     * @static
120
+     * @param string $field The field to query against: 'ID', 'discount_code'
121
+     * @param string|int $value The field value
122
+     * @deprecated
123
+     * @since 1.0.15
124
+     * @return array|bool array of discount details on success. False otherwise.
125
+     */
126
+    public static function get_data_by( $field, $value ) {
127
+
128
+        if ( 'id' == strtolower( $field ) ) {
129
+            // Make sure the value is numeric to avoid casting objects, for example,
130
+            // to int 1.
131
+            if ( ! is_numeric( $value ) )
132
+                return false;
133
+            $value = intval( $value );
134
+            if ( $value < 1 )
135
+                return false;
136
+        }
137
+
138
+        if ( ! $value || ! is_string( $field ) ) {
139
+            return false;
140
+        }
141
+
142
+        $field = trim( $field );
143
+
144
+        // prepare query args
145
+        switch ( strtolower( $field ) ) {
146
+            case 'id':
147
+                $discount_id = $value;
148
+                $args		 = array( 'include' => array( $value ) );
149
+                break;
150
+            case 'discount_code':
151
+            case 'code':
152
+                $value       = trim( $value );
153
+                $discount_id = wp_cache_get( $value, 'WPInv_Discount_Codes' );
154
+                $args		 = array( 'meta_key' => '_wpi_discount_code', 'meta_value' => $value );
155
+                break;
156
+            case 'name':
157
+                $discount_id = 0;
158
+                $args		 = array( 'name' => trim( $value ) );
159
+                break;
160
+            default:
161
+                $args		 = apply_filters( "wpinv_discount_get_data_by_{$field}_args", null, $value );
162
+                if ( ! is_array( $args ) ) {
163
+                    return apply_filters( "wpinv_discount_get_data_by_$field", false, $value );
164
+                }
165
+
166
+        }
167
+
168
+        // Check if there is a cached value.
169
+        if ( ! empty( $discount_id ) && $discount = wp_cache_get( (int) $discount_id, 'WPInv_Discounts' ) ) {
170
+            return $discount;
171
+        }
172
+
173
+        $args = array_merge(
174
+            $args,
175
+            array(
176
+                'post_type'      => 'wpi_discount',
177
+                'posts_per_page' => 1,
178
+                'post_status'    => array( 'publish', 'pending', 'draft', 'expired' )
179
+            )
180
+        );
181
+
182
+        $discount = get_posts( $args );
183
+
184
+        if( empty( $discount ) ) {
185
+            return false;
111 186
         }
112 187
 
113
-	}
114
-
115
-	/**
116
-	 * Fetch a discount from the db/cache
117
-	 *
118
-	 *
119
-	 * @static
120
-	 * @param string $field The field to query against: 'ID', 'discount_code'
121
-	 * @param string|int $value The field value
122
-	 * @deprecated
123
-	 * @since 1.0.15
124
-	 * @return array|bool array of discount details on success. False otherwise.
125
-	 */
126
-	public static function get_data_by( $field, $value ) {
127
-
128
-		if ( 'id' == strtolower( $field ) ) {
129
-			// Make sure the value is numeric to avoid casting objects, for example,
130
-			// to int 1.
131
-			if ( ! is_numeric( $value ) )
132
-				return false;
133
-			$value = intval( $value );
134
-			if ( $value < 1 )
135
-				return false;
136
-		}
137
-
138
-		if ( ! $value || ! is_string( $field ) ) {
139
-			return false;
140
-		}
141
-
142
-		$field = trim( $field );
143
-
144
-		// prepare query args
145
-		switch ( strtolower( $field ) ) {
146
-			case 'id':
147
-				$discount_id = $value;
148
-				$args		 = array( 'include' => array( $value ) );
149
-				break;
150
-			case 'discount_code':
151
-			case 'code':
152
-				$value       = trim( $value );
153
-				$discount_id = wp_cache_get( $value, 'WPInv_Discount_Codes' );
154
-				$args		 = array( 'meta_key' => '_wpi_discount_code', 'meta_value' => $value );
155
-				break;
156
-			case 'name':
157
-				$discount_id = 0;
158
-				$args		 = array( 'name' => trim( $value ) );
159
-				break;
160
-			default:
161
-				$args		 = apply_filters( "wpinv_discount_get_data_by_{$field}_args", null, $value );
162
-				if ( ! is_array( $args ) ) {
163
-					return apply_filters( "wpinv_discount_get_data_by_$field", false, $value );
164
-				}
165
-
166
-		}
167
-
168
-		// Check if there is a cached value.
169
-		if ( ! empty( $discount_id ) && $discount = wp_cache_get( (int) $discount_id, 'WPInv_Discounts' ) ) {
170
-			return $discount;
171
-		}
172
-
173
-		$args = array_merge(
174
-			$args,
175
-			array(
176
-				'post_type'      => 'wpi_discount',
177
-				'posts_per_page' => 1,
178
-				'post_status'    => array( 'publish', 'pending', 'draft', 'expired' )
179
-			)
180
-		);
181
-
182
-		$discount = get_posts( $args );
183
-
184
-		if( empty( $discount ) ) {
185
-			return false;
186
-		}
187
-
188
-		$discount = $discount[0];
189
-
190
-		// Prepare the return data.
191
-		$return = array(
188
+        $discount = $discount[0];
189
+
190
+        // Prepare the return data.
191
+        $return = array(
192 192
             'ID'                          => $discount->ID,
193 193
             'code'                        => get_post_meta( $discount->ID, '_wpi_discount_code', true ),
194 194
             'amount'                      => get_post_meta( $discount->ID, '_wpi_discount_amount', true ),
195 195
             'date_created'                => $discount->post_date,
196
-			'date_modified'               => $discount->post_modified,
197
-			'status'               		  => $discount->post_status,
198
-			'start'                  	  => get_post_meta( $discount->ID, '_wpi_discount_start', true ),
196
+            'date_modified'               => $discount->post_modified,
197
+            'status'               		  => $discount->post_status,
198
+            'start'                  	  => get_post_meta( $discount->ID, '_wpi_discount_start', true ),
199 199
             'expiration'                  => get_post_meta( $discount->ID, '_wpi_discount_expiration', true ),
200 200
             'type'               		  => get_post_meta( $discount->ID, '_wpi_discount_type', true ),
201 201
             'description'                 => $discount->post_excerpt,
@@ -209,77 +209,77 @@  discard block
 block discarded – undo
209 209
             'max_total'                   => get_post_meta( $discount->ID, '_wpi_discount_max_total', true ),
210 210
         );
211 211
 
212
-		$return = apply_filters( 'wpinv_discount_properties', $return );
213
-
214
-		// Update the cache with our data
215
-		wp_cache_add( $discount->ID, $return, 'WPInv_Discounts' );
216
-		wp_cache_add( $return['code'], $discount->ID, 'WPInv_Discount_Codes' );
217
-
218
-		return $return;
219
-	}
220
-
221
-	/**
222
-	 * Given a discount code, it returns a discount id.
223
-	 *
224
-	 *
225
-	 * @static
226
-	 * @param string $discount_code
227
-	 * @since 1.0.15
228
-	 * @return int
229
-	 */
230
-	public static function get_discount_id_by_code( $discount_code ) {
231
-
232
-		// Trim the code.
233
-		$discount_code = trim( $discount_code );
234
-
235
-		// Ensure a value has been passed.
236
-		if ( empty( $discount_code ) ) {
237
-			return 0;
238
-		}
239
-
240
-		// Maybe retrieve from the cache.
241
-		$discount_id   = wp_cache_get( $discount_code, 'getpaid_discount_codes' );
242
-		if ( ! empty( $discount_id ) ) {
243
-			return $discount_id;
244
-		}
245
-
246
-		// Fetch the first discount codes.
247
-		$discounts = get_posts(
248
-			array(
249
-				'meta_key'       => '_wpi_discount_code',
250
-				'meta_value'     => $discount_code,
251
-				'post_type'      => 'wpi_discount',
252
-				'posts_per_page' => 1,
253
-				'post_status'    => array( 'publish', 'pending', 'draft', 'expired' ),
254
-				'fields'         => 'ids',
255
-			)
256
-		);
257
-
258
-		if ( empty( $discounts ) ) {
259
-			return 0;
260
-		}
261
-
262
-		$discount_id = $discounts[0];
263
-
264
-		// Update the cache with our data
265
-		wp_cache_add( get_post_meta( $discount_id, '_wpi_discount_code', true ), $discount_id, 'getpaid_discount_codes' );
266
-
267
-		return $discount_id;
268
-	}
269
-
270
-	/**
271
-	 * Magic method for checking the existence of a certain custom field.
272
-	 *
273
-	 * @since 1.0.15
274
-	 * @access public
275
-	 *
276
-	 * @return bool Whether the given discount field is set.
277
-	 */
278
-	public function __isset( $key ){
279
-		return isset( $this->data[$key] ) || method_exists( $this, "get_$key");
280
-	}
281
-
282
-	/*
212
+        $return = apply_filters( 'wpinv_discount_properties', $return );
213
+
214
+        // Update the cache with our data
215
+        wp_cache_add( $discount->ID, $return, 'WPInv_Discounts' );
216
+        wp_cache_add( $return['code'], $discount->ID, 'WPInv_Discount_Codes' );
217
+
218
+        return $return;
219
+    }
220
+
221
+    /**
222
+     * Given a discount code, it returns a discount id.
223
+     *
224
+     *
225
+     * @static
226
+     * @param string $discount_code
227
+     * @since 1.0.15
228
+     * @return int
229
+     */
230
+    public static function get_discount_id_by_code( $discount_code ) {
231
+
232
+        // Trim the code.
233
+        $discount_code = trim( $discount_code );
234
+
235
+        // Ensure a value has been passed.
236
+        if ( empty( $discount_code ) ) {
237
+            return 0;
238
+        }
239
+
240
+        // Maybe retrieve from the cache.
241
+        $discount_id   = wp_cache_get( $discount_code, 'getpaid_discount_codes' );
242
+        if ( ! empty( $discount_id ) ) {
243
+            return $discount_id;
244
+        }
245
+
246
+        // Fetch the first discount codes.
247
+        $discounts = get_posts(
248
+            array(
249
+                'meta_key'       => '_wpi_discount_code',
250
+                'meta_value'     => $discount_code,
251
+                'post_type'      => 'wpi_discount',
252
+                'posts_per_page' => 1,
253
+                'post_status'    => array( 'publish', 'pending', 'draft', 'expired' ),
254
+                'fields'         => 'ids',
255
+            )
256
+        );
257
+
258
+        if ( empty( $discounts ) ) {
259
+            return 0;
260
+        }
261
+
262
+        $discount_id = $discounts[0];
263
+
264
+        // Update the cache with our data
265
+        wp_cache_add( get_post_meta( $discount_id, '_wpi_discount_code', true ), $discount_id, 'getpaid_discount_codes' );
266
+
267
+        return $discount_id;
268
+    }
269
+
270
+    /**
271
+     * Magic method for checking the existence of a certain custom field.
272
+     *
273
+     * @since 1.0.15
274
+     * @access public
275
+     *
276
+     * @return bool Whether the given discount field is set.
277
+     */
278
+    public function __isset( $key ){
279
+        return isset( $this->data[$key] ) || method_exists( $this, "get_$key");
280
+    }
281
+
282
+    /*
283 283
 	|--------------------------------------------------------------------------
284 284
 	| CRUD methods
285 285
 	|--------------------------------------------------------------------------
@@ -294,430 +294,430 @@  discard block
 block discarded – undo
294 294
 	|--------------------------------------------------------------------------
295 295
 	*/
296 296
 
297
-	/**
298
-	 * Get discount status.
299
-	 *
300
-	 * @since 1.0.19
301
-	 * @param  string $context View or edit context.
302
-	 * @return string
303
-	 */
304
-	public function get_status( $context = 'view' ) {
305
-		return $this->get_prop( 'status', $context );
297
+    /**
298
+     * Get discount status.
299
+     *
300
+     * @since 1.0.19
301
+     * @param  string $context View or edit context.
302
+     * @return string
303
+     */
304
+    public function get_status( $context = 'view' ) {
305
+        return $this->get_prop( 'status', $context );
306 306
     }
307 307
 
308 308
     /**
309
-	 * Get plugin version when the discount was created.
310
-	 *
311
-	 * @since 1.0.19
312
-	 * @param  string $context View or edit context.
313
-	 * @return string
314
-	 */
315
-	public function get_version( $context = 'view' ) {
316
-		return $this->get_prop( 'version', $context );
309
+     * Get plugin version when the discount was created.
310
+     *
311
+     * @since 1.0.19
312
+     * @param  string $context View or edit context.
313
+     * @return string
314
+     */
315
+    public function get_version( $context = 'view' ) {
316
+        return $this->get_prop( 'version', $context );
317 317
     }
318 318
 
319 319
     /**
320
-	 * Get date when the discount was created.
321
-	 *
322
-	 * @since 1.0.19
323
-	 * @param  string $context View or edit context.
324
-	 * @return string
325
-	 */
326
-	public function get_date_created( $context = 'view' ) {
327
-		return $this->get_prop( 'date_created', $context );
320
+     * Get date when the discount was created.
321
+     *
322
+     * @since 1.0.19
323
+     * @param  string $context View or edit context.
324
+     * @return string
325
+     */
326
+    public function get_date_created( $context = 'view' ) {
327
+        return $this->get_prop( 'date_created', $context );
328 328
     }
329 329
 
330 330
     /**
331
-	 * Get GMT date when the discount was created.
332
-	 *
333
-	 * @since 1.0.19
334
-	 * @param  string $context View or edit context.
335
-	 * @return string
336
-	 */
337
-	public function get_date_created_gmt( $context = 'view' ) {
331
+     * Get GMT date when the discount was created.
332
+     *
333
+     * @since 1.0.19
334
+     * @param  string $context View or edit context.
335
+     * @return string
336
+     */
337
+    public function get_date_created_gmt( $context = 'view' ) {
338 338
         $date = $this->get_date_created( $context );
339 339
 
340 340
         if ( $date ) {
341 341
             $date = get_gmt_from_date( $date );
342 342
         }
343
-		return $date;
343
+        return $date;
344 344
     }
345 345
 
346 346
     /**
347
-	 * Get date when the discount was last modified.
348
-	 *
349
-	 * @since 1.0.19
350
-	 * @param  string $context View or edit context.
351
-	 * @return string
352
-	 */
353
-	public function get_date_modified( $context = 'view' ) {
354
-		return $this->get_prop( 'date_modified', $context );
347
+     * Get date when the discount was last modified.
348
+     *
349
+     * @since 1.0.19
350
+     * @param  string $context View or edit context.
351
+     * @return string
352
+     */
353
+    public function get_date_modified( $context = 'view' ) {
354
+        return $this->get_prop( 'date_modified', $context );
355 355
     }
356 356
 
357 357
     /**
358
-	 * Get GMT date when the discount was last modified.
359
-	 *
360
-	 * @since 1.0.19
361
-	 * @param  string $context View or edit context.
362
-	 * @return string
363
-	 */
364
-	public function get_date_modified_gmt( $context = 'view' ) {
358
+     * Get GMT date when the discount was last modified.
359
+     *
360
+     * @since 1.0.19
361
+     * @param  string $context View or edit context.
362
+     * @return string
363
+     */
364
+    public function get_date_modified_gmt( $context = 'view' ) {
365 365
         $date = $this->get_date_modified( $context );
366 366
 
367 367
         if ( $date ) {
368 368
             $date = get_gmt_from_date( $date );
369 369
         }
370
-		return $date;
370
+        return $date;
371 371
     }
372 372
 
373 373
     /**
374
-	 * Get the discount name.
375
-	 *
376
-	 * @since 1.0.19
377
-	 * @param  string $context View or edit context.
378
-	 * @return string
379
-	 */
380
-	public function get_name( $context = 'view' ) {
381
-		return $this->get_prop( 'name', $context );
374
+     * Get the discount name.
375
+     *
376
+     * @since 1.0.19
377
+     * @param  string $context View or edit context.
378
+     * @return string
379
+     */
380
+    public function get_name( $context = 'view' ) {
381
+        return $this->get_prop( 'name', $context );
382 382
     }
383 383
 
384 384
     /**
385
-	 * Alias of self::get_name().
386
-	 *
387
-	 * @since 1.0.19
388
-	 * @param  string $context View or edit context.
389
-	 * @return string
390
-	 */
391
-	public function get_title( $context = 'view' ) {
392
-		return $this->get_name( $context );
385
+     * Alias of self::get_name().
386
+     *
387
+     * @since 1.0.19
388
+     * @param  string $context View or edit context.
389
+     * @return string
390
+     */
391
+    public function get_title( $context = 'view' ) {
392
+        return $this->get_name( $context );
393 393
     }
394 394
 
395 395
     /**
396
-	 * Get the discount description.
397
-	 *
398
-	 * @since 1.0.19
399
-	 * @param  string $context View or edit context.
400
-	 * @return string
401
-	 */
402
-	public function get_description( $context = 'view' ) {
403
-		return $this->get_prop( 'description', $context );
396
+     * Get the discount description.
397
+     *
398
+     * @since 1.0.19
399
+     * @param  string $context View or edit context.
400
+     * @return string
401
+     */
402
+    public function get_description( $context = 'view' ) {
403
+        return $this->get_prop( 'description', $context );
404 404
     }
405 405
 
406 406
     /**
407
-	 * Alias of self::get_description().
408
-	 *
409
-	 * @since 1.0.19
410
-	 * @param  string $context View or edit context.
411
-	 * @return string
412
-	 */
413
-	public function get_excerpt( $context = 'view' ) {
414
-		return $this->get_description( $context );
407
+     * Alias of self::get_description().
408
+     *
409
+     * @since 1.0.19
410
+     * @param  string $context View or edit context.
411
+     * @return string
412
+     */
413
+    public function get_excerpt( $context = 'view' ) {
414
+        return $this->get_description( $context );
415 415
     }
416 416
 
417 417
     /**
418
-	 * Alias of self::get_description().
419
-	 *
420
-	 * @since 1.0.19
421
-	 * @param  string $context View or edit context.
422
-	 * @return string
423
-	 */
424
-	public function get_summary( $context = 'view' ) {
425
-		return $this->get_description( $context );
418
+     * Alias of self::get_description().
419
+     *
420
+     * @since 1.0.19
421
+     * @param  string $context View or edit context.
422
+     * @return string
423
+     */
424
+    public function get_summary( $context = 'view' ) {
425
+        return $this->get_description( $context );
426 426
     }
427 427
 
428 428
     /**
429
-	 * Get the owner of the discount.
430
-	 *
431
-	 * @since 1.0.19
432
-	 * @param  string $context View or edit context.
433
-	 * @return string
434
-	 */
435
-	public function get_author( $context = 'view' ) {
436
-		return (int) $this->get_prop( 'author', $context );
437
-	}
429
+     * Get the owner of the discount.
430
+     *
431
+     * @since 1.0.19
432
+     * @param  string $context View or edit context.
433
+     * @return string
434
+     */
435
+    public function get_author( $context = 'view' ) {
436
+        return (int) $this->get_prop( 'author', $context );
437
+    }
438 438
 	
439
-	/**
440
-	 * Get the discount code.
441
-	 *
442
-	 * @since 1.0.19
443
-	 * @param  string $context View or edit context.
444
-	 * @return string
445
-	 */
446
-	public function get_code( $context = 'view' ) {
447
-		return $this->get_prop( 'code', $context );
448
-	}
439
+    /**
440
+     * Get the discount code.
441
+     *
442
+     * @since 1.0.19
443
+     * @param  string $context View or edit context.
444
+     * @return string
445
+     */
446
+    public function get_code( $context = 'view' ) {
447
+        return $this->get_prop( 'code', $context );
448
+    }
449 449
 	
450
-	/**
451
-	 * Alias for self::get_code().
452
-	 *
453
-	 * @since 1.0.19
454
-	 * @param  string $context View or edit context.
455
-	 * @return string
456
-	 */
457
-	public function get_coupon_code( $context = 'view' ) {
458
-		return $this->get_code( $context );
459
-	}
450
+    /**
451
+     * Alias for self::get_code().
452
+     *
453
+     * @since 1.0.19
454
+     * @param  string $context View or edit context.
455
+     * @return string
456
+     */
457
+    public function get_coupon_code( $context = 'view' ) {
458
+        return $this->get_code( $context );
459
+    }
460 460
 	
461
-	/**
462
-	 * Alias for self::get_code().
463
-	 *
464
-	 * @since 1.0.19
465
-	 * @param  string $context View or edit context.
466
-	 * @return string
467
-	 */
468
-	public function get_discount_code( $context = 'view' ) {
469
-		return $this->get_code( $context );
470
-	}
461
+    /**
462
+     * Alias for self::get_code().
463
+     *
464
+     * @since 1.0.19
465
+     * @param  string $context View or edit context.
466
+     * @return string
467
+     */
468
+    public function get_discount_code( $context = 'view' ) {
469
+        return $this->get_code( $context );
470
+    }
471 471
 	
472
-	/**
473
-	 * Get the discount's amount.
474
-	 *
475
-	 * @since 1.0.19
476
-	 * @param  string $context View or edit context.
477
-	 * @return float
478
-	 */
479
-	public function get_amount( $context = 'view' ) {
480
-		return $this->get_prop( 'amount', $context );
481
-	}
482
-
483
-	/**
484
-	 * Get the discount's formated amount/rate.
485
-	 *
486
-	 * @since 1.0.19
487
-	 * @return string
488
-	 */
489
-	public function get_formatted_amount() {
490
-
491
-		if ( $this->is_type( 'flat' ) ) {
492
-			$rate = wpinv_price( wpinv_format_amount( $this->get_amount() ) );
493
-		} else {
494
-			$rate = $this->get_amount() . '%';
495
-		}
496
-
497
-		return apply_filters( 'wpinv_format_discount_rate', $rate, $this->get_type(), $this->get_amount() );
498
-	}
472
+    /**
473
+     * Get the discount's amount.
474
+     *
475
+     * @since 1.0.19
476
+     * @param  string $context View or edit context.
477
+     * @return float
478
+     */
479
+    public function get_amount( $context = 'view' ) {
480
+        return $this->get_prop( 'amount', $context );
481
+    }
482
+
483
+    /**
484
+     * Get the discount's formated amount/rate.
485
+     *
486
+     * @since 1.0.19
487
+     * @return string
488
+     */
489
+    public function get_formatted_amount() {
490
+
491
+        if ( $this->is_type( 'flat' ) ) {
492
+            $rate = wpinv_price( wpinv_format_amount( $this->get_amount() ) );
493
+        } else {
494
+            $rate = $this->get_amount() . '%';
495
+        }
496
+
497
+        return apply_filters( 'wpinv_format_discount_rate', $rate, $this->get_type(), $this->get_amount() );
498
+    }
499 499
 	
500
-	/**
501
-	 * Get the discount's start date.
502
-	 *
503
-	 * @since 1.0.19
504
-	 * @param  string $context View or edit context.
505
-	 * @return string
506
-	 */
507
-	public function get_start( $context = 'view' ) {
508
-		return $this->get_prop( 'start', $context );
509
-	}
500
+    /**
501
+     * Get the discount's start date.
502
+     *
503
+     * @since 1.0.19
504
+     * @param  string $context View or edit context.
505
+     * @return string
506
+     */
507
+    public function get_start( $context = 'view' ) {
508
+        return $this->get_prop( 'start', $context );
509
+    }
510 510
 	
511
-	/**
512
-	 * Alias for self::get_start().
513
-	 *
514
-	 * @since 1.0.19
515
-	 * @param  string $context View or edit context.
516
-	 * @return string
517
-	 */
518
-	public function get_start_date( $context = 'view' ) {
519
-		return $this->get_start( $context );
520
-	}
511
+    /**
512
+     * Alias for self::get_start().
513
+     *
514
+     * @since 1.0.19
515
+     * @param  string $context View or edit context.
516
+     * @return string
517
+     */
518
+    public function get_start_date( $context = 'view' ) {
519
+        return $this->get_start( $context );
520
+    }
521 521
 	
522
-	/**
523
-	 * Get the discount's expiration date.
524
-	 *
525
-	 * @since 1.0.19
526
-	 * @param  string $context View or edit context.
527
-	 * @return string
528
-	 */
529
-	public function get_expiration( $context = 'view' ) {
530
-		return $this->get_prop( 'expiration', $context );
531
-	}
522
+    /**
523
+     * Get the discount's expiration date.
524
+     *
525
+     * @since 1.0.19
526
+     * @param  string $context View or edit context.
527
+     * @return string
528
+     */
529
+    public function get_expiration( $context = 'view' ) {
530
+        return $this->get_prop( 'expiration', $context );
531
+    }
532 532
 	
533
-	/**
534
-	 * Alias for self::get_expiration().
535
-	 *
536
-	 * @since 1.0.19
537
-	 * @param  string $context View or edit context.
538
-	 * @return string
539
-	 */
540
-	public function get_expiration_date( $context = 'view' ) {
541
-		return $this->get_expiration( $context );
542
-	}
543
-
544
-	/**
545
-	 * Alias for self::get_expiration().
546
-	 *
547
-	 * @since 1.0.19
548
-	 * @param  string $context View or edit context.
549
-	 * @return string
550
-	 */
551
-	public function get_end_date( $context = 'view' ) {
552
-		return $this->get_expiration( $context );
553
-	}
533
+    /**
534
+     * Alias for self::get_expiration().
535
+     *
536
+     * @since 1.0.19
537
+     * @param  string $context View or edit context.
538
+     * @return string
539
+     */
540
+    public function get_expiration_date( $context = 'view' ) {
541
+        return $this->get_expiration( $context );
542
+    }
543
+
544
+    /**
545
+     * Alias for self::get_expiration().
546
+     *
547
+     * @since 1.0.19
548
+     * @param  string $context View or edit context.
549
+     * @return string
550
+     */
551
+    public function get_end_date( $context = 'view' ) {
552
+        return $this->get_expiration( $context );
553
+    }
554 554
 	
555
-	/**
556
-	 * Get the discount's type.
557
-	 *
558
-	 * @since 1.0.19
559
-	 * @param  string $context View or edit context.
560
-	 * @return string
561
-	 */
562
-	public function get_type( $context = 'view' ) {
563
-		return $this->get_prop( 'type', $context );
564
-	}
565
-
566
-	/**
567
-	 * Get the number of times a discount has been used.
568
-	 *
569
-	 * @since 1.0.19
570
-	 * @param  string $context View or edit context.
571
-	 * @return int
572
-	 */
573
-	public function get_uses( $context = 'view' ) {
574
-		return (int) $this->get_prop( 'uses', $context );
575
-	}
576
-
577
-	/**
578
-	 * Get the discount's usage, i.e uses / max uses.
579
-	 *
580
-	 * @since 1.0.19
581
-	 * @return string
582
-	 */
583
-	public function get_usage() {
584
-
585
-		if ( ! $this->has_limit() ) {
586
-			return $this->get_uses() . ' / ' . ' &infin;';
587
-		}
588
-
589
-		return $this->get_uses() . ' / ' . (int) $this->get_max_uses();
590
-
591
-	}
592
-
593
-	/**
594
-	 * Get the maximum number of time a discount can be used.
595
-	 *
596
-	 * @since 1.0.19
597
-	 * @param  string $context View or edit context.
598
-	 * @return int
599
-	 */
600
-	public function get_max_uses( $context = 'view' ) {
601
-		$max_uses = $this->get_prop( 'max_uses', $context );
602
-		return empty( $max_uses ) ? null : $max_uses;
603
-	}
604
-
605
-	/**
606
-	 * Checks if this is a single use discount or not.
607
-	 *
608
-	 * @since 1.0.19
609
-	 * @param  string $context View or edit context.
610
-	 * @return bool
611
-	 */
612
-	public function get_is_single_use( $context = 'view' ) {
613
-		return $this->get_prop( 'is_single_use', $context );
614
-	}
615
-
616
-	/**
617
-	 * Get the items that can be used with this discount.
618
-	 *
619
-	 * @since 1.0.19
620
-	 * @param  string $context View or edit context.
621
-	 * @return array
622
-	 */
623
-	public function get_items( $context = 'view' ) {
624
-		return wpinv_parse_list( $this->get_prop( 'items', $context ) );
625
-	}
626
-
627
-	/**
628
-	 * Alias for self::get_items().
629
-	 *
630
-	 * @since 1.0.19
631
-	 * @param  string $context View or edit context.
632
-	 * @return array
633
-	 */
634
-	public function get_allowed_items( $context = 'view' ) {
635
-		return $this->get_items( $context );
636
-	}
637
-
638
-	/**
639
-	 * Get the items that are not allowed to use this discount.
640
-	 *
641
-	 * @since 1.0.19
642
-	 * @param  string $context View or edit context.
643
-	 * @return array
644
-	 */
645
-	public function get_excluded_items( $context = 'view' ) {
646
-		return wpinv_parse_list( $this->get_prop( 'excluded_items', $context ) );
647
-	}
648
-
649
-	/**
650
-	 * Checks if this is a recurring discount or not.
651
-	 *
652
-	 * @since 1.0.19
653
-	 * @param  string $context View or edit context.
654
-	 * @return int|string|bool
655
-	 */
656
-	public function get_is_recurring( $context = 'view' ) {
657
-		return $this->get_prop( 'is_recurring', $context );
658
-	}
659
-
660
-	/**
661
-	 * Get's the minimum total amount allowed for this discount.
662
-	 *
663
-	 * @since 1.0.19
664
-	 * @param  string $context View or edit context.
665
-	 * @return float
666
-	 */
667
-	public function get_min_total( $context = 'view' ) {
668
-		$minimum = $this->get_prop( 'min_total', $context );
669
-		return empty( $minimum ) ? null : $minimum;
670
-	}
671
-
672
-	/**
673
-	 * Alias for self::get_min_total().
674
-	 *
675
-	 * @since 1.0.19
676
-	 * @param  string $context View or edit context.
677
-	 * @return float
678
-	 */
679
-	public function get_minimum_total( $context = 'view' ) {
680
-		return $this->get_min_total( $context );
681
-	}
682
-
683
-	/**
684
-	 * Get's the maximum total amount allowed for this discount.
685
-	 *
686
-	 * @since 1.0.19
687
-	 * @param  string $context View or edit context.
688
-	 * @return float
689
-	 */
690
-	public function get_max_total( $context = 'view' ) {
691
-		$maximum = $this->get_prop( 'max_total', $context );
692
-		return empty( $maximum ) ? null : $maximum;
693
-	}
694
-
695
-	/**
696
-	 * Alias for self::get_max_total().
697
-	 *
698
-	 * @since 1.0.19
699
-	 * @param  string $context View or edit context.
700
-	 * @return float
701
-	 */
702
-	public function get_maximum_total( $context = 'view' ) {
703
-		return $this->get_max_total( $context );
704
-	}
705
-
706
-	/**
707
-	 * Magic method for accessing discount properties.
708
-	 *
709
-	 * @since 1.0.15
710
-	 * @access public
711
-	 *
712
-	 * @param string $key Discount data to retrieve
713
-	 * @param  string $context View or edit context.
714
-	 * @return mixed Value of the given discount property (if set).
715
-	 */
716
-	public function get( $key, $context = 'view' ) {
555
+    /**
556
+     * Get the discount's type.
557
+     *
558
+     * @since 1.0.19
559
+     * @param  string $context View or edit context.
560
+     * @return string
561
+     */
562
+    public function get_type( $context = 'view' ) {
563
+        return $this->get_prop( 'type', $context );
564
+    }
565
+
566
+    /**
567
+     * Get the number of times a discount has been used.
568
+     *
569
+     * @since 1.0.19
570
+     * @param  string $context View or edit context.
571
+     * @return int
572
+     */
573
+    public function get_uses( $context = 'view' ) {
574
+        return (int) $this->get_prop( 'uses', $context );
575
+    }
576
+
577
+    /**
578
+     * Get the discount's usage, i.e uses / max uses.
579
+     *
580
+     * @since 1.0.19
581
+     * @return string
582
+     */
583
+    public function get_usage() {
584
+
585
+        if ( ! $this->has_limit() ) {
586
+            return $this->get_uses() . ' / ' . ' &infin;';
587
+        }
588
+
589
+        return $this->get_uses() . ' / ' . (int) $this->get_max_uses();
590
+
591
+    }
592
+
593
+    /**
594
+     * Get the maximum number of time a discount can be used.
595
+     *
596
+     * @since 1.0.19
597
+     * @param  string $context View or edit context.
598
+     * @return int
599
+     */
600
+    public function get_max_uses( $context = 'view' ) {
601
+        $max_uses = $this->get_prop( 'max_uses', $context );
602
+        return empty( $max_uses ) ? null : $max_uses;
603
+    }
604
+
605
+    /**
606
+     * Checks if this is a single use discount or not.
607
+     *
608
+     * @since 1.0.19
609
+     * @param  string $context View or edit context.
610
+     * @return bool
611
+     */
612
+    public function get_is_single_use( $context = 'view' ) {
613
+        return $this->get_prop( 'is_single_use', $context );
614
+    }
615
+
616
+    /**
617
+     * Get the items that can be used with this discount.
618
+     *
619
+     * @since 1.0.19
620
+     * @param  string $context View or edit context.
621
+     * @return array
622
+     */
623
+    public function get_items( $context = 'view' ) {
624
+        return wpinv_parse_list( $this->get_prop( 'items', $context ) );
625
+    }
626
+
627
+    /**
628
+     * Alias for self::get_items().
629
+     *
630
+     * @since 1.0.19
631
+     * @param  string $context View or edit context.
632
+     * @return array
633
+     */
634
+    public function get_allowed_items( $context = 'view' ) {
635
+        return $this->get_items( $context );
636
+    }
637
+
638
+    /**
639
+     * Get the items that are not allowed to use this discount.
640
+     *
641
+     * @since 1.0.19
642
+     * @param  string $context View or edit context.
643
+     * @return array
644
+     */
645
+    public function get_excluded_items( $context = 'view' ) {
646
+        return wpinv_parse_list( $this->get_prop( 'excluded_items', $context ) );
647
+    }
648
+
649
+    /**
650
+     * Checks if this is a recurring discount or not.
651
+     *
652
+     * @since 1.0.19
653
+     * @param  string $context View or edit context.
654
+     * @return int|string|bool
655
+     */
656
+    public function get_is_recurring( $context = 'view' ) {
657
+        return $this->get_prop( 'is_recurring', $context );
658
+    }
659
+
660
+    /**
661
+     * Get's the minimum total amount allowed for this discount.
662
+     *
663
+     * @since 1.0.19
664
+     * @param  string $context View or edit context.
665
+     * @return float
666
+     */
667
+    public function get_min_total( $context = 'view' ) {
668
+        $minimum = $this->get_prop( 'min_total', $context );
669
+        return empty( $minimum ) ? null : $minimum;
670
+    }
671
+
672
+    /**
673
+     * Alias for self::get_min_total().
674
+     *
675
+     * @since 1.0.19
676
+     * @param  string $context View or edit context.
677
+     * @return float
678
+     */
679
+    public function get_minimum_total( $context = 'view' ) {
680
+        return $this->get_min_total( $context );
681
+    }
682
+
683
+    /**
684
+     * Get's the maximum total amount allowed for this discount.
685
+     *
686
+     * @since 1.0.19
687
+     * @param  string $context View or edit context.
688
+     * @return float
689
+     */
690
+    public function get_max_total( $context = 'view' ) {
691
+        $maximum = $this->get_prop( 'max_total', $context );
692
+        return empty( $maximum ) ? null : $maximum;
693
+    }
694
+
695
+    /**
696
+     * Alias for self::get_max_total().
697
+     *
698
+     * @since 1.0.19
699
+     * @param  string $context View or edit context.
700
+     * @return float
701
+     */
702
+    public function get_maximum_total( $context = 'view' ) {
703
+        return $this->get_max_total( $context );
704
+    }
705
+
706
+    /**
707
+     * Magic method for accessing discount properties.
708
+     *
709
+     * @since 1.0.15
710
+     * @access public
711
+     *
712
+     * @param string $key Discount data to retrieve
713
+     * @param  string $context View or edit context.
714
+     * @return mixed Value of the given discount property (if set).
715
+     */
716
+    public function get( $key, $context = 'view' ) {
717 717
         return $this->get_prop( $key, $context );
718
-	}
718
+    }
719 719
 
720
-	/*
720
+    /*
721 721
 	|--------------------------------------------------------------------------
722 722
 	| Setters
723 723
 	|--------------------------------------------------------------------------
@@ -727,41 +727,41 @@  discard block
 block discarded – undo
727 727
 	| object.
728 728
 	*/
729 729
 	
730
-	/**
731
-	 * Sets discount status.
732
-	 *
733
-	 * @since 1.0.19
734
-	 * @param  string $status New status.
735
-	 * @return array details of change.
736
-	 */
737
-	public function set_status( $status ) {
730
+    /**
731
+     * Sets discount status.
732
+     *
733
+     * @since 1.0.19
734
+     * @param  string $status New status.
735
+     * @return array details of change.
736
+     */
737
+    public function set_status( $status ) {
738 738
         $old_status = $this->get_status();
739 739
 
740 740
         $this->set_prop( 'status', $status );
741 741
 
742
-		return array(
743
-			'from' => $old_status,
744
-			'to'   => $status,
745
-		);
742
+        return array(
743
+            'from' => $old_status,
744
+            'to'   => $status,
745
+        );
746 746
     }
747 747
 
748 748
     /**
749
-	 * Set plugin version when the discount was created.
750
-	 *
751
-	 * @since 1.0.19
752
-	 */
753
-	public function set_version( $value ) {
754
-		$this->set_prop( 'version', $value );
749
+     * Set plugin version when the discount was created.
750
+     *
751
+     * @since 1.0.19
752
+     */
753
+    public function set_version( $value ) {
754
+        $this->set_prop( 'version', $value );
755 755
     }
756 756
 
757 757
     /**
758
-	 * Set date when the discount was created.
759
-	 *
760
-	 * @since 1.0.19
761
-	 * @param string $value Value to set.
758
+     * Set date when the discount was created.
759
+     *
760
+     * @since 1.0.19
761
+     * @param string $value Value to set.
762 762
      * @return bool Whether or not the date was set.
763
-	 */
764
-	public function set_date_created( $value ) {
763
+     */
764
+    public function set_date_created( $value ) {
765 765
         $date = strtotime( $value );
766 766
 
767 767
         if ( $date ) {
@@ -774,13 +774,13 @@  discard block
 block discarded – undo
774 774
     }
775 775
 
776 776
     /**
777
-	 * Set date when the discount was last modified.
778
-	 *
779
-	 * @since 1.0.19
780
-	 * @param string $value Value to set.
777
+     * Set date when the discount was last modified.
778
+     *
779
+     * @since 1.0.19
780
+     * @param string $value Value to set.
781 781
      * @return bool Whether or not the date was set.
782
-	 */
783
-	public function set_date_modified( $value ) {
782
+     */
783
+    public function set_date_modified( $value ) {
784 784
         $date = strtotime( $value );
785 785
 
786 786
         if ( $date ) {
@@ -793,324 +793,324 @@  discard block
 block discarded – undo
793 793
     }
794 794
 
795 795
     /**
796
-	 * Set the discount name.
797
-	 *
798
-	 * @since 1.0.19
799
-	 * @param  string $value New name.
800
-	 */
801
-	public function set_name( $value ) {
796
+     * Set the discount name.
797
+     *
798
+     * @since 1.0.19
799
+     * @param  string $value New name.
800
+     */
801
+    public function set_name( $value ) {
802 802
         $name = sanitize_text_field( $value );
803
-		$this->set_prop( 'name', $name );
803
+        $this->set_prop( 'name', $name );
804 804
     }
805 805
 
806 806
     /**
807
-	 * Alias of self::set_name().
808
-	 *
809
-	 * @since 1.0.19
810
-	 * @param  string $value New name.
811
-	 */
812
-	public function set_title( $value ) {
813
-		$this->set_name( $value );
807
+     * Alias of self::set_name().
808
+     *
809
+     * @since 1.0.19
810
+     * @param  string $value New name.
811
+     */
812
+    public function set_title( $value ) {
813
+        $this->set_name( $value );
814 814
     }
815 815
 
816 816
     /**
817
-	 * Set the discount description.
818
-	 *
819
-	 * @since 1.0.19
820
-	 * @param  string $value New description.
821
-	 */
822
-	public function set_description( $value ) {
817
+     * Set the discount description.
818
+     *
819
+     * @since 1.0.19
820
+     * @param  string $value New description.
821
+     */
822
+    public function set_description( $value ) {
823 823
         $description = wp_kses_post( $value );
824
-		return $this->set_prop( 'description', $description );
824
+        return $this->set_prop( 'description', $description );
825 825
     }
826 826
 
827 827
     /**
828
-	 * Alias of self::set_description().
829
-	 *
830
-	 * @since 1.0.19
831
-	 * @param  string $value New description.
832
-	 */
833
-	public function set_excerpt( $value ) {
834
-		$this->set_description( $value );
828
+     * Alias of self::set_description().
829
+     *
830
+     * @since 1.0.19
831
+     * @param  string $value New description.
832
+     */
833
+    public function set_excerpt( $value ) {
834
+        $this->set_description( $value );
835 835
     }
836 836
 
837 837
     /**
838
-	 * Alias of self::set_description().
839
-	 *
840
-	 * @since 1.0.19
841
-	 * @param  string $value New description.
842
-	 */
843
-	public function set_summary( $value ) {
844
-		$this->set_description( $value );
838
+     * Alias of self::set_description().
839
+     *
840
+     * @since 1.0.19
841
+     * @param  string $value New description.
842
+     */
843
+    public function set_summary( $value ) {
844
+        $this->set_description( $value );
845 845
     }
846 846
 
847 847
     /**
848
-	 * Set the owner of the discount.
849
-	 *
850
-	 * @since 1.0.19
851
-	 * @param  int $value New author.
852
-	 */
853
-	public function set_author( $value ) {
854
-		$this->set_prop( 'author', (int) $value );
855
-	}
848
+     * Set the owner of the discount.
849
+     *
850
+     * @since 1.0.19
851
+     * @param  int $value New author.
852
+     */
853
+    public function set_author( $value ) {
854
+        $this->set_prop( 'author', (int) $value );
855
+    }
856 856
 	
857
-	/**
858
-	 * Sets the discount code.
859
-	 *
860
-	 * @since 1.0.19
861
-	 * @param string $value New discount code.
862
-	 */
863
-	public function set_code( $value ) {
864
-		$code = sanitize_text_field( $value );
865
-		$this->set_prop( 'code', $code );
866
-	}
857
+    /**
858
+     * Sets the discount code.
859
+     *
860
+     * @since 1.0.19
861
+     * @param string $value New discount code.
862
+     */
863
+    public function set_code( $value ) {
864
+        $code = sanitize_text_field( $value );
865
+        $this->set_prop( 'code', $code );
866
+    }
867 867
 	
868
-	/**
869
-	 * Alias of self::set_code().
870
-	 *
871
-	 * @since 1.0.19
872
-	 * @param string $value New discount code.
873
-	 */
874
-	public function set_coupon_code( $value ) {
875
-		$this->set_code( $value );
876
-	}
868
+    /**
869
+     * Alias of self::set_code().
870
+     *
871
+     * @since 1.0.19
872
+     * @param string $value New discount code.
873
+     */
874
+    public function set_coupon_code( $value ) {
875
+        $this->set_code( $value );
876
+    }
877 877
 	
878
-	/**
879
-	 * Alias of self::set_code().
880
-	 *
881
-	 * @since 1.0.19
882
-	 * @param string $value New discount code.
883
-	 */
884
-	public function set_discount_code( $value ) {
885
-		$this->set_code( $value );
886
-	}
878
+    /**
879
+     * Alias of self::set_code().
880
+     *
881
+     * @since 1.0.19
882
+     * @param string $value New discount code.
883
+     */
884
+    public function set_discount_code( $value ) {
885
+        $this->set_code( $value );
886
+    }
887 887
 	
888
-	/**
889
-	 * Sets the discount amount.
890
-	 *
891
-	 * @since 1.0.19
892
-	 * @param float $value New discount code.
893
-	 */
894
-	public function set_amount( $value ) {
895
-		$amount = floatval( wpinv_sanitize_amount( $value ) );
896
-		$this->set_prop( 'amount', $amount );
897
-	}
898
-
899
-	/**
900
-	 * Sets the discount's start date.
901
-	 *
902
-	 * @since 1.0.19
903
-	 * @param float $value New start date.
904
-	 */
905
-	public function set_start( $value ) {
906
-		$date = strtotime( $value );
888
+    /**
889
+     * Sets the discount amount.
890
+     *
891
+     * @since 1.0.19
892
+     * @param float $value New discount code.
893
+     */
894
+    public function set_amount( $value ) {
895
+        $amount = floatval( wpinv_sanitize_amount( $value ) );
896
+        $this->set_prop( 'amount', $amount );
897
+    }
907 898
 
908
-        if ( $date ) {
909
-            $this->set_prop( 'start', date( 'Y-m-d H:i', $date ) );
910
-            return true;
911
-		}
899
+    /**
900
+     * Sets the discount's start date.
901
+     *
902
+     * @since 1.0.19
903
+     * @param float $value New start date.
904
+     */
905
+    public function set_start( $value ) {
906
+        $date = strtotime( $value );
907
+
908
+        if ( $date ) {
909
+            $this->set_prop( 'start', date( 'Y-m-d H:i', $date ) );
910
+            return true;
911
+        }
912 912
 		
913
-		$this->set_prop( 'start', '' );
913
+        $this->set_prop( 'start', '' );
914 914
 
915 915
         return false;
916
-	}
917
-
918
-	/**
919
-	 * Alias of self::set_start().
920
-	 *
921
-	 * @since 1.0.19
922
-	 * @param string $value New start date.
923
-	 */
924
-	public function set_start_date( $value ) {
925
-		$this->set_start( $value );
926
-	}
927
-
928
-	/**
929
-	 * Sets the discount's expiration date.
930
-	 *
931
-	 * @since 1.0.19
932
-	 * @param float $value New expiration date.
933
-	 */
934
-	public function set_expiration( $value ) {
935
-		$date = strtotime( $value );
916
+    }
917
+
918
+    /**
919
+     * Alias of self::set_start().
920
+     *
921
+     * @since 1.0.19
922
+     * @param string $value New start date.
923
+     */
924
+    public function set_start_date( $value ) {
925
+        $this->set_start( $value );
926
+    }
927
+
928
+    /**
929
+     * Sets the discount's expiration date.
930
+     *
931
+     * @since 1.0.19
932
+     * @param float $value New expiration date.
933
+     */
934
+    public function set_expiration( $value ) {
935
+        $date = strtotime( $value );
936 936
 
937 937
         if ( $date ) {
938 938
             $this->set_prop( 'expiration', date( 'Y-m-d H:i', $date ) );
939 939
             return true;
940 940
         }
941 941
 
942
-		$this->set_prop( 'expiration', '' );
942
+        $this->set_prop( 'expiration', '' );
943 943
         return false;
944
-	}
945
-
946
-	/**
947
-	 * Alias of self::set_expiration().
948
-	 *
949
-	 * @since 1.0.19
950
-	 * @param string $value New expiration date.
951
-	 */
952
-	public function set_expiration_date( $value ) {
953
-		$this->set_expiration( $value );
954
-	}
955
-
956
-	/**
957
-	 * Alias of self::set_expiration().
958
-	 *
959
-	 * @since 1.0.19
960
-	 * @param string $value New expiration date.
961
-	 */
962
-	public function set_end_date( $value ) {
963
-		$this->set_expiration( $value );
964
-	}
965
-
966
-	/**
967
-	 * Sets the discount type.
968
-	 *
969
-	 * @since 1.0.19
970
-	 * @param string $value New discount type.
971
-	 */
972
-	public function set_type( $value ) {
973
-		if ( $value && array_key_exists( sanitize_text_field( $value ), wpinv_get_discount_types() ) ) {
974
-			$this->set_prop( 'type', sanitize_text_field( $value ) );
975
-		}
976
-	}
977
-
978
-	/**
979
-	 * Sets the number of times a discount has been used.
980
-	 *
981
-	 * @since 1.0.19
982
-	 * @param int $value usage count.
983
-	 */
984
-	public function set_uses( $value ) {
985
-
986
-		$value = (int) $value;
987
-
988
-		if ( $value < 0 ) {
989
-			$value = 0;
990
-		}
991
-
992
-		$this->set_prop( 'uses', (int) $value );
993
-	}
994
-
995
-	/**
996
-	 * Sets the maximum number of times a discount can be used.
997
-	 *
998
-	 * @since 1.0.19
999
-	 * @param int $value maximum usage count.
1000
-	 */
1001
-	public function set_max_uses( $value ) {
1002
-		$this->set_prop( 'max_uses', absint( $value ) );
1003
-	}
1004
-
1005
-	/**
1006
-	 * Sets if this is a single use discount or not.
1007
-	 *
1008
-	 * @since 1.0.19
1009
-	 * @param int|bool $value is single use.
1010
-	 */
1011
-	public function set_is_single_use( $value ) {
1012
-		$this->set_prop( 'is_single_use', (bool) $value );
1013
-	}
1014
-
1015
-	/**
1016
-	 * Sets the items that can be used with this discount.
1017
-	 *
1018
-	 * @since 1.0.19
1019
-	 * @param array $value items.
1020
-	 */
1021
-	public function set_items( $value ) {
1022
-		$this->set_prop( 'items', wpinv_parse_list( $value ) );
1023
-	}
1024
-
1025
-	/**
1026
-	 * Alias for self::set_items().
1027
-	 *
1028
-	 * @since 1.0.19
1029
-	 * @param array $value items.
1030
-	 */
1031
-	public function set_allowed_items( $value ) {
1032
-		$this->set_items( $value );
1033
-	}
1034
-
1035
-	/**
1036
-	 * Sets the items that can not be used with this discount.
1037
-	 *
1038
-	 * @since 1.0.19
1039
-	 * @param array $value items.
1040
-	 */
1041
-	public function set_excluded_items( $value ) {
1042
-		$this->set_prop( 'excluded_items', wpinv_parse_list( $value ) );
1043
-	}
1044
-
1045
-	/**
1046
-	 * Sets if this is a recurring discounts or not.
1047
-	 *
1048
-	 * @since 1.0.19
1049
-	 * @param int|bool $value is recurring.
1050
-	 */
1051
-	public function set_is_recurring( $value ) {
1052
-		$this->set_prop( 'is_recurring', (bool) $value );
1053
-	}
1054
-
1055
-	/**
1056
-	 * Sets the minimum total that can not be used with this discount.
1057
-	 *
1058
-	 * @since 1.0.19
1059
-	 * @param float $value minimum total.
1060
-	 */
1061
-	public function set_min_total( $value ) {
1062
-		$this->set_prop( 'min_total', (float) wpinv_sanitize_amount( $value ) );
1063
-	}
1064
-
1065
-	/**
1066
-	 * Alias for self::set_min_total().
1067
-	 *
1068
-	 * @since 1.0.19
1069
-	 * @param float $value minimum total.
1070
-	 */
1071
-	public function set_minimum_total( $value ) {
1072
-		$this->set_min_total( $value );
1073
-	}
1074
-
1075
-	/**
1076
-	 * Sets the maximum total that can not be used with this discount.
1077
-	 *
1078
-	 * @since 1.0.19
1079
-	 * @param float $value maximum total.
1080
-	 */
1081
-	public function set_max_total( $value ) {
1082
-		$this->set_prop( 'max_total', (float) wpinv_sanitize_amount( $value ) );
1083
-	}
1084
-
1085
-	/**
1086
-	 * Alias for self::set_max_total().
1087
-	 *
1088
-	 * @since 1.0.19
1089
-	 * @param float $value maximum total.
1090
-	 */
1091
-	public function set_maximum_total( $value ) {
1092
-		$this->set_max_total( $value );
1093
-	}
1094
-
1095
-	/**
1096
-	 * @deprecated
1097
-	 */
1098
-	public function refresh(){}
1099
-
1100
-	/**
1101
-	 * @deprecated
1102
-	 *
1103
-	 */
1104
-	public function update_status( $status = 'publish' ){
1105
-
1106
-		if ( $this->exists() && $this->get_status() != $status ) {
1107
-			$this->set_status( $status );
1108
-			$this->save();
1109
-		}
1110
-
1111
-	}
1112
-
1113
-	/*
944
+    }
945
+
946
+    /**
947
+     * Alias of self::set_expiration().
948
+     *
949
+     * @since 1.0.19
950
+     * @param string $value New expiration date.
951
+     */
952
+    public function set_expiration_date( $value ) {
953
+        $this->set_expiration( $value );
954
+    }
955
+
956
+    /**
957
+     * Alias of self::set_expiration().
958
+     *
959
+     * @since 1.0.19
960
+     * @param string $value New expiration date.
961
+     */
962
+    public function set_end_date( $value ) {
963
+        $this->set_expiration( $value );
964
+    }
965
+
966
+    /**
967
+     * Sets the discount type.
968
+     *
969
+     * @since 1.0.19
970
+     * @param string $value New discount type.
971
+     */
972
+    public function set_type( $value ) {
973
+        if ( $value && array_key_exists( sanitize_text_field( $value ), wpinv_get_discount_types() ) ) {
974
+            $this->set_prop( 'type', sanitize_text_field( $value ) );
975
+        }
976
+    }
977
+
978
+    /**
979
+     * Sets the number of times a discount has been used.
980
+     *
981
+     * @since 1.0.19
982
+     * @param int $value usage count.
983
+     */
984
+    public function set_uses( $value ) {
985
+
986
+        $value = (int) $value;
987
+
988
+        if ( $value < 0 ) {
989
+            $value = 0;
990
+        }
991
+
992
+        $this->set_prop( 'uses', (int) $value );
993
+    }
994
+
995
+    /**
996
+     * Sets the maximum number of times a discount can be used.
997
+     *
998
+     * @since 1.0.19
999
+     * @param int $value maximum usage count.
1000
+     */
1001
+    public function set_max_uses( $value ) {
1002
+        $this->set_prop( 'max_uses', absint( $value ) );
1003
+    }
1004
+
1005
+    /**
1006
+     * Sets if this is a single use discount or not.
1007
+     *
1008
+     * @since 1.0.19
1009
+     * @param int|bool $value is single use.
1010
+     */
1011
+    public function set_is_single_use( $value ) {
1012
+        $this->set_prop( 'is_single_use', (bool) $value );
1013
+    }
1014
+
1015
+    /**
1016
+     * Sets the items that can be used with this discount.
1017
+     *
1018
+     * @since 1.0.19
1019
+     * @param array $value items.
1020
+     */
1021
+    public function set_items( $value ) {
1022
+        $this->set_prop( 'items', wpinv_parse_list( $value ) );
1023
+    }
1024
+
1025
+    /**
1026
+     * Alias for self::set_items().
1027
+     *
1028
+     * @since 1.0.19
1029
+     * @param array $value items.
1030
+     */
1031
+    public function set_allowed_items( $value ) {
1032
+        $this->set_items( $value );
1033
+    }
1034
+
1035
+    /**
1036
+     * Sets the items that can not be used with this discount.
1037
+     *
1038
+     * @since 1.0.19
1039
+     * @param array $value items.
1040
+     */
1041
+    public function set_excluded_items( $value ) {
1042
+        $this->set_prop( 'excluded_items', wpinv_parse_list( $value ) );
1043
+    }
1044
+
1045
+    /**
1046
+     * Sets if this is a recurring discounts or not.
1047
+     *
1048
+     * @since 1.0.19
1049
+     * @param int|bool $value is recurring.
1050
+     */
1051
+    public function set_is_recurring( $value ) {
1052
+        $this->set_prop( 'is_recurring', (bool) $value );
1053
+    }
1054
+
1055
+    /**
1056
+     * Sets the minimum total that can not be used with this discount.
1057
+     *
1058
+     * @since 1.0.19
1059
+     * @param float $value minimum total.
1060
+     */
1061
+    public function set_min_total( $value ) {
1062
+        $this->set_prop( 'min_total', (float) wpinv_sanitize_amount( $value ) );
1063
+    }
1064
+
1065
+    /**
1066
+     * Alias for self::set_min_total().
1067
+     *
1068
+     * @since 1.0.19
1069
+     * @param float $value minimum total.
1070
+     */
1071
+    public function set_minimum_total( $value ) {
1072
+        $this->set_min_total( $value );
1073
+    }
1074
+
1075
+    /**
1076
+     * Sets the maximum total that can not be used with this discount.
1077
+     *
1078
+     * @since 1.0.19
1079
+     * @param float $value maximum total.
1080
+     */
1081
+    public function set_max_total( $value ) {
1082
+        $this->set_prop( 'max_total', (float) wpinv_sanitize_amount( $value ) );
1083
+    }
1084
+
1085
+    /**
1086
+     * Alias for self::set_max_total().
1087
+     *
1088
+     * @since 1.0.19
1089
+     * @param float $value maximum total.
1090
+     */
1091
+    public function set_maximum_total( $value ) {
1092
+        $this->set_max_total( $value );
1093
+    }
1094
+
1095
+    /**
1096
+     * @deprecated
1097
+     */
1098
+    public function refresh(){}
1099
+
1100
+    /**
1101
+     * @deprecated
1102
+     *
1103
+     */
1104
+    public function update_status( $status = 'publish' ){
1105
+
1106
+        if ( $this->exists() && $this->get_status() != $status ) {
1107
+            $this->set_status( $status );
1108
+            $this->save();
1109
+        }
1110
+
1111
+    }
1112
+
1113
+    /*
1114 1114
 	|--------------------------------------------------------------------------
1115 1115
 	| Conditionals
1116 1116
 	|--------------------------------------------------------------------------
@@ -1119,263 +1119,263 @@  discard block
 block discarded – undo
1119 1119
 	|
1120 1120
 	*/
1121 1121
 
1122
-	/**
1123
-	 * Checks whether a discount exists in the database or not
1124
-	 *
1125
-	 * @since 1.0.15
1126
-	 */
1127
-	public function exists(){
1128
-		$id = $this->get_id();
1129
-		return ! empty( $id );
1130
-	}
1131
-
1132
-	/**
1133
-	 * Checks the discount type.
1134
-	 *
1135
-	 *
1136
-	 * @param  string $type the discount type to check against
1137
-	 * @since 1.0.15
1138
-	 * @return bool
1139
-	 */
1140
-	public function is_type( $type ) {
1141
-		return $this->get_type() == $type;
1142
-	}
1143
-
1144
-	/**
1145
-	 * Checks whether the discount is published or not
1146
-	 *
1147
-	 * @since 1.0.15
1148
-	 * @return bool
1149
-	 */
1150
-	public function is_active() {
1151
-		return $this->get_status() == 'publish';
1152
-	}
1153
-
1154
-	/**
1155
-	 * Checks whether the discount has max uses
1156
-	 *
1157
-	 * @since 1.0.15
1158
-	 * @return bool
1159
-	 */
1160
-	public function has_limit() {
1161
-		$limit = $this->get_max_uses();
1162
-		return ! empty( $limit );
1163
-	}
1164
-
1165
-	/**
1166
-	 * Checks whether the discount has ever been used.
1167
-	 *
1168
-	 * @since 1.0.15
1169
-	 * @return bool
1170
-	 */
1171
-	public function has_uses() {
1172
-		return $this->get_uses() > 0;
1173
-	}
1174
-
1175
-	/**
1176
-	 * Checks whether the discount is has exided the usage limit or not
1177
-	 *
1178
-	 * @since 1.0.15
1179
-	 * @return bool
1180
-	 */
1181
-	public function has_exceeded_limit() {
1182
-
1183
-		if ( ! $this->has_limit() || ! $this->has_uses() ) {
1184
-			$exceeded = false ;
1185
-		} else {
1186
-			$exceeded = ! ( (int) $this->get_max_uses() < $this->get_uses() );
1187
-		}
1188
-
1189
-		return apply_filters( 'wpinv_is_discount_maxed_out', $exceeded, $this->get_id(), $this, $this->get_code() );
1190
-	}
1191
-
1192
-	/**
1193
-	 * Checks whether the discount has an expiration date.
1194
-	 *
1195
-	 * @since 1.0.15
1196
-	 * @return bool
1197
-	 */
1198
-	public function has_expiration_date() {
1199
-		$date = $this->get_expiration_date();
1200
-		return ! empty( $date );
1201
-	}
1202
-
1203
-	/**
1204
-	 * Checks if the discount is expired
1205
-	 *
1206
-	 * @since 1.0.15
1207
-	 * @return bool
1208
-	 */
1209
-	public function is_expired() {
1210
-		$expired = $this->has_expiration_date() ? current_time( 'timestamp' ) > strtotime( $this->get_expiration_date() ) : false;
1211
-		return apply_filters( 'wpinv_is_discount_expired', $expired, $this->get_id(), $this, $this->get_code() );
1212
-	}
1213
-
1214
-	/**
1215
-	 * Checks whether the discount has a start date.
1216
-	 *
1217
-	 * @since 1.0.15
1218
-	 * @return bool
1219
-	 */
1220
-	public function has_start_date() {
1221
-		$date = $this->get_start_date();
1222
-		return ! empty( $date );
1223
-	}
1224
-
1225
-	/**
1226
-	 * Checks the discount start date.
1227
-	 *
1228
-	 * @since 1.0.15
1229
-	 * @return bool
1230
-	 */
1231
-	public function has_started() {
1232
-		$started = $this->has_start_date() ? true : current_time( 'timestamp' ) > strtotime( $this->get_start_date() );
1233
-		return apply_filters( 'wpinv_is_discount_started', $started, $this->get_id(), $this, $this->get_code() );
1234
-	}
1235
-
1236
-	/**
1237
-	 * Checks the discount has allowed items or not.
1238
-	 *
1239
-	 * @since 1.0.15
1240
-	 * @return bool
1241
-	 */
1242
-	public function has_allowed_items() {
1243
-		$allowed_items = $this->get_allowed_items();
1244
-		return ! empty( $allowed_items );
1245
-	}
1246
-
1247
-	/**
1248
-	 * Checks the discount has excluded items or not.
1249
-	 *
1250
-	 * @since 1.0.15
1251
-	 * @return bool
1252
-	 */
1253
-	public function has_excluded_items() {
1254
-		$excluded_items = $this->get_excluded_items();
1255
-		return ! empty( $excluded_items );
1256
-	}
1257
-
1258
-	/**
1259
-	 * Check if a discount is valid for a given item id.
1260
-	 *
1261
-	 * @param  int|int[]  $item_ids
1262
-	 * @since 1.0.15
1263
-	 * @return boolean
1264
-	 */
1265
-	public function is_valid_for_items( $item_ids ) {
1266
-
1267
-		$item_ids = wp_parse_id_list( $item_ids );
1268
-		$included = array_intersect( $item_ids, $this->get_allowed_items() );
1269
-		$excluded = array_intersect( $item_ids, $this->get_excluded_items() );
1270
-
1271
-		if ( $this->has_excluded_items() && ! empty( $excluded ) ) {
1272
-			return false;
1273
-		}
1274
-
1275
-		if ( $this->has_allowed_items() && empty( $included ) ) {
1276
-			return false;
1277
-		}
1278
-
1279
-		return true;
1280
-	}
1281
-
1282
-	/**
1283
-	 * Check if a discount is valid for the given amount
1284
-	 *
1285
-	 * @param  float  $amount The amount to check against
1286
-	 * @since 1.0.15
1287
-	 * @return boolean
1288
-	 */
1289
-	public function is_valid_for_amount( $amount ) {
1290
-		return $this->is_minimum_amount_met( $amount ) && $this->is_maximum_amount_met( $amount );
1291
-	}
1292
-
1293
-	/**
1294
-	 * Checks if the minimum amount is set
1295
-	 *
1296
-	 * @since 1.0.15
1297
-	 * @return boolean
1298
-	 */
1299
-	public function has_minimum_amount() {
1300
-		$minimum = $this->get_minimum_total();
1301
-		return ! empty( $minimum );
1302
-	}
1303
-
1304
-	/**
1305
-	 * Checks if the minimum amount is met
1306
-	 *
1307
-	 * @param  float  $amount The amount to check against
1308
-	 * @since 1.0.15
1309
-	 * @return boolean
1310
-	 */
1311
-	public function is_minimum_amount_met( $amount ) {
1312
-		$amount = floatval( wpinv_sanitize_amount( $amount ) );
1313
-		$min_met= ! ( $this->has_minimum_amount() && $amount < floatval( wpinv_sanitize_amount( $this->get_minimum_total() ) ) );
1314
-		return apply_filters( 'wpinv_is_discount_min_met', $min_met, $this->get_id(), $this, $this->get_code(), $amount );
1315
-	}
1316
-
1317
-	/**
1318
-	 * Checks if the maximum amount is set
1319
-	 *
1320
-	 * @since 1.0.15
1321
-	 * @return boolean
1322
-	 */
1323
-	public function has_maximum_amount() {
1324
-		$maximum = $this->get_maximum_total();
1325
-		return ! empty( $maximum );
1326
-	}
1327
-
1328
-	/**
1329
-	 * Checks if the maximum amount is met
1330
-	 *
1331
-	 * @param  float  $amount The amount to check against
1332
-	 * @since 1.0.15
1333
-	 * @return boolean
1334
-	 */
1335
-	public function is_maximum_amount_met( $amount ) {
1336
-		$amount = floatval( wpinv_sanitize_amount( $amount ) );
1337
-		$max_met= ! ( $this->has_maximum_amount() && $amount > floatval( wpinv_sanitize_amount( $this->get_maximum_total() ) ) );
1338
-		return apply_filters( 'wpinv_is_discount_max_met', $max_met, $this->get_id(), $this, $this->get_code(), $amount );
1339
-	}
1340
-
1341
-	/**
1342
-	 * Checks if the discount is recurring.
1343
-	 *
1344
-	 * @since 1.0.15
1345
-	 * @return boolean
1346
-	 */
1347
-	public function is_recurring() {
1348
-		$recurring = $this->get_is_recurring();
1349
-		return ! empty( $recurring );
1350
-	}
1351
-
1352
-	/**
1353
-	 * Checks if the discount is single use.
1354
-	 *
1355
-	 * @since 1.0.15
1356
-	 * @return boolean
1357
-	 */
1358
-	public function is_single_use() {
1359
-		$usage = $this->get_is_single_use();
1360
-		return ! empty( $usage );
1361
-	}
1362
-
1363
-	/**
1364
-	 * Check if a discount is valid for the given user
1365
-	 *
1366
-	 * @param  int|string  $user
1367
-	 * @since 1.0.15
1368
-	 * @return boolean
1369
-	 */
1370
-	public function is_valid_for_user( $user ) {
1371
-
1372
-		// Ensure that the discount is single use.
1373
-		if ( empty( $user ) || ! $this->is_single_use() ) {
1374
-			return true;
1375
-		}
1376
-
1377
-		// Prepare the user id.
1378
-		$user_id = 0;
1122
+    /**
1123
+     * Checks whether a discount exists in the database or not
1124
+     *
1125
+     * @since 1.0.15
1126
+     */
1127
+    public function exists(){
1128
+        $id = $this->get_id();
1129
+        return ! empty( $id );
1130
+    }
1131
+
1132
+    /**
1133
+     * Checks the discount type.
1134
+     *
1135
+     *
1136
+     * @param  string $type the discount type to check against
1137
+     * @since 1.0.15
1138
+     * @return bool
1139
+     */
1140
+    public function is_type( $type ) {
1141
+        return $this->get_type() == $type;
1142
+    }
1143
+
1144
+    /**
1145
+     * Checks whether the discount is published or not
1146
+     *
1147
+     * @since 1.0.15
1148
+     * @return bool
1149
+     */
1150
+    public function is_active() {
1151
+        return $this->get_status() == 'publish';
1152
+    }
1153
+
1154
+    /**
1155
+     * Checks whether the discount has max uses
1156
+     *
1157
+     * @since 1.0.15
1158
+     * @return bool
1159
+     */
1160
+    public function has_limit() {
1161
+        $limit = $this->get_max_uses();
1162
+        return ! empty( $limit );
1163
+    }
1164
+
1165
+    /**
1166
+     * Checks whether the discount has ever been used.
1167
+     *
1168
+     * @since 1.0.15
1169
+     * @return bool
1170
+     */
1171
+    public function has_uses() {
1172
+        return $this->get_uses() > 0;
1173
+    }
1174
+
1175
+    /**
1176
+     * Checks whether the discount is has exided the usage limit or not
1177
+     *
1178
+     * @since 1.0.15
1179
+     * @return bool
1180
+     */
1181
+    public function has_exceeded_limit() {
1182
+
1183
+        if ( ! $this->has_limit() || ! $this->has_uses() ) {
1184
+            $exceeded = false ;
1185
+        } else {
1186
+            $exceeded = ! ( (int) $this->get_max_uses() < $this->get_uses() );
1187
+        }
1188
+
1189
+        return apply_filters( 'wpinv_is_discount_maxed_out', $exceeded, $this->get_id(), $this, $this->get_code() );
1190
+    }
1191
+
1192
+    /**
1193
+     * Checks whether the discount has an expiration date.
1194
+     *
1195
+     * @since 1.0.15
1196
+     * @return bool
1197
+     */
1198
+    public function has_expiration_date() {
1199
+        $date = $this->get_expiration_date();
1200
+        return ! empty( $date );
1201
+    }
1202
+
1203
+    /**
1204
+     * Checks if the discount is expired
1205
+     *
1206
+     * @since 1.0.15
1207
+     * @return bool
1208
+     */
1209
+    public function is_expired() {
1210
+        $expired = $this->has_expiration_date() ? current_time( 'timestamp' ) > strtotime( $this->get_expiration_date() ) : false;
1211
+        return apply_filters( 'wpinv_is_discount_expired', $expired, $this->get_id(), $this, $this->get_code() );
1212
+    }
1213
+
1214
+    /**
1215
+     * Checks whether the discount has a start date.
1216
+     *
1217
+     * @since 1.0.15
1218
+     * @return bool
1219
+     */
1220
+    public function has_start_date() {
1221
+        $date = $this->get_start_date();
1222
+        return ! empty( $date );
1223
+    }
1224
+
1225
+    /**
1226
+     * Checks the discount start date.
1227
+     *
1228
+     * @since 1.0.15
1229
+     * @return bool
1230
+     */
1231
+    public function has_started() {
1232
+        $started = $this->has_start_date() ? true : current_time( 'timestamp' ) > strtotime( $this->get_start_date() );
1233
+        return apply_filters( 'wpinv_is_discount_started', $started, $this->get_id(), $this, $this->get_code() );
1234
+    }
1235
+
1236
+    /**
1237
+     * Checks the discount has allowed items or not.
1238
+     *
1239
+     * @since 1.0.15
1240
+     * @return bool
1241
+     */
1242
+    public function has_allowed_items() {
1243
+        $allowed_items = $this->get_allowed_items();
1244
+        return ! empty( $allowed_items );
1245
+    }
1246
+
1247
+    /**
1248
+     * Checks the discount has excluded items or not.
1249
+     *
1250
+     * @since 1.0.15
1251
+     * @return bool
1252
+     */
1253
+    public function has_excluded_items() {
1254
+        $excluded_items = $this->get_excluded_items();
1255
+        return ! empty( $excluded_items );
1256
+    }
1257
+
1258
+    /**
1259
+     * Check if a discount is valid for a given item id.
1260
+     *
1261
+     * @param  int|int[]  $item_ids
1262
+     * @since 1.0.15
1263
+     * @return boolean
1264
+     */
1265
+    public function is_valid_for_items( $item_ids ) {
1266
+
1267
+        $item_ids = wp_parse_id_list( $item_ids );
1268
+        $included = array_intersect( $item_ids, $this->get_allowed_items() );
1269
+        $excluded = array_intersect( $item_ids, $this->get_excluded_items() );
1270
+
1271
+        if ( $this->has_excluded_items() && ! empty( $excluded ) ) {
1272
+            return false;
1273
+        }
1274
+
1275
+        if ( $this->has_allowed_items() && empty( $included ) ) {
1276
+            return false;
1277
+        }
1278
+
1279
+        return true;
1280
+    }
1281
+
1282
+    /**
1283
+     * Check if a discount is valid for the given amount
1284
+     *
1285
+     * @param  float  $amount The amount to check against
1286
+     * @since 1.0.15
1287
+     * @return boolean
1288
+     */
1289
+    public function is_valid_for_amount( $amount ) {
1290
+        return $this->is_minimum_amount_met( $amount ) && $this->is_maximum_amount_met( $amount );
1291
+    }
1292
+
1293
+    /**
1294
+     * Checks if the minimum amount is set
1295
+     *
1296
+     * @since 1.0.15
1297
+     * @return boolean
1298
+     */
1299
+    public function has_minimum_amount() {
1300
+        $minimum = $this->get_minimum_total();
1301
+        return ! empty( $minimum );
1302
+    }
1303
+
1304
+    /**
1305
+     * Checks if the minimum amount is met
1306
+     *
1307
+     * @param  float  $amount The amount to check against
1308
+     * @since 1.0.15
1309
+     * @return boolean
1310
+     */
1311
+    public function is_minimum_amount_met( $amount ) {
1312
+        $amount = floatval( wpinv_sanitize_amount( $amount ) );
1313
+        $min_met= ! ( $this->has_minimum_amount() && $amount < floatval( wpinv_sanitize_amount( $this->get_minimum_total() ) ) );
1314
+        return apply_filters( 'wpinv_is_discount_min_met', $min_met, $this->get_id(), $this, $this->get_code(), $amount );
1315
+    }
1316
+
1317
+    /**
1318
+     * Checks if the maximum amount is set
1319
+     *
1320
+     * @since 1.0.15
1321
+     * @return boolean
1322
+     */
1323
+    public function has_maximum_amount() {
1324
+        $maximum = $this->get_maximum_total();
1325
+        return ! empty( $maximum );
1326
+    }
1327
+
1328
+    /**
1329
+     * Checks if the maximum amount is met
1330
+     *
1331
+     * @param  float  $amount The amount to check against
1332
+     * @since 1.0.15
1333
+     * @return boolean
1334
+     */
1335
+    public function is_maximum_amount_met( $amount ) {
1336
+        $amount = floatval( wpinv_sanitize_amount( $amount ) );
1337
+        $max_met= ! ( $this->has_maximum_amount() && $amount > floatval( wpinv_sanitize_amount( $this->get_maximum_total() ) ) );
1338
+        return apply_filters( 'wpinv_is_discount_max_met', $max_met, $this->get_id(), $this, $this->get_code(), $amount );
1339
+    }
1340
+
1341
+    /**
1342
+     * Checks if the discount is recurring.
1343
+     *
1344
+     * @since 1.0.15
1345
+     * @return boolean
1346
+     */
1347
+    public function is_recurring() {
1348
+        $recurring = $this->get_is_recurring();
1349
+        return ! empty( $recurring );
1350
+    }
1351
+
1352
+    /**
1353
+     * Checks if the discount is single use.
1354
+     *
1355
+     * @since 1.0.15
1356
+     * @return boolean
1357
+     */
1358
+    public function is_single_use() {
1359
+        $usage = $this->get_is_single_use();
1360
+        return ! empty( $usage );
1361
+    }
1362
+
1363
+    /**
1364
+     * Check if a discount is valid for the given user
1365
+     *
1366
+     * @param  int|string  $user
1367
+     * @since 1.0.15
1368
+     * @return boolean
1369
+     */
1370
+    public function is_valid_for_user( $user ) {
1371
+
1372
+        // Ensure that the discount is single use.
1373
+        if ( empty( $user ) || ! $this->is_single_use() ) {
1374
+            return true;
1375
+        }
1376
+
1377
+        // Prepare the user id.
1378
+        $user_id = 0;
1379 1379
         if ( is_numeric( $user ) ) {
1380 1380
             $user_id = absint( $user );
1381 1381
         } else if ( is_email( $user ) && $user_data = get_user_by( 'email', $user ) ) {
@@ -1384,117 +1384,117 @@  discard block
 block discarded – undo
1384 1384
             $user_id = $user_data->ID;
1385 1385
         }
1386 1386
 
1387
-		// Ensure that we have a user.
1388
-		if ( empty( $user_id ) ) {
1389
-			return true;
1390
-		}
1387
+        // Ensure that we have a user.
1388
+        if ( empty( $user_id ) ) {
1389
+            return true;
1390
+        }
1391 1391
 
1392
-		// Get all payments with matching user id.
1392
+        // Get all payments with matching user id.
1393 1393
         $payments = wpinv_get_invoices( array( 'user' => $user_id, 'limit' => false, 'paginate' => false ) );
1394
-		$code     = strtolower( $this->get_code() );
1395
-
1396
-		// For each payment...
1397
-		foreach ( $payments as $payment ) {
1398
-
1399
-			// Only check for paid invoices.
1400
-			if ( $payment->is_paid() && strtolower( $payment->get_discount_code() ) == $code ) {
1401
-				return false;
1402
-			}
1403
-
1404
-		}
1405
-
1406
-		return true;
1407
-	}
1408
-
1409
-	/**
1410
-	 * Deletes the discount from the database
1411
-	 *
1412
-	 * @since 1.0.15
1413
-	 * @return boolean
1414
-	 */
1415
-	public function remove() {
1416
-		return $this->delete();
1417
-	}
1418
-
1419
-	/**
1420
-	 * Increases a discount's usage.
1421
-	 *
1422
-	 * @since 1.0.15
1423
-	 * @param int $by The number of usages to increas by.
1424
-	 * @return int
1425
-	 */
1426
-	public function increase_usage( $by = 1 ) {
1427
-
1428
-		// Abort if zero.
1429
-		if ( empty( $by ) ) {
1430
-			return;
1431
-		}
1432
-
1433
-		// Increase the usage.
1434
-		$this->set_uses( $this->get_uses() + (int) $by );
1435
-
1436
-		// Save the discount.
1437
-		$this->save();
1438
-
1439
-		// Fire relevant hooks.
1440
-		if( (int) $by > 0 ) {
1441
-			do_action( 'wpinv_discount_increase_use_count', $this->get_uses(), $this->get_id(), $this->get_code(),  absint( $by ) );
1442
-		} else {
1443
-			do_action( 'wpinv_discount_decrease_use_count', $this->get_uses(), $this->get_id(), $this->get_code(), absint( $by ) );
1444
-		}
1445
-
1446
-		// Return the number of times the discount has been used.
1447
-		return $this->get_uses();
1448
-	}
1449
-
1450
-	/**
1451
-	 * Alias of self::__toString()
1452
-	 *
1453
-	 * @since 1.0.15
1454
-	 * @return string|false
1455
-	 */
1456
-	public function get_data_as_json() {
1457
-		return $this->__toString();
1458
-	}
1459
-
1460
-	/**
1461
-	 * Returns a discount's discounted amount.
1462
-	 *
1463
-	 * @since 1.0.15
1464
-	 * @param float $amount
1465
-	 * @return float
1466
-	 */
1467
-	public function get_discounted_amount( $amount ) {
1468
-
1469
-		// Convert amount to float.
1470
-		$amount = (float) $amount;
1471
-
1472
-		// Get discount amount.
1473
-		$discount_amount = $this->get_amount();
1474
-
1475
-		if ( empty( $discount_amount ) ) {
1476
-			return 0;
1477
-		}
1478
-
1479
-		// Format the amount.
1480
-		$discount_amount = floatval( wpinv_sanitize_amount( $discount_amount ) );
1394
+        $code     = strtolower( $this->get_code() );
1395
+
1396
+        // For each payment...
1397
+        foreach ( $payments as $payment ) {
1398
+
1399
+            // Only check for paid invoices.
1400
+            if ( $payment->is_paid() && strtolower( $payment->get_discount_code() ) == $code ) {
1401
+                return false;
1402
+            }
1403
+
1404
+        }
1405
+
1406
+        return true;
1407
+    }
1408
+
1409
+    /**
1410
+     * Deletes the discount from the database
1411
+     *
1412
+     * @since 1.0.15
1413
+     * @return boolean
1414
+     */
1415
+    public function remove() {
1416
+        return $this->delete();
1417
+    }
1418
+
1419
+    /**
1420
+     * Increases a discount's usage.
1421
+     *
1422
+     * @since 1.0.15
1423
+     * @param int $by The number of usages to increas by.
1424
+     * @return int
1425
+     */
1426
+    public function increase_usage( $by = 1 ) {
1427
+
1428
+        // Abort if zero.
1429
+        if ( empty( $by ) ) {
1430
+            return;
1431
+        }
1432
+
1433
+        // Increase the usage.
1434
+        $this->set_uses( $this->get_uses() + (int) $by );
1435
+
1436
+        // Save the discount.
1437
+        $this->save();
1438
+
1439
+        // Fire relevant hooks.
1440
+        if( (int) $by > 0 ) {
1441
+            do_action( 'wpinv_discount_increase_use_count', $this->get_uses(), $this->get_id(), $this->get_code(),  absint( $by ) );
1442
+        } else {
1443
+            do_action( 'wpinv_discount_decrease_use_count', $this->get_uses(), $this->get_id(), $this->get_code(), absint( $by ) );
1444
+        }
1445
+
1446
+        // Return the number of times the discount has been used.
1447
+        return $this->get_uses();
1448
+    }
1449
+
1450
+    /**
1451
+     * Alias of self::__toString()
1452
+     *
1453
+     * @since 1.0.15
1454
+     * @return string|false
1455
+     */
1456
+    public function get_data_as_json() {
1457
+        return $this->__toString();
1458
+    }
1459
+
1460
+    /**
1461
+     * Returns a discount's discounted amount.
1462
+     *
1463
+     * @since 1.0.15
1464
+     * @param float $amount
1465
+     * @return float
1466
+     */
1467
+    public function get_discounted_amount( $amount ) {
1468
+
1469
+        // Convert amount to float.
1470
+        $amount = (float) $amount;
1471
+
1472
+        // Get discount amount.
1473
+        $discount_amount = $this->get_amount();
1474
+
1475
+        if ( empty( $discount_amount ) ) {
1476
+            return 0;
1477
+        }
1478
+
1479
+        // Format the amount.
1480
+        $discount_amount = floatval( wpinv_sanitize_amount( $discount_amount ) );
1481 1481
 		
1482
-		// If this is a percentage discount.
1483
-		if ( $this->is_type( 'percent' ) ) {
1482
+        // If this is a percentage discount.
1483
+        if ( $this->is_type( 'percent' ) ) {
1484 1484
             $discount_amount = $amount * ( $discount_amount / 100 );
1485
-		}
1485
+        }
1486 1486
 
1487
-		// Discount can not be less than zero...
1488
-		if ( $discount_amount < 0 ) {
1489
-			$discount_amount = 0;
1490
-		}
1487
+        // Discount can not be less than zero...
1488
+        if ( $discount_amount < 0 ) {
1489
+            $discount_amount = 0;
1490
+        }
1491 1491
 
1492
-		// ... or more than the amount.
1493
-		if ( $discount_amount > $amount ) {
1494
-			$discount_amount = $amount;
1495
-		}
1492
+        // ... or more than the amount.
1493
+        if ( $discount_amount > $amount ) {
1494
+            $discount_amount = $amount;
1495
+        }
1496 1496
 
1497
-		return apply_filters( 'wpinv_discount_total_discount_amount', $discount_amount, $amount, $this );
1498
-	}
1497
+        return apply_filters( 'wpinv_discount_total_discount_amount', $discount_amount, $amount, $this );
1498
+    }
1499 1499
 
1500 1500
 }
Please login to merge, or discard this patch.
Spacing   +289 added lines, -289 removed lines patch added patch discarded remove patch
@@ -5,7 +5,7 @@  discard block
 block discarded – undo
5 5
  * @since   1.0.15
6 6
  */
7 7
 
8
-defined( 'ABSPATH' ) || exit;
8
+defined('ABSPATH') || exit;
9 9
 
10 10
 /**
11 11
  * Discount class.
@@ -13,7 +13,7 @@  discard block
 block discarded – undo
13 13
  * @since 1.0.15
14 14
  *
15 15
  */
16
-class WPInv_Discount extends GetPaid_Data  {
16
+class WPInv_Discount extends GetPaid_Data {
17 17
 
18 18
 	/**
19 19
 	 * Which data store to load.
@@ -79,35 +79,35 @@  discard block
 block discarded – undo
79 79
 	 *
80 80
 	 * @param int|array|string|WPInv_Discount|WP_Post $discount discount data, object, ID or code.
81 81
 	 */
82
-	public function __construct( $discount = 0 ) {
83
-		parent::__construct( $discount );
82
+	public function __construct($discount = 0) {
83
+		parent::__construct($discount);
84 84
 
85
-		if ( is_numeric( $discount ) && 'wpi_discount' === get_post_type( $discount ) ) {
86
-			$this->set_id( $discount );
87
-		} elseif ( $discount instanceof self ) {
88
-			$this->set_id( $discount->get_id() );
89
-		} elseif ( ! empty( $discount->ID ) ) {
90
-			$this->set_id( $discount->ID );
91
-		} elseif ( is_array( $discount ) ) {
92
-			$this->set_props( $discount );
85
+		if (is_numeric($discount) && 'wpi_discount' === get_post_type($discount)) {
86
+			$this->set_id($discount);
87
+		} elseif ($discount instanceof self) {
88
+			$this->set_id($discount->get_id());
89
+		} elseif (!empty($discount->ID)) {
90
+			$this->set_id($discount->ID);
91
+		} elseif (is_array($discount)) {
92
+			$this->set_props($discount);
93 93
 
94
-			if ( isset( $discount['ID'] ) ) {
95
-				$this->set_id( $discount['ID'] );
94
+			if (isset($discount['ID'])) {
95
+				$this->set_id($discount['ID']);
96 96
 			}
97 97
 
98
-		} elseif ( is_scalar( $discount ) && $discount = self::get_discount_id_by_code( $discount ) ) {
99
-			$this->set_id( $discount );
98
+		} elseif (is_scalar($discount) && $discount = self::get_discount_id_by_code($discount)) {
99
+			$this->set_id($discount);
100 100
 		} else {
101
-			$this->set_object_read( true );
101
+			$this->set_object_read(true);
102 102
 		}
103 103
 
104 104
         // Load the datastore.
105
-		$this->data_store = GetPaid_Data_Store::load( $this->data_store_name );
105
+		$this->data_store = GetPaid_Data_Store::load($this->data_store_name);
106 106
 
107
-		if ( $this->get_id() > 0 ) {
108
-            $this->post = get_post( $this->get_id() );
107
+		if ($this->get_id() > 0) {
108
+            $this->post = get_post($this->get_id());
109 109
             $this->ID   = $this->get_id();
110
-			$this->data_store->read( $this );
110
+			$this->data_store->read($this);
111 111
         }
112 112
 
113 113
 	}
@@ -123,50 +123,50 @@  discard block
 block discarded – undo
123 123
 	 * @since 1.0.15
124 124
 	 * @return array|bool array of discount details on success. False otherwise.
125 125
 	 */
126
-	public static function get_data_by( $field, $value ) {
126
+	public static function get_data_by($field, $value) {
127 127
 
128
-		if ( 'id' == strtolower( $field ) ) {
128
+		if ('id' == strtolower($field)) {
129 129
 			// Make sure the value is numeric to avoid casting objects, for example,
130 130
 			// to int 1.
131
-			if ( ! is_numeric( $value ) )
131
+			if (!is_numeric($value))
132 132
 				return false;
133
-			$value = intval( $value );
134
-			if ( $value < 1 )
133
+			$value = intval($value);
134
+			if ($value < 1)
135 135
 				return false;
136 136
 		}
137 137
 
138
-		if ( ! $value || ! is_string( $field ) ) {
138
+		if (!$value || !is_string($field)) {
139 139
 			return false;
140 140
 		}
141 141
 
142
-		$field = trim( $field );
142
+		$field = trim($field);
143 143
 
144 144
 		// prepare query args
145
-		switch ( strtolower( $field ) ) {
145
+		switch (strtolower($field)) {
146 146
 			case 'id':
147 147
 				$discount_id = $value;
148
-				$args		 = array( 'include' => array( $value ) );
148
+				$args = array('include' => array($value));
149 149
 				break;
150 150
 			case 'discount_code':
151 151
 			case 'code':
152
-				$value       = trim( $value );
153
-				$discount_id = wp_cache_get( $value, 'WPInv_Discount_Codes' );
154
-				$args		 = array( 'meta_key' => '_wpi_discount_code', 'meta_value' => $value );
152
+				$value       = trim($value);
153
+				$discount_id = wp_cache_get($value, 'WPInv_Discount_Codes');
154
+				$args = array('meta_key' => '_wpi_discount_code', 'meta_value' => $value);
155 155
 				break;
156 156
 			case 'name':
157 157
 				$discount_id = 0;
158
-				$args		 = array( 'name' => trim( $value ) );
158
+				$args		 = array('name' => trim($value));
159 159
 				break;
160 160
 			default:
161
-				$args		 = apply_filters( "wpinv_discount_get_data_by_{$field}_args", null, $value );
162
-				if ( ! is_array( $args ) ) {
163
-					return apply_filters( "wpinv_discount_get_data_by_$field", false, $value );
161
+				$args		 = apply_filters("wpinv_discount_get_data_by_{$field}_args", null, $value);
162
+				if (!is_array($args)) {
163
+					return apply_filters("wpinv_discount_get_data_by_$field", false, $value);
164 164
 				}
165 165
 
166 166
 		}
167 167
 
168 168
 		// Check if there is a cached value.
169
-		if ( ! empty( $discount_id ) && $discount = wp_cache_get( (int) $discount_id, 'WPInv_Discounts' ) ) {
169
+		if (!empty($discount_id) && $discount = wp_cache_get((int) $discount_id, 'WPInv_Discounts')) {
170 170
 			return $discount;
171 171
 		}
172 172
 
@@ -175,13 +175,13 @@  discard block
 block discarded – undo
175 175
 			array(
176 176
 				'post_type'      => 'wpi_discount',
177 177
 				'posts_per_page' => 1,
178
-				'post_status'    => array( 'publish', 'pending', 'draft', 'expired' )
178
+				'post_status'    => array('publish', 'pending', 'draft', 'expired')
179 179
 			)
180 180
 		);
181 181
 
182
-		$discount = get_posts( $args );
182
+		$discount = get_posts($args);
183 183
 
184
-		if( empty( $discount ) ) {
184
+		if (empty($discount)) {
185 185
 			return false;
186 186
 		}
187 187
 
@@ -190,30 +190,30 @@  discard block
 block discarded – undo
190 190
 		// Prepare the return data.
191 191
 		$return = array(
192 192
             'ID'                          => $discount->ID,
193
-            'code'                        => get_post_meta( $discount->ID, '_wpi_discount_code', true ),
194
-            'amount'                      => get_post_meta( $discount->ID, '_wpi_discount_amount', true ),
193
+            'code'                        => get_post_meta($discount->ID, '_wpi_discount_code', true),
194
+            'amount'                      => get_post_meta($discount->ID, '_wpi_discount_amount', true),
195 195
             'date_created'                => $discount->post_date,
196 196
 			'date_modified'               => $discount->post_modified,
197 197
 			'status'               		  => $discount->post_status,
198
-			'start'                  	  => get_post_meta( $discount->ID, '_wpi_discount_start', true ),
199
-            'expiration'                  => get_post_meta( $discount->ID, '_wpi_discount_expiration', true ),
200
-            'type'               		  => get_post_meta( $discount->ID, '_wpi_discount_type', true ),
198
+			'start'                  	  => get_post_meta($discount->ID, '_wpi_discount_start', true),
199
+            'expiration'                  => get_post_meta($discount->ID, '_wpi_discount_expiration', true),
200
+            'type'               		  => get_post_meta($discount->ID, '_wpi_discount_type', true),
201 201
             'description'                 => $discount->post_excerpt,
202
-            'uses'                 		  => get_post_meta( $discount->ID, '_wpi_discount_uses', true ),
203
-            'is_single_use'               => get_post_meta( $discount->ID, '_wpi_discount_is_single_use', true ),
204
-            'items'              	      => get_post_meta( $discount->ID, '_wpi_discount_items', true ),
205
-            'excluded_items'              => get_post_meta( $discount->ID, '_wpi_discount_excluded_items', true ),
206
-            'max_uses'                    => get_post_meta( $discount->ID, '_wpi_discount_max_uses', true ),
207
-            'is_recurring'                => get_post_meta( $discount->ID, '_wpi_discount_is_recurring', true ),
208
-            'min_total'                   => get_post_meta( $discount->ID, '_wpi_discount_min_total', true ),
209
-            'max_total'                   => get_post_meta( $discount->ID, '_wpi_discount_max_total', true ),
202
+            'uses'                 		  => get_post_meta($discount->ID, '_wpi_discount_uses', true),
203
+            'is_single_use'               => get_post_meta($discount->ID, '_wpi_discount_is_single_use', true),
204
+            'items'              	      => get_post_meta($discount->ID, '_wpi_discount_items', true),
205
+            'excluded_items'              => get_post_meta($discount->ID, '_wpi_discount_excluded_items', true),
206
+            'max_uses'                    => get_post_meta($discount->ID, '_wpi_discount_max_uses', true),
207
+            'is_recurring'                => get_post_meta($discount->ID, '_wpi_discount_is_recurring', true),
208
+            'min_total'                   => get_post_meta($discount->ID, '_wpi_discount_min_total', true),
209
+            'max_total'                   => get_post_meta($discount->ID, '_wpi_discount_max_total', true),
210 210
         );
211 211
 
212
-		$return = apply_filters( 'wpinv_discount_properties', $return );
212
+		$return = apply_filters('wpinv_discount_properties', $return);
213 213
 
214 214
 		// Update the cache with our data
215
-		wp_cache_add( $discount->ID, $return, 'WPInv_Discounts' );
216
-		wp_cache_add( $return['code'], $discount->ID, 'WPInv_Discount_Codes' );
215
+		wp_cache_add($discount->ID, $return, 'WPInv_Discounts');
216
+		wp_cache_add($return['code'], $discount->ID, 'WPInv_Discount_Codes');
217 217
 
218 218
 		return $return;
219 219
 	}
@@ -227,19 +227,19 @@  discard block
 block discarded – undo
227 227
 	 * @since 1.0.15
228 228
 	 * @return int
229 229
 	 */
230
-	public static function get_discount_id_by_code( $discount_code ) {
230
+	public static function get_discount_id_by_code($discount_code) {
231 231
 
232 232
 		// Trim the code.
233
-		$discount_code = trim( $discount_code );
233
+		$discount_code = trim($discount_code);
234 234
 
235 235
 		// Ensure a value has been passed.
236
-		if ( empty( $discount_code ) ) {
236
+		if (empty($discount_code)) {
237 237
 			return 0;
238 238
 		}
239 239
 
240 240
 		// Maybe retrieve from the cache.
241
-		$discount_id   = wp_cache_get( $discount_code, 'getpaid_discount_codes' );
242
-		if ( ! empty( $discount_id ) ) {
241
+		$discount_id = wp_cache_get($discount_code, 'getpaid_discount_codes');
242
+		if (!empty($discount_id)) {
243 243
 			return $discount_id;
244 244
 		}
245 245
 
@@ -250,19 +250,19 @@  discard block
 block discarded – undo
250 250
 				'meta_value'     => $discount_code,
251 251
 				'post_type'      => 'wpi_discount',
252 252
 				'posts_per_page' => 1,
253
-				'post_status'    => array( 'publish', 'pending', 'draft', 'expired' ),
253
+				'post_status'    => array('publish', 'pending', 'draft', 'expired'),
254 254
 				'fields'         => 'ids',
255 255
 			)
256 256
 		);
257 257
 
258
-		if ( empty( $discounts ) ) {
258
+		if (empty($discounts)) {
259 259
 			return 0;
260 260
 		}
261 261
 
262 262
 		$discount_id = $discounts[0];
263 263
 
264 264
 		// Update the cache with our data
265
-		wp_cache_add( get_post_meta( $discount_id, '_wpi_discount_code', true ), $discount_id, 'getpaid_discount_codes' );
265
+		wp_cache_add(get_post_meta($discount_id, '_wpi_discount_code', true), $discount_id, 'getpaid_discount_codes');
266 266
 
267 267
 		return $discount_id;
268 268
 	}
@@ -275,8 +275,8 @@  discard block
 block discarded – undo
275 275
 	 *
276 276
 	 * @return bool Whether the given discount field is set.
277 277
 	 */
278
-	public function __isset( $key ){
279
-		return isset( $this->data[$key] ) || method_exists( $this, "get_$key");
278
+	public function __isset($key) {
279
+		return isset($this->data[$key]) || method_exists($this, "get_$key");
280 280
 	}
281 281
 
282 282
 	/*
@@ -301,8 +301,8 @@  discard block
 block discarded – undo
301 301
 	 * @param  string $context View or edit context.
302 302
 	 * @return string
303 303
 	 */
304
-	public function get_status( $context = 'view' ) {
305
-		return $this->get_prop( 'status', $context );
304
+	public function get_status($context = 'view') {
305
+		return $this->get_prop('status', $context);
306 306
     }
307 307
 
308 308
     /**
@@ -312,8 +312,8 @@  discard block
 block discarded – undo
312 312
 	 * @param  string $context View or edit context.
313 313
 	 * @return string
314 314
 	 */
315
-	public function get_version( $context = 'view' ) {
316
-		return $this->get_prop( 'version', $context );
315
+	public function get_version($context = 'view') {
316
+		return $this->get_prop('version', $context);
317 317
     }
318 318
 
319 319
     /**
@@ -323,8 +323,8 @@  discard block
 block discarded – undo
323 323
 	 * @param  string $context View or edit context.
324 324
 	 * @return string
325 325
 	 */
326
-	public function get_date_created( $context = 'view' ) {
327
-		return $this->get_prop( 'date_created', $context );
326
+	public function get_date_created($context = 'view') {
327
+		return $this->get_prop('date_created', $context);
328 328
     }
329 329
 
330 330
     /**
@@ -334,11 +334,11 @@  discard block
 block discarded – undo
334 334
 	 * @param  string $context View or edit context.
335 335
 	 * @return string
336 336
 	 */
337
-	public function get_date_created_gmt( $context = 'view' ) {
338
-        $date = $this->get_date_created( $context );
337
+	public function get_date_created_gmt($context = 'view') {
338
+        $date = $this->get_date_created($context);
339 339
 
340
-        if ( $date ) {
341
-            $date = get_gmt_from_date( $date );
340
+        if ($date) {
341
+            $date = get_gmt_from_date($date);
342 342
         }
343 343
 		return $date;
344 344
     }
@@ -350,8 +350,8 @@  discard block
 block discarded – undo
350 350
 	 * @param  string $context View or edit context.
351 351
 	 * @return string
352 352
 	 */
353
-	public function get_date_modified( $context = 'view' ) {
354
-		return $this->get_prop( 'date_modified', $context );
353
+	public function get_date_modified($context = 'view') {
354
+		return $this->get_prop('date_modified', $context);
355 355
     }
356 356
 
357 357
     /**
@@ -361,11 +361,11 @@  discard block
 block discarded – undo
361 361
 	 * @param  string $context View or edit context.
362 362
 	 * @return string
363 363
 	 */
364
-	public function get_date_modified_gmt( $context = 'view' ) {
365
-        $date = $this->get_date_modified( $context );
364
+	public function get_date_modified_gmt($context = 'view') {
365
+        $date = $this->get_date_modified($context);
366 366
 
367
-        if ( $date ) {
368
-            $date = get_gmt_from_date( $date );
367
+        if ($date) {
368
+            $date = get_gmt_from_date($date);
369 369
         }
370 370
 		return $date;
371 371
     }
@@ -377,8 +377,8 @@  discard block
 block discarded – undo
377 377
 	 * @param  string $context View or edit context.
378 378
 	 * @return string
379 379
 	 */
380
-	public function get_name( $context = 'view' ) {
381
-		return $this->get_prop( 'name', $context );
380
+	public function get_name($context = 'view') {
381
+		return $this->get_prop('name', $context);
382 382
     }
383 383
 
384 384
     /**
@@ -388,8 +388,8 @@  discard block
 block discarded – undo
388 388
 	 * @param  string $context View or edit context.
389 389
 	 * @return string
390 390
 	 */
391
-	public function get_title( $context = 'view' ) {
392
-		return $this->get_name( $context );
391
+	public function get_title($context = 'view') {
392
+		return $this->get_name($context);
393 393
     }
394 394
 
395 395
     /**
@@ -399,8 +399,8 @@  discard block
 block discarded – undo
399 399
 	 * @param  string $context View or edit context.
400 400
 	 * @return string
401 401
 	 */
402
-	public function get_description( $context = 'view' ) {
403
-		return $this->get_prop( 'description', $context );
402
+	public function get_description($context = 'view') {
403
+		return $this->get_prop('description', $context);
404 404
     }
405 405
 
406 406
     /**
@@ -410,8 +410,8 @@  discard block
 block discarded – undo
410 410
 	 * @param  string $context View or edit context.
411 411
 	 * @return string
412 412
 	 */
413
-	public function get_excerpt( $context = 'view' ) {
414
-		return $this->get_description( $context );
413
+	public function get_excerpt($context = 'view') {
414
+		return $this->get_description($context);
415 415
     }
416 416
 
417 417
     /**
@@ -421,8 +421,8 @@  discard block
 block discarded – undo
421 421
 	 * @param  string $context View or edit context.
422 422
 	 * @return string
423 423
 	 */
424
-	public function get_summary( $context = 'view' ) {
425
-		return $this->get_description( $context );
424
+	public function get_summary($context = 'view') {
425
+		return $this->get_description($context);
426 426
     }
427 427
 
428 428
     /**
@@ -432,8 +432,8 @@  discard block
 block discarded – undo
432 432
 	 * @param  string $context View or edit context.
433 433
 	 * @return string
434 434
 	 */
435
-	public function get_author( $context = 'view' ) {
436
-		return (int) $this->get_prop( 'author', $context );
435
+	public function get_author($context = 'view') {
436
+		return (int) $this->get_prop('author', $context);
437 437
 	}
438 438
 	
439 439
 	/**
@@ -443,8 +443,8 @@  discard block
 block discarded – undo
443 443
 	 * @param  string $context View or edit context.
444 444
 	 * @return string
445 445
 	 */
446
-	public function get_code( $context = 'view' ) {
447
-		return $this->get_prop( 'code', $context );
446
+	public function get_code($context = 'view') {
447
+		return $this->get_prop('code', $context);
448 448
 	}
449 449
 	
450 450
 	/**
@@ -454,8 +454,8 @@  discard block
 block discarded – undo
454 454
 	 * @param  string $context View or edit context.
455 455
 	 * @return string
456 456
 	 */
457
-	public function get_coupon_code( $context = 'view' ) {
458
-		return $this->get_code( $context );
457
+	public function get_coupon_code($context = 'view') {
458
+		return $this->get_code($context);
459 459
 	}
460 460
 	
461 461
 	/**
@@ -465,8 +465,8 @@  discard block
 block discarded – undo
465 465
 	 * @param  string $context View or edit context.
466 466
 	 * @return string
467 467
 	 */
468
-	public function get_discount_code( $context = 'view' ) {
469
-		return $this->get_code( $context );
468
+	public function get_discount_code($context = 'view') {
469
+		return $this->get_code($context);
470 470
 	}
471 471
 	
472 472
 	/**
@@ -476,8 +476,8 @@  discard block
 block discarded – undo
476 476
 	 * @param  string $context View or edit context.
477 477
 	 * @return float
478 478
 	 */
479
-	public function get_amount( $context = 'view' ) {
480
-		return $this->get_prop( 'amount', $context );
479
+	public function get_amount($context = 'view') {
480
+		return $this->get_prop('amount', $context);
481 481
 	}
482 482
 
483 483
 	/**
@@ -488,13 +488,13 @@  discard block
 block discarded – undo
488 488
 	 */
489 489
 	public function get_formatted_amount() {
490 490
 
491
-		if ( $this->is_type( 'flat' ) ) {
492
-			$rate = wpinv_price( wpinv_format_amount( $this->get_amount() ) );
491
+		if ($this->is_type('flat')) {
492
+			$rate = wpinv_price(wpinv_format_amount($this->get_amount()));
493 493
 		} else {
494 494
 			$rate = $this->get_amount() . '%';
495 495
 		}
496 496
 
497
-		return apply_filters( 'wpinv_format_discount_rate', $rate, $this->get_type(), $this->get_amount() );
497
+		return apply_filters('wpinv_format_discount_rate', $rate, $this->get_type(), $this->get_amount());
498 498
 	}
499 499
 	
500 500
 	/**
@@ -504,8 +504,8 @@  discard block
 block discarded – undo
504 504
 	 * @param  string $context View or edit context.
505 505
 	 * @return string
506 506
 	 */
507
-	public function get_start( $context = 'view' ) {
508
-		return $this->get_prop( 'start', $context );
507
+	public function get_start($context = 'view') {
508
+		return $this->get_prop('start', $context);
509 509
 	}
510 510
 	
511 511
 	/**
@@ -515,8 +515,8 @@  discard block
 block discarded – undo
515 515
 	 * @param  string $context View or edit context.
516 516
 	 * @return string
517 517
 	 */
518
-	public function get_start_date( $context = 'view' ) {
519
-		return $this->get_start( $context );
518
+	public function get_start_date($context = 'view') {
519
+		return $this->get_start($context);
520 520
 	}
521 521
 	
522 522
 	/**
@@ -526,8 +526,8 @@  discard block
 block discarded – undo
526 526
 	 * @param  string $context View or edit context.
527 527
 	 * @return string
528 528
 	 */
529
-	public function get_expiration( $context = 'view' ) {
530
-		return $this->get_prop( 'expiration', $context );
529
+	public function get_expiration($context = 'view') {
530
+		return $this->get_prop('expiration', $context);
531 531
 	}
532 532
 	
533 533
 	/**
@@ -537,8 +537,8 @@  discard block
 block discarded – undo
537 537
 	 * @param  string $context View or edit context.
538 538
 	 * @return string
539 539
 	 */
540
-	public function get_expiration_date( $context = 'view' ) {
541
-		return $this->get_expiration( $context );
540
+	public function get_expiration_date($context = 'view') {
541
+		return $this->get_expiration($context);
542 542
 	}
543 543
 
544 544
 	/**
@@ -548,8 +548,8 @@  discard block
 block discarded – undo
548 548
 	 * @param  string $context View or edit context.
549 549
 	 * @return string
550 550
 	 */
551
-	public function get_end_date( $context = 'view' ) {
552
-		return $this->get_expiration( $context );
551
+	public function get_end_date($context = 'view') {
552
+		return $this->get_expiration($context);
553 553
 	}
554 554
 	
555 555
 	/**
@@ -559,8 +559,8 @@  discard block
 block discarded – undo
559 559
 	 * @param  string $context View or edit context.
560 560
 	 * @return string
561 561
 	 */
562
-	public function get_type( $context = 'view' ) {
563
-		return $this->get_prop( 'type', $context );
562
+	public function get_type($context = 'view') {
563
+		return $this->get_prop('type', $context);
564 564
 	}
565 565
 
566 566
 	/**
@@ -570,8 +570,8 @@  discard block
 block discarded – undo
570 570
 	 * @param  string $context View or edit context.
571 571
 	 * @return int
572 572
 	 */
573
-	public function get_uses( $context = 'view' ) {
574
-		return (int) $this->get_prop( 'uses', $context );
573
+	public function get_uses($context = 'view') {
574
+		return (int) $this->get_prop('uses', $context);
575 575
 	}
576 576
 
577 577
 	/**
@@ -582,7 +582,7 @@  discard block
 block discarded – undo
582 582
 	 */
583 583
 	public function get_usage() {
584 584
 
585
-		if ( ! $this->has_limit() ) {
585
+		if (!$this->has_limit()) {
586 586
 			return $this->get_uses() . ' / ' . ' &infin;';
587 587
 		}
588 588
 
@@ -597,9 +597,9 @@  discard block
 block discarded – undo
597 597
 	 * @param  string $context View or edit context.
598 598
 	 * @return int
599 599
 	 */
600
-	public function get_max_uses( $context = 'view' ) {
601
-		$max_uses = $this->get_prop( 'max_uses', $context );
602
-		return empty( $max_uses ) ? null : $max_uses;
600
+	public function get_max_uses($context = 'view') {
601
+		$max_uses = $this->get_prop('max_uses', $context);
602
+		return empty($max_uses) ? null : $max_uses;
603 603
 	}
604 604
 
605 605
 	/**
@@ -609,8 +609,8 @@  discard block
 block discarded – undo
609 609
 	 * @param  string $context View or edit context.
610 610
 	 * @return bool
611 611
 	 */
612
-	public function get_is_single_use( $context = 'view' ) {
613
-		return $this->get_prop( 'is_single_use', $context );
612
+	public function get_is_single_use($context = 'view') {
613
+		return $this->get_prop('is_single_use', $context);
614 614
 	}
615 615
 
616 616
 	/**
@@ -620,8 +620,8 @@  discard block
 block discarded – undo
620 620
 	 * @param  string $context View or edit context.
621 621
 	 * @return array
622 622
 	 */
623
-	public function get_items( $context = 'view' ) {
624
-		return wpinv_parse_list( $this->get_prop( 'items', $context ) );
623
+	public function get_items($context = 'view') {
624
+		return wpinv_parse_list($this->get_prop('items', $context));
625 625
 	}
626 626
 
627 627
 	/**
@@ -631,8 +631,8 @@  discard block
 block discarded – undo
631 631
 	 * @param  string $context View or edit context.
632 632
 	 * @return array
633 633
 	 */
634
-	public function get_allowed_items( $context = 'view' ) {
635
-		return $this->get_items( $context );
634
+	public function get_allowed_items($context = 'view') {
635
+		return $this->get_items($context);
636 636
 	}
637 637
 
638 638
 	/**
@@ -642,8 +642,8 @@  discard block
 block discarded – undo
642 642
 	 * @param  string $context View or edit context.
643 643
 	 * @return array
644 644
 	 */
645
-	public function get_excluded_items( $context = 'view' ) {
646
-		return wpinv_parse_list( $this->get_prop( 'excluded_items', $context ) );
645
+	public function get_excluded_items($context = 'view') {
646
+		return wpinv_parse_list($this->get_prop('excluded_items', $context));
647 647
 	}
648 648
 
649 649
 	/**
@@ -653,8 +653,8 @@  discard block
 block discarded – undo
653 653
 	 * @param  string $context View or edit context.
654 654
 	 * @return int|string|bool
655 655
 	 */
656
-	public function get_is_recurring( $context = 'view' ) {
657
-		return $this->get_prop( 'is_recurring', $context );
656
+	public function get_is_recurring($context = 'view') {
657
+		return $this->get_prop('is_recurring', $context);
658 658
 	}
659 659
 
660 660
 	/**
@@ -664,9 +664,9 @@  discard block
 block discarded – undo
664 664
 	 * @param  string $context View or edit context.
665 665
 	 * @return float
666 666
 	 */
667
-	public function get_min_total( $context = 'view' ) {
668
-		$minimum = $this->get_prop( 'min_total', $context );
669
-		return empty( $minimum ) ? null : $minimum;
667
+	public function get_min_total($context = 'view') {
668
+		$minimum = $this->get_prop('min_total', $context);
669
+		return empty($minimum) ? null : $minimum;
670 670
 	}
671 671
 
672 672
 	/**
@@ -676,8 +676,8 @@  discard block
 block discarded – undo
676 676
 	 * @param  string $context View or edit context.
677 677
 	 * @return float
678 678
 	 */
679
-	public function get_minimum_total( $context = 'view' ) {
680
-		return $this->get_min_total( $context );
679
+	public function get_minimum_total($context = 'view') {
680
+		return $this->get_min_total($context);
681 681
 	}
682 682
 
683 683
 	/**
@@ -687,9 +687,9 @@  discard block
 block discarded – undo
687 687
 	 * @param  string $context View or edit context.
688 688
 	 * @return float
689 689
 	 */
690
-	public function get_max_total( $context = 'view' ) {
691
-		$maximum = $this->get_prop( 'max_total', $context );
692
-		return empty( $maximum ) ? null : $maximum;
690
+	public function get_max_total($context = 'view') {
691
+		$maximum = $this->get_prop('max_total', $context);
692
+		return empty($maximum) ? null : $maximum;
693 693
 	}
694 694
 
695 695
 	/**
@@ -699,8 +699,8 @@  discard block
 block discarded – undo
699 699
 	 * @param  string $context View or edit context.
700 700
 	 * @return float
701 701
 	 */
702
-	public function get_maximum_total( $context = 'view' ) {
703
-		return $this->get_max_total( $context );
702
+	public function get_maximum_total($context = 'view') {
703
+		return $this->get_max_total($context);
704 704
 	}
705 705
 
706 706
 	/**
@@ -713,8 +713,8 @@  discard block
 block discarded – undo
713 713
 	 * @param  string $context View or edit context.
714 714
 	 * @return mixed Value of the given discount property (if set).
715 715
 	 */
716
-	public function get( $key, $context = 'view' ) {
717
-        return $this->get_prop( $key, $context );
716
+	public function get($key, $context = 'view') {
717
+        return $this->get_prop($key, $context);
718 718
 	}
719 719
 
720 720
 	/*
@@ -734,10 +734,10 @@  discard block
 block discarded – undo
734 734
 	 * @param  string $status New status.
735 735
 	 * @return array details of change.
736 736
 	 */
737
-	public function set_status( $status ) {
737
+	public function set_status($status) {
738 738
         $old_status = $this->get_status();
739 739
 
740
-        $this->set_prop( 'status', $status );
740
+        $this->set_prop('status', $status);
741 741
 
742 742
 		return array(
743 743
 			'from' => $old_status,
@@ -750,8 +750,8 @@  discard block
 block discarded – undo
750 750
 	 *
751 751
 	 * @since 1.0.19
752 752
 	 */
753
-	public function set_version( $value ) {
754
-		$this->set_prop( 'version', $value );
753
+	public function set_version($value) {
754
+		$this->set_prop('version', $value);
755 755
     }
756 756
 
757 757
     /**
@@ -761,11 +761,11 @@  discard block
 block discarded – undo
761 761
 	 * @param string $value Value to set.
762 762
      * @return bool Whether or not the date was set.
763 763
 	 */
764
-	public function set_date_created( $value ) {
765
-        $date = strtotime( $value );
764
+	public function set_date_created($value) {
765
+        $date = strtotime($value);
766 766
 
767
-        if ( $date ) {
768
-            $this->set_prop( 'date_created', date( 'Y-m-d H:i:s', $date ) );
767
+        if ($date) {
768
+            $this->set_prop('date_created', date('Y-m-d H:i:s', $date));
769 769
             return true;
770 770
         }
771 771
 
@@ -780,11 +780,11 @@  discard block
 block discarded – undo
780 780
 	 * @param string $value Value to set.
781 781
      * @return bool Whether or not the date was set.
782 782
 	 */
783
-	public function set_date_modified( $value ) {
784
-        $date = strtotime( $value );
783
+	public function set_date_modified($value) {
784
+        $date = strtotime($value);
785 785
 
786
-        if ( $date ) {
787
-            $this->set_prop( 'date_modified', date( 'Y-m-d H:i:s', $date ) );
786
+        if ($date) {
787
+            $this->set_prop('date_modified', date('Y-m-d H:i:s', $date));
788 788
             return true;
789 789
         }
790 790
 
@@ -798,9 +798,9 @@  discard block
 block discarded – undo
798 798
 	 * @since 1.0.19
799 799
 	 * @param  string $value New name.
800 800
 	 */
801
-	public function set_name( $value ) {
802
-        $name = sanitize_text_field( $value );
803
-		$this->set_prop( 'name', $name );
801
+	public function set_name($value) {
802
+        $name = sanitize_text_field($value);
803
+		$this->set_prop('name', $name);
804 804
     }
805 805
 
806 806
     /**
@@ -809,8 +809,8 @@  discard block
 block discarded – undo
809 809
 	 * @since 1.0.19
810 810
 	 * @param  string $value New name.
811 811
 	 */
812
-	public function set_title( $value ) {
813
-		$this->set_name( $value );
812
+	public function set_title($value) {
813
+		$this->set_name($value);
814 814
     }
815 815
 
816 816
     /**
@@ -819,9 +819,9 @@  discard block
 block discarded – undo
819 819
 	 * @since 1.0.19
820 820
 	 * @param  string $value New description.
821 821
 	 */
822
-	public function set_description( $value ) {
823
-        $description = wp_kses_post( $value );
824
-		return $this->set_prop( 'description', $description );
822
+	public function set_description($value) {
823
+        $description = wp_kses_post($value);
824
+		return $this->set_prop('description', $description);
825 825
     }
826 826
 
827 827
     /**
@@ -830,8 +830,8 @@  discard block
 block discarded – undo
830 830
 	 * @since 1.0.19
831 831
 	 * @param  string $value New description.
832 832
 	 */
833
-	public function set_excerpt( $value ) {
834
-		$this->set_description( $value );
833
+	public function set_excerpt($value) {
834
+		$this->set_description($value);
835 835
     }
836 836
 
837 837
     /**
@@ -840,8 +840,8 @@  discard block
 block discarded – undo
840 840
 	 * @since 1.0.19
841 841
 	 * @param  string $value New description.
842 842
 	 */
843
-	public function set_summary( $value ) {
844
-		$this->set_description( $value );
843
+	public function set_summary($value) {
844
+		$this->set_description($value);
845 845
     }
846 846
 
847 847
     /**
@@ -850,8 +850,8 @@  discard block
 block discarded – undo
850 850
 	 * @since 1.0.19
851 851
 	 * @param  int $value New author.
852 852
 	 */
853
-	public function set_author( $value ) {
854
-		$this->set_prop( 'author', (int) $value );
853
+	public function set_author($value) {
854
+		$this->set_prop('author', (int) $value);
855 855
 	}
856 856
 	
857 857
 	/**
@@ -860,9 +860,9 @@  discard block
 block discarded – undo
860 860
 	 * @since 1.0.19
861 861
 	 * @param string $value New discount code.
862 862
 	 */
863
-	public function set_code( $value ) {
864
-		$code = sanitize_text_field( $value );
865
-		$this->set_prop( 'code', $code );
863
+	public function set_code($value) {
864
+		$code = sanitize_text_field($value);
865
+		$this->set_prop('code', $code);
866 866
 	}
867 867
 	
868 868
 	/**
@@ -871,8 +871,8 @@  discard block
 block discarded – undo
871 871
 	 * @since 1.0.19
872 872
 	 * @param string $value New discount code.
873 873
 	 */
874
-	public function set_coupon_code( $value ) {
875
-		$this->set_code( $value );
874
+	public function set_coupon_code($value) {
875
+		$this->set_code($value);
876 876
 	}
877 877
 	
878 878
 	/**
@@ -881,8 +881,8 @@  discard block
 block discarded – undo
881 881
 	 * @since 1.0.19
882 882
 	 * @param string $value New discount code.
883 883
 	 */
884
-	public function set_discount_code( $value ) {
885
-		$this->set_code( $value );
884
+	public function set_discount_code($value) {
885
+		$this->set_code($value);
886 886
 	}
887 887
 	
888 888
 	/**
@@ -891,9 +891,9 @@  discard block
 block discarded – undo
891 891
 	 * @since 1.0.19
892 892
 	 * @param float $value New discount code.
893 893
 	 */
894
-	public function set_amount( $value ) {
895
-		$amount = floatval( wpinv_sanitize_amount( $value ) );
896
-		$this->set_prop( 'amount', $amount );
894
+	public function set_amount($value) {
895
+		$amount = floatval(wpinv_sanitize_amount($value));
896
+		$this->set_prop('amount', $amount);
897 897
 	}
898 898
 
899 899
 	/**
@@ -902,15 +902,15 @@  discard block
 block discarded – undo
902 902
 	 * @since 1.0.19
903 903
 	 * @param float $value New start date.
904 904
 	 */
905
-	public function set_start( $value ) {
906
-		$date = strtotime( $value );
905
+	public function set_start($value) {
906
+		$date = strtotime($value);
907 907
 
908
-        if ( $date ) {
909
-            $this->set_prop( 'start', date( 'Y-m-d H:i', $date ) );
908
+        if ($date) {
909
+            $this->set_prop('start', date('Y-m-d H:i', $date));
910 910
             return true;
911 911
 		}
912 912
 		
913
-		$this->set_prop( 'start', '' );
913
+		$this->set_prop('start', '');
914 914
 
915 915
         return false;
916 916
 	}
@@ -921,8 +921,8 @@  discard block
 block discarded – undo
921 921
 	 * @since 1.0.19
922 922
 	 * @param string $value New start date.
923 923
 	 */
924
-	public function set_start_date( $value ) {
925
-		$this->set_start( $value );
924
+	public function set_start_date($value) {
925
+		$this->set_start($value);
926 926
 	}
927 927
 
928 928
 	/**
@@ -931,15 +931,15 @@  discard block
 block discarded – undo
931 931
 	 * @since 1.0.19
932 932
 	 * @param float $value New expiration date.
933 933
 	 */
934
-	public function set_expiration( $value ) {
935
-		$date = strtotime( $value );
934
+	public function set_expiration($value) {
935
+		$date = strtotime($value);
936 936
 
937
-        if ( $date ) {
938
-            $this->set_prop( 'expiration', date( 'Y-m-d H:i', $date ) );
937
+        if ($date) {
938
+            $this->set_prop('expiration', date('Y-m-d H:i', $date));
939 939
             return true;
940 940
         }
941 941
 
942
-		$this->set_prop( 'expiration', '' );
942
+		$this->set_prop('expiration', '');
943 943
         return false;
944 944
 	}
945 945
 
@@ -949,8 +949,8 @@  discard block
 block discarded – undo
949 949
 	 * @since 1.0.19
950 950
 	 * @param string $value New expiration date.
951 951
 	 */
952
-	public function set_expiration_date( $value ) {
953
-		$this->set_expiration( $value );
952
+	public function set_expiration_date($value) {
953
+		$this->set_expiration($value);
954 954
 	}
955 955
 
956 956
 	/**
@@ -959,8 +959,8 @@  discard block
 block discarded – undo
959 959
 	 * @since 1.0.19
960 960
 	 * @param string $value New expiration date.
961 961
 	 */
962
-	public function set_end_date( $value ) {
963
-		$this->set_expiration( $value );
962
+	public function set_end_date($value) {
963
+		$this->set_expiration($value);
964 964
 	}
965 965
 
966 966
 	/**
@@ -969,9 +969,9 @@  discard block
 block discarded – undo
969 969
 	 * @since 1.0.19
970 970
 	 * @param string $value New discount type.
971 971
 	 */
972
-	public function set_type( $value ) {
973
-		if ( $value && array_key_exists( sanitize_text_field( $value ), wpinv_get_discount_types() ) ) {
974
-			$this->set_prop( 'type', sanitize_text_field( $value ) );
972
+	public function set_type($value) {
973
+		if ($value && array_key_exists(sanitize_text_field($value), wpinv_get_discount_types())) {
974
+			$this->set_prop('type', sanitize_text_field($value));
975 975
 		}
976 976
 	}
977 977
 
@@ -981,15 +981,15 @@  discard block
 block discarded – undo
981 981
 	 * @since 1.0.19
982 982
 	 * @param int $value usage count.
983 983
 	 */
984
-	public function set_uses( $value ) {
984
+	public function set_uses($value) {
985 985
 
986 986
 		$value = (int) $value;
987 987
 
988
-		if ( $value < 0 ) {
988
+		if ($value < 0) {
989 989
 			$value = 0;
990 990
 		}
991 991
 
992
-		$this->set_prop( 'uses', (int) $value );
992
+		$this->set_prop('uses', (int) $value);
993 993
 	}
994 994
 
995 995
 	/**
@@ -998,8 +998,8 @@  discard block
 block discarded – undo
998 998
 	 * @since 1.0.19
999 999
 	 * @param int $value maximum usage count.
1000 1000
 	 */
1001
-	public function set_max_uses( $value ) {
1002
-		$this->set_prop( 'max_uses', absint( $value ) );
1001
+	public function set_max_uses($value) {
1002
+		$this->set_prop('max_uses', absint($value));
1003 1003
 	}
1004 1004
 
1005 1005
 	/**
@@ -1008,8 +1008,8 @@  discard block
 block discarded – undo
1008 1008
 	 * @since 1.0.19
1009 1009
 	 * @param int|bool $value is single use.
1010 1010
 	 */
1011
-	public function set_is_single_use( $value ) {
1012
-		$this->set_prop( 'is_single_use', (bool) $value );
1011
+	public function set_is_single_use($value) {
1012
+		$this->set_prop('is_single_use', (bool) $value);
1013 1013
 	}
1014 1014
 
1015 1015
 	/**
@@ -1018,8 +1018,8 @@  discard block
 block discarded – undo
1018 1018
 	 * @since 1.0.19
1019 1019
 	 * @param array $value items.
1020 1020
 	 */
1021
-	public function set_items( $value ) {
1022
-		$this->set_prop( 'items', wpinv_parse_list( $value ) );
1021
+	public function set_items($value) {
1022
+		$this->set_prop('items', wpinv_parse_list($value));
1023 1023
 	}
1024 1024
 
1025 1025
 	/**
@@ -1028,8 +1028,8 @@  discard block
 block discarded – undo
1028 1028
 	 * @since 1.0.19
1029 1029
 	 * @param array $value items.
1030 1030
 	 */
1031
-	public function set_allowed_items( $value ) {
1032
-		$this->set_items( $value );
1031
+	public function set_allowed_items($value) {
1032
+		$this->set_items($value);
1033 1033
 	}
1034 1034
 
1035 1035
 	/**
@@ -1038,8 +1038,8 @@  discard block
 block discarded – undo
1038 1038
 	 * @since 1.0.19
1039 1039
 	 * @param array $value items.
1040 1040
 	 */
1041
-	public function set_excluded_items( $value ) {
1042
-		$this->set_prop( 'excluded_items', wpinv_parse_list( $value ) );
1041
+	public function set_excluded_items($value) {
1042
+		$this->set_prop('excluded_items', wpinv_parse_list($value));
1043 1043
 	}
1044 1044
 
1045 1045
 	/**
@@ -1048,8 +1048,8 @@  discard block
 block discarded – undo
1048 1048
 	 * @since 1.0.19
1049 1049
 	 * @param int|bool $value is recurring.
1050 1050
 	 */
1051
-	public function set_is_recurring( $value ) {
1052
-		$this->set_prop( 'is_recurring', (bool) $value );
1051
+	public function set_is_recurring($value) {
1052
+		$this->set_prop('is_recurring', (bool) $value);
1053 1053
 	}
1054 1054
 
1055 1055
 	/**
@@ -1058,8 +1058,8 @@  discard block
 block discarded – undo
1058 1058
 	 * @since 1.0.19
1059 1059
 	 * @param float $value minimum total.
1060 1060
 	 */
1061
-	public function set_min_total( $value ) {
1062
-		$this->set_prop( 'min_total', (float) wpinv_sanitize_amount( $value ) );
1061
+	public function set_min_total($value) {
1062
+		$this->set_prop('min_total', (float) wpinv_sanitize_amount($value));
1063 1063
 	}
1064 1064
 
1065 1065
 	/**
@@ -1068,8 +1068,8 @@  discard block
 block discarded – undo
1068 1068
 	 * @since 1.0.19
1069 1069
 	 * @param float $value minimum total.
1070 1070
 	 */
1071
-	public function set_minimum_total( $value ) {
1072
-		$this->set_min_total( $value );
1071
+	public function set_minimum_total($value) {
1072
+		$this->set_min_total($value);
1073 1073
 	}
1074 1074
 
1075 1075
 	/**
@@ -1078,8 +1078,8 @@  discard block
 block discarded – undo
1078 1078
 	 * @since 1.0.19
1079 1079
 	 * @param float $value maximum total.
1080 1080
 	 */
1081
-	public function set_max_total( $value ) {
1082
-		$this->set_prop( 'max_total', (float) wpinv_sanitize_amount( $value ) );
1081
+	public function set_max_total($value) {
1082
+		$this->set_prop('max_total', (float) wpinv_sanitize_amount($value));
1083 1083
 	}
1084 1084
 
1085 1085
 	/**
@@ -1088,23 +1088,23 @@  discard block
 block discarded – undo
1088 1088
 	 * @since 1.0.19
1089 1089
 	 * @param float $value maximum total.
1090 1090
 	 */
1091
-	public function set_maximum_total( $value ) {
1092
-		$this->set_max_total( $value );
1091
+	public function set_maximum_total($value) {
1092
+		$this->set_max_total($value);
1093 1093
 	}
1094 1094
 
1095 1095
 	/**
1096 1096
 	 * @deprecated
1097 1097
 	 */
1098
-	public function refresh(){}
1098
+	public function refresh() {}
1099 1099
 
1100 1100
 	/**
1101 1101
 	 * @deprecated
1102 1102
 	 *
1103 1103
 	 */
1104
-	public function update_status( $status = 'publish' ){
1104
+	public function update_status($status = 'publish') {
1105 1105
 
1106
-		if ( $this->exists() && $this->get_status() != $status ) {
1107
-			$this->set_status( $status );
1106
+		if ($this->exists() && $this->get_status() != $status) {
1107
+			$this->set_status($status);
1108 1108
 			$this->save();
1109 1109
 		}
1110 1110
 
@@ -1124,9 +1124,9 @@  discard block
 block discarded – undo
1124 1124
 	 *
1125 1125
 	 * @since 1.0.15
1126 1126
 	 */
1127
-	public function exists(){
1127
+	public function exists() {
1128 1128
 		$id = $this->get_id();
1129
-		return ! empty( $id );
1129
+		return !empty($id);
1130 1130
 	}
1131 1131
 
1132 1132
 	/**
@@ -1137,7 +1137,7 @@  discard block
 block discarded – undo
1137 1137
 	 * @since 1.0.15
1138 1138
 	 * @return bool
1139 1139
 	 */
1140
-	public function is_type( $type ) {
1140
+	public function is_type($type) {
1141 1141
 		return $this->get_type() == $type;
1142 1142
 	}
1143 1143
 
@@ -1159,7 +1159,7 @@  discard block
 block discarded – undo
1159 1159
 	 */
1160 1160
 	public function has_limit() {
1161 1161
 		$limit = $this->get_max_uses();
1162
-		return ! empty( $limit );
1162
+		return !empty($limit);
1163 1163
 	}
1164 1164
 
1165 1165
 	/**
@@ -1180,13 +1180,13 @@  discard block
 block discarded – undo
1180 1180
 	 */
1181 1181
 	public function has_exceeded_limit() {
1182 1182
 
1183
-		if ( ! $this->has_limit() || ! $this->has_uses() ) {
1184
-			$exceeded = false ;
1183
+		if (!$this->has_limit() || !$this->has_uses()) {
1184
+			$exceeded = false;
1185 1185
 		} else {
1186
-			$exceeded = ! ( (int) $this->get_max_uses() < $this->get_uses() );
1186
+			$exceeded = !((int) $this->get_max_uses() < $this->get_uses());
1187 1187
 		}
1188 1188
 
1189
-		return apply_filters( 'wpinv_is_discount_maxed_out', $exceeded, $this->get_id(), $this, $this->get_code() );
1189
+		return apply_filters('wpinv_is_discount_maxed_out', $exceeded, $this->get_id(), $this, $this->get_code());
1190 1190
 	}
1191 1191
 
1192 1192
 	/**
@@ -1197,7 +1197,7 @@  discard block
 block discarded – undo
1197 1197
 	 */
1198 1198
 	public function has_expiration_date() {
1199 1199
 		$date = $this->get_expiration_date();
1200
-		return ! empty( $date );
1200
+		return !empty($date);
1201 1201
 	}
1202 1202
 
1203 1203
 	/**
@@ -1207,8 +1207,8 @@  discard block
 block discarded – undo
1207 1207
 	 * @return bool
1208 1208
 	 */
1209 1209
 	public function is_expired() {
1210
-		$expired = $this->has_expiration_date() ? current_time( 'timestamp' ) > strtotime( $this->get_expiration_date() ) : false;
1211
-		return apply_filters( 'wpinv_is_discount_expired', $expired, $this->get_id(), $this, $this->get_code() );
1210
+		$expired = $this->has_expiration_date() ? current_time('timestamp') > strtotime($this->get_expiration_date()) : false;
1211
+		return apply_filters('wpinv_is_discount_expired', $expired, $this->get_id(), $this, $this->get_code());
1212 1212
 	}
1213 1213
 
1214 1214
 	/**
@@ -1219,7 +1219,7 @@  discard block
 block discarded – undo
1219 1219
 	 */
1220 1220
 	public function has_start_date() {
1221 1221
 		$date = $this->get_start_date();
1222
-		return ! empty( $date );
1222
+		return !empty($date);
1223 1223
 	}
1224 1224
 
1225 1225
 	/**
@@ -1229,8 +1229,8 @@  discard block
 block discarded – undo
1229 1229
 	 * @return bool
1230 1230
 	 */
1231 1231
 	public function has_started() {
1232
-		$started = $this->has_start_date() ? true : current_time( 'timestamp' ) > strtotime( $this->get_start_date() );
1233
-		return apply_filters( 'wpinv_is_discount_started', $started, $this->get_id(), $this, $this->get_code() );
1232
+		$started = $this->has_start_date() ? true : current_time('timestamp') > strtotime($this->get_start_date());
1233
+		return apply_filters('wpinv_is_discount_started', $started, $this->get_id(), $this, $this->get_code());
1234 1234
 	}
1235 1235
 
1236 1236
 	/**
@@ -1241,7 +1241,7 @@  discard block
 block discarded – undo
1241 1241
 	 */
1242 1242
 	public function has_allowed_items() {
1243 1243
 		$allowed_items = $this->get_allowed_items();
1244
-		return ! empty( $allowed_items );
1244
+		return !empty($allowed_items);
1245 1245
 	}
1246 1246
 
1247 1247
 	/**
@@ -1252,7 +1252,7 @@  discard block
 block discarded – undo
1252 1252
 	 */
1253 1253
 	public function has_excluded_items() {
1254 1254
 		$excluded_items = $this->get_excluded_items();
1255
-		return ! empty( $excluded_items );
1255
+		return !empty($excluded_items);
1256 1256
 	}
1257 1257
 
1258 1258
 	/**
@@ -1262,17 +1262,17 @@  discard block
 block discarded – undo
1262 1262
 	 * @since 1.0.15
1263 1263
 	 * @return boolean
1264 1264
 	 */
1265
-	public function is_valid_for_items( $item_ids ) {
1265
+	public function is_valid_for_items($item_ids) {
1266 1266
 
1267
-		$item_ids = wp_parse_id_list( $item_ids );
1268
-		$included = array_intersect( $item_ids, $this->get_allowed_items() );
1269
-		$excluded = array_intersect( $item_ids, $this->get_excluded_items() );
1267
+		$item_ids = wp_parse_id_list($item_ids);
1268
+		$included = array_intersect($item_ids, $this->get_allowed_items());
1269
+		$excluded = array_intersect($item_ids, $this->get_excluded_items());
1270 1270
 
1271
-		if ( $this->has_excluded_items() && ! empty( $excluded ) ) {
1271
+		if ($this->has_excluded_items() && !empty($excluded)) {
1272 1272
 			return false;
1273 1273
 		}
1274 1274
 
1275
-		if ( $this->has_allowed_items() && empty( $included ) ) {
1275
+		if ($this->has_allowed_items() && empty($included)) {
1276 1276
 			return false;
1277 1277
 		}
1278 1278
 
@@ -1286,8 +1286,8 @@  discard block
 block discarded – undo
1286 1286
 	 * @since 1.0.15
1287 1287
 	 * @return boolean
1288 1288
 	 */
1289
-	public function is_valid_for_amount( $amount ) {
1290
-		return $this->is_minimum_amount_met( $amount ) && $this->is_maximum_amount_met( $amount );
1289
+	public function is_valid_for_amount($amount) {
1290
+		return $this->is_minimum_amount_met($amount) && $this->is_maximum_amount_met($amount);
1291 1291
 	}
1292 1292
 
1293 1293
 	/**
@@ -1298,7 +1298,7 @@  discard block
 block discarded – undo
1298 1298
 	 */
1299 1299
 	public function has_minimum_amount() {
1300 1300
 		$minimum = $this->get_minimum_total();
1301
-		return ! empty( $minimum );
1301
+		return !empty($minimum);
1302 1302
 	}
1303 1303
 
1304 1304
 	/**
@@ -1308,10 +1308,10 @@  discard block
 block discarded – undo
1308 1308
 	 * @since 1.0.15
1309 1309
 	 * @return boolean
1310 1310
 	 */
1311
-	public function is_minimum_amount_met( $amount ) {
1312
-		$amount = floatval( wpinv_sanitize_amount( $amount ) );
1313
-		$min_met= ! ( $this->has_minimum_amount() && $amount < floatval( wpinv_sanitize_amount( $this->get_minimum_total() ) ) );
1314
-		return apply_filters( 'wpinv_is_discount_min_met', $min_met, $this->get_id(), $this, $this->get_code(), $amount );
1311
+	public function is_minimum_amount_met($amount) {
1312
+		$amount = floatval(wpinv_sanitize_amount($amount));
1313
+		$min_met = !($this->has_minimum_amount() && $amount < floatval(wpinv_sanitize_amount($this->get_minimum_total())));
1314
+		return apply_filters('wpinv_is_discount_min_met', $min_met, $this->get_id(), $this, $this->get_code(), $amount);
1315 1315
 	}
1316 1316
 
1317 1317
 	/**
@@ -1322,7 +1322,7 @@  discard block
 block discarded – undo
1322 1322
 	 */
1323 1323
 	public function has_maximum_amount() {
1324 1324
 		$maximum = $this->get_maximum_total();
1325
-		return ! empty( $maximum );
1325
+		return !empty($maximum);
1326 1326
 	}
1327 1327
 
1328 1328
 	/**
@@ -1332,10 +1332,10 @@  discard block
 block discarded – undo
1332 1332
 	 * @since 1.0.15
1333 1333
 	 * @return boolean
1334 1334
 	 */
1335
-	public function is_maximum_amount_met( $amount ) {
1336
-		$amount = floatval( wpinv_sanitize_amount( $amount ) );
1337
-		$max_met= ! ( $this->has_maximum_amount() && $amount > floatval( wpinv_sanitize_amount( $this->get_maximum_total() ) ) );
1338
-		return apply_filters( 'wpinv_is_discount_max_met', $max_met, $this->get_id(), $this, $this->get_code(), $amount );
1335
+	public function is_maximum_amount_met($amount) {
1336
+		$amount = floatval(wpinv_sanitize_amount($amount));
1337
+		$max_met = !($this->has_maximum_amount() && $amount > floatval(wpinv_sanitize_amount($this->get_maximum_total())));
1338
+		return apply_filters('wpinv_is_discount_max_met', $max_met, $this->get_id(), $this, $this->get_code(), $amount);
1339 1339
 	}
1340 1340
 
1341 1341
 	/**
@@ -1346,7 +1346,7 @@  discard block
 block discarded – undo
1346 1346
 	 */
1347 1347
 	public function is_recurring() {
1348 1348
 		$recurring = $this->get_is_recurring();
1349
-		return ! empty( $recurring );
1349
+		return !empty($recurring);
1350 1350
 	}
1351 1351
 
1352 1352
 	/**
@@ -1357,7 +1357,7 @@  discard block
 block discarded – undo
1357 1357
 	 */
1358 1358
 	public function is_single_use() {
1359 1359
 		$usage = $this->get_is_single_use();
1360
-		return ! empty( $usage );
1360
+		return !empty($usage);
1361 1361
 	}
1362 1362
 
1363 1363
 	/**
@@ -1367,37 +1367,37 @@  discard block
 block discarded – undo
1367 1367
 	 * @since 1.0.15
1368 1368
 	 * @return boolean
1369 1369
 	 */
1370
-	public function is_valid_for_user( $user ) {
1370
+	public function is_valid_for_user($user) {
1371 1371
 
1372 1372
 		// Ensure that the discount is single use.
1373
-		if ( empty( $user ) || ! $this->is_single_use() ) {
1373
+		if (empty($user) || !$this->is_single_use()) {
1374 1374
 			return true;
1375 1375
 		}
1376 1376
 
1377 1377
 		// Prepare the user id.
1378 1378
 		$user_id = 0;
1379
-        if ( is_numeric( $user ) ) {
1380
-            $user_id = absint( $user );
1381
-        } else if ( is_email( $user ) && $user_data = get_user_by( 'email', $user ) ) {
1379
+        if (is_numeric($user)) {
1380
+            $user_id = absint($user);
1381
+        } else if (is_email($user) && $user_data = get_user_by('email', $user)) {
1382 1382
             $user_id = $user_data->ID;
1383
-        } else if ( $user_data = get_user_by( 'login', $user ) ) {
1383
+        } else if ($user_data = get_user_by('login', $user)) {
1384 1384
             $user_id = $user_data->ID;
1385 1385
         }
1386 1386
 
1387 1387
 		// Ensure that we have a user.
1388
-		if ( empty( $user_id ) ) {
1388
+		if (empty($user_id)) {
1389 1389
 			return true;
1390 1390
 		}
1391 1391
 
1392 1392
 		// Get all payments with matching user id.
1393
-        $payments = wpinv_get_invoices( array( 'user' => $user_id, 'limit' => false, 'paginate' => false ) );
1394
-		$code     = strtolower( $this->get_code() );
1393
+        $payments = wpinv_get_invoices(array('user' => $user_id, 'limit' => false, 'paginate' => false));
1394
+		$code = strtolower($this->get_code());
1395 1395
 
1396 1396
 		// For each payment...
1397
-		foreach ( $payments as $payment ) {
1397
+		foreach ($payments as $payment) {
1398 1398
 
1399 1399
 			// Only check for paid invoices.
1400
-			if ( $payment->is_paid() && strtolower( $payment->get_discount_code() ) == $code ) {
1400
+			if ($payment->is_paid() && strtolower($payment->get_discount_code()) == $code) {
1401 1401
 				return false;
1402 1402
 			}
1403 1403
 
@@ -1423,24 +1423,24 @@  discard block
 block discarded – undo
1423 1423
 	 * @param int $by The number of usages to increas by.
1424 1424
 	 * @return int
1425 1425
 	 */
1426
-	public function increase_usage( $by = 1 ) {
1426
+	public function increase_usage($by = 1) {
1427 1427
 
1428 1428
 		// Abort if zero.
1429
-		if ( empty( $by ) ) {
1429
+		if (empty($by)) {
1430 1430
 			return;
1431 1431
 		}
1432 1432
 
1433 1433
 		// Increase the usage.
1434
-		$this->set_uses( $this->get_uses() + (int) $by );
1434
+		$this->set_uses($this->get_uses() + (int) $by);
1435 1435
 
1436 1436
 		// Save the discount.
1437 1437
 		$this->save();
1438 1438
 
1439 1439
 		// Fire relevant hooks.
1440
-		if( (int) $by > 0 ) {
1441
-			do_action( 'wpinv_discount_increase_use_count', $this->get_uses(), $this->get_id(), $this->get_code(),  absint( $by ) );
1440
+		if ((int) $by > 0) {
1441
+			do_action('wpinv_discount_increase_use_count', $this->get_uses(), $this->get_id(), $this->get_code(), absint($by));
1442 1442
 		} else {
1443
-			do_action( 'wpinv_discount_decrease_use_count', $this->get_uses(), $this->get_id(), $this->get_code(), absint( $by ) );
1443
+			do_action('wpinv_discount_decrease_use_count', $this->get_uses(), $this->get_id(), $this->get_code(), absint($by));
1444 1444
 		}
1445 1445
 
1446 1446
 		// Return the number of times the discount has been used.
@@ -1464,7 +1464,7 @@  discard block
 block discarded – undo
1464 1464
 	 * @param float $amount
1465 1465
 	 * @return float
1466 1466
 	 */
1467
-	public function get_discounted_amount( $amount ) {
1467
+	public function get_discounted_amount($amount) {
1468 1468
 
1469 1469
 		// Convert amount to float.
1470 1470
 		$amount = (float) $amount;
@@ -1472,29 +1472,29 @@  discard block
 block discarded – undo
1472 1472
 		// Get discount amount.
1473 1473
 		$discount_amount = $this->get_amount();
1474 1474
 
1475
-		if ( empty( $discount_amount ) ) {
1475
+		if (empty($discount_amount)) {
1476 1476
 			return 0;
1477 1477
 		}
1478 1478
 
1479 1479
 		// Format the amount.
1480
-		$discount_amount = floatval( wpinv_sanitize_amount( $discount_amount ) );
1480
+		$discount_amount = floatval(wpinv_sanitize_amount($discount_amount));
1481 1481
 		
1482 1482
 		// If this is a percentage discount.
1483
-		if ( $this->is_type( 'percent' ) ) {
1484
-            $discount_amount = $amount * ( $discount_amount / 100 );
1483
+		if ($this->is_type('percent')) {
1484
+            $discount_amount = $amount * ($discount_amount / 100);
1485 1485
 		}
1486 1486
 
1487 1487
 		// Discount can not be less than zero...
1488
-		if ( $discount_amount < 0 ) {
1488
+		if ($discount_amount < 0) {
1489 1489
 			$discount_amount = 0;
1490 1490
 		}
1491 1491
 
1492 1492
 		// ... or more than the amount.
1493
-		if ( $discount_amount > $amount ) {
1493
+		if ($discount_amount > $amount) {
1494 1494
 			$discount_amount = $amount;
1495 1495
 		}
1496 1496
 
1497
-		return apply_filters( 'wpinv_discount_total_discount_amount', $discount_amount, $amount, $this );
1497
+		return apply_filters('wpinv_discount_total_discount_amount', $discount_amount, $amount, $this);
1498 1498
 	}
1499 1499
 
1500 1500
 }
Please login to merge, or discard this patch.
vendor/ayecode/ayecode-connect-helper/ayecode-connect-helper.php 2 patches
Indentation   +310 added lines, -310 removed lines patch added patch discarded remove patch
@@ -1,271 +1,271 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 
3 3
 if ( ! defined( 'ABSPATH' ) ) {
4
-	exit;
4
+    exit;
5 5
 }
6 6
 
7 7
 if ( ! class_exists( "AyeCode_Connect_Helper" ) ) {
8
-	/**
9
-	 * Allow the quick setup and connection of our AyeCode Connect plugin.
10
-	 *
11
-	 * Class AyeCode_Connect_Helper
12
-	 */
13
-	class AyeCode_Connect_Helper {
14
-
15
-		// Hold the version number
16
-		var $version = "1.0.3";
17
-
18
-		// Hold the default strings.
19
-		var $strings = array();
20
-
21
-		// Hold the default pages.
22
-		var $pages = array();
23
-
24
-		/**
25
-		 * The constructor.
26
-		 *
27
-		 * AyeCode_Connect_Helper constructor.
28
-		 *
29
-		 * @param array $strings
30
-		 * @param array $pages
31
-		 */
32
-		public function __construct( $strings = array(), $pages = array() ) {
33
-
34
-			// Only fire if not localhost and the current user has the right permissions.
35
-			if ( ! $this->is_localhost() && current_user_can( 'manage_options' ) ) {
36
-
37
-
38
-				// set default strings
39
-				$default_strings = array(
40
-					'connect_title'     => __( "Thanks for choosing an AyeCode Product!" ),
41
-					'connect_external'  => __( "Please confirm you wish to connect your site?" ),
42
-					'connect'           => sprintf( __( "<strong>Have a license?</strong> Forget about entering license keys or downloading zip files, connect your site for instant access. %slearn more%s" ), "<a href='https://ayecode.io/introducing-ayecode-connect/' target='_blank'>", "</a>" ),
43
-					'connect_button'    => __( "Connect Site" ),
44
-					'connecting_button' => __( "Connecting..." ),
45
-					'error_localhost'   => __( "This service will only work with a live domain, not a localhost." ),
46
-					'error'             => __( "Something went wrong, please refresh and try again." ),
47
-				);
48
-				$this->strings   = array_merge( $default_strings, $strings );
49
-
50
-
51
-				// set default pages
52
-				$default_pages = array();
53
-				$this->pages   = array_merge( $default_pages, $pages );
54
-
55
-				// maybe show connect site notice
56
-				add_action( 'admin_notices', array( $this, 'ayecode_connect_install_notice' ) );
57
-
58
-				// add ajax action if not already added
59
-				if ( ! has_action( 'wp_ajax_ayecode_connect_helper' ) ) {
60
-					add_action( 'wp_ajax_ayecode_connect_helper', array( $this, 'ayecode_connect_install' ) );
61
-				}
62
-			}
63
-
64
-			// add ajax action if not already added
65
-			if ( ! has_action( 'wp_ajax_nopriv_ayecode_connect_helper_installed' ) ) {
66
-				add_action( 'wp_ajax_nopriv_ayecode_connect_helper_installed', array( $this, 'ayecode_connect_helper_installed' ) );
67
-			}
68
-
69
-		}
70
-
71
-		/**
72
-		 * Give a way to check we can connect via a external redirect.
73
-		 */
74
-		public function ayecode_connect_helper_installed(){
75
-			$active = array(
76
-				'gd'    =>  defined('GEODIRECTORY_VERSION') && version_compare(GEODIRECTORY_VERSION,'2.0.0.79','>') ? 1 : 0,
77
-				'uwp'    =>  defined('USERSWP_VERSION') && version_compare(USERSWP_VERSION,'1.2.1.5','>') ? 1 : 0,
78
-				'wpi'    =>  defined('WPINV_VERSION') && version_compare(WPINV_VERSION,'1.0.14','>') ? 1 : 0,
79
-			);
80
-			wp_send_json_success( $active );
81
-			wp_die();
82
-		}
83
-
84
-		/**
85
-		 * Get slug from path
86
-		 *
87
-		 * @param  string $key
88
-		 *
89
-		 * @return string
90
-		 */
91
-		private function format_plugin_slug( $key ) {
92
-			$slug = explode( '/', $key );
93
-			$slug = explode( '.', end( $slug ) );
94
-
95
-			return $slug[0];
96
-		}
97
-
98
-		/**
99
-		 * Install and activate the AyeCode Connect Plugin
100
-		 */
101
-		public function ayecode_connect_install() {
102
-
103
-			// bail if localhost
104
-			if ( $this->is_localhost() ) {
105
-				wp_send_json_error( $this->strings['error_localhost'] );
106
-			}
107
-
108
-			// Explicitly clear the event.
109
-			wp_clear_scheduled_hook( 'geodir_plugin_background_installer', func_get_args() );
110
-
111
-			$success     = true;
112
-			$plugin_slug = "ayecode-connect";
113
-			if ( ! empty( $plugin_slug ) ) {
114
-				require_once( ABSPATH . 'wp-admin/includes/file.php' );
115
-				require_once( ABSPATH . 'wp-admin/includes/plugin-install.php' );
116
-				require_once( ABSPATH . 'wp-admin/includes/class-wp-upgrader.php' );
117
-				require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
118
-
119
-				WP_Filesystem();
120
-
121
-				$skin              = new Automatic_Upgrader_Skin;
122
-				$upgrader          = new WP_Upgrader( $skin );
123
-				$installed_plugins = array_map( array( $this, 'format_plugin_slug' ), array_keys( get_plugins() ) );
124
-				$plugin_slug       = $plugin_slug;
125
-				$plugin            = $plugin_slug . '/' . $plugin_slug . '.php';
126
-				$installed         = false;
127
-				$activate          = false;
128
-
129
-				// See if the plugin is installed already
130
-				if ( in_array( $plugin_slug, $installed_plugins ) ) {
131
-					$installed = true;
132
-					$activate  = ! is_plugin_active( $plugin );
133
-				}
134
-
135
-				// Install this thing!
136
-				if ( ! $installed ) {
137
-
138
-					// Suppress feedback
139
-					ob_start();
140
-
141
-					try {
142
-						$plugin_information = plugins_api( 'plugin_information', array(
143
-							'slug'   => $plugin_slug,
144
-							'fields' => array(
145
-								'short_description' => false,
146
-								'sections'          => false,
147
-								'requires'          => false,
148
-								'rating'            => false,
149
-								'ratings'           => false,
150
-								'downloaded'        => false,
151
-								'last_updated'      => false,
152
-								'added'             => false,
153
-								'tags'              => false,
154
-								'homepage'          => false,
155
-								'donate_link'       => false,
156
-								'author_profile'    => false,
157
-								'author'            => false,
158
-							),
159
-						) );
160
-
161
-						if ( is_wp_error( $plugin_information ) ) {
162
-							throw new Exception( $plugin_information->get_error_message() );
163
-						}
164
-
165
-						$package  = $plugin_information->download_link;
166
-						$download = $upgrader->download_package( $package );
167
-
168
-						if ( is_wp_error( $download ) ) {
169
-							throw new Exception( $download->get_error_message() );
170
-						}
171
-
172
-						$working_dir = $upgrader->unpack_package( $download, true );
173
-
174
-						if ( is_wp_error( $working_dir ) ) {
175
-							throw new Exception( $working_dir->get_error_message() );
176
-						}
177
-
178
-						$result = $upgrader->install_package( array(
179
-							'source'                      => $working_dir,
180
-							'destination'                 => WP_PLUGIN_DIR,
181
-							'clear_destination'           => false,
182
-							'abort_if_destination_exists' => false,
183
-							'clear_working'               => true,
184
-							'hook_extra'                  => array(
185
-								'type'   => 'plugin',
186
-								'action' => 'install',
187
-							),
188
-						) );
189
-
190
-						if ( is_wp_error( $result ) ) {
191
-							throw new Exception( $result->get_error_message() );
192
-						}
193
-
194
-						$activate = true;
195
-
196
-					} catch ( Exception $e ) {
197
-						$success = false;
198
-					}
199
-
200
-					// Discard feedback
201
-					ob_end_clean();
202
-				}
203
-
204
-				wp_clean_plugins_cache();
205
-
206
-				// Activate this thing
207
-				if ( $activate ) {
208
-					try {
209
-						$result = activate_plugin( $plugin );
210
-
211
-						if ( is_wp_error( $result ) ) {
212
-							$success = false;
213
-						} else {
214
-							$success = true;
215
-						}
216
-					} catch ( Exception $e ) {
217
-						$success = false;
218
-					}
219
-				}
220
-			}
221
-
222
-			if ( $success && function_exists( 'ayecode_connect_args' ) ) {
223
-				ayecode_connect();// init
224
-				$args        = ayecode_connect_args();
225
-				$client      = new AyeCode_Connect( $args );
226
-				$redirect_to = ! empty( $_POST['redirect_to'] ) ? esc_url_raw( $_POST['redirect_to'] ) : '';
227
-				$redirect    = $client->build_connect_url( $redirect_to );
228
-				wp_send_json_success( array( 'connect_url' => $redirect ) );
229
-			} else {
230
-				wp_send_json_error( $this->strings['error_localhost'] );
231
-			}
232
-			wp_die();
233
-		}
234
-
235
-		/**
236
-		 * Check if maybe localhost.
237
-		 *
238
-		 * @return bool
239
-		 */
240
-		public function is_localhost() {
241
-			$localhost = false;
242
-
243
-			$host              = isset( $_SERVER['HTTP_HOST'] ) ? $_SERVER['HTTP_HOST'] : '';
244
-			$localhost_domains = array(
245
-				'localhost',
246
-				'localhost.localdomain',
247
-				'127.0.0.1',
248
-				'::1'
249
-			);
250
-
251
-			if ( in_array( $host, $localhost_domains ) ) {
252
-				$localhost = true;
253
-			}
254
-
255
-			return $localhost;
256
-		}
257
-
258
-		/**
259
-		 * Show notice to connect site.
260
-		 */
261
-		public function ayecode_connect_install_notice() {
262
-			if ( $this->maybe_show() ) {
263
-				$connect_title_string     = $this->strings['connect_title'];
264
-				$connect_external_string  = $this->strings['connect_external'];
265
-				$connect_string           = $this->strings['connect'];
266
-				$connect_button_string    = $this->strings['connect_button'];
267
-				$connecting_button_string = $this->strings['connecting_button'];
268
-				?>
8
+    /**
9
+     * Allow the quick setup and connection of our AyeCode Connect plugin.
10
+     *
11
+     * Class AyeCode_Connect_Helper
12
+     */
13
+    class AyeCode_Connect_Helper {
14
+
15
+        // Hold the version number
16
+        var $version = "1.0.3";
17
+
18
+        // Hold the default strings.
19
+        var $strings = array();
20
+
21
+        // Hold the default pages.
22
+        var $pages = array();
23
+
24
+        /**
25
+         * The constructor.
26
+         *
27
+         * AyeCode_Connect_Helper constructor.
28
+         *
29
+         * @param array $strings
30
+         * @param array $pages
31
+         */
32
+        public function __construct( $strings = array(), $pages = array() ) {
33
+
34
+            // Only fire if not localhost and the current user has the right permissions.
35
+            if ( ! $this->is_localhost() && current_user_can( 'manage_options' ) ) {
36
+
37
+
38
+                // set default strings
39
+                $default_strings = array(
40
+                    'connect_title'     => __( "Thanks for choosing an AyeCode Product!" ),
41
+                    'connect_external'  => __( "Please confirm you wish to connect your site?" ),
42
+                    'connect'           => sprintf( __( "<strong>Have a license?</strong> Forget about entering license keys or downloading zip files, connect your site for instant access. %slearn more%s" ), "<a href='https://ayecode.io/introducing-ayecode-connect/' target='_blank'>", "</a>" ),
43
+                    'connect_button'    => __( "Connect Site" ),
44
+                    'connecting_button' => __( "Connecting..." ),
45
+                    'error_localhost'   => __( "This service will only work with a live domain, not a localhost." ),
46
+                    'error'             => __( "Something went wrong, please refresh and try again." ),
47
+                );
48
+                $this->strings   = array_merge( $default_strings, $strings );
49
+
50
+
51
+                // set default pages
52
+                $default_pages = array();
53
+                $this->pages   = array_merge( $default_pages, $pages );
54
+
55
+                // maybe show connect site notice
56
+                add_action( 'admin_notices', array( $this, 'ayecode_connect_install_notice' ) );
57
+
58
+                // add ajax action if not already added
59
+                if ( ! has_action( 'wp_ajax_ayecode_connect_helper' ) ) {
60
+                    add_action( 'wp_ajax_ayecode_connect_helper', array( $this, 'ayecode_connect_install' ) );
61
+                }
62
+            }
63
+
64
+            // add ajax action if not already added
65
+            if ( ! has_action( 'wp_ajax_nopriv_ayecode_connect_helper_installed' ) ) {
66
+                add_action( 'wp_ajax_nopriv_ayecode_connect_helper_installed', array( $this, 'ayecode_connect_helper_installed' ) );
67
+            }
68
+
69
+        }
70
+
71
+        /**
72
+         * Give a way to check we can connect via a external redirect.
73
+         */
74
+        public function ayecode_connect_helper_installed(){
75
+            $active = array(
76
+                'gd'    =>  defined('GEODIRECTORY_VERSION') && version_compare(GEODIRECTORY_VERSION,'2.0.0.79','>') ? 1 : 0,
77
+                'uwp'    =>  defined('USERSWP_VERSION') && version_compare(USERSWP_VERSION,'1.2.1.5','>') ? 1 : 0,
78
+                'wpi'    =>  defined('WPINV_VERSION') && version_compare(WPINV_VERSION,'1.0.14','>') ? 1 : 0,
79
+            );
80
+            wp_send_json_success( $active );
81
+            wp_die();
82
+        }
83
+
84
+        /**
85
+         * Get slug from path
86
+         *
87
+         * @param  string $key
88
+         *
89
+         * @return string
90
+         */
91
+        private function format_plugin_slug( $key ) {
92
+            $slug = explode( '/', $key );
93
+            $slug = explode( '.', end( $slug ) );
94
+
95
+            return $slug[0];
96
+        }
97
+
98
+        /**
99
+         * Install and activate the AyeCode Connect Plugin
100
+         */
101
+        public function ayecode_connect_install() {
102
+
103
+            // bail if localhost
104
+            if ( $this->is_localhost() ) {
105
+                wp_send_json_error( $this->strings['error_localhost'] );
106
+            }
107
+
108
+            // Explicitly clear the event.
109
+            wp_clear_scheduled_hook( 'geodir_plugin_background_installer', func_get_args() );
110
+
111
+            $success     = true;
112
+            $plugin_slug = "ayecode-connect";
113
+            if ( ! empty( $plugin_slug ) ) {
114
+                require_once( ABSPATH . 'wp-admin/includes/file.php' );
115
+                require_once( ABSPATH . 'wp-admin/includes/plugin-install.php' );
116
+                require_once( ABSPATH . 'wp-admin/includes/class-wp-upgrader.php' );
117
+                require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
118
+
119
+                WP_Filesystem();
120
+
121
+                $skin              = new Automatic_Upgrader_Skin;
122
+                $upgrader          = new WP_Upgrader( $skin );
123
+                $installed_plugins = array_map( array( $this, 'format_plugin_slug' ), array_keys( get_plugins() ) );
124
+                $plugin_slug       = $plugin_slug;
125
+                $plugin            = $plugin_slug . '/' . $plugin_slug . '.php';
126
+                $installed         = false;
127
+                $activate          = false;
128
+
129
+                // See if the plugin is installed already
130
+                if ( in_array( $plugin_slug, $installed_plugins ) ) {
131
+                    $installed = true;
132
+                    $activate  = ! is_plugin_active( $plugin );
133
+                }
134
+
135
+                // Install this thing!
136
+                if ( ! $installed ) {
137
+
138
+                    // Suppress feedback
139
+                    ob_start();
140
+
141
+                    try {
142
+                        $plugin_information = plugins_api( 'plugin_information', array(
143
+                            'slug'   => $plugin_slug,
144
+                            'fields' => array(
145
+                                'short_description' => false,
146
+                                'sections'          => false,
147
+                                'requires'          => false,
148
+                                'rating'            => false,
149
+                                'ratings'           => false,
150
+                                'downloaded'        => false,
151
+                                'last_updated'      => false,
152
+                                'added'             => false,
153
+                                'tags'              => false,
154
+                                'homepage'          => false,
155
+                                'donate_link'       => false,
156
+                                'author_profile'    => false,
157
+                                'author'            => false,
158
+                            ),
159
+                        ) );
160
+
161
+                        if ( is_wp_error( $plugin_information ) ) {
162
+                            throw new Exception( $plugin_information->get_error_message() );
163
+                        }
164
+
165
+                        $package  = $plugin_information->download_link;
166
+                        $download = $upgrader->download_package( $package );
167
+
168
+                        if ( is_wp_error( $download ) ) {
169
+                            throw new Exception( $download->get_error_message() );
170
+                        }
171
+
172
+                        $working_dir = $upgrader->unpack_package( $download, true );
173
+
174
+                        if ( is_wp_error( $working_dir ) ) {
175
+                            throw new Exception( $working_dir->get_error_message() );
176
+                        }
177
+
178
+                        $result = $upgrader->install_package( array(
179
+                            'source'                      => $working_dir,
180
+                            'destination'                 => WP_PLUGIN_DIR,
181
+                            'clear_destination'           => false,
182
+                            'abort_if_destination_exists' => false,
183
+                            'clear_working'               => true,
184
+                            'hook_extra'                  => array(
185
+                                'type'   => 'plugin',
186
+                                'action' => 'install',
187
+                            ),
188
+                        ) );
189
+
190
+                        if ( is_wp_error( $result ) ) {
191
+                            throw new Exception( $result->get_error_message() );
192
+                        }
193
+
194
+                        $activate = true;
195
+
196
+                    } catch ( Exception $e ) {
197
+                        $success = false;
198
+                    }
199
+
200
+                    // Discard feedback
201
+                    ob_end_clean();
202
+                }
203
+
204
+                wp_clean_plugins_cache();
205
+
206
+                // Activate this thing
207
+                if ( $activate ) {
208
+                    try {
209
+                        $result = activate_plugin( $plugin );
210
+
211
+                        if ( is_wp_error( $result ) ) {
212
+                            $success = false;
213
+                        } else {
214
+                            $success = true;
215
+                        }
216
+                    } catch ( Exception $e ) {
217
+                        $success = false;
218
+                    }
219
+                }
220
+            }
221
+
222
+            if ( $success && function_exists( 'ayecode_connect_args' ) ) {
223
+                ayecode_connect();// init
224
+                $args        = ayecode_connect_args();
225
+                $client      = new AyeCode_Connect( $args );
226
+                $redirect_to = ! empty( $_POST['redirect_to'] ) ? esc_url_raw( $_POST['redirect_to'] ) : '';
227
+                $redirect    = $client->build_connect_url( $redirect_to );
228
+                wp_send_json_success( array( 'connect_url' => $redirect ) );
229
+            } else {
230
+                wp_send_json_error( $this->strings['error_localhost'] );
231
+            }
232
+            wp_die();
233
+        }
234
+
235
+        /**
236
+         * Check if maybe localhost.
237
+         *
238
+         * @return bool
239
+         */
240
+        public function is_localhost() {
241
+            $localhost = false;
242
+
243
+            $host              = isset( $_SERVER['HTTP_HOST'] ) ? $_SERVER['HTTP_HOST'] : '';
244
+            $localhost_domains = array(
245
+                'localhost',
246
+                'localhost.localdomain',
247
+                '127.0.0.1',
248
+                '::1'
249
+            );
250
+
251
+            if ( in_array( $host, $localhost_domains ) ) {
252
+                $localhost = true;
253
+            }
254
+
255
+            return $localhost;
256
+        }
257
+
258
+        /**
259
+         * Show notice to connect site.
260
+         */
261
+        public function ayecode_connect_install_notice() {
262
+            if ( $this->maybe_show() ) {
263
+                $connect_title_string     = $this->strings['connect_title'];
264
+                $connect_external_string  = $this->strings['connect_external'];
265
+                $connect_string           = $this->strings['connect'];
266
+                $connect_button_string    = $this->strings['connect_button'];
267
+                $connecting_button_string = $this->strings['connecting_button'];
268
+                ?>
269 269
 				<div class="notice notice-info acch-notice">
270 270
 					<span class="acch-float-left">
271 271
 						<svg width="61px" height="61px" viewBox="0 0 61 61" version="1.1"
@@ -304,8 +304,8 @@  discard block
 block discarded – undo
304 304
 						<h3 class="acch-title"><?php echo esc_attr( $connect_title_string ); ?></h3>
305 305
 					<p>
306 306
 						<?php
307
-						echo $connect_string;
308
-						?>
307
+                        echo $connect_string;
308
+                        ?>
309 309
 					</p>
310 310
 					</span>
311 311
 
@@ -318,9 +318,9 @@  discard block
 block discarded – undo
318 318
 				</div>
319 319
 
320 320
 				<?php
321
-				// only include the popup HTML if needed.
322
-				if ( ! empty( $_REQUEST['external-connect-request'] ) ) {
323
-					?>
321
+                // only include the popup HTML if needed.
322
+                if ( ! empty( $_REQUEST['external-connect-request'] ) ) {
323
+                    ?>
324 324
 					<div id="ayecode-connect-helper-external-confirm" style="display:none;">
325 325
 						<div class="noticex notice-info acch-notice" style="border: none;">
326 326
 					<span class="acch-float-left">
@@ -369,23 +369,23 @@  discard block
 block discarded – undo
369 369
 						</div>
370 370
 					</div>
371 371
 					<?php
372
-				}
373
-
374
-				// add required scripts
375
-				$this->script();
376
-			}
377
-		}
378
-
379
-		/**
380
-		 * Get the JS Script.
381
-		 */
382
-		public function script() {
383
-
384
-			// add thickbox if external request is requested
385
-			if ( ! empty( $_REQUEST['external-connect-request'] ) ) {
386
-				add_thickbox();
387
-			}
388
-			?>
372
+                }
373
+
374
+                // add required scripts
375
+                $this->script();
376
+            }
377
+        }
378
+
379
+        /**
380
+         * Get the JS Script.
381
+         */
382
+        public function script() {
383
+
384
+            // add thickbox if external request is requested
385
+            if ( ! empty( $_REQUEST['external-connect-request'] ) ) {
386
+                add_thickbox();
387
+            }
388
+            ?>
389 389
 			<style>
390 390
 				.acch-title {
391 391
 					margin: 0;
@@ -454,43 +454,43 @@  discard block
 block discarded – undo
454 454
 
455 455
 
456 456
 				<?php
457
-				// add thickbox if external request is requested
458
-				if(! empty( $_REQUEST['external-connect-request'] )) {
459
-				?>
457
+                // add thickbox if external request is requested
458
+                if(! empty( $_REQUEST['external-connect-request'] )) {
459
+                ?>
460 460
 				jQuery(function () {
461 461
 					setTimeout(function () {
462 462
 						tb_show("AyeCode Connect", "?TB_inline?width=300&height=80&inlineId=ayecode-connect-helper-external-confirm");
463 463
 					}, 200);
464 464
 				});
465 465
 				<?php
466
-				}
467
-				?>
466
+                }
467
+                ?>
468 468
 
469 469
 			</script>
470 470
 			<?php
471
-		}
472
-
473
-		/**
474
-		 * Decide what pages to show on.
475
-		 *
476
-		 * @return bool
477
-		 */
478
-		public function maybe_show() {
479
-			$show = false;
480
-
481
-			// check if on a page set to show
482
-			if ( isset( $_REQUEST['page'] ) && in_array( $_REQUEST['page'], $this->pages ) ) {
483
-
484
-				// check if not active and connected
485
-				if ( ! defined( 'AYECODE_CONNECT_VERSION' ) || ! get_option( 'ayecode_connect_blog_token' ) ) {
486
-					$show = true;
487
-				}
471
+        }
472
+
473
+        /**
474
+         * Decide what pages to show on.
475
+         *
476
+         * @return bool
477
+         */
478
+        public function maybe_show() {
479
+            $show = false;
480
+
481
+            // check if on a page set to show
482
+            if ( isset( $_REQUEST['page'] ) && in_array( $_REQUEST['page'], $this->pages ) ) {
483
+
484
+                // check if not active and connected
485
+                if ( ! defined( 'AYECODE_CONNECT_VERSION' ) || ! get_option( 'ayecode_connect_blog_token' ) ) {
486
+                    $show = true;
487
+                }
488 488
 
489
-			}
489
+            }
490 490
 
491
-			return $show;
492
-		}
491
+            return $show;
492
+        }
493 493
 
494
-	}
494
+    }
495 495
 
496 496
 }
Please login to merge, or discard this patch.
Spacing   +78 added lines, -78 removed lines patch added patch discarded remove patch
@@ -1,10 +1,10 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 
3
-if ( ! defined( 'ABSPATH' ) ) {
3
+if (!defined('ABSPATH')) {
4 4
 	exit;
5 5
 }
6 6
 
7
-if ( ! class_exists( "AyeCode_Connect_Helper" ) ) {
7
+if (!class_exists("AyeCode_Connect_Helper")) {
8 8
 	/**
9 9
 	 * Allow the quick setup and connection of our AyeCode Connect plugin.
10 10
 	 *
@@ -29,41 +29,41 @@  discard block
 block discarded – undo
29 29
 		 * @param array $strings
30 30
 		 * @param array $pages
31 31
 		 */
32
-		public function __construct( $strings = array(), $pages = array() ) {
32
+		public function __construct($strings = array(), $pages = array()) {
33 33
 
34 34
 			// Only fire if not localhost and the current user has the right permissions.
35
-			if ( ! $this->is_localhost() && current_user_can( 'manage_options' ) ) {
35
+			if (!$this->is_localhost() && current_user_can('manage_options')) {
36 36
 
37 37
 
38 38
 				// set default strings
39 39
 				$default_strings = array(
40
-					'connect_title'     => __( "Thanks for choosing an AyeCode Product!" ),
41
-					'connect_external'  => __( "Please confirm you wish to connect your site?" ),
42
-					'connect'           => sprintf( __( "<strong>Have a license?</strong> Forget about entering license keys or downloading zip files, connect your site for instant access. %slearn more%s" ), "<a href='https://ayecode.io/introducing-ayecode-connect/' target='_blank'>", "</a>" ),
43
-					'connect_button'    => __( "Connect Site" ),
44
-					'connecting_button' => __( "Connecting..." ),
45
-					'error_localhost'   => __( "This service will only work with a live domain, not a localhost." ),
46
-					'error'             => __( "Something went wrong, please refresh and try again." ),
40
+					'connect_title'     => __("Thanks for choosing an AyeCode Product!"),
41
+					'connect_external'  => __("Please confirm you wish to connect your site?"),
42
+					'connect'           => sprintf(__("<strong>Have a license?</strong> Forget about entering license keys or downloading zip files, connect your site for instant access. %slearn more%s"), "<a href='https://ayecode.io/introducing-ayecode-connect/' target='_blank'>", "</a>"),
43
+					'connect_button'    => __("Connect Site"),
44
+					'connecting_button' => __("Connecting..."),
45
+					'error_localhost'   => __("This service will only work with a live domain, not a localhost."),
46
+					'error'             => __("Something went wrong, please refresh and try again."),
47 47
 				);
48
-				$this->strings   = array_merge( $default_strings, $strings );
48
+				$this->strings = array_merge($default_strings, $strings);
49 49
 
50 50
 
51 51
 				// set default pages
52 52
 				$default_pages = array();
53
-				$this->pages   = array_merge( $default_pages, $pages );
53
+				$this->pages   = array_merge($default_pages, $pages);
54 54
 
55 55
 				// maybe show connect site notice
56
-				add_action( 'admin_notices', array( $this, 'ayecode_connect_install_notice' ) );
56
+				add_action('admin_notices', array($this, 'ayecode_connect_install_notice'));
57 57
 
58 58
 				// add ajax action if not already added
59
-				if ( ! has_action( 'wp_ajax_ayecode_connect_helper' ) ) {
60
-					add_action( 'wp_ajax_ayecode_connect_helper', array( $this, 'ayecode_connect_install' ) );
59
+				if (!has_action('wp_ajax_ayecode_connect_helper')) {
60
+					add_action('wp_ajax_ayecode_connect_helper', array($this, 'ayecode_connect_install'));
61 61
 				}
62 62
 			}
63 63
 
64 64
 			// add ajax action if not already added
65
-			if ( ! has_action( 'wp_ajax_nopriv_ayecode_connect_helper_installed' ) ) {
66
-				add_action( 'wp_ajax_nopriv_ayecode_connect_helper_installed', array( $this, 'ayecode_connect_helper_installed' ) );
65
+			if (!has_action('wp_ajax_nopriv_ayecode_connect_helper_installed')) {
66
+				add_action('wp_ajax_nopriv_ayecode_connect_helper_installed', array($this, 'ayecode_connect_helper_installed'));
67 67
 			}
68 68
 
69 69
 		}
@@ -71,13 +71,13 @@  discard block
 block discarded – undo
71 71
 		/**
72 72
 		 * Give a way to check we can connect via a external redirect.
73 73
 		 */
74
-		public function ayecode_connect_helper_installed(){
74
+		public function ayecode_connect_helper_installed() {
75 75
 			$active = array(
76
-				'gd'    =>  defined('GEODIRECTORY_VERSION') && version_compare(GEODIRECTORY_VERSION,'2.0.0.79','>') ? 1 : 0,
77
-				'uwp'    =>  defined('USERSWP_VERSION') && version_compare(USERSWP_VERSION,'1.2.1.5','>') ? 1 : 0,
78
-				'wpi'    =>  defined('WPINV_VERSION') && version_compare(WPINV_VERSION,'1.0.14','>') ? 1 : 0,
76
+				'gd'    =>  defined('GEODIRECTORY_VERSION') && version_compare(GEODIRECTORY_VERSION, '2.0.0.79', '>') ? 1 : 0,
77
+				'uwp'    =>  defined('USERSWP_VERSION') && version_compare(USERSWP_VERSION, '1.2.1.5', '>') ? 1 : 0,
78
+				'wpi'    =>  defined('WPINV_VERSION') && version_compare(WPINV_VERSION, '1.0.14', '>') ? 1 : 0,
79 79
 			);
80
-			wp_send_json_success( $active );
80
+			wp_send_json_success($active);
81 81
 			wp_die();
82 82
 		}
83 83
 
@@ -88,9 +88,9 @@  discard block
 block discarded – undo
88 88
 		 *
89 89
 		 * @return string
90 90
 		 */
91
-		private function format_plugin_slug( $key ) {
92
-			$slug = explode( '/', $key );
93
-			$slug = explode( '.', end( $slug ) );
91
+		private function format_plugin_slug($key) {
92
+			$slug = explode('/', $key);
93
+			$slug = explode('.', end($slug));
94 94
 
95 95
 			return $slug[0];
96 96
 		}
@@ -101,45 +101,45 @@  discard block
 block discarded – undo
101 101
 		public function ayecode_connect_install() {
102 102
 
103 103
 			// bail if localhost
104
-			if ( $this->is_localhost() ) {
105
-				wp_send_json_error( $this->strings['error_localhost'] );
104
+			if ($this->is_localhost()) {
105
+				wp_send_json_error($this->strings['error_localhost']);
106 106
 			}
107 107
 
108 108
 			// Explicitly clear the event.
109
-			wp_clear_scheduled_hook( 'geodir_plugin_background_installer', func_get_args() );
109
+			wp_clear_scheduled_hook('geodir_plugin_background_installer', func_get_args());
110 110
 
111 111
 			$success     = true;
112 112
 			$plugin_slug = "ayecode-connect";
113
-			if ( ! empty( $plugin_slug ) ) {
114
-				require_once( ABSPATH . 'wp-admin/includes/file.php' );
115
-				require_once( ABSPATH . 'wp-admin/includes/plugin-install.php' );
116
-				require_once( ABSPATH . 'wp-admin/includes/class-wp-upgrader.php' );
117
-				require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
113
+			if (!empty($plugin_slug)) {
114
+				require_once(ABSPATH . 'wp-admin/includes/file.php');
115
+				require_once(ABSPATH . 'wp-admin/includes/plugin-install.php');
116
+				require_once(ABSPATH . 'wp-admin/includes/class-wp-upgrader.php');
117
+				require_once(ABSPATH . 'wp-admin/includes/plugin.php');
118 118
 
119 119
 				WP_Filesystem();
120 120
 
121 121
 				$skin              = new Automatic_Upgrader_Skin;
122
-				$upgrader          = new WP_Upgrader( $skin );
123
-				$installed_plugins = array_map( array( $this, 'format_plugin_slug' ), array_keys( get_plugins() ) );
122
+				$upgrader          = new WP_Upgrader($skin);
123
+				$installed_plugins = array_map(array($this, 'format_plugin_slug'), array_keys(get_plugins()));
124 124
 				$plugin_slug       = $plugin_slug;
125 125
 				$plugin            = $plugin_slug . '/' . $plugin_slug . '.php';
126 126
 				$installed         = false;
127 127
 				$activate          = false;
128 128
 
129 129
 				// See if the plugin is installed already
130
-				if ( in_array( $plugin_slug, $installed_plugins ) ) {
130
+				if (in_array($plugin_slug, $installed_plugins)) {
131 131
 					$installed = true;
132
-					$activate  = ! is_plugin_active( $plugin );
132
+					$activate  = !is_plugin_active($plugin);
133 133
 				}
134 134
 
135 135
 				// Install this thing!
136
-				if ( ! $installed ) {
136
+				if (!$installed) {
137 137
 
138 138
 					// Suppress feedback
139 139
 					ob_start();
140 140
 
141 141
 					try {
142
-						$plugin_information = plugins_api( 'plugin_information', array(
142
+						$plugin_information = plugins_api('plugin_information', array(
143 143
 							'slug'   => $plugin_slug,
144 144
 							'fields' => array(
145 145
 								'short_description' => false,
@@ -156,26 +156,26 @@  discard block
 block discarded – undo
156 156
 								'author_profile'    => false,
157 157
 								'author'            => false,
158 158
 							),
159
-						) );
159
+						));
160 160
 
161
-						if ( is_wp_error( $plugin_information ) ) {
162
-							throw new Exception( $plugin_information->get_error_message() );
161
+						if (is_wp_error($plugin_information)) {
162
+							throw new Exception($plugin_information->get_error_message());
163 163
 						}
164 164
 
165 165
 						$package  = $plugin_information->download_link;
166
-						$download = $upgrader->download_package( $package );
166
+						$download = $upgrader->download_package($package);
167 167
 
168
-						if ( is_wp_error( $download ) ) {
169
-							throw new Exception( $download->get_error_message() );
168
+						if (is_wp_error($download)) {
169
+							throw new Exception($download->get_error_message());
170 170
 						}
171 171
 
172
-						$working_dir = $upgrader->unpack_package( $download, true );
172
+						$working_dir = $upgrader->unpack_package($download, true);
173 173
 
174
-						if ( is_wp_error( $working_dir ) ) {
175
-							throw new Exception( $working_dir->get_error_message() );
174
+						if (is_wp_error($working_dir)) {
175
+							throw new Exception($working_dir->get_error_message());
176 176
 						}
177 177
 
178
-						$result = $upgrader->install_package( array(
178
+						$result = $upgrader->install_package(array(
179 179
 							'source'                      => $working_dir,
180 180
 							'destination'                 => WP_PLUGIN_DIR,
181 181
 							'clear_destination'           => false,
@@ -185,15 +185,15 @@  discard block
 block discarded – undo
185 185
 								'type'   => 'plugin',
186 186
 								'action' => 'install',
187 187
 							),
188
-						) );
188
+						));
189 189
 
190
-						if ( is_wp_error( $result ) ) {
191
-							throw new Exception( $result->get_error_message() );
190
+						if (is_wp_error($result)) {
191
+							throw new Exception($result->get_error_message());
192 192
 						}
193 193
 
194 194
 						$activate = true;
195 195
 
196
-					} catch ( Exception $e ) {
196
+					} catch (Exception $e) {
197 197
 						$success = false;
198 198
 					}
199 199
 
@@ -204,30 +204,30 @@  discard block
 block discarded – undo
204 204
 				wp_clean_plugins_cache();
205 205
 
206 206
 				// Activate this thing
207
-				if ( $activate ) {
207
+				if ($activate) {
208 208
 					try {
209
-						$result = activate_plugin( $plugin );
209
+						$result = activate_plugin($plugin);
210 210
 
211
-						if ( is_wp_error( $result ) ) {
211
+						if (is_wp_error($result)) {
212 212
 							$success = false;
213 213
 						} else {
214 214
 							$success = true;
215 215
 						}
216
-					} catch ( Exception $e ) {
216
+					} catch (Exception $e) {
217 217
 						$success = false;
218 218
 					}
219 219
 				}
220 220
 			}
221 221
 
222
-			if ( $success && function_exists( 'ayecode_connect_args' ) ) {
223
-				ayecode_connect();// init
222
+			if ($success && function_exists('ayecode_connect_args')) {
223
+				ayecode_connect(); // init
224 224
 				$args        = ayecode_connect_args();
225
-				$client      = new AyeCode_Connect( $args );
226
-				$redirect_to = ! empty( $_POST['redirect_to'] ) ? esc_url_raw( $_POST['redirect_to'] ) : '';
227
-				$redirect    = $client->build_connect_url( $redirect_to );
228
-				wp_send_json_success( array( 'connect_url' => $redirect ) );
225
+				$client      = new AyeCode_Connect($args);
226
+				$redirect_to = !empty($_POST['redirect_to']) ? esc_url_raw($_POST['redirect_to']) : '';
227
+				$redirect    = $client->build_connect_url($redirect_to);
228
+				wp_send_json_success(array('connect_url' => $redirect));
229 229
 			} else {
230
-				wp_send_json_error( $this->strings['error_localhost'] );
230
+				wp_send_json_error($this->strings['error_localhost']);
231 231
 			}
232 232
 			wp_die();
233 233
 		}
@@ -240,7 +240,7 @@  discard block
 block discarded – undo
240 240
 		public function is_localhost() {
241 241
 			$localhost = false;
242 242
 
243
-			$host              = isset( $_SERVER['HTTP_HOST'] ) ? $_SERVER['HTTP_HOST'] : '';
243
+			$host              = isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : '';
244 244
 			$localhost_domains = array(
245 245
 				'localhost',
246 246
 				'localhost.localdomain',
@@ -248,7 +248,7 @@  discard block
 block discarded – undo
248 248
 				'::1'
249 249
 			);
250 250
 
251
-			if ( in_array( $host, $localhost_domains ) ) {
251
+			if (in_array($host, $localhost_domains)) {
252 252
 				$localhost = true;
253 253
 			}
254 254
 
@@ -259,7 +259,7 @@  discard block
 block discarded – undo
259 259
 		 * Show notice to connect site.
260 260
 		 */
261 261
 		public function ayecode_connect_install_notice() {
262
-			if ( $this->maybe_show() ) {
262
+			if ($this->maybe_show()) {
263 263
 				$connect_title_string     = $this->strings['connect_title'];
264 264
 				$connect_external_string  = $this->strings['connect_external'];
265 265
 				$connect_string           = $this->strings['connect'];
@@ -301,7 +301,7 @@  discard block
 block discarded – undo
301 301
 					</svg>
302 302
 					</span>
303 303
 					<span class="acch-float-left acch-text">
304
-						<h3 class="acch-title"><?php echo esc_attr( $connect_title_string ); ?></h3>
304
+						<h3 class="acch-title"><?php echo esc_attr($connect_title_string); ?></h3>
305 305
 					<p>
306 306
 						<?php
307 307
 						echo $connect_string;
@@ -312,14 +312,14 @@  discard block
 block discarded – undo
312 312
 					<span class="acch-float-left acch-button">
313 313
 						<button onclick="ayecode_connect_helper(this);" id="gd-connect-site"
314 314
 						        class="button button-primary"
315
-						        data-connecting="<?php echo esc_attr( $connecting_button_string ); ?>"><?php echo esc_attr( $connect_button_string ) ?></button>
315
+						        data-connecting="<?php echo esc_attr($connecting_button_string); ?>"><?php echo esc_attr($connect_button_string) ?></button>
316 316
 					</span>
317 317
 
318 318
 				</div>
319 319
 
320 320
 				<?php
321 321
 				// only include the popup HTML if needed.
322
-				if ( ! empty( $_REQUEST['external-connect-request'] ) ) {
322
+				if (!empty($_REQUEST['external-connect-request'])) {
323 323
 					?>
324 324
 					<div id="ayecode-connect-helper-external-confirm" style="display:none;">
325 325
 						<div class="noticex notice-info acch-notice" style="border: none;">
@@ -357,13 +357,13 @@  discard block
 block discarded – undo
357 357
 					</svg>
358 358
 					</span>
359 359
 					<span class="acch-float-left acch-text">
360
-						<h3 class="acch-title"><?php echo esc_attr( $connect_external_string ); ?></h3>
360
+						<h3 class="acch-title"><?php echo esc_attr($connect_external_string); ?></h3>
361 361
 					</span>
362 362
 
363 363
 					<span class="acch-float-left acch-button">
364 364
 						<button onclick="ayecode_connect_helper(this);" id="gd-connect-site"
365 365
 						        class="button button-primary"
366
-						        data-connecting="<?php echo esc_attr( $connecting_button_string ); ?>"><?php echo esc_attr( $connect_button_string ) ?></button>
366
+						        data-connecting="<?php echo esc_attr($connecting_button_string); ?>"><?php echo esc_attr($connect_button_string) ?></button>
367 367
 					</span>
368 368
 
369 369
 						</div>
@@ -382,7 +382,7 @@  discard block
 block discarded – undo
382 382
 		public function script() {
383 383
 
384 384
 			// add thickbox if external request is requested
385
-			if ( ! empty( $_REQUEST['external-connect-request'] ) ) {
385
+			if (!empty($_REQUEST['external-connect-request'])) {
386 386
 				add_thickbox();
387 387
 			}
388 388
 			?>
@@ -434,7 +434,7 @@  discard block
 block discarded – undo
434 434
 						url: ajaxurl,
435 435
 						data: {
436 436
 							action: 'ayecode_connect_helper',
437
-							security: '<?php echo wp_create_nonce( 'ayecode-connect-helper' );?>',
437
+							security: '<?php echo wp_create_nonce('ayecode-connect-helper'); ?>',
438 438
 							redirect_to: $current_url
439 439
 						},
440 440
 						beforeSend: function () {
@@ -455,7 +455,7 @@  discard block
 block discarded – undo
455 455
 
456 456
 				<?php
457 457
 				// add thickbox if external request is requested
458
-				if(! empty( $_REQUEST['external-connect-request'] )) {
458
+				if (!empty($_REQUEST['external-connect-request'])) {
459 459
 				?>
460 460
 				jQuery(function () {
461 461
 					setTimeout(function () {
@@ -479,10 +479,10 @@  discard block
 block discarded – undo
479 479
 			$show = false;
480 480
 
481 481
 			// check if on a page set to show
482
-			if ( isset( $_REQUEST['page'] ) && in_array( $_REQUEST['page'], $this->pages ) ) {
482
+			if (isset($_REQUEST['page']) && in_array($_REQUEST['page'], $this->pages)) {
483 483
 
484 484
 				// check if not active and connected
485
-				if ( ! defined( 'AYECODE_CONNECT_VERSION' ) || ! get_option( 'ayecode_connect_blog_token' ) ) {
485
+				if (!defined('AYECODE_CONNECT_VERSION') || !get_option('ayecode_connect_blog_token')) {
486 486
 					$show = true;
487 487
 				}
488 488
 
Please login to merge, or discard this patch.
vendor/composer/autoload_static.php 1 patch
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -6,33 +6,33 @@
 block discarded – undo
6 6
 
7 7
 class ComposerStaticInit8b6d4385c391849a80038f0b0e87c8b5
8 8
 {
9
-    public static $files = array (
9
+    public static $files = array(
10 10
         'e8d544c98e79f913e13eae1306ab635e' => __DIR__ . '/..' . '/ayecode/wp-ayecode-ui/ayecode-ui-loader.php',
11 11
         '24583d3588ebda5228dd453cfaa070da' => __DIR__ . '/..' . '/ayecode/wp-font-awesome-settings/wp-font-awesome-settings.php',
12 12
     );
13 13
 
14
-    public static $prefixLengthsPsr4 = array (
14
+    public static $prefixLengthsPsr4 = array(
15 15
         'C' => 
16
-        array (
16
+        array(
17 17
             'Composer\\Installers\\' => 20,
18 18
         ),
19 19
     );
20 20
 
21
-    public static $prefixDirsPsr4 = array (
21
+    public static $prefixDirsPsr4 = array(
22 22
         'Composer\\Installers\\' => 
23
-        array (
23
+        array(
24 24
             0 => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers',
25 25
         ),
26 26
     );
27 27
 
28
-    public static $classMap = array (
28
+    public static $classMap = array(
29 29
         'AyeCode_Connect_Helper' => __DIR__ . '/..' . '/ayecode/ayecode-connect-helper/ayecode-connect-helper.php',
30 30
         'WP_Super_Duper' => __DIR__ . '/..' . '/ayecode/wp-super-duper/wp-super-duper.php',
31 31
     );
32 32
 
33 33
     public static function getInitializer(ClassLoader $loader)
34 34
     {
35
-        return \Closure::bind(function () use ($loader) {
35
+        return \Closure::bind(function() use ($loader) {
36 36
             $loader->prefixLengthsPsr4 = ComposerStaticInit8b6d4385c391849a80038f0b0e87c8b5::$prefixLengthsPsr4;
37 37
             $loader->prefixDirsPsr4 = ComposerStaticInit8b6d4385c391849a80038f0b0e87c8b5::$prefixDirsPsr4;
38 38
             $loader->classMap = ComposerStaticInit8b6d4385c391849a80038f0b0e87c8b5::$classMap;
Please login to merge, or discard this patch.
includes/data/sample-payment-form-items.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -8,7 +8,7 @@
 block discarded – undo
8 8
  * @version 1.0.19
9 9
  */
10 10
 
11
-defined( 'ABSPATH' ) || exit;
11
+defined('ABSPATH') || exit;
12 12
 
13 13
 return array(
14 14
 
Please login to merge, or discard this patch.
includes/admin/class-wpinv-gateways-report-table.php 3 patches
Braces   +3 added lines, -1 removed lines patch added patch discarded remove patch
@@ -5,7 +5,9 @@
 block discarded – undo
5 5
  */
6 6
 
7 7
 // Exit if accessed directly
8
-if ( ! defined( 'ABSPATH' ) ) exit;
8
+if ( ! defined( 'ABSPATH' ) ) {
9
+    exit;
10
+}
9 11
 
10 12
 // Load WP_List_Table if not loaded
11 13
 if ( ! class_exists( 'WP_List_Table' ) ) {
Please login to merge, or discard this patch.
Indentation   +166 added lines, -166 removed lines patch added patch discarded remove patch
@@ -9,7 +9,7 @@  discard block
 block discarded – undo
9 9
 
10 10
 // Load WP_List_Table if not loaded
11 11
 if ( ! class_exists( 'WP_List_Table' ) ) {
12
-	require_once ABSPATH . 'wp-admin/includes/class-wp-list-table.php';
12
+    require_once ABSPATH . 'wp-admin/includes/class-wp-list-table.php';
13 13
 }
14 14
 
15 15
 /**
@@ -21,148 +21,148 @@  discard block
 block discarded – undo
21 21
  */
22 22
 class WPInv_Gateways_Report_Table extends WP_List_Table {
23 23
 
24
-	/**
25
-	 * @var int Number of items per page
26
-	 * @since 1.0.19
27
-	 */
28
-	public $per_page = 300;
29
-
30
-
31
-	/**
32
-	 * Get things started
33
-	 *
34
-	 * @since 1.0.19
35
-	 * @see WP_List_Table::__construct()
36
-	 */
37
-	public function __construct() {
38
-
39
-		// Set parent defaults
40
-		parent::__construct( array(
41
-			'singular' => 'id',
42
-			'plural'   => 'ids',
43
-			'ajax'     => false,
44
-		) );
45
-
46
-	}
47
-
48
-	/**
49
-	 * Gets the name of the primary column.
50
-	 *
51
-	 * @since 1.0.19
52
-	 * @access protected
53
-	 *
54
-	 * @return string Name of the primary column.
55
-	 */
56
-	protected function get_primary_column_name() {
57
-		return 'gateway';
58
-	}
59
-
60
-	/**
61
-	 * This function renders most of the columns in the list table.
62
-	 *
63
-	 * @since 1.0.19
64
-	 *
65
-	 * @param array $item Contains all the data of the gateways
66
-	 * @param string $column_name The name of the column
67
-	 *
68
-	 * @return string Column Name
69
-	 */
70
-	public function column_default( $item, $column_name ) {
71
-		return esc_html( $item[ $column_name ] );
72
-	}
73
-
74
-	/**
75
-	 * Retrieve the table columns
76
-	 *
77
-	 * @since 1.0.19
78
-	 * @return array $columns Array of all the list table columns
79
-	 */
80
-	public function get_columns() {
81
-
82
-		return array(
83
-			'gateway'  => __( 'Gateway', 'invoicing' ),
84
-			'sales'    => __( 'Total Sales', 'invoicing' ),
85
-			'total'    => __( 'Total Earnings', 'invoicing' ),
86
-			'discount' => __( 'Total Discounts', 'invoicing' ),
87
-			'tax'      => __( 'Total Taxes', 'invoicing' ),
88
-			'fees'     => __( 'Total Fees', 'invoicing' ),
89
-		);
90
-
91
-	}
92
-
93
-	/**
94
-	 * Retrieve the current page number
95
-	 *
96
-	 * @since 1.0.19
97
-	 * @return int Current page number
98
-	 */
99
-	public function get_paged() {
100
-		return isset( $_GET['paged'] ) ? absint( $_GET['paged'] ) : 1;
101
-	}
102
-
103
-	/**
104
-	 * Outputs the reporting views
105
-	 *
106
-	 * @since 1.0.19
107
-	 * @return void
108
-	 */
109
-	public function bulk_actions( $which = '' ) {
110
-		return array();
111
-	}
112
-
113
-	/**
114
-	 * Build all the reports data
115
-	 *
116
-	 * @since 1.0.19
117
-	 * @return array $reports_data All the data for gateway reports
118
-	 */
119
-	public function reports_data() {
120
-
121
-		$reports_data = $this->revenue_reports_data();
122
-		$gateways     = wpinv_get_payment_gateways();
123
-
124
-		foreach ( $gateways as $gateway_id => $gateway ) {
125
-
126
-			if ( ! empty( $reports_data[ $gateway_id ] ) ) {
127
-				continue;
128
-			}
129
-
130
-			$reports_data[] = array(
131
-				'gateway'  => $gateway_id,
132
-				'sales'    => 0,
133
-				'total'    => 0,
134
-				'discount' => 0,
135
-				'tax'      => 0,
136
-				'fees'     => 0,
137
-			);
138
-		}
139
-
140
-		$prepared = array();
141
-		foreach ( $reports_data as $report_data ) {
142
-			$prepared[] = array(
143
-				'gateway'  => wpinv_get_gateway_admin_label( $report_data['gateway'] ),
144
-				'sales'    => $report_data['sales'],
145
-				'total'    => wpinv_price( wpinv_format_amount( $report_data['total'] ) ),
146
-				'discount' => wpinv_price( wpinv_format_amount( $report_data['discount'] ) ),
147
-				'tax'      => wpinv_price( wpinv_format_amount( $report_data['tax'] ) ),
148
-				'fees'     => wpinv_price( wpinv_format_amount( $report_data['fees'] ) ),
149
-			);
150
-		}
151
-
152
-		return $prepared;
153
-	}
154
-
155
-	/**
156
-	 * Retrieves report data.
157
-	 *
158
-	 * @since 1.0.19
159
-	 */
160
-	public function revenue_reports_data() {
161
-		global $wpdb;
162
-
163
-		$table =  $wpdb->prefix . 'getpaid_invoices';
164
-		$data  = $wpdb->get_results(
165
-			"SELECT
24
+    /**
25
+     * @var int Number of items per page
26
+     * @since 1.0.19
27
+     */
28
+    public $per_page = 300;
29
+
30
+
31
+    /**
32
+     * Get things started
33
+     *
34
+     * @since 1.0.19
35
+     * @see WP_List_Table::__construct()
36
+     */
37
+    public function __construct() {
38
+
39
+        // Set parent defaults
40
+        parent::__construct( array(
41
+            'singular' => 'id',
42
+            'plural'   => 'ids',
43
+            'ajax'     => false,
44
+        ) );
45
+
46
+    }
47
+
48
+    /**
49
+     * Gets the name of the primary column.
50
+     *
51
+     * @since 1.0.19
52
+     * @access protected
53
+     *
54
+     * @return string Name of the primary column.
55
+     */
56
+    protected function get_primary_column_name() {
57
+        return 'gateway';
58
+    }
59
+
60
+    /**
61
+     * This function renders most of the columns in the list table.
62
+     *
63
+     * @since 1.0.19
64
+     *
65
+     * @param array $item Contains all the data of the gateways
66
+     * @param string $column_name The name of the column
67
+     *
68
+     * @return string Column Name
69
+     */
70
+    public function column_default( $item, $column_name ) {
71
+        return esc_html( $item[ $column_name ] );
72
+    }
73
+
74
+    /**
75
+     * Retrieve the table columns
76
+     *
77
+     * @since 1.0.19
78
+     * @return array $columns Array of all the list table columns
79
+     */
80
+    public function get_columns() {
81
+
82
+        return array(
83
+            'gateway'  => __( 'Gateway', 'invoicing' ),
84
+            'sales'    => __( 'Total Sales', 'invoicing' ),
85
+            'total'    => __( 'Total Earnings', 'invoicing' ),
86
+            'discount' => __( 'Total Discounts', 'invoicing' ),
87
+            'tax'      => __( 'Total Taxes', 'invoicing' ),
88
+            'fees'     => __( 'Total Fees', 'invoicing' ),
89
+        );
90
+
91
+    }
92
+
93
+    /**
94
+     * Retrieve the current page number
95
+     *
96
+     * @since 1.0.19
97
+     * @return int Current page number
98
+     */
99
+    public function get_paged() {
100
+        return isset( $_GET['paged'] ) ? absint( $_GET['paged'] ) : 1;
101
+    }
102
+
103
+    /**
104
+     * Outputs the reporting views
105
+     *
106
+     * @since 1.0.19
107
+     * @return void
108
+     */
109
+    public function bulk_actions( $which = '' ) {
110
+        return array();
111
+    }
112
+
113
+    /**
114
+     * Build all the reports data
115
+     *
116
+     * @since 1.0.19
117
+     * @return array $reports_data All the data for gateway reports
118
+     */
119
+    public function reports_data() {
120
+
121
+        $reports_data = $this->revenue_reports_data();
122
+        $gateways     = wpinv_get_payment_gateways();
123
+
124
+        foreach ( $gateways as $gateway_id => $gateway ) {
125
+
126
+            if ( ! empty( $reports_data[ $gateway_id ] ) ) {
127
+                continue;
128
+            }
129
+
130
+            $reports_data[] = array(
131
+                'gateway'  => $gateway_id,
132
+                'sales'    => 0,
133
+                'total'    => 0,
134
+                'discount' => 0,
135
+                'tax'      => 0,
136
+                'fees'     => 0,
137
+            );
138
+        }
139
+
140
+        $prepared = array();
141
+        foreach ( $reports_data as $report_data ) {
142
+            $prepared[] = array(
143
+                'gateway'  => wpinv_get_gateway_admin_label( $report_data['gateway'] ),
144
+                'sales'    => $report_data['sales'],
145
+                'total'    => wpinv_price( wpinv_format_amount( $report_data['total'] ) ),
146
+                'discount' => wpinv_price( wpinv_format_amount( $report_data['discount'] ) ),
147
+                'tax'      => wpinv_price( wpinv_format_amount( $report_data['tax'] ) ),
148
+                'fees'     => wpinv_price( wpinv_format_amount( $report_data['fees'] ) ),
149
+            );
150
+        }
151
+
152
+        return $prepared;
153
+    }
154
+
155
+    /**
156
+     * Retrieves report data.
157
+     *
158
+     * @since 1.0.19
159
+     */
160
+    public function revenue_reports_data() {
161
+        global $wpdb;
162
+
163
+        $table =  $wpdb->prefix . 'getpaid_invoices';
164
+        $data  = $wpdb->get_results(
165
+            "SELECT
166 166
 				COUNT(posts.ID) as sales,
167 167
 				meta.gateway as gateway,
168 168
 				SUM(meta.total) as total,
@@ -177,27 +177,27 @@  discard block
 block discarded – undo
177 177
                 AND ( posts.post_status = 'publish' OR posts.post_status = 'renewal' )
178 178
 			GROUP BY meta.gateway", ARRAY_A);
179 179
 		
180
-		$return = array();
181
-
182
-		foreach ( $data as $gateway ) {
183
-			$return[ $gateway ['gateway']] = $gateway;
184
-		}
185
-
186
-		return $return;
187
-
188
-	}
189
-
190
-	/**
191
-	 * Setup the final data for the table
192
-	 *
193
-	 * @since 1.0.19
194
-	 * @return void
195
-	 */
196
-	public function prepare_items() {
197
-		$columns               = $this->get_columns();
198
-		$hidden                = array(); // No hidden columns
199
-		$sortable              = $this->get_sortable_columns();
200
-		$this->_column_headers = array( $columns, $hidden, $sortable );
201
-		$this->items           = $this->reports_data();
202
-	}
180
+        $return = array();
181
+
182
+        foreach ( $data as $gateway ) {
183
+            $return[ $gateway ['gateway']] = $gateway;
184
+        }
185
+
186
+        return $return;
187
+
188
+    }
189
+
190
+    /**
191
+     * Setup the final data for the table
192
+     *
193
+     * @since 1.0.19
194
+     * @return void
195
+     */
196
+    public function prepare_items() {
197
+        $columns               = $this->get_columns();
198
+        $hidden                = array(); // No hidden columns
199
+        $sortable              = $this->get_sortable_columns();
200
+        $this->_column_headers = array( $columns, $hidden, $sortable );
201
+        $this->items           = $this->reports_data();
202
+    }
203 203
 }
Please login to merge, or discard this patch.
Spacing   +26 added lines, -26 removed lines patch added patch discarded remove patch
@@ -5,10 +5,10 @@  discard block
 block discarded – undo
5 5
  */
6 6
 
7 7
 // Exit if accessed directly
8
-if ( ! defined( 'ABSPATH' ) ) exit;
8
+if (!defined('ABSPATH')) exit;
9 9
 
10 10
 // Load WP_List_Table if not loaded
11
-if ( ! class_exists( 'WP_List_Table' ) ) {
11
+if (!class_exists('WP_List_Table')) {
12 12
 	require_once ABSPATH . 'wp-admin/includes/class-wp-list-table.php';
13 13
 }
14 14
 
@@ -37,11 +37,11 @@  discard block
 block discarded – undo
37 37
 	public function __construct() {
38 38
 
39 39
 		// Set parent defaults
40
-		parent::__construct( array(
40
+		parent::__construct(array(
41 41
 			'singular' => 'id',
42 42
 			'plural'   => 'ids',
43 43
 			'ajax'     => false,
44
-		) );
44
+		));
45 45
 
46 46
 	}
47 47
 
@@ -67,8 +67,8 @@  discard block
 block discarded – undo
67 67
 	 *
68 68
 	 * @return string Column Name
69 69
 	 */
70
-	public function column_default( $item, $column_name ) {
71
-		return esc_html( $item[ $column_name ] );
70
+	public function column_default($item, $column_name) {
71
+		return esc_html($item[$column_name]);
72 72
 	}
73 73
 
74 74
 	/**
@@ -80,12 +80,12 @@  discard block
 block discarded – undo
80 80
 	public function get_columns() {
81 81
 
82 82
 		return array(
83
-			'gateway'  => __( 'Gateway', 'invoicing' ),
84
-			'sales'    => __( 'Total Sales', 'invoicing' ),
85
-			'total'    => __( 'Total Earnings', 'invoicing' ),
86
-			'discount' => __( 'Total Discounts', 'invoicing' ),
87
-			'tax'      => __( 'Total Taxes', 'invoicing' ),
88
-			'fees'     => __( 'Total Fees', 'invoicing' ),
83
+			'gateway'  => __('Gateway', 'invoicing'),
84
+			'sales'    => __('Total Sales', 'invoicing'),
85
+			'total'    => __('Total Earnings', 'invoicing'),
86
+			'discount' => __('Total Discounts', 'invoicing'),
87
+			'tax'      => __('Total Taxes', 'invoicing'),
88
+			'fees'     => __('Total Fees', 'invoicing'),
89 89
 		);
90 90
 
91 91
 	}
@@ -97,7 +97,7 @@  discard block
 block discarded – undo
97 97
 	 * @return int Current page number
98 98
 	 */
99 99
 	public function get_paged() {
100
-		return isset( $_GET['paged'] ) ? absint( $_GET['paged'] ) : 1;
100
+		return isset($_GET['paged']) ? absint($_GET['paged']) : 1;
101 101
 	}
102 102
 
103 103
 	/**
@@ -106,7 +106,7 @@  discard block
 block discarded – undo
106 106
 	 * @since 1.0.19
107 107
 	 * @return void
108 108
 	 */
109
-	public function bulk_actions( $which = '' ) {
109
+	public function bulk_actions($which = '') {
110 110
 		return array();
111 111
 	}
112 112
 
@@ -121,9 +121,9 @@  discard block
 block discarded – undo
121 121
 		$reports_data = $this->revenue_reports_data();
122 122
 		$gateways     = wpinv_get_payment_gateways();
123 123
 
124
-		foreach ( $gateways as $gateway_id => $gateway ) {
124
+		foreach ($gateways as $gateway_id => $gateway) {
125 125
 
126
-			if ( ! empty( $reports_data[ $gateway_id ] ) ) {
126
+			if (!empty($reports_data[$gateway_id])) {
127 127
 				continue;
128 128
 			}
129 129
 
@@ -138,14 +138,14 @@  discard block
 block discarded – undo
138 138
 		}
139 139
 
140 140
 		$prepared = array();
141
-		foreach ( $reports_data as $report_data ) {
141
+		foreach ($reports_data as $report_data) {
142 142
 			$prepared[] = array(
143
-				'gateway'  => wpinv_get_gateway_admin_label( $report_data['gateway'] ),
143
+				'gateway'  => wpinv_get_gateway_admin_label($report_data['gateway']),
144 144
 				'sales'    => $report_data['sales'],
145
-				'total'    => wpinv_price( wpinv_format_amount( $report_data['total'] ) ),
146
-				'discount' => wpinv_price( wpinv_format_amount( $report_data['discount'] ) ),
147
-				'tax'      => wpinv_price( wpinv_format_amount( $report_data['tax'] ) ),
148
-				'fees'     => wpinv_price( wpinv_format_amount( $report_data['fees'] ) ),
145
+				'total'    => wpinv_price(wpinv_format_amount($report_data['total'])),
146
+				'discount' => wpinv_price(wpinv_format_amount($report_data['discount'])),
147
+				'tax'      => wpinv_price(wpinv_format_amount($report_data['tax'])),
148
+				'fees'     => wpinv_price(wpinv_format_amount($report_data['fees'])),
149 149
 			);
150 150
 		}
151 151
 
@@ -160,7 +160,7 @@  discard block
 block discarded – undo
160 160
 	public function revenue_reports_data() {
161 161
 		global $wpdb;
162 162
 
163
-		$table =  $wpdb->prefix . 'getpaid_invoices';
163
+		$table = $wpdb->prefix . 'getpaid_invoices';
164 164
 		$data  = $wpdb->get_results(
165 165
 			"SELECT
166 166
 				COUNT(posts.ID) as sales,
@@ -179,8 +179,8 @@  discard block
 block discarded – undo
179 179
 		
180 180
 		$return = array();
181 181
 
182
-		foreach ( $data as $gateway ) {
183
-			$return[ $gateway ['gateway']] = $gateway;
182
+		foreach ($data as $gateway) {
183
+			$return[$gateway ['gateway']] = $gateway;
184 184
 		}
185 185
 
186 186
 		return $return;
@@ -197,7 +197,7 @@  discard block
 block discarded – undo
197 197
 		$columns               = $this->get_columns();
198 198
 		$hidden                = array(); // No hidden columns
199 199
 		$sortable              = $this->get_sortable_columns();
200
-		$this->_column_headers = array( $columns, $hidden, $sortable );
200
+		$this->_column_headers = array($columns, $hidden, $sortable);
201 201
 		$this->items           = $this->reports_data();
202 202
 	}
203 203
 }
Please login to merge, or discard this patch.
includes/class-wpinv-reports.php 3 patches
Braces   +3 added lines, -2 removed lines patch added patch discarded remove patch
@@ -112,8 +112,9 @@
 block discarded – undo
112 112
         $views   = apply_filters( 'wpinv_report_views', $views );
113 113
         $current = 'earnings';
114 114
 
115
-        if ( isset( $_GET['view'] ) && array_key_exists( $_GET['view'], $views ) )
116
-		$current = $_GET['view'];
115
+        if ( isset( $_GET['view'] ) && array_key_exists( $_GET['view'], $views ) ) {
116
+        		$current = $_GET['view'];
117
+        }
117 118
 
118 119
         ?>
119 120
 	        <form id="wpinv-reports-filter" method="get" class="tablenav">
Please login to merge, or discard this patch.
Indentation   +13 added lines, -13 removed lines patch added patch discarded remove patch
@@ -116,7 +116,7 @@  discard block
 block discarded – undo
116 116
         $current = 'earnings';
117 117
 
118 118
         if ( isset( $_GET['view'] ) && array_key_exists( $_GET['view'], $views ) )
119
-		$current = $_GET['view'];
119
+        $current = $_GET['view'];
120 120
 
121 121
         ?>
122 122
 	        <form id="wpinv-reports-filter" method="get" class="tablenav">
@@ -134,7 +134,7 @@  discard block
 block discarded – undo
134 134
 	        </form>
135 135
         <?php
136 136
 
137
-	    do_action( 'wpinv_reports_view_' . $current );
137
+        do_action( 'wpinv_reports_view_' . $current );
138 138
 
139 139
     }
140 140
 
@@ -224,13 +224,13 @@  discard block
 block discarded – undo
224 224
             $is_writeable   = $is_dir && is_writeable( $this->export_dir );
225 225
 
226 226
             if ( $is_dir && $is_writeable ) {
227
-               return true;
227
+                return true;
228 228
             } else if ( $is_dir && !$is_writeable ) {
229
-               if ( !$this->wp_filesystem->chmod( $this->export_dir, FS_CHMOD_DIR ) ) {
230
-                   return wp_sprintf( __( 'Filesystem ERROR: Export location %s is not writable, check your file permissions.', 'invoicing' ), $this->export_dir );
231
-               }
229
+                if ( !$this->wp_filesystem->chmod( $this->export_dir, FS_CHMOD_DIR ) ) {
230
+                    return wp_sprintf( __( 'Filesystem ERROR: Export location %s is not writable, check your file permissions.', 'invoicing' ), $this->export_dir );
231
+                }
232 232
 
233
-               return true;
233
+                return true;
234 234
             } else {
235 235
                 if ( !$this->wp_filesystem->mkdir( $this->export_dir, FS_CHMOD_DIR ) ) {
236 236
                     return wp_sprintf( __( 'Filesystem ERROR: Could not create directory %s. This is usually due to inconsistent file permissions.', 'invoicing' ), $this->export_dir );
@@ -325,12 +325,12 @@  discard block
 block discarded – undo
325 325
         $output  = fopen( 'php://output', 'w' ) or die( 'Unsupported server' );
326 326
 
327 327
         // Let the browser know what content we're streaming and how it should save the content.
328
-		$name = time();
329
-		header( "Content-Type:application/csv" );
328
+        $name = time();
329
+        header( "Content-Type:application/csv" );
330 330
         header( "Content-Disposition:attachment;filename=getpaid-discounts-$name.csv" );
331 331
 
332 332
         // Output the csv column headers.
333
-		fputcsv(
333
+        fputcsv(
334 334
             $output,
335 335
             array(
336 336
                 __( 'Discount Id', 'invoicing' ),
@@ -698,12 +698,12 @@  discard block
 block discarded – undo
698 698
         $thirty_days_ago      = date( 'Y-m-d', strtotime( '-30 days', current_time( 'timestamp' ) ) );
699 699
         $first_day_month  	  = date( 'Y-m-1', current_time( 'timestamp' ) );
700 700
         $last_day_month  	  = date( 'Y-m-t', current_time( 'timestamp' ) );
701
-		$first_day_last_month = date( 'Y-m-d', strtotime( 'first day of last month', current_time( 'timestamp' ) ) );
701
+        $first_day_last_month = date( 'Y-m-d', strtotime( 'first day of last month', current_time( 'timestamp' ) ) );
702 702
         $last_day_last_month  = date( 'Y-m-d', strtotime( 'last day of last month', current_time( 'timestamp' ) ) );
703 703
         $first_day_year  	  = date( 'Y-1-1', current_time( 'timestamp' ) );
704 704
         $last_day_year  	  = date( 'Y-12-31', current_time( 'timestamp' ) );
705
-		$first_day_last_year  = date( 'Y-m-d', strtotime( 'first day of last year', current_time( 'timestamp' ) ) );
706
-		$last_day_last_year   = date( 'Y-m-d', strtotime( 'last day of last year', current_time( 'timestamp' ) ) );
705
+        $first_day_last_year  = date( 'Y-m-d', strtotime( 'first day of last year', current_time( 'timestamp' ) ) );
706
+        $last_day_last_year   = date( 'Y-m-d', strtotime( 'last day of last year', current_time( 'timestamp' ) ) );
707 707
 
708 708
         $ranges = array(
709 709
 
Please login to merge, or discard this patch.
Spacing   +335 added lines, -335 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; // Exit if accessed directly
4 4
 }
5 5
 
@@ -21,79 +21,79 @@  discard block
 block discarded – undo
21 21
     public function init() {
22 22
         global $wp_filesystem;
23 23
 
24
-        if ( empty( $wp_filesystem ) ) {
25
-            require_once( ABSPATH . '/wp-admin/includes/file.php' );
24
+        if (empty($wp_filesystem)) {
25
+            require_once(ABSPATH . '/wp-admin/includes/file.php');
26 26
             WP_Filesystem();
27 27
             global $wp_filesystem;
28 28
         }
29 29
         $this->wp_filesystem    = $wp_filesystem;
30 30
 
31 31
         $this->export_dir       = $this->export_location();
32
-        $this->export_url       = $this->export_location( true );
32
+        $this->export_url       = $this->export_location(true);
33 33
         $this->export           = 'invoicing';
34 34
         $this->filetype         = 'csv';
35 35
         $this->per_page         = 20;
36 36
 
37
-        do_action( 'wpinv_class_reports_init', $this );
37
+        do_action('wpinv_class_reports_init', $this);
38 38
     }
39 39
 
40 40
     public function includes() {
41
-        do_action( 'wpinv_class_reports_includes', $this );
41
+        do_action('wpinv_class_reports_includes', $this);
42 42
     }
43 43
 
44 44
     public function actions() {
45
-        if ( is_admin() ) {
46
-            add_action( 'admin_menu', array( $this, 'add_submenu' ), 20 );
47
-            add_action( 'wpinv_reports_tab_reports', array( $this, 'reports' ) );
48
-            add_action( 'wpinv_reports_tab_export', array( $this, 'export' ) );
49
-            add_action( 'wp_ajax_wpinv_ajax_export', array( $this, 'ajax_export' ) );
50
-            add_action( 'wp_ajax_wpinv_ajax_discount_use_export', array( $this, 'discount_use_export' ) );
45
+        if (is_admin()) {
46
+            add_action('admin_menu', array($this, 'add_submenu'), 20);
47
+            add_action('wpinv_reports_tab_reports', array($this, 'reports'));
48
+            add_action('wpinv_reports_tab_export', array($this, 'export'));
49
+            add_action('wp_ajax_wpinv_ajax_export', array($this, 'ajax_export'));
50
+            add_action('wp_ajax_wpinv_ajax_discount_use_export', array($this, 'discount_use_export'));
51 51
 
52 52
             // Export Invoices.
53
-            add_action( 'wpinv_export_set_params_invoices', array( $this, 'set_invoices_export' ) );
54
-            add_filter( 'wpinv_export_get_columns_invoices', array( $this, 'get_invoices_columns' ) );
55
-            add_filter( 'wpinv_export_get_data_invoices', array( $this, 'get_invoices_data' ) );
56
-            add_filter( 'wpinv_get_export_status_invoices', array( $this, 'invoices_export_status' ) );
53
+            add_action('wpinv_export_set_params_invoices', array($this, 'set_invoices_export'));
54
+            add_filter('wpinv_export_get_columns_invoices', array($this, 'get_invoices_columns'));
55
+            add_filter('wpinv_export_get_data_invoices', array($this, 'get_invoices_data'));
56
+            add_filter('wpinv_get_export_status_invoices', array($this, 'invoices_export_status'));
57 57
 
58 58
             // Reports.
59
-            add_action( 'wpinv_reports_view_earnings', array( $this, 'earnings_report' ) );
60
-            add_action( 'wpinv_reports_view_gateways', array( $this, 'gateways_report' ) );
61
-            add_action( 'wpinv_reports_view_items', array( $this, 'items_report' ) );
62
-            add_action( 'wpinv_reports_view_taxes', array( $this, 'tax_report' ) );
59
+            add_action('wpinv_reports_view_earnings', array($this, 'earnings_report'));
60
+            add_action('wpinv_reports_view_gateways', array($this, 'gateways_report'));
61
+            add_action('wpinv_reports_view_items', array($this, 'items_report'));
62
+            add_action('wpinv_reports_view_taxes', array($this, 'tax_report'));
63 63
         }
64
-        do_action( 'wpinv_class_reports_actions', $this );
64
+        do_action('wpinv_class_reports_actions', $this);
65 65
     }
66 66
 
67 67
     public function add_submenu() {
68 68
         global $wpi_reports_page;
69
-        $wpi_reports_page = add_submenu_page( 'wpinv', __( 'Reports', 'invoicing' ), __( 'Reports', 'invoicing' ), wpinv_get_capability(), 'wpinv-reports', array( $this, 'reports_page' ) );
69
+        $wpi_reports_page = add_submenu_page('wpinv', __('Reports', 'invoicing'), __('Reports', 'invoicing'), wpinv_get_capability(), 'wpinv-reports', array($this, 'reports_page'));
70 70
     }
71 71
 
72 72
     public function reports_page() {
73 73
 
74
-        if ( !wp_script_is( 'postbox', 'enqueued' ) ) {
75
-            wp_enqueue_script( 'postbox' );
74
+        if (!wp_script_is('postbox', 'enqueued')) {
75
+            wp_enqueue_script('postbox');
76 76
         }
77 77
 
78
-        if ( !wp_script_is( 'jquery-ui-datepicker', 'enqueued' ) ) {
79
-            wp_enqueue_script( 'jquery-ui-datepicker' );
78
+        if (!wp_script_is('jquery-ui-datepicker', 'enqueued')) {
79
+            wp_enqueue_script('jquery-ui-datepicker');
80 80
         }
81 81
 
82
-        $current_page = admin_url( 'admin.php?page=wpinv-reports' );
83
-        $active_tab = isset( $_GET['tab'] ) ? sanitize_text_field( $_GET['tab'] ) : 'reports';
82
+        $current_page = admin_url('admin.php?page=wpinv-reports');
83
+        $active_tab = isset($_GET['tab']) ? sanitize_text_field($_GET['tab']) : 'reports';
84 84
         ?>
85 85
         <div class="wrap wpi-reports-wrap">
86
-            <h1><?php echo esc_html( __( 'Reports', 'invoicing' ) ); ?></h1>
86
+            <h1><?php echo esc_html(__('Reports', 'invoicing')); ?></h1>
87 87
             <h2 class="nav-tab-wrapper wp-clearfix">
88
-                <a href="<?php echo add_query_arg( array( 'tab' => 'reports', 'settings-updated' => false ), $current_page ); ?>" class="nav-tab <?php echo $active_tab == 'reports' ? 'nav-tab-active' : ''; ?>"><?php _e( 'Reports', 'invoicing' ); ?></a>
89
-                <a href="<?php echo add_query_arg( array( 'tab' => 'export', 'settings-updated' => false ), $current_page ); ?>" class="nav-tab <?php echo $active_tab == 'export' ? 'nav-tab-active' : ''; ?>"><?php _e( 'Export', 'invoicing' ); ?></a>
90
-                <?php do_action( 'wpinv_reports_page_tabs' ); ;?>
88
+                <a href="<?php echo add_query_arg(array('tab' => 'reports', 'settings-updated' => false), $current_page); ?>" class="nav-tab <?php echo $active_tab == 'reports' ? 'nav-tab-active' : ''; ?>"><?php _e('Reports', 'invoicing'); ?></a>
89
+                <a href="<?php echo add_query_arg(array('tab' => 'export', 'settings-updated' => false), $current_page); ?>" class="nav-tab <?php echo $active_tab == 'export' ? 'nav-tab-active' : ''; ?>"><?php _e('Export', 'invoicing'); ?></a>
90
+                <?php do_action('wpinv_reports_page_tabs'); ;?>
91 91
             </h2>
92
-            <div class="wpi-reports-content wpi-reports-<?php echo esc_attr( $active_tab ); ?>">
92
+            <div class="wpi-reports-content wpi-reports-<?php echo esc_attr($active_tab); ?>">
93 93
             <?php
94
-                do_action( 'wpinv_reports_page_top' );
95
-                do_action( 'wpinv_reports_tab_' . $active_tab );
96
-                do_action( 'wpinv_reports_page_bottom' );
94
+                do_action('wpinv_reports_page_top');
95
+                do_action('wpinv_reports_tab_' . $active_tab);
96
+                do_action('wpinv_reports_page_bottom');
97 97
             ?>
98 98
             </div>
99 99
         </div>
@@ -106,139 +106,139 @@  discard block
 block discarded – undo
106 106
     public function reports() {
107 107
 
108 108
         $views = array(
109
-            'earnings'   => __( 'Earnings', 'invoicing' ),
110
-            'items'      => __( 'Items', 'invoicing' ),
111
-            'gateways'   => __( 'Payment Methods', 'invoicing' ),
112
-            'taxes'      => __( 'Taxes', 'invoicing' ),
109
+            'earnings'   => __('Earnings', 'invoicing'),
110
+            'items'      => __('Items', 'invoicing'),
111
+            'gateways'   => __('Payment Methods', 'invoicing'),
112
+            'taxes'      => __('Taxes', 'invoicing'),
113 113
         );
114 114
 
115
-        $views   = apply_filters( 'wpinv_report_views', $views );
115
+        $views   = apply_filters('wpinv_report_views', $views);
116 116
         $current = 'earnings';
117 117
 
118
-        if ( isset( $_GET['view'] ) && array_key_exists( $_GET['view'], $views ) )
118
+        if (isset($_GET['view']) && array_key_exists($_GET['view'], $views))
119 119
 		$current = $_GET['view'];
120 120
 
121 121
         ?>
122 122
 	        <form id="wpinv-reports-filter" method="get" class="tablenav">
123 123
 		        <select id="wpinv-reports-view" name="view">
124
-			        <option value="-1" disabled><?php _e( 'Report Type', 'invoicing' ); ?></option>
125
-			            <?php foreach ( $views as $view_id => $label ) : ?>
126
-				            <option value="<?php echo esc_attr( $view_id ); ?>" <?php selected( $view_id, $current ); ?>><?php echo $label; ?></option>
124
+			        <option value="-1" disabled><?php _e('Report Type', 'invoicing'); ?></option>
125
+			            <?php foreach ($views as $view_id => $label) : ?>
126
+				            <option value="<?php echo esc_attr($view_id); ?>" <?php selected($view_id, $current); ?>><?php echo $label; ?></option>
127 127
 			            <?php endforeach; ?>
128 128
 		        </select>
129 129
 
130
-		        <?php do_action( 'wpinv_report_view_actions' ); ?>
130
+		        <?php do_action('wpinv_report_view_actions'); ?>
131 131
 
132 132
 		        <input type="hidden" name="page" value="wpinv-reports"/>
133
-		        <?php submit_button( __( 'Show', 'invoicing' ), 'secondary', 'submit', false ); ?>
133
+		        <?php submit_button(__('Show', 'invoicing'), 'secondary', 'submit', false); ?>
134 134
 	        </form>
135 135
         <?php
136 136
 
137
-	    do_action( 'wpinv_reports_view_' . $current );
137
+	    do_action('wpinv_reports_view_' . $current);
138 138
 
139 139
     }
140 140
 
141 141
     public function export() {
142
-        $statuses = wpinv_get_invoice_statuses( true );
143
-        $statuses = array_merge( array( 'any' => __( 'All Statuses', 'invoicing' ) ), $statuses );
142
+        $statuses = wpinv_get_invoice_statuses(true);
143
+        $statuses = array_merge(array('any' => __('All Statuses', 'invoicing')), $statuses);
144 144
         ?>
145 145
         <div class="metabox-holder">
146 146
             <div id="post-body">
147 147
                 <div id="post-body-content">
148
-                    <?php do_action( 'wpinv_reports_tab_export_content_top' ); ?>
148
+                    <?php do_action('wpinv_reports_tab_export_content_top'); ?>
149 149
 
150 150
                     <div class="postbox wpi-export-invoices">
151
-                        <h2 class="hndle ui-sortabled-handle"><span><?php _e( 'Invoices','invoicing' ); ?></span></h2>
151
+                        <h2 class="hndle ui-sortabled-handle"><span><?php _e('Invoices', 'invoicing'); ?></span></h2>
152 152
                         <div class="inside">
153
-                            <p><?php _e( 'Download a CSV of all payment invoices.', 'invoicing' ); ?></p>
153
+                            <p><?php _e('Download a CSV of all payment invoices.', 'invoicing'); ?></p>
154 154
                             <form id="wpi-export-invoices" class="wpi-export-form" method="post">
155
-                                <?php echo wpinv_html_date_field( array(
155
+                                <?php echo wpinv_html_date_field(array(
156 156
                                     'id' => 'wpi_export_from_date',
157 157
                                     'name' => 'from_date',
158 158
                                     'data' => array(
159 159
                                         'dateFormat' => 'yy-mm-dd'
160 160
                                     ),
161
-                                    'placeholder' => __( 'From date', 'invoicing' ) )
161
+                                    'placeholder' => __('From date', 'invoicing') )
162 162
                                 ); ?>
163
-                                <?php echo wpinv_html_date_field( array(
163
+                                <?php echo wpinv_html_date_field(array(
164 164
                                     'id' => 'wpi_export_to_date',
165 165
                                     'name' => 'to_date',
166 166
                                     'data' => array(
167 167
                                         'dateFormat' => 'yy-mm-dd'
168 168
                                     ),
169
-                                    'placeholder' => __( 'To date', 'invoicing' ) )
169
+                                    'placeholder' => __('To date', 'invoicing') )
170 170
                                 ); ?>
171 171
                                 <span id="wpinv-status-wrap">
172
-                                <?php echo wpinv_html_select( array(
172
+                                <?php echo wpinv_html_select(array(
173 173
                                     'options'          => $statuses,
174 174
                                     'name'             => 'status',
175 175
                                     'id'               => 'wpi_export_status',
176 176
                                     'show_option_all'  => false,
177 177
                                     'show_option_none' => false,
178 178
                                     'class'            => 'wpi_select2',
179
-                                ) ); ?>
180
-                                <?php wp_nonce_field( 'wpi_ajax_export', 'wpi_ajax_export' ); ?>
179
+                                )); ?>
180
+                                <?php wp_nonce_field('wpi_ajax_export', 'wpi_ajax_export'); ?>
181 181
                                 </span>
182 182
                                 <span id="wpinv-submit-wrap">
183 183
                                     <input type="hidden" value="invoices" name="export" />
184
-                                    <input type="submit" value="<?php _e( 'Generate CSV', 'invoicing' ); ?>" class="button-primary" />
184
+                                    <input type="submit" value="<?php _e('Generate CSV', 'invoicing'); ?>" class="button-primary" />
185 185
                                 </span>
186 186
                             </form>
187 187
                         </div>
188 188
                     </div>
189 189
 
190 190
                     <div class="postbox wpi-export-discount-uses">
191
-                        <h2 class="hndle ui-sortabled-handle"><span><?php _e( 'Discount Use','invoicing' ); ?></span></h2>
191
+                        <h2 class="hndle ui-sortabled-handle"><span><?php _e('Discount Use', 'invoicing'); ?></span></h2>
192 192
                         <div class="inside">
193
-                            <p><?php _e( 'Download a CSV of discount uses.', 'invoicing' ); ?></p>
194
-                            <a class="button-primary" href="<?php echo esc_url( wp_nonce_url( admin_url( 'admin-ajax.php?action=wpinv_ajax_discount_use_export' ), 'wpi_discount_ajax_export', 'wpi_discount_ajax_export' ) ); ?>"><?php _e( 'Generate CSV', 'invoicing' ); ?></a>
193
+                            <p><?php _e('Download a CSV of discount uses.', 'invoicing'); ?></p>
194
+                            <a class="button-primary" href="<?php echo esc_url(wp_nonce_url(admin_url('admin-ajax.php?action=wpinv_ajax_discount_use_export'), 'wpi_discount_ajax_export', 'wpi_discount_ajax_export')); ?>"><?php _e('Generate CSV', 'invoicing'); ?></a>
195 195
                         </div>
196 196
                     </div>
197 197
 
198
-                    <?php do_action( 'wpinv_reports_tab_export_content_bottom' ); ?>
198
+                    <?php do_action('wpinv_reports_tab_export_content_bottom'); ?>
199 199
                 </div>
200 200
             </div>
201 201
         </div>
202 202
         <?php
203 203
     }
204 204
 
205
-    public function export_location( $relative = false ) {
205
+    public function export_location($relative = false) {
206 206
         $upload_dir         = wp_upload_dir();
207
-        $export_location    = $relative ? trailingslashit( $upload_dir['baseurl'] ) . 'cache' : trailingslashit( $upload_dir['basedir'] ) . 'cache';
208
-        $export_location    = apply_filters( 'wpinv_export_location', $export_location, $relative );
207
+        $export_location    = $relative ? trailingslashit($upload_dir['baseurl']) . 'cache' : trailingslashit($upload_dir['basedir']) . 'cache';
208
+        $export_location    = apply_filters('wpinv_export_location', $export_location, $relative);
209 209
 
210
-        return trailingslashit( $export_location );
210
+        return trailingslashit($export_location);
211 211
     }
212 212
 
213 213
     public function check_export_location() {
214 214
         try {
215
-            if ( empty( $this->wp_filesystem ) ) {
216
-                return __( 'Filesystem ERROR: Could not access filesystem.', 'invoicing' );
215
+            if (empty($this->wp_filesystem)) {
216
+                return __('Filesystem ERROR: Could not access filesystem.', 'invoicing');
217 217
             }
218 218
 
219
-            if ( is_wp_error( $this->wp_filesystem ) ) {
220
-                return __( 'Filesystem ERROR: ' . $this->wp_filesystem->get_error_message(), 'invoicing' );
219
+            if (is_wp_error($this->wp_filesystem)) {
220
+                return __('Filesystem ERROR: ' . $this->wp_filesystem->get_error_message(), 'invoicing');
221 221
             }
222 222
 
223
-            $is_dir         = $this->wp_filesystem->is_dir( $this->export_dir );
224
-            $is_writeable   = $is_dir && is_writeable( $this->export_dir );
223
+            $is_dir         = $this->wp_filesystem->is_dir($this->export_dir);
224
+            $is_writeable   = $is_dir && is_writeable($this->export_dir);
225 225
 
226
-            if ( $is_dir && $is_writeable ) {
226
+            if ($is_dir && $is_writeable) {
227 227
                return true;
228
-            } else if ( $is_dir && !$is_writeable ) {
229
-               if ( !$this->wp_filesystem->chmod( $this->export_dir, FS_CHMOD_DIR ) ) {
230
-                   return wp_sprintf( __( 'Filesystem ERROR: Export location %s is not writable, check your file permissions.', 'invoicing' ), $this->export_dir );
228
+            } else if ($is_dir && !$is_writeable) {
229
+               if (!$this->wp_filesystem->chmod($this->export_dir, FS_CHMOD_DIR)) {
230
+                   return wp_sprintf(__('Filesystem ERROR: Export location %s is not writable, check your file permissions.', 'invoicing'), $this->export_dir);
231 231
                }
232 232
 
233 233
                return true;
234 234
             } else {
235
-                if ( !$this->wp_filesystem->mkdir( $this->export_dir, FS_CHMOD_DIR ) ) {
236
-                    return wp_sprintf( __( 'Filesystem ERROR: Could not create directory %s. This is usually due to inconsistent file permissions.', 'invoicing' ), $this->export_dir );
235
+                if (!$this->wp_filesystem->mkdir($this->export_dir, FS_CHMOD_DIR)) {
236
+                    return wp_sprintf(__('Filesystem ERROR: Could not create directory %s. This is usually due to inconsistent file permissions.', 'invoicing'), $this->export_dir);
237 237
                 }
238 238
 
239 239
                 return true;
240 240
             }
241
-        } catch ( Exception $e ) {
241
+        } catch (Exception $e) {
242 242
             return $e->getMessage();
243 243
         }
244 244
     }
@@ -246,59 +246,59 @@  discard block
 block discarded – undo
246 246
     public function ajax_export() {
247 247
         $response               = array();
248 248
         $response['success']    = false;
249
-        $response['msg']        = __( 'Invalid export request found.', 'invoicing' );
249
+        $response['msg']        = __('Invalid export request found.', 'invoicing');
250 250
 
251
-        if ( empty( $_POST['data'] ) || ! wpinv_current_user_can_manage_invoicing() ) {
252
-            wp_send_json( $response );
251
+        if (empty($_POST['data']) || !wpinv_current_user_can_manage_invoicing()) {
252
+            wp_send_json($response);
253 253
         }
254 254
 
255
-        parse_str( $_POST['data'], $data );
255
+        parse_str($_POST['data'], $data);
256 256
 
257
-        $data['step']   = !empty( $_POST['step'] ) ? absint( $_POST['step'] ) : 1;
257
+        $data['step'] = !empty($_POST['step']) ? absint($_POST['step']) : 1;
258 258
 
259
-        $_REQUEST = (array)$data;
260
-        if ( !( !empty( $_REQUEST['wpi_ajax_export'] ) && wp_verify_nonce( $_REQUEST['wpi_ajax_export'], 'wpi_ajax_export' ) ) ) {
261
-            $response['msg']    = __( 'Security check failed.', 'invoicing' );
262
-            wp_send_json( $response );
259
+        $_REQUEST = (array) $data;
260
+        if (!(!empty($_REQUEST['wpi_ajax_export']) && wp_verify_nonce($_REQUEST['wpi_ajax_export'], 'wpi_ajax_export'))) {
261
+            $response['msg'] = __('Security check failed.', 'invoicing');
262
+            wp_send_json($response);
263 263
         }
264 264
 
265
-        if ( ( $error = $this->check_export_location( true ) ) !== true ) {
266
-            $response['msg'] = __( 'Filesystem ERROR: ' . $error, 'invoicing' );
267
-            wp_send_json( $response );
265
+        if (($error = $this->check_export_location(true)) !== true) {
266
+            $response['msg'] = __('Filesystem ERROR: ' . $error, 'invoicing');
267
+            wp_send_json($response);
268 268
         }
269 269
 
270
-        $this->set_export_params( $_REQUEST );
270
+        $this->set_export_params($_REQUEST);
271 271
 
272 272
         $return = $this->process_export_step();
273 273
         $done   = $this->get_export_status();
274 274
 
275
-        if ( $return ) {
275
+        if ($return) {
276 276
             $this->step += 1;
277 277
 
278 278
             $response['success']    = true;
279 279
             $response['msg']        = '';
280 280
 
281
-            if ( $done >= 100 ) {
281
+            if ($done >= 100) {
282 282
                 $this->step     = 'done';
283
-                $new_filename   = 'wpi-' . $this->export . '-' . date( 'y-m-d-H-i' ) . '.' . $this->filetype;
283
+                $new_filename   = 'wpi-' . $this->export . '-' . date('y-m-d-H-i') . '.' . $this->filetype;
284 284
                 $new_file       = $this->export_dir . $new_filename;
285 285
 
286
-                if ( file_exists( $this->file ) ) {
287
-                    $this->wp_filesystem->move( $this->file, $new_file, true );
286
+                if (file_exists($this->file)) {
287
+                    $this->wp_filesystem->move($this->file, $new_file, true);
288 288
                 }
289 289
 
290
-                if ( file_exists( $new_file ) ) {
291
-                    $response['data']['file'] = array( 'u' => $this->export_url . $new_filename, 's' => size_format( filesize( $new_file ), 2 ) );
290
+                if (file_exists($new_file)) {
291
+                    $response['data']['file'] = array('u' => $this->export_url . $new_filename, 's' => size_format(filesize($new_file), 2));
292 292
                 }
293 293
             }
294 294
 
295 295
             $response['data']['step']   = $this->step;
296 296
             $response['data']['done']   = $done;
297 297
         } else {
298
-            $response['msg']    = __( 'No data found for export.', 'invoicing' );
298
+            $response['msg'] = __('No data found for export.', 'invoicing');
299 299
         }
300 300
 
301
-        wp_send_json( $response );
301
+        wp_send_json($response);
302 302
     }
303 303
 
304 304
     /**
@@ -306,7 +306,7 @@  discard block
 block discarded – undo
306 306
      */
307 307
     public function discount_use_export() {
308 308
 
309
-        if ( ! wp_verify_nonce( $_GET['wpi_discount_ajax_export'], 'wpi_discount_ajax_export' ) || ! wpinv_current_user_can_manage_invoicing() ) {
309
+        if (!wp_verify_nonce($_GET['wpi_discount_ajax_export'], 'wpi_discount_ajax_export') || !wpinv_current_user_can_manage_invoicing()) {
310 310
             wp_die( -1, 403 );
311 311
         }
312 312
 
@@ -316,115 +316,115 @@  discard block
 block discarded – undo
316 316
             'posts_per_page' => -1,
317 317
         );
318 318
 
319
-        $discounts = get_posts( $args );
319
+        $discounts = get_posts($args);
320 320
 
321
-        if ( empty( $discounts ) ) {
322
-            die ( __( 'You have not set up any discounts', 'invoicing' ) );
321
+        if (empty($discounts)) {
322
+            die (__('You have not set up any discounts', 'invoicing'));
323 323
         }
324 324
 
325
-        $output  = fopen( 'php://output', 'w' ) or die( 'Unsupported server' );
325
+        $output = fopen('php://output', 'w') or die('Unsupported server');
326 326
 
327 327
         // Let the browser know what content we're streaming and how it should save the content.
328 328
 		$name = time();
329
-		header( "Content-Type:application/csv" );
330
-        header( "Content-Disposition:attachment;filename=getpaid-discounts-$name.csv" );
329
+		header("Content-Type:application/csv");
330
+        header("Content-Disposition:attachment;filename=getpaid-discounts-$name.csv");
331 331
 
332 332
         // Output the csv column headers.
333 333
 		fputcsv(
334 334
             $output,
335 335
             array(
336
-                __( 'Discount Id', 'invoicing' ),
337
-                __( 'Discount Code', 'invoicing' ),
338
-                __( 'Discount Type', 'invoicing' ),
339
-                __( 'Discount Amount', 'invoicing' ),
340
-                __( 'Uses', 'invoicing' ),
336
+                __('Discount Id', 'invoicing'),
337
+                __('Discount Code', 'invoicing'),
338
+                __('Discount Type', 'invoicing'),
339
+                __('Discount Amount', 'invoicing'),
340
+                __('Uses', 'invoicing'),
341 341
             )
342 342
         );
343 343
 
344
-        foreach ( $discounts as $discount ) {
344
+        foreach ($discounts as $discount) {
345 345
 
346 346
             $discount = (int) $discount;
347 347
             $row      = array(
348 348
                 $discount,
349
-                get_post_meta( $discount, '_wpi_discount_code', true ),
350
-                get_post_meta( $discount, '_wpi_discount_type', true ),
351
-                get_post_meta( $discount, '_wpi_discount_amount', true ),
352
-                (int) get_post_meta( $discount, '_wpi_discount_uses', true )
349
+                get_post_meta($discount, '_wpi_discount_code', true),
350
+                get_post_meta($discount, '_wpi_discount_type', true),
351
+                get_post_meta($discount, '_wpi_discount_amount', true),
352
+                (int) get_post_meta($discount, '_wpi_discount_uses', true)
353 353
             );
354
-            fputcsv( $output, $row );
354
+            fputcsv($output, $row);
355 355
         }
356 356
 
357
-        fclose( $output );
357
+        fclose($output);
358 358
         exit;
359 359
 
360 360
     }
361 361
 
362
-    public function set_export_params( $request ) {
362
+    public function set_export_params($request) {
363 363
         $this->empty    = false;
364
-        $this->step     = !empty( $request['step'] ) ? absint( $request['step'] ) : 1;
365
-        $this->export   = !empty( $request['export'] ) ? $request['export'] : $this->export;
364
+        $this->step     = !empty($request['step']) ? absint($request['step']) : 1;
365
+        $this->export   = !empty($request['export']) ? $request['export'] : $this->export;
366 366
         $this->filename = 'wpi-' . $this->export . '-' . $request['wpi_ajax_export'] . '.' . $this->filetype;
367 367
         $this->file     = $this->export_dir . $this->filename;
368 368
 
369
-        do_action( 'wpinv_export_set_params_' . $this->export, $request );
369
+        do_action('wpinv_export_set_params_' . $this->export, $request);
370 370
     }
371 371
 
372 372
     public function get_columns() {
373 373
         $columns = array();
374 374
 
375
-        return apply_filters( 'wpinv_export_get_columns_' . $this->export, $columns );
375
+        return apply_filters('wpinv_export_get_columns_' . $this->export, $columns);
376 376
     }
377 377
 
378 378
     protected function get_export_file() {
379 379
         $file = '';
380 380
 
381
-        if ( $this->wp_filesystem->exists( $this->file ) ) {
382
-            $file = $this->wp_filesystem->get_contents( $this->file );
381
+        if ($this->wp_filesystem->exists($this->file)) {
382
+            $file = $this->wp_filesystem->get_contents($this->file);
383 383
         } else {
384
-            $this->wp_filesystem->put_contents( $this->file, '' );
384
+            $this->wp_filesystem->put_contents($this->file, '');
385 385
         }
386 386
 
387 387
         return $file;
388 388
     }
389 389
 
390
-    protected function attach_export_data( $data = '' ) {
391
-        $filedata   = $this->get_export_file();
392
-        $filedata   .= $data;
390
+    protected function attach_export_data($data = '') {
391
+        $filedata = $this->get_export_file();
392
+        $filedata .= $data;
393 393
 
394
-        $this->wp_filesystem->put_contents( $this->file, $filedata );
394
+        $this->wp_filesystem->put_contents($this->file, $filedata);
395 395
 
396
-        $rows       = file( $this->file, FILE_SKIP_EMPTY_LINES );
396
+        $rows       = file($this->file, FILE_SKIP_EMPTY_LINES);
397 397
         $columns    = $this->get_columns();
398
-        $columns    = empty( $columns ) ? 0 : 1;
398
+        $columns    = empty($columns) ? 0 : 1;
399 399
 
400
-        $this->empty = count( $rows ) == $columns ? true : false;
400
+        $this->empty = count($rows) == $columns ? true : false;
401 401
     }
402 402
 
403 403
     public function print_columns() {
404 404
         $column_data    = '';
405 405
         $columns        = $this->get_columns();
406 406
         $i              = 1;
407
-        foreach( $columns as $key => $column ) {
408
-            $column_data .= '"' . addslashes( $column ) . '"';
409
-            $column_data .= $i == count( $columns ) ? '' : ',';
407
+        foreach ($columns as $key => $column) {
408
+            $column_data .= '"' . addslashes($column) . '"';
409
+            $column_data .= $i == count($columns) ? '' : ',';
410 410
             $i++;
411 411
         }
412 412
         $column_data .= "\r\n";
413 413
 
414
-        $this->attach_export_data( $column_data );
414
+        $this->attach_export_data($column_data);
415 415
 
416 416
         return $column_data;
417 417
     }
418 418
 
419 419
     public function process_export_step() {
420
-        if ( $this->step < 2 ) {
421
-            /** @scrutinizer ignore-unhandled */ @unlink( $this->file );
420
+        if ($this->step < 2) {
421
+            /** @scrutinizer ignore-unhandled */ @unlink($this->file);
422 422
             $this->print_columns();
423 423
         }
424 424
 
425 425
         $return = $this->print_rows();
426 426
 
427
-        if ( $return ) {
427
+        if ($return) {
428 428
             return true;
429 429
         } else {
430 430
             return false;
@@ -433,14 +433,14 @@  discard block
 block discarded – undo
433 433
 
434 434
     public function get_export_status() {
435 435
         $status = 100;
436
-        return apply_filters( 'wpinv_get_export_status_' . $this->export, $status );
436
+        return apply_filters('wpinv_get_export_status_' . $this->export, $status);
437 437
     }
438 438
 
439 439
     public function get_export_data() {
440 440
         $data = array();
441 441
 
442
-        $data = apply_filters( 'wpinv_export_get_data', $data );
443
-        $data = apply_filters( 'wpinv_export_get_data_' . $this->export, $data );
442
+        $data = apply_filters('wpinv_export_get_data', $data);
443
+        $data = apply_filters('wpinv_export_get_data_' . $this->export, $data);
444 444
 
445 445
         return $data;
446 446
     }
@@ -450,20 +450,20 @@  discard block
 block discarded – undo
450 450
         $data       = $this->get_export_data();
451 451
         $columns    = $this->get_columns();
452 452
 
453
-        if ( $data ) {
454
-            foreach ( $data as $row ) {
453
+        if ($data) {
454
+            foreach ($data as $row) {
455 455
                 $i = 1;
456
-                foreach ( $row as $key => $column ) {
457
-                    if ( array_key_exists( $key, $columns ) ) {
458
-                        $row_data .= '"' . addslashes( preg_replace( "/\"/","'", $column ) ) . '"';
459
-                        $row_data .= $i == count( $columns ) ? '' : ',';
456
+                foreach ($row as $key => $column) {
457
+                    if (array_key_exists($key, $columns)) {
458
+                        $row_data .= '"' . addslashes(preg_replace("/\"/", "'", $column)) . '"';
459
+                        $row_data .= $i == count($columns) ? '' : ',';
460 460
                         $i++;
461 461
                     }
462 462
                 }
463 463
                 $row_data .= "\r\n";
464 464
             }
465 465
 
466
-            $this->attach_export_data( $row_data );
466
+            $this->attach_export_data($row_data);
467 467
 
468 468
             return $row_data;
469 469
         }
@@ -472,48 +472,48 @@  discard block
 block discarded – undo
472 472
     }
473 473
 
474 474
     // Export Invoices.
475
-    public function set_invoices_export( $request ) {
476
-        $this->from_date    = isset( $request['from_date'] ) ? sanitize_text_field( $request['from_date'] ) : '';
477
-        $this->to_date      = isset( $request['to_date'] ) ? sanitize_text_field( $request['to_date'] ) : '';
478
-        $this->status       = isset( $request['status'] ) ? sanitize_text_field( $request['status'] ) : 'publish';
475
+    public function set_invoices_export($request) {
476
+        $this->from_date    = isset($request['from_date']) ? sanitize_text_field($request['from_date']) : '';
477
+        $this->to_date      = isset($request['to_date']) ? sanitize_text_field($request['to_date']) : '';
478
+        $this->status       = isset($request['status']) ? sanitize_text_field($request['status']) : 'publish';
479 479
     }
480 480
 
481
-    public function get_invoices_columns( $columns = array() ) {
481
+    public function get_invoices_columns($columns = array()) {
482 482
         $columns = array(
483
-            'id'            => __( 'ID',   'invoicing' ),
484
-            'number'        => __( 'Number',   'invoicing' ),
485
-            'date'          => __( 'Date', 'invoicing' ),
486
-            'due_date'      => __( 'Due Date', 'invoicing' ),
487
-            'completed_date'=> __( 'Payment Done Date', 'invoicing' ),
488
-            'amount'        => __( 'Amount', 'invoicing' ),
489
-            'currency'      => __( 'Currency', 'invoicing' ),
490
-            'items'        => __( 'Items', 'invoicing' ),
491
-            'status_nicename'  => __( 'Status Nicename', 'invoicing' ),
492
-            'status'        => __( 'Status', 'invoicing' ),
493
-            'tax'           => __( 'Tax', 'invoicing' ),
494
-            'discount'      => __( 'Discount', 'invoicing' ),
495
-            'user_id'       => __( 'User ID', 'invoicing' ),
496
-            'email'         => __( 'Email', 'invoicing' ),
497
-            'first_name'    => __( 'First Name', 'invoicing' ),
498
-            'last_name'     => __( 'Last Name', 'invoicing' ),
499
-            'address'       => __( 'Address', 'invoicing' ),
500
-            'city'          => __( 'City', 'invoicing' ),
501
-            'state'         => __( 'State', 'invoicing' ),
502
-            'country'       => __( 'Country', 'invoicing' ),
503
-            'zip'           => __( 'Zipcode', 'invoicing' ),
504
-            'phone'         => __( 'Phone', 'invoicing' ),
505
-            'company'       => __( 'Company', 'invoicing' ),
506
-            'vat_number'    => __( 'Vat Number', 'invoicing' ),
507
-            'ip'            => __( 'IP', 'invoicing' ),
508
-            'gateway'       => __( 'Gateway', 'invoicing' ),
509
-            'gateway_nicename'       => __( 'Gateway Nicename', 'invoicing' ),
510
-            'transaction_id'=> __( 'Transaction ID', 'invoicing' ),
483
+            'id'            => __('ID', 'invoicing'),
484
+            'number'        => __('Number', 'invoicing'),
485
+            'date'          => __('Date', 'invoicing'),
486
+            'due_date'      => __('Due Date', 'invoicing'),
487
+            'completed_date'=> __('Payment Done Date', 'invoicing'),
488
+            'amount'        => __('Amount', 'invoicing'),
489
+            'currency'      => __('Currency', 'invoicing'),
490
+            'items'        => __('Items', 'invoicing'),
491
+            'status_nicename'  => __('Status Nicename', 'invoicing'),
492
+            'status'        => __('Status', 'invoicing'),
493
+            'tax'           => __('Tax', 'invoicing'),
494
+            'discount'      => __('Discount', 'invoicing'),
495
+            'user_id'       => __('User ID', 'invoicing'),
496
+            'email'         => __('Email', 'invoicing'),
497
+            'first_name'    => __('First Name', 'invoicing'),
498
+            'last_name'     => __('Last Name', 'invoicing'),
499
+            'address'       => __('Address', 'invoicing'),
500
+            'city'          => __('City', 'invoicing'),
501
+            'state'         => __('State', 'invoicing'),
502
+            'country'       => __('Country', 'invoicing'),
503
+            'zip'           => __('Zipcode', 'invoicing'),
504
+            'phone'         => __('Phone', 'invoicing'),
505
+            'company'       => __('Company', 'invoicing'),
506
+            'vat_number'    => __('Vat Number', 'invoicing'),
507
+            'ip'            => __('IP', 'invoicing'),
508
+            'gateway'       => __('Gateway', 'invoicing'),
509
+            'gateway_nicename'       => __('Gateway Nicename', 'invoicing'),
510
+            'transaction_id'=> __('Transaction ID', 'invoicing'),
511 511
         );
512 512
 
513 513
         return $columns;
514 514
     }
515 515
 
516
-    public function get_invoices_data( $response = array() ) {
516
+    public function get_invoices_data($response = array()) {
517 517
         $args = array(
518 518
             'limit'    => $this->per_page,
519 519
             'page'     => $this->step,
@@ -521,42 +521,42 @@  discard block
 block discarded – undo
521 521
             'orderby'  => 'date',
522 522
         );
523 523
 
524
-        if ( $this->status != 'any' ) {
524
+        if ($this->status != 'any') {
525 525
             $args['status'] = $this->status;
526 526
         } else {
527
-            $args['status'] = array_keys( wpinv_get_invoice_statuses( true ) );
527
+            $args['status'] = array_keys(wpinv_get_invoice_statuses(true));
528 528
         }
529 529
 
530
-        if ( !empty( $this->from_date ) || !empty( $this->to_date ) ) {
530
+        if (!empty($this->from_date) || !empty($this->to_date)) {
531 531
             $args['date_query'] = array(
532 532
                 array(
533
-                    'after'     => date( 'Y-n-d 00:00:00', strtotime( $this->from_date ) ),
534
-                    'before'    => date( 'Y-n-d 23:59:59', strtotime( $this->to_date ) ),
533
+                    'after'     => date('Y-n-d 00:00:00', strtotime($this->from_date)),
534
+                    'before'    => date('Y-n-d 23:59:59', strtotime($this->to_date)),
535 535
                     'inclusive' => true
536 536
                 )
537 537
             );
538 538
         }
539 539
 
540
-        $invoices = wpinv_get_invoices( $args );
540
+        $invoices = wpinv_get_invoices($args);
541 541
 
542 542
         $data = array();
543 543
 
544
-        if ( !empty( $invoices ) ) {
545
-            foreach ( $invoices as $invoice ) {
544
+        if (!empty($invoices)) {
545
+            foreach ($invoices as $invoice) {
546 546
                 $items = $this->get_invoice_items($invoice);
547 547
                 $row = array(
548 548
                     'id'            => $invoice->ID,
549 549
                     'number'        => $invoice->get_number(),
550
-                    'date'          => $invoice->get_invoice_date( false ),
551
-                    'due_date'      => $invoice->get_due_date( false ),
550
+                    'date'          => $invoice->get_invoice_date(false),
551
+                    'due_date'      => $invoice->get_due_date(false),
552 552
                     'completed_date'=> $invoice->get_completed_date(),
553
-                    'amount'        => wpinv_round_amount( $invoice->get_total() ),
553
+                    'amount'        => wpinv_round_amount($invoice->get_total()),
554 554
                     'currency'      => $invoice->get_currency(),
555 555
                     'items'         => $items,
556
-                    'status_nicename' => $invoice->get_status( true ),
556
+                    'status_nicename' => $invoice->get_status(true),
557 557
                     'status'        => $invoice->get_status(),
558
-                    'tax'           => $invoice->get_tax() > 0 ? wpinv_round_amount( $invoice->get_tax() ) : '',
559
-                    'discount'      => $invoice->get_discount() > 0 ? wpinv_round_amount( $invoice->get_discount() ) : '',
558
+                    'tax'           => $invoice->get_tax() > 0 ? wpinv_round_amount($invoice->get_tax()) : '',
559
+                    'discount'      => $invoice->get_discount() > 0 ? wpinv_round_amount($invoice->get_discount()) : '',
560 560
                     'user_id'       => $invoice->get_user_id(),
561 561
                     'email'         => $invoice->get_email(),
562 562
                     'first_name'    => $invoice->get_first_name(),
@@ -575,7 +575,7 @@  discard block
 block discarded – undo
575 575
                     'transaction_id'=> $invoice->gateway ? $invoice->get_transaction_id() : '',
576 576
                 );
577 577
 
578
-                $data[] = apply_filters( 'wpinv_export_invoice_row', $row, $invoice );
578
+                $data[] = apply_filters('wpinv_export_invoice_row', $row, $invoice);
579 579
             }
580 580
 
581 581
             return $data;
@@ -591,44 +591,44 @@  discard block
 block discarded – undo
591 591
             'return'   => 'ids',
592 592
         );
593 593
 
594
-        if ( $this->status != 'any' ) {
594
+        if ($this->status != 'any') {
595 595
             $args['status'] = $this->status;
596 596
         } else {
597
-            $args['status'] = array_keys( wpinv_get_invoice_statuses( true ) );
597
+            $args['status'] = array_keys(wpinv_get_invoice_statuses(true));
598 598
         }
599 599
 
600
-        if ( !empty( $this->from_date ) || !empty( $this->to_date ) ) {
600
+        if (!empty($this->from_date) || !empty($this->to_date)) {
601 601
             $args['date_query'] = array(
602 602
                 array(
603
-                    'after'     => date( 'Y-n-d 00:00:00', strtotime( $this->from_date ) ),
604
-                    'before'    => date( 'Y-n-d 23:59:59', strtotime( $this->to_date ) ),
603
+                    'after'     => date('Y-n-d 00:00:00', strtotime($this->from_date)),
604
+                    'before'    => date('Y-n-d 23:59:59', strtotime($this->to_date)),
605 605
                     'inclusive' => true
606 606
                 )
607 607
             );
608 608
         }
609 609
 
610
-        $invoices   = wpinv_get_invoices( $args );
611
-        $total      = !empty( $invoices ) ? count( $invoices ) : 0;
610
+        $invoices   = wpinv_get_invoices($args);
611
+        $total      = !empty($invoices) ? count($invoices) : 0;
612 612
         $status     = 100;
613 613
 
614
-        if ( $total > 0 ) {
615
-            $status = ( ( $this->per_page * $this->step ) / $total ) * 100;
614
+        if ($total > 0) {
615
+            $status = (($this->per_page * $this->step) / $total) * 100;
616 616
         }
617 617
 
618
-        if ( $status > 100 ) {
618
+        if ($status > 100) {
619 619
             $status = 100;
620 620
         }
621 621
 
622 622
         return $status;
623 623
     }
624 624
 
625
-    public function get_invoice_items($invoice){
626
-        if(!$invoice){
625
+    public function get_invoice_items($invoice) {
626
+        if (!$invoice) {
627 627
             return '';
628 628
         }
629 629
 
630 630
         $cart_details = $invoice->get_cart_details();
631
-        if(!empty($cart_details)){
631
+        if (!empty($cart_details)) {
632 632
             $cart_details = maybe_serialize($cart_details);
633 633
         } else {
634 634
             $cart_details = '';
@@ -640,14 +640,14 @@  discard block
 block discarded – undo
640 640
     /**
641 641
      * Returns the periods filter.
642 642
      */
643
-    public function period_filter( $args = array() ) {
643
+    public function period_filter($args = array()) {
644 644
 
645 645
         ob_start();
646 646
 
647 647
         echo '<form id="wpinv-graphs-filter" method="get" style="margin-bottom: 10px;" class="tablenav">';
648 648
         echo '<input type="hidden" name="page" value="wpinv-reports">';
649 649
 
650
-        foreach ( $args as $key => $val ) {
650
+        foreach ($args as $key => $val) {
651 651
             $key = esc_attr($key);
652 652
             $val = esc_attr($val);
653 653
             echo "<input type='hidden' name='$key' value='$val'>";
@@ -656,21 +656,21 @@  discard block
 block discarded – undo
656 656
         echo '<select id="wpinv-graphs-date-options" name="range" style="min-width: 200px;" onChange="this.form.submit()">';
657 657
 
658 658
         $ranges = array(
659
-            'today'        => __( 'Today', 'invoicing' ),
660
-            'yesterday'    => __( 'Yesterday', 'invoicing' ),
661
-            'this_week'    => __( 'This Week', 'invoicing' ),
662
-            'last_week'    => __( 'Last Week', 'invoicing' ),
663
-            '7_days_ago'   => __( 'Last 7 Days', 'invoicing' ),
664
-            '30_days_ago'  => __( 'Last 30 Days', 'invoicing' ),
665
-            'this_month'   => __( 'This Month', 'invoicing' ),
666
-            'this_year'    => __( 'This Year', 'invoicing' ),
667
-            'last_year'    => __( 'Last Year', 'invoicing' ),
659
+            'today'        => __('Today', 'invoicing'),
660
+            'yesterday'    => __('Yesterday', 'invoicing'),
661
+            'this_week'    => __('This Week', 'invoicing'),
662
+            'last_week'    => __('Last Week', 'invoicing'),
663
+            '7_days_ago'   => __('Last 7 Days', 'invoicing'),
664
+            '30_days_ago'  => __('Last 30 Days', 'invoicing'),
665
+            'this_month'   => __('This Month', 'invoicing'),
666
+            'this_year'    => __('This Year', 'invoicing'),
667
+            'last_year'    => __('Last Year', 'invoicing'),
668 668
         );
669 669
 
670
-        $range = isset( $_GET['range'] ) && isset( $ranges[ $_GET['range'] ] ) ? $_GET['range'] : '7_days_ago';
670
+        $range = isset($_GET['range']) && isset($ranges[$_GET['range']]) ? $_GET['range'] : '7_days_ago';
671 671
 
672
-        foreach ( $ranges as $val => $label ) {
673
-            $selected = selected( $range, $val, false );
672
+        foreach ($ranges as $val => $label) {
673
+            $selected = selected($range, $val, false);
674 674
             echo "<option value='$val' $selected>$label</option>";
675 675
         }
676 676
 
@@ -682,28 +682,28 @@  discard block
 block discarded – undo
682 682
     /**
683 683
      * Returns the the current date range.
684 684
      */
685
-    public function get_sql_clauses( $range ) {
685
+    public function get_sql_clauses($range) {
686 686
 
687 687
         $date     = 'CAST(meta.completed_date AS DATE)';
688 688
         $datetime = 'meta.completed_date';
689 689
 
690 690
         // Prepare durations.
691
-        $today                = current_time( 'Y-m-d' );
692
-        $yesterday            = date( 'Y-m-d', strtotime( '-1 day', current_time( 'timestamp' ) ) );
693
-        $sunday               = date( 'Y-m-d', strtotime( 'sunday this week', current_time( 'timestamp' ) ) );
694
-        $monday               = date( 'Y-m-d', strtotime( 'monday this week', current_time( 'timestamp' ) ) );
695
-        $last_sunday          = date( 'Y-m-d', strtotime( 'sunday last week', current_time( 'timestamp' ) ) );
696
-        $last_monday          = date( 'Y-m-d', strtotime( 'monday last week', current_time( 'timestamp' ) ) );
697
-        $seven_days_ago       = date( 'Y-m-d', strtotime( '-7 days', current_time( 'timestamp' ) ) );
698
-        $thirty_days_ago      = date( 'Y-m-d', strtotime( '-30 days', current_time( 'timestamp' ) ) );
699
-        $first_day_month  	  = date( 'Y-m-1', current_time( 'timestamp' ) );
700
-        $last_day_month  	  = date( 'Y-m-t', current_time( 'timestamp' ) );
701
-		$first_day_last_month = date( 'Y-m-d', strtotime( 'first day of last month', current_time( 'timestamp' ) ) );
702
-        $last_day_last_month  = date( 'Y-m-d', strtotime( 'last day of last month', current_time( 'timestamp' ) ) );
703
-        $first_day_year  	  = date( 'Y-1-1', current_time( 'timestamp' ) );
704
-        $last_day_year  	  = date( 'Y-12-31', current_time( 'timestamp' ) );
705
-		$first_day_last_year  = date( 'Y-m-d', strtotime( 'first day of last year', current_time( 'timestamp' ) ) );
706
-		$last_day_last_year   = date( 'Y-m-d', strtotime( 'last day of last year', current_time( 'timestamp' ) ) );
691
+        $today                = current_time('Y-m-d');
692
+        $yesterday            = date('Y-m-d', strtotime('-1 day', current_time('timestamp')));
693
+        $sunday               = date('Y-m-d', strtotime('sunday this week', current_time('timestamp')));
694
+        $monday               = date('Y-m-d', strtotime('monday this week', current_time('timestamp')));
695
+        $last_sunday          = date('Y-m-d', strtotime('sunday last week', current_time('timestamp')));
696
+        $last_monday          = date('Y-m-d', strtotime('monday last week', current_time('timestamp')));
697
+        $seven_days_ago       = date('Y-m-d', strtotime('-7 days', current_time('timestamp')));
698
+        $thirty_days_ago      = date('Y-m-d', strtotime('-30 days', current_time('timestamp')));
699
+        $first_day_month = date('Y-m-1', current_time('timestamp'));
700
+        $last_day_month  	  = date('Y-m-t', current_time('timestamp'));
701
+		$first_day_last_month = date('Y-m-d', strtotime('first day of last month', current_time('timestamp')));
702
+        $last_day_last_month = date('Y-m-d', strtotime('last day of last month', current_time('timestamp')));
703
+        $first_day_year  	  = date('Y-1-1', current_time('timestamp'));
704
+        $last_day_year = date('Y-12-31', current_time('timestamp'));
705
+		$first_day_last_year  = date('Y-m-d', strtotime('first day of last year', current_time('timestamp')));
706
+		$last_day_last_year   = date('Y-m-d', strtotime('last day of last year', current_time('timestamp')));
707 707
 
708 708
         $ranges = array(
709 709
 
@@ -759,21 +759,21 @@  discard block
 block discarded – undo
759 759
 
760 760
         );
761 761
 
762
-        if ( ! isset( $ranges[ $range ] ) ) {
762
+        if (!isset($ranges[$range])) {
763 763
             return $ranges['7_days_ago'];
764 764
         }
765
-        return $ranges[ $range ];
765
+        return $ranges[$range];
766 766
 
767 767
     }
768 768
 
769 769
     /**
770 770
      * Returns the the current date ranges results.
771 771
      */
772
-    public function get_report_results( $range ) {
772
+    public function get_report_results($range) {
773 773
         global $wpdb;
774 774
 
775 775
         $table   = $wpdb->prefix . 'getpaid_invoices';
776
-        $clauses = $this->get_sql_clauses( $range );
776
+        $clauses = $this->get_sql_clauses($range);
777 777
         $sql     = "SELECT
778 778
                 {$clauses[0]} AS completed_date,
779 779
                 SUM( meta.total ) AS total,
@@ -789,30 +789,30 @@  discard block
 block discarded – undo
789 789
             GROUP BY {$clauses[0]}
790 790
         ";
791 791
 
792
-        return $wpdb->get_results( $sql );
792
+        return $wpdb->get_results($sql);
793 793
     }
794 794
 
795 795
     /**
796 796
      * Fill nulls.
797 797
      */
798
-    public function fill_nulls( $data, $range ) {
798
+    public function fill_nulls($data, $range) {
799 799
 
800 800
         $return = array();
801 801
         $time   = current_time('timestamp');
802 802
 
803
-        switch ( $range ) {
803
+        switch ($range) {
804 804
             case 'today' :
805 805
             case 'yesterday' :
806
-                $hour  = 0;
806
+                $hour = 0;
807 807
 
808
-                while ( $hour < 23 ) {
808
+                while ($hour < 23) {
809 809
                     $amount = 0;
810
-                    if ( isset( $data[$hour] ) ) {
811
-                        $amount = floatval( $data[$hour] );
810
+                    if (isset($data[$hour])) {
811
+                        $amount = floatval($data[$hour]);
812 812
                     }
813 813
 
814
-                    $time = strtotime( "$range $hour:00:00" ) * 1000;
815
-                    $return[] = array( $time, $amount );
814
+                    $time = strtotime("$range $hour:00:00") * 1000;
815
+                    $return[] = array($time, $amount);
816 816
                     $hour++;
817 817
                 }
818 818
 
@@ -820,24 +820,24 @@  discard block
 block discarded – undo
820 820
 
821 821
             case 'this_month' :
822 822
             case 'last_month' :
823
-                $_range = str_replace( '_', ' ', $range );
824
-                $month  = date( 'n', strtotime( $_range, $time ) );
825
-                $year   = date( 'Y', strtotime( $_range, $time ) );
823
+                $_range = str_replace('_', ' ', $range);
824
+                $month  = date('n', strtotime($_range, $time));
825
+                $year   = date('Y', strtotime($_range, $time));
826 826
                 $days   = cal_days_in_month(
827
-                    defined( 'CAL_GREGORIAN' ) ? CAL_GREGORIAN : 1,
827
+                    defined('CAL_GREGORIAN') ? CAL_GREGORIAN : 1,
828 828
                     $month,
829 829
                     $year
830 830
                 );
831 831
 
832 832
                 $day = 1;
833
-                while ( $days != $day ) {
833
+                while ($days != $day) {
834 834
                     $amount = 0;
835
-                    if ( isset( $data[$day] ) ) {
836
-                        $amount = floatval( $data[$day] );
835
+                    if (isset($data[$day])) {
836
+                        $amount = floatval($data[$day]);
837 837
                     }
838 838
 
839
-                    $time = strtotime( "$year-$month-$day" ) * 1000;
840
-                    $return[] = array( $time, $amount );
839
+                    $time = strtotime("$year-$month-$day") * 1000;
840
+                    $return[] = array($time, $amount);
841 841
                     $day++;
842 842
                 }
843 843
 
@@ -845,52 +845,52 @@  discard block
 block discarded – undo
845 845
 
846 846
             case 'this_week' :
847 847
             case 'last_week' :
848
-                $_range = str_replace( '_', ' ', $range );
849
-                $days   = array( 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday' );
848
+                $_range = str_replace('_', ' ', $range);
849
+                $days   = array('monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday');
850 850
 
851
-                foreach ( $days as $day ) {
851
+                foreach ($days as $day) {
852 852
 
853 853
                     $amount = 0;
854
-                    if ( isset( $data[ ucfirst( $day ) ] ) ) {
855
-                        $amount = floatval( $data[ ucfirst( $day ) ] );
854
+                    if (isset($data[ucfirst($day)])) {
855
+                        $amount = floatval($data[ucfirst($day)]);
856 856
                     }
857 857
 
858
-                    $time = strtotime( "$_range $day" ) * 1000;
859
-                    $return[] = array( $time, $amount );
858
+                    $time = strtotime("$_range $day") * 1000;
859
+                    $return[] = array($time, $amount);
860 860
                 }
861 861
 
862 862
                 break;
863 863
 
864 864
             case 'this_year' :
865 865
             case 'last_year' :
866
-                $_range = str_replace( '_', ' ', $range );
867
-                $year   = date( 'Y', strtotime( $_range, $time ) );
868
-                $months = array( '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12' );
866
+                $_range = str_replace('_', ' ', $range);
867
+                $year   = date('Y', strtotime($_range, $time));
868
+                $months = array('1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12');
869 869
 
870
-                foreach ( $months as $month ) {
870
+                foreach ($months as $month) {
871 871
 
872 872
                     $amount = 0;
873
-                    if ( isset( $data[$month] ) ) {
874
-                        $amount = floatval( $data[$month] );
873
+                    if (isset($data[$month])) {
874
+                        $amount = floatval($data[$month]);
875 875
                     }
876 876
 
877
-                    $_time     = strtotime("$year-$month-01") * 1000;
878
-                    $return[] = array( $_time, $amount );
877
+                    $_time = strtotime("$year-$month-01") * 1000;
878
+                    $return[] = array($_time, $amount);
879 879
                 }
880 880
 
881 881
                 break;
882 882
             case '30_days_ago' :
883 883
                 $days = 30;
884 884
 
885
-                while ( $days > 1 ) {
885
+                while ($days > 1) {
886 886
                     $amount = 0;
887
-                    $date   = date( 'j', strtotime( "-$days days", $time ) );
888
-                    if ( isset( $data[$date] ) ) {
889
-                        $amount = floatval( $data[$date] );
887
+                    $date   = date('j', strtotime("-$days days", $time));
888
+                    if (isset($data[$date])) {
889
+                        $amount = floatval($data[$date]);
890 890
                     }
891 891
 
892
-                    $_time = strtotime( "-$days days", $time ) * 1000;
893
-                    $return[] = array( $_time, $amount );
892
+                    $_time = strtotime("-$days days", $time) * 1000;
893
+                    $return[] = array($_time, $amount);
894 894
                     $days--;
895 895
                 }
896 896
 
@@ -899,15 +899,15 @@  discard block
 block discarded – undo
899 899
             default:
900 900
                 $days = 7;
901 901
 
902
-                while ( $days > 1 ) {
902
+                while ($days > 1) {
903 903
                     $amount = 0;
904
-                    $date   = date( 'j', strtotime( "-$days days", $time ) );
905
-                    if ( isset( $data[$date] ) ) {
906
-                        $amount = floatval( $data[$date] );
904
+                    $date   = date('j', strtotime("-$days days", $time));
905
+                    if (isset($data[$date])) {
906
+                        $amount = floatval($data[$date]);
907 907
                     }
908 908
 
909
-                    $_time = strtotime( "-$days days", $time ) * 1000;
910
-                    $return[] = array( $_time, $amount );
909
+                    $_time = strtotime("-$days days", $time) * 1000;
910
+                    $return[] = array($_time, $amount);
911 911
                     $days--;
912 912
                 }
913 913
 
@@ -922,33 +922,33 @@  discard block
 block discarded – undo
922 922
      * Retrieves the stats.
923 923
      */
924 924
     public function get_stats() {
925
-        $range     = isset( $_GET['range'] ) ? $_GET['range'] : '7_days_ago';
926
-        $results   = $this->get_report_results( $range );
927
-        $earnings  = wp_list_pluck( $results, 'total', 'completed_date' );
928
-        $taxes     = wp_list_pluck( $results, 'tax', 'completed_date' );
929
-        $discounts = wp_list_pluck( $results, 'discount', 'completed_date' );
930
-        $fees      = wp_list_pluck( $results, 'fees_total', 'completed_date' );
925
+        $range     = isset($_GET['range']) ? $_GET['range'] : '7_days_ago';
926
+        $results   = $this->get_report_results($range);
927
+        $earnings  = wp_list_pluck($results, 'total', 'completed_date');
928
+        $taxes     = wp_list_pluck($results, 'tax', 'completed_date');
929
+        $discounts = wp_list_pluck($results, 'discount', 'completed_date');
930
+        $fees      = wp_list_pluck($results, 'fees_total', 'completed_date');
931 931
 
932 932
         return array(
933 933
 
934 934
             array(
935
-                'label' => __( 'Earnings', 'invoicing' ),
936
-                'data'  => $this->fill_nulls( $earnings, $range ),
935
+                'label' => __('Earnings', 'invoicing'),
936
+                'data'  => $this->fill_nulls($earnings, $range),
937 937
             ),
938 938
 
939 939
             array(
940
-                'label' => __( 'Taxes', 'invoicing' ),
941
-                'data'  => $this->fill_nulls( $taxes, $range ),
940
+                'label' => __('Taxes', 'invoicing'),
941
+                'data'  => $this->fill_nulls($taxes, $range),
942 942
             ),
943 943
 
944 944
             array(
945
-                'label' => __( 'Discounts', 'invoicing' ),
946
-                'data'  => $this->fill_nulls( $discounts, $range ),
945
+                'label' => __('Discounts', 'invoicing'),
946
+                'data'  => $this->fill_nulls($discounts, $range),
947 947
             ),
948 948
 
949 949
             array(
950
-                'label' => __( 'Fees', 'invoicing' ),
951
-                'data'  => $this->fill_nulls( $fees, $range ),
950
+                'label' => __('Fees', 'invoicing'),
951
+                'data'  => $this->fill_nulls($fees, $range),
952 952
             )
953 953
         );
954 954
 
@@ -958,34 +958,34 @@  discard block
 block discarded – undo
958 958
      * Retrieves the time format for stats.
959 959
      */
960 960
     public function get_time_format() {
961
-        $range    = isset( $_GET['range'] ) ? $_GET['range'] : '7_days_ago';
961
+        $range = isset($_GET['range']) ? $_GET['range'] : '7_days_ago';
962 962
 
963
-        switch ( $range ) {
963
+        switch ($range) {
964 964
             case 'today' :
965 965
             case 'yesterday' :
966
-                return array( 'hour', '%h %p' );
966
+                return array('hour', '%h %p');
967 967
                 break;
968 968
 
969 969
             case 'this_month' :
970 970
             case 'last_month' :
971
-                return array( 'day', '%b %d' );
971
+                return array('day', '%b %d');
972 972
                 break;
973 973
 
974 974
             case 'this_week' :
975 975
             case 'last_week' :
976
-                return array( 'day', '%b %d' );
976
+                return array('day', '%b %d');
977 977
                 break;
978 978
 
979 979
             case 'this_year' :
980 980
             case 'last_year' :
981
-                return array( 'month', '%b' );
981
+                return array('month', '%b');
982 982
                 break;
983 983
             case '30_days_ago' :
984
-                return array( 'day', '%b %d' );
984
+                return array('day', '%b %d');
985 985
                 break;
986 986
 
987 987
             default:
988
-                return array( 'day', '%b %d' );
988
+                return array('day', '%b %d');
989 989
                 break;
990 990
 
991 991
         }
@@ -996,11 +996,11 @@  discard block
 block discarded – undo
996 996
      */
997 997
     public function earnings_report() {
998 998
 
999
-        $data        = wp_json_encode( $this->get_stats() );
999
+        $data        = wp_json_encode($this->get_stats());
1000 1000
         $time_format = $this->get_time_format();
1001 1001
         echo '
1002 1002
             <div class="wpinv-report-container">
1003
-                <h3><span>' . __( 'Earnings Over Time', 'invoicing' ) .'</span></h3>
1003
+                <h3><span>' . __('Earnings Over Time', 'invoicing') . '</span></h3>
1004 1004
                 ' . $this->period_filter() . '
1005 1005
                 <div id="wpinv_report_graph" style="height: 450px;"></div>
1006 1006
             </div>
@@ -1009,12 +1009,12 @@  discard block
 block discarded – undo
1009 1009
                 jQuery(document).ready( function() {
1010 1010
                     jQuery.plot(
1011 1011
                         jQuery("#wpinv_report_graph"),
1012
-                        ' . $data .',
1012
+                        ' . $data . ',
1013 1013
                         {
1014 1014
                             xaxis:{
1015 1015
                                 mode: "time",
1016
-                                timeformat: "' . $time_format[1] .'",
1017
-                                minTickSize: [0.5, "' . $time_format[0] .'"]
1016
+                                timeformat: "' . $time_format[1] . '",
1017
+                                minTickSize: [0.5, "' . $time_format[0] . '"]
1018 1018
                             },
1019 1019
 
1020 1020
                             yaxis: {
@@ -1042,7 +1042,7 @@  discard block
 block discarded – undo
1042 1042
      * Displays the gateways report.
1043 1043
      */
1044 1044
     public function gateways_report() {
1045
-        require_once( WPINV_PLUGIN_DIR . 'includes/admin/class-wpinv-gateways-report-table.php' );
1045
+        require_once(WPINV_PLUGIN_DIR . 'includes/admin/class-wpinv-gateways-report-table.php');
1046 1046
 
1047 1047
         $table = new WPInv_Gateways_Report_Table();
1048 1048
         $table->prepare_items();
@@ -1053,12 +1053,12 @@  discard block
 block discarded – undo
1053 1053
      * Displays the items report.
1054 1054
      */
1055 1055
     public function items_report() {
1056
-        require_once( WPINV_PLUGIN_DIR . 'includes/admin/class-wpinv-items-report-table.php' );
1056
+        require_once(WPINV_PLUGIN_DIR . 'includes/admin/class-wpinv-items-report-table.php');
1057 1057
 
1058 1058
         $table = new WPInv_Items_Report_Table();
1059 1059
         $table->prepare_items();
1060 1060
         $table->display();
1061
-        echo __( '* Items with no sales not shown.', 'invoicing' );
1061
+        echo __('* Items with no sales not shown.', 'invoicing');
1062 1062
     }
1063 1063
 
1064 1064
     /**
@@ -1068,27 +1068,27 @@  discard block
 block discarded – undo
1068 1068
      */
1069 1069
     public function tax_report() {
1070 1070
 
1071
-        require_once( WPINV_PLUGIN_DIR . 'includes/admin/class-wpinv-taxes-report-table.php' );
1071
+        require_once(WPINV_PLUGIN_DIR . 'includes/admin/class-wpinv-taxes-report-table.php');
1072 1072
         $table = new WPInv_Taxes_Reports_Table();
1073 1073
         $table->prepare_items();
1074
-        $year = isset( $_GET['year'] ) ? absint( $_GET['year'] ) : date( 'Y' );
1074
+        $year = isset($_GET['year']) ? absint($_GET['year']) : date('Y');
1075 1075
         ?>
1076 1076
 
1077 1077
         <div class="metabox-holder" style="padding-top: 0;">
1078 1078
             <div class="postbox">
1079
-                <h3><span><?php _e('Tax Report','invoicing' ); ?></span></h3>
1079
+                <h3><span><?php _e('Tax Report', 'invoicing'); ?></span></h3>
1080 1080
                 <div class="inside">
1081
-                    <p><?php _e( 'This report shows the total amount collected in sales tax for the given year.', 'invoicing' ); ?></p>
1081
+                    <p><?php _e('This report shows the total amount collected in sales tax for the given year.', 'invoicing'); ?></p>
1082 1082
                     <form method="get">
1083
-                        <span><?php echo $year; ?></span>: <strong><?php echo wpinv_sales_tax_for_year( $year ); ?></strong>&nbsp;&mdash;&nbsp;
1083
+                        <span><?php echo $year; ?></span>: <strong><?php echo wpinv_sales_tax_for_year($year); ?></strong>&nbsp;&mdash;&nbsp;
1084 1084
                         <select name="year">
1085
-                            <?php for ( $i = 2014; $i <= date( 'Y' ); $i++ ) : ?>
1086
-                            <option value="<?php echo $i; ?>"<?php selected( $year, $i ); ?>><?php echo $i; ?></option>
1085
+                            <?php for ($i = 2014; $i <= date('Y'); $i++) : ?>
1086
+                            <option value="<?php echo $i; ?>"<?php selected($year, $i); ?>><?php echo $i; ?></option>
1087 1087
                             <?php endfor; ?>
1088 1088
                         </select>
1089 1089
                         <input type="hidden" name="view" value="taxes" />
1090 1090
                         <input type="hidden" name="page" value="wpinv-reports"/>
1091
-                        <?php submit_button( __( 'Submit', 'invoicing' ), 'secondary', 'submit', false ); ?>
1091
+                        <?php submit_button(__('Submit', 'invoicing'), 'secondary', 'submit', false); ?>
1092 1092
                     </form>
1093 1093
                 </div><!-- .inside -->
1094 1094
             </div><!-- .postbox -->
Please login to merge, or discard this patch.
widgets/checkout.php 2 patches
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'          => __('GetPaid > Checkout','invoicing'),
26
+            'name'          => __('GetPaid > Checkout', 'invoicing'),
27 27
             'widget_ops'    => array(
28 28
                 'classname'   => 'getpaid-checkout bsui',
29
-                'description' => esc_html__('Displays a checkout form.','invoicing'),
29
+                'description' => esc_html__('Displays a 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
 	    return wpinv_checkout_form();
59 59
     }
60 60
 
Please login to merge, or discard this patch.
Indentation   +10 added lines, -10 removed lines patch added patch discarded remove patch
@@ -45,17 +45,17 @@
 block discarded – undo
45 45
         parent::__construct( $options );
46 46
     }
47 47
 
48
-	/**
49
-	 * The Super block output function.
50
-	 *
51
-	 * @param array $args
52
-	 * @param array $widget_args
53
-	 * @param string $content
54
-	 *
55
-	 * @return mixed|string|bool
56
-	 */
48
+    /**
49
+     * The Super block output function.
50
+     *
51
+     * @param array $args
52
+     * @param array $widget_args
53
+     * @param string $content
54
+     *
55
+     * @return mixed|string|bool
56
+     */
57 57
     public function output( $args = array(), $widget_args = array(), $content = '' ) {
58
-	    return wpinv_checkout_form();
58
+        return wpinv_checkout_form();
59 59
     }
60 60
 
61 61
 }
Please login to merge, or discard this patch.
includes/class-wpinv-legacy-invoice.php 3 patches
Indentation   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -1355,10 +1355,10 @@
 block discarded – undo
1355 1355
                         $data['cart_details'][$key]['price']      = wpinv_round_amount( $item_total );
1356 1356
                     }
1357 1357
 
1358
-	                $total = $data['subtotal'] - $data['discount'] + $data['tax'];
1359
-	                if ( $total < 0 ) {
1360
-		                $total = 0;
1361
-	                }
1358
+                    $total = $data['subtotal'] - $data['discount'] + $data['tax'];
1359
+                    if ( $total < 0 ) {
1360
+                        $total = 0;
1361
+                    }
1362 1362
 
1363 1363
                     $data['subtotal'] = wpinv_round_amount( $cart_subtotal );
1364 1364
                     $data['discount'] = wpinv_round_amount( $cart_discount );
Please login to merge, or discard this patch.
Braces   +3 added lines, -2 removed lines patch added patch discarded remove patch
@@ -974,8 +974,9 @@
 block discarded – undo
974 974
             return false;
975 975
         }
976 976
 
977
-        if ( empty( $this->ID ) )
978
-            return false;
977
+        if ( empty( $this->ID ) ) {
978
+                    return false;
979
+        }
979 980
         
980 981
         if ( ( ( is_user_logged_in() && wpinv_current_user_can_manage_invoicing() ) || $added_by_user ) && !$system ) {
981 982
             $user                 = get_user_by( 'id', get_current_user_id() );
Please login to merge, or discard this patch.
Spacing   +626 added lines, -626 removed lines patch added patch discarded remove patch
@@ -7,8 +7,8 @@  discard block
 block discarded – undo
7 7
  */
8 8
  
9 9
 // MUST have WordPress.
10
-if ( !defined( 'WPINC' ) ) {
11
-    exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) );
10
+if (!defined('WPINC')) {
11
+    exit('Do NOT access this file directly: ' . basename(__FILE__));
12 12
 }
13 13
 
14 14
 final class WPInv_Legacy_Invoice {
@@ -16,7 +16,7 @@  discard block
 block discarded – undo
16 16
     /**
17 17
      * Invoice id.
18 18
      */
19
-    public $ID  = 0;
19
+    public $ID = 0;
20 20
 
21 21
     /**
22 22
      * The title of the invoice. Usually the invoice number.
@@ -132,7 +132,7 @@  discard block
 block discarded – undo
132 132
     /**
133 133
      * The invoice status.
134 134
      */
135
-    public $status      = 'wpi-pending';
135
+    public $status = 'wpi-pending';
136 136
 
137 137
     /**
138 138
      * Same as self::$status.
@@ -259,17 +259,17 @@  discard block
 block discarded – undo
259 259
      */
260 260
     public $parent_invoice = 0;
261 261
     
262
-    public function __construct( $invoice_id = false ) {
263
-        if( empty( $invoice_id ) ) {
262
+    public function __construct($invoice_id = false) {
263
+        if (empty($invoice_id)) {
264 264
             return false;
265 265
         }
266 266
 
267
-        $this->setup_invoice( $invoice_id );
267
+        $this->setup_invoice($invoice_id);
268 268
     }
269 269
 
270
-    public function get( $key ) {
271
-        if ( method_exists( $this, 'get_' . $key ) ) {
272
-            $value = call_user_func( array( $this, 'get_' . $key ) );
270
+    public function get($key) {
271
+        if (method_exists($this, 'get_' . $key)) {
272
+            $value = call_user_func(array($this, 'get_' . $key));
273 273
         } else {
274 274
             $value = $this->$key;
275 275
         }
@@ -277,51 +277,51 @@  discard block
 block discarded – undo
277 277
         return $value;
278 278
     }
279 279
 
280
-    public function set( $key, $value ) {
281
-        $ignore = array( 'items', 'cart_details', 'fees', '_ID' );
280
+    public function set($key, $value) {
281
+        $ignore = array('items', 'cart_details', 'fees', '_ID');
282 282
 
283
-        if ( $key === 'status' ) {
283
+        if ($key === 'status') {
284 284
             $this->old_status = $this->status;
285 285
         }
286 286
 
287
-        if ( ! in_array( $key, $ignore ) ) {
288
-            $this->pending[ $key ] = $value;
287
+        if (!in_array($key, $ignore)) {
288
+            $this->pending[$key] = $value;
289 289
         }
290 290
 
291
-        if( '_ID' !== $key ) {
291
+        if ('_ID' !== $key) {
292 292
             $this->$key = $value;
293 293
         }
294 294
     }
295 295
 
296
-    public function _isset( $name ) {
297
-        if ( property_exists( $this, $name) ) {
298
-            return false === empty( $this->$name );
296
+    public function _isset($name) {
297
+        if (property_exists($this, $name)) {
298
+            return false === empty($this->$name);
299 299
         } else {
300 300
             return null;
301 301
         }
302 302
     }
303 303
 
304
-    private function setup_invoice( $invoice_id ) {
304
+    private function setup_invoice($invoice_id) {
305 305
         $this->pending = array();
306 306
 
307
-        if ( empty( $invoice_id ) ) {
307
+        if (empty($invoice_id)) {
308 308
             return false;
309 309
         }
310 310
 
311
-        $invoice = get_post( $invoice_id );
311
+        $invoice = get_post($invoice_id);
312 312
 
313
-        if( !$invoice || is_wp_error( $invoice ) ) {
313
+        if (!$invoice || is_wp_error($invoice)) {
314 314
             return false;
315 315
         }
316 316
 
317
-        if( !('wpi_invoice' == $invoice->post_type OR 'wpi_quote' == $invoice->post_type) ) {
317
+        if (!('wpi_invoice' == $invoice->post_type OR 'wpi_quote' == $invoice->post_type)) {
318 318
             return false;
319 319
         }
320 320
 
321
-        do_action( 'wpinv_pre_setup_invoice', $this, $invoice_id );
321
+        do_action('wpinv_pre_setup_invoice', $this, $invoice_id);
322 322
 
323 323
         // Primary Identifier
324
-        $this->ID              = absint( $invoice_id );
324
+        $this->ID              = absint($invoice_id);
325 325
         $this->post_type       = $invoice->post_type;
326 326
 
327 327
         // We have a payment, get the generic payment_meta item to reduce calls to it
@@ -331,14 +331,14 @@  discard block
 block discarded – undo
331 331
         $this->completed_date  = $this->setup_completed_date();
332 332
         $this->status          = $invoice->post_status;
333 333
 
334
-        if ( 'future' == $this->status ) {
334
+        if ('future' == $this->status) {
335 335
             $this->status = 'publish';
336 336
         }
337 337
 
338 338
         $this->post_status     = $this->status;
339 339
         $this->mode            = $this->setup_mode();
340 340
         $this->parent_invoice  = $invoice->post_parent;
341
-        $this->post_name       = $this->setup_post_name( $invoice );
341
+        $this->post_name       = $this->setup_post_name($invoice);
342 342
         $this->status_nicename = $this->setup_status_nicename($invoice->post_status);
343 343
 
344 344
         // Items
@@ -361,8 +361,8 @@  discard block
 block discarded – undo
361 361
         
362 362
         // User based
363 363
         $this->ip              = $this->setup_ip();
364
-        $this->user_id         = !empty( $invoice->post_author ) ? $invoice->post_author : get_current_user_id();///$this->setup_user_id();
365
-        $this->email           = get_the_author_meta( 'email', $this->user_id );
364
+        $this->user_id         = !empty($invoice->post_author) ? $invoice->post_author : get_current_user_id(); ///$this->setup_user_id();
365
+        $this->email           = get_the_author_meta('email', $this->user_id);
366 366
 
367 367
         $this->user_info       = $this->setup_user_info();
368 368
 
@@ -371,7 +371,7 @@  discard block
 block discarded – undo
371 371
         $this->company         = $this->user_info['company'];
372 372
         $this->vat_number      = $this->user_info['vat_number'];
373 373
         $this->vat_rate        = $this->user_info['vat_rate'];
374
-        $this->adddress_confirmed  = $this->user_info['adddress_confirmed'];
374
+        $this->adddress_confirmed = $this->user_info['adddress_confirmed'];
375 375
         $this->address         = $this->user_info['address'];
376 376
         $this->city            = $this->user_info['city'];
377 377
         $this->country         = $this->user_info['country'];
@@ -386,39 +386,39 @@  discard block
 block discarded – undo
386 386
         // Other Identifiers
387 387
         $this->key             = $this->setup_invoice_key();
388 388
         $this->number          = $this->setup_invoice_number();
389
-        $this->title           = !empty( $invoice->post_title ) ? $invoice->post_title : $this->number;
389
+        $this->title           = !empty($invoice->post_title) ? $invoice->post_title : $this->number;
390 390
         
391
-        $this->full_name       = trim( $this->first_name . ' '. $this->last_name );
391
+        $this->full_name       = trim($this->first_name . ' ' . $this->last_name);
392 392
         
393 393
         // Allow extensions to add items to this object via hook
394
-        do_action( 'wpinv_setup_invoice', $this, $invoice_id );
394
+        do_action('wpinv_setup_invoice', $this, $invoice_id);
395 395
 
396 396
         return true;
397 397
     }
398 398
 
399
-    private function setup_status_nicename( $status ) {
400
-        $all_invoice_statuses  = wpinv_get_invoice_statuses( true, true, $this );
399
+    private function setup_status_nicename($status) {
400
+        $all_invoice_statuses = wpinv_get_invoice_statuses(true, true, $this);
401 401
 
402
-        if ( $this->is_quote() && class_exists( 'Wpinv_Quotes_Shared' ) ) {
403
-            $all_invoice_statuses  = Wpinv_Quotes_Shared::wpinv_get_quote_statuses();
402
+        if ($this->is_quote() && class_exists('Wpinv_Quotes_Shared')) {
403
+            $all_invoice_statuses = Wpinv_Quotes_Shared::wpinv_get_quote_statuses();
404 404
         }
405
-        $status   = isset( $all_invoice_statuses[$status] ) ? $all_invoice_statuses[$status] : __( $status, 'invoicing' );
405
+        $status = isset($all_invoice_statuses[$status]) ? $all_invoice_statuses[$status] : __($status, 'invoicing');
406 406
 
407
-        return apply_filters( 'setup_status_nicename', $status );
407
+        return apply_filters('setup_status_nicename', $status);
408 408
     }
409 409
 
410
-    private function setup_post_name( $post = NULL ) {
410
+    private function setup_post_name($post = NULL) {
411 411
         global $wpdb;
412 412
         
413 413
         $post_name = '';
414 414
         
415
-        if ( !empty( $post ) ) {
416
-            if( !empty( $post->post_name ) ) {
415
+        if (!empty($post)) {
416
+            if (!empty($post->post_name)) {
417 417
                 $post_name = $post->post_name;
418
-            } else if ( !empty( $post->ID ) ) {
419
-                $post_name = wpinv_generate_post_name( $post->ID );
418
+            } else if (!empty($post->ID)) {
419
+                $post_name = wpinv_generate_post_name($post->ID);
420 420
 
421
-                $wpdb->update( $wpdb->posts, array( 'post_name' => $post_name ), array( 'ID' => $post->ID ) );
421
+                $wpdb->update($wpdb->posts, array('post_name' => $post_name), array('ID' => $post->ID));
422 422
             }
423 423
         }
424 424
 
@@ -426,12 +426,12 @@  discard block
 block discarded – undo
426 426
     }
427 427
     
428 428
     private function setup_due_date() {
429
-        $due_date = $this->get_meta( '_wpinv_due_date' );
429
+        $due_date = $this->get_meta('_wpinv_due_date');
430 430
         
431
-        if ( empty( $due_date ) ) {
432
-            $overdue_time = strtotime( $this->date ) + ( DAY_IN_SECONDS * absint( wpinv_get_option( 'overdue_days' ) ) );
433
-            $due_date = date_i18n( 'Y-m-d', $overdue_time );
434
-        } else if ( $due_date == 'none' ) {
431
+        if (empty($due_date)) {
432
+            $overdue_time = strtotime($this->date) + (DAY_IN_SECONDS * absint(wpinv_get_option('overdue_days')));
433
+            $due_date = date_i18n('Y-m-d', $overdue_time);
434
+        } else if ($due_date == 'none') {
435 435
             $due_date = '';
436 436
         }
437 437
         
@@ -439,67 +439,67 @@  discard block
 block discarded – undo
439 439
     }
440 440
     
441 441
     private function setup_completed_date() {
442
-        $invoice = get_post( $this->ID );
442
+        $invoice = get_post($this->ID);
443 443
 
444
-        if ( 'wpi-pending' == $invoice->post_status || 'preapproved' == $invoice->post_status ) {
444
+        if ('wpi-pending' == $invoice->post_status || 'preapproved' == $invoice->post_status) {
445 445
             return false; // This invoice was never paid
446 446
         }
447 447
 
448
-        $date = ( $date = $this->get_meta( '_wpinv_completed_date', true ) ) ? $date : $invoice->modified_date;
448
+        $date = ($date = $this->get_meta('_wpinv_completed_date', true)) ? $date : $invoice->modified_date;
449 449
 
450 450
         return $date;
451 451
     }
452 452
     
453 453
     private function setup_cart_details() {
454
-        $cart_details = isset( $this->payment_meta['cart_details'] ) ? maybe_unserialize( $this->payment_meta['cart_details'] ) : array();
454
+        $cart_details = isset($this->payment_meta['cart_details']) ? maybe_unserialize($this->payment_meta['cart_details']) : array();
455 455
         return $cart_details;
456 456
     }
457 457
     
458 458
     public function array_convert() {
459
-        return get_object_vars( $this );
459
+        return get_object_vars($this);
460 460
     }
461 461
     
462 462
     private function setup_items() {
463
-        $items = isset( $this->payment_meta['items'] ) ? maybe_unserialize( $this->payment_meta['items'] ) : array();
463
+        $items = isset($this->payment_meta['items']) ? maybe_unserialize($this->payment_meta['items']) : array();
464 464
         return $items;
465 465
     }
466 466
     
467 467
     private function setup_fees() {
468
-        $payment_fees = isset( $this->payment_meta['fees'] ) ? $this->payment_meta['fees'] : array();
468
+        $payment_fees = isset($this->payment_meta['fees']) ? $this->payment_meta['fees'] : array();
469 469
         return $payment_fees;
470 470
     }
471 471
         
472 472
     private function setup_currency() {
473
-        $currency = isset( $this->payment_meta['currency'] ) ? $this->payment_meta['currency'] : apply_filters( 'wpinv_currency_default', wpinv_get_currency(), $this );
473
+        $currency = isset($this->payment_meta['currency']) ? $this->payment_meta['currency'] : apply_filters('wpinv_currency_default', wpinv_get_currency(), $this);
474 474
         return $currency;
475 475
     }
476 476
     
477 477
     private function setup_discount() {
478 478
         //$discount = $this->get_meta( '_wpinv_discount', true );
479
-        $discount = (float)$this->subtotal - ( (float)$this->total - (float)$this->tax - (float)$this->fees_total );
480
-        if ( $discount < 0 ) {
479
+        $discount = (float) $this->subtotal - ((float) $this->total - (float) $this->tax - (float) $this->fees_total);
480
+        if ($discount < 0) {
481 481
             $discount = 0;
482 482
         }
483
-        $discount = wpinv_round_amount( $discount );
483
+        $discount = wpinv_round_amount($discount);
484 484
         
485 485
         return $discount;
486 486
     }
487 487
     
488 488
     private function setup_discount_code() {
489
-        $discount_code = !empty( $this->discounts ) ? $this->discounts : $this->get_meta( '_wpinv_discount_code', true );
489
+        $discount_code = !empty($this->discounts) ? $this->discounts : $this->get_meta('_wpinv_discount_code', true);
490 490
         return $discount_code;
491 491
     }
492 492
     
493 493
     private function setup_tax() {
494 494
 
495
-        $tax = $this->get_meta( '_wpinv_tax', true );
495
+        $tax = $this->get_meta('_wpinv_tax', true);
496 496
 
497 497
         // We don't have tax as it's own meta and no meta was passed
498
-        if ( '' === $tax ) {            
499
-            $tax = isset( $this->payment_meta['tax'] ) ? $this->payment_meta['tax'] : 0;
498
+        if ('' === $tax) {            
499
+            $tax = isset($this->payment_meta['tax']) ? $this->payment_meta['tax'] : 0;
500 500
         }
501 501
         
502
-        if ( $tax < 0 || ! $this->is_taxable() ) {
502
+        if ($tax < 0 || !$this->is_taxable()) {
503 503
             $tax = 0;
504 504
         }
505 505
 
@@ -510,16 +510,16 @@  discard block
 block discarded – undo
510 510
      * If taxes are enabled, allow users to enable/disable taxes per invoice.
511 511
      */
512 512
     private function setup_is_taxable() {
513
-        return (int) $this->get_meta( '_wpinv_disable_taxes', true );
513
+        return (int) $this->get_meta('_wpinv_disable_taxes', true);
514 514
     }
515 515
 
516 516
     private function setup_subtotal() {
517 517
         $subtotal     = 0;
518 518
         $cart_details = $this->cart_details;
519 519
 
520
-        if ( is_array( $cart_details ) ) {
521
-            foreach ( $cart_details as $item ) {
522
-                if ( isset( $item['subtotal'] ) ) {
520
+        if (is_array($cart_details)) {
521
+            foreach ($cart_details as $item) {
522
+                if (isset($item['subtotal'])) {
523 523
                     $subtotal += $item['subtotal'];
524 524
                 }
525 525
             }
@@ -533,23 +533,23 @@  discard block
 block discarded – undo
533 533
     }
534 534
 
535 535
     private function setup_discounts() {
536
-        $discounts = ! empty( $this->payment_meta['user_info']['discount'] ) ? $this->payment_meta['user_info']['discount'] : array();
536
+        $discounts = !empty($this->payment_meta['user_info']['discount']) ? $this->payment_meta['user_info']['discount'] : array();
537 537
         return $discounts;
538 538
     }
539 539
     
540 540
     private function setup_total() {
541
-        $amount = $this->get_meta( '_wpinv_total', true );
541
+        $amount = $this->get_meta('_wpinv_total', true);
542 542
 
543
-        if ( empty( $amount ) && '0.00' != $amount ) {
544
-            $meta   = $this->get_meta( '_wpinv_payment_meta', true );
545
-            $meta   = maybe_unserialize( $meta );
543
+        if (empty($amount) && '0.00' != $amount) {
544
+            $meta   = $this->get_meta('_wpinv_payment_meta', true);
545
+            $meta   = maybe_unserialize($meta);
546 546
 
547
-            if ( isset( $meta['amount'] ) ) {
547
+            if (isset($meta['amount'])) {
548 548
                 $amount = $meta['amount'];
549 549
             }
550 550
         }
551 551
 
552
-        if($amount < 0){
552
+        if ($amount < 0) {
553 553
             $amount = 0;
554 554
         }
555 555
 
@@ -557,13 +557,13 @@  discard block
 block discarded – undo
557 557
     }
558 558
     
559 559
     private function setup_mode() {
560
-        return $this->get_meta( '_wpinv_mode' );
560
+        return $this->get_meta('_wpinv_mode');
561 561
     }
562 562
 
563 563
     private function setup_gateway() {
564
-        $gateway = $this->get_meta( '_wpinv_gateway' );
564
+        $gateway = $this->get_meta('_wpinv_gateway');
565 565
         
566
-        if ( empty( $gateway ) && 'publish' === $this->status ) {
566
+        if (empty($gateway) && 'publish' === $this->status) {
567 567
             $gateway = 'manual';
568 568
         }
569 569
         
@@ -571,23 +571,23 @@  discard block
 block discarded – undo
571 571
     }
572 572
 
573 573
     private function setup_gateway_title() {
574
-        $gateway_title = wpinv_get_gateway_checkout_label( $this->gateway );
574
+        $gateway_title = wpinv_get_gateway_checkout_label($this->gateway);
575 575
         return $gateway_title;
576 576
     }
577 577
 
578 578
     private function setup_transaction_id() {
579
-        $transaction_id = $this->get_meta( '_wpinv_transaction_id' );
579
+        $transaction_id = $this->get_meta('_wpinv_transaction_id');
580 580
 
581
-        if ( empty( $transaction_id ) || (int) $transaction_id === (int) $this->ID ) {
581
+        if (empty($transaction_id) || (int) $transaction_id === (int) $this->ID) {
582 582
             $gateway        = $this->gateway;
583
-            $transaction_id = apply_filters( 'wpinv_get_invoice_transaction_id-' . $gateway, $this->ID );
583
+            $transaction_id = apply_filters('wpinv_get_invoice_transaction_id-' . $gateway, $this->ID);
584 584
         }
585 585
 
586 586
         return $transaction_id;
587 587
     }
588 588
 
589 589
     private function setup_ip() {
590
-        $ip = $this->get_meta( '_wpinv_user_ip' );
590
+        $ip = $this->get_meta('_wpinv_user_ip');
591 591
         return $ip;
592 592
     }
593 593
 
@@ -597,62 +597,62 @@  discard block
 block discarded – undo
597 597
     ///}
598 598
         
599 599
     private function setup_first_name() {
600
-        $first_name = $this->get_meta( '_wpinv_first_name' );
600
+        $first_name = $this->get_meta('_wpinv_first_name');
601 601
         return $first_name;
602 602
     }
603 603
     
604 604
     private function setup_last_name() {
605
-        $last_name = $this->get_meta( '_wpinv_last_name' );
605
+        $last_name = $this->get_meta('_wpinv_last_name');
606 606
         return $last_name;
607 607
     }
608 608
     
609 609
     private function setup_company() {
610
-        $company = $this->get_meta( '_wpinv_company' );
610
+        $company = $this->get_meta('_wpinv_company');
611 611
         return $company;
612 612
     }
613 613
     
614 614
     private function setup_vat_number() {
615
-        $vat_number = $this->get_meta( '_wpinv_vat_number' );
615
+        $vat_number = $this->get_meta('_wpinv_vat_number');
616 616
         return $vat_number;
617 617
     }
618 618
     
619 619
     private function setup_vat_rate() {
620
-        $vat_rate = $this->get_meta( '_wpinv_vat_rate' );
620
+        $vat_rate = $this->get_meta('_wpinv_vat_rate');
621 621
         return $vat_rate;
622 622
     }
623 623
     
624 624
     private function setup_adddress_confirmed() {
625
-        $adddress_confirmed = $this->get_meta( '_wpinv_adddress_confirmed' );
625
+        $adddress_confirmed = $this->get_meta('_wpinv_adddress_confirmed');
626 626
         return $adddress_confirmed;
627 627
     }
628 628
     
629 629
     private function setup_phone() {
630
-        $phone = $this->get_meta( '_wpinv_phone' );
630
+        $phone = $this->get_meta('_wpinv_phone');
631 631
         return $phone;
632 632
     }
633 633
     
634 634
     private function setup_address() {
635
-        $address = $this->get_meta( '_wpinv_address', true );
635
+        $address = $this->get_meta('_wpinv_address', true);
636 636
         return $address;
637 637
     }
638 638
     
639 639
     private function setup_city() {
640
-        $city = $this->get_meta( '_wpinv_city', true );
640
+        $city = $this->get_meta('_wpinv_city', true);
641 641
         return $city;
642 642
     }
643 643
     
644 644
     private function setup_country() {
645
-        $country = $this->get_meta( '_wpinv_country', true );
645
+        $country = $this->get_meta('_wpinv_country', true);
646 646
         return $country;
647 647
     }
648 648
     
649 649
     private function setup_state() {
650
-        $state = $this->get_meta( '_wpinv_state', true );
650
+        $state = $this->get_meta('_wpinv_state', true);
651 651
         return $state;
652 652
     }
653 653
     
654 654
     private function setup_zip() {
655
-        $zip = $this->get_meta( '_wpinv_zip', true );
655
+        $zip = $this->get_meta('_wpinv_zip', true);
656 656
         return $zip;
657 657
     }
658 658
 
@@ -661,7 +661,7 @@  discard block
 block discarded – undo
661 661
             'user_id'        => $this->user_id,
662 662
             'first_name'     => $this->first_name,
663 663
             'last_name'      => $this->last_name,
664
-            'email'          => get_the_author_meta( 'email', $this->user_id ),
664
+            'email'          => get_the_author_meta('email', $this->user_id),
665 665
             'phone'          => $this->phone,
666 666
             'address'        => $this->address,
667 667
             'city'           => $this->city,
@@ -676,12 +676,12 @@  discard block
 block discarded – undo
676 676
         );
677 677
         
678 678
         $user_info = array();
679
-        if ( isset( $this->payment_meta['user_info'] ) ) {
680
-            $user_info = maybe_unserialize( $this->payment_meta['user_info'] );
679
+        if (isset($this->payment_meta['user_info'])) {
680
+            $user_info = maybe_unserialize($this->payment_meta['user_info']);
681 681
             
682
-            if ( !empty( $user_info ) && isset( $user_info['user_id'] ) && $post = get_post( $this->ID ) ) {
682
+            if (!empty($user_info) && isset($user_info['user_id']) && $post = get_post($this->ID)) {
683 683
                 $this->user_id = $post->post_author;
684
-                $this->email = get_the_author_meta( 'email', $this->user_id );
684
+                $this->email = get_the_author_meta('email', $this->user_id);
685 685
                 
686 686
                 $user_info['user_id'] = $this->user_id;
687 687
                 $user_info['email'] = $this->email;
@@ -690,13 +690,13 @@  discard block
 block discarded – undo
690 690
             }
691 691
         }
692 692
         
693
-        $user_info    = wp_parse_args( $user_info, $defaults );
693
+        $user_info = wp_parse_args($user_info, $defaults);
694 694
         
695 695
         // Get the user, but only if it's been created
696
-        $user = get_userdata( $this->user_id );
696
+        $user = get_userdata($this->user_id);
697 697
         
698
-        if ( !empty( $user ) && $user->ID > 0 ) {
699
-            if ( empty( $user_info ) ) {
698
+        if (!empty($user) && $user->ID > 0) {
699
+            if (empty($user_info)) {
700 700
                 $user_info = array(
701 701
                     'user_id'    => $user->ID,
702 702
                     'first_name' => $user->first_name,
@@ -705,23 +705,23 @@  discard block
 block discarded – undo
705 705
                     'discount'   => '',
706 706
                 );
707 707
             } else {
708
-                foreach ( $user_info as $key => $value ) {
709
-                    if ( ! empty( $value ) ) {
708
+                foreach ($user_info as $key => $value) {
709
+                    if (!empty($value)) {
710 710
                         continue;
711 711
                     }
712 712
 
713
-                    switch( $key ) {
713
+                    switch ($key) {
714 714
                         case 'user_id':
715
-                            $user_info[ $key ] = $user->ID;
715
+                            $user_info[$key] = $user->ID;
716 716
                             break;
717 717
                         case 'first_name':
718
-                            $user_info[ $key ] = $user->first_name;
718
+                            $user_info[$key] = $user->first_name;
719 719
                             break;
720 720
                         case 'last_name':
721
-                            $user_info[ $key ] = $user->last_name;
721
+                            $user_info[$key] = $user->last_name;
722 722
                             break;
723 723
                         case 'email':
724
-                            $user_info[ $key ] = $user->user_email;
724
+                            $user_info[$key] = $user->user_email;
725 725
                             break;
726 726
                     }
727 727
                 }
@@ -732,25 +732,25 @@  discard block
 block discarded – undo
732 732
     }
733 733
 
734 734
     private function setup_invoice_key() {
735
-        $key = $this->get_meta( '_wpinv_key', true );
735
+        $key = $this->get_meta('_wpinv_key', true);
736 736
         
737 737
         return $key;
738 738
     }
739 739
 
740 740
     private function setup_invoice_number() {
741
-        $number = $this->get_meta( '_wpinv_number', true );
741
+        $number = $this->get_meta('_wpinv_number', true);
742 742
 
743
-        if ( !$number ) {
743
+        if (!$number) {
744 744
             $number = $this->ID;
745 745
 
746
-            if ( $this->status == 'auto-draft' ) {
747
-                if ( wpinv_sequential_number_active( $this->post_type ) ) {
748
-                    $next_number = wpinv_get_next_invoice_number( $this->post_type );
746
+            if ($this->status == 'auto-draft') {
747
+                if (wpinv_sequential_number_active($this->post_type)) {
748
+                    $next_number = wpinv_get_next_invoice_number($this->post_type);
749 749
                     $number      = $next_number;
750 750
                 }
751 751
             }
752 752
             
753
-            $number = wpinv_format_invoice_number( $number, $this->post_type );
753
+            $number = wpinv_format_invoice_number($number, $this->post_type);
754 754
         }
755 755
 
756 756
         return $number;
@@ -759,10 +759,10 @@  discard block
 block discarded – undo
759 759
     private function insert_invoice() {
760 760
         global $wpdb;
761 761
 
762
-        if ( empty( $this->post_type ) ) {
763
-            if ( !empty( $this->ID ) && $post_type = get_post_type( $this->ID ) ) {
762
+        if (empty($this->post_type)) {
763
+            if (!empty($this->ID) && $post_type = get_post_type($this->ID)) {
764 764
                 $this->post_type = $post_type;
765
-            } else if ( !empty( $this->parent_invoice ) && $post_type = get_post_type( $this->parent_invoice ) ) {
765
+            } else if (!empty($this->parent_invoice) && $post_type = get_post_type($this->parent_invoice)) {
766 766
                 $this->post_type = $post_type;
767 767
             } else {
768 768
                 $this->post_type = 'wpi_invoice';
@@ -770,16 +770,16 @@  discard block
 block discarded – undo
770 770
         }
771 771
 
772 772
         $invoice_number = $this->ID;
773
-        if ( $number = $this->get_meta( '_wpinv_number', true ) ) {
773
+        if ($number = $this->get_meta('_wpinv_number', true)) {
774 774
             $invoice_number = $number;
775 775
         }
776 776
 
777
-        if ( empty( $this->key ) ) {
777
+        if (empty($this->key)) {
778 778
             $this->key = self::generate_key();
779 779
             $this->pending['key'] = $this->key;
780 780
         }
781 781
 
782
-        if ( empty( $this->ip ) ) {
782
+        if (empty($this->ip)) {
783 783
             $this->ip = wpinv_get_ip();
784 784
             $this->pending['ip'] = $this->ip;
785 785
         }
@@ -816,60 +816,60 @@  discard block
 block discarded – undo
816 816
                         'post_status'   => $this->status,
817 817
                         'post_author'   => $this->user_id,
818 818
                         'post_type'     => $this->post_type,
819
-                        'post_date'     => ! empty( $this->date ) && $this->date != '0000-00-00 00:00:00' ? $this->date : current_time( 'mysql' ),
820
-                        'post_date_gmt' => ! empty( $this->date ) && $this->date != '0000-00-00 00:00:00' ? get_gmt_from_date( $this->date ) : current_time( 'mysql', 1 ),
819
+                        'post_date'     => !empty($this->date) && $this->date != '0000-00-00 00:00:00' ? $this->date : current_time('mysql'),
820
+                        'post_date_gmt' => !empty($this->date) && $this->date != '0000-00-00 00:00:00' ? get_gmt_from_date($this->date) : current_time('mysql', 1),
821 821
                         'post_parent'   => $this->parent_invoice,
822 822
                     );
823
-        $args = apply_filters( 'wpinv_insert_invoice_args', $post_data, $this );
823
+        $args = apply_filters('wpinv_insert_invoice_args', $post_data, $this);
824 824
 
825 825
         // Create a blank invoice
826
-        if ( !empty( $this->ID ) ) {
827
-            $args['ID']         = $this->ID;
826
+        if (!empty($this->ID)) {
827
+            $args['ID'] = $this->ID;
828 828
 
829
-            $invoice_id = wp_update_post( $args, true );
829
+            $invoice_id = wp_update_post($args, true);
830 830
         } else {
831
-            $invoice_id = wp_insert_post( $args, true );
831
+            $invoice_id = wp_insert_post($args, true);
832 832
         }
833 833
 
834
-        if ( is_wp_error( $invoice_id ) ) {
834
+        if (is_wp_error($invoice_id)) {
835 835
             return false;
836 836
         }
837 837
 
838
-        if ( !empty( $invoice_id ) ) {
838
+        if (!empty($invoice_id)) {
839 839
             $this->ID  = $invoice_id;
840 840
             $this->_ID = $invoice_id;
841 841
 
842
-            $this->payment_meta = apply_filters( 'wpinv_payment_meta', $this->payment_meta, $payment_data );
843
-            if ( ! empty( $this->payment_meta['fees'] ) ) {
844
-                $this->fees = array_merge( $this->fees, $this->payment_meta['fees'] );
845
-                foreach( $this->fees as $fee ) {
846
-                    $this->increase_fees( $fee['amount'] );
842
+            $this->payment_meta = apply_filters('wpinv_payment_meta', $this->payment_meta, $payment_data);
843
+            if (!empty($this->payment_meta['fees'])) {
844
+                $this->fees = array_merge($this->fees, $this->payment_meta['fees']);
845
+                foreach ($this->fees as $fee) {
846
+                    $this->increase_fees($fee['amount']);
847 847
                 }
848 848
             }
849 849
 
850
-            $this->update_meta( '_wpinv_payment_meta', $this->payment_meta );    
850
+            $this->update_meta('_wpinv_payment_meta', $this->payment_meta);    
851 851
             $this->new = true;
852 852
         }
853 853
 
854 854
         return $this->ID;
855 855
     }
856 856
 
857
-    public function save( $setup = false ) {
857
+    public function save($setup = false) {
858 858
         
859 859
         $saved = false;
860
-        if ( empty( $this->items ) ) {
860
+        if (empty($this->items)) {
861 861
             return $saved; // Don't save empty invoice.
862 862
         }
863 863
         
864
-        if ( empty( $this->key ) ) {
864
+        if (empty($this->key)) {
865 865
             $this->key = self::generate_key();
866 866
             $this->pending['key'] = $this->key;
867 867
         }
868 868
         
869
-        if ( empty( $this->ID ) ) {
869
+        if (empty($this->ID)) {
870 870
             $invoice_id = $this->insert_invoice();
871 871
 
872
-            if ( false === $invoice_id ) {
872
+            if (false === $invoice_id) {
873 873
                 $saved = false;
874 874
             } else {
875 875
                 $this->ID = $invoice_id;
@@ -877,27 +877,27 @@  discard block
 block discarded – undo
877 877
         }
878 878
 
879 879
         // If we have something pending, let's save it
880
-        if ( !empty( $this->pending ) ) {
880
+        if (!empty($this->pending)) {
881 881
             $total_increase = 0;
882 882
             $total_decrease = 0;
883 883
 
884
-            foreach ( $this->pending as $key => $value ) {
885
-                switch( $key ) {
884
+            foreach ($this->pending as $key => $value) {
885
+                switch ($key) {
886 886
                     case 'items':
887 887
                         // Update totals for pending items
888
-                        foreach ( $this->pending[ $key ] as $item ) {
889
-                            switch( $item['action'] ) {
888
+                        foreach ($this->pending[$key] as $item) {
889
+                            switch ($item['action']) {
890 890
                                 case 'add':
891 891
                                     $price = $item['price'];
892 892
                                     $taxes = $item['tax'];
893 893
 
894
-                                    if ( 'publish' === $this->status ) {
894
+                                    if ('publish' === $this->status) {
895 895
                                         $total_increase += $price;
896 896
                                     }
897 897
                                     break;
898 898
 
899 899
                                 case 'remove':
900
-                                    if ( 'publish' === $this->status ) {
900
+                                    if ('publish' === $this->status) {
901 901
                                         $total_decrease += $item['price'];
902 902
                                     }
903 903
                                     break;
@@ -905,16 +905,16 @@  discard block
 block discarded – undo
905 905
                         }
906 906
                         break;
907 907
                     case 'fees':
908
-                        if ( 'publish' !== $this->status ) {
908
+                        if ('publish' !== $this->status) {
909 909
                             break;
910 910
                         }
911 911
 
912
-                        if ( empty( $this->pending[ $key ] ) ) {
912
+                        if (empty($this->pending[$key])) {
913 913
                             break;
914 914
                         }
915 915
 
916
-                        foreach ( $this->pending[ $key ] as $fee ) {
917
-                            switch( $fee['action'] ) {
916
+                        foreach ($this->pending[$key] as $fee) {
917
+                            switch ($fee['action']) {
918 918
                                 case 'add':
919 919
                                     $total_increase += $fee['amount'];
920 920
                                     break;
@@ -926,86 +926,86 @@  discard block
 block discarded – undo
926 926
                         }
927 927
                         break;
928 928
                     case 'status':
929
-                        $this->update_status( $this->status );
929
+                        $this->update_status($this->status);
930 930
                         break;
931 931
                     case 'gateway':
932
-                        $this->update_meta( '_wpinv_gateway', $this->gateway );
932
+                        $this->update_meta('_wpinv_gateway', $this->gateway);
933 933
                         break;
934 934
                     case 'mode':
935
-                        $this->update_meta( '_wpinv_mode', $this->mode );
935
+                        $this->update_meta('_wpinv_mode', $this->mode);
936 936
                         break;
937 937
                     case 'transaction_id':
938
-                        $this->update_meta( '_wpinv_transaction_id', $this->transaction_id );
938
+                        $this->update_meta('_wpinv_transaction_id', $this->transaction_id);
939 939
                         break;
940 940
                     case 'ip':
941
-                        $this->update_meta( '_wpinv_user_ip', $this->ip );
941
+                        $this->update_meta('_wpinv_user_ip', $this->ip);
942 942
                         break;
943 943
                     ///case 'user_id':
944 944
                         ///$this->update_meta( '_wpinv_user_id', $this->user_id );
945 945
                         ///$this->user_info['user_id'] = $this->user_id;
946 946
                         ///break;
947 947
                     case 'first_name':
948
-                        $this->update_meta( '_wpinv_first_name', $this->first_name );
948
+                        $this->update_meta('_wpinv_first_name', $this->first_name);
949 949
                         $this->user_info['first_name'] = $this->first_name;
950 950
                         break;
951 951
                     case 'last_name':
952
-                        $this->update_meta( '_wpinv_last_name', $this->last_name );
952
+                        $this->update_meta('_wpinv_last_name', $this->last_name);
953 953
                         $this->user_info['last_name'] = $this->last_name;
954 954
                         break;
955 955
                     case 'phone':
956
-                        $this->update_meta( '_wpinv_phone', $this->phone );
956
+                        $this->update_meta('_wpinv_phone', $this->phone);
957 957
                         $this->user_info['phone'] = $this->phone;
958 958
                         break;
959 959
                     case 'address':
960
-                        $this->update_meta( '_wpinv_address', $this->address );
960
+                        $this->update_meta('_wpinv_address', $this->address);
961 961
                         $this->user_info['address'] = $this->address;
962 962
                         break;
963 963
                     case 'city':
964
-                        $this->update_meta( '_wpinv_city', $this->city );
964
+                        $this->update_meta('_wpinv_city', $this->city);
965 965
                         $this->user_info['city'] = $this->city;
966 966
                         break;
967 967
                     case 'country':
968
-                        $this->update_meta( '_wpinv_country', $this->country );
968
+                        $this->update_meta('_wpinv_country', $this->country);
969 969
                         $this->user_info['country'] = $this->country;
970 970
                         break;
971 971
                     case 'state':
972
-                        $this->update_meta( '_wpinv_state', $this->state );
972
+                        $this->update_meta('_wpinv_state', $this->state);
973 973
                         $this->user_info['state'] = $this->state;
974 974
                         break;
975 975
                     case 'zip':
976
-                        $this->update_meta( '_wpinv_zip', $this->zip );
976
+                        $this->update_meta('_wpinv_zip', $this->zip);
977 977
                         $this->user_info['zip'] = $this->zip;
978 978
                         break;
979 979
                     case 'company':
980
-                        $this->update_meta( '_wpinv_company', $this->company );
980
+                        $this->update_meta('_wpinv_company', $this->company);
981 981
                         $this->user_info['company'] = $this->company;
982 982
                         break;
983 983
                     case 'vat_number':
984
-                        $this->update_meta( '_wpinv_vat_number', $this->vat_number );
984
+                        $this->update_meta('_wpinv_vat_number', $this->vat_number);
985 985
                         $this->user_info['vat_number'] = $this->vat_number;
986 986
                         
987
-                        $vat_info = getpaid_session()->get( 'user_vat_data' );
988
-                        if ( $this->vat_number && !empty( $vat_info ) && isset( $vat_info['number'] ) && isset( $vat_info['valid'] ) && $vat_info['number'] == $this->vat_number ) {
989
-                            $adddress_confirmed = isset( $vat_info['adddress_confirmed'] ) ? $vat_info['adddress_confirmed'] : false;
990
-                            $this->update_meta( '_wpinv_adddress_confirmed', (bool)$adddress_confirmed );
991
-                            $this->user_info['adddress_confirmed'] = (bool)$adddress_confirmed;
987
+                        $vat_info = getpaid_session()->get('user_vat_data');
988
+                        if ($this->vat_number && !empty($vat_info) && isset($vat_info['number']) && isset($vat_info['valid']) && $vat_info['number'] == $this->vat_number) {
989
+                            $adddress_confirmed = isset($vat_info['adddress_confirmed']) ? $vat_info['adddress_confirmed'] : false;
990
+                            $this->update_meta('_wpinv_adddress_confirmed', (bool) $adddress_confirmed);
991
+                            $this->user_info['adddress_confirmed'] = (bool) $adddress_confirmed;
992 992
                         }
993 993
     
994 994
                         break;
995 995
                     case 'vat_rate':
996
-                        $this->update_meta( '_wpinv_vat_rate', $this->vat_rate );
996
+                        $this->update_meta('_wpinv_vat_rate', $this->vat_rate);
997 997
                         $this->user_info['vat_rate'] = $this->vat_rate;
998 998
                         break;
999 999
                     case 'adddress_confirmed':
1000
-                        $this->update_meta( '_wpinv_adddress_confirmed', $this->adddress_confirmed );
1000
+                        $this->update_meta('_wpinv_adddress_confirmed', $this->adddress_confirmed);
1001 1001
                         $this->user_info['adddress_confirmed'] = $this->adddress_confirmed;
1002 1002
                         break;
1003 1003
                     
1004 1004
                     case 'key':
1005
-                        $this->update_meta( '_wpinv_key', $this->key );
1005
+                        $this->update_meta('_wpinv_key', $this->key);
1006 1006
                         break;
1007 1007
                     case 'disable_taxes':
1008
-                        $this->update_meta( '_wpinv_disable_taxes', $this->disable_taxes );
1008
+                        $this->update_meta('_wpinv_disable_taxes', $this->disable_taxes);
1009 1009
                         break;
1010 1010
                     case 'date':
1011 1011
                         $args = array(
@@ -1014,49 +1014,49 @@  discard block
 block discarded – undo
1014 1014
                             'edit_date' => true,
1015 1015
                         );
1016 1016
 
1017
-                        wp_update_post( $args );
1017
+                        wp_update_post($args);
1018 1018
                         break;
1019 1019
                     case 'due_date':
1020
-                        if ( empty( $this->due_date ) ) {
1020
+                        if (empty($this->due_date)) {
1021 1021
                             $this->due_date = 'none';
1022 1022
                         }
1023 1023
                         
1024
-                        $this->update_meta( '_wpinv_due_date', $this->due_date );
1024
+                        $this->update_meta('_wpinv_due_date', $this->due_date);
1025 1025
                         break;
1026 1026
                     case 'completed_date':
1027
-                        $this->update_meta( '_wpinv_completed_date', $this->completed_date );
1027
+                        $this->update_meta('_wpinv_completed_date', $this->completed_date);
1028 1028
                         break;
1029 1029
                     case 'discounts':
1030
-                        if ( ! is_array( $this->discounts ) ) {
1031
-                            $this->discounts = explode( ',', $this->discounts );
1030
+                        if (!is_array($this->discounts)) {
1031
+                            $this->discounts = explode(',', $this->discounts);
1032 1032
                         }
1033 1033
 
1034
-                        $this->user_info['discount'] = implode( ',', $this->discounts );
1034
+                        $this->user_info['discount'] = implode(',', $this->discounts);
1035 1035
                         break;
1036 1036
                     case 'discount':
1037
-                        $this->update_meta( '_wpinv_discount', wpinv_round_amount( $this->discount ) );
1037
+                        $this->update_meta('_wpinv_discount', wpinv_round_amount($this->discount));
1038 1038
                         break;
1039 1039
                     case 'discount_code':
1040
-                        $this->update_meta( '_wpinv_discount_code', $this->discount_code );
1040
+                        $this->update_meta('_wpinv_discount_code', $this->discount_code);
1041 1041
                         break;
1042 1042
                     case 'parent_invoice':
1043 1043
                         $args = array(
1044 1044
                             'ID'          => $this->ID,
1045 1045
                             'post_parent' => $this->parent_invoice,
1046 1046
                         );
1047
-                        wp_update_post( $args );
1047
+                        wp_update_post($args);
1048 1048
                         break;
1049 1049
                     default:
1050
-                        do_action( 'wpinv_save', $this, $key );
1050
+                        do_action('wpinv_save', $this, $key);
1051 1051
                         break;
1052 1052
                 }
1053 1053
             }
1054 1054
 
1055
-            $this->update_meta( '_wpinv_subtotal', wpinv_round_amount( $this->subtotal ) );
1056
-            $this->update_meta( '_wpinv_total', wpinv_round_amount( $this->total ) );
1057
-            $this->update_meta( '_wpinv_tax', wpinv_round_amount( $this->tax ) );
1055
+            $this->update_meta('_wpinv_subtotal', wpinv_round_amount($this->subtotal));
1056
+            $this->update_meta('_wpinv_total', wpinv_round_amount($this->total));
1057
+            $this->update_meta('_wpinv_tax', wpinv_round_amount($this->tax));
1058 1058
             
1059
-            $this->items    = array_values( $this->items );
1059
+            $this->items = array_values($this->items);
1060 1060
             
1061 1061
             $new_meta = array(
1062 1062
                 'items'         => $this->items,
@@ -1067,12 +1067,12 @@  discard block
 block discarded – undo
1067 1067
             );
1068 1068
             
1069 1069
             $meta        = $this->get_meta();
1070
-            $merged_meta = array_merge( $meta, $new_meta );
1070
+            $merged_meta = array_merge($meta, $new_meta);
1071 1071
 
1072 1072
             // Only save the payment meta if it's changed
1073
-            if ( md5( serialize( $meta ) ) !== md5( serialize( $merged_meta) ) ) {
1074
-                $updated     = $this->update_meta( '_wpinv_payment_meta', $merged_meta );
1075
-                if ( false !== $updated ) {
1073
+            if (md5(serialize($meta)) !== md5(serialize($merged_meta))) {
1074
+                $updated = $this->update_meta('_wpinv_payment_meta', $merged_meta);
1075
+                if (false !== $updated) {
1076 1076
                     $saved = true;
1077 1077
                 }
1078 1078
             }
@@ -1080,15 +1080,15 @@  discard block
 block discarded – undo
1080 1080
             $this->pending = array();
1081 1081
             $saved         = true;
1082 1082
         } else {
1083
-            $this->update_meta( '_wpinv_subtotal', wpinv_round_amount( $this->subtotal ) );
1084
-            $this->update_meta( '_wpinv_total', wpinv_round_amount( $this->total ) );
1085
-            $this->update_meta( '_wpinv_tax', wpinv_round_amount( $this->tax ) );
1083
+            $this->update_meta('_wpinv_subtotal', wpinv_round_amount($this->subtotal));
1084
+            $this->update_meta('_wpinv_total', wpinv_round_amount($this->total));
1085
+            $this->update_meta('_wpinv_tax', wpinv_round_amount($this->tax));
1086 1086
         }
1087 1087
         
1088
-        do_action( 'wpinv_invoice_save', $this, $saved );
1088
+        do_action('wpinv_invoice_save', $this, $saved);
1089 1089
 
1090
-        if ( true === $saved || $setup ) {
1091
-            $this->setup_invoice( $this->ID );
1090
+        if (true === $saved || $setup) {
1091
+            $this->setup_invoice($this->ID);
1092 1092
         }
1093 1093
         
1094 1094
         $this->refresh_item_ids();
@@ -1096,7 +1096,7 @@  discard block
 block discarded – undo
1096 1096
         return $saved;
1097 1097
     }
1098 1098
     
1099
-    public function add_fee( $args, $global = true ) {
1099
+    public function add_fee($args, $global = true) {
1100 1100
         $default_args = array(
1101 1101
             'label'       => '',
1102 1102
             'amount'      => 0,
@@ -1106,75 +1106,75 @@  discard block
 block discarded – undo
1106 1106
             'item_id'     => 0,
1107 1107
         );
1108 1108
 
1109
-        $fee = wp_parse_args( $args, $default_args );
1109
+        $fee = wp_parse_args($args, $default_args);
1110 1110
         
1111
-        if ( empty( $fee['label'] ) ) {
1111
+        if (empty($fee['label'])) {
1112 1112
             return false;
1113 1113
         }
1114 1114
         
1115
-        $fee['id']  = sanitize_title( $fee['label'] );
1115
+        $fee['id'] = sanitize_title($fee['label']);
1116 1116
         
1117
-        $this->fees[]               = $fee;
1117
+        $this->fees[] = $fee;
1118 1118
         
1119 1119
         $added_fee               = $fee;
1120 1120
         $added_fee['action']     = 'add';
1121 1121
         $this->pending['fees'][] = $added_fee;
1122
-        reset( $this->fees );
1122
+        reset($this->fees);
1123 1123
 
1124
-        $this->increase_fees( $fee['amount'] );
1124
+        $this->increase_fees($fee['amount']);
1125 1125
         return true;
1126 1126
     }
1127 1127
 
1128
-    public function remove_fee( $key ) {
1128
+    public function remove_fee($key) {
1129 1129
         $removed = false;
1130 1130
 
1131
-        if ( is_numeric( $key ) ) {
1132
-            $removed = $this->remove_fee_by( 'index', $key );
1131
+        if (is_numeric($key)) {
1132
+            $removed = $this->remove_fee_by('index', $key);
1133 1133
         }
1134 1134
 
1135 1135
         return $removed;
1136 1136
     }
1137 1137
 
1138
-    public function remove_fee_by( $key, $value, $global = false ) {
1139
-        $allowed_fee_keys = apply_filters( 'wpinv_fee_keys', array(
1138
+    public function remove_fee_by($key, $value, $global = false) {
1139
+        $allowed_fee_keys = apply_filters('wpinv_fee_keys', array(
1140 1140
             'index', 'label', 'amount', 'type',
1141
-        ) );
1141
+        ));
1142 1142
 
1143
-        if ( ! in_array( $key, $allowed_fee_keys ) ) {
1143
+        if (!in_array($key, $allowed_fee_keys)) {
1144 1144
             return false;
1145 1145
         }
1146 1146
 
1147 1147
         $removed = false;
1148
-        if ( 'index' === $key && array_key_exists( $value, $this->fees ) ) {
1149
-            $removed_fee             = $this->fees[ $value ];
1148
+        if ('index' === $key && array_key_exists($value, $this->fees)) {
1149
+            $removed_fee             = $this->fees[$value];
1150 1150
             $removed_fee['action']   = 'remove';
1151 1151
             $this->pending['fees'][] = $removed_fee;
1152 1152
 
1153
-            $this->decrease_fees( $removed_fee['amount'] );
1153
+            $this->decrease_fees($removed_fee['amount']);
1154 1154
 
1155
-            unset( $this->fees[ $value ] );
1155
+            unset($this->fees[$value]);
1156 1156
             $removed = true;
1157
-        } else if ( 'index' !== $key ) {
1158
-            foreach ( $this->fees as $index => $fee ) {
1159
-                if ( isset( $fee[ $key ] ) && $fee[ $key ] == $value ) {
1157
+        } else if ('index' !== $key) {
1158
+            foreach ($this->fees as $index => $fee) {
1159
+                if (isset($fee[$key]) && $fee[$key] == $value) {
1160 1160
                     $removed_fee             = $fee;
1161 1161
                     $removed_fee['action']   = 'remove';
1162 1162
                     $this->pending['fees'][] = $removed_fee;
1163 1163
 
1164
-                    $this->decrease_fees( $removed_fee['amount'] );
1164
+                    $this->decrease_fees($removed_fee['amount']);
1165 1165
 
1166
-                    unset( $this->fees[ $index ] );
1166
+                    unset($this->fees[$index]);
1167 1167
                     $removed = true;
1168 1168
 
1169
-                    if ( false === $global ) {
1169
+                    if (false === $global) {
1170 1170
                         break;
1171 1171
                     }
1172 1172
                 }
1173 1173
             }
1174 1174
         }
1175 1175
 
1176
-        if ( true === $removed ) {
1177
-            $this->fees = array_values( $this->fees );
1176
+        if (true === $removed) {
1177
+            $this->fees = array_values($this->fees);
1178 1178
         }
1179 1179
 
1180 1180
         return $removed;
@@ -1182,35 +1182,35 @@  discard block
 block discarded – undo
1182 1182
 
1183 1183
     
1184 1184
 
1185
-    public function add_note( $note = '', $customer_type = false, $added_by_user = false, $system = false ) {
1185
+    public function add_note($note = '', $customer_type = false, $added_by_user = false, $system = false) {
1186 1186
         // Bail if no note specified
1187
-        if( !$note ) {
1187
+        if (!$note) {
1188 1188
             return false;
1189 1189
         }
1190 1190
 
1191
-        if ( empty( $this->ID ) )
1191
+        if (empty($this->ID))
1192 1192
             return false;
1193 1193
         
1194
-        if ( ( ( is_user_logged_in() && wpinv_current_user_can_manage_invoicing() ) || $added_by_user ) && !$system ) {
1195
-            $user                 = get_user_by( 'id', get_current_user_id() );
1194
+        if (((is_user_logged_in() && wpinv_current_user_can_manage_invoicing()) || $added_by_user) && !$system) {
1195
+            $user                 = get_user_by('id', get_current_user_id());
1196 1196
             $comment_author       = $user->display_name;
1197 1197
             $comment_author_email = $user->user_email;
1198 1198
         } else {
1199 1199
             $comment_author       = 'System';
1200 1200
             $comment_author_email = 'system@';
1201
-            $comment_author_email .= isset( $_SERVER['HTTP_HOST'] ) ? str_replace( 'www.', '', $_SERVER['HTTP_HOST'] ) : 'noreply.com';
1202
-            $comment_author_email = sanitize_email( $comment_author_email );
1201
+            $comment_author_email .= isset($_SERVER['HTTP_HOST']) ? str_replace('www.', '', $_SERVER['HTTP_HOST']) : 'noreply.com';
1202
+            $comment_author_email = sanitize_email($comment_author_email);
1203 1203
         }
1204 1204
 
1205
-        do_action( 'wpinv_pre_insert_invoice_note', $this->ID, $note, $customer_type );
1205
+        do_action('wpinv_pre_insert_invoice_note', $this->ID, $note, $customer_type);
1206 1206
 
1207
-        $note_id = wp_insert_comment( wp_filter_comment( array(
1207
+        $note_id = wp_insert_comment(wp_filter_comment(array(
1208 1208
             'comment_post_ID'      => $this->ID,
1209 1209
             'comment_content'      => $note,
1210 1210
             'comment_agent'        => 'WPInvoicing',
1211 1211
             'user_id'              => is_admin() ? get_current_user_id() : 0,
1212
-            'comment_date'         => current_time( 'mysql' ),
1213
-            'comment_date_gmt'     => current_time( 'mysql', 1 ),
1212
+            'comment_date'         => current_time('mysql'),
1213
+            'comment_date_gmt'     => current_time('mysql', 1),
1214 1214
             'comment_approved'     => 1,
1215 1215
             'comment_parent'       => 0,
1216 1216
             'comment_author'       => $comment_author,
@@ -1218,53 +1218,53 @@  discard block
 block discarded – undo
1218 1218
             'comment_author_url'   => '',
1219 1219
             'comment_author_email' => $comment_author_email,
1220 1220
             'comment_type'         => 'wpinv_note'
1221
-        ) ) );
1221
+        )));
1222 1222
 
1223
-        do_action( 'wpinv_insert_payment_note', $note_id, $this->ID, $note );
1223
+        do_action('wpinv_insert_payment_note', $note_id, $this->ID, $note);
1224 1224
         
1225
-        if ( $customer_type ) {
1226
-            add_comment_meta( $note_id, '_wpi_customer_note', 1 );
1225
+        if ($customer_type) {
1226
+            add_comment_meta($note_id, '_wpi_customer_note', 1);
1227 1227
 
1228
-            do_action( 'wpinv_new_customer_note', array( 'invoice_id' => $this->ID, 'user_note' => $note ) );
1228
+            do_action('wpinv_new_customer_note', array('invoice_id' => $this->ID, 'user_note' => $note));
1229 1229
         }
1230 1230
 
1231 1231
         return $note_id;
1232 1232
     }
1233 1233
 
1234
-    private function increase_subtotal( $amount = 0.00 ) {
1234
+    private function increase_subtotal($amount = 0.00) {
1235 1235
         $amount          = (float) $amount;
1236 1236
         $this->subtotal += $amount;
1237
-        $this->subtotal  = wpinv_round_amount( $this->subtotal );
1237
+        $this->subtotal  = wpinv_round_amount($this->subtotal);
1238 1238
 
1239 1239
         $this->recalculate_total();
1240 1240
     }
1241 1241
 
1242
-    private function decrease_subtotal( $amount = 0.00 ) {
1242
+    private function decrease_subtotal($amount = 0.00) {
1243 1243
         $amount          = (float) $amount;
1244 1244
         $this->subtotal -= $amount;
1245
-        $this->subtotal  = wpinv_round_amount( $this->subtotal );
1245
+        $this->subtotal  = wpinv_round_amount($this->subtotal);
1246 1246
 
1247
-        if ( $this->subtotal < 0 ) {
1247
+        if ($this->subtotal < 0) {
1248 1248
             $this->subtotal = 0;
1249 1249
         }
1250 1250
 
1251 1251
         $this->recalculate_total();
1252 1252
     }
1253 1253
 
1254
-    private function increase_fees( $amount = 0.00 ) {
1255
-        $amount            = (float)$amount;
1254
+    private function increase_fees($amount = 0.00) {
1255
+        $amount            = (float) $amount;
1256 1256
         $this->fees_total += $amount;
1257
-        $this->fees_total  = wpinv_round_amount( $this->fees_total );
1257
+        $this->fees_total  = wpinv_round_amount($this->fees_total);
1258 1258
 
1259 1259
         $this->recalculate_total();
1260 1260
     }
1261 1261
 
1262
-    private function decrease_fees( $amount = 0.00 ) {
1262
+    private function decrease_fees($amount = 0.00) {
1263 1263
         $amount            = (float) $amount;
1264 1264
         $this->fees_total -= $amount;
1265
-        $this->fees_total  = wpinv_round_amount( $this->fees_total );
1265
+        $this->fees_total  = wpinv_round_amount($this->fees_total);
1266 1266
 
1267
-        if ( $this->fees_total < 0 ) {
1267
+        if ($this->fees_total < 0) {
1268 1268
             $this->fees_total = 0;
1269 1269
         }
1270 1270
 
@@ -1275,54 +1275,54 @@  discard block
 block discarded – undo
1275 1275
         global $wpi_nosave;
1276 1276
         
1277 1277
         $this->total = $this->subtotal + $this->tax + $this->fees_total;
1278
-        $this->total = wpinv_round_amount( $this->total );
1278
+        $this->total = wpinv_round_amount($this->total);
1279 1279
         
1280
-        do_action( 'wpinv_invoice_recalculate_total', $this, $wpi_nosave );
1280
+        do_action('wpinv_invoice_recalculate_total', $this, $wpi_nosave);
1281 1281
     }
1282 1282
     
1283
-    public function increase_tax( $amount = 0.00 ) {
1283
+    public function increase_tax($amount = 0.00) {
1284 1284
         $amount       = (float) $amount;
1285 1285
         $this->tax   += $amount;
1286 1286
 
1287 1287
         $this->recalculate_total();
1288 1288
     }
1289 1289
 
1290
-    public function decrease_tax( $amount = 0.00 ) {
1290
+    public function decrease_tax($amount = 0.00) {
1291 1291
         $amount     = (float) $amount;
1292 1292
         $this->tax -= $amount;
1293 1293
 
1294
-        if ( $this->tax < 0 ) {
1294
+        if ($this->tax < 0) {
1295 1295
             $this->tax = 0;
1296 1296
         }
1297 1297
 
1298 1298
         $this->recalculate_total();
1299 1299
     }
1300 1300
 
1301
-    public function update_status( $new_status = false, $note = '', $manual = false ) {
1302
-        $old_status = ! empty( $this->old_status ) ? $this->old_status : get_post_status( $this->ID );
1301
+    public function update_status($new_status = false, $note = '', $manual = false) {
1302
+        $old_status = !empty($this->old_status) ? $this->old_status : get_post_status($this->ID);
1303 1303
 
1304
-        if ( $old_status === $new_status && in_array( $new_status, array_keys( wpinv_get_invoice_statuses( true ) ) ) ) {
1304
+        if ($old_status === $new_status && in_array($new_status, array_keys(wpinv_get_invoice_statuses(true)))) {
1305 1305
             return false; // Don't permit status changes that aren't changes
1306 1306
         }
1307 1307
 
1308
-        $do_change = apply_filters( 'wpinv_should_update_invoice_status', true, $this->ID, $new_status, $old_status );
1308
+        $do_change = apply_filters('wpinv_should_update_invoice_status', true, $this->ID, $new_status, $old_status);
1309 1309
         $updated = false;
1310 1310
 
1311
-        if ( $do_change ) {
1312
-            do_action( 'wpinv_before_invoice_status_change', $this->ID, $new_status, $old_status );
1311
+        if ($do_change) {
1312
+            do_action('wpinv_before_invoice_status_change', $this->ID, $new_status, $old_status);
1313 1313
 
1314 1314
             $update_post_data                   = array();
1315 1315
             $update_post_data['ID']             = $this->ID;
1316 1316
             $update_post_data['post_status']    = $new_status;
1317
-            $update_post_data['edit_date']      = current_time( 'mysql', 0 );
1318
-            $update_post_data['edit_date_gmt']  = current_time( 'mysql', 1 );
1317
+            $update_post_data['edit_date']      = current_time('mysql', 0);
1318
+            $update_post_data['edit_date_gmt']  = current_time('mysql', 1);
1319 1319
             
1320
-            $update_post_data = apply_filters( 'wpinv_update_invoice_status_fields', $update_post_data, $this->ID );
1320
+            $update_post_data = apply_filters('wpinv_update_invoice_status_fields', $update_post_data, $this->ID);
1321 1321
 
1322
-            $updated = wp_update_post( $update_post_data );     
1322
+            $updated = wp_update_post($update_post_data);     
1323 1323
            
1324 1324
             // Process any specific status functions
1325
-            switch( $new_status ) {
1325
+            switch ($new_status) {
1326 1326
                 case 'wpi-refunded':
1327 1327
                     $this->process_refund();
1328 1328
                     break;
@@ -1335,9 +1335,9 @@  discard block
 block discarded – undo
1335 1335
             }
1336 1336
             
1337 1337
             // Status was changed.
1338
-            do_action( 'wpinv_status_' . $new_status, $this->ID, $old_status );
1339
-            do_action( 'wpinv_status_' . $old_status . '_to_' . $new_status, $this->ID, $old_status );
1340
-            do_action( 'wpinv_update_status', $this->ID, $new_status, $old_status );
1338
+            do_action('wpinv_status_' . $new_status, $this->ID, $old_status);
1339
+            do_action('wpinv_status_' . $old_status . '_to_' . $new_status, $this->ID, $old_status);
1340
+            do_action('wpinv_update_status', $this->ID, $new_status, $old_status);
1341 1341
         }
1342 1342
 
1343 1343
         return $updated;
@@ -1351,20 +1351,20 @@  discard block
 block discarded – undo
1351 1351
         $this->save();
1352 1352
     }
1353 1353
 
1354
-    public function update_meta( $meta_key = '', $meta_value = '', $prev_value = '' ) {
1355
-        if ( empty( $meta_key ) ) {
1354
+    public function update_meta($meta_key = '', $meta_value = '', $prev_value = '') {
1355
+        if (empty($meta_key)) {
1356 1356
             return false;
1357 1357
         }
1358 1358
 
1359
-        if ( $meta_key == 'key' || $meta_key == 'date' ) {
1359
+        if ($meta_key == 'key' || $meta_key == 'date') {
1360 1360
             $current_meta = $this->get_meta();
1361
-            $current_meta[ $meta_key ] = $meta_value;
1361
+            $current_meta[$meta_key] = $meta_value;
1362 1362
 
1363 1363
             $meta_key     = '_wpinv_payment_meta';
1364 1364
             $meta_value   = $current_meta;
1365 1365
         }
1366 1366
 
1367
-        $meta_value = apply_filters( 'wpinv_update_payment_meta_' . $meta_key, $meta_value, $this->ID );
1367
+        $meta_value = apply_filters('wpinv_update_payment_meta_' . $meta_key, $meta_value, $this->ID);
1368 1368
         
1369 1369
         // Do not update created date on invoice marked as paid.
1370 1370
         /*if ( $meta_key == '_wpinv_completed_date' && !empty( $meta_value ) ) {
@@ -1379,45 +1379,45 @@  discard block
 block discarded – undo
1379 1379
             wp_update_post( $args );
1380 1380
         }*/
1381 1381
         
1382
-        return update_post_meta( $this->ID, $meta_key, $meta_value, $prev_value );
1382
+        return update_post_meta($this->ID, $meta_key, $meta_value, $prev_value);
1383 1383
     }
1384 1384
 
1385 1385
     private function process_refund() {
1386 1386
         $process_refund = true;
1387 1387
 
1388 1388
         // If the payment was not in publish, don't decrement stats as they were never incremented
1389
-        if ( 'publish' != $this->old_status || 'wpi-refunded' != $this->status ) {
1389
+        if ('publish' != $this->old_status || 'wpi-refunded' != $this->status) {
1390 1390
             $process_refund = false;
1391 1391
         }
1392 1392
 
1393 1393
         // Allow extensions to filter for their own payment types, Example: Recurring Payments
1394
-        $process_refund = apply_filters( 'wpinv_should_process_refund', $process_refund, $this );
1394
+        $process_refund = apply_filters('wpinv_should_process_refund', $process_refund, $this);
1395 1395
 
1396
-        if ( false === $process_refund ) {
1396
+        if (false === $process_refund) {
1397 1397
             return;
1398 1398
         }
1399 1399
 
1400
-        do_action( 'wpinv_pre_refund_invoice', $this );
1400
+        do_action('wpinv_pre_refund_invoice', $this);
1401 1401
         
1402
-        $decrease_store_earnings = apply_filters( 'wpinv_decrease_store_earnings_on_refund', true, $this );
1403
-        $decrease_customer_value = apply_filters( 'wpinv_decrease_customer_value_on_refund', true, $this );
1404
-        $decrease_purchase_count = apply_filters( 'wpinv_decrease_customer_purchase_count_on_refund', true, $this );
1402
+        $decrease_store_earnings = apply_filters('wpinv_decrease_store_earnings_on_refund', true, $this);
1403
+        $decrease_customer_value = apply_filters('wpinv_decrease_customer_value_on_refund', true, $this);
1404
+        $decrease_purchase_count = apply_filters('wpinv_decrease_customer_purchase_count_on_refund', true, $this);
1405 1405
         
1406
-        do_action( 'wpinv_post_refund_invoice', $this );
1406
+        do_action('wpinv_post_refund_invoice', $this);
1407 1407
     }
1408 1408
 
1409 1409
     private function process_failure() {
1410 1410
         $discounts = $this->discounts;
1411
-        if ( empty( $discounts ) ) {
1411
+        if (empty($discounts)) {
1412 1412
             return;
1413 1413
         }
1414 1414
 
1415
-        if ( ! is_array( $discounts ) ) {
1416
-            $discounts = array_map( 'trim', explode( ',', $discounts ) );
1415
+        if (!is_array($discounts)) {
1416
+            $discounts = array_map('trim', explode(',', $discounts));
1417 1417
         }
1418 1418
 
1419
-        foreach ( $discounts as $discount ) {
1420
-            wpinv_decrease_discount_usage( $discount );
1419
+        foreach ($discounts as $discount) {
1420
+            wpinv_decrease_discount_usage($discount);
1421 1421
         }
1422 1422
     }
1423 1423
     
@@ -1425,92 +1425,92 @@  discard block
 block discarded – undo
1425 1425
         $process_pending = true;
1426 1426
 
1427 1427
         // If the payment was not in publish or revoked status, don't decrement stats as they were never incremented
1428
-        if ( ( 'publish' != $this->old_status && 'revoked' != $this->old_status ) || 'wpi-pending' != $this->status ) {
1428
+        if (('publish' != $this->old_status && 'revoked' != $this->old_status) || 'wpi-pending' != $this->status) {
1429 1429
             $process_pending = false;
1430 1430
         }
1431 1431
 
1432 1432
         // Allow extensions to filter for their own payment types, Example: Recurring Payments
1433
-        $process_pending = apply_filters( 'wpinv_should_process_pending', $process_pending, $this );
1433
+        $process_pending = apply_filters('wpinv_should_process_pending', $process_pending, $this);
1434 1434
 
1435
-        if ( false === $process_pending ) {
1435
+        if (false === $process_pending) {
1436 1436
             return;
1437 1437
         }
1438 1438
 
1439
-        $decrease_store_earnings = apply_filters( 'wpinv_decrease_store_earnings_on_pending', true, $this );
1440
-        $decrease_customer_value = apply_filters( 'wpinv_decrease_customer_value_on_pending', true, $this );
1441
-        $decrease_purchase_count = apply_filters( 'wpinv_decrease_customer_purchase_count_on_pending', true, $this );
1439
+        $decrease_store_earnings = apply_filters('wpinv_decrease_store_earnings_on_pending', true, $this);
1440
+        $decrease_customer_value = apply_filters('wpinv_decrease_customer_value_on_pending', true, $this);
1441
+        $decrease_purchase_count = apply_filters('wpinv_decrease_customer_purchase_count_on_pending', true, $this);
1442 1442
 
1443 1443
         $this->completed_date = '';
1444
-        $this->update_meta( '_wpinv_completed_date', '' );
1444
+        $this->update_meta('_wpinv_completed_date', '');
1445 1445
     }
1446 1446
     
1447 1447
     // get data
1448
-    public function get_meta( $meta_key = '_wpinv_payment_meta', $single = true ) {
1449
-        $meta = get_post_meta( $this->ID, $meta_key, $single );
1448
+    public function get_meta($meta_key = '_wpinv_payment_meta', $single = true) {
1449
+        $meta = get_post_meta($this->ID, $meta_key, $single);
1450 1450
 
1451
-        if ( $meta_key === '_wpinv_payment_meta' ) {
1451
+        if ($meta_key === '_wpinv_payment_meta') {
1452 1452
 
1453
-            if(!is_array($meta)){$meta = array();} // we need this to be an array so make sure it is.
1453
+            if (!is_array($meta)) {$meta = array(); } // we need this to be an array so make sure it is.
1454 1454
 
1455
-            if ( empty( $meta['key'] ) ) {
1455
+            if (empty($meta['key'])) {
1456 1456
                 $meta['key'] = $this->setup_invoice_key();
1457 1457
             }
1458 1458
 
1459
-            if ( empty( $meta['date'] ) ) {
1460
-                $meta['date'] = get_post_field( 'post_date', $this->ID );
1459
+            if (empty($meta['date'])) {
1460
+                $meta['date'] = get_post_field('post_date', $this->ID);
1461 1461
             }
1462 1462
         }
1463 1463
 
1464
-        $meta = apply_filters( 'wpinv_get_invoice_meta_' . $meta_key, $meta, $this->ID );
1464
+        $meta = apply_filters('wpinv_get_invoice_meta_' . $meta_key, $meta, $this->ID);
1465 1465
 
1466
-        return apply_filters( 'wpinv_get_invoice_meta', $meta, $this->ID, $meta_key );
1466
+        return apply_filters('wpinv_get_invoice_meta', $meta, $this->ID, $meta_key);
1467 1467
     }
1468 1468
     
1469 1469
     public function get_description() {
1470
-        $post = get_post( $this->ID );
1470
+        $post = get_post($this->ID);
1471 1471
         
1472
-        $description = !empty( $post ) ? $post->post_content : '';
1473
-        return apply_filters( 'wpinv_get_description', $description, $this->ID, $this );
1472
+        $description = !empty($post) ? $post->post_content : '';
1473
+        return apply_filters('wpinv_get_description', $description, $this->ID, $this);
1474 1474
     }
1475 1475
     
1476
-    public function get_status( $nicename = false ) {
1477
-        if ( !$nicename ) {
1476
+    public function get_status($nicename = false) {
1477
+        if (!$nicename) {
1478 1478
             $status = $this->status;
1479 1479
         } else {
1480 1480
             $status = $this->status_nicename;
1481 1481
         }
1482 1482
         
1483
-        return apply_filters( 'wpinv_get_status', $status, $nicename, $this->ID, $this );
1483
+        return apply_filters('wpinv_get_status', $status, $nicename, $this->ID, $this);
1484 1484
     }
1485 1485
     
1486 1486
     public function get_cart_details() {
1487
-        return apply_filters( 'wpinv_cart_details', $this->cart_details, $this->ID, $this );
1487
+        return apply_filters('wpinv_cart_details', $this->cart_details, $this->ID, $this);
1488 1488
     }
1489 1489
     
1490
-    public function get_subtotal( $currency = false ) {
1491
-        $subtotal = wpinv_round_amount( $this->subtotal );
1490
+    public function get_subtotal($currency = false) {
1491
+        $subtotal = wpinv_round_amount($this->subtotal);
1492 1492
         
1493
-        if ( $currency ) {
1494
-            $subtotal = wpinv_price( wpinv_format_amount( $subtotal, NULL, !$currency ), $this->get_currency() );
1493
+        if ($currency) {
1494
+            $subtotal = wpinv_price(wpinv_format_amount($subtotal, NULL, !$currency), $this->get_currency());
1495 1495
         }
1496 1496
         
1497
-        return apply_filters( 'wpinv_get_invoice_subtotal', $subtotal, $this->ID, $this, $currency );
1497
+        return apply_filters('wpinv_get_invoice_subtotal', $subtotal, $this->ID, $this, $currency);
1498 1498
     }
1499 1499
     
1500
-    public function get_total( $currency = false ) {        
1501
-        if ( $this->is_free_trial() ) {
1502
-            $total = wpinv_round_amount( 0 );
1500
+    public function get_total($currency = false) {        
1501
+        if ($this->is_free_trial()) {
1502
+            $total = wpinv_round_amount(0);
1503 1503
         } else {
1504
-            $total = wpinv_round_amount( $this->total );
1504
+            $total = wpinv_round_amount($this->total);
1505 1505
         }
1506
-        if ( $currency ) {
1507
-            $total = wpinv_price( wpinv_format_amount( $total, NULL, !$currency ), $this->get_currency() );
1506
+        if ($currency) {
1507
+            $total = wpinv_price(wpinv_format_amount($total, NULL, !$currency), $this->get_currency());
1508 1508
         }
1509 1509
         
1510
-        return apply_filters( 'wpinv_get_invoice_total', $total, $this->ID, $this, $currency );
1510
+        return apply_filters('wpinv_get_invoice_total', $total, $this->ID, $this, $currency);
1511 1511
     }
1512 1512
     
1513
-    public function get_recurring_details( $field = '', $currency = false ) {        
1513
+    public function get_recurring_details($field = '', $currency = false) {        
1514 1514
         $data                 = array();
1515 1515
         $data['cart_details'] = $this->cart_details;
1516 1516
         $data['subtotal']     = $this->get_subtotal();
@@ -1518,119 +1518,119 @@  discard block
 block discarded – undo
1518 1518
         $data['tax']          = $this->get_tax();
1519 1519
         $data['total']        = $this->get_total();
1520 1520
     
1521
-        if ( !empty( $this->cart_details ) && ( $this->is_parent() || $this->is_renewal() ) ) {
1521
+        if (!empty($this->cart_details) && ($this->is_parent() || $this->is_renewal())) {
1522 1522
             $is_free_trial = $this->is_free_trial();
1523
-            $discounts = $this->get_discounts( true );
1523
+            $discounts = $this->get_discounts(true);
1524 1524
             
1525
-            if ( $is_free_trial || !empty( $discounts ) ) {
1525
+            if ($is_free_trial || !empty($discounts)) {
1526 1526
                 $first_use_only = false;
1527 1527
                 
1528
-                if ( !empty( $discounts ) ) {
1529
-                    foreach ( $discounts as $key => $code ) {
1530
-                        if ( wpinv_discount_is_recurring( $code, true ) && !$this->is_renewal() ) {
1528
+                if (!empty($discounts)) {
1529
+                    foreach ($discounts as $key => $code) {
1530
+                        if (wpinv_discount_is_recurring($code, true) && !$this->is_renewal()) {
1531 1531
                             $first_use_only = true;
1532 1532
                             break;
1533 1533
                         }
1534 1534
                     }
1535 1535
                 }
1536 1536
                     
1537
-                if ( !$first_use_only ) {
1538
-                    $data['subtotal'] = wpinv_round_amount( $this->subtotal );
1539
-                    $data['discount'] = wpinv_round_amount( $this->discount );
1540
-                    $data['tax']      = wpinv_round_amount( $this->tax );
1541
-                    $data['total']    = wpinv_round_amount( $this->total );
1537
+                if (!$first_use_only) {
1538
+                    $data['subtotal'] = wpinv_round_amount($this->subtotal);
1539
+                    $data['discount'] = wpinv_round_amount($this->discount);
1540
+                    $data['tax']      = wpinv_round_amount($this->tax);
1541
+                    $data['total']    = wpinv_round_amount($this->total);
1542 1542
                 } else {
1543 1543
                     $cart_subtotal   = 0;
1544 1544
                     $cart_discount   = $this->discount;
1545 1545
                     $cart_tax        = 0;
1546 1546
 
1547
-                    foreach ( $this->cart_details as $key => $item ) {
1548
-                        $item_quantity  = $item['quantity'] > 0 ? absint( $item['quantity'] ) : 1;
1549
-                        $item_subtotal  = !empty( $item['subtotal'] ) ? $item['subtotal'] : $item['item_price'] * $item_quantity;
1547
+                    foreach ($this->cart_details as $key => $item) {
1548
+                        $item_quantity  = $item['quantity'] > 0 ? absint($item['quantity']) : 1;
1549
+                        $item_subtotal  = !empty($item['subtotal']) ? $item['subtotal'] : $item['item_price'] * $item_quantity;
1550 1550
                         $item_discount  = 0;
1551
-                        $item_tax       = $item_subtotal > 0 && !empty( $item['vat_rate'] ) ? ( $item_subtotal * 0.01 * (float)$item['vat_rate'] ) : 0;
1551
+                        $item_tax       = $item_subtotal > 0 && !empty($item['vat_rate']) ? ($item_subtotal * 0.01 * (float) $item['vat_rate']) : 0;
1552 1552
                         
1553
-                        if ( wpinv_prices_include_tax() ) {
1554
-                            $item_subtotal -= wpinv_round_amount( $item_tax );
1553
+                        if (wpinv_prices_include_tax()) {
1554
+                            $item_subtotal -= wpinv_round_amount($item_tax);
1555 1555
                         }
1556 1556
                         
1557 1557
                         $item_total     = $item_subtotal - $item_discount + $item_tax;
1558 1558
                         // Do not allow totals to go negative
1559
-                        if ( $item_total < 0 ) {
1559
+                        if ($item_total < 0) {
1560 1560
                             $item_total = 0;
1561 1561
                         }
1562 1562
                         
1563
-                        $cart_subtotal  += (float)($item_subtotal);
1564
-                        $cart_discount  += (float)($item_discount);
1565
-                        $cart_tax       += (float)($item_tax);
1563
+                        $cart_subtotal  += (float) ($item_subtotal);
1564
+                        $cart_discount  += (float) ($item_discount);
1565
+                        $cart_tax       += (float) ($item_tax);
1566 1566
                         
1567
-                        $data['cart_details'][$key]['discount']   = wpinv_round_amount( $item_discount );
1568
-                        $data['cart_details'][$key]['tax']        = wpinv_round_amount( $item_tax );
1569
-                        $data['cart_details'][$key]['price']      = wpinv_round_amount( $item_total );
1567
+                        $data['cart_details'][$key]['discount']   = wpinv_round_amount($item_discount);
1568
+                        $data['cart_details'][$key]['tax']        = wpinv_round_amount($item_tax);
1569
+                        $data['cart_details'][$key]['price']      = wpinv_round_amount($item_total);
1570 1570
                     }
1571 1571
 
1572 1572
 	                $total = $data['subtotal'] - $data['discount'] + $data['tax'];
1573
-	                if ( $total < 0 ) {
1573
+	                if ($total < 0) {
1574 1574
 		                $total = 0;
1575 1575
 	                }
1576 1576
 
1577
-                    $data['subtotal'] = wpinv_round_amount( $cart_subtotal );
1578
-                    $data['discount'] = wpinv_round_amount( $cart_discount );
1579
-                    $data['tax']      = wpinv_round_amount( $cart_tax );
1580
-                    $data['total']    = wpinv_round_amount( $total );
1577
+                    $data['subtotal'] = wpinv_round_amount($cart_subtotal);
1578
+                    $data['discount'] = wpinv_round_amount($cart_discount);
1579
+                    $data['tax']      = wpinv_round_amount($cart_tax);
1580
+                    $data['total']    = wpinv_round_amount($total);
1581 1581
                 }
1582 1582
             }
1583 1583
         }
1584 1584
         
1585
-        $data = apply_filters( 'wpinv_get_invoice_recurring_details', $data, $this, $field, $currency );
1585
+        $data = apply_filters('wpinv_get_invoice_recurring_details', $data, $this, $field, $currency);
1586 1586
 
1587
-        if ( isset( $data[$field] ) ) {
1588
-            return ( $currency ? wpinv_price( $data[$field], $this->get_currency() ) : $data[$field] );
1587
+        if (isset($data[$field])) {
1588
+            return ($currency ? wpinv_price($data[$field], $this->get_currency()) : $data[$field]);
1589 1589
         }
1590 1590
         
1591 1591
         return $data;
1592 1592
     }
1593 1593
     
1594
-    public function get_final_tax( $currency = false ) {        
1595
-        $final_total = wpinv_round_amount( $this->tax );
1596
-        if ( $currency ) {
1597
-            $final_total = wpinv_price( wpinv_format_amount( $final_total, NULL, !$currency ), $this->get_currency() );
1594
+    public function get_final_tax($currency = false) {        
1595
+        $final_total = wpinv_round_amount($this->tax);
1596
+        if ($currency) {
1597
+            $final_total = wpinv_price(wpinv_format_amount($final_total, NULL, !$currency), $this->get_currency());
1598 1598
         }
1599 1599
         
1600
-        return apply_filters( 'wpinv_get_invoice_final_total', $final_total, $this, $currency );
1600
+        return apply_filters('wpinv_get_invoice_final_total', $final_total, $this, $currency);
1601 1601
     }
1602 1602
     
1603
-    public function get_discounts( $array = false ) {
1603
+    public function get_discounts($array = false) {
1604 1604
         $discounts = $this->discounts;
1605
-        if ( $array && $discounts ) {
1606
-            $discounts = explode( ',', $discounts );
1605
+        if ($array && $discounts) {
1606
+            $discounts = explode(',', $discounts);
1607 1607
         }
1608
-        return apply_filters( 'wpinv_payment_discounts', $discounts, $this->ID, $this, $array );
1608
+        return apply_filters('wpinv_payment_discounts', $discounts, $this->ID, $this, $array);
1609 1609
     }
1610 1610
     
1611
-    public function get_discount( $currency = false, $dash = false ) {
1612
-        if ( !empty( $this->discounts ) ) {
1611
+    public function get_discount($currency = false, $dash = false) {
1612
+        if (!empty($this->discounts)) {
1613 1613
             global $ajax_cart_details;
1614 1614
             $ajax_cart_details = $this->get_cart_details();
1615 1615
             
1616
-            if ( !empty( $ajax_cart_details ) && count( $ajax_cart_details ) == count( $this->items ) ) {
1616
+            if (!empty($ajax_cart_details) && count($ajax_cart_details) == count($this->items)) {
1617 1617
                 $cart_items = $ajax_cart_details;
1618 1618
             } else {
1619 1619
                 $cart_items = $this->items;
1620 1620
             }
1621 1621
 
1622
-            $this->discount = wpinv_get_cart_items_discount_amount( $cart_items , $this->discounts );
1622
+            $this->discount = wpinv_get_cart_items_discount_amount($cart_items, $this->discounts);
1623 1623
         }
1624
-        $discount   = wpinv_round_amount( $this->discount );
1624
+        $discount   = wpinv_round_amount($this->discount);
1625 1625
         $dash       = $dash && $discount > 0 ? '&ndash;' : '';
1626 1626
         
1627
-        if ( $currency ) {
1628
-            $discount = wpinv_price( wpinv_format_amount( $discount, NULL, !$currency ), $this->get_currency() );
1627
+        if ($currency) {
1628
+            $discount = wpinv_price(wpinv_format_amount($discount, NULL, !$currency), $this->get_currency());
1629 1629
         }
1630 1630
         
1631
-        $discount   = $dash . $discount;
1631
+        $discount = $dash . $discount;
1632 1632
         
1633
-        return apply_filters( 'wpinv_get_invoice_discount', $discount, $this->ID, $this, $currency, $dash );
1633
+        return apply_filters('wpinv_get_invoice_discount', $discount, $this->ID, $this, $currency, $dash);
1634 1634
     }
1635 1635
     
1636 1636
     public function get_discount_code() {
@@ -1642,49 +1642,49 @@  discard block
 block discarded – undo
1642 1642
         return (int) $this->disable_taxes === 0;
1643 1643
     }
1644 1644
 
1645
-    public function get_tax( $currency = false ) {
1646
-        $tax = wpinv_round_amount( $this->tax );
1645
+    public function get_tax($currency = false) {
1646
+        $tax = wpinv_round_amount($this->tax);
1647 1647
 
1648
-        if ( $currency ) {
1649
-            $tax = wpinv_price( wpinv_format_amount( $tax, NULL, !$currency ), $this->get_currency() );
1648
+        if ($currency) {
1649
+            $tax = wpinv_price(wpinv_format_amount($tax, NULL, !$currency), $this->get_currency());
1650 1650
         }
1651 1651
 
1652
-        if ( ! $this->is_taxable() ) {
1653
-            $tax = wpinv_round_amount( 0.00 );
1652
+        if (!$this->is_taxable()) {
1653
+            $tax = wpinv_round_amount(0.00);
1654 1654
         }
1655 1655
 
1656
-        return apply_filters( 'wpinv_get_invoice_tax', $tax, $this->ID, $this, $currency );
1656
+        return apply_filters('wpinv_get_invoice_tax', $tax, $this->ID, $this, $currency);
1657 1657
     }
1658 1658
     
1659
-    public function get_fees( $type = 'all' ) {
1660
-        $fees    = array();
1659
+    public function get_fees($type = 'all') {
1660
+        $fees = array();
1661 1661
 
1662
-        if ( ! empty( $this->fees ) && is_array( $this->fees ) ) {
1663
-            foreach ( $this->fees as $fee ) {
1664
-                if( 'all' != $type && ! empty( $fee['type'] ) && $type != $fee['type'] ) {
1662
+        if (!empty($this->fees) && is_array($this->fees)) {
1663
+            foreach ($this->fees as $fee) {
1664
+                if ('all' != $type && !empty($fee['type']) && $type != $fee['type']) {
1665 1665
                     continue;
1666 1666
                 }
1667 1667
 
1668
-                $fee['label'] = stripslashes( $fee['label'] );
1669
-                $fee['amount_display'] = wpinv_price( $fee['amount'], $this->get_currency() );
1670
-                $fees[]    = $fee;
1668
+                $fee['label'] = stripslashes($fee['label']);
1669
+                $fee['amount_display'] = wpinv_price($fee['amount'], $this->get_currency());
1670
+                $fees[] = $fee;
1671 1671
             }
1672 1672
         }
1673 1673
 
1674
-        return apply_filters( 'wpinv_get_invoice_fees', $fees, $this->ID, $this );
1674
+        return apply_filters('wpinv_get_invoice_fees', $fees, $this->ID, $this);
1675 1675
     }
1676 1676
     
1677
-    public function get_fees_total( $type = 'all' ) {
1677
+    public function get_fees_total($type = 'all') {
1678 1678
         $fees_total = (float) 0.00;
1679 1679
 
1680
-        $payment_fees = isset( $this->payment_meta['fees'] ) ? $this->payment_meta['fees'] : array();
1681
-        if ( ! empty( $payment_fees ) ) {
1682
-            foreach ( $payment_fees as $fee ) {
1680
+        $payment_fees = isset($this->payment_meta['fees']) ? $this->payment_meta['fees'] : array();
1681
+        if (!empty($payment_fees)) {
1682
+            foreach ($payment_fees as $fee) {
1683 1683
                 $fees_total += (float) $fee['amount'];
1684 1684
             }
1685 1685
         }
1686 1686
 
1687
-        return apply_filters( 'wpinv_get_invoice_fees_total', $fees_total, $this->ID, $this );
1687
+        return apply_filters('wpinv_get_invoice_fees_total', $fees_total, $this->ID, $this);
1688 1688
         /*
1689 1689
         $fees = $this->get_fees( $type );
1690 1690
 
@@ -1704,116 +1704,116 @@  discard block
 block discarded – undo
1704 1704
     }
1705 1705
 
1706 1706
     public function get_user_id() {
1707
-        return apply_filters( 'wpinv_user_id', $this->user_id, $this->ID, $this );
1707
+        return apply_filters('wpinv_user_id', $this->user_id, $this->ID, $this);
1708 1708
     }
1709 1709
     
1710 1710
     public function get_first_name() {
1711
-        return apply_filters( 'wpinv_first_name', $this->first_name, $this->ID, $this );
1711
+        return apply_filters('wpinv_first_name', $this->first_name, $this->ID, $this);
1712 1712
     }
1713 1713
     
1714 1714
     public function get_last_name() {
1715
-        return apply_filters( 'wpinv_last_name', $this->last_name, $this->ID, $this );
1715
+        return apply_filters('wpinv_last_name', $this->last_name, $this->ID, $this);
1716 1716
     }
1717 1717
     
1718 1718
     public function get_user_full_name() {
1719
-        return apply_filters( 'wpinv_user_full_name', $this->full_name, $this->ID, $this );
1719
+        return apply_filters('wpinv_user_full_name', $this->full_name, $this->ID, $this);
1720 1720
     }
1721 1721
     
1722 1722
     public function get_user_info() {
1723
-        return apply_filters( 'wpinv_user_info', $this->user_info, $this->ID, $this );
1723
+        return apply_filters('wpinv_user_info', $this->user_info, $this->ID, $this);
1724 1724
     }
1725 1725
     
1726 1726
     public function get_email() {
1727
-        return apply_filters( 'wpinv_user_email', $this->email, $this->ID, $this );
1727
+        return apply_filters('wpinv_user_email', $this->email, $this->ID, $this);
1728 1728
     }
1729 1729
     
1730 1730
     public function get_address() {
1731
-        return apply_filters( 'wpinv_address', $this->address, $this->ID, $this );
1731
+        return apply_filters('wpinv_address', $this->address, $this->ID, $this);
1732 1732
     }
1733 1733
     
1734 1734
     public function get_phone() {
1735
-        return apply_filters( 'wpinv_phone', $this->phone, $this->ID, $this );
1735
+        return apply_filters('wpinv_phone', $this->phone, $this->ID, $this);
1736 1736
     }
1737 1737
     
1738 1738
     public function get_number() {
1739
-        return apply_filters( 'wpinv_number', $this->number, $this->ID, $this );
1739
+        return apply_filters('wpinv_number', $this->number, $this->ID, $this);
1740 1740
     }
1741 1741
     
1742 1742
     public function get_items() {
1743
-        return apply_filters( 'wpinv_payment_meta_items', $this->items, $this->ID, $this );
1743
+        return apply_filters('wpinv_payment_meta_items', $this->items, $this->ID, $this);
1744 1744
     }
1745 1745
     
1746 1746
     public function get_key() {
1747
-        return apply_filters( 'wpinv_key', $this->key, $this->ID, $this );
1747
+        return apply_filters('wpinv_key', $this->key, $this->ID, $this);
1748 1748
     }
1749 1749
     
1750 1750
     public function get_transaction_id() {
1751
-        return apply_filters( 'wpinv_get_invoice_transaction_id', $this->transaction_id, $this->ID, $this );
1751
+        return apply_filters('wpinv_get_invoice_transaction_id', $this->transaction_id, $this->ID, $this);
1752 1752
     }
1753 1753
     
1754 1754
     public function get_gateway() {
1755
-        return apply_filters( 'wpinv_gateway', $this->gateway, $this->ID, $this );
1755
+        return apply_filters('wpinv_gateway', $this->gateway, $this->ID, $this);
1756 1756
     }
1757 1757
     
1758 1758
     public function get_gateway_title() {
1759
-        $this->gateway_title = !empty( $this->gateway_title ) ? $this->gateway_title : wpinv_get_gateway_checkout_label( $this->gateway );
1759
+        $this->gateway_title = !empty($this->gateway_title) ? $this->gateway_title : wpinv_get_gateway_checkout_label($this->gateway);
1760 1760
         
1761
-        return apply_filters( 'wpinv_gateway_title', $this->gateway_title, $this->ID, $this );
1761
+        return apply_filters('wpinv_gateway_title', $this->gateway_title, $this->ID, $this);
1762 1762
     }
1763 1763
     
1764 1764
     public function get_currency() {
1765
-        return apply_filters( 'wpinv_currency_code', $this->currency, $this->ID, $this );
1765
+        return apply_filters('wpinv_currency_code', $this->currency, $this->ID, $this);
1766 1766
     }
1767 1767
     
1768 1768
     public function get_created_date() {
1769
-        return apply_filters( 'wpinv_created_date', $this->date, $this->ID, $this );
1769
+        return apply_filters('wpinv_created_date', $this->date, $this->ID, $this);
1770 1770
     }
1771 1771
     
1772
-    public function get_due_date( $display = false ) {
1773
-        $due_date = apply_filters( 'wpinv_due_date', $this->due_date, $this->ID, $this );
1772
+    public function get_due_date($display = false) {
1773
+        $due_date = apply_filters('wpinv_due_date', $this->due_date, $this->ID, $this);
1774 1774
 
1775
-        if ( ! $display ) {
1775
+        if (!$display) {
1776 1776
             return $due_date;
1777 1777
         }
1778 1778
         
1779
-        return getpaid_format_date( $this->due_date );
1779
+        return getpaid_format_date($this->due_date);
1780 1780
     }
1781 1781
     
1782 1782
     public function get_completed_date() {
1783
-        return apply_filters( 'wpinv_completed_date', $this->completed_date, $this->ID, $this );
1783
+        return apply_filters('wpinv_completed_date', $this->completed_date, $this->ID, $this);
1784 1784
     }
1785 1785
     
1786
-    public function get_invoice_date( $formatted = true ) {
1786
+    public function get_invoice_date($formatted = true) {
1787 1787
         $date_completed = $this->completed_date;
1788 1788
         $invoice_date   = $date_completed != '' && $date_completed != '0000-00-00 00:00:00' ? $date_completed : '';
1789 1789
         
1790
-        if ( $invoice_date == '' ) {
1790
+        if ($invoice_date == '') {
1791 1791
             $date_created   = $this->date;
1792 1792
             $invoice_date   = $date_created != '' && $date_created != '0000-00-00 00:00:00' ? $date_created : '';
1793 1793
         }
1794 1794
         
1795
-        if ( $formatted && $invoice_date ) {
1796
-            $invoice_date   = getpaid_format_date( $invoice_date );
1795
+        if ($formatted && $invoice_date) {
1796
+            $invoice_date = getpaid_format_date($invoice_date);
1797 1797
         }
1798 1798
 
1799
-        return apply_filters( 'wpinv_get_invoice_date', $invoice_date, $formatted, $this->ID, $this );
1799
+        return apply_filters('wpinv_get_invoice_date', $invoice_date, $formatted, $this->ID, $this);
1800 1800
     }
1801 1801
     
1802 1802
     public function get_ip() {
1803
-        return apply_filters( 'wpinv_user_ip', $this->ip, $this->ID, $this );
1803
+        return apply_filters('wpinv_user_ip', $this->ip, $this->ID, $this);
1804 1804
     }
1805 1805
         
1806
-    public function has_status( $status ) {
1807
-        return apply_filters( 'wpinv_has_status', ( is_array( $status ) && in_array( $this->get_status(), $status ) ) || $this->get_status() === $status ? true : false, $this, $status );
1806
+    public function has_status($status) {
1807
+        return apply_filters('wpinv_has_status', (is_array($status) && in_array($this->get_status(), $status)) || $this->get_status() === $status ? true : false, $this, $status);
1808 1808
     }
1809 1809
     
1810
-    public function add_item( $item_id = 0, $args = array() ) {
1810
+    public function add_item($item_id = 0, $args = array()) {
1811 1811
         global $wpi_current_id, $wpi_item_id;
1812 1812
         
1813
-        $item = new WPInv_Item( $item_id );
1813
+        $item = new WPInv_Item($item_id);
1814 1814
 
1815 1815
         // Bail if this post isn't a item
1816
-        if( !$item || $item->post_type !== 'wpi_item' ) {
1816
+        if (!$item || $item->post_type !== 'wpi_item') {
1817 1817
             return false;
1818 1818
         }
1819 1819
         
@@ -1832,8 +1832,8 @@  discard block
 block discarded – undo
1832 1832
             'fees'          => array()
1833 1833
         );
1834 1834
 
1835
-        $args = wp_parse_args( apply_filters( 'wpinv_add_item_args', $args, $item->ID ), $defaults );
1836
-        $args['quantity']   = $has_quantities && $args['quantity'] > 0 ? absint( $args['quantity'] ) : 1;
1835
+        $args = wp_parse_args(apply_filters('wpinv_add_item_args', $args, $item->ID), $defaults);
1836
+        $args['quantity'] = $has_quantities && $args['quantity'] > 0 ? absint($args['quantity']) : 1;
1837 1837
 
1838 1838
         $wpi_current_id         = $this->ID;
1839 1839
         $wpi_item_id            = $item->ID;
@@ -1845,19 +1845,19 @@  discard block
 block discarded – undo
1845 1845
         $found_cart_key         = false;
1846 1846
         
1847 1847
         if ($has_quantities) {
1848
-            $this->cart_details = !empty( $this->cart_details ) ? array_values( $this->cart_details ) : $this->cart_details;
1848
+            $this->cart_details = !empty($this->cart_details) ? array_values($this->cart_details) : $this->cart_details;
1849 1849
             
1850
-            foreach ( $this->items as $key => $cart_item ) {
1851
-                if ( (int)$item_id !== (int)$cart_item['id'] ) {
1850
+            foreach ($this->items as $key => $cart_item) {
1851
+                if ((int) $item_id !== (int) $cart_item['id']) {
1852 1852
                     continue;
1853 1853
                 }
1854 1854
 
1855
-                $this->items[ $key ]['quantity'] += $args['quantity'];
1855
+                $this->items[$key]['quantity'] += $args['quantity'];
1856 1856
                 break;
1857 1857
             }
1858 1858
             
1859
-            foreach ( $this->cart_details as $cart_key => $cart_item ) {
1860
-                if ( $item_id != $cart_item['id'] ) {
1859
+            foreach ($this->cart_details as $cart_key => $cart_item) {
1860
+                if ($item_id != $cart_item['id']) {
1861 1861
                     continue;
1862 1862
                 }
1863 1863
 
@@ -1869,29 +1869,29 @@  discard block
 block discarded – undo
1869 1869
         if ($has_quantities && $found_cart_key !== false) {
1870 1870
             $cart_item          = $this->cart_details[$found_cart_key];
1871 1871
             $item_price         = $cart_item['item_price'];
1872
-            $quantity           = !empty( $cart_item['quantity'] ) ? $cart_item['quantity'] : 1;
1873
-            $tax_rate           = !empty( $cart_item['vat_rate'] ) ? $cart_item['vat_rate'] : 0;
1872
+            $quantity           = !empty($cart_item['quantity']) ? $cart_item['quantity'] : 1;
1873
+            $tax_rate           = !empty($cart_item['vat_rate']) ? $cart_item['vat_rate'] : 0;
1874 1874
             
1875 1875
             $new_quantity       = $quantity + $args['quantity'];
1876 1876
             $subtotal           = $item_price * $new_quantity;
1877 1877
             
1878 1878
             $args['quantity']   = $new_quantity;
1879
-            $discount           = !empty( $args['discount'] ) ? $args['discount'] : 0;
1880
-            $tax                = $subtotal > 0 && $tax_rate > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0;
1879
+            $discount           = !empty($args['discount']) ? $args['discount'] : 0;
1880
+            $tax                = $subtotal > 0 && $tax_rate > 0 ? (($subtotal - $discount) * 0.01 * (float) $tax_rate) : 0;
1881 1881
             
1882
-            $discount_increased = $discount > 0 && $subtotal > 0 && $discount > (float)$cart_item['discount'] ? $discount - (float)$cart_item['discount'] : 0;
1883
-            $tax_increased      = $tax > 0 && $subtotal > 0 && $tax > (float)$cart_item['tax'] ? $tax - (float)$cart_item['tax'] : 0;
1882
+            $discount_increased = $discount > 0 && $subtotal > 0 && $discount > (float) $cart_item['discount'] ? $discount - (float) $cart_item['discount'] : 0;
1883
+            $tax_increased      = $tax > 0 && $subtotal > 0 && $tax > (float) $cart_item['tax'] ? $tax - (float) $cart_item['tax'] : 0;
1884 1884
             // The total increase equals the number removed * the item_price
1885
-            $total_increased    = wpinv_round_amount( $item_price );
1885
+            $total_increased    = wpinv_round_amount($item_price);
1886 1886
             
1887
-            if ( wpinv_prices_include_tax() ) {
1888
-                $subtotal -= wpinv_round_amount( $tax );
1887
+            if (wpinv_prices_include_tax()) {
1888
+                $subtotal -= wpinv_round_amount($tax);
1889 1889
             }
1890 1890
 
1891
-            $total              = $subtotal - $discount + $tax;
1891
+            $total = $subtotal - $discount + $tax;
1892 1892
 
1893 1893
             // Do not allow totals to go negative
1894
-            if( $total < 0 ) {
1894
+            if ($total < 0) {
1895 1895
                 $total = 0;
1896 1896
             }
1897 1897
             
@@ -1907,25 +1907,25 @@  discard block
 block discarded – undo
1907 1907
             $this->cart_details[$found_cart_key] = $cart_item;
1908 1908
         } else {
1909 1909
             // Set custom price.
1910
-            if ( $args['custom_price'] !== '' ) {
1910
+            if ($args['custom_price'] !== '') {
1911 1911
                 $item_price = $args['custom_price'];
1912 1912
             } else {
1913 1913
                 // Allow overriding the price
1914
-                if ( false !== $args['item_price'] ) {
1914
+                if (false !== $args['item_price']) {
1915 1915
                     $item_price = $args['item_price'];
1916 1916
                 } else {
1917
-                    $item_price = wpinv_get_item_price( $item->ID );
1917
+                    $item_price = wpinv_get_item_price($item->ID);
1918 1918
                 }
1919 1919
             }
1920 1920
 
1921 1921
             // Sanitizing the price here so we don't have a dozen calls later
1922
-            $item_price = wpinv_sanitize_amount( $item_price );
1923
-            $subtotal   = wpinv_round_amount( $item_price * $args['quantity'] );
1922
+            $item_price = wpinv_sanitize_amount($item_price);
1923
+            $subtotal   = wpinv_round_amount($item_price * $args['quantity']);
1924 1924
         
1925
-            $discount   = !empty( $args['discount'] ) ? $args['discount'] : 0;
1926
-            $tax_class  = !empty( $args['vat_class'] ) ? $args['vat_class'] : '';
1927
-            $tax_rate   = !empty( $args['vat_rate'] ) ? $args['vat_rate'] : 0;
1928
-            $tax        = $subtotal > 0 && $tax_rate > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0;
1925
+            $discount   = !empty($args['discount']) ? $args['discount'] : 0;
1926
+            $tax_class  = !empty($args['vat_class']) ? $args['vat_class'] : '';
1927
+            $tax_rate   = !empty($args['vat_rate']) ? $args['vat_rate'] : 0;
1928
+            $tax        = $subtotal > 0 && $tax_rate > 0 ? (($subtotal - $discount) * 0.01 * (float) $tax_rate) : 0;
1929 1929
 
1930 1930
             // Setup the items meta item
1931 1931
             $new_item = array(
@@ -1933,29 +1933,29 @@  discard block
 block discarded – undo
1933 1933
                 'quantity' => $args['quantity'],
1934 1934
             );
1935 1935
 
1936
-            $this->items[]  = $new_item;
1936
+            $this->items[] = $new_item;
1937 1937
 
1938
-            if ( wpinv_prices_include_tax() ) {
1939
-                $subtotal -= wpinv_round_amount( $tax );
1938
+            if (wpinv_prices_include_tax()) {
1939
+                $subtotal -= wpinv_round_amount($tax);
1940 1940
             }
1941 1941
 
1942
-            $total      = $subtotal - $discount + $tax;
1942
+            $total = $subtotal - $discount + $tax;
1943 1943
 
1944 1944
             // Do not allow totals to go negative
1945
-            if( $total < 0 ) {
1945
+            if ($total < 0) {
1946 1946
                 $total = 0;
1947 1947
             }
1948 1948
         
1949 1949
             $this->cart_details[] = array(
1950 1950
                 'name'          => !empty($args['name']) ? $args['name'] : $item->get_name(),
1951 1951
                 'id'            => $item->ID,
1952
-                'item_price'    => wpinv_round_amount( $item_price ),
1953
-                'custom_price'  => ( $args['custom_price'] !== '' ? wpinv_round_amount( $args['custom_price'] ) : '' ),
1952
+                'item_price'    => wpinv_round_amount($item_price),
1953
+                'custom_price'  => ($args['custom_price'] !== '' ? wpinv_round_amount($args['custom_price']) : ''),
1954 1954
                 'quantity'      => $args['quantity'],
1955 1955
                 'discount'      => $discount,
1956
-                'subtotal'      => wpinv_round_amount( $subtotal ),
1957
-                'tax'           => wpinv_round_amount( $tax ),
1958
-                'price'         => wpinv_round_amount( $total ),
1956
+                'subtotal'      => wpinv_round_amount($subtotal),
1957
+                'tax'           => wpinv_round_amount($tax),
1958
+                'price'         => wpinv_round_amount($total),
1959 1959
                 'vat_rate'      => $tax_rate,
1960 1960
                 'vat_class'     => $tax_class,
1961 1961
                 'meta'          => $args['meta'],
@@ -1965,18 +1965,18 @@  discard block
 block discarded – undo
1965 1965
             $subtotal = $subtotal - $discount;
1966 1966
         }
1967 1967
         
1968
-        $added_item = end( $this->cart_details );
1969
-        $added_item['action']  = 'add';
1968
+        $added_item = end($this->cart_details);
1969
+        $added_item['action'] = 'add';
1970 1970
         
1971 1971
         $this->pending['items'][] = $added_item;
1972 1972
         
1973
-        $this->increase_subtotal( $subtotal );
1974
-        $this->increase_tax( $tax );
1973
+        $this->increase_subtotal($subtotal);
1974
+        $this->increase_tax($tax);
1975 1975
 
1976 1976
         return true;
1977 1977
     }
1978 1978
     
1979
-    public function remove_item( $item_id, $args = array() ) {
1979
+    public function remove_item($item_id, $args = array()) {
1980 1980
         // Set some defaults
1981 1981
         $defaults = array(
1982 1982
             'quantity'      => 1,
@@ -1984,51 +1984,51 @@  discard block
 block discarded – undo
1984 1984
             'custom_price'  => '',
1985 1985
             'cart_index'    => false,
1986 1986
         );
1987
-        $args = wp_parse_args( $args, $defaults );
1987
+        $args = wp_parse_args($args, $defaults);
1988 1988
 
1989 1989
         // Bail if this post isn't a item
1990
-        if ( get_post_type( $item_id ) !== 'wpi_item' ) {
1990
+        if (get_post_type($item_id) !== 'wpi_item') {
1991 1991
             return false;
1992 1992
         }
1993 1993
         
1994
-        $this->cart_details = !empty( $this->cart_details ) ? array_values( $this->cart_details ) : $this->cart_details;
1994
+        $this->cart_details = !empty($this->cart_details) ? array_values($this->cart_details) : $this->cart_details;
1995 1995
 
1996
-        foreach ( $this->items as $key => $item ) {
1997
-            if ( !empty($item['id']) && (int)$item_id !== (int)$item['id'] ) {
1996
+        foreach ($this->items as $key => $item) {
1997
+            if (!empty($item['id']) && (int) $item_id !== (int) $item['id']) {
1998 1998
                 continue;
1999 1999
             }
2000 2000
 
2001
-            if ( false !== $args['cart_index'] ) {
2002
-                $cart_index = absint( $args['cart_index'] );
2003
-                $cart_item  = ! empty( $this->cart_details[ $cart_index ] ) ? $this->cart_details[ $cart_index ] : false;
2001
+            if (false !== $args['cart_index']) {
2002
+                $cart_index = absint($args['cart_index']);
2003
+                $cart_item  = !empty($this->cart_details[$cart_index]) ? $this->cart_details[$cart_index] : false;
2004 2004
 
2005
-                if ( ! empty( $cart_item ) ) {
2005
+                if (!empty($cart_item)) {
2006 2006
                     // If the cart index item isn't the same item ID, don't remove it
2007
-                    if ( !empty($cart_item['id']) && $cart_item['id'] != $item['id'] ) {
2007
+                    if (!empty($cart_item['id']) && $cart_item['id'] != $item['id']) {
2008 2008
                         continue;
2009 2009
                     }
2010 2010
                 }
2011 2011
             }
2012 2012
 
2013
-            $item_quantity = $this->items[ $key ]['quantity'];
2014
-            if ( $item_quantity > $args['quantity'] ) {
2015
-                $this->items[ $key ]['quantity'] -= $args['quantity'];
2013
+            $item_quantity = $this->items[$key]['quantity'];
2014
+            if ($item_quantity > $args['quantity']) {
2015
+                $this->items[$key]['quantity'] -= $args['quantity'];
2016 2016
                 break;
2017 2017
             } else {
2018
-                unset( $this->items[ $key ] );
2018
+                unset($this->items[$key]);
2019 2019
                 break;
2020 2020
             }
2021 2021
         }
2022 2022
 
2023 2023
         $found_cart_key = false;
2024
-        if ( false === $args['cart_index'] ) {
2025
-            foreach ( $this->cart_details as $cart_key => $item ) {
2026
-                if ( $item_id != $item['id'] ) {
2024
+        if (false === $args['cart_index']) {
2025
+            foreach ($this->cart_details as $cart_key => $item) {
2026
+                if ($item_id != $item['id']) {
2027 2027
                     continue;
2028 2028
                 }
2029 2029
 
2030
-                if ( false !== $args['item_price'] ) {
2031
-                    if ( isset( $item['item_price'] ) && (float) $args['item_price'] != (float) $item['item_price'] ) {
2030
+                if (false !== $args['item_price']) {
2031
+                    if (isset($item['item_price']) && (float) $args['item_price'] != (float) $item['item_price']) {
2032 2032
                         continue;
2033 2033
                     }
2034 2034
                 }
@@ -2037,13 +2037,13 @@  discard block
 block discarded – undo
2037 2037
                 break;
2038 2038
             }
2039 2039
         } else {
2040
-            $cart_index = absint( $args['cart_index'] );
2040
+            $cart_index = absint($args['cart_index']);
2041 2041
 
2042
-            if ( ! array_key_exists( $cart_index, $this->cart_details ) ) {
2042
+            if (!array_key_exists($cart_index, $this->cart_details)) {
2043 2043
                 return false; // Invalid cart index passed.
2044 2044
             }
2045 2045
 
2046
-            if ( (int) $this->cart_details[ $cart_index ]['id'] > 0 && (int) $this->cart_details[ $cart_index ]['id'] !== (int) $item_id ) {
2046
+            if ((int) $this->cart_details[$cart_index]['id'] > 0 && (int) $this->cart_details[$cart_index]['id'] !== (int) $item_id) {
2047 2047
                 return false; // We still need the proper Item ID to be sure.
2048 2048
             }
2049 2049
 
@@ -2051,41 +2051,41 @@  discard block
 block discarded – undo
2051 2051
         }
2052 2052
         
2053 2053
         $cart_item  = $this->cart_details[$found_cart_key];
2054
-        $quantity   = !empty( $cart_item['quantity'] ) ? $cart_item['quantity'] : 1;
2054
+        $quantity   = !empty($cart_item['quantity']) ? $cart_item['quantity'] : 1;
2055 2055
         
2056
-        if ( count( $this->cart_details ) == 1 && ( $quantity - $args['quantity'] ) < 1 ) {
2056
+        if (count($this->cart_details) == 1 && ($quantity - $args['quantity']) < 1) {
2057 2057
             //return false; // Invoice must contain at least one item.
2058 2058
         }
2059 2059
         
2060
-        $discounts  = $this->get_discounts();
2060
+        $discounts = $this->get_discounts();
2061 2061
         
2062
-        if ( $quantity > $args['quantity'] ) {
2062
+        if ($quantity > $args['quantity']) {
2063 2063
             $item_price         = $cart_item['item_price'];
2064
-            $tax_rate           = !empty( $cart_item['vat_rate'] ) ? $cart_item['vat_rate'] : 0;
2064
+            $tax_rate           = !empty($cart_item['vat_rate']) ? $cart_item['vat_rate'] : 0;
2065 2065
             
2066
-            $new_quantity       = max( $quantity - $args['quantity'], 1);
2066
+            $new_quantity       = max($quantity - $args['quantity'], 1);
2067 2067
             $subtotal           = $item_price * $new_quantity;
2068 2068
             
2069 2069
             $args['quantity']   = $new_quantity;
2070
-            $discount           = !empty( $cart_item['discount'] ) ? $cart_item['discount'] : 0;
2071
-            $tax                = $subtotal > 0 && $tax_rate > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0;
2070
+            $discount           = !empty($cart_item['discount']) ? $cart_item['discount'] : 0;
2071
+            $tax                = $subtotal > 0 && $tax_rate > 0 ? (($subtotal - $discount) * 0.01 * (float) $tax_rate) : 0;
2072 2072
             
2073
-            $discount_decrease  = (float)$cart_item['discount'] > 0 && $quantity > 0 ? wpinv_round_amount( ( (float)$cart_item['discount'] / $quantity ) ) : 0;
2074
-            $discount_decrease  = $discount > 0 && $subtotal > 0 && (float)$cart_item['discount'] > $discount ? (float)$cart_item['discount'] - $discount : $discount_decrease; 
2075
-            $tax_decrease       = (float)$cart_item['tax'] > 0 && $quantity > 0 ? wpinv_round_amount( ( (float)$cart_item['tax'] / $quantity ) ) : 0;
2076
-            $tax_decrease       = $tax > 0 && $subtotal > 0 && (float)$cart_item['tax'] > $tax ? (float)$cart_item['tax'] - $tax : $tax_decrease;
2073
+            $discount_decrease  = (float) $cart_item['discount'] > 0 && $quantity > 0 ? wpinv_round_amount(((float) $cart_item['discount'] / $quantity)) : 0;
2074
+            $discount_decrease  = $discount > 0 && $subtotal > 0 && (float) $cart_item['discount'] > $discount ? (float) $cart_item['discount'] - $discount : $discount_decrease; 
2075
+            $tax_decrease       = (float) $cart_item['tax'] > 0 && $quantity > 0 ? wpinv_round_amount(((float) $cart_item['tax'] / $quantity)) : 0;
2076
+            $tax_decrease       = $tax > 0 && $subtotal > 0 && (float) $cart_item['tax'] > $tax ? (float) $cart_item['tax'] - $tax : $tax_decrease;
2077 2077
             
2078 2078
             // The total increase equals the number removed * the item_price
2079
-            $total_decrease     = wpinv_round_amount( $item_price );
2079
+            $total_decrease     = wpinv_round_amount($item_price);
2080 2080
             
2081
-            if ( wpinv_prices_include_tax() ) {
2082
-                $subtotal -= wpinv_round_amount( $tax );
2081
+            if (wpinv_prices_include_tax()) {
2082
+                $subtotal -= wpinv_round_amount($tax);
2083 2083
             }
2084 2084
 
2085
-            $total              = $subtotal - $discount + $tax;
2085
+            $total = $subtotal - $discount + $tax;
2086 2086
 
2087 2087
             // Do not allow totals to go negative
2088
-            if( $total < 0 ) {
2088
+            if ($total < 0) {
2089 2089
                 $total = 0;
2090 2090
             }
2091 2091
             
@@ -2104,16 +2104,16 @@  discard block
 block discarded – undo
2104 2104
             
2105 2105
             $this->cart_details[$found_cart_key] = $cart_item;
2106 2106
             
2107
-            $remove_item = end( $this->cart_details );
2107
+            $remove_item = end($this->cart_details);
2108 2108
         } else {
2109 2109
             $item_price     = $cart_item['item_price'];
2110
-            $discount       = !empty( $cart_item['discount'] ) ? $cart_item['discount'] : 0;
2111
-            $tax            = !empty( $cart_item['tax'] ) ? $cart_item['tax'] : 0;
2110
+            $discount       = !empty($cart_item['discount']) ? $cart_item['discount'] : 0;
2111
+            $tax            = !empty($cart_item['tax']) ? $cart_item['tax'] : 0;
2112 2112
         
2113
-            $subtotal_decrease  = ( $item_price * $quantity ) - $discount;
2113
+            $subtotal_decrease  = ($item_price * $quantity) - $discount;
2114 2114
             $tax_decrease       = $tax;
2115 2115
 
2116
-            unset( $this->cart_details[$found_cart_key] );
2116
+            unset($this->cart_details[$found_cart_key]);
2117 2117
             
2118 2118
             $remove_item             = $args;
2119 2119
             $remove_item['id']       = $item_id;
@@ -2124,8 +2124,8 @@  discard block
 block discarded – undo
2124 2124
         $remove_item['action']      = 'remove';
2125 2125
         $this->pending['items'][]   = $remove_item;
2126 2126
                
2127
-        $this->decrease_subtotal( $subtotal_decrease );
2128
-        $this->decrease_tax( $tax_decrease );
2127
+        $this->decrease_subtotal($subtotal_decrease);
2128
+        $this->decrease_tax($tax_decrease);
2129 2129
         
2130 2130
         return true;
2131 2131
     }
@@ -2133,7 +2133,7 @@  discard block
 block discarded – undo
2133 2133
     public function update_items($temp = false) {
2134 2134
         global $wpinv_euvat, $wpi_current_id, $wpi_item_id, $wpi_nosave;
2135 2135
         
2136
-        if ( !empty( $this->cart_details ) ) {
2136
+        if (!empty($this->cart_details)) {
2137 2137
             $wpi_nosave             = $temp;
2138 2138
             $cart_subtotal          = 0;
2139 2139
             $cart_discount          = 0;
@@ -2143,65 +2143,65 @@  discard block
 block discarded – undo
2143 2143
             $_POST['wpinv_country'] = $this->country;
2144 2144
             $_POST['wpinv_state']   = $this->state;
2145 2145
 
2146
-            foreach ( $this->cart_details as $key => $item ) {
2146
+            foreach ($this->cart_details as $key => $item) {
2147 2147
                 $item_price = $item['item_price'];
2148
-                $quantity   = wpinv_item_quantities_enabled() && $item['quantity'] > 0 ? absint( $item['quantity'] ) : 1;
2149
-                $amount     = wpinv_round_amount( $item_price * $quantity );
2148
+                $quantity   = wpinv_item_quantities_enabled() && $item['quantity'] > 0 ? absint($item['quantity']) : 1;
2149
+                $amount     = wpinv_round_amount($item_price * $quantity);
2150 2150
                 $subtotal   = $item_price * $quantity;
2151 2151
                 
2152 2152
                 $wpi_current_id         = $this->ID;
2153 2153
                 $wpi_item_id            = $item['id'];
2154 2154
                 
2155
-                $discount   = wpinv_get_cart_item_discount_amount( $item, $this->get_discounts() );
2155
+                $discount   = wpinv_get_cart_item_discount_amount($item, $this->get_discounts());
2156 2156
                 
2157
-                $tax_rate   = wpinv_get_tax_rate( $this->country, $this->state, $wpi_item_id );
2158
-                $tax_class  = $wpinv_euvat->get_item_class( $wpi_item_id );
2159
-                $tax        = $item_price > 0 ? ( ( $subtotal - $discount ) * 0.01 * (float)$tax_rate ) : 0;
2157
+                $tax_rate   = wpinv_get_tax_rate($this->country, $this->state, $wpi_item_id);
2158
+                $tax_class  = $wpinv_euvat->get_item_class($wpi_item_id);
2159
+                $tax        = $item_price > 0 ? (($subtotal - $discount) * 0.01 * (float) $tax_rate) : 0;
2160 2160
 
2161
-                if ( ! $this->is_taxable() ) {
2161
+                if (!$this->is_taxable()) {
2162 2162
                     $tax = 0;
2163 2163
                 }
2164 2164
 
2165
-                if ( wpinv_prices_include_tax() ) {
2166
-                    $subtotal -= wpinv_round_amount( $tax );
2165
+                if (wpinv_prices_include_tax()) {
2166
+                    $subtotal -= wpinv_round_amount($tax);
2167 2167
                 }
2168 2168
 
2169
-                $total      = $subtotal - $discount + $tax;
2169
+                $total = $subtotal - $discount + $tax;
2170 2170
 
2171 2171
                 // Do not allow totals to go negative
2172
-                if( $total < 0 ) {
2172
+                if ($total < 0) {
2173 2173
                     $total = 0;
2174 2174
                 }
2175 2175
 
2176 2176
                 $cart_details[] = array(
2177 2177
                     'id'          => $item['id'],
2178 2178
                     'name'        => $item['name'],
2179
-                    'item_price'  => wpinv_round_amount( $item_price ),
2180
-                    'custom_price'=> ( isset( $item['custom_price'] ) ? $item['custom_price'] : '' ),
2179
+                    'item_price'  => wpinv_round_amount($item_price),
2180
+                    'custom_price'=> (isset($item['custom_price']) ? $item['custom_price'] : ''),
2181 2181
                     'quantity'    => $quantity,
2182 2182
                     'discount'    => $discount,
2183
-                    'subtotal'    => wpinv_round_amount( $subtotal ),
2184
-                    'tax'         => wpinv_round_amount( $tax ),
2185
-                    'price'       => wpinv_round_amount( $total ),
2183
+                    'subtotal'    => wpinv_round_amount($subtotal),
2184
+                    'tax'         => wpinv_round_amount($tax),
2185
+                    'price'       => wpinv_round_amount($total),
2186 2186
                     'vat_rate'    => $tax_rate,
2187 2187
                     'vat_class'   => $tax_class,
2188 2188
                     'meta'        => isset($item['meta']) ? $item['meta'] : array(),
2189 2189
                     'fees'        => isset($item['fees']) ? $item['fees'] : array(),
2190 2190
                 );
2191 2191
 
2192
-                $cart_subtotal  += (float)($subtotal - $discount); // TODO
2193
-                $cart_discount  += (float)($discount);
2194
-                $cart_tax       += (float)($tax);
2192
+                $cart_subtotal  += (float) ($subtotal - $discount); // TODO
2193
+                $cart_discount  += (float) ($discount);
2194
+                $cart_tax       += (float) ($tax);
2195 2195
             }
2196
-            if ( $cart_subtotal < 0 ) {
2196
+            if ($cart_subtotal < 0) {
2197 2197
                 $cart_subtotal = 0;
2198 2198
             }
2199
-            if ( $cart_tax < 0 ) {
2199
+            if ($cart_tax < 0) {
2200 2200
                 $cart_tax = 0;
2201 2201
             }
2202
-            $this->subtotal = wpinv_round_amount( $cart_subtotal );
2203
-            $this->tax      = wpinv_round_amount( $cart_tax );
2204
-            $this->discount = wpinv_round_amount( $cart_discount );
2202
+            $this->subtotal = wpinv_round_amount($cart_subtotal);
2203
+            $this->tax      = wpinv_round_amount($cart_tax);
2204
+            $this->discount = wpinv_round_amount($cart_discount);
2205 2205
             
2206 2206
             $this->recalculate_total();
2207 2207
             
@@ -2213,177 +2213,177 @@  discard block
 block discarded – undo
2213 2213
     
2214 2214
     public function recalculate_totals($temp = false) {        
2215 2215
         $this->update_items($temp);
2216
-        $this->save( true );
2216
+        $this->save(true);
2217 2217
         
2218 2218
         return $this;
2219 2219
     }
2220 2220
     
2221 2221
     public function needs_payment() {
2222
-        $valid_invoice_statuses = apply_filters( 'wpinv_valid_invoice_statuses_for_payment', array( 'wpi-pending' ), $this );
2222
+        $valid_invoice_statuses = apply_filters('wpinv_valid_invoice_statuses_for_payment', array('wpi-pending'), $this);
2223 2223
 
2224
-        if ( $this->has_status( $valid_invoice_statuses ) && ( $this->get_total() > 0 || $this->is_free_trial() || $this->is_free() || $this->is_initial_free() ) ) {
2224
+        if ($this->has_status($valid_invoice_statuses) && ($this->get_total() > 0 || $this->is_free_trial() || $this->is_free() || $this->is_initial_free())) {
2225 2225
             $needs_payment = true;
2226 2226
         } else {
2227 2227
             $needs_payment = false;
2228 2228
         }
2229 2229
 
2230
-        return apply_filters( 'wpinv_needs_payment', $needs_payment, $this, $valid_invoice_statuses );
2230
+        return apply_filters('wpinv_needs_payment', $needs_payment, $this, $valid_invoice_statuses);
2231 2231
     }
2232 2232
     
2233
-    public function get_checkout_payment_url( $with_key = false, $secret = false ) {
2233
+    public function get_checkout_payment_url($with_key = false, $secret = false) {
2234 2234
         $pay_url = wpinv_get_checkout_uri();
2235 2235
 
2236
-        if ( is_ssl() ) {
2237
-            $pay_url = str_replace( 'http:', 'https:', $pay_url );
2236
+        if (is_ssl()) {
2237
+            $pay_url = str_replace('http:', 'https:', $pay_url);
2238 2238
         }
2239 2239
         
2240 2240
         $key = $this->get_key();
2241 2241
 
2242
-        if ( $with_key ) {
2243
-            $pay_url = add_query_arg( 'invoice_key', $key, $pay_url );
2242
+        if ($with_key) {
2243
+            $pay_url = add_query_arg('invoice_key', $key, $pay_url);
2244 2244
         } else {
2245
-            $pay_url = add_query_arg( array( 'wpi_action' => 'pay_for_invoice', 'invoice_key' => $key ), $pay_url );
2245
+            $pay_url = add_query_arg(array('wpi_action' => 'pay_for_invoice', 'invoice_key' => $key), $pay_url);
2246 2246
         }
2247 2247
         
2248
-        if ( $secret ) {
2249
-            $pay_url = add_query_arg( array( '_wpipay' => md5( $this->get_user_id() . '::' . $this->get_email() . '::' . $key ) ), $pay_url );
2248
+        if ($secret) {
2249
+            $pay_url = add_query_arg(array('_wpipay' => md5($this->get_user_id() . '::' . $this->get_email() . '::' . $key)), $pay_url);
2250 2250
         }
2251 2251
 
2252
-        return apply_filters( 'wpinv_get_checkout_payment_url', $pay_url, $this, $with_key, $secret );
2252
+        return apply_filters('wpinv_get_checkout_payment_url', $pay_url, $this, $with_key, $secret);
2253 2253
     }
2254 2254
     
2255
-    public function get_view_url( $with_key = false ) {
2256
-        $invoice_url = get_permalink( $this->ID );
2255
+    public function get_view_url($with_key = false) {
2256
+        $invoice_url = get_permalink($this->ID);
2257 2257
 
2258
-        if ( $with_key ) {
2259
-            $invoice_url = add_query_arg( 'invoice_key', $this->get_key(), $invoice_url );
2258
+        if ($with_key) {
2259
+            $invoice_url = add_query_arg('invoice_key', $this->get_key(), $invoice_url);
2260 2260
         }
2261 2261
 
2262
-        return apply_filters( 'wpinv_get_view_url', $invoice_url, $this, $with_key );
2262
+        return apply_filters('wpinv_get_view_url', $invoice_url, $this, $with_key);
2263 2263
     }
2264 2264
     
2265
-    public function generate_key( $string = '' ) {
2266
-        $auth_key  = defined( 'AUTH_KEY' ) ? AUTH_KEY : '';
2267
-        return strtolower( md5( $string . date( 'Y-m-d H:i:s' ) . $auth_key . uniqid( 'wpinv', true ) ) );  // Unique key
2265
+    public function generate_key($string = '') {
2266
+        $auth_key = defined('AUTH_KEY') ? AUTH_KEY : '';
2267
+        return strtolower(md5($string . date('Y-m-d H:i:s') . $auth_key . uniqid('wpinv', true))); // Unique key
2268 2268
     }
2269 2269
     
2270 2270
     public function is_recurring() {
2271
-        if ( empty( $this->cart_details ) ) {
2271
+        if (empty($this->cart_details)) {
2272 2272
             return false;
2273 2273
         }
2274 2274
         
2275 2275
         $has_subscription = false;
2276
-        foreach( $this->cart_details as $cart_item ) {
2277
-            if ( !empty( $cart_item['id'] ) && wpinv_is_recurring_item( $cart_item['id'] )  ) {
2276
+        foreach ($this->cart_details as $cart_item) {
2277
+            if (!empty($cart_item['id']) && wpinv_is_recurring_item($cart_item['id'])) {
2278 2278
                 $has_subscription = true;
2279 2279
                 break;
2280 2280
             }
2281 2281
         }
2282 2282
         
2283
-        if ( count( $this->cart_details ) > 1 ) {
2283
+        if (count($this->cart_details) > 1) {
2284 2284
             $has_subscription = false;
2285 2285
         }
2286 2286
 
2287
-        return apply_filters( 'wpinv_invoice_has_recurring_item', $has_subscription, $this->cart_details );
2287
+        return apply_filters('wpinv_invoice_has_recurring_item', $has_subscription, $this->cart_details);
2288 2288
     }
2289 2289
 
2290 2290
     public function is_free_trial() {
2291 2291
         $is_free_trial = false;
2292 2292
         
2293
-        if ( $this->is_parent() && $item = $this->get_recurring( true ) ) {
2294
-            if ( !empty( $item ) && $item->has_free_trial() ) {
2293
+        if ($this->is_parent() && $item = $this->get_recurring(true)) {
2294
+            if (!empty($item) && $item->has_free_trial()) {
2295 2295
                 $is_free_trial = true;
2296 2296
             }
2297 2297
         }
2298 2298
 
2299
-        return apply_filters( 'wpinv_invoice_is_free_trial', $is_free_trial, $this->cart_details, $this );
2299
+        return apply_filters('wpinv_invoice_is_free_trial', $is_free_trial, $this->cart_details, $this);
2300 2300
     }
2301 2301
 
2302 2302
     public function is_initial_free() {
2303 2303
         $is_initial_free = false;
2304 2304
         
2305
-        if ( ! ( (float)wpinv_round_amount( $this->get_total() ) > 0 ) && $this->is_parent() && $this->is_recurring() && ! $this->is_free_trial() && ! $this->is_free() ) {
2305
+        if (!((float) wpinv_round_amount($this->get_total()) > 0) && $this->is_parent() && $this->is_recurring() && !$this->is_free_trial() && !$this->is_free()) {
2306 2306
             $is_initial_free = true;
2307 2307
         }
2308 2308
 
2309
-        return apply_filters( 'wpinv_invoice_is_initial_free', $is_initial_free, $this->cart_details );
2309
+        return apply_filters('wpinv_invoice_is_initial_free', $is_initial_free, $this->cart_details);
2310 2310
     }
2311 2311
     
2312
-    public function get_recurring( $object = false ) {
2312
+    public function get_recurring($object = false) {
2313 2313
         $item = NULL;
2314 2314
         
2315
-        if ( empty( $this->cart_details ) ) {
2315
+        if (empty($this->cart_details)) {
2316 2316
             return $item;
2317 2317
         }
2318 2318
         
2319
-        foreach( $this->cart_details as $cart_item ) {
2320
-            if ( !empty( $cart_item['id'] ) && wpinv_is_recurring_item( $cart_item['id'] )  ) {
2319
+        foreach ($this->cart_details as $cart_item) {
2320
+            if (!empty($cart_item['id']) && wpinv_is_recurring_item($cart_item['id'])) {
2321 2321
                 $item = $cart_item['id'];
2322 2322
                 break;
2323 2323
             }
2324 2324
         }
2325 2325
         
2326
-        if ( $object ) {
2327
-            $item = $item ? new WPInv_Item( $item ) : NULL;
2326
+        if ($object) {
2327
+            $item = $item ? new WPInv_Item($item) : NULL;
2328 2328
             
2329
-            apply_filters( 'wpinv_invoice_get_recurring_item', $item, $this );
2329
+            apply_filters('wpinv_invoice_get_recurring_item', $item, $this);
2330 2330
         }
2331 2331
 
2332
-        return apply_filters( 'wpinv_invoice_get_recurring_item_id', $item, $this );
2332
+        return apply_filters('wpinv_invoice_get_recurring_item_id', $item, $this);
2333 2333
     }
2334 2334
 
2335 2335
     public function get_subscription_name() {
2336
-        $item = $this->get_recurring( true );
2336
+        $item = $this->get_recurring(true);
2337 2337
 
2338
-        if ( empty( $item ) ) {
2338
+        if (empty($item)) {
2339 2339
             return NULL;
2340 2340
         }
2341 2341
 
2342
-        if ( !($name = $item->get_name()) ) {
2342
+        if (!($name = $item->get_name())) {
2343 2343
             $name = $item->post_name;
2344 2344
         }
2345 2345
 
2346
-        return apply_filters( 'wpinv_invoice_get_subscription_name', $name, $this );
2346
+        return apply_filters('wpinv_invoice_get_subscription_name', $name, $this);
2347 2347
     }
2348 2348
 
2349 2349
     public function get_subscription_id() {
2350
-        $subscription_id = $this->get_meta( '_wpinv_subscr_profile_id', true );
2350
+        $subscription_id = $this->get_meta('_wpinv_subscr_profile_id', true);
2351 2351
 
2352
-        if ( empty( $subscription_id ) && !empty( $this->parent_invoice ) ) {
2353
-            $parent_invoice = wpinv_get_invoice( $this->parent_invoice );
2352
+        if (empty($subscription_id) && !empty($this->parent_invoice)) {
2353
+            $parent_invoice = wpinv_get_invoice($this->parent_invoice);
2354 2354
 
2355
-            $subscription_id = $parent_invoice->get_meta( '_wpinv_subscr_profile_id', true );
2355
+            $subscription_id = $parent_invoice->get_meta('_wpinv_subscr_profile_id', true);
2356 2356
         }
2357 2357
         
2358 2358
         return $subscription_id;
2359 2359
     }
2360 2360
     
2361 2361
     public function is_parent() {
2362
-        $is_parent = empty( $this->parent_invoice ) ? true : false;
2362
+        $is_parent = empty($this->parent_invoice) ? true : false;
2363 2363
 
2364
-        return apply_filters( 'wpinv_invoice_is_parent', $is_parent, $this );
2364
+        return apply_filters('wpinv_invoice_is_parent', $is_parent, $this);
2365 2365
     }
2366 2366
     
2367 2367
     public function is_renewal() {
2368 2368
         $is_renewal = $this->parent_invoice && $this->parent_invoice != $this->ID ? true : false;
2369 2369
 
2370
-        return apply_filters( 'wpinv_invoice_is_renewal', $is_renewal, $this );
2370
+        return apply_filters('wpinv_invoice_is_renewal', $is_renewal, $this);
2371 2371
     }
2372 2372
     
2373 2373
     public function get_parent_payment() {
2374 2374
         $parent_payment = NULL;
2375 2375
         
2376
-        if ( $this->is_renewal() ) {
2377
-            $parent_payment = wpinv_get_invoice( $this->parent_invoice );
2376
+        if ($this->is_renewal()) {
2377
+            $parent_payment = wpinv_get_invoice($this->parent_invoice);
2378 2378
         }
2379 2379
         
2380 2380
         return $parent_payment;
2381 2381
     }
2382 2382
     
2383 2383
     public function is_paid() {
2384
-        $is_paid = $this->has_status( array( 'publish', 'wpi-processing', 'wpi-renewal' ) );
2384
+        $is_paid = $this->has_status(array('publish', 'wpi-processing', 'wpi-renewal'));
2385 2385
 
2386
-        return apply_filters( 'wpinv_invoice_is_paid', $is_paid, $this );
2386
+        return apply_filters('wpinv_invoice_is_paid', $is_paid, $this);
2387 2387
     }
2388 2388
 
2389 2389
     /**
@@ -2396,23 +2396,23 @@  discard block
 block discarded – undo
2396 2396
     }
2397 2397
     
2398 2398
     public function is_refunded() {
2399
-        $is_refunded = $this->has_status( array( 'wpi-refunded' ) );
2399
+        $is_refunded = $this->has_status(array('wpi-refunded'));
2400 2400
 
2401
-        return apply_filters( 'wpinv_invoice_is_refunded', $is_refunded, $this );
2401
+        return apply_filters('wpinv_invoice_is_refunded', $is_refunded, $this);
2402 2402
     }
2403 2403
     
2404 2404
     public function is_free() {
2405 2405
         $is_free = false;
2406 2406
         
2407
-        if ( !( (float)wpinv_round_amount( $this->get_total() ) > 0 ) ) {
2408
-            if ( $this->is_parent() && $this->is_recurring() ) {
2409
-                $is_free = (float)wpinv_round_amount( $this->get_recurring_details( 'total' ) ) > 0 ? false : true;
2407
+        if (!((float) wpinv_round_amount($this->get_total()) > 0)) {
2408
+            if ($this->is_parent() && $this->is_recurring()) {
2409
+                $is_free = (float) wpinv_round_amount($this->get_recurring_details('total')) > 0 ? false : true;
2410 2410
             } else {
2411 2411
                 $is_free = true;
2412 2412
             }
2413 2413
         }
2414 2414
         
2415
-        return apply_filters( 'wpinv_invoice_is_free', $is_free, $this );
2415
+        return apply_filters('wpinv_invoice_is_free', $is_free, $this);
2416 2416
     }
2417 2417
     
2418 2418
     public function has_vat() {
@@ -2420,41 +2420,41 @@  discard block
 block discarded – undo
2420 2420
         
2421 2421
         $requires_vat = false;
2422 2422
         
2423
-        if ( $this->country ) {
2423
+        if ($this->country) {
2424 2424
             $wpi_country        = $this->country;
2425 2425
             
2426
-            $requires_vat       = $wpinv_euvat->requires_vat( $requires_vat, $this->get_user_id(), $wpinv_euvat->invoice_has_digital_rule( $this ) );
2426
+            $requires_vat       = $wpinv_euvat->requires_vat($requires_vat, $this->get_user_id(), $wpinv_euvat->invoice_has_digital_rule($this));
2427 2427
         }
2428 2428
         
2429
-        return apply_filters( 'wpinv_invoice_has_vat', $requires_vat, $this );
2429
+        return apply_filters('wpinv_invoice_has_vat', $requires_vat, $this);
2430 2430
     }
2431 2431
     
2432 2432
     public function refresh_item_ids() {
2433 2433
         $item_ids = array();
2434 2434
         
2435
-        if ( !empty( $this->cart_details ) ) {
2436
-            foreach ( $this->cart_details as $key => $item ) {
2437
-                if ( !empty( $item['id'] ) ) {
2435
+        if (!empty($this->cart_details)) {
2436
+            foreach ($this->cart_details as $key => $item) {
2437
+                if (!empty($item['id'])) {
2438 2438
                     $item_ids[] = $item['id'];
2439 2439
                 }
2440 2440
             }
2441 2441
         }
2442 2442
         
2443
-        $item_ids = !empty( $item_ids ) ? implode( ',', array_unique( $item_ids ) ) : '';
2443
+        $item_ids = !empty($item_ids) ? implode(',', array_unique($item_ids)) : '';
2444 2444
         
2445
-        update_post_meta( $this->ID, '_wpinv_item_ids', $item_ids );
2445
+        update_post_meta($this->ID, '_wpinv_item_ids', $item_ids);
2446 2446
     }
2447 2447
     
2448
-    public function get_invoice_quote_type( $post_id ) {
2449
-        if ( empty( $post_id ) ) {
2448
+    public function get_invoice_quote_type($post_id) {
2449
+        if (empty($post_id)) {
2450 2450
             return '';
2451 2451
         }
2452 2452
 
2453
-        $type = get_post_type( $post_id );
2453
+        $type = get_post_type($post_id);
2454 2454
 
2455
-        if ( 'wpi_invoice' === $type ) {
2455
+        if ('wpi_invoice' === $type) {
2456 2456
             $post_type = __('Invoice', 'invoicing');
2457
-        } else{
2457
+        } else {
2458 2458
             $post_type = __('Quote', 'invoicing');
2459 2459
         }
2460 2460
 
Please login to merge, or discard this patch.