/*________________________________________________________________________________ ma Classe de base : */
function clubMedGolf(action,params){
	this.action = action;
	this.params = params;
	_this = this;
}
clubMedGolf.prototype = {
	executeAction: function(){
		switch (this.action){
			case "search":	
				new Ajax(this.params.urlTpl, {				
					method: 'get',
					onComplete: function(data) {
						var dateDep = "";
						try{
							if(_this.params.DATE_DEPART[1] != ""){
								var dateDep = _this.params.DATE_DEPART[1].split('/');
								dateDep = dateDep[2]+"-"+dateDep[1]+"-"+dateDep[0];
								var params = {
									dataFromTPL : data,
									urlXml : _this.params.urlXml.replace('__DATEDEP__',dateDep),
									//urlXml : _this.params.urlXml+"&DATEDEP="+dateDep,
									tag : _this.params.tag,
									func : 'getVillages',
									className : 'clubMedGolfSearch',
									params : _this.params
								}
								var clubMedGolfSearchInstance = new clubMedGolfSearch(params)
								clubMedGolfSearchInstance.getDispo();
							}else{
								var params = {
									dataFromTPL : data,
									//urlXml : _this.params.racin+'/xml/xml.jsp?type=rmc',
									urlXml : _this.params.racin+'/xml/xml_recherche.xml',
									tag : 'villages',
									func : 'myResult',
									className : 'clubMedGolfSearch',
									params : _this.params
								}
								var clubMedGolfSearchInstance = new clubMedGolfSearch(params)
								clubMedGolfSearchInstance.getVillages();						
							}
						}catch(e){
							var params = {
								dataFromTPL : data,
								//urlXml : _this.params.racin+'/xml/xml.jsp?type=rmc',
								urlXml : _this.params.racin+'/xml/xml_recherche.xml',
								tag : 'villages',
								func : 'myResult',
								className : 'clubMedGolfSearch',
								params : _this.params
							}
							var clubMedGolfSearchInstance = new clubMedGolfSearch(params)
							clubMedGolfSearchInstance.getVillages();	
						}
					}
				}).request();
				break;	

			case "inscription":				
				var clubMedNewsletterInstance = new clubMedNewsletter(this.params)
				clubMedNewsletterInstance.subscription();
				break;
			case "reservation":
				var clubMedGolfSearchInstance = new clubMedGolfSearch(this.params)
				clubMedGolfSearchInstance.reservation();
				break;
			case "parcours":
				new Ajax(this.params.urlTpl, {				
					method: 'get',
					onComplete: function(data) {
						var params = {
							dataFromTPL : data,
							urlXml : _this.params.urlXml,
							tag : _this.params.tag,
							func : 'parcours',
							className : 'clubMedGolfParcours',
							params : _this.params
						}
						var clubMedGolfParcoursInstance = new clubMedGolfParcours(params)
						clubMedGolfParcoursInstance.getParcours();						
					}
				}).request();
				break;
			case "village":
				new Ajax(this.params.urlTpl, {				
					method: 'get',
					onComplete: function(data) {
						var params = {
							dataFromTPL : data,
							urlXml : _this.params.urlXml,
							tag : _this.params.tag,
							func : 'village',
							className : 'clubMedGolfVillage',
							params : _this.params
						}
						var clubMedGolfVillageInstance = new clubMedGolfVillage(params)
						clubMedGolfVillageInstance.getVillage();						
					}
				}).request();
				break;
				case "popUpParcours":
				new Ajax(this.params.urlTpl, {				
					method: 'get',
					onComplete: function(data) {
						var params = {
							dataFromTPL : data,
							urlXml : _this.params.urlXml,
							tag : _this.params.tag,
							func : 'popUpParcours',
							className : 'clubMedGolfParcours',
							params : _this.params
						}
						var clubMedGolfParcoursInstance = new clubMedGolfParcours(params)
						clubMedGolfParcoursInstance.getParcours();							
					}
				}).request();
				break;
				case "popupEnseignement":
				new Ajax(this.params.urlTpl, {				
					method: 'get',
					onComplete: function(data) {
						var params = {
							dataFromTPL : data,
							urlXml : _this.params.urlXml,
							tag : _this.params.tag,
							func : 'popupEnseignement',
							className : 'clubMedGolfParcours',
							params : _this.params
						}
						var clubMedGolfParcoursInstance = new clubMedGolfParcours(params)
						clubMedGolfParcoursInstance.getParcours();							
					}
				}).request();
				break;
				case "destination":
					var fromXmlToParamsInstance = new fromXmlToParams(this.params)
					fromXmlToParamsInstance.importXML();
					
				break;
			default:
				break;
		}
	},
	loadPage : function(){
		new Ajax(this.params.url, {
			method: 'get',
			onComplete: function(data) {
				_this.showTemplate(data);	
			}
		}).request();
	},
	showTemplate : function(data){
		$("partyCdynamicContent").setHTML(data);
		generateElements('all');
	}
}
window.addEvent('domready',function(){
	/*--------------------------------------------------------------------------**/
	MaDateFin = {
		annee : "2999",
		mois : "11",
		jour : "31"
	}
	MaDateDebut = {
		annee : "1000",
		mois : "0",
		jour : "1"
	}
	/*--------------------------------------------------------------------------**/
		bgAleatoire();
	/*--------------------------------------------------------------------------**/
	if($defined($("clubMedContent"))){
		if(window.ie6)
			$("clubMedContent").addClass("IS_IE6");
		else if(window.ie7){
			$("clubMedContent").addClass("IS_IE7");
			$("clubMedContent").addClass("Not_IE6");
		}
		else if(window.gecko){
			$("clubMedContent").addClass("FF");
			$("clubMedContent").addClass("Not_IE6");
		}
		else{
			$("clubMedContent").addClass("Not_IE6");
			$("clubMedContent").addClass("Not_IE_FF");
		}
	}	
	/*--------------------------------------------------------------------------**/
		setResizeLine();
	/*--------------------------------------------------------------------------**/
		offreAvantagePub();
	/*--------------------------------------------------------------------------**/
		activiterPourTousPub();
	/*--------------------------------------------------------------------------**/
		ameliorezVotreIndexPub();
	/*--------------------------------------------------------------------------**/
		countPerson();
	/*--------------------------------------------------------------------------**/
	addEventToMyDestination();
	/*--------------------------------------------------------------------------**/

});

function countPerson(){
if($defined($ES('#fieldnbAdultes')[0])){
	$ES("#fieldnbAdultes")[0].addEvent('change',function(){
		var nbr = $ES("#fieldnbAdultes").getValue();
			if(nbr == "1" ||nbr == "2" ||nbr == "3" ||nbr == "4" ||nbr == "5" ||nbr == "6"){
			var option = "";
			for(j=0;j<7-nbr;j++){
				option += '<option value="'+j+'">'+j+'</option>';
			}
				$ES("#NB_ENFANT").setHTML('<select id="fieldnbEnfants" onchange="addDateNaissance1();" class="obligatoryField wSelect2 floatL">'+option+'</select>');
				addDateNaissance1();
			}
	});
}
}
function addEventToMyDestination(){
	if($defined($ES("#fieldvillage")[0])){
		$ES("#fieldvillage")[0].getProperty('onchange','');
		if($defined($ES('#fieldvillage')[0])){
			$ES("#fieldvillage")[0].addEvent('change',function(){
				getMyDestination();
			});
		}
	}
}
function countPersonRMC(){	
		var nbr = $ES("#fieldNB_ADULTE").getValue();
			if(nbr == "1" ||nbr == "2" ||nbr == "3" ||nbr == "4" ||nbr == "5" ||nbr == "6"){
			var option = "";
			for(j=0;j<7-nbr;j++){
				option += '<option value="'+j+'">'+j+'</option>';
			}
				$ES(".fieldNB_ENFANT").setHTML('<select class="optionalField wSelect2 floatL" onchange="addDateNaissance();" id="fieldNB_ENFANT">'+option+'</select>');
				
				addDateNaissance();
			}		
}

window.addEvent('load',function(){
	params = "";
	if(typeof(window['myParameter']) != "undefined"){
		if(myParameter.indexOf('village') !=-1){
			var params = {
				func : "generateVillage",
				parameter : myParameter
			}
		}else{
			var params = {
				func : "generateParcours",
				parameter : myParameter
			}
		}
	}
	if($defined($ES('#fieldvilleDepart')[0])){
		getMyDestination('AGAC',params);
	}
});
function setResizeLine(x){
	if($defined($ES('#MyLINE')[0])){
		var xE1 = $ES('#MyLINE')[0].getPosition().x;
		var xE2 = $ES('#clubMedVertivcaleAutre')[0].getPosition().x;
		if(x == 1) X = xE2-(xE1+20+(20*$ES('.villageTrident').length));
		else X = xE2-(xE1+20);
		$ES('#MyLINE').setStyle("width",X+"px");
		var obj =$ES('#MyLINE').getProperty('class').toString();
		if(obj.indexOf('MyLINE') != -1){
			$ES('#MyLINE').addClass("floatR");
		}
		else $ES('#MyLINE').addClass("floatR rMargin");
	}
	if($defined($ES('#MyLinePopupParcours')[0])){
		var xE1 = $ES('#MyLinePopupParcours')[0].getPosition().x;
		X = 372-xE1;
		$ES('#MyLinePopupParcours')[0].setStyle("width",X+"px");
		if(window.ie)
		$ES('#MyLinePopupParcours')[0].setStyle("margin-top","5px");
	}
}
function setHeightGreenFessVillage(){
	if($defined($ES('#greenFees')[0])){
		var xE1 = $ES('#greenFees')[0].getPosition().y;
		if(planParcoursExiste == false)var xE2 = $ES('#partyCdynamicContent')[0].getPosition().y+510;
		else var xE2 = $ES('#partyCdynamicContent')[0].getPosition().y+495;
		X = xE2-xE1
		$ES('#greenFees').setStyle("height",X+"px");
		X1 = X-55;
		if(blockGreenFeesDetail1==true && blockGreenFeesDetail2==true )
			$ES('#blockGreenFees').setStyle("height",X1+"px");
		else
			$ES('#blockGreenFees').setStyle("height",(X1/2)+20+"px");
	}
}
window.addEvent('resize',function(){
	bgSize();
});
function offreAvantagePub(){
	var nbrPhotos = 4;
	n = Math.floor(Math.random() * nbrPhotos)+1;
	if($defined($ES('#Pub1 a img')[0])){
		var mySrc = $ES('#Pub1 a img')[0].getProperty('src');
		mySrc = mySrc.replace('pub_1','pubOA_'+n);
		$ES('#Pub1 a img')[0].setProperty('src',mySrc);
	}else if($defined($ES('#Pub1_1 a img')[0])){
		var mySrc = $ES('#Pub1_1 a img')[0].getProperty('src');
		mySrc = mySrc.replace('pub_1_1','pubOA_1_'+n);
		$ES('#Pub1_1 a img')[0].setProperty('src',mySrc);
	}
}
function activiterPourTousPub(){
	var nbrPhotos = 4;
	n = Math.floor(Math.random() * nbrPhotos)+1;
	if($defined($ES('#Pub2 a img')[0])){
		var mySrc = $ES('#Pub2 a img')[0].getProperty('src');
		mySrc = mySrc.replace('pub_2','pubAPT_'+n);
		$ES('#Pub2 a img')[0].setProperty('src',mySrc);
	}
}
function ameliorezVotreIndexPub(){
	var nbrPhotos = 2;
	n = Math.floor(Math.random() * nbrPhotos)+1;
	if($defined($ES('#pubEnseignement')[0])){
		var mySrc = $ES('#pubEnseignement')[0].getProperty('src');
		mySrc = mySrc.replace('pub_4','pubEnseignement_'+n);
		$ES('#pubEnseignement')[0].setProperty('src',mySrc);
	}
}
function bgAleatoire(){
	if($defined($ES("#clubMedContent")[0])){
		var nbrPhotos = 6;
		n = Math.floor(Math.random() * nbrPhotos)+1;
		bg_1600 = 'bg1600_'+n;
		bg_1400 = 'bg1024_'+n;
		bg_800 = 'bg800_'+n;
		$ES("body")[0].setProperty("class","");
		if(window.getSize().size.x <= 1024){
			$ES("#clubMedContent").removeClass(bg_1400);	
			$ES("#clubMedContent").addClass(bg_1400);	
			$ES("body").addClass(bg_1400);
			$ES('#clubMedContentBg').setStyle("margin-top","0px");
			$ES("#bgSmall").getElement('img').setProperty('src', './img/'+bg_800+'.jpg');
		}
		else{
		var maClass = $ES("#clubMedContent")[0].getProperty('class');
		for(i=1;i<=nbrPhotos;i++){
			var maClass = maClass.replace('bg1024_'+i,'');
		}
			$ES("#clubMedContent").setProperty("class",maClass);
			$ES("#clubMedContent").addClass(bg_1400);
			$ES("body").addClass(bg_1600);
			$ES("#bgSmall").getElement('img').setProperty('src', './img/'+bg_800+'.jpg');
		}
		yW = window.getSize().size.y
		y = (yW-623)/2;
		if(yW >= 623) $ES('#clubMedContentBg').setStyle("margin-top",y+"px");
}
}
function bgSize(){
	if($defined($ES("#clubMedContent")[0])){
		n = $ES("body")[0].className.replace('bg1600_','').replace('bg1024_','');
		bg_1600 = 'bg1600_'+n;
		bg_1400 = 'bg1024_'+n;
		$ES("body")[0].setProperty("class","");
		if(window.getSize().size.x <= 1024){
			$ES("#clubMedContent").removeClass(bg_1400);	
			$ES("#clubMedContent").addClass(bg_1400);
			$ES("body").addClass(bg_1400);			
			$ES('#clubMedContentBg').setStyle("margin-top","0px");
		}
		else{
		var maClass = $ES("#clubMedContent")[0].getProperty('class');
		var maClass = maClass.replace('bg1024_'+n,'');

			$ES("#clubMedContent").setProperty("class",maClass);
			$ES("#clubMedContent").addClass(bg_1400);
			$ES("body").addClass(bg_1600);
		}
		yW = window.getSize().size.y
		y = (yW-623)/2;
		if(yW >= 623) $ES('#clubMedContentBg').setStyle("margin-top",y+"px");
	}
}