var menus=new Array();
var albums=new Array();
var submenus= new Array();
var thumbnails;

function cleanFondImage(){
	var t=$('fond');
	t.style.backgroundImage="";
}

function hideText(){
	$('texte').innerHTML="";
	$('vignettes').innerHTML="";
}

function getMenu(){
	hideText();
	var ajax = new Ajax.Request('agp/getMenus.php',
			  {
			    method:'post',
			    parameters: {action:'refreshmenu'},
			    onSuccess: function(transport){
			      var response = transport.headerJSON;
			      var html="";
			      response.each(
			    		  function(menu){
			    			  var id="HMENU"+menu.id;
				    		  this.menus.push(menu.id);
			    			  html+="<a onclick=\"closeMenu(); hightLightMenu('"+menu.id+"'); getSubMenu("+menu.id+"); getTextMenu("+menu.id+") \" style='cursor:pointer; margin-left:7px;' id='"+id+"'>"+menu.title+"</a><br />";
				    		  html+="<div class='zonesousmenu' id='menu"+menu.id+"'></div>";
			    		  }
	    		  );
			      
		    	  $('menuprincipal').innerHTML=html;
			    },
			    onFailure: function(){ 
			    	alert('Error'); 
			    }
			  });
}

function hightLightMenu(menu){
	this.menus.each(
			function(menu){
				$("HMENU"+menu).style.color='#B3B3B3';
			}
	);
	$("HMENU"+menu).style.color='#FFFFFF';
}

function hightLightSubMenu(subMenu){
	this.submenus.each(
			function(subMenu){
				try{
					$("HSUBMENU"+subMenu).style.color='#B3B3B3';
				}catch (e) {

				}
			}
	);
	try {
		$("HSUBMENU"+subMenu).style.color='#FFFFFF';
	}catch (e){

	}
}

function hightLightAlbum(album){
	this.albums.each(
			function(album){
				try {
					$("HALBUM"+album).style.color='#B3B3B3';
				} catch (e) {

				}
			}
	);
	try {
		$("HALBUM"+album).style.color='#FFFFFF';	
	} catch (e) {
	
		}
	
}

function closeMenu(){
	this.menus.each(
			function(id){
				$("menu"+id).innerHTML="";
				$("menu"+id).style.display="none";
			}
	);
}
function getTextMenu(id){
	hideText();
	var ajax = new Ajax.Request('agp/getTextMenu.php',{
			    method:'POST',
			    parameters: {idMenu:id},
			    onSuccess: function(transport){
		    	  $('image').innerHTML=transport.responseText;
			    },
				  onFailure: function(){ 
				    alert('Error'); 
				  }
			    
			  });
}
function getSubMenu(id){
	cleanFondImage();
	hideText();
	var ajax = new Ajax.Request('agp/getSubMenus.php',
			  {
			    method:'get',
			    parameters: {idMenu:id},
			    onSuccess: function(transport){
			      var isFirst = true;
			      var response = transport.headerJSON;
			      var html="";
			      response.each(
			    		  function(submenu){
			    			  this.submenus.push(submenu.id);
			    			  if(isFirst) {
			    				  getAlbum(submenu.id, id);
			    				  hightLightSubMenu(submenu.id);
			    				  isFirst = false;
			    			  } 
			    			  
			    			  html+="<a id='HSUBMENU"+submenu.id+"' onclick='getAlbum("+submenu.id+","+id+"); hightLightSubMenu("+submenu.id+")' style='cursor:pointer;'>"+submenu.title+"</a><br>";
			    			  html+="<div class='zonealbum'id='albummenu"+submenu.id+"'></div>";
			    		  }
	    		  );
			      html+="<div id='SpaceSubMenu'></div>";
		    	  if($('menu'+id).innerHTML==""){
		    		  $("menu"+id).style.display="block";
		    		  $('menu'+id).innerHTML=html;  
		    	  }else{
		    		  $('menu'+id).innerHTML="";
		    		  $("menu"+id).style.display="none";
		    	  }
		    },
			    onFailure: function(){ 
			    	alert('Error'); 
			    }
			  });
}

function getAlbum(id,id_menu){
	hideText();
	var ajax = new Ajax.Request('agp/getAlbum.php',
			  {
			    method:'get',
			    parameters: {idAlbum:id},
			    onSuccess: function(transport){
			      var response = transport.headerJSON;
			      var html="";
			      var firstAlbum;
			      var isFirst = true;
			      this.submenus.each(
			    		  function(submenuid){
			    			  try {
				    			$("albummenu"+submenuid).innerHTML="";
				    			$("albummenu"+submenuid).style.display="none";
							} catch (e) {
								// TODO: handle exception
							}  
			    		  }
			      );
			      response.each(
			    		  function(album){
			    			  if(isFirst){
			    				  getThumbnail(album.id);
			    				  hightLightAlbum(album.id);
			    				  isFirst=false;
			    				  firstAlbum=album.id;
			    			  }
			    			  this.albums.push(album.id);
			    			  html+="<a id='HALBUM"+album.id+"' onclick='hightLightAlbum("+album.id+"); getThumbnail("+album.id+")' style='cursor:pointer;'>"+album.title+"</a><br>";	 
			    		  }
	    		  );
			      html+="<br>";
			      if($('albummenu'+id).innerHTML==""){
			    	  $('albummenu'+id).innerHTML=html;
			    	  $('albummenu'+id).style.display="block";
			      }else{
			    	 $('albummenu'+id).innerHTML="";
			    	 $('albummenu'+id).style.display="none";
			      }
			      hightLightAlbum(firstAlbum);
			    },
			    onFailure: function(){ 
			    	alert('Error'); 
			    }
			  });
}
function showImage(img){
	$('image').innerHTML="<img class='image' align='right' src='safe/"+img+"'>";
}

function getThumbnail(id){
	hideText();
	var ajax = new Ajax.Request('agp/getImagesByAlbum.php',
			  {
			    method:'get',
			    parameters: {idAlbum:id},
			    onSuccess: function(transport){
		    	this.FirstClickOnAlbum = true;
		    	$('vignettes').innerHTML="";
		    	thumbnails = transport.headerJSON;
    			  showThumbnail(0);		 
			    },
			    onFailure: function(){ 
			    	alert('Error'); 
			    }
			  });
}

function showThumbnail(page){
	  var sizePage=7;
	  var countImages = thumbnails.size();
	  var nbPages = Math.ceil(countImages/sizePage);
	  if(this.FirstClickOnAlbum == true){
		showImage(thumbnails[0].image);
		getImageInfo(thumbnails[0].id);
		this.FirstClickOnAlbum = false;
	  }
	  if(page!=0){
		 html="<img style='cursor:pointer;' class='cursor' onClick='showThumbnail("+(page-1)+");' border='0' alt='images suivantes' src='images/hautfonce.gif'/>";
	  }else{
		  html="<img border='0' alt='images suivantes' src='images/hautfonce.gif'/>";  
	  }
	  html+="<div id='zonevignette'>";
	  for(var cpt=0;cpt<sizePage; cpt++){
		  var idImage=cpt+(page*sizePage);
		  if(idImage>=countImages)break;
		  html+="<div id='imagevinette'><div id='bordure'><img ";
    	  if(thumbnails[idImage].vertical==1){
    		  html+="class='vignettev'";
    	  }else{
    		  html+="class='vignetteh'";
    	  }
    	  
    	  html+=" style='cursor:pointer;' alt='image 1' align='middle' ";
    	  html+=" onClick=\"getImageInfo("+thumbnails[idImage].id+");showImage('";
    	  html+=thumbnails[idImage].image;
    	  html+="');\"";
    	  
    	  html+=" src='safe/";
    	  html+=thumbnails[idImage].thumbnail+"'></div></div><br>";
    	  if(cpt!=sizePage){
    		  html+="<div id='inter'></div>";
    	  }
	  }
	  html+="</div>";
	
	  if(page<nbPages-1){
			 html+="<img style='cursor:pointer;' onClick='showThumbnail("+(page+1)+");' class='cursor' border='0' alt='images suivantes' src='images/basfonce.gif'/>";
		  }else{
			  html+="<img class='cursor' border='0' alt='images suivantes' src='images/basfonce.gif'/>";  
		  }
	  $('vignettes').innerHTML=html;
	  
}

function getImageInfo(idImage){
	var ajax = new Ajax.Request('agp/getImage.php',
			  {
			    method:'get',
			    parameters: {idImage:idImage},
			    onSuccess: function(transport){
			    	var reponse = transport.headerJSON;
			    	
			    	var html="<span class='Style1'>"+reponse[0].title+"</span>";
			    	html+="<br/>"+reponse[0].text+"<br/>";
			    	$('texte').innerHTML=html;
			    },
			    onFailure: function(){ 
			    	alert('Error'); 
			    }
			  });
}

function loadPage(){
	
	
	
	getMenu();
}

