
/* Comment Generated by Combres - Resource '~/scripts/trackMe.js' (Mode: Static) */
/*
trackMe() function, function for setting the google tracking data.
*/
function trackMe(trackMeData) {
    if (typeof (_gat) == 'object') {
        if (_gat == undefined && _gat._getTracker == undefined) {
            try {
                var pageTracker = _gat._getTracker("UA-9053868-1");
                pageTracker._trackPageview(trackMeData);


            } catch (err) {
                alert(err + track);
            }
        }
    }
};


/* Comment Generated by Combres - Resource '~/scripts/JScriptBokingTypeTab.js' (Mode: Static) */


function showCampaigns(CampaignCode) {
    getContent();
    $(".CampaingModal").dialog('open');
}

function CampaignChanged(CampaignCode) {
    urlData.CampainCode = CampaignCode;
    urlData.Message = 'CampaignChanged';
    getContent();
}

function CampaignChangedAndDate(CampaignCode) {
    urlData.CampainCode = CampaignCode;
    urlData.Message = 'CampaignChanged';
    getContent();
}


function AntalChanged(antal) {
    urlData.Seats = antal;
    urlData.Message = 'AntalChanged';
    getContent();
}

function AntalBarnChanged(antal) {
    urlData.WhereOfKids = antal;
    urlData.Message = 'WhereOfKidsChanged';
    getContent();
}

function ChoosenTimeChanged(minutes) {
    urlData.ChoosenSeatingTime = minutes;
    urlData.Message = 'ChoosenSeatingTimeChanged';
    getContent();
}


function dateClicked(date) {
    urlData.Message = 'DateClicked';
    var dateSplits = date.split("-");
    if (dateSplits.length == 3) {

        urlData.Year = dateSplits[0];
        urlData.Month = dateSplits[1];
        urlData.Day = dateSplits[2];

        getContent();
        return;
    }
    dateSplits = date.split(".");
    if (dateSplits.length == 3) {
        urlData.Year = dateSplits[2];
        urlData.Month = dateSplits[1];
        urlData.Day = dateSplits[0];
        getContent();
        return;
    }
    dateSplits = date.split("/");
    if (dateSplits.length == 3) {
        urlData.Year = dateSplits[2];
        urlData.Month = dateSplits[0];
        urlData.Day = dateSplits[1];
        getContent();
        return;
    }


}


function getContentTab(bookingTypeId) {
    $('#BookingTypes').tabs('select', "#tabs-" + bookingTypeId)
    urlData.TypeId = bookingTypeId;
    urlData.Message = 'GetTab';
    getContent();
}


function getContentLong(theUrl) {
    var targetDiv = "#Tabs";
    $(targetDiv).customFadeTo("fast", 0.50);
    $.ajax({
        type: "GET",
        url: theUrl, 
        data: "",
        dataType: "html",
        success: function (msg) {
            $(targetDiv).html(msg);
            $(targetDiv).customFadeTo("fast", 1);

            trackMe(trackMeData);
        },
        error: function (xhr) {

            ErrorRedirect(xhr.status);
        }
    });
    
}

function getContent() {
    
    
    if (urlData.AppRoot.length == 1) { urlData.AppRoot = ''; }
    var theUrl = urlData.AppRoot + "/" + urlData.Controller + "/" + urlData.Action + "/" + urlData.Culture + "/" + urlData.RestaurantId + "/" + urlData.AreaId + "/" + urlData.TypeId + "/" + urlData.Year + "/" + urlData.Month + "/" + urlData.Day + "/" + urlData.Seats + "/" + urlData.WhereOfKids + "/" + urlData.CampainCode + "/" + urlData.ChoosenSeatingTime + "/" + urlData.VisitorName + "/" + urlData.Appearance;
  
    var targetDiv = '';
    if (urlData.Action == "AllTimesOnRestaurantData") {
        targetDiv = "#Tabs";
    }
    else if (urlData.Action == "GroupedOneAreaData") {
        targetDiv = "#Tabs";
    }
    else if (urlData.Action == "GroupedAllAreaData") {
        targetDiv = "#Tabs";
    }
    else if (urlData.Action == "WithSelectTimeData") {
        targetDiv = "#Tabs";
    }
    else if (urlData.Action == "WithSelectTimeAllAreasGroupedByTypeNameData") {
        targetDiv = "#Tabs";
    }
    else if (urlData.Action == "Slots") {
        targetDiv = "#Tabs";
    }
    else if (urlData.Action == "ShowSlots") {
        targetDiv = "#Tabs";
    }
    else {
        targetDiv = "#tabs-" + urlData.TypeId;

    }
   
  

    $(targetDiv).customFadeTo("fast", 0.50);
    $.ajax({
        type: "GET",
        url: theUrl,
        data: "",
        dataType: "html",
        success: function (msg) {
            //  alert(msg);
            $(targetDiv).html(msg);
            $(targetDiv).customFadeTo("fast", 1);

            trackMe(trackMeData);
        },
        error: function (xhr) {
            //   alert("eoeoeoeoe");
            ErrorRedirect(xhr.status);
        }
    });
}

function ChangeLanguage(newlanguage)
{
urlData.Culture = newlanguage;
getContent();
}

function ErrorRedirect(errorCode) {
    try {
       // alert(errorCode);
        $.unblockUI();
        location = urlData.ErrorAction + '?ErrorCodeByConfig=' + errorCode;
    } catch (err) { alert(err) }
}


// Fix för IE som kan bli väldigt pixlig vid fadning!
(function ($) {
    $.fn.customFadeIn = function (speed, callback) {
        $(this).fadeIn(speed, function () {
            if (!$.support.opacity)
                $(this).get(0).style.removeAttribute('filter');
            if (callback != undefined)
                callback();
        });
    };
    $.fn.customFadeOut = function (speed, callback) {
        $(this).fadeOut(speed, function () {
            if (!$.support.opacity)
                $(this).get(0).style.removeAttribute('filter');
            if (callback != undefined)
                callback();
        });
    };
    $.fn.customFadeTo = function (speed, to, callback) {
        return this.animate({ opacity: to }, speed, function () {
            if (to == 1 && jQuery.browser.msie)
                this.style.removeAttribute('filter');
            if (jQuery.isFunction(callback))
                callback();
        });
    };
})(jQuery);
// Slut fix för IE


function SetupKalender() {
    $.datepicker.regional['sv-se'] = {
        closeText: 'Stäng',
        prevText: '&laquo;Förra',
        nextText: 'Nästa&raquo;',
        currentText: 'Idag',
        monthNames: ['Januari', 'Februari', 'Mars', 'April', 'Maj', 'Juni', 'Juli', 'Augusti', 'September', 'Oktober', 'November', 'December'],
        monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'Maj', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dec'],
        dayNamesShort: ['Sön', 'Mån', 'Tis', 'Ons', 'Tor', 'Fre', 'Lör'],
        dayNames: ['Söndag', 'Måndag', 'Tisdag', 'Onsdag', 'Torsdag', 'Fredag', 'Lördag'],
        dayNamesMin: ['Sö', 'Må', 'Ti', 'On', 'To', 'Fr', 'Lö'],
        weekHeader: 'Ve',
        dateFormat: 'yy-mm-dd',
        firstDay: 1,
        isRTL: false,
        minDate: 0,
        showMonthAfterYear: false,
        yearSuffix: '',
        showWeek: true,
        beforeShowDay: noWeekendsOrHolidays,
        autoSize: true,
        onSelect: function (theDate) { dateSelected(theDate) }

    };
    $.datepicker.regional['nb-no'] = {
        closeText: 'Stäng',
        prevText: '&laquo;Förra',
        nextText: 'Nästa&raquo;',
        currentText: 'Idag',
        monthNames: ['Januar', 'Februar', 'Mars', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Desember'],
        monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Des'],
        dayNamesShort: ['Søn', 'Man', 'Tis', 'Ons', 'Tor', 'Fre', 'Lør'],
        dayNames: ['Søndag', 'Mandag', 'Tirsdag', 'Onsdag', 'Torsdag', 'Fredag', 'Lørdag'],
        dayNamesMin: ['Sø', 'Ma', 'Ti', 'On', 'To', 'Fr', 'Lø'],
        weekHeader: 'Ve',
        dateFormat: 'yy-mm-dd',
        firstDay: 1,
        isRTL: false,
        minDate: 0,
        showMonthAfterYear: false,
        yearSuffix: '',
        showWeek: true,
        autoSize: true,
        onSelect: function (theDate) { dateSelected(theDate) }
    };
    $.datepicker.regional['en-us'] = {
        closeText: 'Close',
        prevText: '&laquo;Prev',
        nextText: 'Next&raquo;',
        currentText: 'Today',
        monthNames: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
        monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
        dayNamesShort: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],
        dayNames: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
        dayNamesMin: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],
        weekHeader: 'We',
        dateFormat: 'yy-mm-dd',
        firstDay: 1,
        isRTL: false,
        minDate: 0,
        showMonthAfterYear: false,
        yearSuffix: '',
        showWeek: true,
        autoSize: true,
        onSelect: function (theDate) { dateSelected(theDate) }


    };
}


function blockedDays(date) {
    if (!(typeof (natDays) == "undefined") )
    for (i = 0; i < natDays.length; i++) {
        if (date.getMonth() == natDays[i][0] - 1 && date.getDate() == natDays[i][1]) { return [false, natDays[i][2] + '_day']; }
    }
    return [true, ''];
}


function isdefined(variable) {
    return (typeof (variable) == "undefined") ? false : true;
}

function noWeekendsOrHolidays(date) {
    return blockedDays(date);
}

function dateSelected(theDate) {
    dateClicked(theDate, 'BookingCalendarNoAreasContent')

}





