function updateEngLinks() {
    var cCurLang = GetCurrrentLanguage();
    if (cCurLang != '') {
        $('a:not(a[href*="lang"])').each(function() {
            var cLink = $(this).attr('href');
            if (cLink && cLink.indexOf('aspx') >= 0) {
                if (cLink.indexOf('?') > 0) {
                    cLink += '&lang=' + cCurLang;
                } else {
                    cLink += '?lang=' + cCurLang;
                }
                $(this).attr('href', cLink);
            }
        });
    }
}

function GetCurrrentLanguage() {
    var cRes = '';
    var cCurLang = $.query.get("lang");
    
    if (cCurLang != '' && typeof (cCurLang) == 'string') {
        cRes = cCurLang;
    }
    return cRes;
}

function doPopup(href) {
    w = 600;
    h = 500;
    w = (w ? w : parseInt((screen.availWidth) / 2)) + 20
    h = (h ? h : parseInt((screen.availHeight) / 2)) + 30
    l = parseInt((screen.availWidth - w) / 2),
t = parseInt((screen.availHeight - h) / 2) - 10;
    p = window.open(href, "pop", 'resizable=yes,scrollbars=yes,location=no,menubar=no,status=no,toolbar=no,width=' + w + ',height=' + h + ',left=' + l + ',top=' + t);
    p.focus();
}
function ToggleMenu(cID, oAObj) {

    var oObj = $('#' + cID);
    var oLink = $('#' + oAObj.id);



    if (oObj.css('display') == 'none') {
        $('.arr_norm', oLink).removeClass('arr_norm').addClass('arr_act');
        // open slide
        oObj.slideDown(100);
        oAObj.className = 'sel';
        oObj.toggle();
    } else {
        $('.arr_act', oLink).removeClass('arr_act').addClass('arr_norm');
        oObj.slideUp(50);
        oAObj.className = '';
    }

    if ($('.catalog .sel').get().length > 0) {
        $('.catalog').addClass('catalogsel');
    } else {
        $('.catalog').removeClass('catalogsel');
    }


    //LINE


    var oParent = oLink.parent();

    $('.catsep', oParent).toggle();
}

function SetLanguage(cLang) {
    window.location.href = $.query.REMOVE("lang").set("lang", cLang);
}

function AddToFavorites() {
    window.external.AddFavorite(location.href, document.title);
}


var cCallbackDivID = '';
function CallBackSmallForm(cRes) {
    $('#' + cCallbackDivID).html(cRes).css('display', 'block');
}


function ToggleCalendar(cID) {
    $('#' + cID).DatePickerShow();
}


/* ROOM DETAILS */
function SetFullImg(cImg) {
    $('#topimage').attr('src', cImg);
}

/* START PAGE TABS */
function ShowTab(cID) {

    $('#tab01').css('display', (cID == 'tab01') ? 'block' : 'none');
    $('#tab02').css('display', (cID == 'tab02') ? 'block' : 'none');
    if (cID == 'tab01') {
        $('#link02').removeClass('sel');
        $('#link01').addClass('sel');
    } else {
        $('#link01').removeClass('sel');
        $('#link02').addClass('sel');
    }
}

/* FORM VALIDATION */
function IsValidForm() {

    // MUST BE DEFINED OUTSIDE
    //var aFields = ['smallfio', 'smallemail', 'smalltxt'];
    //var aMsgs = ['<%=vars.GetEtc(27)%>', '<%=vars.GetEtc(28)%>', '<%=vars.GetEtc(30)%>', '<%=vars.GetEtc(29)%>'];
    //
    
    var aErrors = [];
    var oRegFilter = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4}$/;
    var cOutput = '';

    for (var i in aFields) {
        var cVal = $('#' + aFields[i].id).val();

        if (cVal.length == 0) {
            aErrors.push(aFields[i].empty);
        } else if (aFields[i].id.indexOf('email') >= 0) {
            // regex val
            if (!oRegFilter.test(cVal)) {
                aErrors.push(aFields[i].validation);
            }
        }

        if (typeof (aFields[i].custom) == 'function') {
            var cErr = aFields[i].custom();
            if (cErr.length > 0) {
                aErrors.push(cErr);
            }  
        }
    }

    
    if (aErrors.length > 0 && nSmallFormTries > 0) {
        for (var i in aErrors) {
            cOutput += '<div class="red bold">' + aErrors[i] + '</div>';
        }
        
        $('#smallMsgHolder').html(cOutput).css('display', 'block');
    }

    return (aErrors.length == 0);
}
function SubmitSmallForm() {
    nSmallFormTries++;
    if (IsValidForm()) {
        // success
        // let's go ajax this thing
        var cData = "&rand=" + Math.floor(Math.random() * 10001);
        cData += "&name=" + $('#smallfio').val();
        cData += "&email=" + $('#smallemail').val();
        cData += "&txt=" + $('#smalltxt').val();
        $.post("resort.ashx?op=smallform&lang=" + GetCurrrentLanguage(), cData, function(data) {
            CallBackSmallForm(data);
            $('#smallForm').css('display', 'none');
        }, 'text');
    }
} 
function SubmitBigForm() {
    nSmallFormTries++;
    if (IsValidForm()) {
        // success
        // let's go ajax this thing
        cCallbackDivID = "msgSuccess";
        var cData = "&rand=" + Math.floor(Math.random() * 10001);
        cData += "&from=" + $('#txtFrom').val();
        cData += "&to=" + $('#txtTo').val();
        cData += "&category=" + $('#' + cCatID).val();
        cData += "&qty=" + $('#ddlQty').val();
        cData += "&adults=" + $('#ddlAdults').val();
        cData += "&children=" + $('#ddlChildren').val();
        cData += "&children2=" + $('#ddlChildren2').val();
        cData += "&client=" + $('#' + cClientID).val();

        cData += "&ln=" + $('#bigln').val();
        cData += "&fn=" + $('#bigfn').val();
        cData += "&mn=" + $('#bigmn').val();
        cData += "&phone=" + $('#bigphone').val();
        cData += "&email=" + $('#bigemail').val();
        cData += "&txt=" + $('#bigtxt').val();


        $.post("resort.ashx?op=bigform&lang=" + GetCurrrentLanguage(), cData, function(data) {
            CallBackSmallForm(data);
            $('#bigForm').css('display', 'none');
            cCallbackDivID = "AjaxRoomDetails";
        }, 'text');
    }
}

function ShowRoom(nRoomID) {
    var cData = "&rand=" + Math.floor(Math.random() * 10001);
    cData += "&roomid=" + nRoomID;
    $.post("resort.ashx?op=showroom&lang=" + GetCurrrentLanguage(), cData, function(data) {
        CallBackSmallForm(data);
    }, 'text');
}

/* DATES    IMPROVEMENT */
/* 
RETURNS STRING
*/
function LocalizeDate(cDate) {
    var oRes = cDate.match(/\d+/g);
    return GetCurrrentLanguage() == 'eng' ?
    cDate :
    (oRes && oRes.length == 3) ? oRes[2] + '-' + oRes[1] + '-' + oRes[0] : '';
}
/* 
BACK TO SWE DATE
RETURNS STRING
*/
function DeLocalizeDate(cDate) {
    var oRes = cDate.match(/\d+/g);
    return GetCurrrentLanguage() == 'eng' ?
    cDate :
    (oRes && oRes.length == 3) ? oRes[2] + '-' + oRes[1] + '-' + oRes[0] : '';
}

