$(function () {
    $.sifr({path:'/jQuery/jquery.sifr/fonts'});
    $('h1.sIFR').sifr({font:'BarmenoRegularBold'});
    $('h2.sIFR').sifr({font:'BarmenoRegularBold'});
	$('h3.sIFR').sifr({font:'BarmenoRegularBold'});
    $('#sideContainer #shoppingBasket h3.totalDue span.title.sIFR').sifr({font:'BarmenoRegularBold'});
});

function number_format( number, decimals, dec_point, thousands_sep ) {
    var n = number, c = isNaN(decimals = Math.abs(decimals)) ? 2 : decimals;
    var d = dec_point == undefined ? "." : dec_point;
    var t = thousands_sep == undefined ? "," : thousands_sep, s = n < 0 ? "-" : "";
    var i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0;

    return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");
}


var oCountyList;
var submitButton;
$(document).ready(function() {

    var fldOtherStores = $("#fldOtherStores")
    var oTownStoreList = $("#fldOtherStores select");
    $("#fldOtherStores").removeClass("allStores");
    $("#fldOtherStores input[@type='image']").hide();
    var entPCode = $(".enterPostcode input[@type='text']");
    var btnGo = $(".enterPostcode input[@type='image']");
    var btnSelectDeliveryStore = $(".selectDeliveryStore input[@type='image']");
    var oDeliveryStoreList = $(".selectDeliveryStore select");
    btnSelectDeliveryStore.hide();
    oDeliveryStoreList.change(function() {
        //Hack for ffx 1&2 as it requires the button to be visible when clicked
        btnSelectDeliveryStore.css({ 'width': '1px', 'height': '1px' })
        btnSelectDeliveryStore.show();
        btnSelectDeliveryStore.click();
    }
        );
    entPCode.focus(function() {
        if (entPCode.val() == "Enter postcode") entPCode.val("")
        entPCode.removeClass("wrongPostcode");
    });
    entPCode.blur(function() {
        if (entPCode.val() == "") entPCode.val("Enter postcode")
    });
    entPCode.keypress(function(e) {
        if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {
            btnGo.click();
            return false;
        } else {
            return true;
        }
    });
    btnGo.click(function() {
        if (entPCode.val() == "Enter postcode" || entPCode.val() == "") {
            entPCode.val("Enter postcode");
            entPCode.addClass("wrongPostcode");
            return false;
        }
    });

    if (fldOtherStores.length > 0) {
        oCountyList = $(document.createElement('select'));
        fldOtherStores.prepend(oCountyList);
        oCountyList.ready(function() {
            $.getJSON("json/getStore.aspx?listCounty=true",
                function(data, status) {
                    oCountyList[0].options[oCountyList[0].options.length] = new Option("Select county", "");
                    for (i = 0; i < data.length; i++) {
                        oCountyList[0].options[oCountyList[0].options.length] = new Option(data[i], data[i]);
                    }
                }
               );
        }
        )

        oCountyList.change(function() {
            $.getJSON("json/getStore.aspx?county=" + oCountyList.val(),
                function(data, status) {
                    oTownStoreList[0].options.length = 0;
                    oTownStoreList[0].options[oTownStoreList[0].options.length] = new Option("Select town", "");
                    if (data.length == 1) {
                        var oTxtPcode = $(".enterPostcode input[@type='text']");
                        var sPostCode = "";
                        if (oTxtPcode.val() != "") sPostCode = "&setPostCode=" + oTxtPcode.val();
                        window.location.href = "?id_collection_store=" + data[0].id_Franchise + sPostCode + "&" + window.location.search.replace('?', '').replace('delivery=true', '');
                    }
                    for (i = 0; i < data.length; i++) {
                        oTownStoreList[0].options[oTownStoreList[0].options.length] = new Option(data[i].townName, data[i].id_Franchise);
                    }
                }
               );
        });
    }
    oTownStoreList.change(function() {        
        var oTxtPcode = $(".enterPostcode input[@type='text']");
        var sPostCode = "";
        if (oTxtPcode.val() != "") sPostCode = "&setPostCode=" + oTxtPcode.val();
        window.location.href = "?id_collection_store=" + oTownStoreList.val() + sPostCode + "&" + window.location.search.replace('?', '').replace('delivery=true', '');
    });

});


$(document).ready(function()
{

    // PNG FIX
    $(document).pngFix({ blankgif: '/blank.gif' });

    if (window.location.search.indexOf("changeStore") >= 0)
    {
        $(".stackedLabels .button").hide()
        $(".stackedLabels select").change(function()
        {
            //Hack for ffx 1&2 as it requires the button to be visible when clicked
            $(".stackedLabels .button").css({ 'width': '1px', 'height': '1px' })
            $(".stackedLabels .button").show();
            $(".stackedLabels .button").click();
        }
            );
    }
    $(".autoShow").show();

    var idxActive = 0;
    if (window.location.hash == "#sidesContainer") idxActive = 1;
    else if (window.location.hash == "#dessertsContainer") idxActive = 2;
    else if (window.location.hash == "#drinksContainer") idxActive = 3;
    //debugger;

    // Accordion
    if ($("#accordion").accordion) $("#accordion").accordion({
        autoHeight: false,
        active: idxActive,
        header: 'h2'
    }).bind("accordionchange", function(event, ui)
    {
        $(ui.newHeader[0]).addClass('open');
        $(ui.oldHeader[0]).removeClass('open');
        $.scrollTo($(ui.newHeader[0]), 500, { offset: { top: -10} });
    });

    // Cluetips/Tooltips
    if ($('a.tips').cluetip) $('a.tips').cluetip({
        splitTitle: '|',
        showTitle: false,
        dropShadow: false,
        positionBy: 'mouse',
        cluetipClass: 'rounded',
        width: '119px'
    });


    //$(".basketItemQuantity").numeric();

    $(".orderItemPrice input[@type='submit']").each(function(i)
    {
        var item = $(this);
        item.hide();
    });

    $(".orderItemPrice a").each(function(i)
    {
        var item = $(this);
        item.click(function()
        {
            item.parent().find("input[@type='submit']").each(function()
            {
                //var btnItem = $(this);
                //btnItem.show();
                this.click();

            });
        });
        item.removeClass("hide");
    });

    var showFullChecked = $("#showFullOrderDetails").is(":checked")
    $("#shoppingBasket .orderItemDetails dd").each(function(i)
    {
        var item = $(this);
        if (showFullChecked)
            item.show();
        else
            item.hide();
    });

    $(".confirmDeletion").each(function(i)
    {
        var item = $(this);
    });

    $("#showFullOrderDetails").click(function()
    {
        if ($(this).is(":checked"))
        {
            //show the hidden areas
            $("#shoppingBasket .orderItemDetails dd").each(function(i)
            {
                var dd = $(this);
                dd.slideDown();
            });
        }
        else
        {
            $("#shoppingBasket .orderItemDetails dd").each(function(i)
            {
                var dd = $(this);
                dd.slideUp();
            });
        }

    });

    $(".checkOrderShowHide").each(function()
    {
        var thisCheck = $(this);
        //thisCheck.parent().parent().parent().parent().find(".orderItemDetails dd").hide();

        thisCheck.parent().parent().parent().parent().find(".orderItem dd").each(function()
        {
            var dd = $(this);
            if (thisCheck.is(":checked"))
            {
                dd.show();
            }
            else
            {
                dd.hide();
            }
        });

        thisCheck.click(function()
        {
            thisCheck.parent().parent().parent().parent().find(".orderItem dd").each(function()
            {
                var dd = $(this);
                if (thisCheck.is(":checked"))
                {
                    dd.slideDown();
                }
                else
                {
                    dd.slideUp();
                }
            });

        });


    })

    $("body").ajaxError(function(event, XMLHttpRequest, ajaxOptions, thrownError)
    {
        $("body").removeClass("curWait");
        if (submitButton)
        {
            submitButton.attr("disabled", "false");
            if (submitButton.length > 0) submitButton[0].disabled = false;
        }

    });



});



    function hideConfirm(idConfirm)
    {
        var dg=$("#"+idConfirm);
        var showLink = dg.next().find("dt span");
        dg.slideUp();
        showLink.show();
        return false;
    }

    function showConfirm(idConfirm)
    {
        var dg=$("#"+idConfirm);
        var showLink = dg.next().find("dt span");
        showLink.hide();
        dg.slideDown();
        return false;
    }

    function hideDealConfirm(idConfirm)
    {
        var dg=$("#"+idConfirm);
        var showLink = dg.next().find(".deleteDeal");
        showLink.show();
        dg.slideUp();
        return false;
    }

    function showDealConfirm(idConfirm)
    {
        var dg=$("#"+idConfirm);
        var showLink = dg.next().find(".deleteDeal");
        showLink.hide();
        dg.slideDown();
        return false;
    }

    function hideConfirmDelItem(idConfirm)
    {
        var dg=$("#"+idConfirm);
        var showLink = dg.prev().find(".delItem");
        showLink.show();
        dg.slideUp();
        return false;
    }

    function showConfirmDelItem(idConfirm)
    {
        var dg=$("#"+idConfirm);
        var showLink = dg.prev().find(".delItem");
        showLink.hide();
        dg.slideDown();
        return false;
    }




  function chkShowHideToppings(chkShowHide,doSlide)
  {
        if(!chkShowHide.is(":checked"))
            {
                //parent.parent.parent is checkbox->label->div->div
                if(doSlide)
                    chkShowHide.parent().parent().parent().find(".customizingOptions").slideUp();
                else
                    chkShowHide.parent().parent().parent().find(".customizingOptions").hide();
            }
            else
            {
                if(doSlide)
                    chkShowHide.parent().parent().parent().find(".customizingOptions").slideDown();
                else
                    chkShowHide.parent().parent().parent().find(".customizingOptions").show();
            }
  }


    function doAjaxSubmit(idSubmitButton,sBaseAction){
        var params = {};        
        var mainForm = $("form");        
        //Only send the .contentPanel form items, so that we don't accidentily submit another form element again
         mainForm
        .find(".contentPanel input[@checked], .contentPanel input[@type='text'], .contentPanel input[@type='hidden'],.contentPanel .contentPanel input[@type='hidden' && @name!='__VIEWSTATE'],.contentPanel input[@type='password'],.contentPanel option[@selected],.contentPanel textarea")
        .filter(":enabled")
        .each(function() {
            params[ this.name || this.id || this.parentNode.name || this.parentNode.id ] = this.value;
        });
        submitButton = $("#" + idSubmitButton);
        submitButton.attr("disabled", "true")
        
        params[idSubmitButton + ".x"]="10";//impersonate image button
        params[idSubmitButton + ".y"]="10";//impersonate image button
        $("body").addClass("curWait");
        var sAction ;
        if(sBaseAction)
            sAction=sBaseAction;
        else
            mainForm.attr("action");

        if (sAction.indexOf("?")>0)
            sAction += "&call=ajax"
        else
            sAction += "?call=ajax"

        $.post(sAction, params, function(json)
        {
            $("body").removeClass("curWait");
            eval("retObj=" + json);

            if (retObj.IsValid)
            {
                window.location = retObj.RedirectTo;
            }
            else
            {                
                submitButton.attr("disabled", "false")
                //above jquery doesn't work!
                if (submitButton.length > 0) submitButton[0].disabled = false;
                //That works.

                $(".ajaxError").show();
                $(".ajaxError p").html(retObj.ErrorMessage)
            }

        });
        return false;
    }

  var sizesInCrust=new Array();//The pizza overlay will fill this in;


  $(document).ready(function() {
      $('.EditItem').each(function() {
          $(this).click(function() {
              var link = $(this);
              var sUrl;
              if (link.attr("href").indexOf("noPcode") >= 0)
                  return true;
              if (link.attr("href").indexOf("/pizza-menu/") >= 0)
                  sUrl = $(this).attr("href").replace("/pizza-menu/", "/pizzaDetailOverlay.aspx?ids_pizza=");
              else if (link.attr("href").indexOf("/option/") >= 0)
                  sUrl = "/sideOverlay.aspx?ids_SideOrderOption=" + $(this).attr("href").substr(link.attr("href").indexOf("/option/") + 8);
              else if (link.attr("href").indexOf("sideDetail.aspx") >= 0)
                  sUrl = $(this).attr("href").replace("sideDetail.aspx", "/sideOverlay.aspx");
              else if (link.attr("href").indexOf("/pizza-side-orders/") >= 0)
                  sUrl = $(this).attr("href").replace("/pizza-side-orders/", "/sideOverlay.aspx?ids_SideOrder=");
              else if (link.attr("href").indexOf("/pizza-desserts/") >= 0)
                  sUrl = $(this).attr("href").replace("/pizza-desserts/", "/sideOverlay.aspx?ids_SideOrder=");
              else if (link.attr("href").indexOf("/pizza-drinks/") >= 0)
                  sUrl = $(this).attr("href").replace("/pizza-drinks/", "/sideOverlay.aspx?ids_SideOrder=");
              else if (link.attr("href").indexOf("/pizza-deals/") >= 0)
                  sUrl = $(this).attr("href").replace("/pizza-deals/", "/dealOverlay.aspx?ids_deal=");
              else if (link.attr("href").indexOf("pizzaDetail.aspx") >= 0)
                  sUrl = $(this).attr("href").replace("pizzaDetail.aspx", "/pizzaDetailOverlay.aspx");
              else if (link.attr("href").indexOf("dealDetail.aspx") >= 0)
                  sUrl = $(this).attr("href").replace("dealDetail.aspx", "/dealOverlay.aspx");
              
              var ms = new Date().getTime().toString();
              var seed
              if (sUrl.indexOf("?") >= 0)
                  seed = "&seed=" + ms;
              else
                  seed = "?seed=" + ms;

              $.nyroModalManual({
                  url: sUrl + seed
              });
              return false;

          });
      });


  });