var sendInfosCB = function(result)
{
	if( trackSqlError( result ) )
	{
		if( result == "-2" )
			alert( "L'adresse email que vous avez indiqué est déjà utilisée !");
		else
			alert("Modifications effectuées !");
	}
}

var changeMdpCB = function(result)
{
	if( trackSqlError( result ) )
	{
		if( result == '0' )
			alert("Mot de passe incorrect !");
		else
			alert("Votre mot de passe a bien été modifié !");
	}
}

var compte_form = function()
{
	var id, left, top, width, height, back;
	var isPlaying;
	var contained;
	var formXHR;
	
	var titre, nom, prenom, adresse, postal, ville, pays, email, news, jour, mois, annee;
	var titreNode, nomNode, prenomNode, adresseNode, postalNode, villeNode, paysNode, emailNode, newsNode, jourNode, moisNode, anneeNode, passNode, newPassNode, repassNode;
	var bSendInfos, bSendPass;
	
	this.start = function( node )
	{
		isPlaying = false;
		
		formXHR = initXHR();
		
		id = node.getAttribute('id');
		left = parseInt(node.getAttribute('left'));
		top = parseInt(node.getAttribute('top'));
		width = parseInt(node.getAttribute('width'));
		height = parseInt(node.getAttribute('height'));
		back = node.getAttribute('back');
		
		if( connected )
			ajaxRequest( "././php/getInfos.php", formXHR, this.loadingDone, "" );
		else
		{
			if( back != "" )
			{
				var preload = new Image();
				preload.onload = makeNextObject;
				preload.src = back;
			}
			else makeNextObject();
		}
	}
	
	this.loadingDone = function( result )
	{
		if( trackSqlError( result ) )
		{
			values = result.split("&");
			titre = values[1];
			prenom = values[2];
			nom = values[3];
			adresse = values[4];
			postal = values[5];
			ville = values[6];
			pays = values[7];
			email = values[8];
			news = values[9];
			
			// Naissance
			nai = values[10].split("-");
			annee = nai[0];
			mois = nai[1];
			jour = nai[2];
		}
		
		if( back != "" )
		{
			var preload = new Image();
			preload.onload = makeNextObject;
			preload.src = back;
		}
		else makeNextObject();
	}

	this.play = function( parent )
	{	
		if( isPlaying == false )
		{
			contained = document.createElement("div");

			contained.setAttribute("id", id);

			contained.style.top = top + "px";
			contained.style.left = left + "px";
			contained.style.width = width + "px";
			contained.style.height = height + "px";
			contained.style.position = "absolute";
			contained.style.background = "url('" + back + "')";
			contained.style.backgroundRepeat = "no-repeat";
			
			// Form contained
			var formContained = document.createElement("div");
			formContained.style.left = "40px";
			formContained.style.top = "20px";
			formContained.style.color = "#0B0B64";
			formContained.style.position = "absolute";
			formContained.style.fontWeight = "bold";
			
			if( connected )
			{
				// Titre
				var titreNode = document.createElement("select");
				var option1 = document.createElement("option");
				var option1_txt = document.createTextNode("Mr");
				option1.value = "0";
				option1.appendChild(option1_txt);
				titreNode.appendChild(option1);
				var option2 = document.createElement("option");
				var option2_txt = document.createTextNode("Mme");
				option2.value = "1";
				option2.appendChild(option2_txt);
				titreNode.appendChild(option2);
				var option3 = document.createElement("option");
				var option3_txt = document.createTextNode("Mlle");
				option3.value = "2";
				option3.appendChild(option3_txt);
				titreNode.appendChild(option3);
				titreNode.selectedIndex = titre;
				
				// Nom
				var txt1 = document.createTextNode(" Nom (*) : ");
				
				var nomNode = document.createElement("input");
				nomNode.type = "text";
				nomNode.style.width = "78px";
				nomNode.value = nom;
				
				// Prenom
				var txt2 = document.createTextNode(" Prénom (*) : ");
				
				var prenomNode = document.createElement("input");
				prenomNode.type = "text";
				prenomNode.style.width = "78px";
				prenomNode.value = prenom;
				
				var br1 = document.createElement("br");
				var br2 = document.createElement("br");
				
				// Adresse
				var txt3 = document.createTextNode(" Adresse : ");
				
				var adresseNode = document.createElement("input");
				adresseNode.style.left = "92px";
				adresseNode.style.position = "absolute";
				adresseNode.type = "text";
				adresseNode.style.width = "292px";
				adresseNode.value = adresse;
				
				var br3 = document.createElement("br");
				
				// Code postal
				var txt4 = document.createTextNode(" Code postal : ");
				
				var postalNode = document.createElement("input");
				postalNode.type = "text";
				postalNode.style.width = "40px";
				postalNode.value = postal;
				
				// Ville
				var txt5 = document.createTextNode(" Ville : ");
				
				var villeNode = document.createElement("input");
				villeNode.type = "text";
				villeNode.style.width = "76px";
				villeNode.value = ville;
				
				// Pays
				var txt6 = document.createTextNode(" Pays : ");
				
				var paysNode = document.createElement("input");
				paysNode.type = "text";
				paysNode.style.width = "70px";
				paysNode.value = pays;
				
				var br4 = document.createElement("br");
				var br5 = document.createElement("br");
				
				// Email
				var txt7 = document.createTextNode(" Email : ");
				
				var emailNode = document.createElement("input");
				emailNode.style.left = "92px";
				emailNode.style.position = "absolute";
				emailNode.type = "text";
				emailNode.style.width = "292px";
				emailNode.value = email;
				
				var br6 = document.createElement("br");
				br6.style.marginTop = "4px";
				
				// Newsletter
				var txt8 = document.createTextNode(" Cochez pour recevoir les nouveautés par email : ");
				
				var newsNode = document.createElement("input");
				newsNode.type = "checkbox";
				
				var br7 = document.createElement("br");
				var br8 = document.createElement("br");
				
				// Date de naissance
				var txt9 = document.createTextNode(" Date de naissance (*) : ");
				
				var jourNode = document.createElement("select");
				var j = 0;
				while( j < 32 )
				{
					var jopt = document.createElement("option");
					var jopt_txt = null;
					if( j < 10 )
						jopt_txt = document.createTextNode("0" + j);
					else
						jopt_txt = document.createTextNode(j);
					jopt.value = j;
					jopt.appendChild(jopt_txt);
					jourNode.appendChild(jopt);
					j++;
				}
				if( jour > 0 && jour < 32 )
					jourNode.selectedIndex = jour;
				
				var moisNode = document.createElement("select");
				var m = 0;
				while( m < 13 )
				{
					var mopt = document.createElement("option");
					var mopt_txt = null;
					if( m < 10 )
						mopt_txt = document.createTextNode("0" + m);
					else
						mopt_txt = document.createTextNode(m);
					mopt.value = m;
					mopt.appendChild(mopt_txt);
					moisNode.appendChild(mopt);
					m++;
				}
				if( mois > 0 && mois < 13 )
					moisNode.selectedIndex = mois;
				
				var anneeNode = document.createElement("select");
				var aopt = document.createElement("option");
				var aopt_txt = null;
				aopt_txt = document.createTextNode("0000");
				aopt.value = "0000";
				aopt.appendChild(aopt_txt);
				anneeNode.appendChild(aopt);
				var a = 2009;
				while( a > 1890 )
				{
					aopt = document.createElement("option");
					aopt_txt = document.createTextNode(a);
					aopt.value = a;
					aopt.appendChild(aopt_txt);
					anneeNode.appendChild(aopt);
					a--;
				}
				if( annee > 1890 )
					anneeNode.selectedIndex = 2010 - annee;
				
				var br9 = document.createElement("br");
				var br10 = document.createElement("br");
				
				// Boutton
				var center1 = document.createElement("center");
				var bSendInfos = document.createElement("input");
				bSendInfos.type = "button";
				bSendInfos.value = "Enregistrer ces infos";
				bSendInfos.onclick = function()
				{
					if( nomNode.value.length == 0 )
						alert("Merci de bien vouloir indiquer votre nom !");
					else if( prenomNode.value.length == 0 )
						alert("Merci de bien vouloir indiquer votre prénom !");
					else if( adresseNode.value.length == 0 )
						alert("Merci de bien vouloir indiquer votre adresse !");
					else if( postalNode.value.length == 0 )
						alert("Merci de bien vouloir indiquer votre code postal !");
					else if( villeNode.value.length == 0 )
						alert("Merci de bien vouloir indiquer votre ville !");
					else if( paysNode.value.length == 0 )
						alert("Merci de bien vouloir indiquer votre pays !");
					else if( emailNode.value.length == 0 )
						alert("Merci de bien vouloir indiquer votre email !");
					else if( jourNode.selectedIndex == 0 )
						alert("Merci de bien vouloir indiquer votre jour de naissance !");
					else if( moisNode.selectedIndex == 0 )
						alert("Merci de bien vouloir indiquer votre mois de naissance !");
					else if( anneeNode.selectedIndex == 0 )
						alert("Merci de bien vouloir indiquer votre année de naissance !");
					else if( !isCorrectEmail( emailNode.value ) )
						alert("Merci de bien vouloir indiquer une adresse email valide !");
					else
					{
						titre = titreNode.selectedIndex;
						nom = nomNode.value;
						prenom = prenomNode.value;
						adresse = adresseNode.value;
						postal = postalNode.value;
						ville = villeNode.value;
						pays = paysNode.value;
						email = emailNode.value;
						news = newsNode.checked;
						jour = jourNode.selectedIndex;
						mois = moisNode.selectedIndex;
						annee = 2010 - anneeNode.selectedIndex;
				
						ajaxRequest( "././php/updateInfos.php", updaterXHR, sendInfosCB, "titre=" + titre + "&nom=" + nom + "&prenom=" + prenom + "&adresse=" + adresse + "&postal=" + postal + "&ville=" + ville + "&pays=" + pays + "&email=" + email + "&news=" + news + "&born=" + annee + "-" + mois + "-" + jour );
					}
				}
				center1.appendChild(bSendInfos);
			
				var br11 = document.createElement("br");
				
				// Mot de passe
				var txt10 = document.createTextNode(" Mot de passe actuel : ");
				
				var passNode = document.createElement("input");
				passNode.style.left = "170px";
				passNode.style.position = "absolute";
				passNode.type = "password";
				passNode.style.width = "100px";
				
				var br12 = document.createElement("br");
				
				// Nouveau mot de passe
				var txt20 = document.createTextNode(" Nouveau mot de passe : ");
				
				var newPassNode = document.createElement("input");
				newPassNode.style.left = "170px";
				newPassNode.style.position = "absolute";
				newPassNode.type = "password";
				newPassNode.style.width = "100px";
				
				// Répéter mot de passe
				var txt11 = document.createTextNode(" Répéter le passe : ");
				
				var repassNode = document.createElement("input");
				repassNode.style.left = "170px";
				repassNode.style.position = "absolute";
				repassNode.type = "password";
				repassNode.style.width = "100px";
				
				var br13 = document.createElement("br");
				var br14 = document.createElement("br");
				
				// Boutton
				var center2 = document.createElement("center");
				var bSendPass = document.createElement("input");
				bSendPass.type = "button";
				bSendPass.value = "Enregistrer le mot de passe";
				bSendPass.onclick = function()
				{
					if( passNode.value.length < 1 )
						alert("Veuillez entrer votre mot de passe actuel !");
					else if( newPassNode.value.length < 6 )
						alert("Nouveau mot de passe trop court !");
					else if( newPassNode.value != repassNode.value )
						alert("La répétition ne correspond pas au nouveau mot de passe !");
					else
					{
						ajaxRequest( "././php/changeMdp.php", updaterXHR, changeMdpCB, "pass=" + passNode.value + "&new=" + newPassNode.value );
						passNode.value = "";
						newPassNode.value = "";
						repassNode.value = "";
					}
				}
				center2.appendChild(bSendPass);
				
				// Text
				var txt12 = document.createTextNode("(*) Données irréversibles ! (Contactez nous pour les modifier) ");
				
				formContained.appendChild(titreNode);
				formContained.appendChild(txt1);
				formContained.appendChild(nomNode);
				formContained.appendChild(txt2);
				formContained.appendChild(prenomNode);
				formContained.appendChild(br1);
				formContained.appendChild(txt3);
				formContained.appendChild(adresseNode);
				formContained.appendChild(br3);
				formContained.appendChild(txt4);
				formContained.appendChild(postalNode);
				formContained.appendChild(txt5);
				formContained.appendChild(villeNode);
				formContained.appendChild(txt6);
				formContained.appendChild(paysNode);
				formContained.appendChild(br4);
				formContained.appendChild(txt7);
				formContained.appendChild(emailNode);
				formContained.appendChild(br6);
				formContained.appendChild(txt8);
				formContained.appendChild(newsNode);
				formContained.appendChild(br7);
				formContained.appendChild(br8);
				formContained.appendChild(txt9);
				formContained.appendChild(jourNode);
				formContained.appendChild(moisNode);
				formContained.appendChild(anneeNode);
				formContained.appendChild(br9);
				formContained.appendChild(br10);
				formContained.appendChild(center1);
				formContained.appendChild(br11);
				formContained.appendChild(txt10);
				formContained.appendChild(passNode);
				formContained.appendChild(br12);
				formContained.appendChild(txt20);
				formContained.appendChild(newPassNode);
				formContained.appendChild(br2);
				formContained.appendChild(txt11);
				formContained.appendChild(repassNode);
				formContained.appendChild(br13);
				formContained.appendChild(br14);
				formContained.appendChild(center2);
				formContained.appendChild(br5);
				formContained.appendChild(txt12);
				
				newsNode.checked = (news == '1')?true:false;
			}
			else
			{
				formContained.style.top = "100px";
				formContained.style.width = width - 80 + "px";
				formContained.style.textAlign = "center";
				formContained.style.fontSize = "24px";
				var txtC = document.createTextNode("En vous inscrivant,");
				var brC = document.createElement("br");
				var txtC1 = document.createTextNode("vous pourrez enregistrer ici les informations vous concernant...");
				var brC1 = document.createElement("br");
				var txtC2 = document.createTextNode("Nom, Prénom, adresse...");
				var brC2 = document.createElement("br");
				var txtC3 = document.createTextNode("Afin de vous offrir vos cadeaux !");
				
				formContained.appendChild(txtC);
				formContained.appendChild(brC);
				formContained.appendChild(txtC1);
				formContained.appendChild(brC1);
				formContained.appendChild(txtC2);
				formContained.appendChild(brC2);
				formContained.appendChild(txtC3);
			}
			
			contained.appendChild(formContained);
			parent.appendChild(contained);
			
			if( parent == document.getElementById('map_contained') )redimMapContained( left, top, width, height );

			isPlaying = true;
		}
	}
	
	this.stop = function()
	{
		if( isPlaying == true )
		{
			removeAllNodes( contained, true );
			isPlaying = false;
		}
	}
}