/***********************************************************************\
* INFOSTRATES LIBS
* http://www.infostrates.fr
*
* DHTML LIBS
*
* Auteur:  L.Challamel <info@infostrates.fr>]
* Copyright (c) 2001, Infostrates
*************************************************************************
* Librairie de scripts DHTML Clients
*  
\***********************************************************************/

/* $Id: dhtmllib.js,v 1.0 2001/03/01 12:00:00 Infostrates Exp $ */

//Browsercheck

 function Browsercheck(){
	this.ver=navigator.appVersion
	this.agent=navigator.userAgent
	this.dom=document.getElementById?1:0
	this.opera5=(navigator.userAgent.indexOf("Opera")>-1 && document.getElementById)?1:0
	this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0;
	this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
	this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
	this.ie=this.ie4||this.ie5||this.ie6
	this.mac=this.agent.indexOf("Mac")>-1
	this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0;
	this.ns4=(document.layers && !this.dom)?1:0;
	
	return this
}
var testbrowser=Browsercheck()

// Determine browser.

function Is() 
{
var agent = navigator.userAgent.toLowerCase();
var luc_platform = navigator.platform.toLowerCase();
this.major = parseInt(navigator.appVersion);
this.minor = parseFloat(navigator.appVersion);
this.ns = ((agent.indexOf('mozilla') != -1) &&
(agent.indexOf('spoofer') == -1) && (agent.indexOf('compatible') == -1) && (agent.indexOf('opera') == -1) && (agent.indexOf('webtv') == -1));
this.ns2 = (this.ns && (this.major == 2));
this.ns3 = (this.ns && (this.major == 3));
this.ns4 = (this.ns && (this.major == 4));
this.ns6 = (this.ns && (this.major >= 5));
this.ie = (agent.indexOf("msie") != -1);
this.ie3 = (this.ie && (this.major < 4));
this.ie4 = (this.ie && (this.major == 4) &&
(agent.indexOf("msie 5.0")   == -1));
this.ie5 = (this.ie && (this.major == 4) &&
(agent.indexOf("msie 5.0") != -1));
this.ieX = (this.ie && !this.ie3 && !this.ie4);
this.platform = luc_platform;
this.win = luc_platform.indexOf("win") != -1;
this.mac = luc_platform.indexOf("mac") != -1;
this.linux = luc_platform.indexOf("linux") != -1;
}
// Exemple de procédure d appel
// var is = new Is();
//if (is.ie5||is.ns6){
// [commands];
//}

var is = new Is();



//-----------------------------------------------------------------------------
// Fonctions classiques de Dreamweaver pour la gestion des Roll-Overs
//-----------------------------------------------------------------------------

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_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_findObj(n, d) { //v3.0
  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); 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 MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
// -->

//-----------------------------------------------------------------------------
// Layer visibility.
//-----------------------------------------------------------------------------

function hideLayer(layer) {

  if (isMinNS4)
    layer.visibility = "hide";
  if (isMinIE4)
    layer.style.visibility = "hidden";
}

function showLayer(layer) {

  if (isMinNS4)
    layer.visibility = "show";
  if (isMinIE4)
    layer.style.visibility = "visible";
}

function inheritLayer(layer) {

  if (isMinNS4)
    layer.visibility = "inherit";
  if (isMinIE4)
    layer.style.visibility = "inherit";
}

function getVisibility(layer) {

  if (isMinNS4) {
    if (layer.visibility == "show")
      return "visible";
    if (layer.visibility == "hide")
      return "hidden";
    return layer.visibility;
  }
  if (isMinIE4)
    return layer.style.visibility;
  return "";
}


function MM_showHideLayers() { //v3.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
    obj.visibility=v; }
}


//-----------------------------------------------------------------------------
// images 3 etats
//-----------------------------------------------------------------------------


function MM_nbGroup(event, grpName) { //v3.0
  var i,img,nbArr,args=MM_nbGroup.arguments;
  if (event == "init" && args.length > 2) {
    if ((img = MM_findObj(args[2])) != null && !img.MM_init) {
      img.MM_init = true; img.MM_up = args[3]; img.MM_dn = img.src;
      if ((nbArr = document[grpName]) == null) nbArr = document[grpName] = new Array();
      nbArr[nbArr.length] = img;
      for (i=4; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
        if (!img.MM_up) img.MM_up = img.src;
        img.src = img.MM_dn = args[i+1];
        nbArr[nbArr.length] = img;
    } }
  } else if (event == "over") {
    document.MM_nbOver = nbArr = new Array();
    for (i=1; i < args.length-1; i+=3) if ((img = MM_findObj(args[i])) != null) {
      if (!img.MM_up) img.MM_up = img.src;
      img.src = (img.MM_dn && args[i+2]) ? args[i+2] : args[i+1];
      nbArr[nbArr.length] = img;
    }
  } else if (event == "out" ) {
    for (i=0; i < document.MM_nbOver.length; i++) {
      img = document.MM_nbOver[i]; img.src = (img.MM_dn) ? img.MM_dn : img.MM_up; }
  } else if (event == "down") {
    if ((nbArr = document[grpName]) != null)
      for (i=0; i < nbArr.length; i++) { img=nbArr[i]; img.src = img.MM_up; img.MM_dn = 0; }
    document[grpName] = nbArr = new Array();
    for (i=2; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
      if (!img.MM_up) img.MM_up = img.src;
      img.src = img.MM_dn = args[i+1];
      nbArr[nbArr.length] = img;
  } }
}
//-----------------------------------------------------------------------------
// menu_jump
//---------------------------------
function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

//-----------------------------------------------------------------------------
//Validation de formulaire
//---------------------------------
function MM_findObj(n, d) { //v3.0
  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); return x;
}

function MM_validateForm() { //v3.0
  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
    if (val) { nm=val.name; if ((val=val.value)!="") {
      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errors+='- '+nm+' doit contenir une addresse email.\n';
      } else if (test!='R') { num = parseFloat(val);
        if (val!=''+num) errors+='- '+nm+' doit contenir un nombre.\n';
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (num<min || max<num) errors+='- '+nm+' doit contenir un nombre entre '+min+' et '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errors += '- Le champ '+nm+' est obligatoire.\n'; }
  } if (errors) alert('Des erreurs ont été repérées :\n'+errors);
  document.MM_returnValue = (errors == '');
}



//-----------------------------------------------------------------------------
//ouverture de fenêtre
//---------------------------------

function Fenetre(url,nom_page,largeur,hauteur,menubar)
{

fenetre=window.open(url,nom_page,"width="+largeur+", height="+hauteur+",top=10,left=10,"+menubar);

}

//-----------------------------------------------------------------------------
//msgbox de confirmation
//---------------------------------

function Confirm(text,url,submit,nomchamp,valeur)
{
	if(confirm(text)) 
	{
		if (submit==1)
		{
			
			if (nomchamp)
			{
				action="document.forms[0]."+nomchamp+".value='"+valeur+"'";
				eval(action);
				
			}
			//modif le 05-11-2002 par stef
			//window.document.forms[0].submit();
			return true
		}
		else
		{
			window.location.href=url;
		}
	}
	else
	{
		if (submit==1) return false
	}
}

function Confirm_new(text,url,submit,nomchamp,valeur)
{
	if(confirm(text)) 
	{
		if (nomchamp)
		{
			action="document.forms[0]."+nomchamp+".value='"+valeur+"'";
			eval(action);
		}		
		if (submit==1)
		{
			window.document.forms[0].submit();
		}
		else
		{
			window.location.href=url;
		}
	}
}


//-----------------------------------------------------------------------------
// lien fonctionnalite
//---------------------------------
function lien_fonct(url)
{
	t=new Date()
	tps=t.getTime()
	
	url=url + "&_d=" + tps 
	//alert (url)
	parent.frames['fr_contenu'].location.href=url;
	
}

//-----------------------------------------------------------------------------
// lien fonctionnalite
//---------------------------------
function timing()
{
	t=new Date()
	tps=t.getTime()
	
	return tps
	
}

//-----------------------------------------------------------------------------
// lien fonctionnalite
//---------------------------------

function valider(form)
{
	if (form)
	{
		action="document."+form+".submit()"
		eval(action)
	}
	else
	{
		document.forms[0].submit()
	}
	
}

//-----------------------------------------------------------------------------
// utiliser pour naviguer en tre les enregistrements
//---------------------------------

function aller_page(pagevalue)
{
	if (isNaN(pagevalue))
	{
		alert ("veuillez saisir un numéro de page valide")
	}
	else
	{
		document.forms(0).numpage.value=pagevalue;
		document.forms(0).submit();
	}
}
 
 
 
 function Tri(filtre,monform)
 {
  	
  	if (!monform) monform="forms[0]"
 	action="document."+monform+".numpage.value=1";
 	eval(action)
 	action="document."+monform+".tri.value=filtre";
 	eval(action)
 	action="document."+monform+".submit()";
 	eval(action)
 	//document.location="processor.php?<? echo $QUERY_STRING?>&numpage="+pagevalue
 }
function affiche_tri(filtre,monform)
 {
  	
  	if (!monform) monform="filtre_page"
 	
 	action="document."+monform+"."+filtre+".src='medias/icones/filtre_actif.gif'";
 	eval(action)
 }	

//-----------------------------------------------------------------------------
// utiliser pour colorier la ligne d'un enregistrement
//---------------------------------




function setPointer(theRow, thePointerColor)
{
   // alert ("ici")
    if (thePointerColor == '' || typeof(theRow.style) == 'undefined') {
        return false;
    }
    if (typeof(document.getElementsByTagName) != 'undefined') {
        var theCells = theRow.getElementsByTagName('td');
        
    }
    else if (typeof(theRow.cells) != 'undefined') {
        var theCells = theRow.cells;
    }
    else {
        return false;
    }

    var rowCellsCnt  = theCells.length;
    for (var c = 0; c < rowCellsCnt; c++) {
        theCells[c].style.backgroundColor = thePointerColor;
    }
    return true;
}


function CheckFormulaire(champsToCheck,champsName,monform)
 {
 	if (!monform) monform="formcheck";
 	var isOk = true;
 	var str = "";
  	for(i=0;i<champsToCheck.length;i++)
 	 {
	 	test=eval("document."+monform+"."+champsToCheck[i]+".value");
	 	if(  test== "" ||  test== "0")
	 	 {
		 	if (champsName[i])	str += "Field : "+champsName[i]+" is mandatory .\n";
			else				str += "Field : "+champsToCheck[i]+" is mandatory .\n";
			isOk = false;
	 	 }
	 	 else
	 	 {
			if ((champsToCheck[i]=="email" || champsToCheck[i]=="emailfrom") && !verif(test))
		 	{
		 		str += "Please check your email adress.\n";
		 		isOk = false;
	 	 	}	
	 	 	if ( champsToCheck[i]=="emailto" && !verif(test))
			{
				str += "Please check your friend\'s email adress.\n";
				isOk = false;
	 	 	}	
	 	 }
	 	 
	 }
	   
	if(isOk == false)	 	alert(str);
	document.CheckFormValue = (str == '');
 }