//*************************************************************************
//*	Fichier javascript pour la page de dépot d'annonce
//* Date de creation              : 22 Février 2007                             
//* Date de derniere modification : 22 Mars 2007                            
//* Version                       : 1                          
//* Auteur 						  : Vengeon Julien
//* Renseignement complémentaires :
//*		=> Gestion des requetes XMLHTTP
//*		=> Suppression d'une image uploadé
//*		=> Verifications diverses
//*		=> Recherche d'une ville (AJAX)
//*		=> Gestion du prix
//*		=> Gestion de l'image principale
//*		=> Récupération du mot de passe (AJAX)
//*		=> Verification de l'existence d'une adresse mail
//**************************************************************************

var xhr = null;
function getXhr()
{
  if(window.XMLHttpRequest) 
  { // Firefox et autres
    xhr = new XMLHttpRequest();
  }
  else if(window.ActiveXObject)
  { // Internet Explorer 
    try 
    {
      xhr = new ActiveXObject("Msxml2.XMLHTTP");
    } 
    catch (e) 
    {
      xhr = new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
  else 
  { // XMLHttpRequest non support&#233; par le navigateur 
    alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
    xhr = false; 
  } 
}


//Fonction de suppression d'image
	//Le parametre up prend 1 si l'image est dans le div des images déja uploadées (formulaire validé au moins une fois) et 0 si elle est dans le div images (formulaire n'ayant pas été validé)
function del(img,numimage,up)
{
	var par = window.parent.document;
	
	var images = par.getElementById('images');
	var imagesuploades = par.getElementById('imagesuploades');
	var numimageprincipale = par.getElementById('imageprincipale').value
	
	
	if(numimageprincipale == numimage)
	{
		
		for(var i = 1; i < 11; i++)
				{
					
					if(par.getElementById('imgprincipal'+i))
					{
			
					par.getElementById('imgprincipal'+i).setAttribute('style','-moz-opacity:0.2');
					par.getElementById('imgprincipal'+i).style.filter = "alpha(opacity=20)";
					par.getElementById('imgprincipal'+i).src= '../../images/photoprincipale.gif';
					par.getElementById('imgprincipal'+i).setAttribute('title','devenirphotoprincipale');
					
					}
				}
				
				par.getElementById('imageprincipale').value = "";	
	}
	if(up == 1) {
		
		imagesuploades.removeChild(par.getElementById('image'+ numimage));
	}
	else {
		
		images.removeChild(par.getElementById('image'+ numimage));
	}
		
		getXhr();
		
		// On défini ce qu'on va faire quand on aura la réponse
		xhr.onreadystatechange = function()
		{
		  // On ne fait quelque chose que si on a tout reçu et que le serveur est ok
		  if(xhr.readyState == 4 && xhr.status == 200)
		  {
			//document.location= 'DeposerAnnonceMoto.php' ;
			//alert(xhr.responseText);
			
		  }
		}
		
		xhr.open("GET", "supprimerimage.php?num="+numimage+"&img="+img, true); // true = mode asynchrone
		xhr.send(null); // null car méthode get
		
		var inputimage = par.getElementById('im'+numimage);
		var err = par.getElementById('erreur');
									
		inputimage.setAttribute("value","");
		 	
		var inputnbimage = par.getElementById('nbimage');
		inputnbimage.setAttribute("value",inputnbimage.value - 1);
		//alert('apres : ' + inputnbimage);
		if (inputnbimage.value < 10){
			//alert('boucle : ' + inputnbimage.value);
			err.innerHTML = 'Vous pouvez encore ajouter ' + (10 - inputnbimage.value) + ' photos';
			//var iframe= par.getElementById('iframe').innerHTML = "";
		}
		else {
			err.innerHTML = 'Vous avez atteint le quota maximum de photos autorisés';
			
			var num = par.getElementsByTagName('iframe').length - 1 ;
			var iframe = par.getElementsByTagName('iframe')[num];
			iframe.className = 'hidden';
		}
		
		
		if (inputnbimage.value == 9)
		{
			var new_iframe = par.createElement('iframe');
			new_iframe.src = 'upload.php';
			new_iframe.frameBorder = '0';
			par.getElementById('iframe').appendChild(new_iframe);	
		}
																			
	
	
}		


function chercheville(cp){
		
		getXhr();
		
		var ville = document.getElementById('div_ville');
		// On défini ce qu'on va faire quand on aura la réponse
		xhr.onreadystatechange = function()
		{
		  // On ne fait quelque chose que si on a tout reçu et que le serveur est ok
		  if(xhr.readyState == 4 && xhr.status == 200)
		  {		
			ville.innerHTML = xhr.responseText ;
		  }
		}
		
		xhr.open("GET", "/html/DeposerAnnoncesMotos/chercherville.php?cp="+cp, true); // true = mode asynchrone
		xhr.send(null); // null car méthode get
		
		
	}

function traitementville(){
	
	
	if(document.getElementById('ville').options[document.getElementById('ville').options.selectedIndex].text == 'Autre ville non dans la liste') {
		document.getElementById('ville').style.display='none';
		document.getElementById('champville').style.display = 'block';
		document.getElementById('champville').value = "";
		
	}
	else {
	document.getElementById('champville').value = document.getElementById('ville').options[document.getElementById('ville').options.selectedIndex].text;
	}
	

}

function verifTel(val,champ){
	

var tmp = '';
	
 for(var i = 0; i < val.length; i++)
 {
	tmp = tmp + val.charAt(i);
	
	 if (val.charAt(i) == "-")
	 {
		tmp = tmp.replace("-","");
	 }
	 if (val.charAt(i) == " ")
	 {
		tmp = tmp.replace(" ","");
	 }
	  if (val.charAt(i) == ".")
	 {
		tmp = tmp.replace(".","");
	 }
	  if (val.charAt(i) == "/")
	 {
		tmp = tmp.replace("/","");
	 }
	
	 
} 
	if(champ == 'tel')
	{
	document.getElementById('telephone').value = tmp;
	}
	else
	{document.getElementById('portable').value = tmp;}
}


function changeprincipale(num){
	var par = window.parent.document;
	//alert(par.getElementById('imgprincipal'+num).title);
	if(par.getElementById('imgprincipal'+num).title == "devenirphotoprincipale")
			{
			
			for(var i = 1; i < 11; i++)
				{
					if(i != num)
					{
						if(par.getElementById('imgprincipal'+i))
						{
					
						par.getElementById('imgprincipal'+i).setAttribute('style','-moz-opacity:0.2;');
						par.getElementById('imgprincipal'+i).style.filter = "alpha(opacity=20)";
						par.getElementById('imgprincipal'+i).src = '../../images/photoprincipale.gif';
						par.getElementById('imgprincipal'+i).setAttribute('title','devenirphotoprincipale');	
						}
					}
					else
					{
						par.getElementById('imgprincipal'+i).src = '../../images/principale.gif';
						par.getElementById('imgprincipal'+i).setAttribute('title','photoprincipale');
						par.getElementById('imgprincipal'+i).setAttribute('style','');
						par.getElementById('imgprincipal'+i).style.filter = "alpha(opacity=100)";
					}
				}
				
				par.getElementById('imageprincipale').value = num;
			}
	
	}
	
function prix(val,id,nbformule) {
	var par = window.parent.document;
	//On recupere le prix actuelle
	var prixactuelle = par.getElementById('prixtotal').value;
	prixactuelle = Number(prixactuelle);
	//On recupere l'ancien prix
    var ancienprix = par.getElementById('ancienprix').value;
	ancienprix = Number(ancienprix);
	
	//On calcul le nouveau prix
	var nouveauprix = prixactuelle + Number(val) - ancienprix;
	
	par.getElementById('afficheprix').innerHTML = '<font size="3"><b>Prix total : ' + nouveauprix + ',00 €</b></font>';
	par.getElementById('prixtotal').value = nouveauprix;
	par.getElementById('ancienprix').value = val;
	par.getElementById('formuleactuelle').value = 'formule' + id;
	
	//L'identifiant de la formule promo dans la page déposer annonce est 3 donc pour pouvoir y acceder on remet id à 3 si l'id passé en paramétre est supérieur à 3 (donc une promotion)
	if(id > 2){	id = 3; }
	//On rend opaque les formules qui ne sont pas choisi
	for(var i=1;i<=nbformule;i++)
	{
		if(i != id)
		{
			if(par.getElementById('formule'+i))
			{
		
			par.getElementById('formule'+i).setAttribute('style','-moz-opacity:0.2;');
			par.getElementById('formule'+i).style.filter = "alpha(opacity=20)";
			}
		}
		else
		{	
			if(par.getElementById('formule'+i))
			{
			par.getElementById('formule'+i).setAttribute('style','');
			par.getElementById('formule'+i).style.filter = "alpha(opacity=100)";
			}
		}	
	}
	
}

function affichereduc() {
	getXhr();
	var codereduc = document.getElementById('reduc').value;
	// On défini ce qu'on va faire quand on aura la réponse
	xhr.onreadystatechange = function()
	{
	  // On ne fait quelque chose que si on a tout reçu et que le serveur est ok
	  if(xhr.readyState == 4 && xhr.status == 200)
	  {
		//On récupere les resultats
		var resultat = xhr.responseText ;
		if(resultat != "erreur") {
		var tableau = resultat.split('#'); //puisque tous les résultats sont concaténé avec comme séparateur #, on les sépare
		
		//On remplit les champs
		var nouveauprix = tableau[1];
		var description = tableau[2];
		var id = tableau[3];
		
		//on affiche le logo de la formule
		document.getElementById('formule3').src = "/images/"+tableau[0];
		document.getElementById('formulereduction').style.display = 'block';
		//On met a jour les attributs de notre image
		document.getElementById('prix3').href = "javascript:prix("+nouveauprix+",3,3);";
		document.getElementById('prix3').setAttribute('href','javascript:prix('+nouveauprix+','+id+',3);');
		document.getElementById('prix3').setAttribute('title',description);
		document.getElementById('prix3').setAttribute('alt',description);
		document.getElementById('cellule2').setAttribute('width','50%');
		document.getElementById('alt').value = description;
		document.getElementById('title').value = description;
		//On change la valeur du bouton de validation
		document.getElementById('payer').value = "Deposer votre annonce";
		document.getElementById('srcformulepromo').value = "/images/"+tableau[0];
		document.getElementById('href').value = 'javascript:prix('+nouveauprix+','+id+',3)';
		
			
			//Si c'est une formule gratuite, alors on cache le div avec les formules et options
			if(nouveauprix == 0) {
			document.getElementById('options').value = '';
			document.getElementById('prixtotal').value = 0;
			document.getElementById('ancienprix').value = 0;
			//alert(document.getElementById('ancienprix').value);
			document.getElementById('formoption').style.display = 'none';
			document.getElementById('remplacementoption').style.display = 'block';
			}
		prix(nouveauprix,id,3);
		}
		
	  }
	}
	
	xhr.open("GET", "Reduction.php?codereduc="+codereduc, true); // true = mode asynchrone
	xhr.send(null); // null car méthode get	
}
function verifgallerie()
{
	
	if(!document.getElementById('conditiongenerale').checked)
	{
		alert('Vous devez obligatoirement accepter les conditions générales de ventes pour valider votre annonce');	
		return false;
	}
	
	
	//Vérifie qu'une image principale est bien définie si image il y a
	if(document.getElementById('nbimage').value > 0)
	{
		if(document.getElementById('imageprincipale').value == '')
		{
			alert('Vous devez obligatoirement définir une image principale');	
			return false;
		}
	}
	
	//Vérifie qu'une formule a bien été selectionnée
	if(document.getElementById('formuleactuelle').value == '')
	{
		alert('Vous devez obligatoirement choisir une formule, pour cela cliquez sur la formule de votre choix ');	
		return false;
	}
	
	//Vérifie si l'option gallerie est coché dans le cas où il y a plus d'une image d'uploadée
	//On verifie aussi que l'option n'est pas attribué d'office pour les pro
	/*if(document.getElementById('options').value == 2) {var option = true;}else{var option = false;}
	
	if(document.getElementById('gallerie').checked || option == true)
	{
	}
	else
	{
		if(document.getElementById('nbimage').value > 1)
		{
			//alert('Si vous voulez que toutes vos images uploadées soient prises en compte,vous devez prendre l\'option gallerie. Sinon seul la photo principale sera enregistrée');	
			
			Check = confirm("Si vous voulez que toutes vos images soient prises en compte,vous devez prendre l\'option gallerie. Sinon seul la photo principale sera enregistrée.Voulez vous vraiment que seule l'image principale soit uploadée?");
			if(Check == false)
			{ return false;}
			else
			{ 			
			return true;
			}
		}
	}
	*/
	return true;
}

function recuppass()
{
	document.getElementById('dejaclient').style.display = 'none';
	document.getElementById('recuperationpass').style.display = 'block';
	document.getElementById('messagerecuppass').innerHTML = '';
	document.getElementById('erreuridentification').innerHTML = '';
}
function existeMail()
{
	
	getXhr();
		
		var mail = document.getElementById('email').value
		// On défini ce qu'on va faire quand on aura la réponse
		xhr.onreadystatechange = function()
		{
		  // On ne fait quelque chose que si on a tout reçu et que le serveur est ok
		  if(xhr.readyState == 4 && xhr.status == 200)
		  {	
		  	if(xhr.responseText == 'existe'){
			alert('Ce mail existe déjà dans la base de donnée. Si vous êtes déjà clients, veuillez vous identifier en cliquant sur le lien "Déjà client"');
			document.getElementById('email').value = '';
			}
			
		  }
		}
		
		xhr.open("GET", "/html/DeposerAnnoncesMotos/verifMail.php?mail="+mail, true); // true = mode asynchrone
		xhr.send(null); // null car méthode get
		
	
}