var PHARMACY_YELLOW_THRESHOLD=30;var PHARMACY_CHANGES_MINUTES_THRESHOLD=10;var PHARMACY_OPENS_HOURS_THRESHOLD=60;var PHARMACY_HOURS_ROUNDING_THRESHOLD=15;var pharmaciesOnCall={};var pharmaciesOnCallMarkerText={};var pharmacyRequestBounds;var pharmacyRequestDuration;var pharmacyServerDate;var pharmacyRequestDate;
var pharmacyUpdateTimer;var pharmaciesVisible=false;function parsePharmacyDate(F){var E=F.indexOf("-",0);var D=F.indexOf("-",E+1);var C=F.indexOf(" ",D+1);var A=F.indexOf(":",C+1);var B=new Date();B.setMilliseconds(0);B.setSeconds(0);B.setMinutes(F.substring(A+1));B.setHours(F.substring(C+1,A));B.setDate(F.substring(0,E));
B.setMonth(F.substring(E+1,D)-1);B.setFullYear(F.substring(D+1,C));return B}function getPharmacyInfo(C){var B='<div class="myInfoBox">';B+='<div class="infoBox-inner">';B+="<b>"+C.name+"</b><br/>";B+=C.area+"<br/>";B+=C.address+"<br/>";B+="<b>Τηλ:</b> "+C.phone+"<br/>";B+="<b>Εφημερία:</b> "+C.efimeria+"<br/>";
var A="Φαρμακείο: "+C.name;B+='<div class="info-route">';B+="<a href=\"javascript:setRouteDirection('"+C.lat+"','"+C.lng+"','from','"+A+"')\">";B+='<img src="images/new/various/start-route.png" style="border:0px; margin-right:3px;" title="Διαδρομή από" alt="Διαδρομή από" />Διαδρομή από</a>';B+="<a href=\"javascript:setRouteDirection('"+C.lat+"','"+C.lng+"','to','"+A+"')\">";
B+='<img src="images/new/various/stop-route.png" style="border:0px; margin-right:3px;" title="Διαδρομή προς" alt="Διαδρομή προς" />Διαδρομή έως</a>';B+="</div>";B+="</div>";B+='<div class="infoBox-bottom"></div>';return B}function trueRound(A){A=String(A);var B=A.indexOf(".");if(B>=0){A=A.substring(0,B)
}if(A.length==0){A="0"}return A}function getPharmacyTip(E){var D,A;var C=new Date();var J=pharmacyServerDate.getTime()+(C.getTime()-pharmacyRequestDate.getTime());var I=parsePharmacyDate(E.opensAt).getTime();var F=parsePharmacyDate(E.closesAt).getTime();if((I<=J)&&(J<F)){if((F-J<PHARMACY_YELLOW_THRESHOLD*60*1000)){D="ΑΝΟΙΧΤΟ"
}else{D="ΑΝΟΙΧΤΟ";A="green50.png"}}else{A="red50.png";var D="Ανοίγει σε ";var B=Math.round((I-J)/(60*1000));if(B>=PHARMACY_OPENS_HOURS_THRESHOLD){var H=B-Math.floor(B/60)*60;var G=(B-H)/60;if(H>=60-PHARMACY_HOURS_ROUNDING_THRESHOLD){G++;H-=60}D+=trueRound(G);if(H>=PHARMACY_HOURS_ROUNDING_THRESHOLD){D+="+"
}if((G==1)&&(H<PHARMACY_HOURS_ROUNDING_THRESHOLD)){D+=" ώρα"}else{D+=" ώρες"}}else{if(B<=PHARMACY_CHANGES_MINUTES_THRESHOLD){D+=trueRound(B)+" λεπτά"}else{B=Math.round(B/5)*5;D+=trueRound(B)+" λεπτά"}}}return{"style":A,"text":D}}function addPharmacy(F){pharmaciesOnCall[F.id]=F;var I=new google.maps.LatLng(F.lat,F.lng);
var C=new google.maps.Marker({map:map,position:I,optimized:false,zIndex:100,icon:"images/new/markers/farm-pin.png"});C.pharmacydata=F;var J="Φαρμακείο: "+F.name;markersOnMap.push({"lat":I.lat(),"lng":I.lng(),"name":J,"marker":C});google.maps.event.addListener(C,"click",function(){if(infowindow2!=undefined){infowindow2.close()
}infowindow.setContent(getPharmacyInfo(this.pharmacydata));infowindow.open(map,C)});google.maps.event.addListener(C,"rightclick",function(){addContextMenu(2,I)});google.maps.event.addListener(map,"click",function(){infowindow.close()});var H=getPharmacyTip(F);var D="font-weight:bold; font-size:12px; line-height:14px; padding:1px 2px 5px; width:54px; height:14px; background-image: url(images/new/various/green50.png);background-repeat:no-repeat; color: black; white-space: nowrap;";
var E=new MarkerText(C,21,-65,D,H.text,map);pharmaciesOnCallMarkerText[F.id]=E;var B={disableAutoPan:false,alignBottom:true,pixelOffset:new google.maps.Size(19,-10),zIndex:null,boxStyle:{opacity:0.95,width:"300px"},closeBoxURL:"",infoBoxClearance:new google.maps.Size(1,1),isHidden:false,pane:"mapPane",maxWidth:"800px",enableEventPropagation:false};
var A=new InfoBox(B);var G='<div class="pharmacy">';G+='<div style="font-size:11px;">';G+="Ανοίγει: <b>"+F.opensAt.substring(F.opensAt.indexOf(" "),F.opensAt.length)+"</b><br/>";G+="Κλείνει: <b>"+F.closesAt.substring(F.closesAt.indexOf(" "),F.closesAt.length)+"</b>";G+="</div>";G+="</div>";A.setContent(G);
A.open(map,C);C.setMap(map);pharmaciesOnCall[F.id].marker=C;pharmaciesOnCall[F.id].markertext=E;pharmaciesOnCall[F.id].label=A;pharmaciesOnCall[F.id].touched=true}function getNewPharmacies(B,A){jQuery.ajax({type:"POST",url:"functs/fsa.jsp",data:{"sw_lat":B.southwest.lat,"sw_lng":B.southwest.lng,"ne_lat":B.northeast.lat,"ne_lng":B.northeast.lng,"dur":A},dataType:"json",success:function(D){pharmacyServerDate=parsePharmacyDate(D[0]);
pharmacyRequestDate=new Date();pharmacies=D[1];for(var C in pharmacies){var E=pharmacies[C];if(pharmaciesOnCall[E.id]===undefined){addPharmacy(E)}}}})}function clearPharmacies(){infowindow.close();for(var B in pharmaciesOnCallMarkerText){var A=pharmaciesOnCallMarkerText[B];A.setMap(null)}for(var C in pharmaciesOnCall){var D=pharmaciesOnCall[C];
removeFromMarkersOnMap(D.lat,D.lng);D.marker.setMap(null);D.label.close()}pharmaciesOnCall={};pharmacyRequestBounds=null}function togglePharmaciesOnCall(B){if(infowindow2!=undefined){infowindow2.close()}if(B){var A=map.getBounds();var C;if(A==undefined){C={"southwest":{"lat":"37.1165261849112","lng":"22.7691650390625"},"northeast":{"lat":"38.84826438869913","lng":"24.7576904296875"}}
}else{C={"southwest":{"lat":A.getSouthWest().lat(),"lng":A.getSouthWest().lng()},"northeast":{"lat":A.getNorthEast().lat(),"lng":A.getNorthEast().lng()}}}pharmacyRequestDuration=1;if(jQuery("#pharmacies_hours").get(0)){pharmacyRequestDuration=jQuery("#pharmacies_hours").get(0).value}getNewPharmacies(C,pharmacyRequestDuration);
pharmacyRequestBounds=C;pharmaciesVisible=true}else{clearPharmacies();pharmaciesVisible=false}if(!toPrint){if(isDutiesChecked()){$("#allDuties").attr("src","images/new/various/efimereuonta-sel.png")}else{$("#allDuties").attr("src","images/new/various/efimereuonta.png")}}}function updatePharmacies(B,G){if((B)||(jQuery("#pharmacies").get(0).checked)){var E;
if(jQuery("#pharmacies_hours").get(0)){E=jQuery("#pharmacies_hours").get(0).value}else{E=G}if(E!=pharmacyRequestDuration){clearPharmacies()}var A=map.getBounds();var F={"southwest":{"lat":A.getSouthWest().lat(),"lng":A.getSouthWest().lng()},"northeast":{"lat":A.getNorthEast().lat(),"lng":A.getNorthEast().lng()}};
var D;if(pharmacyRequestBounds!=null){D=getRectangleDiff(pharmacyRequestBounds,F)}else{D=[F]}for(var C in D){getNewPharmacies(D[C],E)}pharmacyRequestBounds=F;pharmacyRequestDuration=E}}function updatePharmacies1(){if(pharmaciesVisible){jQuery.ajax({type:"POST",url:"functs/fsa.jsp",data:{"sw_lat":pharmacyRequestBounds.southwest.lat,"sw_lng":pharmacyRequestBounds.southwest.lng,"ne_lat":pharmacyRequestBounds.northeast.lat,"ne_lng":pharmacyRequestBounds.northeast.lng,"dur":pharmacyRequestDuration},dataType:"json",success:function(B){pharmacyServerDate=parsePharmacyDate(B[0]);
pharmacyRequestDate=new Date();pharmacies=B[1];for(var C in pharmaciesOnCall){pharmaciesOnCall[C].touched=false}for(var C in pharmacies){var E=pharmacies[C];if(pharmaciesOnCall[E.id]===undefined){addPharmacy(E)}else{var I=pharmaciesOnCall[E.id];E.marker=I.marker;E.marker.pharmacyinfo=getPharmacyInfo(E);
var G=getPharmacyTip(E);var A='background-image: url("images/'+G.style+'"); color:black; padding:1px; white-space: nowrap;';var D=new MarkerText(E.marker,13,-45,A,G.text);D.setMap(map);I.markertext.setMap(null);E.markertext=D;pharmaciesOnCall[E.id]=E;pharmaciesOnCall[E.id].touched=true}}var H=[];for(var C in pharmaciesOnCall){var E=pharmaciesOnCall[C];
if(!E.touched){H.push(C)}}for(var C in H){var F=H[C];pharmaciesOnCall[F].marker.setMap(null);pharmaciesOnCall[F].markertext.setMap(null);delete (pharmaciesOnCall[F])}}})}};
