var currentSize = 10;
var minSize = 8;
var maxSize = 18;
function changeTaille(taille) {
	currentSize += taille;
	currentSize = (currentSize<minSize) ? minSize : ((currentSize>maxSize) ? maxSize : currentSize);

	if (document.getElementById('textarticle'))
		document.getElementById('textarticle').style.fontSize = (currentSize/10)+'em';
	if (document.getElementById('article_intro'))
		document.getElementById('article_intro').style.fontSize = (currentSize/10)+'em';
	if (document.getElementById('article_texte'))
		document.getElementById('article_texte').style.fontSize = (currentSize/10)+'em';
}
function addsm(which) {
val = window.document.formulaire.hometext.value;
window.document.formulaire.hometext.value = val + which;
}

function addsm2(which) {
val = window.opener.document.formulaire.hometext.value;
window.opener.document.formulaire.hometext.value = val + which;
}

function navigation()
{
        if(document.formulaire.topic.value!="Vide")
	{
		document.location=document.formulaire.topic.value;
	}
}

function checkOk(str)
{
	if(confirm('!! <?php echo $lang_caution; ?> Attention !!\n\n<?php echo "Cette manip est irréversible ! Es-tu sûr de vouloir faire supprimer ça ?";?> ?'))
		document.location=str;
}




function insereTag(Tag, fTag)
{
ajtBBCode(Tag, fTag, "explain");
}

function insereTxt(txt)
{
ajtTexte(txt, "explain");
}

function ajtTexte(txt,id)
{

 var obj = document.getElementById(id), sel;
  obj.focus();
  if(document.selection && document.selection.createRange){
  sel = document.selection.createRange();
  if (sel.parentElement()==obj)//si sel est dans obj
	sel.text = sel.text+txt;
  }

 else if(String(typeof obj.selectionStart)!="undefined"){
 sel = obj.selectionStart;
 obj.value = (obj.value).substring(0,sel) +
									  txt +
(obj.value).substring(sel,obj.value.length);
 }
 else obj.value+=txt;
  obj.focus();
}

function ajtBBCode(Tag, fTag, id)
{
 var obj = document.getElementById(id), sel;
  obj.focus();
  if (document.selection && document.selection.createRange){//if ie
    sel = document.selection.createRange();
    if (sel.parentElement()==obj)//si sel est dans obj
	sel.text = Tag+sel.text+fTag;
  }
  else if(String(typeof obj.selectionStart)!="undefined"){

    var longueur= parseInt(obj.textLength);
    var selStart = obj.selectionStart;
    var selEnd = obj.selectionEnd;
    if (selEnd == 2 || selEnd == 1)selEnd = longueur;

    obj.value = (obj.value).substring(0,selStart) +
										  	  Tag +
		   (obj.value).substring(selStart,selEnd) +
		   								     fTag +
			(obj.value).substring(selEnd,longueur);
		}
	else obj.value+=Tag+fTag;
obj.focus();
}
var startSize = "";
  function textSize(valeur) {
    if (startSize=="") startSize = parseInt(document.getElementById('textarticle').style.fontSize);
    var size = parseInt(document.getElementById('textarticle').style.fontSize.substr(0, 2));
    if (valeur<0 && size > startSize)
      document.getElementById('textarticle').style.fontSize = parseInt(document.getElementById('textarticle').style.fontSize.substr(0, 2)) + valeur + "px";
    else if (valeur>0 && size <= 24)
      document.getElementById('textarticle').style.fontSize = parseInt(document.getElementById('textarticle').style.fontSize.substr(0, 2)) + valeur + "px";
 }
 
function affImage(contenu, tid) {
  if (document.all) {
    with (document.all["commentaire"+tid]) {
      innerHTML = contenu;
      style.visibility = "visible";
      }
    }
  else if (document.getElementById) {
    with (document.getElementById("commentaire"+tid)) {
      innerHTML = contenu;
      style.visibility = "visible";
      }
  }
}

function cachImage(img) {
  if (document.all) {
    document.all[img].style.visibility="hidden";
    }
  else if (document.getElementById)
    {
    document.getElementById(img).style.visibility = "hidden";
    }
}

var msg="patientez...";
function request(url,cadre,msg) {
	var XHR = null;
	if(window.XMLHttpRequest) // Firefox
		XHR = new XMLHttpRequest();
	else if(window.ActiveXObject) // Internet Explorer
		XHR = new ActiveXObject("Microsoft.XMLHTTP");
	else { // XMLHttpRequest non supporté par le navigateur
		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
		return;
	}
		// envoie de la requête, methode GET et de l'url
	XHR.open("GET",url, true);
		// on guette les changements d'état de l'objet
	XHR.onreadystatechange = function attente() {
		// l'état est à 4, requête reçu !
	if(XHR.readyState == 4)     {
		// ecriture de la réponse
		document.getElementById(cadre).innerHTML = XHR.responseText;
   	}else{
   		document.getElementById(cadre).innerHTML = msg;
   	}
	}
	XHR.send(null);		// le travail est terminé
	return;
}

function preload_image(_image) {
	var image = new Image;
	image.src = _image;
}
function show_reg(region) {
	var ShowItem = document.getElementById("carte_reg");
	var LinkItem = document.getElementById("zone_" + region);
	ShowItem.style.backgroundImage = 'url(design/ideevins/images/cartes/regions-viticoles/' + region + '.gif)';
	LinkItem.style.textDecoration = "underline";
	return true;
}
function hide_reg(region) {
	var ShowItem = document.getElementById("carte_reg");
	var LinkItem = document.getElementById("zone_" + region);
	ShowItem.style.backgroundImage = 'url(design/ideevins/images/cartes/regions-viticoles/none.gif)';
	LinkItem.style.textDecoration = "none";
	return true;
}

function aff(contenu, affichage) {
  if (document.all) {
    with (document.all[affichage]) {
      innerHTML = contenu;
      style.visibility = "visible";
      }
    }
  else if (document.getElementById) {
    with (document.getElementById(affichage)) {
      innerHTML = contenu;
      style.visibility = "visible";
      }
    }
}

function cach(affichage) {
  if (document.all) {
    document.all[affichage].style.visibility="hidden";
    }
  else if (document.getElementById)
    {
    document.getElementById(affichage).style.visibility = "hidden";
    }
}

function toggle(id){
	if(document.getElementById(id).style.display=="none")
	document.getElementById(id).style.display="";
	else
	document.getElementById(id).style.display="none";
}
function togglez(nn){
	if(document.getElementById(nn).style.display=="none")
	document.getElementById(nn).style.display="";
	else
	document.getElementById(nn).style.display="none";
}
function toggleswitch(id1, id2){
	if(document.getElementById(id1).style.display=="none")
	document.getElementById(id1).style.display="";
	else
	document.getElementById(id1).style.display="none";
	
	if(document.getElementById(id2).style.display=="none")
	document.getElementById(id2).style.display="";
	else
	document.getElementById(id2).style.display="none";
}

function add(id){
	var appellation = document.getElementById('appellationfiltre'+id).cloneNode(true);
	document.getElementById('accord'+id).appendChild(appellation);
}
function addcep(id){
	var cepage = document.getElementById('cepagefiltre'+id).cloneNode(true);
	document.getElementById('accordcep'+id).appendChild(cepage);
}

var notWhitespace = /\S/;
var TEXT_NODE;
try {
   TEXT_NODE = Node.TEXT_NODE;
} catch(e) {
   TEXT_NODE = 3;
}

var ELEMENT_NODE;
try {
  ELEMENT_NODE = Node.ELEMENT_NODE;
} catch(e) {
   ELEMENT_NODE = 1;
}

function cleanWhitespace(node) {
  for (var x = 0; x < node.childNodes.length; x++) {
    var childNode = node.childNodes[x];
    if ((childNode.nodeType == TEXT_NODE)&&(!notWhitespace.test(childNode.nodeValue))) {
      node.removeChild(node.childNodes[x]);
      x--;
    }
    if (childNode.nodeType == ELEMENT_NODE) {
      cleanWhitespace(childNode);
    }
  }
}
// Node cleaner
			function goz(c){
				if(!c.data.replace(/\s/g,''))
					c.parentNode.removeChild(c);
			}

			function clean(d){
				var bal=d.getElementsByTagName('*');

				for(i=0;i<bal.length;i++){
					a=bal[i].previousSibling;
					if(a && a.nodeType==3)
						goz(a);
					b=bal[i].nextSibling;
					if(b && b.nodeType==3)
						goz(b);
				}
				return d;
			}
			
function getzXhr(){
                var xhr = null;
				if(window.XMLHttpRequest) // Firefox et autres
				   xhr = new XMLHttpRequest();
				else if(window.ActiveXObject){ // Internet Explorer
				   try {
			                xhr = new ActiveXObject("Msxml2.XMLHTTP");
			            } catch (e) {
			                xhr = new ActiveXObject("Microsoft.XMLHTTP");
			            }
				}
				else { // XMLHttpRequest non supporté par le navigateur
				   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
				   xhr = false;
				}
                return xhr;
}
			
function gotopost(selectorig, selectgo, pagego){
				var xhr = getzXhr();
				// On défini ce qu'on va faire quand on aura la réponse
				xhr.onreadystatechange = function(){
					// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
					if(xhr.readyState == 4 && xhr.status == 200){
						leselect = xhr.responseText;
						// On se sert de innerHTML pour rajouter les options au select
						document.getElementById(selectgo).innerHTML = leselect;
					}
				}

				// Ici on va voir comment faire du post
				xhr.open("POST",pagego,true);
				// ne pas oublier ça pour le post
				xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
				// ne pas oublier de poster les arguments
				// ici, l'id 
				sel = document.getElementById(selectorig);
				idvar = sel.options[sel.selectedIndex].value;
				xhr.send("postvar="+idvar);				
}
      var http_request = false;
   function makeRequest(url, parameters) {
   
      http_request = false;
      if (window.XMLHttpRequest) { // Mozilla, Safari,...
         http_request = new XMLHttpRequest();
         if (http_request.overrideMimeType) {
         	// set type accordingly to anticipated content type
            //http_request.overrideMimeType('text/xml');
            http_request.overrideMimeType('text/html');
         }
      } else if (window.ActiveXObject) { // IE
         try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }
      if (!http_request) {
         alert('Cannot create XMLHTTP instance');
         return false;
      }
      http_request.onreadystatechange = alertContents;
      http_request.open('GET', url + parameters, true);
      http_request.send(null);
   }

   function alertContents() {
      if (http_request.readyState == 4) {
         if (http_request.status == 200) {
            //alert(http_request.responseText);
            result = http_request.responseText;
            document.getElementById('xmlhttp').innerHTML = result;
         } else {
            alert('There was a problem with the request.');
         }
      }else{
   		document.getElementById('xmlhttp').innerHTML = "<img src=\'/images/loading.gif\'>";
   	 }
   }
	
   function get(obj, url) {
      var getstr = "&";
      cleanWhitespace(obj);
      for (i=0; i<obj.childNodes.length; i++) {
		if (obj.childNodes[i].tagName != "tr" && obj.childNodes[i].tagName != "td" && obj.childNodes[i].tagName != "table") {
         if (obj.childNodes[i].tagName == "INPUT") {
            if (obj.childNodes[i].type == "text") {
               getstr += obj.childNodes[i].name + "=" + encodeURIComponent(obj.childNodes[i].value) + "&";
            }
            if (obj.childNodes[i].type == "hidden") {
               getstr += obj.childNodes[i].name + "=" + encodeURIComponent(obj.childNodes[i].value) + "&";
            }
            if (obj.childNodes[i].type == "checkbox") {
               if (obj.childNodes[i].checked) {
                  getstr += obj.childNodes[i].name + "=" + encodeURIComponent(obj.childNodes[i].value) + "&";
               } else {
                  getstr += obj.childNodes[i].name + "=&";
               }
            }
            if (obj.childNodes[i].type == "radio") {
               if (obj.childNodes[i].checked) {
                  getstr += obj.childNodes[i].name + "=" + encodeURIComponent(obj.childNodes[i].value) + "&";
               }
            }
         }
         if (obj.childNodes[i].tagName == "SELECT") {
            var sel = obj.childNodes[i];
            getstr += sel.name + "=" + encodeURIComponent(sel.options[sel.selectedIndex].value) + "&";
         }
         if (obj.childNodes[i].tagName == "TEXTAREA") {
               getstr += obj.childNodes[i].name + "=" + encodeURIComponent(obj.childNodes[i].value) + "&";
         }
        }
      }
      
      makeRequest(url, getstr);
   }
   
function getValue(id){
   return document.getElementById(id).value;
}

function getSelectedRadioValue (radiobutton){
 var returnValue = "";
 if (radiobutton.length == 1){
  returnValue = radiobutton.value;
 } else {
  for (i=0;i<radiobutton.length;i++){
   if (radiobutton[i].checked==true) {
    returnValue=radiobutton[i].value;
   }
  }
 }
 return returnValue;
}

var ty;
function afficheTy(value){
	if(value=="0"){ return ty="0";}
	else if(value=="1"){ return ty="1";}
}

function AjoutFormulaire(nbre){
  // le champ "frères et soeurs" est-il un entier entre 1 et 9?
  if(!/^\d$/.test(nbre)){alert('non');nbre=0};

  // on supprime tous les champs éventuels déjà créés dans le div
  var plus=document.getElementById('opt');
  for(i=plus.childNodes.length-1;i>-1;i--){
     plus.removeChild(plus.childNodes[i]) ;
  }
  // pour chaque frère et soeur, on crée un champ text avec attribut "name"
  for(i=0;i<nbre;i++){
    var fr=document.createElement('input');
    var ret=document.createElement('br');
    fr.value='frère ou soeur n°'+i;
    fr.type='text';
    fr.name='fr'+i;
    plus.appendChild(ret);
    plus.appendChild(fr);
  }
}
function appendKeyword(kw)
{
   var c = 0;
   var index = document.getElementById("kw").selectedIndex;
   var myText = document.getElementById("kw").options[index].value;
   if (!document.getElementById("cat1").value) {c=1;}
   if (!document.getElementById("cat2").value) {c=2;}
   if (!document.getElementById("cat3").value) {c=3;}
   if (!document.getElementById("cat4").value) {c=4;}
   switch (c)
   {
   case 1 :
    document.getElementById("cat1").value=myText;
     break;
   case 2 :
    document.getElementById("cat2").value=myText;
     break;
   case 3 :
   document.getElementById("cat3").value=myText;
   break;
   case 4 :
   document.getElementById("cat4").value=myText;
   break;
   default :
   alert("Vous avez atteind le maximum");
   break;
   }
}
/*********************************************************/
/***** Ajouter le portail aux favoris (Firefox / IE) *****/
/*********************************************************/
function favori(titre, lien)
{	
	if ( navigator.appName.substring(0,9) == "Microsoft" )
	{
	   window.external.AddFavorite(lien,titre);
	}
	else
	{
	   window.sidebar.addPanel(titre,lien,"");
	}
}

var cible = new Date('April 29, 2009 22:00:00');
var time = parseInt(cible.getTime() / 1000, 10);
function decompte()
{
	var aujourdhui = new Date();
	time_tmp = parseInt(aujourdhui.getTime() / 1000, 10);
	restant = time - time_tmp;
	
	jour = parseInt((restant / (60 * 60 * 24)), 10);
	if(jour < 10)jour="0" + jour;
	heure = parseInt((restant / (60 * 60) - jour * 24), 10);
	if(heure < 10)heure="0" + heure;
	minute = parseInt((restant / 60 - jour * 24 * 60 - heure * 60), 10);
	if(minute < 10)minute="0" + minute;
	seconde = parseInt((restant - jour * 24 * 60 * 60 - heure * 60 * 60 - minute * 60), 10);
	if(seconde < 10)seconde="0" + seconde;
	//document.getElementById('jours').innerHTML = jour;
	document.getElementById('heures').innerHTML  = heure;
	document.getElementById('minutes').innerHTML  = minute;
	document.getElementById('secondes').innerHTML = seconde;
	
	if (time_tmp < time)
		setTimeout('decompte()', 1000);
	else
	{
		// Temps fini, on fait ce qu'on veux
		//document.getElementById('jours').innerHTML = 0;
		document.getElementById('heures').innerHTML  = 0;
		document.getElementById('minutes').innerHTML  = 0;
		document.getElementById('secondes').innerHTML = 0;
	}
}

function Check_all(container_id,state)
 {
  var checkboxes = document.getElementById(container_id).getElementsByTagName('input');
  for (var i=0;i<checkboxes.length;i++)
   {
    if(checkboxes[i].type == 'checkbox')
     {
      checkboxes[i].checked = state;
     }
   }
  return true;
 }
