var personCount=1;
var extentCount=1;
var collectionCount=1;
var commonCount=1;
var geoCount=1;
var objCount=1;
var specimenCount=1;
// var agentCount=1;
var preservationCount=1;
var natureCount=1;

function validateForm(){
   var paf = 1;
   var pif = 0;
   var pof = 0;
   var puf = 0;
   var pyf = 0;
  
   if (getFieldId('parentInstitutionDiv').style.display=="block") paf = validateParentInstitution();
   pif = validateInstitution();
   pof = validateRole();
//    puf = validateAgent();
   pyf = validateCollection();
	pef = 1;
//    pef = validateNumbers();
 
 var polom=true;
  
  if (paf==0 || pif==0 || pof==0 ||pyf==0 || pef==0 )polom=false;
  return polom;
}









function validateParentInstitution(){
var toRet=1;
    if (getFieldId('ParentInstitutionName').value == ""){ 
	alert("Rentrez un nom pour l'institution mère");  
	getFieldId('ParentInstitutionNameO').style.color = 'red';
	getFieldId('ParentInstitutionName').focus(); 
	toRet=0;
    }

// if (getFieldId('ParentInstitutionDiv').style.display == "block"){
if (getFieldId('ParentInstitutionalContactPost').value == ""){ 
	alert("Rentrez un type de contact pour l'institution mère");  
	getFieldId('ParentInstitutionalContactPostO').style.color = 'red';
	getFieldId('ParentInstitutionalContactPost').focus(); 
	toRet= 0;
    }
	if (getFieldId('ParentInst_type').value == 0){ 
	alert("Rentrez un type pour l'institution mère");  
	getFieldId('ParentInst_typeO').style.color = 'red';
	getFieldId('ParentInst_type').focus(); 
	toRet=0;
    }
if (getFieldId('ParentRegion').value == ""){ 
	alert("Rentrez la région de l'institution mère");  
	getFieldId('ParentRegionO').style.color = 'red';
	getFieldId('ParentRegion').focus(); 
	toRet= 0;
    }
if (getFieldId('ParentTown').value == ""){ 
	alert("Rentrez la ville de l'institution mère");  
	getFieldId('ParentTownO').style.color =  'red';
	getFieldId('ParentTown').focus(); 
	toRet= 0;
    }
if (getFieldId('ParentZIPCode').value == ""){ 
	alert("Rentrez le code postal de l'institution mère");  
	getFieldId('ParentZIPCodeO').style.color = 'red';
	getFieldId('ParentZIPCode').focus(); 
	toRet= 0;
    }
if (getFieldId('ParentCountryName').value == ""){ 
	alert("Rentrez le pays de l'institution mère");  
	getFieldId('ParentCountryNameO').style.color = 'red';
	getFieldId('ParentCountryName').focus(); 
	toRet= 0;
    }
//  if (getFieldId('ParentTelephone').value != ""){
//         if (isInt(getFieldId('ParentTelephone').value) == false){
//         alert("Rentrez un numéro de téléphone valide");
//         getFieldId('ParentTelephone').focus();
// 	getFieldId('ParentTelephoneO').style.color = 'red';
//         toRet= 0;
//     }
// }
// }
return toRet;
}
 

function validateInstitution(){
var toRet=1;
var bloc=0;
if (getFieldId('InstitutionDiv').style.display == "block"){
var bloc=1;
}
    if (getFieldId('InstitutionName').value == ""){ 
	alert("Rentrez un nom pour l'institution");  
	getFieldId('InstitutionNameO').style.color = 'red';
	if (bloc==0) {
	getFieldId('IdentifierO').style.color = 'red';
}
	getFieldId('InstitutionName').focus(); 
	toRet= 0;
    }
if (bloc==1){
if (getFieldId('InstitutionalContactPost').value == ""){ 
	alert("Rentrez un type de contact pour l'institution");  
	getFieldId('InstitutionalContactPostO').style.color = 'red';
	getFieldId('InstitutionalContactPost').focus(); 
	toRet= 0;
    }
if (getFieldId('Inst_type').value == 0){ 
	alert("Rentrez un type pour l'institution");  
	getFieldId('Inst_typeO').style.color = 'red';
	getFieldId('Inst_type').focus(); 
	toRet=0;
    }
if (getFieldId('Region').value == ""){ 
	alert("Rentrez la région de l'institution");  
	getFieldId('RegionO').style.color = 'red';
	getFieldId('Region').focus(); 
	toRet= 0;
    }
if (getFieldId('Town').value == ""){ 
	alert("Rentrez la ville de l'institution");  
	getFieldId('TownO').style.color = 'red';
	getFieldId('Town').focus(); 
	toRet= 0;
    }
if (getFieldId('ZIPCode').value == ""){ 
	alert("Rentrez le code postal de l'institution");  
	getFieldId('ZIPCodeO').style.color = 'red';
	getFieldId('ZIPCode').focus(); 
	toRet= 0;
    }
if (getFieldId('CountryName').value == ""){ 
	alert("Rentrez le pays de l'institution");  
	getFieldId('CountryNameO').style.color = 'red';
	getFieldId('CountryName').focus(); 
	toRet= 0;
    }
//  if (getFieldId('Telephone').value != ""){
//         if (isInt(getFieldId('Telephone').value) == false){
//         alert("Rentrez un numéro de téléphone valide");
//         getFieldId('Telephone').focus();
// 	getFieldId('TelephoneO').style.color = 'red';
//         toRet= 0;
//     }
// }
}
return toRet;
  } 
 

 function validateRole(){
 var toRet=1;

 if (getFieldId('role_source').value == "" || getFieldId('role_source').value == "Roles"){ 
	alert("Rentrez un rôle pour la personne");
	getFieldId('Role').style.color = 'red';
	getFieldId('role_source').focus(); 
	toRet= 0;
    }

    if (getFieldId('FamilyName').value == ""){ 
	alert("Rentrez un nom pour la personne");  
	getFieldId('FamilyNameO').style.color = 'red';
	getFieldId('FamilyName').focus(); 
	toRet= 0;
    }
if (getFieldId('GivenNames').value == ""){ 
	alert("Rentrez un prénom pour la personne"); 
	getFieldId('GivenNamesO').style.color = 'red'; 
	getFieldId('GivenNames').focus(); 
	toRet= 0;
    }
if (getFieldId('Person_Email').value == ""){ 
	alert("Rentrez un email pour la personne");  
	getFieldId('Person_EmailO').style.color = 'red';
	getFieldId('Person_Email').focus(); 
	toRet= 0;
    }
if (getFieldId('Person_Phone').value == ""){ 
	alert("Rentrez un numéro de téléphone pour la personne");  
	getFieldId('Person_PhoneO').style.color = 'red';
	getFieldId('Person_Phone').focus(); 
	toRet= 0;
    }
//  if (getFieldId('Person_Phone').value != ""){
//         if (isInt(getFieldId('Person_Phone').value) == false){
//         alert("Rentrez un numéro de téléphone valide");
//         getFieldId('Person_Phone').focus();
//         toRet= 0;
//     }
// }
if (getFieldId('Person_Address').value == ""){ 
	alert("Rentrez une adresse pour la personne"); 
	getFieldId('Person_AddressO').style.color = 'red'; 
	getFieldId('Person_Address').focus(); 
	toRet= 0;
    }
return toRet;
  } 




function validateCollection(){
   var toRet=1;
    if (getFieldId('CollectionName').value == ""){ 
	alert("Rentrez un nom pour la collection");  
	getFieldId('CollectionName').focus(); 
	getFieldId('CollectionNameO').style.color = 'red';
	toRet=0;
    }
    if (getFieldId('Abstract').value == ""){
        alert("Rentrez une description pour la collection");
        getFieldId('Abstract').focus();
        getFieldId('AbstractO').style.color = 'red';
        toRet=0;
    }

return toRet;
  } 

// function validateAgent(){
// if (getField('nbOfAgent').value >=1) return 1;
//  if (getFieldId('AgentName').value == ""){
//         alert("Rentrez un nom pour l'agent");
//         getFieldId('AgentName').focus();
//         getFieldId('AgentNameO').style.color = 'red';
// 	return 0;
//     }
// return 1;
// }


function validateNumbers(){
var toRet=1;
//  if (getFieldId('ParentTelephone').value != ""){
//         if (isInt(getFieldId('ParentTelephone').value) == false){
//         alert("Rentrez un numéro de téléphone valide");
//         getFieldId('ParentTelephone').focus();
// 	getFieldId('ParentTelephoneO').style.color = 'red';
// 
//         toRet= 0;
//     }
// }
//  if (getFieldId('Telephone').value != ""){
//         if (isInt(getFieldId('Telephone').value) == false){
//         alert("Rentrez un numéro de téléphone valide");
//         getFieldId('Telephone').focus();
// 	getFieldId('TelephoneO').style.color = 'red';
//         toRet= 0;
//     }
// }
//  if (getFieldId('Person_Phone').value != ""){
//         if (isInt(getFieldId('Person_Phone').value) == false){
//         alert("Rentrez un numéro de téléphone valide");
//         getFieldId('Person_Phone').focus();
// 	getFieldId('Person_PhoneO').style.color = 'red';
//         toRet= 0;
//     }
// }
return toRet;
}


function getFieldId (id) {
	 if (document.getElementById)
    {
        // this is the way the standards work
        var obj = document.getElementById(id);
    }
    else if (document.all)
    {
        // this is the way old msie versions work
        var obj = document.all[id];
    }
    else if (document.layers)
    {
        // this is the way nn4 works
        var obj = document.layers[id];
    }
    return obj;
} 

function getField (fieldName) {
    form=getFieldId('metadataForm')
    if (!document.all)
        return form[fieldName];

    else  // IE has a bug not adding dynamically created field 
        // as named properties so we loop through the elements array 
       for (var e = 0; e < form.elements.length; e++)
           if (form.elements[e].name == fieldName)
               return form.elements[e];
    return null;
}


//---------------------------------------------------------
function addField() {
        

}


function addPerson(){
	var ok = validateRole();
	if (ok ==1){
	ancre = getFieldId('dynamicPerson');
        liste = getFieldId('roleList');
	var val = liste.options[liste.selectedIndex].value;
	if (val == "Roles")
	{
		alert("Sélectionnez un rôle");
		return;
	}
	if (val == "Autre ...")
        	var role = getFieldId("role_source").value;
	else
		var role = val;
	var nom = getFieldId("FamilyName").value;
	var prenoms = getFieldId("GivenNames").value;
	var prefix =  getFieldId("NamePrefix").value;
	var suffix = getFieldId("NameSuffix").value;
	var otherNames = getFieldId("AdditionalNames").value;
	var preferedName = getFieldId("PreferredFormOfName").value;
	var naissance = getFieldId("BirthYear").value;
	var mort = getFieldId("DeathYear").value;
	var mail = getFieldId("Person_Email").value;
	var tel = getFieldId("Person_Phone").value;
	var fax = getFieldId("Person_Fax").value;
	var adresse = getFieldId("Person_Address").value;
        
        var toInclude = '<input class="person" name="role_source'+personCount+'" id="role_source'+personCount+'" value="'+role+'" readonly="readonly" type="text"/><br>';
	toInclude+= '<input class="person" name="FamilyName'+personCount+'" id="FamilyName'+personCount+'" value="'+nom+'" readonly="readonly" type="text"/><br>';
	toInclude+= '<input class="person" name="GivenNames'+personCount+'" id="GivenNames'+personCount+'" value="'+prenoms+'" readonly="readonly" type="text"/><br>';
	toInclude+= '<input class="person" name="NamePrefix'+personCount+'" id="NamePrefix'+personCount+'" value="'+prefix+'" readonly="readonly" type="text"/><br>' ;
// 	if (prefix != "") toInclude+='<br>';
	toInclude+= '<input class="person" name="NameSuffix'+personCount+'" id="NameSuffix'+personCount+'" value="'+suffix+'" readonly="readonly" type="text"/><br>';
// 	if (suffix != "") toInclude+='<br>';
	toInclude+= '<input class="person" name="AdditionalNames'+personCount+'" id="AdditionalNames'+personCount+'" value="'+otherNames+'" readonly="readonly" type="text"/><br>';
// 	if (otherNames != "") toInclude+= '<br>';
	toInclude+= '<input class="person" name="PreferredFormOfName'+personCount+'" id="PreferredFormOfName'+personCount+'" value="'+preferedName+'" readonly="readonly" type="text"/><br>';
// 	if (preferedName != "") toInclude+= '<br>';
	toInclude+= '<input class="person" name="BirthYear'+personCount+'" id="BirthYear'+personCount+'" value="'+naissance+'" readonly="readonly" type="text"/><br>';
// 	if (naissance != "") toInclude+= '<br>';
	toInclude+= '<input class="person" name="DeathYear'+personCount+'" id="DeathYear'+personCount+'" value="'+mort+'" readonly="readonly" type="text"/><br>';
// 	if (mort != "")  toInclude+= '<br>';
	toInclude+= '<input class="person" name="Person_Email'+personCount+'" id="Person_Email'+personCount+'" value="'+mail+'" readonly="readonly" type="text"/><br>';
// 	if (mail != "")  toInclude+= '<br>';
	toInclude+= '<input class="person" name="Person_Phone'+personCount+'" id="Person_Phone'+personCount+'" value="'+tel+'" readonly="readonly" type="text"/><br>';
	toInclude+= '<input class="person" name="Person_Fax'+personCount+'" id="Person_Fax'+personCount+'" value="'+fax+'" readonly="readonly" type="text"/><br>';
// 	if (tel != "")  toInclude+= '<br>';
	toInclude+= '<input class="person" name="Person_Address'+personCount+'" id="Person_Address'+personCount+'" value="'+adresse+'" readonly="readonly" type="text"/><br>';
// 	if (adresse != "")  toInclude+= '<br>';
	toInclude+='<input class="person button validation" id="PersonClear' +personCount+'" value="Supprimer" readonly="readonly" type="button" onmouseover="this.style.cursor=\'pointer\';" onclick="deletePerson('+personCount+')"/><br>';
	
	ancre.innerHTML += toInclude;
	ancre.display="block";  
	getFieldId("nbOfPerson").value=personCount;
	personCount ++;   

	//reset all fields
	getFieldId("FamilyName").value ='';
	getFieldId("GivenNames").value='';
	getFieldId("NamePrefix").value='';
	getFieldId("NameSuffix").value='';
	getFieldId("AdditionalNames").value='';
	getFieldId("PreferredFormOfName").value='';
	getFieldId("BirthYear").value='';
	getFieldId("DeathYear").value='';
	getFieldId("Person_Email").value='';
	getFieldId("Person_Phone").value='';
	getFieldId("Person_Fax").value='';
	getFieldId("Person_Address").value=''; 
	getFieldId("role_source").value='';
	}
}

function deletePerson(number){
	toDelete = ["role_source"+number+"" ,  "FamilyName"+number+"" ,  "GivenNames"+number+"" , 
		 "NamePrefix"+number+"" ,  "NameSuffix"+number ,  "AdditionalNames"+number +"", 
		 "PreferredFormOfName"+number+"" ,  "BirthYear"+number+"" ,  "NameSuffix"+number +"", 
		 "BirthYear"+number+"" ,  "DeathYear"+number+"" ,  "Person_Email"+number+"" , 
		 "Person_Phone"+number+"" ,"Person_Fax"+number+"" ,  "Person_Address"+number+"" ,  "PersonClear"+number+""
		]
	elements=getFieldId("dynamicPerson").innerHTML.split("<br>"); //br en maj sinon pas identifié...
	if (elements.length==1) {
		elements=getFieldId("dynamicPerson").innerHTML.split("<BR>");
	}
	newInner = [];
	j=0;
	for (i=0;i<elements.length;i++){
		tokeep=true;
		for (k=0;k<toDelete.length;k++){
			if (elements[i].indexOf(toDelete[k]) != -1){
				tokeep=false;
				break;
			}
		}
		if (tokeep){
			newInner[j] = elements[i]
			j++;
		}
	}
	newInner = newInner.join("<br>");
	getFieldId("dynamicPerson").innerHTML = newInner;
}

function deleteExtent(number){
	toDelete = ["Number"+number+"" ,  "UnitOfMeasure"+number+"" ,  "ExtentClear"+number+""]
	elements=getFieldId("dynamicExtent").innerHTML.split("<br>"); //br en maj sinon pas identifié...
	if (elements.length==1) {
		elements=getFieldId("dynamicExtent").innerHTML.split("<BR>");
	}
	newInner = [];
	j=0;
	for (i=0;i<elements.length;i++){
		tokeep=true;
		for (k=0;k<toDelete.length;k++){
			if (elements[i].indexOf(toDelete[k]) != -1){
				tokeep=false;
				break;
			}
		}
		if (tokeep){
			newInner[j] = elements[i]
			j++;
		}
	}
	newInner = newInner.join("<br>");
	getFieldId("dynamicExtent").innerHTML = newInner;
}

function addExtent(){
	ancre = getFieldId('dynamicExtent');
        
	var nb = getFieldId("Number").value;
	var unit = getFieldId("UnitOfMeasure").value;
	ok=1;
	if (nb == "") {
		alert ("Rentrez le nombre d'éléments de la collection");
		getFieldId('NumberO').style.color =  'red';
		getFieldId('Number').focus(); 
		ok= 0;
	}
	if (unit == "") {
		alert ("Rentrez l'unité de mesure concernant la collection");
		getFieldId('UnitOfMeasureO').style.color =  'red';
		getFieldId('UnitOfMeasure').focus(); 
		ok= 0;
	}
	if (ok == 1) {
        
        var toInclude = '<input class="extent max" name="Number'+extentCount+'" id="Number'+extentCount+'" value="'+nb+'"  type="text"><br>';
	toInclude+= '<input class="extent max" name="UnitOfMeasure'+extentCount+'" id="UnitOfMeasure'+extentCount+'" value="'+unit+'"  type="text"/><br>';
	toInclude+= '<input class="extent button validation" id="ExtentClear'+extentCount+' " value="Supprimer" readonly="readonly" type="button" onmouseover="this.style.cursor=\'pointer\';" onclick="deleteExtent('+extentCount+')"/><br>';
	
	ancre.innerHTML += toInclude;
	ancre.display="block";
	getFieldId("nbOfExtent").value=extentCount;
	extentCount ++;   

	//reset all fields
	getFieldId("Number").value ='';
	getFieldId("UnitOfMeasure").value='';
}
}



// onclick="getFieldId('CommonNameCoverage').innerHTML+= '<input name=supprimer type=checkbox value=supprimer></input> &nbsp;'+common.value+'<br/>';
// document.getElementById('common').value='';
// document.getElementById('commoncontenu').innerHTML = '';


function addCommon(){
	ancre = getFieldId('CommonNameCoverage');
        
	var common = getFieldId('common').value;
	ok=1;
	if (common == "") {
		alert ("Rentrez d'abord un mot-clé");
		getFieldId('common').focus(); 
		ok= 0;
	}
	if (ok == 1) {
        
	var toInclude = '<input class="commonname button validation" id="CommonClear'+commonCount+' " value="Supprimer" readonly="readonly" type="button" onmouseover="this.style.cursor=\'pointer\';" onclick="deleteCommon('+commonCount+')"/>&nbsp;';
        toInclude += '<input name="Common'+commonCount+'" id="Common'+commonCount+'" value="'+common+'" type="hidden">'+common+'<br>';

	ancre.innerHTML += toInclude;
	ancre.display="block";
	getFieldId("nbOfCommon").value=commonCount;
	commonCount ++;   

	//reset all fields
	getFieldId("common").value ='';
	getFieldId('commoncontenu').innerHTML = '';
}
}

function deleteCommon(number){
	toDelete = ["CommonClear"+number+"", "Common"+number+""]
	elements=getFieldId("CommonNameCoverage").innerHTML.split("<br>"); //br en maj sinon pas identifié...
	if (elements.length==1) {
		elements=getFieldId("CommonNameCoverage").innerHTML.split("<BR>");
	}
	newInner = [];
	j=0;
	for (i=0;i<elements.length;i++){
		tokeep=true;
		for (k=0;k<toDelete.length;k++){
			if (elements[i].indexOf(toDelete[k]) != -1){
				tokeep=false;
				break;
			}
		}
		if (tokeep){
			newInner[j] = elements[i]
			j++;
		}
	}
	newInner = newInner.join("<br>");
	getFieldId("CommonNameCoverage").innerHTML = newInner;
}

function addGeo(){
	ancre = getFieldId('GeospatialCoverage');
        
	var geo = getFieldId('geo').value;
	ok=1;
	if (geo == "") {
		alert ("Rentrez d'abord un mot-clé");
		getFieldId('geo').focus(); 
		ok= 0;
	}
	if (ok == 1) {
        
	var toInclude = '<input class="geo button validation" id="GeoClear'+geoCount+' " value="Supprimer" readonly="readonly" type="button" onmouseover="this.style.cursor=\'pointer\';" onclick="deleteGeo('+geoCount+')"/>&nbsp;';
        toInclude += '<input name="Geo'+geoCount+'" id="Geo'+geoCount+'" value="'+geo+'" type="hidden">'+geo+'<br>';

	ancre.innerHTML += toInclude;
	ancre.display="block";
	getFieldId("nbOfGeo").value=geoCount;
	geoCount ++;   

	//reset all fields
	getFieldId("geo").value ='';
	getFieldId('geocontenu').innerHTML = '';
}
}

function deleteGeo(number){
	toDelete = ["GeoClear"+number+"", "Geo"+number+""]
	elements=getFieldId("GeospatialCoverage").innerHTML.split("<br>"); //br en maj sinon pas identifié...
	if (elements.length==1) {
		elements=getFieldId("GeospatialCoverage").innerHTML.split("<BR>");
	}
	newInner = [];
	j=0;
	for (i=0;i<elements.length;i++){
		tokeep=true;
		for (k=0;k<toDelete.length;k++){
			if (elements[i].indexOf(toDelete[k]) != -1){
				tokeep=false;
				break;
			}
		}
		if (tokeep){
			newInner[j] = elements[i]
			j++;
		}
	}
	newInner = newInner.join("<br>");
	getFieldId("GeospatialCoverage").innerHTML = newInner;
}


function addObj(){
	ancre = getFieldId('ObjectClass');
        
	var obj = getFieldId('obj').value;
	ok=1;
	if (obj == "") {
		alert ("Rentrez d'abord un mot-clé");
		getFieldId('obj').focus(); 
		ok= 0;
	}
	if (ok == 1) {
        
	var toInclude = '<input class="obj button validation" id="ObjClear'+objCount+' " value="Supprimer" readonly="readonly" type="button" onmouseover="this.style.cursor=\'pointer\';" onclick="deleteObj('+objCount+')"/>&nbsp;';
        toInclude += '<input name="Obj'+objCount+'" id="Obj'+objCount+'" value="'+obj+'" type="hidden">'+obj+'<br>';

	ancre.innerHTML += toInclude;
	ancre.display="block";
	getFieldId("nbOfObj").value=objCount;
	objCount ++;   

	//reset all fields
	getFieldId("obj").value ='';
	getFieldId('objcontenu').innerHTML = '';
}
}

function deleteObj(number){
	toDelete = ["ObjClear"+number+"", "Obj"+number+""]
	elements=getFieldId("ObjectClass").innerHTML.split("<br>"); //br en maj sinon pas identifié...
	if (elements.length==1) {
		elements=getFieldId("ObjectClass").innerHTML.split("<BR>");
	}
	newInner = [];
	j=0;
	for (i=0;i<elements.length;i++){
		tokeep=true;
		for (k=0;k<toDelete.length;k++){
			if (elements[i].indexOf(toDelete[k]) != -1){
				tokeep=false;
				break;
			}
		}
		if (tokeep){
			newInner[j] = elements[i]
			j++;
		}
	}
	newInner = newInner.join("<br>");
	getFieldId("ObjectClass").innerHTML = newInner;
}

function addSpecimen(){
	ancre = getFieldId('SpecimenPreservationMethod');
        
	var specimen = getFieldId('preservationmethod').value;
	var reg = new RegExp('@',"gi")
	specimen=(specimen.replace(reg,' '));
	ok=1;
	if (specimen == "Méthode de préservation") {
		alert ("Rentrez d'abord un mot-clé");
		getFieldId('specimen').focus(); 
		ok= 0;
	}
	if (ok == 1) {
        
	var toInclude = '<input class="specimen button validation" id="SpecimenClear'+specimenCount+' " value="Supprimer" readonly="readonly" type="button" onmouseover="this.style.cursor=\'pointer\';" onclick="deleteSpecimen('+specimenCount+')"/>&nbsp;';
        toInclude += '<input name="Specimen'+specimenCount+'" id="Specimen'+specimenCount+'" value="'+specimen+'" type="hidden">'+specimen+'<br>';

	ancre.innerHTML += toInclude;
	ancre.display="block";
	getFieldId("nbOfSpecimen").value=specimenCount;
	specimenCount ++;   

	//reset all fields
// 	getFieldId('preservationmethod').value ='Méthode de préservation';
// 	getFieldId('specimencontenu').innerHTML = '';
}
}



function deleteSpecimen(number){
	toDelete = ["SpecimenClear"+number+"", "Specimen"+number+""]
	elements=getFieldId("SpecimenPreservationMethod").innerHTML.split("<br>"); //br en maj sinon pas identifié...
	if (elements.length==1) {
		elements=getFieldId("SpecimenPreservationMethod").innerHTML.split("<BR>");
	}
	newInner = [];
	j=0;
	for (i=0;i<elements.length;i++){
		tokeep=true;
		for (k=0;k<toDelete.length;k++){
			if (elements[i].indexOf(toDelete[k]) != -1){
				tokeep=false;
				break;
			}
		}
		if (tokeep){
			newInner[j] = elements[i]
			j++;
		}
	}
	newInner = newInner.join("<br>");
	getFieldId("SpecimenPreservationMethod").innerHTML = newInner;
}

function addNature(){
	ancre = getFieldId('CollectionType');
        
	var nature = getFieldId('collectiontype').value;
	var reg = new RegExp('@',"gi")
	nature=(nature.replace(reg,' '));
	ok=1;
	if (nature == "Nature de la collection") {
		alert ("Rentrez d'abord un mot-clé");
		getFieldId('nature').focus(); 
		ok= 0;
	}
	if (ok == 1) {
        
	var toInclude = '<input class="nature button validation" id="NatureClear'+natureCount+' " value="Supprimer" readonly="readonly" type="button" onmouseover="this.style.cursor=\'pointer\';" onclick="deleteNature('+natureCount+')"/>&nbsp;';
        toInclude += '<input name="Nature'+natureCount+'" id="Nature'+natureCount+'" value="'+nature+'" type="hidden">'+nature+'<br>';

	ancre.innerHTML += toInclude;
	ancre.display="block";
	getFieldId("nbOfNature").value=natureCount;
	natureCount ++;   

	//reset all fields
// 	getFieldId('preservationmethod').value ='Méthode de préservation';
// 	getFieldId('specimencontenu').innerHTML = '';
}
}

function deleteNature(number){
	toDelete = ["NatureClear"+number+"", "Nature"+number+""]
	elements=getFieldId("CollectionType").innerHTML.split("<br>"); //br en maj sinon pas identifié...
	if (elements.length==1) {
		elements=getFieldId("CollectionType").innerHTML.split("<BR>");
	}
	newInner = [];
	j=0;
	for (i=0;i<elements.length;i++){
		tokeep=true;
		for (k=0;k<toDelete.length;k++){
			if (elements[i].indexOf(toDelete[k]) != -1){
				tokeep=false;
				break;
			}
		}
		if (tokeep){
			newInner[j] = elements[i]
			j++;
		}
	}
	newInner = newInner.join("<br>");
	getFieldId("CollectionType").innerHTML = newInner;
}


function deleteCollection(number){
	toDelete = ["CollectionName"+number+"" ,  "CollectionUniformName"+number+"" ,  "Abstract"+number+"" , 
		 "Desc"+number+"" ,  "DescriptionForSpecialists"+number ,  "Notes"+number +"", 
		 "TelephonNumber"+number+"" ,  "Extent"+number+"" ,  "IncludesTypes"+number +"", 
		 "CollectionFocus"+number+"" ,  "CollectionPurpose"+number+"" , 
"ParentCollectionName"+number+"",
		 "Address"+number+"" ,  "CollectionClear"+number+""
		]
	elements=getFieldId("dynamicCollection").innerHTML.split("<br>"); //br en maj sinon pas identifié...
	if (elements.length==1) {
		elements=getFieldId("dynamicCollection").innerHTML.split("<BR>");
	}
	newInner = [];
	j=0;
	for (i=0;i<elements.length;i++){
		tokeep=true;
		for (k=0;k<toDelete.length;k++){
			if (elements[i].indexOf(toDelete[k]) != -1){
				tokeep=false;
				break;
			}
		}
		if (tokeep){
			newInner[j] = elements[i]
			j++;
		}
	}
	newInner = newInner.join("<br>");
	getFieldId("dynamicCollection").innerHTML = newInner;
}



function addPreservationMethod(){
displayPreservationMethod();
}


function displayPersonField(){
liste = getFieldId('roleList');
var val = liste.options[liste.selectedIndex].value;
if (val == "Roles")
{
alert("Sélectionnez un rôle");
return;
}
elt2=getFieldId('role_source');

if (val == "Autre ..."){ val="Saisissez le rôle ici"; elt2.style.display="block";}
elt2.value=val;
elt2.focus();
}

function displayTaxonField(){
liste = getFieldId('taxoncoverage');
var val = liste.options[liste.selectedIndex].value;
elt2=getFieldId('taxon');
var reg = new RegExp('@',"gi")
elt2.value=(val.replace(reg,' '));
// elt2.value=val;
elt2.focus();
}

function displayCommonField(){
liste = getFieldId('commonnamecoverage');
var val = liste.options[liste.selectedIndex].value;
elt2=getFieldId('common');
var reg = new RegExp('@',"gi")
elt2.value=(val.replace(reg,' '));
elt2.focus();
}

function displayGeoField(){
liste = getFieldId('geospatialcoverage');
var val = liste.options[liste.selectedIndex].value;
elt2=getFieldId('geo');
var reg = new RegExp('@',"gi")
elt2.value=(val.replace(reg,' '));
elt2.focus();
}

function displayObjectField(){
liste = getFieldId('objectclass');
var val = liste.options[liste.selectedIndex].value;
elt2=getFieldId('obj');
var reg = new RegExp('@',"gi")
elt2.value=(val.replace(reg,' '));
elt2.focus();
}



function displayCollectionField(){
liste = getFieldId('partOfList');
var val = liste.options[liste.selectedIndex].value;

elt2=getFieldId('ParentCollectionName');

if (val == "autre")
  elt2.style.display="block";
else {
elt2.style.display="none";
elt2.value=val;}
elt2.focus();

}

function displayPreservationMethod(){
liste = getFieldId('preservationMethods');
var val = liste.options[liste.selectedIndex].value;
if (val != "spm"){
elt2=getFieldId('SpecimenObservationMethod');


elt2.style.display="block";
if (val != 'autre')
elt2.value+=' | '+val;}
elt2.focus();

}

function displayInstitutionDiv(){
liste = getFieldId('institutionsList');
var val = liste.options[liste.selectedIndex].value;
elt2=getFieldId('InstitutionDiv');

if (val == "autre")
  elt2.style.display="block";
else {
elt2.style.display="none";
elt2=getFieldId('InstitutionName');
elt2.value=val;}
}

function displayParentInstitutionDiv(){
liste = getFieldId('institutionsParentList');
var val = liste.options[liste.selectedIndex].value;
elt2=getFieldId('parentInstitutionDiv');

if (val == "autre")
  elt2.style.display="block";
else {
elt2.style.display="none";
elt2=getFieldId('ParentInstitutionName');
elt2.value=val;}
}

function SetParentIso(){
liste = getFieldId('parentIsoList');
var val = liste.options[liste.selectedIndex].value;
elt2=getFieldId('ParentISOCountryCode');
elt2.value=val.split("|")[0];

elt2=getFieldId('ParentCountryName');
elt2.value=val.split("&")[1];
}

function SetIso(){
liste = getFieldId('isoList');
var val = liste.options[liste.selectedIndex].value;
elt2=getFieldId('ISOCountryCode');
elt2.value=val.split("&")[0];

elt2=getFieldId('CountryName');
elt2.value=val.split("&")[1];

}


function isInt(chaine) {
var ch;
if ( chaine == null || chaine == "" ) return false;
for (i = 0; i < chaine.length; i++) {
 ch = chaine.charAt(i);
 if ( ch < "0" || ch > "9" ) return false;
}
return true;
}


function scanChamp(objChamp)
{
	var reContenuValide = /^\d*$/; //Que des chiffres

	if (!reContenuValide.test(objChamp.value))
	{
		objChamp.value = '';
		objChamp.focus();
		alert('Veuillez entrer des données chiffrées dans le champs Nombre!');
	}
}



function sData(data, page, method, elem)
{
    if(window.ActiveXObject)
    {
        //Internet Explorer
        var FerTedObjc = new ActiveXObject("Microsoft.XMLHTTP") ;
    }//fin if
    else
    {
        //Mozilla
        var FerTedObjc = new XMLHttpRequest();
    }//fin else
    
    //d�finition de l'endroit d'affichage:
    var content = document.getElementById(elem);
    
    //si on envoie par la m�thode GET:
    if(method == "GET")
    {
        if(data == 'null')
        {
            //Ouverture du fichier s�lectionn�:
            FerTedObjc.open("GET", page);
        }//fin if
        else
        {
            //Ouverture du fichier en methode GET
            FerTedObjc.open("GET", page+"?"+data);
        }//fin else
    }//fin if
    else if(method == "POST")
    {
        //Ouverture du fichier en methode POST
        FerTedObjc.open("POST", page);
    }//fin elseif
    FerTedObjc.onreadystatechange = function()
    {
		//tant que la r�ponse n'est pas arriv� afficher l'image d'attente
		if (FerTedObjc.readyState < 4){
			
// 			content.innerHTML = '<img src="test.gif">';
		}
		else {
		//sinon retourner la r�ponse	
		content.innerHTML = FerTedObjc.responseText;
		
		}
    }    
    if(method == "GET")
    {
        FerTedObjc.send(null);
    }//fin if
    else if(method == "POST")
    {
        FerTedObjc.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
        FerTedObjc.send(data);
		
    }//fin elseif
}//fin fonction iLanceLoZaFair


function validateFormAgent(){
   var toRet=1;
    if (getFieldId('mail').value == ""){ 
	alert("Rentrez votre adresse mail");  
	getFieldId('mail').focus(); 
	getFieldId('mailO').style.color = 'red';
	toRet=false;
    }
    if (getFieldId('pwd').value == ""){
        alert("Rentrez votre mot de passe");
        getFieldId('pwd').focus();
        getFieldId('pwdO').style.color = 'red';
        toRet=false;
    }

return toRet;
  } 


 function validateNewAgent(){
 var toRet=1;

if (getFieldId('Person_Email').value == ""){ 
	alert("Rentrez votre adresse mail");  
	getFieldId('Person_EmailO').style.color = 'red';
	getFieldId('Person_Email').focus(); 
	toRet= false;
    }

    if (getFieldId('FamilyName').value == ""){ 
	alert("Rentrez votre nom");  
	getFieldId('FamilyNameO').style.color = 'red';
	getFieldId('FamilyName').focus(); 
	toRet= false;
    }
if (getFieldId('GivenNames').value == ""){ 
	alert("Rentrez votre prénom"); 
	getFieldId('GivenNamesO').style.color = 'red'; 
	getFieldId('GivenNames').focus(); 
	toRet= false;
    }
if (getFieldId('Person_Address').value == ""){ 
	alert("Rentrez votre adresse"); 
	getFieldId('Person_AddressO').style.color = 'red'; 
	getFieldId('Person_Address').focus(); 
	toRet= false;
    }
if (getFieldId('Person_Phone').value == ""){ 
	alert("Rentrez votre numéro de téléphone");  
	getFieldId('Person_PhoneO').style.color = 'red';
	getFieldId('Person_Phone').focus(); 
	toRet= false;
    }

if (getFieldId('pwd').value == ""){ 
	alert("Rentrez votre mot de passe"); 
	getFieldId('pwdO').style.color = 'red'; 
	getFieldId('pwd').focus(); 
	toRet= false;
    }
if (getFieldId('pwd2').value == ""){ 
	alert("Retapez votre mot de passe"); 
	getFieldId('pwd2O').style.color = 'red'; 
	getFieldId('pwd2').focus(); 
	toRet= false;
    }
    console.warn(toRet)
return toRet;
  }


function CheckDate(d) {
      // Cette fonction vérifie le format JJ-MM-AAAA saisi et la validité de la date.
      // Le séparateur est défini dans la variable separateur
	var date = d.value;

      var amin=1900; // année mini
      var amax=2200; // année maxi
      var separateur="-"; // separateur entre jour/mois/annee
      var j=(date.substring(0,2));
      var m=(date.substring(3,5));
      var a=(date.substring(6));
      var ok=1;

      if ( ((isNaN(j))||(j<1)||(j>31)) && (ok==1) ) {
         alert("Le jour n'est pas correct."); ok=0;
      }

      if ( ((isNaN(m))||(m<1)||(m>12)) && (ok==1) ) {
         alert("Le mois n'est pas correct."); ok=0;
      }

      if ( ((isNaN(a))||(a<amin)||(a>amax)) && (ok==1) ) {
         alert("L'année n'est pas correcte."); ok=0;
      }

      if ( ((date.substring(2,3)!=separateur)||(date.substring(5,6)!=separateur))
  && (ok==1) ) {
         alert("Les séparateurs doivent être des "+separateur); ok=0;
      }

      if (ok==1) {
         var d2=new Date(a,m-1,j);
         j2=d2.getDate();
         m2=d2.getMonth()+1;
         a2=d2.getFullYear();
         if ( (j!=j2)||(m!=m2)||(a!=a2) ) {
            alert("La date "+date+" n'existe pas !");
            ok=0;
         }
      }
	if (ok==0) {
		d.value='';
	}
      return ok;
}

function verifmail(m) {
var mail = m.value;
if(mail!=""){
if ((mail.indexOf("@")>=0)&&(mail.lastIndexOf(".")>mail.indexOf("@"))) {
console.warn(mail)
return true
} else {
alert("Votre adresse mail est invalide");
m.value='';
return false
}
}else{
return true
}
}
