|
@@ -982,7 +982,7 @@ discard block |
|
|
block discarded – undo |
|
982
|
982
|
try { |
|
983
|
983
|
$sth = $this->db->prepare($query); |
|
984
|
984
|
$sth->execute($query_values); |
|
985
|
|
- } catch(PDOException $e) { |
|
|
985
|
+ } catch (PDOException $e) { |
|
986
|
986
|
echo "error : ".$e->getMessage(); |
|
987
|
987
|
} |
|
988
|
988
|
$all = $sth->fetchAll(PDO::FETCH_ASSOC); |
|
@@ -1000,19 +1000,19 @@ discard block |
|
|
block discarded – undo |
|
1000
|
1000
|
try { |
|
1001
|
1001
|
$sth = $this->db->prepare($query); |
|
1002
|
1002
|
$sth->execute($query_values); |
|
1003
|
|
- } catch(PDOException $e) { |
|
|
1003
|
+ } catch (PDOException $e) { |
|
1004
|
1004
|
echo "error : ".$e->getMessage(); |
|
1005
|
1005
|
} |
|
1006
|
1006
|
$all = $sth->fetchAll(PDO::FETCH_ASSOC); |
|
1007
|
1007
|
return $all; |
|
1008
|
1008
|
} |
|
1009
|
1009
|
public function getAllNOTAMtext() { |
|
1010
|
|
- $query = 'SELECT full_notam FROM notam'; |
|
|
1010
|
+ $query = 'SELECT full_notam FROM notam'; |
|
1011
|
1011
|
$query_values = array(); |
|
1012
|
1012
|
try { |
|
1013
|
1013
|
$sth = $this->db->prepare($query); |
|
1014
|
1014
|
$sth->execute($query_values); |
|
1015
|
|
- } catch(PDOException $e) { |
|
|
1015
|
+ } catch (PDOException $e) { |
|
1016
|
1016
|
echo "error : ".$e->getMessage(); |
|
1017
|
1017
|
} |
|
1018
|
1018
|
$all = $sth->fetchAll(PDO::FETCH_ASSOC); |
|
@@ -1021,13 +1021,13 @@ discard block |
|
|
block discarded – undo |
|
1021
|
1021
|
public function createNOTAMtextFile($filename) { |
|
1022
|
1022
|
$allnotam_result = $this->getAllNOTAMtext(); |
|
1023
|
1023
|
$notamtext = ''; |
|
1024
|
|
- foreach($allnotam_result as $notam) { |
|
|
1024
|
+ foreach ($allnotam_result as $notam) { |
|
1025
|
1025
|
$notamtext .= '%%'."\n"; |
|
1026
|
1026
|
$notamtext .= $notam['full_notam']; |
|
1027
|
1027
|
$notamtext .= "\n".'%%'."\n"; |
|
1028
|
1028
|
} |
|
1029
|
1029
|
//$allnotam = implode('\n%%%%\n',$allnotam_result); |
|
1030
|
|
- file_put_contents($filename,$notamtext); |
|
|
1030
|
+ file_put_contents($filename, $notamtext); |
|
1031
|
1031
|
} |
|
1032
|
1032
|
public function parseNOTAMtextFile($filename) { |
|
1033
|
1033
|
$data = file_get_contents($filename); |
|
@@ -1048,7 +1048,7 @@ discard block |
|
|
block discarded – undo |
|
1048
|
1048
|
try { |
|
1049
|
1049
|
$sth = $this->db->prepare($query); |
|
1050
|
1050
|
$sth->execute($query_values); |
|
1051
|
|
- } catch(PDOException $e) { |
|
|
1051
|
+ } catch (PDOException $e) { |
|
1052
|
1052
|
echo "error : ".$e->getMessage(); |
|
1053
|
1053
|
} |
|
1054
|
1054
|
$all = $sth->fetchAll(PDO::FETCH_ASSOC); |
|
@@ -1057,10 +1057,10 @@ discard block |
|
|
block discarded – undo |
|
1057
|
1057
|
public function getAllNOTAMbyCoord($coord) { |
|
1058
|
1058
|
global $globalDBdriver; |
|
1059
|
1059
|
if (is_array($coord)) { |
|
1060
|
|
- $minlong = filter_var($coord[0],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION); |
|
1061
|
|
- $minlat = filter_var($coord[1],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION); |
|
1062
|
|
- $maxlong = filter_var($coord[2],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION); |
|
1063
|
|
- $maxlat = filter_var($coord[3],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION); |
|
|
1060
|
+ $minlong = filter_var($coord[0], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION); |
|
|
1061
|
+ $minlat = filter_var($coord[1], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION); |
|
|
1062
|
+ $maxlong = filter_var($coord[2], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION); |
|
|
1063
|
+ $maxlat = filter_var($coord[3], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION); |
|
1064
|
1064
|
if ($minlat > $maxlat) { |
|
1065
|
1065
|
$tmplat = $minlat; |
|
1066
|
1066
|
$minlat = $maxlat; |
|
@@ -1082,19 +1082,19 @@ discard block |
|
|
block discarded – undo |
|
1082
|
1082
|
try { |
|
1083
|
1083
|
$sth = $this->db->prepare($query); |
|
1084
|
1084
|
$sth->execute($query_values); |
|
1085
|
|
- } catch(PDOException $e) { |
|
|
1085
|
+ } catch (PDOException $e) { |
|
1086
|
1086
|
echo "error : ".$e->getMessage(); |
|
1087
|
1087
|
} |
|
1088
|
1088
|
$all = $sth->fetchAll(PDO::FETCH_ASSOC); |
|
1089
|
1089
|
return $all; |
|
1090
|
1090
|
} |
|
1091
|
|
- public function getAllNOTAMbyCoordScope($coord,$scope) { |
|
|
1091
|
+ public function getAllNOTAMbyCoordScope($coord, $scope) { |
|
1092
|
1092
|
global $globalDBdriver; |
|
1093
|
1093
|
if (is_array($coord)) { |
|
1094
|
|
- $minlong = filter_var($coord[0],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION); |
|
1095
|
|
- $minlat = filter_var($coord[1],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION); |
|
1096
|
|
- $maxlong = filter_var($coord[2],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION); |
|
1097
|
|
- $maxlat = filter_var($coord[3],FILTER_SANITIZE_NUMBER_FLOAT,FILTER_FLAG_ALLOW_FRACTION); |
|
|
1094
|
+ $minlong = filter_var($coord[0], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION); |
|
|
1095
|
+ $minlat = filter_var($coord[1], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION); |
|
|
1096
|
+ $maxlong = filter_var($coord[2], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION); |
|
|
1097
|
+ $maxlat = filter_var($coord[3], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION); |
|
1098
|
1098
|
} else return array(); |
|
1099
|
1099
|
if ($globalDBdriver == 'mysql') { |
|
1100
|
1100
|
$query = 'SELECT * FROM notam WHERE center_latitude BETWEEN '.$minlat.' AND '.$maxlat.' AND center_longitude BETWEEN '.$minlong.' AND '.$maxlong.' AND radius > 0 AND date_end > UTC_TIMESTAMP() AND date_begin < UTC_TIMESTAMP() AND scope = :scope'; |
|
@@ -1106,7 +1106,7 @@ discard block |
|
|
block discarded – undo |
|
1106
|
1106
|
try { |
|
1107
|
1107
|
$sth = $this->db->prepare($query); |
|
1108
|
1108
|
$sth->execute($query_values); |
|
1109
|
|
- } catch(PDOException $e) { |
|
|
1109
|
+ } catch (PDOException $e) { |
|
1110
|
1110
|
echo "error : ".$e->getMessage(); |
|
1111
|
1111
|
} |
|
1112
|
1112
|
$all = $sth->fetchAll(PDO::FETCH_ASSOC); |
|
@@ -1118,7 +1118,7 @@ discard block |
|
|
block discarded – undo |
|
1118
|
1118
|
try { |
|
1119
|
1119
|
$sth = $this->db->prepare($query); |
|
1120
|
1120
|
$sth->execute($query_values); |
|
1121
|
|
- } catch(PDOException $e) { |
|
|
1121
|
+ } catch (PDOException $e) { |
|
1122
|
1122
|
return "error : ".$e->getMessage(); |
|
1123
|
1123
|
} |
|
1124
|
1124
|
$all = $sth->fetchAll(PDO::FETCH_ASSOC); |
|
@@ -1126,13 +1126,13 @@ discard block |
|
|
block discarded – undo |
|
1126
|
1126
|
else return array(); |
|
1127
|
1127
|
} |
|
1128
|
1128
|
|
|
1129
|
|
- public function addNOTAM($ref,$title,$type,$fir,$code,$rules,$scope,$lower_limit,$upper_limit,$center_latitude,$center_longitude,$radius,$date_begin,$date_end,$permanent,$text,$full_notam) { |
|
|
1129
|
+ public function addNOTAM($ref, $title, $type, $fir, $code, $rules, $scope, $lower_limit, $upper_limit, $center_latitude, $center_longitude, $radius, $date_begin, $date_end, $permanent, $text, $full_notam) { |
|
1130
|
1130
|
$query = "INSERT INTO notam (ref,title,notam_type,fir,code,rules,scope,lower_limit,upper_limit,center_latitude,center_longitude,radius,date_begin,date_end,permanent,notam_text,full_notam) VALUES (:ref,:title,:type,:fir,:code,:rules,:scope,:lower_limit,:upper_limit,:center_latitude,:center_longitude,:radius,:date_begin,:date_end,:permanent,:text,:full_notam)"; |
|
1131
|
|
- $query_values = array(':ref' => $ref,':title' => $title,':type' => $type,':fir' => $fir,':code' => $code,':rules' => $rules,':scope' => $scope,':lower_limit' => $lower_limit,':upper_limit' => $upper_limit,':center_latitude' => $center_latitude,':center_longitude' => $center_longitude,':radius' => $radius,':date_begin' => $date_begin,':date_end' => $date_end,':permanent' => $permanent,':text' => $text,':full_notam' => $full_notam); |
|
|
1131
|
+ $query_values = array(':ref' => $ref, ':title' => $title, ':type' => $type, ':fir' => $fir, ':code' => $code, ':rules' => $rules, ':scope' => $scope, ':lower_limit' => $lower_limit, ':upper_limit' => $upper_limit, ':center_latitude' => $center_latitude, ':center_longitude' => $center_longitude, ':radius' => $radius, ':date_begin' => $date_begin, ':date_end' => $date_end, ':permanent' => $permanent, ':text' => $text, ':full_notam' => $full_notam); |
|
1132
|
1132
|
try { |
|
1133
|
1133
|
$sth = $this->db->prepare($query); |
|
1134
|
1134
|
$sth->execute($query_values); |
|
1135
|
|
- } catch(PDOException $e) { |
|
|
1135
|
+ } catch (PDOException $e) { |
|
1136
|
1136
|
return "error : ".$e->getMessage(); |
|
1137
|
1137
|
} |
|
1138
|
1138
|
} |
|
@@ -1143,7 +1143,7 @@ discard block |
|
|
block discarded – undo |
|
1143
|
1143
|
try { |
|
1144
|
1144
|
$sth = $this->db->prepare($query); |
|
1145
|
1145
|
$sth->execute($query_values); |
|
1146
|
|
- } catch(PDOException $e) { |
|
|
1146
|
+ } catch (PDOException $e) { |
|
1147
|
1147
|
return "error : ".$e->getMessage(); |
|
1148
|
1148
|
} |
|
1149
|
1149
|
} |
|
@@ -1158,7 +1158,7 @@ discard block |
|
|
block discarded – undo |
|
1158
|
1158
|
try { |
|
1159
|
1159
|
$sth = $this->db->prepare($query); |
|
1160
|
1160
|
$sth->execute($query_values); |
|
1161
|
|
- } catch(PDOException $e) { |
|
|
1161
|
+ } catch (PDOException $e) { |
|
1162
|
1162
|
return "error : ".$e->getMessage(); |
|
1163
|
1163
|
} |
|
1164
|
1164
|
} |
|
@@ -1168,7 +1168,7 @@ discard block |
|
|
block discarded – undo |
|
1168
|
1168
|
try { |
|
1169
|
1169
|
$sth = $this->db->prepare($query); |
|
1170
|
1170
|
$sth->execute($query_values); |
|
1171
|
|
- } catch(PDOException $e) { |
|
|
1171
|
+ } catch (PDOException $e) { |
|
1172
|
1172
|
return "error : ".$e->getMessage(); |
|
1173
|
1173
|
} |
|
1174
|
1174
|
} |
|
@@ -1177,7 +1177,7 @@ discard block |
|
|
block discarded – undo |
|
1177
|
1177
|
try { |
|
1178
|
1178
|
$sth = $this->db->prepare($query); |
|
1179
|
1179
|
$sth->execute(); |
|
1180
|
|
- } catch(PDOException $e) { |
|
|
1180
|
+ } catch (PDOException $e) { |
|
1181
|
1181
|
return "error : ".$e->getMessage(); |
|
1182
|
1182
|
} |
|
1183
|
1183
|
} |
|
@@ -1186,7 +1186,7 @@ discard block |
|
|
block discarded – undo |
|
1186
|
1186
|
try { |
|
1187
|
1187
|
$sth = $this->db->prepare($query); |
|
1188
|
1188
|
$sth->execute(); |
|
1189
|
|
- } catch(PDOException $e) { |
|
|
1189
|
+ } catch (PDOException $e) { |
|
1190
|
1190
|
return "error : ".$e->getMessage(); |
|
1191
|
1191
|
} |
|
1192
|
1192
|
} |
|
@@ -1194,14 +1194,14 @@ discard block |
|
|
block discarded – undo |
|
1194
|
1194
|
public function updateNOTAM() { |
|
1195
|
1195
|
global $globalNOTAMAirports; |
|
1196
|
1196
|
if (isset($globalNOTAMAirports) && is_array($globalNOTAMAirports) && count($globalNOTAMAirports) > 0) { |
|
1197
|
|
- foreach (array_chunk($globalNOTAMAirports,10) as $airport) { |
|
1198
|
|
- $airport_icao = implode(',',$airport); |
|
|
1197
|
+ foreach (array_chunk($globalNOTAMAirports, 10) as $airport) { |
|
|
1198
|
+ $airport_icao = implode(',', $airport); |
|
1199
|
1199
|
$alldata = $this->downloadNOTAM($airport_icao); |
|
1200
|
1200
|
if (count($alldata) > 0) { |
|
1201
|
1201
|
foreach ($alldata as $initial_data) { |
|
1202
|
1202
|
$data = $this->parse($initial_data); |
|
1203
|
1203
|
$notamref = $this->getNOTAMbyRef($data['ref']); |
|
1204
|
|
- if (count($notamref) == 0) $this->addNOTAM($data['ref'],$data['title'],'',$data['fir'],$data['code'],'',$data['scope'],$data['lower_limit'],$data['upper_limit'],$data['latitude'],$data['longitude'],$data['radius'],$data['date_begin'],$data['date_end'],$data['permanent'],$data['text'],$data['full_notam']); |
|
|
1204
|
+ if (count($notamref) == 0) $this->addNOTAM($data['ref'], $data['title'], '', $data['fir'], $data['code'], '', $data['scope'], $data['lower_limit'], $data['upper_limit'], $data['latitude'], $data['longitude'], $data['radius'], $data['date_begin'], $data['date_end'], $data['permanent'], $data['text'], $data['full_notam']); |
|
1205
|
1205
|
} |
|
1206
|
1206
|
} |
|
1207
|
1207
|
} |
|
@@ -1214,7 +1214,7 @@ discard block |
|
|
block discarded – undo |
|
1214
|
1214
|
foreach ($alldata as $initial_data) { |
|
1215
|
1215
|
$data = $this->parse($initial_data); |
|
1216
|
1216
|
$notamref = $this->getNOTAMbyRef($data['ref']); |
|
1217
|
|
- if (!isset($notamref['notam_id'])) $this->addNOTAM($data['ref'],$data['title'],'',$data['fir'],$data['code'],'',$data['scope'],$data['lower_limit'],$data['upper_limit'],$data['latitude'],$data['longitude'],$data['radius'],$data['date_begin'],$data['date_end'],$data['permanent'],$data['text'],$data['full_notam']); |
|
|
1217
|
+ if (!isset($notamref['notam_id'])) $this->addNOTAM($data['ref'], $data['title'], '', $data['fir'], $data['code'], '', $data['scope'], $data['lower_limit'], $data['upper_limit'], $data['latitude'], $data['longitude'], $data['radius'], $data['date_begin'], $data['date_end'], $data['permanent'], $data['text'], $data['full_notam']); |
|
1218
|
1218
|
} |
|
1219
|
1219
|
} |
|
1220
|
1220
|
} |
|
@@ -1223,12 +1223,12 @@ discard block |
|
|
block discarded – undo |
|
1223
|
1223
|
global $globalTransaction; |
|
1224
|
1224
|
$Spotter = new Spotter(); |
|
1225
|
1225
|
$allairports = $Spotter->getAllAirportInfo(); |
|
1226
|
|
- foreach (array_chunk($allairports,20) as $airport) { |
|
|
1226
|
+ foreach (array_chunk($allairports, 20) as $airport) { |
|
1227
|
1227
|
$airports_icao = array(); |
|
1228
|
|
- foreach($airport as $icao) { |
|
|
1228
|
+ foreach ($airport as $icao) { |
|
1229
|
1229
|
if (isset($icao['icao'])) $airports_icao[] = $icao['icao']; |
|
1230
|
1230
|
} |
|
1231
|
|
- $airport_icao = implode(',',$airports_icao); |
|
|
1231
|
+ $airport_icao = implode(',', $airports_icao); |
|
1232
|
1232
|
$alldata = $this->downloadNOTAM($airport_icao); |
|
1233
|
1233
|
if ($globalTransaction) $this->db->beginTransaction(); |
|
1234
|
1234
|
if (count($alldata) > 0) { |
|
@@ -1241,7 +1241,7 @@ discard block |
|
|
block discarded – undo |
|
1241
|
1241
|
if (count($notamref) == 0) { |
|
1242
|
1242
|
if (isset($data['ref_replaced'])) $this->deleteNOTAMbyRef($data['ref_replaced']); |
|
1243
|
1243
|
if (isset($data['ref_cancelled'])) $this->deleteNOTAMbyRef($data['ref_cancelled']); |
|
1244
|
|
- elseif (isset($data['latitude']) && isset($data['scope']) && isset($data['text']) && isset($data['permanent'])) echo $this->addNOTAM($data['ref'],'','',$data['fir'],$data['code'],'',$data['scope'],$data['lower_limit'],$data['upper_limit'],$data['latitude'],$data['longitude'],$data['radius'],$data['date_begin'],$data['date_end'],$data['permanent'],$data['text'],$data['full_notam']); |
|
|
1244
|
+ elseif (isset($data['latitude']) && isset($data['scope']) && isset($data['text']) && isset($data['permanent'])) echo $this->addNOTAM($data['ref'], '', '', $data['fir'], $data['code'], '', $data['scope'], $data['lower_limit'], $data['upper_limit'], $data['latitude'], $data['longitude'], $data['radius'], $data['date_begin'], $data['date_end'], $data['permanent'], $data['text'], $data['full_notam']); |
|
1245
|
1245
|
} |
|
1246
|
1246
|
} |
|
1247
|
1247
|
} |
|
@@ -1255,7 +1255,7 @@ discard block |
|
|
block discarded – undo |
|
1255
|
1255
|
date_default_timezone_set("UTC"); |
|
1256
|
1256
|
$Common = new Common(); |
|
1257
|
1257
|
//$url = str_replace('{icao}',$icao,'https://pilotweb.nas.faa.gov/PilotWeb/notamRetrievalByICAOAction.do?method=displayByICAOs&reportType=RAW&formatType=DOMESTIC&retrieveLocId={icao}&actionType=notamRetrievalByICAOs'); |
|
1258
|
|
- $url = str_replace('{icao}',$icao,'https://pilotweb.nas.faa.gov/PilotWeb/notamRetrievalByICAOAction.do?method=displayByICAOs&reportType=RAW&formatType=ICAO&retrieveLocId={icao}&actionType=notamRetrievalByICAOs'); |
|
|
1258
|
+ $url = str_replace('{icao}', $icao, 'https://pilotweb.nas.faa.gov/PilotWeb/notamRetrievalByICAOAction.do?method=displayByICAOs&reportType=RAW&formatType=ICAO&retrieveLocId={icao}&actionType=notamRetrievalByICAOs'); |
|
1259
|
1259
|
$data = $Common->getData($url); |
|
1260
|
1260
|
preg_match_all("/<pre>(.+?)<\/pre>/is", $data, $matches); |
|
1261
|
1261
|
//print_r($matches); |
|
@@ -1267,14 +1267,14 @@ discard block |
|
|
block discarded – undo |
|
1267
|
1267
|
$Common = new Common(); |
|
1268
|
1268
|
$result = array(); |
|
1269
|
1269
|
$result['full_notam'] = $data; |
|
1270
|
|
- $data = str_ireplace(array("\r","\n",'\r','\n'),' ',$data); |
|
1271
|
|
- $data = preg_split('#(?=([A-Z]\)\s))#',$data); |
|
|
1270
|
+ $data = str_ireplace(array("\r", "\n", '\r', '\n'), ' ', $data); |
|
|
1271
|
+ $data = preg_split('#(?=([A-Z]\)\s))#', $data); |
|
1272
|
1272
|
//print_r($data); |
|
1273
|
1273
|
foreach ($data as $line) { |
|
1274
|
1274
|
$line = trim($line); |
|
1275
|
|
- if (preg_match('#Q\) (.*)#',$line,$matches)) { |
|
1276
|
|
- $line = str_replace(' ','',$line); |
|
1277
|
|
- if (preg_match('#Q\)([A-Z]{3,4})\/([A-Z]{5})\/(IV|I|V)\/([A-Z]{1,3})\/([A-Z]{1,2})\/([0-9]{3})\/([0-9]{3})\/([0-9]{4})(N|S)([0-9]{5})(E|W)([0-9]{3}|)#',$line,$matches)) { |
|
|
1275
|
+ if (preg_match('#Q\) (.*)#', $line, $matches)) { |
|
|
1276
|
+ $line = str_replace(' ', '', $line); |
|
|
1277
|
+ if (preg_match('#Q\)([A-Z]{3,4})\/([A-Z]{5})\/(IV|I|V)\/([A-Z]{1,3})\/([A-Z]{1,2})\/([0-9]{3})\/([0-9]{3})\/([0-9]{4})(N|S)([0-9]{5})(E|W)([0-9]{3}|)#', $line, $matches)) { |
|
1278
|
1278
|
//if (preg_match('#Q\)([A-Z]{4})\/([A-Z]{5})\/(IV|I|V)\/([A-Z]{1,3})\/([A-Z]{1,2})\/([0-9]{3})\/([0-9]{3})\/([0-9]{4})(N|S)([0-9]{5})(E|W)([0-9]{3})#',$line,$matches)) { |
|
1279
|
1279
|
//print_r($matches); |
|
1280
|
1280
|
$result['fir'] = $matches[1]; |
|
@@ -1320,9 +1320,9 @@ discard block |
|
|
block discarded – undo |
|
1320
|
1320
|
elseif ($matches[5] == 'AW') $result['scope'] = 'Airport/Navigation warning'; |
|
1321
|
1321
|
$result['lower_limit'] = $matches[6]; |
|
1322
|
1322
|
$result['upper_limit'] = $matches[7]; |
|
1323
|
|
- $latitude = $Common->convertDec($matches[8],'latitude'); |
|
|
1323
|
+ $latitude = $Common->convertDec($matches[8], 'latitude'); |
|
1324
|
1324
|
if ($matches[9] == 'S') $latitude = -$latitude; |
|
1325
|
|
- $longitude = $Common->convertDec($matches[10],'longitude'); |
|
|
1325
|
+ $longitude = $Common->convertDec($matches[10], 'longitude'); |
|
1326
|
1326
|
if ($matches[11] == 'W') $longitude = -$longitude; |
|
1327
|
1327
|
$result['latitude'] = $latitude; |
|
1328
|
1328
|
$result['longitude'] = $longitude; |
|
@@ -1330,21 +1330,21 @@ discard block |
|
|
block discarded – undo |
|
1330
|
1330
|
else $result['radius'] = 0; |
|
1331
|
1331
|
} else echo 'ERROR : '.$line."\n"; |
|
1332
|
1332
|
} |
|
1333
|
|
- elseif (preg_match('#A\) (.*)#',$line,$matches)) { |
|
|
1333
|
+ elseif (preg_match('#A\) (.*)#', $line, $matches)) { |
|
1334
|
1334
|
$result['icao'] = $matches[1]; |
|
1335
|
1335
|
} |
|
1336
|
|
- elseif (preg_match('#B\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})#',$line,$matches)) { |
|
|
1336
|
+ elseif (preg_match('#B\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})#', $line, $matches)) { |
|
1337
|
1337
|
if ($matches[1] > 50) $year = '19'.$matches[1]; |
|
1338
|
1338
|
else $year = '20'.$matches[1]; |
|
1339
|
1339
|
$result['date_begin'] = $year.'/'.$matches[2].'/'.$matches[3].' '.$matches[4].':'.$matches[5]; |
|
1340
|
1340
|
} |
|
1341
|
|
- elseif (preg_match('#C\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})$#',$line,$matches)) { |
|
|
1341
|
+ elseif (preg_match('#C\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})$#', $line, $matches)) { |
|
1342
|
1342
|
if ($matches[1] > 50) $year = '19'.$matches[1]; |
|
1343
|
1343
|
else $year = '20'.$matches[1]; |
|
1344
|
1344
|
$result['date_end'] = $year.'/'.$matches[2].'/'.$matches[3].' '.$matches[4].':'.$matches[5]; |
|
1345
|
1345
|
$result['permanent'] = 0; |
|
1346
|
1346
|
} |
|
1347
|
|
- elseif (preg_match('#C\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2}) (EST|PERM)$#',$line,$matches)) { |
|
|
1347
|
+ elseif (preg_match('#C\) ([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2}) (EST|PERM)$#', $line, $matches)) { |
|
1348
|
1348
|
if ($matches[1] > 50) $year = '19'.$matches[1]; |
|
1349
|
1349
|
else $year = '20'.$matches[1]; |
|
1350
|
1350
|
$result['date_end'] = $year.'/'.$matches[2].'/'.$matches[3].' '.$matches[4].':'.$matches[5]; |
|
@@ -1353,26 +1353,26 @@ discard block |
|
|
block discarded – undo |
|
1353
|
1353
|
if ($matches[6] == 'PERM') $result['permanent'] = 1; |
|
1354
|
1354
|
else $result['permanent'] = 0; |
|
1355
|
1355
|
} |
|
1356
|
|
- elseif (preg_match('#C\) (EST|PERM)$#',$line,$matches)) { |
|
|
1356
|
+ elseif (preg_match('#C\) (EST|PERM)$#', $line, $matches)) { |
|
1357
|
1357
|
$result['date_end'] = '2030/12/20 12:00'; |
|
1358
|
1358
|
if ($matches[1] == 'EST') $result['estimated'] = 1; |
|
1359
|
1359
|
else $result['estimated'] = 0; |
|
1360
|
1360
|
if ($matches[1] == 'PERM') $result['permanent'] = 1; |
|
1361
|
1361
|
else $result['permanent'] = 0; |
|
1362
|
1362
|
} |
|
1363
|
|
- elseif (preg_match('#E\) (.*)#',$line,$matches)) { |
|
|
1363
|
+ elseif (preg_match('#E\) (.*)#', $line, $matches)) { |
|
1364
|
1364
|
$rtext = array(); |
|
1365
|
|
- $text = explode(' ',$matches[1]); |
|
|
1365
|
+ $text = explode(' ', $matches[1]); |
|
1366
|
1366
|
foreach ($text as $word) { |
|
1367
|
1367
|
if (isset($this->abbr[$word])) $rtext[] = strtoupper($this->abbr[$word]); |
|
1368
|
|
- elseif (ctype_digit(strval(substr($word,3))) && isset($this->abbr[substr($word,0,3)])) $rtext[] = strtoupper($this->abbr[substr($word,0,3)]).' '.substr($word,3); |
|
|
1368
|
+ elseif (ctype_digit(strval(substr($word, 3))) && isset($this->abbr[substr($word, 0, 3)])) $rtext[] = strtoupper($this->abbr[substr($word, 0, 3)]).' '.substr($word, 3); |
|
1369
|
1369
|
else $rtext[] = $word; |
|
1370
|
1370
|
} |
|
1371
|
|
- $result['text'] = implode(' ',$rtext); |
|
|
1371
|
+ $result['text'] = implode(' ', $rtext); |
|
1372
|
1372
|
//} elseif (preg_match('#F\) (.*)#',$line,$matches)) { |
|
1373
|
1373
|
//} elseif (preg_match('#G\) (.*)#',$line,$matches)) { |
|
1374
|
|
- } elseif (preg_match('#(NOTAMN|NOTAMR|NOTAMC)#',$line,$matches)) { |
|
1375
|
|
- $text = explode(' ',$line); |
|
|
1374
|
+ } elseif (preg_match('#(NOTAMN|NOTAMR|NOTAMC)#', $line, $matches)) { |
|
|
1375
|
+ $text = explode(' ', $line); |
|
1376
|
1376
|
$result['ref'] = $text[0]; |
|
1377
|
1377
|
if ($matches[1] == 'NOTAMN') $result['type'] = 'new'; |
|
1378
|
1378
|
if ($matches[1] == 'NOTAMC') { |