Merge pull request #456 from Struart88/patch-2
[FlightAirMap.git] / location-geojson.php
blob8fb0dd03ea8c9b3ae22dae05497587a672a35747
1 <?php
2 require_once('require/class.Connection.php');
3 require_once('require/class.Source.php');
4 $Source = new Source();
6 if (isset($_GET['download']))
8 header('Content-disposition: attachment; filename="locations.geojson"');
10 header('Content-Type: text/javascript');
11 $spotter_array = array();
12 if (isset($_GET['coord']))
14 $coords = explode(',',$_GET['coord']);
15 if ((isset($_COOKIE['show_GroundStation']) && $_COOKIE['show_GroundStation'] == 'true')
16 || (!isset($_COOKIE['show_GroundStation']) && (isset($globalMapGroundStation) && $globalMapGroundStation === TRUE))) {
17 //$spotter_array = $Source->getAllLocationInfo();
18 $spotter_array = array_merge($spotter_array,$Source->getLocationInfoByType('gs',$coords));
20 if ((isset($_COOKIE['show_WeatherStation']) && $_COOKIE['show_WeatherStation'] == 'true')
21 || (!isset($_COOKIE['show_WeatherStation']) && (isset($globalMapWeatherStation) && $globalMapWeatherStation === TRUE))) {
22 $spotter_array = array_merge($spotter_array,$Source->getLocationInfoByType('wx',$coords));
24 if ((isset($_COOKIE['show_Lightning']) && $_COOKIE['show_Lightning'] == 'true')
25 || (!isset($_COOKIE['show_Lightning']) && (isset($globalMapLightning) && $globalMapLightning === TRUE))) {
26 $spotter_array = array_merge($spotter_array,$Source->getLocationInfoByType('lightning',$coords));
28 if ((isset($_COOKIE['show_Fires']) && $_COOKIE['show_Fires'] == 'true')
29 || (!isset($_COOKIE['show_Fires']) && (isset($globalMapFires) && $globalMapFires === TRUE))) {
30 $spotter_array = array_merge($spotter_array,$Source->getLocationInfoByType('fires',$coords,true));
32 if (!isset($globalDemo)) {
33 $spotter_array = array_merge($spotter_array,$Source->getLocationInfoByType(''));
35 } else {
36 if ((isset($_COOKIE['show_GroundStation']) && $_COOKIE['show_GroundStation'] == 'true')
37 || (!isset($_COOKIE['show_GroundStation']) && (isset($globalMapGroundStation) && $globalMapGroundStation === TRUE))) {
38 //$spotter_array = $Source->getAllLocationInfo();
39 $spotter_array = array_merge($spotter_array,$Source->getLocationInfoByType('gs'));
41 if ((isset($_COOKIE['show_WeatherStation']) && $_COOKIE['show_WeatherStation'] == 'true')
42 || (!isset($_COOKIE['show_WeatherStation']) && (isset($globalMapWeatherStation) && $globalMapWeatherStation === TRUE))) {
43 $spotter_array = array_merge($spotter_array,$Source->getLocationInfoByType('wx'));
45 if ((isset($_COOKIE['show_Lightning']) && $_COOKIE['show_Lightning'] == 'true')
46 || (!isset($_COOKIE['show_Lightning']) && (isset($globalMapLightning) && $globalMapLightning === TRUE))) {
47 $spotter_array = array_merge($spotter_array,$Source->getLocationInfoByType('lightning'));
49 if ((isset($_COOKIE['show_Fire']) && $_COOKIE['show_Fire'] == 'true')
50 || (!isset($_COOKIE['show_Fire']) && (isset($globalMapFires) && $globalMapFires === TRUE))) {
51 $spotter_array = array_merge($spotter_array,$Source->getLocationInfoByType('fires',array(),true));
53 if (!isset($globalDemo)) {
54 $spotter_array = array_merge($spotter_array,$Source->getLocationInfoByType(''));
59 $output = '{"type": "FeatureCollection","features": [';
60 if (!empty($spotter_array) && count($spotter_array) > 0)
62 foreach($spotter_array as $spotter_item)
64 date_default_timezone_set('UTC');
65 $output .= '{"type": "Feature",';
66 $output .= '"properties": {';
67 $output .= '"id": "'.$spotter_item['id'].'",';
68 $output .= '"location_id": "'.$spotter_item['location_id'].'",';
69 $output .= '"name": "'.$spotter_item['name'].'",';
70 $output .= '"city": "'.$spotter_item['city'].'",';
71 $output .= '"country": "'.$spotter_item['country'].'",';
72 $output .= '"altitude": "'.$spotter_item['altitude'].'",';
73 if ($spotter_item['name'] != '' && $spotter_item['city'] != '' && $spotter_item['country'] != '') {
74 $output .= '"popupContent": "'.$spotter_item['name'].' : '.$spotter_item['city'].', '.$spotter_item['country'].'",';
75 } elseif ($spotter_item['location_id'] != '') {
76 $output .= '"popupContent": "'.$spotter_item['location_id'].'",';
78 $output .= '"icon": "'.$globalURL.'/images/'.$spotter_item['logo'].'",';
79 $output .= '"type": "'.$spotter_item['type'].'",';
80 if ($spotter_item['type'] == 'wx') {
81 $weather = json_decode($spotter_item['description'],true);
82 if (isset($weather['temp'])) $output.= '"temp": "'.$weather['temp'].'",';
84 $output .= '"image_thumb": "'.$spotter_item['image_thumb'].'"';
85 $output .= '},';
86 $output .= '"geometry": {';
87 $output .= '"type": "Point",';
88 $output .= '"coordinates": ['.$spotter_item['longitude'].', '.$spotter_item['latitude'].']';
89 $output .= '}';
90 $output .= '},';
92 $output = substr($output, 0, -1);
94 $output .= ']}';
95 print $output;