/*---- acMulti.js ----*/


/* Les tableaux params et names sont des tableaux de listes deroulantes
names contient le nom de des listes
params contient les param�tres des listes associees */

var params = new Array();
var names = new Array();
var currentname = null;
var journal = "";
var index = 0;
var c__minNbStart = 2;

var toucheTab = 9;
var toucheEntree = 13;
var toucheUp = 38;
var toucheDown = 40;

// Fonction qui construit l'objet Param qui represente les param�tres d'une liste deroulante
function objectParam() {
    this.y="";this.Ba="";this.fa=false;this.g="";this.H="";this.ToucheKeyCode="";this.k=-1;this.i=null;this.Z=-1;this.Ia=null;this.Na=5;this.r="";this.Kb="span";this.sa=null;this.TextBox=null;this.DivListe=null;this.jb=null;this.xb=null;this.W=null;this.la=null;this.za=false;this.fb=new Object();this.ea=1;this.Ma=1;this.va=false;this.aa=false;this.ua=-1;this.gb=(new Date()).getTime();this.P=false;this.l=null;this.Aa=null;this.URLLocalisationAjax=null;this.IFrame=null;this.ca=null;this.ka=false;this.Ua=false;this.q=60;this.na=null;this.Ha=null;this.V=0;this.hb=null;this.ma=null;this.oa=null;this.Ea=false;this.X=false;
    this.okuh = function(e) {};
}

function addParam(name, paramObject) {
    names.push(name);
    params.push(paramObject);
    currentname = name;
}

// Obtient les param�tres de la liste deroulante souhaitee
function getParam(name) {
    var i = 0;
    for (i=0; i<names.length; i++) {
        if (names[i] == name) return params[i];
    }
    return null;
}

// Retourne le e.srcElement sous ie et le src.target sous les autres
function eventSrc(e) {
    if(navigator&&navigator.userAgent.toLowerCase().indexOf("msie")==-1) {
        return e.target;
    } else return e.srcElement;
}

// fonction d'installation d'une liste deroulante : � appeler pour l'initialisation et la creation d'une liste deroulante sur une page
InstallAC = function(pForm, pTextBox, sb, pn, rl, hd, sm, ufn, page) {

	addParam(pTextBox.name, new objectParam());

	var parametres = getParam(currentname);
	parametres.sa = pForm;
	parametres.TextBox = pTextBox;
	parametres.jb = sb;
	if (!pn) pn = "search";
	parametres.na = pn;
	var Sb = "zh|zh-CN|zh-TW|ja|ko|";
	if (!rl || rl.length < 1) rl = "en";
	parametres.la = yb(rl);
	if (Sb.indexOf(parametres.la + "|") == -1) {
		parametres.W = true;
		parametres.aa = false;
		parametres.va = false;
		parametres.ka = false
	} else {
		parametres.W = false;
		parametres.aa = true;
		if (parametres.la.indexOf("zh") == 0)
			parametres.va = false;
		parametres.ka = true
	}
	if (!hd) hd = false;
	parametres.Ha = hd;
	if (!sm) sm = "query";
	getParam(pTextBox.name).y = sm;
	/*y=sm;*/
	parametres.xb = ufn;
	SetParametres();
	//launch the idfn timer because AC is not necessarly installed when the script is loaded
	setTimeout("idfn()", 10);
}

function SetParametres(){
    var parametres = getParam(currentname);
    if(vb()){
        parametres.P=true
    } else {
        parametres.P=false
    }
    
    parametres.URLLocalisationAjax = "/_XmlHttpRequest/ResultatRecherche/LocalisationPredictif.aspx";
    parametres.Aa = parametres.URLLocalisationAjax + "?hl=" + parametres.la;
    if(!parametres.P){
        ya("qu","",0,parametres.URLLocalisationAjax,null,null)
    }
    parametres.sa.onsubmit=Qa;
    parametres.TextBox.autocomplete="off";
   
    parametres.okuh=function(e){        
        //if (e) currentname = e.srcElement.name;        
        if (parametres.TextBox.value.length <= c__minNbStart) 
        {            
            CacherListe();
            return;
        }        
        currentname = eventSrc(e).name;
        if(!parametres.Ea){
            parametres.Ea=true
        }        
        parametres.ToucheKeyCode=e.keyCode;
        ca=parametres.TextBox.value;
        /*currentname=e.srcElement.name;*/
        Xa();
    }    
    if(parametres.TextBox.createTextRange)
        //parametres.TextBox.onkeyup=new Function("return okuh(event); ");
        parametres.TextBox.onkeyup = new Function("return getParam(currentname).okuh(event); ");
    //else parametres.TextBox.onkeyup=okuh;
    else parametres.TextBox.onkeyup = parametres.okuh;
    parametres.TextBox.onsubmit = Qa;
    g = parametres.TextBox.value;
    parametres.Ba = g;
    parametres.DivListe = document.createElement("DIV");
    parametres.DivListe.id = currentname + "_completeDiv";
    parametres.ea = 1;
    parametres.Ma = 1;
   
   
    parametres.Conteneur = document.createElement("DIV");
    parametres.Conteneur.style.zIndex = "1";
    parametres.Conteneur.style.paddingRight = "0";
    parametres.Conteneur.style.paddingLeft = "0";
    parametres.Conteneur.style.paddingTop = "0";
    parametres.Conteneur.style.paddingBottom="0";        
    parametres.Conteneur.style.borderRight = "black " + parametres.ea + "px solid";
    parametres.Conteneur.style.borderLeft = "black " + parametres.ea + "px solid";
    parametres.Conteneur.style.borderTop = "black " + parametres.Ma + "px solid";
    parametres.Conteneur.style.borderBottom = "black " + parametres.Ma + "px solid";
    parametres.Conteneur.style.backgroundColor = "white";
    parametres.Conteneur.onblur = Wb;
    
//    parametres.Conteneur.onmouseout = setTimeout('',1000);
    
    //parametres.DivListe.style.overflow = "auto";
    parametres.DivListe.style.height = "180px";
    parametres.DivListe.appendChild(parametres.Conteneur);

    PositionneDivListe();
    parametres.DivListe.style.visibility = "hidden";
    parametres.DivListe.style.position = "absolute";
    
    document.body.appendChild(parametres.DivListe);
    Wa("",new Array(),new Array());
    Qb(parametres.DivListe);
    
    var DivIFrame = document.createElement("DIV");
    DivIFrame.id = currentname + "_completionFrameDiv";
    DivIFrame.style.visibility = "hidden";
    DivIFrame.style.position = "absolute";
    DivIFrame.style.left = "-10000";
    DivIFrame.style.top = "-10000";
    DivIFrame.style.width = "0";
    DivIFrame.style.height = "0";
    
    var IFrame = document.createElement("IFRAME");
    IFrame.completeDiv = parametres.Conteneur;
    IFrame.name = currentname + "_completionFrame";
    IFrame.id = currentname + "_completionFrame";
    IFrame.src = parametres.Aa;
    
    if(parametres.DivListe.id.indexOf('Home',0) != -1)
    {
        parametres.DivListe.className = "mAutoCompleteHome";
    }    
    
    DivIFrame.appendChild(IFrame);
    document.body.appendChild(DivIFrame);
    
    if (frames&&(frames[currentname + "_completionFrame"] && frames[currentname + "_completionFrame"].frameElement)){
        parametres.IFrame = frames[currentname + "_completionFrame"].frameElement;
    } else {
        parametres.IFrame = document.getElementById(currentname + "_completionFrame");
    }   
    if(parametres.y == "url"){
        Sa();
        PositionneDivListe();
    }
    
    parametres.TextBox.onkeydown = Xb;
    Ob();        
    if(parametres.ka){
        setTimeout("idkc()",10);        
        if(parametres.TextBox.attachEvent){
            TextBox.attachEvent("onpropertychange",Zb)
        }
    }    
}

function ub(){
    getParam(currentname).za=true;
    //getParam(currentname).TextBox.blur();
    setTimeout("sfi();",10);
    return
}

//On capture les touches de l'utilisateurs
function Ob(){
    if(document.createEventObject){
        var Ka=document.createEventObject();
        Ka.ctrlKey=true;
        Ka.keyCode=70;
        document.fireEvent("onkeydown",Ka);
    }
}

// L'utilisateur efface le texte par l'avant
function Xb(h){    
    if(!h&&window.event)h=window.event;
    //affecter le bon currentname
    //if (h) currentname = h.srcElement.name; else currentname = h.target.name;
    currentname = eventSrc(h).name;
    if(h) getParam(currentname).ua=h.keyCode;
    if(h&&h.keyCode==8){ //Execute si on efface vers la gauche le input
        if(getParam(currentname).W&&(getParam(currentname).TextBox.createTextRange&&(eventSrc(h)/*h.srcElement*/==getParam(currentname).TextBox&&(ja(getParam(currentname).TextBox)==0&&qa(getParam(currentname).TextBox)==0)))){
            nc(getParam(currentname).TextBox);
            h.cancelBubble=true;
            h.returnValue=false;
            return false
        }
    }
}

function Mb(){
    if(getParam(currentname).y=="url"){
        Sa();
    }
    PositionneDivListe();
}

function PositionneDivListe(){
    var parametres = getParam(currentname);
    if(parametres.DivListe){
        parametres.DivListe.style.left = CalculerPositionGauche(parametres.TextBox) + "px";
        parametres.DivListe.style.top= CalculerPositionHaut(parametres.TextBox) + parametres.TextBox.offsetHeight - 1 +"px";
        parametres.DivListe.style.width = CalculerLargeur() + "px";
    }
}

function CalculerLargeur(){
    if(navigator&&navigator.userAgent.toLowerCase().indexOf("msie")==-1){
        return getParam(currentname).TextBox.offsetWidth - getParam(currentname).ea*2;
    } else {
        return getParam(currentname).TextBox.offsetWidth;
    }
}

if (typeof(WebForm_FireDefaultButton) != "undefined"){
    var l__tempFunction = WebForm_FireDefaultButton;
}

function lc(h){
    X = true;
}

function Wb(h){
    X = false;
    if(!h&&window.event)
        h=window.event;
    if(!getParam(currentname).za)
    {
        CacherListe();
        if(getParam(currentname).ua==9)
        {
            jc();
            getParam(currentname).ua=-1;
        }
    }
    getParam(currentname).za=false;
}

function jc(){
    //jb.focus()
}

sfi=function(){
    //getParam(currentname).TextBox.focus();
}

function hc(Da){
    for(var c=0,wa="",Ib="\n\r";c<Da.length;c++)
        if(Ib.indexOf(Da.charAt(c))==-1)
            wa+=Da.charAt(c);
        else wa+=" ";
    return wa;
}

function Za(j,oc){
    var ia=j.getElementsByTagName(getParam(currentname).Kb);
    if(ia){
        for(var c=0;c<ia.length;++c){
            if(ia[c].className==oc){
                var Y=ia[c].innerHTML;
                if(Y=="&nbsp;")
                    return"";
                else{
                    var A=hc(Y);
                    return A;
                }
            }
        }
    }else{
        return"";
    }
}

function T(j){
    if(!j)return null;
    return Za(j,"cAutoComplete");
}

function Fa(j){
    if(!j)return null;
    return Za(j,"dAutoComplete");
}

function FixIE6(isVisible) {
	if (typeof (LstDllCache) != 'undefined' && LstDllCache != undefined && IsNavigatorIe6()) {
		var lstDll = LstDllCache.split(",");
		for (var i = 0; i < lstDll.length; i++) {
			var DropdownList = getObj(lstDll[i]);
			//if (obj.style.visibility == "visible") {
			if (isVisible == 1) {
				DropdownList.style.visibility = "hidden";
			}
			else {
				DropdownList.style.visibility = "visible";
			}
		}
	}
}

function CacherListe() {
	if (document.getElementById(currentname + "_completeDiv") != undefined) {
		document.getElementById(currentname + "_completeDiv").style.visibility = "hidden";
		FixIE6(0);
	}
}

function AfficherListe() {
	if (document.getElementById(currentname + "_completeDiv") != undefined) {
		DivSuggestionContainer = document.getElementById(currentname + "_completeDiv");
		document.getElementById(currentname + "_completeDiv").style.visibility = "visible";
		FixIE6(1);
		PositionneDivListe();
	}
}

function Wa(is,cs,ds){
    getParam(currentname).fb[is]=new Array(cs,ds);
}

sendRPCDone=function(fr,is,cs,ds,pr, i__moreLocalities){    
    var l__moreLocalities = (i__moreLocalities=="True");
    if(getParam(currentname).V>0)getParam(currentname).V--;
    var rc=(new Date()).getTime();
    if(!fr)fr=getParam(currentname).IFrame;
    Wa(is,cs,ds);
    var b=fr.completeDiv;
    b.completeStrings=cs;
    b.displayStrings=ds;
    b.prefixStrings=pr;
    Cb(b,b.completeStrings,b.displayStrings, l__moreLocalities);
    Ya(b,T);
    if(getParam(currentname).Na>0)
        b.height=16*getParam(currentname).Na+4;
    else CacherListe();
}

function Xa(){
    var parametres = getParam(currentname);
    var champOu = parametres.TextBox;
    var longueurSelection = qa(champOu);
    var indexSelection = ja(champOu);
    var valeurOu = champOu.value;
    
    if(parametres.ToucheKeyCode == toucheUp || parametres.ToucheKeyCode == toucheDown)
        ub();
    if(parametres.W && parametres.ToucheKeyCode != 0){
        if(longueurSelection > 0 && indexSelection != -1)
            valeurOu = valeurOu.substring(0,indexSelection);
        if(parametres.ToucheKeyCode == toucheEntree || parametres.ToucheKeyCode == 3){                 
            if(champOu.createTextRange){
                var u = champOu.createTextRange();
                u.moveStart("character",champOu.value.length);
                u.select()
            }else if(champOu.setSelectionRange){
                champOu.setSelectionRange(champOu.value.length,champOu.value.length);
            }
        }else{
            if(champOu.value != valeurOu && parametres.ToucheKeyCode != toucheTab)
                R(valeurOu);
        }
    }
    parametres.g = valeurOu;
    if(Nb(parametres.ToucheKeyCode) && parametres.ToucheKeyCode != 0)
        Ya(parametres.Conteneur,T);
}

function Qa(){
    return Gb(getParam(currentname).y);
}

function Gb(pb){    
    getParam(currentname).fa=true;
    if(!getParam(currentname).P){
        ya("qu","",0,getParam(currentname).URLLocalisationAjax,null,null)
    }
    CacherListe();
    //reenable ajax catcher
    if (l__tempFunction)
        WebForm_FireDefaultButton = l__tempFunction;
    if(pb=="url"){
        var Q="";
        if(getParam(currentname).k!=-1&&getParam(currentname).i)Q=T(getParam(currentname).i);
        if(Q=="")Q=getParam(currentname).TextBox.value;
        if(getParam(currentname).r=="")
            document.title=Q;
        else document.title=getParam(currentname).r;
        setTimeout(dc,10);
        return false
    }else if(pb=="query"){
        if(PageZapette){
        }
        return true;
    }
}

newwin=function(){
    window.open(getParam(currentname).TextBox.value);
    CacherListe();
    return false;
}

idkc=function(e){    
    if(getParam(currentname).ka){    
        if(getParam(currentname).X){
            eb()
        }
        var db=getParam(currentname).TextBox.value;
        if(db!=getParam(currentname).ca){
            getParam(currentname).ToucheKeyCode=0;Xa()
        }
        getParam(currentname).ca=db;
        setTimeout("idkc()",10)
    }
}
    
function yb(Va){
    if(encodeURIComponent)return encodeURIComponent(Va);
    if(escape)return escape(Va)
}

function Hb(Ub){
    var I=100;    
    for(var p=1;p<=(Ub-2)/2;p++){
        I=I*2
    }
    I=I+50;
    return I;
}

idfn=function(){
    if(!getParam(currentname)) return;
    if(getParam(currentname).Ba!=getParam(currentname).g){
        if(!getParam(currentname).fa){
            var lb=yb(getParam(currentname).g);
            var ta=getParam(currentname).fb[getParam(currentname).g];
            if(ta && false){
                getParam(currentname).gb=-1;
                sendRPCDone(getParam(currentname).IFrame,getParam(currentname).g,ta[0],ta[1],getParam(currentname).IFrame.completeDiv.prefixStrings)
            }else{
                getParam(currentname).V++;
                getParam(currentname).gb=(new Date()).getTime();
                if(getParam(currentname).P){
                    qc(lb) //XMLHttpRequest
                    
                }else{
                    ya("qu",lb,null,getParam(currentname).URLLocalisationAjax,null,null);
                    /*frames["completionFrame"].document.location.reload(true)*/
                }
            }
        //getParam(currentname).TextBox.focus()
        }
        getParam(currentname).fa=false
    }
    getParam(currentname).Ba=getParam(currentname).g;
    setTimeout("idfn()",Hb(getParam(currentname).V));
    return true;
}

setTimeout("idfn()",10);
var Lb=function(){    
    R(T(this));
    getParam(currentname).r=Fa(this);
    getParam(currentname).fa=true;
    Qa();
}

var Ab=function(){
    if(getParam(currentname).i)m(getParam(currentname).i,"aAutoComplete");
    m(this,"bAutoComplete")
}

var pc=function(){
    m(this,"aAutoComplete")
}

function xa(D){
    getParam(currentname).g=getParam(currentname).H;
    R(getParam(currentname).H);
    getParam(currentname).r=getParam(currentname).H;
    if(!getParam(currentname).Ia||getParam(currentname).Z<=0)return;
    AfficherListe();
    if(D>=getParam(currentname).Z){
        D=getParam(currentname).Z-1;
    }
    if(getParam(currentname).k!=-1&&D!=getParam(currentname).k){
        m(getParam(currentname).i,"aAutoComplete");
        getParam(currentname).k=-1
    }
    if(D<0){
        getParam(currentname).k=-1;
        getParam(currentname).TextBox.focus();
        return
    }
    getParam(currentname).k=D;
    getParam(currentname).i=getParam(currentname).Ia.item(D);
    m(getParam(currentname).i,"bAutoComplete");
    getParam(currentname).g=getParam(currentname).H;
    getParam(currentname).r=Fa(getParam(currentname).i);
    R(T(getParam(currentname).i))
}

function Nb(pa){
    if(pa==40){
        xa(getParam(currentname).k+1);
        return false
    }else if(pa==38){
        xa(getParam(currentname).k-1);
        return false
    }else if(pa==13||pa==3){
        return false
    }
    return true
}

function Ya(pConteneur,Pa){
    var parametres = getParam(currentname);
    var S=false;
    parametres.k=-1;
    var TabElements = pConteneur.getElementsByTagName('div');
    var NombreElements = TabElements.length;
    parametres.Z = NombreElements;
    parametres.Na = NombreElements;
    parametres.Ia = TabElements;    
    parametres.H = parametres.g;
    if(parametres.g == "" || NombreElements == 0){
        CacherListe();
    }else{
        AfficherListe();
    }
    var Jb="";
    g__focus = "menu_deroulant";
    if(getParam(currentname).g.length>c__minNbStart){        
        //disable ajax catcher
        WebForm_FireDefaultButton = function() {};
        var c;
        var p;
        for(var c=0;c<NombreElements;c++){
            for(p=0;p<pConteneur.prefixStrings.length;p++){
                var cb=pConteneur.prefixStrings[p]+getParam(currentname).g;
                if(getParam(currentname).va||(!getParam(currentname).aa&&Pa(TabElements.item(c)).toUpperCase().indexOf(cb.toUpperCase())==0||getParam(currentname).aa&&(c==0&&Pa(TabElements.item(c)).toUpperCase()==cb.toUpperCase()))){
                    Jb=pConteneur.prefixStrings[p];
                    S=true;
                    break
                }
            }
            if(S){
                break
            }
        }
    }
    if(S)getParam(currentname).k=c;
    for(var c=0;c<NombreElements;c++)m(TabElements.item(c),"aAutoComplete");
    if(S){
        getParam(currentname).i=TabElements.item(getParam(currentname).k);
        getParam(currentname).r=Fa(getParam(currentname).i)
     }else{
        getParam(currentname).r=getParam(currentname).g;
        getParam(currentname).k=-1;getParam(currentname).i=null
     }
     var mb=false;
     switch(getParam(currentname).ToucheKeyCode){
        case 8:case 33:case 34:case 35:case 35:case 36:case 37:case 39:case 45:case 46:
            mb=true;
            break;
        default:break
     }
     if(!mb&&getParam(currentname).i){
        var Oa=getParam(currentname).g;
        m(getParam(currentname).i,"bAutoComplete");
        var A;
        if(S)
            A=Pa(getParam(currentname).i).substr(pConteneur.prefixStrings[p].length);
        else A=Oa;
        if(A != parametres.TextBox.value){
            if(parametres.TextBox.value != getParam(currentname).g)return;
            if(getParam(currentname).W){
                if(parametres.TextBox.createTextRange || parametres.TextBox.setSelectionRange)R(A);
                if(parametres.TextBox.createTextRange){
                    var u = parametres.TextBox.createTextRange();
                    u.moveStart("character",Oa.length);
                    u.select()
                }else if(parametres.TextBox.setSelectionRange){
                    parametres.TextBox.setSelectionRange(Oa.length,parametres.TextBox.value.length)
                }
            }
        }
    }else{
        getParam(currentname).k=-1;
        getParam(currentname).r=getParam(currentname).g
    }
}

// Ces 3 fonctions calculent la position de la liste
function CalculerPositionGauche(pTextBox){
    return CalculerOffset(pTextBox,"offsetLeft");
}

function CalculerPositionHaut(pTextBox){
    return CalculerOffset(pTextBox,"offsetTop")
}

function CalculerOffset(pTextBox,pTypeOffset){
    var offsetTotal = 0;
    var element = pTextBox;
    while(element){
        offsetTotal += element[pTypeOffset];
        element = element.offsetParent
    }
    return offsetTotal;
}

function ya(z,Y,ab,tb,qb,cc){
    var Vb=z+"="+Y+(ab?"; expires="+ab.toGMTString():"")+(tb?"; path="+tb:"")+(qb?"; domain="+qb:"")+(cc?"; secure":"");
    document.cookie=Vb
}

function Sa(){
    var Ga=document.body.scrollWidth-220;
    Ga=0.73*Ga;
    getParam(currentname).TextBox.size=Math.floor(Ga/6.18)
}

// Retourne la longueur de la selection du champ OU
function qa(ou){
    if (ou.createTextRange){        
        return document.selection.createRange().duplicate().text.length;
    } else if (ou.setSelectionRange){
        return ou.selectionEnd-ou.selectionStart;
    } else {
        return -1;
    }
}

// Retourne la position du debut de la selection du champ OU
function ja(ou){
    if(ou.createTextRange){
        var ha=document.selection.createRange().duplicate();
        ha.moveEnd("textedit",1);
        return ou.value.length-ha.text.length;
    } else if(ou.setSelectionRange){
        return ou.selectionStart;
    } else {
        return -1;
    }
}

function nc(f){
    if(f.createTextRange){
        var u=f.createTextRange();
        u.moveStart("character",f.value.length);
        u.select()
    }else if(f.setSelectionRange){
        f.setSelectionRange(f.value.length,f.value.length)
    }
}

function m(d,z){
    ob();
    d.className=z;
    if(getParam(currentname).Ua){
        return
    }
    switch(z.charAt(0)){
        case "m":
            d.style.fontSize="13px";
            d.style.fontFamily="arial,sans-serif";
            d.style.wordWrap="break-word";
            break;
        case "l":
            d.style.display="block";
            d.style.paddingLeft="3";
            d.style.paddingRight="3";
            d.style.height="16px";
            d.style.overflow="hidden";
            d.style.textAlign="left";
            break;
        case "a":
            d.style.backgroundColor="white";
            d.style.color="black";
            if(d.displaySpan){
                d.displaySpan.style.color="red"
            }
            break;
        case "b":
            d.style.backgroundColor="#f48a05";
            d.style.color="white";
            if(d.displaySpan){
                d.displaySpan.style.color="white"
            }
            break;
        case "c":
            d.style.width="100%";
            d.style.cssFloat="left";
            break;
        case "d":
            d.style.cssFloat="right";
            d.style.width="0%";
            if(getParam(currentname).y=="query"){
                d.style.fontSize="10px";
                d.style.textAlign="right";
                d.style.color="green";
                d.style.paddingTop="3px"
            }else{
                d.style.color="#696969"
            }
            break
    }
}



function ob(){
    getParam(currentname).q=65;
    if(getParam(currentname).y=="query"){
        var Fb=110;
        var bb=CalculerLargeur();
        var Db=(bb-Fb)/bb*100;
        getParam(currentname).q=Db
    }else{
        getParam(currentname).q=65
    }
    if(getParam(currentname).Ha){
        getParam(currentname).q=99.99
    }
}

function Qb(j){
    ob();
    var ec="font-size: 13px; font-family: arial,sans-serif; word-wrap:break-word; z-index:2000";
    var gc="display: block; padding-left: 3; padding-right: 3; height: 16px; overflow: hidden;";
    var mc="background-color: #000000;";
    var Bb="background-color: #000000; color: white ! important;";
    var Eb="display: block; margin-left: 0%; width: "+getParam(currentname).q+"%; float: left;";
    var Ra="display: block; margin-left: "+getParam(currentname).q+"%;";
    if(getParam(currentname).y=="query"){
        Ra+="font-size: 10px; text-align: right; color: green; padding-top: 3px;"
    }else{
        Ra+="color: #696969;"
    }
    E(".mAutoComplete",ec);
    E(".lAutoComplete",gc);
    E(".aAutoComplete *",mc);
    E(".bAutoComplete *",Bb);
    E(".cAutoComplete",Eb);
    E(".dAutoComplete", Ra);
    if (_pjpaPage != undefined && _pjpaPage != "") {
    	m(j, "mAutoComplete" + " " + _pjpaPage)
    }
    else {
    	m(j, "mAutoComplete")
    }
}

function Cb(j,cs,Rb, i__moreLocalities){
    while(j.childNodes.length>0)j.removeChild(j.childNodes[0]);
    for(var c=0;c<cs.length;++c){
        var v=document.createElement("DIV");
        m(v,"aAutoComplete");
        v.onmousedown=Lb;
        v.onmouseover=Ab;
        v.onmouseout=pc;
        var ra=document.createElement("SPAN");
        m(ra,"lAutoComplete");
        var Ca=document.createElement("SPAN");
        Ca.innerHTML=cs[c];
        var ga=document.createElement("SPAN");
        m(ga,"dAutoComplete");
        m(Ca,"cAutoComplete");
        v.displaySpan=ga;
        if(!getParam(currentname).Ha)ga.innerHTML=Rb[c];
        ra.appendChild(Ca);
        ra.appendChild(ga);
        v.appendChild(ra);
        j.appendChild(v)
    }
        
    //GUBOI si on a plus de 11 resultats
    if (i__moreLocalities)
    {
        var v=document.createElement("DIV");
        m(v,"aAutoComplete");
        v.onmousedown=function()
        {
            //__doPostBack("Button_DummyModalOu", getParam(currentname).g);              
        }
        v.onmouseover=Ab;
        v.onmouseout=pc;
        var ra=document.createElement("SPAN");
        m(ra,"lAutoComplete");
        var Ca=document.createElement("SPAN");
        Ca.innerHTML="...";
        var ga=document.createElement("SPAN");
        m(ga,"dAutoComplete");
        m(Ca,"cAutoComplete");
        v.displaySpan=ga;
        if(!getParam(currentname).Ha)ga.innerHTML="";
        ra.appendChild(Ca);
        ra.appendChild(ga);
        v.appendChild(ra);
        j.appendChild(v);    
    } 
}

function E(z,rb){
    if(getParam(currentname).Ua){
        var J=document.styleSheets[0];
        if(J.addRule){
            J.addRule(z,rb)
        }else if(J.insertRule){
            J.insertRule(z+" { "+rb+" }",J.cssRules.length)
        }
    }
}

function vb(){
    var C=null;
    try{
        C=new ActiveXObject("Msxml2.XMLHTTP")
    }catch(e){
        try{
            C=new ActiveXObject("Microsoft.XMLHTTP")
        }catch(sc){
            C=null
        }
    }
    if(!C&&typeof XMLHttpRequest!="undefined"){
        C=new XMLHttpRequest()
    }
    return C
}

function qc(ac){
    if(getParam(currentname).l&&getParam(currentname).l.readyState!=0){
        getParam(currentname).l.abort();
    }
    getParam(currentname).l=vb();
    if(getParam(currentname).l){
        getParam(currentname).l.open("GET",getParam(currentname).Aa+"&js=true&qu="+ac,true);
        getParam(currentname).l.onreadystatechange=function(){
            if(getParam(currentname).l.readyState==4&&getParam(currentname).l.responseText){
                if(getParam(currentname).l.responseText.charAt(0)=="<"){
                    getParam(currentname).V--;
                }else{
                    eval(getParam(currentname).l.responseText);
                }
            }
        }
        getParam(currentname).l.send(null);
    }
}

function R(ib){
    if (ib.indexOf("Plus de local") == -1){
        getParam(currentname).TextBox.value=ib;
        getParam(currentname).ca=ib;
    }
}

function Zb(h){
    if(!h&&window.event)h=window.event;
    if(!getParam(currentname).Ea&&(getParam(currentname).X&&h.propertyName=="value")){
        if(fc()){
            eb();
            setTimeout("ba("+getParam(currentname).ma+", "+getParam(currentname).oa+");",30);
        }
    }
}

function fc(){
    var ic=getParam(currentname).TextBox.value;
    var La=ja(getParam(currentname).TextBox);
    var Ja=qa(getParam(currentname).TextBox);
    return La==getParam(currentname).ma&&(Ja==getParam(currentname).oa&&ic==getParam(currentname).hb);
}

function eb(){
    getParam(currentname).hb=getParam(currentname).TextBox.value;
    getParam(currentname).ma=ja(getParam(currentname).TextBox);
    getParam(currentname).oa=qa(getParam(currentname).TextBox);
}

ba=function(La,Ja){
    if(La==getParam(currentname).ma&&Ja==getParam(currentname).oa){
        bc();
     }
}

function bc(){
    ub();
    xa(getParam(currentname).k+1);
}




/*---- AC_RunActiveContent.js ----*/

//v1.0
//Copyright 2006 Adobe Systems, Inc. All rights reserved.
function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '<object ';
  for (var i in objAttrs) {
    str += i + '="' + objAttrs[i] + '" ';
  }
  str += '>';
  for (var i in params)
    str += '<param name="' + i + '" value="' + params[i] + '" /> ';
  str += '<embed ';
  for (var i in embedAttrs)
    str += i + '="' + embedAttrs[i] + '" ';
  str += ' ></embed></object>';

  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
    
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
      case "style":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "tabindex":      
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        //if (currArg == "id") ret.objAttrs[args[i]] = "object_" + ret.objAttrs[args[i]];
        break;
      case "id":      
        //avoid multiple elements with the same id
        ret.embedAttrs[args[i]] = args[i+1]  
        while (document.getElementById(ret.embedAttrs[args[i]]) || document.getElementById("object_" + ret.embedAttrs[args[i]]))
            ret.embedAttrs[args[i]] += "x";
        ret.objAttrs[args[i]] =     "object_" + ret.embedAttrs[args[i]];
        break;      
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}


function AC_GetGenerateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '<object ';
  for (var i in objAttrs) {
    str += i + '="' + objAttrs[i] + '" ';
  }
  str += '>';
  for (var i in params)
    str += '<param name="' + i + '" value="' + params[i] + '" /> ';
  str += '<embed ';
  for (var i in embedAttrs)
    str += i + '="' + embedAttrs[i] + '" ';
  str += ' ></embed></object>';

  return str;
}

function AC_FL_GetContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  return AC_GetGenerateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}


/*---- BrowserDetect.js ----*/

var BrowserDetect = {
    init: function() {
        this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
        this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
        this.OS = this.searchString(this.dataOS) || "an unknown OS";
    },
    searchString: function(data) {
        for (var i = 0; i < data.length; i++) {
            var dataString = data[i].string;
            var dataProp = data[i].prop;
            this.versionSearchString = data[i].versionSearch || data[i].identity;
            if (dataString) {
                if (dataString.indexOf(data[i].subString) != -1)
                    return data[i].identity;
            }
            else if (dataProp)
                return data[i].identity;
        }
    },
    searchVersion: function(dataString) {
        var index = dataString.indexOf(this.versionSearchString);
        if (index == -1) return;
        return parseFloat(dataString.substring(index + this.versionSearchString.length + 1));
    },
    dataBrowser: [
		{
		    string: navigator.userAgent,
		    subString: "Chrome",
		    identity: "Chrome"
		},
		{ string: navigator.userAgent,
		    subString: "OmniWeb",
		    versionSearch: "OmniWeb/",
		    identity: "OmniWeb"
		},
		{
		    string: navigator.vendor,
		    subString: "Apple",
		    identity: "Safari",
		    versionSearch: "Version"
		},
		{
		    prop: window.opera,
		    identity: "Opera"
		},
		{
		    string: navigator.vendor,
		    subString: "iCab",
		    identity: "iCab"
		},
		{
		    string: navigator.vendor,
		    subString: "KDE",
		    identity: "Konqueror"
		},
		{
		    string: navigator.userAgent,
		    subString: "Firefox",
		    identity: "Firefox"
		},
		{
		    string: navigator.vendor,
		    subString: "Camino",
		    identity: "Camino"
		},
		{		// for newer Netscapes (6+)
		    string: navigator.userAgent,
		    subString: "Netscape",
		    identity: "Netscape"
		},
		{
		    string: navigator.userAgent,
		    subString: "MSIE",
		    identity: "Explorer",
		    versionSearch: "MSIE"
		},
		{
		    string: navigator.userAgent,
		    subString: "Gecko",
		    identity: "Mozilla",
		    versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
		    string: navigator.userAgent,
		    subString: "Mozilla",
		    identity: "Netscape",
		    versionSearch: "Mozilla"
		}
	],
    dataOS: [
		{
		    string: navigator.platform,
		    subString: "Win",
		    identity: "Windows"
		},
		{
		    string: navigator.platform,
		    subString: "Mac",
		    identity: "Mac"
		},
		{
		    string: navigator.userAgent,
		    subString: "iPhone",
		    identity: "iPhone/iPod"
		},
		{
		    string: navigator.platform,
		    subString: "Linux",
		    identity: "Linux"
		}
	]

};
BrowserDetect.init();

/*---- FlashDebug.js ----*/

function EI_constructor() {
	/*if (document.getElementById("debugFrame")) return;
	var debugFrame = document.createElement('div');
	debugFrame.setAttribute('id', 'debugFrame');
	debugFrame.style.position = "absolute";
	debugFrame.style.bottom = "0px";
	debugFrame.style.left = "50%";
	debugFrame.style.marginLeft = "-400px";
	debugFrame.style.height = "130px";
	debugFrame.style.width = "800px";
	debugFrame.style.backgroundColor="#aaa";
	debugFrame.style.overflow = "auto";
	debugFrame.style.border = "1px dotted black";
	debugFrame.style.fontFamily = "Courier";
	debugFrame.style.fontSize = 10;
	debugFrame.innerHTML = "Debug Started";
	document.body.appendChild(debugFrame);
	*/
}

function EI_trace(texte) {
	/*var debugFrame = document.getElementById("debugFrame");
	debugFrame.innerHTML = texte + "<hr>" + debugFrame.innerHTML;	*/
}	

/*---- flashobject.js ----*/

/**
 * FlashObject v1.3c: Flash detection and embed - http://blog.deconcept.com/flashobject/
 *
 * FlashObject is (c) 2006 Geoff Stearns and is released under the MIT License:
 * http://www.opensource.org/licenses/mit-license.php
 *
 */
if(typeof com=="undefined"){var com=new Object();}
if(typeof com.deconcept=="undefined"){com.deconcept=new Object();}
if(typeof com.deconcept.util=="undefined"){com.deconcept.util=new Object();}
if(typeof com.deconcept.FlashObjectUtil=="undefined"){com.deconcept.FlashObjectUtil=new Object();}
com.deconcept.FlashObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a,_b){
if(!document.createElement||!document.getElementById){return;}
this.DETECT_KEY=_b?_b:"detectflash";
this.skipDetect=com.deconcept.util.getRequestParameter(this.DETECT_KEY);
this.params=new Object();
this.variables=new Object();
this.attributes=new Array();
this.useExpressInstall=_7;
if(_1){this.setAttribute("swf",_1);}
if(id){this.setAttribute("id",id);}
if(w){this.setAttribute("width",w);}
if(h){this.setAttribute("height",h);}
if(_5){this.setAttribute("version",new com.deconcept.PlayerVersion(_5.toString().split(".")));}
this.installedVer=com.deconcept.FlashObjectUtil.getPlayerVersion(this.getAttribute("version"),_7);
if(c){this.addParam("bgcolor",c);}
var q=_8?_8:"high";
this.addParam("quality",q);
var _d=(_9)?_9:window.location;
this.setAttribute("xiRedirectUrl",_d);
this.setAttribute("redirectUrl","");
if(_a){this.setAttribute("redirectUrl",_a);}
};
com.deconcept.FlashObject.prototype={setAttribute:function(_e,_f){
this.attributes[_e]=_f;
},getAttribute:function(_10){
return this.attributes[_10];
},addParam:function(_11,_12){
this.params[_11]=_12;
},getParams:function(){
return this.params;
},addVariable:function(_13,_14){
this.variables[_13]=_14;
},getVariable:function(_15){
return this.variables[_15];
},getVariables:function(){
return this.variables;
},createParamTag:function(n,v){
var p=document.createElement("param");
p.setAttribute("name",n);
p.setAttribute("value",v);
return p;
},getVariablePairs:function(){
var _19=new Array();
var key;
var _1b=this.getVariables();
for(key in _1b){_19.push(key+"="+_1b[key]);}
return _19;
},getFlashHTML:function(){
var _1c="";
if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){
if(this.getAttribute("doExpressInstall")){
this.addVariable("MMplayerType","PlugIn");
}
_1c="<embed type=\"application/x-shockwave-flash\" src=\""+this.getAttribute("swf")+"\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\"";
_1c+=" id=\""+this.getAttribute("id")+"\" name=\""+this.getAttribute("id")+"\" ";
var _1d=this.getParams();
for(var key in _1d){_1c+=[key]+"=\""+_1d[key]+"\" ";}
var _1f=this.getVariablePairs().join("&");
if(_1f.length>0){_1c+="flashvars=\""+_1f+"\"";}
_1c+="/>";
}else{
if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");}
_1c="<object id=\""+this.getAttribute("id")+"\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\">";
_1c+="<param name=\"movie\" value=\""+this.getAttribute("swf")+"\" />";
var _20=this.getParams();
for(var key in _20){_1c+="<param name=\""+key+"\" value=\""+_20[key]+"\" />";}
var _22=this.getVariablePairs().join("&");
if(_22.length>0){_1c+="<param name=\"flashvars\" value=\""+_22+"\" />";
}_1c+="</object>";}
return _1c;
},write:function(_23){
if(this.useExpressInstall){
var _24=new com.deconcept.PlayerVersion([6,0,65]);
if(this.installedVer.versionIsValid(_24)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){
this.setAttribute("doExpressInstall",true);
this.addVariable("MMredirectURL",encodeURIComponent(this.getAttribute("xiRedirectUrl")));
document.title=document.title.slice(0,47)+" - Flash Player Installation";
this.addVariable("MMdoctitle",document.title);}
}else{this.setAttribute("doExpressInstall",false);}
if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){
var n=(typeof _23=="string")?document.getElementById(_23):_23;
n.innerHTML=this.getFlashHTML();
}else{if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}}};
com.deconcept.FlashObjectUtil.getPlayerVersion=function(_26,_27){
var _28=new com.deconcept.PlayerVersion(0,0,0);
if(navigator.plugins&&navigator.mimeTypes.length){
var x=navigator.plugins["Shockwave Flash"];
if(x&&x.description){_28=new com.deconcept.PlayerVersion(x.description.replace(/([a-z]|[A-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}
}else{
try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
for(var i=3;axo!=null;i++){
axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+i);
_28=new com.deconcept.PlayerVersion([i,0,0]);}}
catch(e){}
if(_26&&_28.major>_26.major){return _28;}
if(!_26||((_26.minor!=0||_26.rev!=0)&&_28.major==_26.major)||_28.major!=6||_27){
try{
_28=new com.deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));
}catch(e){}}}
return _28;
};
com.deconcept.PlayerVersion=function(_2c){
this.major=parseInt(_2c[0])||0;
this.minor=parseInt(_2c[1])||0;
this.rev=parseInt(_2c[2])||0;
};
com.deconcept.PlayerVersion.prototype.versionIsValid=function(fv){
if(this.major<fv.major){return false;}
if(this.major>fv.major){return true;}
if(this.minor<fv.minor){return false;}
if(this.minor>fv.minor){return true;}
if(this.rev<fv.rev){return false;}
return true;
};
com.deconcept.util={getRequestParameter:function(_2e){
var q=document.location.search||document.location.href.hash;
if(q){var _30=q.indexOf(_2e+"=");
var _31=(q.indexOf("&",_30)>-1)?q.indexOf("&",_30):q.length;
if(q.length>1&&_30>-1){
return q.substring(q.indexOf("=",_30)+1,_31);}}return "";
},removeChildren:function(n){
while(n.hasChildNodes()){
n.removeChild(n.firstChild);}}};
if(Array.prototype.push==null){
Array.prototype.push=function(_33){
this[this.length]=_33;
return this.length;};}
var getQueryParamValue=com.deconcept.util.getRequestParameter;
var FlashObject=com.deconcept.FlashObject;

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 EffaceCookie(nom)
{
    date=new Date;
    date.setFullYear(date.getFullYear()-1);
    EcrireCookie(nom,null,date);
}

function selectPOI(id) {    
    EcrireCookie("PoiParams", LireCookie("PoiParams")+"/"+id);
}

function unselectPOI(id) {
    liste = LireCookie("PoiParams").replace(id, "").replace("//", "/");
    EcrireCookie("PoiParams", liste);
}

function resetPOI() {
    EffaceCookie("PoiParams");
    EcrireCookie("PoiParams", "&PoiParams=");
}

/*---- InitPageLoad.js ----*/

    function SubmitForm(){
        
        if( g__focus != undefined && (g__focus == "identification" || g__focus == "trouvez" || g__focus == "recherche_metro" )){
            if(g__Bouton != undefined ){
			    document.getElementById(g__Bouton).click();
            }
        } else if (g__focus != undefined){
            getParam(currentname).TextBox.focus();
            g__focus = "trouvez";
            Gb('');
        }
        return false;
    }
    
    function SetFocus(i__Focus, i__Bouton){
        g__focus = i__Focus;
        g__Bouton = i__Bouton;
    }
    

	
var ie = (document.all)? true:false;
var dom = (document.getElementById)? true:false;
var safari=navigator.userAgent.toLowerCase().indexOf('safari')>=0;
var typePage = 'MasterPage';
var PageLibelle ='';
var PageZapette=false;
var g__focus;
var g__Bouton;

window.onresize = function()
{        
	WindowOnResize();
	if(PageZapette)
    {
		Mb();
		PlaceNavRight();
		PlaceCompteur();
    }
}



