/* Copyright fabreva 2009 */
/* è vietata la riproduzione, la distribuzione o la vendita di questo codice */

function instanziatooltip()
{
	
for(i= 0; i<35; i++)
{

    tol = 'test'+i;

   if(($(tol)) != undefined )
   {
    var myTooltip1 = new Tooltip(tol);
    }
	
	
}
}



function effettiinentrata(pagina)
{

    switch(true)
	{
		
		
	case pagina == 'index':
	
	
	new Effect.Move('animatohome1', { duration: 3,   y: 670,  mode: 'relative', transition: Effect.Transitions.sinoidal , 
						              delay:0 });
	
	new Effect.Move('animatohome2', { duration: 2,   y: 360,  mode: 'relative', transition: Effect.Transitions.sinoidal , 
						               delay:0.7 });
	
	new Effect.Move('animatohome3', { duration: 1.5,   y: 270,  mode: 'relative', transition: Effect.Transitions.sinoidal , 
						              delay:0.7 });
	
	break;
  
   
    case pagina == 'presentazione':
   
   
	new Effect.Move('animatopresentazione1', { duration: 1.5,   y: 270,  mode: 'relative', transition: Effect.Transitions.sinoidal , 
						              delay:0.5 });
	
    break;	
	
	
	case pagina == 'serate':
	
	
	new Effect.Move('animatoserate1', { duration: 1.5,   y: 290,  mode: 'relative', transition: Effect.Transitions.sinoidal , 
						              delay:0 });
	
	new Effect.Move('animatoserate2', { duration: 1,   y: 270,  mode: 'relative', transition: Effect.Transitions.sinoidal , 
						               delay:0.9 });
	
	new Effect.Move('animatoserate3', { duration: 1.5,   y: 270,  mode: 'relative', transition: Effect.Transitions.sinoidal , 
						              delay:0.5 });

	break;
	
	
	case pagina == 'foto':
	
	new Effect.Move('animatofoto1', { duration: 2.4,   y: 210,  mode: 'relative', transition: Effect.Transitions.sinoidal , 
						              delay:0 });
	
	new Effect.Move('animatofoto2', { duration: 1.6,   y: 210,  mode: 'relative', transition: Effect.Transitions.sinoidal , 
						               delay:0.9 });
	
	break;
	
	
	case pagina == 'staff':
	
	new Effect.Move('animatostaff1', { duration: 2.3,   y: 330,  mode: 'relative', transition: Effect.Transitions.sinoidal , 
						              delay:0 });
	
	
	
	break;
	
	
	case pagina == 'ristorante':
	
	new Effect.Move('animatoristo1', { duration: 1.5,   y: 290,  mode: 'relative', transition: Effect.Transitions.sinoidal , 
						              delay:0 });
	
	new Effect.Move('animatoristo2', { duration: 1.9,   y: 270,  mode: 'relative', transition: Effect.Transitions.sinoidal , 
						               delay:0.7 });
	
	new Effect.Move('animatoristo3', { duration: 1.5,   y: 270,  mode: 'relative', transition: Effect.Transitions.sinoidal , 
						              delay:0.5 });
	
	break;
	
	
	case pagina == 'dove':
	
	new Effect.Move('animatodove1', { duration: 1.5,   y: 290,  mode: 'relative', transition: Effect.Transitions.sinoidal , 
						              delay:3.5 });

	
	break;
	
	
	
	}
	

}


function overbotton(event)
   {
	
	// qui ritrovo l'elemento
	if(p != 'sopra')
	{
	var element = Event.element(event);  
	
	
	
	element.toggleClassName('byand');
	
	
	event.preventDefault();
	event.stop();
	p = 'sopra';
	}
	
	
   }
   
   
function outbotton(event)
   {
	
	// qui ritrovo l'elemento
	if(p == 'sopra')
	{
	var element = Event.element(event);
	
	
	
	// questo perche nella home c'è solo il discorso delle palle
	
	element.toggleClassName('byand');
	
	
	
	event.preventDefault();
	event.stop();
	p = 'nonsopra';
	}   
	   
	   
   }


function muovinews(e)
   {
	
// se non c'è l'animazione vado avanti
	if(!animazione)
	{
	animazione = true;
	var element = Event.element(e);
	var gid = $(element).identify();
	var  newsdaaprire = 'evento' + gid ;
	
	
    // qui inizio ad aprire la news che mi serve
	// se memo e altro sono la stessa cosa chiudo e basta
	if(!(memo == newsdaaprire))
	{
		
	

	
	new Effect.toggle(newsdaaprire , 'blind'

						 
						 ,  
						 
						 {  
						 
						   duration: 0.2  , 
						   
						   
						   
						   afterFinish: function(){ animazione = false;	
						                           
												   
												  
														
														
						                            if($(newsdaaprire).visible())
	                                                 {
	
                                              	        memo = newsdaaprire;
														
                                                      }
												
													 
													  
						                            }
						 
						  });
	}
	
	
	
	
	// se non ho memoria non faccio niente altrimenti chiudo l'altra news
	if((memo != 0)&&($(memo).visible()))
	{
	// qui inizio ad aprire la news che mi serve
	
    
	new Effect.BlindUp( 
						 
						 memo,  
						 
						 {  
						 
						   duration: 0.2  , delay:0.05,
						   
						   afterFinish: function(){animazione = false;	 if(!($(memo).visible()))
	{
	
	memo = 0;

	
	}  } 
						    
						 
						  });
	
	}
	
	
	
	e.preventDefault();
	e.stop();
	
	cambiastili(newsdaaprire);
	
	
	
	
	}   
	

	   
	   
   }

function cambiastili(newsdaaprire)
{
	
	for(i=1; i<(tuttiglielementitestuali+1); i++)
	  {
	  
	    var osservato = '' + i;
	    var memorizzare = 'evento' + i; 
		
		
		if(($(osservato)) != undefined)
	    {
			
			if(newsdaaprire == memorizzare)
			  {
				 
				if(!($('testoevento'+i).hasClassName('bloccotitolitestualerosso')))
				    {
				   $('testoevento'+i).addClassName('bloccotitolitestualerosso'); 
				   $(osservato).update('Chiudi');
				   }
				   
				  else
				    {
						
					$('testoevento'+i).removeClassName('bloccotitolitestualerosso'); 
				      $(osservato).update('Leggi');	
					}
			
			  }
			else
			   {
				 if($('testoevento'+i).hasClassName('bloccotitolitestualerosso'))
				    {
				      $('testoevento'+i).removeClassName('bloccotitolitestualerosso'); 
				      $(osservato).update('Leggi');
					}
			   }
			  
			  
			
		}
	  
	  }
}


function addObservers() 
     {
		
	  
	  // ricavo il numero di eventi presenti
	  // creando un array con tutti gli elementi che hanno come classe
	  // bloccontenutointerno
	  tuttiglielementitestuali = $$('.bloccocontenutointerno').length;
	
	
	  for(i=1; i<(tuttiglielementitestuali+1); i++)
	  {
	  
	    osservato = '' + i;
	    memorizzare = 'evento' + i; 
		
		
		if(($(osservato)) != undefined)
	    {
	     
		// ricerca quello visibile 
		if($(memorizzare).visible())
		{
			
			
			memo = 'evento'+i;
			
			
			// quella aperta è quella che memorizzo e quella a cui dico di chiudere
		    $('testoevento'+i).toggleClassName('bloccotitolitestualerosso');
			$(osservato).update('Chiudi');
			
		} 
	  
	     // non prendo più l'array per poi farne un each ma prendo direttamente i valori 
		
		
		
						      $(osservato).observe('mouseover', overbotton);	
							  $(osservato).observe('mouseout', outbotton);
         		              $(osservato).observe('click', muovinews);
							  
		                    
		
	      }
	  
	   }
	  
	  return;
	 
     
}



function navigazioneinterna()
{
     
	  // numero news lo setto in dinamico e anche con l'ajax di volta in volta
	 // di default è uguale a 10
	// questa la dovro aggiornare via ajax.
	numeronews = 10;	
	 
	p = 'nonsopra';
	
	// questi servono per l'espandi news.
	animazione = false;
	memo = 0;
	contator = 0;  
    // AGGIUNTA DEGLI OBSERVERS
	addObservers(); 
    
   
}

// inizia il discorso dell'aggiornamento ajax
function ajaxgoright(component,  extra2 , extra3 , extra4)
{


 if(component == 'mailing')
  {
	insidemenu = 'mailing'; 
	new Ajax.Updater( insidemenu, 'ajax-'+insidemenu+'-0-0-0.html', { method: 'post'  , encoding: 'UTF-8' ,
					 parameters: { c12: $('c12').value, c14: $('c14').value }} );  
	  
  }
  
  else
  {

			  
new Ajax.Updater( component, 'ajax-'+component+'-'+extra2+'-'+extra3+'-'+extra4+'.html', { method: 'get'  , encoding: 'UTF-8' , onComplete: function(){  if(component == 'calendario'){instanziatooltip();} else{ addObservers();}
	
  // active del menu centrale	
  // tranne che dal calendario
  // tranne che staff che anche quello è strano
  
 
  
  
  
  
  
  if((component != 'calendario')&&(component != 'staff'))
  {
	insidemenu = 'aggmenu'; 
	new Ajax.Updater( insidemenu, 'ajax-'+insidemenu+'-'+extra2+'-'+extra3+'-'+extra4+'.html', { method: 'get'  , encoding: 'UTF-8'} );  
	  
  }
  
  if(component == 'foto')
  {   
  
      
	  
	  lightwindowInit();
  }
  
  
   // caso in cui sono nel sotto sotto menu (capita solo nello staff)
  if(component == 'staff')
  {
	  
	insidemenu2 = 'aggmenu2'; 
	new Ajax.Updater( insidemenu2, 'ajax-'+insidemenu2+'-1-'+extra3+'-'+extra4+'.html', { method: 'get'  , encoding: 'UTF-8'} );
	
	
   }
  
   // caso in sto selezionando dalla sopracategoria e voglio cambiare
   // il titolo in alto
  if(component == 'aggmenu2')
  {
	insidemenu3 = 'titoloelencoitemstaff'; 
	new Ajax.Updater( insidemenu3, 'ajax-'+insidemenu3+'-'+extra2+'-'+extra3+'-'+extra4+'.html', { method: 'get'  , encoding: 'UTF-8'} );
	
	if(($('staff')) != undefined)
	{$('staff').update('');}
	
	
  }
																																														  } });
  }
			
}

  	  
