Passed
Push — master ( 7a26f0...499ba9 )
by Brian
05:15
created
includes/admin/meta-boxes/class-getpaid-meta-box-description.php 2 patches
Indentation   +19 added lines, -19 removed lines patch added patch discarded remove patch
@@ -13,25 +13,25 @@
 block discarded – undo
13 13
  */
14 14
 class GetPaid_Meta_Box_Description {
15 15
 
16
-	/**
17
-	 * Output the metabox.
18
-	 *
19
-	 * @param WP_Post $post Post object.
20
-	 */
21
-	public static function output( $post ) {
16
+    /**
17
+     * Output the metabox.
18
+     *
19
+     * @param WP_Post $post Post object.
20
+     */
21
+    public static function output( $post ) {
22 22
 
23
-		$settings = array(
24
-			'textarea_name' => 'excerpt',
25
-			'quicktags'     => array( 'buttons' => 'em,strong,link' ),
26
-			'teeny'         => true,
27
-			'media_buttons' => false,
28
-			'tinymce'       => array(
29
-				'theme_advanced_buttons1' => 'bold,italic,strikethrough,separator,justifyleft,justifycenter,justifyright,separator,link,unlink,separator,undo,redo,separator',
30
-				'theme_advanced_buttons2' => '',
31
-			),
32
-			'editor_css'    => '<style>#wp-excerpt-editor-container .wp-editor-area{height:175px; width:100%;}</style>',
33
-		);
23
+        $settings = array(
24
+            'textarea_name' => 'excerpt',
25
+            'quicktags'     => array( 'buttons' => 'em,strong,link' ),
26
+            'teeny'         => true,
27
+            'media_buttons' => false,
28
+            'tinymce'       => array(
29
+                'theme_advanced_buttons1' => 'bold,italic,strikethrough,separator,justifyleft,justifycenter,justifyright,separator,link,unlink,separator,undo,redo,separator',
30
+                'theme_advanced_buttons2' => '',
31
+            ),
32
+            'editor_css'    => '<style>#wp-excerpt-editor-container .wp-editor-area{height:175px; width:100%;}</style>',
33
+        );
34 34
 
35
-		wp_editor( htmlspecialchars_decode( $post->post_excerpt, ENT_QUOTES ), 'excerpt', apply_filters( 'getpaid_description_editor_settings', $settings ) );
36
-	}
35
+        wp_editor( htmlspecialchars_decode( $post->post_excerpt, ENT_QUOTES ), 'excerpt', apply_filters( 'getpaid_description_editor_settings', $settings ) );
36
+    }
37 37
 }
Please login to merge, or discard this patch.
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -6,7 +6,7 @@  discard block
 block discarded – undo
6 6
  *
7 7
  */
8 8
 
9
-defined( 'ABSPATH' ) || exit;
9
+defined('ABSPATH') || exit;
10 10
 
11 11
 /**
12 12
  * GetPaid_Meta_Box_Description Class.
@@ -18,11 +18,11 @@  discard block
 block discarded – undo
18 18
 	 *
19 19
 	 * @param WP_Post $post Post object.
20 20
 	 */
21
-	public static function output( $post ) {
21
+	public static function output($post) {
22 22
 
23 23
 		$settings = array(
24 24
 			'textarea_name' => 'excerpt',
25
-			'quicktags'     => array( 'buttons' => 'em,strong,link' ),
25
+			'quicktags'     => array('buttons' => 'em,strong,link'),
26 26
 			'teeny'         => true,
27 27
 			'media_buttons' => false,
28 28
 			'tinymce'       => array(
@@ -32,6 +32,6 @@  discard block
 block discarded – undo
32 32
 			'editor_css'    => '<style>#wp-excerpt-editor-container .wp-editor-area{height:175px; width:100%;}</style>',
33 33
 		);
34 34
 
35
-		wp_editor( htmlspecialchars_decode( $post->post_excerpt, ENT_QUOTES ), 'excerpt', apply_filters( 'getpaid_description_editor_settings', $settings ) );
35
+		wp_editor(htmlspecialchars_decode($post->post_excerpt, ENT_QUOTES), 'excerpt', apply_filters('getpaid_description_editor_settings', $settings));
36 36
 	}
37 37
 }
Please login to merge, or discard this patch.
includes/admin/class-getpaid-metaboxes.php 2 patches
Indentation   +243 added lines, -243 removed lines patch added patch discarded remove patch
@@ -12,280 +12,280 @@
 block discarded – undo
12 12
  */
13 13
 class GetPaid_Metaboxes {
14 14
 
15
-	/**
16
-	 * Only save metaboxes once.
17
-	 *
18
-	 * @var boolean
19
-	 */
20
-	private static $saved_meta_boxes = false;
15
+    /**
16
+     * Only save metaboxes once.
17
+     *
18
+     * @var boolean
19
+     */
20
+    private static $saved_meta_boxes = false;
21 21
 
22 22
     /**
23
-	 * Hook in methods.
24
-	 */
25
-	public static function init() {
23
+     * Hook in methods.
24
+     */
25
+    public static function init() {
26 26
 
27
-		// Register metaboxes.
28
-		add_action( 'add_meta_boxes', 'GetPaid_Metaboxes::add_meta_boxes', 50, 2 );
27
+        // Register metaboxes.
28
+        add_action( 'add_meta_boxes', 'GetPaid_Metaboxes::add_meta_boxes', 50, 2 );
29 29
 
30
-		// Remove metaboxes.
31
-		add_action( 'add_meta_boxes', 'GetPaid_Metaboxes::remove_meta_boxes', 30 );
30
+        // Remove metaboxes.
31
+        add_action( 'add_meta_boxes', 'GetPaid_Metaboxes::remove_meta_boxes', 30 );
32 32
 
33
-		// Rename metaboxes.
34
-		add_action( 'add_meta_boxes', 'GetPaid_Metaboxes::rename_meta_boxes', 45 );
33
+        // Rename metaboxes.
34
+        add_action( 'add_meta_boxes', 'GetPaid_Metaboxes::rename_meta_boxes', 45 );
35 35
 
36
-		// Save metaboxes.
37
-		add_action( 'save_post', 'GetPaid_Metaboxes::save_meta_boxes', 1, 2 );
38
-	}
36
+        // Save metaboxes.
37
+        add_action( 'save_post', 'GetPaid_Metaboxes::save_meta_boxes', 1, 2 );
38
+    }
39 39
 
40
-	/**
41
-	 * Register core metaboxes.
42
-	 */
43
-	public static function add_meta_boxes( $post_type, $post ) {
40
+    /**
41
+     * Register core metaboxes.
42
+     */
43
+    public static function add_meta_boxes( $post_type, $post ) {
44 44
 
45
-		// For invoices.
46
-		self::add_invoice_meta_boxes( $post_type, $post );
45
+        // For invoices.
46
+        self::add_invoice_meta_boxes( $post_type, $post );
47 47
 
48
-		// For payment forms.
49
-		self::add_payment_form_meta_boxes( $post_type, $post );
48
+        // For payment forms.
49
+        self::add_payment_form_meta_boxes( $post_type, $post );
50 50
 
51
-		// For invoice items.
52
-		self::add_item_meta_boxes( $post_type );
51
+        // For invoice items.
52
+        self::add_item_meta_boxes( $post_type );
53 53
 
54
-		// For invoice discounts.
55
-		if ( 'wpi_discount' === $post_type ) {
56
-			add_meta_box( 'wpinv_discount_details', __( 'Discount Details', 'invoicing' ), 'GetPaid_Meta_Box_Discount_Details::output', 'wpi_discount', 'normal', 'high' );
57
-		}
54
+        // For invoice discounts.
55
+        if ( 'wpi_discount' === $post_type ) {
56
+            add_meta_box( 'wpinv_discount_details', __( 'Discount Details', 'invoicing' ), 'GetPaid_Meta_Box_Discount_Details::output', 'wpi_discount', 'normal', 'high' );
57
+        }
58 58
 
59
-	}
59
+    }
60 60
 
61
-	/**
62
-	 * Register core metaboxes.
63
-	 */
64
-	protected static function add_payment_form_meta_boxes( $post_type, $post ) {
61
+    /**
62
+     * Register core metaboxes.
63
+     */
64
+    protected static function add_payment_form_meta_boxes( $post_type, $post ) {
65 65
 
66
-		// For payment forms.
67
-		if ( 'wpi_payment_form' === $post_type ) {
66
+        // For payment forms.
67
+        if ( 'wpi_payment_form' === $post_type ) {
68 68
 
69
-			// Design payment form.
70
-			add_meta_box( 'wpinv-payment-form-design', __( 'Payment Form', 'invoicing' ), 'GetPaid_Meta_Box_Payment_Form::output', 'wpi_payment_form', 'normal' );
69
+            // Design payment form.
70
+            add_meta_box( 'wpinv-payment-form-design', __( 'Payment Form', 'invoicing' ), 'GetPaid_Meta_Box_Payment_Form::output', 'wpi_payment_form', 'normal' );
71 71
 
72
-			// Payment form information.
73
-			if ( wpinv_get_default_payment_form() !== $post->ID ) {
74
-				add_meta_box( 'wpinv-payment-form-info', __( 'Details', 'invoicing' ), 'GetPaid_Meta_Box_Payment_Form_Info::output', 'wpi_payment_form', 'side' );
75
-			}
72
+            // Payment form information.
73
+            if ( wpinv_get_default_payment_form() !== $post->ID ) {
74
+                add_meta_box( 'wpinv-payment-form-info', __( 'Details', 'invoicing' ), 'GetPaid_Meta_Box_Payment_Form_Info::output', 'wpi_payment_form', 'side' );
75
+            }
76 76
 }
77 77
 
78
-	}
79
-
80
-	/**
81
-	 * Register core metaboxes.
82
-	 */
83
-	protected static function add_item_meta_boxes( $post_type ) {
78
+    }
84 79
 
85
-		if ( 'wpi_item' === $post_type ) {
86
-
87
-			// Item details.
88
-			add_meta_box( 'wpinv_item_details', __( 'Item Details', 'invoicing' ), 'GetPaid_Meta_Box_Item_Details::output', 'wpi_item', 'normal', 'high' );
89
-
90
-			// If taxes are enabled, register the tax metabox.
91
-			if ( wpinv_use_taxes() ) {
92
-				add_meta_box( 'wpinv_item_vat', __( 'Tax', 'invoicing' ), 'GetPaid_Meta_Box_Item_VAT::output', 'wpi_item', 'normal', 'high' );
93
-			}
80
+    /**
81
+     * Register core metaboxes.
82
+     */
83
+    protected static function add_item_meta_boxes( $post_type ) {
94 84
 
95
-			// Item info.
96
-			add_meta_box( 'wpinv_field_item_info', __( 'Item info', 'invoicing' ), 'GetPaid_Meta_Box_Item_Info::output', 'wpi_item', 'side', 'core' );
85
+        if ( 'wpi_item' === $post_type ) {
97 86
 
98
-			// Item description.
99
-			add_meta_box( 'postexcerpt', __( 'Item Description', 'invoicing' ), 'GetPaid_Meta_Box_Description::output', 'wpi_item', 'normal' );
100
-		}
87
+            // Item details.
88
+            add_meta_box( 'wpinv_item_details', __( 'Item Details', 'invoicing' ), 'GetPaid_Meta_Box_Item_Details::output', 'wpi_item', 'normal', 'high' );
101 89
 
102
-	}
90
+            // If taxes are enabled, register the tax metabox.
91
+            if ( wpinv_use_taxes() ) {
92
+                add_meta_box( 'wpinv_item_vat', __( 'Tax', 'invoicing' ), 'GetPaid_Meta_Box_Item_VAT::output', 'wpi_item', 'normal', 'high' );
93
+            }
103 94
 
104
-	/**
105
-	 * Register invoice metaboxes.
106
-	 */
107
-	protected static function add_invoice_meta_boxes( $post_type, $post ) {
95
+            // Item info.
96
+            add_meta_box( 'wpinv_field_item_info', __( 'Item info', 'invoicing' ), 'GetPaid_Meta_Box_Item_Info::output', 'wpi_item', 'side', 'core' );
108 97
 
109
-		// For invoices...
110
-		if ( getpaid_is_invoice_post_type( $post_type ) ) {
111
-			$invoice = new WPInv_Invoice( $post );
98
+            // Item description.
99
+            add_meta_box( 'postexcerpt', __( 'Item Description', 'invoicing' ), 'GetPaid_Meta_Box_Description::output', 'wpi_item', 'normal' );
100
+        }
112 101
 
113
-			// Resend invoice.
114
-			if ( ! $invoice->is_draft() ) {
102
+    }
115 103
 
116
-				add_meta_box(
117
-					'wpinv-mb-resend-invoice',
118
-					sprintf(
119
-						// translators: %s is the invoice type.
120
-						__( 'Resend %s', 'invoicing' ),
121
-						ucfirst( $invoice->get_invoice_quote_type() )
122
-					),
123
-					'GetPaid_Meta_Box_Resend_Invoice::output',
124
-					$post_type,
125
-					'side',
126
-					'low'
127
-				);
104
+    /**
105
+     * Register invoice metaboxes.
106
+     */
107
+    protected static function add_invoice_meta_boxes( $post_type, $post ) {
108
+
109
+        // For invoices...
110
+        if ( getpaid_is_invoice_post_type( $post_type ) ) {
111
+            $invoice = new WPInv_Invoice( $post );
112
+
113
+            // Resend invoice.
114
+            if ( ! $invoice->is_draft() ) {
115
+
116
+                add_meta_box(
117
+                    'wpinv-mb-resend-invoice',
118
+                    sprintf(
119
+                        // translators: %s is the invoice type.
120
+                        __( 'Resend %s', 'invoicing' ),
121
+                        ucfirst( $invoice->get_invoice_quote_type() )
122
+                    ),
123
+                    'GetPaid_Meta_Box_Resend_Invoice::output',
124
+                    $post_type,
125
+                    'side',
126
+                    'low'
127
+                );
128
+
129
+            }
130
+
131
+            // Subscriptions.
132
+            $subscriptions = getpaid_get_invoice_subscriptions( $invoice );
133
+            if ( ! empty( $subscriptions ) ) {
134
+
135
+                if ( is_array( $subscriptions ) ) {
136
+                    add_meta_box( 'wpinv-mb-subscriptions', __( 'Related Subscriptions', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Subscription::output_related', $post_type, 'advanced' );
137
+                } else {
138
+                    add_meta_box( 'wpinv-mb-subscriptions', __( 'Subscription Details', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Subscription::output', $post_type, 'advanced' );
139
+                }
140
+
141
+                if ( getpaid_count_subscription_invoices( $invoice->is_renewal() ? $invoice->get_parent_id() : $invoice->get_id() ) > 1 ) {
142
+                    add_meta_box( 'wpinv-mb-subscription-invoices', __( 'Related Payments', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Subscription::output_invoices', $post_type, 'advanced' );
143
+                }
144
+}
128 145
 
129
-			}
146
+            // Invoice details.
147
+            add_meta_box(
148
+                'wpinv-details',
149
+                sprintf(
150
+                    // translators: %s is the invoice type.
151
+                    __( '%s Details', 'invoicing' ),
152
+                    ucfirst( $invoice->get_invoice_quote_type() )
153
+                ),
154
+                'GetPaid_Meta_Box_Invoice_Details::output',
155
+                $post_type,
156
+                'side'
157
+            );
158
+
159
+            // Payment details.
160
+            add_meta_box( 'wpinv-payment-meta', __( 'Payment Meta', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Payment_Meta::output', $post_type, 'side', 'default' );
161
+
162
+            // Billing details.
163
+            add_meta_box( 'wpinv-address', __( 'Billing Details', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Address::output', $post_type, 'normal', 'high' );
164
+
165
+            // Invoice items.
166
+            add_meta_box(
167
+                'wpinv-items',
168
+                sprintf(
169
+                    // translators: %s is the invoice type.
170
+                    __( '%s Items', 'invoicing' ),
171
+                    ucfirst( $invoice->get_invoice_quote_type() )
172
+                ),
173
+                'GetPaid_Meta_Box_Invoice_Items::output',
174
+                $post_type,
175
+                'normal',
176
+                'high'
177
+            );
178
+
179
+            // Invoice notes.
180
+            add_meta_box(
181
+                'wpinv-notes',
182
+                sprintf(
183
+                    // translators: %s is the invoice type.
184
+                    __( '%s Notes', 'invoicing' ),
185
+                    ucfirst( $invoice->get_invoice_quote_type() )
186
+                ),
187
+                'WPInv_Meta_Box_Notes::output',
188
+                $post_type,
189
+                'side',
190
+                'low'
191
+            );
192
+
193
+            // Shipping Address.
194
+            if ( get_post_meta( $invoice->get_id(), 'shipping_address', true ) ) {
195
+                add_meta_box( 'wpinv-invoice-shipping-details', __( 'Shipping Address', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Shipping_Address::output', $post_type, 'side', 'high' );
196
+            }
197
+
198
+            // Payment form information.
199
+            if ( get_post_meta( $invoice->get_id(), 'payment_form_data', true ) ) {
200
+                add_meta_box( 'wpinv-invoice-payment-form-details', __( 'Payment Form Details', 'invoicing' ), 'WPInv_Meta_Box_Payment_Form::output_details', $post_type, 'side', 'high' );
201
+            }
202
+}
130 203
 
131
-			// Subscriptions.
132
-			$subscriptions = getpaid_get_invoice_subscriptions( $invoice );
133
-			if ( ! empty( $subscriptions ) ) {
204
+    }
134 205
 
135
-				if ( is_array( $subscriptions ) ) {
136
-					add_meta_box( 'wpinv-mb-subscriptions', __( 'Related Subscriptions', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Subscription::output_related', $post_type, 'advanced' );
137
-				} else {
138
-					add_meta_box( 'wpinv-mb-subscriptions', __( 'Subscription Details', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Subscription::output', $post_type, 'advanced' );
139
-				}
206
+    /**
207
+     * Remove some metaboxes.
208
+     */
209
+    public static function remove_meta_boxes() {
210
+        remove_meta_box( 'wpseo_meta', 'wpi_invoice', 'normal' );
211
+        remove_meta_box( 'postexcerpt', 'wpi_item', 'normal' );
212
+    }
140 213
 
141
-				if ( getpaid_count_subscription_invoices( $invoice->is_renewal() ? $invoice->get_parent_id() : $invoice->get_id() ) > 1 ) {
142
-					add_meta_box( 'wpinv-mb-subscription-invoices', __( 'Related Payments', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Subscription::output_invoices', $post_type, 'advanced' );
143
-				}
144
-}
214
+    /**
215
+     * Rename other metaboxes.
216
+     */
217
+    public static function rename_meta_boxes() {
145 218
 
146
-			// Invoice details.
147
-			add_meta_box(
148
-				'wpinv-details',
149
-				sprintf(
150
-					// translators: %s is the invoice type.
151
-					__( '%s Details', 'invoicing' ),
152
-					ucfirst( $invoice->get_invoice_quote_type() )
153
-				),
154
-				'GetPaid_Meta_Box_Invoice_Details::output',
155
-				$post_type,
156
-				'side'
157
-			);
158
-
159
-			// Payment details.
160
-			add_meta_box( 'wpinv-payment-meta', __( 'Payment Meta', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Payment_Meta::output', $post_type, 'side', 'default' );
161
-
162
-			// Billing details.
163
-			add_meta_box( 'wpinv-address', __( 'Billing Details', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Address::output', $post_type, 'normal', 'high' );
164
-
165
-			// Invoice items.
166
-			add_meta_box(
167
-				'wpinv-items',
168
-				sprintf(
169
-					// translators: %s is the invoice type.
170
-					__( '%s Items', 'invoicing' ),
171
-					ucfirst( $invoice->get_invoice_quote_type() )
172
-				),
173
-				'GetPaid_Meta_Box_Invoice_Items::output',
174
-				$post_type,
175
-				'normal',
176
-				'high'
177
-			);
178
-
179
-			// Invoice notes.
180
-			add_meta_box(
181
-				'wpinv-notes',
182
-				sprintf(
183
-					// translators: %s is the invoice type.
184
-					__( '%s Notes', 'invoicing' ),
185
-					ucfirst( $invoice->get_invoice_quote_type() )
186
-				),
187
-				'WPInv_Meta_Box_Notes::output',
188
-				$post_type,
189
-				'side',
190
-				'low'
191
-			);
192
-
193
-			// Shipping Address.
194
-			if ( get_post_meta( $invoice->get_id(), 'shipping_address', true ) ) {
195
-				add_meta_box( 'wpinv-invoice-shipping-details', __( 'Shipping Address', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Shipping_Address::output', $post_type, 'side', 'high' );
196
-			}
197
-
198
-			// Payment form information.
199
-			if ( get_post_meta( $invoice->get_id(), 'payment_form_data', true ) ) {
200
-				add_meta_box( 'wpinv-invoice-payment-form-details', __( 'Payment Form Details', 'invoicing' ), 'WPInv_Meta_Box_Payment_Form::output_details', $post_type, 'side', 'high' );
201
-			}
202
-}
219
+    }
203 220
 
204
-	}
205
-
206
-	/**
207
-	 * Remove some metaboxes.
208
-	 */
209
-	public static function remove_meta_boxes() {
210
-		remove_meta_box( 'wpseo_meta', 'wpi_invoice', 'normal' );
211
-		remove_meta_box( 'postexcerpt', 'wpi_item', 'normal' );
212
-	}
213
-
214
-	/**
215
-	 * Rename other metaboxes.
216
-	 */
217
-	public static function rename_meta_boxes() {
218
-
219
-	}
220
-
221
-	/**
222
-	 * Check if we're saving, then trigger an action based on the post type.
223
-	 *
224
-	 * @param  int    $post_id Post ID.
225
-	 * @param  object $post Post object.
226
-	 */
227
-	public static function save_meta_boxes( $post_id, $post ) {
228
-		$post_id = absint( $post_id );
229
-		$data    = wp_kses_post_deep( wp_unslash( $_POST ) );
230
-
231
-		// Do not save for ajax requests.
232
-		if ( ( defined( 'DOING_AJAX' ) && DOING_AJAX ) || isset( $_REQUEST['bulk_edit'] ) ) {
233
-			return;
234
-		}
235
-
236
-		// $post_id and $post are required
237
-		if ( empty( $post_id ) || empty( $post ) || self::$saved_meta_boxes ) {
238
-			return;
239
-		}
240
-
241
-		// Dont' save meta boxes for revisions or autosaves.
242
-		if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || is_int( wp_is_post_revision( $post ) ) || is_int( wp_is_post_autosave( $post ) ) ) {
243
-			return;
244
-		}
245
-
246
-		// Check the nonce.
247
-		if ( empty( $data['getpaid_meta_nonce'] ) || ! wp_verify_nonce( $data['getpaid_meta_nonce'], 'getpaid_meta_nonce' ) ) {
248
-			return;
249
-		}
250
-
251
-		// Check the post being saved == the $post_id to prevent triggering this call for other save_post events.
252
-		if ( empty( $data['post_ID'] ) || absint( $data['post_ID'] ) !== $post_id ) {
253
-			return;
254
-		}
255
-
256
-		// Check user has permission to edit.
257
-		if ( ! current_user_can( 'edit_post', $post_id ) ) {
258
-			return;
259
-		}
260
-
261
-		if ( getpaid_is_invoice_post_type( $post->post_type ) ) {
262
-
263
-			// We need this save event to run once to avoid potential endless loops.
264
-			self::$saved_meta_boxes = true;
265
-
266
-			return GetPaid_Meta_Box_Invoice_Address::save( $post_id );
267
-
268
-		}
269
-
270
-		// Ensure this is our post type.
271
-		$post_types_map = array(
272
-			'wpi_item'         => 'GetPaid_Meta_Box_Item_Details',
273
-			'wpi_payment_form' => 'GetPaid_Meta_Box_Payment_Form',
274
-			'wpi_discount'     => 'GetPaid_Meta_Box_Discount_Details',
275
-		);
276
-
277
-		// Is this our post type?
278
-		if ( ! isset( $post_types_map[ $post->post_type ] ) ) {
279
-			return;
280
-		}
281
-
282
-		// We need this save event to run once to avoid potential endless loops.
283
-		self::$saved_meta_boxes = true;
284
-
285
-		// Save the post.
286
-		$class = $post_types_map[ $post->post_type ];
287
-		$class::save( $post_id, wp_kses_post_deep( $_POST ), $post );
288
-
289
-	}
221
+    /**
222
+     * Check if we're saving, then trigger an action based on the post type.
223
+     *
224
+     * @param  int    $post_id Post ID.
225
+     * @param  object $post Post object.
226
+     */
227
+    public static function save_meta_boxes( $post_id, $post ) {
228
+        $post_id = absint( $post_id );
229
+        $data    = wp_kses_post_deep( wp_unslash( $_POST ) );
230
+
231
+        // Do not save for ajax requests.
232
+        if ( ( defined( 'DOING_AJAX' ) && DOING_AJAX ) || isset( $_REQUEST['bulk_edit'] ) ) {
233
+            return;
234
+        }
235
+
236
+        // $post_id and $post are required
237
+        if ( empty( $post_id ) || empty( $post ) || self::$saved_meta_boxes ) {
238
+            return;
239
+        }
240
+
241
+        // Dont' save meta boxes for revisions or autosaves.
242
+        if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || is_int( wp_is_post_revision( $post ) ) || is_int( wp_is_post_autosave( $post ) ) ) {
243
+            return;
244
+        }
245
+
246
+        // Check the nonce.
247
+        if ( empty( $data['getpaid_meta_nonce'] ) || ! wp_verify_nonce( $data['getpaid_meta_nonce'], 'getpaid_meta_nonce' ) ) {
248
+            return;
249
+        }
250
+
251
+        // Check the post being saved == the $post_id to prevent triggering this call for other save_post events.
252
+        if ( empty( $data['post_ID'] ) || absint( $data['post_ID'] ) !== $post_id ) {
253
+            return;
254
+        }
255
+
256
+        // Check user has permission to edit.
257
+        if ( ! current_user_can( 'edit_post', $post_id ) ) {
258
+            return;
259
+        }
260
+
261
+        if ( getpaid_is_invoice_post_type( $post->post_type ) ) {
262
+
263
+            // We need this save event to run once to avoid potential endless loops.
264
+            self::$saved_meta_boxes = true;
265
+
266
+            return GetPaid_Meta_Box_Invoice_Address::save( $post_id );
267
+
268
+        }
269
+
270
+        // Ensure this is our post type.
271
+        $post_types_map = array(
272
+            'wpi_item'         => 'GetPaid_Meta_Box_Item_Details',
273
+            'wpi_payment_form' => 'GetPaid_Meta_Box_Payment_Form',
274
+            'wpi_discount'     => 'GetPaid_Meta_Box_Discount_Details',
275
+        );
276
+
277
+        // Is this our post type?
278
+        if ( ! isset( $post_types_map[ $post->post_type ] ) ) {
279
+            return;
280
+        }
281
+
282
+        // We need this save event to run once to avoid potential endless loops.
283
+        self::$saved_meta_boxes = true;
284
+
285
+        // Save the post.
286
+        $class = $post_types_map[ $post->post_type ];
287
+        $class::save( $post_id, wp_kses_post_deep( $_POST ), $post );
288
+
289
+    }
290 290
 
291 291
 }
Please login to merge, or discard this patch.
Spacing   +64 added lines, -64 removed lines patch added patch discarded remove patch
@@ -4,7 +4,7 @@  discard block
 block discarded – undo
4 4
  *
5 5
  */
6 6
 
7
-defined( 'ABSPATH' ) || exit;
7
+defined('ABSPATH') || exit;
8 8
 
9 9
 /**
10 10
  * Metaboxes Admin Class
@@ -25,35 +25,35 @@  discard block
 block discarded – undo
25 25
 	public static function init() {
26 26
 
27 27
 		// Register metaboxes.
28
-		add_action( 'add_meta_boxes', 'GetPaid_Metaboxes::add_meta_boxes', 50, 2 );
28
+		add_action('add_meta_boxes', 'GetPaid_Metaboxes::add_meta_boxes', 50, 2);
29 29
 
30 30
 		// Remove metaboxes.
31
-		add_action( 'add_meta_boxes', 'GetPaid_Metaboxes::remove_meta_boxes', 30 );
31
+		add_action('add_meta_boxes', 'GetPaid_Metaboxes::remove_meta_boxes', 30);
32 32
 
33 33
 		// Rename metaboxes.
34
-		add_action( 'add_meta_boxes', 'GetPaid_Metaboxes::rename_meta_boxes', 45 );
34
+		add_action('add_meta_boxes', 'GetPaid_Metaboxes::rename_meta_boxes', 45);
35 35
 
36 36
 		// Save metaboxes.
37
-		add_action( 'save_post', 'GetPaid_Metaboxes::save_meta_boxes', 1, 2 );
37
+		add_action('save_post', 'GetPaid_Metaboxes::save_meta_boxes', 1, 2);
38 38
 	}
39 39
 
40 40
 	/**
41 41
 	 * Register core metaboxes.
42 42
 	 */
43
-	public static function add_meta_boxes( $post_type, $post ) {
43
+	public static function add_meta_boxes($post_type, $post) {
44 44
 
45 45
 		// For invoices.
46
-		self::add_invoice_meta_boxes( $post_type, $post );
46
+		self::add_invoice_meta_boxes($post_type, $post);
47 47
 
48 48
 		// For payment forms.
49
-		self::add_payment_form_meta_boxes( $post_type, $post );
49
+		self::add_payment_form_meta_boxes($post_type, $post);
50 50
 
51 51
 		// For invoice items.
52
-		self::add_item_meta_boxes( $post_type );
52
+		self::add_item_meta_boxes($post_type);
53 53
 
54 54
 		// For invoice discounts.
55
-		if ( 'wpi_discount' === $post_type ) {
56
-			add_meta_box( 'wpinv_discount_details', __( 'Discount Details', 'invoicing' ), 'GetPaid_Meta_Box_Discount_Details::output', 'wpi_discount', 'normal', 'high' );
55
+		if ('wpi_discount' === $post_type) {
56
+			add_meta_box('wpinv_discount_details', __('Discount Details', 'invoicing'), 'GetPaid_Meta_Box_Discount_Details::output', 'wpi_discount', 'normal', 'high');
57 57
 		}
58 58
 
59 59
 	}
@@ -61,17 +61,17 @@  discard block
 block discarded – undo
61 61
 	/**
62 62
 	 * Register core metaboxes.
63 63
 	 */
64
-	protected static function add_payment_form_meta_boxes( $post_type, $post ) {
64
+	protected static function add_payment_form_meta_boxes($post_type, $post) {
65 65
 
66 66
 		// For payment forms.
67
-		if ( 'wpi_payment_form' === $post_type ) {
67
+		if ('wpi_payment_form' === $post_type) {
68 68
 
69 69
 			// Design payment form.
70
-			add_meta_box( 'wpinv-payment-form-design', __( 'Payment Form', 'invoicing' ), 'GetPaid_Meta_Box_Payment_Form::output', 'wpi_payment_form', 'normal' );
70
+			add_meta_box('wpinv-payment-form-design', __('Payment Form', 'invoicing'), 'GetPaid_Meta_Box_Payment_Form::output', 'wpi_payment_form', 'normal');
71 71
 
72 72
 			// Payment form information.
73
-			if ( wpinv_get_default_payment_form() !== $post->ID ) {
74
-				add_meta_box( 'wpinv-payment-form-info', __( 'Details', 'invoicing' ), 'GetPaid_Meta_Box_Payment_Form_Info::output', 'wpi_payment_form', 'side' );
73
+			if (wpinv_get_default_payment_form() !== $post->ID) {
74
+				add_meta_box('wpinv-payment-form-info', __('Details', 'invoicing'), 'GetPaid_Meta_Box_Payment_Form_Info::output', 'wpi_payment_form', 'side');
75 75
 			}
76 76
 }
77 77
 
@@ -80,23 +80,23 @@  discard block
 block discarded – undo
80 80
 	/**
81 81
 	 * Register core metaboxes.
82 82
 	 */
83
-	protected static function add_item_meta_boxes( $post_type ) {
83
+	protected static function add_item_meta_boxes($post_type) {
84 84
 
85
-		if ( 'wpi_item' === $post_type ) {
85
+		if ('wpi_item' === $post_type) {
86 86
 
87 87
 			// Item details.
88
-			add_meta_box( 'wpinv_item_details', __( 'Item Details', 'invoicing' ), 'GetPaid_Meta_Box_Item_Details::output', 'wpi_item', 'normal', 'high' );
88
+			add_meta_box('wpinv_item_details', __('Item Details', 'invoicing'), 'GetPaid_Meta_Box_Item_Details::output', 'wpi_item', 'normal', 'high');
89 89
 
90 90
 			// If taxes are enabled, register the tax metabox.
91
-			if ( wpinv_use_taxes() ) {
92
-				add_meta_box( 'wpinv_item_vat', __( 'Tax', 'invoicing' ), 'GetPaid_Meta_Box_Item_VAT::output', 'wpi_item', 'normal', 'high' );
91
+			if (wpinv_use_taxes()) {
92
+				add_meta_box('wpinv_item_vat', __('Tax', 'invoicing'), 'GetPaid_Meta_Box_Item_VAT::output', 'wpi_item', 'normal', 'high');
93 93
 			}
94 94
 
95 95
 			// Item info.
96
-			add_meta_box( 'wpinv_field_item_info', __( 'Item info', 'invoicing' ), 'GetPaid_Meta_Box_Item_Info::output', 'wpi_item', 'side', 'core' );
96
+			add_meta_box('wpinv_field_item_info', __('Item info', 'invoicing'), 'GetPaid_Meta_Box_Item_Info::output', 'wpi_item', 'side', 'core');
97 97
 
98 98
 			// Item description.
99
-			add_meta_box( 'postexcerpt', __( 'Item Description', 'invoicing' ), 'GetPaid_Meta_Box_Description::output', 'wpi_item', 'normal' );
99
+			add_meta_box('postexcerpt', __('Item Description', 'invoicing'), 'GetPaid_Meta_Box_Description::output', 'wpi_item', 'normal');
100 100
 		}
101 101
 
102 102
 	}
@@ -104,21 +104,21 @@  discard block
 block discarded – undo
104 104
 	/**
105 105
 	 * Register invoice metaboxes.
106 106
 	 */
107
-	protected static function add_invoice_meta_boxes( $post_type, $post ) {
107
+	protected static function add_invoice_meta_boxes($post_type, $post) {
108 108
 
109 109
 		// For invoices...
110
-		if ( getpaid_is_invoice_post_type( $post_type ) ) {
111
-			$invoice = new WPInv_Invoice( $post );
110
+		if (getpaid_is_invoice_post_type($post_type)) {
111
+			$invoice = new WPInv_Invoice($post);
112 112
 
113 113
 			// Resend invoice.
114
-			if ( ! $invoice->is_draft() ) {
114
+			if (!$invoice->is_draft()) {
115 115
 
116 116
 				add_meta_box(
117 117
 					'wpinv-mb-resend-invoice',
118 118
 					sprintf(
119 119
 						// translators: %s is the invoice type.
120
-						__( 'Resend %s', 'invoicing' ),
121
-						ucfirst( $invoice->get_invoice_quote_type() )
120
+						__('Resend %s', 'invoicing'),
121
+						ucfirst($invoice->get_invoice_quote_type())
122 122
 					),
123 123
 					'GetPaid_Meta_Box_Resend_Invoice::output',
124 124
 					$post_type,
@@ -129,17 +129,17 @@  discard block
 block discarded – undo
129 129
 			}
130 130
 
131 131
 			// Subscriptions.
132
-			$subscriptions = getpaid_get_invoice_subscriptions( $invoice );
133
-			if ( ! empty( $subscriptions ) ) {
132
+			$subscriptions = getpaid_get_invoice_subscriptions($invoice);
133
+			if (!empty($subscriptions)) {
134 134
 
135
-				if ( is_array( $subscriptions ) ) {
136
-					add_meta_box( 'wpinv-mb-subscriptions', __( 'Related Subscriptions', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Subscription::output_related', $post_type, 'advanced' );
135
+				if (is_array($subscriptions)) {
136
+					add_meta_box('wpinv-mb-subscriptions', __('Related Subscriptions', 'invoicing'), 'GetPaid_Meta_Box_Invoice_Subscription::output_related', $post_type, 'advanced');
137 137
 				} else {
138
-					add_meta_box( 'wpinv-mb-subscriptions', __( 'Subscription Details', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Subscription::output', $post_type, 'advanced' );
138
+					add_meta_box('wpinv-mb-subscriptions', __('Subscription Details', 'invoicing'), 'GetPaid_Meta_Box_Invoice_Subscription::output', $post_type, 'advanced');
139 139
 				}
140 140
 
141
-				if ( getpaid_count_subscription_invoices( $invoice->is_renewal() ? $invoice->get_parent_id() : $invoice->get_id() ) > 1 ) {
142
-					add_meta_box( 'wpinv-mb-subscription-invoices', __( 'Related Payments', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Subscription::output_invoices', $post_type, 'advanced' );
141
+				if (getpaid_count_subscription_invoices($invoice->is_renewal() ? $invoice->get_parent_id() : $invoice->get_id()) > 1) {
142
+					add_meta_box('wpinv-mb-subscription-invoices', __('Related Payments', 'invoicing'), 'GetPaid_Meta_Box_Invoice_Subscription::output_invoices', $post_type, 'advanced');
143 143
 				}
144 144
 }
145 145
 
@@ -148,8 +148,8 @@  discard block
 block discarded – undo
148 148
 				'wpinv-details',
149 149
 				sprintf(
150 150
 					// translators: %s is the invoice type.
151
-					__( '%s Details', 'invoicing' ),
152
-					ucfirst( $invoice->get_invoice_quote_type() )
151
+					__('%s Details', 'invoicing'),
152
+					ucfirst($invoice->get_invoice_quote_type())
153 153
 				),
154 154
 				'GetPaid_Meta_Box_Invoice_Details::output',
155 155
 				$post_type,
@@ -157,18 +157,18 @@  discard block
 block discarded – undo
157 157
 			);
158 158
 
159 159
 			// Payment details.
160
-			add_meta_box( 'wpinv-payment-meta', __( 'Payment Meta', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Payment_Meta::output', $post_type, 'side', 'default' );
160
+			add_meta_box('wpinv-payment-meta', __('Payment Meta', 'invoicing'), 'GetPaid_Meta_Box_Invoice_Payment_Meta::output', $post_type, 'side', 'default');
161 161
 
162 162
 			// Billing details.
163
-			add_meta_box( 'wpinv-address', __( 'Billing Details', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Address::output', $post_type, 'normal', 'high' );
163
+			add_meta_box('wpinv-address', __('Billing Details', 'invoicing'), 'GetPaid_Meta_Box_Invoice_Address::output', $post_type, 'normal', 'high');
164 164
 
165 165
 			// Invoice items.
166 166
 			add_meta_box(
167 167
 				'wpinv-items',
168 168
 				sprintf(
169 169
 					// translators: %s is the invoice type.
170
-					__( '%s Items', 'invoicing' ),
171
-					ucfirst( $invoice->get_invoice_quote_type() )
170
+					__('%s Items', 'invoicing'),
171
+					ucfirst($invoice->get_invoice_quote_type())
172 172
 				),
173 173
 				'GetPaid_Meta_Box_Invoice_Items::output',
174 174
 				$post_type,
@@ -181,8 +181,8 @@  discard block
 block discarded – undo
181 181
 				'wpinv-notes',
182 182
 				sprintf(
183 183
 					// translators: %s is the invoice type.
184
-					__( '%s Notes', 'invoicing' ),
185
-					ucfirst( $invoice->get_invoice_quote_type() )
184
+					__('%s Notes', 'invoicing'),
185
+					ucfirst($invoice->get_invoice_quote_type())
186 186
 				),
187 187
 				'WPInv_Meta_Box_Notes::output',
188 188
 				$post_type,
@@ -191,13 +191,13 @@  discard block
 block discarded – undo
191 191
 			);
192 192
 
193 193
 			// Shipping Address.
194
-			if ( get_post_meta( $invoice->get_id(), 'shipping_address', true ) ) {
195
-				add_meta_box( 'wpinv-invoice-shipping-details', __( 'Shipping Address', 'invoicing' ), 'GetPaid_Meta_Box_Invoice_Shipping_Address::output', $post_type, 'side', 'high' );
194
+			if (get_post_meta($invoice->get_id(), 'shipping_address', true)) {
195
+				add_meta_box('wpinv-invoice-shipping-details', __('Shipping Address', 'invoicing'), 'GetPaid_Meta_Box_Invoice_Shipping_Address::output', $post_type, 'side', 'high');
196 196
 			}
197 197
 
198 198
 			// Payment form information.
199
-			if ( get_post_meta( $invoice->get_id(), 'payment_form_data', true ) ) {
200
-				add_meta_box( 'wpinv-invoice-payment-form-details', __( 'Payment Form Details', 'invoicing' ), 'WPInv_Meta_Box_Payment_Form::output_details', $post_type, 'side', 'high' );
199
+			if (get_post_meta($invoice->get_id(), 'payment_form_data', true)) {
200
+				add_meta_box('wpinv-invoice-payment-form-details', __('Payment Form Details', 'invoicing'), 'WPInv_Meta_Box_Payment_Form::output_details', $post_type, 'side', 'high');
201 201
 			}
202 202
 }
203 203
 
@@ -207,8 +207,8 @@  discard block
 block discarded – undo
207 207
 	 * Remove some metaboxes.
208 208
 	 */
209 209
 	public static function remove_meta_boxes() {
210
-		remove_meta_box( 'wpseo_meta', 'wpi_invoice', 'normal' );
211
-		remove_meta_box( 'postexcerpt', 'wpi_item', 'normal' );
210
+		remove_meta_box('wpseo_meta', 'wpi_invoice', 'normal');
211
+		remove_meta_box('postexcerpt', 'wpi_item', 'normal');
212 212
 	}
213 213
 
214 214
 	/**
@@ -224,46 +224,46 @@  discard block
 block discarded – undo
224 224
 	 * @param  int    $post_id Post ID.
225 225
 	 * @param  object $post Post object.
226 226
 	 */
227
-	public static function save_meta_boxes( $post_id, $post ) {
228
-		$post_id = absint( $post_id );
229
-		$data    = wp_kses_post_deep( wp_unslash( $_POST ) );
227
+	public static function save_meta_boxes($post_id, $post) {
228
+		$post_id = absint($post_id);
229
+		$data    = wp_kses_post_deep(wp_unslash($_POST));
230 230
 
231 231
 		// Do not save for ajax requests.
232
-		if ( ( defined( 'DOING_AJAX' ) && DOING_AJAX ) || isset( $_REQUEST['bulk_edit'] ) ) {
232
+		if ((defined('DOING_AJAX') && DOING_AJAX) || isset($_REQUEST['bulk_edit'])) {
233 233
 			return;
234 234
 		}
235 235
 
236 236
 		// $post_id and $post are required
237
-		if ( empty( $post_id ) || empty( $post ) || self::$saved_meta_boxes ) {
237
+		if (empty($post_id) || empty($post) || self::$saved_meta_boxes) {
238 238
 			return;
239 239
 		}
240 240
 
241 241
 		// Dont' save meta boxes for revisions or autosaves.
242
-		if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || is_int( wp_is_post_revision( $post ) ) || is_int( wp_is_post_autosave( $post ) ) ) {
242
+		if ((defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) || is_int(wp_is_post_revision($post)) || is_int(wp_is_post_autosave($post))) {
243 243
 			return;
244 244
 		}
245 245
 
246 246
 		// Check the nonce.
247
-		if ( empty( $data['getpaid_meta_nonce'] ) || ! wp_verify_nonce( $data['getpaid_meta_nonce'], 'getpaid_meta_nonce' ) ) {
247
+		if (empty($data['getpaid_meta_nonce']) || !wp_verify_nonce($data['getpaid_meta_nonce'], 'getpaid_meta_nonce')) {
248 248
 			return;
249 249
 		}
250 250
 
251 251
 		// Check the post being saved == the $post_id to prevent triggering this call for other save_post events.
252
-		if ( empty( $data['post_ID'] ) || absint( $data['post_ID'] ) !== $post_id ) {
252
+		if (empty($data['post_ID']) || absint($data['post_ID']) !== $post_id) {
253 253
 			return;
254 254
 		}
255 255
 
256 256
 		// Check user has permission to edit.
257
-		if ( ! current_user_can( 'edit_post', $post_id ) ) {
257
+		if (!current_user_can('edit_post', $post_id)) {
258 258
 			return;
259 259
 		}
260 260
 
261
-		if ( getpaid_is_invoice_post_type( $post->post_type ) ) {
261
+		if (getpaid_is_invoice_post_type($post->post_type)) {
262 262
 
263 263
 			// We need this save event to run once to avoid potential endless loops.
264 264
 			self::$saved_meta_boxes = true;
265 265
 
266
-			return GetPaid_Meta_Box_Invoice_Address::save( $post_id );
266
+			return GetPaid_Meta_Box_Invoice_Address::save($post_id);
267 267
 
268 268
 		}
269 269
 
@@ -275,7 +275,7 @@  discard block
 block discarded – undo
275 275
 		);
276 276
 
277 277
 		// Is this our post type?
278
-		if ( ! isset( $post_types_map[ $post->post_type ] ) ) {
278
+		if (!isset($post_types_map[$post->post_type])) {
279 279
 			return;
280 280
 		}
281 281
 
@@ -283,8 +283,8 @@  discard block
 block discarded – undo
283 283
 		self::$saved_meta_boxes = true;
284 284
 
285 285
 		// Save the post.
286
-		$class = $post_types_map[ $post->post_type ];
287
-		$class::save( $post_id, wp_kses_post_deep( $_POST ), $post );
286
+		$class = $post_types_map[$post->post_type];
287
+		$class::save($post_id, wp_kses_post_deep($_POST), $post);
288 288
 
289 289
 	}
290 290
 
Please login to merge, or discard this patch.
includes/admin/class-getpaid-post-types-admin.php 2 patches
Indentation   +775 added lines, -775 removed lines patch added patch discarded remove patch
@@ -13,725 +13,725 @@  discard block
 block discarded – undo
13 13
 class GetPaid_Post_Types_Admin {
14 14
 
15 15
     /**
16
-	 * Hook in methods.
17
-	 */
18
-	public static function init() {
19
-
20
-		// Init metaboxes.
21
-		GetPaid_Metaboxes::init();
22
-
23
-		// Filter the post updated messages.
24
-		add_filter( 'post_updated_messages', 'GetPaid_Post_Types_Admin::post_updated_messages' );
25
-
26
-		// Filter post actions.
27
-		add_filter( 'post_row_actions', 'GetPaid_Post_Types_Admin::post_row_actions', 10, 2 );
28
-		add_filter( 'post_row_actions', 'GetPaid_Post_Types_Admin::filter_invoice_row_actions', 90, 2 );
29
-
30
-		// Invoice table columns.
31
-		add_filter( 'manage_wpi_invoice_posts_columns', array( __CLASS__, 'invoice_columns' ), 100 );
32
-		add_action( 'manage_wpi_invoice_posts_custom_column', array( __CLASS__, 'display_invoice_columns' ), 10, 2 );
33
-		add_filter( 'bulk_actions-edit-wpi_invoice', array( __CLASS__, 'invoice_bulk_actions' ) );
34
-		add_filter( 'handle_bulk_actions-edit-wpi_invoice', array( __CLASS__, 'handle_invoice_bulk_actions' ), 10, 3 );
35
-
36
-		// Items table columns.
37
-		add_filter( 'manage_wpi_item_posts_columns', array( __CLASS__, 'item_columns' ), 100 );
38
-		add_filter( 'manage_edit-wpi_item_sortable_columns', array( __CLASS__, 'sortable_item_columns' ), 20 );
39
-		add_action( 'manage_wpi_item_posts_custom_column', array( __CLASS__, 'display_item_columns' ), 10, 2 );
40
-		add_action( 'restrict_manage_posts', array( __CLASS__, 'add_item_filters' ), 100 );
41
-		add_action( 'parse_query', array( __CLASS__, 'filter_item_query' ), 100 );
42
-		add_action( 'request', array( __CLASS__, 'reorder_items' ), 100 );
43
-
44
-		// Payment forms columns.
45
-		add_filter( 'manage_wpi_payment_form_posts_columns', array( __CLASS__, 'payment_form_columns' ), 100 );
46
-		add_action( 'manage_wpi_payment_form_posts_custom_column', array( __CLASS__, 'display_payment_form_columns' ), 10, 2 );
47
-		add_filter( 'display_post_states', array( __CLASS__, 'filter_payment_form_state' ), 10, 2 );
48
-
49
-		// Discount table columns.
50
-		add_filter( 'manage_wpi_discount_posts_columns', array( __CLASS__, 'discount_columns' ), 100 );
51
-		add_filter( 'bulk_actions-edit-wpi_discount', '__return_empty_array', 100 );
52
-
53
-		// Deleting posts.
54
-		add_action( 'delete_post', array( __CLASS__, 'delete_post' ) );
55
-		add_filter( 'display_post_states', array( __CLASS__, 'filter_discount_state' ), 10, 2 );
56
-
57
-		add_filter( 'display_post_states', array( __CLASS__, 'add_display_post_states' ), 10, 2 );
58
-	}
59
-
60
-	/**
61
-	 * Post updated messages.
62
-	 */
63
-	public static function post_updated_messages( $messages ) {
64
-		global $post;
65
-
66
-		$messages['wpi_discount'] = array(
67
-			0  => '',
68
-			1  => __( 'Discount updated.', 'invoicing' ),
69
-			2  => __( 'Custom field updated.', 'invoicing' ),
70
-			3  => __( 'Custom field deleted.', 'invoicing' ),
71
-			4  => __( 'Discount updated.', 'invoicing' ),
72
-			5  => isset( $_GET['revision'] ) ? wp_sprintf( __( 'Discount restored to revision from %s', 'invoicing' ), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false,
73
-			6  => __( 'Discount updated.', 'invoicing' ),
74
-			7  => __( 'Discount saved.', 'invoicing' ),
75
-			8  => __( 'Discount submitted.', 'invoicing' ),
76
-			9  => wp_sprintf( __( 'Discount scheduled for: <strong>%1$s</strong>.', 'invoicing' ), date_i18n( __( 'M j, Y @ G:i', 'invoicing' ), strtotime( $post->post_date ) ) ),
77
-			10 => __( 'Discount draft updated.', 'invoicing' ),
78
-		);
79
-
80
-		$messages['wpi_payment_form'] = array(
81
-			0  => '',
82
-			1  => __( 'Payment Form updated.', 'invoicing' ),
83
-			2  => __( 'Custom field updated.', 'invoicing' ),
84
-			3  => __( 'Custom field deleted.', 'invoicing' ),
85
-			4  => __( 'Payment Form updated.', 'invoicing' ),
86
-			5  => isset( $_GET['revision'] ) ? wp_sprintf( __( 'Payment Form restored to revision from %s', 'invoicing' ), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false,
87
-			6  => __( 'Payment Form updated.', 'invoicing' ),
88
-			7  => __( 'Payment Form saved.', 'invoicing' ),
89
-			8  => __( 'Payment Form submitted.', 'invoicing' ),
90
-			9  => wp_sprintf( __( 'Payment Form scheduled for: <strong>%1$s</strong>.', 'invoicing' ), date_i18n( __( 'M j, Y @ G:i', 'invoicing' ), strtotime( $post->post_date ) ) ),
91
-			10 => __( 'Payment Form draft updated.', 'invoicing' ),
92
-		);
93
-
94
-		return $messages;
95
-
96
-	}
97
-
98
-	/**
99
-	 * Post row actions.
100
-	 */
101
-	public static function post_row_actions( $actions, $post ) {
102
-
103
-		$post = get_post( $post );
104
-
105
-		// We do not want to edit the default payment form.
106
-		if ( 'wpi_payment_form' == $post->post_type ) {
107
-
108
-			if ( wpinv_get_default_payment_form() === $post->ID ) {
109
-				unset( $actions['trash'] );
110
-				unset( $actions['inline hide-if-no-js'] );
111
-			}
112
-
113
-			$actions['duplicate'] = sprintf(
114
-				'<a href="%1$s">%2$s</a>',
115
-				esc_url(
116
-					wp_nonce_url(
117
-						add_query_arg(
118
-							array(
119
-								'getpaid-admin-action' => 'duplicate_form',
120
-								'form_id'              => $post->ID,
121
-							)
122
-						),
123
-						'getpaid-nonce',
124
-						'getpaid-nonce'
125
-					)
126
-				),
127
-				esc_html( __( 'Duplicate', 'invoicing' ) )
128
-			);
129
-
130
-		}
131
-
132
-		// Link to item payment form.
133
-		if ( 'wpi_item' == $post->post_type ) {
134
-
135
-			if ( in_array( get_post_meta( $post->ID, '_wpinv_type', true ), array( '', 'fee', 'custom' ), true ) ) {
136
-
137
-				$actions['buy'] = sprintf(
138
-					'<a href="%1$s">%2$s</a>',
139
-					esc_url( getpaid_embed_url( false, $post->ID . '|0' ) ),
140
-					esc_html( __( 'Buy', 'invoicing' ) )
141
-				);
142
-
143
-			}
16
+     * Hook in methods.
17
+     */
18
+    public static function init() {
19
+
20
+        // Init metaboxes.
21
+        GetPaid_Metaboxes::init();
22
+
23
+        // Filter the post updated messages.
24
+        add_filter( 'post_updated_messages', 'GetPaid_Post_Types_Admin::post_updated_messages' );
25
+
26
+        // Filter post actions.
27
+        add_filter( 'post_row_actions', 'GetPaid_Post_Types_Admin::post_row_actions', 10, 2 );
28
+        add_filter( 'post_row_actions', 'GetPaid_Post_Types_Admin::filter_invoice_row_actions', 90, 2 );
29
+
30
+        // Invoice table columns.
31
+        add_filter( 'manage_wpi_invoice_posts_columns', array( __CLASS__, 'invoice_columns' ), 100 );
32
+        add_action( 'manage_wpi_invoice_posts_custom_column', array( __CLASS__, 'display_invoice_columns' ), 10, 2 );
33
+        add_filter( 'bulk_actions-edit-wpi_invoice', array( __CLASS__, 'invoice_bulk_actions' ) );
34
+        add_filter( 'handle_bulk_actions-edit-wpi_invoice', array( __CLASS__, 'handle_invoice_bulk_actions' ), 10, 3 );
35
+
36
+        // Items table columns.
37
+        add_filter( 'manage_wpi_item_posts_columns', array( __CLASS__, 'item_columns' ), 100 );
38
+        add_filter( 'manage_edit-wpi_item_sortable_columns', array( __CLASS__, 'sortable_item_columns' ), 20 );
39
+        add_action( 'manage_wpi_item_posts_custom_column', array( __CLASS__, 'display_item_columns' ), 10, 2 );
40
+        add_action( 'restrict_manage_posts', array( __CLASS__, 'add_item_filters' ), 100 );
41
+        add_action( 'parse_query', array( __CLASS__, 'filter_item_query' ), 100 );
42
+        add_action( 'request', array( __CLASS__, 'reorder_items' ), 100 );
43
+
44
+        // Payment forms columns.
45
+        add_filter( 'manage_wpi_payment_form_posts_columns', array( __CLASS__, 'payment_form_columns' ), 100 );
46
+        add_action( 'manage_wpi_payment_form_posts_custom_column', array( __CLASS__, 'display_payment_form_columns' ), 10, 2 );
47
+        add_filter( 'display_post_states', array( __CLASS__, 'filter_payment_form_state' ), 10, 2 );
48
+
49
+        // Discount table columns.
50
+        add_filter( 'manage_wpi_discount_posts_columns', array( __CLASS__, 'discount_columns' ), 100 );
51
+        add_filter( 'bulk_actions-edit-wpi_discount', '__return_empty_array', 100 );
52
+
53
+        // Deleting posts.
54
+        add_action( 'delete_post', array( __CLASS__, 'delete_post' ) );
55
+        add_filter( 'display_post_states', array( __CLASS__, 'filter_discount_state' ), 10, 2 );
56
+
57
+        add_filter( 'display_post_states', array( __CLASS__, 'add_display_post_states' ), 10, 2 );
58
+    }
59
+
60
+    /**
61
+     * Post updated messages.
62
+     */
63
+    public static function post_updated_messages( $messages ) {
64
+        global $post;
65
+
66
+        $messages['wpi_discount'] = array(
67
+            0  => '',
68
+            1  => __( 'Discount updated.', 'invoicing' ),
69
+            2  => __( 'Custom field updated.', 'invoicing' ),
70
+            3  => __( 'Custom field deleted.', 'invoicing' ),
71
+            4  => __( 'Discount updated.', 'invoicing' ),
72
+            5  => isset( $_GET['revision'] ) ? wp_sprintf( __( 'Discount restored to revision from %s', 'invoicing' ), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false,
73
+            6  => __( 'Discount updated.', 'invoicing' ),
74
+            7  => __( 'Discount saved.', 'invoicing' ),
75
+            8  => __( 'Discount submitted.', 'invoicing' ),
76
+            9  => wp_sprintf( __( 'Discount scheduled for: <strong>%1$s</strong>.', 'invoicing' ), date_i18n( __( 'M j, Y @ G:i', 'invoicing' ), strtotime( $post->post_date ) ) ),
77
+            10 => __( 'Discount draft updated.', 'invoicing' ),
78
+        );
79
+
80
+        $messages['wpi_payment_form'] = array(
81
+            0  => '',
82
+            1  => __( 'Payment Form updated.', 'invoicing' ),
83
+            2  => __( 'Custom field updated.', 'invoicing' ),
84
+            3  => __( 'Custom field deleted.', 'invoicing' ),
85
+            4  => __( 'Payment Form updated.', 'invoicing' ),
86
+            5  => isset( $_GET['revision'] ) ? wp_sprintf( __( 'Payment Form restored to revision from %s', 'invoicing' ), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false,
87
+            6  => __( 'Payment Form updated.', 'invoicing' ),
88
+            7  => __( 'Payment Form saved.', 'invoicing' ),
89
+            8  => __( 'Payment Form submitted.', 'invoicing' ),
90
+            9  => wp_sprintf( __( 'Payment Form scheduled for: <strong>%1$s</strong>.', 'invoicing' ), date_i18n( __( 'M j, Y @ G:i', 'invoicing' ), strtotime( $post->post_date ) ) ),
91
+            10 => __( 'Payment Form draft updated.', 'invoicing' ),
92
+        );
93
+
94
+        return $messages;
95
+
96
+    }
97
+
98
+    /**
99
+     * Post row actions.
100
+     */
101
+    public static function post_row_actions( $actions, $post ) {
102
+
103
+        $post = get_post( $post );
104
+
105
+        // We do not want to edit the default payment form.
106
+        if ( 'wpi_payment_form' == $post->post_type ) {
107
+
108
+            if ( wpinv_get_default_payment_form() === $post->ID ) {
109
+                unset( $actions['trash'] );
110
+                unset( $actions['inline hide-if-no-js'] );
111
+            }
112
+
113
+            $actions['duplicate'] = sprintf(
114
+                '<a href="%1$s">%2$s</a>',
115
+                esc_url(
116
+                    wp_nonce_url(
117
+                        add_query_arg(
118
+                            array(
119
+                                'getpaid-admin-action' => 'duplicate_form',
120
+                                'form_id'              => $post->ID,
121
+                            )
122
+                        ),
123
+                        'getpaid-nonce',
124
+                        'getpaid-nonce'
125
+                    )
126
+                ),
127
+                esc_html( __( 'Duplicate', 'invoicing' ) )
128
+            );
129
+
130
+        }
131
+
132
+        // Link to item payment form.
133
+        if ( 'wpi_item' == $post->post_type ) {
134
+
135
+            if ( in_array( get_post_meta( $post->ID, '_wpinv_type', true ), array( '', 'fee', 'custom' ), true ) ) {
136
+
137
+                $actions['buy'] = sprintf(
138
+                    '<a href="%1$s">%2$s</a>',
139
+                    esc_url( getpaid_embed_url( false, $post->ID . '|0' ) ),
140
+                    esc_html( __( 'Buy', 'invoicing' ) )
141
+                );
142
+
143
+            }
144 144
 }
145 145
 
146
-		return $actions;
147
-	}
146
+        return $actions;
147
+    }
148 148
 
149
-	/**
149
+    /**
150 150
      * Remove bulk edit option from admin side quote listing
151 151
      *
152 152
      * @since    1.0.0
153 153
      * @param array $actions post actions
154
-	 * @param WP_Post $post
154
+     * @param WP_Post $post
155 155
      * @return array $actions actions without edit option
156 156
      */
157 157
     public static function filter_invoice_row_actions( $actions, $post ) {
158 158
 
159 159
         if ( getpaid_is_invoice_post_type( $post->post_type ) ) {
160 160
 
161
-			$actions = array();
162
-			$invoice = new WPInv_Invoice( $post );
163
-
164
-			$actions['edit'] = sprintf(
165
-				'<a href="%1$s">%2$s</a>',
166
-				esc_url( get_edit_post_link( $invoice->get_id() ) ),
167
-				esc_html( __( 'Edit', 'invoicing' ) )
168
-			);
169
-
170
-			if ( ! $invoice->is_draft() ) {
171
-
172
-				$actions['view'] = sprintf(
173
-					'<a href="%1$s">%2$s</a>',
174
-					esc_url( $invoice->get_view_url() ),
175
-					sprintf(
176
-						// translators: %s is the invoice type
177
-						esc_html__( 'View %s', 'invoicing' ),
178
-						getpaid_get_post_type_label( $invoice->get_post_type(), false )
179
-					)
180
-				);
181
-
182
-				$actions['send'] = sprintf(
183
-					'<a href="%1$s">%2$s</a>',
184
-					esc_url(
185
-						wp_nonce_url(
186
-							add_query_arg(
187
-								array(
188
-									'getpaid-admin-action' => 'send_invoice',
189
-									'invoice_id'           => $invoice->get_id(),
190
-								)
191
-							),
192
-							'getpaid-nonce',
193
-							'getpaid-nonce'
194
-						)
195
-					),
196
-					esc_html( __( 'Send to Customer', 'invoicing' ) )
197
-				);
198
-
199
-			}
200
-
201
-			$actions['duplicate'] = sprintf(
202
-				'<a href="%1$s">%2$s</a>',
203
-				esc_url(
204
-					wp_nonce_url(
205
-						add_query_arg(
206
-							array(
207
-								'getpaid-admin-action' => 'duplicate_invoice',
208
-								'invoice_id'           => $post->ID,
209
-							)
210
-						),
211
-						'getpaid-nonce',
212
-						'getpaid-nonce'
213
-					)
214
-				),
215
-				esc_html( __( 'Duplicate', 'invoicing' ) )
216
-			);
161
+            $actions = array();
162
+            $invoice = new WPInv_Invoice( $post );
163
+
164
+            $actions['edit'] = sprintf(
165
+                '<a href="%1$s">%2$s</a>',
166
+                esc_url( get_edit_post_link( $invoice->get_id() ) ),
167
+                esc_html( __( 'Edit', 'invoicing' ) )
168
+            );
169
+
170
+            if ( ! $invoice->is_draft() ) {
171
+
172
+                $actions['view'] = sprintf(
173
+                    '<a href="%1$s">%2$s</a>',
174
+                    esc_url( $invoice->get_view_url() ),
175
+                    sprintf(
176
+                        // translators: %s is the invoice type
177
+                        esc_html__( 'View %s', 'invoicing' ),
178
+                        getpaid_get_post_type_label( $invoice->get_post_type(), false )
179
+                    )
180
+                );
181
+
182
+                $actions['send'] = sprintf(
183
+                    '<a href="%1$s">%2$s</a>',
184
+                    esc_url(
185
+                        wp_nonce_url(
186
+                            add_query_arg(
187
+                                array(
188
+                                    'getpaid-admin-action' => 'send_invoice',
189
+                                    'invoice_id'           => $invoice->get_id(),
190
+                                )
191
+                            ),
192
+                            'getpaid-nonce',
193
+                            'getpaid-nonce'
194
+                        )
195
+                    ),
196
+                    esc_html( __( 'Send to Customer', 'invoicing' ) )
197
+                );
198
+
199
+            }
200
+
201
+            $actions['duplicate'] = sprintf(
202
+                '<a href="%1$s">%2$s</a>',
203
+                esc_url(
204
+                    wp_nonce_url(
205
+                        add_query_arg(
206
+                            array(
207
+                                'getpaid-admin-action' => 'duplicate_invoice',
208
+                                'invoice_id'           => $post->ID,
209
+                            )
210
+                        ),
211
+                        'getpaid-nonce',
212
+                        'getpaid-nonce'
213
+                    )
214
+                ),
215
+                esc_html( __( 'Duplicate', 'invoicing' ) )
216
+            );
217 217
 
218 218
         }
219 219
 
220 220
         return $actions;
221
-	}
222
-
223
-	/**
224
-	 * Returns an array of invoice table columns.
225
-	 */
226
-	public static function invoice_columns( $columns ) {
227
-
228
-		$columns = array(
229
-			'cb'           => $columns['cb'],
230
-			'number'       => __( 'Invoice', 'invoicing' ),
231
-			'customer'     => __( 'Customer', 'invoicing' ),
232
-			'invoice_date' => __( 'Created', 'invoicing' ),
233
-			'payment_date' => __( 'Completed', 'invoicing' ),
234
-			'amount'       => __( 'Amount', 'invoicing' ),
235
-			'recurring'    => __( 'Recurring', 'invoicing' ),
236
-			'status'       => __( 'Status', 'invoicing' ),
237
-		);
238
-
239
-		return apply_filters( 'wpi_invoice_table_columns', $columns );
240
-	}
241
-
242
-	/**
243
-	 * Displays invoice table columns.
244
-	 */
245
-	public static function display_invoice_columns( $column_name, $post_id ) {
246
-
247
-		$invoice = new WPInv_Invoice( $post_id );
248
-
249
-		switch ( $column_name ) {
250
-
251
-			case 'invoice_date':
252
-				$date_time = esc_attr( $invoice->get_created_date() );
253
-				$date      = esc_html( getpaid_format_date_value( $date_time, '&mdash;', true ) );
254
-				echo wp_kses_post( "<span title='$date_time'>$date</span>" );
255
-				break;
256
-
257
-			case 'payment_date':
258
-				if ( $invoice->is_paid() ) {
259
-					$date_time = esc_attr( $invoice->get_completed_date() );
260
-					$date      = esc_html( getpaid_format_date_value( $date_time, '&mdash;', true ) );
261
-					echo wp_kses_post( "<span title='$date_time'>$date</span>" );
262
-				} else {
263
-					echo '&mdash;';
264
-				}
265
-
266
-				break;
267
-
268
-			case 'amount':
269
-				$amount = $invoice->get_total();
270
-				$formated_amount = wp_kses_post( wpinv_price( $amount, $invoice->get_currency() ) );
271
-
272
-				if ( $invoice->is_refunded() ) {
273
-					$refunded_amount = wpinv_price( 0, $invoice->get_currency() );
274
-					echo wp_kses_post( "<del>$formated_amount</del>&nbsp;<ins>$refunded_amount</ins>" );
275
-				} else {
276
-
277
-					$discount = $invoice->get_total_discount();
278
-
279
-					if ( ! empty( $discount ) ) {
280
-						$new_amount = wpinv_price( $amount + $discount, $invoice->get_currency() );
281
-						echo wp_kses_post( "<del>$new_amount</del>&nbsp;<ins>$formated_amount</ins>" );
282
-					} else {
283
-						echo wp_kses_post( $formated_amount );
284
-					}
285
-				}
286
-
287
-				break;
288
-
289
-			case 'status':
290
-				$status       = esc_html( $invoice->get_status() );
291
-				$status_label = esc_html( $invoice->get_status_nicename() );
292
-
293
-				// If it is paid, show the gateway title.
294
-				if ( $invoice->is_paid() ) {
295
-					$gateway = esc_html( $invoice->get_gateway_title() );
296
-					$gateway = wp_sprintf( esc_attr__( 'Paid via %s', 'invoicing' ), esc_html( $gateway ) );
297
-
298
-					echo wp_kses_post( "<mark class='wpi-help-tip getpaid-invoice-status $status' title='$gateway'><span>$status_label</span></mark>" );
299
-				} else {
300
-					echo wp_kses_post( "<mark class='getpaid-invoice-status $status'><span>$status_label</span></mark>" );
301
-				}
302
-
303
-				// If it is not paid, display the overdue and view status.
304
-				if ( ! $invoice->is_paid() && ! $invoice->is_refunded() ) {
305
-
306
-					// Invoice view status.
307
-					if ( wpinv_is_invoice_viewed( $invoice->get_id() ) ) {
308
-						echo '&nbsp;&nbsp;<i class="fa fa-eye wpi-help-tip" title="' . esc_attr__( 'Viewed by Customer', 'invoicing' ) . '"></i>';
309
-					} else {
310
-						echo '&nbsp;&nbsp;<i class="fa fa-eye-slash wpi-help-tip" title="' . esc_attr__( 'Not Viewed by Customer', 'invoicing' ) . '"></i>';
311
-					}
312
-
313
-					// Display the overview status.
314
-					if ( wpinv_get_option( 'overdue_active' ) ) {
315
-						$due_date = $invoice->get_due_date();
316
-						$fomatted = getpaid_format_date( $due_date );
317
-
318
-						if ( ! empty( $fomatted ) ) {
319
-							$date = wp_sprintf(
320
-								// translators: %s is the due date.
321
-								__( 'Due %s', 'invoicing' ),
322
-								$fomatted
323
-							);
324
-							echo wp_kses_post( "<p class='description' style='color: #888;' title='$due_date'>$fomatted</p>" );
325
-						}
326
-					}
327
-				}
328
-
329
-				break;
330
-
331
-			case 'recurring':
332
-				if ( $invoice->is_recurring() ) {
333
-					echo '<i class="fa fa-check" style="color:#43850a;"></i>';
334
-				} else {
335
-					echo '<i class="fa fa-times" style="color:#616161;"></i>';
336
-				}
337
-				break;
338
-
339
-			case 'number':
340
-				$edit_link       = esc_url( get_edit_post_link( $invoice->get_id() ) );
341
-				$invoice_number  = esc_html( $invoice->get_number() );
342
-				$invoice_details = esc_attr__( 'View Invoice Details', 'invoicing' );
343
-
344
-				echo wp_kses_post( "<a href='$edit_link' title='$invoice_details'><strong>$invoice_number</strong></a>" );
345
-
346
-				do_action( 'getpaid_admin_table_invoice_number_column', $invoice );
347
-				break;
348
-
349
-			case 'customer':
350
-				$customer_name = $invoice->get_user_full_name();
351
-
352
-				if ( empty( $customer_name ) ) {
353
-					$customer_name = $invoice->get_email();
354
-				}
355
-
356
-				if ( ! empty( $customer_name ) ) {
357
-					$customer_details = esc_attr__( 'View Customer Details', 'invoicing' );
358
-					$view_link        = esc_url( add_query_arg( 'user_id', $invoice->get_user_id(), admin_url( 'user-edit.php' ) ) );
359
-					echo wp_kses_post( "<a href='$view_link' title='$customer_details'><span>$customer_name</span></a>" );
360
-				} else {
361
-					echo '<div>&mdash;</div>';
362
-				}
363
-
364
-				break;
365
-
366
-		}
367
-
368
-	}
369
-
370
-	/**
371
-	 * Displays invoice bulk actions.
372
-	 */
373
-	public static function invoice_bulk_actions( $actions ) {
374
-		$actions['resend-invoice'] = __( 'Send to Customer', 'invoicing' );
375
-		return $actions;
376
-	}
377
-
378
-	/**
379
-	 * Processes invoice bulk actions.
380
-	 */
381
-	public static function handle_invoice_bulk_actions( $redirect_url, $action, $post_ids ) {
382
-
383
-		if ( 'resend-invoice' === $action ) {
384
-			foreach ( $post_ids as $post_id ) {
385
-				getpaid()->get( 'invoice_emails' )->user_invoice( new WPInv_Invoice( $post_id ), true );
386
-			}
387
-		}
388
-
389
-		return $redirect_url;
390
-
391
-	}
392
-
393
-	/**
394
-	 * Returns an array of payment forms table columns.
395
-	 */
396
-	public static function payment_form_columns( $columns ) {
397
-
398
-		$columns = array(
399
-			'cb'        => $columns['cb'],
400
-			'title'     => __( 'Name', 'invoicing' ),
401
-			'shortcode' => __( 'Shortcode', 'invoicing' ),
402
-			'earnings'  => __( 'Revenue', 'invoicing' ),
403
-			'refunds'   => __( 'Refunded', 'invoicing' ),
404
-			'items'     => __( 'Items', 'invoicing' ),
405
-			'date'      => __( 'Date', 'invoicing' ),
406
-		);
407
-
408
-		return apply_filters( 'wpi_payment_form_table_columns', $columns );
409
-
410
-	}
411
-
412
-	/**
413
-	 * Displays payment form table columns.
414
-	 */
415
-	public static function display_payment_form_columns( $column_name, $post_id ) {
416
-
417
-		// Retrieve the payment form.
418
-		$form = new GetPaid_Payment_Form( $post_id );
419
-
420
-		switch ( $column_name ) {
421
-
422
-			case 'earnings':
423
-				echo wp_kses_post( wpinv_price( $form->get_earned() ) );
424
-				break;
425
-
426
-			case 'refunds':
427
-				echo wp_kses_post( wpinv_price( $form->get_refunded() ) );
428
-				break;
429
-
430
-			case 'refunds':
431
-				echo wp_kses_post( wpinv_price( $form->get_refunded() ) );
432
-				break;
433
-
434
-			case 'shortcode':
435
-				if ( $form->is_default() ) {
436
-					echo '&mdash;';
437
-				} else {
438
-					echo '<input onClick="this.select()" type="text" value="[getpaid form=' . esc_attr( $form->get_id() ) . ']" style="width: 100%;" readonly/>';
439
-				}
440
-
441
-				break;
221
+    }
442 222
 
443
-			case 'items':
444
-				$items = $form->get_items();
445
-
446
-				if ( $form->is_default() || empty( $items ) ) {
447
-					echo '&mdash;';
448
-					return;
449
-				}
450
-
451
-				$_items = array();
452
-
453
-				foreach ( $items as $item ) {
454
-					$url = $item->get_edit_url();
455
-
456
-					if ( empty( $url ) ) {
457
-						$_items[] = esc_html( $item->get_name() );
458
-					} else {
459
-						$_items[] = sprintf(
460
-							'<a href="%s">%s</a>',
461
-							esc_url( $url ),
462
-							esc_html( $item->get_name() )
463
-						);
464
-					}
223
+    /**
224
+     * Returns an array of invoice table columns.
225
+     */
226
+    public static function invoice_columns( $columns ) {
227
+
228
+        $columns = array(
229
+            'cb'           => $columns['cb'],
230
+            'number'       => __( 'Invoice', 'invoicing' ),
231
+            'customer'     => __( 'Customer', 'invoicing' ),
232
+            'invoice_date' => __( 'Created', 'invoicing' ),
233
+            'payment_date' => __( 'Completed', 'invoicing' ),
234
+            'amount'       => __( 'Amount', 'invoicing' ),
235
+            'recurring'    => __( 'Recurring', 'invoicing' ),
236
+            'status'       => __( 'Status', 'invoicing' ),
237
+        );
238
+
239
+        return apply_filters( 'wpi_invoice_table_columns', $columns );
240
+    }
241
+
242
+    /**
243
+     * Displays invoice table columns.
244
+     */
245
+    public static function display_invoice_columns( $column_name, $post_id ) {
246
+
247
+        $invoice = new WPInv_Invoice( $post_id );
248
+
249
+        switch ( $column_name ) {
250
+
251
+            case 'invoice_date':
252
+                $date_time = esc_attr( $invoice->get_created_date() );
253
+                $date      = esc_html( getpaid_format_date_value( $date_time, '&mdash;', true ) );
254
+                echo wp_kses_post( "<span title='$date_time'>$date</span>" );
255
+                break;
256
+
257
+            case 'payment_date':
258
+                if ( $invoice->is_paid() ) {
259
+                    $date_time = esc_attr( $invoice->get_completed_date() );
260
+                    $date      = esc_html( getpaid_format_date_value( $date_time, '&mdash;', true ) );
261
+                    echo wp_kses_post( "<span title='$date_time'>$date</span>" );
262
+                } else {
263
+                    echo '&mdash;';
264
+                }
265
+
266
+                break;
267
+
268
+            case 'amount':
269
+                $amount = $invoice->get_total();
270
+                $formated_amount = wp_kses_post( wpinv_price( $amount, $invoice->get_currency() ) );
271
+
272
+                if ( $invoice->is_refunded() ) {
273
+                    $refunded_amount = wpinv_price( 0, $invoice->get_currency() );
274
+                    echo wp_kses_post( "<del>$formated_amount</del>&nbsp;<ins>$refunded_amount</ins>" );
275
+                } else {
276
+
277
+                    $discount = $invoice->get_total_discount();
278
+
279
+                    if ( ! empty( $discount ) ) {
280
+                        $new_amount = wpinv_price( $amount + $discount, $invoice->get_currency() );
281
+                        echo wp_kses_post( "<del>$new_amount</del>&nbsp;<ins>$formated_amount</ins>" );
282
+                    } else {
283
+                        echo wp_kses_post( $formated_amount );
284
+                    }
285
+                }
286
+
287
+                break;
288
+
289
+            case 'status':
290
+                $status       = esc_html( $invoice->get_status() );
291
+                $status_label = esc_html( $invoice->get_status_nicename() );
292
+
293
+                // If it is paid, show the gateway title.
294
+                if ( $invoice->is_paid() ) {
295
+                    $gateway = esc_html( $invoice->get_gateway_title() );
296
+                    $gateway = wp_sprintf( esc_attr__( 'Paid via %s', 'invoicing' ), esc_html( $gateway ) );
297
+
298
+                    echo wp_kses_post( "<mark class='wpi-help-tip getpaid-invoice-status $status' title='$gateway'><span>$status_label</span></mark>" );
299
+                } else {
300
+                    echo wp_kses_post( "<mark class='getpaid-invoice-status $status'><span>$status_label</span></mark>" );
301
+                }
302
+
303
+                // If it is not paid, display the overdue and view status.
304
+                if ( ! $invoice->is_paid() && ! $invoice->is_refunded() ) {
305
+
306
+                    // Invoice view status.
307
+                    if ( wpinv_is_invoice_viewed( $invoice->get_id() ) ) {
308
+                        echo '&nbsp;&nbsp;<i class="fa fa-eye wpi-help-tip" title="' . esc_attr__( 'Viewed by Customer', 'invoicing' ) . '"></i>';
309
+                    } else {
310
+                        echo '&nbsp;&nbsp;<i class="fa fa-eye-slash wpi-help-tip" title="' . esc_attr__( 'Not Viewed by Customer', 'invoicing' ) . '"></i>';
311
+                    }
312
+
313
+                    // Display the overview status.
314
+                    if ( wpinv_get_option( 'overdue_active' ) ) {
315
+                        $due_date = $invoice->get_due_date();
316
+                        $fomatted = getpaid_format_date( $due_date );
317
+
318
+                        if ( ! empty( $fomatted ) ) {
319
+                            $date = wp_sprintf(
320
+                                // translators: %s is the due date.
321
+                                __( 'Due %s', 'invoicing' ),
322
+                                $fomatted
323
+                            );
324
+                            echo wp_kses_post( "<p class='description' style='color: #888;' title='$due_date'>$fomatted</p>" );
325
+                        }
326
+                    }
327
+                }
328
+
329
+                break;
330
+
331
+            case 'recurring':
332
+                if ( $invoice->is_recurring() ) {
333
+                    echo '<i class="fa fa-check" style="color:#43850a;"></i>';
334
+                } else {
335
+                    echo '<i class="fa fa-times" style="color:#616161;"></i>';
336
+                }
337
+                break;
338
+
339
+            case 'number':
340
+                $edit_link       = esc_url( get_edit_post_link( $invoice->get_id() ) );
341
+                $invoice_number  = esc_html( $invoice->get_number() );
342
+                $invoice_details = esc_attr__( 'View Invoice Details', 'invoicing' );
343
+
344
+                echo wp_kses_post( "<a href='$edit_link' title='$invoice_details'><strong>$invoice_number</strong></a>" );
345
+
346
+                do_action( 'getpaid_admin_table_invoice_number_column', $invoice );
347
+                break;
348
+
349
+            case 'customer':
350
+                $customer_name = $invoice->get_user_full_name();
351
+
352
+                if ( empty( $customer_name ) ) {
353
+                    $customer_name = $invoice->get_email();
354
+                }
355
+
356
+                if ( ! empty( $customer_name ) ) {
357
+                    $customer_details = esc_attr__( 'View Customer Details', 'invoicing' );
358
+                    $view_link        = esc_url( add_query_arg( 'user_id', $invoice->get_user_id(), admin_url( 'user-edit.php' ) ) );
359
+                    echo wp_kses_post( "<a href='$view_link' title='$customer_details'><span>$customer_name</span></a>" );
360
+                } else {
361
+                    echo '<div>&mdash;</div>';
362
+                }
363
+
364
+                break;
365
+
366
+        }
367
+
368
+    }
369
+
370
+    /**
371
+     * Displays invoice bulk actions.
372
+     */
373
+    public static function invoice_bulk_actions( $actions ) {
374
+        $actions['resend-invoice'] = __( 'Send to Customer', 'invoicing' );
375
+        return $actions;
376
+    }
377
+
378
+    /**
379
+     * Processes invoice bulk actions.
380
+     */
381
+    public static function handle_invoice_bulk_actions( $redirect_url, $action, $post_ids ) {
382
+
383
+        if ( 'resend-invoice' === $action ) {
384
+            foreach ( $post_ids as $post_id ) {
385
+                getpaid()->get( 'invoice_emails' )->user_invoice( new WPInv_Invoice( $post_id ), true );
386
+            }
387
+        }
388
+
389
+        return $redirect_url;
390
+
391
+    }
392
+
393
+    /**
394
+     * Returns an array of payment forms table columns.
395
+     */
396
+    public static function payment_form_columns( $columns ) {
397
+
398
+        $columns = array(
399
+            'cb'        => $columns['cb'],
400
+            'title'     => __( 'Name', 'invoicing' ),
401
+            'shortcode' => __( 'Shortcode', 'invoicing' ),
402
+            'earnings'  => __( 'Revenue', 'invoicing' ),
403
+            'refunds'   => __( 'Refunded', 'invoicing' ),
404
+            'items'     => __( 'Items', 'invoicing' ),
405
+            'date'      => __( 'Date', 'invoicing' ),
406
+        );
407
+
408
+        return apply_filters( 'wpi_payment_form_table_columns', $columns );
409
+
410
+    }
411
+
412
+    /**
413
+     * Displays payment form table columns.
414
+     */
415
+    public static function display_payment_form_columns( $column_name, $post_id ) {
416
+
417
+        // Retrieve the payment form.
418
+        $form = new GetPaid_Payment_Form( $post_id );
419
+
420
+        switch ( $column_name ) {
421
+
422
+            case 'earnings':
423
+                echo wp_kses_post( wpinv_price( $form->get_earned() ) );
424
+                break;
425
+
426
+            case 'refunds':
427
+                echo wp_kses_post( wpinv_price( $form->get_refunded() ) );
428
+                break;
429
+
430
+            case 'refunds':
431
+                echo wp_kses_post( wpinv_price( $form->get_refunded() ) );
432
+                break;
433
+
434
+            case 'shortcode':
435
+                if ( $form->is_default() ) {
436
+                    echo '&mdash;';
437
+                } else {
438
+                    echo '<input onClick="this.select()" type="text" value="[getpaid form=' . esc_attr( $form->get_id() ) . ']" style="width: 100%;" readonly/>';
439
+                }
440
+
441
+                break;
442
+
443
+            case 'items':
444
+                $items = $form->get_items();
445
+
446
+                if ( $form->is_default() || empty( $items ) ) {
447
+                    echo '&mdash;';
448
+                    return;
449
+                }
450
+
451
+                $_items = array();
452
+
453
+                foreach ( $items as $item ) {
454
+                    $url = $item->get_edit_url();
455
+
456
+                    if ( empty( $url ) ) {
457
+                        $_items[] = esc_html( $item->get_name() );
458
+                    } else {
459
+                        $_items[] = sprintf(
460
+                            '<a href="%s">%s</a>',
461
+                            esc_url( $url ),
462
+                            esc_html( $item->get_name() )
463
+                        );
464
+                    }
465 465
 }
466 466
 
467
-				echo wp_kses_post( implode( '<br>', $_items ) );
467
+                echo wp_kses_post( implode( '<br>', $_items ) );
468 468
 
469
-				break;
469
+                break;
470 470
 
471
-		}
471
+        }
472 472
 
473
-	}
473
+    }
474 474
 
475
-	/**
476
-	 * Filters post states.
477
-	 */
478
-	public static function filter_payment_form_state( $post_states, $post ) {
475
+    /**
476
+     * Filters post states.
477
+     */
478
+    public static function filter_payment_form_state( $post_states, $post ) {
479 479
 
480
-		if ( 'wpi_payment_form' === $post->post_type && wpinv_get_default_payment_form() === $post->ID ) {
481
-			$post_states['default_form'] = __( 'Default Payment Form', 'invoicing' );
482
-		}
480
+        if ( 'wpi_payment_form' === $post->post_type && wpinv_get_default_payment_form() === $post->ID ) {
481
+            $post_states['default_form'] = __( 'Default Payment Form', 'invoicing' );
482
+        }
483 483
 
484
-		return $post_states;
484
+        return $post_states;
485 485
 
486
-	}
486
+    }
487 487
 
488
-	/**
489
-	 * Returns an array of coupon table columns.
490
-	 */
491
-	public static function discount_columns( $columns ) {
488
+    /**
489
+     * Returns an array of coupon table columns.
490
+     */
491
+    public static function discount_columns( $columns ) {
492
+
493
+        $columns = array(
494
+            'cb'          => $columns['cb'],
495
+            'title'       => __( 'Name', 'invoicing' ),
496
+            'code'        => __( 'Code', 'invoicing' ),
497
+            'amount'      => __( 'Amount', 'invoicing' ),
498
+            'usage'       => __( 'Usage / Limit', 'invoicing' ),
499
+            'start_date'  => __( 'Start Date', 'invoicing' ),
500
+            'expiry_date' => __( 'Expiry Date', 'invoicing' ),
501
+        );
502
+
503
+        return apply_filters( 'wpi_discount_table_columns', $columns );
504
+    }
492 505
 
493
-		$columns = array(
494
-			'cb'          => $columns['cb'],
495
-			'title'       => __( 'Name', 'invoicing' ),
496
-			'code'        => __( 'Code', 'invoicing' ),
497
-			'amount'      => __( 'Amount', 'invoicing' ),
498
-			'usage'       => __( 'Usage / Limit', 'invoicing' ),
499
-			'start_date'  => __( 'Start Date', 'invoicing' ),
500
-			'expiry_date' => __( 'Expiry Date', 'invoicing' ),
501
-		);
506
+    /**
507
+     * Filters post states.
508
+     */
509
+    public static function filter_discount_state( $post_states, $post ) {
502 510
 
503
-		return apply_filters( 'wpi_discount_table_columns', $columns );
504
-	}
511
+        if ( 'wpi_discount' === $post->post_type ) {
505 512
 
506
-	/**
507
-	 * Filters post states.
508
-	 */
509
-	public static function filter_discount_state( $post_states, $post ) {
513
+            $discount = new WPInv_Discount( $post );
510 514
 
511
-		if ( 'wpi_discount' === $post->post_type ) {
515
+            $status = $discount->is_expired() ? 'expired' : $discount->get_status();
512 516
 
513
-			$discount = new WPInv_Discount( $post );
517
+            if ( 'publish' !== $status ) {
518
+                return array(
519
+                    'discount_status' => wpinv_discount_status( $status ),
520
+                );
521
+            }
514 522
 
515
-			$status = $discount->is_expired() ? 'expired' : $discount->get_status();
523
+            return array();
516 524
 
517
-			if ( 'publish' !== $status ) {
518
-				return array(
519
-					'discount_status' => wpinv_discount_status( $status ),
520
-				);
521
-			}
525
+        }
522 526
 
523
-			return array();
527
+        return $post_states;
524 528
 
525
-		}
529
+    }
526 530
 
527
-		return $post_states;
531
+    /**
532
+     * Returns an array of items table columns.
533
+     */
534
+    public static function item_columns( $columns ) {
535
+
536
+        $columns = array(
537
+            'cb'        => $columns['cb'],
538
+            'title'     => __( 'Name', 'invoicing' ),
539
+            'price'     => __( 'Price', 'invoicing' ),
540
+            'vat_rule'  => __( 'Tax Rule', 'invoicing' ),
541
+            'vat_class' => __( 'Tax Class', 'invoicing' ),
542
+            'type'      => __( 'Type', 'invoicing' ),
543
+            'shortcode' => __( 'Shortcode', 'invoicing' ),
544
+        );
545
+
546
+        if ( ! wpinv_use_taxes() ) {
547
+            unset( $columns['vat_rule'] );
548
+            unset( $columns['vat_class'] );
549
+        }
550
+
551
+        return apply_filters( 'wpi_item_table_columns', $columns );
552
+    }
553
+
554
+    /**
555
+     * Returns an array of sortable items table columns.
556
+     */
557
+    public static function sortable_item_columns( $columns ) {
558
+
559
+        return array_merge(
560
+            $columns,
561
+            array(
562
+                'price'     => 'price',
563
+                'vat_rule'  => 'vat_rule',
564
+                'vat_class' => 'vat_class',
565
+                'type'      => 'type',
566
+            )
567
+        );
568
+
569
+    }
570
+
571
+    /**
572
+     * Displays items table columns.
573
+     */
574
+    public static function display_item_columns( $column_name, $post_id ) {
575
+
576
+        $item = new WPInv_Item( $post_id );
577
+
578
+        switch ( $column_name ) {
579
+
580
+            case 'price':
581
+                if ( ! $item->is_recurring() ) {
582
+                    echo wp_kses_post( $item->get_the_price() );
583
+                    break;
584
+                }
585
+
586
+                $price = wp_sprintf(
587
+                    __( '%1$s / %2$s', 'invoicing' ),
588
+                    $item->get_the_price(),
589
+                    getpaid_get_subscription_period_label( $item->get_recurring_period(), $item->get_recurring_interval(), '' )
590
+                );
591
+
592
+                if ( $item->get_the_price() == $item->get_the_initial_price() ) {
593
+                    echo wp_kses_post( $price );
594
+                    break;
595
+                }
596
+
597
+                echo wp_kses_post( $item->get_the_initial_price() );
598
+
599
+                echo '<span class="meta">' . wp_sprintf( esc_html__( 'then %s', 'invoicing' ), wp_kses_post( $price ) ) . '</span>';
600
+                break;
601
+
602
+            case 'vat_rule':
603
+                echo wp_kses_post( getpaid_get_tax_rule_label( $item->get_vat_rule() ) );
604
+                break;
605
+
606
+            case 'vat_class':
607
+                echo wp_kses_post( getpaid_get_tax_class_label( $item->get_vat_class() ) );
608
+                break;
609
+
610
+            case 'shortcode':
611
+                if ( $item->is_type( array( '', 'fee', 'custom' ) ) ) {
612
+                    echo '<input onClick="this.select()" type="text" value="[getpaid item=' . esc_attr( $item->get_id() ) . ' button=\'Buy Now\']" style="width: 100%;" readonly/>';
613
+                } else {
614
+                    echo '&mdash;';
615
+                }
616
+
617
+                break;
618
+
619
+            case 'type':
620
+                echo wp_kses_post( wpinv_item_type( $item->get_id() ) . '<span class="meta">' . $item->get_custom_singular_name() . '</span>' );
621
+                break;
622
+
623
+        }
624
+
625
+    }
626
+
627
+    /**
628
+     * Lets users filter items using taxes.
629
+     */
630
+    public static function add_item_filters( $post_type ) {
631
+
632
+        // Abort if we're not dealing with items.
633
+        if ( 'wpi_item' !== $post_type ) {
634
+            return;
635
+        }
636
+
637
+        // Filter by vat rules.
638
+        if ( wpinv_use_taxes() ) {
639
+
640
+            // Sanitize selected vat rule.
641
+            $vat_rule   = '';
642
+            $vat_rules  = getpaid_get_tax_rules();
643
+            if ( isset( $_GET['vat_rule'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
644
+                $vat_rule   = sanitize_text_field( $_GET['vat_rule'] ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
645
+            }
646
+
647
+            // Filter by VAT rule.
648
+            wpinv_html_select(
649
+                array(
650
+                    'options'          => array_merge(
651
+                        array(
652
+                            '' => __( 'All Tax Rules', 'invoicing' ),
653
+                        ),
654
+                        $vat_rules
655
+                    ),
656
+                    'name'             => 'vat_rule',
657
+                    'id'               => 'vat_rule',
658
+                    'selected'         => in_array( $vat_rule, array_keys( $vat_rules ), true ) ? $vat_rule : '',
659
+                    'show_option_all'  => false,
660
+                    'show_option_none' => false,
661
+                )
662
+            );
663
+
664
+            // Filter by VAT class.
665
+
666
+            // Sanitize selected vat rule.
667
+            $vat_class   = '';
668
+            $vat_classes = getpaid_get_tax_classes();
669
+            if ( isset( $_GET['vat_class'] ) ) {  // phpcs:ignore WordPress.Security.NonceVerification.Recommended
670
+                $vat_class   = sanitize_text_field( $_GET['vat_class'] );  // phpcs:ignore WordPress.Security.NonceVerification.Recommended
671
+            }
672
+
673
+            wpinv_html_select(
674
+                array(
675
+                    'options'          => array_merge(
676
+                        array(
677
+                            '' => __( 'All Tax Classes', 'invoicing' ),
678
+                        ),
679
+                        $vat_classes
680
+                    ),
681
+                    'name'             => 'vat_class',
682
+                    'id'               => 'vat_class',
683
+                    'selected'         => in_array( $vat_class, array_keys( $vat_classes ), true ) ? $vat_class : '',
684
+                    'show_option_all'  => false,
685
+                    'show_option_none' => false,
686
+                )
687
+            );
688
+
689
+        }
690
+
691
+        // Filter by item type.
692
+        $type   = '';
693
+        if ( isset( $_GET['type'] ) ) {  // phpcs:ignore WordPress.Security.NonceVerification.Recommended
694
+            $type   = sanitize_text_field( $_GET['type'] );  // phpcs:ignore WordPress.Security.NonceVerification.Recommended
695
+        }
528 696
 
529
-	}
697
+        wpinv_html_select(
698
+            array(
699
+                'options'          => array_merge(
700
+                    array(
701
+                        '' => __( 'All item types', 'invoicing' ),
702
+                    ),
703
+                    wpinv_get_item_types()
704
+                ),
705
+                'name'             => 'type',
706
+                'id'               => 'type',
707
+                'selected'         => in_array( $type, wpinv_item_types(), true ) ? $type : '',
708
+                'show_option_all'  => false,
709
+                'show_option_none' => false,
710
+            )
711
+        );
530 712
 
531
-	/**
532
-	 * Returns an array of items table columns.
533
-	 */
534
-	public static function item_columns( $columns ) {
713
+    }
535 714
 
536
-		$columns = array(
537
-			'cb'        => $columns['cb'],
538
-			'title'     => __( 'Name', 'invoicing' ),
539
-			'price'     => __( 'Price', 'invoicing' ),
540
-			'vat_rule'  => __( 'Tax Rule', 'invoicing' ),
541
-			'vat_class' => __( 'Tax Class', 'invoicing' ),
542
-			'type'      => __( 'Type', 'invoicing' ),
543
-			'shortcode' => __( 'Shortcode', 'invoicing' ),
544
-		);
715
+    /**
716
+     * Filters the item query.
717
+     */
718
+    public static function filter_item_query( $query ) {
545 719
 
546
-		if ( ! wpinv_use_taxes() ) {
547
-			unset( $columns['vat_rule'] );
548
-			unset( $columns['vat_class'] );
549
-		}
720
+        // modify the query only if it admin and main query.
721
+        if ( ! ( is_admin() && $query->is_main_query() ) ) {
722
+            return $query;
723
+        }
550 724
 
551
-		return apply_filters( 'wpi_item_table_columns', $columns );
552
-	}
725
+        // we want to modify the query for our items.
726
+        if ( empty( $query->query['post_type'] ) || 'wpi_item' !== $query->query['post_type'] ) {
727
+            return $query;
728
+        }
553 729
 
554
-	/**
555
-	 * Returns an array of sortable items table columns.
556
-	 */
557
-	public static function sortable_item_columns( $columns ) {
558
-
559
-		return array_merge(
560
-			$columns,
561
-			array(
562
-				'price'     => 'price',
563
-				'vat_rule'  => 'vat_rule',
564
-				'vat_class' => 'vat_class',
565
-				'type'      => 'type',
566
-			)
567
-		);
568
-
569
-	}
570
-
571
-	/**
572
-	 * Displays items table columns.
573
-	 */
574
-	public static function display_item_columns( $column_name, $post_id ) {
575
-
576
-		$item = new WPInv_Item( $post_id );
577
-
578
-		switch ( $column_name ) {
579
-
580
-			case 'price':
581
-				if ( ! $item->is_recurring() ) {
582
-					echo wp_kses_post( $item->get_the_price() );
583
-					break;
584
-				}
585
-
586
-				$price = wp_sprintf(
587
-					__( '%1$s / %2$s', 'invoicing' ),
588
-					$item->get_the_price(),
589
-					getpaid_get_subscription_period_label( $item->get_recurring_period(), $item->get_recurring_interval(), '' )
590
-				);
591
-
592
-				if ( $item->get_the_price() == $item->get_the_initial_price() ) {
593
-					echo wp_kses_post( $price );
594
-					break;
595
-				}
596
-
597
-				echo wp_kses_post( $item->get_the_initial_price() );
598
-
599
-				echo '<span class="meta">' . wp_sprintf( esc_html__( 'then %s', 'invoicing' ), wp_kses_post( $price ) ) . '</span>';
600
-				break;
601
-
602
-			case 'vat_rule':
603
-				echo wp_kses_post( getpaid_get_tax_rule_label( $item->get_vat_rule() ) );
604
-				break;
605
-
606
-			case 'vat_class':
607
-				echo wp_kses_post( getpaid_get_tax_class_label( $item->get_vat_class() ) );
608
-				break;
609
-
610
-			case 'shortcode':
611
-				if ( $item->is_type( array( '', 'fee', 'custom' ) ) ) {
612
-					echo '<input onClick="this.select()" type="text" value="[getpaid item=' . esc_attr( $item->get_id() ) . ' button=\'Buy Now\']" style="width: 100%;" readonly/>';
613
-				} else {
614
-					echo '&mdash;';
615
-				}
616
-
617
-				break;
618
-
619
-			case 'type':
620
-				echo wp_kses_post( wpinv_item_type( $item->get_id() ) . '<span class="meta">' . $item->get_custom_singular_name() . '</span>' );
621
-				break;
622
-
623
-		}
624
-
625
-	}
626
-
627
-	/**
628
-	 * Lets users filter items using taxes.
629
-	 */
630
-	public static function add_item_filters( $post_type ) {
631
-
632
-		// Abort if we're not dealing with items.
633
-		if ( 'wpi_item' !== $post_type ) {
634
-			return;
635
-		}
636
-
637
-		// Filter by vat rules.
638
-		if ( wpinv_use_taxes() ) {
639
-
640
-			// Sanitize selected vat rule.
641
-			$vat_rule   = '';
642
-			$vat_rules  = getpaid_get_tax_rules();
643
-			if ( isset( $_GET['vat_rule'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
644
-				$vat_rule   = sanitize_text_field( $_GET['vat_rule'] ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
645
-			}
646
-
647
-			// Filter by VAT rule.
648
-			wpinv_html_select(
649
-				array(
650
-					'options'          => array_merge(
651
-						array(
652
-							'' => __( 'All Tax Rules', 'invoicing' ),
653
-						),
654
-						$vat_rules
655
-					),
656
-					'name'             => 'vat_rule',
657
-					'id'               => 'vat_rule',
658
-					'selected'         => in_array( $vat_rule, array_keys( $vat_rules ), true ) ? $vat_rule : '',
659
-					'show_option_all'  => false,
660
-					'show_option_none' => false,
661
-				)
662
-			);
663
-
664
-			// Filter by VAT class.
665
-
666
-			// Sanitize selected vat rule.
667
-			$vat_class   = '';
668
-			$vat_classes = getpaid_get_tax_classes();
669
-			if ( isset( $_GET['vat_class'] ) ) {  // phpcs:ignore WordPress.Security.NonceVerification.Recommended
670
-				$vat_class   = sanitize_text_field( $_GET['vat_class'] );  // phpcs:ignore WordPress.Security.NonceVerification.Recommended
671
-			}
672
-
673
-			wpinv_html_select(
674
-				array(
675
-					'options'          => array_merge(
676
-						array(
677
-							'' => __( 'All Tax Classes', 'invoicing' ),
678
-						),
679
-						$vat_classes
680
-					),
681
-					'name'             => 'vat_class',
682
-					'id'               => 'vat_class',
683
-					'selected'         => in_array( $vat_class, array_keys( $vat_classes ), true ) ? $vat_class : '',
684
-					'show_option_all'  => false,
685
-					'show_option_none' => false,
686
-				)
687
-			);
688
-
689
-		}
690
-
691
-		// Filter by item type.
692
-		$type   = '';
693
-		if ( isset( $_GET['type'] ) ) {  // phpcs:ignore WordPress.Security.NonceVerification.Recommended
694
-			$type   = sanitize_text_field( $_GET['type'] );  // phpcs:ignore WordPress.Security.NonceVerification.Recommended
695
-		}
696
-
697
-		wpinv_html_select(
698
-			array(
699
-				'options'          => array_merge(
700
-					array(
701
-						'' => __( 'All item types', 'invoicing' ),
702
-					),
703
-					wpinv_get_item_types()
704
-				),
705
-				'name'             => 'type',
706
-				'id'               => 'type',
707
-				'selected'         => in_array( $type, wpinv_item_types(), true ) ? $type : '',
708
-				'show_option_all'  => false,
709
-				'show_option_none' => false,
710
-			)
711
-		);
712
-
713
-	}
714
-
715
-	/**
716
-	 * Filters the item query.
717
-	 */
718
-	public static function filter_item_query( $query ) {
719
-
720
-		// modify the query only if it admin and main query.
721
-		if ( ! ( is_admin() && $query->is_main_query() ) ) {
722
-			return $query;
723
-		}
724
-
725
-		// we want to modify the query for our items.
726
-		if ( empty( $query->query['post_type'] ) || 'wpi_item' !== $query->query['post_type'] ) {
727
-			return $query;
728
-		}
729
-
730
-		if ( empty( $query->query_vars['meta_query'] ) ) {
731
-			$query->query_vars['meta_query'] = array();
732
-		}
733
-
734
-		// Filter vat rule type
730
+        if ( empty( $query->query_vars['meta_query'] ) ) {
731
+            $query->query_vars['meta_query'] = array();
732
+        }
733
+
734
+        // Filter vat rule type
735 735
         if ( ! empty( $_GET['vat_rule'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
736 736
             $query->query_vars['meta_query'][] = array(
737 737
                 'key'     => '_wpinv_vat_rule',
@@ -756,97 +756,97 @@  discard block
 block discarded – undo
756 756
                 'value'   => sanitize_text_field( $_GET['type'] ), // phpcs:ignore WordPress.Security.NonceVerification.Recommended
757 757
                 'compare' => '=',
758 758
             );
759
-		}
760
-
761
-	}
762
-
763
-	/**
764
-	 * Reorders items.
765
-	 */
766
-	public static function reorder_items( $vars ) {
767
-		global $typenow;
768
-
769
-		if ( 'wpi_item' !== $typenow || empty( $vars['orderby'] ) ) {
770
-			return $vars;
771
-		}
772
-
773
-		// By item type.
774
-		if ( 'type' === $vars['orderby'] ) {
775
-			return array_merge(
776
-				$vars,
777
-				array(
778
-					'meta_key' => '_wpinv_type',
779
-					'orderby'  => 'meta_value',
780
-				)
781
-			);
782
-		}
783
-
784
-		// By vat class.
785
-		if ( 'vat_class' === $vars['orderby'] ) {
786
-			return array_merge(
787
-				$vars,
788
-				array(
789
-					'meta_key' => '_wpinv_vat_class',
790
-					'orderby'  => 'meta_value',
791
-				)
792
-			);
793
-		}
794
-
795
-		// By vat rule.
796
-		if ( 'vat_rule' === $vars['orderby'] ) {
797
-			return array_merge(
798
-				$vars,
799
-				array(
800
-					'meta_key' => '_wpinv_vat_rule',
801
-					'orderby'  => 'meta_value',
802
-				)
803
-			);
804
-		}
805
-
806
-		// By price.
807
-		if ( 'price' === $vars['orderby'] ) {
808
-			return array_merge(
809
-				$vars,
810
-				array(
811
-					'meta_key' => '_wpinv_price',
812
-					'orderby'  => 'meta_value_num',
813
-				)
814
-			);
815
-		}
816
-
817
-		return $vars;
818
-
819
-	}
820
-
821
-	/**
822
-	 * Fired when deleting a post.
823
-	 */
824
-	public static function delete_post( $post_id ) {
825
-
826
-		switch ( get_post_type( $post_id ) ) {
827
-
828
-			case 'wpi_item':
829
-				do_action( 'getpaid_before_delete_item', new WPInv_Item( $post_id ) );
830
-				break;
831
-
832
-			case 'wpi_payment_form':
833
-				do_action( 'getpaid_before_delete_payment_form', new GetPaid_Payment_Form( $post_id ) );
834
-				break;
835
-
836
-			case 'wpi_discount':
837
-				do_action( 'getpaid_before_delete_discount', new WPInv_Discount( $post_id ) );
838
-				break;
839
-
840
-			case 'wpi_invoice':
841
-				$invoice = new WPInv_Invoice( $post_id );
842
-				do_action( 'getpaid_before_delete_invoice', $invoice );
843
-				$invoice->get_data_store()->delete_items( $invoice );
844
-				$invoice->get_data_store()->delete_special_fields( $invoice );
845
-				break;
846
-		}
847
-	}
848
-
849
-	/**
759
+        }
760
+
761
+    }
762
+
763
+    /**
764
+     * Reorders items.
765
+     */
766
+    public static function reorder_items( $vars ) {
767
+        global $typenow;
768
+
769
+        if ( 'wpi_item' !== $typenow || empty( $vars['orderby'] ) ) {
770
+            return $vars;
771
+        }
772
+
773
+        // By item type.
774
+        if ( 'type' === $vars['orderby'] ) {
775
+            return array_merge(
776
+                $vars,
777
+                array(
778
+                    'meta_key' => '_wpinv_type',
779
+                    'orderby'  => 'meta_value',
780
+                )
781
+            );
782
+        }
783
+
784
+        // By vat class.
785
+        if ( 'vat_class' === $vars['orderby'] ) {
786
+            return array_merge(
787
+                $vars,
788
+                array(
789
+                    'meta_key' => '_wpinv_vat_class',
790
+                    'orderby'  => 'meta_value',
791
+                )
792
+            );
793
+        }
794
+
795
+        // By vat rule.
796
+        if ( 'vat_rule' === $vars['orderby'] ) {
797
+            return array_merge(
798
+                $vars,
799
+                array(
800
+                    'meta_key' => '_wpinv_vat_rule',
801
+                    'orderby'  => 'meta_value',
802
+                )
803
+            );
804
+        }
805
+
806
+        // By price.
807
+        if ( 'price' === $vars['orderby'] ) {
808
+            return array_merge(
809
+                $vars,
810
+                array(
811
+                    'meta_key' => '_wpinv_price',
812
+                    'orderby'  => 'meta_value_num',
813
+                )
814
+            );
815
+        }
816
+
817
+        return $vars;
818
+
819
+    }
820
+
821
+    /**
822
+     * Fired when deleting a post.
823
+     */
824
+    public static function delete_post( $post_id ) {
825
+
826
+        switch ( get_post_type( $post_id ) ) {
827
+
828
+            case 'wpi_item':
829
+                do_action( 'getpaid_before_delete_item', new WPInv_Item( $post_id ) );
830
+                break;
831
+
832
+            case 'wpi_payment_form':
833
+                do_action( 'getpaid_before_delete_payment_form', new GetPaid_Payment_Form( $post_id ) );
834
+                break;
835
+
836
+            case 'wpi_discount':
837
+                do_action( 'getpaid_before_delete_discount', new WPInv_Discount( $post_id ) );
838
+                break;
839
+
840
+            case 'wpi_invoice':
841
+                $invoice = new WPInv_Invoice( $post_id );
842
+                do_action( 'getpaid_before_delete_invoice', $invoice );
843
+                $invoice->get_data_store()->delete_items( $invoice );
844
+                $invoice->get_data_store()->delete_special_fields( $invoice );
845
+                break;
846
+        }
847
+    }
848
+
849
+    /**
850 850
      * Add a post display state for special GetPaid pages in the page list table.
851 851
      *
852 852
      * @param array   $post_states An array of post display states.
@@ -860,21 +860,21 @@  discard block
 block discarded – undo
860 860
             $post_states['getpaid_success_page'] = __( 'GetPaid Receipt Page', 'invoicing' );
861 861
         }
862 862
 
863
-		foreach ( getpaid_get_invoice_post_types() as $post_type => $label ) {
863
+        foreach ( getpaid_get_invoice_post_types() as $post_type => $label ) {
864 864
 
865
-			if ( wpinv_get_option( "{$post_type}_history_page", 0 ) == $post->ID ) {
866
-				$post_states[ "getpaid_{$post_type}_history_page" ] = sprintf(
867
-					__( 'GetPaid %s History Page', 'invoicing' ),
868
-					$label
869
-				);
870
-			}
865
+            if ( wpinv_get_option( "{$post_type}_history_page", 0 ) == $post->ID ) {
866
+                $post_states[ "getpaid_{$post_type}_history_page" ] = sprintf(
867
+                    __( 'GetPaid %s History Page', 'invoicing' ),
868
+                    $label
869
+                );
870
+            }
871 871
 }
872 872
 
873
-		if ( wpinv_get_option( 'invoice_subscription_page', 0 ) == $post->ID ) {
873
+        if ( wpinv_get_option( 'invoice_subscription_page', 0 ) == $post->ID ) {
874 874
             $post_states['getpaid_invoice_subscription_page'] = __( 'GetPaid Subscription Page', 'invoicing' );
875 875
         }
876 876
 
877
-		if ( wpinv_get_option( 'checkout_page', 0 ) == $post->ID ) {
877
+        if ( wpinv_get_option( 'checkout_page', 0 ) == $post->ID ) {
878 878
             $post_states['getpaid_checkout_page'] = __( 'GetPaid Checkout Page', 'invoicing' );
879 879
         }
880 880
 
Please login to merge, or discard this patch.
Spacing   +244 added lines, -244 removed lines patch added patch discarded remove patch
@@ -4,7 +4,7 @@  discard block
 block discarded – undo
4 4
  *
5 5
  */
6 6
 
7
-defined( 'ABSPATH' ) || exit;
7
+defined('ABSPATH') || exit;
8 8
 
9 9
 /**
10 10
  * Post types Admin Class
@@ -21,74 +21,74 @@  discard block
 block discarded – undo
21 21
 		GetPaid_Metaboxes::init();
22 22
 
23 23
 		// Filter the post updated messages.
24
-		add_filter( 'post_updated_messages', 'GetPaid_Post_Types_Admin::post_updated_messages' );
24
+		add_filter('post_updated_messages', 'GetPaid_Post_Types_Admin::post_updated_messages');
25 25
 
26 26
 		// Filter post actions.
27
-		add_filter( 'post_row_actions', 'GetPaid_Post_Types_Admin::post_row_actions', 10, 2 );
28
-		add_filter( 'post_row_actions', 'GetPaid_Post_Types_Admin::filter_invoice_row_actions', 90, 2 );
27
+		add_filter('post_row_actions', 'GetPaid_Post_Types_Admin::post_row_actions', 10, 2);
28
+		add_filter('post_row_actions', 'GetPaid_Post_Types_Admin::filter_invoice_row_actions', 90, 2);
29 29
 
30 30
 		// Invoice table columns.
31
-		add_filter( 'manage_wpi_invoice_posts_columns', array( __CLASS__, 'invoice_columns' ), 100 );
32
-		add_action( 'manage_wpi_invoice_posts_custom_column', array( __CLASS__, 'display_invoice_columns' ), 10, 2 );
33
-		add_filter( 'bulk_actions-edit-wpi_invoice', array( __CLASS__, 'invoice_bulk_actions' ) );
34
-		add_filter( 'handle_bulk_actions-edit-wpi_invoice', array( __CLASS__, 'handle_invoice_bulk_actions' ), 10, 3 );
31
+		add_filter('manage_wpi_invoice_posts_columns', array(__CLASS__, 'invoice_columns'), 100);
32
+		add_action('manage_wpi_invoice_posts_custom_column', array(__CLASS__, 'display_invoice_columns'), 10, 2);
33
+		add_filter('bulk_actions-edit-wpi_invoice', array(__CLASS__, 'invoice_bulk_actions'));
34
+		add_filter('handle_bulk_actions-edit-wpi_invoice', array(__CLASS__, 'handle_invoice_bulk_actions'), 10, 3);
35 35
 
36 36
 		// Items table columns.
37
-		add_filter( 'manage_wpi_item_posts_columns', array( __CLASS__, 'item_columns' ), 100 );
38
-		add_filter( 'manage_edit-wpi_item_sortable_columns', array( __CLASS__, 'sortable_item_columns' ), 20 );
39
-		add_action( 'manage_wpi_item_posts_custom_column', array( __CLASS__, 'display_item_columns' ), 10, 2 );
40
-		add_action( 'restrict_manage_posts', array( __CLASS__, 'add_item_filters' ), 100 );
41
-		add_action( 'parse_query', array( __CLASS__, 'filter_item_query' ), 100 );
42
-		add_action( 'request', array( __CLASS__, 'reorder_items' ), 100 );
37
+		add_filter('manage_wpi_item_posts_columns', array(__CLASS__, 'item_columns'), 100);
38
+		add_filter('manage_edit-wpi_item_sortable_columns', array(__CLASS__, 'sortable_item_columns'), 20);
39
+		add_action('manage_wpi_item_posts_custom_column', array(__CLASS__, 'display_item_columns'), 10, 2);
40
+		add_action('restrict_manage_posts', array(__CLASS__, 'add_item_filters'), 100);
41
+		add_action('parse_query', array(__CLASS__, 'filter_item_query'), 100);
42
+		add_action('request', array(__CLASS__, 'reorder_items'), 100);
43 43
 
44 44
 		// Payment forms columns.
45
-		add_filter( 'manage_wpi_payment_form_posts_columns', array( __CLASS__, 'payment_form_columns' ), 100 );
46
-		add_action( 'manage_wpi_payment_form_posts_custom_column', array( __CLASS__, 'display_payment_form_columns' ), 10, 2 );
47
-		add_filter( 'display_post_states', array( __CLASS__, 'filter_payment_form_state' ), 10, 2 );
45
+		add_filter('manage_wpi_payment_form_posts_columns', array(__CLASS__, 'payment_form_columns'), 100);
46
+		add_action('manage_wpi_payment_form_posts_custom_column', array(__CLASS__, 'display_payment_form_columns'), 10, 2);
47
+		add_filter('display_post_states', array(__CLASS__, 'filter_payment_form_state'), 10, 2);
48 48
 
49 49
 		// Discount table columns.
50
-		add_filter( 'manage_wpi_discount_posts_columns', array( __CLASS__, 'discount_columns' ), 100 );
51
-		add_filter( 'bulk_actions-edit-wpi_discount', '__return_empty_array', 100 );
50
+		add_filter('manage_wpi_discount_posts_columns', array(__CLASS__, 'discount_columns'), 100);
51
+		add_filter('bulk_actions-edit-wpi_discount', '__return_empty_array', 100);
52 52
 
53 53
 		// Deleting posts.
54
-		add_action( 'delete_post', array( __CLASS__, 'delete_post' ) );
55
-		add_filter( 'display_post_states', array( __CLASS__, 'filter_discount_state' ), 10, 2 );
54
+		add_action('delete_post', array(__CLASS__, 'delete_post'));
55
+		add_filter('display_post_states', array(__CLASS__, 'filter_discount_state'), 10, 2);
56 56
 
57
-		add_filter( 'display_post_states', array( __CLASS__, 'add_display_post_states' ), 10, 2 );
57
+		add_filter('display_post_states', array(__CLASS__, 'add_display_post_states'), 10, 2);
58 58
 	}
59 59
 
60 60
 	/**
61 61
 	 * Post updated messages.
62 62
 	 */
63
-	public static function post_updated_messages( $messages ) {
63
+	public static function post_updated_messages($messages) {
64 64
 		global $post;
65 65
 
66 66
 		$messages['wpi_discount'] = array(
67 67
 			0  => '',
68
-			1  => __( 'Discount updated.', 'invoicing' ),
69
-			2  => __( 'Custom field updated.', 'invoicing' ),
70
-			3  => __( 'Custom field deleted.', 'invoicing' ),
71
-			4  => __( 'Discount updated.', 'invoicing' ),
72
-			5  => isset( $_GET['revision'] ) ? wp_sprintf( __( 'Discount restored to revision from %s', 'invoicing' ), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false,
73
-			6  => __( 'Discount updated.', 'invoicing' ),
74
-			7  => __( 'Discount saved.', 'invoicing' ),
75
-			8  => __( 'Discount submitted.', 'invoicing' ),
76
-			9  => wp_sprintf( __( 'Discount scheduled for: <strong>%1$s</strong>.', 'invoicing' ), date_i18n( __( 'M j, Y @ G:i', 'invoicing' ), strtotime( $post->post_date ) ) ),
77
-			10 => __( 'Discount draft updated.', 'invoicing' ),
68
+			1  => __('Discount updated.', 'invoicing'),
69
+			2  => __('Custom field updated.', 'invoicing'),
70
+			3  => __('Custom field deleted.', 'invoicing'),
71
+			4  => __('Discount updated.', 'invoicing'),
72
+			5  => isset($_GET['revision']) ? wp_sprintf(__('Discount restored to revision from %s', 'invoicing'), wp_post_revision_title((int) $_GET['revision'], false)) : false,
73
+			6  => __('Discount updated.', 'invoicing'),
74
+			7  => __('Discount saved.', 'invoicing'),
75
+			8  => __('Discount submitted.', 'invoicing'),
76
+			9  => wp_sprintf(__('Discount scheduled for: <strong>%1$s</strong>.', 'invoicing'), date_i18n(__('M j, Y @ G:i', 'invoicing'), strtotime($post->post_date))),
77
+			10 => __('Discount draft updated.', 'invoicing'),
78 78
 		);
79 79
 
80 80
 		$messages['wpi_payment_form'] = array(
81 81
 			0  => '',
82
-			1  => __( 'Payment Form updated.', 'invoicing' ),
83
-			2  => __( 'Custom field updated.', 'invoicing' ),
84
-			3  => __( 'Custom field deleted.', 'invoicing' ),
85
-			4  => __( 'Payment Form updated.', 'invoicing' ),
86
-			5  => isset( $_GET['revision'] ) ? wp_sprintf( __( 'Payment Form restored to revision from %s', 'invoicing' ), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false,
87
-			6  => __( 'Payment Form updated.', 'invoicing' ),
88
-			7  => __( 'Payment Form saved.', 'invoicing' ),
89
-			8  => __( 'Payment Form submitted.', 'invoicing' ),
90
-			9  => wp_sprintf( __( 'Payment Form scheduled for: <strong>%1$s</strong>.', 'invoicing' ), date_i18n( __( 'M j, Y @ G:i', 'invoicing' ), strtotime( $post->post_date ) ) ),
91
-			10 => __( 'Payment Form draft updated.', 'invoicing' ),
82
+			1  => __('Payment Form updated.', 'invoicing'),
83
+			2  => __('Custom field updated.', 'invoicing'),
84
+			3  => __('Custom field deleted.', 'invoicing'),
85
+			4  => __('Payment Form updated.', 'invoicing'),
86
+			5  => isset($_GET['revision']) ? wp_sprintf(__('Payment Form restored to revision from %s', 'invoicing'), wp_post_revision_title((int) $_GET['revision'], false)) : false,
87
+			6  => __('Payment Form updated.', 'invoicing'),
88
+			7  => __('Payment Form saved.', 'invoicing'),
89
+			8  => __('Payment Form submitted.', 'invoicing'),
90
+			9  => wp_sprintf(__('Payment Form scheduled for: <strong>%1$s</strong>.', 'invoicing'), date_i18n(__('M j, Y @ G:i', 'invoicing'), strtotime($post->post_date))),
91
+			10 => __('Payment Form draft updated.', 'invoicing'),
92 92
 		);
93 93
 
94 94
 		return $messages;
@@ -98,16 +98,16 @@  discard block
 block discarded – undo
98 98
 	/**
99 99
 	 * Post row actions.
100 100
 	 */
101
-	public static function post_row_actions( $actions, $post ) {
101
+	public static function post_row_actions($actions, $post) {
102 102
 
103
-		$post = get_post( $post );
103
+		$post = get_post($post);
104 104
 
105 105
 		// We do not want to edit the default payment form.
106
-		if ( 'wpi_payment_form' == $post->post_type ) {
106
+		if ('wpi_payment_form' == $post->post_type) {
107 107
 
108
-			if ( wpinv_get_default_payment_form() === $post->ID ) {
109
-				unset( $actions['trash'] );
110
-				unset( $actions['inline hide-if-no-js'] );
108
+			if (wpinv_get_default_payment_form() === $post->ID) {
109
+				unset($actions['trash']);
110
+				unset($actions['inline hide-if-no-js']);
111 111
 			}
112 112
 
113 113
 			$actions['duplicate'] = sprintf(
@@ -124,20 +124,20 @@  discard block
 block discarded – undo
124 124
 						'getpaid-nonce'
125 125
 					)
126 126
 				),
127
-				esc_html( __( 'Duplicate', 'invoicing' ) )
127
+				esc_html(__('Duplicate', 'invoicing'))
128 128
 			);
129 129
 
130 130
 		}
131 131
 
132 132
 		// Link to item payment form.
133
-		if ( 'wpi_item' == $post->post_type ) {
133
+		if ('wpi_item' == $post->post_type) {
134 134
 
135
-			if ( in_array( get_post_meta( $post->ID, '_wpinv_type', true ), array( '', 'fee', 'custom' ), true ) ) {
135
+			if (in_array(get_post_meta($post->ID, '_wpinv_type', true), array('', 'fee', 'custom'), true)) {
136 136
 
137 137
 				$actions['buy'] = sprintf(
138 138
 					'<a href="%1$s">%2$s</a>',
139
-					esc_url( getpaid_embed_url( false, $post->ID . '|0' ) ),
140
-					esc_html( __( 'Buy', 'invoicing' ) )
139
+					esc_url(getpaid_embed_url(false, $post->ID . '|0')),
140
+					esc_html(__('Buy', 'invoicing'))
141 141
 				);
142 142
 
143 143
 			}
@@ -154,28 +154,28 @@  discard block
 block discarded – undo
154 154
 	 * @param WP_Post $post
155 155
      * @return array $actions actions without edit option
156 156
      */
157
-    public static function filter_invoice_row_actions( $actions, $post ) {
157
+    public static function filter_invoice_row_actions($actions, $post) {
158 158
 
159
-        if ( getpaid_is_invoice_post_type( $post->post_type ) ) {
159
+        if (getpaid_is_invoice_post_type($post->post_type)) {
160 160
 
161 161
 			$actions = array();
162
-			$invoice = new WPInv_Invoice( $post );
162
+			$invoice = new WPInv_Invoice($post);
163 163
 
164 164
 			$actions['edit'] = sprintf(
165 165
 				'<a href="%1$s">%2$s</a>',
166
-				esc_url( get_edit_post_link( $invoice->get_id() ) ),
167
-				esc_html( __( 'Edit', 'invoicing' ) )
166
+				esc_url(get_edit_post_link($invoice->get_id())),
167
+				esc_html(__('Edit', 'invoicing'))
168 168
 			);
169 169
 
170
-			if ( ! $invoice->is_draft() ) {
170
+			if (!$invoice->is_draft()) {
171 171
 
172 172
 				$actions['view'] = sprintf(
173 173
 					'<a href="%1$s">%2$s</a>',
174
-					esc_url( $invoice->get_view_url() ),
174
+					esc_url($invoice->get_view_url()),
175 175
 					sprintf(
176 176
 						// translators: %s is the invoice type
177
-						esc_html__( 'View %s', 'invoicing' ),
178
-						getpaid_get_post_type_label( $invoice->get_post_type(), false )
177
+						esc_html__('View %s', 'invoicing'),
178
+						getpaid_get_post_type_label($invoice->get_post_type(), false)
179 179
 					)
180 180
 				);
181 181
 
@@ -193,7 +193,7 @@  discard block
 block discarded – undo
193 193
 							'getpaid-nonce'
194 194
 						)
195 195
 					),
196
-					esc_html( __( 'Send to Customer', 'invoicing' ) )
196
+					esc_html(__('Send to Customer', 'invoicing'))
197 197
 				);
198 198
 
199 199
 			}
@@ -212,7 +212,7 @@  discard block
 block discarded – undo
212 212
 						'getpaid-nonce'
213 213
 					)
214 214
 				),
215
-				esc_html( __( 'Duplicate', 'invoicing' ) )
215
+				esc_html(__('Duplicate', 'invoicing'))
216 216
 			);
217 217
 
218 218
         }
@@ -223,42 +223,42 @@  discard block
 block discarded – undo
223 223
 	/**
224 224
 	 * Returns an array of invoice table columns.
225 225
 	 */
226
-	public static function invoice_columns( $columns ) {
226
+	public static function invoice_columns($columns) {
227 227
 
228 228
 		$columns = array(
229 229
 			'cb'           => $columns['cb'],
230
-			'number'       => __( 'Invoice', 'invoicing' ),
231
-			'customer'     => __( 'Customer', 'invoicing' ),
232
-			'invoice_date' => __( 'Created', 'invoicing' ),
233
-			'payment_date' => __( 'Completed', 'invoicing' ),
234
-			'amount'       => __( 'Amount', 'invoicing' ),
235
-			'recurring'    => __( 'Recurring', 'invoicing' ),
236
-			'status'       => __( 'Status', 'invoicing' ),
230
+			'number'       => __('Invoice', 'invoicing'),
231
+			'customer'     => __('Customer', 'invoicing'),
232
+			'invoice_date' => __('Created', 'invoicing'),
233
+			'payment_date' => __('Completed', 'invoicing'),
234
+			'amount'       => __('Amount', 'invoicing'),
235
+			'recurring'    => __('Recurring', 'invoicing'),
236
+			'status'       => __('Status', 'invoicing'),
237 237
 		);
238 238
 
239
-		return apply_filters( 'wpi_invoice_table_columns', $columns );
239
+		return apply_filters('wpi_invoice_table_columns', $columns);
240 240
 	}
241 241
 
242 242
 	/**
243 243
 	 * Displays invoice table columns.
244 244
 	 */
245
-	public static function display_invoice_columns( $column_name, $post_id ) {
245
+	public static function display_invoice_columns($column_name, $post_id) {
246 246
 
247
-		$invoice = new WPInv_Invoice( $post_id );
247
+		$invoice = new WPInv_Invoice($post_id);
248 248
 
249
-		switch ( $column_name ) {
249
+		switch ($column_name) {
250 250
 
251 251
 			case 'invoice_date':
252
-				$date_time = esc_attr( $invoice->get_created_date() );
253
-				$date      = esc_html( getpaid_format_date_value( $date_time, '&mdash;', true ) );
254
-				echo wp_kses_post( "<span title='$date_time'>$date</span>" );
252
+				$date_time = esc_attr($invoice->get_created_date());
253
+				$date      = esc_html(getpaid_format_date_value($date_time, '&mdash;', true));
254
+				echo wp_kses_post("<span title='$date_time'>$date</span>");
255 255
 				break;
256 256
 
257 257
 			case 'payment_date':
258
-				if ( $invoice->is_paid() ) {
259
-					$date_time = esc_attr( $invoice->get_completed_date() );
260
-					$date      = esc_html( getpaid_format_date_value( $date_time, '&mdash;', true ) );
261
-					echo wp_kses_post( "<span title='$date_time'>$date</span>" );
258
+				if ($invoice->is_paid()) {
259
+					$date_time = esc_attr($invoice->get_completed_date());
260
+					$date      = esc_html(getpaid_format_date_value($date_time, '&mdash;', true));
261
+					echo wp_kses_post("<span title='$date_time'>$date</span>");
262 262
 				} else {
263 263
 					echo '&mdash;';
264 264
 				}
@@ -267,61 +267,61 @@  discard block
 block discarded – undo
267 267
 
268 268
 			case 'amount':
269 269
 				$amount = $invoice->get_total();
270
-				$formated_amount = wp_kses_post( wpinv_price( $amount, $invoice->get_currency() ) );
270
+				$formated_amount = wp_kses_post(wpinv_price($amount, $invoice->get_currency()));
271 271
 
272
-				if ( $invoice->is_refunded() ) {
273
-					$refunded_amount = wpinv_price( 0, $invoice->get_currency() );
274
-					echo wp_kses_post( "<del>$formated_amount</del>&nbsp;<ins>$refunded_amount</ins>" );
272
+				if ($invoice->is_refunded()) {
273
+					$refunded_amount = wpinv_price(0, $invoice->get_currency());
274
+					echo wp_kses_post("<del>$formated_amount</del>&nbsp;<ins>$refunded_amount</ins>");
275 275
 				} else {
276 276
 
277 277
 					$discount = $invoice->get_total_discount();
278 278
 
279
-					if ( ! empty( $discount ) ) {
280
-						$new_amount = wpinv_price( $amount + $discount, $invoice->get_currency() );
281
-						echo wp_kses_post( "<del>$new_amount</del>&nbsp;<ins>$formated_amount</ins>" );
279
+					if (!empty($discount)) {
280
+						$new_amount = wpinv_price($amount + $discount, $invoice->get_currency());
281
+						echo wp_kses_post("<del>$new_amount</del>&nbsp;<ins>$formated_amount</ins>");
282 282
 					} else {
283
-						echo wp_kses_post( $formated_amount );
283
+						echo wp_kses_post($formated_amount);
284 284
 					}
285 285
 				}
286 286
 
287 287
 				break;
288 288
 
289 289
 			case 'status':
290
-				$status       = esc_html( $invoice->get_status() );
291
-				$status_label = esc_html( $invoice->get_status_nicename() );
290
+				$status       = esc_html($invoice->get_status());
291
+				$status_label = esc_html($invoice->get_status_nicename());
292 292
 
293 293
 				// If it is paid, show the gateway title.
294
-				if ( $invoice->is_paid() ) {
295
-					$gateway = esc_html( $invoice->get_gateway_title() );
296
-					$gateway = wp_sprintf( esc_attr__( 'Paid via %s', 'invoicing' ), esc_html( $gateway ) );
294
+				if ($invoice->is_paid()) {
295
+					$gateway = esc_html($invoice->get_gateway_title());
296
+					$gateway = wp_sprintf(esc_attr__('Paid via %s', 'invoicing'), esc_html($gateway));
297 297
 
298
-					echo wp_kses_post( "<mark class='wpi-help-tip getpaid-invoice-status $status' title='$gateway'><span>$status_label</span></mark>" );
298
+					echo wp_kses_post("<mark class='wpi-help-tip getpaid-invoice-status $status' title='$gateway'><span>$status_label</span></mark>");
299 299
 				} else {
300
-					echo wp_kses_post( "<mark class='getpaid-invoice-status $status'><span>$status_label</span></mark>" );
300
+					echo wp_kses_post("<mark class='getpaid-invoice-status $status'><span>$status_label</span></mark>");
301 301
 				}
302 302
 
303 303
 				// If it is not paid, display the overdue and view status.
304
-				if ( ! $invoice->is_paid() && ! $invoice->is_refunded() ) {
304
+				if (!$invoice->is_paid() && !$invoice->is_refunded()) {
305 305
 
306 306
 					// Invoice view status.
307
-					if ( wpinv_is_invoice_viewed( $invoice->get_id() ) ) {
308
-						echo '&nbsp;&nbsp;<i class="fa fa-eye wpi-help-tip" title="' . esc_attr__( 'Viewed by Customer', 'invoicing' ) . '"></i>';
307
+					if (wpinv_is_invoice_viewed($invoice->get_id())) {
308
+						echo '&nbsp;&nbsp;<i class="fa fa-eye wpi-help-tip" title="' . esc_attr__('Viewed by Customer', 'invoicing') . '"></i>';
309 309
 					} else {
310
-						echo '&nbsp;&nbsp;<i class="fa fa-eye-slash wpi-help-tip" title="' . esc_attr__( 'Not Viewed by Customer', 'invoicing' ) . '"></i>';
310
+						echo '&nbsp;&nbsp;<i class="fa fa-eye-slash wpi-help-tip" title="' . esc_attr__('Not Viewed by Customer', 'invoicing') . '"></i>';
311 311
 					}
312 312
 
313 313
 					// Display the overview status.
314
-					if ( wpinv_get_option( 'overdue_active' ) ) {
314
+					if (wpinv_get_option('overdue_active')) {
315 315
 						$due_date = $invoice->get_due_date();
316
-						$fomatted = getpaid_format_date( $due_date );
316
+						$fomatted = getpaid_format_date($due_date);
317 317
 
318
-						if ( ! empty( $fomatted ) ) {
318
+						if (!empty($fomatted)) {
319 319
 							$date = wp_sprintf(
320 320
 								// translators: %s is the due date.
321
-								__( 'Due %s', 'invoicing' ),
321
+								__('Due %s', 'invoicing'),
322 322
 								$fomatted
323 323
 							);
324
-							echo wp_kses_post( "<p class='description' style='color: #888;' title='$due_date'>$fomatted</p>" );
324
+							echo wp_kses_post("<p class='description' style='color: #888;' title='$due_date'>$fomatted</p>");
325 325
 						}
326 326
 					}
327 327
 				}
@@ -329,7 +329,7 @@  discard block
 block discarded – undo
329 329
 				break;
330 330
 
331 331
 			case 'recurring':
332
-				if ( $invoice->is_recurring() ) {
332
+				if ($invoice->is_recurring()) {
333 333
 					echo '<i class="fa fa-check" style="color:#43850a;"></i>';
334 334
 				} else {
335 335
 					echo '<i class="fa fa-times" style="color:#616161;"></i>';
@@ -337,26 +337,26 @@  discard block
 block discarded – undo
337 337
 				break;
338 338
 
339 339
 			case 'number':
340
-				$edit_link       = esc_url( get_edit_post_link( $invoice->get_id() ) );
341
-				$invoice_number  = esc_html( $invoice->get_number() );
342
-				$invoice_details = esc_attr__( 'View Invoice Details', 'invoicing' );
340
+				$edit_link       = esc_url(get_edit_post_link($invoice->get_id()));
341
+				$invoice_number  = esc_html($invoice->get_number());
342
+				$invoice_details = esc_attr__('View Invoice Details', 'invoicing');
343 343
 
344
-				echo wp_kses_post( "<a href='$edit_link' title='$invoice_details'><strong>$invoice_number</strong></a>" );
344
+				echo wp_kses_post("<a href='$edit_link' title='$invoice_details'><strong>$invoice_number</strong></a>");
345 345
 
346
-				do_action( 'getpaid_admin_table_invoice_number_column', $invoice );
346
+				do_action('getpaid_admin_table_invoice_number_column', $invoice);
347 347
 				break;
348 348
 
349 349
 			case 'customer':
350 350
 				$customer_name = $invoice->get_user_full_name();
351 351
 
352
-				if ( empty( $customer_name ) ) {
352
+				if (empty($customer_name)) {
353 353
 					$customer_name = $invoice->get_email();
354 354
 				}
355 355
 
356
-				if ( ! empty( $customer_name ) ) {
357
-					$customer_details = esc_attr__( 'View Customer Details', 'invoicing' );
358
-					$view_link        = esc_url( add_query_arg( 'user_id', $invoice->get_user_id(), admin_url( 'user-edit.php' ) ) );
359
-					echo wp_kses_post( "<a href='$view_link' title='$customer_details'><span>$customer_name</span></a>" );
356
+				if (!empty($customer_name)) {
357
+					$customer_details = esc_attr__('View Customer Details', 'invoicing');
358
+					$view_link        = esc_url(add_query_arg('user_id', $invoice->get_user_id(), admin_url('user-edit.php')));
359
+					echo wp_kses_post("<a href='$view_link' title='$customer_details'><span>$customer_name</span></a>");
360 360
 				} else {
361 361
 					echo '<div>&mdash;</div>';
362 362
 				}
@@ -370,19 +370,19 @@  discard block
 block discarded – undo
370 370
 	/**
371 371
 	 * Displays invoice bulk actions.
372 372
 	 */
373
-	public static function invoice_bulk_actions( $actions ) {
374
-		$actions['resend-invoice'] = __( 'Send to Customer', 'invoicing' );
373
+	public static function invoice_bulk_actions($actions) {
374
+		$actions['resend-invoice'] = __('Send to Customer', 'invoicing');
375 375
 		return $actions;
376 376
 	}
377 377
 
378 378
 	/**
379 379
 	 * Processes invoice bulk actions.
380 380
 	 */
381
-	public static function handle_invoice_bulk_actions( $redirect_url, $action, $post_ids ) {
381
+	public static function handle_invoice_bulk_actions($redirect_url, $action, $post_ids) {
382 382
 
383
-		if ( 'resend-invoice' === $action ) {
384
-			foreach ( $post_ids as $post_id ) {
385
-				getpaid()->get( 'invoice_emails' )->user_invoice( new WPInv_Invoice( $post_id ), true );
383
+		if ('resend-invoice' === $action) {
384
+			foreach ($post_ids as $post_id) {
385
+				getpaid()->get('invoice_emails')->user_invoice(new WPInv_Invoice($post_id), true);
386 386
 			}
387 387
 		}
388 388
 
@@ -393,49 +393,49 @@  discard block
 block discarded – undo
393 393
 	/**
394 394
 	 * Returns an array of payment forms table columns.
395 395
 	 */
396
-	public static function payment_form_columns( $columns ) {
396
+	public static function payment_form_columns($columns) {
397 397
 
398 398
 		$columns = array(
399 399
 			'cb'        => $columns['cb'],
400
-			'title'     => __( 'Name', 'invoicing' ),
401
-			'shortcode' => __( 'Shortcode', 'invoicing' ),
402
-			'earnings'  => __( 'Revenue', 'invoicing' ),
403
-			'refunds'   => __( 'Refunded', 'invoicing' ),
404
-			'items'     => __( 'Items', 'invoicing' ),
405
-			'date'      => __( 'Date', 'invoicing' ),
400
+			'title'     => __('Name', 'invoicing'),
401
+			'shortcode' => __('Shortcode', 'invoicing'),
402
+			'earnings'  => __('Revenue', 'invoicing'),
403
+			'refunds'   => __('Refunded', 'invoicing'),
404
+			'items'     => __('Items', 'invoicing'),
405
+			'date'      => __('Date', 'invoicing'),
406 406
 		);
407 407
 
408
-		return apply_filters( 'wpi_payment_form_table_columns', $columns );
408
+		return apply_filters('wpi_payment_form_table_columns', $columns);
409 409
 
410 410
 	}
411 411
 
412 412
 	/**
413 413
 	 * Displays payment form table columns.
414 414
 	 */
415
-	public static function display_payment_form_columns( $column_name, $post_id ) {
415
+	public static function display_payment_form_columns($column_name, $post_id) {
416 416
 
417 417
 		// Retrieve the payment form.
418
-		$form = new GetPaid_Payment_Form( $post_id );
418
+		$form = new GetPaid_Payment_Form($post_id);
419 419
 
420
-		switch ( $column_name ) {
420
+		switch ($column_name) {
421 421
 
422 422
 			case 'earnings':
423
-				echo wp_kses_post( wpinv_price( $form->get_earned() ) );
423
+				echo wp_kses_post(wpinv_price($form->get_earned()));
424 424
 				break;
425 425
 
426 426
 			case 'refunds':
427
-				echo wp_kses_post( wpinv_price( $form->get_refunded() ) );
427
+				echo wp_kses_post(wpinv_price($form->get_refunded()));
428 428
 				break;
429 429
 
430 430
 			case 'refunds':
431
-				echo wp_kses_post( wpinv_price( $form->get_refunded() ) );
431
+				echo wp_kses_post(wpinv_price($form->get_refunded()));
432 432
 				break;
433 433
 
434 434
 			case 'shortcode':
435
-				if ( $form->is_default() ) {
435
+				if ($form->is_default()) {
436 436
 					echo '&mdash;';
437 437
 				} else {
438
-					echo '<input onClick="this.select()" type="text" value="[getpaid form=' . esc_attr( $form->get_id() ) . ']" style="width: 100%;" readonly/>';
438
+					echo '<input onClick="this.select()" type="text" value="[getpaid form=' . esc_attr($form->get_id()) . ']" style="width: 100%;" readonly/>';
439 439
 				}
440 440
 
441 441
 				break;
@@ -443,28 +443,28 @@  discard block
 block discarded – undo
443 443
 			case 'items':
444 444
 				$items = $form->get_items();
445 445
 
446
-				if ( $form->is_default() || empty( $items ) ) {
446
+				if ($form->is_default() || empty($items)) {
447 447
 					echo '&mdash;';
448 448
 					return;
449 449
 				}
450 450
 
451 451
 				$_items = array();
452 452
 
453
-				foreach ( $items as $item ) {
453
+				foreach ($items as $item) {
454 454
 					$url = $item->get_edit_url();
455 455
 
456
-					if ( empty( $url ) ) {
457
-						$_items[] = esc_html( $item->get_name() );
456
+					if (empty($url)) {
457
+						$_items[] = esc_html($item->get_name());
458 458
 					} else {
459 459
 						$_items[] = sprintf(
460 460
 							'<a href="%s">%s</a>',
461
-							esc_url( $url ),
462
-							esc_html( $item->get_name() )
461
+							esc_url($url),
462
+							esc_html($item->get_name())
463 463
 						);
464 464
 					}
465 465
 }
466 466
 
467
-				echo wp_kses_post( implode( '<br>', $_items ) );
467
+				echo wp_kses_post(implode('<br>', $_items));
468 468
 
469 469
 				break;
470 470
 
@@ -475,10 +475,10 @@  discard block
 block discarded – undo
475 475
 	/**
476 476
 	 * Filters post states.
477 477
 	 */
478
-	public static function filter_payment_form_state( $post_states, $post ) {
478
+	public static function filter_payment_form_state($post_states, $post) {
479 479
 
480
-		if ( 'wpi_payment_form' === $post->post_type && wpinv_get_default_payment_form() === $post->ID ) {
481
-			$post_states['default_form'] = __( 'Default Payment Form', 'invoicing' );
480
+		if ('wpi_payment_form' === $post->post_type && wpinv_get_default_payment_form() === $post->ID) {
481
+			$post_states['default_form'] = __('Default Payment Form', 'invoicing');
482 482
 		}
483 483
 
484 484
 		return $post_states;
@@ -488,35 +488,35 @@  discard block
 block discarded – undo
488 488
 	/**
489 489
 	 * Returns an array of coupon table columns.
490 490
 	 */
491
-	public static function discount_columns( $columns ) {
491
+	public static function discount_columns($columns) {
492 492
 
493 493
 		$columns = array(
494 494
 			'cb'          => $columns['cb'],
495
-			'title'       => __( 'Name', 'invoicing' ),
496
-			'code'        => __( 'Code', 'invoicing' ),
497
-			'amount'      => __( 'Amount', 'invoicing' ),
498
-			'usage'       => __( 'Usage / Limit', 'invoicing' ),
499
-			'start_date'  => __( 'Start Date', 'invoicing' ),
500
-			'expiry_date' => __( 'Expiry Date', 'invoicing' ),
495
+			'title'       => __('Name', 'invoicing'),
496
+			'code'        => __('Code', 'invoicing'),
497
+			'amount'      => __('Amount', 'invoicing'),
498
+			'usage'       => __('Usage / Limit', 'invoicing'),
499
+			'start_date'  => __('Start Date', 'invoicing'),
500
+			'expiry_date' => __('Expiry Date', 'invoicing'),
501 501
 		);
502 502
 
503
-		return apply_filters( 'wpi_discount_table_columns', $columns );
503
+		return apply_filters('wpi_discount_table_columns', $columns);
504 504
 	}
505 505
 
506 506
 	/**
507 507
 	 * Filters post states.
508 508
 	 */
509
-	public static function filter_discount_state( $post_states, $post ) {
509
+	public static function filter_discount_state($post_states, $post) {
510 510
 
511
-		if ( 'wpi_discount' === $post->post_type ) {
511
+		if ('wpi_discount' === $post->post_type) {
512 512
 
513
-			$discount = new WPInv_Discount( $post );
513
+			$discount = new WPInv_Discount($post);
514 514
 
515 515
 			$status = $discount->is_expired() ? 'expired' : $discount->get_status();
516 516
 
517
-			if ( 'publish' !== $status ) {
517
+			if ('publish' !== $status) {
518 518
 				return array(
519
-					'discount_status' => wpinv_discount_status( $status ),
519
+					'discount_status' => wpinv_discount_status($status),
520 520
 				);
521 521
 			}
522 522
 
@@ -531,30 +531,30 @@  discard block
 block discarded – undo
531 531
 	/**
532 532
 	 * Returns an array of items table columns.
533 533
 	 */
534
-	public static function item_columns( $columns ) {
534
+	public static function item_columns($columns) {
535 535
 
536 536
 		$columns = array(
537 537
 			'cb'        => $columns['cb'],
538
-			'title'     => __( 'Name', 'invoicing' ),
539
-			'price'     => __( 'Price', 'invoicing' ),
540
-			'vat_rule'  => __( 'Tax Rule', 'invoicing' ),
541
-			'vat_class' => __( 'Tax Class', 'invoicing' ),
542
-			'type'      => __( 'Type', 'invoicing' ),
543
-			'shortcode' => __( 'Shortcode', 'invoicing' ),
538
+			'title'     => __('Name', 'invoicing'),
539
+			'price'     => __('Price', 'invoicing'),
540
+			'vat_rule'  => __('Tax Rule', 'invoicing'),
541
+			'vat_class' => __('Tax Class', 'invoicing'),
542
+			'type'      => __('Type', 'invoicing'),
543
+			'shortcode' => __('Shortcode', 'invoicing'),
544 544
 		);
545 545
 
546
-		if ( ! wpinv_use_taxes() ) {
547
-			unset( $columns['vat_rule'] );
548
-			unset( $columns['vat_class'] );
546
+		if (!wpinv_use_taxes()) {
547
+			unset($columns['vat_rule']);
548
+			unset($columns['vat_class']);
549 549
 		}
550 550
 
551
-		return apply_filters( 'wpi_item_table_columns', $columns );
551
+		return apply_filters('wpi_item_table_columns', $columns);
552 552
 	}
553 553
 
554 554
 	/**
555 555
 	 * Returns an array of sortable items table columns.
556 556
 	 */
557
-	public static function sortable_item_columns( $columns ) {
557
+	public static function sortable_item_columns($columns) {
558 558
 
559 559
 		return array_merge(
560 560
 			$columns,
@@ -571,45 +571,45 @@  discard block
 block discarded – undo
571 571
 	/**
572 572
 	 * Displays items table columns.
573 573
 	 */
574
-	public static function display_item_columns( $column_name, $post_id ) {
574
+	public static function display_item_columns($column_name, $post_id) {
575 575
 
576
-		$item = new WPInv_Item( $post_id );
576
+		$item = new WPInv_Item($post_id);
577 577
 
578
-		switch ( $column_name ) {
578
+		switch ($column_name) {
579 579
 
580 580
 			case 'price':
581
-				if ( ! $item->is_recurring() ) {
582
-					echo wp_kses_post( $item->get_the_price() );
581
+				if (!$item->is_recurring()) {
582
+					echo wp_kses_post($item->get_the_price());
583 583
 					break;
584 584
 				}
585 585
 
586 586
 				$price = wp_sprintf(
587
-					__( '%1$s / %2$s', 'invoicing' ),
587
+					__('%1$s / %2$s', 'invoicing'),
588 588
 					$item->get_the_price(),
589
-					getpaid_get_subscription_period_label( $item->get_recurring_period(), $item->get_recurring_interval(), '' )
589
+					getpaid_get_subscription_period_label($item->get_recurring_period(), $item->get_recurring_interval(), '')
590 590
 				);
591 591
 
592
-				if ( $item->get_the_price() == $item->get_the_initial_price() ) {
593
-					echo wp_kses_post( $price );
592
+				if ($item->get_the_price() == $item->get_the_initial_price()) {
593
+					echo wp_kses_post($price);
594 594
 					break;
595 595
 				}
596 596
 
597
-				echo wp_kses_post( $item->get_the_initial_price() );
597
+				echo wp_kses_post($item->get_the_initial_price());
598 598
 
599
-				echo '<span class="meta">' . wp_sprintf( esc_html__( 'then %s', 'invoicing' ), wp_kses_post( $price ) ) . '</span>';
599
+				echo '<span class="meta">' . wp_sprintf(esc_html__('then %s', 'invoicing'), wp_kses_post($price)) . '</span>';
600 600
 				break;
601 601
 
602 602
 			case 'vat_rule':
603
-				echo wp_kses_post( getpaid_get_tax_rule_label( $item->get_vat_rule() ) );
603
+				echo wp_kses_post(getpaid_get_tax_rule_label($item->get_vat_rule()));
604 604
 				break;
605 605
 
606 606
 			case 'vat_class':
607
-				echo wp_kses_post( getpaid_get_tax_class_label( $item->get_vat_class() ) );
607
+				echo wp_kses_post(getpaid_get_tax_class_label($item->get_vat_class()));
608 608
 				break;
609 609
 
610 610
 			case 'shortcode':
611
-				if ( $item->is_type( array( '', 'fee', 'custom' ) ) ) {
612
-					echo '<input onClick="this.select()" type="text" value="[getpaid item=' . esc_attr( $item->get_id() ) . ' button=\'Buy Now\']" style="width: 100%;" readonly/>';
611
+				if ($item->is_type(array('', 'fee', 'custom'))) {
612
+					echo '<input onClick="this.select()" type="text" value="[getpaid item=' . esc_attr($item->get_id()) . ' button=\'Buy Now\']" style="width: 100%;" readonly/>';
613 613
 				} else {
614 614
 					echo '&mdash;';
615 615
 				}
@@ -617,7 +617,7 @@  discard block
 block discarded – undo
617 617
 				break;
618 618
 
619 619
 			case 'type':
620
-				echo wp_kses_post( wpinv_item_type( $item->get_id() ) . '<span class="meta">' . $item->get_custom_singular_name() . '</span>' );
620
+				echo wp_kses_post(wpinv_item_type($item->get_id()) . '<span class="meta">' . $item->get_custom_singular_name() . '</span>');
621 621
 				break;
622 622
 
623 623
 		}
@@ -627,21 +627,21 @@  discard block
 block discarded – undo
627 627
 	/**
628 628
 	 * Lets users filter items using taxes.
629 629
 	 */
630
-	public static function add_item_filters( $post_type ) {
630
+	public static function add_item_filters($post_type) {
631 631
 
632 632
 		// Abort if we're not dealing with items.
633
-		if ( 'wpi_item' !== $post_type ) {
633
+		if ('wpi_item' !== $post_type) {
634 634
 			return;
635 635
 		}
636 636
 
637 637
 		// Filter by vat rules.
638
-		if ( wpinv_use_taxes() ) {
638
+		if (wpinv_use_taxes()) {
639 639
 
640 640
 			// Sanitize selected vat rule.
641 641
 			$vat_rule   = '';
642 642
 			$vat_rules  = getpaid_get_tax_rules();
643
-			if ( isset( $_GET['vat_rule'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
644
-				$vat_rule   = sanitize_text_field( $_GET['vat_rule'] ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
643
+			if (isset($_GET['vat_rule'])) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
644
+				$vat_rule = sanitize_text_field($_GET['vat_rule']); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
645 645
 			}
646 646
 
647 647
 			// Filter by VAT rule.
@@ -649,13 +649,13 @@  discard block
 block discarded – undo
649 649
 				array(
650 650
 					'options'          => array_merge(
651 651
 						array(
652
-							'' => __( 'All Tax Rules', 'invoicing' ),
652
+							'' => __('All Tax Rules', 'invoicing'),
653 653
 						),
654 654
 						$vat_rules
655 655
 					),
656 656
 					'name'             => 'vat_rule',
657 657
 					'id'               => 'vat_rule',
658
-					'selected'         => in_array( $vat_rule, array_keys( $vat_rules ), true ) ? $vat_rule : '',
658
+					'selected'         => in_array($vat_rule, array_keys($vat_rules), true) ? $vat_rule : '',
659 659
 					'show_option_all'  => false,
660 660
 					'show_option_none' => false,
661 661
 				)
@@ -666,21 +666,21 @@  discard block
 block discarded – undo
666 666
 			// Sanitize selected vat rule.
667 667
 			$vat_class   = '';
668 668
 			$vat_classes = getpaid_get_tax_classes();
669
-			if ( isset( $_GET['vat_class'] ) ) {  // phpcs:ignore WordPress.Security.NonceVerification.Recommended
670
-				$vat_class   = sanitize_text_field( $_GET['vat_class'] );  // phpcs:ignore WordPress.Security.NonceVerification.Recommended
669
+			if (isset($_GET['vat_class'])) {  // phpcs:ignore WordPress.Security.NonceVerification.Recommended
670
+				$vat_class = sanitize_text_field($_GET['vat_class']); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
671 671
 			}
672 672
 
673 673
 			wpinv_html_select(
674 674
 				array(
675 675
 					'options'          => array_merge(
676 676
 						array(
677
-							'' => __( 'All Tax Classes', 'invoicing' ),
677
+							'' => __('All Tax Classes', 'invoicing'),
678 678
 						),
679 679
 						$vat_classes
680 680
 					),
681 681
 					'name'             => 'vat_class',
682 682
 					'id'               => 'vat_class',
683
-					'selected'         => in_array( $vat_class, array_keys( $vat_classes ), true ) ? $vat_class : '',
683
+					'selected'         => in_array($vat_class, array_keys($vat_classes), true) ? $vat_class : '',
684 684
 					'show_option_all'  => false,
685 685
 					'show_option_none' => false,
686 686
 				)
@@ -689,22 +689,22 @@  discard block
 block discarded – undo
689 689
 		}
690 690
 
691 691
 		// Filter by item type.
692
-		$type   = '';
693
-		if ( isset( $_GET['type'] ) ) {  // phpcs:ignore WordPress.Security.NonceVerification.Recommended
694
-			$type   = sanitize_text_field( $_GET['type'] );  // phpcs:ignore WordPress.Security.NonceVerification.Recommended
692
+		$type = '';
693
+		if (isset($_GET['type'])) {  // phpcs:ignore WordPress.Security.NonceVerification.Recommended
694
+			$type = sanitize_text_field($_GET['type']); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
695 695
 		}
696 696
 
697 697
 		wpinv_html_select(
698 698
 			array(
699 699
 				'options'          => array_merge(
700 700
 					array(
701
-						'' => __( 'All item types', 'invoicing' ),
701
+						'' => __('All item types', 'invoicing'),
702 702
 					),
703 703
 					wpinv_get_item_types()
704 704
 				),
705 705
 				'name'             => 'type',
706 706
 				'id'               => 'type',
707
-				'selected'         => in_array( $type, wpinv_item_types(), true ) ? $type : '',
707
+				'selected'         => in_array($type, wpinv_item_types(), true) ? $type : '',
708 708
 				'show_option_all'  => false,
709 709
 				'show_option_none' => false,
710 710
 			)
@@ -715,45 +715,45 @@  discard block
 block discarded – undo
715 715
 	/**
716 716
 	 * Filters the item query.
717 717
 	 */
718
-	public static function filter_item_query( $query ) {
718
+	public static function filter_item_query($query) {
719 719
 
720 720
 		// modify the query only if it admin and main query.
721
-		if ( ! ( is_admin() && $query->is_main_query() ) ) {
721
+		if (!(is_admin() && $query->is_main_query())) {
722 722
 			return $query;
723 723
 		}
724 724
 
725 725
 		// we want to modify the query for our items.
726
-		if ( empty( $query->query['post_type'] ) || 'wpi_item' !== $query->query['post_type'] ) {
726
+		if (empty($query->query['post_type']) || 'wpi_item' !== $query->query['post_type']) {
727 727
 			return $query;
728 728
 		}
729 729
 
730
-		if ( empty( $query->query_vars['meta_query'] ) ) {
730
+		if (empty($query->query_vars['meta_query'])) {
731 731
 			$query->query_vars['meta_query'] = array();
732 732
 		}
733 733
 
734 734
 		// Filter vat rule type
735
-        if ( ! empty( $_GET['vat_rule'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
735
+        if (!empty($_GET['vat_rule'])) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
736 736
             $query->query_vars['meta_query'][] = array(
737 737
                 'key'     => '_wpinv_vat_rule',
738
-                'value'   => sanitize_text_field( $_GET['vat_rule'] ), // phpcs:ignore WordPress.Security.NonceVerification.Recommended
738
+                'value'   => sanitize_text_field($_GET['vat_rule']), // phpcs:ignore WordPress.Security.NonceVerification.Recommended
739 739
                 'compare' => '=',
740 740
             );
741 741
         }
742 742
 
743 743
         // Filter vat class
744
-        if ( ! empty( $_GET['vat_class'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
744
+        if (!empty($_GET['vat_class'])) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
745 745
             $query->query_vars['meta_query'][] = array(
746 746
                 'key'     => '_wpinv_vat_class',
747
-                'value'   => sanitize_text_field( $_GET['vat_class'] ), // phpcs:ignore WordPress.Security.NonceVerification.Recommended
747
+                'value'   => sanitize_text_field($_GET['vat_class']), // phpcs:ignore WordPress.Security.NonceVerification.Recommended
748 748
                 'compare' => '=',
749 749
             );
750 750
         }
751 751
 
752 752
         // Filter item type
753
-        if ( ! empty( $_GET['type'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
753
+        if (!empty($_GET['type'])) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
754 754
             $query->query_vars['meta_query'][] = array(
755 755
                 'key'     => '_wpinv_type',
756
-                'value'   => sanitize_text_field( $_GET['type'] ), // phpcs:ignore WordPress.Security.NonceVerification.Recommended
756
+                'value'   => sanitize_text_field($_GET['type']), // phpcs:ignore WordPress.Security.NonceVerification.Recommended
757 757
                 'compare' => '=',
758 758
             );
759 759
 		}
@@ -763,15 +763,15 @@  discard block
 block discarded – undo
763 763
 	/**
764 764
 	 * Reorders items.
765 765
 	 */
766
-	public static function reorder_items( $vars ) {
766
+	public static function reorder_items($vars) {
767 767
 		global $typenow;
768 768
 
769
-		if ( 'wpi_item' !== $typenow || empty( $vars['orderby'] ) ) {
769
+		if ('wpi_item' !== $typenow || empty($vars['orderby'])) {
770 770
 			return $vars;
771 771
 		}
772 772
 
773 773
 		// By item type.
774
-		if ( 'type' === $vars['orderby'] ) {
774
+		if ('type' === $vars['orderby']) {
775 775
 			return array_merge(
776 776
 				$vars,
777 777
 				array(
@@ -782,7 +782,7 @@  discard block
 block discarded – undo
782 782
 		}
783 783
 
784 784
 		// By vat class.
785
-		if ( 'vat_class' === $vars['orderby'] ) {
785
+		if ('vat_class' === $vars['orderby']) {
786 786
 			return array_merge(
787 787
 				$vars,
788 788
 				array(
@@ -793,7 +793,7 @@  discard block
 block discarded – undo
793 793
 		}
794 794
 
795 795
 		// By vat rule.
796
-		if ( 'vat_rule' === $vars['orderby'] ) {
796
+		if ('vat_rule' === $vars['orderby']) {
797 797
 			return array_merge(
798 798
 				$vars,
799 799
 				array(
@@ -804,7 +804,7 @@  discard block
 block discarded – undo
804 804
 		}
805 805
 
806 806
 		// By price.
807
-		if ( 'price' === $vars['orderby'] ) {
807
+		if ('price' === $vars['orderby']) {
808 808
 			return array_merge(
809 809
 				$vars,
810 810
 				array(
@@ -821,27 +821,27 @@  discard block
 block discarded – undo
821 821
 	/**
822 822
 	 * Fired when deleting a post.
823 823
 	 */
824
-	public static function delete_post( $post_id ) {
824
+	public static function delete_post($post_id) {
825 825
 
826
-		switch ( get_post_type( $post_id ) ) {
826
+		switch (get_post_type($post_id)) {
827 827
 
828 828
 			case 'wpi_item':
829
-				do_action( 'getpaid_before_delete_item', new WPInv_Item( $post_id ) );
829
+				do_action('getpaid_before_delete_item', new WPInv_Item($post_id));
830 830
 				break;
831 831
 
832 832
 			case 'wpi_payment_form':
833
-				do_action( 'getpaid_before_delete_payment_form', new GetPaid_Payment_Form( $post_id ) );
833
+				do_action('getpaid_before_delete_payment_form', new GetPaid_Payment_Form($post_id));
834 834
 				break;
835 835
 
836 836
 			case 'wpi_discount':
837
-				do_action( 'getpaid_before_delete_discount', new WPInv_Discount( $post_id ) );
837
+				do_action('getpaid_before_delete_discount', new WPInv_Discount($post_id));
838 838
 				break;
839 839
 
840 840
 			case 'wpi_invoice':
841
-				$invoice = new WPInv_Invoice( $post_id );
842
-				do_action( 'getpaid_before_delete_invoice', $invoice );
843
-				$invoice->get_data_store()->delete_items( $invoice );
844
-				$invoice->get_data_store()->delete_special_fields( $invoice );
841
+				$invoice = new WPInv_Invoice($post_id);
842
+				do_action('getpaid_before_delete_invoice', $invoice);
843
+				$invoice->get_data_store()->delete_items($invoice);
844
+				$invoice->get_data_store()->delete_special_fields($invoice);
845 845
 				break;
846 846
 		}
847 847
 	}
@@ -854,28 +854,28 @@  discard block
 block discarded – undo
854 854
      *
855 855
      * @return mixed
856 856
      */
857
-    public static function add_display_post_states( $post_states, $post ) {
857
+    public static function add_display_post_states($post_states, $post) {
858 858
 
859
-        if ( wpinv_get_option( 'success_page', 0 ) == $post->ID ) {
860
-            $post_states['getpaid_success_page'] = __( 'GetPaid Receipt Page', 'invoicing' );
859
+        if (wpinv_get_option('success_page', 0) == $post->ID) {
860
+            $post_states['getpaid_success_page'] = __('GetPaid Receipt Page', 'invoicing');
861 861
         }
862 862
 
863
-		foreach ( getpaid_get_invoice_post_types() as $post_type => $label ) {
863
+		foreach (getpaid_get_invoice_post_types() as $post_type => $label) {
864 864
 
865
-			if ( wpinv_get_option( "{$post_type}_history_page", 0 ) == $post->ID ) {
866
-				$post_states[ "getpaid_{$post_type}_history_page" ] = sprintf(
867
-					__( 'GetPaid %s History Page', 'invoicing' ),
865
+			if (wpinv_get_option("{$post_type}_history_page", 0) == $post->ID) {
866
+				$post_states["getpaid_{$post_type}_history_page"] = sprintf(
867
+					__('GetPaid %s History Page', 'invoicing'),
868 868
 					$label
869 869
 				);
870 870
 			}
871 871
 }
872 872
 
873
-		if ( wpinv_get_option( 'invoice_subscription_page', 0 ) == $post->ID ) {
874
-            $post_states['getpaid_invoice_subscription_page'] = __( 'GetPaid Subscription Page', 'invoicing' );
873
+		if (wpinv_get_option('invoice_subscription_page', 0) == $post->ID) {
874
+            $post_states['getpaid_invoice_subscription_page'] = __('GetPaid Subscription Page', 'invoicing');
875 875
         }
876 876
 
877
-		if ( wpinv_get_option( 'checkout_page', 0 ) == $post->ID ) {
878
-            $post_states['getpaid_checkout_page'] = __( 'GetPaid Checkout Page', 'invoicing' );
877
+		if (wpinv_get_option('checkout_page', 0) == $post->ID) {
878
+            $post_states['getpaid_checkout_page'] = __('GetPaid Checkout Page', 'invoicing');
879 879
         }
880 880
 
881 881
         return $post_states;
Please login to merge, or discard this patch.
templates/payment-forms/elements/time.php 1 patch
Spacing   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -7,24 +7,24 @@
 block discarded – undo
7 7
  * @version 1.0.19
8 8
  */
9 9
 
10
-defined( 'ABSPATH' ) || exit;
10
+defined('ABSPATH') || exit;
11 11
 
12
-$label = empty( $label ) ? '' : wp_kses_post( $label );
13
-$label_class = sanitize_key( preg_replace( '/[^A-Za-z0-9_-]/', '-', $label ) );
12
+$label = empty($label) ? '' : wp_kses_post($label);
13
+$label_class = sanitize_key(preg_replace('/[^A-Za-z0-9_-]/', '-', $label));
14 14
 
15
-if ( ! empty( $required ) ) {
15
+if (!empty($required)) {
16 16
     $label .= "<span class='text-danger'> *</span>";
17 17
 }
18 18
 
19 19
 aui()->input(
20 20
     array(
21
-        'name'        => esc_attr( $id ),
22
-        'id'          => esc_attr( $element_id ),
23
-        'placeholder' => empty( $placeholder ) ? '' : esc_attr( $placeholder ),
24
-        'required'    => ! empty( $required ),
21
+        'name'        => esc_attr($id),
22
+        'id'          => esc_attr($element_id),
23
+        'placeholder' => empty($placeholder) ? '' : esc_attr($placeholder),
24
+        'required'    => !empty($required),
25 25
         'label'       => $label,
26 26
         'label_type'  => 'vertical',
27
-        'help_text'   => empty( $description ) ? '' : wp_kses_post( $description ),
27
+        'help_text'   => empty($description) ? '' : wp_kses_post($description),
28 28
         'type'        => 'time',
29 29
         'class'       => $label_class,
30 30
         'value'       => $query_value,
Please login to merge, or discard this patch.
templates/payment-forms/elements/textarea.php 1 patch
Spacing   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -7,24 +7,24 @@
 block discarded – undo
7 7
  * @version 1.0.19
8 8
  */
9 9
 
10
-defined( 'ABSPATH' ) || exit;
10
+defined('ABSPATH') || exit;
11 11
 
12
-$label = empty( $label ) ? '' : wp_kses_post( $label );
13
-$label_class = sanitize_key( preg_replace( '/[^A-Za-z0-9_-]/', '-', $label ) );
12
+$label = empty($label) ? '' : wp_kses_post($label);
13
+$label_class = sanitize_key(preg_replace('/[^A-Za-z0-9_-]/', '-', $label));
14 14
 
15
-if ( ! empty( $required ) ) {
15
+if (!empty($required)) {
16 16
     $label .= "<span class='text-danger'> *</span>";
17 17
 }
18 18
 
19 19
 aui()->textarea(
20 20
     array(
21
-        'name'        => esc_attr( $id ),
22
-        'id'          => esc_attr( $element_id ),
23
-        'placeholder' => empty( $placeholder ) ? '' : esc_attr( $placeholder ),
24
-        'required'    => ! empty( $required ),
21
+        'name'        => esc_attr($id),
22
+        'id'          => esc_attr($element_id),
23
+        'placeholder' => empty($placeholder) ? '' : esc_attr($placeholder),
24
+        'required'    => !empty($required),
25 25
         'label'       => $label,
26 26
         'label_type'  => 'vertical',
27
-        'help_text'   => empty( $description ) ? '' : wp_kses_post( $description ),
27
+        'help_text'   => empty($description) ? '' : wp_kses_post($description),
28 28
         'class'       => $label_class,
29 29
         'value'       => $query_value,
30 30
     ),
Please login to merge, or discard this patch.
templates/payment-forms/elements/select.php 1 patch
Spacing   +10 added lines, -10 removed lines patch added patch discarded remove patch
@@ -7,25 +7,25 @@
 block discarded – undo
7 7
  * @version 1.0.19
8 8
  */
9 9
 
10
-defined( 'ABSPATH' ) || exit;
10
+defined('ABSPATH') || exit;
11 11
 
12
-$label = empty( $label ) ? '' : wp_kses_post( $label );
13
-$label_class = sanitize_key( preg_replace( '/[^A-Za-z0-9_-]/', '-', $label ) );
12
+$label = empty($label) ? '' : wp_kses_post($label);
13
+$label_class = sanitize_key(preg_replace('/[^A-Za-z0-9_-]/', '-', $label));
14 14
 
15
-if ( ! empty( $required ) ) {
15
+if (!empty($required)) {
16 16
     $label .= "<span class='text-danger'> *</span>";
17 17
 }
18 18
 
19 19
 aui()->select(
20 20
     array(
21
-        'name'        => esc_attr( $id ),
22
-        'id'          => esc_attr( $element_id ),
23
-        'placeholder' => empty( $placeholder ) ? '' : esc_attr( $placeholder ),
24
-        'required'    => ! empty( $required ),
21
+        'name'        => esc_attr($id),
22
+        'id'          => esc_attr($element_id),
23
+        'placeholder' => empty($placeholder) ? '' : esc_attr($placeholder),
24
+        'required'    => !empty($required),
25 25
         'label'       => $label,
26 26
         'label_type'  => 'vertical',
27
-        'help_text'   => empty( $description ) ? '' : wp_kses_post( $description ),
28
-        'options'     => empty( $options ) ? array() : array_combine( $options, $options ),
27
+        'help_text'   => empty($description) ? '' : wp_kses_post($description),
28
+        'options'     => empty($options) ? array() : array_combine($options, $options),
29 29
         'class'       => $label_class,
30 30
         'value'       => $query_value,
31 31
     ),
Please login to merge, or discard this patch.
templates/payment-forms/elements/email.php 1 patch
Spacing   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -7,24 +7,24 @@
 block discarded – undo
7 7
  * @version 1.0.19
8 8
  */
9 9
 
10
-defined( 'ABSPATH' ) || exit;
10
+defined('ABSPATH') || exit;
11 11
 
12
-$label = empty( $label ) ? '' : wp_kses_post( $label );
13
-$label_class = sanitize_key( preg_replace( '/[^A-Za-z0-9_-]/', '-', $label ) );
12
+$label = empty($label) ? '' : wp_kses_post($label);
13
+$label_class = sanitize_key(preg_replace('/[^A-Za-z0-9_-]/', '-', $label));
14 14
 
15
-if ( ! empty( $required ) ) {
15
+if (!empty($required)) {
16 16
     $label .= "<span class='text-danger'> *</span>";
17 17
 }
18 18
 
19 19
 aui()->input(
20 20
     array(
21
-        'name'        => esc_attr( $id ),
22
-        'id'          => esc_attr( $element_id ),
23
-        'placeholder' => empty( $placeholder ) ? '' : esc_attr( $placeholder ),
24
-        'required'    => ! empty( $required ),
21
+        'name'        => esc_attr($id),
22
+        'id'          => esc_attr($element_id),
23
+        'placeholder' => empty($placeholder) ? '' : esc_attr($placeholder),
24
+        'required'    => !empty($required),
25 25
         'label'       => $label,
26 26
         'label_type'  => 'vertical',
27
-        'help_text'   => empty( $description ) ? '' : wp_kses_post( $description ),
27
+        'help_text'   => empty($description) ? '' : wp_kses_post($description),
28 28
         'type'        => 'email',
29 29
         'class'       => $label_class,
30 30
         'value'       => $query_value,
Please login to merge, or discard this patch.
templates/payment-forms/elements/price_input.php 1 patch
Spacing   +13 added lines, -13 removed lines patch added patch discarded remove patch
@@ -7,32 +7,32 @@
 block discarded – undo
7 7
  * @version 1.0.19
8 8
  */
9 9
 
10
-defined( 'ABSPATH' ) || exit;
10
+defined('ABSPATH') || exit;
11 11
 
12 12
 // Set the currency position.
13 13
 $position = wpinv_currency_position();
14 14
 
15
-if ( $position == 'left_space' ) {
15
+if ($position == 'left_space') {
16 16
     $position = 'left';
17 17
 }
18 18
 
19
-if ( $position == 'right_space' ) {
19
+if ($position == 'right_space') {
20 20
     $position = 'right';
21 21
 }
22
-$label       = empty( $label ) ? '' : esc_html( $label );
23
-$label_class = sanitize_key( preg_replace( '/[^A-Za-z0-9_-]/', '-', $label ) );
22
+$label       = empty($label) ? '' : esc_html($label);
23
+$label_class = sanitize_key(preg_replace('/[^A-Za-z0-9_-]/', '-', $label));
24 24
 
25 25
 aui()->input(
26 26
     array(
27
-        'name'              => esc_attr( $id ),
28
-        'id'                => esc_attr( $element_id ),
29
-        'placeholder'       => empty( $placeholder ) ? wpinv_format_amount( 0 ) : wpinv_format_amount( $placeholder ),
30
-        'value'             => empty( $value ) ? wpinv_format_amount( $query_value ) : wpinv_format_amount( $value ),
31
-        'label'             => empty( $label ) ? '' : wp_kses_post( $label ),
27
+        'name'              => esc_attr($id),
28
+        'id'                => esc_attr($element_id),
29
+        'placeholder'       => empty($placeholder) ? wpinv_format_amount(0) : wpinv_format_amount($placeholder),
30
+        'value'             => empty($value) ? wpinv_format_amount($query_value) : wpinv_format_amount($value),
31
+        'label'             => empty($label) ? '' : wp_kses_post($label),
32 32
         'label_type'        => 'vertical',
33
-        'help_text'         => empty( $description ) ? '' : wp_kses_post( $description ),
34
-        'input_group_right' => $position == 'right' ? wpinv_currency_symbol( $form->get_currency() ) : '',
35
-        'input_group_left'  => $position == 'left' ? wpinv_currency_symbol( $form->get_currency() ) : '',
33
+        'help_text'         => empty($description) ? '' : wp_kses_post($description),
34
+        'input_group_right' => $position == 'right' ? wpinv_currency_symbol($form->get_currency()) : '',
35
+        'input_group_left'  => $position == 'left' ? wpinv_currency_symbol($form->get_currency()) : '',
36 36
         'class'             => 'getpaid-refresh-on-change ' . $label_class,
37 37
     ),
38 38
     true
Please login to merge, or discard this patch.
templates/payment-forms/elements/number.php 1 patch
Spacing   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -7,24 +7,24 @@
 block discarded – undo
7 7
  * @version 1.0.19
8 8
  */
9 9
 
10
-defined( 'ABSPATH' ) || exit;
10
+defined('ABSPATH') || exit;
11 11
 
12
-$label = empty( $label ) ? '' : wp_kses_post( $label );
13
-$label_class = sanitize_key( preg_replace( '/[^A-Za-z0-9_-]/', '-', $label ) );
12
+$label = empty($label) ? '' : wp_kses_post($label);
13
+$label_class = sanitize_key(preg_replace('/[^A-Za-z0-9_-]/', '-', $label));
14 14
 
15
-if ( ! empty( $required ) ) {
15
+if (!empty($required)) {
16 16
     $label .= "<span class='text-danger'> *</span>";
17 17
 }
18 18
 
19 19
 aui()->input(
20 20
     array(
21
-        'name'        => esc_attr( $id ),
22
-        'id'          => esc_attr( $element_id ),
23
-        'placeholder' => empty( $placeholder ) ? '' : esc_attr( $placeholder ),
24
-        'required'    => ! empty( $required ),
21
+        'name'        => esc_attr($id),
22
+        'id'          => esc_attr($element_id),
23
+        'placeholder' => empty($placeholder) ? '' : esc_attr($placeholder),
24
+        'required'    => !empty($required),
25 25
         'label'       => $label,
26 26
         'label_type'  => 'vertical',
27
-        'help_text'   => empty( $description ) ? '' : wp_kses_post( $description ),
27
+        'help_text'   => empty($description) ? '' : wp_kses_post($description),
28 28
         'type'        => 'number',
29 29
         'class'       => $label_class,
30 30
         'value'       => $query_value,
Please login to merge, or discard this patch.