
function Chk_UnChk_chkBox(theForm,theCheckboxName,value){
	var frm = theForm;
	for (i=0;i<frm.length; i++) 
	{
		intCount=0;
		// Look for our checkboxes only
		if (frm.elements[i].name.indexOf(theCheckboxName)!=-1) 
		{
			frm.elements[i].checked=value;
			
		}
	}
} 

function validatingCheckbox(theForm,theCheckboxName){
	var frm = theForm;
	
	
	var chkSelected="missing";
	// loop through all elements
	for (i=0;i<frm.length; i++) 
	{
		intCount=0;
		// Look for our checkboxes only
		if (frm.elements[i].name.indexOf(theCheckboxName)!=-1) 
		{
			if(frm.elements[i].checked){
				chkSelected="";
				i=frm.length;
			}
			
		}
	}
	return chkSelected;
}

function PopupCentrer(page,Name,largeur,hauteur,options) {
  var top=(screen.height-hauteur)/2;
  var left=(screen.width-largeur)/2;
  var MyPopup=window.open(page,Name,"top="+top+",left="+left+",width="+largeur+",height="+hauteur+","+options);

  MyPopup.focus();
  } 
  
function PopupHide(page,Name,largeur,hauteur,options) {
	var top=1000;
	var left=1000;
	
	var MyPopup=window.open(page,Name,"top="+top+",left="+left+",width="+largeur+",height="+hauteur+","+options);
	MyPopup.blur();
	
} 
  
function textCounter(field, maxlimit, msg) {
	if (field.value.length > maxlimit){
		field.value = field.value.substring(0, maxlimit);
		alert(msg);
	}

}

function textCounterWriteMsg(field, maxlimit, msg) {
	
	if (field.value.length > maxlimit){
		field.value = field.value.substring(0, maxlimit);
		//alert(field.name);
		WriteAlert(field.name,msg);
	}
	else if (field.value.length < maxlimit)
	{
		WriteAlert(field.name,'');
	}

}

function CuteEditorCounterWriteMsg(field, maxlimit, msg) {
/*if (field.value.length > maxlimit){
		field.value = field.value.substring(0, maxlimit);
		WriteAlert('txtTexte',msg);
	}*/
	WriteAlert('edtTexte', document.Form1["RemonteeHome1:txtTexte"].value);
}


function checkPeriod(dateDebut,dateFin,delimiter) 
{
	var datePremier = document.Form1[dateDebut].value;				
	var dateReprise = document.Form1[dateFin].value;
	var datePremier_arr = datePremier.split(delimiter);
	var dateReprise_arr = dateReprise.split(delimiter);
	
	var beginDate=new Date(datePremier_arr[2],datePremier_arr[1]-1,datePremier_arr[0]);
	var endDate=new Date(dateReprise_arr[2],dateReprise_arr[1]-1,dateReprise_arr[0]);
	
	var dt = new Date();
	
	if (beginDate>=endDate)
	{
		return true;
	}
	else
	{
		return false;
	}
}

function checkCurrentDate(dateFin,delimiter)
{	
	var dt = new Date();	
	var dateReprise = document.Form1[dateFin].value;
	
	var dateReprise_arr = dateReprise.split(delimiter);
	
	var endDate=new Date(dateReprise_arr[2],dateReprise_arr[1]-1,dateReprise_arr[0]);
	
	if (dt>=endDate)
	{
		return true;
	}
	else
	{
		return false;
	}
}

function checkListEmail(emailList){

	email=document.Form1[emailList].value;
	
	var arrEmail=email.split(";");
	var i=0;
	var emailValid=true;
	
	for(i=0;i<arrEmail.length;i++){		
		
		if(!checkEmail(arrEmail[i])){
			if(arrEmail.length>1){
				alert(msg_emails_invalide);
			}else{
				alert(msg_email_invalide);
			}
			
			emailValid=false;
			break;
		}
	}
	//return false;
	return emailValid;		
}


// no alert...use WriteAlert
function checkListEmails(emailList, containerName){

	WriteAlert(containerName,'');

	email=document.Form1[emailList].value;
	
	var arrEmail=email.split(";");
	var i=0;
	var emailValid=""; // valid = true
	
	if(email != "")
	{	
		for(i=0;i<arrEmail.length;i++){		
			if( !checkEmail(trim(arrEmail[i])) ){
				
				if(arrEmail.length>1)
				{
					//alert(msg_emails_invalide);
					WriteAlert(containerName,msg_emails_invalide);
				}
				else if(arrEmail.length ==1)
				{
					//alert(msg_email_invalide);
					WriteAlert(containerName,msg_email_invalide);
				}
				else
				{
					WriteAlert(containerName,msg_Email);			
				}
				
				emailValid="false";
				break;
			}
		}
	}
	else
	{
		WriteAlert(containerName,msg_Email);		
	}
	
	//return false;
	return emailValid;		
}



function checkEmail(email)
{

	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email))
	{
			return (true);
			
	}
	else
	{			
	  		return (false);
	  		
	}
}


// Function to check field value
function ValidateField(strFieldName,ContainerName,msg){

	theField=Trim(strFieldName);

	if (theField.length>0)
	{
		// Field contains a value
		return true;
	}
	else
	{	
		WriteAlert(ContainerName,msg);
		return false;
	}
}

// Function to check field value
function ValidateFields(strFieldName,msg){
	theField=Trim(strFieldName);
	
	if (theField.length>0){
		// Field contains a value
		WriteAlert(strFieldName,'');
		return "";
	}
	else {
		
		// Field is empty
		WriteAlert(strFieldName,msg);
		return msg;
		}
}

//------------------------------------------------------------//
//------------------------------------------------------------//
// Function to check field value for Contact + Newsletter

// required field validator
function ValidateFieldsContact(strFieldName, msg, CssNormal){
	
	theField=Trim(strFieldName);
	
	if (theField.length>0){
		// Field contains a value
		WriteAlertContact(strFieldName, msg, CssNormal);
		return "";
	}
	else {		
		// Field is empty
		WriteAlertContact(strFieldName, msg, 'txtEtoile');
		return msg;
	}
}

function ValidateFieldsPhoto(strFieldName, msg, CssNormal){
	
	theField=Trim(strFieldName);
	
	if (theField.length>0){
		// Field contains a value
		WriteAlertPhoto(strFieldName, msg, CssNormal);
		return "";
	}
	else {		
		// Field is empty
		WriteAlertPhoto(strFieldName, msg, 'txtrouge11');
		return msg;
	}
}

// ddl check
function ValidateDDLContact(strFieldName, msg, CssNormal){
	theDDL = document.Form1[strFieldName];
	
	if (theDDL.selectedIndex == 0) {
		// NO value was selected
		WriteAlertContact(strFieldName, msg, 'txtEtoile');
		return msg;
	}
	else {
		// Value Selected
		WriteAlertContact(strFieldName, '*', CssNormal);
		return "";
	}

}

// email check
function CheckListEmailsContact(strFieldName, emailList, CssNormal){

	WriteAlertContact(strFieldName, '*', CssNormal);

	email=document.Form1[emailList].value;
	
	var arrEmail=email.split(";");
	var i=0;
	var emailValid=""; // valid = true
	
	if(email != "")
	{	
		for(i=0;i<arrEmail.length;i++){		
			if( !checkEmail(trim(arrEmail[i])) ){
				
				if(arrEmail.length>1)
				{
					//alert(msg_emails_invalide);
					WriteAlertContact(containerName, '*', 'txtEtoile');
				}
				else if(arrEmail.length ==1)
				{
					//alert(msg_email_invalide);
					WriteAlertContact(containerName, '*', 'txtEtoile');
				}
				else
				{
					WriteAlertContact(containerName, '*', 'txtEtoile');			
				}
				
				emailValid="false";
				break;
			}
		}
	}
	else
	{
		WriteAlertContact(containerName, '*', 'txtEtoile');		
	}
	
	//return false;
	return emailValid;	
}

function WriteAlertContact(ObjName,TexteAlert,Css){
	
  	getObj('Container'+ObjName).innerHTML='<span class='+Css+'><sup>'+TexteAlert+'</sup></span>';
}

function WriteAlertContactItalic(ObjName,TexteAlert,Css){
	
  	getObj('Container'+ObjName).innerHTML='<span class='+Css+'><i>'+TexteAlert+'</i></span>';
}

function WriteAlertPhoto(ObjName,TexteAlert,Css){
	
  	getObj('Container'+ObjName).innerHTML='<span class='+Css+'>'+TexteAlert+'</span>';
}

//------------------------------------------------------------//
//------------------------------------------------------------//


function ValidateFieldsonly(strFieldName){

	theField=document.Form1[strFieldName];
	
	if (theField.value.length>0)
	{
		return true;
	}
	else
	{	
		return false;
	}
}

function WriteAlert(ObjName,TexteAlert){
	
  	getObj('Container'+ObjName).innerHTML='<b><span class="txtrouge12">'+TexteAlert+'</span></b>';
} 

function WriteAlertOK(ObjName,TexteAlert){
	
  	getObj('Container'+ObjName).innerHTML='<b><span class="txtnoir11">'+TexteAlert+'</span></b>';
} 

function WriteTexte(ObjName,TexteAlert,css){
	
  	getObj('Container'+ObjName).innerHTML='<span class="'+css+'">'+TexteAlert+'</span>';
} 

function getObj(name)
{
  if (document.getElementById)
  {
    return document.getElementById(name);
  }
  else if (document.all)
  {
    return document.all[name];
  }
  else if (document.layers)
  {
    return document.layers[name];
  }
  else return false;
}

function ValidateDDL(strFieldName, msg){
	theDDL = document.Form1[strFieldName];
	
	if (theDDL.selectedIndex == 0) {
		// NO value was selected
		WriteAlert(strFieldName,msg);
		return msg;
	}
	else {
		// Value Selected
		WriteAlert(strFieldName,'');
		return "";
	}

}

function ValidateDDLbyValue(strFieldName, msg){
	theDDL = document.Form1[strFieldName];
	
	if (theDDL.value == -1) {
		// NO value was selected
		WriteAlert(strFieldName,msg);
		
		return msg;
	}
	else {
		// Value Selected
		WriteAlert(strFieldName,'');
		return "";
	}

}

function ValidateDDL2(strFieldName)
{
	theDDL = document.Form1[strFieldName];
	
	if (theDDL.value == -1) {
		// NO value was selected		
		return false;
	}
	else
	{
		// Value Selected
		return true;
	}

}

// Function to check Radio Buttons
// Check if Cumulable has been selected
function ValidateRadio(strFieldName, msg){
	theRadio = document.Form1[strFieldName];
	for (i=0; i<theRadio.length; i++){
		if (theRadio[i].checked){
			WriteAlert(strFieldName,'');
			return '';
		}
	}
	WriteAlert(strFieldName,msg);
	return msg;
}

// Function to check field type is a number
function CheckFieldType(theFieldName,msg){

	theField=Trim(strFieldName);
	
	// if not a number
	if (isNaN(theField)){
		WriteAlert(theFieldName,msg);
		return theFieldName ;
	}
	else {
		WriteAlert(theFieldName,'');
		return '';
	}
		
}

function CheckFieldTypes(strFieldName,ContainerName,msg){
	
	theField=Trim(strFieldName);
	
	if (isNaN(theField)){
		// Field contains a value
		WriteAlert(ContainerName,msg);
		return false;
		}
	else {
		
		return true;
		}
}

// text normaliser when printing text as html
function htmlText(str)
{
	var s = new String(str);
	
	if(s!= null)
	{				
		s = s.replace('<','&lt;');
		s = s.replace('\n','<br>') ;
	}
	
	return s;	
}
		

function IsNumeric(strFieldName)
{
	theField=document.Form1[strFieldName];

	var PNum = new String(theField.value);
	var regex = /[^0-9]/;
	
	if(!regex.test(PNum))
	{
		return true;
	}
	else
	{
		return false;
	}
}

function IsNumericAlert(strFieldName,ContainerName,msg)
{
	theField=document.Form1[strFieldName];

	var PNum = new String(theField.value);
	var regex = /[^0-9]/;
	
	if(!regex.test(PNum))
	{
		return "";
	}
	else
	{
		WriteAlert(ContainerName,msg);
		return msg;
	}
}


function trim(str)
{
		
    while(str.charAt(0) == (" ") )
    {
        str = str.substring(1);
    }
    
    while(str.charAt(str.length-1) == " " )
    {
        str = str.substring(0,str.length-1);
    }
    return str;

}

function Trim(strFieldName)
{
	theField=document.Form1[strFieldName].value;
	
    while(theField.charAt(0) == (" ") )
    {
        theField = theField.substring(1);
    }
    
    while(theField.charAt(theField.length-1) == " " )
    {
        theField = theField.substring(0,theField.length-1);
    }
    return theField;
}

/*
RTrim - Trims whitespace from right of a string
*/
function RTrim(str)
{
    var whitespace = new String(" \t\n\r");
    var s = new String(str);

    if (whitespace.indexOf(s.charAt(s.length-1)) != -1) 
    {
        var i = s.length - 1; // Get length of string
        
        while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)
        {
            i--;
        }
        s = s.substring(0, i+1);
    }

    return s;
}

/* 
LTrim - Trims whitespace from left of a string
*/
function LTrim(str)
{
    var whitespace = new String(" \t\n\r");
    var s = new String(str);

    if (whitespace.indexOf(s.charAt(0)) != -1) 
    {
        var j=0, i = s.length;
        
        while (j < i && whitespace.indexOf(s.charAt(j)) != -1)
        {
            j++;
        }
        s = s.substring(j, i);
    }

    return s;
}


// Function to check Date 

//fonctions swap images pour on et off
	// function to swap image : Begin
		function MM_preloadImages() { //v3.0
		  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
		    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
		    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
		}
		 
		function MM_swapImgRestore() { //v3.0
		  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
		}
		 
		function MM_findObj(n, d) { //v4.01
		  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
		    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
		  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
		  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
		  if(!x && d.getElementById) x=d.getElementById(n); return x;
		}
		 
		function MM_swapImage() { //v3.0
		  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
		   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
		}
		// function to swap image : End
		
		
		
		
// LISTE DES MESSAGES js
msg_Champ_trop_long='Vous avez atteint le nombre limite de caractères pour le champ texte';
msg_email_invalide='Format d\'adresse e-mail n\'est pas correct';
msg_emails_invalide='Format des adresses e-mails n\'est pas correct';
msgChampNumeric='champ numeric';			 

// BO Securite Entite
var msg_confirmSuppressionEntite= 'Veuillez confirmer la suppression de l\'entité.\n\nAttention! Toutes les utilisateurs liées à\ncette entité seront eux aussi supprimées.';



// BO Securite Alerte
var msg_confirmSuppressionUtilisateur= 'Veuillez confirmer la suppression de l\'utilisateur.\n\n';






