var site_url = "/";
var phpGalleryFavorise = 'javascript:void(0);';
var periodical;
var overLay;
var page = 0;
var house = 0;

var Gallery = {

	init: function() {

		page = $('pageID').get('value');
		if ($('hausID')) house = $('hausID').get('value');

		overLay = new Fx.Morph($('gallery-image-overlay'), { duration: '1800' });
		thumbList = new Fx.Morph($('gallery-fade-container'), { duration: '900' });

		$$('#gallery-image').setOpacity(0);
		$$('#gallery-image-overlay').setOpacity(0);
		$('gallery-content').setOpacity(0);
		$$('#gallery-overlay-left').setOpacity(0);
		$$('#gallery-overlay-right').setOpacity(0);
		$$('#gallery-overlay-bottom').setOpacity(0);
		$$('#gallery-favorise').setOpacity(0);

		var thumbImages = [];
		$$('.gallery-thumb img').each(function(obj) {
			var parent = obj.getParent().get('id').replace('gallery-image-', '');
			var bImage = $('big-image-'+parent).get('value');

			thumbImages.push(bImage);
		});

		if (house > 0) page = page + '-' + house;

		$('gallery-favorise').set(
			'rel', "page=" + page + "&image=" + $('gallery-image-active').src + "&original=" + $('gallery-image').get('class')
		);

		var toPreload = new Asset.images(thumbImages, {
			onComplete: function() {
				$('gallery-loader').hide();
				$('gallery-image').setOpacity(1);
				$('gallery-overlay-left').setOpacity(1);
				$('gallery-overlay-right').setOpacity(1);
				$('gallery-overlay-bottom').setOpacity(1);
				$$('#gallery-favorise').setOpacity(1);


				if(thumbImages.length>1) {
					$('gallery-content').setOpacity(1);
					periodical = Gallery.crossfade.periodical(6000);
					$('gallery').addEvents({
						'mouseover': function() {
							$clear(periodical)
						},
						'mouseleave': function() {
							periodical = Gallery.crossfade.periodical(6000);
						}
					});
					Gallery.loadLinks();
				}

			}
		});


	},


	loadLinks: function() {
		$$('#gallery-fade-container a').each(function(obj) {
			$(obj).addEvent('click',function() {
				Gallery.show(obj);
				return false;
			});
		});
	},


	show: function(obj) {

			var childs = $('gallery-fade-container').getChildren();

			if (childs[0].id != obj.id) {

				var tmpObj = $(obj).getChildren();
				//var imgObj = tmpObj[0];

				var parent 		= obj.get('id').replace('gallery-image-', '');
				var bigImage 	= $('big-image-'+parent);

				var imgObj	 	= {src: bigImage.get('value'), id: parent};

				var toPreload = new Asset.images(new Array(imgObj.src), {
					onComplete: function() {
						$('gallery-image-overlay').setOpacity('0');
						$('gallery-image-overlay').src = imgObj.src;

						thumbList.start({'opacity':0}).chain(
							function() {
								$(childs[0]).removeClass('first');
								var i = 0;
								while(childs[i].id != obj.id) {
									$('gallery-fade-container').grab($(childs[i].id));
									++i;
								}
								$('gallery-fade-container').grab($(childs[i-1].id));

								var getFirstArray = $('gallery-fade-container').getChildren();

								$(getFirstArray[0]).addClass('first');
								this.start({'opacity':1});
							}
						);

						overLay.start({'opacity':1}).chain(function() {
							original = $('gallery-image-'+imgObj.id).get('rel');
							$('gallery-image-active').src = imgObj.src;

							var linkFromIdArray = (obj.id).split("-");

							if (house > 0) page = page + '-' + house;

							$('gallery-favorise').set(
								'rel', "page=" + page + "&image=" + $('gallery-image-active').src + "&original=" + original
							);
						});
					}
				});

			}
	},

	crossfade: function() {

		childs = $('gallery-fade-container').getChildren('a');
		galleryActive = childs[0];

		var el = $(galleryActive);
		var fadeTo = $(el).getNext('a');

		var tmpChilds = $(fadeTo).getChildren();
		var imgChild = tmpChilds[0];

		var parent 	  = imgChild.getParent('a').get('id').replace('gallery-image-', '');
		var rImgChild = {src: $('big-image-'+parent).get('value'), id: parent};

		var toPreload = new Asset.images(new Array(rImgChild.src), {
			onComplete: function() {
				imgContainer = $('gallery-image');

				var images = imgContainer.getChildren();

				image = images[0];
				overlay = images[1];

				overlay.setOpacity('0');
				overlay.src = rImgChild.src;

				overLay.start({'opacity':1}).chain(function() {
					original  = imgChild.getParent().get('rel');
					image.src = rImgChild.src;

					var linkFromIdArray = (fadeTo.id).split("-");

					if (house > 0) page = page + '-' + house;

					$('gallery-favorise').set(
						'rel', "page=" + page + "&image=" + $('gallery-image-active').src + "&original=" + original
					);
				});

				thumbList.start({'opacity':0}).chain(
					function() {
						galleryActive.removeClass('first');
						$('gallery-fade-container').grab(galleryActive);
						var gals = $('gallery-fade-container').getChildren('a');

						gals[0].addClass('first');

						this.start({'opacity':1});
					}
				);
			}
		});

	}
}


window.addEvent('domready', function() {

	if ($('gallery')) {
		Gallery.init();
	}

});

