diapobg = new Object();
diapobg.myEffectShow = null;
diapobg.myEffectHide = null;
diapobg.myEffectBg = null;

var DIAPO_BG_SHOW = false;
diapobg.background_visible = false;

/* ---------------------------------------------------------------------
 * DIAPO / WALLPAPER GENERAL
 * ---------------------------------------------------------------------
 */
/* slideshow des diapo  */
diapobg.slideshow = function() {
	
	idiapo_current++;
	if(idiapo_current > idiapo_max) {
		idiapo_current = 0;
	}
	these = $('nav_diapo-' + idiapo_current);
	diapobg.show(these);
}



/* click sur une diapo : on chope le lien image et on le met en bg */
diapobg.show = function(these) {
	image = these.href;
	var m = $('diapo');
	var fx = new Fx.Tween(m,{
			duration: 1000,
			onComplete: function(){ 
				m.setStyle('background-image','url(' + image + ')');
				m.fade('in');
			}
	});
	fx.start('opacity',1,0);

	$('nav_diapos').getElements('a.select').each(
		function(el) {
			elspan = el.getElement('span');
			var fxdiapo = new Fx.Tween(elspan,{
					duration: 1000,
					onComplete: function(){ 
							these.addClass("select");
							el.removeClass("select");
							elspan.setStyle('opacity',0.7);
					}					
			});
			fxdiapo.start('opacity',1,0);	
		}
	);

	
	tmps = these.id.split("-");
	idiapo_current = tmps[1];
	
	if(idiapo_idinternval != "") {
		$clear(idiapo_idinternval);
	}
	idiapo_idinternval = diapobg.slideshow.periodical(1000 * idiapo_interval);
	return false;
}


/* ---------------------------------------------------------------------
 * DIAPO / WALLPAPER HOME
 * ---------------------------------------------------------------------
 */
 /* fonction slideshow */
diapobg.slideshowhome = function() {

	idiapo_current++;
	if(window.console) { console.log("diapobg.slideshowhome : " + idiapo_current); }
	if(idiapo_current > (idiapo_max-1)) {
		idiapo_current = 0;
	}
	diapobg.showhome();
}


/* fonction voir le bg current (idiapo_current) */
diapobg.showhome = function() {
	// le bg
	image = idiapo_sources[idiapo_current];
	var m = $('diapo');
	var fx = new Fx.Tween(m,{
			duration: 1000,
			onComplete: function(){ 
				m.setStyle('background-image','url(' + image + ')');
				m.fade('in');
			}
	});
	fx.start('opacity',1,0);
	
	// la diapo
	diapobg.showdiapohome();
	
	// le timer
	if(idiapo_idinternval != "") {
		$clear(idiapo_idinternval);
	}
	idiapo_idinternval = diapobg.slideshowhome.periodical(1000 * idiapo_interval);
	return false;
}

diapobg.showdiapohome = function() {
	// la miniature (c'est la prochaine image)
	idiapo_current_next = idiapo_current + 1;
	if(idiapo_current_next > (idiapo_max-1)) {
		idiapo_current_next = 0;
	}	
	image_thumb = idiapo_sources[idiapo_current_next];
	image_thumb = image_thumb.replace(/fulls/,"thumbs");
	//$('nav_diapos_thumb').src = image_thumb;

	m = $('nav_diapos_thumb');
	var fxdiapo = new Fx.Tween(m,{
			duration: 1000,
			onComplete: function(){ 
				m.src = image_thumb;
				m.fade('in');
			}					
	});
	fxdiapo.start('opacity',1,0);		
}



/* ---------------------------------------------------------------------
 * WALLPAPER / BACKGOUND SHOW ET HIDE
 * ---------------------------------------------------------------------
 */
/* show hide du background */
diapobg.sh = function() {
	if(DIAPO_BG_SHOW == false) {
		diapobg.show_bg();
	}
	else {
		diapobg.hide_bg();
	}
}

/* hide du background (affiche les div au dessus) */
diapobg.hide_bg = function() {
	if(window.console) { console.log("diapobg.hide_bg start"); }
	//$('under_boxes').setStyle("cursor","");
	//$('page').setStyle("cursor","");
	DIAPO_BG_SHOW = false;
	// masque le bouton pour afficher le bg
	diapobg.sh_open_content(false);
	// le timer : on le remet car il a été retiré pour voir le bg
	if(idiapo_idinternval != "") {
		$clear(idiapo_idinternval);
	}
	idiapo_idinternval = diapobg.slideshowhome.periodical(1000 * idiapo_interval);	
	if(window.console) { console.log("diapobg.hide_bg end"); }
}
/* show du background (masque les div au dessus) */
diapobg.show_bg = function() {
	if(window.console) { console.log("diapobg.show_bg start"); }
	
	var fx = new Fx.Tween('content',{
			duration: 500,
			transition: Fx.Transitions.Expo.easeIn,
			onComplete: function(){ 
				$('content').setStyle("display","none");
				//$('content').setStyle("margin-right","0"); 	
				// on affiche le bouton pour afficher le bg 				
				diapobg.sh_open_content(true);				
			}
	});
	fx.start('margin-right',0,-1000);		
		
	$('nav_diapos').setStyle("display","none"); 
	$('sizehauteur').setStyle("display","block");	
	//$('under_boxes').setStyle("cursor","pointer");
	//$('page').setStyle("cursor","pointer");
	DIAPO_BG_SHOW = true;
	
	// le timer : on le vire car on veut voir le bg
	if(idiapo_idinternval != "") {
		$clear(idiapo_idinternval);
	}	
	if(window.console) { console.log("diapobg.show_bg end");}
}

diapobg.sh_open_content = function(show) {
	if(show == true) {
		if(window.console) console.log("diapobg.sh_open_content : open start");
		diapobg.background_visible = true;
		// si y a un effet d'open ben on le close
		if(diapobg.myEffectHide != null) {
			diapobg.myEffectHide.cancel();
			diapobg.myEffectHide = null;
		}
			
		// on met en affichage car au depart display:none
		$('open_content').setStyle("margin-right", -130);
		$('open_content').setStyle("display", "block");
		diapobg.myEffectShow = new Fx.Morph('open_content', {duration:1000, transition: Fx.Transitions.Expo.easeOut});
		diapobg.myEffectShow.start({
				'margin-right': [-1000, 0]
		});
		
		if(window.console) console.log("diapobg.sh_open_content : open end");
	}
	else {
		diapobg.background_visible = false;
		// note : inutile de faire disparaitre, elle n'est plus visible suite ŕ l'effet
		if($('open_content').getStyle("margin-right") == '0px' || diapobg.myEffectShow != null ) {
			if(window.console) console.log("diapobg.sh_open_content : close start");	
			// si y a un effet d'open ben on le close
			if(diapobg.myEffectShow != null) {
				diapobg.myEffectShow.cancel();
				diapobg.myEffectShow = null;
			}
			diapobg.myEffectHide = new Fx.Morph('open_content', {
				duration: 500, 
				transition: Fx.Transitions.Sine.easeIn,
					onComplete: function() { 
						// fin de rentrer le bouton "close", on raffiche notre bloc principal
						
						$('content').setStyle("display","");
						

						var fx = new Fx.Tween('content',{
								duration: 500,
								transition: Fx.Transitions.Expo.easeOut,
								onComplete: function(){ 	
									$('sizehauteur').setStyle("display","none");
									$('nav_diapos').setStyle("display","");
								}
						});
						fx.start('margin-right',-1000,0);
						
					}				
				});
			diapobg.myEffectHide.start({
					'margin-right': [0, -130]
			});
			if(window.console) console.log("diapobg.sh_open_content : close end");
		}
		
	}
}



