var sDefaultScript = new String
var srcLoadingImages = new String
var WagAction = new String
var WagEvent = new String
var HostPath = new String
var OnReady_fc = new String
var OnSubmit_fc = new String

var crlf = "\r\n"



//~~~~~~~~~~~~~~~~~~~~~~~~~~ #        #                             #
function SUC(champ) //~~ initialisation ~~ Saisir Uniquement des Chiffres
//~~~~~~~~~~~~~~~~~~~~~~~~~~ #        #                             #
{
 this.champ=champ;
 var Lui=this;
// var ie = false; /*@cc_on ie = true; @*/
  var ie = window.event ? true : false; 
 if ( ie ) {
     this.champ.onkeypress = Lui.IE;
    }
 else  { 
     this.champ.onkeyup = function(e)
      {
       Lui.FF(this, e);
      }
    }
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SUC.prototype.IE=function() //~~ pour Internet Explorer ~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{
 if ( event.keyCode<0x30 || event.keyCode>0x39 )
 {
  event.returnValue= false;
 }
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SUC.prototype.FF=function(zone,evt) //~~ pour FireFox ~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{
 if ( evt.which<0x30 || evt.which>0x39 )
 {
  zone.value=zone.value.replace(/[^0-9]/g,"");
 }
}



function IsNum_SAVED(evt,oFld,sKeepKey) {
try {

    evt = (evt)? evt : event
    var charCode = (evt.which) ? evt.which : evt.keyCode
    var ie = window.event ? true : false; 
//  sKeepKey = ";" + sKeepKey + ";".toUpperCase()

    if (charCode >= 48 && charCode <= 57) { return true; }
    else {
        switch (charCode) {
            case 38:  charCode = 49;break;
            case 233: charCode = 50;break;
            case 34:  charCode = 51;break;
            case 39:  charCode = 52;break;
            case 40:  charCode = 53;break;
            case 45:  charCode = 54;break;
            case 232: charCode = 55;break;
            case 95:  charCode = 56;break;
            case 231: charCode = 57;break;
            case 224: charCode = 48;break;
            default:         return false;
        }
        if (ie) {
            evt.KeyCode = charCode;
            return true;
        }
        else {
            return false;
        }   
    }
}catch(e){alert('Erreur sur Fonction IsNum : '+e.description)}
}


function IsNum(evt,oFld,sKeepKey) {
try {

//evt = (evt)? evt : event
//var charCode = (evt.which) ? evt.which : evt.keyCode

    //var ie = window.event ? true : false;
    var ie 
    var sBrowser = navigator.appName
    if (sBrowser=="Microsoft Internet Explorer") {ie=true}
    else {ie=false}

    var MyKey = new String
//  sKeepKey = ";" + sKeepKey + ";".toUpperCase()
    MyKey = window.event ? event.keyCode : evt.which;

//alert("MyKey="+MyKey)
//alert("ie="+ie)
//alert("sBrowser="+sBrowser)

    if ((MyKey >= 48 && MyKey <= 57) || (MyKey == 0) || (MyKey == 8) || (MyKey == 9) || (MyKey == 35) || (MyKey == 36) || (MyKey == 37) || (MyKey == 46)){
        if (ie) {event.returnValue = true}
        evt.returnValue = true
    }
    else{
        if (ie) {
            switch (MyKey) {
                case 38:  event.keyCode = 49;break // & > 1
                case 233: event.keyCode = 50;break // é > 2
                case 34:  event.keyCode = 51;break // " > 3
                case 39:  event.keyCode = 52;break // ' > 4 
                case 40:  event.keyCode = 53;break // ( > 5
                case 45:  event.keyCode = 54;break // - > 6
                case 232: event.keyCode = 55;break // è > 7
                case 95:  event.keyCode = 56;break // _ > 8
                case 231: event.keyCode = 57;break // ç > 9
                case 224: event.keyCode = 48;break // à > 0
                default:
         //       if (sKeepKey.indexOf(";" + String.fromCharCode(event.keyCode).toUpperCase() + ";") == -1)	
         //       {
                    event.returnValue = false
          //      }
            }
        }
        else {
            //alert("Value:"+oFld.value)
            return false;
            evt.returnValue = false;
        }   
    }
}catch(e){alert('Erreur sur Fonction IsNum : '+e.description)}
}



function IsTaux(champ)
{
    if (IsInt(champ))
    {
        if (champ.value < 101)
        {
            return true
        }else{
            alert ("Valeur maximum de 100.")
            champ.value = ""
            champ.focus()
            champ.select()
            return false
        }
    }
}

function IsAlpha(champ)
{
    var c = "" + champ.value 
    for (var i=0; i<c.length ; i++) 
    { 
        var ch=c.substring(i,i+1)
        if (!(( ch >= "A" && ch <= "z" ) || ch == " " || ch == "*")) 
        {
            alert("Les caractères accentués, numériques ,et la ponctuation,  ne sont pas autorisés")
            champ.value = ""
            champ.focus()
            champ.select()
            return false
        }
    }
    return true
    
}

function IsDigit(c){
	var test = "" + c
	if (test == "0" || test == "1" || test == "2" || test == "3" || test == "4" || test == "5" || test == "6" || test == "7" || test == "8" || test == "9" || test == "0") {
		return true
    }
    return false
}

function  IsInt(champ,StrAlert){
	var test = trim("" + champ.value) ;
	for (var k = 0; k < test.length; k++){
		var c = test.substring(k, k+1)
		if (IsDigit(c) == false){
			if (StrAlert == "")	{alert ("Format Entier:Caractères autorisés [0123456789]") }
			else				{alert (StrAlert) }
			//champ.value = ""
			champ.focus()
			champ.select()
			return false
        }
    }
    return true
}

function IsDec(champ){
    var test = "" + champ.value ;
    var cpt=0; 
    test = test.replace(/,/g,".")
	
    for (var k = 0; k < test.length; k++)
    {
	        var c = test.substring(k, k+1);
		if (c == ".") {cpt++}
		if ((IsDigit(c) == false && c != ".") || ((IsDigit(c)== true || c == "." ) && cpt>1 ))
		{
			msg ("Format Décimal:Caractères autorisés [0123456789.]§ Utilisez le point comme séparateur");
			champ.value = "";
			champ.focus();
			champ.select();
			return false;
		}
    }
    champ.value = test
    return true;
}

function IsCur(champ)
{
    var test = "" + champ.value ;
    for (var k = 0; k < test.length; k++)
    {
        var c = test.substring(k, k+1);
        if (IsDigit(c) == false && c != ",")
        {
            alert ("Format Monétaire:Caractères autorisés [0123456789,] § Utilisez la virgule comme séparteur")
            champ.value = ""
            champ.focus()
            champ.select()
            return false
        }
    }
    return true
}


function  IsDate(champ)
{
    var err = 0
    var psj = 0
    var today = new Date
    var dd = "0" + today.getDate()  
    var iMM = 0
    var mm = ""
    var yyyy = today.getYear() 
    var next_yyyy = today.getYear() + 1
    iMM = today.getMonth() + 1
   
    mm = iMM
    if (iMM < 10) {mm = "0" + mm}
     
    if (dd.length > 2)
    {
        dd = dd.substr(1,2)
    }
    if (mm.length > 2)
    {
        dd = mm.substr(1,2)
    }
    var ddmmyyyy = dd + mm + yyyy
    var yyyymmdd = yyyy + mm + dd
    
    if (champ.value == "0") {champ.value = ddmmyyyy}
    if (champ.value == "1") {champ.value = "0101" + yyyy}
    if (champ.value == "2") {champ.value = "0101" + next_yyyy}
    if (champ.value == "8") {champ.value = "3112" + next_yyyy}
    if (champ.value == "9") {champ.value = "3112" + yyyy}
    
    var c = "" + champ.value;
        
    if (c.length == 0)
    {
        return true
    }
    if (c.length == 2)
    {
        c = c + mm + yyyy 
        champ.value = c
    }
    
    if (c.length == 4)
    {
        c = c + yyyy 
        champ.value = c
    }
    if (c.length == 6)
    {
        c = c.substr(0,4) + "20" + c.substr(4,2) 
        champ.value = c
    }
    
    if (c.length != 8) 
    {
        alert ("Le format de la date est JJMMAAAA [8 Car] § Exemple 15072001 pour 15 Juillet 2001")
        champ.value = ""
        champ.focus() 
        champ.select()
        return false
    }
    
    if (! IsInt(champ))
    {
        return false
    }
    
    jour = c.substring(0,2) 
    mois = c.substring(2,4) 
    an = c.substring(4,9) 
    
    if (jour > "31") 
    {
        alert("valeur du jour incorrect.")
        champ.focus() 
        champ.select()
            return false
    }
    if (mois > "12") 
    {
        alert("valeur du mois incorrect.")
        champ.focus()
        champ.select()
            return false
    }
    
    if (mois == 4 || mois == 6 || mois == 9 || mois == 11)
    {
        if (jour==31) 
        {
            err = 1
        }
    }
    
    if (mois == 2)
    {
        var g = parseInt(an / 4)
        if (isNaN(g) || (jour > 29) || (jour == 29 && ((an / 4) != parseInt(an / 4))))
        {
            err = 1
        }
    }
    
    if (err == 1)
    {
        alert("Date incorrecte")
        champ.focus()
        champ.select()
            return false
    }
    return true
}

function IsMail(champ)
{
    var email = "" + champ.value
    if (email.length < 2) {return true}
    if (email.indexOf(".") == -1 || email.indexOf("@") == -1)
    {
        alert("Veuillez indiquer un e-mail valide")
        champ.value = ""
        champ.focus()
        champ.select()
        return false
    }
    return true
}

function  Imprimer()
{
    window.print()
}

function IsTime(champ)
{
    var test = "" + champ.value ;
    for (var k = 0; k < test.length; k++)
    {
        var c = test.substring(k, k+1)
        if (IsDigit(c) == false && c != ":")
        {
            alert ("Format Heure:Caractères autorisés [0123456789:]§ Exemple 12:45")
            champ.value = ""
            champ.focus()
            champ.select()
            return false
        }
    }
    return true
}


function Refresh()
{
    goWAG(WagEvent)
}


function W_MsgBox(Text,Title)
{
    alert(Text)
}

function TestLen (champ,L,message)
{
    var tst = "" + champ.value
    var Ltst = 0 + L
    var Tmp = new String
    if (tst.length < Ltst)
    {
        alert(message)
        if (champ.offsetWidth > 0){champ.focus()}
        return false
    }else{
        return true
    }
}

function Ucase(champ)
{
    champ.value = champ.value.toUpperCase()
}

function lcase(champ)
{
    champ.value = champ.value.toLowerCase()
}


function fString()
{
var nbrec = 0
var sArr = new Array

this.Add = Add
this.sVal = sVal
this.Clear = Clear

function Add(sVar,Arg1,Arg2,Arg3,Arg4,Arg5,Arg6)
{
    nbrec ++
    if (Arg1 != undefined)
    {
        sVar = sVar.replace("%1",Arg1)
        if (Arg2 != undefined)
        {
            sVar = sVar.replace("%2",Arg2)
            if (Arg3 != undefined)
            {
                sVar = sVar.replace("%3",Arg3)
                if (Arg4 != undefined)
                {
                    sVar = sVar.replace("%4",Arg4)
                    if (Arg5 != undefined)
                    {
                        sVar = sVar.replace("%5",Arg5)
                        if (Arg6 != undefined)
                        {
                            sVar = sVar.replace("%6",Arg6)
                        }
                    }
                }
            }
        }
    }
    sArr[nbrec] = sVar
} 

function sVal()
{
    return sArr.join("")
}

function Clear()
{
    sArr = new Array
    nbrec = 0
}
}


    
function W_UnloadMe()
{
    window.close()
}

function msg(sMsg)
{
    alert(sMsg)
}

function evalJS(sExpression)
{
    if (sExpression == "") {return}
    try 
    {eval(sExpression)}
    catch(e)
    { 
  	//alert(e.description)
    }
}

function trim(s) 
{ 
 return s.replace(/(^\s*)|(\s*$)/g, ""); 
} 
function noSpace(s)
{
  return  s.replace(/\s/g,"")
}

function CheckSameValues(){
try {

    var coll = document.getElementsByTagName("INPUT");
    for (var i=0; i<coll.length ; i++) {
        if (coll[i].getAttribute("MUST_HAVE_SAME_VALUE_AS")) {
        var oItem = document.getElementById(coll[i].getAttribute("MUST_HAVE_SAME_VALUE_AS"))
            if (coll[i].value != oItem.value ) {
                if(coll[i].getAttribute("MUST_HAVE_SAME_VALUE_AS_MESSAGE") == "" ) { alert("Vérifiez la conformité des champs") }
                else                                                               { alert(coll[i].getAttribute("MUST_HAVE_SAME_VALUE_AS_MESSAGE")) }
            coll[i].focus()
            return false
            }
        }
    }
    return true
    } catch(e) {alert(e.description)}
}

function CheckRequested()
{
    var coll = document.getElementsByTagName("SELECT");
    for (var i=0; i<coll.length ; i++)
    {
        if (coll[i].getAttribute("REQUESTED_MESSAGE"))
        {
          if (noSpace(coll[i].value) == "")
          {
            alert(coll[i].getAttribute("REQUESTED_MESSAGE"))
            coll[i].focus()
            return false
          }
        }
    }
    var coll = document.getElementsByTagName("INPUT");
    for (var i=0; i<coll.length ; i++)
    {
        if (coll[i].getAttribute("REQUESTED_MESSAGE"))
        {
          if (noSpace(coll[i].value) == "")
          {
            alert(coll[i].getAttribute("REQUESTED_MESSAGE"))
            coll[i].focus()
            return false
          }
        }
    }
    var coll = document.getElementsByTagName("TEXTAREA");
    for (var i=0; i<coll.length ; i++)
    {
        if (coll[i].getAttribute("REQUESTED_MESSAGE"))
        {
          if (noSpace(coll[i].value) == "")
          {
            alert(coll[i].getAttribute("REQUESTED_MESSAGE"))
            coll[i].focus()
            return false
          }
        }
    }

    return true
}

function CheckIsInt(){
    var coll = document.getElementsByTagName("INPUT");
    for (var i=0; i<coll.length ; i++){
        if (coll[i].getAttribute("ISINT_MESSAGE")){
            if (!IsInt(coll[i],coll[i].getAttribute("ISINT_MESSAGE"))){
                //alert(coll[i].getAttribute("ISINT_MESSAGE"))
                //coll[i].focus()
                return false
            }
        }
    }
    return true
}

function CheckIsMail() {
    var coll = document.getElementsByTagName("INPUT");
    for (var i=0; i<coll.length ; i++){
		    if (coll[i].getAttribute("ISMAIL_MESSAGE")){
            if (!IsEMail(coll[i],coll[i].getAttribute("ISMAIL_MESSAGE"))){
                return false
            }
        }
    }
    return true
}

function IsEMail(champ,StrAlert){
    var emailVal = champ.value;
    if (emailVal.search(/^[a-z0-9._-]+[^._-]@[a-z0-9._-]+([a-z0-9]+[^._-])?[.-]+[a-z0-9]{2,4}$/) == -1){
        if (StrAlert == "")	{alert ("Format eMail incorrect") }
        else				        {alert (StrAlert) }
        champ.focus()
        champ.select()
        return false;
    }
    return true;
}

function LoadSelectElement()
{
    try
    {
      var coll = document.getElementsByTagName("SELECT");
      for (var i=0; i<coll.length ; i++)
      {
          if (coll[i].DEFAULT)
          {
            coll[i].value = coll[i].DEFAULT
            CheckParamSelect(coll[i],false)
          }
      }
    } catch(e) {alert(e.description)}
}

function getSelectString(sPrefix) {
    var crlf = "\r\n"
    if (sPrefix == undefined) {sPrefix = ""}
    var coll = document.getElementsByTagName("SELECT");
    var sOut = ""
    var s = ""
    for (var i=0; i<coll.length ; i++)
    {
        s = coll[i].value
        if (trim(s) == "?") {trim(s) = "" }
        sOut = sOut + coll[i].name + "=" + coll[i].value + crlf
    }
    return sOut
}

function getInputString(sPrefix) {
    var crlf = "\r\n"
    if (sPrefix == undefined) {sPrefix = ""}
    sPrefix = sPrefix.toUpperCase()
    var coll = document.getElementsByTagName("INPUT");
    var sOut = ""
    var s = ""
    var sCar = ""
    for (var i=0; i<coll.length ; i++)
    {
        sCar = coll[i].name.substr(0,1).toUpperCase()
        if (sCar == sPrefix || sPrefix == "")
        {

            if (coll[i].type.toUpperCase() == "CHECKBOX")
            {
                if (coll[i].checked == true)
                {
                  sOut = sOut + coll[i].name + "=" + "1" + crlf
                }
                else
                {
                  sOut = sOut + coll[i].name + "=" + "0" + crlf
                }

            }

            if (coll[i].type.toUpperCase() == "TEXT")
            {
                    s = coll[i].value
                    sOut = sOut + coll[i].name + "=" + trim(s) + crlf
                    
            }
            if (coll[i].type.toUpperCase() == "HIDDEN")
            {
                    s = coll[i].value
                    sOut = sOut + coll[i].name + "=" + trim(s) + crlf
            }
        }
    }
    return sOut

}

function getTextareaString(sPrefix)
{
    var crlf = "\r\n"
    if (sPrefix == undefined) {sPrefix = ""}
    var coll = document.getElementsByTagName("TEXTAREA");
    var sOut = ""
    var s = ""
    var sCar = ""
    for (var i=0; i<coll.length ; i++)
    {
        sCar = coll[i].name.substr(0,1).toUpperCase()
        if (sCar == sPrefix || sPrefix == "")
        {
            s = coll[i].value
            s = s.replace(/\r\n/g, "<br>")
            sOut = sOut + coll[i].name + "=" + trim(s) + crlf
        }
    }
    return sOut
}


function Wst(p_sTxt) {
var sMsg = p_sTxt;
sMsg = '> '+sMsg.replace("|","");
window.status = sMsg;
setTimeout("ClearWst()",1000);
}
function ClearWst() {window.status="";}




function Display(o)
{
  try
  {
   o.style.display = ''
  }
  catch(e){alert('Erreur sur Fonction  Display: '+e.description)}
}

function NoDisplay(o)
{
  
  try
  {
  o.style.display = 'none'
  }
  catch(e){alert('Erreur sur Fonction  NoDisplay: '+e.description)}

}


function HideTags(sTagName,sAttribute,sAttValue,bLike)
{
    try
    {

        if (bLike == undefined) {bLike = false}
        if (sAttValue == undefined) {sAttValue =  ""}
        sAttValue = sAttValue.toUpperCase()
        var sAtt = ""
        var bNoDisplay = true
        var coll = document.getElementsByTagName(sTagName);
        for (var i=0; i<coll.length ; i++)
        {
            sAtt =  coll[i].getAttribute(sAttribute)
            if (sAtt != null)
            {
              bNoDisplay = true
              sAtt = sAtt.toUpperCase()
              if (bLike)
              {
                 var nPos = sAtt.indexOf(".")
                  if (nPos>=0){sAtt = sAtt.substr(0,nPos+1);}
              }
              if (sAttValue == "" && sAtt.substr(0,1) == ".") {bNoDisplay = false}
              if (bNoDisplay == true && sAtt != sAttValue  && sAttValue != "") {bNoDisplay = false}
              if (bNoDisplay == true) {NoDisplay(coll[i])}
            }
        }
    }
    catch(e){
      alert('Erreur sur Fonction  HideTags: '+e.description)
    }
}

function ShowTags(sTagName,sAttribute,sAttValue)
{
    try
    {
        if (sAttValue == undefined) {sAttValue =  ""}
        var sAtt = ""
        var coll = document.getElementsByTagName(sTagName);
        for (var i=0; i<coll.length ; i++)
        {
            sAtt =  coll[i].getAttribute(sAttribute)
            if (sAtt != null)
            {
              if (sAtt == sAttValue || sAttValue == "") {Display(coll[i])}
            }
        }
    }
    catch(e){alert('Erreur sur Fonction  ShowTags: '+e.description)}
}


function SwitchEl(sId,sFn)
{
  try
  {
    if (sFn == undefined) {sFn = ""}
    var oEl = document.getElementById(sId)
    var nGroupType = 0
    var sAtt =  oEl.getAttribute("GROUP")
    var sSubGroup = ""
    var sGroup = ""
    
    if (sAtt != null)
    {
      if (sAtt!="")
      {
        sAtt = sAtt.toUpperCase()
        nGroupType = 1
        sGroup = sAtt
        var nPos = sAtt.indexOf(".")
        if (nPos>=0)
        {
          sGroup = sAtt.substr(0,nPos+1);
          sSubGroup = sAtt.substr(nPos+1)
        }
        if (sGroup == ".") {nGroupType = 2} // Mode Accordéon
      }
    }
    

    if (nGroupType == 0)
    {
      if (oEl.style.display =='none'){Display(oEl)} else {NoDisplay(oEl)}
    }

    if (nGroupType == 1)
    {
        var sTagName = oEl.tagName
        if (sSubGroup == "")
        {
          HideTags(sTagName,"GROUP","",false)
        }
        else
        {
          HideTags(sTagName,"GROUP",sGroup,true)
        }
        
        ShowTags(sTagName,"GROUP",sAtt)
    }
    if (nGroupType == 2)
    {
        var sTagName = oEl.tagName
        HideTags(sTagName,"GROUP",sAtt)
        Display(oEl)
        StyledDisplay(oEl)
    }
    if (sFn != "") {evalJS(sFn)}
    

  }
  catch(e) {alert('Erreur sur Fonction  SwitchEl: '+e.description)}
}

function StyledDisplay(oEl)
{

    var oFx = new Fx.Styles(oEl);
    oFx.start({
       'opacity':[0,1],
       'margin-top':[40,0]
    });

}

function SwitchClass(oElm,sAttrib) {
    try {
        if (sAttrib !="" && oElm.getAttribute(sAttrib) != null) {
            var sTagName  = oElm.tagName.toUpperCase()
            var sClassOld = sAttrib+'Old'
            var sClassNew = sAttrib+'New'
            var coll = document.getElementsByTagName(sTagName);
          //alert("sTagName:"+sTagName+" sClassOld:"+sClassOld+" sClassNew:"+ sClassNew)

            for (var i=0; i<coll.length ; i++) {
                if ( coll[i].getAttribute(sAttrib) ) {
                    coll[i].setAttribute(sAttrib,"0")
                    coll[i].setAttribute("class",sClassOld)
                    coll[i].setAttribute("className",sClassOld)
                }
            }
            oElm.setAttribute(sAttrib,"1")
            oElm.setAttribute("class",sClassNew)
            oElm.setAttribute("className",sClassNew)
        }
    } catch(e){alert('Erreur sur Fonction  SwitchClass : '+e.description)}
}

function ShowModal(sCaption,sOption,sImages)
{
    if (sImages == undefined) {sImages == ""}
    window.top.ShowModalExecute(sCaption,sOption,sImages)

}

function ShowModalExecute(sCaption,sOption,sImages)
{
  srcLoadingImages = "<img src='" + sPathImg +  "spinner_00.GIF' />" //loading.gif
  var sUrl = sDefaultScript + sOption
  TB_show(sCaption,sUrl,sImages)
}

function ExecuteFunctions(sFunctions)
{
 if (sFunctions == "") {return}
 var arrFc = new Array()
 arrFc = sFunctions.split(";")
 for (var i=0;i<arrFc.length;i++)
 {
    if (arrFc[i] != "")
    {
        try
        {
          eval(arrFc[i]);
        }
        catch(e){}
    }
 }
}

function addOnReady(sFunction)
{
  OnReady_fc = OnReady_fc + sFunction + ";"
}

function addOnSubmit(sFunction)
{
  OnSubmit_fc = OnSubmit_fc + sFunction + ";"
}

function EcrireCookie(nom, valeur)
{
  var argv=EcrireCookie.arguments;
  var argc=EcrireCookie.arguments.length;
  var expires=(argc > 2) ? argv[2] : null;
  var path=(argc > 3) ? argv[3] : null;
  var domain=(argc > 4) ? argv[4] : null;
  var secure=(argc > 5) ? argv[5] : false;
  document.cookie=nom+"="+escape(valeur)+
  ((expires==null) ? "" : ("; expires="+expires.toGMTString()))+
  ((path==null) ? "" : ("; path="+path))+
  ((domain==null) ? "" : ("; domain="+domain))+
  ((secure==true) ? "; secure" : "");
}
function getCookieVal(offset)
{
  var endstr=document.cookie.indexOf (";", offset);
  if (endstr==-1) endstr=document.cookie.length;
  return unescape(document.cookie.substring(offset, endstr));
}
function LireCookie(nom)
{
  var arg=nom+"=";
  var alen=arg.length;
  var clen=document.cookie.length;
  var i=0;
  while (i<clen) {
    var j=i+alen;
    if (document.cookie.substring(i, j)==arg) return getCookieVal(j);
    i=document.cookie.indexOf(" ",i)+1;
    if (i==0) break;
  }
  return null;
}


function Accordeon_Init(sId,sAccName,sAccOpen){
var list = $$('#accordion_'+ sId +' li div.collapse');
var headings = $$('#accordion_' + sId + ' li h3');
var collapsibles = new Array();
var spans = new Array();

    if (sAccOpen == undefined) {sAccOpen = ""}
    if (sAccOpen == "") {sAccOpen = Accordeon_getSaved(sAccName)}
    
    headings.each( function(heading, i) {
    var collapsible = new Fx.Slide(list[i], {
        duration: 500,
        transition: Fx.Transitions.quadIn
        });

        collapsibles[i] = collapsible;
				spans[i] = $E('span', heading);

        heading.onclick = function(){
        var span = $E('span', heading);
            if(span){
            var newHTML = span.innerHTML == '+' ? '-' : '+';
                span.setHTML(newHTML);
						}

            for(var j = 0; j < collapsibles.length; j++){
                if(j!=i) {
                    collapsibles[j].slideOut();
                    if(spans[j]) spans[j].setHTML('+');
                }
            }
            Accordeon_Save( sAccName,i);
            collapsible.toggle();
            return false;
        }
        if (sAccOpen != i.toString()) {collapsible.hide();}
    });
}
function Accordeon_getSaved(sAccName)
{
  if (sAccName != "")
  {
     if(LireCookie("acc_" + sAccName))
     {
        return LireCookie("acc_" + sAccName)
     }
  }

}

function Accordeon_Save(sAccName,i)
{
  if (sAccName != "") {
    EcrireCookie("acc_"+ sAccName,i.toString())
  }
}


