/**************************************************************/
/*Fonctions DWR pour l'affichage AJAX au sein de l'onglet Film*/
/**************************************************************/

/*L'id du film sur lequel on effectue les traitement DWR*/
var movieCode;
/*Le code ugc du film courant et le code du film courant pr�c�dent*/
var currentMovieCode;
var oldMovieCode;
/*Diff�rentes balises <div> et <span> utilis�es pour l'affichage du d�tail d'un film*/
var divCodeFilm;
var spanOutDate;
var spanDuration;
var spanActors;
var spanDirector;
var posterImg;
var slideShowImg=new Array();
var divSummary;
var divWhereSeeThisMovie;
var partSheetUrl;

$(document).ready(function(){
    videoOnLoad();
});

/* accès direct à la bande annonce si on a le paramètre tab=video */
function videoOnLoad() {
    if ($("#paramTabVideo").attr("value")== "true"){
        populateVideoDiv(currentMovieCode,currentMovieCode);
    }
}

/*Fonction appel�e lors d'un clique sur le titre d'un film afin d'en afficher le d�tail*/
//movieId = id du film
//version = la version du film (VO ou VF) (optionnel -valeur null- dans l'onglet film mais pas dans cin�ma)
function showDetail(movieId,version) {
 //MAJ de l'id du film sur lequel on effectue les traitement
 movieCode = movieId;
 //Code permettant de g�n�rer un identifiant unique de div pour chaque d�tail film
 if (version!=null){
 	currentMovieCode=movieId+"_"+version;
 }else{
 	currentMovieCode=movieId;
 }
 //correction d'un bug IE en cachant une partie du d�tail du film au chargement
 $("#ficheFilmBas_"+currentMovieCode).hide();
 $("#ficheFilmBas_"+oldMovieCode).hide();

 	 //Si le film dont on demande le d�tail est pr�sent sur la page (V�rification n�cessaire � cause des liens depuis l'onglet film)
	 if(document.getElementById("detailFilm_"+currentMovieCode)!=null){
		if(currentMovieCode!=oldMovieCode){
			 divCodeFilm = document.getElementById("detailFilm_"+currentMovieCode);
		 	 /*Afficher le d�tail du film*/
		 	 showWhereSeeThisMovie(movieId,version);
			 spanOutDate = document.getElementById("OutDate_"+currentMovieCode);
			 spanDuration = document.getElementById("Duration_"+currentMovieCode);
			 divSummary = document.getElementById("Summary_"+currentMovieCode);
			 spanActors = document.getElementById("Actors_"+currentMovieCode);
			 spanDirector = document.getElementById("Director_"+currentMovieCode);
			 posterImg = document.getElementById("PosterImg_"+currentMovieCode);
			 detail_film.renderFilmDetail(movieId, replyShowDetail);
			 var rn = Math.round(Math.random()*1000000000-1);
			 var urlTop='http://mfr.247realmedia.com/RealMedia/ads/adstream_sx.ads/www.ugc.fr/rg/1' + rn + '@Top,Middle,Position1!Top';
			 var urlMiddle='http://mfr.247realmedia.com/RealMedia/ads/adstream_sx.ads/www.ugc.fr/rg/1' + rn + '@Top,Middle,Position1!Middle';
			 $('iframe#ifrPubTop').attr('src',urlTop);
		 	 $('iframe#ifrPubMiddle').attr('src',urlMiddle);
		 }else{
		 /*Sinon supprimer le preview (pour eviter chargement) et fermer le d�tail du film*/
		$("#Preview_"+currentMovieCode).slideUp("fast");
		$("#Preview_"+currentMovieCode).html("");
	 	$("#detailFilm_"+currentMovieCode).slideUp("fast");
	 	//Il n'y � plus d'ancien film ouvert
	 	oldMovieCode=null;
	 	}
	 }
 }

/*Fonction d'affichage pour le d�tail d'un film*/
var replyShowDetail = function(movieDetail) {
 // appel jQuery
 // On cache le d�tail de l'ancien film s�lectionn�
 $("#detailFilm_"+oldMovieCode).slideUp("fast");
 DWRUtil.setValue(spanOutDate, movieDetail.movieOutDate);
 DWRUtil.setValue(spanDuration, movieDetail.movieDuration);
 //On r�cup�re les acteurs d'un film
 var listActors="";
 for (var i = 0; i < movieDetail.actors.length-1; i++){
  listActors = listActors+ movieDetail.actors[i]+", ";
 }
 if(movieDetail.actors[movieDetail.actors.length-1]!="Liste des acteurs non disponible"){
 	listActors = listActors + movieDetail.actors[movieDetail.actors.length-1]+"... ";
 }else{
	listActors = listActors + movieDetail.actors[movieDetail.actors.length-1];
 }
 partSheetUrl=movieDetail.partMovieSheetUrl;
 DWRUtil.setValue(spanActors, listActors);
 DWRUtil.setValue(spanDirector, movieDetail.director);
 posterImg.src =  movieDetail.posterUrl;
 //On r�cup�re les photos pour le diaporama
 for (var i = 0; i < movieDetail.partMovieSlideShowImg.length; i++){
  slideShowImg[i] = movieDetail.partMovieSlideShowImg[i];
 }
 diaporama(slideShowImg[0],slideShowImg[1],slideShowImg[2],slideShowImg[3],'img/diaporama/photo_precedente.gif','img/diaporama/photo_suivante.gif','293','195',currentMovieCode);

 divSummary.innerHTML=movieDetail.summary;
 //document.getElementById("Preview_"+movieDetail.movieugcMovieCode).style.display = "none";
 // appel jQuery
 // On affiche le d�tail du nouveau film s�lectionn�
 $("#detailFilm_"+currentMovieCode).slideDown("fast");
 //correction d'un bug IE en r�affichant la partie du d�tail du film que l'on avait cach�e au chargement
 $("#ficheFilmBas_"+currentMovieCode).show();
 $("#ficheFilmBas_"+oldMovieCode).show();
 //On affiche la div de r�sum� et on cache les autres du d�tail du film
 hiddShow('Stat_'+currentMovieCode,'Preview_'+currentMovieCode,'Opinion_'+currentMovieCode,'Diaporama_'+currentMovieCode,'Summary_'+currentMovieCode);
 // Le film courant devient l'ancien film
 oldMovieCode=currentMovieCode;
}

/*Fonction d'affichage pour la div "o� voir ce film"*/
function showWhereSeeThisMovie(movieId,version) {
	 //Code permettant de g�n�rer un identifiant unique de div pour chaque d�tail film
	 if (version!=null){
	 	currentMovieCode=movieId+"_"+version;
	 }else{
	 	currentMovieCode=movieId;
	 }
	 //Si la balise ayant l'id whereSeeThisMovie existe
	 if(document.getElementById("whereSeeThisMovie_"+currentMovieCode)!=null){
	 divWhereSeeThisMovie= document.getElementById("whereSeeThisMovie_"+currentMovieCode);
		 //Si il n'y a pas de cookie de r�gion
		 var regionCookie=readCookie("REGION")
		 if (regionCookie==null || regionCookie==0){
			 //Afficher la liste des r�gions
			 detail_film.renderRegionList(movieId,replyRegionList);
		 }else{
			 //Sinon afficher la liste des cin�mas correspondant au film et � la r�gion
			 detail_film.renderComplexAndVersion(regionCookie, movieId, replyComplexList)
		 }
	 }
}

/*Fonction d'affichage pour la liste des r�gions (au sein de la rubrique o� voir ce film)*/
var replyRegionList = function(regionList) {
	var nbRegion=regionList.length;
	var WhereSeeThisMovie="";
	if (nbRegion!=0){
			for (var i = 0; i < nbRegion-1; i++){
				WhereSeeThisMovie = WhereSeeThisMovie+"<a href='javascript:showWhereSeeThisMovie("+currentMovieCode+");' onClick=\"reservationRegionChange('"+regionList[i].complexRegionId+"');\" class='color5'>"+regionList[i].longWording+"</a>&nbsp;<span class='color5-p'>-</span>&nbsp;";
			}
		/*Pour le dernier �l�ment on affiche pas de trait*/
		WhereSeeThisMovie = WhereSeeThisMovie+"<a href='javascript:showWhereSeeThisMovie("+currentMovieCode+");' onClick=\"reservationRegionChange('"+regionList[nbRegion-1].complexRegionId+"');\" class='color5'>"+regionList[nbRegion-1].longWording+"</a>";
		divWhereSeeThisMovie.innerHTML=WhereSeeThisMovie;
	}else{
		divWhereSeeThisMovie.innerHTML="<span class='color3'>Ce film n'est plus en salle.</span>";
	}
}

/*Fonction d'affichage pour la liste des complexes (au sein de la rubrique o� voir ce film)*/
var replyComplexList = function(complexList) {
	var nbComplex=complexList.length;
	var WhereSeeThisMovie="";
	if (nbComplex!=0){
		for (var i = 0; i < nbComplex; i++){

			/*G�n�ration des liens vers l'onglet cin�ma*/
			WhereSeeThisMovie = WhereSeeThisMovie+
								"<span nowrap='nowrap'><a href='complex.do?comeFrom=movieTab&complexId="+complexList[i].complexId+
								"&movieId="+movieCode+
								"&version="+complexList[i].movieVersionId+
								"' class='color5 inline'>"+
								complexList[i].complexName+" "+
								"<span class='color3-p'>("+complexList[i].movieVersionWording+")</span> ";
			if(i!=nbComplex-1){
			WhereSeeThisMovie = WhereSeeThisMovie+"</a></span> <span class='color5-p'>-</span> ";
			}
		}
	divWhereSeeThisMovie.innerHTML=WhereSeeThisMovie;
	}else{
	divWhereSeeThisMovie.innerHTML="<span class='color3'>Ce film n'est pas &agrave; l'affiche actuellement dans votre r&eacute;gion.</span>";
	}
}

/******************/
/*Gestion des avis*/
/******************/

//Gestion du multilingue
var opinionTitlePrefix = "<strong>Titre : </strong>";
var opinionTextPrefix = "<strong>Avis : </strong>";
var notYetOpinion = "Il n'y a pas encore d'avis pour ce film";
var modertatorAlertedTitle= "<strong>Alerter le mod&eacute;rateur</strong>";
var moderatorAlerted = "<strong>Mod&eacute;rateur alert&eacute;</strong></br>Nous avons pris en compte votre alerte, cet avis a &eacute;t&eacute; signal&eacute; au mod&eacute;rateur du site web.";
var writeOpinionError = "Les champs renseign&eacute;s sont incorrects, veuillez r&eacute;diger votre avis";
var writeOpinionDir = "R&eacute;digez votre avis";
var moderatorAlertOpinion = "Vous souhaitez signaler cet avis au mod&eacute;rateur.</br>Utilisez cette fonctionnalit&eacute; UNIQUEMENT pour signaler un contenu inappropri&eacute;.";

//L'identifiant d'�crivain et l'identifiant du film
//permettent l'identification de l'avis courant

//au d�part pas d'avis affich� donc pas d'�crivain => initialisation a "firstTime"
//afin de prevenir le controller
var currentWriterId = "firstTime";

/*Affiche le formulaire d'avis et cache les avis*/
function postOpinion(){
	$("#Opinion_"+currentMovieCode+" .opinion").hide();
	$("#Opinion_"+currentMovieCode+" .moderatorAlert").hide();
	$("#Opinion_"+currentMovieCode+" .writeOpinion").show();
	$("#writeOpinionDirection_"+currentMovieCode).removeClass("color8");
	$("#writeOpinionDirection_"+currentMovieCode).html(writeOpinionDir);
}

/*Enregistrer mon avis*/
function recordOpinion(){
	//Enregistre l'avis en BDD
	var opinionTitle = $("#Opinion_"+currentMovieCode+" :input[name=opinionTitle]").val();
	var opinion = $("#Opinion_"+currentMovieCode+" :input[name=opinionContent]").val();
	dwr_opinion.recordOpinion(movieCode,opinionTitle,opinion,replyRecordOpinion);

}

var replyRecordOpinion = function(data){
	if(data=="success"){
		//On revient � la liste des avis
		//currentMovieCode est initialis� � l'ouverture du detail film (cf : fonction showDetail)
		currentWriterId = "firstTime";
		opinionPopulate("Opinion_"+currentMovieCode,"next");
		$("#Opinion_"+currentMovieCode+" .opinion").show();
		$("#Opinion_"+currentMovieCode+" .writeOpinion").hide();
	}else{
		$("#writeOpinionDirection_"+currentMovieCode).html(writeOpinionError);
		$("#writeOpinionDirection_"+currentMovieCode).addClass("color8");
	}
}

/*Affiche le prochain avis*/
function opinionPopulate(divId,way){
	//Appelle DWR affiche l'avis suivant de la liste d'avis en session
	//et retourne son identifiant compos� d'un identifiant d'�crivain et
	// d'un identifiant de film
	//si movieId = null (ex : au premier appel) affiche le premier avis
	$("#opinionInfo_"+currentMovieCode).show();
	$("#opinionText_"+currentMovieCode).show();
	dwr_opinion.getOpinion(currentWriterId, movieCode, way, {
	  					callback:function(newCurrentOpinionId) {
	    				replyGetNextOpinion(currentMovieCode, newCurrentOpinionId, divId);
  						}
					});
}

//R�cup�re un objet de vue repr�sentant un avis
var replyGetNextOpinion = function(movieId, newOpinion,divId){
	if(newOpinion!=null){
		//On met � jour l'auteur de l'avis courant
		currentWriterId=newOpinion.writerId;
		//Peuple la structure d'acceuil de l'avis au sien de la jsp
		$("#opinionTitle_" + movieId).html(opinionTitlePrefix + newOpinion.opinionTitle);
		$("#author_" + movieId).html(newOpinion.writerName);
		$("#creationDate_" + movieId).html(newOpinion.formatDate);
		$("#opinionText_" + movieId).html(opinionTextPrefix + newOpinion.opinion);
		//Si l'avis est SUPERACTIF on ne peut plus le mod�rer
		if(newOpinion.state=="SUPERACTIF"){
			$("#moderatorAlertLink_" + movieId).hide();
		}else{
		//Sinon on peut alerter le mod�rateur
			$("#moderatorAlertLink_" + movieId).show();
		}
		//Si l'avis est le dernier pas de lien suivant
		if(newOpinion.lastOpinion==true){
			$("#nextOpinionLink_" + movieId).hide();
		}else{
		//Sinon lien vers l'avis suivant
			$("#nextOpinionLink_" + movieId).show();
		}
		//Si l'avis est le premier pas de lien pr�c�dent
		if(newOpinion.firstOpinion==true){
			$("#prevOpinionLink_" + movieId).hide();
		}else{
		//Sinon lien vers l'avis pr�c�dent
			$("#prevOpinionLink_" + movieId).show();
		}
	}else{
		$("#opinionTitle_" + movieId).html(notYetOpinion);
		$("#opinionInfo_" + movieId).hide();
		$("#opinionText_" + movieId).hide();
		$("#nextOpinionLink_" + movieId).hide();
		$("#prevOpinionLink_" + movieId).hide();
		$("#moderatorAlertLink_" + movieId).hide();
	}
}

function moderatorAlert(){
	//Efface la confirmation si il y en avait une pr�c�dente
	$("#moderatorAlerted_"+currentMovieCode).html("");
	//On reaffiche le lien d'envoi au mod�rateur
	$("#sendMailToModerator_"+currentMovieCode).show();
	//DWR recup les infos user en session
	//et alerte le mod�rateur � propos du currentOpinionId
	dwr_opinion. moderatorAlert(currentWriterId, movieCode, replyModeratorAlert);
}

var replyModeratorAlert = function(moderatorAlert){
	if(moderatorAlert.userEmail==null || moderatorAlert.userEmail==""){
		//Probl�me rencontr� lors de l'alerte du mod�rateur
		//On revient � la liste des avis
		currentWriterId = "firstTime";
		opinionPopulate("Opinion_"+currentMovieCode,"next");
		$("#Opinion_"+currentMovieCode+" .opinion").show();
		$("#Opinion_"+currentMovieCode+" .writeOpinion").hide();
		$("#Opinion_"+currentMovieCode+" .moderatorAlert").hide();
	}else{
		//On affiche le message de confirmation
		$("#Opinion_"+currentMovieCode+" .opinion").hide();
		$("#Opinion_"+currentMovieCode+" .writeOpinion").hide();
		$("#Opinion_"+currentMovieCode+" .moderatorAlert").show();
		$("#moderatorAlertDetail_"+currentMovieCode).show();
		$("#moderatorAlerted_"+currentMovieCode).html(modertatorAlertedTitle);
		$("#moderatorAlertUserFirstName_"+currentMovieCode).html(moderatorAlert.userFirstName);
		$("#moderatorAlertUserName_"+currentMovieCode).html(moderatorAlert.userName);
		$("#moderatorAlertUserEmail_"+currentMovieCode).html(moderatorAlert.userEmail);
		$("#moderatorAlertMovietitle_"+currentMovieCode).html(moderatorAlert.movieTitle);
		$("#moderatorAlertOpinion_"+currentMovieCode).html(moderatorAlertOpinion);
	}
}

function sendMailToModerator(){
	dwr_opinion.confirmModeratorAlert(replySendMailToModerator);
}

var replySendMailToModerator = function(confirmation){
	if(confirmation=="success"){
		//On cache le lien d'envoi au mod�rateur
		$("#sendMailToModerator_"+currentMovieCode).hide();
		//On affiche un message de confirmation
		$("#moderatorAlerted_"+currentMovieCode).html(moderatorAlerted);
		$("#moderatorAlertDetail_"+currentMovieCode).hide();
	}
}

/*********************/
/*Gestion de la vid�o*/
/*********************/

/*
Peuple l'onglet vid�o pour le d�tail film
@param movieCode le code du film
@param divId l'identifiant de la div � peupler
*/

var divSuffixIdToPopulate="";
var movieCodeToPreview="";
var BB_Attente = 10;

function populateVideoDiv(movieCode,divSuffixId){
	divSuffixIdToPopulate=divSuffixId;
	movieCodeToPreview=movieCode;
	//Appel DWR
	detail_film.renderPreview(movieCode, replyPopulateVideoDiv);
}

/*Fonction d'affichage pour le d�tail d'un film*/
var replyPopulateVideoDiv = function(urlPreview) {
	//Si l'url n'est pas vide
	if(urlPreview!="" && divSuffixIdToPopulate!=""){
		var movieDiv="Preview_"+divSuffixIdToPopulate;

		//On peuple le div vid�o du d�tail film
		//nouveau code


        var maDate = new Date();
		var fo = new SWFObject("flash/mediaplayer.swf?"+maDate.getTime(), "player_"+divSuffixIdToPopulate, "391", "330", "8", "#ffffff");
		fo.addParam('flashvars','&file=' + urlPreview + '&autostart=true');
        fo.addParam("wmode","opaque");

		fo.write(movieDiv);
	}
	//On change d'onglet
	hiddShow("Diaporama_"+divSuffixIdToPopulate,"Summary_"+divSuffixIdToPopulate,"Opinion_"+divSuffixIdToPopulate,"Stat_"+divSuffixIdToPopulate,"Preview_"+divSuffixIdToPopulate);
}

/*********************/
/*Gestion des statistiques*/
/*********************/

/*
Peuple l'onglet statisque pour le d�tail film
@param movieCode le code du film
@param divId l'identifiant de la div � peupler
*/
function populateStatsDiv(movieCode,divSuffixId){
	var movieStatDiv="Stat_"+divSuffixId;
	var so = new SWFObject("flash/amcolumn.swf", "stats_"+divSuffixId, "390", "200", "8", "#FFFFFF");
    so.addVariable("path", "amcharts/");
    so.addVariable("settings_file", escape("amcharts/amcolumn_settings_stats.xml"));
    so.addVariable("data_file", escape("stats.do?code="+movieCode));
	so.addVariable("preloader_color", "#999999");
	so.write(movieStatDiv);
	hiddShow("Diaporama_"+divSuffixId,"Summary_"+divSuffixId,"Opinion_"+divSuffixId,"Preview_"+divSuffixId,"Stat_"+divSuffixId);
}


/******************/
/*Autres Fonctions*/
/******************/

/*Cache au sein de la page HTML les 4 premiers paramm�tres
et affiche le dernier, permet la gestion des onglets
dans le detail des films*/
function hiddShow(hidd1,hidd2,hidd3,hidd4,show5){
	//Si l'onglet � montrer est avis alors on affiche le premier avis
	//et non pas le formulaire "donner mon avis"
	if(show5.indexOf("Opinion_") != -1){
		$("#"+show5+" .writeOpinion").hide();
		$("#"+show5+" .moderatorAlert").hide();
		$("#"+show5+" .opinion").show();
		currentWriterId = "firstTime";
		opinionPopulate(show5,"next");
	}
	$("#"+hidd1).hide();
	$("#"+hidd2).hide();
	$("#"+hidd3).hide();
	$("#"+hidd4).hide();
	$("#"+show5).show();
}

/****************************************/
/*Fonctions pour la publicit� des vid�os*/
/****************************************/

function BB_Rebours() {
	  if (BB_Attente > 0) {
		  	BB_Attente--;
		   	$("#BB_Compteur_"+divSuffixIdToPopulate).html(BB_Attente + " seconde" + (BB_Attente > 1 ? "s" : "") + " avant votre bande annonce.");
		   	setTimeout(BB_Rebours, 1000);
 	  }
}

/*******************************************/
/*Fonctions pour les statistiques des films*/
/*******************************************/

function movieStats(movieId){
	dwr_movieStats.getMovieStats(movieId, replyMovieStats);
}

var replyMovieStats = function(ratesDist){
	for(var i = 0; i < ratesDist.length; i++){
		var statsForI = ratesDist[i];
		var tableau=statsForI.split("_");
		var nbEtoiles = tableau[0];
		//pr�cision 1 chiffre apr�s la virgule donc 3 caract�res xx.x
		var pourcentageVote = tableau[1];
		var pourcentageVoteTronc = pourcentageVote.substring(0,4);
		var hColJaune = tableau[2];
		var hColBlanche = tableau[3];
		var nbVote = tableau[4];
		/*$("#Stat_"+currentMovieCode+" .col"+(i+1)+"Bottom").animate({height: hColJaune}, 1500 );*/
		$("#Stat_"+currentMovieCode+" .col"+(i+1)+"Bottom").height(hColJaune);
		$("#Stat_"+currentMovieCode+" .col"+(i+1)+"Top").height(hColBlanche);
		$("#Stat_"+currentMovieCode+" .col"+(i+1)+"CaptionRatingPercentage").html(pourcentageVoteTronc+" %");
		if(nbVote==0 || nbVote==1){
			$("#Stat_"+currentMovieCode+" .col"+(i+1)+"CaptionRatingNb").html(nbVote+" vote");
		}else{
			$("#Stat_"+currentMovieCode+" .col"+(i+1)+"CaptionRatingNb").html(nbVote+" votes");
		}
	}
}

/*******************/
/*Gestion des votes*/
/*******************/

//Liste des versions de films disponibles
var existingVersion = new Array("VO", "VF");

function changeImg(etoile,codeFilmUgcFilm,color){
	$("#imgEtoiles_"+codeFilmUgcFilm).attr("src","img/affinity/etoiles_affinite/"+color+"/"+etoile+"_withTitle.gif");
	//Si on est sur l'onglet cin�ma il faut g�rer les �toiles pour ttes les versions des films
	for(var i = 0; i<existingVersion.length ; i++){
		$("#imgEtoiles_"+codeFilmUgcFilm+"_"+existingVersion[i]).attr("src","img/affinity/etoiles_affinite/"+color+"/"+etoile+"_withTitle.gif");
	}
}

//Identifiant du film courant (sur lequel on vote)
var codeFilmtoRateFor;

//Fonction de vote
function setRating(vote,userId,codeFilmUgcFilm){
	codeFilmtoRateFor=codeFilmUgcFilm;
	dwr_affinityRipen.rate(codeFilmUgcFilm, userId, vote, replyRate);
	//Quand l'utilisateur � vot� on ne r�initialise ces �toiles non plus � 0
	//Mais � la valeur du vote, si l'utilisateur ne souhaite pas donner son avis
	//et ignorer le film (vote=0) on repositionne les �toiles � 0
	if(vote=="0"){
		$("#imgEtoiles_"+codeFilmUgcFilm).attr("src","img/affinity/etoiles_affinite/oranges/etoile0_withTitle.gif");
		//Si on est sur l'onglet cin�ma il faut g�rer les �toiles pour ttes les versions des films
		for(var i = 0; i<existingVersion.length ; i++){
			$("#imgEtoiles_"+codeFilmUgcFilm+"_"+existingVersion[i]).attr("src","img/affinity/etoiles_affinite/oranges/etoile0_withTitle.gif");
		}
	}
	var onMO = "changeImg('etoile"+vote+"',"+codeFilmtoRateFor+", 'oranges')";
	//Gestion de la Maj de la map des �toiles (sauf onglet cin�ma trait� apr�s)
	if(document.getElementById("area1_"+codeFilmUgcFilm)!=null &&
		document.getElementById("area2_"+codeFilmUgcFilm)!=null &&
			document.getElementById("area3_"+codeFilmUgcFilm)!=null &&
				document.getElementById("area4_"+codeFilmUgcFilm)!=null &&
					document.getElementById("area5_"+codeFilmUgcFilm)!=null){
		document.getElementById("area1_"+codeFilmUgcFilm).onmouseout=new Function(onMO);
		document.getElementById("area2_"+codeFilmUgcFilm).onmouseout=new Function(onMO);
		document.getElementById("area3_"+codeFilmUgcFilm).onmouseout=new Function(onMO);
		document.getElementById("area4_"+codeFilmUgcFilm).onmouseout=new Function(onMO);
		document.getElementById("area5_"+codeFilmUgcFilm).onmouseout=new Function(onMO);
	}
	//Si on est sur l'onglet cin�ma il faut g�rer les �toiles pour ttes les versions des films
	for(var i = 0; i<existingVersion.length ; i++){
		var suffix = codeFilmUgcFilm+"_"+existingVersion[i];
		if(document.getElementById("area1_"+suffix)!=null &&
		document.getElementById("area2_"+suffix)!=null &&
			document.getElementById("area3_"+suffix)!=null &&
				document.getElementById("area4_"+suffix)!=null &&
					document.getElementById("area5_"+suffix)!=null){
		document.getElementById("area1_"+suffix).onmouseout=new Function(onMO);
		document.getElementById("area2_"+suffix).onmouseout=new Function(onMO);
		document.getElementById("area3_"+suffix).onmouseout=new Function(onMO);
		document.getElementById("area4_"+suffix).onmouseout=new Function(onMO);
		document.getElementById("area5_"+suffix).onmouseout=new Function(onMO);
		}
	}

	//Gestion de l'�tat du vote pour les diff�rents onglets (sauf cin�ma)
	//Si l'�lement n'existe pas
	if(document.getElementById("rateState_"+codeFilmUgcFilm)==null){
		$("#etoiles_"+codeFilmUgcFilm).append("<img id='rateState_"+codeFilmtoRateFor+"' class='rateState' src='img/affinity/inProgress.gif'/>");
	//Sinon
	}else{
		$("#rateState_"+codeFilmtoRateFor).attr("src","img/affinity/inProgress.gif");
	}
	//Gestion de l'�tat du vote pour l'onglet cin�ma
	//Si on est sur l'onglet cin�ma il faut g�rer les �toiles pour ttes les versions des films
	for(var i = 0; i<existingVersion.length ; i++){
		if(document.getElementById("rateState_"+codeFilmUgcFilm+"_"+existingVersion[i])==null){
			$("#etoiles_"+codeFilmUgcFilm+"_"+existingVersion[i]).append("<img id='rateState_"+codeFilmtoRateFor+"_"+existingVersion[i]+"' class='rateState' src='img/affinity/inProgress.gif'/>");
		//Sinon
		}else{
			$("#rateState_"+codeFilmtoRateFor+"_"+existingVersion[i]).attr("src","img/affinity/inProgress.gif");
		}
	}
}

/*Fonction de v�rification du retour webService Criteo*/
var replyRate = function(returnCode) {
	if(returnCode=="Success"){
		//Gestion de la confirmation du vote pour les votes des films (sauf onglet cin�ma)
		$("#rateState_"+codeFilmtoRateFor).attr("src","img/small_tic_vert.gif");
		$("#etoilesTitle_"+codeFilmtoRateFor).html("vote");
		//Gestion de la confirmation du vote pour les votes des films de l'onglet cin�ma
		//Si on est sur l'onglet cin�ma il faut g�rer les �toiles pour ttes les versions des films
		for(var i = 0; i<existingVersion.length ; i++){
			$("#rateState_"+codeFilmtoRateFor+"_"+existingVersion[i]).attr("src","img/small_tic_vert.gif");
			$("#etoilesTitle_"+codeFilmtoRateFor+"_"+existingVersion[i]).html("vote");
		}
	}else{
		//Gestion de la confirmation du vote pour les votes des films (sauf onglet cin�ma)
		$("#rateState_"+codeFilmtoRateFor).attr("src","img/small_tic_rouge.gif");
		$("#etoilesTitle_"+codeFilmtoRateFor).html("vote");
		//Gestion de la confirmation du vote pour les votes des films de l'onglet cin�ma
		//Si on est sur l'onglet cin�ma il faut g�rer les �toiles pour ttes les versions des films
		for(var i = 0; i<existingVersion.length ; i++){
			$("#rateState_"+codeFilmtoRateFor+"_"+existingVersion[i]).attr("src","img/small_tic_rouge.gif");
			$("#etoilesTitle_"+codeFilmtoRateFor+"_"+existingVersion[i]).html("vote");
		}
	}
}

function initStars(codeFilmUgcFilm){
	//Gestion de l'initialisation des �toiles pour le vote des films
	$("#imgEtoiles_"+codeFilmUgcFilm).attr("src","img/affinity/etoiles_affinite/oranges/etoile0_withTitle.gif");
	//Gestion de l'initialisation des �toiles pour le vote des films de l'onglet cin�ma
	//Si on est sur l'onglet cin�ma il faut g�rer les �toiles pour ttes les versions des films
	for(var i = 0; i<existingVersion.length ; i++){
		$("#imgEtoiles_"+codeFilmUgcFilm+"_"+existingVersion[i]).attr("src","img/affinity/etoiles_affinite/oranges/etoile0_withTitle.gif");
	}
}

function populateAffinity(userId){
	if(userId!=""){
		dwr_affinityRipen.getAffinity(userId, replyGetAffinity);
	}
}

var replyGetAffinity = function(affAndRate){
	//Si il existe un vote ou une affinit� valide
	if(affAndRate && affAndRate[0] && affAndRate[0].indexOf("_")!=-1){
		for(var i = 0; i<affAndRate.length; i++){
			//On explose la cha�ne afin de r�cup�rer les informations
			var tableau=affAndRate[i].split("_");
			var movieId = tableau[0];
			var rate = tableau[1];
			var aff = tableau[2];
			var reliability = tableau[3];

			//Pas de vote en BDD => on affiche l'affinit� de l'utilisateur
			if(rate==-1 || rate==0){
				var onMO;
				//Gestion de la pertinance
				//Affinit� pertinante >= 25
				if(reliability>=25){

					if(aff<1){
						$("#imgEtoiles_"+movieId).attr("src","img/affinity/etoiles_affinite/jaunes/etoile0_withTitle.gif");
						//Si on est sur l'onglet cin�ma il faut g�rer les �toiles pour ttes les versions des films
						for(var j = 0; j<existingVersion.length ; j++){
							$("#imgEtoiles_"+movieId+"_"+existingVersion[j]).attr("src","img/affinity/etoiles_affinite/jaunes/etoile0_withTitle.gif");
						}
						onMO = "changeImg('etoile"+0+"',"+movieId+",'jaunes')";
					}else if(aff<2){
						$("#imgEtoiles_"+movieId).attr("src","img/affinity/etoiles_affinite/jaunes/etoile1_withTitle.gif");
						for(var j = 0; j<existingVersion.length ; j++){
							$("#imgEtoiles_"+movieId+"_"+existingVersion[j]).attr("src","img/affinity/etoiles_affinite/jaunes/etoile1_withTitle.gif");
						}
						onMO = "changeImg('etoile"+1+"',"+movieId+",'jaunes')";
					}else if(aff<3){
						$("#imgEtoiles_"+movieId).attr("src","img/affinity/etoiles_affinite/jaunes/etoile2_withTitle.gif");
						for(var j = 0; j<existingVersion.length ; j++){
							$("#imgEtoiles_"+movieId+"_"+existingVersion[j]).attr("src","img/affinity/etoiles_affinite/jaunes/etoile2_withTitle.gif");
						}
						onMO = "changeImg('etoile"+2+"',"+movieId+",'jaunes')";
					}else if(aff<4){
						$("#imgEtoiles_"+movieId).attr("src","img/affinity/etoiles_affinite/jaunes/etoile3_withTitle.gif");
						for(var j = 0; j<existingVersion.length ; j++){
							$("#imgEtoiles_"+movieId+"_"+existingVersion[j]).attr("src","img/affinity/etoiles_affinite/jaunes/etoile3_withTitle.gif");
						}
						onMO = "changeImg('etoile"+3+"',"+movieId+",'jaunes')";
					}else if(aff<5){
						$("#imgEtoiles_"+movieId).attr("src","img/affinity/etoiles_affinite/jaunes/etoile4_withTitle.gif");
						for(var j = 0; j<existingVersion.length ; j++){
							$("#imgEtoiles_"+movieId+"_"+existingVersion[j]).attr("src","img/affinity/etoiles_affinite/jaunes/etoile4_withTitle.gif");
						}
						onMO = "changeImg('etoile"+4+"',"+movieId+",'jaunes')";
					}else{
						$("#imgEtoiles_"+movieId).attr("src","img/affinity/etoiles_affinite/jaunes/etoile5_withTitle.gif");
						for(var j = 0; j<existingVersion.length ; j++){
							$("#imgEtoiles_"+movieId+"_"+existingVersion[j]).attr("src","img/affinity/etoiles_affinite/jaunes/etoile5_withTitle.gif");
						}
						onMO = "changeImg('etoile"+5+"',"+movieId+",'jaunes')";
					}
					//Pour tous les onglets sauf cin�ma
					if(document.getElementById("area1_"+movieId)!=null &&
						document.getElementById("area2_"+movieId)!=null &&
							document.getElementById("area3_"+movieId)!=null &&
								document.getElementById("area4_"+movieId)!=null &&
									document.getElementById("area5_"+movieId)!=null){
						document.getElementById("area1_"+movieId).onmouseout=new Function(onMO);
						document.getElementById("area2_"+movieId).onmouseout=new Function(onMO);
						document.getElementById("area3_"+movieId).onmouseout=new Function(onMO);
						document.getElementById("area4_"+movieId).onmouseout=new Function(onMO);
						document.getElementById("area5_"+movieId).onmouseout=new Function(onMO);
					}
					//Pour onglet cin�ma
					for(var j = 0; j<existingVersion.length ; j++){
						if(document.getElementById("area1_"+movieId+"_"+existingVersion[j])!=null &&
						document.getElementById("area2_"+movieId+"_"+existingVersion[j])!=null &&
							document.getElementById("area3_"+movieId+"_"+existingVersion[j])!=null &&
								document.getElementById("area4_"+movieId+"_"+existingVersion[j])!=null &&
									document.getElementById("area5_"+movieId+"_"+existingVersion[j])!=null){
							document.getElementById("area1_"+movieId+"_"+existingVersion[j]).onmouseout=new Function(onMO);
							document.getElementById("area2_"+movieId+"_"+existingVersion[j]).onmouseout=new Function(onMO);
							document.getElementById("area3_"+movieId+"_"+existingVersion[j]).onmouseout=new Function(onMO);
							document.getElementById("area4_"+movieId+"_"+existingVersion[j]).onmouseout=new Function(onMO);
							document.getElementById("area5_"+movieId+"_"+existingVersion[j]).onmouseout=new Function(onMO);
						}
					}
				//Affinit� non pertinante < 25 => Soyez le premier � voter
				}else{
					//Pour tous les onglets sauf cin�ma
					//On affiche un vote null
					$("#imgEtoiles_"+movieId).attr("src","img/affinity/etoiles_affinite/oranges/etoile"+0+"_withTitle.gif");
					var onMO = "changeImg('etoile"+0+"',"+movieId+", 'oranges')";
					if(document.getElementById("area1_"+movieId)!=null &&
						document.getElementById("area2_"+movieId)!=null &&
							document.getElementById("area3_"+movieId)!=null &&
								document.getElementById("area4_"+movieId)!=null &&
									document.getElementById("area5_"+movieId)!=null){
						document.getElementById("area1_"+movieId).onmouseout=new Function(onMO);
						document.getElementById("area2_"+movieId).onmouseout=new Function(onMO);
						document.getElementById("area3_"+movieId).onmouseout=new Function(onMO);
						document.getElementById("area4_"+movieId).onmouseout=new Function(onMO);
						document.getElementById("area5_"+movieId).onmouseout=new Function(onMO);
						$("#etoilesTitle_"+movieId).html("soyez le premier &agrave; voter");
					}
					//Pour onglet cin�ma
					for(var j = 0; j<existingVersion.length ; j++){
						$("#imgEtoiles_"+movieId+"_"+existingVersion[j]).attr("src","img/affinity/etoiles_affinite/oranges/etoile"+0+"_withTitle.gif");
						var onMO = "changeImg('etoile"+0+"',"+movieId+", 'oranges')";
						if(document.getElementById("area1_"+movieId+"_"+existingVersion[j])!=null &&
							document.getElementById("area2_"+movieId+"_"+existingVersion[j])!=null &&
								document.getElementById("area3_"+movieId+"_"+existingVersion[j])!=null &&
									document.getElementById("area4_"+movieId+"_"+existingVersion[j])!=null &&
										document.getElementById("area5_"+movieId+"_"+existingVersion[j])!=null){
							document.getElementById("area1_"+movieId+"_"+existingVersion[j]).onmouseout=new Function(onMO);
							document.getElementById("area2_"+movieId+"_"+existingVersion[j]).onmouseout=new Function(onMO);
							document.getElementById("area3_"+movieId+"_"+existingVersion[j]).onmouseout=new Function(onMO);
							document.getElementById("area4_"+movieId+"_"+existingVersion[j]).onmouseout=new Function(onMO);
							document.getElementById("area5_"+movieId+"_"+existingVersion[j]).onmouseout=new Function(onMO);
							$("#etoilesTitle_"+movieId+"_"+existingVersion[j]).html("soyez le premier &agrave; voter");
						}
					}
				}
			//Il existe un vote en BDD => on affiche le vote de l'utilisateur
			}else{
				//Pour tous les onglets sauf cin�ma
				$("#imgEtoiles_"+movieId).attr("src","img/affinity/etoiles_affinite/oranges/etoile"+rate+"_withTitle.gif");
				var onMO = "changeImg('etoile"+rate+"',"+movieId+", 'oranges')";
				if(document.getElementById("area1_"+movieId)!=null &&
					document.getElementById("area2_"+movieId)!=null &&
						document.getElementById("area3_"+movieId)!=null &&
							document.getElementById("area4_"+movieId)!=null &&
								document.getElementById("area5_"+movieId)!=null){
					document.getElementById("area1_"+movieId).onmouseout=new Function(onMO);
					document.getElementById("area2_"+movieId).onmouseout=new Function(onMO);
					document.getElementById("area3_"+movieId).onmouseout=new Function(onMO);
					document.getElementById("area4_"+movieId).onmouseout=new Function(onMO);
					document.getElementById("area5_"+movieId).onmouseout=new Function(onMO);
					$("#etoilesTitle_"+movieId).html("vote");
				}
				//Pour onglet cin�ma
				for(var j = 0; j<existingVersion.length ; j++){
					$("#imgEtoiles_"+movieId+"_"+existingVersion[j]).attr("src","img/affinity/etoiles_affinite/oranges/etoile"+rate+"_withTitle.gif");
					var onMO = "changeImg('etoile"+rate+"',"+movieId+", 'oranges')";
					if(document.getElementById("area1_"+movieId+"_"+existingVersion[j])!=null &&
						document.getElementById("area2_"+movieId+"_"+existingVersion[j])!=null &&
							document.getElementById("area3_"+movieId+"_"+existingVersion[j])!=null &&
								document.getElementById("area4_"+movieId+"_"+existingVersion[j])!=null &&
									document.getElementById("area5_"+movieId+"_"+existingVersion[j])!=null){
						document.getElementById("area1_"+movieId+"_"+existingVersion[j]).onmouseout=new Function(onMO);
						document.getElementById("area2_"+movieId+"_"+existingVersion[j]).onmouseout=new Function(onMO);
						document.getElementById("area3_"+movieId+"_"+existingVersion[j]).onmouseout=new Function(onMO);
						document.getElementById("area4_"+movieId+"_"+existingVersion[j]).onmouseout=new Function(onMO);
						document.getElementById("area5_"+movieId+"_"+existingVersion[j]).onmouseout=new Function(onMO);
						$("#etoilesTitle_"+movieId+"_"+existingVersion[j]).html("vote");
					}
				}
			}
		}
	}else{
	//Si on n'arrive � r�cup�rer ni de vote ni d'afiinit�
		for(var k = 0; k<affAndRate.length; k++){
			var movieId = affAndRate[k];
			$("#imgEtoiles_"+movieId).attr("src","img/affinity/etoiles_affinite/jaunes/etoile0_withTitle.gif");
			onMO = "changeImg('etoile"+0+"',"+movieId+",'jaunes')";
			//Pour onglet cin�ma
			for(var l = 0; l<existingVersion.length ; l++){
				$("#imgEtoiles_"+movieId+"_"+existingVersion[l]).attr("src","img/affinity/etoiles_affinite/jaunes/etoile0_withTitle.gif");
			}
		}
	}
}
