/************************************
* Affiche la flash news demandée
************************************/
var current_flash_une = 1;
var i_afu = setInterval('affiche_flash_une()', 5000);

function affiche_flash_une(nb){
	try{
	  $('flashUne' + current_flash_une + 'Content').style.display = 'none';
	  $('flashUne' + current_flash_une + 'ContentTab').className = 'onglet';
	
	  if(typeof(nb) != 'undefined'){
	    current_flash_une = nb;
	  }
	  else {
	    if(current_flash_une <= 3)
	      current_flash_une++;
	    else
	      current_flash_une = 1;
	  }
	  
	  $('flashUne' + current_flash_une + 'Content').style.display = 'block';
	  $('flashUne' + current_flash_une + 'ContentTab').className = 'onglet_hover';
	}
	catch(e){}
}

/************************************
* Affiche l'aperçu demandé
************************************/
var current_timeout;
var current_tab_apercu;

function affiche_apercu(elm, nb){
  current_tab_apercu = elm;

  if(typeof(current_timeout) != 'undefined')
    clearTimeout(current_timeout);
  
  change_tab_apercu(elm);
  a_apercu(nb);

  elm.onmouseout = function(){
    current_timeout = setTimeout(cache_apercu, 5000);
  }
}

function cache_apercu(){
  current_tab_apercu.style.backgroundColor = '#FFF';
  a_apercu(0);
}

function a_apercu(nb){
  elms = $$('.apercu');

  for(var i=0 ; i < elms.length ; i++){
    elms[i].style.display = 'none';
  }

  elms[nb].style.display = 'block';
}

function change_tab_apercu(elm){
  li = $$('#infosCours ul li');

  for(var i=0 ; i < li.length ; i++){
    li[i].style.backgroundColor = '#FFF';
  }

  elm.style.backgroundColor = '#F4F4F4';
}

/************************************
* Affiche un contenu demandé
************************************/
function affiche_contenu(lien, id, classe){
  element = $(id);
  elements = $$('.'+classe);

  // On masque tous les contenus
  for(var i=0 ; i < elements.length ; i++){
    elements[i].style.display = 'none';
  }

  // On affiche le contenu demandé
  element.style.display = 'block';

  // Sélection des éléments parents
  li = lien.parentNode;
  ul = li.parentNode;
  onglets = ul.getElementsByTagName('li');

  // On enleve la classe select sur tous les onglets
  for(var i=0 ; i < onglets.length ; i++ ){
    onglets[i].className = '';
  }

  // On mets la classe select sur l'élément en cours
  li.className = 'select';

  return false;
}

/************************************
* Affiche le sous menu demandé
************************************/
function get_current_selected_submenu(element){
	  if(elements = element.getElementsByTagName('ul')){
	    for(var i=0 ; i < elements.length ; i++){
	      if(elements[i].className == 'sousMenu' && elements[i].style.display == 'block'){
	        current_selected_sousmenu = elements[i];
	      }
	    }
	  }
	}

	function set_select_menu(){
	  current_sousmenu.style.display = 'none';
	  current_selected_sousmenu.style.display = 'block';

	  current_sousmenu = current_selected_sousmenu
	}


var current_sousmenu;
var current_selected_sousmenu;
var timeout_sousmenu;

function affiche_sousmenu(that){
  clearTimeout(timeout_sousmenu);
  
  parent_node = that.parentNode;

  that.onmouseout = function(){
    timeout_sousmenu = setTimeout("set_select_menu()", 4000);
  }

  if(typeof(current_selected_sousmenu) == 'undefined'){
    get_current_selected_submenu(parent_node.parentNode);
  }

  if(typeof(current_sousmenu) == 'undefined'){ get_current_submenu(); }

  if(sousMenu = parent_node.getElementsByTagName('ul')[0]){
    current_sousmenu.style.display = 'none'; 
    
    sousMenu.style.display = 'block';

    current_sousmenu = sousMenu;
  }
}

function get_current_submenu(){
  liens = document.getElementById('header_menu').getElementsByTagName('a');

  for(var i=0 ; i<liens.length ; i++){
    if(liens[i].className == 'menuTitre select'){
      current_sousmenu = liens[i].parentNode.getElementsByTagName('ul')[0];
    }
  }

  if(typeof(current_sousmenu) == 'undefined')
    current_sousmenu = liens[1].parentNode.getElementsByTagName('ul')[0];
}

/************************************
* Toggle an element
************************************/
function toggle(elm){
  if(!document.getElementById(elm)) return false;

  elm = document.getElementById(elm);

  if(elm.style.display == 'none')
    elm.style.display = 'block'
  else
    elm.style.display = 'none'
}

/************************************
* Sauvegarde la position de
* l'espace perso
************************************/
function savePosition(x, y) {
//	var refresh;
// TODO => prendre max visibilie => document.getWidth ?
// TODO => voi aussi pour bloquer la sortie ua moment du déplacement
//	var max=document.getElementById('global').offsetWidth;
//	var may=document.getElementById('global').offsetHeight;
//	if (x>max) x=max-200;
//	if (y>may) y=0;
//	if (x<0) { refresh=1; x='0'; }
//        if (y<0) {refresh=1; y='0';}

  pos = x + ',' + y;

  var expDate = new Date()
  expDate.setTime(expDate.getTime() + (365 * 24 * 3600 * 1000));	
 
  document.cookie = "inv_espperso_pos=" + escape(pos) + ";expires=" + expDate.toGMTString()

}

/************************************
* Récupere la position de l'espace
* perso
************************************/
function getSavedPosition(){
  pos = readCookie("inv_espperso_pos");

  poscomat = pos.indexOf(',');

  x = pos.substr(0, poscomat);
  y = pos.substr(poscomat+1, pos.length);

	if (x.substr(0,1)=='-') x='0';
	if (y.substr(0,1)=='-') y='0';

  box = document.getElementById('espace_perso');
  box.style.left = x+"px"; 
 box.style.top = y+"px";
}

/************************************
* Lit un cookie
************************************/
function readCookie(nom){
  deb = document.cookie.indexOf(nom + "=")

  if (deb >= 0) {
      deb += nom.length + 1
      fin = document.cookie.indexOf(";",deb)
      if (fin < 0) fin = document.cookie.length
      return unescape(document.cookie.substring(deb,fin))
      }
  return ""
}

/************************************
* Drag'n'Drop
************************************/
document.onmousemove = mouseMove;
document.onmouseup   = mouseUp;

var dragObject  = null;
var mouseOffset = null;

function getMouseOffset(target, ev){
	ev = ev || window.event;

	var docPos    = getPosition(target);
	var mousePos  = mouseCoords(ev);
	return {x:mousePos.x - docPos.x, y:mousePos.y - docPos.y};
}

function mouseCoords(event){
	//SDV OGM 
	var mouseX = Event.pointerX(event);
	var mouseY = Event.pointerY(event); 
	return {
		x:mouseX,
		y:mouseY
	};

	
	
  var e = event || window.event;
  var scroll = new Array((document.documentElement && document.documentElement.scrollLeft) || window.pageXOffset || self.pageXOffset || document.body.scrollLeft,(document.documentElement && document.documentElement.scrollTop) || window.pageYOffset || self.pageYOffset || document.body.scrollTop);;

  mousex = e.clientX + scroll[0] - document.body.clientLeft;
  mousey = e.clientY + scroll[1] - document.body.clientTop;

	return {
		x:mousex,
		y:mousey
	};
}

function getPosition(e){
	var left = 0;
	var top  = 0;

	left += e.offsetLeft;
	top  += e.offsetTop;

	return {x:left, y:top};
}

function mouseMove(ev){
	ev           = ev || window.event;
	var mousePos = mouseCoords(ev);

	if(dragObject){
		dragObject.style.position = 'absolute';
		dragObject.style.top      = (mousePos.y - mouseOffset.y)+'px';
		dragObject.style.left     = (mousePos.x - mouseOffset.x)+'px';

		savePosition(mousePos.x - mouseOffset.x, mousePos.y - mouseOffset.y);

		return false;
	}
}

function mouseUp(){
	dragObject = null;
}

function makeDraggable(item){
	if(!item) return;
	item.style.display='block';
	item.onmousedown = function(ev){
		dragObject  = this;
		mouseOffset = getMouseOffset(this, ev);
		return false;
	}
}
