Merge pull request #456 from Struart88/patch-2
[FlightAirMap.git] / statistics-registration.php
blobc61b21f43f00b0b96d250fcfb0201efa2190d431
1 <?php
2 require_once('require/class.Connection.php');
3 require_once('require/class.Stats.php');
4 require_once('require/class.Language.php');
5 $Stats = new Stats();
6 $title = _("Statistics").' - '._("Most common Aircraft Registrations");
8 if (!isset($filter_name)) $filter_name = '';
9 $airline_icao = (string)filter_input(INPUT_GET,'airline',FILTER_SANITIZE_STRING);
10 if ($airline_icao == '' && isset($globalFilter)) {
11 if (isset($globalFilter['airline'])) $airline_icao = $globalFilter['airline'][0];
13 setcookie('stats_airline_icao',$airline_icao,time()+60*60*24,'/');
14 $year = filter_input(INPUT_GET,'year',FILTER_SANITIZE_NUMBER_INT);
15 $month = filter_input(INPUT_GET,'month',FILTER_SANITIZE_NUMBER_INT);
17 require_once('header.php');
18 include('statistics-sub-menu.php');
20 print '<script type="text/javascript" src="'.$globalURL.'/js/d3.min.js"></script>';
21 print '<script type="text/javascript" src="'.$globalURL.'/js/d3pie.min.js"></script>';
22 print '<div class="info">
23 <h1>'._("Most common Aircraft Registrations").'</h1>
24 </div>
25 <p>'._("Below are the <strong>Top 10</strong> most common aircraft registrations.").'</p>';
27 $registration_array = $Stats->countAllAircraftRegistrations(true,$airline_icao,$filter_name,$year,$month);
28 print '<div id="chart" class="chart" width="100%"></div><script>';
29 $registration_data = '';
30 foreach($registration_array as $registration_item)
32 $registration_data .= '[ "'.$registration_item['registration'].' - '.$registration_item['aircraft_name'].' ('.$registration_item['aircraft_icao'].')",'.$registration_item['aircraft_registration_count'].'],';
34 $registration_data = substr($registration_data, 0, -1);
35 print 'var series = ['.$registration_data.'];';
36 print 'var dataset = [];var onlyValues = series.map(function(obj){ return obj[1]; });var minValue = Math.min.apply(null, onlyValues), maxValue = Math.max.apply(null, onlyValues);';
37 print 'var paletteScale = d3.scale.log().domain([minValue,maxValue]).range(["#e6e6f6","#1a3151"]);';
38 print 'series.forEach(function(item){var lab = item[0], value = item[1]; dataset.push({"label":lab,"value":value,"color":paletteScale(value)});});';
39 print 'var aircraftype = new d3pie("chart",{"header":{"title":{"fontSize":24,"font":"open sans"},"subtitle":{"color":"#999999","fontSize":12,"font":"open sans"},"titleSubtitlePadding":9},"footer":{"color":"#999999","fontSize":10,"font":"open sans","location":"bottom-left"},"size":{"canvasWidth":700,"pieOuterRadius":"60%"},"data":{"sortOrder":"value-desc","content":';
40 print 'dataset';
41 print '},"labels":{"outer":{"pieDistance":32},"inner":{"hideWhenLessThanPercentage":3},"mainLabel":{"fontSize":11},"percentage":{"color":"#ffffff","decimalPlaces":0},"value":{"color":"#adadad","fontSize":11},"lines":{"enabled":true},"truncation":{"enabled":true}},"effects":{"pullOutSegmentOnClick":{"effect":"linear","speed":400,"size":8}},"misc":{"gradient":{"enabled":true,"percentage":100}}});';
42 print '</script>';
44 if (!empty($registration_array))
46 print '<div class="table-responsive">';
47 print '<table class="common-registration table-striped">';
48 print '<thead>';
49 print '<th></th>';
50 print '<th></th>';
51 print '<th>'._("Registration").'</th>';
52 print '<th>'._("Aircraft").'</th>';
53 print '<th>'._("# of times").'</th>';
54 print '</thead>';
55 print '<tbody>';
56 $i = 1;
57 foreach($registration_array as $registration_item)
59 print '<tr>';
60 print '<td><strong>'.$i.'</strong></td>';
61 if (isset($registration_item['image_thumbnail']) && $registration_item['image_thumbnail'] != "")
63 print '<td class="aircraft_thumbnail">';
64 print '<a href="'.$globalURL.'/registration/'.$registration_item['registration'].'"><img src="'.$registration_item['image_thumbnail'].'" class="img-rounded" data-toggle="popover" title="'.$registration_item['registration'].' - '.$registration_item['aircraft_icao'].' - '.$registration_item['airline_name'].'" alt="'.$registration_item['registration'].' - '.$registration_item['airline_name'].'" data-content="'._("Registration:").' '.$registration_item['registration'].'<br />'._("Aircraft:").' '.$registration_item['aircraft_name'].' ('.$registration_item['aircraft_icao'].')<br />'._("Airline:").' '.$registration_item['airline_name'].'" data-html="true" width="100px" /></a>';
65 print '</td>';
66 } else {
67 print '<td class="aircraft_thumbnail">';
68 print '<a href="'.$globalURL.'/registration/'.$registration_item['registration'].'"><img src="'.$globalURL.'/images/placeholder_thumb.png" class="img-rounded" data-toggle="popover" title="'.$registration_item['registration'].' - '.$registration_item['aircraft_icao'].'" alt="'.$registration_item['registration'].'" data-content="'._("Registration:").' '.$registration_item['registration'].'<br />'._("Aircraft:").' '.$registration_item['aircraft_name'].' ('.$registration_item['aircraft_icao'].')" data-html="true" width="100px" /></a>';
69 print '</td>';
71 print '<td>';
72 print '<a href="'.$globalURL.'/registration/'.$registration_item['registration'].'">'.$registration_item['registration'].'</a>';
73 print '</td>';
74 print '<td>';
75 print '<a href="'.$globalURL.'/aircraft/'.$registration_item['aircraft_icao'].'">'.$registration_item['aircraft_name'].' ('.$registration_item['aircraft_icao'].')</a>';
76 print '</td>';
77 print '<td>'.$registration_item['aircraft_registration_count'].'</td>';
78 print '</tr>';
79 $i++;
81 print '<tbody>';
82 print '</table>';
83 print '</div>';
85 require_once('footer.php');