Passed
Pull Request — master (#227)
by Patrik
03:04
created
includes/admin/meta-boxes/class-mb-invoice-notes.php 1 patch
Spacing   +12 added lines, -12 removed lines patch added patch discarded remove patch
@@ -1,39 +1,39 @@
 block discarded – undo
1 1
 <?php
2 2
 // MUST have WordPress.
3
-if ( !defined( 'WPINC' ) ) {
4
-    exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) );
3
+if (!defined('WPINC')) {
4
+    exit('Do NOT access this file directly: ' . basename(__FILE__));
5 5
 }
6 6
 
7 7
 class WPInv_Meta_Box_Notes {
8
-    public static function output( $post ) {
8
+    public static function output($post) {
9 9
         global $post;
10 10
 
11
-        $notes = wpinv_get_invoice_notes( $post->ID );
11
+        $notes = wpinv_get_invoice_notes($post->ID);
12 12
 
13 13
         echo '<ul class="invoice_notes">';
14 14
 
15
-        if ( $notes ) {
16
-            foreach( $notes as $note ) {
17
-                wpinv_get_invoice_note_line_item( $note );
15
+        if ($notes) {
16
+            foreach ($notes as $note) {
17
+                wpinv_get_invoice_note_line_item($note);
18 18
             }
19 19
 
20 20
         } else {
21
-            echo '<li>' . __( 'There are no notes yet.', 'invoicing' ) . '</li>';
21
+            echo '<li>' . __('There are no notes yet.', 'invoicing') . '</li>';
22 22
         }
23 23
 
24 24
         echo '</ul>';
25 25
         ?>
26 26
         <div class="add_note">
27
-            <h4><?php _e( 'Add note', 'invoicing' ); ?></h4>
27
+            <h4><?php _e('Add note', 'invoicing'); ?></h4>
28 28
             <p>
29 29
                 <textarea type="text" name="invoice_note" id="add_invoice_note" class="input-text" cols="20" rows="5"></textarea>
30 30
             </p>
31 31
             <p>
32 32
                 <select name="invoice_note_type" id="invoice_note_type" class="wpi_select2">
33
-                    <option value=""><?php _e( 'Private note', 'invoicing' ); ?></option>
34
-                    <option value="customer"><?php _e( 'Note to customer', 'invoicing' ); ?></option>
33
+                    <option value=""><?php _e('Private note', 'invoicing'); ?></option>
34
+                    <option value="customer"><?php _e('Note to customer', 'invoicing'); ?></option>
35 35
                 </select>
36
-                <a href="#" class="add_note button"><?php _e( 'Add', 'invoicing' ); ?></a> <span class="description"><?php _e( 'Add a note for your reference, or add a customer note (the user will be notified).', 'invoicing' ); ?></span>
36
+                <a href="#" class="add_note button"><?php _e('Add', 'invoicing'); ?></a> <span class="description"><?php _e('Add a note for your reference, or add a customer note (the user will be notified).', 'invoicing'); ?></span>
37 37
             </p>
38 38
         </div>
39 39
         <?php
Please login to merge, or discard this patch.
includes/admin/register-settings.php 3 patches
Indentation   +328 added lines, -328 removed lines patch added patch discarded remove patch
@@ -955,326 +955,326 @@  discard block
 block discarded – undo
955 955
 }
956 956
 
957 957
 function wpinv_get_pages( $with_slug = false, $default_label = NULL ) {
958
-	$pages_options = array();
958
+    $pages_options = array();
959 959
 
960
-	if( $default_label !== NULL && $default_label !== false ) {
961
-		$pages_options = array( '' => $default_label ); // Blank option
962
-	}
960
+    if( $default_label !== NULL && $default_label !== false ) {
961
+        $pages_options = array( '' => $default_label ); // Blank option
962
+    }
963 963
 
964
-	$pages = get_pages();
965
-	if ( $pages ) {
966
-		foreach ( $pages as $page ) {
967
-			$title = $with_slug ? $page->post_title . ' (' . $page->post_name . ')' : $page->post_title;
964
+    $pages = get_pages();
965
+    if ( $pages ) {
966
+        foreach ( $pages as $page ) {
967
+            $title = $with_slug ? $page->post_title . ' (' . $page->post_name . ')' : $page->post_title;
968 968
             $pages_options[ $page->ID ] = $title;
969
-		}
970
-	}
969
+        }
970
+    }
971 971
 
972
-	return $pages_options;
972
+    return $pages_options;
973 973
 }
974 974
 
975 975
 function wpinv_header_callback( $args ) {
976
-	if ( !empty( $args['desc'] ) ) {
976
+    if ( !empty( $args['desc'] ) ) {
977 977
         echo $args['desc'];
978 978
     }
979 979
 }
980 980
 
981 981
 function wpinv_hidden_callback( $args ) {
982
-	global $wpinv_options;
983
-
984
-	if ( isset( $args['set_value'] ) ) {
985
-		$value = $args['set_value'];
986
-	} elseif ( isset( $wpinv_options[ $args['id'] ] ) ) {
987
-		$value = $wpinv_options[ $args['id'] ];
988
-	} else {
989
-		$value = isset( $args['std'] ) ? $args['std'] : '';
990
-	}
991
-
992
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
993
-		$args['readonly'] = true;
994
-		$value = isset( $args['std'] ) ? $args['std'] : '';
995
-		$name  = '';
996
-	} else {
997
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
998
-	}
999
-
1000
-	$html = '<input type="hidden" id="wpinv_settings[' . wpinv_sanitize_key( $args['id'] ) . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '" />';
982
+    global $wpinv_options;
983
+
984
+    if ( isset( $args['set_value'] ) ) {
985
+        $value = $args['set_value'];
986
+    } elseif ( isset( $wpinv_options[ $args['id'] ] ) ) {
987
+        $value = $wpinv_options[ $args['id'] ];
988
+    } else {
989
+        $value = isset( $args['std'] ) ? $args['std'] : '';
990
+    }
991
+
992
+    if ( isset( $args['faux'] ) && true === $args['faux'] ) {
993
+        $args['readonly'] = true;
994
+        $value = isset( $args['std'] ) ? $args['std'] : '';
995
+        $name  = '';
996
+    } else {
997
+        $name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
998
+    }
999
+
1000
+    $html = '<input type="hidden" id="wpinv_settings[' . wpinv_sanitize_key( $args['id'] ) . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '" />';
1001 1001
     
1002
-	echo $html;
1002
+    echo $html;
1003 1003
 }
1004 1004
 
1005 1005
 function wpinv_checkbox_callback( $args ) {
1006
-	global $wpinv_options;
1006
+    global $wpinv_options;
1007 1007
     
1008 1008
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1009 1009
 
1010
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1011
-		$name = '';
1012
-	} else {
1013
-		$name = 'name="wpinv_settings[' . $sanitize_id . ']"';
1014
-	}
1010
+    if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1011
+        $name = '';
1012
+    } else {
1013
+        $name = 'name="wpinv_settings[' . $sanitize_id . ']"';
1014
+    }
1015 1015
 
1016
-	$checked = isset( $wpinv_options[ $args['id'] ] ) ? checked( 1, $wpinv_options[ $args['id'] ], false ) : '';
1017
-	$html = '<input type="checkbox" id="wpinv_settings[' . $sanitize_id . ']"' . $name . ' value="1" ' . $checked . '/>';
1018
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1016
+    $checked = isset( $wpinv_options[ $args['id'] ] ) ? checked( 1, $wpinv_options[ $args['id'] ], false ) : '';
1017
+    $html = '<input type="checkbox" id="wpinv_settings[' . $sanitize_id . ']"' . $name . ' value="1" ' . $checked . '/>';
1018
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1019 1019
 
1020
-	echo $html;
1020
+    echo $html;
1021 1021
 }
1022 1022
 
1023 1023
 function wpinv_multicheck_callback( $args ) {
1024
-	global $wpinv_options;
1024
+    global $wpinv_options;
1025 1025
 
1026
-	$sanitize_id = wpinv_sanitize_key( $args['id'] );
1027
-	$class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1026
+    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1027
+    $class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1028 1028
 
1029
-	if ( ! empty( $args['options'] ) ) {
1030
-		echo '<div class="wpi-mcheck-rows wpi-mcheck-' . $sanitize_id . $class . '">';
1029
+    if ( ! empty( $args['options'] ) ) {
1030
+        echo '<div class="wpi-mcheck-rows wpi-mcheck-' . $sanitize_id . $class . '">';
1031 1031
         foreach( $args['options'] as $key => $option ):
1032
-			$sanitize_key = wpinv_sanitize_key( $key );
1033
-			if ( isset( $wpinv_options[$args['id']][$sanitize_key] ) ) { 
1034
-				$enabled = $sanitize_key;
1035
-			} else { 
1036
-				$enabled = NULL; 
1037
-			}
1038
-			echo '<div class="wpi-mcheck-row"><input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr( $sanitize_key ) . '" ' . checked( $sanitize_key, $enabled, false ) . '/>&nbsp;';
1039
-			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . wp_kses_post( $option ) . '</label></div>';
1040
-		endforeach;
1041
-		echo '</div>';
1042
-		echo '<p class="description">' . $args['desc'] . '</p>';
1043
-	}
1032
+            $sanitize_key = wpinv_sanitize_key( $key );
1033
+            if ( isset( $wpinv_options[$args['id']][$sanitize_key] ) ) { 
1034
+                $enabled = $sanitize_key;
1035
+            } else { 
1036
+                $enabled = NULL; 
1037
+            }
1038
+            echo '<div class="wpi-mcheck-row"><input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr( $sanitize_key ) . '" ' . checked( $sanitize_key, $enabled, false ) . '/>&nbsp;';
1039
+            echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . wp_kses_post( $option ) . '</label></div>';
1040
+        endforeach;
1041
+        echo '</div>';
1042
+        echo '<p class="description">' . $args['desc'] . '</p>';
1043
+    }
1044 1044
 }
1045 1045
 
1046 1046
 function wpinv_payment_icons_callback( $args ) {
1047
-	global $wpinv_options;
1047
+    global $wpinv_options;
1048 1048
     
1049 1049
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1050 1050
 
1051
-	if ( ! empty( $args['options'] ) ) {
1052
-		foreach( $args['options'] as $key => $option ) {
1051
+    if ( ! empty( $args['options'] ) ) {
1052
+        foreach( $args['options'] as $key => $option ) {
1053 1053
             $sanitize_key = wpinv_sanitize_key( $key );
1054 1054
             
1055
-			if( isset( $wpinv_options[$args['id']][$key] ) ) {
1056
-				$enabled = $option;
1057
-			} else {
1058
-				$enabled = NULL;
1059
-			}
1060
-
1061
-			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" style="margin-right:10px;line-height:16px;height:16px;display:inline-block;">';
1062
-
1063
-				echo '<input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr( $option ) . '" ' . checked( $option, $enabled, false ) . '/>&nbsp;';
1064
-
1065
-				if ( wpinv_string_is_image_url( $key ) ) {
1066
-					echo '<img class="payment-icon" src="' . esc_url( $key ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1067
-				} else {
1068
-					$card = strtolower( str_replace( ' ', '', $option ) );
1069
-
1070
-					if ( has_filter( 'wpinv_accepted_payment_' . $card . '_image' ) ) {
1071
-						$image = apply_filters( 'wpinv_accepted_payment_' . $card . '_image', '' );
1072
-					} else {
1073
-						$image       = wpinv_locate_template( 'images' . DIRECTORY_SEPARATOR . 'icons' . DIRECTORY_SEPARATOR . $card . '.gif', false );
1074
-						$content_dir = WP_CONTENT_DIR;
1075
-
1076
-						if ( function_exists( 'wp_normalize_path' ) ) {
1077
-							// Replaces backslashes with forward slashes for Windows systems
1078
-							$image = wp_normalize_path( $image );
1079
-							$content_dir = wp_normalize_path( $content_dir );
1080
-						}
1081
-
1082
-						$image = str_replace( $content_dir, content_url(), $image );
1083
-					}
1084
-
1085
-					echo '<img class="payment-icon" src="' . esc_url( $image ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1086
-				}
1087
-			echo $option . '</label>';
1088
-		}
1089
-		echo '<p class="description" style="margin-top:16px;">' . wp_kses_post( $args['desc'] ) . '</p>';
1090
-	}
1055
+            if( isset( $wpinv_options[$args['id']][$key] ) ) {
1056
+                $enabled = $option;
1057
+            } else {
1058
+                $enabled = NULL;
1059
+            }
1060
+
1061
+            echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" style="margin-right:10px;line-height:16px;height:16px;display:inline-block;">';
1062
+
1063
+                echo '<input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr( $option ) . '" ' . checked( $option, $enabled, false ) . '/>&nbsp;';
1064
+
1065
+                if ( wpinv_string_is_image_url( $key ) ) {
1066
+                    echo '<img class="payment-icon" src="' . esc_url( $key ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1067
+                } else {
1068
+                    $card = strtolower( str_replace( ' ', '', $option ) );
1069
+
1070
+                    if ( has_filter( 'wpinv_accepted_payment_' . $card . '_image' ) ) {
1071
+                        $image = apply_filters( 'wpinv_accepted_payment_' . $card . '_image', '' );
1072
+                    } else {
1073
+                        $image       = wpinv_locate_template( 'images' . DIRECTORY_SEPARATOR . 'icons' . DIRECTORY_SEPARATOR . $card . '.gif', false );
1074
+                        $content_dir = WP_CONTENT_DIR;
1075
+
1076
+                        if ( function_exists( 'wp_normalize_path' ) ) {
1077
+                            // Replaces backslashes with forward slashes for Windows systems
1078
+                            $image = wp_normalize_path( $image );
1079
+                            $content_dir = wp_normalize_path( $content_dir );
1080
+                        }
1081
+
1082
+                        $image = str_replace( $content_dir, content_url(), $image );
1083
+                    }
1084
+
1085
+                    echo '<img class="payment-icon" src="' . esc_url( $image ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1086
+                }
1087
+            echo $option . '</label>';
1088
+        }
1089
+        echo '<p class="description" style="margin-top:16px;">' . wp_kses_post( $args['desc'] ) . '</p>';
1090
+    }
1091 1091
 }
1092 1092
 
1093 1093
 function wpinv_radio_callback( $args ) {
1094
-	global $wpinv_options;
1094
+    global $wpinv_options;
1095 1095
     
1096 1096
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1097 1097
     
1098 1098
     foreach ( $args['options'] as $key => $option ) :
1099
-		$sanitize_key = wpinv_sanitize_key( $key );
1099
+        $sanitize_key = wpinv_sanitize_key( $key );
1100 1100
         
1101 1101
         $checked = false;
1102 1102
 
1103
-		if ( isset( $wpinv_options[ $args['id'] ] ) && $wpinv_options[ $args['id'] ] == $key )
1104
-			$checked = true;
1105
-		elseif( isset( $args['std'] ) && $args['std'] == $key && ! isset( $wpinv_options[ $args['id'] ] ) )
1106
-			$checked = true;
1103
+        if ( isset( $wpinv_options[ $args['id'] ] ) && $wpinv_options[ $args['id'] ] == $key )
1104
+            $checked = true;
1105
+        elseif( isset( $args['std'] ) && $args['std'] == $key && ! isset( $wpinv_options[ $args['id'] ] ) )
1106
+            $checked = true;
1107 1107
 
1108
-		echo '<input name="wpinv_settings[' . $sanitize_id . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="radio" value="' . $sanitize_key . '" ' . checked(true, $checked, false) . '/>&nbsp;';
1109
-		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option ) . '</label><br/>';
1110
-	endforeach;
1108
+        echo '<input name="wpinv_settings[' . $sanitize_id . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="radio" value="' . $sanitize_key . '" ' . checked(true, $checked, false) . '/>&nbsp;';
1109
+        echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option ) . '</label><br/>';
1110
+    endforeach;
1111 1111
 
1112
-	echo '<p class="description">' . wp_kses_post( $args['desc'] ) . '</p>';
1112
+    echo '<p class="description">' . wp_kses_post( $args['desc'] ) . '</p>';
1113 1113
 }
1114 1114
 
1115 1115
 function wpinv_gateways_callback( $args ) {
1116
-	global $wpinv_options;
1116
+    global $wpinv_options;
1117 1117
     
1118 1118
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1119 1119
 
1120
-	foreach ( $args['options'] as $key => $option ) :
1121
-		$sanitize_key = wpinv_sanitize_key( $key );
1120
+    foreach ( $args['options'] as $key => $option ) :
1121
+        $sanitize_key = wpinv_sanitize_key( $key );
1122 1122
         
1123 1123
         if ( isset( $wpinv_options['gateways'][ $key ] ) )
1124
-			$enabled = '1';
1125
-		else
1126
-			$enabled = null;
1124
+            $enabled = '1';
1125
+        else
1126
+            $enabled = null;
1127 1127
 
1128
-		echo '<input name="wpinv_settings[' . esc_attr( $args['id'] ) . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="1" ' . checked('1', $enabled, false) . '/>&nbsp;';
1129
-		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option['admin_label'] ) . '</label><br/>';
1130
-	endforeach;
1128
+        echo '<input name="wpinv_settings[' . esc_attr( $args['id'] ) . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="1" ' . checked('1', $enabled, false) . '/>&nbsp;';
1129
+        echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option['admin_label'] ) . '</label><br/>';
1130
+    endforeach;
1131 1131
 }
1132 1132
 
1133 1133
 function wpinv_gateway_select_callback($args) {
1134
-	global $wpinv_options;
1134
+    global $wpinv_options;
1135 1135
     
1136 1136
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1137 1137
     $class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1138 1138
 
1139
-	echo '<select name="wpinv_settings[' . $sanitize_id . ']"" id="wpinv_settings[' . $sanitize_id . ']" class="'.$class.'" >';
1139
+    echo '<select name="wpinv_settings[' . $sanitize_id . ']"" id="wpinv_settings[' . $sanitize_id . ']" class="'.$class.'" >';
1140 1140
 
1141
-	foreach ( $args['options'] as $key => $option ) :
1142
-		if ( isset( $args['selected'] ) && $args['selected'] !== null && $args['selected'] !== false ) {
1141
+    foreach ( $args['options'] as $key => $option ) :
1142
+        if ( isset( $args['selected'] ) && $args['selected'] !== null && $args['selected'] !== false ) {
1143 1143
             $selected = selected( $key, $args['selected'], false );
1144 1144
         } else {
1145 1145
             $selected = isset( $wpinv_options[ $args['id'] ] ) ? selected( $key, $wpinv_options[$args['id']], false ) : '';
1146 1146
         }
1147
-		echo '<option value="' . wpinv_sanitize_key( $key ) . '"' . $selected . '>' . esc_html( $option['admin_label'] ) . '</option>';
1148
-	endforeach;
1147
+        echo '<option value="' . wpinv_sanitize_key( $key ) . '"' . $selected . '>' . esc_html( $option['admin_label'] ) . '</option>';
1148
+    endforeach;
1149 1149
 
1150
-	echo '</select>';
1151
-	echo '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1150
+    echo '</select>';
1151
+    echo '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1152 1152
 }
1153 1153
 
1154 1154
 function wpinv_text_callback( $args ) {
1155
-	global $wpinv_options;
1155
+    global $wpinv_options;
1156 1156
     
1157 1157
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1158 1158
 
1159
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1160
-		$value = $wpinv_options[ $args['id'] ];
1161
-	} else {
1162
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1163
-	}
1164
-
1165
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1166
-		$args['readonly'] = true;
1167
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1168
-		$name  = '';
1169
-	} else {
1170
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1171
-	}
1172
-	$class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1173
-
1174
-	$readonly = $args['readonly'] === true ? ' readonly="readonly"' : '';
1175
-	$size     = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1176
-	$html     = '<input type="text" class="' . sanitize_html_class( $size ) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '"' . $readonly . '/>';
1177
-	$html    .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1178
-
1179
-	echo $html;
1159
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1160
+        $value = $wpinv_options[ $args['id'] ];
1161
+    } else {
1162
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1163
+    }
1164
+
1165
+    if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1166
+        $args['readonly'] = true;
1167
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1168
+        $name  = '';
1169
+    } else {
1170
+        $name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1171
+    }
1172
+    $class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1173
+
1174
+    $readonly = $args['readonly'] === true ? ' readonly="readonly"' : '';
1175
+    $size     = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1176
+    $html     = '<input type="text" class="' . sanitize_html_class( $size ) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '"' . $readonly . '/>';
1177
+    $html    .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1178
+
1179
+    echo $html;
1180 1180
 }
1181 1181
 
1182 1182
 function wpinv_number_callback( $args ) {
1183
-	global $wpinv_options;
1183
+    global $wpinv_options;
1184 1184
     
1185 1185
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1186 1186
 
1187
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1188
-		$value = $wpinv_options[ $args['id'] ];
1189
-	} else {
1190
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1191
-	}
1192
-
1193
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1194
-		$args['readonly'] = true;
1195
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1196
-		$name  = '';
1197
-	} else {
1198
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1199
-	}
1200
-
1201
-	$max  = isset( $args['max'] ) ? $args['max'] : 999999;
1202
-	$min  = isset( $args['min'] ) ? $args['min'] : 0;
1203
-	$step = isset( $args['step'] ) ? $args['step'] : 1;
1204
-	$class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1205
-
1206
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1207
-	$html = '<input type="number" step="' . esc_attr( $step ) . '" max="' . esc_attr( $max ) . '" min="' . esc_attr( $min ) . '" class="' . sanitize_html_class( $size ) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '"/>';
1208
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1209
-
1210
-	echo $html;
1187
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1188
+        $value = $wpinv_options[ $args['id'] ];
1189
+    } else {
1190
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1191
+    }
1192
+
1193
+    if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1194
+        $args['readonly'] = true;
1195
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1196
+        $name  = '';
1197
+    } else {
1198
+        $name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1199
+    }
1200
+
1201
+    $max  = isset( $args['max'] ) ? $args['max'] : 999999;
1202
+    $min  = isset( $args['min'] ) ? $args['min'] : 0;
1203
+    $step = isset( $args['step'] ) ? $args['step'] : 1;
1204
+    $class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1205
+
1206
+    $size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1207
+    $html = '<input type="number" step="' . esc_attr( $step ) . '" max="' . esc_attr( $max ) . '" min="' . esc_attr( $min ) . '" class="' . sanitize_html_class( $size ) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '"/>';
1208
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1209
+
1210
+    echo $html;
1211 1211
 }
1212 1212
 
1213 1213
 function wpinv_textarea_callback( $args ) {
1214
-	global $wpinv_options;
1214
+    global $wpinv_options;
1215 1215
     
1216 1216
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1217 1217
 
1218
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1219
-		$value = $wpinv_options[ $args['id'] ];
1220
-	} else {
1221
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1222
-	}
1218
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1219
+        $value = $wpinv_options[ $args['id'] ];
1220
+    } else {
1221
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1222
+    }
1223 1223
     
1224 1224
     $size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1225 1225
     $class = ( isset( $args['class'] ) && ! is_null( $args['class'] ) ) ? $args['class'] : 'large-text';
1226 1226
 
1227
-	$html = '<textarea class="' . sanitize_html_class( $class ) . ' txtarea-' . sanitize_html_class( $size ) . ' wpi-' . esc_attr( sanitize_html_class( $sanitize_id ) ) . ' " cols="' . $args['cols'] . '" rows="' . $args['rows'] . '" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']">' . esc_textarea( stripslashes( $value ) ) . '</textarea>';
1228
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1227
+    $html = '<textarea class="' . sanitize_html_class( $class ) . ' txtarea-' . sanitize_html_class( $size ) . ' wpi-' . esc_attr( sanitize_html_class( $sanitize_id ) ) . ' " cols="' . $args['cols'] . '" rows="' . $args['rows'] . '" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']">' . esc_textarea( stripslashes( $value ) ) . '</textarea>';
1228
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1229 1229
 
1230
-	echo $html;
1230
+    echo $html;
1231 1231
 }
1232 1232
 
1233 1233
 function wpinv_password_callback( $args ) {
1234
-	global $wpinv_options;
1234
+    global $wpinv_options;
1235 1235
     
1236 1236
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1237 1237
 
1238
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1239
-		$value = $wpinv_options[ $args['id'] ];
1240
-	} else {
1241
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1242
-	}
1238
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1239
+        $value = $wpinv_options[ $args['id'] ];
1240
+    } else {
1241
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1242
+    }
1243 1243
 
1244
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1245
-	$html = '<input type="password" class="' . sanitize_html_class( $size ) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( $value ) . '"/>';
1246
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1244
+    $size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1245
+    $html = '<input type="password" class="' . sanitize_html_class( $size ) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( $value ) . '"/>';
1246
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1247 1247
 
1248
-	echo $html;
1248
+    echo $html;
1249 1249
 }
1250 1250
 
1251 1251
 function wpinv_missing_callback($args) {
1252
-	printf(
1253
-		__( 'The callback function used for the %s setting is missing.', 'invoicing' ),
1254
-		'<strong>' . $args['id'] . '</strong>'
1255
-	);
1252
+    printf(
1253
+        __( 'The callback function used for the %s setting is missing.', 'invoicing' ),
1254
+        '<strong>' . $args['id'] . '</strong>'
1255
+    );
1256 1256
 }
1257 1257
 
1258 1258
 function wpinv_select_callback($args) {
1259
-	global $wpinv_options;
1259
+    global $wpinv_options;
1260 1260
     
1261 1261
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1262 1262
 
1263
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1264
-		$value = $wpinv_options[ $args['id'] ];
1265
-	} else {
1266
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1267
-	}
1263
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1264
+        $value = $wpinv_options[ $args['id'] ];
1265
+    } else {
1266
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1267
+    }
1268 1268
     
1269 1269
     if ( isset( $args['selected'] ) && $args['selected'] !== null && $args['selected'] !== false ) {
1270 1270
         $value = $args['selected'];
1271 1271
     }
1272 1272
 
1273
-	if ( isset( $args['placeholder'] ) ) {
1274
-		$placeholder = $args['placeholder'];
1275
-	} else {
1276
-		$placeholder = '';
1277
-	}
1273
+    if ( isset( $args['placeholder'] ) ) {
1274
+        $placeholder = $args['placeholder'];
1275
+    } else {
1276
+        $placeholder = '';
1277
+    }
1278 1278
     
1279 1279
     if( !empty( $args['onchange'] ) ) {
1280 1280
         $onchange = ' onchange="' . esc_attr( $args['onchange'] ) . '"';
@@ -1284,142 +1284,142 @@  discard block
 block discarded – undo
1284 1284
 
1285 1285
     $class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1286 1286
 
1287
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" class="'.$class.'"  name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" data-placeholder="' . esc_html( $placeholder ) . '"' . $onchange . ' />';
1287
+    $html = '<select id="wpinv_settings[' . $sanitize_id . ']" class="'.$class.'"  name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" data-placeholder="' . esc_html( $placeholder ) . '"' . $onchange . ' />';
1288 1288
 
1289
-	foreach ( $args['options'] as $option => $name ) {
1290
-		$selected = selected( $option, $value, false );
1291
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1292
-	}
1289
+    foreach ( $args['options'] as $option => $name ) {
1290
+        $selected = selected( $option, $value, false );
1291
+        $html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1292
+    }
1293 1293
 
1294
-	$html .= '</select>';
1295
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1294
+    $html .= '</select>';
1295
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1296 1296
 
1297
-	echo $html;
1297
+    echo $html;
1298 1298
 }
1299 1299
 
1300 1300
 function wpinv_color_select_callback( $args ) {
1301
-	global $wpinv_options;
1301
+    global $wpinv_options;
1302 1302
     
1303 1303
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1304 1304
 
1305
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1306
-		$value = $wpinv_options[ $args['id'] ];
1307
-	} else {
1308
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1309
-	}
1305
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1306
+        $value = $wpinv_options[ $args['id'] ];
1307
+    } else {
1308
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1309
+    }
1310 1310
 
1311
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"/>';
1311
+    $html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"/>';
1312 1312
 
1313
-	foreach ( $args['options'] as $option => $color ) {
1314
-		$selected = selected( $option, $value, false );
1315
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $color['label'] ) . '</option>';
1316
-	}
1313
+    foreach ( $args['options'] as $option => $color ) {
1314
+        $selected = selected( $option, $value, false );
1315
+        $html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $color['label'] ) . '</option>';
1316
+    }
1317 1317
 
1318
-	$html .= '</select>';
1319
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1318
+    $html .= '</select>';
1319
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1320 1320
 
1321
-	echo $html;
1321
+    echo $html;
1322 1322
 }
1323 1323
 
1324 1324
 function wpinv_rich_editor_callback( $args ) {
1325
-	global $wpinv_options, $wp_version;
1325
+    global $wpinv_options, $wp_version;
1326 1326
     
1327 1327
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1328 1328
 
1329
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1330
-		$value = $wpinv_options[ $args['id'] ];
1329
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1330
+        $value = $wpinv_options[ $args['id'] ];
1331 1331
 
1332
-		if( empty( $args['allow_blank'] ) && empty( $value ) ) {
1333
-			$value = isset( $args['std'] ) ? $args['std'] : '';
1334
-		}
1335
-	} else {
1336
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1337
-	}
1332
+        if( empty( $args['allow_blank'] ) && empty( $value ) ) {
1333
+            $value = isset( $args['std'] ) ? $args['std'] : '';
1334
+        }
1335
+    } else {
1336
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1337
+    }
1338 1338
 
1339
-	$rows = isset( $args['size'] ) ? $args['size'] : 20;
1339
+    $rows = isset( $args['size'] ) ? $args['size'] : 20;
1340 1340
 
1341
-	if ( $wp_version >= 3.3 && function_exists( 'wp_editor' ) ) {
1342
-		ob_start();
1343
-		wp_editor( stripslashes( $value ), 'wpinv_settings_' . esc_attr( $args['id'] ), array( 'textarea_name' => 'wpinv_settings[' . esc_attr( $args['id'] ) . ']', 'textarea_rows' => absint( $rows ), 'media_buttons' => false ) );
1344
-		$html = ob_get_clean();
1345
-	} else {
1346
-		$html = '<textarea class="large-text" rows="10" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" class="wpi-' . esc_attr( sanitize_html_class( $args['id'] ) ) . '">' . esc_textarea( stripslashes( $value ) ) . '</textarea>';
1347
-	}
1341
+    if ( $wp_version >= 3.3 && function_exists( 'wp_editor' ) ) {
1342
+        ob_start();
1343
+        wp_editor( stripslashes( $value ), 'wpinv_settings_' . esc_attr( $args['id'] ), array( 'textarea_name' => 'wpinv_settings[' . esc_attr( $args['id'] ) . ']', 'textarea_rows' => absint( $rows ), 'media_buttons' => false ) );
1344
+        $html = ob_get_clean();
1345
+    } else {
1346
+        $html = '<textarea class="large-text" rows="10" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" class="wpi-' . esc_attr( sanitize_html_class( $args['id'] ) ) . '">' . esc_textarea( stripslashes( $value ) ) . '</textarea>';
1347
+    }
1348 1348
 
1349
-	$html .= '<br/><label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1349
+    $html .= '<br/><label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1350 1350
 
1351
-	echo $html;
1351
+    echo $html;
1352 1352
 }
1353 1353
 
1354 1354
 function wpinv_upload_callback( $args ) {
1355
-	global $wpinv_options;
1355
+    global $wpinv_options;
1356 1356
     
1357 1357
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1358 1358
 
1359
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1360
-		$value = $wpinv_options[$args['id']];
1361
-	} else {
1362
-		$value = isset($args['std']) ? $args['std'] : '';
1363
-	}
1359
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1360
+        $value = $wpinv_options[$args['id']];
1361
+    } else {
1362
+        $value = isset($args['std']) ? $args['std'] : '';
1363
+    }
1364 1364
 
1365
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1366
-	$html = '<input type="text" class="' . sanitize_html_class( $size ) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( stripslashes( $value ) ) . '"/>';
1367
-	$html .= '<span>&nbsp;<input type="button" class="wpinv_settings_upload_button button-secondary" value="' . __( 'Upload File', 'invoicing' ) . '"/></span>';
1368
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1365
+    $size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1366
+    $html = '<input type="text" class="' . sanitize_html_class( $size ) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( stripslashes( $value ) ) . '"/>';
1367
+    $html .= '<span>&nbsp;<input type="button" class="wpinv_settings_upload_button button-secondary" value="' . __( 'Upload File', 'invoicing' ) . '"/></span>';
1368
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1369 1369
 
1370
-	echo $html;
1370
+    echo $html;
1371 1371
 }
1372 1372
 
1373 1373
 function wpinv_color_callback( $args ) {
1374
-	global $wpinv_options;
1374
+    global $wpinv_options;
1375 1375
     
1376 1376
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1377 1377
 
1378
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1379
-		$value = $wpinv_options[ $args['id'] ];
1380
-	} else {
1381
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1382
-	}
1378
+    if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1379
+        $value = $wpinv_options[ $args['id'] ];
1380
+    } else {
1381
+        $value = isset( $args['std'] ) ? $args['std'] : '';
1382
+    }
1383 1383
 
1384
-	$default = isset( $args['std'] ) ? $args['std'] : '';
1384
+    $default = isset( $args['std'] ) ? $args['std'] : '';
1385 1385
 
1386
-	$html = '<input type="text" class="wpinv-color-picker" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( $value ) . '" data-default-color="' . esc_attr( $default ) . '" />';
1387
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1386
+    $html = '<input type="text" class="wpinv-color-picker" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( $value ) . '" data-default-color="' . esc_attr( $default ) . '" />';
1387
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1388 1388
 
1389
-	echo $html;
1389
+    echo $html;
1390 1390
 }
1391 1391
 
1392 1392
 function wpinv_country_states_callback($args) {
1393
-	global $wpinv_options;
1393
+    global $wpinv_options;
1394 1394
     
1395 1395
     $sanitize_id = wpinv_sanitize_key( $args['id'] );
1396 1396
 
1397
-	if ( isset( $args['placeholder'] ) ) {
1398
-		$placeholder = $args['placeholder'];
1399
-	} else {
1400
-		$placeholder = '';
1401
-	}
1397
+    if ( isset( $args['placeholder'] ) ) {
1398
+        $placeholder = $args['placeholder'];
1399
+    } else {
1400
+        $placeholder = '';
1401
+    }
1402 1402
 
1403
-	$states = wpinv_get_country_states();
1403
+    $states = wpinv_get_country_states();
1404 1404
 
1405
-	$class = empty( $states ) ? ' class="wpinv-no-states"' : ' class="wpi_select2"';
1406
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"' . $class . 'data-placeholder="' . esc_html( $placeholder ) . '"/>';
1405
+    $class = empty( $states ) ? ' class="wpinv-no-states"' : ' class="wpi_select2"';
1406
+    $html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"' . $class . 'data-placeholder="' . esc_html( $placeholder ) . '"/>';
1407 1407
 
1408
-	foreach ( $states as $option => $name ) {
1409
-		$selected = isset( $wpinv_options[ $args['id'] ] ) ? selected( $option, $wpinv_options[$args['id']], false ) : '';
1410
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1411
-	}
1408
+    foreach ( $states as $option => $name ) {
1409
+        $selected = isset( $wpinv_options[ $args['id'] ] ) ? selected( $option, $wpinv_options[$args['id']], false ) : '';
1410
+        $html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1411
+    }
1412 1412
 
1413
-	$html .= '</select>';
1414
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1413
+    $html .= '</select>';
1414
+    $html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1415 1415
 
1416
-	echo $html;
1416
+    echo $html;
1417 1417
 }
1418 1418
 
1419 1419
 function wpinv_tax_rates_callback($args) {
1420
-	global $wpinv_options;
1421
-	$rates = wpinv_get_tax_rates();
1422
-	ob_start(); ?>
1420
+    global $wpinv_options;
1421
+    $rates = wpinv_get_tax_rates();
1422
+    ob_start(); ?>
1423 1423
     </td><tr>
1424 1424
     <td colspan="2" class="wpinv_tax_tdbox">
1425 1425
 	<p><?php echo $args['desc']; ?></p>
@@ -1443,40 +1443,40 @@  discard block
 block discarded – undo
1443 1443
 			<tr>
1444 1444
 				<td class="wpinv_tax_country">
1445 1445
 					<?php
1446
-					echo wpinv_html_select( array(
1447
-						'options'          => wpinv_get_country_list( true ),
1448
-						'name'             => 'tax_rates[' . $sanitized_key . '][country]',
1446
+                    echo wpinv_html_select( array(
1447
+                        'options'          => wpinv_get_country_list( true ),
1448
+                        'name'             => 'tax_rates[' . $sanitized_key . '][country]',
1449 1449
                         'id'               => 'tax_rates[' . $sanitized_key . '][country]',
1450
-						'selected'         => $rate['country'],
1451
-						'show_option_all'  => false,
1452
-						'show_option_none' => false,
1453
-						'class'            => 'wpinv-tax-country wpi_select2',
1454
-						'placeholder'      => __( 'Choose a country', 'invoicing' )
1455
-					) );
1456
-					?>
1450
+                        'selected'         => $rate['country'],
1451
+                        'show_option_all'  => false,
1452
+                        'show_option_none' => false,
1453
+                        'class'            => 'wpinv-tax-country wpi_select2',
1454
+                        'placeholder'      => __( 'Choose a country', 'invoicing' )
1455
+                    ) );
1456
+                    ?>
1457 1457
 				</td>
1458 1458
 				<td class="wpinv_tax_state">
1459 1459
 					<?php
1460
-					$states = wpinv_get_country_states( $rate['country'] );
1461
-					if( !empty( $states ) ) {
1462
-						echo wpinv_html_select( array(
1463
-							'options'          => array_merge( array( '' => '' ), $states ),
1464
-							'name'             => 'tax_rates[' . $sanitized_key . '][state]',
1460
+                    $states = wpinv_get_country_states( $rate['country'] );
1461
+                    if( !empty( $states ) ) {
1462
+                        echo wpinv_html_select( array(
1463
+                            'options'          => array_merge( array( '' => '' ), $states ),
1464
+                            'name'             => 'tax_rates[' . $sanitized_key . '][state]',
1465 1465
                             'id'               => 'tax_rates[' . $sanitized_key . '][state]',
1466
-							'selected'         => $rate['state'],
1467
-							'show_option_all'  => false,
1468
-							'show_option_none' => false,
1466
+                            'selected'         => $rate['state'],
1467
+                            'show_option_all'  => false,
1468
+                            'show_option_none' => false,
1469 1469
                             'class'            => 'wpi_select2',
1470
-							'placeholder'      => __( 'Choose a state', 'invoicing' )
1471
-						) );
1472
-					} else {
1473
-						echo wpinv_html_text( array(
1474
-							'name'  => 'tax_rates[' . $sanitized_key . '][state]', $rate['state'],
1475
-							'value' => ! empty( $rate['state'] ) ? $rate['state'] : '',
1470
+                            'placeholder'      => __( 'Choose a state', 'invoicing' )
1471
+                        ) );
1472
+                    } else {
1473
+                        echo wpinv_html_text( array(
1474
+                            'name'  => 'tax_rates[' . $sanitized_key . '][state]', $rate['state'],
1475
+                            'value' => ! empty( $rate['state'] ) ? $rate['state'] : '',
1476 1476
                             'id'    => 'tax_rates[' . $sanitized_key . '][state]',
1477
-						) );
1478
-					}
1479
-					?>
1477
+                        ) );
1478
+                    }
1479
+                    ?>
1480 1480
 				</td>
1481 1481
 				<td class="wpinv_tax_global">
1482 1482
 					<input type="checkbox" name="tax_rates[<?php echo $sanitized_key; ?>][global]" id="tax_rates[<?php echo $sanitized_key; ?>][global]" value="1"<?php checked( true, ! empty( $rate['global'] ) ); ?>/>
@@ -1491,19 +1491,19 @@  discard block
 block discarded – undo
1491 1491
 			<tr>
1492 1492
 				<td class="wpinv_tax_country">
1493 1493
 					<?php
1494
-					echo wpinv_html_select( array(
1495
-						'options'          => wpinv_get_country_list( true ),
1496
-						'name'             => 'tax_rates[0][country]',
1497
-						'show_option_all'  => false,
1498
-						'show_option_none' => false,
1499
-						'class'            => 'wpinv-tax-country wpi_select2',
1500
-						'placeholder'      => __( 'Choose a country', 'invoicing' )
1501
-					) ); ?>
1494
+                    echo wpinv_html_select( array(
1495
+                        'options'          => wpinv_get_country_list( true ),
1496
+                        'name'             => 'tax_rates[0][country]',
1497
+                        'show_option_all'  => false,
1498
+                        'show_option_none' => false,
1499
+                        'class'            => 'wpinv-tax-country wpi_select2',
1500
+                        'placeholder'      => __( 'Choose a country', 'invoicing' )
1501
+                    ) ); ?>
1502 1502
 				</td>
1503 1503
 				<td class="wpinv_tax_state">
1504 1504
 					<?php echo wpinv_html_text( array(
1505
-						'name' => 'tax_rates[0][state]'
1506
-					) ); ?>
1505
+                        'name' => 'tax_rates[0][state]'
1506
+                    ) ); ?>
1507 1507
 				</td>
1508 1508
 				<td class="wpinv_tax_global">
1509 1509
 					<input type="checkbox" name="tax_rates[0][global]" id="tax_rates[0][global]" value="1"/>
@@ -1518,7 +1518,7 @@  discard block
 block discarded – undo
1518 1518
         <tfoot><tr><td colspan="5"></td><td class="wpinv_tax_action"><span class="button-secondary" id="wpinv_add_tax_rate"><?php _e( 'Add Tax Rate', 'invoicing' ); ?></span></td></tr></tfoot>
1519 1519
 	</table>
1520 1520
 	<?php
1521
-	echo ob_get_clean();
1521
+    echo ob_get_clean();
1522 1522
 }
1523 1523
 
1524 1524
 function wpinv_tools_callback($args) {
@@ -1546,15 +1546,15 @@  discard block
 block discarded – undo
1546 1546
 }
1547 1547
 
1548 1548
 function wpinv_descriptive_text_callback( $args ) {
1549
-	echo wp_kses_post( $args['desc'] );
1549
+    echo wp_kses_post( $args['desc'] );
1550 1550
 }
1551 1551
 
1552 1552
 function wpinv_hook_callback( $args ) {
1553
-	do_action( 'wpinv_' . $args['id'], $args );
1553
+    do_action( 'wpinv_' . $args['id'], $args );
1554 1554
 }
1555 1555
 
1556 1556
 function wpinv_set_settings_cap() {
1557
-	return 'manage_options';
1557
+    return 'manage_options';
1558 1558
 }
1559 1559
 add_filter( 'option_page_capability_wpinv_settings', 'wpinv_set_settings_cap' );
1560 1560
 
Please login to merge, or discard this patch.
Braces   +15 added lines, -10 removed lines patch added patch discarded remove patch
@@ -1100,10 +1100,11 @@  discard block
 block discarded – undo
1100 1100
         
1101 1101
         $checked = false;
1102 1102
 
1103
-		if ( isset( $wpinv_options[ $args['id'] ] ) && $wpinv_options[ $args['id'] ] == $key )
1104
-			$checked = true;
1105
-		elseif( isset( $args['std'] ) && $args['std'] == $key && ! isset( $wpinv_options[ $args['id'] ] ) )
1106
-			$checked = true;
1103
+		if ( isset( $wpinv_options[ $args['id'] ] ) && $wpinv_options[ $args['id'] ] == $key ) {
1104
+					$checked = true;
1105
+		} elseif( isset( $args['std'] ) && $args['std'] == $key && ! isset( $wpinv_options[ $args['id'] ] ) ) {
1106
+					$checked = true;
1107
+		}
1107 1108
 
1108 1109
 		echo '<input name="wpinv_settings[' . $sanitize_id . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="radio" value="' . $sanitize_key . '" ' . checked(true, $checked, false) . '/>&nbsp;';
1109 1110
 		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option ) . '</label><br/>';
@@ -1120,10 +1121,11 @@  discard block
 block discarded – undo
1120 1121
 	foreach ( $args['options'] as $key => $option ) :
1121 1122
 		$sanitize_key = wpinv_sanitize_key( $key );
1122 1123
         
1123
-        if ( isset( $wpinv_options['gateways'][ $key ] ) )
1124
-			$enabled = '1';
1125
-		else
1126
-			$enabled = null;
1124
+        if ( isset( $wpinv_options['gateways'][ $key ] ) ) {
1125
+        			$enabled = '1';
1126
+        } else {
1127
+					$enabled = null;
1128
+		}
1127 1129
 
1128 1130
 		echo '<input name="wpinv_settings[' . esc_attr( $args['id'] ) . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="1" ' . checked('1', $enabled, false) . '/>&nbsp;';
1129 1131
 		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option['admin_label'] ) . '</label><br/>';
@@ -1487,7 +1489,8 @@  discard block
 block discarded – undo
1487 1489
 				<td class="wpinv_tax_action"><span class="wpinv_remove_tax_rate button-secondary"><?php _e( 'Remove Rate', 'invoicing' ); ?></span></td>
1488 1490
 			</tr>
1489 1491
 			<?php endforeach; ?>
1490
-		<?php else : ?>
1492
+		<?php else {
1493
+    : ?>
1491 1494
 			<tr>
1492 1495
 				<td class="wpinv_tax_country">
1493 1496
 					<?php
@@ -1498,7 +1501,9 @@  discard block
 block discarded – undo
1498 1501
 						'show_option_none' => false,
1499 1502
 						'class'            => 'wpinv-tax-country wpi_select2',
1500 1503
 						'placeholder'      => __( 'Choose a country', 'invoicing' )
1501
-					) ); ?>
1504
+					) );
1505
+}
1506
+?>
1502 1507
 				</td>
1503 1508
 				<td class="wpinv_tax_state">
1504 1509
 					<?php echo wpinv_html_text( array(
Please login to merge, or discard this patch.
Spacing   +559 added lines, -559 removed lines patch added patch discarded remove patch
@@ -1,66 +1,66 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 // MUST have WordPress.
3
-if ( !defined( 'WPINC' ) ) {
4
-    exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) );
3
+if (!defined('WPINC')) {
4
+    exit('Do NOT access this file directly: ' . basename(__FILE__));
5 5
 }
6 6
 
7
-function wpinv_get_option( $key = '', $default = false ) {
7
+function wpinv_get_option($key = '', $default = false) {
8 8
     global $wpinv_options;
9 9
 
10
-    $value = isset( $wpinv_options[ $key ] ) ? $wpinv_options[ $key ] : $default;
11
-    $value = apply_filters( 'wpinv_get_option', $value, $key, $default );
10
+    $value = isset($wpinv_options[$key]) ? $wpinv_options[$key] : $default;
11
+    $value = apply_filters('wpinv_get_option', $value, $key, $default);
12 12
 
13
-    return apply_filters( 'wpinv_get_option_' . $key, $value, $key, $default );
13
+    return apply_filters('wpinv_get_option_' . $key, $value, $key, $default);
14 14
 }
15 15
 
16
-function wpinv_update_option( $key = '', $value = false ) {
16
+function wpinv_update_option($key = '', $value = false) {
17 17
     // If no key, exit
18
-    if ( empty( $key ) ) {
18
+    if (empty($key)) {
19 19
         return false;
20 20
     }
21 21
 
22
-    if ( empty( $value ) ) {
23
-        $remove_option = wpinv_delete_option( $key );
22
+    if (empty($value)) {
23
+        $remove_option = wpinv_delete_option($key);
24 24
         return $remove_option;
25 25
     }
26 26
 
27 27
     // First let's grab the current settings
28
-    $options = get_option( 'wpinv_settings' );
28
+    $options = get_option('wpinv_settings');
29 29
 
30 30
     // Let other plugin alter the value
31
-    $value = apply_filters( 'wpinv_update_option', $value, $key );
31
+    $value = apply_filters('wpinv_update_option', $value, $key);
32 32
 
33 33
     // Next let's try to update the value
34
-    $options[ $key ] = $value;
35
-    $did_update = update_option( 'wpinv_settings', $options );
34
+    $options[$key] = $value;
35
+    $did_update = update_option('wpinv_settings', $options);
36 36
 
37 37
     // If it's updated, let's update the global variable
38
-    if ( $did_update ) {
38
+    if ($did_update) {
39 39
         global $wpinv_options;
40
-        $wpinv_options[ $key ] = $value;
40
+        $wpinv_options[$key] = $value;
41 41
     }
42 42
 
43 43
     return $did_update;
44 44
 }
45 45
 
46
-function wpinv_delete_option( $key = '' ) {
46
+function wpinv_delete_option($key = '') {
47 47
     // If no key, exit
48
-    if ( empty( $key ) ) {
48
+    if (empty($key)) {
49 49
         return false;
50 50
     }
51 51
 
52 52
     // First let's grab the current settings
53
-    $options = get_option( 'wpinv_settings' );
53
+    $options = get_option('wpinv_settings');
54 54
 
55 55
     // Next let's try to update the value
56
-    if( isset( $options[ $key ] ) ) {
57
-        unset( $options[ $key ] );
56
+    if (isset($options[$key])) {
57
+        unset($options[$key]);
58 58
     }
59 59
 
60
-    $did_update = update_option( 'wpinv_settings', $options );
60
+    $did_update = update_option('wpinv_settings', $options);
61 61
 
62 62
     // If it updated, let's update the global variable
63
-    if ( $did_update ){
63
+    if ($did_update) {
64 64
         global $wpinv_options;
65 65
         $wpinv_options = $options;
66 66
     }
@@ -69,37 +69,37 @@  discard block
 block discarded – undo
69 69
 }
70 70
 
71 71
 function wpinv_get_settings() {
72
-    $settings = get_option( 'wpinv_settings' );
72
+    $settings = get_option('wpinv_settings');
73 73
 
74
-    if ( empty( $settings ) ) {
74
+    if (empty($settings)) {
75 75
         // Update old settings with new single option
76
-        $general_settings   = is_array( get_option( 'wpinv_settings_general' ) )    ? get_option( 'wpinv_settings_general' )    : array();
77
-        $gateways_settings  = is_array( get_option( 'wpinv_settings_gateways' ) )   ? get_option( 'wpinv_settings_gateways' )   : array();
78
-        $email_settings     = is_array( get_option( 'wpinv_settings_emails' ) )     ? get_option( 'wpinv_settings_emails' )     : array();
79
-        $tax_settings       = is_array( get_option( 'wpinv_settings_taxes' ) )      ? get_option( 'wpinv_settings_taxes' )      : array();
80
-        $misc_settings      = is_array( get_option( 'wpinv_settings_misc' ) )       ? get_option( 'wpinv_settings_misc' )       : array();
81
-        $tool_settings      = is_array( get_option( 'wpinv_settings_tools' ) )      ? get_option( 'wpinv_settings_tools' )      : array();
76
+        $general_settings   = is_array(get_option('wpinv_settings_general')) ? get_option('wpinv_settings_general') : array();
77
+        $gateways_settings  = is_array(get_option('wpinv_settings_gateways')) ? get_option('wpinv_settings_gateways') : array();
78
+        $email_settings     = is_array(get_option('wpinv_settings_emails')) ? get_option('wpinv_settings_emails') : array();
79
+        $tax_settings       = is_array(get_option('wpinv_settings_taxes')) ? get_option('wpinv_settings_taxes') : array();
80
+        $misc_settings      = is_array(get_option('wpinv_settings_misc')) ? get_option('wpinv_settings_misc') : array();
81
+        $tool_settings      = is_array(get_option('wpinv_settings_tools')) ? get_option('wpinv_settings_tools') : array();
82 82
 
83
-        $settings = array_merge( $general_settings, $gateways_settings, $email_settings, $tax_settings, $misc_settings, $tool_settings );
83
+        $settings = array_merge($general_settings, $gateways_settings, $email_settings, $tax_settings, $misc_settings, $tool_settings);
84 84
 
85
-        update_option( 'wpinv_settings', $settings );
85
+        update_option('wpinv_settings', $settings);
86 86
 
87 87
     }
88
-    return apply_filters( 'wpinv_get_settings', $settings );
88
+    return apply_filters('wpinv_get_settings', $settings);
89 89
 }
90 90
 
91 91
 function wpinv_register_settings() {
92
-    if ( false == get_option( 'wpinv_settings' ) ) {
93
-        add_option( 'wpinv_settings' );
92
+    if (false == get_option('wpinv_settings')) {
93
+        add_option('wpinv_settings');
94 94
     }
95 95
     
96 96
     $register_settings = wpinv_get_registered_settings();
97 97
     
98
-    foreach ( $register_settings as $tab => $sections ) {
99
-        foreach ( $sections as $section => $settings) {
98
+    foreach ($register_settings as $tab => $sections) {
99
+        foreach ($sections as $section => $settings) {
100 100
             // Check for backwards compatibility
101
-            $section_tabs = wpinv_get_settings_tab_sections( $tab );
102
-            if ( ! is_array( $section_tabs ) || ! array_key_exists( $section, $section_tabs ) ) {
101
+            $section_tabs = wpinv_get_settings_tab_sections($tab);
102
+            if (!is_array($section_tabs) || !array_key_exists($section, $section_tabs)) {
103 103
                 $section = 'main';
104 104
                 $settings = $sections;
105 105
             }
@@ -111,41 +111,41 @@  discard block
 block discarded – undo
111 111
                 'wpinv_settings_' . $tab . '_' . $section
112 112
             );
113 113
 
114
-            foreach ( $settings as $option ) {
114
+            foreach ($settings as $option) {
115 115
                 // For backwards compatibility
116
-                if ( empty( $option['id'] ) ) {
116
+                if (empty($option['id'])) {
117 117
                     continue;
118 118
                 }
119 119
 
120
-                $name = isset( $option['name'] ) ? $option['name'] : '';
120
+                $name = isset($option['name']) ? $option['name'] : '';
121 121
 
122 122
                 add_settings_field(
123 123
                     'wpinv_settings[' . $option['id'] . ']',
124 124
                     $name,
125
-                    function_exists( 'wpinv_' . $option['type'] . '_callback' ) ? 'wpinv_' . $option['type'] . '_callback' : 'wpinv_missing_callback',
125
+                    function_exists('wpinv_' . $option['type'] . '_callback') ? 'wpinv_' . $option['type'] . '_callback' : 'wpinv_missing_callback',
126 126
                     'wpinv_settings_' . $tab . '_' . $section,
127 127
                     'wpinv_settings_' . $tab . '_' . $section,
128 128
                     array(
129 129
                         'section'     => $section,
130
-                        'id'          => isset( $option['id'] )          ? $option['id']          : null,
131
-                        'desc'        => ! empty( $option['desc'] )      ? $option['desc']        : '',
132
-                        'name'        => isset( $option['name'] )        ? $option['name']        : null,
133
-                        'size'        => isset( $option['size'] )        ? $option['size']        : null,
134
-                        'options'     => isset( $option['options'] )     ? $option['options']     : '',
135
-                        'selected'    => isset( $option['selected'] )    ? $option['selected']    : null,
136
-                        'std'         => isset( $option['std'] )         ? $option['std']         : '',
137
-                        'min'         => isset( $option['min'] )         ? $option['min']         : null,
138
-                        'max'         => isset( $option['max'] )         ? $option['max']         : null,
139
-                        'step'        => isset( $option['step'] )        ? $option['step']        : null,
140
-                        'placeholder' => isset( $option['placeholder'] ) ? $option['placeholder'] : null,
141
-                        'allow_blank' => isset( $option['allow_blank'] ) ? $option['allow_blank'] : true,
142
-                        'readonly'    => isset( $option['readonly'] )    ? $option['readonly']    : false,
143
-                        'faux'        => isset( $option['faux'] )        ? $option['faux']        : false,
144
-                        'onchange'    => !empty( $option['onchange'] )   ? $option['onchange']    : '',
145
-                        'custom'      => !empty( $option['custom'] )     ? $option['custom']      : '',
146
-                        'class'       =>  !empty( $option['class'] )     ? $option['class']      : '',
147
-                        'cols'        => !empty( $option['cols'] ) && (int)$option['cols'] > 0 ? (int)$option['cols'] : 50,
148
-                        'rows'        => !empty( $option['rows'] ) && (int)$option['rows'] > 0 ? (int)$option['rows'] : 5,
130
+                        'id'          => isset($option['id']) ? $option['id'] : null,
131
+                        'desc'        => !empty($option['desc']) ? $option['desc'] : '',
132
+                        'name'        => isset($option['name']) ? $option['name'] : null,
133
+                        'size'        => isset($option['size']) ? $option['size'] : null,
134
+                        'options'     => isset($option['options']) ? $option['options'] : '',
135
+                        'selected'    => isset($option['selected']) ? $option['selected'] : null,
136
+                        'std'         => isset($option['std']) ? $option['std'] : '',
137
+                        'min'         => isset($option['min']) ? $option['min'] : null,
138
+                        'max'         => isset($option['max']) ? $option['max'] : null,
139
+                        'step'        => isset($option['step']) ? $option['step'] : null,
140
+                        'placeholder' => isset($option['placeholder']) ? $option['placeholder'] : null,
141
+                        'allow_blank' => isset($option['allow_blank']) ? $option['allow_blank'] : true,
142
+                        'readonly'    => isset($option['readonly']) ? $option['readonly'] : false,
143
+                        'faux'        => isset($option['faux']) ? $option['faux'] : false,
144
+                        'onchange'    => !empty($option['onchange']) ? $option['onchange'] : '',
145
+                        'custom'      => !empty($option['custom']) ? $option['custom'] : '',
146
+                        'class'       =>  !empty($option['class']) ? $option['class'] : '',
147
+                        'cols'        => !empty($option['cols']) && (int)$option['cols'] > 0 ? (int)$option['cols'] : 50,
148
+                        'rows'        => !empty($option['rows']) && (int)$option['rows'] > 0 ? (int)$option['rows'] : 5,
149 149
                     )
150 150
                 );
151 151
             }
@@ -153,203 +153,203 @@  discard block
 block discarded – undo
153 153
     }
154 154
 
155 155
     // Creates our settings in the options table
156
-    register_setting( 'wpinv_settings', 'wpinv_settings', 'wpinv_settings_sanitize' );
156
+    register_setting('wpinv_settings', 'wpinv_settings', 'wpinv_settings_sanitize');
157 157
 }
158
-add_action( 'admin_init', 'wpinv_register_settings' );
158
+add_action('admin_init', 'wpinv_register_settings');
159 159
 
160 160
 function wpinv_get_registered_settings() {
161
-    $pages = wpinv_get_pages( true );
161
+    $pages = wpinv_get_pages(true);
162 162
     
163 163
     $currencies = wpinv_get_currencies();
164 164
     
165 165
     $currency_code_options = array();
166
-    foreach ( $currencies as $code => $name ) {
167
-        $currency_code_options[ $code ] = $code . ' - ' . $name . ' (' . wpinv_currency_symbol( $code ) . ')';
166
+    foreach ($currencies as $code => $name) {
167
+        $currency_code_options[$code] = $code . ' - ' . $name . ' (' . wpinv_currency_symbol($code) . ')';
168 168
     }
169 169
     
170 170
     $due_payment_options       = array();
171
-    $due_payment_options[0]    = __( 'Now', 'invoicing' );
172
-    for ( $i = 1; $i <= 30; $i++ ) {
171
+    $due_payment_options[0]    = __('Now', 'invoicing');
172
+    for ($i = 1; $i <= 30; $i++) {
173 173
         $due_payment_options[$i] = $i;
174 174
     }
175 175
     
176 176
     $invoice_number_padd_options = array();
177
-    for ( $i = 0; $i <= 20; $i++ ) {
177
+    for ($i = 0; $i <= 20; $i++) {
178 178
         $invoice_number_padd_options[$i] = $i;
179 179
     }
180 180
     
181 181
     $currency_symbol = wpinv_currency_symbol();
182 182
     
183 183
     $last_number = $reset_number = '';
184
-    if ( $last_invoice_number = get_option( 'wpinv_last_invoice_number' ) ) {
185
-        $last_invoice_number = is_numeric( $last_invoice_number ) ? $last_invoice_number : wpinv_clean_invoice_number( $last_invoice_number );
184
+    if ($last_invoice_number = get_option('wpinv_last_invoice_number')) {
185
+        $last_invoice_number = is_numeric($last_invoice_number) ? $last_invoice_number : wpinv_clean_invoice_number($last_invoice_number);
186 186
 
187
-        if ( !empty( $last_invoice_number ) ) {
188
-            $last_number = ' ' . wp_sprintf( __( "( Last Invoice's sequential number: <b>%s</b> )", 'invoicing' ), $last_invoice_number );
187
+        if (!empty($last_invoice_number)) {
188
+            $last_number = ' ' . wp_sprintf(__("( Last Invoice's sequential number: <b>%s</b> )", 'invoicing'), $last_invoice_number);
189 189
         }
190 190
 
191 191
         $nonce = wp_create_nonce('reset_invoice_count');
192
-        $reset_number = '<a href="'.add_query_arg(array('reset_invoice_count' => 1, '_nonce' => $nonce)).'" class="btn button">'.__('Force Reset Sequence', 'invoicing' ). '</a>';
192
+        $reset_number = '<a href="' . add_query_arg(array('reset_invoice_count' => 1, '_nonce' => $nonce)) . '" class="btn button">' . __('Force Reset Sequence', 'invoicing') . '</a>';
193 193
     }
194 194
     
195 195
     $alert_wrapper_start = '<p style="color: #F00">';
196 196
     $alert_wrapper_close = '</p>';
197 197
     $wpinv_settings = array(
198
-        'general' => apply_filters( 'wpinv_settings_general',
198
+        'general' => apply_filters('wpinv_settings_general',
199 199
             array(
200 200
                 'main' => array(
201 201
                     'location_settings' => array(
202 202
                         'id'   => 'location_settings',
203
-                        'name' => '<h3>' . __( 'Default Location', 'invoicing' ) . '</h3>',
203
+                        'name' => '<h3>' . __('Default Location', 'invoicing') . '</h3>',
204 204
                         'desc' => '',
205 205
                         'type' => 'header',
206 206
                     ),
207 207
                     'default_country' => array(
208 208
                         'id'      => 'default_country',
209
-                        'name'    => __( 'Default Country', 'invoicing' ),
210
-                        'desc'    => __( 'Where does your store operate from?', 'invoicing' ),
209
+                        'name'    => __('Default Country', 'invoicing'),
210
+                        'desc'    => __('Where does your store operate from?', 'invoicing'),
211 211
                         'type'    => 'select',
212 212
                         'options' => wpinv_get_country_list(),
213 213
                         'std'     => 'GB',
214 214
                         'class'   => 'wpi_select2',
215
-                        'placeholder' => __( 'Select a country', 'invoicing' ),
215
+                        'placeholder' => __('Select a country', 'invoicing'),
216 216
                     ),
217 217
                     'default_state' => array(
218 218
                         'id'      => 'default_state',
219
-                        'name'    => __( 'Default State / Province', 'invoicing' ),
220
-                        'desc'    => __( 'What state / province does your store operate from?', 'invoicing' ),
219
+                        'name'    => __('Default State / Province', 'invoicing'),
220
+                        'desc'    => __('What state / province does your store operate from?', 'invoicing'),
221 221
                         'type'    => 'country_states',
222 222
                         'class'   => 'wpi_select2',
223
-                        'placeholder' => __( 'Select a state', 'invoicing' ),
223
+                        'placeholder' => __('Select a state', 'invoicing'),
224 224
                     ),
225 225
                     'store_name' => array(
226 226
                         'id'   => 'store_name',
227
-                        'name' => __( 'Store Name', 'invoicing' ),
228
-                        'desc' => __( 'Store name to print on invoices.', 'invoicing' ),
227
+                        'name' => __('Store Name', 'invoicing'),
228
+                        'desc' => __('Store name to print on invoices.', 'invoicing'),
229 229
                         'std'     => get_option('blogname'),
230 230
                         'type' => 'text',
231 231
                     ),
232 232
                     'logo' => array(
233 233
                         'id'   => 'logo',
234
-                        'name' => __( 'Logo URL', 'invoicing' ),
235
-                        'desc' => __( 'Store logo to print on invoices.', 'invoicing' ),
234
+                        'name' => __('Logo URL', 'invoicing'),
235
+                        'desc' => __('Store logo to print on invoices.', 'invoicing'),
236 236
                         'type' => 'text',
237 237
                     ),
238 238
                     'store_address' => array(
239 239
                         'id'   => 'store_address',
240
-                        'name' => __( 'Store Address', 'invoicing' ),
241
-                        'desc' => __( 'Enter the store address to display on invoice', 'invoicing' ),
240
+                        'name' => __('Store Address', 'invoicing'),
241
+                        'desc' => __('Enter the store address to display on invoice', 'invoicing'),
242 242
                         'type' => 'textarea',
243 243
                     ),
244 244
                     'page_settings' => array(
245 245
                         'id'   => 'page_settings',
246
-                        'name' => '<h3>' . __( 'Page Settings', 'invoicing' ) . '</h3>',
246
+                        'name' => '<h3>' . __('Page Settings', 'invoicing') . '</h3>',
247 247
                         'desc' => '',
248 248
                         'type' => 'header',
249 249
                     ),
250 250
                     'checkout_page' => array(
251 251
                         'id'          => 'checkout_page',
252
-                        'name'        => __( 'Checkout Page', 'invoicing' ),
253
-                        'desc'        => __( 'This is the checkout page where buyers will complete their payments. The <b>[wpinv_checkout]</b> short code must be on this page.', 'invoicing' ),
252
+                        'name'        => __('Checkout Page', 'invoicing'),
253
+                        'desc'        => __('This is the checkout page where buyers will complete their payments. The <b>[wpinv_checkout]</b> short code must be on this page.', 'invoicing'),
254 254
                         'type'        => 'select',
255 255
                         'options'     => $pages,
256 256
                         'class'       => 'wpi_select2',
257
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
257
+                        'placeholder' => __('Select a page', 'invoicing'),
258 258
                     ),
259 259
                     'tandc_page' => array(
260 260
                         'id'          => 'tandc_page',
261
-                        'name'        => __( 'Terms & Conditions', 'invoicing' ),
262
-                        'desc'        => __( 'If you select a "Terms & Conditions" page here the customer will be asked to accept them on checkout.', 'invoicing' ),
261
+                        'name'        => __('Terms & Conditions', 'invoicing'),
262
+                        'desc'        => __('If you select a "Terms & Conditions" page here the customer will be asked to accept them on checkout.', 'invoicing'),
263 263
                         'type'        => 'select',
264
-                        'options'     => wpinv_get_pages( true,  __( 'Select a page', 'invoicing' )),
264
+                        'options'     => wpinv_get_pages(true, __('Select a page', 'invoicing')),
265 265
                         'class'       => 'wpi_select2',
266
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
266
+                        'placeholder' => __('Select a page', 'invoicing'),
267 267
                     ),
268 268
                     'success_page' => array(
269 269
                         'id'          => 'success_page',
270
-                        'name'        => __( 'Success Page', 'invoicing' ),
271
-                        'desc'        => __( 'This is the page buyers are sent to after completing their payments. The <b>[wpinv_receipt]</b> short code should be on this page.', 'invoicing' ),
270
+                        'name'        => __('Success Page', 'invoicing'),
271
+                        'desc'        => __('This is the page buyers are sent to after completing their payments. The <b>[wpinv_receipt]</b> short code should be on this page.', 'invoicing'),
272 272
                         'type'        => 'select',
273 273
                         'options'     => $pages,
274 274
                         'class'       => 'wpi_select2',
275
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
275
+                        'placeholder' => __('Select a page', 'invoicing'),
276 276
                     ),
277 277
                     'failure_page' => array(
278 278
                         'id'          => 'failure_page',
279
-                        'name'        => __( 'Failed Transaction Page', 'invoicing' ),
280
-                        'desc'        => __( 'This is the page buyers are sent to if their transaction is cancelled or fails.', 'invoicing' ),
279
+                        'name'        => __('Failed Transaction Page', 'invoicing'),
280
+                        'desc'        => __('This is the page buyers are sent to if their transaction is cancelled or fails.', 'invoicing'),
281 281
                         'type'        => 'select',
282 282
                         'options'     => $pages,
283 283
                         'class'       => 'wpi_select2',
284
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
284
+                        'placeholder' => __('Select a page', 'invoicing'),
285 285
                     ),
286 286
                     'invoice_history_page' => array(
287 287
                         'id'          => 'invoice_history_page',
288
-                        'name'        => __( 'Invoice History Page', 'invoicing' ),
289
-                        'desc'        => __( 'This page shows an invoice history for the current user. The <b>[wpinv_history]</b> short code should be on this page.', 'invoicing' ),
288
+                        'name'        => __('Invoice History Page', 'invoicing'),
289
+                        'desc'        => __('This page shows an invoice history for the current user. The <b>[wpinv_history]</b> short code should be on this page.', 'invoicing'),
290 290
                         'type'        => 'select',
291 291
                         'options'     => $pages,
292 292
                         'class'       => 'wpi_select2',
293
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
293
+                        'placeholder' => __('Select a page', 'invoicing'),
294 294
                     ),
295 295
                     'invoice_subscription_page' => array(
296 296
                         'id'          => 'invoice_subscription_page',
297
-                        'name'        => __( 'Invoice Subscriptions Page', 'invoicing' ),
298
-                        'desc'        => __( 'This page shows subscriptions history for the current user. The <b>[wpinv_subscriptions]</b> short code should be on this page.', 'invoicing' ),
297
+                        'name'        => __('Invoice Subscriptions Page', 'invoicing'),
298
+                        'desc'        => __('This page shows subscriptions history for the current user. The <b>[wpinv_subscriptions]</b> short code should be on this page.', 'invoicing'),
299 299
                         'type'        => 'select',
300 300
                         'options'     => $pages,
301 301
                         'class'       => 'wpi_select2',
302
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
302
+                        'placeholder' => __('Select a page', 'invoicing'),
303 303
                     ),
304 304
                 ),
305 305
                 'currency_section' => array(
306 306
                     'currency_settings' => array(
307 307
                         'id'   => 'currency_settings',
308
-                        'name' => '<h3>' . __( 'Currency Settings', 'invoicing' ) . '</h3>',
308
+                        'name' => '<h3>' . __('Currency Settings', 'invoicing') . '</h3>',
309 309
                         'desc' => '',
310 310
                         'type' => 'header',
311 311
                     ),
312 312
                     'currency' => array(
313 313
                         'id'      => 'currency',
314
-                        'name'    => __( 'Currency', 'invoicing' ),
315
-                        'desc'    => __( 'Choose your currency. Note that some payment gateways have currency restrictions.', 'invoicing' ),
314
+                        'name'    => __('Currency', 'invoicing'),
315
+                        'desc'    => __('Choose your currency. Note that some payment gateways have currency restrictions.', 'invoicing'),
316 316
                         'type'    => 'select',
317 317
                         'class'       => 'wpi_select2',
318 318
                         'options' => $currency_code_options,
319 319
                     ),
320 320
                     'currency_position' => array(
321 321
                         'id'      => 'currency_position',
322
-                        'name'    => __( 'Currency Position', 'invoicing' ),
323
-                        'desc'    => __( 'Choose the location of the currency sign.', 'invoicing' ),
322
+                        'name'    => __('Currency Position', 'invoicing'),
323
+                        'desc'    => __('Choose the location of the currency sign.', 'invoicing'),
324 324
                         'type'    => 'select',
325 325
                         'class'   => 'wpi_select2',
326 326
                         'options'  => array(
327
-                            'left'        => __( 'Left', 'invoicing' ) . ' (' . $currency_symbol . wpinv_format_amount( '99.99' ) . ')',
328
-                            'right'       => __( 'Right', 'invoicing' ) . ' ('. wpinv_format_amount( '99.99' ) . $currency_symbol . ')',
329
-                            'left_space'  => __( 'Left with space', 'invoicing' ) . ' (' . $currency_symbol . ' ' . wpinv_format_amount( '99.99' ) . ')',
330
-                            'right_space' => __( 'Right with space', 'invoicing' ) . ' (' . wpinv_format_amount( '99.99' ) . ' ' . $currency_symbol . ')'
327
+                            'left'        => __('Left', 'invoicing') . ' (' . $currency_symbol . wpinv_format_amount('99.99') . ')',
328
+                            'right'       => __('Right', 'invoicing') . ' (' . wpinv_format_amount('99.99') . $currency_symbol . ')',
329
+                            'left_space'  => __('Left with space', 'invoicing') . ' (' . $currency_symbol . ' ' . wpinv_format_amount('99.99') . ')',
330
+                            'right_space' => __('Right with space', 'invoicing') . ' (' . wpinv_format_amount('99.99') . ' ' . $currency_symbol . ')'
331 331
                         )
332 332
                     ),
333 333
                     'thousands_separator' => array(
334 334
                         'id'   => 'thousands_separator',
335
-                        'name' => __( 'Thousands Separator', 'invoicing' ),
336
-                        'desc' => __( 'The symbol (usually , or .) to separate thousands', 'invoicing' ),
335
+                        'name' => __('Thousands Separator', 'invoicing'),
336
+                        'desc' => __('The symbol (usually , or .) to separate thousands', 'invoicing'),
337 337
                         'type' => 'text',
338 338
                         'size' => 'small',
339 339
                         'std'  => ',',
340 340
                     ),
341 341
                     'decimal_separator' => array(
342 342
                         'id'   => 'decimal_separator',
343
-                        'name' => __( 'Decimal Separator', 'invoicing' ),
344
-                        'desc' => __( 'The symbol (usually , or .) to separate decimal points', 'invoicing' ),
343
+                        'name' => __('Decimal Separator', 'invoicing'),
344
+                        'desc' => __('The symbol (usually , or .) to separate decimal points', 'invoicing'),
345 345
                         'type' => 'text',
346 346
                         'size' => 'small',
347 347
                         'std'  => '.',
348 348
                     ),
349 349
                     'decimals' => array(
350 350
                         'id'   => 'decimals',
351
-                        'name' => __( 'Number of Decimals', 'invoicing' ),
352
-                        'desc' => __( 'This sets the number of decimal points shown in displayed prices.', 'invoicing' ),
351
+                        'name' => __('Number of Decimals', 'invoicing'),
352
+                        'desc' => __('This sets the number of decimal points shown in displayed prices.', 'invoicing'),
353 353
                         'type' => 'number',
354 354
                         'size' => 'small',
355 355
                         'std'  => '2',
@@ -361,60 +361,60 @@  discard block
 block discarded – undo
361 361
                 'labels' => array(
362 362
                     'labels' => array(
363 363
                         'id'   => 'labels_settings',
364
-                        'name' => '<h3>' . __( 'Invoice Labels', 'invoicing' ) . '</h3>',
364
+                        'name' => '<h3>' . __('Invoice Labels', 'invoicing') . '</h3>',
365 365
                         'desc' => '',
366 366
                         'type' => 'header',
367 367
                     ),
368 368
                     'vat_name' => array(
369 369
                         'id' => 'vat_name',
370
-                        'name' => __( 'VAT Name', 'invoicing' ),
371
-                        'desc' => __( 'Enter the VAT name', 'invoicing' ),
370
+                        'name' => __('VAT Name', 'invoicing'),
371
+                        'desc' => __('Enter the VAT name', 'invoicing'),
372 372
                         'type' => 'text',
373 373
                         'size' => 'regular',
374 374
                         'std' => 'VAT'
375 375
                     ),
376 376
                     'vat_invoice_notice_label' => array(
377 377
                         'id' => 'vat_invoice_notice_label',
378
-                        'name' => __( 'Invoice Notice Label', 'invoicing' ),
379
-                        'desc' => __( 'Use this to add an invoice notice section (label) to your invoices', 'invoicing' ),
378
+                        'name' => __('Invoice Notice Label', 'invoicing'),
379
+                        'desc' => __('Use this to add an invoice notice section (label) to your invoices', 'invoicing'),
380 380
                         'type' => 'text',
381 381
                         'size' => 'regular',
382 382
                     ),
383 383
                     'vat_invoice_notice' => array(
384 384
                         'id' => 'vat_invoice_notice',
385
-                        'name' => __( 'Invoice notice', 'invoicing' ),
386
-                        'desc' =>   __( 'Use this to add an invoice notice section (description) to your invoices', 'invoicing' ),
385
+                        'name' => __('Invoice notice', 'invoicing'),
386
+                        'desc' =>   __('Use this to add an invoice notice section (description) to your invoices', 'invoicing'),
387 387
                         'type' => 'text',
388 388
                         'size' => 'regular',
389 389
                     ),
390 390
                     'name_your_price' => array(
391 391
                         'id'   => 'name_your_price_settings',
392
-                        'name' => '<h3>' . __( 'Name Your Price', 'invoicing' ) . '</h3>',
392
+                        'name' => '<h3>' . __('Name Your Price', 'invoicing') . '</h3>',
393 393
                         'desc' => '',
394 394
                         'type' => 'header',
395 395
                     ),
396 396
                     'suggested_price_text' => array(
397 397
                         'id'   => 'suggested_price_text',
398
-                        'name' => __( 'Suggested Price Text', 'invoicing' ),
399
-                        'desc' => __( "The label used to indicate an item's suggested price", 'invoicing' ),
398
+                        'name' => __('Suggested Price Text', 'invoicing'),
399
+                        'desc' => __("The label used to indicate an item's suggested price", 'invoicing'),
400 400
                         'type' => 'text',
401 401
                         'size' => 'regular',
402
-                        'std'  => __( 'Suggested Price:', 'invoicing' ),
402
+                        'std'  => __('Suggested Price:', 'invoicing'),
403 403
                     ),
404 404
                     'minimum_price_text' => array(
405 405
                         'id'   => 'minimum_price_text',
406
-                        'name' => __( 'Minimum Price Text', 'invoicing' ),
407
-                        'desc' => __( "The label used to indicate an item's minimum price", 'invoicing' ),
406
+                        'name' => __('Minimum Price Text', 'invoicing'),
407
+                        'desc' => __("The label used to indicate an item's minimum price", 'invoicing'),
408 408
                         'type' => 'text',
409 409
                         'size' => 'regular',
410
-                        'std'  => __( 'Minimum Price:', 'invoicing' ),
410
+                        'std'  => __('Minimum Price:', 'invoicing'),
411 411
                     ),
412 412
                     'name_your_price_text' => array(
413 413
                         'id'   => 'name_your_price_text',
414
-                        'name' => __( 'Name Your Price Text', 'invoicing' ),
414
+                        'name' => __('Name Your Price Text', 'invoicing'),
415 415
                         'type' => 'text',
416 416
                         'size' => 'regular',
417
-                        'std'  => __( 'Name Your Price', 'invoicing' ),
417
+                        'std'  => __('Name Your Price', 'invoicing'),
418 418
                     ),
419 419
                 )
420 420
             )
@@ -424,22 +424,22 @@  discard block
 block discarded – undo
424 424
                 'main' => array(
425 425
                     'gateway_settings' => array(
426 426
                         'id'   => 'api_header',
427
-                        'name' => '<h3>' . __( 'Gateway Settings', 'invoicing' ) . '</h3>',
427
+                        'name' => '<h3>' . __('Gateway Settings', 'invoicing') . '</h3>',
428 428
                         'desc' => '',
429 429
                         'type' => 'header',
430 430
                     ),
431 431
                     'gateways' => array(
432 432
                         'id'      => 'gateways',
433
-                        'name'    => __( 'Payment Gateways', 'invoicing' ),
434
-                        'desc'    => __( 'Choose the payment gateways you want to enable.', 'invoicing' ),
433
+                        'name'    => __('Payment Gateways', 'invoicing'),
434
+                        'desc'    => __('Choose the payment gateways you want to enable.', 'invoicing'),
435 435
                         'type'    => 'gateways',
436 436
                         'std'     => array('manual'=>1),
437 437
                         'options' => wpinv_get_payment_gateways(),
438 438
                     ),
439 439
                     'default_gateway' => array(
440 440
                         'id'      => 'default_gateway',
441
-                        'name'    => __( 'Default Gateway', 'invoicing' ),
442
-                        'desc'    => __( 'This gateway will be loaded automatically with the checkout page.', 'invoicing' ),
441
+                        'name'    => __('Default Gateway', 'invoicing'),
442
+                        'desc'    => __('This gateway will be loaded automatically with the checkout page.', 'invoicing'),
443 443
                         'type'    => 'gateway_select',
444 444
                         'std'     => 'manual',
445 445
                         'class'   => 'wpi_select2',
@@ -454,19 +454,19 @@  discard block
 block discarded – undo
454 454
                 'main' => array(
455 455
                     'tax_settings' => array(
456 456
                         'id'   => 'tax_settings',
457
-                        'name' => '<h3>' . __( 'Tax Settings', 'invoicing' ) . '</h3>',
457
+                        'name' => '<h3>' . __('Tax Settings', 'invoicing') . '</h3>',
458 458
                         'type' => 'header',
459 459
                     ),
460 460
                     'enable_taxes' => array(
461 461
                         'id'   => 'enable_taxes',
462
-                        'name' => __( 'Enable Taxes', 'invoicing' ),
463
-                        'desc' => __( 'Check this to enable taxes on invoices.', 'invoicing' ),
462
+                        'name' => __('Enable Taxes', 'invoicing'),
463
+                        'desc' => __('Check this to enable taxes on invoices.', 'invoicing'),
464 464
                         'type' => 'checkbox',
465 465
                     ),
466 466
                     'tax_rate' => array(
467 467
                         'id'   => 'tax_rate',
468
-                        'name' => __( 'Fallback Tax Rate', 'invoicing' ),
469
-                        'desc' => __( 'Enter a percentage, such as 6.5. Customers not in a specific rate will be charged this rate.', 'invoicing' ),
468
+                        'name' => __('Fallback Tax Rate', 'invoicing'),
469
+                        'desc' => __('Enter a percentage, such as 6.5. Customers not in a specific rate will be charged this rate.', 'invoicing'),
470 470
                         'type' => 'number',
471 471
                         'size' => 'small',
472 472
                         'min'  => '0',
@@ -478,8 +478,8 @@  discard block
 block discarded – undo
478 478
                 'rates' => array(
479 479
                     'tax_rates' => array(
480 480
                         'id'   => 'tax_rates',
481
-                        'name' => '<h3>' . __( 'Tax Rates', 'invoicing' ) . '</h3>',
482
-                        'desc' => __( 'Enter tax rates for specific regions.', 'invoicing' ),
481
+                        'name' => '<h3>' . __('Tax Rates', 'invoicing') . '</h3>',
482
+                        'desc' => __('Enter tax rates for specific regions.', 'invoicing'),
483 483
                         'type' => 'tax_rates',
484 484
                     ),
485 485
                 )
@@ -491,61 +491,61 @@  discard block
 block discarded – undo
491 491
                 'main' => array(
492 492
                     'email_settings_header' => array(
493 493
                         'id'   => 'email_settings_header',
494
-                        'name' => '<h3>' . __( 'Email Sender Options', 'invoicing' ) . '</h3>',
494
+                        'name' => '<h3>' . __('Email Sender Options', 'invoicing') . '</h3>',
495 495
                         'type' => 'header',
496 496
                     ),
497 497
                     'email_from_name' => array(
498 498
                         'id'   => 'email_from_name',
499
-                        'name' => __( 'From Name', 'invoicing' ),
500
-                        'desc' => __( 'Enter the sender\'s name appears in outgoing invoice emails. This should be your site name.', 'invoicing' ),
501
-                        'std' => esc_attr( get_bloginfo( 'name', 'display' ) ),
499
+                        'name' => __('From Name', 'invoicing'),
500
+                        'desc' => __('Enter the sender\'s name appears in outgoing invoice emails. This should be your site name.', 'invoicing'),
501
+                        'std' => esc_attr(get_bloginfo('name', 'display')),
502 502
                         'type' => 'text',
503 503
                     ),
504 504
                     'email_from' => array(
505 505
                         'id'   => 'email_from',
506
-                        'name' => __( 'From Email', 'invoicing' ),
507
-                        'desc' => sprintf (__( 'Email address to send invoice emails from. This will act as the "from" and "reply-to" address. %s If emails are not being sent it may be that your hosting prevents emails being sent if the email domains do not match.%s', 'invoicing' ), $alert_wrapper_start, $alert_wrapper_close),
508
-                        'std' => get_option( 'admin_email' ),
506
+                        'name' => __('From Email', 'invoicing'),
507
+                        'desc' => sprintf(__('Email address to send invoice emails from. This will act as the "from" and "reply-to" address. %s If emails are not being sent it may be that your hosting prevents emails being sent if the email domains do not match.%s', 'invoicing'), $alert_wrapper_start, $alert_wrapper_close),
508
+                        'std' => get_option('admin_email'),
509 509
                         'type' => 'text',
510 510
                     ),
511 511
                     'overdue_settings_header' => array(
512 512
                         'id'   => 'overdue_settings_header',
513
-                        'name' => '<h3>' . __( 'Due Date Settings', 'invoicing' ) . '</h3>',
513
+                        'name' => '<h3>' . __('Due Date Settings', 'invoicing') . '</h3>',
514 514
                         'type' => 'header',
515 515
                     ),
516 516
                     'overdue_active' => array(
517 517
                         'id'   => 'overdue_active',
518
-                        'name' => __( 'Enable Due Date', 'invoicing' ),
519
-                        'desc' => __( 'Check this to enable due date option for invoices.', 'invoicing' ),
518
+                        'name' => __('Enable Due Date', 'invoicing'),
519
+                        'desc' => __('Check this to enable due date option for invoices.', 'invoicing'),
520 520
                         'type' => 'checkbox',
521 521
                         'std'  => false,
522 522
                     ),
523 523
                     'overdue_days' => array(
524 524
                         'id'          => 'overdue_days',
525
-                        'name'        => __( 'Default Due Date', 'invoicing' ),
526
-                        'desc'        => __( 'Number of days each Invoice is due after the created date. This will automatically set the date in the "Due Date" field. Can be overridden on individual Invoices.', 'invoicing' ),
525
+                        'name'        => __('Default Due Date', 'invoicing'),
526
+                        'desc'        => __('Number of days each Invoice is due after the created date. This will automatically set the date in the "Due Date" field. Can be overridden on individual Invoices.', 'invoicing'),
527 527
                         'type'        => 'select',
528 528
                         'options'     => $due_payment_options,
529 529
                         'std'         => 0,
530
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
530
+                        'placeholder' => __('Select a page', 'invoicing'),
531 531
                     ),
532 532
                     'email_template_header' => array(
533 533
                         'id'   => 'email_template_header',
534
-                        'name' => '<h3>' . __( 'Email Template', 'invoicing' ) . '</h3>',
534
+                        'name' => '<h3>' . __('Email Template', 'invoicing') . '</h3>',
535 535
                         'type' => 'header',
536 536
                     ),
537 537
                     'email_header_image' => array(
538 538
                         'id'   => 'email_header_image',
539
-                        'name' => __( 'Header Image', 'invoicing' ),
540
-                        'desc' => __( 'URL to an image you want to show in the email header. Upload images using the media uploader (Admin > Media).', 'invoicing' ),
539
+                        'name' => __('Header Image', 'invoicing'),
540
+                        'desc' => __('URL to an image you want to show in the email header. Upload images using the media uploader (Admin > Media).', 'invoicing'),
541 541
                         'std' => '',
542 542
                         'type' => 'text',
543 543
                     ),
544 544
                     'email_footer_text' => array(
545 545
                         'id'   => 'email_footer_text',
546
-                        'name' => __( 'Footer Text', 'invoicing' ),
547
-                        'desc' => __( 'The text to appear in the footer of all invoice emails.', 'invoicing' ),
548
-                        'std' => get_bloginfo( 'name', 'display' ) . ' - ' . __( 'Powered by GeoDirectory', 'invoicing' ),
546
+                        'name' => __('Footer Text', 'invoicing'),
547
+                        'desc' => __('The text to appear in the footer of all invoice emails.', 'invoicing'),
548
+                        'std' => get_bloginfo('name', 'display') . ' - ' . __('Powered by GeoDirectory', 'invoicing'),
549 549
                         'type' => 'textarea',
550 550
                         'class' => 'regular-text',
551 551
                         'rows' => 2,
@@ -553,29 +553,29 @@  discard block
 block discarded – undo
553 553
                     ),
554 554
                     'email_base_color' => array(
555 555
                         'id'   => 'email_base_color',
556
-                        'name' => __( 'Base Color', 'invoicing' ),
557
-                        'desc' => __( 'The base color for invoice email template. Default <code>#557da2</code>.', 'invoicing' ),
556
+                        'name' => __('Base Color', 'invoicing'),
557
+                        'desc' => __('The base color for invoice email template. Default <code>#557da2</code>.', 'invoicing'),
558 558
                         'std' => '#557da2',
559 559
                         'type' => 'color',
560 560
                     ),
561 561
                     'email_background_color' => array(
562 562
                         'id'   => 'email_background_color',
563
-                        'name' => __( 'Background Color', 'invoicing' ),
564
-                        'desc' => __( 'The background color of email template. Default <code>#f5f5f5</code>.', 'invoicing' ),
563
+                        'name' => __('Background Color', 'invoicing'),
564
+                        'desc' => __('The background color of email template. Default <code>#f5f5f5</code>.', 'invoicing'),
565 565
                         'std' => '#f5f5f5',
566 566
                         'type' => 'color',
567 567
                     ),
568 568
                     'email_body_background_color' => array(
569 569
                         'id'   => 'email_body_background_color',
570
-                        'name' => __( 'Body Background Color', 'invoicing' ),
571
-                        'desc' => __( 'The main body background color of email template. Default <code>#fdfdfd</code>.', 'invoicing' ),
570
+                        'name' => __('Body Background Color', 'invoicing'),
571
+                        'desc' => __('The main body background color of email template. Default <code>#fdfdfd</code>.', 'invoicing'),
572 572
                         'std' => '#fdfdfd',
573 573
                         'type' => 'color',
574 574
                     ),
575 575
                     'email_text_color' => array(
576 576
                         'id'   => 'email_text_color',
577
-                        'name' => __( 'Body Text Color', 'invoicing' ),
578
-                        'desc' => __( 'The main body text color. Default <code>#505050</code>.', 'invoicing' ),
577
+                        'name' => __('Body Text Color', 'invoicing'),
578
+                        'desc' => __('The main body text color. Default <code>#505050</code>.', 'invoicing'),
579 579
                         'std' => '#505050',
580 580
                         'type' => 'color',
581 581
                     ),
@@ -594,26 +594,26 @@  discard block
 block discarded – undo
594 594
                 'main' => array(
595 595
                     'invoicing_privacy_policy_settings' => array(
596 596
                         'id'   => 'invoicing_privacy_policy_settings',
597
-                        'name' => '<h3>' . __( 'Privacy Policy', 'invoicing' ) . '</h3>',
597
+                        'name' => '<h3>' . __('Privacy Policy', 'invoicing') . '</h3>',
598 598
                         'type' => 'header',
599 599
                     ),
600 600
                     'privacy_page' => array(
601 601
                         'id'          => 'privacy_page',
602
-                        'name'        => __( 'Privacy Page', 'invoicing' ),
603
-                        'desc'        => __( 'If no privacy policy page set in Settings->Privacy default settings, this page will be used on checkout page.', 'invoicing' ),
602
+                        'name'        => __('Privacy Page', 'invoicing'),
603
+                        'desc'        => __('If no privacy policy page set in Settings->Privacy default settings, this page will be used on checkout page.', 'invoicing'),
604 604
                         'type'        => 'select',
605
-                        'options'     => wpinv_get_pages( true,  __( 'Select a page', 'invoicing' )),
605
+                        'options'     => wpinv_get_pages(true, __('Select a page', 'invoicing')),
606 606
                         'class'       => 'wpi_select2',
607
-                        'placeholder' => __( 'Select a page', 'invoicing' ),
607
+                        'placeholder' => __('Select a page', 'invoicing'),
608 608
                     ),
609 609
                     'invoicing_privacy_checkout_message' => array(
610 610
                         'id' => 'invoicing_privacy_checkout_message',
611
-                        'name' => __( 'Checkout privacy policy', 'invoicing' ),
612
-                        'desc' => __( 'Optionally add privacy policy message which will display on checkout page.', 'invoicing' ),
611
+                        'name' => __('Checkout privacy policy', 'invoicing'),
612
+                        'desc' => __('Optionally add privacy policy message which will display on checkout page.', 'invoicing'),
613 613
                         'type' => 'textarea',
614 614
                         'class'=> 'regular-text',
615 615
                         'rows' => 4,
616
-                        'std'  => sprintf( __( 'Your personal data will be used to process your invoice, payment and for other purposes described in our %s.', 'invoicing' ), '[wpinv_privacy_policy]' ),
616
+                        'std'  => sprintf(__('Your personal data will be used to process your invoice, payment and for other purposes described in our %s.', 'invoicing'), '[wpinv_privacy_policy]'),
617 617
                     ),
618 618
                 ),
619 619
             )
@@ -624,19 +624,19 @@  discard block
 block discarded – undo
624 624
                 'main' => array(
625 625
                     'invoice_number_format_settings' => array(
626 626
                         'id'   => 'invoice_number_format_settings',
627
-                        'name' => '<h3>' . __( 'Invoice Number', 'invoicing' ) . '</h3>',
627
+                        'name' => '<h3>' . __('Invoice Number', 'invoicing') . '</h3>',
628 628
                         'type' => 'header',
629 629
                     ),
630 630
                     'sequential_invoice_number' => array(
631 631
                         'id'   => 'sequential_invoice_number',
632
-                        'name' => __( 'Sequential Invoice Numbers', 'invoicing' ),
633
-                        'desc' => __('Check this box to enable sequential invoice numbers.', 'invoicing' ) . $reset_number,
632
+                        'name' => __('Sequential Invoice Numbers', 'invoicing'),
633
+                        'desc' => __('Check this box to enable sequential invoice numbers.', 'invoicing') . $reset_number,
634 634
                         'type' => 'checkbox',
635 635
                     ),
636 636
                     'invoice_sequence_start' => array(
637 637
                         'id'   => 'invoice_sequence_start',
638
-                        'name' => __( 'Sequential Starting Number', 'invoicing' ),
639
-                        'desc' => __( 'The number at which the invoice number sequence should begin.', 'invoicing' ) . $last_number,
638
+                        'name' => __('Sequential Starting Number', 'invoicing'),
639
+                        'desc' => __('The number at which the invoice number sequence should begin.', 'invoicing') . $last_number,
640 640
                         'type' => 'number',
641 641
                         'size' => 'small',
642 642
                         'std'  => '1',
@@ -644,8 +644,8 @@  discard block
 block discarded – undo
644 644
                     ),
645 645
                     'invoice_number_padd' => array(
646 646
                         'id'      => 'invoice_number_padd',
647
-                        'name'    => __( 'Minimum Digits', 'invoicing' ),
648
-                        'desc'    => __( 'If the invoice number has less digits than this number, it is left padded with 0s. Ex: invoice number 108 will padded to 00108 if digits set to 5. The default 0 means no padding.', 'invoicing' ),
647
+                        'name'    => __('Minimum Digits', 'invoicing'),
648
+                        'desc'    => __('If the invoice number has less digits than this number, it is left padded with 0s. Ex: invoice number 108 will padded to 00108 if digits set to 5. The default 0 means no padding.', 'invoicing'),
649 649
                         'type'    => 'select',
650 650
                         'options' => $invoice_number_padd_options,
651 651
                         'std'     => 5,
@@ -653,8 +653,8 @@  discard block
 block discarded – undo
653 653
                     ),
654 654
                     'invoice_number_prefix' => array(
655 655
                         'id' => 'invoice_number_prefix',
656
-                        'name' => __( 'Invoice Number Prefix', 'invoicing' ),
657
-                        'desc' => __( 'Prefix for all invoice numbers. Ex: WPINV-', 'invoicing' ),
656
+                        'name' => __('Invoice Number Prefix', 'invoicing'),
657
+                        'desc' => __('Prefix for all invoice numbers. Ex: WPINV-', 'invoicing'),
658 658
                         'type' => 'text',
659 659
                         'size' => 'regular',
660 660
                         'std' => 'WPINV-',
@@ -662,32 +662,32 @@  discard block
 block discarded – undo
662 662
                     ),
663 663
                     'invoice_number_postfix' => array(
664 664
                         'id' => 'invoice_number_postfix',
665
-                        'name' => __( 'Invoice Number Postfix', 'invoicing' ),
666
-                        'desc' => __( 'Postfix for all invoice numbers.', 'invoicing' ),
665
+                        'name' => __('Invoice Number Postfix', 'invoicing'),
666
+                        'desc' => __('Postfix for all invoice numbers.', 'invoicing'),
667 667
                         'type' => 'text',
668 668
                         'size' => 'regular',
669 669
                         'std' => ''
670 670
                     ),
671 671
                     'checkout_settings' => array(
672 672
                         'id'   => 'checkout_settings',
673
-                        'name' => '<h3>' . __( 'Checkout Settings', 'invoicing' ) . '</h3>',
673
+                        'name' => '<h3>' . __('Checkout Settings', 'invoicing') . '</h3>',
674 674
                         'type' => 'header',
675 675
                     ),
676 676
                     'login_to_checkout' => array(
677 677
                         'id'   => 'login_to_checkout',
678
-                        'name' => __( 'Require Login To Checkout', 'invoicing' ),
679
-                        'desc' => __( 'If ticked then user needs to be logged in to view or pay invoice, can only view or pay their own invoice. If unticked then anyone can view or pay the invoice.', 'invoicing' ),
678
+                        'name' => __('Require Login To Checkout', 'invoicing'),
679
+                        'desc' => __('If ticked then user needs to be logged in to view or pay invoice, can only view or pay their own invoice. If unticked then anyone can view or pay the invoice.', 'invoicing'),
680 680
                         'type' => 'checkbox',
681 681
                     ),
682 682
                     'uninstall_settings' => array(
683 683
                         'id'   => 'uninstall_settings',
684
-                        'name' => '<h3>' . __( 'Uninstall Settings', 'invoicing' ) . '</h3>',
684
+                        'name' => '<h3>' . __('Uninstall Settings', 'invoicing') . '</h3>',
685 685
                         'type' => 'header',
686 686
                     ),
687 687
                     'remove_data_on_unistall' => array(
688 688
                         'id'   => 'remove_data_on_unistall',
689
-                        'name' => __( 'Remove Data on Uninstall?', 'invoicing' ),
690
-                        'desc' => __( 'Check this box if you would like Invoicing plugin to completely remove all of its data when the plugin is deleted/uninstalled.', 'invoicing' ),
689
+                        'name' => __('Remove Data on Uninstall?', 'invoicing'),
690
+                        'desc' => __('Check this box if you would like Invoicing plugin to completely remove all of its data when the plugin is deleted/uninstalled.', 'invoicing'),
691 691
                         'type' => 'checkbox',
692 692
                         'std'  => ''
693 693
                     ),
@@ -695,80 +695,80 @@  discard block
 block discarded – undo
695 695
                 'fields' => array(
696 696
                     'fields_settings' => array(
697 697
                         'id'   => 'fields_settings',
698
-                        'name' => '<h3>' . __( 'Address Fields', 'invoicing' ) . '</h3>',
699
-                        'desc' => __( 'Tick fields which are mandatory in invoice address fields.', 'invoicing' ),
698
+                        'name' => '<h3>' . __('Address Fields', 'invoicing') . '</h3>',
699
+                        'desc' => __('Tick fields which are mandatory in invoice address fields.', 'invoicing'),
700 700
                         'type' => 'header',
701 701
                     ),
702 702
                     'fname_mandatory' => array(
703 703
                         'id'   => 'fname_mandatory',
704
-                        'name' => __( 'First Name', 'invoicing' ),
704
+                        'name' => __('First Name', 'invoicing'),
705 705
                         'type' => 'checkbox',
706 706
                         'std'  => true,
707 707
                     ),
708 708
                     'lname_mandatory' => array(
709 709
                         'id'   => 'lname_mandatory',
710
-                        'name' => __( 'Last Name', 'invoicing' ),
710
+                        'name' => __('Last Name', 'invoicing'),
711 711
                         'type' => 'checkbox',
712 712
                         'std'  => true,
713 713
                     ),
714 714
                     'address_mandatory' => array(
715 715
                         'id'   => 'address_mandatory',
716
-                        'name' => __( 'Address', 'invoicing' ),
716
+                        'name' => __('Address', 'invoicing'),
717 717
                         'type' => 'checkbox',
718 718
                         'std'  => true,
719 719
                     ),
720 720
                     'city_mandatory' => array(
721 721
                         'id'   => 'city_mandatory',
722
-                        'name' => __( 'City', 'invoicing' ),
722
+                        'name' => __('City', 'invoicing'),
723 723
                         'type' => 'checkbox',
724 724
                         'std'  => true,
725 725
                     ),
726 726
                     'country_mandatory' => array(
727 727
                         'id'   => 'country_mandatory',
728
-                        'name' => __( 'Country', 'invoicing' ),
728
+                        'name' => __('Country', 'invoicing'),
729 729
                         'type' => 'checkbox',
730 730
                         'std'  => true,
731 731
                     ),
732 732
                     'state_mandatory' => array(
733 733
                         'id'   => 'state_mandatory',
734
-                        'name' => __( 'State / Province', 'invoicing' ),
734
+                        'name' => __('State / Province', 'invoicing'),
735 735
                         'type' => 'checkbox',
736 736
                         'std'  => true,
737 737
                     ),
738 738
                     'zip_mandatory' => array(
739 739
                         'id'   => 'zip_mandatory',
740
-                        'name' => __( 'ZIP / Postcode', 'invoicing' ),
740
+                        'name' => __('ZIP / Postcode', 'invoicing'),
741 741
                         'type' => 'checkbox',
742 742
                         'std'  => true,
743 743
                     ),
744 744
                     'phone_mandatory' => array(
745 745
                         'id'   => 'phone_mandatory',
746
-                        'name' => __( 'Phone Number', 'invoicing' ),
746
+                        'name' => __('Phone Number', 'invoicing'),
747 747
                         'type' => 'checkbox',
748 748
                         'std'  => true,
749 749
                     ),
750 750
                     'force_show_company' => array(
751 751
                         'id'   => 'force_show_company',
752
-                        'name' => __( 'Force show company name at checkout.', 'invoicing' ),
752
+                        'name' => __('Force show company name at checkout.', 'invoicing'),
753 753
                         'type' => 'checkbox',
754 754
                         'std'  => false,
755 755
                     ),
756 756
                     'address_autofill_settings' => array(
757 757
                         'id'   => 'address_autofill_settings',
758
-                        'name' => '<h3>' . __( 'Google Address Auto Complete', 'invoicing' ) . '</h3>',
758
+                        'name' => '<h3>' . __('Google Address Auto Complete', 'invoicing') . '</h3>',
759 759
                         'type' => 'header',
760 760
                     ),
761 761
                     'address_autofill_active' => array(
762 762
                         'id'   => 'address_autofill_active',
763
-                        'name' => __( 'Enable/Disable', 'invoicing' ),
764
-                        'desc' => __( 'Enable google address auto complete', 'invoicing' ),
763
+                        'name' => __('Enable/Disable', 'invoicing'),
764
+                        'desc' => __('Enable google address auto complete', 'invoicing'),
765 765
                         'type' => 'checkbox',
766 766
                         'std'  => 0
767 767
                     ),
768 768
                     'address_autofill_api' => array(
769 769
                         'id' => 'address_autofill_api',
770
-                        'name' => __( 'Google Place API Key', 'invoicing' ),
771
-                        'desc' => wp_sprintf(__( 'Enter google place API key. For more information go to google place API %sdocumenation%s', 'invoicing' ), '<a href="https://developers.google.com/maps/documentation/javascript/places-autocomplete" target="_blank">', '</a>' ),
770
+                        'name' => __('Google Place API Key', 'invoicing'),
771
+                        'desc' => wp_sprintf(__('Enter google place API key. For more information go to google place API %sdocumenation%s', 'invoicing'), '<a href="https://developers.google.com/maps/documentation/javascript/places-autocomplete" target="_blank">', '</a>'),
772 772
                         'type' => 'text',
773 773
                         'size' => 'regular',
774 774
                         'std' => ''
@@ -777,13 +777,13 @@  discard block
 block discarded – undo
777 777
                 'custom-css' => array(
778 778
                     'css_settings' => array(
779 779
                         'id'   => 'css_settings',
780
-                        'name' => '<h3>' . __( 'Custom CSS', 'invoicing' ) . '</h3>',
780
+                        'name' => '<h3>' . __('Custom CSS', 'invoicing') . '</h3>',
781 781
                         'type' => 'header',
782 782
                     ),
783 783
                     'template_custom_css' => array(
784 784
                         'id' => 'template_custom_css',
785
-                        'name' => __( 'Invoice Template CSS', 'invoicing' ),
786
-                        'desc' => __( 'Add CSS to modify appearance of the print invoice page.', 'invoicing' ),
785
+                        'name' => __('Invoice Template CSS', 'invoicing'),
786
+                        'desc' => __('Add CSS to modify appearance of the print invoice page.', 'invoicing'),
787 787
                         'type' => 'textarea',
788 788
                         'class'=> 'regular-text',
789 789
                         'rows' => 10,
@@ -797,8 +797,8 @@  discard block
 block discarded – undo
797 797
                 'main' => array(
798 798
                     'tool_settings' => array(
799 799
                         'id'   => 'tool_settings',
800
-                        'name' => '<h3>' . __( 'Diagnostic Tools', 'invoicing' ) . '</h3>',
801
-                        'desc' => __( 'Invoicing diagnostic tools', 'invoicing' ),
800
+                        'name' => '<h3>' . __('Diagnostic Tools', 'invoicing') . '</h3>',
801
+                        'desc' => __('Invoicing diagnostic tools', 'invoicing'),
802 802
                         'type' => 'tools',
803 803
                     ),
804 804
                 ),
@@ -806,136 +806,136 @@  discard block
 block discarded – undo
806 806
         )
807 807
     );
808 808
 
809
-    return apply_filters( 'wpinv_registered_settings', $wpinv_settings );
809
+    return apply_filters('wpinv_registered_settings', $wpinv_settings);
810 810
 }
811 811
 
812
-function wpinv_settings_sanitize( $input = array() ) {
812
+function wpinv_settings_sanitize($input = array()) {
813 813
     global $wpinv_options;
814 814
 
815
-    if ( empty( $_POST['_wp_http_referer'] ) ) {
815
+    if (empty($_POST['_wp_http_referer'])) {
816 816
         return $input;
817 817
     }
818 818
 
819
-    parse_str( $_POST['_wp_http_referer'], $referrer );
819
+    parse_str($_POST['_wp_http_referer'], $referrer);
820 820
 
821 821
     $settings = wpinv_get_registered_settings();
822
-    $tab      = isset( $referrer['tab'] ) ? $referrer['tab'] : 'general';
823
-    $section  = isset( $referrer['section'] ) ? $referrer['section'] : 'main';
822
+    $tab      = isset($referrer['tab']) ? $referrer['tab'] : 'general';
823
+    $section  = isset($referrer['section']) ? $referrer['section'] : 'main';
824 824
 
825 825
     $input = $input ? $input : array();
826
-    $input = apply_filters( 'wpinv_settings_tab_' . $tab . '_sanitize', $input );
827
-    $input = apply_filters( 'wpinv_settings_' . $tab . '-' . $section . '_sanitize', $input );
826
+    $input = apply_filters('wpinv_settings_tab_' . $tab . '_sanitize', $input);
827
+    $input = apply_filters('wpinv_settings_' . $tab . '-' . $section . '_sanitize', $input);
828 828
 
829 829
     // Loop through each setting being saved and pass it through a sanitization filter
830
-    foreach ( $input as $key => $value ) {
830
+    foreach ($input as $key => $value) {
831 831
         // Get the setting type (checkbox, select, etc)
832
-        $type = isset( $settings[ $tab ][ $key ]['type'] ) ? $settings[ $tab ][ $key ]['type'] : false;
832
+        $type = isset($settings[$tab][$key]['type']) ? $settings[$tab][$key]['type'] : false;
833 833
 
834
-        if ( $type ) {
834
+        if ($type) {
835 835
             // Field type specific filter
836
-            $input[$key] = apply_filters( 'wpinv_settings_sanitize_' . $type, $value, $key );
836
+            $input[$key] = apply_filters('wpinv_settings_sanitize_' . $type, $value, $key);
837 837
         }
838 838
 
839 839
         // General filter
840
-        $input[ $key ] = apply_filters( 'wpinv_settings_sanitize', $input[ $key ], $key );
840
+        $input[$key] = apply_filters('wpinv_settings_sanitize', $input[$key], $key);
841 841
     }
842 842
 
843 843
     // Loop through the whitelist and unset any that are empty for the tab being saved
844
-    $main_settings    = $section == 'main' ? $settings[ $tab ] : array(); // Check for extensions that aren't using new sections
845
-    $section_settings = ! empty( $settings[ $tab ][ $section ] ) ? $settings[ $tab ][ $section ] : array();
844
+    $main_settings    = $section == 'main' ? $settings[$tab] : array(); // Check for extensions that aren't using new sections
845
+    $section_settings = !empty($settings[$tab][$section]) ? $settings[$tab][$section] : array();
846 846
 
847
-    $found_settings = array_merge( $main_settings, $section_settings );
847
+    $found_settings = array_merge($main_settings, $section_settings);
848 848
 
849
-    if ( ! empty( $found_settings ) ) {
850
-        foreach ( $found_settings as $key => $value ) {
849
+    if (!empty($found_settings)) {
850
+        foreach ($found_settings as $key => $value) {
851 851
 
852 852
             // settings used to have numeric keys, now they have keys that match the option ID. This ensures both methods work
853
-            if ( is_numeric( $key ) ) {
853
+            if (is_numeric($key)) {
854 854
                 $key = $value['id'];
855 855
             }
856 856
 
857
-            if ( empty( $input[ $key ] ) ) {
858
-                unset( $wpinv_options[ $key ] );
857
+            if (empty($input[$key])) {
858
+                unset($wpinv_options[$key]);
859 859
             }
860 860
         }
861 861
     }
862 862
 
863 863
     // Merge our new settings with the existing
864
-    $output = array_merge( $wpinv_options, $input );
864
+    $output = array_merge($wpinv_options, $input);
865 865
 
866
-    add_settings_error( 'wpinv-notices', '', __( 'Settings updated.', 'invoicing' ), 'updated' );
866
+    add_settings_error('wpinv-notices', '', __('Settings updated.', 'invoicing'), 'updated');
867 867
 
868 868
     return $output;
869 869
 }
870 870
 
871
-function wpinv_settings_sanitize_misc_accounting( $input ) {
871
+function wpinv_settings_sanitize_misc_accounting($input) {
872 872
     global $wpi_session;
873 873
 
874
-    if ( !current_user_can( 'manage_options' ) ) {
874
+    if (!current_user_can('manage_options')) {
875 875
         return $input;
876 876
     }
877 877
 
878
-    if( ! empty( $input['enable_sequential'] ) && !wpinv_get_option( 'enable_sequential' ) ) {
878
+    if (!empty($input['enable_sequential']) && !wpinv_get_option('enable_sequential')) {
879 879
         // Shows an admin notice about upgrading previous order numbers
880
-        $wpi_session->set( 'upgrade_sequential', '1' );
880
+        $wpi_session->set('upgrade_sequential', '1');
881 881
     }
882 882
 
883 883
     return $input;
884 884
 }
885
-add_filter( 'wpinv_settings_misc-accounting_sanitize', 'wpinv_settings_sanitize_misc_accounting' );
885
+add_filter('wpinv_settings_misc-accounting_sanitize', 'wpinv_settings_sanitize_misc_accounting');
886 886
 
887
-function wpinv_settings_sanitize_tax_rates( $input ) {
888
-    if( !current_user_can( 'manage_options' ) ) {
887
+function wpinv_settings_sanitize_tax_rates($input) {
888
+    if (!current_user_can('manage_options')) {
889 889
         return $input;
890 890
     }
891 891
 
892
-    $new_rates = !empty( $_POST['tax_rates'] ) ? array_values( $_POST['tax_rates'] ) : array();
892
+    $new_rates = !empty($_POST['tax_rates']) ? array_values($_POST['tax_rates']) : array();
893 893
 
894 894
     $tax_rates = array();
895 895
 
896
-    if ( !empty( $new_rates ) ) {
897
-        foreach ( $new_rates as $rate ) {
898
-            if ( isset( $rate['country'] ) && empty( $rate['country'] ) && empty( $rate['state'] ) ) {
896
+    if (!empty($new_rates)) {
897
+        foreach ($new_rates as $rate) {
898
+            if (isset($rate['country']) && empty($rate['country']) && empty($rate['state'])) {
899 899
                 continue;
900 900
             }
901 901
             
902
-            $rate['rate'] = wpinv_sanitize_amount( $rate['rate'], 4 );
902
+            $rate['rate'] = wpinv_sanitize_amount($rate['rate'], 4);
903 903
             
904 904
             $tax_rates[] = $rate;
905 905
         }
906 906
     }
907 907
 
908
-    update_option( 'wpinv_tax_rates', $tax_rates );
908
+    update_option('wpinv_tax_rates', $tax_rates);
909 909
 
910 910
     return $input;
911 911
 }
912
-add_filter( 'wpinv_settings_taxes-rates_sanitize', 'wpinv_settings_sanitize_tax_rates' );
912
+add_filter('wpinv_settings_taxes-rates_sanitize', 'wpinv_settings_sanitize_tax_rates');
913 913
 
914
-function wpinv_sanitize_text_field( $input ) {
915
-    return trim( $input );
914
+function wpinv_sanitize_text_field($input) {
915
+    return trim($input);
916 916
 }
917
-add_filter( 'wpinv_settings_sanitize_text', 'wpinv_sanitize_text_field' );
917
+add_filter('wpinv_settings_sanitize_text', 'wpinv_sanitize_text_field');
918 918
 
919 919
 function wpinv_get_settings_tabs() {
920 920
     $tabs             = array();
921
-    $tabs['general']  = __( 'General', 'invoicing' );
922
-    $tabs['gateways'] = __( 'Payment Gateways', 'invoicing' );
923
-    $tabs['taxes']    = __( 'Taxes', 'invoicing' );
924
-    $tabs['emails']   = __( 'Emails', 'invoicing' );
925
-    $tabs['privacy']  = __( 'Privacy', 'invoicing' );
926
-    $tabs['misc']     = __( 'Misc', 'invoicing' );
927
-    $tabs['tools']    = __( 'Tools', 'invoicing' );
928
-
929
-    return apply_filters( 'wpinv_settings_tabs', $tabs );
921
+    $tabs['general']  = __('General', 'invoicing');
922
+    $tabs['gateways'] = __('Payment Gateways', 'invoicing');
923
+    $tabs['taxes']    = __('Taxes', 'invoicing');
924
+    $tabs['emails']   = __('Emails', 'invoicing');
925
+    $tabs['privacy']  = __('Privacy', 'invoicing');
926
+    $tabs['misc']     = __('Misc', 'invoicing');
927
+    $tabs['tools']    = __('Tools', 'invoicing');
928
+
929
+    return apply_filters('wpinv_settings_tabs', $tabs);
930 930
 }
931 931
 
932
-function wpinv_get_settings_tab_sections( $tab = false ) {
932
+function wpinv_get_settings_tab_sections($tab = false) {
933 933
     $tabs     = false;
934 934
     $sections = wpinv_get_registered_settings_sections();
935 935
 
936
-    if( $tab && ! empty( $sections[ $tab ] ) ) {
937
-        $tabs = $sections[ $tab ];
938
-    } else if ( $tab ) {
936
+    if ($tab && !empty($sections[$tab])) {
937
+        $tabs = $sections[$tab];
938
+    } else if ($tab) {
939 939
         $tabs = false;
940 940
     }
941 941
 
@@ -945,143 +945,143 @@  discard block
 block discarded – undo
945 945
 function wpinv_get_registered_settings_sections() {
946 946
     static $sections = false;
947 947
 
948
-    if ( false !== $sections ) {
948
+    if (false !== $sections) {
949 949
         return $sections;
950 950
     }
951 951
 
952 952
     $sections = array(
953
-        'general' => apply_filters( 'wpinv_settings_sections_general', array(
954
-            'main' => __( 'General Settings', 'invoicing' ),
955
-            'currency_section' => __( 'Currency Settings', 'invoicing' ),
956
-            'labels' => __( 'Label Texts', 'invoicing' ),
957
-        ) ),
958
-        'gateways' => apply_filters( 'wpinv_settings_sections_gateways', array(
959
-            'main' => __( 'Gateway Settings', 'invoicing' ),
960
-        ) ),
961
-        'taxes' => apply_filters( 'wpinv_settings_sections_taxes', array(
962
-            'main' => __( 'Tax Settings', 'invoicing' ),
963
-            'rates' => __( 'Tax Rates', 'invoicing' ),
964
-        ) ),
965
-        'emails' => apply_filters( 'wpinv_settings_sections_emails', array(
966
-            'main' => __( 'Email Settings', 'invoicing' ),
967
-        ) ),
968
-        'privacy' => apply_filters( 'wpinv_settings_sections_privacy', array(
969
-            'main' => __( 'Privacy policy', 'invoicing' ),
970
-        ) ),
971
-        'misc' => apply_filters( 'wpinv_settings_sections_misc', array(
972
-            'main' => __( 'Miscellaneous', 'invoicing' ),
973
-            'fields' => __( 'Fields Settings', 'invoicing' ),
974
-            'custom-css' => __( 'Custom CSS', 'invoicing' ),
975
-        ) ),
976
-        'tools' => apply_filters( 'wpinv_settings_sections_tools', array(
977
-            'main' => __( 'Diagnostic Tools', 'invoicing' ),
978
-        ) ),
953
+        'general' => apply_filters('wpinv_settings_sections_general', array(
954
+            'main' => __('General Settings', 'invoicing'),
955
+            'currency_section' => __('Currency Settings', 'invoicing'),
956
+            'labels' => __('Label Texts', 'invoicing'),
957
+        )),
958
+        'gateways' => apply_filters('wpinv_settings_sections_gateways', array(
959
+            'main' => __('Gateway Settings', 'invoicing'),
960
+        )),
961
+        'taxes' => apply_filters('wpinv_settings_sections_taxes', array(
962
+            'main' => __('Tax Settings', 'invoicing'),
963
+            'rates' => __('Tax Rates', 'invoicing'),
964
+        )),
965
+        'emails' => apply_filters('wpinv_settings_sections_emails', array(
966
+            'main' => __('Email Settings', 'invoicing'),
967
+        )),
968
+        'privacy' => apply_filters('wpinv_settings_sections_privacy', array(
969
+            'main' => __('Privacy policy', 'invoicing'),
970
+        )),
971
+        'misc' => apply_filters('wpinv_settings_sections_misc', array(
972
+            'main' => __('Miscellaneous', 'invoicing'),
973
+            'fields' => __('Fields Settings', 'invoicing'),
974
+            'custom-css' => __('Custom CSS', 'invoicing'),
975
+        )),
976
+        'tools' => apply_filters('wpinv_settings_sections_tools', array(
977
+            'main' => __('Diagnostic Tools', 'invoicing'),
978
+        )),
979 979
     );
980 980
 
981
-    $sections = apply_filters( 'wpinv_settings_sections', $sections );
981
+    $sections = apply_filters('wpinv_settings_sections', $sections);
982 982
 
983 983
     return $sections;
984 984
 }
985 985
 
986
-function wpinv_get_pages( $with_slug = false, $default_label = NULL ) {
986
+function wpinv_get_pages($with_slug = false, $default_label = NULL) {
987 987
 	$pages_options = array();
988 988
 
989
-	if( $default_label !== NULL && $default_label !== false ) {
990
-		$pages_options = array( '' => $default_label ); // Blank option
989
+	if ($default_label !== NULL && $default_label !== false) {
990
+		$pages_options = array('' => $default_label); // Blank option
991 991
 	}
992 992
 
993 993
 	$pages = get_pages();
994
-	if ( $pages ) {
995
-		foreach ( $pages as $page ) {
994
+	if ($pages) {
995
+		foreach ($pages as $page) {
996 996
 			$title = $with_slug ? $page->post_title . ' (' . $page->post_name . ')' : $page->post_title;
997
-            $pages_options[ $page->ID ] = $title;
997
+            $pages_options[$page->ID] = $title;
998 998
 		}
999 999
 	}
1000 1000
 
1001 1001
 	return $pages_options;
1002 1002
 }
1003 1003
 
1004
-function wpinv_header_callback( $args ) {
1005
-	if ( !empty( $args['desc'] ) ) {
1004
+function wpinv_header_callback($args) {
1005
+	if (!empty($args['desc'])) {
1006 1006
         echo $args['desc'];
1007 1007
     }
1008 1008
 }
1009 1009
 
1010
-function wpinv_hidden_callback( $args ) {
1010
+function wpinv_hidden_callback($args) {
1011 1011
 	global $wpinv_options;
1012 1012
 
1013
-	if ( isset( $args['set_value'] ) ) {
1013
+	if (isset($args['set_value'])) {
1014 1014
 		$value = $args['set_value'];
1015
-	} elseif ( isset( $wpinv_options[ $args['id'] ] ) ) {
1016
-		$value = $wpinv_options[ $args['id'] ];
1015
+	} elseif (isset($wpinv_options[$args['id']])) {
1016
+		$value = $wpinv_options[$args['id']];
1017 1017
 	} else {
1018
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1018
+		$value = isset($args['std']) ? $args['std'] : '';
1019 1019
 	}
1020 1020
 
1021
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1021
+	if (isset($args['faux']) && true === $args['faux']) {
1022 1022
 		$args['readonly'] = true;
1023
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1023
+		$value = isset($args['std']) ? $args['std'] : '';
1024 1024
 		$name  = '';
1025 1025
 	} else {
1026
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1026
+		$name = 'name="wpinv_settings[' . esc_attr($args['id']) . ']"';
1027 1027
 	}
1028 1028
 
1029
-	$html = '<input type="hidden" id="wpinv_settings[' . wpinv_sanitize_key( $args['id'] ) . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '" />';
1029
+	$html = '<input type="hidden" id="wpinv_settings[' . wpinv_sanitize_key($args['id']) . ']" ' . $name . ' value="' . esc_attr(stripslashes($value)) . '" />';
1030 1030
     
1031 1031
 	echo $html;
1032 1032
 }
1033 1033
 
1034
-function wpinv_checkbox_callback( $args ) {
1034
+function wpinv_checkbox_callback($args) {
1035 1035
 	global $wpinv_options;
1036 1036
     
1037
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1037
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1038 1038
 
1039
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1039
+	if (isset($args['faux']) && true === $args['faux']) {
1040 1040
 		$name = '';
1041 1041
 	} else {
1042 1042
 		$name = 'name="wpinv_settings[' . $sanitize_id . ']"';
1043 1043
 	}
1044 1044
 
1045
-	$checked = isset( $wpinv_options[ $args['id'] ] ) ? checked( 1, $wpinv_options[ $args['id'] ], false ) : '';
1045
+	$checked = isset($wpinv_options[$args['id']]) ? checked(1, $wpinv_options[$args['id']], false) : '';
1046 1046
 	$html = '<input type="checkbox" id="wpinv_settings[' . $sanitize_id . ']"' . $name . ' value="1" ' . $checked . '/>';
1047
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1047
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1048 1048
 
1049 1049
 	echo $html;
1050 1050
 }
1051 1051
 
1052
-function wpinv_multicheck_callback( $args ) {
1052
+function wpinv_multicheck_callback($args) {
1053 1053
 	global $wpinv_options;
1054 1054
 
1055
-	$sanitize_id = wpinv_sanitize_key( $args['id'] );
1056
-	$class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1055
+	$sanitize_id = wpinv_sanitize_key($args['id']);
1056
+	$class = !empty($args['class']) ? ' ' . esc_attr($args['class']) : '';
1057 1057
 
1058
-	if ( ! empty( $args['options'] ) ) {
1058
+	if (!empty($args['options'])) {
1059 1059
 		echo '<div class="wpi-mcheck-rows wpi-mcheck-' . $sanitize_id . $class . '">';
1060
-        foreach( $args['options'] as $key => $option ):
1061
-			$sanitize_key = wpinv_sanitize_key( $key );
1062
-			if ( isset( $wpinv_options[$args['id']][$sanitize_key] ) ) { 
1060
+        foreach ($args['options'] as $key => $option):
1061
+			$sanitize_key = wpinv_sanitize_key($key);
1062
+			if (isset($wpinv_options[$args['id']][$sanitize_key])) { 
1063 1063
 				$enabled = $sanitize_key;
1064 1064
 			} else { 
1065 1065
 				$enabled = NULL; 
1066 1066
 			}
1067
-			echo '<div class="wpi-mcheck-row"><input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr( $sanitize_key ) . '" ' . checked( $sanitize_key, $enabled, false ) . '/>&nbsp;';
1068
-			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . wp_kses_post( $option ) . '</label></div>';
1067
+			echo '<div class="wpi-mcheck-row"><input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr($sanitize_key) . '" ' . checked($sanitize_key, $enabled, false) . '/>&nbsp;';
1068
+			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . wp_kses_post($option) . '</label></div>';
1069 1069
 		endforeach;
1070 1070
 		echo '</div>';
1071 1071
 		echo '<p class="description">' . $args['desc'] . '</p>';
1072 1072
 	}
1073 1073
 }
1074 1074
 
1075
-function wpinv_payment_icons_callback( $args ) {
1075
+function wpinv_payment_icons_callback($args) {
1076 1076
 	global $wpinv_options;
1077 1077
     
1078
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1078
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1079 1079
 
1080
-	if ( ! empty( $args['options'] ) ) {
1081
-		foreach( $args['options'] as $key => $option ) {
1082
-            $sanitize_key = wpinv_sanitize_key( $key );
1080
+	if (!empty($args['options'])) {
1081
+		foreach ($args['options'] as $key => $option) {
1082
+            $sanitize_key = wpinv_sanitize_key($key);
1083 1083
             
1084
-			if( isset( $wpinv_options[$args['id']][$key] ) ) {
1084
+			if (isset($wpinv_options[$args['id']][$key])) {
1085 1085
 				$enabled = $option;
1086 1086
 			} else {
1087 1087
 				$enabled = NULL;
@@ -1089,197 +1089,197 @@  discard block
 block discarded – undo
1089 1089
 
1090 1090
 			echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" style="margin-right:10px;line-height:16px;height:16px;display:inline-block;">';
1091 1091
 
1092
-				echo '<input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr( $option ) . '" ' . checked( $option, $enabled, false ) . '/>&nbsp;';
1092
+				echo '<input name="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="' . esc_attr($option) . '" ' . checked($option, $enabled, false) . '/>&nbsp;';
1093 1093
 
1094
-				if ( wpinv_string_is_image_url( $key ) ) {
1095
-					echo '<img class="payment-icon" src="' . esc_url( $key ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1094
+				if (wpinv_string_is_image_url($key)) {
1095
+					echo '<img class="payment-icon" src="' . esc_url($key) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1096 1096
 				} else {
1097
-					$card = strtolower( str_replace( ' ', '', $option ) );
1097
+					$card = strtolower(str_replace(' ', '', $option));
1098 1098
 
1099
-					if ( has_filter( 'wpinv_accepted_payment_' . $card . '_image' ) ) {
1100
-						$image = apply_filters( 'wpinv_accepted_payment_' . $card . '_image', '' );
1099
+					if (has_filter('wpinv_accepted_payment_' . $card . '_image')) {
1100
+						$image = apply_filters('wpinv_accepted_payment_' . $card . '_image', '');
1101 1101
 					} else {
1102
-						$image       = wpinv_locate_template( 'images' . DIRECTORY_SEPARATOR . 'icons' . DIRECTORY_SEPARATOR . $card . '.gif', false );
1102
+						$image       = wpinv_locate_template('images' . DIRECTORY_SEPARATOR . 'icons' . DIRECTORY_SEPARATOR . $card . '.gif', false);
1103 1103
 						$content_dir = WP_CONTENT_DIR;
1104 1104
 
1105
-						if ( function_exists( 'wp_normalize_path' ) ) {
1105
+						if (function_exists('wp_normalize_path')) {
1106 1106
 							// Replaces backslashes with forward slashes for Windows systems
1107
-							$image = wp_normalize_path( $image );
1108
-							$content_dir = wp_normalize_path( $content_dir );
1107
+							$image = wp_normalize_path($image);
1108
+							$content_dir = wp_normalize_path($content_dir);
1109 1109
 						}
1110 1110
 
1111
-						$image = str_replace( $content_dir, content_url(), $image );
1111
+						$image = str_replace($content_dir, content_url(), $image);
1112 1112
 					}
1113 1113
 
1114
-					echo '<img class="payment-icon" src="' . esc_url( $image ) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1114
+					echo '<img class="payment-icon" src="' . esc_url($image) . '" style="width:32px;height:24px;position:relative;top:6px;margin-right:5px;"/>';
1115 1115
 				}
1116 1116
 			echo $option . '</label>';
1117 1117
 		}
1118
-		echo '<p class="description" style="margin-top:16px;">' . wp_kses_post( $args['desc'] ) . '</p>';
1118
+		echo '<p class="description" style="margin-top:16px;">' . wp_kses_post($args['desc']) . '</p>';
1119 1119
 	}
1120 1120
 }
1121 1121
 
1122
-function wpinv_radio_callback( $args ) {
1122
+function wpinv_radio_callback($args) {
1123 1123
 	global $wpinv_options;
1124 1124
     
1125
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1125
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1126 1126
     
1127
-    foreach ( $args['options'] as $key => $option ) :
1128
-		$sanitize_key = wpinv_sanitize_key( $key );
1127
+    foreach ($args['options'] as $key => $option) :
1128
+		$sanitize_key = wpinv_sanitize_key($key);
1129 1129
         
1130 1130
         $checked = false;
1131 1131
 
1132
-		if ( isset( $wpinv_options[ $args['id'] ] ) && $wpinv_options[ $args['id'] ] == $key )
1132
+		if (isset($wpinv_options[$args['id']]) && $wpinv_options[$args['id']] == $key)
1133 1133
 			$checked = true;
1134
-		elseif( isset( $args['std'] ) && $args['std'] == $key && ! isset( $wpinv_options[ $args['id'] ] ) )
1134
+		elseif (isset($args['std']) && $args['std'] == $key && !isset($wpinv_options[$args['id']]))
1135 1135
 			$checked = true;
1136 1136
 
1137 1137
 		echo '<input name="wpinv_settings[' . $sanitize_id . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="radio" value="' . $sanitize_key . '" ' . checked(true, $checked, false) . '/>&nbsp;';
1138
-		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option ) . '</label><br/>';
1138
+		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html($option) . '</label><br/>';
1139 1139
 	endforeach;
1140 1140
 
1141
-	echo '<p class="description">' . wp_kses_post( $args['desc'] ) . '</p>';
1141
+	echo '<p class="description">' . wp_kses_post($args['desc']) . '</p>';
1142 1142
 }
1143 1143
 
1144
-function wpinv_gateways_callback( $args ) {
1144
+function wpinv_gateways_callback($args) {
1145 1145
 	global $wpinv_options;
1146 1146
     
1147
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1147
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1148 1148
 
1149
-	foreach ( $args['options'] as $key => $option ) :
1150
-		$sanitize_key = wpinv_sanitize_key( $key );
1149
+	foreach ($args['options'] as $key => $option) :
1150
+		$sanitize_key = wpinv_sanitize_key($key);
1151 1151
         
1152
-        if ( isset( $wpinv_options['gateways'][ $key ] ) )
1152
+        if (isset($wpinv_options['gateways'][$key]))
1153 1153
 			$enabled = '1';
1154 1154
 		else
1155 1155
 			$enabled = null;
1156 1156
 
1157
-		echo '<input name="wpinv_settings[' . esc_attr( $args['id'] ) . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="1" ' . checked('1', $enabled, false) . '/>&nbsp;';
1158
-		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html( $option['admin_label'] ) . '</label><br/>';
1157
+		echo '<input name="wpinv_settings[' . esc_attr($args['id']) . '][' . $sanitize_key . ']" id="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']" type="checkbox" value="1" ' . checked('1', $enabled, false) . '/>&nbsp;';
1158
+		echo '<label for="wpinv_settings[' . $sanitize_id . '][' . $sanitize_key . ']">' . esc_html($option['admin_label']) . '</label><br/>';
1159 1159
 	endforeach;
1160 1160
 }
1161 1161
 
1162 1162
 function wpinv_gateway_select_callback($args) {
1163 1163
 	global $wpinv_options;
1164 1164
     
1165
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1166
-    $class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1165
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1166
+    $class = !empty($args['class']) ? ' ' . esc_attr($args['class']) : '';
1167 1167
 
1168
-	echo '<select name="wpinv_settings[' . $sanitize_id . ']"" id="wpinv_settings[' . $sanitize_id . ']" class="'.$class.'" >';
1168
+	echo '<select name="wpinv_settings[' . $sanitize_id . ']"" id="wpinv_settings[' . $sanitize_id . ']" class="' . $class . '" >';
1169 1169
 
1170
-	foreach ( $args['options'] as $key => $option ) :
1171
-		if ( isset( $args['selected'] ) && $args['selected'] !== null && $args['selected'] !== false ) {
1172
-            $selected = selected( $key, $args['selected'], false );
1170
+	foreach ($args['options'] as $key => $option) :
1171
+		if (isset($args['selected']) && $args['selected'] !== null && $args['selected'] !== false) {
1172
+            $selected = selected($key, $args['selected'], false);
1173 1173
         } else {
1174
-            $selected = isset( $wpinv_options[ $args['id'] ] ) ? selected( $key, $wpinv_options[$args['id']], false ) : '';
1174
+            $selected = isset($wpinv_options[$args['id']]) ? selected($key, $wpinv_options[$args['id']], false) : '';
1175 1175
         }
1176
-		echo '<option value="' . wpinv_sanitize_key( $key ) . '"' . $selected . '>' . esc_html( $option['admin_label'] ) . '</option>';
1176
+		echo '<option value="' . wpinv_sanitize_key($key) . '"' . $selected . '>' . esc_html($option['admin_label']) . '</option>';
1177 1177
 	endforeach;
1178 1178
 
1179 1179
 	echo '</select>';
1180
-	echo '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1180
+	echo '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1181 1181
 }
1182 1182
 
1183
-function wpinv_text_callback( $args ) {
1183
+function wpinv_text_callback($args) {
1184 1184
 	global $wpinv_options;
1185 1185
     
1186
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1186
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1187 1187
 
1188
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1189
-		$value = $wpinv_options[ $args['id'] ];
1188
+	if (isset($wpinv_options[$args['id']])) {
1189
+		$value = $wpinv_options[$args['id']];
1190 1190
 	} else {
1191
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1191
+		$value = isset($args['std']) ? $args['std'] : '';
1192 1192
 	}
1193 1193
 
1194
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1194
+	if (isset($args['faux']) && true === $args['faux']) {
1195 1195
 		$args['readonly'] = true;
1196
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1196
+		$value = isset($args['std']) ? $args['std'] : '';
1197 1197
 		$name  = '';
1198 1198
 	} else {
1199
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1199
+		$name = 'name="wpinv_settings[' . esc_attr($args['id']) . ']"';
1200 1200
 	}
1201
-	$class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1201
+	$class = !empty($args['class']) ? sanitize_html_class($args['class']) : '';
1202 1202
 
1203 1203
 	$readonly = $args['readonly'] === true ? ' readonly="readonly"' : '';
1204
-	$size     = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1205
-	$html     = '<input type="text" class="' . sanitize_html_class( $size ) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '"' . $readonly . '/>';
1206
-	$html    .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1204
+	$size     = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1205
+	$html     = '<input type="text" class="' . sanitize_html_class($size) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr(stripslashes($value)) . '"' . $readonly . '/>';
1206
+	$html    .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1207 1207
 
1208 1208
 	echo $html;
1209 1209
 }
1210 1210
 
1211
-function wpinv_number_callback( $args ) {
1211
+function wpinv_number_callback($args) {
1212 1212
 	global $wpinv_options;
1213 1213
     
1214
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1214
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1215 1215
 
1216
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1217
-		$value = $wpinv_options[ $args['id'] ];
1216
+	if (isset($wpinv_options[$args['id']])) {
1217
+		$value = $wpinv_options[$args['id']];
1218 1218
 	} else {
1219
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1219
+		$value = isset($args['std']) ? $args['std'] : '';
1220 1220
 	}
1221 1221
 
1222
-	if ( isset( $args['faux'] ) && true === $args['faux'] ) {
1222
+	if (isset($args['faux']) && true === $args['faux']) {
1223 1223
 		$args['readonly'] = true;
1224
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1224
+		$value = isset($args['std']) ? $args['std'] : '';
1225 1225
 		$name  = '';
1226 1226
 	} else {
1227
-		$name = 'name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"';
1227
+		$name = 'name="wpinv_settings[' . esc_attr($args['id']) . ']"';
1228 1228
 	}
1229 1229
 
1230
-	$max  = isset( $args['max'] ) ? $args['max'] : 999999;
1231
-	$min  = isset( $args['min'] ) ? $args['min'] : 0;
1232
-	$step = isset( $args['step'] ) ? $args['step'] : 1;
1233
-	$class = !empty( $args['class'] ) ? sanitize_html_class( $args['class'] ) : '';
1230
+	$max  = isset($args['max']) ? $args['max'] : 999999;
1231
+	$min  = isset($args['min']) ? $args['min'] : 0;
1232
+	$step = isset($args['step']) ? $args['step'] : 1;
1233
+	$class = !empty($args['class']) ? sanitize_html_class($args['class']) : '';
1234 1234
 
1235
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1236
-	$html = '<input type="number" step="' . esc_attr( $step ) . '" max="' . esc_attr( $max ) . '" min="' . esc_attr( $min ) . '" class="' . sanitize_html_class( $size ) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr( stripslashes( $value ) ) . '"/>';
1237
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1235
+	$size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1236
+	$html = '<input type="number" step="' . esc_attr($step) . '" max="' . esc_attr($max) . '" min="' . esc_attr($min) . '" class="' . sanitize_html_class($size) . '-text ' . $class . '" id="wpinv_settings[' . $sanitize_id . ']" ' . $name . ' value="' . esc_attr(stripslashes($value)) . '"/>';
1237
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1238 1238
 
1239 1239
 	echo $html;
1240 1240
 }
1241 1241
 
1242
-function wpinv_textarea_callback( $args ) {
1242
+function wpinv_textarea_callback($args) {
1243 1243
 	global $wpinv_options;
1244 1244
     
1245
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1245
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1246 1246
 
1247
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1248
-		$value = $wpinv_options[ $args['id'] ];
1247
+	if (isset($wpinv_options[$args['id']])) {
1248
+		$value = $wpinv_options[$args['id']];
1249 1249
 	} else {
1250
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1250
+		$value = isset($args['std']) ? $args['std'] : '';
1251 1251
 	}
1252 1252
     
1253
-    $size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1254
-    $class = ( isset( $args['class'] ) && ! is_null( $args['class'] ) ) ? $args['class'] : 'large-text';
1253
+    $size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1254
+    $class = (isset($args['class']) && !is_null($args['class'])) ? $args['class'] : 'large-text';
1255 1255
 
1256
-	$html = '<textarea class="' . sanitize_html_class( $class ) . ' txtarea-' . sanitize_html_class( $size ) . ' wpi-' . esc_attr( sanitize_html_class( $sanitize_id ) ) . ' " cols="' . $args['cols'] . '" rows="' . $args['rows'] . '" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']">' . esc_textarea( stripslashes( $value ) ) . '</textarea>';
1257
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1256
+	$html = '<textarea class="' . sanitize_html_class($class) . ' txtarea-' . sanitize_html_class($size) . ' wpi-' . esc_attr(sanitize_html_class($sanitize_id)) . ' " cols="' . $args['cols'] . '" rows="' . $args['rows'] . '" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']">' . esc_textarea(stripslashes($value)) . '</textarea>';
1257
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1258 1258
 
1259 1259
 	echo $html;
1260 1260
 }
1261 1261
 
1262
-function wpinv_password_callback( $args ) {
1262
+function wpinv_password_callback($args) {
1263 1263
 	global $wpinv_options;
1264 1264
     
1265
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1265
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1266 1266
 
1267
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1268
-		$value = $wpinv_options[ $args['id'] ];
1267
+	if (isset($wpinv_options[$args['id']])) {
1268
+		$value = $wpinv_options[$args['id']];
1269 1269
 	} else {
1270
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1270
+		$value = isset($args['std']) ? $args['std'] : '';
1271 1271
 	}
1272 1272
 
1273
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1274
-	$html = '<input type="password" class="' . sanitize_html_class( $size ) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( $value ) . '"/>';
1275
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1273
+	$size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1274
+	$html = '<input type="password" class="' . sanitize_html_class($size) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']" value="' . esc_attr($value) . '"/>';
1275
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1276 1276
 
1277 1277
 	echo $html;
1278 1278
 }
1279 1279
 
1280 1280
 function wpinv_missing_callback($args) {
1281 1281
 	printf(
1282
-		__( 'The callback function used for the %s setting is missing.', 'invoicing' ),
1282
+		__('The callback function used for the %s setting is missing.', 'invoicing'),
1283 1283
 		'<strong>' . $args['id'] . '</strong>'
1284 1284
 	);
1285 1285
 }
@@ -1287,133 +1287,133 @@  discard block
 block discarded – undo
1287 1287
 function wpinv_select_callback($args) {
1288 1288
 	global $wpinv_options;
1289 1289
     
1290
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1290
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1291 1291
 
1292
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1293
-		$value = $wpinv_options[ $args['id'] ];
1292
+	if (isset($wpinv_options[$args['id']])) {
1293
+		$value = $wpinv_options[$args['id']];
1294 1294
 	} else {
1295
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1295
+		$value = isset($args['std']) ? $args['std'] : '';
1296 1296
 	}
1297 1297
     
1298
-    if ( isset( $args['selected'] ) && $args['selected'] !== null && $args['selected'] !== false ) {
1298
+    if (isset($args['selected']) && $args['selected'] !== null && $args['selected'] !== false) {
1299 1299
         $value = $args['selected'];
1300 1300
     }
1301 1301
 
1302
-	if ( isset( $args['placeholder'] ) ) {
1302
+	if (isset($args['placeholder'])) {
1303 1303
 		$placeholder = $args['placeholder'];
1304 1304
 	} else {
1305 1305
 		$placeholder = '';
1306 1306
 	}
1307 1307
     
1308
-    if( !empty( $args['onchange'] ) ) {
1309
-        $onchange = ' onchange="' . esc_attr( $args['onchange'] ) . '"';
1308
+    if (!empty($args['onchange'])) {
1309
+        $onchange = ' onchange="' . esc_attr($args['onchange']) . '"';
1310 1310
     } else {
1311 1311
         $onchange = '';
1312 1312
     }
1313 1313
 
1314
-    $class = !empty( $args['class'] ) ? ' ' . esc_attr( $args['class'] ) : '';
1314
+    $class = !empty($args['class']) ? ' ' . esc_attr($args['class']) : '';
1315 1315
 
1316
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" class="'.$class.'"  name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" data-placeholder="' . esc_html( $placeholder ) . '"' . $onchange . ' />';
1316
+	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" class="' . $class . '"  name="wpinv_settings[' . esc_attr($args['id']) . ']" data-placeholder="' . esc_html($placeholder) . '"' . $onchange . ' />';
1317 1317
 
1318
-	foreach ( $args['options'] as $option => $name ) {
1319
-		$selected = selected( $option, $value, false );
1320
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1318
+	foreach ($args['options'] as $option => $name) {
1319
+		$selected = selected($option, $value, false);
1320
+		$html .= '<option value="' . esc_attr($option) . '" ' . $selected . '>' . esc_html($name) . '</option>';
1321 1321
 	}
1322 1322
 
1323 1323
 	$html .= '</select>';
1324
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1324
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1325 1325
 
1326 1326
 	echo $html;
1327 1327
 }
1328 1328
 
1329
-function wpinv_color_select_callback( $args ) {
1329
+function wpinv_color_select_callback($args) {
1330 1330
 	global $wpinv_options;
1331 1331
     
1332
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1332
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1333 1333
 
1334
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1335
-		$value = $wpinv_options[ $args['id'] ];
1334
+	if (isset($wpinv_options[$args['id']])) {
1335
+		$value = $wpinv_options[$args['id']];
1336 1336
 	} else {
1337
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1337
+		$value = isset($args['std']) ? $args['std'] : '';
1338 1338
 	}
1339 1339
 
1340
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"/>';
1340
+	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']"/>';
1341 1341
 
1342
-	foreach ( $args['options'] as $option => $color ) {
1343
-		$selected = selected( $option, $value, false );
1344
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $color['label'] ) . '</option>';
1342
+	foreach ($args['options'] as $option => $color) {
1343
+		$selected = selected($option, $value, false);
1344
+		$html .= '<option value="' . esc_attr($option) . '" ' . $selected . '>' . esc_html($color['label']) . '</option>';
1345 1345
 	}
1346 1346
 
1347 1347
 	$html .= '</select>';
1348
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1348
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1349 1349
 
1350 1350
 	echo $html;
1351 1351
 }
1352 1352
 
1353
-function wpinv_rich_editor_callback( $args ) {
1353
+function wpinv_rich_editor_callback($args) {
1354 1354
 	global $wpinv_options, $wp_version;
1355 1355
     
1356
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1356
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1357 1357
 
1358
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1359
-		$value = $wpinv_options[ $args['id'] ];
1358
+	if (isset($wpinv_options[$args['id']])) {
1359
+		$value = $wpinv_options[$args['id']];
1360 1360
 
1361
-		if( empty( $args['allow_blank'] ) && empty( $value ) ) {
1362
-			$value = isset( $args['std'] ) ? $args['std'] : '';
1361
+		if (empty($args['allow_blank']) && empty($value)) {
1362
+			$value = isset($args['std']) ? $args['std'] : '';
1363 1363
 		}
1364 1364
 	} else {
1365
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1365
+		$value = isset($args['std']) ? $args['std'] : '';
1366 1366
 	}
1367 1367
 
1368
-	$rows = isset( $args['size'] ) ? $args['size'] : 20;
1368
+	$rows = isset($args['size']) ? $args['size'] : 20;
1369 1369
 
1370
-	if ( $wp_version >= 3.3 && function_exists( 'wp_editor' ) ) {
1370
+	if ($wp_version >= 3.3 && function_exists('wp_editor')) {
1371 1371
 		ob_start();
1372
-		wp_editor( stripslashes( $value ), 'wpinv_settings_' . esc_attr( $args['id'] ), array( 'textarea_name' => 'wpinv_settings[' . esc_attr( $args['id'] ) . ']', 'textarea_rows' => absint( $rows ), 'media_buttons' => false ) );
1372
+		wp_editor(stripslashes($value), 'wpinv_settings_' . esc_attr($args['id']), array('textarea_name' => 'wpinv_settings[' . esc_attr($args['id']) . ']', 'textarea_rows' => absint($rows), 'media_buttons' => false));
1373 1373
 		$html = ob_get_clean();
1374 1374
 	} else {
1375
-		$html = '<textarea class="large-text" rows="10" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" class="wpi-' . esc_attr( sanitize_html_class( $args['id'] ) ) . '">' . esc_textarea( stripslashes( $value ) ) . '</textarea>';
1375
+		$html = '<textarea class="large-text" rows="10" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']" class="wpi-' . esc_attr(sanitize_html_class($args['id'])) . '">' . esc_textarea(stripslashes($value)) . '</textarea>';
1376 1376
 	}
1377 1377
 
1378
-	$html .= '<br/><label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1378
+	$html .= '<br/><label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1379 1379
 
1380 1380
 	echo $html;
1381 1381
 }
1382 1382
 
1383
-function wpinv_upload_callback( $args ) {
1383
+function wpinv_upload_callback($args) {
1384 1384
 	global $wpinv_options;
1385 1385
     
1386
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1386
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1387 1387
 
1388
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1388
+	if (isset($wpinv_options[$args['id']])) {
1389 1389
 		$value = $wpinv_options[$args['id']];
1390 1390
 	} else {
1391 1391
 		$value = isset($args['std']) ? $args['std'] : '';
1392 1392
 	}
1393 1393
 
1394
-	$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : 'regular';
1395
-	$html = '<input type="text" class="' . sanitize_html_class( $size ) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( stripslashes( $value ) ) . '"/>';
1396
-	$html .= '<span>&nbsp;<input type="button" class="wpinv_settings_upload_button button-secondary" value="' . __( 'Upload File', 'invoicing' ) . '"/></span>';
1397
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1394
+	$size = (isset($args['size']) && !is_null($args['size'])) ? $args['size'] : 'regular';
1395
+	$html = '<input type="text" class="' . sanitize_html_class($size) . '-text" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']" value="' . esc_attr(stripslashes($value)) . '"/>';
1396
+	$html .= '<span>&nbsp;<input type="button" class="wpinv_settings_upload_button button-secondary" value="' . __('Upload File', 'invoicing') . '"/></span>';
1397
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1398 1398
 
1399 1399
 	echo $html;
1400 1400
 }
1401 1401
 
1402
-function wpinv_color_callback( $args ) {
1402
+function wpinv_color_callback($args) {
1403 1403
 	global $wpinv_options;
1404 1404
     
1405
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1405
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1406 1406
 
1407
-	if ( isset( $wpinv_options[ $args['id'] ] ) ) {
1408
-		$value = $wpinv_options[ $args['id'] ];
1407
+	if (isset($wpinv_options[$args['id']])) {
1408
+		$value = $wpinv_options[$args['id']];
1409 1409
 	} else {
1410
-		$value = isset( $args['std'] ) ? $args['std'] : '';
1410
+		$value = isset($args['std']) ? $args['std'] : '';
1411 1411
 	}
1412 1412
 
1413
-	$default = isset( $args['std'] ) ? $args['std'] : '';
1413
+	$default = isset($args['std']) ? $args['std'] : '';
1414 1414
 
1415
-	$html = '<input type="text" class="wpinv-color-picker" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( $value ) . '" data-default-color="' . esc_attr( $default ) . '" />';
1416
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1415
+	$html = '<input type="text" class="wpinv-color-picker" id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']" value="' . esc_attr($value) . '" data-default-color="' . esc_attr($default) . '" />';
1416
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1417 1417
 
1418 1418
 	echo $html;
1419 1419
 }
@@ -1421,9 +1421,9 @@  discard block
 block discarded – undo
1421 1421
 function wpinv_country_states_callback($args) {
1422 1422
 	global $wpinv_options;
1423 1423
     
1424
-    $sanitize_id = wpinv_sanitize_key( $args['id'] );
1424
+    $sanitize_id = wpinv_sanitize_key($args['id']);
1425 1425
 
1426
-	if ( isset( $args['placeholder'] ) ) {
1426
+	if (isset($args['placeholder'])) {
1427 1427
 		$placeholder = $args['placeholder'];
1428 1428
 	} else {
1429 1429
 		$placeholder = '';
@@ -1431,16 +1431,16 @@  discard block
 block discarded – undo
1431 1431
 
1432 1432
 	$states = wpinv_get_country_states();
1433 1433
 
1434
-	$class = empty( $states ) ? ' class="wpinv-no-states"' : ' class="wpi_select2"';
1435
-	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr( $args['id'] ) . ']"' . $class . 'data-placeholder="' . esc_html( $placeholder ) . '"/>';
1434
+	$class = empty($states) ? ' class="wpinv-no-states"' : ' class="wpi_select2"';
1435
+	$html = '<select id="wpinv_settings[' . $sanitize_id . ']" name="wpinv_settings[' . esc_attr($args['id']) . ']"' . $class . 'data-placeholder="' . esc_html($placeholder) . '"/>';
1436 1436
 
1437
-	foreach ( $states as $option => $name ) {
1438
-		$selected = isset( $wpinv_options[ $args['id'] ] ) ? selected( $option, $wpinv_options[$args['id']], false ) : '';
1439
-		$html .= '<option value="' . esc_attr( $option ) . '" ' . $selected . '>' . esc_html( $name ) . '</option>';
1437
+	foreach ($states as $option => $name) {
1438
+		$selected = isset($wpinv_options[$args['id']]) ? selected($option, $wpinv_options[$args['id']], false) : '';
1439
+		$html .= '<option value="' . esc_attr($option) . '" ' . $selected . '>' . esc_html($name) . '</option>';
1440 1440
 	}
1441 1441
 
1442 1442
 	$html .= '</select>';
1443
-	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> '  . wp_kses_post( $args['desc'] ) . '</label>';
1443
+	$html .= '<label for="wpinv_settings[' . $sanitize_id . ']"> ' . wp_kses_post($args['desc']) . '</label>';
1444 1444
 
1445 1445
 	echo $html;
1446 1446
 }
@@ -1455,96 +1455,96 @@  discard block
 block discarded – undo
1455 1455
 	<table id="wpinv_tax_rates" class="wp-list-table widefat fixed posts">
1456 1456
 		<thead>
1457 1457
 			<tr>
1458
-				<th scope="col" class="wpinv_tax_country"><?php _e( 'Country', 'invoicing' ); ?></th>
1459
-				<th scope="col" class="wpinv_tax_state"><?php _e( 'State / Province', 'invoicing' ); ?></th>
1460
-                <th scope="col" class="wpinv_tax_global" title="<?php esc_attr_e( 'Apply rate to whole country, regardless of state / province', 'invoicing' ); ?>"><?php _e( 'Country Wide', 'invoicing' ); ?></th>
1461
-                <th scope="col" class="wpinv_tax_rate"><?php _e( 'Rate %', 'invoicing' ); ?></th> 
1462
-                <th scope="col" class="wpinv_tax_name"><?php _e( 'Tax Name', 'invoicing' ); ?></th>
1463
-				<th scope="col" class="wpinv_tax_action"><?php _e( 'Remove', 'invoicing' ); ?></th>
1458
+				<th scope="col" class="wpinv_tax_country"><?php _e('Country', 'invoicing'); ?></th>
1459
+				<th scope="col" class="wpinv_tax_state"><?php _e('State / Province', 'invoicing'); ?></th>
1460
+                <th scope="col" class="wpinv_tax_global" title="<?php esc_attr_e('Apply rate to whole country, regardless of state / province', 'invoicing'); ?>"><?php _e('Country Wide', 'invoicing'); ?></th>
1461
+                <th scope="col" class="wpinv_tax_rate"><?php _e('Rate %', 'invoicing'); ?></th> 
1462
+                <th scope="col" class="wpinv_tax_name"><?php _e('Tax Name', 'invoicing'); ?></th>
1463
+				<th scope="col" class="wpinv_tax_action"><?php _e('Remove', 'invoicing'); ?></th>
1464 1464
 			</tr>
1465 1465
 		</thead>
1466 1466
         <tbody>
1467
-		<?php if( !empty( $rates ) ) : ?>
1468
-			<?php foreach( $rates as $key => $rate ) : ?>
1467
+		<?php if (!empty($rates)) : ?>
1468
+			<?php foreach ($rates as $key => $rate) : ?>
1469 1469
             <?php 
1470
-            $sanitized_key = wpinv_sanitize_key( $key );
1470
+            $sanitized_key = wpinv_sanitize_key($key);
1471 1471
             ?>
1472 1472
 			<tr>
1473 1473
 				<td class="wpinv_tax_country">
1474 1474
 					<?php
1475
-					echo wpinv_html_select( array(
1476
-						'options'          => wpinv_get_country_list( true ),
1475
+					echo wpinv_html_select(array(
1476
+						'options'          => wpinv_get_country_list(true),
1477 1477
 						'name'             => 'tax_rates[' . $sanitized_key . '][country]',
1478 1478
                         'id'               => 'tax_rates[' . $sanitized_key . '][country]',
1479 1479
 						'selected'         => $rate['country'],
1480 1480
 						'show_option_all'  => false,
1481 1481
 						'show_option_none' => false,
1482 1482
 						'class'            => 'wpinv-tax-country wpi_select2',
1483
-						'placeholder'      => __( 'Choose a country', 'invoicing' )
1484
-					) );
1483
+						'placeholder'      => __('Choose a country', 'invoicing')
1484
+					));
1485 1485
 					?>
1486 1486
 				</td>
1487 1487
 				<td class="wpinv_tax_state">
1488 1488
 					<?php
1489
-					$states = wpinv_get_country_states( $rate['country'] );
1490
-					if( !empty( $states ) ) {
1491
-						echo wpinv_html_select( array(
1492
-							'options'          => array_merge( array( '' => '' ), $states ),
1489
+					$states = wpinv_get_country_states($rate['country']);
1490
+					if (!empty($states)) {
1491
+						echo wpinv_html_select(array(
1492
+							'options'          => array_merge(array('' => ''), $states),
1493 1493
 							'name'             => 'tax_rates[' . $sanitized_key . '][state]',
1494 1494
                             'id'               => 'tax_rates[' . $sanitized_key . '][state]',
1495 1495
 							'selected'         => $rate['state'],
1496 1496
 							'show_option_all'  => false,
1497 1497
 							'show_option_none' => false,
1498 1498
                             'class'            => 'wpi_select2',
1499
-							'placeholder'      => __( 'Choose a state', 'invoicing' )
1500
-						) );
1499
+							'placeholder'      => __('Choose a state', 'invoicing')
1500
+						));
1501 1501
 					} else {
1502
-						echo wpinv_html_text( array(
1502
+						echo wpinv_html_text(array(
1503 1503
 							'name'  => 'tax_rates[' . $sanitized_key . '][state]', $rate['state'],
1504
-							'value' => ! empty( $rate['state'] ) ? $rate['state'] : '',
1504
+							'value' => !empty($rate['state']) ? $rate['state'] : '',
1505 1505
                             'id'    => 'tax_rates[' . $sanitized_key . '][state]',
1506
-						) );
1506
+						));
1507 1507
 					}
1508 1508
 					?>
1509 1509
 				</td>
1510 1510
 				<td class="wpinv_tax_global">
1511
-					<input type="checkbox" name="tax_rates[<?php echo $sanitized_key; ?>][global]" id="tax_rates[<?php echo $sanitized_key; ?>][global]" value="1"<?php checked( true, ! empty( $rate['global'] ) ); ?>/>
1512
-					<label for="tax_rates[<?php echo $sanitized_key; ?>][global]"><?php _e( 'Apply to whole country', 'invoicing' ); ?></label>
1511
+					<input type="checkbox" name="tax_rates[<?php echo $sanitized_key; ?>][global]" id="tax_rates[<?php echo $sanitized_key; ?>][global]" value="1"<?php checked(true, !empty($rate['global'])); ?>/>
1512
+					<label for="tax_rates[<?php echo $sanitized_key; ?>][global]"><?php _e('Apply to whole country', 'invoicing'); ?></label>
1513 1513
 				</td>
1514
-				<td class="wpinv_tax_rate"><input type="number" class="small-text" step="any" min="0" max="99" name="tax_rates[<?php echo $sanitized_key; ?>][rate]" value="<?php echo esc_html( $rate['rate'] ); ?>"/></td>
1515
-                <td class="wpinv_tax_name"><input type="text" class="regular-text" name="tax_rates[<?php echo $sanitized_key; ?>][name]" value="<?php echo esc_html( $rate['name'] ); ?>"/></td>
1516
-				<td class="wpinv_tax_action"><span class="wpinv_remove_tax_rate button-secondary"><?php _e( 'Remove Rate', 'invoicing' ); ?></span></td>
1514
+				<td class="wpinv_tax_rate"><input type="number" class="small-text" step="any" min="0" max="99" name="tax_rates[<?php echo $sanitized_key; ?>][rate]" value="<?php echo esc_html($rate['rate']); ?>"/></td>
1515
+                <td class="wpinv_tax_name"><input type="text" class="regular-text" name="tax_rates[<?php echo $sanitized_key; ?>][name]" value="<?php echo esc_html($rate['name']); ?>"/></td>
1516
+				<td class="wpinv_tax_action"><span class="wpinv_remove_tax_rate button-secondary"><?php _e('Remove Rate', 'invoicing'); ?></span></td>
1517 1517
 			</tr>
1518 1518
 			<?php endforeach; ?>
1519 1519
 		<?php else : ?>
1520 1520
 			<tr>
1521 1521
 				<td class="wpinv_tax_country">
1522 1522
 					<?php
1523
-					echo wpinv_html_select( array(
1524
-						'options'          => wpinv_get_country_list( true ),
1523
+					echo wpinv_html_select(array(
1524
+						'options'          => wpinv_get_country_list(true),
1525 1525
 						'name'             => 'tax_rates[0][country]',
1526 1526
 						'show_option_all'  => false,
1527 1527
 						'show_option_none' => false,
1528 1528
 						'class'            => 'wpinv-tax-country wpi_select2',
1529
-						'placeholder'      => __( 'Choose a country', 'invoicing' )
1530
-					) ); ?>
1529
+						'placeholder'      => __('Choose a country', 'invoicing')
1530
+					)); ?>
1531 1531
 				</td>
1532 1532
 				<td class="wpinv_tax_state">
1533
-					<?php echo wpinv_html_text( array(
1533
+					<?php echo wpinv_html_text(array(
1534 1534
 						'name' => 'tax_rates[0][state]'
1535
-					) ); ?>
1535
+					)); ?>
1536 1536
 				</td>
1537 1537
 				<td class="wpinv_tax_global">
1538 1538
 					<input type="checkbox" name="tax_rates[0][global]" id="tax_rates[0][global]" value="1"/>
1539
-					<label for="tax_rates[0][global]"><?php _e( 'Apply to whole country', 'invoicing' ); ?></label>
1539
+					<label for="tax_rates[0][global]"><?php _e('Apply to whole country', 'invoicing'); ?></label>
1540 1540
 				</td>
1541
-				<td class="wpinv_tax_rate"><input type="number" class="small-text" step="any" min="0" max="99" name="tax_rates[0][rate]" placeholder="<?php echo (float)wpinv_get_option( 'tax_rate', 0 ) ;?>" value="<?php echo (float)wpinv_get_option( 'tax_rate', 0 ) ;?>"/></td>
1541
+				<td class="wpinv_tax_rate"><input type="number" class="small-text" step="any" min="0" max="99" name="tax_rates[0][rate]" placeholder="<?php echo (float)wpinv_get_option('tax_rate', 0); ?>" value="<?php echo (float)wpinv_get_option('tax_rate', 0); ?>"/></td>
1542 1542
                 <td class="wpinv_tax_name"><input type="text" class="regular-text" name="tax_rates[0][name]" /></td>
1543
-				<td><span class="wpinv_remove_tax_rate button-secondary"><?php _e( 'Remove Rate', 'invoicing' ); ?></span></td>
1543
+				<td><span class="wpinv_remove_tax_rate button-secondary"><?php _e('Remove Rate', 'invoicing'); ?></span></td>
1544 1544
 			</tr>
1545 1545
 		<?php endif; ?>
1546 1546
         </tbody>
1547
-        <tfoot><tr><td colspan="5"></td><td class="wpinv_tax_action"><span class="button-secondary" id="wpinv_add_tax_rate"><?php _e( 'Add Tax Rate', 'invoicing' ); ?></span></td></tr></tfoot>
1547
+        <tfoot><tr><td colspan="5"></td><td class="wpinv_tax_action"><span class="button-secondary" id="wpinv_add_tax_rate"><?php _e('Add Tax Rate', 'invoicing'); ?></span></td></tr></tfoot>
1548 1548
 	</table>
1549 1549
 	<?php
1550 1550
 	echo ob_get_clean();
@@ -1555,76 +1555,76 @@  discard block
 block discarded – undo
1555 1555
     ob_start(); ?>
1556 1556
     </td><tr>
1557 1557
     <td colspan="2" class="wpinv_tools_tdbox">
1558
-    <?php if ( $args['desc'] ) { ?><p><?php echo $args['desc']; ?></p><?php } ?>
1559
-    <?php do_action( 'wpinv_tools_before' ); ?>
1558
+    <?php if ($args['desc']) { ?><p><?php echo $args['desc']; ?></p><?php } ?>
1559
+    <?php do_action('wpinv_tools_before'); ?>
1560 1560
     <table id="wpinv_tools_table" class="wp-list-table widefat fixed posts">
1561 1561
         <thead>
1562 1562
             <tr>
1563
-                <th scope="col" class="wpinv-th-tool"><?php _e( 'Tool', 'invoicing' ); ?></th>
1564
-                <th scope="col" class="wpinv-th-desc"><?php _e( 'Description', 'invoicing' ); ?></th>
1565
-                <th scope="col" class="wpinv-th-action"><?php _e( 'Action', 'invoicing' ); ?></th>
1563
+                <th scope="col" class="wpinv-th-tool"><?php _e('Tool', 'invoicing'); ?></th>
1564
+                <th scope="col" class="wpinv-th-desc"><?php _e('Description', 'invoicing'); ?></th>
1565
+                <th scope="col" class="wpinv-th-action"><?php _e('Action', 'invoicing'); ?></th>
1566 1566
             </tr>
1567 1567
         </thead>
1568
-            <?php do_action( 'wpinv_tools_row' ); ?>
1568
+            <?php do_action('wpinv_tools_row'); ?>
1569 1569
         <tbody>
1570 1570
         </tbody>
1571 1571
     </table>
1572
-    <?php do_action( 'wpinv_tools_after' ); ?>
1572
+    <?php do_action('wpinv_tools_after'); ?>
1573 1573
     <?php
1574 1574
     echo ob_get_clean();
1575 1575
 }
1576 1576
 
1577
-function wpinv_descriptive_text_callback( $args ) {
1578
-	echo wp_kses_post( $args['desc'] );
1577
+function wpinv_descriptive_text_callback($args) {
1578
+	echo wp_kses_post($args['desc']);
1579 1579
 }
1580 1580
 
1581
-function wpinv_hook_callback( $args ) {
1582
-	do_action( 'wpinv_' . $args['id'], $args );
1581
+function wpinv_hook_callback($args) {
1582
+	do_action('wpinv_' . $args['id'], $args);
1583 1583
 }
1584 1584
 
1585 1585
 function wpinv_set_settings_cap() {
1586 1586
 	return 'manage_options';
1587 1587
 }
1588
-add_filter( 'option_page_capability_wpinv_settings', 'wpinv_set_settings_cap' );
1588
+add_filter('option_page_capability_wpinv_settings', 'wpinv_set_settings_cap');
1589 1589
 
1590
-function wpinv_settings_sanitize_input( $value, $key ) {
1591
-    if ( $key == 'tax_rate' || $key == 'eu_fallback_rate' ) {
1592
-        $value = wpinv_sanitize_amount( $value, 4 );
1590
+function wpinv_settings_sanitize_input($value, $key) {
1591
+    if ($key == 'tax_rate' || $key == 'eu_fallback_rate') {
1592
+        $value = wpinv_sanitize_amount($value, 4);
1593 1593
         $value = $value >= 100 ? 99 : $value;
1594 1594
     }
1595 1595
         
1596 1596
     return $value;
1597 1597
 }
1598
-add_filter( 'wpinv_settings_sanitize', 'wpinv_settings_sanitize_input', 10, 2 );
1598
+add_filter('wpinv_settings_sanitize', 'wpinv_settings_sanitize_input', 10, 2);
1599 1599
 
1600
-function wpinv_on_update_settings( $old_value, $value, $option ) {
1601
-    $old = !empty( $old_value['remove_data_on_unistall'] ) ? 1 : '';
1602
-    $new = !empty( $value['remove_data_on_unistall'] ) ? 1 : '';
1600
+function wpinv_on_update_settings($old_value, $value, $option) {
1601
+    $old = !empty($old_value['remove_data_on_unistall']) ? 1 : '';
1602
+    $new = !empty($value['remove_data_on_unistall']) ? 1 : '';
1603 1603
     
1604
-    if ( $old != $new ) {
1605
-        update_option( 'wpinv_remove_data_on_invoice_unistall', $new );
1604
+    if ($old != $new) {
1605
+        update_option('wpinv_remove_data_on_invoice_unistall', $new);
1606 1606
     }
1607 1607
 }
1608
-add_action( 'update_option_wpinv_settings', 'wpinv_on_update_settings', 10, 3 );
1609
-add_action( 'wpinv_settings_tab_bottom_emails_new_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1610
-add_action( 'wpinv_settings_tab_bottom_emails_cancelled_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1611
-add_action( 'wpinv_settings_tab_bottom_emails_failed_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1612
-add_action( 'wpinv_settings_tab_bottom_emails_onhold_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1613
-add_action( 'wpinv_settings_tab_bottom_emails_processing_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1614
-add_action( 'wpinv_settings_tab_bottom_emails_completed_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1615
-add_action( 'wpinv_settings_tab_bottom_emails_refunded_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1616
-add_action( 'wpinv_settings_tab_bottom_emails_user_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1617
-add_action( 'wpinv_settings_tab_bottom_emails_user_note', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1618
-add_action( 'wpinv_settings_tab_bottom_emails_overdue', 'wpinv_settings_tab_bottom_emails', 10, 2 );
1619
-
1620
-function wpinv_settings_tab_bottom_emails( $active_tab, $section ) {
1608
+add_action('update_option_wpinv_settings', 'wpinv_on_update_settings', 10, 3);
1609
+add_action('wpinv_settings_tab_bottom_emails_new_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1610
+add_action('wpinv_settings_tab_bottom_emails_cancelled_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1611
+add_action('wpinv_settings_tab_bottom_emails_failed_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1612
+add_action('wpinv_settings_tab_bottom_emails_onhold_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1613
+add_action('wpinv_settings_tab_bottom_emails_processing_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1614
+add_action('wpinv_settings_tab_bottom_emails_completed_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1615
+add_action('wpinv_settings_tab_bottom_emails_refunded_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1616
+add_action('wpinv_settings_tab_bottom_emails_user_invoice', 'wpinv_settings_tab_bottom_emails', 10, 2);
1617
+add_action('wpinv_settings_tab_bottom_emails_user_note', 'wpinv_settings_tab_bottom_emails', 10, 2);
1618
+add_action('wpinv_settings_tab_bottom_emails_overdue', 'wpinv_settings_tab_bottom_emails', 10, 2);
1619
+
1620
+function wpinv_settings_tab_bottom_emails($active_tab, $section) {
1621 1621
     ?>
1622 1622
     <div class="wpinv-email-wc-row ">
1623 1623
         <div class="wpinv-email-wc-td">
1624
-            <h3 class="wpinv-email-wc-title"><?php echo apply_filters( 'wpinv_settings_email_wildcards_title', __( 'Wildcards For Emails', 'invoicing' ) ); ?></h3>
1624
+            <h3 class="wpinv-email-wc-title"><?php echo apply_filters('wpinv_settings_email_wildcards_title', __('Wildcards For Emails', 'invoicing')); ?></h3>
1625 1625
             <p class="wpinv-email-wc-description">
1626 1626
                 <?php
1627
-                $description = __( 'The following wildcards can be used in email subjects, heading and content:<br>
1627
+                $description = __('The following wildcards can be used in email subjects, heading and content:<br>
1628 1628
                     <strong>{site_title} :</strong> Site Title<br>
1629 1629
                     <strong>{name} :</strong> Customer\'s full name<br>
1630 1630
                     <strong>{first_name} :</strong> Customer\'s first name<br>
@@ -1638,7 +1638,7 @@  discard block
 block discarded – undo
1638 1638
                     <strong>{invoice_due_date} :</strong> The date the invoice is due<br>
1639 1639
                     <strong>{date} :</strong> Today\'s date.<br>
1640 1640
                     <strong>{is_was} :</strong> If due date of invoice is past, displays "was" otherwise displays "is"<br>
1641
-                    <strong>{invoice_label} :</strong> Invoices/quotes singular name. Ex: Invoice/Quote<br>', 'invoicing' );
1641
+                    <strong>{invoice_label} :</strong> Invoices/quotes singular name. Ex: Invoice/Quote<br>', 'invoicing');
1642 1642
                 echo apply_filters('wpinv_settings_email_wildcards_description', $description, $active_tab, $section);
1643 1643
                 ?>
1644 1644
             </p>
Please login to merge, or discard this patch.
includes/class-wpinv-addons.php 4 patches
Doc Comments   -4 removed lines patch added patch discarded remove patch
@@ -73,10 +73,6 @@
 block discarded – undo
73 73
 	/**
74 74
 	 * Outputs a button.
75 75
 	 *ccc
76
-	 * @param string $url
77
-	 * @param string $text
78
-	 * @param string $theme
79
-	 * @param string $plugin
80 76
 	 */
81 77
 	public function output_button( $addon ) {
82 78
 		$current_tab     = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] );
Please login to merge, or discard this patch.
Braces   +11 added lines, -12 removed lines patch added patch discarded remove patch
@@ -45,8 +45,7 @@  discard block
 block discarded – undo
45 45
 
46 46
 		if($section_id=='recommended_plugins'){
47 47
 			$section_data->products = self::get_recommend_wp_plugins_edd_formatted();
48
-		}
49
-		elseif ( ! empty( $section ) ) {
48
+		} elseif ( ! empty( $section ) ) {
50 49
 			if ( false === ( $section_data = get_transient( 'wpi_addons_section_' . $section_id ) ) ) { //@todo restore after testing
51 50
 			//if ( 1==1) {
52 51
 
@@ -121,13 +120,13 @@  discard block
 block discarded – undo
121 120
 			$button_args['file'] = isset($status['file']) ? $status['file'] : '';
122 121
 			if(isset($status['status'])){$button_args['install_status'] = $status['status'];}
123 122
 			$button_args['update_url'] = "https://wpinvoicing.com";
124
-		}elseif($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) {
123
+		} elseif($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) {
125 124
 			if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;}
126 125
 			$button_args['installed'] = self::is_theme_installed($addon);
127 126
 			if(!in_array($button_args['slug'],$wp_org_themes)){
128 127
 				$button_args['update_url'] = "https://wpinvoicing.com";
129 128
 			}
130
-		}elseif($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug){
129
+		} elseif($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug){
131 130
 			include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api..
132 131
 			$status = install_plugin_install_status(array("slug"=>$button_args['slug'],"version"=>""));
133 132
 			$button_args['install_status'] = isset($status['status']) ? $status['status'] : 'install';
@@ -139,7 +138,7 @@  discard block
 block discarded – undo
139 138
 			if(is_object($addon->pricing)){
140 139
 				$prices = (Array)$addon->pricing;
141 140
 				$button_args['price'] = reset($prices);
142
-			}elseif(isset($addon->pricing)){
141
+			} elseif(isset($addon->pricing)){
143 142
 				$button_args['price'] = $addon->pricing;
144 143
 			}
145 144
 		}
@@ -160,7 +159,7 @@  discard block
 block discarded – undo
160 159
 		if($button_args['installed'] && ($button_args['file'] || $button_args['type'] == 'themes')){
161 160
 			if($button_args['type'] != 'themes'){
162 161
 				$button_args['active'] = is_plugin_active($button_args['file']);
163
-			}else{
162
+			} else{
164 163
 				$button_args['active'] = self::is_theme_active($addon);
165 164
 			}
166 165
 		}
@@ -169,27 +168,27 @@  discard block
 block discarded – undo
169 168
 		if($button_args['active']){
170 169
 			$button_args['button_text'] = __('Active','invoicing');
171 170
 			$button_args['class'] = ' button-secondary disabled ';
172
-		}elseif($button_args['installed']){
171
+		} elseif($button_args['installed']){
173 172
 			$button_args['button_text'] = __('Activate','invoicing');
174 173
 
175 174
 			if($button_args['type'] != 'themes'){
176 175
 				if ( current_user_can( 'manage_options' ) ) {
177 176
 					$button_args['url'] = wp_nonce_url(admin_url('plugins.php?action=activate&plugin='.$button_args['file']), 'activate-plugin_' . $button_args['file']);
178
-				}else{
177
+				} else{
179 178
 					$button_args['url'] = '#';
180 179
 				}
181
-			}else{
180
+			} else{
182 181
 				if ( current_user_can( 'switch_themes' ) ) {
183 182
 					$button_args['url'] = self::get_theme_activation_url($addon);
184
-				}else{
183
+				} else{
185 184
 					$button_args['url'] = '#';
186 185
 				}
187 186
 			}
188 187
 
189
-		}else{
188
+		} else{
190 189
 			if($button_args['type'] == 'recommended_plugins'){
191 190
 				$button_args['button_text'] = __('Install','invoicing');
192
-			}else{
191
+			} else{
193 192
 				$button_args['button_text'] = __('Get it','invoicing');
194 193
 
195 194
 				/*if($button_args['type'] == 'themes' && in_array($button_args['slug'],$wp_org_themes) ){
Please login to merge, or discard this patch.
Indentation   +201 added lines, -201 removed lines patch added patch discarded remove patch
@@ -6,7 +6,7 @@  discard block
 block discarded – undo
6 6
  *
7 7
  */
8 8
 if ( ! defined( 'ABSPATH' ) ) {
9
-	exit;
9
+    exit;
10 10
 }
11 11
 
12 12
 /**
@@ -15,71 +15,71 @@  discard block
 block discarded – undo
15 15
 class WPInv_Admin_Addons extends Ayecode_Addons {
16 16
 
17 17
 
18
-	/**
19
-	 * Get the extensions page tabs.
20
-	 *
21
-	 * @return array of tabs.
22
-	 */
23
-	public function get_tabs(){
24
-		$tabs = array(
25
-			'addons' => __("Addons", "invoicing"),
18
+    /**
19
+     * Get the extensions page tabs.
20
+     *
21
+     * @return array of tabs.
22
+     */
23
+    public function get_tabs(){
24
+        $tabs = array(
25
+            'addons' => __("Addons", "invoicing"),
26 26
             'gateways' => __("Payment Gateways", "invoicing"),
27 27
             'recommended_plugins' => __("Recommended plugins", "invoicing"),
28 28
             'membership' => __("Membership", "invoicing"),
29
-		);
30
-
31
-		return $tabs;
32
-	}
33
-
34
-	/**
35
-	 * Get section content for the addons screen.
36
-	 *
37
-	 * @param  string $section_id
38
-	 *
39
-	 * @return array
40
-	 */
41
-	public function get_section_data( $section_id ) {
42
-		$section      = self::get_tab( $section_id );
43
-		$api_url = "https://wpinvoicing.com/edd-api/v2/products/";
44
-		$section_data = new stdClass();
45
-
46
-		if($section_id=='recommended_plugins'){
47
-			$section_data->products = self::get_recommend_wp_plugins_edd_formatted();
48
-		}
49
-		elseif ( ! empty( $section ) ) {
50
-			if ( false === ( $section_data = get_transient( 'wpi_addons_section_' . $section_id ) ) ) { //@todo restore after testing
51
-			//if ( 1==1) {
52
-
53
-				$query_args = array( 'category' => $section_id, 'number' => 100);
54
-				$query_args = apply_filters('wpeu_edd_api_query_args',$query_args,$api_url,$section_id);
55
-
56
-				$raw_section = wp_safe_remote_get( esc_url_raw( add_query_arg($query_args ,$api_url) ), array( 'user-agent' => 'Invoicing Addons Page','timeout'     => 15, ) );
57
-
58
-				if ( ! is_wp_error( $raw_section ) ) {
59
-					$section_data = json_decode( wp_remote_retrieve_body( $raw_section ) );
60
-
61
-					if ( ! empty( $section_data->products ) ) {
62
-						set_transient( 'wpi_addons_section_' . $section_id, $section_data, DAY_IN_SECONDS );
63
-					}
64
-				}
65
-			}
66
-		}
67
-
68
-		$products = isset($section_data->products) ? $section_data->products : '';
69
-
70
-		return apply_filters( 'wpi_addons_section_data', $products, $section_id );
71
-	}
72
-
73
-	/**
74
-	 * Outputs a button.
75
-	 *ccc
76
-	 * @param string $url
77
-	 * @param string $text
78
-	 * @param string $theme
79
-	 * @param string $plugin
80
-	 */
81
-	public function output_button( $addon ) {
82
-		$current_tab     = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] );
29
+        );
30
+
31
+        return $tabs;
32
+    }
33
+
34
+    /**
35
+     * Get section content for the addons screen.
36
+     *
37
+     * @param  string $section_id
38
+     *
39
+     * @return array
40
+     */
41
+    public function get_section_data( $section_id ) {
42
+        $section      = self::get_tab( $section_id );
43
+        $api_url = "https://wpinvoicing.com/edd-api/v2/products/";
44
+        $section_data = new stdClass();
45
+
46
+        if($section_id=='recommended_plugins'){
47
+            $section_data->products = self::get_recommend_wp_plugins_edd_formatted();
48
+        }
49
+        elseif ( ! empty( $section ) ) {
50
+            if ( false === ( $section_data = get_transient( 'wpi_addons_section_' . $section_id ) ) ) { //@todo restore after testing
51
+            //if ( 1==1) {
52
+
53
+                $query_args = array( 'category' => $section_id, 'number' => 100);
54
+                $query_args = apply_filters('wpeu_edd_api_query_args',$query_args,$api_url,$section_id);
55
+
56
+                $raw_section = wp_safe_remote_get( esc_url_raw( add_query_arg($query_args ,$api_url) ), array( 'user-agent' => 'Invoicing Addons Page','timeout'     => 15, ) );
57
+
58
+                if ( ! is_wp_error( $raw_section ) ) {
59
+                    $section_data = json_decode( wp_remote_retrieve_body( $raw_section ) );
60
+
61
+                    if ( ! empty( $section_data->products ) ) {
62
+                        set_transient( 'wpi_addons_section_' . $section_id, $section_data, DAY_IN_SECONDS );
63
+                    }
64
+                }
65
+            }
66
+        }
67
+
68
+        $products = isset($section_data->products) ? $section_data->products : '';
69
+
70
+        return apply_filters( 'wpi_addons_section_data', $products, $section_id );
71
+    }
72
+
73
+    /**
74
+     * Outputs a button.
75
+     *ccc
76
+     * @param string $url
77
+     * @param string $text
78
+     * @param string $theme
79
+     * @param string $plugin
80
+     */
81
+    public function output_button( $addon ) {
82
+        $current_tab     = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] );
83 83
 //		$button_text = __('Free','invoicing');
84 84
 //		$licensing = false;
85 85
 //		$installed = false;
@@ -91,123 +91,123 @@  discard block
 block discarded – undo
91 91
 //		$install_status = 'get';
92 92
 //		$onclick = '';
93 93
 
94
-		$wp_org_themes = array('supreme-directory','directory-starter');
95
-
96
-		$button_args = array(
97
-			'type' => $current_tab,
98
-			'id' => isset($addon->info->id) ? absint($addon->info->id) : '',
99
-			'title' => isset($addon->info->title) ? $addon->info->title : '',
100
-			'button_text' => __('Free','invoicing'),
101
-			'price_text' => __('Free','invoicing'),
102
-			'link' => isset($addon->info->link) ? $addon->info->link : '', // link to product
103
-			'url' => isset($addon->info->link) ? $addon->info->link : '', // button url
104
-			'class' => 'button-primary',
105
-			'install_status' => 'get',
106
-			'installed' => false,
107
-			'price' => '',
108
-			'licensing' => isset($addon->licensing->enabled) && $addon->licensing->enabled ? true : false,
109
-			'license' => isset($addon->licensing->license) && $addon->licensing->license ? $addon->licensing->license : '',
110
-			'onclick' => '',
111
-			'slug' => isset($addon->info->slug) ? $addon->info->slug : '',
112
-			'active' => false,
113
-			'file' => '',
114
-			'update_url' => '',
115
-		);
116
-
117
-		if( ($current_tab == 'addons' || $current_tab =='gateways') && isset($addon->info->id) && $addon->info->id){
118
-			include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api..
119
-			if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;}
120
-			$status = self::install_plugin_install_status($addon);
121
-			$button_args['file'] = isset($status['file']) ? $status['file'] : '';
122
-			if(isset($status['status'])){$button_args['install_status'] = $status['status'];}
123
-			$button_args['update_url'] = "https://wpinvoicing.com";
124
-		}elseif($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) {
125
-			if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;}
126
-			$button_args['installed'] = self::is_theme_installed($addon);
127
-			if(!in_array($button_args['slug'],$wp_org_themes)){
128
-				$button_args['update_url'] = "https://wpinvoicing.com";
129
-			}
130
-		}elseif($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug){
131
-			include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api..
132
-			$status = install_plugin_install_status(array("slug"=>$button_args['slug'],"version"=>""));
133
-			$button_args['install_status'] = isset($status['status']) ? $status['status'] : 'install';
134
-			$button_args['file'] = isset($status['file']) ? $status['file'] : '';
135
-		}
136
-
137
-		// set price
138
-		if(isset($addon->pricing) && !empty($addon->pricing)){
139
-			if(is_object($addon->pricing)){
140
-				$prices = (Array)$addon->pricing;
141
-				$button_args['price'] = reset($prices);
142
-			}elseif(isset($addon->pricing)){
143
-				$button_args['price'] = $addon->pricing;
144
-			}
145
-		}
146
-
147
-		// set price text
148
-		if( $button_args['price'] && $button_args['price'] != '0.00' ){
149
-			$button_args['price_text'] = sprintf( __('From: $%d', 'invoicing'), $button_args['price']);
150
-		}
151
-
152
-
153
-		// set if installed
154
-		if(in_array($button_args['install_status'], array('installed','latest_installed','update_available','newer_installed'))){
155
-			$button_args['installed'] = true;
156
-		}
94
+        $wp_org_themes = array('supreme-directory','directory-starter');
95
+
96
+        $button_args = array(
97
+            'type' => $current_tab,
98
+            'id' => isset($addon->info->id) ? absint($addon->info->id) : '',
99
+            'title' => isset($addon->info->title) ? $addon->info->title : '',
100
+            'button_text' => __('Free','invoicing'),
101
+            'price_text' => __('Free','invoicing'),
102
+            'link' => isset($addon->info->link) ? $addon->info->link : '', // link to product
103
+            'url' => isset($addon->info->link) ? $addon->info->link : '', // button url
104
+            'class' => 'button-primary',
105
+            'install_status' => 'get',
106
+            'installed' => false,
107
+            'price' => '',
108
+            'licensing' => isset($addon->licensing->enabled) && $addon->licensing->enabled ? true : false,
109
+            'license' => isset($addon->licensing->license) && $addon->licensing->license ? $addon->licensing->license : '',
110
+            'onclick' => '',
111
+            'slug' => isset($addon->info->slug) ? $addon->info->slug : '',
112
+            'active' => false,
113
+            'file' => '',
114
+            'update_url' => '',
115
+        );
116
+
117
+        if( ($current_tab == 'addons' || $current_tab =='gateways') && isset($addon->info->id) && $addon->info->id){
118
+            include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api..
119
+            if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;}
120
+            $status = self::install_plugin_install_status($addon);
121
+            $button_args['file'] = isset($status['file']) ? $status['file'] : '';
122
+            if(isset($status['status'])){$button_args['install_status'] = $status['status'];}
123
+            $button_args['update_url'] = "https://wpinvoicing.com";
124
+        }elseif($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) {
125
+            if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;}
126
+            $button_args['installed'] = self::is_theme_installed($addon);
127
+            if(!in_array($button_args['slug'],$wp_org_themes)){
128
+                $button_args['update_url'] = "https://wpinvoicing.com";
129
+            }
130
+        }elseif($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug){
131
+            include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api..
132
+            $status = install_plugin_install_status(array("slug"=>$button_args['slug'],"version"=>""));
133
+            $button_args['install_status'] = isset($status['status']) ? $status['status'] : 'install';
134
+            $button_args['file'] = isset($status['file']) ? $status['file'] : '';
135
+        }
136
+
137
+        // set price
138
+        if(isset($addon->pricing) && !empty($addon->pricing)){
139
+            if(is_object($addon->pricing)){
140
+                $prices = (Array)$addon->pricing;
141
+                $button_args['price'] = reset($prices);
142
+            }elseif(isset($addon->pricing)){
143
+                $button_args['price'] = $addon->pricing;
144
+            }
145
+        }
146
+
147
+        // set price text
148
+        if( $button_args['price'] && $button_args['price'] != '0.00' ){
149
+            $button_args['price_text'] = sprintf( __('From: $%d', 'invoicing'), $button_args['price']);
150
+        }
151
+
152
+
153
+        // set if installed
154
+        if(in_array($button_args['install_status'], array('installed','latest_installed','update_available','newer_installed'))){
155
+            $button_args['installed'] = true;
156
+        }
157 157
 
158 158
 //		print_r($button_args);
159
-		// set if active
160
-		if($button_args['installed'] && ($button_args['file'] || $button_args['type'] == 'themes')){
161
-			if($button_args['type'] != 'themes'){
162
-				$button_args['active'] = is_plugin_active($button_args['file']);
163
-			}else{
164
-				$button_args['active'] = self::is_theme_active($addon);
165
-			}
166
-		}
167
-
168
-		// set button text and class
169
-		if($button_args['active']){
170
-			$button_args['button_text'] = __('Active','invoicing');
171
-			$button_args['class'] = ' button-secondary disabled ';
172
-		}elseif($button_args['installed']){
173
-			$button_args['button_text'] = __('Activate','invoicing');
174
-
175
-			if($button_args['type'] != 'themes'){
176
-				if ( current_user_can( 'manage_options' ) ) {
177
-					$button_args['url'] = wp_nonce_url(admin_url('plugins.php?action=activate&plugin='.$button_args['file']), 'activate-plugin_' . $button_args['file']);
178
-				}else{
179
-					$button_args['url'] = '#';
180
-				}
181
-			}else{
182
-				if ( current_user_can( 'switch_themes' ) ) {
183
-					$button_args['url'] = self::get_theme_activation_url($addon);
184
-				}else{
185
-					$button_args['url'] = '#';
186
-				}
187
-			}
188
-
189
-		}else{
190
-			if($button_args['type'] == 'recommended_plugins'){
191
-				$button_args['button_text'] = __('Install','invoicing');
192
-			}else{
193
-				$button_args['button_text'] = __('Get it','invoicing');
194
-
195
-				/*if($button_args['type'] == 'themes' && in_array($button_args['slug'],$wp_org_themes) ){
159
+        // set if active
160
+        if($button_args['installed'] && ($button_args['file'] || $button_args['type'] == 'themes')){
161
+            if($button_args['type'] != 'themes'){
162
+                $button_args['active'] = is_plugin_active($button_args['file']);
163
+            }else{
164
+                $button_args['active'] = self::is_theme_active($addon);
165
+            }
166
+        }
167
+
168
+        // set button text and class
169
+        if($button_args['active']){
170
+            $button_args['button_text'] = __('Active','invoicing');
171
+            $button_args['class'] = ' button-secondary disabled ';
172
+        }elseif($button_args['installed']){
173
+            $button_args['button_text'] = __('Activate','invoicing');
174
+
175
+            if($button_args['type'] != 'themes'){
176
+                if ( current_user_can( 'manage_options' ) ) {
177
+                    $button_args['url'] = wp_nonce_url(admin_url('plugins.php?action=activate&plugin='.$button_args['file']), 'activate-plugin_' . $button_args['file']);
178
+                }else{
179
+                    $button_args['url'] = '#';
180
+                }
181
+            }else{
182
+                if ( current_user_can( 'switch_themes' ) ) {
183
+                    $button_args['url'] = self::get_theme_activation_url($addon);
184
+                }else{
185
+                    $button_args['url'] = '#';
186
+                }
187
+            }
188
+
189
+        }else{
190
+            if($button_args['type'] == 'recommended_plugins'){
191
+                $button_args['button_text'] = __('Install','invoicing');
192
+            }else{
193
+                $button_args['button_text'] = __('Get it','invoicing');
194
+
195
+                /*if($button_args['type'] == 'themes' && in_array($button_args['slug'],$wp_org_themes) ){
196 196
 					$button_args['button_text'] = __('Install','invoicing');
197 197
 					$button_args['url'] = self::get_theme_install_url($button_args['slug']);
198 198
 					$button_args['onclick'] = 'gd_set_button_installing(this);';
199 199
 				}*/
200 200
 
201
-			}
202
-		}
201
+            }
202
+        }
203 203
 
204 204
 		
205
-		// filter the button arguments
206
-		$button_args = apply_filters('edd_api_button_args',$button_args);
205
+        // filter the button arguments
206
+        $button_args = apply_filters('edd_api_button_args',$button_args);
207 207
 
208
-		// set price text
209
-		if(isset($button_args['price_text'])){
210
-			?>
208
+        // set price text
209
+        if(isset($button_args['price_text'])){
210
+            ?>
211 211
 			<a
212 212
 				target="_blank"
213 213
 				class="addons-price-text"
@@ -215,15 +215,15 @@  discard block
 block discarded – undo
215 215
 				<?php echo esc_html( $button_args['price_text'] ); ?>
216 216
 			</a>
217 217
 			<?php
218
-		}
218
+        }
219 219
 
220 220
 
221
-		$target = '';
222
-		if ( ! empty( $button_args['url'] ) ) {
223
-			$target = strpos($button_args['url'], get_site_url()) !== false ? '' : ' target="_blank" ';
224
-		}
221
+        $target = '';
222
+        if ( ! empty( $button_args['url'] ) ) {
223
+            $target = strpos($button_args['url'], get_site_url()) !== false ? '' : ' target="_blank" ';
224
+        }
225 225
 
226
-		?>
226
+        ?>
227 227
 		<a
228 228
 			data-licence="<?php echo esc_attr($button_args['license']);?>"
229 229
 			data-licensing="<?php echo $button_args['licensing'] ? 1 : 0;?>"
@@ -246,28 +246,28 @@  discard block
 block discarded – undo
246 246
 		<?php
247 247
 
248 248
 
249
-	}
250
-
251
-
252
-	/**
253
-	 * Handles output of the addons page in admin.
254
-	 */
255
-	public function output() {
256
-		$tabs            = self::get_tabs();
257
-		$sections        = self::get_sections();
258
-		$theme           = wp_get_theme();
259
-		$section_keys    = array_keys( $sections );
260
-		$current_section = isset( $_GET['section'] ) ? sanitize_text_field( $_GET['section'] ) : current( $section_keys );
261
-		$current_tab     = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] );
262
-		include_once( WPINV_PLUGIN_DIR . '/includes/admin/html-admin-page-addons.php' );
263
-	}
264
-
265
-	/**
266
-	 * A list of recommended wp.org plugins.
267
-	 * @return array
268
-	 */
269
-	public function get_recommend_wp_plugins(){
270
-		$plugins = array(
249
+    }
250
+
251
+
252
+    /**
253
+     * Handles output of the addons page in admin.
254
+     */
255
+    public function output() {
256
+        $tabs            = self::get_tabs();
257
+        $sections        = self::get_sections();
258
+        $theme           = wp_get_theme();
259
+        $section_keys    = array_keys( $sections );
260
+        $current_section = isset( $_GET['section'] ) ? sanitize_text_field( $_GET['section'] ) : current( $section_keys );
261
+        $current_tab     = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] );
262
+        include_once( WPINV_PLUGIN_DIR . '/includes/admin/html-admin-page-addons.php' );
263
+    }
264
+
265
+    /**
266
+     * A list of recommended wp.org plugins.
267
+     * @return array
268
+     */
269
+    public function get_recommend_wp_plugins(){
270
+        $plugins = array(
271 271
             'invoicing-quotes' => array(
272 272
                 'url'   => 'https://wordpress.org/plugins/invoicing-quotes/',
273 273
                 'slug'   => 'invoicing-quotes',
@@ -287,8 +287,8 @@  discard block
 block discarded – undo
287 287
                 'name'   => 'UsersWP',
288 288
                 'desc'   => __('Allow frontend user login and registration as well as have slick profile pages.','invoicing'),
289 289
             ),
290
-		);
290
+        );
291 291
 
292
-		return $plugins;
293
-	}
292
+        return $plugins;
293
+    }
294 294
 }
Please login to merge, or discard this patch.
Spacing   +85 added lines, -85 removed lines patch added patch discarded remove patch
@@ -5,7 +5,7 @@  discard block
 block discarded – undo
5 5
  * All Invoicing extensions screen related functions can be found here.
6 6
  *
7 7
  */
8
-if ( ! defined( 'ABSPATH' ) ) {
8
+if (!defined('ABSPATH')) {
9 9
 	exit;
10 10
 }
11 11
 
@@ -20,7 +20,7 @@  discard block
 block discarded – undo
20 20
 	 *
21 21
 	 * @return array of tabs.
22 22
 	 */
23
-	public function get_tabs(){
23
+	public function get_tabs() {
24 24
 		$tabs = array(
25 25
 			'addons' => __("Addons", "invoicing"),
26 26
             'gateways' => __("Payment Gateways", "invoicing"),
@@ -38,28 +38,28 @@  discard block
 block discarded – undo
38 38
 	 *
39 39
 	 * @return array
40 40
 	 */
41
-	public function get_section_data( $section_id ) {
42
-		$section      = self::get_tab( $section_id );
41
+	public function get_section_data($section_id) {
42
+		$section      = self::get_tab($section_id);
43 43
 		$api_url = "https://wpinvoicing.com/edd-api/v2/products/";
44 44
 		$section_data = new stdClass();
45 45
 
46
-		if($section_id=='recommended_plugins'){
46
+		if ($section_id == 'recommended_plugins') {
47 47
 			$section_data->products = self::get_recommend_wp_plugins_edd_formatted();
48 48
 		}
49
-		elseif ( ! empty( $section ) ) {
50
-			if ( false === ( $section_data = get_transient( 'wpi_addons_section_' . $section_id ) ) ) { //@todo restore after testing
49
+		elseif (!empty($section)) {
50
+			if (false === ($section_data = get_transient('wpi_addons_section_' . $section_id))) { //@todo restore after testing
51 51
 			//if ( 1==1) {
52 52
 
53
-				$query_args = array( 'category' => $section_id, 'number' => 100);
54
-				$query_args = apply_filters('wpeu_edd_api_query_args',$query_args,$api_url,$section_id);
53
+				$query_args = array('category' => $section_id, 'number' => 100);
54
+				$query_args = apply_filters('wpeu_edd_api_query_args', $query_args, $api_url, $section_id);
55 55
 
56
-				$raw_section = wp_safe_remote_get( esc_url_raw( add_query_arg($query_args ,$api_url) ), array( 'user-agent' => 'Invoicing Addons Page','timeout'     => 15, ) );
56
+				$raw_section = wp_safe_remote_get(esc_url_raw(add_query_arg($query_args, $api_url)), array('user-agent' => 'Invoicing Addons Page', 'timeout'     => 15,));
57 57
 
58
-				if ( ! is_wp_error( $raw_section ) ) {
59
-					$section_data = json_decode( wp_remote_retrieve_body( $raw_section ) );
58
+				if (!is_wp_error($raw_section)) {
59
+					$section_data = json_decode(wp_remote_retrieve_body($raw_section));
60 60
 
61
-					if ( ! empty( $section_data->products ) ) {
62
-						set_transient( 'wpi_addons_section_' . $section_id, $section_data, DAY_IN_SECONDS );
61
+					if (!empty($section_data->products)) {
62
+						set_transient('wpi_addons_section_' . $section_id, $section_data, DAY_IN_SECONDS);
63 63
 					}
64 64
 				}
65 65
 			}
@@ -67,7 +67,7 @@  discard block
 block discarded – undo
67 67
 
68 68
 		$products = isset($section_data->products) ? $section_data->products : '';
69 69
 
70
-		return apply_filters( 'wpi_addons_section_data', $products, $section_id );
70
+		return apply_filters('wpi_addons_section_data', $products, $section_id);
71 71
 	}
72 72
 
73 73
 	/**
@@ -78,8 +78,8 @@  discard block
 block discarded – undo
78 78
 	 * @param string $theme
79 79
 	 * @param string $plugin
80 80
 	 */
81
-	public function output_button( $addon ) {
82
-		$current_tab     = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] );
81
+	public function output_button($addon) {
82
+		$current_tab = empty($_GET['tab']) ? 'addons' : sanitize_title($_GET['tab']);
83 83
 //		$button_text = __('Free','invoicing');
84 84
 //		$licensing = false;
85 85
 //		$installed = false;
@@ -91,14 +91,14 @@  discard block
 block discarded – undo
91 91
 //		$install_status = 'get';
92 92
 //		$onclick = '';
93 93
 
94
-		$wp_org_themes = array('supreme-directory','directory-starter');
94
+		$wp_org_themes = array('supreme-directory', 'directory-starter');
95 95
 
96 96
 		$button_args = array(
97 97
 			'type' => $current_tab,
98 98
 			'id' => isset($addon->info->id) ? absint($addon->info->id) : '',
99 99
 			'title' => isset($addon->info->title) ? $addon->info->title : '',
100
-			'button_text' => __('Free','invoicing'),
101
-			'price_text' => __('Free','invoicing'),
100
+			'button_text' => __('Free', 'invoicing'),
101
+			'price_text' => __('Free', 'invoicing'),
102 102
 			'link' => isset($addon->info->link) ? $addon->info->link : '', // link to product
103 103
 			'url' => isset($addon->info->link) ? $addon->info->link : '', // button url
104 104
 			'class' => 'button-primary',
@@ -114,83 +114,83 @@  discard block
 block discarded – undo
114 114
 			'update_url' => '',
115 115
 		);
116 116
 
117
-		if( ($current_tab == 'addons' || $current_tab =='gateways') && isset($addon->info->id) && $addon->info->id){
118
-			include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api..
119
-			if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;}
117
+		if (($current_tab == 'addons' || $current_tab == 'gateways') && isset($addon->info->id) && $addon->info->id) {
118
+			include_once(ABSPATH . 'wp-admin/includes/plugin-install.php'); //for plugins_api..
119
+			if (!empty($addon->licensing->edd_slug)) {$button_args['slug'] = $addon->licensing->edd_slug; }
120 120
 			$status = self::install_plugin_install_status($addon);
121 121
 			$button_args['file'] = isset($status['file']) ? $status['file'] : '';
122
-			if(isset($status['status'])){$button_args['install_status'] = $status['status'];}
122
+			if (isset($status['status'])) {$button_args['install_status'] = $status['status']; }
123 123
 			$button_args['update_url'] = "https://wpinvoicing.com";
124
-		}elseif($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) {
125
-			if(!empty($addon->licensing->edd_slug)){$button_args['slug'] = $addon->licensing->edd_slug;}
124
+		}elseif ($current_tab == 'themes' && isset($addon->info->id) && $addon->info->id) {
125
+			if (!empty($addon->licensing->edd_slug)) {$button_args['slug'] = $addon->licensing->edd_slug; }
126 126
 			$button_args['installed'] = self::is_theme_installed($addon);
127
-			if(!in_array($button_args['slug'],$wp_org_themes)){
127
+			if (!in_array($button_args['slug'], $wp_org_themes)) {
128 128
 				$button_args['update_url'] = "https://wpinvoicing.com";
129 129
 			}
130
-		}elseif($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug){
131
-			include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' ); //for plugins_api..
132
-			$status = install_plugin_install_status(array("slug"=>$button_args['slug'],"version"=>""));
130
+		}elseif ($current_tab == 'recommended_plugins' && isset($addon->info->slug) && $addon->info->slug) {
131
+			include_once(ABSPATH . 'wp-admin/includes/plugin-install.php'); //for plugins_api..
132
+			$status = install_plugin_install_status(array("slug"=>$button_args['slug'], "version"=>""));
133 133
 			$button_args['install_status'] = isset($status['status']) ? $status['status'] : 'install';
134 134
 			$button_args['file'] = isset($status['file']) ? $status['file'] : '';
135 135
 		}
136 136
 
137 137
 		// set price
138
-		if(isset($addon->pricing) && !empty($addon->pricing)){
139
-			if(is_object($addon->pricing)){
138
+		if (isset($addon->pricing) && !empty($addon->pricing)) {
139
+			if (is_object($addon->pricing)) {
140 140
 				$prices = (Array)$addon->pricing;
141 141
 				$button_args['price'] = reset($prices);
142
-			}elseif(isset($addon->pricing)){
142
+			}elseif (isset($addon->pricing)) {
143 143
 				$button_args['price'] = $addon->pricing;
144 144
 			}
145 145
 		}
146 146
 
147 147
 		// set price text
148
-		if( $button_args['price'] && $button_args['price'] != '0.00' ){
149
-			$button_args['price_text'] = sprintf( __('From: $%d', 'invoicing'), $button_args['price']);
148
+		if ($button_args['price'] && $button_args['price'] != '0.00') {
149
+			$button_args['price_text'] = sprintf(__('From: $%d', 'invoicing'), $button_args['price']);
150 150
 		}
151 151
 
152 152
 
153 153
 		// set if installed
154
-		if(in_array($button_args['install_status'], array('installed','latest_installed','update_available','newer_installed'))){
154
+		if (in_array($button_args['install_status'], array('installed', 'latest_installed', 'update_available', 'newer_installed'))) {
155 155
 			$button_args['installed'] = true;
156 156
 		}
157 157
 
158 158
 //		print_r($button_args);
159 159
 		// set if active
160
-		if($button_args['installed'] && ($button_args['file'] || $button_args['type'] == 'themes')){
161
-			if($button_args['type'] != 'themes'){
160
+		if ($button_args['installed'] && ($button_args['file'] || $button_args['type'] == 'themes')) {
161
+			if ($button_args['type'] != 'themes') {
162 162
 				$button_args['active'] = is_plugin_active($button_args['file']);
163
-			}else{
163
+			} else {
164 164
 				$button_args['active'] = self::is_theme_active($addon);
165 165
 			}
166 166
 		}
167 167
 
168 168
 		// set button text and class
169
-		if($button_args['active']){
170
-			$button_args['button_text'] = __('Active','invoicing');
169
+		if ($button_args['active']) {
170
+			$button_args['button_text'] = __('Active', 'invoicing');
171 171
 			$button_args['class'] = ' button-secondary disabled ';
172
-		}elseif($button_args['installed']){
173
-			$button_args['button_text'] = __('Activate','invoicing');
172
+		}elseif ($button_args['installed']) {
173
+			$button_args['button_text'] = __('Activate', 'invoicing');
174 174
 
175
-			if($button_args['type'] != 'themes'){
176
-				if ( current_user_can( 'manage_options' ) ) {
177
-					$button_args['url'] = wp_nonce_url(admin_url('plugins.php?action=activate&plugin='.$button_args['file']), 'activate-plugin_' . $button_args['file']);
178
-				}else{
175
+			if ($button_args['type'] != 'themes') {
176
+				if (current_user_can('manage_options')) {
177
+					$button_args['url'] = wp_nonce_url(admin_url('plugins.php?action=activate&plugin=' . $button_args['file']), 'activate-plugin_' . $button_args['file']);
178
+				} else {
179 179
 					$button_args['url'] = '#';
180 180
 				}
181
-			}else{
182
-				if ( current_user_can( 'switch_themes' ) ) {
181
+			} else {
182
+				if (current_user_can('switch_themes')) {
183 183
 					$button_args['url'] = self::get_theme_activation_url($addon);
184
-				}else{
184
+				} else {
185 185
 					$button_args['url'] = '#';
186 186
 				}
187 187
 			}
188 188
 
189
-		}else{
190
-			if($button_args['type'] == 'recommended_plugins'){
191
-				$button_args['button_text'] = __('Install','invoicing');
192
-			}else{
193
-				$button_args['button_text'] = __('Get it','invoicing');
189
+		} else {
190
+			if ($button_args['type'] == 'recommended_plugins') {
191
+				$button_args['button_text'] = __('Install', 'invoicing');
192
+			} else {
193
+				$button_args['button_text'] = __('Get it', 'invoicing');
194 194
 
195 195
 				/*if($button_args['type'] == 'themes' && in_array($button_args['slug'],$wp_org_themes) ){
196 196
 					$button_args['button_text'] = __('Install','invoicing');
@@ -203,45 +203,45 @@  discard block
 block discarded – undo
203 203
 
204 204
 		
205 205
 		// filter the button arguments
206
-		$button_args = apply_filters('edd_api_button_args',$button_args);
206
+		$button_args = apply_filters('edd_api_button_args', $button_args);
207 207
 
208 208
 		// set price text
209
-		if(isset($button_args['price_text'])){
209
+		if (isset($button_args['price_text'])) {
210 210
 			?>
211 211
 			<a
212 212
 				target="_blank"
213 213
 				class="addons-price-text"
214
-				href="<?php echo esc_url( $button_args['link'] ); ?>">
215
-				<?php echo esc_html( $button_args['price_text'] ); ?>
214
+				href="<?php echo esc_url($button_args['link']); ?>">
215
+				<?php echo esc_html($button_args['price_text']); ?>
216 216
 			</a>
217 217
 			<?php
218 218
 		}
219 219
 
220 220
 
221 221
 		$target = '';
222
-		if ( ! empty( $button_args['url'] ) ) {
222
+		if (!empty($button_args['url'])) {
223 223
 			$target = strpos($button_args['url'], get_site_url()) !== false ? '' : ' target="_blank" ';
224 224
 		}
225 225
 
226 226
 		?>
227 227
 		<a
228
-			data-licence="<?php echo esc_attr($button_args['license']);?>"
229
-			data-licensing="<?php echo $button_args['licensing'] ? 1 : 0;?>"
230
-			data-title="<?php echo esc_attr($button_args['title']);?>"
231
-			data-type="<?php echo esc_attr($button_args['type']);?>"
232
-			data-text-error-message="<?php _e('Something went wrong!','invoicing');?>"
233
-			data-text-activate="<?php _e('Activate','invoicing');?>"
234
-			data-text-activating="<?php _e('Activating','invoicing');?>"
235
-			data-text-deactivate="<?php _e('Deactivate','invoicing');?>"
236
-			data-text-installed="<?php _e('Installed','invoicing');?>"
237
-			data-text-install="<?php _e('Install','invoicing');?>"
238
-			data-text-installing="<?php _e('Installing','invoicing');?>"
239
-			data-text-error="<?php _e('Error','invoicing');?>"
240
-			<?php if(!empty($button_args['onclick'])){echo " onclick='".$button_args['onclick']."' ";}?>
241
-			<?php echo $target;?>
242
-			class="addons-button  <?php echo esc_attr( $button_args['class'] ); ?>"
243
-			href="<?php echo esc_url( $button_args['url'] ); ?>">
244
-			<?php echo esc_html( $button_args['button_text'] ); ?>
228
+			data-licence="<?php echo esc_attr($button_args['license']); ?>"
229
+			data-licensing="<?php echo $button_args['licensing'] ? 1 : 0; ?>"
230
+			data-title="<?php echo esc_attr($button_args['title']); ?>"
231
+			data-type="<?php echo esc_attr($button_args['type']); ?>"
232
+			data-text-error-message="<?php _e('Something went wrong!', 'invoicing'); ?>"
233
+			data-text-activate="<?php _e('Activate', 'invoicing'); ?>"
234
+			data-text-activating="<?php _e('Activating', 'invoicing'); ?>"
235
+			data-text-deactivate="<?php _e('Deactivate', 'invoicing'); ?>"
236
+			data-text-installed="<?php _e('Installed', 'invoicing'); ?>"
237
+			data-text-install="<?php _e('Install', 'invoicing'); ?>"
238
+			data-text-installing="<?php _e('Installing', 'invoicing'); ?>"
239
+			data-text-error="<?php _e('Error', 'invoicing'); ?>"
240
+			<?php if (!empty($button_args['onclick'])) {echo " onclick='" . $button_args['onclick'] . "' "; }?>
241
+			<?php echo $target; ?>
242
+			class="addons-button  <?php echo esc_attr($button_args['class']); ?>"
243
+			href="<?php echo esc_url($button_args['url']); ?>">
244
+			<?php echo esc_html($button_args['button_text']); ?>
245 245
 		</a>
246 246
 		<?php
247 247
 
@@ -256,35 +256,35 @@  discard block
 block discarded – undo
256 256
 		$tabs            = self::get_tabs();
257 257
 		$sections        = self::get_sections();
258 258
 		$theme           = wp_get_theme();
259
-		$section_keys    = array_keys( $sections );
260
-		$current_section = isset( $_GET['section'] ) ? sanitize_text_field( $_GET['section'] ) : current( $section_keys );
261
-		$current_tab     = empty( $_GET['tab'] ) ? 'addons' : sanitize_title( $_GET['tab'] );
262
-		include_once( WPINV_PLUGIN_DIR . '/includes/admin/html-admin-page-addons.php' );
259
+		$section_keys    = array_keys($sections);
260
+		$current_section = isset($_GET['section']) ? sanitize_text_field($_GET['section']) : current($section_keys);
261
+		$current_tab     = empty($_GET['tab']) ? 'addons' : sanitize_title($_GET['tab']);
262
+		include_once(WPINV_PLUGIN_DIR . '/includes/admin/html-admin-page-addons.php');
263 263
 	}
264 264
 
265 265
 	/**
266 266
 	 * A list of recommended wp.org plugins.
267 267
 	 * @return array
268 268
 	 */
269
-	public function get_recommend_wp_plugins(){
269
+	public function get_recommend_wp_plugins() {
270 270
 		$plugins = array(
271 271
             'invoicing-quotes' => array(
272 272
                 'url'   => 'https://wordpress.org/plugins/invoicing-quotes/',
273 273
                 'slug'   => 'invoicing-quotes',
274 274
                 'name'   => 'Quotes',
275
-                'desc'   => __('Allows you to create quotes, send them to clients and convert them to Invoices when accepted by the customer.','invoicing'),
275
+                'desc'   => __('Allows you to create quotes, send them to clients and convert them to Invoices when accepted by the customer.', 'invoicing'),
276 276
             ),
277 277
             'geodirectory' => array(
278 278
                 'url'   => 'https://wordpress.org/plugins/geodirectory/',
279 279
                 'slug'   => 'geodirectory',
280 280
                 'name'   => 'GeoDirectory',
281
-                'desc'   => __('Turn any WordPress theme into a global business directory portal.','invoicing'),
281
+                'desc'   => __('Turn any WordPress theme into a global business directory portal.', 'invoicing'),
282 282
             ),
283 283
             'userswp' => array(
284 284
                 'url'   => 'https://wordpress.org/plugins/userswp/',
285 285
                 'slug'   => 'userswp',
286 286
                 'name'   => 'UsersWP',
287
-                'desc'   => __('Allow frontend user login and registration as well as have slick profile pages.','invoicing'),
287
+                'desc'   => __('Allow frontend user login and registration as well as have slick profile pages.', 'invoicing'),
288 288
             ),
289 289
 		);
290 290
 
Please login to merge, or discard this patch.
includes/libraries/class-ayecode-addons.php 3 patches
Doc Comments   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -51,8 +51,8 @@
 block discarded – undo
51 51
         /**
52 52
          * Get section for the addons screen.
53 53
          *
54
-         * @param  string $section_id
55 54
          *
55
+         * @param string $tab_id
56 56
          * @return object|bool
57 57
          */
58 58
         public function get_tab($tab_id)
Please login to merge, or discard this patch.
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -1,7 +1,7 @@
 block discarded – undo
1 1
 <?php
2 2
 // Exit if accessed directly
3
-if ( ! defined( 'ABSPATH' ) ) exit;
4
-if(!class_exists('Ayecode_Addons')) {
3
+if (!defined('ABSPATH')) exit;
4
+if (!class_exists('Ayecode_Addons')) {
5 5
 
6 6
     abstract class Ayecode_Addons
7 7
     {
Please login to merge, or discard this patch.
Braces   +3 added lines, -1 removed lines patch added patch discarded remove patch
@@ -1,6 +1,8 @@
 block discarded – undo
1 1
 <?php
2 2
 // Exit if accessed directly
3
-if ( ! defined( 'ABSPATH' ) ) exit;
3
+if ( ! defined( 'ABSPATH' ) ) {
4
+    exit;
5
+}
4 6
 if(!class_exists('Ayecode_Addons')) {
5 7
 
6 8
     abstract class Ayecode_Addons
Please login to merge, or discard this patch.
includes/admin/class-wpinv-admin-menus.php 1 patch
Spacing   +88 added lines, -88 removed lines patch added patch discarded remove patch
@@ -3,7 +3,7 @@  discard block
 block discarded – undo
3 3
  * Setup menus in WP admin.
4 4
  */
5 5
 
6
-defined( 'ABSPATH' ) || exit;
6
+defined('ABSPATH') || exit;
7 7
 
8 8
 /**
9 9
  * WC_Admin_Menus Class.
@@ -13,34 +13,34 @@  discard block
 block discarded – undo
13 13
      * Hook in tabs.
14 14
      */
15 15
     public function __construct() {
16
-        add_action( 'admin_menu', array( $this, 'admin_menu' ), 10 );
17
-        add_action( 'admin_menu', array( $this, 'add_addons_menu' ), 99 );
18
-        add_action( 'admin_menu', array( $this, 'remove_admin_submenus' ), 10 );
19
-        add_action( 'admin_head-nav-menus.php', array( $this, 'add_nav_menu_meta_boxes' ) );
16
+        add_action('admin_menu', array($this, 'admin_menu'), 10);
17
+        add_action('admin_menu', array($this, 'add_addons_menu'), 99);
18
+        add_action('admin_menu', array($this, 'remove_admin_submenus'), 10);
19
+        add_action('admin_head-nav-menus.php', array($this, 'add_nav_menu_meta_boxes'));
20 20
     }
21 21
 
22 22
     public function admin_menu() {
23 23
         global $menu;
24 24
 
25
-        if ( !(current_user_can( 'manage_invoicing' ) || current_user_can( 'manage_options' )) ) {
25
+        if (!(current_user_can('manage_invoicing') || current_user_can('manage_options'))) {
26 26
             return;
27 27
         }
28 28
 
29
-        $capability = apply_filters( 'invoicing_capability', 'manage_invoicing' );
29
+        $capability = apply_filters('invoicing_capability', 'manage_invoicing');
30 30
 
31
-        if ( current_user_can( 'manage_options' ) ) {
32
-            $menu[] = array( '', 'read', 'separator-wpinv', '', 'wp-menu-separator wpinv' );
31
+        if (current_user_can('manage_options')) {
32
+            $menu[] = array('', 'read', 'separator-wpinv', '', 'wp-menu-separator wpinv');
33 33
         }
34 34
 
35
-        $wpi_invoice = get_post_type_object( 'wpi_invoice' );
35
+        $wpi_invoice = get_post_type_object('wpi_invoice');
36 36
 
37
-        add_menu_page( __( 'Invoicing', 'invoicing' ), __( 'Invoicing', 'invoicing' ), $capability, 'wpinv', null, $wpi_invoice->menu_icon, '54.123460' );
37
+        add_menu_page(__('Invoicing', 'invoicing'), __('Invoicing', 'invoicing'), $capability, 'wpinv', null, $wpi_invoice->menu_icon, '54.123460');
38 38
 
39
-        add_submenu_page( 'wpinv', __( 'Invoice Settings', 'invoicing' ), __( 'Settings', 'invoicing' ), $capability, 'wpinv-settings', array( $this, 'options_page' ));
39
+        add_submenu_page('wpinv', __('Invoice Settings', 'invoicing'), __('Settings', 'invoicing'), $capability, 'wpinv-settings', array($this, 'options_page'));
40 40
     }
41 41
 
42
-    public function add_addons_menu(){
43
-        if ( !apply_filters( 'wpi_show_addons_page', true ) ) {
42
+    public function add_addons_menu() {
43
+        if (!apply_filters('wpi_show_addons_page', true)) {
44 44
             return;
45 45
         }
46 46
 
@@ -50,78 +50,78 @@  discard block
 block discarded – undo
50 50
             __('Extensions', 'userswp'),
51 51
             'manage_options',
52 52
             'wpi-addons',
53
-            array( $this, 'addons_page' )
53
+            array($this, 'addons_page')
54 54
         );
55 55
     }
56 56
 
57
-    public function addons_page(){
57
+    public function addons_page() {
58 58
         $addon_obj = new WPInv_Admin_Addons();
59 59
         $addon_obj->output();
60 60
     }
61 61
 
62 62
     function options_page() {
63
-        $page       = isset( $_GET['page'] )                ? strtolower( $_GET['page'] )               : false;
63
+        $page = isset($_GET['page']) ? strtolower($_GET['page']) : false;
64 64
 
65
-        if ( $page !== 'wpinv-settings' ) {
65
+        if ($page !== 'wpinv-settings') {
66 66
             return;
67 67
         }
68 68
 
69 69
         $settings_tabs = wpinv_get_settings_tabs();
70 70
         $settings_tabs = empty($settings_tabs) ? array() : $settings_tabs;
71
-        $active_tab    = isset( $_GET['tab'] ) && array_key_exists( $_GET['tab'], $settings_tabs ) ? sanitize_text_field( $_GET['tab'] ) : 'general';
72
-        $sections      = wpinv_get_settings_tab_sections( $active_tab );
71
+        $active_tab    = isset($_GET['tab']) && array_key_exists($_GET['tab'], $settings_tabs) ? sanitize_text_field($_GET['tab']) : 'general';
72
+        $sections      = wpinv_get_settings_tab_sections($active_tab);
73 73
         $key           = 'main';
74 74
 
75
-        if ( is_array( $sections ) ) {
76
-            $key = key( $sections );
75
+        if (is_array($sections)) {
76
+            $key = key($sections);
77 77
         }
78 78
 
79
-        $registered_sections = wpinv_get_settings_tab_sections( $active_tab );
80
-        $section             = isset( $_GET['section'] ) && ! empty( $registered_sections ) && array_key_exists( $_GET['section'], $registered_sections ) ? $_GET['section'] : $key;
79
+        $registered_sections = wpinv_get_settings_tab_sections($active_tab);
80
+        $section             = isset($_GET['section']) && !empty($registered_sections) && array_key_exists($_GET['section'], $registered_sections) ? $_GET['section'] : $key;
81 81
         ob_start();
82 82
         ?>
83 83
         <div class="wrap">
84 84
             <h1 class="nav-tab-wrapper">
85 85
                 <?php
86
-                foreach( wpinv_get_settings_tabs() as $tab_id => $tab_name ) {
87
-                    $tab_url = add_query_arg( array(
86
+                foreach (wpinv_get_settings_tabs() as $tab_id => $tab_name) {
87
+                    $tab_url = add_query_arg(array(
88 88
                         'settings-updated' => false,
89 89
                         'tab' => $tab_id,
90
-                    ) );
90
+                    ));
91 91
 
92 92
                     // Remove the section from the tabs so we always end up at the main section
93
-                    $tab_url = remove_query_arg( 'section', $tab_url );
94
-                    $tab_url = remove_query_arg( 'wpi_sub', $tab_url );
93
+                    $tab_url = remove_query_arg('section', $tab_url);
94
+                    $tab_url = remove_query_arg('wpi_sub', $tab_url);
95 95
 
96 96
                     $active = $active_tab == $tab_id ? ' nav-tab-active' : '';
97 97
 
98
-                    echo '<a href="' . esc_url( $tab_url ) . '" title="' . esc_attr( $tab_name ) . '" class="nav-tab' . $active . '">';
99
-                    echo esc_html( $tab_name );
98
+                    echo '<a href="' . esc_url($tab_url) . '" title="' . esc_attr($tab_name) . '" class="nav-tab' . $active . '">';
99
+                    echo esc_html($tab_name);
100 100
                     echo '</a>';
101 101
                 }
102 102
                 ?>
103 103
             </h1>
104 104
             <?php
105
-            $number_of_sections = count( $sections );
105
+            $number_of_sections = count($sections);
106 106
             $number = 0;
107
-            if ( $number_of_sections > 1 ) {
107
+            if ($number_of_sections > 1) {
108 108
                 echo '<div><ul class="subsubsub">';
109
-                foreach( $sections as $section_id => $section_name ) {
109
+                foreach ($sections as $section_id => $section_name) {
110 110
                     echo '<li>';
111 111
                     $number++;
112
-                    $tab_url = add_query_arg( array(
112
+                    $tab_url = add_query_arg(array(
113 113
                         'settings-updated' => false,
114 114
                         'tab' => $active_tab,
115 115
                         'section' => $section_id
116
-                    ) );
117
-                    $tab_url = remove_query_arg( 'wpi_sub', $tab_url );
116
+                    ));
117
+                    $tab_url = remove_query_arg('wpi_sub', $tab_url);
118 118
                     $class = '';
119
-                    if ( $section == $section_id ) {
119
+                    if ($section == $section_id) {
120 120
                         $class = 'current';
121 121
                     }
122
-                    echo '<a class="' . $class . '" href="' . esc_url( $tab_url ) . '">' . $section_name . '</a>';
122
+                    echo '<a class="' . $class . '" href="' . esc_url($tab_url) . '">' . $section_name . '</a>';
123 123
 
124
-                    if ( $number != $number_of_sections ) {
124
+                    if ($number != $number_of_sections) {
125 125
                         echo ' | ';
126 126
                     }
127 127
                     echo '</li>';
@@ -133,19 +133,19 @@  discard block
 block discarded – undo
133 133
                 <form method="post" action="options.php">
134 134
                     <table class="form-table">
135 135
                         <?php
136
-                        settings_fields( 'wpinv_settings' );
136
+                        settings_fields('wpinv_settings');
137 137
 
138
-                        if ( 'main' === $section ) {
139
-                            do_action( 'wpinv_settings_tab_top', $active_tab );
138
+                        if ('main' === $section) {
139
+                            do_action('wpinv_settings_tab_top', $active_tab);
140 140
                         }
141 141
 
142
-                        do_action( 'wpinv_settings_tab_top_' . $active_tab . '_' . $section, $active_tab, $section );
143
-                        do_settings_sections( 'wpinv_settings_' . $active_tab . '_' . $section, $active_tab, $section );
144
-                        do_action( 'wpinv_settings_tab_bottom_' . $active_tab . '_' . $section, $active_tab, $section );
142
+                        do_action('wpinv_settings_tab_top_' . $active_tab . '_' . $section, $active_tab, $section);
143
+                        do_settings_sections('wpinv_settings_' . $active_tab . '_' . $section, $active_tab, $section);
144
+                        do_action('wpinv_settings_tab_bottom_' . $active_tab . '_' . $section, $active_tab, $section);
145 145
 
146 146
                         // For backwards compatibility
147
-                        if ( 'main' === $section ) {
148
-                            do_action( 'wpinv_settings_tab_bottom', $active_tab );
147
+                        if ('main' === $section) {
148
+                            do_action('wpinv_settings_tab_bottom', $active_tab);
149 149
                         }
150 150
                         ?>
151 151
                     </table>
@@ -159,52 +159,52 @@  discard block
 block discarded – undo
159 159
     }
160 160
 
161 161
     public function remove_admin_submenus() {
162
-        remove_submenu_page( 'edit.php?post_type=wpi_invoice', 'post-new.php?post_type=wpi_invoice' );
162
+        remove_submenu_page('edit.php?post_type=wpi_invoice', 'post-new.php?post_type=wpi_invoice');
163 163
     }
164 164
 
165
-    public function add_nav_menu_meta_boxes(){
166
-        add_meta_box( 'wpinv_endpoints_nav_link', __( 'Invoicing Pages', 'invoicing' ), array( $this, 'nav_menu_links' ), 'nav-menus', 'side', 'low' );
165
+    public function add_nav_menu_meta_boxes() {
166
+        add_meta_box('wpinv_endpoints_nav_link', __('Invoicing Pages', 'invoicing'), array($this, 'nav_menu_links'), 'nav-menus', 'side', 'low');
167 167
     }
168 168
 
169
-    public function nav_menu_links(){
169
+    public function nav_menu_links() {
170 170
         $endpoints = $this->get_menu_items();
171 171
         ?>
172 172
         <div id="invoicing-endpoints" class="posttypediv">
173
-        <?php if(!empty($endpoints['pages'])){ ?>
173
+        <?php if (!empty($endpoints['pages'])) { ?>
174 174
             <div id="tabs-panel-invoicing-endpoints" class="tabs-panel tabs-panel-active">
175 175
                 <ul id="invoicing-endpoints-checklist" class="categorychecklist form-no-clear">
176 176
                     <?php
177 177
                     $walker = new Walker_Nav_Menu_Checklist(array());
178
-                    echo walk_nav_menu_tree(array_map('wp_setup_nav_menu_item', $endpoints['pages']), 0, (object) array('walker' => $walker));
178
+                    echo walk_nav_menu_tree(array_map('wp_setup_nav_menu_item', $endpoints['pages']), 0, (object)array('walker' => $walker));
179 179
                     ?>
180 180
                 </ul>
181 181
             </div>
182 182
         <?php } ?>
183 183
         <p class="button-controls">
184 184
         <span class="list-controls">
185
-            <a href="<?php echo admin_url( 'nav-menus.php?page-tab=all&selectall=1#invoicing-endpoints' ); ?>" class="select-all"><?php _e( 'Select all', 'invoicing' ); ?></a>
185
+            <a href="<?php echo admin_url('nav-menus.php?page-tab=all&selectall=1#invoicing-endpoints'); ?>" class="select-all"><?php _e('Select all', 'invoicing'); ?></a>
186 186
         </span>
187 187
             <span class="add-to-menu">
188
-            <input type="submit" class="button-secondary submit-add-to-menu right" value="<?php esc_attr_e( 'Add to menu', 'invoicing' ); ?>" name="add-post-type-menu-item" id="submit-invoicing-endpoints">
188
+            <input type="submit" class="button-secondary submit-add-to-menu right" value="<?php esc_attr_e('Add to menu', 'invoicing'); ?>" name="add-post-type-menu-item" id="submit-invoicing-endpoints">
189 189
             <span class="spinner"></span>
190 190
         </span>
191 191
         </p>
192 192
         <?php
193 193
     }
194 194
 
195
-    public function get_menu_items(){
195
+    public function get_menu_items() {
196 196
         $items = array();
197 197
 
198
-        $wpinv_history_page_id = (int)wpinv_get_option( 'invoice_history_page' );
199
-        if($wpinv_history_page_id > 0){
198
+        $wpinv_history_page_id = (int)wpinv_get_option('invoice_history_page');
199
+        if ($wpinv_history_page_id > 0) {
200 200
             $item = new stdClass();
201 201
             $item->object_id = $wpinv_history_page_id;
202 202
             $item->db_id = 0;
203
-            $item->object =  'page';
203
+            $item->object = 'page';
204 204
             $item->menu_item_parent = 0;
205 205
             $item->type = 'post_type';
206
-            $item->title = __('Invoice History Page','invoicing');
207
-            $item->url = get_permalink( $wpinv_history_page_id );
206
+            $item->title = __('Invoice History Page', 'invoicing');
207
+            $item->url = get_permalink($wpinv_history_page_id);
208 208
             $item->target = '';
209 209
             $item->attr_title = '';
210 210
             $item->classes = array('wpinv-menu-item');
@@ -213,16 +213,16 @@  discard block
 block discarded – undo
213 213
             $items['pages'][] = $item;
214 214
         }
215 215
 
216
-        $wpinv_sub_history_page_id = (int)wpinv_get_option( 'invoice_subscription_page' );
217
-        if($wpinv_sub_history_page_id > 0){
216
+        $wpinv_sub_history_page_id = (int)wpinv_get_option('invoice_subscription_page');
217
+        if ($wpinv_sub_history_page_id > 0) {
218 218
             $item = new stdClass();
219 219
             $item->object_id = $wpinv_sub_history_page_id;
220 220
             $item->db_id = 0;
221
-            $item->object =  'page';
221
+            $item->object = 'page';
222 222
             $item->menu_item_parent = 0;
223 223
             $item->type = 'post_type';
224
-            $item->title = __('Invoice Subscriptions Page','invoicing');
225
-            $item->url = get_permalink( $wpinv_sub_history_page_id );
224
+            $item->title = __('Invoice Subscriptions Page', 'invoicing');
225
+            $item->url = get_permalink($wpinv_sub_history_page_id);
226 226
             $item->target = '';
227 227
             $item->attr_title = '';
228 228
             $item->classes = array('wpinv-menu-item');
@@ -231,16 +231,16 @@  discard block
 block discarded – undo
231 231
             $items['pages'][] = $item;
232 232
         }
233 233
 
234
-        $wpinv_checkout_page_id = (int)wpinv_get_option( 'checkout_page' );
235
-        if($wpinv_checkout_page_id > 0){
234
+        $wpinv_checkout_page_id = (int)wpinv_get_option('checkout_page');
235
+        if ($wpinv_checkout_page_id > 0) {
236 236
             $item = new stdClass();
237 237
             $item->object_id = $wpinv_checkout_page_id;
238 238
             $item->db_id = 0;
239
-            $item->object =  'page';
239
+            $item->object = 'page';
240 240
             $item->menu_item_parent = 0;
241 241
             $item->type = 'post_type';
242
-            $item->title = __('Checkout Page','invoicing');
243
-            $item->url = get_permalink( $wpinv_checkout_page_id );
242
+            $item->title = __('Checkout Page', 'invoicing');
243
+            $item->url = get_permalink($wpinv_checkout_page_id);
244 244
             $item->target = '';
245 245
             $item->attr_title = '';
246 246
             $item->classes = array('wpinv-menu-item');
@@ -249,16 +249,16 @@  discard block
 block discarded – undo
249 249
             $items['pages'][] = $item;
250 250
         }
251 251
 
252
-        $wpinv_tandc_page_id = (int)wpinv_get_option( 'tandc_page' );
253
-        if($wpinv_tandc_page_id > 0){
252
+        $wpinv_tandc_page_id = (int)wpinv_get_option('tandc_page');
253
+        if ($wpinv_tandc_page_id > 0) {
254 254
             $item = new stdClass();
255 255
             $item->object_id = $wpinv_tandc_page_id;
256 256
             $item->db_id = 0;
257
-            $item->object =  'page';
257
+            $item->object = 'page';
258 258
             $item->menu_item_parent = 0;
259 259
             $item->type = 'post_type';
260
-            $item->title = __('Terms & Conditions','invoicing');
261
-            $item->url = get_permalink( $wpinv_tandc_page_id );
260
+            $item->title = __('Terms & Conditions', 'invoicing');
261
+            $item->url = get_permalink($wpinv_tandc_page_id);
262 262
             $item->target = '';
263 263
             $item->attr_title = '';
264 264
             $item->classes = array('wpinv-menu-item');
@@ -267,16 +267,16 @@  discard block
 block discarded – undo
267 267
             $items['pages'][] = $item;
268 268
         }
269 269
 
270
-        $wpinv_success_page_id = (int)wpinv_get_option( 'success_page' );
271
-        if($wpinv_success_page_id > 0){
270
+        $wpinv_success_page_id = (int)wpinv_get_option('success_page');
271
+        if ($wpinv_success_page_id > 0) {
272 272
             $item = new stdClass();
273 273
             $item->object_id = $wpinv_success_page_id;
274 274
             $item->db_id = 0;
275
-            $item->object =  'page';
275
+            $item->object = 'page';
276 276
             $item->menu_item_parent = 0;
277 277
             $item->type = 'post_type';
278
-            $item->title = __('Success Page','invoicing');
279
-            $item->url = get_permalink( $wpinv_success_page_id );
278
+            $item->title = __('Success Page', 'invoicing');
279
+            $item->url = get_permalink($wpinv_success_page_id);
280 280
             $item->target = '';
281 281
             $item->attr_title = '';
282 282
             $item->classes = array('wpinv-menu-item');
@@ -285,16 +285,16 @@  discard block
 block discarded – undo
285 285
             $items['pages'][] = $item;
286 286
         }
287 287
 
288
-        $wpinv_failure_page_id = (int)wpinv_get_option( 'failure_page' );
289
-        if($wpinv_failure_page_id > 0){
288
+        $wpinv_failure_page_id = (int)wpinv_get_option('failure_page');
289
+        if ($wpinv_failure_page_id > 0) {
290 290
             $item = new stdClass();
291 291
             $item->object_id = $wpinv_failure_page_id;
292 292
             $item->db_id = 0;
293
-            $item->object =  'page';
293
+            $item->object = 'page';
294 294
             $item->menu_item_parent = 0;
295 295
             $item->type = 'post_type';
296
-            $item->title = __('Failed Transaction Page','invoicing');
297
-            $item->url = get_permalink( $wpinv_failure_page_id );
296
+            $item->title = __('Failed Transaction Page', 'invoicing');
297
+            $item->url = get_permalink($wpinv_failure_page_id);
298 298
             $item->target = '';
299 299
             $item->attr_title = '';
300 300
             $item->classes = array('wpinv-menu-item');
@@ -303,7 +303,7 @@  discard block
 block discarded – undo
303 303
             $items['pages'][] = $item;
304 304
         }
305 305
 
306
-        return apply_filters( 'wpinv_menu_items', $items );
306
+        return apply_filters('wpinv_menu_items', $items);
307 307
     }
308 308
 
309 309
 }
Please login to merge, or discard this patch.
vendor/ayecode/wp-font-awesome-settings/wp-font-awesome-settings.php 2 patches
Indentation   +385 added lines, -385 removed lines patch added patch discarded remove patch
@@ -13,7 +13,7 @@  discard block
 block discarded – undo
13 13
  * Bail if we are not in WP.
14 14
  */
15 15
 if ( ! defined( 'ABSPATH' ) ) {
16
-	exit;
16
+    exit;
17 17
 }
18 18
 
19 19
 /**
@@ -21,294 +21,294 @@  discard block
 block discarded – undo
21 21
  */
22 22
 if ( ! class_exists( 'WP_Font_Awesome_Settings' ) ) {
23 23
 
24
-	/**
25
-	 * A Class to be able to change settings for Font Awesome.
26
-	 *
27
-	 * Class WP_Font_Awesome_Settings
28
-	 * @since 1.0.10 Now able to pass wp.org theme check.
29
-	 * @since 1.0.11 Font Awesome Pro now supported.
30
-	 * @since 1.0.11 Font Awesome Kits now supported.
31
-	 * @ver 1.0.11
32
-	 * @todo decide how to implement textdomain
33
-	 */
34
-	class WP_Font_Awesome_Settings {
35
-
36
-		/**
37
-		 * Class version version.
38
-		 *
39
-		 * @var string
40
-		 */
41
-		public $version = '1.0.11';
42
-
43
-		/**
44
-		 * Class textdomain.
45
-		 *
46
-		 * @var string
47
-		 */
48
-		public $textdomain = 'font-awesome-settings';
49
-
50
-		/**
51
-		 * Latest version of Font Awesome at time of publish published.
52
-		 *
53
-		 * @var string
54
-		 */
55
-		public $latest = "5.8.2";
56
-
57
-		/**
58
-		 * The title.
59
-		 *
60
-		 * @var string
61
-		 */
62
-		public $name = 'Font Awesome';
63
-
64
-		/**
65
-		 * Holds the settings values.
66
-		 *
67
-		 * @var array
68
-		 */
69
-		private $settings;
70
-
71
-		/**
72
-		 * WP_Font_Awesome_Settings instance.
73
-		 *
74
-		 * @access private
75
-		 * @since  1.0.0
76
-		 * @var    WP_Font_Awesome_Settings There can be only one!
77
-		 */
78
-		private static $instance = null;
79
-
80
-		/**
81
-		 * Main WP_Font_Awesome_Settings Instance.
82
-		 *
83
-		 * Ensures only one instance of WP_Font_Awesome_Settings is loaded or can be loaded.
84
-		 *
85
-		 * @since 1.0.0
86
-		 * @static
87
-		 * @return WP_Font_Awesome_Settings - Main instance.
88
-		 */
89
-		public static function instance() {
90
-			if ( ! isset( self::$instance ) && ! ( self::$instance instanceof WP_Font_Awesome_Settings ) ) {
91
-				self::$instance = new WP_Font_Awesome_Settings;
92
-
93
-				add_action( 'init', array( self::$instance, 'init' ) ); // set settings
94
-
95
-				if ( is_admin() ) {
96
-					add_action( 'admin_menu', array( self::$instance, 'menu_item' ) );
97
-					add_action( 'admin_init', array( self::$instance, 'register_settings' ) );
98
-				}
99
-
100
-				do_action( 'wp_font_awesome_settings_loaded' );
101
-			}
102
-
103
-			return self::$instance;
104
-		}
105
-
106
-		/**
107
-		 * Initiate the settings and add the required action hooks.
108
-		 *
109
-		 * @since 1.0.8 Settings name wrong - FIXED
110
-		 */
111
-		public function init() {
112
-			$this->settings = $this->get_settings();
113
-
114
-			if ( $this->settings['type'] == 'CSS' ) {
115
-
116
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) {
117
-					add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 );
118
-				}
119
-
120
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) {
121
-					add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 );
122
-				}
123
-
124
-			} else {
125
-
126
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) {
127
-					add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 );
128
-				}
129
-
130
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) {
131
-					add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 );
132
-				}
133
-			}
134
-
135
-			// remove font awesome if set to do so
136
-			if ( $this->settings['dequeue'] == '1' ) {
137
-				add_action( 'clean_url', array( $this, 'remove_font_awesome' ), 5000, 3 );
138
-			}
139
-
140
-		}
141
-
142
-		/**
143
-		 * Adds the Font Awesome styles.
144
-		 */
145
-		public function enqueue_style() {
146
-			// build url
147
-			$url = $this->get_url();
148
-
149
-			wp_deregister_style( 'font-awesome' ); // deregister in case its already there
150
-			wp_register_style( 'font-awesome', $url, array(), null );
151
-			wp_enqueue_style( 'font-awesome' );
152
-
153
-			if ( $this->settings['shims'] ) {
154
-				$url = $this->get_url( true );
155
-				wp_deregister_style( 'font-awesome-shims' ); // deregister in case its already there
156
-				wp_register_style( 'font-awesome-shims', $url, array(), null );
157
-				wp_enqueue_style( 'font-awesome-shims' );
158
-			}
159
-		}
160
-
161
-		/**
162
-		 * Adds the Font Awesome JS.
163
-		 */
164
-		public function enqueue_scripts() {
165
-			// build url
166
-			$url = $this->get_url();
167
-
168
-			$deregister_function = 'wp' . '_' . 'deregister' . '_' . 'script';
169
-			call_user_func( $deregister_function, 'font-awesome' ); // deregister in case its already there
170
-			wp_register_script( 'font-awesome', $url, array(), null );
171
-			wp_enqueue_script( 'font-awesome' );
172
-
173
-			if ( $this->settings['shims'] ) {
174
-				$url = $this->get_url( true );
175
-				call_user_func( $deregister_function, 'font-awesome-shims' ); // deregister in case its already there
176
-				wp_register_script( 'font-awesome-shims', $url, array(), null );
177
-				wp_enqueue_script( 'font-awesome-shims' );
178
-			}
179
-		}
180
-
181
-		/**
182
-		 * Get the url of the Font Awesome files.
183
-		 *
184
-		 * @param bool $shims If this is a shim file or not.
185
-		 *
186
-		 * @return string The url to the file.
187
-		 */
188
-		public function get_url( $shims = false ) {
189
-			$script  = $shims ? 'v4-shims' : 'all';
190
-			$sub     = $this->settings['pro'] ? 'pro' : 'use';
191
-			$type    = $this->settings['type'];
192
-			$version = $this->settings['version'];
193
-			$kit_url = $this->settings['kit-url'] ? esc_url( $this->settings['kit-url'] ) : '';
194
-			$url     = '';
195
-
196
-			if ( $type == 'KIT' && $kit_url ) {
197
-				if ( $shims ) {
198
-					// if its a kit then we don't add shims here
199
-					return '';
200
-				}
201
-				$url .= $kit_url; // CDN
202
-				$url .= "?wpfas=true"; // set our var so our version is not removed
203
-			} else {
204
-				$url .= "https://$sub.fontawesome.com/releases/"; // CDN
205
-				$url .= ! empty( $version ) ? "v" . $version . '/' : "v" . $this->get_latest_version() . '/'; // version
206
-				$url .= $type == 'CSS' ? 'css/' : 'js/'; // type
207
-				$url .= $type == 'CSS' ? $script . '.css' : $script . '.js'; // type
208
-				$url .= "?wpfas=true"; // set our var so our version is not removed
209
-			}
210
-
211
-			return $url;
212
-		}
213
-
214
-		/**
215
-		 * Try and remove any other versions of Font Awesome added by other plugins/themes.
216
-		 *
217
-		 * Uses the clean_url filter to try and remove any other Font Awesome files added, it can also add pseudo-elements flag for the JS version.
218
-		 *
219
-		 * @param $url
220
-		 * @param $original_url
221
-		 * @param $_context
222
-		 *
223
-		 * @return string The filtered url.
224
-		 */
225
-		public function remove_font_awesome( $url, $original_url, $_context ) {
226
-
227
-			if ( $_context == 'display'
228
-			     && ( strstr( $url, "fontawesome" ) !== false || strstr( $url, "font-awesome" ) !== false )
229
-			     && ( strstr( $url, ".js" ) !== false || strstr( $url, ".css" ) !== false )
230
-			) {// it's a font-awesome-url (probably)
231
-
232
-				if ( strstr( $url, "wpfas=true" ) !== false ) {
233
-					if ( $this->settings['type'] == 'JS' ) {
234
-						if ( $this->settings['js-pseudo'] ) {
235
-							$url .= "' data-search-pseudo-elements defer='defer";
236
-						} else {
237
-							$url .= "' defer='defer";
238
-						}
239
-					}
240
-				} else {
241
-					$url = ''; // removing the url removes the file
242
-				}
243
-
244
-			}
245
-
246
-			return $url;
247
-		}
248
-
249
-		/**
250
-		 * Register the database settings with WordPress.
251
-		 */
252
-		public function register_settings() {
253
-			register_setting( 'wp-font-awesome-settings', 'wp-font-awesome-settings' );
254
-		}
255
-
256
-		/**
257
-		 * Add the WordPress settings menu item.
258
-		 * @since 1.0.10 Calling function name direct will fail theme check so we don't.
259
-		 */
260
-		public function menu_item() {
261
-			$menu_function = 'add' . '_' . 'options' . '_' . 'page'; // won't pass theme check if function name present in theme
262
-			call_user_func( $menu_function, $this->name, $this->name, 'manage_options', 'wp-font-awesome-settings', array(
263
-				$this,
264
-				'settings_page'
265
-			) );
266
-		}
267
-
268
-		/**
269
-		 * Get the current Font Awesome output settings.
270
-		 *
271
-		 * @return array The array of settings.
272
-		 */
273
-		public function get_settings() {
274
-
275
-			$db_settings = get_option( 'wp-font-awesome-settings' );
276
-
277
-			$defaults = array(
278
-				'type'      => 'CSS', // type to use, CSS or JS or KIT
279
-				'version'   => '', // latest
280
-				'enqueue'   => '', // front and backend
281
-				'shims'     => '1', // default on for now, @todo maybe change to off in 2020
282
-				'js-pseudo' => '0', // if the pseudo elements flag should be set (CPU intensive)
283
-				'dequeue'   => '0', // if we should try to remove other versions added by other plugins/themes
284
-				'pro'       => '0', // if pro CDN url should be used
285
-				'kit-url'   => '', // the kit url
286
-			);
287
-
288
-			$settings = wp_parse_args( $db_settings, $defaults );
289
-
290
-			/**
291
-			 * Filter the Font Awesome settings.
292
-			 *
293
-			 * @todo if we add this filer people might use it and then it defeates the purpose of this class :/
294
-			 */
295
-			return $this->settings = apply_filters( 'wp-font-awesome-settings', $settings, $db_settings, $defaults );
296
-		}
297
-
298
-
299
-		/**
300
-		 * The settings page html output.
301
-		 */
302
-		public function settings_page() {
303
-			if ( ! current_user_can( 'manage_options' ) ) {
304
-				wp_die( __( 'You do not have sufficient permissions to access this page.', 'font-awesome-settings' ) );
305
-			}
306
-
307
-			// a hidden way to force the update of the verison number vai api instead of waiting the 48 hours
308
-			if ( isset( $_REQUEST['force-version-check'] ) ) {
309
-				$this->get_latest_version( $force_api = true );
310
-			}
311
-			?>
24
+    /**
25
+     * A Class to be able to change settings for Font Awesome.
26
+     *
27
+     * Class WP_Font_Awesome_Settings
28
+     * @since 1.0.10 Now able to pass wp.org theme check.
29
+     * @since 1.0.11 Font Awesome Pro now supported.
30
+     * @since 1.0.11 Font Awesome Kits now supported.
31
+     * @ver 1.0.11
32
+     * @todo decide how to implement textdomain
33
+     */
34
+    class WP_Font_Awesome_Settings {
35
+
36
+        /**
37
+         * Class version version.
38
+         *
39
+         * @var string
40
+         */
41
+        public $version = '1.0.11';
42
+
43
+        /**
44
+         * Class textdomain.
45
+         *
46
+         * @var string
47
+         */
48
+        public $textdomain = 'font-awesome-settings';
49
+
50
+        /**
51
+         * Latest version of Font Awesome at time of publish published.
52
+         *
53
+         * @var string
54
+         */
55
+        public $latest = "5.8.2";
56
+
57
+        /**
58
+         * The title.
59
+         *
60
+         * @var string
61
+         */
62
+        public $name = 'Font Awesome';
63
+
64
+        /**
65
+         * Holds the settings values.
66
+         *
67
+         * @var array
68
+         */
69
+        private $settings;
70
+
71
+        /**
72
+         * WP_Font_Awesome_Settings instance.
73
+         *
74
+         * @access private
75
+         * @since  1.0.0
76
+         * @var    WP_Font_Awesome_Settings There can be only one!
77
+         */
78
+        private static $instance = null;
79
+
80
+        /**
81
+         * Main WP_Font_Awesome_Settings Instance.
82
+         *
83
+         * Ensures only one instance of WP_Font_Awesome_Settings is loaded or can be loaded.
84
+         *
85
+         * @since 1.0.0
86
+         * @static
87
+         * @return WP_Font_Awesome_Settings - Main instance.
88
+         */
89
+        public static function instance() {
90
+            if ( ! isset( self::$instance ) && ! ( self::$instance instanceof WP_Font_Awesome_Settings ) ) {
91
+                self::$instance = new WP_Font_Awesome_Settings;
92
+
93
+                add_action( 'init', array( self::$instance, 'init' ) ); // set settings
94
+
95
+                if ( is_admin() ) {
96
+                    add_action( 'admin_menu', array( self::$instance, 'menu_item' ) );
97
+                    add_action( 'admin_init', array( self::$instance, 'register_settings' ) );
98
+                }
99
+
100
+                do_action( 'wp_font_awesome_settings_loaded' );
101
+            }
102
+
103
+            return self::$instance;
104
+        }
105
+
106
+        /**
107
+         * Initiate the settings and add the required action hooks.
108
+         *
109
+         * @since 1.0.8 Settings name wrong - FIXED
110
+         */
111
+        public function init() {
112
+            $this->settings = $this->get_settings();
113
+
114
+            if ( $this->settings['type'] == 'CSS' ) {
115
+
116
+                if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) {
117
+                    add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 );
118
+                }
119
+
120
+                if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) {
121
+                    add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 );
122
+                }
123
+
124
+            } else {
125
+
126
+                if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) {
127
+                    add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 );
128
+                }
129
+
130
+                if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) {
131
+                    add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 );
132
+                }
133
+            }
134
+
135
+            // remove font awesome if set to do so
136
+            if ( $this->settings['dequeue'] == '1' ) {
137
+                add_action( 'clean_url', array( $this, 'remove_font_awesome' ), 5000, 3 );
138
+            }
139
+
140
+        }
141
+
142
+        /**
143
+         * Adds the Font Awesome styles.
144
+         */
145
+        public function enqueue_style() {
146
+            // build url
147
+            $url = $this->get_url();
148
+
149
+            wp_deregister_style( 'font-awesome' ); // deregister in case its already there
150
+            wp_register_style( 'font-awesome', $url, array(), null );
151
+            wp_enqueue_style( 'font-awesome' );
152
+
153
+            if ( $this->settings['shims'] ) {
154
+                $url = $this->get_url( true );
155
+                wp_deregister_style( 'font-awesome-shims' ); // deregister in case its already there
156
+                wp_register_style( 'font-awesome-shims', $url, array(), null );
157
+                wp_enqueue_style( 'font-awesome-shims' );
158
+            }
159
+        }
160
+
161
+        /**
162
+         * Adds the Font Awesome JS.
163
+         */
164
+        public function enqueue_scripts() {
165
+            // build url
166
+            $url = $this->get_url();
167
+
168
+            $deregister_function = 'wp' . '_' . 'deregister' . '_' . 'script';
169
+            call_user_func( $deregister_function, 'font-awesome' ); // deregister in case its already there
170
+            wp_register_script( 'font-awesome', $url, array(), null );
171
+            wp_enqueue_script( 'font-awesome' );
172
+
173
+            if ( $this->settings['shims'] ) {
174
+                $url = $this->get_url( true );
175
+                call_user_func( $deregister_function, 'font-awesome-shims' ); // deregister in case its already there
176
+                wp_register_script( 'font-awesome-shims', $url, array(), null );
177
+                wp_enqueue_script( 'font-awesome-shims' );
178
+            }
179
+        }
180
+
181
+        /**
182
+         * Get the url of the Font Awesome files.
183
+         *
184
+         * @param bool $shims If this is a shim file or not.
185
+         *
186
+         * @return string The url to the file.
187
+         */
188
+        public function get_url( $shims = false ) {
189
+            $script  = $shims ? 'v4-shims' : 'all';
190
+            $sub     = $this->settings['pro'] ? 'pro' : 'use';
191
+            $type    = $this->settings['type'];
192
+            $version = $this->settings['version'];
193
+            $kit_url = $this->settings['kit-url'] ? esc_url( $this->settings['kit-url'] ) : '';
194
+            $url     = '';
195
+
196
+            if ( $type == 'KIT' && $kit_url ) {
197
+                if ( $shims ) {
198
+                    // if its a kit then we don't add shims here
199
+                    return '';
200
+                }
201
+                $url .= $kit_url; // CDN
202
+                $url .= "?wpfas=true"; // set our var so our version is not removed
203
+            } else {
204
+                $url .= "https://$sub.fontawesome.com/releases/"; // CDN
205
+                $url .= ! empty( $version ) ? "v" . $version . '/' : "v" . $this->get_latest_version() . '/'; // version
206
+                $url .= $type == 'CSS' ? 'css/' : 'js/'; // type
207
+                $url .= $type == 'CSS' ? $script . '.css' : $script . '.js'; // type
208
+                $url .= "?wpfas=true"; // set our var so our version is not removed
209
+            }
210
+
211
+            return $url;
212
+        }
213
+
214
+        /**
215
+         * Try and remove any other versions of Font Awesome added by other plugins/themes.
216
+         *
217
+         * Uses the clean_url filter to try and remove any other Font Awesome files added, it can also add pseudo-elements flag for the JS version.
218
+         *
219
+         * @param $url
220
+         * @param $original_url
221
+         * @param $_context
222
+         *
223
+         * @return string The filtered url.
224
+         */
225
+        public function remove_font_awesome( $url, $original_url, $_context ) {
226
+
227
+            if ( $_context == 'display'
228
+                 && ( strstr( $url, "fontawesome" ) !== false || strstr( $url, "font-awesome" ) !== false )
229
+                 && ( strstr( $url, ".js" ) !== false || strstr( $url, ".css" ) !== false )
230
+            ) {// it's a font-awesome-url (probably)
231
+
232
+                if ( strstr( $url, "wpfas=true" ) !== false ) {
233
+                    if ( $this->settings['type'] == 'JS' ) {
234
+                        if ( $this->settings['js-pseudo'] ) {
235
+                            $url .= "' data-search-pseudo-elements defer='defer";
236
+                        } else {
237
+                            $url .= "' defer='defer";
238
+                        }
239
+                    }
240
+                } else {
241
+                    $url = ''; // removing the url removes the file
242
+                }
243
+
244
+            }
245
+
246
+            return $url;
247
+        }
248
+
249
+        /**
250
+         * Register the database settings with WordPress.
251
+         */
252
+        public function register_settings() {
253
+            register_setting( 'wp-font-awesome-settings', 'wp-font-awesome-settings' );
254
+        }
255
+
256
+        /**
257
+         * Add the WordPress settings menu item.
258
+         * @since 1.0.10 Calling function name direct will fail theme check so we don't.
259
+         */
260
+        public function menu_item() {
261
+            $menu_function = 'add' . '_' . 'options' . '_' . 'page'; // won't pass theme check if function name present in theme
262
+            call_user_func( $menu_function, $this->name, $this->name, 'manage_options', 'wp-font-awesome-settings', array(
263
+                $this,
264
+                'settings_page'
265
+            ) );
266
+        }
267
+
268
+        /**
269
+         * Get the current Font Awesome output settings.
270
+         *
271
+         * @return array The array of settings.
272
+         */
273
+        public function get_settings() {
274
+
275
+            $db_settings = get_option( 'wp-font-awesome-settings' );
276
+
277
+            $defaults = array(
278
+                'type'      => 'CSS', // type to use, CSS or JS or KIT
279
+                'version'   => '', // latest
280
+                'enqueue'   => '', // front and backend
281
+                'shims'     => '1', // default on for now, @todo maybe change to off in 2020
282
+                'js-pseudo' => '0', // if the pseudo elements flag should be set (CPU intensive)
283
+                'dequeue'   => '0', // if we should try to remove other versions added by other plugins/themes
284
+                'pro'       => '0', // if pro CDN url should be used
285
+                'kit-url'   => '', // the kit url
286
+            );
287
+
288
+            $settings = wp_parse_args( $db_settings, $defaults );
289
+
290
+            /**
291
+             * Filter the Font Awesome settings.
292
+             *
293
+             * @todo if we add this filer people might use it and then it defeates the purpose of this class :/
294
+             */
295
+            return $this->settings = apply_filters( 'wp-font-awesome-settings', $settings, $db_settings, $defaults );
296
+        }
297
+
298
+
299
+        /**
300
+         * The settings page html output.
301
+         */
302
+        public function settings_page() {
303
+            if ( ! current_user_can( 'manage_options' ) ) {
304
+                wp_die( __( 'You do not have sufficient permissions to access this page.', 'font-awesome-settings' ) );
305
+            }
306
+
307
+            // a hidden way to force the update of the verison number vai api instead of waiting the 48 hours
308
+            if ( isset( $_REQUEST['force-version-check'] ) ) {
309
+                $this->get_latest_version( $force_api = true );
310
+            }
311
+            ?>
312 312
 			<style>
313 313
 				.wpfas-kit-show {
314 314
 					display: none;
@@ -326,10 +326,10 @@  discard block
 block discarded – undo
326 326
 				<h1><?php echo $this->name; ?></h1>
327 327
 				<form method="post" action="options.php">
328 328
 					<?php
329
-					settings_fields( 'wp-font-awesome-settings' );
330
-					do_settings_sections( 'wp-font-awesome-settings' );
331
-					$kit_set = $this->settings['type'] == 'KIT' ? 'wpfas-kit-set' : '';
332
-					?>
329
+                    settings_fields( 'wp-font-awesome-settings' );
330
+                    do_settings_sections( 'wp-font-awesome-settings' );
331
+                    $kit_set = $this->settings['type'] == 'KIT' ? 'wpfas-kit-set' : '';
332
+                    ?>
333 333
 					<table class="form-table wpfas-table-settings <?php echo esc_attr( $kit_set ); ?>">
334 334
 						<tr valign="top">
335 335
 							<th scope="row"><label
@@ -355,12 +355,12 @@  discard block
 block discarded – undo
355 355
 								       value="<?php echo esc_attr( $this->settings['kit-url'] ); ?>"
356 356
 								       placeholder="https://kit.fontawesome.com/123abc.js"/>
357 357
 								<span><?php
358
-									echo sprintf(
359
-										__( 'Requires a free account with Font Awesome. %sGet kit url%s', 'font-awesome-settings' ),
360
-										'<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/kits"><i class="fas fa-external-link-alt"></i>',
361
-										'</a>'
362
-									);
363
-									?></span>
358
+                                    echo sprintf(
359
+                                        __( 'Requires a free account with Font Awesome. %sGet kit url%s', 'font-awesome-settings' ),
360
+                                        '<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/kits"><i class="fas fa-external-link-alt"></i>',
361
+                                        '</a>'
362
+                                    );
363
+                                    ?></span>
364 364
 							</td>
365 365
 						</tr>
366 366
 
@@ -420,14 +420,14 @@  discard block
 block discarded – undo
420 420
 								<input type="checkbox" name="wp-font-awesome-settings[pro]"
421 421
 								       value="1" <?php checked( $this->settings['pro'], '1' ); ?> id="wpfas-pro"/>
422 422
 								<span><?php
423
-									echo sprintf(
424
-										__( 'Requires a subscription. %sLearn more%s %sManage my allowed domains%s', 'font-awesome-settings' ),
425
-										'<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/pro"><i class="fas fa-external-link-alt"></i>',
426
-										'</a>',
427
-										'<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/account/cdn"><i class="fas fa-external-link-alt"></i>',
428
-										'</a>'
429
-									);
430
-									?></span>
423
+                                    echo sprintf(
424
+                                        __( 'Requires a subscription. %sLearn more%s %sManage my allowed domains%s', 'font-awesome-settings' ),
425
+                                        '<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/pro"><i class="fas fa-external-link-alt"></i>',
426
+                                        '</a>',
427
+                                        '<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/account/cdn"><i class="fas fa-external-link-alt"></i>',
428
+                                        '</a>'
429
+                                    );
430
+                                    ?></span>
431 431
 							</td>
432 432
 						</tr>
433 433
 
@@ -470,88 +470,88 @@  discard block
 block discarded – undo
470 470
 
471 471
 					</table>
472 472
 					<?php
473
-					submit_button();
474
-					?>
473
+                    submit_button();
474
+                    ?>
475 475
 				</form>
476 476
 
477 477
 				<div id="wpfas-version"><?php echo $this->version; ?></div>
478 478
 			</div>
479 479
 
480 480
 			<?php
481
-		}
482
-
483
-		/**
484
-		 * Check a version number is valid and if so return it or else return an empty string.
485
-		 *
486
-		 * @param $version string The version number to check.
487
-		 *
488
-		 * @since 1.0.6
489
-		 *
490
-		 * @return string Either a valid version number or an empty string.
491
-		 */
492
-		public function validate_version_number( $version ) {
493
-
494
-			if ( version_compare( $version, '0.0.1', '>=' ) >= 0 ) {
495
-				// valid
496
-			} else {
497
-				$version = '';// not validated
498
-			}
499
-
500
-			return $version;
501
-		}
502
-
503
-
504
-		/**
505
-		 * Get the latest version of Font Awesome.
506
-		 *
507
-		 * We check for a cached bersion and if none we will check for a live version via API and then cache it for 48 hours.
508
-		 *
509
-		 * @since 1.0.7
510
-		 * @return mixed|string The latest version number found.
511
-		 */
512
-		public function get_latest_version( $force_api = false ) {
513
-			$latest_version = $this->latest;
514
-
515
-			$cache = get_transient( 'wp-font-awesome-settings-version' );
516
-
517
-			if ( $cache === false || $force_api ) { // its not set
518
-				$api_ver = $this->get_latest_version_from_api();
519
-				if ( version_compare( $api_ver, $this->latest, '>=' ) >= 0 ) {
520
-					$latest_version = $api_ver;
521
-					set_transient( 'wp-font-awesome-settings-version', $api_ver, 48 * HOUR_IN_SECONDS );
522
-				}
523
-			} elseif ( $this->validate_version_number( $cache ) ) {
524
-				if ( version_compare( $cache, $this->latest, '>=' ) >= 0 ) {
525
-					$latest_version = $cache;
526
-				}
527
-			}
528
-
529
-			return $latest_version;
530
-		}
531
-
532
-		/**
533
-		 * Get the latest Font Awesome version from the github API.
534
-		 *
535
-		 * @since 1.0.7
536
-		 * @return string The latest version number or `0` on API fail.
537
-		 */
538
-		public function get_latest_version_from_api() {
539
-			$version  = "0";
540
-			$response = wp_remote_get( "https://api.github.com/repos/FortAwesome/Font-Awesome/releases/latest" );
541
-			if ( ! is_wp_error( $response ) && is_array( $response ) ) {
542
-				$api_response = json_decode( wp_remote_retrieve_body( $response ), true );
543
-				if ( isset( $api_response['tag_name'] ) && version_compare( $api_response['tag_name'], $this->latest, '>=' ) >= 0 && empty( $api_response['prerelease'] ) ) {
544
-					$version = $api_response['tag_name'];
545
-				}
546
-			}
547
-
548
-			return $version;
549
-		}
550
-
551
-	}
552
-
553
-	/**
554
-	 * Run the class if found.
555
-	 */
556
-	WP_Font_Awesome_Settings::instance();
481
+        }
482
+
483
+        /**
484
+         * Check a version number is valid and if so return it or else return an empty string.
485
+         *
486
+         * @param $version string The version number to check.
487
+         *
488
+         * @since 1.0.6
489
+         *
490
+         * @return string Either a valid version number or an empty string.
491
+         */
492
+        public function validate_version_number( $version ) {
493
+
494
+            if ( version_compare( $version, '0.0.1', '>=' ) >= 0 ) {
495
+                // valid
496
+            } else {
497
+                $version = '';// not validated
498
+            }
499
+
500
+            return $version;
501
+        }
502
+
503
+
504
+        /**
505
+         * Get the latest version of Font Awesome.
506
+         *
507
+         * We check for a cached bersion and if none we will check for a live version via API and then cache it for 48 hours.
508
+         *
509
+         * @since 1.0.7
510
+         * @return mixed|string The latest version number found.
511
+         */
512
+        public function get_latest_version( $force_api = false ) {
513
+            $latest_version = $this->latest;
514
+
515
+            $cache = get_transient( 'wp-font-awesome-settings-version' );
516
+
517
+            if ( $cache === false || $force_api ) { // its not set
518
+                $api_ver = $this->get_latest_version_from_api();
519
+                if ( version_compare( $api_ver, $this->latest, '>=' ) >= 0 ) {
520
+                    $latest_version = $api_ver;
521
+                    set_transient( 'wp-font-awesome-settings-version', $api_ver, 48 * HOUR_IN_SECONDS );
522
+                }
523
+            } elseif ( $this->validate_version_number( $cache ) ) {
524
+                if ( version_compare( $cache, $this->latest, '>=' ) >= 0 ) {
525
+                    $latest_version = $cache;
526
+                }
527
+            }
528
+
529
+            return $latest_version;
530
+        }
531
+
532
+        /**
533
+         * Get the latest Font Awesome version from the github API.
534
+         *
535
+         * @since 1.0.7
536
+         * @return string The latest version number or `0` on API fail.
537
+         */
538
+        public function get_latest_version_from_api() {
539
+            $version  = "0";
540
+            $response = wp_remote_get( "https://api.github.com/repos/FortAwesome/Font-Awesome/releases/latest" );
541
+            if ( ! is_wp_error( $response ) && is_array( $response ) ) {
542
+                $api_response = json_decode( wp_remote_retrieve_body( $response ), true );
543
+                if ( isset( $api_response['tag_name'] ) && version_compare( $api_response['tag_name'], $this->latest, '>=' ) >= 0 && empty( $api_response['prerelease'] ) ) {
544
+                    $version = $api_response['tag_name'];
545
+                }
546
+            }
547
+
548
+            return $version;
549
+        }
550
+
551
+    }
552
+
553
+    /**
554
+     * Run the class if found.
555
+     */
556
+    WP_Font_Awesome_Settings::instance();
557 557
 }
558 558
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +107 added lines, -107 removed lines patch added patch discarded remove patch
@@ -12,14 +12,14 @@  discard block
 block discarded – undo
12 12
 /**
13 13
  * Bail if we are not in WP.
14 14
  */
15
-if ( ! defined( 'ABSPATH' ) ) {
15
+if (!defined('ABSPATH')) {
16 16
 	exit;
17 17
 }
18 18
 
19 19
 /**
20 20
  * Only add if the class does not already exist.
21 21
  */
22
-if ( ! class_exists( 'WP_Font_Awesome_Settings' ) ) {
22
+if (!class_exists('WP_Font_Awesome_Settings')) {
23 23
 
24 24
 	/**
25 25
 	 * A Class to be able to change settings for Font Awesome.
@@ -87,17 +87,17 @@  discard block
 block discarded – undo
87 87
 		 * @return WP_Font_Awesome_Settings - Main instance.
88 88
 		 */
89 89
 		public static function instance() {
90
-			if ( ! isset( self::$instance ) && ! ( self::$instance instanceof WP_Font_Awesome_Settings ) ) {
90
+			if (!isset(self::$instance) && !(self::$instance instanceof WP_Font_Awesome_Settings)) {
91 91
 				self::$instance = new WP_Font_Awesome_Settings;
92 92
 
93
-				add_action( 'init', array( self::$instance, 'init' ) ); // set settings
93
+				add_action('init', array(self::$instance, 'init')); // set settings
94 94
 
95
-				if ( is_admin() ) {
96
-					add_action( 'admin_menu', array( self::$instance, 'menu_item' ) );
97
-					add_action( 'admin_init', array( self::$instance, 'register_settings' ) );
95
+				if (is_admin()) {
96
+					add_action('admin_menu', array(self::$instance, 'menu_item'));
97
+					add_action('admin_init', array(self::$instance, 'register_settings'));
98 98
 				}
99 99
 
100
-				do_action( 'wp_font_awesome_settings_loaded' );
100
+				do_action('wp_font_awesome_settings_loaded');
101 101
 			}
102 102
 
103 103
 			return self::$instance;
@@ -111,30 +111,30 @@  discard block
 block discarded – undo
111 111
 		public function init() {
112 112
 			$this->settings = $this->get_settings();
113 113
 
114
-			if ( $this->settings['type'] == 'CSS' ) {
114
+			if ($this->settings['type'] == 'CSS') {
115 115
 
116
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) {
117
-					add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 );
116
+				if ($this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend') {
117
+					add_action('wp_enqueue_scripts', array($this, 'enqueue_style'), 5000);
118 118
 				}
119 119
 
120
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) {
121
-					add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_style' ), 5000 );
120
+				if ($this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend') {
121
+					add_action('admin_enqueue_scripts', array($this, 'enqueue_style'), 5000);
122 122
 				}
123 123
 
124 124
 			} else {
125 125
 
126
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend' ) {
127
-					add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 );
126
+				if ($this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'frontend') {
127
+					add_action('wp_enqueue_scripts', array($this, 'enqueue_scripts'), 5000);
128 128
 				}
129 129
 
130
-				if ( $this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend' ) {
131
-					add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ), 5000 );
130
+				if ($this->settings['enqueue'] == '' || $this->settings['enqueue'] == 'backend') {
131
+					add_action('admin_enqueue_scripts', array($this, 'enqueue_scripts'), 5000);
132 132
 				}
133 133
 			}
134 134
 
135 135
 			// remove font awesome if set to do so
136
-			if ( $this->settings['dequeue'] == '1' ) {
137
-				add_action( 'clean_url', array( $this, 'remove_font_awesome' ), 5000, 3 );
136
+			if ($this->settings['dequeue'] == '1') {
137
+				add_action('clean_url', array($this, 'remove_font_awesome'), 5000, 3);
138 138
 			}
139 139
 
140 140
 		}
@@ -146,15 +146,15 @@  discard block
 block discarded – undo
146 146
 			// build url
147 147
 			$url = $this->get_url();
148 148
 
149
-			wp_deregister_style( 'font-awesome' ); // deregister in case its already there
150
-			wp_register_style( 'font-awesome', $url, array(), null );
151
-			wp_enqueue_style( 'font-awesome' );
149
+			wp_deregister_style('font-awesome'); // deregister in case its already there
150
+			wp_register_style('font-awesome', $url, array(), null);
151
+			wp_enqueue_style('font-awesome');
152 152
 
153
-			if ( $this->settings['shims'] ) {
154
-				$url = $this->get_url( true );
155
-				wp_deregister_style( 'font-awesome-shims' ); // deregister in case its already there
156
-				wp_register_style( 'font-awesome-shims', $url, array(), null );
157
-				wp_enqueue_style( 'font-awesome-shims' );
153
+			if ($this->settings['shims']) {
154
+				$url = $this->get_url(true);
155
+				wp_deregister_style('font-awesome-shims'); // deregister in case its already there
156
+				wp_register_style('font-awesome-shims', $url, array(), null);
157
+				wp_enqueue_style('font-awesome-shims');
158 158
 			}
159 159
 		}
160 160
 
@@ -166,15 +166,15 @@  discard block
 block discarded – undo
166 166
 			$url = $this->get_url();
167 167
 
168 168
 			$deregister_function = 'wp' . '_' . 'deregister' . '_' . 'script';
169
-			call_user_func( $deregister_function, 'font-awesome' ); // deregister in case its already there
170
-			wp_register_script( 'font-awesome', $url, array(), null );
171
-			wp_enqueue_script( 'font-awesome' );
172
-
173
-			if ( $this->settings['shims'] ) {
174
-				$url = $this->get_url( true );
175
-				call_user_func( $deregister_function, 'font-awesome-shims' ); // deregister in case its already there
176
-				wp_register_script( 'font-awesome-shims', $url, array(), null );
177
-				wp_enqueue_script( 'font-awesome-shims' );
169
+			call_user_func($deregister_function, 'font-awesome'); // deregister in case its already there
170
+			wp_register_script('font-awesome', $url, array(), null);
171
+			wp_enqueue_script('font-awesome');
172
+
173
+			if ($this->settings['shims']) {
174
+				$url = $this->get_url(true);
175
+				call_user_func($deregister_function, 'font-awesome-shims'); // deregister in case its already there
176
+				wp_register_script('font-awesome-shims', $url, array(), null);
177
+				wp_enqueue_script('font-awesome-shims');
178 178
 			}
179 179
 		}
180 180
 
@@ -185,16 +185,16 @@  discard block
 block discarded – undo
185 185
 		 *
186 186
 		 * @return string The url to the file.
187 187
 		 */
188
-		public function get_url( $shims = false ) {
188
+		public function get_url($shims = false) {
189 189
 			$script  = $shims ? 'v4-shims' : 'all';
190 190
 			$sub     = $this->settings['pro'] ? 'pro' : 'use';
191 191
 			$type    = $this->settings['type'];
192 192
 			$version = $this->settings['version'];
193
-			$kit_url = $this->settings['kit-url'] ? esc_url( $this->settings['kit-url'] ) : '';
193
+			$kit_url = $this->settings['kit-url'] ? esc_url($this->settings['kit-url']) : '';
194 194
 			$url     = '';
195 195
 
196
-			if ( $type == 'KIT' && $kit_url ) {
197
-				if ( $shims ) {
196
+			if ($type == 'KIT' && $kit_url) {
197
+				if ($shims) {
198 198
 					// if its a kit then we don't add shims here
199 199
 					return '';
200 200
 				}
@@ -202,7 +202,7 @@  discard block
 block discarded – undo
202 202
 				$url .= "?wpfas=true"; // set our var so our version is not removed
203 203
 			} else {
204 204
 				$url .= "https://$sub.fontawesome.com/releases/"; // CDN
205
-				$url .= ! empty( $version ) ? "v" . $version . '/' : "v" . $this->get_latest_version() . '/'; // version
205
+				$url .= !empty($version) ? "v" . $version . '/' : "v" . $this->get_latest_version() . '/'; // version
206 206
 				$url .= $type == 'CSS' ? 'css/' : 'js/'; // type
207 207
 				$url .= $type == 'CSS' ? $script . '.css' : $script . '.js'; // type
208 208
 				$url .= "?wpfas=true"; // set our var so our version is not removed
@@ -222,16 +222,16 @@  discard block
 block discarded – undo
222 222
 		 *
223 223
 		 * @return string The filtered url.
224 224
 		 */
225
-		public function remove_font_awesome( $url, $original_url, $_context ) {
225
+		public function remove_font_awesome($url, $original_url, $_context) {
226 226
 
227
-			if ( $_context == 'display'
228
-			     && ( strstr( $url, "fontawesome" ) !== false || strstr( $url, "font-awesome" ) !== false )
229
-			     && ( strstr( $url, ".js" ) !== false || strstr( $url, ".css" ) !== false )
227
+			if ($_context == 'display'
228
+			     && (strstr($url, "fontawesome") !== false || strstr($url, "font-awesome") !== false)
229
+			     && (strstr($url, ".js") !== false || strstr($url, ".css") !== false)
230 230
 			) {// it's a font-awesome-url (probably)
231 231
 
232
-				if ( strstr( $url, "wpfas=true" ) !== false ) {
233
-					if ( $this->settings['type'] == 'JS' ) {
234
-						if ( $this->settings['js-pseudo'] ) {
232
+				if (strstr($url, "wpfas=true") !== false) {
233
+					if ($this->settings['type'] == 'JS') {
234
+						if ($this->settings['js-pseudo']) {
235 235
 							$url .= "' data-search-pseudo-elements defer='defer";
236 236
 						} else {
237 237
 							$url .= "' defer='defer";
@@ -250,7 +250,7 @@  discard block
 block discarded – undo
250 250
 		 * Register the database settings with WordPress.
251 251
 		 */
252 252
 		public function register_settings() {
253
-			register_setting( 'wp-font-awesome-settings', 'wp-font-awesome-settings' );
253
+			register_setting('wp-font-awesome-settings', 'wp-font-awesome-settings');
254 254
 		}
255 255
 
256 256
 		/**
@@ -259,10 +259,10 @@  discard block
 block discarded – undo
259 259
 		 */
260 260
 		public function menu_item() {
261 261
 			$menu_function = 'add' . '_' . 'options' . '_' . 'page'; // won't pass theme check if function name present in theme
262
-			call_user_func( $menu_function, $this->name, $this->name, 'manage_options', 'wp-font-awesome-settings', array(
262
+			call_user_func($menu_function, $this->name, $this->name, 'manage_options', 'wp-font-awesome-settings', array(
263 263
 				$this,
264 264
 				'settings_page'
265
-			) );
265
+			));
266 266
 		}
267 267
 
268 268
 		/**
@@ -272,7 +272,7 @@  discard block
 block discarded – undo
272 272
 		 */
273 273
 		public function get_settings() {
274 274
 
275
-			$db_settings = get_option( 'wp-font-awesome-settings' );
275
+			$db_settings = get_option('wp-font-awesome-settings');
276 276
 
277 277
 			$defaults = array(
278 278
 				'type'      => 'CSS', // type to use, CSS or JS or KIT
@@ -285,14 +285,14 @@  discard block
 block discarded – undo
285 285
 				'kit-url'   => '', // the kit url
286 286
 			);
287 287
 
288
-			$settings = wp_parse_args( $db_settings, $defaults );
288
+			$settings = wp_parse_args($db_settings, $defaults);
289 289
 
290 290
 			/**
291 291
 			 * Filter the Font Awesome settings.
292 292
 			 *
293 293
 			 * @todo if we add this filer people might use it and then it defeates the purpose of this class :/
294 294
 			 */
295
-			return $this->settings = apply_filters( 'wp-font-awesome-settings', $settings, $db_settings, $defaults );
295
+			return $this->settings = apply_filters('wp-font-awesome-settings', $settings, $db_settings, $defaults);
296 296
 		}
297 297
 
298 298
 
@@ -300,13 +300,13 @@  discard block
 block discarded – undo
300 300
 		 * The settings page html output.
301 301
 		 */
302 302
 		public function settings_page() {
303
-			if ( ! current_user_can( 'manage_options' ) ) {
304
-				wp_die( __( 'You do not have sufficient permissions to access this page.', 'font-awesome-settings' ) );
303
+			if (!current_user_can('manage_options')) {
304
+				wp_die(__('You do not have sufficient permissions to access this page.', 'font-awesome-settings'));
305 305
 			}
306 306
 
307 307
 			// a hidden way to force the update of the verison number vai api instead of waiting the 48 hours
308
-			if ( isset( $_REQUEST['force-version-check'] ) ) {
309
-				$this->get_latest_version( $force_api = true );
308
+			if (isset($_REQUEST['force-version-check'])) {
309
+				$this->get_latest_version($force_api = true);
310 310
 			}
311 311
 			?>
312 312
 			<style>
@@ -326,37 +326,37 @@  discard block
 block discarded – undo
326 326
 				<h1><?php echo $this->name; ?></h1>
327 327
 				<form method="post" action="options.php">
328 328
 					<?php
329
-					settings_fields( 'wp-font-awesome-settings' );
330
-					do_settings_sections( 'wp-font-awesome-settings' );
329
+					settings_fields('wp-font-awesome-settings');
330
+					do_settings_sections('wp-font-awesome-settings');
331 331
 					$kit_set = $this->settings['type'] == 'KIT' ? 'wpfas-kit-set' : '';
332 332
 					?>
333
-					<table class="form-table wpfas-table-settings <?php echo esc_attr( $kit_set ); ?>">
333
+					<table class="form-table wpfas-table-settings <?php echo esc_attr($kit_set); ?>">
334 334
 						<tr valign="top">
335 335
 							<th scope="row"><label
336
-									for="wpfas-type"><?php _e( 'Type', 'font-awesome-settings' ); ?></label></th>
336
+									for="wpfas-type"><?php _e('Type', 'font-awesome-settings'); ?></label></th>
337 337
 							<td>
338 338
 								<select name="wp-font-awesome-settings[type]" id="wpfas-type"
339 339
 								        onchange="if(this.value=='KIT'){jQuery('.wpfas-table-settings').addClass('wpfas-kit-set');}else{jQuery('.wpfas-table-settings').removeClass('wpfas-kit-set');}">
340 340
 									<option
341
-										value="CSS" <?php selected( $this->settings['type'], 'CSS' ); ?>><?php _e( 'CSS (default)', 'font-awesome-settings' ); ?></option>
342
-									<option value="JS" <?php selected( $this->settings['type'], 'JS' ); ?>>JS</option>
341
+										value="CSS" <?php selected($this->settings['type'], 'CSS'); ?>><?php _e('CSS (default)', 'font-awesome-settings'); ?></option>
342
+									<option value="JS" <?php selected($this->settings['type'], 'JS'); ?>>JS</option>
343 343
 									<option
344
-										value="KIT" <?php selected( $this->settings['type'], 'KIT' ); ?>><?php _e( 'Kits (settings managed on fontawesome.com)', 'font-awesome-settings' ); ?></option>
344
+										value="KIT" <?php selected($this->settings['type'], 'KIT'); ?>><?php _e('Kits (settings managed on fontawesome.com)', 'font-awesome-settings'); ?></option>
345 345
 								</select>
346 346
 							</td>
347 347
 						</tr>
348 348
 
349 349
 						<tr valign="top" class="wpfas-kit-show">
350 350
 							<th scope="row"><label
351
-									for="wpfas-kit-url"><?php _e( 'Kit URL', 'font-awesome-settings' ); ?></label></th>
351
+									for="wpfas-kit-url"><?php _e('Kit URL', 'font-awesome-settings'); ?></label></th>
352 352
 							<td>
353 353
 								<input class="regular-text" id="wpfas-kit-url" type="url"
354 354
 								       name="wp-font-awesome-settings[kit-url]"
355
-								       value="<?php echo esc_attr( $this->settings['kit-url'] ); ?>"
355
+								       value="<?php echo esc_attr($this->settings['kit-url']); ?>"
356 356
 								       placeholder="https://kit.fontawesome.com/123abc.js"/>
357 357
 								<span><?php
358 358
 									echo sprintf(
359
-										__( 'Requires a free account with Font Awesome. %sGet kit url%s', 'font-awesome-settings' ),
359
+										__('Requires a free account with Font Awesome. %sGet kit url%s', 'font-awesome-settings'),
360 360
 										'<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/kits"><i class="fas fa-external-link-alt"></i>',
361 361
 										'</a>'
362 362
 									);
@@ -366,31 +366,31 @@  discard block
 block discarded – undo
366 366
 
367 367
 						<tr valign="top" class="wpfas-kit-hide">
368 368
 							<th scope="row"><label
369
-									for="wpfas-version"><?php _e( 'Version', 'font-awesome-settings' ); ?></label></th>
369
+									for="wpfas-version"><?php _e('Version', 'font-awesome-settings'); ?></label></th>
370 370
 							<td>
371 371
 								<select name="wp-font-awesome-settings[version]" id="wpfas-version">
372 372
 									<option
373
-										value="" <?php selected( $this->settings['version'], '' ); ?>><?php echo sprintf( __( 'Latest - %s (default)', 'font-awesome-settings' ), $this->get_latest_version() ); ?>
373
+										value="" <?php selected($this->settings['version'], ''); ?>><?php echo sprintf(__('Latest - %s (default)', 'font-awesome-settings'), $this->get_latest_version()); ?>
374 374
 									</option>
375
-									<option value="5.6.0" <?php selected( $this->settings['version'], '5.6.0' ); ?>>
375
+									<option value="5.6.0" <?php selected($this->settings['version'], '5.6.0'); ?>>
376 376
 										5.6.0
377 377
 									</option>
378
-									<option value="5.5.0" <?php selected( $this->settings['version'], '5.5.0' ); ?>>
378
+									<option value="5.5.0" <?php selected($this->settings['version'], '5.5.0'); ?>>
379 379
 										5.5.0
380 380
 									</option>
381
-									<option value="5.4.0" <?php selected( $this->settings['version'], '5.4.0' ); ?>>
381
+									<option value="5.4.0" <?php selected($this->settings['version'], '5.4.0'); ?>>
382 382
 										5.4.0
383 383
 									</option>
384
-									<option value="5.3.0" <?php selected( $this->settings['version'], '5.3.0' ); ?>>
384
+									<option value="5.3.0" <?php selected($this->settings['version'], '5.3.0'); ?>>
385 385
 										5.3.0
386 386
 									</option>
387
-									<option value="5.2.0" <?php selected( $this->settings['version'], '5.2.0' ); ?>>
387
+									<option value="5.2.0" <?php selected($this->settings['version'], '5.2.0'); ?>>
388 388
 										5.2.0
389 389
 									</option>
390
-									<option value="5.1.0" <?php selected( $this->settings['version'], '5.1.0' ); ?>>
390
+									<option value="5.1.0" <?php selected($this->settings['version'], '5.1.0'); ?>>
391 391
 										5.1.0
392 392
 									</option>
393
-									<option value="4.7.0" <?php selected( $this->settings['version'], '4.7.0' ); ?>>
393
+									<option value="4.7.0" <?php selected($this->settings['version'], '4.7.0'); ?>>
394 394
 										4.7.1 (CSS only)
395 395
 									</option>
396 396
 								</select>
@@ -399,29 +399,29 @@  discard block
 block discarded – undo
399 399
 
400 400
 						<tr valign="top">
401 401
 							<th scope="row"><label
402
-									for="wpfas-enqueue"><?php _e( 'Enqueue', 'font-awesome-settings' ); ?></label></th>
402
+									for="wpfas-enqueue"><?php _e('Enqueue', 'font-awesome-settings'); ?></label></th>
403 403
 							<td>
404 404
 								<select name="wp-font-awesome-settings[enqueue]" id="wpfas-enqueue">
405 405
 									<option
406
-										value="" <?php selected( $this->settings['enqueue'], '' ); ?>><?php _e( 'Frontend + Backend (default)', 'font-awesome-settings' ); ?></option>
406
+										value="" <?php selected($this->settings['enqueue'], ''); ?>><?php _e('Frontend + Backend (default)', 'font-awesome-settings'); ?></option>
407 407
 									<option
408
-										value="frontend" <?php selected( $this->settings['enqueue'], 'frontend' ); ?>><?php _e( 'Frontend', 'font-awesome-settings' ); ?></option>
408
+										value="frontend" <?php selected($this->settings['enqueue'], 'frontend'); ?>><?php _e('Frontend', 'font-awesome-settings'); ?></option>
409 409
 									<option
410
-										value="backend" <?php selected( $this->settings['enqueue'], 'backend' ); ?>><?php _e( 'Backend', 'font-awesome-settings' ); ?></option>
410
+										value="backend" <?php selected($this->settings['enqueue'], 'backend'); ?>><?php _e('Backend', 'font-awesome-settings'); ?></option>
411 411
 								</select>
412 412
 							</td>
413 413
 						</tr>
414 414
 
415 415
 						<tr valign="top" class="wpfas-kit-hide">
416 416
 							<th scope="row"><label
417
-									for="wpfas-pro"><?php _e( 'Enable pro', 'font-awesome-settings' ); ?></label></th>
417
+									for="wpfas-pro"><?php _e('Enable pro', 'font-awesome-settings'); ?></label></th>
418 418
 							<td>
419 419
 								<input type="hidden" name="wp-font-awesome-settings[pro]" value="0"/>
420 420
 								<input type="checkbox" name="wp-font-awesome-settings[pro]"
421
-								       value="1" <?php checked( $this->settings['pro'], '1' ); ?> id="wpfas-pro"/>
421
+								       value="1" <?php checked($this->settings['pro'], '1'); ?> id="wpfas-pro"/>
422 422
 								<span><?php
423 423
 									echo sprintf(
424
-										__( 'Requires a subscription. %sLearn more%s %sManage my allowed domains%s', 'font-awesome-settings' ),
424
+										__('Requires a subscription. %sLearn more%s %sManage my allowed domains%s', 'font-awesome-settings'),
425 425
 										'<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/pro"><i class="fas fa-external-link-alt"></i>',
426 426
 										'</a>',
427 427
 										'<a rel="noopener noreferrer" target="_blank" href="https://fontawesome.com/account/cdn"><i class="fas fa-external-link-alt"></i>',
@@ -433,38 +433,38 @@  discard block
 block discarded – undo
433 433
 
434 434
 						<tr valign="top" class="wpfas-kit-hide">
435 435
 							<th scope="row"><label
436
-									for="wpfas-shims"><?php _e( 'Enable v4 shims compatibility', 'font-awesome-settings' ); ?></label>
436
+									for="wpfas-shims"><?php _e('Enable v4 shims compatibility', 'font-awesome-settings'); ?></label>
437 437
 							</th>
438 438
 							<td>
439 439
 								<input type="hidden" name="wp-font-awesome-settings[shims]" value="0"/>
440 440
 								<input type="checkbox" name="wp-font-awesome-settings[shims]"
441
-								       value="1" <?php checked( $this->settings['shims'], '1' ); ?> id="wpfas-shims"/>
442
-								<span><?php _e( 'This enables v4 classes to work with v5, sort of like a band-aid until everyone has updated everything to v5.', 'font-awesome-settings' ); ?></span>
441
+								       value="1" <?php checked($this->settings['shims'], '1'); ?> id="wpfas-shims"/>
442
+								<span><?php _e('This enables v4 classes to work with v5, sort of like a band-aid until everyone has updated everything to v5.', 'font-awesome-settings'); ?></span>
443 443
 							</td>
444 444
 						</tr>
445 445
 
446 446
 						<tr valign="top" class="wpfas-kit-hide">
447 447
 							<th scope="row"><label
448
-									for="wpfas-js-pseudo"><?php _e( 'Enable JS pseudo elements (not recommended)', 'font-awesome-settings' ); ?></label>
448
+									for="wpfas-js-pseudo"><?php _e('Enable JS pseudo elements (not recommended)', 'font-awesome-settings'); ?></label>
449 449
 							</th>
450 450
 							<td>
451 451
 								<input type="hidden" name="wp-font-awesome-settings[js-pseudo]" value="0"/>
452 452
 								<input type="checkbox" name="wp-font-awesome-settings[js-pseudo]"
453
-								       value="1" <?php checked( $this->settings['js-pseudo'], '1' ); ?>
453
+								       value="1" <?php checked($this->settings['js-pseudo'], '1'); ?>
454 454
 								       id="wpfas-js-pseudo"/>
455
-								<span><?php _e( 'Used only with the JS version, this will make pseudo-elements work but can be CPU intensive on some sites.', 'font-awesome-settings' ); ?></span>
455
+								<span><?php _e('Used only with the JS version, this will make pseudo-elements work but can be CPU intensive on some sites.', 'font-awesome-settings'); ?></span>
456 456
 							</td>
457 457
 						</tr>
458 458
 
459 459
 						<tr valign="top">
460 460
 							<th scope="row"><label
461
-									for="wpfas-dequeue"><?php _e( 'Dequeue', 'font-awesome-settings' ); ?></label></th>
461
+									for="wpfas-dequeue"><?php _e('Dequeue', 'font-awesome-settings'); ?></label></th>
462 462
 							<td>
463 463
 								<input type="hidden" name="wp-font-awesome-settings[dequeue]" value="0"/>
464 464
 								<input type="checkbox" name="wp-font-awesome-settings[dequeue]"
465
-								       value="1" <?php checked( $this->settings['dequeue'], '1' ); ?>
465
+								       value="1" <?php checked($this->settings['dequeue'], '1'); ?>
466 466
 								       id="wpfas-dequeue"/>
467
-								<span><?php _e( 'This will try to dequeue any other Font Awesome versions loaded by other sources if they are added with `font-awesome` or `fontawesome` in the name.', 'font-awesome-settings' ); ?></span>
467
+								<span><?php _e('This will try to dequeue any other Font Awesome versions loaded by other sources if they are added with `font-awesome` or `fontawesome` in the name.', 'font-awesome-settings'); ?></span>
468 468
 							</td>
469 469
 						</tr>
470 470
 
@@ -489,12 +489,12 @@  discard block
 block discarded – undo
489 489
 		 *
490 490
 		 * @return string Either a valid version number or an empty string.
491 491
 		 */
492
-		public function validate_version_number( $version ) {
492
+		public function validate_version_number($version) {
493 493
 
494
-			if ( version_compare( $version, '0.0.1', '>=' ) >= 0 ) {
494
+			if (version_compare($version, '0.0.1', '>=') >= 0) {
495 495
 				// valid
496 496
 			} else {
497
-				$version = '';// not validated
497
+				$version = ''; // not validated
498 498
 			}
499 499
 
500 500
 			return $version;
@@ -509,19 +509,19 @@  discard block
 block discarded – undo
509 509
 		 * @since 1.0.7
510 510
 		 * @return mixed|string The latest version number found.
511 511
 		 */
512
-		public function get_latest_version( $force_api = false ) {
512
+		public function get_latest_version($force_api = false) {
513 513
 			$latest_version = $this->latest;
514 514
 
515
-			$cache = get_transient( 'wp-font-awesome-settings-version' );
515
+			$cache = get_transient('wp-font-awesome-settings-version');
516 516
 
517
-			if ( $cache === false || $force_api ) { // its not set
517
+			if ($cache === false || $force_api) { // its not set
518 518
 				$api_ver = $this->get_latest_version_from_api();
519
-				if ( version_compare( $api_ver, $this->latest, '>=' ) >= 0 ) {
519
+				if (version_compare($api_ver, $this->latest, '>=') >= 0) {
520 520
 					$latest_version = $api_ver;
521
-					set_transient( 'wp-font-awesome-settings-version', $api_ver, 48 * HOUR_IN_SECONDS );
521
+					set_transient('wp-font-awesome-settings-version', $api_ver, 48 * HOUR_IN_SECONDS);
522 522
 				}
523
-			} elseif ( $this->validate_version_number( $cache ) ) {
524
-				if ( version_compare( $cache, $this->latest, '>=' ) >= 0 ) {
523
+			} elseif ($this->validate_version_number($cache)) {
524
+				if (version_compare($cache, $this->latest, '>=') >= 0) {
525 525
 					$latest_version = $cache;
526 526
 				}
527 527
 			}
@@ -537,10 +537,10 @@  discard block
 block discarded – undo
537 537
 		 */
538 538
 		public function get_latest_version_from_api() {
539 539
 			$version  = "0";
540
-			$response = wp_remote_get( "https://api.github.com/repos/FortAwesome/Font-Awesome/releases/latest" );
541
-			if ( ! is_wp_error( $response ) && is_array( $response ) ) {
542
-				$api_response = json_decode( wp_remote_retrieve_body( $response ), true );
543
-				if ( isset( $api_response['tag_name'] ) && version_compare( $api_response['tag_name'], $this->latest, '>=' ) >= 0 && empty( $api_response['prerelease'] ) ) {
540
+			$response = wp_remote_get("https://api.github.com/repos/FortAwesome/Font-Awesome/releases/latest");
541
+			if (!is_wp_error($response) && is_array($response)) {
542
+				$api_response = json_decode(wp_remote_retrieve_body($response), true);
543
+				if (isset($api_response['tag_name']) && version_compare($api_response['tag_name'], $this->latest, '>=') >= 0 && empty($api_response['prerelease'])) {
544 544
 					$version = $api_response['tag_name'];
545 545
 				}
546 546
 			}
Please login to merge, or discard this patch.
invoicing.php 1 patch
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -12,19 +12,19 @@
 block discarded – undo
12 12
 */
13 13
 
14 14
 // MUST have WordPress.
15
-if ( !defined( 'WPINC' ) ) {
16
-    exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) );
15
+if (!defined('WPINC')) {
16
+    exit('Do NOT access this file directly: ' . basename(__FILE__));
17 17
 }
18 18
 
19
-if ( !defined( 'WPINV_VERSION' ) ) {
20
-    define( 'WPINV_VERSION', '1.0.10' );
19
+if (!defined('WPINV_VERSION')) {
20
+    define('WPINV_VERSION', '1.0.10');
21 21
 }
22 22
 
23
-if ( !defined( 'WPINV_PLUGIN_FILE' ) ) {
24
-    define( 'WPINV_PLUGIN_FILE', __FILE__ );
23
+if (!defined('WPINV_PLUGIN_FILE')) {
24
+    define('WPINV_PLUGIN_FILE', __FILE__);
25 25
 }
26 26
 
27
-require plugin_dir_path( __FILE__ ) . 'includes/class-wpinv.php';
27
+require plugin_dir_path(__FILE__) . 'includes/class-wpinv.php';
28 28
 
29 29
 function wpinv_run() {
30 30
     global $invoicing;
Please login to merge, or discard this patch.
includes/admin/html-admin-page-addons.php 3 patches
Indentation   +51 added lines, -51 removed lines patch added patch discarded remove patch
@@ -4,7 +4,7 @@  discard block
 block discarded – undo
4 4
  *
5 5
  */
6 6
 if ( ! defined( 'ABSPATH' ) ) {
7
-	exit;
7
+    exit;
8 8
 }
9 9
 add_ThickBox();
10 10
 ?>
@@ -14,18 +14,18 @@  discard block
 block discarded – undo
14 14
 	<?php if ( $tabs ){ ?>
15 15
 		<nav class="nav-tab-wrapper wpi-nav-tab-wrapper">
16 16
 			<?php
17
-			foreach ( $tabs as $name => $label ) {
18
-				echo '<a href="' . admin_url( 'admin.php?page=wpi-addons&tab=' . $name ) . '" class="nav-tab ' . ( $current_tab == $name ? 'nav-tab-active' : '' ) . '">' . $label . '</a>';
19
-			}
20
-			do_action( 'wpi_addons_tabs' );
21
-			?>
17
+            foreach ( $tabs as $name => $label ) {
18
+                echo '<a href="' . admin_url( 'admin.php?page=wpi-addons&tab=' . $name ) . '" class="nav-tab ' . ( $current_tab == $name ? 'nav-tab-active' : '' ) . '">' . $label . '</a>';
19
+            }
20
+            do_action( 'wpi_addons_tabs' );
21
+            ?>
22 22
 		</nav>
23 23
 
24 24
 		<?php
25 25
 
26
-		if($current_tab == 'membership'){
26
+        if($current_tab == 'membership'){
27 27
 
28
-			?>
28
+            ?>
29 29
 
30 30
 			<div class="wpi-membership-tab-conatiner">
31 31
 				<div class="membership-content">
@@ -36,9 +36,9 @@  discard block
 block discarded – undo
36 36
 					<h2>Have a membership key?</h2>
37 37
 					<p>
38 38
 						<?php
39
-						$wpeu_admin = new External_Updates_Admin('wpinvoicing.com','1');
40
-						echo $wpeu_admin->render_licence_actions('wpinvoicing.com', 'membership',array(95, 106, 108));
41
-						?>
39
+                        $wpeu_admin = new External_Updates_Admin('wpinvoicing.com','1');
40
+                        echo $wpeu_admin->render_licence_actions('wpinvoicing.com', 'membership',array(95, 106, 108));
41
+                        ?>
42 42
 					</p>
43 43
 				<?php }?>
44 44
 
@@ -89,8 +89,8 @@  discard block
 block discarded – undo
89 89
 						<div class="testimonial-content">
90 90
 							<div class="t-image">
91 91
 								<?php
92
-									echo '<img src="' . plugins_url( 'images/t-image2.png', dirname(__FILE__) ) . '" > ';
93
-								?>
92
+                                    echo '<img src="' . plugins_url( 'images/t-image2.png', dirname(__FILE__) ) . '" > ';
93
+                                ?>
94 94
 							</div>
95 95
 							<div class="t-content">
96 96
 								<p>
@@ -109,8 +109,8 @@  discard block
 block discarded – undo
109 109
 						<div class="testimonial-content">
110 110
 							<div class="t-image">
111 111
 								<?php
112
-									echo '<img src="' . plugins_url( 'images/t-image1.png', dirname(__FILE__) ) . '" > ';
113
-								?>
112
+                                    echo '<img src="' . plugins_url( 'images/t-image1.png', dirname(__FILE__) ) . '" > ';
113
+                                ?>
114 114
 							</div>
115 115
 							<div class="t-content">
116 116
 								<p>
@@ -134,20 +134,20 @@  discard block
 block discarded – undo
134 134
 			</div>
135 135
 		</div>
136 136
 			<?php
137
-		}else{
138
-			$installed_plugins = get_plugins();
137
+        }else{
138
+            $installed_plugins = get_plugins();
139 139
             $addon_obj = new WPInv_Admin_Addons();
140
-			if ($addons = $addon_obj->get_section_data( $current_tab ) ) :
141
-				?>
140
+            if ($addons = $addon_obj->get_section_data( $current_tab ) ) :
141
+                ?>
142 142
 				<ul class="wpi-products"><?php foreach ( $addons as $addon ) :
143 143
                         if(965==$addon->info->id){continue;}// don't show quote add on
144
-						?><li class="wpi-product">
144
+                        ?><li class="wpi-product">
145 145
 								<div class="wpi-product-title">
146 146
 									<h3><?php
147
-										if ( ! empty( $addon->info->excerpt) ){
148
-											echo wpi_help_tip( $addon->info->excerpt );
149
-										}
150
-										echo esc_html( $addon->info->title ); ?></h3>
147
+                                        if ( ! empty( $addon->info->excerpt) ){
148
+                                            echo wpi_help_tip( $addon->info->excerpt );
149
+                                        }
150
+                                        echo esc_html( $addon->info->title ); ?></h3>
151 151
 								</div>
152 152
 
153 153
 								<span class="wpi-product-image">
@@ -155,27 +155,27 @@  discard block
 block discarded – undo
155 155
 										<img src="<?php echo esc_attr( $addon->info->thumbnail ); ?>"/>
156 156
 									<?php endif;
157 157
 
158
-									if(isset($addon->info->link) && substr( $addon->info->link, 0, 21 ) === "https://wordpress.org"){
159
-										echo '<a href="'.admin_url('/plugin-install.php?tab=plugin-information&plugin='.$addon->info->slug).'&TB_iframe=true&width=770&height=660" class="thickbox" >';
160
-										echo '<span class="wpi-product-info">'.__('More info','invoicing').'</span>';
161
-										echo '</a>';
162
-									}elseif(isset($addon->info->link) && substr( $addon->info->link, 0, 23 ) === "https://wpinvoicing.com"){
163
-										if(defined('WP_EASY_UPDATES_ACTIVE')){
164
-											$url = admin_url('/plugin-install.php?tab=plugin-information&plugin='.$addon->info->slug.'&TB_iframe=true&width=770&height=660&item_id='.$addon->info->id.'&update_url=https://wpinvoicing.com');
165
-										}else{
166
-											// if installed show activation link
167
-											if(isset($installed_plugins['wp-easy-updates/external-updates.php'])){
168
-												$url = '#TB_inline?width=600&height=50&inlineId=wpi-wpeu-required-activation';
169
-											}else{
170
-												$url = '#TB_inline?width=600&height=50&inlineId=wpi-wpeu-required-for-external';
171
-											}
172
-										}
173
-										echo '<a href="'.$url.'" class="thickbox">';
174
-										echo '<span class="wpi-product-info">'.__('More info','invoicing').'</span>';
175
-										echo '</a>';
176
-									}
177
-
178
-									?>
158
+                                    if(isset($addon->info->link) && substr( $addon->info->link, 0, 21 ) === "https://wordpress.org"){
159
+                                        echo '<a href="'.admin_url('/plugin-install.php?tab=plugin-information&plugin='.$addon->info->slug).'&TB_iframe=true&width=770&height=660" class="thickbox" >';
160
+                                        echo '<span class="wpi-product-info">'.__('More info','invoicing').'</span>';
161
+                                        echo '</a>';
162
+                                    }elseif(isset($addon->info->link) && substr( $addon->info->link, 0, 23 ) === "https://wpinvoicing.com"){
163
+                                        if(defined('WP_EASY_UPDATES_ACTIVE')){
164
+                                            $url = admin_url('/plugin-install.php?tab=plugin-information&plugin='.$addon->info->slug.'&TB_iframe=true&width=770&height=660&item_id='.$addon->info->id.'&update_url=https://wpinvoicing.com');
165
+                                        }else{
166
+                                            // if installed show activation link
167
+                                            if(isset($installed_plugins['wp-easy-updates/external-updates.php'])){
168
+                                                $url = '#TB_inline?width=600&height=50&inlineId=wpi-wpeu-required-activation';
169
+                                            }else{
170
+                                                $url = '#TB_inline?width=600&height=50&inlineId=wpi-wpeu-required-for-external';
171
+                                            }
172
+                                        }
173
+                                        echo '<a href="'.$url.'" class="thickbox">';
174
+                                        echo '<span class="wpi-product-info">'.__('More info','invoicing').'</span>';
175
+                                        echo '</a>';
176
+                                    }
177
+
178
+                                    ?>
179 179
 
180 180
 								</span>
181 181
 
@@ -183,15 +183,15 @@  discard block
 block discarded – undo
183 183
 								<span class="wpi-product-button">
184 184
 									<?php
185 185
                                     $addon_obj->output_button( $addon );
186
-									?>
186
+                                    ?>
187 187
 								</span>
188 188
 
189 189
 								<span class="wpi-price"><?php //print_r($addon); //echo wp_kses_post( $addon->price ); ?></span></li><?php endforeach; ?></ul>
190 190
 			<?php endif;
191
-		}
191
+        }
192 192
 
193
-	}
194
-	?>
193
+    }
194
+    ?>
195 195
 
196 196
 
197 197
 	<div class="clearfix" ></div>
@@ -210,8 +210,8 @@  discard block
 block discarded – undo
210 210
 			<input class="wpeu-licence-key" type="text" placeholder="<?php _e("Enter your licence key",'invoicing');?>"> <button class="button-primary wpeu-licence-popup-button" ><?php _e("Install",'invoicing');?></button>
211 211
 			<br>
212 212
 			<?php
213
-			echo sprintf( __('%sFind your licence key here%s OR %sBuy one here%s', 'invoicing'), '<a href="https://wpinvoicing.com/your-account/" target="_blank">','</a>','<a class="wpeu-licence-link" href="https://wpinvoicing.com/downloads/category/addons/" target="_blank">','</a>' );
214
-			?>
213
+            echo sprintf( __('%sFind your licence key here%s OR %sBuy one here%s', 'invoicing'), '<a href="https://wpinvoicing.com/your-account/" target="_blank">','</a>','<a class="wpeu-licence-link" href="https://wpinvoicing.com/downloads/category/addons/" target="_blank">','</a>' );
214
+            ?>
215 215
 		</span>
216 216
 	</div>
217 217
 
Please login to merge, or discard this patch.
Spacing   +41 added lines, -41 removed lines patch added patch discarded remove patch
@@ -3,7 +3,7 @@  discard block
 block discarded – undo
3 3
  * Admin View: Page - Addons
4 4
  *
5 5
  */
6
-if ( ! defined( 'ABSPATH' ) ) {
6
+if (!defined('ABSPATH')) {
7 7
 	exit;
8 8
 }
9 9
 add_ThickBox();
@@ -11,19 +11,19 @@  discard block
 block discarded – undo
11 11
 <div class="wrap wpi_addons_wrap">
12 12
 	<h1><?php echo get_admin_page_title(); ?></h1>
13 13
 
14
-	<?php if ( $tabs ){ ?>
14
+	<?php if ($tabs) { ?>
15 15
 		<nav class="nav-tab-wrapper wpi-nav-tab-wrapper">
16 16
 			<?php
17
-			foreach ( $tabs as $name => $label ) {
18
-				echo '<a href="' . admin_url( 'admin.php?page=wpi-addons&tab=' . $name ) . '" class="nav-tab ' . ( $current_tab == $name ? 'nav-tab-active' : '' ) . '">' . $label . '</a>';
17
+			foreach ($tabs as $name => $label) {
18
+				echo '<a href="' . admin_url('admin.php?page=wpi-addons&tab=' . $name) . '" class="nav-tab ' . ($current_tab == $name ? 'nav-tab-active' : '') . '">' . $label . '</a>';
19 19
 			}
20
-			do_action( 'wpi_addons_tabs' );
20
+			do_action('wpi_addons_tabs');
21 21
 			?>
22 22
 		</nav>
23 23
 
24 24
 		<?php
25 25
 
26
-		if($current_tab == 'membership'){
26
+		if ($current_tab == 'membership') {
27 27
 
28 28
 			?>
29 29
 
@@ -32,12 +32,12 @@  discard block
 block discarded – undo
32 32
 <!--
33 33
 				<h2>With our WPInvoicing Membership you get access to all our products!</h2>
34 34
 				<p><a class="button button-primary" href="https://wpinvoicing.com/downloads/membership/">View Memberships</a></p>-->
35
-				<?php if(defined('WP_EASY_UPDATES_ACTIVE')){?>
35
+				<?php if (defined('WP_EASY_UPDATES_ACTIVE')) {?>
36 36
 					<h2>Have a membership key?</h2>
37 37
 					<p>
38 38
 						<?php
39
-						$wpeu_admin = new External_Updates_Admin('wpinvoicing.com','1');
40
-						echo $wpeu_admin->render_licence_actions('wpinvoicing.com', 'membership',array(95, 106, 108));
39
+						$wpeu_admin = new External_Updates_Admin('wpinvoicing.com', '1');
40
+						echo $wpeu_admin->render_licence_actions('wpinvoicing.com', 'membership', array(95, 106, 108));
41 41
 						?>
42 42
 					</p>
43 43
 				<?php }?>
@@ -89,7 +89,7 @@  discard block
 block discarded – undo
89 89
 						<div class="testimonial-content">
90 90
 							<div class="t-image">
91 91
 								<?php
92
-									echo '<img src="' . plugins_url( 'images/t-image2.png', dirname(__FILE__) ) . '" > ';
92
+									echo '<img src="' . plugins_url('images/t-image2.png', dirname(__FILE__)) . '" > ';
93 93
 								?>
94 94
 							</div>
95 95
 							<div class="t-content">
@@ -109,7 +109,7 @@  discard block
 block discarded – undo
109 109
 						<div class="testimonial-content">
110 110
 							<div class="t-image">
111 111
 								<?php
112
-									echo '<img src="' . plugins_url( 'images/t-image1.png', dirname(__FILE__) ) . '" > ';
112
+									echo '<img src="' . plugins_url('images/t-image1.png', dirname(__FILE__)) . '" > ';
113 113
 								?>
114 114
 							</div>
115 115
 							<div class="t-content">
@@ -134,44 +134,44 @@  discard block
 block discarded – undo
134 134
 			</div>
135 135
 		</div>
136 136
 			<?php
137
-		}else{
137
+		} else {
138 138
 			$installed_plugins = get_plugins();
139 139
             $addon_obj = new WPInv_Admin_Addons();
140
-			if ($addons = $addon_obj->get_section_data( $current_tab ) ) :
140
+			if ($addons = $addon_obj->get_section_data($current_tab)) :
141 141
 				?>
142
-				<ul class="wpi-products"><?php foreach ( $addons as $addon ) :
143
-                        if(965==$addon->info->id){continue;}// don't show quote add on
142
+				<ul class="wpi-products"><?php foreach ($addons as $addon) :
143
+                        if (965 == $addon->info->id) {continue; }// don't show quote add on
144 144
 						?><li class="wpi-product">
145 145
 								<div class="wpi-product-title">
146 146
 									<h3><?php
147
-										if ( ! empty( $addon->info->excerpt) ){
148
-											echo wpi_help_tip( $addon->info->excerpt );
147
+										if (!empty($addon->info->excerpt)) {
148
+											echo wpi_help_tip($addon->info->excerpt);
149 149
 										}
150
-										echo esc_html( $addon->info->title ); ?></h3>
150
+										echo esc_html($addon->info->title); ?></h3>
151 151
 								</div>
152 152
 
153 153
 								<span class="wpi-product-image">
154
-									<?php if ( ! empty( $addon->info->thumbnail) ) : ?>
155
-										<img src="<?php echo esc_attr( $addon->info->thumbnail ); ?>"/>
154
+									<?php if (!empty($addon->info->thumbnail)) : ?>
155
+										<img src="<?php echo esc_attr($addon->info->thumbnail); ?>"/>
156 156
 									<?php endif;
157 157
 
158
-									if(isset($addon->info->link) && substr( $addon->info->link, 0, 21 ) === "https://wordpress.org"){
159
-										echo '<a href="'.admin_url('/plugin-install.php?tab=plugin-information&plugin='.$addon->info->slug).'&TB_iframe=true&width=770&height=660" class="thickbox" >';
160
-										echo '<span class="wpi-product-info">'.__('More info','invoicing').'</span>';
158
+									if (isset($addon->info->link) && substr($addon->info->link, 0, 21) === "https://wordpress.org") {
159
+										echo '<a href="' . admin_url('/plugin-install.php?tab=plugin-information&plugin=' . $addon->info->slug) . '&TB_iframe=true&width=770&height=660" class="thickbox" >';
160
+										echo '<span class="wpi-product-info">' . __('More info', 'invoicing') . '</span>';
161 161
 										echo '</a>';
162
-									}elseif(isset($addon->info->link) && substr( $addon->info->link, 0, 23 ) === "https://wpinvoicing.com"){
163
-										if(defined('WP_EASY_UPDATES_ACTIVE')){
164
-											$url = admin_url('/plugin-install.php?tab=plugin-information&plugin='.$addon->info->slug.'&TB_iframe=true&width=770&height=660&item_id='.$addon->info->id.'&update_url=https://wpinvoicing.com');
165
-										}else{
162
+									}elseif (isset($addon->info->link) && substr($addon->info->link, 0, 23) === "https://wpinvoicing.com") {
163
+										if (defined('WP_EASY_UPDATES_ACTIVE')) {
164
+											$url = admin_url('/plugin-install.php?tab=plugin-information&plugin=' . $addon->info->slug . '&TB_iframe=true&width=770&height=660&item_id=' . $addon->info->id . '&update_url=https://wpinvoicing.com');
165
+										} else {
166 166
 											// if installed show activation link
167
-											if(isset($installed_plugins['wp-easy-updates/external-updates.php'])){
167
+											if (isset($installed_plugins['wp-easy-updates/external-updates.php'])) {
168 168
 												$url = '#TB_inline?width=600&height=50&inlineId=wpi-wpeu-required-activation';
169
-											}else{
169
+											} else {
170 170
 												$url = '#TB_inline?width=600&height=50&inlineId=wpi-wpeu-required-for-external';
171 171
 											}
172 172
 										}
173
-										echo '<a href="'.$url.'" class="thickbox">';
174
-										echo '<span class="wpi-product-info">'.__('More info','invoicing').'</span>';
173
+										echo '<a href="' . $url . '" class="thickbox">';
174
+										echo '<span class="wpi-product-info">' . __('More info', 'invoicing') . '</span>';
175 175
 										echo '</a>';
176 176
 									}
177 177
 
@@ -182,7 +182,7 @@  discard block
 block discarded – undo
182 182
 
183 183
 								<span class="wpi-product-button">
184 184
 									<?php
185
-                                    $addon_obj->output_button( $addon );
185
+                                    $addon_obj->output_button($addon);
186 186
 									?>
187 187
 								</span>
188 188
 
@@ -196,21 +196,21 @@  discard block
 block discarded – undo
196 196
 
197 197
 	<div class="clearfix" ></div>
198 198
 
199
-	<?php if($current_tab =='addons'){ ?>
200
-	<p><?php printf( __( 'All of our Invoicing Addons can be found on WPInvoicing.com here: <a href="%s">Invoicing Addons</a>', 'invoicing' ), 'https://wpinvoicing.com/downloads/category/addons/' ); ?></p>
201
-	<?php } if($current_tab =='gateways'){  ?>
202
-    <p><?php printf( __( 'All of our Invoicing Payment Gateways can be found on WPInvoicing.com here: <a href="%s">Invoicing Payment Gateways</a>', 'invoicing' ), 'https://wpinvoicing.com/downloads/category/gateways/' ); ?></p>
199
+	<?php if ($current_tab == 'addons') { ?>
200
+	<p><?php printf(__('All of our Invoicing Addons can be found on WPInvoicing.com here: <a href="%s">Invoicing Addons</a>', 'invoicing'), 'https://wpinvoicing.com/downloads/category/addons/'); ?></p>
201
+	<?php } if ($current_tab == 'gateways') {  ?>
202
+    <p><?php printf(__('All of our Invoicing Payment Gateways can be found on WPInvoicing.com here: <a href="%s">Invoicing Payment Gateways</a>', 'invoicing'), 'https://wpinvoicing.com/downloads/category/gateways/'); ?></p>
203 203
     <?php } ?>
204 204
 
205
-	<div id="wpi-wpeu-required-activation" style="display:none;"><span class="wpi-notification "><?php printf( __("The plugin <a href='https://wpeasyupdates.com/' target='_blank'>WP Easy Updates</a> is required to check for and update some installed plugins/themes, please <a href='%s'>activate</a> it now.",'invoicing'),wp_nonce_url(admin_url('plugins.php?action=activate&plugin=wp-easy-updates/external-updates.php'), 'activate-plugin_wp-easy-updates/external-updates.php'));?></span></div>
206
-	<div id="wpi-wpeu-required-for-external" style="display:none;"><span class="wpi-notification "><?php printf(  __("The plugin <a href='https://wpeasyupdates.com/' target='_blank'>WP Easy Updates</a> is required to check for and update some installed plugins/themes, please <a href='%s' onclick='window.open(\"https://wpeasyupdates.com/wp-easy-updates.zip\", \"_blank\");' >download</a> and install it now.",'invoicing'),admin_url("plugin-install.php?tab=upload&wpeu-install=true"));?></span></div>
205
+	<div id="wpi-wpeu-required-activation" style="display:none;"><span class="wpi-notification "><?php printf(__("The plugin <a href='https://wpeasyupdates.com/' target='_blank'>WP Easy Updates</a> is required to check for and update some installed plugins/themes, please <a href='%s'>activate</a> it now.", 'invoicing'), wp_nonce_url(admin_url('plugins.php?action=activate&plugin=wp-easy-updates/external-updates.php'), 'activate-plugin_wp-easy-updates/external-updates.php')); ?></span></div>
206
+	<div id="wpi-wpeu-required-for-external" style="display:none;"><span class="wpi-notification "><?php printf(__("The plugin <a href='https://wpeasyupdates.com/' target='_blank'>WP Easy Updates</a> is required to check for and update some installed plugins/themes, please <a href='%s' onclick='window.open(\"https://wpeasyupdates.com/wp-easy-updates.zip\", \"_blank\");' >download</a> and install it now.", 'invoicing'), admin_url("plugin-install.php?tab=upload&wpeu-install=true")); ?></span></div>
207 207
 	<div id="wpeu-licence-popup" style="display:none;">
208 208
 		<span class="wpi-notification noti-white">
209
-			<h3 class="wpeu-licence-title"><?php _e("Licence key",'invoicing');?></h3>
210
-			<input class="wpeu-licence-key" type="text" placeholder="<?php _e("Enter your licence key",'invoicing');?>"> <button class="button-primary wpeu-licence-popup-button" ><?php _e("Install",'invoicing');?></button>
209
+			<h3 class="wpeu-licence-title"><?php _e("Licence key", 'invoicing'); ?></h3>
210
+			<input class="wpeu-licence-key" type="text" placeholder="<?php _e("Enter your licence key", 'invoicing'); ?>"> <button class="button-primary wpeu-licence-popup-button" ><?php _e("Install", 'invoicing'); ?></button>
211 211
 			<br>
212 212
 			<?php
213
-			echo sprintf( __('%sFind your licence key here%s OR %sBuy one here%s', 'invoicing'), '<a href="https://wpinvoicing.com/your-account/" target="_blank">','</a>','<a class="wpeu-licence-link" href="https://wpinvoicing.com/downloads/category/addons/" target="_blank">','</a>' );
213
+			echo sprintf(__('%sFind your licence key here%s OR %sBuy one here%s', 'invoicing'), '<a href="https://wpinvoicing.com/your-account/" target="_blank">', '</a>', '<a class="wpeu-licence-link" href="https://wpinvoicing.com/downloads/category/addons/" target="_blank">', '</a>');
214 214
 			?>
215 215
 		</span>
216 216
 	</div>
Please login to merge, or discard this patch.
Braces   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -134,7 +134,7 @@  discard block
 block discarded – undo
134 134
 			</div>
135 135
 		</div>
136 136
 			<?php
137
-		}else{
137
+		} else{
138 138
 			$installed_plugins = get_plugins();
139 139
             $addon_obj = new WPInv_Admin_Addons();
140 140
 			if ($addons = $addon_obj->get_section_data( $current_tab ) ) :
@@ -159,14 +159,14 @@  discard block
 block discarded – undo
159 159
 										echo '<a href="'.admin_url('/plugin-install.php?tab=plugin-information&plugin='.$addon->info->slug).'&TB_iframe=true&width=770&height=660" class="thickbox" >';
160 160
 										echo '<span class="wpi-product-info">'.__('More info','invoicing').'</span>';
161 161
 										echo '</a>';
162
-									}elseif(isset($addon->info->link) && substr( $addon->info->link, 0, 23 ) === "https://wpinvoicing.com"){
162
+									} elseif(isset($addon->info->link) && substr( $addon->info->link, 0, 23 ) === "https://wpinvoicing.com"){
163 163
 										if(defined('WP_EASY_UPDATES_ACTIVE')){
164 164
 											$url = admin_url('/plugin-install.php?tab=plugin-information&plugin='.$addon->info->slug.'&TB_iframe=true&width=770&height=660&item_id='.$addon->info->id.'&update_url=https://wpinvoicing.com');
165
-										}else{
165
+										} else{
166 166
 											// if installed show activation link
167 167
 											if(isset($installed_plugins['wp-easy-updates/external-updates.php'])){
168 168
 												$url = '#TB_inline?width=600&height=50&inlineId=wpi-wpeu-required-activation';
169
-											}else{
169
+											} else{
170 170
 												$url = '#TB_inline?width=600&height=50&inlineId=wpi-wpeu-required-for-external';
171 171
 											}
172 172
 										}
Please login to merge, or discard this patch.
includes/class-wpinv-session-handler.php 3 patches
Doc Comments   +5 added lines, -1 removed lines patch added patch discarded remove patch
@@ -130,6 +130,10 @@  discard block
 block discarded – undo
130 130
 		}
131 131
 	}
132 132
 
133
+	/**
134
+	 * @param string $name
135
+	 * @param string $value
136
+	 */
133 137
 	public function setcookie($name, $value, $expire = 0, $secure = false, $httponly = false){
134 138
         if ( ! headers_sent() ) {
135 139
             setcookie( $name, $value, $expire, COOKIEPATH ? COOKIEPATH : '/', COOKIE_DOMAIN, $secure, apply_filters( 'wpinv_cookie_httponly', $httponly, $name, $value, $expire, $secure ) );
@@ -274,7 +278,7 @@  discard block
 block discarded – undo
274 278
 	 * When a user is logged out, ensure they have a unique nonce by using the customer/session ID.
275 279
 	 *
276 280
 	 * @param int $uid User ID.
277
-	 * @return string
281
+	 * @return integer
278 282
 	 */
279 283
 	public function nonce_user_logged_out( $uid ) {
280 284
 		return $this->has_session() && $this->_customer_id ? $this->_customer_id : $uid;
Please login to merge, or discard this patch.
Indentation   +276 added lines, -276 removed lines patch added patch discarded remove patch
@@ -12,124 +12,124 @@  discard block
 block discarded – undo
12 12
  */
13 13
 class WPInv_Session_Handler extends WPInv_Session {
14 14
 
15
-	/**
16
-	 * Cookie name used for the session.
17
-	 *
18
-	 * @var string cookie name
19
-	 */
20
-	protected $_cookie;
21
-
22
-	/**
23
-	 * Stores session expiry.
24
-	 *
25
-	 * @var int session due to expire timestamp
26
-	 */
27
-	protected $_session_expiring;
28
-
29
-	/**
30
-	 * Stores session due to expire timestamp.
31
-	 *
32
-	 * @var string session expiration timestamp
33
-	 */
34
-	protected $_session_expiration;
35
-
36
-	/**
37
-	 * True when the cookie exists.
38
-	 *
39
-	 * @var bool Based on whether a cookie exists.
40
-	 */
41
-	protected $_has_cookie = false;
42
-
43
-	/**
44
-	 * Table name for session data.
45
-	 *
46
-	 * @var string Custom session table name
47
-	 */
48
-	protected $_table;
49
-
50
-	/**
51
-	 * Constructor for the session class.
52
-	 */
53
-	public function __construct() {
54
-
55
-	    $this->_cookie = apply_filters( 'wpinv_cookie', 'wpinv_session_' . COOKIEHASH );
15
+    /**
16
+     * Cookie name used for the session.
17
+     *
18
+     * @var string cookie name
19
+     */
20
+    protected $_cookie;
21
+
22
+    /**
23
+     * Stores session expiry.
24
+     *
25
+     * @var int session due to expire timestamp
26
+     */
27
+    protected $_session_expiring;
28
+
29
+    /**
30
+     * Stores session due to expire timestamp.
31
+     *
32
+     * @var string session expiration timestamp
33
+     */
34
+    protected $_session_expiration;
35
+
36
+    /**
37
+     * True when the cookie exists.
38
+     *
39
+     * @var bool Based on whether a cookie exists.
40
+     */
41
+    protected $_has_cookie = false;
42
+
43
+    /**
44
+     * Table name for session data.
45
+     *
46
+     * @var string Custom session table name
47
+     */
48
+    protected $_table;
49
+
50
+    /**
51
+     * Constructor for the session class.
52
+     */
53
+    public function __construct() {
54
+
55
+        $this->_cookie = apply_filters( 'wpinv_cookie', 'wpinv_session_' . COOKIEHASH );
56 56
         add_action( 'init', array( $this, 'init' ), -1 );
57
-		add_action( 'wp_logout', array( $this, 'destroy_session' ) );
58
-		add_action( 'wp', array( $this, 'set_customer_session_cookie' ), 10 );
59
-		add_action( 'shutdown', array( $this, 'save_data' ), 20 );
60
-	}
61
-
62
-	/**
63
-	 * Init hooks and session data.
64
-	 *
65
-	 * @since 3.3.0
66
-	 */
67
-	public function init() {
68
-		$this->init_session_cookie();
69
-
70
-		if ( ! is_user_logged_in() ) {
71
-			add_filter( 'nonce_user_logged_out', array( $this, 'nonce_user_logged_out' ) );
72
-		}
73
-	}
74
-
75
-	/**
76
-	 * Setup cookie and customer ID.
77
-	 *
78
-	 * @since 3.6.0
79
-	 */
80
-	public function init_session_cookie() {
81
-		$cookie = $this->get_session_cookie();
82
-
83
-		if ( $cookie ) {
84
-			$this->_customer_id        = $cookie[0];
85
-			$this->_session_expiration = $cookie[1];
86
-			$this->_session_expiring   = $cookie[2];
87
-			$this->_has_cookie         = true;
88
-			$this->_data               = $this->get_session_data();
89
-
90
-			// If the user logs in, update session.
91
-			if ( is_user_logged_in() && get_current_user_id() != $this->_customer_id ) {
92
-				$this->_customer_id = get_current_user_id();
93
-				$this->_dirty       = true;
94
-				$this->save_data();
95
-				$this->set_customer_session_cookie( true );
96
-			}
97
-
98
-			// Update session if its close to expiring.
99
-			if ( time() > $this->_session_expiring ) {
100
-				$this->set_session_expiration();
101
-				$this->update_session_timestamp( $this->_customer_id, $this->_session_expiration );
102
-			}
103
-		} else {
104
-			$this->set_session_expiration();
105
-			$this->_customer_id = $this->generate_customer_id();
106
-			$this->_data        = $this->get_session_data();
107
-		}
108
-	}
109
-
110
-	/**
111
-	 * Sets the session cookie on-demand (usually after adding an item to the cart).
112
-	 *
113
-	 * Since the cookie name (as of 2.1) is prepended with wp, cache systems like batcache will not cache pages when set.
114
-	 *
115
-	 * Warning: Cookies will only be set if this is called before the headers are sent.
116
-	 *
117
-	 * @param bool $set Should the session cookie be set.
118
-	 */
119
-	public function set_customer_session_cookie( $set ) {
120
-		if ( $set ) {
121
-			$to_hash           = $this->_customer_id . '|' . $this->_session_expiration;
122
-			$cookie_hash       = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) );
123
-			$cookie_value      = $this->_customer_id . '||' . $this->_session_expiration . '||' . $this->_session_expiring . '||' . $cookie_hash;
124
-			$this->_has_cookie = true;
125
-
126
-			if ( ! isset( $_COOKIE[ $this->_cookie ] ) || $_COOKIE[ $this->_cookie ] !== $cookie_value ) {
127
-				$this->setcookie( $this->_cookie, $cookie_value, $this->_session_expiration, $this->use_secure_cookie(), true );
128
-			}
129
-		}
130
-	}
131
-
132
-	public function setcookie($name, $value, $expire = 0, $secure = false, $httponly = false){
57
+        add_action( 'wp_logout', array( $this, 'destroy_session' ) );
58
+        add_action( 'wp', array( $this, 'set_customer_session_cookie' ), 10 );
59
+        add_action( 'shutdown', array( $this, 'save_data' ), 20 );
60
+    }
61
+
62
+    /**
63
+     * Init hooks and session data.
64
+     *
65
+     * @since 3.3.0
66
+     */
67
+    public function init() {
68
+        $this->init_session_cookie();
69
+
70
+        if ( ! is_user_logged_in() ) {
71
+            add_filter( 'nonce_user_logged_out', array( $this, 'nonce_user_logged_out' ) );
72
+        }
73
+    }
74
+
75
+    /**
76
+     * Setup cookie and customer ID.
77
+     *
78
+     * @since 3.6.0
79
+     */
80
+    public function init_session_cookie() {
81
+        $cookie = $this->get_session_cookie();
82
+
83
+        if ( $cookie ) {
84
+            $this->_customer_id        = $cookie[0];
85
+            $this->_session_expiration = $cookie[1];
86
+            $this->_session_expiring   = $cookie[2];
87
+            $this->_has_cookie         = true;
88
+            $this->_data               = $this->get_session_data();
89
+
90
+            // If the user logs in, update session.
91
+            if ( is_user_logged_in() && get_current_user_id() != $this->_customer_id ) {
92
+                $this->_customer_id = get_current_user_id();
93
+                $this->_dirty       = true;
94
+                $this->save_data();
95
+                $this->set_customer_session_cookie( true );
96
+            }
97
+
98
+            // Update session if its close to expiring.
99
+            if ( time() > $this->_session_expiring ) {
100
+                $this->set_session_expiration();
101
+                $this->update_session_timestamp( $this->_customer_id, $this->_session_expiration );
102
+            }
103
+        } else {
104
+            $this->set_session_expiration();
105
+            $this->_customer_id = $this->generate_customer_id();
106
+            $this->_data        = $this->get_session_data();
107
+        }
108
+    }
109
+
110
+    /**
111
+     * Sets the session cookie on-demand (usually after adding an item to the cart).
112
+     *
113
+     * Since the cookie name (as of 2.1) is prepended with wp, cache systems like batcache will not cache pages when set.
114
+     *
115
+     * Warning: Cookies will only be set if this is called before the headers are sent.
116
+     *
117
+     * @param bool $set Should the session cookie be set.
118
+     */
119
+    public function set_customer_session_cookie( $set ) {
120
+        if ( $set ) {
121
+            $to_hash           = $this->_customer_id . '|' . $this->_session_expiration;
122
+            $cookie_hash       = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) );
123
+            $cookie_value      = $this->_customer_id . '||' . $this->_session_expiration . '||' . $this->_session_expiring . '||' . $cookie_hash;
124
+            $this->_has_cookie = true;
125
+
126
+            if ( ! isset( $_COOKIE[ $this->_cookie ] ) || $_COOKIE[ $this->_cookie ] !== $cookie_value ) {
127
+                $this->setcookie( $this->_cookie, $cookie_value, $this->_session_expiration, $this->use_secure_cookie(), true );
128
+            }
129
+        }
130
+    }
131
+
132
+    public function setcookie($name, $value, $expire = 0, $secure = false, $httponly = false){
133 133
         if ( ! headers_sent() ) {
134 134
             setcookie( $name, $value, $expire, COOKIEPATH ? COOKIEPATH : '/', COOKIE_DOMAIN, $secure, apply_filters( 'wpinv_cookie_httponly', $httponly, $name, $value, $expire, $secure ) );
135 135
         } elseif ( defined( 'WP_DEBUG' ) && WP_DEBUG ) {
@@ -138,96 +138,96 @@  discard block
 block discarded – undo
138 138
         }
139 139
     }
140 140
 
141
-	/**
142
-	 * Should the session cookie be secure?
143
-	 *
144
-	 * @since 3.6.0
145
-	 * @return bool
146
-	 */
147
-	protected function use_secure_cookie() {
141
+    /**
142
+     * Should the session cookie be secure?
143
+     *
144
+     * @since 3.6.0
145
+     * @return bool
146
+     */
147
+    protected function use_secure_cookie() {
148 148
         $is_https = false !== strstr( get_option( 'home' ), 'https:' );
149
-		return apply_filters( 'wpinv_session_use_secure_cookie', $is_https && is_ssl() );
150
-	}
151
-
152
-	/**
153
-	 * Return true if the current user has an active session, i.e. a cookie to retrieve values.
154
-	 *
155
-	 * @return bool
156
-	 */
157
-	public function has_session() {
158
-		return isset( $_COOKIE[ $this->_cookie ] ) || $this->_has_cookie || is_user_logged_in(); // @codingStandardsIgnoreLine.
159
-	}
160
-
161
-	/**
162
-	 * Set session expiration.
163
-	 */
164
-	public function set_session_expiration() {
165
-		$this->_session_expiring   = time() + intval( apply_filters( 'wpinv_session_expiring', 60 * 60 * 47 ) ); // 47 Hours.
166
-		$this->_session_expiration = time() + intval( apply_filters( 'wpinv_session_expiration', 60 * 60 * 48 ) ); // 48 Hours.
167
-	}
168
-
169
-	/**
170
-	 * Generate a unique customer ID for guests, or return user ID if logged in.
171
-	 *
172
-	 * Uses Portable PHP password hashing framework to generate a unique cryptographically strong ID.
173
-	 *
174
-	 * @return string
175
-	 */
176
-	public function generate_customer_id() {
177
-		$customer_id = '';
178
-
179
-		if ( is_user_logged_in() ) {
180
-			$customer_id = get_current_user_id();
181
-		}
182
-
183
-		if ( empty( $customer_id ) ) {
149
+        return apply_filters( 'wpinv_session_use_secure_cookie', $is_https && is_ssl() );
150
+    }
151
+
152
+    /**
153
+     * Return true if the current user has an active session, i.e. a cookie to retrieve values.
154
+     *
155
+     * @return bool
156
+     */
157
+    public function has_session() {
158
+        return isset( $_COOKIE[ $this->_cookie ] ) || $this->_has_cookie || is_user_logged_in(); // @codingStandardsIgnoreLine.
159
+    }
160
+
161
+    /**
162
+     * Set session expiration.
163
+     */
164
+    public function set_session_expiration() {
165
+        $this->_session_expiring   = time() + intval( apply_filters( 'wpinv_session_expiring', 60 * 60 * 47 ) ); // 47 Hours.
166
+        $this->_session_expiration = time() + intval( apply_filters( 'wpinv_session_expiration', 60 * 60 * 48 ) ); // 48 Hours.
167
+    }
168
+
169
+    /**
170
+     * Generate a unique customer ID for guests, or return user ID if logged in.
171
+     *
172
+     * Uses Portable PHP password hashing framework to generate a unique cryptographically strong ID.
173
+     *
174
+     * @return string
175
+     */
176
+    public function generate_customer_id() {
177
+        $customer_id = '';
178
+
179
+        if ( is_user_logged_in() ) {
180
+            $customer_id = get_current_user_id();
181
+        }
182
+
183
+        if ( empty( $customer_id ) ) {
184 184
             $customer_id = wp_create_nonce('wpinv-session-customer-id');
185
-		}
186
-
187
-		return $customer_id;
188
-	}
189
-
190
-	/**
191
-	 * Get the session cookie, if set. Otherwise return false.
192
-	 *
193
-	 * Session cookies without a customer ID are invalid.
194
-	 *
195
-	 * @return bool|array
196
-	 */
197
-	public function get_session_cookie() {
198
-		$cookie_value = isset( $_COOKIE[ $this->_cookie ] ) ? wp_unslash( $_COOKIE[ $this->_cookie ] ) : false; // @codingStandardsIgnoreLine.
199
-
200
-		if ( empty( $cookie_value ) || ! is_string( $cookie_value ) ) {
201
-			return false;
202
-		}
203
-
204
-		list( $customer_id, $session_expiration, $session_expiring, $cookie_hash ) = explode( '||', $cookie_value );
205
-
206
-		if ( empty( $customer_id ) ) {
207
-			return false;
208
-		}
209
-
210
-		// Validate hash.
211
-		$to_hash = $customer_id . '|' . $session_expiration;
212
-		$hash    = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) );
213
-
214
-		if ( empty( $cookie_hash ) || ! hash_equals( $hash, $cookie_hash ) ) {
215
-			return false;
216
-		}
217
-
218
-		return array( $customer_id, $session_expiration, $session_expiring, $cookie_hash );
219
-	}
220
-
221
-	/**
222
-	 * Get session data.
223
-	 *
224
-	 * @return array
225
-	 */
226
-	public function get_session_data() {
227
-		return $this->has_session() ? (array) $this->get_session( $this->_customer_id ) : array();
228
-	}
229
-
230
-	public function generate_key($customer_id){
185
+        }
186
+
187
+        return $customer_id;
188
+    }
189
+
190
+    /**
191
+     * Get the session cookie, if set. Otherwise return false.
192
+     *
193
+     * Session cookies without a customer ID are invalid.
194
+     *
195
+     * @return bool|array
196
+     */
197
+    public function get_session_cookie() {
198
+        $cookie_value = isset( $_COOKIE[ $this->_cookie ] ) ? wp_unslash( $_COOKIE[ $this->_cookie ] ) : false; // @codingStandardsIgnoreLine.
199
+
200
+        if ( empty( $cookie_value ) || ! is_string( $cookie_value ) ) {
201
+            return false;
202
+        }
203
+
204
+        list( $customer_id, $session_expiration, $session_expiring, $cookie_hash ) = explode( '||', $cookie_value );
205
+
206
+        if ( empty( $customer_id ) ) {
207
+            return false;
208
+        }
209
+
210
+        // Validate hash.
211
+        $to_hash = $customer_id . '|' . $session_expiration;
212
+        $hash    = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) );
213
+
214
+        if ( empty( $cookie_hash ) || ! hash_equals( $hash, $cookie_hash ) ) {
215
+            return false;
216
+        }
217
+
218
+        return array( $customer_id, $session_expiration, $session_expiring, $cookie_hash );
219
+    }
220
+
221
+    /**
222
+     * Get session data.
223
+     *
224
+     * @return array
225
+     */
226
+    public function get_session_data() {
227
+        return $this->has_session() ? (array) $this->get_session( $this->_customer_id ) : array();
228
+    }
229
+
230
+    public function generate_key($customer_id){
231 231
         if(!$customer_id){
232 232
             return;
233 233
         }
@@ -235,62 +235,62 @@  discard block
 block discarded – undo
235 235
         return 'wpi_trans_'.$customer_id;
236 236
     }
237 237
 
238
-	/**
239
-	 * Save data.
240
-	 */
241
-	public function save_data() {
242
-		// Dirty if something changed - prevents saving nothing new.
243
-		if ( $this->_dirty && $this->has_session() ) {
238
+    /**
239
+     * Save data.
240
+     */
241
+    public function save_data() {
242
+        // Dirty if something changed - prevents saving nothing new.
243
+        if ( $this->_dirty && $this->has_session() ) {
244 244
 
245 245
             set_transient( $this->generate_key($this->_customer_id), $this->_data, $this->_session_expiration);
246 246
 
247
-			$this->_dirty = false;
248
-		}
249
-	}
250
-
251
-	/**
252
-	 * Destroy all session data.
253
-	 */
254
-	public function destroy_session() {
255
-		$this->delete_session( $this->_customer_id );
256
-		$this->forget_session();
257
-	}
258
-
259
-	/**
260
-	 * Forget all session data without destroying it.
261
-	 */
262
-	public function forget_session() {
263
-		$this->setcookie( $this->_cookie, '', time() - YEAR_IN_SECONDS, $this->use_secure_cookie(), true );
264
-
265
-		wpinv_empty_cart();
266
-
267
-		$this->_data        = array();
268
-		$this->_dirty       = false;
269
-		$this->_customer_id = $this->generate_customer_id();
270
-	}
271
-
272
-	/**
273
-	 * When a user is logged out, ensure they have a unique nonce by using the customer/session ID.
274
-	 *
275
-	 * @param int $uid User ID.
276
-	 * @return string
277
-	 */
278
-	public function nonce_user_logged_out( $uid ) {
279
-		return $this->has_session() && $this->_customer_id ? $this->_customer_id : $uid;
280
-	}
281
-
282
-	/**
283
-	 * Returns the session.
284
-	 *
285
-	 * @param string $customer_id Customer ID.
286
-	 * @param mixed  $default Default session value.
287
-	 * @return string|array
288
-	 */
289
-	public function get_session( $customer_id, $default = false ) {
290
-
291
-		if ( defined( 'WP_SETUP_CONFIG' ) ) {
292
-			return array();
293
-		}
247
+            $this->_dirty = false;
248
+        }
249
+    }
250
+
251
+    /**
252
+     * Destroy all session data.
253
+     */
254
+    public function destroy_session() {
255
+        $this->delete_session( $this->_customer_id );
256
+        $this->forget_session();
257
+    }
258
+
259
+    /**
260
+     * Forget all session data without destroying it.
261
+     */
262
+    public function forget_session() {
263
+        $this->setcookie( $this->_cookie, '', time() - YEAR_IN_SECONDS, $this->use_secure_cookie(), true );
264
+
265
+        wpinv_empty_cart();
266
+
267
+        $this->_data        = array();
268
+        $this->_dirty       = false;
269
+        $this->_customer_id = $this->generate_customer_id();
270
+    }
271
+
272
+    /**
273
+     * When a user is logged out, ensure they have a unique nonce by using the customer/session ID.
274
+     *
275
+     * @param int $uid User ID.
276
+     * @return string
277
+     */
278
+    public function nonce_user_logged_out( $uid ) {
279
+        return $this->has_session() && $this->_customer_id ? $this->_customer_id : $uid;
280
+    }
281
+
282
+    /**
283
+     * Returns the session.
284
+     *
285
+     * @param string $customer_id Customer ID.
286
+     * @param mixed  $default Default session value.
287
+     * @return string|array
288
+     */
289
+    public function get_session( $customer_id, $default = false ) {
290
+
291
+        if ( defined( 'WP_SETUP_CONFIG' ) ) {
292
+            return array();
293
+        }
294 294
 
295 295
         if ( !is_user_logged_in() ) {
296 296
             if(!wp_verify_nonce( $customer_id, 'wpinv-session-customer-id' )){
@@ -305,32 +305,32 @@  discard block
 block discarded – undo
305 305
             $value = $default;
306 306
         }
307 307
 
308
-		return maybe_unserialize( $value );
309
-	}
308
+        return maybe_unserialize( $value );
309
+    }
310 310
 
311
-	/**
312
-	 * Delete the session from the cache and database.
313
-	 *
314
-	 * @param int $customer_id Customer ID.
315
-	 */
316
-	public function delete_session( $customer_id ) {
311
+    /**
312
+     * Delete the session from the cache and database.
313
+     *
314
+     * @param int $customer_id Customer ID.
315
+     */
316
+    public function delete_session( $customer_id ) {
317 317
 
318 318
         $key = $this->generate_key($customer_id);
319 319
 
320
-		delete_transient($key);
321
-	}
320
+        delete_transient($key);
321
+    }
322 322
 
323
-	/**
324
-	 * Update the session expiry timestamp.
325
-	 *
326
-	 * @param string $customer_id Customer ID.
327
-	 * @param int    $timestamp Timestamp to expire the cookie.
328
-	 */
329
-	public function update_session_timestamp( $customer_id, $timestamp ) {
323
+    /**
324
+     * Update the session expiry timestamp.
325
+     *
326
+     * @param string $customer_id Customer ID.
327
+     * @param int    $timestamp Timestamp to expire the cookie.
328
+     */
329
+    public function update_session_timestamp( $customer_id, $timestamp ) {
330 330
 
331 331
         set_transient( $this->generate_key($customer_id), maybe_serialize( $this->_data ), $timestamp);
332 332
 
333
-	}
333
+    }
334 334
 }
335 335
 
336 336
 global $wpi_session;
Please login to merge, or discard this patch.
Spacing   +56 added lines, -56 removed lines patch added patch discarded remove patch
@@ -5,7 +5,7 @@  discard block
 block discarded – undo
5 5
  *
6 6
  */
7 7
 
8
-defined( 'ABSPATH' ) || exit;
8
+defined('ABSPATH') || exit;
9 9
 
10 10
 /**
11 11
  * Session handler class.
@@ -52,11 +52,11 @@  discard block
 block discarded – undo
52 52
 	 */
53 53
 	public function __construct() {
54 54
 
55
-	    $this->_cookie = apply_filters( 'wpinv_cookie', 'wpinv_session_' . COOKIEHASH );
56
-        add_action( 'init', array( $this, 'init' ), -1 );
57
-		add_action( 'wp_logout', array( $this, 'destroy_session' ) );
58
-		add_action( 'wp', array( $this, 'set_customer_session_cookie' ), 10 );
59
-		add_action( 'shutdown', array( $this, 'save_data' ), 20 );
55
+	    $this->_cookie = apply_filters('wpinv_cookie', 'wpinv_session_' . COOKIEHASH);
56
+        add_action('init', array($this, 'init'), -1);
57
+		add_action('wp_logout', array($this, 'destroy_session'));
58
+		add_action('wp', array($this, 'set_customer_session_cookie'), 10);
59
+		add_action('shutdown', array($this, 'save_data'), 20);
60 60
 	}
61 61
 
62 62
 	/**
@@ -67,8 +67,8 @@  discard block
 block discarded – undo
67 67
 	public function init() {
68 68
 		$this->init_session_cookie();
69 69
 
70
-		if ( ! is_user_logged_in() ) {
71
-			add_filter( 'nonce_user_logged_out', array( $this, 'nonce_user_logged_out' ) );
70
+		if (!is_user_logged_in()) {
71
+			add_filter('nonce_user_logged_out', array($this, 'nonce_user_logged_out'));
72 72
 		}
73 73
 	}
74 74
 
@@ -80,7 +80,7 @@  discard block
 block discarded – undo
80 80
 	public function init_session_cookie() {
81 81
 		$cookie = $this->get_session_cookie();
82 82
 
83
-		if ( $cookie ) {
83
+		if ($cookie) {
84 84
 			$this->_customer_id        = $cookie[0];
85 85
 			$this->_session_expiration = $cookie[1];
86 86
 			$this->_session_expiring   = $cookie[2];
@@ -88,17 +88,17 @@  discard block
 block discarded – undo
88 88
 			$this->_data               = $this->get_session_data();
89 89
 
90 90
 			// If the user logs in, update session.
91
-			if ( is_user_logged_in() && get_current_user_id() != $this->_customer_id ) {
91
+			if (is_user_logged_in() && get_current_user_id() != $this->_customer_id) {
92 92
 				$this->_customer_id = get_current_user_id();
93 93
 				$this->_dirty       = true;
94 94
 				$this->save_data();
95
-				$this->set_customer_session_cookie( true );
95
+				$this->set_customer_session_cookie(true);
96 96
 			}
97 97
 
98 98
 			// Update session if its close to expiring.
99
-			if ( time() > $this->_session_expiring ) {
99
+			if (time() > $this->_session_expiring) {
100 100
 				$this->set_session_expiration();
101
-				$this->update_session_timestamp( $this->_customer_id, $this->_session_expiration );
101
+				$this->update_session_timestamp($this->_customer_id, $this->_session_expiration);
102 102
 			}
103 103
 		} else {
104 104
 			$this->set_session_expiration();
@@ -116,25 +116,25 @@  discard block
 block discarded – undo
116 116
 	 *
117 117
 	 * @param bool $set Should the session cookie be set.
118 118
 	 */
119
-	public function set_customer_session_cookie( $set ) {
120
-		if ( $set ) {
119
+	public function set_customer_session_cookie($set) {
120
+		if ($set) {
121 121
 			$to_hash           = $this->_customer_id . '|' . $this->_session_expiration;
122
-			$cookie_hash       = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) );
122
+			$cookie_hash       = hash_hmac('md5', $to_hash, wp_hash($to_hash));
123 123
 			$cookie_value      = $this->_customer_id . '||' . $this->_session_expiration . '||' . $this->_session_expiring . '||' . $cookie_hash;
124 124
 			$this->_has_cookie = true;
125 125
 
126
-			if ( ! isset( $_COOKIE[ $this->_cookie ] ) || $_COOKIE[ $this->_cookie ] !== $cookie_value ) {
127
-				$this->setcookie( $this->_cookie, $cookie_value, $this->_session_expiration, $this->use_secure_cookie(), true );
126
+			if (!isset($_COOKIE[$this->_cookie]) || $_COOKIE[$this->_cookie] !== $cookie_value) {
127
+				$this->setcookie($this->_cookie, $cookie_value, $this->_session_expiration, $this->use_secure_cookie(), true);
128 128
 			}
129 129
 		}
130 130
 	}
131 131
 
132
-	public function setcookie($name, $value, $expire = 0, $secure = false, $httponly = false){
133
-        if ( ! headers_sent() ) {
134
-            setcookie( $name, $value, $expire, COOKIEPATH ? COOKIEPATH : '/', COOKIE_DOMAIN, $secure, apply_filters( 'wpinv_cookie_httponly', $httponly, $name, $value, $expire, $secure ) );
135
-        } elseif ( defined( 'WP_DEBUG' ) && WP_DEBUG ) {
136
-            headers_sent( $file, $line );
137
-            trigger_error( "{$name} cookie cannot be set - headers already sent by {$file} on line {$line}", E_USER_NOTICE ); // @codingStandardsIgnoreLine
132
+	public function setcookie($name, $value, $expire = 0, $secure = false, $httponly = false) {
133
+        if (!headers_sent()) {
134
+            setcookie($name, $value, $expire, COOKIEPATH ? COOKIEPATH : '/', COOKIE_DOMAIN, $secure, apply_filters('wpinv_cookie_httponly', $httponly, $name, $value, $expire, $secure));
135
+        } elseif (defined('WP_DEBUG') && WP_DEBUG) {
136
+            headers_sent($file, $line);
137
+            trigger_error("{$name} cookie cannot be set - headers already sent by {$file} on line {$line}", E_USER_NOTICE); // @codingStandardsIgnoreLine
138 138
         }
139 139
     }
140 140
 
@@ -145,8 +145,8 @@  discard block
 block discarded – undo
145 145
 	 * @return bool
146 146
 	 */
147 147
 	protected function use_secure_cookie() {
148
-        $is_https = false !== strstr( get_option( 'home' ), 'https:' );
149
-		return apply_filters( 'wpinv_session_use_secure_cookie', $is_https && is_ssl() );
148
+        $is_https = false !== strstr(get_option('home'), 'https:');
149
+		return apply_filters('wpinv_session_use_secure_cookie', $is_https && is_ssl());
150 150
 	}
151 151
 
152 152
 	/**
@@ -155,15 +155,15 @@  discard block
 block discarded – undo
155 155
 	 * @return bool
156 156
 	 */
157 157
 	public function has_session() {
158
-		return isset( $_COOKIE[ $this->_cookie ] ) || $this->_has_cookie || is_user_logged_in(); // @codingStandardsIgnoreLine.
158
+		return isset($_COOKIE[$this->_cookie]) || $this->_has_cookie || is_user_logged_in(); // @codingStandardsIgnoreLine.
159 159
 	}
160 160
 
161 161
 	/**
162 162
 	 * Set session expiration.
163 163
 	 */
164 164
 	public function set_session_expiration() {
165
-		$this->_session_expiring   = time() + intval( apply_filters( 'wpinv_session_expiring', 60 * 60 * 47 ) ); // 47 Hours.
166
-		$this->_session_expiration = time() + intval( apply_filters( 'wpinv_session_expiration', 60 * 60 * 48 ) ); // 48 Hours.
165
+		$this->_session_expiring   = time() + intval(apply_filters('wpinv_session_expiring', 60 * 60 * 47)); // 47 Hours.
166
+		$this->_session_expiration = time() + intval(apply_filters('wpinv_session_expiration', 60 * 60 * 48)); // 48 Hours.
167 167
 	}
168 168
 
169 169
 	/**
@@ -176,11 +176,11 @@  discard block
 block discarded – undo
176 176
 	public function generate_customer_id() {
177 177
 		$customer_id = '';
178 178
 
179
-		if ( is_user_logged_in() ) {
179
+		if (is_user_logged_in()) {
180 180
 			$customer_id = get_current_user_id();
181 181
 		}
182 182
 
183
-		if ( empty( $customer_id ) ) {
183
+		if (empty($customer_id)) {
184 184
             $customer_id = wp_create_nonce('wpinv-session-customer-id');
185 185
 		}
186 186
 
@@ -195,27 +195,27 @@  discard block
 block discarded – undo
195 195
 	 * @return bool|array
196 196
 	 */
197 197
 	public function get_session_cookie() {
198
-		$cookie_value = isset( $_COOKIE[ $this->_cookie ] ) ? wp_unslash( $_COOKIE[ $this->_cookie ] ) : false; // @codingStandardsIgnoreLine.
198
+		$cookie_value = isset($_COOKIE[$this->_cookie]) ? wp_unslash($_COOKIE[$this->_cookie]) : false; // @codingStandardsIgnoreLine.
199 199
 
200
-		if ( empty( $cookie_value ) || ! is_string( $cookie_value ) ) {
200
+		if (empty($cookie_value) || !is_string($cookie_value)) {
201 201
 			return false;
202 202
 		}
203 203
 
204
-		list( $customer_id, $session_expiration, $session_expiring, $cookie_hash ) = explode( '||', $cookie_value );
204
+		list($customer_id, $session_expiration, $session_expiring, $cookie_hash) = explode('||', $cookie_value);
205 205
 
206
-		if ( empty( $customer_id ) ) {
206
+		if (empty($customer_id)) {
207 207
 			return false;
208 208
 		}
209 209
 
210 210
 		// Validate hash.
211 211
 		$to_hash = $customer_id . '|' . $session_expiration;
212
-		$hash    = hash_hmac( 'md5', $to_hash, wp_hash( $to_hash ) );
212
+		$hash    = hash_hmac('md5', $to_hash, wp_hash($to_hash));
213 213
 
214
-		if ( empty( $cookie_hash ) || ! hash_equals( $hash, $cookie_hash ) ) {
214
+		if (empty($cookie_hash) || !hash_equals($hash, $cookie_hash)) {
215 215
 			return false;
216 216
 		}
217 217
 
218
-		return array( $customer_id, $session_expiration, $session_expiring, $cookie_hash );
218
+		return array($customer_id, $session_expiration, $session_expiring, $cookie_hash);
219 219
 	}
220 220
 
221 221
 	/**
@@ -224,15 +224,15 @@  discard block
 block discarded – undo
224 224
 	 * @return array
225 225
 	 */
226 226
 	public function get_session_data() {
227
-		return $this->has_session() ? (array) $this->get_session( $this->_customer_id ) : array();
227
+		return $this->has_session() ? (array)$this->get_session($this->_customer_id) : array();
228 228
 	}
229 229
 
230
-	public function generate_key($customer_id){
231
-        if(!$customer_id){
230
+	public function generate_key($customer_id) {
231
+        if (!$customer_id) {
232 232
             return;
233 233
         }
234 234
 
235
-        return 'wpi_trans_'.$customer_id;
235
+        return 'wpi_trans_' . $customer_id;
236 236
     }
237 237
 
238 238
 	/**
@@ -240,9 +240,9 @@  discard block
 block discarded – undo
240 240
 	 */
241 241
 	public function save_data() {
242 242
 		// Dirty if something changed - prevents saving nothing new.
243
-		if ( $this->_dirty && $this->has_session() ) {
243
+		if ($this->_dirty && $this->has_session()) {
244 244
 
245
-            set_transient( $this->generate_key($this->_customer_id), $this->_data, $this->_session_expiration);
245
+            set_transient($this->generate_key($this->_customer_id), $this->_data, $this->_session_expiration);
246 246
 
247 247
 			$this->_dirty = false;
248 248
 		}
@@ -252,7 +252,7 @@  discard block
 block discarded – undo
252 252
 	 * Destroy all session data.
253 253
 	 */
254 254
 	public function destroy_session() {
255
-		$this->delete_session( $this->_customer_id );
255
+		$this->delete_session($this->_customer_id);
256 256
 		$this->forget_session();
257 257
 	}
258 258
 
@@ -260,7 +260,7 @@  discard block
 block discarded – undo
260 260
 	 * Forget all session data without destroying it.
261 261
 	 */
262 262
 	public function forget_session() {
263
-		$this->setcookie( $this->_cookie, '', time() - YEAR_IN_SECONDS, $this->use_secure_cookie(), true );
263
+		$this->setcookie($this->_cookie, '', time() - YEAR_IN_SECONDS, $this->use_secure_cookie(), true);
264 264
 
265 265
 		wpinv_empty_cart();
266 266
 
@@ -275,7 +275,7 @@  discard block
 block discarded – undo
275 275
 	 * @param int $uid User ID.
276 276
 	 * @return string
277 277
 	 */
278
-	public function nonce_user_logged_out( $uid ) {
278
+	public function nonce_user_logged_out($uid) {
279 279
 		return $this->has_session() && $this->_customer_id ? $this->_customer_id : $uid;
280 280
 	}
281 281
 
@@ -286,14 +286,14 @@  discard block
 block discarded – undo
286 286
 	 * @param mixed  $default Default session value.
287 287
 	 * @return string|array
288 288
 	 */
289
-	public function get_session( $customer_id, $default = false ) {
289
+	public function get_session($customer_id, $default = false) {
290 290
 
291
-		if ( defined( 'WP_SETUP_CONFIG' ) ) {
291
+		if (defined('WP_SETUP_CONFIG')) {
292 292
 			return array();
293 293
 		}
294 294
 
295
-        if ( !is_user_logged_in() ) {
296
-            if(!wp_verify_nonce( $customer_id, 'wpinv-session-customer-id' )){
295
+        if (!is_user_logged_in()) {
296
+            if (!wp_verify_nonce($customer_id, 'wpinv-session-customer-id')) {
297 297
                 return array();
298 298
             }
299 299
         }
@@ -301,11 +301,11 @@  discard block
 block discarded – undo
301 301
         $key = $this->generate_key($customer_id);
302 302
         $value = get_transient($key);
303 303
 
304
-        if ( !$value ) {
304
+        if (!$value) {
305 305
             $value = $default;
306 306
         }
307 307
 
308
-		return maybe_unserialize( $value );
308
+		return maybe_unserialize($value);
309 309
 	}
310 310
 
311 311
 	/**
@@ -313,7 +313,7 @@  discard block
 block discarded – undo
313 313
 	 *
314 314
 	 * @param int $customer_id Customer ID.
315 315
 	 */
316
-	public function delete_session( $customer_id ) {
316
+	public function delete_session($customer_id) {
317 317
 
318 318
         $key = $this->generate_key($customer_id);
319 319
 
@@ -326,9 +326,9 @@  discard block
 block discarded – undo
326 326
 	 * @param string $customer_id Customer ID.
327 327
 	 * @param int    $timestamp Timestamp to expire the cookie.
328 328
 	 */
329
-	public function update_session_timestamp( $customer_id, $timestamp ) {
329
+	public function update_session_timestamp($customer_id, $timestamp) {
330 330
 
331
-        set_transient( $this->generate_key($customer_id), maybe_serialize( $this->_data ), $timestamp);
331
+        set_transient($this->generate_key($customer_id), maybe_serialize($this->_data), $timestamp);
332 332
 
333 333
 	}
334 334
 }
Please login to merge, or discard this patch.