var popUpWin=0;

function popUpWindow(URLStr, left, top, width, height){  if(popUpWin)  {    if(!popUpWin.closed) popUpWin.close();  }  popUpWin = open(URLStr, 'popUpWin', 'toolbar=no,location=no,directories=no,  status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width='+width+  ',height='+height+',left='+left+', top='+top+',screenX='+left+',  screenY='+top+'');}

function cancelverif() {
document.getElementById('ismodif').value = '0';
}

function SetModif() {
document.getElementById('ismodif').value = '1';
}

function VerifSave() {
if (document.getElementById('ismodif').value == '1')
	{
	return 'Des modifications ont éfé effectués, voulez-vous continuer ?';
	}
}

function showdiv(pass) { 
var divs = document.getElementsByTagName('div'); 
for(i=0;i<divs.length;i++){ 
if(divs[i].id.match(pass)){//if they are 'see' divs 
if (document.getElementById) // DOM3 = IE5, NS6 
divs[i].style.display = 'block';// show/hide 
else 
if (document.layers) // Netscape 4 
document.layers[divs[i]].display = 'visible'; 
else // IE 4 
document.all.divs[i].visibility = 'visible'; 
} else 
{
if(divs[i].id.match('page')) { 
if (document.getElementById) 
divs[i].style.display = 'none'; 
else 
if (document.layers) // Netscape 4 
document.divs[i].visibility = 'hidden'; 
else // IE 4 
document.all.divs[i].visibility = 'hidden'; 
} 
} 
} 
}

function verimodi()
{
var idf;
var vidf;
var vval;
var modif = false;

if (document.formmod.contact.value != document.formmod.vcontact.value) modif = true;
if (document.formmod.lieu.value != document.formmod.vlieu.value) modif = true;
if (document.formmod.note.value != document.formmod.vnote.value) modif = true;
if (document.formmod.point.value != document.formmod.vpoint.value) { modif = true; alert(document.formmod.point.value); alert(document.formmod.vpoint.value); }

for(i=0;i<document.formmod.elements.length;i++){
   vidf = document.formmod.elements[i].name;
   if(vidf.charAt(0) == "v" && document.formmod.elements[i].type == "hidden") 
	{
	idf = vidf.substr(1);
	vval = document.getElementById(idf).value;
	vvval = document.formmod.elements[i].value;
	if (idf == "notei") {
		vval = vval.replace('"',"'");
		vval = vval.replace(/&#160;/g," ");
		vvval = vvval.replace(/\r\n|\r|\n/g,"");
		if (vval == "<p>&#160;</p>") vval = "";
		}		


	if (vval != undefined && vval != vvval && idf != "point" && idf != "notei") 
		{
		modif = true;
		//alert(idf+" : "+vval);
		//alert(vidf+" : "+vvval);
		}
	}
  if (document.formmod.elements[i].value == "new") {
	modif = true;
	}
}

return modif;

}

function checkAll(field)
{
var r = document.getElementById('toggle');
var j;
if (r.value == 'false') { r.value = 'true'; j = false; } else {r.value = 'false'; j = true;};

for (i = 0; i < field.length; i++)
	field[i].checked = j ;
}

function verifformmod()
{
var a = document.formmod.action;
if (a.indexOf("#") == -1) 
{ 
document.formmod.action = a+'#Saison'
}

}
function on_visibility(id) {
       var e = document.getElementById(id);
          e.style.display = 'block';
	var m = document.getElementById('sect');
	m.value = id;
    }

function off_visibility(id) {
       var e = document.getElementById(id);
       
          e.style.display = 'none';
    }

function toggle_visibility(id) {
       var e = document.getElementById(id);
        if (e.style.display == 'block') 
	{
          e.style.display = 'none';
	}
	else
	{
	  e.style.display = 'block';
	}    
}

function togglev(id) {
	var e = document.getElementById('serdiv'+id);
	var d = document.getElementById('rser'+id);
	if (d.checked == true)
	{
		e.style.display = 'block';
	}
	else
	{
		e.style.display = 'none';
	}
    }

function adjPoids(id) {


  var typemat = document.getElementById('typematiere'+id).value;
  var typecon = document.getElementById('typecontenant'+id).value;
  var pmat = document.getElementById('pmat'+typemat).value;
  var pcon = document.getElementById('pcon'+typecon).value;
  var tquant = document.getElementById('tp'+id).value;
  var ppoids = document.getElementById('tq'+id);
  var ll = document.getElementById('ll'+id).value;

  if (ll == '0')
	{
  	var spoids = pcon * pmat * tquant;
  	ppoids.value = Math.round(spoids*100)/100;
	}
}



function go_there(URLStr,Question)
{
 var where_to= confirm(Question);
 if (where_to== true)
 {
   window.location=URLStr;
 }
 return where_to;
}

function go_there2(URLStr,Question)
{
 var where_to= confirm(Question);
 if (where_to== true)
 {
   popUpWindow(URLStr,100,100,300,200);
 }
 return where_to;
}

function IsNumeric(sText)
{
   var ValidChars = "0123456789., ";
   var IsNumber=true;
   var Char;

 if (sText.length == 0) IsNumber=false;
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
   return IsNumber;
   
   }

function removeSelectedOptions(from) 
{ 
if (!IsNumeric(quant))
{
quant = 1;
}
fromSelect = document.getElementsByName(from)[0]; 
selOpt = getSelectedOptions(fromSelect); 
var selValues = new Array(); 
if(selOpt.length>0) 
{ 
selValues = getSelectedValues(fromSelect); 
for(i=0;i<selOpt.length;i++) 
{ 
option = selOpt[i];
fromSelect.removeChild(option); 
} 
} 
return selValues; 
} 

function moveSelectedOptions(from, to, quant) 
{ 
if (!IsNumeric(quant))
{
quant = 1;
}
fromSelect = document.getElementsByName(from)[0]; 
selOpt = getSelectedOptions(fromSelect); 
var selValues = new Array(); 
if(selOpt.length>0) 
{ 
selValues = getSelectedValues(fromSelect); 
toSelect=document.getElementsByName(to)[0]; 
for(i=0;i<selOpt.length;i++) 
{ 
option = selOpt[i];
var oplabel = option.innerHTML;
option.label = quant+' '+oplabel; 
option.innerHTML = option.label;
option.value = option.value+'q'+quant;
fromSelect.removeChild(option); 
toSelect.appendChild(option); 
} 
} 
return selValues; 
} 

function moveSelectedOptions2(from, to) 
{ 

fromSelect = document.getElementsByName(from)[0]; 
selOpt = getSelectedOptions(fromSelect); 
var selValues = new Array(); 
if(selOpt.length>0) 
{ 
selValues = getSelectedValues(fromSelect); 
toSelect=document.getElementsByName(to)[0]; 
for(i=0;i<selOpt.length;i++) 
{ 
option = selOpt[i];
var oplabel = option.innerHTML;
var valr = new Array();  
var newval;  
valr = oplabel.split(' ');
newval = valr[0];
if (IsNumeric(newval)) { option.label = oplabel.substring(newval.length,oplabel.length); option.innerHTML = option.label; }
newval = option.value;
var valx = new Array();
valx = newval.split('q');
option.value = valx[0];
fromSelect.removeChild(option); 
toSelect.appendChild(option); 
} 
} 
return selValues; 
} 

function getSelectedValues (select) { 
var selValues = new Array(); 
for (j = 0; j < select.options.length; j++){ 
selValues[selValues.length] = select.options[j].value; 
} 
return selValues; 
} 

function getSelectedOptions (select) { 
var selOptions = new Array(); 
for (m = 0; m < select.options.length; m++){ 
if (select.options[m].selected) { 
selOptions[selOptions.length] = select.options[m]; 
} 
} 
return selOptions; 
} 

function CheckRadio(oRadio) {
	  var or = document.getElementsByName(oRadio);
      
         or[0].checked = false;
         or[1].checked = true;
     
}
	
	function enable_visibility(id) {
       var e = document.getElementById(id);
       
          e.style.display = 'block';
    }
function disable_visibility(id) {
       var e = document.getElementById(id);
       
          e.style.display = 'none';
    }


function addElement() {
  var ni = document.getElementById('myDiv');
  var numi = document.getElementById('theValue');
  var num = (document.getElementById('theValue').value -1)+ 2;
  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'my'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = num+'-<input size="60" type="text" id="r'+num+'" name="r'+num+'" value=""><input size="60" type="hidden" id="i'+num+'" name="i'+num+'" value="new"> <a href=\'javascript:;\' onclick=\'removeElement("'+divIdName+'","'+num+'")\'>(Supprimer)</a>';
  ni.appendChild(newdiv);
}

function addLineBreak() {
  var ni = document.getElementById('sortableList');
  var newdiv = document.createElement('div');
  var divIdName = 'item_hr';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = '<img border=0 src="images/barre.png">';
ni.insertBefore(newdiv, ni.firstChild);
  Sortable.create('sortableList',{tag:'div'});

}



function addEvenMembre(ideven,nomeven) {
  var ni = opener.document.getElementById('myaDiv');
  var numi = opener.document.getElementById('theaValue');
  var num = (opener.document.getElementById('theaValue').value -1)+ 2;
  numi.value = num;
  var newdiv = opener.document.createElement('div');
  var divIdName = 'mya'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = nomeven+'<input type="hidden" id="ida'+num+'" name="ida'+num+'" value="'+ideven+'"> <a href=\'javascript:;\' onclick=\'removeEvenMembre("'+divIdName+'","'+num+'")\'>(Supprimer)</a>';
ni.appendChild(newdiv);  
self.close();  
}

function removeEvenMembre(divNum,num) {
  var d = document.getElementById('myaDiv');
  var olddiv = document.getElementById(divNum);
  var oldinput = document.getElementById('ida'+num);
  olddiv.style.display='none';
  oldinput.value = "#del";
  d.removeChild(olddiv);
}


function removeElement(divNum,num) {
  var d = document.getElementById('myDiv');
  var olddiv = document.getElementById(divNum);
  var oldinput = document.getElementById('r'+num);
  olddiv.style.display='none';
  oldinput.value = "#del";
  //d.removeChild(olddiv);
}

function addElementFile() {
  var ni = document.getElementById('myDiv');
  var numi = document.getElementById('theValue');
  var num = (document.getElementById('theValue').value -1)+ 2;
  var session = document.getElementById('thesess').value;
  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'my'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = '<table border=0><tr><td><input readonly type=text id="urlfi'+num+'" name="urlfi'+num+'" value=""><input type="hidden" name="id'+num+'" id="id'+num+'" value="new"></td><td>Titre : <input type="text" name="titre'+num+'" size=40></td></tr></table><iframe height=30 SCROLLING=NO name="fra'+num+'" id="fra'+num+'" src="uploader/sub_alb.php?num='+num+'&session='+session+'" width=530 height=50 frameborder="0"></iframe> <a href="javascript:;" onclick="removeElementFile(\'my'+num+'Div\',\''+num+'\')"><img src="images/supprimer.png"></a><img src="images/barre.png">';
  ni.appendChild(newdiv);
}

function addElementFile2() {
  var ni = document.getElementById('myfiDiv');
  var numi = document.getElementById('thefiValue');
  var num = (document.getElementById('thefiValue').value -1)+ 2;
  var sel = document.getElementById('stypefile').value;

  var session = document.getElementById('thesess').value;
  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'myfi'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = '<table border=0><tr><td>Fichier : <input readonly size=10 type=hidden id="urlfi'+num+'" name="urlfi'+num+'" value=""><input type="hidden" name="idfi'+num+'" id="idfi'+num+'" value="new"></td><td>Titre : <input type="text" id="titrefi'+num+'" name="titrefi'+num+'" size=40> Type : <select name="typefi'+num+'">'+sel+'</select></td></tr></table><iframe height=30 SCROLLING=NO name="fra'+num+'" id="fra'+num+'" src="uploader/sub_alb.php?num='+num+'&session='+session+'" width=530 height=50 frameborder="0"></iframe> <a href="javascript:;" onclick="removeElementFile2(\'myfi'+num+'Div\',\''+num+'\')">Supprimer</a><img src="images/barre.png">';
  ni.appendChild(newdiv);
}

function addElementFile3() {
  var ni = document.getElementById('myDiv');
  var numi = document.getElementById('theValue');
  var num = (document.getElementById('theValue').value -1)+ 1;
  var session = document.getElementById('thesess').value;
  var idmembre = document.getElementById('idmembre').value;
  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'myfi'+num+'Div';
//var newdiv2 = document.createElement('div');
  //newdiv2.innerHTML = '<div id="fich" name="fich">';
  //ni.appendChild(newdiv2);

  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = '<table border=0><tr><td>Fichier : </div><input type=hidden id="urlfi'+num+'" name="urlfi'+num+'" value=""><input type="hidden" name="id'+num+'" id="id'+num+'" value="new"></td><td valign=top><iframe height=40 SCROLLING=NO name="fra'+num+'" id="fra'+num+'" src="uploader/sub_alb.php?num='+num+'&session='+session+'&idmembre='+idmembre+'" width=530 frameborder="0"></iframe></td><td><a href="javascript:;" onclick="removeElementFile3(\'myfi'+num+'Div\',\''+num+'\')">Cacher</a></td></tr></table><img src="images/barre.png">';
  ni.appendChild(newdiv);
}

function removeElementFile2(divNum,num) {
  var d = document.getElementById('myfiDiv');
  var olddiv = document.getElementById(divNum);
  var oldinput = document.getElementById('titrefi'+num);
  olddiv.style.display='none';
  oldinput.value = "#del";
  //d.removeChild(olddiv);
}


function removeElementFile(divNum,num) {
  var d = document.getElementById('myDiv');
  var olddiv = document.getElementById(divNum);
  var oldinput = document.getElementById('titre'+num);
  olddiv.style.display='none';
  oldinput.value = "#del";
  //d.removeChild(olddiv);
}

function removeElementFile3(divNum,num) {
  var d = document.getElementById('myDiv');
  var olddiv = document.getElementById(divNum);
  var oldinput = document.getElementById('titre'+num);
  olddiv.style.display='none';
  d.removeChild(olddiv);
}



function addElement2() {
  var ni = document.getElementById('myDiv');
  var numi = document.getElementById('theValue');
  var num = (document.getElementById('theValue').value -1)+ 2;
  var dteven = document.getElementById('dtevend').value;
  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'my'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = '<input size="10" type="text" id="qqr'+num+'" name="qqr'+num+'" value="'+dteven+'"><input size="60" type="hidden" id="qqi'+num+'" name="qqi'+num+'" value="new">  <input size="10" type="text" id="qqp'+num+'" name="qqp'+num+'" value="00:00">  <input size="10" type="text" id="qql'+num+'" name="qql'+num+'" value="00:00">  <input size="13" type="text" id="qqt'+num+'" name="qqt'+num+'" value="0">   <input size="30" type="text" id="qqnq'+num+'" name="qqnq'+num+'" value="">  <a href=\'javascript:;\' onmouseover=\'Tip("Dupliquer + 1 jour");\' onmouseout=\'UnTip();\' onclick=\'cloneElement("'+divIdName+'","'+num+'")\'> <img width=20 height=20 src="images/ic_add.jpg"></a> <a href=\'javascript:;\' onmouseover=\'Tip("Supprimer");\' onmouseout=\'UnTip();\' onclick=\'removeElement2("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/supprimer.png"> </a>';
  ni.appendChild(newdiv);
}

function addElement3() {
  var ni = document.getElementById('tmyDiv');
  var numi = document.getElementById('ttheValue');
  var num = (document.getElementById('ttheValue').value -1)+ 2;
  var dteven = document.getElementById('dtevend').value;
  var listmat = document.getElementById('listmat').value;
  var listtyp = document.getElementById('listtyp').value;
  var listchauf = document.getElementById('listchauf').value;
  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'tmy'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = '<input size="7" type="text" id="tr'+num+'" name="tr'+num+'" value="'+dteven+'"><input size="60" type="hidden" id="ti'+num+'" name="ti'+num+'" value="new">   <input size="7" type="text" id="tp'+num+'" name="tp'+num+'" value="00:00">   <input size="7" type="text" id="tl'+num+'" name="tl'+num+'" value="00:00">   <select id="ty'+num+'" name="ty'+num+'" style="width:100">'+listtyp+'</select>   <select id="tm'+num+'" name="tm'+num+'" style="width:200">'+listmat+'</select> <select id="tcha'+num+'" name="tcha'+num+'" style="width:130">'+listchauf+'</select> <br><b>Détails :</b> <input size="94" type="text" id="tn'+num+'" name="tn'+num+'" value=""> <a href=\'javascript:;\'  onmouseover=\'Tip("Supprimer");\' onmouseout=\'UnTip();\' onclick=\'removeElement2("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/supprimer.png"> <br><br></a>';
  ni.appendChild(newdiv);
}

function addElementChef() {
  var ni = document.getElementById('mychDiv');
  var numi = document.getElementById('chtheValue');
  var num = (document.getElementById('chtheValue').value -1)+ 2;
  var dteven = document.getElementById('dtevend').value;
  var listchef = document.getElementById('listchef').value;
  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'cmy'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = '<input size="7" type="text" id="cr'+num+'" name="cr'+num+'" value="'+dteven+'"><input size="60" type="hidden" id="ci'+num+'" name="ci'+num+'" value="new">   <input size="7" type="text" id="cp'+num+'" name="cp'+num+'" value="00:00">   <input size="7" type="text" id="cl'+num+'" name="cl'+num+'" value="00:00">   <select id="ch'+num+'" name="ch'+num+'" style="width:175">'+listchef+'</select>   <input size="25" type="text" id="cnq'+num+'" name="cnq'+num+'" value=""> <a href=\'javascript:;\' onmouseover=\'Tip("Dupliquer + 1 jour");\' onmouseout=\'UnTip();\' onclick=\'cloneElementChef("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/ic_add.jpg"></a>  <a href=\'javascript:;\'  onmouseover=\'Tip("Supprimer");\' onmouseout=\'UnTip();\' onclick=\'removeElementChef("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/supprimer.png"> </a>';
  ni.appendChild(newdiv);
}

function addElementHo() {
  var ni = document.getElementById('myhoDiv');
  var numi = document.getElementById('hotheValue');
  var num = (document.getElementById('hotheValue').value -1)+ 2;
  var dteven = document.getElementById('dtevend').value;
  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'hmy'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = '<input size="7" type="text" id="hr'+num+'" name="hr'+num+'" value="'+dteven+'"><input size="60" type="hidden" id="hi'+num+'" name="hi'+num+'" value="new">   <input size="7" type="text" id="hp'+num+'" name="hp'+num+'" value="00:00">   <input size="7" type="text" id="hl'+num+'" name="hl'+num+'" value="00:00">   <input size="50" type="text" id="hnq'+num+'" name="hnq'+num+'" value=""> <a href=\'javascript:;\' onmouseover=\'Tip("Dupliquer + 1 jour");\' onmouseout=\'UnTip();\' onclick=\'cloneElementHo("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/ic_add.jpg"></a>  <a href=\'javascript:;\'  onmouseover=\'Tip("Supprimer");\' onmouseout=\'UnTip();\' onclick=\'removeElementHo("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/supprimer.png"> </a>';
  ni.appendChild(newdiv);
}

function addElementNo() {
  var ni = document.getElementById('mynoDiv');
  var numi = document.getElementById('notheValue');
  var num = (document.getElementById('notheValue').value -1)+ 2;
  var dteven = document.getElementById('dtevend').value;
  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'nmy'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = '<input size="7" type="text" id="nr'+num+'" name="nr'+num+'" value="'+dteven+'"><input size="60" type="hidden" id="ni'+num+'" name="ni'+num+'" value="new">   <input size="7" type="text" id="np'+num+'" name="np'+num+'" value="00:00">   <input size="7" type="text" id="nl'+num+'" name="nl'+num+'" value="00:00">   <input size="50" type="text" id="nnq'+num+'" name="nnq'+num+'" value=""> <a href=\'javascript:;\' onmouseover=\'Tip("Dupliquer + 1 jour");\' onmouseout=\'UnTip();\' onclick=\'cloneElementNo("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/ic_add.jpg"></a>  <a href=\'javascript:;\'  onmouseover=\'Tip("Supprimer");\' onmouseout=\'UnTip();\' onclick=\'removeElementNo("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/supprimer.png"> </a>';
  ni.appendChild(newdiv);
}



function addElement5() {
  var ni = document.getElementById('mmyDiv');
  var numi = document.getElementById('mtheValue');
  var num = (document.getElementById('mtheValue').value -1)+ 2;
  var dteven = document.getElementById('datenow').value;
  var listmat = document.getElementById('listmat').value;
  var listcon = document.getElementById('listcon').value;
  var listdes = document.getElementById('listdes').value;

  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'mmy'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = '<input size="10" type="text" id="tr'+num+'" name="tr'+num+'" value="'+dteven+'"><input size="60" type="hidden" id="ll'+num+'" name="ll'+num+'" value="0"><input size="60" type="hidden" id="ti'+num+'" name="ti'+num+'" value="new">   <input size="7" type="text" id="tq'+num+'" name="tq'+num+'" value="0.00" onchange="document.getElementById(\'ll'+num+'\').value = \'1\'">   <input size=7 type=text id=tp'+num+' name=tp'+num+' value=0 onchange=\'adjPoids("'+num+'")\'>   <select id="typecontenant'+num+'" name="typecontenant'+num+'" style="width:120" onchange="adjPoids(\''+num+'\')">'+listcon+'</select>   <select id="typematiere'+num+'" name="typematiere'+num+'" style="width:130" onchange="adjPoids(\''+num+'\')">'+listmat+'</select>   <select id="typedestination'+num+'" name="typedestination'+num+'">'+listdes+'</select>   <br><b>Note :</b> <input size="87" type="text" id="tn'+num+'" name="tn'+num+'" value=""> <a href=\'javascript:;\'  onmouseover=\'Tip("Supprimer");\' onmouseout=\'UnTip();\' onclick=\'removeElement5("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/supprimer.png"> </a><br><br>';
  ni.appendChild(newdiv);
}

function addElement4() {
  var ni = document.getElementById('cmyDiv');
  var numi = document.getElementById('ctheValue');
  var num = (document.getElementById('ctheValue').value -1)+ 2;
  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'cmy'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = '<table width="95%"><tr><td width="25%"></td><td width="50%"><img src="images/barre.png"></td><td width="25%"></td></tr></table><input type=hidden name="cont'+num+'" id="cont'+num+'" value="new"><table><tr><td>Nom :</b> </td><td><input size=35 name="cnom'+num+'" id="cnom'+num+'"></td><td> Titre :</b></td><td><input size=35 name="ctitre'+num+'" id="ctitre'+num+'"></td></tr><tr><td>No Civique :</b></td><td><input size=35 name="cnoc'+num+'" id=cnoc'+num+'"></td><td>Code Postal :</b> </td><td><input size=35 name="ccp'+num+'" id="ccp'+num+'"></td></tr><tr><td>Rue :</b></td><td><input size=35 name="crue'+num+'" id="crue'+num+'"></td><td>Téléphone 1 :</b> </td><td><input size=35 name="ctel1'+num+'" id="ctel1'+num+'"></td></tr><tr><td>Ville :</b> </td><td><input size=35 name="cville'+num+'" id="cville'+num+'"></td><td> Téléphone 2 :</b></td><td><input size=35 name="ctel2'+num+'" id="ctel2'+num+'"></td></tr><tr><td>Province :</b> </td><td><input size=35 name="cprov'+num+'" id="cprov'+num+'"></td><td> Télécopieur :</b></td><td><input size=35 name="ctel3'+num+'" id="ctel3'+num+'"></td></tr><tr><td>Pays :</b></td><td><input size=35 name="cpays'+num+'" id="cpays'+num+'"></td><td>Courriel :</b> </td><td><input size=35 name="ccour'+num+'" id="ccour'+num+'"></td></tr><tr><td>Note :</b> </td><td><input size=35 name="cnote'+num+'" id="cnote'+num+'"></td><td colspan=2> <a href=\'javascript:;\' onclick=\'removeElement4("cmy'+num+'Div","'+num+'")\'><img src=\'images/supprimer.png\'></a> <a href=\'javascript:;\' onclick=\'removeElement4("cmy'+num+'Div","'+num+'")\'>Supprimer</a></td></tr></table><br>';
  ni.appendChild(newdiv);
}

function addElement4a() {
  var ni = document.getElementById('comyDiv');
  var numi = document.getElementById('cotheValue');
  var num = (document.getElementById('cotheValue').value -1)+ 2;
  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'comy'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = '<table width="95%"><tr><td width="25%"></td><td width="50%"><img src="images/barre.png"></td><td width="25%"></td></tr></table><input type=hidden name="coont'+num+'" id="coont'+num+'" value="new"><table><tr><td>Nom :</b> </td><td><input size=35 name="conom'+num+'" id="conom'+num+'"></td><td> Titre :</b></td><td><input size=35 name="cotitre'+num+'" id="cotitre'+num+'"></td></tr><tr><td>No Civique :</b></td><td><input size=35 name="conoc'+num+'" id=cnoc'+num+'"></td><td>Code Postal :</b> </td><td><input size=35 name="cocp'+num+'" id="cocp'+num+'"></td></tr><tr><td>Rue :</b></td><td><input size=35 name="corue'+num+'" id="corue'+num+'"></td><td>Téléphone 1 :</b> </td><td><input size=35 name="cotel1'+num+'" id="cotel1'+num+'"></td></tr><tr><td>Ville :</b> </td><td><input size=35 name="coville'+num+'" id="coville'+num+'"></td><td> Téléphone 2 :</b></td><td><input size=35 name="cotel2'+num+'" id="cotel2'+num+'"></td></tr><tr><td>Province :</b> </td><td><input size=35 name="coprov'+num+'" id="coprov'+num+'"></td><td> Télécopieur :</b></td><td><input size=35 name="cotel3'+num+'" id="cotel3'+num+'"></td></tr><tr><td>Pays :</b></td><td><input size=35 name="copays'+num+'" id="copays'+num+'"></td><td>Courriel :</b> </td><td><input size=35 name="cocour'+num+'" id="cocour'+num+'"></td></tr><tr><td>Note :</b> </td><td><input size=35 name="conote'+num+'" id="conote'+num+'"></td><td colspan=2> <a href=\'javascript:;\' onclick=\'removeElement4a("comy'+num+'Div","'+num+'")\'><img src=\'images/supprimer.png\'></a> <a href=\'javascript:;\' onclick=\'removeElement4a("comy'+num+'Div","'+num+'")\'>Supprimer</a></td></tr></table><br>';
  ni.appendChild(newdiv);
}

function cloneElement(divNum, num) {
  var d = document.getElementById('myDiv');
  var olddiv = document.getElementById(divNum);
  var olddt = document.getElementById('qqr'+num).value;
  var oldhd = document.getElementById('qqp'+num).value;	
  var oldhf = document.getElementById('qql'+num).value;
  var oldbr = document.getElementById('qqt'+num).value;
  var oldnq = document.getElementById('qqnq'+num).value;

var dttmp = explode('-',olddt);


var myDate = new Date(dttmp[0],dttmp[1]-1,dttmp[2]);
myDate.setDate(myDate.getDate()+1);
 var newdt = myDate.dateFormat('Y-m-d');

  var ni = document.getElementById('myDiv');
  var numi = document.getElementById('theValue');
  var num = (document.getElementById('theValue').value -1)+ 2;
  numi.value = num;
  var newdiv = document.createElement('xdiv');
  var divIdName = 'my'+num+'Div';
  newdiv.setAttribute('id',divIdName);
   newdiv.innerHTML = '<input size="10" type="text" id="qqr'+num+'" name="qqr'+num+'" value="'+newdt+'"><input size="60" type="hidden" id="qqi'+num+'" name="qqi'+num+'" value="new">  <input size="10" type="text" id="qqp'+num+'" name="qqp'+num+'" value="'+oldhd+'">  <input size="10" type="text" id="qql'+num+'" name="qql'+num+'" value="'+oldhf+'">  <input size="13" type="text" id="qqt'+num+'" name="qqt'+num+'" value="'+oldbr+'">  <input size="30" type="text" id="qqnq'+num+'" name="qqnq'+num+'" value="'+oldnq+'">   <a href=\'javascript:;\' onmouseover=\'Tip("Dupliquer + 1 jour");\' onmouseout=\'UnTip();\' onclick=\'cloneElement("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/ic_add.jpg"></a> <a href=\'javascript:;\' onmouseover=\'Tip("Supprimer");\' onmouseout=\'UnTip();\' onclick=\'removeElement2("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/supprimer.png"> </a><br>';
  ni.appendChild(newdiv);
}

function cloneElementChef(divNum, num) {
  var d = document.getElementById('mychDiv');
  var olddiv = document.getElementById(divNum);
  var olddt = document.getElementById('cr'+num).value;
  var oldhd = document.getElementById('cp'+num).value;	
  var oldhf = document.getElementById('cl'+num).value;
  var oldch = document.getElementById('ch'+num).innerHTML;
  var oldnq = document.getElementById('cnq'+num).value;
var dttmp = explode('-',olddt);


var myDate = new Date(dttmp[0],dttmp[1]-1,dttmp[2]);
myDate.setDate(myDate.getDate()+1);
 var newdt = myDate.dateFormat('Y-m-d');

  var ni = document.getElementById('mychDiv');
  var numi = document.getElementById('chtheValue');
  var num = (document.getElementById('chtheValue').value -1)+ 2;
  numi.value = num;
  var newdiv = document.createElement('xdiv');
  var divIdName = 'my'+num+'Div';
  newdiv.setAttribute('id',divIdName);
   newdiv.innerHTML = '<input size="7" type="text" id="cr'+num+'" name="cr'+num+'" value="'+olddt+'"><input size="60" type="hidden" id="ci'+num+'" name="ci'+num+'" value="new">  <input size="7" type="text" id="cp'+num+'" name="cp'+num+'" value="'+oldhd+'">  <input size="7" type="text" id="cl'+num+'" name="cl'+num+'" value="'+oldhf+'">  <select id="ch'+num+'" name="ch'+num+'" style="width:175">'+oldch+'</select>  <input size="25" type="text" id="cnq'+num+'" name="cnq'+num+'" value="'+oldnq+'">   <a href=\'javascript:;\' onmouseover=\'Tip("Dupliquer + 1 jour");\' onmouseout=\'UnTip();\' onclick=\'cloneElementChef("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/ic_add.jpg"></a> <a href=\'javascript:;\' onmouseover=\'Tip("Supprimer");\' onmouseout=\'UnTip();\' onclick=\'removeElementChef("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/supprimer.png"> </a><br>';
  ni.appendChild(newdiv);
}

function cloneElementHo(divNum, num) {
  var d = document.getElementById('myhoDiv');
  var olddiv = document.getElementById(divNum);
  var olddt = document.getElementById('hr'+num).value;
  var oldhd = document.getElementById('hp'+num).value;	
  var oldhf = document.getElementById('hl'+num).value;
  var oldnq = document.getElementById('hnq'+num).value;
var dttmp = explode('-',olddt);


var myDate = new Date(dttmp[0],dttmp[1]-1,dttmp[2]);
myDate.setDate(myDate.getDate()+1);
 var newdt = myDate.dateFormat('Y-m-d');

  var ni = document.getElementById('myhoDiv');
  var numi = document.getElementById('hotheValue');
  var num = (document.getElementById('hotheValue').value -1)+ 2;
  numi.value = num;
  var newdiv = document.createElement('xdiv');
  var divIdName = 'my'+num+'Div';
  newdiv.setAttribute('id',divIdName);
   newdiv.innerHTML = '<input size="7" type="text" id="hr'+num+'" name="hr'+num+'" value="'+newdt+'"><input size="60" type="hidden" id="hi'+num+'" name="hi'+num+'" value="new">  <input size="7" type="text" id="hp'+num+'" name="hp'+num+'" value="'+oldhd+'">  <input size="7" type="text" id="hl'+num+'" name="hl'+num+'" value="'+oldhf+'">  <input size="50" type="text" id="hnq'+num+'" name="hnq'+num+'" value="'+oldnq+'">   <a href=\'javascript:;\' onmouseover=\'Tip("Dupliquer + 1 jour");\' onmouseout=\'UnTip();\' onclick=\'cloneElementHo("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/ic_add.jpg"></a> <a href=\'javascript:;\' onmouseover=\'Tip("Supprimer");\' onmouseout=\'UnTip();\' onclick=\'removeElementHo("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/supprimer.png"> </a><br>';
  ni.appendChild(newdiv);
}

function cloneElementNo(divNum, num) {
  var d = document.getElementById('mynoDiv');
  var olddiv = document.getElementById(divNum);
  var olddt = document.getElementById('nr'+num).value;
  var oldhd = document.getElementById('np'+num).value;	
  var oldhf = document.getElementById('nl'+num).value;
  var oldnq = document.getElementById('nnq'+num).value;
var dttmp = explode('-',olddt);


var myDate = new Date(dttmp[0],dttmp[1]-1,dttmp[2]);
myDate.setDate(myDate.getDate()+1);
 var newdt = myDate.dateFormat('Y-m-d');

  var ni = document.getElementById('mynoDiv');
  var numi = document.getElementById('notheValue');
  var num = (document.getElementById('notheValue').value -1)+ 2;
  numi.value = num;
  var newdiv = document.createElement('xdiv');
  var divIdName = 'my'+num+'Div';
  newdiv.setAttribute('id',divIdName);
   newdiv.innerHTML = '<input size="7" type="text" id="nr'+num+'" name="nr'+num+'" value="'+newdt+'"><input size="60" type="hidden" id="ni'+num+'" name="ni'+num+'" value="new">  <input size="7" type="text" id="np'+num+'" name="np'+num+'" value="'+oldhd+'">  <input size="7" type="text" id="nl'+num+'" name="nl'+num+'" value="'+oldhf+'">  <input size="50" type="text" id="nnq'+num+'" name="nnq'+num+'" value="'+oldnq+'">   <a href=\'javascript:;\' onmouseover=\'Tip("Dupliquer + 1 jour");\' onmouseout=\'UnTip();\' onclick=\'cloneElementNo("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/ic_add.jpg"></a> <a href=\'javascript:;\' onmouseover=\'Tip("Supprimer");\' onmouseout=\'UnTip();\' onclick=\'removeElementNo("'+divIdName+'","'+num+'")\'><img width=20 height=20 src="images/supprimer.png"> </a><br>';
  ni.appendChild(newdiv);
}


function removeElement2(divNum,num) {
  var d = document.getElementById('myDiv');
  var olddiv = document.getElementById(divNum);
  var oldinput = document.getElementById('qqr'+num);
  olddiv.style.display='none';
  oldinput.value = "#del";
  //d.removeChild(olddiv);
}

function removeElement3(divNum,num) {
  var d = document.getElementById('tmyDiv');
  var olddiv = document.getElementById(divNum);
  var oldinput = document.getElementById('tr'+num);
  olddiv.style.display='none';
  oldinput.value = "#del";
  //d.removeChild(olddiv);
}

function removeElement4(divNum,num) {
  var d = document.getElementById('cmyDiv');
  var olddiv = document.getElementById(divNum);
  var oldinput = document.getElementById('cnom'+num);
  olddiv.style.display='none';
  oldinput.value = "#del";
  //d.removeChild(olddiv);
}

function removeElement4a(divNum,num) {
  var d = document.getElementById('comyDiv');
  var olddiv = document.getElementById(divNum);
  var oldinput = document.getElementById('conom'+num);
  olddiv.style.display='none';
  oldinput.value = "#del";
  //d.removeChild(olddiv);
}



function removeElementChef(divNum,num) {
  var d = document.getElementById('mychDiv');
  var olddiv = document.getElementById(divNum);
  var oldinput = document.getElementById('cr'+num);
  olddiv.style.display='none';
  oldinput.value = "#del";
  //d.removeChild(olddiv);
}

function removeElementHo(divNum,num) {
  var d = document.getElementById('myhoDiv');
  var olddiv = document.getElementById(divNum);
  var oldinput = document.getElementById('hr'+num);
  olddiv.style.display='none';
  oldinput.value = "#del";
  //d.removeChild(olddiv);
}


function removeElementNo(divNum,num) {
  var d = document.getElementById('mynoDiv');
  var olddiv = document.getElementById(divNum);
  var oldinput = document.getElementById('nr'+num);
  olddiv.style.display='none';
  oldinput.value = "#del";
  //d.removeChild(olddiv);
}

function removeElement5(divNum,num) {
  var d = document.getElementById('mmyDiv');
  var olddiv = document.getElementById(divNum);
  var oldinput = document.getElementById('tr'+num);
  olddiv.style.display='none';
  oldinput.value = "#del";
  //d.removeChild(olddiv);
}


function verifLogin() {

	var email = document.getElementById('email').value;
	var password = document.getElementById('password').value;

	if(email.length == 0 || password.length == 0)
	{
		alert("Un des champs n'est pas rempli!");
		return false;
	}

}


function echeck(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   alert("Adresse courriel invalide!" + str)
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Adresse courriel invalide! " + str)
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Adresse courriel invalide! " + str)
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Adresse courriel invalide! " + str)
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Adresse courriel invalide! " + str)
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Adresse courriel invalide! " + str)
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    alert("Adresse courriel invalide! " + str)
		    return false
		 }
					
}

function verify_quant() {
var quant = document.getElementById('quant').value;

if (!IsNumeric(quant)) {
	alert("La quantité doit être un nombre valide!")
	return false
}

}

function verify_inscription() {


	var nom = document.getElementById('nom').value;
	var prenom = document.getElementById('prenom').value;
	var anociv = document.getElementById('anociv').value;
	var arue = document.getElementById('arue').value;
	var aville = document.getElementById('aville').value;
	var acp = document.getElementById('acp').value;
	var tel1 = document.getElementById('tel1').value;
	var tel2 = document.getElementById('tel2').value;
	var birthday = document.getElementById('birthday').value;
	var email = document.getElementById('email1').value;
	var email_repeat = document.getElementById('email_repeat').value;
	var password = document.getElementById('password1').value;
	var password_repeat = document.getElementById('password_repeat').value;
	var accept = document.getElementById('Acceptation');
	var apos = email.indexOf("@");
	var dotpos = email.lastIndexOf(".");

	if(accept.checked == false)
	{
		alert("Vous n'avez pas accepter les conditions d'inscriptions!");
		return false;
	}

	if(nom.length == 0 || prenom.length == 0 || anociv.length == 0 || arue.length == 0 || aville.length == 0 || acp.length == 0 || tel1.length == 0 || birthday.length == 0 || email.length == 0 || email_repeat.length == 0 || password.length == 0 || password_repeat.length == 0) {
		alert("Un des champs n'est pas rempli!");
		return false;
	}

	if(email != email_repeat)
	{
		alert("Les deux courriels ne correspondent pas!");
		return false;
	}

	if(password != password_repeat)
	{
		alert("Les deux mots de passes ne correspondent pas!");
		return false;
	}
	var echeckret = echeck(email);
	if(echeckret === false)
	{
		return false;
	}
	
}

function verify_inscription2() {


	var nom = document.getElementById('nom').value;
	var prenom = document.getElementById('prenom').value;
	var anociv = document.getElementById('anociv').value;
	var arue = document.getElementById('arue').value;
	var aville = document.getElementById('aville').value;
	var acp = document.getElementById('acp').value;
	var tel1 = document.getElementById('tel1').value;
	var tel2 = document.getElementById('tel2').value;
	var email = document.getElementById('email1').value;
	var password = document.getElementById('password1').value;
	var password_repeat = document.getElementById('password_repeat').value;
	var apos = email.indexOf("@");
	var dotpos = email.lastIndexOf(".");


	if(nom.length == 0 || prenom.length == 0 || anociv.length == 0 || arue.length == 0 || aville.length == 0 || acp.length == 0 || tel1.length == 0 || birthday.length == 0 || email.length == 0 || email_repeat.length == 0 || password.length == 0 || password_repeat.length == 0) {
		alert("Un des champs n'est pas rempli!");
		return false;
	}

	if(password != password_repeat)
	{
		alert("Les deux mots de passes ne correspondent pas!");
		return false;
	}
	var echeckret = echeck(email);
	if(echeckret === false)
	{
		return false;
	}
	
}



function explode( delimiter, string, limit ) {
    // http://kevin.vanzonneveld.net
    // +     original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +     improved by: kenneth
    // +     improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +     improved by: d3x
    // +     bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // *     example 1: explode(' ', 'Kevin van Zonneveld');
    // *     returns 1: {0: 'Kevin', 1: 'van', 2: 'Zonneveld'}
    // *     example 2: explode('=', 'a=bc=d', 2);
    // *     returns 2: ['a', 'bc=d']
 
    var emptyArray = { 0: '' };
    
    // third argument is not required
    if ( arguments.length < 2
        || typeof arguments[0] == 'undefined'
        || typeof arguments[1] == 'undefined' )
    {
        return null;
    }
 
    if ( delimiter === ''
        || delimiter === false
        || delimiter === null )
    {
        return false;
    }
 
    if ( typeof delimiter == 'function'
        || typeof delimiter == 'object'
        || typeof string == 'function'
        || typeof string == 'object' )
    {
        return emptyArray;
    }
 
    if ( delimiter === true ) {
        delimiter = '1';
    }
    
    if (!limit) {
        return string.toString().split(delimiter.toString());
    } else {
        // support for limit argument
        var splitted = string.toString().split(delimiter.toString());
        var partA = splitted.splice(0, limit - 1);
        var partB = splitted.join(delimiter.toString());
        partA.push(partB);
        return partA;
    }
}


//
// dateFormat v0.1 | 2004-04-03 15:10
//
// a : Ante meridiem et Post meridiem en minuscules - am ou pm 
// A : Ante meridiem et Post meridiem en majuscules - AM ou PM 
// B : Heure Internet Swatch - 000 à 999
//     http://www.quirksmode.org/index.html?/js/beat.html
// d : Jour du mois, sur deux chiffres avec zéro initial - 01 à 31 
// D : Jour de la semaine, en 3 lettres, anglais par défaut - Mon à Sun 
// F : Mois textuel, version longue, anglais par défaut - January à December 
// g : Heure au format 12h, sans le zéro initial - 1 à 12 
// G : Heure au format 24h, sans le zéro initial - 0 à 23 
// h : Heure au format 12h, avec le zéro initial - 01 à 12 
// H : Heure au format 24h, avec le zéro initial - 00 à 23 
// i : Minutes avec le zéro initial - 00 à 59 
// j : Jour du mois sans le zéro initial - 1 à 31 
// l : Jour de la semaine, textuel, anglais par défaut - Sunday à Saturday 
// L : L'année est elle bissextile ? - 0 ou 1 
// m : Mois avec le zéro intial - 01 à 12 
// M : Mois, en 3 lettres, anglais par défaut - Jan à Dec 
// n : Mois sans le zéro intial - 1 à 12 
// O : Différence avec l'heure de Greenwich (GMT), en heures - -1200 à +1200 
// r : Format de date RFC 822 Thu, 1 Apr 2004 12:00:00 - +0200 
// s : Secondes avec le zéro initial - 00 à 59 
// S : Suffixe ordinal d'un jour, anglais par défaut - st, nd, rd, th 
// t : Nombre de jours dans le mois - 28 à 31 
// U : Secondes depuis le 1er Janvier 1970, 0h00 00s GMT - Ex: 1081072800 
// w : Jour de la semaine (0 étant dimanche, 6 samedi) - 0 à 6 
// W : Numéro de la semaine dans l'année - 1 à 52
//     http://www.asp-php.net/tutorial/asp-php/glossaire.php?glossid=28
// y : Année sur 2 chiffres - Ex: 04 
// Y : Année sur 4 chiffres - Ex: 2004 
// z : Jour de l'année - 1 à 366 
// Z : Décalage horaire en secondes - -43200 à 43200 
// \ : Caractère d'echappement - Ex: \a, \A, \m

String.prototype.padLeft = function(strChar, intLength)
{
 var str = this + '';
 while (str.length != intLength) {
  str = strChar + str;
 }
 return str;
}

String.prototype.isInt = function()
{
 var oRegExp = new RegExp(/\d+/);
 return oRegExp.test(this);
}

Array.prototype.exists = function(objValue)
{
 var boolReturn = false, i = 0;
 for (i = 0; i < this.length; i++) {
  if (this[i] == objValue) {
   boolReturn = true;
   break;
  }
 }
 return boolReturn;
}

Date.prototype.dateFormat = function(strFormat, strLang, intTime)
{

 var arrayLang = ['en', 'fr'];
 var arrayFunctions = ['a', 'A', 'B', 'd', 'D', 'F', 'g', 'G', 'h', 'H', 'i', 'j', 'l', 'L', 'm', 'M', 'n', 'O', 'r', 's', 'S', 't', 'U', 'w', 'W', 'y', 'Y', 'z', 'Z'];

 if (intTime) {
  if (!intTime.toString().isInt()) {
   intTime = null;
  } else {
   intTime *= 1000;
  }
 }
 if (strLang) {
  if (strLang.toString().isInt()) {
   intTime = strLang * 1000;
   strLang = 'en';
  } else {
   if (!arrayLang.exists(strLang)) {
    strLang = 'en';
   }
  }
 } else {
  strLang = 'en';
 }

 var arrayDays_en = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
 var arrayMonths_en = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
 var arraySuffix_en = ['st', 'nd', 'rd', 'th', 'th', 'th', 'th', 'th', 'th', 'th', 'th', 'th', 'th', 'th', 'th', 'th', 'th', 'th', 'th', 'th', 'st', 'nd', 'rd', 'th', 'th', 'th', 'th', 'th', 'th', 'th', 'st'];

 var arrayDays_fr = ['Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi'];
 var arrayMonths_fr = ['Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre'];
 var arraySuffix_fr = ['er', 'nd', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème', 'ème'];

 // a : Ante meridiem et Post meridiem en minuscules - am ou pm 
 fct_a = function()
 {
  return (self.getHours() > 11) ? 'pm' : 'am';
 }

 // A : Ante meridiem et Post meridiem en majuscules - AM ou PM 
 fct_A = function()
 {
  return (self.getHours() > 11) ? 'PM' : 'AM';
 }

 // B : Heure Internet Swatch - 000 à 999
 //     http://www.quirksmode.org/index.html?/js/beat.html
 fct_B = function() {
  var intGMTOffset = (self.getTimezoneOffset() + 60) * 60;
  var intSeconds = (self.getHours() * 3600) + (self.getMinutes() * 60) + self.getSeconds() + intGMTOffset;
  var intBeat = Math.floor(intSeconds / 86.4);
  if (intBeat > 1000) {intBeat -= 1000;}
  if (intBeat < 0) {intBeat += 1000;}
  return intBeat.toString().padLeft('0', 3);
 }

 // d : Jour du mois, sur deux chiffres avec zéro initial - 01 à 31 
 fct_d = function()
 {
  return self.getDate().toString().padLeft('0', 2);
 }

 // D : Jour de la semaine, en 3 lettres, anglais par défaut - Mon à Sun 
 fct_D = function()
 {
  return eval('arrayDays_' + strLang)[self.getDay()].substring(0, 3);
 }

 // F : Mois textuel, version longue, anglais par défaut - January à December 
 fct_F = function()
 {
  return eval('arrayMonths_' + strLang)[self.getMonth()];
 }

 // g : Heure au format 12h, sans le zéro initial - 1 à 12 
 fct_g = function()
 {
  return (self.getHours() > 12) ? self.getHours() - 12 : self.getHours();
 }

 // G : Heure au format 24h, sans le zéro initial - 0 à 23 
 fct_G = function()
 {
  return self.getHours();
 }

 // h : Heure au format 12h, avec le zéro initial - 01 à 12 
 fct_h = function()
 {
  return (self.getHours() > 12) ? (self.getHours() - 12).toString().padLeft('0', 2) : self.getHours().toString().padLeft('0', 2);
 }

 // H : Heure au format 24h, avec le zéro initial - 00 à 23 
 fct_H = function()
 {
  return self.getHours().toString().padLeft('0', 2);
 }

 // i : Minutes avec le zéro initial - 00 à 59 
 fct_i = function()
 {
  return self.getMinutes().toString().padLeft('0', 2);
 }

 // j : Jour du mois sans le zéro initial - 1 à 31 
 fct_j = function()
 {
  return self.getDate();
 }

 // l : Jour de la semaine, textuel, anglais par défaut - Sunday à Saturday 
 fct_l = function()
 {
  return eval('arrayDays_' + strLang)[self.getDay()];
 }

 // L : L'année est elle bissextile ? - 0 ou 1 
 fct_L = function()
 {
  var intFullYear = fct_Y();
  return ((intFullYear % 4 == 0 && intFullYear % 100 != 0) || (intFullYear % 4 == 0 && intFullYear % 100 == 0 && intFullYear % 400 == 0)) ? 1 : 0;
 }

 // m : Mois avec le zéro intial - 01 à 12 
 fct_m = function()
 {
  return (self.getMonth() + 1).toString().padLeft('0', 2);
 }

 // M : Mois, en 3 lettres, anglais par défaut - Jan à Dec 
 fct_M = function()
 {
  return eval('arrayMonths_' + strLang)[self.getMonth()].substring(0, 3);
 }

 // n : Mois sans le zéro intial - 1 à 12 
 fct_n = function()
 {
  return (self.getMonth() + 1);
 }

 // O : Différence avec l'heure de Greenwich (GMT), en heures - -1200 à +1200 
 fct_O = function()
 {
  var intTimezone = self.getTimezoneOffset();
  var intTimezoneAbs = Math.abs(intTimezone);
  var strTimezone = Math.floor(intTimezoneAbs / 60).toString().padLeft('0', 2) + (intTimezoneAbs % 60).toString().padLeft('0', 2);
  return (intTimezone < 0) ? '+' + strTimezone : '-' + strTimezone ;
 }

 // r : Format de date RFC 822 Thu, 1 Apr 2004 12:00:00 - +0200 
 fct_r = function()
 {
  return fct_D() + ', ' + fct_j() + ' ' + fct_M() + ' ' + fct_Y() + ' ' + fct_H() + ':' + fct_i() + ':' + fct_s() + ' ' + fct_O();
 }

 // s : Secondes avec le zéro initial - 00 à 59 
 fct_s = function()
 {
  return (self.getSeconds()).toString().padLeft('0', 2);
 }

 // S : Suffixe ordinal d'un jour, anglais par défaut - st, nd, rd, th 
 fct_S = function()
 {
  return eval('arraySuffix_' + strLang)[self.getDate() - 1];
 }

 // t : Nombre de jours dans le mois - 28 à 31 
 fct_t = function()
 {
  var intDays = 0;
  if (self.getMonth() == 1) {
   intDays = 28 + fct_L();
  } else {
   switch (self.getMonth() % 2) {
    case 0 : intDays = 31; break;
    default : intDays = 30;
   }
  }
  return intDays;
 }

 // U : Secondes depuis le 1er Janvier 1970, 0h00 00s GMT - Ex: 1081072800 
 fct_U = function()
 {
  return Math.round(self.getTime() / 1000);
 }

 // w : Jour de la semaine (0 étant dimanche, 6 samedi) - 0 à 6 
 fct_w = function()
 {
  return self.getDay();
 }

 // W : Numéro de la semaine dans l'année - 1 à 52
 //     http://www.asp-php.net/tutorial/asp-php/glossaire.php?glossid=28
 fct_W = function()
 {
  return Math.floor((fct_z() - 1 - self.getDay()) / 7) + 2;
 }

 // y : Année sur 2 chiffres - Ex: 04 
 fct_y = function()
 {
  var strFullYear = fct_Y().toString();
  return strFullYear.substring(strFullYear.length - 2, strFullYear.length);
 }

 // Y : Année sur 4 chiffres - Ex: 2004 
 fct_Y = function()
 {
  return self.getFullYear();
 }

 // z : Jour de l'année - 1 à 366 
 fct_z = function()
 {
  var datePremierJanvier = new Date('January 1 ' + fct_Y().toString() + ' 00:00:00');
  var intDifference = self.getTime() - datePremierJanvier.getTime();
  return Math.floor(intDifference / 1000 / 60 / 60 / 24);
 }

 // Z : Décalage horaire en secondes - -43200 à 43200 
 fct_Z = function()
 {
  var intTimezone = self.getTimezoneOffset();
  var intTimezoneAbs = Math.abs(intTimezone);
  var strTimezone = intTimezoneAbs * 60;
  return (intTimezone < 0) ? strTimezone : -strTimezone ;
 }

 var self = this;
 if (intTime) {
  var intMyTime = self.getTime();
  self.setTime(intTime);
 }
 var arrayFormat = strFormat.split(''), i = 0;
 for (i = 0; i < arrayFormat.length; i++) {
  if (arrayFormat[i] == '\\') {
   arrayFormat.splice(i, 1);
  } else {
   if (arrayFunctions.exists(arrayFormat[i])) {
    arrayFormat[i] = eval('fct_' + arrayFormat[i] + '();');
   }
  }
 }
 if (intMyTime) {
  self.setTime(intMyTime);
 }
 return arrayFormat.join('');

}

function strip_tags (str, allowed_tags) {

    var key = '', allowed = false;
    var matches = [];    var allowed_array = [];
    var allowed_tag = '';
    var i = 0;
    var k = '';
    var html = ''; 
    var replacer = function (search, replace, str) {
        return str.split(search).join(replace);
    };
     // Build allowes tags associative array
    if (allowed_tags) {
        allowed_array = allowed_tags.match(/([a-zA-Z0-9]+)/gi);
    }
     str += '';
 
    // Match tags
    matches = str.match(/(<\/?[\S][^>]*>)/gi);
     // Go through all HTML tags
    for (key in matches) {
        if (isNaN(key)) {
            // IE7 Hack
            continue;        }
 
        // Save HTML tag
        html = matches[key].toString();
         // Is tag not in allowed list? Remove from str!
        allowed = false;
 
        // Go through all allowed tags
        for (k in allowed_array) {            // Init
            allowed_tag = allowed_array[k];
            i = -1;
 
            if (i != 0) { i = html.toLowerCase().indexOf('<'+allowed_tag+'>');}            if (i != 0) { i = html.toLowerCase().indexOf('<'+allowed_tag+' ');}
            if (i != 0) { i = html.toLowerCase().indexOf('</'+allowed_tag)   ;}
 
            // Determine
            if (i == 0) {                allowed = true;
                break;
            }
        }
         if (!allowed) {
            str = replacer(html, "", str); // Custom replace. No regexing
        }
    }
     return str;
}