var prevData="";function formatSearchResult(a,h,k){k="("+k.replace(RegExp("(\\/|\\.|\\*|\\+|\\?|\\||\\(|\\)|\\[|\\]|\\{|\\}|\\\\)","g"),"\\$1")+")";a=a.replace(RegExp(k,"i"),'<span class="match">$1</span>')+'<span class="clear"></span>';if(h!=prevData)a='<span style="color: #aaaaaa;float: right;font-size: 11px;font-weight: normal;">'+h+"</span>"+a;prevData=h;return a}
function showLoginForm(){$.popbox($("#login"),{descShow:false,titlebarText:"Ange inloggningsuppgifter",titlebarIcon:"/images/icons/key.png",submitButtonShow:true,submitButtonText:"Logga in",cancelButtonShow:true,cancelButtonText:"Avbryt",closeButtonShow:false,onStart:function(){$("#login_error span").text("").css("display","none");$("#login").show()},onSubmit:function(){$("#inp_usr").val();$("#inp_pwd").val();$("#login_error span").fadeOut();$.popbox.showActivity();$.ajax({type:"POST",cache:false,
url:"/ajax/login",data:$("#login form").serializeArray(),dataType:"json",success:function(a){if(a.success===true)document.location.reload(true);else{$("#login_error span").text(""+a.message+"").fadeIn();$.popbox.resize()}$.popbox.hideActivity()}})},onClosed:function(){$("#login").hide()}})}
function showCancelForm(){$("#cancel_form").children().hide().filter("#cancel_form_find").show();$.popbox($("#cancel_form"),{descShow:false,titlebarText:"Ange bokningsuppgifter",titlebarIcon:"/images/icons/key.png",submitButtonShow:true,submitButtonText:"Visa bokning",cancelButtonShow:true,cancelButtonText:"Avbryt",closeButtonShow:false,onStart:function(){$("#cancel_error span").text("").parent().hide();$("#cancel_form").show()},onSubmit:function(a,h,k){$("#cancel_error").fadeTo(400,0);$.popbox.showActivity();
$.ajax({type:"POST",cache:false,url:"/ajax/cancel_booking",data:$("#cancel_form_find").serializeArray(),dataType:"json",success:function(i){if(i.success===true){$("#popbox-titlebar-text").text("Bekräfta avbokning");$("#inp_bno2").val($("#inp_bno").val());$("#inp_eml2").val($("#inp_eml").val());$("#cancel_form_cancel .date_activated .value").text(i.data.date_activated);$("#cancel_form_cancel .payment_method .value").text(i.data.method_of_payment_translated);$("#cancel_form_cancel .your_reservation .public_id .value").text(i.data.public_id);
var n,e,m,o,l,c,b,f,g,p,q,j=$("#cancel_form_cancel .route > tbody"),r=function(d){return["sön","mån","tis","ons","tors","fre","lör"][d.getDay()]},s=function(d){var t=(d.getHours()<10?"0":"")+d.getHours();d=(d.getMinutes()<10?"0":"")+d.getMinutes();return"kl. "+t+":"+d};for(n in i.plans){l=i.plans[n];j.append($("<tr></tr>").addClass("plan_outline").append($("<td></td>").attr("colspan",4).append(c=$("<span></span>"))));for(e=0;e<l.routes.length;e++){b=l.routes[e];if(!f){$("#cancel_form_cancel .date_departure").text(b.formatted_date_departure);
f=new Date(parseInt(b.date_departure)*1E3)}g=new Date((parseInt(b.date_departure)+b.entry_time*60)*1E3);p=(f.getDate()<g.getDate()?r(g)+" ":"")+s(g);f=g;g=new Date((parseInt(b.date_departure)+b.exit_time*60)*1E3);q=(f.getDate()<g.getDate()?r(g)+" ":"")+s(g);f=g;e>0&&c.append("<br />");c.append($("<span></span>").addClass("entry_stop").text(b.entry_stop_name+" ").append($("<span></span>").addClass("time").text("("+p+")"))," &rarr; ",$("<span></span>").addClass("exit_stop").text(b.exit_stop_name+" ").append($("<span></span>").addClass("time").text("("+
q+")"))," via ",$("<span></span>").addClass("route_name").text(b.public_id))}for(e in l.travellers){c=l.travellers[e];c.name=c.fname+" "+c.sname;b=c.type_name+(c.name==" "?"":" ("+c.name+")");f=$("<span></span>").append($('<input type="checkbox" name="travellers_to_cancel[]" />').attr("id","ttc"+e).val(e).css("width","auto"));if(c.status.substr(0,9)=="cancelled"){b=$("<del></del>").text(b);f.html("&nbsp;")}else b=$("<label></label>").attr("for","ttc"+e).css({display:"block",width:"100%"}).text(b);
j.append($("<tr></tr>").addClass("traveller").append($("<td></td>").append(f),$("<td></td>").append($("<span></span>").append(b)).attr("colspan",2),$("<td></td>").append($("<span></span>").text(c.price.toFixed(2)))));for(m in c.addons)for(o in c.addons[m]){b=c.addons[m][o];j.append($("<tr></tr>").addClass("addon").append($("<td></td>"),$("<td></td>").append($("<span></span>").text("1")),$("<td></td>").append($("<span></span>").text(b.name)),$("<td></td>").append($("<span></span>").text(b.price.toFixed(2)))))}}f=
false}$("tr.traveller",j).filter(":odd").addClass("odd");j.append($("tr.sum",j).each(function(){$(this).children().last().append($("<span></span>").text(i.data.price.toFixed(2)))}));$("#cancel_form_find").fadeOut(400,function(){$("#cancel_form_cancel").fadeIn(200,function(){$.popbox.resize()})});k.onSubmit=function(){$("#cancel_error").fadeTo(400,0);$.popbox.showActivity();$.ajax({type:"POST",cache:false,url:"/ajax/do_cancel_booking",data:$("#cancel_form_cancel").serializeArray(),dataType:"json",
success:function(d){if(d.success===true)$("#cancel_form_cancel").fadeOut(400,function(){$("#cancel_success").text(""+d.message+"").fadeIn(200,function(){$.popbox.resize();setTimeout(function(){$.popbox.close()},2500)})});else{$("#cancel_error span").text(""+d.message+"").parent().stop().show().fadeTo(400,1,function(){$.popbox.resize()});d.show_address_fields&&$("#cancel_form .address_fields").fadeIn(200,function(){$.popbox.resize()})}$.popbox.hideActivity()}})};$("#cancel_form table.route input:checkbox").length?
$("#popbox-button-submit span span").text("Avboka valda resenärer"):$("#popbox-button-submit").fadeOut(200)}else $("#cancel_error span").text(""+i.message+"").parent().stop().show().fadeTo(400,1,function(){$.popbox.resize()});$.popbox.hideActivity()}})},onClosed:function(){$("#cancel_form").hide()}})}
function showContactForm(){$.popbox($("#contact"),{titlebarText:"Kontakta oss",submitButtonShow:true,submitButtonText:"Skicka",cancelButtonShow:true,cancelButtonText:"Avbryt",closeButtonShow:false,scrolling:"no",onStart:function(){$("#contact_error span").text("").css("display","none");$("#contact").show()},onSubmit:function(){$("#inp_name").val();$("#inp_email").val();$("#inp_message").val();$("#contact_error span").fadeOut();$.popbox.showActivity();$.ajax({type:"POST",cache:false,url:"/ajax/contact",
data:$("#contact form").serializeArray(),dataType:"json",success:function(a){if(a.success===true){$.popbox(a.message,{titlebarText:"Kontakta oss"});$("#contact input, #contact textarea").val("")}else{$("#contact_error span").text(""+a.message+"").fadeIn();$.popbox.resize()}$.popbox.hideActivity()}})},onClosed:function(){$("#contact").hide()}})}
function showRestockMailForm(){$.popbox($("#restock_mail"),{titlebarText:"Bevaka produkt",submitButtonShow:true,submitButtonText:"Skicka",cancelButtonShow:true,cancelButtonText:"Avbryt",closeButtonShow:false,scrolling:"no",onStart:function(){$("#restock_mail_error span").text("").css("display","none");$("#restock_mail").show()},onSubmit:function(){$("#restock_mail_error span").fadeOut();$.popbox.showActivity();var a={product_id:$("input[name='product_id']").val(),email:$("#inp_email").val(),variation_data:$(".product_image_and_abstract select").serializeArray()};
$.ajax({type:"GET",cache:false,url:"/ajax/restock_mail",data:a,dataType:"json",success:function(h){if(h.success===true){$.popbox(h.message,{titlebarText:"Bevaka produkt"});$("#restock_mail input").val("")}else{$("#restock_mail_error span").text(""+h.message+"").fadeIn();$.popbox.resize()}}});$.popbox.hideActivity()},onClosed:function(){$("#restock_mail").hide()}})}
function getAddressesOnSubmit(){$.fancybox.showActivity();ajaxLoader=$.ajax({url:"/ajax/get_addresses/",data:{pno:$("input[name='pno']").val()},dataType:"json",type:"POST",error:getAddressesError,success:getAddressesSuccess})}function getAddressesError(){$.fancybox.hideActivity()}
function getAddressesSuccess(a){$.fancybox.hideActivity();if(ajaxLoader.status==200)if(a.length==0){$("#test").html("Kunde inte hitta adress...");$.fancybox.resize()}else if(a.length==1){$("#inp_first_name").val(a[0].FirstName);$("#inp_last_name").val(a[0].LastName);$("#inp_street_address_1").val(a[0].AddressLine1);$("#inp_street_address_2").val(a[0].AddressLine2);$("#inp_post_code").val(a[0].Postcode);$("#inp_city").val(a[0].Postarea);$.fancybox.close()}};

