// JavaScript Document
var sLoadedImages = Array();
var timer = 0;
var currentImage = 0;
var prevImage = -1;



function doSlideShow()
{
	if(prevImage != -1)
	{
		var imgEffect = new Fx.Morph(sLoadedImages[prevImage], {duration: 500 });	
		imgEffect.start({
			opacity: 0
		});
	}
	
	var imgEffect = new Fx.Morph(sLoadedImages[currentImage], {duration: 1500 });	
	imgEffect.start({
		opacity: 1
	});	
	
	prevImage = currentImage;
	if(currentImage<sLoadedImages.length -1)
		currentImage++;
	else
		currentImage = 0;

	doSlideShow.delay(8000);	
}

function initSlideShow()
{
	Array.implement({
	   shuffle: function() {
		   //destination array
		   for(var j, x, i = this.length; i; j = parseInt(Math.random() * i), x = this[--i], this[i] = this[j], this[j] = x);
		   return this;
	 	 }
	});
	
	var loadedImages = [], gallery = $('gallery'), progress = $('progress'), bar = $('bar'); 
	var path = 'img/slideshow/';
	var l	 = 12;
	var images = [];
	for( i=0; i<l; i++)
	{
		images.push(path + 'pict_'+i+'.jpg');
	}
	
	images.shuffle();
	images.reverse();
	images.shuffle();
	images.reverse();
	
	for( i=0; i<l-3; i++)
	{
		images.pop();
	}
	
	
	gallery.setStyles({'opacity': 0, 'display': 'none'});
	progress.setStyle('visibility', 'hidden');

	var galleryImgs = $$('#gallery img');
	if (galleryImgs.length > 0) galleryImgs.each(function(image) {	image.remove();	});

	progress.setStyle('visibility', 'visible');
	gallery.setStyle('display', 'block');
	new Asset.images(images, {
		onProgress: function(i) {
			this.setStyles({
				'position': 'absolute',
				'opacity': 0,
				'left': (gallery.getCoordinates().width / 2) - (this.width / 2),
				'top': (gallery.getCoordinates().height / 2) - (this.height / 2)
			});
			loadedImages[i] = this;
			var percent = ((i + 1) * progress.getStyle('width').toInt()) / images.length;
			bar.setStyle('width', percent).set('text',i + 1 + ' / ' + images.length);
		},
		onComplete: function() {
			progress.setStyle('visibility', 'hidden');
			var morph = new Fx.Morph('gallery');							
			morph.start({
				opacity: 1
			});							
			loadedImages.each(function(image, i) {
				sLoadedImages.push(image);
				image.inject(gallery);
			});
			doSlideShow();
		}
	});	
}

function initBoxes()
{
	max = 0;
	$each(document.getElements('dl.box'), function(item){
		var size = item.getSize();		
		max = (max<size.y)? size.y : max;				   
	}.bind(this));
	$each(document.getElements('dl.box'), function(item){
		var size = item.getSize();		
		item.setStyle('height',max+'px');			   
	}.bind(this));
}


window.addEvent('domready', initSlideShow); 
window.addEvent('domready', initBoxes); 

window.addEvent('domready', function() {
									 
	if( $('image_bank') )
	{
		//create our Accordion instance
		var myAccordion = new Accordion($('image_bank'), 'h3.toggler', 'div.element', {
			opacity: false,
			//show:( $('content_home') )? 0: -1,
			//show:1,
			onActive: function(toggler, element){
				//toggler.setStyle('background-color', '#0094d7');
				toggler.removeClass('background');
			},
			onBackground: function(toggler, element){
				//toggler.setStyle('background-color', '#70c3e9');
				toggler.addClass('background');
			}
		});
	}
	
	
});

