﻿/*
=======================================================================================
 HOTELES RH                                                     Site produced by KOALAB        
 Copyright 2007                                                   http://www.koalab.com
=======================================================================================
*/

// ------------------------------------------------------------------------------------
// Reescritura de sustitución de inline-scripts de .NET
// ------------------------------------------------------------------------------------
// Postback ---------------------------------------------------------------------------
function __doPostBack(eventTarget, eventArgument) 
{
  if (!theForm.onsubmit || (theForm.onsubmit() != false)) 
  {
    theForm.__EVENTTARGET.value = eventTarget;
    theForm.__EVENTARGUMENT.value = eventArgument;
    theForm.submit();
  }
}

// Validation --------------------------------------------------------------------------
function InitValidators()
{
  var Page_ValidationActive = false;
  if (typeof(ValidatorOnLoad) == "function") 
  {
    ValidatorOnLoad();
  }
}

function ValidatorOnSubmit() 
{
  if (Page_ValidationActive) 
  {
    return ValidatorCommonOnSubmit();
  }
  else 
  {
    return true;
  }
}

// Form submit -------------------------------------------------------------------------
function CleanForm_OnSubmit()
{
  if (typeof(ValidatorOnSubmit) == "function" && ValidatorOnSubmit() == false) return false;
  return true;
}

var dialogArray;  /*Esta variable es utlizada por checkValidators(e)*/

$(document).ready(function() {
    // Asignamos al evento userLogged el delegado OnUserLogged creado en esta misma página
    jQuery(document).bind('userLogged', function(e, username) { OnUserLogged(username); });

    //ocultamos los dialogos de la suscripción/desuscripción de la newsletter
    $("div#ctl00_newsletter p.ajax-load").hide();
    $("#divNewsletterSubscribed").hide();
    $("#divNewsletterUnsubscribed").hide();

    $(document).pngFix();
    if (typeof Page_Validators != 'undefined') {
        dialogArray = new Array();
        for (i = 0; i < Page_Validators.length; i++) {
            dialogArray[Page_Validators[i].controltovalidate] =
            $("label[for='" + Page_Validators[i].controltovalidate + "']").html();
        }
    }

    var cacheImage1 = new Image();
    cacheImage1.src = '/imgLib/bg-load-availability.jpg';
    $.get("/content/availability/onload.html", function(data) {
        var newData = '<div id="preloaderAvail">' + data + '</div>';
        $('body').append(newData);
        $('#preloaderAvail').hide();
        $(".load-availability").click(function(e) { $('body').html(newData); });
    });

    hideOfferModalWindow();
    $("div#imgHeaders a.nav-offers").click(function(e) { showOfferModalWindow(); e.preventDefault(); });
    $("#offerModalWindow .WinClose a").click(function() { hideOfferModalWindow(); });
    $('#offerModalWindow #cbAll').click(function(e) { var checked = $(this).attr('checked'); $('#promotionRequirements input').attr('checked', checked); });

    hideBookingModalWindow();
    $("#bookingModalWindow .WinClose a").click(function() { hideBookingModalWindow(); $("#ctl00_Content_AvailabilityBookingForms_ddlHotel").show(); });

    // Evento que muestra u oculta el menu desplegable de hoteles
    $("div#navMenu").hide();
    $("div#contentHeader p#firstMenu").click(function(e) {
        e.preventDefault();
    });

    $("div#contentHeader p#firstMenu").mouseover(function() {
            $("div#navMenu").slideDown();
            $("div#navMenu").mousemove(function(e) {
                        var offset = $("div#navMenu").offset();
                        var x = 700 + offset.left;
                        var y = 200 + offset.top;
                        if ((e.pageX-5  <= offset.left || e.pageX > x) || (e.pageY < offset.top || e.pageY > y)) {
                            $("div#navMenu").hide();
                        }   
        });
    });


    // Eventos utilizado para incrementar o decrementar el tamaño de la página
    $('.link-mas').click(function() {

        var elementsArray = $("#indexContainer *:not(h4)");
        for (var i = 0; i < elementsArray.length; i++) {
            var currentElementFontSize = 0;
            currentElementFontSize = parseInt($(elementsArray[i]).css("font-size").replace('px', '')) + 1;
            $(elementsArray[i]).css("font-size", currentElementFontSize + 'px');
        }
    });

    $('.link-menos').click(function() {

        var elementsArray = $("#indexContainer *:not(h4)");

        for (var i = 0; i < elementsArray.length; i++) {
            var currentElementFontSize = parseInt($(elementsArray[i]).css("font-size").replace('px', '')) - 1;
            $(elementsArray[i]).css("font-size", currentElementFontSize + 'px');
        }
    });

    $("#ajaxOnLoadUser, #ajaxOnLoadedUser, #ajaxOnErrorUser").hide();
    $("#btnLogin").click(function() { login(); });

    // BookingFormManager.init();

    // Asignamos un manejador global para mostrar calendarios en toda la web
    $(".date-pick").datePicker({ clickInput: true, createButton: false });
    BindBookingsCalendars("#ctl00_tbArrived", "#ctl00_tbExit");
    BindBookingsCalendars("#ctl00_txtSinceDate", "#ctl00_txtForDate");

    BindEnterEvents("#users input:text", "#btnLogin");
    BindEnterEvents("#tbNewsletter", "#newsletterFields #btnNewsletter");

    /*
    if (typeof CKEDITOR == 'undefined') {
        alert('ckeditor no encontrado')
    } else {
        var editor = CKEDITOR.replace($('.ckeditor:first').attr('id'));
        CKFinder.SetupCKEditor(editor, '/ckfinder/');
    }
    */
});

function BindBookingsCalendars(startDateId, endDateId)
{
    $(startDateId).bind(
		'dpClosed',
		function(e, selectedDates)
		{
			var d = selectedDates[0];
			if (d) {
				d = new Date(d);
				$(endDateId).dpSetStartDate(d.addDays(1).asString());
			}
		}
	);
	$(endDateId).bind(
		'dpClosed',
		function(e, selectedDates)
		{
			var d = selectedDates[0];
			if (d) {
				d = new Date(d);
				$(startDateId).dpSetEndDate(d.addDays(-1).asString());
			}
		}
	);
}

/*
var HotelsDictionary =
{
    'princesa' : 'Hotel RH Princesa', 
    'coronaDelMar' : 'Hotel RH Corona del Mar', 
    'sol' : 'Hotel RH Sol', 
    'canfali' : 'Hotel RH Canfali', 
    'internacional' : 'Hotel RH Internacional', 
    'solEstudios' : 'Estudios RH Sol',
    'bayren' : 'Hotel RH Bayren', 
    'bayrenParc' : 'Hotel RH Bayren Parc', 
    'riviera' : 'Hotel RH Riviera', 
    'gijon' : 'Hotel RH Gijón',
    'casablanca' : 'Hotel RH Casablanca'
}
*/
//var HotelsDictionary =
//{
//    '10' : 'Hotel RH Princesa', 
//    '11' : 'Hotel RH Corona del Mar', 
//    '9'  : 'Hotel RH Sol', 
//    '12' : 'Hotel RH Canfali', 
//    '13' : 'Hotel RH Internacional', 
//    '99' : 'Estudios RH Sol',
//    '15' : 'Hotel RH Bayren', 
//    '16' : 'Hotel RH Bayren Parc', 
//    '17' : 'Hotel RH Riviera', 
//    '70' : 'Hotel RH Gijón',
//    '14' : 'Hotel RH Casablanca'
//}
//var IgmDestinationCodesDictionary =
//{
//    '0' : '1', 
//    '1' : '2', 
//    '2' : '3'
//}
//var BookingFormManager = 
//{
//    benidorm : {
//        length : 3,
////        stars0 : [ '10', '11', '9', '12', '13', '9'],
//        stars2 : [ '12', '13', '99' ],
//        stars3 : [ '9' ], 
//        stars4 : [ '10', '11']
//    },
//    gandia : {
//        length : 2,
////        stars0 : [ '15', '16', '17', '70'],
//        stars3 : [ '17', '70' ], 
//        stars4 : [ '15', '16']
//    },
//    peniscola : { 
//        length : 1, 
////        stars0 : ['14'] ,
//        stars4 : ['14'] 
//    },
//    updateStars : function(e)
//    {
//        BookingFormManager.Destination = e == 0 ? 'benidorm' : e == 1 ? 'gandia' : 'peniscola';
//        ddlStars.options.length = 0;
//        var initialStars = 4;
//       // ddlStars.options[ddlStars.options.length] = new Option('Todos',0);
//        for(i=0; i<BookingFormManager[BookingFormManager.Destination].length; i++)
//        {
//            ddlStars.options[ddlStars.options.length] = new Option(initialStars+ ' estrellas',initialStars);
//            --initialStars;
//        }
//        BookingFormManager.updateHotels();
//    },
//    updateHotels : function()
//    {
//        var hotelsArray = 'stars' + ddlStars.options[ddlStars.selectedIndex].value;
//        var hotelsCollection = BookingFormManager[BookingFormManager.Destination][hotelsArray];
//        ddlHotels.length = 0;
//       // ddlHotels.options[0] = new Option('Todos', '');
//        for(h=0;h < hotelsCollection.length;h++)
//        {
//           ddlHotels.options[h] = new Option(HotelsDictionary[hotelsCollection[h]], hotelsCollection[h]);                 
//        }  
//    },
//    datesValidation : function(fieldValue)
//    {
//        var RegExPattern = /^\d{1,2}\/\d{1,2}\/\d{4}$/;
//        if ((fieldValue.match(RegExPattern)) && (fieldValue!='')) 
//            return true;
//        else 
//            return false;
//    },
//    launchBookingPopUp : function(destination, hotel, checkIn, checkOut)
//    {   
//        hideBookingModalWindow();
//        var w = 800, h = 600;
//        var popW = 800, popH = 600;
//        
//        if (document.all) {
//           w = document.body.clientWidth;
//           h = document.body.clientHeight;
//        }
//        else if (document.layers) {
//           w = window.innerWidth;
//           h = window.innerHeight;
//        }
//        
//        var leftPos = (w-popW)/2, topPos = (h-popH)/2;
//        window.open('/content/bookings/transport.aspx?ddlDestination='+destination+'&ddlHotel='+hotel+'&tbArrived='+checkIn+'&tbExit='+checkOut, 'bookingPopWindow', 'status=1, location=0, scrollbars=1, resizable=1, menubar=0, toolbar=0, width='+popW+',height='+popH+', top='+topPos+', left='+leftPos);
//    },
//    init : function()
//    {
//        ddlStars = document.getElementById("ctl00_ddlStars");
//        ddlHotels = document.getElementById("ctl00_ddlHotel");
//        
//        $("#inputBenidorm, #inputGandia, #inputPeniscola").change(function(e){
//            if(this.checked)
//            {
//                BookingFormManager.updateStars(this.value);
//                 $("#ddlDestination").val(IgmDestinationCodesDictionary[this.value]);
//            }
//        });
//        $("#ctl00_ddlStars").change(function(){
//            BookingFormManager.updateHotels();
//        });
//        
//        BookingFormManager.updateStars('0');
//        
//        $('#ctl00_btnSearchBookings').click(function(e){
//            if(!BookingFormManager.datesValidation($('#ctl00_tbArrived').val()) || !BookingFormManager.datesValidation($('#ctl00_tbExit').val()))
//            {
//                alert('Por favor, introduzca unas fechas válidas de entrada y salida para su reserva');
//                e.preventDefault();
//            }
//            else
//            {
//                var destination = IgmDestinationCodesDictionary[$('#contentBooking input[name=BookingDestination]:checked').val()];
//                var hotel = $('#ctl00_ddlHotel').val();
//                var checkIn = $('#ctl00_tbArrived').val();
//                var checkOut = $('#ctl00_tbExit').val();
//                BookingFormManager.launchBookingPopUp(destination, hotel, checkIn, checkOut);
//                
//                e.preventDefault();
//            }
//        });
//    }
//};
//function launchFiltedBooking(destination, stars, hotel)
//{
//    showBookingModalWindow();

//    if(destination == '0') $('#contentBooking #inputBenidorm').attr('checked', 'checked');
//    if(destination == '1') $('#contentBooking #inputGandia').attr('checked', 'checked');
//    if(destination == '2') $('#contentBooking #inputPeniscola').attr('checked', 'checked');

//    BookingFormManager.updateStars(destination);
//    $("#ctl00_ddlStars").val(stars);
//    BookingFormManager.updateHotels();
//    $("#ctl00_ddlHotel").val(hotel);
//}

function login() {
/*
        $("#ajaxOnLoadedUser, #ajaxOnErrorUser, .text-user").hide();
        $("#ajaxOnLoadUser").show();
        $("#btnLogin").attr("disabled","true");
        Sys.Services.AuthenticationService.login(
            $get('txbUser').value,
            $get('txbPassword').value,
            false,
            null,
            null,
            loginComplete,
            loginError,
            null);
*/

    $("#ajaxOnLoadedUser, #ajaxOnErrorUser, .text-user").hide();
    $("#ajaxOnLoadUser").show();
    $("#btnLogin").attr("disabled", "true");
    /*
        Sys.Services.AuthenticationService.login(
            $get('txbUser').value.replace(' ', ''),
            $get('ctl00_loginView_ddlBirthDayLogin').value + $get('ctl00_loginView_ddlBirthMonthLogin').value + $get('ctl00_loginView_ddlBirthYearLogin').value,
            false,
            null,
            null,
            loginComplete,
            loginError,
            null);
            */
        $.ajax({
			type:"GET",
			url: "checkUser.ashx?q="+$get('txbUser').value.replace(' ','')+"@"+$get('ctl00_ddlBirthDayLogin').value +"/"+ $get('ctl00_ddlBirthMonthLogin').value +"/"+ $get('ctl00_ddlBirthYearLogin').value,
			dataType: "txt",
			success: function(data){
               if (data=='true'){
                    loginComplete(true);
               }
               else{
                    loginError(false);
               }
               
			}
			
		});            
}
function loginComplete(result)
{
        $("#ajaxOnLoadUser").hide();
        if(result)
        {
            var username = $get('txbUser').value;
            
            $("#ajaxOnLoadUser").show().html("Usuario autenticado. Cargando contenidos...");
            $("#linksHeader .login-link").html("Cerrar sesión <strong>" + username + "</strong>").removeClass("login-link").addClass("logout-link").click(function(e){ Sys.Services.AuthenticationService.logout('/'); e.preventDefault()});
            
            if(typeof OnUserLogged == 'function')
                jQuery(document).trigger('userLogged', [username]);
            
            $.ajax({
              url: "/content/masterPages/LoggedInTemplate.htm",
              cache: false,
              success: function(html){
                $("#ctl00_users, #ctl00_newsletter").remove();
                $("#contentContainer").append(html);
                $("#ctl00_loginAuthenticated").hide().fadeIn("slow");
              }
            });
        }
        else
        {
            $("#ajaxOnLoadedUser").show(); 
            $("#btnLogin").removeAttr("disabled");
        }  
}
function loginError(result)
{
        $("#btnLogin").removeAttr("disabled");
        $("#ajaxOnErrorUser").show();
}

function datesValidation(fieldValue) {
    var RegExPattern = /^\d{1,2}\/\d{1,2}\/\d{4}$/;
    if ((fieldValue.match(RegExPattern)) && (fieldValue != ''))
        return true;
    else
        return false;
}
function assignDestinationBookingEvent() 
{
        $("div#backgroundDestinations .span-safe .button-prices").click(function(e) {

            var checkIn = $('#ctl00_Content_AvailabilityBookingForms_tbArrived').val();
            var checkOut = $('#ctl00_Content_AvailabilityBookingForms_tbExit').val();

            if (!datesValidation(checkIn) || !datesValidation(checkOut))
                alert('Por favor, introduzca unas fechas válidas de entrada y salida para su solicitud');
            else
            {
                $("#ctl00_Content_AvailabilityBookingForms_ddlHotel").hide();
                showBookingModalWindow();
            }
            
            e.preventDefault();
        });
    }

function showOfferModalWindow()
{
   $("#offerOverLayer, #offerModalWindow").show();
    // KOALAB adjusts vertical offset
    $("#offerModalWindow").css("margin-top", '-' + $("#offerModalWindow").height()/2 + 'px');
}
function hideOfferModalWindow()
{
    $("#offerOverLayer, #offerModalWindow").hide();
}

function showBookingModalWindow()
{
   $("#bookingOverLayer, #bookingModalWindow").show();
    // KOALAB adjusts vertical offset
    $("#bookingModalWindow").css("margin-top", '-' + $("#bookingModalWindow").height()/2 + 'px');
}
function hideBookingModalWindow()
{
    $("#bookingOverLayer, #bookingModalWindow").hide();
}

function cargarPagina(query){
    window.location= "/blog/buscar/" + escape($("#search-google .text-search").val()) + ".html";
}
function checkValidators(e){
/*
Función que muestra los mensajes de los validadores .net en 
etiquetas label asociadas (mediante for) al control validado.
*/
    for(i = 0; i < Page_Validators.length; i++)
    {
        if(Page_Validators[i].validationGroup == e )
        {
            //label = al label que pertenece al campo validado
            var label = $("label[for='"+Page_Validators[i].controltovalidate+"']");
            
            if(Page_Validators[i].isvalid == false){
                //controlamos si un validador anterior ha 
                //modificado este label
               if(label.hasClass("errorMessage") == false){
                    //establecemos el innerhtml del label
                    //con el mensaje del validador
                    label.html(Page_Validators[i].errormessage);
                
                    //asignamos la clase para decorar errores
                    label.addClass("errorMessage");
                } 
            }else{
                //Llegamos aquí si el validador es válido.
                //Aunque el validador que estamos manejando sea válido
                //es posible que un validador anterior en el bucle no lo 
                //sea!!! esto tendremos que comprobarlo
                if(label.hasClass("errorMessage")){
                    
                    //este flag lo utilizaremos para saber si todos los validadores 
                    //anteriores que afectan a este control dicen que sí es valido
                    var isvalid = true;//sí por defecto
                    for(j = 0; j<i ;j++){//volvemos hacia atrás
                        //si el validador anterior valida el mismo control que el validador
                        //que tenemos en danza...
                        if(Page_Validators[i].controltovalidate == Page_Validators[j].controltovalidate){
                            //si hemos encontrado un validador evaluado anteriormente, 
                            //para el mismo control con isvalid = false...
                            if(Page_Validators[j].isvalid == false){
                                //marcamos el control como inválido
                                isvalid = false;
                                //
                                label.html(Page_Validators[j].errormessage);
                                break;
                            }
                        }
                    }
                    //en caso de que ningún validador evaluado anteriormente
                    //relacionado con este control diga que la información de
                    //este es inválida eliminamos la clase errorMessage del label
                    //y reestablecemos el texto orginal
                    if(isvalid){
                        label.removeClass("errorMessage");
                        label.html(dialogArray[Page_Validators[i].controltovalidate]);
                    }
                }
            }
        }
    }
}

// emailCheck by Sandeep V. Tamhankar (stamhankar@hotmail.com)
function emailCheck(emailStr, log) {
	if (!log) log = alert;
	var checkTLD=1;
	var knownDomsPat=/^(es|cat|com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
	var emailPat=/^(.+)@(.+)$/;
	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	var quotedUser="(\"[^\"]*\")";
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom=validChars + '+';
	var word="(" + atom + "|" + quotedUser + ")";
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
	var matchArray=emailStr.match(emailPat);
	if (matchArray==null) {
		log("La dirección de e-mail suministrada es incorrecta. ");
		return false;
	}
	var user=matchArray[1];
	var domain=matchArray[2];
	for (i=0; i<user.length; i++) {
		if (user.charCodeAt(i)>127) {
			log("El nombre de usuario de la cuenta de e-mail no es correcto");
			return false;
		}
	}
	for (i=0; i<domain.length; i++) {
		if (domain.charCodeAt(i)>127) {
			log("El dominio indicado no es correcto");
			return false;
		}
	}	
	if (user.match(userPat)==null) {
		log("El nombre de usuario de la cuenta de e-mail no es correcto");
		return false;
	}
	var IPArray=domain.match(ipDomainPat);
	if (IPArray!=null) {
		for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) {
				log("La IP indicada no es válida");
				return false;
			}
		}
		return true;
	}
	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;
	for (i=0;i<len;i++) {
		if (domArr[i].search(atomPat)==-1) {
			log("El dominio indicado no es correcto");
			return false;
		}
	}
	if (checkTLD && domArr[domArr.length-1].length!=2 && 
		domArr[domArr.length-1].search(knownDomsPat)==-1) {
		log("La extensión de dominio indicada no es correcta");
		return false;
	}
	if (len<2) {
		log("El dominio de la cuenta de correo electrónico no se encuentra");
		return false;
	}
	return true;
}	

// Función que proporciona para cada habitación seleccionada
// el número de personas por habitación correspondientes
function numhabs(cuantas) {
    try {
        if (cuantas == 4) {
            document.location.href = "/content/bookings/groups.aspx"
        }
        for (i = 2; i <= 4; i++) {
            document.getElementById("hab" + i).style.display = "none";
        }
        for (i = 1; i <= (cuantas + 1); i++) {
            document.getElementById("hab" + i).style.display = "block";
        }
    }
    catch (err) { }
}

//newsletter 
function doNewsletterSubscription(){
    $("div#newsletterFields").hide();
    $("div#ctl00_newsletter p.ajax-load").show();
    
    var _email = document.getElementById("tbNewsletter").value;
    
    var subscriptionStatus = true; 
    for(var i = 0; i < document.aspnetForm.subscription.length; i++){
        if(document.aspnetForm.subscription[i].checked){
            subscriptionStatus = document.aspnetForm.subscription[i].value;
        }
    }
    $.post("/jsLib/newsletter/manager.ashx", { email: _email, status: subscriptionStatus },newsletterSubscriptionCallback );

    return false;
}
function newsletterSubscriptionCallback(result){
   $("div#ctl00_newsletter p.ajax-load").hide();
   switch (result){
        case "-1":
            //email vacio
            $("div#newsletterFields label strong").html("Debe indicar su e-mail");
             $("div#newsletterFields label strong").css("color", "red");
            $("div#newsletterFields").show();
        break;
        case "1":
            //email incorrecto
            $("div#newsletterFields label strong").html("Su e-mail es incorrecto");
            $("div#newsletterFields label strong").css("color", "red");
            $("div#newsletterFields").show();
        break;
        case "2":
            //añadido a la newsletter
            $("div#divNewsletterSubscribed").show();
        break;
        case "3":
            //eliminado de la newsletter
            $("div#divNewsletterUnsubscribed").show();
        break;
            
            
   }
}
function onNewsletterSubscriptionError (result){
    $("div#ctl00_newsletter p.ajax-load").hide();
    $("div#newsletterFields").show();
}
function BindEnterEvents(textBox, button)
{
    $(textBox).keydown(function(event){
        if(event.which || event.keyCode)
        {
            if ((event.which == 13) || (event.keyCode == 13)) 
            {
                $(button).trigger('click');
                return false;
            }
        } 
        else 
            return true;
    });
}
function blank()
{
    return;
}
//función replace que actúa como la de .net
function replaceAll(s, v1, v2){
    return (s.indexOf(v1) > -1) ? replaceAll(s.replace(v1, v2), v1, v2) : s;
}

function concatCheckboxesArray(x){
    var result = '';
    
    for(var i = 0; i < x.length; i++){
        result += x[i].value;
        if(i + 1 != x.length){
            result+=',';
        }
    }
    return result;
}

function clickOffersFilter2(destinationsName, amenitiesName, startsOnId, expiresOnId)
{
    var checkBoxesArrary = $("input[@name='"+destinationsName+"']:checked");
    if(checkBoxesArrary.length <= 0)
    {
        alert('Seleccione al menos un destino en el que buscar ofertas, gracias.');
        return false;
    }
    var destinations = concatCheckboxesArray(checkBoxesArrary);
    var amenities = '';
    $("#ctl00_cblPromoTags input:checked").each(function(obj, i) {
        amenities += $(i).parent().attr('rel') + ',';
    });

    if (amenities.length > 0) 
        amenities = amenities.substring(0, amenities.length - 1);
    
    var startson = replaceAll($("#"+startsOnId).val(), '/', '-');
    var expireson = replaceAll($("#"+expiresOnId).val(), '/', '-');
    
    document.location.href="/content/promotions/?startsOn=" + startson
                            + "&expiresOn=" + expireson
                            + "&destinations=" + destinations + "&tags=" + amenities;
                            return false;
}
