$(function(){$("#Order_Address_Country").change(function(){var a=$(this).val();if(a!=="GB")$(".country-text").show();else $(".country-text").hide();displayHidePostcode()});displayHidePostcode()});(function(a){jQuery.fn.loading=function(){return this.each(function(){a(this).hide();a(this).after('<div class="loading"><img src="/Skins/Shared/Images/loading.gif" /><br /><br />Please wait, loading...</div>')})}})(jQuery);function displayHidePostcode(){var b=$("#Order_Address_Country").val();if(b==="IE"){$("#Container_Order_Address_Postcode").hide();$("#Order_Address_Postcode").val("******")}else{$("#Container_Order_Address_Postcode").show();var a=$("#Order_Address_Postcode").val();$("#Order_Address_Postcode").val(a=="******"?"":a)}}var streetPafLookupLib={checkout:{init:function(a){$(document).ready(function(){if(a){$("#Order_Address_Country").val()==="GB"&&$(".validation-message-custom").children().size()==0&&!$('span[data-valmsg-for="Order.Payment.Card.CardNumber"]').is(":visible")&&streetPafLookupLib.checkout.enableLookup();streetPafLookupLib.checkout.disablePafLookupForNonUK()}})},enableLookup:function(){$("#Order_Address_Postcode").attr("tabindex","4");$("#Order_Address_Postcode").css("width","107px");$("#Order_Address_Postcode").after('<a id="lookupButton" href="javascript:void(0)" class="pafbutton" tabindex="5">Find Address</a>');$("#Container_Order_Address_Postcode").insertAfter($("#Order_LastName").parent("div"));$("#Container_Order_Address_Postcode").before('<div id="housenum_container"><label>House Name/No.</label><input id="paf_street" type="text" tabindex="4" /></div>');$("#Order_Address_Email").parent("div").css("margin-top","20px");$("#Order_LastName").css("margin-bottom","20px");!$("#nomatches").length&&$("#Container_Order_Address_Postcode").after('<div id="nomatches" class="paf-validation"></div>');$("#lookupButton").after('<img src="/Skins/Shared/Images/pafloading.gif" id="loading" class="loading" alt="Loading..." title="Loading..." />');$("#lookupButton").click(function(){streetPafLookupLib.checkout.showPafResults($("#Order_Address_Postcode").val())});streetPafLookupLib.checkout.clearAddressForm();streetPafLookupLib.checkout.hideAddressForm();streetPafLookupLib.checkout.enterManuallyLink();$("#nomatches").hide();$("#loading").hide();$("#lookupButton").show()},disableLookup:function(){$("#loading").remove();$("#lookupButton").remove();$("#Order_Address_Postcode").css("width","200px");$("#Container_Order_Address_Postcode").insertAfter($("#Order_Address_Town").parent("div"));$("#Order_Address_Postcode").attr("tabindex","9");$("#Order_Address_Town").css("margin-bottom","0");$("#Order_Address_Email").parent("div").css("margin-top","0");$("#Order_LastName").css("margin-bottom","0");$("#housenum_container").remove();streetPafLookupLib.checkout.showAddressForm()},enterManuallyLink:function(){$("#entermanually").remove();$("#Container_Order_Address_Postcode").append('<a href="javascript:void(0)" class="paftryagain" id="entermanually">Enter address manually</a>');$("#entermanually").click(function(){streetPafLookupLib.checkout.disableLookup();streetPafLookupLib.checkout.tryAgainLink("Use address search");$("#entermanually").remove()})},tryAgainLink:function(a){$("#tryagain").remove();$("#Container_Order_Address_Postcode").append('<a href="javascript:void(0)" class="paftryagain" id="tryagain">'+a+"</a>");$("#tryagain").click(function(){streetPafLookupLib.checkout.enableLookup();$("#tryagain").remove()})},clearAddressForm:function(){$("#Order_Address_Line_1").val("");$("#Order_Address_Line_2").val("");$("#Order_Address_Line_3").val("");$("#Order_Address_Town").val("")},hideAddressForm:function(){$("#Order_Address_Line_1").parent("div").hide();$("#Order_Address_Line_2").parent("div").hide();$("#Order_Address_Line_3").parent("div").hide();$("#Order_Address_Town").parent("div").hide()},showAddressForm:function(){$("#Order_Address_Line_1").parent("div").show();$("#Order_Address_Line_2").parent("div").show();$("#Order_Address_Line_3").parent("div").show();$("#Order_Address_Town").parent("div").show()},injectIntoForm:function(a){if($("#paf_street").val().length<=5){$("#Order_Address_Line_1").val($("#paf_street").val()+" "+a.Line_1);$("#Order_Address_Line_2").val(a.Line_2);$("#Order_Address_Line_3").val(a.Line_3)}else{$("#Order_Address_Line_1").val($("#paf_street").val());$("#Order_Address_Line_2").val(a.Line_1);$("#Order_Address_Line_3").val(a.Line_2)}$("#Order_Address_Town").val(a.Town);$("#Order_Address_Postcode").val(a.Postcode)},setProcessing:function(a){if(a){$("#loading").show();$("#lookupButton").addClass("inactive")}else{$("#loading").hide();$("#lookupButton").removeClass("inactive")}},noMatches:function(a){streetPafLookupLib.checkout.disableLookup(true);$("#nomatches").empty();$("#nomatches").append('<span class="field-validation-error">'+a+"</span>");$("#nomatches").fadeIn("slow");streetPafLookupLib.checkout.tryAgainLink()},showPafResults:function(a){$("#house_val").remove();if(!$("#paf_street").val()){$("#paf_street").after('<span id="house_val" class="field-validation-error">Please enter a house name or number</span>');return}if(!$("#Order_Address_Postcode").valid())return;streetPafLookupLib.checkout.clearAddressForm();streetPafLookupLib.checkout.setProcessing(true);$("#entermanually").remove();var b=$.ajax({url:"/Purchase/StreetLevelPostcodeLookup?postCode="+a,dataType:"json",success:function(b){if(!b.Line_1){$("#entermanually").remove();$("#Order_Address_Line_1").focus();streetPafLookupLib.checkout.noMatches("No addresses found for '"+a+"'. Please enter your address manually.");streetPafLookupLib.checkout.tryAgainLink("Try address search again");return}$("#housenum_container").hide();streetPafLookupLib.checkout.injectIntoForm(b);streetPafLookupLib.checkout.disableLookup();streetPafLookupLib.checkout.showAddressForm();streetPafLookupLib.checkout.tryAgainLink("Not your address? Try again");$("#Order_Address_Email").focus()},error:function(){streetPafLookupLib.checkout.noMatches("An error occurred during the lookup. Please enter your address manually.");streetPafLookupLib.checkout.disableLookup()}});setTimeout(function(){streetPafLookupLib.checkout.setProcessing(false)},1e3)},disablePafLookupForNonUK:function(){$("#Order_Address_Country").change(function(){$("#nomatches").remove();if($(this).val()!="GB"){streetPafLookupLib.checkout.disableLookup();streetPafLookupLib.checkout.clearAddressForm();$("#entermanually").remove();$("#tryagain").remove()}else streetPafLookupLib.checkout.enableLookup()})}}},fullPafLookupLib={checkout:{init:function(a){$(document).ready(function(){if(a){$("#Order_Address_Country").val()==="GB"&&$(".validation-message-custom").children().size()==0&&!$('span[data-valmsg-for="Order.Payment.Card.CardNumber"]').is(":visible")&&fullPafLookupLib.checkout.enableLookup();fullPafLookupLib.checkout.disablePafLookupForNonUK()}})},enableLookup:function(){$("#Order_Address_Postcode").attr("tabindex","4");$("#Order_Address_Postcode").css("width","107px");$("#Order_LastName").css("margin-bottom","20px");$("#Order_LastName").parent("div").after($("#Container_Order_Address_Postcode"));$("#Container_Order_Address_Postcode").after('<div id="pafresults"><select name="pafOptions" id="pafOptions" class="paf" tabindex="5"></select></div>');$("#pafresults").after('<div id="nomatches" class="paf-validation"></div>');$("#Order_Address_Postcode").after('<a id="lookupButton" href="javascript:void(0)" class="pafbutton" tabindex="5">Find Address</a>');$("#lookupButton").after('<img src="/Skins/Shared/Images/pafloading.gif" id="loading" class="loading" alt="Loading..." title="Loading..." />');$("#Order_Address_Town").css("margin-bottom","20px");$("#lookupButton").click(function(){fullPafLookupLib.checkout.showPafResults($("#Order_Address_Postcode").val())});$("#nomatches").hide();$("#pafresults").hide();$("#loading").hide();$("#lookupButton").show()},disableLookup:function(){$("#loading").remove();$("#nomatches").remove();$("#lookupButton").remove();$("#pafresults").remove();$("#Order_Address_Postcode").css("width","200px");$("#Container_Order_Address_Postcode").insertAfter($("#Order_Address_Town").parent("div"));$("#Order_Address_Postcode").attr("tabindex","9");$("#Order_Address_Town").css("margin-bottom","0");$("#Order_LastName").css("margin-bottom","0")},clearAddressForm:function(){$("#Order_Address_Line_1").val("");$("#Order_Address_Line_2").val("");$("#Order_Address_Line_3").val("");$("#Order_Address_Town").val("")},injectIntoForm:function(a){$("#Order_Address_Line_1").val(a.Line_1);$("#Order_Address_Line_2").val(a.Line_2);$("#Order_Address_Line_3").val(a.Line_3);$("#Order_Address_Town").val(a.Town);$("#Order_Address_Postcode").val(a.Postcode)},setProcessing:function(a){if(a){$("#loading").show();$("#lookupButton").addClass("inactive")}else{$("#loading").hide();$("#lookupButton").removeClass("inactive")}},noMatches:function(a){$("#pafresults").hide();$("#pafOptions").empty().attr("size",2);$("#nomatches").append('<span class="field-validation-error">'+a+"</span>");$("#nomatches").fadeIn("slow")},showPafResults:function(a){$("#nomatches").empty();$("#nomatches").hide();if(!$("#Order_Address_Postcode").valid()){$("#pafresults").hide();return}fullPafLookupLib.checkout.setProcessing(true);$("#pafOptions").unbind("change");var b=$.ajax({url:"/Purchase/FullPostcodeLookup?postCode="+a,dataType:"json",success:function(b){fullPafLookupLib.checkout.clearAddressForm();$("#pafOptions").attr("size",0);$("#pafOptions").empty();if(b.length<1){fullPafLookupLib.checkout.noMatches("No addresses found for '"+a+"'. Please enter your address manually.");return}for(var c=0;c<b.length;++c)$("#pafOptions").append($("<option>",{value:c,id:"result_"+b[c].ID}).text(b[c].Location));$("#pafOptions").attr("size",b.length+1);$("#pafOptions").change(function(){fullPafLookupLib.checkout.injectIntoForm(b[$("#pafOptions").val()]);$("#Order_Address_Line_1").valid();$("#Order_Address_Town").valid();$("#Order_Address_Postcode").valid()});$("#pafOptions").val([]);$("#pafresults").fadeIn("slow")},error:function(){pafLookupLib.checkout.noMatches("An error occurred during the lookup. Please enter your address manually.")}});setTimeout(function(){fullPafLookupLib.checkout.setProcessing(false)},1e3)},disablePafLookupForNonUK:function(){$("#Order_Address_Country").change(function(){if($(this).val()!="GB"){fullPafLookupLib.checkout.disableLookup();fullPafLookupLib.checkout.clearAddressForm()}else fullPafLookupLib.checkout.enableLookup()})}}},customerServiceHelp={init:function(a,e,d,f,b,c){$(document).ready(function(){var g=e.attr("id");$("#"+g+" option:first").html("--- Choose a question ---");e.change(function(){var g=$(this).val();if(!g){customerServiceHelp.fadeAndSlide(d,":hidden","slideUp",1,0);customerServiceHelp.disableMessageSending(b,c,false);return}for(var e=1;e<a.length;++e)if(a[e].ID==g){if(!a[e].HelpNarrative||a[e].HelpNarrative==" ")customerServiceHelp.fadeAndSlide(d,":hidden","slideUp",1,0);else{f.html(a[e].HelpNarrative);customerServiceHelp.fadeAndSlide(d,":visible","slideDown",0,1)}if(!a[e].AllowEmailCommunication)customerServiceHelp.disableMessageSending(b,c,true);else customerServiceHelp.disableMessageSending(b,c,false)}})})},fadeAndSlide:function(a,c,b,d,e){!a.is(c.toString())&&a.css("opacity",d)[b]("slow").animate({opacity:e},{queue:false,duration:"slow"})},disableMessageSending:function(a,b,c){if(!c){customerServiceHelp.fadeAndSlide(a,":visible","slideDown",0,1);customerServiceHelp.fadeAndSlide(b,":visible","slideDown",0,1)}else{customerServiceHelp.fadeAndSlide(a,":hidden","slideUp",0,1);customerServiceHelp.fadeAndSlide(b,":hidden","slideUp",0,1)}}},insuranceAsOrderItem={init:function(a){if(a){$("#Order_IsInsured").attr("checked")&&insuranceAsOrderItem.displayItem(basketTotal.Tickets,basketTotal.Insurance,basketTotal.Currency);$("#Order_IsInsured").change(function(){if($(this).attr("checked"))insuranceAsOrderItem.displayItem(basketTotal.Tickets,basketTotal.Insurance,basketTotal.Currency);else insuranceAsOrderItem.removeItem(basketTotal.Tickets,basketTotal.Insurance,basketTotal.Currency)})}},displayItem:function(c,a,b){insuranceAsOrderItem.basketItem.add(a,b);$("#orderTotal").text(b+formatCurrency(c+a)).html()},removeItem:function(a,c,b){insuranceAsOrderItem.basketItem.remove();$("#orderTotal").text(b+formatCurrency(a)).html()},basketItem:{add:function(a,b){$(".order-items tr:last").before('<tr id="insuranceItem"><td>Cancellation Protection</td><td class="quantity">1</td><td class="price">'+$("<span />").text(b+formatCurrency(a)).html()+"</td></tr>")},remove:function(){$("#insuranceItem").remove()}}};function formatCurrency(a){a=isNaN(a)||a===""||a===null?0:a;return parseFloat(a).toFixed(2)}(function(a,c,e){function b(a){return a.placeholder===""&&a.placeholder!==e}var d={input:b(c.createElement("input")),textarea:b(c.createElement("textarea"))};a.fn.placeHoldize=function(){function c(e){var b=a(this),f=this.nodeName.toLowerCase();if(!e&&(d[f]||!b.attr("placeholder")))return;var c=b.attr("placeholder");if(b.val().length<=0||b.val()==c){b.val("");b.removeAttr("placeholder").addClass("placeholder-visible");b.val(c)}else b.removeClass("placeholder-visible").addClass("placeholder-hidden");b.addClass("placeholdized");b.focus(function(){if(b.val()===c){b.val("");b.removeClass("placeholder-visible").addClass("placeholder-hidden")}});b.blur(function(){if(b.val()===""){b.val(c);b.removeClass("placeholder-hidden").addClass("placeholder-visible")}else b.removeClass("placeholder-visible").addClass("placeholder-hidden")})}function b(b){var c=b.closest("form");c.submit(function(){var b=a(this);if(b.data("placeHoldize.submitHandlerCalled"))return;b.find(".placeholder-visible").val("").data("placeHoldize.submitHandlerCalled",true)});return true}return function(a){this.each(function(){c.call(this,a)});b(this);return this}}()})(jQuery,document);(function(a){a(function(){a("[placeholder]").placeHoldize()})})(jQuery);$(document).ready(function(){$(".dropdown-button").click(function(){$(".dropdown").toggle()})});var artistInfo={mouseX:null,mouseY:null,initDisplay:function(e,d,c){$(document).mousemove(function(a){artistInfo.mouseX=a.pageX;artistInfo.mouseY=a.pageY});var b=e.children("span"),a=null;b.mouseenter(function(){fullId=$(this).parent().attr("id");var b="#"+(c+fullId.replace(d,""));a=$(b);a.mouseleave(function(){a.fadeOut();a=null});a.parent("td").first().mouseleave(function(){a.fadeOut();a=null})});b.mousemove(function(){a.css("left",artistInfo.mouseX);a.css("top",artistInfo.mouseY+1);a.fadeIn()})}},searchResultFilter={init:function(b,e,d,c,a){b&&$(e).siblings().show();$(function(){$(a).datepicker({showOn:"button",buttonImage:"/Skins/Shared/Images/calendar.jpg",buttonImageOnly:true,dateFormat:"yy-mm-dd",changeMonth:true,changeYear:true,minDate:d,maxDate:c})})}},geoLocation={locationLoadingIcon:null,locationErrorIcon:null,redirectLink:null,filterByNearestLink:null,init:function(b,a,c){$(document).ready(function(){geoLocation.locationLoadingIcon=b;geoLocation.locationErrorIcon=a;geoLocation.filterByNearestLink=c;if(navigator.geolocation)!geoLocation.getLocationCookieValue()&&geoLocation.filterByNearestLink.click(function(a){a.preventDefault();geoLocation.redirectLink=$(this).attr("href")});else geoLocation.filterByNearestLink.parent("li").hide()})},findMe:function(){if(!geoLocation.getLocationCookieValue()){geoLocation.locationErrorIcon.hide();geoLocation.locationLoadingIcon.fadeIn();navigator.geolocation.getCurrentPosition(geoLocation.updatePosition,geoLocation.browseGeoLocateError)}},updatePosition:function(a){var c=a.coords.latitude,b=a.coords.longitude;geoLocation.setLocationAndSort(c,b)},browseGeoLocateError:function(b){var a="Location search error: ";switch(b.code){case b.PERMISSION_DENIED:a+="permission denied";break;case b.POSITION_UNAVAILABLE:a+="unable to locate";break;case b.TIMEOUT:a="request timed out";break;default:a="unknown error"}geoLocation.updateErrorUI(a)},updateErrorUI:function(a){geoLocation.locationLoadingIcon.hide();geoLocation.locationErrorIcon.attr("title",a);geoLocation.locationErrorIcon.attr("alt",a);geoLocation.locationErrorIcon.fadeIn()},setLocationAndSort:function(d,c){var b="none",a="see-geo-location=";a+=d+"|"+c+"|"+b+"; ";a+="expires; ";a+="path=/";document.cookie=a;geoLocation.locationLoadingIcon.hide();window.location=geoLocation.redirectLink},getLocationCookieValue:function(){for(var c="see-geo-location=",b=document.cookie.split(";"),a=0;a<b.length;a++){while(b[a].charAt(0)==" ")b[a]=b[a].substring(1,b[a].length);if(b[a].indexOf(c)==0)return b[a].substring(c.length,b[a].length)}return""},showUserLocation:function(b){var a=geoLocation.getLocationCookieValue().split("|");b.html(a[2])}},registration={tmpl:'<div class="registration" id="registration-{0}"><a href="#" class="delete" title="remove this registration from your order">&nbsp;</a>{1}<h2>{2}</h2>{3}</div>',init:function(d,b,c){this.showcode=d;this.pricesurl=b;this.checkurl=c;var a=this;$(document).ready(function(){$("#checkregistration").submit(function(){if($(this).valid()){$(this).loading();a.addregistration($("#Registration_Id").val(),$("#Registration_User_Address_Email").val())}return false});$(".registration a.delete").live("click",function(){a.removeregistration($(this).parent().attr("id").replace("registration-",""));return false});a.getregistrations()})},getregistrations:function(){var a=this;$.getJSON("/Event/GetRegistrations",function(b){if(b.error!=null&&b.error==true)return;for(i=0;i<b.length;i++)a.parseregistration(b[i],false);a.loadprices(a.showcode)})},loadprices:function(){$("#tickets").loading();$.get(this.pricesurl,{showCode:this.showcode},function(a){$("#tickets .content").html(a);$("#tickets").show();$(".loading").remove()})},addregistration:function(c,a){var b=this;$.post(this.checkurl,{regId:c,email:a,showCode:this.showcode},function(a){$(".loading").remove();$("#checkregistration").show();b.parseregistration(a,true)})},parseregistration:function(a,c){if(a!=null&&a.registration!=null&&a.error==null){var b=this.tmpl;b=b.replace("{0}",a.registration.Id);if(a.type==0){b=b.replace("{1}",'<img src="'+a.image+'" width="32" height="42" />');b=b.replace("{2}",a.registration.User.FirstName+" "+a.registration.User.LastName);b=b.replace("{3}",a.registration.User.Address.Email+"<br />"+a.registration.User.Address.Line_1+", "+a.registration.User.Address.Line_2+", "+a.registration.User.Address.Postcode)}else if(a.type==1){b=b.replace("{1}","");b=b.replace("{2}",a.registration.User.Address.Email);b=b.replace("{3}","Registration #"+a.registration.Id)}$("#registrations").append(b).show();$("#registrations h2 span").text($("#registrations .registration").length);$("#Registration_Id").val("");$("#Registration_User_Address_Email").val("");c&&this.loadprices(this.showcode)}else alert(a.error!=null&&a.error==true?"No matching registration found with the details provided, please try again.":a.error)},removeregistration:function(a){$("#checkregistration").loading();var b=this;$.post(this.checkurl,{regId:a},function(){$(".loading").remove();$("#checkregistration").show();$("#registration-"+a).remove();var c=$("#registrations .registration").length;$("#registrations h2 span").text(c);if(c!=0)b.loadprices(this.showcode);else $("#tickets,#registrations").hide()})}}
