window.onload=demarrer;
var requeteCart;
var requete1;
var requete2;
var requete4;
var requete5;
var requete6;
var requete7;
var requete8;
var requete10;

function demarrer() {
	//desactiveSubmit();
	verifieJit();
	SetFocus();
	callAjaxIframeImage();
	//getFormsAttributs();
	//getProgrammes();
	getAddressBook();
	getAddressBookProgramme();
	getStates();

	getProductAttributes();
	getDateBirth();
	
	if(document.getElementById('div_quick_search'))
		getSearchUserChoice();
	
	popupZomm();
	
	getProductsAddressBook();

}

function getFormsAttributs() {
	if(requeteCart!=null) {
	//hideBoutonJs(); 
	}
	var nbreForms=5; // nbre maxi d'options pour un modele
	for(var i=0; i<=nbreForms; i++) {
		if(document.forms['form_new_and_edit['+i+']']) {
			getCart(i);
		}
	}
}
function popupWindow(url,width, height) {
if(width==null) width='200';
if(height==null) height='200';
window.open(url,'popupWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width='+width+',height='+height+',screenX=150,screenY=150,top=150,left=150')
}
function SetFocus() {
  if (document.forms.length > 0) {
		if(document.getElementsByTagName('INPUT')) {
			var fieldInputs=document.getElementsByTagName('INPUT');
			//alert('fieldInputs : '+fieldInputs);
			for (var i=0; i<fieldInputs.length; i++) {
				if ( (fieldInputs[i].type != "image") &&
						 (fieldInputs[i].type != "hidden") &&
						 (fieldInputs[i].type != "reset") &&
						 (fieldInputs[i].type != "submit") ) {
	
					fieldInputs[i].focus();
	
					if ( (fieldInputs[i].type == "text") ||
							 (fieldInputs[i].type == "password") )
						fieldInputs[i].select();
	
					break;
				}
			}
		}
	}
}

function rowOverEffect(object) {
  if (object.className == 'dataTableRow') object.className = 'dataTableRowOver';
}

function rowOutEffect(object) {
  if (object.className == 'dataTableRowOver') object.className = 'dataTableRow';
}



function verifieJit() {

	var f='';
	if(f=document.getElementById("form_new_and_edit")) {
		f.onsubmit=function(event) {
			//alert('verifieJit');
			var presenceAdherentsGroups=false;
			//detecter les iframe id="frame_Upload[]"
			//getUploadedImage();
			
			//alert(event.type);
			var inputs=new Array;
			var nInputs=0;
			var listFields=new Array;
				var controle='';
			
			if(this.getElementsByTagName('INPUT')) {
				var inputs=this.getElementsByTagName('INPUT');
				var nInputs=inputs.length;
				
				for(var i=0; i<nInputs; i++) {
					listFields[i]=inputs[i];
					//controle+= "\n inputs "+inputs[i].name+" = "+inputs[i].value+" class : "+inputs[i].className ;
				}
			}
			var nSelects=0;
			var nInputs2=0;
			var selects=new Array;
			if(this.getElementsByTagName('SELECT')) {
				selects=this.getElementsByTagName('SELECT');
				nSelects=selects.length;
				nInputs2=nInputs+nSelects;
				var k = -1;
				for(var j=nInputs; j<nInputs2; j++) {
					k++;
					listFields[j]=selects[k];
					//controle+= "\n selects "+selects[k].name+" = "+selects[k].value+" class : "+selects[k].className ;
				}
				inputs=listFields;
				nInputs=inputs.length;
			}
			var textareas=new Array;
			var nTextareas=0;
			var nInputs3=0;
			if(this.getElementsByTagName('TEXTAREA')) {
				textareas=this.getElementsByTagName('TEXTAREA');
				nTextareas=textareas.length;

				nInputs3=nInputs+nTextareas;
				var t = -1;
				for(var j=nInputs; j<nInputs3; j++) {
					t++;
					listFields[j]=textareas[t];
					//controle+= "\n textareas "+textareas[t].name+" = "+textareas[t].value+" class : "+textareas[t].className ;
				}
				inputs=listFields;
				nInputs=inputs.length;
			}
			//alert('nInputs : '+nInputs);
			//	alert('controle : '+controle);
			
			var module='';
			var messageAverts= new Array();
			var messageAvert = '';
			var msgErreur = "";
			var j=0;
			var j2=0;
			var lang='french';
			var pre_field='';
			//var controle = ''; 
			var ctl_fields=new Array();
			var ctl_fields_true=new Array();
			for(var i=0; i<nInputs; i++) {
				var inputName=inputs[i].name;
				//alert('inputName : '+inputName);
				if(inputName=='module[]') {
					module=inputs[i].value;
					if(module=='contacts_groups' || module=='programmes') presenceAdherentsGroups=true;
					//alert('module : '+module);
					pre_field=module+'__';
				}
				//var inputClass=inputs[i].getAttribute('class');// non reconnu par IE ????
				var inputType=inputs[i].type;
				var inputClass=inputs[i].className;
				var inputValue=inputs[i].value;
				var champLabel_unique = '';
				//controle+= "\nNom:"+inputName+" ; Type:"+inputType+" ; Class:"+inputClass+" ; Valeur:"+inputValue ;

				if(inputType=='radio' || inputType=='checkbox') {
					var hiddenInputArray=inputName.split('__');
					//alert('hiddenInputArray : '+hiddenInputArray);
					if(hiddenInputArray) {
						var hiddenInputId=hiddenInputArray[1];
						//	alert('hiddenInputId : '+hiddenInputId);
						if(hiddenInputId) {
							// enlever les crochets de l'array checkbox
							var hiddenInput2Array=hiddenInputId.split('[');
							if(hiddenInput2Array)
								var hiddenInputId=hiddenInput2Array[0];
							//alert('hiddenInputId : '+hiddenInputId);
							if(document.getElementById(hiddenInputId)) {
								if(!hiddenInputIdArray) {
									var hiddenInputIdArray= new Array;
								}
								if(! hiddenInputIdArray[hiddenInputId] ) {
									hiddenInputIdArray[hiddenInputId]=new Array;
								}
								var hiddenInputIdValue='';
								if(inputs[i].checked==true) {
									hiddenInputIdArray[hiddenInputId][hiddenInputIdArray[hiddenInputId].length]=inputs[i].value+', ';
								}
								else {
									hiddenInputIdArray[hiddenInputId][hiddenInputIdArray[hiddenInputId].length]='';
								}
								for(var hi=0;hi<hiddenInputIdArray[hiddenInputId].length;hi++){
									if(!hiddenInputIdArray[hiddenInputId][hi-1] || (hiddenInputIdArray[hiddenInputId][hi]!=hiddenInputIdArray[hiddenInputId][hi-1])){
										hiddenInputIdValue+=hiddenInputIdArray[hiddenInputId][hi];
									}
								}
								//alert(hiddenInputId+' = hiddenInputIdValue : '+hiddenInputIdValue);
								document.getElementById(hiddenInputId).value = hiddenInputIdValue;
							}
						}
					}
				}
				
				if(inputClass=='requis') {
					//	alert('['+j+']    pre_field : '+pre_field+' ; inputName requis : '+inputName+' ; valeur : '+inputValue);
					//alert(inputClass+" "+inputName+" "+inputValue);
					var sObj = new String(inputValue);
					if(sObj) {
						inputValue = sObj.trim();
					}
					var inputValueBoolean=Boolean(inputValue);
					if(!inputValueBoolean) {
						// passer en revue tous les champs
						ctl_fields[j]=inputName;
						j++;
					}
					else { // valeurs ok
						ctl_fields_true[j2]=inputName;
						j2++;
					}
				}
			}
			
			/*
			var str_ctl_false='';
			var str_ctl_true='';
			for(var a=0; a<ctl_fields.length; a++) {
				str_ctl_false+= "["+a+"] : "+ctl_fields[a]+"\n";
			}
			for(var a=0; a<ctl_fields_true.length; a++) {
				str_ctl_true+= "["+a+"] : "+ctl_fields_true[a]+"\n";
			}
			alert("str_ctl_false : \n"+str_ctl_false);
			alert("str_ctl_true : \n"+str_ctl_true);
*/
			
			var nbre_ctl_fields=ctl_fields.length;
			var champLabel='';
			
			for(var k=0; k<nbre_ctl_fields; k++) {
				champLabel='';
				switch(ctl_fields[k]) {
					
					case pre_field+'designation': case pre_field+'designation[0]':
						switch(module) {
							case 'pages' : 
								champLabel = 'le nom du fichier sans l\'extension' ;
							break;
							case 'contacts':
								champLabel = 'votre nom' ;
							break;
							case 'contacts_statuts':
								champLabel = 'la désignation du statu' ;
							break;
							case 'contacts_statuts_categories':
								champLabel = 'la désignation de la catégorie de statut' ;
							break;
							case 'menus':
								champLabel = 'le nom du menu' ;
							break;
							default:
								champLabel = 'la désignation';
								//alert('champLabel_unique : '+champLabel_unique);	
							break;
						}
					break;
					case 'contacts_groups__designation':
						champLabel = 'le nom de l\'entité' ;
					break;
					case 'contacts_groups__id_contacts_statuts_categories':
						champLabel = 'la catégorie de statut' ;
					break;
					case 'contacts__firstname': case 'firstname': case 'contacts_message__firstname':
						champLabel = 'votre prénom' ;
					break;
					case 'contacts__lastname': case 'lastname': case 'contacts_message__lastname':
						champLabel = 'votre nom' ;
					break;
					case 'contacts__telephone':
						champLabel = 'votre n° de téléphone';
					break;
					case 'contacts__email': case 'email': case 'contacts_message__email':
						champLabel = 'votre adresse électronique';
					break;
					case 'messageries__subject':
						champLabel= 'l\'objet du message';
					break;
					case 'messageries__message':
						champLabel = 'votre message';
					break;
					case 'contacts__countries_name': case 'products__countries_name':
						var erreur=true;
						if(presenceAdherentsGroups) erreur=false;
						if(erreur)
						champLabel = 'le pays';
					break;
					case 'contacts__street_1':  case 'products__street_1':
						//reset(ctl_fields_true);
						var erreur=true;
						if(presenceAdherentsGroups) erreur=false;
						if(erreur)
						champLabel = 'n° et nom de rue';
					break;
					
					case 'programmes__street_1': 
						champLabel = 'le n° et le nom de rue';
					break
					case 'programmes__cities_code':
						champLabel = 'le code de la ville' ;
					break;
					case 'programmes__cities_name':
						champLabel = 'le nom de la ville' ;
					break;
					
					case 'contacts_groups__street_1': 
						champLabel = 'n° et nom de rue pour le groupe';
					break;
					case 'contacts_groups__cities_code':
						champLabel = 'le code de la ville pour le groupe';
					break;
					case 'contacts_groups__cities_name':
						champLabel = 'le nom de la ville pour le groupe';
					break;
					case 'contacts__new_password':
						champLabel = 'la confirmation de votre mot de passe';
					break;
					case 'contacts__passwrd': case 'passwrd':
						champLabel = 'le mot de passe';
					break;
					case 'contacts__id_contacts':
						champLabel = 'l\'adhérent' ;
					break;
					case 'contacts__gender': case 'gender':
						champLabel = 'votre civilité' ;
					break;
					case 'contacts__id_contacts_statuts': case 'id_contacts_statuts':
						champLabel = 'le statut d\'adhésion' ;
					break;
					case 'contacts_groups__zone_code':
						//reset(ctl_fields_true);
						var erreur=true;
						for(var k2=0; k2<ctl_fields_true.length; k2++) {
							if(ctl_fields_true[k2]=='contacts_groups__id_zones') {
								var erreur = false;
							}
						}
						if(erreur)
						champLabel = 'le code du département pour le groupe' ;
					break;					
					case 'contacts_groups__zone_name':
						//reset(ctl_fields_true);
						var erreur=true;
						for(var k2=0; k2<ctl_fields_true.length; k2++) {
							if(ctl_fields_true[k2]=='contacts_groups__id_zones') {
								var erreur = false;
							}
						}
						if(erreur)
						champLabel = 'le nom du département pour le groupe' ;
					break;					
					case 'contacts__zone_code':  case 'products__zone_code':
						//reset(ctl_fields_true);
						var erreur=true;
						if(presenceAdherentsGroups) erreur=false;
						if(erreur)
							champLabel = 'le code du département' ;
					break;					
					case 'contacts__zone_name': case 'products__zone_name':
						//reset(ctl_fields_true);
						var erreur=true;
						if(presenceAdherentsGroups) erreur=false;
						if(erreur)
							champLabel = 'le nom du département' ;
					break;					
					case 'contacts__cities_code': case 'products__cities_code':
						//reset(ctl_fields_true);
						var erreur=true;
						if(presenceAdherentsGroups) erreur=false;
						if(erreur)
						champLabel = 'le code de la ville' ;
					break;
					case 'contacts__cities_name': case 'products__cities_name':
						//reset(ctl_fields_true);
						var erreur=true;
						if(presenceAdherentsGroups) erreur=false;
						if(erreur)
							champLabel = 'le nom de la ville' ;
					break;
					case 'products__products_cost_asked':
						champLabel = 'le prix demandé' ;
					break;
					case 'products__id_products_categories':
						champLabel = 'la catégorie de bien' ;
					break;
					default:
						champLabel = '*    '+ctl_fields[k];
						//alert('champLabel_unique : '+champLabel_unique);	
					break;
				}
				messageAverts[k] = champLabel;
				//alert('messageAverts['+k+'] : '+messageAverts[k]);
			}
			//alert('inputName : '+inputName+' ; inputClass : '+inputClass+' ; inputValue : '+inputValue);

			//	alert(controle);
			var nbre_messageAverts=messageAverts.length;
			if(nbre_messageAverts>0) {
				for(var l=0; l<=nbre_messageAverts; l++) {
					if(messageAverts[l]) {
						messageAvert += messageAverts[l];
						var et_and = lang=='french' ? ' et ' : ' and ';
						messageAvert += l<(nbre_messageAverts-2) ? ', ' : (l==(nbre_messageAverts-2) ? et_and : '');
					}
				}
			}
			//alert("messageAvert : "+messageAvert+"\n");
			if(messageAvert!='') {
				msgErreur = (lang=='french' ? "Veuillez renseigner " : "Please select ")+" "+messageAvert ;
				alert(msgErreur);
				var emplaceErreur = document.getElementById("msg_erreur") ? document.getElementById("msg_erreur") : null;
				if(emplaceErreur==null){
					// créer un noeud
					var div_msgErreur = document.createElement('p');
					div_msgErreur.setAttribute('id','msg_erreur');
					var emplaceErreur = this.appendChild(div_msgErreur);
					if(document.getElementById('form_submits')) {
						var emplaceErreur = document.getElementById('form_submits').parentNode.insertBefore(div_msgErreur, document.getElementById('form_submits'));
					}
					else {
						//alert("controle :   pas trouvé document.getElementById('form_submits')");
					}
				}
				remplacerHtml(emplaceErreur, msgErreur);
			
				return false;
			}
			if(champLabel_unique!='') {
				msgErreur = champLabel_unique ;
				//alert('msgErreur : '+msgErreur);
				var emplaceErreur = document.getElementById("message_erreur");
				if(emplaceErreur==null){
					// créer un noeud
					var div_msgErreur = document.createElement('span');
					div_msgErreur.setAttribute('id','message_erreur');
					var emplaceErreur = this.appendChild(div_msgErreur);
				}
				remplacerHtml(emplaceErreur, msgErreur);
			
				return false;
			}
		};
	}
	else
		return true;
}



function getCart(n) {
	this.form = document.forms['form_new_and_edit['+n+']'];
	//var inputOption = this.form.elements['option['+n+']'];
	//alert('this.form : '+this.form);

	var inputOption=document.getElementsByName('id_countries');
	//alert('inputOption : '+inputOption);
	var selectOption = inputOption[0];
//	if(selectOption.name=='option['+n+']') {
	//alert('selectOption : '+selectOption);
		selectOption.onchange= function() {
			setCart(this);
		}
//	}
}
function setCart(s) {
	this.s=s;
	var opts = s.options;
	for(var i=0; i<opts.length;i++) {
		if(opts[i].selected) {
			var Attribut = opts[i].value;
		}
	}
	var ProductId = document.forms['cart_quantity'].elements['id_products'].value;
	var Language = document.forms['cart_quantity'].elements['language'].value;
	var Sid='';
	if(document.forms['cart_quantity'].elements['nmsid2']) 
		Sid=document.forms['cart_quantity'].elements['nmsid2'].value; 
	if(requeteCart!=null) {
		var url = "includes/javascript/ajax-getCart.php?id_products="+ProductId+"&option="+Attribut+"&nmsid="+Sid+"&language="+Language+"&time="+new Date().getTime();
		requeteCart.open("GET", url, true); // true = requete asynchrone
		requeteCart.onreadystatechange = actualiserPage3;
		requeteCart.send(null);
	}	
}

function actualiserPage2() {
	if(requete2!=null & requete2.readyState == 4) {
		//alert('requete2 :: readyStage : '+requete2.readyState+' ; status : '+requete2.status);
		if(requete2.status == 200) {
			var table_AddresBook = requete2.responseText;

			// actualiser la page avec les nouvelles valeurs
			var ELselect_AddressBook = document.getElementById("tableAddressBook"); 
			remplacerHtml(ELselect_AddressBook, table_AddresBook);

			getStates();
		}
		else {
		//	alert("Erreur ! Le statut de la requête est "+requete2.status);
		}
	}
}
function actualiserPage3() {
	if(requeteCart!=null & requeteCart.readyState == 4) {
		if(requeteCart.status == 200) {
			var Result = requeteCart.responseText;
			// actualiser la page avec les nouvelles valeurs
			var EL = document.getElementById("table_shoping_cart"); 
			remplacerHtml(EL, Result);
		maj_totalPrice();
		getFormsAttributs();
		}
		else {
			alert("Erreur ! Le statut de la requête est "+requeteCart.status);
		}
	}
}
/*
function actualiserPage4() {
	if(requete4!=null & requete4.readyState == 4) {
		if(requete4.status == 200) {
			var select_Programmes = requete4.responseText;

			// actualiser la page avec les nouvelles valeurs
			var ELselect_Programmes = document.getElementById("selectProgrammes"); 
			remplacerHtml(ELselect_Programmes, select_Programmes);

		getAddressBookProgramme();
		//getContactsByIdProgramme();
		getDateCal_date_birth();
		}
		else {
			alert("Erreur ! Le statut de la requête est "+requete4.status);
		}
	}
}
*/
function actualiserPage5() {
	if(requete5!=null & requete5.readyState == 4) {
		if(requete5.status == 200) {
			var select_ProductsAddressBook = requete5.responseText;

			// actualiser la page avec les nouvelles valeurs
			var ELselect_ProductsAddressBook = document.getElementById("tableAddressBook"); 
			remplacerHtml(ELselect_ProductsAddressBook, select_ProductsAddressBook);

			requete1 = creerRequete();
			getStates();
		}
		else {
			alert("Erreur ! Le statut de la requête est "+requete5.status);
		}
	}
}
function actualiserPage6() {
	if(requete6!=null & requete6.readyState == 4) {
		if(requete6.status == 200) {
			var showDateCal_date_birth = requete6.responseText;
			// actualiser la page avec les nouvelles valeurs
			var ELselect_showDateCal = document.getElementById("showDateCal"); 
			
				if(document.getElementById("new_showDateCal")) {
					var ELselect_new_showDateCal = document.getElementById("new_showDateCal");
					remplacerHtml(ELselect_new_showDateCal, showDateCal_date_birth);
				}
				else {
					var s=document.createElement("span");
					s.setAttribute('id',"new_showDateCal");

					var showDateCalParent = ELselect_showDateCal.parentNode;
					showDateCalParent.appendChild(s);
					/*
					var oj = document.createTextNode(showDateCal_date_birth) ;
					s.appendChild(oj);
					*/
					remplacerHtml(s, showDateCal_date_birth);
				}
				if(showDateCal_date_birth != '') {
					ELselect_showDateCal.style.display="none";
				}
				else
					ELselect_showDateCal.style.display="block";
		}
		else {
			//alert("Erreur ! Le statut de la requête est "+requete6.status);
		}
	}
}
function actualiserPage7() {
	if(requete7!=null & requete7.readyState == 4) {
		if(requete7.status == 200) {
			var select_ProductAttributes = requete7.responseText;

			// actualiser la page avec les nouvelles valeurs
			var ELselect_ProductAttributes = document.getElementById("id_product_attribut_checkbox"); 
			remplacerHtml(ELselect_ProductAttributes, select_ProductAttributes);
			
			getDateBirth();
		}
	}
}
/*
function actualiserPage8() {
	if(requete8!=null & requete8.readyState == 4) {
		if(requete8.status == 200) {
			var select_Contacts = requete8.responseText;

			// actualiser la page avec les nouvelles valeurs
			var ELselect_Contacts = document.getElementById("selectContacts"); 
			remplacerHtml(ELselect_Contacts, select_Contacts);
		}
		else {
			alert("Erreur ! Le statut de la requête est "+requete8.status);
		}
	}
}
*/
function hideBoutonJs() {
	var formulaires = document.getElementsByTagName('form');
	var nbreForms=formulaires.length;
	for(var i=0; i<nbreForms; i++) {
		var boutonsAcacher=formulaires[i].getElementsByTagName("input");
		var nbreBoutons=boutonsAcacher.length;
		//alert('nbreBoutons : '+nbreBoutons);
		for(var j=0; j<nbreBoutons; j++) {
			if(boutonsAcacher[j].className=="hiddenByJs") {
				boutonsAcacher[j].style.display="none";
			}
		}
	}
}

function getStates(change, objet) {
	if(!document.forms['form_new_and_edit']) return false;
	var f=document.forms['form_new_and_edit'];
		
	var modules = getModules();
	nM=modules.length;
	
	for(var j=0; j<nM; j++) {
		var module=modules[j];
		var pre_field = modules[j]+'__';
		//alert('modules['+j+'] : '+modules[j]+' ; pre_field : '+pre_field);
		
		var id_address_book ='';
		
		if(f.elements[pre_field+'id_address_book']) {
			id_address_book=f.elements[pre_field+'id_address_book'].value;
		}
		var variablesAB = new Array('id_countries','id_zones','street_1','street_2','id_cities') ;
		var inputs=new Array();
		var values=new Array();
		var nbre_variables=variablesAB.length;
		for(var i=0; i<nbre_variables; i++) {
			values[i]='';
			if(f.elements[pre_field+variablesAB[i]]) {
				inputs[i]=f.elements[pre_field+variablesAB[i]];
				values[i]=f.elements[pre_field+variablesAB[i]].value;
				//	alert(variablesAB[i]+' = values['+i+'] : '+values[i]);
				
				if(inputs[i].tagName=='SELECT') {
					inputs[i].onchange=function() {
						//alert('this : '+this+'  ; this.tagName : '+this.tagName+' ;  this.name : '+this.name+' ; this.value : '+this.value);
						majDefautSelected(this);
						getStates(true, this);
						//alert(variablesAB[i]+' = values['+i+'] : '+values[i]);
					}
				}
			}
		}
	}
	
	if(change==true) {
		//alert('objet : '+objet+'  ; objet.name : '+objet.name+' ; objet.value : '+objet.value);
		var objetName=objet.name;
		var moduleArray=objetName.split('__');
		var module=moduleArray[0];
		var pre_field = module+'__';

		var string = 'module='+module;
		
		for(var i=0; i<variablesAB.length;i++) {
			if(f.elements[pre_field+variablesAB[i]])
			string+="&"+variablesAB[i]+'='+f.elements[pre_field+variablesAB[i]].value;;
		}
		string+='&id_address_book='+f.elements[pre_field+'id_address_book'].value;
		//alert(string);
		changeTableAddressBook(pre_field, string);
	}
}
function changeTableAddressBook(pre_field, query_string) {
	var Rep=getRep();
	requete1 = creerRequete();
	if(requete1!=null) {
		var url = Rep+"includes/ajax-getStates.php?ajax=1&"+query_string+"&time="+new Date().getTime();
		//alert('url : '+url);
		
		requete1.open("GET", url, true); // true = requete asynchrone
		requete1.onreadystatechange = function() {
			if(requete1!=null & requete1.readyState == 4) {
				if(requete1.status == 200) {
					var resultAddressBook = requete1.responseText;
					// actualiser la page avec les nouvelles valeurs
					var ELselect_AddressBook = document.getElementById(pre_field+"spanAddressBook"); 
					remplacerHtml(ELselect_AddressBook, resultAddressBook);
					getStates(false);
				}
			}	
		} 
		requete1.send(null);
	}
}

function getAddressBook() {
	if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['id_contacts_categories']) {
		var inputContactsCategories = document.forms['form_new_and_edit'].elements['id_contacts_categories'];
		var id_contacts_categories = inputContactsCategories.value;
		//alert('id_contacts_categories : '+id_contacts_categories);
		var id_contacts = '';
		if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['id_contacts']) {
			var inputContacts = document.forms['form_new_and_edit'].elements['id_contacts'];
			id_contacts = inputContacts.value;
		}
		if(requete2!=null) {
			var url = "admin/includes/ajax-getAddressBook.php?ajax=1&id_contacts_categories="+id_contacts_categories+"&id_contacts="+id_contacts+"&time="+new Date().getTime();
			// la variable de temps est ajoutée pour annuler les effets de mise en cache par IE et Opera
			requete2.open("GET", url, true); // true = requete asynchrone
			requete2.onreadystatechange = actualiserPage2;
			requete2.send(null);
		}
		inputContactsCategories.onchange = function() {
			requete2 = creerRequete();
			getAddressBook();
			requete8 = creerRequete();
			//getContactsByIdProgramme();
		}
	}
	//else getStates();
}
/*
function getProgrammes() {
	// affichage de la liste des programmes appartenant à une catégories de produit
	if(!document.forms['form_new_and_edit']) return false;
	if(!document.forms['form_new_and_edit'].elements['id_contacts']) return false;

	//if(document.forms['form_new_and_edit'].elements['id_products_categories']) return false;
	if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['products__id_products_categories']) {
		var inputProductsCategories = document.forms['form_new_and_edit'].elements['products__id_products_categories'];
		//alert('inputProductsCategories : '+inputProductsCategories);
		var id_products_categories = inputProductsCategories.value;

		var id_products = '';
		if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['products__id_products']) {
			var inputProducts = document.forms['form_new_and_edit'].elements['products__id_products'];
			id_products = inputProducts.value;
		}
		var id_contacts = '';
		if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['products__id_contacts']) {
			var inputContacts = document.forms['form_new_and_edit'].elements['products__id_contacts'];
			id_contacts = inputContacts.value;
		}

		if(id_contacts!='' && requete4!=null) {
			var url = "admin/includes/ajax-getProgrammes.php?ajax=1&id_products_categories="+id_products_categories+"&id_products="+id_products+"&id_contacts="+id_contacts+"&time="+new Date().getTime();
			// la variable de temps est ajoutée pour annuler les effets de mise en cache par IE et Opera
			requete4.open("GET", url, true); // true = requete asynchrone
			requete4.onreadystatechange = actualiserPage4;
			requete4.send(null);
		}
		inputProductsCategories.onchange = function () {
			if(document.getElementById('selectProgrammes')) {
				requete4 = creerRequete();
				getProgrammes();
			}
			requete7 = creerRequete();
			getProductAttributes();
		}
	}
}
*/

function getAddressBookProgramme() {
	if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['id_programmes']) {
		var inputProgrammes5 = document.forms['form_new_and_edit'].elements['id_programmes'];
		var id_programmes = inputProgrammes5.value;
		var id_products = '';
		if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['id_products']) {
			var inputProducts = document.forms['form_new_and_edit'].elements['id_products'];
			id_products = inputProducts.value;
		}
		var id_contacts = '';
		if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['id_contacts']) {
			var inputContacts = document.forms['form_new_and_edit'].elements['id_contacts'];
			id_contacts = inputContacts.value;
		}

		if(requete5!=null) {
			var url = "admin/includes/ajax-getAddressBook.php?ajax=1&id_programmes="+id_programmes+"&id_products="+id_products+"&id_contacts="+id_contacts+"&time="+new Date().getTime();
			// la variable de temps est ajoutée pour annuler les effets de mise en cache par IE et Opera
			requete5.open("GET", url, true); // true = requete asynchrone
			requete5.onreadystatechange = actualiserPage5;
			requete5.send(null);
		}
		inputProgrammes5.onchange = function () {
			requete8 = creerRequete();
			//getContactsByIdProgramme();
			requete5 = creerRequete();
			getAddressBookProgramme();
			requete6 = creerRequete();
			getDateCal_date_birth();
		}
	}
}

function getDateCal_date_birth() {
	if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['products__id_programmes']) {
		var inputProgrammes6 = document.forms['form_new_and_edit'].elements['products__id_programmes'];
		var id_programmes = inputProgrammes6.value;
		//alert('id_programmes : '+id_programmes);
		var id_products = '';
		if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['products__id_products']) {
			var inputProducts = document.forms['form_new_and_edit'].elements['products__id_products'];
			id_products = inputProducts.value;
		}
		var id_contacts = '';
		if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['id_contacts']) {
			var inputContacts = document.forms['form_new_and_edit'].elements['id_contacts'];
			id_contacts = inputContacts.value;
		}
				
		if(requete6!=null) {
			var url = "admin/includes/ajax-getDateBirth.php?ajax=1&id_programmes="+id_programmes+"&id_products="+id_products+"&id_contacts="+id_contacts+"&time="+new Date().getTime();
			requete6.open("GET", url, true); 
			requete6.onreadystatechange = actualiserPage6;
			requete6.send(null);
		}
	}
}

/*
function getDateBirth(){
	//	alert('getDateBirth');

	if(document.getElementById('showDateCal')) {
		var DateBirthValue = document.forms['form_new_and_edit'].elements['date_birth'].value;

		var showDateCalChilds=document.getElementById('showDateCal').childNodes;

		for(var i=0;i<showDateCalChilds.length;i++) {
			//alert('showDateCalChilds['+i+'].className : '+showDateCalChilds[i].className);
			if(showDateCalChilds[i].className=='cal-TextBox') {
				var DateBirth = showDateCalChilds[i];
				DateBirthValue=DateBirth.value
				var DateBirthDefaultValue=DateBirth.defaultValue;
				alert('1-------DateBirthValue '+i+' :'+DateBirthValue+' ; DateBirthDefaultValue  '+i+' :'+DateBirthDefaultValue);
			
				if(DateBirthValue != DateBirthDefaultValue) {
					showDateCalChilds[i].onchange=function(){
					alert('2----------DateBirthValue '+i+' :'+DateBirthValue+' ; DateBirthDefaultValue  '+i+' :'+DateBirthDefaultValue);
						getProductAttributes();
					}
					//showDateCalChilds[i].defaultValue=DateBirthValue;
					//document.forms['form_new_and_edit'].elements['date_birth'].value=DateBirthDefaultValue;
					//getProductAttributes();
				}
			}
		}
	}
}
*/
function mouseDown(){
	var locString = "X = "+window.event.screenX+" ; Y = "+window.event.screenY;
	alert(locString);
}
function getDateBirth(){
	if(document.forms['form_new_and_edit'] && document.getElementById('spiffycalendar') && document.forms['form_new_and_edit'].elements['products__date_birth']) {
		//	alert('getDateBirth ');
		var d= document.getElementById('spiffycalendar');
		//var d= document.getElementById('showDateCal'); // marche pas ...
		//d.onblur=function(){
			var inputDateBirth = document.forms['form_new_and_edit'].elements['products__date_birth'];
			date_birth1 = inputDateBirth.value;
		d.onmouseout=function(){
			var inputDateBirth = document.forms['form_new_and_edit'].elements['products__date_birth'];
			var date_birth2 = inputDateBirth.value;
			if(date_birth2 != date_birth1){
			//mouseDown();
				//alert('d : '+d);
				getProductAttributes();
			}
		}
/*		d.onclick=function(){
			getProductAttributes();
		}*/
		var showDateCalChilds=document.getElementById('showDateCal').childNodes;
		for(var i=0;i<showDateCalChilds.length;i++) {
			if(showDateCalChilds[i].className=='cal-TextBox') {
				showDateCalChilds[i].onblur=function(){
					getProductAttributes();
				}
			}
		}
	}
}
/*
function getProductAttributes() {
	// affichage de la liste des attributs pour une catégorie de produits
	if(!document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['id_product_attribut_checkbox']) {
		return false;
	}
	if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['products__id_products_categories']) {
		var inputProductsCategories = document.forms['form_new_and_edit'].elements['products__id_products_categories'];
		var id_products_categories = inputProductsCategories.value;

		var id_products = '';
		if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['products__id_products']) {
			var inputProducts = document.forms['form_new_and_edit'].elements['products__id_products'];
			id_products = inputProducts.value;
		}
		var id_contacts_statuts = '';
		if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['id_contacts_statuts']) {
			var inputContactsStatuts = document.forms['form_new_and_edit'].elements['id_contacts_statuts'];
			id_contacts_statuts = inputContactsStatuts.value;
		}

		var date_birth = '';
		//getDateBirth();
		if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['products__date_birth']) {
			var inputDateBirth = document.forms['form_new_and_edit'].elements['products__date_birth'];
			alert('inputDateBirth : '+inputDateBirth);
			date_birth = inputDateBirth.value;
			var aujourdhui = new Date();
			var jour = aujourdhui.getDate();
			if(jour.toString().length== 1) jour = '0'+jour;
			var mois = parseInt(aujourdhui.getMonth()+1);
			if(mois.toString().length== 1) mois = '0'+mois;
			var annee = aujourdhui.getFullYear();
			if(date_birth=='') date_birth = jour+"/"+mois+"/"+annee;
		}
		
		
		if(requete7!=null) {
			var url = "admin/includes/ajax-getProductAttributes.php?ajax=1&id_products_categories="+id_products_categories+"&id_products="+id_products+"&id_contacts_statuts="+id_contacts_statuts+"&date_birth="+date_birth+"&time="+new Date().getTime();
			
			requete7.open("GET", url, true); // true = requete asynchrone
			requete7.onreadystatechange = actualiserPage7;
			requete7.send(null);
		}
	}
}
*/
/*
function getContactsByIdProgramme() {
	if(	!document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['id_contacts'] &&
			!document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['id_programmes']) {
		return false
	}
	if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['id_programmes']) {
		var inputProgrammes = document.forms['form_new_and_edit'].elements['id_programmes'];
		var id_programmes = inputProgrammes.value;

		var id_products = '';
		if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['id_products']) {
			var inputProducts = document.forms['form_new_and_edit'].elements['id_products'];
			id_products = inputProducts.value;
		}
		var id_contacts = '';
		if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['id_contacts']) {
			var inputContacts = document.forms['form_new_and_edit'].elements['id_contacts'];
			id_contacts = inputContacts.value;
		}
		if(requete8!=null) {
			var url = "admin/includes/ajax-getContactsByIdProgramme.php?ajax=1&id_programmes="+id_programmes+"&id_products="+id_products+"&id_contacts="+id_contacts+"&time="+new Date().getTime();
			requete8.open("GET", url, true); // true = requete asynchrone
			requete8.onreadystatechange = actualiserPage8;
			requete8.send(null);
		}
	}
}
*/

function popupZomm() {
	var a_img = document.getElementsByTagName('img');
	var c_img = a_img.length;
	for(var i=0;i<c_img;i++) {
		if(a_img[i].className=='to_zoom') {
			a_img[i].onclick=function() {
				var a_src=this.src;
				var rgExp=/small/;
				if(a_src.match(rgExp)==null)
					var rgExp=/medium/;
				var dir_size=a_src.match(rgExp);
				//alert('dir_size : '+dir_size);
				var img = a_src.replace(dir_size,'large');
				//alert('new_src : '+new_src);
				//window.open(new_src);
				var titre=this.title;
				w=open("",'image','width=400,height=400,toolbar=no,scrollbars=no,resizable=yes');
				w.document.write("<HTML><HEAD><TITLE>"+titre+"</TITLE>");
				w.document.write("<SC"+"RIPT language=java"+"script> function checksize() { if (document.images['img'].complete) { window.resizeTo(document.images[0].width+12,document.images[0].height+30); window.focus();} else { setTimeout('checksize()',250) } }</"+"SCRIPT></HEAD>");
				w.document.write("<BODY onload='checksize();' onclick='window.close();' leftMargin=0 topMargin=0 marginwidth=0 marginheight=0><IMG src='"+img+"' border=0 name='img'>");
				w.document.write("");
				//w.document.write("<SC"+"RIPT language=java"+"script> this.ondbleclick=this.close();</"+"SCRIPT></HEAD>");
				w.document.write("</BODY></HTML>");
				w.document.close();
			}
		}
	}
}


function callAjaxIframeImage(){
	var class_span = "donnee_form_image";
	if(!document.getElementsByClassName(class_span)) return false;
	var Rep=getRep();
		var QueryString = getQueryString();
		//var action_url = QueryString['action_url'];;
		//var qString = QueryString['qString'];
		//var top = QueryString['top'];

	var id_span_image="call_ajax_image";
	var id_span_description_image = "call_ajax_description_image";
	var span_object='';
	span_object=document.getElementsByClassName(class_span);
	var nbre_spans=span_object.length;
	if(nbre_spans>0){
		//alert('nbre_spans : '+nbre_spans);
		for(var i=0; i<nbre_spans; i++){
			var span_id=null;
			span_id=span_object[i].getAttribute('id');
			//alert('L 1206 ::::  span_id '+i+': '+span_id);
			var img_type = null;
			if(span_id) {
				// remplacer le contenu du span par une iframe
				// récupérer le nom du module pour les tables <-> input
				var fieldInputs=span_object[i].getElementsByTagName('INPUT');
				var nbre_fieldInputs=fieldInputs.length;
				var qstring='';
				for (var j=0; j<nbre_fieldInputs; j++) {
					if(fieldInputs[j].type=="file"){
						var fileField=fieldInputs[j].name;
						qstring+='fileField='+fileField+'&';
					}
					if(fieldInputs[j].type=="hidden"){
						qstring+=fieldInputs[j].name+'='+fieldInputs[j].value+'&';
					}
				}
				if(QueryString)
					var qString=qstring+QueryString['qString'];

				var url = Rep+"includes/ajax-getIframeImage.php?ajax=1&"+qString+"&time="+new Date().getTime();
				//alert('url : '+url);
				executeRequete(url, span_id, i, "image");
				//alert(i+' avant requete  ::::::::: span_id : '+span_id);
			}
		}
	}
}
function executeRequete(url, span_id, i, type_de_file){
	var requete7 = creerRequete();
	if(requete7!=null) {
		requete7.open("GET", url, true); // true = requete asynchrone
		//alert(i+' après requete  ::::::::: span_id : '+span_id);
		requete7.onreadystatechange = function() {
			//sleep(100);
			actualiserPage7(this, span_id, i, type_de_file);
		}
		requete7.send(null);
	}
}
function actualiserPage7(requete7, span_id, num, type_de_file) {
	if(requete7!=null & requete7.readyState == 4) {
		if(requete7.status == 200) {
		//		if(num>0) sleep(10000);
		//alert(span_id+' :::::::  readyStage : '+requete7.readyState+' ; status : '+requete7.status);
			var Result = requete7.responseText;
			// actualiser la page avec les nouvelles valeurs
			var spanParent=null;
			spanParent = document.getElementById(span_id).parentNode ; 
			spanParent.setAttribute('id', 'div_'+span_id);
			//alert('spanParent  ('+span_id+'): '+spanParent);
			var newSpan=document.createElement('span');
			spanParent.appendChild(newSpan);
			//newSpan.setAttribute('class','donnee_form_image');
			newSpan.setAttribute('class','donnee_form_'+type_de_file);
			newSpan.className='donnee_form_'+type_de_file;
			remplacerHtml(newSpan, Result);
			document.getElementById(span_id).style.display="none";
			
			// numero de frame
			var num_recherche = /(\[\d\])/;
			num_recherche.exec(span_id);
			var num_k= RegExp.$1;
			num_recherche = /(\d)/;
		 	num_recherche.exec(num_k);
			num_k= RegExp.$1;
			//alert("num_k : "+num_k);
			var iframeName = type_de_file=="image" ? "frame_Upload_Image["+num_k+"]" : "frame_Upload_File["+num_k+"]";
			var f_document=document.getElementById(iframeName);
			
			//alert('f_document : '+f_document);
//	var DocumentContent= ( f_document.contentDocument ) ?  f_document.contentDocument : f_document.contentWindow.document ;

			f_document.onload=function() {
				setHeadLinkCss(this, '../css/stylesheet.css');
				getUploadedImageName(this, type_de_file);
				getUploadedImage(this, type_de_file);
			}
		f_document.onmouseover=function() {
				setHeadLinkCss(this, '../css/stylesheet.css');
				getUploadedImageName(this, type_de_file);
				getUploadedImage(this, type_de_file);
			}

			f_document.onmouseout=function() {
				setHeadLinkCss(this, '../css/stylesheet.css');
				getUploadedImageName(this, type_de_file);
				getUploadedImage(this, type_de_file);
			}
		}
	}	
}

function GetBaseName(){
	return GetBaseName(location.href);
}
function GetBaseName(file){
	if(!file)
	var	file=location.href;
	var partsi='';
	var Parts = file.split('\\');
	//alert('Parts  : '+Parts +' ; length : '+Parts.length);
	if( Parts.length < 2 )
		Parts = file.split('/');
	return Parts;
} 

function getRep(){
	var Parts  = GetBaseName() ;
	//alert('Parts : '+Parts);
	var Rep='admin/';
	var partsi='';
	for(var i=0;i<Parts.length;i++) {
		partsi += ' - '+i+' : '+Parts[i]+"\n";
		if(Parts[i]=='admin') Rep='';
	}
	//alert(partsi);
	return Rep;
}

function getQueryString(){
	var Parts  = GetBaseName() ;
	var nbreParts=Parts.length;
	
	var QueryString=new Array();
	var action_url='';
	var qString='';
	var top='';
	
	var Parts2=Parts[(nbreParts-1)];
	
	var Parts3=Parts2.split('?');
		
		action_url=Parts3[0];
	
	var nbreParts3=Parts3.length;
	
	if(nbreParts3>1){
		var Parts4=Parts3[(nbreParts3-1)].split('#');
			qString=Parts4[0];
		var nbreParts4=Parts4.length;
		if(nbreParts4==2)
			top=Parts4[1];
	}
	QueryString['action_url']=action_url;
	QueryString['qString']=qString;
	QueryString['top']=top;
	
	return QueryString;
}
function setHeadLinkCss(iframe, fichier_css){
	var DocumentContent= ( iframe.contentDocument ) ?  iframe.contentDocument : iframe.contentWindow.document ;
	var nbre_links=DocumentContent.getElementsByTagName('HEAD')[0].childNodes.length;
	for(var i=0;i<nbre_links;i++) {
		var tagLink = DocumentContent.getElementsByTagName('HEAD')[0].childNodes[i].tagName;
	}
	if(tagLink!="LINK")
	{
	var linkHead = DocumentContent.createElement("link");
	linkHead.setAttribute('href',fichier_css);
	linkHead.setAttribute('type',"text/css");
	linkHead.setAttribute('rel',"stylesheet");
	DocumentContent.getElementsByTagName('HEAD')[0].appendChild(linkHead);
	}
}
function getUploadedImageName(f_document, type_de_file){
	var f_id='';
	var nk=0;
	f_id=f_document.getAttribute('id');
	var recherche = type_de_file=="image" ? "frame_Upload_Image" : "frame_Upload_File";
	if(f_id!=null && f_id.substr(0,recherche.length)==recherche) {
		nk++;
		var f_document = window.frames[f_id].document;
		
		var fieldInputs=f_document.getElementsByTagName('INPUT');
		var fieldInputs_length=fieldInputs.length;
		for (var i=0; i<fieldInputs_length; i++) {
			
			if ( (fieldInputs[i].type == "file") ) {
				//alert('fieldInputs['+nk+']['+i+'] : '+fieldInputs[i].type+' :: '+fieldInputs[i].name+' = '+fieldInputs[i].value);
				
				fieldInputs[i].onchange=function(){
					var nodeParent=this.parentNode;
					//var nodeParentId=nodeParent.getAttribute('id');
					// remonter jusqu'au formulaire
					//	 alert(i+' --- nodeParent : '+nodeParent);
					
					// nbre_frame_image
					var nodeSiblings = nodeParent.childNodes;
					var nbre_nS = nodeSiblings.length;
					var num_k = null;
					for(var j=0; j<nbre_nS; j++) {
						if(nodeSiblings[j].name== type_de_file=="image" ? "nbre_frame_image" : "nbre_frame_file")
							var num_k = nodeSiblings[j].value;
					}
					//alert("num_k : "+num_k);
					
					//var z=0;
					while(nodeParent.tagName!='FORM') {
						//z++;
						 nodeParent=nodeParent.parentNode;
						 //alert(z+'   :::::::   nodeParent : '+nodeParent);
						 //nodeParentId=nodeParent.getAttribute('id');
					}
					var formParent = nodeParent;

					var fileNameValue=this.value;
					var fileNameName=this.name;
					//alert("valeur du fichier : "+fileNameValue);
					// sur firefox et IE
					var fileValues = new Array;
					fileValues = GetBaseName(fileNameValue);
					var strFileValue='';
					strFileValue=fileValues[(fileValues.length)-1];
					//alert("nom du fichier : "+strFileValue);
					
					var input_fileName=false;
					// si input name="file_name" n'existe pas, on le créé
					var fieldInputs_new=formParent.getElementsByTagName('INPUT');
					for(var h=0;h<fieldInputs_new.length; h++){
						if(fieldInputs_new[h].name=="file_name") {
							fieldInputs_new[h].value=strFileValue;
							input_fileName=true;
						}
						
					}
					if(!input_fileName) {
					// sinon modifier la valeur
/*						
					var inputLabel =  f_document.createElement("label");
					inputLabel.setAttribute('id',"file2Upload["+num_k+"]");
					var nouveauNoeud = f_document.createTextNode('Nom du fichier');
					//alert("nouveauNoeud : "+nouveauNoeud);
					inputLabel.appendChild(nouveauNoeud);
					//alert("formParent : "+formParent);
					var inputSetLabel = formParent.appendChild(inputLabel);
					//alert("inputSetLabel : "+inputSetLabel);
*/
					// ajouter un champ texte "nom du fichier"
					var inputTextFileName = f_document.createElement("input");
					inputTextFileName.setAttribute('type',"text");
					inputTextFileName.setAttribute('value',strFileValue);
					inputTextFileName.setAttribute('class',"inputTextAjax");
					inputTextFileName.setAttribute('name',"file_name");
					inputTextFileName.setAttribute('size',"50");
					var inputSetFile = formParent.appendChild(inputTextFileName);
					
					// ajouter un bouton pour action ajax
					//'<input class="boutonAjax" type="submit" value="Télécharger" name="getUploadFile[]"/>'
					var boutonAjax = f_document.createElement("input");
					boutonAjax.setAttribute('class',"boutonAjax");
					boutonAjax.setAttribute('name',"getUploadFile["+num_k+"]");
					//boutonAjax.setAttribute('id',fileNameValue);
					boutonAjax.setAttribute('value',"Télécharger");
					boutonAjax.setAttribute('type',"submit");
					//boutonAjax.setAttribute('onclick',"pop_it('form_file2Upload[]')");
					var boutonGetFile = formParent.appendChild(boutonAjax);
					}
				};
			}
		}
	}
//	}
}
function getUploadedImage(f_document, type_de_file){

	var f_id='';
	var nk=0;
	f_id=f_document.getAttribute('id');
	var recherche = type_de_file == "image" ? "frame_Upload_Image" : "frame_Upload_File";
	var result_iframeId= Boolean(f_id);
	if(result_iframeId && f_id.substr(0,recherche.length)==recherche) {
		nk++;/**/
		var f_document = window.frames[f_id].document;
		var spanParent = document.getElementById(f_id).parentNode ; 
		
		var fieldInputs=f_document.getElementsByTagName('INPUT');
		var fieldInputs_length=fieldInputs.length;
		var recherche2='ajax_image_';
		var recherche3='ajax_file_';
		for (var i=0; i<fieldInputs_length; i++) {
			if(fieldInputs[i].name.match(recherche2) || fieldInputs[i].name.match(recherche3)){
				//alert('class de span : '+spanParent.className);
				//var img = fieldInputs[i].previousSibling;
				//alert(spanParent+'.appendChild(fieldInputs['+i+'] : '+fieldInputs[i]);
				
				var new_input= fieldInputs[i];
				//alert('new_input : '+new_input.name);
				var childNodes=spanParent.childNodes;
				var nbre_child=childNodes.length;
				if(nbre_child>0) {
					var lastChild=spanParent.lastChild;
					if(lastChild.name==new_input.name){
						lastChild.value=new_input.value;
					}
					else {
						var newInput=document.createElement('input');
						newInput.setAttribute('type', 'hidden');
						newInput.setAttribute('value', new_input.value);
						newInput.setAttribute('name', new_input.name);
						spanParent.appendChild(newInput);
					}
				}
				else{
						var newInput=document.createElement('input');
						newInput.setAttribute('type', 'hidden');
						newInput.setAttribute('value', new_input.value);
						newInput.setAttribute('name', new_input.name);
						spanParent.appendChild(newInput);
				}
			}
			if(fieldInputs[i].name.match(recherche3) && fieldInputs[i].name.match('messageries__ajax_file')){
				//alert(fieldInputs[i].name);
				// rechercher la liste des fichiers dans la div id "messagerie_join_files"
				var Rep=getRep();
				var QueryString = getQueryString();
				//var action_url=QueryString['action_url'];
				var qString=QueryString['qString'];
				//var top=QueryString['top'];
	
				var urlFile='ajax-setFilesCheckbox.php';
				var url = Rep+"includes/"+urlFile+"?ajax=1&"+qString+"&time="+new Date().getTime();
				requete = creerRequete();
				if(requete!=null) {
					requete.open("GET", url, true); // true = requete asynchrone
					requete.onreadystatechange = function() {
						if(requete.readyState == 4) {
							if(requete.status == 200) {
								var Text = requete.responseText;
								var div_messagerie_join_files=document.getElementById('messagerie_join_files');
								remplacerHtml(div_messagerie_join_files, Text);
							}
							else {
								//alert("Erreur ! Le statut de la requête est "+requete.status);
							}
						}	
					} 
					requete.send(null);
				}
			}
		}	
	}
}
function getProductAttributes() {
	//	alert('getProductAttributes');
	// affichage de la liste des attributs pour une catégorie de produits
	/*
	if(!document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['id_product_attribut_checkbox']) {
		return false;
	}*/
	if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['products__id_products_categories']) {
		var inputProductsCategories = document.forms['form_new_and_edit'].elements['products__id_products_categories'];
		var id_products_categories = inputProductsCategories.value;
		//alert('id_products_categories : '+id_products_categories);
		
		var id_products = '';
		if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['products__id_products']) {
			var inputProducts = document.forms['form_new_and_edit'].elements['products__id_products'];
			id_products = inputProducts.value;
		}
		var id_contacts_statuts = '';
		if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['products__id_contacts_statuts']) {
			var inputContactsStatuts = document.forms['form_new_and_edit'].elements['products__id_contacts_statuts'];
			id_contacts_statuts = inputContactsStatuts.value;
		}
		var date_birth = '';
		//getDateBirth();

		
			var Rep=getRep();
			var admin='0';
			if(Rep=='') admin='1';

		if(requete10!=null) {
			if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['products__date_birth']) {
				var inputDateBirth = document.forms['form_new_and_edit'].elements['products__date_birth'];
				date_birth = inputDateBirth.value;
				//alert('date_birth : '+date_birth);
				var aujourdhui = new Date();
				var jour = aujourdhui.getDate();
				if(jour.toString().length== 1) jour = '0'+jour;
				var mois = parseInt(aujourdhui.getMonth()+1);
				if(mois.toString().length== 1) mois = '0'+mois;
				var annee = aujourdhui.getFullYear();
				if(date_birth=='') date_birth = jour+"/"+mois+"/"+annee;
				//alert('date_birth : '+date_birth);
			}
			//var url = "includes/ajax-getProductAttributes.php?ajax=1&id_products_categories="+id_products_categories+"&id_products="+id_products+"&time="+new Date().getTime();
			var url = Rep+"includes/ajax-getProductAttributes.php?ajax=1&admin="+admin+"&id_products_categories="+id_products_categories+"&id_products="+id_products+"&id_contacts_statuts="+id_contacts_statuts+"&date_birth="+date_birth+"&time="+new Date().getTime();
			requete10.open("GET", url, true); // true = requete asynchrone
			requete10.onreadystatechange = actualiserPage10;
			requete10.send(null);
		}
		
		inputProductsCategories.onchange=function(){
			majDefautSelected(this);
			requete10 = creerRequete();
			getDateCal_date_birth();
			getProductAttributes();
		}
	}
}
function actualiserPage10() {
	if(requete10!=null & requete10.readyState == 4) {
		if(requete10.status == 200) {
			var select_ProductAttributes = requete10.responseText;

			// actualiser la page avec les nouvelles valeurs
			var ELselect_ProductAttributes = document.getElementById("id_product_attribut_checkbox"); 
			remplacerHtml(ELselect_ProductAttributes, select_ProductAttributes);
		}
		else {
			//alert("Erreur ! Le statut de la requête est "+requete10.status);
		}
	}
}
function majDefautSelected(SelectObject){
	//alert('SelectObject.tagName : '+SelectObject.tagName);
	var nb=SelectObject.length;
	for(var i=0;i<nb;i++) {
		if(SelectObject.options[i].getAttribute('selected')) {
			SelectObject.options[i].defaultSelected=false;
			SelectObject.options[i].removeAttribute("selected");
		}
	}
	SelectObject.options[SelectObject.selectedIndex].defaultSelected=true;
	SelectObject.options[SelectObject.selectedIndex].setAttribute('selected','selected');
}
function getModules(){
	var modules = new Array();
	var m=new Object();

	if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['module[]']) {
		m=document.getElementsByName('module[]');
		//alert('m : '+m);
	}
	var nM=m.length;
	if(nM>0) {
		for(var i=0; i<nM; i++) {
			 modules[i]=m[i].value;
			//alert('modules['+i+'] : '+modules[i]);
		}
	}
	else {
		modules[0]='';
		//pre_fields[0] = '';
	}
	return modules;
}


function printWindow(url, largeur, hauteur) {
	//var detectBlockerPopup=detectPopupBlocker();
	//if(detectBlockerPopup) {
		// media print
		var linkAlternate = document.createElement('LINK');
		linkAlternate.setAttribute('rel','alternate');
		linkAlternate.setAttribute('media','print');
		linkAlternate.setAttribute('href',url);
		document.getElementsByTagName('HEAD')[0].appendChild(linkAlternate);
		
		// une div conteneur
		var divFrame = document.createElement('DIV');
		//alert(window.screen.availWidth+' ; '+window.screen.availHeight);
		var screenWidth=window.screen.availWidth;
		var screenHeight=window.screen.availHeight;
		divFrame.setAttribute('width',screenWidth+'px');
		divFrame.setAttribute('height',screenHeight+'px');
		divFrame.setAttribute('id','div_framePrint');
		divFrame.style.position="absolute";
		divFrame.style.textAlign="center";
		
		divFrame.style.top="0px";
		divFrame.style.left="0px";
		divFrame.style.background="#DADADA";
		divFrame.style.padding="10px";

		document.getElementsByTagName('BODY')[0].appendChild(divFrame);
		//creer une iframe
		var iframe = document.createElement('IFRAME');
		iframe.setAttribute('width',(screenWidth/2)+'px');
		iframe.setAttribute('height','200px');
		iframe.setAttribute('id','framePrint');
		iframe.setAttribute('name','framePrint');
		//iframe.setAttribute('visibility','hidden');
		iframe.src=url;
		document.getElementById('div_framePrint').appendChild(iframe);
		window.scrollTo(0,0);
/*	}
	else {
		popupWindow(url, largeur, hauteur) ;
	}
*/	
}




function getProductsAddressBook() {
	//alert('getFormContactsGroups');
	if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['products__id_programmes']) {
		var id_contacts = document.forms['form_new_and_edit'].elements['products__id_contacts'].value;
		var id_products = document.forms['form_new_and_edit'].elements['products__id_products'].value;
		var inputStatut = document.forms['form_new_and_edit'].elements['products__id_programmes'];
		var id_programmes = inputStatut.value;
		
		var form_new=true;
		var form_edit=false;
		var form_copy=false;
		
		if(id_products){
			var form_new=false;
			var form_edit=true;
		}

		// supprimer le champ #contacts__spanAddressBook
		if(document.getElementById('products__spanAddressBook')){
			var tableAdherentsAdressBook=document.getElementById('products__spanAddressBook');
			if(id_programmes!=0){
			//	remplacerHtml(tableAdherentsAdressBook, '<em>Adresse du bien identique à celle du programme</em>');
				changeTableAddressBook('products__', 'module=products&id_products='+id_products+'&id_programmes='+id_programmes) ;
			}
			else {
				// remettre contacts__id_address_book !
				changeTableAddressBook('products__', 'module=products&id_products='+id_products) ;
			}
		}
		
		// mettre à jour products__id_products_categories par rapport au programme choisi
			
		
		inputStatut.onchange = function() {
			majDefautSelected(this);
			requete4 = creerRequete();
			getProductsAddressBook();
			getProductsCategoriesFromProgrammes(this.value);
			getDateCal_date_birth();
		}
	}
	else return false;
}
function getProductsCategoriesFromProgrammes(id_programmes){
	if(document.forms['form_new_and_edit'] && document.forms['form_new_and_edit'].elements['products__id_products_categories']) {
	
		var Rep=getRep();
		//alert('Rep : '+Rep);
		var admin='0';
		if(Rep=='') admin='1';
		var requete8 = creerRequete();
		if(requete8!=null) {
			var url = Rep+"includes/ajax-getSelectProductsCategories.php?ajax=1&admin="+admin+"&id_programmes="+id_programmes+"&time="+new Date().getTime();
			requete8.open("GET", url, true); // true = requete asynchrone
			requete8.onreadystatechange = function(){
				actualiserPage8(requete8);
			}
			requete8.send(null);
		}
	}
}

function actualiserPage8(requete8) {
	if(requete8!=null & requete8.readyState == 4) {
		if(requete8.status == 200) {
			var Result = requete8.responseText;
			//alert(Result);
			// actualiser la page avec les nouvelles valeurs
			var ELselect_Select_idProductsCategories = document.forms['form_new_and_edit'].elements['products__id_products_categories'] ; 
			var ELselectBoolean= Boolean(ELselect_Select_idProductsCategories);
			
			var new_label = document.createElement('label');
			new_label.setAttribute('for', 'products__id_products_categories');
			remplacerHtml(new_label, 'Catégorie de bien') ;

			var new_div=ELselect_Select_idProductsCategories.parentNode;

			remplacerHtml(new_div, Result);
			var el_select=new_div.firstChild;
			new_div.insertBefore(new_label, el_select);
			
			getProductAttributes();
		}
	}	
}
