var offers_object = { 

init : function(){
	this.menuHub();
	var listeSlideshows = $$('.slideshow');
		if(listeSlideshows && listeSlideshows.length > 0){
			listeSlideshows.each(function(element){
				if(typeof(carrousels) != "undefined"){
					if(carrousels[element.id]){	
						if(element.hasClassName('vertical'))
							element.slidehow = new SlideShow(element, carrousels[element.id], 'vertical');
						else
							element.slidehow = new SlideShow(element, carrousels[element.id]);
					}
				}
			}); 
		}
	this.rewriteChouchouNights();
	},

devisea : function() {	
	var JSONdevise = "/hotel-cms/taux/taux.js";
	var codepays = getCookie("userLocalization");
		if (addTemplateToPage) {
			addTemplateToPage({
				'url': JSONdevise,
				'code_pays': codepays,
				'type': 'listdev',
				'insertTo' : 's_devise'
			});
		}
	},
		
popin : function(div, link){
    	var width = 400;
    	var height = 270;
    	
    	if(div && div != null)
    		DivPopup.openPopup('cgv',width,height,$(div),null);
    	else if(link && link != null)
    		DivPopup.openPopup('cgv',width,height,null,link);
    },
	
rewriteChouchouNights : function(){
    	if($('booking_min_stay') && $('booking_max_stay') && $('nb_nuit')){
    		if($('booking_min_stay').value != '' && $('booking_max_stay').value != ''){
    			var j=0
    			var min = Number($('booking_min_stay').value);
    			var max = Number($('booking_max_stay').value);

					var selectElement	= $('nb_nuit');
					if (selectElement) {
						selectElement.options.length=0;
						if(min==0 && max==0){
							selectElement[0]=new Option("--", "");
						} else {
							selectElement[0]=new Option("--", "");
							for(var i=0; i<max-min+1; i++)
								selectElement[i+1]=new Option(min+i, min+i);
						}
					}
    		}
    	}
    },
	
menuHub : function(){
if(!$('menus-promo')) return false;
	$('menus-promo').childElements().each(function(elt){
		if(elt.readAttribute("class") == "on") {
			elt.childElements().each(function(elt){
				var $activMenu = elt.readAttribute("class");
				$('sortcontainer').childElements().each(function(elt){	
				if(elt.nodeName == "DIV"){
					if(elt.readAttribute("class") == "container "+$activMenu || elt.readAttribute("class") == "container last "+$activMenu) {
						elt.show();
						$$('div.'+$activMenu+'').last().setStyle({border: 0 });

					}else{
						elt.hide();
					}
					}
				})
				return false;
			})
		}
		$(elt).childElements().each(function(elt){
			var $classElement = elt.readAttribute("class");
				$(elt).observe('click', function(event){
				$(elt).parentNode.siblings().each(function(elt){
					elt.removeClassName('on');
				});
					 $(elt).parentNode.addClassName('on');
						var $elmClass = elt.readAttribute("class");					
						var $eleClass = "container "+$elmClass;	
						var $eleClassLast = "container last "+$elmClass;	
						$('sortcontainer').childElements().each(function(elt){
						if(elt.nodeName == "DIV"){
						if(elt.readAttribute("class") == $eleClass || elt.readAttribute("class") == $eleClassLast){
							elt.show();
							$$('div.'+$elmClass+'').last().setStyle({border: 0 });
							
						}else {
						elt.hide();
						}
					}
				});
			
				return false;
			
		});
 
	});

});

	},
	
	checkOfferForm : function(isAClub) {
		var checkSubmit = true;

		// Retrieve current language
		var currentLanguage = 'en';
		var htmlTag = document.getElementsByTagName("html")[0];
		if(htmlTag.attributes["xml:lang"] && htmlTag.attributes["xml:lang"].value)
			currentLanguage = htmlTag.attributes["xml:lang"].value;
		else if(htmlTag.attributes["lang"] && htmlTag.attributes["lang"].value)
			currentLanguage = htmlTag.attributes["lang"].value;
		
		// Reset error messages
		$$('form[name="bookingEngine"] label[for="hotel_ou_ville"]')[0].removeClassName('label_ko');
		$$('form[name="bookingEngine"] label[for="arrivee"]')[0].removeClassName('label_ko');
		$$('form[name="bookingEngine"] label[for="nb_nuit"]')[0].removeClassName('label_ko');
		$$('form[name="bookingEngine"] label[for="num_carte_fidelite"]')[0].removeClassName('label_ko');
		
		// Check user input data (destination always mandatory - if aclub offer, dates & card also mandatory)
		if ($('hotel_ou_ville').value == '') {
			$$('form[name="bookingEngine"] label[for="hotel_ou_ville"]')[0].addClassName('label_ko');
			checkSubmit = false;
		}
		if (isAClub) {
			if ($('arrivee').value == '') {
				$$('form[name="bookingEngine"] label[for="arrivee"]')[0].addClassName('label_ko');
				checkSubmit = false;
			}
			if ($('nb_nuit').value == '') {
				$$('form[name="bookingEngine"] label[for="nb_nuit"]')[0].addClassName('label_ko');
				checkSubmit = false;
			}
			if ($('type_carte_fidelite').value == '') {
				$$('form[name="bookingEngine"] label[for="type_carte_fidelite"]')[0].addClassName('label_ko');
				checkSubmit = false;
			}
			if ($('num_carte_fidelite').value == '') {
				$$('form[name="bookingEngine"] label[for="num_carte_fidelite"]')[0].addClassName('label_ko');
				checkSubmit = false;
			}
		}
		
		if(!checkSubmit) {
			$('errorMessage').innerHTML = I18N._('profil.errors', 'generic.error.validation');
			$('errorMessage').style.display = 'block';
		}
		else {
			$('errorMessage').style.display = 'none';
			$('errorMessage').innerHTML = '';
			
			// Submit				
			$$('form[name="bookingEngine"]')[0].action = '/beginSubCro.svlt';
			$$('form[name="bookingEngine"]')[0].submit();
		}
	}
}

Event.observe(window, 'load', function(){
    offers_object.init();
	offers_object.devisea();
});
