window.addEvent('domready', function(){
	gallery();
});

function gallery(){
	var gallery = $('gallery');
	if(!gallery) return;
	var aLinks = gallery.getElements('.listProducts2 a');
	if(!aLinks.length) return;
	var fullViewLink = gallery.getElement('p.view a');
	var photos = gallery.getElement('p.preview').getElements('img');		
	var loading = gallery.getElement('p.preview').getElement('.loading');		
	var photo1 = photos[0];
	var photo2 = photos[1];
	var tweening1 =  false;
	var tweening2 =  false;
	photo1.fx = new Fx.Tween(photo1, {
		duration: 800,
		onCancel: function(){
			tweening2 = false;
		},
		onComplete: function(){
			tweening1 = false;			
		}
	}).set('opacity', 0);
	photo2.fx = new Fx.Tween(photo2, {
		duration: 800,
		onCancel: function(){
			tweening2 = false;
		},
		onComplete: function(){
			tweening2 = false;
		}
	});	
	aLinks.each(function(aLink){
		aLink.addEvent('click', function(e){
			e.stop();
			if(tweening1 || tweening2) return;			
			tweening1 = true;
			tweening2 = true;
			loading.setStyle('display', 'block');	
			var src = this.getProperty('rel');
			new Asset.image(src, {				
				onload: function(){
					loading.setStyle('display', 'none');
					if(photo1.getStyle('opacity') != 1){
						photo1.set('src', src);
						photo2.fx.cancel().start('opacity', 0);
						photo1.fx.cancel().start('opacity', 1);			
					}
					else{
						photo2.set('src', src);
						photo1.fx.cancel().start('opacity', 0);
						photo2.fx.cancel().start('opacity', 1);			
					}
				}
			});		
			fullViewLink.href = this.get('href');
		});
	});
}