// Tooltips 

(function($) { 
$.fn.toolTips = function(settings) {     
		options =  { 
		click: true,
		offsetX:    10, 
		offsetY:    -5,
		delay:      10,
		baseLine:   'top'
	}; 
	var options = $.extend(options, settings); 

	return this.each(function(){ 
		var $$ = $(this); 
		var aTitle   = $$.attr('title') || ''; 
		var aHref    = $$.attr('href')  || ''; 
		var aRel     = $$.attr('rel')   || ''; 
		var aToolTip = $("<div></div>");
		var aCaption = '';
		var aImage;
		var timer;
		var offsetX = 1;
		var offsetY = 1;

		// Quand le curseur survole un élément 
		$$.mouseover(function(e) {           
			// Supprime le Title pour éviter le tooltip par défaut du navigateur 
			$$.attr('title', '');    

			// Si un Title est présent, on fait un block pour la légende 
			if (aTitle) { 
				aCaption = '<div class="toolTip-caption"><span>'+ aTitle +'</span></div>'; 
			}

			// Si un attribut Rel est présent dans le lien et qu'il mene a une image 
			// on passe en mode Vignette 
			if (aRel.match(/\.(png|PNG|jpg|jpeg|JPG|JPEG|gif|GIF)$/)) { 
				aImage = $('<img src="'+ aRel +'" />');
				aToolTip = $('<div class="toolTip-thumbnail">'+ aCaption +'</div>'); 

			// Si le lien est un lien vers une image 
			// on passe en mode Prévisualisation 
//			} else if (aHref.match(/\.(png|jpg|jpeg|gif)$/)) { 
//				aImage = $('<img src="'+ aHref +'" />');
//				aToolTip = $('<div class="toolTip-picture">'+ aCaption +'</div>'); 

			// Sinon on pas en mode Texte
			} else if (aTitle) {
				aToolTip = $("<div class='toolTip-text'><span>"+ aTitle +"</span></div>");     
			} 

			// Le toolTip précédemment créé est ajouté au Body et masqué
			aToolTip.appendTo("body").hide().css({ position:'absolute', top:0, left:0 });

			// On attend le chargement de l'image éventuellement contenue
			// dans le toolTip pour ajuster le placement selon la hauteur finale
			if ((aImage)) {
				aImage.load(function() {
					aImage.prependTo(aToolTip);

					offsetX = options.offsetX;
					if (options.baseLine == 'bottom') {
						offsetY = options.offsetY - aToolTip.height();
					} else if (options.baseLine == 'middle') {
						offsetY = options.offsetY - (aToolTip.height() / 2);
					}

					// Place le toolTip aux coordonnées voulues
					aToolTip.css({
						left: parseInt(aToolTip.css('left')) + offsetX + "px",
						top:  parseInt(aToolTip.css('top'))  + offsetY + "px"                            
					});
				});
			}

			// On déplace le toolTip en meme temps que la souris 
			$$.mousemove(function(e) { 
				aToolTip.css({
					left: e.pageX + offsetX + "px",
					top:  e.pageY + offsetY + "px"                            
				});
			}); 

			// On attend quelques fractions de seconde avant d'afficher le toolTip
			timer = setTimeout( function() { aToolTip.show() }, options.delay);
		}) 

		// Quand le curseur ne survole plus un élément 
		$$.mouseout(function(e) { 
			clearTimeout(timer);
			// On remet le Title en place 
			$$.attr("title", aTitle);   
			// On supprime le suivi de déplacement 
			$$.unbind("mousemove");      
			// On supprime le toolTip 
			aToolTip.remove(); 
		});

		// Bloque éventuellement le click sur le lien
		$$.click(function() {
			return options.click;
		});     
	}); 
}; 
})(jQuery); 


// Drop Shadow Text 

(function($) {
	$.fn.textDropShadow = function(){
		$(this).html('<span class="mainChapterShadow">'+$(this).html()+'</span><span>'+$(this).html()+'</span>');
		return $(this);
	}
})(jQuery);

$(function(){
	$('#menu a.mainChapter').each(function(){$(this).textDropShadow();});
});


// Sous menus - gestion des bordures 

(function($) {
	$.fn.borderSubMenu = function(){
		$(this).html('<div class="subMenuTop">&nbsp;</div><div class="subMenuContent">'+$(this).html()+'</div><div class="subMenuBottom">&nbsp;</div>');
		return $(this);
	}
})(jQuery);

$(function(){
	$('#menu div.subMenu').each(function(){$(this).borderSubMenu();});
});


// Gestion des liens MP3 

function fileLinks() {
    var fileLink;
    if (document.getElementsByTagName('a')) {
        for (var i = 0; (fileLink = document.getElementsByTagName('a')[i]); i++) {
            if (Array.prototype.indexOf) {
                if (fileLink.href.indexOf('.mp3') != -1) {
                    fileLink.setAttribute('target', '_blank');
                    fileLink.className = 'mp3';
                }
            }
        }
    }
}



// Appel des fonctions 

$(document).ready(function() {

    fileLinks();

// Lazyload

//	$("img").lazyload({
//		placeholder : "../images/grey.gif",
//		effect      : "fadeIn"
//	});

	// Tooltips

	$('#page a').toolTips({ baseLine:'middle' } );
	//$('#page img').toolTips({ baseLine:'middle' } );

	// Toggle Lists
	
	$('#citybox').hide();
	$('a#citytoggle').click(function() {
		$('#citybox').toggle(300);
		return false;
	});

	$('#chronobox').hide();
	$('a#chronotoggle').click(function() {
		$('#chronobox').toggle(100);
		return false;
	});

	$('#geobox').hide();
	$('a#geotoggle').click(function() {
		$('#geobox').toggle(100);
		return false;
	});

	$('#typebox').hide();
	$('a#typetoggle').click(function() {
		$('#typebox').toggle(100);
		return false;
	});
	
	$('#critcompbox').hide();
	$('a#critcomptoggle').click(function() {
		$('#critcompbox').toggle(300);
		return false;
	});
	
	$('a#brevestoggle').click(function() {
		$('#brevesbox').toggle();
		$('#localesbox').hide();
		return false;
	});
	
	$('#localesbox').hide();
	$('a#localestoggle').click(function() {
		$('#localesbox').toggle();
		$('#brevesbox').hide();
		return false;
	});

        /*
	$('#DPE').hide();
	$('a#DPEtoggle').click(function() {
		$('#DPE').toggle(300);
		return false;
	});
	
	$('#GES').hide();
	$('a#GEStoggle').click(function() {
		$('#GES').toggle(300);
		return false;
	});
	*/
       
	$('#span-impression-valid').hide();
	$('#div-impression-acc').hide();
	$('#div-impression-qua').hide();
	$('#div-impression-cad').hide();
	$('a#toggleRestoVotes').click(function() {
		$('#span-impression-valid').toggle();
		$('#div-impression-acc').toggle();
		$('#div-impression-qua').toggle();
		$('#div-impression-cad').toggle();
		return false;
	});
	
});


