document.addEvent("domready", function(){
	
	var nav = new Navigation();
	
	nav.addEvent("onComplete", scrolls);
	nav.addEvent("onComplete", searchForm);
	nav.addEvent("onComplete", slideShows);
	nav.addEvent("onComplete", contactForm);
	
	nav.addEvent("onComplete", initFlash);
	
	
	function initFlash()
	{
		if($("video"))
		{
			swfobject.embedSWF(document.urlBase+'/public/pool/flash/video.swf', "video", "486", "400", "8.0.0","",{"wmode":"transparent"}, {"wmode":"transparent"}, {"wmode":"transparent"});
		}
		
		if($("headBanner"))
		{
			swfobject.embedSWF(document.urlBase+'/public/pool/flash/banner.swf', "headBanner", "486", "400", "8.0.0","",{"wmode":"transparent"}, {"wmode":"transparent"}, {"wmode":"transparent"});
		}
	}
	
	function contactForm()
	{
		var contactform = $("contacto");
		if(!contactform) return;
		
		contactform.addEvent("submit", function(e){
			e.stop();
			this.set('send', {onComplete: function(response) { 
				nav.complete(JSON.decode(response), new Element("a", {href:"#"}));
			}});
			nav.loading();
			this.send();	
		})
	}
	
	function searchForm()
	{
		var form = $("search");
		if(!form) return;
		
		form.addEvent("submit", function(e){
			e.stop();
			this.set('send', {onComplete: function(response) { 
				
				nav.complete(JSON.decode(response), new Element("a"));
				$("search").getElements("input")[0].focus();
				
			}});
			nav.loading();
			this.send();	
		})
	}
	
	function slideShows()
	{
		$$("ul.slideshow").each(function(el){slideshow(el)});
	}
	
	function slideshow(ul)
	{
		if(ul.getElements("li").length == 0) return;
		var thisViewer = new viewer(ul.getElements("li"),{interval:5000,"mode":"alpha"});
		thisViewer.play(true);
		var buttonsContainer = new Element("div", {"class":"buttonsSlideShow"}).inject(ul.getParent());
		var nextButton = new Element("a", {href:"#", "class":"nextButton"}).inject(buttonsContainer);
		var prevButton = new Element("a", {href:"#", "class":"prevButton"}).inject(buttonsContainer);
		
		
		prevButton.addEvent("click", function(e){
			e.stop();
			thisViewer.previous();
			thisViewer.stop();
			thisViewer.play(true);
		});
		
		nextButton.addEvent("click", function(e){
			e.stop();
			thisViewer.next();
			thisViewer.stop();
			thisViewer.play(true);
		})
		
		buttonsContainer.setStyle("opacity", ".6");
		ul.addEvent("mouseenter", function(e){
			buttonsContainer.setStyle("display", "block");
		});
		
		ul.addEvent("mouseleave", function(e){
			if(e.relatedTarget != buttonsContainer && e.relatedTarget != nextButton && e.relatedTarget != prevButton)
				buttonsContainer.setStyle("display", "none");
		})
		
	}
	
	function scrolls()
	{
		$$(".scroll").each(function(el){scroll(el)});
	}
	
	function scroll(el)
	{
		el.setStyle("overflow","hidden");
		var myFx = new Fx.Scroll(el, {
		    offset: {
		        'x': 0,
		        'y': 0
		    },
		    wait: false,
		    duration: 100,
		    wheelStops:false,
		    transition: Fx.Transitions.Quint.easeOut
		});
		
		el.addEvent("mousewheel", function(e){
			e.preventDefault();
			
			
			myFx.options.duration = 0;
			
			if(e.wheel > 0)
			{
				myFx.start(0, (this.getScroll().y) - 50);
			}
			if(e.wheel < 0)
			{
				myFx.start(0, (this.getScroll().y) + 50);
			}
		})
		
		var selected = el.getElements("li.selected")[0];
		if(selected && selected.getPosition(el).y > el.getHeight()) 
		{
			myFx.options.duration = 0;
			myFx.start(0, (selected.getPosition(el).y) -105);
		}
		
		var wrapperHeight = el.getHeight();
		var content = el.getFirst();
		if(!content) return;
		var contentHeight = content.getHeight();
		if(contentHeight <= wrapperHeight) return;
		var arrows = new Element("div", {"class":"arrows"}).inject(el.getParent());
		var arrowUp   = new Element("a", {href:"#", "class":"arrowUp"}).inject(arrows);
		var arrowDown = new Element("a", {href:"#", "class":"arrowDown"}).inject(arrows);
		
		arrowUp.addEvent("click", function(e){
			e.stop();
			myFx.options.duration = 500;
			myFx.start(0, (el.getScroll().y) - 105);
		})
		
		arrowDown.addEvent("click", function(e){
			e.stop();
			myFx.options.duration = 500;
			myFx.start(0, (el.getScroll().y) + 105);
		})
			
		
	}
	
	function adjustFooter()
	{
		if(window.getHeight() > 817)
		{
			$("footer").setStyle("top", window.getHeight());
			$("footerLogos").setStyle("top", window.getHeight());
		}
		else
		{
			$("footer").setStyle("top", "830px");
			$("footerLogos").setStyle("top", "830px");
		}
	}
	
	window.addEvent("resize", adjustFooter);
	adjustFooter();
	scrolls();
	//searchForm();
	slideShows();
	contactForm();
	initFlash();
	
});