//--------------------------------------------------------------------------------------------------------
//                                    Fonctions générales .:. verification .:. popups
//--------------------------------------------------------------------------------------------------------

//setInterval("window.status='NAUTILUS - FLUSTOURISMUS'",100);

window.onresize = fixmenu;

function fixmenu() {
	var n=navigator,uA=n.userAgent;
	IEmac=(uA.indexOf('Mac')>-1);
	if(IEmac) {
		self.location.reload();
	} else {
		setLyr(document.getElementById('menu'),idCalque);
	}
}

function verif_email(email_addr) {
	var modele = /^[-a-z0-9\._]+@[-a-z0-9\.]+\.[a-z]{2,4}$/i;
	if(modele.test(email_addr)) {
		return true;
	} else {
		return false;
	}
}

function verif_date(d) {
	var modele = /(0[1-9]|[12][0-9]|3[01])(\/|-)(0[1-9]|1[012])(\/|-)[12][0-9]{3}/;
	if(modele.test(d)) {
		return true;
	} else {
		return false;
	}
}

function verif_champtexte(obj, special) {
	if(obj.value.length==0 || obj.value==special) {
		return false;
	} else {
		return true;
	}
}

function verif_rb(obj) {
	var coche=false;
	var i;
	for(i=0;i<obj.length;i++) {
		if(obj[i].checked) {
			coche=obj[i].value;
		}
	}
	if(coche) {
		return coche;
	} else {
		return false;
	}
}

function verif_cb(obj) {
	if(obj.checked) {
		return true;
	} else {
		return false;
	}
}

function verif_list(obj) {
	if(obj.options.length>0) {
		return true;
	} else {
		return false;
	}
}

function verif_select(obj) {
	if(obj.value == 0) {
		return false;
	} else {
		return true;
	}
}

function centerPopup(w,h) {
	var leftPosition = (screen.width) ? (screen.width-w)/2 : 0;
	var topPosition = (screen.height) ? (screen.height-h)/2 : 0;
	var position = new Array(leftPosition, topPosition);
	return position;
}

function popup(page,largeur,hauteur,center,scrollb,resiz) {
	if(center) {
		var position = centerPopup(largeur,hauteur);
	} else {
		var position = new Array(50,50);
	}
	window.open(page,'_blank','width='+largeur+',height='+hauteur+',top='+position[1]+',left='+position[0]+',toolbar=0,location=0,directories=0,menuBar=0,scrollbars='+scrollb+',resizable='+resiz+'');
}


//--------------------------------------------------------------------------------------------------------
//                                    Fonctions menu + test inscription news 
//--------------------------------------------------------------------------------------------------------
var hide  = true;
var idCalque = "sousmenu";

function showhide(obj) {
	var x = new getObj(idCalque);
	hide = !hide;
	x.style.visibility = (hide) ? 'hidden' : 'visible';
	setLyr(obj,idCalque);
}

function setLyr(obj,lyr) {
	var newX = findPosX(obj);
	var newY = findPosY(obj);
	newY += 15;
	var n = navigator;
	var uA = n.userAgent;
	OPR = window.opera;
	IE = (uA.indexOf('MSIE')>-1&&!OPR);
	IEmac = (IE&&uA.indexOf('Mac')>-1);
	if(IEmac) {	
		newX += 23;
	} else {
		newX -= 22;
	}
	var x = new getObj(lyr);
	x.style.top = newY;
	x.style.left = newX;
}

function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}


function getObj(name)
{
 if (document.getElementById)
 {
	   this.obj = document.getElementById(name);
	   this.style = document.getElementById(name).style;
 }
 else if (document.all)
 {
	   this.obj = document.all[name];
	   this.style = document.all[name].style;
 }
 else if (document.layers)
 {
	   if (document.layers[name])
	   {
	   	this.obj = document.layers[name];
	   	this.style = document.layers[name];
	   }
	   else
	   {
	    this.obj = document.layers.idCalque.layers[name];
	    this.style = document.layers.idCalque.layers[name];
	   }
 }
}

function verif_news(obj) {
	//Le texte doit être le meme que celui qui s'affiche dans le champ sur le site
	if(obj.email.value!="Schreiben Sie hier Ihre e-mail Adresse") {
		return true;
	} else {
		return false;
		obj.email.value = "Schreiben Sie hier Ihre e-mail Adresse";
	}
}
//--------------------------------------------------------------------------------------------------------
//                                    Fonctions demande de brochures & tarifs
//--------------------------------------------------------------------------------------------------------
function addDoc() {
	var obj = document.formdoc;
	var index = obj.list1.selectedIndex;
    var newoption = new Option(obj.list1.options[index].text, obj.list1.options[index].value, true, true);
    obj.list2.options[obj.list2.length] = newoption;
}
function stripDoc() {
	var obj = document.formdoc;
	var index = obj.list2.selectedIndex;
	if(index != -1) {
		obj.list2.options[index] = null;
	}
}
function download(type) {
	var obj = document.formdoc;
	if(eval("obj."+type+".value") != 0) {
		if(langue=verif_rb(obj.languedoc)) {
			if(type=="tarifs") {
				if(devise=verif_rb(obj.devise)) {
					location = "download.php/?doc="+type+"_"+eval("obj."+type+".value")+"_"+langue+"_"+devise;
				} else {
					alert("Wählen Sie die von Ihnen gewünschte Währung...");
				}
			} else {
				location = "download.php/?type=brochure&fichier="+escape(eval("obj."+type+".value"))+"&langue="+langue;
			}
		} else {
			alert("Wählen Sie die Sprache aus, in der Sie das jeweilige Dokument erhalten möchten...");
		}
	}
}
function verif_formdoc(obj) {
	obj.prestataires.value = "";
	var erreur = "";
	if(!verif_cb(obj.brochures) && !verif_cb(obj.tarifs)) { erreur = "- Wählen Sie die Sprache aus, in der Sie das jeweilige Dokument erhalten möchten\n"; }
	if(!verif_cb(obj.fr) && !verif_cb(obj.de) && !verif_cb(obj.en) && !verif_cb(obj.it)) { erreur += "- Wählen Sie die Sprache aus, in der Sie das jeweilige Dokument erhalten möchten\n"; }
	if(verif_cb(obj.tarifs)) {
		if(!verif_cb(obj.euro) && !verif_cb(obj.chf)) {
			erreur += "- Wählen Sie die von Ihnen gewünschte Währung\n";
		}
	}
	if(!verif_list(obj.list2)) {
		erreur += "- Wählen Sie einen oder mehrere Bootsgesellschaften aus\n";
	} else {
		for(var i = 0; i < obj.list2.length; i++) 
			obj.prestataires.value += obj.list2.options[i].value + "|";
	}
	if(!verif_champtexte(obj.nom,"")) { erreur += "- Geben Sie Ihren Namen ein\n"; }
	if(!verif_champtexte(obj.prenom,"")) { erreur += "- Geben Sie Ihren Vornamen ein\n"; }
	if(!verif_champtexte(obj.adresse,"")) { erreur += "- Geben Sie Ihre Adresse ein\n"; }
	if(!verif_champtexte(obj.code_postal,"")) { erreur += "- Geben Sie die Postleitzahl ein\n"; }
	if(!verif_champtexte(obj.ville,"")) { erreur += "- Geben Sie die Stadt ein\n"; }
	if(!verif_champtexte(obj.email,"")) { erreur += "- Geben Sie Ihre e-mail Adresse ein\n"; }
	if(!verif_email(obj.email.value)) { erreur += "- Ihre e-mail Adresse ist nicht korrekt\n"; }
	if(erreur.length > 0) {
		alert(erreur);
		return false;
	} else {
		return true;
	}
}

function standardDoc(cb) {
	var obj = cb.form;
	if(cb.checked) {
		obj.list2.options[obj.list2.length] = new Option('Le Boat (Connoisseur/Crown Blue Line)','Le Boat',0,0);
		obj.list2.options[obj.list2.length] = new Option('Nicols','Nicols',0,0);
	} else {
		var tempList = new Array();
		for(var i=0;i<obj.list2.length;i++) {
			if(obj.list2.options[i].value != "Le Boat" && obj.list2.options[i].value != "Nicols") {
				tempList[tempList.length] = obj.list2.options[i];
			}
		}
		
		for(i=obj.list2.length; i > 0; i--) {
			obj.list2.options[i-1] = null;
		}
		for(i=0;i<tempList.length;i++) {
			//alert(tempList[i].value);
			obj.list2.options[i] = tempList[i];
		}
	}
}

//--------------------------------------------------------------------------------------------------------
//                                    Fonctions Choix d'un bateau/croisiere/favoris
//--------------------------------------------------------------------------------------------------------

function dispo() {
	var obj = document.favForm;
	if(obj.nbfav.value > 5) {
		alert("Beschränken Sie sich bitte auf 5 Favoriten, damit wir Ihre Anfrage die Verfügbarkeit der Boote betreffend präzis und schnell bearbeiten können");
	} else {
		obj.submit();
	}
}

function addToFavoris(idBateau,idLoueur,idPays,idRegion,idBase) {
	location = "addToFavoris.php?idBateau="+idBateau+"&idLoueur="+idLoueur+"&idPays="+idPays+"&idRegion="+idRegion+"&idBase="+idBase;
}

function removeFromFavoris(idBateau,idLoueur,idPays,idRegion,idBase) {
	location = "removeFromFavoris.php?idBateau="+idBateau+"&idLoueur="+idLoueur+"&idPays="+idPays+"&idRegion="+idRegion+"&idBase="+idBase;
}

function orderFavoris(from,to) {
	from = from.substr(5);
	//alert(from+":"+to);
	location = "orderFavoris.php?from="+from+"&to="+to;
}

function favoris(cb) {
	var tab = cb.value.split("_");
	var idBateau = tab[0];
	var idLoueur = tab[1];
	var idPays = tab[2];
	var idRegion = tab[3];
	var idBase = tab[4];
	if(cb.checked) {
		addToFavoris(idBateau,idLoueur,idPays,idRegion,idBase);
	} else {
		removeFromFavoris(idBateau,idLoueur,idPays,idRegion,idBase);
	}
}

function changePays(pays,idr,cat,np,idb) {
	location = "start.php?page=croisiere2&country="+pays+"&idr="+idr+"&cat="+cat+"&np="+np+"&idb="+idb;
}

function listToText(obj) {
	var sI = obj.list_bateau.selectedIndex;
	obj.nomBateau.value = obj.list_bateau.options[sI].text;
	obj.idb.value = obj.list_bateau.options[sI].value;
	document.getElementById("div_list_bateau").style.display = "none";
}

function update_list(obj) {
	var myList = obj.list_bateau;
	var myChars = obj.nomBateau.value.toLowerCase();
	if(myChars != "") {
		//vide la liste	
		var lengthList = myList.options.length;
		for(var i=0; i<lengthList; i++) {
			myList.options[lengthList-i-1] = null;
		}
		modele=eval("/^"+myChars+"/");
		var vide = true;
		for(i=0;i<text.length;i++) {
			if(modele.test(text[i].toLowerCase())) {
				myList.options[myList.length] = new Option(text[i], value[i], false, false);
				vide = false;
			}
		}
		if(vide) {
			document.getElementById("div_list_bateau").style.display = "none";
			
		} else {
			document.getElementById("div_list_bateau").style.display = "block";
		}
	} else {
		document.getElementById("div_list_bateau").style.display = "none";
		obj.idb.value="0"
	}
}


if (!document.layers&&!document.all&&!document.getElementById) { event="test" };

function showtip(current,e,text) {
	if (document.all||document.getElementById) {
		thetitle=text.split('<br>');
		if (thetitle.length>1) {
			thetitles='';
			for (i=0;i<thetitle.length;i++) {
				thetitles+=thetitle[i];
			}
			current.title=thetitles;
		} else {
			current.title=text;
		}
	} else if (document.layers) {
		document.tooltip.document.write('<layer bgColor="#99CCFF" style="border:1px solid black;font-size:12px;">'+text+'</layer>');
		document.tooltip.document.close();
		document.tooltip.left=e.pageX+5;
		document.tooltip.top=e.pageY+5
		document.tooltip.visibility="show";
	}
}
function hidetip(){
	if (document.layers) {
		document.tooltip.visibility="hidden";
	}
}

function critSearch() {
	var obj = document.critForm;
	var idr = obj.idr.value;
	var cat = obj.cat.value;
	var np = obj.np.value;
	var idb = obj.idb.value;
	var country = obj.country.value;
	location = "start.php?page=croisiere3&country="+country+"&idr="+idr+"&cat="+cat+"&np="+np+"&idb="+idb;
}

function affine_region(country,cat,np,idb) {
	var idr = document.affineForm.affine_select.value;
	location = "start.php?page=croisiere3&country="+country+"&idr="+idr+"&cat="+cat+"&np="+np+"&idb="+idb;
}

function affine_base(country,idr,cat,np,idb) {
	var idbase = document.affineForm.affine_select.value;
	location = "start.php?page=croisiere3&country="+country+"&idr="+idr+"&idbase="+idbase+"&cat="+cat+"&np="+np+"&idb="+idb;
}
//--------------------------------------------------------------------------------------------------------
//                                    Fonctions Voir tous nos bateaux
//--------------------------------------------------------------------------------------------------------

function changeBateau(loueur,bateau) {
	location = "start.php?page=bateaux&idp="+loueur+"&idb="+bateau;
}

function zoom(bateau,id_image) {
	largeur = 500;
	hauteur = 375;
	var position = centerPopup(largeur,hauteur);
	window.open('zoom.php?bateau='+escape(bateau)+'&id_image='+id_image,'_blank','width='+largeur+' ,height='+hauteur+',left='+position[0]+',top='+position[1]+',toolbar=0,location=0,directories=0,menuBar=0,scrollbars=0,resizable=1');
}


function zoomSWF(bateau,movie) {
	var html = '<HTML><HEAD><TITLE>Nautilus - '+bateau+'</TITLE></HEAD><BODY LEFTMARGIN="0" MARGINWIDTH="0" TOPMARGIN="0" MARGINHEIGHT="0"><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="400" height="335"><param name="movie" value="'+movie+'"><param name="quality" value="high"><embed src="'+movie+'" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="300"></embed></object>';
	var largeur = 400;
	var hauteur = 335;
	var position = centerPopup(largeur,hauteur);
	popupImage = window.open('','_blank','width='+largeur+',height='+hauteur+',left='+position[0]+',top='+position[1]+',toolbar=0,location=0,directories=0,menuBar=0,scrollbars=0,resizable=0');
	popupImage.document.open();
	popupImage.document.write(html);
	popupImage.document.close();

}

//--------------------------------------------------------------------------------------------------------
//                                    Fonctions Formulaire de contact
//--------------------------------------------------------------------------------------------------------

function verifContact(obj) {
	var erreur = "";
	if(!verif_champtexte(obj.nom,"")) { erreur += "- Geben Sie Ihren Namen ein\n"; }
	if(!verif_champtexte(obj.prenom,"")) { erreur += "- Geben Sie Ihren Vornamen ein\n"; }
	if(!verif_champtexte(obj.adresse,"")) { erreur += "- Geben Sie Ihre Adresse ein\n"; }
	if(!verif_champtexte(obj.code_postal,"")) { erreur += "- Geben Sie die Postleitzahl ein\n"; }
	if(!verif_champtexte(obj.ville,"")) { erreur += "- Geben Sie die Stadt ein\n"; }
	if(!verif_champtexte(obj.email,"")) { erreur += "- Geben Sie Ihre e-mail Adresse ein\n"; }
	if(!verif_champtexte(obj.commentaires,"")) { erreur += "- Geben Sie Ihre Nachricht ein\n"; }
	if(!verif_email(obj.email.value)) { erreur += "- Ihre e-mail Adresse ist nicht korrekt\n"; }
	if(erreur.length > 0) {
		alert(erreur);
		return false;
	} else {
		return true;
	}
}
//--------------------------------------------------------------------------------------------------------
//                                    Fonctions en-tete Rechercher un bateau
//--------------------------------------------------------------------------------------------------------

function searchBoat() {
	var q = document.forms["boatSearch"].q;
	if(q.value != "\\" && q.value != "Name des Bootes?") {
		window.location = "start.php?page=search&q="+escape(q.value);
	} else {
		q.value = "Name des Bootes?";
	}
}
//--------------------------------------------------------------------------------------------------------
//                                    Fonctions formulaire de demande de disponibilite
//--------------------------------------------------------------------------------------------------------
function updateDispoForm(field,formu) {
	var queryString = "";
	if(updateDispoForm.arguments[2]) {
		queryString = "&idp="+updateDispoForm.arguments[2]+"&idb="+updateDispoForm.arguments[3];
	}
	var obj = eval("document.dispoForm"+formu);
	var queryString;
	var country = obj.country.value;
	var idr = obj.idr.value;
	var idbase = obj.idbase.value;
	switch(field) {
		case "pays":
			queryString += "&country="+country;break;
		case "region":
			queryString += "&country="+country+"&idr="+idr;break;
		case "base":
			queryString += "&country="+country+"&idr="+idr+"&idbase="+idbase;break;
	}
	location = "start.php?page=demande"+formu+queryString;
}

function dest(obj) {
	if(obj.value == "AS") {
		document.getElementById("dest").style.display = "block";
	} else {
		document.getElementById("dest").style.display = "none";
	}
}

function verifDispoForm(obj) {
	var erreur = "";
	//Verification dépendante du type de form
	if(obj.name == "dispoForm1") {
		if(!verif_select(obj.country)) erreur += "- Wählen Sie das Land, wo Sie Ihre Hausbootferien verbringen möchten\n";
		if(!verif_select(obj.idr)) erreur += "- Wählen Sie das Region, wo Sie Ihre Hausbootferien verbringen möchten\n";
		if(!verif_select(obj.idb)) erreur += "- Sie müssen ein Boot für Ihre Hausbootferien aussuchen\n";
	}
	//verification communes aux 3 types de form

	if(!verif_date(obj.depart.value)) erreur += "- Sie müssen Ihr Abreisedatum eingeben\n";
	if(!verif_date(obj.arrivee.value)) erreur += "- Sie müssen Ihr Rückkehrdatum angeben\n";

	if(!verif_rb(obj.civi)) erreur += "- Bitte Anrede markieren \n";	
	if(!verif_champtexte(obj.nom,'')) erreur += "- Geben Sie Ihren Namen ein\n";
	if(!verif_champtexte(obj.prenom,'')) erreur += "- Geben Sie Ihren Vornamen ein\n";

	if(!verif_champtexte(obj.email,'')) {
		erreur += "- Geben Sie Ihre e-mail Adresse ein\n";
	} else {
		if(!verif_email(obj.email.value)) erreur += "- Ihre e-mail Adresse ist nicht korrekt\n";
	}

	//if(!verif_champtexte(obj.age,'')) erreur += "- Sie müssen Alter\n";
	if(!verif_champtexte(obj.adresse,'')) erreur += "- Geben Sie Ihre Adresse ein\n";
	if(!verif_champtexte(obj.cp,'')) erreur += "- Geben Sie die Postleitzahl ein\n";
	if(!verif_champtexte(obj.ville,'')) erreur += "- Geben Sie die Stadt ein\n";
	if(!verif_champtexte(obj.pays,'')) erreur += "- Sie müssen Land angeben\n";
	if(!verif_champtexte(obj.adultes,'')) erreur += "- Sie müssen die Anzahl der mitfahrenden Personen angeben\n";
	if(!verif_champtexte(obj.enfants,'')) erreur += "- Sie müssen die Anzahl der mitfahrenden Kinder angeben\n";
	if(!verif_champtexte(obj.animo,'')) erreur += "- Sie müssen die Anzahl Haustiere angeben\n";
	if(!verif_rb(obj.conn)) {
		erreur += "- Bitte geben Sie an, wie Sie NAUTILUS kennengelernt haben\n";
	} else {
		for(i=0;i<obj.conn.length;i++) {
			if(obj.conn[i].checked) {
				var coche = obj.conn[i].value;
			}
		}
		if(coche == "Presse") {
			if(!verif_champtexte(obj.presse,'')) erreur += "- Sie müssen den Namen der Zeitung eingeben\n";
		}
		if(coche == "Autre") {
			if(!verif_champtexte(obj.autre,'')) erreur += "- Sie müssen angeben, über welchen anderen Kanal Sie NAUTILUS kennengelernt haben\n";
		}
	}
	
	if(erreur!="") {
		alert(erreur);
		return false;
	} else {
		return true;
	}
}

//--------------------------------------------------------------------------------------------------------
//                                    Fonctions pages de paiement
//--------------------------------------------------------------------------------------------------------

function paymentMeans(show, hide) {
	document.getElementById(show).style.display = "block";
	document.getElementById(hide).style.display = "none";
}

