Completed
Push — master ( 014bf0...2f98db )
by Yannick
09:33
created
scripts/daemon-spotter.php 1 patch
Indentation   +1217 added lines, -1217 removed lines patch added patch discarded remove patch
@@ -15,65 +15,65 @@  discard block
 block discarded – undo
15 15
 require_once(dirname(__FILE__).'/../require/class.Connection.php');
16 16
 require_once(dirname(__FILE__).'/../require/class.Common.php');
17 17
 if (isset($globalTracker) && $globalTracker) {
18
-    require_once(dirname(__FILE__).'/../require/class.TrackerImport.php');
18
+	require_once(dirname(__FILE__).'/../require/class.TrackerImport.php');
19 19
 }
20 20
 if (isset($globalMarine) && $globalMarine) {
21
-    require_once(dirname(__FILE__).'/../require/class.AIS.php');
22
-    require_once(dirname(__FILE__).'/../require/class.MarineImport.php');
21
+	require_once(dirname(__FILE__).'/../require/class.AIS.php');
22
+	require_once(dirname(__FILE__).'/../require/class.MarineImport.php');
23 23
 }
24 24
 
25 25
 if (!isset($globalDebug)) $globalDebug = FALSE;
26 26
 
27 27
 if ($globalInstalled === FALSE) {
28
-    echo "This script MUST be run after install script. Use your web browser to run install/index.php";
29
-    sleep(5);
30
-    die();
28
+	echo "This script MUST be run after install script. Use your web browser to run install/index.php";
29
+	sleep(5);
30
+	die();
31 31
 }
32 32
 
33 33
 
34 34
 // Check if schema is at latest version
35 35
 $Connection = new Connection();
36 36
 if ($Connection->connectionExists() === false) {
37
-    echo "Can't connect to your database. Check DB is running, user/password and database logs.";
38
-    exit();
37
+	echo "Can't connect to your database. Check DB is running, user/password and database logs.";
38
+	exit();
39 39
 }
40 40
 if ($Connection->latest() === false) {
41
-    echo "You MUST update to latest schema. Use your web browser to run install/index.php";
42
-    exit();
41
+	echo "You MUST update to latest schema. Use your web browser to run install/index.php";
42
+	exit();
43 43
 }
44 44
 if (PHP_SAPI != 'cli') {
45
-    echo "This script MUST be called from console, not a web browser.";
45
+	echo "This script MUST be called from console, not a web browser.";
46 46
 //    exit();
47 47
 }
48 48
 
49 49
 // This is to be compatible with old version of settings.php
50 50
 if (!isset($globalSources)) {
51
-    if (isset($globalSBS1Hosts)) {
52
-        //$hosts = $globalSBS1Hosts;
53
-        foreach ($globalSBS1Hosts as $host) {
54
-	    $globalSources[] = array('host' => $host);
55
-    	}
56
-    } else {
57
-        if (!isset($globalSBS1Host)) {
58
-	    echo '$globalSources MUST be defined !';
59
-	    die;
51
+	if (isset($globalSBS1Hosts)) {
52
+		//$hosts = $globalSBS1Hosts;
53
+		foreach ($globalSBS1Hosts as $host) {
54
+		$globalSources[] = array('host' => $host);
55
+		}
56
+	} else {
57
+		if (!isset($globalSBS1Host)) {
58
+		echo '$globalSources MUST be defined !';
59
+		die;
60 60
 	}
61 61
 	//$hosts = array($globalSBS1Host.':'.$globalSBS1Port);
62 62
 	$globalSources[] = array('host' => $globalSBS1Host,'port' => $globalSBS1Port);
63
-    }
63
+	}
64 64
 }
65 65
 
66 66
 $options = getopt('s::',array('source::','server','nodaemon','idsource::','aprsserverssid::','aprsserverpass::','aprsserverhost::','aprsserverport::','format::','noaprsserver','enable-aircraft','disable-aircraft','enable-tracker','disable-tracker','enable-marine','disable-marine'));
67 67
 //if (isset($options['s'])) $hosts = array($options['s']);
68 68
 //elseif (isset($options['source'])) $hosts = array($options['source']);
69 69
 if (isset($options['s'])) {
70
-    $globalSources = array();
71
-    if (isset($options['format'])) $globalSources[] = array('host' => $options['s'],'format' => $options['format']);
72
-    else $globalSources[] = array('host' => $options['s']);
70
+	$globalSources = array();
71
+	if (isset($options['format'])) $globalSources[] = array('host' => $options['s'],'format' => $options['format']);
72
+	else $globalSources[] = array('host' => $options['s']);
73 73
 } elseif (isset($options['source'])) {
74
-    $globalSources = array();
75
-    if (isset($options['format'])) $globalSources[] = array('host' => $options['source'],'format' => $options['format']);
76
-    else $globalSources[] = array('host' => $options['source']);
74
+	$globalSources = array();
75
+	if (isset($options['format'])) $globalSources[] = array('host' => $options['source'],'format' => $options['format']);
76
+	else $globalSources[] = array('host' => $options['source']);
77 77
 }
78 78
 if (isset($options['aprsserverhost'])) {
79 79
 	$globalServerAPRS = TRUE;
@@ -112,8 +112,8 @@  discard block
 block discarded – undo
112 112
 if (isset($options['idsource'])) $id_source = $options['idsource'];
113 113
 else $id_source = 1;
114 114
 if (isset($globalServer) && $globalServer) {
115
-    if ($globalDebug) echo "Using Server Mode\n";
116
-    $SI=new SpotterServer();
115
+	if ($globalDebug) echo "Using Server Mode\n";
116
+	$SI=new SpotterServer();
117 117
 /*
118 118
     require_once(dirname(__FILE__).'/../require/class.APRS.php');
119 119
     $SI = new adsb2aprs();
@@ -123,14 +123,14 @@  discard block
 block discarded – undo
123 123
 
124 124
 if (isset($globalTracker) && $globalTracker) require_once(dirname(__FILE__).'/../require/class.TrackerImport.php');
125 125
 if (isset($globalMarine) && $globalMarine) {
126
-    require_once(dirname(__FILE__).'/../require/class.AIS.php');
127
-    require_once(dirname(__FILE__).'/../require/class.MarineImport.php');
126
+	require_once(dirname(__FILE__).'/../require/class.AIS.php');
127
+	require_once(dirname(__FILE__).'/../require/class.MarineImport.php');
128 128
 }
129 129
 
130 130
 if (isset($globalTracker) && $globalTracker) $TI = new TrackerImport($Connection->db);
131 131
 if (isset($globalMarine) && $globalMarine) {
132
-    $AIS = new AIS();
133
-    $MI = new MarineImport($Connection->db);
132
+	$AIS = new AIS();
133
+	$MI = new MarineImport($Connection->db);
134 134
 }
135 135
 //$APRS=new APRS($Connection->db);
136 136
 $SBS=new SBS();
@@ -143,12 +143,12 @@  discard block
 block discarded – undo
143 143
 //$servertz = system('date +%Z');
144 144
 // signal handler - playing nice with sockets and dump1090
145 145
 if (function_exists('pcntl_fork')) {
146
-    pcntl_signal(SIGINT,  function() {
147
-        global $sockets;
148
-        echo "\n\nctrl-c or kill signal received. Tidying up ... ";
149
-        die("Bye!\n");
150
-    });
151
-    pcntl_signal_dispatch();
146
+	pcntl_signal(SIGINT,  function() {
147
+		global $sockets;
148
+		echo "\n\nctrl-c or kill signal received. Tidying up ... ";
149
+		die("Bye!\n");
150
+	});
151
+	pcntl_signal_dispatch();
152 152
 }
153 153
 
154 154
 // let's try and connect
@@ -158,47 +158,47 @@  discard block
 block discarded – undo
158 158
 $reset = 0;
159 159
 
160 160
 function connect_all($hosts) {
161
-    //global $sockets, $formats, $globalDebug,$aprs_connect,$last_exec, $globalSourcesRights, $use_aprs;
162
-    global $sockets,$httpfeeds, $globalSources, $globalDebug,$aprs_connect,$last_exec, $globalSourcesRights, $use_aprs, $reset,$context;
163
-    $reset++;
164
-    if ($globalDebug) echo 'Connect to all...'."\n";
165
-    foreach ($hosts as $id => $value) {
161
+	//global $sockets, $formats, $globalDebug,$aprs_connect,$last_exec, $globalSourcesRights, $use_aprs;
162
+	global $sockets,$httpfeeds, $globalSources, $globalDebug,$aprs_connect,$last_exec, $globalSourcesRights, $use_aprs, $reset,$context;
163
+	$reset++;
164
+	if ($globalDebug) echo 'Connect to all...'."\n";
165
+	foreach ($hosts as $id => $value) {
166 166
 	$host = $value['host'];
167 167
 	$udp = false;
168 168
 	$globalSources[$id]['last_exec'] = 0;
169 169
 	// Here we check type of source(s)
170 170
 	if (filter_var($host,FILTER_VALIDATE_URL) && (!isset($globalSources[$id]['format']) || strtolower($globalSources[$id]['format']) == 'auto')) {
171
-            if (preg_match('/deltadb.txt$/i',$host)) {
172
-        	//$formats[$id] = 'deltadbtxt';
173
-        	$globalSources[$id]['format'] = 'deltadbtxt';
174
-        	//$last_exec['deltadbtxt'] = 0;
175
-        	if ($globalDebug) echo "Connect to deltadb source (".$host.")...\n";
176
-            } else if (preg_match('/vatsim-data.txt$/i',$host)) {
177
-        	//$formats[$id] = 'vatsimtxt';
178
-        	$globalSources[$id]['format'] = 'vatsimtxt';
179
-        	//$last_exec['vatsimtxt'] = 0;
180
-        	if ($globalDebug) echo "Connect to vatsim source (".$host.")...\n";
181
-    	    } else if (preg_match('/aircraftlist.json$/i',$host)) {
182
-        	//$formats[$id] = 'aircraftlistjson';
183
-        	$globalSources[$id]['format'] = 'aircraftlistjson';
184
-        	//$last_exec['aircraftlistjson'] = 0;
185
-        	if ($globalDebug) echo "Connect to aircraftlist.json source (".$host.")...\n";
186
-    	    } else if (preg_match('/aircraft.json$/i',$host)) {
187
-        	//$formats[$id] = 'aircraftjson';
188
-        	$globalSources[$id]['format'] = 'aircraftjson';
189
-        	//$last_exec['aircraftlistjson'] = 0;
190
-        	if ($globalDebug) echo "Connect to aircraft.json source (".$host.")...\n";
191
-    	    } else if (preg_match('/aircraft$/i',$host)) {
192
-        	//$formats[$id] = 'planefinderclient';
193
-        	$globalSources[$id]['format'] = 'planefinderclient';
194
-        	//$last_exec['aircraftlistjson'] = 0;
195
-        	if ($globalDebug) echo "Connect to planefinderclient source (".$host.")...\n";
196
-    	    } else if (preg_match('/opensky/i',$host)) {
197
-        	//$formats[$id] = 'aircraftlistjson';
198
-        	$globalSources[$id]['format'] = 'opensky';
199
-        	//$last_exec['aircraftlistjson'] = 0;
200
-        	if ($globalDebug) echo "Connect to opensky source (".$host.")...\n";
201
-    	    /*
171
+			if (preg_match('/deltadb.txt$/i',$host)) {
172
+			//$formats[$id] = 'deltadbtxt';
173
+			$globalSources[$id]['format'] = 'deltadbtxt';
174
+			//$last_exec['deltadbtxt'] = 0;
175
+			if ($globalDebug) echo "Connect to deltadb source (".$host.")...\n";
176
+			} else if (preg_match('/vatsim-data.txt$/i',$host)) {
177
+			//$formats[$id] = 'vatsimtxt';
178
+			$globalSources[$id]['format'] = 'vatsimtxt';
179
+			//$last_exec['vatsimtxt'] = 0;
180
+			if ($globalDebug) echo "Connect to vatsim source (".$host.")...\n";
181
+			} else if (preg_match('/aircraftlist.json$/i',$host)) {
182
+			//$formats[$id] = 'aircraftlistjson';
183
+			$globalSources[$id]['format'] = 'aircraftlistjson';
184
+			//$last_exec['aircraftlistjson'] = 0;
185
+			if ($globalDebug) echo "Connect to aircraftlist.json source (".$host.")...\n";
186
+			} else if (preg_match('/aircraft.json$/i',$host)) {
187
+			//$formats[$id] = 'aircraftjson';
188
+			$globalSources[$id]['format'] = 'aircraftjson';
189
+			//$last_exec['aircraftlistjson'] = 0;
190
+			if ($globalDebug) echo "Connect to aircraft.json source (".$host.")...\n";
191
+			} else if (preg_match('/aircraft$/i',$host)) {
192
+			//$formats[$id] = 'planefinderclient';
193
+			$globalSources[$id]['format'] = 'planefinderclient';
194
+			//$last_exec['aircraftlistjson'] = 0;
195
+			if ($globalDebug) echo "Connect to planefinderclient source (".$host.")...\n";
196
+			} else if (preg_match('/opensky/i',$host)) {
197
+			//$formats[$id] = 'aircraftlistjson';
198
+			$globalSources[$id]['format'] = 'opensky';
199
+			//$last_exec['aircraftlistjson'] = 0;
200
+			if ($globalDebug) echo "Connect to opensky source (".$host.")...\n";
201
+			/*
202 202
     	    // Disabled for now, site change source format
203 203
     	    } else if (preg_match('/radarvirtuel.com\/list_aircrafts$/i',$host)) {
204 204
         	//$formats[$id] = 'radarvirtueljson';
@@ -210,131 +210,131 @@  discard block
 block discarded – undo
210 210
         	    exit(0);
211 211
         	}
212 212
     	    */
213
-    	    } else if (preg_match('/planeUpdateFAA.php$/i',$host)) {
214
-        	//$formats[$id] = 'planeupdatefaa';
215
-        	$globalSources[$id]['format'] = 'planeupdatefaa';
216
-        	//$last_exec['planeupdatefaa'] = 0;
217
-        	if ($globalDebug) echo "Connect to planeUpdateFAA.php source (".$host.")...\n";
218
-        	if (!isset($globalSourcesRights) || (isset($globalSourcesRights) && !$globalSourcesRights)) {
219
-        	    echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
220
-        	    exit(0);
221
-        	}
222
-            } else if (preg_match('/\/action.php\/acars\/data$/i',$host)) {
223
-        	//$formats[$id] = 'phpvmacars';
224
-        	$globalSources[$id]['format'] = 'phpvmacars';
225
-        	//$last_exec['phpvmacars'] = 0;
226
-        	if ($globalDebug) echo "Connect to phpvmacars source (".$host.")...\n";
227
-            } else if (preg_match('/\/api\/v1\/acars\/data$/i',$host)) {
228
-        	//$formats[$id] = 'phpvmacars';
229
-        	$globalSources[$id]['format'] = 'vaos';
230
-        	//$last_exec['phpvmacars'] = 0;
231
-        	if ($globalDebug) echo "Connect to vaos source (".$host.")...\n";
232
-            } else if (preg_match('/VAM-json.php$/i',$host)) {
233
-        	//$formats[$id] = 'phpvmacars';
234
-        	$globalSources[$id]['format'] = 'vam';
235
-        	if ($globalDebug) echo "Connect to Vam source (".$host.")...\n";
236
-            } else if (preg_match('/whazzup/i',$host)) {
237
-        	//$formats[$id] = 'whazzup';
238
-        	$globalSources[$id]['format'] = 'whazzup';
239
-        	//$last_exec['whazzup'] = 0;
240
-        	if ($globalDebug) echo "Connect to whazzup source (".$host.")...\n";
241
-            } else if (preg_match('/blitzortung/i',$host)) {
242
-        	$globalSources[$id]['format'] = 'blitzortung';
243
-        	if ($globalDebug) echo "Connect to blitzortung source (".$host.")...\n";
244
-            } else if (preg_match('/airwhere/i',$host)) {
245
-        	$globalSources[$id]['format'] = 'airwhere';
246
-        	if ($globalDebug) echo "Connect to airwhere source (".$host.")...\n";
247
-            } else if (preg_match('/recentpireps/i',$host)) {
248
-        	//$formats[$id] = 'pirepsjson';
249
-        	$globalSources[$id]['format'] = 'pirepsjson';
250
-        	//$last_exec['pirepsjson'] = 0;
251
-        	if ($globalDebug) echo "Connect to pirepsjson source (".$host.")...\n";
252
-            } else if (preg_match(':data.fr24.com/zones/fcgi/feed.js:i',$host)) {
253
-        	//$formats[$id] = 'fr24json';
254
-        	$globalSources[$id]['format'] = 'fr24json';
255
-        	//$last_exec['fr24json'] = 0;
256
-        	if ($globalDebug) echo "Connect to fr24 source (".$host.")...\n";
257
-        	if (!isset($globalSourcesRights) || (isset($globalSourcesRights) && !$globalSourcesRights)) {
258
-        	    echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
259
-        	    exit(0);
260
-        	}
261
-            } else if (preg_match(':myshiptracking.com/:i',$host)) {
262
-        	//$formats[$id] = 'fr24json';
263
-        	$globalSources[$id]['format'] = 'myshiptracking';
264
-        	//$last_exec['fr24json'] = 0;
265
-        	if ($globalDebug) echo "Connect to myshiptracking source (".$host.")...\n";
266
-        	if (!isset($globalSourcesRights) || (isset($globalSourcesRights) && !$globalSourcesRights)) {
267
-        	    echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
268
-        	    exit(0);
269
-        	}
270
-            //} else if (preg_match('/10001/',$host)) {
271
-            } else if (preg_match('/10001/',$host) || (isset($globalSources[$id]['port']) && $globalSources[$id]['port'] == '10001')) {
272
-        	//$formats[$id] = 'tsv';
273
-        	$globalSources[$id]['format'] = 'tsv';
274
-        	if ($globalDebug) echo "Connect to tsv source (".$host.")...\n";
275
-            }
276
-        } elseif (filter_var($host,FILTER_VALIDATE_URL) || (isset($globalSources[$id]['format']) && $globalSources[$id]['format'] == 'sailaway') || (isset($globalSources[$id]['format']) && $globalSources[$id]['format'] == 'sailawayfull') || (isset($globalSources[$id]['format']) && $globalSources[$id]['format'] == 'acarsjson')) {
277
-    		if ($globalSources[$id]['format'] == 'aisnmeahttp' || $globalSources[$id]['format'] == 'acarsjson') {
278
-    		    $idf = fopen($globalSources[$id]['host'],'r',false,$context);
279
-    		    if ($idf !== false) {
280
-    			$httpfeeds[$id] = $idf;
281
-        		if ($globalDebug) echo "Connected to ".$globalSources[$id]['format']." source (".$host.")...\n";
282
-    		    } elseif ($globalDebug) echo "Can't connect to ".$globalSources[$id]['host']."\n";
283
-    		} elseif ($globalDebug && isset($globalSources[$id]['format']) && $globalSources[$id]['format'] == 'sailaway') echo "Connect to ".$globalSources[$id]['format']." source (sailaway)...\n";
284
-    		elseif ($globalDebug && isset($globalSources[$id]['format']) && $globalSources[$id]['format'] == 'sailawayfull') echo "Connect to ".$globalSources[$id]['format']." source (sailawayfull)...\n";
285
-    		elseif ($globalDebug) echo "Connect to ".$globalSources[$id]['format']." source (".$host.")...\n";
286
-        } elseif (!filter_var($host,FILTER_VALIDATE_URL)) {
287
-	    $hostport = explode(':',$host);
288
-	    if (isset($hostport[1])) {
213
+			} else if (preg_match('/planeUpdateFAA.php$/i',$host)) {
214
+			//$formats[$id] = 'planeupdatefaa';
215
+			$globalSources[$id]['format'] = 'planeupdatefaa';
216
+			//$last_exec['planeupdatefaa'] = 0;
217
+			if ($globalDebug) echo "Connect to planeUpdateFAA.php source (".$host.")...\n";
218
+			if (!isset($globalSourcesRights) || (isset($globalSourcesRights) && !$globalSourcesRights)) {
219
+				echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
220
+				exit(0);
221
+			}
222
+			} else if (preg_match('/\/action.php\/acars\/data$/i',$host)) {
223
+			//$formats[$id] = 'phpvmacars';
224
+			$globalSources[$id]['format'] = 'phpvmacars';
225
+			//$last_exec['phpvmacars'] = 0;
226
+			if ($globalDebug) echo "Connect to phpvmacars source (".$host.")...\n";
227
+			} else if (preg_match('/\/api\/v1\/acars\/data$/i',$host)) {
228
+			//$formats[$id] = 'phpvmacars';
229
+			$globalSources[$id]['format'] = 'vaos';
230
+			//$last_exec['phpvmacars'] = 0;
231
+			if ($globalDebug) echo "Connect to vaos source (".$host.")...\n";
232
+			} else if (preg_match('/VAM-json.php$/i',$host)) {
233
+			//$formats[$id] = 'phpvmacars';
234
+			$globalSources[$id]['format'] = 'vam';
235
+			if ($globalDebug) echo "Connect to Vam source (".$host.")...\n";
236
+			} else if (preg_match('/whazzup/i',$host)) {
237
+			//$formats[$id] = 'whazzup';
238
+			$globalSources[$id]['format'] = 'whazzup';
239
+			//$last_exec['whazzup'] = 0;
240
+			if ($globalDebug) echo "Connect to whazzup source (".$host.")...\n";
241
+			} else if (preg_match('/blitzortung/i',$host)) {
242
+			$globalSources[$id]['format'] = 'blitzortung';
243
+			if ($globalDebug) echo "Connect to blitzortung source (".$host.")...\n";
244
+			} else if (preg_match('/airwhere/i',$host)) {
245
+			$globalSources[$id]['format'] = 'airwhere';
246
+			if ($globalDebug) echo "Connect to airwhere source (".$host.")...\n";
247
+			} else if (preg_match('/recentpireps/i',$host)) {
248
+			//$formats[$id] = 'pirepsjson';
249
+			$globalSources[$id]['format'] = 'pirepsjson';
250
+			//$last_exec['pirepsjson'] = 0;
251
+			if ($globalDebug) echo "Connect to pirepsjson source (".$host.")...\n";
252
+			} else if (preg_match(':data.fr24.com/zones/fcgi/feed.js:i',$host)) {
253
+			//$formats[$id] = 'fr24json';
254
+			$globalSources[$id]['format'] = 'fr24json';
255
+			//$last_exec['fr24json'] = 0;
256
+			if ($globalDebug) echo "Connect to fr24 source (".$host.")...\n";
257
+			if (!isset($globalSourcesRights) || (isset($globalSourcesRights) && !$globalSourcesRights)) {
258
+				echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
259
+				exit(0);
260
+			}
261
+			} else if (preg_match(':myshiptracking.com/:i',$host)) {
262
+			//$formats[$id] = 'fr24json';
263
+			$globalSources[$id]['format'] = 'myshiptracking';
264
+			//$last_exec['fr24json'] = 0;
265
+			if ($globalDebug) echo "Connect to myshiptracking source (".$host.")...\n";
266
+			if (!isset($globalSourcesRights) || (isset($globalSourcesRights) && !$globalSourcesRights)) {
267
+				echo '!!! You MUST set $globalSourcesRights = TRUE in settings.php if you have the right to use this feed !!!'."\n";
268
+				exit(0);
269
+			}
270
+			//} else if (preg_match('/10001/',$host)) {
271
+			} else if (preg_match('/10001/',$host) || (isset($globalSources[$id]['port']) && $globalSources[$id]['port'] == '10001')) {
272
+			//$formats[$id] = 'tsv';
273
+			$globalSources[$id]['format'] = 'tsv';
274
+			if ($globalDebug) echo "Connect to tsv source (".$host.")...\n";
275
+			}
276
+		} elseif (filter_var($host,FILTER_VALIDATE_URL) || (isset($globalSources[$id]['format']) && $globalSources[$id]['format'] == 'sailaway') || (isset($globalSources[$id]['format']) && $globalSources[$id]['format'] == 'sailawayfull') || (isset($globalSources[$id]['format']) && $globalSources[$id]['format'] == 'acarsjson')) {
277
+			if ($globalSources[$id]['format'] == 'aisnmeahttp' || $globalSources[$id]['format'] == 'acarsjson') {
278
+				$idf = fopen($globalSources[$id]['host'],'r',false,$context);
279
+				if ($idf !== false) {
280
+				$httpfeeds[$id] = $idf;
281
+				if ($globalDebug) echo "Connected to ".$globalSources[$id]['format']." source (".$host.")...\n";
282
+				} elseif ($globalDebug) echo "Can't connect to ".$globalSources[$id]['host']."\n";
283
+			} elseif ($globalDebug && isset($globalSources[$id]['format']) && $globalSources[$id]['format'] == 'sailaway') echo "Connect to ".$globalSources[$id]['format']." source (sailaway)...\n";
284
+			elseif ($globalDebug && isset($globalSources[$id]['format']) && $globalSources[$id]['format'] == 'sailawayfull') echo "Connect to ".$globalSources[$id]['format']." source (sailawayfull)...\n";
285
+			elseif ($globalDebug) echo "Connect to ".$globalSources[$id]['format']." source (".$host.")...\n";
286
+		} elseif (!filter_var($host,FILTER_VALIDATE_URL)) {
287
+		$hostport = explode(':',$host);
288
+		if (isset($hostport[1])) {
289 289
 		$port = $hostport[1];
290 290
 		$hostn = $hostport[0];
291
-	    } else {
291
+		} else {
292 292
 		$port = $globalSources[$id]['port'];
293 293
 		$hostn = $globalSources[$id]['host'];
294
-	    }
295
-	    $Common = new Common();
296
-	    if (!isset($globalSources[$id]['format']) || ($globalSources[$id]['format'] != 'acarsjsonudp' && $globalSources[$id]['format'] != 'acars' && $globalSources[$id]['format'] != 'flightgearsp')) {
297
-        	$s = $Common->create_socket($hostn,$port, $errno, $errstr);
298
-    	    } else {
299
-    		$udp = true;
300
-        	$s = $Common->create_socket_udp($hostn,$port, $errno, $errstr);
301
-	    }
302
-	    if ($s) {
303
-    	        $sockets[$id] = $s;
304
-    	        if (!isset($globalSources[$id]['format']) || strtolower($globalSources[$id]['format']) == 'auto') {
305
-		    if (preg_match('/aprs/',$hostn) || $port == '10152' || $port == '14580') {
294
+		}
295
+		$Common = new Common();
296
+		if (!isset($globalSources[$id]['format']) || ($globalSources[$id]['format'] != 'acarsjsonudp' && $globalSources[$id]['format'] != 'acars' && $globalSources[$id]['format'] != 'flightgearsp')) {
297
+			$s = $Common->create_socket($hostn,$port, $errno, $errstr);
298
+			} else {
299
+			$udp = true;
300
+			$s = $Common->create_socket_udp($hostn,$port, $errno, $errstr);
301
+		}
302
+		if ($s) {
303
+				$sockets[$id] = $s;
304
+				if (!isset($globalSources[$id]['format']) || strtolower($globalSources[$id]['format']) == 'auto') {
305
+			if (preg_match('/aprs/',$hostn) || $port == '10152' || $port == '14580') {
306 306
 			//$formats[$id] = 'aprs';
307 307
 			$globalSources[$id]['format'] = 'aprs';
308 308
 			//$aprs_connect = 0;
309 309
 			//$use_aprs = true;
310
-		    } elseif (preg_match('/pub-vrs/',$hostn) || $port == '32001' || $port == '32005' || $port == '32010' || $port == '32015' || $port == '32030') {
310
+			} elseif (preg_match('/pub-vrs/',$hostn) || $port == '32001' || $port == '32005' || $port == '32010' || $port == '32015' || $port == '32030') {
311 311
 			$globalSources[$id]['format'] = 'vrstcp';
312
-    		    } elseif ($port == '10001') {
313
-        		//$formats[$id] = 'tsv';
314
-        		$globalSources[$id]['format'] = 'tsv';
315
-		    } elseif ($port == '30002') {
316
-        		//$formats[$id] = 'raw';
317
-        		$globalSources[$id]['format'] = 'raw';
318
-		    } elseif ($port == '5001') {
319
-        		//$formats[$id] = 'raw';
320
-        		$globalSources[$id]['format'] = 'flightgearmp';
321
-		    } elseif ($port == '30005') {
312
+				} elseif ($port == '10001') {
313
+				//$formats[$id] = 'tsv';
314
+				$globalSources[$id]['format'] = 'tsv';
315
+			} elseif ($port == '30002') {
316
+				//$formats[$id] = 'raw';
317
+				$globalSources[$id]['format'] = 'raw';
318
+			} elseif ($port == '5001') {
319
+				//$formats[$id] = 'raw';
320
+				$globalSources[$id]['format'] = 'flightgearmp';
321
+			} elseif ($port == '30005') {
322 322
 			// Not yet supported
323
-        		//$formats[$id] = 'beast';
324
-        		$globalSources[$id]['format'] = 'beast';
325
-		    //} else $formats[$id] = 'sbs';
326
-		    } else $globalSources[$id]['format'] = 'sbs';
327
-		    //if ($globalDebug) echo 'Connection in progress to '.$host.'('.$formats[$id].')....'."\n";
323
+				//$formats[$id] = 'beast';
324
+				$globalSources[$id]['format'] = 'beast';
325
+			//} else $formats[$id] = 'sbs';
326
+			} else $globalSources[$id]['format'] = 'sbs';
327
+			//if ($globalDebug) echo 'Connection in progress to '.$host.'('.$formats[$id].')....'."\n";
328 328
 		}
329 329
 		if ($globalDebug && $udp) echo 'Listening in UDP from '.$hostn.':'.$port.' ('.$globalSources[$id]['format'].')....'."\n";
330 330
 		elseif ($globalDebug) echo 'Connection in progress to '.$hostn.':'.$port.' ('.$globalSources[$id]['format'].')....'."\n";
331
-            } else {
331
+			} else {
332 332
 		if ($globalDebug) echo 'Connection failed to '.$hostn.':'.$port.' : '.$errno.' '.$errstr."\n";
333 333
 		sleep(10);
334 334
 		connect_all($hosts);
335
-    	    }
336
-        }
337
-    }
335
+			}
336
+		}
337
+	}
338 338
 }
339 339
 if (!isset($globalMinFetch)) $globalMinFetch = 15;
340 340
 
@@ -357,9 +357,9 @@  discard block
 block discarded – undo
357 357
 //connect_all($globalSources);
358 358
 
359 359
 if (isset($globalProxy) && $globalProxy) {
360
-    $context = stream_context_create(array('http' => array('timeout' => $timeout,'proxy' => $globalProxy,'request_fulluri' => true)));
360
+	$context = stream_context_create(array('http' => array('timeout' => $timeout,'proxy' => $globalProxy,'request_fulluri' => true)));
361 361
 } else {
362
-    $context = stream_context_create(array('http' => array('timeout' => $timeout)));
362
+	$context = stream_context_create(array('http' => array('timeout' => $timeout)));
363 363
 }
364 364
 
365 365
 // APRS Configuration
@@ -368,21 +368,21 @@  discard block
 block discarded – undo
368 368
 	die;
369 369
 }
370 370
 foreach ($globalSources as $key => $source) {
371
-    if (!isset($source['format'])) {
372
-        $globalSources[$key]['format'] = 'auto';
373
-    }
374
-    if (isset($source['callback']) && $source['callback'] === TRUE) {
375
-        unset($globalSources[$key]);
376
-    }
371
+	if (!isset($source['format'])) {
372
+		$globalSources[$key]['format'] = 'auto';
373
+	}
374
+	if (isset($source['callback']) && $source['callback'] === TRUE) {
375
+		unset($globalSources[$key]);
376
+	}
377 377
 }
378 378
 connect_all($globalSources);
379 379
 foreach ($globalSources as $key => $source) {
380
-    if (isset($source['format']) && $source['format'] == 'aprs') {
380
+	if (isset($source['format']) && $source['format'] == 'aprs') {
381 381
 	$aprs_connect = 0;
382 382
 	$use_aprs = true;
383 383
 	if (isset($source['port']) && $source['port'] == '10152') $aprs_full = true;
384 384
 	break;
385
-    }
385
+	}
386 386
 }
387 387
 
388 388
 if ($use_aprs) {
@@ -423,173 +423,173 @@  discard block
 block discarded – undo
423 423
 
424 424
 // Infinite loop if daemon, else work for time defined in $globalCronEnd or only one time.
425 425
 while ($i > 0) {
426
-    if (function_exists('pcntl_fork')) pcntl_signal_dispatch();
426
+	if (function_exists('pcntl_fork')) pcntl_signal_dispatch();
427 427
 
428
-    if (!$globalDaemon) $i = $endtime-time();
429
-    // Delete old ATC
430
-    if ($globalDaemon && ((isset($globalVA) && $globalVA) || (isset($globalIVAO) && $globalIVAO) || (isset($globalVATSIM) && $globalVATSIM))) {
428
+	if (!$globalDaemon) $i = $endtime-time();
429
+	// Delete old ATC
430
+	if ($globalDaemon && ((isset($globalVA) && $globalVA) || (isset($globalIVAO) && $globalIVAO) || (isset($globalVATSIM) && $globalVATSIM))) {
431 431
 	if ($globalDebug) echo 'Delete old ATC...'."\n";
432
-        $ATC->deleteOldATC();
433
-    }
432
+		$ATC->deleteOldATC();
433
+	}
434 434
     
435
-    if (count($last_exec) == count($globalSources)) {
435
+	if (count($last_exec) == count($globalSources)) {
436 436
 	$max = $globalMinFetch;
437 437
 	foreach ($last_exec as $last) {
438
-	    if ((time() - $last['last']) < $max) $max = time() - $last['last'];
438
+		if ((time() - $last['last']) < $max) $max = time() - $last['last'];
439 439
 	}
440 440
 	if ($max < $globalMinFetch) {
441
-	    if ($globalDebug) echo 'Sleeping...'."\n";
442
-	    sleep($globalMinFetch-$max+2);
441
+		if ($globalDebug) echo 'Sleeping...'."\n";
442
+		sleep($globalMinFetch-$max+2);
443
+	}
443 444
 	}
444
-    }
445 445
 
446 446
     
447
-    //foreach ($formats as $id => $value) {
448
-    foreach ($globalSources as $id => $value) {
447
+	//foreach ($formats as $id => $value) {
448
+	foreach ($globalSources as $id => $value) {
449 449
 	date_default_timezone_set('UTC');
450 450
 	//if ($globalDebug) echo 'Source host : '.$value['host'].' - Source format: '.$value['format']."\n";
451 451
 	if (!isset($last_exec[$id]['last'])) $last_exec[$id]['last'] = 0;
452 452
 	if ($value['format'] === 'deltadbtxt' && 
453
-	    (
453
+		(
454 454
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
455 455
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
456
-	    )
456
+		)
457 457
 	) {
458
-        //$buffer = $Common->getData($hosts[$id]);
459
-        $buffer = $Common->getData($value['host']);
460
-        if ($buffer != '') $reset = 0;
461
-        $buffer = trim(str_replace(array("\r\n", "\r", "\n", "\\r", "\\n", "\\r\\n"), '\n', $buffer));
462
-        $buffer = explode('\n', $buffer);
463
-        foreach ($buffer as $line) {
464
-            if ($line != '' && count($line) > 7) {
465
-                $line = explode(',', $line);
466
-                $data = array();
467
-                $data['hex'] = $line[1]; // hex
468
-                $data['ident'] = $line[2]; // ident
469
-                if (isset($line[3])) $data['altitude'] = $line[3]; // altitude
470
-                if (isset($line[4])) $data['speed'] = $line[4]; // speed
471
-                if (isset($line[5])) $data['heading'] = $line[5]; // heading
472
-                if (isset($line[6])) $data['latitude'] = $line[6]; // lat
473
-                if (isset($line[7])) $data['longitude'] = $line[7]; // long
474
-                $data['verticalrate'] = ''; // vertical rate
475
-                //if (isset($line[9])) $data['squawk'] = $line[9]; // squawk
476
-                $data['emergency'] = ''; // emergency
477
-                $data['datetime'] = date('Y-m-d H:i:s');
478
-                $data['format_source'] = 'deltadbtxt';
479
-                $data['id_source'] = $id_source;
480
-                if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
481
-                if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
482
-                if (isset($value['sourcestats'])) $data['sourcestats'] = $value['sourcestats'];
483
-                $SI->add($data);
484
-                unset($data);
485
-            }
486
-        }
487
-        $last_exec[$id]['last'] = time();
488
-    } elseif ($value['format'] === 'radarcapejson' &&
489
-            (
490
-                (isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) ||
491
-                (!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
492
-            )
493
-        ) {
494
-            //$buffer = $Common->getData($hosts[$id]);
495
-            $buffer = $Common->getData($value['host']);
496
-            if ($buffer != '') {
497
-                $all_data = json_decode($buffer,true);
498
-                foreach ($all_data as $line) {
499
-                    $data = array();
500
-                    $data['datetime'] = date('Y-m-d H:i:s',$line['uti']);
501
-                    $data['hex'] = $line['hex']; // hex
502
-                    $data['ident'] = $line['fli']; // ident
503
-                    $data['altitude'] = $line['alt']; // altitude
504
-                    $data['speed'] = $line['spd']; // speed
505
-                    $data['heading'] = $line['trk']; // heading
506
-                    $data['latitude'] = $line['lat']; // lat
507
-                    $data['longitude'] = $line['lon']; // long
508
-                    $data['verticalrate'] = $line['vrt']; // vertical rate
509
-                    $data['squawk'] = $line['squ']; // squawk
510
-                    $data['ground'] = $line['gda']; // ground
511
-                    $data['registration'] = $line['reg'];
512
-                    //$data['emergency'] = ''; // emergency
513
-                    $data['datetime'] = date('Y-m-d H:i:s');
514
-                    $data['format_source'] = 'radarcapejson';
515
-                    $data['id_source'] = $id_source;
516
-                    if (isset($value['name']) && $value['name'] != '') {
517
-                        if (isset($line['src']) && !$line['src'] == 'M') $data['source_name'] = $value['name'].'_MLAT';
518
-                        else $data['source_name'] = $value['name'];
519
-                    } elseif (isset($line['src']) && $line['src'] == 'M') $data['source_name'] = 'MLAT';
520
-                    if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
521
-                    if (isset($value['sourcestats'])) $data['sourcestats'] = $value['sourcestats'];
458
+		//$buffer = $Common->getData($hosts[$id]);
459
+		$buffer = $Common->getData($value['host']);
460
+		if ($buffer != '') $reset = 0;
461
+		$buffer = trim(str_replace(array("\r\n", "\r", "\n", "\\r", "\\n", "\\r\\n"), '\n', $buffer));
462
+		$buffer = explode('\n', $buffer);
463
+		foreach ($buffer as $line) {
464
+			if ($line != '' && count($line) > 7) {
465
+				$line = explode(',', $line);
466
+				$data = array();
467
+				$data['hex'] = $line[1]; // hex
468
+				$data['ident'] = $line[2]; // ident
469
+				if (isset($line[3])) $data['altitude'] = $line[3]; // altitude
470
+				if (isset($line[4])) $data['speed'] = $line[4]; // speed
471
+				if (isset($line[5])) $data['heading'] = $line[5]; // heading
472
+				if (isset($line[6])) $data['latitude'] = $line[6]; // lat
473
+				if (isset($line[7])) $data['longitude'] = $line[7]; // long
474
+				$data['verticalrate'] = ''; // vertical rate
475
+				//if (isset($line[9])) $data['squawk'] = $line[9]; // squawk
476
+				$data['emergency'] = ''; // emergency
477
+				$data['datetime'] = date('Y-m-d H:i:s');
478
+				$data['format_source'] = 'deltadbtxt';
479
+				$data['id_source'] = $id_source;
480
+				if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
481
+				if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
482
+				if (isset($value['sourcestats'])) $data['sourcestats'] = $value['sourcestats'];
483
+				$SI->add($data);
484
+				unset($data);
485
+			}
486
+		}
487
+		$last_exec[$id]['last'] = time();
488
+	} elseif ($value['format'] === 'radarcapejson' &&
489
+			(
490
+				(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) ||
491
+				(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
492
+			)
493
+		) {
494
+			//$buffer = $Common->getData($hosts[$id]);
495
+			$buffer = $Common->getData($value['host']);
496
+			if ($buffer != '') {
497
+				$all_data = json_decode($buffer,true);
498
+				foreach ($all_data as $line) {
499
+					$data = array();
500
+					$data['datetime'] = date('Y-m-d H:i:s',$line['uti']);
501
+					$data['hex'] = $line['hex']; // hex
502
+					$data['ident'] = $line['fli']; // ident
503
+					$data['altitude'] = $line['alt']; // altitude
504
+					$data['speed'] = $line['spd']; // speed
505
+					$data['heading'] = $line['trk']; // heading
506
+					$data['latitude'] = $line['lat']; // lat
507
+					$data['longitude'] = $line['lon']; // long
508
+					$data['verticalrate'] = $line['vrt']; // vertical rate
509
+					$data['squawk'] = $line['squ']; // squawk
510
+					$data['ground'] = $line['gda']; // ground
511
+					$data['registration'] = $line['reg'];
512
+					//$data['emergency'] = ''; // emergency
513
+					$data['datetime'] = date('Y-m-d H:i:s');
514
+					$data['format_source'] = 'radarcapejson';
515
+					$data['id_source'] = $id_source;
516
+					if (isset($value['name']) && $value['name'] != '') {
517
+						if (isset($line['src']) && !$line['src'] == 'M') $data['source_name'] = $value['name'].'_MLAT';
518
+						else $data['source_name'] = $value['name'];
519
+					} elseif (isset($line['src']) && $line['src'] == 'M') $data['source_name'] = 'MLAT';
520
+					if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
521
+					if (isset($value['sourcestats'])) $data['sourcestats'] = $value['sourcestats'];
522 522
 
523
-                    $SI->add($data);
524
-                    unset($data);
525
-                }
526
-            }
527
-            $last_exec[$id]['last'] = time();
523
+					$SI->add($data);
524
+					unset($data);
525
+				}
526
+			}
527
+			$last_exec[$id]['last'] = time();
528 528
 	} elseif ($value['format'] === 'aisnmeatxt' && 
529
-	    (
529
+		(
530 530
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
531 531
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch*3))
532
-	    )
532
+		)
533 533
 	) {
534
-	    date_default_timezone_set('CET');
535
-	    $buffer = $Common->getData(str_replace('{date}',date('Ymd'),$value['host']));
536
-	    date_default_timezone_set('UTC');
537
-	    if ($buffer != '') $reset = 0;
538
-    	    $buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
539
-	    $buffer = explode('\n',$buffer);
540
-	    foreach ($buffer as $line) {
534
+		date_default_timezone_set('CET');
535
+		$buffer = $Common->getData(str_replace('{date}',date('Ymd'),$value['host']));
536
+		date_default_timezone_set('UTC');
537
+		if ($buffer != '') $reset = 0;
538
+			$buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
539
+		$buffer = explode('\n',$buffer);
540
+		foreach ($buffer as $line) {
541 541
 		if ($line != '') {
542
-		    //echo "'".$line."'\n";
543
-		    $add = false;
544
-		    $ais_data = $AIS->parse_line(trim($line));
545
-		    $data = array();
546
-		    if (isset($ais_data['ident'])) $data['ident'] = $ais_data['ident'];
547
-		    if (isset($ais_data['mmsi'])) $data['mmsi'] = substr($ais_data['mmsi'],-9);
548
-		    if (isset($ais_data['speed'])) $data['speed'] = $ais_data['speed'];
549
-		    if (isset($ais_data['heading'])) $data['heading'] = $ais_data['heading'];
550
-		    if (isset($ais_data['latitude'])) $data['latitude'] = $ais_data['latitude'];
551
-		    if (isset($ais_data['longitude'])) $data['longitude'] = $ais_data['longitude'];
552
-		    if (isset($ais_data['status'])) $data['status'] = $ais_data['status'];
553
-		    if (isset($ais_data['statusid'])) $data['status_id'] = $ais_data['statusid'];
554
-		    if (isset($ais_data['type'])) $data['type'] = $ais_data['type'];
555
-		    if (isset($ais_data['typeid'])) $data['type_id'] = $ais_data['typeid'];
556
-		    if (isset($ais_data['imo'])) $data['imo'] = $ais_data['imo'];
557
-		    if (isset($ais_data['callsign'])) $data['callsign'] = $ais_data['callsign'];
558
-		    if (isset($ais_data['timestamp'])) {
542
+			//echo "'".$line."'\n";
543
+			$add = false;
544
+			$ais_data = $AIS->parse_line(trim($line));
545
+			$data = array();
546
+			if (isset($ais_data['ident'])) $data['ident'] = $ais_data['ident'];
547
+			if (isset($ais_data['mmsi'])) $data['mmsi'] = substr($ais_data['mmsi'],-9);
548
+			if (isset($ais_data['speed'])) $data['speed'] = $ais_data['speed'];
549
+			if (isset($ais_data['heading'])) $data['heading'] = $ais_data['heading'];
550
+			if (isset($ais_data['latitude'])) $data['latitude'] = $ais_data['latitude'];
551
+			if (isset($ais_data['longitude'])) $data['longitude'] = $ais_data['longitude'];
552
+			if (isset($ais_data['status'])) $data['status'] = $ais_data['status'];
553
+			if (isset($ais_data['statusid'])) $data['status_id'] = $ais_data['statusid'];
554
+			if (isset($ais_data['type'])) $data['type'] = $ais_data['type'];
555
+			if (isset($ais_data['typeid'])) $data['type_id'] = $ais_data['typeid'];
556
+			if (isset($ais_data['imo'])) $data['imo'] = $ais_data['imo'];
557
+			if (isset($ais_data['callsign'])) $data['callsign'] = $ais_data['callsign'];
558
+			if (isset($ais_data['timestamp'])) {
559 559
 			$data['datetime'] = date('Y-m-d H:i:s',$ais_data['timestamp']);
560 560
 			if (!isset($last_exec[$id]['timestamp']) || $ais_data['timestamp'] >= $last_exec[$id]['timestamp']) {
561
-			    $last_exec[$id]['timestamp'] = $ais_data['timestamp'];
562
-			    $add = true;
561
+				$last_exec[$id]['timestamp'] = $ais_data['timestamp'];
562
+				$add = true;
563 563
 			}
564
-		    } else {
564
+			} else {
565 565
 			$data['datetime'] = date('Y-m-d H:i:s');
566 566
 			$add = true;
567
-		    }
568
-		    $data['format_source'] = 'aisnmeatxt';
569
-    		    $data['id_source'] = $id_source;
570
-		    //print_r($data);
571
-		    if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
572
-		    if ($add && isset($ais_data['mmsi_type']) && $ais_data['mmsi_type'] === 'Ship') $MI->add($data);
573
-		    unset($data);
567
+			}
568
+			$data['format_source'] = 'aisnmeatxt';
569
+				$data['id_source'] = $id_source;
570
+			//print_r($data);
571
+			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
572
+			if ($add && isset($ais_data['mmsi_type']) && $ais_data['mmsi_type'] === 'Ship') $MI->add($data);
573
+			unset($data);
574 574
 		}
575
-    	    }
576
-    	    $last_exec[$id]['last'] = time();
575
+			}
576
+			$last_exec[$id]['last'] = time();
577 577
 	} elseif ($value['format'] === 'aisnmeahttp') {
578
-	    $arr = $httpfeeds;
579
-	    $w = $e = null;
578
+		$arr = $httpfeeds;
579
+		$w = $e = null;
580 580
 	    
581
-	    if (isset($arr[$id])) {
581
+		if (isset($arr[$id])) {
582 582
 		$nn = stream_select($arr,$w,$e,$timeout);
583 583
 		if ($nn > 0) {
584
-		    foreach ($httpfeeds as $feed) {
584
+			foreach ($httpfeeds as $feed) {
585 585
 			$buffer = stream_get_line($feed,2000,"\n");
586 586
 			if ($buffer === FALSE) {
587
-			    connect_all($globalSources);
587
+				connect_all($globalSources);
588 588
 			}
589 589
 			$buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
590 590
 			$buffer = explode('\n',$buffer);
591 591
 			foreach ($buffer as $line) {
592
-			    if ($line != '') {
592
+				if ($line != '') {
593 593
 				$ais_data = $AIS->parse_line(trim($line));
594 594
 				$data = array();
595 595
 				if (isset($ais_data['ident'])) $data['ident'] = $ais_data['ident'];
@@ -607,117 +607,117 @@  discard block
 block discarded – undo
607 607
 				if (isset($ais_data['destination'])) $data['arrival_code'] = $ais_data['destination'];
608 608
 				if (isset($ais_data['eta_ts'])) $data['arrival_date'] = date('Y-m-d H:i:s',$ais_data['eta_ts']);
609 609
 				if (isset($ais_data['timestamp'])) {
610
-				    $data['datetime'] = date('Y-m-d H:i:s',$ais_data['timestamp']);
610
+					$data['datetime'] = date('Y-m-d H:i:s',$ais_data['timestamp']);
611 611
 				} else {
612
-				    $data['datetime'] = date('Y-m-d H:i:s');
612
+					$data['datetime'] = date('Y-m-d H:i:s');
613 613
 				}
614 614
 				$data['format_source'] = 'aisnmeahttp';
615 615
 				$data['id_source'] = $id_source;
616 616
 				if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
617 617
 				if (isset($ais_data['mmsi_type']) && $ais_data['mmsi_type'] === 'Ship') $MI->add($data);
618 618
 				unset($data);
619
-			    }
619
+				}
620
+			}
620 621
 			}
621
-		    }
622 622
 		} else {
623
-		    $format = $value['format'];
624
-		    if (isset($tt[$format])) $tt[$format]++;
625
-		    else $tt[$format] = 0;
626
-		    if ($tt[$format] > 30) {
623
+			$format = $value['format'];
624
+			if (isset($tt[$format])) $tt[$format]++;
625
+			else $tt[$format] = 0;
626
+			if ($tt[$format] > 30) {
627 627
 			if ($globalDebug) echo 'Reconnect...'."\n";
628 628
 			sleep(2);
629 629
 			//$sourceeen[] = $value;
630 630
 			//connect_all($sourceeen);
631 631
 			//$sourceeen = array();
632 632
 			connect_all($globalSources);
633
-		    }
633
+			}
634
+		}
634 635
 		}
635
-	    }
636 636
 	} elseif ($value['format'] === 'myshiptracking' && 
637
-	    (
637
+		(
638 638
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
639 639
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch*3))
640
-	    )
640
+		)
641 641
 	) {
642
-	    $buffer = $Common->getData($value['host'],'get','','','','','20');
643
-	    if ($buffer != '') {
642
+		$buffer = $Common->getData($value['host'],'get','','','','','20');
643
+		if ($buffer != '') {
644 644
 		//echo $buffer;
645 645
 		$all_data = json_decode($buffer,true);
646 646
 		//print_r($all_data);
647 647
 		if (isset($all_data[0]['DATA'])) {
648
-		    foreach ($all_data[0]['DATA'] as $line) {
648
+			foreach ($all_data[0]['DATA'] as $line) {
649 649
 			if ($line != '') {
650
-			    $data = array();
651
-			    $data['ident'] = $line['NAME'];
652
-			    $data['mmsi'] = $line['MMSI'];
653
-			    if (strlen($data['mmsi']) > 9) {
650
+				$data = array();
651
+				$data['ident'] = $line['NAME'];
652
+				$data['mmsi'] = $line['MMSI'];
653
+				if (strlen($data['mmsi']) > 9) {
654 654
 				$data['mmsi'] = substr($data['mmsi'],-9);
655
-			    }
656
-			    $data['speed'] = $line['SOG'];
657
-			    $data['heading'] = $line['COG'];
658
-			    $data['latitude'] = $line['LAT'];
659
-			    $data['longitude'] = $line['LNG'];
660
-			    //    if (isset($ais_data['type'])) $data['type'] = $ais_data['type'];
661
-			    //$data['type_id'] = $line['TYPE'];
662
-			    $data['imo'] = $line['IMO'];
663
-			    if ($line['DEST'] != '') $data['arrival_code'] = $line['DEST'];
664
-			    if ($line['ARV'] != '') $data['arrival_time'] = date('Y-m-d H:i:s',strtotime($line['ARV']));
665
-			    $data['datetime'] = date('Y-m-d H:i:s',$line['T']);
666
-			    $data['format_source'] = 'myshiptracking';
667
-			    $data['id_source'] = $id_source;
668
-			    if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
669
-			    $MI->add($data);
670
-			    unset($data);
655
+				}
656
+				$data['speed'] = $line['SOG'];
657
+				$data['heading'] = $line['COG'];
658
+				$data['latitude'] = $line['LAT'];
659
+				$data['longitude'] = $line['LNG'];
660
+				//    if (isset($ais_data['type'])) $data['type'] = $ais_data['type'];
661
+				//$data['type_id'] = $line['TYPE'];
662
+				$data['imo'] = $line['IMO'];
663
+				if ($line['DEST'] != '') $data['arrival_code'] = $line['DEST'];
664
+				if ($line['ARV'] != '') $data['arrival_time'] = date('Y-m-d H:i:s',strtotime($line['ARV']));
665
+				$data['datetime'] = date('Y-m-d H:i:s',$line['T']);
666
+				$data['format_source'] = 'myshiptracking';
667
+				$data['id_source'] = $id_source;
668
+				if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
669
+				$MI->add($data);
670
+				unset($data);
671
+			}
671 672
 			}
672
-		    }
673 673
 		}
674
-	    }
675
-	    $last_exec[$id]['last'] = time();
674
+		}
675
+		$last_exec[$id]['last'] = time();
676 676
 	} elseif ($value['format'] === 'boatbeaconapp' && 
677
-	    (
677
+		(
678 678
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
679 679
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch*3))
680
-	    )
680
+		)
681 681
 	) {
682
-	    $buffer = $Common->getData(str_replace('{timestamp}',time(),$value['host']));
683
-	    if ($buffer != '') {
682
+		$buffer = $Common->getData(str_replace('{timestamp}',time(),$value['host']));
683
+		if ($buffer != '') {
684 684
 		$all_data = json_decode($buffer,true);
685 685
 		if (isset($all_data[0]['mmsi'])) {
686
-		    foreach ($all_data as $line) {
686
+			foreach ($all_data as $line) {
687 687
 			if ($line != '') {
688
-			    $data = array();
689
-			    $data['ident'] = $line['shipname'];
690
-			    $data['callsign'] = $line['callsign'];
691
-			    $data['mmsi'] = substr($line['mmsi'],-9);
692
-			    $data['speed'] = $line['sog'];
693
-			    if ($line['heading'] != '511') $data['heading'] = $line['heading'];
694
-			    $data['latitude'] = $line['latitude'];
695
-			    $data['longitude'] = $line['longitude'];
696
-			    $data['type_id'] = $line['shiptype'];
697
-			    $data['arrival_code'] = $line['destination'];
698
-			    $data['datetime'] = $line['time'];
699
-			    $data['format_source'] = 'boatbeaconapp';
700
-			    $data['id_source'] = $id_source;
701
-			    if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
702
-			    $MI->add($data);
703
-			    unset($data);
688
+				$data = array();
689
+				$data['ident'] = $line['shipname'];
690
+				$data['callsign'] = $line['callsign'];
691
+				$data['mmsi'] = substr($line['mmsi'],-9);
692
+				$data['speed'] = $line['sog'];
693
+				if ($line['heading'] != '511') $data['heading'] = $line['heading'];
694
+				$data['latitude'] = $line['latitude'];
695
+				$data['longitude'] = $line['longitude'];
696
+				$data['type_id'] = $line['shiptype'];
697
+				$data['arrival_code'] = $line['destination'];
698
+				$data['datetime'] = $line['time'];
699
+				$data['format_source'] = 'boatbeaconapp';
700
+				$data['id_source'] = $id_source;
701
+				if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
702
+				$MI->add($data);
703
+				unset($data);
704
+			}
704 705
 			}
705
-		    }
706 706
 		}
707 707
 		
708
-	    }
709
-    	    $last_exec[$id]['last'] = time();
708
+		}
709
+			$last_exec[$id]['last'] = time();
710 710
 	} elseif ($value['format'] === 'boatnerd' && 
711
-	    (
711
+		(
712 712
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) ||
713 713
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch*3))
714
-	    )
714
+		)
715 715
 	) {
716
-	    $buffer = $Common->getData($value['host']);
717
-	    if ($buffer != '') {
716
+		$buffer = $Common->getData($value['host']);
717
+		if ($buffer != '') {
718 718
 		$all_data = json_decode($buffer,true);
719 719
 		if (isset($all_data['features'][0]['id'])) {
720
-		    foreach ($all_data['features'] as $line) {
720
+			foreach ($all_data['features'] as $line) {
721 721
 			print_r($line);
722 722
 			$data = array();
723 723
 			if (isset($line['properties']['name'])) $data['ident'] = $line['properties']['name'];
@@ -737,75 +737,75 @@  discard block
 block discarded – undo
737 737
 			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
738 738
 			if ($line['properties']['vesselType'] != 'Navigation Aid') $MI->add($data);
739 739
 			unset($data);
740
-		    }
740
+			}
741 741
 		}
742 742
 		
743
-	    }
744
-    	    $last_exec[$id]['last'] = time();
743
+		}
744
+			$last_exec[$id]['last'] = time();
745 745
 	} elseif ($value['format'] === 'shipplotter' && 
746
-	    (
746
+		(
747 747
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
748 748
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch*3))
749
-	    )
749
+		)
750 750
 	) {
751
-	    if ($globalDebug) echo 'download...';
752
-	    $buffer = $Common->getData($value['host'],'post',$value['post'],'','','','','ShipPlotter');
753
-	    if ($globalDebug) echo 'done !'."\n";
754
-	    // FIXME: Need more work
755
-	    if ($buffer != '') $reset = 0;
756
-    	    $buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
757
-	    $buffer = explode('\n',$buffer);
758
-	    foreach ($buffer as $line) {
751
+		if ($globalDebug) echo 'download...';
752
+		$buffer = $Common->getData($value['host'],'post',$value['post'],'','','','','ShipPlotter');
753
+		if ($globalDebug) echo 'done !'."\n";
754
+		// FIXME: Need more work
755
+		if ($buffer != '') $reset = 0;
756
+			$buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
757
+		$buffer = explode('\n',$buffer);
758
+		foreach ($buffer as $line) {
759 759
 		if ($line != '') {
760
-		    $data = array();
761
-		    //echo $line."\n";
762
-		    $data['mmsi'] = (int)substr($line,0,9);
763
-		    $data['datetime'] = date('Y-m-d H:i:s',substr($line,10,10));
764
-		    $data['status_id'] = substr($line,21,2);
765
-		    $data['type_id'] = substr($line,24,3);
766
-		    $data['latitude'] = substr($line,29,9);
767
-		    $data['longitude'] = substr($line,41,9);
768
-		    $data['speed'] = round(substr($line,51,5));
769
-		    //$data['course'] = substr($line,57,5);
770
-		    $data['heading'] = round(substr($line,63,3));
771
-		    //$data['draft'] = substr($line,67,4);
772
-		    //$data['length'] = substr($line,72,3);
773
-		    //$data['beam'] = substr($line,76,2);
774
-		    $data['ident'] = trim(utf8_encode(substr($line,78,20)));
775
-		    //$data['callsign'] = trim(substr($line,100,7);
776
-		    $data['arrival_code'] = substr($line,108,20);
777
-		    //$data['etaDate'] = substr($line,129,5);
778
-		    //$data['etaTime'] = substr($line,135,5);
779
-		    $data['format_source'] = 'shipplotter';
780
-    		    $data['id_source'] = $id_source;
781
-		    if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
782
-		    //print_r($data);
783
-		    //echo 'Add...'."\n";
784
-		    $MI->add($data);
785
-		    unset($data);
760
+			$data = array();
761
+			//echo $line."\n";
762
+			$data['mmsi'] = (int)substr($line,0,9);
763
+			$data['datetime'] = date('Y-m-d H:i:s',substr($line,10,10));
764
+			$data['status_id'] = substr($line,21,2);
765
+			$data['type_id'] = substr($line,24,3);
766
+			$data['latitude'] = substr($line,29,9);
767
+			$data['longitude'] = substr($line,41,9);
768
+			$data['speed'] = round(substr($line,51,5));
769
+			//$data['course'] = substr($line,57,5);
770
+			$data['heading'] = round(substr($line,63,3));
771
+			//$data['draft'] = substr($line,67,4);
772
+			//$data['length'] = substr($line,72,3);
773
+			//$data['beam'] = substr($line,76,2);
774
+			$data['ident'] = trim(utf8_encode(substr($line,78,20)));
775
+			//$data['callsign'] = trim(substr($line,100,7);
776
+			$data['arrival_code'] = substr($line,108,20);
777
+			//$data['etaDate'] = substr($line,129,5);
778
+			//$data['etaTime'] = substr($line,135,5);
779
+			$data['format_source'] = 'shipplotter';
780
+				$data['id_source'] = $id_source;
781
+			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
782
+			//print_r($data);
783
+			//echo 'Add...'."\n";
784
+			$MI->add($data);
785
+			unset($data);
786 786
 		}
787
-    	    }
788
-    	    $last_exec[$id]['last'] = time();
787
+			}
788
+			$last_exec[$id]['last'] = time();
789 789
 	} elseif ($value['format'] === 'sailawayfull' && 
790
-	    (
790
+		(
791 791
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > 10*60))
792
-	    )
792
+		)
793 793
 	) {
794
-	    if (!isset($globalSailaway['key']) || $globalSailaway['key'] == '') {
794
+		if (!isset($globalSailaway['key']) || $globalSailaway['key'] == '') {
795 795
 		echo 'Sailaway API key MUST be defined';
796 796
 		exit(0);
797
-	    }
798
-	    $sailawayoption = array('key' => $globalSailaway['key']);
799
-	    if (isset($globalSailaway['usrnr'])) $sailawayoption = array_merge($sailawayoption,array('usrnr' => $globalSailaway['usrnr']));
800
-	    if (isset($globalSailaway['ubtnr'])) $sailawayoption = array_merge($sailawayoption,array('ubtnr' => $globalSailaway['ubtnr']));
797
+		}
798
+		$sailawayoption = array('key' => $globalSailaway['key']);
799
+		if (isset($globalSailaway['usrnr'])) $sailawayoption = array_merge($sailawayoption,array('usrnr' => $globalSailaway['usrnr']));
800
+		if (isset($globalSailaway['ubtnr'])) $sailawayoption = array_merge($sailawayoption,array('ubtnr' => $globalSailaway['ubtnr']));
801 801
 
802
-	    for ($i = 0; $i <= 1; $i++) {
802
+		for ($i = 0; $i <= 1; $i++) {
803 803
 		if ($globalDebug) echo '! Download... ';
804 804
 		$buffer = $Common->getData('http://backend.sailaway.world/cgi-bin/sailaway/GetMissions.pl?'.http_build_query($sailawayoption).'&race='.$i.'&tutorial=0&hist=1&racetype=2&challengetype=2','get','','','','',30);
805 805
 		if ($globalDebug) echo 'done'."\n";
806 806
 		if ($buffer != '') {
807
-		    $all_data = json_decode($buffer,true);
808
-		    if (isset($all_data['missions'])) {
807
+			$all_data = json_decode($buffer,true);
808
+			if (isset($all_data['missions'])) {
809 809
 			foreach ($all_data['missions'] as $mission) {
810 810
 				$mission_user = $mission['usrname'];
811 811
 				$mission_name = preg_replace('/[\x00-\x1F\x7F-\xFF]/', '',$Common->remove_accents($mission['mistitle']));
@@ -832,17 +832,17 @@  discard block
 block discarded – undo
832 832
 					unset($datar);
833 833
 				}
834 834
 			}
835
-		    }
835
+			}
836 836
 		}
837 837
 		if ($globalDebug) echo '=== Wait... ===';
838 838
 		sleep(10*60);
839
-	    }
840
-	    $buffer = $Common->getData('http://backend.sailaway.world/cgi-bin/sailaway/TrackAllBoats.pl?'.http_build_query($sailawayoption),'get','','','','',30);
841
-	    if ($buffer != '') {
839
+		}
840
+		$buffer = $Common->getData('http://backend.sailaway.world/cgi-bin/sailaway/TrackAllBoats.pl?'.http_build_query($sailawayoption),'get','','','','',30);
841
+		if ($buffer != '') {
842 842
 		$data = json_decode($buffer,true);
843 843
 		//print_r($data);
844 844
 		if (isset($data['boats'])) {
845
-		    foreach ($data['boats'] as $sail) {
845
+			foreach ($data['boats'] as $sail) {
846 846
 			$data = array();
847 847
 			$data['id'] = $sail['ubtnr'];
848 848
 			$data['datetime'] = date('Y-m-d H:i:s');
@@ -862,17 +862,17 @@  discard block
 block discarded – undo
862 862
 			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
863 863
 			$MI->add($data);
864 864
 			unset($data);
865
-		    }
865
+			}
866 866
 		} elseif ($globalDebug) echo 'Error in JSON parsing';
867
-	    } elseif ($globalDebug) echo 'Empty result !'."\n";
867
+		} elseif ($globalDebug) echo 'Empty result !'."\n";
868 868
 
869
-    	    $last_exec[$id]['last'] = time();
869
+			$last_exec[$id]['last'] = time();
870 870
 	} elseif ($value['format'] === 'sailaway' && 
871
-	    (
871
+		(
872 872
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > 10*60))
873
-	    )
873
+		)
874 874
 	) {
875
-	    /*
875
+		/*
876 876
 	    if (isset($globalSailaway['email']) && $globalSailaway['email'] != '' && isset($globalSailaway['password']) && $globalSailaway['password'] != '') {
877 877
 		$authsailaway = $Common->getData('http://backend.sailaway.world/cgi-bin/sailaway/weblogin.pl','post',array('submitlogin' => 'Login','email' => $globalSailaway['email'],'pwd' => $globalSailaway['password'], 'page' => 'http://sailaway.world/cgi-bin/sailaway/missions.pl'),'','','','','',false,false,true);
878 878
 		//echo $authsailaway;
@@ -883,21 +883,21 @@  discard block
 block discarded – undo
883 883
 		}
884 884
 	    }
885 885
 	    */
886
-	    if (!isset($globalSailaway['key']) || $globalSailaway['key'] == '') {
886
+		if (!isset($globalSailaway['key']) || $globalSailaway['key'] == '') {
887 887
 		echo 'Sailaway API key MUST be defined';
888 888
 		exit(0);
889
-	    }
890
-	    if ($globalDebug) echo '! Download... ';
891
-	    $sailawayoption = array('key' => $globalSailaway['key']);
892
-	    if (isset($globalSailaway['usrnr'])) $sailawayoption = array_merge($sailawayoption,array('usrnr' => $globalSailaway['usrnr']));
893
-	    if (isset($globalSailaway['ubtnr'])) $sailawayoption = array_merge($sailawayoption,array('ubtnr' => $globalSailaway['ubtnr']));
894
-	    if (isset($globalSailaway['misnr'])) $sailawayoption = array_merge($sailawayoption,array('misnr' => $globalSailaway['misnr']));
895
-	    $buffer = $Common->getData('http://backend.sailaway.world/cgi-bin/sailaway/TrackAllBoats.pl?'.http_build_query($sailawayoption),'get','','','','',30);
896
-	    if ($buffer != '') {
889
+		}
890
+		if ($globalDebug) echo '! Download... ';
891
+		$sailawayoption = array('key' => $globalSailaway['key']);
892
+		if (isset($globalSailaway['usrnr'])) $sailawayoption = array_merge($sailawayoption,array('usrnr' => $globalSailaway['usrnr']));
893
+		if (isset($globalSailaway['ubtnr'])) $sailawayoption = array_merge($sailawayoption,array('ubtnr' => $globalSailaway['ubtnr']));
894
+		if (isset($globalSailaway['misnr'])) $sailawayoption = array_merge($sailawayoption,array('misnr' => $globalSailaway['misnr']));
895
+		$buffer = $Common->getData('http://backend.sailaway.world/cgi-bin/sailaway/TrackAllBoats.pl?'.http_build_query($sailawayoption),'get','','','','',30);
896
+		if ($buffer != '') {
897 897
 		$data = json_decode($buffer,true);
898 898
 		//print_r($data);
899 899
 		if (isset($data['boats'])) {
900
-		    foreach ($data['boats'] as $sail) {
900
+			foreach ($data['boats'] as $sail) {
901 901
 			$data = array();
902 902
 			$data['id'] = $sail['ubtnr'];
903 903
 			$data['datetime'] = date('Y-m-d H:i:s');
@@ -917,35 +917,35 @@  discard block
 block discarded – undo
917 917
 			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
918 918
 			$MI->add($data);
919 919
 			unset($data);
920
-		    }
920
+			}
921 921
 		} elseif ($globalDebug) echo 'Error in JSON parsing';
922
-	    } elseif ($globalDebug) echo 'Empty result !'."\n";
923
-    	    $last_exec[$id]['last'] = time();
922
+		} elseif ($globalDebug) echo 'Empty result !'."\n";
923
+			$last_exec[$id]['last'] = time();
924 924
 	//} elseif (($value === 'whazzup' && (time() - $last_exec['whazzup'] > $globalMinFetch)) || ($value === 'vatsimtxt' && (time() - $last_exec['vatsimtxt'] > $globalMinFetch))) {
925 925
 	} elseif (
926
-	    (
926
+		(
927 927
 		$value['format'] === 'whazzup' && 
928 928
 		(
929
-		    (isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
930
-		    (!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
929
+			(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
930
+			(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
931 931
 		)
932
-	    ) || (
932
+		) || (
933 933
 		$value['format'] === 'vatsimtxt' && 
934 934
 		(
935
-		    (isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
936
-		    (!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
935
+			(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
936
+			(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
937
+		)
937 938
 		)
938
-	    )
939 939
 	) {
940
-	    //$buffer = $Common->getData($hosts[$id]);
941
-	    $buffer = $Common->getData($value['host']);
942
-    	    $buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
943
-	    $buffer = explode('\n',$buffer);
944
-	    $reset = 0;
945
-	    foreach ($buffer as $line) {
946
-    		if ($line != '') {
947
-    		    $line = explode(':', $line);
948
-    		    if (count($line) > 30 && $line[0] != 'callsign') {
940
+		//$buffer = $Common->getData($hosts[$id]);
941
+		$buffer = $Common->getData($value['host']);
942
+			$buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
943
+		$buffer = explode('\n',$buffer);
944
+		$reset = 0;
945
+		foreach ($buffer as $line) {
946
+			if ($line != '') {
947
+				$line = explode(':', $line);
948
+				if (count($line) > 30 && $line[0] != 'callsign') {
949 949
 			$data = array();
950 950
 			if (isset($line[37]) && $line[37] != '') $data['id'] = $value['format'].'-'.$line[1].'-'.$line[0].'-'.$line[37];
951 951
 			else $data['id'] = $value['format'].'-'.$line[1].'-'.$line[0];
@@ -958,41 +958,41 @@  discard block
 block discarded – undo
958 958
 			if (isset($line[45])) $data['heading'] = $line[45]; // heading
959 959
 			elseif (isset($line[38])) $data['heading'] = $line[38]; // heading
960 960
 			$data['latitude'] = $line[5]; // lat
961
-	        	$data['longitude'] = $line[6]; // long
962
-	        	$data['verticalrate'] = ''; // vertical rate
963
-	        	$data['squawk'] = ''; // squawk
964
-	        	$data['emergency'] = ''; // emergency
965
-	        	$data['waypoints'] = $line[30];
961
+				$data['longitude'] = $line[6]; // long
962
+				$data['verticalrate'] = ''; // vertical rate
963
+				$data['squawk'] = ''; // squawk
964
+				$data['emergency'] = ''; // emergency
965
+				$data['waypoints'] = $line[30];
966 966
 			$data['datetime'] = date('Y-m-d H:i:s');
967 967
 			//$data['datetime'] = date('Y-m-d H:i:s',strtotime($line[37]));
968 968
 			//if (isset($line[37])) $data['last_update'] = $line[37];
969
-		        $data['departure_airport_icao'] = $line[11];
970
-		        $data['departure_airport_time'] = rtrim(chunk_split($line[22],2,':'),':');
971
-		        $data['arrival_airport_icao'] = $line[13];
969
+				$data['departure_airport_icao'] = $line[11];
970
+				$data['departure_airport_time'] = rtrim(chunk_split($line[22],2,':'),':');
971
+				$data['arrival_airport_icao'] = $line[13];
972 972
 			$data['frequency'] = $line[4];
973 973
 			$data['type'] = $line[18];
974 974
 			$data['range'] = $line[19];
975 975
 			if (isset($line[35])) $data['info'] = $line[35];
976
-    			$data['id_source'] = $id_source;
977
-	    		//$data['arrival_airport_time'] = ;
978
-	    		if ($line[9] != '') {
979
-	    		    $aircraft_data = explode('/',$line[9]);
980
-	    		    if (count($aircraft_data) == 2) {
976
+				$data['id_source'] = $id_source;
977
+				//$data['arrival_airport_time'] = ;
978
+				if ($line[9] != '') {
979
+					$aircraft_data = explode('/',$line[9]);
980
+					if (count($aircraft_data) == 2) {
981 981
 				//line[9] may equal to something like 'B738/L' in old FSD server's whazzup.txt file
982
-	    			$data['aircraft_icao'] = $aircraft_data[0];
983
-	    		    } else if (count($aircraft_data) > 2) {
982
+					$data['aircraft_icao'] = $aircraft_data[0];
983
+					} else if (count($aircraft_data) > 2) {
984 984
 				//line[9] may equal to something like 'H/B748/L'
985 985
 				$data['aircraft_icao'] = $aircraft_data[1];
986
-			    }
987
-        		}
988
-	    		/*
986
+				}
987
+				}
988
+				/*
989 989
 	    		if ($value === 'whazzup') $data['format_source'] = 'whazzup';
990 990
 	    		elseif ($value === 'vatsimtxt') $data['format_source'] = 'vatsimtxt';
991 991
 	    		*/
992
-	    		$data['format_source'] = $value['format'];
992
+				$data['format_source'] = $value['format'];
993 993
 			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
994 994
 			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
995
-    			if ($line[3] === 'PILOT') $SI->add($data);
995
+				if ($line[3] === 'PILOT') $SI->add($data);
996 996
 			elseif ($line[3] === 'ATC') {
997 997
 				//print_r($data);
998 998
 				$data['info'] = str_replace('^&sect;','<br />',$data['info']);
@@ -1013,21 +1013,21 @@  discard block
 block discarded – undo
1013 1013
 					else 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'],$data['format_source'],$data['source_name']);
1014 1014
 				}
1015 1015
 			}
1016
-    			unset($data);
1017
-    		    }
1018
-    		}
1019
-    	    }
1020
-    	    //if ($value === 'whazzup') $last_exec['whazzup'] = time();
1021
-    	    //elseif ($value === 'vatsimtxt') $last_exec['vatsimtxt'] = time();
1022
-    	    $last_exec[$id]['last'] = time();
1023
-    	} elseif ($value['format'] === 'airwhere' && 
1024
-    	    (
1025
-    		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) ||
1026
-    		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
1027
-    	    )
1028
-    	) {
1029
-	    $buffer = $Common->getData('http://www.airwhere.co.uk/pilots.php','get','','','','','20');
1030
-	    if ($buffer != '') {
1016
+				unset($data);
1017
+				}
1018
+			}
1019
+			}
1020
+			//if ($value === 'whazzup') $last_exec['whazzup'] = time();
1021
+			//elseif ($value === 'vatsimtxt') $last_exec['vatsimtxt'] = time();
1022
+			$last_exec[$id]['last'] = time();
1023
+		} elseif ($value['format'] === 'airwhere' && 
1024
+			(
1025
+			(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) ||
1026
+			(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
1027
+			)
1028
+		) {
1029
+		$buffer = $Common->getData('http://www.airwhere.co.uk/pilots.php','get','','','','','20');
1030
+		if ($buffer != '') {
1031 1031
 		$all_data = simplexml_load_string($buffer);
1032 1032
 		foreach($all_data->children() as $childdata) {
1033 1033
 			$data = array();
@@ -1049,10 +1049,10 @@  discard block
 block discarded – undo
1049 1049
 			$SI->add($data);
1050 1050
 			unset($data);
1051 1051
 		}
1052
-	    }
1053
-	    $Source->deleteOldLocationByType('gs');
1054
-	    $buffer = $Common->getData('http://www.airwhere.co.uk/gspositions.php','get','','','','','20');
1055
-	    if ($buffer != '') {
1052
+		}
1053
+		$Source->deleteOldLocationByType('gs');
1054
+		$buffer = $Common->getData('http://www.airwhere.co.uk/gspositions.php','get','','','','','20');
1055
+		if ($buffer != '') {
1056 1056
 		$all_data = simplexml_load_string($buffer);
1057 1057
 		foreach($all_data->children() as $childdata) {
1058 1058
 			$data = array();
@@ -1070,8 +1070,8 @@  discard block
 block discarded – undo
1070 1070
 			}
1071 1071
 			unset($data);
1072 1072
 		}
1073
-	    }
1074
-	    $last_exec[$id]['last'] = time();
1073
+		}
1074
+		$last_exec[$id]['last'] = time();
1075 1075
 	/*
1076 1076
 	} if ($value['format'] === 'aircraftlistjson') {
1077 1077
 	    print_r($globalSources);
@@ -1079,17 +1079,17 @@  discard block
 block discarded – undo
1079 1079
 	    echo $globalMinFetch;
1080 1080
 	*/
1081 1081
 	} elseif ($value['format'] === 'aircraftlistjson' && 
1082
-	    (
1082
+		(
1083 1083
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) ||
1084 1084
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
1085
-	    )
1085
+		)
1086 1086
 	) {
1087
-	    $buffer = $Common->getData($value['host'],'get','','','','','20');
1088
-	    if ($buffer != '') {
1089
-	        $all_data = json_decode($buffer,true);
1087
+		$buffer = $Common->getData($value['host'],'get','','','','','20');
1088
+		if ($buffer != '') {
1089
+			$all_data = json_decode($buffer,true);
1090 1090
 		if (isset($all_data['acList'])) {
1091
-		    $reset = 0;
1092
-		    foreach ($all_data['acList'] as $line) {
1091
+			$reset = 0;
1092
+			foreach ($all_data['acList'] as $line) {
1093 1093
 			$data = array();
1094 1094
 			$data['hex'] = $line['Icao']; // hex
1095 1095
 			if (isset($line['Call'])) $data['ident'] = $line['Call']; // ident
@@ -1112,10 +1112,10 @@  discard block
 block discarded – undo
1112 1112
 			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1113 1113
 			if (isset($data['latitude'])) $SI->add($data);
1114 1114
 			unset($data);
1115
-		    }
1115
+			}
1116 1116
 		} elseif (is_array($all_data)) {
1117
-		    $reset = 0;
1118
-		    foreach ($all_data as $line) {
1117
+			$reset = 0;
1118
+			foreach ($all_data as $line) {
1119 1119
 			$data = array();
1120 1120
 			$data['hex'] = $line['hex']; // hex
1121 1121
 			$data['ident'] = $line['flight']; // ident
@@ -1135,291 +1135,291 @@  discard block
 block discarded – undo
1135 1135
 			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1136 1136
 			$SI->add($data);
1137 1137
 			unset($data);
1138
-		    }
1138
+			}
1139 1139
 		}
1140
-	    } elseif ($globalDebug) echo 'No data'."\n";
1141
-    	    //$last_exec['aircraftlistjson'] = time();
1142
-    	    $last_exec[$id]['last'] = time();
1143
-    	//} elseif ($value === 'planeupdatefaa' && (time() - $last_exec['planeupdatefaa'] > $globalMinFetch)) {
1144
-    	} elseif ($value['format'] === 'planeupdatefaa' && 
1145
-    	    (
1146
-    		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
1147
-    		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
1148
-    	    )
1149
-    	) {
1150
-	    $buffer = $Common->getData($value['host']);
1151
-	    $all_data = json_decode($buffer,true);
1152
-	    if (isset($all_data['planes'])) {
1140
+		} elseif ($globalDebug) echo 'No data'."\n";
1141
+			//$last_exec['aircraftlistjson'] = time();
1142
+			$last_exec[$id]['last'] = time();
1143
+		//} elseif ($value === 'planeupdatefaa' && (time() - $last_exec['planeupdatefaa'] > $globalMinFetch)) {
1144
+		} elseif ($value['format'] === 'planeupdatefaa' && 
1145
+			(
1146
+			(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
1147
+			(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
1148
+			)
1149
+		) {
1150
+		$buffer = $Common->getData($value['host']);
1151
+		$all_data = json_decode($buffer,true);
1152
+		if (isset($all_data['planes'])) {
1153 1153
 		$reset = 0;
1154 1154
 		foreach ($all_data['planes'] as $key => $line) {
1155
-		    $data = array();
1156
-		    $data['hex'] = $key; // hex
1157
-		    $data['ident'] = $line[3]; // ident
1158
-		    $data['altitude'] = $line[6]; // altitude
1159
-		    $data['speed'] = $line[8]; // speed
1160
-		    $data['heading'] = $line[7]; // heading
1161
-		    $data['latitude'] = $line[4]; // lat
1162
-		    $data['longitude'] = $line[5]; // long
1163
-		    //$data['verticalrate'] = $line[]; // verticale rate
1164
-		    $data['squawk'] = $line[10]; // squawk
1165
-		    $data['emergency'] = ''; // emergency
1166
-		    $data['registration'] = $line[2];
1167
-		    $data['aircraft_icao'] = $line[0];
1168
-		    $deparr = explode('-',$line[1]);
1169
-		    if (count($deparr) === 2) {
1155
+			$data = array();
1156
+			$data['hex'] = $key; // hex
1157
+			$data['ident'] = $line[3]; // ident
1158
+			$data['altitude'] = $line[6]; // altitude
1159
+			$data['speed'] = $line[8]; // speed
1160
+			$data['heading'] = $line[7]; // heading
1161
+			$data['latitude'] = $line[4]; // lat
1162
+			$data['longitude'] = $line[5]; // long
1163
+			//$data['verticalrate'] = $line[]; // verticale rate
1164
+			$data['squawk'] = $line[10]; // squawk
1165
+			$data['emergency'] = ''; // emergency
1166
+			$data['registration'] = $line[2];
1167
+			$data['aircraft_icao'] = $line[0];
1168
+			$deparr = explode('-',$line[1]);
1169
+			if (count($deparr) === 2) {
1170 1170
 			$data['departure_airport_icao'] = $deparr[0];
1171 1171
 			$data['arrival_airport_icao'] = $deparr[1];
1172
-		    }
1173
-		    $data['datetime'] = date('Y-m-d H:i:s',$line[9]);
1174
-	    	    $data['format_source'] = 'planeupdatefaa';
1175
-    		    $data['id_source'] = $id_source;
1176
-		    if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1177
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1178
-		    $SI->add($data);
1179
-		    unset($data);
1172
+			}
1173
+			$data['datetime'] = date('Y-m-d H:i:s',$line[9]);
1174
+				$data['format_source'] = 'planeupdatefaa';
1175
+				$data['id_source'] = $id_source;
1176
+			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1177
+			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1178
+			$SI->add($data);
1179
+			unset($data);
1180 1180
 		}
1181
-	    }
1182
-	    //$last_exec['planeupdatefaa'] = time();
1183
-	    $last_exec[$id]['last'] = time();
1181
+		}
1182
+		//$last_exec['planeupdatefaa'] = time();
1183
+		$last_exec[$id]['last'] = time();
1184 1184
 	} elseif ($value['format'] === 'opensky' && 
1185
-	    (
1185
+		(
1186 1186
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
1187 1187
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
1188
-	    )
1188
+		)
1189 1189
 	) {
1190
-	    $buffer = $Common->getData($value['host']);
1191
-	    $all_data = json_decode($buffer,true);
1192
-	    if (isset($all_data['states'])) {
1190
+		$buffer = $Common->getData($value['host']);
1191
+		$all_data = json_decode($buffer,true);
1192
+		if (isset($all_data['states'])) {
1193 1193
 		$reset = 0;
1194 1194
 		foreach ($all_data['states'] as $key => $line) {
1195
-		    $data = array();
1196
-		    $data['hex'] = $line[0]; // hex
1197
-		    $data['ident'] = trim($line[1]); // ident
1198
-		    $data['altitude'] = round($line[7]*3.28084); // altitude
1199
-		    $data['speed'] = round($line[9]*1.94384); // speed
1200
-		    $data['heading'] = round($line[10]); // heading
1201
-		    $data['latitude'] = $line[6]; // lat
1202
-		    $data['longitude'] = $line[5]; // long
1203
-		    $data['verticalrate'] = $line[11]; // verticale rate
1204
-		    //$data['squawk'] = $line[10]; // squawk
1205
-		    //$data['emergency'] = ''; // emergency
1206
-		    //$data['registration'] = $line[2];
1207
-		    //$data['aircraft_icao'] = $line[0];
1208
-		    $data['datetime'] = date('Y-m-d H:i:s',$line[3]);
1209
-		    $data['format_source'] = 'opensky';
1210
-		    $data['id_source'] = $id_source;
1211
-		    if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1212
-		    $SI->add($data);
1213
-		    unset($data);
1195
+			$data = array();
1196
+			$data['hex'] = $line[0]; // hex
1197
+			$data['ident'] = trim($line[1]); // ident
1198
+			$data['altitude'] = round($line[7]*3.28084); // altitude
1199
+			$data['speed'] = round($line[9]*1.94384); // speed
1200
+			$data['heading'] = round($line[10]); // heading
1201
+			$data['latitude'] = $line[6]; // lat
1202
+			$data['longitude'] = $line[5]; // long
1203
+			$data['verticalrate'] = $line[11]; // verticale rate
1204
+			//$data['squawk'] = $line[10]; // squawk
1205
+			//$data['emergency'] = ''; // emergency
1206
+			//$data['registration'] = $line[2];
1207
+			//$data['aircraft_icao'] = $line[0];
1208
+			$data['datetime'] = date('Y-m-d H:i:s',$line[3]);
1209
+			$data['format_source'] = 'opensky';
1210
+			$data['id_source'] = $id_source;
1211
+			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1212
+			$SI->add($data);
1213
+			unset($data);
1214 1214
 		}
1215
-	    }
1216
-	    //$last_exec['planeupdatefaa'] = time();
1217
-	    $last_exec[$id]['last'] = time();
1215
+		}
1216
+		//$last_exec['planeupdatefaa'] = time();
1217
+		$last_exec[$id]['last'] = time();
1218 1218
 	} elseif ($value['format'] === 'aircraftjson' && 
1219
-	    (
1219
+		(
1220 1220
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
1221 1221
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
1222
-	    )
1222
+		)
1223 1223
 	) {
1224
-	    $buffer = $Common->getData($value['host']);
1225
-	    $all_data = json_decode($buffer,true);
1226
-	    if (isset($all_data['aircraft']) && isset($all_data['now']) && $all_data['now'] > time()-1800) {
1224
+		$buffer = $Common->getData($value['host']);
1225
+		$all_data = json_decode($buffer,true);
1226
+		if (isset($all_data['aircraft']) && isset($all_data['now']) && $all_data['now'] > time()-1800) {
1227 1227
 		$reset = 0;
1228 1228
 		foreach ($all_data['aircraft'] as $key => $line) {
1229
-		    $data = array();
1230
-		    // add support for ground vehicule with ~ in front of hex
1231
-		    if (isset($line['hex'])) $data['hex'] = $line['hex']; // hex
1232
-		    if (isset($line['flight'])) $data['ident'] = trim($line['flight']); // ident
1233
-		    if (isset($line['altitude'])) $data['altitude'] = $line['altitude']; // altitude
1234
-		    if (isset($line['speed'])) $data['speed'] = $line['speed']; // speed
1235
-		    if (isset($line['track'])) $data['heading'] = $line['track']; // heading
1236
-		    if (isset($line['lat'])) $data['latitude'] = $line['lat']; // lat
1237
-		    if (isset($line['lon'])) $data['longitude'] = $line['lon']; // long
1238
-		    if (isset($line['vert_rate'])) $data['verticalrate'] = $line['vert_rate']; // verticale rate
1239
-		    if (isset($line['squawk'])) $data['squawk'] = $line['squawk']; // squawk
1240
-		    //$data['emergency'] = ''; // emergency
1241
-		    //$data['registration'] = $line[2];
1242
-		    //$data['aircraft_icao'] = $line[0];
1243
-		    $data['datetime'] = date('Y-m-d H:i:s');
1244
-		    $data['format_source'] = 'aircraftjson';
1245
-		    $data['id_source'] = $id_source;
1246
-		    if (isset($value['name']) && $value['name'] != '') {
1247
-			    if (isset($line['mlat']) && !empty($line['mlat'])) $data['source_name'] = $value['name'].'_MLAT';
1248
-			    else $data['source_name'] = $value['name'];
1249
-		    } elseif (isset($line['mlat']) && !empty($line['mlat'])) $data['source_name'] = 'MLAT';
1250
-		    if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1251
-		    $SI->add($data);
1252
-		    unset($data);
1229
+			$data = array();
1230
+			// add support for ground vehicule with ~ in front of hex
1231
+			if (isset($line['hex'])) $data['hex'] = $line['hex']; // hex
1232
+			if (isset($line['flight'])) $data['ident'] = trim($line['flight']); // ident
1233
+			if (isset($line['altitude'])) $data['altitude'] = $line['altitude']; // altitude
1234
+			if (isset($line['speed'])) $data['speed'] = $line['speed']; // speed
1235
+			if (isset($line['track'])) $data['heading'] = $line['track']; // heading
1236
+			if (isset($line['lat'])) $data['latitude'] = $line['lat']; // lat
1237
+			if (isset($line['lon'])) $data['longitude'] = $line['lon']; // long
1238
+			if (isset($line['vert_rate'])) $data['verticalrate'] = $line['vert_rate']; // verticale rate
1239
+			if (isset($line['squawk'])) $data['squawk'] = $line['squawk']; // squawk
1240
+			//$data['emergency'] = ''; // emergency
1241
+			//$data['registration'] = $line[2];
1242
+			//$data['aircraft_icao'] = $line[0];
1243
+			$data['datetime'] = date('Y-m-d H:i:s');
1244
+			$data['format_source'] = 'aircraftjson';
1245
+			$data['id_source'] = $id_source;
1246
+			if (isset($value['name']) && $value['name'] != '') {
1247
+				if (isset($line['mlat']) && !empty($line['mlat'])) $data['source_name'] = $value['name'].'_MLAT';
1248
+				else $data['source_name'] = $value['name'];
1249
+			} elseif (isset($line['mlat']) && !empty($line['mlat'])) $data['source_name'] = 'MLAT';
1250
+			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1251
+			$SI->add($data);
1252
+			unset($data);
1253 1253
 		}
1254
-	    }
1255
-	    //$last_exec['planeupdatefaa'] = time();
1256
-	    $last_exec[$id]['last'] = time();
1254
+		}
1255
+		//$last_exec['planeupdatefaa'] = time();
1256
+		$last_exec[$id]['last'] = time();
1257 1257
 	} elseif ($value['format'] === 'planefinderclient' && 
1258
-	    (
1258
+		(
1259 1259
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
1260 1260
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
1261
-	    )
1261
+		)
1262 1262
 	) {
1263
-	    $buffer = $Common->getData($value['host']);
1264
-	    $all_data = json_decode($buffer,true);
1265
-	    if (isset($all_data['aircraft'])) {
1263
+		$buffer = $Common->getData($value['host']);
1264
+		$all_data = json_decode($buffer,true);
1265
+		if (isset($all_data['aircraft'])) {
1266 1266
 		$reset = 0;
1267 1267
 		foreach ($all_data['aircraft'] as $key => $line) {
1268
-		    $data = array();
1269
-		    $data['hex'] = $key; // hex
1270
-		    if (isset($line['callsign'])) $data['ident'] = trim($line['callsign']); // ident
1271
-		    if (isset($line['altitude'])) $data['altitude'] = $line['altitude']; // altitude
1272
-		    if (isset($line['speed'])) $data['speed'] = $line['speed']; // speed
1273
-		    if (isset($line['heading'])) $data['heading'] = $line['heading']; // heading
1274
-		    if (isset($line['lat'])) $data['latitude'] = $line['lat']; // lat
1275
-		    if (isset($line['lon'])) $data['longitude'] = $line['lon']; // long
1276
-		    if (isset($line['vert_rate'])) $data['verticalrate'] = $line['vert_rate']; // verticale rate
1277
-		    if (isset($line['squawk'])) $data['squawk'] = $line['squawk']; // squawk
1278
-		    //$data['emergency'] = ''; // emergency
1279
-		    if (isset($line['reg'])) $data['registration'] = $line['reg'];
1280
-		    if (isset($line['type'])) $data['aircraft_icao'] = $line['type'];
1281
-		    $data['datetime'] = date('Y-m-d H:i:s',$line['pos_update_time']);
1282
-		    $data['format_source'] = 'planefinderclient';
1283
-		    $data['id_source'] = $id_source;
1284
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1285
-		    if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1286
-		    $SI->add($data);
1287
-		    unset($data);
1268
+			$data = array();
1269
+			$data['hex'] = $key; // hex
1270
+			if (isset($line['callsign'])) $data['ident'] = trim($line['callsign']); // ident
1271
+			if (isset($line['altitude'])) $data['altitude'] = $line['altitude']; // altitude
1272
+			if (isset($line['speed'])) $data['speed'] = $line['speed']; // speed
1273
+			if (isset($line['heading'])) $data['heading'] = $line['heading']; // heading
1274
+			if (isset($line['lat'])) $data['latitude'] = $line['lat']; // lat
1275
+			if (isset($line['lon'])) $data['longitude'] = $line['lon']; // long
1276
+			if (isset($line['vert_rate'])) $data['verticalrate'] = $line['vert_rate']; // verticale rate
1277
+			if (isset($line['squawk'])) $data['squawk'] = $line['squawk']; // squawk
1278
+			//$data['emergency'] = ''; // emergency
1279
+			if (isset($line['reg'])) $data['registration'] = $line['reg'];
1280
+			if (isset($line['type'])) $data['aircraft_icao'] = $line['type'];
1281
+			$data['datetime'] = date('Y-m-d H:i:s',$line['pos_update_time']);
1282
+			$data['format_source'] = 'planefinderclient';
1283
+			$data['id_source'] = $id_source;
1284
+			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1285
+			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1286
+			$SI->add($data);
1287
+			unset($data);
1288 1288
 		}
1289
-	    }
1290
-	    $last_exec[$id]['last'] = time();
1289
+		}
1290
+		$last_exec[$id]['last'] = time();
1291 1291
 	//} elseif ($value === 'fr24json' && (time() - $last_exec['fr24json'] > $globalMinFetch)) {
1292 1292
 	} elseif ($value['format'] === 'fr24json' && 
1293
-	    (
1293
+		(
1294 1294
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) ||
1295 1295
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
1296
-	    )
1296
+		)
1297 1297
 	) {
1298
-	    //$buffer = $Common->getData($hosts[$id]);
1299
-	    $buffer = $Common->getData($value['host']);
1300
-	    $all_data = json_decode($buffer,true);
1301
-	    if (!empty($all_data)) $reset = 0;
1302
-	    foreach ($all_data as $key => $line) {
1298
+		//$buffer = $Common->getData($hosts[$id]);
1299
+		$buffer = $Common->getData($value['host']);
1300
+		$all_data = json_decode($buffer,true);
1301
+		if (!empty($all_data)) $reset = 0;
1302
+		foreach ($all_data as $key => $line) {
1303 1303
 		if ($key != 'full_count' && $key != 'version' && $key != 'stats') {
1304
-		    $data = array();
1305
-		    $data['hex'] = $line[0];
1306
-		    $data['ident'] = $line[16]; //$line[13]
1307
-	    	    $data['altitude'] = $line[4]; // altitude
1308
-	    	    $data['speed'] = $line[5]; // speed
1309
-	    	    $data['heading'] = $line[3]; // heading
1310
-	    	    $data['latitude'] = $line[1]; // lat
1311
-	    	    $data['longitude'] = $line[2]; // long
1312
-	    	    $data['verticalrate'] = $line[15]; // verticale rate
1313
-	    	    $data['squawk'] = $line[6]; // squawk
1314
-	    	    $data['aircraft_icao'] = $line[8];
1315
-	    	    $data['registration'] = $line[9];
1316
-		    $data['departure_airport_iata'] = $line[11];
1317
-		    $data['arrival_airport_iata'] = $line[12];
1318
-	    	    $data['emergency'] = ''; // emergency
1319
-		    $data['datetime'] = date('Y-m-d H:i:s'); //$line[10]
1320
-	    	    $data['format_source'] = 'fr24json';
1321
-    		    $data['id_source'] = $id_source;
1322
-		    if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1323
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1324
-		    $SI->add($data);
1325
-		    unset($data);
1304
+			$data = array();
1305
+			$data['hex'] = $line[0];
1306
+			$data['ident'] = $line[16]; //$line[13]
1307
+				$data['altitude'] = $line[4]; // altitude
1308
+				$data['speed'] = $line[5]; // speed
1309
+				$data['heading'] = $line[3]; // heading
1310
+				$data['latitude'] = $line[1]; // lat
1311
+				$data['longitude'] = $line[2]; // long
1312
+				$data['verticalrate'] = $line[15]; // verticale rate
1313
+				$data['squawk'] = $line[6]; // squawk
1314
+				$data['aircraft_icao'] = $line[8];
1315
+				$data['registration'] = $line[9];
1316
+			$data['departure_airport_iata'] = $line[11];
1317
+			$data['arrival_airport_iata'] = $line[12];
1318
+				$data['emergency'] = ''; // emergency
1319
+			$data['datetime'] = date('Y-m-d H:i:s'); //$line[10]
1320
+				$data['format_source'] = 'fr24json';
1321
+				$data['id_source'] = $id_source;
1322
+			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1323
+			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1324
+			$SI->add($data);
1325
+			unset($data);
1326 1326
 		}
1327
-	    }
1328
-	    //$last_exec['fr24json'] = time();
1329
-	    $last_exec[$id]['last'] = time();
1327
+		}
1328
+		//$last_exec['fr24json'] = time();
1329
+		$last_exec[$id]['last'] = time();
1330 1330
 	//} elseif ($value === 'radarvirtueljson' && (time() - $last_exec['radarvirtueljson'] > $globalMinFetch)) {
1331 1331
 	} elseif ($value['format'] === 'radarvirtueljson' && 
1332
-	    (
1332
+		(
1333 1333
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) ||
1334 1334
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
1335
-	    )
1335
+		)
1336 1336
 	) {
1337
-	    //$buffer = $Common->getData($hosts[$id],'get','','','','','150');
1338
-	    $buffer = $Common->getData($value['host'],'get','','','','','150');
1339
-	    //echo $buffer;
1340
-	    $buffer = str_replace(array("\n","\r"),"",$buffer);
1341
-	    $buffer = preg_replace('/,"num":(.+)/','}',$buffer);
1342
-	    $all_data = json_decode($buffer,true);
1343
-	    if (json_last_error() != JSON_ERROR_NONE) {
1337
+		//$buffer = $Common->getData($hosts[$id],'get','','','','','150');
1338
+		$buffer = $Common->getData($value['host'],'get','','','','','150');
1339
+		//echo $buffer;
1340
+		$buffer = str_replace(array("\n","\r"),"",$buffer);
1341
+		$buffer = preg_replace('/,"num":(.+)/','}',$buffer);
1342
+		$all_data = json_decode($buffer,true);
1343
+		if (json_last_error() != JSON_ERROR_NONE) {
1344 1344
 		die(json_last_error_msg());
1345
-	    }
1346
-	    if (isset($all_data['mrkrs'])) {
1345
+		}
1346
+		if (isset($all_data['mrkrs'])) {
1347 1347
 		$reset = 0;
1348 1348
 		foreach ($all_data['mrkrs'] as $key => $line) {
1349
-		    if (isset($line['inf'])) {
1349
+			if (isset($line['inf'])) {
1350 1350
 			$data = array();
1351 1351
 			$data['hex'] = $line['inf']['ia'];
1352 1352
 			if (isset($line['inf']['cs'])) $data['ident'] = $line['inf']['cs']; //$line[13]
1353
-	    		$data['altitude'] = round($line['inf']['al']*3.28084); // altitude
1354
-	    		if (isset($line['inf']['gs'])) $data['speed'] = round($line['inf']['gs']*0.539957); // speed
1355
-	    		if (isset($line['inf']['tr'])) $data['heading'] = $line['inf']['tr']; // heading
1356
-	    		$data['latitude'] = $line['pt'][0]; // lat
1357
-	    		$data['longitude'] = $line['pt'][1]; // long
1358
-	    		//if (isset($line['inf']['vs'])) $data['verticalrate'] = $line['inf']['vs']; // verticale rate
1359
-	    		if (isset($line['inf']['sq'])) $data['squawk'] = $line['inf']['sq']; // squawk
1360
-	    		//$data['aircraft_icao'] = $line[8];
1361
-	    		if (isset($line['inf']['rc'])) $data['registration'] = $line['inf']['rc'];
1353
+				$data['altitude'] = round($line['inf']['al']*3.28084); // altitude
1354
+				if (isset($line['inf']['gs'])) $data['speed'] = round($line['inf']['gs']*0.539957); // speed
1355
+				if (isset($line['inf']['tr'])) $data['heading'] = $line['inf']['tr']; // heading
1356
+				$data['latitude'] = $line['pt'][0]; // lat
1357
+				$data['longitude'] = $line['pt'][1]; // long
1358
+				//if (isset($line['inf']['vs'])) $data['verticalrate'] = $line['inf']['vs']; // verticale rate
1359
+				if (isset($line['inf']['sq'])) $data['squawk'] = $line['inf']['sq']; // squawk
1360
+				//$data['aircraft_icao'] = $line[8];
1361
+				if (isset($line['inf']['rc'])) $data['registration'] = $line['inf']['rc'];
1362 1362
 			//$data['departure_airport_iata'] = $line[11];
1363 1363
 			//$data['arrival_airport_iata'] = $line[12];
1364
-	    		//$data['emergency'] = ''; // emergency
1364
+				//$data['emergency'] = ''; // emergency
1365 1365
 			$data['datetime'] = date('Y-m-d H:i:s',$line['inf']['dt']); //$line[10]
1366
-	    		$data['format_source'] = 'radarvirtueljson';
1367
-    			$data['id_source'] = $id_source;
1366
+				$data['format_source'] = 'radarvirtueljson';
1367
+				$data['id_source'] = $id_source;
1368 1368
 			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1369 1369
 			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1370 1370
 			$SI->add($data);
1371 1371
 			unset($data);
1372
-		    }
1372
+			}
1373 1373
 		}
1374
-	    }
1375
-	    //$last_exec['radarvirtueljson'] = time();
1376
-	    $last_exec[$id]['last'] = time();
1374
+		}
1375
+		//$last_exec['radarvirtueljson'] = time();
1376
+		$last_exec[$id]['last'] = time();
1377 1377
 	//} elseif ($value === 'pirepsjson' && (time() - $last_exec['pirepsjson'] > $globalMinFetch)) {
1378 1378
 	} elseif ($value['format'] === 'pirepsjson' && 
1379
-	    (
1379
+		(
1380 1380
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
1381 1381
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
1382
-	    )
1382
+		)
1383 1383
 	) {
1384
-	    //$buffer = $Common->getData($hosts[$id]);
1385
-	    $buffer = $Common->getData($value['host'].'?'.time());
1386
-	    $all_data = json_decode(utf8_encode($buffer),true);
1384
+		//$buffer = $Common->getData($hosts[$id]);
1385
+		$buffer = $Common->getData($value['host'].'?'.time());
1386
+		$all_data = json_decode(utf8_encode($buffer),true);
1387 1387
 	    
1388
-	    if (isset($all_data['pireps'])) {
1388
+		if (isset($all_data['pireps'])) {
1389 1389
 		$reset = 0;
1390
-	        foreach ($all_data['pireps'] as $line) {
1391
-		    $data = array();
1392
-		    $data['id'] = $line['id'];
1393
-		    $data['hex'] = substr(str_pad(dechex($line['id']),6,'000000',STR_PAD_LEFT),0,6);
1394
-		    $data['ident'] = $line['callsign']; // ident
1395
-		    if (isset($line['pilotid'])) $data['pilot_id'] = $line['pilotid']; // pilot id
1396
-		    if (isset($line['name'])) $data['pilot_name'] = $line['name']; // pilot name
1397
-		    if (isset($line['alt'])) $data['altitude'] = $line['alt']; // altitude
1398
-		    if (isset($line['gs'])) $data['speed'] = $line['gs']; // speed
1399
-		    if (isset($line['heading'])) $data['heading'] = $line['heading']; // heading
1400
-		    if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
1401
-		    $data['latitude'] = $line['lat']; // lat
1402
-		    $data['longitude'] = $line['lon']; // long
1403
-		    //$data['verticalrate'] = $line['vrt']; // verticale rate
1404
-		    //$data['squawk'] = $line['squawk']; // squawk
1405
-		    //$data['emergency'] = ''; // emergency
1406
-		    if (isset($line['depicao'])) $data['departure_airport_icao'] = $line['depicao'];
1407
-		    if (isset($line['deptime'])) $data['departure_airport_time'] = $line['deptime'];
1408
-		    if (isset($line['arricao'])) $data['arrival_airport_icao'] = $line['arricao'];
1409
-		    //$data['arrival_airport_time'] = $line['arrtime'];
1410
-		    if (isset($line['aircraft'])) $data['aircraft_icao'] = $line['aircraft'];
1411
-		    if (isset($line['transponder'])) $data['squawk'] = $line['transponder'];
1412
-		    if (isset($line['atis'])) $data['info'] = $line['atis'];
1413
-		    else $data['info'] = '';
1414
-		    $data['format_source'] = 'pireps';
1415
-    		    $data['id_source'] = $id_source;
1416
-		    $data['datetime'] = date('Y-m-d H:i:s');
1417
-		    if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1418
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1419
-		    if ($line['icon'] === 'plane') {
1390
+			foreach ($all_data['pireps'] as $line) {
1391
+			$data = array();
1392
+			$data['id'] = $line['id'];
1393
+			$data['hex'] = substr(str_pad(dechex($line['id']),6,'000000',STR_PAD_LEFT),0,6);
1394
+			$data['ident'] = $line['callsign']; // ident
1395
+			if (isset($line['pilotid'])) $data['pilot_id'] = $line['pilotid']; // pilot id
1396
+			if (isset($line['name'])) $data['pilot_name'] = $line['name']; // pilot name
1397
+			if (isset($line['alt'])) $data['altitude'] = $line['alt']; // altitude
1398
+			if (isset($line['gs'])) $data['speed'] = $line['gs']; // speed
1399
+			if (isset($line['heading'])) $data['heading'] = $line['heading']; // heading
1400
+			if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
1401
+			$data['latitude'] = $line['lat']; // lat
1402
+			$data['longitude'] = $line['lon']; // long
1403
+			//$data['verticalrate'] = $line['vrt']; // verticale rate
1404
+			//$data['squawk'] = $line['squawk']; // squawk
1405
+			//$data['emergency'] = ''; // emergency
1406
+			if (isset($line['depicao'])) $data['departure_airport_icao'] = $line['depicao'];
1407
+			if (isset($line['deptime'])) $data['departure_airport_time'] = $line['deptime'];
1408
+			if (isset($line['arricao'])) $data['arrival_airport_icao'] = $line['arricao'];
1409
+			//$data['arrival_airport_time'] = $line['arrtime'];
1410
+			if (isset($line['aircraft'])) $data['aircraft_icao'] = $line['aircraft'];
1411
+			if (isset($line['transponder'])) $data['squawk'] = $line['transponder'];
1412
+			if (isset($line['atis'])) $data['info'] = $line['atis'];
1413
+			else $data['info'] = '';
1414
+			$data['format_source'] = 'pireps';
1415
+				$data['id_source'] = $id_source;
1416
+			$data['datetime'] = date('Y-m-d H:i:s');
1417
+			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1418
+			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1419
+			if ($line['icon'] === 'plane') {
1420 1420
 			$SI->add($data);
1421
-		    //    print_r($data);
1422
-    		    } elseif ($line['icon'] === 'ct') {
1421
+			//    print_r($data);
1422
+				} elseif ($line['icon'] === 'ct') {
1423 1423
 			$data['info'] = str_replace('^&sect;','<br />',$data['info']);
1424 1424
 			$data['info'] = str_replace('&amp;sect;','',$data['info']);
1425 1425
 			$typec = substr($data['ident'],-3);
@@ -1434,210 +1434,210 @@  discard block
 block discarded – undo
1434 1434
 			elseif ($typec === 'CTR') $data['type'] = 'Control Radar or Centre';
1435 1435
 			else $data['type'] = 'Observer';
1436 1436
 			if (isset($ATC)) echo $ATC->add($data['ident'],'',$data['latitude'],$data['longitude'],'0',$data['info'],$data['datetime'],$data['type'],$data['pilot_id'],$data['pilot_name'],$data['format_source']);
1437
-		    }
1438
-		    unset($data);
1437
+			}
1438
+			unset($data);
1439 1439
 		}
1440
-	    }
1441
-	    //$last_exec['pirepsjson'] = time();
1442
-	    $last_exec[$id]['last'] = time();
1440
+		}
1441
+		//$last_exec['pirepsjson'] = time();
1442
+		$last_exec[$id]['last'] = time();
1443 1443
 	//} elseif ($value === 'phpvmacars' && (time() - $last_exec['phpvmacars'] > $globalMinFetch)) {
1444 1444
 	} elseif ($value['format'] === 'phpvmacars' && 
1445
-	    (
1445
+		(
1446 1446
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) ||
1447 1447
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
1448
-	    )
1448
+		)
1449 1449
 	) {
1450
-	    //$buffer = $Common->getData($hosts[$id]);
1451
-	    if ($globalDebug) echo 'Get Data...'."\n";
1452
-	    $buffer = $Common->getData($value['host']);
1453
-	    $all_data = json_decode($buffer,true);
1454
-	    if ($buffer != '' && is_array($all_data)) {
1450
+		//$buffer = $Common->getData($hosts[$id]);
1451
+		if ($globalDebug) echo 'Get Data...'."\n";
1452
+		$buffer = $Common->getData($value['host']);
1453
+		$all_data = json_decode($buffer,true);
1454
+		if ($buffer != '' && is_array($all_data)) {
1455 1455
 		$reset = 0;
1456 1456
 		foreach ($all_data as $line) {
1457
-	    	    $data = array();
1458
-	    	    //$data['id'] = $line['id']; // id not usable
1459
-	    	    if (isset($line['pilotid']) && isset($line['registration'])) $data['id'] = $line['pilotid'].$line['flightnum'].trim($line['registration']);
1460
-	    	    elseif (isset($line['pilotid'])) $data['id'] = $line['pilotid'].$line['flightnum'];
1461
-	    	    $data['hex'] = substr(str_pad(bin2hex($line['flightnum']),6,'000000',STR_PAD_LEFT),-6); // hex
1462
-	    	    if (isset($line['pilotname'])) $data['pilot_name'] = $line['pilotname'];
1463
-	    	    if (isset($line['pilotid'])) $data['pilot_id'] = $line['pilotid'];
1464
-	    	    $data['ident'] = $line['flightnum']; // ident
1465
-	    	    $data['altitude'] = $line['alt']; // altitude
1466
-	    	    $data['speed'] = $line['gs']; // speed
1467
-	    	    $data['heading'] = $line['heading']; // heading
1468
-	    	    $data['latitude'] = $line['lat']; // lat
1469
-	    	    $data['longitude'] = $line['lng']; // long
1470
-	    	    $data['verticalrate'] = ''; // verticale rate
1471
-	    	    $data['squawk'] = ''; // squawk
1472
-	    	    $data['emergency'] = ''; // emergency
1473
-	    	    //$data['datetime'] = $line['lastupdate'];
1474
-	    	    //$data['last_update'] = $line['lastupdate'];
1475
-	    	    if (isset($value['timezone'])) {
1476
-	    		$datetime = new DateTime($line['lastupdate'],new DateTimeZone($value['timezone']));
1477
-	    		$datetime->setTimeZone(new DateTimeZone('UTC'));
1478
-	    		$data['datetime'] = $datetime->format('Y-m-d H:i:s');
1479
-	    	    } else $data['datetime'] = date('Y-m-d H:i:s');
1480
-	    	    $data['departure_airport_icao'] = $line['depicao'];
1481
-	    	    $data['departure_airport_time'] = $line['deptime'];
1482
-	    	    $data['arrival_airport_icao'] = $line['arricao'];
1483
-    		    $data['arrival_airport_time'] = $line['arrtime'];
1484
-    		    if (isset($line['registration'])) {
1485
-    			$data['registration'] = trim($line['registration']);
1486
-    			//if (isset($line['aircraft'])) $data['id'] = $line['aircraft'];
1487
-    		    } else $data['registration'] = $line['aircraft'];
1488
-		    if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1489
-		    if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
1490
-		    if (isset($line['aircraftname'])) {
1457
+				$data = array();
1458
+				//$data['id'] = $line['id']; // id not usable
1459
+				if (isset($line['pilotid']) && isset($line['registration'])) $data['id'] = $line['pilotid'].$line['flightnum'].trim($line['registration']);
1460
+				elseif (isset($line['pilotid'])) $data['id'] = $line['pilotid'].$line['flightnum'];
1461
+				$data['hex'] = substr(str_pad(bin2hex($line['flightnum']),6,'000000',STR_PAD_LEFT),-6); // hex
1462
+				if (isset($line['pilotname'])) $data['pilot_name'] = $line['pilotname'];
1463
+				if (isset($line['pilotid'])) $data['pilot_id'] = $line['pilotid'];
1464
+				$data['ident'] = $line['flightnum']; // ident
1465
+				$data['altitude'] = $line['alt']; // altitude
1466
+				$data['speed'] = $line['gs']; // speed
1467
+				$data['heading'] = $line['heading']; // heading
1468
+				$data['latitude'] = $line['lat']; // lat
1469
+				$data['longitude'] = $line['lng']; // long
1470
+				$data['verticalrate'] = ''; // verticale rate
1471
+				$data['squawk'] = ''; // squawk
1472
+				$data['emergency'] = ''; // emergency
1473
+				//$data['datetime'] = $line['lastupdate'];
1474
+				//$data['last_update'] = $line['lastupdate'];
1475
+				if (isset($value['timezone'])) {
1476
+				$datetime = new DateTime($line['lastupdate'],new DateTimeZone($value['timezone']));
1477
+				$datetime->setTimeZone(new DateTimeZone('UTC'));
1478
+				$data['datetime'] = $datetime->format('Y-m-d H:i:s');
1479
+				} else $data['datetime'] = date('Y-m-d H:i:s');
1480
+				$data['departure_airport_icao'] = $line['depicao'];
1481
+				$data['departure_airport_time'] = $line['deptime'];
1482
+				$data['arrival_airport_icao'] = $line['arricao'];
1483
+				$data['arrival_airport_time'] = $line['arrtime'];
1484
+				if (isset($line['registration'])) {
1485
+				$data['registration'] = trim($line['registration']);
1486
+				//if (isset($line['aircraft'])) $data['id'] = $line['aircraft'];
1487
+				} else $data['registration'] = $line['aircraft'];
1488
+			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1489
+			if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
1490
+			if (isset($line['aircraftname'])) {
1491 1491
 			$line['aircraftname'] = strtoupper($line['aircraftname']);
1492 1492
 			$line['aircraftname'] = str_replace('BOEING ','B',$line['aircraftname']);
1493
-	    		$aircraft_data = explode('-',$line['aircraftname']);
1494
-	    		if (isset($aircraft_data[1]) && strlen($aircraft_data[0]) >= 3 && strlen($aircraft_data[0]) <= 4) $data['aircraft_icao'] = $aircraft_data[0];
1495
-	    		elseif (isset($aircraft_data[1]) && strlen($aircraft_data[1]) >= 3 && strlen($aircraft_data[1]) <= 4) $data['aircraft_icao'] = $aircraft_data[1];
1496
-	    		else {
1497
-	    		    $aircraft_data = explode(' ',$line['aircraftname']);
1498
-	    		    if (isset($aircraft_data[1])) $data['aircraft_icao'] = str_replace('-','',$aircraft_data[1]);
1499
-	    		    else $data['aircraft_icao'] = str_replace('-','',$line['aircraftname']);
1500
-	    		}
1501
-	    	    }
1502
-    		    if (isset($line['route'])) $data['waypoints'] = $line['route'];
1503
-    		    $data['id_source'] = $id_source;
1504
-	    	    $data['format_source'] = 'phpvmacars';
1505
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1506
-		    $SI->add($data);
1507
-		    unset($data);
1493
+				$aircraft_data = explode('-',$line['aircraftname']);
1494
+				if (isset($aircraft_data[1]) && strlen($aircraft_data[0]) >= 3 && strlen($aircraft_data[0]) <= 4) $data['aircraft_icao'] = $aircraft_data[0];
1495
+				elseif (isset($aircraft_data[1]) && strlen($aircraft_data[1]) >= 3 && strlen($aircraft_data[1]) <= 4) $data['aircraft_icao'] = $aircraft_data[1];
1496
+				else {
1497
+					$aircraft_data = explode(' ',$line['aircraftname']);
1498
+					if (isset($aircraft_data[1])) $data['aircraft_icao'] = str_replace('-','',$aircraft_data[1]);
1499
+					else $data['aircraft_icao'] = str_replace('-','',$line['aircraftname']);
1500
+				}
1501
+				}
1502
+				if (isset($line['route'])) $data['waypoints'] = $line['route'];
1503
+				$data['id_source'] = $id_source;
1504
+				$data['format_source'] = 'phpvmacars';
1505
+			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1506
+			$SI->add($data);
1507
+			unset($data);
1508 1508
 		}
1509 1509
 		if ($globalDebug) echo 'No more data...'."\n";
1510 1510
 		unset($buffer);
1511 1511
 		unset($all_data);
1512
-	    }
1513
-	    //$last_exec['phpvmacars'] = time();
1514
-	    $last_exec[$id]['last'] = time();
1512
+		}
1513
+		//$last_exec['phpvmacars'] = time();
1514
+		$last_exec[$id]['last'] = time();
1515 1515
 	} elseif ($value['format'] === 'vaos' && 
1516
-	    (
1516
+		(
1517 1517
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) ||
1518 1518
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
1519
-	    )
1519
+		)
1520 1520
 	) {
1521
-	    //$buffer = $Common->getData($hosts[$id]);
1522
-	    if ($globalDebug) echo 'Get Data...'."\n";
1523
-	    $buffer = $Common->getData($value['host']);
1524
-	    $all_data = json_decode($buffer,true);
1525
-	    if ($buffer != '' && is_array($all_data) && isset($all_data['ACARSData'])) {
1521
+		//$buffer = $Common->getData($hosts[$id]);
1522
+		if ($globalDebug) echo 'Get Data...'."\n";
1523
+		$buffer = $Common->getData($value['host']);
1524
+		$all_data = json_decode($buffer,true);
1525
+		if ($buffer != '' && is_array($all_data) && isset($all_data['ACARSData'])) {
1526 1526
 		$reset = 0;
1527 1527
 		foreach ($all_data['ACARSData'] as $line) {
1528
-		    //print_r($line);
1529
-	    	    $data = array();
1530
-	    	    //$data['id'] = $line['id']; // id not usable
1531
-	    	    $data['id'] = $line['id'];
1532
-	    	    //$data['hex'] = substr(str_pad(bin2hex($line['flightnum']),6,'000000',STR_PAD_LEFT),-6); // hex
1533
-	    	    if (isset($line['user']['username'])) $data['pilot_name'] = $line['user']['username'];
1534
-	    	    if (isset($line['user_id'])) $data['pilot_id'] = $line['user_id'];
1535
-	    	    $data['ident'] = str_replace(' ','',$line['bid']['flightnum']); // ident
1536
-	    	    if (is_numeric($data['ident'])) $data['ident'] = $line['bid']['airline']['icao'].$data['ident'];
1537
-	    	    $data['altitude'] = $line['altitude']; // altitude
1538
-	    	    $data['speed'] = $line['groundspeed']; // speed
1539
-	    	    $data['heading'] = $line['heading']; // heading
1540
-	    	    $data['latitude'] = $line['lat']; // lat
1541
-	    	    $data['longitude'] = $line['lon']; // long
1542
-	    	    //$data['verticalrate'] = ''; // verticale rate
1543
-	    	    //$data['squawk'] = ''; // squawk
1544
-	    	    //$data['emergency'] = ''; // emergency
1545
-	    	    if (isset($value['timezone'])) {
1546
-	    		$datetime = new DateTime($line['updated_at'],new DateTimeZone($value['timezone']));
1547
-	    		$datetime->setTimeZone(new DateTimeZone('UTC'));
1548
-	    		$data['datetime'] = $datetime->format('Y-m-d H:i:s');
1549
-	    	    } else $data['datetime'] = date('Y-m-d H:i:s');
1528
+			//print_r($line);
1529
+				$data = array();
1530
+				//$data['id'] = $line['id']; // id not usable
1531
+				$data['id'] = $line['id'];
1532
+				//$data['hex'] = substr(str_pad(bin2hex($line['flightnum']),6,'000000',STR_PAD_LEFT),-6); // hex
1533
+				if (isset($line['user']['username'])) $data['pilot_name'] = $line['user']['username'];
1534
+				if (isset($line['user_id'])) $data['pilot_id'] = $line['user_id'];
1535
+				$data['ident'] = str_replace(' ','',$line['bid']['flightnum']); // ident
1536
+				if (is_numeric($data['ident'])) $data['ident'] = $line['bid']['airline']['icao'].$data['ident'];
1537
+				$data['altitude'] = $line['altitude']; // altitude
1538
+				$data['speed'] = $line['groundspeed']; // speed
1539
+				$data['heading'] = $line['heading']; // heading
1540
+				$data['latitude'] = $line['lat']; // lat
1541
+				$data['longitude'] = $line['lon']; // long
1542
+				//$data['verticalrate'] = ''; // verticale rate
1543
+				//$data['squawk'] = ''; // squawk
1544
+				//$data['emergency'] = ''; // emergency
1545
+				if (isset($value['timezone'])) {
1546
+				$datetime = new DateTime($line['updated_at'],new DateTimeZone($value['timezone']));
1547
+				$datetime->setTimeZone(new DateTimeZone('UTC'));
1548
+				$data['datetime'] = $datetime->format('Y-m-d H:i:s');
1549
+				} else $data['datetime'] = date('Y-m-d H:i:s');
1550 1550
 	    	    
1551
-	    	    $data['departure_airport_icao'] = $line['bid']['depapt']['icao'];
1552
-	    	    $data['departure_airport_time'] = $line['bid']['deptime'];
1553
-	    	    $data['arrival_airport_icao'] = $line['bid']['arrapt']['icao'];
1554
-		    $data['arrival_airport_time'] = $line['bid']['arrtime'];
1555
-		    $data['registration'] = $line['bid']['aircraft']['registration'];
1551
+				$data['departure_airport_icao'] = $line['bid']['depapt']['icao'];
1552
+				$data['departure_airport_time'] = $line['bid']['deptime'];
1553
+				$data['arrival_airport_icao'] = $line['bid']['arrapt']['icao'];
1554
+			$data['arrival_airport_time'] = $line['bid']['arrtime'];
1555
+			$data['registration'] = $line['bid']['aircraft']['registration'];
1556 1556
 
1557
-		    if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1558
-		    if (isset($line['bid']['route']) && $line['bid']['route'] != '') $data['waypoints'] = $line['bid']['route']; // route
1559
-	    	    $data['aircraft_icao'] = $line['bid']['aircraft']['icao'];
1557
+			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1558
+			if (isset($line['bid']['route']) && $line['bid']['route'] != '') $data['waypoints'] = $line['bid']['route']; // route
1559
+				$data['aircraft_icao'] = $line['bid']['aircraft']['icao'];
1560 1560
 
1561
-    		    $data['id_source'] = $id_source;
1562
-	    	    $data['format_source'] = 'vaos';
1563
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1564
-		    $SI->add($data);
1565
-		    unset($data);
1561
+				$data['id_source'] = $id_source;
1562
+				$data['format_source'] = 'vaos';
1563
+			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1564
+			$SI->add($data);
1565
+			unset($data);
1566 1566
 		}
1567 1567
 		if ($globalDebug) echo 'No more data...'."\n";
1568 1568
 		unset($buffer);
1569 1569
 		unset($all_data);
1570
-	    }
1571
-	    //$last_exec['phpvmacars'] = time();
1572
-	    $last_exec[$id]['last'] = time();
1570
+		}
1571
+		//$last_exec['phpvmacars'] = time();
1572
+		$last_exec[$id]['last'] = time();
1573 1573
 	} elseif ($value['format'] === 'vam' && 
1574
-	    (
1574
+		(
1575 1575
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) ||
1576 1576
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
1577
-	    )
1577
+		)
1578 1578
 	) {
1579
-	    //$buffer = $Common->getData($hosts[$id]);
1580
-	    if ($globalDebug) echo 'Get Data...'."\n";
1581
-	    $buffer = $Common->getData($value['host']);
1582
-	    $all_data = json_decode($buffer,true);
1583
-	    if ($buffer != '' && is_array($all_data)) {
1579
+		//$buffer = $Common->getData($hosts[$id]);
1580
+		if ($globalDebug) echo 'Get Data...'."\n";
1581
+		$buffer = $Common->getData($value['host']);
1582
+		$all_data = json_decode($buffer,true);
1583
+		if ($buffer != '' && is_array($all_data)) {
1584 1584
 		$reset = 0;
1585 1585
 		foreach ($all_data as $line) {
1586
-	    	    $data = array();
1587
-	    	    //$data['id'] = $line['id']; // id not usable
1588
-	    	    $data['id'] = trim($line['flight_id']);
1589
-	    	    $data['hex'] = substr(str_pad(bin2hex($line['callsign']),6,'000000',STR_PAD_LEFT),-6); // hex
1590
-	    	    $data['pilot_name'] = $line['pilot_name'];
1591
-	    	    $data['pilot_id'] = $line['pilot_id'];
1592
-	    	    $data['ident'] = trim($line['callsign']); // ident
1593
-	    	    $data['altitude'] = $line['altitude']; // altitude
1594
-	    	    $data['speed'] = $line['gs']; // speed
1595
-	    	    $data['heading'] = $line['heading']; // heading
1596
-	    	    $data['latitude'] = $line['latitude']; // lat
1597
-	    	    $data['longitude'] = $line['longitude']; // long
1598
-	    	    $data['verticalrate'] = ''; // verticale rate
1599
-	    	    $data['squawk'] = ''; // squawk
1600
-	    	    $data['emergency'] = ''; // emergency
1601
-	    	    //$data['datetime'] = $line['lastupdate'];
1602
-	    	    $data['last_update'] = $line['last_update'];
1603
-		    $data['datetime'] = date('Y-m-d H:i:s');
1604
-	    	    $data['departure_airport_icao'] = $line['departure'];
1605
-	    	    //$data['departure_airport_time'] = $line['departure_time'];
1606
-	    	    $data['arrival_airport_icao'] = $line['arrival'];
1607
-    		    //$data['arrival_airport_time'] = $line['arrival_time'];
1608
-    		    //$data['registration'] = $line['aircraft'];
1609
-		    if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
1610
-	    	    $data['aircraft_icao'] = $line['plane_type'];
1611
-    		    $data['id_source'] = $id_source;
1612
-	    	    $data['format_source'] = 'vam';
1613
-		    if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1614
-		    if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1615
-		    $SI->add($data);
1616
-		    unset($data);
1586
+				$data = array();
1587
+				//$data['id'] = $line['id']; // id not usable
1588
+				$data['id'] = trim($line['flight_id']);
1589
+				$data['hex'] = substr(str_pad(bin2hex($line['callsign']),6,'000000',STR_PAD_LEFT),-6); // hex
1590
+				$data['pilot_name'] = $line['pilot_name'];
1591
+				$data['pilot_id'] = $line['pilot_id'];
1592
+				$data['ident'] = trim($line['callsign']); // ident
1593
+				$data['altitude'] = $line['altitude']; // altitude
1594
+				$data['speed'] = $line['gs']; // speed
1595
+				$data['heading'] = $line['heading']; // heading
1596
+				$data['latitude'] = $line['latitude']; // lat
1597
+				$data['longitude'] = $line['longitude']; // long
1598
+				$data['verticalrate'] = ''; // verticale rate
1599
+				$data['squawk'] = ''; // squawk
1600
+				$data['emergency'] = ''; // emergency
1601
+				//$data['datetime'] = $line['lastupdate'];
1602
+				$data['last_update'] = $line['last_update'];
1603
+			$data['datetime'] = date('Y-m-d H:i:s');
1604
+				$data['departure_airport_icao'] = $line['departure'];
1605
+				//$data['departure_airport_time'] = $line['departure_time'];
1606
+				$data['arrival_airport_icao'] = $line['arrival'];
1607
+				//$data['arrival_airport_time'] = $line['arrival_time'];
1608
+				//$data['registration'] = $line['aircraft'];
1609
+			if (isset($line['route'])) $data['waypoints'] = $line['route']; // route
1610
+				$data['aircraft_icao'] = $line['plane_type'];
1611
+				$data['id_source'] = $id_source;
1612
+				$data['format_source'] = 'vam';
1613
+			if (isset($value['noarchive']) && $value['noarchive'] === TRUE) $data['noarchive'] = true;
1614
+			if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1615
+			$SI->add($data);
1616
+			unset($data);
1617 1617
 		}
1618 1618
 		if ($globalDebug) echo 'No more data...'."\n";
1619 1619
 		unset($buffer);
1620 1620
 		unset($all_data);
1621
-	    }
1622
-	    //$last_exec['phpvmacars'] = time();
1623
-	    $last_exec[$id]['last'] = time();
1621
+		}
1622
+		//$last_exec['phpvmacars'] = time();
1623
+		$last_exec[$id]['last'] = time();
1624 1624
 	} elseif ($value['format'] === 'blitzortung' && 
1625
-	    (
1625
+		(
1626 1626
 		(isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalSources[$id]['minfetch'])) || 
1627 1627
 		(!isset($globalSources[$id]['minfetch']) && (time() - $last_exec[$id]['last'] > $globalMinFetch))
1628
-	    )
1628
+		)
1629 1629
 	) {
1630
-	    //$buffer = $Common->getData($hosts[$id]);
1631
-	    if ($globalDebug) echo 'Get Data...'."\n";
1632
-	    $buffer = $Common->getData($value['host']);
1633
-	    $all_data = json_decode($buffer,true);
1634
-	    if ($buffer != '') {
1630
+		//$buffer = $Common->getData($hosts[$id]);
1631
+		if ($globalDebug) echo 'Get Data...'."\n";
1632
+		$buffer = $Common->getData($value['host']);
1633
+		$all_data = json_decode($buffer,true);
1634
+		if ($buffer != '') {
1635 1635
 		$Source->deleteLocationBySource('blitzortung');
1636 1636
 		$buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
1637 1637
 		$buffer = explode('\n',$buffer);
1638 1638
 		foreach ($buffer as $buffer_line) {
1639
-		    $line = json_decode($buffer_line,true);
1640
-		    if (isset($line['time'])) {
1639
+			$line = json_decode($buffer_line,true);
1640
+			if (isset($line['time'])) {
1641 1641
 			$data = array();
1642 1642
 			$data['altitude'] = $line['alt']; // altitude
1643 1643
 			$data['latitude'] = $line['lat']; // lat
@@ -1649,92 +1649,92 @@  discard block
 block discarded – undo
1649 1649
 			if ($globalDebug) echo '☈ Lightning added'."\n";
1650 1650
 			$Source->addLocation('',$data['latitude'],$data['longitude'],0,'','','blitzortung','weather/thunderstorm.png','lightning',$id,0,$data['datetime']);
1651 1651
 			unset($data);
1652
-		    }
1652
+			}
1653 1653
 		}
1654 1654
 		if ($globalDebug) echo 'No more data...'."\n";
1655 1655
 		unset($buffer);
1656
-	    }
1657
-	    $last_exec[$id]['last'] = time();
1656
+		}
1657
+		$last_exec[$id]['last'] = time();
1658 1658
 	} elseif ($value['format'] === 'acarsjson') {
1659
-        $arr = $httpfeeds;
1660
-        $w = $e = null;
1661
-        if (isset($arr[$id])) {
1662
-            $nn = stream_select($arr,$w,$e,$timeout);
1663
-            if ($nn > 0) {
1664
-                foreach ($httpfeeds as $feed) {
1665
-                    $buffer = stream_get_line($feed,2000,"\n");
1666
-                    if ($buffer === FALSE) {
1667
-                        connect_all($globalSources);
1668
-                    }
1669
-                    $buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
1670
-                    $buffer = explode('\n',$buffer);
1671
-                    foreach ($buffer as $line) {
1672
-                        if ($line != '') {
1673
-                            $line = json_decode($line, true);
1674
-                            if (!empty($line)) {
1675
-                                $ACARS->add(isset($line['text']) ? $line['text'] : '', array('registration' => str_replace('.', '', $line['tail']), 'ident' => $line['flight'], 'label' => $line['label'], 'block_id' => $line['block_id'], 'msg_no' => $line['msgno'], 'message' => (isset($line['text']) ? $line['text'] : '')));
1676
-                                $ACARS->deleteLiveAcarsData();
1677
-                            }
1678
-                        }
1679
-                    }
1680
-                }
1681
-            } else {
1682
-                $format = $value['format'];
1683
-                if (isset($tt[$format])) $tt[$format]++;
1684
-                else $tt[$format] = 0;
1685
-                if ($tt[$format] > 30) {
1686
-                    if ($globalDebug) echo 'Reconnect...'."\n";
1687
-                    sleep(2);
1688
-                    //$sourceeen[] = $value;
1689
-                    //connect_all($sourceeen);
1690
-                    //$sourceeen = array();
1691
-                    connect_all($globalSources);
1692
-                }
1693
-            }
1694
-        }
1659
+		$arr = $httpfeeds;
1660
+		$w = $e = null;
1661
+		if (isset($arr[$id])) {
1662
+			$nn = stream_select($arr,$w,$e,$timeout);
1663
+			if ($nn > 0) {
1664
+				foreach ($httpfeeds as $feed) {
1665
+					$buffer = stream_get_line($feed,2000,"\n");
1666
+					if ($buffer === FALSE) {
1667
+						connect_all($globalSources);
1668
+					}
1669
+					$buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'\n',$buffer));
1670
+					$buffer = explode('\n',$buffer);
1671
+					foreach ($buffer as $line) {
1672
+						if ($line != '') {
1673
+							$line = json_decode($line, true);
1674
+							if (!empty($line)) {
1675
+								$ACARS->add(isset($line['text']) ? $line['text'] : '', array('registration' => str_replace('.', '', $line['tail']), 'ident' => $line['flight'], 'label' => $line['label'], 'block_id' => $line['block_id'], 'msg_no' => $line['msgno'], 'message' => (isset($line['text']) ? $line['text'] : '')));
1676
+								$ACARS->deleteLiveAcarsData();
1677
+							}
1678
+						}
1679
+					}
1680
+				}
1681
+			} else {
1682
+				$format = $value['format'];
1683
+				if (isset($tt[$format])) $tt[$format]++;
1684
+				else $tt[$format] = 0;
1685
+				if ($tt[$format] > 30) {
1686
+					if ($globalDebug) echo 'Reconnect...'."\n";
1687
+					sleep(2);
1688
+					//$sourceeen[] = $value;
1689
+					//connect_all($sourceeen);
1690
+					//$sourceeen = array();
1691
+					connect_all($globalSources);
1692
+				}
1693
+			}
1694
+		}
1695 1695
 	//} elseif ($value === 'sbs' || $value === 'tsv' || $value === 'raw' || $value === 'aprs' || $value === 'beast') {
1696 1696
 	} elseif ($value['format'] === 'sbs' || $value['format'] === 'tsv' || $value['format'] === 'raw' || $value['format'] === 'aprs' || $value['format'] === 'famaprs' || $value['format'] === 'beast' || $value['format'] === 'flightgearmp' || $value['format'] === 'flightgearsp' || $value['format'] === 'acars' || $value['format'] === 'acarsjsonudp' || $value['format'] === 'acarssbs3' || $value['format'] === 'ais' || $value['format'] === 'vrstcp') {
1697
-	    //$last_exec[$id]['last'] = time();
1698
-	    //$read = array( $sockets[$id] );
1699
-	    $read = $sockets;
1700
-	    $write = NULL;
1701
-	    $e = NULL;
1702
-	    $n = socket_select($read, $write, $e, $timeout);
1703
-	    if ($e != NULL) var_dump($e);
1704
-	    if ($n > 0) {
1697
+		//$last_exec[$id]['last'] = time();
1698
+		//$read = array( $sockets[$id] );
1699
+		$read = $sockets;
1700
+		$write = NULL;
1701
+		$e = NULL;
1702
+		$n = socket_select($read, $write, $e, $timeout);
1703
+		if ($e != NULL) var_dump($e);
1704
+		if ($n > 0) {
1705 1705
 		$reset = 0;
1706 1706
 		foreach ($read as $nb => $r) {
1707
-		    //$value = $formats[$nb];
1708
-		    $format = $globalSources[$nb]['format'];
1709
-		    if ($format === 'sbs' || $format === 'aprs' || $format === 'famaprs' || $format === 'raw' || $format === 'tsv' || $format === 'acarssbs3') {
1707
+			//$value = $formats[$nb];
1708
+			$format = $globalSources[$nb]['format'];
1709
+			if ($format === 'sbs' || $format === 'aprs' || $format === 'famaprs' || $format === 'raw' || $format === 'tsv' || $format === 'acarssbs3') {
1710 1710
 			$buffer = @socket_read($r, 6000,PHP_NORMAL_READ);
1711
-		    } elseif ($format === 'vrstcp') {
1711
+			} elseif ($format === 'vrstcp') {
1712 1712
 			$buffer = @socket_read($r, 6000);
1713
-		    } else {
1713
+			} else {
1714 1714
 			$az = socket_recvfrom($r,$buffer,6000,0,$remote_ip,$remote_port);
1715
-		    }
1716
-		    //$buffer = socket_read($r, 60000,PHP_NORMAL_READ);
1717
-		    //echo $buffer."\n";
1718
-		    // lets play nice and handle signals such as ctrl-c/kill properly
1719
-		    //if (function_exists('pcntl_fork')) pcntl_signal_dispatch();
1720
-		    $error = false;
1721
-		    //$SI::del();
1722
-		    if ($buffer !== FALSE) {
1715
+			}
1716
+			//$buffer = socket_read($r, 60000,PHP_NORMAL_READ);
1717
+			//echo $buffer."\n";
1718
+			// lets play nice and handle signals such as ctrl-c/kill properly
1719
+			//if (function_exists('pcntl_fork')) pcntl_signal_dispatch();
1720
+			$error = false;
1721
+			//$SI::del();
1722
+			if ($buffer !== FALSE) {
1723 1723
 			if ($format === 'vrstcp') {
1724
-			    $buffer = explode('},{',$buffer);
1724
+				$buffer = explode('},{',$buffer);
1725 1725
 			} else $buffer=trim(str_replace(array("\r\n","\r","\n","\\r","\\n","\\r\\n"),'',$buffer));
1726
-		    }
1727
-		    // SBS format is CSV format
1728
-		    if ($buffer !== FALSE && $buffer !== '') {
1726
+			}
1727
+			// SBS format is CSV format
1728
+			if ($buffer !== FALSE && $buffer !== '') {
1729 1729
 			$tt[$format] = 0;
1730 1730
 			if ($format === 'acarssbs3') {
1731
-			    if ($globalDebug) echo 'ACARS : '.$buffer."\n";
1732
-			    $ACARS->add(trim($buffer));
1733
-			    $ACARS->deleteLiveAcarsData();
1731
+				if ($globalDebug) echo 'ACARS : '.$buffer."\n";
1732
+				$ACARS->add(trim($buffer));
1733
+				$ACARS->deleteLiveAcarsData();
1734 1734
 			} elseif ($format === 'raw') {
1735
-			    // AVR format
1736
-			    $data = $SBS->parse($buffer);
1737
-			    if (is_array($data)) {
1735
+				// AVR format
1736
+				$data = $SBS->parse($buffer);
1737
+				if (is_array($data)) {
1738 1738
 				//if (!empty($data)) print_r($data);
1739 1739
 				$data['datetime'] = date('Y-m-d H:i:s');
1740 1740
 				$data['format_source'] = 'raw';
@@ -1744,39 +1744,39 @@  discard block
 block discarded – undo
1744 1744
 				//if (($data['latitude'] === '' && $data['longitude'] === '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
1745 1745
 				$SI->add($data);
1746 1746
 				unset($data);
1747
-			    }
1747
+				}
1748 1748
 			} elseif ($format === 'ais') {
1749
-			    $ais_data = $AIS->parse_line(trim($buffer));
1750
-			    $data = array();
1751
-			    if (isset($ais_data['ident'])) $data['ident'] = $ais_data['ident'];
1752
-			    if (isset($ais_data['mmsi'])) $data['mmsi'] = substr($ais_data['mmsi'],-9);
1753
-			    if (isset($ais_data['speed'])) $data['speed'] = $ais_data['speed'];
1754
-			    if (isset($ais_data['heading'])) $data['heading'] = $ais_data['heading'];
1755
-			    if (isset($ais_data['latitude'])) $data['latitude'] = $ais_data['latitude'];
1756
-			    if (isset($ais_data['longitude'])) $data['longitude'] = $ais_data['longitude'];
1757
-			    if (isset($ais_data['status'])) $data['status'] = $ais_data['status'];
1758
-			    if (isset($ais_data['statusid'])) $data['status_id'] = $ais_data['statusid'];
1759
-			    if (isset($ais_data['type'])) $data['type'] = $ais_data['type'];
1760
-			    if (isset($ais_data['imo'])) $data['imo'] = $ais_data['imo'];
1761
-			    if (isset($ais_data['callsign'])) $data['callsign'] = $ais_data['callsign'];
1762
-			    if (isset($ais_data['destination'])) $data['arrival_code'] = $ais_data['destination'];
1763
-			    if (isset($ais_data['eta_ts'])) $data['arrival_date'] = date('Y-m-d H:i:s',$ais_data['eta_ts']);
1764
-			    if (isset($globalSources[$nb]['noarchive']) && $globalSources[$nb]['noarchive'] === TRUE) $data['noarchive'] = true;
1765
-			    if (isset($globalSources[$nb]['name']) && $globalSources[$nb]['name'] != '') $data['source_name'] = $globalSources[$nb]['name'];
1766
-			    if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
1749
+				$ais_data = $AIS->parse_line(trim($buffer));
1750
+				$data = array();
1751
+				if (isset($ais_data['ident'])) $data['ident'] = $ais_data['ident'];
1752
+				if (isset($ais_data['mmsi'])) $data['mmsi'] = substr($ais_data['mmsi'],-9);
1753
+				if (isset($ais_data['speed'])) $data['speed'] = $ais_data['speed'];
1754
+				if (isset($ais_data['heading'])) $data['heading'] = $ais_data['heading'];
1755
+				if (isset($ais_data['latitude'])) $data['latitude'] = $ais_data['latitude'];
1756
+				if (isset($ais_data['longitude'])) $data['longitude'] = $ais_data['longitude'];
1757
+				if (isset($ais_data['status'])) $data['status'] = $ais_data['status'];
1758
+				if (isset($ais_data['statusid'])) $data['status_id'] = $ais_data['statusid'];
1759
+				if (isset($ais_data['type'])) $data['type'] = $ais_data['type'];
1760
+				if (isset($ais_data['imo'])) $data['imo'] = $ais_data['imo'];
1761
+				if (isset($ais_data['callsign'])) $data['callsign'] = $ais_data['callsign'];
1762
+				if (isset($ais_data['destination'])) $data['arrival_code'] = $ais_data['destination'];
1763
+				if (isset($ais_data['eta_ts'])) $data['arrival_date'] = date('Y-m-d H:i:s',$ais_data['eta_ts']);
1764
+				if (isset($globalSources[$nb]['noarchive']) && $globalSources[$nb]['noarchive'] === TRUE) $data['noarchive'] = true;
1765
+				if (isset($globalSources[$nb]['name']) && $globalSources[$nb]['name'] != '') $data['source_name'] = $globalSources[$nb]['name'];
1766
+				if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
1767 1767
 
1768
-			    if (isset($ais_data['timestamp'])) {
1768
+				if (isset($ais_data['timestamp'])) {
1769 1769
 				$data['datetime'] = date('Y-m-d H:i:s',$ais_data['timestamp']);
1770
-			    } else {
1770
+				} else {
1771 1771
 				$data['datetime'] = date('Y-m-d H:i:s');
1772
-			    }
1773
-			    $data['format_source'] = 'aisnmea';
1774
-    			    $data['id_source'] = $id_source;
1775
-			    if (isset($ais_data['mmsi_type']) && $ais_data['mmsi_type'] === 'Ship') $MI->add($data);
1776
-			    unset($data);
1777
-                        } elseif ($format === 'flightgearsp') {
1778
-                    	    //echo $buffer."\n";
1779
-                    	    if (strlen($buffer) > 5) {
1772
+				}
1773
+				$data['format_source'] = 'aisnmea';
1774
+					$data['id_source'] = $id_source;
1775
+				if (isset($ais_data['mmsi_type']) && $ais_data['mmsi_type'] === 'Ship') $MI->add($data);
1776
+				unset($data);
1777
+						} elseif ($format === 'flightgearsp') {
1778
+							//echo $buffer."\n";
1779
+							if (strlen($buffer) > 5) {
1780 1780
 				$line = explode(',',$buffer);
1781 1781
 				$data = array();
1782 1782
 				//XGPS,2.0947,41.3093,-3047.6953,198.930,0.000,callsign,c172p
@@ -1793,47 +1793,47 @@  discard block
 block discarded – undo
1793 1793
 				if (isset($globalSources[$nb]['noarchive']) && $globalSources[$nb]['noarchive'] === TRUE) $data['noarchive'] = true;
1794 1794
 				if (($data['latitude'] === '' && $data['longitude'] === '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
1795 1795
 				//$send = @ socket_send( $r  , $data_aprs , strlen($data_aprs) , 0 );
1796
-			    }
1797
-                        } elseif ($format === 'acars') {
1798
-                    	    if ($globalDebug) echo 'ACARS : '.$buffer."\n";
1799
-			    $ACARS->add(trim($buffer));
1800
-			    socket_sendto($r, "OK " . $buffer , 100 , 0 , $remote_ip , $remote_port);
1801
-			    $ACARS->deleteLiveAcarsData();
1796
+				}
1797
+						} elseif ($format === 'acars') {
1798
+							if ($globalDebug) echo 'ACARS : '.$buffer."\n";
1799
+				$ACARS->add(trim($buffer));
1800
+				socket_sendto($r, "OK " . $buffer , 100 , 0 , $remote_ip , $remote_port);
1801
+				$ACARS->deleteLiveAcarsData();
1802 1802
 			} elseif ($format === 'acarsjsonudp') {
1803
-			    if ($globalDebug) echo 'ACARS : '.$buffer."\n";
1804
-                            $line = json_decode(trim($buffer), true);
1805
-                            if (!empty($line)) {
1803
+				if ($globalDebug) echo 'ACARS : '.$buffer."\n";
1804
+							$line = json_decode(trim($buffer), true);
1805
+							if (!empty($line)) {
1806 1806
 				$line = array_merge(array('text' => '','tail' => '','label' => '','block_id' => '','flight' => '','msgno' => ''),$line);
1807
-                                $ACARS->add(isset($line['text']) ? $line['text'] : '', array('registration' => str_replace('.', '', $line['tail']), 'ident' => $line['flight'], 'label' => $line['label'], 'block_id' => $line['block_id'], 'msg_no' => $line['msgno'], 'message' => (isset($line['text']) ? $line['text'] : '')));
1808
-                                $ACARS->deleteLiveAcarsData();
1809
-                            }
1810
-			    socket_sendto($r, "OK " . $buffer , 100 , 0 , $remote_ip , $remote_port);
1807
+								$ACARS->add(isset($line['text']) ? $line['text'] : '', array('registration' => str_replace('.', '', $line['tail']), 'ident' => $line['flight'], 'label' => $line['label'], 'block_id' => $line['block_id'], 'msg_no' => $line['msgno'], 'message' => (isset($line['text']) ? $line['text'] : '')));
1808
+								$ACARS->deleteLiveAcarsData();
1809
+							}
1810
+				socket_sendto($r, "OK " . $buffer , 100 , 0 , $remote_ip , $remote_port);
1811 1811
 			} elseif ($format === 'flightgearmp') {
1812
-			    if (substr($buffer,0,1) != '#') {
1812
+				if (substr($buffer,0,1) != '#') {
1813 1813
 				$data = array();
1814 1814
 				//echo $buffer."\n";
1815 1815
 				$line = explode(' ',$buffer);
1816 1816
 				if (count($line) === 11) {
1817
-				    $userserver = explode('@',$line[0]);
1818
-				    $data['hex'] = substr(str_pad(bin2hex($line[0]),6,'000000',STR_PAD_LEFT),0,6); // hex
1819
-				    $data['ident'] = $userserver[0];
1820
-				    $data['registration'] = $userserver[0];
1821
-				    $data['latitude'] = $line[4];
1822
-				    $data['longitude'] = $line[5];
1823
-				    $data['altitude'] = $line[6];
1824
-				    $data['datetime'] = date('Y-m-d H:i:s');
1825
-				    $aircraft_type = $line[10];
1826
-				    $aircraft_type = preg_split(':/:',$aircraft_type);
1827
-				    $data['aircraft_name'] = substr(end($aircraft_type),0,-4);
1828
-				    if (isset($globalSources[$nb]['noarchive']) && $globalSources[$nb]['noarchive'] === TRUE) $data['noarchive'] = true;
1829
-				    if (($data['latitude'] === '' && $data['longitude'] === '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
1817
+					$userserver = explode('@',$line[0]);
1818
+					$data['hex'] = substr(str_pad(bin2hex($line[0]),6,'000000',STR_PAD_LEFT),0,6); // hex
1819
+					$data['ident'] = $userserver[0];
1820
+					$data['registration'] = $userserver[0];
1821
+					$data['latitude'] = $line[4];
1822
+					$data['longitude'] = $line[5];
1823
+					$data['altitude'] = $line[6];
1824
+					$data['datetime'] = date('Y-m-d H:i:s');
1825
+					$aircraft_type = $line[10];
1826
+					$aircraft_type = preg_split(':/:',$aircraft_type);
1827
+					$data['aircraft_name'] = substr(end($aircraft_type),0,-4);
1828
+					if (isset($globalSources[$nb]['noarchive']) && $globalSources[$nb]['noarchive'] === TRUE) $data['noarchive'] = true;
1829
+					if (($data['latitude'] === '' && $data['longitude'] === '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
1830
+				}
1830 1831
 				}
1831
-			    }
1832 1832
 			} elseif ($format === 'beast') {
1833
-			    echo 'Beast Binary format not yet supported. Beast AVR format is supported in alpha state'."\n";
1834
-			    die;
1833
+				echo 'Beast Binary format not yet supported. Beast AVR format is supported in alpha state'."\n";
1834
+				die;
1835 1835
 			} elseif ($format === 'vrstcp') {
1836
-			    foreach($buffer as $all_data) {
1836
+				foreach($buffer as $all_data) {
1837 1837
 				$line = json_decode('{'.$all_data.'}',true);
1838 1838
 				$data = array();
1839 1839
 				if (isset($line['Icao'])) $data['hex'] = $line['Icao']; // hex
@@ -1853,158 +1853,158 @@  discard block
 block discarded – undo
1853 1853
 				*/
1854 1854
 				$data['datetime'] = date('Y-m-d H:i:s');
1855 1855
 				if (isset($line['Type'])) $data['aircraft_icao'] = $line['Type'];
1856
-		    		$data['format_source'] = 'vrstcp';
1856
+					$data['format_source'] = 'vrstcp';
1857 1857
 				$data['id_source'] = $id_source;
1858 1858
 				if (isset($globalSources[$nb]['noarchive']) && $globalSources[$nb]['noarchive'] === TRUE) $data['noarchive'] = true;
1859 1859
 				if (isset($value['name']) && $value['name'] != '') $data['source_name'] = $value['name'];
1860 1860
 				if (isset($data['latitude']) && isset($data['hex'])) $SI->add($data);
1861 1861
 				unset($data);
1862
-			    }
1862
+				}
1863 1863
 			} elseif ($format === 'tsv' || substr($buffer,0,4) === 'clock') {
1864
-			    $line = explode("\t", $buffer);
1865
-			    for($k = 0; $k < count($line); $k=$k+2) {
1864
+				$line = explode("\t", $buffer);
1865
+				for($k = 0; $k < count($line); $k=$k+2) {
1866 1866
 				$key = $line[$k];
1867
-			        $lined[$key] = $line[$k+1];
1868
-			    }
1869
-    			    if (count($lined) > 3) {
1870
-    				$data['hex'] = $lined['hexid'];
1871
-    				//$data['datetime'] = date('Y-m-d H:i:s',strtotime($lined['clock']));;
1872
-    				$data['datetime'] = date('Y-m-d H:i:s');;
1873
-    				if (isset($lined['ident'])) $data['ident'] = $lined['ident'];
1874
-    				if (isset($lined['lat'])) $data['latitude'] = $lined['lat'];
1875
-    				if (isset($lined['lon'])) $data['longitude'] = $lined['lon'];
1876
-    				if (isset($lined['speed'])) $data['speed'] = $lined['speed'];
1877
-    				if (isset($lined['squawk'])) $data['squawk'] = $lined['squawk'];
1878
-    				if (isset($lined['alt'])) $data['altitude'] = $lined['alt'];
1879
-    				if (isset($lined['heading'])) $data['heading'] = $lined['heading'];
1880
-    				$data['id_source'] = $id_source;
1881
-    				$data['format_source'] = 'tsv';
1882
-    				if (isset($globalSources[$nb]['name']) && $globalSources[$nb]['name'] != '') $data['source_name'] = $globalSources[$nb]['name'];
1883
-    				if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
1867
+					$lined[$key] = $line[$k+1];
1868
+				}
1869
+					if (count($lined) > 3) {
1870
+					$data['hex'] = $lined['hexid'];
1871
+					//$data['datetime'] = date('Y-m-d H:i:s',strtotime($lined['clock']));;
1872
+					$data['datetime'] = date('Y-m-d H:i:s');;
1873
+					if (isset($lined['ident'])) $data['ident'] = $lined['ident'];
1874
+					if (isset($lined['lat'])) $data['latitude'] = $lined['lat'];
1875
+					if (isset($lined['lon'])) $data['longitude'] = $lined['lon'];
1876
+					if (isset($lined['speed'])) $data['speed'] = $lined['speed'];
1877
+					if (isset($lined['squawk'])) $data['squawk'] = $lined['squawk'];
1878
+					if (isset($lined['alt'])) $data['altitude'] = $lined['alt'];
1879
+					if (isset($lined['heading'])) $data['heading'] = $lined['heading'];
1880
+					$data['id_source'] = $id_source;
1881
+					$data['format_source'] = 'tsv';
1882
+					if (isset($globalSources[$nb]['name']) && $globalSources[$nb]['name'] != '') $data['source_name'] = $globalSources[$nb]['name'];
1883
+					if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
1884 1884
 				if (isset($globalSources[$nb]['noarchive']) && $globalSources[$nb]['noarchive'] === TRUE) $data['noarchive'] = true;
1885
-    				if (($data['latitude'] === '' && $data['longitude'] === '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
1886
-    				unset($lined);
1887
-    				unset($data);
1888
-    			    } else $error = true;
1885
+					if (($data['latitude'] === '' && $data['longitude'] === '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $SI->add($data);
1886
+					unset($lined);
1887
+					unset($data);
1888
+					} else $error = true;
1889 1889
 			} elseif ($format === 'aprs' && $use_aprs) {
1890
-			    if ($aprs_connect === 0) {
1890
+				if ($aprs_connect === 0) {
1891 1891
 				$send = @ socket_send( $r  , $aprs_login , strlen($aprs_login) , 0 );
1892 1892
 				$aprs_connect = 1;
1893
-			    }
1893
+				}
1894 1894
 			    
1895
-			    if ( $aprs_keep>60 && time() - $aprs_last_tx > $aprs_keep ) {
1895
+				if ( $aprs_keep>60 && time() - $aprs_last_tx > $aprs_keep ) {
1896 1896
 				$aprs_last_tx = time();
1897 1897
 				$data_aprs = "# Keep alive";
1898 1898
 				$send = @ socket_send( $r  , $data_aprs , strlen($data_aprs) , 0 );
1899
-			    }
1899
+				}
1900 1900
 			    
1901
-			    //echo 'Connect : '.$aprs_connect.' '.$buffer."\n";
1902
-			    //echo 'APRS data : '.$buffer."\n";
1903
-			    $buffer = str_replace('APRS <- ','',$buffer);
1904
-			    $buffer = str_replace('APRS -> ','',$buffer);
1905
-			    //echo $buffer."\n";
1906
-			    date_default_timezone_set('UTC');
1907
-			    if (substr($buffer,0,1) != '#' && substr($buffer,0,1) != '@' && substr($buffer,0,5) != 'APRS ') {
1901
+				//echo 'Connect : '.$aprs_connect.' '.$buffer."\n";
1902
+				//echo 'APRS data : '.$buffer."\n";
1903
+				$buffer = str_replace('APRS <- ','',$buffer);
1904
+				$buffer = str_replace('APRS -> ','',$buffer);
1905
+				//echo $buffer."\n";
1906
+				date_default_timezone_set('UTC');
1907
+				if (substr($buffer,0,1) != '#' && substr($buffer,0,1) != '@' && substr($buffer,0,5) != 'APRS ') {
1908 1908
 				$line = $APRS->parse($buffer);
1909 1909
 				//if (is_array($line) && isset($line['address']) && $line['address'] != '' && isset($line['ident'])) {
1910 1910
 				if (is_array($line) && isset($line['latitude']) && isset($line['longitude']) && (isset($line['ident']) || isset($line['address']) || isset($line['mmsi']))) {
1911
-				    $aprs_last_tx = time();
1912
-				    $data = array();
1913
-				    //print_r($line);
1914
-				    if (isset($line['address'])) $data['hex'] = $line['address'];
1915
-				    if (isset($line['mmsi'])) $data['mmsi'] = $line['mmsi'];
1916
-				    if (isset($line['imo'])) $data['imo'] = $line['imo'];
1917
-				    if (isset($line['squawk'])) $data['squawk'] = $line['squawk'];
1918
-				    if (isset($line['arrival_code'])) $data['arrival_code'] = $line['arrival_code'];
1919
-				    if (isset($line['arrival_date'])) $data['arrival_date'] = $line['arrival_date'];
1920
-				    if (isset($line['typeid'])) $data['type_id'] = $line['typeid'];
1921
-				    if (isset($line['statusid'])) $data['status_id'] = $line['statusid'];
1922
-				    if (isset($line['timestamp'])) $data['datetime'] = date('Y-m-d H:i:s',$line['timestamp']);
1923
-				    else $data['datetime'] = date('Y-m-d H:i:s');
1924
-				    //$data['datetime'] = date('Y-m-d H:i:s');
1925
-				    if (isset($line['ident'])) $data['ident'] = $line['ident'];
1926
-				    $data['latitude'] = $line['latitude'];
1927
-				    $data['longitude'] = $line['longitude'];
1928
-				    //$data['verticalrate'] = $line[16];
1929
-				    if (isset($line['speed'])) $data['speed'] = $line['speed'];
1930
-				    //else $data['speed'] = 0;
1931
-				    if (isset($line['altitude'])) $data['altitude'] = $line['altitude'];
1932
-				    if (isset($line['comment'])) $data['comment'] = $line['comment'];
1933
-				    if (isset($line['symbol'])) $data['type'] = $line['symbol'];
1934
-				    //if (isset($line['heading'])) $data['heading'] = $line['heading'];
1911
+					$aprs_last_tx = time();
1912
+					$data = array();
1913
+					//print_r($line);
1914
+					if (isset($line['address'])) $data['hex'] = $line['address'];
1915
+					if (isset($line['mmsi'])) $data['mmsi'] = $line['mmsi'];
1916
+					if (isset($line['imo'])) $data['imo'] = $line['imo'];
1917
+					if (isset($line['squawk'])) $data['squawk'] = $line['squawk'];
1918
+					if (isset($line['arrival_code'])) $data['arrival_code'] = $line['arrival_code'];
1919
+					if (isset($line['arrival_date'])) $data['arrival_date'] = $line['arrival_date'];
1920
+					if (isset($line['typeid'])) $data['type_id'] = $line['typeid'];
1921
+					if (isset($line['statusid'])) $data['status_id'] = $line['statusid'];
1922
+					if (isset($line['timestamp'])) $data['datetime'] = date('Y-m-d H:i:s',$line['timestamp']);
1923
+					else $data['datetime'] = date('Y-m-d H:i:s');
1924
+					//$data['datetime'] = date('Y-m-d H:i:s');
1925
+					if (isset($line['ident'])) $data['ident'] = $line['ident'];
1926
+					$data['latitude'] = $line['latitude'];
1927
+					$data['longitude'] = $line['longitude'];
1928
+					//$data['verticalrate'] = $line[16];
1929
+					if (isset($line['speed'])) $data['speed'] = $line['speed'];
1930
+					//else $data['speed'] = 0;
1931
+					if (isset($line['altitude'])) $data['altitude'] = $line['altitude'];
1932
+					if (isset($line['comment'])) $data['comment'] = $line['comment'];
1933
+					if (isset($line['symbol'])) $data['type'] = $line['symbol'];
1934
+					//if (isset($line['heading'])) $data['heading'] = $line['heading'];
1935 1935
 				    
1936
-				    if (isset($line['heading']) && isset($line['format_source'])) $data['heading'] = $line['heading'];
1937
-				    //else echo 'No heading...'."\n";
1938
-				    //else $data['heading'] = 0;
1939
-				    if (isset($line['stealth'])) $data['aircraft_type'] = $line['stealth'];
1940
-				    //if (!isset($line['source_type']) && (!isset($globalAPRSarchive) || (isset($globalAPRSarchive) && $globalAPRSarchive === FALSE))) $data['noarchive'] = true;
1941
-				    if (isset($globalAPRSarchive) && $globalAPRSarchive === FALSE) $data['noarchive'] = true;
1942
-				    elseif (isset($globalAPRSarchive) && $globalAPRSarchive === TRUE) $data['noarchive'] = false;
1943
-				    if (isset($globalSources[$nb]['noarchive']) && $globalSources[$nb]['noarchive'] === TRUE) $data['noarchive'] = true;
1944
-				    elseif (isset($globalSources[$nb]['noarchive']) && $globalSources[$nb]['noarchive'] === FALSE) $data['noarchive'] = false;
1945
-    				    $data['id_source'] = $id_source;
1946
-    				    if (isset($line['format_source'])) $data['format_source'] = $line['format_source'];
1947
-				    else $data['format_source'] = 'aprs';
1948
-				    $data['source_name'] = $line['source'];
1949
-				    if (isset($line['source_type'])) $data['source_type'] = $line['source_type'];
1950
-				    else $data['source_type'] = 'flarm';
1951
-    				    if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
1952
-				    $currentdate = date('Y-m-d H:i:s');
1953
-				    $aprsdate = strtotime($data['datetime']);
1954
-				    if ($data['source_type'] != 'modes' && $data['source_type'] != 'ais') $data['altitude_relative'] = 'AMSL';
1955
-				    // Accept data if time <= system time + 20s
1956
-				    //if (($data['source_type'] === 'modes') || isset($line['stealth']) && ($line['stealth'] === 0 || $line['stealth'] === '') && (strtotime($data['datetime']) <= strtotime($currentdate)+20) && (($data['latitude'] === '' && $data['longitude'] === '') || (is_numeric($data['latitude']) && is_numeric($data['longitude'])))) {
1957
-				    if (
1936
+					if (isset($line['heading']) && isset($line['format_source'])) $data['heading'] = $line['heading'];
1937
+					//else echo 'No heading...'."\n";
1938
+					//else $data['heading'] = 0;
1939
+					if (isset($line['stealth'])) $data['aircraft_type'] = $line['stealth'];
1940
+					//if (!isset($line['source_type']) && (!isset($globalAPRSarchive) || (isset($globalAPRSarchive) && $globalAPRSarchive === FALSE))) $data['noarchive'] = true;
1941
+					if (isset($globalAPRSarchive) && $globalAPRSarchive === FALSE) $data['noarchive'] = true;
1942
+					elseif (isset($globalAPRSarchive) && $globalAPRSarchive === TRUE) $data['noarchive'] = false;
1943
+					if (isset($globalSources[$nb]['noarchive']) && $globalSources[$nb]['noarchive'] === TRUE) $data['noarchive'] = true;
1944
+					elseif (isset($globalSources[$nb]['noarchive']) && $globalSources[$nb]['noarchive'] === FALSE) $data['noarchive'] = false;
1945
+						$data['id_source'] = $id_source;
1946
+						if (isset($line['format_source'])) $data['format_source'] = $line['format_source'];
1947
+					else $data['format_source'] = 'aprs';
1948
+					$data['source_name'] = $line['source'];
1949
+					if (isset($line['source_type'])) $data['source_type'] = $line['source_type'];
1950
+					else $data['source_type'] = 'flarm';
1951
+						if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
1952
+					$currentdate = date('Y-m-d H:i:s');
1953
+					$aprsdate = strtotime($data['datetime']);
1954
+					if ($data['source_type'] != 'modes' && $data['source_type'] != 'ais') $data['altitude_relative'] = 'AMSL';
1955
+					// Accept data if time <= system time + 20s
1956
+					//if (($data['source_type'] === 'modes') || isset($line['stealth']) && ($line['stealth'] === 0 || $line['stealth'] === '') && (strtotime($data['datetime']) <= strtotime($currentdate)+20) && (($data['latitude'] === '' && $data['longitude'] === '') || (is_numeric($data['latitude']) && is_numeric($data['longitude'])))) {
1957
+					if (
1958 1958
 					($data['source_type'] === 'modes') || 
1959 1959
 					isset($line['stealth']) && 
1960 1960
 					(!isset($data['hex']) || $data['hex'] != 'FFFFFF') && 
1961 1961
 					 ($line['stealth'] === 0 || $line['stealth'] == '') && 
1962 1962
 					 (($data['latitude'] == '' && $data['longitude'] == '') || (is_numeric($data['latitude']) && is_numeric($data['longitude'])))) {
1963 1963
 					$send = $SI->add($data);
1964
-				    } elseif ($data['source_type'] === 'ais') {
1964
+					} elseif ($data['source_type'] === 'ais') {
1965 1965
 					$data['type'] = '';
1966 1966
 					if (isset($globalMarine) && $globalMarine) $send = $MI->add($data);
1967
-				    } elseif (isset($line['stealth']) && $line['stealth'] != 0) {
1967
+					} elseif (isset($line['stealth']) && $line['stealth'] != 0) {
1968 1968
 					 echo '-------- '.$data['ident'].' : APRS stealth ON => not adding'."\n";
1969
-				    } elseif (isset($globalAircraft) && $globalAircraft && isset($line['symbol']) && isset($line['latitude']) && isset($line['longitude']) && (
1970
-					    //$line['symbol'] === 'Balloon' ||
1971
-					    $line['symbol'] === 'Glider' || 
1972
-					    $line['symbol'] === 'No. Plane' || 
1973
-					    $line['symbol'] === 'Aircraft (small)' || $line['symbol'] === 'Helicopter')) {
1974
-					    if ($line['symbol'] === 'Ballon') $data['aircraft_icao'] = 'BALL';
1975
-					    if ($line['symbol'] === 'Glider') $data['aircraft_icao'] = 'PARAGLIDER';
1976
-					    $send = $SI->add($data);
1977
-				    } elseif (isset($globalMarine) && $globalMarine && isset($line['symbol']) && isset($line['latitude']) && isset($line['longitude']) && (
1978
-					    $line['symbol'] === 'Yacht (Sail)' || 
1979
-					    $line['symbol'] === 'Ship (Power Boat)')) {
1980
-					    $send = $MI->add($data);
1981
-				    } elseif (isset($line['symbol']) && isset($line['latitude']) && isset($line['longitude']) && (
1982
-					    $line['symbol'] === 'Car' || 
1983
-					    $line['symbol'] === 'Ambulance' || 
1984
-					    $line['symbol'] === 'Van' || 
1985
-					    $line['symbol'] === 'Truck' || $line['symbol'] === 'Truck (18 Wheeler)' || 
1986
-					    $line['symbol'] === 'Motorcycle' || 
1987
-					    $line['symbol'] === 'Tractor' || 
1988
-					    $line['symbol'] === 'Police' || 
1989
-					    $line['symbol'] === 'Bike' || 
1990
-					    $line['symbol'] === 'Jogger' || 
1991
-					    $line['symbol'] === 'Horse' || 
1992
-					    $line['symbol'] === 'Bus' || 
1993
-					    $line['symbol'] === 'Jeep' || 
1994
-					    $line['symbol'] === 'Recreational Vehicle' || 
1995
-					    $line['symbol'] === 'Yacht (Sail)' || 
1996
-					    $line['symbol'] === 'Ship (Power Boat)' || 
1997
-					    $line['symbol'] === 'Firetruck' || 
1998
-					    $line['symbol'] === 'Balloon' || $line['symbol'] === 'Glider' || 
1999
-					    $line['symbol'] === 'Aircraft (small)' || $line['symbol'] === 'Helicopter' || 
2000
-					    $line['symbol'] === 'SUV' ||
2001
-					    $line['symbol'] === 'Snowmobile' ||
2002
-					    $line['symbol'] === 'Mobile Satellite Station')) {
2003
-				    //} elseif (isset($line['symbol']) && isset($line['latitude']) && isset($line['longitude']) && isset($line['speed']) && $line['symbol'] != 'Weather Station' && $line['symbol'] != 'House QTH (VHF)' && $line['symbol'] != 'Dot' && $line['symbol'] != 'TCP-IP' && $line['symbol'] != 'xAPRS (UNIX)' && $line['symbol'] != 'Antenna' && $line['symbol'] != 'Cloudy' && $line['symbol'] != 'HF Gateway' && $line['symbol'] != 'Yagi At QTH' && $line['symbol'] != 'Digi' && $line['symbol'] != '8' && $line['symbol'] != 'MacAPRS') {
1969
+					} elseif (isset($globalAircraft) && $globalAircraft && isset($line['symbol']) && isset($line['latitude']) && isset($line['longitude']) && (
1970
+						//$line['symbol'] === 'Balloon' ||
1971
+						$line['symbol'] === 'Glider' || 
1972
+						$line['symbol'] === 'No. Plane' || 
1973
+						$line['symbol'] === 'Aircraft (small)' || $line['symbol'] === 'Helicopter')) {
1974
+						if ($line['symbol'] === 'Ballon') $data['aircraft_icao'] = 'BALL';
1975
+						if ($line['symbol'] === 'Glider') $data['aircraft_icao'] = 'PARAGLIDER';
1976
+						$send = $SI->add($data);
1977
+					} elseif (isset($globalMarine) && $globalMarine && isset($line['symbol']) && isset($line['latitude']) && isset($line['longitude']) && (
1978
+						$line['symbol'] === 'Yacht (Sail)' || 
1979
+						$line['symbol'] === 'Ship (Power Boat)')) {
1980
+						$send = $MI->add($data);
1981
+					} elseif (isset($line['symbol']) && isset($line['latitude']) && isset($line['longitude']) && (
1982
+						$line['symbol'] === 'Car' || 
1983
+						$line['symbol'] === 'Ambulance' || 
1984
+						$line['symbol'] === 'Van' || 
1985
+						$line['symbol'] === 'Truck' || $line['symbol'] === 'Truck (18 Wheeler)' || 
1986
+						$line['symbol'] === 'Motorcycle' || 
1987
+						$line['symbol'] === 'Tractor' || 
1988
+						$line['symbol'] === 'Police' || 
1989
+						$line['symbol'] === 'Bike' || 
1990
+						$line['symbol'] === 'Jogger' || 
1991
+						$line['symbol'] === 'Horse' || 
1992
+						$line['symbol'] === 'Bus' || 
1993
+						$line['symbol'] === 'Jeep' || 
1994
+						$line['symbol'] === 'Recreational Vehicle' || 
1995
+						$line['symbol'] === 'Yacht (Sail)' || 
1996
+						$line['symbol'] === 'Ship (Power Boat)' || 
1997
+						$line['symbol'] === 'Firetruck' || 
1998
+						$line['symbol'] === 'Balloon' || $line['symbol'] === 'Glider' || 
1999
+						$line['symbol'] === 'Aircraft (small)' || $line['symbol'] === 'Helicopter' || 
2000
+						$line['symbol'] === 'SUV' ||
2001
+						$line['symbol'] === 'Snowmobile' ||
2002
+						$line['symbol'] === 'Mobile Satellite Station')) {
2003
+					//} elseif (isset($line['symbol']) && isset($line['latitude']) && isset($line['longitude']) && isset($line['speed']) && $line['symbol'] != 'Weather Station' && $line['symbol'] != 'House QTH (VHF)' && $line['symbol'] != 'Dot' && $line['symbol'] != 'TCP-IP' && $line['symbol'] != 'xAPRS (UNIX)' && $line['symbol'] != 'Antenna' && $line['symbol'] != 'Cloudy' && $line['symbol'] != 'HF Gateway' && $line['symbol'] != 'Yagi At QTH' && $line['symbol'] != 'Digi' && $line['symbol'] != '8' && $line['symbol'] != 'MacAPRS') {
2004 2004
 				//    } elseif (isset($line['symbol']) && isset($line['latitude']) && isset($line['longitude']) && $line['symbol'] != 'Weather Station' && $line['symbol'] != 'House QTH (VHF)' && $line['symbol'] != 'Dot' && $line['symbol'] != 'TCP-IP' && $line['symbol'] != 'xAPRS (UNIX)' && $line['symbol'] != 'Antenna' && $line['symbol'] != 'Cloudy' && $line['symbol'] != 'HF Gateway' && $line['symbol'] != 'Yagi At QTH' && $line['symbol'] != 'Digi' && $line['symbol'] != '8' && $line['symbol'] != 'MacAPRS') {
2005 2005
 					//echo '!!!!!!!!!!!!!!!! SEND !!!!!!!!!!!!!!!!!!!!'."\n";
2006 2006
 					if (isset($globalTracker) && $globalTracker) $send = $TI->add($data);
2007
-				    } elseif (!isset($line['stealth']) && is_numeric($data['latitude']) && is_numeric($data['longitude']) && isset($data['ident']) && isset($data['altitude'])) {
2007
+					} elseif (!isset($line['stealth']) && is_numeric($data['latitude']) && is_numeric($data['longitude']) && isset($data['ident']) && isset($data['altitude'])) {
2008 2008
 					if (!isset($data['altitude'])) $data['altitude'] = 0;
2009 2009
 					$Source->deleteOldLocationByType('gs');
2010 2010
 					if (count($Source->getLocationInfoByNameType($data['ident'],'gs')) > 0) {
@@ -2012,7 +2012,7 @@  discard block
 block discarded – undo
2012 2012
 					} else {
2013 2013
 						$Source->addLocation($data['ident'],$data['latitude'],$data['longitude'],$data['altitude'],'','',$data['source_name'],'antenna.png','gs',$id,0,$data['datetime']);
2014 2014
 					}
2015
-				    } elseif (isset($line['symbol']) && $line['symbol'] === 'Weather Station') {
2015
+					} elseif (isset($line['symbol']) && $line['symbol'] === 'Weather Station') {
2016 2016
 					//if ($globalDebug) echo '!! Weather Station not yet supported'."\n";
2017 2017
 					if ($globalDebug) echo '# Weather Station added'."\n";
2018 2018
 					$Source->deleteOldLocationByType('wx');
@@ -2022,7 +2022,7 @@  discard block
 block discarded – undo
2022 2022
 					} else {
2023 2023
 						$Source->addLocation($data['ident'],$data['latitude'],$data['longitude'],0,'','',$data['source_name'],'wx.png','wx',$id,0,$data['datetime'],$weather_data);
2024 2024
 					}
2025
-				    } elseif (isset($line['symbol']) && ($line['symbol'] === 'Lightning' || $line['symbol'] === 'Thunderstorm')) {
2025
+					} elseif (isset($line['symbol']) && ($line['symbol'] === 'Lightning' || $line['symbol'] === 'Thunderstorm')) {
2026 2026
 					//if ($globalDebug) echo '!! Weather Station not yet supported'."\n";
2027 2027
 					if ($globalDebug) echo '☈ Lightning added'."\n";
2028 2028
 					$Source->deleteOldLocationByType('lightning');
@@ -2031,11 +2031,11 @@  discard block
 block discarded – undo
2031 2031
 					} else {
2032 2032
 						$Source->addLocation($data['ident'],$data['latitude'],$data['longitude'],0,'','',$data['source_name'],'weather/thunderstorm.png','lightning',$id,0,$data['datetime'],$data['comment']);
2033 2033
 					}
2034
-				    } elseif ($globalDebug) {
2035
-				    	echo '/!\ Not added: '.$buffer."\n";
2036
-				    	print_r($line);
2037
-				    }
2038
-				    unset($data);
2034
+					} elseif ($globalDebug) {
2035
+						echo '/!\ Not added: '.$buffer."\n";
2036
+						print_r($line);
2037
+					}
2038
+					unset($data);
2039 2039
 				}
2040 2040
 				elseif (is_array($line) && isset($line['ident']) && $line['ident'] != '') {
2041 2041
 					$Source->updateLocationDescByName($line['ident'],$line['source'],$id,$line['comment']);
@@ -2054,13 +2054,13 @@  discard block
 block discarded – undo
2054 2054
 				} elseif (!isset($globalSources[$nb]['last_weather_clean'])) {
2055 2055
 					$globalSources[$nb]['last_weather_clean'] = time();
2056 2056
 				}
2057
-			    }
2057
+				}
2058 2058
 			} else {
2059
-			    $line = explode(',', $buffer);
2060
-			    //print_r($line);
2061
-    			    if (count($line) > 20) {
2062
-    			    	$data['hex'] = $line[4];
2063
-    				/*
2059
+				$line = explode(',', $buffer);
2060
+				//print_r($line);
2061
+					if (count($line) > 20) {
2062
+						$data['hex'] = $line[4];
2063
+					/*
2064 2064
     				$data['datetime'] = $line[6].' '.$line[7];
2065 2065
     					date_default_timezone_set($globalTimezone);
2066 2066
     					$datetime = new DateTime($data['datetime']);
@@ -2068,31 +2068,31 @@  discard block
 block discarded – undo
2068 2068
     					$data['datetime'] = $datetime->format('Y-m-d H:i:s');
2069 2069
     					date_default_timezone_set('UTC');
2070 2070
     				*/
2071
-    				// Force datetime to current UTC datetime
2072
-    				date_default_timezone_set('UTC');
2073
-    				$data['datetime'] = date('Y-m-d H:i:s');
2074
-    				$data['ident'] = trim($line[10]);
2075
-    				$data['latitude'] = $line[14];
2076
-    				$data['longitude'] = $line[15];
2077
-    				$data['verticalrate'] = $line[16];
2078
-    				$data['emergency'] = $line[20];
2079
-    				$data['speed'] = $line[12];
2080
-    				$data['squawk'] = $line[17];
2081
-    				$data['altitude'] = $line[11];
2082
-    				$data['heading'] = $line[13];
2083
-    				$data['ground'] = $line[21];
2084
-    				$data['emergency'] = $line[19];
2085
-    				$data['format_source'] = 'sbs';
2071
+					// Force datetime to current UTC datetime
2072
+					date_default_timezone_set('UTC');
2073
+					$data['datetime'] = date('Y-m-d H:i:s');
2074
+					$data['ident'] = trim($line[10]);
2075
+					$data['latitude'] = $line[14];
2076
+					$data['longitude'] = $line[15];
2077
+					$data['verticalrate'] = $line[16];
2078
+					$data['emergency'] = $line[20];
2079
+					$data['speed'] = $line[12];
2080
+					$data['squawk'] = $line[17];
2081
+					$data['altitude'] = $line[11];
2082
+					$data['heading'] = $line[13];
2083
+					$data['ground'] = $line[21];
2084
+					$data['emergency'] = $line[19];
2085
+					$data['format_source'] = 'sbs';
2086 2086
 				if (isset($globalSources[$nb]['name']) && $globalSources[$nb]['name'] != '') $data['source_name'] = $globalSources[$nb]['name'];
2087 2087
 				elseif ($line[0] == 'MLAT') $data['source_name'] = 'MLAT';
2088 2088
 				if (isset($globalSources[$nb]['sourcestats'])) $data['sourcestats'] = $globalSources[$nb]['sourcestats'];
2089 2089
 				if (isset($globalSources[$nb]['noarchive']) && $globalSources[$nb]['noarchive'] === TRUE) $data['noarchive'] = true;
2090
-    				$data['id_source'] = $id_source;
2091
-    				if (($data['latitude'] === '' && $data['longitude'] === '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $send = $SI->add($data);
2092
-    				else $error = true;
2093
-    				unset($data);
2094
-    			    } else $error = true;
2095
-			    if ($error) {
2090
+					$data['id_source'] = $id_source;
2091
+					if (($data['latitude'] === '' && $data['longitude'] === '') || (is_numeric($data['latitude']) && is_numeric($data['longitude']))) $send = $SI->add($data);
2092
+					else $error = true;
2093
+					unset($data);
2094
+					} else $error = true;
2095
+				if ($error) {
2096 2096
 				if (count($line) > 1 && ($line[0] === 'STA' || $line[0] === 'AIR' || $line[0] === 'SEL' || $line[0] === 'ID' || $line[0] === 'CLK')) { 
2097 2097
 					if ($globalDebug) echo "Not a message. Ignoring... \n";
2098 2098
 				} else {
@@ -2108,13 +2108,13 @@  discard block
 block discarded – undo
2108 2108
 					connect_all($sourceer);
2109 2109
 					$sourceer = array();
2110 2110
 				}
2111
-			    }
2111
+				}
2112 2112
 			}
2113 2113
 			// Sleep for xxx microseconds
2114 2114
 			if (isset($globalSBSSleep)) usleep($globalSBSSleep);
2115
-		    } else {
2115
+			} else {
2116 2116
 			if ($format === 'flightgearmp') {
2117
-			    	if ($globalDebug) echo "Reconnect FlightGear MP...";
2117
+					if ($globalDebug) echo "Reconnect FlightGear MP...";
2118 2118
 				//@socket_close($r);
2119 2119
 				sleep($globalMinFetch);
2120 2120
 				$sourcefg[$nb] = $globalSources[$nb];
@@ -2123,9 +2123,9 @@  discard block
 block discarded – undo
2123 2123
 				break;
2124 2124
 				
2125 2125
 			} elseif ($format != 'acars' && $format != 'flightgearsp') {
2126
-			    if (isset($tt[$format])) $tt[$format]++;
2127
-			    else $tt[$format] = 0;
2128
-			    if ($tt[$format] > 30 || $buffer === FALSE) {
2126
+				if (isset($tt[$format])) $tt[$format]++;
2127
+				else $tt[$format] = 0;
2128
+				if ($tt[$format] > 30 || $buffer === FALSE) {
2129 2129
 				if ($globalDebug) echo "ERROR : Reconnect ".$format."...";
2130 2130
 				//@socket_close($r);
2131 2131
 				sleep(2);
@@ -2136,24 +2136,24 @@  discard block
 block discarded – undo
2136 2136
 				//connect_all($globalSources);
2137 2137
 				$tt[$format]=0;
2138 2138
 				break;
2139
-			    } 
2140
-			    //else if ($globalDebug) echo "Trying again (".$tt[$format]."x) ".$format."...";
2139
+				} 
2140
+				//else if ($globalDebug) echo "Trying again (".$tt[$format]."x) ".$format."...";
2141
+			}
2141 2142
 			}
2142
-		    }
2143 2143
 		}
2144
-	    } else {
2144
+		} else {
2145 2145
 		$error = socket_strerror(socket_last_error());
2146 2146
 		if (($error != SOCKET_EINPROGRESS && $error != SOCKET_EALREADY && $error != 'Success') || (time() - $time >= $timeout && $error != 'Success')) {
2147 2147
 			if ($globalDebug) echo "ERROR : socket_select give this error ".$error . "\n";
2148 2148
 			if (isset($globalDebug)) echo "Restarting...\n";
2149 2149
 			// Restart the script if possible
2150 2150
 			if (is_array($sockets)) {
2151
-			    if ($globalDebug) echo "Shutdown all sockets...";
2151
+				if ($globalDebug) echo "Shutdown all sockets...";
2152 2152
 			    
2153
-			    foreach ($sockets as $sock) {
2153
+				foreach ($sockets as $sock) {
2154 2154
 				@socket_shutdown($sock,2);
2155 2155
 				@socket_close($sock);
2156
-			    }
2156
+				}
2157 2157
 			    
2158 2158
 			}
2159 2159
 			if ($globalDebug) echo "Waiting...";
@@ -2166,15 +2166,15 @@  discard block
 block discarded – undo
2166 2166
 			if ($globalDebug) echo "Restart all connections...";
2167 2167
 			connect_all($globalSources);
2168 2168
 		}
2169
-	    }
2169
+		}
2170 2170
 	}
2171 2171
 	if ($globalDaemon === false) {
2172
-	    if ($globalDebug) echo 'Check all...'."\n";
2173
-	    if (isset($SI)) $SI->checkAll();
2174
-	    if (isset($TI)) $TI->checkAll();
2175
-	    if (isset($MI)) $MI->checkAll();
2172
+		if ($globalDebug) echo 'Check all...'."\n";
2173
+		if (isset($SI)) $SI->checkAll();
2174
+		if (isset($TI)) $TI->checkAll();
2175
+		if (isset($MI)) $MI->checkAll();
2176
+	}
2176 2177
 	}
2177
-    }
2178 2178
 }
2179 2179
 
2180 2180
 ?>
Please login to merge, or discard this patch.