var Error = new Array();
const CODE_TRACK = 'SM-CuKeys';

Error['en'] = {
    INVALID_CHECKIN_DATE: "Invalid Check-in Date!",
    INVALID_HOTEL_NAME: "Select a valid destination!"
}

Error['es'] = {
    INVALID_CHECKIN_DATE: "Fecha de LLegada inválida!",
    INVALID_HOTEL_NAME: "Seleccione un destino válido"
}

Event.observe(window, 'load', initGlobals, false);

function initGlobals() {
    culture = $('culture').value;
    if ($('crsForm')) {
         Event.observe('crsBookNow', 'click', function () {  if (validateCheckIn() && validateHotelName()) { gotoFastBooking() } })
    };

    $$('#hdKeys a').each(function(item) {
                Event.observe(item, 'click', function () {
                                                d = new Date();
                                                region = item.innerHTML.strip().replace('á', 'a').replace('é', 'e').replace('í', 'i').replace('ó', 'o').replace('ú', 'u');
                                               //region = Utf8.encode(item.innerHTML);
                                               hhotelDispoPriceByRegion("crscubasolmelianew", region, getCulture(), CODE_TRACK, 1, d.getFullYear(), d.getMonth(), d.getDate() + 1, 1, "EUR");
                                             }
                )
    });

    /*$$('.bookNow a').each(function(item) {
            Event.observe(item, 'click', function () {
                                                alert('alert');
                                                hhotelResaDirect( "CUBASMCGuillermo", "uk","", "", "SM-CuKeys", ""); return false;
                                                hhotelDispoPriceByRegion("crscubasolmelianew", item.innerHTML.strip(), getCulture(), "", "", "", "", "", "", "");
                                             })
    });*/
}

function validateCheckIn() {
    var date = normalizeStringToDate($('checkIn').value);
    var current = new Date();
    if ((current.getDate() > date.day) || (current.getMonth() > date.month)) {
        alert(Error[culture].INVALID_CHECKIN_DATE);
        return false;
    }
    return true;
}

function validateHotelName() {
    if ('all' ==  $('crsHotel').value.toLowerCase()) {
            alert(Error[culture].INVALID_HOTEL_NAME);
            return false;
    }
    return true;
}


function gotoFastBooking() {
    var url = 'http://www.fastbookings.biz/DIRECTORY/dispoprice.phtml';
    var date = normalizeStringToDate($('checkIn').value);
    url += '?Clusternames='+ $('Clusternames').value;
    if ( $('crsHotel').value.indexOf('CUBASM') == -1 ) {
        url += '&Hotelnames=All';
        url += '&region=' + $('crsHotel').value;
    } else {
        url += '&Hotelnames=' + $('crsHotel').value;
    }
    url += '&langue=' +  getCulture();
    url += '&fromday='+ date.day + '&frommonth=' + date.month + '&fromyear=' + date.year;
    url += '&nbdays=' + $('nights').value + '&adulteresa=' + $('adults').value + '&enfantresa=' + $('children').value;
    url += '&FSTBKNGTrackLink=' + $('FSTBKNGTrackLink').value;
    window.open(url, "reservation","toolbar=no,width=800,height=600,menubar=no,scrollbars=yes,resizable=yes,alwaysRaised=yes");
}

function getCulture() {
    if ('en' == culture) return 'uk';
    if ('es' == culture) return 'spain';
}

function normalizeStringToDate(str) {
    //var arr = str.split(-)
    if ('en' == culture) return date = {
            year: str.split('-')[0],
            month: str.split('-')[1],
            day: str.split('-')[2]
    }; else return date = {
            year: str.split('/')[2],
            month: str.split('/')[1],
            day: str.split('/')[0]
    }
}
