var i18n = { 
    'clic.here.to.move' : 'Haga click aqui para desplazar el mapa' , 
    'clic.here.to.close' : 'Cerrar',
	'rates.and.reservation':'Tarifas y reserva',
	'hotel.list':'Volver a lista de hoteles',
	'previous.hotel':'Hotel precedente',
	'next.hotel':'Hotel siguiente',
	'add.to.favorites':'Añadir a mis favoritos',
	'you.are.not.identified':'You are not identified',
	'avantages':'Avantages',
	'register':'Register',
	'already.registered':'Already registered'
};

var I18N = {
	'fh' : {
		'Click here to move to move the map' :'Haga click aqui para desplazar el mapa' ,
		'Click here to close'                :'Cerrar',                                 
		'Rates and reservation'              :'Tarifas y reserva',                       
		'List of hotels'                     :'Volver a lista de hoteles',               
		'Previous hotel'                     :'Hotel precedente',                        
		'Next hotel'                         :'Hotel siguiente',
        'Previous'                           :'Anterior',
        'Next'                               :'Siguiente',
		'All'               			 	 :'Todos los hoteles',		
		'Add to favorites'                   :'Añadir a mis favoritos',                        
		'You are not registered'             :'You are not identified',                  
		'Avantages'                          :'Avantages',                               
		'Register here'                      :'Register',                                
		'Identify yourself'                  :'Already registered'                       

		},
		
		'meetingRoomConfigurationType' : 
		{
			'NONE'					: 'Sin preferencias',       
			'U'                		: 'Sala con forma de U',
			'BOARD'              	: 'Sala de juntas',               
			'CLASS'                 : 'Clase',                    
			'THEATRE'               : 'Sala de teatro'                     
		},
		
		'bol.guestrooms' : {
				'wrongRoomNb' 	: 'Seleccione el número de habitaciones que desee.',
				'noSelection'	: '[TRADUCTION JS]Vous devez sélectionner les chambres pour les participants.'
		},
	
	'formval' : {
		'required checkbox'		:	"Cette case doit \u00EAtre coch\u00E9e",
		'required radio'		:	"Vous devez s\u00E9lectionner une de ces options",
		'required text'			:	"Attention, ce champ est obligatoire",
		'required select'		:	"Vous devez s\u00E9lectionner l'objet de votre demande",
		'email'					:	"Cette adresse e-mail est erron\u00E9e",
		'name'					:	"Ce champ ne doit comporter que des lettres, et les caract&egrave;res suivants : '-'" ,          
		'numbers'				:	"Ce champ ne doit comporter que des chiffres",
		'decimal'				:	"Ce champ ne doit comporter que des chiffres",
		'phonenumber'			:	"Ce champ ne doit comporter que des chiffres", 
		'phonenumber2'			:	"Veuillez v\u00E9rifier votre num\u00E9ro de t\u00E9l\u00E9phone",
		'equalsto'				:	"Ce champ doit &ecirc;tre identique au pr&eacute;c&eacute;dent" ,
		'codepostal'			:	"Ce code postal est erron\u00E9",
		'cpordep'				:	"Vous ne pouvez mettre qu'un num\u00E9ro de d\u00E9partement ou un code portal",
		'pseudo'				:	'Attention, votre pseudo doit contenir uniquement 20 caract&egrave;res, des lettres et des num\u00E9ros et les signes "_" et "-"',
		'image'					:	"Votre fichier n'est pas au bon format",
		'minimum'				:	"Vous devez remplir au moins ## champ",
		'requiredexclusif'		:	"Vous devez remplir au moins un des champs"	        
		         
	},
	
	'calendar_months' : {
		'January'	:	'Enero',
		'February'	:	'Febrero',
		'March'		:	'Marzo',
		'April'		:	'Abril',
		'May'		:	'Mayo',
		'June'		:	'Junio',
		'July'		:	'Julio',
		'August'	:	'Agosto',
		'September'	:	'Septiembre',
		'October'	:	'Octubre',
		'November'	:	'Noviembre',
		'December'	:	'Diciembre'
	},
	
	'calendar_days' : {
		'Mo'	:'L',
		'Tu'	:'M',
		'We'	:'M',
		'Th'	:'J',
		'Fr' 	:'V',
		'Sa'	:'S',
		'Su'	:'D'
	},

	'common' : {
		'You request is being processed.' : "El tratamiento de su petición está en curso...",
		'Please wait.' : "Por favor, espere.",
		'Show details' : "Ver los detalles",
		'Hide details' : "Ocultar los detalles"
	},
	
	'express' : {
		'No cards' : 'none',
		'With card' : 'yes',
		'close' : 'Cerrar',
		'more'	: 'Más información',
		'Show hotel average' : 'Clasificación del hotel',
		'Show web average' : 'Puntuación del hotel',
		'Vote' : 'Escribe tu opinión'
	},
	
	'calendar' : {
		'outOfMinDate' : "No puede reservar para fechas anteriores a la fecha de hoy.",
		'outOfMaxDate' : "No puede reservar después del:",
		'tooManyNights': "Puede reservar hasta %x noches",
		'nightNotAvailable' : 'No pueden seleccionar un período que incluye fechas inalienables.',
		'mustSelect2Dates': "Please select an arrival date and a departure date.",
		'date.already.clicked' : "Haga clic sobre la fecha de la reserva que desea modificar para anularla."
	},
	
	'popup' : {
		'Close': 'Cerrar'                   
	},
	
	'multirates' : {
		'Back to prices' : 'Volver a las tarifas',
		'See prices for this room' : 'Visualice las tarifas para esta habitación',
		'extend_stay_dates_not_changed_error_msg' : 'Si desea modificar su estancia, por favor, modifique las fechas de estancia que figuran a continuación, por favor, haga clic en el botón correspondiente al "paquete".',
	    'Rooms 1 and 2' : 'Habitaciones 1 y 2',
        'Rooms 1, 2 and 3' : 'Habitaciones 1, 2 y 3',
		'Complimentary' : 'Obsequio',
		'OnRequest' : 'Bajo petición',
		'For 2 rooms' : 'Por las 2 habitaciones'
    },
  'upsale' : {
  	'2 chambres en famille' : '2 habitaciones familiares'
  },
  
  'customer-details' : {
		'Your Reservation' : 'Su reserva'
	},
	
	'title-reservation' : {
		'title' : 'resultados de su búsqueda'
	},
    
    'confirmation' : {
		'Your selection' : 'Su selección',
        'Your confirmed booking' : 'Su reserva',
    'Confirmation of your booking request' : "Confirmation of your booking request" 
	},
	"cross_selling" : {
		'euro_savetime' : 'Ahorre tiempo rellenando el formulario de reservas de Europcar con su nombre y detalles de contacto.',
		'europcar' : 'Europcar no conservará estos datos para otra cosa que no sea su reserva de hoy. No se transferirá ninguna información referida a tarjetas de crédito.',
		'yes' : 'SI',
		'no' : 'NO',
		'prefill' : 'Rellenar el formulario',
		'noprefill' : 'Introduciré mis datos <br />de nuevo'
	},
	
	"promo.booking.errors.msg": {
		"Please fill in the following fields": "Por favor, complete los siguientes campos:",
		"destination": "destino",
		"countries": "país",
		"cities": "ciudad",
		"hotels": "hotel",
		"check-in date": "fecha de llegada"
	},
	
	"promo.booking.defaults": {
		"Country": "País",
		"Select a country": "Seleccione un país",
		"City": "Ciudad",
		"Select a city": "Seleccione una ciudad",
		"Hotel": "Hotel",
		"Select a hotel": "Seleccione un hotel",
		"Close": "Cerrar"
	},
	
	"cartography": {
		"Show on a map": "Visualizar en un mapa"
	},
	
	"hotels.list": {
		"Book": "Haga su reserva",
		"Request a proposal": "Pedir presupuesto",
		"wHotels" : "hoteles",
		"wHotel" : "hotel",
		"You may select a maximum": "Sólo puede seleccionar {0} hoteles como maximo",
		"You have to select at least": "Debe seleccionar al menos un hotel",
		"You may select up to": "Puede seleccionar de 1 a {0} hoteles",
		"Compare": "Comparar",
		"You should select at least to make a comparison": "Deberá seleccionar al menos 2 hoteles para establecer una comparación"
	},
	
	"hotels.filter": {
	    "TOW": "Centro ciudad", 
	    "SUB": "En los alrededores de la ciudad", 
	    "AIR": "Aeropuerto",
	    "restaurant": "Restaurante",
	    "swimmingPool": "Piscina",
	    "parking": "Aparcamiento",
	    "meetingRoom": "Sala de reunión",
	    "wifi": "Wifi",
	    "petAllowed": "Se aceptan animales",
	    "hotels match": "hoteles concernidos",
	    "hotel match": "hotel concernido",
	    "Show list of hotels" : "Visualizar los hoteles",
	    "No result": ""
	},
	
	"hotels.compare": {
		"Back": "Volver a la lista de hoteles",
		"Request a proposal": "Pedir presupuesto",
        "You have to select one hotel at least": 'Debe seleccionar al menos un hotel.',
        "you may select a maximum": "Sólo puede seleccionar {0} hoteles como maximo"
    },
    
  "profil.comboLabel": {
		"day" : "Día",
		"month" : "Mes",
		"year" : "Año"
	},
	
	"profil.civilityLabel":{
			"R" : "Sr.",
			"A" : "Sra.",
			"M" : "Srta."
	},
	
	"profil.contextAccroche":{
			"pro" : "¿Realiza muchos viajes de negocios?",
			"leisure" : "¿Es usted un particular?"
	},
	
	"profil.errors":{
			"generic.error.validation" : "Modifique o complete la información proporcionada. Los campos marcados en color rojo son incorrectos u obligatorios.",
			"generic.error.technical" : "Nuestro sitio web acaba de encontrar un problema técnico. Le rogamos vuelva a intentarlo de nuevo.",
			"generic.error.service.down" : "Este servicio no está disponible en estos momentos.",
			"generic.error.server" : "Este servicio no está disponible en estos momentos.",
			
			"same card" : "Ya ha seleccionado el mismo tipo de tarjeta",
			"wait" : "Espere...",
			"error.requested.invalid" : "No podemos procesar su solicitud: el enlace que ha utilizado ya no es válido.",
			
			"error.professionalData.get.failed" : "La información del usuario corporativo no es válida. Compruébelos.",
			"error.identifiers.missing" : "La información del usuario corporativo no es válida. Compruébelos.<br />Si vous êtes un particulier, <a href='/fr/profil/registration.shtml?context=B2C'>cliquez ici</a>",
			
			"error.email.blocked" : "Modifique o complete la información proporcionada.<br />Los correos electrónicos de @accor.com y direcciones de correo electrónico similares no se aceptan porque ya tiene una cuenta de A|Club.",
			"error.email.unknown" : "Dirección E-mail desconocida. Por favor, introduzca la correcta.",
			"error.email.already.exists" : 'Esta dirección de correo electrónico ya está registrada.<br />Inicie sesión a través del enlace "¿Ya se ha registrado?".',

			"error.login.failed.wrong.identifiers" : "La identificación no es válida. Vuelva a intentarlo o cree un perfil.",
			"error.login.failed.account.blocked" : 'Para desbloquear su cuenta, haga clic en el enlace "Contraseña olvidada".',
			"error.login.failed.application.blocked" : "La identificación no es válida. Vuelva a intentarlo o cree un perfil.",
			
			"error.user.notIdentified" : 'Si desea acceder a esta página, deberá registrase a través de <a href="/fr/profil/login.shtml">este enlace</a>.'
	},
	
	"profil.formValues":{
		"password" :"Contraseña",
		"true" : "Sì",
		"false" : "No"
	},
	
	"profil.messages":{
    "message.email.requested.valid" : "Gracias por su solicitud: se ha enviado un mensaje.<br />Para activar el cambio, compruebe su bandeja de entrada de correo electrónico.",
    "message.password.requested.valid" : "Se ha cambiado su contraseña.<br />Se le ha enviado un correo electrónico de notificación. "
  },
	
	"profil.modify":{
		'npai': "Durante nuestros anteriores envíos de newsletter, su dirección ha sido detectada como no localizable, por favor, modifíquela si fuera necesario.",
		'nocard':"Aún no ha registrado una tarjeta de fidelización.",
		'nofavhotel':"No ha seleccionado un hotel favorito.",
		'noprefdestination' : "Aún no ha seleccionado un destino favorito.",
		'unknown' : 'No se ha introducido',
		'save eMail' : "Guardar dirección de correo electrónico",
		'save password' : 'Guardar contraseña',
		'save' : 'Regístrese',
		'validate identifiers' : 'Confirmar los datos de usuario',
		'no.subscription' : "No dispone de suscripción a nuestro boletín.<br /><br />Suscríbase y le enviaremos nuestras mejores ofertas."
	},
	
	"profil.newsletter" : {
				
		// MAR_AEC
		"ALL_AEC" : "La newsletter y los servicios Accorhotels.com",
		"SOF_AEC" : "La newsletter y los servicios Sofitel.com",
		"NOV_AEC" : "La newsletter y los servicios Novotel.com",
		"MER_AEC" : "La newsletter y los servicios Mercure.com",
		"SUI_AEC" : "La newsletter y los servicios Suitehotel.com",
		"IBI_AEC" : "La newsletter y los servicios Ibishotel.com",
		"THA_AEC" : "La newsletter y los servicios AccorThalassa.com",
		"ETP_AEC" : "La newsletter y los servicios Etaphotel.com",
		"FOR_AEC" : "La newsletter y los servicios HotelFormule1.com",
		"PUL_AEC" : "La newsletter y los servicios Pullmanhotels.com",
		"ASE_AEC" : "Las novedades, los servicios y ventajas del sitio All Seasons",
		
		// AEC
		"AEC" : "Los servicios privilegiados de nuestra e-conserje",
		
		// PMO
		"PMO" : "La newsletter Accorhotels.com",
		
		"PMO_AEC" : "La newsletter y los servicios Accorhotels.com",
		
		// Marque
		"ALL" : "La newsletter Accorhotels.com",
		"SOF" : "La newsletter Sofitel.com",
		"NOV" : "La newsletter Novotel.com",
		"MER" : "La newsletter Mercure.com",
		"SUI" : "La newsletter Suitehotel.com",
		"IBI" : "La newsletter Ibishotel.com",
		"THA" : "La newsletter AccorThalassa.com",
		"ETP" : "La newsletter Etaphotel.com",
		"FOR" : "La newsletter HotelFormule1.com",
		"PUL" : "La newsletter Pullmanhotels.com",
		"ASE" : "Las novedades y ventajas del sitio All Seasons",
		"MGA" : "La newsletter MGallery.com",
		
		// PRO
		"BUS" : "La E-news Viajeros de negocios",
		"MEE" : "La E-News Meetingataccorhotels.com",
		
		//Autres
		"BRE" : "Promociones Accorhotels Sudamérica",
		"ASI" : "Accorhotels.com Asia",
		"AUS" : "Accorhotels.com Australia",
		"BOT" : "The Accor Thalassa online shop newsletter",
		"TRA" : "La E-news Agencias de viajes",
		"LEI" : "La E-news de los Profesionales del Turismo"
	},
	
	"freenight" : {"paper.needed" : "Certificado impreso necesario"},
		"leasure.form" : {"welcome" : "Bienvenido "},

  _ : function (cat,str) {
		return I18N.gettext(cat,str);
	},

	gettext : function (cat,str) {
		if (I18N[cat] && I18N[cat][str]) str = I18N[cat][str];
		return str;
	},
	
	/**
	 * Methode permettant d'afficher des textes a tous.
	 * exemple:
	 * I18N.getFormatedText("categety", "key", param0, param1, param2, ...., paramN)
	 * dant le texte a trou de "key", il sera remplacé {0} par param0, {1} par param1,
	 * .., {N} par paramN
	 * concretement:
	 * "test": {
	 *      "test": "This is the {0} time I'm {1} today"
	 *  }
	 *  I18N.getFormatedText("test", "test", "7th", "eating") 
	 * affichera: "This is the 7th time I'm eating today"
	 * @see http://javascript.internet.com/miscellaneous/message-format.html
	 */
	getFormatedText : function (cat,str) {
	    var str;
	    var i=2;
	    if (I18N[cat] && I18N[cat][str]) str = I18N[cat][str];
	    while(i<arguments.length) str=str.replace("{"+(i-2)+"}",arguments[i++]);
	    return str;
	}
}

