Completed
Push — master ( ef12b3...43e73e )
by Yannick
07:02
created
require/class.NOTAM.php 4 patches
Indentation   +942 added lines, -942 removed lines patch added patch discarded remove patch
@@ -7,964 +7,964 @@
 block discarded – undo
7 7
 class NOTAM {
8 8
 	public $db;
9 9
 	private $abbr = array(
10
-	                    'A/A' => 'Air-to-air',
11
-	                    'A/G' => 'Air-to-ground',
12
-	                    'AAL' => 'Above Aerodrome Level',
13
-	                    'ABM' => 'Abeam',
14
-	                    'ABN' => 'Aerodrome Beacon',
15
-	                    'ABT' => 'About',
16
-	                    'ABV' => 'Above',
17
-	                    'ACC' => 'Area Control',
18
-	                    'ACFT' => 'Aircraft',
19
-	                    'ACK' => 'Acknowledge',
20
-	                    'ACL' => 'Altimeter Check Location',
21
-	                    'ACN' => 'Aircraft Classification Number',
22
-	                    'ACPT' => 'Accepted',
23
-	                    'ACT' => 'Active',
24
-	                    'AD' => 'Aerodrome',
25
-	                    'ADA' => 'Advisory Area',
26
-	                    'ADC' => 'Aerodrome Chart',
27
-	                    'ADDN' => 'Additional',
28
-	                    'ADIZ' => 'Air defense identification zone',
29
-	                    'ADJ' => 'Adjacent',
30
-	                    'ADR' => 'Advisory Route',
31
-	                    'ADS' => 'Automatic Dependent Surveillance',
32
-	                    'ADVS' => 'Advisory Service',
33
-	                    'ADZ' => 'Advised',
34
-	                    'AFIL' => 'Flight Plan Filed In The Air',
35
-	                    'AFIS' => 'Airport flight information service',
36
-	                    'AFM' => 'Affirm',
37
-	                    'AFT' => 'After',
38
-	                    'AGA' => 'Aerodromes, Air Routes and Ground Aids',
39
-	                    'AGN' => 'Again',
40
-	                    'AIS' => 'Aeronautical information service',
41
-	                    'ALERFA' => 'Alert Phase',
42
-	                    'ALRS' => 'Alerting Service',
43
-	                    'ALS' => 'Approach Lighting System',
44
-	                    'ALT' => 'Altitude',
45
-	                    'ALTN' => 'Alternate',
46
-	                    'AMA' => 'Area Minimum Altitude',
47
-	                    'ANC' => 'Aeronautical Chart',
48
-	                    'ANCS' => 'Aeronautical Navigation Chart',
49
-	                    'ANS' => 'Answer',
50
-	                    'AOC' => 'Aerodrome Obstacle Chart',
51
-	                    'AP' => 'Airport',
52
-	                    'APCH' => 'Approach',
53
-	                    'APDC' => 'Aircraft Parking/docking Chart',
54
-	                    'APN' => 'Apron',
55
-	                    'APNS' => 'Aprons',
56
-	                    'APP' => 'Approach Control',
57
-	                    'APR' => 'April',
58
-	                    'APRX' => 'Approximately',
59
-	                    'APSG' => 'After Passing',
60
-	                    'APV' => 'Approved',
61
-	                    'ARC' => 'Area Chart',
62
-	                    'ARNG' => 'Arrange',
63
-	                    'ARO' => 'Air Traffic Services Reporting Office',
64
-	                    'ARP' => 'Aerodrome Reference Point',
65
-	                    'ARR' => 'Arriving',
66
-	                    'ARST' => 'Arresting',
67
-	                    'ASC' => 'Ascend To',
68
-	                    'ASDA' => 'Accelerate-Stop Distance Available',
69
-	                    'ASPEEDG' => 'Airspeed Gain',
70
-	                    'ASPEEDL' => 'Airspeed Loss',
71
-	                    'ASPH' => 'Asphalt',
72
-	                    'ATA' => 'Actual Time of Arrival',
73
-	                    'ATD' => 'Actual Time of Departure',
74
-	                    'ATFM' => 'Air Traffic Flow Management',
75
-	                    'ATIS' => 'Automatic terminal information service',
76
-	                    'ATM' => 'Air Traffic Management',
77
-	                    'ATP' => 'At',
78
-	                    'ATTN' => 'Attention',
79
-	                    'ATZ' => 'Aerodrome Traffic Zone',
80
-	                    'AUG' => 'August',
81
-	                    'AUTH' => 'Authorization',
82
-	                    'AUW' => 'All Up Weight',
83
-	                    'AUX' => 'Auxiliary',
84
-	                    'AVBL' => 'Available',
85
-	                    'AVG' => 'Average',
86
-	                    'AVGAS' => 'Aviation Gasoline',
87
-	                    'AWTA' => 'Advise At What Time Able',
88
-	                    'AWY' => 'Airway',
89
-	                    'AWYS' => 'Airways',
90
-	                    'AZM' => 'Azimuth',
91
-	                    'BA' => 'Braking Action',
92
-	                    'BCN' => 'Beacon',
93
-	                    'BCST' => 'Broadcast',
94
-	                    'BDRY' => 'Boundary',
95
-	                    'BFR' => 'Before',
96
-	                    'BLDG' => 'Building',
97
-	                    'BLO' => 'Below Clouds',
98
-	                    'BLW' => 'Below',
99
-	                    'BRF' => 'Short',
100
-	                    'BRG' => 'Bearing',
101
-	                    'BRKG' => 'Breaking',
102
-	                    'BTL' => 'Between Layers',
103
-	                    'BTN' => 'Between',
104
-	                    'CD' => 'Candela',
105
-	                    'CDN' => 'Coordination',
106
-	                    'CF' => 'Change Frequency To',
107
-	                    'CFM' => 'Confirm',
108
-	                    'CGL' => 'Circling Guidance Light(s)',
109
-	                    'CH' => 'Channel',
110
-	                    'CHG' => 'Changed',
111
-	                    'CIT' => 'Near or Over Large Towns',
112
-	                    'CIV' => 'Civil',
113
-	                    'CK' => 'Check',
114
-	                    'CL' => 'Centre Line',
115
-	                    'CLBR' => 'Calibration',
116
-	                    'CLD' => 'Cloud',
117
-	                    'CLG' => 'Calling',
118
-	                    'CLIMB-OUT' => 'Climb-out Area',
119
-	                    'CLR' => 'Clearance',
120
-	                    'CLRD' => 'Cleared',
121
-	                    'CLSD' => 'Closed',
122
-	                    'CMB' => 'Climb',
123
-	                    'CMPL' => 'Complete',
124
-	                    'CNL' => 'Cancel',
125
-	                    'CNS' => 'Communications, Navigation And Surveillance',
126
-	                    'COM' => 'Communications',
127
-	                    'CONC' => 'Concrete',
128
-	                    'COND' => 'Condition',
129
-	                    'CONS' => 'Continuous',
130
-	                    'CONST' => 'Construction',
131
-	                    'CONT' => 'Continued',
132
-	                    'COOR' => 'Coordination',
133
-	                    'COORD' => 'Coordinates',
134
-	                    'COP' => 'Change-over Point',
135
-	                    'COR' => 'Correction',
136
-	                    'COT' => 'At The Coast',
137
-	                    'COV' => 'Covered',
138
-	                    'CPDLC' => 'Controller-pilot Data Link Communications',
139
-	                    'CPL' => 'Current Flight Plan',
140
-	                    'CRC' => 'Cyclic Redundancy Check',
141
-	                    'CRZ' => 'Cruise',
142
-	                    'CTA' => 'Control area',
143
-	                    'CTAM' => 'Climb To And Maintain',
144
-	                    'CTC' => 'Contact',
145
-	                    'CTL' => 'Control',
146
-	                    'CTN' => 'Caution',
147
-	                    'CTR' => 'Control Zone',
148
-	                    'CVR' => 'Cockpit Voice Recorder',
149
-	                    'CW' => 'Continuous Wave',
150
-	                    'CWY' => 'Clearway',
151
-	                    'DA' => 'Decision Altitude',
152
-	                    'DCKG' => 'Docking',
153
-	                    'DCP' => 'Datum Crossing Point',
154
-	                    'DCPC' => 'Direct Controller-pilot Communications',
155
-	                    'DCT' => 'Direct',
156
-	                    'DEC' => 'December',
157
-	                    'DEG' => 'Degrees',
158
-	                    'DEP' => 'Departing',
159
-	                    'DES' => 'Descend',
160
-	                    'DEST' => 'Destination',
161
-	                    'DETRESFA' => 'Distress Phase',
162
-	                    'DEV' => 'Deviating',
163
-	                    'DFDR' => 'Digital Flight Data Recorder',
164
-	                    'DFTI' => 'Distance From Touchdown Indicator',
165
-	                    'DH' => 'Decision Height',
166
-	                    'DIP' => 'Diffuse',
167
-	                    'DIST' => 'Distance',
168
-	                    'DIV' => 'Divert',
169
-	                    'DLA' => 'Delay',
170
-	                    'DLY' => 'Daily',
171
-	                    'DME' => 'Distance measuring equipment',
172
-	                    'DNG' => 'Dangerous',
173
-	                    'DOM' => 'Domestic',
174
-	                    'DPT' => 'Depth',
175
-	                    'DR' => 'Dead Reckoning',
176
-	                    'DRG' => 'During',
177
-	                    'DTAM' => 'Descend To And Maintain',
178
-	                    'DTG' => 'Date-time Group',
179
-	                    'DTHR' => 'Displaced Runway Threshold',
180
-	                    'DTRT' => 'Deteriorating',
181
-	                    'DTW' => 'Dual Tandem Wheels',
182
-	                    'DUPE' => 'This Is A Duplicate Message',
183
-	                    'DUR' => 'Duration',
184
-	                    'DVOR' => 'Doppler VOR',
185
-	                    'DW' => 'Dual Wheels',
186
-	                    'EAT' => 'Expected Approach Time',
187
-	                    'EB' => 'Eastbound',
188
-	                    'EDA' => 'Elevation Differential Area',
189
-	                    'EET' => 'Estimated Elapsed Time',
190
-	                    'EFC' => 'Expect Further Clearance',
191
-	                    'ELBA' => 'Emergency Location Beacon',
192
-	                    'ELEV' => 'Elevation',
193
-	                    'ELR' => 'Extra Long Range',
194
-	                    'EM' => 'Emission',
195
-	                    'EMERG' => 'Emergency',
196
-	                    'END' => 'Stop-end',
197
-	                    'ENE' => 'East-north-east',
198
-	                    'ENG' => 'Engine',
199
-	                    'ENR' => 'En-route',
200
-	                    'ENRC' => 'En-route Chart',
201
-	                    'EOBT' => 'Estimated Off-block Time',
202
-	                    'EQPT' => 'Equipment',
203
-	                    'ER' => 'Here',
204
-	                    'ESE' => 'East-south-east',
205
-	                    'EST' => 'Estimate',
206
-	                    'ETA' => 'Estimated Time Of Arrival',
207
-	                    'ETD' => 'Estimated Time Of Departure',
208
-	                    'ETO' => 'Estimated Time Over Significant Point',
209
-	                    'EV' => 'Every',
210
-	                    'EXC' => 'Except',
211
-	                    'EXER' => 'Exercise',
212
-	                    'EXP' => 'Expect',
213
-	                    'EXTD' => 'Extend',
214
-	                    'FAC' => 'Facilities',
215
-	                    'FAF' => 'Final Approach Fix',
216
-	                    'FAL' => 'Facilitation of International Airtransport',
217
-	                    'FAP' => 'Final Approach Point',
218
-	                    'FATO' => 'Final Approach And Take-off Area',
219
-	                    'FAX' => 'Fax',
220
-	                    'FBL' => 'Light',
221
-	                    'FCST' => 'Forecast',
222
-	                    'FCT' => 'Friction Coefficient',
223
-	                    'FDPS' => 'Flight Data Processing System',
224
-	                    'FEB' => 'February',
225
-	                    'FIR' => 'Flight information region',
226
-	                    'FIS' => 'Flight information service',
227
-	                    'FLD' => 'Field',
228
-	                    'FLG' => 'Flashing',
229
-	                    'FLR' => 'Flares',
230
-	                    'FLT' => 'Flight',
231
-	                    'FLTS' => 'Flights',
232
-	                    'FLTCK' => 'Flight Check',
233
-	                    'FLUC' => 'Fluctuating',
234
-	                    'FLW' => 'Follow(s)',
235
-	                    'FLY' => 'Fly',
236
-	                    'FM' => 'From',
237
-	                    'FMS' => 'Flight Management System',
238
-	                    'FMU' => 'Flow Management Unit',
239
-	                    'FNA' => 'Final Approach',
240
-	                    'FPAP' => 'Flight Path Alignment Point',
241
-	                    'FPL' => 'Flight Plan',
242
-	                    'FPLS' => 'Flight Plans',
243
-	                    'FPM' => 'Feet Per Minute',
244
-	                    'FPR' => 'Flight Plan Route',
245
-	                    'FR' => 'Fuel Remaining',
246
-	                    'FREQ' => 'Frequency',
247
-	                    'FRI' => 'Friday',
248
-	                    'FRMG' => 'Missile, gun or rocket firing',
249
-	                    'FRNG' => 'Firing',
250
-	                    'FRONT' => 'Front',
251
-	                    'FRQ' => 'Frequent',
252
-	                    'FSL' => 'Full Stop Landing',
253
-	                    'FSS' => 'Flight Service Station',
254
-	                    'FST' => 'First',
255
-	                    'FTP' => 'Fictitious Threshold Point',
256
-	                    'G/A' => 'Ground-to-air',
257
-	                    'G/A/G' => 'Ground-to-air and Air-to-ground',
258
-	                    'GARP' => 'GBAS Azimuth Reference Point',
259
-	                    'GBAS' => 'Ground-based Augmentation System',
260
-	                    'GCAJ' => 'Ground Controlled Approach',
261
-	                    'GCA' => 'Ground Controlled Approach System',
262
-	                    'GEN' => 'General',
263
-	                    'GEO' => 'Geographic or True',
264
-	                    'GES' => 'Ground Earth Station',
265
-	                    'GLD' => 'Glider',
266
-	                    'GMC' => 'Ground Movement Chart',
267
-	                    'GND' => 'Ground',
268
-	                    'GNDCK' => 'Ground Check',
269
-	                    'GP' => 'Glide Path',
270
-	                    'GRASS' => 'Grass landing area',
271
-	                    'GRVL' => 'Gravel',
272
-	                    'GUND' => 'Geoid Undulation',
273
-	                    'H24' => '24 Hours',
274
-	                    'HAPI' => 'Helicopter Approach Path Indicator',
275
-	                    'HBN' => 'Hazard Beacon',
276
-	                    'HDG' => 'Heading',
277
-	                    'HEL' => 'Helicopter',
278
-	                    'HGT' => 'Height',
279
-	                    'HJ' => 'Sunrise to Sunset',
280
-	                    'HLDG' => 'Holding',
281
-	                    'HN' => 'Sunset to Sunrise',
282
-	                    'HO' => 'Service Available To Meet Operational Requirements',
283
-	                    'HOL' => 'Holiday',
284
-	                    'HOSP' => 'Hospital Aircraft',
285
-	                    'HOT' => 'Height',
286
-	                    'HPA' => 'Hectopascal',
287
-	                    'HR' => 'Hours',
288
-	                    'HRS' => 'Hours',
289
-	                    'HS' => 'Service Available During Hours Of Scheduled Operations',
290
-	                    'HURCN' => 'Hurricane',
291
-	                    'HVY' => 'Heavy',
292
-	                    'HX' => 'No Specific Working Hours',
293
-	                    'HYR' => 'Higher',
294
-	                    'IAC' => 'Instrument Approach Chart',
295
-	                    'IAF' => 'Initial Approach Fix',
296
-	                    'IAO' => 'In And Out Of Clouds',
297
-	                    'IAP' => 'Instrument Approach Procedure',
298
-	                    'IAR' => 'Intersection Of Air Routes',
299
-	                    'IBN' => 'Identification Beacon',
300
-	                    'ID' => 'Identifier',
301
-	                    'IDENT' => 'Identification',
302
-	                    'IFF' => 'Identification Friend/Foe',
303
-	                    'IGA' => 'International General Aviation',
304
-	                    'IM' => 'Inner Marker',
305
-	                    'IMPR' => 'Improving',
306
-	                    'IMT' => 'Immediately',
307
-	                    'INA' => 'Initial Approach',
308
-	                    'INBD' => 'Inbound',
309
-	                    'INCERFA' => 'Uncertainty Phase',
310
-	                    'INFO' => 'Information',
311
-	                    'INOP' => 'Inoperative',
312
-	                    'INP' => 'If Not Possible',
313
-	                    'INPR' => 'In Progress',
314
-	                    'INSTL' => 'Installation',
315
-	                    'INSTR' => 'Instrument',
316
-	                    'INT' => 'Intersection',
317
-	                    'INTS' => 'Intersections',
318
-	                    'INTL' => 'International',
319
-	                    'INTRG' => 'Interrogator',
320
-	                    'INTRP' => 'Interruption',
321
-	                    'INTSF' => 'Intensifying',
322
-	                    'INTST' => 'Intensity',
323
-	                    'ISA' => 'International Standard Atmosphere',
324
-	                    'JAN' => 'January',
325
-	                    'JTST' => 'Jet stream',
326
-	                    'JUL' => 'July',
327
-	                    'JUN' => 'June',
328
-	                    'KMH' => 'Kilometres Per Hour',
329
-	                    'KPA' => 'Kilopascal',
330
-	                    'KT' => 'Knots',
331
-	                    'KW' => 'Kilowatts',
332
-	                    'LAN' => 'Inland',
333
-	                    'LAT' => 'Latitude',
334
-	                    'LDA' => 'Landing Distance Available',
335
-	                    'LDAH' => 'Landing Distance Available, Helicopter',
336
-	                    'LDG' => 'Landing',
337
-	                    'LDI' => 'Landing Direction Indicator',
338
-	                    'LEN' => 'Length',
339
-	                    'LGT' => 'Lighting',
340
-	                    'LGTD' => 'Lighted',
341
-	                    'LIH' => 'Light Intensity High',
342
-	                    'LIL' => 'Light Intensity Low',
343
-	                    'LIM' => 'Light Intensity Medium',
344
-	                    'LLZ' => 'Localizer',
345
-	                    'LM' => 'Locator, Middle',
346
-	                    'LMT' => 'Local Mean Time',
347
-	                    'LNG' => 'Long',
348
-	                    'LO' => 'Locator, Outer',
349
-	                    'LOG' => 'Located',
350
-	                    'LONG' => 'Longitude',
351
-	                    'LRG' => 'Long Range',
352
-	                    'LTD' => 'Limited',
353
-	                    'LTP' => 'Landing Threshold Point',
354
-	                    'LVE' => 'Leaving',
355
-	                    'LVL' => 'Level',
356
-	                    'LYR' => 'Layer',
357
-	                    'MAA' => 'Maximum Authorized Altitude',
358
-	                    'MAG' => 'Magnetic',
359
-	                    'MAINT' => 'Maintenance',
360
-	                    'MAP' => 'Aeronautical Maps and Charts',
361
-	                    'MAPT' => 'Missed Approach Point',
362
-	                    'MAR' => 'March',
363
-	                    'MAX' => 'Maximum',
364
-	                    'MAY' => 'May',
365
-	                    'MBST' => 'Microburst',
366
-	                    'MCA' => 'Minimum Crossing Altitude',
367
-	                    'MCW' => 'Modulated Continuous Wave',
368
-	                    'MDA' => 'Minimum Descent Altitude',
369
-	                    'MDH' => 'Minimum Descent Height',
370
-	                    'MEA' => 'Minimum En-route Altitude',
371
-	                    'MEHT' => 'Minimum Eye Height Over Threshold',
372
-	                    'MET' => 'Meteorological',
373
-	                    'MID' => 'Mid-point',
374
-	                    'MIL' => 'Military',
375
-	                    'MIN' => 'Minutes',
376
-	                    'MKR' => 'Marker Radio Beacon',
377
-	                    'MLS' => 'Microwave Landing System',
378
-	                    'MM' => 'Middle Marker',
379
-	                    'MNM' => 'Minimum',
380
-	                    'MNPS' => 'Minimum Navigation Performance Specifications',
381
-	                    'MNT' => 'Monitor',
382
-	                    'MNTN' => 'Maintain',
383
-	                    'MOA' => 'Military Operating Area',
384
-	                    'MOC' => 'Minimum Obstacle Clearance',
385
-	                    'MOD' => 'Moderate',
386
-	                    'MON' => 'Monday',
387
-	                    'MOPS' => 'Minimum Operational Performance Standards',
388
-	                    'MOV' => 'Movement',
389
-	                    'MRA' => 'Minimum Reception Altitude',
390
-	                    'MRG' => 'Medium Range',
391
-	                    'MRP' => 'ATS/MET Reporting Point',
392
-	                    'MS' => 'Minus',
393
-	                    'MSA' => 'Minimum Sector Altitude',
394
-	                    'MSAW' => 'Minimum Safe Altitude Warning',
395
-	                    'MSG' => 'Message',
396
-	                    'MSSR' => 'Monopulse Secondary Surveillance Radar',
397
-	                    'MT' => 'Mountain',
398
-	                    'MTU' => 'Metric Units',
399
-	                    'MTW' => 'Mountain Waves',
400
-	                    'NASC' => 'National AIS System Centre',
401
-	                    'NAT' => 'North Atlantic',
402
-	                    'NAV' => 'Navigation',
403
-	                    'NB' => 'Northbound',
404
-	                    'NBFR' => 'Not Before',
405
-	                    'NE' => 'North-east',
406
-	                    'NEB' => 'North-eastbound',
407
-	                    'NEG' => 'Negative',
408
-	                    'NGT' => 'Night',
409
-	                    'NIL' => 'None',
410
-	                    'NML' => 'Normal',
411
-	                    'NNE' => 'North-north-east',
412
-	                    'NNW' => 'North-north-west',
413
-	                    'NOF' => 'International NOTAM Office',
414
-	                    'NOV' => 'November',
415
-	                    'NOZ' => 'Normal Operating Zone',
416
-	                    'NR' => 'Number',
417
-	                    'NRH' => 'No Reply Heard',
418
-	                    'NTL' => 'National',
419
-	                    'NTZ' => 'No Transgression Zone',
420
-	                    'NW' => 'North-west',
421
-	                    'NWB' => 'North-westbound',
422
-	                    'NXT' => 'Next',
423
-	                    'O/R' => 'On Request',
424
-	                    'OAC' => 'Oceanic Area Control Centre',
425
-	                    'OAS' => 'Obstacle Assessment Surface',
426
-	                    'OBS' => 'Observe',
427
-	                    'OBST' => 'Obstacle',
428
-	                    'OBSTS' => 'Obstacles',
429
-	                    'OCA' => 'Oceanic Control Area',
430
-	                    'OCH' => 'Obstacle Clearance Height',
431
-	                    'OCL' => 'Obstacle Clearance Limit',
432
-	                    'OCS' => 'Obstacle Clearance Surface',
433
-	                    'OCT' => 'October',
434
-	                    'OFZ' => 'Obstacle Free Zone',
435
-	                    'OGN' => 'Originate',
436
-	                    'OHD' => 'Overhead',
437
-	                    'OM' => 'Outer Marker',
438
-	                    'OPC' => 'Control Indicated Is Operational Control',
439
-	                    'OPMET' => 'Operational Meteorological',
440
-	                    'OPN' => 'Open',
441
-	                    'OPR' => 'Operate',
442
-	                    'OPS' => 'Operations',
443
-	                    'ORD' => 'Order',
444
-	                    'OSV' => 'Ocean Station Vessel',
445
-	                    'OTLK' => 'Outlook',
446
-	                    'OTP' => 'On Top',
447
-	                    'OTS' => 'Organized Track System',
448
-	                    'OUBD' => 'Outbound',
449
-	                    'PA' => 'Precision Approach',
450
-	                    'PALS' => 'Precision Approach Lighting System',
451
-	                    'PANS' => 'Procedures for Air Navigation Services',
452
-	                    'PAR' => 'Precision Approach Radar',
453
-	                    'PARL' => 'Parallel',
454
-	                    'PATC' => 'Precision Approach Terrain Chart',
455
-	                    'PAX' => 'Passenger(s)',
456
-	                    'PCD' => 'Proceed',
457
-	                    'PCL' => 'Pilot-controlled Lighting',
458
-	                    'PCN' => 'Pavement Classification Number',
459
-	                    'PDC' => 'Pre-departure Clearance',
460
-	                    'PDG' => 'Procedure Design Gradient',
461
-	                    'PER' => 'Performance',
462
-	                    'PERM' => 'Permanent',
463
-	                    'PIB' => 'Pre-flight Information Bulletin',
464
-	                    'PJE' => 'Parachute Jumping Exercise',
465
-	                    'PLA' => 'Practice Low Approach',
466
-	                    'PLN' => 'Flight Plan',
467
-	                    'PLVL' => 'Present Level',
468
-	                    'PN' => 'Prior Notice Required',
469
-	                    'PNR' => 'Point Of No Return',
470
-	                    'POB' => 'Persons On Board',
471
-	                    'POSS' => 'Possible',
472
-	                    'PPI' => 'Plan Position Indicator',
473
-	                    'PPR' => 'Prior Permission Required',
474
-	                    'PPSN' => 'Present Position',
475
-	                    'PRI' => 'Primary',
476
-	                    'PRKG' => 'Parking',
477
-	                    'PROB' => 'Probability',
478
-	                    'PROC' => 'Procedure',
479
-	                    'PROV' => 'Provisional',
480
-	                    'PS' => 'Plus',
481
-	                    'PSG' => 'Passing',
482
-	                    'PSN' => 'Position',
483
-	                    'PSNS' => 'Positions',
484
-	                    'PSR' => 'Primary Surveillance Radar',
485
-	                    'PSYS' => 'Pressure System(s)',
486
-	                    'PTN' => 'Procedure Turn',
487
-	                    'PTS' => 'Polar Track Structure',
488
-	                    'PWR' => 'Power',
489
-	                    'QUAD' => 'Quadrant',
490
-	                    'RAC' => 'Rules of The Air and Air Traffic Services',
491
-	                    'RAG' => 'Runway Arresting Gear',
492
-	                    'RAI' => 'Runway Alignment Indicator',
493
-	                    'RASC' => 'Regional AIS System Centre',
494
-	                    'RASS' => 'Remote Altimeter Setting Source',
495
-	                    'RB' => 'Rescue Boat',
496
-	                    'RCA' => 'Reach Cruising Altitude',
497
-	                    'RCC' => 'Rescue Coordination Centre',
498
-	                    'RCF' => 'Radiocommunication Failure',
499
-	                    'RCH' => 'Reaching',
500
-	                    'RCL' => 'Runway Centre Line',
501
-	                    'RCLL' => 'Runway Centre Line Light(s)',
502
-	                    'RCLR' => 'Recleared',
503
-	                    'RDH' => 'Reference Datum Height',
504
-	                    'RDL' => 'Radial',
505
-	                    'RDO' => 'Radio',
506
-	                    'RE' => 'Recent',
507
-	                    'REC' => 'Receiver',
508
-	                    'REDL' => 'Runway Edge Light(s)',
509
-	                    'REF' => 'Refer To',
510
-	                    'REG' => 'Registration',
511
-	                    'RENL' => 'Runway End Light(s)',
512
-	                    'REP' => 'Report',
513
-	                    'REQ' => 'Requested',
514
-	                    'RERTE' => 'Re-route',
515
-	                    'RESA' => 'Runway End Safety Area',
516
-	                    'RG' => 'Range (lights)',
517
-	                    'RHC' => 'Right-hand Circuit',
518
-	                    'RIF' => 'Reclearance In Flight',
519
-	                    'RITE' => 'Right',
520
-	                    'RL' => 'Report Leaving',
521
-	                    'RLA' => 'Relay To',
522
-	                    'RLCE' => 'Request Level Change En Route',
523
-	                    'RLLS' => 'Runway Lead-in Lighting System',
524
-	                    'RLNA' => 'Request Level Not Available',
525
-	                    'RMAC' => 'Radar Minimum Altitude Chart',
526
-	                    'RMK' => 'Remark',
527
-	                    'RNG' => 'Radio Range',
528
-	                    'RNP' => 'Required Navigation Performance',
529
-	                    'ROC' => 'Rate Of Climb',
530
-	                    'ROD' => 'Rate Of Descent',
531
-	                    'ROFOR' => 'Route Forecast',
532
-	                    'RON' => 'Receiving Only',
533
-	                    'RPI' => 'Radar Position Indicator',
534
-	                    'RPL' => 'Repetitive Flight Plan',
535
-	                    'RPLC' => 'Replaced',
536
-	                    'RPS' => 'Radar Position Symbol',
537
-	                    'RQMNTS' => 'Requirements',
538
-	                    'RQP' => 'Request Flight Plan',
539
-	                    'RQS' => 'Request Supplementary Flight Plan',
540
-	                    'RR' => 'Report Reaching',
541
-	                    'RSC' => 'Rescue Sub-centre',
542
-	                    'RSCD' => 'Runway Surface Condition',
543
-	                    'RSP' => 'Responder Beacon',
544
-	                    'RSR' => 'En-route Surveillance Radar',
545
-	                    'RTE' => 'Route',
546
-	                    'RTES' => 'Routes',
547
-	                    'RTF' => 'Radiotelephone',
548
-	                    'RTG' => 'Radiotelegraph',
549
-	                    'RTHL' => 'Runway Threshold Light(s)',
550
-	                    'RTN' => 'Return',
551
-	                    'RTODAH' => 'Rejected Take-off Distance Available, Helicopter',
552
-	                    'RTS' => 'Return To Service',
553
-	                    'RTT' => 'Radioteletypewriter',
554
-	                    'RTZL' => 'Runway Touchdown Zone Light(s)',
555
-	                    'RUT' => 'Standard Regional Route Transmitting Frequencies',
556
-	                    'RV' => 'Rescue Vessel',
557
-	                    'RVSM' => 'Reduced Vertical Separation Minimum',
558
-	                    'RWY' => 'Runway',
559
-	                    'RWYS' => 'Runways',
560
-	                    'SALS' => 'Simple Approach Lighting System',
561
-	                    'SAN' => 'Sanitary',
562
-	                    'SAP' => 'As Soon As Possible',
563
-	                    'SAR' => 'Search and Rescue',
564
-	                    'SARPS' => 'Standards and Recommended Practices',
565
-	                    'SAT' => 'Saturday',
566
-	                    'SATCOM' => 'Satellite Communication',
567
-	                    'SB' => 'Southbound',
568
-	                    'SBAS' => 'Satellite-based Augmentation System',
569
-	                    'SDBY' => 'Stand by',
570
-	                    'SE' => 'South-east',
571
-	                    'SEA' => 'Sea',
572
-	                    'SEB' => 'South-eastbound',
573
-	                    'SEC' => 'Seconds',
574
-	                    'SECN' => 'Section',
575
-	                    'SECT' => 'Sector',
576
-	                    'SELCAL' => 'Selective calling system',
577
-	                    'SEP' => 'September',
578
-	                    'SER' => 'Service',
579
-	                    'SEV' => 'Severe',
580
-	                    'SFC' => 'Surface',
581
-	                    'SGL' => 'Signal',
582
-	                    'SID' => 'Standard Instrument Departure',
583
-	                    'SIF' => 'Selective Identification Feature',
584
-	                    'SIG' => 'Significant',
585
-	                    'SIMUL' => 'Simultaneous',
586
-	                    'SKED' => 'Schedule',
587
-	                    'SLP' => 'Speed Limiting Point',
588
-	                    'SLW' => 'Slow',
589
-	                    'SMC' => 'Surface Movement Control',
590
-	                    'SMR' => 'Surface Movement Radar',
591
-	                    'SPL' => 'Supplementary Flight Plan',
592
-	                    'SPOC' => 'SAR Point Of Contact',
593
-	                    'SPOT' => 'Spot Wind',
594
-	                    'SR' => 'Sunrise',
595
-	                    'SRA' => 'Surveillance Radar Approach',
596
-	                    'SRE' => 'Surveillance Radar Element Of Precision Approach Radar System',
597
-	                    'SRG' => 'Short Range',
598
-	                    'SRR' => 'Search and Rescue Region',
599
-	                    'SRY' => 'Secondary',
600
-	                    'SS' => 'Sunset',
601
-	                    'SSE' => 'South-south-east',
602
-	                    'SSR' => 'Secondary Surveillance Radar',
603
-	                    'SST' => 'Supersonic Transport',
604
-	                    'SSW' => 'South-south-west',
605
-	                    'STA' => 'Straight-in Approach',
606
-	                    'STAR' => 'Standard Instrument Arrival',
607
-	                    'STD' => 'Standard',
608
-	                    'STN' => 'Station',
609
-	                    'STNR' => 'Stationary',
610
-	                    'STOL' => 'Short Take-off and Landing',
611
-	                    'STS' => 'Status',
612
-	                    'STWL' => 'Stopway Light(s)',
613
-	                    'SUBJ' => 'Subject To',
614
-	                    'SUN' => 'Sunday',
615
-	                    'SUP' => 'Supplement',
616
-	                    'SUPPS' => 'Regional Supplementary Procedures Service Message',
617
-	                    'SVCBL' => 'Serviceable',
618
-	                    'SW' => 'South-west',
619
-	                    'SWB' => 'South-westbound',
620
-	                    'SWY' => 'Stopway',
621
-	                    'TA' => 'Transition Altitude',
622
-	                    'TAA' => 'Terminal Arrival Altitude',
623
-	                    'TAF' => 'Aerodrome Forecast',
624
-	                    'TAIL' => 'Tail Wind',
625
-	                    'TAR' => 'Terminal Area Surveillance Radar',
626
-	                    'TAX' => 'Taxi',
627
-	                    'TCAC' => 'Tropical Cyclone Advisory Centre',
628
-	                    'TDO' => 'Tornado',
629
-	                    'TDZ' => 'Touchdown Zone',
630
-	                    'TECR' => 'Technical Reason',
631
-	                    'TEMPO' => 'Temporarily',
632
-	                    'TFC' => 'Traffic',
633
-	                    'TGL' => 'Touch-and-go',
634
-	                    'TGS' => 'Taxiing Guidance System',
635
-	                    'THR' => 'Threshold',
636
-	                    'THRU' => 'Through',
637
-	                    'THU' => 'Thursday',
638
-	                    'TIBA' => 'Traffic Information Broadcast By Aircraft',
639
-	                    'TIL' => 'Until',
640
-	                    'TIP' => 'Until Past',
641
-	                    'TKOF' => 'Take-off',
642
-	                    'TL' => 'Till',
643
-	                    'TLOF' => 'Touchdown And Lift-off Area',
644
-	                    'TMA' => 'Terminal Control Area',
645
-	                    'TNA' => 'Turn Altitude',
646
-	                    'TNH' => 'Turn Height',
647
-	                    'TOC' => 'Top of Climb',
648
-	                    'TODA' => 'Take-off Distance Available',
649
-	                    'TODAH' => 'Take-off Distance Available, Helicopter',
650
-	                    'TORA' => 'Take-off Run Available',
651
-	                    'TP' => 'Turning Point',
652
-	                    'TR' => 'Track',
653
-	                    'TRA' => 'Temporary Reserved Airspace',
654
-	                    'TRANS' => 'Transmitter',
655
-	                    'TRL' => 'Transition Level',
656
-	                    'TUE' => 'Tuesday',
657
-	                    'TURB' => 'Turbulence',
658
-	                    'TVOR' => 'Terminal VOR',
659
-	                    'TWR' => 'Tower',
660
-	                    'TWY' => 'Taxiway',
661
-	                    'TWYL' => 'Taxiway-link',
662
-	                    'TXT' => 'Text',
663
-	                    'TYP' => 'Type of Aircraft',
664
-	                    'U/S' => 'Unserviceable',
665
-	                    'UAB' => 'Until Advised By',
666
-	                    'UAC' => 'Upper Area Control Centre',
667
-	                    'UAR' => 'Upper Air Route',
668
-	                    'UDA' => 'Upper advisory area',
669
-	                    'UFN' => 'Until Further Notice',
670
-	                    'UHDT' => 'Unable Higher Due Traffic',
671
-	                    'UIC' => 'Upper Information Centre',
672
-	                    'UIR' => 'Upper Flight Information Region',
673
-	                    'ULR' => 'Ultra Long Range',
674
-	                    'UNA' => 'Unable',
675
-	                    'UNAP' => 'Unable To Approve',
676
-	                    'UNL' => 'Unlimited',
677
-	                    'UNREL' => 'Unreliable',
678
-	                    'UTA' => 'Upper Control Area',
679
-	                    'VAAC' => 'Volcanic Ash Advisory Centre',
680
-	                    'VAC' => 'Visual Approach Chart',
681
-	                    'VAL' => 'In Valleys',
682
-	                    'VAN' => 'Runway Control Van',
683
-	                    'VAR' => 'Visual-aural Radio Range',
684
-	                    'VC' => 'Vicinity',
685
-	                    'VCY' => 'Vicinity',
686
-	                    'VER' => 'Vertical',
687
-	                    'VIS' => 'Visibility',
688
-	                    'VLR' => 'Very Long Range',
689
-	                    'VPA' => 'Vertical Path Angle',
690
-	                    'VRB' => 'Variable',
691
-	                    'VSA' => 'By Visual Reference To The Ground',
692
-	                    'VSP' => 'Vertical Speed',
693
-	                    'VTOL' => 'Vertical Take-off And Landing',
694
-	                    'WAC' => 'World Aeronautical Chart',
695
-	                    'WAFC' => 'World Area Forecast Centre',
696
-	                    'WB' => 'Westbound',
697
-	                    'WBAR' => 'Wing Bar Lights',
698
-	                    'WDI' => 'Wind Direction Indicator',
699
-	                    'WDSPR' => 'Widespread',
700
-	                    'WED' => 'Wednesday',
701
-	                    'WEF' => 'Effective From',
702
-	                    'WI' => 'Within',
703
-	                    'WID' => 'Width',
704
-	                    'WIE' => 'Effective Immediately',
705
-	                    'WILCO' => 'Will Comply',
706
-	                    'WIND' => 'Wind',
707
-	                    'WINTEM' => 'Forecast Upper Wind And Temperature For Aviation',
708
-	                    'WIP' => 'Work In Progress',
709
-	                    'WKN' => 'Weaken',
710
-	                    'WNW' => 'West-north-west',
711
-	                    'WO' => 'Without',
712
-	                    'WPT' => 'Way-point',
713
-	                    'WRNG' => 'Warning',
714
-	                    'WSW' => 'West-south-west',
715
-	                    'WT' => 'Weight',
716
-	                    'WWW' => 'Worldwide Web',
717
-	                    'WX' => 'Weather',
718
-	                    'XBAR' => 'Crossbar',
719
-	                    'XNG' => 'Crossing',
720
-	                    'XS' => 'Atmospherics',
721
-	                    'YCZ' => 'Yellow Caution Zone',
722
-	                    'YR' => 'Your');
10
+						'A/A' => 'Air-to-air',
11
+						'A/G' => 'Air-to-ground',
12
+						'AAL' => 'Above Aerodrome Level',
13
+						'ABM' => 'Abeam',
14
+						'ABN' => 'Aerodrome Beacon',
15
+						'ABT' => 'About',
16
+						'ABV' => 'Above',
17
+						'ACC' => 'Area Control',
18
+						'ACFT' => 'Aircraft',
19
+						'ACK' => 'Acknowledge',
20
+						'ACL' => 'Altimeter Check Location',
21
+						'ACN' => 'Aircraft Classification Number',
22
+						'ACPT' => 'Accepted',
23
+						'ACT' => 'Active',
24
+						'AD' => 'Aerodrome',
25
+						'ADA' => 'Advisory Area',
26
+						'ADC' => 'Aerodrome Chart',
27
+						'ADDN' => 'Additional',
28
+						'ADIZ' => 'Air defense identification zone',
29
+						'ADJ' => 'Adjacent',
30
+						'ADR' => 'Advisory Route',
31
+						'ADS' => 'Automatic Dependent Surveillance',
32
+						'ADVS' => 'Advisory Service',
33
+						'ADZ' => 'Advised',
34
+						'AFIL' => 'Flight Plan Filed In The Air',
35
+						'AFIS' => 'Airport flight information service',
36
+						'AFM' => 'Affirm',
37
+						'AFT' => 'After',
38
+						'AGA' => 'Aerodromes, Air Routes and Ground Aids',
39
+						'AGN' => 'Again',
40
+						'AIS' => 'Aeronautical information service',
41
+						'ALERFA' => 'Alert Phase',
42
+						'ALRS' => 'Alerting Service',
43
+						'ALS' => 'Approach Lighting System',
44
+						'ALT' => 'Altitude',
45
+						'ALTN' => 'Alternate',
46
+						'AMA' => 'Area Minimum Altitude',
47
+						'ANC' => 'Aeronautical Chart',
48
+						'ANCS' => 'Aeronautical Navigation Chart',
49
+						'ANS' => 'Answer',
50
+						'AOC' => 'Aerodrome Obstacle Chart',
51
+						'AP' => 'Airport',
52
+						'APCH' => 'Approach',
53
+						'APDC' => 'Aircraft Parking/docking Chart',
54
+						'APN' => 'Apron',
55
+						'APNS' => 'Aprons',
56
+						'APP' => 'Approach Control',
57
+						'APR' => 'April',
58
+						'APRX' => 'Approximately',
59
+						'APSG' => 'After Passing',
60
+						'APV' => 'Approved',
61
+						'ARC' => 'Area Chart',
62
+						'ARNG' => 'Arrange',
63
+						'ARO' => 'Air Traffic Services Reporting Office',
64
+						'ARP' => 'Aerodrome Reference Point',
65
+						'ARR' => 'Arriving',
66
+						'ARST' => 'Arresting',
67
+						'ASC' => 'Ascend To',
68
+						'ASDA' => 'Accelerate-Stop Distance Available',
69
+						'ASPEEDG' => 'Airspeed Gain',
70
+						'ASPEEDL' => 'Airspeed Loss',
71
+						'ASPH' => 'Asphalt',
72
+						'ATA' => 'Actual Time of Arrival',
73
+						'ATD' => 'Actual Time of Departure',
74
+						'ATFM' => 'Air Traffic Flow Management',
75
+						'ATIS' => 'Automatic terminal information service',
76
+						'ATM' => 'Air Traffic Management',
77
+						'ATP' => 'At',
78
+						'ATTN' => 'Attention',
79
+						'ATZ' => 'Aerodrome Traffic Zone',
80
+						'AUG' => 'August',
81
+						'AUTH' => 'Authorization',
82
+						'AUW' => 'All Up Weight',
83
+						'AUX' => 'Auxiliary',
84
+						'AVBL' => 'Available',
85
+						'AVG' => 'Average',
86
+						'AVGAS' => 'Aviation Gasoline',
87
+						'AWTA' => 'Advise At What Time Able',
88
+						'AWY' => 'Airway',
89
+						'AWYS' => 'Airways',
90
+						'AZM' => 'Azimuth',
91
+						'BA' => 'Braking Action',
92
+						'BCN' => 'Beacon',
93
+						'BCST' => 'Broadcast',
94
+						'BDRY' => 'Boundary',
95
+						'BFR' => 'Before',
96
+						'BLDG' => 'Building',
97
+						'BLO' => 'Below Clouds',
98
+						'BLW' => 'Below',
99
+						'BRF' => 'Short',
100
+						'BRG' => 'Bearing',
101
+						'BRKG' => 'Breaking',
102
+						'BTL' => 'Between Layers',
103
+						'BTN' => 'Between',
104
+						'CD' => 'Candela',
105
+						'CDN' => 'Coordination',
106
+						'CF' => 'Change Frequency To',
107
+						'CFM' => 'Confirm',
108
+						'CGL' => 'Circling Guidance Light(s)',
109
+						'CH' => 'Channel',
110
+						'CHG' => 'Changed',
111
+						'CIT' => 'Near or Over Large Towns',
112
+						'CIV' => 'Civil',
113
+						'CK' => 'Check',
114
+						'CL' => 'Centre Line',
115
+						'CLBR' => 'Calibration',
116
+						'CLD' => 'Cloud',
117
+						'CLG' => 'Calling',
118
+						'CLIMB-OUT' => 'Climb-out Area',
119
+						'CLR' => 'Clearance',
120
+						'CLRD' => 'Cleared',
121
+						'CLSD' => 'Closed',
122
+						'CMB' => 'Climb',
123
+						'CMPL' => 'Complete',
124
+						'CNL' => 'Cancel',
125
+						'CNS' => 'Communications, Navigation And Surveillance',
126
+						'COM' => 'Communications',
127
+						'CONC' => 'Concrete',
128
+						'COND' => 'Condition',
129
+						'CONS' => 'Continuous',
130
+						'CONST' => 'Construction',
131
+						'CONT' => 'Continued',
132
+						'COOR' => 'Coordination',
133
+						'COORD' => 'Coordinates',
134
+						'COP' => 'Change-over Point',
135
+						'COR' => 'Correction',
136
+						'COT' => 'At The Coast',
137
+						'COV' => 'Covered',
138
+						'CPDLC' => 'Controller-pilot Data Link Communications',
139
+						'CPL' => 'Current Flight Plan',
140
+						'CRC' => 'Cyclic Redundancy Check',
141
+						'CRZ' => 'Cruise',
142
+						'CTA' => 'Control area',
143
+						'CTAM' => 'Climb To And Maintain',
144
+						'CTC' => 'Contact',
145
+						'CTL' => 'Control',
146
+						'CTN' => 'Caution',
147
+						'CTR' => 'Control Zone',
148
+						'CVR' => 'Cockpit Voice Recorder',
149
+						'CW' => 'Continuous Wave',
150
+						'CWY' => 'Clearway',
151
+						'DA' => 'Decision Altitude',
152
+						'DCKG' => 'Docking',
153
+						'DCP' => 'Datum Crossing Point',
154
+						'DCPC' => 'Direct Controller-pilot Communications',
155
+						'DCT' => 'Direct',
156
+						'DEC' => 'December',
157
+						'DEG' => 'Degrees',
158
+						'DEP' => 'Departing',
159
+						'DES' => 'Descend',
160
+						'DEST' => 'Destination',
161
+						'DETRESFA' => 'Distress Phase',
162
+						'DEV' => 'Deviating',
163
+						'DFDR' => 'Digital Flight Data Recorder',
164
+						'DFTI' => 'Distance From Touchdown Indicator',
165
+						'DH' => 'Decision Height',
166
+						'DIP' => 'Diffuse',
167
+						'DIST' => 'Distance',
168
+						'DIV' => 'Divert',
169
+						'DLA' => 'Delay',
170
+						'DLY' => 'Daily',
171
+						'DME' => 'Distance measuring equipment',
172
+						'DNG' => 'Dangerous',
173
+						'DOM' => 'Domestic',
174
+						'DPT' => 'Depth',
175
+						'DR' => 'Dead Reckoning',
176
+						'DRG' => 'During',
177
+						'DTAM' => 'Descend To And Maintain',
178
+						'DTG' => 'Date-time Group',
179
+						'DTHR' => 'Displaced Runway Threshold',
180
+						'DTRT' => 'Deteriorating',
181
+						'DTW' => 'Dual Tandem Wheels',
182
+						'DUPE' => 'This Is A Duplicate Message',
183
+						'DUR' => 'Duration',
184
+						'DVOR' => 'Doppler VOR',
185
+						'DW' => 'Dual Wheels',
186
+						'EAT' => 'Expected Approach Time',
187
+						'EB' => 'Eastbound',
188
+						'EDA' => 'Elevation Differential Area',
189
+						'EET' => 'Estimated Elapsed Time',
190
+						'EFC' => 'Expect Further Clearance',
191
+						'ELBA' => 'Emergency Location Beacon',
192
+						'ELEV' => 'Elevation',
193
+						'ELR' => 'Extra Long Range',
194
+						'EM' => 'Emission',
195
+						'EMERG' => 'Emergency',
196
+						'END' => 'Stop-end',
197
+						'ENE' => 'East-north-east',
198
+						'ENG' => 'Engine',
199
+						'ENR' => 'En-route',
200
+						'ENRC' => 'En-route Chart',
201
+						'EOBT' => 'Estimated Off-block Time',
202
+						'EQPT' => 'Equipment',
203
+						'ER' => 'Here',
204
+						'ESE' => 'East-south-east',
205
+						'EST' => 'Estimate',
206
+						'ETA' => 'Estimated Time Of Arrival',
207
+						'ETD' => 'Estimated Time Of Departure',
208
+						'ETO' => 'Estimated Time Over Significant Point',
209
+						'EV' => 'Every',
210
+						'EXC' => 'Except',
211
+						'EXER' => 'Exercise',
212
+						'EXP' => 'Expect',
213
+						'EXTD' => 'Extend',
214
+						'FAC' => 'Facilities',
215
+						'FAF' => 'Final Approach Fix',
216
+						'FAL' => 'Facilitation of International Airtransport',
217
+						'FAP' => 'Final Approach Point',
218
+						'FATO' => 'Final Approach And Take-off Area',
219
+						'FAX' => 'Fax',
220
+						'FBL' => 'Light',
221
+						'FCST' => 'Forecast',
222
+						'FCT' => 'Friction Coefficient',
223
+						'FDPS' => 'Flight Data Processing System',
224
+						'FEB' => 'February',
225
+						'FIR' => 'Flight information region',
226
+						'FIS' => 'Flight information service',
227
+						'FLD' => 'Field',
228
+						'FLG' => 'Flashing',
229
+						'FLR' => 'Flares',
230
+						'FLT' => 'Flight',
231
+						'FLTS' => 'Flights',
232
+						'FLTCK' => 'Flight Check',
233
+						'FLUC' => 'Fluctuating',
234
+						'FLW' => 'Follow(s)',
235
+						'FLY' => 'Fly',
236
+						'FM' => 'From',
237
+						'FMS' => 'Flight Management System',
238
+						'FMU' => 'Flow Management Unit',
239
+						'FNA' => 'Final Approach',
240
+						'FPAP' => 'Flight Path Alignment Point',
241
+						'FPL' => 'Flight Plan',
242
+						'FPLS' => 'Flight Plans',
243
+						'FPM' => 'Feet Per Minute',
244
+						'FPR' => 'Flight Plan Route',
245
+						'FR' => 'Fuel Remaining',
246
+						'FREQ' => 'Frequency',
247
+						'FRI' => 'Friday',
248
+						'FRMG' => 'Missile, gun or rocket firing',
249
+						'FRNG' => 'Firing',
250
+						'FRONT' => 'Front',
251
+						'FRQ' => 'Frequent',
252
+						'FSL' => 'Full Stop Landing',
253
+						'FSS' => 'Flight Service Station',
254
+						'FST' => 'First',
255
+						'FTP' => 'Fictitious Threshold Point',
256
+						'G/A' => 'Ground-to-air',
257
+						'G/A/G' => 'Ground-to-air and Air-to-ground',
258
+						'GARP' => 'GBAS Azimuth Reference Point',
259
+						'GBAS' => 'Ground-based Augmentation System',
260
+						'GCAJ' => 'Ground Controlled Approach',
261
+						'GCA' => 'Ground Controlled Approach System',
262
+						'GEN' => 'General',
263
+						'GEO' => 'Geographic or True',
264
+						'GES' => 'Ground Earth Station',
265
+						'GLD' => 'Glider',
266
+						'GMC' => 'Ground Movement Chart',
267
+						'GND' => 'Ground',
268
+						'GNDCK' => 'Ground Check',
269
+						'GP' => 'Glide Path',
270
+						'GRASS' => 'Grass landing area',
271
+						'GRVL' => 'Gravel',
272
+						'GUND' => 'Geoid Undulation',
273
+						'H24' => '24 Hours',
274
+						'HAPI' => 'Helicopter Approach Path Indicator',
275
+						'HBN' => 'Hazard Beacon',
276
+						'HDG' => 'Heading',
277
+						'HEL' => 'Helicopter',
278
+						'HGT' => 'Height',
279
+						'HJ' => 'Sunrise to Sunset',
280
+						'HLDG' => 'Holding',
281
+						'HN' => 'Sunset to Sunrise',
282
+						'HO' => 'Service Available To Meet Operational Requirements',
283
+						'HOL' => 'Holiday',
284
+						'HOSP' => 'Hospital Aircraft',
285
+						'HOT' => 'Height',
286
+						'HPA' => 'Hectopascal',
287
+						'HR' => 'Hours',
288
+						'HRS' => 'Hours',
289
+						'HS' => 'Service Available During Hours Of Scheduled Operations',
290
+						'HURCN' => 'Hurricane',
291
+						'HVY' => 'Heavy',
292
+						'HX' => 'No Specific Working Hours',
293
+						'HYR' => 'Higher',
294
+						'IAC' => 'Instrument Approach Chart',
295
+						'IAF' => 'Initial Approach Fix',
296
+						'IAO' => 'In And Out Of Clouds',
297
+						'IAP' => 'Instrument Approach Procedure',
298
+						'IAR' => 'Intersection Of Air Routes',
299
+						'IBN' => 'Identification Beacon',
300
+						'ID' => 'Identifier',
301
+						'IDENT' => 'Identification',
302
+						'IFF' => 'Identification Friend/Foe',
303
+						'IGA' => 'International General Aviation',
304
+						'IM' => 'Inner Marker',
305
+						'IMPR' => 'Improving',
306
+						'IMT' => 'Immediately',
307
+						'INA' => 'Initial Approach',
308
+						'INBD' => 'Inbound',
309
+						'INCERFA' => 'Uncertainty Phase',
310
+						'INFO' => 'Information',
311
+						'INOP' => 'Inoperative',
312
+						'INP' => 'If Not Possible',
313
+						'INPR' => 'In Progress',
314
+						'INSTL' => 'Installation',
315
+						'INSTR' => 'Instrument',
316
+						'INT' => 'Intersection',
317
+						'INTS' => 'Intersections',
318
+						'INTL' => 'International',
319
+						'INTRG' => 'Interrogator',
320
+						'INTRP' => 'Interruption',
321
+						'INTSF' => 'Intensifying',
322
+						'INTST' => 'Intensity',
323
+						'ISA' => 'International Standard Atmosphere',
324
+						'JAN' => 'January',
325
+						'JTST' => 'Jet stream',
326
+						'JUL' => 'July',
327
+						'JUN' => 'June',
328
+						'KMH' => 'Kilometres Per Hour',
329
+						'KPA' => 'Kilopascal',
330
+						'KT' => 'Knots',
331
+						'KW' => 'Kilowatts',
332
+						'LAN' => 'Inland',
333
+						'LAT' => 'Latitude',
334
+						'LDA' => 'Landing Distance Available',
335
+						'LDAH' => 'Landing Distance Available, Helicopter',
336
+						'LDG' => 'Landing',
337
+						'LDI' => 'Landing Direction Indicator',
338
+						'LEN' => 'Length',
339
+						'LGT' => 'Lighting',
340
+						'LGTD' => 'Lighted',
341
+						'LIH' => 'Light Intensity High',
342
+						'LIL' => 'Light Intensity Low',
343
+						'LIM' => 'Light Intensity Medium',
344
+						'LLZ' => 'Localizer',
345
+						'LM' => 'Locator, Middle',
346
+						'LMT' => 'Local Mean Time',
347
+						'LNG' => 'Long',
348
+						'LO' => 'Locator, Outer',
349
+						'LOG' => 'Located',
350
+						'LONG' => 'Longitude',
351
+						'LRG' => 'Long Range',
352
+						'LTD' => 'Limited',
353
+						'LTP' => 'Landing Threshold Point',
354
+						'LVE' => 'Leaving',
355
+						'LVL' => 'Level',
356
+						'LYR' => 'Layer',
357
+						'MAA' => 'Maximum Authorized Altitude',
358
+						'MAG' => 'Magnetic',
359
+						'MAINT' => 'Maintenance',
360
+						'MAP' => 'Aeronautical Maps and Charts',
361
+						'MAPT' => 'Missed Approach Point',
362
+						'MAR' => 'March',
363
+						'MAX' => 'Maximum',
364
+						'MAY' => 'May',
365
+						'MBST' => 'Microburst',
366
+						'MCA' => 'Minimum Crossing Altitude',
367
+						'MCW' => 'Modulated Continuous Wave',
368
+						'MDA' => 'Minimum Descent Altitude',
369
+						'MDH' => 'Minimum Descent Height',
370
+						'MEA' => 'Minimum En-route Altitude',
371
+						'MEHT' => 'Minimum Eye Height Over Threshold',
372
+						'MET' => 'Meteorological',
373
+						'MID' => 'Mid-point',
374
+						'MIL' => 'Military',
375
+						'MIN' => 'Minutes',
376
+						'MKR' => 'Marker Radio Beacon',
377
+						'MLS' => 'Microwave Landing System',
378
+						'MM' => 'Middle Marker',
379
+						'MNM' => 'Minimum',
380
+						'MNPS' => 'Minimum Navigation Performance Specifications',
381
+						'MNT' => 'Monitor',
382
+						'MNTN' => 'Maintain',
383
+						'MOA' => 'Military Operating Area',
384
+						'MOC' => 'Minimum Obstacle Clearance',
385
+						'MOD' => 'Moderate',
386
+						'MON' => 'Monday',
387
+						'MOPS' => 'Minimum Operational Performance Standards',
388
+						'MOV' => 'Movement',
389
+						'MRA' => 'Minimum Reception Altitude',
390
+						'MRG' => 'Medium Range',
391
+						'MRP' => 'ATS/MET Reporting Point',
392
+						'MS' => 'Minus',
393
+						'MSA' => 'Minimum Sector Altitude',
394
+						'MSAW' => 'Minimum Safe Altitude Warning',
395
+						'MSG' => 'Message',
396
+						'MSSR' => 'Monopulse Secondary Surveillance Radar',
397
+						'MT' => 'Mountain',
398
+						'MTU' => 'Metric Units',
399
+						'MTW' => 'Mountain Waves',
400
+						'NASC' => 'National AIS System Centre',
401
+						'NAT' => 'North Atlantic',
402
+						'NAV' => 'Navigation',
403
+						'NB' => 'Northbound',
404
+						'NBFR' => 'Not Before',
405
+						'NE' => 'North-east',
406
+						'NEB' => 'North-eastbound',
407
+						'NEG' => 'Negative',
408
+						'NGT' => 'Night',
409
+						'NIL' => 'None',
410
+						'NML' => 'Normal',
411
+						'NNE' => 'North-north-east',
412
+						'NNW' => 'North-north-west',
413
+						'NOF' => 'International NOTAM Office',
414
+						'NOV' => 'November',
415
+						'NOZ' => 'Normal Operating Zone',
416
+						'NR' => 'Number',
417
+						'NRH' => 'No Reply Heard',
418
+						'NTL' => 'National',
419
+						'NTZ' => 'No Transgression Zone',
420
+						'NW' => 'North-west',
421
+						'NWB' => 'North-westbound',
422
+						'NXT' => 'Next',
423
+						'O/R' => 'On Request',
424
+						'OAC' => 'Oceanic Area Control Centre',
425
+						'OAS' => 'Obstacle Assessment Surface',
426
+						'OBS' => 'Observe',
427
+						'OBST' => 'Obstacle',
428
+						'OBSTS' => 'Obstacles',
429
+						'OCA' => 'Oceanic Control Area',
430
+						'OCH' => 'Obstacle Clearance Height',
431
+						'OCL' => 'Obstacle Clearance Limit',
432
+						'OCS' => 'Obstacle Clearance Surface',
433
+						'OCT' => 'October',
434
+						'OFZ' => 'Obstacle Free Zone',
435
+						'OGN' => 'Originate',
436
+						'OHD' => 'Overhead',
437
+						'OM' => 'Outer Marker',
438
+						'OPC' => 'Control Indicated Is Operational Control',
439
+						'OPMET' => 'Operational Meteorological',
440
+						'OPN' => 'Open',
441
+						'OPR' => 'Operate',
442
+						'OPS' => 'Operations',
443
+						'ORD' => 'Order',
444
+						'OSV' => 'Ocean Station Vessel',
445
+						'OTLK' => 'Outlook',
446
+						'OTP' => 'On Top',
447
+						'OTS' => 'Organized Track System',
448
+						'OUBD' => 'Outbound',
449
+						'PA' => 'Precision Approach',
450
+						'PALS' => 'Precision Approach Lighting System',
451
+						'PANS' => 'Procedures for Air Navigation Services',
452
+						'PAR' => 'Precision Approach Radar',
453
+						'PARL' => 'Parallel',
454
+						'PATC' => 'Precision Approach Terrain Chart',
455
+						'PAX' => 'Passenger(s)',
456
+						'PCD' => 'Proceed',
457
+						'PCL' => 'Pilot-controlled Lighting',
458
+						'PCN' => 'Pavement Classification Number',
459
+						'PDC' => 'Pre-departure Clearance',
460
+						'PDG' => 'Procedure Design Gradient',
461
+						'PER' => 'Performance',
462
+						'PERM' => 'Permanent',
463
+						'PIB' => 'Pre-flight Information Bulletin',
464
+						'PJE' => 'Parachute Jumping Exercise',
465
+						'PLA' => 'Practice Low Approach',
466
+						'PLN' => 'Flight Plan',
467
+						'PLVL' => 'Present Level',
468
+						'PN' => 'Prior Notice Required',
469
+						'PNR' => 'Point Of No Return',
470
+						'POB' => 'Persons On Board',
471
+						'POSS' => 'Possible',
472
+						'PPI' => 'Plan Position Indicator',
473
+						'PPR' => 'Prior Permission Required',
474
+						'PPSN' => 'Present Position',
475
+						'PRI' => 'Primary',
476
+						'PRKG' => 'Parking',
477
+						'PROB' => 'Probability',
478
+						'PROC' => 'Procedure',
479
+						'PROV' => 'Provisional',
480
+						'PS' => 'Plus',
481
+						'PSG' => 'Passing',
482
+						'PSN' => 'Position',
483
+						'PSNS' => 'Positions',
484
+						'PSR' => 'Primary Surveillance Radar',
485
+						'PSYS' => 'Pressure System(s)',
486
+						'PTN' => 'Procedure Turn',
487
+						'PTS' => 'Polar Track Structure',
488
+						'PWR' => 'Power',
489
+						'QUAD' => 'Quadrant',
490
+						'RAC' => 'Rules of The Air and Air Traffic Services',
491
+						'RAG' => 'Runway Arresting Gear',
492
+						'RAI' => 'Runway Alignment Indicator',
493
+						'RASC' => 'Regional AIS System Centre',
494
+						'RASS' => 'Remote Altimeter Setting Source',
495
+						'RB' => 'Rescue Boat',
496
+						'RCA' => 'Reach Cruising Altitude',
497
+						'RCC' => 'Rescue Coordination Centre',
498
+						'RCF' => 'Radiocommunication Failure',
499
+						'RCH' => 'Reaching',
500
+						'RCL' => 'Runway Centre Line',
501
+						'RCLL' => 'Runway Centre Line Light(s)',
502
+						'RCLR' => 'Recleared',
503
+						'RDH' => 'Reference Datum Height',
504
+						'RDL' => 'Radial',
505
+						'RDO' => 'Radio',
506
+						'RE' => 'Recent',
507
+						'REC' => 'Receiver',
508
+						'REDL' => 'Runway Edge Light(s)',
509
+						'REF' => 'Refer To',
510
+						'REG' => 'Registration',
511
+						'RENL' => 'Runway End Light(s)',
512
+						'REP' => 'Report',
513
+						'REQ' => 'Requested',
514
+						'RERTE' => 'Re-route',
515
+						'RESA' => 'Runway End Safety Area',
516
+						'RG' => 'Range (lights)',
517
+						'RHC' => 'Right-hand Circuit',
518
+						'RIF' => 'Reclearance In Flight',
519
+						'RITE' => 'Right',
520
+						'RL' => 'Report Leaving',
521
+						'RLA' => 'Relay To',
522
+						'RLCE' => 'Request Level Change En Route',
523
+						'RLLS' => 'Runway Lead-in Lighting System',
524
+						'RLNA' => 'Request Level Not Available',
525
+						'RMAC' => 'Radar Minimum Altitude Chart',
526
+						'RMK' => 'Remark',
527
+						'RNG' => 'Radio Range',
528
+						'RNP' => 'Required Navigation Performance',
529
+						'ROC' => 'Rate Of Climb',
530
+						'ROD' => 'Rate Of Descent',
531
+						'ROFOR' => 'Route Forecast',
532
+						'RON' => 'Receiving Only',
533
+						'RPI' => 'Radar Position Indicator',
534
+						'RPL' => 'Repetitive Flight Plan',
535
+						'RPLC' => 'Replaced',
536
+						'RPS' => 'Radar Position Symbol',
537
+						'RQMNTS' => 'Requirements',
538
+						'RQP' => 'Request Flight Plan',
539
+						'RQS' => 'Request Supplementary Flight Plan',
540
+						'RR' => 'Report Reaching',
541
+						'RSC' => 'Rescue Sub-centre',
542
+						'RSCD' => 'Runway Surface Condition',
543
+						'RSP' => 'Responder Beacon',
544
+						'RSR' => 'En-route Surveillance Radar',
545
+						'RTE' => 'Route',
546
+						'RTES' => 'Routes',
547
+						'RTF' => 'Radiotelephone',
548
+						'RTG' => 'Radiotelegraph',
549
+						'RTHL' => 'Runway Threshold Light(s)',
550
+						'RTN' => 'Return',
551
+						'RTODAH' => 'Rejected Take-off Distance Available, Helicopter',
552
+						'RTS' => 'Return To Service',
553
+						'RTT' => 'Radioteletypewriter',
554
+						'RTZL' => 'Runway Touchdown Zone Light(s)',
555
+						'RUT' => 'Standard Regional Route Transmitting Frequencies',
556
+						'RV' => 'Rescue Vessel',
557
+						'RVSM' => 'Reduced Vertical Separation Minimum',
558
+						'RWY' => 'Runway',
559
+						'RWYS' => 'Runways',
560
+						'SALS' => 'Simple Approach Lighting System',
561
+						'SAN' => 'Sanitary',
562
+						'SAP' => 'As Soon As Possible',
563
+						'SAR' => 'Search and Rescue',
564
+						'SARPS' => 'Standards and Recommended Practices',
565
+						'SAT' => 'Saturday',
566
+						'SATCOM' => 'Satellite Communication',
567
+						'SB' => 'Southbound',
568
+						'SBAS' => 'Satellite-based Augmentation System',
569
+						'SDBY' => 'Stand by',
570
+						'SE' => 'South-east',
571
+						'SEA' => 'Sea',
572
+						'SEB' => 'South-eastbound',
573
+						'SEC' => 'Seconds',
574
+						'SECN' => 'Section',
575
+						'SECT' => 'Sector',
576
+						'SELCAL' => 'Selective calling system',
577
+						'SEP' => 'September',
578
+						'SER' => 'Service',
579
+						'SEV' => 'Severe',
580
+						'SFC' => 'Surface',
581
+						'SGL' => 'Signal',
582
+						'SID' => 'Standard Instrument Departure',
583
+						'SIF' => 'Selective Identification Feature',
584
+						'SIG' => 'Significant',
585
+						'SIMUL' => 'Simultaneous',
586
+						'SKED' => 'Schedule',
587
+						'SLP' => 'Speed Limiting Point',
588
+						'SLW' => 'Slow',
589
+						'SMC' => 'Surface Movement Control',
590
+						'SMR' => 'Surface Movement Radar',
591
+						'SPL' => 'Supplementary Flight Plan',
592
+						'SPOC' => 'SAR Point Of Contact',
593
+						'SPOT' => 'Spot Wind',
594
+						'SR' => 'Sunrise',
595
+						'SRA' => 'Surveillance Radar Approach',
596
+						'SRE' => 'Surveillance Radar Element Of Precision Approach Radar System',
597
+						'SRG' => 'Short Range',
598
+						'SRR' => 'Search and Rescue Region',
599
+						'SRY' => 'Secondary',
600
+						'SS' => 'Sunset',
601
+						'SSE' => 'South-south-east',
602
+						'SSR' => 'Secondary Surveillance Radar',
603
+						'SST' => 'Supersonic Transport',
604
+						'SSW' => 'South-south-west',
605
+						'STA' => 'Straight-in Approach',
606
+						'STAR' => 'Standard Instrument Arrival',
607
+						'STD' => 'Standard',
608
+						'STN' => 'Station',
609
+						'STNR' => 'Stationary',
610
+						'STOL' => 'Short Take-off and Landing',
611
+						'STS' => 'Status',
612
+						'STWL' => 'Stopway Light(s)',
613
+						'SUBJ' => 'Subject To',
614
+						'SUN' => 'Sunday',
615
+						'SUP' => 'Supplement',
616
+						'SUPPS' => 'Regional Supplementary Procedures Service Message',
617
+						'SVCBL' => 'Serviceable',
618
+						'SW' => 'South-west',
619
+						'SWB' => 'South-westbound',
620
+						'SWY' => 'Stopway',
621
+						'TA' => 'Transition Altitude',
622
+						'TAA' => 'Terminal Arrival Altitude',
623
+						'TAF' => 'Aerodrome Forecast',
624
+						'TAIL' => 'Tail Wind',
625
+						'TAR' => 'Terminal Area Surveillance Radar',
626
+						'TAX' => 'Taxi',
627
+						'TCAC' => 'Tropical Cyclone Advisory Centre',
628
+						'TDO' => 'Tornado',
629
+						'TDZ' => 'Touchdown Zone',
630
+						'TECR' => 'Technical Reason',
631
+						'TEMPO' => 'Temporarily',
632
+						'TFC' => 'Traffic',
633
+						'TGL' => 'Touch-and-go',
634
+						'TGS' => 'Taxiing Guidance System',
635
+						'THR' => 'Threshold',
636
+						'THRU' => 'Through',
637
+						'THU' => 'Thursday',
638
+						'TIBA' => 'Traffic Information Broadcast By Aircraft',
639
+						'TIL' => 'Until',
640
+						'TIP' => 'Until Past',
641
+						'TKOF' => 'Take-off',
642
+						'TL' => 'Till',
643
+						'TLOF' => 'Touchdown And Lift-off Area',
644
+						'TMA' => 'Terminal Control Area',
645
+						'TNA' => 'Turn Altitude',
646
+						'TNH' => 'Turn Height',
647
+						'TOC' => 'Top of Climb',
648
+						'TODA' => 'Take-off Distance Available',
649
+						'TODAH' => 'Take-off Distance Available, Helicopter',
650
+						'TORA' => 'Take-off Run Available',
651
+						'TP' => 'Turning Point',
652
+						'TR' => 'Track',
653
+						'TRA' => 'Temporary Reserved Airspace',
654
+						'TRANS' => 'Transmitter',
655
+						'TRL' => 'Transition Level',
656
+						'TUE' => 'Tuesday',
657
+						'TURB' => 'Turbulence',
658
+						'TVOR' => 'Terminal VOR',
659
+						'TWR' => 'Tower',
660
+						'TWY' => 'Taxiway',
661
+						'TWYL' => 'Taxiway-link',
662
+						'TXT' => 'Text',
663
+						'TYP' => 'Type of Aircraft',
664
+						'U/S' => 'Unserviceable',
665
+						'UAB' => 'Until Advised By',
666
+						'UAC' => 'Upper Area Control Centre',
667
+						'UAR' => 'Upper Air Route',
668
+						'UDA' => 'Upper advisory area',
669
+						'UFN' => 'Until Further Notice',
670
+						'UHDT' => 'Unable Higher Due Traffic',
671
+						'UIC' => 'Upper Information Centre',
672
+						'UIR' => 'Upper Flight Information Region',
673
+						'ULR' => 'Ultra Long Range',
674
+						'UNA' => 'Unable',
675
+						'UNAP' => 'Unable To Approve',
676
+						'UNL' => 'Unlimited',
677
+						'UNREL' => 'Unreliable',
678
+						'UTA' => 'Upper Control Area',
679
+						'VAAC' => 'Volcanic Ash Advisory Centre',
680
+						'VAC' => 'Visual Approach Chart',
681
+						'VAL' => 'In Valleys',
682
+						'VAN' => 'Runway Control Van',
683
+						'VAR' => 'Visual-aural Radio Range',
684
+						'VC' => 'Vicinity',
685
+						'VCY' => 'Vicinity',
686
+						'VER' => 'Vertical',
687
+						'VIS' => 'Visibility',
688
+						'VLR' => 'Very Long Range',
689
+						'VPA' => 'Vertical Path Angle',
690
+						'VRB' => 'Variable',
691
+						'VSA' => 'By Visual Reference To The Ground',
692
+						'VSP' => 'Vertical Speed',
693
+						'VTOL' => 'Vertical Take-off And Landing',
694
+						'WAC' => 'World Aeronautical Chart',
695
+						'WAFC' => 'World Area Forecast Centre',
696
+						'WB' => 'Westbound',
697
+						'WBAR' => 'Wing Bar Lights',
698
+						'WDI' => 'Wind Direction Indicator',
699
+						'WDSPR' => 'Widespread',
700
+						'WED' => 'Wednesday',
701
+						'WEF' => 'Effective From',
702
+						'WI' => 'Within',
703
+						'WID' => 'Width',
704
+						'WIE' => 'Effective Immediately',
705
+						'WILCO' => 'Will Comply',
706
+						'WIND' => 'Wind',
707
+						'WINTEM' => 'Forecast Upper Wind And Temperature For Aviation',
708
+						'WIP' => 'Work In Progress',
709
+						'WKN' => 'Weaken',
710
+						'WNW' => 'West-north-west',
711
+						'WO' => 'Without',
712
+						'WPT' => 'Way-point',
713
+						'WRNG' => 'Warning',
714
+						'WSW' => 'West-south-west',
715
+						'WT' => 'Weight',
716
+						'WWW' => 'Worldwide Web',
717
+						'WX' => 'Weather',
718
+						'XBAR' => 'Crossbar',
719
+						'XNG' => 'Crossing',
720
+						'XS' => 'Atmospherics',
721
+						'YCZ' => 'Yellow Caution Zone',
722
+						'YR' => 'Your');
723 723
 	public $code_airspace = array(
724
-			    'AA' => 'Minimum altitude',
725
-			    'AC' => 'Class B, C, D, or E Surface Area',
726
-			    'AD' => 'Air defense identification zone',
727
-			    'AE' => 'Control area',
728
-			    'AF' => 'Flight information region',
729
-			    'AH' => 'Upper control area',
730
-			    'AL' => 'Minimum usable flight level',
731
-			    'AN' => 'Area navigation route',
732
-			    'AO' => 'Oceanic control area',
733
-			    'AP' => 'Reporting point',
734
-			    'AR' => 'ATS route',
735
-			    'AT' => 'Class B Airspace',
736
-			    'AU' => 'Upper flight information region',
737
-			    'AV' => 'Upper advisory area',
738
-			    'AX' => 'Intersection',
739
-			    'AZ' => 'Aerodrome traffic zone');
724
+				'AA' => 'Minimum altitude',
725
+				'AC' => 'Class B, C, D, or E Surface Area',
726
+				'AD' => 'Air defense identification zone',
727
+				'AE' => 'Control area',
728
+				'AF' => 'Flight information region',
729
+				'AH' => 'Upper control area',
730
+				'AL' => 'Minimum usable flight level',
731
+				'AN' => 'Area navigation route',
732
+				'AO' => 'Oceanic control area',
733
+				'AP' => 'Reporting point',
734
+				'AR' => 'ATS route',
735
+				'AT' => 'Class B Airspace',
736
+				'AU' => 'Upper flight information region',
737
+				'AV' => 'Upper advisory area',
738
+				'AX' => 'Intersection',
739
+				'AZ' => 'Aerodrome traffic zone');
740 740
 	public $code_comradar = array(
741
-			    'CA' => 'Air/ground',
742
-			    'CE' => 'En route surveillance radar',
743
-			    'CG' => 'Ground controlled approach system',
744
-			    'CL' => 'Selective calling system',
745
-			    'CM' => 'Surface movement radar',
746
-			    'CP' => 'Precision approach radar',
747
-			    'CR' => 'Surveillance radar element of precision approach radar system',
748
-			    'CS' => 'Secondary surveillance radar',
749
-			    'CT' => 'Terminal area surveillance radar');
741
+				'CA' => 'Air/ground',
742
+				'CE' => 'En route surveillance radar',
743
+				'CG' => 'Ground controlled approach system',
744
+				'CL' => 'Selective calling system',
745
+				'CM' => 'Surface movement radar',
746
+				'CP' => 'Precision approach radar',
747
+				'CR' => 'Surveillance radar element of precision approach radar system',
748
+				'CS' => 'Secondary surveillance radar',
749
+				'CT' => 'Terminal area surveillance radar');
750 750
 	public $code_facilities = array(
751
-			    'FA' => 'airport',
752
-			    'FB' => 'Braking action measurement equipment',
753
-			    'FC' => 'Ceiling measurement equipment',
754
-			    'FD' => 'Docking system',
755
-			    'FF' => 'Fire fighting and rescue',
756
-			    'FG' => 'Ground movement control',
757
-			    'FH' => 'Helicopter alighting area/platform',
758
-			    'FL' => 'Landing direction indicator',
759
-			    'FM' => 'Meteorological service',
760
-			    'FO' => 'Fog dispersal system',
761
-			    'FP' => 'Heliport',
762
-			    'FS' => 'Snow removal equipment',
763
-			    'FT' => 'Transmissometer',
764
-			    'FU' => 'Fuel availability',
765
-			    'FW' => 'Wind direction indicator',
766
-			    'FZ' => 'Customs');
751
+				'FA' => 'airport',
752
+				'FB' => 'Braking action measurement equipment',
753
+				'FC' => 'Ceiling measurement equipment',
754
+				'FD' => 'Docking system',
755
+				'FF' => 'Fire fighting and rescue',
756
+				'FG' => 'Ground movement control',
757
+				'FH' => 'Helicopter alighting area/platform',
758
+				'FL' => 'Landing direction indicator',
759
+				'FM' => 'Meteorological service',
760
+				'FO' => 'Fog dispersal system',
761
+				'FP' => 'Heliport',
762
+				'FS' => 'Snow removal equipment',
763
+				'FT' => 'Transmissometer',
764
+				'FU' => 'Fuel availability',
765
+				'FW' => 'Wind direction indicator',
766
+				'FZ' => 'Customs');
767 767
 	public $code_instrumentlanding = array(
768
-			    'ID' => 'DME associated with ILS',
769
-			    'IG' => 'Glide path',
770
-			    'II' => 'Inner marker',
771
-			    'IL' => 'Localizer',
772
-			    'IM' => 'Middle marker',
773
-			    'IO' => 'Outer marker',
774
-			    'IS' => 'ILS Category I',
775
-			    'IT' => 'ILS Category II',
776
-			    'IU' => 'ILS Category III',
777
-			    'IW' => 'Microwave landing system',
778
-			    'IX' => 'Locator, outer',
779
-			    'IY' => 'Locator, middle');
768
+				'ID' => 'DME associated with ILS',
769
+				'IG' => 'Glide path',
770
+				'II' => 'Inner marker',
771
+				'IL' => 'Localizer',
772
+				'IM' => 'Middle marker',
773
+				'IO' => 'Outer marker',
774
+				'IS' => 'ILS Category I',
775
+				'IT' => 'ILS Category II',
776
+				'IU' => 'ILS Category III',
777
+				'IW' => 'Microwave landing system',
778
+				'IX' => 'Locator, outer',
779
+				'IY' => 'Locator, middle');
780 780
 	public $code_lightingfacilities = array(
781
-			    'LA' => 'Approach lighting system',
782
-			    'LB' => 'Airport beacon',
783
-			    'LC' => 'Runway center line lights',
784
-			    'LD' => 'Landing direction indicator lights',
785
-			    'LE' => 'Runway edge lights',
786
-			    'LF' => 'Sequenced flashing lights',
787
-			    'LH' => 'High intensity runway lights',
788
-			    'LI' => 'Runway end identifier lights',
789
-			    'LK' => 'Category II components of approach lighting system',
790
-			    'LL' => 'Low intensity runway lights',
791
-			    'LM' => 'Medium intensity runway lights',
792
-			    'LP' => 'Precision approach path indicator',
793
-			    'LR' => 'All landing area lighting facilities',
794
-			    'LS' => 'Stopway lights',
795
-			    'LT' => 'Threshold lights',
796
-			    'LV' => 'Visual approach slope indicator system',
797
-			    'LW' => 'Heliport lighting',
798
-			    'LX' => 'Taxiway center line lights',
799
-			    'LY' => 'Taxiway edge lights',
800
-			    'LZ' => 'Runway touchdown zone lights');
781
+				'LA' => 'Approach lighting system',
782
+				'LB' => 'Airport beacon',
783
+				'LC' => 'Runway center line lights',
784
+				'LD' => 'Landing direction indicator lights',
785
+				'LE' => 'Runway edge lights',
786
+				'LF' => 'Sequenced flashing lights',
787
+				'LH' => 'High intensity runway lights',
788
+				'LI' => 'Runway end identifier lights',
789
+				'LK' => 'Category II components of approach lighting system',
790
+				'LL' => 'Low intensity runway lights',
791
+				'LM' => 'Medium intensity runway lights',
792
+				'LP' => 'Precision approach path indicator',
793
+				'LR' => 'All landing area lighting facilities',
794
+				'LS' => 'Stopway lights',
795
+				'LT' => 'Threshold lights',
796
+				'LV' => 'Visual approach slope indicator system',
797
+				'LW' => 'Heliport lighting',
798
+				'LX' => 'Taxiway center line lights',
799
+				'LY' => 'Taxiway edge lights',
800
+				'LZ' => 'Runway touchdown zone lights');
801 801
 	public $code_movementareas = array(
802
-			    'MA' => 'Movement area',
803
-			    'MB' => 'Bearing strength',
804
-			    'MC' => 'Clearway',
805
-			    'MD' => 'Declared distances',
806
-			    'MG' => 'Taxiing guidance system',
807
-			    'MH' => 'Runway arresting gear',
808
-			    'MK' => 'Parking area',
809
-			    'MM' => 'Daylight markings',
810
-			    'MN' => 'Apron',
811
-			    'MP' => 'Aircraft stands',
812
-			    'MR' => 'Runway',
813
-			    'MS' => 'Stopway',
814
-			    'MT' => 'Threshold',
815
-			    'MU' => 'Runway turning bay',
816
-			    'MW' => 'Strip',
817
-			    'MX' => 'Taxiway');
802
+				'MA' => 'Movement area',
803
+				'MB' => 'Bearing strength',
804
+				'MC' => 'Clearway',
805
+				'MD' => 'Declared distances',
806
+				'MG' => 'Taxiing guidance system',
807
+				'MH' => 'Runway arresting gear',
808
+				'MK' => 'Parking area',
809
+				'MM' => 'Daylight markings',
810
+				'MN' => 'Apron',
811
+				'MP' => 'Aircraft stands',
812
+				'MR' => 'Runway',
813
+				'MS' => 'Stopway',
814
+				'MT' => 'Threshold',
815
+				'MU' => 'Runway turning bay',
816
+				'MW' => 'Strip',
817
+				'MX' => 'Taxiway');
818 818
 	public $code_terminalfacilities = array(
819
-			    'NA' => 'All radio navigation facilities',
820
-			    'NB' => 'Non directional beacon',
821
-			    'NC' => 'DECCA',
822
-			    'ND' => 'Distance measuring equipment',
823
-			    'NF' => 'Fan marker',
824
-			    'NL' => 'Locator',
825
-			    'NM' => 'VOR/DME',
826
-			    'NN' => 'TACAN',
827
-			    'NO' => 'OMEGA',
828
-			    'NT' => 'VORTAC',
829
-			    'NV' => 'VOR',
830
-			    'NX' => 'Direction finding station');
819
+				'NA' => 'All radio navigation facilities',
820
+				'NB' => 'Non directional beacon',
821
+				'NC' => 'DECCA',
822
+				'ND' => 'Distance measuring equipment',
823
+				'NF' => 'Fan marker',
824
+				'NL' => 'Locator',
825
+				'NM' => 'VOR/DME',
826
+				'NN' => 'TACAN',
827
+				'NO' => 'OMEGA',
828
+				'NT' => 'VORTAC',
829
+				'NV' => 'VOR',
830
+				'NX' => 'Direction finding station');
831 831
 	public $code_information = array(
832
-			    'OA' => 'Aeronautical information service',
833
-			    'OB' => 'Obstacle',
834
-			    'OE' => 'Aircraft entry requirements',
835
-			    'OL' => 'Obstacle lights on',
836
-			    'OR' => 'Rescue coordination centre');
832
+				'OA' => 'Aeronautical information service',
833
+				'OB' => 'Obstacle',
834
+				'OE' => 'Aircraft entry requirements',
835
+				'OL' => 'Obstacle lights on',
836
+				'OR' => 'Rescue coordination centre');
837 837
 	public $code_airtraffic = array(
838
-			    'PA' => 'Standard instrument arrival',
839
-			    'PD' => 'Standard instrument departure',
840
-			    'PF' => 'Flow control procedure',
841
-			    'PH' => 'Holding procedure',
842
-			    'PI' => 'Instrument approach procedure',
843
-			    'PL' => 'Obstacle clearance limit',
844
-			    'PM' => 'Aerodrome operating minima',
845
-			    'PO' => 'Obstacle clearance altitude',
846
-			    'PP' => 'Obstacle clearance height',
847
-			    'PR' => 'Radio failure procedure',
848
-			    'PT' => 'Transition altitude',
849
-			    'PU' => 'Missed approach procedure',
850
-			    'PX' => 'Minimum holding altitude',
851
-			    'PZ' => 'ADIZ procedure');
838
+				'PA' => 'Standard instrument arrival',
839
+				'PD' => 'Standard instrument departure',
840
+				'PF' => 'Flow control procedure',
841
+				'PH' => 'Holding procedure',
842
+				'PI' => 'Instrument approach procedure',
843
+				'PL' => 'Obstacle clearance limit',
844
+				'PM' => 'Aerodrome operating minima',
845
+				'PO' => 'Obstacle clearance altitude',
846
+				'PP' => 'Obstacle clearance height',
847
+				'PR' => 'Radio failure procedure',
848
+				'PT' => 'Transition altitude',
849
+				'PU' => 'Missed approach procedure',
850
+				'PX' => 'Minimum holding altitude',
851
+				'PZ' => 'ADIZ procedure');
852 852
 	public $code_navigationw = array(
853
-			    'RA' => 'Airspace reservation',
854
-			    'RD' => 'Danger area',
855
-			    'RO' => 'Overflying of',
856
-			    'RP' => 'Prohibited area',
857
-			    'RR' => 'Restricted area',
858
-			    'RT' => 'Temporary restricted area');
853
+				'RA' => 'Airspace reservation',
854
+				'RD' => 'Danger area',
855
+				'RO' => 'Overflying of',
856
+				'RP' => 'Prohibited area',
857
+				'RR' => 'Restricted area',
858
+				'RT' => 'Temporary restricted area');
859 859
 	public $code_volmet = array(
860
-			    'SA' => 'Automatic terminal information service',
861
-			    'SB' => 'ATS reporting office',
862
-			    'SC' => 'Area control center',
863
-			    'SE' => 'Flight information service',
864
-			    'SF' => 'Airport flight information service',
865
-			    'SL' => 'Flow control centre',
866
-			    'SO' => 'Oceanic area control centre',
867
-			    'SP' => 'Approach control service',
868
-			    'SS' => 'Flight service station',
869
-			    'ST' => 'Airport control tower',
870
-			    'SU' => 'Upper area control centre',
871
-			    'SV' => 'VOLMET broadcast',
872
-			    'SY' => 'Upper advisory service');
860
+				'SA' => 'Automatic terminal information service',
861
+				'SB' => 'ATS reporting office',
862
+				'SC' => 'Area control center',
863
+				'SE' => 'Flight information service',
864
+				'SF' => 'Airport flight information service',
865
+				'SL' => 'Flow control centre',
866
+				'SO' => 'Oceanic area control centre',
867
+				'SP' => 'Approach control service',
868
+				'SS' => 'Flight service station',
869
+				'ST' => 'Airport control tower',
870
+				'SU' => 'Upper area control centre',
871
+				'SV' => 'VOLMET broadcast',
872
+				'SY' => 'Upper advisory service');
873 873
 	public $code_warnings = array(
874
-			    'WA' => 'Air display',
875
-			    'WB' => 'Aerobatics',
876
-			    'WC' => 'Captive balloon or kite',
877
-			    'WD' => 'Demolition of explosives',
878
-			    'WE' => 'Exercises',
879
-			    'WF' => 'Air refueling',
880
-			    'WG' => 'Glider flying',
881
-			    'WJ' => 'Banner/target towing',
882
-			    'WL' => 'Ascent of free balloon',
883
-			    'WM' => 'Missile, gun or rocket firing',
884
-			    'WP' => 'Parachute jumping exercise',
885
-			    'WS' => 'Burning or blowing gas',
886
-			    'WT' => 'Mass movement of aircraft',
887
-			    'WV' => 'Formation flight',
888
-			    'WZ' => 'model flying');
874
+				'WA' => 'Air display',
875
+				'WB' => 'Aerobatics',
876
+				'WC' => 'Captive balloon or kite',
877
+				'WD' => 'Demolition of explosives',
878
+				'WE' => 'Exercises',
879
+				'WF' => 'Air refueling',
880
+				'WG' => 'Glider flying',
881
+				'WJ' => 'Banner/target towing',
882
+				'WL' => 'Ascent of free balloon',
883
+				'WM' => 'Missile, gun or rocket firing',
884
+				'WP' => 'Parachute jumping exercise',
885
+				'WS' => 'Burning or blowing gas',
886
+				'WT' => 'Mass movement of aircraft',
887
+				'WV' => 'Formation flight',
888
+				'WZ' => 'model flying');
889 889
 	public $code_sp_availabity = array(
890
-			    'AC' => 'Withdrawn for maintenance',
891
-			    'AD' => 'Available for daylight operation',
892
-			    'AF' => 'Flight checked and found reliable',
893
-			    'AG' => 'Operating but ground checked only, awaiting flight check',
894
-			    'AH' => 'Hours of service are now',
895
-			    'AK' => 'Resumed normal operations',
896
-			    'AM' => 'Military operations only',
897
-			    'AN' => 'Available for night operation',
898
-			    'AO' => 'Operational',
899
-			    'AP' => 'Available, prior permission required',
900
-			    'AR' => 'Available on request',
901
-			    'AS' => 'Unserviceable',
902
-			    'AU' => 'Not available',
903
-			    'AW' => 'Completely withdrawn',
904
-			    'AX' => 'Previously promulgated shutdown has been cancelled');
890
+				'AC' => 'Withdrawn for maintenance',
891
+				'AD' => 'Available for daylight operation',
892
+				'AF' => 'Flight checked and found reliable',
893
+				'AG' => 'Operating but ground checked only, awaiting flight check',
894
+				'AH' => 'Hours of service are now',
895
+				'AK' => 'Resumed normal operations',
896
+				'AM' => 'Military operations only',
897
+				'AN' => 'Available for night operation',
898
+				'AO' => 'Operational',
899
+				'AP' => 'Available, prior permission required',
900
+				'AR' => 'Available on request',
901
+				'AS' => 'Unserviceable',
902
+				'AU' => 'Not available',
903
+				'AW' => 'Completely withdrawn',
904
+				'AX' => 'Previously promulgated shutdown has been cancelled');
905 905
 	public $code_sp_changes = array(
906
-			    'CA' => 'Activated',
907
-			    'CC' => 'Completed',
908
-			    'CD' => 'Deactivated',
909
-			    'CE' => 'Erected',
910
-			    'CF' => 'Operating frequency(ies) changed to',
911
-			    'CG' => 'Downgraded to',
912
-			    'CH' => 'Changed',
913
-			    'CI' => 'dentification or radio call sign changed to',
914
-			    'CL' => 'Realigned',
915
-			    'CM' => 'Displaced',
916
-			    'CO' => 'Operating',
917
-			    'CP' => 'Operating on reduced power',
918
-			    'CR' => 'Temporarily replaced by',
919
-			    'CS' => 'Installed',
920
-			    'CT' => 'On test, do not use');
906
+				'CA' => 'Activated',
907
+				'CC' => 'Completed',
908
+				'CD' => 'Deactivated',
909
+				'CE' => 'Erected',
910
+				'CF' => 'Operating frequency(ies) changed to',
911
+				'CG' => 'Downgraded to',
912
+				'CH' => 'Changed',
913
+				'CI' => 'dentification or radio call sign changed to',
914
+				'CL' => 'Realigned',
915
+				'CM' => 'Displaced',
916
+				'CO' => 'Operating',
917
+				'CP' => 'Operating on reduced power',
918
+				'CR' => 'Temporarily replaced by',
919
+				'CS' => 'Installed',
920
+				'CT' => 'On test, do not use');
921 921
 	public $code_sp_hazardous = array(
922
-			    'HA' => 'Braking action is',
923
-			    'HB' => 'Braking coefficient is',
924
-			    'HC' => 'Covered by compacted snow to depth of x Ft',
925
-			    'HD' => 'Covered by dry snow to a depth of x Ft',
926
-			    'HE' => 'Covered by water to a depth of x Ft',
927
-			    'HF' => 'Totally free of snow and ice',
928
-			    'HG' => 'Grass cutting in progress',
929
-			    'HH' => 'Hazard due to',
930
-			    'HI' => 'Covered by ice',
931
-			    'HJ' => 'Launch planned',
932
-			    'HK' => 'Migration in progress',
933
-			    'HL' => 'Snow clearance completed',
934
-			    'HM' => 'Marked by',
935
-			    'HN' => 'Covered by wet snow or slush to a depth of x Ft',
936
-			    'HO' => 'Obscured by snow',
937
-			    'HP' => 'Snow clearance in progress',
938
-			    'HQ' => 'Operation cancelled',
939
-			    'HR' => 'Standing water',
940
-			    'HS' => 'Sanding in progress',
941
-			    'HT' => 'Approach according to signal area only',
942
-			    'HU' => 'Launch in progress',
943
-			    'HV' => 'Work completed',
944
-			    'HW' => 'Work in progress',
945
-			    'HX' => 'Concentration of birds',
946
-			    'HY' => 'Snow banks exist',
947
-			    'HZ' => 'Covered by frozen ruts and ridges');
922
+				'HA' => 'Braking action is',
923
+				'HB' => 'Braking coefficient is',
924
+				'HC' => 'Covered by compacted snow to depth of x Ft',
925
+				'HD' => 'Covered by dry snow to a depth of x Ft',
926
+				'HE' => 'Covered by water to a depth of x Ft',
927
+				'HF' => 'Totally free of snow and ice',
928
+				'HG' => 'Grass cutting in progress',
929
+				'HH' => 'Hazard due to',
930
+				'HI' => 'Covered by ice',
931
+				'HJ' => 'Launch planned',
932
+				'HK' => 'Migration in progress',
933
+				'HL' => 'Snow clearance completed',
934
+				'HM' => 'Marked by',
935
+				'HN' => 'Covered by wet snow or slush to a depth of x Ft',
936
+				'HO' => 'Obscured by snow',
937
+				'HP' => 'Snow clearance in progress',
938
+				'HQ' => 'Operation cancelled',
939
+				'HR' => 'Standing water',
940
+				'HS' => 'Sanding in progress',
941
+				'HT' => 'Approach according to signal area only',
942
+				'HU' => 'Launch in progress',
943
+				'HV' => 'Work completed',
944
+				'HW' => 'Work in progress',
945
+				'HX' => 'Concentration of birds',
946
+				'HY' => 'Snow banks exist',
947
+				'HZ' => 'Covered by frozen ruts and ridges');
948 948
 	public $code_sp_limitations = array(
949
-			    'LA' => 'Operating on Auxiliary Power Supply',
950
-			    'LB' => 'Reserved for aircraft based therein',
951
-			    'LC' => 'Closed',
952
-			    'LD' => 'Unsafe',
953
-			    'LE' => 'Operated without auxiliary power supply',
954
-			    'LF' => 'Interference from',
955
-			    'LG' => 'Operating without identification',
956
-			    'LH' => 'Unserviceable for aircraft heavier than',
957
-			    'LI' => 'Close to IFR operations',
958
-			    'LK' => 'Operating as a fixed light',
959
-			    'LL' => 'Usable for lenght of... and width of...',
960
-			    'LN' => 'Close to all night operations',
961
-			    'LP' => 'Prohibited to',
962
-			    'LR' => 'Aircraft restricted to runways and taxiways',
963
-			    'LS' => 'Subject to interruption',
964
-			    'LT' => 'Limited to',
965
-			    'LV' => 'Close to VFR operations',
966
-			    'LW' => 'Will take place',
967
-			    'LX' => 'Operating but caution advised to'); 
949
+				'LA' => 'Operating on Auxiliary Power Supply',
950
+				'LB' => 'Reserved for aircraft based therein',
951
+				'LC' => 'Closed',
952
+				'LD' => 'Unsafe',
953
+				'LE' => 'Operated without auxiliary power supply',
954
+				'LF' => 'Interference from',
955
+				'LG' => 'Operating without identification',
956
+				'LH' => 'Unserviceable for aircraft heavier than',
957
+				'LI' => 'Close to IFR operations',
958
+				'LK' => 'Operating as a fixed light',
959
+				'LL' => 'Usable for lenght of... and width of...',
960
+				'LN' => 'Close to all night operations',
961
+				'LP' => 'Prohibited to',
962
+				'LR' => 'Aircraft restricted to runways and taxiways',
963
+				'LS' => 'Subject to interruption',
964
+				'LT' => 'Limited to',
965
+				'LV' => 'Close to VFR operations',
966
+				'LW' => 'Will take place',
967
+				'LX' => 'Operating but caution advised to'); 
968 968
 
969 969
 	public function __construct($dbc = null) {
970 970
 		$Connection = new Connection($dbc);
Please login to merge, or discard this patch.
Doc Comments   +14 added lines patch added patch discarded remove patch
@@ -1098,6 +1098,10 @@  discard block
 block discarded – undo
1098 1098
 		else return array();
1099 1099
 	}
1100 1100
 
1101
+	/**
1102
+	 * @param string $type
1103
+	 * @param string $rules
1104
+	 */
1101 1105
 	public function addNOTAM($ref,$title,$type,$fir,$code,$rules,$scope,$lower_limit,$upper_limit,$center_latitude,$center_longitude,$radius,$date_begin,$date_end,$permanent,$text,$full_notam) {
1102 1106
 		$query = "INSERT INTO notam (ref,title,notam_type,fir,code,rules,scope,lower_limit,upper_limit,center_latitude,center_longitude,radius,date_begin,date_end,permanent,notam_text,full_notam) VALUES (:ref,:title,:type,:fir,:code,:rules,:scope,:lower_limit,:upper_limit,:center_latitude,:center_longitude,:radius,:date_begin,:date_end,:permanent,:text,:full_notam)";
1103 1107
 		$query_values = array(':ref' => $ref,':title' => $title,':type' => $type,':fir' => $fir,':code' => $code,':rules' => $rules,':scope' => $scope,':lower_limit' => $lower_limit,':upper_limit' => $upper_limit,':center_latitude' => $center_latitude,':center_longitude' => $center_longitude,':radius' => $radius,':date_begin' => $date_begin,':date_end' => $date_end,':permanent' => $permanent,':text' => $text,':full_notam' => $full_notam);
@@ -1179,6 +1183,10 @@  discard block
 block discarded – undo
1179 1183
 			}
1180 1184
 		}
1181 1185
 	}
1186
+
1187
+	/**
1188
+	 * @param string $filename
1189
+	 */
1182 1190
 	public function updateNOTAMfromTextFile($filename) {
1183 1191
 		$alldata = $this->parseNOTAMtextFile($filename);
1184 1192
 		if (count($alldata) > 0) {
@@ -1223,6 +1231,9 @@  discard block
 block discarded – undo
1223 1231
 		}
1224 1232
 	}
1225 1233
 
1234
+	/**
1235
+	 * @param string $icao
1236
+	 */
1226 1237
 	public function downloadNOTAM($icao) {
1227 1238
 		date_default_timezone_set("UTC");
1228 1239
 		$Common = new Common();
@@ -1359,6 +1370,9 @@  discard block
 block discarded – undo
1359 1370
 		return $result;
1360 1371
 	}
1361 1372
 	
1373
+	/**
1374
+	 * @param string $code
1375
+	 */
1362 1376
 	public function parse_code($code) {
1363 1377
 		$code = str_split($code);
1364 1378
 		$code_fp = $code[1].$code[2];
Please login to merge, or discard this patch.
Spacing   +53 added lines, -53 removed lines patch added patch discarded remove patch
@@ -982,19 +982,19 @@  discard block
 block discarded – undo
982 982
 		try {
983 983
 			$sth = $this->db->prepare($query);
984 984
 			$sth->execute($query_values);
985
-		} catch(PDOException $e) {
985
+		} catch (PDOException $e) {
986 986
 			echo "error : ".$e->getMessage();
987 987
 		}
988 988
 		$all = $sth->fetchAll(PDO::FETCH_ASSOC);
989 989
 		return $all;
990 990
 	}
991 991
 	public function getAllNOTAMtext() {
992
-		$query  = 'SELECT full_notam FROM notam';
992
+		$query = 'SELECT full_notam FROM notam';
993 993
 		$query_values = array();
994 994
 		try {
995 995
 			$sth = $this->db->prepare($query);
996 996
 			$sth->execute($query_values);
997
-		} catch(PDOException $e) {
997
+		} catch (PDOException $e) {
998 998
 			echo "error : ".$e->getMessage();
999 999
 		}
1000 1000
 		$all = $sth->fetchAll(PDO::FETCH_ASSOC);
@@ -1003,13 +1003,13 @@  discard block
 block discarded – undo
1003 1003
 	public function createNOTAMtextFile($filename) {
1004 1004
 		$allnotam_result = $this->getAllNOTAMtext();
1005 1005
 		$notamtext = '';
1006
-		foreach($allnotam_result as $notam) {
1006
+		foreach ($allnotam_result as $notam) {
1007 1007
 			$notamtext .= '%%'."\n";
1008 1008
 			$notamtext .= $notam['full_notam'];
1009 1009
 			$notamtext .= "\n".'%%'."\n";
1010 1010
 		}
1011 1011
 		//$allnotam = implode('\n%%%%\n',$allnotam_result);
1012
-		file_put_contents($filename,$notamtext);
1012
+		file_put_contents($filename, $notamtext);
1013 1013
 	}
1014 1014
 	public function parseNOTAMtextFile($filename) {
1015 1015
 		$data = file_get_contents($filename);
@@ -1030,7 +1030,7 @@  discard block
 block discarded – undo
1030 1030
 		try {
1031 1031
 			$sth = $this->db->prepare($query);
1032 1032
 			$sth->execute($query_values);
1033
-		} catch(PDOException $e) {
1033
+		} catch (PDOException $e) {
1034 1034
 			echo "error : ".$e->getMessage();
1035 1035
 		}
1036 1036
 		$all = $sth->fetchAll(PDO::FETCH_ASSOC);
@@ -1039,10 +1039,10 @@  discard block
 block discarded – undo
1039 1039
 	public function getAllNOTAMbyCoord($coord) {
1040 1040
 		global $globalDBdriver;
1041 1041
 		if (is_array($coord)) {
1042
-			$minlong = filter_var($coord[0],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION);
1043
-			$minlat = filter_var($coord[1],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION);
1044
-			$maxlong = filter_var($coord[2],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION);
1045
-			$maxlat = filter_var($coord[3],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION);
1042
+			$minlong = filter_var($coord[0], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
1043
+			$minlat = filter_var($coord[1], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
1044
+			$maxlong = filter_var($coord[2], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
1045
+			$maxlat = filter_var($coord[3], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
1046 1046
 		} else return array();
1047 1047
 		if ($globalDBdriver == 'mysql') {
1048 1048
 			$query  = 'SELECT * FROM notam WHERE center_latitude BETWEEN '.$minlat.' AND '.$maxlat.' AND center_longitude BETWEEN '.$minlong.' AND '.$maxlong.' AND radius > 0 AND date_end > UTC_TIMESTAMP() AND date_begin < UTC_TIMESTAMP()';
@@ -1054,19 +1054,19 @@  discard block
 block discarded – undo
1054 1054
 		try {
1055 1055
 			$sth = $this->db->prepare($query);
1056 1056
 			$sth->execute($query_values);
1057
-		} catch(PDOException $e) {
1057
+		} catch (PDOException $e) {
1058 1058
 			echo "error : ".$e->getMessage();
1059 1059
 		}
1060 1060
 		$all = $sth->fetchAll(PDO::FETCH_ASSOC);
1061 1061
 		return $all;
1062 1062
 	}
1063
-	public function getAllNOTAMbyCoordScope($coord,$scope) {
1063
+	public function getAllNOTAMbyCoordScope($coord, $scope) {
1064 1064
 		global $globalDBdriver;
1065 1065
 		if (is_array($coord)) {
1066
-			$minlong = filter_var($coord[0],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION);
1067
-			$minlat = filter_var($coord[1],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION);
1068
-			$maxlong = filter_var($coord[2],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION);
1069
-			$maxlat = filter_var($coord[3],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION);
1066
+			$minlong = filter_var($coord[0], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
1067
+			$minlat = filter_var($coord[1], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
1068
+			$maxlong = filter_var($coord[2], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
1069
+			$maxlat = filter_var($coord[3], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
1070 1070
 		} else return array();
1071 1071
 		if ($globalDBdriver == 'mysql') {
1072 1072
 			$query  = 'SELECT * FROM notam WHERE center_latitude BETWEEN '.$minlat.' AND '.$maxlat.' AND center_longitude BETWEEN '.$minlong.' AND '.$maxlong.' AND radius > 0 AND date_end > UTC_TIMESTAMP() AND date_begin < UTC_TIMESTAMP() AND scope = :scope';
@@ -1078,7 +1078,7 @@  discard block
 block discarded – undo
1078 1078
 		try {
1079 1079
 			$sth = $this->db->prepare($query);
1080 1080
 			$sth->execute($query_values);
1081
-		} catch(PDOException $e) {
1081
+		} catch (PDOException $e) {
1082 1082
 			echo "error : ".$e->getMessage();
1083 1083
 		}
1084 1084
 		$all = $sth->fetchAll(PDO::FETCH_ASSOC);
@@ -1090,7 +1090,7 @@  discard block
 block discarded – undo
1090 1090
 		try {
1091 1091
 			$sth = $this->db->prepare($query);
1092 1092
 			$sth->execute($query_values);
1093
-		} catch(PDOException $e) {
1093
+		} catch (PDOException $e) {
1094 1094
 			return "error : ".$e->getMessage();
1095 1095
 		}
1096 1096
 		$all = $sth->fetchAll(PDO::FETCH_ASSOC);
@@ -1098,13 +1098,13 @@  discard block
 block discarded – undo
1098 1098
 		else return array();
1099 1099
 	}
1100 1100
 
1101
-	public function addNOTAM($ref,$title,$type,$fir,$code,$rules,$scope,$lower_limit,$upper_limit,$center_latitude,$center_longitude,$radius,$date_begin,$date_end,$permanent,$text,$full_notam) {
1101
+	public function addNOTAM($ref, $title, $type, $fir, $code, $rules, $scope, $lower_limit, $upper_limit, $center_latitude, $center_longitude, $radius, $date_begin, $date_end, $permanent, $text, $full_notam) {
1102 1102
 		$query = "INSERT INTO notam (ref,title,notam_type,fir,code,rules,scope,lower_limit,upper_limit,center_latitude,center_longitude,radius,date_begin,date_end,permanent,notam_text,full_notam) VALUES (:ref,:title,:type,:fir,:code,:rules,:scope,:lower_limit,:upper_limit,:center_latitude,:center_longitude,:radius,:date_begin,:date_end,:permanent,:text,:full_notam)";
1103
-		$query_values = array(':ref' => $ref,':title' => $title,':type' => $type,':fir' => $fir,':code' => $code,':rules' => $rules,':scope' => $scope,':lower_limit' => $lower_limit,':upper_limit' => $upper_limit,':center_latitude' => $center_latitude,':center_longitude' => $center_longitude,':radius' => $radius,':date_begin' => $date_begin,':date_end' => $date_end,':permanent' => $permanent,':text' => $text,':full_notam' => $full_notam);
1103
+		$query_values = array(':ref' => $ref, ':title' => $title, ':type' => $type, ':fir' => $fir, ':code' => $code, ':rules' => $rules, ':scope' => $scope, ':lower_limit' => $lower_limit, ':upper_limit' => $upper_limit, ':center_latitude' => $center_latitude, ':center_longitude' => $center_longitude, ':radius' => $radius, ':date_begin' => $date_begin, ':date_end' => $date_end, ':permanent' => $permanent, ':text' => $text, ':full_notam' => $full_notam);
1104 1104
 		try {
1105 1105
 			$sth = $this->db->prepare($query);
1106 1106
 			$sth->execute($query_values);
1107
-		} catch(PDOException $e) {
1107
+		} catch (PDOException $e) {
1108 1108
 			return "error : ".$e->getMessage();
1109 1109
 		}
1110 1110
 	}
@@ -1115,7 +1115,7 @@  discard block
 block discarded – undo
1115 1115
 		try {
1116 1116
 			$sth = $this->db->prepare($query);
1117 1117
 			$sth->execute($query_values);
1118
-		} catch(PDOException $e) {
1118
+		} catch (PDOException $e) {
1119 1119
 			return "error : ".$e->getMessage();
1120 1120
 		}
1121 1121
 	}
@@ -1130,7 +1130,7 @@  discard block
 block discarded – undo
1130 1130
 		try {
1131 1131
 			$sth = $this->db->prepare($query);
1132 1132
 			$sth->execute($query_values);
1133
-		} catch(PDOException $e) {
1133
+		} catch (PDOException $e) {
1134 1134
 			return "error : ".$e->getMessage();
1135 1135
 		}
1136 1136
 	}
@@ -1140,7 +1140,7 @@  discard block
 block discarded – undo
1140 1140
 		try {
1141 1141
 			$sth = $this->db->prepare($query);
1142 1142
 			$sth->execute($query_values);
1143
-		} catch(PDOException $e) {
1143
+		} catch (PDOException $e) {
1144 1144
 			return "error : ".$e->getMessage();
1145 1145
 		}
1146 1146
 	}
@@ -1149,7 +1149,7 @@  discard block
 block discarded – undo
1149 1149
 		try {
1150 1150
 			$sth = $this->db->prepare($query);
1151 1151
 			$sth->execute();
1152
-		} catch(PDOException $e) {
1152
+		} catch (PDOException $e) {
1153 1153
 			return "error : ".$e->getMessage();
1154 1154
 		}
1155 1155
 	}
@@ -1158,7 +1158,7 @@  discard block
 block discarded – undo
1158 1158
 		try {
1159 1159
 			$sth = $this->db->prepare($query);
1160 1160
 			$sth->execute();
1161
-		} catch(PDOException $e) {
1161
+		} catch (PDOException $e) {
1162 1162
 			return "error : ".$e->getMessage();
1163 1163
 		}
1164 1164
 	}
@@ -1166,14 +1166,14 @@  discard block
 block discarded – undo
1166 1166
 	public function updateNOTAM() {
1167 1167
 		global $globalNOTAMAirports;
1168 1168
 		if (isset($globalNOTAMAirports) && is_array($globalNOTAMAirports) && count($globalNOTAMAirports) > 0) {
1169
-			foreach (array_chunk($globalNOTAMAirports,10) as $airport) {
1170
-				$airport_icao = implode(',',$airport);
1169
+			foreach (array_chunk($globalNOTAMAirports, 10) as $airport) {
1170
+				$airport_icao = implode(',', $airport);
1171 1171
 				$alldata = $this->downloadNOTAM($airport_icao);
1172 1172
 				if (count($alldata) > 0) {
1173 1173
 					foreach ($alldata as $initial_data) {
1174 1174
 						$data = $this->parse($initial_data);
1175 1175
 						$notamref = $this->getNOTAMbyRef($data['ref']);
1176
-						if (count($notamref) == 0) $this->addNOTAM($data['ref'],$data['title'],'',$data['fir'],$data['code'],'',$data['scope'],$data['lower_limit'],$data['upper_limit'],$data['latitude'],$data['longitude'],$data['radius'],$data['date_begin'],$data['date_end'],$data['permanent'],$data['text'],$data['full_notam']);
1176
+						if (count($notamref) == 0) $this->addNOTAM($data['ref'], $data['title'], '', $data['fir'], $data['code'], '', $data['scope'], $data['lower_limit'], $data['upper_limit'], $data['latitude'], $data['longitude'], $data['radius'], $data['date_begin'], $data['date_end'], $data['permanent'], $data['text'], $data['full_notam']);
1177 1177
 					}
1178 1178
 				}
1179 1179
 			}
@@ -1186,7 +1186,7 @@  discard block
 block discarded – undo
1186 1186
 			foreach ($alldata as $initial_data) {
1187 1187
 				$data = $this->parse($initial_data);
1188 1188
 				$notamref = $this->getNOTAMbyRef($data['ref']);
1189
-				if (!isset($notamref['notam_id'])) $this->addNOTAM($data['ref'],$data['title'],'',$data['fir'],$data['code'],'',$data['scope'],$data['lower_limit'],$data['upper_limit'],$data['latitude'],$data['longitude'],$data['radius'],$data['date_begin'],$data['date_end'],$data['permanent'],$data['text'],$data['full_notam']);
1189
+				if (!isset($notamref['notam_id'])) $this->addNOTAM($data['ref'], $data['title'], '', $data['fir'], $data['code'], '', $data['scope'], $data['lower_limit'], $data['upper_limit'], $data['latitude'], $data['longitude'], $data['radius'], $data['date_begin'], $data['date_end'], $data['permanent'], $data['text'], $data['full_notam']);
1190 1190
 			}
1191 1191
 		}
1192 1192
 	}
@@ -1195,12 +1195,12 @@  discard block
 block discarded – undo
1195 1195
 		global $globalTransaction;
1196 1196
 		$Spotter = new Spotter();
1197 1197
 		$allairports = $Spotter->getAllAirportInfo();
1198
-		foreach (array_chunk($allairports,20) as $airport) {
1198
+		foreach (array_chunk($allairports, 20) as $airport) {
1199 1199
 			$airports_icao = array();
1200
-			foreach($airport as $icao) {
1200
+			foreach ($airport as $icao) {
1201 1201
 				if (isset($icao['icao'])) $airports_icao[] = $icao['icao'];
1202 1202
 			}
1203
-			$airport_icao = implode(',',$airports_icao);
1203
+			$airport_icao = implode(',', $airports_icao);
1204 1204
 			$alldata = $this->downloadNOTAM($airport_icao);
1205 1205
 			if ($globalTransaction) $this->db->beginTransaction();
1206 1206
 			if (count($alldata) > 0) {
@@ -1213,7 +1213,7 @@  discard block
 block discarded – undo
1213 1213
 						if (count($notamref) == 0) {
1214 1214
 							if (isset($data['ref_replaced'])) $this->deleteNOTAMbyRef($data['ref_replaced']);
1215 1215
 							if (isset($data['ref_cancelled'])) $this->deleteNOTAMbyRef($data['ref_cancelled']);
1216
-							elseif (isset($data['latitude']) && isset($data['scope']) && isset($data['text']) && isset($data['permanent'])) echo $this->addNOTAM($data['ref'],'','',$data['fir'],$data['code'],'',$data['scope'],$data['lower_limit'],$data['upper_limit'],$data['latitude'],$data['longitude'],$data['radius'],$data['date_begin'],$data['date_end'],$data['permanent'],$data['text'],$data['full_notam']);
1216
+							elseif (isset($data['latitude']) && isset($data['scope']) && isset($data['text']) && isset($data['permanent'])) echo $this->addNOTAM($data['ref'], '', '', $data['fir'], $data['code'], '', $data['scope'], $data['lower_limit'], $data['upper_limit'], $data['latitude'], $data['longitude'], $data['radius'], $data['date_begin'], $data['date_end'], $data['permanent'], $data['text'], $data['full_notam']);
1217 1217
 						}
1218 1218
 					}
1219 1219
 				}
@@ -1227,7 +1227,7 @@  discard block
 block discarded – undo
1227 1227
 		date_default_timezone_set("UTC");
1228 1228
 		$Common = new Common();
1229 1229
 		//$url = str_replace('{icao}',$icao,'https://pilotweb.nas.faa.gov/PilotWeb/notamRetrievalByICAOAction.do?method=displayByICAOs&reportType=RAW&formatType=DOMESTIC&retrieveLocId={icao}&actionType=notamRetrievalByICAOs');
1230
-		$url = str_replace('{icao}',$icao,'https://pilotweb.nas.faa.gov/PilotWeb/notamRetrievalByICAOAction.do?method=displayByICAOs&reportType=RAW&formatType=ICAO&retrieveLocId={icao}&actionType=notamRetrievalByICAOs');
1230
+		$url = str_replace('{icao}', $icao, 'https://pilotweb.nas.faa.gov/PilotWeb/notamRetrievalByICAOAction.do?method=displayByICAOs&reportType=RAW&formatType=ICAO&retrieveLocId={icao}&actionType=notamRetrievalByICAOs');
1231 1231
 		$data = $Common->getData($url);
1232 1232
 		preg_match_all("/<pre>(.+?)<\/pre>/is", $data, $matches);
1233 1233
 		//print_r($matches);
@@ -1239,14 +1239,14 @@  discard block
 block discarded – undo
1239 1239
 		$Common = new Common();
1240 1240
 		$result = array();
1241 1241
 		$result['full_notam'] = $data;
1242
-		$data = str_ireplace(array("\r","\n",'\r','\n'),' ',$data);
1243
-		$data = preg_split('#(?=([A-Z]\)\s))#',$data);
1242
+		$data = str_ireplace(array("\r", "\n", '\r', '\n'), ' ', $data);
1243
+		$data = preg_split('#(?=([A-Z]\)\s))#', $data);
1244 1244
 		//print_r($data);
1245 1245
 		foreach ($data as $line) {
1246 1246
 			$line = trim($line);
1247
-			if (preg_match('#Q\) (.*)#',$line,$matches)) {
1248
-				$line = str_replace(' ','',$line);
1249
-				if (preg_match('#Q\)([A-Z]{4})\/([A-Z]{5})\/(IV|I|V)\/([A-Z]{1,3})\/([A-Z]{1,2})\/([0-9]{3})\/([0-9]{3})\/([0-9]{4})(N|S)([0-9]{5})(E|W)([0-9]{3})#',$line,$matches)) {
1247
+			if (preg_match('#Q\) (.*)#', $line, $matches)) {
1248
+				$line = str_replace(' ', '', $line);
1249
+				if (preg_match('#Q\)([A-Z]{4})\/([A-Z]{5})\/(IV|I|V)\/([A-Z]{1,3})\/([A-Z]{1,2})\/([0-9]{3})\/([0-9]{3})\/([0-9]{4})(N|S)([0-9]{5})(E|W)([0-9]{3})#', $line, $matches)) {
1250 1250
 				//if (preg_match('#Q\)([A-Z]{4})\/([A-Z]{5})\/(IV|I|V)\/([A-Z]{1,3})\/([A-Z]{1,2})\/([0-9]{3})\/([0-9]{3})\/([0-9]{4})(N|S)([0-9]{5})(E|W)([0-9]{3})#',$line,$matches)) {
1251 1251
 					//print_r($matches);
1252 1252
 					$result['fir'] = $matches[1];
@@ -1292,30 +1292,30 @@  discard block
 block discarded – undo
1292 1292
 					elseif ($matches[5] == 'AW') $result['scope'] = 'Airport/Navigation warning';
1293 1293
 					$result['lower_limit'] = $matches[6];
1294 1294
 					$result['upper_limit'] = $matches[7];
1295
-					$latitude = $Common->convertDec($matches[8],'latitude');
1295
+					$latitude = $Common->convertDec($matches[8], 'latitude');
1296 1296
 					if ($matches[9] == 'S') $latitude = -$latitude;
1297
-					$longitude = $Common->convertDec($matches[10],'longitude');
1297
+					$longitude = $Common->convertDec($matches[10], 'longitude');
1298 1298
 					if ($matches[11] == 'W') $longitude = -$longitude;
1299 1299
 					$result['latitude'] = $latitude;
1300 1300
 					$result['longitude'] = $longitude;
1301 1301
 					$result['radius'] = intval($matches[12]);
1302 1302
 				} else echo 'ERROR : '.$line."\n";
1303 1303
 			}
1304
-			elseif (preg_match('#A\) (.*)#',$line,$matches)) {
1304
+			elseif (preg_match('#A\) (.*)#', $line, $matches)) {
1305 1305
 				$result['icao'] = $matches[1];
1306 1306
 			}
1307
-			elseif (preg_match('#B\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})#',$line,$matches)) {
1307
+			elseif (preg_match('#B\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})#', $line, $matches)) {
1308 1308
 				if ($matches[1] > 50) $year = '19'.$matches[1];
1309 1309
 				else $year = '20'.$matches[1];
1310 1310
 				$result['date_begin'] = $year.'/'.$matches[2].'/'.$matches[3].' '.$matches[4].':'.$matches[5];
1311 1311
 			}
1312
-			elseif (preg_match('#C\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})$#',$line,$matches)) {
1312
+			elseif (preg_match('#C\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})$#', $line, $matches)) {
1313 1313
 				if ($matches[1] > 50) $year = '19'.$matches[1];
1314 1314
 				else $year = '20'.$matches[1];
1315 1315
 				$result['date_end'] = $year.'/'.$matches[2].'/'.$matches[3].' '.$matches[4].':'.$matches[5];
1316 1316
 				$result['permanent'] = 0;
1317 1317
 			}
1318
-			elseif (preg_match('#C\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2}) (EST|PERM)$#',$line,$matches)) {
1318
+			elseif (preg_match('#C\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2}) (EST|PERM)$#', $line, $matches)) {
1319 1319
 				if ($matches[1] > 50) $year = '19'.$matches[1];
1320 1320
 				else $year = '20'.$matches[1];
1321 1321
 				$result['date_end'] = $year.'/'.$matches[2].'/'.$matches[3].' '.$matches[4].':'.$matches[5];
@@ -1324,26 +1324,26 @@  discard block
 block discarded – undo
1324 1324
 				if ($matches[6] == 'PERM') $result['permanent'] = 1;
1325 1325
 				else $result['permanent'] = 0;
1326 1326
 			}
1327
-			elseif (preg_match('#C\) (EST|PERM)$#',$line,$matches)) {
1327
+			elseif (preg_match('#C\) (EST|PERM)$#', $line, $matches)) {
1328 1328
 				$result['date_end'] = '2030/12/20 12:00';
1329 1329
 				if ($matches[1] == 'EST') $result['estimated'] = 1;
1330 1330
 				else $result['estimated'] = 0;
1331 1331
 				if ($matches[1] == 'PERM') $result['permanent'] = 1;
1332 1332
 				else $result['permanent'] = 0;
1333 1333
 			}
1334
-			elseif (preg_match('#E\) (.*)#',$line,$matches)) {
1334
+			elseif (preg_match('#E\) (.*)#', $line, $matches)) {
1335 1335
 				$rtext = array();
1336
-				$text = explode(' ',$matches[1]);
1336
+				$text = explode(' ', $matches[1]);
1337 1337
 				foreach ($text as $word) {
1338 1338
 					if (isset($this->abbr[$word])) $rtext[] = strtoupper($this->abbr[$word]);
1339
-					elseif (ctype_digit(strval(substr($word,3))) && isset($this->abbr[substr($word,0,3)])) $rtext[] = strtoupper($this->abbr[substr($word,0,3)]).' '.substr($word,3);
1339
+					elseif (ctype_digit(strval(substr($word, 3))) && isset($this->abbr[substr($word, 0, 3)])) $rtext[] = strtoupper($this->abbr[substr($word, 0, 3)]).' '.substr($word, 3);
1340 1340
 					else $rtext[] = $word;
1341 1341
 				}
1342
-				$result['text'] = implode(' ',$rtext);
1342
+				$result['text'] = implode(' ', $rtext);
1343 1343
 			//} elseif (preg_match('#F\) (.*)#',$line,$matches)) {
1344 1344
 			//} elseif (preg_match('#G\) (.*)#',$line,$matches)) {
1345
-			} elseif (preg_match('#(NOTAMN|NOTAMR|NOTAMC)#',$line,$matches)) {
1346
-				$text = explode(' ',$line);
1345
+			} elseif (preg_match('#(NOTAMN|NOTAMR|NOTAMC)#', $line, $matches)) {
1346
+				$text = explode(' ', $line);
1347 1347
 				$result['ref'] = $text[0];
1348 1348
 				if ($matches[1] == 'NOTAMN') $result['type'] = 'new';
1349 1349
 				if ($matches[1] == 'NOTAMC') {
Please login to merge, or discard this patch.
Braces   +208 added lines, -88 removed lines patch added patch discarded remove patch
@@ -1015,8 +1015,11 @@  discard block
 block discarded – undo
1015 1015
 		$data = file_get_contents($filename);
1016 1016
 		preg_match_all("/%%(.+?)%%/is", $data, $matches);
1017 1017
 		//print_r($matches);
1018
-		if (isset($matches[1])) return $matches[1];
1019
-		else return array();
1018
+		if (isset($matches[1])) {
1019
+			return $matches[1];
1020
+		} else {
1021
+			return array();
1022
+		}
1020 1023
 	}
1021 1024
 	public function getAllNOTAMbyScope($scope) {
1022 1025
 		global $globalDBdriver;
@@ -1043,7 +1046,9 @@  discard block
 block discarded – undo
1043 1046
 			$minlat = filter_var($coord[1],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION);
1044 1047
 			$maxlong = filter_var($coord[2],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION);
1045 1048
 			$maxlat = filter_var($coord[3],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION);
1046
-		} else return array();
1049
+		} else {
1050
+			return array();
1051
+		}
1047 1052
 		if ($globalDBdriver == 'mysql') {
1048 1053
 			$query  = 'SELECT * FROM notam WHERE center_latitude BETWEEN '.$minlat.' AND '.$maxlat.' AND center_longitude BETWEEN '.$minlong.' AND '.$maxlong.' AND radius > 0 AND date_end > UTC_TIMESTAMP() AND date_begin < UTC_TIMESTAMP()';
1049 1054
 		} else {
@@ -1067,7 +1072,9 @@  discard block
 block discarded – undo
1067 1072
 			$minlat = filter_var($coord[1],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION);
1068 1073
 			$maxlong = filter_var($coord[2],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION);
1069 1074
 			$maxlat = filter_var($coord[3],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION);
1070
-		} else return array();
1075
+		} else {
1076
+			return array();
1077
+		}
1071 1078
 		if ($globalDBdriver == 'mysql') {
1072 1079
 			$query  = 'SELECT * FROM notam WHERE center_latitude BETWEEN '.$minlat.' AND '.$maxlat.' AND center_longitude BETWEEN '.$minlong.' AND '.$maxlong.' AND radius > 0 AND date_end > UTC_TIMESTAMP() AND date_begin < UTC_TIMESTAMP() AND scope = :scope';
1073 1080
 		} else {
@@ -1094,8 +1101,11 @@  discard block
 block discarded – undo
1094 1101
 			return "error : ".$e->getMessage();
1095 1102
 		}
1096 1103
 		$all = $sth->fetchAll(PDO::FETCH_ASSOC);
1097
-		if (isset($all[0])) return $all[0];
1098
-		else return array();
1104
+		if (isset($all[0])) {
1105
+			return $all[0];
1106
+		} else {
1107
+			return array();
1108
+		}
1099 1109
 	}
1100 1110
 
1101 1111
 	public function addNOTAM($ref,$title,$type,$fir,$code,$rules,$scope,$lower_limit,$upper_limit,$center_latitude,$center_longitude,$radius,$date_begin,$date_end,$permanent,$text,$full_notam) {
@@ -1173,7 +1183,9 @@  discard block
 block discarded – undo
1173 1183
 					foreach ($alldata as $initial_data) {
1174 1184
 						$data = $this->parse($initial_data);
1175 1185
 						$notamref = $this->getNOTAMbyRef($data['ref']);
1176
-						if (count($notamref) == 0) $this->addNOTAM($data['ref'],$data['title'],'',$data['fir'],$data['code'],'',$data['scope'],$data['lower_limit'],$data['upper_limit'],$data['latitude'],$data['longitude'],$data['radius'],$data['date_begin'],$data['date_end'],$data['permanent'],$data['text'],$data['full_notam']);
1186
+						if (count($notamref) == 0) {
1187
+							$this->addNOTAM($data['ref'],$data['title'],'',$data['fir'],$data['code'],'',$data['scope'],$data['lower_limit'],$data['upper_limit'],$data['latitude'],$data['longitude'],$data['radius'],$data['date_begin'],$data['date_end'],$data['permanent'],$data['text'],$data['full_notam']);
1188
+						}
1177 1189
 					}
1178 1190
 				}
1179 1191
 			}
@@ -1186,7 +1198,9 @@  discard block
 block discarded – undo
1186 1198
 			foreach ($alldata as $initial_data) {
1187 1199
 				$data = $this->parse($initial_data);
1188 1200
 				$notamref = $this->getNOTAMbyRef($data['ref']);
1189
-				if (!isset($notamref['notam_id'])) $this->addNOTAM($data['ref'],$data['title'],'',$data['fir'],$data['code'],'',$data['scope'],$data['lower_limit'],$data['upper_limit'],$data['latitude'],$data['longitude'],$data['radius'],$data['date_begin'],$data['date_end'],$data['permanent'],$data['text'],$data['full_notam']);
1201
+				if (!isset($notamref['notam_id'])) {
1202
+					$this->addNOTAM($data['ref'],$data['title'],'',$data['fir'],$data['code'],'',$data['scope'],$data['lower_limit'],$data['upper_limit'],$data['latitude'],$data['longitude'],$data['radius'],$data['date_begin'],$data['date_end'],$data['permanent'],$data['text'],$data['full_notam']);
1203
+				}
1190 1204
 			}
1191 1205
 		}
1192 1206
 	}
@@ -1198,11 +1212,15 @@  discard block
 block discarded – undo
1198 1212
 		foreach (array_chunk($allairports,20) as $airport) {
1199 1213
 			$airports_icao = array();
1200 1214
 			foreach($airport as $icao) {
1201
-				if (isset($icao['icao'])) $airports_icao[] = $icao['icao'];
1215
+				if (isset($icao['icao'])) {
1216
+					$airports_icao[] = $icao['icao'];
1217
+				}
1202 1218
 			}
1203 1219
 			$airport_icao = implode(',',$airports_icao);
1204 1220
 			$alldata = $this->downloadNOTAM($airport_icao);
1205
-			if ($globalTransaction) $this->db->beginTransaction();
1221
+			if ($globalTransaction) {
1222
+				$this->db->beginTransaction();
1223
+			}
1206 1224
 			if (count($alldata) > 0) {
1207 1225
 				foreach ($alldata as $initial_data) {
1208 1226
 					//print_r($initial_data);
@@ -1211,14 +1229,23 @@  discard block
 block discarded – undo
1211 1229
 					if (isset($data['ref'])) {
1212 1230
 						$notamref = $this->getNOTAMbyRef($data['ref']);
1213 1231
 						if (count($notamref) == 0) {
1214
-							if (isset($data['ref_replaced'])) $this->deleteNOTAMbyRef($data['ref_replaced']);
1215
-							if (isset($data['ref_cancelled'])) $this->deleteNOTAMbyRef($data['ref_cancelled']);
1216
-							elseif (isset($data['latitude']) && isset($data['scope']) && isset($data['text']) && isset($data['permanent'])) echo $this->addNOTAM($data['ref'],'','',$data['fir'],$data['code'],'',$data['scope'],$data['lower_limit'],$data['upper_limit'],$data['latitude'],$data['longitude'],$data['radius'],$data['date_begin'],$data['date_end'],$data['permanent'],$data['text'],$data['full_notam']);
1232
+							if (isset($data['ref_replaced'])) {
1233
+								$this->deleteNOTAMbyRef($data['ref_replaced']);
1234
+							}
1235
+							if (isset($data['ref_cancelled'])) {
1236
+								$this->deleteNOTAMbyRef($data['ref_cancelled']);
1237
+							} elseif (isset($data['latitude']) && isset($data['scope']) && isset($data['text']) && isset($data['permanent'])) {
1238
+								echo $this->addNOTAM($data['ref'],'','',$data['fir'],$data['code'],'',$data['scope'],$data['lower_limit'],$data['upper_limit'],$data['latitude'],$data['longitude'],$data['radius'],$data['date_begin'],$data['date_end'],$data['permanent'],$data['text'],$data['full_notam']);
1239
+							}
1217 1240
 						}
1218 1241
 					}
1219 1242
 				}
1220
-			} else echo 'Error on download. Nothing matches for '.$airport_icao."\n";
1221
-			if ($globalTransaction) $this->db->commit();
1243
+			} else {
1244
+				echo 'Error on download. Nothing matches for '.$airport_icao."\n";
1245
+			}
1246
+			if ($globalTransaction) {
1247
+				$this->db->commit();
1248
+			}
1222 1249
 			sleep(5);
1223 1250
 		}
1224 1251
 	}
@@ -1231,8 +1258,11 @@  discard block
 block discarded – undo
1231 1258
 		$data = $Common->getData($url);
1232 1259
 		preg_match_all("/<pre>(.+?)<\/pre>/is", $data, $matches);
1233 1260
 		//print_r($matches);
1234
-		if (isset($matches[1])) return $matches[1];
1235
-		else return array();
1261
+		if (isset($matches[1])) {
1262
+			return $matches[1];
1263
+		} else {
1264
+			return array();
1265
+		}
1236 1266
 	}
1237 1267
 
1238 1268
 	public function parse($data) {
@@ -1255,89 +1285,145 @@  discard block
 block discarded – undo
1255 1285
 					$rules = str_split($matches[3]);
1256 1286
 					foreach ($rules as $rule) {
1257 1287
 						if ($rule == 'I') {
1258
-							if (isset($result['rules'])) $result['rules'] = $result['rules'].'/IFR';
1259
-							else $result['rules'] = 'IFR';
1288
+							if (isset($result['rules'])) {
1289
+								$result['rules'] = $result['rules'].'/IFR';
1290
+							} else {
1291
+								$result['rules'] = 'IFR';
1292
+							}
1260 1293
 						} elseif ($rule == 'V') {
1261
-							if (isset($result['rules'])) $result['rules'] = $result['rules'].'/VFR';
1262
-							else $result['rules'] = 'VFR';
1294
+							if (isset($result['rules'])) {
1295
+								$result['rules'] = $result['rules'].'/VFR';
1296
+							} else {
1297
+								$result['rules'] = 'VFR';
1298
+							}
1263 1299
 						} elseif ($rule == 'K') {
1264
-							if (isset($result['rules'])) $result['rules'] = $result['rules'].'/Checklist';
1265
-							else $result['rules'] = 'Checklist';
1300
+							if (isset($result['rules'])) {
1301
+								$result['rules'] = $result['rules'].'/Checklist';
1302
+							} else {
1303
+								$result['rules'] = 'Checklist';
1304
+							}
1266 1305
 						}
1267 1306
 					}
1268 1307
 					$attentions = str_split($matches[4]);
1269 1308
 					foreach ($attentions as $attention) {
1270 1309
 						if ($attention == 'N') {
1271
-							if (isset($result['attention'])) $result['attention'] = $result['attention'].' / Immediate attention';
1272
-							else $result['rules'] = 'Immediate attention';
1310
+							if (isset($result['attention'])) {
1311
+								$result['attention'] = $result['attention'].' / Immediate attention';
1312
+							} else {
1313
+								$result['rules'] = 'Immediate attention';
1314
+							}
1273 1315
 						} elseif ($attention == 'B') {
1274
-							if (isset($result['attention'])) $result['attention'] = $result['attention'].' / Operational significance';
1275
-							else $result['rules'] = 'Operational significance';
1316
+							if (isset($result['attention'])) {
1317
+								$result['attention'] = $result['attention'].' / Operational significance';
1318
+							} else {
1319
+								$result['rules'] = 'Operational significance';
1320
+							}
1276 1321
 						} elseif ($attention == 'O') {
1277
-							if (isset($result['attention'])) $result['attention'] = $result['attention'].' / Flight operations';
1278
-							else $result['rules'] = 'Flight operations';
1322
+							if (isset($result['attention'])) {
1323
+								$result['attention'] = $result['attention'].' / Flight operations';
1324
+							} else {
1325
+								$result['rules'] = 'Flight operations';
1326
+							}
1279 1327
 						} elseif ($attention == 'M') {
1280
-							if (isset($result['attention'])) $result['attention'] = $result['attention'].' / Misc';
1281
-							else $result['rules'] = 'Misc';
1328
+							if (isset($result['attention'])) {
1329
+								$result['attention'] = $result['attention'].' / Misc';
1330
+							} else {
1331
+								$result['rules'] = 'Misc';
1332
+							}
1282 1333
 						} elseif ($attention == 'K') {
1283
-							if (isset($result['attention'])) $result['attention'] = $result['attention'].' / Checklist';
1284
-							else $result['rules'] = 'Checklist';
1334
+							if (isset($result['attention'])) {
1335
+								$result['attention'] = $result['attention'].' / Checklist';
1336
+							} else {
1337
+								$result['rules'] = 'Checklist';
1338
+							}
1285 1339
 						}
1286 1340
 					}
1287
-					if ($matches[5] == 'A') $result['scope'] = 'Airport warning';
1288
-					elseif ($matches[5] == 'E') $result['scope'] = 'Enroute warning';
1289
-					elseif ($matches[5] == 'W') $result['scope'] = 'Navigation warning';
1290
-					elseif ($matches[5] == 'K') $result['scope'] = 'Checklist';
1291
-					elseif ($matches[5] == 'AE') $result['scope'] = 'Airport/Enroute warning';
1292
-					elseif ($matches[5] == 'AW') $result['scope'] = 'Airport/Navigation warning';
1341
+					if ($matches[5] == 'A') {
1342
+						$result['scope'] = 'Airport warning';
1343
+					} elseif ($matches[5] == 'E') {
1344
+						$result['scope'] = 'Enroute warning';
1345
+					} elseif ($matches[5] == 'W') {
1346
+						$result['scope'] = 'Navigation warning';
1347
+					} elseif ($matches[5] == 'K') {
1348
+						$result['scope'] = 'Checklist';
1349
+					} elseif ($matches[5] == 'AE') {
1350
+						$result['scope'] = 'Airport/Enroute warning';
1351
+					} elseif ($matches[5] == 'AW') {
1352
+						$result['scope'] = 'Airport/Navigation warning';
1353
+					}
1293 1354
 					$result['lower_limit'] = $matches[6];
1294 1355
 					$result['upper_limit'] = $matches[7];
1295 1356
 					$latitude = $Common->convertDec($matches[8],'latitude');
1296
-					if ($matches[9] == 'S') $latitude = -$latitude;
1357
+					if ($matches[9] == 'S') {
1358
+						$latitude = -$latitude;
1359
+					}
1297 1360
 					$longitude = $Common->convertDec($matches[10],'longitude');
1298
-					if ($matches[11] == 'W') $longitude = -$longitude;
1361
+					if ($matches[11] == 'W') {
1362
+						$longitude = -$longitude;
1363
+					}
1299 1364
 					$result['latitude'] = $latitude;
1300 1365
 					$result['longitude'] = $longitude;
1301 1366
 					$result['radius'] = intval($matches[12]);
1302
-				} else echo 'ERROR : '.$line."\n";
1303
-			}
1304
-			elseif (preg_match('#A\) (.*)#',$line,$matches)) {
1367
+				} else {
1368
+					echo 'ERROR : '.$line."\n";
1369
+				}
1370
+			} elseif (preg_match('#A\) (.*)#',$line,$matches)) {
1305 1371
 				$result['icao'] = $matches[1];
1306
-			}
1307
-			elseif (preg_match('#B\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})#',$line,$matches)) {
1308
-				if ($matches[1] > 50) $year = '19'.$matches[1];
1309
-				else $year = '20'.$matches[1];
1372
+			} elseif (preg_match('#B\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})#',$line,$matches)) {
1373
+				if ($matches[1] > 50) {
1374
+					$year = '19'.$matches[1];
1375
+				} else {
1376
+					$year = '20'.$matches[1];
1377
+				}
1310 1378
 				$result['date_begin'] = $year.'/'.$matches[2].'/'.$matches[3].' '.$matches[4].':'.$matches[5];
1311
-			}
1312
-			elseif (preg_match('#C\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})$#',$line,$matches)) {
1313
-				if ($matches[1] > 50) $year = '19'.$matches[1];
1314
-				else $year = '20'.$matches[1];
1379
+			} elseif (preg_match('#C\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})$#',$line,$matches)) {
1380
+				if ($matches[1] > 50) {
1381
+					$year = '19'.$matches[1];
1382
+				} else {
1383
+					$year = '20'.$matches[1];
1384
+				}
1315 1385
 				$result['date_end'] = $year.'/'.$matches[2].'/'.$matches[3].' '.$matches[4].':'.$matches[5];
1316 1386
 				$result['permanent'] = 0;
1317
-			}
1318
-			elseif (preg_match('#C\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2}) (EST|PERM)$#',$line,$matches)) {
1319
-				if ($matches[1] > 50) $year = '19'.$matches[1];
1320
-				else $year = '20'.$matches[1];
1387
+			} elseif (preg_match('#C\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2}) (EST|PERM)$#',$line,$matches)) {
1388
+				if ($matches[1] > 50) {
1389
+					$year = '19'.$matches[1];
1390
+				} else {
1391
+					$year = '20'.$matches[1];
1392
+				}
1321 1393
 				$result['date_end'] = $year.'/'.$matches[2].'/'.$matches[3].' '.$matches[4].':'.$matches[5];
1322
-				if ($matches[6] == 'EST') $result['estimated'] = 1;
1323
-				else $result['estimated'] = 0;
1324
-				if ($matches[6] == 'PERM') $result['permanent'] = 1;
1325
-				else $result['permanent'] = 0;
1326
-			}
1327
-			elseif (preg_match('#C\) (EST|PERM)$#',$line,$matches)) {
1394
+				if ($matches[6] == 'EST') {
1395
+					$result['estimated'] = 1;
1396
+				} else {
1397
+					$result['estimated'] = 0;
1398
+				}
1399
+				if ($matches[6] == 'PERM') {
1400
+					$result['permanent'] = 1;
1401
+				} else {
1402
+					$result['permanent'] = 0;
1403
+				}
1404
+			} elseif (preg_match('#C\) (EST|PERM)$#',$line,$matches)) {
1328 1405
 				$result['date_end'] = '2030/12/20 12:00';
1329
-				if ($matches[1] == 'EST') $result['estimated'] = 1;
1330
-				else $result['estimated'] = 0;
1331
-				if ($matches[1] == 'PERM') $result['permanent'] = 1;
1332
-				else $result['permanent'] = 0;
1333
-			}
1334
-			elseif (preg_match('#E\) (.*)#',$line,$matches)) {
1406
+				if ($matches[1] == 'EST') {
1407
+					$result['estimated'] = 1;
1408
+				} else {
1409
+					$result['estimated'] = 0;
1410
+				}
1411
+				if ($matches[1] == 'PERM') {
1412
+					$result['permanent'] = 1;
1413
+				} else {
1414
+					$result['permanent'] = 0;
1415
+				}
1416
+			} elseif (preg_match('#E\) (.*)#',$line,$matches)) {
1335 1417
 				$rtext = array();
1336 1418
 				$text = explode(' ',$matches[1]);
1337 1419
 				foreach ($text as $word) {
1338
-					if (isset($this->abbr[$word])) $rtext[] = strtoupper($this->abbr[$word]);
1339
-					elseif (ctype_digit(strval(substr($word,3))) && isset($this->abbr[substr($word,0,3)])) $rtext[] = strtoupper($this->abbr[substr($word,0,3)]).' '.substr($word,3);
1340
-					else $rtext[] = $word;
1420
+					if (isset($this->abbr[$word])) {
1421
+						$rtext[] = strtoupper($this->abbr[$word]);
1422
+					} elseif (ctype_digit(strval(substr($word,3))) && isset($this->abbr[substr($word,0,3)])) {
1423
+						$rtext[] = strtoupper($this->abbr[substr($word,0,3)]).' '.substr($word,3);
1424
+					} else {
1425
+						$rtext[] = $word;
1426
+					}
1341 1427
 				}
1342 1428
 				$result['text'] = implode(' ',$rtext);
1343 1429
 			//} elseif (preg_match('#F\) (.*)#',$line,$matches)) {
@@ -1345,7 +1431,9 @@  discard block
 block discarded – undo
1345 1431
 			} elseif (preg_match('#(NOTAMN|NOTAMR|NOTAMC)#',$line,$matches)) {
1346 1432
 				$text = explode(' ',$line);
1347 1433
 				$result['ref'] = $text[0];
1348
-				if ($matches[1] == 'NOTAMN') $result['type'] = 'new';
1434
+				if ($matches[1] == 'NOTAMN') {
1435
+					$result['type'] = 'new';
1436
+				}
1349 1437
 				if ($matches[1] == 'NOTAMC') {
1350 1438
 					$result['type'] = 'cancel';
1351 1439
 					$result['ref_cancelled'] = $text[2];
@@ -1367,69 +1455,101 @@  discard block
 block discarded – undo
1367 1455
 		switch ($code[1]) {
1368 1456
 			case 'A':
1369 1457
 				$result = 'Airspace organization ';
1370
-				if (isset($this->code_airspace[$code_fp])) $result .= $this->code_airspace[$code_fp];
1458
+				if (isset($this->code_airspace[$code_fp])) {
1459
+					$result .= $this->code_airspace[$code_fp];
1460
+				}
1371 1461
 				break;
1372 1462
 			case 'C':
1373 1463
 				$result = 'Communications and radar facilities ';
1374
-				if (isset($this->code_comradar[$code_fp])) $result .= $this->code_comradar[$code_fp];
1464
+				if (isset($this->code_comradar[$code_fp])) {
1465
+					$result .= $this->code_comradar[$code_fp];
1466
+				}
1375 1467
 				break;
1376 1468
 			case 'F':
1377 1469
 				$result = 'Facilities and services ';
1378
-				if (isset($this->code_facilities[$code_fp])) $result .= $this->code_facilities[$code_fp];
1470
+				if (isset($this->code_facilities[$code_fp])) {
1471
+					$result .= $this->code_facilities[$code_fp];
1472
+				}
1379 1473
 				break;
1380 1474
 			case 'I':
1381 1475
 				$result = 'Instrument and Microwave Landing System ';
1382
-				if (isset($this->code_instrumentlanding[$code_fp])) $result .= $this->code_instrumentlanding[$code_fp];
1476
+				if (isset($this->code_instrumentlanding[$code_fp])) {
1477
+					$result .= $this->code_instrumentlanding[$code_fp];
1478
+				}
1383 1479
 				break;
1384 1480
 			case 'L':
1385 1481
 				$result = 'Lighting facilities ';
1386
-				if (isset($this->code_lightingfacilities[$code_fp])) $result .= $this->code_lightingfacilities[$code_fp];
1482
+				if (isset($this->code_lightingfacilities[$code_fp])) {
1483
+					$result .= $this->code_lightingfacilities[$code_fp];
1484
+				}
1387 1485
 				break;
1388 1486
 			case 'M':
1389 1487
 				$result = 'Movement and landing areas ';
1390
-				if (isset($this->code_movementareas[$code_fp])) $result .= $this->code_movementareas[$code_fp];
1488
+				if (isset($this->code_movementareas[$code_fp])) {
1489
+					$result .= $this->code_movementareas[$code_fp];
1490
+				}
1391 1491
 				break;
1392 1492
 			case 'N':
1393 1493
 				$result = 'Terminal and En Route Navigation Facilities ';
1394
-				if (isset($this->code_terminalfacilities[$code_fp])) $result .= $this->code_terminalfacilities[$code_fp];
1494
+				if (isset($this->code_terminalfacilities[$code_fp])) {
1495
+					$result .= $this->code_terminalfacilities[$code_fp];
1496
+				}
1395 1497
 				break;
1396 1498
 			case 'O':
1397 1499
 				$result = 'Other information ';
1398
-				if (isset($this->code_information[$code_fp])) $result .= $this->code_information[$code_fp];
1500
+				if (isset($this->code_information[$code_fp])) {
1501
+					$result .= $this->code_information[$code_fp];
1502
+				}
1399 1503
 				break;
1400 1504
 			case 'P':
1401 1505
 				$result = 'Air Traffic procedures ';
1402
-				if (isset($this->code_airtraffic[$code_fp])) $result .= $this->code_airtraffic[$code_fp];
1506
+				if (isset($this->code_airtraffic[$code_fp])) {
1507
+					$result .= $this->code_airtraffic[$code_fp];
1508
+				}
1403 1509
 				break;
1404 1510
 			case 'R':
1405 1511
 				$result = 'Navigation Warnings: Airspace Restrictions ';
1406
-				if (isset($this->code_navigationw[$code_fp])) $result .= $this->code_navigationw[$code_fp];
1512
+				if (isset($this->code_navigationw[$code_fp])) {
1513
+					$result .= $this->code_navigationw[$code_fp];
1514
+				}
1407 1515
 				break;
1408 1516
 			case 'S':
1409 1517
 				$result = 'Air Traffic and VOLMET Services ';
1410
-				if (isset($this->code_volmet[$code_fp])) $result .= $this->code_volmet[$code_fp];
1518
+				if (isset($this->code_volmet[$code_fp])) {
1519
+					$result .= $this->code_volmet[$code_fp];
1520
+				}
1411 1521
 				break;
1412 1522
 			case 'W':
1413 1523
 				$result = 'Navigation Warnings: Warnings ';
1414
-				if (isset($this->code_warnings[$code_fp])) $result .= $this->code_warnings[$code_fp];
1524
+				if (isset($this->code_warnings[$code_fp])) {
1525
+					$result .= $this->code_warnings[$code_fp];
1526
+				}
1415 1527
 				break;
1416 1528
 		}
1417 1529
 		switch ($code[3]) {
1418 1530
 			case 'A':
1419 1531
 				// Availability
1420
-				if (isset($this->code_sp_availabity[$code_sp])) $result .= ' '.$this->code_sp_availabity[$code_sp];
1532
+				if (isset($this->code_sp_availabity[$code_sp])) {
1533
+					$result .= ' '.$this->code_sp_availabity[$code_sp];
1534
+				}
1421 1535
 				break;
1422 1536
 			case 'C':
1423 1537
 				// Changes
1424
-				if (isset($this->code_sp_changes[$code_sp])) $result .= ' '.$this->code_sp_changes[$code_sp];
1538
+				if (isset($this->code_sp_changes[$code_sp])) {
1539
+					$result .= ' '.$this->code_sp_changes[$code_sp];
1540
+				}
1425 1541
 				break;
1426 1542
 			case 'H':
1427 1543
 				// Hazardous conditions
1428
-				if (isset($this->code_sp_hazardous[$code_sp])) $result .= ' '.$this->code_sp_hazardous[$code_sp];
1544
+				if (isset($this->code_sp_hazardous[$code_sp])) {
1545
+					$result .= ' '.$this->code_sp_hazardous[$code_sp];
1546
+				}
1429 1547
 				break;
1430 1548
 			case 'L':
1431 1549
 				// Limitations
1432
-				if (isset($this->code_sp_limitations[$code_sp])) $result .= ' '.$this->code_sp_limitations[$code_sp];
1550
+				if (isset($this->code_sp_limitations[$code_sp])) {
1551
+					$result .= ' '.$this->code_sp_limitations[$code_sp];
1552
+				}
1433 1553
 				break;
1434 1554
 			case 'X':
1435 1555
 				// Other Information
Please login to merge, or discard this patch.
waypoints-geojson.php 2 patches
Indentation   +16 added lines, -16 removed lines patch added patch discarded remove patch
@@ -26,7 +26,7 @@  discard block
 block discarded – undo
26 26
 		date_default_timezone_set('UTC');
27 27
 		//waypoint plotting
28 28
 		$output .= '{"type": "Feature",';
29
-		    $output .= '"properties": {';
29
+			$output .= '"properties": {';
30 30
 			$output .= '"segment_name": "'.$spotter_item['segment_name'].'",';
31 31
 			$output .= '"base": "'.$spotter_item['base'].'",';
32 32
 			$output .= '"top": "'.$spotter_item['top'].'",';
@@ -49,15 +49,15 @@  discard block
 block discarded – undo
49 49
 				$output .= '"stroke": "#f0f0f0",';
50 50
 				$output .= '"stroke-width": 2';
51 51
 //			}
52
-		    $output .= '},';
53
-		    $output .= '"geometry": {';
52
+			$output .= '},';
53
+			$output .= '"geometry": {';
54 54
 			$output .= '"type": "LineString",';
55 55
 			$output .= '"coordinates": [';
56
-			    //$output .= '['.$spotter_item['longitude_begin'].', '.$spotter_item['latitude_begin'].'], ['.$spotter_item['longitude_end'].', '.$spotter_item['latitude_end'].'], ['.$spotter_item['longitude_end_seg2'].', '.$spotter_item['latitude_end_seg2'].']';
57
-			    $output .= '['.$spotter_item['longitude_begin'].', '.$spotter_item['latitude_begin'].','.round($spotter_item['base']*100*0.3048).'], ['.$spotter_item['longitude_end'].', '.$spotter_item['latitude_end'].','.round($spotter_item['base']*100*0.3048).']';
56
+				//$output .= '['.$spotter_item['longitude_begin'].', '.$spotter_item['latitude_begin'].'], ['.$spotter_item['longitude_end'].', '.$spotter_item['latitude_end'].'], ['.$spotter_item['longitude_end_seg2'].', '.$spotter_item['latitude_end_seg2'].']';
57
+				$output .= '['.$spotter_item['longitude_begin'].', '.$spotter_item['latitude_begin'].','.round($spotter_item['base']*100*0.3048).'], ['.$spotter_item['longitude_end'].', '.$spotter_item['latitude_end'].','.round($spotter_item['base']*100*0.3048).']';
58 58
 			//    $output .= '['.$spotter_item['latitude_begin'].', '.$spotter_item['longitude_begin'].'], ['.$spotter_item['latitude_end'].', '.$spotter_item['longitude_end'].']';
59 59
 			$output .= ']';
60
-		    $output .= '}';
60
+			$output .= '}';
61 61
 /*		    $output .= '"geometry": {';
62 62
 			$output .= '"type": "Point",';
63 63
 			$output .= '"coordinates": [';
@@ -68,7 +68,7 @@  discard block
 block discarded – undo
68 68
 		$output .= '},';
69 69
 		//waypoint plotting
70 70
 		$output .= '{"type": "Feature",';
71
-		    $output .= '"properties": {';
71
+			$output .= '"properties": {';
72 72
 			$output .= '"ident": "'.$spotter_item['name_begin'].'",';
73 73
 			$output .= '"high": "'.$spotter_item['high'].'",';
74 74
 			$output .= '"alt": "'.$spotter_item['base'].'",';
@@ -98,17 +98,17 @@  discard block
 block discarded – undo
98 98
 				$output .= '"marker-size": "small",';
99 99
 				$output .= '"marker-color": "#0000ff"';
100 100
 			}
101
-		    $output .= '},';
102
-		    $output .= '"geometry": {';
101
+			$output .= '},';
102
+			$output .= '"geometry": {';
103 103
 			$output .= '"type": "Point",';
104 104
 			$output .= '"coordinates": [';
105
-			    $output .= $spotter_item['longitude_begin'].', '.$spotter_item['latitude_begin'].', '.round($spotter_item['base']*100*0.3048);;
105
+				$output .= $spotter_item['longitude_begin'].', '.$spotter_item['latitude_begin'].', '.round($spotter_item['base']*100*0.3048);;
106 106
 			$output .= ']';
107
-		    $output .= '}';
107
+			$output .= '}';
108 108
 
109 109
 		$output .= '},';
110 110
 		$output .= '{"type": "Feature",';
111
-		    $output .= '"properties": {';
111
+			$output .= '"properties": {';
112 112
 			$output .= '"ident": "'.$spotter_item['name_end'].'",';
113 113
 			$output .= '"high": "'.$spotter_item['high'].'",';
114 114
 			$output .= '"alt": "'.$spotter_item['top'].'",';
@@ -145,13 +145,13 @@  discard block
 block discarded – undo
145 145
 				$output .= '"marker-size": "small",';
146 146
 				$output .= '"marker-color": "#0000ff"';
147 147
 			}
148
-		    $output .= '},';
149
-		    $output .= '"geometry": {';
148
+			$output .= '},';
149
+			$output .= '"geometry": {';
150 150
 			$output .= '"type": "Point",';
151 151
 			$output .= '"coordinates": [';
152
-			    $output .= $spotter_item['longitude_end'].', '.$spotter_item['latitude_end'].', '.round($spotter_item['base']*100*0.3048);
152
+				$output .= $spotter_item['longitude_end'].', '.$spotter_item['latitude_end'].', '.round($spotter_item['base']*100*0.3048);
153 153
 			$output .= ']';
154
-		    $output .= '}';
154
+			$output .= '}';
155 155
 
156 156
 		$output .= '},';
157 157
 	}
Please login to merge, or discard this patch.
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -10,7 +10,7 @@  discard block
 block discarded – undo
10 10
 
11 11
 if (isset($_GET['coord'])) 
12 12
 {
13
-	$coords = explode(',',$_GET['coord']);
13
+	$coords = explode(',', $_GET['coord']);
14 14
 	$spotter_array = $Spotter->getAllWaypointsInfobyCoord($coords);
15 15
 } else {
16 16
 	die;
@@ -21,7 +21,7 @@  discard block
 block discarded – undo
21 21
 if (!empty($spotter_array))
22 22
 {	  
23 23
 //	print_r($spotter_array);
24
-	foreach($spotter_array as $spotter_item)
24
+	foreach ($spotter_array as $spotter_item)
25 25
 	{
26 26
 		date_default_timezone_set('UTC');
27 27
 		//waypoint plotting
@@ -102,7 +102,7 @@  discard block
 block discarded – undo
102 102
 		    $output .= '"geometry": {';
103 103
 			$output .= '"type": "Point",';
104 104
 			$output .= '"coordinates": [';
105
-			    $output .= $spotter_item['longitude_begin'].', '.$spotter_item['latitude_begin'].', '.round($spotter_item['base']*100*0.3048);;
105
+			    $output .= $spotter_item['longitude_begin'].', '.$spotter_item['latitude_begin'].', '.round($spotter_item['base']*100*0.3048); ;
106 106
 			$output .= ']';
107 107
 		    $output .= '}';
108 108
 
Please login to merge, or discard this patch.
airspace-data.php 2 patches
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -7,7 +7,7 @@  discard block
 block discarded – undo
7 7
 <button type="button" class="close">&times;</button>
8 8
 <?php
9 9
 
10
-$airspaceid = filter_input(INPUT_GET,'airspace',FILTER_SANITIZE_NUMBER_INT);
10
+$airspaceid = filter_input(INPUT_GET, 'airspace', FILTER_SANITIZE_NUMBER_INT);
11 11
 //$notamref = urldecode($notamref);
12 12
 if ($globalDBdriver == 'mysql') {
13 13
 	$query = "SELECT * FROM airspace WHERE ogr_fid = :id";
@@ -18,10 +18,10 @@  discard block
 block discarded – undo
18 18
 try {
19 19
 	$sth = $Connection->db->prepare($query);
20 20
 	$sth->execute(array(':id' => $airspaceid));
21
-} catch(PDOException $e) {
21
+} catch (PDOException $e) {
22 22
 	echo "error";
23 23
 }
24
-$result=$sth->fetchAll(PDO::FETCH_ASSOC);
24
+$result = $sth->fetchAll(PDO::FETCH_ASSOC);
25 25
 $airspace = $result[0];
26 26
 date_default_timezone_set('UTC');
27 27
 print '<div class="top">';
Please login to merge, or discard this patch.
Braces   +9 added lines, -3 removed lines patch added patch discarded remove patch
@@ -25,7 +25,9 @@  discard block
 block discarded – undo
25 25
 $airspace = $result[0];
26 26
 date_default_timezone_set('UTC');
27 27
 print '<div class="top">';
28
-if (isset($airspace['name'])) $airspace['title'] = $airspace['name']; 
28
+if (isset($airspace['name'])) {
29
+	$airspace['title'] = $airspace['name'];
30
+}
29 31
 print '<div class="right"><div class="callsign-details"><div class="callsign">'.$airspace['title'].'</a></div>';
30 32
 print '</div>';
31 33
 print '<div class="details">';
@@ -44,13 +46,17 @@  discard block
 block discarded – undo
44 46
 	print '</div>';
45 47
 }
46 48
 
47
-if (isset($airspace['ceiling'])) $airspace['tops'] = $airspace['ceiling'];
49
+if (isset($airspace['ceiling'])) {
50
+	$airspace['tops'] = $airspace['ceiling'];
51
+}
48 52
 print '<div>';
49 53
 print '<span>'._("Tops").'</span>';
50 54
 print $airspace['tops'];
51 55
 print '</div>';
52 56
 
53
-if (isset($airspace['floor'])) $airspace['base'] = $airspace['floor'];
57
+if (isset($airspace['floor'])) {
58
+	$airspace['base'] = $airspace['floor'];
59
+}
54 60
 print '<div>';
55 61
 print '<span>'._("Base").'</span>';
56 62
 print $airspace['base'];
Please login to merge, or discard this patch.
scripts/update_db.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -9,7 +9,7 @@
 block discarded – undo
9 9
 if (strtoupper(substr(PHP_OS, 0, 3)) != 'WIN') {
10 10
 	exec("ps ux", $output, $result);
11 11
 	$j = 0;
12
-	foreach ($output as $line) if(strpos($line, "update_db.php") && !strpos($line, "sh ")) $j++;
12
+	foreach ($output as $line) if (strpos($line, "update_db.php") && !strpos($line, "sh ")) $j++;
13 13
 	if ($j > 1) {
14 14
 		echo "Script is already runnning...";
15 15
 		die();
Please login to merge, or discard this patch.
Braces   +20 added lines, -8 removed lines patch added patch discarded remove patch
@@ -9,7 +9,9 @@  discard block
 block discarded – undo
9 9
 if (strtoupper(substr(PHP_OS, 0, 3)) != 'WIN') {
10 10
 	exec("ps ux", $output, $result);
11 11
 	$j = 0;
12
-	foreach ($output as $line) if(strpos($line, "update_db.php") && !strpos($line, "sh ")) $j++;
12
+	foreach ($output as $line) {
13
+		if(strpos($line, "update_db.php") && !strpos($line, "sh ")) $j++;
14
+	}
13 15
 	if ($j > 1) {
14 16
 		echo "Script is already runnning...";
15 17
 		die();
@@ -28,8 +30,10 @@  discard block
 block discarded – undo
28 30
 			$update_db->update_notam();
29 31
 		}
30 32
 		$update_db->insert_last_notam_update();
31
-	} elseif (isset($globalDebug) && $globalDebug && isset($globalNOTAM) && $globalNOTAM) echo "NOTAM are only updated once a day.\n";
32
-}
33
+	} elseif (isset($globalDebug) && $globalDebug && isset($globalNOTAM) && $globalNOTAM) {
34
+		echo "NOTAM are only updated once a day.\n";
35
+	}
36
+	}
33 37
 
34 38
 if ($update_db->check_last_update() && (!isset($globalIVAO) || !$globalIVAO) && (!isset($globalVATSIM) || !$globalVATSIM) && (!isset($globalphpVMS) || !$globalphpVMS)) {
35 39
 	$update_db->update_all();
@@ -37,7 +41,9 @@  discard block
 block discarded – undo
37 41
 //	$Spotter = new Spotter();
38 42
 //	$Spotter->updateFieldsFromOtherTables();
39 43
 	$update_db->insert_last_update();
40
-} elseif (isset($globalDebug) && $globalDebug && (!isset($globalphpVMS) || !$globalphpVMS) && (!isset($globalIVAO) || !$globalIVAO) && (!isset($globalVATSIM) || !$globalVATSIM)) echo "DB are populated with external data only every 15 days ! Files are not updated more often.\n";
44
+} elseif (isset($globalDebug) && $globalDebug && (!isset($globalphpVMS) || !$globalphpVMS) && (!isset($globalIVAO) || !$globalIVAO) && (!isset($globalVATSIM) || !$globalVATSIM)) {
45
+	echo "DB are populated with external data only every 15 days ! Files are not updated more often.\n";
46
+}
41 47
 
42 48
 
43 49
 if (isset($globalMETAR) && isset($globalMETARcycle) && $globalMETAR && $globalMETARcycle) {
@@ -47,22 +53,28 @@  discard block
 block discarded – undo
47 53
 	if ($METAR->check_last_update()) {
48 54
 		$METAR->addMETARCycle();
49 55
 		$METAR->insert_last_update();
50
-	} else echo "METAR are only updated every 30 minutes.\n";
51
-}
56
+	} else {
57
+		echo "METAR are only updated every 30 minutes.\n";
58
+	}
59
+	}
52 60
 
53 61
 
54 62
 if (isset($globalOwner) && $globalOwner && $update_db->check_last_owner_update() && (!isset($globalIVAO) || !$globalIVAO) && (!isset($globalVATSIM) || !$globalVATSIM) && (!isset($globalphpVMS) || !$globalphpVMS)) {
55 63
 	echo "Updating private aircraft's owners...";
56 64
 	$update_db->update_owner();
57 65
 	$update_db->insert_last_owner_update();
58
-} elseif (isset($globalDebug) && $globalDebug && isset($globalOwner) && $globalOwner && (!isset($globalIVAO) || !$globalIVAO) && (!isset($globalVATSIM) || !$globalVATSIM) && (!isset($globalphpVMS) || !$globalphpVMS)) echo "Owner are only updated every 15 days.\n";
66
+} elseif (isset($globalDebug) && $globalDebug && isset($globalOwner) && $globalOwner && (!isset($globalIVAO) || !$globalIVAO) && (!isset($globalVATSIM) || !$globalVATSIM) && (!isset($globalphpVMS) || !$globalphpVMS)) {
67
+	echo "Owner are only updated every 15 days.\n";
68
+}
59 69
 
60 70
 if (isset($globalSchedules) && $globalSchedules && $update_db->check_last_schedules_update() && (!isset($globalIVAO) || !$globalIVAO) && (!isset($globalVATSIM) || !$globalVATSIM) && (!isset($globalphpVMS) || !$globalphpVMS)) {
61 71
 	echo "Updating schedules...";
62 72
 	$update_db->update_oneworld();
63 73
 	$update_db->update_skyteam();
64 74
 	$update_db->insert_last_schedules_update();
65
-} elseif (isset($globalDebug) && $globalDebug && isset($globalOwner) && $globalOwner && (!isset($globalIVAO) || !$globalIVAO) && (!isset($globalVATSIM) || !$globalVATSIM) && (!isset($globalphpVMS) || !$globalphpVMS)) echo "Schedules are only updated every 15 days.\n";
75
+} elseif (isset($globalDebug) && $globalDebug && isset($globalOwner) && $globalOwner && (!isset($globalIVAO) || !$globalIVAO) && (!isset($globalVATSIM) || !$globalVATSIM) && (!isset($globalphpVMS) || !$globalphpVMS)) {
76
+	echo "Schedules are only updated every 15 days.\n";
77
+}
66 78
 
67 79
 if (isset($globalArchiveMonths) && $globalArchiveMonths > 0) {
68 80
 	echo "Updating statistics and archive old data...";
Please login to merge, or discard this patch.
install/VAM/VAM-json.php 1 patch
Spacing   +18 added lines, -18 removed lines patch added patch discarded remove patch
@@ -11,28 +11,28 @@
 block discarded – undo
11 11
 	die();
12 12
 }
13 13
 $query = 'select * from vam_live_flights rc, gvausers gu where gu.gvauser_id = rc.gvauser_id';  
14
-$json_data=array();  
14
+$json_data = array();  
15 15
 $result = $db->query($query);
16 16
 while ($rec = $result->fetch_assoc())
17 17
 {  
18
-	$json_array['gvauser_id']=$rec['gvauser_id']; // users "pilot unique ID" "40"
19
-	$json_array['flight_id']=$rec['flight_id']; // flight_id
20
-	$json_array['pilot_id']=$rec['callsign']; // users pilot_id "VAM500"
21
-	$json_array['callsign']=substr($rec['flight_id'],-7);  // substr icao Flight "AFR524"
22
-	$json_array['pilot_name']=$rec['name'] .' '.$rec['surname'] ;  // Users "name + surname"
23
-	$json_array['plane_type']=$rec['plane_type'];  // type Plane "B739"
24
-	$json_array['departure']=$rec['departure'];  // departure ICAO
25
-	$json_array['arrival']=$rec['arrival'];     // arrival Ident
26
-	$json_array['latitude']=$rec['latitude'];  // return 55.7328860921521
27
-	$json_array['longitude']=$rec['longitude'];  // return 8.87433614409404
28
-	$json_array['altitude']=$rec['altitude'];  // return "147"
29
-	$json_array['heading']=$rec['heading'];  // return "307"
30
-	$json_array['ias']=$rec['ias'];  // return speed "IAS"
31
-	$json_array['gs']=$rec['gs'];  // return speed "GS"
18
+	$json_array['gvauser_id'] = $rec['gvauser_id']; // users "pilot unique ID" "40"
19
+	$json_array['flight_id'] = $rec['flight_id']; // flight_id
20
+	$json_array['pilot_id'] = $rec['callsign']; // users pilot_id "VAM500"
21
+	$json_array['callsign'] = substr($rec['flight_id'], -7); // substr icao Flight "AFR524"
22
+	$json_array['pilot_name'] = $rec['name'].' '.$rec['surname']; // Users "name + surname"
23
+	$json_array['plane_type'] = $rec['plane_type']; // type Plane "B739"
24
+	$json_array['departure'] = $rec['departure']; // departure ICAO
25
+	$json_array['arrival'] = $rec['arrival']; // arrival Ident
26
+	$json_array['latitude'] = $rec['latitude']; // return 55.7328860921521
27
+	$json_array['longitude'] = $rec['longitude']; // return 8.87433614409404
28
+	$json_array['altitude'] = $rec['altitude']; // return "147"
29
+	$json_array['heading'] = $rec['heading']; // return "307"
30
+	$json_array['ias'] = $rec['ias']; // return speed "IAS"
31
+	$json_array['gs'] = $rec['gs']; // return speed "GS"
32 32
 	// $json_array['routes']=$rec['routes'];  // (unusable)
33
-	$json_array['flight_status']=$rec['flight_status'];  // "return Status"
34
-	$json_array['last_update']=$rec['last_update'];  // return "DateTime"
35
-	array_push($json_data,$json_array);  
33
+	$json_array['flight_status'] = $rec['flight_status']; // "return Status"
34
+	$json_array['last_update'] = $rec['last_update']; // return "DateTime"
35
+	array_push($json_data, $json_array);  
36 36
  }  
37 37
 echo json_encode($json_data);  
38 38
 ?>
39 39
\ No newline at end of file
Please login to merge, or discard this patch.
scripts/daemon-spotter.php 3 patches
Indentation   +691 added lines, -691 removed lines patch added patch discarded remove patch
@@ -19,44 +19,44 @@  discard block
 block discarded – undo
19 19
 // Check if schema is at latest version
20 20
 $Connection = new Connection();
21 21
 if ($Connection->latest() === false) {
22
-    echo "You MUST update to latest schema. Run install/index.php";
23
-    exit();
22
+	echo "You MUST update to latest schema. Run install/index.php";
23
+	exit();
24 24
 }
25 25
 
26 26
 
27 27
 // This is to be compatible with old version of settings.php
28 28
 if (!isset($globalSources)) {
29
-    if (isset($globalSBS1Hosts)) {
30
-        //$hosts = $globalSBS1Hosts;
31
-        foreach ($globalSBS1Hosts as $host) {
32
-	    $globalSources[] = array('host' => $host);
33
-    	}
34
-    } else {
35
-        if (!isset($globalSBS1Host)) {
36
-	    echo '$globalSources MUST be defined !';
37
-	    die;
29
+	if (isset($globalSBS1Hosts)) {
30
+		//$hosts = $globalSBS1Hosts;
31
+		foreach ($globalSBS1Hosts as $host) {
32
+		$globalSources[] = array('host' => $host);
33
+		}
34
+	} else {
35
+		if (!isset($globalSBS1Host)) {
36
+		echo '$globalSources MUST be defined !';
37
+		die;
38 38
 	}
39 39
 	//$hosts = array($globalSBS1Host.':'.$globalSBS1Port);
40 40
 	$globalSources[] = array('host' => $globalSBS1Host,'port' => $globalSBS1Port);
41
-    }
41
+	}
42 42
 }
43 43
 
44 44
 $options = getopt('s::',array('source::','server','idsource::'));
45 45
 //if (isset($options['s'])) $hosts = array($options['s']);
46 46
 //elseif (isset($options['source'])) $hosts = array($options['source']);
47 47
 if (isset($options['s'])) {
48
-    $globalSources = array();
49
-    $globalSources[] = array('host' => $options['s']);
48
+	$globalSources = array();
49
+	$globalSources[] = array('host' => $options['s']);
50 50
 } elseif (isset($options['source'])) {
51
-    $globalSources = array();
52
-    $globalSources[] = array('host' => $options['source']);
51
+	$globalSources = array();
52
+	$globalSources[] = array('host' => $options['source']);
53 53
 }
54 54
 if (isset($options['server'])) $globalServer = TRUE;
55 55
 if (isset($options['idsource'])) $id_source = $options['idsource'];
56 56
 else $id_source = 1;
57 57
 if (isset($globalServer) && $globalServer) {
58
-    if ($globalDebug) echo "Using Server Mode\n";
59
-    $SI=new SpotterServer();
58
+	if ($globalDebug) echo "Using Server Mode\n";
59
+	$SI=new SpotterServer();
60 60
 } else $SI=new SpotterImport($Connection->db);
61 61
 //$APRS=new APRS($Connection->db);
62 62
 $SBS=new SBS();
@@ -66,12 +66,12 @@  discard block
 block discarded – undo
66 66
 //$servertz = system('date +%Z');
67 67
 // signal handler - playing nice with sockets and dump1090
68 68
 if (function_exists('pcntl_fork')) {
69
-    pcntl_signal(SIGINT,  function() {
70
-        global $sockets;
71
-        echo "\n\nctrl-c or kill signal received. Tidying up ... ";
72
-        die("Bye!\n");
73
-    });
74
-    pcntl_signal_dispatch();
69
+	pcntl_signal(SIGINT,  function() {
70
+		global $sockets;
71
+		echo "\n\nctrl-c or kill signal received. Tidying up ... ";
72
+		die("Bye!\n");
73
+	});
74
+	pcntl_signal_dispatch();
75 75
 }
76 76
 
77 77
 // let's try and connect
@@ -80,161 +80,161 @@  discard block
 block discarded – undo
80 80
 $aprs_full = false;
81 81
 
82 82
 function create_socket($host, $port, &$errno, &$errstr) {
83
-    $ip = gethostbyname($host);
84
-    $s = socket_create(AF_INET, SOCK_STREAM, 0);
85
-    $r = @socket_connect($s, $ip, $port);
86
-    if (!socket_set_nonblock($s)) echo "Unable to set nonblock on socket\n";
87
-    if ($r || socket_last_error() == 114 || socket_last_error() == 115) {
88
-        return $s;
89
-    }
90
-    $errno = socket_last_error($s);
91
-    $errstr = socket_strerror($errno);
92
-    socket_close($s);
93
-    return false;
83
+	$ip = gethostbyname($host);
84
+	$s = socket_create(AF_INET, SOCK_STREAM, 0);
85
+	$r = @socket_connect($s, $ip, $port);
86
+	if (!socket_set_nonblock($s)) echo "Unable to set nonblock on socket\n";
87
+	if ($r || socket_last_error() == 114 || socket_last_error() == 115) {
88
+		return $s;
89
+	}
90
+	$errno = socket_last_error($s);
91
+	$errstr = socket_strerror($errno);
92
+	socket_close($s);
93
+	return false;
94 94
 }
95 95
 
96 96
 function create_socket_udp($host, $port, &$errno, &$errstr) {
97
-    echo "UDP !!";
98
-    $ip = gethostbyname($host);
99
-    $s = socket_create(AF_INET, SOCK_DGRAM, 0);
100
-    $r = @socket_bind($s, $ip, $port);
101
-    if ($r || socket_last_error() == 114 || socket_last_error() == 115) {
102
-        return $s;
103
-    }
104
-    $errno = socket_last_error($s);
105
-    $errstr = socket_strerror($errno);
106
-    socket_close($s);
107
-    return false;
97
+	echo "UDP !!";
98
+	$ip = gethostbyname($host);
99
+	$s = socket_create(AF_INET, SOCK_DGRAM, 0);
100
+	$r = @socket_bind($s, $ip, $port);
101
+	if ($r || socket_last_error() == 114 || socket_last_error() == 115) {
102
+		return $s;
103
+	}
104
+	$errno = socket_last_error($s);
105
+	$errstr = socket_strerror($errno);
106
+	socket_close($s);
107
+	return false;
108 108
 }
109 109
 
110 110
 function connect_all($hosts) {
111
-    //global $sockets, $formats, $globalDebug,$aprs_connect,$last_exec, $globalSourcesRights, $use_aprs;
112
-    global $sockets, $globalSources, $globalDebug,$aprs_connect,$last_exec, $globalSourcesRights, $use_aprs;
113
-    if ($globalDebug) echo 'Connect to all...'."\n";
114
-    foreach ($hosts as $id => $value) {
111
+	//global $sockets, $formats, $globalDebug,$aprs_connect,$last_exec, $globalSourcesRights, $use_aprs;
112
+	global $sockets, $globalSources, $globalDebug,$aprs_connect,$last_exec, $globalSourcesRights, $use_aprs;
113
+	if ($globalDebug) echo 'Connect to all...'."\n";
114
+	foreach ($hosts as $id => $value) {
115 115
 	$host = $value['host'];
116 116
 	$globalSources[$id]['last_exec'] = 0;
117 117
 	// Here we check type of source(s)
118 118
 	if (filter_var($host,FILTER_VALIDATE_URL) && (!isset($globalSources[$id]['format']) || strtolower($globalSources[$id]['format']) == 'auto')) {
119
-            if (preg_match('/deltadb.txt$/i',$host)) {
120
-        	//$formats[$id] = 'deltadbtxt';
121
-        	$globalSources[$id]['format'] = 'deltadbtxt';
122
-        	//$last_exec['deltadbtxt'] = 0;
123
-        	if ($globalDebug) echo "Connect to deltadb source (".$host.")...\n";
124
-            } else if (preg_match('/vatsim-data.txt$/i',$host)) {
125
-        	//$formats[$id] = 'vatsimtxt';
126
-        	$globalSources[$id]['format'] = 'vatsimtxt';
127
-        	//$last_exec['vatsimtxt'] = 0;
128
-        	if ($globalDebug) echo "Connect to vatsim source (".$host.")...\n";
129
-    	    } else if (preg_match('/aircraftlist.json$/i',$host)) {
130
-        	//$formats[$id] = 'aircraftlistjson';
131
-        	$globalSources[$id]['format'] = 'aircraftlistjson';
132
-        	//$last_exec['aircraftlistjson'] = 0;
133
-        	if ($globalDebug) echo "Connect to aircraftlist.json source (".$host.")...\n";
134
-    	    } else if (preg_match('/opensky/i',$host)) {
135
-        	//$formats[$id] = 'aircraftlistjson';
136
-        	$globalSources[$id]['format'] = 'opensky';
137
-        	//$last_exec['aircraftlistjson'] = 0;
138
-        	if ($globalDebug) echo "Connect to opensky source (".$host.")...\n";
139
-    	    } else if (preg_match('/radarvirtuel.com\/file.json$/i',$host)) {
140
-        	//$formats[$id] = 'radarvirtueljson';
141
-        	$globalSources[$id]['format'] = 'radarvirtueljson';
142
-        	//$last_exec['radarvirtueljson'] = 0;
143
-        	if ($globalDebug) echo "Connect to radarvirtuel.com/file.json source (".$host.")...\n";
144
-        	if (!isset($globalSourcesRights) || (isset($globalSourcesRights) && !$globalSourcesRights)) {
145
-        	    echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
146
-        	    exit(0);
147
-        	}
148
-    	    } else if (preg_match('/planeUpdateFAA.php$/i',$host)) {
149
-        	//$formats[$id] = 'planeupdatefaa';
150
-        	$globalSources[$id]['format'] = 'planeupdatefaa';
151
-        	//$last_exec['planeupdatefaa'] = 0;
152
-        	if ($globalDebug) echo "Connect to planeUpdateFAA.php source (".$host.")...\n";
153
-        	if (!isset($globalSourcesRights) || (isset($globalSourcesRights) && !$globalSourcesRights)) {
154
-        	    echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
155
-        	    exit(0);
156
-        	}
157
-            } else if (preg_match('/\/action.php\/acars\/data$/i',$host)) {
158
-        	//$formats[$id] = 'phpvmacars';
159
-        	$globalSources[$id]['format'] = 'phpvmacars';
160
-        	//$last_exec['phpvmacars'] = 0;
161
-        	if ($globalDebug) echo "Connect to phpvmacars source (".$host.")...\n";
162
-            } else if (preg_match('/VAM-json.php$/i',$host)) {
163
-        	//$formats[$id] = 'phpvmacars';
164
-        	$globalSources[$id]['format'] = 'vam';
165
-        	if ($globalDebug) echo "Connect to Vam source (".$host.")...\n";
166
-            } else if (preg_match('/whazzup/i',$host)) {
167
-        	//$formats[$id] = 'whazzup';
168
-        	$globalSources[$id]['format'] = 'whazzup';
169
-        	//$last_exec['whazzup'] = 0;
170
-        	if ($globalDebug) echo "Connect to whazzup source (".$host.")...\n";
171
-            } else if (preg_match('/recentpireps/i',$host)) {
172
-        	//$formats[$id] = 'pirepsjson';
173
-        	$globalSources[$id]['format'] = 'pirepsjson';
174
-        	//$last_exec['pirepsjson'] = 0;
175
-        	if ($globalDebug) echo "Connect to pirepsjson source (".$host.")...\n";
176
-            } else if (preg_match(':data.fr24.com/zones/fcgi/feed.js:i',$host)) {
177
-        	//$formats[$id] = 'fr24json';
178
-        	$globalSources[$id]['format'] = 'fr24json';
179
-        	//$last_exec['fr24json'] = 0;
180
-        	if ($globalDebug) echo "Connect to fr24 source (".$host.")...\n";
181
-        	if (!isset($globalSourcesRights) || (isset($globalSourcesRights) && !$globalSourcesRights)) {
182
-        	    echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
183
-        	    exit(0);
184
-        	}
185
-            //} else if (preg_match('/10001/',$host)) {
186
-            } else if (preg_match('/10001/',$host) || (isset($globalSources[$id]['port']) && $globalSources[$id]['port'] == '10001')) {
187
-        	//$formats[$id] = 'tsv';
188
-        	$globalSources[$id]['format'] = 'tsv';
189
-        	if ($globalDebug) echo "Connect to tsv source (".$host.")...\n";
190
-            }
191
-        } elseif (filter_var($host,FILTER_VALIDATE_URL)) {
192
-        	if ($globalDebug) echo "Connect to ".$globalSources[$id]['format']." source (".$host.")...\n";
193
-        } elseif (!filter_var($host,FILTER_VALIDATE_URL)) {
194
-	    $hostport = explode(':',$host);
195
-	    if (isset($hostport[1])) {
119
+			if (preg_match('/deltadb.txt$/i',$host)) {
120
+			//$formats[$id] = 'deltadbtxt';
121
+			$globalSources[$id]['format'] = 'deltadbtxt';
122
+			//$last_exec['deltadbtxt'] = 0;
123
+			if ($globalDebug) echo "Connect to deltadb source (".$host.")...\n";
124
+			} else if (preg_match('/vatsim-data.txt$/i',$host)) {
125
+			//$formats[$id] = 'vatsimtxt';
126
+			$globalSources[$id]['format'] = 'vatsimtxt';
127
+			//$last_exec['vatsimtxt'] = 0;
128
+			if ($globalDebug) echo "Connect to vatsim source (".$host.")...\n";
129
+			} else if (preg_match('/aircraftlist.json$/i',$host)) {
130
+			//$formats[$id] = 'aircraftlistjson';
131
+			$globalSources[$id]['format'] = 'aircraftlistjson';
132
+			//$last_exec['aircraftlistjson'] = 0;
133
+			if ($globalDebug) echo "Connect to aircraftlist.json source (".$host.")...\n";
134
+			} else if (preg_match('/opensky/i',$host)) {
135
+			//$formats[$id] = 'aircraftlistjson';
136
+			$globalSources[$id]['format'] = 'opensky';
137
+			//$last_exec['aircraftlistjson'] = 0;
138
+			if ($globalDebug) echo "Connect to opensky source (".$host.")...\n";
139
+			} else if (preg_match('/radarvirtuel.com\/file.json$/i',$host)) {
140
+			//$formats[$id] = 'radarvirtueljson';
141
+			$globalSources[$id]['format'] = 'radarvirtueljson';
142
+			//$last_exec['radarvirtueljson'] = 0;
143
+			if ($globalDebug) echo "Connect to radarvirtuel.com/file.json source (".$host.")...\n";
144
+			if (!isset($globalSourcesRights) || (isset($globalSourcesRights) && !$globalSourcesRights)) {
145
+				echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
146
+				exit(0);
147
+			}
148
+			} else if (preg_match('/planeUpdateFAA.php$/i',$host)) {
149
+			//$formats[$id] = 'planeupdatefaa';
150
+			$globalSources[$id]['format'] = 'planeupdatefaa';
151
+			//$last_exec['planeupdatefaa'] = 0;
152
+			if ($globalDebug) echo "Connect to planeUpdateFAA.php source (".$host.")...\n";
153
+			if (!isset($globalSourcesRights) || (isset($globalSourcesRights) && !$globalSourcesRights)) {
154
+				echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
155
+				exit(0);
156
+			}
157
+			} else if (preg_match('/\/action.php\/acars\/data$/i',$host)) {
158
+			//$formats[$id] = 'phpvmacars';
159
+			$globalSources[$id]['format'] = 'phpvmacars';
160
+			//$last_exec['phpvmacars'] = 0;
161
+			if ($globalDebug) echo "Connect to phpvmacars source (".$host.")...\n";
162
+			} else if (preg_match('/VAM-json.php$/i',$host)) {
163
+			//$formats[$id] = 'phpvmacars';
164
+			$globalSources[$id]['format'] = 'vam';
165
+			if ($globalDebug) echo "Connect to Vam source (".$host.")...\n";
166
+			} else if (preg_match('/whazzup/i',$host)) {
167
+			//$formats[$id] = 'whazzup';
168
+			$globalSources[$id]['format'] = 'whazzup';
169
+			//$last_exec['whazzup'] = 0;
170
+			if ($globalDebug) echo "Connect to whazzup source (".$host.")...\n";
171
+			} else if (preg_match('/recentpireps/i',$host)) {
172
+			//$formats[$id] = 'pirepsjson';
173
+			$globalSources[$id]['format'] = 'pirepsjson';
174
+			//$last_exec['pirepsjson'] = 0;
175
+			if ($globalDebug) echo "Connect to pirepsjson source (".$host.")...\n";
176
+			} else if (preg_match(':data.fr24.com/zones/fcgi/feed.js:i',$host)) {
177
+			//$formats[$id] = 'fr24json';
178
+			$globalSources[$id]['format'] = 'fr24json';
179
+			//$last_exec['fr24json'] = 0;
180
+			if ($globalDebug) echo "Connect to fr24 source (".$host.")...\n";
181
+			if (!isset($globalSourcesRights) || (isset($globalSourcesRights) && !$globalSourcesRights)) {
182
+				echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
183
+				exit(0);
184
+			}
185
+			//} else if (preg_match('/10001/',$host)) {
186
+			} else if (preg_match('/10001/',$host) || (isset($globalSources[$id]['port']) && $globalSources[$id]['port'] == '10001')) {
187
+			//$formats[$id] = 'tsv';
188
+			$globalSources[$id]['format'] = 'tsv';
189
+			if ($globalDebug) echo "Connect to tsv source (".$host.")...\n";
190
+			}
191
+		} elseif (filter_var($host,FILTER_VALIDATE_URL)) {
192
+			if ($globalDebug) echo "Connect to ".$globalSources[$id]['format']." source (".$host.")...\n";
193
+		} elseif (!filter_var($host,FILTER_VALIDATE_URL)) {
194
+		$hostport = explode(':',$host);
195
+		if (isset($hostport[1])) {
196 196
 		$port = $hostport[1];
197 197
 		$hostn = $hostport[0];
198
-	    } else {
198
+		} else {
199 199
 		$port = $globalSources[$id]['port'];
200 200
 		$hostn = $globalSources[$id]['host'];
201
-	    }
202
-	    if (!isset($globalSources[$id]['format']) || ($globalSources[$id]['format'] != 'acars' && $globalSources[$id]['format'] != 'flightgearsp')) {
203
-        	$s = create_socket($hostn,$port, $errno, $errstr);
204
-    	    } else {
205
-        	$s = create_socket_udp($hostn,$port, $errno, $errstr);
206
-	    }
207
-	    if ($s) {
208
-    	        $sockets[$id] = $s;
209
-    	        if (!isset($globalSources[$id]['format']) || strtolower($globalSources[$id]['format']) == 'auto') {
210
-		    if (preg_match('/aprs/',$hostn)) {
201
+		}
202
+		if (!isset($globalSources[$id]['format']) || ($globalSources[$id]['format'] != 'acars' && $globalSources[$id]['format'] != 'flightgearsp')) {
203
+			$s = create_socket($hostn,$port, $errno, $errstr);
204
+			} else {
205
+			$s = create_socket_udp($hostn,$port, $errno, $errstr);
206
+		}
207
+		if ($s) {
208
+				$sockets[$id] = $s;
209
+				if (!isset($globalSources[$id]['format']) || strtolower($globalSources[$id]['format']) == 'auto') {
210
+			if (preg_match('/aprs/',$hostn)) {
211 211
 			//$formats[$id] = 'aprs';
212 212
 			$globalSources[$id]['format'] = 'aprs';
213 213
 			//$aprs_connect = 0;
214 214
 			//$use_aprs = true;
215
-    		    } elseif ($port == '10001') {
216
-        		//$formats[$id] = 'tsv';
217
-        		$globalSources[$id]['format'] = 'tsv';
218
-		    } elseif ($port == '30002') {
219
-        		//$formats[$id] = 'raw';
220
-        		$globalSources[$id]['format'] = 'raw';
221
-		    } elseif ($port == '5001') {
222
-        		//$formats[$id] = 'raw';
223
-        		$globalSources[$id]['format'] = 'flightgearmp';
224
-		    } elseif ($port == '30005') {
215
+				} elseif ($port == '10001') {
216
+				//$formats[$id] = 'tsv';
217
+				$globalSources[$id]['format'] = 'tsv';
218
+			} elseif ($port == '30002') {
219
+				//$formats[$id] = 'raw';
220
+				$globalSources[$id]['format'] = 'raw';
221
+			} elseif ($port == '5001') {
222
+				//$formats[$id] = 'raw';
223
+				$globalSources[$id]['format'] = 'flightgearmp';
224
+			} elseif ($port == '30005') {
225 225
 			// Not yet supported
226
-        		//$formats[$id] = 'beast';
227
-        		$globalSources[$id]['format'] = 'beast';
228
-		    //} else $formats[$id] = 'sbs';
229
-		    } else $globalSources[$id]['format'] = 'sbs';
230
-		    //if ($globalDebug) echo 'Connection in progress to '.$host.'('.$formats[$id].')....'."\n";
226
+				//$formats[$id] = 'beast';
227
+				$globalSources[$id]['format'] = 'beast';
228
+			//} else $formats[$id] = 'sbs';
229
+			} else $globalSources[$id]['format'] = 'sbs';
230
+			//if ($globalDebug) echo 'Connection in progress to '.$host.'('.$formats[$id].')....'."\n";
231 231
 		}
232 232
 		if ($globalDebug) echo 'Connection in progress to '.$hostn.':'.$port.' ('.$globalSources[$id]['format'].')....'."\n";
233
-            } else {
233
+			} else {
234 234
 		if ($globalDebug) echo 'Connection failed to '.$hostn.':'.$port.' : '.$errno.' '.$errstr."\n";
235
-    	    }
236
-        }
237
-    }
235
+			}
236
+		}
237
+	}
238 238
 }
239 239
 if (!isset($globalMinFetch)) $globalMinFetch = 15;
240 240
 
@@ -261,18 +261,18 @@  discard block
 block discarded – undo
261 261
 	die;
262 262
 }
263 263
 foreach ($globalSources as $key => $source) {
264
-    if (!isset($source['format'])) {
265
-        $globalSources[$key]['format'] = 'auto';
266
-    }
264
+	if (!isset($source['format'])) {
265
+		$globalSources[$key]['format'] = 'auto';
266
+	}
267 267
 }
268 268
 connect_all($globalSources);
269 269
 foreach ($globalSources as $key => $source) {
270
-    if (isset($source['format']) && $source['format'] == 'aprs') {
270
+	if (isset($source['format']) && $source['format'] == 'aprs') {
271 271
 	$aprs_connect = 0;
272 272
 	$use_aprs = true;
273 273
 	if (isset($source['port']) && $source['port'] == '10152') $aprs_full = true;
274 274
 	break;
275
-    }
275
+	}
276 276
 }
277 277
 
278 278
 if ($use_aprs) {
@@ -312,67 +312,67 @@  discard block
 block discarded – undo
312 312
 
313 313
 // Infinite loop if daemon, else work for time defined in $globalCronEnd or only one time.
314 314
 while ($i > 0) {
315
-    if (!$globalDaemon) $i = $endtime-time();
316
-    // Delete old ATC
317
-    if ($globalDaemon && ((isset($globalIVAO) && $globalIVAO) || (isset($globalVATSIM) && $globalVATSIM))) {
315
+	if (!$globalDaemon) $i = $endtime-time();
316
+	// Delete old ATC
317
+	if ($globalDaemon && ((isset($globalIVAO) && $globalIVAO) || (isset($globalVATSIM) && $globalVATSIM))) {
318 318
 	if ($globalDebug) echo 'Delete old ATC...'."\n";
319
-        $ATC->deleteOldATC();
320
-    }
319
+		$ATC->deleteOldATC();
320
+	}
321 321
     
322
-    if (count($last_exec) > 0) {
322
+	if (count($last_exec) > 0) {
323 323
 	$max = $globalMinFetch;
324 324
 	foreach ($last_exec as $last) {
325
-	    if ((time() - $last['last']) < $max) $max = time() - $last['last'];
325
+		if ((time() - $last['last']) < $max) $max = time() - $last['last'];
326 326
 	}
327 327
 	if ($max != $globalMinFetch) {
328
-	    if ($globalDebug) echo 'Sleeping...'."\n";
329
-	    sleep($globalMinFetch-$max+2);
328
+		if ($globalDebug) echo 'Sleeping...'."\n";
329
+		sleep($globalMinFetch-$max+2);
330
+	}
330 331
 	}
331
-    }
332 332
 
333 333
     
334
-    //foreach ($formats as $id => $value) {
335
-    foreach ($globalSources as $id => $value) {
334
+	//foreach ($formats as $id => $value) {
335
+	foreach ($globalSources as $id => $value) {
336 336
 	if (!isset($last_exec[$id]['last'])) $last_exec[$id]['last'] = 0;
337 337
 	if ($value['format'] == 'deltadbtxt' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
338
-	    //$buffer = $Common->getData($hosts[$id]);
339
-	    $buffer = $Common->getData($value['host']);
340
-    	    $buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
341
-	    $buffer = explode('\n',$buffer);
342
-	    foreach ($buffer as $line) {
343
-    		if ($line != '') {
344
-    		    $line = explode(',', $line);
345
-	            $data = array();
346
-	            $data['hex'] = $line[1]; // hex
347
-	            $data['ident'] = $line[2]; // ident
348
-	            $data['altitude'] = $line[3]; // altitude
349
-	            $data['speed'] = $line[4]; // speed
350
-	            $data['heading'] = $line[5]; // heading
351
-	            $data['latitude'] = $line[6]; // lat
352
-	            $data['longitude'] = $line[7]; // long
353
-	            $data['verticalrate'] = ''; // vertical rate
354
-	            $data['squawk'] = ''; // squawk
355
-	            $data['emergency'] = ''; // emergency
356
-		    $data['datetime'] = date('Y-m-d H:i:s');
357
-		    $data['format_source'] = 'deltadbtxt';
358
-    		    $data['id_source'] = $id_source;
359
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
360
-		    if (isset($value['sourcestats'])) $data['sourcestats'] = $value['sourcestats'];
361
-    		    $SI->add($data);
362
-		    unset($data);
363
-    		}
364
-    	    }
365
-    	    $last_exec[$id]['last'] = time();
338
+		//$buffer = $Common->getData($hosts[$id]);
339
+		$buffer = $Common->getData($value['host']);
340
+			$buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
341
+		$buffer = explode('\n',$buffer);
342
+		foreach ($buffer as $line) {
343
+			if ($line != '') {
344
+				$line = explode(',', $line);
345
+				$data = array();
346
+				$data['hex'] = $line[1]; // hex
347
+				$data['ident'] = $line[2]; // ident
348
+				$data['altitude'] = $line[3]; // altitude
349
+				$data['speed'] = $line[4]; // speed
350
+				$data['heading'] = $line[5]; // heading
351
+				$data['latitude'] = $line[6]; // lat
352
+				$data['longitude'] = $line[7]; // long
353
+				$data['verticalrate'] = ''; // vertical rate
354
+				$data['squawk'] = ''; // squawk
355
+				$data['emergency'] = ''; // emergency
356
+			$data['datetime'] = date('Y-m-d H:i:s');
357
+			$data['format_source'] = 'deltadbtxt';
358
+				$data['id_source'] = $id_source;
359
+			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
360
+			if (isset($value['sourcestats'])) $data['sourcestats'] = $value['sourcestats'];
361
+				$SI->add($data);
362
+			unset($data);
363
+			}
364
+			}
365
+			$last_exec[$id]['last'] = time();
366 366
 	//} elseif (($value == 'whazzup' && (time() - $last_exec['whazzup'] > $globalMinFetch)) || ($value == 'vatsimtxt' && (time() - $last_exec['vatsimtxt'] > $globalMinFetch))) {
367 367
 	} elseif (($value['format'] == 'whazzup' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) || ($value['format'] == 'vatsimtxt' && (time() - $value[' last_exec'] > $globalMinFetch))) {
368
-	    //$buffer = $Common->getData($hosts[$id]);
369
-	    $buffer = $Common->getData($value['host']);
370
-    	    $buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
371
-	    $buffer = explode('\n',$buffer);
372
-	    foreach ($buffer as $line) {
373
-    		if ($line != '') {
374
-    		    $line = explode(':', $line);
375
-    		    if (count($line) > 30 && $line[0] != 'callsign') {
368
+		//$buffer = $Common->getData($hosts[$id]);
369
+		$buffer = $Common->getData($value['host']);
370
+			$buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
371
+		$buffer = explode('\n',$buffer);
372
+		foreach ($buffer as $line) {
373
+			if ($line != '') {
374
+				$line = explode(':', $line);
375
+				if (count($line) > 30 && $line[0] != 'callsign') {
376 376
 			$data = array();
377 377
 			$data['id'] = $line[1].'-'.$line[0];
378 378
 			$data['pilot_id'] = $line[1];
@@ -384,36 +384,36 @@  discard block
 block discarded – undo
384 384
 			if (isset($line[45])) $data['heading'] = $line[45]; // heading
385 385
 			elseif (isset($line[38])) $data['heading'] = $line[38]; // heading
386 386
 			$data['latitude'] = $line[5]; // lat
387
-	        	$data['longitude'] = $line[6]; // long
388
-	        	$data['verticalrate'] = ''; // vertical rate
389
-	        	$data['squawk'] = ''; // squawk
390
-	        	$data['emergency'] = ''; // emergency
391
-	        	$data['waypoints'] = $line[30];
387
+				$data['longitude'] = $line[6]; // long
388
+				$data['verticalrate'] = ''; // vertical rate
389
+				$data['squawk'] = ''; // squawk
390
+				$data['emergency'] = ''; // emergency
391
+				$data['waypoints'] = $line[30];
392 392
 			$data['datetime'] = date('Y-m-d H:i:s');
393 393
 			//$data['datetime'] = date('Y-m-d H:i:s',strtotime($line[37]));
394 394
 			if (isset($line[37])) $data['last_update'] = $line[37];
395
-		        $data['departure_airport_icao'] = $line[11];
396
-		        $data['departure_airport_time'] = rtrim(chunk_split($line[22],2,':'),':');
397
-		        $data['arrival_airport_icao'] = $line[13];
395
+				$data['departure_airport_icao'] = $line[11];
396
+				$data['departure_airport_time'] = rtrim(chunk_split($line[22],2,':'),':');
397
+				$data['arrival_airport_icao'] = $line[13];
398 398
 			$data['frequency'] = $line[4];
399 399
 			$data['type'] = $line[18];
400 400
 			$data['range'] = $line[19];
401 401
 			if (isset($line[35])) $data['info'] = $line[35];
402
-    			$data['id_source'] = $id_source;
403
-	    		//$data['arrival_airport_time'] = ;
404
-	    		if ($line[9] != '') {
405
-	    		    $aircraft_data = explode('/',$line[9]);
406
-	    		    if (isset($aircraft_data[1])) {
407
-	    			$data['aircraft_icao'] = $aircraft_data[1];
408
-	    		    }
409
-        		}
410
-	    		/*
402
+				$data['id_source'] = $id_source;
403
+				//$data['arrival_airport_time'] = ;
404
+				if ($line[9] != '') {
405
+					$aircraft_data = explode('/',$line[9]);
406
+					if (isset($aircraft_data[1])) {
407
+					$data['aircraft_icao'] = $aircraft_data[1];
408
+					}
409
+				}
410
+				/*
411 411
 	    		if ($value == 'whazzup') $data['format_source'] = 'whazzup';
412 412
 	    		elseif ($value == 'vatsimtxt') $data['format_source'] = 'vatsimtxt';
413 413
 	    		*/
414
-	    		$data['format_source'] = $value['format'];
414
+				$data['format_source'] = $value['format'];
415 415
 			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
416
-    			if ($line[3] == 'PILOT') $SI->add($data);
416
+				if ($line[3] == 'PILOT') $SI->add($data);
417 417
 			elseif ($line[3] == 'ATC') {
418 418
 				//print_r($data);
419 419
 				$data['info'] = str_replace('^&sect;','<br />',$data['info']);
@@ -431,240 +431,240 @@  discard block
 block discarded – undo
431 431
 				
432 432
 				echo $ATC->add($data['ident'],$data['frequency'],$data['latitude'],$data['longitude'],$data['range'],$data['info'],$data['datetime'],$data['type'],$data['pilot_id'],$data['pilot_name']);
433 433
 			}
434
-    			unset($data);
435
-    		    }
436
-    		}
437
-    	    }
438
-    	    //if ($value == 'whazzup') $last_exec['whazzup'] = time();
439
-    	    //elseif ($value == 'vatsimtxt') $last_exec['vatsimtxt'] = time();
440
-    	    $last_exec[$id]['last'] = time();
441
-    	//} elseif ($value == 'aircraftlistjson' && (time() - $last_exec['aircraftlistjson'] > $globalMinFetch)) {
442
-    	} elseif ($value['format'] == 'aircraftlistjson' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
443
-	    $buffer = $Common->getData($value['host'],'get','','','','','20');
444
-	    if ($buffer != '') {
445
-	    $all_data = json_decode($buffer,true);
446
-	    if (isset($all_data['acList'])) {
434
+				unset($data);
435
+				}
436
+			}
437
+			}
438
+			//if ($value == 'whazzup') $last_exec['whazzup'] = time();
439
+			//elseif ($value == 'vatsimtxt') $last_exec['vatsimtxt'] = time();
440
+			$last_exec[$id]['last'] = time();
441
+		//} elseif ($value == 'aircraftlistjson' && (time() - $last_exec['aircraftlistjson'] > $globalMinFetch)) {
442
+		} elseif ($value['format'] == 'aircraftlistjson' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
443
+		$buffer = $Common->getData($value['host'],'get','','','','','20');
444
+		if ($buffer != '') {
445
+		$all_data = json_decode($buffer,true);
446
+		if (isset($all_data['acList'])) {
447 447
 		foreach ($all_data['acList'] as $line) {
448
-		    $data = array();
449
-		    $data['hex'] = $line['Icao']; // hex
450
-		    if (isset($line['Call'])) $data['ident'] = $line['Call']; // ident
451
-		    if (isset($line['Alt'])) $data['altitude'] = $line['Alt']; // altitude
452
-		    if (isset($line['Spd'])) $data['speed'] = $line['Spd']; // speed
453
-		    if (isset($line['Trak'])) $data['heading'] = $line['Trak']; // heading
454
-		    if (isset($line['Lat'])) $data['latitude'] = $line['Lat']; // lat
455
-		    if (isset($line['Long'])) $data['longitude'] = $line['Long']; // long
456
-		    //$data['verticalrate'] = $line['']; // verticale rate
457
-		    if (isset($line['Sqk'])) $data['squawk'] = $line['Sqk']; // squawk
458
-		    $data['emergency'] = ''; // emergency
459
-		    if (isset($line['Reg'])) $data['registration'] = $line['Reg'];
460
-		    /*
448
+			$data = array();
449
+			$data['hex'] = $line['Icao']; // hex
450
+			if (isset($line['Call'])) $data['ident'] = $line['Call']; // ident
451
+			if (isset($line['Alt'])) $data['altitude'] = $line['Alt']; // altitude
452
+			if (isset($line['Spd'])) $data['speed'] = $line['Spd']; // speed
453
+			if (isset($line['Trak'])) $data['heading'] = $line['Trak']; // heading
454
+			if (isset($line['Lat'])) $data['latitude'] = $line['Lat']; // lat
455
+			if (isset($line['Long'])) $data['longitude'] = $line['Long']; // long
456
+			//$data['verticalrate'] = $line['']; // verticale rate
457
+			if (isset($line['Sqk'])) $data['squawk'] = $line['Sqk']; // squawk
458
+			$data['emergency'] = ''; // emergency
459
+			if (isset($line['Reg'])) $data['registration'] = $line['Reg'];
460
+			/*
461 461
 		    if (isset($line['PosTime'])) $data['datetime'] = date('Y-m-d H:i:s',$line['PosTime']/1000);
462 462
 		    else $data['datetime'] = date('Y-m-d H:i:s');
463 463
 		    */
464
-		    $data['datetime'] = date('Y-m-d H:i:s');
465
-		    if (isset($line['Type'])) $data['aircraft_icao'] = $line['Type'];
466
-	    	    $data['format_source'] = 'aircraftlistjson';
467
-		    $data['id_source'] = $id_source;
468
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
469
-		    if (isset($data['datetime'])) $SI->add($data);
470
-		    unset($data);
464
+			$data['datetime'] = date('Y-m-d H:i:s');
465
+			if (isset($line['Type'])) $data['aircraft_icao'] = $line['Type'];
466
+				$data['format_source'] = 'aircraftlistjson';
467
+			$data['id_source'] = $id_source;
468
+			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
469
+			if (isset($data['datetime'])) $SI->add($data);
470
+			unset($data);
471 471
 		}
472
-	    } else {
472
+		} else {
473 473
 		foreach ($all_data as $line) {
474
-		    $data = array();
475
-		    $data['hex'] = $line['hex']; // hex
476
-		    $data['ident'] = $line['flight']; // ident
477
-		    $data['altitude'] = $line['altitude']; // altitude
478
-		    $data['speed'] = $line['speed']; // speed
479
-		    $data['heading'] = $line['track']; // heading
480
-		    $data['latitude'] = $line['lat']; // lat
481
-		    $data['longitude'] = $line['lon']; // long
482
-		    $data['verticalrate'] = $line['vrt']; // verticale rate
483
-		    $data['squawk'] = $line['squawk']; // squawk
484
-		    $data['emergency'] = ''; // emergency
485
-		    $data['datetime'] = date('Y-m-d H:i:s');
486
-	    	    $data['format_source'] = 'aircraftlistjson';
487
-    		    $data['id_source'] = $id_source;
488
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
489
-		    $SI->add($data);
490
-		    unset($data);
474
+			$data = array();
475
+			$data['hex'] = $line['hex']; // hex
476
+			$data['ident'] = $line['flight']; // ident
477
+			$data['altitude'] = $line['altitude']; // altitude
478
+			$data['speed'] = $line['speed']; // speed
479
+			$data['heading'] = $line['track']; // heading
480
+			$data['latitude'] = $line['lat']; // lat
481
+			$data['longitude'] = $line['lon']; // long
482
+			$data['verticalrate'] = $line['vrt']; // verticale rate
483
+			$data['squawk'] = $line['squawk']; // squawk
484
+			$data['emergency'] = ''; // emergency
485
+			$data['datetime'] = date('Y-m-d H:i:s');
486
+				$data['format_source'] = 'aircraftlistjson';
487
+				$data['id_source'] = $id_source;
488
+			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
489
+			$SI->add($data);
490
+			unset($data);
491
+		}
492
+		}
491 493
 		}
492
-	    }
493
-	    }
494
-    	    //$last_exec['aircraftlistjson'] = time();
495
-    	    $last_exec[$id]['last'] = time();
496
-    	//} elseif ($value == 'planeupdatefaa' && (time() - $last_exec['planeupdatefaa'] > $globalMinFetch)) {
497
-    	} elseif ($value['format'] == 'planeupdatefaa' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
498
-	    $buffer = $Common->getData($value['host']);
499
-	    $all_data = json_decode($buffer,true);
500
-	    if (isset($all_data['planes'])) {
494
+			//$last_exec['aircraftlistjson'] = time();
495
+			$last_exec[$id]['last'] = time();
496
+		//} elseif ($value == 'planeupdatefaa' && (time() - $last_exec['planeupdatefaa'] > $globalMinFetch)) {
497
+		} elseif ($value['format'] == 'planeupdatefaa' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
498
+		$buffer = $Common->getData($value['host']);
499
+		$all_data = json_decode($buffer,true);
500
+		if (isset($all_data['planes'])) {
501 501
 		foreach ($all_data['planes'] as $key => $line) {
502
-		    $data = array();
503
-		    $data['hex'] = $key; // hex
504
-		    $data['ident'] = $line[3]; // ident
505
-		    $data['altitude'] = $line[6]; // altitude
506
-		    $data['speed'] = $line[8]; // speed
507
-		    $data['heading'] = $line[7]; // heading
508
-		    $data['latitude'] = $line[4]; // lat
509
-		    $data['longitude'] = $line[5]; // long
510
-		    //$data['verticalrate'] = $line[]; // verticale rate
511
-		    $data['squawk'] = $line[10]; // squawk
512
-		    $data['emergency'] = ''; // emergency
513
-		    $data['registration'] = $line[2];
514
-		    $data['aircraft_icao'] = $line[0];
515
-		    $deparr = explode('-',$line[1]);
516
-		    if (count($deparr) == 2) {
502
+			$data = array();
503
+			$data['hex'] = $key; // hex
504
+			$data['ident'] = $line[3]; // ident
505
+			$data['altitude'] = $line[6]; // altitude
506
+			$data['speed'] = $line[8]; // speed
507
+			$data['heading'] = $line[7]; // heading
508
+			$data['latitude'] = $line[4]; // lat
509
+			$data['longitude'] = $line[5]; // long
510
+			//$data['verticalrate'] = $line[]; // verticale rate
511
+			$data['squawk'] = $line[10]; // squawk
512
+			$data['emergency'] = ''; // emergency
513
+			$data['registration'] = $line[2];
514
+			$data['aircraft_icao'] = $line[0];
515
+			$deparr = explode('-',$line[1]);
516
+			if (count($deparr) == 2) {
517 517
 			$data['departure_airport_icao'] = $deparr[0];
518 518
 			$data['arrival_airport_icao'] = $deparr[1];
519
-		    }
520
-		    $data['datetime'] = date('Y-m-d H:i:s',$line[9]);
521
-	    	    $data['format_source'] = 'planeupdatefaa';
522
-    		    $data['id_source'] = $id_source;
523
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
524
-		    $SI->add($data);
525
-		    unset($data);
519
+			}
520
+			$data['datetime'] = date('Y-m-d H:i:s',$line[9]);
521
+				$data['format_source'] = 'planeupdatefaa';
522
+				$data['id_source'] = $id_source;
523
+			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
524
+			$SI->add($data);
525
+			unset($data);
526 526
 		}
527
-	    }
528
-    	    //$last_exec['planeupdatefaa'] = time();
529
-    	    $last_exec[$id]['last'] = time();
530
-    	} elseif ($value['format'] == 'opensky' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
531
-	    $buffer = $Common->getData($value['host']);
532
-	    $all_data = json_decode($buffer,true);
533
-	    if (isset($all_data['states'])) {
527
+		}
528
+			//$last_exec['planeupdatefaa'] = time();
529
+			$last_exec[$id]['last'] = time();
530
+		} elseif ($value['format'] == 'opensky' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
531
+		$buffer = $Common->getData($value['host']);
532
+		$all_data = json_decode($buffer,true);
533
+		if (isset($all_data['states'])) {
534 534
 		foreach ($all_data['states'] as $key => $line) {
535
-		    $data = array();
536
-		    $data['hex'] = $line[0]; // hex
537
-		    $data['ident'] = trim($line[1]); // ident
538
-		    $data['altitude'] = round($line[7]*3.28084); // altitude
539
-		    $data['speed'] = round($line[9]*1.94384); // speed
540
-		    $data['heading'] = round($line[10]); // heading
541
-		    $data['latitude'] = $line[5]; // lat
542
-		    $data['longitude'] = $line[6]; // long
543
-		    $data['verticalrate'] = $line[11]; // verticale rate
544
-		    //$data['squawk'] = $line[10]; // squawk
545
-		    //$data['emergency'] = ''; // emergency
546
-		    //$data['registration'] = $line[2];
547
-		    //$data['aircraft_icao'] = $line[0];
548
-		    $data['datetime'] = date('Y-m-d H:i:s',$line[3]);
549
-	    	    $data['format_source'] = 'opensky';
550
-    		    $data['id_source'] = $id_source;
551
-		    $SI->add($data);
552
-		    unset($data);
535
+			$data = array();
536
+			$data['hex'] = $line[0]; // hex
537
+			$data['ident'] = trim($line[1]); // ident
538
+			$data['altitude'] = round($line[7]*3.28084); // altitude
539
+			$data['speed'] = round($line[9]*1.94384); // speed
540
+			$data['heading'] = round($line[10]); // heading
541
+			$data['latitude'] = $line[5]; // lat
542
+			$data['longitude'] = $line[6]; // long
543
+			$data['verticalrate'] = $line[11]; // verticale rate
544
+			//$data['squawk'] = $line[10]; // squawk
545
+			//$data['emergency'] = ''; // emergency
546
+			//$data['registration'] = $line[2];
547
+			//$data['aircraft_icao'] = $line[0];
548
+			$data['datetime'] = date('Y-m-d H:i:s',$line[3]);
549
+				$data['format_source'] = 'opensky';
550
+				$data['id_source'] = $id_source;
551
+			$SI->add($data);
552
+			unset($data);
553 553
 		}
554
-	    }
555
-    	    //$last_exec['planeupdatefaa'] = time();
556
-    	    $last_exec[$id]['last'] = time();
557
-    	//} elseif ($value == 'fr24json' && (time() - $last_exec['fr24json'] > $globalMinFetch)) {
558
-    	} elseif ($value['format'] == 'fr24json' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
559
-	    //$buffer = $Common->getData($hosts[$id]);
560
-	    $buffer = $Common->getData($value['host']);
561
-	    $all_data = json_decode($buffer,true);
562
-	    foreach ($all_data as $key => $line) {
554
+		}
555
+			//$last_exec['planeupdatefaa'] = time();
556
+			$last_exec[$id]['last'] = time();
557
+		//} elseif ($value == 'fr24json' && (time() - $last_exec['fr24json'] > $globalMinFetch)) {
558
+		} elseif ($value['format'] == 'fr24json' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
559
+		//$buffer = $Common->getData($hosts[$id]);
560
+		$buffer = $Common->getData($value['host']);
561
+		$all_data = json_decode($buffer,true);
562
+		foreach ($all_data as $key => $line) {
563 563
 		if ($key != 'full_count' && $key != 'version' && $key != 'stats') {
564
-		    $data = array();
565
-		    $data['hex'] = $line[0];
566
-		    $data['ident'] = $line[16]; //$line[13]
567
-	    	    $data['altitude'] = $line[4]; // altitude
568
-	    	    $data['speed'] = $line[5]; // speed
569
-	    	    $data['heading'] = $line[3]; // heading
570
-	    	    $data['latitude'] = $line[1]; // lat
571
-	    	    $data['longitude'] = $line[2]; // long
572
-	    	    $data['verticalrate'] = $line[15]; // verticale rate
573
-	    	    $data['squawk'] = $line[6]; // squawk
574
-	    	    $data['aircraft_icao'] = $line[8];
575
-	    	    $data['registration'] = $line[9];
576
-		    $data['departure_airport_iata'] = $line[11];
577
-		    $data['arrival_airport_iata'] = $line[12];
578
-	    	    $data['emergency'] = ''; // emergency
579
-		    $data['datetime'] = date('Y-m-d H:i:s'); //$line[10]
580
-	    	    $data['format_source'] = 'fr24json';
581
-    		    $data['id_source'] = $id_source;
582
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
583
-		    $SI->add($data);
584
-		    unset($data);
564
+			$data = array();
565
+			$data['hex'] = $line[0];
566
+			$data['ident'] = $line[16]; //$line[13]
567
+				$data['altitude'] = $line[4]; // altitude
568
+				$data['speed'] = $line[5]; // speed
569
+				$data['heading'] = $line[3]; // heading
570
+				$data['latitude'] = $line[1]; // lat
571
+				$data['longitude'] = $line[2]; // long
572
+				$data['verticalrate'] = $line[15]; // verticale rate
573
+				$data['squawk'] = $line[6]; // squawk
574
+				$data['aircraft_icao'] = $line[8];
575
+				$data['registration'] = $line[9];
576
+			$data['departure_airport_iata'] = $line[11];
577
+			$data['arrival_airport_iata'] = $line[12];
578
+				$data['emergency'] = ''; // emergency
579
+			$data['datetime'] = date('Y-m-d H:i:s'); //$line[10]
580
+				$data['format_source'] = 'fr24json';
581
+				$data['id_source'] = $id_source;
582
+			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
583
+			$SI->add($data);
584
+			unset($data);
585 585
 		}
586
-	    }
587
-    	    //$last_exec['fr24json'] = time();
588
-    	    $last_exec[$id]['last'] = time();
589
-    	//} elseif ($value == 'radarvirtueljson' && (time() - $last_exec['radarvirtueljson'] > $globalMinFetch)) {
590
-    	} elseif ($value['format'] == 'radarvirtueljson' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
591
-	    //$buffer = $Common->getData($hosts[$id],'get','','','','','150');
592
-	    $buffer = $Common->getData($value['host'],'get','','','','','150');
593
-	    //echo $buffer;
594
-	    $buffer = str_replace(array("\n","\r"),"",$buffer);
595
-	    $buffer = preg_replace('/,"num":(.+)/','}',$buffer);
596
-	    $all_data = json_decode($buffer,true);
597
-	    if (json_last_error() != JSON_ERROR_NONE) {
586
+		}
587
+			//$last_exec['fr24json'] = time();
588
+			$last_exec[$id]['last'] = time();
589
+		//} elseif ($value == 'radarvirtueljson' && (time() - $last_exec['radarvirtueljson'] > $globalMinFetch)) {
590
+		} elseif ($value['format'] == 'radarvirtueljson' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
591
+		//$buffer = $Common->getData($hosts[$id],'get','','','','','150');
592
+		$buffer = $Common->getData($value['host'],'get','','','','','150');
593
+		//echo $buffer;
594
+		$buffer = str_replace(array("\n","\r"),"",$buffer);
595
+		$buffer = preg_replace('/,"num":(.+)/','}',$buffer);
596
+		$all_data = json_decode($buffer,true);
597
+		if (json_last_error() != JSON_ERROR_NONE) {
598 598
 		die(json_last_error_msg());
599
-	    }
600
-	    if (isset($all_data['mrkrs'])) {
599
+		}
600
+		if (isset($all_data['mrkrs'])) {
601 601
 		foreach ($all_data['mrkrs'] as $key => $line) {
602
-		    if (isset($line['inf'])) {
602
+			if (isset($line['inf'])) {
603 603
 			$data = array();
604 604
 			$data['hex'] = $line['inf']['ia'];
605 605
 			if (isset($line['inf']['cs'])) $data['ident'] = $line['inf']['cs']; //$line[13]
606
-	    		$data['altitude'] = round($line['inf']['al']*3.28084); // altitude
607
-	    		if (isset($line['inf']['gs'])) $data['speed'] = round($line['inf']['gs']*0.539957); // speed
608
-	    		if (isset($line['inf']['tr'])) $data['heading'] = $line['inf']['tr']; // heading
609
-	    		$data['latitude'] = $line['pt'][0]; // lat
610
-	    		$data['longitude'] = $line['pt'][1]; // long
611
-	    		//if (isset($line['inf']['vs'])) $data['verticalrate'] = $line['inf']['vs']; // verticale rate
612
-	    		if (isset($line['inf']['sq'])) $data['squawk'] = $line['inf']['sq']; // squawk
613
-	    		//$data['aircraft_icao'] = $line[8];
614
-	    		if (isset($line['inf']['rc'])) $data['registration'] = $line['inf']['rc'];
606
+				$data['altitude'] = round($line['inf']['al']*3.28084); // altitude
607
+				if (isset($line['inf']['gs'])) $data['speed'] = round($line['inf']['gs']*0.539957); // speed
608
+				if (isset($line['inf']['tr'])) $data['heading'] = $line['inf']['tr']; // heading
609
+				$data['latitude'] = $line['pt'][0]; // lat
610
+				$data['longitude'] = $line['pt'][1]; // long
611
+				//if (isset($line['inf']['vs'])) $data['verticalrate'] = $line['inf']['vs']; // verticale rate
612
+				if (isset($line['inf']['sq'])) $data['squawk'] = $line['inf']['sq']; // squawk
613
+				//$data['aircraft_icao'] = $line[8];
614
+				if (isset($line['inf']['rc'])) $data['registration'] = $line['inf']['rc'];
615 615
 			//$data['departure_airport_iata'] = $line[11];
616 616
 			//$data['arrival_airport_iata'] = $line[12];
617
-	    		//$data['emergency'] = ''; // emergency
617
+				//$data['emergency'] = ''; // emergency
618 618
 			$data['datetime'] = date('Y-m-d H:i:s',$line['inf']['dt']); //$line[10]
619
-	    		$data['format_source'] = 'radarvirtueljson';
620
-    			$data['id_source'] = $id_source;
619
+				$data['format_source'] = 'radarvirtueljson';
620
+				$data['id_source'] = $id_source;
621 621
 			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
622 622
 			$SI->add($data);
623 623
 			unset($data);
624
-		    }
624
+			}
625 625
 		}
626
-	    }
627
-    	    //$last_exec['radarvirtueljson'] = time();
628
-    	    $last_exec[$id]['last'] = time();
629
-    	//} elseif ($value == 'pirepsjson' && (time() - $last_exec['pirepsjson'] > $globalMinFetch)) {
630
-    	} elseif ($value['format'] == 'pirepsjson' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
631
-	    //$buffer = $Common->getData($hosts[$id]);
632
-	    $buffer = $Common->getData($value['host'].'?'.time());
633
-	    $all_data = json_decode(utf8_encode($buffer),true);
626
+		}
627
+			//$last_exec['radarvirtueljson'] = time();
628
+			$last_exec[$id]['last'] = time();
629
+		//} elseif ($value == 'pirepsjson' && (time() - $last_exec['pirepsjson'] > $globalMinFetch)) {
630
+		} elseif ($value['format'] == 'pirepsjson' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
631
+		//$buffer = $Common->getData($hosts[$id]);
632
+		$buffer = $Common->getData($value['host'].'?'.time());
633
+		$all_data = json_decode(utf8_encode($buffer),true);
634 634
 	    
635
-	    if (isset($all_data['pireps'])) {
636
-	        foreach ($all_data['pireps'] as $line) {
637
-		    $data = array();
638
-		    $data['id'] = $line['id'];
639
-		    $data['hex'] = substr(str_pad(dechex($line['id']),6,'000000',STR_PAD_LEFT),0,6);
640
-		    $data['ident'] = $line['callsign']; // ident
641
-		    if (isset($line['pilotid'])) $data['pilot_id'] = $line['pilotid']; // pilot id
642
-		    if (isset($line['name'])) $data['pilot_name'] = $line['name']; // pilot name
643
-		    if (isset($line['alt'])) $data['altitude'] = $line['alt']; // altitude
644
-		    if (isset($line['gs'])) $data['speed'] = $line['gs']; // speed
645
-		    if (isset($line['heading'])) $data['heading'] = $line['heading']; // heading
646
-		    if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
647
-		    $data['latitude'] = $line['lat']; // lat
648
-		    $data['longitude'] = $line['lon']; // long
649
-		    //$data['verticalrate'] = $line['vrt']; // verticale rate
650
-		    //$data['squawk'] = $line['squawk']; // squawk
651
-		    //$data['emergency'] = ''; // emergency
652
-		    if (isset($line['depicao'])) $data['departure_airport_icao'] = $line['depicao'];
653
-		    if (isset($line['deptime'])) $data['departure_airport_time'] = $line['deptime'];
654
-		    if (isset($line['arricao'])) $data['arrival_airport_icao'] = $line['arricao'];
655
-		    //$data['arrival_airport_time'] = $line['arrtime'];
656
-		    if (isset($line['aircraft'])) $data['aircraft_icao'] = $line['aircraft'];
657
-		    if (isset($line['transponder'])) $data['squawk'] = $line['transponder'];
658
-		    if (isset($line['atis'])) $data['info'] = $line['atis'];
659
-		    else $data['info'] = '';
660
-		    $data['format_source'] = 'pireps';
661
-    		    $data['id_source'] = $id_source;
662
-		    $data['datetime'] = date('Y-m-d H:i:s');
663
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
664
-		    if ($line['icon'] == 'plane') {
635
+		if (isset($all_data['pireps'])) {
636
+			foreach ($all_data['pireps'] as $line) {
637
+			$data = array();
638
+			$data['id'] = $line['id'];
639
+			$data['hex'] = substr(str_pad(dechex($line['id']),6,'000000',STR_PAD_LEFT),0,6);
640
+			$data['ident'] = $line['callsign']; // ident
641
+			if (isset($line['pilotid'])) $data['pilot_id'] = $line['pilotid']; // pilot id
642
+			if (isset($line['name'])) $data['pilot_name'] = $line['name']; // pilot name
643
+			if (isset($line['alt'])) $data['altitude'] = $line['alt']; // altitude
644
+			if (isset($line['gs'])) $data['speed'] = $line['gs']; // speed
645
+			if (isset($line['heading'])) $data['heading'] = $line['heading']; // heading
646
+			if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
647
+			$data['latitude'] = $line['lat']; // lat
648
+			$data['longitude'] = $line['lon']; // long
649
+			//$data['verticalrate'] = $line['vrt']; // verticale rate
650
+			//$data['squawk'] = $line['squawk']; // squawk
651
+			//$data['emergency'] = ''; // emergency
652
+			if (isset($line['depicao'])) $data['departure_airport_icao'] = $line['depicao'];
653
+			if (isset($line['deptime'])) $data['departure_airport_time'] = $line['deptime'];
654
+			if (isset($line['arricao'])) $data['arrival_airport_icao'] = $line['arricao'];
655
+			//$data['arrival_airport_time'] = $line['arrtime'];
656
+			if (isset($line['aircraft'])) $data['aircraft_icao'] = $line['aircraft'];
657
+			if (isset($line['transponder'])) $data['squawk'] = $line['transponder'];
658
+			if (isset($line['atis'])) $data['info'] = $line['atis'];
659
+			else $data['info'] = '';
660
+			$data['format_source'] = 'pireps';
661
+				$data['id_source'] = $id_source;
662
+			$data['datetime'] = date('Y-m-d H:i:s');
663
+			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
664
+			if ($line['icon'] == 'plane') {
665 665
 			$SI->add($data);
666
-		    //    print_r($data);
667
-    		    } elseif ($line['icon'] == 'ct') {
666
+			//    print_r($data);
667
+				} elseif ($line['icon'] == 'ct') {
668 668
 			$data['info'] = str_replace('^&sect;','<br />',$data['info']);
669 669
 			$data['info'] = str_replace('&amp;sect;','',$data['info']);
670 670
 			$typec = substr($data['ident'],-3);
@@ -679,158 +679,158 @@  discard block
 block discarded – undo
679 679
 			elseif ($typec == 'CTR') $data['type'] = 'Control Radar or Centre';
680 680
 			else $data['type'] = 'Observer';
681 681
 			echo $ATC->add($data['ident'],'',$data['latitude'],$data['longitude'],'0',$data['info'],$data['datetime'],$data['type'],$data['pilot_id'],$data['pilot_name']);
682
-		    }
683
-		    unset($data);
682
+			}
683
+			unset($data);
684 684
 		}
685
-	    }
686
-    	    //$last_exec['pirepsjson'] = time();
687
-    	    $last_exec[$id]['last'] = time();
688
-    	//} elseif ($value == 'phpvmacars' && (time() - $last_exec['phpvmacars'] > $globalMinFetch)) {
689
-    	} elseif ($value['format'] == 'phpvmacars' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
690
-	    //$buffer = $Common->getData($hosts[$id]);
691
-	    if ($globalDebug) echo 'Get Data...'."\n";
692
-	    $buffer = $Common->getData($value['host']);
693
-	    $all_data = json_decode($buffer,true);
694
-	    if ($buffer != '' && is_array($all_data)) {
685
+		}
686
+			//$last_exec['pirepsjson'] = time();
687
+			$last_exec[$id]['last'] = time();
688
+		//} elseif ($value == 'phpvmacars' && (time() - $last_exec['phpvmacars'] > $globalMinFetch)) {
689
+		} elseif ($value['format'] == 'phpvmacars' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
690
+		//$buffer = $Common->getData($hosts[$id]);
691
+		if ($globalDebug) echo 'Get Data...'."\n";
692
+		$buffer = $Common->getData($value['host']);
693
+		$all_data = json_decode($buffer,true);
694
+		if ($buffer != '' && is_array($all_data)) {
695 695
 		foreach ($all_data as $line) {
696
-	    	    $data = array();
697
-	    	    //$data['id'] = $line['id']; // id not usable
698
-	    	    if (isset($line['pilotid'])) $data['id'] = $line['pilotid'].$line['flightnum'];
699
-	    	    $data['hex'] = substr(str_pad(bin2hex($line['flightnum']),6,'000000',STR_PAD_LEFT),-6); // hex
700
-	    	    if (isset($line['pilotname'])) $data['pilot_name'] = $line['pilotname'];
701
-	    	    if (isset($line['pilotid'])) $data['pilot_id'] = $line['pilotid'];
702
-	    	    $data['ident'] = $line['flightnum']; // ident
703
-	    	    $data['altitude'] = $line['alt']; // altitude
704
-	    	    $data['speed'] = $line['gs']; // speed
705
-	    	    $data['heading'] = $line['heading']; // heading
706
-	    	    $data['latitude'] = $line['lat']; // lat
707
-	    	    $data['longitude'] = $line['lng']; // long
708
-	    	    $data['verticalrate'] = ''; // verticale rate
709
-	    	    $data['squawk'] = ''; // squawk
710
-	    	    $data['emergency'] = ''; // emergency
711
-	    	    //$data['datetime'] = $line['lastupdate'];
712
-	    	    $data['last_update'] = $line['lastupdate'];
713
-		    $data['datetime'] = date('Y-m-d H:i:s');
714
-	    	    $data['departure_airport_icao'] = $line['depicao'];
715
-	    	    $data['departure_airport_time'] = $line['deptime'];
716
-	    	    $data['arrival_airport_icao'] = $line['arricao'];
717
-    		    $data['arrival_airport_time'] = $line['arrtime'];
718
-    		    $data['registration'] = $line['aircraft'];
719
-		    if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
720
-		    if (isset($line['aircraftname'])) {
696
+				$data = array();
697
+				//$data['id'] = $line['id']; // id not usable
698
+				if (isset($line['pilotid'])) $data['id'] = $line['pilotid'].$line['flightnum'];
699
+				$data['hex'] = substr(str_pad(bin2hex($line['flightnum']),6,'000000',STR_PAD_LEFT),-6); // hex
700
+				if (isset($line['pilotname'])) $data['pilot_name'] = $line['pilotname'];
701
+				if (isset($line['pilotid'])) $data['pilot_id'] = $line['pilotid'];
702
+				$data['ident'] = $line['flightnum']; // ident
703
+				$data['altitude'] = $line['alt']; // altitude
704
+				$data['speed'] = $line['gs']; // speed
705
+				$data['heading'] = $line['heading']; // heading
706
+				$data['latitude'] = $line['lat']; // lat
707
+				$data['longitude'] = $line['lng']; // long
708
+				$data['verticalrate'] = ''; // verticale rate
709
+				$data['squawk'] = ''; // squawk
710
+				$data['emergency'] = ''; // emergency
711
+				//$data['datetime'] = $line['lastupdate'];
712
+				$data['last_update'] = $line['lastupdate'];
713
+			$data['datetime'] = date('Y-m-d H:i:s');
714
+				$data['departure_airport_icao'] = $line['depicao'];
715
+				$data['departure_airport_time'] = $line['deptime'];
716
+				$data['arrival_airport_icao'] = $line['arricao'];
717
+				$data['arrival_airport_time'] = $line['arrtime'];
718
+				$data['registration'] = $line['aircraft'];
719
+			if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
720
+			if (isset($line['aircraftname'])) {
721 721
 			$line['aircraftname'] = strtoupper($line['aircraftname']);
722 722
 			$line['aircraftname'] = str_replace('BOEING ','B',$line['aircraftname']);
723
-	    		$aircraft_data = explode('-',$line['aircraftname']);
724
-	    		if (isset($aircraft_data[1]) && strlen($aircraft_data[0]) < 5) $data['aircraft_icao'] = $aircraft_data[0];
725
-	    		elseif (isset($aircraft_data[1]) && strlen($aircraft_data[1]) < 5) $data['aircraft_icao'] = $aircraft_data[1];
726
-	    		else {
727
-	    		    $aircraft_data = explode(' ',$line['aircraftname']);
728
-	    		    if (isset($aircraft_data[1])) $data['aircraft_icao'] = $aircraft_data[1];
729
-	    		    else $data['aircraft_icao'] = $line['aircraftname'];
730
-	    		}
731
-	    	    }
732
-    		    if (isset($line['route'])) $data['waypoints'] = $line['route'];
733
-    		    $data['id_source'] = $id_source;
734
-	    	    $data['format_source'] = 'phpvmacars';
735
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
736
-		    $SI->add($data);
737
-		    unset($data);
723
+				$aircraft_data = explode('-',$line['aircraftname']);
724
+				if (isset($aircraft_data[1]) && strlen($aircraft_data[0]) < 5) $data['aircraft_icao'] = $aircraft_data[0];
725
+				elseif (isset($aircraft_data[1]) && strlen($aircraft_data[1]) < 5) $data['aircraft_icao'] = $aircraft_data[1];
726
+				else {
727
+					$aircraft_data = explode(' ',$line['aircraftname']);
728
+					if (isset($aircraft_data[1])) $data['aircraft_icao'] = $aircraft_data[1];
729
+					else $data['aircraft_icao'] = $line['aircraftname'];
730
+				}
731
+				}
732
+				if (isset($line['route'])) $data['waypoints'] = $line['route'];
733
+				$data['id_source'] = $id_source;
734
+				$data['format_source'] = 'phpvmacars';
735
+			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
736
+			$SI->add($data);
737
+			unset($data);
738 738
 		}
739 739
 		if ($globalDebug) echo 'No more data...'."\n";
740 740
 		unset($buffer);
741 741
 		unset($all_data);
742
-	    }
743
-    	    //$last_exec['phpvmacars'] = time();
744
-    	    $last_exec[$id]['last'] = time();
745
-    	} elseif ($value['format'] == 'vam' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
746
-	    //$buffer = $Common->getData($hosts[$id]);
747
-	    if ($globalDebug) echo 'Get Data...'."\n";
748
-	    $buffer = $Common->getData($value['host']);
749
-	    $all_data = json_decode($buffer,true);
750
-	    if ($buffer != '' && is_array($all_data)) {
742
+		}
743
+			//$last_exec['phpvmacars'] = time();
744
+			$last_exec[$id]['last'] = time();
745
+		} elseif ($value['format'] == 'vam' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
746
+		//$buffer = $Common->getData($hosts[$id]);
747
+		if ($globalDebug) echo 'Get Data...'."\n";
748
+		$buffer = $Common->getData($value['host']);
749
+		$all_data = json_decode($buffer,true);
750
+		if ($buffer != '' && is_array($all_data)) {
751 751
 		foreach ($all_data as $line) {
752
-	    	    $data = array();
753
-	    	    //$data['id'] = $line['id']; // id not usable
754
-	    	    $data['id'] = $line['flight_id'];
755
-	    	    $data['hex'] = substr(str_pad(bin2hex($line['callsign']),6,'000000',STR_PAD_LEFT),-6); // hex
756
-	    	    $data['pilot_name'] = $line['pilot_name'];
757
-	    	    $data['pilot_id'] = $line['pilot_id'];
758
-	    	    $data['ident'] = $line['callsign']; // ident
759
-	    	    $data['altitude'] = $line['altitude']; // altitude
760
-	    	    $data['speed'] = $line['gs']; // speed
761
-	    	    $data['heading'] = $line['heading']; // heading
762
-	    	    $data['latitude'] = $line['latitude']; // lat
763
-	    	    $data['longitude'] = $line['longitude']; // long
764
-	    	    $data['verticalrate'] = ''; // verticale rate
765
-	    	    $data['squawk'] = ''; // squawk
766
-	    	    $data['emergency'] = ''; // emergency
767
-	    	    //$data['datetime'] = $line['lastupdate'];
768
-	    	    $data['last_update'] = $line['last_update'];
769
-		    $data['datetime'] = date('Y-m-d H:i:s');
770
-	    	    $data['departure_airport_icao'] = $line['departure'];
771
-	    	    //$data['departure_airport_time'] = $line['departure_time'];
772
-	    	    $data['arrival_airport_icao'] = $line['arrival'];
773
-    		    //$data['arrival_airport_time'] = $line['arrival_time'];
774
-    		    //$data['registration'] = $line['aircraft'];
775
-		    if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
776
-	    	    $data['aircraft_icao'] = $line['plane_type'];
777
-    		    $data['id_source'] = $id_source;
778
-	    	    $data['format_source'] = 'vam';
779
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
780
-		    $SI->add($data);
781
-		    unset($data);
752
+				$data = array();
753
+				//$data['id'] = $line['id']; // id not usable
754
+				$data['id'] = $line['flight_id'];
755
+				$data['hex'] = substr(str_pad(bin2hex($line['callsign']),6,'000000',STR_PAD_LEFT),-6); // hex
756
+				$data['pilot_name'] = $line['pilot_name'];
757
+				$data['pilot_id'] = $line['pilot_id'];
758
+				$data['ident'] = $line['callsign']; // ident
759
+				$data['altitude'] = $line['altitude']; // altitude
760
+				$data['speed'] = $line['gs']; // speed
761
+				$data['heading'] = $line['heading']; // heading
762
+				$data['latitude'] = $line['latitude']; // lat
763
+				$data['longitude'] = $line['longitude']; // long
764
+				$data['verticalrate'] = ''; // verticale rate
765
+				$data['squawk'] = ''; // squawk
766
+				$data['emergency'] = ''; // emergency
767
+				//$data['datetime'] = $line['lastupdate'];
768
+				$data['last_update'] = $line['last_update'];
769
+			$data['datetime'] = date('Y-m-d H:i:s');
770
+				$data['departure_airport_icao'] = $line['departure'];
771
+				//$data['departure_airport_time'] = $line['departure_time'];
772
+				$data['arrival_airport_icao'] = $line['arrival'];
773
+				//$data['arrival_airport_time'] = $line['arrival_time'];
774
+				//$data['registration'] = $line['aircraft'];
775
+			if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
776
+				$data['aircraft_icao'] = $line['plane_type'];
777
+				$data['id_source'] = $id_source;
778
+				$data['format_source'] = 'vam';
779
+			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
780
+			$SI->add($data);
781
+			unset($data);
782 782
 		}
783 783
 		if ($globalDebug) echo 'No more data...'."\n";
784 784
 		unset($buffer);
785 785
 		unset($all_data);
786
-	    }
787
-    	    //$last_exec['phpvmacars'] = time();
788
-    	    $last_exec[$id]['last'] = time();
786
+		}
787
+			//$last_exec['phpvmacars'] = time();
788
+			$last_exec[$id]['last'] = time();
789 789
 	//} elseif ($value == 'sbs' || $value == 'tsv' || $value == 'raw' || $value == 'aprs' || $value == 'beast') {
790 790
 	} elseif ($value['format'] == 'sbs' || $value['format'] == 'tsv' || $value['format'] == 'raw' || $value['format'] == 'aprs' || $value['format'] == 'beast' || $value['format'] == 'flightgearmp' || $value['format'] == 'flightgearsp' || $value['format'] == 'acars') {
791
-	    if (function_exists('pcntl_fork')) pcntl_signal_dispatch();
792
-    	    //$last_exec[$id]['last'] = time();
791
+		if (function_exists('pcntl_fork')) pcntl_signal_dispatch();
792
+			//$last_exec[$id]['last'] = time();
793 793
 
794
-	    //$read = array( $sockets[$id] );
795
-	    $read = $sockets;
796
-	    $write = NULL;
797
-	    $e = NULL;
798
-	    $n = socket_select($read, $write, $e, $timeout);
799
-	    if ($e != NULL) var_dump($e);
800
-	    if ($n > 0) {
794
+		//$read = array( $sockets[$id] );
795
+		$read = $sockets;
796
+		$write = NULL;
797
+		$e = NULL;
798
+		$n = socket_select($read, $write, $e, $timeout);
799
+		if ($e != NULL) var_dump($e);
800
+		if ($n > 0) {
801 801
 		foreach ($read as $nb => $r) {
802
-		    //$value = $formats[$nb];
803
-		    $format = $globalSources[$nb]['format'];
804
-        	    if ($format == 'sbs' || $format == 'aprs' || $format == 'raw' || $format == 'tsv') {
805
-        		$buffer = socket_read($r, 6000,PHP_NORMAL_READ);
806
-        	    } else {
807
-	    	        $az = socket_recvfrom($r,$buffer,6000,0,$remote_ip,$remote_port);
808
-	    	    }
809
-        	    //$buffer = socket_read($r, 60000,PHP_NORMAL_READ);
810
-        	    //echo $buffer."\n";
811
-		    // lets play nice and handle signals such as ctrl-c/kill properly
812
-		    //if (function_exists('pcntl_fork')) pcntl_signal_dispatch();
813
-		    $error = false;
814
-		    //$SI::del();
815
-		    $buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'',$buffer));
816
-		    // SBS format is CSV format
817
-		    if ($buffer != '') {
802
+			//$value = $formats[$nb];
803
+			$format = $globalSources[$nb]['format'];
804
+				if ($format == 'sbs' || $format == 'aprs' || $format == 'raw' || $format == 'tsv') {
805
+				$buffer = socket_read($r, 6000,PHP_NORMAL_READ);
806
+				} else {
807
+					$az = socket_recvfrom($r,$buffer,6000,0,$remote_ip,$remote_port);
808
+				}
809
+				//$buffer = socket_read($r, 60000,PHP_NORMAL_READ);
810
+				//echo $buffer."\n";
811
+			// lets play nice and handle signals such as ctrl-c/kill properly
812
+			//if (function_exists('pcntl_fork')) pcntl_signal_dispatch();
813
+			$error = false;
814
+			//$SI::del();
815
+			$buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'',$buffer));
816
+			// SBS format is CSV format
817
+			if ($buffer != '') {
818 818
 			$tt[$format] = 0;
819 819
 			if ($format == 'acarssbs3') {
820
-			    echo $buffer."\n";
820
+				echo $buffer."\n";
821 821
 			} elseif ($format == 'raw') {
822
-			    // AVR format
823
-			    $data = $SBS->parse($buffer);
824
-			    if (is_array($data)) {
822
+				// AVR format
823
+				$data = $SBS->parse($buffer);
824
+				if (is_array($data)) {
825 825
 				$data['datetime'] = date('Y-m-d H:i:s');
826 826
 				$data['format_source'] = 'raw';
827 827
 				if (isset($globalSources[$nb]['name']) && $globalSources[$nb]['name'] != '') $data['source_name'] = $globalSources[$nb]['name'];
828
-    				if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
829
-                                if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
830
-                            }
831
-                        } elseif ($format == 'flightgearsp') {
832
-                    	    //echo $buffer."\n";
833
-                    	    if (strlen($buffer) > 5) {
828
+					if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
829
+								if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
830
+							}
831
+						} elseif ($format == 'flightgearsp') {
832
+							//echo $buffer."\n";
833
+							if (strlen($buffer) > 5) {
834 834
 				$line = explode(',',$buffer);
835 835
 				$data = array();
836 836
 				//XGPS,2.0947,41.3093,-3047.6953,198.930,0.000,callsign,c172p
@@ -846,114 +846,114 @@  discard block
 block discarded – undo
846 846
 				$data['format_source'] = 'flightgearsp';
847 847
 				if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
848 848
 				$send = @ socket_send( $r  , $data_aprs , strlen($data_aprs) , 0 );
849
-			    }
850
-                        } elseif ($format == 'acars') {
851
-                    	    if ($globalDebug) echo 'ACARS : '.$buffer."\n";
852
-			    $ACARS->add(trim($buffer));
853
-			    socket_sendto($r, "OK " . $buffer , 100 , 0 , $remote_ip , $remote_port);
854
-			    $ACARS->deleteLiveAcarsData();
849
+				}
850
+						} elseif ($format == 'acars') {
851
+							if ($globalDebug) echo 'ACARS : '.$buffer."\n";
852
+				$ACARS->add(trim($buffer));
853
+				socket_sendto($r, "OK " . $buffer , 100 , 0 , $remote_ip , $remote_port);
854
+				$ACARS->deleteLiveAcarsData();
855 855
 			} elseif ($format == 'flightgearmp') {
856
-			    if (substr($buffer,0,1) != '#') {
856
+				if (substr($buffer,0,1) != '#') {
857 857
 				$data = array();
858 858
 				//echo $buffer."\n";
859 859
 				$line = explode(' ',$buffer);
860 860
 				if (count($line) == 11) {
861
-				    $userserver = explode('@',$line[0]);
862
-				    $data['hex'] = substr(str_pad(bin2hex($line[0]),6,'000000',STR_PAD_LEFT),0,6); // hex
863
-				    $data['ident'] = $userserver[0];
864
-				    $data['registration'] = $userserver[0];
865
-				    $data['latitude'] = $line[4];
866
-				    $data['longitude'] = $line[5];
867
-				    $data['altitude'] = $line[6];
868
-				    $data['datetime'] = date('Y-m-d H:i:s');
869
-				    $aircraft_type = $line[10];
870
-				    $aircraft_type = preg_split(':/:',$aircraft_type);
871
-				    $data['aircraft_name'] = substr(end($aircraft_type),0,-4);
872
-				    if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
861
+					$userserver = explode('@',$line[0]);
862
+					$data['hex'] = substr(str_pad(bin2hex($line[0]),6,'000000',STR_PAD_LEFT),0,6); // hex
863
+					$data['ident'] = $userserver[0];
864
+					$data['registration'] = $userserver[0];
865
+					$data['latitude'] = $line[4];
866
+					$data['longitude'] = $line[5];
867
+					$data['altitude'] = $line[6];
868
+					$data['datetime'] = date('Y-m-d H:i:s');
869
+					$aircraft_type = $line[10];
870
+					$aircraft_type = preg_split(':/:',$aircraft_type);
871
+					$data['aircraft_name'] = substr(end($aircraft_type),0,-4);
872
+					if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
873
+				}
873 874
 				}
874
-			    }
875 875
 			} elseif ($format == 'beast') {
876
-			    echo 'Beast Binary format not yet supported. Beast AVR format is supported in alpha state'."\n";
877
-			    die;
876
+				echo 'Beast Binary format not yet supported. Beast AVR format is supported in alpha state'."\n";
877
+				die;
878 878
 			} elseif ($format == 'tsv' || substr($buffer,0,4) == 'clock') {
879
-			    $line = explode("\t", $buffer);
880
-			    for($k = 0; $k < count($line); $k=$k+2) {
879
+				$line = explode("\t", $buffer);
880
+				for($k = 0; $k < count($line); $k=$k+2) {
881 881
 				$key = $line[$k];
882
-			        $lined[$key] = $line[$k+1];
883
-			    }
884
-    			    if (count($lined) > 3) {
885
-    				$data['hex'] = $lined['hexid'];
886
-    				//$data['datetime'] = date('Y-m-d H:i:s',strtotime($lined['clock']));;
887
-    				$data['datetime'] = date('Y-m-d H:i:s');;
888
-    				if (isset($lined['ident'])) $data['ident'] = $lined['ident'];
889
-    				if (isset($lined['lat'])) $data['latitude'] = $lined['lat'];
890
-    				if (isset($lined['lon'])) $data['longitude'] = $lined['lon'];
891
-    				if (isset($lined['speed'])) $data['speed'] = $lined['speed'];
892
-    				if (isset($lined['squawk'])) $data['squawk'] = $lined['squawk'];
893
-    				if (isset($lined['alt'])) $data['altitude'] = $lined['alt'];
894
-    				if (isset($lined['heading'])) $data['heading'] = $lined['heading'];
895
-    				$data['id_source'] = $id_source;
896
-    				$data['format_source'] = 'tsv';
897
-    				if (isset($globalSources[$nb]['name']) && $globalSources[$nb]['name'] != '') $data['source_name'] = $globalSources[$nb]['name'];
898
-    				if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
899
-    				if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
900
-    				unset($lined);
901
-    				unset($data);
902
-    			    } else $error = true;
882
+					$lined[$key] = $line[$k+1];
883
+				}
884
+					if (count($lined) > 3) {
885
+					$data['hex'] = $lined['hexid'];
886
+					//$data['datetime'] = date('Y-m-d H:i:s',strtotime($lined['clock']));;
887
+					$data['datetime'] = date('Y-m-d H:i:s');;
888
+					if (isset($lined['ident'])) $data['ident'] = $lined['ident'];
889
+					if (isset($lined['lat'])) $data['latitude'] = $lined['lat'];
890
+					if (isset($lined['lon'])) $data['longitude'] = $lined['lon'];
891
+					if (isset($lined['speed'])) $data['speed'] = $lined['speed'];
892
+					if (isset($lined['squawk'])) $data['squawk'] = $lined['squawk'];
893
+					if (isset($lined['alt'])) $data['altitude'] = $lined['alt'];
894
+					if (isset($lined['heading'])) $data['heading'] = $lined['heading'];
895
+					$data['id_source'] = $id_source;
896
+					$data['format_source'] = 'tsv';
897
+					if (isset($globalSources[$nb]['name']) && $globalSources[$nb]['name'] != '') $data['source_name'] = $globalSources[$nb]['name'];
898
+					if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
899
+					if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
900
+					unset($lined);
901
+					unset($data);
902
+					} else $error = true;
903 903
 			} elseif ($format == 'aprs' && $use_aprs) {
904
-			    if ($aprs_connect == 0) {
904
+				if ($aprs_connect == 0) {
905 905
 				$send = @ socket_send( $r  , $aprs_login , strlen($aprs_login) , 0 );
906 906
 				$aprs_connect = 1;
907
-			    }
908
-			    if ( $aprs_keep>60 && time() - $aprs_last_tx > $aprs_keep ) {
907
+				}
908
+				if ( $aprs_keep>60 && time() - $aprs_last_tx > $aprs_keep ) {
909 909
 				$aprs_last_tx = time();
910 910
 				$data_aprs = "# Keep alive";
911 911
 				$send = @ socket_send( $r  , $data_aprs , strlen($data_aprs) , 0 );
912
-			    }
913
-			    //echo 'Connect : '.$aprs_connect.' '.$buffer."\n";
914
-			    $buffer = str_replace('APRS <- ','',$buffer);
915
-			    $buffer = str_replace('APRS -> ','',$buffer);
916
-			    if (substr($buffer,0,1) != '#' && substr($buffer,0,1) != '@' && substr($buffer,0,5) != 'APRS ') {
912
+				}
913
+				//echo 'Connect : '.$aprs_connect.' '.$buffer."\n";
914
+				$buffer = str_replace('APRS <- ','',$buffer);
915
+				$buffer = str_replace('APRS -> ','',$buffer);
916
+				if (substr($buffer,0,1) != '#' && substr($buffer,0,1) != '@' && substr($buffer,0,5) != 'APRS ') {
917 917
 				$line = $APRS->parse($buffer);
918 918
 				if (is_array($line) && isset($line['address']) && $line['address'] != '' && isset($line['ident'])) {
919
-				    $data = array();
920
-				    //print_r($line);
921
-				    $data['hex'] = $line['address'];
922
-				    $data['datetime'] = date('Y-m-d H:i:s',$line['timestamp']);
923
-				    //$data['datetime'] = date('Y-m-d H:i:s');
924
-				    $data['ident'] = $line['ident'];
925
-				    $data['latitude'] = $line['latitude'];
926
-				    $data['longitude'] = $line['longitude'];
927
-				    //$data['verticalrate'] = $line[16];
928
-				    if (isset($line['speed'])) $data['speed'] = $line['speed'];
929
-				    else $data['speed'] = 0;
930
-				    $data['altitude'] = $line['altitude'];
931
-				    if (isset($line['course'])) $data['heading'] = $line['course'];
932
-				    //else $data['heading'] = 0;
933
-				    $data['aircraft_type'] = $line['stealth'];
934
-				    if (!isset($globalAPRSarchive) || (isset($globalAPRSarchive) && $globalAPRSarchive == FALSE)) $data['noarchive'] = true;
935
-    				    $data['id_source'] = $id_source;
936
-				    $data['format_source'] = 'aprs';
937
-				    $data['source_name'] = $line['source'];
938
-    				    if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
939
-				    $currentdate = date('Y-m-d H:i:s');
940
-				    $aprsdate = strtotime($data['datetime']);
941
-				    // Accept data if time <= system time + 20s
942
-				    if ($line['stealth'] == 0 && (strtotime($data['datetime']) <= strtotime($currentdate)+20) && (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude'])))) $send = $SI->add($data);
943
-				    else {
919
+					$data = array();
920
+					//print_r($line);
921
+					$data['hex'] = $line['address'];
922
+					$data['datetime'] = date('Y-m-d H:i:s',$line['timestamp']);
923
+					//$data['datetime'] = date('Y-m-d H:i:s');
924
+					$data['ident'] = $line['ident'];
925
+					$data['latitude'] = $line['latitude'];
926
+					$data['longitude'] = $line['longitude'];
927
+					//$data['verticalrate'] = $line[16];
928
+					if (isset($line['speed'])) $data['speed'] = $line['speed'];
929
+					else $data['speed'] = 0;
930
+					$data['altitude'] = $line['altitude'];
931
+					if (isset($line['course'])) $data['heading'] = $line['course'];
932
+					//else $data['heading'] = 0;
933
+					$data['aircraft_type'] = $line['stealth'];
934
+					if (!isset($globalAPRSarchive) || (isset($globalAPRSarchive) && $globalAPRSarchive == FALSE)) $data['noarchive'] = true;
935
+						$data['id_source'] = $id_source;
936
+					$data['format_source'] = 'aprs';
937
+					$data['source_name'] = $line['source'];
938
+						if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
939
+					$currentdate = date('Y-m-d H:i:s');
940
+					$aprsdate = strtotime($data['datetime']);
941
+					// Accept data if time <= system time + 20s
942
+					if ($line['stealth'] == 0 && (strtotime($data['datetime']) <= strtotime($currentdate)+20) && (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude'])))) $send = $SI->add($data);
943
+					else {
944 944
 					if ($line['stealth'] != 0) echo '-------- '.$data['ident'].' : APRS stealth ON => not adding'."\n";
945 945
 					else echo '--------- '.$data['ident'].' : Date APRS : '.$data['datetime'].' - Current date : '.$currentdate.' => not adding future event'."\n";
946
-				    }
947
-				    unset($data);
946
+					}
947
+					unset($data);
948 948
 				} 
949 949
 				//elseif ($line == false && $globalDebug) echo 'Ignored ('.$buffer.")\n";
950 950
 				elseif ($line == true && $globalDebug) echo '!! Failed : '.$buffer."!!\n";
951
-			    }
951
+				}
952 952
 			} else {
953
-			    $line = explode(',', $buffer);
954
-    			    if (count($line) > 20) {
955
-    			    	$data['hex'] = $line[4];
956
-    				/*
953
+				$line = explode(',', $buffer);
954
+					if (count($line) > 20) {
955
+						$data['hex'] = $line[4];
956
+					/*
957 957
     				$data['datetime'] = $line[6].' '.$line[7];
958 958
     					date_default_timezone_set($globalTimezone);
959 959
     					$datetime = new DateTime($data['datetime']);
@@ -961,28 +961,28 @@  discard block
 block discarded – undo
961 961
     					$data['datetime'] = $datetime->format('Y-m-d H:i:s');
962 962
     					date_default_timezone_set('UTC');
963 963
     				*/
964
-    				// Force datetime to current UTC datetime
965
-    				$data['datetime'] = date('Y-m-d H:i:s');
966
-    				$data['ident'] = trim($line[10]);
967
-    				$data['latitude'] = $line[14];
968
-    				$data['longitude'] = $line[15];
969
-    				$data['verticalrate'] = $line[16];
970
-    				$data['emergency'] = $line[20];
971
-    				$data['speed'] = $line[12];
972
-    				$data['squawk'] = $line[17];
973
-    				$data['altitude'] = $line[11];
974
-    				$data['heading'] = $line[13];
975
-    				$data['ground'] = $line[21];
976
-    				$data['emergency'] = $line[19];
977
-    				$data['format_source'] = 'sbs';
964
+					// Force datetime to current UTC datetime
965
+					$data['datetime'] = date('Y-m-d H:i:s');
966
+					$data['ident'] = trim($line[10]);
967
+					$data['latitude'] = $line[14];
968
+					$data['longitude'] = $line[15];
969
+					$data['verticalrate'] = $line[16];
970
+					$data['emergency'] = $line[20];
971
+					$data['speed'] = $line[12];
972
+					$data['squawk'] = $line[17];
973
+					$data['altitude'] = $line[11];
974
+					$data['heading'] = $line[13];
975
+					$data['ground'] = $line[21];
976
+					$data['emergency'] = $line[19];
977
+					$data['format_source'] = 'sbs';
978 978
 				if (isset($globalSources[$nb]['name']) && $globalSources[$nb]['name'] != '') $data['source_name'] = $globalSources[$nb]['name'];
979
-    				if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
980
-    				$data['id_source'] = $id_source;
981
-    				if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $send = $SI->add($data);
982
-    				else $error = true;
983
-    				unset($data);
984
-    			    } else $error = true;
985
-			    if ($error) {
979
+					if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
980
+					$data['id_source'] = $id_source;
981
+					if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $send = $SI->add($data);
982
+					else $error = true;
983
+					unset($data);
984
+					} else $error = true;
985
+				if ($error) {
986 986
 				if (count($line) > 1 && ($line[0] == 'STA' || $line[0] == 'AIR' || $line[0] == 'SEL' || $line[0] == 'ID' || $line[0] == 'CLK')) { 
987 987
 					if ($globalDebug) echo "Not a message. Ignoring... \n";
988 988
 				} else {
@@ -998,13 +998,13 @@  discard block
 block discarded – undo
998 998
 					connect_all($sourceer);
999 999
 					$sourceer = array();
1000 1000
 				}
1001
-			    }
1001
+				}
1002 1002
 			}
1003 1003
 			// Sleep for xxx microseconds
1004 1004
 			if (isset($globalSBSSleep)) usleep($globalSBSSleep);
1005
-		    } else {
1005
+			} else {
1006 1006
 			if ($format == 'flightgearmp') {
1007
-			    	if ($globalDebug) echo "Reconnect FlightGear MP...";
1007
+					if ($globalDebug) echo "Reconnect FlightGear MP...";
1008 1008
 				//@socket_close($r);
1009 1009
 				sleep($globalMinFetch);
1010 1010
 				$sourcefg[$nb] = $globalSources[$nb];
@@ -1013,9 +1013,9 @@  discard block
 block discarded – undo
1013 1013
 				break;
1014 1014
 				
1015 1015
 			} elseif ($format != 'acars' && $format != 'flightgearsp') {
1016
-			    if (isset($tt[$format])) $tt[$format]++;
1017
-			    else $tt[$format] = 0;
1018
-			    if ($tt[$format] > 30) {
1016
+				if (isset($tt[$format])) $tt[$format]++;
1017
+				else $tt[$format] = 0;
1018
+				if ($tt[$format] > 30) {
1019 1019
 				if ($globalDebug) echo "ERROR : Reconnect ".$format."...";
1020 1020
 				//@socket_close($r);
1021 1021
 				sleep(2);
@@ -1026,40 +1026,40 @@  discard block
 block discarded – undo
1026 1026
 				//connect_all($globalSources);
1027 1027
 				$tt[$format]=0;
1028 1028
 				break;
1029
-			    }
1029
+				}
1030
+			}
1030 1031
 			}
1031
-		    }
1032 1032
 		}
1033
-	    } else {
1033
+		} else {
1034 1034
 		$error = socket_strerror(socket_last_error());
1035 1035
 		if ($globalDebug) echo "ERROR : socket_select give this error ".$error . "\n";
1036 1036
 		if (($error != SOCKET_EINPROGRESS && $error != SOCKET_EALREADY) || time() - $time >= $timeout) {
1037 1037
 			if (isset($globalDebug)) echo "Restarting...\n";
1038 1038
 			// Restart the script if possible
1039 1039
 			if (is_array($sockets)) {
1040
-			    if ($globalDebug) echo "Shutdown all sockets...";
1040
+				if ($globalDebug) echo "Shutdown all sockets...";
1041 1041
 			    
1042
-			    foreach ($sockets as $sock) {
1042
+				foreach ($sockets as $sock) {
1043 1043
 				@socket_shutdown($sock,2);
1044 1044
 				@socket_close($sock);
1045
-			    }
1045
+				}
1046 1046
 			    
1047 1047
 			}
1048
-			    if ($globalDebug) echo "Restart all connections...";
1049
-			    sleep(2);
1050
-			    $time = time();
1051
-			    //connect_all($hosts);
1052
-			    $aprs_connect = 0;
1053
-			    connect_all($globalSources);
1048
+				if ($globalDebug) echo "Restart all connections...";
1049
+				sleep(2);
1050
+				$time = time();
1051
+				//connect_all($hosts);
1052
+				$aprs_connect = 0;
1053
+				connect_all($globalSources);
1054 1054
 
1055 1055
 		}
1056
-	    }
1056
+		}
1057 1057
 	}
1058 1058
 	if ($globalDaemon === false) {
1059
-	    if ($globalDebug) echo 'Check all...'."\n";
1060
-	    $SI->checkAll();
1059
+		if ($globalDebug) echo 'Check all...'."\n";
1060
+		$SI->checkAll();
1061
+	}
1061 1062
 	}
1062
-    }
1063 1063
 }
1064 1064
 
1065 1065
 ?>
Please login to merge, or discard this patch.
Spacing   +100 added lines, -100 removed lines patch added patch discarded remove patch
@@ -37,11 +37,11 @@  discard block
 block discarded – undo
37 37
 	    die;
38 38
 	}
39 39
 	//$hosts = array($globalSBS1Host.':'.$globalSBS1Port);
40
-	$globalSources[] = array('host' => $globalSBS1Host,'port' => $globalSBS1Port);
40
+	$globalSources[] = array('host' => $globalSBS1Host, 'port' => $globalSBS1Port);
41 41
     }
42 42
 }
43 43
 
44
-$options = getopt('s::',array('source::','server','idsource::'));
44
+$options = getopt('s::', array('source::', 'server', 'idsource::'));
45 45
 //if (isset($options['s'])) $hosts = array($options['s']);
46 46
 //elseif (isset($options['source'])) $hosts = array($options['source']);
47 47
 if (isset($options['s'])) {
@@ -56,17 +56,17 @@  discard block
 block discarded – undo
56 56
 else $id_source = 1;
57 57
 if (isset($globalServer) && $globalServer) {
58 58
     if ($globalDebug) echo "Using Server Mode\n";
59
-    $SI=new SpotterServer();
60
-} else $SI=new SpotterImport($Connection->db);
59
+    $SI = new SpotterServer();
60
+} else $SI = new SpotterImport($Connection->db);
61 61
 //$APRS=new APRS($Connection->db);
62
-$SBS=new SBS();
63
-$ACARS=new ACARS($Connection->db);
64
-$Common=new Common();
62
+$SBS = new SBS();
63
+$ACARS = new ACARS($Connection->db);
64
+$Common = new Common();
65 65
 date_default_timezone_set('UTC');
66 66
 //$servertz = system('date +%Z');
67 67
 // signal handler - playing nice with sockets and dump1090
68 68
 if (function_exists('pcntl_fork')) {
69
-    pcntl_signal(SIGINT,  function() {
69
+    pcntl_signal(SIGINT, function() {
70 70
         global $sockets;
71 71
         echo "\n\nctrl-c or kill signal received. Tidying up ... ";
72 72
         die("Bye!\n");
@@ -109,34 +109,34 @@  discard block
 block discarded – undo
109 109
 
110 110
 function connect_all($hosts) {
111 111
     //global $sockets, $formats, $globalDebug,$aprs_connect,$last_exec, $globalSourcesRights, $use_aprs;
112
-    global $sockets, $globalSources, $globalDebug,$aprs_connect,$last_exec, $globalSourcesRights, $use_aprs;
112
+    global $sockets, $globalSources, $globalDebug, $aprs_connect, $last_exec, $globalSourcesRights, $use_aprs;
113 113
     if ($globalDebug) echo 'Connect to all...'."\n";
114 114
     foreach ($hosts as $id => $value) {
115 115
 	$host = $value['host'];
116 116
 	$globalSources[$id]['last_exec'] = 0;
117 117
 	// Here we check type of source(s)
118
-	if (filter_var($host,FILTER_VALIDATE_URL) && (!isset($globalSources[$id]['format']) || strtolower($globalSources[$id]['format']) == 'auto')) {
119
-            if (preg_match('/deltadb.txt$/i',$host)) {
118
+	if (filter_var($host, FILTER_VALIDATE_URL) && (!isset($globalSources[$id]['format']) || strtolower($globalSources[$id]['format']) == 'auto')) {
119
+            if (preg_match('/deltadb.txt$/i', $host)) {
120 120
         	//$formats[$id] = 'deltadbtxt';
121 121
         	$globalSources[$id]['format'] = 'deltadbtxt';
122 122
         	//$last_exec['deltadbtxt'] = 0;
123 123
         	if ($globalDebug) echo "Connect to deltadb source (".$host.")...\n";
124
-            } else if (preg_match('/vatsim-data.txt$/i',$host)) {
124
+            } else if (preg_match('/vatsim-data.txt$/i', $host)) {
125 125
         	//$formats[$id] = 'vatsimtxt';
126 126
         	$globalSources[$id]['format'] = 'vatsimtxt';
127 127
         	//$last_exec['vatsimtxt'] = 0;
128 128
         	if ($globalDebug) echo "Connect to vatsim source (".$host.")...\n";
129
-    	    } else if (preg_match('/aircraftlist.json$/i',$host)) {
129
+    	    } else if (preg_match('/aircraftlist.json$/i', $host)) {
130 130
         	//$formats[$id] = 'aircraftlistjson';
131 131
         	$globalSources[$id]['format'] = 'aircraftlistjson';
132 132
         	//$last_exec['aircraftlistjson'] = 0;
133 133
         	if ($globalDebug) echo "Connect to aircraftlist.json source (".$host.")...\n";
134
-    	    } else if (preg_match('/opensky/i',$host)) {
134
+    	    } else if (preg_match('/opensky/i', $host)) {
135 135
         	//$formats[$id] = 'aircraftlistjson';
136 136
         	$globalSources[$id]['format'] = 'opensky';
137 137
         	//$last_exec['aircraftlistjson'] = 0;
138 138
         	if ($globalDebug) echo "Connect to opensky source (".$host.")...\n";
139
-    	    } else if (preg_match('/radarvirtuel.com\/file.json$/i',$host)) {
139
+    	    } else if (preg_match('/radarvirtuel.com\/file.json$/i', $host)) {
140 140
         	//$formats[$id] = 'radarvirtueljson';
141 141
         	$globalSources[$id]['format'] = 'radarvirtueljson';
142 142
         	//$last_exec['radarvirtueljson'] = 0;
@@ -145,7 +145,7 @@  discard block
 block discarded – undo
145 145
         	    echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
146 146
         	    exit(0);
147 147
         	}
148
-    	    } else if (preg_match('/planeUpdateFAA.php$/i',$host)) {
148
+    	    } else if (preg_match('/planeUpdateFAA.php$/i', $host)) {
149 149
         	//$formats[$id] = 'planeupdatefaa';
150 150
         	$globalSources[$id]['format'] = 'planeupdatefaa';
151 151
         	//$last_exec['planeupdatefaa'] = 0;
@@ -154,26 +154,26 @@  discard block
 block discarded – undo
154 154
         	    echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
155 155
         	    exit(0);
156 156
         	}
157
-            } else if (preg_match('/\/action.php\/acars\/data$/i',$host)) {
157
+            } else if (preg_match('/\/action.php\/acars\/data$/i', $host)) {
158 158
         	//$formats[$id] = 'phpvmacars';
159 159
         	$globalSources[$id]['format'] = 'phpvmacars';
160 160
         	//$last_exec['phpvmacars'] = 0;
161 161
         	if ($globalDebug) echo "Connect to phpvmacars source (".$host.")...\n";
162
-            } else if (preg_match('/VAM-json.php$/i',$host)) {
162
+            } else if (preg_match('/VAM-json.php$/i', $host)) {
163 163
         	//$formats[$id] = 'phpvmacars';
164 164
         	$globalSources[$id]['format'] = 'vam';
165 165
         	if ($globalDebug) echo "Connect to Vam source (".$host.")...\n";
166
-            } else if (preg_match('/whazzup/i',$host)) {
166
+            } else if (preg_match('/whazzup/i', $host)) {
167 167
         	//$formats[$id] = 'whazzup';
168 168
         	$globalSources[$id]['format'] = 'whazzup';
169 169
         	//$last_exec['whazzup'] = 0;
170 170
         	if ($globalDebug) echo "Connect to whazzup source (".$host.")...\n";
171
-            } else if (preg_match('/recentpireps/i',$host)) {
171
+            } else if (preg_match('/recentpireps/i', $host)) {
172 172
         	//$formats[$id] = 'pirepsjson';
173 173
         	$globalSources[$id]['format'] = 'pirepsjson';
174 174
         	//$last_exec['pirepsjson'] = 0;
175 175
         	if ($globalDebug) echo "Connect to pirepsjson source (".$host.")...\n";
176
-            } else if (preg_match(':data.fr24.com/zones/fcgi/feed.js:i',$host)) {
176
+            } else if (preg_match(':data.fr24.com/zones/fcgi/feed.js:i', $host)) {
177 177
         	//$formats[$id] = 'fr24json';
178 178
         	$globalSources[$id]['format'] = 'fr24json';
179 179
         	//$last_exec['fr24json'] = 0;
@@ -183,15 +183,15 @@  discard block
 block discarded – undo
183 183
         	    exit(0);
184 184
         	}
185 185
             //} else if (preg_match('/10001/',$host)) {
186
-            } else if (preg_match('/10001/',$host) || (isset($globalSources[$id]['port']) && $globalSources[$id]['port'] == '10001')) {
186
+            } else if (preg_match('/10001/', $host) || (isset($globalSources[$id]['port']) && $globalSources[$id]['port'] == '10001')) {
187 187
         	//$formats[$id] = 'tsv';
188 188
         	$globalSources[$id]['format'] = 'tsv';
189 189
         	if ($globalDebug) echo "Connect to tsv source (".$host.")...\n";
190 190
             }
191
-        } elseif (filter_var($host,FILTER_VALIDATE_URL)) {
191
+        } elseif (filter_var($host, FILTER_VALIDATE_URL)) {
192 192
         	if ($globalDebug) echo "Connect to ".$globalSources[$id]['format']." source (".$host.")...\n";
193
-        } elseif (!filter_var($host,FILTER_VALIDATE_URL)) {
194
-	    $hostport = explode(':',$host);
193
+        } elseif (!filter_var($host, FILTER_VALIDATE_URL)) {
194
+	    $hostport = explode(':', $host);
195 195
 	    if (isset($hostport[1])) {
196 196
 		$port = $hostport[1];
197 197
 		$hostn = $hostport[0];
@@ -200,14 +200,14 @@  discard block
 block discarded – undo
200 200
 		$hostn = $globalSources[$id]['host'];
201 201
 	    }
202 202
 	    if (!isset($globalSources[$id]['format']) || ($globalSources[$id]['format'] != 'acars' && $globalSources[$id]['format'] != 'flightgearsp')) {
203
-        	$s = create_socket($hostn,$port, $errno, $errstr);
203
+        	$s = create_socket($hostn, $port, $errno, $errstr);
204 204
     	    } else {
205
-        	$s = create_socket_udp($hostn,$port, $errno, $errstr);
205
+        	$s = create_socket_udp($hostn, $port, $errno, $errstr);
206 206
 	    }
207 207
 	    if ($s) {
208 208
     	        $sockets[$id] = $s;
209 209
     	        if (!isset($globalSources[$id]['format']) || strtolower($globalSources[$id]['format']) == 'auto') {
210
-		    if (preg_match('/aprs/',$hostn)) {
210
+		    if (preg_match('/aprs/', $hostn)) {
211 211
 			//$formats[$id] = 'aprs';
212 212
 			$globalSources[$id]['format'] = 'aprs';
213 213
 			//$aprs_connect = 0;
@@ -248,7 +248,7 @@  discard block
 block discarded – undo
248 248
 else if (isset($globalSBS1TimeOut)) $timeout = $globalSBS1TimeOut;
249 249
 else $timeout = 20;
250 250
 $errno = '';
251
-$errstr='';
251
+$errstr = '';
252 252
 
253 253
 if (!isset($globalDaemon)) $globalDaemon = TRUE;
254 254
 /* Initiate connections to all the hosts simultaneously */
@@ -277,7 +277,7 @@  discard block
 block discarded – undo
277 277
 
278 278
 if ($use_aprs) {
279 279
 	require_once(dirname(__FILE__).'/../require/class.APRS.php');
280
-	$APRS=new APRS();
280
+	$APRS = new APRS();
281 281
 	$aprs_connect = 0;
282 282
 	$aprs_keep = 120;
283 283
 	$aprs_last_tx = time();
@@ -288,7 +288,7 @@  discard block
 block discarded – undo
288 288
 	else $aprs_ssid = 'FAM';
289 289
 	//else $aprs_ssid = 'PerlEx';
290 290
 	if (isset($globalAPRSfilter)) $aprs_filter = $globalAPRSfilter;
291
-	else $aprs_filter =  'r/'.$globalCenterLatitude.'/'.$globalCenterLongitude.'/250.0';
291
+	else $aprs_filter = 'r/'.$globalCenterLatitude.'/'.$globalCenterLongitude.'/250.0';
292 292
 	if ($aprs_full) $aprs_filter = '';
293 293
 	if ($aprs_filter != '') $aprs_login = "user {$aprs_ssid} appid {$aprs_version} filter {$aprs_filter}\n";
294 294
 	else $aprs_login = "user {$aprs_ssid} appid {$aprs_version}\n";
@@ -299,12 +299,12 @@  discard block
 block discarded – undo
299 299
 sleep(1);
300 300
 if ($globalDebug) echo "SCAN MODE \n\n";
301 301
 if (!isset($globalCronEnd)) $globalCronEnd = 60;
302
-$endtime = time()+$globalCronEnd;
302
+$endtime = time() + $globalCronEnd;
303 303
 $i = 1;
304 304
 $tt = array();
305 305
 // Delete all ATC
306 306
 if ((isset($globalIVAO) && $globalIVAO) || (isset($globalVATSIM) && $globalVATSIM)) {
307
-	$ATC=new ATC($Connection->db);
307
+	$ATC = new ATC($Connection->db);
308 308
 }
309 309
 if (!$globalDaemon && ((isset($globalIVAO) && $globalIVAO) || (isset($globalVATSIM) && $globalVATSIM))) {
310 310
 	$ATC->deleteAll();
@@ -312,7 +312,7 @@  discard block
 block discarded – undo
312 312
 
313 313
 // Infinite loop if daemon, else work for time defined in $globalCronEnd or only one time.
314 314
 while ($i > 0) {
315
-    if (!$globalDaemon) $i = $endtime-time();
315
+    if (!$globalDaemon) $i = $endtime - time();
316 316
     // Delete old ATC
317 317
     if ($globalDaemon && ((isset($globalIVAO) && $globalIVAO) || (isset($globalVATSIM) && $globalVATSIM))) {
318 318
 	if ($globalDebug) echo 'Delete old ATC...'."\n";
@@ -326,7 +326,7 @@  discard block
 block discarded – undo
326 326
 	}
327 327
 	if ($max != $globalMinFetch) {
328 328
 	    if ($globalDebug) echo 'Sleeping...'."\n";
329
-	    sleep($globalMinFetch-$max+2);
329
+	    sleep($globalMinFetch - $max + 2);
330 330
 	}
331 331
     }
332 332
 
@@ -337,8 +337,8 @@  discard block
 block discarded – undo
337 337
 	if ($value['format'] == 'deltadbtxt' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
338 338
 	    //$buffer = $Common->getData($hosts[$id]);
339 339
 	    $buffer = $Common->getData($value['host']);
340
-    	    $buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
341
-	    $buffer = explode('\n',$buffer);
340
+    	    $buffer = trim(str_replace(array("\r\n", "\r", "\n", "\\r", "\\n", "\\r\\n"), '\n', $buffer));
341
+	    $buffer = explode('\n', $buffer);
342 342
 	    foreach ($buffer as $line) {
343 343
     		if ($line != '') {
344 344
     		    $line = explode(',', $line);
@@ -367,8 +367,8 @@  discard block
 block discarded – undo
367 367
 	} elseif (($value['format'] == 'whazzup' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) || ($value['format'] == 'vatsimtxt' && (time() - $value[' last_exec'] > $globalMinFetch))) {
368 368
 	    //$buffer = $Common->getData($hosts[$id]);
369 369
 	    $buffer = $Common->getData($value['host']);
370
-    	    $buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
371
-	    $buffer = explode('\n',$buffer);
370
+    	    $buffer = trim(str_replace(array("\r\n", "\r", "\n", "\\r", "\\n", "\\r\\n"), '\n', $buffer));
371
+	    $buffer = explode('\n', $buffer);
372 372
 	    foreach ($buffer as $line) {
373 373
     		if ($line != '') {
374 374
     		    $line = explode(':', $line);
@@ -377,7 +377,7 @@  discard block
 block discarded – undo
377 377
 			$data['id'] = $line[1].'-'.$line[0];
378 378
 			$data['pilot_id'] = $line[1];
379 379
 			$data['pilot_name'] = $line[2];
380
-			$data['hex'] = str_pad(dechex($line[1]),6,'000000',STR_PAD_LEFT);
380
+			$data['hex'] = str_pad(dechex($line[1]), 6, '000000', STR_PAD_LEFT);
381 381
 			$data['ident'] = $line[0]; // ident
382 382
 			if ($line[7] != '' && $line[7] != 0) $data['altitude'] = $line[7]; // altitude
383 383
 			$data['speed'] = $line[8]; // speed
@@ -393,7 +393,7 @@  discard block
 block discarded – undo
393 393
 			//$data['datetime'] = date('Y-m-d H:i:s',strtotime($line[37]));
394 394
 			if (isset($line[37])) $data['last_update'] = $line[37];
395 395
 		        $data['departure_airport_icao'] = $line[11];
396
-		        $data['departure_airport_time'] = rtrim(chunk_split($line[22],2,':'),':');
396
+		        $data['departure_airport_time'] = rtrim(chunk_split($line[22], 2, ':'), ':');
397 397
 		        $data['arrival_airport_icao'] = $line[13];
398 398
 			$data['frequency'] = $line[4];
399 399
 			$data['type'] = $line[18];
@@ -402,7 +402,7 @@  discard block
 block discarded – undo
402 402
     			$data['id_source'] = $id_source;
403 403
 	    		//$data['arrival_airport_time'] = ;
404 404
 	    		if ($line[9] != '') {
405
-	    		    $aircraft_data = explode('/',$line[9]);
405
+	    		    $aircraft_data = explode('/', $line[9]);
406 406
 	    		    if (isset($aircraft_data[1])) {
407 407
 	    			$data['aircraft_icao'] = $aircraft_data[1];
408 408
 	    		    }
@@ -416,9 +416,9 @@  discard block
 block discarded – undo
416 416
     			if ($line[3] == 'PILOT') $SI->add($data);
417 417
 			elseif ($line[3] == 'ATC') {
418 418
 				//print_r($data);
419
-				$data['info'] = str_replace('^&sect;','<br />',$data['info']);
420
-				$data['info'] = str_replace('&amp;sect;','',$data['info']);
421
-				$typec = substr($data['ident'],-3);
419
+				$data['info'] = str_replace('^&sect;', '<br />', $data['info']);
420
+				$data['info'] = str_replace('&amp;sect;', '', $data['info']);
421
+				$typec = substr($data['ident'], -3);
422 422
 				if ($typec == 'APP') $data['type'] = 'Approach';
423 423
 				elseif ($typec == 'TWR') $data['type'] = 'Tower';
424 424
 				elseif ($typec == 'OBS') $data['type'] = 'Observer';
@@ -429,7 +429,7 @@  discard block
 block discarded – undo
429 429
 				elseif ($typec == 'CTR') $data['type'] = 'Control Radar or Centre';
430 430
 				elseif ($data['type'] == '') $data['type'] = 'Observer';
431 431
 				
432
-				echo $ATC->add($data['ident'],$data['frequency'],$data['latitude'],$data['longitude'],$data['range'],$data['info'],$data['datetime'],$data['type'],$data['pilot_id'],$data['pilot_name']);
432
+				echo $ATC->add($data['ident'], $data['frequency'], $data['latitude'], $data['longitude'], $data['range'], $data['info'], $data['datetime'], $data['type'], $data['pilot_id'], $data['pilot_name']);
433 433
 			}
434 434
     			unset($data);
435 435
     		    }
@@ -440,9 +440,9 @@  discard block
 block discarded – undo
440 440
     	    $last_exec[$id]['last'] = time();
441 441
     	//} elseif ($value == 'aircraftlistjson' && (time() - $last_exec['aircraftlistjson'] > $globalMinFetch)) {
442 442
     	} elseif ($value['format'] == 'aircraftlistjson' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
443
-	    $buffer = $Common->getData($value['host'],'get','','','','','20');
443
+	    $buffer = $Common->getData($value['host'], 'get', '', '', '', '', '20');
444 444
 	    if ($buffer != '') {
445
-	    $all_data = json_decode($buffer,true);
445
+	    $all_data = json_decode($buffer, true);
446 446
 	    if (isset($all_data['acList'])) {
447 447
 		foreach ($all_data['acList'] as $line) {
448 448
 		    $data = array();
@@ -496,7 +496,7 @@  discard block
 block discarded – undo
496 496
     	//} elseif ($value == 'planeupdatefaa' && (time() - $last_exec['planeupdatefaa'] > $globalMinFetch)) {
497 497
     	} elseif ($value['format'] == 'planeupdatefaa' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
498 498
 	    $buffer = $Common->getData($value['host']);
499
-	    $all_data = json_decode($buffer,true);
499
+	    $all_data = json_decode($buffer, true);
500 500
 	    if (isset($all_data['planes'])) {
501 501
 		foreach ($all_data['planes'] as $key => $line) {
502 502
 		    $data = array();
@@ -512,12 +512,12 @@  discard block
 block discarded – undo
512 512
 		    $data['emergency'] = ''; // emergency
513 513
 		    $data['registration'] = $line[2];
514 514
 		    $data['aircraft_icao'] = $line[0];
515
-		    $deparr = explode('-',$line[1]);
515
+		    $deparr = explode('-', $line[1]);
516 516
 		    if (count($deparr) == 2) {
517 517
 			$data['departure_airport_icao'] = $deparr[0];
518 518
 			$data['arrival_airport_icao'] = $deparr[1];
519 519
 		    }
520
-		    $data['datetime'] = date('Y-m-d H:i:s',$line[9]);
520
+		    $data['datetime'] = date('Y-m-d H:i:s', $line[9]);
521 521
 	    	    $data['format_source'] = 'planeupdatefaa';
522 522
     		    $data['id_source'] = $id_source;
523 523
 		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
@@ -529,7 +529,7 @@  discard block
 block discarded – undo
529 529
     	    $last_exec[$id]['last'] = time();
530 530
     	} elseif ($value['format'] == 'opensky' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
531 531
 	    $buffer = $Common->getData($value['host']);
532
-	    $all_data = json_decode($buffer,true);
532
+	    $all_data = json_decode($buffer, true);
533 533
 	    if (isset($all_data['states'])) {
534 534
 		foreach ($all_data['states'] as $key => $line) {
535 535
 		    $data = array();
@@ -545,7 +545,7 @@  discard block
 block discarded – undo
545 545
 		    //$data['emergency'] = ''; // emergency
546 546
 		    //$data['registration'] = $line[2];
547 547
 		    //$data['aircraft_icao'] = $line[0];
548
-		    $data['datetime'] = date('Y-m-d H:i:s',$line[3]);
548
+		    $data['datetime'] = date('Y-m-d H:i:s', $line[3]);
549 549
 	    	    $data['format_source'] = 'opensky';
550 550
     		    $data['id_source'] = $id_source;
551 551
 		    $SI->add($data);
@@ -558,7 +558,7 @@  discard block
 block discarded – undo
558 558
     	} elseif ($value['format'] == 'fr24json' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
559 559
 	    //$buffer = $Common->getData($hosts[$id]);
560 560
 	    $buffer = $Common->getData($value['host']);
561
-	    $all_data = json_decode($buffer,true);
561
+	    $all_data = json_decode($buffer, true);
562 562
 	    foreach ($all_data as $key => $line) {
563 563
 		if ($key != 'full_count' && $key != 'version' && $key != 'stats') {
564 564
 		    $data = array();
@@ -589,11 +589,11 @@  discard block
 block discarded – undo
589 589
     	//} elseif ($value == 'radarvirtueljson' && (time() - $last_exec['radarvirtueljson'] > $globalMinFetch)) {
590 590
     	} elseif ($value['format'] == 'radarvirtueljson' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
591 591
 	    //$buffer = $Common->getData($hosts[$id],'get','','','','','150');
592
-	    $buffer = $Common->getData($value['host'],'get','','','','','150');
592
+	    $buffer = $Common->getData($value['host'], 'get', '', '', '', '', '150');
593 593
 	    //echo $buffer;
594
-	    $buffer = str_replace(array("\n","\r"),"",$buffer);
595
-	    $buffer = preg_replace('/,"num":(.+)/','}',$buffer);
596
-	    $all_data = json_decode($buffer,true);
594
+	    $buffer = str_replace(array("\n", "\r"), "", $buffer);
595
+	    $buffer = preg_replace('/,"num":(.+)/', '}', $buffer);
596
+	    $all_data = json_decode($buffer, true);
597 597
 	    if (json_last_error() != JSON_ERROR_NONE) {
598 598
 		die(json_last_error_msg());
599 599
 	    }
@@ -615,7 +615,7 @@  discard block
 block discarded – undo
615 615
 			//$data['departure_airport_iata'] = $line[11];
616 616
 			//$data['arrival_airport_iata'] = $line[12];
617 617
 	    		//$data['emergency'] = ''; // emergency
618
-			$data['datetime'] = date('Y-m-d H:i:s',$line['inf']['dt']); //$line[10]
618
+			$data['datetime'] = date('Y-m-d H:i:s', $line['inf']['dt']); //$line[10]
619 619
 	    		$data['format_source'] = 'radarvirtueljson';
620 620
     			$data['id_source'] = $id_source;
621 621
 			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
@@ -630,13 +630,13 @@  discard block
 block discarded – undo
630 630
     	} elseif ($value['format'] == 'pirepsjson' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
631 631
 	    //$buffer = $Common->getData($hosts[$id]);
632 632
 	    $buffer = $Common->getData($value['host'].'?'.time());
633
-	    $all_data = json_decode(utf8_encode($buffer),true);
633
+	    $all_data = json_decode(utf8_encode($buffer), true);
634 634
 	    
635 635
 	    if (isset($all_data['pireps'])) {
636 636
 	        foreach ($all_data['pireps'] as $line) {
637 637
 		    $data = array();
638 638
 		    $data['id'] = $line['id'];
639
-		    $data['hex'] = substr(str_pad(dechex($line['id']),6,'000000',STR_PAD_LEFT),0,6);
639
+		    $data['hex'] = substr(str_pad(dechex($line['id']), 6, '000000', STR_PAD_LEFT), 0, 6);
640 640
 		    $data['ident'] = $line['callsign']; // ident
641 641
 		    if (isset($line['pilotid'])) $data['pilot_id'] = $line['pilotid']; // pilot id
642 642
 		    if (isset($line['name'])) $data['pilot_name'] = $line['name']; // pilot name
@@ -665,9 +665,9 @@  discard block
 block discarded – undo
665 665
 			$SI->add($data);
666 666
 		    //    print_r($data);
667 667
     		    } elseif ($line['icon'] == 'ct') {
668
-			$data['info'] = str_replace('^&sect;','<br />',$data['info']);
669
-			$data['info'] = str_replace('&amp;sect;','',$data['info']);
670
-			$typec = substr($data['ident'],-3);
668
+			$data['info'] = str_replace('^&sect;', '<br />', $data['info']);
669
+			$data['info'] = str_replace('&amp;sect;', '', $data['info']);
670
+			$typec = substr($data['ident'], -3);
671 671
 			$data['type'] = '';
672 672
 			if ($typec == 'APP') $data['type'] = 'Approach';
673 673
 			elseif ($typec == 'TWR') $data['type'] = 'Tower';
@@ -678,7 +678,7 @@  discard block
 block discarded – undo
678 678
 			elseif ($typec == 'FSS') $data['type'] = 'Flight Service Station';
679 679
 			elseif ($typec == 'CTR') $data['type'] = 'Control Radar or Centre';
680 680
 			else $data['type'] = 'Observer';
681
-			echo $ATC->add($data['ident'],'',$data['latitude'],$data['longitude'],'0',$data['info'],$data['datetime'],$data['type'],$data['pilot_id'],$data['pilot_name']);
681
+			echo $ATC->add($data['ident'], '', $data['latitude'], $data['longitude'], '0', $data['info'], $data['datetime'], $data['type'], $data['pilot_id'], $data['pilot_name']);
682 682
 		    }
683 683
 		    unset($data);
684 684
 		}
@@ -690,13 +690,13 @@  discard block
 block discarded – undo
690 690
 	    //$buffer = $Common->getData($hosts[$id]);
691 691
 	    if ($globalDebug) echo 'Get Data...'."\n";
692 692
 	    $buffer = $Common->getData($value['host']);
693
-	    $all_data = json_decode($buffer,true);
693
+	    $all_data = json_decode($buffer, true);
694 694
 	    if ($buffer != '' && is_array($all_data)) {
695 695
 		foreach ($all_data as $line) {
696 696
 	    	    $data = array();
697 697
 	    	    //$data['id'] = $line['id']; // id not usable
698 698
 	    	    if (isset($line['pilotid'])) $data['id'] = $line['pilotid'].$line['flightnum'];
699
-	    	    $data['hex'] = substr(str_pad(bin2hex($line['flightnum']),6,'000000',STR_PAD_LEFT),-6); // hex
699
+	    	    $data['hex'] = substr(str_pad(bin2hex($line['flightnum']), 6, '000000', STR_PAD_LEFT), -6); // hex
700 700
 	    	    if (isset($line['pilotname'])) $data['pilot_name'] = $line['pilotname'];
701 701
 	    	    if (isset($line['pilotid'])) $data['pilot_id'] = $line['pilotid'];
702 702
 	    	    $data['ident'] = $line['flightnum']; // ident
@@ -719,12 +719,12 @@  discard block
 block discarded – undo
719 719
 		    if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
720 720
 		    if (isset($line['aircraftname'])) {
721 721
 			$line['aircraftname'] = strtoupper($line['aircraftname']);
722
-			$line['aircraftname'] = str_replace('BOEING ','B',$line['aircraftname']);
723
-	    		$aircraft_data = explode('-',$line['aircraftname']);
722
+			$line['aircraftname'] = str_replace('BOEING ', 'B', $line['aircraftname']);
723
+	    		$aircraft_data = explode('-', $line['aircraftname']);
724 724
 	    		if (isset($aircraft_data[1]) && strlen($aircraft_data[0]) < 5) $data['aircraft_icao'] = $aircraft_data[0];
725 725
 	    		elseif (isset($aircraft_data[1]) && strlen($aircraft_data[1]) < 5) $data['aircraft_icao'] = $aircraft_data[1];
726 726
 	    		else {
727
-	    		    $aircraft_data = explode(' ',$line['aircraftname']);
727
+	    		    $aircraft_data = explode(' ', $line['aircraftname']);
728 728
 	    		    if (isset($aircraft_data[1])) $data['aircraft_icao'] = $aircraft_data[1];
729 729
 	    		    else $data['aircraft_icao'] = $line['aircraftname'];
730 730
 	    		}
@@ -746,13 +746,13 @@  discard block
 block discarded – undo
746 746
 	    //$buffer = $Common->getData($hosts[$id]);
747 747
 	    if ($globalDebug) echo 'Get Data...'."\n";
748 748
 	    $buffer = $Common->getData($value['host']);
749
-	    $all_data = json_decode($buffer,true);
749
+	    $all_data = json_decode($buffer, true);
750 750
 	    if ($buffer != '' && is_array($all_data)) {
751 751
 		foreach ($all_data as $line) {
752 752
 	    	    $data = array();
753 753
 	    	    //$data['id'] = $line['id']; // id not usable
754 754
 	    	    $data['id'] = $line['flight_id'];
755
-	    	    $data['hex'] = substr(str_pad(bin2hex($line['callsign']),6,'000000',STR_PAD_LEFT),-6); // hex
755
+	    	    $data['hex'] = substr(str_pad(bin2hex($line['callsign']), 6, '000000', STR_PAD_LEFT), -6); // hex
756 756
 	    	    $data['pilot_name'] = $line['pilot_name'];
757 757
 	    	    $data['pilot_id'] = $line['pilot_id'];
758 758
 	    	    $data['ident'] = $line['callsign']; // ident
@@ -802,9 +802,9 @@  discard block
 block discarded – undo
802 802
 		    //$value = $formats[$nb];
803 803
 		    $format = $globalSources[$nb]['format'];
804 804
         	    if ($format == 'sbs' || $format == 'aprs' || $format == 'raw' || $format == 'tsv') {
805
-        		$buffer = socket_read($r, 6000,PHP_NORMAL_READ);
805
+        		$buffer = socket_read($r, 6000, PHP_NORMAL_READ);
806 806
         	    } else {
807
-	    	        $az = socket_recvfrom($r,$buffer,6000,0,$remote_ip,$remote_port);
807
+	    	        $az = socket_recvfrom($r, $buffer, 6000, 0, $remote_ip, $remote_port);
808 808
 	    	    }
809 809
         	    //$buffer = socket_read($r, 60000,PHP_NORMAL_READ);
810 810
         	    //echo $buffer."\n";
@@ -812,7 +812,7 @@  discard block
 block discarded – undo
812 812
 		    //if (function_exists('pcntl_fork')) pcntl_signal_dispatch();
813 813
 		    $error = false;
814 814
 		    //$SI::del();
815
-		    $buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'',$buffer));
815
+		    $buffer = trim(str_replace(array("\r\n", "\r", "\n", "\\r", "\\n", "\\r\\n"), '', $buffer));
816 816
 		    // SBS format is CSV format
817 817
 		    if ($buffer != '') {
818 818
 			$tt[$format] = 0;
@@ -831,10 +831,10 @@  discard block
 block discarded – undo
831 831
                         } elseif ($format == 'flightgearsp') {
832 832
                     	    //echo $buffer."\n";
833 833
                     	    if (strlen($buffer) > 5) {
834
-				$line = explode(',',$buffer);
834
+				$line = explode(',', $buffer);
835 835
 				$data = array();
836 836
 				//XGPS,2.0947,41.3093,-3047.6953,198.930,0.000,callsign,c172p
837
-				$data['hex'] = substr(str_pad(bin2hex($line[6].$line[7]),6,'000000',STR_PAD_LEFT),0,6);
837
+				$data['hex'] = substr(str_pad(bin2hex($line[6].$line[7]), 6, '000000', STR_PAD_LEFT), 0, 6);
838 838
 				$data['ident'] = $line[6];
839 839
 				$data['aircraft_name'] = $line[7];
840 840
 				$data['longitude'] = $line[1];
@@ -845,21 +845,21 @@  discard block
 block discarded – undo
845 845
 				$data['datetime'] = date('Y-m-d H:i:s');
846 846
 				$data['format_source'] = 'flightgearsp';
847 847
 				if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
848
-				$send = @ socket_send( $r  , $data_aprs , strlen($data_aprs) , 0 );
848
+				$send = @ socket_send($r, $data_aprs, strlen($data_aprs), 0);
849 849
 			    }
850 850
                         } elseif ($format == 'acars') {
851 851
                     	    if ($globalDebug) echo 'ACARS : '.$buffer."\n";
852 852
 			    $ACARS->add(trim($buffer));
853
-			    socket_sendto($r, "OK " . $buffer , 100 , 0 , $remote_ip , $remote_port);
853
+			    socket_sendto($r, "OK ".$buffer, 100, 0, $remote_ip, $remote_port);
854 854
 			    $ACARS->deleteLiveAcarsData();
855 855
 			} elseif ($format == 'flightgearmp') {
856
-			    if (substr($buffer,0,1) != '#') {
856
+			    if (substr($buffer, 0, 1) != '#') {
857 857
 				$data = array();
858 858
 				//echo $buffer."\n";
859
-				$line = explode(' ',$buffer);
859
+				$line = explode(' ', $buffer);
860 860
 				if (count($line) == 11) {
861
-				    $userserver = explode('@',$line[0]);
862
-				    $data['hex'] = substr(str_pad(bin2hex($line[0]),6,'000000',STR_PAD_LEFT),0,6); // hex
861
+				    $userserver = explode('@', $line[0]);
862
+				    $data['hex'] = substr(str_pad(bin2hex($line[0]), 6, '000000', STR_PAD_LEFT), 0, 6); // hex
863 863
 				    $data['ident'] = $userserver[0];
864 864
 				    $data['registration'] = $userserver[0];
865 865
 				    $data['latitude'] = $line[4];
@@ -867,24 +867,24 @@  discard block
 block discarded – undo
867 867
 				    $data['altitude'] = $line[6];
868 868
 				    $data['datetime'] = date('Y-m-d H:i:s');
869 869
 				    $aircraft_type = $line[10];
870
-				    $aircraft_type = preg_split(':/:',$aircraft_type);
871
-				    $data['aircraft_name'] = substr(end($aircraft_type),0,-4);
870
+				    $aircraft_type = preg_split(':/:', $aircraft_type);
871
+				    $data['aircraft_name'] = substr(end($aircraft_type), 0, -4);
872 872
 				    if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
873 873
 				}
874 874
 			    }
875 875
 			} elseif ($format == 'beast') {
876 876
 			    echo 'Beast Binary format not yet supported. Beast AVR format is supported in alpha state'."\n";
877 877
 			    die;
878
-			} elseif ($format == 'tsv' || substr($buffer,0,4) == 'clock') {
878
+			} elseif ($format == 'tsv' || substr($buffer, 0, 4) == 'clock') {
879 879
 			    $line = explode("\t", $buffer);
880
-			    for($k = 0; $k < count($line); $k=$k+2) {
880
+			    for ($k = 0; $k < count($line); $k = $k + 2) {
881 881
 				$key = $line[$k];
882
-			        $lined[$key] = $line[$k+1];
882
+			        $lined[$key] = $line[$k + 1];
883 883
 			    }
884 884
     			    if (count($lined) > 3) {
885 885
     				$data['hex'] = $lined['hexid'];
886 886
     				//$data['datetime'] = date('Y-m-d H:i:s',strtotime($lined['clock']));;
887
-    				$data['datetime'] = date('Y-m-d H:i:s');;
887
+    				$data['datetime'] = date('Y-m-d H:i:s'); ;
888 888
     				if (isset($lined['ident'])) $data['ident'] = $lined['ident'];
889 889
     				if (isset($lined['lat'])) $data['latitude'] = $lined['lat'];
890 890
     				if (isset($lined['lon'])) $data['longitude'] = $lined['lon'];
@@ -902,24 +902,24 @@  discard block
 block discarded – undo
902 902
     			    } else $error = true;
903 903
 			} elseif ($format == 'aprs' && $use_aprs) {
904 904
 			    if ($aprs_connect == 0) {
905
-				$send = @ socket_send( $r  , $aprs_login , strlen($aprs_login) , 0 );
905
+				$send = @ socket_send($r, $aprs_login, strlen($aprs_login), 0);
906 906
 				$aprs_connect = 1;
907 907
 			    }
908
-			    if ( $aprs_keep>60 && time() - $aprs_last_tx > $aprs_keep ) {
908
+			    if ($aprs_keep > 60 && time() - $aprs_last_tx > $aprs_keep) {
909 909
 				$aprs_last_tx = time();
910 910
 				$data_aprs = "# Keep alive";
911
-				$send = @ socket_send( $r  , $data_aprs , strlen($data_aprs) , 0 );
911
+				$send = @ socket_send($r, $data_aprs, strlen($data_aprs), 0);
912 912
 			    }
913 913
 			    //echo 'Connect : '.$aprs_connect.' '.$buffer."\n";
914
-			    $buffer = str_replace('APRS <- ','',$buffer);
915
-			    $buffer = str_replace('APRS -> ','',$buffer);
916
-			    if (substr($buffer,0,1) != '#' && substr($buffer,0,1) != '@' && substr($buffer,0,5) != 'APRS ') {
914
+			    $buffer = str_replace('APRS <- ', '', $buffer);
915
+			    $buffer = str_replace('APRS -> ', '', $buffer);
916
+			    if (substr($buffer, 0, 1) != '#' && substr($buffer, 0, 1) != '@' && substr($buffer, 0, 5) != 'APRS ') {
917 917
 				$line = $APRS->parse($buffer);
918 918
 				if (is_array($line) && isset($line['address']) && $line['address'] != '' && isset($line['ident'])) {
919 919
 				    $data = array();
920 920
 				    //print_r($line);
921 921
 				    $data['hex'] = $line['address'];
922
-				    $data['datetime'] = date('Y-m-d H:i:s',$line['timestamp']);
922
+				    $data['datetime'] = date('Y-m-d H:i:s', $line['timestamp']);
923 923
 				    //$data['datetime'] = date('Y-m-d H:i:s');
924 924
 				    $data['ident'] = $line['ident'];
925 925
 				    $data['latitude'] = $line['latitude'];
@@ -939,7 +939,7 @@  discard block
 block discarded – undo
939 939
 				    $currentdate = date('Y-m-d H:i:s');
940 940
 				    $aprsdate = strtotime($data['datetime']);
941 941
 				    // Accept data if time <= system time + 20s
942
-				    if ($line['stealth'] == 0 && (strtotime($data['datetime']) <= strtotime($currentdate)+20) && (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude'])))) $send = $SI->add($data);
942
+				    if ($line['stealth'] == 0 && (strtotime($data['datetime']) <= strtotime($currentdate) + 20) && (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude'])))) $send = $SI->add($data);
943 943
 				    else {
944 944
 					if ($line['stealth'] != 0) echo '-------- '.$data['ident'].' : APRS stealth ON => not adding'."\n";
945 945
 					else echo '--------- '.$data['ident'].' : Date APRS : '.$data['datetime'].' - Current date : '.$currentdate.' => not adding future event'."\n";
@@ -1024,7 +1024,7 @@  discard block
 block discarded – undo
1024 1024
 				connect_all($sourceee);
1025 1025
 				$sourceee = array();
1026 1026
 				//connect_all($globalSources);
1027
-				$tt[$format]=0;
1027
+				$tt[$format] = 0;
1028 1028
 				break;
1029 1029
 			    }
1030 1030
 			}
@@ -1032,7 +1032,7 @@  discard block
 block discarded – undo
1032 1032
 		}
1033 1033
 	    } else {
1034 1034
 		$error = socket_strerror(socket_last_error());
1035
-		if ($globalDebug) echo "ERROR : socket_select give this error ".$error . "\n";
1035
+		if ($globalDebug) echo "ERROR : socket_select give this error ".$error."\n";
1036 1036
 		if (($error != SOCKET_EINPROGRESS && $error != SOCKET_EALREADY) || time() - $time >= $timeout) {
1037 1037
 			if (isset($globalDebug)) echo "Restarting...\n";
1038 1038
 			// Restart the script if possible
@@ -1040,7 +1040,7 @@  discard block
 block discarded – undo
1040 1040
 			    if ($globalDebug) echo "Shutdown all sockets...";
1041 1041
 			    
1042 1042
 			    foreach ($sockets as $sock) {
1043
-				@socket_shutdown($sock,2);
1043
+				@socket_shutdown($sock, 2);
1044 1044
 				@socket_close($sock);
1045 1045
 			    }
1046 1046
 			    
Please login to merge, or discard this patch.
Braces   +509 added lines, -176 removed lines patch added patch discarded remove patch
@@ -14,7 +14,9 @@  discard block
 block discarded – undo
14 14
 require_once(dirname(__FILE__).'/../require/class.Connection.php');
15 15
 require_once(dirname(__FILE__).'/../require/class.Common.php');
16 16
 
17
-if (!isset($globalDebug)) $globalDebug = FALSE;
17
+if (!isset($globalDebug)) {
18
+	$globalDebug = FALSE;
19
+}
18 20
 
19 21
 // Check if schema is at latest version
20 22
 $Connection = new Connection();
@@ -51,13 +53,22 @@  discard block
 block discarded – undo
51 53
     $globalSources = array();
52 54
     $globalSources[] = array('host' => $options['source']);
53 55
 }
54
-if (isset($options['server'])) $globalServer = TRUE;
55
-if (isset($options['idsource'])) $id_source = $options['idsource'];
56
-else $id_source = 1;
56
+if (isset($options['server'])) {
57
+	$globalServer = TRUE;
58
+}
59
+if (isset($options['idsource'])) {
60
+	$id_source = $options['idsource'];
61
+} else {
62
+	$id_source = 1;
63
+}
57 64
 if (isset($globalServer) && $globalServer) {
58
-    if ($globalDebug) echo "Using Server Mode\n";
65
+    if ($globalDebug) {
66
+    	echo "Using Server Mode\n";
67
+    }
59 68
     $SI=new SpotterServer();
60
-} else $SI=new SpotterImport($Connection->db);
69
+} else {
70
+	$SI=new SpotterImport($Connection->db);
71
+}
61 72
 //$APRS=new APRS($Connection->db);
62 73
 $SBS=new SBS();
63 74
 $ACARS=new ACARS($Connection->db);
@@ -75,7 +86,9 @@  discard block
 block discarded – undo
75 86
 }
76 87
 
77 88
 // let's try and connect
78
-if ($globalDebug) echo "Connecting...\n";
89
+if ($globalDebug) {
90
+	echo "Connecting...\n";
91
+}
79 92
 $use_aprs = false;
80 93
 $aprs_full = false;
81 94
 
@@ -83,7 +96,9 @@  discard block
 block discarded – undo
83 96
     $ip = gethostbyname($host);
84 97
     $s = socket_create(AF_INET, SOCK_STREAM, 0);
85 98
     $r = @socket_connect($s, $ip, $port);
86
-    if (!socket_set_nonblock($s)) echo "Unable to set nonblock on socket\n";
99
+    if (!socket_set_nonblock($s)) {
100
+    	echo "Unable to set nonblock on socket\n";
101
+    }
87 102
     if ($r || socket_last_error() == 114 || socket_last_error() == 115) {
88 103
         return $s;
89 104
     }
@@ -110,7 +125,9 @@  discard block
 block discarded – undo
110 125
 function connect_all($hosts) {
111 126
     //global $sockets, $formats, $globalDebug,$aprs_connect,$last_exec, $globalSourcesRights, $use_aprs;
112 127
     global $sockets, $globalSources, $globalDebug,$aprs_connect,$last_exec, $globalSourcesRights, $use_aprs;
113
-    if ($globalDebug) echo 'Connect to all...'."\n";
128
+    if ($globalDebug) {
129
+    	echo 'Connect to all...'."\n";
130
+    }
114 131
     foreach ($hosts as $id => $value) {
115 132
 	$host = $value['host'];
116 133
 	$globalSources[$id]['last_exec'] = 0;
@@ -120,27 +137,37 @@  discard block
 block discarded – undo
120 137
         	//$formats[$id] = 'deltadbtxt';
121 138
         	$globalSources[$id]['format'] = 'deltadbtxt';
122 139
         	//$last_exec['deltadbtxt'] = 0;
123
-        	if ($globalDebug) echo "Connect to deltadb source (".$host.")...\n";
140
+        	if ($globalDebug) {
141
+        		echo "Connect to deltadb source (".$host.")...\n";
142
+        	}
124 143
             } else if (preg_match('/vatsim-data.txt$/i',$host)) {
125 144
         	//$formats[$id] = 'vatsimtxt';
126 145
         	$globalSources[$id]['format'] = 'vatsimtxt';
127 146
         	//$last_exec['vatsimtxt'] = 0;
128
-        	if ($globalDebug) echo "Connect to vatsim source (".$host.")...\n";
147
+        	if ($globalDebug) {
148
+        		echo "Connect to vatsim source (".$host.")...\n";
149
+        	}
129 150
     	    } else if (preg_match('/aircraftlist.json$/i',$host)) {
130 151
         	//$formats[$id] = 'aircraftlistjson';
131 152
         	$globalSources[$id]['format'] = 'aircraftlistjson';
132 153
         	//$last_exec['aircraftlistjson'] = 0;
133
-        	if ($globalDebug) echo "Connect to aircraftlist.json source (".$host.")...\n";
154
+        	if ($globalDebug) {
155
+        		echo "Connect to aircraftlist.json source (".$host.")...\n";
156
+        	}
134 157
     	    } else if (preg_match('/opensky/i',$host)) {
135 158
         	//$formats[$id] = 'aircraftlistjson';
136 159
         	$globalSources[$id]['format'] = 'opensky';
137 160
         	//$last_exec['aircraftlistjson'] = 0;
138
-        	if ($globalDebug) echo "Connect to opensky source (".$host.")...\n";
161
+        	if ($globalDebug) {
162
+        		echo "Connect to opensky source (".$host.")...\n";
163
+        	}
139 164
     	    } else if (preg_match('/radarvirtuel.com\/file.json$/i',$host)) {
140 165
         	//$formats[$id] = 'radarvirtueljson';
141 166
         	$globalSources[$id]['format'] = 'radarvirtueljson';
142 167
         	//$last_exec['radarvirtueljson'] = 0;
143
-        	if ($globalDebug) echo "Connect to radarvirtuel.com/file.json source (".$host.")...\n";
168
+        	if ($globalDebug) {
169
+        		echo "Connect to radarvirtuel.com/file.json source (".$host.")...\n";
170
+        	}
144 171
         	if (!isset($globalSourcesRights) || (isset($globalSourcesRights) && !$globalSourcesRights)) {
145 172
         	    echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
146 173
         	    exit(0);
@@ -149,7 +176,9 @@  discard block
 block discarded – undo
149 176
         	//$formats[$id] = 'planeupdatefaa';
150 177
         	$globalSources[$id]['format'] = 'planeupdatefaa';
151 178
         	//$last_exec['planeupdatefaa'] = 0;
152
-        	if ($globalDebug) echo "Connect to planeUpdateFAA.php source (".$host.")...\n";
179
+        	if ($globalDebug) {
180
+        		echo "Connect to planeUpdateFAA.php source (".$host.")...\n";
181
+        	}
153 182
         	if (!isset($globalSourcesRights) || (isset($globalSourcesRights) && !$globalSourcesRights)) {
154 183
         	    echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
155 184
         	    exit(0);
@@ -158,26 +187,36 @@  discard block
 block discarded – undo
158 187
         	//$formats[$id] = 'phpvmacars';
159 188
         	$globalSources[$id]['format'] = 'phpvmacars';
160 189
         	//$last_exec['phpvmacars'] = 0;
161
-        	if ($globalDebug) echo "Connect to phpvmacars source (".$host.")...\n";
190
+        	if ($globalDebug) {
191
+        		echo "Connect to phpvmacars source (".$host.")...\n";
192
+        	}
162 193
             } else if (preg_match('/VAM-json.php$/i',$host)) {
163 194
         	//$formats[$id] = 'phpvmacars';
164 195
         	$globalSources[$id]['format'] = 'vam';
165
-        	if ($globalDebug) echo "Connect to Vam source (".$host.")...\n";
196
+        	if ($globalDebug) {
197
+        		echo "Connect to Vam source (".$host.")...\n";
198
+        	}
166 199
             } else if (preg_match('/whazzup/i',$host)) {
167 200
         	//$formats[$id] = 'whazzup';
168 201
         	$globalSources[$id]['format'] = 'whazzup';
169 202
         	//$last_exec['whazzup'] = 0;
170
-        	if ($globalDebug) echo "Connect to whazzup source (".$host.")...\n";
203
+        	if ($globalDebug) {
204
+        		echo "Connect to whazzup source (".$host.")...\n";
205
+        	}
171 206
             } else if (preg_match('/recentpireps/i',$host)) {
172 207
         	//$formats[$id] = 'pirepsjson';
173 208
         	$globalSources[$id]['format'] = 'pirepsjson';
174 209
         	//$last_exec['pirepsjson'] = 0;
175
-        	if ($globalDebug) echo "Connect to pirepsjson source (".$host.")...\n";
210
+        	if ($globalDebug) {
211
+        		echo "Connect to pirepsjson source (".$host.")...\n";
212
+        	}
176 213
             } else if (preg_match(':data.fr24.com/zones/fcgi/feed.js:i',$host)) {
177 214
         	//$formats[$id] = 'fr24json';
178 215
         	$globalSources[$id]['format'] = 'fr24json';
179 216
         	//$last_exec['fr24json'] = 0;
180
-        	if ($globalDebug) echo "Connect to fr24 source (".$host.")...\n";
217
+        	if ($globalDebug) {
218
+        		echo "Connect to fr24 source (".$host.")...\n";
219
+        	}
181 220
         	if (!isset($globalSourcesRights) || (isset($globalSourcesRights) && !$globalSourcesRights)) {
182 221
         	    echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
183 222
         	    exit(0);
@@ -186,10 +225,14 @@  discard block
 block discarded – undo
186 225
             } else if (preg_match('/10001/',$host) || (isset($globalSources[$id]['port']) && $globalSources[$id]['port'] == '10001')) {
187 226
         	//$formats[$id] = 'tsv';
188 227
         	$globalSources[$id]['format'] = 'tsv';
189
-        	if ($globalDebug) echo "Connect to tsv source (".$host.")...\n";
228
+        	if ($globalDebug) {
229
+        		echo "Connect to tsv source (".$host.")...\n";
230
+        	}
190 231
             }
191 232
         } elseif (filter_var($host,FILTER_VALIDATE_URL)) {
192
-        	if ($globalDebug) echo "Connect to ".$globalSources[$id]['format']." source (".$host.")...\n";
233
+        	if ($globalDebug) {
234
+        		echo "Connect to ".$globalSources[$id]['format']." source (".$host.")...\n";
235
+        	}
193 236
         } elseif (!filter_var($host,FILTER_VALIDATE_URL)) {
194 237
 	    $hostport = explode(':',$host);
195 238
 	    if (isset($hostport[1])) {
@@ -226,17 +269,25 @@  discard block
 block discarded – undo
226 269
         		//$formats[$id] = 'beast';
227 270
         		$globalSources[$id]['format'] = 'beast';
228 271
 		    //} else $formats[$id] = 'sbs';
229
-		    } else $globalSources[$id]['format'] = 'sbs';
272
+		    } else {
273
+		    	$globalSources[$id]['format'] = 'sbs';
274
+		    }
230 275
 		    //if ($globalDebug) echo 'Connection in progress to '.$host.'('.$formats[$id].')....'."\n";
231 276
 		}
232
-		if ($globalDebug) echo 'Connection in progress to '.$hostn.':'.$port.' ('.$globalSources[$id]['format'].')....'."\n";
277
+		if ($globalDebug) {
278
+			echo 'Connection in progress to '.$hostn.':'.$port.' ('.$globalSources[$id]['format'].')....'."\n";
279
+		}
233 280
             } else {
234
-		if ($globalDebug) echo 'Connection failed to '.$hostn.':'.$port.' : '.$errno.' '.$errstr."\n";
281
+		if ($globalDebug) {
282
+			echo 'Connection failed to '.$hostn.':'.$port.' : '.$errno.' '.$errstr."\n";
283
+		}
235 284
     	    }
236 285
         }
237 286
     }
238 287
 }
239
-if (!isset($globalMinFetch)) $globalMinFetch = 15;
288
+if (!isset($globalMinFetch)) {
289
+	$globalMinFetch = 15;
290
+}
240 291
 
241 292
 // Initialize all
242 293
 $status = array();
@@ -244,13 +295,19 @@  discard block
 block discarded – undo
244 295
 $formats = array();
245 296
 $last_exec = array();
246 297
 $time = time();
247
-if (isset($globalSourcesTimeout)) $timeout = $globalSourcesTimeOut;
248
-else if (isset($globalSBS1TimeOut)) $timeout = $globalSBS1TimeOut;
249
-else $timeout = 20;
298
+if (isset($globalSourcesTimeout)) {
299
+	$timeout = $globalSourcesTimeOut;
300
+} else if (isset($globalSBS1TimeOut)) {
301
+	$timeout = $globalSBS1TimeOut;
302
+} else {
303
+	$timeout = 20;
304
+}
250 305
 $errno = '';
251 306
 $errstr='';
252 307
 
253
-if (!isset($globalDaemon)) $globalDaemon = TRUE;
308
+if (!isset($globalDaemon)) {
309
+	$globalDaemon = TRUE;
310
+}
254 311
 /* Initiate connections to all the hosts simultaneously */
255 312
 //connect_all($hosts);
256 313
 //connect_all($globalSources);
@@ -270,7 +327,9 @@  discard block
 block discarded – undo
270 327
     if (isset($source['format']) && $source['format'] == 'aprs') {
271 328
 	$aprs_connect = 0;
272 329
 	$use_aprs = true;
273
-	if (isset($source['port']) && $source['port'] == '10152') $aprs_full = true;
330
+	if (isset($source['port']) && $source['port'] == '10152') {
331
+		$aprs_full = true;
332
+	}
274 333
 	break;
275 334
     }
276 335
 }
@@ -281,24 +340,44 @@  discard block
 block discarded – undo
281 340
 	$aprs_connect = 0;
282 341
 	$aprs_keep = 120;
283 342
 	$aprs_last_tx = time();
284
-	if (isset($globalAPRSversion)) $aprs_version = $globalAPRSversion;
285
-	else $aprs_version = $globalName.' using FlightAirMap';
343
+	if (isset($globalAPRSversion)) {
344
+		$aprs_version = $globalAPRSversion;
345
+	} else {
346
+		$aprs_version = $globalName.' using FlightAirMap';
347
+	}
286 348
 	//else $aprs_version = 'Perl Example App';
287
-	if (isset($globalAPRSssid)) $aprs_ssid = $globalAPRSssid;
288
-	else $aprs_ssid = 'FAM';
349
+	if (isset($globalAPRSssid)) {
350
+		$aprs_ssid = $globalAPRSssid;
351
+	} else {
352
+		$aprs_ssid = 'FAM';
353
+	}
289 354
 	//else $aprs_ssid = 'PerlEx';
290
-	if (isset($globalAPRSfilter)) $aprs_filter = $globalAPRSfilter;
291
-	else $aprs_filter =  'r/'.$globalCenterLatitude.'/'.$globalCenterLongitude.'/250.0';
292
-	if ($aprs_full) $aprs_filter = '';
293
-	if ($aprs_filter != '') $aprs_login = "user {$aprs_ssid} appid {$aprs_version} filter {$aprs_filter}\n";
294
-	else $aprs_login = "user {$aprs_ssid} appid {$aprs_version}\n";
295
-}
355
+	if (isset($globalAPRSfilter)) {
356
+		$aprs_filter = $globalAPRSfilter;
357
+	} else {
358
+		$aprs_filter =  'r/'.$globalCenterLatitude.'/'.$globalCenterLongitude.'/250.0';
359
+	}
360
+	if ($aprs_full) {
361
+		$aprs_filter = '';
362
+	}
363
+	if ($aprs_filter != '') {
364
+		$aprs_login = "user {$aprs_ssid} appid {$aprs_version} filter {$aprs_filter}\n";
365
+	} else {
366
+		$aprs_login = "user {$aprs_ssid} appid {$aprs_version}\n";
367
+	}
368
+	}
296 369
 
297 370
 // connected - lets do some work
298
-if ($globalDebug) echo "Connected!\n";
371
+if ($globalDebug) {
372
+	echo "Connected!\n";
373
+}
299 374
 sleep(1);
300
-if ($globalDebug) echo "SCAN MODE \n\n";
301
-if (!isset($globalCronEnd)) $globalCronEnd = 60;
375
+if ($globalDebug) {
376
+	echo "SCAN MODE \n\n";
377
+}
378
+if (!isset($globalCronEnd)) {
379
+	$globalCronEnd = 60;
380
+}
302 381
 $endtime = time()+$globalCronEnd;
303 382
 $i = 1;
304 383
 $tt = array();
@@ -312,20 +391,28 @@  discard block
 block discarded – undo
312 391
 
313 392
 // Infinite loop if daemon, else work for time defined in $globalCronEnd or only one time.
314 393
 while ($i > 0) {
315
-    if (!$globalDaemon) $i = $endtime-time();
394
+    if (!$globalDaemon) {
395
+    	$i = $endtime-time();
396
+    }
316 397
     // Delete old ATC
317 398
     if ($globalDaemon && ((isset($globalIVAO) && $globalIVAO) || (isset($globalVATSIM) && $globalVATSIM))) {
318
-	if ($globalDebug) echo 'Delete old ATC...'."\n";
399
+	if ($globalDebug) {
400
+		echo 'Delete old ATC...'."\n";
401
+	}
319 402
         $ATC->deleteOldATC();
320 403
     }
321 404
     
322 405
     if (count($last_exec) > 0) {
323 406
 	$max = $globalMinFetch;
324 407
 	foreach ($last_exec as $last) {
325
-	    if ((time() - $last['last']) < $max) $max = time() - $last['last'];
408
+	    if ((time() - $last['last']) < $max) {
409
+	    	$max = time() - $last['last'];
410
+	    }
326 411
 	}
327 412
 	if ($max != $globalMinFetch) {
328
-	    if ($globalDebug) echo 'Sleeping...'."\n";
413
+	    if ($globalDebug) {
414
+	    	echo 'Sleeping...'."\n";
415
+	    }
329 416
 	    sleep($globalMinFetch-$max+2);
330 417
 	}
331 418
     }
@@ -333,7 +420,9 @@  discard block
 block discarded – undo
333 420
     
334 421
     //foreach ($formats as $id => $value) {
335 422
     foreach ($globalSources as $id => $value) {
336
-	if (!isset($last_exec[$id]['last'])) $last_exec[$id]['last'] = 0;
423
+	if (!isset($last_exec[$id]['last'])) {
424
+		$last_exec[$id]['last'] = 0;
425
+	}
337 426
 	if ($value['format'] == 'deltadbtxt' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
338 427
 	    //$buffer = $Common->getData($hosts[$id]);
339 428
 	    $buffer = $Common->getData($value['host']);
@@ -356,8 +445,12 @@  discard block
 block discarded – undo
356 445
 		    $data['datetime'] = date('Y-m-d H:i:s');
357 446
 		    $data['format_source'] = 'deltadbtxt';
358 447
     		    $data['id_source'] = $id_source;
359
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
360
-		    if (isset($value['sourcestats'])) $data['sourcestats'] = $value['sourcestats'];
448
+		    if (isset($value['name']) && $value['name'] != '') {
449
+		    	$data['source_name'] = $value['name'];
450
+		    }
451
+		    if (isset($value['sourcestats'])) {
452
+		    	$data['sourcestats'] = $value['sourcestats'];
453
+		    }
361 454
     		    $SI->add($data);
362 455
 		    unset($data);
363 456
     		}
@@ -379,10 +472,19 @@  discard block
 block discarded – undo
379 472
 			$data['pilot_name'] = $line[2];
380 473
 			$data['hex'] = str_pad(dechex($line[1]),6,'000000',STR_PAD_LEFT);
381 474
 			$data['ident'] = $line[0]; // ident
382
-			if ($line[7] != '' && $line[7] != 0) $data['altitude'] = $line[7]; // altitude
475
+			if ($line[7] != '' && $line[7] != 0) {
476
+				$data['altitude'] = $line[7];
477
+			}
478
+			// altitude
383 479
 			$data['speed'] = $line[8]; // speed
384
-			if (isset($line[45])) $data['heading'] = $line[45]; // heading
385
-			elseif (isset($line[38])) $data['heading'] = $line[38]; // heading
480
+			if (isset($line[45])) {
481
+				$data['heading'] = $line[45];
482
+			}
483
+			// heading
484
+			elseif (isset($line[38])) {
485
+				$data['heading'] = $line[38];
486
+			}
487
+			// heading
386 488
 			$data['latitude'] = $line[5]; // lat
387 489
 	        	$data['longitude'] = $line[6]; // long
388 490
 	        	$data['verticalrate'] = ''; // vertical rate
@@ -391,14 +493,18 @@  discard block
 block discarded – undo
391 493
 	        	$data['waypoints'] = $line[30];
392 494
 			$data['datetime'] = date('Y-m-d H:i:s');
393 495
 			//$data['datetime'] = date('Y-m-d H:i:s',strtotime($line[37]));
394
-			if (isset($line[37])) $data['last_update'] = $line[37];
496
+			if (isset($line[37])) {
497
+				$data['last_update'] = $line[37];
498
+			}
395 499
 		        $data['departure_airport_icao'] = $line[11];
396 500
 		        $data['departure_airport_time'] = rtrim(chunk_split($line[22],2,':'),':');
397 501
 		        $data['arrival_airport_icao'] = $line[13];
398 502
 			$data['frequency'] = $line[4];
399 503
 			$data['type'] = $line[18];
400 504
 			$data['range'] = $line[19];
401
-			if (isset($line[35])) $data['info'] = $line[35];
505
+			if (isset($line[35])) {
506
+				$data['info'] = $line[35];
507
+			}
402 508
     			$data['id_source'] = $id_source;
403 509
 	    		//$data['arrival_airport_time'] = ;
404 510
 	    		if ($line[9] != '') {
@@ -412,22 +518,35 @@  discard block
 block discarded – undo
412 518
 	    		elseif ($value == 'vatsimtxt') $data['format_source'] = 'vatsimtxt';
413 519
 	    		*/
414 520
 	    		$data['format_source'] = $value['format'];
415
-			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
416
-    			if ($line[3] == 'PILOT') $SI->add($data);
417
-			elseif ($line[3] == 'ATC') {
521
+			if (isset($value['name']) && $value['name'] != '') {
522
+				$data['source_name'] = $value['name'];
523
+			}
524
+    			if ($line[3] == 'PILOT') {
525
+    				$SI->add($data);
526
+    			} elseif ($line[3] == 'ATC') {
418 527
 				//print_r($data);
419 528
 				$data['info'] = str_replace('^&sect;','<br />',$data['info']);
420 529
 				$data['info'] = str_replace('&amp;sect;','',$data['info']);
421 530
 				$typec = substr($data['ident'],-3);
422
-				if ($typec == 'APP') $data['type'] = 'Approach';
423
-				elseif ($typec == 'TWR') $data['type'] = 'Tower';
424
-				elseif ($typec == 'OBS') $data['type'] = 'Observer';
425
-				elseif ($typec == 'GND') $data['type'] = 'Ground';
426
-				elseif ($typec == 'DEL') $data['type'] = 'Delivery';
427
-				elseif ($typec == 'DEP') $data['type'] = 'Departure';
428
-				elseif ($typec == 'FSS') $data['type'] = 'Flight Service Station';
429
-				elseif ($typec == 'CTR') $data['type'] = 'Control Radar or Centre';
430
-				elseif ($data['type'] == '') $data['type'] = 'Observer';
531
+				if ($typec == 'APP') {
532
+					$data['type'] = 'Approach';
533
+				} elseif ($typec == 'TWR') {
534
+					$data['type'] = 'Tower';
535
+				} elseif ($typec == 'OBS') {
536
+					$data['type'] = 'Observer';
537
+				} elseif ($typec == 'GND') {
538
+					$data['type'] = 'Ground';
539
+				} elseif ($typec == 'DEL') {
540
+					$data['type'] = 'Delivery';
541
+				} elseif ($typec == 'DEP') {
542
+					$data['type'] = 'Departure';
543
+				} elseif ($typec == 'FSS') {
544
+					$data['type'] = 'Flight Service Station';
545
+				} elseif ($typec == 'CTR') {
546
+					$data['type'] = 'Control Radar or Centre';
547
+				} elseif ($data['type'] == '') {
548
+					$data['type'] = 'Observer';
549
+				}
431 550
 				
432 551
 				echo $ATC->add($data['ident'],$data['frequency'],$data['latitude'],$data['longitude'],$data['range'],$data['info'],$data['datetime'],$data['type'],$data['pilot_id'],$data['pilot_name']);
433 552
 			}
@@ -447,26 +566,55 @@  discard block
 block discarded – undo
447 566
 		foreach ($all_data['acList'] as $line) {
448 567
 		    $data = array();
449 568
 		    $data['hex'] = $line['Icao']; // hex
450
-		    if (isset($line['Call'])) $data['ident'] = $line['Call']; // ident
451
-		    if (isset($line['Alt'])) $data['altitude'] = $line['Alt']; // altitude
452
-		    if (isset($line['Spd'])) $data['speed'] = $line['Spd']; // speed
453
-		    if (isset($line['Trak'])) $data['heading'] = $line['Trak']; // heading
454
-		    if (isset($line['Lat'])) $data['latitude'] = $line['Lat']; // lat
455
-		    if (isset($line['Long'])) $data['longitude'] = $line['Long']; // long
569
+		    if (isset($line['Call'])) {
570
+		    	$data['ident'] = $line['Call'];
571
+		    }
572
+		    // ident
573
+		    if (isset($line['Alt'])) {
574
+		    	$data['altitude'] = $line['Alt'];
575
+		    }
576
+		    // altitude
577
+		    if (isset($line['Spd'])) {
578
+		    	$data['speed'] = $line['Spd'];
579
+		    }
580
+		    // speed
581
+		    if (isset($line['Trak'])) {
582
+		    	$data['heading'] = $line['Trak'];
583
+		    }
584
+		    // heading
585
+		    if (isset($line['Lat'])) {
586
+		    	$data['latitude'] = $line['Lat'];
587
+		    }
588
+		    // lat
589
+		    if (isset($line['Long'])) {
590
+		    	$data['longitude'] = $line['Long'];
591
+		    }
592
+		    // long
456 593
 		    //$data['verticalrate'] = $line['']; // verticale rate
457
-		    if (isset($line['Sqk'])) $data['squawk'] = $line['Sqk']; // squawk
594
+		    if (isset($line['Sqk'])) {
595
+		    	$data['squawk'] = $line['Sqk'];
596
+		    }
597
+		    // squawk
458 598
 		    $data['emergency'] = ''; // emergency
459
-		    if (isset($line['Reg'])) $data['registration'] = $line['Reg'];
599
+		    if (isset($line['Reg'])) {
600
+		    	$data['registration'] = $line['Reg'];
601
+		    }
460 602
 		    /*
461 603
 		    if (isset($line['PosTime'])) $data['datetime'] = date('Y-m-d H:i:s',$line['PosTime']/1000);
462 604
 		    else $data['datetime'] = date('Y-m-d H:i:s');
463 605
 		    */
464 606
 		    $data['datetime'] = date('Y-m-d H:i:s');
465
-		    if (isset($line['Type'])) $data['aircraft_icao'] = $line['Type'];
607
+		    if (isset($line['Type'])) {
608
+		    	$data['aircraft_icao'] = $line['Type'];
609
+		    }
466 610
 	    	    $data['format_source'] = 'aircraftlistjson';
467 611
 		    $data['id_source'] = $id_source;
468
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
469
-		    if (isset($data['datetime'])) $SI->add($data);
612
+		    if (isset($value['name']) && $value['name'] != '') {
613
+		    	$data['source_name'] = $value['name'];
614
+		    }
615
+		    if (isset($data['datetime'])) {
616
+		    	$SI->add($data);
617
+		    }
470 618
 		    unset($data);
471 619
 		}
472 620
 	    } else {
@@ -485,7 +633,9 @@  discard block
 block discarded – undo
485 633
 		    $data['datetime'] = date('Y-m-d H:i:s');
486 634
 	    	    $data['format_source'] = 'aircraftlistjson';
487 635
     		    $data['id_source'] = $id_source;
488
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
636
+		    if (isset($value['name']) && $value['name'] != '') {
637
+		    	$data['source_name'] = $value['name'];
638
+		    }
489 639
 		    $SI->add($data);
490 640
 		    unset($data);
491 641
 		}
@@ -520,7 +670,9 @@  discard block
 block discarded – undo
520 670
 		    $data['datetime'] = date('Y-m-d H:i:s',$line[9]);
521 671
 	    	    $data['format_source'] = 'planeupdatefaa';
522 672
     		    $data['id_source'] = $id_source;
523
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
673
+		    if (isset($value['name']) && $value['name'] != '') {
674
+		    	$data['source_name'] = $value['name'];
675
+		    }
524 676
 		    $SI->add($data);
525 677
 		    unset($data);
526 678
 		}
@@ -579,7 +731,9 @@  discard block
 block discarded – undo
579 731
 		    $data['datetime'] = date('Y-m-d H:i:s'); //$line[10]
580 732
 	    	    $data['format_source'] = 'fr24json';
581 733
     		    $data['id_source'] = $id_source;
582
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
734
+		    if (isset($value['name']) && $value['name'] != '') {
735
+		    	$data['source_name'] = $value['name'];
736
+		    }
583 737
 		    $SI->add($data);
584 738
 		    unset($data);
585 739
 		}
@@ -602,23 +756,39 @@  discard block
 block discarded – undo
602 756
 		    if (isset($line['inf'])) {
603 757
 			$data = array();
604 758
 			$data['hex'] = $line['inf']['ia'];
605
-			if (isset($line['inf']['cs'])) $data['ident'] = $line['inf']['cs']; //$line[13]
759
+			if (isset($line['inf']['cs'])) {
760
+				$data['ident'] = $line['inf']['cs'];
761
+			}
762
+			//$line[13]
606 763
 	    		$data['altitude'] = round($line['inf']['al']*3.28084); // altitude
607
-	    		if (isset($line['inf']['gs'])) $data['speed'] = round($line['inf']['gs']*0.539957); // speed
608
-	    		if (isset($line['inf']['tr'])) $data['heading'] = $line['inf']['tr']; // heading
764
+	    		if (isset($line['inf']['gs'])) {
765
+	    			$data['speed'] = round($line['inf']['gs']*0.539957);
766
+	    		}
767
+	    		// speed
768
+	    		if (isset($line['inf']['tr'])) {
769
+	    			$data['heading'] = $line['inf']['tr'];
770
+	    		}
771
+	    		// heading
609 772
 	    		$data['latitude'] = $line['pt'][0]; // lat
610 773
 	    		$data['longitude'] = $line['pt'][1]; // long
611 774
 	    		//if (isset($line['inf']['vs'])) $data['verticalrate'] = $line['inf']['vs']; // verticale rate
612
-	    		if (isset($line['inf']['sq'])) $data['squawk'] = $line['inf']['sq']; // squawk
775
+	    		if (isset($line['inf']['sq'])) {
776
+	    			$data['squawk'] = $line['inf']['sq'];
777
+	    		}
778
+	    		// squawk
613 779
 	    		//$data['aircraft_icao'] = $line[8];
614
-	    		if (isset($line['inf']['rc'])) $data['registration'] = $line['inf']['rc'];
780
+	    		if (isset($line['inf']['rc'])) {
781
+	    			$data['registration'] = $line['inf']['rc'];
782
+	    		}
615 783
 			//$data['departure_airport_iata'] = $line[11];
616 784
 			//$data['arrival_airport_iata'] = $line[12];
617 785
 	    		//$data['emergency'] = ''; // emergency
618 786
 			$data['datetime'] = date('Y-m-d H:i:s',$line['inf']['dt']); //$line[10]
619 787
 	    		$data['format_source'] = 'radarvirtueljson';
620 788
     			$data['id_source'] = $id_source;
621
-			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
789
+			if (isset($value['name']) && $value['name'] != '') {
790
+				$data['source_name'] = $value['name'];
791
+			}
622 792
 			$SI->add($data);
623 793
 			unset($data);
624 794
 		    }
@@ -638,29 +808,62 @@  discard block
 block discarded – undo
638 808
 		    $data['id'] = $line['id'];
639 809
 		    $data['hex'] = substr(str_pad(dechex($line['id']),6,'000000',STR_PAD_LEFT),0,6);
640 810
 		    $data['ident'] = $line['callsign']; // ident
641
-		    if (isset($line['pilotid'])) $data['pilot_id'] = $line['pilotid']; // pilot id
642
-		    if (isset($line['name'])) $data['pilot_name'] = $line['name']; // pilot name
643
-		    if (isset($line['alt'])) $data['altitude'] = $line['alt']; // altitude
644
-		    if (isset($line['gs'])) $data['speed'] = $line['gs']; // speed
645
-		    if (isset($line['heading'])) $data['heading'] = $line['heading']; // heading
646
-		    if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
811
+		    if (isset($line['pilotid'])) {
812
+		    	$data['pilot_id'] = $line['pilotid'];
813
+		    }
814
+		    // pilot id
815
+		    if (isset($line['name'])) {
816
+		    	$data['pilot_name'] = $line['name'];
817
+		    }
818
+		    // pilot name
819
+		    if (isset($line['alt'])) {
820
+		    	$data['altitude'] = $line['alt'];
821
+		    }
822
+		    // altitude
823
+		    if (isset($line['gs'])) {
824
+		    	$data['speed'] = $line['gs'];
825
+		    }
826
+		    // speed
827
+		    if (isset($line['heading'])) {
828
+		    	$data['heading'] = $line['heading'];
829
+		    }
830
+		    // heading
831
+		    if (isset($line['route'])) {
832
+		    	$data['waypoints'] = $line['route'];
833
+		    }
834
+		    // route
647 835
 		    $data['latitude'] = $line['lat']; // lat
648 836
 		    $data['longitude'] = $line['lon']; // long
649 837
 		    //$data['verticalrate'] = $line['vrt']; // verticale rate
650 838
 		    //$data['squawk'] = $line['squawk']; // squawk
651 839
 		    //$data['emergency'] = ''; // emergency
652
-		    if (isset($line['depicao'])) $data['departure_airport_icao'] = $line['depicao'];
653
-		    if (isset($line['deptime'])) $data['departure_airport_time'] = $line['deptime'];
654
-		    if (isset($line['arricao'])) $data['arrival_airport_icao'] = $line['arricao'];
840
+		    if (isset($line['depicao'])) {
841
+		    	$data['departure_airport_icao'] = $line['depicao'];
842
+		    }
843
+		    if (isset($line['deptime'])) {
844
+		    	$data['departure_airport_time'] = $line['deptime'];
845
+		    }
846
+		    if (isset($line['arricao'])) {
847
+		    	$data['arrival_airport_icao'] = $line['arricao'];
848
+		    }
655 849
 		    //$data['arrival_airport_time'] = $line['arrtime'];
656
-		    if (isset($line['aircraft'])) $data['aircraft_icao'] = $line['aircraft'];
657
-		    if (isset($line['transponder'])) $data['squawk'] = $line['transponder'];
658
-		    if (isset($line['atis'])) $data['info'] = $line['atis'];
659
-		    else $data['info'] = '';
850
+		    if (isset($line['aircraft'])) {
851
+		    	$data['aircraft_icao'] = $line['aircraft'];
852
+		    }
853
+		    if (isset($line['transponder'])) {
854
+		    	$data['squawk'] = $line['transponder'];
855
+		    }
856
+		    if (isset($line['atis'])) {
857
+		    	$data['info'] = $line['atis'];
858
+		    } else {
859
+		    	$data['info'] = '';
860
+		    }
660 861
 		    $data['format_source'] = 'pireps';
661 862
     		    $data['id_source'] = $id_source;
662 863
 		    $data['datetime'] = date('Y-m-d H:i:s');
663
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
864
+		    if (isset($value['name']) && $value['name'] != '') {
865
+		    	$data['source_name'] = $value['name'];
866
+		    }
664 867
 		    if ($line['icon'] == 'plane') {
665 868
 			$SI->add($data);
666 869
 		    //    print_r($data);
@@ -669,15 +872,25 @@  discard block
 block discarded – undo
669 872
 			$data['info'] = str_replace('&amp;sect;','',$data['info']);
670 873
 			$typec = substr($data['ident'],-3);
671 874
 			$data['type'] = '';
672
-			if ($typec == 'APP') $data['type'] = 'Approach';
673
-			elseif ($typec == 'TWR') $data['type'] = 'Tower';
674
-			elseif ($typec == 'OBS') $data['type'] = 'Observer';
675
-			elseif ($typec == 'GND') $data['type'] = 'Ground';
676
-			elseif ($typec == 'DEL') $data['type'] = 'Delivery';
677
-			elseif ($typec == 'DEP') $data['type'] = 'Departure';
678
-			elseif ($typec == 'FSS') $data['type'] = 'Flight Service Station';
679
-			elseif ($typec == 'CTR') $data['type'] = 'Control Radar or Centre';
680
-			else $data['type'] = 'Observer';
875
+			if ($typec == 'APP') {
876
+				$data['type'] = 'Approach';
877
+			} elseif ($typec == 'TWR') {
878
+				$data['type'] = 'Tower';
879
+			} elseif ($typec == 'OBS') {
880
+				$data['type'] = 'Observer';
881
+			} elseif ($typec == 'GND') {
882
+				$data['type'] = 'Ground';
883
+			} elseif ($typec == 'DEL') {
884
+				$data['type'] = 'Delivery';
885
+			} elseif ($typec == 'DEP') {
886
+				$data['type'] = 'Departure';
887
+			} elseif ($typec == 'FSS') {
888
+				$data['type'] = 'Flight Service Station';
889
+			} elseif ($typec == 'CTR') {
890
+				$data['type'] = 'Control Radar or Centre';
891
+			} else {
892
+				$data['type'] = 'Observer';
893
+			}
681 894
 			echo $ATC->add($data['ident'],'',$data['latitude'],$data['longitude'],'0',$data['info'],$data['datetime'],$data['type'],$data['pilot_id'],$data['pilot_name']);
682 895
 		    }
683 896
 		    unset($data);
@@ -688,17 +901,25 @@  discard block
 block discarded – undo
688 901
     	//} elseif ($value == 'phpvmacars' && (time() - $last_exec['phpvmacars'] > $globalMinFetch)) {
689 902
     	} elseif ($value['format'] == 'phpvmacars' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
690 903
 	    //$buffer = $Common->getData($hosts[$id]);
691
-	    if ($globalDebug) echo 'Get Data...'."\n";
904
+	    if ($globalDebug) {
905
+	    	echo 'Get Data...'."\n";
906
+	    }
692 907
 	    $buffer = $Common->getData($value['host']);
693 908
 	    $all_data = json_decode($buffer,true);
694 909
 	    if ($buffer != '' && is_array($all_data)) {
695 910
 		foreach ($all_data as $line) {
696 911
 	    	    $data = array();
697 912
 	    	    //$data['id'] = $line['id']; // id not usable
698
-	    	    if (isset($line['pilotid'])) $data['id'] = $line['pilotid'].$line['flightnum'];
913
+	    	    if (isset($line['pilotid'])) {
914
+	    	    	$data['id'] = $line['pilotid'].$line['flightnum'];
915
+	    	    }
699 916
 	    	    $data['hex'] = substr(str_pad(bin2hex($line['flightnum']),6,'000000',STR_PAD_LEFT),-6); // hex
700
-	    	    if (isset($line['pilotname'])) $data['pilot_name'] = $line['pilotname'];
701
-	    	    if (isset($line['pilotid'])) $data['pilot_id'] = $line['pilotid'];
917
+	    	    if (isset($line['pilotname'])) {
918
+	    	    	$data['pilot_name'] = $line['pilotname'];
919
+	    	    }
920
+	    	    if (isset($line['pilotid'])) {
921
+	    	    	$data['pilot_id'] = $line['pilotid'];
922
+	    	    }
702 923
 	    	    $data['ident'] = $line['flightnum']; // ident
703 924
 	    	    $data['altitude'] = $line['alt']; // altitude
704 925
 	    	    $data['speed'] = $line['gs']; // speed
@@ -716,27 +937,41 @@  discard block
 block discarded – undo
716 937
 	    	    $data['arrival_airport_icao'] = $line['arricao'];
717 938
     		    $data['arrival_airport_time'] = $line['arrtime'];
718 939
     		    $data['registration'] = $line['aircraft'];
719
-		    if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
940
+		    if (isset($line['route'])) {
941
+		    	$data['waypoints'] = $line['route'];
942
+		    }
943
+		    // route
720 944
 		    if (isset($line['aircraftname'])) {
721 945
 			$line['aircraftname'] = strtoupper($line['aircraftname']);
722 946
 			$line['aircraftname'] = str_replace('BOEING ','B',$line['aircraftname']);
723 947
 	    		$aircraft_data = explode('-',$line['aircraftname']);
724
-	    		if (isset($aircraft_data[1]) && strlen($aircraft_data[0]) < 5) $data['aircraft_icao'] = $aircraft_data[0];
725
-	    		elseif (isset($aircraft_data[1]) && strlen($aircraft_data[1]) < 5) $data['aircraft_icao'] = $aircraft_data[1];
726
-	    		else {
948
+	    		if (isset($aircraft_data[1]) && strlen($aircraft_data[0]) < 5) {
949
+	    			$data['aircraft_icao'] = $aircraft_data[0];
950
+	    		} elseif (isset($aircraft_data[1]) && strlen($aircraft_data[1]) < 5) {
951
+	    			$data['aircraft_icao'] = $aircraft_data[1];
952
+	    		} else {
727 953
 	    		    $aircraft_data = explode(' ',$line['aircraftname']);
728
-	    		    if (isset($aircraft_data[1])) $data['aircraft_icao'] = $aircraft_data[1];
729
-	    		    else $data['aircraft_icao'] = $line['aircraftname'];
954
+	    		    if (isset($aircraft_data[1])) {
955
+	    		    	$data['aircraft_icao'] = $aircraft_data[1];
956
+	    		    } else {
957
+	    		    	$data['aircraft_icao'] = $line['aircraftname'];
958
+	    		    }
730 959
 	    		}
731 960
 	    	    }
732
-    		    if (isset($line['route'])) $data['waypoints'] = $line['route'];
961
+    		    if (isset($line['route'])) {
962
+    		    	$data['waypoints'] = $line['route'];
963
+    		    }
733 964
     		    $data['id_source'] = $id_source;
734 965
 	    	    $data['format_source'] = 'phpvmacars';
735
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
966
+		    if (isset($value['name']) && $value['name'] != '') {
967
+		    	$data['source_name'] = $value['name'];
968
+		    }
736 969
 		    $SI->add($data);
737 970
 		    unset($data);
738 971
 		}
739
-		if ($globalDebug) echo 'No more data...'."\n";
972
+		if ($globalDebug) {
973
+			echo 'No more data...'."\n";
974
+		}
740 975
 		unset($buffer);
741 976
 		unset($all_data);
742 977
 	    }
@@ -744,7 +979,9 @@  discard block
 block discarded – undo
744 979
     	    $last_exec[$id]['last'] = time();
745 980
     	} elseif ($value['format'] == 'vam' && (time() - $last_exec[$id]['last'] > $globalMinFetch)) {
746 981
 	    //$buffer = $Common->getData($hosts[$id]);
747
-	    if ($globalDebug) echo 'Get Data...'."\n";
982
+	    if ($globalDebug) {
983
+	    	echo 'Get Data...'."\n";
984
+	    }
748 985
 	    $buffer = $Common->getData($value['host']);
749 986
 	    $all_data = json_decode($buffer,true);
750 987
 	    if ($buffer != '' && is_array($all_data)) {
@@ -772,15 +1009,22 @@  discard block
 block discarded – undo
772 1009
 	    	    $data['arrival_airport_icao'] = $line['arrival'];
773 1010
     		    //$data['arrival_airport_time'] = $line['arrival_time'];
774 1011
     		    //$data['registration'] = $line['aircraft'];
775
-		    if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
1012
+		    if (isset($line['route'])) {
1013
+		    	$data['waypoints'] = $line['route'];
1014
+		    }
1015
+		    // route
776 1016
 	    	    $data['aircraft_icao'] = $line['plane_type'];
777 1017
     		    $data['id_source'] = $id_source;
778 1018
 	    	    $data['format_source'] = 'vam';
779
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1019
+		    if (isset($value['name']) && $value['name'] != '') {
1020
+		    	$data['source_name'] = $value['name'];
1021
+		    }
780 1022
 		    $SI->add($data);
781 1023
 		    unset($data);
782 1024
 		}
783
-		if ($globalDebug) echo 'No more data...'."\n";
1025
+		if ($globalDebug) {
1026
+			echo 'No more data...'."\n";
1027
+		}
784 1028
 		unset($buffer);
785 1029
 		unset($all_data);
786 1030
 	    }
@@ -788,7 +1032,9 @@  discard block
 block discarded – undo
788 1032
     	    $last_exec[$id]['last'] = time();
789 1033
 	//} elseif ($value == 'sbs' || $value == 'tsv' || $value == 'raw' || $value == 'aprs' || $value == 'beast') {
790 1034
 	} elseif ($value['format'] == 'sbs' || $value['format'] == 'tsv' || $value['format'] == 'raw' || $value['format'] == 'aprs' || $value['format'] == 'beast' || $value['format'] == 'flightgearmp' || $value['format'] == 'flightgearsp' || $value['format'] == 'acars') {
791
-	    if (function_exists('pcntl_fork')) pcntl_signal_dispatch();
1035
+	    if (function_exists('pcntl_fork')) {
1036
+	    	pcntl_signal_dispatch();
1037
+	    }
792 1038
     	    //$last_exec[$id]['last'] = time();
793 1039
 
794 1040
 	    //$read = array( $sockets[$id] );
@@ -796,7 +1042,9 @@  discard block
 block discarded – undo
796 1042
 	    $write = NULL;
797 1043
 	    $e = NULL;
798 1044
 	    $n = socket_select($read, $write, $e, $timeout);
799
-	    if ($e != NULL) var_dump($e);
1045
+	    if ($e != NULL) {
1046
+	    	var_dump($e);
1047
+	    }
800 1048
 	    if ($n > 0) {
801 1049
 		foreach ($read as $nb => $r) {
802 1050
 		    //$value = $formats[$nb];
@@ -824,9 +1072,15 @@  discard block
 block discarded – undo
824 1072
 			    if (is_array($data)) {
825 1073
 				$data['datetime'] = date('Y-m-d H:i:s');
826 1074
 				$data['format_source'] = 'raw';
827
-				if (isset($globalSources[$nb]['name']) && $globalSources[$nb]['name'] != '') $data['source_name'] = $globalSources[$nb]['name'];
828
-    				if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
829
-                                if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
1075
+				if (isset($globalSources[$nb]['name']) && $globalSources[$nb]['name'] != '') {
1076
+					$data['source_name'] = $globalSources[$nb]['name'];
1077
+				}
1078
+    				if (isset($globalSources[$nb]['sourcestats'])) {
1079
+    					$data['sourcestats'] = $globalSources[$nb]['sourcestats'];
1080
+    				}
1081
+                                if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) {
1082
+                                	$SI->add($data);
1083
+                                }
830 1084
                             }
831 1085
                         } elseif ($format == 'flightgearsp') {
832 1086
                     	    //echo $buffer."\n";
@@ -844,11 +1098,15 @@  discard block
 block discarded – undo
844 1098
 				$data['speed'] = round($line[5]*1.94384);
845 1099
 				$data['datetime'] = date('Y-m-d H:i:s');
846 1100
 				$data['format_source'] = 'flightgearsp';
847
-				if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
1101
+				if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) {
1102
+					$SI->add($data);
1103
+				}
848 1104
 				$send = @ socket_send( $r  , $data_aprs , strlen($data_aprs) , 0 );
849 1105
 			    }
850 1106
                         } elseif ($format == 'acars') {
851
-                    	    if ($globalDebug) echo 'ACARS : '.$buffer."\n";
1107
+                    	    if ($globalDebug) {
1108
+                    	    	echo 'ACARS : '.$buffer."\n";
1109
+                    	    }
852 1110
 			    $ACARS->add(trim($buffer));
853 1111
 			    socket_sendto($r, "OK " . $buffer , 100 , 0 , $remote_ip , $remote_port);
854 1112
 			    $ACARS->deleteLiveAcarsData();
@@ -869,7 +1127,9 @@  discard block
 block discarded – undo
869 1127
 				    $aircraft_type = $line[10];
870 1128
 				    $aircraft_type = preg_split(':/:',$aircraft_type);
871 1129
 				    $data['aircraft_name'] = substr(end($aircraft_type),0,-4);
872
-				    if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
1130
+				    if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) {
1131
+				    	$SI->add($data);
1132
+				    }
873 1133
 				}
874 1134
 			    }
875 1135
 			} elseif ($format == 'beast') {
@@ -885,21 +1145,43 @@  discard block
 block discarded – undo
885 1145
     				$data['hex'] = $lined['hexid'];
886 1146
     				//$data['datetime'] = date('Y-m-d H:i:s',strtotime($lined['clock']));;
887 1147
     				$data['datetime'] = date('Y-m-d H:i:s');;
888
-    				if (isset($lined['ident'])) $data['ident'] = $lined['ident'];
889
-    				if (isset($lined['lat'])) $data['latitude'] = $lined['lat'];
890
-    				if (isset($lined['lon'])) $data['longitude'] = $lined['lon'];
891
-    				if (isset($lined['speed'])) $data['speed'] = $lined['speed'];
892
-    				if (isset($lined['squawk'])) $data['squawk'] = $lined['squawk'];
893
-    				if (isset($lined['alt'])) $data['altitude'] = $lined['alt'];
894
-    				if (isset($lined['heading'])) $data['heading'] = $lined['heading'];
1148
+    				if (isset($lined['ident'])) {
1149
+    					$data['ident'] = $lined['ident'];
1150
+    				}
1151
+    				if (isset($lined['lat'])) {
1152
+    					$data['latitude'] = $lined['lat'];
1153
+    				}
1154
+    				if (isset($lined['lon'])) {
1155
+    					$data['longitude'] = $lined['lon'];
1156
+    				}
1157
+    				if (isset($lined['speed'])) {
1158
+    					$data['speed'] = $lined['speed'];
1159
+    				}
1160
+    				if (isset($lined['squawk'])) {
1161
+    					$data['squawk'] = $lined['squawk'];
1162
+    				}
1163
+    				if (isset($lined['alt'])) {
1164
+    					$data['altitude'] = $lined['alt'];
1165
+    				}
1166
+    				if (isset($lined['heading'])) {
1167
+    					$data['heading'] = $lined['heading'];
1168
+    				}
895 1169
     				$data['id_source'] = $id_source;
896 1170
     				$data['format_source'] = 'tsv';
897
-    				if (isset($globalSources[$nb]['name']) && $globalSources[$nb]['name'] != '') $data['source_name'] = $globalSources[$nb]['name'];
898
-    				if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
899
-    				if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
1171
+    				if (isset($globalSources[$nb]['name']) && $globalSources[$nb]['name'] != '') {
1172
+    					$data['source_name'] = $globalSources[$nb]['name'];
1173
+    				}
1174
+    				if (isset($globalSources[$nb]['sourcestats'])) {
1175
+    					$data['sourcestats'] = $globalSources[$nb]['sourcestats'];
1176
+    				}
1177
+    				if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) {
1178
+    					$SI->add($data);
1179
+    				}
900 1180
     				unset($lined);
901 1181
     				unset($data);
902
-    			    } else $error = true;
1182
+    			    } else {
1183
+    			    	$error = true;
1184
+    			    }
903 1185
 			} elseif ($format == 'aprs' && $use_aprs) {
904 1186
 			    if ($aprs_connect == 0) {
905 1187
 				$send = @ socket_send( $r  , $aprs_login , strlen($aprs_login) , 0 );
@@ -925,29 +1207,44 @@  discard block
 block discarded – undo
925 1207
 				    $data['latitude'] = $line['latitude'];
926 1208
 				    $data['longitude'] = $line['longitude'];
927 1209
 				    //$data['verticalrate'] = $line[16];
928
-				    if (isset($line['speed'])) $data['speed'] = $line['speed'];
929
-				    else $data['speed'] = 0;
1210
+				    if (isset($line['speed'])) {
1211
+				    	$data['speed'] = $line['speed'];
1212
+				    } else {
1213
+				    	$data['speed'] = 0;
1214
+				    }
930 1215
 				    $data['altitude'] = $line['altitude'];
931
-				    if (isset($line['course'])) $data['heading'] = $line['course'];
1216
+				    if (isset($line['course'])) {
1217
+				    	$data['heading'] = $line['course'];
1218
+				    }
932 1219
 				    //else $data['heading'] = 0;
933 1220
 				    $data['aircraft_type'] = $line['stealth'];
934
-				    if (!isset($globalAPRSarchive) || (isset($globalAPRSarchive) && $globalAPRSarchive == FALSE)) $data['noarchive'] = true;
1221
+				    if (!isset($globalAPRSarchive) || (isset($globalAPRSarchive) && $globalAPRSarchive == FALSE)) {
1222
+				    	$data['noarchive'] = true;
1223
+				    }
935 1224
     				    $data['id_source'] = $id_source;
936 1225
 				    $data['format_source'] = 'aprs';
937 1226
 				    $data['source_name'] = $line['source'];
938
-    				    if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
1227
+    				    if (isset($globalSources[$nb]['sourcestats'])) {
1228
+    				    	$data['sourcestats'] = $globalSources[$nb]['sourcestats'];
1229
+    				    }
939 1230
 				    $currentdate = date('Y-m-d H:i:s');
940 1231
 				    $aprsdate = strtotime($data['datetime']);
941 1232
 				    // Accept data if time <= system time + 20s
942
-				    if ($line['stealth'] == 0 && (strtotime($data['datetime']) <= strtotime($currentdate)+20) && (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude'])))) $send = $SI->add($data);
943
-				    else {
944
-					if ($line['stealth'] != 0) echo '-------- '.$data['ident'].' : APRS stealth ON => not adding'."\n";
945
-					else echo '--------- '.$data['ident'].' : Date APRS : '.$data['datetime'].' - Current date : '.$currentdate.' => not adding future event'."\n";
1233
+				    if ($line['stealth'] == 0 && (strtotime($data['datetime']) <= strtotime($currentdate)+20) && (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude'])))) {
1234
+				    	$send = $SI->add($data);
1235
+				    } else {
1236
+					if ($line['stealth'] != 0) {
1237
+						echo '-------- '.$data['ident'].' : APRS stealth ON => not adding'."\n";
1238
+					} else {
1239
+						echo '--------- '.$data['ident'].' : Date APRS : '.$data['datetime'].' - Current date : '.$currentdate.' => not adding future event'."\n";
1240
+					}
946 1241
 				    }
947 1242
 				    unset($data);
948 1243
 				} 
949 1244
 				//elseif ($line == false && $globalDebug) echo 'Ignored ('.$buffer.")\n";
950
-				elseif ($line == true && $globalDebug) echo '!! Failed : '.$buffer."!!\n";
1245
+				elseif ($line == true && $globalDebug) {
1246
+					echo '!! Failed : '.$buffer."!!\n";
1247
+				}
951 1248
 			    }
952 1249
 			} else {
953 1250
 			    $line = explode(',', $buffer);
@@ -975,25 +1272,42 @@  discard block
 block discarded – undo
975 1272
     				$data['ground'] = $line[21];
976 1273
     				$data['emergency'] = $line[19];
977 1274
     				$data['format_source'] = 'sbs';
978
-				if (isset($globalSources[$nb]['name']) && $globalSources[$nb]['name'] != '') $data['source_name'] = $globalSources[$nb]['name'];
979
-    				if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
1275
+				if (isset($globalSources[$nb]['name']) && $globalSources[$nb]['name'] != '') {
1276
+					$data['source_name'] = $globalSources[$nb]['name'];
1277
+				}
1278
+    				if (isset($globalSources[$nb]['sourcestats'])) {
1279
+    					$data['sourcestats'] = $globalSources[$nb]['sourcestats'];
1280
+    				}
980 1281
     				$data['id_source'] = $id_source;
981
-    				if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $send = $SI->add($data);
982
-    				else $error = true;
1282
+    				if (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) {
1283
+    					$send = $SI->add($data);
1284
+    				} else {
1285
+    					$error = true;
1286
+    				}
983 1287
     				unset($data);
984
-    			    } else $error = true;
1288
+    			    } else {
1289
+    			    	$error = true;
1290
+    			    }
985 1291
 			    if ($error) {
986 1292
 				if (count($line) > 1 && ($line[0] == 'STA' || $line[0] == 'AIR' || $line[0] == 'SEL' || $line[0] == 'ID' || $line[0] == 'CLK')) { 
987
-					if ($globalDebug) echo "Not a message. Ignoring... \n";
1293
+					if ($globalDebug) {
1294
+						echo "Not a message. Ignoring... \n";
1295
+					}
988 1296
 				} else {
989
-					if ($globalDebug) echo "Wrong line format. Ignoring... \n";
1297
+					if ($globalDebug) {
1298
+						echo "Wrong line format. Ignoring... \n";
1299
+					}
990 1300
 					if ($globalDebug) {
991 1301
 						echo $buffer;
992 1302
 						print_r($line);
993 1303
 					}
994 1304
 					//socket_close($r);
995
-					if ($globalDebug) echo "Reconnect after an error...\n";
996
-					if ($format == 'aprs') $aprs_connect = 0;
1305
+					if ($globalDebug) {
1306
+						echo "Reconnect after an error...\n";
1307
+					}
1308
+					if ($format == 'aprs') {
1309
+						$aprs_connect = 0;
1310
+					}
997 1311
 					$sourceer[$nb] = $globalSources[$nb];
998 1312
 					connect_all($sourceer);
999 1313
 					$sourceer = array();
@@ -1001,10 +1315,14 @@  discard block
 block discarded – undo
1001 1315
 			    }
1002 1316
 			}
1003 1317
 			// Sleep for xxx microseconds
1004
-			if (isset($globalSBSSleep)) usleep($globalSBSSleep);
1318
+			if (isset($globalSBSSleep)) {
1319
+				usleep($globalSBSSleep);
1320
+			}
1005 1321
 		    } else {
1006 1322
 			if ($format == 'flightgearmp') {
1007
-			    	if ($globalDebug) echo "Reconnect FlightGear MP...";
1323
+			    	if ($globalDebug) {
1324
+			    		echo "Reconnect FlightGear MP...";
1325
+			    	}
1008 1326
 				//@socket_close($r);
1009 1327
 				sleep($globalMinFetch);
1010 1328
 				$sourcefg[$nb] = $globalSources[$nb];
@@ -1013,10 +1331,15 @@  discard block
 block discarded – undo
1013 1331
 				break;
1014 1332
 				
1015 1333
 			} elseif ($format != 'acars' && $format != 'flightgearsp') {
1016
-			    if (isset($tt[$format])) $tt[$format]++;
1017
-			    else $tt[$format] = 0;
1334
+			    if (isset($tt[$format])) {
1335
+			    	$tt[$format]++;
1336
+			    } else {
1337
+			    	$tt[$format] = 0;
1338
+			    }
1018 1339
 			    if ($tt[$format] > 30) {
1019
-				if ($globalDebug) echo "ERROR : Reconnect ".$format."...";
1340
+				if ($globalDebug) {
1341
+					echo "ERROR : Reconnect ".$format."...";
1342
+				}
1020 1343
 				//@socket_close($r);
1021 1344
 				sleep(2);
1022 1345
 				$aprs_connect = 0;
@@ -1032,12 +1355,18 @@  discard block
 block discarded – undo
1032 1355
 		}
1033 1356
 	    } else {
1034 1357
 		$error = socket_strerror(socket_last_error());
1035
-		if ($globalDebug) echo "ERROR : socket_select give this error ".$error . "\n";
1358
+		if ($globalDebug) {
1359
+			echo "ERROR : socket_select give this error ".$error . "\n";
1360
+		}
1036 1361
 		if (($error != SOCKET_EINPROGRESS && $error != SOCKET_EALREADY) || time() - $time >= $timeout) {
1037
-			if (isset($globalDebug)) echo "Restarting...\n";
1362
+			if (isset($globalDebug)) {
1363
+				echo "Restarting...\n";
1364
+			}
1038 1365
 			// Restart the script if possible
1039 1366
 			if (is_array($sockets)) {
1040
-			    if ($globalDebug) echo "Shutdown all sockets...";
1367
+			    if ($globalDebug) {
1368
+			    	echo "Shutdown all sockets...";
1369
+			    }
1041 1370
 			    
1042 1371
 			    foreach ($sockets as $sock) {
1043 1372
 				@socket_shutdown($sock,2);
@@ -1045,7 +1374,9 @@  discard block
 block discarded – undo
1045 1374
 			    }
1046 1375
 			    
1047 1376
 			}
1048
-			    if ($globalDebug) echo "Restart all connections...";
1377
+			    if ($globalDebug) {
1378
+			    	echo "Restart all connections...";
1379
+			    }
1049 1380
 			    sleep(2);
1050 1381
 			    $time = time();
1051 1382
 			    //connect_all($hosts);
@@ -1056,7 +1387,9 @@  discard block
 block discarded – undo
1056 1387
 	    }
1057 1388
 	}
1058 1389
 	if ($globalDaemon === false) {
1059
-	    if ($globalDebug) echo 'Check all...'."\n";
1390
+	    if ($globalDebug) {
1391
+	    	echo 'Check all...'."\n";
1392
+	    }
1060 1393
 	    $SI->checkAll();
1061 1394
 	}
1062 1395
     }
Please login to merge, or discard this patch.