Passed
Push — master ( 862b0e...047a35 )
by Stiofan
17:04
created
includes/data/states.php 2 patches
Indentation   +1531 added lines, -1531 removed lines patch added patch discarded remove patch
@@ -14,1537 +14,1537 @@
 block discarded – undo
14 14
 defined( 'ABSPATH' ) || exit;
15 15
 
16 16
 return array(
17
-	'AF' => array(),
18
-	'AO' => array( // Angola states.
19
-		'BGO' => __( 'Bengo', 'invoicing' ),
20
-		'BLU' => __( 'Benguela', 'invoicing' ),
21
-		'BIE' => __( 'Bié', 'invoicing' ),
22
-		'CAB' => __( 'Cabinda', 'invoicing' ),
23
-		'CNN' => __( 'Cunene', 'invoicing' ),
24
-		'HUA' => __( 'Huambo', 'invoicing' ),
25
-		'HUI' => __( 'Huíla', 'invoicing' ),
26
-		'CCU' => __( 'Kuando Kubango', 'invoicing' ),
27
-		'CNO' => __( 'Kwanza-Norte', 'invoicing' ),
28
-		'CUS' => __( 'Kwanza-Sul', 'invoicing' ),
29
-		'LUA' => __( 'Luanda', 'invoicing' ),
30
-		'LNO' => __( 'Lunda-Norte', 'invoicing' ),
31
-		'LSU' => __( 'Lunda-Sul', 'invoicing' ),
32
-		'MAL' => __( 'Malanje', 'invoicing' ),
33
-		'MOX' => __( 'Moxico', 'invoicing' ),
34
-		'NAM' => __( 'Namibe', 'invoicing' ),
35
-		'UIG' => __( 'Uíge', 'invoicing' ),
36
-		'ZAI' => __( 'Zaire', 'invoicing' ),
37
-	),
38
-	'AR' => array( // Argentinian provinces.
39
-		'C' => __( 'Ciudad Autónoma de Buenos Aires', 'invoicing' ),
40
-		'B' => __( 'Buenos Aires', 'invoicing' ),
41
-		'K' => __( 'Catamarca', 'invoicing' ),
42
-		'H' => __( 'Chaco', 'invoicing' ),
43
-		'U' => __( 'Chubut', 'invoicing' ),
44
-		'X' => __( 'Córdoba', 'invoicing' ),
45
-		'W' => __( 'Corrientes', 'invoicing' ),
46
-		'E' => __( 'Entre Ríos', 'invoicing' ),
47
-		'P' => __( 'Formosa', 'invoicing' ),
48
-		'Y' => __( 'Jujuy', 'invoicing' ),
49
-		'L' => __( 'La Pampa', 'invoicing' ),
50
-		'F' => __( 'La Rioja', 'invoicing' ),
51
-		'M' => __( 'Mendoza', 'invoicing' ),
52
-		'N' => __( 'Misiones', 'invoicing' ),
53
-		'Q' => __( 'Neuquén', 'invoicing' ),
54
-		'R' => __( 'Río Negro', 'invoicing' ),
55
-		'A' => __( 'Salta', 'invoicing' ),
56
-		'J' => __( 'San Juan', 'invoicing' ),
57
-		'D' => __( 'San Luis', 'invoicing' ),
58
-		'Z' => __( 'Santa Cruz', 'invoicing' ),
59
-		'S' => __( 'Santa Fe', 'invoicing' ),
60
-		'G' => __( 'Santiago del Estero', 'invoicing' ),
61
-		'V' => __( 'Tierra del Fuego', 'invoicing' ),
62
-		'T' => __( 'Tucumán', 'invoicing' ),
63
-	),
64
-	'AT' => array(),
65
-	'AU' => array( // Australian states.
66
-		'ACT' => __( 'Australian Capital Territory', 'invoicing' ),
67
-		'NSW' => __( 'New South Wales', 'invoicing' ),
68
-		'NT'  => __( 'Northern Territory', 'invoicing' ),
69
-		'QLD' => __( 'Queensland', 'invoicing' ),
70
-		'SA'  => __( 'South Australia', 'invoicing' ),
71
-		'TAS' => __( 'Tasmania', 'invoicing' ),
72
-		'VIC' => __( 'Victoria', 'invoicing' ),
73
-		'WA'  => __( 'Western Australia', 'invoicing' ),
74
-	),
75
-	'AX' => array(),
76
-	'BD' => array( // Bangladeshi states (districts).
77
-		'BD-05' => __( 'Bagerhat', 'invoicing' ),
78
-		'BD-01' => __( 'Bandarban', 'invoicing' ),
79
-		'BD-02' => __( 'Barguna', 'invoicing' ),
80
-		'BD-06' => __( 'Barishal', 'invoicing' ),
81
-		'BD-07' => __( 'Bhola', 'invoicing' ),
82
-		'BD-03' => __( 'Bogura', 'invoicing' ),
83
-		'BD-04' => __( 'Brahmanbaria', 'invoicing' ),
84
-		'BD-09' => __( 'Chandpur', 'invoicing' ),
85
-		'BD-10' => __( 'Chattogram', 'invoicing' ),
86
-		'BD-12' => __( 'Chuadanga', 'invoicing' ),
87
-		'BD-11' => __( "Cox's Bazar", 'invoicing' ),
88
-		'BD-08' => __( 'Cumilla', 'invoicing' ),
89
-		'BD-13' => __( 'Dhaka', 'invoicing' ),
90
-		'BD-14' => __( 'Dinajpur', 'invoicing' ),
91
-		'BD-15' => __( 'Faridpur ', 'invoicing' ),
92
-		'BD-16' => __( 'Feni', 'invoicing' ),
93
-		'BD-19' => __( 'Gaibandha', 'invoicing' ),
94
-		'BD-18' => __( 'Gazipur', 'invoicing' ),
95
-		'BD-17' => __( 'Gopalganj', 'invoicing' ),
96
-		'BD-20' => __( 'Habiganj', 'invoicing' ),
97
-		'BD-21' => __( 'Jamalpur', 'invoicing' ),
98
-		'BD-22' => __( 'Jashore', 'invoicing' ),
99
-		'BD-25' => __( 'Jhalokati', 'invoicing' ),
100
-		'BD-23' => __( 'Jhenaidah', 'invoicing' ),
101
-		'BD-24' => __( 'Joypurhat', 'invoicing' ),
102
-		'BD-29' => __( 'Khagrachhari', 'invoicing' ),
103
-		'BD-27' => __( 'Khulna', 'invoicing' ),
104
-		'BD-26' => __( 'Kishoreganj', 'invoicing' ),
105
-		'BD-28' => __( 'Kurigram', 'invoicing' ),
106
-		'BD-30' => __( 'Kushtia', 'invoicing' ),
107
-		'BD-31' => __( 'Lakshmipur', 'invoicing' ),
108
-		'BD-32' => __( 'Lalmonirhat', 'invoicing' ),
109
-		'BD-36' => __( 'Madaripur', 'invoicing' ),
110
-		'BD-37' => __( 'Magura', 'invoicing' ),
111
-		'BD-33' => __( 'Manikganj ', 'invoicing' ),
112
-		'BD-39' => __( 'Meherpur', 'invoicing' ),
113
-		'BD-38' => __( 'Moulvibazar', 'invoicing' ),
114
-		'BD-35' => __( 'Munshiganj', 'invoicing' ),
115
-		'BD-34' => __( 'Mymensingh', 'invoicing' ),
116
-		'BD-48' => __( 'Naogaon', 'invoicing' ),
117
-		'BD-43' => __( 'Narail', 'invoicing' ),
118
-		'BD-40' => __( 'Narayanganj', 'invoicing' ),
119
-		'BD-42' => __( 'Narsingdi', 'invoicing' ),
120
-		'BD-44' => __( 'Natore', 'invoicing' ),
121
-		'BD-45' => __( 'Nawabganj', 'invoicing' ),
122
-		'BD-41' => __( 'Netrakona', 'invoicing' ),
123
-		'BD-46' => __( 'Nilphamari', 'invoicing' ),
124
-		'BD-47' => __( 'Noakhali', 'invoicing' ),
125
-		'BD-49' => __( 'Pabna', 'invoicing' ),
126
-		'BD-52' => __( 'Panchagarh', 'invoicing' ),
127
-		'BD-51' => __( 'Patuakhali', 'invoicing' ),
128
-		'BD-50' => __( 'Pirojpur', 'invoicing' ),
129
-		'BD-53' => __( 'Rajbari', 'invoicing' ),
130
-		'BD-54' => __( 'Rajshahi', 'invoicing' ),
131
-		'BD-56' => __( 'Rangamati', 'invoicing' ),
132
-		'BD-55' => __( 'Rangpur', 'invoicing' ),
133
-		'BD-58' => __( 'Satkhira', 'invoicing' ),
134
-		'BD-62' => __( 'Shariatpur', 'invoicing' ),
135
-		'BD-57' => __( 'Sherpur', 'invoicing' ),
136
-		'BD-59' => __( 'Sirajganj', 'invoicing' ),
137
-		'BD-61' => __( 'Sunamganj', 'invoicing' ),
138
-		'BD-60' => __( 'Sylhet', 'invoicing' ),
139
-		'BD-63' => __( 'Tangail', 'invoicing' ),
140
-		'BD-64' => __( 'Thakurgaon', 'invoicing' ),
141
-	),
142
-	'BE' => array(),
143
-	'BG' => array( // Bulgarian states.
144
-		'BG-01' => __( 'Blagoevgrad', 'invoicing' ),
145
-		'BG-02' => __( 'Burgas', 'invoicing' ),
146
-		'BG-08' => __( 'Dobrich', 'invoicing' ),
147
-		'BG-07' => __( 'Gabrovo', 'invoicing' ),
148
-		'BG-26' => __( 'Haskovo', 'invoicing' ),
149
-		'BG-09' => __( 'Kardzhali', 'invoicing' ),
150
-		'BG-10' => __( 'Kyustendil', 'invoicing' ),
151
-		'BG-11' => __( 'Lovech', 'invoicing' ),
152
-		'BG-12' => __( 'Montana', 'invoicing' ),
153
-		'BG-13' => __( 'Pazardzhik', 'invoicing' ),
154
-		'BG-14' => __( 'Pernik', 'invoicing' ),
155
-		'BG-15' => __( 'Pleven', 'invoicing' ),
156
-		'BG-16' => __( 'Plovdiv', 'invoicing' ),
157
-		'BG-17' => __( 'Razgrad', 'invoicing' ),
158
-		'BG-18' => __( 'Ruse', 'invoicing' ),
159
-		'BG-27' => __( 'Shumen', 'invoicing' ),
160
-		'BG-19' => __( 'Silistra', 'invoicing' ),
161
-		'BG-20' => __( 'Sliven', 'invoicing' ),
162
-		'BG-21' => __( 'Smolyan', 'invoicing' ),
163
-		'BG-23' => __( 'Sofia', 'invoicing' ),
164
-		'BG-22' => __( 'Sofia-Grad', 'invoicing' ),
165
-		'BG-24' => __( 'Stara Zagora', 'invoicing' ),
166
-		'BG-25' => __( 'Targovishte', 'invoicing' ),
167
-		'BG-03' => __( 'Varna', 'invoicing' ),
168
-		'BG-04' => __( 'Veliko Tarnovo', 'invoicing' ),
169
-		'BG-05' => __( 'Vidin', 'invoicing' ),
170
-		'BG-06' => __( 'Vratsa', 'invoicing' ),
171
-		'BG-28' => __( 'Yambol', 'invoicing' ),
172
-	),
173
-	'BH' => array(),
174
-	'BI' => array(),
175
-	'BO' => array( // Bolivian states.
176
-		'B' => __( 'Chuquisaca', 'invoicing' ),
177
-		'H' => __( 'Beni', 'invoicing' ),
178
-		'C' => __( 'Cochabamba', 'invoicing' ),
179
-		'L' => __( 'La Paz', 'invoicing' ),
180
-		'O' => __( 'Oruro', 'invoicing' ),
181
-		'N' => __( 'Pando', 'invoicing' ),
182
-		'P' => __( 'Potosí', 'invoicing' ),
183
-		'S' => __( 'Santa Cruz', 'invoicing' ),
184
-		'T' => __( 'Tarija', 'invoicing' ),
185
-	),
186
-	'BR' => array( // Brazillian states.
187
-		'AC' => __( 'Acre', 'invoicing' ),
188
-		'AL' => __( 'Alagoas', 'invoicing' ),
189
-		'AP' => __( 'Amapá', 'invoicing' ),
190
-		'AM' => __( 'Amazonas', 'invoicing' ),
191
-		'BA' => __( 'Bahia', 'invoicing' ),
192
-		'CE' => __( 'Ceará', 'invoicing' ),
193
-		'DF' => __( 'Distrito Federal', 'invoicing' ),
194
-		'ES' => __( 'Espírito Santo', 'invoicing' ),
195
-		'GO' => __( 'Goiás', 'invoicing' ),
196
-		'MA' => __( 'Maranhão', 'invoicing' ),
197
-		'MT' => __( 'Mato Grosso', 'invoicing' ),
198
-		'MS' => __( 'Mato Grosso do Sul', 'invoicing' ),
199
-		'MG' => __( 'Minas Gerais', 'invoicing' ),
200
-		'PA' => __( 'Pará', 'invoicing' ),
201
-		'PB' => __( 'Paraíba', 'invoicing' ),
202
-		'PR' => __( 'Paraná', 'invoicing' ),
203
-		'PE' => __( 'Pernambuco', 'invoicing' ),
204
-		'PI' => __( 'Piauí', 'invoicing' ),
205
-		'RJ' => __( 'Rio de Janeiro', 'invoicing' ),
206
-		'RN' => __( 'Rio Grande do Norte', 'invoicing' ),
207
-		'RS' => __( 'Rio Grande do Sul', 'invoicing' ),
208
-		'RO' => __( 'Rondônia', 'invoicing' ),
209
-		'RR' => __( 'Roraima', 'invoicing' ),
210
-		'SC' => __( 'Santa Catarina', 'invoicing' ),
211
-		'SP' => __( 'São Paulo', 'invoicing' ),
212
-		'SE' => __( 'Sergipe', 'invoicing' ),
213
-		'TO' => __( 'Tocantins', 'invoicing' ),
214
-	),
215
-	'CA' => array( // Canadian states.
216
-		'AB' => __( 'Alberta', 'invoicing' ),
217
-		'BC' => __( 'British Columbia', 'invoicing' ),
218
-		'MB' => __( 'Manitoba', 'invoicing' ),
219
-		'NB' => __( 'New Brunswick', 'invoicing' ),
220
-		'NL' => __( 'Newfoundland and Labrador', 'invoicing' ),
221
-		'NT' => __( 'Northwest Territories', 'invoicing' ),
222
-		'NS' => __( 'Nova Scotia', 'invoicing' ),
223
-		'NU' => __( 'Nunavut', 'invoicing' ),
224
-		'ON' => __( 'Ontario', 'invoicing' ),
225
-		'PE' => __( 'Prince Edward Island', 'invoicing' ),
226
-		'QC' => __( 'Quebec', 'invoicing' ),
227
-		'SK' => __( 'Saskatchewan', 'invoicing' ),
228
-		'YT' => __( 'Yukon Territory', 'invoicing' ),
229
-	),
230
-	'CH' => array( // Cantons of Switzerland.
231
-		'AG' => __( 'Aargau', 'invoicing' ),
232
-		'AR' => __( 'Appenzell Ausserrhoden', 'invoicing' ),
233
-		'AI' => __( 'Appenzell Innerrhoden', 'invoicing' ),
234
-		'BL' => __( 'Basel-Landschaft', 'invoicing' ),
235
-		'BS' => __( 'Basel-Stadt', 'invoicing' ),
236
-		'BE' => __( 'Bern', 'invoicing' ),
237
-		'FR' => __( 'Fribourg', 'invoicing' ),
238
-		'GE' => __( 'Geneva', 'invoicing' ),
239
-		'GL' => __( 'Glarus', 'invoicing' ),
240
-		'GR' => __( 'Graubünden', 'invoicing' ),
241
-		'JU' => __( 'Jura', 'invoicing' ),
242
-		'LU' => __( 'Luzern', 'invoicing' ),
243
-		'NE' => __( 'Neuchâtel', 'invoicing' ),
244
-		'NW' => __( 'Nidwalden', 'invoicing' ),
245
-		'OW' => __( 'Obwalden', 'invoicing' ),
246
-		'SH' => __( 'Schaffhausen', 'invoicing' ),
247
-		'SZ' => __( 'Schwyz', 'invoicing' ),
248
-		'SO' => __( 'Solothurn', 'invoicing' ),
249
-		'SG' => __( 'St. Gallen', 'invoicing' ),
250
-		'TG' => __( 'Thurgau', 'invoicing' ),
251
-		'TI' => __( 'Ticino', 'invoicing' ),
252
-		'UR' => __( 'Uri', 'invoicing' ),
253
-		'VS' => __( 'Valais', 'invoicing' ),
254
-		'VD' => __( 'Vaud', 'invoicing' ),
255
-		'ZG' => __( 'Zug', 'invoicing' ),
256
-		'ZH' => __( 'Zürich', 'invoicing' ),
257
-	),
258
-	'CN' => array( // Chinese states.
259
-		'CN1'  => __( 'Yunnan / 云南', 'invoicing' ),
260
-		'CN2'  => __( 'Beijing / 北京', 'invoicing' ),
261
-		'CN3'  => __( 'Tianjin / 天津', 'invoicing' ),
262
-		'CN4'  => __( 'Hebei / 河北', 'invoicing' ),
263
-		'CN5'  => __( 'Shanxi / 山西', 'invoicing' ),
264
-		'CN6'  => __( 'Inner Mongolia / 內蒙古', 'invoicing' ),
265
-		'CN7'  => __( 'Liaoning / 辽宁', 'invoicing' ),
266
-		'CN8'  => __( 'Jilin / 吉林', 'invoicing' ),
267
-		'CN9'  => __( 'Heilongjiang / 黑龙江', 'invoicing' ),
268
-		'CN10' => __( 'Shanghai / 上海', 'invoicing' ),
269
-		'CN11' => __( 'Jiangsu / 江苏', 'invoicing' ),
270
-		'CN12' => __( 'Zhejiang / 浙江', 'invoicing' ),
271
-		'CN13' => __( 'Anhui / 安徽', 'invoicing' ),
272
-		'CN14' => __( 'Fujian / 福建', 'invoicing' ),
273
-		'CN15' => __( 'Jiangxi / 江西', 'invoicing' ),
274
-		'CN16' => __( 'Shandong / 山东', 'invoicing' ),
275
-		'CN17' => __( 'Henan / 河南', 'invoicing' ),
276
-		'CN18' => __( 'Hubei / 湖北', 'invoicing' ),
277
-		'CN19' => __( 'Hunan / 湖南', 'invoicing' ),
278
-		'CN20' => __( 'Guangdong / 广东', 'invoicing' ),
279
-		'CN21' => __( 'Guangxi Zhuang / 广西壮族', 'invoicing' ),
280
-		'CN22' => __( 'Hainan / 海南', 'invoicing' ),
281
-		'CN23' => __( 'Chongqing / 重庆', 'invoicing' ),
282
-		'CN24' => __( 'Sichuan / 四川', 'invoicing' ),
283
-		'CN25' => __( 'Guizhou / 贵州', 'invoicing' ),
284
-		'CN26' => __( 'Shaanxi / 陕西', 'invoicing' ),
285
-		'CN27' => __( 'Gansu / 甘肃', 'invoicing' ),
286
-		'CN28' => __( 'Qinghai / 青海', 'invoicing' ),
287
-		'CN29' => __( 'Ningxia Hui / 宁夏', 'invoicing' ),
288
-		'CN30' => __( 'Macao / 澳门', 'invoicing' ),
289
-		'CN31' => __( 'Tibet / 西藏', 'invoicing' ),
290
-		'CN32' => __( 'Xinjiang / 新疆', 'invoicing' ),
291
-	),
292
-	'CZ' => array(),
293
-	'DE' => array(),
294
-	'DK' => array(),
295
-	'EE' => array(),
296
-	'ES' => array( // Spanish states.
297
-		'C'  => __( 'A Coruña', 'invoicing' ),
298
-		'VI' => __( 'Araba/Álava', 'invoicing' ),
299
-		'AB' => __( 'Albacete', 'invoicing' ),
300
-		'A'  => __( 'Alicante', 'invoicing' ),
301
-		'AL' => __( 'Almería', 'invoicing' ),
302
-		'O'  => __( 'Asturias', 'invoicing' ),
303
-		'AV' => __( 'Ávila', 'invoicing' ),
304
-		'BA' => __( 'Badajoz', 'invoicing' ),
305
-		'PM' => __( 'Baleares', 'invoicing' ),
306
-		'B'  => __( 'Barcelona', 'invoicing' ),
307
-		'BU' => __( 'Burgos', 'invoicing' ),
308
-		'CC' => __( 'Cáceres', 'invoicing' ),
309
-		'CA' => __( 'Cádiz', 'invoicing' ),
310
-		'S'  => __( 'Cantabria', 'invoicing' ),
311
-		'CS' => __( 'Castellón', 'invoicing' ),
312
-		'CE' => __( 'Ceuta', 'invoicing' ),
313
-		'CR' => __( 'Ciudad Real', 'invoicing' ),
314
-		'CO' => __( 'Córdoba', 'invoicing' ),
315
-		'CU' => __( 'Cuenca', 'invoicing' ),
316
-		'GI' => __( 'Girona', 'invoicing' ),
317
-		'GR' => __( 'Granada', 'invoicing' ),
318
-		'GU' => __( 'Guadalajara', 'invoicing' ),
319
-		'SS' => __( 'Gipuzkoa', 'invoicing' ),
320
-		'H'  => __( 'Huelva', 'invoicing' ),
321
-		'HU' => __( 'Huesca', 'invoicing' ),
322
-		'J'  => __( 'Jaén', 'invoicing' ),
323
-		'LO' => __( 'La Rioja', 'invoicing' ),
324
-		'GC' => __( 'Las Palmas', 'invoicing' ),
325
-		'LE' => __( 'León', 'invoicing' ),
326
-		'L'  => __( 'Lleida', 'invoicing' ),
327
-		'LU' => __( 'Lugo', 'invoicing' ),
328
-		'M'  => __( 'Madrid', 'invoicing' ),
329
-		'MA' => __( 'Málaga', 'invoicing' ),
330
-		'ML' => __( 'Melilla', 'invoicing' ),
331
-		'MU' => __( 'Murcia', 'invoicing' ),
332
-		'NA' => __( 'Navarra', 'invoicing' ),
333
-		'OR' => __( 'Ourense', 'invoicing' ),
334
-		'P'  => __( 'Palencia', 'invoicing' ),
335
-		'PO' => __( 'Pontevedra', 'invoicing' ),
336
-		'SA' => __( 'Salamanca', 'invoicing' ),
337
-		'TF' => __( 'Santa Cruz de Tenerife', 'invoicing' ),
338
-		'SG' => __( 'Segovia', 'invoicing' ),
339
-		'SE' => __( 'Sevilla', 'invoicing' ),
340
-		'SO' => __( 'Soria', 'invoicing' ),
341
-		'T'  => __( 'Tarragona', 'invoicing' ),
342
-		'TE' => __( 'Teruel', 'invoicing' ),
343
-		'TO' => __( 'Toledo', 'invoicing' ),
344
-		'V'  => __( 'Valencia', 'invoicing' ),
345
-		'VA' => __( 'Valladolid', 'invoicing' ),
346
-		'BI' => __( 'Bizkaia', 'invoicing' ),
347
-		'ZA' => __( 'Zamora', 'invoicing' ),
348
-		'Z'  => __( 'Zaragoza', 'invoicing' ),
349
-	),
350
-	'FI' => array(),
351
-	'FR' => array(),
352
-	'GP' => array(),
353
-	'GR' => array( // Greek Regions.
354
-		'I' => __( 'Αττική', 'invoicing' ),
355
-		'A' => __( 'Ανατολική Μακεδονία και Θράκη', 'invoicing' ),
356
-		'B' => __( 'Κεντρική Μακεδονία', 'invoicing' ),
357
-		'C' => __( 'Δυτική Μακεδονία', 'invoicing' ),
358
-		'D' => __( 'Ήπειρος', 'invoicing' ),
359
-		'E' => __( 'Θεσσαλία', 'invoicing' ),
360
-		'F' => __( 'Ιόνιοι Νήσοι', 'invoicing' ),
361
-		'G' => __( 'Δυτική Ελλάδα', 'invoicing' ),
362
-		'H' => __( 'Στερεά Ελλάδα', 'invoicing' ),
363
-		'J' => __( 'Πελοπόννησος', 'invoicing' ),
364
-		'K' => __( 'Βόρειο Αιγαίο', 'invoicing' ),
365
-		'L' => __( 'Νότιο Αιγαίο', 'invoicing' ),
366
-		'M' => __( 'Κρήτη', 'invoicing' ),
367
-	),
368
-	'GF' => array(),
369
-	'HK' => array( // Hong Kong states.
370
-		'HONG KONG'       => __( 'Hong Kong Island', 'invoicing' ),
371
-		'KOWLOON'         => __( 'Kowloon', 'invoicing' ),
372
-		'NEW TERRITORIES' => __( 'New Territories', 'invoicing' ),
373
-	),
374
-	'HU' => array( // Hungary states.
375
-		'BK' => __( 'Bács-Kiskun', 'invoicing' ),
376
-		'BE' => __( 'Békés', 'invoicing' ),
377
-		'BA' => __( 'Baranya', 'invoicing' ),
378
-		'BZ' => __( 'Borsod-Abaúj-Zemplén', 'invoicing' ),
379
-		'BU' => __( 'Budapest', 'invoicing' ),
380
-		'CS' => __( 'Csongrád', 'invoicing' ),
381
-		'FE' => __( 'Fejér', 'invoicing' ),
382
-		'GS' => __( 'Győr-Moson-Sopron', 'invoicing' ),
383
-		'HB' => __( 'Hajdú-Bihar', 'invoicing' ),
384
-		'HE' => __( 'Heves', 'invoicing' ),
385
-		'JN' => __( 'Jász-Nagykun-Szolnok', 'invoicing' ),
386
-		'KE' => __( 'Komárom-Esztergom', 'invoicing' ),
387
-		'NO' => __( 'Nógrád', 'invoicing' ),
388
-		'PE' => __( 'Pest', 'invoicing' ),
389
-		'SO' => __( 'Somogy', 'invoicing' ),
390
-		'SZ' => __( 'Szabolcs-Szatmár-Bereg', 'invoicing' ),
391
-		'TO' => __( 'Tolna', 'invoicing' ),
392
-		'VA' => __( 'Vas', 'invoicing' ),
393
-		'VE' => __( 'Veszprém', 'invoicing' ),
394
-		'ZA' => __( 'Zala', 'invoicing' ),
395
-	),
396
-	'ID' => array( // Indonesia Provinces.
397
-		'AC' => __( 'Daerah Istimewa Aceh', 'invoicing' ),
398
-		'SU' => __( 'Sumatera Utara', 'invoicing' ),
399
-		'SB' => __( 'Sumatera Barat', 'invoicing' ),
400
-		'RI' => __( 'Riau', 'invoicing' ),
401
-		'KR' => __( 'Kepulauan Riau', 'invoicing' ),
402
-		'JA' => __( 'Jambi', 'invoicing' ),
403
-		'SS' => __( 'Sumatera Selatan', 'invoicing' ),
404
-		'BB' => __( 'Bangka Belitung', 'invoicing' ),
405
-		'BE' => __( 'Bengkulu', 'invoicing' ),
406
-		'LA' => __( 'Lampung', 'invoicing' ),
407
-		'JK' => __( 'DKI Jakarta', 'invoicing' ),
408
-		'JB' => __( 'Jawa Barat', 'invoicing' ),
409
-		'BT' => __( 'Banten', 'invoicing' ),
410
-		'JT' => __( 'Jawa Tengah', 'invoicing' ),
411
-		'JI' => __( 'Jawa Timur', 'invoicing' ),
412
-		'YO' => __( 'Daerah Istimewa Yogyakarta', 'invoicing' ),
413
-		'BA' => __( 'Bali', 'invoicing' ),
414
-		'NB' => __( 'Nusa Tenggara Barat', 'invoicing' ),
415
-		'NT' => __( 'Nusa Tenggara Timur', 'invoicing' ),
416
-		'KB' => __( 'Kalimantan Barat', 'invoicing' ),
417
-		'KT' => __( 'Kalimantan Tengah', 'invoicing' ),
418
-		'KI' => __( 'Kalimantan Timur', 'invoicing' ),
419
-		'KS' => __( 'Kalimantan Selatan', 'invoicing' ),
420
-		'KU' => __( 'Kalimantan Utara', 'invoicing' ),
421
-		'SA' => __( 'Sulawesi Utara', 'invoicing' ),
422
-		'ST' => __( 'Sulawesi Tengah', 'invoicing' ),
423
-		'SG' => __( 'Sulawesi Tenggara', 'invoicing' ),
424
-		'SR' => __( 'Sulawesi Barat', 'invoicing' ),
425
-		'SN' => __( 'Sulawesi Selatan', 'invoicing' ),
426
-		'GO' => __( 'Gorontalo', 'invoicing' ),
427
-		'MA' => __( 'Maluku', 'invoicing' ),
428
-		'MU' => __( 'Maluku Utara', 'invoicing' ),
429
-		'PA' => __( 'Papua', 'invoicing' ),
430
-		'PB' => __( 'Papua Barat', 'invoicing' ),
431
-	),
432
-	'IE' => array( // Republic of Ireland.
433
-		'CW' => __( 'Carlow', 'invoicing' ),
434
-		'CN' => __( 'Cavan', 'invoicing' ),
435
-		'CE' => __( 'Clare', 'invoicing' ),
436
-		'CO' => __( 'Cork', 'invoicing' ),
437
-		'DL' => __( 'Donegal', 'invoicing' ),
438
-		'D'  => __( 'Dublin', 'invoicing' ),
439
-		'G'  => __( 'Galway', 'invoicing' ),
440
-		'KY' => __( 'Kerry', 'invoicing' ),
441
-		'KE' => __( 'Kildare', 'invoicing' ),
442
-		'KK' => __( 'Kilkenny', 'invoicing' ),
443
-		'LS' => __( 'Laois', 'invoicing' ),
444
-		'LM' => __( 'Leitrim', 'invoicing' ),
445
-		'LK' => __( 'Limerick', 'invoicing' ),
446
-		'LD' => __( 'Longford', 'invoicing' ),
447
-		'LH' => __( 'Louth', 'invoicing' ),
448
-		'MO' => __( 'Mayo', 'invoicing' ),
449
-		'MH' => __( 'Meath', 'invoicing' ),
450
-		'MN' => __( 'Monaghan', 'invoicing' ),
451
-		'OY' => __( 'Offaly', 'invoicing' ),
452
-		'RN' => __( 'Roscommon', 'invoicing' ),
453
-		'SO' => __( 'Sligo', 'invoicing' ),
454
-		'TA' => __( 'Tipperary', 'invoicing' ),
455
-		'WD' => __( 'Waterford', 'invoicing' ),
456
-		'WH' => __( 'Westmeath', 'invoicing' ),
457
-		'WX' => __( 'Wexford', 'invoicing' ),
458
-		'WW' => __( 'Wicklow', 'invoicing' ),
459
-	),
460
-	'IN' => array( // Indian states.
461
-		'AP' => __( 'Andhra Pradesh', 'invoicing' ),
462
-		'AR' => __( 'Arunachal Pradesh', 'invoicing' ),
463
-		'AS' => __( 'Assam', 'invoicing' ),
464
-		'BR' => __( 'Bihar', 'invoicing' ),
465
-		'CT' => __( 'Chhattisgarh', 'invoicing' ),
466
-		'GA' => __( 'Goa', 'invoicing' ),
467
-		'GJ' => __( 'Gujarat', 'invoicing' ),
468
-		'HR' => __( 'Haryana', 'invoicing' ),
469
-		'HP' => __( 'Himachal Pradesh', 'invoicing' ),
470
-		'JK' => __( 'Jammu and Kashmir', 'invoicing' ),
471
-		'JH' => __( 'Jharkhand', 'invoicing' ),
472
-		'KA' => __( 'Karnataka', 'invoicing' ),
473
-		'KL' => __( 'Kerala', 'invoicing' ),
474
-		'MP' => __( 'Madhya Pradesh', 'invoicing' ),
475
-		'MH' => __( 'Maharashtra', 'invoicing' ),
476
-		'MN' => __( 'Manipur', 'invoicing' ),
477
-		'ML' => __( 'Meghalaya', 'invoicing' ),
478
-		'MZ' => __( 'Mizoram', 'invoicing' ),
479
-		'NL' => __( 'Nagaland', 'invoicing' ),
480
-		'OR' => __( 'Orissa', 'invoicing' ),
481
-		'PB' => __( 'Punjab', 'invoicing' ),
482
-		'RJ' => __( 'Rajasthan', 'invoicing' ),
483
-		'SK' => __( 'Sikkim', 'invoicing' ),
484
-		'TN' => __( 'Tamil Nadu', 'invoicing' ),
485
-		'TS' => __( 'Telangana', 'invoicing' ),
486
-		'TR' => __( 'Tripura', 'invoicing' ),
487
-		'UK' => __( 'Uttarakhand', 'invoicing' ),
488
-		'UP' => __( 'Uttar Pradesh', 'invoicing' ),
489
-		'WB' => __( 'West Bengal', 'invoicing' ),
490
-		'AN' => __( 'Andaman and Nicobar Islands', 'invoicing' ),
491
-		'CH' => __( 'Chandigarh', 'invoicing' ),
492
-		'DN' => __( 'Dadra and Nagar Haveli', 'invoicing' ),
493
-		'DD' => __( 'Daman and Diu', 'invoicing' ),
494
-		'DL' => __( 'Delhi', 'invoicing' ),
495
-		'LD' => __( 'Lakshadeep', 'invoicing' ),
496
-		'PY' => __( 'Pondicherry (Puducherry)', 'invoicing' ),
497
-	),
498
-	'IR' => array( // Iran States.
499
-		'KHZ' => __( 'Khuzestan  (خوزستان)', 'invoicing' ),
500
-		'THR' => __( 'Tehran  (تهران)', 'invoicing' ),
501
-		'ILM' => __( 'Ilaam (ایلام)', 'invoicing' ),
502
-		'BHR' => __( 'Bushehr (بوشهر)', 'invoicing' ),
503
-		'ADL' => __( 'Ardabil (اردبیل)', 'invoicing' ),
504
-		'ESF' => __( 'Isfahan (اصفهان)', 'invoicing' ),
505
-		'YZD' => __( 'Yazd (یزد)', 'invoicing' ),
506
-		'KRH' => __( 'Kermanshah (کرمانشاه)', 'invoicing' ),
507
-		'KRN' => __( 'Kerman (کرمان)', 'invoicing' ),
508
-		'HDN' => __( 'Hamadan (همدان)', 'invoicing' ),
509
-		'GZN' => __( 'Ghazvin (قزوین)', 'invoicing' ),
510
-		'ZJN' => __( 'Zanjan (زنجان)', 'invoicing' ),
511
-		'LRS' => __( 'Luristan (لرستان)', 'invoicing' ),
512
-		'ABZ' => __( 'Alborz (البرز)', 'invoicing' ),
513
-		'EAZ' => __( 'East Azarbaijan (آذربایجان شرقی)', 'invoicing' ),
514
-		'WAZ' => __( 'West Azarbaijan (آذربایجان غربی)', 'invoicing' ),
515
-		'CHB' => __( 'Chaharmahal and Bakhtiari (چهارمحال و بختیاری)', 'invoicing' ),
516
-		'SKH' => __( 'South Khorasan (خراسان جنوبی)', 'invoicing' ),
517
-		'RKH' => __( 'Razavi Khorasan (خراسان رضوی)', 'invoicing' ),
518
-		'NKH' => __( 'North Khorasan (خراسان شمالی)', 'invoicing' ),
519
-		'SMN' => __( 'Semnan (سمنان)', 'invoicing' ),
520
-		'FRS' => __( 'Fars (فارس)', 'invoicing' ),
521
-		'QHM' => __( 'Qom (قم)', 'invoicing' ),
522
-		'KRD' => __( 'Kurdistan / کردستان)', 'invoicing' ),
523
-		'KBD' => __( 'Kohgiluyeh and BoyerAhmad (کهگیلوییه و بویراحمد)', 'invoicing' ),
524
-		'GLS' => __( 'Golestan (گلستان)', 'invoicing' ),
525
-		'GIL' => __( 'Gilan (گیلان)', 'invoicing' ),
526
-		'MZN' => __( 'Mazandaran (مازندران)', 'invoicing' ),
527
-		'MKZ' => __( 'Markazi (مرکزی)', 'invoicing' ),
528
-		'HRZ' => __( 'Hormozgan (هرمزگان)', 'invoicing' ),
529
-		'SBN' => __( 'Sistan and Baluchestan (سیستان و بلوچستان)', 'invoicing' ),
530
-	),
531
-	'IS' => array(),
532
-	'IT' => array( // Italy Provinces.
533
-		'AG' => __( 'Agrigento', 'invoicing' ),
534
-		'AL' => __( 'Alessandria', 'invoicing' ),
535
-		'AN' => __( 'Ancona', 'invoicing' ),
536
-		'AO' => __( 'Aosta', 'invoicing' ),
537
-		'AR' => __( 'Arezzo', 'invoicing' ),
538
-		'AP' => __( 'Ascoli Piceno', 'invoicing' ),
539
-		'AT' => __( 'Asti', 'invoicing' ),
540
-		'AV' => __( 'Avellino', 'invoicing' ),
541
-		'BA' => __( 'Bari', 'invoicing' ),
542
-		'BT' => __( 'Barletta-Andria-Trani', 'invoicing' ),
543
-		'BL' => __( 'Belluno', 'invoicing' ),
544
-		'BN' => __( 'Benevento', 'invoicing' ),
545
-		'BG' => __( 'Bergamo', 'invoicing' ),
546
-		'BI' => __( 'Biella', 'invoicing' ),
547
-		'BO' => __( 'Bologna', 'invoicing' ),
548
-		'BZ' => __( 'Bolzano', 'invoicing' ),
549
-		'BS' => __( 'Brescia', 'invoicing' ),
550
-		'BR' => __( 'Brindisi', 'invoicing' ),
551
-		'CA' => __( 'Cagliari', 'invoicing' ),
552
-		'CL' => __( 'Caltanissetta', 'invoicing' ),
553
-		'CB' => __( 'Campobasso', 'invoicing' ),
554
-		'CE' => __( 'Caserta', 'invoicing' ),
555
-		'CT' => __( 'Catania', 'invoicing' ),
556
-		'CZ' => __( 'Catanzaro', 'invoicing' ),
557
-		'CH' => __( 'Chieti', 'invoicing' ),
558
-		'CO' => __( 'Como', 'invoicing' ),
559
-		'CS' => __( 'Cosenza', 'invoicing' ),
560
-		'CR' => __( 'Cremona', 'invoicing' ),
561
-		'KR' => __( 'Crotone', 'invoicing' ),
562
-		'CN' => __( 'Cuneo', 'invoicing' ),
563
-		'EN' => __( 'Enna', 'invoicing' ),
564
-		'FM' => __( 'Fermo', 'invoicing' ),
565
-		'FE' => __( 'Ferrara', 'invoicing' ),
566
-		'FI' => __( 'Firenze', 'invoicing' ),
567
-		'FG' => __( 'Foggia', 'invoicing' ),
568
-		'FC' => __( 'Forlì-Cesena', 'invoicing' ),
569
-		'FR' => __( 'Frosinone', 'invoicing' ),
570
-		'GE' => __( 'Genova', 'invoicing' ),
571
-		'GO' => __( 'Gorizia', 'invoicing' ),
572
-		'GR' => __( 'Grosseto', 'invoicing' ),
573
-		'IM' => __( 'Imperia', 'invoicing' ),
574
-		'IS' => __( 'Isernia', 'invoicing' ),
575
-		'SP' => __( 'La Spezia', 'invoicing' ),
576
-		'AQ' => __( "L'Aquila", 'invoicing' ),
577
-		'LT' => __( 'Latina', 'invoicing' ),
578
-		'LE' => __( 'Lecce', 'invoicing' ),
579
-		'LC' => __( 'Lecco', 'invoicing' ),
580
-		'LI' => __( 'Livorno', 'invoicing' ),
581
-		'LO' => __( 'Lodi', 'invoicing' ),
582
-		'LU' => __( 'Lucca', 'invoicing' ),
583
-		'MC' => __( 'Macerata', 'invoicing' ),
584
-		'MN' => __( 'Mantova', 'invoicing' ),
585
-		'MS' => __( 'Massa-Carrara', 'invoicing' ),
586
-		'MT' => __( 'Matera', 'invoicing' ),
587
-		'ME' => __( 'Messina', 'invoicing' ),
588
-		'MI' => __( 'Milano', 'invoicing' ),
589
-		'MO' => __( 'Modena', 'invoicing' ),
590
-		'MB' => __( 'Monza e della Brianza', 'invoicing' ),
591
-		'NA' => __( 'Napoli', 'invoicing' ),
592
-		'NO' => __( 'Novara', 'invoicing' ),
593
-		'NU' => __( 'Nuoro', 'invoicing' ),
594
-		'OR' => __( 'Oristano', 'invoicing' ),
595
-		'PD' => __( 'Padova', 'invoicing' ),
596
-		'PA' => __( 'Palermo', 'invoicing' ),
597
-		'PR' => __( 'Parma', 'invoicing' ),
598
-		'PV' => __( 'Pavia', 'invoicing' ),
599
-		'PG' => __( 'Perugia', 'invoicing' ),
600
-		'PU' => __( 'Pesaro e Urbino', 'invoicing' ),
601
-		'PE' => __( 'Pescara', 'invoicing' ),
602
-		'PC' => __( 'Piacenza', 'invoicing' ),
603
-		'PI' => __( 'Pisa', 'invoicing' ),
604
-		'PT' => __( 'Pistoia', 'invoicing' ),
605
-		'PN' => __( 'Pordenone', 'invoicing' ),
606
-		'PZ' => __( 'Potenza', 'invoicing' ),
607
-		'PO' => __( 'Prato', 'invoicing' ),
608
-		'RG' => __( 'Ragusa', 'invoicing' ),
609
-		'RA' => __( 'Ravenna', 'invoicing' ),
610
-		'RC' => __( 'Reggio Calabria', 'invoicing' ),
611
-		'RE' => __( 'Reggio Emilia', 'invoicing' ),
612
-		'RI' => __( 'Rieti', 'invoicing' ),
613
-		'RN' => __( 'Rimini', 'invoicing' ),
614
-		'RM' => __( 'Roma', 'invoicing' ),
615
-		'RO' => __( 'Rovigo', 'invoicing' ),
616
-		'SA' => __( 'Salerno', 'invoicing' ),
617
-		'SS' => __( 'Sassari', 'invoicing' ),
618
-		'SV' => __( 'Savona', 'invoicing' ),
619
-		'SI' => __( 'Siena', 'invoicing' ),
620
-		'SR' => __( 'Siracusa', 'invoicing' ),
621
-		'SO' => __( 'Sondrio', 'invoicing' ),
622
-		'SU' => __( 'Sud Sardegna', 'invoicing' ),
623
-		'TA' => __( 'Taranto', 'invoicing' ),
624
-		'TE' => __( 'Teramo', 'invoicing' ),
625
-		'TR' => __( 'Terni', 'invoicing' ),
626
-		'TO' => __( 'Torino', 'invoicing' ),
627
-		'TP' => __( 'Trapani', 'invoicing' ),
628
-		'TN' => __( 'Trento', 'invoicing' ),
629
-		'TV' => __( 'Treviso', 'invoicing' ),
630
-		'TS' => __( 'Trieste', 'invoicing' ),
631
-		'UD' => __( 'Udine', 'invoicing' ),
632
-		'VA' => __( 'Varese', 'invoicing' ),
633
-		'VE' => __( 'Venezia', 'invoicing' ),
634
-		'VB' => __( 'Verbano-Cusio-Ossola', 'invoicing' ),
635
-		'VC' => __( 'Vercelli', 'invoicing' ),
636
-		'VR' => __( 'Verona', 'invoicing' ),
637
-		'VV' => __( 'Vibo Valentia', 'invoicing' ),
638
-		'VI' => __( 'Vicenza', 'invoicing' ),
639
-		'VT' => __( 'Viterbo', 'invoicing' ),
640
-	),
641
-	'IL' => array(),
642
-	'IM' => array(),
17
+    'AF' => array(),
18
+    'AO' => array( // Angola states.
19
+        'BGO' => __( 'Bengo', 'invoicing' ),
20
+        'BLU' => __( 'Benguela', 'invoicing' ),
21
+        'BIE' => __( 'Bié', 'invoicing' ),
22
+        'CAB' => __( 'Cabinda', 'invoicing' ),
23
+        'CNN' => __( 'Cunene', 'invoicing' ),
24
+        'HUA' => __( 'Huambo', 'invoicing' ),
25
+        'HUI' => __( 'Huíla', 'invoicing' ),
26
+        'CCU' => __( 'Kuando Kubango', 'invoicing' ),
27
+        'CNO' => __( 'Kwanza-Norte', 'invoicing' ),
28
+        'CUS' => __( 'Kwanza-Sul', 'invoicing' ),
29
+        'LUA' => __( 'Luanda', 'invoicing' ),
30
+        'LNO' => __( 'Lunda-Norte', 'invoicing' ),
31
+        'LSU' => __( 'Lunda-Sul', 'invoicing' ),
32
+        'MAL' => __( 'Malanje', 'invoicing' ),
33
+        'MOX' => __( 'Moxico', 'invoicing' ),
34
+        'NAM' => __( 'Namibe', 'invoicing' ),
35
+        'UIG' => __( 'Uíge', 'invoicing' ),
36
+        'ZAI' => __( 'Zaire', 'invoicing' ),
37
+    ),
38
+    'AR' => array( // Argentinian provinces.
39
+        'C' => __( 'Ciudad Autónoma de Buenos Aires', 'invoicing' ),
40
+        'B' => __( 'Buenos Aires', 'invoicing' ),
41
+        'K' => __( 'Catamarca', 'invoicing' ),
42
+        'H' => __( 'Chaco', 'invoicing' ),
43
+        'U' => __( 'Chubut', 'invoicing' ),
44
+        'X' => __( 'Córdoba', 'invoicing' ),
45
+        'W' => __( 'Corrientes', 'invoicing' ),
46
+        'E' => __( 'Entre Ríos', 'invoicing' ),
47
+        'P' => __( 'Formosa', 'invoicing' ),
48
+        'Y' => __( 'Jujuy', 'invoicing' ),
49
+        'L' => __( 'La Pampa', 'invoicing' ),
50
+        'F' => __( 'La Rioja', 'invoicing' ),
51
+        'M' => __( 'Mendoza', 'invoicing' ),
52
+        'N' => __( 'Misiones', 'invoicing' ),
53
+        'Q' => __( 'Neuquén', 'invoicing' ),
54
+        'R' => __( 'Río Negro', 'invoicing' ),
55
+        'A' => __( 'Salta', 'invoicing' ),
56
+        'J' => __( 'San Juan', 'invoicing' ),
57
+        'D' => __( 'San Luis', 'invoicing' ),
58
+        'Z' => __( 'Santa Cruz', 'invoicing' ),
59
+        'S' => __( 'Santa Fe', 'invoicing' ),
60
+        'G' => __( 'Santiago del Estero', 'invoicing' ),
61
+        'V' => __( 'Tierra del Fuego', 'invoicing' ),
62
+        'T' => __( 'Tucumán', 'invoicing' ),
63
+    ),
64
+    'AT' => array(),
65
+    'AU' => array( // Australian states.
66
+        'ACT' => __( 'Australian Capital Territory', 'invoicing' ),
67
+        'NSW' => __( 'New South Wales', 'invoicing' ),
68
+        'NT'  => __( 'Northern Territory', 'invoicing' ),
69
+        'QLD' => __( 'Queensland', 'invoicing' ),
70
+        'SA'  => __( 'South Australia', 'invoicing' ),
71
+        'TAS' => __( 'Tasmania', 'invoicing' ),
72
+        'VIC' => __( 'Victoria', 'invoicing' ),
73
+        'WA'  => __( 'Western Australia', 'invoicing' ),
74
+    ),
75
+    'AX' => array(),
76
+    'BD' => array( // Bangladeshi states (districts).
77
+        'BD-05' => __( 'Bagerhat', 'invoicing' ),
78
+        'BD-01' => __( 'Bandarban', 'invoicing' ),
79
+        'BD-02' => __( 'Barguna', 'invoicing' ),
80
+        'BD-06' => __( 'Barishal', 'invoicing' ),
81
+        'BD-07' => __( 'Bhola', 'invoicing' ),
82
+        'BD-03' => __( 'Bogura', 'invoicing' ),
83
+        'BD-04' => __( 'Brahmanbaria', 'invoicing' ),
84
+        'BD-09' => __( 'Chandpur', 'invoicing' ),
85
+        'BD-10' => __( 'Chattogram', 'invoicing' ),
86
+        'BD-12' => __( 'Chuadanga', 'invoicing' ),
87
+        'BD-11' => __( "Cox's Bazar", 'invoicing' ),
88
+        'BD-08' => __( 'Cumilla', 'invoicing' ),
89
+        'BD-13' => __( 'Dhaka', 'invoicing' ),
90
+        'BD-14' => __( 'Dinajpur', 'invoicing' ),
91
+        'BD-15' => __( 'Faridpur ', 'invoicing' ),
92
+        'BD-16' => __( 'Feni', 'invoicing' ),
93
+        'BD-19' => __( 'Gaibandha', 'invoicing' ),
94
+        'BD-18' => __( 'Gazipur', 'invoicing' ),
95
+        'BD-17' => __( 'Gopalganj', 'invoicing' ),
96
+        'BD-20' => __( 'Habiganj', 'invoicing' ),
97
+        'BD-21' => __( 'Jamalpur', 'invoicing' ),
98
+        'BD-22' => __( 'Jashore', 'invoicing' ),
99
+        'BD-25' => __( 'Jhalokati', 'invoicing' ),
100
+        'BD-23' => __( 'Jhenaidah', 'invoicing' ),
101
+        'BD-24' => __( 'Joypurhat', 'invoicing' ),
102
+        'BD-29' => __( 'Khagrachhari', 'invoicing' ),
103
+        'BD-27' => __( 'Khulna', 'invoicing' ),
104
+        'BD-26' => __( 'Kishoreganj', 'invoicing' ),
105
+        'BD-28' => __( 'Kurigram', 'invoicing' ),
106
+        'BD-30' => __( 'Kushtia', 'invoicing' ),
107
+        'BD-31' => __( 'Lakshmipur', 'invoicing' ),
108
+        'BD-32' => __( 'Lalmonirhat', 'invoicing' ),
109
+        'BD-36' => __( 'Madaripur', 'invoicing' ),
110
+        'BD-37' => __( 'Magura', 'invoicing' ),
111
+        'BD-33' => __( 'Manikganj ', 'invoicing' ),
112
+        'BD-39' => __( 'Meherpur', 'invoicing' ),
113
+        'BD-38' => __( 'Moulvibazar', 'invoicing' ),
114
+        'BD-35' => __( 'Munshiganj', 'invoicing' ),
115
+        'BD-34' => __( 'Mymensingh', 'invoicing' ),
116
+        'BD-48' => __( 'Naogaon', 'invoicing' ),
117
+        'BD-43' => __( 'Narail', 'invoicing' ),
118
+        'BD-40' => __( 'Narayanganj', 'invoicing' ),
119
+        'BD-42' => __( 'Narsingdi', 'invoicing' ),
120
+        'BD-44' => __( 'Natore', 'invoicing' ),
121
+        'BD-45' => __( 'Nawabganj', 'invoicing' ),
122
+        'BD-41' => __( 'Netrakona', 'invoicing' ),
123
+        'BD-46' => __( 'Nilphamari', 'invoicing' ),
124
+        'BD-47' => __( 'Noakhali', 'invoicing' ),
125
+        'BD-49' => __( 'Pabna', 'invoicing' ),
126
+        'BD-52' => __( 'Panchagarh', 'invoicing' ),
127
+        'BD-51' => __( 'Patuakhali', 'invoicing' ),
128
+        'BD-50' => __( 'Pirojpur', 'invoicing' ),
129
+        'BD-53' => __( 'Rajbari', 'invoicing' ),
130
+        'BD-54' => __( 'Rajshahi', 'invoicing' ),
131
+        'BD-56' => __( 'Rangamati', 'invoicing' ),
132
+        'BD-55' => __( 'Rangpur', 'invoicing' ),
133
+        'BD-58' => __( 'Satkhira', 'invoicing' ),
134
+        'BD-62' => __( 'Shariatpur', 'invoicing' ),
135
+        'BD-57' => __( 'Sherpur', 'invoicing' ),
136
+        'BD-59' => __( 'Sirajganj', 'invoicing' ),
137
+        'BD-61' => __( 'Sunamganj', 'invoicing' ),
138
+        'BD-60' => __( 'Sylhet', 'invoicing' ),
139
+        'BD-63' => __( 'Tangail', 'invoicing' ),
140
+        'BD-64' => __( 'Thakurgaon', 'invoicing' ),
141
+    ),
142
+    'BE' => array(),
143
+    'BG' => array( // Bulgarian states.
144
+        'BG-01' => __( 'Blagoevgrad', 'invoicing' ),
145
+        'BG-02' => __( 'Burgas', 'invoicing' ),
146
+        'BG-08' => __( 'Dobrich', 'invoicing' ),
147
+        'BG-07' => __( 'Gabrovo', 'invoicing' ),
148
+        'BG-26' => __( 'Haskovo', 'invoicing' ),
149
+        'BG-09' => __( 'Kardzhali', 'invoicing' ),
150
+        'BG-10' => __( 'Kyustendil', 'invoicing' ),
151
+        'BG-11' => __( 'Lovech', 'invoicing' ),
152
+        'BG-12' => __( 'Montana', 'invoicing' ),
153
+        'BG-13' => __( 'Pazardzhik', 'invoicing' ),
154
+        'BG-14' => __( 'Pernik', 'invoicing' ),
155
+        'BG-15' => __( 'Pleven', 'invoicing' ),
156
+        'BG-16' => __( 'Plovdiv', 'invoicing' ),
157
+        'BG-17' => __( 'Razgrad', 'invoicing' ),
158
+        'BG-18' => __( 'Ruse', 'invoicing' ),
159
+        'BG-27' => __( 'Shumen', 'invoicing' ),
160
+        'BG-19' => __( 'Silistra', 'invoicing' ),
161
+        'BG-20' => __( 'Sliven', 'invoicing' ),
162
+        'BG-21' => __( 'Smolyan', 'invoicing' ),
163
+        'BG-23' => __( 'Sofia', 'invoicing' ),
164
+        'BG-22' => __( 'Sofia-Grad', 'invoicing' ),
165
+        'BG-24' => __( 'Stara Zagora', 'invoicing' ),
166
+        'BG-25' => __( 'Targovishte', 'invoicing' ),
167
+        'BG-03' => __( 'Varna', 'invoicing' ),
168
+        'BG-04' => __( 'Veliko Tarnovo', 'invoicing' ),
169
+        'BG-05' => __( 'Vidin', 'invoicing' ),
170
+        'BG-06' => __( 'Vratsa', 'invoicing' ),
171
+        'BG-28' => __( 'Yambol', 'invoicing' ),
172
+    ),
173
+    'BH' => array(),
174
+    'BI' => array(),
175
+    'BO' => array( // Bolivian states.
176
+        'B' => __( 'Chuquisaca', 'invoicing' ),
177
+        'H' => __( 'Beni', 'invoicing' ),
178
+        'C' => __( 'Cochabamba', 'invoicing' ),
179
+        'L' => __( 'La Paz', 'invoicing' ),
180
+        'O' => __( 'Oruro', 'invoicing' ),
181
+        'N' => __( 'Pando', 'invoicing' ),
182
+        'P' => __( 'Potosí', 'invoicing' ),
183
+        'S' => __( 'Santa Cruz', 'invoicing' ),
184
+        'T' => __( 'Tarija', 'invoicing' ),
185
+    ),
186
+    'BR' => array( // Brazillian states.
187
+        'AC' => __( 'Acre', 'invoicing' ),
188
+        'AL' => __( 'Alagoas', 'invoicing' ),
189
+        'AP' => __( 'Amapá', 'invoicing' ),
190
+        'AM' => __( 'Amazonas', 'invoicing' ),
191
+        'BA' => __( 'Bahia', 'invoicing' ),
192
+        'CE' => __( 'Ceará', 'invoicing' ),
193
+        'DF' => __( 'Distrito Federal', 'invoicing' ),
194
+        'ES' => __( 'Espírito Santo', 'invoicing' ),
195
+        'GO' => __( 'Goiás', 'invoicing' ),
196
+        'MA' => __( 'Maranhão', 'invoicing' ),
197
+        'MT' => __( 'Mato Grosso', 'invoicing' ),
198
+        'MS' => __( 'Mato Grosso do Sul', 'invoicing' ),
199
+        'MG' => __( 'Minas Gerais', 'invoicing' ),
200
+        'PA' => __( 'Pará', 'invoicing' ),
201
+        'PB' => __( 'Paraíba', 'invoicing' ),
202
+        'PR' => __( 'Paraná', 'invoicing' ),
203
+        'PE' => __( 'Pernambuco', 'invoicing' ),
204
+        'PI' => __( 'Piauí', 'invoicing' ),
205
+        'RJ' => __( 'Rio de Janeiro', 'invoicing' ),
206
+        'RN' => __( 'Rio Grande do Norte', 'invoicing' ),
207
+        'RS' => __( 'Rio Grande do Sul', 'invoicing' ),
208
+        'RO' => __( 'Rondônia', 'invoicing' ),
209
+        'RR' => __( 'Roraima', 'invoicing' ),
210
+        'SC' => __( 'Santa Catarina', 'invoicing' ),
211
+        'SP' => __( 'São Paulo', 'invoicing' ),
212
+        'SE' => __( 'Sergipe', 'invoicing' ),
213
+        'TO' => __( 'Tocantins', 'invoicing' ),
214
+    ),
215
+    'CA' => array( // Canadian states.
216
+        'AB' => __( 'Alberta', 'invoicing' ),
217
+        'BC' => __( 'British Columbia', 'invoicing' ),
218
+        'MB' => __( 'Manitoba', 'invoicing' ),
219
+        'NB' => __( 'New Brunswick', 'invoicing' ),
220
+        'NL' => __( 'Newfoundland and Labrador', 'invoicing' ),
221
+        'NT' => __( 'Northwest Territories', 'invoicing' ),
222
+        'NS' => __( 'Nova Scotia', 'invoicing' ),
223
+        'NU' => __( 'Nunavut', 'invoicing' ),
224
+        'ON' => __( 'Ontario', 'invoicing' ),
225
+        'PE' => __( 'Prince Edward Island', 'invoicing' ),
226
+        'QC' => __( 'Quebec', 'invoicing' ),
227
+        'SK' => __( 'Saskatchewan', 'invoicing' ),
228
+        'YT' => __( 'Yukon Territory', 'invoicing' ),
229
+    ),
230
+    'CH' => array( // Cantons of Switzerland.
231
+        'AG' => __( 'Aargau', 'invoicing' ),
232
+        'AR' => __( 'Appenzell Ausserrhoden', 'invoicing' ),
233
+        'AI' => __( 'Appenzell Innerrhoden', 'invoicing' ),
234
+        'BL' => __( 'Basel-Landschaft', 'invoicing' ),
235
+        'BS' => __( 'Basel-Stadt', 'invoicing' ),
236
+        'BE' => __( 'Bern', 'invoicing' ),
237
+        'FR' => __( 'Fribourg', 'invoicing' ),
238
+        'GE' => __( 'Geneva', 'invoicing' ),
239
+        'GL' => __( 'Glarus', 'invoicing' ),
240
+        'GR' => __( 'Graubünden', 'invoicing' ),
241
+        'JU' => __( 'Jura', 'invoicing' ),
242
+        'LU' => __( 'Luzern', 'invoicing' ),
243
+        'NE' => __( 'Neuchâtel', 'invoicing' ),
244
+        'NW' => __( 'Nidwalden', 'invoicing' ),
245
+        'OW' => __( 'Obwalden', 'invoicing' ),
246
+        'SH' => __( 'Schaffhausen', 'invoicing' ),
247
+        'SZ' => __( 'Schwyz', 'invoicing' ),
248
+        'SO' => __( 'Solothurn', 'invoicing' ),
249
+        'SG' => __( 'St. Gallen', 'invoicing' ),
250
+        'TG' => __( 'Thurgau', 'invoicing' ),
251
+        'TI' => __( 'Ticino', 'invoicing' ),
252
+        'UR' => __( 'Uri', 'invoicing' ),
253
+        'VS' => __( 'Valais', 'invoicing' ),
254
+        'VD' => __( 'Vaud', 'invoicing' ),
255
+        'ZG' => __( 'Zug', 'invoicing' ),
256
+        'ZH' => __( 'Zürich', 'invoicing' ),
257
+    ),
258
+    'CN' => array( // Chinese states.
259
+        'CN1'  => __( 'Yunnan / 云南', 'invoicing' ),
260
+        'CN2'  => __( 'Beijing / 北京', 'invoicing' ),
261
+        'CN3'  => __( 'Tianjin / 天津', 'invoicing' ),
262
+        'CN4'  => __( 'Hebei / 河北', 'invoicing' ),
263
+        'CN5'  => __( 'Shanxi / 山西', 'invoicing' ),
264
+        'CN6'  => __( 'Inner Mongolia / 內蒙古', 'invoicing' ),
265
+        'CN7'  => __( 'Liaoning / 辽宁', 'invoicing' ),
266
+        'CN8'  => __( 'Jilin / 吉林', 'invoicing' ),
267
+        'CN9'  => __( 'Heilongjiang / 黑龙江', 'invoicing' ),
268
+        'CN10' => __( 'Shanghai / 上海', 'invoicing' ),
269
+        'CN11' => __( 'Jiangsu / 江苏', 'invoicing' ),
270
+        'CN12' => __( 'Zhejiang / 浙江', 'invoicing' ),
271
+        'CN13' => __( 'Anhui / 安徽', 'invoicing' ),
272
+        'CN14' => __( 'Fujian / 福建', 'invoicing' ),
273
+        'CN15' => __( 'Jiangxi / 江西', 'invoicing' ),
274
+        'CN16' => __( 'Shandong / 山东', 'invoicing' ),
275
+        'CN17' => __( 'Henan / 河南', 'invoicing' ),
276
+        'CN18' => __( 'Hubei / 湖北', 'invoicing' ),
277
+        'CN19' => __( 'Hunan / 湖南', 'invoicing' ),
278
+        'CN20' => __( 'Guangdong / 广东', 'invoicing' ),
279
+        'CN21' => __( 'Guangxi Zhuang / 广西壮族', 'invoicing' ),
280
+        'CN22' => __( 'Hainan / 海南', 'invoicing' ),
281
+        'CN23' => __( 'Chongqing / 重庆', 'invoicing' ),
282
+        'CN24' => __( 'Sichuan / 四川', 'invoicing' ),
283
+        'CN25' => __( 'Guizhou / 贵州', 'invoicing' ),
284
+        'CN26' => __( 'Shaanxi / 陕西', 'invoicing' ),
285
+        'CN27' => __( 'Gansu / 甘肃', 'invoicing' ),
286
+        'CN28' => __( 'Qinghai / 青海', 'invoicing' ),
287
+        'CN29' => __( 'Ningxia Hui / 宁夏', 'invoicing' ),
288
+        'CN30' => __( 'Macao / 澳门', 'invoicing' ),
289
+        'CN31' => __( 'Tibet / 西藏', 'invoicing' ),
290
+        'CN32' => __( 'Xinjiang / 新疆', 'invoicing' ),
291
+    ),
292
+    'CZ' => array(),
293
+    'DE' => array(),
294
+    'DK' => array(),
295
+    'EE' => array(),
296
+    'ES' => array( // Spanish states.
297
+        'C'  => __( 'A Coruña', 'invoicing' ),
298
+        'VI' => __( 'Araba/Álava', 'invoicing' ),
299
+        'AB' => __( 'Albacete', 'invoicing' ),
300
+        'A'  => __( 'Alicante', 'invoicing' ),
301
+        'AL' => __( 'Almería', 'invoicing' ),
302
+        'O'  => __( 'Asturias', 'invoicing' ),
303
+        'AV' => __( 'Ávila', 'invoicing' ),
304
+        'BA' => __( 'Badajoz', 'invoicing' ),
305
+        'PM' => __( 'Baleares', 'invoicing' ),
306
+        'B'  => __( 'Barcelona', 'invoicing' ),
307
+        'BU' => __( 'Burgos', 'invoicing' ),
308
+        'CC' => __( 'Cáceres', 'invoicing' ),
309
+        'CA' => __( 'Cádiz', 'invoicing' ),
310
+        'S'  => __( 'Cantabria', 'invoicing' ),
311
+        'CS' => __( 'Castellón', 'invoicing' ),
312
+        'CE' => __( 'Ceuta', 'invoicing' ),
313
+        'CR' => __( 'Ciudad Real', 'invoicing' ),
314
+        'CO' => __( 'Córdoba', 'invoicing' ),
315
+        'CU' => __( 'Cuenca', 'invoicing' ),
316
+        'GI' => __( 'Girona', 'invoicing' ),
317
+        'GR' => __( 'Granada', 'invoicing' ),
318
+        'GU' => __( 'Guadalajara', 'invoicing' ),
319
+        'SS' => __( 'Gipuzkoa', 'invoicing' ),
320
+        'H'  => __( 'Huelva', 'invoicing' ),
321
+        'HU' => __( 'Huesca', 'invoicing' ),
322
+        'J'  => __( 'Jaén', 'invoicing' ),
323
+        'LO' => __( 'La Rioja', 'invoicing' ),
324
+        'GC' => __( 'Las Palmas', 'invoicing' ),
325
+        'LE' => __( 'León', 'invoicing' ),
326
+        'L'  => __( 'Lleida', 'invoicing' ),
327
+        'LU' => __( 'Lugo', 'invoicing' ),
328
+        'M'  => __( 'Madrid', 'invoicing' ),
329
+        'MA' => __( 'Málaga', 'invoicing' ),
330
+        'ML' => __( 'Melilla', 'invoicing' ),
331
+        'MU' => __( 'Murcia', 'invoicing' ),
332
+        'NA' => __( 'Navarra', 'invoicing' ),
333
+        'OR' => __( 'Ourense', 'invoicing' ),
334
+        'P'  => __( 'Palencia', 'invoicing' ),
335
+        'PO' => __( 'Pontevedra', 'invoicing' ),
336
+        'SA' => __( 'Salamanca', 'invoicing' ),
337
+        'TF' => __( 'Santa Cruz de Tenerife', 'invoicing' ),
338
+        'SG' => __( 'Segovia', 'invoicing' ),
339
+        'SE' => __( 'Sevilla', 'invoicing' ),
340
+        'SO' => __( 'Soria', 'invoicing' ),
341
+        'T'  => __( 'Tarragona', 'invoicing' ),
342
+        'TE' => __( 'Teruel', 'invoicing' ),
343
+        'TO' => __( 'Toledo', 'invoicing' ),
344
+        'V'  => __( 'Valencia', 'invoicing' ),
345
+        'VA' => __( 'Valladolid', 'invoicing' ),
346
+        'BI' => __( 'Bizkaia', 'invoicing' ),
347
+        'ZA' => __( 'Zamora', 'invoicing' ),
348
+        'Z'  => __( 'Zaragoza', 'invoicing' ),
349
+    ),
350
+    'FI' => array(),
351
+    'FR' => array(),
352
+    'GP' => array(),
353
+    'GR' => array( // Greek Regions.
354
+        'I' => __( 'Αττική', 'invoicing' ),
355
+        'A' => __( 'Ανατολική Μακεδονία και Θράκη', 'invoicing' ),
356
+        'B' => __( 'Κεντρική Μακεδονία', 'invoicing' ),
357
+        'C' => __( 'Δυτική Μακεδονία', 'invoicing' ),
358
+        'D' => __( 'Ήπειρος', 'invoicing' ),
359
+        'E' => __( 'Θεσσαλία', 'invoicing' ),
360
+        'F' => __( 'Ιόνιοι Νήσοι', 'invoicing' ),
361
+        'G' => __( 'Δυτική Ελλάδα', 'invoicing' ),
362
+        'H' => __( 'Στερεά Ελλάδα', 'invoicing' ),
363
+        'J' => __( 'Πελοπόννησος', 'invoicing' ),
364
+        'K' => __( 'Βόρειο Αιγαίο', 'invoicing' ),
365
+        'L' => __( 'Νότιο Αιγαίο', 'invoicing' ),
366
+        'M' => __( 'Κρήτη', 'invoicing' ),
367
+    ),
368
+    'GF' => array(),
369
+    'HK' => array( // Hong Kong states.
370
+        'HONG KONG'       => __( 'Hong Kong Island', 'invoicing' ),
371
+        'KOWLOON'         => __( 'Kowloon', 'invoicing' ),
372
+        'NEW TERRITORIES' => __( 'New Territories', 'invoicing' ),
373
+    ),
374
+    'HU' => array( // Hungary states.
375
+        'BK' => __( 'Bács-Kiskun', 'invoicing' ),
376
+        'BE' => __( 'Békés', 'invoicing' ),
377
+        'BA' => __( 'Baranya', 'invoicing' ),
378
+        'BZ' => __( 'Borsod-Abaúj-Zemplén', 'invoicing' ),
379
+        'BU' => __( 'Budapest', 'invoicing' ),
380
+        'CS' => __( 'Csongrád', 'invoicing' ),
381
+        'FE' => __( 'Fejér', 'invoicing' ),
382
+        'GS' => __( 'Győr-Moson-Sopron', 'invoicing' ),
383
+        'HB' => __( 'Hajdú-Bihar', 'invoicing' ),
384
+        'HE' => __( 'Heves', 'invoicing' ),
385
+        'JN' => __( 'Jász-Nagykun-Szolnok', 'invoicing' ),
386
+        'KE' => __( 'Komárom-Esztergom', 'invoicing' ),
387
+        'NO' => __( 'Nógrád', 'invoicing' ),
388
+        'PE' => __( 'Pest', 'invoicing' ),
389
+        'SO' => __( 'Somogy', 'invoicing' ),
390
+        'SZ' => __( 'Szabolcs-Szatmár-Bereg', 'invoicing' ),
391
+        'TO' => __( 'Tolna', 'invoicing' ),
392
+        'VA' => __( 'Vas', 'invoicing' ),
393
+        'VE' => __( 'Veszprém', 'invoicing' ),
394
+        'ZA' => __( 'Zala', 'invoicing' ),
395
+    ),
396
+    'ID' => array( // Indonesia Provinces.
397
+        'AC' => __( 'Daerah Istimewa Aceh', 'invoicing' ),
398
+        'SU' => __( 'Sumatera Utara', 'invoicing' ),
399
+        'SB' => __( 'Sumatera Barat', 'invoicing' ),
400
+        'RI' => __( 'Riau', 'invoicing' ),
401
+        'KR' => __( 'Kepulauan Riau', 'invoicing' ),
402
+        'JA' => __( 'Jambi', 'invoicing' ),
403
+        'SS' => __( 'Sumatera Selatan', 'invoicing' ),
404
+        'BB' => __( 'Bangka Belitung', 'invoicing' ),
405
+        'BE' => __( 'Bengkulu', 'invoicing' ),
406
+        'LA' => __( 'Lampung', 'invoicing' ),
407
+        'JK' => __( 'DKI Jakarta', 'invoicing' ),
408
+        'JB' => __( 'Jawa Barat', 'invoicing' ),
409
+        'BT' => __( 'Banten', 'invoicing' ),
410
+        'JT' => __( 'Jawa Tengah', 'invoicing' ),
411
+        'JI' => __( 'Jawa Timur', 'invoicing' ),
412
+        'YO' => __( 'Daerah Istimewa Yogyakarta', 'invoicing' ),
413
+        'BA' => __( 'Bali', 'invoicing' ),
414
+        'NB' => __( 'Nusa Tenggara Barat', 'invoicing' ),
415
+        'NT' => __( 'Nusa Tenggara Timur', 'invoicing' ),
416
+        'KB' => __( 'Kalimantan Barat', 'invoicing' ),
417
+        'KT' => __( 'Kalimantan Tengah', 'invoicing' ),
418
+        'KI' => __( 'Kalimantan Timur', 'invoicing' ),
419
+        'KS' => __( 'Kalimantan Selatan', 'invoicing' ),
420
+        'KU' => __( 'Kalimantan Utara', 'invoicing' ),
421
+        'SA' => __( 'Sulawesi Utara', 'invoicing' ),
422
+        'ST' => __( 'Sulawesi Tengah', 'invoicing' ),
423
+        'SG' => __( 'Sulawesi Tenggara', 'invoicing' ),
424
+        'SR' => __( 'Sulawesi Barat', 'invoicing' ),
425
+        'SN' => __( 'Sulawesi Selatan', 'invoicing' ),
426
+        'GO' => __( 'Gorontalo', 'invoicing' ),
427
+        'MA' => __( 'Maluku', 'invoicing' ),
428
+        'MU' => __( 'Maluku Utara', 'invoicing' ),
429
+        'PA' => __( 'Papua', 'invoicing' ),
430
+        'PB' => __( 'Papua Barat', 'invoicing' ),
431
+    ),
432
+    'IE' => array( // Republic of Ireland.
433
+        'CW' => __( 'Carlow', 'invoicing' ),
434
+        'CN' => __( 'Cavan', 'invoicing' ),
435
+        'CE' => __( 'Clare', 'invoicing' ),
436
+        'CO' => __( 'Cork', 'invoicing' ),
437
+        'DL' => __( 'Donegal', 'invoicing' ),
438
+        'D'  => __( 'Dublin', 'invoicing' ),
439
+        'G'  => __( 'Galway', 'invoicing' ),
440
+        'KY' => __( 'Kerry', 'invoicing' ),
441
+        'KE' => __( 'Kildare', 'invoicing' ),
442
+        'KK' => __( 'Kilkenny', 'invoicing' ),
443
+        'LS' => __( 'Laois', 'invoicing' ),
444
+        'LM' => __( 'Leitrim', 'invoicing' ),
445
+        'LK' => __( 'Limerick', 'invoicing' ),
446
+        'LD' => __( 'Longford', 'invoicing' ),
447
+        'LH' => __( 'Louth', 'invoicing' ),
448
+        'MO' => __( 'Mayo', 'invoicing' ),
449
+        'MH' => __( 'Meath', 'invoicing' ),
450
+        'MN' => __( 'Monaghan', 'invoicing' ),
451
+        'OY' => __( 'Offaly', 'invoicing' ),
452
+        'RN' => __( 'Roscommon', 'invoicing' ),
453
+        'SO' => __( 'Sligo', 'invoicing' ),
454
+        'TA' => __( 'Tipperary', 'invoicing' ),
455
+        'WD' => __( 'Waterford', 'invoicing' ),
456
+        'WH' => __( 'Westmeath', 'invoicing' ),
457
+        'WX' => __( 'Wexford', 'invoicing' ),
458
+        'WW' => __( 'Wicklow', 'invoicing' ),
459
+    ),
460
+    'IN' => array( // Indian states.
461
+        'AP' => __( 'Andhra Pradesh', 'invoicing' ),
462
+        'AR' => __( 'Arunachal Pradesh', 'invoicing' ),
463
+        'AS' => __( 'Assam', 'invoicing' ),
464
+        'BR' => __( 'Bihar', 'invoicing' ),
465
+        'CT' => __( 'Chhattisgarh', 'invoicing' ),
466
+        'GA' => __( 'Goa', 'invoicing' ),
467
+        'GJ' => __( 'Gujarat', 'invoicing' ),
468
+        'HR' => __( 'Haryana', 'invoicing' ),
469
+        'HP' => __( 'Himachal Pradesh', 'invoicing' ),
470
+        'JK' => __( 'Jammu and Kashmir', 'invoicing' ),
471
+        'JH' => __( 'Jharkhand', 'invoicing' ),
472
+        'KA' => __( 'Karnataka', 'invoicing' ),
473
+        'KL' => __( 'Kerala', 'invoicing' ),
474
+        'MP' => __( 'Madhya Pradesh', 'invoicing' ),
475
+        'MH' => __( 'Maharashtra', 'invoicing' ),
476
+        'MN' => __( 'Manipur', 'invoicing' ),
477
+        'ML' => __( 'Meghalaya', 'invoicing' ),
478
+        'MZ' => __( 'Mizoram', 'invoicing' ),
479
+        'NL' => __( 'Nagaland', 'invoicing' ),
480
+        'OR' => __( 'Orissa', 'invoicing' ),
481
+        'PB' => __( 'Punjab', 'invoicing' ),
482
+        'RJ' => __( 'Rajasthan', 'invoicing' ),
483
+        'SK' => __( 'Sikkim', 'invoicing' ),
484
+        'TN' => __( 'Tamil Nadu', 'invoicing' ),
485
+        'TS' => __( 'Telangana', 'invoicing' ),
486
+        'TR' => __( 'Tripura', 'invoicing' ),
487
+        'UK' => __( 'Uttarakhand', 'invoicing' ),
488
+        'UP' => __( 'Uttar Pradesh', 'invoicing' ),
489
+        'WB' => __( 'West Bengal', 'invoicing' ),
490
+        'AN' => __( 'Andaman and Nicobar Islands', 'invoicing' ),
491
+        'CH' => __( 'Chandigarh', 'invoicing' ),
492
+        'DN' => __( 'Dadra and Nagar Haveli', 'invoicing' ),
493
+        'DD' => __( 'Daman and Diu', 'invoicing' ),
494
+        'DL' => __( 'Delhi', 'invoicing' ),
495
+        'LD' => __( 'Lakshadeep', 'invoicing' ),
496
+        'PY' => __( 'Pondicherry (Puducherry)', 'invoicing' ),
497
+    ),
498
+    'IR' => array( // Iran States.
499
+        'KHZ' => __( 'Khuzestan  (خوزستان)', 'invoicing' ),
500
+        'THR' => __( 'Tehran  (تهران)', 'invoicing' ),
501
+        'ILM' => __( 'Ilaam (ایلام)', 'invoicing' ),
502
+        'BHR' => __( 'Bushehr (بوشهر)', 'invoicing' ),
503
+        'ADL' => __( 'Ardabil (اردبیل)', 'invoicing' ),
504
+        'ESF' => __( 'Isfahan (اصفهان)', 'invoicing' ),
505
+        'YZD' => __( 'Yazd (یزد)', 'invoicing' ),
506
+        'KRH' => __( 'Kermanshah (کرمانشاه)', 'invoicing' ),
507
+        'KRN' => __( 'Kerman (کرمان)', 'invoicing' ),
508
+        'HDN' => __( 'Hamadan (همدان)', 'invoicing' ),
509
+        'GZN' => __( 'Ghazvin (قزوین)', 'invoicing' ),
510
+        'ZJN' => __( 'Zanjan (زنجان)', 'invoicing' ),
511
+        'LRS' => __( 'Luristan (لرستان)', 'invoicing' ),
512
+        'ABZ' => __( 'Alborz (البرز)', 'invoicing' ),
513
+        'EAZ' => __( 'East Azarbaijan (آذربایجان شرقی)', 'invoicing' ),
514
+        'WAZ' => __( 'West Azarbaijan (آذربایجان غربی)', 'invoicing' ),
515
+        'CHB' => __( 'Chaharmahal and Bakhtiari (چهارمحال و بختیاری)', 'invoicing' ),
516
+        'SKH' => __( 'South Khorasan (خراسان جنوبی)', 'invoicing' ),
517
+        'RKH' => __( 'Razavi Khorasan (خراسان رضوی)', 'invoicing' ),
518
+        'NKH' => __( 'North Khorasan (خراسان شمالی)', 'invoicing' ),
519
+        'SMN' => __( 'Semnan (سمنان)', 'invoicing' ),
520
+        'FRS' => __( 'Fars (فارس)', 'invoicing' ),
521
+        'QHM' => __( 'Qom (قم)', 'invoicing' ),
522
+        'KRD' => __( 'Kurdistan / کردستان)', 'invoicing' ),
523
+        'KBD' => __( 'Kohgiluyeh and BoyerAhmad (کهگیلوییه و بویراحمد)', 'invoicing' ),
524
+        'GLS' => __( 'Golestan (گلستان)', 'invoicing' ),
525
+        'GIL' => __( 'Gilan (گیلان)', 'invoicing' ),
526
+        'MZN' => __( 'Mazandaran (مازندران)', 'invoicing' ),
527
+        'MKZ' => __( 'Markazi (مرکزی)', 'invoicing' ),
528
+        'HRZ' => __( 'Hormozgan (هرمزگان)', 'invoicing' ),
529
+        'SBN' => __( 'Sistan and Baluchestan (سیستان و بلوچستان)', 'invoicing' ),
530
+    ),
531
+    'IS' => array(),
532
+    'IT' => array( // Italy Provinces.
533
+        'AG' => __( 'Agrigento', 'invoicing' ),
534
+        'AL' => __( 'Alessandria', 'invoicing' ),
535
+        'AN' => __( 'Ancona', 'invoicing' ),
536
+        'AO' => __( 'Aosta', 'invoicing' ),
537
+        'AR' => __( 'Arezzo', 'invoicing' ),
538
+        'AP' => __( 'Ascoli Piceno', 'invoicing' ),
539
+        'AT' => __( 'Asti', 'invoicing' ),
540
+        'AV' => __( 'Avellino', 'invoicing' ),
541
+        'BA' => __( 'Bari', 'invoicing' ),
542
+        'BT' => __( 'Barletta-Andria-Trani', 'invoicing' ),
543
+        'BL' => __( 'Belluno', 'invoicing' ),
544
+        'BN' => __( 'Benevento', 'invoicing' ),
545
+        'BG' => __( 'Bergamo', 'invoicing' ),
546
+        'BI' => __( 'Biella', 'invoicing' ),
547
+        'BO' => __( 'Bologna', 'invoicing' ),
548
+        'BZ' => __( 'Bolzano', 'invoicing' ),
549
+        'BS' => __( 'Brescia', 'invoicing' ),
550
+        'BR' => __( 'Brindisi', 'invoicing' ),
551
+        'CA' => __( 'Cagliari', 'invoicing' ),
552
+        'CL' => __( 'Caltanissetta', 'invoicing' ),
553
+        'CB' => __( 'Campobasso', 'invoicing' ),
554
+        'CE' => __( 'Caserta', 'invoicing' ),
555
+        'CT' => __( 'Catania', 'invoicing' ),
556
+        'CZ' => __( 'Catanzaro', 'invoicing' ),
557
+        'CH' => __( 'Chieti', 'invoicing' ),
558
+        'CO' => __( 'Como', 'invoicing' ),
559
+        'CS' => __( 'Cosenza', 'invoicing' ),
560
+        'CR' => __( 'Cremona', 'invoicing' ),
561
+        'KR' => __( 'Crotone', 'invoicing' ),
562
+        'CN' => __( 'Cuneo', 'invoicing' ),
563
+        'EN' => __( 'Enna', 'invoicing' ),
564
+        'FM' => __( 'Fermo', 'invoicing' ),
565
+        'FE' => __( 'Ferrara', 'invoicing' ),
566
+        'FI' => __( 'Firenze', 'invoicing' ),
567
+        'FG' => __( 'Foggia', 'invoicing' ),
568
+        'FC' => __( 'Forlì-Cesena', 'invoicing' ),
569
+        'FR' => __( 'Frosinone', 'invoicing' ),
570
+        'GE' => __( 'Genova', 'invoicing' ),
571
+        'GO' => __( 'Gorizia', 'invoicing' ),
572
+        'GR' => __( 'Grosseto', 'invoicing' ),
573
+        'IM' => __( 'Imperia', 'invoicing' ),
574
+        'IS' => __( 'Isernia', 'invoicing' ),
575
+        'SP' => __( 'La Spezia', 'invoicing' ),
576
+        'AQ' => __( "L'Aquila", 'invoicing' ),
577
+        'LT' => __( 'Latina', 'invoicing' ),
578
+        'LE' => __( 'Lecce', 'invoicing' ),
579
+        'LC' => __( 'Lecco', 'invoicing' ),
580
+        'LI' => __( 'Livorno', 'invoicing' ),
581
+        'LO' => __( 'Lodi', 'invoicing' ),
582
+        'LU' => __( 'Lucca', 'invoicing' ),
583
+        'MC' => __( 'Macerata', 'invoicing' ),
584
+        'MN' => __( 'Mantova', 'invoicing' ),
585
+        'MS' => __( 'Massa-Carrara', 'invoicing' ),
586
+        'MT' => __( 'Matera', 'invoicing' ),
587
+        'ME' => __( 'Messina', 'invoicing' ),
588
+        'MI' => __( 'Milano', 'invoicing' ),
589
+        'MO' => __( 'Modena', 'invoicing' ),
590
+        'MB' => __( 'Monza e della Brianza', 'invoicing' ),
591
+        'NA' => __( 'Napoli', 'invoicing' ),
592
+        'NO' => __( 'Novara', 'invoicing' ),
593
+        'NU' => __( 'Nuoro', 'invoicing' ),
594
+        'OR' => __( 'Oristano', 'invoicing' ),
595
+        'PD' => __( 'Padova', 'invoicing' ),
596
+        'PA' => __( 'Palermo', 'invoicing' ),
597
+        'PR' => __( 'Parma', 'invoicing' ),
598
+        'PV' => __( 'Pavia', 'invoicing' ),
599
+        'PG' => __( 'Perugia', 'invoicing' ),
600
+        'PU' => __( 'Pesaro e Urbino', 'invoicing' ),
601
+        'PE' => __( 'Pescara', 'invoicing' ),
602
+        'PC' => __( 'Piacenza', 'invoicing' ),
603
+        'PI' => __( 'Pisa', 'invoicing' ),
604
+        'PT' => __( 'Pistoia', 'invoicing' ),
605
+        'PN' => __( 'Pordenone', 'invoicing' ),
606
+        'PZ' => __( 'Potenza', 'invoicing' ),
607
+        'PO' => __( 'Prato', 'invoicing' ),
608
+        'RG' => __( 'Ragusa', 'invoicing' ),
609
+        'RA' => __( 'Ravenna', 'invoicing' ),
610
+        'RC' => __( 'Reggio Calabria', 'invoicing' ),
611
+        'RE' => __( 'Reggio Emilia', 'invoicing' ),
612
+        'RI' => __( 'Rieti', 'invoicing' ),
613
+        'RN' => __( 'Rimini', 'invoicing' ),
614
+        'RM' => __( 'Roma', 'invoicing' ),
615
+        'RO' => __( 'Rovigo', 'invoicing' ),
616
+        'SA' => __( 'Salerno', 'invoicing' ),
617
+        'SS' => __( 'Sassari', 'invoicing' ),
618
+        'SV' => __( 'Savona', 'invoicing' ),
619
+        'SI' => __( 'Siena', 'invoicing' ),
620
+        'SR' => __( 'Siracusa', 'invoicing' ),
621
+        'SO' => __( 'Sondrio', 'invoicing' ),
622
+        'SU' => __( 'Sud Sardegna', 'invoicing' ),
623
+        'TA' => __( 'Taranto', 'invoicing' ),
624
+        'TE' => __( 'Teramo', 'invoicing' ),
625
+        'TR' => __( 'Terni', 'invoicing' ),
626
+        'TO' => __( 'Torino', 'invoicing' ),
627
+        'TP' => __( 'Trapani', 'invoicing' ),
628
+        'TN' => __( 'Trento', 'invoicing' ),
629
+        'TV' => __( 'Treviso', 'invoicing' ),
630
+        'TS' => __( 'Trieste', 'invoicing' ),
631
+        'UD' => __( 'Udine', 'invoicing' ),
632
+        'VA' => __( 'Varese', 'invoicing' ),
633
+        'VE' => __( 'Venezia', 'invoicing' ),
634
+        'VB' => __( 'Verbano-Cusio-Ossola', 'invoicing' ),
635
+        'VC' => __( 'Vercelli', 'invoicing' ),
636
+        'VR' => __( 'Verona', 'invoicing' ),
637
+        'VV' => __( 'Vibo Valentia', 'invoicing' ),
638
+        'VI' => __( 'Vicenza', 'invoicing' ),
639
+        'VT' => __( 'Viterbo', 'invoicing' ),
640
+    ),
641
+    'IL' => array(),
642
+    'IM' => array(),
643 643
 
644
-	/**
645
-	 * Japan States.
646
-	 *
647
-	 * English notation of prefectures conform to the notation of Japan Post.
648
-	 * The suffix corresponds with the Japanese translation file.
649
-	 */
650
-	'JP' => array(
651
-		'JP01' => __( 'Hokkaido', 'invoicing' ),
652
-		'JP02' => __( 'Aomori', 'invoicing' ),
653
-		'JP03' => __( 'Iwate', 'invoicing' ),
654
-		'JP04' => __( 'Miyagi', 'invoicing' ),
655
-		'JP05' => __( 'Akita', 'invoicing' ),
656
-		'JP06' => __( 'Yamagata', 'invoicing' ),
657
-		'JP07' => __( 'Fukushima', 'invoicing' ),
658
-		'JP08' => __( 'Ibaraki', 'invoicing' ),
659
-		'JP09' => __( 'Tochigi', 'invoicing' ),
660
-		'JP10' => __( 'Gunma', 'invoicing' ),
661
-		'JP11' => __( 'Saitama', 'invoicing' ),
662
-		'JP12' => __( 'Chiba', 'invoicing' ),
663
-		'JP13' => __( 'Tokyo', 'invoicing' ),
664
-		'JP14' => __( 'Kanagawa', 'invoicing' ),
665
-		'JP15' => __( 'Niigata', 'invoicing' ),
666
-		'JP16' => __( 'Toyama', 'invoicing' ),
667
-		'JP17' => __( 'Ishikawa', 'invoicing' ),
668
-		'JP18' => __( 'Fukui', 'invoicing' ),
669
-		'JP19' => __( 'Yamanashi', 'invoicing' ),
670
-		'JP20' => __( 'Nagano', 'invoicing' ),
671
-		'JP21' => __( 'Gifu', 'invoicing' ),
672
-		'JP22' => __( 'Shizuoka', 'invoicing' ),
673
-		'JP23' => __( 'Aichi', 'invoicing' ),
674
-		'JP24' => __( 'Mie', 'invoicing' ),
675
-		'JP25' => __( 'Shiga', 'invoicing' ),
676
-		'JP26' => __( 'Kyoto', 'invoicing' ),
677
-		'JP27' => __( 'Osaka', 'invoicing' ),
678
-		'JP28' => __( 'Hyogo', 'invoicing' ),
679
-		'JP29' => __( 'Nara', 'invoicing' ),
680
-		'JP30' => __( 'Wakayama', 'invoicing' ),
681
-		'JP31' => __( 'Tottori', 'invoicing' ),
682
-		'JP32' => __( 'Shimane', 'invoicing' ),
683
-		'JP33' => __( 'Okayama', 'invoicing' ),
684
-		'JP34' => __( 'Hiroshima', 'invoicing' ),
685
-		'JP35' => __( 'Yamaguchi', 'invoicing' ),
686
-		'JP36' => __( 'Tokushima', 'invoicing' ),
687
-		'JP37' => __( 'Kagawa', 'invoicing' ),
688
-		'JP38' => __( 'Ehime', 'invoicing' ),
689
-		'JP39' => __( 'Kochi', 'invoicing' ),
690
-		'JP40' => __( 'Fukuoka', 'invoicing' ),
691
-		'JP41' => __( 'Saga', 'invoicing' ),
692
-		'JP42' => __( 'Nagasaki', 'invoicing' ),
693
-		'JP43' => __( 'Kumamoto', 'invoicing' ),
694
-		'JP44' => __( 'Oita', 'invoicing' ),
695
-		'JP45' => __( 'Miyazaki', 'invoicing' ),
696
-		'JP46' => __( 'Kagoshima', 'invoicing' ),
697
-		'JP47' => __( 'Okinawa', 'invoicing' ),
698
-	),
699
-	'KE' => array( // Kenya Counties.
700
-		'1'  => __( 'Mombasa', 'invoicing' ),
701
-		'2'  => __( 'Kwale', 'invoicing' ),
702
-		'3'  => __( 'Kilifi', 'invoicing' ),
703
-		'4'  => __( 'Tana River', 'invoicing' ),
704
-		'5'  => __( 'Lamu', 'invoicing' ),
705
-		'6'  => __( 'Taita-Taveta', 'invoicing' ),
706
-		'7'  => __( 'Garissa', 'invoicing' ),
707
-		'8'  => __( 'Wajir', 'invoicing' ),
708
-		'9'  => __( 'Mandera', 'invoicing' ),
709
-		'10' => __( 'Marsabit', 'invoicing' ),
710
-		'11' => __( 'Isiolo', 'invoicing' ),
711
-		'12' => __( 'Meru', 'invoicing' ),
712
-		'13' => __( 'Tharaka-Nithi', 'invoicing' ),
713
-		'14' => __( 'Embu', 'invoicing' ),
714
-		'15' => __( 'Kitui', 'invoicing' ),
715
-		'16' => __( 'Machakos', 'invoicing' ),
716
-		'17' => __( 'Makueni', 'invoicing' ),
717
-		'18' => __( 'Nyandarua', 'invoicing' ),
718
-		'19' => __( 'Nyeri', 'invoicing' ),
719
-		'20' => __( 'Kirinyaga', 'invoicing' ),
720
-		'21' => __( "Murang'a", 'invoicing' ),
721
-		'22' => __( 'Kiambu', 'invoicing' ),
722
-		'23' => __( 'Turkana', 'invoicing' ),
723
-		'24' => __( 'West Pokot', 'invoicing' ),
724
-		'25' => __( 'Samburu', 'invoicing' ),
725
-		'26' => __( 'Trans-Nzoia', 'invoicing' ),
726
-		'27' => __( 'Uasin Gishu', 'invoicing' ),
727
-		'28' => __( 'Elgeyo-Marakwet', 'invoicing' ),
728
-		'29' => __( 'Nandi', 'invoicing' ),
729
-		'30' => __( 'Baringo', 'invoicing' ),
730
-		'31' => __( 'Laikipia', 'invoicing' ),
731
-		'32' => __( 'Nakuru', 'invoicing' ),
732
-		'33' => __( 'Narok', 'invoicing' ),
733
-		'34' => __( 'Kajiado', 'invoicing' ),
734
-		'35' => __( 'Kericho', 'invoicing' ),
735
-		'36' => __( 'Bomet', 'invoicing' ),
736
-		'37' => __( 'Kakamega', 'invoicing' ),
737
-		'38' => __( 'Vihiga', 'invoicing' ),
738
-		'39' => __( 'Bungoma', 'invoicing' ),
739
-		'40' => __( 'Busia', 'invoicing' ),
740
-		'41' => __( 'Siaya', 'invoicing' ),
741
-		'42' => __( 'Kisumu', 'invoicing' ),
742
-		'43' => __( 'Homa bay', 'invoicing' ),
743
-		'44' => __( 'Migori', 'invoicing' ),
744
-		'45' => __( 'Kisii', 'invoicing' ),
745
-		'46' => __( 'Nyamira', 'invoicing' ),
746
-		'47' => __( 'Nairobi', 'invoicing' ),
747
-	),
748
-	'KR' => array(),
749
-	'KW' => array(),
750
-	'LB' => array(),
751
-	'LR' => array( // Liberia provinces.
752
-		'BM' => __( 'Bomi', 'invoicing' ),
753
-		'BN' => __( 'Bong', 'invoicing' ),
754
-		'GA' => __( 'Gbarpolu', 'invoicing' ),
755
-		'GB' => __( 'Grand Bassa', 'invoicing' ),
756
-		'GC' => __( 'Grand Cape Mount', 'invoicing' ),
757
-		'GG' => __( 'Grand Gedeh', 'invoicing' ),
758
-		'GK' => __( 'Grand Kru', 'invoicing' ),
759
-		'LO' => __( 'Lofa', 'invoicing' ),
760
-		'MA' => __( 'Margibi', 'invoicing' ),
761
-		'MY' => __( 'Maryland', 'invoicing' ),
762
-		'MO' => __( 'Montserrado', 'invoicing' ),
763
-		'NM' => __( 'Nimba', 'invoicing' ),
764
-		'RV' => __( 'Rivercess', 'invoicing' ),
765
-		'RG' => __( 'River Gee', 'invoicing' ),
766
-		'SN' => __( 'Sinoe', 'invoicing' ),
767
-	),
768
-	'LU' => array(),
769
-	'MD' => array( // Moldova states.
770
-		'C'  => __( 'Chișinău', 'invoicing' ),
771
-		'BL' => __( 'Bălți', 'invoicing' ),
772
-		'AN' => __( 'Anenii Noi', 'invoicing' ),
773
-		'BS' => __( 'Basarabeasca', 'invoicing' ),
774
-		'BR' => __( 'Briceni', 'invoicing' ),
775
-		'CH' => __( 'Cahul', 'invoicing' ),
776
-		'CT' => __( 'Cantemir', 'invoicing' ),
777
-		'CL' => __( 'Călărași', 'invoicing' ),
778
-		'CS' => __( 'Căușeni', 'invoicing' ),
779
-		'CM' => __( 'Cimișlia', 'invoicing' ),
780
-		'CR' => __( 'Criuleni', 'invoicing' ),
781
-		'DN' => __( 'Dondușeni', 'invoicing' ),
782
-		'DR' => __( 'Drochia', 'invoicing' ),
783
-		'DB' => __( 'Dubăsari', 'invoicing' ),
784
-		'ED' => __( 'Edineț', 'invoicing' ),
785
-		'FL' => __( 'Fălești', 'invoicing' ),
786
-		'FR' => __( 'Florești', 'invoicing' ),
787
-		'GE' => __( 'UTA Găgăuzia', 'invoicing' ),
788
-		'GL' => __( 'Glodeni', 'invoicing' ),
789
-		'HN' => __( 'Hîncești', 'invoicing' ),
790
-		'IL' => __( 'Ialoveni', 'invoicing' ),
791
-		'LV' => __( 'Leova', 'invoicing' ),
792
-		'NS' => __( 'Nisporeni', 'invoicing' ),
793
-		'OC' => __( 'Ocnița', 'invoicing' ),
794
-		'OR' => __( 'Orhei', 'invoicing' ),
795
-		'RZ' => __( 'Rezina', 'invoicing' ),
796
-		'RS' => __( 'Rîșcani', 'invoicing' ),
797
-		'SG' => __( 'Sîngerei', 'invoicing' ),
798
-		'SR' => __( 'Soroca', 'invoicing' ),
799
-		'ST' => __( 'Strășeni', 'invoicing' ),
800
-		'SD' => __( 'Șoldănești', 'invoicing' ),
801
-		'SV' => __( 'Ștefan Vodă', 'invoicing' ),
802
-		'TR' => __( 'Taraclia', 'invoicing' ),
803
-		'TL' => __( 'Telenești', 'invoicing' ),
804
-		'UN' => __( 'Ungheni', 'invoicing' ),
805
-	),
806
-	'MQ' => array(),
807
-	'MT' => array(),
808
-	'MX' => array( // Mexico States.
809
-		'DF' => __( 'Ciudad de México', 'invoicing' ),
810
-		'JA' => __( 'Jalisco', 'invoicing' ),
811
-		'NL' => __( 'Nuevo León', 'invoicing' ),
812
-		'AG' => __( 'Aguascalientes', 'invoicing' ),
813
-		'BC' => __( 'Baja California', 'invoicing' ),
814
-		'BS' => __( 'Baja California Sur', 'invoicing' ),
815
-		'CM' => __( 'Campeche', 'invoicing' ),
816
-		'CS' => __( 'Chiapas', 'invoicing' ),
817
-		'CH' => __( 'Chihuahua', 'invoicing' ),
818
-		'CO' => __( 'Coahuila', 'invoicing' ),
819
-		'CL' => __( 'Colima', 'invoicing' ),
820
-		'DG' => __( 'Durango', 'invoicing' ),
821
-		'GT' => __( 'Guanajuato', 'invoicing' ),
822
-		'GR' => __( 'Guerrero', 'invoicing' ),
823
-		'HG' => __( 'Hidalgo', 'invoicing' ),
824
-		'MX' => __( 'Estado de México', 'invoicing' ),
825
-		'MI' => __( 'Michoacán', 'invoicing' ),
826
-		'MO' => __( 'Morelos', 'invoicing' ),
827
-		'NA' => __( 'Nayarit', 'invoicing' ),
828
-		'OA' => __( 'Oaxaca', 'invoicing' ),
829
-		'PU' => __( 'Puebla', 'invoicing' ),
830
-		'QT' => __( 'Querétaro', 'invoicing' ),
831
-		'QR' => __( 'Quintana Roo', 'invoicing' ),
832
-		'SL' => __( 'San Luis Potosí', 'invoicing' ),
833
-		'SI' => __( 'Sinaloa', 'invoicing' ),
834
-		'SO' => __( 'Sonora', 'invoicing' ),
835
-		'TB' => __( 'Tabasco', 'invoicing' ),
836
-		'TM' => __( 'Tamaulipas', 'invoicing' ),
837
-		'TL' => __( 'Tlaxcala', 'invoicing' ),
838
-		'VE' => __( 'Veracruz', 'invoicing' ),
839
-		'YU' => __( 'Yucatán', 'invoicing' ),
840
-		'ZA' => __( 'Zacatecas', 'invoicing' ),
841
-	),
842
-	'MY' => array( // Malaysian states.
843
-		'JHR' => __( 'Johor', 'invoicing' ),
844
-		'KDH' => __( 'Kedah', 'invoicing' ),
845
-		'KTN' => __( 'Kelantan', 'invoicing' ),
846
-		'LBN' => __( 'Labuan', 'invoicing' ),
847
-		'MLK' => __( 'Malacca (Melaka)', 'invoicing' ),
848
-		'NSN' => __( 'Negeri Sembilan', 'invoicing' ),
849
-		'PHG' => __( 'Pahang', 'invoicing' ),
850
-		'PNG' => __( 'Penang (Pulau Pinang)', 'invoicing' ),
851
-		'PRK' => __( 'Perak', 'invoicing' ),
852
-		'PLS' => __( 'Perlis', 'invoicing' ),
853
-		'SBH' => __( 'Sabah', 'invoicing' ),
854
-		'SWK' => __( 'Sarawak', 'invoicing' ),
855
-		'SGR' => __( 'Selangor', 'invoicing' ),
856
-		'TRG' => __( 'Terengganu', 'invoicing' ),
857
-		'PJY' => __( 'Putrajaya', 'invoicing' ),
858
-		'KUL' => __( 'Kuala Lumpur', 'invoicing' ),
859
-	),
860
-	'NG' => array( // Nigerian provinces.
861
-		'AB' => __( 'Abia', 'invoicing' ),
862
-		'FC' => __( 'Abuja', 'invoicing' ),
863
-		'AD' => __( 'Adamawa', 'invoicing' ),
864
-		'AK' => __( 'Akwa Ibom', 'invoicing' ),
865
-		'AN' => __( 'Anambra', 'invoicing' ),
866
-		'BA' => __( 'Bauchi', 'invoicing' ),
867
-		'BY' => __( 'Bayelsa', 'invoicing' ),
868
-		'BE' => __( 'Benue', 'invoicing' ),
869
-		'BO' => __( 'Borno', 'invoicing' ),
870
-		'CR' => __( 'Cross River', 'invoicing' ),
871
-		'DE' => __( 'Delta', 'invoicing' ),
872
-		'EB' => __( 'Ebonyi', 'invoicing' ),
873
-		'ED' => __( 'Edo', 'invoicing' ),
874
-		'EK' => __( 'Ekiti', 'invoicing' ),
875
-		'EN' => __( 'Enugu', 'invoicing' ),
876
-		'GO' => __( 'Gombe', 'invoicing' ),
877
-		'IM' => __( 'Imo', 'invoicing' ),
878
-		'JI' => __( 'Jigawa', 'invoicing' ),
879
-		'KD' => __( 'Kaduna', 'invoicing' ),
880
-		'KN' => __( 'Kano', 'invoicing' ),
881
-		'KT' => __( 'Katsina', 'invoicing' ),
882
-		'KE' => __( 'Kebbi', 'invoicing' ),
883
-		'KO' => __( 'Kogi', 'invoicing' ),
884
-		'KW' => __( 'Kwara', 'invoicing' ),
885
-		'LA' => __( 'Lagos', 'invoicing' ),
886
-		'NA' => __( 'Nasarawa', 'invoicing' ),
887
-		'NI' => __( 'Niger', 'invoicing' ),
888
-		'OG' => __( 'Ogun', 'invoicing' ),
889
-		'ON' => __( 'Ondo', 'invoicing' ),
890
-		'OS' => __( 'Osun', 'invoicing' ),
891
-		'OY' => __( 'Oyo', 'invoicing' ),
892
-		'PL' => __( 'Plateau', 'invoicing' ),
893
-		'RI' => __( 'Rivers', 'invoicing' ),
894
-		'SO' => __( 'Sokoto', 'invoicing' ),
895
-		'TA' => __( 'Taraba', 'invoicing' ),
896
-		'YO' => __( 'Yobe', 'invoicing' ),
897
-		'ZA' => __( 'Zamfara', 'invoicing' ),
898
-	),
899
-	'NL' => array(),
900
-	'NO' => array(),
901
-	'NP' => array( // Nepal states (Zones).
902
-		'BAG' => __( 'Bagmati', 'invoicing' ),
903
-		'BHE' => __( 'Bheri', 'invoicing' ),
904
-		'DHA' => __( 'Dhaulagiri', 'invoicing' ),
905
-		'GAN' => __( 'Gandaki', 'invoicing' ),
906
-		'JAN' => __( 'Janakpur', 'invoicing' ),
907
-		'KAR' => __( 'Karnali', 'invoicing' ),
908
-		'KOS' => __( 'Koshi', 'invoicing' ),
909
-		'LUM' => __( 'Lumbini', 'invoicing' ),
910
-		'MAH' => __( 'Mahakali', 'invoicing' ),
911
-		'MEC' => __( 'Mechi', 'invoicing' ),
912
-		'NAR' => __( 'Narayani', 'invoicing' ),
913
-		'RAP' => __( 'Rapti', 'invoicing' ),
914
-		'SAG' => __( 'Sagarmatha', 'invoicing' ),
915
-		'SET' => __( 'Seti', 'invoicing' ),
916
-	),
917
-	'NZ' => array( // New Zealand States.
918
-		'NL' => __( 'Northland', 'invoicing' ),
919
-		'AK' => __( 'Auckland', 'invoicing' ),
920
-		'WA' => __( 'Waikato', 'invoicing' ),
921
-		'BP' => __( 'Bay of Plenty', 'invoicing' ),
922
-		'TK' => __( 'Taranaki', 'invoicing' ),
923
-		'GI' => __( 'Gisborne', 'invoicing' ),
924
-		'HB' => __( 'Hawke’s Bay', 'invoicing' ),
925
-		'MW' => __( 'Manawatu-Wanganui', 'invoicing' ),
926
-		'WE' => __( 'Wellington', 'invoicing' ),
927
-		'NS' => __( 'Nelson', 'invoicing' ),
928
-		'MB' => __( 'Marlborough', 'invoicing' ),
929
-		'TM' => __( 'Tasman', 'invoicing' ),
930
-		'WC' => __( 'West Coast', 'invoicing' ),
931
-		'CT' => __( 'Canterbury', 'invoicing' ),
932
-		'OT' => __( 'Otago', 'invoicing' ),
933
-		'SL' => __( 'Southland', 'invoicing' ),
934
-	),
935
-	'PE' => array( // Peru states.
936
-		'CAL' => __( 'El Callao', 'invoicing' ),
937
-		'LMA' => __( 'Municipalidad Metropolitana de Lima', 'invoicing' ),
938
-		'AMA' => __( 'Amazonas', 'invoicing' ),
939
-		'ANC' => __( 'Ancash', 'invoicing' ),
940
-		'APU' => __( 'Apurímac', 'invoicing' ),
941
-		'ARE' => __( 'Arequipa', 'invoicing' ),
942
-		'AYA' => __( 'Ayacucho', 'invoicing' ),
943
-		'CAJ' => __( 'Cajamarca', 'invoicing' ),
944
-		'CUS' => __( 'Cusco', 'invoicing' ),
945
-		'HUV' => __( 'Huancavelica', 'invoicing' ),
946
-		'HUC' => __( 'Huánuco', 'invoicing' ),
947
-		'ICA' => __( 'Ica', 'invoicing' ),
948
-		'JUN' => __( 'Junín', 'invoicing' ),
949
-		'LAL' => __( 'La Libertad', 'invoicing' ),
950
-		'LAM' => __( 'Lambayeque', 'invoicing' ),
951
-		'LIM' => __( 'Lima', 'invoicing' ),
952
-		'LOR' => __( 'Loreto', 'invoicing' ),
953
-		'MDD' => __( 'Madre de Dios', 'invoicing' ),
954
-		'MOQ' => __( 'Moquegua', 'invoicing' ),
955
-		'PAS' => __( 'Pasco', 'invoicing' ),
956
-		'PIU' => __( 'Piura', 'invoicing' ),
957
-		'PUN' => __( 'Puno', 'invoicing' ),
958
-		'SAM' => __( 'San Martín', 'invoicing' ),
959
-		'TAC' => __( 'Tacna', 'invoicing' ),
960
-		'TUM' => __( 'Tumbes', 'invoicing' ),
961
-		'UCA' => __( 'Ucayali', 'invoicing' ),
962
-	),
644
+    /**
645
+     * Japan States.
646
+     *
647
+     * English notation of prefectures conform to the notation of Japan Post.
648
+     * The suffix corresponds with the Japanese translation file.
649
+     */
650
+    'JP' => array(
651
+        'JP01' => __( 'Hokkaido', 'invoicing' ),
652
+        'JP02' => __( 'Aomori', 'invoicing' ),
653
+        'JP03' => __( 'Iwate', 'invoicing' ),
654
+        'JP04' => __( 'Miyagi', 'invoicing' ),
655
+        'JP05' => __( 'Akita', 'invoicing' ),
656
+        'JP06' => __( 'Yamagata', 'invoicing' ),
657
+        'JP07' => __( 'Fukushima', 'invoicing' ),
658
+        'JP08' => __( 'Ibaraki', 'invoicing' ),
659
+        'JP09' => __( 'Tochigi', 'invoicing' ),
660
+        'JP10' => __( 'Gunma', 'invoicing' ),
661
+        'JP11' => __( 'Saitama', 'invoicing' ),
662
+        'JP12' => __( 'Chiba', 'invoicing' ),
663
+        'JP13' => __( 'Tokyo', 'invoicing' ),
664
+        'JP14' => __( 'Kanagawa', 'invoicing' ),
665
+        'JP15' => __( 'Niigata', 'invoicing' ),
666
+        'JP16' => __( 'Toyama', 'invoicing' ),
667
+        'JP17' => __( 'Ishikawa', 'invoicing' ),
668
+        'JP18' => __( 'Fukui', 'invoicing' ),
669
+        'JP19' => __( 'Yamanashi', 'invoicing' ),
670
+        'JP20' => __( 'Nagano', 'invoicing' ),
671
+        'JP21' => __( 'Gifu', 'invoicing' ),
672
+        'JP22' => __( 'Shizuoka', 'invoicing' ),
673
+        'JP23' => __( 'Aichi', 'invoicing' ),
674
+        'JP24' => __( 'Mie', 'invoicing' ),
675
+        'JP25' => __( 'Shiga', 'invoicing' ),
676
+        'JP26' => __( 'Kyoto', 'invoicing' ),
677
+        'JP27' => __( 'Osaka', 'invoicing' ),
678
+        'JP28' => __( 'Hyogo', 'invoicing' ),
679
+        'JP29' => __( 'Nara', 'invoicing' ),
680
+        'JP30' => __( 'Wakayama', 'invoicing' ),
681
+        'JP31' => __( 'Tottori', 'invoicing' ),
682
+        'JP32' => __( 'Shimane', 'invoicing' ),
683
+        'JP33' => __( 'Okayama', 'invoicing' ),
684
+        'JP34' => __( 'Hiroshima', 'invoicing' ),
685
+        'JP35' => __( 'Yamaguchi', 'invoicing' ),
686
+        'JP36' => __( 'Tokushima', 'invoicing' ),
687
+        'JP37' => __( 'Kagawa', 'invoicing' ),
688
+        'JP38' => __( 'Ehime', 'invoicing' ),
689
+        'JP39' => __( 'Kochi', 'invoicing' ),
690
+        'JP40' => __( 'Fukuoka', 'invoicing' ),
691
+        'JP41' => __( 'Saga', 'invoicing' ),
692
+        'JP42' => __( 'Nagasaki', 'invoicing' ),
693
+        'JP43' => __( 'Kumamoto', 'invoicing' ),
694
+        'JP44' => __( 'Oita', 'invoicing' ),
695
+        'JP45' => __( 'Miyazaki', 'invoicing' ),
696
+        'JP46' => __( 'Kagoshima', 'invoicing' ),
697
+        'JP47' => __( 'Okinawa', 'invoicing' ),
698
+    ),
699
+    'KE' => array( // Kenya Counties.
700
+        '1'  => __( 'Mombasa', 'invoicing' ),
701
+        '2'  => __( 'Kwale', 'invoicing' ),
702
+        '3'  => __( 'Kilifi', 'invoicing' ),
703
+        '4'  => __( 'Tana River', 'invoicing' ),
704
+        '5'  => __( 'Lamu', 'invoicing' ),
705
+        '6'  => __( 'Taita-Taveta', 'invoicing' ),
706
+        '7'  => __( 'Garissa', 'invoicing' ),
707
+        '8'  => __( 'Wajir', 'invoicing' ),
708
+        '9'  => __( 'Mandera', 'invoicing' ),
709
+        '10' => __( 'Marsabit', 'invoicing' ),
710
+        '11' => __( 'Isiolo', 'invoicing' ),
711
+        '12' => __( 'Meru', 'invoicing' ),
712
+        '13' => __( 'Tharaka-Nithi', 'invoicing' ),
713
+        '14' => __( 'Embu', 'invoicing' ),
714
+        '15' => __( 'Kitui', 'invoicing' ),
715
+        '16' => __( 'Machakos', 'invoicing' ),
716
+        '17' => __( 'Makueni', 'invoicing' ),
717
+        '18' => __( 'Nyandarua', 'invoicing' ),
718
+        '19' => __( 'Nyeri', 'invoicing' ),
719
+        '20' => __( 'Kirinyaga', 'invoicing' ),
720
+        '21' => __( "Murang'a", 'invoicing' ),
721
+        '22' => __( 'Kiambu', 'invoicing' ),
722
+        '23' => __( 'Turkana', 'invoicing' ),
723
+        '24' => __( 'West Pokot', 'invoicing' ),
724
+        '25' => __( 'Samburu', 'invoicing' ),
725
+        '26' => __( 'Trans-Nzoia', 'invoicing' ),
726
+        '27' => __( 'Uasin Gishu', 'invoicing' ),
727
+        '28' => __( 'Elgeyo-Marakwet', 'invoicing' ),
728
+        '29' => __( 'Nandi', 'invoicing' ),
729
+        '30' => __( 'Baringo', 'invoicing' ),
730
+        '31' => __( 'Laikipia', 'invoicing' ),
731
+        '32' => __( 'Nakuru', 'invoicing' ),
732
+        '33' => __( 'Narok', 'invoicing' ),
733
+        '34' => __( 'Kajiado', 'invoicing' ),
734
+        '35' => __( 'Kericho', 'invoicing' ),
735
+        '36' => __( 'Bomet', 'invoicing' ),
736
+        '37' => __( 'Kakamega', 'invoicing' ),
737
+        '38' => __( 'Vihiga', 'invoicing' ),
738
+        '39' => __( 'Bungoma', 'invoicing' ),
739
+        '40' => __( 'Busia', 'invoicing' ),
740
+        '41' => __( 'Siaya', 'invoicing' ),
741
+        '42' => __( 'Kisumu', 'invoicing' ),
742
+        '43' => __( 'Homa bay', 'invoicing' ),
743
+        '44' => __( 'Migori', 'invoicing' ),
744
+        '45' => __( 'Kisii', 'invoicing' ),
745
+        '46' => __( 'Nyamira', 'invoicing' ),
746
+        '47' => __( 'Nairobi', 'invoicing' ),
747
+    ),
748
+    'KR' => array(),
749
+    'KW' => array(),
750
+    'LB' => array(),
751
+    'LR' => array( // Liberia provinces.
752
+        'BM' => __( 'Bomi', 'invoicing' ),
753
+        'BN' => __( 'Bong', 'invoicing' ),
754
+        'GA' => __( 'Gbarpolu', 'invoicing' ),
755
+        'GB' => __( 'Grand Bassa', 'invoicing' ),
756
+        'GC' => __( 'Grand Cape Mount', 'invoicing' ),
757
+        'GG' => __( 'Grand Gedeh', 'invoicing' ),
758
+        'GK' => __( 'Grand Kru', 'invoicing' ),
759
+        'LO' => __( 'Lofa', 'invoicing' ),
760
+        'MA' => __( 'Margibi', 'invoicing' ),
761
+        'MY' => __( 'Maryland', 'invoicing' ),
762
+        'MO' => __( 'Montserrado', 'invoicing' ),
763
+        'NM' => __( 'Nimba', 'invoicing' ),
764
+        'RV' => __( 'Rivercess', 'invoicing' ),
765
+        'RG' => __( 'River Gee', 'invoicing' ),
766
+        'SN' => __( 'Sinoe', 'invoicing' ),
767
+    ),
768
+    'LU' => array(),
769
+    'MD' => array( // Moldova states.
770
+        'C'  => __( 'Chișinău', 'invoicing' ),
771
+        'BL' => __( 'Bălți', 'invoicing' ),
772
+        'AN' => __( 'Anenii Noi', 'invoicing' ),
773
+        'BS' => __( 'Basarabeasca', 'invoicing' ),
774
+        'BR' => __( 'Briceni', 'invoicing' ),
775
+        'CH' => __( 'Cahul', 'invoicing' ),
776
+        'CT' => __( 'Cantemir', 'invoicing' ),
777
+        'CL' => __( 'Călărași', 'invoicing' ),
778
+        'CS' => __( 'Căușeni', 'invoicing' ),
779
+        'CM' => __( 'Cimișlia', 'invoicing' ),
780
+        'CR' => __( 'Criuleni', 'invoicing' ),
781
+        'DN' => __( 'Dondușeni', 'invoicing' ),
782
+        'DR' => __( 'Drochia', 'invoicing' ),
783
+        'DB' => __( 'Dubăsari', 'invoicing' ),
784
+        'ED' => __( 'Edineț', 'invoicing' ),
785
+        'FL' => __( 'Fălești', 'invoicing' ),
786
+        'FR' => __( 'Florești', 'invoicing' ),
787
+        'GE' => __( 'UTA Găgăuzia', 'invoicing' ),
788
+        'GL' => __( 'Glodeni', 'invoicing' ),
789
+        'HN' => __( 'Hîncești', 'invoicing' ),
790
+        'IL' => __( 'Ialoveni', 'invoicing' ),
791
+        'LV' => __( 'Leova', 'invoicing' ),
792
+        'NS' => __( 'Nisporeni', 'invoicing' ),
793
+        'OC' => __( 'Ocnița', 'invoicing' ),
794
+        'OR' => __( 'Orhei', 'invoicing' ),
795
+        'RZ' => __( 'Rezina', 'invoicing' ),
796
+        'RS' => __( 'Rîșcani', 'invoicing' ),
797
+        'SG' => __( 'Sîngerei', 'invoicing' ),
798
+        'SR' => __( 'Soroca', 'invoicing' ),
799
+        'ST' => __( 'Strășeni', 'invoicing' ),
800
+        'SD' => __( 'Șoldănești', 'invoicing' ),
801
+        'SV' => __( 'Ștefan Vodă', 'invoicing' ),
802
+        'TR' => __( 'Taraclia', 'invoicing' ),
803
+        'TL' => __( 'Telenești', 'invoicing' ),
804
+        'UN' => __( 'Ungheni', 'invoicing' ),
805
+    ),
806
+    'MQ' => array(),
807
+    'MT' => array(),
808
+    'MX' => array( // Mexico States.
809
+        'DF' => __( 'Ciudad de México', 'invoicing' ),
810
+        'JA' => __( 'Jalisco', 'invoicing' ),
811
+        'NL' => __( 'Nuevo León', 'invoicing' ),
812
+        'AG' => __( 'Aguascalientes', 'invoicing' ),
813
+        'BC' => __( 'Baja California', 'invoicing' ),
814
+        'BS' => __( 'Baja California Sur', 'invoicing' ),
815
+        'CM' => __( 'Campeche', 'invoicing' ),
816
+        'CS' => __( 'Chiapas', 'invoicing' ),
817
+        'CH' => __( 'Chihuahua', 'invoicing' ),
818
+        'CO' => __( 'Coahuila', 'invoicing' ),
819
+        'CL' => __( 'Colima', 'invoicing' ),
820
+        'DG' => __( 'Durango', 'invoicing' ),
821
+        'GT' => __( 'Guanajuato', 'invoicing' ),
822
+        'GR' => __( 'Guerrero', 'invoicing' ),
823
+        'HG' => __( 'Hidalgo', 'invoicing' ),
824
+        'MX' => __( 'Estado de México', 'invoicing' ),
825
+        'MI' => __( 'Michoacán', 'invoicing' ),
826
+        'MO' => __( 'Morelos', 'invoicing' ),
827
+        'NA' => __( 'Nayarit', 'invoicing' ),
828
+        'OA' => __( 'Oaxaca', 'invoicing' ),
829
+        'PU' => __( 'Puebla', 'invoicing' ),
830
+        'QT' => __( 'Querétaro', 'invoicing' ),
831
+        'QR' => __( 'Quintana Roo', 'invoicing' ),
832
+        'SL' => __( 'San Luis Potosí', 'invoicing' ),
833
+        'SI' => __( 'Sinaloa', 'invoicing' ),
834
+        'SO' => __( 'Sonora', 'invoicing' ),
835
+        'TB' => __( 'Tabasco', 'invoicing' ),
836
+        'TM' => __( 'Tamaulipas', 'invoicing' ),
837
+        'TL' => __( 'Tlaxcala', 'invoicing' ),
838
+        'VE' => __( 'Veracruz', 'invoicing' ),
839
+        'YU' => __( 'Yucatán', 'invoicing' ),
840
+        'ZA' => __( 'Zacatecas', 'invoicing' ),
841
+    ),
842
+    'MY' => array( // Malaysian states.
843
+        'JHR' => __( 'Johor', 'invoicing' ),
844
+        'KDH' => __( 'Kedah', 'invoicing' ),
845
+        'KTN' => __( 'Kelantan', 'invoicing' ),
846
+        'LBN' => __( 'Labuan', 'invoicing' ),
847
+        'MLK' => __( 'Malacca (Melaka)', 'invoicing' ),
848
+        'NSN' => __( 'Negeri Sembilan', 'invoicing' ),
849
+        'PHG' => __( 'Pahang', 'invoicing' ),
850
+        'PNG' => __( 'Penang (Pulau Pinang)', 'invoicing' ),
851
+        'PRK' => __( 'Perak', 'invoicing' ),
852
+        'PLS' => __( 'Perlis', 'invoicing' ),
853
+        'SBH' => __( 'Sabah', 'invoicing' ),
854
+        'SWK' => __( 'Sarawak', 'invoicing' ),
855
+        'SGR' => __( 'Selangor', 'invoicing' ),
856
+        'TRG' => __( 'Terengganu', 'invoicing' ),
857
+        'PJY' => __( 'Putrajaya', 'invoicing' ),
858
+        'KUL' => __( 'Kuala Lumpur', 'invoicing' ),
859
+    ),
860
+    'NG' => array( // Nigerian provinces.
861
+        'AB' => __( 'Abia', 'invoicing' ),
862
+        'FC' => __( 'Abuja', 'invoicing' ),
863
+        'AD' => __( 'Adamawa', 'invoicing' ),
864
+        'AK' => __( 'Akwa Ibom', 'invoicing' ),
865
+        'AN' => __( 'Anambra', 'invoicing' ),
866
+        'BA' => __( 'Bauchi', 'invoicing' ),
867
+        'BY' => __( 'Bayelsa', 'invoicing' ),
868
+        'BE' => __( 'Benue', 'invoicing' ),
869
+        'BO' => __( 'Borno', 'invoicing' ),
870
+        'CR' => __( 'Cross River', 'invoicing' ),
871
+        'DE' => __( 'Delta', 'invoicing' ),
872
+        'EB' => __( 'Ebonyi', 'invoicing' ),
873
+        'ED' => __( 'Edo', 'invoicing' ),
874
+        'EK' => __( 'Ekiti', 'invoicing' ),
875
+        'EN' => __( 'Enugu', 'invoicing' ),
876
+        'GO' => __( 'Gombe', 'invoicing' ),
877
+        'IM' => __( 'Imo', 'invoicing' ),
878
+        'JI' => __( 'Jigawa', 'invoicing' ),
879
+        'KD' => __( 'Kaduna', 'invoicing' ),
880
+        'KN' => __( 'Kano', 'invoicing' ),
881
+        'KT' => __( 'Katsina', 'invoicing' ),
882
+        'KE' => __( 'Kebbi', 'invoicing' ),
883
+        'KO' => __( 'Kogi', 'invoicing' ),
884
+        'KW' => __( 'Kwara', 'invoicing' ),
885
+        'LA' => __( 'Lagos', 'invoicing' ),
886
+        'NA' => __( 'Nasarawa', 'invoicing' ),
887
+        'NI' => __( 'Niger', 'invoicing' ),
888
+        'OG' => __( 'Ogun', 'invoicing' ),
889
+        'ON' => __( 'Ondo', 'invoicing' ),
890
+        'OS' => __( 'Osun', 'invoicing' ),
891
+        'OY' => __( 'Oyo', 'invoicing' ),
892
+        'PL' => __( 'Plateau', 'invoicing' ),
893
+        'RI' => __( 'Rivers', 'invoicing' ),
894
+        'SO' => __( 'Sokoto', 'invoicing' ),
895
+        'TA' => __( 'Taraba', 'invoicing' ),
896
+        'YO' => __( 'Yobe', 'invoicing' ),
897
+        'ZA' => __( 'Zamfara', 'invoicing' ),
898
+    ),
899
+    'NL' => array(),
900
+    'NO' => array(),
901
+    'NP' => array( // Nepal states (Zones).
902
+        'BAG' => __( 'Bagmati', 'invoicing' ),
903
+        'BHE' => __( 'Bheri', 'invoicing' ),
904
+        'DHA' => __( 'Dhaulagiri', 'invoicing' ),
905
+        'GAN' => __( 'Gandaki', 'invoicing' ),
906
+        'JAN' => __( 'Janakpur', 'invoicing' ),
907
+        'KAR' => __( 'Karnali', 'invoicing' ),
908
+        'KOS' => __( 'Koshi', 'invoicing' ),
909
+        'LUM' => __( 'Lumbini', 'invoicing' ),
910
+        'MAH' => __( 'Mahakali', 'invoicing' ),
911
+        'MEC' => __( 'Mechi', 'invoicing' ),
912
+        'NAR' => __( 'Narayani', 'invoicing' ),
913
+        'RAP' => __( 'Rapti', 'invoicing' ),
914
+        'SAG' => __( 'Sagarmatha', 'invoicing' ),
915
+        'SET' => __( 'Seti', 'invoicing' ),
916
+    ),
917
+    'NZ' => array( // New Zealand States.
918
+        'NL' => __( 'Northland', 'invoicing' ),
919
+        'AK' => __( 'Auckland', 'invoicing' ),
920
+        'WA' => __( 'Waikato', 'invoicing' ),
921
+        'BP' => __( 'Bay of Plenty', 'invoicing' ),
922
+        'TK' => __( 'Taranaki', 'invoicing' ),
923
+        'GI' => __( 'Gisborne', 'invoicing' ),
924
+        'HB' => __( 'Hawke’s Bay', 'invoicing' ),
925
+        'MW' => __( 'Manawatu-Wanganui', 'invoicing' ),
926
+        'WE' => __( 'Wellington', 'invoicing' ),
927
+        'NS' => __( 'Nelson', 'invoicing' ),
928
+        'MB' => __( 'Marlborough', 'invoicing' ),
929
+        'TM' => __( 'Tasman', 'invoicing' ),
930
+        'WC' => __( 'West Coast', 'invoicing' ),
931
+        'CT' => __( 'Canterbury', 'invoicing' ),
932
+        'OT' => __( 'Otago', 'invoicing' ),
933
+        'SL' => __( 'Southland', 'invoicing' ),
934
+    ),
935
+    'PE' => array( // Peru states.
936
+        'CAL' => __( 'El Callao', 'invoicing' ),
937
+        'LMA' => __( 'Municipalidad Metropolitana de Lima', 'invoicing' ),
938
+        'AMA' => __( 'Amazonas', 'invoicing' ),
939
+        'ANC' => __( 'Ancash', 'invoicing' ),
940
+        'APU' => __( 'Apurímac', 'invoicing' ),
941
+        'ARE' => __( 'Arequipa', 'invoicing' ),
942
+        'AYA' => __( 'Ayacucho', 'invoicing' ),
943
+        'CAJ' => __( 'Cajamarca', 'invoicing' ),
944
+        'CUS' => __( 'Cusco', 'invoicing' ),
945
+        'HUV' => __( 'Huancavelica', 'invoicing' ),
946
+        'HUC' => __( 'Huánuco', 'invoicing' ),
947
+        'ICA' => __( 'Ica', 'invoicing' ),
948
+        'JUN' => __( 'Junín', 'invoicing' ),
949
+        'LAL' => __( 'La Libertad', 'invoicing' ),
950
+        'LAM' => __( 'Lambayeque', 'invoicing' ),
951
+        'LIM' => __( 'Lima', 'invoicing' ),
952
+        'LOR' => __( 'Loreto', 'invoicing' ),
953
+        'MDD' => __( 'Madre de Dios', 'invoicing' ),
954
+        'MOQ' => __( 'Moquegua', 'invoicing' ),
955
+        'PAS' => __( 'Pasco', 'invoicing' ),
956
+        'PIU' => __( 'Piura', 'invoicing' ),
957
+        'PUN' => __( 'Puno', 'invoicing' ),
958
+        'SAM' => __( 'San Martín', 'invoicing' ),
959
+        'TAC' => __( 'Tacna', 'invoicing' ),
960
+        'TUM' => __( 'Tumbes', 'invoicing' ),
961
+        'UCA' => __( 'Ucayali', 'invoicing' ),
962
+    ),
963 963
 
964
-	/**
965
-	 * Philippine Provinces.
966
-	 */
967
-	'PH' => array(
968
-		'ABR' => __( 'Abra', 'invoicing' ),
969
-		'AGN' => __( 'Agusan del Norte', 'invoicing' ),
970
-		'AGS' => __( 'Agusan del Sur', 'invoicing' ),
971
-		'AKL' => __( 'Aklan', 'invoicing' ),
972
-		'ALB' => __( 'Albay', 'invoicing' ),
973
-		'ANT' => __( 'Antique', 'invoicing' ),
974
-		'APA' => __( 'Apayao', 'invoicing' ),
975
-		'AUR' => __( 'Aurora', 'invoicing' ),
976
-		'BAS' => __( 'Basilan', 'invoicing' ),
977
-		'BAN' => __( 'Bataan', 'invoicing' ),
978
-		'BTN' => __( 'Batanes', 'invoicing' ),
979
-		'BTG' => __( 'Batangas', 'invoicing' ),
980
-		'BEN' => __( 'Benguet', 'invoicing' ),
981
-		'BIL' => __( 'Biliran', 'invoicing' ),
982
-		'BOH' => __( 'Bohol', 'invoicing' ),
983
-		'BUK' => __( 'Bukidnon', 'invoicing' ),
984
-		'BUL' => __( 'Bulacan', 'invoicing' ),
985
-		'CAG' => __( 'Cagayan', 'invoicing' ),
986
-		'CAN' => __( 'Camarines Norte', 'invoicing' ),
987
-		'CAS' => __( 'Camarines Sur', 'invoicing' ),
988
-		'CAM' => __( 'Camiguin', 'invoicing' ),
989
-		'CAP' => __( 'Capiz', 'invoicing' ),
990
-		'CAT' => __( 'Catanduanes', 'invoicing' ),
991
-		'CAV' => __( 'Cavite', 'invoicing' ),
992
-		'CEB' => __( 'Cebu', 'invoicing' ),
993
-		'COM' => __( 'Compostela Valley', 'invoicing' ),
994
-		'NCO' => __( 'Cotabato', 'invoicing' ),
995
-		'DAV' => __( 'Davao del Norte', 'invoicing' ),
996
-		'DAS' => __( 'Davao del Sur', 'invoicing' ),
997
-		'DAC' => __( 'Davao Occidental', 'invoicing' ),
998
-		'DAO' => __( 'Davao Oriental', 'invoicing' ),
999
-		'DIN' => __( 'Dinagat Islands', 'invoicing' ),
1000
-		'EAS' => __( 'Eastern Samar', 'invoicing' ),
1001
-		'GUI' => __( 'Guimaras', 'invoicing' ),
1002
-		'IFU' => __( 'Ifugao', 'invoicing' ),
1003
-		'ILN' => __( 'Ilocos Norte', 'invoicing' ),
1004
-		'ILS' => __( 'Ilocos Sur', 'invoicing' ),
1005
-		'ILI' => __( 'Iloilo', 'invoicing' ),
1006
-		'ISA' => __( 'Isabela', 'invoicing' ),
1007
-		'KAL' => __( 'Kalinga', 'invoicing' ),
1008
-		'LUN' => __( 'La Union', 'invoicing' ),
1009
-		'LAG' => __( 'Laguna', 'invoicing' ),
1010
-		'LAN' => __( 'Lanao del Norte', 'invoicing' ),
1011
-		'LAS' => __( 'Lanao del Sur', 'invoicing' ),
1012
-		'LEY' => __( 'Leyte', 'invoicing' ),
1013
-		'MAG' => __( 'Maguindanao', 'invoicing' ),
1014
-		'MAD' => __( 'Marinduque', 'invoicing' ),
1015
-		'MAS' => __( 'Masbate', 'invoicing' ),
1016
-		'MSC' => __( 'Misamis Occidental', 'invoicing' ),
1017
-		'MSR' => __( 'Misamis Oriental', 'invoicing' ),
1018
-		'MOU' => __( 'Mountain Province', 'invoicing' ),
1019
-		'NEC' => __( 'Negros Occidental', 'invoicing' ),
1020
-		'NER' => __( 'Negros Oriental', 'invoicing' ),
1021
-		'NSA' => __( 'Northern Samar', 'invoicing' ),
1022
-		'NUE' => __( 'Nueva Ecija', 'invoicing' ),
1023
-		'NUV' => __( 'Nueva Vizcaya', 'invoicing' ),
1024
-		'MDC' => __( 'Occidental Mindoro', 'invoicing' ),
1025
-		'MDR' => __( 'Oriental Mindoro', 'invoicing' ),
1026
-		'PLW' => __( 'Palawan', 'invoicing' ),
1027
-		'PAM' => __( 'Pampanga', 'invoicing' ),
1028
-		'PAN' => __( 'Pangasinan', 'invoicing' ),
1029
-		'QUE' => __( 'Quezon', 'invoicing' ),
1030
-		'QUI' => __( 'Quirino', 'invoicing' ),
1031
-		'RIZ' => __( 'Rizal', 'invoicing' ),
1032
-		'ROM' => __( 'Romblon', 'invoicing' ),
1033
-		'WSA' => __( 'Samar', 'invoicing' ),
1034
-		'SAR' => __( 'Sarangani', 'invoicing' ),
1035
-		'SIQ' => __( 'Siquijor', 'invoicing' ),
1036
-		'SOR' => __( 'Sorsogon', 'invoicing' ),
1037
-		'SCO' => __( 'South Cotabato', 'invoicing' ),
1038
-		'SLE' => __( 'Southern Leyte', 'invoicing' ),
1039
-		'SUK' => __( 'Sultan Kudarat', 'invoicing' ),
1040
-		'SLU' => __( 'Sulu', 'invoicing' ),
1041
-		'SUN' => __( 'Surigao del Norte', 'invoicing' ),
1042
-		'SUR' => __( 'Surigao del Sur', 'invoicing' ),
1043
-		'TAR' => __( 'Tarlac', 'invoicing' ),
1044
-		'TAW' => __( 'Tawi-Tawi', 'invoicing' ),
1045
-		'ZMB' => __( 'Zambales', 'invoicing' ),
1046
-		'ZAN' => __( 'Zamboanga del Norte', 'invoicing' ),
1047
-		'ZAS' => __( 'Zamboanga del Sur', 'invoicing' ),
1048
-		'ZSI' => __( 'Zamboanga Sibugay', 'invoicing' ),
1049
-		'00'  => __( 'Metro Manila', 'invoicing' ),
1050
-	),
1051
-	'PK' => array( // Pakistan's states.
1052
-		'JK' => __( 'Azad Kashmir', 'invoicing' ),
1053
-		'BA' => __( 'Balochistan', 'invoicing' ),
1054
-		'TA' => __( 'FATA', 'invoicing' ),
1055
-		'GB' => __( 'Gilgit Baltistan', 'invoicing' ),
1056
-		'IS' => __( 'Islamabad Capital Territory', 'invoicing' ),
1057
-		'KP' => __( 'Khyber Pakhtunkhwa', 'invoicing' ),
1058
-		'PB' => __( 'Punjab', 'invoicing' ),
1059
-		'SD' => __( 'Sindh', 'invoicing' ),
1060
-	),
1061
-	'PL' => array(),
1062
-	'PT' => array(),
1063
-	'PY' => array( // Paraguay states.
1064
-		'PY-ASU' => __( 'Asunción', 'invoicing' ),
1065
-		'PY-1'   => __( 'Concepción', 'invoicing' ),
1066
-		'PY-2'   => __( 'San Pedro', 'invoicing' ),
1067
-		'PY-3'   => __( 'Cordillera', 'invoicing' ),
1068
-		'PY-4'   => __( 'Guairá', 'invoicing' ),
1069
-		'PY-5'   => __( 'Caaguazú', 'invoicing' ),
1070
-		'PY-6'   => __( 'Caazapá', 'invoicing' ),
1071
-		'PY-7'   => __( 'Itapúa', 'invoicing' ),
1072
-		'PY-8'   => __( 'Misiones', 'invoicing' ),
1073
-		'PY-9'   => __( 'Paraguarí', 'invoicing' ),
1074
-		'PY-10'  => __( 'Alto Paraná', 'invoicing' ),
1075
-		'PY-11'  => __( 'Central', 'invoicing' ),
1076
-		'PY-12'  => __( 'Ñeembucú', 'invoicing' ),
1077
-		'PY-13'  => __( 'Amambay', 'invoicing' ),
1078
-		'PY-14'  => __( 'Canindeyú', 'invoicing' ),
1079
-		'PY-15'  => __( 'Presidente Hayes', 'invoicing' ),
1080
-		'PY-16'  => __( 'Alto Paraguay', 'invoicing' ),
1081
-		'PY-17'  => __( 'Boquerón', 'invoicing' ),
1082
-	),
1083
-	'RE' => array(),
1084
-	'RO' => array( // Romania states.
1085
-		'AB' => __( 'Alba', 'invoicing' ),
1086
-		'AR' => __( 'Arad', 'invoicing' ),
1087
-		'AG' => __( 'Argeș', 'invoicing' ),
1088
-		'BC' => __( 'Bacău', 'invoicing' ),
1089
-		'BH' => __( 'Bihor', 'invoicing' ),
1090
-		'BN' => __( 'Bistrița-Năsăud', 'invoicing' ),
1091
-		'BT' => __( 'Botoșani', 'invoicing' ),
1092
-		'BR' => __( 'Brăila', 'invoicing' ),
1093
-		'BV' => __( 'Brașov', 'invoicing' ),
1094
-		'B'  => __( 'București', 'invoicing' ),
1095
-		'BZ' => __( 'Buzău', 'invoicing' ),
1096
-		'CL' => __( 'Călărași', 'invoicing' ),
1097
-		'CS' => __( 'Caraș-Severin', 'invoicing' ),
1098
-		'CJ' => __( 'Cluj', 'invoicing' ),
1099
-		'CT' => __( 'Constanța', 'invoicing' ),
1100
-		'CV' => __( 'Covasna', 'invoicing' ),
1101
-		'DB' => __( 'Dâmbovița', 'invoicing' ),
1102
-		'DJ' => __( 'Dolj', 'invoicing' ),
1103
-		'GL' => __( 'Galați', 'invoicing' ),
1104
-		'GR' => __( 'Giurgiu', 'invoicing' ),
1105
-		'GJ' => __( 'Gorj', 'invoicing' ),
1106
-		'HR' => __( 'Harghita', 'invoicing' ),
1107
-		'HD' => __( 'Hunedoara', 'invoicing' ),
1108
-		'IL' => __( 'Ialomița', 'invoicing' ),
1109
-		'IS' => __( 'Iași', 'invoicing' ),
1110
-		'IF' => __( 'Ilfov', 'invoicing' ),
1111
-		'MM' => __( 'Maramureș', 'invoicing' ),
1112
-		'MH' => __( 'Mehedinți', 'invoicing' ),
1113
-		'MS' => __( 'Mureș', 'invoicing' ),
1114
-		'NT' => __( 'Neamț', 'invoicing' ),
1115
-		'OT' => __( 'Olt', 'invoicing' ),
1116
-		'PH' => __( 'Prahova', 'invoicing' ),
1117
-		'SJ' => __( 'Sălaj', 'invoicing' ),
1118
-		'SM' => __( 'Satu Mare', 'invoicing' ),
1119
-		'SB' => __( 'Sibiu', 'invoicing' ),
1120
-		'SV' => __( 'Suceava', 'invoicing' ),
1121
-		'TR' => __( 'Teleorman', 'invoicing' ),
1122
-		'TM' => __( 'Timiș', 'invoicing' ),
1123
-		'TL' => __( 'Tulcea', 'invoicing' ),
1124
-		'VL' => __( 'Vâlcea', 'invoicing' ),
1125
-		'VS' => __( 'Vaslui', 'invoicing' ),
1126
-		'VN' => __( 'Vrancea', 'invoicing' ),
1127
-	),
1128
-	'RS' => array(),
1129
-	'SG' => array(),
1130
-	'SK' => array(),
1131
-	'SI' => array(),
1132
-	'TH' => array( // Thailand states.
1133
-		'TH-37' => __( 'Amnat Charoen', 'invoicing' ),
1134
-		'TH-15' => __( 'Ang Thong', 'invoicing' ),
1135
-		'TH-14' => __( 'Ayutthaya', 'invoicing' ),
1136
-		'TH-10' => __( 'Bangkok', 'invoicing' ),
1137
-		'TH-38' => __( 'Bueng Kan', 'invoicing' ),
1138
-		'TH-31' => __( 'Buri Ram', 'invoicing' ),
1139
-		'TH-24' => __( 'Chachoengsao', 'invoicing' ),
1140
-		'TH-18' => __( 'Chai Nat', 'invoicing' ),
1141
-		'TH-36' => __( 'Chaiyaphum', 'invoicing' ),
1142
-		'TH-22' => __( 'Chanthaburi', 'invoicing' ),
1143
-		'TH-50' => __( 'Chiang Mai', 'invoicing' ),
1144
-		'TH-57' => __( 'Chiang Rai', 'invoicing' ),
1145
-		'TH-20' => __( 'Chonburi', 'invoicing' ),
1146
-		'TH-86' => __( 'Chumphon', 'invoicing' ),
1147
-		'TH-46' => __( 'Kalasin', 'invoicing' ),
1148
-		'TH-62' => __( 'Kamphaeng Phet', 'invoicing' ),
1149
-		'TH-71' => __( 'Kanchanaburi', 'invoicing' ),
1150
-		'TH-40' => __( 'Khon Kaen', 'invoicing' ),
1151
-		'TH-81' => __( 'Krabi', 'invoicing' ),
1152
-		'TH-52' => __( 'Lampang', 'invoicing' ),
1153
-		'TH-51' => __( 'Lamphun', 'invoicing' ),
1154
-		'TH-42' => __( 'Loei', 'invoicing' ),
1155
-		'TH-16' => __( 'Lopburi', 'invoicing' ),
1156
-		'TH-58' => __( 'Mae Hong Son', 'invoicing' ),
1157
-		'TH-44' => __( 'Maha Sarakham', 'invoicing' ),
1158
-		'TH-49' => __( 'Mukdahan', 'invoicing' ),
1159
-		'TH-26' => __( 'Nakhon Nayok', 'invoicing' ),
1160
-		'TH-73' => __( 'Nakhon Pathom', 'invoicing' ),
1161
-		'TH-48' => __( 'Nakhon Phanom', 'invoicing' ),
1162
-		'TH-30' => __( 'Nakhon Ratchasima', 'invoicing' ),
1163
-		'TH-60' => __( 'Nakhon Sawan', 'invoicing' ),
1164
-		'TH-80' => __( 'Nakhon Si Thammarat', 'invoicing' ),
1165
-		'TH-55' => __( 'Nan', 'invoicing' ),
1166
-		'TH-96' => __( 'Narathiwat', 'invoicing' ),
1167
-		'TH-39' => __( 'Nong Bua Lam Phu', 'invoicing' ),
1168
-		'TH-43' => __( 'Nong Khai', 'invoicing' ),
1169
-		'TH-12' => __( 'Nonthaburi', 'invoicing' ),
1170
-		'TH-13' => __( 'Pathum Thani', 'invoicing' ),
1171
-		'TH-94' => __( 'Pattani', 'invoicing' ),
1172
-		'TH-82' => __( 'Phang Nga', 'invoicing' ),
1173
-		'TH-93' => __( 'Phatthalung', 'invoicing' ),
1174
-		'TH-56' => __( 'Phayao', 'invoicing' ),
1175
-		'TH-67' => __( 'Phetchabun', 'invoicing' ),
1176
-		'TH-76' => __( 'Phetchaburi', 'invoicing' ),
1177
-		'TH-66' => __( 'Phichit', 'invoicing' ),
1178
-		'TH-65' => __( 'Phitsanulok', 'invoicing' ),
1179
-		'TH-54' => __( 'Phrae', 'invoicing' ),
1180
-		'TH-83' => __( 'Phuket', 'invoicing' ),
1181
-		'TH-25' => __( 'Prachin Buri', 'invoicing' ),
1182
-		'TH-77' => __( 'Prachuap Khiri Khan', 'invoicing' ),
1183
-		'TH-85' => __( 'Ranong', 'invoicing' ),
1184
-		'TH-70' => __( 'Ratchaburi', 'invoicing' ),
1185
-		'TH-21' => __( 'Rayong', 'invoicing' ),
1186
-		'TH-45' => __( 'Roi Et', 'invoicing' ),
1187
-		'TH-27' => __( 'Sa Kaeo', 'invoicing' ),
1188
-		'TH-47' => __( 'Sakon Nakhon', 'invoicing' ),
1189
-		'TH-11' => __( 'Samut Prakan', 'invoicing' ),
1190
-		'TH-74' => __( 'Samut Sakhon', 'invoicing' ),
1191
-		'TH-75' => __( 'Samut Songkhram', 'invoicing' ),
1192
-		'TH-19' => __( 'Saraburi', 'invoicing' ),
1193
-		'TH-91' => __( 'Satun', 'invoicing' ),
1194
-		'TH-17' => __( 'Sing Buri', 'invoicing' ),
1195
-		'TH-33' => __( 'Sisaket', 'invoicing' ),
1196
-		'TH-90' => __( 'Songkhla', 'invoicing' ),
1197
-		'TH-64' => __( 'Sukhothai', 'invoicing' ),
1198
-		'TH-72' => __( 'Suphan Buri', 'invoicing' ),
1199
-		'TH-84' => __( 'Surat Thani', 'invoicing' ),
1200
-		'TH-32' => __( 'Surin', 'invoicing' ),
1201
-		'TH-63' => __( 'Tak', 'invoicing' ),
1202
-		'TH-92' => __( 'Trang', 'invoicing' ),
1203
-		'TH-23' => __( 'Trat', 'invoicing' ),
1204
-		'TH-34' => __( 'Ubon Ratchathani', 'invoicing' ),
1205
-		'TH-41' => __( 'Udon Thani', 'invoicing' ),
1206
-		'TH-61' => __( 'Uthai Thani', 'invoicing' ),
1207
-		'TH-53' => __( 'Uttaradit', 'invoicing' ),
1208
-		'TH-95' => __( 'Yala', 'invoicing' ),
1209
-		'TH-35' => __( 'Yasothon', 'invoicing' ),
1210
-	),
1211
-	'TR' => array( // Turkey States.
1212
-		'TR01' => __( 'Adana', 'invoicing' ),
1213
-		'TR02' => __( 'Adıyaman', 'invoicing' ),
1214
-		'TR03' => __( 'Afyon', 'invoicing' ),
1215
-		'TR04' => __( 'Ağrı', 'invoicing' ),
1216
-		'TR05' => __( 'Amasya', 'invoicing' ),
1217
-		'TR06' => __( 'Ankara', 'invoicing' ),
1218
-		'TR07' => __( 'Antalya', 'invoicing' ),
1219
-		'TR08' => __( 'Artvin', 'invoicing' ),
1220
-		'TR09' => __( 'Aydın', 'invoicing' ),
1221
-		'TR10' => __( 'Balıkesir', 'invoicing' ),
1222
-		'TR11' => __( 'Bilecik', 'invoicing' ),
1223
-		'TR12' => __( 'Bingöl', 'invoicing' ),
1224
-		'TR13' => __( 'Bitlis', 'invoicing' ),
1225
-		'TR14' => __( 'Bolu', 'invoicing' ),
1226
-		'TR15' => __( 'Burdur', 'invoicing' ),
1227
-		'TR16' => __( 'Bursa', 'invoicing' ),
1228
-		'TR17' => __( 'Çanakkale', 'invoicing' ),
1229
-		'TR18' => __( 'Çankırı', 'invoicing' ),
1230
-		'TR19' => __( 'Çorum', 'invoicing' ),
1231
-		'TR20' => __( 'Denizli', 'invoicing' ),
1232
-		'TR21' => __( 'Diyarbakır', 'invoicing' ),
1233
-		'TR22' => __( 'Edirne', 'invoicing' ),
1234
-		'TR23' => __( 'Elazığ', 'invoicing' ),
1235
-		'TR24' => __( 'Erzincan', 'invoicing' ),
1236
-		'TR25' => __( 'Erzurum', 'invoicing' ),
1237
-		'TR26' => __( 'Eskişehir', 'invoicing' ),
1238
-		'TR27' => __( 'Gaziantep', 'invoicing' ),
1239
-		'TR28' => __( 'Giresun', 'invoicing' ),
1240
-		'TR29' => __( 'Gümüşhane', 'invoicing' ),
1241
-		'TR30' => __( 'Hakkari', 'invoicing' ),
1242
-		'TR31' => __( 'Hatay', 'invoicing' ),
1243
-		'TR32' => __( 'Isparta', 'invoicing' ),
1244
-		'TR33' => __( 'İçel', 'invoicing' ),
1245
-		'TR34' => __( 'İstanbul', 'invoicing' ),
1246
-		'TR35' => __( 'İzmir', 'invoicing' ),
1247
-		'TR36' => __( 'Kars', 'invoicing' ),
1248
-		'TR37' => __( 'Kastamonu', 'invoicing' ),
1249
-		'TR38' => __( 'Kayseri', 'invoicing' ),
1250
-		'TR39' => __( 'Kırklareli', 'invoicing' ),
1251
-		'TR40' => __( 'Kırşehir', 'invoicing' ),
1252
-		'TR41' => __( 'Kocaeli', 'invoicing' ),
1253
-		'TR42' => __( 'Konya', 'invoicing' ),
1254
-		'TR43' => __( 'Kütahya', 'invoicing' ),
1255
-		'TR44' => __( 'Malatya', 'invoicing' ),
1256
-		'TR45' => __( 'Manisa', 'invoicing' ),
1257
-		'TR46' => __( 'Kahramanmaraş', 'invoicing' ),
1258
-		'TR47' => __( 'Mardin', 'invoicing' ),
1259
-		'TR48' => __( 'Muğla', 'invoicing' ),
1260
-		'TR49' => __( 'Muş', 'invoicing' ),
1261
-		'TR50' => __( 'Nevşehir', 'invoicing' ),
1262
-		'TR51' => __( 'Niğde', 'invoicing' ),
1263
-		'TR52' => __( 'Ordu', 'invoicing' ),
1264
-		'TR53' => __( 'Rize', 'invoicing' ),
1265
-		'TR54' => __( 'Sakarya', 'invoicing' ),
1266
-		'TR55' => __( 'Samsun', 'invoicing' ),
1267
-		'TR56' => __( 'Siirt', 'invoicing' ),
1268
-		'TR57' => __( 'Sinop', 'invoicing' ),
1269
-		'TR58' => __( 'Sivas', 'invoicing' ),
1270
-		'TR59' => __( 'Tekirdağ', 'invoicing' ),
1271
-		'TR60' => __( 'Tokat', 'invoicing' ),
1272
-		'TR61' => __( 'Trabzon', 'invoicing' ),
1273
-		'TR62' => __( 'Tunceli', 'invoicing' ),
1274
-		'TR63' => __( 'Şanlıurfa', 'invoicing' ),
1275
-		'TR64' => __( 'Uşak', 'invoicing' ),
1276
-		'TR65' => __( 'Van', 'invoicing' ),
1277
-		'TR66' => __( 'Yozgat', 'invoicing' ),
1278
-		'TR67' => __( 'Zonguldak', 'invoicing' ),
1279
-		'TR68' => __( 'Aksaray', 'invoicing' ),
1280
-		'TR69' => __( 'Bayburt', 'invoicing' ),
1281
-		'TR70' => __( 'Karaman', 'invoicing' ),
1282
-		'TR71' => __( 'Kırıkkale', 'invoicing' ),
1283
-		'TR72' => __( 'Batman', 'invoicing' ),
1284
-		'TR73' => __( 'Şırnak', 'invoicing' ),
1285
-		'TR74' => __( 'Bartın', 'invoicing' ),
1286
-		'TR75' => __( 'Ardahan', 'invoicing' ),
1287
-		'TR76' => __( 'Iğdır', 'invoicing' ),
1288
-		'TR77' => __( 'Yalova', 'invoicing' ),
1289
-		'TR78' => __( 'Karabük', 'invoicing' ),
1290
-		'TR79' => __( 'Kilis', 'invoicing' ),
1291
-		'TR80' => __( 'Osmaniye', 'invoicing' ),
1292
-		'TR81' => __( 'Düzce', 'invoicing' ),
1293
-	),
1294
-	'TZ' => array( // Tanzania States.
1295
-		'TZ01' => __( 'Arusha', 'invoicing' ),
1296
-		'TZ02' => __( 'Dar es Salaam', 'invoicing' ),
1297
-		'TZ03' => __( 'Dodoma', 'invoicing' ),
1298
-		'TZ04' => __( 'Iringa', 'invoicing' ),
1299
-		'TZ05' => __( 'Kagera', 'invoicing' ),
1300
-		'TZ06' => __( 'Pemba North', 'invoicing' ),
1301
-		'TZ07' => __( 'Zanzibar North', 'invoicing' ),
1302
-		'TZ08' => __( 'Kigoma', 'invoicing' ),
1303
-		'TZ09' => __( 'Kilimanjaro', 'invoicing' ),
1304
-		'TZ10' => __( 'Pemba South', 'invoicing' ),
1305
-		'TZ11' => __( 'Zanzibar South', 'invoicing' ),
1306
-		'TZ12' => __( 'Lindi', 'invoicing' ),
1307
-		'TZ13' => __( 'Mara', 'invoicing' ),
1308
-		'TZ14' => __( 'Mbeya', 'invoicing' ),
1309
-		'TZ15' => __( 'Zanzibar West', 'invoicing' ),
1310
-		'TZ16' => __( 'Morogoro', 'invoicing' ),
1311
-		'TZ17' => __( 'Mtwara', 'invoicing' ),
1312
-		'TZ18' => __( 'Mwanza', 'invoicing' ),
1313
-		'TZ19' => __( 'Coast', 'invoicing' ),
1314
-		'TZ20' => __( 'Rukwa', 'invoicing' ),
1315
-		'TZ21' => __( 'Ruvuma', 'invoicing' ),
1316
-		'TZ22' => __( 'Shinyanga', 'invoicing' ),
1317
-		'TZ23' => __( 'Singida', 'invoicing' ),
1318
-		'TZ24' => __( 'Tabora', 'invoicing' ),
1319
-		'TZ25' => __( 'Tanga', 'invoicing' ),
1320
-		'TZ26' => __( 'Manyara', 'invoicing' ),
1321
-		'TZ27' => __( 'Geita', 'invoicing' ),
1322
-		'TZ28' => __( 'Katavi', 'invoicing' ),
1323
-		'TZ29' => __( 'Njombe', 'invoicing' ),
1324
-		'TZ30' => __( 'Simiyu', 'invoicing' ),
1325
-	),
1326
-	'LK' => array(),
1327
-	'SE' => array(),
1328
-	'UG' => array( // Uganda districts. Ref: https://en.wikipedia.org/wiki/ISO_3166-2:UG.
1329
-		'UG314' => __( 'Abim', 'invoicing' ),
1330
-		'UG301' => __( 'Adjumani', 'invoicing' ),
1331
-		'UG322' => __( 'Agago', 'invoicing' ),
1332
-		'UG323' => __( 'Alebtong', 'invoicing' ),
1333
-		'UG315' => __( 'Amolatar', 'invoicing' ),
1334
-		'UG324' => __( 'Amudat', 'invoicing' ),
1335
-		'UG216' => __( 'Amuria', 'invoicing' ),
1336
-		'UG316' => __( 'Amuru', 'invoicing' ),
1337
-		'UG302' => __( 'Apac', 'invoicing' ),
1338
-		'UG303' => __( 'Arua', 'invoicing' ),
1339
-		'UG217' => __( 'Budaka', 'invoicing' ),
1340
-		'UG218' => __( 'Bududa', 'invoicing' ),
1341
-		'UG201' => __( 'Bugiri', 'invoicing' ),
1342
-		'UG235' => __( 'Bugweri', 'invoicing' ),
1343
-		'UG420' => __( 'Buhweju', 'invoicing' ),
1344
-		'UG117' => __( 'Buikwe', 'invoicing' ),
1345
-		'UG219' => __( 'Bukedea', 'invoicing' ),
1346
-		'UG118' => __( 'Bukomansimbi', 'invoicing' ),
1347
-		'UG220' => __( 'Bukwa', 'invoicing' ),
1348
-		'UG225' => __( 'Bulambuli', 'invoicing' ),
1349
-		'UG416' => __( 'Buliisa', 'invoicing' ),
1350
-		'UG401' => __( 'Bundibugyo', 'invoicing' ),
1351
-		'UG430' => __( 'Bunyangabu', 'invoicing' ),
1352
-		'UG402' => __( 'Bushenyi', 'invoicing' ),
1353
-		'UG202' => __( 'Busia', 'invoicing' ),
1354
-		'UG221' => __( 'Butaleja', 'invoicing' ),
1355
-		'UG119' => __( 'Butambala', 'invoicing' ),
1356
-		'UG233' => __( 'Butebo', 'invoicing' ),
1357
-		'UG120' => __( 'Buvuma', 'invoicing' ),
1358
-		'UG226' => __( 'Buyende', 'invoicing' ),
1359
-		'UG317' => __( 'Dokolo', 'invoicing' ),
1360
-		'UG121' => __( 'Gomba', 'invoicing' ),
1361
-		'UG304' => __( 'Gulu', 'invoicing' ),
1362
-		'UG403' => __( 'Hoima', 'invoicing' ),
1363
-		'UG417' => __( 'Ibanda', 'invoicing' ),
1364
-		'UG203' => __( 'Iganga', 'invoicing' ),
1365
-		'UG418' => __( 'Isingiro', 'invoicing' ),
1366
-		'UG204' => __( 'Jinja', 'invoicing' ),
1367
-		'UG318' => __( 'Kaabong', 'invoicing' ),
1368
-		'UG404' => __( 'Kabale', 'invoicing' ),
1369
-		'UG405' => __( 'Kabarole', 'invoicing' ),
1370
-		'UG213' => __( 'Kaberamaido', 'invoicing' ),
1371
-		'UG427' => __( 'Kagadi', 'invoicing' ),
1372
-		'UG428' => __( 'Kakumiro', 'invoicing' ),
1373
-		'UG101' => __( 'Kalangala', 'invoicing' ),
1374
-		'UG222' => __( 'Kaliro', 'invoicing' ),
1375
-		'UG122' => __( 'Kalungu', 'invoicing' ),
1376
-		'UG102' => __( 'Kampala', 'invoicing' ),
1377
-		'UG205' => __( 'Kamuli', 'invoicing' ),
1378
-		'UG413' => __( 'Kamwenge', 'invoicing' ),
1379
-		'UG414' => __( 'Kanungu', 'invoicing' ),
1380
-		'UG206' => __( 'Kapchorwa', 'invoicing' ),
1381
-		'UG236' => __( 'Kapelebyong', 'invoicing' ),
1382
-		'UG126' => __( 'Kasanda', 'invoicing' ),
1383
-		'UG406' => __( 'Kasese', 'invoicing' ),
1384
-		'UG207' => __( 'Katakwi', 'invoicing' ),
1385
-		'UG112' => __( 'Kayunga', 'invoicing' ),
1386
-		'UG407' => __( 'Kibaale', 'invoicing' ),
1387
-		'UG103' => __( 'Kiboga', 'invoicing' ),
1388
-		'UG227' => __( 'Kibuku', 'invoicing' ),
1389
-		'UG432' => __( 'Kikuube', 'invoicing' ),
1390
-		'UG419' => __( 'Kiruhura', 'invoicing' ),
1391
-		'UG421' => __( 'Kiryandongo', 'invoicing' ),
1392
-		'UG408' => __( 'Kisoro', 'invoicing' ),
1393
-		'UG305' => __( 'Kitgum', 'invoicing' ),
1394
-		'UG319' => __( 'Koboko', 'invoicing' ),
1395
-		'UG325' => __( 'Kole', 'invoicing' ),
1396
-		'UG306' => __( 'Kotido', 'invoicing' ),
1397
-		'UG208' => __( 'Kumi', 'invoicing' ),
1398
-		'UG333' => __( 'Kwania', 'invoicing' ),
1399
-		'UG228' => __( 'Kween', 'invoicing' ),
1400
-		'UG123' => __( 'Kyankwanzi', 'invoicing' ),
1401
-		'UG422' => __( 'Kyegegwa', 'invoicing' ),
1402
-		'UG415' => __( 'Kyenjojo', 'invoicing' ),
1403
-		'UG125' => __( 'Kyotera', 'invoicing' ),
1404
-		'UG326' => __( 'Lamwo', 'invoicing' ),
1405
-		'UG307' => __( 'Lira', 'invoicing' ),
1406
-		'UG229' => __( 'Luuka', 'invoicing' ),
1407
-		'UG104' => __( 'Luwero', 'invoicing' ),
1408
-		'UG124' => __( 'Lwengo', 'invoicing' ),
1409
-		'UG114' => __( 'Lyantonde', 'invoicing' ),
1410
-		'UG223' => __( 'Manafwa', 'invoicing' ),
1411
-		'UG320' => __( 'Maracha', 'invoicing' ),
1412
-		'UG105' => __( 'Masaka', 'invoicing' ),
1413
-		'UG409' => __( 'Masindi', 'invoicing' ),
1414
-		'UG214' => __( 'Mayuge', 'invoicing' ),
1415
-		'UG209' => __( 'Mbale', 'invoicing' ),
1416
-		'UG410' => __( 'Mbarara', 'invoicing' ),
1417
-		'UG423' => __( 'Mitooma', 'invoicing' ),
1418
-		'UG115' => __( 'Mityana', 'invoicing' ),
1419
-		'UG308' => __( 'Moroto', 'invoicing' ),
1420
-		'UG309' => __( 'Moyo', 'invoicing' ),
1421
-		'UG106' => __( 'Mpigi', 'invoicing' ),
1422
-		'UG107' => __( 'Mubende', 'invoicing' ),
1423
-		'UG108' => __( 'Mukono', 'invoicing' ),
1424
-		'UG334' => __( 'Nabilatuk', 'invoicing' ),
1425
-		'UG311' => __( 'Nakapiripirit', 'invoicing' ),
1426
-		'UG116' => __( 'Nakaseke', 'invoicing' ),
1427
-		'UG109' => __( 'Nakasongola', 'invoicing' ),
1428
-		'UG230' => __( 'Namayingo', 'invoicing' ),
1429
-		'UG234' => __( 'Namisindwa', 'invoicing' ),
1430
-		'UG224' => __( 'Namutumba', 'invoicing' ),
1431
-		'UG327' => __( 'Napak', 'invoicing' ),
1432
-		'UG310' => __( 'Nebbi', 'invoicing' ),
1433
-		'UG231' => __( 'Ngora', 'invoicing' ),
1434
-		'UG424' => __( 'Ntoroko', 'invoicing' ),
1435
-		'UG411' => __( 'Ntungamo', 'invoicing' ),
1436
-		'UG328' => __( 'Nwoya', 'invoicing' ),
1437
-		'UG331' => __( 'Omoro', 'invoicing' ),
1438
-		'UG329' => __( 'Otuke', 'invoicing' ),
1439
-		'UG321' => __( 'Oyam', 'invoicing' ),
1440
-		'UG312' => __( 'Pader', 'invoicing' ),
1441
-		'UG332' => __( 'Pakwach', 'invoicing' ),
1442
-		'UG210' => __( 'Pallisa', 'invoicing' ),
1443
-		'UG110' => __( 'Rakai', 'invoicing' ),
1444
-		'UG429' => __( 'Rubanda', 'invoicing' ),
1445
-		'UG425' => __( 'Rubirizi', 'invoicing' ),
1446
-		'UG431' => __( 'Rukiga', 'invoicing' ),
1447
-		'UG412' => __( 'Rukungiri', 'invoicing' ),
1448
-		'UG111' => __( 'Sembabule', 'invoicing' ),
1449
-		'UG232' => __( 'Serere', 'invoicing' ),
1450
-		'UG426' => __( 'Sheema', 'invoicing' ),
1451
-		'UG215' => __( 'Sironko', 'invoicing' ),
1452
-		'UG211' => __( 'Soroti', 'invoicing' ),
1453
-		'UG212' => __( 'Tororo', 'invoicing' ),
1454
-		'UG113' => __( 'Wakiso', 'invoicing' ),
1455
-		'UG313' => __( 'Yumbe', 'invoicing' ),
1456
-		'UG330' => __( 'Zombo', 'invoicing' ),
1457
-	),
1458
-	'UM' => array(
1459
-		'81' => __( 'Baker Island', 'invoicing' ),
1460
-		'84' => __( 'Howland Island', 'invoicing' ),
1461
-		'86' => __( 'Jarvis Island', 'invoicing' ),
1462
-		'67' => __( 'Johnston Atoll', 'invoicing' ),
1463
-		'89' => __( 'Kingman Reef', 'invoicing' ),
1464
-		'71' => __( 'Midway Atoll', 'invoicing' ),
1465
-		'76' => __( 'Navassa Island', 'invoicing' ),
1466
-		'95' => __( 'Palmyra Atoll', 'invoicing' ),
1467
-		'79' => __( 'Wake Island', 'invoicing' ),
1468
-	),
1469
-	'US' => array( // United States.
1470
-		'AL' => __( 'Alabama', 'invoicing' ),
1471
-		'AK' => __( 'Alaska', 'invoicing' ),
1472
-		'AZ' => __( 'Arizona', 'invoicing' ),
1473
-		'AR' => __( 'Arkansas', 'invoicing' ),
1474
-		'CA' => __( 'California', 'invoicing' ),
1475
-		'CO' => __( 'Colorado', 'invoicing' ),
1476
-		'CT' => __( 'Connecticut', 'invoicing' ),
1477
-		'DE' => __( 'Delaware', 'invoicing' ),
1478
-		'DC' => __( 'District Of Columbia', 'invoicing' ),
1479
-		'FL' => __( 'Florida', 'invoicing' ),
1480
-		'GA' => _x( 'Georgia', 'US state of Georgia', 'invoicing' ),
1481
-		'HI' => __( 'Hawaii', 'invoicing' ),
1482
-		'ID' => __( 'Idaho', 'invoicing' ),
1483
-		'IL' => __( 'Illinois', 'invoicing' ),
1484
-		'IN' => __( 'Indiana', 'invoicing' ),
1485
-		'IA' => __( 'Iowa', 'invoicing' ),
1486
-		'KS' => __( 'Kansas', 'invoicing' ),
1487
-		'KY' => __( 'Kentucky', 'invoicing' ),
1488
-		'LA' => __( 'Louisiana', 'invoicing' ),
1489
-		'ME' => __( 'Maine', 'invoicing' ),
1490
-		'MD' => __( 'Maryland', 'invoicing' ),
1491
-		'MA' => __( 'Massachusetts', 'invoicing' ),
1492
-		'MI' => __( 'Michigan', 'invoicing' ),
1493
-		'MN' => __( 'Minnesota', 'invoicing' ),
1494
-		'MS' => __( 'Mississippi', 'invoicing' ),
1495
-		'MO' => __( 'Missouri', 'invoicing' ),
1496
-		'MT' => __( 'Montana', 'invoicing' ),
1497
-		'NE' => __( 'Nebraska', 'invoicing' ),
1498
-		'NV' => __( 'Nevada', 'invoicing' ),
1499
-		'NH' => __( 'New Hampshire', 'invoicing' ),
1500
-		'NJ' => __( 'New Jersey', 'invoicing' ),
1501
-		'NM' => __( 'New Mexico', 'invoicing' ),
1502
-		'NY' => __( 'New York', 'invoicing' ),
1503
-		'NC' => __( 'North Carolina', 'invoicing' ),
1504
-		'ND' => __( 'North Dakota', 'invoicing' ),
1505
-		'OH' => __( 'Ohio', 'invoicing' ),
1506
-		'OK' => __( 'Oklahoma', 'invoicing' ),
1507
-		'OR' => __( 'Oregon', 'invoicing' ),
1508
-		'PA' => __( 'Pennsylvania', 'invoicing' ),
1509
-		'RI' => __( 'Rhode Island', 'invoicing' ),
1510
-		'SC' => __( 'South Carolina', 'invoicing' ),
1511
-		'SD' => __( 'South Dakota', 'invoicing' ),
1512
-		'TN' => __( 'Tennessee', 'invoicing' ),
1513
-		'TX' => __( 'Texas', 'invoicing' ),
1514
-		'UT' => __( 'Utah', 'invoicing' ),
1515
-		'VT' => __( 'Vermont', 'invoicing' ),
1516
-		'VA' => __( 'Virginia', 'invoicing' ),
1517
-		'WA' => __( 'Washington', 'invoicing' ),
1518
-		'WV' => __( 'West Virginia', 'invoicing' ),
1519
-		'WI' => __( 'Wisconsin', 'invoicing' ),
1520
-		'WY' => __( 'Wyoming', 'invoicing' ),
1521
-		'AA' => __( 'Armed Forces (AA)', 'invoicing' ),
1522
-		'AE' => __( 'Armed Forces (AE)', 'invoicing' ),
1523
-		'AP' => __( 'Armed Forces (AP)', 'invoicing' ),
1524
-	),
1525
-	'VN' => array(),
1526
-	'YT' => array(),
1527
-	'ZA' => array( // South African states.
1528
-		'EC'  => __( 'Eastern Cape', 'invoicing' ),
1529
-		'FS'  => __( 'Free State', 'invoicing' ),
1530
-		'GP'  => __( 'Gauteng', 'invoicing' ),
1531
-		'KZN' => __( 'KwaZulu-Natal', 'invoicing' ),
1532
-		'LP'  => __( 'Limpopo', 'invoicing' ),
1533
-		'MP'  => __( 'Mpumalanga', 'invoicing' ),
1534
-		'NC'  => __( 'Northern Cape', 'invoicing' ),
1535
-		'NW'  => __( 'North West', 'invoicing' ),
1536
-		'WC'  => __( 'Western Cape', 'invoicing' ),
1537
-	),
1538
-	'ZM' => array( // Zambia's Provinces. Ref: https://en.wikipedia.org/wiki/ISO_3166-2:ZM.
1539
-		'ZM-01' => __( 'Western', 'invoicing' ),
1540
-		'ZM-02' => __( 'Central', 'invoicing' ),
1541
-		'ZM-03' => __( 'Eastern', 'invoicing' ),
1542
-		'ZM-04' => __( 'Luapula', 'invoicing' ),
1543
-		'ZM-05' => __( 'Northern', 'invoicing' ),
1544
-		'ZM-06' => __( 'North-Western', 'invoicing' ),
1545
-		'ZM-07' => __( 'Southern', 'invoicing' ),
1546
-		'ZM-08' => __( 'Copperbelt', 'invoicing' ),
1547
-		'ZM-09' => __( 'Lusaka', 'invoicing' ),
1548
-		'ZM-10' => __( 'Muchinga', 'invoicing' ),
1549
-	),
964
+    /**
965
+     * Philippine Provinces.
966
+     */
967
+    'PH' => array(
968
+        'ABR' => __( 'Abra', 'invoicing' ),
969
+        'AGN' => __( 'Agusan del Norte', 'invoicing' ),
970
+        'AGS' => __( 'Agusan del Sur', 'invoicing' ),
971
+        'AKL' => __( 'Aklan', 'invoicing' ),
972
+        'ALB' => __( 'Albay', 'invoicing' ),
973
+        'ANT' => __( 'Antique', 'invoicing' ),
974
+        'APA' => __( 'Apayao', 'invoicing' ),
975
+        'AUR' => __( 'Aurora', 'invoicing' ),
976
+        'BAS' => __( 'Basilan', 'invoicing' ),
977
+        'BAN' => __( 'Bataan', 'invoicing' ),
978
+        'BTN' => __( 'Batanes', 'invoicing' ),
979
+        'BTG' => __( 'Batangas', 'invoicing' ),
980
+        'BEN' => __( 'Benguet', 'invoicing' ),
981
+        'BIL' => __( 'Biliran', 'invoicing' ),
982
+        'BOH' => __( 'Bohol', 'invoicing' ),
983
+        'BUK' => __( 'Bukidnon', 'invoicing' ),
984
+        'BUL' => __( 'Bulacan', 'invoicing' ),
985
+        'CAG' => __( 'Cagayan', 'invoicing' ),
986
+        'CAN' => __( 'Camarines Norte', 'invoicing' ),
987
+        'CAS' => __( 'Camarines Sur', 'invoicing' ),
988
+        'CAM' => __( 'Camiguin', 'invoicing' ),
989
+        'CAP' => __( 'Capiz', 'invoicing' ),
990
+        'CAT' => __( 'Catanduanes', 'invoicing' ),
991
+        'CAV' => __( 'Cavite', 'invoicing' ),
992
+        'CEB' => __( 'Cebu', 'invoicing' ),
993
+        'COM' => __( 'Compostela Valley', 'invoicing' ),
994
+        'NCO' => __( 'Cotabato', 'invoicing' ),
995
+        'DAV' => __( 'Davao del Norte', 'invoicing' ),
996
+        'DAS' => __( 'Davao del Sur', 'invoicing' ),
997
+        'DAC' => __( 'Davao Occidental', 'invoicing' ),
998
+        'DAO' => __( 'Davao Oriental', 'invoicing' ),
999
+        'DIN' => __( 'Dinagat Islands', 'invoicing' ),
1000
+        'EAS' => __( 'Eastern Samar', 'invoicing' ),
1001
+        'GUI' => __( 'Guimaras', 'invoicing' ),
1002
+        'IFU' => __( 'Ifugao', 'invoicing' ),
1003
+        'ILN' => __( 'Ilocos Norte', 'invoicing' ),
1004
+        'ILS' => __( 'Ilocos Sur', 'invoicing' ),
1005
+        'ILI' => __( 'Iloilo', 'invoicing' ),
1006
+        'ISA' => __( 'Isabela', 'invoicing' ),
1007
+        'KAL' => __( 'Kalinga', 'invoicing' ),
1008
+        'LUN' => __( 'La Union', 'invoicing' ),
1009
+        'LAG' => __( 'Laguna', 'invoicing' ),
1010
+        'LAN' => __( 'Lanao del Norte', 'invoicing' ),
1011
+        'LAS' => __( 'Lanao del Sur', 'invoicing' ),
1012
+        'LEY' => __( 'Leyte', 'invoicing' ),
1013
+        'MAG' => __( 'Maguindanao', 'invoicing' ),
1014
+        'MAD' => __( 'Marinduque', 'invoicing' ),
1015
+        'MAS' => __( 'Masbate', 'invoicing' ),
1016
+        'MSC' => __( 'Misamis Occidental', 'invoicing' ),
1017
+        'MSR' => __( 'Misamis Oriental', 'invoicing' ),
1018
+        'MOU' => __( 'Mountain Province', 'invoicing' ),
1019
+        'NEC' => __( 'Negros Occidental', 'invoicing' ),
1020
+        'NER' => __( 'Negros Oriental', 'invoicing' ),
1021
+        'NSA' => __( 'Northern Samar', 'invoicing' ),
1022
+        'NUE' => __( 'Nueva Ecija', 'invoicing' ),
1023
+        'NUV' => __( 'Nueva Vizcaya', 'invoicing' ),
1024
+        'MDC' => __( 'Occidental Mindoro', 'invoicing' ),
1025
+        'MDR' => __( 'Oriental Mindoro', 'invoicing' ),
1026
+        'PLW' => __( 'Palawan', 'invoicing' ),
1027
+        'PAM' => __( 'Pampanga', 'invoicing' ),
1028
+        'PAN' => __( 'Pangasinan', 'invoicing' ),
1029
+        'QUE' => __( 'Quezon', 'invoicing' ),
1030
+        'QUI' => __( 'Quirino', 'invoicing' ),
1031
+        'RIZ' => __( 'Rizal', 'invoicing' ),
1032
+        'ROM' => __( 'Romblon', 'invoicing' ),
1033
+        'WSA' => __( 'Samar', 'invoicing' ),
1034
+        'SAR' => __( 'Sarangani', 'invoicing' ),
1035
+        'SIQ' => __( 'Siquijor', 'invoicing' ),
1036
+        'SOR' => __( 'Sorsogon', 'invoicing' ),
1037
+        'SCO' => __( 'South Cotabato', 'invoicing' ),
1038
+        'SLE' => __( 'Southern Leyte', 'invoicing' ),
1039
+        'SUK' => __( 'Sultan Kudarat', 'invoicing' ),
1040
+        'SLU' => __( 'Sulu', 'invoicing' ),
1041
+        'SUN' => __( 'Surigao del Norte', 'invoicing' ),
1042
+        'SUR' => __( 'Surigao del Sur', 'invoicing' ),
1043
+        'TAR' => __( 'Tarlac', 'invoicing' ),
1044
+        'TAW' => __( 'Tawi-Tawi', 'invoicing' ),
1045
+        'ZMB' => __( 'Zambales', 'invoicing' ),
1046
+        'ZAN' => __( 'Zamboanga del Norte', 'invoicing' ),
1047
+        'ZAS' => __( 'Zamboanga del Sur', 'invoicing' ),
1048
+        'ZSI' => __( 'Zamboanga Sibugay', 'invoicing' ),
1049
+        '00'  => __( 'Metro Manila', 'invoicing' ),
1050
+    ),
1051
+    'PK' => array( // Pakistan's states.
1052
+        'JK' => __( 'Azad Kashmir', 'invoicing' ),
1053
+        'BA' => __( 'Balochistan', 'invoicing' ),
1054
+        'TA' => __( 'FATA', 'invoicing' ),
1055
+        'GB' => __( 'Gilgit Baltistan', 'invoicing' ),
1056
+        'IS' => __( 'Islamabad Capital Territory', 'invoicing' ),
1057
+        'KP' => __( 'Khyber Pakhtunkhwa', 'invoicing' ),
1058
+        'PB' => __( 'Punjab', 'invoicing' ),
1059
+        'SD' => __( 'Sindh', 'invoicing' ),
1060
+    ),
1061
+    'PL' => array(),
1062
+    'PT' => array(),
1063
+    'PY' => array( // Paraguay states.
1064
+        'PY-ASU' => __( 'Asunción', 'invoicing' ),
1065
+        'PY-1'   => __( 'Concepción', 'invoicing' ),
1066
+        'PY-2'   => __( 'San Pedro', 'invoicing' ),
1067
+        'PY-3'   => __( 'Cordillera', 'invoicing' ),
1068
+        'PY-4'   => __( 'Guairá', 'invoicing' ),
1069
+        'PY-5'   => __( 'Caaguazú', 'invoicing' ),
1070
+        'PY-6'   => __( 'Caazapá', 'invoicing' ),
1071
+        'PY-7'   => __( 'Itapúa', 'invoicing' ),
1072
+        'PY-8'   => __( 'Misiones', 'invoicing' ),
1073
+        'PY-9'   => __( 'Paraguarí', 'invoicing' ),
1074
+        'PY-10'  => __( 'Alto Paraná', 'invoicing' ),
1075
+        'PY-11'  => __( 'Central', 'invoicing' ),
1076
+        'PY-12'  => __( 'Ñeembucú', 'invoicing' ),
1077
+        'PY-13'  => __( 'Amambay', 'invoicing' ),
1078
+        'PY-14'  => __( 'Canindeyú', 'invoicing' ),
1079
+        'PY-15'  => __( 'Presidente Hayes', 'invoicing' ),
1080
+        'PY-16'  => __( 'Alto Paraguay', 'invoicing' ),
1081
+        'PY-17'  => __( 'Boquerón', 'invoicing' ),
1082
+    ),
1083
+    'RE' => array(),
1084
+    'RO' => array( // Romania states.
1085
+        'AB' => __( 'Alba', 'invoicing' ),
1086
+        'AR' => __( 'Arad', 'invoicing' ),
1087
+        'AG' => __( 'Argeș', 'invoicing' ),
1088
+        'BC' => __( 'Bacău', 'invoicing' ),
1089
+        'BH' => __( 'Bihor', 'invoicing' ),
1090
+        'BN' => __( 'Bistrița-Năsăud', 'invoicing' ),
1091
+        'BT' => __( 'Botoșani', 'invoicing' ),
1092
+        'BR' => __( 'Brăila', 'invoicing' ),
1093
+        'BV' => __( 'Brașov', 'invoicing' ),
1094
+        'B'  => __( 'București', 'invoicing' ),
1095
+        'BZ' => __( 'Buzău', 'invoicing' ),
1096
+        'CL' => __( 'Călărași', 'invoicing' ),
1097
+        'CS' => __( 'Caraș-Severin', 'invoicing' ),
1098
+        'CJ' => __( 'Cluj', 'invoicing' ),
1099
+        'CT' => __( 'Constanța', 'invoicing' ),
1100
+        'CV' => __( 'Covasna', 'invoicing' ),
1101
+        'DB' => __( 'Dâmbovița', 'invoicing' ),
1102
+        'DJ' => __( 'Dolj', 'invoicing' ),
1103
+        'GL' => __( 'Galați', 'invoicing' ),
1104
+        'GR' => __( 'Giurgiu', 'invoicing' ),
1105
+        'GJ' => __( 'Gorj', 'invoicing' ),
1106
+        'HR' => __( 'Harghita', 'invoicing' ),
1107
+        'HD' => __( 'Hunedoara', 'invoicing' ),
1108
+        'IL' => __( 'Ialomița', 'invoicing' ),
1109
+        'IS' => __( 'Iași', 'invoicing' ),
1110
+        'IF' => __( 'Ilfov', 'invoicing' ),
1111
+        'MM' => __( 'Maramureș', 'invoicing' ),
1112
+        'MH' => __( 'Mehedinți', 'invoicing' ),
1113
+        'MS' => __( 'Mureș', 'invoicing' ),
1114
+        'NT' => __( 'Neamț', 'invoicing' ),
1115
+        'OT' => __( 'Olt', 'invoicing' ),
1116
+        'PH' => __( 'Prahova', 'invoicing' ),
1117
+        'SJ' => __( 'Sălaj', 'invoicing' ),
1118
+        'SM' => __( 'Satu Mare', 'invoicing' ),
1119
+        'SB' => __( 'Sibiu', 'invoicing' ),
1120
+        'SV' => __( 'Suceava', 'invoicing' ),
1121
+        'TR' => __( 'Teleorman', 'invoicing' ),
1122
+        'TM' => __( 'Timiș', 'invoicing' ),
1123
+        'TL' => __( 'Tulcea', 'invoicing' ),
1124
+        'VL' => __( 'Vâlcea', 'invoicing' ),
1125
+        'VS' => __( 'Vaslui', 'invoicing' ),
1126
+        'VN' => __( 'Vrancea', 'invoicing' ),
1127
+    ),
1128
+    'RS' => array(),
1129
+    'SG' => array(),
1130
+    'SK' => array(),
1131
+    'SI' => array(),
1132
+    'TH' => array( // Thailand states.
1133
+        'TH-37' => __( 'Amnat Charoen', 'invoicing' ),
1134
+        'TH-15' => __( 'Ang Thong', 'invoicing' ),
1135
+        'TH-14' => __( 'Ayutthaya', 'invoicing' ),
1136
+        'TH-10' => __( 'Bangkok', 'invoicing' ),
1137
+        'TH-38' => __( 'Bueng Kan', 'invoicing' ),
1138
+        'TH-31' => __( 'Buri Ram', 'invoicing' ),
1139
+        'TH-24' => __( 'Chachoengsao', 'invoicing' ),
1140
+        'TH-18' => __( 'Chai Nat', 'invoicing' ),
1141
+        'TH-36' => __( 'Chaiyaphum', 'invoicing' ),
1142
+        'TH-22' => __( 'Chanthaburi', 'invoicing' ),
1143
+        'TH-50' => __( 'Chiang Mai', 'invoicing' ),
1144
+        'TH-57' => __( 'Chiang Rai', 'invoicing' ),
1145
+        'TH-20' => __( 'Chonburi', 'invoicing' ),
1146
+        'TH-86' => __( 'Chumphon', 'invoicing' ),
1147
+        'TH-46' => __( 'Kalasin', 'invoicing' ),
1148
+        'TH-62' => __( 'Kamphaeng Phet', 'invoicing' ),
1149
+        'TH-71' => __( 'Kanchanaburi', 'invoicing' ),
1150
+        'TH-40' => __( 'Khon Kaen', 'invoicing' ),
1151
+        'TH-81' => __( 'Krabi', 'invoicing' ),
1152
+        'TH-52' => __( 'Lampang', 'invoicing' ),
1153
+        'TH-51' => __( 'Lamphun', 'invoicing' ),
1154
+        'TH-42' => __( 'Loei', 'invoicing' ),
1155
+        'TH-16' => __( 'Lopburi', 'invoicing' ),
1156
+        'TH-58' => __( 'Mae Hong Son', 'invoicing' ),
1157
+        'TH-44' => __( 'Maha Sarakham', 'invoicing' ),
1158
+        'TH-49' => __( 'Mukdahan', 'invoicing' ),
1159
+        'TH-26' => __( 'Nakhon Nayok', 'invoicing' ),
1160
+        'TH-73' => __( 'Nakhon Pathom', 'invoicing' ),
1161
+        'TH-48' => __( 'Nakhon Phanom', 'invoicing' ),
1162
+        'TH-30' => __( 'Nakhon Ratchasima', 'invoicing' ),
1163
+        'TH-60' => __( 'Nakhon Sawan', 'invoicing' ),
1164
+        'TH-80' => __( 'Nakhon Si Thammarat', 'invoicing' ),
1165
+        'TH-55' => __( 'Nan', 'invoicing' ),
1166
+        'TH-96' => __( 'Narathiwat', 'invoicing' ),
1167
+        'TH-39' => __( 'Nong Bua Lam Phu', 'invoicing' ),
1168
+        'TH-43' => __( 'Nong Khai', 'invoicing' ),
1169
+        'TH-12' => __( 'Nonthaburi', 'invoicing' ),
1170
+        'TH-13' => __( 'Pathum Thani', 'invoicing' ),
1171
+        'TH-94' => __( 'Pattani', 'invoicing' ),
1172
+        'TH-82' => __( 'Phang Nga', 'invoicing' ),
1173
+        'TH-93' => __( 'Phatthalung', 'invoicing' ),
1174
+        'TH-56' => __( 'Phayao', 'invoicing' ),
1175
+        'TH-67' => __( 'Phetchabun', 'invoicing' ),
1176
+        'TH-76' => __( 'Phetchaburi', 'invoicing' ),
1177
+        'TH-66' => __( 'Phichit', 'invoicing' ),
1178
+        'TH-65' => __( 'Phitsanulok', 'invoicing' ),
1179
+        'TH-54' => __( 'Phrae', 'invoicing' ),
1180
+        'TH-83' => __( 'Phuket', 'invoicing' ),
1181
+        'TH-25' => __( 'Prachin Buri', 'invoicing' ),
1182
+        'TH-77' => __( 'Prachuap Khiri Khan', 'invoicing' ),
1183
+        'TH-85' => __( 'Ranong', 'invoicing' ),
1184
+        'TH-70' => __( 'Ratchaburi', 'invoicing' ),
1185
+        'TH-21' => __( 'Rayong', 'invoicing' ),
1186
+        'TH-45' => __( 'Roi Et', 'invoicing' ),
1187
+        'TH-27' => __( 'Sa Kaeo', 'invoicing' ),
1188
+        'TH-47' => __( 'Sakon Nakhon', 'invoicing' ),
1189
+        'TH-11' => __( 'Samut Prakan', 'invoicing' ),
1190
+        'TH-74' => __( 'Samut Sakhon', 'invoicing' ),
1191
+        'TH-75' => __( 'Samut Songkhram', 'invoicing' ),
1192
+        'TH-19' => __( 'Saraburi', 'invoicing' ),
1193
+        'TH-91' => __( 'Satun', 'invoicing' ),
1194
+        'TH-17' => __( 'Sing Buri', 'invoicing' ),
1195
+        'TH-33' => __( 'Sisaket', 'invoicing' ),
1196
+        'TH-90' => __( 'Songkhla', 'invoicing' ),
1197
+        'TH-64' => __( 'Sukhothai', 'invoicing' ),
1198
+        'TH-72' => __( 'Suphan Buri', 'invoicing' ),
1199
+        'TH-84' => __( 'Surat Thani', 'invoicing' ),
1200
+        'TH-32' => __( 'Surin', 'invoicing' ),
1201
+        'TH-63' => __( 'Tak', 'invoicing' ),
1202
+        'TH-92' => __( 'Trang', 'invoicing' ),
1203
+        'TH-23' => __( 'Trat', 'invoicing' ),
1204
+        'TH-34' => __( 'Ubon Ratchathani', 'invoicing' ),
1205
+        'TH-41' => __( 'Udon Thani', 'invoicing' ),
1206
+        'TH-61' => __( 'Uthai Thani', 'invoicing' ),
1207
+        'TH-53' => __( 'Uttaradit', 'invoicing' ),
1208
+        'TH-95' => __( 'Yala', 'invoicing' ),
1209
+        'TH-35' => __( 'Yasothon', 'invoicing' ),
1210
+    ),
1211
+    'TR' => array( // Turkey States.
1212
+        'TR01' => __( 'Adana', 'invoicing' ),
1213
+        'TR02' => __( 'Adıyaman', 'invoicing' ),
1214
+        'TR03' => __( 'Afyon', 'invoicing' ),
1215
+        'TR04' => __( 'Ağrı', 'invoicing' ),
1216
+        'TR05' => __( 'Amasya', 'invoicing' ),
1217
+        'TR06' => __( 'Ankara', 'invoicing' ),
1218
+        'TR07' => __( 'Antalya', 'invoicing' ),
1219
+        'TR08' => __( 'Artvin', 'invoicing' ),
1220
+        'TR09' => __( 'Aydın', 'invoicing' ),
1221
+        'TR10' => __( 'Balıkesir', 'invoicing' ),
1222
+        'TR11' => __( 'Bilecik', 'invoicing' ),
1223
+        'TR12' => __( 'Bingöl', 'invoicing' ),
1224
+        'TR13' => __( 'Bitlis', 'invoicing' ),
1225
+        'TR14' => __( 'Bolu', 'invoicing' ),
1226
+        'TR15' => __( 'Burdur', 'invoicing' ),
1227
+        'TR16' => __( 'Bursa', 'invoicing' ),
1228
+        'TR17' => __( 'Çanakkale', 'invoicing' ),
1229
+        'TR18' => __( 'Çankırı', 'invoicing' ),
1230
+        'TR19' => __( 'Çorum', 'invoicing' ),
1231
+        'TR20' => __( 'Denizli', 'invoicing' ),
1232
+        'TR21' => __( 'Diyarbakır', 'invoicing' ),
1233
+        'TR22' => __( 'Edirne', 'invoicing' ),
1234
+        'TR23' => __( 'Elazığ', 'invoicing' ),
1235
+        'TR24' => __( 'Erzincan', 'invoicing' ),
1236
+        'TR25' => __( 'Erzurum', 'invoicing' ),
1237
+        'TR26' => __( 'Eskişehir', 'invoicing' ),
1238
+        'TR27' => __( 'Gaziantep', 'invoicing' ),
1239
+        'TR28' => __( 'Giresun', 'invoicing' ),
1240
+        'TR29' => __( 'Gümüşhane', 'invoicing' ),
1241
+        'TR30' => __( 'Hakkari', 'invoicing' ),
1242
+        'TR31' => __( 'Hatay', 'invoicing' ),
1243
+        'TR32' => __( 'Isparta', 'invoicing' ),
1244
+        'TR33' => __( 'İçel', 'invoicing' ),
1245
+        'TR34' => __( 'İstanbul', 'invoicing' ),
1246
+        'TR35' => __( 'İzmir', 'invoicing' ),
1247
+        'TR36' => __( 'Kars', 'invoicing' ),
1248
+        'TR37' => __( 'Kastamonu', 'invoicing' ),
1249
+        'TR38' => __( 'Kayseri', 'invoicing' ),
1250
+        'TR39' => __( 'Kırklareli', 'invoicing' ),
1251
+        'TR40' => __( 'Kırşehir', 'invoicing' ),
1252
+        'TR41' => __( 'Kocaeli', 'invoicing' ),
1253
+        'TR42' => __( 'Konya', 'invoicing' ),
1254
+        'TR43' => __( 'Kütahya', 'invoicing' ),
1255
+        'TR44' => __( 'Malatya', 'invoicing' ),
1256
+        'TR45' => __( 'Manisa', 'invoicing' ),
1257
+        'TR46' => __( 'Kahramanmaraş', 'invoicing' ),
1258
+        'TR47' => __( 'Mardin', 'invoicing' ),
1259
+        'TR48' => __( 'Muğla', 'invoicing' ),
1260
+        'TR49' => __( 'Muş', 'invoicing' ),
1261
+        'TR50' => __( 'Nevşehir', 'invoicing' ),
1262
+        'TR51' => __( 'Niğde', 'invoicing' ),
1263
+        'TR52' => __( 'Ordu', 'invoicing' ),
1264
+        'TR53' => __( 'Rize', 'invoicing' ),
1265
+        'TR54' => __( 'Sakarya', 'invoicing' ),
1266
+        'TR55' => __( 'Samsun', 'invoicing' ),
1267
+        'TR56' => __( 'Siirt', 'invoicing' ),
1268
+        'TR57' => __( 'Sinop', 'invoicing' ),
1269
+        'TR58' => __( 'Sivas', 'invoicing' ),
1270
+        'TR59' => __( 'Tekirdağ', 'invoicing' ),
1271
+        'TR60' => __( 'Tokat', 'invoicing' ),
1272
+        'TR61' => __( 'Trabzon', 'invoicing' ),
1273
+        'TR62' => __( 'Tunceli', 'invoicing' ),
1274
+        'TR63' => __( 'Şanlıurfa', 'invoicing' ),
1275
+        'TR64' => __( 'Uşak', 'invoicing' ),
1276
+        'TR65' => __( 'Van', 'invoicing' ),
1277
+        'TR66' => __( 'Yozgat', 'invoicing' ),
1278
+        'TR67' => __( 'Zonguldak', 'invoicing' ),
1279
+        'TR68' => __( 'Aksaray', 'invoicing' ),
1280
+        'TR69' => __( 'Bayburt', 'invoicing' ),
1281
+        'TR70' => __( 'Karaman', 'invoicing' ),
1282
+        'TR71' => __( 'Kırıkkale', 'invoicing' ),
1283
+        'TR72' => __( 'Batman', 'invoicing' ),
1284
+        'TR73' => __( 'Şırnak', 'invoicing' ),
1285
+        'TR74' => __( 'Bartın', 'invoicing' ),
1286
+        'TR75' => __( 'Ardahan', 'invoicing' ),
1287
+        'TR76' => __( 'Iğdır', 'invoicing' ),
1288
+        'TR77' => __( 'Yalova', 'invoicing' ),
1289
+        'TR78' => __( 'Karabük', 'invoicing' ),
1290
+        'TR79' => __( 'Kilis', 'invoicing' ),
1291
+        'TR80' => __( 'Osmaniye', 'invoicing' ),
1292
+        'TR81' => __( 'Düzce', 'invoicing' ),
1293
+    ),
1294
+    'TZ' => array( // Tanzania States.
1295
+        'TZ01' => __( 'Arusha', 'invoicing' ),
1296
+        'TZ02' => __( 'Dar es Salaam', 'invoicing' ),
1297
+        'TZ03' => __( 'Dodoma', 'invoicing' ),
1298
+        'TZ04' => __( 'Iringa', 'invoicing' ),
1299
+        'TZ05' => __( 'Kagera', 'invoicing' ),
1300
+        'TZ06' => __( 'Pemba North', 'invoicing' ),
1301
+        'TZ07' => __( 'Zanzibar North', 'invoicing' ),
1302
+        'TZ08' => __( 'Kigoma', 'invoicing' ),
1303
+        'TZ09' => __( 'Kilimanjaro', 'invoicing' ),
1304
+        'TZ10' => __( 'Pemba South', 'invoicing' ),
1305
+        'TZ11' => __( 'Zanzibar South', 'invoicing' ),
1306
+        'TZ12' => __( 'Lindi', 'invoicing' ),
1307
+        'TZ13' => __( 'Mara', 'invoicing' ),
1308
+        'TZ14' => __( 'Mbeya', 'invoicing' ),
1309
+        'TZ15' => __( 'Zanzibar West', 'invoicing' ),
1310
+        'TZ16' => __( 'Morogoro', 'invoicing' ),
1311
+        'TZ17' => __( 'Mtwara', 'invoicing' ),
1312
+        'TZ18' => __( 'Mwanza', 'invoicing' ),
1313
+        'TZ19' => __( 'Coast', 'invoicing' ),
1314
+        'TZ20' => __( 'Rukwa', 'invoicing' ),
1315
+        'TZ21' => __( 'Ruvuma', 'invoicing' ),
1316
+        'TZ22' => __( 'Shinyanga', 'invoicing' ),
1317
+        'TZ23' => __( 'Singida', 'invoicing' ),
1318
+        'TZ24' => __( 'Tabora', 'invoicing' ),
1319
+        'TZ25' => __( 'Tanga', 'invoicing' ),
1320
+        'TZ26' => __( 'Manyara', 'invoicing' ),
1321
+        'TZ27' => __( 'Geita', 'invoicing' ),
1322
+        'TZ28' => __( 'Katavi', 'invoicing' ),
1323
+        'TZ29' => __( 'Njombe', 'invoicing' ),
1324
+        'TZ30' => __( 'Simiyu', 'invoicing' ),
1325
+    ),
1326
+    'LK' => array(),
1327
+    'SE' => array(),
1328
+    'UG' => array( // Uganda districts. Ref: https://en.wikipedia.org/wiki/ISO_3166-2:UG.
1329
+        'UG314' => __( 'Abim', 'invoicing' ),
1330
+        'UG301' => __( 'Adjumani', 'invoicing' ),
1331
+        'UG322' => __( 'Agago', 'invoicing' ),
1332
+        'UG323' => __( 'Alebtong', 'invoicing' ),
1333
+        'UG315' => __( 'Amolatar', 'invoicing' ),
1334
+        'UG324' => __( 'Amudat', 'invoicing' ),
1335
+        'UG216' => __( 'Amuria', 'invoicing' ),
1336
+        'UG316' => __( 'Amuru', 'invoicing' ),
1337
+        'UG302' => __( 'Apac', 'invoicing' ),
1338
+        'UG303' => __( 'Arua', 'invoicing' ),
1339
+        'UG217' => __( 'Budaka', 'invoicing' ),
1340
+        'UG218' => __( 'Bududa', 'invoicing' ),
1341
+        'UG201' => __( 'Bugiri', 'invoicing' ),
1342
+        'UG235' => __( 'Bugweri', 'invoicing' ),
1343
+        'UG420' => __( 'Buhweju', 'invoicing' ),
1344
+        'UG117' => __( 'Buikwe', 'invoicing' ),
1345
+        'UG219' => __( 'Bukedea', 'invoicing' ),
1346
+        'UG118' => __( 'Bukomansimbi', 'invoicing' ),
1347
+        'UG220' => __( 'Bukwa', 'invoicing' ),
1348
+        'UG225' => __( 'Bulambuli', 'invoicing' ),
1349
+        'UG416' => __( 'Buliisa', 'invoicing' ),
1350
+        'UG401' => __( 'Bundibugyo', 'invoicing' ),
1351
+        'UG430' => __( 'Bunyangabu', 'invoicing' ),
1352
+        'UG402' => __( 'Bushenyi', 'invoicing' ),
1353
+        'UG202' => __( 'Busia', 'invoicing' ),
1354
+        'UG221' => __( 'Butaleja', 'invoicing' ),
1355
+        'UG119' => __( 'Butambala', 'invoicing' ),
1356
+        'UG233' => __( 'Butebo', 'invoicing' ),
1357
+        'UG120' => __( 'Buvuma', 'invoicing' ),
1358
+        'UG226' => __( 'Buyende', 'invoicing' ),
1359
+        'UG317' => __( 'Dokolo', 'invoicing' ),
1360
+        'UG121' => __( 'Gomba', 'invoicing' ),
1361
+        'UG304' => __( 'Gulu', 'invoicing' ),
1362
+        'UG403' => __( 'Hoima', 'invoicing' ),
1363
+        'UG417' => __( 'Ibanda', 'invoicing' ),
1364
+        'UG203' => __( 'Iganga', 'invoicing' ),
1365
+        'UG418' => __( 'Isingiro', 'invoicing' ),
1366
+        'UG204' => __( 'Jinja', 'invoicing' ),
1367
+        'UG318' => __( 'Kaabong', 'invoicing' ),
1368
+        'UG404' => __( 'Kabale', 'invoicing' ),
1369
+        'UG405' => __( 'Kabarole', 'invoicing' ),
1370
+        'UG213' => __( 'Kaberamaido', 'invoicing' ),
1371
+        'UG427' => __( 'Kagadi', 'invoicing' ),
1372
+        'UG428' => __( 'Kakumiro', 'invoicing' ),
1373
+        'UG101' => __( 'Kalangala', 'invoicing' ),
1374
+        'UG222' => __( 'Kaliro', 'invoicing' ),
1375
+        'UG122' => __( 'Kalungu', 'invoicing' ),
1376
+        'UG102' => __( 'Kampala', 'invoicing' ),
1377
+        'UG205' => __( 'Kamuli', 'invoicing' ),
1378
+        'UG413' => __( 'Kamwenge', 'invoicing' ),
1379
+        'UG414' => __( 'Kanungu', 'invoicing' ),
1380
+        'UG206' => __( 'Kapchorwa', 'invoicing' ),
1381
+        'UG236' => __( 'Kapelebyong', 'invoicing' ),
1382
+        'UG126' => __( 'Kasanda', 'invoicing' ),
1383
+        'UG406' => __( 'Kasese', 'invoicing' ),
1384
+        'UG207' => __( 'Katakwi', 'invoicing' ),
1385
+        'UG112' => __( 'Kayunga', 'invoicing' ),
1386
+        'UG407' => __( 'Kibaale', 'invoicing' ),
1387
+        'UG103' => __( 'Kiboga', 'invoicing' ),
1388
+        'UG227' => __( 'Kibuku', 'invoicing' ),
1389
+        'UG432' => __( 'Kikuube', 'invoicing' ),
1390
+        'UG419' => __( 'Kiruhura', 'invoicing' ),
1391
+        'UG421' => __( 'Kiryandongo', 'invoicing' ),
1392
+        'UG408' => __( 'Kisoro', 'invoicing' ),
1393
+        'UG305' => __( 'Kitgum', 'invoicing' ),
1394
+        'UG319' => __( 'Koboko', 'invoicing' ),
1395
+        'UG325' => __( 'Kole', 'invoicing' ),
1396
+        'UG306' => __( 'Kotido', 'invoicing' ),
1397
+        'UG208' => __( 'Kumi', 'invoicing' ),
1398
+        'UG333' => __( 'Kwania', 'invoicing' ),
1399
+        'UG228' => __( 'Kween', 'invoicing' ),
1400
+        'UG123' => __( 'Kyankwanzi', 'invoicing' ),
1401
+        'UG422' => __( 'Kyegegwa', 'invoicing' ),
1402
+        'UG415' => __( 'Kyenjojo', 'invoicing' ),
1403
+        'UG125' => __( 'Kyotera', 'invoicing' ),
1404
+        'UG326' => __( 'Lamwo', 'invoicing' ),
1405
+        'UG307' => __( 'Lira', 'invoicing' ),
1406
+        'UG229' => __( 'Luuka', 'invoicing' ),
1407
+        'UG104' => __( 'Luwero', 'invoicing' ),
1408
+        'UG124' => __( 'Lwengo', 'invoicing' ),
1409
+        'UG114' => __( 'Lyantonde', 'invoicing' ),
1410
+        'UG223' => __( 'Manafwa', 'invoicing' ),
1411
+        'UG320' => __( 'Maracha', 'invoicing' ),
1412
+        'UG105' => __( 'Masaka', 'invoicing' ),
1413
+        'UG409' => __( 'Masindi', 'invoicing' ),
1414
+        'UG214' => __( 'Mayuge', 'invoicing' ),
1415
+        'UG209' => __( 'Mbale', 'invoicing' ),
1416
+        'UG410' => __( 'Mbarara', 'invoicing' ),
1417
+        'UG423' => __( 'Mitooma', 'invoicing' ),
1418
+        'UG115' => __( 'Mityana', 'invoicing' ),
1419
+        'UG308' => __( 'Moroto', 'invoicing' ),
1420
+        'UG309' => __( 'Moyo', 'invoicing' ),
1421
+        'UG106' => __( 'Mpigi', 'invoicing' ),
1422
+        'UG107' => __( 'Mubende', 'invoicing' ),
1423
+        'UG108' => __( 'Mukono', 'invoicing' ),
1424
+        'UG334' => __( 'Nabilatuk', 'invoicing' ),
1425
+        'UG311' => __( 'Nakapiripirit', 'invoicing' ),
1426
+        'UG116' => __( 'Nakaseke', 'invoicing' ),
1427
+        'UG109' => __( 'Nakasongola', 'invoicing' ),
1428
+        'UG230' => __( 'Namayingo', 'invoicing' ),
1429
+        'UG234' => __( 'Namisindwa', 'invoicing' ),
1430
+        'UG224' => __( 'Namutumba', 'invoicing' ),
1431
+        'UG327' => __( 'Napak', 'invoicing' ),
1432
+        'UG310' => __( 'Nebbi', 'invoicing' ),
1433
+        'UG231' => __( 'Ngora', 'invoicing' ),
1434
+        'UG424' => __( 'Ntoroko', 'invoicing' ),
1435
+        'UG411' => __( 'Ntungamo', 'invoicing' ),
1436
+        'UG328' => __( 'Nwoya', 'invoicing' ),
1437
+        'UG331' => __( 'Omoro', 'invoicing' ),
1438
+        'UG329' => __( 'Otuke', 'invoicing' ),
1439
+        'UG321' => __( 'Oyam', 'invoicing' ),
1440
+        'UG312' => __( 'Pader', 'invoicing' ),
1441
+        'UG332' => __( 'Pakwach', 'invoicing' ),
1442
+        'UG210' => __( 'Pallisa', 'invoicing' ),
1443
+        'UG110' => __( 'Rakai', 'invoicing' ),
1444
+        'UG429' => __( 'Rubanda', 'invoicing' ),
1445
+        'UG425' => __( 'Rubirizi', 'invoicing' ),
1446
+        'UG431' => __( 'Rukiga', 'invoicing' ),
1447
+        'UG412' => __( 'Rukungiri', 'invoicing' ),
1448
+        'UG111' => __( 'Sembabule', 'invoicing' ),
1449
+        'UG232' => __( 'Serere', 'invoicing' ),
1450
+        'UG426' => __( 'Sheema', 'invoicing' ),
1451
+        'UG215' => __( 'Sironko', 'invoicing' ),
1452
+        'UG211' => __( 'Soroti', 'invoicing' ),
1453
+        'UG212' => __( 'Tororo', 'invoicing' ),
1454
+        'UG113' => __( 'Wakiso', 'invoicing' ),
1455
+        'UG313' => __( 'Yumbe', 'invoicing' ),
1456
+        'UG330' => __( 'Zombo', 'invoicing' ),
1457
+    ),
1458
+    'UM' => array(
1459
+        '81' => __( 'Baker Island', 'invoicing' ),
1460
+        '84' => __( 'Howland Island', 'invoicing' ),
1461
+        '86' => __( 'Jarvis Island', 'invoicing' ),
1462
+        '67' => __( 'Johnston Atoll', 'invoicing' ),
1463
+        '89' => __( 'Kingman Reef', 'invoicing' ),
1464
+        '71' => __( 'Midway Atoll', 'invoicing' ),
1465
+        '76' => __( 'Navassa Island', 'invoicing' ),
1466
+        '95' => __( 'Palmyra Atoll', 'invoicing' ),
1467
+        '79' => __( 'Wake Island', 'invoicing' ),
1468
+    ),
1469
+    'US' => array( // United States.
1470
+        'AL' => __( 'Alabama', 'invoicing' ),
1471
+        'AK' => __( 'Alaska', 'invoicing' ),
1472
+        'AZ' => __( 'Arizona', 'invoicing' ),
1473
+        'AR' => __( 'Arkansas', 'invoicing' ),
1474
+        'CA' => __( 'California', 'invoicing' ),
1475
+        'CO' => __( 'Colorado', 'invoicing' ),
1476
+        'CT' => __( 'Connecticut', 'invoicing' ),
1477
+        'DE' => __( 'Delaware', 'invoicing' ),
1478
+        'DC' => __( 'District Of Columbia', 'invoicing' ),
1479
+        'FL' => __( 'Florida', 'invoicing' ),
1480
+        'GA' => _x( 'Georgia', 'US state of Georgia', 'invoicing' ),
1481
+        'HI' => __( 'Hawaii', 'invoicing' ),
1482
+        'ID' => __( 'Idaho', 'invoicing' ),
1483
+        'IL' => __( 'Illinois', 'invoicing' ),
1484
+        'IN' => __( 'Indiana', 'invoicing' ),
1485
+        'IA' => __( 'Iowa', 'invoicing' ),
1486
+        'KS' => __( 'Kansas', 'invoicing' ),
1487
+        'KY' => __( 'Kentucky', 'invoicing' ),
1488
+        'LA' => __( 'Louisiana', 'invoicing' ),
1489
+        'ME' => __( 'Maine', 'invoicing' ),
1490
+        'MD' => __( 'Maryland', 'invoicing' ),
1491
+        'MA' => __( 'Massachusetts', 'invoicing' ),
1492
+        'MI' => __( 'Michigan', 'invoicing' ),
1493
+        'MN' => __( 'Minnesota', 'invoicing' ),
1494
+        'MS' => __( 'Mississippi', 'invoicing' ),
1495
+        'MO' => __( 'Missouri', 'invoicing' ),
1496
+        'MT' => __( 'Montana', 'invoicing' ),
1497
+        'NE' => __( 'Nebraska', 'invoicing' ),
1498
+        'NV' => __( 'Nevada', 'invoicing' ),
1499
+        'NH' => __( 'New Hampshire', 'invoicing' ),
1500
+        'NJ' => __( 'New Jersey', 'invoicing' ),
1501
+        'NM' => __( 'New Mexico', 'invoicing' ),
1502
+        'NY' => __( 'New York', 'invoicing' ),
1503
+        'NC' => __( 'North Carolina', 'invoicing' ),
1504
+        'ND' => __( 'North Dakota', 'invoicing' ),
1505
+        'OH' => __( 'Ohio', 'invoicing' ),
1506
+        'OK' => __( 'Oklahoma', 'invoicing' ),
1507
+        'OR' => __( 'Oregon', 'invoicing' ),
1508
+        'PA' => __( 'Pennsylvania', 'invoicing' ),
1509
+        'RI' => __( 'Rhode Island', 'invoicing' ),
1510
+        'SC' => __( 'South Carolina', 'invoicing' ),
1511
+        'SD' => __( 'South Dakota', 'invoicing' ),
1512
+        'TN' => __( 'Tennessee', 'invoicing' ),
1513
+        'TX' => __( 'Texas', 'invoicing' ),
1514
+        'UT' => __( 'Utah', 'invoicing' ),
1515
+        'VT' => __( 'Vermont', 'invoicing' ),
1516
+        'VA' => __( 'Virginia', 'invoicing' ),
1517
+        'WA' => __( 'Washington', 'invoicing' ),
1518
+        'WV' => __( 'West Virginia', 'invoicing' ),
1519
+        'WI' => __( 'Wisconsin', 'invoicing' ),
1520
+        'WY' => __( 'Wyoming', 'invoicing' ),
1521
+        'AA' => __( 'Armed Forces (AA)', 'invoicing' ),
1522
+        'AE' => __( 'Armed Forces (AE)', 'invoicing' ),
1523
+        'AP' => __( 'Armed Forces (AP)', 'invoicing' ),
1524
+    ),
1525
+    'VN' => array(),
1526
+    'YT' => array(),
1527
+    'ZA' => array( // South African states.
1528
+        'EC'  => __( 'Eastern Cape', 'invoicing' ),
1529
+        'FS'  => __( 'Free State', 'invoicing' ),
1530
+        'GP'  => __( 'Gauteng', 'invoicing' ),
1531
+        'KZN' => __( 'KwaZulu-Natal', 'invoicing' ),
1532
+        'LP'  => __( 'Limpopo', 'invoicing' ),
1533
+        'MP'  => __( 'Mpumalanga', 'invoicing' ),
1534
+        'NC'  => __( 'Northern Cape', 'invoicing' ),
1535
+        'NW'  => __( 'North West', 'invoicing' ),
1536
+        'WC'  => __( 'Western Cape', 'invoicing' ),
1537
+    ),
1538
+    'ZM' => array( // Zambia's Provinces. Ref: https://en.wikipedia.org/wiki/ISO_3166-2:ZM.
1539
+        'ZM-01' => __( 'Western', 'invoicing' ),
1540
+        'ZM-02' => __( 'Central', 'invoicing' ),
1541
+        'ZM-03' => __( 'Eastern', 'invoicing' ),
1542
+        'ZM-04' => __( 'Luapula', 'invoicing' ),
1543
+        'ZM-05' => __( 'Northern', 'invoicing' ),
1544
+        'ZM-06' => __( 'North-Western', 'invoicing' ),
1545
+        'ZM-07' => __( 'Southern', 'invoicing' ),
1546
+        'ZM-08' => __( 'Copperbelt', 'invoicing' ),
1547
+        'ZM-09' => __( 'Lusaka', 'invoicing' ),
1548
+        'ZM-10' => __( 'Muchinga', 'invoicing' ),
1549
+    ),
1550 1550
 );
Please login to merge, or discard this patch.
Spacing   +1405 added lines, -1405 removed lines patch added patch discarded remove patch
@@ -11,632 +11,632 @@  discard block
 block discarded – undo
11 11
  * @version 1.0.14
12 12
  */
13 13
 
14
-defined( 'ABSPATH' ) || exit;
14
+defined('ABSPATH') || exit;
15 15
 
16 16
 return array(
17 17
 	'AF' => array(),
18 18
 	'AO' => array( // Angola states.
19
-		'BGO' => __( 'Bengo', 'invoicing' ),
20
-		'BLU' => __( 'Benguela', 'invoicing' ),
21
-		'BIE' => __( 'Bié', 'invoicing' ),
22
-		'CAB' => __( 'Cabinda', 'invoicing' ),
23
-		'CNN' => __( 'Cunene', 'invoicing' ),
24
-		'HUA' => __( 'Huambo', 'invoicing' ),
25
-		'HUI' => __( 'Huíla', 'invoicing' ),
26
-		'CCU' => __( 'Kuando Kubango', 'invoicing' ),
27
-		'CNO' => __( 'Kwanza-Norte', 'invoicing' ),
28
-		'CUS' => __( 'Kwanza-Sul', 'invoicing' ),
29
-		'LUA' => __( 'Luanda', 'invoicing' ),
30
-		'LNO' => __( 'Lunda-Norte', 'invoicing' ),
31
-		'LSU' => __( 'Lunda-Sul', 'invoicing' ),
32
-		'MAL' => __( 'Malanje', 'invoicing' ),
33
-		'MOX' => __( 'Moxico', 'invoicing' ),
34
-		'NAM' => __( 'Namibe', 'invoicing' ),
35
-		'UIG' => __( 'Uíge', 'invoicing' ),
36
-		'ZAI' => __( 'Zaire', 'invoicing' ),
19
+		'BGO' => __('Bengo', 'invoicing'),
20
+		'BLU' => __('Benguela', 'invoicing'),
21
+		'BIE' => __('Bié', 'invoicing'),
22
+		'CAB' => __('Cabinda', 'invoicing'),
23
+		'CNN' => __('Cunene', 'invoicing'),
24
+		'HUA' => __('Huambo', 'invoicing'),
25
+		'HUI' => __('Huíla', 'invoicing'),
26
+		'CCU' => __('Kuando Kubango', 'invoicing'),
27
+		'CNO' => __('Kwanza-Norte', 'invoicing'),
28
+		'CUS' => __('Kwanza-Sul', 'invoicing'),
29
+		'LUA' => __('Luanda', 'invoicing'),
30
+		'LNO' => __('Lunda-Norte', 'invoicing'),
31
+		'LSU' => __('Lunda-Sul', 'invoicing'),
32
+		'MAL' => __('Malanje', 'invoicing'),
33
+		'MOX' => __('Moxico', 'invoicing'),
34
+		'NAM' => __('Namibe', 'invoicing'),
35
+		'UIG' => __('Uíge', 'invoicing'),
36
+		'ZAI' => __('Zaire', 'invoicing'),
37 37
 	),
38 38
 	'AR' => array( // Argentinian provinces.
39
-		'C' => __( 'Ciudad Autónoma de Buenos Aires', 'invoicing' ),
40
-		'B' => __( 'Buenos Aires', 'invoicing' ),
41
-		'K' => __( 'Catamarca', 'invoicing' ),
42
-		'H' => __( 'Chaco', 'invoicing' ),
43
-		'U' => __( 'Chubut', 'invoicing' ),
44
-		'X' => __( 'Córdoba', 'invoicing' ),
45
-		'W' => __( 'Corrientes', 'invoicing' ),
46
-		'E' => __( 'Entre Ríos', 'invoicing' ),
47
-		'P' => __( 'Formosa', 'invoicing' ),
48
-		'Y' => __( 'Jujuy', 'invoicing' ),
49
-		'L' => __( 'La Pampa', 'invoicing' ),
50
-		'F' => __( 'La Rioja', 'invoicing' ),
51
-		'M' => __( 'Mendoza', 'invoicing' ),
52
-		'N' => __( 'Misiones', 'invoicing' ),
53
-		'Q' => __( 'Neuquén', 'invoicing' ),
54
-		'R' => __( 'Río Negro', 'invoicing' ),
55
-		'A' => __( 'Salta', 'invoicing' ),
56
-		'J' => __( 'San Juan', 'invoicing' ),
57
-		'D' => __( 'San Luis', 'invoicing' ),
58
-		'Z' => __( 'Santa Cruz', 'invoicing' ),
59
-		'S' => __( 'Santa Fe', 'invoicing' ),
60
-		'G' => __( 'Santiago del Estero', 'invoicing' ),
61
-		'V' => __( 'Tierra del Fuego', 'invoicing' ),
62
-		'T' => __( 'Tucumán', 'invoicing' ),
39
+		'C' => __('Ciudad Autónoma de Buenos Aires', 'invoicing'),
40
+		'B' => __('Buenos Aires', 'invoicing'),
41
+		'K' => __('Catamarca', 'invoicing'),
42
+		'H' => __('Chaco', 'invoicing'),
43
+		'U' => __('Chubut', 'invoicing'),
44
+		'X' => __('Córdoba', 'invoicing'),
45
+		'W' => __('Corrientes', 'invoicing'),
46
+		'E' => __('Entre Ríos', 'invoicing'),
47
+		'P' => __('Formosa', 'invoicing'),
48
+		'Y' => __('Jujuy', 'invoicing'),
49
+		'L' => __('La Pampa', 'invoicing'),
50
+		'F' => __('La Rioja', 'invoicing'),
51
+		'M' => __('Mendoza', 'invoicing'),
52
+		'N' => __('Misiones', 'invoicing'),
53
+		'Q' => __('Neuquén', 'invoicing'),
54
+		'R' => __('Río Negro', 'invoicing'),
55
+		'A' => __('Salta', 'invoicing'),
56
+		'J' => __('San Juan', 'invoicing'),
57
+		'D' => __('San Luis', 'invoicing'),
58
+		'Z' => __('Santa Cruz', 'invoicing'),
59
+		'S' => __('Santa Fe', 'invoicing'),
60
+		'G' => __('Santiago del Estero', 'invoicing'),
61
+		'V' => __('Tierra del Fuego', 'invoicing'),
62
+		'T' => __('Tucumán', 'invoicing'),
63 63
 	),
64 64
 	'AT' => array(),
65 65
 	'AU' => array( // Australian states.
66
-		'ACT' => __( 'Australian Capital Territory', 'invoicing' ),
67
-		'NSW' => __( 'New South Wales', 'invoicing' ),
68
-		'NT'  => __( 'Northern Territory', 'invoicing' ),
69
-		'QLD' => __( 'Queensland', 'invoicing' ),
70
-		'SA'  => __( 'South Australia', 'invoicing' ),
71
-		'TAS' => __( 'Tasmania', 'invoicing' ),
72
-		'VIC' => __( 'Victoria', 'invoicing' ),
73
-		'WA'  => __( 'Western Australia', 'invoicing' ),
66
+		'ACT' => __('Australian Capital Territory', 'invoicing'),
67
+		'NSW' => __('New South Wales', 'invoicing'),
68
+		'NT'  => __('Northern Territory', 'invoicing'),
69
+		'QLD' => __('Queensland', 'invoicing'),
70
+		'SA'  => __('South Australia', 'invoicing'),
71
+		'TAS' => __('Tasmania', 'invoicing'),
72
+		'VIC' => __('Victoria', 'invoicing'),
73
+		'WA'  => __('Western Australia', 'invoicing'),
74 74
 	),
75 75
 	'AX' => array(),
76 76
 	'BD' => array( // Bangladeshi states (districts).
77
-		'BD-05' => __( 'Bagerhat', 'invoicing' ),
78
-		'BD-01' => __( 'Bandarban', 'invoicing' ),
79
-		'BD-02' => __( 'Barguna', 'invoicing' ),
80
-		'BD-06' => __( 'Barishal', 'invoicing' ),
81
-		'BD-07' => __( 'Bhola', 'invoicing' ),
82
-		'BD-03' => __( 'Bogura', 'invoicing' ),
83
-		'BD-04' => __( 'Brahmanbaria', 'invoicing' ),
84
-		'BD-09' => __( 'Chandpur', 'invoicing' ),
85
-		'BD-10' => __( 'Chattogram', 'invoicing' ),
86
-		'BD-12' => __( 'Chuadanga', 'invoicing' ),
87
-		'BD-11' => __( "Cox's Bazar", 'invoicing' ),
88
-		'BD-08' => __( 'Cumilla', 'invoicing' ),
89
-		'BD-13' => __( 'Dhaka', 'invoicing' ),
90
-		'BD-14' => __( 'Dinajpur', 'invoicing' ),
91
-		'BD-15' => __( 'Faridpur ', 'invoicing' ),
92
-		'BD-16' => __( 'Feni', 'invoicing' ),
93
-		'BD-19' => __( 'Gaibandha', 'invoicing' ),
94
-		'BD-18' => __( 'Gazipur', 'invoicing' ),
95
-		'BD-17' => __( 'Gopalganj', 'invoicing' ),
96
-		'BD-20' => __( 'Habiganj', 'invoicing' ),
97
-		'BD-21' => __( 'Jamalpur', 'invoicing' ),
98
-		'BD-22' => __( 'Jashore', 'invoicing' ),
99
-		'BD-25' => __( 'Jhalokati', 'invoicing' ),
100
-		'BD-23' => __( 'Jhenaidah', 'invoicing' ),
101
-		'BD-24' => __( 'Joypurhat', 'invoicing' ),
102
-		'BD-29' => __( 'Khagrachhari', 'invoicing' ),
103
-		'BD-27' => __( 'Khulna', 'invoicing' ),
104
-		'BD-26' => __( 'Kishoreganj', 'invoicing' ),
105
-		'BD-28' => __( 'Kurigram', 'invoicing' ),
106
-		'BD-30' => __( 'Kushtia', 'invoicing' ),
107
-		'BD-31' => __( 'Lakshmipur', 'invoicing' ),
108
-		'BD-32' => __( 'Lalmonirhat', 'invoicing' ),
109
-		'BD-36' => __( 'Madaripur', 'invoicing' ),
110
-		'BD-37' => __( 'Magura', 'invoicing' ),
111
-		'BD-33' => __( 'Manikganj ', 'invoicing' ),
112
-		'BD-39' => __( 'Meherpur', 'invoicing' ),
113
-		'BD-38' => __( 'Moulvibazar', 'invoicing' ),
114
-		'BD-35' => __( 'Munshiganj', 'invoicing' ),
115
-		'BD-34' => __( 'Mymensingh', 'invoicing' ),
116
-		'BD-48' => __( 'Naogaon', 'invoicing' ),
117
-		'BD-43' => __( 'Narail', 'invoicing' ),
118
-		'BD-40' => __( 'Narayanganj', 'invoicing' ),
119
-		'BD-42' => __( 'Narsingdi', 'invoicing' ),
120
-		'BD-44' => __( 'Natore', 'invoicing' ),
121
-		'BD-45' => __( 'Nawabganj', 'invoicing' ),
122
-		'BD-41' => __( 'Netrakona', 'invoicing' ),
123
-		'BD-46' => __( 'Nilphamari', 'invoicing' ),
124
-		'BD-47' => __( 'Noakhali', 'invoicing' ),
125
-		'BD-49' => __( 'Pabna', 'invoicing' ),
126
-		'BD-52' => __( 'Panchagarh', 'invoicing' ),
127
-		'BD-51' => __( 'Patuakhali', 'invoicing' ),
128
-		'BD-50' => __( 'Pirojpur', 'invoicing' ),
129
-		'BD-53' => __( 'Rajbari', 'invoicing' ),
130
-		'BD-54' => __( 'Rajshahi', 'invoicing' ),
131
-		'BD-56' => __( 'Rangamati', 'invoicing' ),
132
-		'BD-55' => __( 'Rangpur', 'invoicing' ),
133
-		'BD-58' => __( 'Satkhira', 'invoicing' ),
134
-		'BD-62' => __( 'Shariatpur', 'invoicing' ),
135
-		'BD-57' => __( 'Sherpur', 'invoicing' ),
136
-		'BD-59' => __( 'Sirajganj', 'invoicing' ),
137
-		'BD-61' => __( 'Sunamganj', 'invoicing' ),
138
-		'BD-60' => __( 'Sylhet', 'invoicing' ),
139
-		'BD-63' => __( 'Tangail', 'invoicing' ),
140
-		'BD-64' => __( 'Thakurgaon', 'invoicing' ),
77
+		'BD-05' => __('Bagerhat', 'invoicing'),
78
+		'BD-01' => __('Bandarban', 'invoicing'),
79
+		'BD-02' => __('Barguna', 'invoicing'),
80
+		'BD-06' => __('Barishal', 'invoicing'),
81
+		'BD-07' => __('Bhola', 'invoicing'),
82
+		'BD-03' => __('Bogura', 'invoicing'),
83
+		'BD-04' => __('Brahmanbaria', 'invoicing'),
84
+		'BD-09' => __('Chandpur', 'invoicing'),
85
+		'BD-10' => __('Chattogram', 'invoicing'),
86
+		'BD-12' => __('Chuadanga', 'invoicing'),
87
+		'BD-11' => __("Cox's Bazar", 'invoicing'),
88
+		'BD-08' => __('Cumilla', 'invoicing'),
89
+		'BD-13' => __('Dhaka', 'invoicing'),
90
+		'BD-14' => __('Dinajpur', 'invoicing'),
91
+		'BD-15' => __('Faridpur ', 'invoicing'),
92
+		'BD-16' => __('Feni', 'invoicing'),
93
+		'BD-19' => __('Gaibandha', 'invoicing'),
94
+		'BD-18' => __('Gazipur', 'invoicing'),
95
+		'BD-17' => __('Gopalganj', 'invoicing'),
96
+		'BD-20' => __('Habiganj', 'invoicing'),
97
+		'BD-21' => __('Jamalpur', 'invoicing'),
98
+		'BD-22' => __('Jashore', 'invoicing'),
99
+		'BD-25' => __('Jhalokati', 'invoicing'),
100
+		'BD-23' => __('Jhenaidah', 'invoicing'),
101
+		'BD-24' => __('Joypurhat', 'invoicing'),
102
+		'BD-29' => __('Khagrachhari', 'invoicing'),
103
+		'BD-27' => __('Khulna', 'invoicing'),
104
+		'BD-26' => __('Kishoreganj', 'invoicing'),
105
+		'BD-28' => __('Kurigram', 'invoicing'),
106
+		'BD-30' => __('Kushtia', 'invoicing'),
107
+		'BD-31' => __('Lakshmipur', 'invoicing'),
108
+		'BD-32' => __('Lalmonirhat', 'invoicing'),
109
+		'BD-36' => __('Madaripur', 'invoicing'),
110
+		'BD-37' => __('Magura', 'invoicing'),
111
+		'BD-33' => __('Manikganj ', 'invoicing'),
112
+		'BD-39' => __('Meherpur', 'invoicing'),
113
+		'BD-38' => __('Moulvibazar', 'invoicing'),
114
+		'BD-35' => __('Munshiganj', 'invoicing'),
115
+		'BD-34' => __('Mymensingh', 'invoicing'),
116
+		'BD-48' => __('Naogaon', 'invoicing'),
117
+		'BD-43' => __('Narail', 'invoicing'),
118
+		'BD-40' => __('Narayanganj', 'invoicing'),
119
+		'BD-42' => __('Narsingdi', 'invoicing'),
120
+		'BD-44' => __('Natore', 'invoicing'),
121
+		'BD-45' => __('Nawabganj', 'invoicing'),
122
+		'BD-41' => __('Netrakona', 'invoicing'),
123
+		'BD-46' => __('Nilphamari', 'invoicing'),
124
+		'BD-47' => __('Noakhali', 'invoicing'),
125
+		'BD-49' => __('Pabna', 'invoicing'),
126
+		'BD-52' => __('Panchagarh', 'invoicing'),
127
+		'BD-51' => __('Patuakhali', 'invoicing'),
128
+		'BD-50' => __('Pirojpur', 'invoicing'),
129
+		'BD-53' => __('Rajbari', 'invoicing'),
130
+		'BD-54' => __('Rajshahi', 'invoicing'),
131
+		'BD-56' => __('Rangamati', 'invoicing'),
132
+		'BD-55' => __('Rangpur', 'invoicing'),
133
+		'BD-58' => __('Satkhira', 'invoicing'),
134
+		'BD-62' => __('Shariatpur', 'invoicing'),
135
+		'BD-57' => __('Sherpur', 'invoicing'),
136
+		'BD-59' => __('Sirajganj', 'invoicing'),
137
+		'BD-61' => __('Sunamganj', 'invoicing'),
138
+		'BD-60' => __('Sylhet', 'invoicing'),
139
+		'BD-63' => __('Tangail', 'invoicing'),
140
+		'BD-64' => __('Thakurgaon', 'invoicing'),
141 141
 	),
142 142
 	'BE' => array(),
143 143
 	'BG' => array( // Bulgarian states.
144
-		'BG-01' => __( 'Blagoevgrad', 'invoicing' ),
145
-		'BG-02' => __( 'Burgas', 'invoicing' ),
146
-		'BG-08' => __( 'Dobrich', 'invoicing' ),
147
-		'BG-07' => __( 'Gabrovo', 'invoicing' ),
148
-		'BG-26' => __( 'Haskovo', 'invoicing' ),
149
-		'BG-09' => __( 'Kardzhali', 'invoicing' ),
150
-		'BG-10' => __( 'Kyustendil', 'invoicing' ),
151
-		'BG-11' => __( 'Lovech', 'invoicing' ),
152
-		'BG-12' => __( 'Montana', 'invoicing' ),
153
-		'BG-13' => __( 'Pazardzhik', 'invoicing' ),
154
-		'BG-14' => __( 'Pernik', 'invoicing' ),
155
-		'BG-15' => __( 'Pleven', 'invoicing' ),
156
-		'BG-16' => __( 'Plovdiv', 'invoicing' ),
157
-		'BG-17' => __( 'Razgrad', 'invoicing' ),
158
-		'BG-18' => __( 'Ruse', 'invoicing' ),
159
-		'BG-27' => __( 'Shumen', 'invoicing' ),
160
-		'BG-19' => __( 'Silistra', 'invoicing' ),
161
-		'BG-20' => __( 'Sliven', 'invoicing' ),
162
-		'BG-21' => __( 'Smolyan', 'invoicing' ),
163
-		'BG-23' => __( 'Sofia', 'invoicing' ),
164
-		'BG-22' => __( 'Sofia-Grad', 'invoicing' ),
165
-		'BG-24' => __( 'Stara Zagora', 'invoicing' ),
166
-		'BG-25' => __( 'Targovishte', 'invoicing' ),
167
-		'BG-03' => __( 'Varna', 'invoicing' ),
168
-		'BG-04' => __( 'Veliko Tarnovo', 'invoicing' ),
169
-		'BG-05' => __( 'Vidin', 'invoicing' ),
170
-		'BG-06' => __( 'Vratsa', 'invoicing' ),
171
-		'BG-28' => __( 'Yambol', 'invoicing' ),
144
+		'BG-01' => __('Blagoevgrad', 'invoicing'),
145
+		'BG-02' => __('Burgas', 'invoicing'),
146
+		'BG-08' => __('Dobrich', 'invoicing'),
147
+		'BG-07' => __('Gabrovo', 'invoicing'),
148
+		'BG-26' => __('Haskovo', 'invoicing'),
149
+		'BG-09' => __('Kardzhali', 'invoicing'),
150
+		'BG-10' => __('Kyustendil', 'invoicing'),
151
+		'BG-11' => __('Lovech', 'invoicing'),
152
+		'BG-12' => __('Montana', 'invoicing'),
153
+		'BG-13' => __('Pazardzhik', 'invoicing'),
154
+		'BG-14' => __('Pernik', 'invoicing'),
155
+		'BG-15' => __('Pleven', 'invoicing'),
156
+		'BG-16' => __('Plovdiv', 'invoicing'),
157
+		'BG-17' => __('Razgrad', 'invoicing'),
158
+		'BG-18' => __('Ruse', 'invoicing'),
159
+		'BG-27' => __('Shumen', 'invoicing'),
160
+		'BG-19' => __('Silistra', 'invoicing'),
161
+		'BG-20' => __('Sliven', 'invoicing'),
162
+		'BG-21' => __('Smolyan', 'invoicing'),
163
+		'BG-23' => __('Sofia', 'invoicing'),
164
+		'BG-22' => __('Sofia-Grad', 'invoicing'),
165
+		'BG-24' => __('Stara Zagora', 'invoicing'),
166
+		'BG-25' => __('Targovishte', 'invoicing'),
167
+		'BG-03' => __('Varna', 'invoicing'),
168
+		'BG-04' => __('Veliko Tarnovo', 'invoicing'),
169
+		'BG-05' => __('Vidin', 'invoicing'),
170
+		'BG-06' => __('Vratsa', 'invoicing'),
171
+		'BG-28' => __('Yambol', 'invoicing'),
172 172
 	),
173 173
 	'BH' => array(),
174 174
 	'BI' => array(),
175 175
 	'BO' => array( // Bolivian states.
176
-		'B' => __( 'Chuquisaca', 'invoicing' ),
177
-		'H' => __( 'Beni', 'invoicing' ),
178
-		'C' => __( 'Cochabamba', 'invoicing' ),
179
-		'L' => __( 'La Paz', 'invoicing' ),
180
-		'O' => __( 'Oruro', 'invoicing' ),
181
-		'N' => __( 'Pando', 'invoicing' ),
182
-		'P' => __( 'Potosí', 'invoicing' ),
183
-		'S' => __( 'Santa Cruz', 'invoicing' ),
184
-		'T' => __( 'Tarija', 'invoicing' ),
176
+		'B' => __('Chuquisaca', 'invoicing'),
177
+		'H' => __('Beni', 'invoicing'),
178
+		'C' => __('Cochabamba', 'invoicing'),
179
+		'L' => __('La Paz', 'invoicing'),
180
+		'O' => __('Oruro', 'invoicing'),
181
+		'N' => __('Pando', 'invoicing'),
182
+		'P' => __('Potosí', 'invoicing'),
183
+		'S' => __('Santa Cruz', 'invoicing'),
184
+		'T' => __('Tarija', 'invoicing'),
185 185
 	),
186 186
 	'BR' => array( // Brazillian states.
187
-		'AC' => __( 'Acre', 'invoicing' ),
188
-		'AL' => __( 'Alagoas', 'invoicing' ),
189
-		'AP' => __( 'Amapá', 'invoicing' ),
190
-		'AM' => __( 'Amazonas', 'invoicing' ),
191
-		'BA' => __( 'Bahia', 'invoicing' ),
192
-		'CE' => __( 'Ceará', 'invoicing' ),
193
-		'DF' => __( 'Distrito Federal', 'invoicing' ),
194
-		'ES' => __( 'Espírito Santo', 'invoicing' ),
195
-		'GO' => __( 'Goiás', 'invoicing' ),
196
-		'MA' => __( 'Maranhão', 'invoicing' ),
197
-		'MT' => __( 'Mato Grosso', 'invoicing' ),
198
-		'MS' => __( 'Mato Grosso do Sul', 'invoicing' ),
199
-		'MG' => __( 'Minas Gerais', 'invoicing' ),
200
-		'PA' => __( 'Pará', 'invoicing' ),
201
-		'PB' => __( 'Paraíba', 'invoicing' ),
202
-		'PR' => __( 'Paraná', 'invoicing' ),
203
-		'PE' => __( 'Pernambuco', 'invoicing' ),
204
-		'PI' => __( 'Piauí', 'invoicing' ),
205
-		'RJ' => __( 'Rio de Janeiro', 'invoicing' ),
206
-		'RN' => __( 'Rio Grande do Norte', 'invoicing' ),
207
-		'RS' => __( 'Rio Grande do Sul', 'invoicing' ),
208
-		'RO' => __( 'Rondônia', 'invoicing' ),
209
-		'RR' => __( 'Roraima', 'invoicing' ),
210
-		'SC' => __( 'Santa Catarina', 'invoicing' ),
211
-		'SP' => __( 'São Paulo', 'invoicing' ),
212
-		'SE' => __( 'Sergipe', 'invoicing' ),
213
-		'TO' => __( 'Tocantins', 'invoicing' ),
187
+		'AC' => __('Acre', 'invoicing'),
188
+		'AL' => __('Alagoas', 'invoicing'),
189
+		'AP' => __('Amapá', 'invoicing'),
190
+		'AM' => __('Amazonas', 'invoicing'),
191
+		'BA' => __('Bahia', 'invoicing'),
192
+		'CE' => __('Ceará', 'invoicing'),
193
+		'DF' => __('Distrito Federal', 'invoicing'),
194
+		'ES' => __('Espírito Santo', 'invoicing'),
195
+		'GO' => __('Goiás', 'invoicing'),
196
+		'MA' => __('Maranhão', 'invoicing'),
197
+		'MT' => __('Mato Grosso', 'invoicing'),
198
+		'MS' => __('Mato Grosso do Sul', 'invoicing'),
199
+		'MG' => __('Minas Gerais', 'invoicing'),
200
+		'PA' => __('Pará', 'invoicing'),
201
+		'PB' => __('Paraíba', 'invoicing'),
202
+		'PR' => __('Paraná', 'invoicing'),
203
+		'PE' => __('Pernambuco', 'invoicing'),
204
+		'PI' => __('Piauí', 'invoicing'),
205
+		'RJ' => __('Rio de Janeiro', 'invoicing'),
206
+		'RN' => __('Rio Grande do Norte', 'invoicing'),
207
+		'RS' => __('Rio Grande do Sul', 'invoicing'),
208
+		'RO' => __('Rondônia', 'invoicing'),
209
+		'RR' => __('Roraima', 'invoicing'),
210
+		'SC' => __('Santa Catarina', 'invoicing'),
211
+		'SP' => __('São Paulo', 'invoicing'),
212
+		'SE' => __('Sergipe', 'invoicing'),
213
+		'TO' => __('Tocantins', 'invoicing'),
214 214
 	),
215 215
 	'CA' => array( // Canadian states.
216
-		'AB' => __( 'Alberta', 'invoicing' ),
217
-		'BC' => __( 'British Columbia', 'invoicing' ),
218
-		'MB' => __( 'Manitoba', 'invoicing' ),
219
-		'NB' => __( 'New Brunswick', 'invoicing' ),
220
-		'NL' => __( 'Newfoundland and Labrador', 'invoicing' ),
221
-		'NT' => __( 'Northwest Territories', 'invoicing' ),
222
-		'NS' => __( 'Nova Scotia', 'invoicing' ),
223
-		'NU' => __( 'Nunavut', 'invoicing' ),
224
-		'ON' => __( 'Ontario', 'invoicing' ),
225
-		'PE' => __( 'Prince Edward Island', 'invoicing' ),
226
-		'QC' => __( 'Quebec', 'invoicing' ),
227
-		'SK' => __( 'Saskatchewan', 'invoicing' ),
228
-		'YT' => __( 'Yukon Territory', 'invoicing' ),
216
+		'AB' => __('Alberta', 'invoicing'),
217
+		'BC' => __('British Columbia', 'invoicing'),
218
+		'MB' => __('Manitoba', 'invoicing'),
219
+		'NB' => __('New Brunswick', 'invoicing'),
220
+		'NL' => __('Newfoundland and Labrador', 'invoicing'),
221
+		'NT' => __('Northwest Territories', 'invoicing'),
222
+		'NS' => __('Nova Scotia', 'invoicing'),
223
+		'NU' => __('Nunavut', 'invoicing'),
224
+		'ON' => __('Ontario', 'invoicing'),
225
+		'PE' => __('Prince Edward Island', 'invoicing'),
226
+		'QC' => __('Quebec', 'invoicing'),
227
+		'SK' => __('Saskatchewan', 'invoicing'),
228
+		'YT' => __('Yukon Territory', 'invoicing'),
229 229
 	),
230 230
 	'CH' => array( // Cantons of Switzerland.
231
-		'AG' => __( 'Aargau', 'invoicing' ),
232
-		'AR' => __( 'Appenzell Ausserrhoden', 'invoicing' ),
233
-		'AI' => __( 'Appenzell Innerrhoden', 'invoicing' ),
234
-		'BL' => __( 'Basel-Landschaft', 'invoicing' ),
235
-		'BS' => __( 'Basel-Stadt', 'invoicing' ),
236
-		'BE' => __( 'Bern', 'invoicing' ),
237
-		'FR' => __( 'Fribourg', 'invoicing' ),
238
-		'GE' => __( 'Geneva', 'invoicing' ),
239
-		'GL' => __( 'Glarus', 'invoicing' ),
240
-		'GR' => __( 'Graubünden', 'invoicing' ),
241
-		'JU' => __( 'Jura', 'invoicing' ),
242
-		'LU' => __( 'Luzern', 'invoicing' ),
243
-		'NE' => __( 'Neuchâtel', 'invoicing' ),
244
-		'NW' => __( 'Nidwalden', 'invoicing' ),
245
-		'OW' => __( 'Obwalden', 'invoicing' ),
246
-		'SH' => __( 'Schaffhausen', 'invoicing' ),
247
-		'SZ' => __( 'Schwyz', 'invoicing' ),
248
-		'SO' => __( 'Solothurn', 'invoicing' ),
249
-		'SG' => __( 'St. Gallen', 'invoicing' ),
250
-		'TG' => __( 'Thurgau', 'invoicing' ),
251
-		'TI' => __( 'Ticino', 'invoicing' ),
252
-		'UR' => __( 'Uri', 'invoicing' ),
253
-		'VS' => __( 'Valais', 'invoicing' ),
254
-		'VD' => __( 'Vaud', 'invoicing' ),
255
-		'ZG' => __( 'Zug', 'invoicing' ),
256
-		'ZH' => __( 'Zürich', 'invoicing' ),
231
+		'AG' => __('Aargau', 'invoicing'),
232
+		'AR' => __('Appenzell Ausserrhoden', 'invoicing'),
233
+		'AI' => __('Appenzell Innerrhoden', 'invoicing'),
234
+		'BL' => __('Basel-Landschaft', 'invoicing'),
235
+		'BS' => __('Basel-Stadt', 'invoicing'),
236
+		'BE' => __('Bern', 'invoicing'),
237
+		'FR' => __('Fribourg', 'invoicing'),
238
+		'GE' => __('Geneva', 'invoicing'),
239
+		'GL' => __('Glarus', 'invoicing'),
240
+		'GR' => __('Graubünden', 'invoicing'),
241
+		'JU' => __('Jura', 'invoicing'),
242
+		'LU' => __('Luzern', 'invoicing'),
243
+		'NE' => __('Neuchâtel', 'invoicing'),
244
+		'NW' => __('Nidwalden', 'invoicing'),
245
+		'OW' => __('Obwalden', 'invoicing'),
246
+		'SH' => __('Schaffhausen', 'invoicing'),
247
+		'SZ' => __('Schwyz', 'invoicing'),
248
+		'SO' => __('Solothurn', 'invoicing'),
249
+		'SG' => __('St. Gallen', 'invoicing'),
250
+		'TG' => __('Thurgau', 'invoicing'),
251
+		'TI' => __('Ticino', 'invoicing'),
252
+		'UR' => __('Uri', 'invoicing'),
253
+		'VS' => __('Valais', 'invoicing'),
254
+		'VD' => __('Vaud', 'invoicing'),
255
+		'ZG' => __('Zug', 'invoicing'),
256
+		'ZH' => __('Zürich', 'invoicing'),
257 257
 	),
258 258
 	'CN' => array( // Chinese states.
259
-		'CN1'  => __( 'Yunnan / 云南', 'invoicing' ),
260
-		'CN2'  => __( 'Beijing / 北京', 'invoicing' ),
261
-		'CN3'  => __( 'Tianjin / 天津', 'invoicing' ),
262
-		'CN4'  => __( 'Hebei / 河北', 'invoicing' ),
263
-		'CN5'  => __( 'Shanxi / 山西', 'invoicing' ),
264
-		'CN6'  => __( 'Inner Mongolia / 內蒙古', 'invoicing' ),
265
-		'CN7'  => __( 'Liaoning / 辽宁', 'invoicing' ),
266
-		'CN8'  => __( 'Jilin / 吉林', 'invoicing' ),
267
-		'CN9'  => __( 'Heilongjiang / 黑龙江', 'invoicing' ),
268
-		'CN10' => __( 'Shanghai / 上海', 'invoicing' ),
269
-		'CN11' => __( 'Jiangsu / 江苏', 'invoicing' ),
270
-		'CN12' => __( 'Zhejiang / 浙江', 'invoicing' ),
271
-		'CN13' => __( 'Anhui / 安徽', 'invoicing' ),
272
-		'CN14' => __( 'Fujian / 福建', 'invoicing' ),
273
-		'CN15' => __( 'Jiangxi / 江西', 'invoicing' ),
274
-		'CN16' => __( 'Shandong / 山东', 'invoicing' ),
275
-		'CN17' => __( 'Henan / 河南', 'invoicing' ),
276
-		'CN18' => __( 'Hubei / 湖北', 'invoicing' ),
277
-		'CN19' => __( 'Hunan / 湖南', 'invoicing' ),
278
-		'CN20' => __( 'Guangdong / 广东', 'invoicing' ),
279
-		'CN21' => __( 'Guangxi Zhuang / 广西壮族', 'invoicing' ),
280
-		'CN22' => __( 'Hainan / 海南', 'invoicing' ),
281
-		'CN23' => __( 'Chongqing / 重庆', 'invoicing' ),
282
-		'CN24' => __( 'Sichuan / 四川', 'invoicing' ),
283
-		'CN25' => __( 'Guizhou / 贵州', 'invoicing' ),
284
-		'CN26' => __( 'Shaanxi / 陕西', 'invoicing' ),
285
-		'CN27' => __( 'Gansu / 甘肃', 'invoicing' ),
286
-		'CN28' => __( 'Qinghai / 青海', 'invoicing' ),
287
-		'CN29' => __( 'Ningxia Hui / 宁夏', 'invoicing' ),
288
-		'CN30' => __( 'Macao / 澳门', 'invoicing' ),
289
-		'CN31' => __( 'Tibet / 西藏', 'invoicing' ),
290
-		'CN32' => __( 'Xinjiang / 新疆', 'invoicing' ),
259
+		'CN1'  => __('Yunnan / 云南', 'invoicing'),
260
+		'CN2'  => __('Beijing / 北京', 'invoicing'),
261
+		'CN3'  => __('Tianjin / 天津', 'invoicing'),
262
+		'CN4'  => __('Hebei / 河北', 'invoicing'),
263
+		'CN5'  => __('Shanxi / 山西', 'invoicing'),
264
+		'CN6'  => __('Inner Mongolia / 內蒙古', 'invoicing'),
265
+		'CN7'  => __('Liaoning / 辽宁', 'invoicing'),
266
+		'CN8'  => __('Jilin / 吉林', 'invoicing'),
267
+		'CN9'  => __('Heilongjiang / 黑龙江', 'invoicing'),
268
+		'CN10' => __('Shanghai / 上海', 'invoicing'),
269
+		'CN11' => __('Jiangsu / 江苏', 'invoicing'),
270
+		'CN12' => __('Zhejiang / 浙江', 'invoicing'),
271
+		'CN13' => __('Anhui / 安徽', 'invoicing'),
272
+		'CN14' => __('Fujian / 福建', 'invoicing'),
273
+		'CN15' => __('Jiangxi / 江西', 'invoicing'),
274
+		'CN16' => __('Shandong / 山东', 'invoicing'),
275
+		'CN17' => __('Henan / 河南', 'invoicing'),
276
+		'CN18' => __('Hubei / 湖北', 'invoicing'),
277
+		'CN19' => __('Hunan / 湖南', 'invoicing'),
278
+		'CN20' => __('Guangdong / 广东', 'invoicing'),
279
+		'CN21' => __('Guangxi Zhuang / 广西壮族', 'invoicing'),
280
+		'CN22' => __('Hainan / 海南', 'invoicing'),
281
+		'CN23' => __('Chongqing / 重庆', 'invoicing'),
282
+		'CN24' => __('Sichuan / 四川', 'invoicing'),
283
+		'CN25' => __('Guizhou / 贵州', 'invoicing'),
284
+		'CN26' => __('Shaanxi / 陕西', 'invoicing'),
285
+		'CN27' => __('Gansu / 甘肃', 'invoicing'),
286
+		'CN28' => __('Qinghai / 青海', 'invoicing'),
287
+		'CN29' => __('Ningxia Hui / 宁夏', 'invoicing'),
288
+		'CN30' => __('Macao / 澳门', 'invoicing'),
289
+		'CN31' => __('Tibet / 西藏', 'invoicing'),
290
+		'CN32' => __('Xinjiang / 新疆', 'invoicing'),
291 291
 	),
292 292
 	'CZ' => array(),
293 293
 	'DE' => array(),
294 294
 	'DK' => array(),
295 295
 	'EE' => array(),
296 296
 	'ES' => array( // Spanish states.
297
-		'C'  => __( 'A Coruña', 'invoicing' ),
298
-		'VI' => __( 'Araba/Álava', 'invoicing' ),
299
-		'AB' => __( 'Albacete', 'invoicing' ),
300
-		'A'  => __( 'Alicante', 'invoicing' ),
301
-		'AL' => __( 'Almería', 'invoicing' ),
302
-		'O'  => __( 'Asturias', 'invoicing' ),
303
-		'AV' => __( 'Ávila', 'invoicing' ),
304
-		'BA' => __( 'Badajoz', 'invoicing' ),
305
-		'PM' => __( 'Baleares', 'invoicing' ),
306
-		'B'  => __( 'Barcelona', 'invoicing' ),
307
-		'BU' => __( 'Burgos', 'invoicing' ),
308
-		'CC' => __( 'Cáceres', 'invoicing' ),
309
-		'CA' => __( 'Cádiz', 'invoicing' ),
310
-		'S'  => __( 'Cantabria', 'invoicing' ),
311
-		'CS' => __( 'Castellón', 'invoicing' ),
312
-		'CE' => __( 'Ceuta', 'invoicing' ),
313
-		'CR' => __( 'Ciudad Real', 'invoicing' ),
314
-		'CO' => __( 'Córdoba', 'invoicing' ),
315
-		'CU' => __( 'Cuenca', 'invoicing' ),
316
-		'GI' => __( 'Girona', 'invoicing' ),
317
-		'GR' => __( 'Granada', 'invoicing' ),
318
-		'GU' => __( 'Guadalajara', 'invoicing' ),
319
-		'SS' => __( 'Gipuzkoa', 'invoicing' ),
320
-		'H'  => __( 'Huelva', 'invoicing' ),
321
-		'HU' => __( 'Huesca', 'invoicing' ),
322
-		'J'  => __( 'Jaén', 'invoicing' ),
323
-		'LO' => __( 'La Rioja', 'invoicing' ),
324
-		'GC' => __( 'Las Palmas', 'invoicing' ),
325
-		'LE' => __( 'León', 'invoicing' ),
326
-		'L'  => __( 'Lleida', 'invoicing' ),
327
-		'LU' => __( 'Lugo', 'invoicing' ),
328
-		'M'  => __( 'Madrid', 'invoicing' ),
329
-		'MA' => __( 'Málaga', 'invoicing' ),
330
-		'ML' => __( 'Melilla', 'invoicing' ),
331
-		'MU' => __( 'Murcia', 'invoicing' ),
332
-		'NA' => __( 'Navarra', 'invoicing' ),
333
-		'OR' => __( 'Ourense', 'invoicing' ),
334
-		'P'  => __( 'Palencia', 'invoicing' ),
335
-		'PO' => __( 'Pontevedra', 'invoicing' ),
336
-		'SA' => __( 'Salamanca', 'invoicing' ),
337
-		'TF' => __( 'Santa Cruz de Tenerife', 'invoicing' ),
338
-		'SG' => __( 'Segovia', 'invoicing' ),
339
-		'SE' => __( 'Sevilla', 'invoicing' ),
340
-		'SO' => __( 'Soria', 'invoicing' ),
341
-		'T'  => __( 'Tarragona', 'invoicing' ),
342
-		'TE' => __( 'Teruel', 'invoicing' ),
343
-		'TO' => __( 'Toledo', 'invoicing' ),
344
-		'V'  => __( 'Valencia', 'invoicing' ),
345
-		'VA' => __( 'Valladolid', 'invoicing' ),
346
-		'BI' => __( 'Bizkaia', 'invoicing' ),
347
-		'ZA' => __( 'Zamora', 'invoicing' ),
348
-		'Z'  => __( 'Zaragoza', 'invoicing' ),
297
+		'C'  => __('A Coruña', 'invoicing'),
298
+		'VI' => __('Araba/Álava', 'invoicing'),
299
+		'AB' => __('Albacete', 'invoicing'),
300
+		'A'  => __('Alicante', 'invoicing'),
301
+		'AL' => __('Almería', 'invoicing'),
302
+		'O'  => __('Asturias', 'invoicing'),
303
+		'AV' => __('Ávila', 'invoicing'),
304
+		'BA' => __('Badajoz', 'invoicing'),
305
+		'PM' => __('Baleares', 'invoicing'),
306
+		'B'  => __('Barcelona', 'invoicing'),
307
+		'BU' => __('Burgos', 'invoicing'),
308
+		'CC' => __('Cáceres', 'invoicing'),
309
+		'CA' => __('Cádiz', 'invoicing'),
310
+		'S'  => __('Cantabria', 'invoicing'),
311
+		'CS' => __('Castellón', 'invoicing'),
312
+		'CE' => __('Ceuta', 'invoicing'),
313
+		'CR' => __('Ciudad Real', 'invoicing'),
314
+		'CO' => __('Córdoba', 'invoicing'),
315
+		'CU' => __('Cuenca', 'invoicing'),
316
+		'GI' => __('Girona', 'invoicing'),
317
+		'GR' => __('Granada', 'invoicing'),
318
+		'GU' => __('Guadalajara', 'invoicing'),
319
+		'SS' => __('Gipuzkoa', 'invoicing'),
320
+		'H'  => __('Huelva', 'invoicing'),
321
+		'HU' => __('Huesca', 'invoicing'),
322
+		'J'  => __('Jaén', 'invoicing'),
323
+		'LO' => __('La Rioja', 'invoicing'),
324
+		'GC' => __('Las Palmas', 'invoicing'),
325
+		'LE' => __('León', 'invoicing'),
326
+		'L'  => __('Lleida', 'invoicing'),
327
+		'LU' => __('Lugo', 'invoicing'),
328
+		'M'  => __('Madrid', 'invoicing'),
329
+		'MA' => __('Málaga', 'invoicing'),
330
+		'ML' => __('Melilla', 'invoicing'),
331
+		'MU' => __('Murcia', 'invoicing'),
332
+		'NA' => __('Navarra', 'invoicing'),
333
+		'OR' => __('Ourense', 'invoicing'),
334
+		'P'  => __('Palencia', 'invoicing'),
335
+		'PO' => __('Pontevedra', 'invoicing'),
336
+		'SA' => __('Salamanca', 'invoicing'),
337
+		'TF' => __('Santa Cruz de Tenerife', 'invoicing'),
338
+		'SG' => __('Segovia', 'invoicing'),
339
+		'SE' => __('Sevilla', 'invoicing'),
340
+		'SO' => __('Soria', 'invoicing'),
341
+		'T'  => __('Tarragona', 'invoicing'),
342
+		'TE' => __('Teruel', 'invoicing'),
343
+		'TO' => __('Toledo', 'invoicing'),
344
+		'V'  => __('Valencia', 'invoicing'),
345
+		'VA' => __('Valladolid', 'invoicing'),
346
+		'BI' => __('Bizkaia', 'invoicing'),
347
+		'ZA' => __('Zamora', 'invoicing'),
348
+		'Z'  => __('Zaragoza', 'invoicing'),
349 349
 	),
350 350
 	'FI' => array(),
351 351
 	'FR' => array(),
352 352
 	'GP' => array(),
353 353
 	'GR' => array( // Greek Regions.
354
-		'I' => __( 'Αττική', 'invoicing' ),
355
-		'A' => __( 'Ανατολική Μακεδονία και Θράκη', 'invoicing' ),
356
-		'B' => __( 'Κεντρική Μακεδονία', 'invoicing' ),
357
-		'C' => __( 'Δυτική Μακεδονία', 'invoicing' ),
358
-		'D' => __( 'Ήπειρος', 'invoicing' ),
359
-		'E' => __( 'Θεσσαλία', 'invoicing' ),
360
-		'F' => __( 'Ιόνιοι Νήσοι', 'invoicing' ),
361
-		'G' => __( 'Δυτική Ελλάδα', 'invoicing' ),
362
-		'H' => __( 'Στερεά Ελλάδα', 'invoicing' ),
363
-		'J' => __( 'Πελοπόννησος', 'invoicing' ),
364
-		'K' => __( 'Βόρειο Αιγαίο', 'invoicing' ),
365
-		'L' => __( 'Νότιο Αιγαίο', 'invoicing' ),
366
-		'M' => __( 'Κρήτη', 'invoicing' ),
354
+		'I' => __('Αττική', 'invoicing'),
355
+		'A' => __('Ανατολική Μακεδονία και Θράκη', 'invoicing'),
356
+		'B' => __('Κεντρική Μακεδονία', 'invoicing'),
357
+		'C' => __('Δυτική Μακεδονία', 'invoicing'),
358
+		'D' => __('Ήπειρος', 'invoicing'),
359
+		'E' => __('Θεσσαλία', 'invoicing'),
360
+		'F' => __('Ιόνιοι Νήσοι', 'invoicing'),
361
+		'G' => __('Δυτική Ελλάδα', 'invoicing'),
362
+		'H' => __('Στερεά Ελλάδα', 'invoicing'),
363
+		'J' => __('Πελοπόννησος', 'invoicing'),
364
+		'K' => __('Βόρειο Αιγαίο', 'invoicing'),
365
+		'L' => __('Νότιο Αιγαίο', 'invoicing'),
366
+		'M' => __('Κρήτη', 'invoicing'),
367 367
 	),
368 368
 	'GF' => array(),
369 369
 	'HK' => array( // Hong Kong states.
370
-		'HONG KONG'       => __( 'Hong Kong Island', 'invoicing' ),
371
-		'KOWLOON'         => __( 'Kowloon', 'invoicing' ),
372
-		'NEW TERRITORIES' => __( 'New Territories', 'invoicing' ),
370
+		'HONG KONG'       => __('Hong Kong Island', 'invoicing'),
371
+		'KOWLOON'         => __('Kowloon', 'invoicing'),
372
+		'NEW TERRITORIES' => __('New Territories', 'invoicing'),
373 373
 	),
374 374
 	'HU' => array( // Hungary states.
375
-		'BK' => __( 'Bács-Kiskun', 'invoicing' ),
376
-		'BE' => __( 'Békés', 'invoicing' ),
377
-		'BA' => __( 'Baranya', 'invoicing' ),
378
-		'BZ' => __( 'Borsod-Abaúj-Zemplén', 'invoicing' ),
379
-		'BU' => __( 'Budapest', 'invoicing' ),
380
-		'CS' => __( 'Csongrád', 'invoicing' ),
381
-		'FE' => __( 'Fejér', 'invoicing' ),
382
-		'GS' => __( 'Győr-Moson-Sopron', 'invoicing' ),
383
-		'HB' => __( 'Hajdú-Bihar', 'invoicing' ),
384
-		'HE' => __( 'Heves', 'invoicing' ),
385
-		'JN' => __( 'Jász-Nagykun-Szolnok', 'invoicing' ),
386
-		'KE' => __( 'Komárom-Esztergom', 'invoicing' ),
387
-		'NO' => __( 'Nógrád', 'invoicing' ),
388
-		'PE' => __( 'Pest', 'invoicing' ),
389
-		'SO' => __( 'Somogy', 'invoicing' ),
390
-		'SZ' => __( 'Szabolcs-Szatmár-Bereg', 'invoicing' ),
391
-		'TO' => __( 'Tolna', 'invoicing' ),
392
-		'VA' => __( 'Vas', 'invoicing' ),
393
-		'VE' => __( 'Veszprém', 'invoicing' ),
394
-		'ZA' => __( 'Zala', 'invoicing' ),
375
+		'BK' => __('Bács-Kiskun', 'invoicing'),
376
+		'BE' => __('Békés', 'invoicing'),
377
+		'BA' => __('Baranya', 'invoicing'),
378
+		'BZ' => __('Borsod-Abaúj-Zemplén', 'invoicing'),
379
+		'BU' => __('Budapest', 'invoicing'),
380
+		'CS' => __('Csongrád', 'invoicing'),
381
+		'FE' => __('Fejér', 'invoicing'),
382
+		'GS' => __('Győr-Moson-Sopron', 'invoicing'),
383
+		'HB' => __('Hajdú-Bihar', 'invoicing'),
384
+		'HE' => __('Heves', 'invoicing'),
385
+		'JN' => __('Jász-Nagykun-Szolnok', 'invoicing'),
386
+		'KE' => __('Komárom-Esztergom', 'invoicing'),
387
+		'NO' => __('Nógrád', 'invoicing'),
388
+		'PE' => __('Pest', 'invoicing'),
389
+		'SO' => __('Somogy', 'invoicing'),
390
+		'SZ' => __('Szabolcs-Szatmár-Bereg', 'invoicing'),
391
+		'TO' => __('Tolna', 'invoicing'),
392
+		'VA' => __('Vas', 'invoicing'),
393
+		'VE' => __('Veszprém', 'invoicing'),
394
+		'ZA' => __('Zala', 'invoicing'),
395 395
 	),
396 396
 	'ID' => array( // Indonesia Provinces.
397
-		'AC' => __( 'Daerah Istimewa Aceh', 'invoicing' ),
398
-		'SU' => __( 'Sumatera Utara', 'invoicing' ),
399
-		'SB' => __( 'Sumatera Barat', 'invoicing' ),
400
-		'RI' => __( 'Riau', 'invoicing' ),
401
-		'KR' => __( 'Kepulauan Riau', 'invoicing' ),
402
-		'JA' => __( 'Jambi', 'invoicing' ),
403
-		'SS' => __( 'Sumatera Selatan', 'invoicing' ),
404
-		'BB' => __( 'Bangka Belitung', 'invoicing' ),
405
-		'BE' => __( 'Bengkulu', 'invoicing' ),
406
-		'LA' => __( 'Lampung', 'invoicing' ),
407
-		'JK' => __( 'DKI Jakarta', 'invoicing' ),
408
-		'JB' => __( 'Jawa Barat', 'invoicing' ),
409
-		'BT' => __( 'Banten', 'invoicing' ),
410
-		'JT' => __( 'Jawa Tengah', 'invoicing' ),
411
-		'JI' => __( 'Jawa Timur', 'invoicing' ),
412
-		'YO' => __( 'Daerah Istimewa Yogyakarta', 'invoicing' ),
413
-		'BA' => __( 'Bali', 'invoicing' ),
414
-		'NB' => __( 'Nusa Tenggara Barat', 'invoicing' ),
415
-		'NT' => __( 'Nusa Tenggara Timur', 'invoicing' ),
416
-		'KB' => __( 'Kalimantan Barat', 'invoicing' ),
417
-		'KT' => __( 'Kalimantan Tengah', 'invoicing' ),
418
-		'KI' => __( 'Kalimantan Timur', 'invoicing' ),
419
-		'KS' => __( 'Kalimantan Selatan', 'invoicing' ),
420
-		'KU' => __( 'Kalimantan Utara', 'invoicing' ),
421
-		'SA' => __( 'Sulawesi Utara', 'invoicing' ),
422
-		'ST' => __( 'Sulawesi Tengah', 'invoicing' ),
423
-		'SG' => __( 'Sulawesi Tenggara', 'invoicing' ),
424
-		'SR' => __( 'Sulawesi Barat', 'invoicing' ),
425
-		'SN' => __( 'Sulawesi Selatan', 'invoicing' ),
426
-		'GO' => __( 'Gorontalo', 'invoicing' ),
427
-		'MA' => __( 'Maluku', 'invoicing' ),
428
-		'MU' => __( 'Maluku Utara', 'invoicing' ),
429
-		'PA' => __( 'Papua', 'invoicing' ),
430
-		'PB' => __( 'Papua Barat', 'invoicing' ),
397
+		'AC' => __('Daerah Istimewa Aceh', 'invoicing'),
398
+		'SU' => __('Sumatera Utara', 'invoicing'),
399
+		'SB' => __('Sumatera Barat', 'invoicing'),
400
+		'RI' => __('Riau', 'invoicing'),
401
+		'KR' => __('Kepulauan Riau', 'invoicing'),
402
+		'JA' => __('Jambi', 'invoicing'),
403
+		'SS' => __('Sumatera Selatan', 'invoicing'),
404
+		'BB' => __('Bangka Belitung', 'invoicing'),
405
+		'BE' => __('Bengkulu', 'invoicing'),
406
+		'LA' => __('Lampung', 'invoicing'),
407
+		'JK' => __('DKI Jakarta', 'invoicing'),
408
+		'JB' => __('Jawa Barat', 'invoicing'),
409
+		'BT' => __('Banten', 'invoicing'),
410
+		'JT' => __('Jawa Tengah', 'invoicing'),
411
+		'JI' => __('Jawa Timur', 'invoicing'),
412
+		'YO' => __('Daerah Istimewa Yogyakarta', 'invoicing'),
413
+		'BA' => __('Bali', 'invoicing'),
414
+		'NB' => __('Nusa Tenggara Barat', 'invoicing'),
415
+		'NT' => __('Nusa Tenggara Timur', 'invoicing'),
416
+		'KB' => __('Kalimantan Barat', 'invoicing'),
417
+		'KT' => __('Kalimantan Tengah', 'invoicing'),
418
+		'KI' => __('Kalimantan Timur', 'invoicing'),
419
+		'KS' => __('Kalimantan Selatan', 'invoicing'),
420
+		'KU' => __('Kalimantan Utara', 'invoicing'),
421
+		'SA' => __('Sulawesi Utara', 'invoicing'),
422
+		'ST' => __('Sulawesi Tengah', 'invoicing'),
423
+		'SG' => __('Sulawesi Tenggara', 'invoicing'),
424
+		'SR' => __('Sulawesi Barat', 'invoicing'),
425
+		'SN' => __('Sulawesi Selatan', 'invoicing'),
426
+		'GO' => __('Gorontalo', 'invoicing'),
427
+		'MA' => __('Maluku', 'invoicing'),
428
+		'MU' => __('Maluku Utara', 'invoicing'),
429
+		'PA' => __('Papua', 'invoicing'),
430
+		'PB' => __('Papua Barat', 'invoicing'),
431 431
 	),
432 432
 	'IE' => array( // Republic of Ireland.
433
-		'CW' => __( 'Carlow', 'invoicing' ),
434
-		'CN' => __( 'Cavan', 'invoicing' ),
435
-		'CE' => __( 'Clare', 'invoicing' ),
436
-		'CO' => __( 'Cork', 'invoicing' ),
437
-		'DL' => __( 'Donegal', 'invoicing' ),
438
-		'D'  => __( 'Dublin', 'invoicing' ),
439
-		'G'  => __( 'Galway', 'invoicing' ),
440
-		'KY' => __( 'Kerry', 'invoicing' ),
441
-		'KE' => __( 'Kildare', 'invoicing' ),
442
-		'KK' => __( 'Kilkenny', 'invoicing' ),
443
-		'LS' => __( 'Laois', 'invoicing' ),
444
-		'LM' => __( 'Leitrim', 'invoicing' ),
445
-		'LK' => __( 'Limerick', 'invoicing' ),
446
-		'LD' => __( 'Longford', 'invoicing' ),
447
-		'LH' => __( 'Louth', 'invoicing' ),
448
-		'MO' => __( 'Mayo', 'invoicing' ),
449
-		'MH' => __( 'Meath', 'invoicing' ),
450
-		'MN' => __( 'Monaghan', 'invoicing' ),
451
-		'OY' => __( 'Offaly', 'invoicing' ),
452
-		'RN' => __( 'Roscommon', 'invoicing' ),
453
-		'SO' => __( 'Sligo', 'invoicing' ),
454
-		'TA' => __( 'Tipperary', 'invoicing' ),
455
-		'WD' => __( 'Waterford', 'invoicing' ),
456
-		'WH' => __( 'Westmeath', 'invoicing' ),
457
-		'WX' => __( 'Wexford', 'invoicing' ),
458
-		'WW' => __( 'Wicklow', 'invoicing' ),
433
+		'CW' => __('Carlow', 'invoicing'),
434
+		'CN' => __('Cavan', 'invoicing'),
435
+		'CE' => __('Clare', 'invoicing'),
436
+		'CO' => __('Cork', 'invoicing'),
437
+		'DL' => __('Donegal', 'invoicing'),
438
+		'D'  => __('Dublin', 'invoicing'),
439
+		'G'  => __('Galway', 'invoicing'),
440
+		'KY' => __('Kerry', 'invoicing'),
441
+		'KE' => __('Kildare', 'invoicing'),
442
+		'KK' => __('Kilkenny', 'invoicing'),
443
+		'LS' => __('Laois', 'invoicing'),
444
+		'LM' => __('Leitrim', 'invoicing'),
445
+		'LK' => __('Limerick', 'invoicing'),
446
+		'LD' => __('Longford', 'invoicing'),
447
+		'LH' => __('Louth', 'invoicing'),
448
+		'MO' => __('Mayo', 'invoicing'),
449
+		'MH' => __('Meath', 'invoicing'),
450
+		'MN' => __('Monaghan', 'invoicing'),
451
+		'OY' => __('Offaly', 'invoicing'),
452
+		'RN' => __('Roscommon', 'invoicing'),
453
+		'SO' => __('Sligo', 'invoicing'),
454
+		'TA' => __('Tipperary', 'invoicing'),
455
+		'WD' => __('Waterford', 'invoicing'),
456
+		'WH' => __('Westmeath', 'invoicing'),
457
+		'WX' => __('Wexford', 'invoicing'),
458
+		'WW' => __('Wicklow', 'invoicing'),
459 459
 	),
460 460
 	'IN' => array( // Indian states.
461
-		'AP' => __( 'Andhra Pradesh', 'invoicing' ),
462
-		'AR' => __( 'Arunachal Pradesh', 'invoicing' ),
463
-		'AS' => __( 'Assam', 'invoicing' ),
464
-		'BR' => __( 'Bihar', 'invoicing' ),
465
-		'CT' => __( 'Chhattisgarh', 'invoicing' ),
466
-		'GA' => __( 'Goa', 'invoicing' ),
467
-		'GJ' => __( 'Gujarat', 'invoicing' ),
468
-		'HR' => __( 'Haryana', 'invoicing' ),
469
-		'HP' => __( 'Himachal Pradesh', 'invoicing' ),
470
-		'JK' => __( 'Jammu and Kashmir', 'invoicing' ),
471
-		'JH' => __( 'Jharkhand', 'invoicing' ),
472
-		'KA' => __( 'Karnataka', 'invoicing' ),
473
-		'KL' => __( 'Kerala', 'invoicing' ),
474
-		'MP' => __( 'Madhya Pradesh', 'invoicing' ),
475
-		'MH' => __( 'Maharashtra', 'invoicing' ),
476
-		'MN' => __( 'Manipur', 'invoicing' ),
477
-		'ML' => __( 'Meghalaya', 'invoicing' ),
478
-		'MZ' => __( 'Mizoram', 'invoicing' ),
479
-		'NL' => __( 'Nagaland', 'invoicing' ),
480
-		'OR' => __( 'Orissa', 'invoicing' ),
481
-		'PB' => __( 'Punjab', 'invoicing' ),
482
-		'RJ' => __( 'Rajasthan', 'invoicing' ),
483
-		'SK' => __( 'Sikkim', 'invoicing' ),
484
-		'TN' => __( 'Tamil Nadu', 'invoicing' ),
485
-		'TS' => __( 'Telangana', 'invoicing' ),
486
-		'TR' => __( 'Tripura', 'invoicing' ),
487
-		'UK' => __( 'Uttarakhand', 'invoicing' ),
488
-		'UP' => __( 'Uttar Pradesh', 'invoicing' ),
489
-		'WB' => __( 'West Bengal', 'invoicing' ),
490
-		'AN' => __( 'Andaman and Nicobar Islands', 'invoicing' ),
491
-		'CH' => __( 'Chandigarh', 'invoicing' ),
492
-		'DN' => __( 'Dadra and Nagar Haveli', 'invoicing' ),
493
-		'DD' => __( 'Daman and Diu', 'invoicing' ),
494
-		'DL' => __( 'Delhi', 'invoicing' ),
495
-		'LD' => __( 'Lakshadeep', 'invoicing' ),
496
-		'PY' => __( 'Pondicherry (Puducherry)', 'invoicing' ),
461
+		'AP' => __('Andhra Pradesh', 'invoicing'),
462
+		'AR' => __('Arunachal Pradesh', 'invoicing'),
463
+		'AS' => __('Assam', 'invoicing'),
464
+		'BR' => __('Bihar', 'invoicing'),
465
+		'CT' => __('Chhattisgarh', 'invoicing'),
466
+		'GA' => __('Goa', 'invoicing'),
467
+		'GJ' => __('Gujarat', 'invoicing'),
468
+		'HR' => __('Haryana', 'invoicing'),
469
+		'HP' => __('Himachal Pradesh', 'invoicing'),
470
+		'JK' => __('Jammu and Kashmir', 'invoicing'),
471
+		'JH' => __('Jharkhand', 'invoicing'),
472
+		'KA' => __('Karnataka', 'invoicing'),
473
+		'KL' => __('Kerala', 'invoicing'),
474
+		'MP' => __('Madhya Pradesh', 'invoicing'),
475
+		'MH' => __('Maharashtra', 'invoicing'),
476
+		'MN' => __('Manipur', 'invoicing'),
477
+		'ML' => __('Meghalaya', 'invoicing'),
478
+		'MZ' => __('Mizoram', 'invoicing'),
479
+		'NL' => __('Nagaland', 'invoicing'),
480
+		'OR' => __('Orissa', 'invoicing'),
481
+		'PB' => __('Punjab', 'invoicing'),
482
+		'RJ' => __('Rajasthan', 'invoicing'),
483
+		'SK' => __('Sikkim', 'invoicing'),
484
+		'TN' => __('Tamil Nadu', 'invoicing'),
485
+		'TS' => __('Telangana', 'invoicing'),
486
+		'TR' => __('Tripura', 'invoicing'),
487
+		'UK' => __('Uttarakhand', 'invoicing'),
488
+		'UP' => __('Uttar Pradesh', 'invoicing'),
489
+		'WB' => __('West Bengal', 'invoicing'),
490
+		'AN' => __('Andaman and Nicobar Islands', 'invoicing'),
491
+		'CH' => __('Chandigarh', 'invoicing'),
492
+		'DN' => __('Dadra and Nagar Haveli', 'invoicing'),
493
+		'DD' => __('Daman and Diu', 'invoicing'),
494
+		'DL' => __('Delhi', 'invoicing'),
495
+		'LD' => __('Lakshadeep', 'invoicing'),
496
+		'PY' => __('Pondicherry (Puducherry)', 'invoicing'),
497 497
 	),
498 498
 	'IR' => array( // Iran States.
499
-		'KHZ' => __( 'Khuzestan  (خوزستان)', 'invoicing' ),
500
-		'THR' => __( 'Tehran  (تهران)', 'invoicing' ),
501
-		'ILM' => __( 'Ilaam (ایلام)', 'invoicing' ),
502
-		'BHR' => __( 'Bushehr (بوشهر)', 'invoicing' ),
503
-		'ADL' => __( 'Ardabil (اردبیل)', 'invoicing' ),
504
-		'ESF' => __( 'Isfahan (اصفهان)', 'invoicing' ),
505
-		'YZD' => __( 'Yazd (یزد)', 'invoicing' ),
506
-		'KRH' => __( 'Kermanshah (کرمانشاه)', 'invoicing' ),
507
-		'KRN' => __( 'Kerman (کرمان)', 'invoicing' ),
508
-		'HDN' => __( 'Hamadan (همدان)', 'invoicing' ),
509
-		'GZN' => __( 'Ghazvin (قزوین)', 'invoicing' ),
510
-		'ZJN' => __( 'Zanjan (زنجان)', 'invoicing' ),
511
-		'LRS' => __( 'Luristan (لرستان)', 'invoicing' ),
512
-		'ABZ' => __( 'Alborz (البرز)', 'invoicing' ),
513
-		'EAZ' => __( 'East Azarbaijan (آذربایجان شرقی)', 'invoicing' ),
514
-		'WAZ' => __( 'West Azarbaijan (آذربایجان غربی)', 'invoicing' ),
515
-		'CHB' => __( 'Chaharmahal and Bakhtiari (چهارمحال و بختیاری)', 'invoicing' ),
516
-		'SKH' => __( 'South Khorasan (خراسان جنوبی)', 'invoicing' ),
517
-		'RKH' => __( 'Razavi Khorasan (خراسان رضوی)', 'invoicing' ),
518
-		'NKH' => __( 'North Khorasan (خراسان شمالی)', 'invoicing' ),
519
-		'SMN' => __( 'Semnan (سمنان)', 'invoicing' ),
520
-		'FRS' => __( 'Fars (فارس)', 'invoicing' ),
521
-		'QHM' => __( 'Qom (قم)', 'invoicing' ),
522
-		'KRD' => __( 'Kurdistan / کردستان)', 'invoicing' ),
523
-		'KBD' => __( 'Kohgiluyeh and BoyerAhmad (کهگیلوییه و بویراحمد)', 'invoicing' ),
524
-		'GLS' => __( 'Golestan (گلستان)', 'invoicing' ),
525
-		'GIL' => __( 'Gilan (گیلان)', 'invoicing' ),
526
-		'MZN' => __( 'Mazandaran (مازندران)', 'invoicing' ),
527
-		'MKZ' => __( 'Markazi (مرکزی)', 'invoicing' ),
528
-		'HRZ' => __( 'Hormozgan (هرمزگان)', 'invoicing' ),
529
-		'SBN' => __( 'Sistan and Baluchestan (سیستان و بلوچستان)', 'invoicing' ),
499
+		'KHZ' => __('Khuzestan  (خوزستان)', 'invoicing'),
500
+		'THR' => __('Tehran  (تهران)', 'invoicing'),
501
+		'ILM' => __('Ilaam (ایلام)', 'invoicing'),
502
+		'BHR' => __('Bushehr (بوشهر)', 'invoicing'),
503
+		'ADL' => __('Ardabil (اردبیل)', 'invoicing'),
504
+		'ESF' => __('Isfahan (اصفهان)', 'invoicing'),
505
+		'YZD' => __('Yazd (یزد)', 'invoicing'),
506
+		'KRH' => __('Kermanshah (کرمانشاه)', 'invoicing'),
507
+		'KRN' => __('Kerman (کرمان)', 'invoicing'),
508
+		'HDN' => __('Hamadan (همدان)', 'invoicing'),
509
+		'GZN' => __('Ghazvin (قزوین)', 'invoicing'),
510
+		'ZJN' => __('Zanjan (زنجان)', 'invoicing'),
511
+		'LRS' => __('Luristan (لرستان)', 'invoicing'),
512
+		'ABZ' => __('Alborz (البرز)', 'invoicing'),
513
+		'EAZ' => __('East Azarbaijan (آذربایجان شرقی)', 'invoicing'),
514
+		'WAZ' => __('West Azarbaijan (آذربایجان غربی)', 'invoicing'),
515
+		'CHB' => __('Chaharmahal and Bakhtiari (چهارمحال و بختیاری)', 'invoicing'),
516
+		'SKH' => __('South Khorasan (خراسان جنوبی)', 'invoicing'),
517
+		'RKH' => __('Razavi Khorasan (خراسان رضوی)', 'invoicing'),
518
+		'NKH' => __('North Khorasan (خراسان شمالی)', 'invoicing'),
519
+		'SMN' => __('Semnan (سمنان)', 'invoicing'),
520
+		'FRS' => __('Fars (فارس)', 'invoicing'),
521
+		'QHM' => __('Qom (قم)', 'invoicing'),
522
+		'KRD' => __('Kurdistan / کردستان)', 'invoicing'),
523
+		'KBD' => __('Kohgiluyeh and BoyerAhmad (کهگیلوییه و بویراحمد)', 'invoicing'),
524
+		'GLS' => __('Golestan (گلستان)', 'invoicing'),
525
+		'GIL' => __('Gilan (گیلان)', 'invoicing'),
526
+		'MZN' => __('Mazandaran (مازندران)', 'invoicing'),
527
+		'MKZ' => __('Markazi (مرکزی)', 'invoicing'),
528
+		'HRZ' => __('Hormozgan (هرمزگان)', 'invoicing'),
529
+		'SBN' => __('Sistan and Baluchestan (سیستان و بلوچستان)', 'invoicing'),
530 530
 	),
531 531
 	'IS' => array(),
532 532
 	'IT' => array( // Italy Provinces.
533
-		'AG' => __( 'Agrigento', 'invoicing' ),
534
-		'AL' => __( 'Alessandria', 'invoicing' ),
535
-		'AN' => __( 'Ancona', 'invoicing' ),
536
-		'AO' => __( 'Aosta', 'invoicing' ),
537
-		'AR' => __( 'Arezzo', 'invoicing' ),
538
-		'AP' => __( 'Ascoli Piceno', 'invoicing' ),
539
-		'AT' => __( 'Asti', 'invoicing' ),
540
-		'AV' => __( 'Avellino', 'invoicing' ),
541
-		'BA' => __( 'Bari', 'invoicing' ),
542
-		'BT' => __( 'Barletta-Andria-Trani', 'invoicing' ),
543
-		'BL' => __( 'Belluno', 'invoicing' ),
544
-		'BN' => __( 'Benevento', 'invoicing' ),
545
-		'BG' => __( 'Bergamo', 'invoicing' ),
546
-		'BI' => __( 'Biella', 'invoicing' ),
547
-		'BO' => __( 'Bologna', 'invoicing' ),
548
-		'BZ' => __( 'Bolzano', 'invoicing' ),
549
-		'BS' => __( 'Brescia', 'invoicing' ),
550
-		'BR' => __( 'Brindisi', 'invoicing' ),
551
-		'CA' => __( 'Cagliari', 'invoicing' ),
552
-		'CL' => __( 'Caltanissetta', 'invoicing' ),
553
-		'CB' => __( 'Campobasso', 'invoicing' ),
554
-		'CE' => __( 'Caserta', 'invoicing' ),
555
-		'CT' => __( 'Catania', 'invoicing' ),
556
-		'CZ' => __( 'Catanzaro', 'invoicing' ),
557
-		'CH' => __( 'Chieti', 'invoicing' ),
558
-		'CO' => __( 'Como', 'invoicing' ),
559
-		'CS' => __( 'Cosenza', 'invoicing' ),
560
-		'CR' => __( 'Cremona', 'invoicing' ),
561
-		'KR' => __( 'Crotone', 'invoicing' ),
562
-		'CN' => __( 'Cuneo', 'invoicing' ),
563
-		'EN' => __( 'Enna', 'invoicing' ),
564
-		'FM' => __( 'Fermo', 'invoicing' ),
565
-		'FE' => __( 'Ferrara', 'invoicing' ),
566
-		'FI' => __( 'Firenze', 'invoicing' ),
567
-		'FG' => __( 'Foggia', 'invoicing' ),
568
-		'FC' => __( 'Forlì-Cesena', 'invoicing' ),
569
-		'FR' => __( 'Frosinone', 'invoicing' ),
570
-		'GE' => __( 'Genova', 'invoicing' ),
571
-		'GO' => __( 'Gorizia', 'invoicing' ),
572
-		'GR' => __( 'Grosseto', 'invoicing' ),
573
-		'IM' => __( 'Imperia', 'invoicing' ),
574
-		'IS' => __( 'Isernia', 'invoicing' ),
575
-		'SP' => __( 'La Spezia', 'invoicing' ),
576
-		'AQ' => __( "L'Aquila", 'invoicing' ),
577
-		'LT' => __( 'Latina', 'invoicing' ),
578
-		'LE' => __( 'Lecce', 'invoicing' ),
579
-		'LC' => __( 'Lecco', 'invoicing' ),
580
-		'LI' => __( 'Livorno', 'invoicing' ),
581
-		'LO' => __( 'Lodi', 'invoicing' ),
582
-		'LU' => __( 'Lucca', 'invoicing' ),
583
-		'MC' => __( 'Macerata', 'invoicing' ),
584
-		'MN' => __( 'Mantova', 'invoicing' ),
585
-		'MS' => __( 'Massa-Carrara', 'invoicing' ),
586
-		'MT' => __( 'Matera', 'invoicing' ),
587
-		'ME' => __( 'Messina', 'invoicing' ),
588
-		'MI' => __( 'Milano', 'invoicing' ),
589
-		'MO' => __( 'Modena', 'invoicing' ),
590
-		'MB' => __( 'Monza e della Brianza', 'invoicing' ),
591
-		'NA' => __( 'Napoli', 'invoicing' ),
592
-		'NO' => __( 'Novara', 'invoicing' ),
593
-		'NU' => __( 'Nuoro', 'invoicing' ),
594
-		'OR' => __( 'Oristano', 'invoicing' ),
595
-		'PD' => __( 'Padova', 'invoicing' ),
596
-		'PA' => __( 'Palermo', 'invoicing' ),
597
-		'PR' => __( 'Parma', 'invoicing' ),
598
-		'PV' => __( 'Pavia', 'invoicing' ),
599
-		'PG' => __( 'Perugia', 'invoicing' ),
600
-		'PU' => __( 'Pesaro e Urbino', 'invoicing' ),
601
-		'PE' => __( 'Pescara', 'invoicing' ),
602
-		'PC' => __( 'Piacenza', 'invoicing' ),
603
-		'PI' => __( 'Pisa', 'invoicing' ),
604
-		'PT' => __( 'Pistoia', 'invoicing' ),
605
-		'PN' => __( 'Pordenone', 'invoicing' ),
606
-		'PZ' => __( 'Potenza', 'invoicing' ),
607
-		'PO' => __( 'Prato', 'invoicing' ),
608
-		'RG' => __( 'Ragusa', 'invoicing' ),
609
-		'RA' => __( 'Ravenna', 'invoicing' ),
610
-		'RC' => __( 'Reggio Calabria', 'invoicing' ),
611
-		'RE' => __( 'Reggio Emilia', 'invoicing' ),
612
-		'RI' => __( 'Rieti', 'invoicing' ),
613
-		'RN' => __( 'Rimini', 'invoicing' ),
614
-		'RM' => __( 'Roma', 'invoicing' ),
615
-		'RO' => __( 'Rovigo', 'invoicing' ),
616
-		'SA' => __( 'Salerno', 'invoicing' ),
617
-		'SS' => __( 'Sassari', 'invoicing' ),
618
-		'SV' => __( 'Savona', 'invoicing' ),
619
-		'SI' => __( 'Siena', 'invoicing' ),
620
-		'SR' => __( 'Siracusa', 'invoicing' ),
621
-		'SO' => __( 'Sondrio', 'invoicing' ),
622
-		'SU' => __( 'Sud Sardegna', 'invoicing' ),
623
-		'TA' => __( 'Taranto', 'invoicing' ),
624
-		'TE' => __( 'Teramo', 'invoicing' ),
625
-		'TR' => __( 'Terni', 'invoicing' ),
626
-		'TO' => __( 'Torino', 'invoicing' ),
627
-		'TP' => __( 'Trapani', 'invoicing' ),
628
-		'TN' => __( 'Trento', 'invoicing' ),
629
-		'TV' => __( 'Treviso', 'invoicing' ),
630
-		'TS' => __( 'Trieste', 'invoicing' ),
631
-		'UD' => __( 'Udine', 'invoicing' ),
632
-		'VA' => __( 'Varese', 'invoicing' ),
633
-		'VE' => __( 'Venezia', 'invoicing' ),
634
-		'VB' => __( 'Verbano-Cusio-Ossola', 'invoicing' ),
635
-		'VC' => __( 'Vercelli', 'invoicing' ),
636
-		'VR' => __( 'Verona', 'invoicing' ),
637
-		'VV' => __( 'Vibo Valentia', 'invoicing' ),
638
-		'VI' => __( 'Vicenza', 'invoicing' ),
639
-		'VT' => __( 'Viterbo', 'invoicing' ),
533
+		'AG' => __('Agrigento', 'invoicing'),
534
+		'AL' => __('Alessandria', 'invoicing'),
535
+		'AN' => __('Ancona', 'invoicing'),
536
+		'AO' => __('Aosta', 'invoicing'),
537
+		'AR' => __('Arezzo', 'invoicing'),
538
+		'AP' => __('Ascoli Piceno', 'invoicing'),
539
+		'AT' => __('Asti', 'invoicing'),
540
+		'AV' => __('Avellino', 'invoicing'),
541
+		'BA' => __('Bari', 'invoicing'),
542
+		'BT' => __('Barletta-Andria-Trani', 'invoicing'),
543
+		'BL' => __('Belluno', 'invoicing'),
544
+		'BN' => __('Benevento', 'invoicing'),
545
+		'BG' => __('Bergamo', 'invoicing'),
546
+		'BI' => __('Biella', 'invoicing'),
547
+		'BO' => __('Bologna', 'invoicing'),
548
+		'BZ' => __('Bolzano', 'invoicing'),
549
+		'BS' => __('Brescia', 'invoicing'),
550
+		'BR' => __('Brindisi', 'invoicing'),
551
+		'CA' => __('Cagliari', 'invoicing'),
552
+		'CL' => __('Caltanissetta', 'invoicing'),
553
+		'CB' => __('Campobasso', 'invoicing'),
554
+		'CE' => __('Caserta', 'invoicing'),
555
+		'CT' => __('Catania', 'invoicing'),
556
+		'CZ' => __('Catanzaro', 'invoicing'),
557
+		'CH' => __('Chieti', 'invoicing'),
558
+		'CO' => __('Como', 'invoicing'),
559
+		'CS' => __('Cosenza', 'invoicing'),
560
+		'CR' => __('Cremona', 'invoicing'),
561
+		'KR' => __('Crotone', 'invoicing'),
562
+		'CN' => __('Cuneo', 'invoicing'),
563
+		'EN' => __('Enna', 'invoicing'),
564
+		'FM' => __('Fermo', 'invoicing'),
565
+		'FE' => __('Ferrara', 'invoicing'),
566
+		'FI' => __('Firenze', 'invoicing'),
567
+		'FG' => __('Foggia', 'invoicing'),
568
+		'FC' => __('Forlì-Cesena', 'invoicing'),
569
+		'FR' => __('Frosinone', 'invoicing'),
570
+		'GE' => __('Genova', 'invoicing'),
571
+		'GO' => __('Gorizia', 'invoicing'),
572
+		'GR' => __('Grosseto', 'invoicing'),
573
+		'IM' => __('Imperia', 'invoicing'),
574
+		'IS' => __('Isernia', 'invoicing'),
575
+		'SP' => __('La Spezia', 'invoicing'),
576
+		'AQ' => __("L'Aquila", 'invoicing'),
577
+		'LT' => __('Latina', 'invoicing'),
578
+		'LE' => __('Lecce', 'invoicing'),
579
+		'LC' => __('Lecco', 'invoicing'),
580
+		'LI' => __('Livorno', 'invoicing'),
581
+		'LO' => __('Lodi', 'invoicing'),
582
+		'LU' => __('Lucca', 'invoicing'),
583
+		'MC' => __('Macerata', 'invoicing'),
584
+		'MN' => __('Mantova', 'invoicing'),
585
+		'MS' => __('Massa-Carrara', 'invoicing'),
586
+		'MT' => __('Matera', 'invoicing'),
587
+		'ME' => __('Messina', 'invoicing'),
588
+		'MI' => __('Milano', 'invoicing'),
589
+		'MO' => __('Modena', 'invoicing'),
590
+		'MB' => __('Monza e della Brianza', 'invoicing'),
591
+		'NA' => __('Napoli', 'invoicing'),
592
+		'NO' => __('Novara', 'invoicing'),
593
+		'NU' => __('Nuoro', 'invoicing'),
594
+		'OR' => __('Oristano', 'invoicing'),
595
+		'PD' => __('Padova', 'invoicing'),
596
+		'PA' => __('Palermo', 'invoicing'),
597
+		'PR' => __('Parma', 'invoicing'),
598
+		'PV' => __('Pavia', 'invoicing'),
599
+		'PG' => __('Perugia', 'invoicing'),
600
+		'PU' => __('Pesaro e Urbino', 'invoicing'),
601
+		'PE' => __('Pescara', 'invoicing'),
602
+		'PC' => __('Piacenza', 'invoicing'),
603
+		'PI' => __('Pisa', 'invoicing'),
604
+		'PT' => __('Pistoia', 'invoicing'),
605
+		'PN' => __('Pordenone', 'invoicing'),
606
+		'PZ' => __('Potenza', 'invoicing'),
607
+		'PO' => __('Prato', 'invoicing'),
608
+		'RG' => __('Ragusa', 'invoicing'),
609
+		'RA' => __('Ravenna', 'invoicing'),
610
+		'RC' => __('Reggio Calabria', 'invoicing'),
611
+		'RE' => __('Reggio Emilia', 'invoicing'),
612
+		'RI' => __('Rieti', 'invoicing'),
613
+		'RN' => __('Rimini', 'invoicing'),
614
+		'RM' => __('Roma', 'invoicing'),
615
+		'RO' => __('Rovigo', 'invoicing'),
616
+		'SA' => __('Salerno', 'invoicing'),
617
+		'SS' => __('Sassari', 'invoicing'),
618
+		'SV' => __('Savona', 'invoicing'),
619
+		'SI' => __('Siena', 'invoicing'),
620
+		'SR' => __('Siracusa', 'invoicing'),
621
+		'SO' => __('Sondrio', 'invoicing'),
622
+		'SU' => __('Sud Sardegna', 'invoicing'),
623
+		'TA' => __('Taranto', 'invoicing'),
624
+		'TE' => __('Teramo', 'invoicing'),
625
+		'TR' => __('Terni', 'invoicing'),
626
+		'TO' => __('Torino', 'invoicing'),
627
+		'TP' => __('Trapani', 'invoicing'),
628
+		'TN' => __('Trento', 'invoicing'),
629
+		'TV' => __('Treviso', 'invoicing'),
630
+		'TS' => __('Trieste', 'invoicing'),
631
+		'UD' => __('Udine', 'invoicing'),
632
+		'VA' => __('Varese', 'invoicing'),
633
+		'VE' => __('Venezia', 'invoicing'),
634
+		'VB' => __('Verbano-Cusio-Ossola', 'invoicing'),
635
+		'VC' => __('Vercelli', 'invoicing'),
636
+		'VR' => __('Verona', 'invoicing'),
637
+		'VV' => __('Vibo Valentia', 'invoicing'),
638
+		'VI' => __('Vicenza', 'invoicing'),
639
+		'VT' => __('Viterbo', 'invoicing'),
640 640
 	),
641 641
 	'IL' => array(),
642 642
 	'IM' => array(),
@@ -648,903 +648,903 @@  discard block
 block discarded – undo
648 648
 	 * The suffix corresponds with the Japanese translation file.
649 649
 	 */
650 650
 	'JP' => array(
651
-		'JP01' => __( 'Hokkaido', 'invoicing' ),
652
-		'JP02' => __( 'Aomori', 'invoicing' ),
653
-		'JP03' => __( 'Iwate', 'invoicing' ),
654
-		'JP04' => __( 'Miyagi', 'invoicing' ),
655
-		'JP05' => __( 'Akita', 'invoicing' ),
656
-		'JP06' => __( 'Yamagata', 'invoicing' ),
657
-		'JP07' => __( 'Fukushima', 'invoicing' ),
658
-		'JP08' => __( 'Ibaraki', 'invoicing' ),
659
-		'JP09' => __( 'Tochigi', 'invoicing' ),
660
-		'JP10' => __( 'Gunma', 'invoicing' ),
661
-		'JP11' => __( 'Saitama', 'invoicing' ),
662
-		'JP12' => __( 'Chiba', 'invoicing' ),
663
-		'JP13' => __( 'Tokyo', 'invoicing' ),
664
-		'JP14' => __( 'Kanagawa', 'invoicing' ),
665
-		'JP15' => __( 'Niigata', 'invoicing' ),
666
-		'JP16' => __( 'Toyama', 'invoicing' ),
667
-		'JP17' => __( 'Ishikawa', 'invoicing' ),
668
-		'JP18' => __( 'Fukui', 'invoicing' ),
669
-		'JP19' => __( 'Yamanashi', 'invoicing' ),
670
-		'JP20' => __( 'Nagano', 'invoicing' ),
671
-		'JP21' => __( 'Gifu', 'invoicing' ),
672
-		'JP22' => __( 'Shizuoka', 'invoicing' ),
673
-		'JP23' => __( 'Aichi', 'invoicing' ),
674
-		'JP24' => __( 'Mie', 'invoicing' ),
675
-		'JP25' => __( 'Shiga', 'invoicing' ),
676
-		'JP26' => __( 'Kyoto', 'invoicing' ),
677
-		'JP27' => __( 'Osaka', 'invoicing' ),
678
-		'JP28' => __( 'Hyogo', 'invoicing' ),
679
-		'JP29' => __( 'Nara', 'invoicing' ),
680
-		'JP30' => __( 'Wakayama', 'invoicing' ),
681
-		'JP31' => __( 'Tottori', 'invoicing' ),
682
-		'JP32' => __( 'Shimane', 'invoicing' ),
683
-		'JP33' => __( 'Okayama', 'invoicing' ),
684
-		'JP34' => __( 'Hiroshima', 'invoicing' ),
685
-		'JP35' => __( 'Yamaguchi', 'invoicing' ),
686
-		'JP36' => __( 'Tokushima', 'invoicing' ),
687
-		'JP37' => __( 'Kagawa', 'invoicing' ),
688
-		'JP38' => __( 'Ehime', 'invoicing' ),
689
-		'JP39' => __( 'Kochi', 'invoicing' ),
690
-		'JP40' => __( 'Fukuoka', 'invoicing' ),
691
-		'JP41' => __( 'Saga', 'invoicing' ),
692
-		'JP42' => __( 'Nagasaki', 'invoicing' ),
693
-		'JP43' => __( 'Kumamoto', 'invoicing' ),
694
-		'JP44' => __( 'Oita', 'invoicing' ),
695
-		'JP45' => __( 'Miyazaki', 'invoicing' ),
696
-		'JP46' => __( 'Kagoshima', 'invoicing' ),
697
-		'JP47' => __( 'Okinawa', 'invoicing' ),
651
+		'JP01' => __('Hokkaido', 'invoicing'),
652
+		'JP02' => __('Aomori', 'invoicing'),
653
+		'JP03' => __('Iwate', 'invoicing'),
654
+		'JP04' => __('Miyagi', 'invoicing'),
655
+		'JP05' => __('Akita', 'invoicing'),
656
+		'JP06' => __('Yamagata', 'invoicing'),
657
+		'JP07' => __('Fukushima', 'invoicing'),
658
+		'JP08' => __('Ibaraki', 'invoicing'),
659
+		'JP09' => __('Tochigi', 'invoicing'),
660
+		'JP10' => __('Gunma', 'invoicing'),
661
+		'JP11' => __('Saitama', 'invoicing'),
662
+		'JP12' => __('Chiba', 'invoicing'),
663
+		'JP13' => __('Tokyo', 'invoicing'),
664
+		'JP14' => __('Kanagawa', 'invoicing'),
665
+		'JP15' => __('Niigata', 'invoicing'),
666
+		'JP16' => __('Toyama', 'invoicing'),
667
+		'JP17' => __('Ishikawa', 'invoicing'),
668
+		'JP18' => __('Fukui', 'invoicing'),
669
+		'JP19' => __('Yamanashi', 'invoicing'),
670
+		'JP20' => __('Nagano', 'invoicing'),
671
+		'JP21' => __('Gifu', 'invoicing'),
672
+		'JP22' => __('Shizuoka', 'invoicing'),
673
+		'JP23' => __('Aichi', 'invoicing'),
674
+		'JP24' => __('Mie', 'invoicing'),
675
+		'JP25' => __('Shiga', 'invoicing'),
676
+		'JP26' => __('Kyoto', 'invoicing'),
677
+		'JP27' => __('Osaka', 'invoicing'),
678
+		'JP28' => __('Hyogo', 'invoicing'),
679
+		'JP29' => __('Nara', 'invoicing'),
680
+		'JP30' => __('Wakayama', 'invoicing'),
681
+		'JP31' => __('Tottori', 'invoicing'),
682
+		'JP32' => __('Shimane', 'invoicing'),
683
+		'JP33' => __('Okayama', 'invoicing'),
684
+		'JP34' => __('Hiroshima', 'invoicing'),
685
+		'JP35' => __('Yamaguchi', 'invoicing'),
686
+		'JP36' => __('Tokushima', 'invoicing'),
687
+		'JP37' => __('Kagawa', 'invoicing'),
688
+		'JP38' => __('Ehime', 'invoicing'),
689
+		'JP39' => __('Kochi', 'invoicing'),
690
+		'JP40' => __('Fukuoka', 'invoicing'),
691
+		'JP41' => __('Saga', 'invoicing'),
692
+		'JP42' => __('Nagasaki', 'invoicing'),
693
+		'JP43' => __('Kumamoto', 'invoicing'),
694
+		'JP44' => __('Oita', 'invoicing'),
695
+		'JP45' => __('Miyazaki', 'invoicing'),
696
+		'JP46' => __('Kagoshima', 'invoicing'),
697
+		'JP47' => __('Okinawa', 'invoicing'),
698 698
 	),
699 699
 	'KE' => array( // Kenya Counties.
700
-		'1'  => __( 'Mombasa', 'invoicing' ),
701
-		'2'  => __( 'Kwale', 'invoicing' ),
702
-		'3'  => __( 'Kilifi', 'invoicing' ),
703
-		'4'  => __( 'Tana River', 'invoicing' ),
704
-		'5'  => __( 'Lamu', 'invoicing' ),
705
-		'6'  => __( 'Taita-Taveta', 'invoicing' ),
706
-		'7'  => __( 'Garissa', 'invoicing' ),
707
-		'8'  => __( 'Wajir', 'invoicing' ),
708
-		'9'  => __( 'Mandera', 'invoicing' ),
709
-		'10' => __( 'Marsabit', 'invoicing' ),
710
-		'11' => __( 'Isiolo', 'invoicing' ),
711
-		'12' => __( 'Meru', 'invoicing' ),
712
-		'13' => __( 'Tharaka-Nithi', 'invoicing' ),
713
-		'14' => __( 'Embu', 'invoicing' ),
714
-		'15' => __( 'Kitui', 'invoicing' ),
715
-		'16' => __( 'Machakos', 'invoicing' ),
716
-		'17' => __( 'Makueni', 'invoicing' ),
717
-		'18' => __( 'Nyandarua', 'invoicing' ),
718
-		'19' => __( 'Nyeri', 'invoicing' ),
719
-		'20' => __( 'Kirinyaga', 'invoicing' ),
720
-		'21' => __( "Murang'a", 'invoicing' ),
721
-		'22' => __( 'Kiambu', 'invoicing' ),
722
-		'23' => __( 'Turkana', 'invoicing' ),
723
-		'24' => __( 'West Pokot', 'invoicing' ),
724
-		'25' => __( 'Samburu', 'invoicing' ),
725
-		'26' => __( 'Trans-Nzoia', 'invoicing' ),
726
-		'27' => __( 'Uasin Gishu', 'invoicing' ),
727
-		'28' => __( 'Elgeyo-Marakwet', 'invoicing' ),
728
-		'29' => __( 'Nandi', 'invoicing' ),
729
-		'30' => __( 'Baringo', 'invoicing' ),
730
-		'31' => __( 'Laikipia', 'invoicing' ),
731
-		'32' => __( 'Nakuru', 'invoicing' ),
732
-		'33' => __( 'Narok', 'invoicing' ),
733
-		'34' => __( 'Kajiado', 'invoicing' ),
734
-		'35' => __( 'Kericho', 'invoicing' ),
735
-		'36' => __( 'Bomet', 'invoicing' ),
736
-		'37' => __( 'Kakamega', 'invoicing' ),
737
-		'38' => __( 'Vihiga', 'invoicing' ),
738
-		'39' => __( 'Bungoma', 'invoicing' ),
739
-		'40' => __( 'Busia', 'invoicing' ),
740
-		'41' => __( 'Siaya', 'invoicing' ),
741
-		'42' => __( 'Kisumu', 'invoicing' ),
742
-		'43' => __( 'Homa bay', 'invoicing' ),
743
-		'44' => __( 'Migori', 'invoicing' ),
744
-		'45' => __( 'Kisii', 'invoicing' ),
745
-		'46' => __( 'Nyamira', 'invoicing' ),
746
-		'47' => __( 'Nairobi', 'invoicing' ),
700
+		'1'  => __('Mombasa', 'invoicing'),
701
+		'2'  => __('Kwale', 'invoicing'),
702
+		'3'  => __('Kilifi', 'invoicing'),
703
+		'4'  => __('Tana River', 'invoicing'),
704
+		'5'  => __('Lamu', 'invoicing'),
705
+		'6'  => __('Taita-Taveta', 'invoicing'),
706
+		'7'  => __('Garissa', 'invoicing'),
707
+		'8'  => __('Wajir', 'invoicing'),
708
+		'9'  => __('Mandera', 'invoicing'),
709
+		'10' => __('Marsabit', 'invoicing'),
710
+		'11' => __('Isiolo', 'invoicing'),
711
+		'12' => __('Meru', 'invoicing'),
712
+		'13' => __('Tharaka-Nithi', 'invoicing'),
713
+		'14' => __('Embu', 'invoicing'),
714
+		'15' => __('Kitui', 'invoicing'),
715
+		'16' => __('Machakos', 'invoicing'),
716
+		'17' => __('Makueni', 'invoicing'),
717
+		'18' => __('Nyandarua', 'invoicing'),
718
+		'19' => __('Nyeri', 'invoicing'),
719
+		'20' => __('Kirinyaga', 'invoicing'),
720
+		'21' => __("Murang'a", 'invoicing'),
721
+		'22' => __('Kiambu', 'invoicing'),
722
+		'23' => __('Turkana', 'invoicing'),
723
+		'24' => __('West Pokot', 'invoicing'),
724
+		'25' => __('Samburu', 'invoicing'),
725
+		'26' => __('Trans-Nzoia', 'invoicing'),
726
+		'27' => __('Uasin Gishu', 'invoicing'),
727
+		'28' => __('Elgeyo-Marakwet', 'invoicing'),
728
+		'29' => __('Nandi', 'invoicing'),
729
+		'30' => __('Baringo', 'invoicing'),
730
+		'31' => __('Laikipia', 'invoicing'),
731
+		'32' => __('Nakuru', 'invoicing'),
732
+		'33' => __('Narok', 'invoicing'),
733
+		'34' => __('Kajiado', 'invoicing'),
734
+		'35' => __('Kericho', 'invoicing'),
735
+		'36' => __('Bomet', 'invoicing'),
736
+		'37' => __('Kakamega', 'invoicing'),
737
+		'38' => __('Vihiga', 'invoicing'),
738
+		'39' => __('Bungoma', 'invoicing'),
739
+		'40' => __('Busia', 'invoicing'),
740
+		'41' => __('Siaya', 'invoicing'),
741
+		'42' => __('Kisumu', 'invoicing'),
742
+		'43' => __('Homa bay', 'invoicing'),
743
+		'44' => __('Migori', 'invoicing'),
744
+		'45' => __('Kisii', 'invoicing'),
745
+		'46' => __('Nyamira', 'invoicing'),
746
+		'47' => __('Nairobi', 'invoicing'),
747 747
 	),
748 748
 	'KR' => array(),
749 749
 	'KW' => array(),
750 750
 	'LB' => array(),
751 751
 	'LR' => array( // Liberia provinces.
752
-		'BM' => __( 'Bomi', 'invoicing' ),
753
-		'BN' => __( 'Bong', 'invoicing' ),
754
-		'GA' => __( 'Gbarpolu', 'invoicing' ),
755
-		'GB' => __( 'Grand Bassa', 'invoicing' ),
756
-		'GC' => __( 'Grand Cape Mount', 'invoicing' ),
757
-		'GG' => __( 'Grand Gedeh', 'invoicing' ),
758
-		'GK' => __( 'Grand Kru', 'invoicing' ),
759
-		'LO' => __( 'Lofa', 'invoicing' ),
760
-		'MA' => __( 'Margibi', 'invoicing' ),
761
-		'MY' => __( 'Maryland', 'invoicing' ),
762
-		'MO' => __( 'Montserrado', 'invoicing' ),
763
-		'NM' => __( 'Nimba', 'invoicing' ),
764
-		'RV' => __( 'Rivercess', 'invoicing' ),
765
-		'RG' => __( 'River Gee', 'invoicing' ),
766
-		'SN' => __( 'Sinoe', 'invoicing' ),
752
+		'BM' => __('Bomi', 'invoicing'),
753
+		'BN' => __('Bong', 'invoicing'),
754
+		'GA' => __('Gbarpolu', 'invoicing'),
755
+		'GB' => __('Grand Bassa', 'invoicing'),
756
+		'GC' => __('Grand Cape Mount', 'invoicing'),
757
+		'GG' => __('Grand Gedeh', 'invoicing'),
758
+		'GK' => __('Grand Kru', 'invoicing'),
759
+		'LO' => __('Lofa', 'invoicing'),
760
+		'MA' => __('Margibi', 'invoicing'),
761
+		'MY' => __('Maryland', 'invoicing'),
762
+		'MO' => __('Montserrado', 'invoicing'),
763
+		'NM' => __('Nimba', 'invoicing'),
764
+		'RV' => __('Rivercess', 'invoicing'),
765
+		'RG' => __('River Gee', 'invoicing'),
766
+		'SN' => __('Sinoe', 'invoicing'),
767 767
 	),
768 768
 	'LU' => array(),
769 769
 	'MD' => array( // Moldova states.
770
-		'C'  => __( 'Chișinău', 'invoicing' ),
771
-		'BL' => __( 'Bălți', 'invoicing' ),
772
-		'AN' => __( 'Anenii Noi', 'invoicing' ),
773
-		'BS' => __( 'Basarabeasca', 'invoicing' ),
774
-		'BR' => __( 'Briceni', 'invoicing' ),
775
-		'CH' => __( 'Cahul', 'invoicing' ),
776
-		'CT' => __( 'Cantemir', 'invoicing' ),
777
-		'CL' => __( 'Călărași', 'invoicing' ),
778
-		'CS' => __( 'Căușeni', 'invoicing' ),
779
-		'CM' => __( 'Cimișlia', 'invoicing' ),
780
-		'CR' => __( 'Criuleni', 'invoicing' ),
781
-		'DN' => __( 'Dondușeni', 'invoicing' ),
782
-		'DR' => __( 'Drochia', 'invoicing' ),
783
-		'DB' => __( 'Dubăsari', 'invoicing' ),
784
-		'ED' => __( 'Edineț', 'invoicing' ),
785
-		'FL' => __( 'Fălești', 'invoicing' ),
786
-		'FR' => __( 'Florești', 'invoicing' ),
787
-		'GE' => __( 'UTA Găgăuzia', 'invoicing' ),
788
-		'GL' => __( 'Glodeni', 'invoicing' ),
789
-		'HN' => __( 'Hîncești', 'invoicing' ),
790
-		'IL' => __( 'Ialoveni', 'invoicing' ),
791
-		'LV' => __( 'Leova', 'invoicing' ),
792
-		'NS' => __( 'Nisporeni', 'invoicing' ),
793
-		'OC' => __( 'Ocnița', 'invoicing' ),
794
-		'OR' => __( 'Orhei', 'invoicing' ),
795
-		'RZ' => __( 'Rezina', 'invoicing' ),
796
-		'RS' => __( 'Rîșcani', 'invoicing' ),
797
-		'SG' => __( 'Sîngerei', 'invoicing' ),
798
-		'SR' => __( 'Soroca', 'invoicing' ),
799
-		'ST' => __( 'Strășeni', 'invoicing' ),
800
-		'SD' => __( 'Șoldănești', 'invoicing' ),
801
-		'SV' => __( 'Ștefan Vodă', 'invoicing' ),
802
-		'TR' => __( 'Taraclia', 'invoicing' ),
803
-		'TL' => __( 'Telenești', 'invoicing' ),
804
-		'UN' => __( 'Ungheni', 'invoicing' ),
770
+		'C'  => __('Chișinău', 'invoicing'),
771
+		'BL' => __('Bălți', 'invoicing'),
772
+		'AN' => __('Anenii Noi', 'invoicing'),
773
+		'BS' => __('Basarabeasca', 'invoicing'),
774
+		'BR' => __('Briceni', 'invoicing'),
775
+		'CH' => __('Cahul', 'invoicing'),
776
+		'CT' => __('Cantemir', 'invoicing'),
777
+		'CL' => __('Călărași', 'invoicing'),
778
+		'CS' => __('Căușeni', 'invoicing'),
779
+		'CM' => __('Cimișlia', 'invoicing'),
780
+		'CR' => __('Criuleni', 'invoicing'),
781
+		'DN' => __('Dondușeni', 'invoicing'),
782
+		'DR' => __('Drochia', 'invoicing'),
783
+		'DB' => __('Dubăsari', 'invoicing'),
784
+		'ED' => __('Edineț', 'invoicing'),
785
+		'FL' => __('Fălești', 'invoicing'),
786
+		'FR' => __('Florești', 'invoicing'),
787
+		'GE' => __('UTA Găgăuzia', 'invoicing'),
788
+		'GL' => __('Glodeni', 'invoicing'),
789
+		'HN' => __('Hîncești', 'invoicing'),
790
+		'IL' => __('Ialoveni', 'invoicing'),
791
+		'LV' => __('Leova', 'invoicing'),
792
+		'NS' => __('Nisporeni', 'invoicing'),
793
+		'OC' => __('Ocnița', 'invoicing'),
794
+		'OR' => __('Orhei', 'invoicing'),
795
+		'RZ' => __('Rezina', 'invoicing'),
796
+		'RS' => __('Rîșcani', 'invoicing'),
797
+		'SG' => __('Sîngerei', 'invoicing'),
798
+		'SR' => __('Soroca', 'invoicing'),
799
+		'ST' => __('Strășeni', 'invoicing'),
800
+		'SD' => __('Șoldănești', 'invoicing'),
801
+		'SV' => __('Ștefan Vodă', 'invoicing'),
802
+		'TR' => __('Taraclia', 'invoicing'),
803
+		'TL' => __('Telenești', 'invoicing'),
804
+		'UN' => __('Ungheni', 'invoicing'),
805 805
 	),
806 806
 	'MQ' => array(),
807 807
 	'MT' => array(),
808 808
 	'MX' => array( // Mexico States.
809
-		'DF' => __( 'Ciudad de México', 'invoicing' ),
810
-		'JA' => __( 'Jalisco', 'invoicing' ),
811
-		'NL' => __( 'Nuevo León', 'invoicing' ),
812
-		'AG' => __( 'Aguascalientes', 'invoicing' ),
813
-		'BC' => __( 'Baja California', 'invoicing' ),
814
-		'BS' => __( 'Baja California Sur', 'invoicing' ),
815
-		'CM' => __( 'Campeche', 'invoicing' ),
816
-		'CS' => __( 'Chiapas', 'invoicing' ),
817
-		'CH' => __( 'Chihuahua', 'invoicing' ),
818
-		'CO' => __( 'Coahuila', 'invoicing' ),
819
-		'CL' => __( 'Colima', 'invoicing' ),
820
-		'DG' => __( 'Durango', 'invoicing' ),
821
-		'GT' => __( 'Guanajuato', 'invoicing' ),
822
-		'GR' => __( 'Guerrero', 'invoicing' ),
823
-		'HG' => __( 'Hidalgo', 'invoicing' ),
824
-		'MX' => __( 'Estado de México', 'invoicing' ),
825
-		'MI' => __( 'Michoacán', 'invoicing' ),
826
-		'MO' => __( 'Morelos', 'invoicing' ),
827
-		'NA' => __( 'Nayarit', 'invoicing' ),
828
-		'OA' => __( 'Oaxaca', 'invoicing' ),
829
-		'PU' => __( 'Puebla', 'invoicing' ),
830
-		'QT' => __( 'Querétaro', 'invoicing' ),
831
-		'QR' => __( 'Quintana Roo', 'invoicing' ),
832
-		'SL' => __( 'San Luis Potosí', 'invoicing' ),
833
-		'SI' => __( 'Sinaloa', 'invoicing' ),
834
-		'SO' => __( 'Sonora', 'invoicing' ),
835
-		'TB' => __( 'Tabasco', 'invoicing' ),
836
-		'TM' => __( 'Tamaulipas', 'invoicing' ),
837
-		'TL' => __( 'Tlaxcala', 'invoicing' ),
838
-		'VE' => __( 'Veracruz', 'invoicing' ),
839
-		'YU' => __( 'Yucatán', 'invoicing' ),
840
-		'ZA' => __( 'Zacatecas', 'invoicing' ),
809
+		'DF' => __('Ciudad de México', 'invoicing'),
810
+		'JA' => __('Jalisco', 'invoicing'),
811
+		'NL' => __('Nuevo León', 'invoicing'),
812
+		'AG' => __('Aguascalientes', 'invoicing'),
813
+		'BC' => __('Baja California', 'invoicing'),
814
+		'BS' => __('Baja California Sur', 'invoicing'),
815
+		'CM' => __('Campeche', 'invoicing'),
816
+		'CS' => __('Chiapas', 'invoicing'),
817
+		'CH' => __('Chihuahua', 'invoicing'),
818
+		'CO' => __('Coahuila', 'invoicing'),
819
+		'CL' => __('Colima', 'invoicing'),
820
+		'DG' => __('Durango', 'invoicing'),
821
+		'GT' => __('Guanajuato', 'invoicing'),
822
+		'GR' => __('Guerrero', 'invoicing'),
823
+		'HG' => __('Hidalgo', 'invoicing'),
824
+		'MX' => __('Estado de México', 'invoicing'),
825
+		'MI' => __('Michoacán', 'invoicing'),
826
+		'MO' => __('Morelos', 'invoicing'),
827
+		'NA' => __('Nayarit', 'invoicing'),
828
+		'OA' => __('Oaxaca', 'invoicing'),
829
+		'PU' => __('Puebla', 'invoicing'),
830
+		'QT' => __('Querétaro', 'invoicing'),
831
+		'QR' => __('Quintana Roo', 'invoicing'),
832
+		'SL' => __('San Luis Potosí', 'invoicing'),
833
+		'SI' => __('Sinaloa', 'invoicing'),
834
+		'SO' => __('Sonora', 'invoicing'),
835
+		'TB' => __('Tabasco', 'invoicing'),
836
+		'TM' => __('Tamaulipas', 'invoicing'),
837
+		'TL' => __('Tlaxcala', 'invoicing'),
838
+		'VE' => __('Veracruz', 'invoicing'),
839
+		'YU' => __('Yucatán', 'invoicing'),
840
+		'ZA' => __('Zacatecas', 'invoicing'),
841 841
 	),
842 842
 	'MY' => array( // Malaysian states.
843
-		'JHR' => __( 'Johor', 'invoicing' ),
844
-		'KDH' => __( 'Kedah', 'invoicing' ),
845
-		'KTN' => __( 'Kelantan', 'invoicing' ),
846
-		'LBN' => __( 'Labuan', 'invoicing' ),
847
-		'MLK' => __( 'Malacca (Melaka)', 'invoicing' ),
848
-		'NSN' => __( 'Negeri Sembilan', 'invoicing' ),
849
-		'PHG' => __( 'Pahang', 'invoicing' ),
850
-		'PNG' => __( 'Penang (Pulau Pinang)', 'invoicing' ),
851
-		'PRK' => __( 'Perak', 'invoicing' ),
852
-		'PLS' => __( 'Perlis', 'invoicing' ),
853
-		'SBH' => __( 'Sabah', 'invoicing' ),
854
-		'SWK' => __( 'Sarawak', 'invoicing' ),
855
-		'SGR' => __( 'Selangor', 'invoicing' ),
856
-		'TRG' => __( 'Terengganu', 'invoicing' ),
857
-		'PJY' => __( 'Putrajaya', 'invoicing' ),
858
-		'KUL' => __( 'Kuala Lumpur', 'invoicing' ),
843
+		'JHR' => __('Johor', 'invoicing'),
844
+		'KDH' => __('Kedah', 'invoicing'),
845
+		'KTN' => __('Kelantan', 'invoicing'),
846
+		'LBN' => __('Labuan', 'invoicing'),
847
+		'MLK' => __('Malacca (Melaka)', 'invoicing'),
848
+		'NSN' => __('Negeri Sembilan', 'invoicing'),
849
+		'PHG' => __('Pahang', 'invoicing'),
850
+		'PNG' => __('Penang (Pulau Pinang)', 'invoicing'),
851
+		'PRK' => __('Perak', 'invoicing'),
852
+		'PLS' => __('Perlis', 'invoicing'),
853
+		'SBH' => __('Sabah', 'invoicing'),
854
+		'SWK' => __('Sarawak', 'invoicing'),
855
+		'SGR' => __('Selangor', 'invoicing'),
856
+		'TRG' => __('Terengganu', 'invoicing'),
857
+		'PJY' => __('Putrajaya', 'invoicing'),
858
+		'KUL' => __('Kuala Lumpur', 'invoicing'),
859 859
 	),
860 860
 	'NG' => array( // Nigerian provinces.
861
-		'AB' => __( 'Abia', 'invoicing' ),
862
-		'FC' => __( 'Abuja', 'invoicing' ),
863
-		'AD' => __( 'Adamawa', 'invoicing' ),
864
-		'AK' => __( 'Akwa Ibom', 'invoicing' ),
865
-		'AN' => __( 'Anambra', 'invoicing' ),
866
-		'BA' => __( 'Bauchi', 'invoicing' ),
867
-		'BY' => __( 'Bayelsa', 'invoicing' ),
868
-		'BE' => __( 'Benue', 'invoicing' ),
869
-		'BO' => __( 'Borno', 'invoicing' ),
870
-		'CR' => __( 'Cross River', 'invoicing' ),
871
-		'DE' => __( 'Delta', 'invoicing' ),
872
-		'EB' => __( 'Ebonyi', 'invoicing' ),
873
-		'ED' => __( 'Edo', 'invoicing' ),
874
-		'EK' => __( 'Ekiti', 'invoicing' ),
875
-		'EN' => __( 'Enugu', 'invoicing' ),
876
-		'GO' => __( 'Gombe', 'invoicing' ),
877
-		'IM' => __( 'Imo', 'invoicing' ),
878
-		'JI' => __( 'Jigawa', 'invoicing' ),
879
-		'KD' => __( 'Kaduna', 'invoicing' ),
880
-		'KN' => __( 'Kano', 'invoicing' ),
881
-		'KT' => __( 'Katsina', 'invoicing' ),
882
-		'KE' => __( 'Kebbi', 'invoicing' ),
883
-		'KO' => __( 'Kogi', 'invoicing' ),
884
-		'KW' => __( 'Kwara', 'invoicing' ),
885
-		'LA' => __( 'Lagos', 'invoicing' ),
886
-		'NA' => __( 'Nasarawa', 'invoicing' ),
887
-		'NI' => __( 'Niger', 'invoicing' ),
888
-		'OG' => __( 'Ogun', 'invoicing' ),
889
-		'ON' => __( 'Ondo', 'invoicing' ),
890
-		'OS' => __( 'Osun', 'invoicing' ),
891
-		'OY' => __( 'Oyo', 'invoicing' ),
892
-		'PL' => __( 'Plateau', 'invoicing' ),
893
-		'RI' => __( 'Rivers', 'invoicing' ),
894
-		'SO' => __( 'Sokoto', 'invoicing' ),
895
-		'TA' => __( 'Taraba', 'invoicing' ),
896
-		'YO' => __( 'Yobe', 'invoicing' ),
897
-		'ZA' => __( 'Zamfara', 'invoicing' ),
861
+		'AB' => __('Abia', 'invoicing'),
862
+		'FC' => __('Abuja', 'invoicing'),
863
+		'AD' => __('Adamawa', 'invoicing'),
864
+		'AK' => __('Akwa Ibom', 'invoicing'),
865
+		'AN' => __('Anambra', 'invoicing'),
866
+		'BA' => __('Bauchi', 'invoicing'),
867
+		'BY' => __('Bayelsa', 'invoicing'),
868
+		'BE' => __('Benue', 'invoicing'),
869
+		'BO' => __('Borno', 'invoicing'),
870
+		'CR' => __('Cross River', 'invoicing'),
871
+		'DE' => __('Delta', 'invoicing'),
872
+		'EB' => __('Ebonyi', 'invoicing'),
873
+		'ED' => __('Edo', 'invoicing'),
874
+		'EK' => __('Ekiti', 'invoicing'),
875
+		'EN' => __('Enugu', 'invoicing'),
876
+		'GO' => __('Gombe', 'invoicing'),
877
+		'IM' => __('Imo', 'invoicing'),
878
+		'JI' => __('Jigawa', 'invoicing'),
879
+		'KD' => __('Kaduna', 'invoicing'),
880
+		'KN' => __('Kano', 'invoicing'),
881
+		'KT' => __('Katsina', 'invoicing'),
882
+		'KE' => __('Kebbi', 'invoicing'),
883
+		'KO' => __('Kogi', 'invoicing'),
884
+		'KW' => __('Kwara', 'invoicing'),
885
+		'LA' => __('Lagos', 'invoicing'),
886
+		'NA' => __('Nasarawa', 'invoicing'),
887
+		'NI' => __('Niger', 'invoicing'),
888
+		'OG' => __('Ogun', 'invoicing'),
889
+		'ON' => __('Ondo', 'invoicing'),
890
+		'OS' => __('Osun', 'invoicing'),
891
+		'OY' => __('Oyo', 'invoicing'),
892
+		'PL' => __('Plateau', 'invoicing'),
893
+		'RI' => __('Rivers', 'invoicing'),
894
+		'SO' => __('Sokoto', 'invoicing'),
895
+		'TA' => __('Taraba', 'invoicing'),
896
+		'YO' => __('Yobe', 'invoicing'),
897
+		'ZA' => __('Zamfara', 'invoicing'),
898 898
 	),
899 899
 	'NL' => array(),
900 900
 	'NO' => array(),
901 901
 	'NP' => array( // Nepal states (Zones).
902
-		'BAG' => __( 'Bagmati', 'invoicing' ),
903
-		'BHE' => __( 'Bheri', 'invoicing' ),
904
-		'DHA' => __( 'Dhaulagiri', 'invoicing' ),
905
-		'GAN' => __( 'Gandaki', 'invoicing' ),
906
-		'JAN' => __( 'Janakpur', 'invoicing' ),
907
-		'KAR' => __( 'Karnali', 'invoicing' ),
908
-		'KOS' => __( 'Koshi', 'invoicing' ),
909
-		'LUM' => __( 'Lumbini', 'invoicing' ),
910
-		'MAH' => __( 'Mahakali', 'invoicing' ),
911
-		'MEC' => __( 'Mechi', 'invoicing' ),
912
-		'NAR' => __( 'Narayani', 'invoicing' ),
913
-		'RAP' => __( 'Rapti', 'invoicing' ),
914
-		'SAG' => __( 'Sagarmatha', 'invoicing' ),
915
-		'SET' => __( 'Seti', 'invoicing' ),
902
+		'BAG' => __('Bagmati', 'invoicing'),
903
+		'BHE' => __('Bheri', 'invoicing'),
904
+		'DHA' => __('Dhaulagiri', 'invoicing'),
905
+		'GAN' => __('Gandaki', 'invoicing'),
906
+		'JAN' => __('Janakpur', 'invoicing'),
907
+		'KAR' => __('Karnali', 'invoicing'),
908
+		'KOS' => __('Koshi', 'invoicing'),
909
+		'LUM' => __('Lumbini', 'invoicing'),
910
+		'MAH' => __('Mahakali', 'invoicing'),
911
+		'MEC' => __('Mechi', 'invoicing'),
912
+		'NAR' => __('Narayani', 'invoicing'),
913
+		'RAP' => __('Rapti', 'invoicing'),
914
+		'SAG' => __('Sagarmatha', 'invoicing'),
915
+		'SET' => __('Seti', 'invoicing'),
916 916
 	),
917 917
 	'NZ' => array( // New Zealand States.
918
-		'NL' => __( 'Northland', 'invoicing' ),
919
-		'AK' => __( 'Auckland', 'invoicing' ),
920
-		'WA' => __( 'Waikato', 'invoicing' ),
921
-		'BP' => __( 'Bay of Plenty', 'invoicing' ),
922
-		'TK' => __( 'Taranaki', 'invoicing' ),
923
-		'GI' => __( 'Gisborne', 'invoicing' ),
924
-		'HB' => __( 'Hawke’s Bay', 'invoicing' ),
925
-		'MW' => __( 'Manawatu-Wanganui', 'invoicing' ),
926
-		'WE' => __( 'Wellington', 'invoicing' ),
927
-		'NS' => __( 'Nelson', 'invoicing' ),
928
-		'MB' => __( 'Marlborough', 'invoicing' ),
929
-		'TM' => __( 'Tasman', 'invoicing' ),
930
-		'WC' => __( 'West Coast', 'invoicing' ),
931
-		'CT' => __( 'Canterbury', 'invoicing' ),
932
-		'OT' => __( 'Otago', 'invoicing' ),
933
-		'SL' => __( 'Southland', 'invoicing' ),
918
+		'NL' => __('Northland', 'invoicing'),
919
+		'AK' => __('Auckland', 'invoicing'),
920
+		'WA' => __('Waikato', 'invoicing'),
921
+		'BP' => __('Bay of Plenty', 'invoicing'),
922
+		'TK' => __('Taranaki', 'invoicing'),
923
+		'GI' => __('Gisborne', 'invoicing'),
924
+		'HB' => __('Hawke’s Bay', 'invoicing'),
925
+		'MW' => __('Manawatu-Wanganui', 'invoicing'),
926
+		'WE' => __('Wellington', 'invoicing'),
927
+		'NS' => __('Nelson', 'invoicing'),
928
+		'MB' => __('Marlborough', 'invoicing'),
929
+		'TM' => __('Tasman', 'invoicing'),
930
+		'WC' => __('West Coast', 'invoicing'),
931
+		'CT' => __('Canterbury', 'invoicing'),
932
+		'OT' => __('Otago', 'invoicing'),
933
+		'SL' => __('Southland', 'invoicing'),
934 934
 	),
935 935
 	'PE' => array( // Peru states.
936
-		'CAL' => __( 'El Callao', 'invoicing' ),
937
-		'LMA' => __( 'Municipalidad Metropolitana de Lima', 'invoicing' ),
938
-		'AMA' => __( 'Amazonas', 'invoicing' ),
939
-		'ANC' => __( 'Ancash', 'invoicing' ),
940
-		'APU' => __( 'Apurímac', 'invoicing' ),
941
-		'ARE' => __( 'Arequipa', 'invoicing' ),
942
-		'AYA' => __( 'Ayacucho', 'invoicing' ),
943
-		'CAJ' => __( 'Cajamarca', 'invoicing' ),
944
-		'CUS' => __( 'Cusco', 'invoicing' ),
945
-		'HUV' => __( 'Huancavelica', 'invoicing' ),
946
-		'HUC' => __( 'Huánuco', 'invoicing' ),
947
-		'ICA' => __( 'Ica', 'invoicing' ),
948
-		'JUN' => __( 'Junín', 'invoicing' ),
949
-		'LAL' => __( 'La Libertad', 'invoicing' ),
950
-		'LAM' => __( 'Lambayeque', 'invoicing' ),
951
-		'LIM' => __( 'Lima', 'invoicing' ),
952
-		'LOR' => __( 'Loreto', 'invoicing' ),
953
-		'MDD' => __( 'Madre de Dios', 'invoicing' ),
954
-		'MOQ' => __( 'Moquegua', 'invoicing' ),
955
-		'PAS' => __( 'Pasco', 'invoicing' ),
956
-		'PIU' => __( 'Piura', 'invoicing' ),
957
-		'PUN' => __( 'Puno', 'invoicing' ),
958
-		'SAM' => __( 'San Martín', 'invoicing' ),
959
-		'TAC' => __( 'Tacna', 'invoicing' ),
960
-		'TUM' => __( 'Tumbes', 'invoicing' ),
961
-		'UCA' => __( 'Ucayali', 'invoicing' ),
936
+		'CAL' => __('El Callao', 'invoicing'),
937
+		'LMA' => __('Municipalidad Metropolitana de Lima', 'invoicing'),
938
+		'AMA' => __('Amazonas', 'invoicing'),
939
+		'ANC' => __('Ancash', 'invoicing'),
940
+		'APU' => __('Apurímac', 'invoicing'),
941
+		'ARE' => __('Arequipa', 'invoicing'),
942
+		'AYA' => __('Ayacucho', 'invoicing'),
943
+		'CAJ' => __('Cajamarca', 'invoicing'),
944
+		'CUS' => __('Cusco', 'invoicing'),
945
+		'HUV' => __('Huancavelica', 'invoicing'),
946
+		'HUC' => __('Huánuco', 'invoicing'),
947
+		'ICA' => __('Ica', 'invoicing'),
948
+		'JUN' => __('Junín', 'invoicing'),
949
+		'LAL' => __('La Libertad', 'invoicing'),
950
+		'LAM' => __('Lambayeque', 'invoicing'),
951
+		'LIM' => __('Lima', 'invoicing'),
952
+		'LOR' => __('Loreto', 'invoicing'),
953
+		'MDD' => __('Madre de Dios', 'invoicing'),
954
+		'MOQ' => __('Moquegua', 'invoicing'),
955
+		'PAS' => __('Pasco', 'invoicing'),
956
+		'PIU' => __('Piura', 'invoicing'),
957
+		'PUN' => __('Puno', 'invoicing'),
958
+		'SAM' => __('San Martín', 'invoicing'),
959
+		'TAC' => __('Tacna', 'invoicing'),
960
+		'TUM' => __('Tumbes', 'invoicing'),
961
+		'UCA' => __('Ucayali', 'invoicing'),
962 962
 	),
963 963
 
964 964
 	/**
965 965
 	 * Philippine Provinces.
966 966
 	 */
967 967
 	'PH' => array(
968
-		'ABR' => __( 'Abra', 'invoicing' ),
969
-		'AGN' => __( 'Agusan del Norte', 'invoicing' ),
970
-		'AGS' => __( 'Agusan del Sur', 'invoicing' ),
971
-		'AKL' => __( 'Aklan', 'invoicing' ),
972
-		'ALB' => __( 'Albay', 'invoicing' ),
973
-		'ANT' => __( 'Antique', 'invoicing' ),
974
-		'APA' => __( 'Apayao', 'invoicing' ),
975
-		'AUR' => __( 'Aurora', 'invoicing' ),
976
-		'BAS' => __( 'Basilan', 'invoicing' ),
977
-		'BAN' => __( 'Bataan', 'invoicing' ),
978
-		'BTN' => __( 'Batanes', 'invoicing' ),
979
-		'BTG' => __( 'Batangas', 'invoicing' ),
980
-		'BEN' => __( 'Benguet', 'invoicing' ),
981
-		'BIL' => __( 'Biliran', 'invoicing' ),
982
-		'BOH' => __( 'Bohol', 'invoicing' ),
983
-		'BUK' => __( 'Bukidnon', 'invoicing' ),
984
-		'BUL' => __( 'Bulacan', 'invoicing' ),
985
-		'CAG' => __( 'Cagayan', 'invoicing' ),
986
-		'CAN' => __( 'Camarines Norte', 'invoicing' ),
987
-		'CAS' => __( 'Camarines Sur', 'invoicing' ),
988
-		'CAM' => __( 'Camiguin', 'invoicing' ),
989
-		'CAP' => __( 'Capiz', 'invoicing' ),
990
-		'CAT' => __( 'Catanduanes', 'invoicing' ),
991
-		'CAV' => __( 'Cavite', 'invoicing' ),
992
-		'CEB' => __( 'Cebu', 'invoicing' ),
993
-		'COM' => __( 'Compostela Valley', 'invoicing' ),
994
-		'NCO' => __( 'Cotabato', 'invoicing' ),
995
-		'DAV' => __( 'Davao del Norte', 'invoicing' ),
996
-		'DAS' => __( 'Davao del Sur', 'invoicing' ),
997
-		'DAC' => __( 'Davao Occidental', 'invoicing' ),
998
-		'DAO' => __( 'Davao Oriental', 'invoicing' ),
999
-		'DIN' => __( 'Dinagat Islands', 'invoicing' ),
1000
-		'EAS' => __( 'Eastern Samar', 'invoicing' ),
1001
-		'GUI' => __( 'Guimaras', 'invoicing' ),
1002
-		'IFU' => __( 'Ifugao', 'invoicing' ),
1003
-		'ILN' => __( 'Ilocos Norte', 'invoicing' ),
1004
-		'ILS' => __( 'Ilocos Sur', 'invoicing' ),
1005
-		'ILI' => __( 'Iloilo', 'invoicing' ),
1006
-		'ISA' => __( 'Isabela', 'invoicing' ),
1007
-		'KAL' => __( 'Kalinga', 'invoicing' ),
1008
-		'LUN' => __( 'La Union', 'invoicing' ),
1009
-		'LAG' => __( 'Laguna', 'invoicing' ),
1010
-		'LAN' => __( 'Lanao del Norte', 'invoicing' ),
1011
-		'LAS' => __( 'Lanao del Sur', 'invoicing' ),
1012
-		'LEY' => __( 'Leyte', 'invoicing' ),
1013
-		'MAG' => __( 'Maguindanao', 'invoicing' ),
1014
-		'MAD' => __( 'Marinduque', 'invoicing' ),
1015
-		'MAS' => __( 'Masbate', 'invoicing' ),
1016
-		'MSC' => __( 'Misamis Occidental', 'invoicing' ),
1017
-		'MSR' => __( 'Misamis Oriental', 'invoicing' ),
1018
-		'MOU' => __( 'Mountain Province', 'invoicing' ),
1019
-		'NEC' => __( 'Negros Occidental', 'invoicing' ),
1020
-		'NER' => __( 'Negros Oriental', 'invoicing' ),
1021
-		'NSA' => __( 'Northern Samar', 'invoicing' ),
1022
-		'NUE' => __( 'Nueva Ecija', 'invoicing' ),
1023
-		'NUV' => __( 'Nueva Vizcaya', 'invoicing' ),
1024
-		'MDC' => __( 'Occidental Mindoro', 'invoicing' ),
1025
-		'MDR' => __( 'Oriental Mindoro', 'invoicing' ),
1026
-		'PLW' => __( 'Palawan', 'invoicing' ),
1027
-		'PAM' => __( 'Pampanga', 'invoicing' ),
1028
-		'PAN' => __( 'Pangasinan', 'invoicing' ),
1029
-		'QUE' => __( 'Quezon', 'invoicing' ),
1030
-		'QUI' => __( 'Quirino', 'invoicing' ),
1031
-		'RIZ' => __( 'Rizal', 'invoicing' ),
1032
-		'ROM' => __( 'Romblon', 'invoicing' ),
1033
-		'WSA' => __( 'Samar', 'invoicing' ),
1034
-		'SAR' => __( 'Sarangani', 'invoicing' ),
1035
-		'SIQ' => __( 'Siquijor', 'invoicing' ),
1036
-		'SOR' => __( 'Sorsogon', 'invoicing' ),
1037
-		'SCO' => __( 'South Cotabato', 'invoicing' ),
1038
-		'SLE' => __( 'Southern Leyte', 'invoicing' ),
1039
-		'SUK' => __( 'Sultan Kudarat', 'invoicing' ),
1040
-		'SLU' => __( 'Sulu', 'invoicing' ),
1041
-		'SUN' => __( 'Surigao del Norte', 'invoicing' ),
1042
-		'SUR' => __( 'Surigao del Sur', 'invoicing' ),
1043
-		'TAR' => __( 'Tarlac', 'invoicing' ),
1044
-		'TAW' => __( 'Tawi-Tawi', 'invoicing' ),
1045
-		'ZMB' => __( 'Zambales', 'invoicing' ),
1046
-		'ZAN' => __( 'Zamboanga del Norte', 'invoicing' ),
1047
-		'ZAS' => __( 'Zamboanga del Sur', 'invoicing' ),
1048
-		'ZSI' => __( 'Zamboanga Sibugay', 'invoicing' ),
1049
-		'00'  => __( 'Metro Manila', 'invoicing' ),
968
+		'ABR' => __('Abra', 'invoicing'),
969
+		'AGN' => __('Agusan del Norte', 'invoicing'),
970
+		'AGS' => __('Agusan del Sur', 'invoicing'),
971
+		'AKL' => __('Aklan', 'invoicing'),
972
+		'ALB' => __('Albay', 'invoicing'),
973
+		'ANT' => __('Antique', 'invoicing'),
974
+		'APA' => __('Apayao', 'invoicing'),
975
+		'AUR' => __('Aurora', 'invoicing'),
976
+		'BAS' => __('Basilan', 'invoicing'),
977
+		'BAN' => __('Bataan', 'invoicing'),
978
+		'BTN' => __('Batanes', 'invoicing'),
979
+		'BTG' => __('Batangas', 'invoicing'),
980
+		'BEN' => __('Benguet', 'invoicing'),
981
+		'BIL' => __('Biliran', 'invoicing'),
982
+		'BOH' => __('Bohol', 'invoicing'),
983
+		'BUK' => __('Bukidnon', 'invoicing'),
984
+		'BUL' => __('Bulacan', 'invoicing'),
985
+		'CAG' => __('Cagayan', 'invoicing'),
986
+		'CAN' => __('Camarines Norte', 'invoicing'),
987
+		'CAS' => __('Camarines Sur', 'invoicing'),
988
+		'CAM' => __('Camiguin', 'invoicing'),
989
+		'CAP' => __('Capiz', 'invoicing'),
990
+		'CAT' => __('Catanduanes', 'invoicing'),
991
+		'CAV' => __('Cavite', 'invoicing'),
992
+		'CEB' => __('Cebu', 'invoicing'),
993
+		'COM' => __('Compostela Valley', 'invoicing'),
994
+		'NCO' => __('Cotabato', 'invoicing'),
995
+		'DAV' => __('Davao del Norte', 'invoicing'),
996
+		'DAS' => __('Davao del Sur', 'invoicing'),
997
+		'DAC' => __('Davao Occidental', 'invoicing'),
998
+		'DAO' => __('Davao Oriental', 'invoicing'),
999
+		'DIN' => __('Dinagat Islands', 'invoicing'),
1000
+		'EAS' => __('Eastern Samar', 'invoicing'),
1001
+		'GUI' => __('Guimaras', 'invoicing'),
1002
+		'IFU' => __('Ifugao', 'invoicing'),
1003
+		'ILN' => __('Ilocos Norte', 'invoicing'),
1004
+		'ILS' => __('Ilocos Sur', 'invoicing'),
1005
+		'ILI' => __('Iloilo', 'invoicing'),
1006
+		'ISA' => __('Isabela', 'invoicing'),
1007
+		'KAL' => __('Kalinga', 'invoicing'),
1008
+		'LUN' => __('La Union', 'invoicing'),
1009
+		'LAG' => __('Laguna', 'invoicing'),
1010
+		'LAN' => __('Lanao del Norte', 'invoicing'),
1011
+		'LAS' => __('Lanao del Sur', 'invoicing'),
1012
+		'LEY' => __('Leyte', 'invoicing'),
1013
+		'MAG' => __('Maguindanao', 'invoicing'),
1014
+		'MAD' => __('Marinduque', 'invoicing'),
1015
+		'MAS' => __('Masbate', 'invoicing'),
1016
+		'MSC' => __('Misamis Occidental', 'invoicing'),
1017
+		'MSR' => __('Misamis Oriental', 'invoicing'),
1018
+		'MOU' => __('Mountain Province', 'invoicing'),
1019
+		'NEC' => __('Negros Occidental', 'invoicing'),
1020
+		'NER' => __('Negros Oriental', 'invoicing'),
1021
+		'NSA' => __('Northern Samar', 'invoicing'),
1022
+		'NUE' => __('Nueva Ecija', 'invoicing'),
1023
+		'NUV' => __('Nueva Vizcaya', 'invoicing'),
1024
+		'MDC' => __('Occidental Mindoro', 'invoicing'),
1025
+		'MDR' => __('Oriental Mindoro', 'invoicing'),
1026
+		'PLW' => __('Palawan', 'invoicing'),
1027
+		'PAM' => __('Pampanga', 'invoicing'),
1028
+		'PAN' => __('Pangasinan', 'invoicing'),
1029
+		'QUE' => __('Quezon', 'invoicing'),
1030
+		'QUI' => __('Quirino', 'invoicing'),
1031
+		'RIZ' => __('Rizal', 'invoicing'),
1032
+		'ROM' => __('Romblon', 'invoicing'),
1033
+		'WSA' => __('Samar', 'invoicing'),
1034
+		'SAR' => __('Sarangani', 'invoicing'),
1035
+		'SIQ' => __('Siquijor', 'invoicing'),
1036
+		'SOR' => __('Sorsogon', 'invoicing'),
1037
+		'SCO' => __('South Cotabato', 'invoicing'),
1038
+		'SLE' => __('Southern Leyte', 'invoicing'),
1039
+		'SUK' => __('Sultan Kudarat', 'invoicing'),
1040
+		'SLU' => __('Sulu', 'invoicing'),
1041
+		'SUN' => __('Surigao del Norte', 'invoicing'),
1042
+		'SUR' => __('Surigao del Sur', 'invoicing'),
1043
+		'TAR' => __('Tarlac', 'invoicing'),
1044
+		'TAW' => __('Tawi-Tawi', 'invoicing'),
1045
+		'ZMB' => __('Zambales', 'invoicing'),
1046
+		'ZAN' => __('Zamboanga del Norte', 'invoicing'),
1047
+		'ZAS' => __('Zamboanga del Sur', 'invoicing'),
1048
+		'ZSI' => __('Zamboanga Sibugay', 'invoicing'),
1049
+		'00'  => __('Metro Manila', 'invoicing'),
1050 1050
 	),
1051 1051
 	'PK' => array( // Pakistan's states.
1052
-		'JK' => __( 'Azad Kashmir', 'invoicing' ),
1053
-		'BA' => __( 'Balochistan', 'invoicing' ),
1054
-		'TA' => __( 'FATA', 'invoicing' ),
1055
-		'GB' => __( 'Gilgit Baltistan', 'invoicing' ),
1056
-		'IS' => __( 'Islamabad Capital Territory', 'invoicing' ),
1057
-		'KP' => __( 'Khyber Pakhtunkhwa', 'invoicing' ),
1058
-		'PB' => __( 'Punjab', 'invoicing' ),
1059
-		'SD' => __( 'Sindh', 'invoicing' ),
1052
+		'JK' => __('Azad Kashmir', 'invoicing'),
1053
+		'BA' => __('Balochistan', 'invoicing'),
1054
+		'TA' => __('FATA', 'invoicing'),
1055
+		'GB' => __('Gilgit Baltistan', 'invoicing'),
1056
+		'IS' => __('Islamabad Capital Territory', 'invoicing'),
1057
+		'KP' => __('Khyber Pakhtunkhwa', 'invoicing'),
1058
+		'PB' => __('Punjab', 'invoicing'),
1059
+		'SD' => __('Sindh', 'invoicing'),
1060 1060
 	),
1061 1061
 	'PL' => array(),
1062 1062
 	'PT' => array(),
1063 1063
 	'PY' => array( // Paraguay states.
1064
-		'PY-ASU' => __( 'Asunción', 'invoicing' ),
1065
-		'PY-1'   => __( 'Concepción', 'invoicing' ),
1066
-		'PY-2'   => __( 'San Pedro', 'invoicing' ),
1067
-		'PY-3'   => __( 'Cordillera', 'invoicing' ),
1068
-		'PY-4'   => __( 'Guairá', 'invoicing' ),
1069
-		'PY-5'   => __( 'Caaguazú', 'invoicing' ),
1070
-		'PY-6'   => __( 'Caazapá', 'invoicing' ),
1071
-		'PY-7'   => __( 'Itapúa', 'invoicing' ),
1072
-		'PY-8'   => __( 'Misiones', 'invoicing' ),
1073
-		'PY-9'   => __( 'Paraguarí', 'invoicing' ),
1074
-		'PY-10'  => __( 'Alto Paraná', 'invoicing' ),
1075
-		'PY-11'  => __( 'Central', 'invoicing' ),
1076
-		'PY-12'  => __( 'Ñeembucú', 'invoicing' ),
1077
-		'PY-13'  => __( 'Amambay', 'invoicing' ),
1078
-		'PY-14'  => __( 'Canindeyú', 'invoicing' ),
1079
-		'PY-15'  => __( 'Presidente Hayes', 'invoicing' ),
1080
-		'PY-16'  => __( 'Alto Paraguay', 'invoicing' ),
1081
-		'PY-17'  => __( 'Boquerón', 'invoicing' ),
1064
+		'PY-ASU' => __('Asunción', 'invoicing'),
1065
+		'PY-1'   => __('Concepción', 'invoicing'),
1066
+		'PY-2'   => __('San Pedro', 'invoicing'),
1067
+		'PY-3'   => __('Cordillera', 'invoicing'),
1068
+		'PY-4'   => __('Guairá', 'invoicing'),
1069
+		'PY-5'   => __('Caaguazú', 'invoicing'),
1070
+		'PY-6'   => __('Caazapá', 'invoicing'),
1071
+		'PY-7'   => __('Itapúa', 'invoicing'),
1072
+		'PY-8'   => __('Misiones', 'invoicing'),
1073
+		'PY-9'   => __('Paraguarí', 'invoicing'),
1074
+		'PY-10'  => __('Alto Paraná', 'invoicing'),
1075
+		'PY-11'  => __('Central', 'invoicing'),
1076
+		'PY-12'  => __('Ñeembucú', 'invoicing'),
1077
+		'PY-13'  => __('Amambay', 'invoicing'),
1078
+		'PY-14'  => __('Canindeyú', 'invoicing'),
1079
+		'PY-15'  => __('Presidente Hayes', 'invoicing'),
1080
+		'PY-16'  => __('Alto Paraguay', 'invoicing'),
1081
+		'PY-17'  => __('Boquerón', 'invoicing'),
1082 1082
 	),
1083 1083
 	'RE' => array(),
1084 1084
 	'RO' => array( // Romania states.
1085
-		'AB' => __( 'Alba', 'invoicing' ),
1086
-		'AR' => __( 'Arad', 'invoicing' ),
1087
-		'AG' => __( 'Argeș', 'invoicing' ),
1088
-		'BC' => __( 'Bacău', 'invoicing' ),
1089
-		'BH' => __( 'Bihor', 'invoicing' ),
1090
-		'BN' => __( 'Bistrița-Năsăud', 'invoicing' ),
1091
-		'BT' => __( 'Botoșani', 'invoicing' ),
1092
-		'BR' => __( 'Brăila', 'invoicing' ),
1093
-		'BV' => __( 'Brașov', 'invoicing' ),
1094
-		'B'  => __( 'București', 'invoicing' ),
1095
-		'BZ' => __( 'Buzău', 'invoicing' ),
1096
-		'CL' => __( 'Călărași', 'invoicing' ),
1097
-		'CS' => __( 'Caraș-Severin', 'invoicing' ),
1098
-		'CJ' => __( 'Cluj', 'invoicing' ),
1099
-		'CT' => __( 'Constanța', 'invoicing' ),
1100
-		'CV' => __( 'Covasna', 'invoicing' ),
1101
-		'DB' => __( 'Dâmbovița', 'invoicing' ),
1102
-		'DJ' => __( 'Dolj', 'invoicing' ),
1103
-		'GL' => __( 'Galați', 'invoicing' ),
1104
-		'GR' => __( 'Giurgiu', 'invoicing' ),
1105
-		'GJ' => __( 'Gorj', 'invoicing' ),
1106
-		'HR' => __( 'Harghita', 'invoicing' ),
1107
-		'HD' => __( 'Hunedoara', 'invoicing' ),
1108
-		'IL' => __( 'Ialomița', 'invoicing' ),
1109
-		'IS' => __( 'Iași', 'invoicing' ),
1110
-		'IF' => __( 'Ilfov', 'invoicing' ),
1111
-		'MM' => __( 'Maramureș', 'invoicing' ),
1112
-		'MH' => __( 'Mehedinți', 'invoicing' ),
1113
-		'MS' => __( 'Mureș', 'invoicing' ),
1114
-		'NT' => __( 'Neamț', 'invoicing' ),
1115
-		'OT' => __( 'Olt', 'invoicing' ),
1116
-		'PH' => __( 'Prahova', 'invoicing' ),
1117
-		'SJ' => __( 'Sălaj', 'invoicing' ),
1118
-		'SM' => __( 'Satu Mare', 'invoicing' ),
1119
-		'SB' => __( 'Sibiu', 'invoicing' ),
1120
-		'SV' => __( 'Suceava', 'invoicing' ),
1121
-		'TR' => __( 'Teleorman', 'invoicing' ),
1122
-		'TM' => __( 'Timiș', 'invoicing' ),
1123
-		'TL' => __( 'Tulcea', 'invoicing' ),
1124
-		'VL' => __( 'Vâlcea', 'invoicing' ),
1125
-		'VS' => __( 'Vaslui', 'invoicing' ),
1126
-		'VN' => __( 'Vrancea', 'invoicing' ),
1085
+		'AB' => __('Alba', 'invoicing'),
1086
+		'AR' => __('Arad', 'invoicing'),
1087
+		'AG' => __('Argeș', 'invoicing'),
1088
+		'BC' => __('Bacău', 'invoicing'),
1089
+		'BH' => __('Bihor', 'invoicing'),
1090
+		'BN' => __('Bistrița-Năsăud', 'invoicing'),
1091
+		'BT' => __('Botoșani', 'invoicing'),
1092
+		'BR' => __('Brăila', 'invoicing'),
1093
+		'BV' => __('Brașov', 'invoicing'),
1094
+		'B'  => __('București', 'invoicing'),
1095
+		'BZ' => __('Buzău', 'invoicing'),
1096
+		'CL' => __('Călărași', 'invoicing'),
1097
+		'CS' => __('Caraș-Severin', 'invoicing'),
1098
+		'CJ' => __('Cluj', 'invoicing'),
1099
+		'CT' => __('Constanța', 'invoicing'),
1100
+		'CV' => __('Covasna', 'invoicing'),
1101
+		'DB' => __('Dâmbovița', 'invoicing'),
1102
+		'DJ' => __('Dolj', 'invoicing'),
1103
+		'GL' => __('Galați', 'invoicing'),
1104
+		'GR' => __('Giurgiu', 'invoicing'),
1105
+		'GJ' => __('Gorj', 'invoicing'),
1106
+		'HR' => __('Harghita', 'invoicing'),
1107
+		'HD' => __('Hunedoara', 'invoicing'),
1108
+		'IL' => __('Ialomița', 'invoicing'),
1109
+		'IS' => __('Iași', 'invoicing'),
1110
+		'IF' => __('Ilfov', 'invoicing'),
1111
+		'MM' => __('Maramureș', 'invoicing'),
1112
+		'MH' => __('Mehedinți', 'invoicing'),
1113
+		'MS' => __('Mureș', 'invoicing'),
1114
+		'NT' => __('Neamț', 'invoicing'),
1115
+		'OT' => __('Olt', 'invoicing'),
1116
+		'PH' => __('Prahova', 'invoicing'),
1117
+		'SJ' => __('Sălaj', 'invoicing'),
1118
+		'SM' => __('Satu Mare', 'invoicing'),
1119
+		'SB' => __('Sibiu', 'invoicing'),
1120
+		'SV' => __('Suceava', 'invoicing'),
1121
+		'TR' => __('Teleorman', 'invoicing'),
1122
+		'TM' => __('Timiș', 'invoicing'),
1123
+		'TL' => __('Tulcea', 'invoicing'),
1124
+		'VL' => __('Vâlcea', 'invoicing'),
1125
+		'VS' => __('Vaslui', 'invoicing'),
1126
+		'VN' => __('Vrancea', 'invoicing'),
1127 1127
 	),
1128 1128
 	'RS' => array(),
1129 1129
 	'SG' => array(),
1130 1130
 	'SK' => array(),
1131 1131
 	'SI' => array(),
1132 1132
 	'TH' => array( // Thailand states.
1133
-		'TH-37' => __( 'Amnat Charoen', 'invoicing' ),
1134
-		'TH-15' => __( 'Ang Thong', 'invoicing' ),
1135
-		'TH-14' => __( 'Ayutthaya', 'invoicing' ),
1136
-		'TH-10' => __( 'Bangkok', 'invoicing' ),
1137
-		'TH-38' => __( 'Bueng Kan', 'invoicing' ),
1138
-		'TH-31' => __( 'Buri Ram', 'invoicing' ),
1139
-		'TH-24' => __( 'Chachoengsao', 'invoicing' ),
1140
-		'TH-18' => __( 'Chai Nat', 'invoicing' ),
1141
-		'TH-36' => __( 'Chaiyaphum', 'invoicing' ),
1142
-		'TH-22' => __( 'Chanthaburi', 'invoicing' ),
1143
-		'TH-50' => __( 'Chiang Mai', 'invoicing' ),
1144
-		'TH-57' => __( 'Chiang Rai', 'invoicing' ),
1145
-		'TH-20' => __( 'Chonburi', 'invoicing' ),
1146
-		'TH-86' => __( 'Chumphon', 'invoicing' ),
1147
-		'TH-46' => __( 'Kalasin', 'invoicing' ),
1148
-		'TH-62' => __( 'Kamphaeng Phet', 'invoicing' ),
1149
-		'TH-71' => __( 'Kanchanaburi', 'invoicing' ),
1150
-		'TH-40' => __( 'Khon Kaen', 'invoicing' ),
1151
-		'TH-81' => __( 'Krabi', 'invoicing' ),
1152
-		'TH-52' => __( 'Lampang', 'invoicing' ),
1153
-		'TH-51' => __( 'Lamphun', 'invoicing' ),
1154
-		'TH-42' => __( 'Loei', 'invoicing' ),
1155
-		'TH-16' => __( 'Lopburi', 'invoicing' ),
1156
-		'TH-58' => __( 'Mae Hong Son', 'invoicing' ),
1157
-		'TH-44' => __( 'Maha Sarakham', 'invoicing' ),
1158
-		'TH-49' => __( 'Mukdahan', 'invoicing' ),
1159
-		'TH-26' => __( 'Nakhon Nayok', 'invoicing' ),
1160
-		'TH-73' => __( 'Nakhon Pathom', 'invoicing' ),
1161
-		'TH-48' => __( 'Nakhon Phanom', 'invoicing' ),
1162
-		'TH-30' => __( 'Nakhon Ratchasima', 'invoicing' ),
1163
-		'TH-60' => __( 'Nakhon Sawan', 'invoicing' ),
1164
-		'TH-80' => __( 'Nakhon Si Thammarat', 'invoicing' ),
1165
-		'TH-55' => __( 'Nan', 'invoicing' ),
1166
-		'TH-96' => __( 'Narathiwat', 'invoicing' ),
1167
-		'TH-39' => __( 'Nong Bua Lam Phu', 'invoicing' ),
1168
-		'TH-43' => __( 'Nong Khai', 'invoicing' ),
1169
-		'TH-12' => __( 'Nonthaburi', 'invoicing' ),
1170
-		'TH-13' => __( 'Pathum Thani', 'invoicing' ),
1171
-		'TH-94' => __( 'Pattani', 'invoicing' ),
1172
-		'TH-82' => __( 'Phang Nga', 'invoicing' ),
1173
-		'TH-93' => __( 'Phatthalung', 'invoicing' ),
1174
-		'TH-56' => __( 'Phayao', 'invoicing' ),
1175
-		'TH-67' => __( 'Phetchabun', 'invoicing' ),
1176
-		'TH-76' => __( 'Phetchaburi', 'invoicing' ),
1177
-		'TH-66' => __( 'Phichit', 'invoicing' ),
1178
-		'TH-65' => __( 'Phitsanulok', 'invoicing' ),
1179
-		'TH-54' => __( 'Phrae', 'invoicing' ),
1180
-		'TH-83' => __( 'Phuket', 'invoicing' ),
1181
-		'TH-25' => __( 'Prachin Buri', 'invoicing' ),
1182
-		'TH-77' => __( 'Prachuap Khiri Khan', 'invoicing' ),
1183
-		'TH-85' => __( 'Ranong', 'invoicing' ),
1184
-		'TH-70' => __( 'Ratchaburi', 'invoicing' ),
1185
-		'TH-21' => __( 'Rayong', 'invoicing' ),
1186
-		'TH-45' => __( 'Roi Et', 'invoicing' ),
1187
-		'TH-27' => __( 'Sa Kaeo', 'invoicing' ),
1188
-		'TH-47' => __( 'Sakon Nakhon', 'invoicing' ),
1189
-		'TH-11' => __( 'Samut Prakan', 'invoicing' ),
1190
-		'TH-74' => __( 'Samut Sakhon', 'invoicing' ),
1191
-		'TH-75' => __( 'Samut Songkhram', 'invoicing' ),
1192
-		'TH-19' => __( 'Saraburi', 'invoicing' ),
1193
-		'TH-91' => __( 'Satun', 'invoicing' ),
1194
-		'TH-17' => __( 'Sing Buri', 'invoicing' ),
1195
-		'TH-33' => __( 'Sisaket', 'invoicing' ),
1196
-		'TH-90' => __( 'Songkhla', 'invoicing' ),
1197
-		'TH-64' => __( 'Sukhothai', 'invoicing' ),
1198
-		'TH-72' => __( 'Suphan Buri', 'invoicing' ),
1199
-		'TH-84' => __( 'Surat Thani', 'invoicing' ),
1200
-		'TH-32' => __( 'Surin', 'invoicing' ),
1201
-		'TH-63' => __( 'Tak', 'invoicing' ),
1202
-		'TH-92' => __( 'Trang', 'invoicing' ),
1203
-		'TH-23' => __( 'Trat', 'invoicing' ),
1204
-		'TH-34' => __( 'Ubon Ratchathani', 'invoicing' ),
1205
-		'TH-41' => __( 'Udon Thani', 'invoicing' ),
1206
-		'TH-61' => __( 'Uthai Thani', 'invoicing' ),
1207
-		'TH-53' => __( 'Uttaradit', 'invoicing' ),
1208
-		'TH-95' => __( 'Yala', 'invoicing' ),
1209
-		'TH-35' => __( 'Yasothon', 'invoicing' ),
1133
+		'TH-37' => __('Amnat Charoen', 'invoicing'),
1134
+		'TH-15' => __('Ang Thong', 'invoicing'),
1135
+		'TH-14' => __('Ayutthaya', 'invoicing'),
1136
+		'TH-10' => __('Bangkok', 'invoicing'),
1137
+		'TH-38' => __('Bueng Kan', 'invoicing'),
1138
+		'TH-31' => __('Buri Ram', 'invoicing'),
1139
+		'TH-24' => __('Chachoengsao', 'invoicing'),
1140
+		'TH-18' => __('Chai Nat', 'invoicing'),
1141
+		'TH-36' => __('Chaiyaphum', 'invoicing'),
1142
+		'TH-22' => __('Chanthaburi', 'invoicing'),
1143
+		'TH-50' => __('Chiang Mai', 'invoicing'),
1144
+		'TH-57' => __('Chiang Rai', 'invoicing'),
1145
+		'TH-20' => __('Chonburi', 'invoicing'),
1146
+		'TH-86' => __('Chumphon', 'invoicing'),
1147
+		'TH-46' => __('Kalasin', 'invoicing'),
1148
+		'TH-62' => __('Kamphaeng Phet', 'invoicing'),
1149
+		'TH-71' => __('Kanchanaburi', 'invoicing'),
1150
+		'TH-40' => __('Khon Kaen', 'invoicing'),
1151
+		'TH-81' => __('Krabi', 'invoicing'),
1152
+		'TH-52' => __('Lampang', 'invoicing'),
1153
+		'TH-51' => __('Lamphun', 'invoicing'),
1154
+		'TH-42' => __('Loei', 'invoicing'),
1155
+		'TH-16' => __('Lopburi', 'invoicing'),
1156
+		'TH-58' => __('Mae Hong Son', 'invoicing'),
1157
+		'TH-44' => __('Maha Sarakham', 'invoicing'),
1158
+		'TH-49' => __('Mukdahan', 'invoicing'),
1159
+		'TH-26' => __('Nakhon Nayok', 'invoicing'),
1160
+		'TH-73' => __('Nakhon Pathom', 'invoicing'),
1161
+		'TH-48' => __('Nakhon Phanom', 'invoicing'),
1162
+		'TH-30' => __('Nakhon Ratchasima', 'invoicing'),
1163
+		'TH-60' => __('Nakhon Sawan', 'invoicing'),
1164
+		'TH-80' => __('Nakhon Si Thammarat', 'invoicing'),
1165
+		'TH-55' => __('Nan', 'invoicing'),
1166
+		'TH-96' => __('Narathiwat', 'invoicing'),
1167
+		'TH-39' => __('Nong Bua Lam Phu', 'invoicing'),
1168
+		'TH-43' => __('Nong Khai', 'invoicing'),
1169
+		'TH-12' => __('Nonthaburi', 'invoicing'),
1170
+		'TH-13' => __('Pathum Thani', 'invoicing'),
1171
+		'TH-94' => __('Pattani', 'invoicing'),
1172
+		'TH-82' => __('Phang Nga', 'invoicing'),
1173
+		'TH-93' => __('Phatthalung', 'invoicing'),
1174
+		'TH-56' => __('Phayao', 'invoicing'),
1175
+		'TH-67' => __('Phetchabun', 'invoicing'),
1176
+		'TH-76' => __('Phetchaburi', 'invoicing'),
1177
+		'TH-66' => __('Phichit', 'invoicing'),
1178
+		'TH-65' => __('Phitsanulok', 'invoicing'),
1179
+		'TH-54' => __('Phrae', 'invoicing'),
1180
+		'TH-83' => __('Phuket', 'invoicing'),
1181
+		'TH-25' => __('Prachin Buri', 'invoicing'),
1182
+		'TH-77' => __('Prachuap Khiri Khan', 'invoicing'),
1183
+		'TH-85' => __('Ranong', 'invoicing'),
1184
+		'TH-70' => __('Ratchaburi', 'invoicing'),
1185
+		'TH-21' => __('Rayong', 'invoicing'),
1186
+		'TH-45' => __('Roi Et', 'invoicing'),
1187
+		'TH-27' => __('Sa Kaeo', 'invoicing'),
1188
+		'TH-47' => __('Sakon Nakhon', 'invoicing'),
1189
+		'TH-11' => __('Samut Prakan', 'invoicing'),
1190
+		'TH-74' => __('Samut Sakhon', 'invoicing'),
1191
+		'TH-75' => __('Samut Songkhram', 'invoicing'),
1192
+		'TH-19' => __('Saraburi', 'invoicing'),
1193
+		'TH-91' => __('Satun', 'invoicing'),
1194
+		'TH-17' => __('Sing Buri', 'invoicing'),
1195
+		'TH-33' => __('Sisaket', 'invoicing'),
1196
+		'TH-90' => __('Songkhla', 'invoicing'),
1197
+		'TH-64' => __('Sukhothai', 'invoicing'),
1198
+		'TH-72' => __('Suphan Buri', 'invoicing'),
1199
+		'TH-84' => __('Surat Thani', 'invoicing'),
1200
+		'TH-32' => __('Surin', 'invoicing'),
1201
+		'TH-63' => __('Tak', 'invoicing'),
1202
+		'TH-92' => __('Trang', 'invoicing'),
1203
+		'TH-23' => __('Trat', 'invoicing'),
1204
+		'TH-34' => __('Ubon Ratchathani', 'invoicing'),
1205
+		'TH-41' => __('Udon Thani', 'invoicing'),
1206
+		'TH-61' => __('Uthai Thani', 'invoicing'),
1207
+		'TH-53' => __('Uttaradit', 'invoicing'),
1208
+		'TH-95' => __('Yala', 'invoicing'),
1209
+		'TH-35' => __('Yasothon', 'invoicing'),
1210 1210
 	),
1211 1211
 	'TR' => array( // Turkey States.
1212
-		'TR01' => __( 'Adana', 'invoicing' ),
1213
-		'TR02' => __( 'Adıyaman', 'invoicing' ),
1214
-		'TR03' => __( 'Afyon', 'invoicing' ),
1215
-		'TR04' => __( 'Ağrı', 'invoicing' ),
1216
-		'TR05' => __( 'Amasya', 'invoicing' ),
1217
-		'TR06' => __( 'Ankara', 'invoicing' ),
1218
-		'TR07' => __( 'Antalya', 'invoicing' ),
1219
-		'TR08' => __( 'Artvin', 'invoicing' ),
1220
-		'TR09' => __( 'Aydın', 'invoicing' ),
1221
-		'TR10' => __( 'Balıkesir', 'invoicing' ),
1222
-		'TR11' => __( 'Bilecik', 'invoicing' ),
1223
-		'TR12' => __( 'Bingöl', 'invoicing' ),
1224
-		'TR13' => __( 'Bitlis', 'invoicing' ),
1225
-		'TR14' => __( 'Bolu', 'invoicing' ),
1226
-		'TR15' => __( 'Burdur', 'invoicing' ),
1227
-		'TR16' => __( 'Bursa', 'invoicing' ),
1228
-		'TR17' => __( 'Çanakkale', 'invoicing' ),
1229
-		'TR18' => __( 'Çankırı', 'invoicing' ),
1230
-		'TR19' => __( 'Çorum', 'invoicing' ),
1231
-		'TR20' => __( 'Denizli', 'invoicing' ),
1232
-		'TR21' => __( 'Diyarbakır', 'invoicing' ),
1233
-		'TR22' => __( 'Edirne', 'invoicing' ),
1234
-		'TR23' => __( 'Elazığ', 'invoicing' ),
1235
-		'TR24' => __( 'Erzincan', 'invoicing' ),
1236
-		'TR25' => __( 'Erzurum', 'invoicing' ),
1237
-		'TR26' => __( 'Eskişehir', 'invoicing' ),
1238
-		'TR27' => __( 'Gaziantep', 'invoicing' ),
1239
-		'TR28' => __( 'Giresun', 'invoicing' ),
1240
-		'TR29' => __( 'Gümüşhane', 'invoicing' ),
1241
-		'TR30' => __( 'Hakkari', 'invoicing' ),
1242
-		'TR31' => __( 'Hatay', 'invoicing' ),
1243
-		'TR32' => __( 'Isparta', 'invoicing' ),
1244
-		'TR33' => __( 'İçel', 'invoicing' ),
1245
-		'TR34' => __( 'İstanbul', 'invoicing' ),
1246
-		'TR35' => __( 'İzmir', 'invoicing' ),
1247
-		'TR36' => __( 'Kars', 'invoicing' ),
1248
-		'TR37' => __( 'Kastamonu', 'invoicing' ),
1249
-		'TR38' => __( 'Kayseri', 'invoicing' ),
1250
-		'TR39' => __( 'Kırklareli', 'invoicing' ),
1251
-		'TR40' => __( 'Kırşehir', 'invoicing' ),
1252
-		'TR41' => __( 'Kocaeli', 'invoicing' ),
1253
-		'TR42' => __( 'Konya', 'invoicing' ),
1254
-		'TR43' => __( 'Kütahya', 'invoicing' ),
1255
-		'TR44' => __( 'Malatya', 'invoicing' ),
1256
-		'TR45' => __( 'Manisa', 'invoicing' ),
1257
-		'TR46' => __( 'Kahramanmaraş', 'invoicing' ),
1258
-		'TR47' => __( 'Mardin', 'invoicing' ),
1259
-		'TR48' => __( 'Muğla', 'invoicing' ),
1260
-		'TR49' => __( 'Muş', 'invoicing' ),
1261
-		'TR50' => __( 'Nevşehir', 'invoicing' ),
1262
-		'TR51' => __( 'Niğde', 'invoicing' ),
1263
-		'TR52' => __( 'Ordu', 'invoicing' ),
1264
-		'TR53' => __( 'Rize', 'invoicing' ),
1265
-		'TR54' => __( 'Sakarya', 'invoicing' ),
1266
-		'TR55' => __( 'Samsun', 'invoicing' ),
1267
-		'TR56' => __( 'Siirt', 'invoicing' ),
1268
-		'TR57' => __( 'Sinop', 'invoicing' ),
1269
-		'TR58' => __( 'Sivas', 'invoicing' ),
1270
-		'TR59' => __( 'Tekirdağ', 'invoicing' ),
1271
-		'TR60' => __( 'Tokat', 'invoicing' ),
1272
-		'TR61' => __( 'Trabzon', 'invoicing' ),
1273
-		'TR62' => __( 'Tunceli', 'invoicing' ),
1274
-		'TR63' => __( 'Şanlıurfa', 'invoicing' ),
1275
-		'TR64' => __( 'Uşak', 'invoicing' ),
1276
-		'TR65' => __( 'Van', 'invoicing' ),
1277
-		'TR66' => __( 'Yozgat', 'invoicing' ),
1278
-		'TR67' => __( 'Zonguldak', 'invoicing' ),
1279
-		'TR68' => __( 'Aksaray', 'invoicing' ),
1280
-		'TR69' => __( 'Bayburt', 'invoicing' ),
1281
-		'TR70' => __( 'Karaman', 'invoicing' ),
1282
-		'TR71' => __( 'Kırıkkale', 'invoicing' ),
1283
-		'TR72' => __( 'Batman', 'invoicing' ),
1284
-		'TR73' => __( 'Şırnak', 'invoicing' ),
1285
-		'TR74' => __( 'Bartın', 'invoicing' ),
1286
-		'TR75' => __( 'Ardahan', 'invoicing' ),
1287
-		'TR76' => __( 'Iğdır', 'invoicing' ),
1288
-		'TR77' => __( 'Yalova', 'invoicing' ),
1289
-		'TR78' => __( 'Karabük', 'invoicing' ),
1290
-		'TR79' => __( 'Kilis', 'invoicing' ),
1291
-		'TR80' => __( 'Osmaniye', 'invoicing' ),
1292
-		'TR81' => __( 'Düzce', 'invoicing' ),
1212
+		'TR01' => __('Adana', 'invoicing'),
1213
+		'TR02' => __('Adıyaman', 'invoicing'),
1214
+		'TR03' => __('Afyon', 'invoicing'),
1215
+		'TR04' => __('Ağrı', 'invoicing'),
1216
+		'TR05' => __('Amasya', 'invoicing'),
1217
+		'TR06' => __('Ankara', 'invoicing'),
1218
+		'TR07' => __('Antalya', 'invoicing'),
1219
+		'TR08' => __('Artvin', 'invoicing'),
1220
+		'TR09' => __('Aydın', 'invoicing'),
1221
+		'TR10' => __('Balıkesir', 'invoicing'),
1222
+		'TR11' => __('Bilecik', 'invoicing'),
1223
+		'TR12' => __('Bingöl', 'invoicing'),
1224
+		'TR13' => __('Bitlis', 'invoicing'),
1225
+		'TR14' => __('Bolu', 'invoicing'),
1226
+		'TR15' => __('Burdur', 'invoicing'),
1227
+		'TR16' => __('Bursa', 'invoicing'),
1228
+		'TR17' => __('Çanakkale', 'invoicing'),
1229
+		'TR18' => __('Çankırı', 'invoicing'),
1230
+		'TR19' => __('Çorum', 'invoicing'),
1231
+		'TR20' => __('Denizli', 'invoicing'),
1232
+		'TR21' => __('Diyarbakır', 'invoicing'),
1233
+		'TR22' => __('Edirne', 'invoicing'),
1234
+		'TR23' => __('Elazığ', 'invoicing'),
1235
+		'TR24' => __('Erzincan', 'invoicing'),
1236
+		'TR25' => __('Erzurum', 'invoicing'),
1237
+		'TR26' => __('Eskişehir', 'invoicing'),
1238
+		'TR27' => __('Gaziantep', 'invoicing'),
1239
+		'TR28' => __('Giresun', 'invoicing'),
1240
+		'TR29' => __('Gümüşhane', 'invoicing'),
1241
+		'TR30' => __('Hakkari', 'invoicing'),
1242
+		'TR31' => __('Hatay', 'invoicing'),
1243
+		'TR32' => __('Isparta', 'invoicing'),
1244
+		'TR33' => __('İçel', 'invoicing'),
1245
+		'TR34' => __('İstanbul', 'invoicing'),
1246
+		'TR35' => __('İzmir', 'invoicing'),
1247
+		'TR36' => __('Kars', 'invoicing'),
1248
+		'TR37' => __('Kastamonu', 'invoicing'),
1249
+		'TR38' => __('Kayseri', 'invoicing'),
1250
+		'TR39' => __('Kırklareli', 'invoicing'),
1251
+		'TR40' => __('Kırşehir', 'invoicing'),
1252
+		'TR41' => __('Kocaeli', 'invoicing'),
1253
+		'TR42' => __('Konya', 'invoicing'),
1254
+		'TR43' => __('Kütahya', 'invoicing'),
1255
+		'TR44' => __('Malatya', 'invoicing'),
1256
+		'TR45' => __('Manisa', 'invoicing'),
1257
+		'TR46' => __('Kahramanmaraş', 'invoicing'),
1258
+		'TR47' => __('Mardin', 'invoicing'),
1259
+		'TR48' => __('Muğla', 'invoicing'),
1260
+		'TR49' => __('Muş', 'invoicing'),
1261
+		'TR50' => __('Nevşehir', 'invoicing'),
1262
+		'TR51' => __('Niğde', 'invoicing'),
1263
+		'TR52' => __('Ordu', 'invoicing'),
1264
+		'TR53' => __('Rize', 'invoicing'),
1265
+		'TR54' => __('Sakarya', 'invoicing'),
1266
+		'TR55' => __('Samsun', 'invoicing'),
1267
+		'TR56' => __('Siirt', 'invoicing'),
1268
+		'TR57' => __('Sinop', 'invoicing'),
1269
+		'TR58' => __('Sivas', 'invoicing'),
1270
+		'TR59' => __('Tekirdağ', 'invoicing'),
1271
+		'TR60' => __('Tokat', 'invoicing'),
1272
+		'TR61' => __('Trabzon', 'invoicing'),
1273
+		'TR62' => __('Tunceli', 'invoicing'),
1274
+		'TR63' => __('Şanlıurfa', 'invoicing'),
1275
+		'TR64' => __('Uşak', 'invoicing'),
1276
+		'TR65' => __('Van', 'invoicing'),
1277
+		'TR66' => __('Yozgat', 'invoicing'),
1278
+		'TR67' => __('Zonguldak', 'invoicing'),
1279
+		'TR68' => __('Aksaray', 'invoicing'),
1280
+		'TR69' => __('Bayburt', 'invoicing'),
1281
+		'TR70' => __('Karaman', 'invoicing'),
1282
+		'TR71' => __('Kırıkkale', 'invoicing'),
1283
+		'TR72' => __('Batman', 'invoicing'),
1284
+		'TR73' => __('Şırnak', 'invoicing'),
1285
+		'TR74' => __('Bartın', 'invoicing'),
1286
+		'TR75' => __('Ardahan', 'invoicing'),
1287
+		'TR76' => __('Iğdır', 'invoicing'),
1288
+		'TR77' => __('Yalova', 'invoicing'),
1289
+		'TR78' => __('Karabük', 'invoicing'),
1290
+		'TR79' => __('Kilis', 'invoicing'),
1291
+		'TR80' => __('Osmaniye', 'invoicing'),
1292
+		'TR81' => __('Düzce', 'invoicing'),
1293 1293
 	),
1294 1294
 	'TZ' => array( // Tanzania States.
1295
-		'TZ01' => __( 'Arusha', 'invoicing' ),
1296
-		'TZ02' => __( 'Dar es Salaam', 'invoicing' ),
1297
-		'TZ03' => __( 'Dodoma', 'invoicing' ),
1298
-		'TZ04' => __( 'Iringa', 'invoicing' ),
1299
-		'TZ05' => __( 'Kagera', 'invoicing' ),
1300
-		'TZ06' => __( 'Pemba North', 'invoicing' ),
1301
-		'TZ07' => __( 'Zanzibar North', 'invoicing' ),
1302
-		'TZ08' => __( 'Kigoma', 'invoicing' ),
1303
-		'TZ09' => __( 'Kilimanjaro', 'invoicing' ),
1304
-		'TZ10' => __( 'Pemba South', 'invoicing' ),
1305
-		'TZ11' => __( 'Zanzibar South', 'invoicing' ),
1306
-		'TZ12' => __( 'Lindi', 'invoicing' ),
1307
-		'TZ13' => __( 'Mara', 'invoicing' ),
1308
-		'TZ14' => __( 'Mbeya', 'invoicing' ),
1309
-		'TZ15' => __( 'Zanzibar West', 'invoicing' ),
1310
-		'TZ16' => __( 'Morogoro', 'invoicing' ),
1311
-		'TZ17' => __( 'Mtwara', 'invoicing' ),
1312
-		'TZ18' => __( 'Mwanza', 'invoicing' ),
1313
-		'TZ19' => __( 'Coast', 'invoicing' ),
1314
-		'TZ20' => __( 'Rukwa', 'invoicing' ),
1315
-		'TZ21' => __( 'Ruvuma', 'invoicing' ),
1316
-		'TZ22' => __( 'Shinyanga', 'invoicing' ),
1317
-		'TZ23' => __( 'Singida', 'invoicing' ),
1318
-		'TZ24' => __( 'Tabora', 'invoicing' ),
1319
-		'TZ25' => __( 'Tanga', 'invoicing' ),
1320
-		'TZ26' => __( 'Manyara', 'invoicing' ),
1321
-		'TZ27' => __( 'Geita', 'invoicing' ),
1322
-		'TZ28' => __( 'Katavi', 'invoicing' ),
1323
-		'TZ29' => __( 'Njombe', 'invoicing' ),
1324
-		'TZ30' => __( 'Simiyu', 'invoicing' ),
1295
+		'TZ01' => __('Arusha', 'invoicing'),
1296
+		'TZ02' => __('Dar es Salaam', 'invoicing'),
1297
+		'TZ03' => __('Dodoma', 'invoicing'),
1298
+		'TZ04' => __('Iringa', 'invoicing'),
1299
+		'TZ05' => __('Kagera', 'invoicing'),
1300
+		'TZ06' => __('Pemba North', 'invoicing'),
1301
+		'TZ07' => __('Zanzibar North', 'invoicing'),
1302
+		'TZ08' => __('Kigoma', 'invoicing'),
1303
+		'TZ09' => __('Kilimanjaro', 'invoicing'),
1304
+		'TZ10' => __('Pemba South', 'invoicing'),
1305
+		'TZ11' => __('Zanzibar South', 'invoicing'),
1306
+		'TZ12' => __('Lindi', 'invoicing'),
1307
+		'TZ13' => __('Mara', 'invoicing'),
1308
+		'TZ14' => __('Mbeya', 'invoicing'),
1309
+		'TZ15' => __('Zanzibar West', 'invoicing'),
1310
+		'TZ16' => __('Morogoro', 'invoicing'),
1311
+		'TZ17' => __('Mtwara', 'invoicing'),
1312
+		'TZ18' => __('Mwanza', 'invoicing'),
1313
+		'TZ19' => __('Coast', 'invoicing'),
1314
+		'TZ20' => __('Rukwa', 'invoicing'),
1315
+		'TZ21' => __('Ruvuma', 'invoicing'),
1316
+		'TZ22' => __('Shinyanga', 'invoicing'),
1317
+		'TZ23' => __('Singida', 'invoicing'),
1318
+		'TZ24' => __('Tabora', 'invoicing'),
1319
+		'TZ25' => __('Tanga', 'invoicing'),
1320
+		'TZ26' => __('Manyara', 'invoicing'),
1321
+		'TZ27' => __('Geita', 'invoicing'),
1322
+		'TZ28' => __('Katavi', 'invoicing'),
1323
+		'TZ29' => __('Njombe', 'invoicing'),
1324
+		'TZ30' => __('Simiyu', 'invoicing'),
1325 1325
 	),
1326 1326
 	'LK' => array(),
1327 1327
 	'SE' => array(),
1328 1328
 	'UG' => array( // Uganda districts. Ref: https://en.wikipedia.org/wiki/ISO_3166-2:UG.
1329
-		'UG314' => __( 'Abim', 'invoicing' ),
1330
-		'UG301' => __( 'Adjumani', 'invoicing' ),
1331
-		'UG322' => __( 'Agago', 'invoicing' ),
1332
-		'UG323' => __( 'Alebtong', 'invoicing' ),
1333
-		'UG315' => __( 'Amolatar', 'invoicing' ),
1334
-		'UG324' => __( 'Amudat', 'invoicing' ),
1335
-		'UG216' => __( 'Amuria', 'invoicing' ),
1336
-		'UG316' => __( 'Amuru', 'invoicing' ),
1337
-		'UG302' => __( 'Apac', 'invoicing' ),
1338
-		'UG303' => __( 'Arua', 'invoicing' ),
1339
-		'UG217' => __( 'Budaka', 'invoicing' ),
1340
-		'UG218' => __( 'Bududa', 'invoicing' ),
1341
-		'UG201' => __( 'Bugiri', 'invoicing' ),
1342
-		'UG235' => __( 'Bugweri', 'invoicing' ),
1343
-		'UG420' => __( 'Buhweju', 'invoicing' ),
1344
-		'UG117' => __( 'Buikwe', 'invoicing' ),
1345
-		'UG219' => __( 'Bukedea', 'invoicing' ),
1346
-		'UG118' => __( 'Bukomansimbi', 'invoicing' ),
1347
-		'UG220' => __( 'Bukwa', 'invoicing' ),
1348
-		'UG225' => __( 'Bulambuli', 'invoicing' ),
1349
-		'UG416' => __( 'Buliisa', 'invoicing' ),
1350
-		'UG401' => __( 'Bundibugyo', 'invoicing' ),
1351
-		'UG430' => __( 'Bunyangabu', 'invoicing' ),
1352
-		'UG402' => __( 'Bushenyi', 'invoicing' ),
1353
-		'UG202' => __( 'Busia', 'invoicing' ),
1354
-		'UG221' => __( 'Butaleja', 'invoicing' ),
1355
-		'UG119' => __( 'Butambala', 'invoicing' ),
1356
-		'UG233' => __( 'Butebo', 'invoicing' ),
1357
-		'UG120' => __( 'Buvuma', 'invoicing' ),
1358
-		'UG226' => __( 'Buyende', 'invoicing' ),
1359
-		'UG317' => __( 'Dokolo', 'invoicing' ),
1360
-		'UG121' => __( 'Gomba', 'invoicing' ),
1361
-		'UG304' => __( 'Gulu', 'invoicing' ),
1362
-		'UG403' => __( 'Hoima', 'invoicing' ),
1363
-		'UG417' => __( 'Ibanda', 'invoicing' ),
1364
-		'UG203' => __( 'Iganga', 'invoicing' ),
1365
-		'UG418' => __( 'Isingiro', 'invoicing' ),
1366
-		'UG204' => __( 'Jinja', 'invoicing' ),
1367
-		'UG318' => __( 'Kaabong', 'invoicing' ),
1368
-		'UG404' => __( 'Kabale', 'invoicing' ),
1369
-		'UG405' => __( 'Kabarole', 'invoicing' ),
1370
-		'UG213' => __( 'Kaberamaido', 'invoicing' ),
1371
-		'UG427' => __( 'Kagadi', 'invoicing' ),
1372
-		'UG428' => __( 'Kakumiro', 'invoicing' ),
1373
-		'UG101' => __( 'Kalangala', 'invoicing' ),
1374
-		'UG222' => __( 'Kaliro', 'invoicing' ),
1375
-		'UG122' => __( 'Kalungu', 'invoicing' ),
1376
-		'UG102' => __( 'Kampala', 'invoicing' ),
1377
-		'UG205' => __( 'Kamuli', 'invoicing' ),
1378
-		'UG413' => __( 'Kamwenge', 'invoicing' ),
1379
-		'UG414' => __( 'Kanungu', 'invoicing' ),
1380
-		'UG206' => __( 'Kapchorwa', 'invoicing' ),
1381
-		'UG236' => __( 'Kapelebyong', 'invoicing' ),
1382
-		'UG126' => __( 'Kasanda', 'invoicing' ),
1383
-		'UG406' => __( 'Kasese', 'invoicing' ),
1384
-		'UG207' => __( 'Katakwi', 'invoicing' ),
1385
-		'UG112' => __( 'Kayunga', 'invoicing' ),
1386
-		'UG407' => __( 'Kibaale', 'invoicing' ),
1387
-		'UG103' => __( 'Kiboga', 'invoicing' ),
1388
-		'UG227' => __( 'Kibuku', 'invoicing' ),
1389
-		'UG432' => __( 'Kikuube', 'invoicing' ),
1390
-		'UG419' => __( 'Kiruhura', 'invoicing' ),
1391
-		'UG421' => __( 'Kiryandongo', 'invoicing' ),
1392
-		'UG408' => __( 'Kisoro', 'invoicing' ),
1393
-		'UG305' => __( 'Kitgum', 'invoicing' ),
1394
-		'UG319' => __( 'Koboko', 'invoicing' ),
1395
-		'UG325' => __( 'Kole', 'invoicing' ),
1396
-		'UG306' => __( 'Kotido', 'invoicing' ),
1397
-		'UG208' => __( 'Kumi', 'invoicing' ),
1398
-		'UG333' => __( 'Kwania', 'invoicing' ),
1399
-		'UG228' => __( 'Kween', 'invoicing' ),
1400
-		'UG123' => __( 'Kyankwanzi', 'invoicing' ),
1401
-		'UG422' => __( 'Kyegegwa', 'invoicing' ),
1402
-		'UG415' => __( 'Kyenjojo', 'invoicing' ),
1403
-		'UG125' => __( 'Kyotera', 'invoicing' ),
1404
-		'UG326' => __( 'Lamwo', 'invoicing' ),
1405
-		'UG307' => __( 'Lira', 'invoicing' ),
1406
-		'UG229' => __( 'Luuka', 'invoicing' ),
1407
-		'UG104' => __( 'Luwero', 'invoicing' ),
1408
-		'UG124' => __( 'Lwengo', 'invoicing' ),
1409
-		'UG114' => __( 'Lyantonde', 'invoicing' ),
1410
-		'UG223' => __( 'Manafwa', 'invoicing' ),
1411
-		'UG320' => __( 'Maracha', 'invoicing' ),
1412
-		'UG105' => __( 'Masaka', 'invoicing' ),
1413
-		'UG409' => __( 'Masindi', 'invoicing' ),
1414
-		'UG214' => __( 'Mayuge', 'invoicing' ),
1415
-		'UG209' => __( 'Mbale', 'invoicing' ),
1416
-		'UG410' => __( 'Mbarara', 'invoicing' ),
1417
-		'UG423' => __( 'Mitooma', 'invoicing' ),
1418
-		'UG115' => __( 'Mityana', 'invoicing' ),
1419
-		'UG308' => __( 'Moroto', 'invoicing' ),
1420
-		'UG309' => __( 'Moyo', 'invoicing' ),
1421
-		'UG106' => __( 'Mpigi', 'invoicing' ),
1422
-		'UG107' => __( 'Mubende', 'invoicing' ),
1423
-		'UG108' => __( 'Mukono', 'invoicing' ),
1424
-		'UG334' => __( 'Nabilatuk', 'invoicing' ),
1425
-		'UG311' => __( 'Nakapiripirit', 'invoicing' ),
1426
-		'UG116' => __( 'Nakaseke', 'invoicing' ),
1427
-		'UG109' => __( 'Nakasongola', 'invoicing' ),
1428
-		'UG230' => __( 'Namayingo', 'invoicing' ),
1429
-		'UG234' => __( 'Namisindwa', 'invoicing' ),
1430
-		'UG224' => __( 'Namutumba', 'invoicing' ),
1431
-		'UG327' => __( 'Napak', 'invoicing' ),
1432
-		'UG310' => __( 'Nebbi', 'invoicing' ),
1433
-		'UG231' => __( 'Ngora', 'invoicing' ),
1434
-		'UG424' => __( 'Ntoroko', 'invoicing' ),
1435
-		'UG411' => __( 'Ntungamo', 'invoicing' ),
1436
-		'UG328' => __( 'Nwoya', 'invoicing' ),
1437
-		'UG331' => __( 'Omoro', 'invoicing' ),
1438
-		'UG329' => __( 'Otuke', 'invoicing' ),
1439
-		'UG321' => __( 'Oyam', 'invoicing' ),
1440
-		'UG312' => __( 'Pader', 'invoicing' ),
1441
-		'UG332' => __( 'Pakwach', 'invoicing' ),
1442
-		'UG210' => __( 'Pallisa', 'invoicing' ),
1443
-		'UG110' => __( 'Rakai', 'invoicing' ),
1444
-		'UG429' => __( 'Rubanda', 'invoicing' ),
1445
-		'UG425' => __( 'Rubirizi', 'invoicing' ),
1446
-		'UG431' => __( 'Rukiga', 'invoicing' ),
1447
-		'UG412' => __( 'Rukungiri', 'invoicing' ),
1448
-		'UG111' => __( 'Sembabule', 'invoicing' ),
1449
-		'UG232' => __( 'Serere', 'invoicing' ),
1450
-		'UG426' => __( 'Sheema', 'invoicing' ),
1451
-		'UG215' => __( 'Sironko', 'invoicing' ),
1452
-		'UG211' => __( 'Soroti', 'invoicing' ),
1453
-		'UG212' => __( 'Tororo', 'invoicing' ),
1454
-		'UG113' => __( 'Wakiso', 'invoicing' ),
1455
-		'UG313' => __( 'Yumbe', 'invoicing' ),
1456
-		'UG330' => __( 'Zombo', 'invoicing' ),
1329
+		'UG314' => __('Abim', 'invoicing'),
1330
+		'UG301' => __('Adjumani', 'invoicing'),
1331
+		'UG322' => __('Agago', 'invoicing'),
1332
+		'UG323' => __('Alebtong', 'invoicing'),
1333
+		'UG315' => __('Amolatar', 'invoicing'),
1334
+		'UG324' => __('Amudat', 'invoicing'),
1335
+		'UG216' => __('Amuria', 'invoicing'),
1336
+		'UG316' => __('Amuru', 'invoicing'),
1337
+		'UG302' => __('Apac', 'invoicing'),
1338
+		'UG303' => __('Arua', 'invoicing'),
1339
+		'UG217' => __('Budaka', 'invoicing'),
1340
+		'UG218' => __('Bududa', 'invoicing'),
1341
+		'UG201' => __('Bugiri', 'invoicing'),
1342
+		'UG235' => __('Bugweri', 'invoicing'),
1343
+		'UG420' => __('Buhweju', 'invoicing'),
1344
+		'UG117' => __('Buikwe', 'invoicing'),
1345
+		'UG219' => __('Bukedea', 'invoicing'),
1346
+		'UG118' => __('Bukomansimbi', 'invoicing'),
1347
+		'UG220' => __('Bukwa', 'invoicing'),
1348
+		'UG225' => __('Bulambuli', 'invoicing'),
1349
+		'UG416' => __('Buliisa', 'invoicing'),
1350
+		'UG401' => __('Bundibugyo', 'invoicing'),
1351
+		'UG430' => __('Bunyangabu', 'invoicing'),
1352
+		'UG402' => __('Bushenyi', 'invoicing'),
1353
+		'UG202' => __('Busia', 'invoicing'),
1354
+		'UG221' => __('Butaleja', 'invoicing'),
1355
+		'UG119' => __('Butambala', 'invoicing'),
1356
+		'UG233' => __('Butebo', 'invoicing'),
1357
+		'UG120' => __('Buvuma', 'invoicing'),
1358
+		'UG226' => __('Buyende', 'invoicing'),
1359
+		'UG317' => __('Dokolo', 'invoicing'),
1360
+		'UG121' => __('Gomba', 'invoicing'),
1361
+		'UG304' => __('Gulu', 'invoicing'),
1362
+		'UG403' => __('Hoima', 'invoicing'),
1363
+		'UG417' => __('Ibanda', 'invoicing'),
1364
+		'UG203' => __('Iganga', 'invoicing'),
1365
+		'UG418' => __('Isingiro', 'invoicing'),
1366
+		'UG204' => __('Jinja', 'invoicing'),
1367
+		'UG318' => __('Kaabong', 'invoicing'),
1368
+		'UG404' => __('Kabale', 'invoicing'),
1369
+		'UG405' => __('Kabarole', 'invoicing'),
1370
+		'UG213' => __('Kaberamaido', 'invoicing'),
1371
+		'UG427' => __('Kagadi', 'invoicing'),
1372
+		'UG428' => __('Kakumiro', 'invoicing'),
1373
+		'UG101' => __('Kalangala', 'invoicing'),
1374
+		'UG222' => __('Kaliro', 'invoicing'),
1375
+		'UG122' => __('Kalungu', 'invoicing'),
1376
+		'UG102' => __('Kampala', 'invoicing'),
1377
+		'UG205' => __('Kamuli', 'invoicing'),
1378
+		'UG413' => __('Kamwenge', 'invoicing'),
1379
+		'UG414' => __('Kanungu', 'invoicing'),
1380
+		'UG206' => __('Kapchorwa', 'invoicing'),
1381
+		'UG236' => __('Kapelebyong', 'invoicing'),
1382
+		'UG126' => __('Kasanda', 'invoicing'),
1383
+		'UG406' => __('Kasese', 'invoicing'),
1384
+		'UG207' => __('Katakwi', 'invoicing'),
1385
+		'UG112' => __('Kayunga', 'invoicing'),
1386
+		'UG407' => __('Kibaale', 'invoicing'),
1387
+		'UG103' => __('Kiboga', 'invoicing'),
1388
+		'UG227' => __('Kibuku', 'invoicing'),
1389
+		'UG432' => __('Kikuube', 'invoicing'),
1390
+		'UG419' => __('Kiruhura', 'invoicing'),
1391
+		'UG421' => __('Kiryandongo', 'invoicing'),
1392
+		'UG408' => __('Kisoro', 'invoicing'),
1393
+		'UG305' => __('Kitgum', 'invoicing'),
1394
+		'UG319' => __('Koboko', 'invoicing'),
1395
+		'UG325' => __('Kole', 'invoicing'),
1396
+		'UG306' => __('Kotido', 'invoicing'),
1397
+		'UG208' => __('Kumi', 'invoicing'),
1398
+		'UG333' => __('Kwania', 'invoicing'),
1399
+		'UG228' => __('Kween', 'invoicing'),
1400
+		'UG123' => __('Kyankwanzi', 'invoicing'),
1401
+		'UG422' => __('Kyegegwa', 'invoicing'),
1402
+		'UG415' => __('Kyenjojo', 'invoicing'),
1403
+		'UG125' => __('Kyotera', 'invoicing'),
1404
+		'UG326' => __('Lamwo', 'invoicing'),
1405
+		'UG307' => __('Lira', 'invoicing'),
1406
+		'UG229' => __('Luuka', 'invoicing'),
1407
+		'UG104' => __('Luwero', 'invoicing'),
1408
+		'UG124' => __('Lwengo', 'invoicing'),
1409
+		'UG114' => __('Lyantonde', 'invoicing'),
1410
+		'UG223' => __('Manafwa', 'invoicing'),
1411
+		'UG320' => __('Maracha', 'invoicing'),
1412
+		'UG105' => __('Masaka', 'invoicing'),
1413
+		'UG409' => __('Masindi', 'invoicing'),
1414
+		'UG214' => __('Mayuge', 'invoicing'),
1415
+		'UG209' => __('Mbale', 'invoicing'),
1416
+		'UG410' => __('Mbarara', 'invoicing'),
1417
+		'UG423' => __('Mitooma', 'invoicing'),
1418
+		'UG115' => __('Mityana', 'invoicing'),
1419
+		'UG308' => __('Moroto', 'invoicing'),
1420
+		'UG309' => __('Moyo', 'invoicing'),
1421
+		'UG106' => __('Mpigi', 'invoicing'),
1422
+		'UG107' => __('Mubende', 'invoicing'),
1423
+		'UG108' => __('Mukono', 'invoicing'),
1424
+		'UG334' => __('Nabilatuk', 'invoicing'),
1425
+		'UG311' => __('Nakapiripirit', 'invoicing'),
1426
+		'UG116' => __('Nakaseke', 'invoicing'),
1427
+		'UG109' => __('Nakasongola', 'invoicing'),
1428
+		'UG230' => __('Namayingo', 'invoicing'),
1429
+		'UG234' => __('Namisindwa', 'invoicing'),
1430
+		'UG224' => __('Namutumba', 'invoicing'),
1431
+		'UG327' => __('Napak', 'invoicing'),
1432
+		'UG310' => __('Nebbi', 'invoicing'),
1433
+		'UG231' => __('Ngora', 'invoicing'),
1434
+		'UG424' => __('Ntoroko', 'invoicing'),
1435
+		'UG411' => __('Ntungamo', 'invoicing'),
1436
+		'UG328' => __('Nwoya', 'invoicing'),
1437
+		'UG331' => __('Omoro', 'invoicing'),
1438
+		'UG329' => __('Otuke', 'invoicing'),
1439
+		'UG321' => __('Oyam', 'invoicing'),
1440
+		'UG312' => __('Pader', 'invoicing'),
1441
+		'UG332' => __('Pakwach', 'invoicing'),
1442
+		'UG210' => __('Pallisa', 'invoicing'),
1443
+		'UG110' => __('Rakai', 'invoicing'),
1444
+		'UG429' => __('Rubanda', 'invoicing'),
1445
+		'UG425' => __('Rubirizi', 'invoicing'),
1446
+		'UG431' => __('Rukiga', 'invoicing'),
1447
+		'UG412' => __('Rukungiri', 'invoicing'),
1448
+		'UG111' => __('Sembabule', 'invoicing'),
1449
+		'UG232' => __('Serere', 'invoicing'),
1450
+		'UG426' => __('Sheema', 'invoicing'),
1451
+		'UG215' => __('Sironko', 'invoicing'),
1452
+		'UG211' => __('Soroti', 'invoicing'),
1453
+		'UG212' => __('Tororo', 'invoicing'),
1454
+		'UG113' => __('Wakiso', 'invoicing'),
1455
+		'UG313' => __('Yumbe', 'invoicing'),
1456
+		'UG330' => __('Zombo', 'invoicing'),
1457 1457
 	),
1458 1458
 	'UM' => array(
1459
-		'81' => __( 'Baker Island', 'invoicing' ),
1460
-		'84' => __( 'Howland Island', 'invoicing' ),
1461
-		'86' => __( 'Jarvis Island', 'invoicing' ),
1462
-		'67' => __( 'Johnston Atoll', 'invoicing' ),
1463
-		'89' => __( 'Kingman Reef', 'invoicing' ),
1464
-		'71' => __( 'Midway Atoll', 'invoicing' ),
1465
-		'76' => __( 'Navassa Island', 'invoicing' ),
1466
-		'95' => __( 'Palmyra Atoll', 'invoicing' ),
1467
-		'79' => __( 'Wake Island', 'invoicing' ),
1459
+		'81' => __('Baker Island', 'invoicing'),
1460
+		'84' => __('Howland Island', 'invoicing'),
1461
+		'86' => __('Jarvis Island', 'invoicing'),
1462
+		'67' => __('Johnston Atoll', 'invoicing'),
1463
+		'89' => __('Kingman Reef', 'invoicing'),
1464
+		'71' => __('Midway Atoll', 'invoicing'),
1465
+		'76' => __('Navassa Island', 'invoicing'),
1466
+		'95' => __('Palmyra Atoll', 'invoicing'),
1467
+		'79' => __('Wake Island', 'invoicing'),
1468 1468
 	),
1469 1469
 	'US' => array( // United States.
1470
-		'AL' => __( 'Alabama', 'invoicing' ),
1471
-		'AK' => __( 'Alaska', 'invoicing' ),
1472
-		'AZ' => __( 'Arizona', 'invoicing' ),
1473
-		'AR' => __( 'Arkansas', 'invoicing' ),
1474
-		'CA' => __( 'California', 'invoicing' ),
1475
-		'CO' => __( 'Colorado', 'invoicing' ),
1476
-		'CT' => __( 'Connecticut', 'invoicing' ),
1477
-		'DE' => __( 'Delaware', 'invoicing' ),
1478
-		'DC' => __( 'District Of Columbia', 'invoicing' ),
1479
-		'FL' => __( 'Florida', 'invoicing' ),
1480
-		'GA' => _x( 'Georgia', 'US state of Georgia', 'invoicing' ),
1481
-		'HI' => __( 'Hawaii', 'invoicing' ),
1482
-		'ID' => __( 'Idaho', 'invoicing' ),
1483
-		'IL' => __( 'Illinois', 'invoicing' ),
1484
-		'IN' => __( 'Indiana', 'invoicing' ),
1485
-		'IA' => __( 'Iowa', 'invoicing' ),
1486
-		'KS' => __( 'Kansas', 'invoicing' ),
1487
-		'KY' => __( 'Kentucky', 'invoicing' ),
1488
-		'LA' => __( 'Louisiana', 'invoicing' ),
1489
-		'ME' => __( 'Maine', 'invoicing' ),
1490
-		'MD' => __( 'Maryland', 'invoicing' ),
1491
-		'MA' => __( 'Massachusetts', 'invoicing' ),
1492
-		'MI' => __( 'Michigan', 'invoicing' ),
1493
-		'MN' => __( 'Minnesota', 'invoicing' ),
1494
-		'MS' => __( 'Mississippi', 'invoicing' ),
1495
-		'MO' => __( 'Missouri', 'invoicing' ),
1496
-		'MT' => __( 'Montana', 'invoicing' ),
1497
-		'NE' => __( 'Nebraska', 'invoicing' ),
1498
-		'NV' => __( 'Nevada', 'invoicing' ),
1499
-		'NH' => __( 'New Hampshire', 'invoicing' ),
1500
-		'NJ' => __( 'New Jersey', 'invoicing' ),
1501
-		'NM' => __( 'New Mexico', 'invoicing' ),
1502
-		'NY' => __( 'New York', 'invoicing' ),
1503
-		'NC' => __( 'North Carolina', 'invoicing' ),
1504
-		'ND' => __( 'North Dakota', 'invoicing' ),
1505
-		'OH' => __( 'Ohio', 'invoicing' ),
1506
-		'OK' => __( 'Oklahoma', 'invoicing' ),
1507
-		'OR' => __( 'Oregon', 'invoicing' ),
1508
-		'PA' => __( 'Pennsylvania', 'invoicing' ),
1509
-		'RI' => __( 'Rhode Island', 'invoicing' ),
1510
-		'SC' => __( 'South Carolina', 'invoicing' ),
1511
-		'SD' => __( 'South Dakota', 'invoicing' ),
1512
-		'TN' => __( 'Tennessee', 'invoicing' ),
1513
-		'TX' => __( 'Texas', 'invoicing' ),
1514
-		'UT' => __( 'Utah', 'invoicing' ),
1515
-		'VT' => __( 'Vermont', 'invoicing' ),
1516
-		'VA' => __( 'Virginia', 'invoicing' ),
1517
-		'WA' => __( 'Washington', 'invoicing' ),
1518
-		'WV' => __( 'West Virginia', 'invoicing' ),
1519
-		'WI' => __( 'Wisconsin', 'invoicing' ),
1520
-		'WY' => __( 'Wyoming', 'invoicing' ),
1521
-		'AA' => __( 'Armed Forces (AA)', 'invoicing' ),
1522
-		'AE' => __( 'Armed Forces (AE)', 'invoicing' ),
1523
-		'AP' => __( 'Armed Forces (AP)', 'invoicing' ),
1470
+		'AL' => __('Alabama', 'invoicing'),
1471
+		'AK' => __('Alaska', 'invoicing'),
1472
+		'AZ' => __('Arizona', 'invoicing'),
1473
+		'AR' => __('Arkansas', 'invoicing'),
1474
+		'CA' => __('California', 'invoicing'),
1475
+		'CO' => __('Colorado', 'invoicing'),
1476
+		'CT' => __('Connecticut', 'invoicing'),
1477
+		'DE' => __('Delaware', 'invoicing'),
1478
+		'DC' => __('District Of Columbia', 'invoicing'),
1479
+		'FL' => __('Florida', 'invoicing'),
1480
+		'GA' => _x('Georgia', 'US state of Georgia', 'invoicing'),
1481
+		'HI' => __('Hawaii', 'invoicing'),
1482
+		'ID' => __('Idaho', 'invoicing'),
1483
+		'IL' => __('Illinois', 'invoicing'),
1484
+		'IN' => __('Indiana', 'invoicing'),
1485
+		'IA' => __('Iowa', 'invoicing'),
1486
+		'KS' => __('Kansas', 'invoicing'),
1487
+		'KY' => __('Kentucky', 'invoicing'),
1488
+		'LA' => __('Louisiana', 'invoicing'),
1489
+		'ME' => __('Maine', 'invoicing'),
1490
+		'MD' => __('Maryland', 'invoicing'),
1491
+		'MA' => __('Massachusetts', 'invoicing'),
1492
+		'MI' => __('Michigan', 'invoicing'),
1493
+		'MN' => __('Minnesota', 'invoicing'),
1494
+		'MS' => __('Mississippi', 'invoicing'),
1495
+		'MO' => __('Missouri', 'invoicing'),
1496
+		'MT' => __('Montana', 'invoicing'),
1497
+		'NE' => __('Nebraska', 'invoicing'),
1498
+		'NV' => __('Nevada', 'invoicing'),
1499
+		'NH' => __('New Hampshire', 'invoicing'),
1500
+		'NJ' => __('New Jersey', 'invoicing'),
1501
+		'NM' => __('New Mexico', 'invoicing'),
1502
+		'NY' => __('New York', 'invoicing'),
1503
+		'NC' => __('North Carolina', 'invoicing'),
1504
+		'ND' => __('North Dakota', 'invoicing'),
1505
+		'OH' => __('Ohio', 'invoicing'),
1506
+		'OK' => __('Oklahoma', 'invoicing'),
1507
+		'OR' => __('Oregon', 'invoicing'),
1508
+		'PA' => __('Pennsylvania', 'invoicing'),
1509
+		'RI' => __('Rhode Island', 'invoicing'),
1510
+		'SC' => __('South Carolina', 'invoicing'),
1511
+		'SD' => __('South Dakota', 'invoicing'),
1512
+		'TN' => __('Tennessee', 'invoicing'),
1513
+		'TX' => __('Texas', 'invoicing'),
1514
+		'UT' => __('Utah', 'invoicing'),
1515
+		'VT' => __('Vermont', 'invoicing'),
1516
+		'VA' => __('Virginia', 'invoicing'),
1517
+		'WA' => __('Washington', 'invoicing'),
1518
+		'WV' => __('West Virginia', 'invoicing'),
1519
+		'WI' => __('Wisconsin', 'invoicing'),
1520
+		'WY' => __('Wyoming', 'invoicing'),
1521
+		'AA' => __('Armed Forces (AA)', 'invoicing'),
1522
+		'AE' => __('Armed Forces (AE)', 'invoicing'),
1523
+		'AP' => __('Armed Forces (AP)', 'invoicing'),
1524 1524
 	),
1525 1525
 	'VN' => array(),
1526 1526
 	'YT' => array(),
1527 1527
 	'ZA' => array( // South African states.
1528
-		'EC'  => __( 'Eastern Cape', 'invoicing' ),
1529
-		'FS'  => __( 'Free State', 'invoicing' ),
1530
-		'GP'  => __( 'Gauteng', 'invoicing' ),
1531
-		'KZN' => __( 'KwaZulu-Natal', 'invoicing' ),
1532
-		'LP'  => __( 'Limpopo', 'invoicing' ),
1533
-		'MP'  => __( 'Mpumalanga', 'invoicing' ),
1534
-		'NC'  => __( 'Northern Cape', 'invoicing' ),
1535
-		'NW'  => __( 'North West', 'invoicing' ),
1536
-		'WC'  => __( 'Western Cape', 'invoicing' ),
1528
+		'EC'  => __('Eastern Cape', 'invoicing'),
1529
+		'FS'  => __('Free State', 'invoicing'),
1530
+		'GP'  => __('Gauteng', 'invoicing'),
1531
+		'KZN' => __('KwaZulu-Natal', 'invoicing'),
1532
+		'LP'  => __('Limpopo', 'invoicing'),
1533
+		'MP'  => __('Mpumalanga', 'invoicing'),
1534
+		'NC'  => __('Northern Cape', 'invoicing'),
1535
+		'NW'  => __('North West', 'invoicing'),
1536
+		'WC'  => __('Western Cape', 'invoicing'),
1537 1537
 	),
1538 1538
 	'ZM' => array( // Zambia's Provinces. Ref: https://en.wikipedia.org/wiki/ISO_3166-2:ZM.
1539
-		'ZM-01' => __( 'Western', 'invoicing' ),
1540
-		'ZM-02' => __( 'Central', 'invoicing' ),
1541
-		'ZM-03' => __( 'Eastern', 'invoicing' ),
1542
-		'ZM-04' => __( 'Luapula', 'invoicing' ),
1543
-		'ZM-05' => __( 'Northern', 'invoicing' ),
1544
-		'ZM-06' => __( 'North-Western', 'invoicing' ),
1545
-		'ZM-07' => __( 'Southern', 'invoicing' ),
1546
-		'ZM-08' => __( 'Copperbelt', 'invoicing' ),
1547
-		'ZM-09' => __( 'Lusaka', 'invoicing' ),
1548
-		'ZM-10' => __( 'Muchinga', 'invoicing' ),
1539
+		'ZM-01' => __('Western', 'invoicing'),
1540
+		'ZM-02' => __('Central', 'invoicing'),
1541
+		'ZM-03' => __('Eastern', 'invoicing'),
1542
+		'ZM-04' => __('Luapula', 'invoicing'),
1543
+		'ZM-05' => __('Northern', 'invoicing'),
1544
+		'ZM-06' => __('North-Western', 'invoicing'),
1545
+		'ZM-07' => __('Southern', 'invoicing'),
1546
+		'ZM-08' => __('Copperbelt', 'invoicing'),
1547
+		'ZM-09' => __('Lusaka', 'invoicing'),
1548
+		'ZM-10' => __('Muchinga', 'invoicing'),
1549 1549
 	),
1550 1550
 );
Please login to merge, or discard this patch.
includes/data/phone-codes.php 2 patches
Indentation   +257 added lines, -257 removed lines patch added patch discarded remove patch
@@ -10,261 +10,261 @@
 block discarded – undo
10 10
 defined( 'ABSPATH' ) || exit;
11 11
 
12 12
 return array(
13
-	'BD' => '+880',
14
-	'BE' => '+32',
15
-	'BF' => '+226',
16
-	'BG' => '+359',
17
-	'BA' => '+387',
18
-	'BB' => '+1246',
19
-	'WF' => '+681',
20
-	'BL' => '+590',
21
-	'BM' => '+1441',
22
-	'BN' => '+673',
23
-	'BO' => '+591',
24
-	'BH' => '+973',
25
-	'BI' => '+257',
26
-	'BJ' => '+229',
27
-	'BT' => '+975',
28
-	'JM' => '+1876',
29
-	'BV' => '',
30
-	'BW' => '+267',
31
-	'WS' => '+685',
32
-	'BQ' => '+599',
33
-	'BR' => '+55',
34
-	'BS' => '+1242',
35
-	'JE' => '+441534',
36
-	'BY' => '+375',
37
-	'BZ' => '+501',
38
-	'RU' => '+7',
39
-	'RW' => '+250',
40
-	'RS' => '+381',
41
-	'TL' => '+670',
42
-	'RE' => '+262',
43
-	'TM' => '+993',
44
-	'TJ' => '+992',
45
-	'RO' => '+40',
46
-	'TK' => '+690',
47
-	'GW' => '+245',
48
-	'GU' => '+1671',
49
-	'GT' => '+502',
50
-	'GS' => '',
51
-	'GR' => '+30',
52
-	'GQ' => '+240',
53
-	'GP' => '+590',
54
-	'JP' => '+81',
55
-	'GY' => '+592',
56
-	'GG' => '+441481',
57
-	'GF' => '+594',
58
-	'GE' => '+995',
59
-	'GD' => '+1473',
60
-	'GB' => '+44',
61
-	'GA' => '+241',
62
-	'SV' => '+503',
63
-	'GN' => '+224',
64
-	'GM' => '+220',
65
-	'GL' => '+299',
66
-	'GI' => '+350',
67
-	'GH' => '+233',
68
-	'OM' => '+968',
69
-	'TN' => '+216',
70
-	'JO' => '+962',
71
-	'HR' => '+385',
72
-	'HT' => '+509',
73
-	'HU' => '+36',
74
-	'HK' => '+852',
75
-	'HN' => '+504',
76
-	'HM' => '',
77
-	'VE' => '+58',
78
-	'PR' => array(
79
-		'+1787',
80
-		'+1939',
81
-	),
82
-	'PS' => '+970',
83
-	'PW' => '+680',
84
-	'PT' => '+351',
85
-	'SJ' => '+47',
86
-	'PY' => '+595',
87
-	'IQ' => '+964',
88
-	'PA' => '+507',
89
-	'PF' => '+689',
90
-	'PG' => '+675',
91
-	'PE' => '+51',
92
-	'PK' => '+92',
93
-	'PH' => '+63',
94
-	'PN' => '+870',
95
-	'PL' => '+48',
96
-	'PM' => '+508',
97
-	'ZM' => '+260',
98
-	'EH' => '+212',
99
-	'EE' => '+372',
100
-	'EG' => '+20',
101
-	'ZA' => '+27',
102
-	'EC' => '+593',
103
-	'IT' => '+39',
104
-	'VN' => '+84',
105
-	'SB' => '+677',
106
-	'ET' => '+251',
107
-	'SO' => '+252',
108
-	'ZW' => '+263',
109
-	'SA' => '+966',
110
-	'ES' => '+34',
111
-	'ER' => '+291',
112
-	'ME' => '+382',
113
-	'MD' => '+373',
114
-	'MG' => '+261',
115
-	'MF' => '+590',
116
-	'MA' => '+212',
117
-	'MC' => '+377',
118
-	'UZ' => '+998',
119
-	'MM' => '+95',
120
-	'ML' => '+223',
121
-	'MO' => '+853',
122
-	'MN' => '+976',
123
-	'MH' => '+692',
124
-	'MK' => '+389',
125
-	'MU' => '+230',
126
-	'MT' => '+356',
127
-	'MW' => '+265',
128
-	'MV' => '+960',
129
-	'MQ' => '+596',
130
-	'MP' => '+1670',
131
-	'MS' => '+1664',
132
-	'MR' => '+222',
133
-	'IM' => '+441624',
134
-	'UG' => '+256',
135
-	'TZ' => '+255',
136
-	'MY' => '+60',
137
-	'MX' => '+52',
138
-	'IL' => '+972',
139
-	'FR' => '+33',
140
-	'IO' => '+246',
141
-	'SH' => '+290',
142
-	'FI' => '+358',
143
-	'FJ' => '+679',
144
-	'FK' => '+500',
145
-	'FM' => '+691',
146
-	'FO' => '+298',
147
-	'NI' => '+505',
148
-	'NL' => '+31',
149
-	'NO' => '+47',
150
-	'NA' => '+264',
151
-	'VU' => '+678',
152
-	'NC' => '+687',
153
-	'NE' => '+227',
154
-	'NF' => '+672',
155
-	'NG' => '+234',
156
-	'NZ' => '+64',
157
-	'NP' => '+977',
158
-	'NR' => '+674',
159
-	'NU' => '+683',
160
-	'CK' => '+682',
161
-	'XK' => '',
162
-	'CI' => '+225',
163
-	'CH' => '+41',
164
-	'CO' => '+57',
165
-	'CN' => '+86',
166
-	'CM' => '+237',
167
-	'CL' => '+56',
168
-	'CC' => '+61',
169
-	'CA' => '+1',
170
-	'CG' => '+242',
171
-	'CF' => '+236',
172
-	'CD' => '+243',
173
-	'CZ' => '+420',
174
-	'CY' => '+357',
175
-	'CX' => '+61',
176
-	'CR' => '+506',
177
-	'CW' => '+599',
178
-	'CV' => '+238',
179
-	'CU' => '+53',
180
-	'SZ' => '+268',
181
-	'SY' => '+963',
182
-	'SX' => '+599',
183
-	'KG' => '+996',
184
-	'KE' => '+254',
185
-	'SS' => '+211',
186
-	'SR' => '+597',
187
-	'KI' => '+686',
188
-	'KH' => '+855',
189
-	'KN' => '+1869',
190
-	'KM' => '+269',
191
-	'ST' => '+239',
192
-	'SK' => '+421',
193
-	'KR' => '+82',
194
-	'SI' => '+386',
195
-	'KP' => '+850',
196
-	'KW' => '+965',
197
-	'SN' => '+221',
198
-	'SM' => '+378',
199
-	'SL' => '+232',
200
-	'SC' => '+248',
201
-	'KZ' => '+7',
202
-	'KY' => '+1345',
203
-	'SG' => '+65',
204
-	'SE' => '+46',
205
-	'SD' => '+249',
206
-	'DO' => array(
207
-		'+1809',
208
-		'+1829',
209
-		'+1849',
210
-	),
211
-	'DM' => '+1767',
212
-	'DJ' => '+253',
213
-	'DK' => '+45',
214
-	'VG' => '+1284',
215
-	'DE' => '+49',
216
-	'YE' => '+967',
217
-	'DZ' => '+213',
218
-	'US' => '+1',
219
-	'UY' => '+598',
220
-	'YT' => '+262',
221
-	'UM' => '+1',
222
-	'LB' => '+961',
223
-	'LC' => '+1758',
224
-	'LA' => '+856',
225
-	'TV' => '+688',
226
-	'TW' => '+886',
227
-	'TT' => '+1868',
228
-	'TR' => '+90',
229
-	'LK' => '+94',
230
-	'LI' => '+423',
231
-	'LV' => '+371',
232
-	'TO' => '+676',
233
-	'LT' => '+370',
234
-	'LU' => '+352',
235
-	'LR' => '+231',
236
-	'LS' => '+266',
237
-	'TH' => '+66',
238
-	'TF' => '',
239
-	'TG' => '+228',
240
-	'TD' => '+235',
241
-	'TC' => '+1649',
242
-	'LY' => '+218',
243
-	'VA' => '+379',
244
-	'VC' => '+1784',
245
-	'AE' => '+971',
246
-	'AD' => '+376',
247
-	'AG' => '+1268',
248
-	'AF' => '+93',
249
-	'AI' => '+1264',
250
-	'VI' => '+1340',
251
-	'IS' => '+354',
252
-	'IR' => '+98',
253
-	'AM' => '+374',
254
-	'AL' => '+355',
255
-	'AO' => '+244',
256
-	'AQ' => '',
257
-	'AS' => '+1684',
258
-	'AR' => '+54',
259
-	'AU' => '+61',
260
-	'AT' => '+43',
261
-	'AW' => '+297',
262
-	'IN' => '+91',
263
-	'AX' => '+35818',
264
-	'AZ' => '+994',
265
-	'IE' => '+353',
266
-	'ID' => '+62',
267
-	'UA' => '+380',
268
-	'QA' => '+974',
269
-	'MZ' => '+258',
13
+    'BD' => '+880',
14
+    'BE' => '+32',
15
+    'BF' => '+226',
16
+    'BG' => '+359',
17
+    'BA' => '+387',
18
+    'BB' => '+1246',
19
+    'WF' => '+681',
20
+    'BL' => '+590',
21
+    'BM' => '+1441',
22
+    'BN' => '+673',
23
+    'BO' => '+591',
24
+    'BH' => '+973',
25
+    'BI' => '+257',
26
+    'BJ' => '+229',
27
+    'BT' => '+975',
28
+    'JM' => '+1876',
29
+    'BV' => '',
30
+    'BW' => '+267',
31
+    'WS' => '+685',
32
+    'BQ' => '+599',
33
+    'BR' => '+55',
34
+    'BS' => '+1242',
35
+    'JE' => '+441534',
36
+    'BY' => '+375',
37
+    'BZ' => '+501',
38
+    'RU' => '+7',
39
+    'RW' => '+250',
40
+    'RS' => '+381',
41
+    'TL' => '+670',
42
+    'RE' => '+262',
43
+    'TM' => '+993',
44
+    'TJ' => '+992',
45
+    'RO' => '+40',
46
+    'TK' => '+690',
47
+    'GW' => '+245',
48
+    'GU' => '+1671',
49
+    'GT' => '+502',
50
+    'GS' => '',
51
+    'GR' => '+30',
52
+    'GQ' => '+240',
53
+    'GP' => '+590',
54
+    'JP' => '+81',
55
+    'GY' => '+592',
56
+    'GG' => '+441481',
57
+    'GF' => '+594',
58
+    'GE' => '+995',
59
+    'GD' => '+1473',
60
+    'GB' => '+44',
61
+    'GA' => '+241',
62
+    'SV' => '+503',
63
+    'GN' => '+224',
64
+    'GM' => '+220',
65
+    'GL' => '+299',
66
+    'GI' => '+350',
67
+    'GH' => '+233',
68
+    'OM' => '+968',
69
+    'TN' => '+216',
70
+    'JO' => '+962',
71
+    'HR' => '+385',
72
+    'HT' => '+509',
73
+    'HU' => '+36',
74
+    'HK' => '+852',
75
+    'HN' => '+504',
76
+    'HM' => '',
77
+    'VE' => '+58',
78
+    'PR' => array(
79
+        '+1787',
80
+        '+1939',
81
+    ),
82
+    'PS' => '+970',
83
+    'PW' => '+680',
84
+    'PT' => '+351',
85
+    'SJ' => '+47',
86
+    'PY' => '+595',
87
+    'IQ' => '+964',
88
+    'PA' => '+507',
89
+    'PF' => '+689',
90
+    'PG' => '+675',
91
+    'PE' => '+51',
92
+    'PK' => '+92',
93
+    'PH' => '+63',
94
+    'PN' => '+870',
95
+    'PL' => '+48',
96
+    'PM' => '+508',
97
+    'ZM' => '+260',
98
+    'EH' => '+212',
99
+    'EE' => '+372',
100
+    'EG' => '+20',
101
+    'ZA' => '+27',
102
+    'EC' => '+593',
103
+    'IT' => '+39',
104
+    'VN' => '+84',
105
+    'SB' => '+677',
106
+    'ET' => '+251',
107
+    'SO' => '+252',
108
+    'ZW' => '+263',
109
+    'SA' => '+966',
110
+    'ES' => '+34',
111
+    'ER' => '+291',
112
+    'ME' => '+382',
113
+    'MD' => '+373',
114
+    'MG' => '+261',
115
+    'MF' => '+590',
116
+    'MA' => '+212',
117
+    'MC' => '+377',
118
+    'UZ' => '+998',
119
+    'MM' => '+95',
120
+    'ML' => '+223',
121
+    'MO' => '+853',
122
+    'MN' => '+976',
123
+    'MH' => '+692',
124
+    'MK' => '+389',
125
+    'MU' => '+230',
126
+    'MT' => '+356',
127
+    'MW' => '+265',
128
+    'MV' => '+960',
129
+    'MQ' => '+596',
130
+    'MP' => '+1670',
131
+    'MS' => '+1664',
132
+    'MR' => '+222',
133
+    'IM' => '+441624',
134
+    'UG' => '+256',
135
+    'TZ' => '+255',
136
+    'MY' => '+60',
137
+    'MX' => '+52',
138
+    'IL' => '+972',
139
+    'FR' => '+33',
140
+    'IO' => '+246',
141
+    'SH' => '+290',
142
+    'FI' => '+358',
143
+    'FJ' => '+679',
144
+    'FK' => '+500',
145
+    'FM' => '+691',
146
+    'FO' => '+298',
147
+    'NI' => '+505',
148
+    'NL' => '+31',
149
+    'NO' => '+47',
150
+    'NA' => '+264',
151
+    'VU' => '+678',
152
+    'NC' => '+687',
153
+    'NE' => '+227',
154
+    'NF' => '+672',
155
+    'NG' => '+234',
156
+    'NZ' => '+64',
157
+    'NP' => '+977',
158
+    'NR' => '+674',
159
+    'NU' => '+683',
160
+    'CK' => '+682',
161
+    'XK' => '',
162
+    'CI' => '+225',
163
+    'CH' => '+41',
164
+    'CO' => '+57',
165
+    'CN' => '+86',
166
+    'CM' => '+237',
167
+    'CL' => '+56',
168
+    'CC' => '+61',
169
+    'CA' => '+1',
170
+    'CG' => '+242',
171
+    'CF' => '+236',
172
+    'CD' => '+243',
173
+    'CZ' => '+420',
174
+    'CY' => '+357',
175
+    'CX' => '+61',
176
+    'CR' => '+506',
177
+    'CW' => '+599',
178
+    'CV' => '+238',
179
+    'CU' => '+53',
180
+    'SZ' => '+268',
181
+    'SY' => '+963',
182
+    'SX' => '+599',
183
+    'KG' => '+996',
184
+    'KE' => '+254',
185
+    'SS' => '+211',
186
+    'SR' => '+597',
187
+    'KI' => '+686',
188
+    'KH' => '+855',
189
+    'KN' => '+1869',
190
+    'KM' => '+269',
191
+    'ST' => '+239',
192
+    'SK' => '+421',
193
+    'KR' => '+82',
194
+    'SI' => '+386',
195
+    'KP' => '+850',
196
+    'KW' => '+965',
197
+    'SN' => '+221',
198
+    'SM' => '+378',
199
+    'SL' => '+232',
200
+    'SC' => '+248',
201
+    'KZ' => '+7',
202
+    'KY' => '+1345',
203
+    'SG' => '+65',
204
+    'SE' => '+46',
205
+    'SD' => '+249',
206
+    'DO' => array(
207
+        '+1809',
208
+        '+1829',
209
+        '+1849',
210
+    ),
211
+    'DM' => '+1767',
212
+    'DJ' => '+253',
213
+    'DK' => '+45',
214
+    'VG' => '+1284',
215
+    'DE' => '+49',
216
+    'YE' => '+967',
217
+    'DZ' => '+213',
218
+    'US' => '+1',
219
+    'UY' => '+598',
220
+    'YT' => '+262',
221
+    'UM' => '+1',
222
+    'LB' => '+961',
223
+    'LC' => '+1758',
224
+    'LA' => '+856',
225
+    'TV' => '+688',
226
+    'TW' => '+886',
227
+    'TT' => '+1868',
228
+    'TR' => '+90',
229
+    'LK' => '+94',
230
+    'LI' => '+423',
231
+    'LV' => '+371',
232
+    'TO' => '+676',
233
+    'LT' => '+370',
234
+    'LU' => '+352',
235
+    'LR' => '+231',
236
+    'LS' => '+266',
237
+    'TH' => '+66',
238
+    'TF' => '',
239
+    'TG' => '+228',
240
+    'TD' => '+235',
241
+    'TC' => '+1649',
242
+    'LY' => '+218',
243
+    'VA' => '+379',
244
+    'VC' => '+1784',
245
+    'AE' => '+971',
246
+    'AD' => '+376',
247
+    'AG' => '+1268',
248
+    'AF' => '+93',
249
+    'AI' => '+1264',
250
+    'VI' => '+1340',
251
+    'IS' => '+354',
252
+    'IR' => '+98',
253
+    'AM' => '+374',
254
+    'AL' => '+355',
255
+    'AO' => '+244',
256
+    'AQ' => '',
257
+    'AS' => '+1684',
258
+    'AR' => '+54',
259
+    'AU' => '+61',
260
+    'AT' => '+43',
261
+    'AW' => '+297',
262
+    'IN' => '+91',
263
+    'AX' => '+35818',
264
+    'AZ' => '+994',
265
+    'IE' => '+353',
266
+    'ID' => '+62',
267
+    'UA' => '+380',
268
+    'QA' => '+974',
269
+    'MZ' => '+258',
270 270
 );
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -7,7 +7,7 @@
 block discarded – undo
7 7
  * @package Invoicing/data
8 8
  */
9 9
 
10
-defined( 'ABSPATH' ) || exit;
10
+defined('ABSPATH') || exit;
11 11
 
12 12
 return array(
13 13
 	'BD' => '+880',
Please login to merge, or discard this patch.
includes/data/countries.php 2 patches
Indentation   +252 added lines, -252 removed lines patch added patch discarded remove patch
@@ -12,256 +12,256 @@
 block discarded – undo
12 12
 defined( 'ABSPATH' ) || exit;
13 13
 
14 14
 return array(
15
-	'US' => __('United States', 'invoicing'),
16
-	'CA' => __('Canada', 'invoicing'),
17
-	'GB' => __('United Kingdom', 'invoicing'),
18
-	'AF' => __('Afghanistan', 'invoicing'),
19
-	'AX' => __('Aland Islands', 'invoicing'),
20
-	'AL' => __('Albania', 'invoicing'),
21
-	'DZ' => __('Algeria', 'invoicing'),
22
-	'AS' => __('American Samoa', 'invoicing'),
23
-	'AD' => __('Andorra', 'invoicing'),
24
-	'AO' => __('Angola', 'invoicing'),
25
-	'AI' => __('Anguilla', 'invoicing'),
26
-	'AQ' => __('Antarctica', 'invoicing'),
27
-	'AG' => __('Antigua and Barbuda', 'invoicing'),
28
-	'AR' => __('Argentina', 'invoicing'),
29
-	'AM' => __('Armenia', 'invoicing'),
30
-	'AW' => __('Aruba', 'invoicing'),
31
-	'AU' => __('Australia', 'invoicing'),
32
-	'AT' => __('Austria', 'invoicing'),
33
-	'AZ' => __('Azerbaijan', 'invoicing'),
34
-	'BS' => __('Bahamas', 'invoicing'),
35
-	'BH' => __('Bahrain', 'invoicing'),
36
-	'BD' => __('Bangladesh', 'invoicing'),
37
-	'BB' => __('Barbados', 'invoicing'),
38
-	'BY' => __('Belarus', 'invoicing'),
39
-	'BE' => __('Belgium', 'invoicing'),
40
-	'BZ' => __('Belize', 'invoicing'),
41
-	'BJ' => __('Benin', 'invoicing'),
42
-	'BM' => __('Bermuda', 'invoicing'),
43
-	'BT' => __('Bhutan', 'invoicing'),
44
-	'BO' => __('Bolivia', 'invoicing'),
45
-	'BQ' => __('Bonaire, Saint Eustatius and Saba', 'invoicing'),
46
-	'BA' => __('Bosnia and Herzegovina', 'invoicing'),
47
-	'BW' => __('Botswana', 'invoicing'),
48
-	'BV' => __('Bouvet Island', 'invoicing'),
49
-	'BR' => __('Brazil', 'invoicing'),
50
-	'IO' => __('British Indian Ocean Territory', 'invoicing'),
51
-	'BN' => __('Brunei Darrussalam', 'invoicing'),
52
-	'BG' => __('Bulgaria', 'invoicing'),
53
-	'BF' => __('Burkina Faso', 'invoicing'),
54
-	'BI' => __('Burundi', 'invoicing'),
55
-	'KH' => __('Cambodia', 'invoicing'),
56
-	'CM' => __('Cameroon', 'invoicing'),
57
-	'CV' => __('Cape Verde', 'invoicing'),
58
-	'KY' => __('Cayman Islands', 'invoicing'),
59
-	'CF' => __('Central African Republic', 'invoicing'),
60
-	'TD' => __('Chad', 'invoicing'),
61
-	'CL' => __('Chile', 'invoicing'),
62
-	'CN' => __('China', 'invoicing'),
63
-	'CX' => __('Christmas Island', 'invoicing'),
64
-	'CC' => __('Cocos Islands', 'invoicing'),
65
-	'CO' => __('Colombia', 'invoicing'),
66
-	'KM' => __('Comoros', 'invoicing'),
67
-	'CD' => __('Congo, Democratic People\'s Republic', 'invoicing'),
68
-	'CG' => __('Congo, Republic of', 'invoicing'),
69
-	'CK' => __('Cook Islands', 'invoicing'),
70
-	'CR' => __('Costa Rica', 'invoicing'),
71
-	'CI' => __('Cote d\'Ivoire', 'invoicing'),
72
-	'HR' => __('Croatia/Hrvatska', 'invoicing'),
73
-	'CU' => __('Cuba', 'invoicing'),
74
-	'CW' => __('CuraÇao', 'invoicing'),
75
-	'CY' => __('Cyprus', 'invoicing'),
76
-	'CZ' => __('Czech Republic', 'invoicing'),
77
-	'DK' => __('Denmark', 'invoicing'),
78
-	'DJ' => __('Djibouti', 'invoicing'),
79
-	'DM' => __('Dominica', 'invoicing'),
80
-	'DO' => __('Dominican Republic', 'invoicing'),
81
-	'TP' => __('East Timor', 'invoicing'),
82
-	'EC' => __('Ecuador', 'invoicing'),
83
-	'EG' => __('Egypt', 'invoicing'),
84
-	'GQ' => __('Equatorial Guinea', 'invoicing'),
85
-	'SV' => __('El Salvador', 'invoicing'),
86
-	'ER' => __('Eritrea', 'invoicing'),
87
-	'EE' => __('Estonia', 'invoicing'),
88
-	'ET' => __('Ethiopia', 'invoicing'),
89
-	'FK' => __('Falkland Islands', 'invoicing'),
90
-	'FO' => __('Faroe Islands', 'invoicing'),
91
-	'FJ' => __('Fiji', 'invoicing'),
92
-	'FI' => __('Finland', 'invoicing'),
93
-	'FR' => __('France', 'invoicing'),
94
-	'GF' => __('French Guiana', 'invoicing'),
95
-	'PF' => __('French Polynesia', 'invoicing'),
96
-	'TF' => __('French Southern Territories', 'invoicing'),
97
-	'GA' => __('Gabon', 'invoicing'),
98
-	'GM' => __('Gambia', 'invoicing'),
99
-	'GE' => __('Georgia', 'invoicing'),
100
-	'DE' => __('Germany', 'invoicing'),
101
-	'GR' => __('Greece', 'invoicing'),
102
-	'GH' => __('Ghana', 'invoicing'),
103
-	'GI' => __('Gibraltar', 'invoicing'),
104
-	'GL' => __('Greenland', 'invoicing'),
105
-	'GD' => __('Grenada', 'invoicing'),
106
-	'GP' => __('Guadeloupe', 'invoicing'),
107
-	'GU' => __('Guam', 'invoicing'),
108
-	'GT' => __('Guatemala', 'invoicing'),
109
-	'GG' => __('Guernsey', 'invoicing'),
110
-	'GN' => __('Guinea', 'invoicing'),
111
-	'GW' => __('Guinea-Bissau', 'invoicing'),
112
-	'GY' => __('Guyana', 'invoicing'),
113
-	'HT' => __('Haiti', 'invoicing'),
114
-	'HM' => __('Heard and McDonald Islands', 'invoicing'),
115
-	'VA' => __('Holy See (City Vatican State)', 'invoicing'),
116
-	'HN' => __('Honduras', 'invoicing'),
117
-	'HK' => __('Hong Kong', 'invoicing'),
118
-	'HU' => __('Hungary', 'invoicing'),
119
-	'IS' => __('Iceland', 'invoicing'),
120
-	'IN' => __('India', 'invoicing'),
121
-	'ID' => __('Indonesia', 'invoicing'),
122
-	'IR' => __('Iran', 'invoicing'),
123
-	'IQ' => __('Iraq', 'invoicing'),
124
-	'IE' => __('Ireland', 'invoicing'),
125
-	'IM' => __('Isle of Man', 'invoicing'),
126
-	'IL' => __('Israel', 'invoicing'),
127
-	'IT' => __('Italy', 'invoicing'),
128
-	'JM' => __('Jamaica', 'invoicing'),
129
-	'JP' => __('Japan', 'invoicing'),
130
-	'JE' => __('Jersey', 'invoicing'),
131
-	'JO' => __('Jordan', 'invoicing'),
132
-	'KZ' => __('Kazakhstan', 'invoicing'),
133
-	'KE' => __('Kenya', 'invoicing'),
134
-	'KI' => __('Kiribati', 'invoicing'),
135
-	'KW' => __('Kuwait', 'invoicing'),
136
-	'KG' => __('Kyrgyzstan', 'invoicing'),
137
-	'LA' => __('Lao People\'s Democratic Republic', 'invoicing'),
138
-	'LV' => __('Latvia', 'invoicing'),
139
-	'LB' => __('Lebanon', 'invoicing'),
140
-	'LS' => __('Lesotho', 'invoicing'),
141
-	'LR' => __('Liberia', 'invoicing'),
142
-	'LY' => __('Libyan Arab Jamahiriya', 'invoicing'),
143
-	'LI' => __('Liechtenstein', 'invoicing'),
144
-	'LT' => __('Lithuania', 'invoicing'),
145
-	'LU' => __('Luxembourg', 'invoicing'),
146
-	'MO' => __('Macau', 'invoicing'),
147
-	'MK' => __('Macedonia', 'invoicing'),
148
-	'MG' => __('Madagascar', 'invoicing'),
149
-	'MW' => __('Malawi', 'invoicing'),
150
-	'MY' => __('Malaysia', 'invoicing'),
151
-	'MV' => __('Maldives', 'invoicing'),
152
-	'ML' => __('Mali', 'invoicing'),
153
-	'MT' => __('Malta', 'invoicing'),
154
-	'MH' => __('Marshall Islands', 'invoicing'),
155
-	'MQ' => __('Martinique', 'invoicing'),
156
-	'MR' => __('Mauritania', 'invoicing'),
157
-	'MU' => __('Mauritius', 'invoicing'),
158
-	'YT' => __('Mayotte', 'invoicing'),
159
-	'MX' => __('Mexico', 'invoicing'),
160
-	'FM' => __('Micronesia', 'invoicing'),
161
-	'MD' => __('Moldova, Republic of', 'invoicing'),
162
-	'MC' => __('Monaco', 'invoicing'),
163
-	'MN' => __('Mongolia', 'invoicing'),
164
-	'ME' => __('Montenegro', 'invoicing'),
165
-	'MS' => __('Montserrat', 'invoicing'),
166
-	'MA' => __('Morocco', 'invoicing'),
167
-	'MZ' => __('Mozambique', 'invoicing'),
168
-	'MM' => __('Myanmar', 'invoicing'),
169
-	'NA' => __('Namibia', 'invoicing'),
170
-	'NR' => __('Nauru', 'invoicing'),
171
-	'NP' => __('Nepal', 'invoicing'),
172
-	'NL' => __('Netherlands', 'invoicing'),
173
-	'AN' => __('Netherlands Antilles', 'invoicing'),
174
-	'NC' => __('New Caledonia', 'invoicing'),
175
-	'NZ' => __('New Zealand', 'invoicing'),
176
-	'NI' => __('Nicaragua', 'invoicing'),
177
-	'NE' => __('Niger', 'invoicing'),
178
-	'NG' => __('Nigeria', 'invoicing'),
179
-	'NU' => __('Niue', 'invoicing'),
180
-	'NF' => __('Norfolk Island', 'invoicing'),
181
-	'KP' => __('North Korea', 'invoicing'),
182
-	'MP' => __('Northern Mariana Islands', 'invoicing'),
183
-	'NO' => __('Norway', 'invoicing'),
184
-	'OM' => __('Oman', 'invoicing'),
185
-	'PK' => __('Pakistan', 'invoicing'),
186
-	'PW' => __('Palau', 'invoicing'),
187
-	'PS' => __('Palestinian Territories', 'invoicing'),
188
-	'PA' => __('Panama', 'invoicing'),
189
-	'PG' => __('Papua New Guinea', 'invoicing'),
190
-	'PY' => __('Paraguay', 'invoicing'),
191
-	'PE' => __('Peru', 'invoicing'),
192
-	'PH' => __('Phillipines', 'invoicing'),
193
-	'PN' => __('Pitcairn Island', 'invoicing'),
194
-	'PL' => __('Poland', 'invoicing'),
195
-	'PT' => __('Portugal', 'invoicing'),
196
-	'PR' => __('Puerto Rico', 'invoicing'),
197
-	'QA' => __('Qatar', 'invoicing'),
198
-	'XK' => __('Republic of Kosovo', 'invoicing'),
199
-	'RE' => __('Reunion Island', 'invoicing'),
200
-	'RO' => __('Romania', 'invoicing'),
201
-	'RU' => __('Russian Federation', 'invoicing'),
202
-	'RW' => __('Rwanda', 'invoicing'),
203
-	'BL' => __('Saint Barthélemy', 'invoicing'),
204
-	'SH' => __('Saint Helena', 'invoicing'),
205
-	'KN' => __('Saint Kitts and Nevis', 'invoicing'),
206
-	'LC' => __('Saint Lucia', 'invoicing'),
207
-	'MF' => __('Saint Martin (French)', 'invoicing'),
208
-	'SX' => __('Saint Martin (Dutch)', 'invoicing'),
209
-	'PM' => __('Saint Pierre and Miquelon', 'invoicing'),
210
-	'VC' => __('Saint Vincent and the Grenadines', 'invoicing'),
211
-	'SM' => __('San Marino', 'invoicing'),
212
-	'ST' => __('São Tomé and Príncipe', 'invoicing'),
213
-	'SA' => __('Saudi Arabia', 'invoicing'),
214
-	'SN' => __('Senegal', 'invoicing'),
215
-	'RS' => __('Serbia', 'invoicing'),
216
-	'SC' => __('Seychelles', 'invoicing'),
217
-	'SL' => __('Sierra Leone', 'invoicing'),
218
-	'SG' => __('Singapore', 'invoicing'),
219
-	'SK' => __('Slovak Republic', 'invoicing'),
220
-	'SI' => __('Slovenia', 'invoicing'),
221
-	'SB' => __('Solomon Islands', 'invoicing'),
222
-	'SO' => __('Somalia', 'invoicing'),
223
-	'ZA' => __('South Africa', 'invoicing'),
224
-	'GS' => __('South Georgia', 'invoicing'),
225
-	'KR' => __('South Korea', 'invoicing'),
226
-	'SS' => __('South Sudan', 'invoicing'),
227
-	'ES' => __('Spain', 'invoicing'),
228
-	'LK' => __('Sri Lanka', 'invoicing'),
229
-	'SD' => __('Sudan', 'invoicing'),
230
-	'SR' => __('Suriname', 'invoicing'),
231
-	'SJ' => __('Svalbard and Jan Mayen Islands', 'invoicing'),
232
-	'SZ' => __('Swaziland', 'invoicing'),
233
-	'SE' => __('Sweden', 'invoicing'),
234
-	'CH' => __('Switzerland', 'invoicing'),
235
-	'SY' => __('Syrian Arab Republic', 'invoicing'),
236
-	'TW' => __('Taiwan', 'invoicing'),
237
-	'TJ' => __('Tajikistan', 'invoicing'),
238
-	'TZ' => __('Tanzania', 'invoicing'),
239
-	'TH' => __('Thailand', 'invoicing'),
240
-	'TL' => __('Timor-Leste', 'invoicing'),
241
-	'TG' => __('Togo', 'invoicing'),
242
-	'TK' => __('Tokelau', 'invoicing'),
243
-	'TO' => __('Tonga', 'invoicing'),
244
-	'TT' => __('Trinidad and Tobago', 'invoicing'),
245
-	'TN' => __('Tunisia', 'invoicing'),
246
-	'TR' => __('Turkey', 'invoicing'),
247
-	'TM' => __('Turkmenistan', 'invoicing'),
248
-	'TC' => __('Turks and Caicos Islands', 'invoicing'),
249
-	'TV' => __('Tuvalu', 'invoicing'),
250
-	'UG' => __('Uganda', 'invoicing'),
251
-	'UA' => __('Ukraine', 'invoicing'),
252
-	'AE' => __('United Arab Emirates', 'invoicing'),
253
-	'UY' => __('Uruguay', 'invoicing'),
254
-	'UM' => __('US Minor Outlying Islands', 'invoicing'),
255
-	'UZ' => __('Uzbekistan', 'invoicing'),
256
-	'VU' => __('Vanuatu', 'invoicing'),
257
-	'VE' => __('Venezuela', 'invoicing'),
258
-	'VN' => __('Vietnam', 'invoicing'),
259
-	'VG' => __('Virgin Islands (British)', 'invoicing'),
260
-	'VI' => __('Virgin Islands (USA)', 'invoicing'),
261
-	'WF' => __('Wallis and Futuna Islands', 'invoicing'),
262
-	'EH' => __('Western Sahara', 'invoicing'),
263
-	'WS' => __('Western Samoa', 'invoicing'),
264
-	'YE' => __('Yemen', 'invoicing'),
265
-	'ZM' => __('Zambia', 'invoicing'),
266
-	'ZW' => __('Zimbabwe', 'invoicing'),
15
+    'US' => __('United States', 'invoicing'),
16
+    'CA' => __('Canada', 'invoicing'),
17
+    'GB' => __('United Kingdom', 'invoicing'),
18
+    'AF' => __('Afghanistan', 'invoicing'),
19
+    'AX' => __('Aland Islands', 'invoicing'),
20
+    'AL' => __('Albania', 'invoicing'),
21
+    'DZ' => __('Algeria', 'invoicing'),
22
+    'AS' => __('American Samoa', 'invoicing'),
23
+    'AD' => __('Andorra', 'invoicing'),
24
+    'AO' => __('Angola', 'invoicing'),
25
+    'AI' => __('Anguilla', 'invoicing'),
26
+    'AQ' => __('Antarctica', 'invoicing'),
27
+    'AG' => __('Antigua and Barbuda', 'invoicing'),
28
+    'AR' => __('Argentina', 'invoicing'),
29
+    'AM' => __('Armenia', 'invoicing'),
30
+    'AW' => __('Aruba', 'invoicing'),
31
+    'AU' => __('Australia', 'invoicing'),
32
+    'AT' => __('Austria', 'invoicing'),
33
+    'AZ' => __('Azerbaijan', 'invoicing'),
34
+    'BS' => __('Bahamas', 'invoicing'),
35
+    'BH' => __('Bahrain', 'invoicing'),
36
+    'BD' => __('Bangladesh', 'invoicing'),
37
+    'BB' => __('Barbados', 'invoicing'),
38
+    'BY' => __('Belarus', 'invoicing'),
39
+    'BE' => __('Belgium', 'invoicing'),
40
+    'BZ' => __('Belize', 'invoicing'),
41
+    'BJ' => __('Benin', 'invoicing'),
42
+    'BM' => __('Bermuda', 'invoicing'),
43
+    'BT' => __('Bhutan', 'invoicing'),
44
+    'BO' => __('Bolivia', 'invoicing'),
45
+    'BQ' => __('Bonaire, Saint Eustatius and Saba', 'invoicing'),
46
+    'BA' => __('Bosnia and Herzegovina', 'invoicing'),
47
+    'BW' => __('Botswana', 'invoicing'),
48
+    'BV' => __('Bouvet Island', 'invoicing'),
49
+    'BR' => __('Brazil', 'invoicing'),
50
+    'IO' => __('British Indian Ocean Territory', 'invoicing'),
51
+    'BN' => __('Brunei Darrussalam', 'invoicing'),
52
+    'BG' => __('Bulgaria', 'invoicing'),
53
+    'BF' => __('Burkina Faso', 'invoicing'),
54
+    'BI' => __('Burundi', 'invoicing'),
55
+    'KH' => __('Cambodia', 'invoicing'),
56
+    'CM' => __('Cameroon', 'invoicing'),
57
+    'CV' => __('Cape Verde', 'invoicing'),
58
+    'KY' => __('Cayman Islands', 'invoicing'),
59
+    'CF' => __('Central African Republic', 'invoicing'),
60
+    'TD' => __('Chad', 'invoicing'),
61
+    'CL' => __('Chile', 'invoicing'),
62
+    'CN' => __('China', 'invoicing'),
63
+    'CX' => __('Christmas Island', 'invoicing'),
64
+    'CC' => __('Cocos Islands', 'invoicing'),
65
+    'CO' => __('Colombia', 'invoicing'),
66
+    'KM' => __('Comoros', 'invoicing'),
67
+    'CD' => __('Congo, Democratic People\'s Republic', 'invoicing'),
68
+    'CG' => __('Congo, Republic of', 'invoicing'),
69
+    'CK' => __('Cook Islands', 'invoicing'),
70
+    'CR' => __('Costa Rica', 'invoicing'),
71
+    'CI' => __('Cote d\'Ivoire', 'invoicing'),
72
+    'HR' => __('Croatia/Hrvatska', 'invoicing'),
73
+    'CU' => __('Cuba', 'invoicing'),
74
+    'CW' => __('CuraÇao', 'invoicing'),
75
+    'CY' => __('Cyprus', 'invoicing'),
76
+    'CZ' => __('Czech Republic', 'invoicing'),
77
+    'DK' => __('Denmark', 'invoicing'),
78
+    'DJ' => __('Djibouti', 'invoicing'),
79
+    'DM' => __('Dominica', 'invoicing'),
80
+    'DO' => __('Dominican Republic', 'invoicing'),
81
+    'TP' => __('East Timor', 'invoicing'),
82
+    'EC' => __('Ecuador', 'invoicing'),
83
+    'EG' => __('Egypt', 'invoicing'),
84
+    'GQ' => __('Equatorial Guinea', 'invoicing'),
85
+    'SV' => __('El Salvador', 'invoicing'),
86
+    'ER' => __('Eritrea', 'invoicing'),
87
+    'EE' => __('Estonia', 'invoicing'),
88
+    'ET' => __('Ethiopia', 'invoicing'),
89
+    'FK' => __('Falkland Islands', 'invoicing'),
90
+    'FO' => __('Faroe Islands', 'invoicing'),
91
+    'FJ' => __('Fiji', 'invoicing'),
92
+    'FI' => __('Finland', 'invoicing'),
93
+    'FR' => __('France', 'invoicing'),
94
+    'GF' => __('French Guiana', 'invoicing'),
95
+    'PF' => __('French Polynesia', 'invoicing'),
96
+    'TF' => __('French Southern Territories', 'invoicing'),
97
+    'GA' => __('Gabon', 'invoicing'),
98
+    'GM' => __('Gambia', 'invoicing'),
99
+    'GE' => __('Georgia', 'invoicing'),
100
+    'DE' => __('Germany', 'invoicing'),
101
+    'GR' => __('Greece', 'invoicing'),
102
+    'GH' => __('Ghana', 'invoicing'),
103
+    'GI' => __('Gibraltar', 'invoicing'),
104
+    'GL' => __('Greenland', 'invoicing'),
105
+    'GD' => __('Grenada', 'invoicing'),
106
+    'GP' => __('Guadeloupe', 'invoicing'),
107
+    'GU' => __('Guam', 'invoicing'),
108
+    'GT' => __('Guatemala', 'invoicing'),
109
+    'GG' => __('Guernsey', 'invoicing'),
110
+    'GN' => __('Guinea', 'invoicing'),
111
+    'GW' => __('Guinea-Bissau', 'invoicing'),
112
+    'GY' => __('Guyana', 'invoicing'),
113
+    'HT' => __('Haiti', 'invoicing'),
114
+    'HM' => __('Heard and McDonald Islands', 'invoicing'),
115
+    'VA' => __('Holy See (City Vatican State)', 'invoicing'),
116
+    'HN' => __('Honduras', 'invoicing'),
117
+    'HK' => __('Hong Kong', 'invoicing'),
118
+    'HU' => __('Hungary', 'invoicing'),
119
+    'IS' => __('Iceland', 'invoicing'),
120
+    'IN' => __('India', 'invoicing'),
121
+    'ID' => __('Indonesia', 'invoicing'),
122
+    'IR' => __('Iran', 'invoicing'),
123
+    'IQ' => __('Iraq', 'invoicing'),
124
+    'IE' => __('Ireland', 'invoicing'),
125
+    'IM' => __('Isle of Man', 'invoicing'),
126
+    'IL' => __('Israel', 'invoicing'),
127
+    'IT' => __('Italy', 'invoicing'),
128
+    'JM' => __('Jamaica', 'invoicing'),
129
+    'JP' => __('Japan', 'invoicing'),
130
+    'JE' => __('Jersey', 'invoicing'),
131
+    'JO' => __('Jordan', 'invoicing'),
132
+    'KZ' => __('Kazakhstan', 'invoicing'),
133
+    'KE' => __('Kenya', 'invoicing'),
134
+    'KI' => __('Kiribati', 'invoicing'),
135
+    'KW' => __('Kuwait', 'invoicing'),
136
+    'KG' => __('Kyrgyzstan', 'invoicing'),
137
+    'LA' => __('Lao People\'s Democratic Republic', 'invoicing'),
138
+    'LV' => __('Latvia', 'invoicing'),
139
+    'LB' => __('Lebanon', 'invoicing'),
140
+    'LS' => __('Lesotho', 'invoicing'),
141
+    'LR' => __('Liberia', 'invoicing'),
142
+    'LY' => __('Libyan Arab Jamahiriya', 'invoicing'),
143
+    'LI' => __('Liechtenstein', 'invoicing'),
144
+    'LT' => __('Lithuania', 'invoicing'),
145
+    'LU' => __('Luxembourg', 'invoicing'),
146
+    'MO' => __('Macau', 'invoicing'),
147
+    'MK' => __('Macedonia', 'invoicing'),
148
+    'MG' => __('Madagascar', 'invoicing'),
149
+    'MW' => __('Malawi', 'invoicing'),
150
+    'MY' => __('Malaysia', 'invoicing'),
151
+    'MV' => __('Maldives', 'invoicing'),
152
+    'ML' => __('Mali', 'invoicing'),
153
+    'MT' => __('Malta', 'invoicing'),
154
+    'MH' => __('Marshall Islands', 'invoicing'),
155
+    'MQ' => __('Martinique', 'invoicing'),
156
+    'MR' => __('Mauritania', 'invoicing'),
157
+    'MU' => __('Mauritius', 'invoicing'),
158
+    'YT' => __('Mayotte', 'invoicing'),
159
+    'MX' => __('Mexico', 'invoicing'),
160
+    'FM' => __('Micronesia', 'invoicing'),
161
+    'MD' => __('Moldova, Republic of', 'invoicing'),
162
+    'MC' => __('Monaco', 'invoicing'),
163
+    'MN' => __('Mongolia', 'invoicing'),
164
+    'ME' => __('Montenegro', 'invoicing'),
165
+    'MS' => __('Montserrat', 'invoicing'),
166
+    'MA' => __('Morocco', 'invoicing'),
167
+    'MZ' => __('Mozambique', 'invoicing'),
168
+    'MM' => __('Myanmar', 'invoicing'),
169
+    'NA' => __('Namibia', 'invoicing'),
170
+    'NR' => __('Nauru', 'invoicing'),
171
+    'NP' => __('Nepal', 'invoicing'),
172
+    'NL' => __('Netherlands', 'invoicing'),
173
+    'AN' => __('Netherlands Antilles', 'invoicing'),
174
+    'NC' => __('New Caledonia', 'invoicing'),
175
+    'NZ' => __('New Zealand', 'invoicing'),
176
+    'NI' => __('Nicaragua', 'invoicing'),
177
+    'NE' => __('Niger', 'invoicing'),
178
+    'NG' => __('Nigeria', 'invoicing'),
179
+    'NU' => __('Niue', 'invoicing'),
180
+    'NF' => __('Norfolk Island', 'invoicing'),
181
+    'KP' => __('North Korea', 'invoicing'),
182
+    'MP' => __('Northern Mariana Islands', 'invoicing'),
183
+    'NO' => __('Norway', 'invoicing'),
184
+    'OM' => __('Oman', 'invoicing'),
185
+    'PK' => __('Pakistan', 'invoicing'),
186
+    'PW' => __('Palau', 'invoicing'),
187
+    'PS' => __('Palestinian Territories', 'invoicing'),
188
+    'PA' => __('Panama', 'invoicing'),
189
+    'PG' => __('Papua New Guinea', 'invoicing'),
190
+    'PY' => __('Paraguay', 'invoicing'),
191
+    'PE' => __('Peru', 'invoicing'),
192
+    'PH' => __('Phillipines', 'invoicing'),
193
+    'PN' => __('Pitcairn Island', 'invoicing'),
194
+    'PL' => __('Poland', 'invoicing'),
195
+    'PT' => __('Portugal', 'invoicing'),
196
+    'PR' => __('Puerto Rico', 'invoicing'),
197
+    'QA' => __('Qatar', 'invoicing'),
198
+    'XK' => __('Republic of Kosovo', 'invoicing'),
199
+    'RE' => __('Reunion Island', 'invoicing'),
200
+    'RO' => __('Romania', 'invoicing'),
201
+    'RU' => __('Russian Federation', 'invoicing'),
202
+    'RW' => __('Rwanda', 'invoicing'),
203
+    'BL' => __('Saint Barthélemy', 'invoicing'),
204
+    'SH' => __('Saint Helena', 'invoicing'),
205
+    'KN' => __('Saint Kitts and Nevis', 'invoicing'),
206
+    'LC' => __('Saint Lucia', 'invoicing'),
207
+    'MF' => __('Saint Martin (French)', 'invoicing'),
208
+    'SX' => __('Saint Martin (Dutch)', 'invoicing'),
209
+    'PM' => __('Saint Pierre and Miquelon', 'invoicing'),
210
+    'VC' => __('Saint Vincent and the Grenadines', 'invoicing'),
211
+    'SM' => __('San Marino', 'invoicing'),
212
+    'ST' => __('São Tomé and Príncipe', 'invoicing'),
213
+    'SA' => __('Saudi Arabia', 'invoicing'),
214
+    'SN' => __('Senegal', 'invoicing'),
215
+    'RS' => __('Serbia', 'invoicing'),
216
+    'SC' => __('Seychelles', 'invoicing'),
217
+    'SL' => __('Sierra Leone', 'invoicing'),
218
+    'SG' => __('Singapore', 'invoicing'),
219
+    'SK' => __('Slovak Republic', 'invoicing'),
220
+    'SI' => __('Slovenia', 'invoicing'),
221
+    'SB' => __('Solomon Islands', 'invoicing'),
222
+    'SO' => __('Somalia', 'invoicing'),
223
+    'ZA' => __('South Africa', 'invoicing'),
224
+    'GS' => __('South Georgia', 'invoicing'),
225
+    'KR' => __('South Korea', 'invoicing'),
226
+    'SS' => __('South Sudan', 'invoicing'),
227
+    'ES' => __('Spain', 'invoicing'),
228
+    'LK' => __('Sri Lanka', 'invoicing'),
229
+    'SD' => __('Sudan', 'invoicing'),
230
+    'SR' => __('Suriname', 'invoicing'),
231
+    'SJ' => __('Svalbard and Jan Mayen Islands', 'invoicing'),
232
+    'SZ' => __('Swaziland', 'invoicing'),
233
+    'SE' => __('Sweden', 'invoicing'),
234
+    'CH' => __('Switzerland', 'invoicing'),
235
+    'SY' => __('Syrian Arab Republic', 'invoicing'),
236
+    'TW' => __('Taiwan', 'invoicing'),
237
+    'TJ' => __('Tajikistan', 'invoicing'),
238
+    'TZ' => __('Tanzania', 'invoicing'),
239
+    'TH' => __('Thailand', 'invoicing'),
240
+    'TL' => __('Timor-Leste', 'invoicing'),
241
+    'TG' => __('Togo', 'invoicing'),
242
+    'TK' => __('Tokelau', 'invoicing'),
243
+    'TO' => __('Tonga', 'invoicing'),
244
+    'TT' => __('Trinidad and Tobago', 'invoicing'),
245
+    'TN' => __('Tunisia', 'invoicing'),
246
+    'TR' => __('Turkey', 'invoicing'),
247
+    'TM' => __('Turkmenistan', 'invoicing'),
248
+    'TC' => __('Turks and Caicos Islands', 'invoicing'),
249
+    'TV' => __('Tuvalu', 'invoicing'),
250
+    'UG' => __('Uganda', 'invoicing'),
251
+    'UA' => __('Ukraine', 'invoicing'),
252
+    'AE' => __('United Arab Emirates', 'invoicing'),
253
+    'UY' => __('Uruguay', 'invoicing'),
254
+    'UM' => __('US Minor Outlying Islands', 'invoicing'),
255
+    'UZ' => __('Uzbekistan', 'invoicing'),
256
+    'VU' => __('Vanuatu', 'invoicing'),
257
+    'VE' => __('Venezuela', 'invoicing'),
258
+    'VN' => __('Vietnam', 'invoicing'),
259
+    'VG' => __('Virgin Islands (British)', 'invoicing'),
260
+    'VI' => __('Virgin Islands (USA)', 'invoicing'),
261
+    'WF' => __('Wallis and Futuna Islands', 'invoicing'),
262
+    'EH' => __('Western Sahara', 'invoicing'),
263
+    'WS' => __('Western Samoa', 'invoicing'),
264
+    'YE' => __('Yemen', 'invoicing'),
265
+    'ZM' => __('Zambia', 'invoicing'),
266
+    'ZW' => __('Zimbabwe', 'invoicing'),
267 267
 );
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -9,7 +9,7 @@
 block discarded – undo
9 9
  * @version 1.0.14
10 10
  */
11 11
 
12
-defined( 'ABSPATH' ) || exit;
12
+defined('ABSPATH') || exit;
13 13
 
14 14
 return array(
15 15
 	'US' => __('United States', 'invoicing'),
Please login to merge, or discard this patch.
widgets/buy-item.php 2 patches
Indentation   +49 added lines, -49 removed lines patch added patch discarded remove patch
@@ -38,29 +38,29 @@  discard block
 block discarded – undo
38 38
                     'advanced'    => false
39 39
                 ),
40 40
                 'items'  => array(
41
-	                'title'       => __( 'Items to buy', 'invoicing' ),
42
-	                'desc'        => __( 'Enter comma separated list of invoicing item id and quantity (item_id|quantity). Ex. 101|2 ', 'invoicing' ),
43
-	                'type'        => 'text',
44
-	                'desc_tip'    => true,
45
-	                'default'     => '',
46
-	                'placeholder' => __('Items to buy','invoicing'),
47
-	                'advanced'    => false
41
+                    'title'       => __( 'Items to buy', 'invoicing' ),
42
+                    'desc'        => __( 'Enter comma separated list of invoicing item id and quantity (item_id|quantity). Ex. 101|2 ', 'invoicing' ),
43
+                    'type'        => 'text',
44
+                    'desc_tip'    => true,
45
+                    'default'     => '',
46
+                    'placeholder' => __('Items to buy','invoicing'),
47
+                    'advanced'    => false
48 48
                 ),
49 49
                 'label'  => array(
50
-	                'title'       => __( 'Button Label', 'invoicing' ),
51
-	                'desc'        => __( 'Enter button label. Default "Buy Now".', 'invoicing' ),
52
-	                'type'        => 'text',
53
-	                'desc_tip'    => true,
54
-	                'default'     => __( 'Buy Now', 'invoicing' ),
55
-	                'advanced'    => false
50
+                    'title'       => __( 'Button Label', 'invoicing' ),
51
+                    'desc'        => __( 'Enter button label. Default "Buy Now".', 'invoicing' ),
52
+                    'type'        => 'text',
53
+                    'desc_tip'    => true,
54
+                    'default'     => __( 'Buy Now', 'invoicing' ),
55
+                    'advanced'    => false
56 56
                 ),
57 57
                 'post_id'  => array(
58
-	                'title'       => __( 'Post ID', 'invoicing' ),
59
-	                'desc'        => __( 'Enter related post ID. This is for 3rd party add ons and not mandatory field.', 'invoicing' ),
60
-	                'type'        => 'number',
61
-	                'desc_tip'    => true,
62
-	                'default'     => '',
63
-	                'advanced'    => true
58
+                    'title'       => __( 'Post ID', 'invoicing' ),
59
+                    'desc'        => __( 'Enter related post ID. This is for 3rd party add ons and not mandatory field.', 'invoicing' ),
60
+                    'type'        => 'number',
61
+                    'desc_tip'    => true,
62
+                    'default'     => '',
63
+                    'advanced'    => true
64 64
                 ),
65 65
             )
66 66
 
@@ -70,43 +70,43 @@  discard block
 block discarded – undo
70 70
         parent::__construct( $options );
71 71
     }
72 72
 
73
-	/**
74
-	 * The Super block output function.
75
-	 *
76
-	 * @param array $args
77
-	 * @param array $widget_args
78
-	 * @param string $content
79
-	 *
80
-	 * @return string
81
-	 */
73
+    /**
74
+     * The Super block output function.
75
+     *
76
+     * @param array $args
77
+     * @param array $widget_args
78
+     * @param string $content
79
+     *
80
+     * @return string
81
+     */
82 82
     public function output( $args = array(), $widget_args = array(), $content = '' ) {
83 83
 
84
-	    $defaults = array(
85
-		    'items'     	=> '', // should be used like: item_id|quantity,item_id|quantity,item_id|quantity
86
-		    'label'  	    => __( 'Buy Now', 'invoicing' ), // the button title
87
-		    'post_id'   	=> '', // any related post_id
88
-	    );
84
+        $defaults = array(
85
+            'items'     	=> '', // should be used like: item_id|quantity,item_id|quantity,item_id|quantity
86
+            'label'  	    => __( 'Buy Now', 'invoicing' ), // the button title
87
+            'post_id'   	=> '', // any related post_id
88
+        );
89 89
 
90
-	    /**
91
-	     * Parse incoming $args into an array and merge it with $defaults
92
-	     */
93
-	    $args = wp_parse_args( $args, $defaults );
90
+        /**
91
+         * Parse incoming $args into an array and merge it with $defaults
92
+         */
93
+        $args = wp_parse_args( $args, $defaults );
94 94
 
95
-		$html = '<div class="wpi-buy-button-wrapper wpi-g">';
95
+        $html = '<div class="wpi-buy-button-wrapper wpi-g">';
96 96
 		
97
-		if ( empty( $args['items'] ) ) {
98
-			$html .= __( 'No items selected', 'invoicing' );
99
-		} else {
100
-			$post_id = isset( $args['post_id'] ) && is_numeric( $args['post_id'] ) ? sanitize_text_field( $args['post_id'] ) : 0;
101
-			$label   = isset( $args['label'] ) ? sanitize_text_field( $args['label'] ) : __( 'Buy Now', 'invoicing' );
102
-			$items   = esc_attr( $args['items'] );
103
-			$html   .= "<button class='button button-primary wpi-buy-button' type='button' onclick=\"wpi_buy(this, '$items','$post_id');\">$label</button>";
104
-		}
97
+        if ( empty( $args['items'] ) ) {
98
+            $html .= __( 'No items selected', 'invoicing' );
99
+        } else {
100
+            $post_id = isset( $args['post_id'] ) && is_numeric( $args['post_id'] ) ? sanitize_text_field( $args['post_id'] ) : 0;
101
+            $label   = isset( $args['label'] ) ? sanitize_text_field( $args['label'] ) : __( 'Buy Now', 'invoicing' );
102
+            $items   = esc_attr( $args['items'] );
103
+            $html   .= "<button class='button button-primary wpi-buy-button' type='button' onclick=\"wpi_buy(this, '$items','$post_id');\">$label</button>";
104
+        }
105 105
 	
106
-	    $html .= wp_nonce_field( 'wpinv_buy_items', 'wpinv_buy_nonce', true, false );
107
-	    $html .= '</div>';
106
+        $html .= wp_nonce_field( 'wpinv_buy_items', 'wpinv_buy_nonce', true, false );
107
+        $html .= '</div>';
108 108
 
109
-	    return $html;
109
+        return $html;
110 110
 
111 111
     }
112 112
 
Please login to merge, or discard this patch.
Spacing   +23 added lines, -23 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if ( ! defined( 'ABSPATH' ) ) {
2
+if (!defined('ABSPATH')) {
3 3
     exit;
4 4
 }
5 5
 
@@ -23,40 +23,40 @@  discard block
 block discarded – undo
23 23
             'block-keywords'=> "['invoicing','buy', 'buy item']",
24 24
             'class_name'     => __CLASS__,
25 25
             'base_id'       => 'wpinv_buy',
26
-            'name'          => __('Get Paid > Buy Item Button (Deprecated)','invoicing'),
26
+            'name'          => __('Get Paid > Buy Item Button (Deprecated)', 'invoicing'),
27 27
             'widget_ops'    => array(
28 28
                 'classname'   => 'wpinv-buy-item-class  wpi-g',
29
-                'description' => esc_html__('This widget is deprecated. Use the GetPaid widget instead.','invoicing'),
29
+                'description' => esc_html__('This widget is deprecated. Use the GetPaid widget instead.', 'invoicing'),
30 30
             ),
31 31
             'arguments'     => array(
32 32
                 'title'  => array(
33
-                    'title'       => __( 'Widget title', 'invoicing' ),
34
-                    'desc'        => __( 'Enter widget title.', 'invoicing' ),
33
+                    'title'       => __('Widget title', 'invoicing'),
34
+                    'desc'        => __('Enter widget title.', 'invoicing'),
35 35
                     'type'        => 'text',
36 36
                     'desc_tip'    => true,
37 37
                     'default'     => '',
38 38
                     'advanced'    => false
39 39
                 ),
40 40
                 'items'  => array(
41
-	                'title'       => __( 'Items to buy', 'invoicing' ),
42
-	                'desc'        => __( 'Enter comma separated list of invoicing item id and quantity (item_id|quantity). Ex. 101|2 ', 'invoicing' ),
41
+	                'title'       => __('Items to buy', 'invoicing'),
42
+	                'desc'        => __('Enter comma separated list of invoicing item id and quantity (item_id|quantity). Ex. 101|2 ', 'invoicing'),
43 43
 	                'type'        => 'text',
44 44
 	                'desc_tip'    => true,
45 45
 	                'default'     => '',
46
-	                'placeholder' => __('Items to buy','invoicing'),
46
+	                'placeholder' => __('Items to buy', 'invoicing'),
47 47
 	                'advanced'    => false
48 48
                 ),
49 49
                 'label'  => array(
50
-	                'title'       => __( 'Button Label', 'invoicing' ),
51
-	                'desc'        => __( 'Enter button label. Default "Buy Now".', 'invoicing' ),
50
+	                'title'       => __('Button Label', 'invoicing'),
51
+	                'desc'        => __('Enter button label. Default "Buy Now".', 'invoicing'),
52 52
 	                'type'        => 'text',
53 53
 	                'desc_tip'    => true,
54
-	                'default'     => __( 'Buy Now', 'invoicing' ),
54
+	                'default'     => __('Buy Now', 'invoicing'),
55 55
 	                'advanced'    => false
56 56
                 ),
57 57
                 'post_id'  => array(
58
-	                'title'       => __( 'Post ID', 'invoicing' ),
59
-	                'desc'        => __( 'Enter related post ID. This is for 3rd party add ons and not mandatory field.', 'invoicing' ),
58
+	                'title'       => __('Post ID', 'invoicing'),
59
+	                'desc'        => __('Enter related post ID. This is for 3rd party add ons and not mandatory field.', 'invoicing'),
60 60
 	                'type'        => 'number',
61 61
 	                'desc_tip'    => true,
62 62
 	                'default'     => '',
@@ -67,7 +67,7 @@  discard block
 block discarded – undo
67 67
         );
68 68
 
69 69
 
70
-        parent::__construct( $options );
70
+        parent::__construct($options);
71 71
     }
72 72
 
73 73
 	/**
@@ -79,31 +79,31 @@  discard block
 block discarded – undo
79 79
 	 *
80 80
 	 * @return string
81 81
 	 */
82
-    public function output( $args = array(), $widget_args = array(), $content = '' ) {
82
+    public function output($args = array(), $widget_args = array(), $content = '') {
83 83
 
84 84
 	    $defaults = array(
85 85
 		    'items'     	=> '', // should be used like: item_id|quantity,item_id|quantity,item_id|quantity
86
-		    'label'  	    => __( 'Buy Now', 'invoicing' ), // the button title
86
+		    'label'  	    => __('Buy Now', 'invoicing'), // the button title
87 87
 		    'post_id'   	=> '', // any related post_id
88 88
 	    );
89 89
 
90 90
 	    /**
91 91
 	     * Parse incoming $args into an array and merge it with $defaults
92 92
 	     */
93
-	    $args = wp_parse_args( $args, $defaults );
93
+	    $args = wp_parse_args($args, $defaults);
94 94
 
95 95
 		$html = '<div class="wpi-buy-button-wrapper wpi-g">';
96 96
 		
97
-		if ( empty( $args['items'] ) ) {
98
-			$html .= __( 'No items selected', 'invoicing' );
97
+		if (empty($args['items'])) {
98
+			$html .= __('No items selected', 'invoicing');
99 99
 		} else {
100
-			$post_id = isset( $args['post_id'] ) && is_numeric( $args['post_id'] ) ? sanitize_text_field( $args['post_id'] ) : 0;
101
-			$label   = isset( $args['label'] ) ? sanitize_text_field( $args['label'] ) : __( 'Buy Now', 'invoicing' );
102
-			$items   = esc_attr( $args['items'] );
100
+			$post_id = isset($args['post_id']) && is_numeric($args['post_id']) ? sanitize_text_field($args['post_id']) : 0;
101
+			$label   = isset($args['label']) ? sanitize_text_field($args['label']) : __('Buy Now', 'invoicing');
102
+			$items   = esc_attr($args['items']);
103 103
 			$html   .= "<button class='button button-primary wpi-buy-button' type='button' onclick=\"wpi_buy(this, '$items','$post_id');\">$label</button>";
104 104
 		}
105 105
 	
106
-	    $html .= wp_nonce_field( 'wpinv_buy_items', 'wpinv_buy_nonce', true, false );
106
+	    $html .= wp_nonce_field('wpinv_buy_items', 'wpinv_buy_nonce', true, false);
107 107
 	    $html .= '</div>';
108 108
 
109 109
 	    return $html;
Please login to merge, or discard this patch.
includes/class-wpinv-discount.php 3 patches
Braces   +6 added lines, -4 removed lines patch added patch discarded remove patch
@@ -132,11 +132,13 @@
 block discarded – undo
132 132
 		if ( 'id' == strtolower( $field ) ) {
133 133
 			// Make sure the value is numeric to avoid casting objects, for example,
134 134
 			// to int 1.
135
-			if ( ! is_numeric( $value ) )
136
-				return false;
135
+			if ( ! is_numeric( $value ) ) {
136
+							return false;
137
+			}
137 138
 			$value = intval( $value );
138
-			if ( $value < 1 )
139
-				return false;
139
+			if ( $value < 1 ) {
140
+							return false;
141
+			}
140 142
 		}
141 143
 
142 144
 		if ( ! $value || ! is_string( $field ) ) {
Please login to merge, or discard this patch.
Indentation   +1261 added lines, -1261 removed lines patch added patch discarded remove patch
@@ -15,30 +15,30 @@  discard block
 block discarded – undo
15 15
  */
16 16
 class WPInv_Discount extends GetPaid_Data  {
17 17
 
18
-	/**
19
-	 * Which data store to load.
20
-	 *
21
-	 * @var string
22
-	 */
18
+    /**
19
+     * Which data store to load.
20
+     *
21
+     * @var string
22
+     */
23 23
     protected $data_store_name = 'discount';
24 24
 
25 25
     /**
26
-	 * This is the name of this object type.
27
-	 *
28
-	 * @var string
29
-	 */
30
-	protected $object_type = 'discount';
31
-
32
-	/**
33
-	 * Discount Data array. This is the core item data exposed in APIs.
34
-	 *
35
-	 * @since 1.0.19
36
-	 * @var array
37
-	 */
38
-	protected $data = array(
39
-		'status'               => 'draft',
40
-		'version'              => '',
41
-		'date_created'         => null,
26
+     * This is the name of this object type.
27
+     *
28
+     * @var string
29
+     */
30
+    protected $object_type = 'discount';
31
+
32
+    /**
33
+     * Discount Data array. This is the core item data exposed in APIs.
34
+     *
35
+     * @since 1.0.19
36
+     * @var array
37
+     */
38
+    protected $data = array(
39
+        'status'               => 'draft',
40
+        'version'              => '',
41
+        'date_created'         => null,
42 42
         'date_modified'        => null,
43 43
         'name'                 => 'no-name',
44 44
         'description'          => '',
@@ -58,144 +58,144 @@  discard block
 block discarded – undo
58 58
         'amount'               => null,
59 59
     );
60 60
 
61
-	/**
62
-	 * Stores meta in cache for future reads.
63
-	 *
64
-	 * A group must be set to to enable caching.
65
-	 *
66
-	 * @var string
67
-	 */
68
-	protected $cache_group = 'getpaid_discounts';
61
+    /**
62
+     * Stores meta in cache for future reads.
63
+     *
64
+     * A group must be set to to enable caching.
65
+     *
66
+     * @var string
67
+     */
68
+    protected $cache_group = 'getpaid_discounts';
69 69
 
70 70
     /**
71 71
      * Stores a reference to the original WP_Post object
72 72
      *
73 73
      * @var WP_Post
74 74
      */
75
-	protected $post = null;
76
-
77
-	/**
78
-	 * Get the discount if ID is passed, otherwise the discount is new and empty.
79
-	 *
80
-	 * @param int|array|string|WPInv_Discount|WP_Post $discount discount data, object, ID or code.
81
-	 */
82
-	public function __construct( $discount = 0 ) {
83
-		parent::__construct( $discount );
84
-
85
-		if ( is_numeric( $discount ) && 'wpi_discount' === get_post_type( $discount ) ) {
86
-			$this->set_id( $discount );
87
-		} elseif ( $discount instanceof self ) {
88
-			$this->set_id( $discount->get_id() );
89
-		} elseif ( ! empty( $discount->ID ) ) {
90
-			$this->set_id( $discount->ID );
91
-		} elseif ( is_array( $discount ) ) {
92
-			$this->set_props( $discount );
93
-
94
-			if ( isset( $discount['ID'] ) ) {
95
-				$this->set_id( $discount['ID'] );
96
-			}
97
-
98
-		} elseif ( is_scalar( $discount ) && $discount = self::get_discount_id_by_code( $discount ) ) {
99
-			$this->set_id( $discount );
100
-		} else {
101
-			$this->set_object_read( true );
102
-		}
75
+    protected $post = null;
76
+
77
+    /**
78
+     * Get the discount if ID is passed, otherwise the discount is new and empty.
79
+     *
80
+     * @param int|array|string|WPInv_Discount|WP_Post $discount discount data, object, ID or code.
81
+     */
82
+    public function __construct( $discount = 0 ) {
83
+        parent::__construct( $discount );
84
+
85
+        if ( is_numeric( $discount ) && 'wpi_discount' === get_post_type( $discount ) ) {
86
+            $this->set_id( $discount );
87
+        } elseif ( $discount instanceof self ) {
88
+            $this->set_id( $discount->get_id() );
89
+        } elseif ( ! empty( $discount->ID ) ) {
90
+            $this->set_id( $discount->ID );
91
+        } elseif ( is_array( $discount ) ) {
92
+            $this->set_props( $discount );
93
+
94
+            if ( isset( $discount['ID'] ) ) {
95
+                $this->set_id( $discount['ID'] );
96
+            }
97
+
98
+        } elseif ( is_scalar( $discount ) && $discount = self::get_discount_id_by_code( $discount ) ) {
99
+            $this->set_id( $discount );
100
+        } else {
101
+            $this->set_object_read( true );
102
+        }
103 103
 
104 104
         // Load the datastore.
105
-		$this->data_store = GetPaid_Data_Store::load( $this->data_store_name );
105
+        $this->data_store = GetPaid_Data_Store::load( $this->data_store_name );
106 106
 
107
-		if ( $this->get_id() > 0 ) {
107
+        if ( $this->get_id() > 0 ) {
108 108
             $this->post = get_post( $this->get_id() );
109 109
             $this->ID   = $this->get_id();
110
-			$this->data_store->read( $this );
110
+            $this->data_store->read( $this );
111
+        }
112
+
113
+    }
114
+
115
+    /**
116
+     * Fetch a discount from the db/cache
117
+     *
118
+     *
119
+     * @static
120
+     * @param string $field The field to query against: 'ID', 'discount_code'
121
+     * @param string|int $value The field value
122
+     * @deprecated
123
+     * @since 1.0.15
124
+     * @return array|bool array of discount details on success. False otherwise.
125
+     */
126
+    public static function get_data_by( $field, $value ) {
127
+
128
+        if ( 'id' == strtolower( $field ) ) {
129
+            // Make sure the value is numeric to avoid casting objects, for example,
130
+            // to int 1.
131
+            if ( ! is_numeric( $value ) )
132
+                return false;
133
+            $value = intval( $value );
134
+            if ( $value < 1 )
135
+                return false;
136
+        }
137
+
138
+        if ( ! $value || ! is_string( $field ) ) {
139
+            return false;
140
+        }
141
+
142
+        $field = trim( $field );
143
+
144
+        // prepare query args
145
+        switch ( strtolower( $field ) ) {
146
+            case 'id':
147
+                $discount_id = $value;
148
+                $args		 = array( 'include' => array( $value ) );
149
+                break;
150
+            case 'discount_code':
151
+            case 'code':
152
+                $value       = trim( $value );
153
+                $discount_id = wp_cache_get( $value, 'WPInv_Discount_Codes' );
154
+                $args		 = array( 'meta_key' => '_wpi_discount_code', 'meta_value' => $value );
155
+                break;
156
+            case 'name':
157
+                $discount_id = 0;
158
+                $args		 = array( 'name' => trim( $value ) );
159
+                break;
160
+            default:
161
+                $args		 = apply_filters( "wpinv_discount_get_data_by_{$field}_args", null, $value );
162
+                if ( ! is_array( $args ) ) {
163
+                    return apply_filters( "wpinv_discount_get_data_by_$field", false, $value );
164
+                }
165
+
166
+        }
167
+
168
+        // Check if there is a cached value.
169
+        if ( ! empty( $discount_id ) && $discount = wp_cache_get( (int) $discount_id, 'WPInv_Discounts' ) ) {
170
+            return $discount;
171
+        }
172
+
173
+        $args = array_merge(
174
+            $args,
175
+            array(
176
+                'post_type'      => 'wpi_discount',
177
+                'posts_per_page' => 1,
178
+                'post_status'    => array( 'publish', 'pending', 'draft', 'expired' )
179
+            )
180
+        );
181
+
182
+        $discount = get_posts( $args );
183
+
184
+        if( empty( $discount ) ) {
185
+            return false;
111 186
         }
112 187
 
113
-	}
114
-
115
-	/**
116
-	 * Fetch a discount from the db/cache
117
-	 *
118
-	 *
119
-	 * @static
120
-	 * @param string $field The field to query against: 'ID', 'discount_code'
121
-	 * @param string|int $value The field value
122
-	 * @deprecated
123
-	 * @since 1.0.15
124
-	 * @return array|bool array of discount details on success. False otherwise.
125
-	 */
126
-	public static function get_data_by( $field, $value ) {
127
-
128
-		if ( 'id' == strtolower( $field ) ) {
129
-			// Make sure the value is numeric to avoid casting objects, for example,
130
-			// to int 1.
131
-			if ( ! is_numeric( $value ) )
132
-				return false;
133
-			$value = intval( $value );
134
-			if ( $value < 1 )
135
-				return false;
136
-		}
137
-
138
-		if ( ! $value || ! is_string( $field ) ) {
139
-			return false;
140
-		}
141
-
142
-		$field = trim( $field );
143
-
144
-		// prepare query args
145
-		switch ( strtolower( $field ) ) {
146
-			case 'id':
147
-				$discount_id = $value;
148
-				$args		 = array( 'include' => array( $value ) );
149
-				break;
150
-			case 'discount_code':
151
-			case 'code':
152
-				$value       = trim( $value );
153
-				$discount_id = wp_cache_get( $value, 'WPInv_Discount_Codes' );
154
-				$args		 = array( 'meta_key' => '_wpi_discount_code', 'meta_value' => $value );
155
-				break;
156
-			case 'name':
157
-				$discount_id = 0;
158
-				$args		 = array( 'name' => trim( $value ) );
159
-				break;
160
-			default:
161
-				$args		 = apply_filters( "wpinv_discount_get_data_by_{$field}_args", null, $value );
162
-				if ( ! is_array( $args ) ) {
163
-					return apply_filters( "wpinv_discount_get_data_by_$field", false, $value );
164
-				}
165
-
166
-		}
167
-
168
-		// Check if there is a cached value.
169
-		if ( ! empty( $discount_id ) && $discount = wp_cache_get( (int) $discount_id, 'WPInv_Discounts' ) ) {
170
-			return $discount;
171
-		}
172
-
173
-		$args = array_merge(
174
-			$args,
175
-			array(
176
-				'post_type'      => 'wpi_discount',
177
-				'posts_per_page' => 1,
178
-				'post_status'    => array( 'publish', 'pending', 'draft', 'expired' )
179
-			)
180
-		);
181
-
182
-		$discount = get_posts( $args );
183
-
184
-		if( empty( $discount ) ) {
185
-			return false;
186
-		}
187
-
188
-		$discount = $discount[0];
189
-
190
-		// Prepare the return data.
191
-		$return = array(
188
+        $discount = $discount[0];
189
+
190
+        // Prepare the return data.
191
+        $return = array(
192 192
             'ID'                          => $discount->ID,
193 193
             'code'                        => get_post_meta( $discount->ID, '_wpi_discount_code', true ),
194 194
             'amount'                      => get_post_meta( $discount->ID, '_wpi_discount_amount', true ),
195 195
             'date_created'                => $discount->post_date,
196
-			'date_modified'               => $discount->post_modified,
197
-			'status'               		  => $discount->post_status,
198
-			'start'                  	  => get_post_meta( $discount->ID, '_wpi_discount_start', true ),
196
+            'date_modified'               => $discount->post_modified,
197
+            'status'               		  => $discount->post_status,
198
+            'start'                  	  => get_post_meta( $discount->ID, '_wpi_discount_start', true ),
199 199
             'expiration'                  => get_post_meta( $discount->ID, '_wpi_discount_expiration', true ),
200 200
             'type'               		  => get_post_meta( $discount->ID, '_wpi_discount_type', true ),
201 201
             'description'                 => $discount->post_excerpt,
@@ -209,77 +209,77 @@  discard block
 block discarded – undo
209 209
             'max_total'                   => get_post_meta( $discount->ID, '_wpi_discount_max_total', true ),
210 210
         );
211 211
 
212
-		$return = apply_filters( 'wpinv_discount_properties', $return );
213
-
214
-		// Update the cache with our data
215
-		wp_cache_add( $discount->ID, $return, 'WPInv_Discounts' );
216
-		wp_cache_add( $return['code'], $discount->ID, 'WPInv_Discount_Codes' );
217
-
218
-		return $return;
219
-	}
220
-
221
-	/**
222
-	 * Given a discount code, it returns a discount id.
223
-	 *
224
-	 *
225
-	 * @static
226
-	 * @param string $discount_code
227
-	 * @since 1.0.15
228
-	 * @return int
229
-	 */
230
-	public static function get_discount_id_by_code( $discount_code ) {
231
-
232
-		// Trim the code.
233
-		$discount_code = trim( $discount_code );
234
-
235
-		// Ensure a value has been passed.
236
-		if ( empty( $discount_code ) ) {
237
-			return 0;
238
-		}
239
-
240
-		// Maybe retrieve from the cache.
241
-		$discount_id   = wp_cache_get( $discount_code, 'getpaid_discount_codes' );
242
-		if ( ! empty( $discount_id ) ) {
243
-			return $discount_id;
244
-		}
245
-
246
-		// Fetch the first discount codes.
247
-		$discounts = get_posts(
248
-			array(
249
-				'meta_key'       => '_wpi_discount_code',
250
-				'meta_value'     => $discount_code,
251
-				'post_type'      => 'wpi_discount',
252
-				'posts_per_page' => 1,
253
-				'post_status'    => array( 'publish', 'pending', 'draft', 'expired' ),
254
-				'fields'         => 'ids',
255
-			)
256
-		);
257
-
258
-		if ( empty( $discounts ) ) {
259
-			return 0;
260
-		}
261
-
262
-		$discount_id = $discounts[0];
263
-
264
-		// Update the cache with our data
265
-		wp_cache_add( get_post_meta( $discount_id, '_wpi_discount_code', true ), $discount_id, 'getpaid_discount_codes' );
266
-
267
-		return $discount_id;
268
-	}
269
-
270
-	/**
271
-	 * Magic method for checking the existence of a certain custom field.
272
-	 *
273
-	 * @since 1.0.15
274
-	 * @access public
275
-	 *
276
-	 * @return bool Whether the given discount field is set.
277
-	 */
278
-	public function __isset( $key ){
279
-		return isset( $this->data[$key] ) || method_exists( $this, "get_$key");
280
-	}
281
-
282
-	/*
212
+        $return = apply_filters( 'wpinv_discount_properties', $return );
213
+
214
+        // Update the cache with our data
215
+        wp_cache_add( $discount->ID, $return, 'WPInv_Discounts' );
216
+        wp_cache_add( $return['code'], $discount->ID, 'WPInv_Discount_Codes' );
217
+
218
+        return $return;
219
+    }
220
+
221
+    /**
222
+     * Given a discount code, it returns a discount id.
223
+     *
224
+     *
225
+     * @static
226
+     * @param string $discount_code
227
+     * @since 1.0.15
228
+     * @return int
229
+     */
230
+    public static function get_discount_id_by_code( $discount_code ) {
231
+
232
+        // Trim the code.
233
+        $discount_code = trim( $discount_code );
234
+
235
+        // Ensure a value has been passed.
236
+        if ( empty( $discount_code ) ) {
237
+            return 0;
238
+        }
239
+
240
+        // Maybe retrieve from the cache.
241
+        $discount_id   = wp_cache_get( $discount_code, 'getpaid_discount_codes' );
242
+        if ( ! empty( $discount_id ) ) {
243
+            return $discount_id;
244
+        }
245
+
246
+        // Fetch the first discount codes.
247
+        $discounts = get_posts(
248
+            array(
249
+                'meta_key'       => '_wpi_discount_code',
250
+                'meta_value'     => $discount_code,
251
+                'post_type'      => 'wpi_discount',
252
+                'posts_per_page' => 1,
253
+                'post_status'    => array( 'publish', 'pending', 'draft', 'expired' ),
254
+                'fields'         => 'ids',
255
+            )
256
+        );
257
+
258
+        if ( empty( $discounts ) ) {
259
+            return 0;
260
+        }
261
+
262
+        $discount_id = $discounts[0];
263
+
264
+        // Update the cache with our data
265
+        wp_cache_add( get_post_meta( $discount_id, '_wpi_discount_code', true ), $discount_id, 'getpaid_discount_codes' );
266
+
267
+        return $discount_id;
268
+    }
269
+
270
+    /**
271
+     * Magic method for checking the existence of a certain custom field.
272
+     *
273
+     * @since 1.0.15
274
+     * @access public
275
+     *
276
+     * @return bool Whether the given discount field is set.
277
+     */
278
+    public function __isset( $key ){
279
+        return isset( $this->data[$key] ) || method_exists( $this, "get_$key");
280
+    }
281
+
282
+    /*
283 283
 	|--------------------------------------------------------------------------
284 284
 	| CRUD methods
285 285
 	|--------------------------------------------------------------------------
@@ -294,430 +294,430 @@  discard block
 block discarded – undo
294 294
 	|--------------------------------------------------------------------------
295 295
 	*/
296 296
 
297
-	/**
298
-	 * Get discount status.
299
-	 *
300
-	 * @since 1.0.19
301
-	 * @param  string $context View or edit context.
302
-	 * @return string
303
-	 */
304
-	public function get_status( $context = 'view' ) {
305
-		return $this->get_prop( 'status', $context );
297
+    /**
298
+     * Get discount status.
299
+     *
300
+     * @since 1.0.19
301
+     * @param  string $context View or edit context.
302
+     * @return string
303
+     */
304
+    public function get_status( $context = 'view' ) {
305
+        return $this->get_prop( 'status', $context );
306 306
     }
307 307
 
308 308
     /**
309
-	 * Get plugin version when the discount was created.
310
-	 *
311
-	 * @since 1.0.19
312
-	 * @param  string $context View or edit context.
313
-	 * @return string
314
-	 */
315
-	public function get_version( $context = 'view' ) {
316
-		return $this->get_prop( 'version', $context );
309
+     * Get plugin version when the discount was created.
310
+     *
311
+     * @since 1.0.19
312
+     * @param  string $context View or edit context.
313
+     * @return string
314
+     */
315
+    public function get_version( $context = 'view' ) {
316
+        return $this->get_prop( 'version', $context );
317 317
     }
318 318
 
319 319
     /**
320
-	 * Get date when the discount was created.
321
-	 *
322
-	 * @since 1.0.19
323
-	 * @param  string $context View or edit context.
324
-	 * @return string
325
-	 */
326
-	public function get_date_created( $context = 'view' ) {
327
-		return $this->get_prop( 'date_created', $context );
320
+     * Get date when the discount was created.
321
+     *
322
+     * @since 1.0.19
323
+     * @param  string $context View or edit context.
324
+     * @return string
325
+     */
326
+    public function get_date_created( $context = 'view' ) {
327
+        return $this->get_prop( 'date_created', $context );
328 328
     }
329 329
 
330 330
     /**
331
-	 * Get GMT date when the discount was created.
332
-	 *
333
-	 * @since 1.0.19
334
-	 * @param  string $context View or edit context.
335
-	 * @return string
336
-	 */
337
-	public function get_date_created_gmt( $context = 'view' ) {
331
+     * Get GMT date when the discount was created.
332
+     *
333
+     * @since 1.0.19
334
+     * @param  string $context View or edit context.
335
+     * @return string
336
+     */
337
+    public function get_date_created_gmt( $context = 'view' ) {
338 338
         $date = $this->get_date_created( $context );
339 339
 
340 340
         if ( $date ) {
341 341
             $date = get_gmt_from_date( $date );
342 342
         }
343
-		return $date;
343
+        return $date;
344 344
     }
345 345
 
346 346
     /**
347
-	 * Get date when the discount was last modified.
348
-	 *
349
-	 * @since 1.0.19
350
-	 * @param  string $context View or edit context.
351
-	 * @return string
352
-	 */
353
-	public function get_date_modified( $context = 'view' ) {
354
-		return $this->get_prop( 'date_modified', $context );
347
+     * Get date when the discount was last modified.
348
+     *
349
+     * @since 1.0.19
350
+     * @param  string $context View or edit context.
351
+     * @return string
352
+     */
353
+    public function get_date_modified( $context = 'view' ) {
354
+        return $this->get_prop( 'date_modified', $context );
355 355
     }
356 356
 
357 357
     /**
358
-	 * Get GMT date when the discount was last modified.
359
-	 *
360
-	 * @since 1.0.19
361
-	 * @param  string $context View or edit context.
362
-	 * @return string
363
-	 */
364
-	public function get_date_modified_gmt( $context = 'view' ) {
358
+     * Get GMT date when the discount was last modified.
359
+     *
360
+     * @since 1.0.19
361
+     * @param  string $context View or edit context.
362
+     * @return string
363
+     */
364
+    public function get_date_modified_gmt( $context = 'view' ) {
365 365
         $date = $this->get_date_modified( $context );
366 366
 
367 367
         if ( $date ) {
368 368
             $date = get_gmt_from_date( $date );
369 369
         }
370
-		return $date;
370
+        return $date;
371 371
     }
372 372
 
373 373
     /**
374
-	 * Get the discount name.
375
-	 *
376
-	 * @since 1.0.19
377
-	 * @param  string $context View or edit context.
378
-	 * @return string
379
-	 */
380
-	public function get_name( $context = 'view' ) {
381
-		return $this->get_prop( 'name', $context );
374
+     * Get the discount name.
375
+     *
376
+     * @since 1.0.19
377
+     * @param  string $context View or edit context.
378
+     * @return string
379
+     */
380
+    public function get_name( $context = 'view' ) {
381
+        return $this->get_prop( 'name', $context );
382 382
     }
383 383
 
384 384
     /**
385
-	 * Alias of self::get_name().
386
-	 *
387
-	 * @since 1.0.19
388
-	 * @param  string $context View or edit context.
389
-	 * @return string
390
-	 */
391
-	public function get_title( $context = 'view' ) {
392
-		return $this->get_name( $context );
385
+     * Alias of self::get_name().
386
+     *
387
+     * @since 1.0.19
388
+     * @param  string $context View or edit context.
389
+     * @return string
390
+     */
391
+    public function get_title( $context = 'view' ) {
392
+        return $this->get_name( $context );
393 393
     }
394 394
 
395 395
     /**
396
-	 * Get the discount description.
397
-	 *
398
-	 * @since 1.0.19
399
-	 * @param  string $context View or edit context.
400
-	 * @return string
401
-	 */
402
-	public function get_description( $context = 'view' ) {
403
-		return $this->get_prop( 'description', $context );
396
+     * Get the discount description.
397
+     *
398
+     * @since 1.0.19
399
+     * @param  string $context View or edit context.
400
+     * @return string
401
+     */
402
+    public function get_description( $context = 'view' ) {
403
+        return $this->get_prop( 'description', $context );
404 404
     }
405 405
 
406 406
     /**
407
-	 * Alias of self::get_description().
408
-	 *
409
-	 * @since 1.0.19
410
-	 * @param  string $context View or edit context.
411
-	 * @return string
412
-	 */
413
-	public function get_excerpt( $context = 'view' ) {
414
-		return $this->get_description( $context );
407
+     * Alias of self::get_description().
408
+     *
409
+     * @since 1.0.19
410
+     * @param  string $context View or edit context.
411
+     * @return string
412
+     */
413
+    public function get_excerpt( $context = 'view' ) {
414
+        return $this->get_description( $context );
415 415
     }
416 416
 
417 417
     /**
418
-	 * Alias of self::get_description().
419
-	 *
420
-	 * @since 1.0.19
421
-	 * @param  string $context View or edit context.
422
-	 * @return string
423
-	 */
424
-	public function get_summary( $context = 'view' ) {
425
-		return $this->get_description( $context );
418
+     * Alias of self::get_description().
419
+     *
420
+     * @since 1.0.19
421
+     * @param  string $context View or edit context.
422
+     * @return string
423
+     */
424
+    public function get_summary( $context = 'view' ) {
425
+        return $this->get_description( $context );
426 426
     }
427 427
 
428 428
     /**
429
-	 * Get the owner of the discount.
430
-	 *
431
-	 * @since 1.0.19
432
-	 * @param  string $context View or edit context.
433
-	 * @return string
434
-	 */
435
-	public function get_author( $context = 'view' ) {
436
-		return (int) $this->get_prop( 'author', $context );
437
-	}
429
+     * Get the owner of the discount.
430
+     *
431
+     * @since 1.0.19
432
+     * @param  string $context View or edit context.
433
+     * @return string
434
+     */
435
+    public function get_author( $context = 'view' ) {
436
+        return (int) $this->get_prop( 'author', $context );
437
+    }
438 438
 	
439
-	/**
440
-	 * Get the discount code.
441
-	 *
442
-	 * @since 1.0.19
443
-	 * @param  string $context View or edit context.
444
-	 * @return string
445
-	 */
446
-	public function get_code( $context = 'view' ) {
447
-		return $this->get_prop( 'code', $context );
448
-	}
439
+    /**
440
+     * Get the discount code.
441
+     *
442
+     * @since 1.0.19
443
+     * @param  string $context View or edit context.
444
+     * @return string
445
+     */
446
+    public function get_code( $context = 'view' ) {
447
+        return $this->get_prop( 'code', $context );
448
+    }
449 449
 	
450
-	/**
451
-	 * Alias for self::get_code().
452
-	 *
453
-	 * @since 1.0.19
454
-	 * @param  string $context View or edit context.
455
-	 * @return string
456
-	 */
457
-	public function get_coupon_code( $context = 'view' ) {
458
-		return $this->get_code( $context );
459
-	}
450
+    /**
451
+     * Alias for self::get_code().
452
+     *
453
+     * @since 1.0.19
454
+     * @param  string $context View or edit context.
455
+     * @return string
456
+     */
457
+    public function get_coupon_code( $context = 'view' ) {
458
+        return $this->get_code( $context );
459
+    }
460 460
 	
461
-	/**
462
-	 * Alias for self::get_code().
463
-	 *
464
-	 * @since 1.0.19
465
-	 * @param  string $context View or edit context.
466
-	 * @return string
467
-	 */
468
-	public function get_discount_code( $context = 'view' ) {
469
-		return $this->get_code( $context );
470
-	}
461
+    /**
462
+     * Alias for self::get_code().
463
+     *
464
+     * @since 1.0.19
465
+     * @param  string $context View or edit context.
466
+     * @return string
467
+     */
468
+    public function get_discount_code( $context = 'view' ) {
469
+        return $this->get_code( $context );
470
+    }
471 471
 	
472
-	/**
473
-	 * Get the discount's amount.
474
-	 *
475
-	 * @since 1.0.19
476
-	 * @param  string $context View or edit context.
477
-	 * @return float
478
-	 */
479
-	public function get_amount( $context = 'view' ) {
480
-		return $this->get_prop( 'amount', $context );
481
-	}
482
-
483
-	/**
484
-	 * Get the discount's formated amount/rate.
485
-	 *
486
-	 * @since 1.0.19
487
-	 * @return string
488
-	 */
489
-	public function get_formatted_amount() {
490
-
491
-		if ( $this->is_type( 'flat' ) ) {
492
-			$rate = wpinv_price( $this->get_amount() );
493
-		} else {
494
-			$rate = $this->get_amount() . '%';
495
-		}
496
-
497
-		return apply_filters( 'wpinv_format_discount_rate', $rate, $this->get_type(), $this->get_amount() );
498
-	}
472
+    /**
473
+     * Get the discount's amount.
474
+     *
475
+     * @since 1.0.19
476
+     * @param  string $context View or edit context.
477
+     * @return float
478
+     */
479
+    public function get_amount( $context = 'view' ) {
480
+        return $this->get_prop( 'amount', $context );
481
+    }
482
+
483
+    /**
484
+     * Get the discount's formated amount/rate.
485
+     *
486
+     * @since 1.0.19
487
+     * @return string
488
+     */
489
+    public function get_formatted_amount() {
490
+
491
+        if ( $this->is_type( 'flat' ) ) {
492
+            $rate = wpinv_price( $this->get_amount() );
493
+        } else {
494
+            $rate = $this->get_amount() . '%';
495
+        }
496
+
497
+        return apply_filters( 'wpinv_format_discount_rate', $rate, $this->get_type(), $this->get_amount() );
498
+    }
499 499
 	
500
-	/**
501
-	 * Get the discount's start date.
502
-	 *
503
-	 * @since 1.0.19
504
-	 * @param  string $context View or edit context.
505
-	 * @return string
506
-	 */
507
-	public function get_start( $context = 'view' ) {
508
-		return $this->get_prop( 'start', $context );
509
-	}
500
+    /**
501
+     * Get the discount's start date.
502
+     *
503
+     * @since 1.0.19
504
+     * @param  string $context View or edit context.
505
+     * @return string
506
+     */
507
+    public function get_start( $context = 'view' ) {
508
+        return $this->get_prop( 'start', $context );
509
+    }
510 510
 	
511
-	/**
512
-	 * Alias for self::get_start().
513
-	 *
514
-	 * @since 1.0.19
515
-	 * @param  string $context View or edit context.
516
-	 * @return string
517
-	 */
518
-	public function get_start_date( $context = 'view' ) {
519
-		return $this->get_start( $context );
520
-	}
511
+    /**
512
+     * Alias for self::get_start().
513
+     *
514
+     * @since 1.0.19
515
+     * @param  string $context View or edit context.
516
+     * @return string
517
+     */
518
+    public function get_start_date( $context = 'view' ) {
519
+        return $this->get_start( $context );
520
+    }
521 521
 	
522
-	/**
523
-	 * Get the discount's expiration date.
524
-	 *
525
-	 * @since 1.0.19
526
-	 * @param  string $context View or edit context.
527
-	 * @return string
528
-	 */
529
-	public function get_expiration( $context = 'view' ) {
530
-		return $this->get_prop( 'expiration', $context );
531
-	}
522
+    /**
523
+     * Get the discount's expiration date.
524
+     *
525
+     * @since 1.0.19
526
+     * @param  string $context View or edit context.
527
+     * @return string
528
+     */
529
+    public function get_expiration( $context = 'view' ) {
530
+        return $this->get_prop( 'expiration', $context );
531
+    }
532 532
 	
533
-	/**
534
-	 * Alias for self::get_expiration().
535
-	 *
536
-	 * @since 1.0.19
537
-	 * @param  string $context View or edit context.
538
-	 * @return string
539
-	 */
540
-	public function get_expiration_date( $context = 'view' ) {
541
-		return $this->get_expiration( $context );
542
-	}
543
-
544
-	/**
545
-	 * Alias for self::get_expiration().
546
-	 *
547
-	 * @since 1.0.19
548
-	 * @param  string $context View or edit context.
549
-	 * @return string
550
-	 */
551
-	public function get_end_date( $context = 'view' ) {
552
-		return $this->get_expiration( $context );
553
-	}
533
+    /**
534
+     * Alias for self::get_expiration().
535
+     *
536
+     * @since 1.0.19
537
+     * @param  string $context View or edit context.
538
+     * @return string
539
+     */
540
+    public function get_expiration_date( $context = 'view' ) {
541
+        return $this->get_expiration( $context );
542
+    }
543
+
544
+    /**
545
+     * Alias for self::get_expiration().
546
+     *
547
+     * @since 1.0.19
548
+     * @param  string $context View or edit context.
549
+     * @return string
550
+     */
551
+    public function get_end_date( $context = 'view' ) {
552
+        return $this->get_expiration( $context );
553
+    }
554 554
 	
555
-	/**
556
-	 * Get the discount's type.
557
-	 *
558
-	 * @since 1.0.19
559
-	 * @param  string $context View or edit context.
560
-	 * @return string
561
-	 */
562
-	public function get_type( $context = 'view' ) {
563
-		return $this->get_prop( 'type', $context );
564
-	}
565
-
566
-	/**
567
-	 * Get the number of times a discount has been used.
568
-	 *
569
-	 * @since 1.0.19
570
-	 * @param  string $context View or edit context.
571
-	 * @return int
572
-	 */
573
-	public function get_uses( $context = 'view' ) {
574
-		return (int) $this->get_prop( 'uses', $context );
575
-	}
576
-
577
-	/**
578
-	 * Get the discount's usage, i.e uses / max uses.
579
-	 *
580
-	 * @since 1.0.19
581
-	 * @return string
582
-	 */
583
-	public function get_usage() {
584
-
585
-		if ( ! $this->has_limit() ) {
586
-			return $this->get_uses() . ' / ' . ' &infin;';
587
-		}
588
-
589
-		return $this->get_uses() . ' / ' . (int) $this->get_max_uses();
590
-
591
-	}
592
-
593
-	/**
594
-	 * Get the maximum number of time a discount can be used.
595
-	 *
596
-	 * @since 1.0.19
597
-	 * @param  string $context View or edit context.
598
-	 * @return int
599
-	 */
600
-	public function get_max_uses( $context = 'view' ) {
601
-		$max_uses = $this->get_prop( 'max_uses', $context );
602
-		return empty( $max_uses ) ? null : $max_uses;
603
-	}
604
-
605
-	/**
606
-	 * Checks if this is a single use discount or not.
607
-	 *
608
-	 * @since 1.0.19
609
-	 * @param  string $context View or edit context.
610
-	 * @return bool
611
-	 */
612
-	public function get_is_single_use( $context = 'view' ) {
613
-		return $this->get_prop( 'is_single_use', $context );
614
-	}
615
-
616
-	/**
617
-	 * Get the items that can be used with this discount.
618
-	 *
619
-	 * @since 1.0.19
620
-	 * @param  string $context View or edit context.
621
-	 * @return array
622
-	 */
623
-	public function get_items( $context = 'view' ) {
624
-		return wpinv_parse_list( $this->get_prop( 'items', $context ) );
625
-	}
626
-
627
-	/**
628
-	 * Alias for self::get_items().
629
-	 *
630
-	 * @since 1.0.19
631
-	 * @param  string $context View or edit context.
632
-	 * @return array
633
-	 */
634
-	public function get_allowed_items( $context = 'view' ) {
635
-		return $this->get_items( $context );
636
-	}
637
-
638
-	/**
639
-	 * Get the items that are not allowed to use this discount.
640
-	 *
641
-	 * @since 1.0.19
642
-	 * @param  string $context View or edit context.
643
-	 * @return array
644
-	 */
645
-	public function get_excluded_items( $context = 'view' ) {
646
-		return wpinv_parse_list( $this->get_prop( 'excluded_items', $context ) );
647
-	}
648
-
649
-	/**
650
-	 * Checks if this is a recurring discount or not.
651
-	 *
652
-	 * @since 1.0.19
653
-	 * @param  string $context View or edit context.
654
-	 * @return int|string|bool
655
-	 */
656
-	public function get_is_recurring( $context = 'view' ) {
657
-		return $this->get_prop( 'is_recurring', $context );
658
-	}
659
-
660
-	/**
661
-	 * Get's the minimum total amount allowed for this discount.
662
-	 *
663
-	 * @since 1.0.19
664
-	 * @param  string $context View or edit context.
665
-	 * @return float
666
-	 */
667
-	public function get_min_total( $context = 'view' ) {
668
-		$minimum = $this->get_prop( 'min_total', $context );
669
-		return empty( $minimum ) ? null : $minimum;
670
-	}
671
-
672
-	/**
673
-	 * Alias for self::get_min_total().
674
-	 *
675
-	 * @since 1.0.19
676
-	 * @param  string $context View or edit context.
677
-	 * @return float
678
-	 */
679
-	public function get_minimum_total( $context = 'view' ) {
680
-		return $this->get_min_total( $context );
681
-	}
682
-
683
-	/**
684
-	 * Get's the maximum total amount allowed for this discount.
685
-	 *
686
-	 * @since 1.0.19
687
-	 * @param  string $context View or edit context.
688
-	 * @return float
689
-	 */
690
-	public function get_max_total( $context = 'view' ) {
691
-		$maximum = $this->get_prop( 'max_total', $context );
692
-		return empty( $maximum ) ? null : $maximum;
693
-	}
694
-
695
-	/**
696
-	 * Alias for self::get_max_total().
697
-	 *
698
-	 * @since 1.0.19
699
-	 * @param  string $context View or edit context.
700
-	 * @return float
701
-	 */
702
-	public function get_maximum_total( $context = 'view' ) {
703
-		return $this->get_max_total( $context );
704
-	}
705
-
706
-	/**
707
-	 * Magic method for accessing discount properties.
708
-	 *
709
-	 * @since 1.0.15
710
-	 * @access public
711
-	 *
712
-	 * @param string $key Discount data to retrieve
713
-	 * @param  string $context View or edit context.
714
-	 * @return mixed Value of the given discount property (if set).
715
-	 */
716
-	public function get( $key, $context = 'view' ) {
555
+    /**
556
+     * Get the discount's type.
557
+     *
558
+     * @since 1.0.19
559
+     * @param  string $context View or edit context.
560
+     * @return string
561
+     */
562
+    public function get_type( $context = 'view' ) {
563
+        return $this->get_prop( 'type', $context );
564
+    }
565
+
566
+    /**
567
+     * Get the number of times a discount has been used.
568
+     *
569
+     * @since 1.0.19
570
+     * @param  string $context View or edit context.
571
+     * @return int
572
+     */
573
+    public function get_uses( $context = 'view' ) {
574
+        return (int) $this->get_prop( 'uses', $context );
575
+    }
576
+
577
+    /**
578
+     * Get the discount's usage, i.e uses / max uses.
579
+     *
580
+     * @since 1.0.19
581
+     * @return string
582
+     */
583
+    public function get_usage() {
584
+
585
+        if ( ! $this->has_limit() ) {
586
+            return $this->get_uses() . ' / ' . ' &infin;';
587
+        }
588
+
589
+        return $this->get_uses() . ' / ' . (int) $this->get_max_uses();
590
+
591
+    }
592
+
593
+    /**
594
+     * Get the maximum number of time a discount can be used.
595
+     *
596
+     * @since 1.0.19
597
+     * @param  string $context View or edit context.
598
+     * @return int
599
+     */
600
+    public function get_max_uses( $context = 'view' ) {
601
+        $max_uses = $this->get_prop( 'max_uses', $context );
602
+        return empty( $max_uses ) ? null : $max_uses;
603
+    }
604
+
605
+    /**
606
+     * Checks if this is a single use discount or not.
607
+     *
608
+     * @since 1.0.19
609
+     * @param  string $context View or edit context.
610
+     * @return bool
611
+     */
612
+    public function get_is_single_use( $context = 'view' ) {
613
+        return $this->get_prop( 'is_single_use', $context );
614
+    }
615
+
616
+    /**
617
+     * Get the items that can be used with this discount.
618
+     *
619
+     * @since 1.0.19
620
+     * @param  string $context View or edit context.
621
+     * @return array
622
+     */
623
+    public function get_items( $context = 'view' ) {
624
+        return wpinv_parse_list( $this->get_prop( 'items', $context ) );
625
+    }
626
+
627
+    /**
628
+     * Alias for self::get_items().
629
+     *
630
+     * @since 1.0.19
631
+     * @param  string $context View or edit context.
632
+     * @return array
633
+     */
634
+    public function get_allowed_items( $context = 'view' ) {
635
+        return $this->get_items( $context );
636
+    }
637
+
638
+    /**
639
+     * Get the items that are not allowed to use this discount.
640
+     *
641
+     * @since 1.0.19
642
+     * @param  string $context View or edit context.
643
+     * @return array
644
+     */
645
+    public function get_excluded_items( $context = 'view' ) {
646
+        return wpinv_parse_list( $this->get_prop( 'excluded_items', $context ) );
647
+    }
648
+
649
+    /**
650
+     * Checks if this is a recurring discount or not.
651
+     *
652
+     * @since 1.0.19
653
+     * @param  string $context View or edit context.
654
+     * @return int|string|bool
655
+     */
656
+    public function get_is_recurring( $context = 'view' ) {
657
+        return $this->get_prop( 'is_recurring', $context );
658
+    }
659
+
660
+    /**
661
+     * Get's the minimum total amount allowed for this discount.
662
+     *
663
+     * @since 1.0.19
664
+     * @param  string $context View or edit context.
665
+     * @return float
666
+     */
667
+    public function get_min_total( $context = 'view' ) {
668
+        $minimum = $this->get_prop( 'min_total', $context );
669
+        return empty( $minimum ) ? null : $minimum;
670
+    }
671
+
672
+    /**
673
+     * Alias for self::get_min_total().
674
+     *
675
+     * @since 1.0.19
676
+     * @param  string $context View or edit context.
677
+     * @return float
678
+     */
679
+    public function get_minimum_total( $context = 'view' ) {
680
+        return $this->get_min_total( $context );
681
+    }
682
+
683
+    /**
684
+     * Get's the maximum total amount allowed for this discount.
685
+     *
686
+     * @since 1.0.19
687
+     * @param  string $context View or edit context.
688
+     * @return float
689
+     */
690
+    public function get_max_total( $context = 'view' ) {
691
+        $maximum = $this->get_prop( 'max_total', $context );
692
+        return empty( $maximum ) ? null : $maximum;
693
+    }
694
+
695
+    /**
696
+     * Alias for self::get_max_total().
697
+     *
698
+     * @since 1.0.19
699
+     * @param  string $context View or edit context.
700
+     * @return float
701
+     */
702
+    public function get_maximum_total( $context = 'view' ) {
703
+        return $this->get_max_total( $context );
704
+    }
705
+
706
+    /**
707
+     * Magic method for accessing discount properties.
708
+     *
709
+     * @since 1.0.15
710
+     * @access public
711
+     *
712
+     * @param string $key Discount data to retrieve
713
+     * @param  string $context View or edit context.
714
+     * @return mixed Value of the given discount property (if set).
715
+     */
716
+    public function get( $key, $context = 'view' ) {
717 717
         return $this->get_prop( $key, $context );
718
-	}
718
+    }
719 719
 
720
-	/*
720
+    /*
721 721
 	|--------------------------------------------------------------------------
722 722
 	| Setters
723 723
 	|--------------------------------------------------------------------------
@@ -727,41 +727,41 @@  discard block
 block discarded – undo
727 727
 	| object.
728 728
 	*/
729 729
 	
730
-	/**
731
-	 * Sets discount status.
732
-	 *
733
-	 * @since 1.0.19
734
-	 * @param  string $status New status.
735
-	 * @return array details of change.
736
-	 */
737
-	public function set_status( $status ) {
730
+    /**
731
+     * Sets discount status.
732
+     *
733
+     * @since 1.0.19
734
+     * @param  string $status New status.
735
+     * @return array details of change.
736
+     */
737
+    public function set_status( $status ) {
738 738
         $old_status = $this->get_status();
739 739
 
740 740
         $this->set_prop( 'status', $status );
741 741
 
742
-		return array(
743
-			'from' => $old_status,
744
-			'to'   => $status,
745
-		);
742
+        return array(
743
+            'from' => $old_status,
744
+            'to'   => $status,
745
+        );
746 746
     }
747 747
 
748 748
     /**
749
-	 * Set plugin version when the discount was created.
750
-	 *
751
-	 * @since 1.0.19
752
-	 */
753
-	public function set_version( $value ) {
754
-		$this->set_prop( 'version', $value );
749
+     * Set plugin version when the discount was created.
750
+     *
751
+     * @since 1.0.19
752
+     */
753
+    public function set_version( $value ) {
754
+        $this->set_prop( 'version', $value );
755 755
     }
756 756
 
757 757
     /**
758
-	 * Set date when the discount was created.
759
-	 *
760
-	 * @since 1.0.19
761
-	 * @param string $value Value to set.
758
+     * Set date when the discount was created.
759
+     *
760
+     * @since 1.0.19
761
+     * @param string $value Value to set.
762 762
      * @return bool Whether or not the date was set.
763
-	 */
764
-	public function set_date_created( $value ) {
763
+     */
764
+    public function set_date_created( $value ) {
765 765
         $date = strtotime( $value );
766 766
 
767 767
         if ( $date ) {
@@ -774,13 +774,13 @@  discard block
 block discarded – undo
774 774
     }
775 775
 
776 776
     /**
777
-	 * Set date when the discount was last modified.
778
-	 *
779
-	 * @since 1.0.19
780
-	 * @param string $value Value to set.
777
+     * Set date when the discount was last modified.
778
+     *
779
+     * @since 1.0.19
780
+     * @param string $value Value to set.
781 781
      * @return bool Whether or not the date was set.
782
-	 */
783
-	public function set_date_modified( $value ) {
782
+     */
783
+    public function set_date_modified( $value ) {
784 784
         $date = strtotime( $value );
785 785
 
786 786
         if ( $date ) {
@@ -793,324 +793,324 @@  discard block
 block discarded – undo
793 793
     }
794 794
 
795 795
     /**
796
-	 * Set the discount name.
797
-	 *
798
-	 * @since 1.0.19
799
-	 * @param  string $value New name.
800
-	 */
801
-	public function set_name( $value ) {
796
+     * Set the discount name.
797
+     *
798
+     * @since 1.0.19
799
+     * @param  string $value New name.
800
+     */
801
+    public function set_name( $value ) {
802 802
         $name = sanitize_text_field( $value );
803
-		$this->set_prop( 'name', $name );
803
+        $this->set_prop( 'name', $name );
804 804
     }
805 805
 
806 806
     /**
807
-	 * Alias of self::set_name().
808
-	 *
809
-	 * @since 1.0.19
810
-	 * @param  string $value New name.
811
-	 */
812
-	public function set_title( $value ) {
813
-		$this->set_name( $value );
807
+     * Alias of self::set_name().
808
+     *
809
+     * @since 1.0.19
810
+     * @param  string $value New name.
811
+     */
812
+    public function set_title( $value ) {
813
+        $this->set_name( $value );
814 814
     }
815 815
 
816 816
     /**
817
-	 * Set the discount description.
818
-	 *
819
-	 * @since 1.0.19
820
-	 * @param  string $value New description.
821
-	 */
822
-	public function set_description( $value ) {
817
+     * Set the discount description.
818
+     *
819
+     * @since 1.0.19
820
+     * @param  string $value New description.
821
+     */
822
+    public function set_description( $value ) {
823 823
         $description = wp_kses_post( $value );
824
-		return $this->set_prop( 'description', $description );
824
+        return $this->set_prop( 'description', $description );
825 825
     }
826 826
 
827 827
     /**
828
-	 * Alias of self::set_description().
829
-	 *
830
-	 * @since 1.0.19
831
-	 * @param  string $value New description.
832
-	 */
833
-	public function set_excerpt( $value ) {
834
-		$this->set_description( $value );
828
+     * Alias of self::set_description().
829
+     *
830
+     * @since 1.0.19
831
+     * @param  string $value New description.
832
+     */
833
+    public function set_excerpt( $value ) {
834
+        $this->set_description( $value );
835 835
     }
836 836
 
837 837
     /**
838
-	 * Alias of self::set_description().
839
-	 *
840
-	 * @since 1.0.19
841
-	 * @param  string $value New description.
842
-	 */
843
-	public function set_summary( $value ) {
844
-		$this->set_description( $value );
838
+     * Alias of self::set_description().
839
+     *
840
+     * @since 1.0.19
841
+     * @param  string $value New description.
842
+     */
843
+    public function set_summary( $value ) {
844
+        $this->set_description( $value );
845 845
     }
846 846
 
847 847
     /**
848
-	 * Set the owner of the discount.
849
-	 *
850
-	 * @since 1.0.19
851
-	 * @param  int $value New author.
852
-	 */
853
-	public function set_author( $value ) {
854
-		$this->set_prop( 'author', (int) $value );
855
-	}
848
+     * Set the owner of the discount.
849
+     *
850
+     * @since 1.0.19
851
+     * @param  int $value New author.
852
+     */
853
+    public function set_author( $value ) {
854
+        $this->set_prop( 'author', (int) $value );
855
+    }
856 856
 	
857
-	/**
858
-	 * Sets the discount code.
859
-	 *
860
-	 * @since 1.0.19
861
-	 * @param string $value New discount code.
862
-	 */
863
-	public function set_code( $value ) {
864
-		$code = sanitize_text_field( $value );
865
-		$this->set_prop( 'code', $code );
866
-	}
857
+    /**
858
+     * Sets the discount code.
859
+     *
860
+     * @since 1.0.19
861
+     * @param string $value New discount code.
862
+     */
863
+    public function set_code( $value ) {
864
+        $code = sanitize_text_field( $value );
865
+        $this->set_prop( 'code', $code );
866
+    }
867 867
 	
868
-	/**
869
-	 * Alias of self::set_code().
870
-	 *
871
-	 * @since 1.0.19
872
-	 * @param string $value New discount code.
873
-	 */
874
-	public function set_coupon_code( $value ) {
875
-		$this->set_code( $value );
876
-	}
868
+    /**
869
+     * Alias of self::set_code().
870
+     *
871
+     * @since 1.0.19
872
+     * @param string $value New discount code.
873
+     */
874
+    public function set_coupon_code( $value ) {
875
+        $this->set_code( $value );
876
+    }
877 877
 	
878
-	/**
879
-	 * Alias of self::set_code().
880
-	 *
881
-	 * @since 1.0.19
882
-	 * @param string $value New discount code.
883
-	 */
884
-	public function set_discount_code( $value ) {
885
-		$this->set_code( $value );
886
-	}
878
+    /**
879
+     * Alias of self::set_code().
880
+     *
881
+     * @since 1.0.19
882
+     * @param string $value New discount code.
883
+     */
884
+    public function set_discount_code( $value ) {
885
+        $this->set_code( $value );
886
+    }
887 887
 	
888
-	/**
889
-	 * Sets the discount amount.
890
-	 *
891
-	 * @since 1.0.19
892
-	 * @param float $value New discount code.
893
-	 */
894
-	public function set_amount( $value ) {
895
-		$amount = floatval( wpinv_sanitize_amount( $value ) );
896
-		$this->set_prop( 'amount', $amount );
897
-	}
898
-
899
-	/**
900
-	 * Sets the discount's start date.
901
-	 *
902
-	 * @since 1.0.19
903
-	 * @param float $value New start date.
904
-	 */
905
-	public function set_start( $value ) {
906
-		$date = strtotime( $value );
888
+    /**
889
+     * Sets the discount amount.
890
+     *
891
+     * @since 1.0.19
892
+     * @param float $value New discount code.
893
+     */
894
+    public function set_amount( $value ) {
895
+        $amount = floatval( wpinv_sanitize_amount( $value ) );
896
+        $this->set_prop( 'amount', $amount );
897
+    }
907 898
 
908
-        if ( $date ) {
909
-            $this->set_prop( 'start', date( 'Y-m-d H:i', $date ) );
910
-            return true;
911
-		}
899
+    /**
900
+     * Sets the discount's start date.
901
+     *
902
+     * @since 1.0.19
903
+     * @param float $value New start date.
904
+     */
905
+    public function set_start( $value ) {
906
+        $date = strtotime( $value );
907
+
908
+        if ( $date ) {
909
+            $this->set_prop( 'start', date( 'Y-m-d H:i', $date ) );
910
+            return true;
911
+        }
912 912
 		
913
-		$this->set_prop( 'start', '' );
913
+        $this->set_prop( 'start', '' );
914 914
 
915 915
         return false;
916
-	}
917
-
918
-	/**
919
-	 * Alias of self::set_start().
920
-	 *
921
-	 * @since 1.0.19
922
-	 * @param string $value New start date.
923
-	 */
924
-	public function set_start_date( $value ) {
925
-		$this->set_start( $value );
926
-	}
927
-
928
-	/**
929
-	 * Sets the discount's expiration date.
930
-	 *
931
-	 * @since 1.0.19
932
-	 * @param float $value New expiration date.
933
-	 */
934
-	public function set_expiration( $value ) {
935
-		$date = strtotime( $value );
916
+    }
917
+
918
+    /**
919
+     * Alias of self::set_start().
920
+     *
921
+     * @since 1.0.19
922
+     * @param string $value New start date.
923
+     */
924
+    public function set_start_date( $value ) {
925
+        $this->set_start( $value );
926
+    }
927
+
928
+    /**
929
+     * Sets the discount's expiration date.
930
+     *
931
+     * @since 1.0.19
932
+     * @param float $value New expiration date.
933
+     */
934
+    public function set_expiration( $value ) {
935
+        $date = strtotime( $value );
936 936
 
937 937
         if ( $date ) {
938 938
             $this->set_prop( 'expiration', date( 'Y-m-d H:i', $date ) );
939 939
             return true;
940 940
         }
941 941
 
942
-		$this->set_prop( 'expiration', '' );
942
+        $this->set_prop( 'expiration', '' );
943 943
         return false;
944
-	}
945
-
946
-	/**
947
-	 * Alias of self::set_expiration().
948
-	 *
949
-	 * @since 1.0.19
950
-	 * @param string $value New expiration date.
951
-	 */
952
-	public function set_expiration_date( $value ) {
953
-		$this->set_expiration( $value );
954
-	}
955
-
956
-	/**
957
-	 * Alias of self::set_expiration().
958
-	 *
959
-	 * @since 1.0.19
960
-	 * @param string $value New expiration date.
961
-	 */
962
-	public function set_end_date( $value ) {
963
-		$this->set_expiration( $value );
964
-	}
965
-
966
-	/**
967
-	 * Sets the discount type.
968
-	 *
969
-	 * @since 1.0.19
970
-	 * @param string $value New discount type.
971
-	 */
972
-	public function set_type( $value ) {
973
-		if ( $value && array_key_exists( sanitize_text_field( $value ), wpinv_get_discount_types() ) ) {
974
-			$this->set_prop( 'type', sanitize_text_field( $value ) );
975
-		}
976
-	}
977
-
978
-	/**
979
-	 * Sets the number of times a discount has been used.
980
-	 *
981
-	 * @since 1.0.19
982
-	 * @param int $value usage count.
983
-	 */
984
-	public function set_uses( $value ) {
985
-
986
-		$value = (int) $value;
987
-
988
-		if ( $value < 0 ) {
989
-			$value = 0;
990
-		}
991
-
992
-		$this->set_prop( 'uses', (int) $value );
993
-	}
994
-
995
-	/**
996
-	 * Sets the maximum number of times a discount can be used.
997
-	 *
998
-	 * @since 1.0.19
999
-	 * @param int $value maximum usage count.
1000
-	 */
1001
-	public function set_max_uses( $value ) {
1002
-		$this->set_prop( 'max_uses', absint( $value ) );
1003
-	}
1004
-
1005
-	/**
1006
-	 * Sets if this is a single use discount or not.
1007
-	 *
1008
-	 * @since 1.0.19
1009
-	 * @param int|bool $value is single use.
1010
-	 */
1011
-	public function set_is_single_use( $value ) {
1012
-		$this->set_prop( 'is_single_use', (bool) $value );
1013
-	}
1014
-
1015
-	/**
1016
-	 * Sets the items that can be used with this discount.
1017
-	 *
1018
-	 * @since 1.0.19
1019
-	 * @param array $value items.
1020
-	 */
1021
-	public function set_items( $value ) {
1022
-		$this->set_prop( 'items', wpinv_parse_list( $value ) );
1023
-	}
1024
-
1025
-	/**
1026
-	 * Alias for self::set_items().
1027
-	 *
1028
-	 * @since 1.0.19
1029
-	 * @param array $value items.
1030
-	 */
1031
-	public function set_allowed_items( $value ) {
1032
-		$this->set_items( $value );
1033
-	}
1034
-
1035
-	/**
1036
-	 * Sets the items that can not be used with this discount.
1037
-	 *
1038
-	 * @since 1.0.19
1039
-	 * @param array $value items.
1040
-	 */
1041
-	public function set_excluded_items( $value ) {
1042
-		$this->set_prop( 'excluded_items', wpinv_parse_list( $value ) );
1043
-	}
1044
-
1045
-	/**
1046
-	 * Sets if this is a recurring discounts or not.
1047
-	 *
1048
-	 * @since 1.0.19
1049
-	 * @param int|bool $value is recurring.
1050
-	 */
1051
-	public function set_is_recurring( $value ) {
1052
-		$this->set_prop( 'is_recurring', (bool) $value );
1053
-	}
1054
-
1055
-	/**
1056
-	 * Sets the minimum total that can not be used with this discount.
1057
-	 *
1058
-	 * @since 1.0.19
1059
-	 * @param float $value minimum total.
1060
-	 */
1061
-	public function set_min_total( $value ) {
1062
-		$this->set_prop( 'min_total', (float) wpinv_sanitize_amount( $value ) );
1063
-	}
1064
-
1065
-	/**
1066
-	 * Alias for self::set_min_total().
1067
-	 *
1068
-	 * @since 1.0.19
1069
-	 * @param float $value minimum total.
1070
-	 */
1071
-	public function set_minimum_total( $value ) {
1072
-		$this->set_min_total( $value );
1073
-	}
1074
-
1075
-	/**
1076
-	 * Sets the maximum total that can not be used with this discount.
1077
-	 *
1078
-	 * @since 1.0.19
1079
-	 * @param float $value maximum total.
1080
-	 */
1081
-	public function set_max_total( $value ) {
1082
-		$this->set_prop( 'max_total', (float) wpinv_sanitize_amount( $value ) );
1083
-	}
1084
-
1085
-	/**
1086
-	 * Alias for self::set_max_total().
1087
-	 *
1088
-	 * @since 1.0.19
1089
-	 * @param float $value maximum total.
1090
-	 */
1091
-	public function set_maximum_total( $value ) {
1092
-		$this->set_max_total( $value );
1093
-	}
1094
-
1095
-	/**
1096
-	 * @deprecated
1097
-	 */
1098
-	public function refresh(){}
1099
-
1100
-	/**
1101
-	 * @deprecated
1102
-	 *
1103
-	 */
1104
-	public function update_status( $status = 'publish' ){
1105
-
1106
-		if ( $this->exists() && $this->get_status() != $status ) {
1107
-			$this->set_status( $status );
1108
-			$this->save();
1109
-		}
1110
-
1111
-	}
1112
-
1113
-	/*
944
+    }
945
+
946
+    /**
947
+     * Alias of self::set_expiration().
948
+     *
949
+     * @since 1.0.19
950
+     * @param string $value New expiration date.
951
+     */
952
+    public function set_expiration_date( $value ) {
953
+        $this->set_expiration( $value );
954
+    }
955
+
956
+    /**
957
+     * Alias of self::set_expiration().
958
+     *
959
+     * @since 1.0.19
960
+     * @param string $value New expiration date.
961
+     */
962
+    public function set_end_date( $value ) {
963
+        $this->set_expiration( $value );
964
+    }
965
+
966
+    /**
967
+     * Sets the discount type.
968
+     *
969
+     * @since 1.0.19
970
+     * @param string $value New discount type.
971
+     */
972
+    public function set_type( $value ) {
973
+        if ( $value && array_key_exists( sanitize_text_field( $value ), wpinv_get_discount_types() ) ) {
974
+            $this->set_prop( 'type', sanitize_text_field( $value ) );
975
+        }
976
+    }
977
+
978
+    /**
979
+     * Sets the number of times a discount has been used.
980
+     *
981
+     * @since 1.0.19
982
+     * @param int $value usage count.
983
+     */
984
+    public function set_uses( $value ) {
985
+
986
+        $value = (int) $value;
987
+
988
+        if ( $value < 0 ) {
989
+            $value = 0;
990
+        }
991
+
992
+        $this->set_prop( 'uses', (int) $value );
993
+    }
994
+
995
+    /**
996
+     * Sets the maximum number of times a discount can be used.
997
+     *
998
+     * @since 1.0.19
999
+     * @param int $value maximum usage count.
1000
+     */
1001
+    public function set_max_uses( $value ) {
1002
+        $this->set_prop( 'max_uses', absint( $value ) );
1003
+    }
1004
+
1005
+    /**
1006
+     * Sets if this is a single use discount or not.
1007
+     *
1008
+     * @since 1.0.19
1009
+     * @param int|bool $value is single use.
1010
+     */
1011
+    public function set_is_single_use( $value ) {
1012
+        $this->set_prop( 'is_single_use', (bool) $value );
1013
+    }
1014
+
1015
+    /**
1016
+     * Sets the items that can be used with this discount.
1017
+     *
1018
+     * @since 1.0.19
1019
+     * @param array $value items.
1020
+     */
1021
+    public function set_items( $value ) {
1022
+        $this->set_prop( 'items', wpinv_parse_list( $value ) );
1023
+    }
1024
+
1025
+    /**
1026
+     * Alias for self::set_items().
1027
+     *
1028
+     * @since 1.0.19
1029
+     * @param array $value items.
1030
+     */
1031
+    public function set_allowed_items( $value ) {
1032
+        $this->set_items( $value );
1033
+    }
1034
+
1035
+    /**
1036
+     * Sets the items that can not be used with this discount.
1037
+     *
1038
+     * @since 1.0.19
1039
+     * @param array $value items.
1040
+     */
1041
+    public function set_excluded_items( $value ) {
1042
+        $this->set_prop( 'excluded_items', wpinv_parse_list( $value ) );
1043
+    }
1044
+
1045
+    /**
1046
+     * Sets if this is a recurring discounts or not.
1047
+     *
1048
+     * @since 1.0.19
1049
+     * @param int|bool $value is recurring.
1050
+     */
1051
+    public function set_is_recurring( $value ) {
1052
+        $this->set_prop( 'is_recurring', (bool) $value );
1053
+    }
1054
+
1055
+    /**
1056
+     * Sets the minimum total that can not be used with this discount.
1057
+     *
1058
+     * @since 1.0.19
1059
+     * @param float $value minimum total.
1060
+     */
1061
+    public function set_min_total( $value ) {
1062
+        $this->set_prop( 'min_total', (float) wpinv_sanitize_amount( $value ) );
1063
+    }
1064
+
1065
+    /**
1066
+     * Alias for self::set_min_total().
1067
+     *
1068
+     * @since 1.0.19
1069
+     * @param float $value minimum total.
1070
+     */
1071
+    public function set_minimum_total( $value ) {
1072
+        $this->set_min_total( $value );
1073
+    }
1074
+
1075
+    /**
1076
+     * Sets the maximum total that can not be used with this discount.
1077
+     *
1078
+     * @since 1.0.19
1079
+     * @param float $value maximum total.
1080
+     */
1081
+    public function set_max_total( $value ) {
1082
+        $this->set_prop( 'max_total', (float) wpinv_sanitize_amount( $value ) );
1083
+    }
1084
+
1085
+    /**
1086
+     * Alias for self::set_max_total().
1087
+     *
1088
+     * @since 1.0.19
1089
+     * @param float $value maximum total.
1090
+     */
1091
+    public function set_maximum_total( $value ) {
1092
+        $this->set_max_total( $value );
1093
+    }
1094
+
1095
+    /**
1096
+     * @deprecated
1097
+     */
1098
+    public function refresh(){}
1099
+
1100
+    /**
1101
+     * @deprecated
1102
+     *
1103
+     */
1104
+    public function update_status( $status = 'publish' ){
1105
+
1106
+        if ( $this->exists() && $this->get_status() != $status ) {
1107
+            $this->set_status( $status );
1108
+            $this->save();
1109
+        }
1110
+
1111
+    }
1112
+
1113
+    /*
1114 1114
 	|--------------------------------------------------------------------------
1115 1115
 	| Conditionals
1116 1116
 	|--------------------------------------------------------------------------
@@ -1119,263 +1119,263 @@  discard block
 block discarded – undo
1119 1119
 	|
1120 1120
 	*/
1121 1121
 
1122
-	/**
1123
-	 * Checks whether a discount exists in the database or not
1124
-	 *
1125
-	 * @since 1.0.15
1126
-	 */
1127
-	public function exists(){
1128
-		$id = $this->get_id();
1129
-		return ! empty( $id );
1130
-	}
1131
-
1132
-	/**
1133
-	 * Checks the discount type.
1134
-	 *
1135
-	 *
1136
-	 * @param  string $type the discount type to check against
1137
-	 * @since 1.0.15
1138
-	 * @return bool
1139
-	 */
1140
-	public function is_type( $type ) {
1141
-		return $this->get_type() == $type;
1142
-	}
1143
-
1144
-	/**
1145
-	 * Checks whether the discount is published or not
1146
-	 *
1147
-	 * @since 1.0.15
1148
-	 * @return bool
1149
-	 */
1150
-	public function is_active() {
1151
-		return $this->get_status() == 'publish';
1152
-	}
1153
-
1154
-	/**
1155
-	 * Checks whether the discount has max uses
1156
-	 *
1157
-	 * @since 1.0.15
1158
-	 * @return bool
1159
-	 */
1160
-	public function has_limit() {
1161
-		$limit = $this->get_max_uses();
1162
-		return ! empty( $limit );
1163
-	}
1164
-
1165
-	/**
1166
-	 * Checks whether the discount has ever been used.
1167
-	 *
1168
-	 * @since 1.0.15
1169
-	 * @return bool
1170
-	 */
1171
-	public function has_uses() {
1172
-		return $this->get_uses() > 0;
1173
-	}
1174
-
1175
-	/**
1176
-	 * Checks whether the discount is has exided the usage limit or not
1177
-	 *
1178
-	 * @since 1.0.15
1179
-	 * @return bool
1180
-	 */
1181
-	public function has_exceeded_limit() {
1182
-
1183
-		if ( ! $this->has_limit() || ! $this->has_uses() ) {
1184
-			$exceeded = false ;
1185
-		} else {
1186
-			$exceeded = (int) $this->get_max_uses() <= $this->get_uses();
1187
-		}
1188
-
1189
-		return apply_filters( 'wpinv_is_discount_maxed_out', $exceeded, $this->get_id(), $this, $this->get_code() );
1190
-	}
1191
-
1192
-	/**
1193
-	 * Checks whether the discount has an expiration date.
1194
-	 *
1195
-	 * @since 1.0.15
1196
-	 * @return bool
1197
-	 */
1198
-	public function has_expiration_date() {
1199
-		$date = $this->get_expiration_date();
1200
-		return ! empty( $date );
1201
-	}
1202
-
1203
-	/**
1204
-	 * Checks if the discount is expired
1205
-	 *
1206
-	 * @since 1.0.15
1207
-	 * @return bool
1208
-	 */
1209
-	public function is_expired() {
1210
-		$expired = $this->has_expiration_date() ? current_time( 'timestamp' ) > strtotime( $this->get_expiration_date() ) : false;
1211
-		return apply_filters( 'wpinv_is_discount_expired', $expired, $this->get_id(), $this, $this->get_code() );
1212
-	}
1213
-
1214
-	/**
1215
-	 * Checks whether the discount has a start date.
1216
-	 *
1217
-	 * @since 1.0.15
1218
-	 * @return bool
1219
-	 */
1220
-	public function has_start_date() {
1221
-		$date = $this->get_start_date();
1222
-		return ! empty( $date );
1223
-	}
1224
-
1225
-	/**
1226
-	 * Checks the discount start date.
1227
-	 *
1228
-	 * @since 1.0.15
1229
-	 * @return bool
1230
-	 */
1231
-	public function has_started() {
1232
-		$started = $this->has_start_date() ? true : current_time( 'timestamp' ) > strtotime( $this->get_start_date() );
1233
-		return apply_filters( 'wpinv_is_discount_started', $started, $this->get_id(), $this, $this->get_code() );
1234
-	}
1235
-
1236
-	/**
1237
-	 * Checks the discount has allowed items or not.
1238
-	 *
1239
-	 * @since 1.0.15
1240
-	 * @return bool
1241
-	 */
1242
-	public function has_allowed_items() {
1243
-		$allowed_items = $this->get_allowed_items();
1244
-		return ! empty( $allowed_items );
1245
-	}
1246
-
1247
-	/**
1248
-	 * Checks the discount has excluded items or not.
1249
-	 *
1250
-	 * @since 1.0.15
1251
-	 * @return bool
1252
-	 */
1253
-	public function has_excluded_items() {
1254
-		$excluded_items = $this->get_excluded_items();
1255
-		return ! empty( $excluded_items );
1256
-	}
1257
-
1258
-	/**
1259
-	 * Check if a discount is valid for a given item id.
1260
-	 *
1261
-	 * @param  int|int[]  $item_ids
1262
-	 * @since 1.0.15
1263
-	 * @return boolean
1264
-	 */
1265
-	public function is_valid_for_items( $item_ids ) {
1266
-
1267
-		$item_ids = wp_parse_id_list( $item_ids );
1268
-		$included = array_intersect( $item_ids, $this->get_allowed_items() );
1269
-		$excluded = array_intersect( $item_ids, $this->get_excluded_items() );
1270
-
1271
-		if ( $this->has_excluded_items() && ! empty( $excluded ) ) {
1272
-			return false;
1273
-		}
1274
-
1275
-		if ( $this->has_allowed_items() && empty( $included ) ) {
1276
-			return false;
1277
-		}
1278
-
1279
-		return true;
1280
-	}
1281
-
1282
-	/**
1283
-	 * Check if a discount is valid for the given amount
1284
-	 *
1285
-	 * @param  float  $amount The amount to check against
1286
-	 * @since 1.0.15
1287
-	 * @return boolean
1288
-	 */
1289
-	public function is_valid_for_amount( $amount ) {
1290
-		return $this->is_minimum_amount_met( $amount ) && $this->is_maximum_amount_met( $amount );
1291
-	}
1292
-
1293
-	/**
1294
-	 * Checks if the minimum amount is set
1295
-	 *
1296
-	 * @since 1.0.15
1297
-	 * @return boolean
1298
-	 */
1299
-	public function has_minimum_amount() {
1300
-		$minimum = $this->get_minimum_total();
1301
-		return ! empty( $minimum );
1302
-	}
1303
-
1304
-	/**
1305
-	 * Checks if the minimum amount is met
1306
-	 *
1307
-	 * @param  float  $amount The amount to check against
1308
-	 * @since 1.0.15
1309
-	 * @return boolean
1310
-	 */
1311
-	public function is_minimum_amount_met( $amount ) {
1312
-		$amount = floatval( wpinv_sanitize_amount( $amount ) );
1313
-		$min_met= ! ( $this->has_minimum_amount() && $amount < floatval( wpinv_sanitize_amount( $this->get_minimum_total() ) ) );
1314
-		return apply_filters( 'wpinv_is_discount_min_met', $min_met, $this->get_id(), $this, $this->get_code(), $amount );
1315
-	}
1316
-
1317
-	/**
1318
-	 * Checks if the maximum amount is set
1319
-	 *
1320
-	 * @since 1.0.15
1321
-	 * @return boolean
1322
-	 */
1323
-	public function has_maximum_amount() {
1324
-		$maximum = $this->get_maximum_total();
1325
-		return ! empty( $maximum );
1326
-	}
1327
-
1328
-	/**
1329
-	 * Checks if the maximum amount is met
1330
-	 *
1331
-	 * @param  float  $amount The amount to check against
1332
-	 * @since 1.0.15
1333
-	 * @return boolean
1334
-	 */
1335
-	public function is_maximum_amount_met( $amount ) {
1336
-		$amount = floatval( wpinv_sanitize_amount( $amount ) );
1337
-		$max_met= ! ( $this->has_maximum_amount() && $amount > floatval( wpinv_sanitize_amount( $this->get_maximum_total() ) ) );
1338
-		return apply_filters( 'wpinv_is_discount_max_met', $max_met, $this->get_id(), $this, $this->get_code(), $amount );
1339
-	}
1340
-
1341
-	/**
1342
-	 * Checks if the discount is recurring.
1343
-	 *
1344
-	 * @since 1.0.15
1345
-	 * @return boolean
1346
-	 */
1347
-	public function is_recurring() {
1348
-		$recurring = $this->get_is_recurring();
1349
-		return ! empty( $recurring );
1350
-	}
1351
-
1352
-	/**
1353
-	 * Checks if the discount is single use.
1354
-	 *
1355
-	 * @since 1.0.15
1356
-	 * @return boolean
1357
-	 */
1358
-	public function is_single_use() {
1359
-		$usage = $this->get_is_single_use();
1360
-		return ! empty( $usage );
1361
-	}
1362
-
1363
-	/**
1364
-	 * Check if a discount is valid for the given user
1365
-	 *
1366
-	 * @param  int|string  $user
1367
-	 * @since 1.0.15
1368
-	 * @return boolean
1369
-	 */
1370
-	public function is_valid_for_user( $user ) {
1371
-
1372
-		// Ensure that the discount is single use.
1373
-		if ( empty( $user ) || ! $this->is_single_use() ) {
1374
-			return true;
1375
-		}
1376
-
1377
-		// Prepare the user id.
1378
-		$user_id = 0;
1122
+    /**
1123
+     * Checks whether a discount exists in the database or not
1124
+     *
1125
+     * @since 1.0.15
1126
+     */
1127
+    public function exists(){
1128
+        $id = $this->get_id();
1129
+        return ! empty( $id );
1130
+    }
1131
+
1132
+    /**
1133
+     * Checks the discount type.
1134
+     *
1135
+     *
1136
+     * @param  string $type the discount type to check against
1137
+     * @since 1.0.15
1138
+     * @return bool
1139
+     */
1140
+    public function is_type( $type ) {
1141
+        return $this->get_type() == $type;
1142
+    }
1143
+
1144
+    /**
1145
+     * Checks whether the discount is published or not
1146
+     *
1147
+     * @since 1.0.15
1148
+     * @return bool
1149
+     */
1150
+    public function is_active() {
1151
+        return $this->get_status() == 'publish';
1152
+    }
1153
+
1154
+    /**
1155
+     * Checks whether the discount has max uses
1156
+     *
1157
+     * @since 1.0.15
1158
+     * @return bool
1159
+     */
1160
+    public function has_limit() {
1161
+        $limit = $this->get_max_uses();
1162
+        return ! empty( $limit );
1163
+    }
1164
+
1165
+    /**
1166
+     * Checks whether the discount has ever been used.
1167
+     *
1168
+     * @since 1.0.15
1169
+     * @return bool
1170
+     */
1171
+    public function has_uses() {
1172
+        return $this->get_uses() > 0;
1173
+    }
1174
+
1175
+    /**
1176
+     * Checks whether the discount is has exided the usage limit or not
1177
+     *
1178
+     * @since 1.0.15
1179
+     * @return bool
1180
+     */
1181
+    public function has_exceeded_limit() {
1182
+
1183
+        if ( ! $this->has_limit() || ! $this->has_uses() ) {
1184
+            $exceeded = false ;
1185
+        } else {
1186
+            $exceeded = (int) $this->get_max_uses() <= $this->get_uses();
1187
+        }
1188
+
1189
+        return apply_filters( 'wpinv_is_discount_maxed_out', $exceeded, $this->get_id(), $this, $this->get_code() );
1190
+    }
1191
+
1192
+    /**
1193
+     * Checks whether the discount has an expiration date.
1194
+     *
1195
+     * @since 1.0.15
1196
+     * @return bool
1197
+     */
1198
+    public function has_expiration_date() {
1199
+        $date = $this->get_expiration_date();
1200
+        return ! empty( $date );
1201
+    }
1202
+
1203
+    /**
1204
+     * Checks if the discount is expired
1205
+     *
1206
+     * @since 1.0.15
1207
+     * @return bool
1208
+     */
1209
+    public function is_expired() {
1210
+        $expired = $this->has_expiration_date() ? current_time( 'timestamp' ) > strtotime( $this->get_expiration_date() ) : false;
1211
+        return apply_filters( 'wpinv_is_discount_expired', $expired, $this->get_id(), $this, $this->get_code() );
1212
+    }
1213
+
1214
+    /**
1215
+     * Checks whether the discount has a start date.
1216
+     *
1217
+     * @since 1.0.15
1218
+     * @return bool
1219
+     */
1220
+    public function has_start_date() {
1221
+        $date = $this->get_start_date();
1222
+        return ! empty( $date );
1223
+    }
1224
+
1225
+    /**
1226
+     * Checks the discount start date.
1227
+     *
1228
+     * @since 1.0.15
1229
+     * @return bool
1230
+     */
1231
+    public function has_started() {
1232
+        $started = $this->has_start_date() ? true : current_time( 'timestamp' ) > strtotime( $this->get_start_date() );
1233
+        return apply_filters( 'wpinv_is_discount_started', $started, $this->get_id(), $this, $this->get_code() );
1234
+    }
1235
+
1236
+    /**
1237
+     * Checks the discount has allowed items or not.
1238
+     *
1239
+     * @since 1.0.15
1240
+     * @return bool
1241
+     */
1242
+    public function has_allowed_items() {
1243
+        $allowed_items = $this->get_allowed_items();
1244
+        return ! empty( $allowed_items );
1245
+    }
1246
+
1247
+    /**
1248
+     * Checks the discount has excluded items or not.
1249
+     *
1250
+     * @since 1.0.15
1251
+     * @return bool
1252
+     */
1253
+    public function has_excluded_items() {
1254
+        $excluded_items = $this->get_excluded_items();
1255
+        return ! empty( $excluded_items );
1256
+    }
1257
+
1258
+    /**
1259
+     * Check if a discount is valid for a given item id.
1260
+     *
1261
+     * @param  int|int[]  $item_ids
1262
+     * @since 1.0.15
1263
+     * @return boolean
1264
+     */
1265
+    public function is_valid_for_items( $item_ids ) {
1266
+
1267
+        $item_ids = wp_parse_id_list( $item_ids );
1268
+        $included = array_intersect( $item_ids, $this->get_allowed_items() );
1269
+        $excluded = array_intersect( $item_ids, $this->get_excluded_items() );
1270
+
1271
+        if ( $this->has_excluded_items() && ! empty( $excluded ) ) {
1272
+            return false;
1273
+        }
1274
+
1275
+        if ( $this->has_allowed_items() && empty( $included ) ) {
1276
+            return false;
1277
+        }
1278
+
1279
+        return true;
1280
+    }
1281
+
1282
+    /**
1283
+     * Check if a discount is valid for the given amount
1284
+     *
1285
+     * @param  float  $amount The amount to check against
1286
+     * @since 1.0.15
1287
+     * @return boolean
1288
+     */
1289
+    public function is_valid_for_amount( $amount ) {
1290
+        return $this->is_minimum_amount_met( $amount ) && $this->is_maximum_amount_met( $amount );
1291
+    }
1292
+
1293
+    /**
1294
+     * Checks if the minimum amount is set
1295
+     *
1296
+     * @since 1.0.15
1297
+     * @return boolean
1298
+     */
1299
+    public function has_minimum_amount() {
1300
+        $minimum = $this->get_minimum_total();
1301
+        return ! empty( $minimum );
1302
+    }
1303
+
1304
+    /**
1305
+     * Checks if the minimum amount is met
1306
+     *
1307
+     * @param  float  $amount The amount to check against
1308
+     * @since 1.0.15
1309
+     * @return boolean
1310
+     */
1311
+    public function is_minimum_amount_met( $amount ) {
1312
+        $amount = floatval( wpinv_sanitize_amount( $amount ) );
1313
+        $min_met= ! ( $this->has_minimum_amount() && $amount < floatval( wpinv_sanitize_amount( $this->get_minimum_total() ) ) );
1314
+        return apply_filters( 'wpinv_is_discount_min_met', $min_met, $this->get_id(), $this, $this->get_code(), $amount );
1315
+    }
1316
+
1317
+    /**
1318
+     * Checks if the maximum amount is set
1319
+     *
1320
+     * @since 1.0.15
1321
+     * @return boolean
1322
+     */
1323
+    public function has_maximum_amount() {
1324
+        $maximum = $this->get_maximum_total();
1325
+        return ! empty( $maximum );
1326
+    }
1327
+
1328
+    /**
1329
+     * Checks if the maximum amount is met
1330
+     *
1331
+     * @param  float  $amount The amount to check against
1332
+     * @since 1.0.15
1333
+     * @return boolean
1334
+     */
1335
+    public function is_maximum_amount_met( $amount ) {
1336
+        $amount = floatval( wpinv_sanitize_amount( $amount ) );
1337
+        $max_met= ! ( $this->has_maximum_amount() && $amount > floatval( wpinv_sanitize_amount( $this->get_maximum_total() ) ) );
1338
+        return apply_filters( 'wpinv_is_discount_max_met', $max_met, $this->get_id(), $this, $this->get_code(), $amount );
1339
+    }
1340
+
1341
+    /**
1342
+     * Checks if the discount is recurring.
1343
+     *
1344
+     * @since 1.0.15
1345
+     * @return boolean
1346
+     */
1347
+    public function is_recurring() {
1348
+        $recurring = $this->get_is_recurring();
1349
+        return ! empty( $recurring );
1350
+    }
1351
+
1352
+    /**
1353
+     * Checks if the discount is single use.
1354
+     *
1355
+     * @since 1.0.15
1356
+     * @return boolean
1357
+     */
1358
+    public function is_single_use() {
1359
+        $usage = $this->get_is_single_use();
1360
+        return ! empty( $usage );
1361
+    }
1362
+
1363
+    /**
1364
+     * Check if a discount is valid for the given user
1365
+     *
1366
+     * @param  int|string  $user
1367
+     * @since 1.0.15
1368
+     * @return boolean
1369
+     */
1370
+    public function is_valid_for_user( $user ) {
1371
+
1372
+        // Ensure that the discount is single use.
1373
+        if ( empty( $user ) || ! $this->is_single_use() ) {
1374
+            return true;
1375
+        }
1376
+
1377
+        // Prepare the user id.
1378
+        $user_id = 0;
1379 1379
         if ( is_numeric( $user ) ) {
1380 1380
             $user_id = absint( $user );
1381 1381
         } else if ( is_email( $user ) && $user_data = get_user_by( 'email', $user ) ) {
@@ -1384,117 +1384,117 @@  discard block
 block discarded – undo
1384 1384
             $user_id = $user_data->ID;
1385 1385
         }
1386 1386
 
1387
-		// Ensure that we have a user.
1388
-		if ( empty( $user_id ) ) {
1389
-			return true;
1390
-		}
1387
+        // Ensure that we have a user.
1388
+        if ( empty( $user_id ) ) {
1389
+            return true;
1390
+        }
1391 1391
 
1392
-		// Get all payments with matching user id.
1392
+        // Get all payments with matching user id.
1393 1393
         $payments = wpinv_get_invoices( array( 'user' => $user_id, 'limit' => false, 'paginate' => false ) );
1394
-		$code     = strtolower( $this->get_code() );
1395
-
1396
-		// For each payment...
1397
-		foreach ( $payments as $payment ) {
1398
-
1399
-			// Only check for paid invoices.
1400
-			if ( $payment->is_paid() && strtolower( $payment->get_discount_code() ) == $code ) {
1401
-				return false;
1402
-			}
1403
-
1404
-		}
1405
-
1406
-		return true;
1407
-	}
1408
-
1409
-	/**
1410
-	 * Deletes the discount from the database
1411
-	 *
1412
-	 * @since 1.0.15
1413
-	 * @return boolean
1414
-	 */
1415
-	public function remove() {
1416
-		return $this->delete();
1417
-	}
1418
-
1419
-	/**
1420
-	 * Increases a discount's usage.
1421
-	 *
1422
-	 * @since 1.0.15
1423
-	 * @param int $by The number of usages to increas by.
1424
-	 * @return int
1425
-	 */
1426
-	public function increase_usage( $by = 1 ) {
1427
-
1428
-		// Abort if zero.
1429
-		if ( empty( $by ) ) {
1430
-			return;
1431
-		}
1432
-
1433
-		// Increase the usage.
1434
-		$this->set_uses( $this->get_uses() + (int) $by );
1435
-
1436
-		// Save the discount.
1437
-		$this->save();
1438
-
1439
-		// Fire relevant hooks.
1440
-		if( (int) $by > 0 ) {
1441
-			do_action( 'wpinv_discount_increase_use_count', $this->get_uses(), $this->get_id(), $this->get_code(),  absint( $by ) );
1442
-		} else {
1443
-			do_action( 'wpinv_discount_decrease_use_count', $this->get_uses(), $this->get_id(), $this->get_code(), absint( $by ) );
1444
-		}
1445
-
1446
-		// Return the number of times the discount has been used.
1447
-		return $this->get_uses();
1448
-	}
1449
-
1450
-	/**
1451
-	 * Alias of self::__toString()
1452
-	 *
1453
-	 * @since 1.0.15
1454
-	 * @return string|false
1455
-	 */
1456
-	public function get_data_as_json() {
1457
-		return $this->__toString();
1458
-	}
1459
-
1460
-	/**
1461
-	 * Returns a discount's discounted amount.
1462
-	 *
1463
-	 * @since 1.0.15
1464
-	 * @param float $amount
1465
-	 * @return float
1466
-	 */
1467
-	public function get_discounted_amount( $amount ) {
1468
-
1469
-		// Convert amount to float.
1470
-		$amount = (float) $amount;
1471
-
1472
-		// Get discount amount.
1473
-		$discount_amount = $this->get_amount();
1474
-
1475
-		if ( empty( $discount_amount ) ) {
1476
-			return 0;
1477
-		}
1478
-
1479
-		// Format the amount.
1480
-		$discount_amount = floatval( wpinv_sanitize_amount( $discount_amount ) );
1394
+        $code     = strtolower( $this->get_code() );
1395
+
1396
+        // For each payment...
1397
+        foreach ( $payments as $payment ) {
1398
+
1399
+            // Only check for paid invoices.
1400
+            if ( $payment->is_paid() && strtolower( $payment->get_discount_code() ) == $code ) {
1401
+                return false;
1402
+            }
1403
+
1404
+        }
1405
+
1406
+        return true;
1407
+    }
1408
+
1409
+    /**
1410
+     * Deletes the discount from the database
1411
+     *
1412
+     * @since 1.0.15
1413
+     * @return boolean
1414
+     */
1415
+    public function remove() {
1416
+        return $this->delete();
1417
+    }
1418
+
1419
+    /**
1420
+     * Increases a discount's usage.
1421
+     *
1422
+     * @since 1.0.15
1423
+     * @param int $by The number of usages to increas by.
1424
+     * @return int
1425
+     */
1426
+    public function increase_usage( $by = 1 ) {
1427
+
1428
+        // Abort if zero.
1429
+        if ( empty( $by ) ) {
1430
+            return;
1431
+        }
1432
+
1433
+        // Increase the usage.
1434
+        $this->set_uses( $this->get_uses() + (int) $by );
1435
+
1436
+        // Save the discount.
1437
+        $this->save();
1438
+
1439
+        // Fire relevant hooks.
1440
+        if( (int) $by > 0 ) {
1441
+            do_action( 'wpinv_discount_increase_use_count', $this->get_uses(), $this->get_id(), $this->get_code(),  absint( $by ) );
1442
+        } else {
1443
+            do_action( 'wpinv_discount_decrease_use_count', $this->get_uses(), $this->get_id(), $this->get_code(), absint( $by ) );
1444
+        }
1445
+
1446
+        // Return the number of times the discount has been used.
1447
+        return $this->get_uses();
1448
+    }
1449
+
1450
+    /**
1451
+     * Alias of self::__toString()
1452
+     *
1453
+     * @since 1.0.15
1454
+     * @return string|false
1455
+     */
1456
+    public function get_data_as_json() {
1457
+        return $this->__toString();
1458
+    }
1459
+
1460
+    /**
1461
+     * Returns a discount's discounted amount.
1462
+     *
1463
+     * @since 1.0.15
1464
+     * @param float $amount
1465
+     * @return float
1466
+     */
1467
+    public function get_discounted_amount( $amount ) {
1468
+
1469
+        // Convert amount to float.
1470
+        $amount = (float) $amount;
1471
+
1472
+        // Get discount amount.
1473
+        $discount_amount = $this->get_amount();
1474
+
1475
+        if ( empty( $discount_amount ) ) {
1476
+            return 0;
1477
+        }
1478
+
1479
+        // Format the amount.
1480
+        $discount_amount = floatval( wpinv_sanitize_amount( $discount_amount ) );
1481 1481
 		
1482
-		// If this is a percentage discount.
1483
-		if ( $this->is_type( 'percent' ) ) {
1482
+        // If this is a percentage discount.
1483
+        if ( $this->is_type( 'percent' ) ) {
1484 1484
             $discount_amount = $amount * ( $discount_amount / 100 );
1485
-		}
1485
+        }
1486 1486
 
1487
-		// Discount can not be less than zero...
1488
-		if ( $discount_amount < 0 ) {
1489
-			$discount_amount = 0;
1490
-		}
1487
+        // Discount can not be less than zero...
1488
+        if ( $discount_amount < 0 ) {
1489
+            $discount_amount = 0;
1490
+        }
1491 1491
 
1492
-		// ... or more than the amount.
1493
-		if ( $discount_amount > $amount ) {
1494
-			$discount_amount = $amount;
1495
-		}
1492
+        // ... or more than the amount.
1493
+        if ( $discount_amount > $amount ) {
1494
+            $discount_amount = $amount;
1495
+        }
1496 1496
 
1497
-		return apply_filters( 'wpinv_discount_total_discount_amount', $discount_amount, $amount, $this );
1498
-	}
1497
+        return apply_filters( 'wpinv_discount_total_discount_amount', $discount_amount, $amount, $this );
1498
+    }
1499 1499
 
1500 1500
 }
Please login to merge, or discard this patch.
Spacing   +288 added lines, -288 removed lines patch added patch discarded remove patch
@@ -5,7 +5,7 @@  discard block
 block discarded – undo
5 5
  * @since   1.0.15
6 6
  */
7 7
 
8
-defined( 'ABSPATH' ) || exit;
8
+defined('ABSPATH') || exit;
9 9
 
10 10
 /**
11 11
  * Discount class.
@@ -13,7 +13,7 @@  discard block
 block discarded – undo
13 13
  * @since 1.0.15
14 14
  *
15 15
  */
16
-class WPInv_Discount extends GetPaid_Data  {
16
+class WPInv_Discount extends GetPaid_Data {
17 17
 
18 18
 	/**
19 19
 	 * Which data store to load.
@@ -79,35 +79,35 @@  discard block
 block discarded – undo
79 79
 	 *
80 80
 	 * @param int|array|string|WPInv_Discount|WP_Post $discount discount data, object, ID or code.
81 81
 	 */
82
-	public function __construct( $discount = 0 ) {
83
-		parent::__construct( $discount );
82
+	public function __construct($discount = 0) {
83
+		parent::__construct($discount);
84 84
 
85
-		if ( is_numeric( $discount ) && 'wpi_discount' === get_post_type( $discount ) ) {
86
-			$this->set_id( $discount );
87
-		} elseif ( $discount instanceof self ) {
88
-			$this->set_id( $discount->get_id() );
89
-		} elseif ( ! empty( $discount->ID ) ) {
90
-			$this->set_id( $discount->ID );
91
-		} elseif ( is_array( $discount ) ) {
92
-			$this->set_props( $discount );
85
+		if (is_numeric($discount) && 'wpi_discount' === get_post_type($discount)) {
86
+			$this->set_id($discount);
87
+		} elseif ($discount instanceof self) {
88
+			$this->set_id($discount->get_id());
89
+		} elseif (!empty($discount->ID)) {
90
+			$this->set_id($discount->ID);
91
+		} elseif (is_array($discount)) {
92
+			$this->set_props($discount);
93 93
 
94
-			if ( isset( $discount['ID'] ) ) {
95
-				$this->set_id( $discount['ID'] );
94
+			if (isset($discount['ID'])) {
95
+				$this->set_id($discount['ID']);
96 96
 			}
97 97
 
98
-		} elseif ( is_scalar( $discount ) && $discount = self::get_discount_id_by_code( $discount ) ) {
99
-			$this->set_id( $discount );
98
+		} elseif (is_scalar($discount) && $discount = self::get_discount_id_by_code($discount)) {
99
+			$this->set_id($discount);
100 100
 		} else {
101
-			$this->set_object_read( true );
101
+			$this->set_object_read(true);
102 102
 		}
103 103
 
104 104
         // Load the datastore.
105
-		$this->data_store = GetPaid_Data_Store::load( $this->data_store_name );
105
+		$this->data_store = GetPaid_Data_Store::load($this->data_store_name);
106 106
 
107
-		if ( $this->get_id() > 0 ) {
108
-            $this->post = get_post( $this->get_id() );
107
+		if ($this->get_id() > 0) {
108
+            $this->post = get_post($this->get_id());
109 109
             $this->ID   = $this->get_id();
110
-			$this->data_store->read( $this );
110
+			$this->data_store->read($this);
111 111
         }
112 112
 
113 113
 	}
@@ -123,50 +123,50 @@  discard block
 block discarded – undo
123 123
 	 * @since 1.0.15
124 124
 	 * @return array|bool array of discount details on success. False otherwise.
125 125
 	 */
126
-	public static function get_data_by( $field, $value ) {
126
+	public static function get_data_by($field, $value) {
127 127
 
128
-		if ( 'id' == strtolower( $field ) ) {
128
+		if ('id' == strtolower($field)) {
129 129
 			// Make sure the value is numeric to avoid casting objects, for example,
130 130
 			// to int 1.
131
-			if ( ! is_numeric( $value ) )
131
+			if (!is_numeric($value))
132 132
 				return false;
133
-			$value = intval( $value );
134
-			if ( $value < 1 )
133
+			$value = intval($value);
134
+			if ($value < 1)
135 135
 				return false;
136 136
 		}
137 137
 
138
-		if ( ! $value || ! is_string( $field ) ) {
138
+		if (!$value || !is_string($field)) {
139 139
 			return false;
140 140
 		}
141 141
 
142
-		$field = trim( $field );
142
+		$field = trim($field);
143 143
 
144 144
 		// prepare query args
145
-		switch ( strtolower( $field ) ) {
145
+		switch (strtolower($field)) {
146 146
 			case 'id':
147 147
 				$discount_id = $value;
148
-				$args		 = array( 'include' => array( $value ) );
148
+				$args = array('include' => array($value));
149 149
 				break;
150 150
 			case 'discount_code':
151 151
 			case 'code':
152
-				$value       = trim( $value );
153
-				$discount_id = wp_cache_get( $value, 'WPInv_Discount_Codes' );
154
-				$args		 = array( 'meta_key' => '_wpi_discount_code', 'meta_value' => $value );
152
+				$value       = trim($value);
153
+				$discount_id = wp_cache_get($value, 'WPInv_Discount_Codes');
154
+				$args = array('meta_key' => '_wpi_discount_code', 'meta_value' => $value);
155 155
 				break;
156 156
 			case 'name':
157 157
 				$discount_id = 0;
158
-				$args		 = array( 'name' => trim( $value ) );
158
+				$args		 = array('name' => trim($value));
159 159
 				break;
160 160
 			default:
161
-				$args		 = apply_filters( "wpinv_discount_get_data_by_{$field}_args", null, $value );
162
-				if ( ! is_array( $args ) ) {
163
-					return apply_filters( "wpinv_discount_get_data_by_$field", false, $value );
161
+				$args		 = apply_filters("wpinv_discount_get_data_by_{$field}_args", null, $value);
162
+				if (!is_array($args)) {
163
+					return apply_filters("wpinv_discount_get_data_by_$field", false, $value);
164 164
 				}
165 165
 
166 166
 		}
167 167
 
168 168
 		// Check if there is a cached value.
169
-		if ( ! empty( $discount_id ) && $discount = wp_cache_get( (int) $discount_id, 'WPInv_Discounts' ) ) {
169
+		if (!empty($discount_id) && $discount = wp_cache_get((int) $discount_id, 'WPInv_Discounts')) {
170 170
 			return $discount;
171 171
 		}
172 172
 
@@ -175,13 +175,13 @@  discard block
 block discarded – undo
175 175
 			array(
176 176
 				'post_type'      => 'wpi_discount',
177 177
 				'posts_per_page' => 1,
178
-				'post_status'    => array( 'publish', 'pending', 'draft', 'expired' )
178
+				'post_status'    => array('publish', 'pending', 'draft', 'expired')
179 179
 			)
180 180
 		);
181 181
 
182
-		$discount = get_posts( $args );
182
+		$discount = get_posts($args);
183 183
 
184
-		if( empty( $discount ) ) {
184
+		if (empty($discount)) {
185 185
 			return false;
186 186
 		}
187 187
 
@@ -190,30 +190,30 @@  discard block
 block discarded – undo
190 190
 		// Prepare the return data.
191 191
 		$return = array(
192 192
             'ID'                          => $discount->ID,
193
-            'code'                        => get_post_meta( $discount->ID, '_wpi_discount_code', true ),
194
-            'amount'                      => get_post_meta( $discount->ID, '_wpi_discount_amount', true ),
193
+            'code'                        => get_post_meta($discount->ID, '_wpi_discount_code', true),
194
+            'amount'                      => get_post_meta($discount->ID, '_wpi_discount_amount', true),
195 195
             'date_created'                => $discount->post_date,
196 196
 			'date_modified'               => $discount->post_modified,
197 197
 			'status'               		  => $discount->post_status,
198
-			'start'                  	  => get_post_meta( $discount->ID, '_wpi_discount_start', true ),
199
-            'expiration'                  => get_post_meta( $discount->ID, '_wpi_discount_expiration', true ),
200
-            'type'               		  => get_post_meta( $discount->ID, '_wpi_discount_type', true ),
198
+			'start'                  	  => get_post_meta($discount->ID, '_wpi_discount_start', true),
199
+            'expiration'                  => get_post_meta($discount->ID, '_wpi_discount_expiration', true),
200
+            'type'               		  => get_post_meta($discount->ID, '_wpi_discount_type', true),
201 201
             'description'                 => $discount->post_excerpt,
202
-            'uses'                 		  => get_post_meta( $discount->ID, '_wpi_discount_uses', true ),
203
-            'is_single_use'               => get_post_meta( $discount->ID, '_wpi_discount_is_single_use', true ),
204
-            'items'              	      => get_post_meta( $discount->ID, '_wpi_discount_items', true ),
205
-            'excluded_items'              => get_post_meta( $discount->ID, '_wpi_discount_excluded_items', true ),
206
-            'max_uses'                    => get_post_meta( $discount->ID, '_wpi_discount_max_uses', true ),
207
-            'is_recurring'                => get_post_meta( $discount->ID, '_wpi_discount_is_recurring', true ),
208
-            'min_total'                   => get_post_meta( $discount->ID, '_wpi_discount_min_total', true ),
209
-            'max_total'                   => get_post_meta( $discount->ID, '_wpi_discount_max_total', true ),
202
+            'uses'                 		  => get_post_meta($discount->ID, '_wpi_discount_uses', true),
203
+            'is_single_use'               => get_post_meta($discount->ID, '_wpi_discount_is_single_use', true),
204
+            'items'              	      => get_post_meta($discount->ID, '_wpi_discount_items', true),
205
+            'excluded_items'              => get_post_meta($discount->ID, '_wpi_discount_excluded_items', true),
206
+            'max_uses'                    => get_post_meta($discount->ID, '_wpi_discount_max_uses', true),
207
+            'is_recurring'                => get_post_meta($discount->ID, '_wpi_discount_is_recurring', true),
208
+            'min_total'                   => get_post_meta($discount->ID, '_wpi_discount_min_total', true),
209
+            'max_total'                   => get_post_meta($discount->ID, '_wpi_discount_max_total', true),
210 210
         );
211 211
 
212
-		$return = apply_filters( 'wpinv_discount_properties', $return );
212
+		$return = apply_filters('wpinv_discount_properties', $return);
213 213
 
214 214
 		// Update the cache with our data
215
-		wp_cache_add( $discount->ID, $return, 'WPInv_Discounts' );
216
-		wp_cache_add( $return['code'], $discount->ID, 'WPInv_Discount_Codes' );
215
+		wp_cache_add($discount->ID, $return, 'WPInv_Discounts');
216
+		wp_cache_add($return['code'], $discount->ID, 'WPInv_Discount_Codes');
217 217
 
218 218
 		return $return;
219 219
 	}
@@ -227,19 +227,19 @@  discard block
 block discarded – undo
227 227
 	 * @since 1.0.15
228 228
 	 * @return int
229 229
 	 */
230
-	public static function get_discount_id_by_code( $discount_code ) {
230
+	public static function get_discount_id_by_code($discount_code) {
231 231
 
232 232
 		// Trim the code.
233
-		$discount_code = trim( $discount_code );
233
+		$discount_code = trim($discount_code);
234 234
 
235 235
 		// Ensure a value has been passed.
236
-		if ( empty( $discount_code ) ) {
236
+		if (empty($discount_code)) {
237 237
 			return 0;
238 238
 		}
239 239
 
240 240
 		// Maybe retrieve from the cache.
241
-		$discount_id   = wp_cache_get( $discount_code, 'getpaid_discount_codes' );
242
-		if ( ! empty( $discount_id ) ) {
241
+		$discount_id = wp_cache_get($discount_code, 'getpaid_discount_codes');
242
+		if (!empty($discount_id)) {
243 243
 			return $discount_id;
244 244
 		}
245 245
 
@@ -250,19 +250,19 @@  discard block
 block discarded – undo
250 250
 				'meta_value'     => $discount_code,
251 251
 				'post_type'      => 'wpi_discount',
252 252
 				'posts_per_page' => 1,
253
-				'post_status'    => array( 'publish', 'pending', 'draft', 'expired' ),
253
+				'post_status'    => array('publish', 'pending', 'draft', 'expired'),
254 254
 				'fields'         => 'ids',
255 255
 			)
256 256
 		);
257 257
 
258
-		if ( empty( $discounts ) ) {
258
+		if (empty($discounts)) {
259 259
 			return 0;
260 260
 		}
261 261
 
262 262
 		$discount_id = $discounts[0];
263 263
 
264 264
 		// Update the cache with our data
265
-		wp_cache_add( get_post_meta( $discount_id, '_wpi_discount_code', true ), $discount_id, 'getpaid_discount_codes' );
265
+		wp_cache_add(get_post_meta($discount_id, '_wpi_discount_code', true), $discount_id, 'getpaid_discount_codes');
266 266
 
267 267
 		return $discount_id;
268 268
 	}
@@ -275,8 +275,8 @@  discard block
 block discarded – undo
275 275
 	 *
276 276
 	 * @return bool Whether the given discount field is set.
277 277
 	 */
278
-	public function __isset( $key ){
279
-		return isset( $this->data[$key] ) || method_exists( $this, "get_$key");
278
+	public function __isset($key) {
279
+		return isset($this->data[$key]) || method_exists($this, "get_$key");
280 280
 	}
281 281
 
282 282
 	/*
@@ -301,8 +301,8 @@  discard block
 block discarded – undo
301 301
 	 * @param  string $context View or edit context.
302 302
 	 * @return string
303 303
 	 */
304
-	public function get_status( $context = 'view' ) {
305
-		return $this->get_prop( 'status', $context );
304
+	public function get_status($context = 'view') {
305
+		return $this->get_prop('status', $context);
306 306
     }
307 307
 
308 308
     /**
@@ -312,8 +312,8 @@  discard block
 block discarded – undo
312 312
 	 * @param  string $context View or edit context.
313 313
 	 * @return string
314 314
 	 */
315
-	public function get_version( $context = 'view' ) {
316
-		return $this->get_prop( 'version', $context );
315
+	public function get_version($context = 'view') {
316
+		return $this->get_prop('version', $context);
317 317
     }
318 318
 
319 319
     /**
@@ -323,8 +323,8 @@  discard block
 block discarded – undo
323 323
 	 * @param  string $context View or edit context.
324 324
 	 * @return string
325 325
 	 */
326
-	public function get_date_created( $context = 'view' ) {
327
-		return $this->get_prop( 'date_created', $context );
326
+	public function get_date_created($context = 'view') {
327
+		return $this->get_prop('date_created', $context);
328 328
     }
329 329
 
330 330
     /**
@@ -334,11 +334,11 @@  discard block
 block discarded – undo
334 334
 	 * @param  string $context View or edit context.
335 335
 	 * @return string
336 336
 	 */
337
-	public function get_date_created_gmt( $context = 'view' ) {
338
-        $date = $this->get_date_created( $context );
337
+	public function get_date_created_gmt($context = 'view') {
338
+        $date = $this->get_date_created($context);
339 339
 
340
-        if ( $date ) {
341
-            $date = get_gmt_from_date( $date );
340
+        if ($date) {
341
+            $date = get_gmt_from_date($date);
342 342
         }
343 343
 		return $date;
344 344
     }
@@ -350,8 +350,8 @@  discard block
 block discarded – undo
350 350
 	 * @param  string $context View or edit context.
351 351
 	 * @return string
352 352
 	 */
353
-	public function get_date_modified( $context = 'view' ) {
354
-		return $this->get_prop( 'date_modified', $context );
353
+	public function get_date_modified($context = 'view') {
354
+		return $this->get_prop('date_modified', $context);
355 355
     }
356 356
 
357 357
     /**
@@ -361,11 +361,11 @@  discard block
 block discarded – undo
361 361
 	 * @param  string $context View or edit context.
362 362
 	 * @return string
363 363
 	 */
364
-	public function get_date_modified_gmt( $context = 'view' ) {
365
-        $date = $this->get_date_modified( $context );
364
+	public function get_date_modified_gmt($context = 'view') {
365
+        $date = $this->get_date_modified($context);
366 366
 
367
-        if ( $date ) {
368
-            $date = get_gmt_from_date( $date );
367
+        if ($date) {
368
+            $date = get_gmt_from_date($date);
369 369
         }
370 370
 		return $date;
371 371
     }
@@ -377,8 +377,8 @@  discard block
 block discarded – undo
377 377
 	 * @param  string $context View or edit context.
378 378
 	 * @return string
379 379
 	 */
380
-	public function get_name( $context = 'view' ) {
381
-		return $this->get_prop( 'name', $context );
380
+	public function get_name($context = 'view') {
381
+		return $this->get_prop('name', $context);
382 382
     }
383 383
 
384 384
     /**
@@ -388,8 +388,8 @@  discard block
 block discarded – undo
388 388
 	 * @param  string $context View or edit context.
389 389
 	 * @return string
390 390
 	 */
391
-	public function get_title( $context = 'view' ) {
392
-		return $this->get_name( $context );
391
+	public function get_title($context = 'view') {
392
+		return $this->get_name($context);
393 393
     }
394 394
 
395 395
     /**
@@ -399,8 +399,8 @@  discard block
 block discarded – undo
399 399
 	 * @param  string $context View or edit context.
400 400
 	 * @return string
401 401
 	 */
402
-	public function get_description( $context = 'view' ) {
403
-		return $this->get_prop( 'description', $context );
402
+	public function get_description($context = 'view') {
403
+		return $this->get_prop('description', $context);
404 404
     }
405 405
 
406 406
     /**
@@ -410,8 +410,8 @@  discard block
 block discarded – undo
410 410
 	 * @param  string $context View or edit context.
411 411
 	 * @return string
412 412
 	 */
413
-	public function get_excerpt( $context = 'view' ) {
414
-		return $this->get_description( $context );
413
+	public function get_excerpt($context = 'view') {
414
+		return $this->get_description($context);
415 415
     }
416 416
 
417 417
     /**
@@ -421,8 +421,8 @@  discard block
 block discarded – undo
421 421
 	 * @param  string $context View or edit context.
422 422
 	 * @return string
423 423
 	 */
424
-	public function get_summary( $context = 'view' ) {
425
-		return $this->get_description( $context );
424
+	public function get_summary($context = 'view') {
425
+		return $this->get_description($context);
426 426
     }
427 427
 
428 428
     /**
@@ -432,8 +432,8 @@  discard block
 block discarded – undo
432 432
 	 * @param  string $context View or edit context.
433 433
 	 * @return string
434 434
 	 */
435
-	public function get_author( $context = 'view' ) {
436
-		return (int) $this->get_prop( 'author', $context );
435
+	public function get_author($context = 'view') {
436
+		return (int) $this->get_prop('author', $context);
437 437
 	}
438 438
 	
439 439
 	/**
@@ -443,8 +443,8 @@  discard block
 block discarded – undo
443 443
 	 * @param  string $context View or edit context.
444 444
 	 * @return string
445 445
 	 */
446
-	public function get_code( $context = 'view' ) {
447
-		return $this->get_prop( 'code', $context );
446
+	public function get_code($context = 'view') {
447
+		return $this->get_prop('code', $context);
448 448
 	}
449 449
 	
450 450
 	/**
@@ -454,8 +454,8 @@  discard block
 block discarded – undo
454 454
 	 * @param  string $context View or edit context.
455 455
 	 * @return string
456 456
 	 */
457
-	public function get_coupon_code( $context = 'view' ) {
458
-		return $this->get_code( $context );
457
+	public function get_coupon_code($context = 'view') {
458
+		return $this->get_code($context);
459 459
 	}
460 460
 	
461 461
 	/**
@@ -465,8 +465,8 @@  discard block
 block discarded – undo
465 465
 	 * @param  string $context View or edit context.
466 466
 	 * @return string
467 467
 	 */
468
-	public function get_discount_code( $context = 'view' ) {
469
-		return $this->get_code( $context );
468
+	public function get_discount_code($context = 'view') {
469
+		return $this->get_code($context);
470 470
 	}
471 471
 	
472 472
 	/**
@@ -476,8 +476,8 @@  discard block
 block discarded – undo
476 476
 	 * @param  string $context View or edit context.
477 477
 	 * @return float
478 478
 	 */
479
-	public function get_amount( $context = 'view' ) {
480
-		return $this->get_prop( 'amount', $context );
479
+	public function get_amount($context = 'view') {
480
+		return $this->get_prop('amount', $context);
481 481
 	}
482 482
 
483 483
 	/**
@@ -488,13 +488,13 @@  discard block
 block discarded – undo
488 488
 	 */
489 489
 	public function get_formatted_amount() {
490 490
 
491
-		if ( $this->is_type( 'flat' ) ) {
492
-			$rate = wpinv_price( $this->get_amount() );
491
+		if ($this->is_type('flat')) {
492
+			$rate = wpinv_price($this->get_amount());
493 493
 		} else {
494 494
 			$rate = $this->get_amount() . '%';
495 495
 		}
496 496
 
497
-		return apply_filters( 'wpinv_format_discount_rate', $rate, $this->get_type(), $this->get_amount() );
497
+		return apply_filters('wpinv_format_discount_rate', $rate, $this->get_type(), $this->get_amount());
498 498
 	}
499 499
 	
500 500
 	/**
@@ -504,8 +504,8 @@  discard block
 block discarded – undo
504 504
 	 * @param  string $context View or edit context.
505 505
 	 * @return string
506 506
 	 */
507
-	public function get_start( $context = 'view' ) {
508
-		return $this->get_prop( 'start', $context );
507
+	public function get_start($context = 'view') {
508
+		return $this->get_prop('start', $context);
509 509
 	}
510 510
 	
511 511
 	/**
@@ -515,8 +515,8 @@  discard block
 block discarded – undo
515 515
 	 * @param  string $context View or edit context.
516 516
 	 * @return string
517 517
 	 */
518
-	public function get_start_date( $context = 'view' ) {
519
-		return $this->get_start( $context );
518
+	public function get_start_date($context = 'view') {
519
+		return $this->get_start($context);
520 520
 	}
521 521
 	
522 522
 	/**
@@ -526,8 +526,8 @@  discard block
 block discarded – undo
526 526
 	 * @param  string $context View or edit context.
527 527
 	 * @return string
528 528
 	 */
529
-	public function get_expiration( $context = 'view' ) {
530
-		return $this->get_prop( 'expiration', $context );
529
+	public function get_expiration($context = 'view') {
530
+		return $this->get_prop('expiration', $context);
531 531
 	}
532 532
 	
533 533
 	/**
@@ -537,8 +537,8 @@  discard block
 block discarded – undo
537 537
 	 * @param  string $context View or edit context.
538 538
 	 * @return string
539 539
 	 */
540
-	public function get_expiration_date( $context = 'view' ) {
541
-		return $this->get_expiration( $context );
540
+	public function get_expiration_date($context = 'view') {
541
+		return $this->get_expiration($context);
542 542
 	}
543 543
 
544 544
 	/**
@@ -548,8 +548,8 @@  discard block
 block discarded – undo
548 548
 	 * @param  string $context View or edit context.
549 549
 	 * @return string
550 550
 	 */
551
-	public function get_end_date( $context = 'view' ) {
552
-		return $this->get_expiration( $context );
551
+	public function get_end_date($context = 'view') {
552
+		return $this->get_expiration($context);
553 553
 	}
554 554
 	
555 555
 	/**
@@ -559,8 +559,8 @@  discard block
 block discarded – undo
559 559
 	 * @param  string $context View or edit context.
560 560
 	 * @return string
561 561
 	 */
562
-	public function get_type( $context = 'view' ) {
563
-		return $this->get_prop( 'type', $context );
562
+	public function get_type($context = 'view') {
563
+		return $this->get_prop('type', $context);
564 564
 	}
565 565
 
566 566
 	/**
@@ -570,8 +570,8 @@  discard block
 block discarded – undo
570 570
 	 * @param  string $context View or edit context.
571 571
 	 * @return int
572 572
 	 */
573
-	public function get_uses( $context = 'view' ) {
574
-		return (int) $this->get_prop( 'uses', $context );
573
+	public function get_uses($context = 'view') {
574
+		return (int) $this->get_prop('uses', $context);
575 575
 	}
576 576
 
577 577
 	/**
@@ -582,7 +582,7 @@  discard block
 block discarded – undo
582 582
 	 */
583 583
 	public function get_usage() {
584 584
 
585
-		if ( ! $this->has_limit() ) {
585
+		if (!$this->has_limit()) {
586 586
 			return $this->get_uses() . ' / ' . ' &infin;';
587 587
 		}
588 588
 
@@ -597,9 +597,9 @@  discard block
 block discarded – undo
597 597
 	 * @param  string $context View or edit context.
598 598
 	 * @return int
599 599
 	 */
600
-	public function get_max_uses( $context = 'view' ) {
601
-		$max_uses = $this->get_prop( 'max_uses', $context );
602
-		return empty( $max_uses ) ? null : $max_uses;
600
+	public function get_max_uses($context = 'view') {
601
+		$max_uses = $this->get_prop('max_uses', $context);
602
+		return empty($max_uses) ? null : $max_uses;
603 603
 	}
604 604
 
605 605
 	/**
@@ -609,8 +609,8 @@  discard block
 block discarded – undo
609 609
 	 * @param  string $context View or edit context.
610 610
 	 * @return bool
611 611
 	 */
612
-	public function get_is_single_use( $context = 'view' ) {
613
-		return $this->get_prop( 'is_single_use', $context );
612
+	public function get_is_single_use($context = 'view') {
613
+		return $this->get_prop('is_single_use', $context);
614 614
 	}
615 615
 
616 616
 	/**
@@ -620,8 +620,8 @@  discard block
 block discarded – undo
620 620
 	 * @param  string $context View or edit context.
621 621
 	 * @return array
622 622
 	 */
623
-	public function get_items( $context = 'view' ) {
624
-		return wpinv_parse_list( $this->get_prop( 'items', $context ) );
623
+	public function get_items($context = 'view') {
624
+		return wpinv_parse_list($this->get_prop('items', $context));
625 625
 	}
626 626
 
627 627
 	/**
@@ -631,8 +631,8 @@  discard block
 block discarded – undo
631 631
 	 * @param  string $context View or edit context.
632 632
 	 * @return array
633 633
 	 */
634
-	public function get_allowed_items( $context = 'view' ) {
635
-		return $this->get_items( $context );
634
+	public function get_allowed_items($context = 'view') {
635
+		return $this->get_items($context);
636 636
 	}
637 637
 
638 638
 	/**
@@ -642,8 +642,8 @@  discard block
 block discarded – undo
642 642
 	 * @param  string $context View or edit context.
643 643
 	 * @return array
644 644
 	 */
645
-	public function get_excluded_items( $context = 'view' ) {
646
-		return wpinv_parse_list( $this->get_prop( 'excluded_items', $context ) );
645
+	public function get_excluded_items($context = 'view') {
646
+		return wpinv_parse_list($this->get_prop('excluded_items', $context));
647 647
 	}
648 648
 
649 649
 	/**
@@ -653,8 +653,8 @@  discard block
 block discarded – undo
653 653
 	 * @param  string $context View or edit context.
654 654
 	 * @return int|string|bool
655 655
 	 */
656
-	public function get_is_recurring( $context = 'view' ) {
657
-		return $this->get_prop( 'is_recurring', $context );
656
+	public function get_is_recurring($context = 'view') {
657
+		return $this->get_prop('is_recurring', $context);
658 658
 	}
659 659
 
660 660
 	/**
@@ -664,9 +664,9 @@  discard block
 block discarded – undo
664 664
 	 * @param  string $context View or edit context.
665 665
 	 * @return float
666 666
 	 */
667
-	public function get_min_total( $context = 'view' ) {
668
-		$minimum = $this->get_prop( 'min_total', $context );
669
-		return empty( $minimum ) ? null : $minimum;
667
+	public function get_min_total($context = 'view') {
668
+		$minimum = $this->get_prop('min_total', $context);
669
+		return empty($minimum) ? null : $minimum;
670 670
 	}
671 671
 
672 672
 	/**
@@ -676,8 +676,8 @@  discard block
 block discarded – undo
676 676
 	 * @param  string $context View or edit context.
677 677
 	 * @return float
678 678
 	 */
679
-	public function get_minimum_total( $context = 'view' ) {
680
-		return $this->get_min_total( $context );
679
+	public function get_minimum_total($context = 'view') {
680
+		return $this->get_min_total($context);
681 681
 	}
682 682
 
683 683
 	/**
@@ -687,9 +687,9 @@  discard block
 block discarded – undo
687 687
 	 * @param  string $context View or edit context.
688 688
 	 * @return float
689 689
 	 */
690
-	public function get_max_total( $context = 'view' ) {
691
-		$maximum = $this->get_prop( 'max_total', $context );
692
-		return empty( $maximum ) ? null : $maximum;
690
+	public function get_max_total($context = 'view') {
691
+		$maximum = $this->get_prop('max_total', $context);
692
+		return empty($maximum) ? null : $maximum;
693 693
 	}
694 694
 
695 695
 	/**
@@ -699,8 +699,8 @@  discard block
 block discarded – undo
699 699
 	 * @param  string $context View or edit context.
700 700
 	 * @return float
701 701
 	 */
702
-	public function get_maximum_total( $context = 'view' ) {
703
-		return $this->get_max_total( $context );
702
+	public function get_maximum_total($context = 'view') {
703
+		return $this->get_max_total($context);
704 704
 	}
705 705
 
706 706
 	/**
@@ -713,8 +713,8 @@  discard block
 block discarded – undo
713 713
 	 * @param  string $context View or edit context.
714 714
 	 * @return mixed Value of the given discount property (if set).
715 715
 	 */
716
-	public function get( $key, $context = 'view' ) {
717
-        return $this->get_prop( $key, $context );
716
+	public function get($key, $context = 'view') {
717
+        return $this->get_prop($key, $context);
718 718
 	}
719 719
 
720 720
 	/*
@@ -734,10 +734,10 @@  discard block
 block discarded – undo
734 734
 	 * @param  string $status New status.
735 735
 	 * @return array details of change.
736 736
 	 */
737
-	public function set_status( $status ) {
737
+	public function set_status($status) {
738 738
         $old_status = $this->get_status();
739 739
 
740
-        $this->set_prop( 'status', $status );
740
+        $this->set_prop('status', $status);
741 741
 
742 742
 		return array(
743 743
 			'from' => $old_status,
@@ -750,8 +750,8 @@  discard block
 block discarded – undo
750 750
 	 *
751 751
 	 * @since 1.0.19
752 752
 	 */
753
-	public function set_version( $value ) {
754
-		$this->set_prop( 'version', $value );
753
+	public function set_version($value) {
754
+		$this->set_prop('version', $value);
755 755
     }
756 756
 
757 757
     /**
@@ -761,11 +761,11 @@  discard block
 block discarded – undo
761 761
 	 * @param string $value Value to set.
762 762
      * @return bool Whether or not the date was set.
763 763
 	 */
764
-	public function set_date_created( $value ) {
765
-        $date = strtotime( $value );
764
+	public function set_date_created($value) {
765
+        $date = strtotime($value);
766 766
 
767
-        if ( $date ) {
768
-            $this->set_prop( 'date_created', date( 'Y-m-d H:i:s', $date ) );
767
+        if ($date) {
768
+            $this->set_prop('date_created', date('Y-m-d H:i:s', $date));
769 769
             return true;
770 770
         }
771 771
 
@@ -780,11 +780,11 @@  discard block
 block discarded – undo
780 780
 	 * @param string $value Value to set.
781 781
      * @return bool Whether or not the date was set.
782 782
 	 */
783
-	public function set_date_modified( $value ) {
784
-        $date = strtotime( $value );
783
+	public function set_date_modified($value) {
784
+        $date = strtotime($value);
785 785
 
786
-        if ( $date ) {
787
-            $this->set_prop( 'date_modified', date( 'Y-m-d H:i:s', $date ) );
786
+        if ($date) {
787
+            $this->set_prop('date_modified', date('Y-m-d H:i:s', $date));
788 788
             return true;
789 789
         }
790 790
 
@@ -798,9 +798,9 @@  discard block
 block discarded – undo
798 798
 	 * @since 1.0.19
799 799
 	 * @param  string $value New name.
800 800
 	 */
801
-	public function set_name( $value ) {
802
-        $name = sanitize_text_field( $value );
803
-		$this->set_prop( 'name', $name );
801
+	public function set_name($value) {
802
+        $name = sanitize_text_field($value);
803
+		$this->set_prop('name', $name);
804 804
     }
805 805
 
806 806
     /**
@@ -809,8 +809,8 @@  discard block
 block discarded – undo
809 809
 	 * @since 1.0.19
810 810
 	 * @param  string $value New name.
811 811
 	 */
812
-	public function set_title( $value ) {
813
-		$this->set_name( $value );
812
+	public function set_title($value) {
813
+		$this->set_name($value);
814 814
     }
815 815
 
816 816
     /**
@@ -819,9 +819,9 @@  discard block
 block discarded – undo
819 819
 	 * @since 1.0.19
820 820
 	 * @param  string $value New description.
821 821
 	 */
822
-	public function set_description( $value ) {
823
-        $description = wp_kses_post( $value );
824
-		return $this->set_prop( 'description', $description );
822
+	public function set_description($value) {
823
+        $description = wp_kses_post($value);
824
+		return $this->set_prop('description', $description);
825 825
     }
826 826
 
827 827
     /**
@@ -830,8 +830,8 @@  discard block
 block discarded – undo
830 830
 	 * @since 1.0.19
831 831
 	 * @param  string $value New description.
832 832
 	 */
833
-	public function set_excerpt( $value ) {
834
-		$this->set_description( $value );
833
+	public function set_excerpt($value) {
834
+		$this->set_description($value);
835 835
     }
836 836
 
837 837
     /**
@@ -840,8 +840,8 @@  discard block
 block discarded – undo
840 840
 	 * @since 1.0.19
841 841
 	 * @param  string $value New description.
842 842
 	 */
843
-	public function set_summary( $value ) {
844
-		$this->set_description( $value );
843
+	public function set_summary($value) {
844
+		$this->set_description($value);
845 845
     }
846 846
 
847 847
     /**
@@ -850,8 +850,8 @@  discard block
 block discarded – undo
850 850
 	 * @since 1.0.19
851 851
 	 * @param  int $value New author.
852 852
 	 */
853
-	public function set_author( $value ) {
854
-		$this->set_prop( 'author', (int) $value );
853
+	public function set_author($value) {
854
+		$this->set_prop('author', (int) $value);
855 855
 	}
856 856
 	
857 857
 	/**
@@ -860,9 +860,9 @@  discard block
 block discarded – undo
860 860
 	 * @since 1.0.19
861 861
 	 * @param string $value New discount code.
862 862
 	 */
863
-	public function set_code( $value ) {
864
-		$code = sanitize_text_field( $value );
865
-		$this->set_prop( 'code', $code );
863
+	public function set_code($value) {
864
+		$code = sanitize_text_field($value);
865
+		$this->set_prop('code', $code);
866 866
 	}
867 867
 	
868 868
 	/**
@@ -871,8 +871,8 @@  discard block
 block discarded – undo
871 871
 	 * @since 1.0.19
872 872
 	 * @param string $value New discount code.
873 873
 	 */
874
-	public function set_coupon_code( $value ) {
875
-		$this->set_code( $value );
874
+	public function set_coupon_code($value) {
875
+		$this->set_code($value);
876 876
 	}
877 877
 	
878 878
 	/**
@@ -881,8 +881,8 @@  discard block
 block discarded – undo
881 881
 	 * @since 1.0.19
882 882
 	 * @param string $value New discount code.
883 883
 	 */
884
-	public function set_discount_code( $value ) {
885
-		$this->set_code( $value );
884
+	public function set_discount_code($value) {
885
+		$this->set_code($value);
886 886
 	}
887 887
 	
888 888
 	/**
@@ -891,9 +891,9 @@  discard block
 block discarded – undo
891 891
 	 * @since 1.0.19
892 892
 	 * @param float $value New discount code.
893 893
 	 */
894
-	public function set_amount( $value ) {
895
-		$amount = floatval( wpinv_sanitize_amount( $value ) );
896
-		$this->set_prop( 'amount', $amount );
894
+	public function set_amount($value) {
895
+		$amount = floatval(wpinv_sanitize_amount($value));
896
+		$this->set_prop('amount', $amount);
897 897
 	}
898 898
 
899 899
 	/**
@@ -902,15 +902,15 @@  discard block
 block discarded – undo
902 902
 	 * @since 1.0.19
903 903
 	 * @param float $value New start date.
904 904
 	 */
905
-	public function set_start( $value ) {
906
-		$date = strtotime( $value );
905
+	public function set_start($value) {
906
+		$date = strtotime($value);
907 907
 
908
-        if ( $date ) {
909
-            $this->set_prop( 'start', date( 'Y-m-d H:i', $date ) );
908
+        if ($date) {
909
+            $this->set_prop('start', date('Y-m-d H:i', $date));
910 910
             return true;
911 911
 		}
912 912
 		
913
-		$this->set_prop( 'start', '' );
913
+		$this->set_prop('start', '');
914 914
 
915 915
         return false;
916 916
 	}
@@ -921,8 +921,8 @@  discard block
 block discarded – undo
921 921
 	 * @since 1.0.19
922 922
 	 * @param string $value New start date.
923 923
 	 */
924
-	public function set_start_date( $value ) {
925
-		$this->set_start( $value );
924
+	public function set_start_date($value) {
925
+		$this->set_start($value);
926 926
 	}
927 927
 
928 928
 	/**
@@ -931,15 +931,15 @@  discard block
 block discarded – undo
931 931
 	 * @since 1.0.19
932 932
 	 * @param float $value New expiration date.
933 933
 	 */
934
-	public function set_expiration( $value ) {
935
-		$date = strtotime( $value );
934
+	public function set_expiration($value) {
935
+		$date = strtotime($value);
936 936
 
937
-        if ( $date ) {
938
-            $this->set_prop( 'expiration', date( 'Y-m-d H:i', $date ) );
937
+        if ($date) {
938
+            $this->set_prop('expiration', date('Y-m-d H:i', $date));
939 939
             return true;
940 940
         }
941 941
 
942
-		$this->set_prop( 'expiration', '' );
942
+		$this->set_prop('expiration', '');
943 943
         return false;
944 944
 	}
945 945
 
@@ -949,8 +949,8 @@  discard block
 block discarded – undo
949 949
 	 * @since 1.0.19
950 950
 	 * @param string $value New expiration date.
951 951
 	 */
952
-	public function set_expiration_date( $value ) {
953
-		$this->set_expiration( $value );
952
+	public function set_expiration_date($value) {
953
+		$this->set_expiration($value);
954 954
 	}
955 955
 
956 956
 	/**
@@ -959,8 +959,8 @@  discard block
 block discarded – undo
959 959
 	 * @since 1.0.19
960 960
 	 * @param string $value New expiration date.
961 961
 	 */
962
-	public function set_end_date( $value ) {
963
-		$this->set_expiration( $value );
962
+	public function set_end_date($value) {
963
+		$this->set_expiration($value);
964 964
 	}
965 965
 
966 966
 	/**
@@ -969,9 +969,9 @@  discard block
 block discarded – undo
969 969
 	 * @since 1.0.19
970 970
 	 * @param string $value New discount type.
971 971
 	 */
972
-	public function set_type( $value ) {
973
-		if ( $value && array_key_exists( sanitize_text_field( $value ), wpinv_get_discount_types() ) ) {
974
-			$this->set_prop( 'type', sanitize_text_field( $value ) );
972
+	public function set_type($value) {
973
+		if ($value && array_key_exists(sanitize_text_field($value), wpinv_get_discount_types())) {
974
+			$this->set_prop('type', sanitize_text_field($value));
975 975
 		}
976 976
 	}
977 977
 
@@ -981,15 +981,15 @@  discard block
 block discarded – undo
981 981
 	 * @since 1.0.19
982 982
 	 * @param int $value usage count.
983 983
 	 */
984
-	public function set_uses( $value ) {
984
+	public function set_uses($value) {
985 985
 
986 986
 		$value = (int) $value;
987 987
 
988
-		if ( $value < 0 ) {
988
+		if ($value < 0) {
989 989
 			$value = 0;
990 990
 		}
991 991
 
992
-		$this->set_prop( 'uses', (int) $value );
992
+		$this->set_prop('uses', (int) $value);
993 993
 	}
994 994
 
995 995
 	/**
@@ -998,8 +998,8 @@  discard block
 block discarded – undo
998 998
 	 * @since 1.0.19
999 999
 	 * @param int $value maximum usage count.
1000 1000
 	 */
1001
-	public function set_max_uses( $value ) {
1002
-		$this->set_prop( 'max_uses', absint( $value ) );
1001
+	public function set_max_uses($value) {
1002
+		$this->set_prop('max_uses', absint($value));
1003 1003
 	}
1004 1004
 
1005 1005
 	/**
@@ -1008,8 +1008,8 @@  discard block
 block discarded – undo
1008 1008
 	 * @since 1.0.19
1009 1009
 	 * @param int|bool $value is single use.
1010 1010
 	 */
1011
-	public function set_is_single_use( $value ) {
1012
-		$this->set_prop( 'is_single_use', (bool) $value );
1011
+	public function set_is_single_use($value) {
1012
+		$this->set_prop('is_single_use', (bool) $value);
1013 1013
 	}
1014 1014
 
1015 1015
 	/**
@@ -1018,8 +1018,8 @@  discard block
 block discarded – undo
1018 1018
 	 * @since 1.0.19
1019 1019
 	 * @param array $value items.
1020 1020
 	 */
1021
-	public function set_items( $value ) {
1022
-		$this->set_prop( 'items', wpinv_parse_list( $value ) );
1021
+	public function set_items($value) {
1022
+		$this->set_prop('items', wpinv_parse_list($value));
1023 1023
 	}
1024 1024
 
1025 1025
 	/**
@@ -1028,8 +1028,8 @@  discard block
 block discarded – undo
1028 1028
 	 * @since 1.0.19
1029 1029
 	 * @param array $value items.
1030 1030
 	 */
1031
-	public function set_allowed_items( $value ) {
1032
-		$this->set_items( $value );
1031
+	public function set_allowed_items($value) {
1032
+		$this->set_items($value);
1033 1033
 	}
1034 1034
 
1035 1035
 	/**
@@ -1038,8 +1038,8 @@  discard block
 block discarded – undo
1038 1038
 	 * @since 1.0.19
1039 1039
 	 * @param array $value items.
1040 1040
 	 */
1041
-	public function set_excluded_items( $value ) {
1042
-		$this->set_prop( 'excluded_items', wpinv_parse_list( $value ) );
1041
+	public function set_excluded_items($value) {
1042
+		$this->set_prop('excluded_items', wpinv_parse_list($value));
1043 1043
 	}
1044 1044
 
1045 1045
 	/**
@@ -1048,8 +1048,8 @@  discard block
 block discarded – undo
1048 1048
 	 * @since 1.0.19
1049 1049
 	 * @param int|bool $value is recurring.
1050 1050
 	 */
1051
-	public function set_is_recurring( $value ) {
1052
-		$this->set_prop( 'is_recurring', (bool) $value );
1051
+	public function set_is_recurring($value) {
1052
+		$this->set_prop('is_recurring', (bool) $value);
1053 1053
 	}
1054 1054
 
1055 1055
 	/**
@@ -1058,8 +1058,8 @@  discard block
 block discarded – undo
1058 1058
 	 * @since 1.0.19
1059 1059
 	 * @param float $value minimum total.
1060 1060
 	 */
1061
-	public function set_min_total( $value ) {
1062
-		$this->set_prop( 'min_total', (float) wpinv_sanitize_amount( $value ) );
1061
+	public function set_min_total($value) {
1062
+		$this->set_prop('min_total', (float) wpinv_sanitize_amount($value));
1063 1063
 	}
1064 1064
 
1065 1065
 	/**
@@ -1068,8 +1068,8 @@  discard block
 block discarded – undo
1068 1068
 	 * @since 1.0.19
1069 1069
 	 * @param float $value minimum total.
1070 1070
 	 */
1071
-	public function set_minimum_total( $value ) {
1072
-		$this->set_min_total( $value );
1071
+	public function set_minimum_total($value) {
1072
+		$this->set_min_total($value);
1073 1073
 	}
1074 1074
 
1075 1075
 	/**
@@ -1078,8 +1078,8 @@  discard block
 block discarded – undo
1078 1078
 	 * @since 1.0.19
1079 1079
 	 * @param float $value maximum total.
1080 1080
 	 */
1081
-	public function set_max_total( $value ) {
1082
-		$this->set_prop( 'max_total', (float) wpinv_sanitize_amount( $value ) );
1081
+	public function set_max_total($value) {
1082
+		$this->set_prop('max_total', (float) wpinv_sanitize_amount($value));
1083 1083
 	}
1084 1084
 
1085 1085
 	/**
@@ -1088,23 +1088,23 @@  discard block
 block discarded – undo
1088 1088
 	 * @since 1.0.19
1089 1089
 	 * @param float $value maximum total.
1090 1090
 	 */
1091
-	public function set_maximum_total( $value ) {
1092
-		$this->set_max_total( $value );
1091
+	public function set_maximum_total($value) {
1092
+		$this->set_max_total($value);
1093 1093
 	}
1094 1094
 
1095 1095
 	/**
1096 1096
 	 * @deprecated
1097 1097
 	 */
1098
-	public function refresh(){}
1098
+	public function refresh() {}
1099 1099
 
1100 1100
 	/**
1101 1101
 	 * @deprecated
1102 1102
 	 *
1103 1103
 	 */
1104
-	public function update_status( $status = 'publish' ){
1104
+	public function update_status($status = 'publish') {
1105 1105
 
1106
-		if ( $this->exists() && $this->get_status() != $status ) {
1107
-			$this->set_status( $status );
1106
+		if ($this->exists() && $this->get_status() != $status) {
1107
+			$this->set_status($status);
1108 1108
 			$this->save();
1109 1109
 		}
1110 1110
 
@@ -1124,9 +1124,9 @@  discard block
 block discarded – undo
1124 1124
 	 *
1125 1125
 	 * @since 1.0.15
1126 1126
 	 */
1127
-	public function exists(){
1127
+	public function exists() {
1128 1128
 		$id = $this->get_id();
1129
-		return ! empty( $id );
1129
+		return !empty($id);
1130 1130
 	}
1131 1131
 
1132 1132
 	/**
@@ -1137,7 +1137,7 @@  discard block
 block discarded – undo
1137 1137
 	 * @since 1.0.15
1138 1138
 	 * @return bool
1139 1139
 	 */
1140
-	public function is_type( $type ) {
1140
+	public function is_type($type) {
1141 1141
 		return $this->get_type() == $type;
1142 1142
 	}
1143 1143
 
@@ -1159,7 +1159,7 @@  discard block
 block discarded – undo
1159 1159
 	 */
1160 1160
 	public function has_limit() {
1161 1161
 		$limit = $this->get_max_uses();
1162
-		return ! empty( $limit );
1162
+		return !empty($limit);
1163 1163
 	}
1164 1164
 
1165 1165
 	/**
@@ -1180,13 +1180,13 @@  discard block
 block discarded – undo
1180 1180
 	 */
1181 1181
 	public function has_exceeded_limit() {
1182 1182
 
1183
-		if ( ! $this->has_limit() || ! $this->has_uses() ) {
1184
-			$exceeded = false ;
1183
+		if (!$this->has_limit() || !$this->has_uses()) {
1184
+			$exceeded = false;
1185 1185
 		} else {
1186 1186
 			$exceeded = (int) $this->get_max_uses() <= $this->get_uses();
1187 1187
 		}
1188 1188
 
1189
-		return apply_filters( 'wpinv_is_discount_maxed_out', $exceeded, $this->get_id(), $this, $this->get_code() );
1189
+		return apply_filters('wpinv_is_discount_maxed_out', $exceeded, $this->get_id(), $this, $this->get_code());
1190 1190
 	}
1191 1191
 
1192 1192
 	/**
@@ -1197,7 +1197,7 @@  discard block
 block discarded – undo
1197 1197
 	 */
1198 1198
 	public function has_expiration_date() {
1199 1199
 		$date = $this->get_expiration_date();
1200
-		return ! empty( $date );
1200
+		return !empty($date);
1201 1201
 	}
1202 1202
 
1203 1203
 	/**
@@ -1207,8 +1207,8 @@  discard block
 block discarded – undo
1207 1207
 	 * @return bool
1208 1208
 	 */
1209 1209
 	public function is_expired() {
1210
-		$expired = $this->has_expiration_date() ? current_time( 'timestamp' ) > strtotime( $this->get_expiration_date() ) : false;
1211
-		return apply_filters( 'wpinv_is_discount_expired', $expired, $this->get_id(), $this, $this->get_code() );
1210
+		$expired = $this->has_expiration_date() ? current_time('timestamp') > strtotime($this->get_expiration_date()) : false;
1211
+		return apply_filters('wpinv_is_discount_expired', $expired, $this->get_id(), $this, $this->get_code());
1212 1212
 	}
1213 1213
 
1214 1214
 	/**
@@ -1219,7 +1219,7 @@  discard block
 block discarded – undo
1219 1219
 	 */
1220 1220
 	public function has_start_date() {
1221 1221
 		$date = $this->get_start_date();
1222
-		return ! empty( $date );
1222
+		return !empty($date);
1223 1223
 	}
1224 1224
 
1225 1225
 	/**
@@ -1229,8 +1229,8 @@  discard block
 block discarded – undo
1229 1229
 	 * @return bool
1230 1230
 	 */
1231 1231
 	public function has_started() {
1232
-		$started = $this->has_start_date() ? true : current_time( 'timestamp' ) > strtotime( $this->get_start_date() );
1233
-		return apply_filters( 'wpinv_is_discount_started', $started, $this->get_id(), $this, $this->get_code() );
1232
+		$started = $this->has_start_date() ? true : current_time('timestamp') > strtotime($this->get_start_date());
1233
+		return apply_filters('wpinv_is_discount_started', $started, $this->get_id(), $this, $this->get_code());
1234 1234
 	}
1235 1235
 
1236 1236
 	/**
@@ -1241,7 +1241,7 @@  discard block
 block discarded – undo
1241 1241
 	 */
1242 1242
 	public function has_allowed_items() {
1243 1243
 		$allowed_items = $this->get_allowed_items();
1244
-		return ! empty( $allowed_items );
1244
+		return !empty($allowed_items);
1245 1245
 	}
1246 1246
 
1247 1247
 	/**
@@ -1252,7 +1252,7 @@  discard block
 block discarded – undo
1252 1252
 	 */
1253 1253
 	public function has_excluded_items() {
1254 1254
 		$excluded_items = $this->get_excluded_items();
1255
-		return ! empty( $excluded_items );
1255
+		return !empty($excluded_items);
1256 1256
 	}
1257 1257
 
1258 1258
 	/**
@@ -1262,17 +1262,17 @@  discard block
 block discarded – undo
1262 1262
 	 * @since 1.0.15
1263 1263
 	 * @return boolean
1264 1264
 	 */
1265
-	public function is_valid_for_items( $item_ids ) {
1265
+	public function is_valid_for_items($item_ids) {
1266 1266
 
1267
-		$item_ids = wp_parse_id_list( $item_ids );
1268
-		$included = array_intersect( $item_ids, $this->get_allowed_items() );
1269
-		$excluded = array_intersect( $item_ids, $this->get_excluded_items() );
1267
+		$item_ids = wp_parse_id_list($item_ids);
1268
+		$included = array_intersect($item_ids, $this->get_allowed_items());
1269
+		$excluded = array_intersect($item_ids, $this->get_excluded_items());
1270 1270
 
1271
-		if ( $this->has_excluded_items() && ! empty( $excluded ) ) {
1271
+		if ($this->has_excluded_items() && !empty($excluded)) {
1272 1272
 			return false;
1273 1273
 		}
1274 1274
 
1275
-		if ( $this->has_allowed_items() && empty( $included ) ) {
1275
+		if ($this->has_allowed_items() && empty($included)) {
1276 1276
 			return false;
1277 1277
 		}
1278 1278
 
@@ -1286,8 +1286,8 @@  discard block
 block discarded – undo
1286 1286
 	 * @since 1.0.15
1287 1287
 	 * @return boolean
1288 1288
 	 */
1289
-	public function is_valid_for_amount( $amount ) {
1290
-		return $this->is_minimum_amount_met( $amount ) && $this->is_maximum_amount_met( $amount );
1289
+	public function is_valid_for_amount($amount) {
1290
+		return $this->is_minimum_amount_met($amount) && $this->is_maximum_amount_met($amount);
1291 1291
 	}
1292 1292
 
1293 1293
 	/**
@@ -1298,7 +1298,7 @@  discard block
 block discarded – undo
1298 1298
 	 */
1299 1299
 	public function has_minimum_amount() {
1300 1300
 		$minimum = $this->get_minimum_total();
1301
-		return ! empty( $minimum );
1301
+		return !empty($minimum);
1302 1302
 	}
1303 1303
 
1304 1304
 	/**
@@ -1308,10 +1308,10 @@  discard block
 block discarded – undo
1308 1308
 	 * @since 1.0.15
1309 1309
 	 * @return boolean
1310 1310
 	 */
1311
-	public function is_minimum_amount_met( $amount ) {
1312
-		$amount = floatval( wpinv_sanitize_amount( $amount ) );
1313
-		$min_met= ! ( $this->has_minimum_amount() && $amount < floatval( wpinv_sanitize_amount( $this->get_minimum_total() ) ) );
1314
-		return apply_filters( 'wpinv_is_discount_min_met', $min_met, $this->get_id(), $this, $this->get_code(), $amount );
1311
+	public function is_minimum_amount_met($amount) {
1312
+		$amount = floatval(wpinv_sanitize_amount($amount));
1313
+		$min_met = !($this->has_minimum_amount() && $amount < floatval(wpinv_sanitize_amount($this->get_minimum_total())));
1314
+		return apply_filters('wpinv_is_discount_min_met', $min_met, $this->get_id(), $this, $this->get_code(), $amount);
1315 1315
 	}
1316 1316
 
1317 1317
 	/**
@@ -1322,7 +1322,7 @@  discard block
 block discarded – undo
1322 1322
 	 */
1323 1323
 	public function has_maximum_amount() {
1324 1324
 		$maximum = $this->get_maximum_total();
1325
-		return ! empty( $maximum );
1325
+		return !empty($maximum);
1326 1326
 	}
1327 1327
 
1328 1328
 	/**
@@ -1332,10 +1332,10 @@  discard block
 block discarded – undo
1332 1332
 	 * @since 1.0.15
1333 1333
 	 * @return boolean
1334 1334
 	 */
1335
-	public function is_maximum_amount_met( $amount ) {
1336
-		$amount = floatval( wpinv_sanitize_amount( $amount ) );
1337
-		$max_met= ! ( $this->has_maximum_amount() && $amount > floatval( wpinv_sanitize_amount( $this->get_maximum_total() ) ) );
1338
-		return apply_filters( 'wpinv_is_discount_max_met', $max_met, $this->get_id(), $this, $this->get_code(), $amount );
1335
+	public function is_maximum_amount_met($amount) {
1336
+		$amount = floatval(wpinv_sanitize_amount($amount));
1337
+		$max_met = !($this->has_maximum_amount() && $amount > floatval(wpinv_sanitize_amount($this->get_maximum_total())));
1338
+		return apply_filters('wpinv_is_discount_max_met', $max_met, $this->get_id(), $this, $this->get_code(), $amount);
1339 1339
 	}
1340 1340
 
1341 1341
 	/**
@@ -1346,7 +1346,7 @@  discard block
 block discarded – undo
1346 1346
 	 */
1347 1347
 	public function is_recurring() {
1348 1348
 		$recurring = $this->get_is_recurring();
1349
-		return ! empty( $recurring );
1349
+		return !empty($recurring);
1350 1350
 	}
1351 1351
 
1352 1352
 	/**
@@ -1357,7 +1357,7 @@  discard block
 block discarded – undo
1357 1357
 	 */
1358 1358
 	public function is_single_use() {
1359 1359
 		$usage = $this->get_is_single_use();
1360
-		return ! empty( $usage );
1360
+		return !empty($usage);
1361 1361
 	}
1362 1362
 
1363 1363
 	/**
@@ -1367,37 +1367,37 @@  discard block
 block discarded – undo
1367 1367
 	 * @since 1.0.15
1368 1368
 	 * @return boolean
1369 1369
 	 */
1370
-	public function is_valid_for_user( $user ) {
1370
+	public function is_valid_for_user($user) {
1371 1371
 
1372 1372
 		// Ensure that the discount is single use.
1373
-		if ( empty( $user ) || ! $this->is_single_use() ) {
1373
+		if (empty($user) || !$this->is_single_use()) {
1374 1374
 			return true;
1375 1375
 		}
1376 1376
 
1377 1377
 		// Prepare the user id.
1378 1378
 		$user_id = 0;
1379
-        if ( is_numeric( $user ) ) {
1380
-            $user_id = absint( $user );
1381
-        } else if ( is_email( $user ) && $user_data = get_user_by( 'email', $user ) ) {
1379
+        if (is_numeric($user)) {
1380
+            $user_id = absint($user);
1381
+        } else if (is_email($user) && $user_data = get_user_by('email', $user)) {
1382 1382
             $user_id = $user_data->ID;
1383
-        } else if ( $user_data = get_user_by( 'login', $user ) ) {
1383
+        } else if ($user_data = get_user_by('login', $user)) {
1384 1384
             $user_id = $user_data->ID;
1385 1385
         }
1386 1386
 
1387 1387
 		// Ensure that we have a user.
1388
-		if ( empty( $user_id ) ) {
1388
+		if (empty($user_id)) {
1389 1389
 			return true;
1390 1390
 		}
1391 1391
 
1392 1392
 		// Get all payments with matching user id.
1393
-        $payments = wpinv_get_invoices( array( 'user' => $user_id, 'limit' => false, 'paginate' => false ) );
1394
-		$code     = strtolower( $this->get_code() );
1393
+        $payments = wpinv_get_invoices(array('user' => $user_id, 'limit' => false, 'paginate' => false));
1394
+		$code = strtolower($this->get_code());
1395 1395
 
1396 1396
 		// For each payment...
1397
-		foreach ( $payments as $payment ) {
1397
+		foreach ($payments as $payment) {
1398 1398
 
1399 1399
 			// Only check for paid invoices.
1400
-			if ( $payment->is_paid() && strtolower( $payment->get_discount_code() ) == $code ) {
1400
+			if ($payment->is_paid() && strtolower($payment->get_discount_code()) == $code) {
1401 1401
 				return false;
1402 1402
 			}
1403 1403
 
@@ -1423,24 +1423,24 @@  discard block
 block discarded – undo
1423 1423
 	 * @param int $by The number of usages to increas by.
1424 1424
 	 * @return int
1425 1425
 	 */
1426
-	public function increase_usage( $by = 1 ) {
1426
+	public function increase_usage($by = 1) {
1427 1427
 
1428 1428
 		// Abort if zero.
1429
-		if ( empty( $by ) ) {
1429
+		if (empty($by)) {
1430 1430
 			return;
1431 1431
 		}
1432 1432
 
1433 1433
 		// Increase the usage.
1434
-		$this->set_uses( $this->get_uses() + (int) $by );
1434
+		$this->set_uses($this->get_uses() + (int) $by);
1435 1435
 
1436 1436
 		// Save the discount.
1437 1437
 		$this->save();
1438 1438
 
1439 1439
 		// Fire relevant hooks.
1440
-		if( (int) $by > 0 ) {
1441
-			do_action( 'wpinv_discount_increase_use_count', $this->get_uses(), $this->get_id(), $this->get_code(),  absint( $by ) );
1440
+		if ((int) $by > 0) {
1441
+			do_action('wpinv_discount_increase_use_count', $this->get_uses(), $this->get_id(), $this->get_code(), absint($by));
1442 1442
 		} else {
1443
-			do_action( 'wpinv_discount_decrease_use_count', $this->get_uses(), $this->get_id(), $this->get_code(), absint( $by ) );
1443
+			do_action('wpinv_discount_decrease_use_count', $this->get_uses(), $this->get_id(), $this->get_code(), absint($by));
1444 1444
 		}
1445 1445
 
1446 1446
 		// Return the number of times the discount has been used.
@@ -1464,7 +1464,7 @@  discard block
 block discarded – undo
1464 1464
 	 * @param float $amount
1465 1465
 	 * @return float
1466 1466
 	 */
1467
-	public function get_discounted_amount( $amount ) {
1467
+	public function get_discounted_amount($amount) {
1468 1468
 
1469 1469
 		// Convert amount to float.
1470 1470
 		$amount = (float) $amount;
@@ -1472,29 +1472,29 @@  discard block
 block discarded – undo
1472 1472
 		// Get discount amount.
1473 1473
 		$discount_amount = $this->get_amount();
1474 1474
 
1475
-		if ( empty( $discount_amount ) ) {
1475
+		if (empty($discount_amount)) {
1476 1476
 			return 0;
1477 1477
 		}
1478 1478
 
1479 1479
 		// Format the amount.
1480
-		$discount_amount = floatval( wpinv_sanitize_amount( $discount_amount ) );
1480
+		$discount_amount = floatval(wpinv_sanitize_amount($discount_amount));
1481 1481
 		
1482 1482
 		// If this is a percentage discount.
1483
-		if ( $this->is_type( 'percent' ) ) {
1484
-            $discount_amount = $amount * ( $discount_amount / 100 );
1483
+		if ($this->is_type('percent')) {
1484
+            $discount_amount = $amount * ($discount_amount / 100);
1485 1485
 		}
1486 1486
 
1487 1487
 		// Discount can not be less than zero...
1488
-		if ( $discount_amount < 0 ) {
1488
+		if ($discount_amount < 0) {
1489 1489
 			$discount_amount = 0;
1490 1490
 		}
1491 1491
 
1492 1492
 		// ... or more than the amount.
1493
-		if ( $discount_amount > $amount ) {
1493
+		if ($discount_amount > $amount) {
1494 1494
 			$discount_amount = $amount;
1495 1495
 		}
1496 1496
 
1497
-		return apply_filters( 'wpinv_discount_total_discount_amount', $discount_amount, $amount, $this );
1497
+		return apply_filters('wpinv_discount_total_discount_amount', $discount_amount, $amount, $this);
1498 1498
 	}
1499 1499
 
1500 1500
 }
Please login to merge, or discard this patch.
vendor/ayecode/ayecode-connect-helper/ayecode-connect-helper.php 2 patches
Indentation   +310 added lines, -310 removed lines patch added patch discarded remove patch
@@ -1,271 +1,271 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 
3 3
 if ( ! defined( 'ABSPATH' ) ) {
4
-	exit;
4
+    exit;
5 5
 }
6 6
 
7 7
 if ( ! class_exists( "AyeCode_Connect_Helper" ) ) {
8
-	/**
9
-	 * Allow the quick setup and connection of our AyeCode Connect plugin.
10
-	 *
11
-	 * Class AyeCode_Connect_Helper
12
-	 */
13
-	class AyeCode_Connect_Helper {
14
-
15
-		// Hold the version number
16
-		var $version = "1.0.3";
17
-
18
-		// Hold the default strings.
19
-		var $strings = array();
20
-
21
-		// Hold the default pages.
22
-		var $pages = array();
23
-
24
-		/**
25
-		 * The constructor.
26
-		 *
27
-		 * AyeCode_Connect_Helper constructor.
28
-		 *
29
-		 * @param array $strings
30
-		 * @param array $pages
31
-		 */
32
-		public function __construct( $strings = array(), $pages = array() ) {
33
-
34
-			// Only fire if not localhost and the current user has the right permissions.
35
-			if ( ! $this->is_localhost() && current_user_can( 'manage_options' ) ) {
36
-
37
-
38
-				// set default strings
39
-				$default_strings = array(
40
-					'connect_title'     => __( "Thanks for choosing an AyeCode Product!" ),
41
-					'connect_external'  => __( "Please confirm you wish to connect your site?" ),
42
-					'connect'           => sprintf( __( "<strong>Have a license?</strong> Forget about entering license keys or downloading zip files, connect your site for instant access. %slearn more%s" ), "<a href='https://ayecode.io/introducing-ayecode-connect/' target='_blank'>", "</a>" ),
43
-					'connect_button'    => __( "Connect Site" ),
44
-					'connecting_button' => __( "Connecting..." ),
45
-					'error_localhost'   => __( "This service will only work with a live domain, not a localhost." ),
46
-					'error'             => __( "Something went wrong, please refresh and try again." ),
47
-				);
48
-				$this->strings   = array_merge( $default_strings, $strings );
49
-
50
-
51
-				// set default pages
52
-				$default_pages = array();
53
-				$this->pages   = array_merge( $default_pages, $pages );
54
-
55
-				// maybe show connect site notice
56
-				add_action( 'admin_notices', array( $this, 'ayecode_connect_install_notice' ) );
57
-
58
-				// add ajax action if not already added
59
-				if ( ! has_action( 'wp_ajax_ayecode_connect_helper' ) ) {
60
-					add_action( 'wp_ajax_ayecode_connect_helper', array( $this, 'ayecode_connect_install' ) );
61
-				}
62
-			}
63
-
64
-			// add ajax action if not already added
65
-			if ( ! has_action( 'wp_ajax_nopriv_ayecode_connect_helper_installed' ) ) {
66
-				add_action( 'wp_ajax_nopriv_ayecode_connect_helper_installed', array( $this, 'ayecode_connect_helper_installed' ) );
67
-			}
68
-
69
-		}
70
-
71
-		/**
72
-		 * Give a way to check we can connect via a external redirect.
73
-		 */
74
-		public function ayecode_connect_helper_installed(){
75
-			$active = array(
76
-				'gd'    =>  defined('GEODIRECTORY_VERSION') && version_compare(GEODIRECTORY_VERSION,'2.0.0.79','>') ? 1 : 0,
77
-				'uwp'    =>  defined('USERSWP_VERSION') && version_compare(USERSWP_VERSION,'1.2.1.5','>') ? 1 : 0,
78
-				'wpi'    =>  defined('WPINV_VERSION') && version_compare(WPINV_VERSION,'1.0.14','>') ? 1 : 0,
79
-			);
80
-			wp_send_json_success( $active );
81
-			wp_die();
82
-		}
83
-
84
-		/**
85
-		 * Get slug from path
86
-		 *
87
-		 * @param  string $key
88
-		 *
89
-		 * @return string
90
-		 */
91
-		private function format_plugin_slug( $key ) {
92
-			$slug = explode( '/', $key );
93
-			$slug = explode( '.', end( $slug ) );
94
-
95
-			return $slug[0];
96
-		}
97
-
98
-		/**
99
-		 * Install and activate the AyeCode Connect Plugin
100
-		 */
101
-		public function ayecode_connect_install() {
102
-
103
-			// bail if localhost
104
-			if ( $this->is_localhost() ) {
105
-				wp_send_json_error( $this->strings['error_localhost'] );
106
-			}
107
-
108
-			// Explicitly clear the event.
109
-			wp_clear_scheduled_hook( 'geodir_plugin_background_installer', func_get_args() );
110
-
111
-			$success     = true;
112
-			$plugin_slug = "ayecode-connect";
113
-			if ( ! empty( $plugin_slug ) ) {
114
-				require_once( ABSPATH . 'wp-admin/includes/file.php' );
115
-				require_once( ABSPATH . 'wp-admin/includes/plugin-install.php' );
116
-				require_once( ABSPATH . 'wp-admin/includes/class-wp-upgrader.php' );
117
-				require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
118
-
119
-				WP_Filesystem();
120
-
121
-				$skin              = new Automatic_Upgrader_Skin;
122
-				$upgrader          = new WP_Upgrader( $skin );
123
-				$installed_plugins = array_map( array( $this, 'format_plugin_slug' ), array_keys( get_plugins() ) );
124
-				$plugin_slug       = $plugin_slug;
125
-				$plugin            = $plugin_slug . '/' . $plugin_slug . '.php';
126
-				$installed         = false;
127
-				$activate          = false;
128
-
129
-				// See if the plugin is installed already
130
-				if ( in_array( $plugin_slug, $installed_plugins ) ) {
131
-					$installed = true;
132
-					$activate  = ! is_plugin_active( $plugin );
133
-				}
134
-
135
-				// Install this thing!
136
-				if ( ! $installed ) {
137
-
138
-					// Suppress feedback
139
-					ob_start();
140
-
141
-					try {
142
-						$plugin_information = plugins_api( 'plugin_information', array(
143
-							'slug'   => $plugin_slug,
144
-							'fields' => array(
145
-								'short_description' => false,
146
-								'sections'          => false,
147
-								'requires'          => false,
148
-								'rating'            => false,
149
-								'ratings'           => false,
150
-								'downloaded'        => false,
151
-								'last_updated'      => false,
152
-								'added'             => false,
153
-								'tags'              => false,
154
-								'homepage'          => false,
155
-								'donate_link'       => false,
156
-								'author_profile'    => false,
157
-								'author'            => false,
158
-							),
159
-						) );
160
-
161
-						if ( is_wp_error( $plugin_information ) ) {
162
-							throw new Exception( $plugin_information->get_error_message() );
163
-						}
164
-
165
-						$package  = $plugin_information->download_link;
166
-						$download = $upgrader->download_package( $package );
167
-
168
-						if ( is_wp_error( $download ) ) {
169
-							throw new Exception( $download->get_error_message() );
170
-						}
171
-
172
-						$working_dir = $upgrader->unpack_package( $download, true );
173
-
174
-						if ( is_wp_error( $working_dir ) ) {
175
-							throw new Exception( $working_dir->get_error_message() );
176
-						}
177
-
178
-						$result = $upgrader->install_package( array(
179
-							'source'                      => $working_dir,
180
-							'destination'                 => WP_PLUGIN_DIR,
181
-							'clear_destination'           => false,
182
-							'abort_if_destination_exists' => false,
183
-							'clear_working'               => true,
184
-							'hook_extra'                  => array(
185
-								'type'   => 'plugin',
186
-								'action' => 'install',
187
-							),
188
-						) );
189
-
190
-						if ( is_wp_error( $result ) ) {
191
-							throw new Exception( $result->get_error_message() );
192
-						}
193
-
194
-						$activate = true;
195
-
196
-					} catch ( Exception $e ) {
197
-						$success = false;
198
-					}
199
-
200
-					// Discard feedback
201
-					ob_end_clean();
202
-				}
203
-
204
-				wp_clean_plugins_cache();
205
-
206
-				// Activate this thing
207
-				if ( $activate ) {
208
-					try {
209
-						$result = activate_plugin( $plugin );
210
-
211
-						if ( is_wp_error( $result ) ) {
212
-							$success = false;
213
-						} else {
214
-							$success = true;
215
-						}
216
-					} catch ( Exception $e ) {
217
-						$success = false;
218
-					}
219
-				}
220
-			}
221
-
222
-			if ( $success && function_exists( 'ayecode_connect_args' ) ) {
223
-				ayecode_connect();// init
224
-				$args        = ayecode_connect_args();
225
-				$client      = new AyeCode_Connect( $args );
226
-				$redirect_to = ! empty( $_POST['redirect_to'] ) ? esc_url_raw( $_POST['redirect_to'] ) : '';
227
-				$redirect    = $client->build_connect_url( $redirect_to );
228
-				wp_send_json_success( array( 'connect_url' => $redirect ) );
229
-			} else {
230
-				wp_send_json_error( $this->strings['error_localhost'] );
231
-			}
232
-			wp_die();
233
-		}
234
-
235
-		/**
236
-		 * Check if maybe localhost.
237
-		 *
238
-		 * @return bool
239
-		 */
240
-		public function is_localhost() {
241
-			$localhost = false;
242
-
243
-			$host              = isset( $_SERVER['HTTP_HOST'] ) ? $_SERVER['HTTP_HOST'] : '';
244
-			$localhost_domains = array(
245
-				'localhost',
246
-				'localhost.localdomain',
247
-				'127.0.0.1',
248
-				'::1'
249
-			);
250
-
251
-			if ( in_array( $host, $localhost_domains ) ) {
252
-				$localhost = true;
253
-			}
254
-
255
-			return $localhost;
256
-		}
257
-
258
-		/**
259
-		 * Show notice to connect site.
260
-		 */
261
-		public function ayecode_connect_install_notice() {
262
-			if ( $this->maybe_show() ) {
263
-				$connect_title_string     = $this->strings['connect_title'];
264
-				$connect_external_string  = $this->strings['connect_external'];
265
-				$connect_string           = $this->strings['connect'];
266
-				$connect_button_string    = $this->strings['connect_button'];
267
-				$connecting_button_string = $this->strings['connecting_button'];
268
-				?>
8
+    /**
9
+     * Allow the quick setup and connection of our AyeCode Connect plugin.
10
+     *
11
+     * Class AyeCode_Connect_Helper
12
+     */
13
+    class AyeCode_Connect_Helper {
14
+
15
+        // Hold the version number
16
+        var $version = "1.0.3";
17
+
18
+        // Hold the default strings.
19
+        var $strings = array();
20
+
21
+        // Hold the default pages.
22
+        var $pages = array();
23
+
24
+        /**
25
+         * The constructor.
26
+         *
27
+         * AyeCode_Connect_Helper constructor.
28
+         *
29
+         * @param array $strings
30
+         * @param array $pages
31
+         */
32
+        public function __construct( $strings = array(), $pages = array() ) {
33
+
34
+            // Only fire if not localhost and the current user has the right permissions.
35
+            if ( ! $this->is_localhost() && current_user_can( 'manage_options' ) ) {
36
+
37
+
38
+                // set default strings
39
+                $default_strings = array(
40
+                    'connect_title'     => __( "Thanks for choosing an AyeCode Product!" ),
41
+                    'connect_external'  => __( "Please confirm you wish to connect your site?" ),
42
+                    'connect'           => sprintf( __( "<strong>Have a license?</strong> Forget about entering license keys or downloading zip files, connect your site for instant access. %slearn more%s" ), "<a href='https://ayecode.io/introducing-ayecode-connect/' target='_blank'>", "</a>" ),
43
+                    'connect_button'    => __( "Connect Site" ),
44
+                    'connecting_button' => __( "Connecting..." ),
45
+                    'error_localhost'   => __( "This service will only work with a live domain, not a localhost." ),
46
+                    'error'             => __( "Something went wrong, please refresh and try again." ),
47
+                );
48
+                $this->strings   = array_merge( $default_strings, $strings );
49
+
50
+
51
+                // set default pages
52
+                $default_pages = array();
53
+                $this->pages   = array_merge( $default_pages, $pages );
54
+
55
+                // maybe show connect site notice
56
+                add_action( 'admin_notices', array( $this, 'ayecode_connect_install_notice' ) );
57
+
58
+                // add ajax action if not already added
59
+                if ( ! has_action( 'wp_ajax_ayecode_connect_helper' ) ) {
60
+                    add_action( 'wp_ajax_ayecode_connect_helper', array( $this, 'ayecode_connect_install' ) );
61
+                }
62
+            }
63
+
64
+            // add ajax action if not already added
65
+            if ( ! has_action( 'wp_ajax_nopriv_ayecode_connect_helper_installed' ) ) {
66
+                add_action( 'wp_ajax_nopriv_ayecode_connect_helper_installed', array( $this, 'ayecode_connect_helper_installed' ) );
67
+            }
68
+
69
+        }
70
+
71
+        /**
72
+         * Give a way to check we can connect via a external redirect.
73
+         */
74
+        public function ayecode_connect_helper_installed(){
75
+            $active = array(
76
+                'gd'    =>  defined('GEODIRECTORY_VERSION') && version_compare(GEODIRECTORY_VERSION,'2.0.0.79','>') ? 1 : 0,
77
+                'uwp'    =>  defined('USERSWP_VERSION') && version_compare(USERSWP_VERSION,'1.2.1.5','>') ? 1 : 0,
78
+                'wpi'    =>  defined('WPINV_VERSION') && version_compare(WPINV_VERSION,'1.0.14','>') ? 1 : 0,
79
+            );
80
+            wp_send_json_success( $active );
81
+            wp_die();
82
+        }
83
+
84
+        /**
85
+         * Get slug from path
86
+         *
87
+         * @param  string $key
88
+         *
89
+         * @return string
90
+         */
91
+        private function format_plugin_slug( $key ) {
92
+            $slug = explode( '/', $key );
93
+            $slug = explode( '.', end( $slug ) );
94
+
95
+            return $slug[0];
96
+        }
97
+
98
+        /**
99
+         * Install and activate the AyeCode Connect Plugin
100
+         */
101
+        public function ayecode_connect_install() {
102
+
103
+            // bail if localhost
104
+            if ( $this->is_localhost() ) {
105
+                wp_send_json_error( $this->strings['error_localhost'] );
106
+            }
107
+
108
+            // Explicitly clear the event.
109
+            wp_clear_scheduled_hook( 'geodir_plugin_background_installer', func_get_args() );
110
+
111
+            $success     = true;
112
+            $plugin_slug = "ayecode-connect";
113
+            if ( ! empty( $plugin_slug ) ) {
114
+                require_once( ABSPATH . 'wp-admin/includes/file.php' );
115
+                require_once( ABSPATH . 'wp-admin/includes/plugin-install.php' );
116
+                require_once( ABSPATH . 'wp-admin/includes/class-wp-upgrader.php' );
117
+                require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
118
+
119
+                WP_Filesystem();
120
+
121
+                $skin              = new Automatic_Upgrader_Skin;
122
+                $upgrader          = new WP_Upgrader( $skin );
123
+                $installed_plugins = array_map( array( $this, 'format_plugin_slug' ), array_keys( get_plugins() ) );
124
+                $plugin_slug       = $plugin_slug;
125
+                $plugin            = $plugin_slug . '/' . $plugin_slug . '.php';
126
+                $installed         = false;
127
+                $activate          = false;
128
+
129
+                // See if the plugin is installed already
130
+                if ( in_array( $plugin_slug, $installed_plugins ) ) {
131
+                    $installed = true;
132
+                    $activate  = ! is_plugin_active( $plugin );
133
+                }
134
+
135
+                // Install this thing!
136
+                if ( ! $installed ) {
137
+
138
+                    // Suppress feedback
139
+                    ob_start();
140
+
141
+                    try {
142
+                        $plugin_information = plugins_api( 'plugin_information', array(
143
+                            'slug'   => $plugin_slug,
144
+                            'fields' => array(
145
+                                'short_description' => false,
146
+                                'sections'          => false,
147
+                                'requires'          => false,
148
+                                'rating'            => false,
149
+                                'ratings'           => false,
150
+                                'downloaded'        => false,
151
+                                'last_updated'      => false,
152
+                                'added'             => false,
153
+                                'tags'              => false,
154
+                                'homepage'          => false,
155
+                                'donate_link'       => false,
156
+                                'author_profile'    => false,
157
+                                'author'            => false,
158
+                            ),
159
+                        ) );
160
+
161
+                        if ( is_wp_error( $plugin_information ) ) {
162
+                            throw new Exception( $plugin_information->get_error_message() );
163
+                        }
164
+
165
+                        $package  = $plugin_information->download_link;
166
+                        $download = $upgrader->download_package( $package );
167
+
168
+                        if ( is_wp_error( $download ) ) {
169
+                            throw new Exception( $download->get_error_message() );
170
+                        }
171
+
172
+                        $working_dir = $upgrader->unpack_package( $download, true );
173
+
174
+                        if ( is_wp_error( $working_dir ) ) {
175
+                            throw new Exception( $working_dir->get_error_message() );
176
+                        }
177
+
178
+                        $result = $upgrader->install_package( array(
179
+                            'source'                      => $working_dir,
180
+                            'destination'                 => WP_PLUGIN_DIR,
181
+                            'clear_destination'           => false,
182
+                            'abort_if_destination_exists' => false,
183
+                            'clear_working'               => true,
184
+                            'hook_extra'                  => array(
185
+                                'type'   => 'plugin',
186
+                                'action' => 'install',
187
+                            ),
188
+                        ) );
189
+
190
+                        if ( is_wp_error( $result ) ) {
191
+                            throw new Exception( $result->get_error_message() );
192
+                        }
193
+
194
+                        $activate = true;
195
+
196
+                    } catch ( Exception $e ) {
197
+                        $success = false;
198
+                    }
199
+
200
+                    // Discard feedback
201
+                    ob_end_clean();
202
+                }
203
+
204
+                wp_clean_plugins_cache();
205
+
206
+                // Activate this thing
207
+                if ( $activate ) {
208
+                    try {
209
+                        $result = activate_plugin( $plugin );
210
+
211
+                        if ( is_wp_error( $result ) ) {
212
+                            $success = false;
213
+                        } else {
214
+                            $success = true;
215
+                        }
216
+                    } catch ( Exception $e ) {
217
+                        $success = false;
218
+                    }
219
+                }
220
+            }
221
+
222
+            if ( $success && function_exists( 'ayecode_connect_args' ) ) {
223
+                ayecode_connect();// init
224
+                $args        = ayecode_connect_args();
225
+                $client      = new AyeCode_Connect( $args );
226
+                $redirect_to = ! empty( $_POST['redirect_to'] ) ? esc_url_raw( $_POST['redirect_to'] ) : '';
227
+                $redirect    = $client->build_connect_url( $redirect_to );
228
+                wp_send_json_success( array( 'connect_url' => $redirect ) );
229
+            } else {
230
+                wp_send_json_error( $this->strings['error_localhost'] );
231
+            }
232
+            wp_die();
233
+        }
234
+
235
+        /**
236
+         * Check if maybe localhost.
237
+         *
238
+         * @return bool
239
+         */
240
+        public function is_localhost() {
241
+            $localhost = false;
242
+
243
+            $host              = isset( $_SERVER['HTTP_HOST'] ) ? $_SERVER['HTTP_HOST'] : '';
244
+            $localhost_domains = array(
245
+                'localhost',
246
+                'localhost.localdomain',
247
+                '127.0.0.1',
248
+                '::1'
249
+            );
250
+
251
+            if ( in_array( $host, $localhost_domains ) ) {
252
+                $localhost = true;
253
+            }
254
+
255
+            return $localhost;
256
+        }
257
+
258
+        /**
259
+         * Show notice to connect site.
260
+         */
261
+        public function ayecode_connect_install_notice() {
262
+            if ( $this->maybe_show() ) {
263
+                $connect_title_string     = $this->strings['connect_title'];
264
+                $connect_external_string  = $this->strings['connect_external'];
265
+                $connect_string           = $this->strings['connect'];
266
+                $connect_button_string    = $this->strings['connect_button'];
267
+                $connecting_button_string = $this->strings['connecting_button'];
268
+                ?>
269 269
 				<div class="notice notice-info acch-notice">
270 270
 					<span class="acch-float-left">
271 271
 						<svg width="61px" height="61px" viewBox="0 0 61 61" version="1.1"
@@ -304,8 +304,8 @@  discard block
 block discarded – undo
304 304
 						<h3 class="acch-title"><?php echo esc_attr( $connect_title_string ); ?></h3>
305 305
 					<p>
306 306
 						<?php
307
-						echo $connect_string;
308
-						?>
307
+                        echo $connect_string;
308
+                        ?>
309 309
 					</p>
310 310
 					</span>
311 311
 
@@ -318,9 +318,9 @@  discard block
 block discarded – undo
318 318
 				</div>
319 319
 
320 320
 				<?php
321
-				// only include the popup HTML if needed.
322
-				if ( ! empty( $_REQUEST['external-connect-request'] ) ) {
323
-					?>
321
+                // only include the popup HTML if needed.
322
+                if ( ! empty( $_REQUEST['external-connect-request'] ) ) {
323
+                    ?>
324 324
 					<div id="ayecode-connect-helper-external-confirm" style="display:none;">
325 325
 						<div class="noticex notice-info acch-notice" style="border: none;">
326 326
 					<span class="acch-float-left">
@@ -369,23 +369,23 @@  discard block
 block discarded – undo
369 369
 						</div>
370 370
 					</div>
371 371
 					<?php
372
-				}
373
-
374
-				// add required scripts
375
-				$this->script();
376
-			}
377
-		}
378
-
379
-		/**
380
-		 * Get the JS Script.
381
-		 */
382
-		public function script() {
383
-
384
-			// add thickbox if external request is requested
385
-			if ( ! empty( $_REQUEST['external-connect-request'] ) ) {
386
-				add_thickbox();
387
-			}
388
-			?>
372
+                }
373
+
374
+                // add required scripts
375
+                $this->script();
376
+            }
377
+        }
378
+
379
+        /**
380
+         * Get the JS Script.
381
+         */
382
+        public function script() {
383
+
384
+            // add thickbox if external request is requested
385
+            if ( ! empty( $_REQUEST['external-connect-request'] ) ) {
386
+                add_thickbox();
387
+            }
388
+            ?>
389 389
 			<style>
390 390
 				.acch-title {
391 391
 					margin: 0;
@@ -454,43 +454,43 @@  discard block
 block discarded – undo
454 454
 
455 455
 
456 456
 				<?php
457
-				// add thickbox if external request is requested
458
-				if(! empty( $_REQUEST['external-connect-request'] )) {
459
-				?>
457
+                // add thickbox if external request is requested
458
+                if(! empty( $_REQUEST['external-connect-request'] )) {
459
+                ?>
460 460
 				jQuery(function () {
461 461
 					setTimeout(function () {
462 462
 						tb_show("AyeCode Connect", "?TB_inline?width=300&height=80&inlineId=ayecode-connect-helper-external-confirm");
463 463
 					}, 200);
464 464
 				});
465 465
 				<?php
466
-				}
467
-				?>
466
+                }
467
+                ?>
468 468
 
469 469
 			</script>
470 470
 			<?php
471
-		}
472
-
473
-		/**
474
-		 * Decide what pages to show on.
475
-		 *
476
-		 * @return bool
477
-		 */
478
-		public function maybe_show() {
479
-			$show = false;
480
-
481
-			// check if on a page set to show
482
-			if ( isset( $_REQUEST['page'] ) && in_array( $_REQUEST['page'], $this->pages ) ) {
483
-
484
-				// check if not active and connected
485
-				if ( ! defined( 'AYECODE_CONNECT_VERSION' ) || ! get_option( 'ayecode_connect_blog_token' ) ) {
486
-					$show = true;
487
-				}
471
+        }
472
+
473
+        /**
474
+         * Decide what pages to show on.
475
+         *
476
+         * @return bool
477
+         */
478
+        public function maybe_show() {
479
+            $show = false;
480
+
481
+            // check if on a page set to show
482
+            if ( isset( $_REQUEST['page'] ) && in_array( $_REQUEST['page'], $this->pages ) ) {
483
+
484
+                // check if not active and connected
485
+                if ( ! defined( 'AYECODE_CONNECT_VERSION' ) || ! get_option( 'ayecode_connect_blog_token' ) ) {
486
+                    $show = true;
487
+                }
488 488
 
489
-			}
489
+            }
490 490
 
491
-			return $show;
492
-		}
491
+            return $show;
492
+        }
493 493
 
494
-	}
494
+    }
495 495
 
496 496
 }
Please login to merge, or discard this patch.
Spacing   +78 added lines, -78 removed lines patch added patch discarded remove patch
@@ -1,10 +1,10 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 
3
-if ( ! defined( 'ABSPATH' ) ) {
3
+if (!defined('ABSPATH')) {
4 4
 	exit;
5 5
 }
6 6
 
7
-if ( ! class_exists( "AyeCode_Connect_Helper" ) ) {
7
+if (!class_exists("AyeCode_Connect_Helper")) {
8 8
 	/**
9 9
 	 * Allow the quick setup and connection of our AyeCode Connect plugin.
10 10
 	 *
@@ -29,41 +29,41 @@  discard block
 block discarded – undo
29 29
 		 * @param array $strings
30 30
 		 * @param array $pages
31 31
 		 */
32
-		public function __construct( $strings = array(), $pages = array() ) {
32
+		public function __construct($strings = array(), $pages = array()) {
33 33
 
34 34
 			// Only fire if not localhost and the current user has the right permissions.
35
-			if ( ! $this->is_localhost() && current_user_can( 'manage_options' ) ) {
35
+			if (!$this->is_localhost() && current_user_can('manage_options')) {
36 36
 
37 37
 
38 38
 				// set default strings
39 39
 				$default_strings = array(
40
-					'connect_title'     => __( "Thanks for choosing an AyeCode Product!" ),
41
-					'connect_external'  => __( "Please confirm you wish to connect your site?" ),
42
-					'connect'           => sprintf( __( "<strong>Have a license?</strong> Forget about entering license keys or downloading zip files, connect your site for instant access. %slearn more%s" ), "<a href='https://ayecode.io/introducing-ayecode-connect/' target='_blank'>", "</a>" ),
43
-					'connect_button'    => __( "Connect Site" ),
44
-					'connecting_button' => __( "Connecting..." ),
45
-					'error_localhost'   => __( "This service will only work with a live domain, not a localhost." ),
46
-					'error'             => __( "Something went wrong, please refresh and try again." ),
40
+					'connect_title'     => __("Thanks for choosing an AyeCode Product!"),
41
+					'connect_external'  => __("Please confirm you wish to connect your site?"),
42
+					'connect'           => sprintf(__("<strong>Have a license?</strong> Forget about entering license keys or downloading zip files, connect your site for instant access. %slearn more%s"), "<a href='https://ayecode.io/introducing-ayecode-connect/' target='_blank'>", "</a>"),
43
+					'connect_button'    => __("Connect Site"),
44
+					'connecting_button' => __("Connecting..."),
45
+					'error_localhost'   => __("This service will only work with a live domain, not a localhost."),
46
+					'error'             => __("Something went wrong, please refresh and try again."),
47 47
 				);
48
-				$this->strings   = array_merge( $default_strings, $strings );
48
+				$this->strings = array_merge($default_strings, $strings);
49 49
 
50 50
 
51 51
 				// set default pages
52 52
 				$default_pages = array();
53
-				$this->pages   = array_merge( $default_pages, $pages );
53
+				$this->pages   = array_merge($default_pages, $pages);
54 54
 
55 55
 				// maybe show connect site notice
56
-				add_action( 'admin_notices', array( $this, 'ayecode_connect_install_notice' ) );
56
+				add_action('admin_notices', array($this, 'ayecode_connect_install_notice'));
57 57
 
58 58
 				// add ajax action if not already added
59
-				if ( ! has_action( 'wp_ajax_ayecode_connect_helper' ) ) {
60
-					add_action( 'wp_ajax_ayecode_connect_helper', array( $this, 'ayecode_connect_install' ) );
59
+				if (!has_action('wp_ajax_ayecode_connect_helper')) {
60
+					add_action('wp_ajax_ayecode_connect_helper', array($this, 'ayecode_connect_install'));
61 61
 				}
62 62
 			}
63 63
 
64 64
 			// add ajax action if not already added
65
-			if ( ! has_action( 'wp_ajax_nopriv_ayecode_connect_helper_installed' ) ) {
66
-				add_action( 'wp_ajax_nopriv_ayecode_connect_helper_installed', array( $this, 'ayecode_connect_helper_installed' ) );
65
+			if (!has_action('wp_ajax_nopriv_ayecode_connect_helper_installed')) {
66
+				add_action('wp_ajax_nopriv_ayecode_connect_helper_installed', array($this, 'ayecode_connect_helper_installed'));
67 67
 			}
68 68
 
69 69
 		}
@@ -71,13 +71,13 @@  discard block
 block discarded – undo
71 71
 		/**
72 72
 		 * Give a way to check we can connect via a external redirect.
73 73
 		 */
74
-		public function ayecode_connect_helper_installed(){
74
+		public function ayecode_connect_helper_installed() {
75 75
 			$active = array(
76
-				'gd'    =>  defined('GEODIRECTORY_VERSION') && version_compare(GEODIRECTORY_VERSION,'2.0.0.79','>') ? 1 : 0,
77
-				'uwp'    =>  defined('USERSWP_VERSION') && version_compare(USERSWP_VERSION,'1.2.1.5','>') ? 1 : 0,
78
-				'wpi'    =>  defined('WPINV_VERSION') && version_compare(WPINV_VERSION,'1.0.14','>') ? 1 : 0,
76
+				'gd'    =>  defined('GEODIRECTORY_VERSION') && version_compare(GEODIRECTORY_VERSION, '2.0.0.79', '>') ? 1 : 0,
77
+				'uwp'    =>  defined('USERSWP_VERSION') && version_compare(USERSWP_VERSION, '1.2.1.5', '>') ? 1 : 0,
78
+				'wpi'    =>  defined('WPINV_VERSION') && version_compare(WPINV_VERSION, '1.0.14', '>') ? 1 : 0,
79 79
 			);
80
-			wp_send_json_success( $active );
80
+			wp_send_json_success($active);
81 81
 			wp_die();
82 82
 		}
83 83
 
@@ -88,9 +88,9 @@  discard block
 block discarded – undo
88 88
 		 *
89 89
 		 * @return string
90 90
 		 */
91
-		private function format_plugin_slug( $key ) {
92
-			$slug = explode( '/', $key );
93
-			$slug = explode( '.', end( $slug ) );
91
+		private function format_plugin_slug($key) {
92
+			$slug = explode('/', $key);
93
+			$slug = explode('.', end($slug));
94 94
 
95 95
 			return $slug[0];
96 96
 		}
@@ -101,45 +101,45 @@  discard block
 block discarded – undo
101 101
 		public function ayecode_connect_install() {
102 102
 
103 103
 			// bail if localhost
104
-			if ( $this->is_localhost() ) {
105
-				wp_send_json_error( $this->strings['error_localhost'] );
104
+			if ($this->is_localhost()) {
105
+				wp_send_json_error($this->strings['error_localhost']);
106 106
 			}
107 107
 
108 108
 			// Explicitly clear the event.
109
-			wp_clear_scheduled_hook( 'geodir_plugin_background_installer', func_get_args() );
109
+			wp_clear_scheduled_hook('geodir_plugin_background_installer', func_get_args());
110 110
 
111 111
 			$success     = true;
112 112
 			$plugin_slug = "ayecode-connect";
113
-			if ( ! empty( $plugin_slug ) ) {
114
-				require_once( ABSPATH . 'wp-admin/includes/file.php' );
115
-				require_once( ABSPATH . 'wp-admin/includes/plugin-install.php' );
116
-				require_once( ABSPATH . 'wp-admin/includes/class-wp-upgrader.php' );
117
-				require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
113
+			if (!empty($plugin_slug)) {
114
+				require_once(ABSPATH . 'wp-admin/includes/file.php');
115
+				require_once(ABSPATH . 'wp-admin/includes/plugin-install.php');
116
+				require_once(ABSPATH . 'wp-admin/includes/class-wp-upgrader.php');
117
+				require_once(ABSPATH . 'wp-admin/includes/plugin.php');
118 118
 
119 119
 				WP_Filesystem();
120 120
 
121 121
 				$skin              = new Automatic_Upgrader_Skin;
122
-				$upgrader          = new WP_Upgrader( $skin );
123
-				$installed_plugins = array_map( array( $this, 'format_plugin_slug' ), array_keys( get_plugins() ) );
122
+				$upgrader          = new WP_Upgrader($skin);
123
+				$installed_plugins = array_map(array($this, 'format_plugin_slug'), array_keys(get_plugins()));
124 124
 				$plugin_slug       = $plugin_slug;
125 125
 				$plugin            = $plugin_slug . '/' . $plugin_slug . '.php';
126 126
 				$installed         = false;
127 127
 				$activate          = false;
128 128
 
129 129
 				// See if the plugin is installed already
130
-				if ( in_array( $plugin_slug, $installed_plugins ) ) {
130
+				if (in_array($plugin_slug, $installed_plugins)) {
131 131
 					$installed = true;
132
-					$activate  = ! is_plugin_active( $plugin );
132
+					$activate  = !is_plugin_active($plugin);
133 133
 				}
134 134
 
135 135
 				// Install this thing!
136
-				if ( ! $installed ) {
136
+				if (!$installed) {
137 137
 
138 138
 					// Suppress feedback
139 139
 					ob_start();
140 140
 
141 141
 					try {
142
-						$plugin_information = plugins_api( 'plugin_information', array(
142
+						$plugin_information = plugins_api('plugin_information', array(
143 143
 							'slug'   => $plugin_slug,
144 144
 							'fields' => array(
145 145
 								'short_description' => false,
@@ -156,26 +156,26 @@  discard block
 block discarded – undo
156 156
 								'author_profile'    => false,
157 157
 								'author'            => false,
158 158
 							),
159
-						) );
159
+						));
160 160
 
161
-						if ( is_wp_error( $plugin_information ) ) {
162
-							throw new Exception( $plugin_information->get_error_message() );
161
+						if (is_wp_error($plugin_information)) {
162
+							throw new Exception($plugin_information->get_error_message());
163 163
 						}
164 164
 
165 165
 						$package  = $plugin_information->download_link;
166
-						$download = $upgrader->download_package( $package );
166
+						$download = $upgrader->download_package($package);
167 167
 
168
-						if ( is_wp_error( $download ) ) {
169
-							throw new Exception( $download->get_error_message() );
168
+						if (is_wp_error($download)) {
169
+							throw new Exception($download->get_error_message());
170 170
 						}
171 171
 
172
-						$working_dir = $upgrader->unpack_package( $download, true );
172
+						$working_dir = $upgrader->unpack_package($download, true);
173 173
 
174
-						if ( is_wp_error( $working_dir ) ) {
175
-							throw new Exception( $working_dir->get_error_message() );
174
+						if (is_wp_error($working_dir)) {
175
+							throw new Exception($working_dir->get_error_message());
176 176
 						}
177 177
 
178
-						$result = $upgrader->install_package( array(
178
+						$result = $upgrader->install_package(array(
179 179
 							'source'                      => $working_dir,
180 180
 							'destination'                 => WP_PLUGIN_DIR,
181 181
 							'clear_destination'           => false,
@@ -185,15 +185,15 @@  discard block
 block discarded – undo
185 185
 								'type'   => 'plugin',
186 186
 								'action' => 'install',
187 187
 							),
188
-						) );
188
+						));
189 189
 
190
-						if ( is_wp_error( $result ) ) {
191
-							throw new Exception( $result->get_error_message() );
190
+						if (is_wp_error($result)) {
191
+							throw new Exception($result->get_error_message());
192 192
 						}
193 193
 
194 194
 						$activate = true;
195 195
 
196
-					} catch ( Exception $e ) {
196
+					} catch (Exception $e) {
197 197
 						$success = false;
198 198
 					}
199 199
 
@@ -204,30 +204,30 @@  discard block
 block discarded – undo
204 204
 				wp_clean_plugins_cache();
205 205
 
206 206
 				// Activate this thing
207
-				if ( $activate ) {
207
+				if ($activate) {
208 208
 					try {
209
-						$result = activate_plugin( $plugin );
209
+						$result = activate_plugin($plugin);
210 210
 
211
-						if ( is_wp_error( $result ) ) {
211
+						if (is_wp_error($result)) {
212 212
 							$success = false;
213 213
 						} else {
214 214
 							$success = true;
215 215
 						}
216
-					} catch ( Exception $e ) {
216
+					} catch (Exception $e) {
217 217
 						$success = false;
218 218
 					}
219 219
 				}
220 220
 			}
221 221
 
222
-			if ( $success && function_exists( 'ayecode_connect_args' ) ) {
223
-				ayecode_connect();// init
222
+			if ($success && function_exists('ayecode_connect_args')) {
223
+				ayecode_connect(); // init
224 224
 				$args        = ayecode_connect_args();
225
-				$client      = new AyeCode_Connect( $args );
226
-				$redirect_to = ! empty( $_POST['redirect_to'] ) ? esc_url_raw( $_POST['redirect_to'] ) : '';
227
-				$redirect    = $client->build_connect_url( $redirect_to );
228
-				wp_send_json_success( array( 'connect_url' => $redirect ) );
225
+				$client      = new AyeCode_Connect($args);
226
+				$redirect_to = !empty($_POST['redirect_to']) ? esc_url_raw($_POST['redirect_to']) : '';
227
+				$redirect    = $client->build_connect_url($redirect_to);
228
+				wp_send_json_success(array('connect_url' => $redirect));
229 229
 			} else {
230
-				wp_send_json_error( $this->strings['error_localhost'] );
230
+				wp_send_json_error($this->strings['error_localhost']);
231 231
 			}
232 232
 			wp_die();
233 233
 		}
@@ -240,7 +240,7 @@  discard block
 block discarded – undo
240 240
 		public function is_localhost() {
241 241
 			$localhost = false;
242 242
 
243
-			$host              = isset( $_SERVER['HTTP_HOST'] ) ? $_SERVER['HTTP_HOST'] : '';
243
+			$host              = isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : '';
244 244
 			$localhost_domains = array(
245 245
 				'localhost',
246 246
 				'localhost.localdomain',
@@ -248,7 +248,7 @@  discard block
 block discarded – undo
248 248
 				'::1'
249 249
 			);
250 250
 
251
-			if ( in_array( $host, $localhost_domains ) ) {
251
+			if (in_array($host, $localhost_domains)) {
252 252
 				$localhost = true;
253 253
 			}
254 254
 
@@ -259,7 +259,7 @@  discard block
 block discarded – undo
259 259
 		 * Show notice to connect site.
260 260
 		 */
261 261
 		public function ayecode_connect_install_notice() {
262
-			if ( $this->maybe_show() ) {
262
+			if ($this->maybe_show()) {
263 263
 				$connect_title_string     = $this->strings['connect_title'];
264 264
 				$connect_external_string  = $this->strings['connect_external'];
265 265
 				$connect_string           = $this->strings['connect'];
@@ -301,7 +301,7 @@  discard block
 block discarded – undo
301 301
 					</svg>
302 302
 					</span>
303 303
 					<span class="acch-float-left acch-text">
304
-						<h3 class="acch-title"><?php echo esc_attr( $connect_title_string ); ?></h3>
304
+						<h3 class="acch-title"><?php echo esc_attr($connect_title_string); ?></h3>
305 305
 					<p>
306 306
 						<?php
307 307
 						echo $connect_string;
@@ -312,14 +312,14 @@  discard block
 block discarded – undo
312 312
 					<span class="acch-float-left acch-button">
313 313
 						<button onclick="ayecode_connect_helper(this);" id="gd-connect-site"
314 314
 						        class="button button-primary"
315
-						        data-connecting="<?php echo esc_attr( $connecting_button_string ); ?>"><?php echo esc_attr( $connect_button_string ) ?></button>
315
+						        data-connecting="<?php echo esc_attr($connecting_button_string); ?>"><?php echo esc_attr($connect_button_string) ?></button>
316 316
 					</span>
317 317
 
318 318
 				</div>
319 319
 
320 320
 				<?php
321 321
 				// only include the popup HTML if needed.
322
-				if ( ! empty( $_REQUEST['external-connect-request'] ) ) {
322
+				if (!empty($_REQUEST['external-connect-request'])) {
323 323
 					?>
324 324
 					<div id="ayecode-connect-helper-external-confirm" style="display:none;">
325 325
 						<div class="noticex notice-info acch-notice" style="border: none;">
@@ -357,13 +357,13 @@  discard block
 block discarded – undo
357 357
 					</svg>
358 358
 					</span>
359 359
 					<span class="acch-float-left acch-text">
360
-						<h3 class="acch-title"><?php echo esc_attr( $connect_external_string ); ?></h3>
360
+						<h3 class="acch-title"><?php echo esc_attr($connect_external_string); ?></h3>
361 361
 					</span>
362 362
 
363 363
 					<span class="acch-float-left acch-button">
364 364
 						<button onclick="ayecode_connect_helper(this);" id="gd-connect-site"
365 365
 						        class="button button-primary"
366
-						        data-connecting="<?php echo esc_attr( $connecting_button_string ); ?>"><?php echo esc_attr( $connect_button_string ) ?></button>
366
+						        data-connecting="<?php echo esc_attr($connecting_button_string); ?>"><?php echo esc_attr($connect_button_string) ?></button>
367 367
 					</span>
368 368
 
369 369
 						</div>
@@ -382,7 +382,7 @@  discard block
 block discarded – undo
382 382
 		public function script() {
383 383
 
384 384
 			// add thickbox if external request is requested
385
-			if ( ! empty( $_REQUEST['external-connect-request'] ) ) {
385
+			if (!empty($_REQUEST['external-connect-request'])) {
386 386
 				add_thickbox();
387 387
 			}
388 388
 			?>
@@ -434,7 +434,7 @@  discard block
 block discarded – undo
434 434
 						url: ajaxurl,
435 435
 						data: {
436 436
 							action: 'ayecode_connect_helper',
437
-							security: '<?php echo wp_create_nonce( 'ayecode-connect-helper' );?>',
437
+							security: '<?php echo wp_create_nonce('ayecode-connect-helper'); ?>',
438 438
 							redirect_to: $current_url
439 439
 						},
440 440
 						beforeSend: function () {
@@ -455,7 +455,7 @@  discard block
 block discarded – undo
455 455
 
456 456
 				<?php
457 457
 				// add thickbox if external request is requested
458
-				if(! empty( $_REQUEST['external-connect-request'] )) {
458
+				if (!empty($_REQUEST['external-connect-request'])) {
459 459
 				?>
460 460
 				jQuery(function () {
461 461
 					setTimeout(function () {
@@ -479,10 +479,10 @@  discard block
 block discarded – undo
479 479
 			$show = false;
480 480
 
481 481
 			// check if on a page set to show
482
-			if ( isset( $_REQUEST['page'] ) && in_array( $_REQUEST['page'], $this->pages ) ) {
482
+			if (isset($_REQUEST['page']) && in_array($_REQUEST['page'], $this->pages)) {
483 483
 
484 484
 				// check if not active and connected
485
-				if ( ! defined( 'AYECODE_CONNECT_VERSION' ) || ! get_option( 'ayecode_connect_blog_token' ) ) {
485
+				if (!defined('AYECODE_CONNECT_VERSION') || !get_option('ayecode_connect_blog_token')) {
486 486
 					$show = true;
487 487
 				}
488 488
 
Please login to merge, or discard this patch.
includes/data/sample-payment-form-items.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -8,7 +8,7 @@
 block discarded – undo
8 8
  * @version 1.0.19
9 9
  */
10 10
 
11
-defined( 'ABSPATH' ) || exit;
11
+defined('ABSPATH') || exit;
12 12
 
13 13
 return array(
14 14
 
Please login to merge, or discard this patch.
widgets/checkout.php 2 patches
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if ( ! defined( 'ABSPATH' ) ) {
2
+if (!defined('ABSPATH')) {
3 3
     exit;
4 4
 }
5 5
 
@@ -23,15 +23,15 @@  discard block
 block discarded – undo
23 23
             'block-keywords'=> "['invoicing','checkout']",
24 24
             'class_name'     => __CLASS__,
25 25
             'base_id'       => 'wpinv_checkout',
26
-            'name'          => __('GetPaid > Checkout','invoicing'),
26
+            'name'          => __('GetPaid > Checkout', 'invoicing'),
27 27
             'widget_ops'    => array(
28 28
                 'classname'   => 'getpaid-checkout bsui',
29
-                'description' => esc_html__('Displays a checkout form.','invoicing'),
29
+                'description' => esc_html__('Displays a checkout form.', 'invoicing'),
30 30
             ),
31 31
             'arguments'     => array(
32 32
                 'title'  => array(
33
-                    'title'       => __( 'Widget title', 'invoicing' ),
34
-                    'desc'        => __( 'Enter widget title.', 'invoicing' ),
33
+                    'title'       => __('Widget title', 'invoicing'),
34
+                    'desc'        => __('Enter widget title.', 'invoicing'),
35 35
                     'type'        => 'text',
36 36
                     'desc_tip'    => true,
37 37
                     'default'     => '',
@@ -42,7 +42,7 @@  discard block
 block discarded – undo
42 42
         );
43 43
 
44 44
 
45
-        parent::__construct( $options );
45
+        parent::__construct($options);
46 46
     }
47 47
 
48 48
 	/**
@@ -54,7 +54,7 @@  discard block
 block discarded – undo
54 54
 	 *
55 55
 	 * @return mixed|string|bool
56 56
 	 */
57
-    public function output( $args = array(), $widget_args = array(), $content = '' ) {
57
+    public function output($args = array(), $widget_args = array(), $content = '') {
58 58
 	    return wpinv_checkout_form();
59 59
     }
60 60
 
Please login to merge, or discard this patch.
Indentation   +10 added lines, -10 removed lines patch added patch discarded remove patch
@@ -45,17 +45,17 @@
 block discarded – undo
45 45
         parent::__construct( $options );
46 46
     }
47 47
 
48
-	/**
49
-	 * The Super block output function.
50
-	 *
51
-	 * @param array $args
52
-	 * @param array $widget_args
53
-	 * @param string $content
54
-	 *
55
-	 * @return mixed|string|bool
56
-	 */
48
+    /**
49
+     * The Super block output function.
50
+     *
51
+     * @param array $args
52
+     * @param array $widget_args
53
+     * @param string $content
54
+     *
55
+     * @return mixed|string|bool
56
+     */
57 57
     public function output( $args = array(), $widget_args = array(), $content = '' ) {
58
-	    return wpinv_checkout_form();
58
+        return wpinv_checkout_form();
59 59
     }
60 60
 
61 61
 }
Please login to merge, or discard this patch.
includes/class-wpinv-legacy-invoice.php 2 patches
Braces   +3 added lines, -2 removed lines patch added patch discarded remove patch
@@ -974,8 +974,9 @@
 block discarded – undo
974 974
             return false;
975 975
         }
976 976
 
977
-        if ( empty( $this->ID ) )
978
-            return false;
977
+        if ( empty( $this->ID ) ) {
978
+                    return false;
979
+        }
979 980
         
980 981
         if ( ( ( is_user_logged_in() && wpinv_current_user_can_manage_invoicing() ) || $added_by_user ) && !$system ) {
981 982
             $user                 = get_user_by( 'id', get_current_user_id() );
Please login to merge, or discard this patch.
Spacing   +297 added lines, -297 removed lines patch added patch discarded remove patch
@@ -7,8 +7,8 @@  discard block
 block discarded – undo
7 7
  */
8 8
  
9 9
 // MUST have WordPress.
10
-if ( !defined( 'WPINC' ) ) {
11
-    exit( 'Do NOT access this file directly: ' . basename( __FILE__ ) );
10
+if (!defined('WPINC')) {
11
+    exit('Do NOT access this file directly: ' . basename(__FILE__));
12 12
 }
13 13
 
14 14
 /**
@@ -19,7 +19,7 @@  discard block
 block discarded – undo
19 19
     /**
20 20
      * Invoice id.
21 21
      */
22
-    public $ID  = 0;
22
+    public $ID = 0;
23 23
 
24 24
     /**
25 25
      * The title of the invoice. Usually the invoice number.
@@ -135,7 +135,7 @@  discard block
 block discarded – undo
135 135
     /**
136 136
      * The invoice status.
137 137
      */
138
-    public $status      = 'wpi-pending';
138
+    public $status = 'wpi-pending';
139 139
 
140 140
     /**
141 141
      * Same as self::$status.
@@ -262,17 +262,17 @@  discard block
 block discarded – undo
262 262
      */
263 263
     public $parent_invoice = 0;
264 264
     
265
-    public function __construct( $invoice_id = false ) {
266
-        if( empty( $invoice_id ) ) {
265
+    public function __construct($invoice_id = false) {
266
+        if (empty($invoice_id)) {
267 267
             return false;
268 268
         }
269 269
 
270
-        $this->setup_invoice( $invoice_id );
270
+        $this->setup_invoice($invoice_id);
271 271
     }
272 272
 
273
-    public function get( $key ) {
274
-        if ( method_exists( $this, 'get_' . $key ) ) {
275
-            $value = call_user_func( array( $this, 'get_' . $key ) );
273
+    public function get($key) {
274
+        if (method_exists($this, 'get_' . $key)) {
275
+            $value = call_user_func(array($this, 'get_' . $key));
276 276
         } else {
277 277
             $value = $this->$key;
278 278
         }
@@ -280,43 +280,43 @@  discard block
 block discarded – undo
280 280
         return $value;
281 281
     }
282 282
 
283
-    public function set( $key, $value ) {
284
-        $ignore = array( 'items', 'cart_details', 'fees', '_ID' );
283
+    public function set($key, $value) {
284
+        $ignore = array('items', 'cart_details', 'fees', '_ID');
285 285
 
286
-        if ( $key === 'status' ) {
286
+        if ($key === 'status') {
287 287
             $this->old_status = $this->status;
288 288
         }
289 289
 
290
-        if ( ! in_array( $key, $ignore ) ) {
291
-            $this->pending[ $key ] = $value;
290
+        if (!in_array($key, $ignore)) {
291
+            $this->pending[$key] = $value;
292 292
         }
293 293
 
294
-        if( '_ID' !== $key ) {
294
+        if ('_ID' !== $key) {
295 295
             $this->$key = $value;
296 296
         }
297 297
     }
298 298
 
299
-    public function _isset( $name ) {
300
-        if ( property_exists( $this, $name) ) {
301
-            return false === empty( $this->$name );
299
+    public function _isset($name) {
300
+        if (property_exists($this, $name)) {
301
+            return false === empty($this->$name);
302 302
         } else {
303 303
             return null;
304 304
         }
305 305
     }
306 306
 
307
-    private function setup_invoice( $invoice_id ) {
307
+    private function setup_invoice($invoice_id) {
308 308
         $this->pending = array();
309 309
 
310
-        $invoice = get_post( $invoice_id );
310
+        $invoice = get_post($invoice_id);
311 311
 
312
-        if ( ! $invoice || is_wp_error( $invoice ) ) {
312
+        if (!$invoice || is_wp_error($invoice)) {
313 313
             return false;
314 314
         }
315 315
 
316
-        do_action( 'wpinv_pre_setup_invoice', $this, $invoice_id );
316
+        do_action('wpinv_pre_setup_invoice', $this, $invoice_id);
317 317
 
318 318
         // Primary Identifier
319
-        $this->ID              = absint( $invoice_id );
319
+        $this->ID              = absint($invoice_id);
320 320
         $this->post_type       = $invoice->post_type;
321 321
 
322 322
         // We have a payment, get the generic payment_meta item to reduce calls to it
@@ -326,15 +326,15 @@  discard block
 block discarded – undo
326 326
         $this->completed_date  = $this->setup_completed_date();
327 327
         $this->status          = $invoice->post_status;
328 328
 
329
-        if ( 'future' == $this->status ) {
329
+        if ('future' == $this->status) {
330 330
             $this->status = 'publish';
331 331
         }
332 332
 
333 333
         $this->post_status     = $this->status;
334 334
         $this->mode            = $this->setup_mode();
335 335
         $this->parent_invoice  = $invoice->post_parent;
336
-        $this->post_name       = $this->setup_post_name( $invoice );
337
-        $this->status_nicename = $this->setup_status_nicename( $invoice->post_status );
336
+        $this->post_name       = $this->setup_post_name($invoice);
337
+        $this->status_nicename = $this->setup_status_nicename($invoice->post_status);
338 338
 
339 339
         // Items
340 340
         $this->fees            = $this->setup_fees();
@@ -356,8 +356,8 @@  discard block
 block discarded – undo
356 356
         
357 357
         // User based
358 358
         $this->ip              = $this->setup_ip();
359
-        $this->user_id         = !empty( $invoice->post_author ) ? $invoice->post_author : get_current_user_id();///$this->setup_user_id();
360
-        $this->email           = get_the_author_meta( 'email', $this->user_id );
359
+        $this->user_id         = !empty($invoice->post_author) ? $invoice->post_author : get_current_user_id(); ///$this->setup_user_id();
360
+        $this->email           = get_the_author_meta('email', $this->user_id);
361 361
 
362 362
         $this->user_info       = $this->setup_user_info();
363 363
 
@@ -366,7 +366,7 @@  discard block
 block discarded – undo
366 366
         $this->company         = $this->user_info['company'];
367 367
         $this->vat_number      = $this->user_info['vat_number'];
368 368
         $this->vat_rate        = $this->user_info['vat_rate'];
369
-        $this->adddress_confirmed  = $this->user_info['adddress_confirmed'];
369
+        $this->adddress_confirmed = $this->user_info['adddress_confirmed'];
370 370
         $this->address         = $this->user_info['address'];
371 371
         $this->city            = $this->user_info['city'];
372 372
         $this->country         = $this->user_info['country'];
@@ -381,31 +381,31 @@  discard block
 block discarded – undo
381 381
         // Other Identifiers
382 382
         $this->key             = $this->setup_invoice_key();
383 383
         $this->number          = $this->setup_invoice_number();
384
-        $this->title           = !empty( $invoice->post_title ) ? $invoice->post_title : $this->number;
384
+        $this->title           = !empty($invoice->post_title) ? $invoice->post_title : $this->number;
385 385
         
386
-        $this->full_name       = trim( $this->first_name . ' '. $this->last_name );
386
+        $this->full_name       = trim($this->first_name . ' ' . $this->last_name);
387 387
         
388 388
         // Allow extensions to add items to this object via hook
389
-        do_action( 'wpinv_setup_invoice', $this, $invoice_id );
389
+        do_action('wpinv_setup_invoice', $this, $invoice_id);
390 390
 
391 391
         return true;
392 392
     }
393 393
 
394
-    private function setup_status_nicename( $status ) {
394
+    private function setup_status_nicename($status) {
395 395
         return $status;
396 396
     }
397 397
 
398
-    private function setup_post_name( $post ) {
398
+    private function setup_post_name($post) {
399 399
         $this->post_name = $post->post_name;
400 400
     }
401 401
     
402 402
     private function setup_due_date() {
403
-        $due_date = $this->get_meta( '_wpinv_due_date' );
403
+        $due_date = $this->get_meta('_wpinv_due_date');
404 404
         
405
-        if ( empty( $due_date ) ) {
406
-            $overdue_time = strtotime( $this->date ) + ( DAY_IN_SECONDS * absint( wpinv_get_option( 'overdue_days', 0 ) ) );
407
-            $due_date = date_i18n( 'Y-m-d', $overdue_time );
408
-        } else if ( $due_date == 'none' ) {
405
+        if (empty($due_date)) {
406
+            $overdue_time = strtotime($this->date) + (DAY_IN_SECONDS * absint(wpinv_get_option('overdue_days', 0)));
407
+            $due_date = date_i18n('Y-m-d', $overdue_time);
408
+        } else if ($due_date == 'none') {
409 409
             $due_date = '';
410 410
         }
411 411
         
@@ -413,67 +413,67 @@  discard block
 block discarded – undo
413 413
     }
414 414
     
415 415
     private function setup_completed_date() {
416
-        $invoice = get_post( $this->ID );
416
+        $invoice = get_post($this->ID);
417 417
 
418
-        if ( 'wpi-pending' == $invoice->post_status || 'preapproved' == $invoice->post_status ) {
418
+        if ('wpi-pending' == $invoice->post_status || 'preapproved' == $invoice->post_status) {
419 419
             return false; // This invoice was never paid
420 420
         }
421 421
 
422
-        $date = ( $date = $this->get_meta( '_wpinv_completed_date', true ) ) ? $date : $invoice->modified_date;
422
+        $date = ($date = $this->get_meta('_wpinv_completed_date', true)) ? $date : $invoice->modified_date;
423 423
 
424 424
         return $date;
425 425
     }
426 426
     
427 427
     private function setup_cart_details() {
428
-        $cart_details = isset( $this->payment_meta['cart_details'] ) ? maybe_unserialize( $this->payment_meta['cart_details'] ) : array();
428
+        $cart_details = isset($this->payment_meta['cart_details']) ? maybe_unserialize($this->payment_meta['cart_details']) : array();
429 429
         return $cart_details;
430 430
     }
431 431
     
432 432
     public function array_convert() {
433
-        return get_object_vars( $this );
433
+        return get_object_vars($this);
434 434
     }
435 435
     
436 436
     private function setup_items() {
437
-        $items = isset( $this->payment_meta['items'] ) ? maybe_unserialize( $this->payment_meta['items'] ) : array();
437
+        $items = isset($this->payment_meta['items']) ? maybe_unserialize($this->payment_meta['items']) : array();
438 438
         return $items;
439 439
     }
440 440
     
441 441
     private function setup_fees() {
442
-        $payment_fees = isset( $this->payment_meta['fees'] ) ? $this->payment_meta['fees'] : array();
442
+        $payment_fees = isset($this->payment_meta['fees']) ? $this->payment_meta['fees'] : array();
443 443
         return $payment_fees;
444 444
     }
445 445
         
446 446
     private function setup_currency() {
447
-        $currency = isset( $this->payment_meta['currency'] ) ? $this->payment_meta['currency'] : apply_filters( 'wpinv_currency_default', wpinv_get_currency(), $this );
447
+        $currency = isset($this->payment_meta['currency']) ? $this->payment_meta['currency'] : apply_filters('wpinv_currency_default', wpinv_get_currency(), $this);
448 448
         return $currency;
449 449
     }
450 450
     
451 451
     private function setup_discount() {
452 452
         //$discount = $this->get_meta( '_wpinv_discount', true );
453
-        $discount = (float)$this->subtotal - ( (float)$this->total - (float)$this->tax - (float)$this->fees_total );
454
-        if ( $discount < 0 ) {
453
+        $discount = (float) $this->subtotal - ((float) $this->total - (float) $this->tax - (float) $this->fees_total);
454
+        if ($discount < 0) {
455 455
             $discount = 0;
456 456
         }
457
-        $discount = wpinv_round_amount( $discount );
457
+        $discount = wpinv_round_amount($discount);
458 458
         
459 459
         return $discount;
460 460
     }
461 461
     
462 462
     private function setup_discount_code() {
463
-        $discount_code = !empty( $this->discounts ) ? $this->discounts : $this->get_meta( '_wpinv_discount_code', true );
463
+        $discount_code = !empty($this->discounts) ? $this->discounts : $this->get_meta('_wpinv_discount_code', true);
464 464
         return $discount_code;
465 465
     }
466 466
     
467 467
     private function setup_tax() {
468 468
 
469
-        $tax = $this->get_meta( '_wpinv_tax', true );
469
+        $tax = $this->get_meta('_wpinv_tax', true);
470 470
 
471 471
         // We don't have tax as it's own meta and no meta was passed
472
-        if ( '' === $tax ) {            
473
-            $tax = isset( $this->payment_meta['tax'] ) ? $this->payment_meta['tax'] : 0;
472
+        if ('' === $tax) {            
473
+            $tax = isset($this->payment_meta['tax']) ? $this->payment_meta['tax'] : 0;
474 474
         }
475 475
         
476
-        if ( $tax < 0 || ! $this->is_taxable() ) {
476
+        if ($tax < 0 || !$this->is_taxable()) {
477 477
             $tax = 0;
478 478
         }
479 479
 
@@ -484,16 +484,16 @@  discard block
 block discarded – undo
484 484
      * If taxes are enabled, allow users to enable/disable taxes per invoice.
485 485
      */
486 486
     private function setup_is_taxable() {
487
-        return (int) $this->get_meta( '_wpinv_disable_taxes', true );
487
+        return (int) $this->get_meta('_wpinv_disable_taxes', true);
488 488
     }
489 489
 
490 490
     private function setup_subtotal() {
491 491
         $subtotal     = 0;
492 492
         $cart_details = $this->cart_details;
493 493
 
494
-        if ( is_array( $cart_details ) ) {
495
-            foreach ( $cart_details as $item ) {
496
-                if ( isset( $item['subtotal'] ) ) {
494
+        if (is_array($cart_details)) {
495
+            foreach ($cart_details as $item) {
496
+                if (isset($item['subtotal'])) {
497 497
                     $subtotal += $item['subtotal'];
498 498
                 }
499 499
             }
@@ -507,23 +507,23 @@  discard block
 block discarded – undo
507 507
     }
508 508
 
509 509
     private function setup_discounts() {
510
-        $discounts = ! empty( $this->payment_meta['user_info']['discount'] ) ? $this->payment_meta['user_info']['discount'] : array();
510
+        $discounts = !empty($this->payment_meta['user_info']['discount']) ? $this->payment_meta['user_info']['discount'] : array();
511 511
         return $discounts;
512 512
     }
513 513
     
514 514
     private function setup_total() {
515
-        $amount = $this->get_meta( '_wpinv_total', true );
515
+        $amount = $this->get_meta('_wpinv_total', true);
516 516
 
517
-        if ( empty( $amount ) && '0.00' != $amount ) {
518
-            $meta   = $this->get_meta( '_wpinv_payment_meta', true );
519
-            $meta   = maybe_unserialize( $meta );
517
+        if (empty($amount) && '0.00' != $amount) {
518
+            $meta   = $this->get_meta('_wpinv_payment_meta', true);
519
+            $meta   = maybe_unserialize($meta);
520 520
 
521
-            if ( isset( $meta['amount'] ) ) {
521
+            if (isset($meta['amount'])) {
522 522
                 $amount = $meta['amount'];
523 523
             }
524 524
         }
525 525
 
526
-        if($amount < 0){
526
+        if ($amount < 0) {
527 527
             $amount = 0;
528 528
         }
529 529
 
@@ -531,13 +531,13 @@  discard block
 block discarded – undo
531 531
     }
532 532
     
533 533
     private function setup_mode() {
534
-        return $this->get_meta( '_wpinv_mode' );
534
+        return $this->get_meta('_wpinv_mode');
535 535
     }
536 536
 
537 537
     private function setup_gateway() {
538
-        $gateway = $this->get_meta( '_wpinv_gateway' );
538
+        $gateway = $this->get_meta('_wpinv_gateway');
539 539
         
540
-        if ( empty( $gateway ) && 'publish' === $this->status ) {
540
+        if (empty($gateway) && 'publish' === $this->status) {
541 541
             $gateway = 'manual';
542 542
         }
543 543
         
@@ -545,23 +545,23 @@  discard block
 block discarded – undo
545 545
     }
546 546
 
547 547
     private function setup_gateway_title() {
548
-        $gateway_title = wpinv_get_gateway_checkout_label( $this->gateway );
548
+        $gateway_title = wpinv_get_gateway_checkout_label($this->gateway);
549 549
         return $gateway_title;
550 550
     }
551 551
 
552 552
     private function setup_transaction_id() {
553
-        $transaction_id = $this->get_meta( '_wpinv_transaction_id' );
553
+        $transaction_id = $this->get_meta('_wpinv_transaction_id');
554 554
 
555
-        if ( empty( $transaction_id ) || (int) $transaction_id === (int) $this->ID ) {
555
+        if (empty($transaction_id) || (int) $transaction_id === (int) $this->ID) {
556 556
             $gateway        = $this->gateway;
557
-            $transaction_id = apply_filters( 'wpinv_get_invoice_transaction_id-' . $gateway, $this->ID );
557
+            $transaction_id = apply_filters('wpinv_get_invoice_transaction_id-' . $gateway, $this->ID);
558 558
         }
559 559
 
560 560
         return $transaction_id;
561 561
     }
562 562
 
563 563
     private function setup_ip() {
564
-        $ip = $this->get_meta( '_wpinv_user_ip' );
564
+        $ip = $this->get_meta('_wpinv_user_ip');
565 565
         return $ip;
566 566
     }
567 567
 
@@ -571,62 +571,62 @@  discard block
 block discarded – undo
571 571
     ///}
572 572
         
573 573
     private function setup_first_name() {
574
-        $first_name = $this->get_meta( '_wpinv_first_name' );
574
+        $first_name = $this->get_meta('_wpinv_first_name');
575 575
         return $first_name;
576 576
     }
577 577
     
578 578
     private function setup_last_name() {
579
-        $last_name = $this->get_meta( '_wpinv_last_name' );
579
+        $last_name = $this->get_meta('_wpinv_last_name');
580 580
         return $last_name;
581 581
     }
582 582
     
583 583
     private function setup_company() {
584
-        $company = $this->get_meta( '_wpinv_company' );
584
+        $company = $this->get_meta('_wpinv_company');
585 585
         return $company;
586 586
     }
587 587
     
588 588
     private function setup_vat_number() {
589
-        $vat_number = $this->get_meta( '_wpinv_vat_number' );
589
+        $vat_number = $this->get_meta('_wpinv_vat_number');
590 590
         return $vat_number;
591 591
     }
592 592
     
593 593
     private function setup_vat_rate() {
594
-        $vat_rate = $this->get_meta( '_wpinv_vat_rate' );
594
+        $vat_rate = $this->get_meta('_wpinv_vat_rate');
595 595
         return $vat_rate;
596 596
     }
597 597
     
598 598
     private function setup_adddress_confirmed() {
599
-        $adddress_confirmed = $this->get_meta( '_wpinv_adddress_confirmed' );
599
+        $adddress_confirmed = $this->get_meta('_wpinv_adddress_confirmed');
600 600
         return $adddress_confirmed;
601 601
     }
602 602
     
603 603
     private function setup_phone() {
604
-        $phone = $this->get_meta( '_wpinv_phone' );
604
+        $phone = $this->get_meta('_wpinv_phone');
605 605
         return $phone;
606 606
     }
607 607
     
608 608
     private function setup_address() {
609
-        $address = $this->get_meta( '_wpinv_address', true );
609
+        $address = $this->get_meta('_wpinv_address', true);
610 610
         return $address;
611 611
     }
612 612
     
613 613
     private function setup_city() {
614
-        $city = $this->get_meta( '_wpinv_city', true );
614
+        $city = $this->get_meta('_wpinv_city', true);
615 615
         return $city;
616 616
     }
617 617
     
618 618
     private function setup_country() {
619
-        $country = $this->get_meta( '_wpinv_country', true );
619
+        $country = $this->get_meta('_wpinv_country', true);
620 620
         return $country;
621 621
     }
622 622
     
623 623
     private function setup_state() {
624
-        $state = $this->get_meta( '_wpinv_state', true );
624
+        $state = $this->get_meta('_wpinv_state', true);
625 625
         return $state;
626 626
     }
627 627
     
628 628
     private function setup_zip() {
629
-        $zip = $this->get_meta( '_wpinv_zip', true );
629
+        $zip = $this->get_meta('_wpinv_zip', true);
630 630
         return $zip;
631 631
     }
632 632
 
@@ -635,7 +635,7 @@  discard block
 block discarded – undo
635 635
             'user_id'        => $this->user_id,
636 636
             'first_name'     => $this->first_name,
637 637
             'last_name'      => $this->last_name,
638
-            'email'          => get_the_author_meta( 'email', $this->user_id ),
638
+            'email'          => get_the_author_meta('email', $this->user_id),
639 639
             'phone'          => $this->phone,
640 640
             'address'        => $this->address,
641 641
             'city'           => $this->city,
@@ -650,12 +650,12 @@  discard block
 block discarded – undo
650 650
         );
651 651
         
652 652
         $user_info = array();
653
-        if ( isset( $this->payment_meta['user_info'] ) ) {
654
-            $user_info = maybe_unserialize( $this->payment_meta['user_info'] );
653
+        if (isset($this->payment_meta['user_info'])) {
654
+            $user_info = maybe_unserialize($this->payment_meta['user_info']);
655 655
             
656
-            if ( !empty( $user_info ) && isset( $user_info['user_id'] ) && $post = get_post( $this->ID ) ) {
656
+            if (!empty($user_info) && isset($user_info['user_id']) && $post = get_post($this->ID)) {
657 657
                 $this->user_id = $post->post_author;
658
-                $this->email = get_the_author_meta( 'email', $this->user_id );
658
+                $this->email = get_the_author_meta('email', $this->user_id);
659 659
                 
660 660
                 $user_info['user_id'] = $this->user_id;
661 661
                 $user_info['email'] = $this->email;
@@ -664,13 +664,13 @@  discard block
 block discarded – undo
664 664
             }
665 665
         }
666 666
         
667
-        $user_info    = wp_parse_args( $user_info, $defaults );
667
+        $user_info = wp_parse_args($user_info, $defaults);
668 668
         
669 669
         // Get the user, but only if it's been created
670
-        $user = get_userdata( $this->user_id );
670
+        $user = get_userdata($this->user_id);
671 671
         
672
-        if ( !empty( $user ) && $user->ID > 0 ) {
673
-            if ( empty( $user_info ) ) {
672
+        if (!empty($user) && $user->ID > 0) {
673
+            if (empty($user_info)) {
674 674
                 $user_info = array(
675 675
                     'user_id'    => $user->ID,
676 676
                     'first_name' => $user->first_name,
@@ -679,23 +679,23 @@  discard block
 block discarded – undo
679 679
                     'discount'   => '',
680 680
                 );
681 681
             } else {
682
-                foreach ( $user_info as $key => $value ) {
683
-                    if ( ! empty( $value ) ) {
682
+                foreach ($user_info as $key => $value) {
683
+                    if (!empty($value)) {
684 684
                         continue;
685 685
                     }
686 686
 
687
-                    switch( $key ) {
687
+                    switch ($key) {
688 688
                         case 'user_id':
689
-                            $user_info[ $key ] = $user->ID;
689
+                            $user_info[$key] = $user->ID;
690 690
                             break;
691 691
                         case 'first_name':
692
-                            $user_info[ $key ] = $user->first_name;
692
+                            $user_info[$key] = $user->first_name;
693 693
                             break;
694 694
                         case 'last_name':
695
-                            $user_info[ $key ] = $user->last_name;
695
+                            $user_info[$key] = $user->last_name;
696 696
                             break;
697 697
                         case 'email':
698
-                            $user_info[ $key ] = $user->user_email;
698
+                            $user_info[$key] = $user->user_email;
699 699
                             break;
700 700
                     }
701 701
                 }
@@ -706,25 +706,25 @@  discard block
 block discarded – undo
706 706
     }
707 707
 
708 708
     private function setup_invoice_key() {
709
-        $key = $this->get_meta( '_wpinv_key', true );
709
+        $key = $this->get_meta('_wpinv_key', true);
710 710
         
711 711
         return $key;
712 712
     }
713 713
 
714 714
     private function setup_invoice_number() {
715
-        $number = $this->get_meta( '_wpinv_number', true );
715
+        $number = $this->get_meta('_wpinv_number', true);
716 716
 
717
-        if ( !$number ) {
717
+        if (!$number) {
718 718
             $number = $this->ID;
719 719
 
720
-            if ( $this->status == 'auto-draft' ) {
721
-                if ( wpinv_sequential_number_active( $this->post_type ) ) {
722
-                    $next_number = wpinv_get_next_invoice_number( $this->post_type );
720
+            if ($this->status == 'auto-draft') {
721
+                if (wpinv_sequential_number_active($this->post_type)) {
722
+                    $next_number = wpinv_get_next_invoice_number($this->post_type);
723 723
                     $number      = $next_number;
724 724
                 }
725 725
             }
726 726
             
727
-            $number = wpinv_format_invoice_number( $number, $this->post_type );
727
+            $number = wpinv_format_invoice_number($number, $this->post_type);
728 728
         }
729 729
 
730 730
         return $number;
@@ -732,7 +732,7 @@  discard block
 block discarded – undo
732 732
 
733 733
     public function save() {}
734 734
     
735
-    public function add_fee( $args ) {
735
+    public function add_fee($args) {
736 736
         $default_args = array(
737 737
             'label'       => '',
738 738
             'amount'      => 0,
@@ -742,75 +742,75 @@  discard block
 block discarded – undo
742 742
             'item_id'     => 0,
743 743
         );
744 744
 
745
-        $fee = wp_parse_args( $args, $default_args );
745
+        $fee = wp_parse_args($args, $default_args);
746 746
         
747
-        if ( empty( $fee['label'] ) ) {
747
+        if (empty($fee['label'])) {
748 748
             return false;
749 749
         }
750 750
         
751
-        $fee['id']  = sanitize_title( $fee['label'] );
751
+        $fee['id'] = sanitize_title($fee['label']);
752 752
         
753
-        $this->fees[]               = $fee;
753
+        $this->fees[] = $fee;
754 754
         
755 755
         $added_fee               = $fee;
756 756
         $added_fee['action']     = 'add';
757 757
         $this->pending['fees'][] = $added_fee;
758
-        reset( $this->fees );
758
+        reset($this->fees);
759 759
 
760
-        $this->increase_fees( $fee['amount'] );
760
+        $this->increase_fees($fee['amount']);
761 761
         return true;
762 762
     }
763 763
 
764
-    public function remove_fee( $key ) {
764
+    public function remove_fee($key) {
765 765
         $removed = false;
766 766
 
767
-        if ( is_numeric( $key ) ) {
768
-            $removed = $this->remove_fee_by( 'index', $key );
767
+        if (is_numeric($key)) {
768
+            $removed = $this->remove_fee_by('index', $key);
769 769
         }
770 770
 
771 771
         return $removed;
772 772
     }
773 773
 
774
-    public function remove_fee_by( $key, $value, $global = false ) {
775
-        $allowed_fee_keys = apply_filters( 'wpinv_fee_keys', array(
774
+    public function remove_fee_by($key, $value, $global = false) {
775
+        $allowed_fee_keys = apply_filters('wpinv_fee_keys', array(
776 776
             'index', 'label', 'amount', 'type',
777
-        ) );
777
+        ));
778 778
 
779
-        if ( ! in_array( $key, $allowed_fee_keys ) ) {
779
+        if (!in_array($key, $allowed_fee_keys)) {
780 780
             return false;
781 781
         }
782 782
 
783 783
         $removed = false;
784
-        if ( 'index' === $key && array_key_exists( $value, $this->fees ) ) {
785
-            $removed_fee             = $this->fees[ $value ];
784
+        if ('index' === $key && array_key_exists($value, $this->fees)) {
785
+            $removed_fee             = $this->fees[$value];
786 786
             $removed_fee['action']   = 'remove';
787 787
             $this->pending['fees'][] = $removed_fee;
788 788
 
789
-            $this->decrease_fees( $removed_fee['amount'] );
789
+            $this->decrease_fees($removed_fee['amount']);
790 790
 
791
-            unset( $this->fees[ $value ] );
791
+            unset($this->fees[$value]);
792 792
             $removed = true;
793
-        } else if ( 'index' !== $key ) {
794
-            foreach ( $this->fees as $index => $fee ) {
795
-                if ( isset( $fee[ $key ] ) && $fee[ $key ] == $value ) {
793
+        } else if ('index' !== $key) {
794
+            foreach ($this->fees as $index => $fee) {
795
+                if (isset($fee[$key]) && $fee[$key] == $value) {
796 796
                     $removed_fee             = $fee;
797 797
                     $removed_fee['action']   = 'remove';
798 798
                     $this->pending['fees'][] = $removed_fee;
799 799
 
800
-                    $this->decrease_fees( $removed_fee['amount'] );
800
+                    $this->decrease_fees($removed_fee['amount']);
801 801
 
802
-                    unset( $this->fees[ $index ] );
802
+                    unset($this->fees[$index]);
803 803
                     $removed = true;
804 804
 
805
-                    if ( false === $global ) {
805
+                    if (false === $global) {
806 806
                         break;
807 807
                     }
808 808
                 }
809 809
             }
810 810
         }
811 811
 
812
-        if ( true === $removed ) {
813
-            $this->fees = array_values( $this->fees );
812
+        if (true === $removed) {
813
+            $this->fees = array_values($this->fees);
814 814
         }
815 815
 
816 816
         return $removed;
@@ -818,35 +818,35 @@  discard block
 block discarded – undo
818 818
 
819 819
     
820 820
 
821
-    public function add_note( $note = '', $customer_type = false, $added_by_user = false, $system = false ) {
821
+    public function add_note($note = '', $customer_type = false, $added_by_user = false, $system = false) {
822 822
         // Bail if no note specified
823
-        if( !$note ) {
823
+        if (!$note) {
824 824
             return false;
825 825
         }
826 826
 
827
-        if ( empty( $this->ID ) )
827
+        if (empty($this->ID))
828 828
             return false;
829 829
         
830
-        if ( ( ( is_user_logged_in() && wpinv_current_user_can_manage_invoicing() ) || $added_by_user ) && !$system ) {
831
-            $user                 = get_user_by( 'id', get_current_user_id() );
830
+        if (((is_user_logged_in() && wpinv_current_user_can_manage_invoicing()) || $added_by_user) && !$system) {
831
+            $user                 = get_user_by('id', get_current_user_id());
832 832
             $comment_author       = $user->display_name;
833 833
             $comment_author_email = $user->user_email;
834 834
         } else {
835 835
             $comment_author       = 'System';
836 836
             $comment_author_email = 'system@';
837
-            $comment_author_email .= isset( $_SERVER['HTTP_HOST'] ) ? str_replace( 'www.', '', $_SERVER['HTTP_HOST'] ) : 'noreply.com';
838
-            $comment_author_email = sanitize_email( $comment_author_email );
837
+            $comment_author_email .= isset($_SERVER['HTTP_HOST']) ? str_replace('www.', '', $_SERVER['HTTP_HOST']) : 'noreply.com';
838
+            $comment_author_email = sanitize_email($comment_author_email);
839 839
         }
840 840
 
841
-        do_action( 'wpinv_pre_insert_invoice_note', $this->ID, $note, $customer_type );
841
+        do_action('wpinv_pre_insert_invoice_note', $this->ID, $note, $customer_type);
842 842
 
843
-        $note_id = wp_insert_comment( wp_filter_comment( array(
843
+        $note_id = wp_insert_comment(wp_filter_comment(array(
844 844
             'comment_post_ID'      => $this->ID,
845 845
             'comment_content'      => $note,
846 846
             'comment_agent'        => 'WPInvoicing',
847 847
             'user_id'              => is_admin() ? get_current_user_id() : 0,
848
-            'comment_date'         => current_time( 'mysql' ),
849
-            'comment_date_gmt'     => current_time( 'mysql', 1 ),
848
+            'comment_date'         => current_time('mysql'),
849
+            'comment_date_gmt'     => current_time('mysql', 1),
850 850
             'comment_approved'     => 1,
851 851
             'comment_parent'       => 0,
852 852
             'comment_author'       => $comment_author,
@@ -854,53 +854,53 @@  discard block
 block discarded – undo
854 854
             'comment_author_url'   => '',
855 855
             'comment_author_email' => $comment_author_email,
856 856
             'comment_type'         => 'wpinv_note'
857
-        ) ) );
857
+        )));
858 858
 
859
-        do_action( 'wpinv_insert_payment_note', $note_id, $this->ID, $note );
859
+        do_action('wpinv_insert_payment_note', $note_id, $this->ID, $note);
860 860
         
861
-        if ( $customer_type ) {
862
-            add_comment_meta( $note_id, '_wpi_customer_note', 1 );
861
+        if ($customer_type) {
862
+            add_comment_meta($note_id, '_wpi_customer_note', 1);
863 863
 
864
-            do_action( 'wpinv_new_customer_note', array( 'invoice_id' => $this->ID, 'user_note' => $note ) );
864
+            do_action('wpinv_new_customer_note', array('invoice_id' => $this->ID, 'user_note' => $note));
865 865
         }
866 866
 
867 867
         return $note_id;
868 868
     }
869 869
 
870
-    private function increase_subtotal( $amount = 0.00 ) {
870
+    private function increase_subtotal($amount = 0.00) {
871 871
         $amount          = (float) $amount;
872 872
         $this->subtotal += $amount;
873
-        $this->subtotal  = wpinv_round_amount( $this->subtotal );
873
+        $this->subtotal  = wpinv_round_amount($this->subtotal);
874 874
 
875 875
         $this->recalculate_total();
876 876
     }
877 877
 
878
-    private function decrease_subtotal( $amount = 0.00 ) {
878
+    private function decrease_subtotal($amount = 0.00) {
879 879
         $amount          = (float) $amount;
880 880
         $this->subtotal -= $amount;
881
-        $this->subtotal  = wpinv_round_amount( $this->subtotal );
881
+        $this->subtotal  = wpinv_round_amount($this->subtotal);
882 882
 
883
-        if ( $this->subtotal < 0 ) {
883
+        if ($this->subtotal < 0) {
884 884
             $this->subtotal = 0;
885 885
         }
886 886
 
887 887
         $this->recalculate_total();
888 888
     }
889 889
 
890
-    private function increase_fees( $amount = 0.00 ) {
891
-        $amount            = (float)$amount;
890
+    private function increase_fees($amount = 0.00) {
891
+        $amount            = (float) $amount;
892 892
         $this->fees_total += $amount;
893
-        $this->fees_total  = wpinv_round_amount( $this->fees_total );
893
+        $this->fees_total  = wpinv_round_amount($this->fees_total);
894 894
 
895 895
         $this->recalculate_total();
896 896
     }
897 897
 
898
-    private function decrease_fees( $amount = 0.00 ) {
898
+    private function decrease_fees($amount = 0.00) {
899 899
         $amount            = (float) $amount;
900 900
         $this->fees_total -= $amount;
901
-        $this->fees_total  = wpinv_round_amount( $this->fees_total );
901
+        $this->fees_total  = wpinv_round_amount($this->fees_total);
902 902
 
903
-        if ( $this->fees_total < 0 ) {
903
+        if ($this->fees_total < 0) {
904 904
             $this->fees_total = 0;
905 905
         }
906 906
 
@@ -911,56 +911,56 @@  discard block
 block discarded – undo
911 911
         global $wpi_nosave;
912 912
         
913 913
         $this->total = $this->subtotal + $this->tax + $this->fees_total;
914
-        $this->total = wpinv_round_amount( $this->total );
914
+        $this->total = wpinv_round_amount($this->total);
915 915
         
916
-        do_action( 'wpinv_invoice_recalculate_total', $this, $wpi_nosave );
916
+        do_action('wpinv_invoice_recalculate_total', $this, $wpi_nosave);
917 917
     }
918 918
     
919
-    public function increase_tax( $amount = 0.00 ) {
919
+    public function increase_tax($amount = 0.00) {
920 920
         $amount       = (float) $amount;
921 921
         $this->tax   += $amount;
922 922
 
923 923
         $this->recalculate_total();
924 924
     }
925 925
 
926
-    public function decrease_tax( $amount = 0.00 ) {
926
+    public function decrease_tax($amount = 0.00) {
927 927
         $amount     = (float) $amount;
928 928
         $this->tax -= $amount;
929 929
 
930
-        if ( $this->tax < 0 ) {
930
+        if ($this->tax < 0) {
931 931
             $this->tax = 0;
932 932
         }
933 933
 
934 934
         $this->recalculate_total();
935 935
     }
936 936
 
937
-    public function update_status( $new_status = false, $note = '', $manual = false ) {
938
-        $old_status = ! empty( $this->old_status ) ? $this->old_status : get_post_status( $this->ID );
937
+    public function update_status($new_status = false, $note = '', $manual = false) {
938
+        $old_status = !empty($this->old_status) ? $this->old_status : get_post_status($this->ID);
939 939
 
940
-        if ( $old_status === $new_status && in_array( $new_status, array_keys( wpinv_get_invoice_statuses( true ) ) ) ) {
940
+        if ($old_status === $new_status && in_array($new_status, array_keys(wpinv_get_invoice_statuses(true)))) {
941 941
             return false; // Don't permit status changes that aren't changes
942 942
         }
943 943
 
944
-        $do_change = apply_filters( 'wpinv_should_update_invoice_status', true, $this->ID, $new_status, $old_status );
944
+        $do_change = apply_filters('wpinv_should_update_invoice_status', true, $this->ID, $new_status, $old_status);
945 945
         $updated = false;
946 946
 
947
-        if ( $do_change ) {
948
-            do_action( 'wpinv_before_invoice_status_change', $this->ID, $new_status, $old_status );
947
+        if ($do_change) {
948
+            do_action('wpinv_before_invoice_status_change', $this->ID, $new_status, $old_status);
949 949
 
950 950
             $update_post_data                   = array();
951 951
             $update_post_data['ID']             = $this->ID;
952 952
             $update_post_data['post_status']    = $new_status;
953
-            $update_post_data['edit_date']      = current_time( 'mysql', 0 );
954
-            $update_post_data['edit_date_gmt']  = current_time( 'mysql', 1 );
953
+            $update_post_data['edit_date']      = current_time('mysql', 0);
954
+            $update_post_data['edit_date_gmt']  = current_time('mysql', 1);
955 955
             
956
-            $update_post_data = apply_filters( 'wpinv_update_invoice_status_fields', $update_post_data, $this->ID );
956
+            $update_post_data = apply_filters('wpinv_update_invoice_status_fields', $update_post_data, $this->ID);
957 957
 
958
-            $updated = wp_update_post( $update_post_data );
958
+            $updated = wp_update_post($update_post_data);
959 959
             
960 960
             // Status was changed.
961
-            do_action( 'wpinv_status_' . $new_status, $this->ID, $old_status );
962
-            do_action( 'wpinv_status_' . $old_status . '_to_' . $new_status, $this->ID, $old_status );
963
-            do_action( 'wpinv_update_status', $this->ID, $new_status, $old_status );
961
+            do_action('wpinv_status_' . $new_status, $this->ID, $old_status);
962
+            do_action('wpinv_status_' . $old_status . '_to_' . $new_status, $this->ID, $old_status);
963
+            do_action('wpinv_update_status', $this->ID, $new_status, $old_status);
964 964
         }
965 965
 
966 966
         return $updated;
@@ -977,113 +977,113 @@  discard block
 block discarded – undo
977 977
     public function update_meta() {}
978 978
 
979 979
     // get data
980
-    public function get_meta( $meta_key = '_wpinv_payment_meta', $single = true ) {
981
-        $meta = get_post_meta( $this->ID, $meta_key, $single );
980
+    public function get_meta($meta_key = '_wpinv_payment_meta', $single = true) {
981
+        $meta = get_post_meta($this->ID, $meta_key, $single);
982 982
 
983
-        if ( $meta_key === '_wpinv_payment_meta' ) {
983
+        if ($meta_key === '_wpinv_payment_meta') {
984 984
 
985
-            if(!is_array($meta)){$meta = array();} // we need this to be an array so make sure it is.
985
+            if (!is_array($meta)) {$meta = array(); } // we need this to be an array so make sure it is.
986 986
 
987
-            if ( empty( $meta['key'] ) ) {
987
+            if (empty($meta['key'])) {
988 988
                 $meta['key'] = $this->setup_invoice_key();
989 989
             }
990 990
 
991
-            if ( empty( $meta['date'] ) ) {
992
-                $meta['date'] = get_post_field( 'post_date', $this->ID );
991
+            if (empty($meta['date'])) {
992
+                $meta['date'] = get_post_field('post_date', $this->ID);
993 993
             }
994 994
         }
995 995
 
996
-        $meta = apply_filters( 'wpinv_get_invoice_meta_' . $meta_key, $meta, $this->ID );
996
+        $meta = apply_filters('wpinv_get_invoice_meta_' . $meta_key, $meta, $this->ID);
997 997
 
998
-        return apply_filters( 'wpinv_get_invoice_meta', $meta, $this->ID, $meta_key );
998
+        return apply_filters('wpinv_get_invoice_meta', $meta, $this->ID, $meta_key);
999 999
     }
1000 1000
     
1001 1001
     public function get_description() {
1002
-        $post = get_post( $this->ID );
1002
+        $post = get_post($this->ID);
1003 1003
         
1004
-        $description = !empty( $post ) ? $post->post_content : '';
1005
-        return apply_filters( 'wpinv_get_description', $description, $this->ID, $this );
1004
+        $description = !empty($post) ? $post->post_content : '';
1005
+        return apply_filters('wpinv_get_description', $description, $this->ID, $this);
1006 1006
     }
1007 1007
     
1008
-    public function get_status( $nicename = false ) {
1009
-        if ( !$nicename ) {
1008
+    public function get_status($nicename = false) {
1009
+        if (!$nicename) {
1010 1010
             $status = $this->status;
1011 1011
         } else {
1012 1012
             $status = $this->status_nicename;
1013 1013
         }
1014 1014
         
1015
-        return apply_filters( 'wpinv_get_status', $status, $nicename, $this->ID, $this );
1015
+        return apply_filters('wpinv_get_status', $status, $nicename, $this->ID, $this);
1016 1016
     }
1017 1017
     
1018 1018
     public function get_cart_details() {
1019
-        return apply_filters( 'wpinv_cart_details', $this->cart_details, $this->ID, $this );
1019
+        return apply_filters('wpinv_cart_details', $this->cart_details, $this->ID, $this);
1020 1020
     }
1021 1021
     
1022
-    public function get_subtotal( $currency = false ) {
1023
-        $subtotal = wpinv_round_amount( $this->subtotal );
1022
+    public function get_subtotal($currency = false) {
1023
+        $subtotal = wpinv_round_amount($this->subtotal);
1024 1024
         
1025
-        if ( $currency ) {
1026
-            $subtotal = wpinv_price( wpinv_format_amount( $subtotal, NULL, !$currency ), $this->get_currency() );
1025
+        if ($currency) {
1026
+            $subtotal = wpinv_price(wpinv_format_amount($subtotal, NULL, !$currency), $this->get_currency());
1027 1027
         }
1028 1028
         
1029
-        return apply_filters( 'wpinv_get_invoice_subtotal', $subtotal, $this->ID, $this, $currency );
1029
+        return apply_filters('wpinv_get_invoice_subtotal', $subtotal, $this->ID, $this, $currency);
1030 1030
     }
1031 1031
     
1032
-    public function get_total( $currency = false ) {        
1033
-        if ( $this->is_free_trial() ) {
1034
-            $total = wpinv_round_amount( 0 );
1032
+    public function get_total($currency = false) {        
1033
+        if ($this->is_free_trial()) {
1034
+            $total = wpinv_round_amount(0);
1035 1035
         } else {
1036
-            $total = wpinv_round_amount( $this->total );
1036
+            $total = wpinv_round_amount($this->total);
1037 1037
         }
1038
-        if ( $currency ) {
1039
-            $total = wpinv_price( wpinv_format_amount( $total, NULL, !$currency ), $this->get_currency() );
1038
+        if ($currency) {
1039
+            $total = wpinv_price(wpinv_format_amount($total, NULL, !$currency), $this->get_currency());
1040 1040
         }
1041 1041
 
1042
-        return apply_filters( 'wpinv_get_invoice_total', $total, $this->ID, $this, $currency );
1042
+        return apply_filters('wpinv_get_invoice_total', $total, $this->ID, $this, $currency);
1043 1043
     }
1044 1044
 
1045 1045
     public function get_recurring_details() {}
1046 1046
 
1047
-    public function get_final_tax( $currency = false ) {        
1048
-        $final_total = wpinv_round_amount( $this->tax );
1049
-        if ( $currency ) {
1050
-            $final_total = wpinv_price( wpinv_format_amount( $final_total, NULL, !$currency ), $this->get_currency() );
1047
+    public function get_final_tax($currency = false) {        
1048
+        $final_total = wpinv_round_amount($this->tax);
1049
+        if ($currency) {
1050
+            $final_total = wpinv_price(wpinv_format_amount($final_total, NULL, !$currency), $this->get_currency());
1051 1051
         }
1052 1052
         
1053
-        return apply_filters( 'wpinv_get_invoice_final_total', $final_total, $this, $currency );
1053
+        return apply_filters('wpinv_get_invoice_final_total', $final_total, $this, $currency);
1054 1054
     }
1055 1055
     
1056
-    public function get_discounts( $array = false ) {
1056
+    public function get_discounts($array = false) {
1057 1057
         $discounts = $this->discounts;
1058
-        if ( $array && $discounts ) {
1059
-            $discounts = explode( ',', $discounts );
1058
+        if ($array && $discounts) {
1059
+            $discounts = explode(',', $discounts);
1060 1060
         }
1061
-        return apply_filters( 'wpinv_payment_discounts', $discounts, $this->ID, $this, $array );
1061
+        return apply_filters('wpinv_payment_discounts', $discounts, $this->ID, $this, $array);
1062 1062
     }
1063 1063
     
1064
-    public function get_discount( $currency = false, $dash = false ) {
1065
-        if ( !empty( $this->discounts ) ) {
1064
+    public function get_discount($currency = false, $dash = false) {
1065
+        if (!empty($this->discounts)) {
1066 1066
             global $ajax_cart_details;
1067 1067
             $ajax_cart_details = $this->get_cart_details();
1068 1068
             
1069
-            if ( !empty( $ajax_cart_details ) && count( $ajax_cart_details ) == count( $this->items ) ) {
1069
+            if (!empty($ajax_cart_details) && count($ajax_cart_details) == count($this->items)) {
1070 1070
                 $cart_items = $ajax_cart_details;
1071 1071
             } else {
1072 1072
                 $cart_items = $this->items;
1073 1073
             }
1074 1074
 
1075
-            $this->discount = wpinv_get_cart_items_discount_amount( $cart_items , $this->discounts );
1075
+            $this->discount = wpinv_get_cart_items_discount_amount($cart_items, $this->discounts);
1076 1076
         }
1077
-        $discount   = wpinv_round_amount( $this->discount );
1077
+        $discount   = wpinv_round_amount($this->discount);
1078 1078
         $dash       = $dash && $discount > 0 ? '&ndash;' : '';
1079 1079
         
1080
-        if ( $currency ) {
1081
-            $discount = wpinv_price( wpinv_format_amount( $discount, NULL, !$currency ), $this->get_currency() );
1080
+        if ($currency) {
1081
+            $discount = wpinv_price(wpinv_format_amount($discount, NULL, !$currency), $this->get_currency());
1082 1082
         }
1083 1083
         
1084
-        $discount   = $dash . $discount;
1084
+        $discount = $dash . $discount;
1085 1085
         
1086
-        return apply_filters( 'wpinv_get_invoice_discount', $discount, $this->ID, $this, $currency, $dash );
1086
+        return apply_filters('wpinv_get_invoice_discount', $discount, $this->ID, $this, $currency, $dash);
1087 1087
     }
1088 1088
     
1089 1089
     public function get_discount_code() {
@@ -1095,150 +1095,150 @@  discard block
 block discarded – undo
1095 1095
         return (int) $this->disable_taxes === 0;
1096 1096
     }
1097 1097
 
1098
-    public function get_tax( $currency = false ) {
1099
-        $tax = wpinv_round_amount( $this->tax );
1098
+    public function get_tax($currency = false) {
1099
+        $tax = wpinv_round_amount($this->tax);
1100 1100
 
1101
-        if ( $currency ) {
1102
-            $tax = wpinv_price( wpinv_format_amount( $tax, NULL, !$currency ), $this->get_currency() );
1101
+        if ($currency) {
1102
+            $tax = wpinv_price(wpinv_format_amount($tax, NULL, !$currency), $this->get_currency());
1103 1103
         }
1104 1104
 
1105
-        if ( ! $this->is_taxable() ) {
1106
-            $tax = wpinv_round_amount( 0.00 );
1105
+        if (!$this->is_taxable()) {
1106
+            $tax = wpinv_round_amount(0.00);
1107 1107
         }
1108 1108
 
1109
-        return apply_filters( 'wpinv_get_invoice_tax', $tax, $this->ID, $this, $currency );
1109
+        return apply_filters('wpinv_get_invoice_tax', $tax, $this->ID, $this, $currency);
1110 1110
     }
1111 1111
     
1112
-    public function get_fees( $type = 'all' ) {
1113
-        $fees    = array();
1112
+    public function get_fees($type = 'all') {
1113
+        $fees = array();
1114 1114
 
1115
-        if ( ! empty( $this->fees ) && is_array( $this->fees ) ) {
1116
-            foreach ( $this->fees as $fee ) {
1117
-                if( 'all' != $type && ! empty( $fee['type'] ) && $type != $fee['type'] ) {
1115
+        if (!empty($this->fees) && is_array($this->fees)) {
1116
+            foreach ($this->fees as $fee) {
1117
+                if ('all' != $type && !empty($fee['type']) && $type != $fee['type']) {
1118 1118
                     continue;
1119 1119
                 }
1120 1120
 
1121
-                $fee['label'] = stripslashes( $fee['label'] );
1122
-                $fee['amount_display'] = wpinv_price( $fee['amount'], $this->get_currency() );
1123
-                $fees[]    = $fee;
1121
+                $fee['label'] = stripslashes($fee['label']);
1122
+                $fee['amount_display'] = wpinv_price($fee['amount'], $this->get_currency());
1123
+                $fees[] = $fee;
1124 1124
             }
1125 1125
         }
1126 1126
 
1127
-        return apply_filters( 'wpinv_get_invoice_fees', $fees, $this->ID, $this );
1127
+        return apply_filters('wpinv_get_invoice_fees', $fees, $this->ID, $this);
1128 1128
     }
1129 1129
     
1130 1130
     public function get_fees_total() {
1131 1131
         $fees_total = (float) 0.00;
1132 1132
 
1133
-        $payment_fees = isset( $this->payment_meta['fees'] ) ? $this->payment_meta['fees'] : array();
1134
-        if ( ! empty( $payment_fees ) ) {
1135
-            foreach ( $payment_fees as $fee ) {
1133
+        $payment_fees = isset($this->payment_meta['fees']) ? $this->payment_meta['fees'] : array();
1134
+        if (!empty($payment_fees)) {
1135
+            foreach ($payment_fees as $fee) {
1136 1136
                 $fees_total += (float) $fee['amount'];
1137 1137
             }
1138 1138
         }
1139 1139
 
1140
-        return apply_filters( 'wpinv_get_invoice_fees_total', $fees_total, $this->ID, $this );
1140
+        return apply_filters('wpinv_get_invoice_fees_total', $fees_total, $this->ID, $this);
1141 1141
 
1142 1142
     }
1143 1143
 
1144 1144
     public function get_user_id() {
1145
-        return apply_filters( 'wpinv_user_id', $this->user_id, $this->ID, $this );
1145
+        return apply_filters('wpinv_user_id', $this->user_id, $this->ID, $this);
1146 1146
     }
1147 1147
     
1148 1148
     public function get_first_name() {
1149
-        return apply_filters( 'wpinv_first_name', $this->first_name, $this->ID, $this );
1149
+        return apply_filters('wpinv_first_name', $this->first_name, $this->ID, $this);
1150 1150
     }
1151 1151
     
1152 1152
     public function get_last_name() {
1153
-        return apply_filters( 'wpinv_last_name', $this->last_name, $this->ID, $this );
1153
+        return apply_filters('wpinv_last_name', $this->last_name, $this->ID, $this);
1154 1154
     }
1155 1155
     
1156 1156
     public function get_user_full_name() {
1157
-        return apply_filters( 'wpinv_user_full_name', $this->full_name, $this->ID, $this );
1157
+        return apply_filters('wpinv_user_full_name', $this->full_name, $this->ID, $this);
1158 1158
     }
1159 1159
     
1160 1160
     public function get_user_info() {
1161
-        return apply_filters( 'wpinv_user_info', $this->user_info, $this->ID, $this );
1161
+        return apply_filters('wpinv_user_info', $this->user_info, $this->ID, $this);
1162 1162
     }
1163 1163
     
1164 1164
     public function get_email() {
1165
-        return apply_filters( 'wpinv_user_email', $this->email, $this->ID, $this );
1165
+        return apply_filters('wpinv_user_email', $this->email, $this->ID, $this);
1166 1166
     }
1167 1167
     
1168 1168
     public function get_address() {
1169
-        return apply_filters( 'wpinv_address', $this->address, $this->ID, $this );
1169
+        return apply_filters('wpinv_address', $this->address, $this->ID, $this);
1170 1170
     }
1171 1171
     
1172 1172
     public function get_phone() {
1173
-        return apply_filters( 'wpinv_phone', $this->phone, $this->ID, $this );
1173
+        return apply_filters('wpinv_phone', $this->phone, $this->ID, $this);
1174 1174
     }
1175 1175
     
1176 1176
     public function get_number() {
1177
-        return apply_filters( 'wpinv_number', $this->number, $this->ID, $this );
1177
+        return apply_filters('wpinv_number', $this->number, $this->ID, $this);
1178 1178
     }
1179 1179
     
1180 1180
     public function get_items() {
1181
-        return apply_filters( 'wpinv_payment_meta_items', $this->items, $this->ID, $this );
1181
+        return apply_filters('wpinv_payment_meta_items', $this->items, $this->ID, $this);
1182 1182
     }
1183 1183
     
1184 1184
     public function get_key() {
1185
-        return apply_filters( 'wpinv_key', $this->key, $this->ID, $this );
1185
+        return apply_filters('wpinv_key', $this->key, $this->ID, $this);
1186 1186
     }
1187 1187
     
1188 1188
     public function get_transaction_id() {
1189
-        return apply_filters( 'wpinv_get_invoice_transaction_id', $this->transaction_id, $this->ID, $this );
1189
+        return apply_filters('wpinv_get_invoice_transaction_id', $this->transaction_id, $this->ID, $this);
1190 1190
     }
1191 1191
     
1192 1192
     public function get_gateway() {
1193
-        return apply_filters( 'wpinv_gateway', $this->gateway, $this->ID, $this );
1193
+        return apply_filters('wpinv_gateway', $this->gateway, $this->ID, $this);
1194 1194
     }
1195 1195
     
1196 1196
     public function get_gateway_title() {}
1197 1197
     
1198 1198
     public function get_currency() {
1199
-        return apply_filters( 'wpinv_currency_code', $this->currency, $this->ID, $this );
1199
+        return apply_filters('wpinv_currency_code', $this->currency, $this->ID, $this);
1200 1200
     }
1201 1201
     
1202 1202
     public function get_created_date() {
1203
-        return apply_filters( 'wpinv_created_date', $this->date, $this->ID, $this );
1203
+        return apply_filters('wpinv_created_date', $this->date, $this->ID, $this);
1204 1204
     }
1205 1205
     
1206
-    public function get_due_date( $display = false ) {
1207
-        $due_date = apply_filters( 'wpinv_due_date', $this->due_date, $this->ID, $this );
1206
+    public function get_due_date($display = false) {
1207
+        $due_date = apply_filters('wpinv_due_date', $this->due_date, $this->ID, $this);
1208 1208
 
1209
-        if ( ! $display ) {
1209
+        if (!$display) {
1210 1210
             return $due_date;
1211 1211
         }
1212 1212
         
1213
-        return getpaid_format_date( $this->due_date );
1213
+        return getpaid_format_date($this->due_date);
1214 1214
     }
1215 1215
     
1216 1216
     public function get_completed_date() {
1217
-        return apply_filters( 'wpinv_completed_date', $this->completed_date, $this->ID, $this );
1217
+        return apply_filters('wpinv_completed_date', $this->completed_date, $this->ID, $this);
1218 1218
     }
1219 1219
     
1220
-    public function get_invoice_date( $formatted = true ) {
1220
+    public function get_invoice_date($formatted = true) {
1221 1221
         $date_completed = $this->completed_date;
1222 1222
         $invoice_date   = $date_completed != '' && $date_completed != '0000-00-00 00:00:00' ? $date_completed : '';
1223 1223
         
1224
-        if ( $invoice_date == '' ) {
1224
+        if ($invoice_date == '') {
1225 1225
             $date_created   = $this->date;
1226 1226
             $invoice_date   = $date_created != '' && $date_created != '0000-00-00 00:00:00' ? $date_created : '';
1227 1227
         }
1228 1228
         
1229
-        if ( $formatted && $invoice_date ) {
1230
-            $invoice_date   = getpaid_format_date( $invoice_date );
1229
+        if ($formatted && $invoice_date) {
1230
+            $invoice_date = getpaid_format_date($invoice_date);
1231 1231
         }
1232 1232
 
1233
-        return apply_filters( 'wpinv_get_invoice_date', $invoice_date, $formatted, $this->ID, $this );
1233
+        return apply_filters('wpinv_get_invoice_date', $invoice_date, $formatted, $this->ID, $this);
1234 1234
     }
1235 1235
     
1236 1236
     public function get_ip() {
1237
-        return apply_filters( 'wpinv_user_ip', $this->ip, $this->ID, $this );
1237
+        return apply_filters('wpinv_user_ip', $this->ip, $this->ID, $this);
1238 1238
     }
1239 1239
         
1240
-    public function has_status( $status ) {
1241
-        return apply_filters( 'wpinv_has_status', ( is_array( $status ) && in_array( $this->get_status(), $status ) ) || $this->get_status() === $status ? true : false, $this, $status );
1240
+    public function has_status($status) {
1241
+        return apply_filters('wpinv_has_status', (is_array($status) && in_array($this->get_status(), $status)) || $this->get_status() === $status ? true : false, $this, $status);
1242 1242
     }
1243 1243
 
1244 1244
     public function add_item() {}
@@ -1255,66 +1255,66 @@  discard block
 block discarded – undo
1255 1255
 
1256 1256
     public function get_view_url() {}
1257 1257
 
1258
-    public function generate_key( $string = '' ) {
1259
-        $auth_key  = defined( 'AUTH_KEY' ) ? AUTH_KEY : '';
1260
-        return strtolower( md5( $string . date( 'Y-m-d H:i:s' ) . $auth_key . uniqid( 'wpinv', true ) ) );  // Unique key
1258
+    public function generate_key($string = '') {
1259
+        $auth_key = defined('AUTH_KEY') ? AUTH_KEY : '';
1260
+        return strtolower(md5($string . date('Y-m-d H:i:s') . $auth_key . uniqid('wpinv', true))); // Unique key
1261 1261
     }
1262 1262
     
1263 1263
     public function is_recurring() {
1264
-        if ( empty( $this->cart_details ) ) {
1264
+        if (empty($this->cart_details)) {
1265 1265
             return false;
1266 1266
         }
1267 1267
         
1268 1268
         $has_subscription = false;
1269
-        foreach( $this->cart_details as $cart_item ) {
1270
-            if ( !empty( $cart_item['id'] ) && wpinv_is_recurring_item( $cart_item['id'] )  ) {
1269
+        foreach ($this->cart_details as $cart_item) {
1270
+            if (!empty($cart_item['id']) && wpinv_is_recurring_item($cart_item['id'])) {
1271 1271
                 $has_subscription = true;
1272 1272
                 break;
1273 1273
             }
1274 1274
         }
1275 1275
         
1276
-        if ( count( $this->cart_details ) > 1 ) {
1276
+        if (count($this->cart_details) > 1) {
1277 1277
             $has_subscription = false;
1278 1278
         }
1279 1279
 
1280
-        return apply_filters( 'wpinv_invoice_has_recurring_item', $has_subscription, $this->cart_details );
1280
+        return apply_filters('wpinv_invoice_has_recurring_item', $has_subscription, $this->cart_details);
1281 1281
     }
1282 1282
 
1283 1283
     public function is_free_trial() {
1284 1284
         $is_free_trial = false;
1285 1285
         
1286
-        if ( $this->is_parent() && $item = $this->get_recurring( true ) ) {
1287
-            if ( !empty( $item ) && $item->has_free_trial() ) {
1286
+        if ($this->is_parent() && $item = $this->get_recurring(true)) {
1287
+            if (!empty($item) && $item->has_free_trial()) {
1288 1288
                 $is_free_trial = true;
1289 1289
             }
1290 1290
         }
1291 1291
 
1292
-        return apply_filters( 'wpinv_invoice_is_free_trial', $is_free_trial, $this->cart_details, $this );
1292
+        return apply_filters('wpinv_invoice_is_free_trial', $is_free_trial, $this->cart_details, $this);
1293 1293
     }
1294 1294
 
1295 1295
     public function is_initial_free() {}
1296 1296
 
1297
-    public function get_recurring( $object = false ) {
1297
+    public function get_recurring($object = false) {
1298 1298
         $item = NULL;
1299 1299
         
1300
-        if ( empty( $this->cart_details ) ) {
1300
+        if (empty($this->cart_details)) {
1301 1301
             return $item;
1302 1302
         }
1303 1303
         
1304
-        foreach( $this->cart_details as $cart_item ) {
1305
-            if ( !empty( $cart_item['id'] ) && wpinv_is_recurring_item( $cart_item['id'] )  ) {
1304
+        foreach ($this->cart_details as $cart_item) {
1305
+            if (!empty($cart_item['id']) && wpinv_is_recurring_item($cart_item['id'])) {
1306 1306
                 $item = $cart_item['id'];
1307 1307
                 break;
1308 1308
             }
1309 1309
         }
1310 1310
         
1311
-        if ( $object ) {
1312
-            $item = $item ? new WPInv_Item( $item ) : NULL;
1311
+        if ($object) {
1312
+            $item = $item ? new WPInv_Item($item) : NULL;
1313 1313
             
1314
-            apply_filters( 'wpinv_invoice_get_recurring_item', $item, $this );
1314
+            apply_filters('wpinv_invoice_get_recurring_item', $item, $this);
1315 1315
         }
1316 1316
 
1317
-        return apply_filters( 'wpinv_invoice_get_recurring_item_id', $item, $this );
1317
+        return apply_filters('wpinv_invoice_get_recurring_item_id', $item, $this);
1318 1318
     }
1319 1319
 
1320 1320
     public function get_subscription_name() {}
@@ -1322,7 +1322,7 @@  discard block
 block discarded – undo
1322 1322
     public function get_subscription_id() {}
1323 1323
 
1324 1324
     public function is_parent() {
1325
-        return ! empty( $this->parent_invoice );
1325
+        return !empty($this->parent_invoice);
1326 1326
     }
1327 1327
 
1328 1328
     public function is_renewal() {}
@@ -1336,8 +1336,8 @@  discard block
 block discarded – undo
1336 1336
     public function is_refunded() {}
1337 1337
 
1338 1338
     public function is_free() {
1339
-        $total = (float) wpinv_round_amount( $this->get_total() );
1340
-        return $total > 0 && ! $this->is_recurring();
1339
+        $total = (float) wpinv_round_amount($this->get_total());
1340
+        return $total > 0 && !$this->is_recurring();
1341 1341
     }
1342 1342
 
1343 1343
     public function has_vat() {}
Please login to merge, or discard this patch.