/** NRJ COMMON FONCTIONS
** NRJ GROUP
** Tous droits réservés (c) Copyright 2008, NRJ GROUP
**
** @MENU
** @HEADER
** @TOGGLE
** @SWITCH
** @CARROUSELTRANSI
** @CARROUSELDIRECT
** @AUTRES
**/


/** ----------------------------------------- @MENU -------------------------------------------- **/
/** ----------------------------------------------------------------------------------------------- **/
/**
* @deprecated
**/
var followHiddenLink = function ( link, target ){
	document.location.href = link;
}

/**
 * Decode and redirect to hidden url.
 * @param string urlscrambled
 * @param target ('blank' / '_blank')
 */
var scrambleJS = function (urlscrambled, target, e){
	// url on target blank default
	if (target == '_blank' || target == 'blank') {
		var blank = true;
	}else {
		var blank = false;
	}

	// detection click midle button
	// nestcape, konqueror, gecko, opera >= 8.0: e.wich = 2
	// ie: e.button = 4
	// opera < 8.0: e.button = 3
	if( e.which && e.which == 2 ) blank = true;
	else if( e.button && e.button == 4 ) blank = true;

	// right click
	if( e.which && e.which == 3 ) blank = true;
	else if( e.button && e.button == 2 ) blank = true;

	var url  = '';
	urlscrambled=urlscrambled.substring(1);
	url = urlscrambled.replace(/\|/g,'/').replace(/@/g,'.');
        
	if(blank == true)
	{
		window.open(url);
	}
	else
	{
		window.location.href=url;
	}
}
	
/** ----------------------------------------- @HEADER -------------------------------------------- **/
/** ----------------------------------------------------------------------------------------------- **/
var SwitchHeaderOn = function (element,id,total)
{
	/* Variable */
	var currentLeft = 0;

	/* Récupération position left */
	var currentElement = document.getElementById(element+'_'+id);
	currentLeft = currentElement.offsetLeft + (currentElement.clientLeft != null ? currentElement.clientLeft : 0);
	
	/* Positionner over */
	if(currentLeft > 412)
	{document.getElementById(element+'_over_'+id).style.left = '384px';}
	else{document.getElementById(element+'_over_'+id).style.left = currentLeft+'px';}
	
	/* Test over déjà affiché */
	if(document.getElementById(element+'_over_'+id).style.display == 'block')
	{return false}
	
	/* Cacher tous over */
	for(var i=1;i<=total;i++)
	{document.getElementById(element+'_over_'+i).style.display = 'none';}
	
	/* Afficher over */
	document.getElementById(element+'_over_'+id).style.display = 'block';
}

var SwitchHeaderOverOut = function (element,id,mouseX,mouseY)
{
	if(!hasMouseOn(element,id,mouseX,mouseY))
		document.getElementById(element+'_over_'+id).style.display = 'none';
}
// Retourne la position d'un élément donné
var elementPosition = function(element,id)
{
	var x = y = 0;
	var obj = document.getElementById(element+'_over_'+id);
	if (obj.offsetParent)
		{
			do
				{
					x += obj.offsetLeft;
					y += obj.offsetTop;
				}
			while (obj = obj.offsetParent);
		}
	return [x,y];
}
// Vérifie si la souris est positionnée sur un élément donné
var hasMouseOn = function(element,id,mouseX,mouseY)
{
	var position = elementPosition(element,id);
	if((mouseX < position[0]) || (mouseX > (position[0] + 263)) || (mouseY < position[1]) || (mouseY > (position[1] + 61)))
		return false;
	return true;
}
/*	elementPosY = document.getElementById(element+'_over_'+id).offsetTop;
	
	if((mouseX < elementPosX) || (mouseX > (elementPosX + 263)) || (mouseY < elementPosY) || (mouseY > (elementPosY + 62)))
	{document.getElementById(element+'_over_'+id).style.display = 'none';}
}*/

/** ----------------------------------------- @TOGGLE ----------------------------------------- **/
/** ----------------------------------------------------------------------------------------------- **/
var elementToggle = function (id, prefixeElement, prefixeContent, prefixeFooter){
	if(document.getElementById(prefixeContent+'_'+id).style.display != 'none'){
		document.getElementById(prefixeContent+'_'+id).style.display = 'none';
		
		if (document.getElementById(prefixeElement+'_'+id).childNodes[1].className == 'close')
		{document.getElementById(prefixeElement+'_'+id).childNodes[1].className='select';}
		
		if (document.getElementById(prefixeElement+'_'+id).childNodes[0].className == 'close')
		{document.getElementById(prefixeElement+'_'+id).childNodes[0].className='select';}	
		
		if (document.getElementById(prefixeElement+'_'+id).childNodes[1].innerHTML == 'Replier')
		{document.getElementById(prefixeElement+'_'+id).childNodes[1].innerHTML='Déplier';}
		
		if (document.getElementById(prefixeFooter+'_'+id).childNodes[0].innerHTML='- d\'infos')
		{document.getElementById(prefixeFooter+'_'+id).childNodes[0].innerHTML='+ d\'infos';}
	}else{
		document.getElementById(prefixeContent+'_'+id).style.display = 'block';
		if (document.getElementById(prefixeElement+'_'+id).childNodes[1].className == 'select'){
			document.getElementById(prefixeElement+'_'+id).childNodes[1].className='close';
		}
		
		if (document.getElementById(prefixeElement+'_'+id).childNodes[0].className == 'select'){
			document.getElementById(prefixeElement+'_'+id).childNodes[0].className='close';
		}
		
		if (document.getElementById(prefixeElement+'_'+id).childNodes[1].innerHTML == 'Déplier'){
			document.getElementById(prefixeElement+'_'+id).childNodes[1].innerHTML='Replier';
		}
		
		if (document.getElementById(prefixeFooter+'_'+id).childNodes[0].innerHTML='+ d\'infos'){
			document.getElementById(prefixeFooter+'_'+id).childNodes[0].innerHTML='- d\'infos';
		}
	}
}

/** ----------------------------------------- @SWITCH ----------------------------------------- **/
/** ----------------------------------------------------------------------------------------------- **/
var elementSwitch = function (id, total, prefixeElement, prefixeContent, prefixeFooter){
	if(document.getElementById(prefixeContent+'_'+id).style.display == 'block'){
		document.getElementById(prefixeElement+'_'+id).className='close';
		document.getElementById(prefixeContent+'_'+id).style.display = 'none';
	}else{
		for (i=1; i<=total; i++){
			document.getElementById(prefixeElement+'_'+i).className='close';
			document.getElementById(prefixeContent+'_'+i).style.display = 'none';
		}
		
		document.getElementById(prefixeElement+'_'+id).className='select';
		document.getElementById(prefixeContent+'_'+id).style.display = 'block';
	}
}

/** ----------------------------------------- @CARROUSELTRANSI ------------------------------------- **/
/** ----------------------------------------------------------------------------------------------- **/
var carrouselSwitch = function (action, id, total, imgWidth, imgMargin, imgVues){
	var marginOrigin = parseInt(document.getElementById('js-carousel_'+id).style.marginLeft, 10);
	var marginValeur = imgWidth + imgMargin;
	var marginNew = 0;
	var carrouselState = (((parseInt(total, 10) - imgVues) * marginValeur) - marginValeur) * (-1);
	
	if (action == 'left'){
		if (marginOrigin != 0){
			marginNew = marginOrigin + marginValeur;
		}else {
			marginNew = marginOrigin;
		}
	}else if (action == 'right'){
		if (marginOrigin >= (carrouselState)){
			marginNew = marginOrigin - marginValeur;
		}else{
			marginNew = marginOrigin;
		}
	}
	document.getElementById('js-carousel_'+id).style.marginLeft = marginNew.toString() + "px";
}


/** ----------------------------------------- @CARROUSELDIRECT ------------------------------------- **/
/** ----------------------------------------------------------------------------------------------- **/
var carrouselDirect = function (action, id, total){
	var current = document.getElementById('js-carrousel_'+id+'_img_current').innerHTML;
	
	if (action == 'left'){
		if(current == 1){var currentMin = total;}
		else{var currentMin =  eval(current) - 1;}
		
		document.getElementById('js-carrousel_'+id+'_img_'+current).style.display = 'none';
		document.getElementById('js-carrousel_'+id+'_img_'+currentMin).style.display = 'block';
		document.getElementById('js-carrousel_'+id+'_img_current').innerHTML = currentMin;
	}
	
	else if (action == 'right'){
		if(current == total){var currentPlus = 1;}
		else{var currentPlus = eval(current) + 1;}
	
		document.getElementById('js-carrousel_'+id+'_img_'+current).style.display = 'none';
		document.getElementById('js-carrousel_'+id+'_img_'+currentPlus).style.display = 'block';
		document.getElementById('js-carrousel_'+id+'_img_current').innerHTML = currentPlus;
	}
}

/** ----------------------------------------- @AUTRES ------------------------------------- **/
/** ----------------------------------------------------------------------------------------------- **/

var submit = function(link){
	document.form_inscription.action = link;
	document.form_inscription.submit();
}

var checkedTel = function(idphone, idtype){
	var phone = document.getElementById(idphone).value;
	if (phone == '06'){
		return false;
	}else{
		if((phone.substr(0,2) == '06') && (phone.length == 10) && (document.getElementById(idtype).value == 'Mobile')){
			return true;
		}
	}
	return false;
}

var submitConnect = function(){
	document.form_connexion.submit();
}

var submitInscri = function(){
	document.form_register.submit();
}

var crss = function(id) {
	var image_closed = "titre";
	var image_open = "titre_select";
	if(document.getElementById('c'+id).style.display != 'none'){
    	document.getElementById('c'+id).style.display = 'none';
    	document.getElementById('b'+id).className = image_closed;
	}else{
		document.getElementById('c'+id).style.display = '';
    	document.getElementById('b'+id).className = image_open;
	}
}

var crssheader = function(id) {
	var image_closed = "why";
	var image_open = "why";
	if(document.getElementById('c'+id).style.display != 'none'){
    	document.getElementById('c'+id).style.display = 'none';
    	document.getElementById('b'+id).className = image_closed;
	}else{
		document.getElementById('c'+id).style.display = '';
    	document.getElementById('b'+id).className = image_open;
	}
}

var MaxCoeurs = 5;

var TransmitVote= function(PK, Position, Type){
	Nrj_Library.Ajax(url_base + "/vote/register", "tool" + Position, {note: Position, key: PK, type: Type});
}

var TransmitVoteNRJPlayer = function(PK, Position, Type){
	Nrj_Library.Ajax(url_base + "/vote/register", "player_vote", {player: 'actived', note: Position, key: PK, type: Type});
}

var CoeurPosition = function(Position){
	CoeurFlush();
	for (i=1; i <= Position; i++){
		document.getElementById('rate_'+i).className = "rate maxi full";
	}
}

var CoeurReinit = function(){
	CoeurFlush()
	for (i=1; i <= InitialCoeurs; i++){
		document.getElementById('rate_'+i).className = "rate maxi full";
	}
}

var CoeurFlush = function(){
	for (i=1; i <= MaxCoeurs; i++){
		document.getElementById('rate_'+i).className = "rate maxi empty";
	}
}

var MaxCoeursH = 5;

var TransmitVoteH = function(PK, Position, Type, Header){
	if( !Header ) Header = '_h';
	Nrj_Library.Ajax(
			url_base + "/vote/register",
			'!tool' + Position + Header, 
			{note: Position, key: PK, type: Type}
	); 
}

var CoeurPositionH = function(Position, Header){
	if( !Header ) Header = '_h';
	CoeurFlushH(Header);
	// Coeurs pleins
	for (i=1; i <= Position; i++){
		document.getElementById('rate_' + i + Header).className = "rate maxi full";
	}
}

var CoeurReinitH = function(Header, NbCoeur){
	if( !Header ) Header = '_h';
	if( typeof NbCoeur == 'undefined' ) NbCoeur = InitialCoeursH;
	CoeurFlushH(Header)
	for (i=1; i <= NbCoeur; i++){
		document.getElementById('rate_' + i + Header).className = "rate maxi full";
	}
}

var CoeurFlushH = function(Header){
	if( !Header ) Header = '_h';
	for (i=1; i <= MaxCoeursH; i++){
		document.getElementById('rate_' + i + Header).className = "rate maxi empty";
	}
}

var report = function(id, type){
	var domin = "http://" + window.location.hostname;
	window.open (domin + '/alerter/?content_id=' + type + id, 'Abuse' +id, config='height=500, width=750, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, directories=no, status=no');
}

var simpleCollapse = function(id) {
	if( ! document.getElementById(id) ) return;
	var header = document.getElementById("header_quick_access_unfolded");
	header.style.height = 'auto';
	header.style.display = 'block';
	if(document.getElementById(id).style.display != 'none'){
		if(animation == false){
			animation = true;
			new Effect.BlindUp(document.getElementById(id), {afterFinish: function() { document.getElementById(id).style.display = 'none'; animation = false; } } );
		}
		//	document.getElementById(id).style.display = 'none';
	}else{
		if(animation == false){
			animation = true;
			new Effect.BlindDown(document.getElementById(id), {afterFinish: function() { document.getElementById(id).style.display = ''; animation = false; } } );
		}
		
		// document.getElementById(id).style.display = '';
	}
}

var simpleClose = function(id) {
	document.getElementById(id).style.display = 'none';
}

var simpleToggle = function(id){
	if(document.getElementById(id).style.display != 'none'){
		document.getElementById(id).style.display = 'none';
		if(id == 'intro_toggle'){document.getElementById('footer-block-span').childNodes[0].nodeValue='en savoir +';}
	}else{
		document.getElementById(id).style.display = 'block';
		if(id == 'intro_toggle'){document.getElementById('footer-block-span').childNodes[0].nodeValue='Replier';}
	}
}

var recherche = {
	exec:function(valeur){
		valeur = document.getElementById(valeur);
		if(document.getElementById('rechercheField').value != 'RECHERCHE')
		{document.location = 'http://www.nrj.fr/search/?recherche='+valeur.value;}
	}
}

var openRadio = function(url, type, webradio_width, webradio_height){
	if(type == 'webradio'){return popUp(url,webradio_width,webradio_height,0);}
	else{return popUp(url,live_width,live_height,0);}
}

var popUp = function(url,largeur,hauteur,scrolling){
	window.open(url,'popup','width=' + largeur + ',height=' + hauteur + ',left='+(Math.round((screen.width-largeur)/2))+',top='+(Math.round((screen.height-hauteur)/2))+',scrollbars='+scrolling);
}

var ecouter = function(){
	openRadio('http://player.nrj.fr/V4/nrj/webradios/index_V2.html?webradio=nrj', 'webradio', '768', '711');
}

var hits = 0;
var canvote = function(){
    var els = document.getElementsByClassName("vote");
    for(i=0; i < els.length; i++){
        els[i].innerHTML = '<a class="button_inactif" href="#"></a>';
    }
}

var getXhr = function(){
	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;
}

/* Topwebradio*/

var myTimer;
//var myTimerValue = 6000;
var myTimerIsOn = 1;
var myCurrentPageTopWebradio = 0;
var myCurrentPageTwitterCarrousel = 0;
var isUserAction = 0;
var showId;
var displayBloc = function(hideId,displayId)
{
    var show = document.getElementById(displayId);
    var hide = document.getElementById(hideId);
    hide.style.display = 'none';
    show.style.display = 'block';
}

function TopwebradioCallPage(choice,bloc)
{
	if(bloc=='sidebar'){
		myCurrentPageTopWebradio=myCurrentPageTopWebradioSidebar;
		maxPageTopWebradio=maxPageTopWebradioSidebar;
	}
	if(bloc=='header'){
		myCurrentPageTopWebradio=myCurrentPageTopWebradioHeader;
		maxPageTopWebradio=maxPageTopWebradioHeader;
	}
		
	if(choice=='next'){
		if(myCurrentPageTopWebradio==maxPageTopWebradio){
			showId=1;
		}else{
			showId=myCurrentPageTopWebradio+1;
		}
	}
	if(choice=='previous'){
		if(myCurrentPageTopWebradio==1){
			showId=maxPageTopWebradio;
		}else{
			showId=myCurrentPageTopWebradio-1;
		}
	}
	idHide=myCurrentPageTopWebradio;
	if(bloc=='sidebar')
		myCurrentPageTopWebradioSidebar=showId;
	if(bloc=='header')
		myCurrentPageTopWebradioHeader=showId;
	displayBloc(bloc+'_webradio_content_'+idHide,bloc+'_webradio_content_'+showId);
	if(bloc=='sidebar')
		displayBloc('webradios_de_a_'+idHide,'webradios_de_a_'+showId);
	return false;
}


function TopwebradioTimer(bloc)
{
	if (typeof(timerWebradio) == 'undefined') 
		timerWebradio = 12000;
	
	if(myTimerIsOn){
		TopwebradioCallPage('next',bloc);
		myTimer = setTimeout("TopwebradioTimer('"+bloc+"')",timerWebradio);
	}
}

function TopwebradioStop()
{
	clearTimeout(myTimer);
	myTimerIsOn = 0;
}

