function parseJsonDate(n){var i,t;try{return i=(new Date).getTimezoneOffset()*6e4,t=/\/Date\((-?\d+)([+-]\d{2})?(\d{2})?.*/.exec(n),t[2]==undefined&&(t[2]=0),t[3]==undefined&&(t[3]=0),new Date(+t[1]+i+t[2]*36e5+t[3]*6e4)}catch(r){alert("parseJsonDate:"+r)}}function getTime(n){try{var t=n.getHours(),i=n.getMinutes();return(t.toString().length==1?"0"+t:t)+":"+(i.toString().length==1?"0"+i:i)}catch(r){alert("getTime:"+r)}}function getDateddMMMyyyy(n){try{return(n.getDate().toString().length==1?"0"+n.getDate().toString():n.getDate().toString())+" "+getMonthName(n.getMonth())+" "+n.getFullYear()}catch(t){alert("getDateddMMMyyyy:"+t)}}function getDatedayddMMM(n){try{return getDay(n.getDay())+" "+((n.getDate().toString().length==1?"0"+n.getDate().toString():n.getDate().toString())+" "+getMonthName(n.getMonth()))}catch(t){alert("getDateddMMMyyyy:"+t)}}function getMonthName(n){var t;switch(n){case 0:t="Jan";break;case 1:t="Feb";break;case 2:t="Mar";break;case 3:t="Apr";break;case 4:t="May";break;case 5:t="Jun";break;case 6:t="Jul";break;case 7:t="Aug";break;case 8:t="Sep";break;case 9:t="Oct";break;case 10:t="Nov";break;case 11:t="Dec"}return t}function getDay(n){var t;switch(n){case 0:t="Sun";break;case 1:t="Mon";break;case 2:t="Tue";break;case 3:t="Wed";break;case 4:t="Thu";break;case 5:t="Fri";break;case 6:t="Sat"}return t}function getDuration(n){try{return parseInt(n.split(":")[0],10).toString()+"h "+parseInt(n.split(":")[1],10).toString()+"m"}catch(t){alert("parseJsonDate:"+t)}}function isEmail(n){return/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(n)}function __highlight(n,t){var i=new RegExp("("+$.ui.autocomplete.escapeRegex(t)+")","ig");return n.replace(i,"<strong>$1<\/strong>")}function allowCharacter(n){n.value=n.value.replace(/([^\a-zA-Z\s-.'])+$/,"").toUpperCase();n.value=n.value.replace(/ +/g," ")}function allowNumberWithSpace(n){n.value=n.value.replace(/[^\0-9 ]/ig,"");n.value=n.value.replace(/ +/g," ")}function allowNumber(n){n.value=n.value.replace(/[^\0-9]/ig,"").replace(/^\s+|\s+$/g,"")}function isLuhnCheckPassed(n){for(var r=n,u=0,t,f=r.length%2,e=r.split(""),i=0;i<r.length;i++)t=parseInt(e[i],10),i%2==f&&(t*=2,t>9&&(t-=9)),u+=t;return u%10==0}function addBubbleMouseovers(n){$("."+n).mouseover(function(n){if(onDiv||onLink)return!1;onLink=!0;showBubble.call(this,n)});$("."+n).mouseout(function(){onLink=!1;timeoutID=setTimeout(hideBubble,150)})}function hideBubble(){clearTimeout(timeoutID);bubbleExists&&!onDiv&&$("#bubbleID").remove()}function showBubble(){var n;bubbleExists&&hideBubble();var u=$(this).attr("ID"),f=u.match(/\d+/),r=u.replace(f,""),i=parseInt($("#ServiceType"+f).val(),10);if(i==0||i==1||i==2||i==8){n="";switch(i){case 1:r=="From"?(n='<b>Pickup From Airport <font color="red"> E.g.<\/font><\/b><ul><li>* Brisbane Domestic Airport, Australia<\/li><li>* Brisbane International Airport, Australia<\/li><li>* Gold Coast Airport, Australia<\/li><\/ul>',n=n+"Please select airport from suggested after typing some letters."):(n='<b>Dropoff To Hotel <font color="red"> E.g.<\/font><\/b><ul><li>* Brisbane Marriot, Queen Street, Brisbane<\/li><\/ul>',n=n+'<b>Dropoff To Suburb <font color="red"> E.g.<\/font><\/b><ul><li>* 123, Queen Street, Brisbane<\/li><\/ul>',n=n+"Please select location from suggested after typing some letters.");break;case 2:r=="To"?(n='<b>Dropoff Airport<font color="red"> E.g.<\/font><\/b><ul><li>* Brisbane Domestic Airport, Australia<\/li><li>* Brisbane International Airport, Australia<\/li><li>* Gold Coast Airport, Australia<\/li><\/ul>',n=n+"Please select airport from suggested, after type 2 or 3 letter."):(n='<b>Pickup From Hotel <font color="red"> E.g.<\/font><\/b><ul><li>* Brisbane Marriot, Queen Street, Brisbane<\/li><\/ul>',n=n+'<b>Pickup From Suburb <font color="red"> E.g.<\/font><\/b><ul><li>* 123, Queen Street, Brisbane<\/li><\/ul>',n=n+"Please select location from suggested after typing some letters.");break;case 8:r=="From"?(n='<b>Pickup From Airport <font color="red"> E.g.<\/font><\/b><ul><li>* Brisbane Domestic Airport, Australia<\/li><li>* Brisbane International Airport, Australia<\/li><li>* Gold Coast Airport, Australia<\/li><\/ul>',n=n+"Please select airport from suggested, after type 2 or 3 letter."):(n='<b>Dropoff Airport<font color="red">E.g.<\/font><\/b><ul><li>* Brisbane Domestic Airport, Australia<\/li><li>* Brisbane International Airport, Australia<\/li><li>* Gold Coast Airport, Australia<\/li><\/ul>',n=n+"Please select airport from suggested, after type 2 or 3 letter.");break;case 0:n="Before going to add pickup and dropoff location, please select service.";n=n+'<\/br><b>Service Type<font color="red"> E.g.<\/font><\/b><ul><li>* Airport Pick Up<\/li><li>* Airport Drop Off<\/li><li>* Point To Point Transfers. etc<\/li><\/ul>'}var t=$(this).offset(),o=$(this).height(),e=$(this).width();isMobile.any()?($('<div ID="bubbleID" class="device-tooltip2">'+n+"<\/div>").mouseover(keepBubbleOpen).mouseout(letBubbleClose).appendTo("body"),SEARCH_ENGINE=="CENTER"?$("#bubbleID").css({left:t.left-100,top:t.top-160}):SEARCH_ENGINE=="RIGHT"&&$("#bubbleID").css({left:t.left-100,top:t.top-160,zIndex:1e4})):($('<div ID="bubbleID" class="frm-tooltip2">'+n+"<\/div>").mouseover(keepBubbleOpen).mouseout(letBubbleClose).appendTo("body"),SEARCH_ENGINE=="CENTER"?$("#bubbleID").css({left:t.left+e+30,top:t.top-60}):SEARCH_ENGINE=="RIGHT"&&$("#bubbleID").css({left:t.left-340,top:t.top-60,zIndex:1e4}));bubbleExists=!0}}function keepBubbleOpen(){onDiv=!0}function letBubbleClose(){onDiv=!1;hideBubble()}function myFunction(){window.pageYOffset>sticky?header.classList.add("sticky"):header.classList.remove("sticky")}QuoteSearchENgine={EnumServiceType:{None:0,AirportPickUp:1,AirportDropOff:2,AirportRoundTripFrom:3,AirportRoundTripTo:4,PointToPointTransfers:5,CharterHireWeddingsSpecialEvents:6,ThemeParkSportsEventsZooTransfers:7,AirportToAirport:8,StretchLimousineTransfer:9,SchoolFormalsTransfer:10,WeddingTransfer:11,HourlyTransfer:12},MaxTrip:3,addTrip:function(n){var t=parseInt($("#NoTrip").val(),10);t<this.MaxTrip&&(t=t+1,$.ajax({url:"/Quote/GetTrip",type:"POST",contentType:"application/json",data:JSON.stringify({Id:t}),success:function(t){$(t).insertAfter($(n).parent("div").parent("div").children("div.tripInfo:last"))}}),$("#NoTrip").val(t),t==this.MaxTrip&&$(".trip_add_button").hide(),$(".trip_delete_button").show())},addCenterTrip:function(n){var t=parseInt($("#NoTrip").val(),10);t<this.MaxTrip&&(t=t+1,$.ajax({url:"/Quote/GetCenterTrip",type:"POST",contentType:"application/json",data:JSON.stringify({Id:t}),success:function(t){$(t).insertAfter($(n).parent("div").parent("div").children("div.tripInfo:last"))}}),$("#NoTrip").val(t),t==this.MaxTrip&&$(".trip_add_button").hide(),$(".trip_delete_button").show())},deleteTrip:function(n){var t=parseInt($("#NoTrip").val(),10);$(n).parent("div").parent("div").children("div.tripInfo:last").remove();t=t-1;$("#NoTrip").val(t);t==1&&$(".buttons .trip_delete_button").hide();$(".buttons .trip_add_button").show()},addStop:function(n){var t=parseInt($("#Trip"+n+"NoStop").val(),10);switch(t){case 0:$("#DivTrip"+n+"Stop1").show();$("#Trip"+n+"NoStop").val(1);$("#Trip"+n+"Stop1").attr("placeholder","Stop 1: Public location or exact address.");$("#RemoveButtonTrip"+n).show();break;case 1:$("#DivTrip"+n+"Stop2").show();$("#Trip"+n+"NoStop").val(2);$("#Trip"+n+"Stop2").attr("placeholder","Stop 2: Public location or exact address.");break;case 2:$("#DivTrip"+n+"Stop3").show();$("#Trip"+n+"NoStop").val(3);$("#Trip"+n+"Stop3").attr("placeholder","Stop 3: Public location or exact address.");$("#AddButtonTrip"+n).hide()}},removeStop:function(n){var t=parseInt($("#Trip"+n+"NoStop").val(),10);switch(t){case 1:$("#DivTrip"+n+"Stop1").hide();$("#Trip"+n+"NoStop").val(0);$("#Trip"+n+"Stop1").val("");$("#Trip"+n+"Stop1").attr("placeholder","Stop 1: Public location or exact address.");$("#RemoveButtonTrip"+n).hide();break;case 2:$("#DivTrip"+n+"Stop2").hide();$("#Trip"+n+"NoStop").val(1);$("#Trip"+n+"Stop2").val("");$("#Trip"+n+"Stop2").attr("placeholder","Stop 2: Public location or exact address.");break;case 3:$("#DivTrip"+n+"Stop3").hide();$("#Trip"+n+"NoStop").val(2);$("#Trip"+n+"Stop3").val("");$("#Trip"+n+"Stop3").attr("placeholder","Stop 3: Public location or exact address.");$("#AddButtonTrip"+n).show()}},returnAddStop:function(n){var t=parseInt($("#ReturnTrip"+n+"NoStop").val(),10);switch(t){case 0:$("#DivReturnTrip"+n+"Stop1").show();$("#ReturnTrip"+n+"NoStop").val(1);$("#ReturnTrip"+n+"Stop1").attr("placeholder","Stop 1: Public location or exact address.");$("#ReturnRemoveButtonTrip"+n).show();break;case 1:$("#DivReturnTrip"+n+"Stop2").show();$("#ReturnTrip"+n+"NoStop").val(2);$("#ReturnTrip"+n+"Stop2").attr("placeholder","Stop 2: Public location or exact address.");break;case 2:$("#DivReturnTrip"+n+"Stop3").show();$("#ReturnTrip"+n+"NoStop").val(3);$("#ReturnTrip"+n+"Stop3").attr("placeholder","Stop 3: Public location or exact address.");$("#ReturnAddButtonTrip"+n).hide()}},returnRemoveStop:function(n){var t=parseInt($("#ReturnTrip"+n+"NoStop").val(),10);switch(t){case 1:$("#DivReturnTrip"+n+"Stop1").hide();$("#ReturnTrip"+n+"NoStop").val(0);$("#ReturnTrip"+n+"Stop1").val("");$("#ReturnTrip"+n+"Stop1").attr("placeholder","Stop 1: Public location or exact address.");$("#ReturnRemoveButtonTrip"+n).hide();break;case 2:$("#DivReturnTrip"+n+"Stop2").hide();$("#ReturnTrip"+n+"NoStop").val(1);$("#ReturnTrip"+n+"Stop2").val("");$("#ReturnTrip"+n+"Stop2").attr("placeholder","Stop 2: Public location or exact address.");break;case 3:$("#DivReturnTrip"+n+"Stop3").hide();$("#ReturnTrip"+n+"NoStop").val(2);$("#ReturnTrip"+n+"Stop3").val("");$("#ReturnTrip"+n+"Stop3").attr("placeholder","Stop 3: Public location or exact address.");$("#ReturnAddButtonTrip"+n).show()}},exactNoPassenger:function(){var n=parseInt($("#NoPassenger").val(),10);n>12?(SEARCH_ENGINE=="CENTER"&&$("#divNoPassenger").addClass("ExactPassBox"),$("#divExactPass").show(),$("#ExactPassenger").val("")):(SEARCH_ENGINE=="CENTER"&&$("#divNoPassenger").removeClass("ExactPassBox"),$("#divExactPass").hide(),$("#ExactPassenger").val(""))},serviceType:function(n){var t=n.id.match(/\d+/),i=parseInt($("#ServiceType"+t).val(),10),r;if(t==1){switch(i){case 11:window.location.href="https://www.blackbowchauffeur.com.au/services/wedding-transfers";break;case 10:window.location.href="https://www.blackbowchauffeur.com.au/services/student-transfers";break;case 9:window.location.href="https://www.blackbowchauffeur.com.au/services/stretch-limousine-transfers"}i==12?($("#ReturnTrip").attr("disabled",!0),$("#MultiTrip").attr("disabled",!0),$("#OnewayTrip").prop("checked",!0),this.setTrip(),SEARCH_ENGINE=="CENTER"&&$("#From1Container").addClass("col_12_width"),$("#HourlyService1Container").show()):($("#ReturnTrip").is(":enabled")!=!0||$("#MultiTrip").is(":enabled")!=!0)&&($("#ReturnTrip").attr("disabled",!1),$("#MultiTrip").attr("disabled",!1),SEARCH_ENGINE=="CENTER"&&$("#From1Container").removeClass("col_12_width"),$("#HourlyService1Container").hide())}r=$("#OnewayTrip").prop("checked")==!0?1:$("#ReturnTrip").prop("checked")==!0?2:3;switch(i){case 1:$("#From"+t).attr("placeholder","Origin: Airport pickup name.");$("#To"+t).attr("placeholder","Destination: Public location or exact address.");r==2&&t==1&&this.setReturnTripField(i,1);break;case 2:$("#From"+t).attr("placeholder","Origin: Public location or exact address.");$("#To"+t).attr("placeholder","Destination: Airport drop-off name.");r==2&&t==1&&this.setReturnTripField(i,1);break;case 5:$("#From"+t).attr("placeholder","Origin: Public location or exact address.)");$("#To"+t).attr("placeholder","Destination: Public location or exact address.");r==2&&t==1&&this.setReturnTripField(i,1);break;case 7:$("#From"+t).attr("placeholder","Origin: Public location or exact address.)");$("#To"+t).attr("placeholder","Destination (Theme park/ zoo....");r==2&&t==1&&this.setReturnTripField(i,1);break;case 8:$("#From"+t).attr("placeholder","Origin: Airport pickup name.");$("#To"+t).attr("placeholder","Destination: Airport drop-off name.");r==2&&t==1&&this.setReturnTripField(i,1);break;case 9:case 10:case 11:case 12:$("#From"+t).attr("placeholder","Origin: Public location or exact address.)");$("#To"+t).attr("placeholder","Destination: Public location or exact address.");r==2&&t==1&&this.setReturnTripField(i,1);break;default:$("#From"+t).attr("placeholder","Please select service type.");$("#To"+t).attr("placeholder","Please select service type.")}},fromTrip:function(n){var i=n.id.match(/\d+/),r=parseInt($("#ServiceType"+i).val()),t=$(n).val();t.indexOf(",")>0&&(t=t.split(",")[0]);switch(r){case 1:case 8:this.aiports(n,t);break;case 2:case 5:case 7:this.suburbs(n,t)}},toTrip:function(n){var i=n.id.match(/\d+/),r=parseInt($("#ServiceType"+i).val()),t=$(n).val();t.indexOf(",")>0&&(t=t.split(",")[0]);switch(r){case 2:case 8:this.aiports(n,t);break;case 1:case 5:this.suburbs(n,t)}},returnFromTrip:function(n){var i=n.id.match(/\d+/),r=parseInt($("#ServiceType"+i).val()),t=$(n).val();t.indexOf(",")>0&&(t=t.split(",")[0]);switch(r){case 1:this.suburbs(n,t);break;case 2:case 8:this.aiports(n,t)}},returnToTrip:function(n){var i=n.id.match(/\d+/),r=parseInt($("#ServiceType"+i).val()),t=$(n).val();t.indexOf(",")>0&&(t=t.split(",")[0]);switch(r){case 1:case 8:this.aiports(n,t);break;case 2:case 7:this.suburbs(n,t)}},tripStops:function(n){var t=parseInt($(n).val(),10);switch(t){case 1:$(n).parent().children(".stop1").show();$(n).parent().children(".stop2, .stop3").hide();break;case 2:$(n).parent().children(".stop1,.stop2").show();$(n).parent().children(".stop3").hide();break;case 3:$(n).parent().children(".stop1,.stop2,.stop3").show();break;default:$(n).parent().children(".stop1,.stop2,.stop3").hide()}},validateTrips:function(n,t){var r,u,c,e,f,o,v,s,y,l,p;errors="";r=!0;try{var w=parseInt(n.elements.NoTrip.value,10),h=parseInt(n.elements.TripType.value,10),a=!1;for(h==2&&n.elements.ReturnLocation.value!="true"&&(a=!0),i=1;i<=w;i++){if(u=parseInt(n.elements["ServiceType"+i].value,10),u==0&&(errors=errors+"<li>Trip #"+i+" Please select service type.<\/li>",r=!1),(u==1||u==8)&&n.elements["From"+i].value.replace(/^\s+|\s+$/g,"").length<5&&(errors=errors+"<li>Trip #"+i+" Origin: Airport pickup name.<\/li>",r=!1),(u==2||u==5||u==7||u==9||u==10||u==11||u==12)&&n.elements["From"+i].value.replace(/^\s+|\s+$/g,"").length<5&&(errors=errors+"<li>Trip #"+i+" Origin: Public location or exact address.<\/li>",r=!1),c=parseInt(n.elements["Trip"+i+"NoStop"].value,10),c>0)for(e=1;e<=c;e++)n.elements["Trip"+i+"Stop"+e].value.replace(/^\s+|\s+$/g,"").length<5&&(errors=errors+"<li>Trip #"+i+" Stop "+e+": Public location or exact address.<\/li>",r=!1);(u==1||u==5||u==9||u==10||u==11||u==12)&&n.elements["To"+i].value.replace(/^\s+|\s+$/g,"").length<5&&(errors=errors+"<li>Trip #"+i+" Destination: Public location or exact address.<\/li>",r=!1);(u==2||u==8)&&n.elements["To"+i].value.replace(/^\s+|\s+$/g,"").length<5&&(errors=errors+"<li>Trip #"+i+" Destination: Airport drop-off name.<\/li>",r=!1);try{f=n.elements["TravelDate"+i].value.replace(/^\s+|\s+$/g,"").split("-");f.length==3?isNaN(parseInt(f[2].replace(/^\s+|\s+$/g,""),10))||isNaN(parseInt(f[1].replace(/^\s+|\s+$/g,""),10))||isNaN(parseInt(f[0].replace(/^\s+|\s+$/g,""),10))?(errors=errors+"<li>Trip #"+i+" Please enter valid travel date.<\/li>",r=!1):(o=new Date(parseInt(f[2].replace(/^\s+|\s+$/g,""),10),parseInt(f[1].replace(/^\s+|\s+$/g,""),10)-1,parseInt(f[0].replace(/^\s+|\s+$/g,""),10)),(o<minDate||o>maxDate)&&(errors=errors+"<li>Trip #"+i+" Please enter valid travel date.<\/li>",r=!1)):(errors=errors+"<li>Trip #"+i+" Please enter valid travel date.<\/li>",r=!1);h==2&&(f=n.elements["ReturnTravelDate"+i].value.replace(/^\s+|\s+$/g,"").split("-"),f.length==3?isNaN(parseInt(f[2].replace(/^\s+|\s+$/g,""),10))||isNaN(parseInt(f[1].replace(/^\s+|\s+$/g,""),10))||isNaN(parseInt(f[0].replace(/^\s+|\s+$/g,""),10))?(errors=errors+"<li>Trip #"+i+" Please enter valid return date.<\/li>",r=!1):(v=new Date(parseInt(f[2].replace(/^\s+|\s+$/g,""),10),parseInt(f[1].replace(/^\s+|\s+$/g,""),10)-1,parseInt(f[0].replace(/^\s+|\s+$/g,""),10)),o>v&&(errors=errors+"<li>Trip #"+i+" Return date can't be less than departure date.<\/li>",r=!1)):(errors=errors+"<li>Trip #"+i+" Please enter valid return date.<\/li>",r=!1))}catch(b){r=!1;errors=errors+"<li>Trip #"+i+" Please enter valid travel date.<\/li>"}i==1&&h==2&&a&&(this.validateReturnTrip(u,n)||(r=!1))}t&&(s=parseInt(n.elements.NoPassenger.value,10),s==0?(errors=errors+"<li>Please select passengers.<\/li>",r=!1):s>=13&&(n.elements.ExactPassenger.value==null||n.elements.ExactPassenger.value==""?(errors=errors+"<li>Enter valid number of exact passengers.<\/li>",r=!1):(y=parseInt(n.elements.ExactPassenger.value,10),y<s&&(errors=errors+"<li>Enter valid number of exact passengers.<\/li>",r=!1))),(n.elements.ContactPerson.value.replace(/^\s+|\s+$/g,"").length<3||n.elements.ContactPerson.value.replace(/^\s+|\s+$/g,"").length>25)&&(errors=errors+"<li>Contact person required at least 3-25 characters.<\/li>",r=!1),isEmail(n.elements.EmailAddress.value)||(errors=errors+"<li>Email address required.<\/li>",r=!1),l=n.elements.ContactNumber.value.replace(/\s/g,""),(l.length<5||l.length>15)&&(errors=errors+"<li>Please enter valid contact number.<\/li>",r=!1));r||(errors="<ul>"+errors+"<\/ul>",$("#ErrorInfo").html(errors),p=SEARCH_ENGINE=="CENTER"?50:$("#ErrorInfo").offset().top,$("html, body").animate({scrollTop:p},300))}catch(b){r=!1}return r},setTrip:function(){$("#OnewayTrip").prop("checked")==!0?($("#ContainerReturn").hide(),$(".trip_delete_button").hide(),$(".trip_add_button").hide(),$(".tripInfo").slice(1).remove(),$("#NoTrip").val(1)):$("#ReturnTrip").prop("checked")==!0?($("#ContainerReturn").show(),$("#ReturnSameLocaltion").prop("checked",!0),this.setReturnTrip(),$(".trip_add_button").hide(),$(".trip_delete_button").hide(),$(".tripInfo").slice(1).remove(),$("#NoTrip").val(1)):$("#MultiTrip").prop("checked")==!0&&($("#ContainerReturn").hide(),$(".trip_add_button").show(),$(".trip_delete_button").hide(),$(".tripInfo").slice(1).remove(),$("#NoTrip").val(1))},setReturnTrip:function(){if($("#ReturnSameLocaltion").prop("checked")==!0)$("#ContainerSubReturn").hide();else{$("#ContainerSubReturn").show();var n=parseInt($("#ServiceType1").val(),10);this.setReturnTripField(n,1)}},setReturnTripField:function(n,t){switch(n){case 1:$("#ReturnFrom"+t).attr("placeholder","Origin:Public location or exact address.");$("#ReturnTo"+t).attr("placeholder","Destination: Airport pickup name.");break;case 2:$("#ReturnFrom"+t).attr("placeholder","Origin: Airport pickup name.");$("#ReturnTo"+t).attr("placeholder","Destination: Public location or exact address.");break;case 5:$("#ReturnFrom"+t).attr("placeholder","Origin: Public location or exact address.");$("#ReturnTo"+t).attr("placeholder","Destination: Public location or exact address.");break;case 7:$("#ReturnFrom"+t).attr("placeholder","Origin: Public location or exact address.)");$("#ReturnTo"+t).attr("placeholder","Destination: Theme park/ zoo....");break;case 8:$("#ReturnFrom"+t).attr("placeholder","Origin: Airport pickup name.");$("#ReturnTo"+t).attr("placeholder","Destination: Airport Drop-off  name.");break;case 9:case 10:case 11:case 12:$("#ReturnFrom"+t).attr("placeholder","Origin: Public location or exact address.");$("#ReturnTo"+t).attr("placeholder","Destination: Public location or exact address.");break;default:$("#From"+t).attr("placeholder","Please select service.");$("#To"+t).attr("placeholder","Please select service.")}},aiports:function(n,t){$(n).autocomplete({source:function(n,i){$.ajax({autoFocus:!0,url:airportService+t,type:"GET",contentType:"application/json; charset=utf-8",success:function(n){i($.map(n,function(n){return{label:n}}))}})},minLength:2,select:function(){},open:function(){},close:function(){},focus:function(n,t){$(this).val(t.item.value)}})},suburbs:function(n,t){$(n).autocomplete({source:function(n,i){$.ajax({autoFocus:!0,url:suburbService+t,type:"GET",contentType:"application/json; charset=utf-8",success:function(n){i($.map(n,function(n){return{label:n}}))}})},minLength:2,select:function(){},close:function(){},focus:function(n,t){$(this).val(t.item.value)}})},validateReturnTrip:function(n,t){var i=!0,u,r;if((n==1||n==5||n==9||n==10||n==11||n==12)&&t.elements.ReturnFrom1.value.replace(/^\s+|\s+$/g,"").length<5&&(errors=errors+"<li>Return Origin: Public location or exact address.<\/li>",i=!1),(n==2||n==8)&&t.elements.ReturnFrom1.value.replace(/^\s+|\s+$/g,"").length<5&&(errors=errors+"<li>Return Origin: Airport pickup name.<\/li>",i=!1),u=parseInt(t.elements.ReturnTrip1NoStop.value,10),u>0)for(r=1;r<=u;r++)t.elements["ReturnTrip1Stop"+r].value.replace(/^\s+|\s+$/g,"").length<5&&(errors=errors+"<li>Return Trip #1 Stop "+r+": Public location or exact address.<\/li>",i=!1);return(n==1||n==8)&&t.elements.ReturnTo1.value.replace(/^\s+|\s+$/g,"").length<5&&(errors=errors+"<li>Return Destination: Airport drop-off name.<\/li>",i=!1),(n==2||n==5||n==9||n==10||n==11||n==12)&&t.elements.ReturnTo1.value.replace(/^\s+|\s+$/g,"").length<3&&(errors=errors+"<li>Return Destination: Public location or exact address.<\/li>",i=!1),u==0&&t.elements.ReturnTo1.value.toLowerCase()==t.elements.ReturnFrom1.value.toLowerCase()&&(errors=errors+"<li>Return: Origin/Destination can't be same.<\/li>",i=!1),i}};SendMessage={ContactUs:{Name:"",ContactNumber:"",Email:"",Message:""},validateEmailMessage:function(n){var t="",i=!0,r,u;try{(n.elements.ContactPerson.value.replace(/^\s+|\s+$/g,"").length<3||n.elements.ContactPerson.value.replace(/^\s+|\s+$/g,"").length>25)&&(t=t+"<li>Contact person required at least 3-25 characters.<\/li>",i=!1);isEmail(n.elements.Email.value)||(t=t+"<li>Valid email address required.<\/li>",i=!1);r=n.elements.ContactNumber.value.replace(/\s/g,"");(r.length<5||r.length>15)&&(t=t+"<li>Please enter valid contact number.<\/li>",i=!1);u=n.elements.Message.value;(u.length<15||u.length>100)&&(t=t+"<li>Message should be 15 to 100 characters.<\/li>",i=!1);i?(this.ContactUs.Name=n.elements.ContactPerson.value,this.ContactUs.ContactNumber=r,this.ContactUs.Email=n.elements.Email.value,this.ContactUs.Message=u,$.ajax({url:"/Home/SendMessage",type:"POST",contentType:"application/json",data:JSON.stringify({model:this.ContactUs}),success:function(n){n.toLowerCase()=="true"&&($(".leavemsg").addClass("leavemsgimg"),$(".msgsend").css("display","block"));$(".close a").click()}})):(t="<ul>"+t+"<\/ul>",$("#MessageErrorInfo").html(t))}catch(f){}}};$(document).ready(function(){$(".trip_delete_button").hide();$("#FromSub").hide();$("#ToSub").hide();$("#OnewayTrip").prop("checked",!0);QuoteSearchENgine.setTrip();$(".tabAccordian").click(function(){$(".tabAccordian").removeClass("activeTab");var n=$(this).attr("data-tab");$(this).addClass("activeTab")});$(document).on("click",".trip_add_button",function(){if(QuoteSearchENgine.validateTrips(document.getElementById("QuoteForm"),!1))$("#ErrorInfo").html("");else return!1;SEARCH_ENGINE=="CENTER"?QuoteSearchENgine.addCenterTrip(this):SEARCH_ENGINE=="RIGHT"&&QuoteSearchENgine.addTrip(this)});$(document).on("submit","form#QuoteForm",function(){return QuoteSearchENgine.validateTrips(this,!0)});$(document).on("keyup","#ContactPerson",function(){allowCharacter(this)});$(document).on("keyup","#ContactNumber",function(){allowNumberWithSpace(this)});$(document).on("click","#ReturnDifferLocaltion",function(){$("#ReturnFromSub1").val($("#To1").val());$("#ReturnFromSub1").val($("#ToSub1").val());$("#ReturnTo1").val($("#From1").val());$("#ReturnToSub1").val($("#FromSub1").val())});$(document).on("click",".trip_delete_button",function(){QuoteSearchENgine.deleteTrip(this)});$(document).on("click","#OnewayTrip,#ReturnTrip,#MultiTrip",function(){QuoteSearchENgine.setTrip()});$(document).on("click","#ReturnSameLocaltion,#ReturnDifferLocaltion",function(){QuoteSearchENgine.setReturnTrip()});$(document).on("focus",".calendar",function(){$(this).datepicker({changeMonth:!0,changeYear:!0,numberOfMonths:SEARCH_ENGINE=="CENTER"?2:1,dateFormat:"dd-mm-yy",minDate:minDate,maxDate:maxDate,onClose:function(){}})});addBubbleMouseovers("addToolTip")});$(document).ready(function(){$("#top-scrolling").hide();$(function(){$(window).scroll(function(){$(this).scrollTop()>100?$("#top-scrolling").fadeIn():$("#top-scrolling").fadeOut()});$("#top-scrolling .QuoteNow, #top-scrolling .BookNow, #top-scrolling .topScrolingPage").click(function(){return $("body,html").animate({scrollTop:0},800),!1})})});var isMobile={Android:function(){return navigator.userAgent.match(/Android/i)},BlackBerry:function(){return navigator.userAgent.match(/BlackBerry/i)},iOS:function(){return navigator.userAgent.match(/iPhone|iPad|iPod/i)},Opera:function(){return navigator.userAgent.match(/Opera Mini/i)},Windows:function(){return navigator.userAgent.match(/IEMobile/i)},any:function(){return isMobile.Android()||isMobile.BlackBerry()||isMobile.iOS()||isMobile.Opera()||isMobile.Windows()}};users={checkUserSignin:function(){var n,t;try{n=JSON.parse(localStorage.getItem("ls.authorizationData"));n!=null&&n.name!=""?(t=n.name.split(" "),$(".logout").html("Welcome "+t[0]+'! <i><img src="//www.blackbowchauffeur.com.au/images/dropdown-arrow.png" alt="drop dwon"><\/i>'),$(".logout").show(),$(".login").hide(),this.fillUserInfo()):($(".login").show(),$(".logout").hide())}catch(i){}},fillUserInfo:function(){try{var n=JSON.parse(localStorage.getItem("ls.authorizationData"));n!=null&&(n.name!=""&&$("#ContactPerson").val(n.name),n.userName!=""&&$("#EmailAddress").val(n.userName),n.contactNumber!=""&&$("#ContactNumber").val(n.contactNumber),n.id!=""&&$("#UId").val(n.id),n.r!=""&&$("#Role").val(n.r))}catch(t){}},logout:function(){localStorage.getItem("ls.authorizationData")!=null&&(localStorage.removeItem("ls.authorizationData"),$(".profileLogout").hide());this.checkUserSignin()},getUserId:function(){var t="",n=JSON.parse(localStorage.getItem("ls.authorizationData"));return n!=null&&n.id!=""&&(t=n.id),t},getUserPoints:function(n){try{var t=JSON.parse(localStorage.getItem("ls.authorizationData"));t!=null?(t.r!=""&&parseInt(t.r,10)==0?$.ajax({url:n+"api/getuserpoints/"+t.id,type:"GET",contentType:"application/json",data:null,success:function(n){if(n.TransactionStatus.IsSuccess){var i=parseInt(n.Data,10);i>0?($("#RewardPoint").html(i),$("#UserRedeemPoint").val(i),$("#RewardPointAmount").html((i/10).toFixed(2)),$("#RedeemSection").show()):$("#RedeemSection").hide();$("#UId").val(t.id)}else $("#RedeemSection").hide()}}):$("#RedeemSection").hide(),$("#UId").val(t.id)):$("#RedeemSection").hide()}catch(i){$("#RedeemSection").hide()}}};$(document).ready(function(){users.checkUserSignin();$(".logout").click(function(){var n=$(this).offset(),t=$(this).height(),u=$(this).width(),i=n.top+t+10+"px",r=n.left+"px";$(".profileLogout").css({position:"absolute",left:r,top:i});$(".profileLogout").toggle()});$("#logout").click(function(){users.logout()})})