function getDistance(a){var c=0;if(a.arrayPositions.length>1)for(var b=0;b<a.arrayPositions.length-1;b++)c+=getTwoPointsDistance(a.arrayPositions[b],a.arrayPositions[b+1]);return c}function getTwoPointsDistanceStu(c,d){var g=6378.155,b=.017453292519943295,i=c.coords.longitude*b,e=c.coords.latitude*b,j=d.coords.longitude*b,f=d.coords.latitude*b,h=j-i,a=Math.acos(Math.sin(e)*Math.sin(f)+Math.cos(e)*Math.cos(f)*Math.cos(h));if(a<0)a=a+Math.PI;a=a*g*1e3;if(isNaN(a))a=0;return a}function getAverageSpeedStu(a){var d=getDistance(a)/1e3,c=a.chrono.getTotalSecondes()/3600,b=d/c;return b}function getPositiveDenivellation(a){var d=0;if(a.arrayPositions.length>1)for(var b=0,c=0;c<a.arrayPositions.length-1;c++){b+=a.arrayPositions[c+1].coords.altitude-a.arrayPositions[c].coords.altitude;if(b>10){d+=b;b=0}}return d}function getNegativeDenivellation(a){var d=0;if(a.arrayPositions.length>1)for(var b=0,c=0;c<a.arrayPositions.length-1;c++){b+=a.arrayPositions[c].coords.altitude-a.arrayPositions[c+1].coords.altitude;if(b>10){d+=b;b=0}}return d}function S4(){return((1+Math.random())*65536|0).toString(16).substring(1)}function createGuid(){return S4()+S4()+"-"+S4()+"-"+S4()+"-"+S4()+"-"+S4()+S4()+S4()}function toDegrees(n){var f=Math.abs(Math.round(n.coords.latitude*1e6)),q=null;if(n.coords.latitude<0)q="S";else q="N";var k=Math.floor(f/1e6).toString(),x=k.length;switch(x){case 1:k="0"+k;break;case 0:k="00"}var l=Math.floor((f/1e6-Math.floor(f/1e6))*60).toString(),y=l.length;switch(y){case 1:l="0"+l;break;case 0:l="00"}var i=(Math.floor(((f/1e6-Math.floor(f/1e6))*60-Math.floor((f/1e6-Math.floor(f/1e6))*60))*1e5)*60/1e5).toString(),b=null,d=null,o=i.indexOf(".",0);if(o<0)o=i.indexOf(",",0);if(o>0){b=i.substring(0,o);d=Math.floor((parseFloat(i)-parseFloat(b))*100).toString()}else{b=i;d="00"}var w=b.length;switch(w){case 1:b="0"+b;break;case 0:b="00"}var s=d.length;switch(s){case 1:d="0"+d;break;case 0:d="00"}var A=q+k+l+b+d,g=Math.abs(Math.round(n.coords.longitude*1e6)),B=null,p=null;if(n.coords.longitude<0)p="W";else p="E";var e=Math.floor(g/1e6).toString(),u=e.length;switch(u){case 2:e="0"+e;break;case 1:e="00"+e;break;case 0:e="000"}var j=Math.floor((g/1e6-Math.floor(g/1e6))*60).toString(),v=j.length;switch(v){case 1:j="0"+j;break;case 0:j="00"}var h=(Math.floor(((g/1e6-Math.floor(g/1e6))*60-Math.floor((g/1e6-Math.floor(g/1e6))*60))*1e5)*60/1e5).toString(),a=null,c=null,m=h.indexOf(".",0);if(m<0)m=h.indexOf(",",0);if(m>0){a=h.substring(0,m);c=Math.floor((parseFloat(h)-parseFloat(a))*100).toString()}else{a=h;c="00"}var t=a.length;switch(t){case 1:a="0"+a;break;case 0:a="00"}var r=c.length;switch(r){case 1:c="0"+c;break;case 0:c="00"}var z=p+e+j+a+c;return A+z}function toKnots(b){if(b.coords.speed!=null){var a=Math.round(b.coords.speed*3.6/1.852).toString();if(a.length>3)a="999";switch(a.length){case 1:a="00"+a;break;case 2:a="0"+a}return a}else return"000"}function processDate(h){var b=new Date;h&&b.setTime(h);var g=b.getUTCFullYear().toString();g=g.substr(2,2);var a=b.getUTCMonth();a+=1;if(a>12)a=1;a=a.toString();if(a.length<2)a="0"+a;var f=b.getUTCDate().toString();if(f.length<2)f="0"+f;var e=b.getUTCHours().toString();if(e.length<2)e="0"+e;var c=b.getUTCMinutes().toString();if(c.length<2)c="0"+c;var d=b.getUTCSeconds().toString();if(d.length<2)d="0"+d;return g+a+f+e+c+d}function processHeading(b){if(b.coords.heading!=null){var a=Math.round(b.coords.heading).toString();switch(a.length){case 1:a="00"+a;break;case 2:a="0"+a}return a}else return"000"}function processAltitude(b){if(b.coords.altitude!=null){var a=Math.round(b.coords.altitude).toString();switch(a.length){case 1:a="0000"+a;break;case 2:a="000"+a;break;case 3:a="00"+a;break;case 4:a="0"+a}return a}else return"00000"}function processAccuracy(b){if(b.coords.accuracy!=null){if(b.coords.accuracy>999)b.coords.accuracy=999;var a=Math.round(b.coords.accuracy).toString();switch(a.length){case 1:a="00"+a;break;case 2:a="0"+a}return a}else return"000"}function convertDate(a){var i=a.getUTCDay(),b=null;switch(i){case 1:b=monday;break;case 2:b=tuesday;break;case 3:b=wednesday;break;case 4:b=thursday;break;case 5:b=friday;break;case 6:b=saturday;break;case 7:b=sunday}var f=a.getUTCDate();if(f<10)f="0"+f;var c=a.getUTCMonth();c+=1;if(c>12)c=1;if(c<10)c="0"+c;var g=a.getUTCHours(),h=a.getTimezoneOffset();g-=h/60;var d=a.getUTCMinutes();if(d<10)d="0"+d;var e=a.getUTCSeconds();if(e<10)e="0"+e;return b+" "+f+"/"+c+"/"+a.getUTCFullYear()+" "+g+":"+d+":"+e}function secondsToTime(e){var c=Math.floor(e/(60*60));if(c.toString().length<2)c="0"+c.toString();var d=e%(60*60),a=Math.floor(d/60);if(a.toString().length<2)a="0"+a.toString();var f=d%60,b=Math.ceil(f);if(b.toString().length<2)b="0"+b.toString();var g={h:c,m:a,s:b};return g}function buildRequest(a){tempRequest={};tempRequest.idRequest=a.IdRequest;tempRequest.guid=a.GUID;tempRequest.type=a.Type;tempRequest.name=a.Name;tempRequest.chrono={};tempRequest.chrono.getTotalSecondes=function(){return a.DurationSeconds};tempRequest.getDistance=function(){return Math.round(a.Distance)};tempRequest.getPosDenivellation=function(){return Math.round(a.PosDev)};tempRequest.getNegDenivellation=function(){return Math.round(a.NegDev)};a.SavedToWeb==0&&gDbHelper.getPositions(tempRequest.idRequest,addPositionsToRequest)}function addPositionsToRequest(a){tempRequest.arrayPositions=a;gDeviceProtocol.traceUpload(tempRequest,true,setRequestToUploaded)}function setRequestToUploaded(){gDbHelper.setRequestUploaded(tempRequest.idRequest,setTempRequestToNull)}function setTempRequestToNull(){$("#uploadLi").attr("style","display:none");on_historical();tempRequest=null}
