﻿var initialiseBooking = function () {
    thisBooking.DisableNextButton();
    thisBooking.DisablePrevButton();
    thisBooking.TabName = "#tabs";
    $(".ui-dialog-buttonpane button:contains('Next')").click(function () {
        thisBooking.NextTab($("#tabs"));
    });
    $(".ui-dialog-buttonpane button:contains('Prev')").click(function () {
        thisBooking.PrevTab($("#tabs"));
    });
    showThrobber();
    $("#tabs").tabs({
        selected: 0,
        spinner: '',
        load: function (e, ui) {
            hideThrobber();
            //thisBooking.UpdateSummary(ui);
            if (ui.index < thisBooking.TabIndexCustDetails) {
                $(".calenderControl", $(ui.panel)).bookingCalendar({
                    toggleThrobber: function () {
                        toggleThrobber();
                    },
                    startDateSelected: function (selectedDateString) {
                        thisBooking.StartDateSelected(selectedDateString);
                        thisBooking.UpdateSummary(ui);
                    },
                    endDateSelected: function (selectedDateString) {
                        thisBooking.EndDateSelected(selectedDateString);
                        thisBooking.UpdateSummary(ui);
                    },
                    fx: { opacity: 'toggle' }
                });
            }
            else if (ui.index >= thisBooking.TabIndexCustDetails) {
                thisBooking.TabChangeLoad(ui);
            };
        },
        select: function (e, ui) {
            var isValid
            if (thisBooking.PrevBtnClicked == false) {

                if (isAuthenticated && ui.index == 2) {
                    isValid = false;
                }
                else {
                    isValid = thisBooking.CheckTabChangeOk(parseInt(ui.index));
                    if (isValid) {
                        showThrobber();
                        thisBooking.TabChange(ui);
                    }
                }
            }
            else {
                if (isAuthenticated && ui.index == 2) {
                    $("#tabs").tabs("select", 1);
                    isValid = false;
                }
                else {
                    isValid = true;
                };
            }
            return isValid;
        }
    });
    $("#pbar").progressbar({ value: 0 });
    //Add must be true validator
    jQuery.validator.addMethod('shouldbetruemethod', function (value, element) {
        return $(element).is(':checked');
    }, '');
    jQuery.validator.unobtrusive.adapters.addBool('shouldbetrue', 'shouldbetruemethod');

};
var toggleThrobber = function () {
    $("#throbber").toggle();
};
var hideThrobber = function () {
    $("#throbber").hide();
};
var showThrobber = function () {
    $("#throbber").show();
};
var validateEmail = function(email) 
{ 
 var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ 
 return email.match(re) 
}


