


var stop = 0;
var defile_manuel = 0;
var defilement = -1;
var defilement_temp = -1;
var cross_marquee;
var visionnage = 0;//pour savoir si on visionne une video
var div_en_cour;//pour savoir quel div est en cour de lecture
//var div_en_cour_no_ajax; pour effetslide (non testé)
var donnee_en_cour;//pour savoir les donnes de l'article est en cour de lecture

/***watch_time***/
var runtimer;
var id_record_time;//l'id de l'enregistrement du temps visionné de la vidéos
var donne_en_cour;//l'id de l'id de l'article qui est en train d'etre enregistré
/*fin watch_time*/

//pour activer le update_watch_time en javascript comme sa on peux arreter le chrono quand on fait pause
function active_update_watch_timev2(donne){
	stop_update_watch_timev2();
	donne_en_cour = donne;
	lien = 'ajax/ajax_start_video_watch_time.php?'+donne;
	if(window.XMLHttpRequest) // Firefox 
		xhr_object2 = new XMLHttpRequest(); 
	else if(window.ActiveXObject) // Internet Explorer 
		xhr_object2 = new ActiveXObject("Microsoft.XMLHTTP"); 
	else { // XMLHttpRequest non supporté par le navigateur 
		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
		return; 
	} 
	xhr_object2.open('GET', lien, true); 
	xhr_object2.onreadystatechange = function() { 
		if(xhr_object2.readyState == 4) {
			var test;
			id_record_time = xhr_object2.responseText;
			setTimeout(function(){gestion_video_time()},1000);//on fait un premier clique ici car le premier clique n'est pas pris en compte bizarrement
			update_watch_timev2(id_record_time);
		}
	} 
	var data = donne; 
	xhr_object2.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xhr_object2.send(data); 
		 
}

function update_watch_timev2(watch_id) {
	  lien = 'ajax/ajax_update_video_watch_time.php?id='+watch_id;
	  //lien = '/ajax/ajax_update_video_watch_time.php';
	  //send_ajax(lien,'id='+watch_id+'','GET');
	 /* xhr_object.open("GET", lien, false);
	  xhr_object.send(null);*/
	 if(window.XMLHttpRequest) // Firefox 
        xhr_object = new XMLHttpRequest(); 
     else if(window.ActiveXObject) // Internet Explorer 
        xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); 
     else { // XMLHttpRequest non supporté par le navigateur 
        alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
        return; 
     } 
     xhr_object.open('GET', lien, true); 
     xhr_object.onreadystatechange = function() { 
        if(xhr_object.readyState == 4) {
			var test;
		}
     } 
	 var data = 'id='+watch_id; 
     xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
     xhr_object.send(data); 
	  runtimer = setTimeout("update_watch_timev2('"+watch_id+"')",10000);
}

function stop_update_watch_timev2(){
	clearTimeout(runtimer);
}

/*****DEFILEMENT MEDISCOOP(est dévenue obsolete (voir effet.js function defilement_mediscoop) mais est encore utilisé quelque part******/
//fonction qui permet à un texte de défiler dans la div element
function populate(element,vitesse){
	if(document.getElementById(element)){
		cross_marquee = document.getElementById(element)
		tailleChamp = document.getElementById(element).offsetHeight + 5;
		
		//cross_marquee.style.top=-tailleChamp+"px"//pour savoir où vas commencer le texte au chargement de la page (on retire sa taille)
		var defilement = setInterval("scroll_div('"+tailleChamp+"','"+element+"')",vitesse)//on peux aussi définir la vitesse ici en appelant toute les 30 milliseconde la fonction
	}

}

//on as besoin de la taille de l'élément pour savoir où il vas commencer mais aussi de l'élément en question
function scroll_div(tailleChamp,element){

	if(tailleChamp < 10)
		tailleChamp = document.getElementById(element).offsetHeight + 5;//parfois il y a un probleme pour la taille du champ alors on le recalcule
	
	var contener_defile = document.getElementById("contener_defile").style.height + 5;
	//var cross_marquee = document.getElementById(element);
	
	var taille_max = parseInt(tailleChamp) - parseInt(contener_defile);
	//var taille_min = parseInt(tailleChamp)/2 - parseInt(contener_defile) - 10;
	/*if(document.getElementById('debug')){
	 	document.getElementById('debug').innerHTML = "T_max"+taille_max+" top"+cross_marquee.style.top+" t_champ"+tailleChamp;
	}*/
	
	//document.getElementById('coord').innerHTML = defile_manuel+" "+stop+" "+parseInt(cross_marquee.style.top);
	//on vérifie qu'on est pas arrivé au bout
	if(defile_manuel == 0){
		if(parseInt(cross_marquee.style.top) < -taille_max){
			defilement = 1;
		}
		if(parseInt(cross_marquee.style.top) > 0){
			//si on est arrivé au bout on inverse le sens de défilement
			defilement = -1;
		}
	}
	else{
		if(parseInt(cross_marquee.style.top) < -taille_max || parseInt(cross_marquee.style.top) > 0){
			//si on est arrivé au bout on inverse le sens de défilement
			stop = 1;
		}
	}
		
		
	if(!stop)
		cross_marquee.style.top=parseInt(cross_marquee.style.top)+defilement+"px";
}

function move_medi(direction){

		if(direction == "up"){
			defilement = 5;
			defile_manuel = 1;
		}
		if(direction == "down"){
				defilement = -5;
				defile_manuel = 1;
		}
	
}

function unmove(){
	defilement = defilement_temp;
	defile_manuel = 0;
}
/**************************************************************************/
//la taille des div 
var height = 40;
var height_div = 0;//popur connaitre la taille de la div qui as disparu
var deroule;

/*
enroulement et déroulement marche comme sa :
<div id="fiche<?php echo $numero;?>">
Votre texte de départ
</div>
<div id="presentation<?php echo $numero;?>">
</div>
Ensuite on appelle update_ajax('$numero','votre_fichier_php.php','les_donnes_à_envoyé');
Le résultat se chargera dans presentation<?php echo $numero;?>
Et fiche<?php echo $numero;?> sera caché
*/

//fonction qui regroupe toutes les options possible
function action_option(id,action){
	if(action == 'fade')
		Effect.Fade(id);
	if(action == 'appear')
		Effect.Appear(id);
}

//fonction qui permet de donner un effet de déroulement 
//taille vas correspondre à la taille de la div
function deroulement(contener,fichier,donne,id_div,taille_div){
	
	//en fonction de la taille du titre on vas agrandir la taille de la div
	height_max = parseInt(taille_div) + document.getElementById('fiche'+id_div).offsetHeight + 10;
	//on vas donner un effet : plus la case est grande et plus le déroulement est lent
	vitesse = 10*(height_max - height)/height_max;
	//on fait cela sinon ce sera une boucle quasi sans fin
	if(vitesse>=1)
		height = height + vitesse;
	else
		height = height + 1;
	document.getElementById('presentation'+id_div).style.height = height;
	
	if(height>=height_max){
		clearInterval(deroule);
		document.getElementById('presentation'+id_div).style.display = 'block';
		update_ajax(contener,fichier,donne);
	}
}

//fonction qui permet de donner un effet de déroulement(cache la video)
function enroulement(id_div){
	
	height_f = height_div;
	height_d = document.getElementById('presentation'+id_div).offsetHeight;
	
	//en fonction de la taille du titre on vas agrandir la taille de la div
	height_max = 255 + document.getElementById('fiche'+id_div).offsetHeight;
	//on vas donner un effet : plus la case est grande et plus le déroulement est lent
	vitesse = 10*(height)/height_max;
	//on fait cela sinon ce sera une boucle quasi sans fin
	if(vitesse>=1)
		height = height - vitesse;
	else
		height = height - 1;
	document.getElementById('presentation'+id_div).style.height = height;
	
	//on continue jusqu'a ce que qu'on arrive à la taille initiale
	if(height<=height_f){
		clearInterval(enroule);
		document.getElementById('presentation'+id_div).style.height = 0;
		//document.getElementById('presentation'+id_div).style.display = 'none';
		//on cache la fiche de départ
		document.getElementById('fiche'+id_div).style.display = "block";
	}
}

//id_div pour savoir quel div on doit modifier
//option vas permettre de faire une certaine action (par exemple dans le cas de rhumato on vas donner un fade sur une image (photo de la personne)
function load_video(contener,donne,id_div,taille_div,option){
	if(option == undefined)
		option = '';
	else{
		//on découpe les différente option
		option_dec = option.split('|');
		var taille = option_dec.length;
		var variable = Array();//tableau qui contient les varaible
		var valeur = Array();//tableau qui contient les valeur des variable 
		var var_val;//tableau qui contient les varaible et leur valeur sparé par un =
		//si on as plus de 1 option on vas extraire la varaible et sa valeur
		if(taille > 1){
			for(var i = 0;i<taille;i++){
				var_val = option_dec[i].split('=');
				variable[i] = var_val[0];
				valeur[i] = var_val[1];
			}				
		}
		else{
			var_val = option_dec[0].split('=');
			variable[0] = var_val[0];
			valeur[0] = var_val[1];
		}
	}
	fichier = "/ajax/ajax_get_html_load_video.php";
	if (taille_div==undefined) 
		taille_div = 210
	if(!visionnage){
		//dans le cas ou on ne prend pas en compte la taille de la fiche
		height_div = document.getElementById('fiche'+id_div).offsetHeight;
		
		height  = height_div;
		
		//on désactive les autres bouton
		for(i = 0;i < 250;i++){
			if(document.getElementById('button'+i) && i != id_div)
				document.getElementById('button'+i).disabled = true;
		}
		
		//on vas récupérer les donnes de l'article en cour
		donne_en_cour = donne;
		//on vas récupérer id de l'article en cour
		
		//on cache la fiche de départ
		document.getElementById('fiche'+id_div).style.display = "none";
		
		donne = donne+"&id_div="+id_div;
		
		//on regarde si on as des options
		if(option != '')
			donne = donne+"&option="+option;
		
		document.getElementById('presentation'+id_div).style.height = height;
		visionnage = 1;
		div_en_cour = id_div;
		//on regarde si on as des options
		if(option != ''){
			for(var i = 0; i < variable.length ; i++){
				action_option(variable[i],valeur[i]);
			}
		}
		deroule = setInterval(function(){deroulement(contener,fichier,donne,id_div,taille_div);},10);
	}
	else{
		cache_video(div_en_cour);
		if(div_en_cour != id_div)
			setTimeout(function() {load_video(contener,donne,id_div,taille_div);},1800);//on attent 1,8 seconde pour lancer la fonction qui affiche l'autre video cliqué
		//load_video(contener,donne,id_div);
	}
}

//id_div pour savoir quel div on doit modifier
function load_videov2(contener,donne,id_div){
	
	fichier = "/ajax/ajax_get_html_load_video.php";
	if(!visionnage){
		//on désactive les autres bouton
		for(i = 0;i < 15;i++){
			if(document.getElementById('button'+i))
				document.getElementById('button'+i).disabled = true;
		}
		//on vas récupérer les donnes de l'article en cour
		donne_en_cour = donne;
		donne = donne+"&id_div="+id_div+"&version=2";
		update_ajax(contener,fichier,donne);
		
		/***CHARGEMENT DE L'ID DE VIDEO A METTRE A JOUR***/
		active_update_watch_timev2(donne);
		/*FIN CHARGEMENT DE L'ID DE VIDEO A METTRE A JOUR*/
		
		//on fait disparaitre l'image de fond
		//document.getElementById('image'+id_div).style.display = "none";
		visionnage = 1;
		div_en_cour = id_div;
	}//si une video est en cour alors on la ferme et on ouvre l'autre
	else{
		cache_videov2(div_en_cour,donne_en_cour);
		load_videov2(contener,donne,id_div);
	}
	
}

//choix_lecture permet de savoir si on doit arrêter ou non l'enregistrement de la durée de vidéo
function choix_lecture(obj){
	if(obj.state || obj.state == undefined){//obj.state undefined correspond à un clique sur le seek ce qui relance de suite la vidéo
		/*stop_update_watch_timev2();
		update_watch_timev2(id_record_time);*/
		active_update_watch_timev2(donne_en_cour);
	}
	else{
		stop_update_watch_timev2();
	}
}

//fonction qui peremt de gérer la mise en route ou l'arret de la video
function gestion_video_time(){
	var player = document.getElementById('player');
	if(player){
		player.addControllerListener("PLAY","choix_lecture");
		player.addControllerListener("SEEK","choix_lecture");
	}
}

//id_div pour savoir quel div on doit modifier load_video 3 sera le plus simple des load vidéos
function load_videov3(contener,donne){

		donne = donne+"&id_div="+contener+"&version=3";
		update_ajax(contener,'/ajax/ajax_get_html_load_video.php',donne);
		document.getElementById(contener).style.display = 'block';
	
}

//id_div pour savoir quel div on doit modifier load_video 3 sera le plus simple des load vidéos
function cache_videov3(contener){

		//document.getElementById(contener).style.display = 'none';
		document.getElementById(contener).innerHTML = '';
	
}

//id_div pour savoir quel div on doit modifier load_video 3 sera le plus simple des load vidéos
function cache_all(contener){

		document.getElementById(contener).style.display = 'none';
		document.getElementById(contener).innerHTML = '';
	
}


function cache_videov2(id_div,donne){

	//on active les autres bouton
	for(var i = 0;i < 15;i++){
		if(document.getElementById('button'+i))
			document.getElementById('button'+i).disabled = false;
	}
	
	donne = donne+"&photo=true&id_div="+id_div;//on signale qu'on veux charger une photo
	
	//on fait aparaitre l'image de fond
	//document.getElementById('image'+id_div).style.display = "block";
	update_ajax("video"+id_div+"","/ajax/ajax_get_html_load_video.php",donne);
	visionnage = 0;
}

function cache_video(id_div,option){

	if(option == undefined)
		option = '';
	else{
		//on découpe les différente option
		option_dec = option.split('&');
		var taille = option_dec.length;
		var variable = Array();//tableau qui contient les varaible
		var valeur = Array();//tableau qui contient les valeur des variable 
		var var_val;//tableau qui contient les varaible et leur valeur sparé par un =
		//si on as plus de 1 option on vas extraire la varaible et sa valeur
		if(taille > 1){
			for(var i = 0;i<taille;i++){
				var_val = option_dec[i].split('=');
				variable[i] = var_val[0];
				valeur[i] = var_val[1];
			}				
		}
		else{
			var_val = option_dec[0].split('=');
			variable[0] = var_val[0];
			valeur[0] = var_val[1];
		}
	}
	
	//on désactive les autres bouton
	for(var i = 0;i < 15;i++){
		if(document.getElementById('button'+i) && i != id_div)
			document.getElementById('button'+i).disabled = false;
	}
	document.getElementById('presentation'+id_div).innerHTML = "&nbsp;";
	
	clearTimeout(runtimer);
	if(option != ''){
		for(var i = 0; i < variable.length ; i++){
			action_option(variable[i],valeur[i]);
		}
	}
	enroule = setInterval(function(){enroulement(id_div);},8);
	
	visionnage = 0;
}

	//fonction qui permet de charger les imedia (utilisé dans les médiathèque et les dossier)
	//donnee permet d'envoyer des donnée suplémentaire à l'ajax qui gère l'imedia 
	function load_imedia(id_article,donnee){
	
		if(donnee == undefined)
			donnee = '';
		else
			donnee = "&"+donnee;
		var imedia = document.getElementById('imedia');
		var fond = document.getElementById('fond');
		imedia.style.position = 'absolute';
		imedia.style.zIndex = '102';
		imedia.style.top = window.screen.height/2 - 650/2;
		imedia.style.left = window.screen.width/2 - 770/2;
		imedia.style.display = 'block';
		if(posY_mouse < 150)
			posY_mouse = 400;
		window.scrollTo(0,0);
		update_ajax('imedia','/ajax/ajax_get_html_load_imedia.php','id_article='+id_article+donnee);
		fond.style.position = 'absolute';
		fond.style.zIndex = '101';
		fond.style.display = 'block';
		fond.style.opacity = 0.3;
		fond.style.width = '100%';
		fond.style.height = '100%';
		fond.style.filter = "alpha(opacity=30)";
		fond.style.backgroundColor = "#ffffff";
	}
	//fonction qui permet de charger les interview(utilisé icongres)
	//donnee permet d'envoyer des donnée suplémentaire à l'ajax qui gère l'imedia 
	function load_interview(id_article,donnee){
	
		if(donnee == undefined)
			donnee = '';
		else
			donnee = "&"+donnee;
		
		var interview = document.getElementById('box_interview');
		interview.style.position = 'absolute';
		interview.style.zIndex = '50';
		interview.style.top = 200;
		interview.style.left = window.screen.width/2 - 450/2;
		interview.style.display = 'block';
		if(posY_mouse < 150)
			posY_mouse = 400;
		window.scrollTo(0,0);
		update_ajax('box_interview','/ajax/ajax_get_html_load_interview.php','id_article='+id_article+donnee);
		fond.style.position = 'absolute';
		fond.style.zIndex = '3';
		fond.style.display = 'block';
		fond.style.opacity = 0.3;
		fond.style.width = '100%';
		fond.style.height = '100%';
		fond.style.filter = "alpha(opacity=30)";
		fond.style.backgroundColor = "#ffffff";
	}
	//fonction qui permet de charger des page pour un effet de surimpression (utilisé dans les médiathèque et les dossier)
	//donnee permet d'envoyer des donnée suplémentaire à l'ajax qui gère la page 
	function load_page(id_article,donnee,width){
		
		
		if(width == undefined)
			width = 790;
			
		if(donnee == undefined)
			donnee = '';
		else
			donnee = "&"+donnee;
		
		var imedia = document.getElementById('imedia');
		/*if(posY_mouse < 150)
			posY_mouse = 400;*/
		window.scrollTo(0,0);
		imedia.style.left = window.screen.width/2 - width/2;
		imedia.style.top = 100;
		imedia.style.display = 'block';
		update_ajax('imedia','/ajax/ajax_get_html_load_page.php','pageID='+id_article+donnee);
		document.getElementById('fond').style.display = 'block';
		document.getElementById('fond').style.opacity = 0.3;
		document.getElementById("fond").style.filter = "alpha(opacity=30)";
		document.getElementById('fond').style.backgroundColor = "#ffffff";
	}
	
	function cache(div){
		var ma_div = document.getElementById(div);
		ma_div.style.display = 'none';
		ma_div.innerHTML = '';
		document.getElementById('fond').style.display = 'none';
		document.getElementById('fond').style.opacity = 1;
		document.getElementById('fond').style.width = '0';
		document.getElementById('fond').style.height = '0';
		document.getElementById("fond").style.filter = "alpha(opacity=100)";
		document.getElementById('fond').style.backgroundColor = "#FFFFFF";
	}
	
	
/******GESTION AFFICHAGE ARTICLE******/
var div_courante_dossier = '';
var effect = null;
	
//fonction qui permet de donner un effet de appear/disappear pour les articles des dossier
/*on peux donner plusieur effet
mon_effet_app : donne un effet pour l'apparition du texte
mon_effet_dis : donne un effet pour la disparition du texte
fade : disparition opacité
appear : apparition opacité
grow : apparition en augmentant la taille
shrink : disparition en diminuant la taille
puff : disparition en diffusant le texte
*/
function affiche_article_effet(div,mon_effet_app,mon_effet_dis){

	if(mon_effet_app == undefined){
		mon_effet_app = 'appear';
	}
	if(mon_effet_dis == undefined){
		mon_effet_dis = 'fade';
	}
	//si aucune div courante n'est ouverte
	if(div_courante_dossier == ''){
		div_courante_dossier = div;
		if(mon_effet_app == 'appear')
			Effect.Appear(div);
		if(mon_effet_app == 'grow')
			Effect.Grow(div);
	}
	else{
		if(div_courante_dossier == div){
			/*if(mon_effet_dis == 'fade')
				Effect.Fade(div);
			if(mon_effet_dis == 'puff')
				Effect.Puff(div);
			if(mon_effet_dis == 'shrink')
				Effect.Shrink(div);
			div_courante_dossier = '';*/
			var temp;//pour éviter que l'article courant disparaisse sans réaparaitre
		}
		else{
			if(mon_effet_dis == 'fade')
				Effect.Fade(div_courante_dossier);
			if(mon_effet_dis == 'puff')
				Effect.Puff(div_courante_dossier);
			if(mon_effet_dis == 'shrink')
				Effect.Shrink(div_courante_dossier);
			div_courante_dossier = div;
			if(mon_effet_app == 'grow')
				setTimeout(function(){Effect.Grow(div);},1000);
			if(mon_effet_app == 'appear')
				setTimeout(function(){Effect.Appear(div);},1000);
		}
	}
}

//fonction qui vas permettre de charger les différents types en fonction de là ou on as cliqué (pour les axes pathologiques)
function load_type_article(type){
	var tab_type = new Array("articles_commentes", "actualites_scientifiques", "mise_au_point", "cas_cliniques", "Recommandation", "HAS" , "CAD" , "interview", "ilya50ans","VPOL","QUIZ", "Divers", "liens_cat");
	
	var taille_tab = tab_type.length;
	for(var i = 0;i<taille_tab;i++){
		//si le type exist
		if(document.getElementById(tab_type[i]) != null && document.getElementById(tab_type[i]+"_onglet") != null){
			if(tab_type[i] != type){
				document.getElementById(tab_type[i]).style.display = 'none';
				document.getElementById(tab_type[i]+"_onglet").className = 'onglet_off';
			}
			else{
				document.getElementById(type).style.display = 'block';
				document.getElementById(tab_type[i]+"_onglet").className = 'onglet_on';
			}
		}
	}
}

function block(id){
	document.getElementById(id).style.display = 'block';
}
