/**
 * berengerzyla.info
 *	b_ui.js
 *
 *	Gestion diverse des comportements / liens
 */
 
//<![CDATA[
	
	/**
	 * Prototype de la function click()
	 * Permet de simuler un click utilisateur
	 * Utilisation par Element(link).click()
	 */
	HTMLElement.prototype.click = function() {
		var evt = this.ownerDocument.createEvent('MouseEvents');
		evt.initMouseEvent('click', true, true, this.ownerDocument.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
		this.dispatchEvent(evt);
	}
	
	/**
	 * Gestion du menu (sidebar)
	 */
	function clickMenu(event) {
		Event.stop(event);
		
		var menu = $$('#sidebar_content');
		var menubar = menu[0];
		if(menubar.hasClassName("sidebar_is_down")) {
			Effect.SlideUp(menubar);
			menubar.removeClassName("sidebar_is_down");
			Event.element(event).removeClassName("sidebar_is_down");
		}
		else {
			Effect.SlideDown(menubar);
			menubar.addClassName("sidebar_is_down");
			Event.element(event).addClassName("sidebar_is_down");
		}
	}
	
	function handleMenu() {
		$$('a#sidebar_handler').each( function(e) {
			Event.observe(e, 'click', clickMenu);
		});
	}
	
	function handleExternalLinks() {
		if(!document.getElementsByTagName) return;
	
		$$('a[rel="external"]').each(function(link){
			if(link.readAttribute('href') != '' && link.readAttribute('href') != '#'){
				link.writeAttribute('target','_blank');
			}
		});
	}
	
	/**
	 * Chargement des comportements
	 */
	document.observe('dom:loaded', function(){
		Shadowbox.init();
		
		handleMenu();
	
		var areas=$$('area');
		if(areas.length != 0){
			Shadowbox.setup(areas, {
				continuous:			false
			});
		}
	});
	
	Event.observe(window, 'load', function() {
		handleExternalLinks();
	});
	
//]]>