var menuON = false;

var oldContents = ['37'];


var Site = {

	showHead:	function() {	

			var myFx4 = new Fx.Styles('box1',  {duration: 500, onComplete: function(){  Site.showMenu(); }});

			var myFx3 = new Fx.Styles('boxPhoto',  {duration: 500, onComplete: function(){  myFx4.start({ 'top': [-160, 1] }); } });

			var myFx2 = new Fx.Styles('boxEmpty',  {duration: 500, onComplete: function(){  myFx3.start({ 'top': [-160, 1] }); } });

			var myFx = new Fx.Styles('box2', {duration: 500, onComplete: function(){ myFx2.start({ 'top': [-160, 1] }); }});

			myFx.start({ 'top': [-160, 1] });
		

		},

	exitHead:	function(linkTo) {	

			var myFx4 = new Fx.Styles('box2',  {duration: 300, onComplete: function(){ document.location = linkTo; }});

			var myFx3 = new Fx.Styles('boxEmpty',  {duration: 300, onComplete: function(){  myFx4.start({ 'top': [1, -160] }); } });

			var myFx2 = new Fx.Styles('boxPhoto',  {duration: 300, onComplete: function(){  myFx3.start({ 'top': [1, -160] }); } });

			var myFx = new Fx.Styles('box1', {duration: 300, onComplete: function(){ myFx2.start({ 'top': [1, -160] }); }});

			myFx.start({ 'top': [1, -160] });
		

		},

	showMenu:	function() {	


			var myFx5 = new Fx.Styles('menu5',  {duration: 500, onComplete: function(){  Site.showContent('37'); }});

			var myFx4 = new Fx.Styles('menu4',  {duration: 400, onComplete: function(){  myFx5.start({ 'left': [-160, 637] }); } });

			var myFx3 = new Fx.Styles('menu3',  {duration: 300, onComplete: function(){  myFx4.start({ 'left': [-160, 478] }); } });

			var myFx2 = new Fx.Styles('menu2',  {duration: 200, onComplete: function(){  myFx3.start({ 'left': [-160, 319] }); } });

			var myFx = new Fx.Styles('menu1', {duration: 100, onComplete: function(){  myFx2.start({ 'left': [-160, 160] }); } });
	

			myFx.start({ 'left': [-160, 1] });


		},

	exitMenu:	function(linkTo) {	


			var myFx5 = new Fx.Styles('menu5',  {duration: 500, onComplete: function(){  Site.exitHead(linkTo); }});

			var myFx4 = new Fx.Styles('menu4',  {duration: 400, onComplete: function(){  myFx5.start({ 'left': [637, -160] }); } });

			var myFx3 = new Fx.Styles('menu3',  {duration: 300, onComplete: function(){  myFx4.start({ 'left': [478, -160] }); } });

			var myFx2 = new Fx.Styles('menu2',  {duration: 200, onComplete: function(){  myFx3.start({ 'left': [319, -160] }); } });

			var myFx = new Fx.Styles('menu1', {duration: 100, onComplete: function(){  myFx2.start({ 'left': [160, -160] }); } });
	

			myFx.start({ 'left': [1, -160] });


		},

	triggerMenu:	function() {

				var list = $$('a.menu');
				
				list.each(function(element) {
 
					var fx = new Fx.Styles(element, {duration:500, wait:false});

					element.addEvent('mouseenter', function(){

						menuON = element.getParent().getProperty('id');


							// hide all submenus
							var listsub = $$('div.submenu');
							listsub.each(function(element2) {
		
								if ( element2.getCoordinates().left != -500 && ( element2.getProperty('id') != 'sub'+menuON ) ) {
								
									Site.hideMenu(element2.getProperty('id'));
								
								}

								element2.addEvent('mouseleave', function(){
 
									if (  menuON != element2.getParent().getProperty('id') )
									Site.hideMenu(element2.getProperty('id'));

								});
	

							});

										
						// control if submenu and submenu not shown -> show it 
						if ( $('sub'+element.getParent().getProperty('id')) && ( $('sub'+element.getParent().getProperty('id')).getCoordinates().left < $(element.getParent().getCoordinates().left )) ) {
							
							var myFx = new Fx.Styles($('sub'+element.getParent().getProperty('id')),  {duration: 500});
							myFx.start({ 'left': [-500, element.getParent().getCoordinates().left],'opacity': [0,1] });

						}

						//se non ha figli allora illumina
						if (  !$('sub'+element.getParent().getProperty('id'))  ) {
	
							fx.start({
								'background-color': '#e9e9e9',
								color: '#6a6579'
							});
	
						}

						
					});

					element.addEvent('mouseleave', function(){
 
						fx.start({
							'background-color': '#6a6579',
							'color': '#ffffff'
						});

					});
	
					element.addEvent('click', function(){

					if (  !$('sub'+element.getParent().getProperty('id'))  ) 

						Site.showContent(element.getProperty('id'));

					});

				});


				var listsuba = $$('a.submenu');
				
				listsuba.each(function(elementsuba) {

					var fx2 = new Fx.Styles(elementsuba, {duration:500, wait:false});
				
					elementsuba.addEvent('click', function(){

						Site.hideMenu(elementsuba.getParent().getProperty('id'));
						Site.showContent(elementsuba.getProperty('id'));

					});

					elementsuba.addEvent('mouseenter', function(){

							fx2.start({
								color: '#6a6579',
								'background-color': '#e9e9e9'
							});

							});
						
					elementsuba.addEvent('mouseleave', function(){
 
						fx2.start({
							'background-color': '#6a6579',
							'color': '#ffffff'
						});

					});

				});

	},


	triggerInternalLinks: function() {


				var number = "";
				var pos = "";

				var list = $$('#content a');
				list.each(function(element) {
						
					        number = element.getProperty('href');
						pos = number.lastIndexOf("/");
						if ( pos != -1 )
						number = number.slice(pos+1);

					     if( isFinite(number) && number != "" )		
					     element.setProperty('href',"javascript:Site.showContent("+number+");");	           
			
				});
			
			},


	hideMenu:	function(submenu){

					var myFx2 = new Fx.Styles($(submenu), {duration: 500, wait:true});					
					myFx2.start({ 'left': [$(submenu).getCoordinates().left, -500]});

			},


	showContent:	function(paramContent){

					$Aj = new Ajax(docRoot+"content.php?nav="+paramContent, {
						method: 'get',
						update: $('content'),
						onComplete: function(){

								// aggiorna history
								oldContents.push(paramContent);	

								//Site.showFooter($('content').getCoordinates().bottom); 
								 Site.triggerInternalLinks();
 								 this.evalScripts();
	 							 var myScroll = new Fx.Scroll($('content')).start(0,0);



						 }
						}).request();

			},
	/*
	showFooter:	function(posContent){

				 $('footer').setStyles({'top': posContent+'px', 'left': '10px'}); 
				 
			},
	*/

	goBack:	function(){

				if ( oldContents.length > 1 )
				oldContents.pop();

				Site.showContent(oldContents.pop());
				 
			},


	exit:	function(linkTo){

				$('content').setStyle('opacity',0);	
				//$('footer').setStyle('opacity',0);	
				Site.exitMenu(linkTo);
				 
			},


	start: function(){

		Site.showHead();

		Site.triggerMenu();

		}


	}


window.addEvent('load', Site.start);	

