var activeProdId=0;var newlyAddedAddressId=0;var activeProdImage=0;var prodImgTimeout=null;var previewVendor=false;function SelectCategory(a){var b=$("#ProductList").offset().top;if($("#CategoryList").css("display")=="none"){return}$("#CategoryList li").each(function(c){this.className=(this.id=="CategoryItem"+a)?"selectedcategory":"category"});if(a==0){$("ul.Products").css("display","block");$("div.catHead").css("display","block")}else{$(".Products").each(function(c){this.style.display=(this.id=="prods"+a)?"block":"none"});$("div.catHead").each(function(c){this.style.display=(this.id=="catHead"+a)?"block":"none"})}if(OLO.Utils.GetVerticalScrollPosition()>b){OLO.Utils.ScrollTo(b,true)}}function UpdateBasketTotals(d){var h=$(d).find("VendorDiscount").text();var e=$(d).find("SubTotal").text();var m=$(d).find("Discount").text();var f=$(d).find("SalesTax").text();var a=$(d).find("ServiceCharge").text();var l=$(d).find("DeliveryCharge").text();var k=$(d).find("Tip").text();var j=$(d).find("Total").text();var g=$(d).find("TimeEstimate").text();var b=$(d).find("TimeWarning").text();var c="";if($("#bSubTotal").length==1&&$("#bSubTotal").text()!=e){for(i=0;i<e/2;i+=0.25){c+="<option value='"+i+"'";if(i==k){c+=" selected='selected'"}c+=">$"+parseFloat(i).toFixed(2)+"</option>"}$("#selTip").html(c)}$("#bDiscount").text(m);$("#bVendorDiscount").text(h);$("#bDeliveryFee").text(l);$("#bSubTotal").text(e);$("#bTax").text(f);$("#bTotal").text(j);$("#BasketDiscount").css("display",(m>0)?"block":"none");$("#BasketVendorDiscount").css("display",(h>0)?"block":"none");$("#BasketDeliveryFee").css("display",(l>0)?"block":"none");$("#WantedTimeWarning").text(b);$("#WantedTimeWarning").css("display",(b!="")?"block":"none")}function basketHtml(b){var a="";$(b).find("BasketProduct").each(function(d,e){var f=$(e).attr("Id");var c=$(e).attr("ProductName");var g=$(e).attr("Quantity");a+='<li id="proddisplay'+f+'"><span class="quantity">'+g+'x</span><span class="product">'+c+'</span><span class="money">$'+$(e).attr("Cost")+'</span><div class="controls">[ <a href="javascript:edit('+f+');">edit</a> | <a href="javascript:del('+f+');">remove</a> ]</div><div class="options">'+$(e).attr("Choices")+"</div></li>"});return a}function add(c){var a=$("#PopupDialog"),b=$("#ContentArea").offset().top;activeProdId=c;$("#scroller").css("position","static");a.load("/Order/Customize.aspx?prodId="+c,function(){if(Ios){$("html, body").animate({scrollTop:0},"fast")}a.dialog({title:"Customize Product",width:880,height:600,modal:false,close:function(){CloseDialog();activateScroller()},buttons:{"Add to Cart":function(){if(previewVendor){alert("Unable to create orders for menus in the preview stage.")}else{SaveCustomize()}},Cancel:function(){CloseDialog();activateScroller()}}}).dialog("widget").offset({top:b});if(OLO.Utils.GetVerticalScrollPosition()>b){OLO.Utils.ScrollTo(b,false)}})}function activateScroller(){$("#scroller").css("position","relative")}function edit(a){activeProdId=a;ShowDialog("/Order/EditProduct.aspx?prodId="+a+"&basket="+BasketGuid,"Modify "+$("#proddisplay"+a+" .product").text(),880,600,{"Save Product":function(){SaveEditCustomize()},Cancel:function(){CloseDialog()}});$(".InlineCustomize").remove()}function customize(b,a){activeProdId=b;$(".InlineCustomize").remove();$.get("/Order/Customize.aspx?prodId="+b+"&mode=inline",function(c){$("#"+a).append("<div class='InlineCustomize'>"+c+"</div>")})}function validateCustomize(){var b=$("#frmCustomize #qty").val();if(b!=parseInt(b)||b<1||b>99){$("#custError").text("Please enter a valid quantity for this product").attr("className","MissingField");return"error"}$("#frmCustomize div").removeClass("MissingField");$("#frmCustomize .OptionGroup:has(:radio):not(:has(:checked))").each(function(){$("#og_"+$(this).find("input:first").attr("name")).addClass("MissingField")});$("#frmCustomize .LimitedOptions").each(function(){var c=this.id.split("_");count=$("#og_"+c[1]+" :checkbox:checked").length;if(count<c[2]||count>c[3]){$(this).addClass("MissingField")}});if($("#frmCustomize .MissingField").length>0){$("#custError").text("Please review all options with red headings and complete.").attr("className","MissingField");OLO.Utils.ScrollTo($("#custError").offset().top-5,true);return"error"}else{var a=a||[];$("#frmCustomize :checkbox:checked").each(function(){a.push(this.id.substring(4))});$("#frmCustomize :radio:checked").each(function(){a.push(this.value.substring(4))});return a}}function GetCustomFields(){var b=new Array();var c=new Array();var a=false;$("#frmCustomize input:text").each(function(){if(this.id.indexOf("cf_")===0){if($(this).hasClass("required")&&this.value.length==0){alert('Please enter "'+$("#frmCustomize label[for='"+this.id+"']").text()+'"');a=true}if(this.value.length>0){var d=this.id.split("_");b.push(d[1]);c.push(escape(this.value))}}});if(a){return"error"}else{return{ids:b,text:c}}}function SaveCustomize(b){var c=validateCustomize();var a=GetCustomFields();if(c!="error"&&a!="error"){$.post("/ajax/AddBasketProduct.aspx?"+(BasketGuid!=""?"basket="+BasketGuid:"vendor="+VendorId),{vp:activeProdId,instructions:$("#instructions").val(),qty:$("#frmCustomize #qty").val(),"choice[]":c,"cfId[]":a.ids,"cfText[]":a.text},function(d){if(ajaxOk(d)){if(basketProductCount==0&&BasketGuid==""){location.href="Order.aspx?basket="+$(d).find("BasketGuid").text()}else{basketProductCount++;UpdateBasketTotals(d);$("#BasketProducts").html(basketHtml(d))}}});if(b!=null){b()}else{CloseDialog()}}}function SaveInlineCustomize(){SaveCustomize(CloseInlineCustomize)}function CloseInlineCustomize(){$(".InlineCustomize").remove()}function SaveEditCustomize(){var b=validateCustomize();var a=GetCustomFields();if(b!="error"&&a!="error"){$.post("/ajax/UpdateBasketProduct.aspx?basket="+BasketGuid,{bp:activeProdId,instructions:$("#instructions").val(),qty:$("#frmCustomize #qty").val(),"choice[]":b,"cfId[]":a.ids,"cfText[]":a.text},function(c){if(ajaxOk(c)){UpdateBasketTotals(c);$("#BasketProducts").html(basketHtml(c))}});CloseDialog()}}function del(a){activeProdId=a;if(window.confirm("Are you sure you wish to remove this product?")){$.post("/ajax/DeleteBasketProduct.aspx?basket="+BasketGuid,{bp:a},function(c){if(ajaxOk(c)){var b=$("#proddisplay"+activeProdId);if(b.hasClass("reward")){window.location=window.location}else{basketProductCount--;UpdateBasketTotals(c);b.slideUp("fast",function(){$(this).remove()})}}})}}function ShowDeliveryOptions(b,c){var d=$("#deliveryoptions");if(b=="delivery"){isDelivery="true";d.css("display","block");var a=$("#"+selAddressId).val();if(a==-1){a=0}$.post("/ajax/setDeliveryMode.aspx?basket="+BasketGuid,{mode:"Delivery",AddressId:a},function(e){if(!ajaxOk(e)){$("#deliveryoptions").css("display","none");$("#"+radPickupClientId).attr("checked",true)}else{UpdateBasketTotals(e);var f=$(e).find("ContactNumber");if(f.length>0){$("#txtContactNumber").val(f.text())}}})}else{isDelivery="false";d.css("display","none");$.post("/ajax/setDeliveryMode.aspx?basket="+BasketGuid,{mode:"Pickup"},function(e){if(ajaxOk(e)){UpdateBasketTotals(e);$("#txtContactNumber").val(userContactNumber)}else{$("#"+radPickupClientId).attr("checked",false)}})}}function ShowTimeOptions(a){var b=$("#timeoptions");if(a=="later"){b.css("display","block")}else{b.css("display","none");$.post("/ajax/updateBasketWantedTime.aspx?basket="+BasketGuid,{type:"Now"},function(c){if(!ajaxOk(c)){$("#timeoptions").css("display","block");$("#"+WantedLaterOptionId).attr("checked",true)}else{UpdateBasketTotals(c)}})}}function ChangeAdvanceTime(){var b=$("#DatePicker").val();var a=$("#selTimeWanted :selected").val();if(a==""){alert("Please select a valid time");return}$.post("/ajax/updateBasketWantedTime.aspx?basket="+BasketGuid,{type:"Later",year:b.substring(6,10),month:b.substring(0,2),day:b.substring(3,5),hour:a.substring(0,2),min:a.substring(3,5)},function(c){if(ajaxOk(c)){self.location=self.location}else{$("#selTimeWanted").val(oldTimeWanted);$("#DatePicker").val(oldDateWanted)}})}function ValidateOrderDate(){var a=$("#DatePicker").val();$.post("/ajax/validateOrderDate.aspx?basket="+BasketGuid,{year:a.substring(6,10),month:a.substring(0,2),day:a.substring(3,5)},function(b){if(!ajaxOk(b)){$("#DatePicker").val(oldDateWanted)}})}function updateTip(){var a=$("#selTip :selected").val();$.post("/ajax/updateBasketTip.aspx?basket="+BasketGuid,{Tip:a},function(b){if(ajaxOk(b)){UpdateBasketTotals(b)}})}function Checkout(){if(basketProductCount==0){alert("Your basket is empty, please select at least one product.");return}if(Upsell=="True"){$.get("/ajax/CheckUpselling.aspx?basket="+BasketGuid,function(a){if(a!=null&&a!=""&&a!="None"){$("#PopupDialog").html(a);$("#PopupDialog").dialog({title:"May We Suggest",width:560,height:600,modal:true,position:"center",close:function(b,c){CloseDialog();GoToCheckout()}})}else{GoToCheckout()}})}else{GoToCheckout()}}function GoToCheckout(){self.location=CheckoutUrl}function ProcessNewAddress(b){if(ajaxOk(b)){CloseDialog();newlyAddedAddressId=$(b).find("DeliveryAddressId").text();var a=document.getElementById(selAddressId);a.options[a.length]=new Option(AddressName,""+newlyAddedAddressId);$.post("/ajax/setDeliveryMode.aspx?basket="+BasketGuid,{mode:"Delivery",AddressId:newlyAddedAddressId},function(c){isDelivery="true";if(!ajaxOk(c)){$("#"+selAddressId).val(lastDeliveryAddressId)}else{$("#"+selAddressId).val(newlyAddedAddressId);$("#txtContactNumber").val($(c).find("ContactNumber").text())}})}}function ChangedDeliveryAddress(b){selAddressId=b;var a=$("#"+b).val();if(a=="0"){CreateNewAddress()}else{isDelivery="true";if(a!="-1"){$.post("/ajax/setDeliveryMode.aspx?basket="+BasketGuid,{mode:"Delivery",AddressId:a},function(c){if(!ajaxOk(c)){$("#"+selAddressId).val(lastDeliveryAddressId)}else{lastDeliveryAddressId=$("#"+selAddressId).val();$("#txtContactNumber").val($(c).find("ContactNumber").text())}})}}}function showTimes(b){var a="/ajax/listTimeSlots.ashx?basket="+BasketGuid+"&year="+b.substring(6,10)+"&month="+b.substring(0,2)+"&day="+b.substring(3,5);$("#selTimeWanted").load(a)}function LoadLoyaltyBoxes(a){$("#LoyaltyScheme"+a).html("Loading...");$.post("/ajax/CheckForRewards.aspx?basket="+BasketGuid,{scheme:a},function(b){$("#LoyaltyScheme"+a).html(b)},"html")}function linkLoyaltyCard(a){var d=$("#SchemeMemberNo"+a).val();var c=$("#LoyaltyScheme"+a);var b=c.html();c.html("Checking Membership...");$.post("/ajax/linkLoyaltyCard.aspx",{scheme:a,member:d},function(e){if(ajaxOk(e)){LoadLoyaltyBoxes(a,d)}else{c.html(b)}})}function removeLoyaltyCard(a){if(confirm("Are you sure you want to remove this loyalty card?")){$.post("/ajax/removeLoyaltyCard.aspx",{scheme:a},function(b){if(ajaxOk(b)){window.location=window.location}})}}function ApplyReward(a,b){$("#LoyaltyScheme"+a).html("Applying Reward...");$.post("/ajax/applyReward.aspx?basket="+BasketGuid,{scheme:a,ref:b},function(c){if(ajaxOk(c)){window.location=window.location}})}function removeRewards(){$.post("/ajax/removeRewards.aspx?basket="+BasketGuid,function(a){if(ajaxOk(a)){window.location=window.location}})}function nest(c,a,b){$.get("/ajax/listNestedOptions.aspx?choice="+a,function(d){$("#nest_"+b).remove();$(".OptionContainer:has(#og_"+b+")").after(d).slideDown("fast")})}function choiceFields(c,a,b){$.get("/ajax/listChoiceFields.aspx?choice="+a,function(d){$("#optionfields_"+b).remove();$(".OptionContainer:has(#og_"+b+")").after(d).slideDown("fast")})}function removeChoiceFields(a){$("#optionfields_"+a).slideUp("fast");$("#optionfields_"+a).remove()}function unnest(a){$("#nest_"+a).slideUp("fast");$("#nest_"+a).remove()}function multinest(a,d){var c=$("#multinest_"+a);var b=$("#chk_"+a);if(b.attr("checked")){$.get("/ajax/listNestedOptions.aspx?type=multi&choice="+a,function(e){if(b.attr("checked")&&c.length==0){$(".OptionContainer:has(#og_"+d+")").after(e).slideDown("fast")}})}else{c.slideUp("fast").remove()}}function GroupOrder(){$("#PopupDialog").load("/Invite/StartGroupOrder.aspx?vendor="+VendorId+"&basket="+BasketGuid,function(){$("#PopupDialog").dialog({title:"Group Ordering",width:580,height:350,modal:true,resizable:false,draggable:false,buttons:{Done:CloseGroupOrder},close:CloseGroupOrder})})}function CloseGroupOrder(){BasketGuid=BasketGuid||$("#PopupDialog #GroupOrderBasketGuid").val();CloseDialog();if(!IsGroupOrder){location.href="Order.aspx?basket="+BasketGuid}}function EmailGroupOrder(){ShowDialog("/Invite/SendGroupInvite.aspx?basket="+BasketGuid,"Invite Guests",600,350,{"Send Invites":function(){SendInvites()},Cancel:CloseDialog})}function showProdImage(a){prodId=a.target.id.substring(4,a.target.id.length);if(prodImgTimeout!=null){clearTimeout(prodImgTimeout)}if(prodId==activeProdImage){return}else{$("#Tooltip").hide()}activeProdImage=prodId;$("#Tooltip").load("/ajax/ProductDetails.aspx?prod="+activeProdImage,function(){$("#Tooltip").css("left",a.pageX+8);$("#Tooltip").css("top",a.pageY-$("#Tooltip").height()/2);$("#Tooltip").fadeIn("fast")})}function hideProdImage(){prodImgTimeout=setTimeout(function(){$("#Tooltip").fadeOut("fast");activeProdImage=0;prodImgTimeout=null},500)}function validatePos(){$.post("/ajax/ValidatePos.aspx?basket="+BasketGuid,function(a){if(ajaxOk(a)){$("#lblSalesTax").text("Tax");$("#lblTotal").text("Total");$("#bSalesTax").text($(a).find("tax").text());$("#bTotal").text($(a).find("total").text())}})}function setCreditCardBilling(a,b){if($("#rdo_"+a).attr("value")==""){window.location=b}else{$("#PaytronixDetails").slideUp("fast");$(".cfqual2").slideUp("fast")}}function setPassThroughBilling(){$("#PaytronixDetails").slideUp("fast");$(".cfqual2").slideDown("fast")}function setPaytronixBilling(a){if($("#removelink_"+a).text()==""){$("#PaytronixDetails").slideDown("fast")}$(".cfqual2").slideUp("fast")}function linkPaytronix(a){var b=$("#PaytronixCardNumber").val();var c=b.substring(b.length-4,b.length);$.post("/ajax/linkPaytronix.aspx",{scheme:a,card:b},function(d){if(ajaxOk(d)){$("#PaytronixDetails").slideUp("fast");$("#PaytronixCardNumber").val("");paintAccount(d)}})}function paintAccount(a){var b=$(a).find("BillingAccount");scheme=b.attr("scheme");$("#memberdetails_"+scheme).text(b.attr("description"));$("#balance_"+scheme).text(" (balance: $"+b.attr("balance")+")");if(b.attr("canremove")=="True"){$("#removelink_"+scheme).html('&nbsp;(<a href="javascript:RemoveBillingAccount('+b.attr("id")+","+scheme+')">Remove</a>)')}$("#rdo_"+scheme).attr("value",b.attr("id"))}function validateAccountBalance(a){if($("#bTotal").length==0&&parseFloat(balance)<parseFloat($("#bTotal").text())){$("#lbl_"+a).text("There is not enough money on your card to pay for the order.");$("#rdo_"+a).attr("disabled",true).attr("checked",false)}}function CheckAccountBalance(b,a){$.post("/ajax/CheckAccountBalance.aspx",{member:b},function(c){if(ajaxOk(c)){paintAccount(c)}})}function RemoveBillingAccount(b,a){if(confirm("Are you sure you want to remove this account?")){$.post("/ajax/RemoveBillingAccount.aspx",{member:b},function(c){if(ajaxOk(c)){$("#memberdetails_"+a).text($(c).find("Scheme").text());$("#balance_"+a).text("");$("#removelink_"+a).html("");$("#rdo_"+a).attr("value","").attr("checked",false)}})}};
