function openScrollWindow(url,w,h) {
aWindow=window.open(url,"thewindow", "toolbar=no,width=" + w + ",height=" + h + ",status=no,scrollbars=yes,resize=no,menubar=no");
aWindow.focus();
}

var getElementsByClassName = function (className, tag, elm){
	if (document.getElementsByClassName) {
		getElementsByClassName = function getElementsByClassName(className, tag, elm){
			var testClass = new RegExp("(^|\\s)" + className + "(\\s|$)");
			var tag = tag || "*";
			var elm = elm || document;
			var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
			var returnElements = [];
			var current;
			var length = elements.length;
			for(var i=0; i<length; i++){
				current = elements[i];
				if(testClass.test(current.className)){
					returnElements.push(current);
				}
			}
			return returnElements;
		};
		
	}
	else if (document.evaluate) {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = "",
				xhtmlNamespace = "http://www.w3.org/1999/xhtml",
				namespaceResolver = (document.documentElement.namespaceURI === xhtmlNamespace)? xhtmlNamespace : null,
				returnElements = [],
				elements,
				node;
			for(var j=0, jl=classes.length; j<jl; j+=1){
				classesToCheck += "[contains(concat(' ', @class, ' '), ' " + classes[j] + " ')]";
			}
			try	{
				elements = document.evaluate(".//" + tag + classesToCheck, elm, namespaceResolver, 0, null);
			}
			catch (e) {
				elements = document.evaluate(".//" + tag + classesToCheck, elm, null, 0, null);
			}
			while ((node = elements.iterateNext())) {
				returnElements.push(node);
			}
			return returnElements;
		};
	}
	else {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = [],
				elements = (tag === "*" && elm.all)? elm.all : elm.getElementsByTagName(tag),
				current,
				returnElements = [],
				match;
			for(var k=0, kl=classes.length; k<kl; k+=1){
				classesToCheck.push(new RegExp("(^|\\s)" + classes[k] + "(\\s|$)"));
			}
			for(var l=0, ll=elements.length; l<ll; l+=1){
				current = elements[l];
				match = false;
				for(var m=0, ml=classesToCheck.length; m<ml; m+=1){
					match = classesToCheck[m].test(current.className);
					if (!match) {
						break;
					}
				}
				if (match) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	}
	return getElementsByClassName(className, tag, elm);
};

/*SPECIFIQUES*/
// affichage nombre articles nav gauche
function nb_prod(a,b){ 
	document.getElementById(a).style.display=b;
}

// rollover boutons
function bouton_over(a,b){
	document.getElementById(a).src=b;
}
// recherche perso
function cocheTous(nameCheckBoxes, valeur)
{
var liste = document.forms["form1"].elements[nameCheckBoxes];

for (var i = 0; i < liste.length; i++) {
liste[i].checked = valeur;
}
}

/*MAJ*/
////////////////
// Layer utilities.
////////////////
//A virer en refaisant l'affichage du panier !!!!
function layerWrite(name,txt) {
	document.getElementById(name).innerHTML = txt;
}


////////////////
// Gestion de la résolution
////////////////
function getResolution() {
  var resolution = 1;  
  if (screen.width==800) resolution = 1;
  if (screen.width==1024) resolution = 2;
  if (screen.width>=1280) resolution = 2;
  return resolution;
}


////////////////
// Gestion des Cookies
////////////////

// test si les cookies sont acceptés : true or false 
//document.write(navigator.cookieEnabled);
//
function isCookieExiste(nom) {
  if (document.cookie.length>0)
    return document.cookie.indexOf(nom+'=');
  return -1  
}

function getcookie(nom)
{
  var recherche=nom+'=';                    // pour recherche nom dans la liste
  if (document.cookie.length>0)             // si il existe des cookies
  {   	
    position=document.cookie.indexOf(recherche);   // donne la position du nom
    if (position!=-1)                              // si une position existe
      {
        position=position+recherche.length;        // on passe après nom=
        fin=document.cookie.indexOf(';',position); // on cherche la fin (";")
        if (fin==-1)                               // si le ";" n'existe pas
        {
          fin=document.cookie.length;       // alors le cookie va jusqu'au bout
        }
        return unescape(document.cookie.substring(position,fin));// donne texte
      }
      else {return '';}                     // retourne du 'vide'
  }
  else {return '';}                         // retourne du 'vide'
}

function getcookiekey(nom, key)
{
  var recherche=nom+'['+key+']=';                    // pour recherche nom dans la liste 
  if (document.cookie.length>0)             // si il existe des cookies
  {   	
    position=document.cookie.indexOf(recherche);   // donne la position du nom
    if (position!=-1)                              // si une position existe
      {
        position=position+recherche.length;        // on passe après nom=
        fin=document.cookie.indexOf(';',position); // on cherche la fin (";")
        if (fin==-1)                               // si le ";" n'existe pas
        {
          fin=document.cookie.length;       // alors le cookie va jusqu'au bout
        }
        return unescape(document.cookie.substring(position,fin));// donne texte
      }
      else {return '';}                     // retourne du 'vide'
  }
  else {return '';}                         // retourne du 'vide'
}


function killAllcookie() {

}

function killcookie(nom) {
  document.cookie=nom+'=; expires=-1';
}

function splitmultivalue(listvalue){
  var tab,temp;
  tab = listvalue.split('&'); 
  temp = '';
  
  for (i = 0; i < tab.length; i++) 
  {                        
  	temp = temp + escape(tab[i]); 
  	if (i!=tab.length-1) {
  	  temp = temp + '&';          
  	}	
  }
  return temp;
}

function writecookie(nom,texte,jours)
{
  var datecourante=new Date();              // lit la date
  var expires=new Date();
  expires.setTime(datecourante.getTime()+1000*60*60*24*jours);
  document.cookie=nom+'='+splitmultivalue(texte)+'; expires='+expires.toGMTString();
}
////////////////
// Fonction popup
////////////////
function displaypopupwindow(Titre,TextHtml, w, h) {
	var aWindow;
	aWindow = window.open("about:blank","","toolbar=no,width=" + w + ",height=" + h + ",status=no,scrollbars=no,resize=no,menubar=no");
	aWindow.document.open();
	aWindow.document.write("<html><head><title>" + Titre + "</title></head><body>" + TextHtml + "</body></html>");
	aWindow.document.close();
	aWindow.focus();
}

function openWindow(url,w,h) {
aWindow=window.open(url,"thewindow", "toolbar=no,width=" + w + ",height=" + h + ",status=no,scrollbars=no,resize=no,menubar=no,left=" + (800-w)/2 + ",top=" + (600-h)/2);
aWindow.focus();
}

function openScrollWindow(url,w,h) {
aWindow=window.open(url,"thewindow", "toolbar=no,width=" + w + ",height=" + h + ",status=no,scrollbars=yes,resize=no,menubar=no");
aWindow.focus();
}

////////////////
// Fonction newsletter
////////////////
function clearNewsletter(id) {
   if (document.getElementById(id).value == 'Ihre E-Mail-Adresse') 
  		document.getElementById(id).value = '';	
}

function clearNewsletterNewsmode() {
    if (document.getElementById('email_newsmode').value == 'Ihre E-Mail-Adresse') 
  		document.getElementById('email_newsmode').value = '';
}

//////////////////////////////////////////////////
// Défilement de texte dans la recherhce lucéne //
//////////////////////////////////////////////////

var msg="MESSAGE";
var index=0;
var delay=200;
var boucle;
function defil() {
	var nb_char=msg.length;
	index++;
	if (index>nb_char) index=0;
	document.forms['lucenequery'].elements[0].value=msg.substring(index)+msg;
	//document.getElementById('lucenequery_text').value=msg.substring(index)+msg;
	boucle=setTimeout("defil()",delay);
}

function defiler(txt,tps,defilement) {
	//Cette fonction est appelée pour déclencher le défilement.
	msg=txt + " ";
	delay=tps;
	if(defilement==1)
	{
		defil();
	}
	else
	{
	 clearTimeout(boucle);
	}
}
function HTMLentities(texte) {
	texte = texte.replace(/"/g,'&quot;'); // 34 22
	texte = texte.replace(/&/g,'&amp;'); // 38 26
	texte = texte.replace(/\'/g,'&#39;'); // 39 27
	texte = texte.replace(/</g,'&lt;'); // 60 3C
	texte = texte.replace(/>/g,'&gt;'); // 62 3E
	texte = texte.replace(/\^/g,'&circ;'); // 94 5E
	texte = texte.replace(/Ç/g,'&Ccedil;'); // 199 C7
	texte = texte.replace(/È/g,'&Egrave;'); // 200 C8
	texte = texte.replace(/É/g,'&Eacute;'); // 201 C9
	texte = texte.replace(/Ê/g,'&Ecirc;'); // 202 CA
	texte = texte.replace(/Ë/g,'&Euml;'); // 203 CB
	texte = texte.replace(/Ì/g,'&Igrave;'); // 204 CC
	texte = texte.replace(/Í/g,'&Iacute;'); // 205 CD
	texte = texte.replace(/Î/g,'&Icirc;'); // 206 CE
	texte = texte.replace(/Ï/g,'&Iuml;'); // 207 CF
	texte = texte.replace(/Ð/g,'&ETH;'); // 208 D0
	texte = texte.replace(/Ñ/g,'&Ntilde;'); // 209 D1
	texte = texte.replace(/Ò/g,'&Ograve;'); // 210 D2
	texte = texte.replace(/Ó/g,'&Oacute;'); // 211 D3
	texte = texte.replace(/Ô/g,'&Ocirc;'); // 212 D4
	texte = texte.replace(/Õ/g,'&Otilde;'); // 213 D5
	texte = texte.replace(/Ö/g,'&Ouml;'); // 214 D6
	texte = texte.replace(/×/g,'&times;'); // 215 D7
	texte = texte.replace(/Ø/g,'&Oslash;'); // 216 D8
	texte = texte.replace(/Ù/g,'&Ugrave;'); // 217 D9
	texte = texte.replace(/Ú/g,'&Uacute;'); // 218 DA
	texte = texte.replace(/Û/g,'&Ucirc;'); // 219 DB
	texte = texte.replace(/Ü/g,'&Uuml;'); // 220 DC
	texte = texte.replace(/Ý/g,'&Yacute;'); // 221 DD
	texte = texte.replace(/Þ/g,'&THORN;'); // 222 DE
	texte = texte.replace(/ß/g,'&szlig;'); // 223 DF
	texte = texte.replace(/à/g,'&aacute;'); // 224 E0
	texte = texte.replace(/á/g,'&aacute;'); // 225 E1
	texte = texte.replace(/â/g,'&acirc;'); // 226 E2
	texte = texte.replace(/ã/g,'&atilde;'); // 227 E3
	texte = texte.replace(/ä/g,'&auml;'); // 228 E4
	texte = texte.replace(/å/g,'&aring;'); // 229 E5
	texte = texte.replace(/æ/g,'&aelig;'); // 230 E6
	texte = texte.replace(/ç/g,'&ccedil;'); // 231 E7
	texte = texte.replace(/è/g,'&egrave;'); // 232 E8
	texte = texte.replace(/é/g,'&eacute;'); // 233 E9
	texte = texte.replace(/ê/g,'&ecirc;'); // 234 EA
	texte = texte.replace(/ë/g,'&euml;'); // 235 EB
	texte = texte.replace(/ì/g,'&igrave;'); // 236 EC
	texte = texte.replace(/í/g,'&iacute;'); // 237 ED
	texte = texte.replace(/î/g,'&icirc;'); // 238 EE
	texte = texte.replace(/ï/g,'&iuml;'); // 239 EF
	texte = texte.replace(/ð/g,'&eth;'); // 240 F0
	texte = texte.replace(/ñ/g,'&ntilde;'); // 241 F1
	texte = texte.replace(/ò/g,'&ograve;'); // 242 F2
	texte = texte.replace(/ó/g,'&oacute;'); // 243 F3
	texte = texte.replace(/ô/g,'&ocirc;'); // 244 F4
	texte = texte.replace(/õ/g,'&otilde;'); // 245 F5
	texte = texte.replace(/ö/g,'&ouml;'); // 246 F6
	texte = texte.replace(/÷/g,'&divide;'); // 247 F7
	texte = texte.replace(/ø/g,'&oslash;'); // 248 F8
	texte = texte.replace(/ù/g,'&ugrave;'); // 249 F9
	texte = texte.replace(/ú/g,'&uacute;'); // 250 FA
	texte = texte.replace(/û/g,'&ucirc;'); // 251 FB
	texte = texte.replace(/ü/g,'&uuml;'); // 252 FC
	texte = texte.replace(/ý/g,'&yacute;'); // 253 FD
	texte = texte.replace(/þ/g,'&thorn;'); // 254 FE
	texte = texte.replace(/ÿ/g,'&yuml;'); // 255 FF
	return texte;
}
   function html_entity_decode(str){
      var tarea=document.createElement('textarea');
      tarea.innerHTML = str;
      return tarea.value;
      document.removeChild(tarea);
    }
    
    function dump(arr,level) {
	var dumped_text = "";
	if(!level) level = 0;
	
	//The padding given at the beginning of the line.
	var level_padding = "";
	for(var j=0;j<level+1;j++) level_padding += "    ";
	
	if(typeof(arr) == 'object') { //Array/Hashes/Objects 
		for(var item in arr) {
			var value = arr[item];
			
			if(typeof(value) == 'object') { //If it is an array,
				dumped_text += level_padding + "'" + item + "' ...\n";
				dumped_text += dump(value,level+1);
			} else {
				dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n";
			}
		}
	} else { //Stings/Chars/Numbers etc.
		dumped_text = "===>"+arr+"<===("+typeof(arr)+")";
	}
	return dumped_text;
	}
	
	function getURLvar()
 {
	 var url=location.href;
	 var urlVars=url.split("?");
	 var v=new Array(); 
	 v["name"]=new Array();
	 v["val"]=new Array();
	 if (urlVars.length>0)
	 {
		 var vars=urlVars[1].split("&");
		 for (var i=0; i<vars.length; i++)
		 {
			 v["name"][i]=vars[i].split("=")[0];
			 v["val"][i]=vars[i].split("=")[1];
		 }
	 }
	 return(v);
 }