var project={"_id":"5732534ade78eca41cc5a74e","id":"d5a52d312a0044ca48d1130cf6504d4a074c3edb","name":"Accident Stats","user":"566ac9850286a8f9080cdd79","description":"Graphs and stats on accidents","created":"2016-05-05T12:45:11.440Z","shared":false,"server":"micro","datafiles":[{"file":{"link":"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/states/accidents/aggregated-stateofoccurrence-stats?api_key=fbbe6ba0-16ae-11e6-82b4-13b5d4bbe6a0&states=&format=json&Risk=","type":"URL/API","url":"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/states/accidents/aggregated-stateofoccurrence-stats?api_key=fbbe6ba0-16ae-11e6-82b4-13b5d4bbe6a0&states=&format=json&Risk=","message":{"error":false,"text":""}},"varname":"stats","title":"global stats","activated":true,"name":"datafile","linkedtofile":true,"optional":true,"content":"","sendtojs":true},{"file":{"link":"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/states/accidents/aggregated-stateofoccurrence-stats?api_key=fbbe6ba0-16ae-11e6-82b4-13b5d4bbe6a0&states=&format=json&Risk=RS","type":"URL/API","url":"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/states/accidents/aggregated-stateofoccurrence-stats?api_key=fbbe6ba0-16ae-11e6-82b4-13b5d4bbe6a0&states=&format=json&Risk=RS","message":{"error":false,"text":""}},"varname":"RS","title":"RS","activated":true,"name":"datafile","linkedtofile":true,"optional":true,"content":"","sendtojs":true},{"file":{"link":"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/states/accidents/aggregated-stateofoccurrence-stats?api_key=fbbe6ba0-16ae-11e6-82b4-13b5d4bbe6a0&states=&format=json&Risk=CFIT","type":"URL/API","url":"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/states/accidents/aggregated-stateofoccurrence-stats?api_key=fbbe6ba0-16ae-11e6-82b4-13b5d4bbe6a0&states=&format=json&Risk=CFIT","message":{"error":false,"text":""}},"varname":"CFIT","title":"CFIT","activated":true,"name":"datafile","linkedtofile":true,"optional":true,"content":"","sendtojs":true},{"file":{"link":"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/states/accidents/aggregated-stateofoccurrence-stats?api_key=fbbe6ba0-16ae-11e6-82b4-13b5d4bbe6a0&states=&format=json&Risk=LOC-I","type":"URL/API","url":"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/states/accidents/aggregated-stateofoccurrence-stats?api_key=fbbe6ba0-16ae-11e6-82b4-13b5d4bbe6a0&states=&format=json&Risk=LOC-I","message":{"error":false,"text":""}},"varname":"LOCI","title":"LOCI","activated":true,"name":"datafile","linkedtofile":true,"optional":true,"content":"","sendtojs":true},{"file":{"link":"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/occurrences/official/accidents?api_key=fbbe6ba0-16ae-11e6-82b4-13b5d4bbe6a0&StateOfOccurrence=&format=json&StateOfOperator=&StateOfRegistry=","type":"URL/API","url":"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/occurrences/official/accidents?api_key=fbbe6ba0-16ae-11e6-82b4-13b5d4bbe6a0&StateOfOccurrence=&format=json&StateOfOperator=&StateOfRegistry=","message":{"error":false,"text":""}},"varname":"accidentdata","title":"Accidents","activated":true,"name":"datafile","linkedtofile":true,"optional":true,"content":"","sendtojs":true},{"file":{"link":"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/states/accidents/aggregated-stateofoccurrence-stats?api_key=fbbe6ba0-16ae-11e6-82b4-13b5d4bbe6a0&states=&format=json&Risk=","type":"URL/API","url":"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/states/accidents/aggregated-stateofoccurrence-stats?api_key=fbbe6ba0-16ae-11e6-82b4-13b5d4bbe6a0&states=&format=json&Risk=","message":{"error":false,"text":""}},"varname":"globalrate","title":"Global Accident Rate","activated":true,"name":"datafile","linkedtofile":true,"optional":true,"content":"","sendtojs":true},{"file":{"link":"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/services/groupselect","type":"URL/API","url":"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/services/groupselect","message":{"error":false,"text":""}},"varname":"groups","title":"Groups","activated":true,"name":"datafile","linkedtofile":true,"optional":true,"content":"","sendtojs":true}],"packs":["bootstrap","font-awesome","jquery","Datatables","highstock"],"container":"mainpart","js":{"file":{"type":"","url":"","link":"","message":{"error":true,"text":"File not defined"},"depurl":"https://quipslibistars.s3.amazonaws.com/prod/d5a52d312a0044ca48d1130cf6504d4a074c3edb/script.js"},"title":"Javascript","activated":true,"name":"js","linkedtofile":false,"optional":true,"content":"var cat=[]\nvar lastofficial=2020\nvar currentyear=new Date().getUTCFullYear()\nvar lastyear=currentyear-1\nvar worlddata=[]\n\nfor (var i=2008;i0) {\n yearcum.series[2].data.push({x:val,title:fats+\"\",text:fats+\" fatalities\"})\n }\n })\n //console.log(dates);\n //console.log(yearcum.series[1].data);\n var di=yearcum.series[1].data.length-1\n yearcum.series[1].data[di]={x:yearcum.series[1].data[di][0],\n y:yearcum.series[1].data[di][1],\n dataLabels:{enabled:true}\n }\n statedist.series[0].data=[]\n statedata.filter(function(d){return (d.Year==2015)}).forEach(function(v){\n if (v.Departures>0){\n statedist.series[0].data.push([v.Departures,v.Accidents])}\n })\n statedist.series[1].data=[[1,2.79/100000],[1000000,2.79]]\n data[data.length-1]={y:data[data.length-1],dataLabels:{enabled:true}}\n data2[data2.length-1]={y:data2[data2.length-1],dataLabels:{enabled:true}}\n data3[data3.length-1]={y:data3[data3.length-1],dataLabels:{enabled:true}}\n console.log(yearcum.series[2].data)\n console.log(yearcum.series[1].data)\n\n accidentrate.series=[]\n accidents.series=[]\n fatalities.series=[]\n riskaccidents.series=[]\n riskfatalities.series=[]\n riskaccidentscumm.series=[]\n accidentrate.series.push({name:name,data:data})\n if (name!=\"World\") {\n accidentrate.series.push({name:\"World\",color:\"gray\",data:worlddata})\n }\n accidents.series.push({name:name,data:data2})\n fatalities.series.push({name:name,data:data3})\n riskaccidents.series.push({name:\"Runway Safety\",data:rsdata}) \n riskaccidents.series.push({name:\"CFIT\",data:cfitdata}) \n riskaccidents.series.push({name:\"LOC-I\",data:locidata}) \n riskfatalities.series.push({name:\"Runway Safety\",data:rsdata2}) \n riskfatalities.series.push({name:\"CFIT\",data:cfitdata2}) \n riskfatalities.series.push({name:\"LOC-I\",data:locidata2}) \n riskaccidentscumm.series.push({name:\"Runway Safety\",data:rsdata3}) \n riskaccidentscumm.series.push({name:\"CFIT\",data:cfitdata3}) \n riskaccidentscumm.series.push({name:\"LOC-I\",data:locidata3}) \n riskaccidentscumm.series.push({name:\"Other\",data:otherdata3}) \n $(\"#accidentrate\").highcharts(accidentrate)\n $(\"#accidents\").highcharts(accidents)\n $(\"#fatalities\").highcharts(fatalities)\n $(\"#riskaccidents\").highcharts(riskaccidents)\n $(\"#riskfatalities\").highcharts(riskfatalities)\n $(\"#riskcomparison\").highcharts(riskaccidentscumm)\n $(\"#yearcum\").highcharts(yearcum)\n $(\"#statedist\").highcharts(statedist)\n\n \n}\n$(\"#qform button\").click(function(e){\n e.preventDefault()\n $(this).closest(\".btn-group\").find(\"button\").removeClass(\"active\")\n $(this).addClass(\"active\")\n})\n$(\"#submitform\").click(function(e){\n e.preventDefault()\n $(\"#loading\").show()\n $(\"#submitform\").prop('disabled', true)\n buildqstring(function(q){\n $.getJSON(\"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/occurrences/class/querystring?callback=?\",\n {api_key:\"7c3cb620-ed23-11e5-a5f9-adff4fb3e3e1\",format:\"html\",\n querystring:JSON.stringify(q)},\n function(thedata){\n $(\"#datatable\").html(thedata.html)\n $(\"a.occurrence\").click(function(e){\n e.preventDefault()\n var id=$(this).attr(\"occurrence\")\n $(\"#\"+id).find(\".short\").hide()\n $(\"#\"+id).find(\".long\").show()\n })\n $(\"button.hidenarrative\").click(function(e){\n e.preventDefault()\n var id=$(this).attr(\"occurrence\")\n $(\"#\"+id).find(\".short\").show()\n $(\"#\"+id).find(\".long\").hide()\n })\n $(\"#thetable\").dataTable({\"order\": [[ 0, \"desc\" ]]})\n $(\"#loading\").hide()\n $(\"#submitform\").prop('disabled', false)\n }\n )\n \n })\n})\nfunction buildqstring(next){\n if ($(\"#groupsel\").val().length>3) {\n $.getJSON(\"https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/services/groupcomp?callback=?\",{group:$(\"#groupsel\").val()},function(gcomp){\n \n\n var q={}\n if ($(\"#groupsel option:selected\").text()!=\"World\") {\n q[$(\"#state button.active\").attr(\"value\")]={$in:gcomp.Composition}\n }\n if ($(\"#aircraft button.active\").attr(\"value\")!=\"\") {jQuery.extend(q,JSON.parse($(\"#aircraft button.active\").attr(\"value\")))}\n if ($(\"#scheduled button.active\").attr(\"value\")!=\"\") {jQuery.extend(q,JSON.parse($(\"#scheduled button.active\").attr(\"value\")))}\n if ($(\"#over57 button.active\").attr(\"value\")!=\"\") {jQuery.extend(q,JSON.parse($(\"#over57 button.active\").attr(\"value\")))}\n if ($(\"#accidents button.active\").attr(\"value\")!=\"\") {jQuery.extend(q,JSON.parse($(\"#accidents button.active\").attr(\"value\")))}\n if ($(\"#fatal button.active\").attr(\"value\")!=\"\") {jQuery.extend(q,JSON.parse($(\"#fatal button.active\").attr(\"value\")))}\n if ($(\"#risk button.active\").attr(\"value\")!=\"\") {jQuery.extend(q,JSON.parse($(\"#risk button.active\").attr(\"value\")))}\n q.Year={$gte:Number($(\"#year select.from\").val()),$lte:Number($(\"#year select.to\").val())}\n if ($(\"#official button.active\").attr(\"value\")!=\"\") {q[\"$or\"]=[{Official:true},{Year:currentyear}]}\n next(q)\n })\n }\n else {\n var q={}\n if ($(\"#groupsel option:selected\").text()!=\"World\") {\n q[$(\"#state button.active\").attr(\"value\")]=$(\"#groupsel\").val()\n }\n if ($(\"#aircraft button.active\").attr(\"value\")!=\"\") {jQuery.extend(q,JSON.parse($(\"#aircraft button.active\").attr(\"value\")))}\n if ($(\"#scheduled button.active\").attr(\"value\")!=\"\") {jQuery.extend(q,JSON.parse($(\"#scheduled button.active\").attr(\"value\")))}\n if ($(\"#over57 button.active\").attr(\"value\")!=\"\") {jQuery.extend(q,JSON.parse($(\"#over57 button.active\").attr(\"value\")))}\n if ($(\"#accidents button.active\").attr(\"value\")!=\"\") {jQuery.extend(q,JSON.parse($(\"#accidents button.active\").attr(\"value\")))}\n if ($(\"#fatal button.active\").attr(\"value\")!=\"\") {jQuery.extend(q,JSON.parse($(\"#fatal button.active\").attr(\"value\")))}\n if ($(\"#risk button.active\").attr(\"value\")!=\"\") {jQuery.extend(q,JSON.parse($(\"#risk button.active\").attr(\"value\")))}\n q.Year={$gte:Number($(\"#year select.from\").val()),$lte:Number($(\"#year select.to\").val())}\n if ($(\"#official button.active\").attr(\"value\")!=\"\") {q[\"$or\"]=[{Official:true},{Year:currentyear}]}\n next(q)\n \n }\n\n \n}\n\n"},"css":{"file":{"type":"","url":"","link":"","message":{"error":true,"text":"File not defined"}},"title":"Cascading Style Sheet (CSS)","activated":false,"name":"css","linkedtofile":false,"optional":true},"jade":{"file":{"type":"","url":"","link":"","message":{"error":true,"text":"File not defined"},"depurl":"https://quipslibistars.s3.amazonaws.com/prod/d5a52d312a0044ca48d1130cf6504d4a074c3edb/main.jade"},"title":"Jade","activated":true,"name":"jade","linkedtofile":false,"optional":false,"content":".container(style=\"width:800px\")\n p Select a Group or Country \n select#groupsel\n !{groups.html}\n\n #yearcum(style=\"width:500px;height:400px;margin:auto\")\n #accidentrate(style=\"width:500px;height:400px;margin:auto\")\n //#statedist(style=\"width:500px;height:400px;margin:auto\")\n table(style=\"width:100%\"): tbody: tr\n td: #accidents(style=\"width:400px;height:400px;margin:auto\")\n td: #fatalities(style=\"width:400px;height:400px;margin:auto\")\n table(style=\"width:100%\"): tbody: tr\n td: #riskaccidents(style=\"width:400px;height:400px;margin:auto\")\n td: #riskfatalities(style=\"width:400px;height:400px;margin:auto\")\n table(style=\"width:100%\"): tbody: tr\n td: #riskcomb5(style=\"width:400px;height:400px;margin:auto\")\n td: #riskcomparison(style=\"width:400px;height:400px;margin:auto\")\n h2.text-center List of Occurrences\n .list-group-item\n p Filter the list using the following fields\n form#qform\n #state.form-group\n label(style=\"padding-right:10px\") View data by State of \n .btn-group\n button.btn.btn-sm.btn-default.active(value=\"StateOfOccurrence\",disabled='disabled') Occurrence\n button.btn.btn-sm.btn-default(value=\"StateOfRegistry\",disabled='disabled') Registry\n button.btn.btn-sm.btn-default(value=\"StateOfOperator\",disabled='disabled') Operator\n i(style='font-size:11px')   Coming later...\n #aircraft.form-group\n label(style=\"padding-right:10px\") *Aircraft Category \n .btn-group\n button.btn.btn-sm.btn-default.active(value='{\"Airplane\":true}') Airplane\n button.btn.btn-sm.btn-default(value='{\"Helicopter\":true}') Helicopter\n button.btn.btn-sm.btn-default(value=\"\") Any\n #scheduled.form-group\n label(style=\"padding-right:10px\") *Scheduled Commercial Only\n .btn-group\n button.btn.btn-sm.btn-default.active(value='{\"ScheduledCommercial\":true}') Yes\n button.btn.btn-sm.btn-default(value=\"\") No\n #over57.form-group\n label(style=\"padding-right:10px\") *Over 5.7t Only\n .btn-group\n button.btn.btn-sm.btn-default.active(value='{\"Over5700\":true}') Yes\n button.btn.btn-sm.btn-default(value=\"\") No\n #accidents.form-group\n label(style=\"padding-right:10px\") *Accidents only \n .btn-group\n button.btn.btn-sm.btn-default.active(value='{\"Class\":\"Accident\"}') Yes\n button.btn.btn-sm.btn-default(value=\"\") No\n #fatal.form-group\n label(style=\"padding-right:10px\") With Fatalities only \n .btn-group\n button.btn.btn-sm.btn-default(value='{\"Fatalities\":{\"$gt\":0}}') Yes\n button.btn.btn-sm.btn-default.active(value=\"\") No\n #risk.form-group\n label(style=\"padding-right:10px\") *Risk category \n .btn-group\n button.btn.btn-sm.btn-default(value='{\"Risk\":\"RS\"}') Runway Safety\n button.btn.btn-sm.btn-default(value='{\"Risk\":\"CFIT\"}') Controlled Flight Into Terrain (CFIT)\n button.btn.btn-sm.btn-default(value='{\"Risk\":\"LOC-I\"}') Loss of Control - Inflight (LOC-I)\n button.btn.btn-sm.btn-default.active(value=\"\") Any\n #year.form-group\n label(style=\"padding-right:10px\") Year of occurrence\n label.radio-inline\n | Between \n select.from\n option(value=\"2008\") 2008\n option(value=\"2009\") 2009\n option(value=\"2010\") 2010\n option(value=\"2011\") 2011\n option(value=\"2012\") 2012\n option(value=\"2013\") 2013\n option(value=\"2014\") 2014\n option(value=\"2015\") 2015\n option(value=\"2016\") 2016\n option(value=\"2017\") 2017\n option(value=\"2018\") 2018\n option(value=\"2019\") 2019\n option(value=\"2020\",selected) 2020\n \n | and \n select.to\n option(value=\"2008\") 2008\n option(value=\"2009\") 2009\n option(value=\"2010\") 2010\n option(value=\"2011\") 2011\n option(value=\"2012\") 2012\n option(value=\"2013\") 2013\n option(value=\"2014\") 2014\n option(value=\"2015\") 2015\n option(value=\"2016\") 2016\n option(value=\"2017\") 2017\n option(value=\"2018\") 2018\n option(value=\"2019\") 2019\n option(value=\"2020\",selected) 2020\n #official.form-group\n label(style=\"padding-right:10px\") *Data of official stats for past years only \n .btn-group\n button.btn.btn-sm.btn-default.active(value=\"official\") Yes\n button.btn.btn-sm.btn-default(value=\"\") No\n p \n i(style='font-size:11px') * Please Note: \n br \n | When \"Data of official stats for past years only\" is set to \"Yes\", \"Accidents only\" and \"Over 5.7t Only\" would be set to \"Yes\" by default.\n br\n | When \"Data of official stats for past years only\" is set to \"No\", all events including those reported by media are shown.\n | That information was obtained from publicly available aviation-related websites and is provided for the convenience of addressees for informational purposes only. ICAO assumes no responsibility or liability of any kind for any errors, omissions, or inaccuracies contained herein or for any discrepancies between this information and that released by the official accident investigation authority.\n \n br \n | When \"Aircraft Category\" is set to \"Helicopter\", please set \"Scheduled Commercial Only\" to \"No\", \"Over 5.7t Only\" to \"No\", \"Risk category\" to \"Any\" and \"Data of official stats for past years only\" to \"No\".\n br\n | We are currently working on improving the user interface for the list of occurrences.\n button#submitform.btn.btn-sm.btn-info Search\n span#loading(style=\"display:none\") Be patient, data is loading ...\n #datatable(style=\"width:750px;margin-top:20px\")\n"},"deploydate":"2021-12-02T21:24:35.882Z","capture":"https://quipslibistars.s3.amazonaws.com/prod/d5a52d312a0044ca48d1130cf6504d4a074c3edb/capture.png","prod":true,"morejs":null,"published":"2016-05-17T11:58:01.303Z","sharedwith":["5969034e9b111eaf654f4aab"],"libs":[{"_id":"5672b285f36b083214f3e63b","description":"A sleek, intuitive, and powerful mobile first front-end framework for faster and easier web development.","key":"","version":"3.3.6","link":"https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css,https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css,https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js","name":"bootstrap","__v":0,"haskey":false,"required":false,"website":"http://www.getbootstrap.com"},{"_id":"5672b3e0f36b083214f3e63d","description":"","key":"","version":"4.5.0","link":"https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css","name":"font-awesome","__v":0,"haskey":false,"required":false,"website":"fontawesome.com"},{"_id":"5672b602f36b083214f3e63e","description":"The Write Less, Do More, JavaScript Library","key":"","version":"2.1.1","link":"https://code.jquery.com/jquery-2.1.4.js","name":"jquery","__v":0,"required":true,"haskey":false,"website":"https://jquery.com"},{"_id":"568eb9222043a726661b0ad2","required":false,"description":"A plug-in for the jQuery Javascript Library. It is a highly flexible tool, based upon the foundations of progressive enhancement, and will add advanced interaction controls to any HTML table.","haskey":false,"version":"1.10.10","link":"https://cdn.datatables.net/s/dt/dt-1.10.10/datatables.min.css,https://cdn.datatables.net/s/dt/dt-1.10.10/datatables.min.js","name":"Datatables","__v":0,"website":"https://www.datatables.net"},{"_id":"57f7f99b7534189495eb5d90","description":"highcharts extension","key":"","version":"4.2.5","link":"https://cdnjs.cloudflare.com/ajax/libs/highstock/4.2.5/highstock.js","name":"highstock","haskey":false,"required":false,"website":"www.highcharts.com"}],"host":"https://quips.anbdata.com","version":"prod"} function loadjquery(url,callback) { if(typeof jQuery=='undefined') { loadScript(url,callback) } else { callback() } } function loadScript(url, callback) { var script = document.createElement("script") script.type = "text/javascript"; if (script.readyState) { //IE script.onreadystatechange = function () { if (script.readyState == "loaded" || script.readyState == "complete") { script.onreadystatechange = null; callback(); } }; } else { //Others script.onload = function () { callback(); }; } script.src = url; document.getElementsByTagName("head")[0].appendChild(script); } (function () { loadjquery("https://code.jquery.com/jquery-2.1.4.js", function () { //jQuery loaded $("#"+project.container).html("") var libs=[] $(project.libs).each(function(i,v){ if (v.name!="jquery") { $(v.link.split(",")).each(function(j,u){ if (u.slice(-2)=="js") { libs.push(u+(v.haskey?"?key="+project[v.name+"key"]:"")) } else { $("head").append("") } }) } }) if (project.morejs) { $(project.morejs).each(function(i,v){ if ((v.url.substring(0,2)=="//")||(v.url.substring(0,8)=="https://")||(v.url.substring(0,7)=="http://")) { libs.push(v.url) } }) } if (project.morecss) { $(project.morecss).each(function(i,v){ $("head").append("") }) } loadlibs(libs.reverse()) }); })(); function loadlibs(libs){ if (libs.length>0) { var l=libs.pop() loadScript(l,function(){ //$.getScript(l,function(res){ loadlibs(libs) }) //.fail(function(e){ // loadlibs(libs) // //}) } else { start() } } function putscriptcontent(content){ var script = document.createElement("script") script.type = "text/javascript"; $(script).text(content) document.getElementsByTagName("head")[0].appendChild(script); } function start(){ //load jade $.getJSON(project.host+"/project/"+project.version+"/"+project.id+"/render?callback=?"+(project.datachange?"&data="+project.datachange:""),function(res){ $("#"+project.container).html(res.html) if (project.css.activated) { if (project.css.linkedtofile) { $("head").append("")} else { $("head").append("")} } if (project.js.activated) { if (project.js.linkedtofile) { $.getScript(project.js.file[(project.prod?"depurl":"url")])} else { putscriptcontent(project.js.content)} if (project.mainjs) { window[project.mainjs]() } } }) }