var l7Menu = {
	menu_offset : null,
	transition : null,
	duration : null,
	default_transition : 'elastic:out',
	default_duration : 500,
	selected_class : 'sel',
	selected_link : null,
	timeout : null,
	delay_duration : 3000,
	init : function(element_id, objOption)
	{		
		l7Menu.transition = (objOption.transition)? objOption.transition : l7Menu.default_transition;
		l7Menu.duration = (objOption.duration)? objOption.duration : l7Menu.default_duration;
		l7Menu.selected_class = objOption.selectedClass;
		
		var menu_list = $$("ul#" + element_id + " li a");
		l7Menu.menu_offset = $(element_id).getPosition();
		
		for (var i = menu_list.length - 1; i >= 0; i--)
		{
			if (menu_list[i].id == "") 
			{
				menu_list[i].id = "top_menu_" + i;
			};
			$(menu_list[i].id).addEvent("mouseover", function()
			{
				l7Menu.backgroundMorph(this.id);
			});
		};
		
		// find selected item
		var menu_list_sel = $$("ul#" + element_id + " li." + l7Menu.selected_class + " a");
		if (menu_list_sel.length == 1)
		{
			l7Menu.selected_link = $(menu_list_sel[0].id);
			
		};
	},
	backgroundMorph : function(element_id)
	{
		var left = ($(element_id).getPosition().x) - l7Menu.menu_offset.x;
		var width = $(element_id).getWidth();
		$("background-menu").set('morph', {duration: l7Menu.duration, transition: l7Menu.transition});
		$("background-menu").morph({left: left, width : width, visibility: 'visible'});
		
		if (l7Menu.selected_link)
		{
			if (!l7Menu.timeout)
			{
				l7Menu.timeout = setTimeout("l7Menu.backToSelected()", l7Menu.delay_duration);
			}
			else
			{
				clearTimeout(l7Menu.timeout);
				l7Menu.timeout = setTimeout("l7Menu.backToSelected()", l7Menu.delay_duration);
			};
		};		
	},
	
	backToSelected : function()
	{
		var left = (l7Menu.selected_link.getPosition().x) - l7Menu.menu_offset.x;
		var width = l7Menu.selected_link.getWidth();
		$("background-menu").set('morph', {duration: l7Menu.duration, transition: l7Menu.transition});
		$("background-menu").morph({left: left, width : width, visibility: 'visible'});
	}
};

var l7ProjectBox = {
	element_box : null,
	duration : 350,
	transition : 'Cubic:out',
	current_project : 0,
	last_project : null,
	projects : null,
	init : function(box_id, ary_projects)
	{
		
		l7ProjectBox.element_box = $(box_id);
		l7ProjectBox.element_box.set('morph', {
			duration: l7ProjectBox.duration, 
			transition: l7ProjectBox.transition,
			onComplete : function()
			{
				if (l7ProjectBox.element_box.getStyle('opacity').toInt() == 0)
				{
					l7ProjectBox.element_box.setStyles({'background-image' : 'url('+ l7ProjectBox.projects[l7ProjectBox.current_project]["photo"] +')' });
					$("photo_box_title").set("html", "<b>" + l7ProjectBox.projects[l7ProjectBox.current_project]["title"] + "</b>");
					$("photo_box_description").set("html", l7ProjectBox.projects[l7ProjectBox.current_project]["text"]);
					l7ProjectBox.element_box.morph({opacity : [0, 1]});
				};
			}
		});
		l7ProjectBox.last_project = ary_projects.length - 1;
		l7ProjectBox.projects = ary_projects;
		l7ProjectBox.update(l7ProjectBox.current_project);
	},
	change : function(direction)
	{
		if (direction == "previous")
		{
			if (l7ProjectBox.current_project > 0)
			{
				l7ProjectBox.update(l7ProjectBox.current_project - 1)
			};
		}
		else
		{
			if (l7ProjectBox.current_project < l7ProjectBox.last_project)
			{
				l7ProjectBox.update(l7ProjectBox.current_project + 1)
			};			
		}
	},
	update : function(index)
	{
		l7ProjectBox.current_project = index;
		l7ProjectBox.element_box.morph({opacity : [1, 0]});
		
		if (l7ProjectBox.current_project == 0)
		{
			$('photo_box_left').setStyle('visibility', 'hidden');
			$('photo_box_right').setStyle('visibility', 'visible');
		}		
		else if (l7ProjectBox.current_project == l7ProjectBox.projects.length - 1)
		{
			$('photo_box_left').setStyle('visibility', 'visible');
			$('photo_box_right').setStyle('visibility', 'hidden');
		}
		else
		{
			$('photo_box_left').setStyle('visibility', 'visible');
			$('photo_box_right').setStyle('visibility', 'visible');
		};
		
		if(l7ProjectBox.projects.length == 1)
		{
			$('photo_box_right').setStyle('visibility', 'hidden');
		}
	}
}

var l7Menu_options = {transition : "elastic:out", duration : 1000, selectedClass : 'current-cat'};
window.addEvents({
	resize: function()
	{
		l7Menu.init("top_menu", l7Menu_options)
	}, 
	domready: function()
	{
		l7Menu.init("top_menu", l7Menu_options)
	}
});

window.addEvent('domready', function()
{	
	//window.onResize(alert("ok"));
	
	if (document.getElementById('photo_box'))
	{
		l7ProjectBox.init("photo_box", home_array)
	};	
	
	if (document.getElementById("photo_box_left") && document.getElementById("photo_box_right"))
	{
		$("photo_box_left").addEvent("click", function()
		{
			l7ProjectBox.change("previous");
		});
		
		$("photo_box_right").addEvent("click", function()
		{
			l7ProjectBox.change("next");
		});
	};
});