var Site = {
	init: function() {
		if ( $('liquid') )    Liquid.parseLiquids();
		if ( $('folioMenu') ) Folio.init();
		if ( $('portfolioGallery') )
		{
			$('myGallery').setStyle('height', '350px');
            var myGallery = new gallery($('myGallery'), {
					timed: false,
        			showArrows: true,
        			showCarousel: true,
        			embedLinks: true,
        			showInfopane: false
				});
		}
		if ( $('contact') )
		{
			ContactForm.init();
		}
		if( $('GMap') )
		{
			window.addEvent( 'onunload', GUnload );
			GoogleMapsAPM.init();
		}
	}
};

var Liquid = {

	parseLiquids: function(){
		var liquids = $$('#liquid .liquid');
		var fx = new Fx.Elements(liquids, {wait: false, duration: 800, transition: Fx.Transitions.elasticOut});
		liquids.each(function(liquid, i)
		{
			liquid.addEvent('mouseover', function(e)
			{
				e = new Event(e).stop();
				var obj = {};
				obj[i] = { 'width': [liquid.getStyle('width').toInt(), 280] };

				liquids.each(function(other, j)
				{
					if (other != liquid)
					{
						var w = other.getStyle('width').toInt();
						if (w != 125) obj[j] = {'width': [w, 125]};
					}
				});
				fx.start(obj);
			});
		});

		document.addEvent('mouseover', function(e){
			e = new Event(e);
			var rel = e.relatedTarget;
			if (!rel) return;
			if (rel.hasClass && (rel.hasClass('liquids') || rel.hasClass('liquid') || rel.id == 'liquid')){
				var obj = {};
				liquids.each(function(other, j){
					obj[j] = {'width': [other.getStyle('width').toInt(), 163]};
				});
				fx.start(obj);
			};
		});
	}
};

var Folio =
	{
		init: function()
		{
			Folio.parseItems();
		},

		parseItems: function()
		{
			var first = true;
			var items = $$('#folioMenu .folioItem');
			var fx = new Fx.Elements(items, {wait: false, duration: 300, transition: Fx.Transitions.quadInOut});
			items.each( function( fitem, i)
			{
				var myFx = new Fx.Style(fitem, 'opacity').set(1);

				fitem.addEvent('mouseover', function(e)
				{
					e = new Event(e).stop();
					var obj = {};
					if( fitem.getStyle('opacity') != 0.5 )
					{
						obj[i] = { 'opacity': [1, 0.5] };
					}

					items.each( function( other, j)
					{
						if( other != fitem )
						{
							if( other.getStyle('opacity') != 1 )
							{
								obj[j] = {'opacity': [other.getStyle('opacity'), 1]};
							}
						}
					});
					fx.start(obj);
				});

				fitem.addEvent('mouseout', function(e)
				{
					e = new Event(e).stop();
					var obj = {};

					items.each( function( other, j)
					{
							if( other.getStyle('opacity') != 1 )
							{
								obj[j] = {'opacity': [other.getStyle('opacity'), 1]};
							}
					});
					fx.start(obj);
				});
			});

		}
	};



window.onDomReady(Site.init);
